whitespace cleanup
[ls2.git] / runsimsoc_hyperram.sh
1 #!/bin/bash
2 set -e
3
4 LIB_DIR=./src/ecp5u
5
6 HYPERRAM_DIR=./hyperram_model/s27kl0641/model
7
8 QSPI_DIR=./qspi_model/N25Q256A11E_VG15/
9
10 # create the build_simsoc/top.il file with firmware baked-in
11 #python3 src/ls2.py isim ./coldboot/coldboot.bin
12
13 # do some voodoo magic to get icarus to be happy with the ilang file
14 #yosys simsoc.ys
15
16 # fix a bug in Lattice ECP5 models
17 cp ${LIB_DIR}/DDRDLLA.v DDRDLLA.v
18 patch DDRDLLA.v < DDRDLLA.patch
19
20 # string together the icarus verilog files and start runnin
21 iverilog -Wall -g2012 -s simsoc_hyperram_tb -o simsoc \
22 src/simsoc_hyperram_tb.v ./top.v \
23 ${HYPERRAM_DIR}/s27kl0641.v \
24 ${LIB_DIR}/ECLKSYNCB.v ${LIB_DIR}/EHXPLLL.v \
25 ${LIB_DIR}/PUR.v ${LIB_DIR}/GSR.v \
26 ${LIB_DIR}/FD1S3AX.v ${LIB_DIR}/SGSR.v ${LIB_DIR}/ODDRX2F.v \
27 ${LIB_DIR}/ODDRX2DQA.v ${LIB_DIR}/DELAYF.v ${LIB_DIR}/BB.v \
28 ${LIB_DIR}/OB.v ${LIB_DIR}/IB.v ${LIB_DIR}/OBZ.v \
29 ${LIB_DIR}/DQSBUFM.v ${LIB_DIR}/UDFDL5_UDP_X.v \
30 ${LIB_DIR}/UDFDL5E_UDP_X.v \
31 ${LIB_DIR}/OFS1P3DX.v \
32 ${LIB_DIR}/IFS1P3DX.v \
33 ${LIB_DIR}/TSHX2DQSA.v ${LIB_DIR}/TSHX2DQA.v \
34 ${LIB_DIR}/ODDRX2DQSB.v ${LIB_DIR}/IDDRX2DQA.v \
35 DDRDLLA.v \
36 -I ${QSPI_DIR} -DN25Q128A13E \
37 ${QSPI_DIR}/code/N25Qxxx.v \
38 ${LIB_DIR}/CLKDIVF.v
39 vvp -n simsoc -fst-speed