-
Notifications
You must be signed in to change notification settings - Fork 94
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
matt venn
committed
Nov 4, 2018
1 parent
56dfcf0
commit 9a5c9cb
Showing
1 changed file
with
23 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,15 @@ | ||
# Video Notes | ||
|
||
Git repository https://github.com/mattvenn/TinyFPGA-BX/tree/master/examples/picosoc | ||
|
||
The README.md contains information on: | ||
|
||
* Information about installing the toolchains | ||
* Electrical wiring for the demos | ||
* Precompiled firmware binaries: | ||
* master - starting point | ||
* ws2812 - includes ws2812 driver and serial driver | ||
|
||
# PicoSOC TinyFPGA example | ||
|
||
PicoSOC is an SOC - system on chip. It includes everything you need to | ||
|
@@ -14,10 +26,12 @@ board. This example has been modified to work with the TinyFPGA by Luke from Tin | |
|
||
You can synthesise the demo with the [icestorm](http://www.clifford.at/icestorm/) toolchain. | ||
A very convient way to install the toolchain is to use [APIO](https://github.com/FPGAwars/apio) | ||
And then set your path to include the installed tools and copy the chipdb files: | ||
And then set your path to include the installed tools and copy the chipdb and yosys files: | ||
|
||
export PATH=$PATH:~/.apio/packages/toolchain-icestorm/bin/ | ||
sudo cp -r ~/.apio/packages/toolchain-icestorm/share/icebox/ /usr/local/share/ | ||
sudo cp -r ~/.apio/packages/toolchain-icestorm/share/yosys /usr/local/share/ | ||
|
||
|
||
You will also need tinyprog: | ||
|
||
|
@@ -28,9 +42,8 @@ For more info on the TinyFPGA tools and setup see the TinyFPGA page: https://tin | |
At this point you should be able to run make upload to synthesise the hardware and program to the TinyFPGA. | ||
I have precompiled the firmware.c and added the firmware.bin and hex files to the repo so you don't need GCC. | ||
|
||
If you just want to see the demos in the video, you can just switch to the serial branch | ||
If you just want to see the demos in the video, you can switch to the ws2812 branch | ||
|
||
git checkout serial | ||
git checkout ws2812 | ||
|
||
Which should allow you to program the precompiled firmware or run the simulation without installing GCC. | ||
|
@@ -46,9 +59,16 @@ What I did was: | |
sudo apt-get install autoconf automake autotools-dev curl libmpc-dev \ | ||
libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo \ | ||
gperf libtool patchutils bc zlib1g-dev git libexpat1-dev | ||
|
||
git clone [email protected]:cliffordwolf/picorv32.git | ||
cd picorv32/ | ||
time make -j2 build-riscv32i-tools | ||
export PATH=$PATH:/opt/riscv32i/bin/ | ||
|
||
Then make firmware.bin should work and you can then write your own c program or edit my demos. | ||
|
||
# Wiring for the demo | ||
|
||
* Serial TX is pin 1 | ||
* Serial RX is pin 2 | ||
* WS2812 data is pin 3 |