Basic serial transmission
This commit is contained in:
parent
880144d2e7
commit
a10aeac72d
26
fizzbuzz/Makefile
Normal file
26
fizzbuzz/Makefile
Normal file
@ -0,0 +1,26 @@
|
||||
# Project setup
|
||||
PROJ = blinky
|
||||
BUILD = ./build
|
||||
DEVICE = 1k
|
||||
FOOTPRINT = tq144
|
||||
|
||||
# Files
|
||||
FILES = top.v
|
||||
|
||||
.PHONY: all clean burn
|
||||
|
||||
all:
|
||||
# if build folder doesn't exist, create it
|
||||
mkdir -p $(BUILD)
|
||||
# synthesize using Yosys
|
||||
yosys -p "synth_ice40 -top top -blif $(BUILD)/$(PROJ).blif" $(FILES)
|
||||
# Place and route using arachne
|
||||
arachne-pnr -d $(DEVICE) -P $(FOOTPRINT) -o $(BUILD)/$(PROJ).asc -p pinmap.pcf $(BUILD)/$(PROJ).blif
|
||||
# Convert to bitstream using IcePack
|
||||
icepack $(BUILD)/$(PROJ).asc $(BUILD)/$(PROJ).bin
|
||||
|
||||
burn:
|
||||
iceprog $(BUILD)/$(PROJ).bin
|
||||
|
||||
clean:
|
||||
rm build/*
|
4780
fizzbuzz/build/blinky.asc
Normal file
4780
fizzbuzz/build/blinky.asc
Normal file
File diff suppressed because it is too large
Load Diff
BIN
fizzbuzz/build/blinky.bin
Normal file
BIN
fizzbuzz/build/blinky.bin
Normal file
Binary file not shown.
456
fizzbuzz/build/blinky.blif
Normal file
456
fizzbuzz/build/blinky.blif
Normal file
@ -0,0 +1,456 @@
|
||||
# Generated by Yosys 0.7+627 (git sha1 e275692e, gcc 8.1.1 -march=x86-64 -mtune=generic -O2 -fstack-protector-strong -fno-plt -fPIC -Os)
|
||||
|
||||
.model top
|
||||
.inputs hwclock pmod_2
|
||||
.outputs N E W S G pmod_1 ftdi_tx
|
||||
.names $false
|
||||
.names $true
|
||||
1
|
||||
.names $undef
|
||||
.gate SB_LUT4 I0=foo.state[3] I1=foo.state[1] I2=foo.state[2] I3=foo.state[0] O=$abc$760$n1
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:52"
|
||||
.param LUT_INIT 0000000000000001
|
||||
.gate SB_LUT4 I0=$abc$760$n74_1 I1=$abc$760$n1 I2=$abc$760$n108 I3=$false O=$abc$760$n59
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:48"
|
||||
.param LUT_INIT 11101111
|
||||
.gate SB_LUT4 I0=$abc$760$n75_1 I1=$abc$760$n76_1 I2=$abc$760$n77_1 I3=$abc$760$n78_1 O=$abc$760$n74_1
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:52"
|
||||
.param LUT_INIT 1000000000000000
|
||||
.gate SB_LUT4 I0=foo.counter[0] I1=foo.counter[1] I2=$false I3=$false O=$abc$760$n75_1
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:44"
|
||||
.param LUT_INIT 0100
|
||||
.gate SB_LUT4 I0=foo.counter[2] I1=foo.counter[3] I2=foo.counter[4] I3=foo.counter[8] O=$abc$760$n76_1
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:52"
|
||||
.param LUT_INIT 0000000000000001
|
||||
.gate SB_LUT4 I0=foo.counter[11] I1=foo.counter[12] I2=foo.counter[10] I3=$false O=$abc$760$n77_1
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:48"
|
||||
.param LUT_INIT 00010000
|
||||
.gate SB_LUT4 I0=foo.counter[9] I1=foo.counter[6] I2=foo.counter[7] I3=foo.counter[5] O=$abc$760$n78_1
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:52"
|
||||
.param LUT_INIT 0100000000000000
|
||||
.gate SB_LUT4 I0=$abc$760$n74_1 I1=$abc$760$n108 I2=$abc$760$n80_1 I3=$abc$760$n1 O=$abc$760$n65
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:52"
|
||||
.param LUT_INIT 1111111100001011
|
||||
.gate SB_LUT4 I0=$abc$760$n81_1 I1=foo.state[0] I2=$false I3=$false O=$abc$760$n80_1
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:44"
|
||||
.param LUT_INIT 0001
|
||||
.gate SB_LUT4 I0=foo.state[2] I1=foo.state[0] I2=foo.state[3] I3=foo.state[1] O=$abc$760$n81_1
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:52"
|
||||
.param LUT_INIT 0001000000000000
|
||||
.gate SB_LUT4 I0=$abc$760$n74_1 I1=$abc$760$n1 I2=foo.counter[0] I3=$abc$760$n108 O=$abc$760$n68
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:52"
|
||||
.param LUT_INIT 1111111011111111
|
||||
.gate SB_LUT4 I0=$abc$760$n74_1 I1=$abc$760$n69 I2=$abc$760$n108 I3=$false O=$abc$760$n71
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:48"
|
||||
.param LUT_INIT 01000000
|
||||
.gate SB_LUT4 I0=foo.counter[1] I1=$abc$760$n108 I2=$false I3=$false O=$abc$760$n73
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:44"
|
||||
.param LUT_INIT 0100
|
||||
.gate SB_LUT4 I0=$abc$760$n74_1 I1=$abc$760$n74 I2=$abc$760$n108 I3=$false O=$abc$760$n75
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:48"
|
||||
.param LUT_INIT 01000000
|
||||
.gate SB_LUT4 I0=$abc$760$n74_1 I1=$abc$760$n76 I2=$abc$760$n108 I3=$false O=$abc$760$n77
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:48"
|
||||
.param LUT_INIT 01000000
|
||||
.gate SB_LUT4 I0=$abc$760$n74_1 I1=$abc$760$n78 I2=$abc$760$n108 I3=$false O=$abc$760$n79
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:48"
|
||||
.param LUT_INIT 01000000
|
||||
.gate SB_LUT4 I0=$abc$760$n74_1 I1=$abc$760$n80 I2=$abc$760$n108 I3=$false O=$abc$760$n81
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:48"
|
||||
.param LUT_INIT 01000000
|
||||
.gate SB_LUT4 I0=$abc$760$n74_1 I1=$abc$760$n82 I2=$abc$760$n108 I3=$false O=$abc$760$n83
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:48"
|
||||
.param LUT_INIT 01000000
|
||||
.gate SB_LUT4 I0=$abc$760$n74_1 I1=$abc$760$n84 I2=$abc$760$n108 I3=$false O=$abc$760$n85
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:48"
|
||||
.param LUT_INIT 01000000
|
||||
.gate SB_LUT4 I0=$abc$760$n74_1 I1=$abc$760$n86 I2=$abc$760$n108 I3=$false O=$abc$760$n87
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:48"
|
||||
.param LUT_INIT 01000000
|
||||
.gate SB_LUT4 I0=$abc$760$n74_1 I1=$abc$760$n88 I2=$abc$760$n108 I3=$false O=$abc$760$n89
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:48"
|
||||
.param LUT_INIT 01000000
|
||||
.gate SB_LUT4 I0=$abc$760$n74_1 I1=$abc$760$n90 I2=$abc$760$n108 I3=$false O=$abc$760$n91
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:48"
|
||||
.param LUT_INIT 01000000
|
||||
.gate SB_LUT4 I0=$abc$760$n74_1 I1=$abc$760$n92 I2=$abc$760$n108 I3=$false O=$abc$760$n93
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:48"
|
||||
.param LUT_INIT 01000000
|
||||
.gate SB_LUT4 I0=$abc$760$n74_1 I1=$abc$760$n94 I2=$abc$760$n108 I3=$false O=$abc$760$n95
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:48"
|
||||
.param LUT_INIT 01000000
|
||||
.gate SB_LUT4 I0=$abc$760$n81_1 I1=$abc$760$n96 I2=$false I3=$false O=$abc$760$n97
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:44"
|
||||
.param LUT_INIT 0100
|
||||
.gate SB_LUT4 I0=$abc$760$n81_1 I1=$abc$760$n100 I2=$false I3=$false O=$abc$760$n101
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:44"
|
||||
.param LUT_INIT 0100
|
||||
.gate SB_LUT4 I0=$abc$760$n81_1 I1=$abc$760$n102 I2=$false I3=$false O=$abc$760$n103
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:44"
|
||||
.param LUT_INIT 0100
|
||||
.gate SB_LUT4 I0=foo.state[3] I1=foo.state[1] I2=foo.state[0] I3=foo.state[2] O=ftdi_tx
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:52"
|
||||
.param LUT_INIT 1110111010001111
|
||||
.gate SB_LUT4 I0=foo.counter[12] I1=$false I2=$false I3=$false O=$abc$760$n2
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:40"
|
||||
.param LUT_INIT 01
|
||||
.gate SB_LUT4 I0=foo.counter[11] I1=$false I2=$false I3=$false O=$abc$760$n3
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:40"
|
||||
.param LUT_INIT 01
|
||||
.gate SB_LUT4 I0=foo.counter[9] I1=$false I2=$false I3=$false O=$abc$760$n6
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:40"
|
||||
.param LUT_INIT 01
|
||||
.gate SB_LUT4 I0=foo.counter[8] I1=$false I2=$false I3=$false O=$abc$760$n8
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:40"
|
||||
.param LUT_INIT 01
|
||||
.gate SB_LUT4 I0=foo.counter[4] I1=$false I2=$false I3=$false O=$abc$760$n14
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:40"
|
||||
.param LUT_INIT 01
|
||||
.gate SB_LUT4 I0=foo.counter[3] I1=$false I2=$false I3=$false O=$abc$760$n15
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:40"
|
||||
.param LUT_INIT 01
|
||||
.gate SB_LUT4 I0=foo.counter[2] I1=$false I2=$false I3=$false O=$abc$760$n17
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:40"
|
||||
.param LUT_INIT 01
|
||||
.gate SB_LUT4 I0=foo.counter[0] I1=$false I2=$false I3=$false O=$abc$760$n24
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:40"
|
||||
.param LUT_INIT 01
|
||||
.gate SB_LUT4 I0=foo.counter[1] I1=$false I2=$false I3=$false O=$abc$760$n72
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:40"
|
||||
.param LUT_INIT 01
|
||||
.gate SB_LUT4 I0=foo.state[1] I1=$false I2=$false I3=$false O=$abc$760$n99
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:40"
|
||||
.param LUT_INIT 01
|
||||
.gate SB_LUT4 I0=counter[1] I1=$false I2=$false I3=$false O=$0\counter[31:0][1]
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:40"
|
||||
.param LUT_INIT 01
|
||||
.gate SB_LUT4 I0=foo.counter[5] I1=$false I2=$false I3=$false O=$abc$760$n115
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:40"
|
||||
.param LUT_INIT 01
|
||||
.gate SB_LUT4 I0=foo.counter[6] I1=$false I2=$false I3=$false O=$abc$760$n117
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:40"
|
||||
.param LUT_INIT 01
|
||||
.gate SB_LUT4 I0=foo.counter[7] I1=$false I2=$false I3=$false O=$abc$760$n119
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:40"
|
||||
.param LUT_INIT 01
|
||||
.gate SB_LUT4 I0=foo.counter[10] I1=$false I2=$false I3=$false O=$abc$760$n122
|
||||
.attr src "/usr/bin/../share/yosys/ice40/cells_map.v:40"
|
||||
.param LUT_INIT 01
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$70.C[10] CO=$auto$alumacc.cc:474:replace_alu$70.C[11] I0=$true I1=$abc$760$n122
|
||||
.attr src "top.v:11|top.v:47|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$70.C[11] CO=$auto$alumacc.cc:474:replace_alu$70.C[12] I0=$false I1=$abc$760$n3
|
||||
.attr src "top.v:11|top.v:47|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$70.C[12] CO=$abc$760$n108 I0=$false I1=$abc$760$n2
|
||||
.attr src "top.v:11|top.v:47|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_CARRY CI=$abc$760$n24 CO=$auto$alumacc.cc:474:replace_alu$70.C[2] I0=$true I1=$abc$760$n72
|
||||
.attr src "top.v:11|top.v:47|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$70.C[2] CO=$auto$alumacc.cc:474:replace_alu$70.C[3] I0=$false I1=$abc$760$n17
|
||||
.attr src "top.v:11|top.v:47|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$70.C[3] CO=$auto$alumacc.cc:474:replace_alu$70.C[4] I0=$false I1=$abc$760$n15
|
||||
.attr src "top.v:11|top.v:47|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$70.C[4] CO=$auto$alumacc.cc:474:replace_alu$70.C[5] I0=$false I1=$abc$760$n14
|
||||
.attr src "top.v:11|top.v:47|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$70.C[5] CO=$auto$alumacc.cc:474:replace_alu$70.C[6] I0=$true I1=$abc$760$n115
|
||||
.attr src "top.v:11|top.v:47|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$70.C[6] CO=$auto$alumacc.cc:474:replace_alu$70.C[7] I0=$true I1=$abc$760$n117
|
||||
.attr src "top.v:11|top.v:47|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$70.C[7] CO=$auto$alumacc.cc:474:replace_alu$70.C[8] I0=$true I1=$abc$760$n119
|
||||
.attr src "top.v:11|top.v:47|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$70.C[8] CO=$auto$alumacc.cc:474:replace_alu$70.C[9] I0=$false I1=$abc$760$n8
|
||||
.attr src "top.v:11|top.v:47|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$70.C[9] CO=$auto$alumacc.cc:474:replace_alu$70.C[10] I0=$false I1=$abc$760$n6
|
||||
.attr src "top.v:11|top.v:47|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$true I2=counter[0] I3=$false O=$0\counter[31:0][0]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[10] I3=$auto$alumacc.cc:474:replace_alu$81.C[10] O=$0\counter[31:0][10]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[10] CO=$auto$alumacc.cc:474:replace_alu$81.C[11] I0=$false I1=counter[10]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[11] I3=$auto$alumacc.cc:474:replace_alu$81.C[11] O=$0\counter[31:0][11]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[11] CO=$auto$alumacc.cc:474:replace_alu$81.C[12] I0=$false I1=counter[11]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[12] I3=$auto$alumacc.cc:474:replace_alu$81.C[12] O=$0\counter[31:0][12]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[12] CO=$auto$alumacc.cc:474:replace_alu$81.C[13] I0=$false I1=counter[12]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[13] I3=$auto$alumacc.cc:474:replace_alu$81.C[13] O=$0\counter[31:0][13]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[13] CO=$auto$alumacc.cc:474:replace_alu$81.C[14] I0=$false I1=counter[13]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[14] I3=$auto$alumacc.cc:474:replace_alu$81.C[14] O=$0\counter[31:0][14]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[14] CO=$auto$alumacc.cc:474:replace_alu$81.C[15] I0=$false I1=counter[14]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[15] I3=$auto$alumacc.cc:474:replace_alu$81.C[15] O=$0\counter[31:0][15]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[15] CO=$auto$alumacc.cc:474:replace_alu$81.C[16] I0=$false I1=counter[15]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[16] I3=$auto$alumacc.cc:474:replace_alu$81.C[16] O=$0\counter[31:0][16]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[16] CO=$auto$alumacc.cc:474:replace_alu$81.C[17] I0=$false I1=counter[16]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[17] I3=$auto$alumacc.cc:474:replace_alu$81.C[17] O=$0\counter[31:0][17]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[17] CO=$auto$alumacc.cc:474:replace_alu$81.C[18] I0=$false I1=counter[17]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[18] I3=$auto$alumacc.cc:474:replace_alu$81.C[18] O=$0\counter[31:0][18]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[18] CO=$auto$alumacc.cc:474:replace_alu$81.C[19] I0=$false I1=counter[18]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[19] I3=$auto$alumacc.cc:474:replace_alu$81.C[19] O=$0\counter[31:0][19]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[19] CO=$auto$alumacc.cc:474:replace_alu$81.C[20] I0=$false I1=counter[19]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_CARRY CI=counter[0] CO=$auto$alumacc.cc:474:replace_alu$81.C[2] I0=$false I1=counter[1]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[20] I3=$auto$alumacc.cc:474:replace_alu$81.C[20] O=$0\counter[31:0][20]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[20] CO=$auto$alumacc.cc:474:replace_alu$81.C[21] I0=$false I1=counter[20]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=G I3=$auto$alumacc.cc:474:replace_alu$81.C[21] O=$0\counter[31:0][21]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[21] CO=$auto$alumacc.cc:474:replace_alu$81.C[22] I0=$false I1=G
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=N I3=$auto$alumacc.cc:474:replace_alu$81.C[22] O=$0\counter[31:0][22]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[2] I3=$auto$alumacc.cc:474:replace_alu$81.C[2] O=$0\counter[31:0][2]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[2] CO=$auto$alumacc.cc:474:replace_alu$81.C[3] I0=$false I1=counter[2]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[3] I3=$auto$alumacc.cc:474:replace_alu$81.C[3] O=$0\counter[31:0][3]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[3] CO=$auto$alumacc.cc:474:replace_alu$81.C[4] I0=$false I1=counter[3]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[4] I3=$auto$alumacc.cc:474:replace_alu$81.C[4] O=$0\counter[31:0][4]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[4] CO=$auto$alumacc.cc:474:replace_alu$81.C[5] I0=$false I1=counter[4]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[5] I3=$auto$alumacc.cc:474:replace_alu$81.C[5] O=$0\counter[31:0][5]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[5] CO=$auto$alumacc.cc:474:replace_alu$81.C[6] I0=$false I1=counter[5]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[6] I3=$auto$alumacc.cc:474:replace_alu$81.C[6] O=$0\counter[31:0][6]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[6] CO=$auto$alumacc.cc:474:replace_alu$81.C[7] I0=$false I1=counter[6]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[7] I3=$auto$alumacc.cc:474:replace_alu$81.C[7] O=$0\counter[31:0][7]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[7] CO=$auto$alumacc.cc:474:replace_alu$81.C[8] I0=$false I1=counter[7]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[8] I3=$auto$alumacc.cc:474:replace_alu$81.C[8] O=$0\counter[31:0][8]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[8] CO=$auto$alumacc.cc:474:replace_alu$81.C[9] I0=$false I1=counter[8]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=counter[9] I3=$auto$alumacc.cc:474:replace_alu$81.C[9] O=$0\counter[31:0][9]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$81.C[9] CO=$auto$alumacc.cc:474:replace_alu$81.C[10] I0=$false I1=counter[9]
|
||||
.attr src "top.v:14|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$true I2=foo.counter[0] I3=$false O=$abc$760$n69
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=foo.counter[10] I3=$auto$alumacc.cc:474:replace_alu$84.C[10] O=$abc$760$n90
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$84.C[10] CO=$auto$alumacc.cc:474:replace_alu$84.C[11] I0=$false I1=foo.counter[10]
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=foo.counter[11] I3=$auto$alumacc.cc:474:replace_alu$84.C[11] O=$abc$760$n92
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$84.C[11] CO=$auto$alumacc.cc:474:replace_alu$84.C[12] I0=$false I1=foo.counter[11]
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=foo.counter[12] I3=$auto$alumacc.cc:474:replace_alu$84.C[12] O=$abc$760$n94
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=foo.counter[0] CO=$auto$alumacc.cc:474:replace_alu$84.C[2] I0=$false I1=foo.counter[1]
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=foo.counter[2] I3=$auto$alumacc.cc:474:replace_alu$84.C[2] O=$abc$760$n74
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$84.C[2] CO=$auto$alumacc.cc:474:replace_alu$84.C[3] I0=$false I1=foo.counter[2]
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=foo.counter[3] I3=$auto$alumacc.cc:474:replace_alu$84.C[3] O=$abc$760$n76
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$84.C[3] CO=$auto$alumacc.cc:474:replace_alu$84.C[4] I0=$false I1=foo.counter[3]
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=foo.counter[4] I3=$auto$alumacc.cc:474:replace_alu$84.C[4] O=$abc$760$n78
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$84.C[4] CO=$auto$alumacc.cc:474:replace_alu$84.C[5] I0=$false I1=foo.counter[4]
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=foo.counter[5] I3=$auto$alumacc.cc:474:replace_alu$84.C[5] O=$abc$760$n80
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$84.C[5] CO=$auto$alumacc.cc:474:replace_alu$84.C[6] I0=$false I1=foo.counter[5]
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=foo.counter[6] I3=$auto$alumacc.cc:474:replace_alu$84.C[6] O=$abc$760$n82
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$84.C[6] CO=$auto$alumacc.cc:474:replace_alu$84.C[7] I0=$false I1=foo.counter[6]
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=foo.counter[7] I3=$auto$alumacc.cc:474:replace_alu$84.C[7] O=$abc$760$n84
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$84.C[7] CO=$auto$alumacc.cc:474:replace_alu$84.C[8] I0=$false I1=foo.counter[7]
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=foo.counter[8] I3=$auto$alumacc.cc:474:replace_alu$84.C[8] O=$abc$760$n86
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$84.C[8] CO=$auto$alumacc.cc:474:replace_alu$84.C[9] I0=$false I1=foo.counter[8]
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=foo.counter[9] I3=$auto$alumacc.cc:474:replace_alu$84.C[9] O=$abc$760$n88
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$84.C[9] CO=$auto$alumacc.cc:474:replace_alu$84.C[10] I0=$false I1=foo.counter[9]
|
||||
.attr src "top.v:11|top.v:48|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$true I2=foo.state[0] I3=$false O=$abc$760$n96
|
||||
.attr src "top.v:11|top.v:52|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=foo.state[0] CO=$auto$alumacc.cc:474:replace_alu$87.C[2] I0=$false I1=foo.state[1]
|
||||
.attr src "top.v:11|top.v:52|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=foo.state[2] I3=$auto$alumacc.cc:474:replace_alu$87.C[2] O=$abc$760$n100
|
||||
.attr src "top.v:11|top.v:52|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_CARRY CI=$auto$alumacc.cc:474:replace_alu$87.C[2] CO=$auto$alumacc.cc:474:replace_alu$87.C[3] I0=$false I1=foo.state[2]
|
||||
.attr src "top.v:11|top.v:52|/usr/bin/../share/yosys/ice40/arith_map.v:47"
|
||||
.gate SB_LUT4 I0=$false I1=$false I2=foo.state[3] I3=$auto$alumacc.cc:474:replace_alu$87.C[3] O=$abc$760$n102
|
||||
.attr src "top.v:11|top.v:52|/usr/bin/../share/yosys/ice40/arith_map.v:53"
|
||||
.param LUT_INIT 0110100110010110
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][0] Q=counter[0]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFFE C=hwclock D=$0\counter[31:0][1] E=counter[0] Q=counter[1]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:8"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][2] Q=counter[2]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][3] Q=counter[3]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][4] Q=counter[4]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][5] Q=counter[5]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][6] Q=counter[6]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][7] Q=counter[7]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][8] Q=counter[8]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][9] Q=counter[9]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][10] Q=counter[10]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][11] Q=counter[11]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][12] Q=counter[12]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][13] Q=counter[13]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][14] Q=counter[14]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][15] Q=counter[15]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][16] Q=counter[16]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][17] Q=counter[17]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][18] Q=counter[18]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][19] Q=counter[19]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][20] Q=counter[20]
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][21] Q=G
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFF C=hwclock D=$0\counter[31:0][22] Q=N
|
||||
.attr src "top.v:13|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFFESS C=hwclock D=$abc$760$n97 E=$abc$760$n59 Q=foo.state[0] S=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:8"
|
||||
.gate SB_DFFESR C=hwclock D=$abc$760$n99 E=$abc$760$n65 Q=foo.state[1] R=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:8"
|
||||
.gate SB_DFFESR C=hwclock D=$abc$760$n101 E=$abc$760$n59 Q=foo.state[2] R=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:8"
|
||||
.gate SB_DFFESR C=hwclock D=$abc$760$n103 E=$abc$760$n59 Q=foo.state[3] R=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:8"
|
||||
.gate SB_DFFSR C=hwclock D=$abc$760$n71 Q=foo.counter[0] R=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFFESR C=hwclock D=$abc$760$n73 E=$abc$760$n68 Q=foo.counter[1] R=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:8"
|
||||
.gate SB_DFFSR C=hwclock D=$abc$760$n75 Q=foo.counter[2] R=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFFSR C=hwclock D=$abc$760$n77 Q=foo.counter[3] R=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFFSR C=hwclock D=$abc$760$n79 Q=foo.counter[4] R=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFFSR C=hwclock D=$abc$760$n81 Q=foo.counter[5] R=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFFSR C=hwclock D=$abc$760$n83 Q=foo.counter[6] R=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFFSR C=hwclock D=$abc$760$n85 Q=foo.counter[7] R=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFFSR C=hwclock D=$abc$760$n87 Q=foo.counter[8] R=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFFSR C=hwclock D=$abc$760$n89 Q=foo.counter[9] R=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFFSR C=hwclock D=$abc$760$n91 Q=foo.counter[10] R=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFFSR C=hwclock D=$abc$760$n93 Q=foo.counter[11] R=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.gate SB_DFFSR C=hwclock D=$abc$760$n95 Q=foo.counter[12] R=$abc$760$n1
|
||||
.attr src "top.v:11|top.v:35|/usr/bin/../share/yosys/ice40/cells_map.v:2"
|
||||
.names $undef E
|
||||
1 1
|
||||
.names $undef S
|
||||
1 1
|
||||
.names $undef W
|
||||
1 1
|
||||
.names G counter[21]
|
||||
1 1
|
||||
.names N counter[22]
|
||||
1 1
|
||||
.names $undef counter[23]
|
||||
1 1
|
||||
.names $undef counter[24]
|
||||
1 1
|
||||
.names $undef counter[25]
|
||||
1 1
|
||||
.names $undef counter[26]
|
||||
1 1
|
||||
.names $undef counter[27]
|
||||
1 1
|
||||
.names $undef counter[28]
|
||||
1 1
|
||||
.names $undef counter[29]
|
||||
1 1
|
||||
.names $undef counter[30]
|
||||
1 1
|
||||
.names $undef counter[31]
|
||||
1 1
|
||||
.names hwclock foo.hwclock
|
||||
1 1
|
||||
.names ftdi_tx foo.out
|
||||
1 1
|
||||
.names $undef pmod_1
|
||||
1 1
|
||||
.end
|
16
fizzbuzz/pinmap.pcf
Normal file
16
fizzbuzz/pinmap.pcf
Normal file
@ -0,0 +1,16 @@
|
||||
# example.pcf
|
||||
set_io --warn-no-port N 99
|
||||
set_io --warn-no-port E 98
|
||||
set_io --warn-no-port S 97
|
||||
set_io --warn-no-port W 96
|
||||
|
||||
set_io --warn-no-port G 95
|
||||
|
||||
set_io --warn-no-port hwclock 21
|
||||
|
||||
|
||||
set_io --warn-no-port pmod_1 78
|
||||
set_io --warn-no-port pmod_2 79
|
||||
|
||||
set_io --warn-no-port ftdi_tx 8
|
||||
set_io --warn-no-port ftdi_rx 9
|
75
fizzbuzz/top.v
Normal file
75
fizzbuzz/top.v
Normal file
@ -0,0 +1,75 @@
|
||||
module top(output N, output E, output W, output S, output G, input hwclock, output pmod_1, input pmod_2, output ftdi_tx);
|
||||
|
||||
reg [31:0] counter = 32'b0;
|
||||
|
||||
assign G = counter[21];
|
||||
assign N = counter[22];
|
||||
|
||||
|
||||
wire busy;
|
||||
|
||||
serial foo (hwclock, "q", 0, 1, ftdi_tx, busy);
|
||||
|
||||
always @ (posedge hwclock) begin
|
||||
counter <= counter + 1;
|
||||
end
|
||||
|
||||
endmodule
|
||||
|
||||
|
||||
module serial(input hwclock, input [7:0] char, input reset, input send, output reg out, output busy);
|
||||
|
||||
reg [12:0] counter;
|
||||
reg [7:0] char1;
|
||||
|
||||
assign busy = (state == IDLE) ? 1'b1 : 1'b0;
|
||||
|
||||
localparam IDLE = 4'd0, START = 4'd1;
|
||||
localparam BIT0 = 4'd2, BIT1 = 4'd3, BIT2 = 4'd4, BIT3 = 4'd5, BIT4 = 4'd6,
|
||||
BIT5 = 4'd7, BIT6 = 4'd8, BIT7 = 4'd9, STOP = 4'd10;
|
||||
localparam SPACE = 1'b0;
|
||||
localparam MARK = 1'b1;
|
||||
|
||||
reg [3:0] state = IDLE;
|
||||
|
||||
always @ (posedge hwclock) begin
|
||||
if (reset) begin
|
||||
state <= IDLE;
|
||||
counter <= 0;
|
||||
end else if (state == IDLE) begin
|
||||
if (send == 1) begin
|
||||
state <= START;
|
||||
counter <= 0;
|
||||
char1 <= char;
|
||||
end
|
||||
end else begin
|
||||
// 12_000_000 / 9600 = 1250
|
||||
if (counter < 1250) begin
|
||||
counter <= counter + 1;
|
||||
end else begin
|
||||
counter <= 0;
|
||||
if (state != STOP) begin
|
||||
state <= state + 1'b1;
|
||||
end else begin
|
||||
state <= IDLE;
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
always @ (*) begin
|
||||
case (state)
|
||||
IDLE: out = MARK; // Stop bit is also IDLE
|
||||
START: out = SPACE;
|
||||
BIT0: out = char1[0];
|
||||
BIT1: out = char1[1];
|
||||
BIT2: out = char1[2];
|
||||
BIT3: out = char1[3];
|
||||
BIT4: out = char1[4];
|
||||
BIT5: out = char1[5];
|
||||
BIT6: out = char1[6];
|
||||
BIT7: out = char1[7];
|
||||
default: out = MARK;
|
||||
endcase
|
||||
end
|
||||
endmodule
|
Loading…
Reference in New Issue
Block a user