Skip to content

MichaelBell/tt06-tinyQV

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TinyQV - A Risc-V SoC for Tiny Tapeout

How To Build a Program for TinyQV

In summary:

  1. Download this build of gcc for TinyQV and extract it to /opt/tinyQV
  2. Clone the tinyQV-sdk and build it
  3. Clone the example projects repo and build donut.bin
  4. Use the TinyQV Programmer to flash and run donut.bin

On a Linux system with developer tools installed, that should go something like this:

sudo mkdir /opt/tinyQV
sudo chown `whoami` /opt/tinyQV
pushd /opt/tinyQV
wget https://github.com/MichaelBell/riscv-gnu-toolchain/releases/download/13.2.0-tqv-1.0/riscv32ec-13.2.0-tqv-1.0.tar.gz
tar xf riscv32ec-13.2.0-tqv-1.0.tar.gz --strip-components=1
popd

git clone https://github.com/MichaelBell/tinyQV-sdk
cd tinyQV-sdk
make
cd ..

git clone https://github.com/MichaelBell/tinyQV-projects
cd tinyQV-projects/donut
make

If that all went well you should now have a donut.bin built. Try running that in the TinyQV Programmer using the Custom option.

What is Tiny Tapeout?

TinyTapeout is an educational project that aims to make it easier and cheaper than ever to get your digital designs manufactured on a real chip.

To learn more and get started, visit https://tinytapeout.com.

Verilog Projects

  1. Add your Verilog files to the src folder.
  2. Edit the info.yaml and update information about your project, paying special attention to the source_files and top_module properties. If you are upgrading an existing Tiny Tapeout project, check out our online info.yaml migration tool.
  3. Edit docs/info.md and add a description of your project.
  4. Optionally, add a testbench to the test folder. See test/README.md for more information.

The GitHub action will automatically build the ASIC files using OpenLane.

Enable GitHub actions to build the results page

Resources

What next?