Rename "spiflash" example to "picosoc"
This commit is contained in:
		
							parent
							
								
									571f5d5df7
								
							
						
					
					
						commit
						caef4e3753
					
				| 
						 | 
					@ -128,6 +128,11 @@ Simple instruction-level tests from [riscv-tests](https://github.com/riscv/riscv
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Another simple test firmware that runs the Dhrystone benchmark.
 | 
					Another simple test firmware that runs the Dhrystone benchmark.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#### picosoc/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					A simple example SoC using PicoRV32 that can execute code directly from a
 | 
				
			||||||
 | 
					memory mapped SPI flash.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#### scripts/
 | 
					#### scripts/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Various scripts and examples for different (synthesis) tools and hardware architectures.
 | 
					Various scripts and examples for different (synthesis) tools and hardware architectures.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,7 +2,7 @@
 | 
				
			||||||
testbench: testbench.vvp firmware.hex
 | 
					testbench: testbench.vvp firmware.hex
 | 
				
			||||||
	vvp -N $<
 | 
						vvp -N $<
 | 
				
			||||||
 | 
					
 | 
				
			||||||
testbench.vvp: spiflash.v spimemio.v testbench.v top.v ../picorv32.v
 | 
					testbench.vvp: spiflash.v spimemio.v testbench.v picosoc.v ../picorv32.v
 | 
				
			||||||
	iverilog -s testbench -o $@ $^
 | 
						iverilog -s testbench -o $@ $^
 | 
				
			||||||
 | 
					
 | 
				
			||||||
spiflash_tb: spiflash_tb.vvp firmware.hex
 | 
					spiflash_tb: spiflash_tb.vvp firmware.hex
 | 
				
			||||||
| 
						 | 
					@ -27,8 +27,8 @@ firmware.hex: firmware_vma.elf
 | 
				
			||||||
firmware.bin: firmware.elf
 | 
					firmware.bin: firmware.elf
 | 
				
			||||||
	riscv32-unknown-elf-objcopy -O binary firmware.elf firmware.bin
 | 
						riscv32-unknown-elf-objcopy -O binary firmware.elf firmware.bin
 | 
				
			||||||
 | 
					
 | 
				
			||||||
design.blif: spimemio.v top.v ../picorv32.v
 | 
					design.blif: spimemio.v picosoc.v ../picorv32.v
 | 
				
			||||||
	yosys -ql design.log -p 'synth_ice40 -top top -blif design.blif' $^
 | 
						yosys -ql design.log -p 'synth_ice40 -top picosoc -blif design.blif' $^
 | 
				
			||||||
 | 
					
 | 
				
			||||||
design.asc: pinout.pcf design.blif
 | 
					design.asc: pinout.pcf design.blif
 | 
				
			||||||
	arachne-pnr -d 8k -o design.asc -p pinout.pcf design.blif
 | 
						arachne-pnr -d 8k -o design.asc -p pinout.pcf design.blif
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,6 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
PicoRV32 SPI-Flash Demo
 | 
					PicoSoC - A simple example SoC using PicoRV32
 | 
				
			||||||
=======================
 | 
					=============================================
 | 
				
			||||||
 | 
					
 | 
				
			||||||
This is a simple PicoRV32 example design that can run code directly from an SPI
 | 
					This is a simple PicoRV32 example design that can run code directly from an SPI
 | 
				
			||||||
flash chip. This example design uses the Lattice iCE40-HX8K Breakout Board.
 | 
					flash chip. This example design uses the Lattice iCE40-HX8K Breakout Board.
 | 
				
			||||||
| 
						 | 
					@ -18,7 +18,7 @@ and upload them to a connected iCE40-HX8K Breakout Board.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| File                        | Description                                                     |
 | 
					| File                        | Description                                                     |
 | 
				
			||||||
| --------------------------- | --------------------------------------------------------------- |
 | 
					| --------------------------- | --------------------------------------------------------------- |
 | 
				
			||||||
| [top.v](top.v)              | Top-level Verilog module for the design                         |
 | 
					| [picosoc.v](picosoc.v)      | Top-level Verilog module for the design                         |
 | 
				
			||||||
| [spimemio.v](spimemio.v)    | Memory controller that interfaces to external SPI flash         |
 | 
					| [spimemio.v](spimemio.v)    | Memory controller that interfaces to external SPI flash         |
 | 
				
			||||||
| [spiflash.v](spiflash.v)    | Simulation model of an SPI flash (used by testbench.v)          |
 | 
					| [spiflash.v](spiflash.v)    | Simulation model of an SPI flash (used by testbench.v)          |
 | 
				
			||||||
| [testbench.v](testbench.v)  | Simple test bench for the design (requires firmware.hex).       |
 | 
					| [testbench.v](testbench.v)  | Simple test bench for the design (requires firmware.hex).       |
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,5 @@
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 *  Top-level for "spiflash" SoC demo
 | 
					 *  PicoSoC - A simple example SoC using PicoRV32
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 *  Copyright (C) 2017  Clifford Wolf <clifford@clifford.at>
 | 
					 *  Copyright (C) 2017  Clifford Wolf <clifford@clifford.at>
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
| 
						 | 
					@ -17,7 +17,7 @@
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module top (
 | 
					module picosoc (
 | 
				
			||||||
	input clk,
 | 
						input clk,
 | 
				
			||||||
	output trap,
 | 
						output trap,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,5 @@
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 *  A simple simulation model for an SPI flash
 | 
					 *  PicoSoC - A simple example SoC using PicoRV32
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 *  Copyright (C) 2017  Clifford Wolf <clifford@clifford.at>
 | 
					 *  Copyright (C) 2017  Clifford Wolf <clifford@clifford.at>
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,5 @@
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 *  A simple test bench for the SPI flash simulation model
 | 
					 *  PicoSoC - A simple example SoC using PicoRV32
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 *  Copyright (C) 2017  Clifford Wolf <clifford@clifford.at>
 | 
					 *  Copyright (C) 2017  Clifford Wolf <clifford@clifford.at>
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,5 @@
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 *  Interface module for SPI flash and PicoRV32 native memory interface
 | 
					 *  PicoSoC - A simple example SoC using PicoRV32
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 *  Copyright (C) 2017  Clifford Wolf <clifford@clifford.at>
 | 
					 *  Copyright (C) 2017  Clifford Wolf <clifford@clifford.at>
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,5 @@
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 *  Test bench for the "spiflash" SoC
 | 
					 *  PicoSoC - A simple example SoC using PicoRV32
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 *  Copyright (C) 2017  Clifford Wolf <clifford@clifford.at>
 | 
					 *  Copyright (C) 2017  Clifford Wolf <clifford@clifford.at>
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
| 
						 | 
					@ -51,7 +51,7 @@ module testbench;
 | 
				
			||||||
		end
 | 
							end
 | 
				
			||||||
	end
 | 
						end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	top uut (
 | 
						picosoc uut (
 | 
				
			||||||
		.clk      (clk      ),
 | 
							.clk      (clk      ),
 | 
				
			||||||
		.gpio_i   (gpio_i   ),
 | 
							.gpio_i   (gpio_i   ),
 | 
				
			||||||
		.gpio_o   (gpio_o   ),
 | 
							.gpio_o   (gpio_o   ),
 | 
				
			||||||
		Loading…
	
		Reference in New Issue