-
-
Save eddyb/65057afd4f3c9181da15dcdfdc968290 to your computer and use it in GitHub Desktop.
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
# Automatically generated by nMigen 0.1.dev1+g6765021.dirty. Do not edit. | |
attribute \generator "nMigen" | |
attribute \nmigen.hierarchy "top.uart" | |
module \uart | |
attribute \src "/home/eddy/Projects/halogen/uart.py:21" | |
wire width 1 input 0 \rx_i | |
attribute \src "/home/eddy/Projects/halogen/uart.py:20" | |
wire width 1 output 1 \tx_o | |
attribute \src "/home/eddy/Projects/halogen/uart.py:30" | |
wire width 1 output 2 \rx_rdy | |
attribute \src "/home/eddy/Projects/halogen/uart.py:30" | |
wire width 1 \rx_rdy$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:31" | |
wire width 1 input 3 \rx_ack | |
attribute \src "/home/eddy/Projects/halogen/uart.py:27" | |
wire width 8 output 4 \rx_data | |
attribute \src "/home/eddy/Projects/halogen/uart.py:24" | |
wire width 1 input 5 \tx_rdy | |
attribute \src "/home/eddy/Projects/halogen/uart.py:23" | |
wire width 8 input 6 \tx_data | |
attribute \src "/home/eddy/Projects/halogen/uart.py:25" | |
wire width 1 output 7 \tx_ack | |
attribute \src "nmigen/vendor/lattice_ice40.py:364" | |
wire width 1 input 8 \rst | |
attribute \src "nmigen/vendor/lattice_ice40.py:364" | |
wire width 1 input 9 \clk | |
attribute \src "/home/eddy/Projects/halogen/uart.py:37" | |
wire width 10 \tx_shreg | |
attribute \src "/home/eddy/Projects/halogen/uart.py:37" | |
wire width 10 \tx_shreg$next | |
process $group_0 | |
assign \tx_o 1'0 | |
assign \tx_o \tx_shreg [0] | |
sync init | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:38" | |
wire width 4 \tx_count | |
attribute \src "/home/eddy/Projects/halogen/uart.py:38" | |
wire width 4 \tx_count$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
wire width 1 $1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
cell $eq $2 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \tx_count | |
connect \B 1'0 | |
connect \Y $1 | |
end | |
process $group_1 | |
assign \tx_ack 1'0 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
switch { $1 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
case 1'1 | |
assign \tx_ack 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:49" | |
case | |
end | |
sync init | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
wire width 1 $3 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
cell $eq $4 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \tx_count | |
connect \B 1'0 | |
connect \Y $3 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:36" | |
wire width 7 \tx_phase | |
attribute \src "/home/eddy/Projects/halogen/uart.py:36" | |
wire width 7 \tx_phase$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
wire width 1 $5 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
cell $ne $6 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \tx_phase | |
connect \B 1'0 | |
connect \Y $5 | |
end | |
process $group_2 | |
assign \tx_shreg$next \tx_shreg | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
switch { $3 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:43" | |
switch { \tx_rdy } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:43" | |
case 1'1 | |
assign \tx_shreg$next { 1'1 \tx_data 1'0 } | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:49" | |
case | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
switch { $5 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:52" | |
case | |
assign \tx_shreg$next { 1'1 \tx_shreg [9:1] } | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \tx_shreg$next 10'1111111111 | |
end | |
sync init | |
update \tx_shreg 10'1111111111 | |
sync posedge \clk | |
update \tx_shreg \tx_shreg$next | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
wire width 1 $7 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
cell $eq $8 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \tx_count | |
connect \B 1'0 | |
connect \Y $7 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
wire width 1 $9 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
cell $ne $10 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \tx_phase | |
connect \B 1'0 | |
connect \Y $9 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:55" | |
wire width 5 $11 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:55" | |
wire width 5 $12 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:55" | |
cell $sub $13 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'101 | |
connect \A \tx_count | |
connect \B 1'1 | |
connect \Y $12 | |
end | |
connect $11 $12 | |
process $group_3 | |
assign \tx_count$next \tx_count | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
switch { $7 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:43" | |
switch { \tx_rdy } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:43" | |
case 1'1 | |
assign \tx_count$next 4'1010 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:49" | |
case | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
switch { $9 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:52" | |
case | |
assign \tx_count$next $11 [3:0] | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \tx_count$next 4'0000 | |
end | |
sync init | |
update \tx_count 4'0000 | |
sync posedge \clk | |
update \tx_count \tx_count$next | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
wire width 1 $14 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
cell $eq $15 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \tx_count | |
connect \B 1'0 | |
connect \Y $14 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
wire width 1 $16 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
cell $ne $17 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \tx_phase | |
connect \B 1'0 | |
connect \Y $16 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:51" | |
wire width 8 $18 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:51" | |
wire width 8 $19 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:51" | |
cell $sub $20 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 4'1000 | |
connect \A \tx_phase | |
connect \B 1'1 | |
connect \Y $19 | |
end | |
connect $18 $19 | |
process $group_4 | |
assign \tx_phase$next \tx_phase | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
switch { $14 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:43" | |
switch { \tx_rdy } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:43" | |
case 1'1 | |
assign \tx_phase$next 7'1100111 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:49" | |
case | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
switch { $16 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
case 1'1 | |
assign \tx_phase$next $18 [6:0] | |
attribute \src "/home/eddy/Projects/halogen/uart.py:52" | |
case | |
assign \tx_phase$next 7'1100111 | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \tx_phase$next 7'0000000 | |
end | |
sync init | |
update \tx_phase 7'0000000 | |
sync posedge \clk | |
update \tx_phase \tx_phase$next | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:60" | |
wire width 10 \rx_shreg | |
attribute \src "/home/eddy/Projects/halogen/uart.py:60" | |
wire width 10 \rx_shreg$next | |
process $group_5 | |
assign \rx_data 8'00000000 | |
assign \rx_data \rx_shreg [8:1] | |
sync init | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:28" | |
wire width 1 \rx_err | |
attribute \src "/home/eddy/Projects/halogen/uart.py:61" | |
wire width 4 \rx_count | |
attribute \src "/home/eddy/Projects/halogen/uart.py:61" | |
wire width 4 \rx_count$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
wire width 1 $21 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
cell $eq $22 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_count | |
connect \B 1'0 | |
connect \Y $21 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:65" | |
wire width 1 $23 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:65" | |
wire width 1 $24 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:65" | |
cell $not $25 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_shreg [0] | |
connect \Y $24 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:65" | |
wire width 1 $26 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:65" | |
cell $and $27 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A $24 | |
connect \B \rx_shreg [9] | |
connect \Y $26 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:65" | |
cell $not $28 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A $26 | |
connect \Y $23 | |
end | |
process $group_6 | |
assign \rx_err 1'0 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
switch { $21 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
case 1'1 | |
assign \rx_err $23 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:76" | |
case | |
end | |
sync init | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
wire width 1 $29 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
cell $eq $30 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_count | |
connect \B 1'0 | |
connect \Y $29 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
wire width 1 $31 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
cell $not $32 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_i | |
connect \Y $31 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
wire width 1 $33 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
cell $not $34 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_rdy | |
connect \Y $33 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
wire width 1 $35 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
cell $or $36 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_ack | |
connect \B $33 | |
connect \Y $35 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:59" | |
wire width 7 \rx_phase | |
attribute \src "/home/eddy/Projects/halogen/uart.py:59" | |
wire width 7 \rx_phase$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
wire width 1 $37 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
cell $ne $38 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_phase | |
connect \B 1'0 | |
connect \Y $37 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:85" | |
wire width 1 $39 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:85" | |
cell $eq $40 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_count | |
connect \B 1'1 | |
connect \Y $39 | |
end | |
process $group_7 | |
assign \rx_rdy$next \rx_rdy | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
switch { $29 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
switch { $31 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
switch { $35 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
case 1'1 | |
assign \rx_rdy$next 1'0 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:74" | |
case | |
end | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:76" | |
case | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
switch { $37 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:79" | |
case | |
attribute \src "/home/eddy/Projects/halogen/uart.py:85" | |
switch { $39 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:85" | |
case 1'1 | |
assign \rx_rdy$next 1'1 | |
end | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \rx_rdy$next 1'0 | |
end | |
sync init | |
update \rx_rdy 1'0 | |
sync posedge \clk | |
update \rx_rdy \rx_rdy$next | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:29" | |
wire width 1 \rx_ovf | |
attribute \src "/home/eddy/Projects/halogen/uart.py:29" | |
wire width 1 \rx_ovf$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
wire width 1 $41 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
cell $eq $42 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_count | |
connect \B 1'0 | |
connect \Y $41 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
wire width 1 $43 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
cell $not $44 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_i | |
connect \Y $43 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
wire width 1 $45 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
cell $not $46 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_rdy | |
connect \Y $45 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
wire width 1 $47 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
cell $or $48 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_ack | |
connect \B $45 | |
connect \Y $47 | |
end | |
process $group_8 | |
assign \rx_ovf$next \rx_ovf | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
switch { $41 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
switch { $43 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
switch { $47 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
case 1'1 | |
assign \rx_ovf$next 1'0 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:74" | |
case | |
assign \rx_ovf$next 1'1 | |
end | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:76" | |
case | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \rx_ovf$next 1'0 | |
end | |
sync init | |
update \rx_ovf 1'0 | |
sync posedge \clk | |
update \rx_ovf \rx_ovf$next | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
wire width 1 $49 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
cell $eq $50 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_count | |
connect \B 1'0 | |
connect \Y $49 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
wire width 1 $51 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
cell $not $52 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_i | |
connect \Y $51 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
wire width 1 $53 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
cell $not $54 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_rdy | |
connect \Y $53 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
wire width 1 $55 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
cell $or $56 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_ack | |
connect \B $53 | |
connect \Y $55 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
wire width 1 $57 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
cell $ne $58 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_phase | |
connect \B 1'0 | |
connect \Y $57 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:82" | |
wire width 5 $59 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:82" | |
wire width 5 $60 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:82" | |
cell $sub $61 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'101 | |
connect \A \rx_count | |
connect \B 1'1 | |
connect \Y $60 | |
end | |
connect $59 $60 | |
process $group_9 | |
assign \rx_count$next \rx_count | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
switch { $49 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
switch { $51 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
switch { $55 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
case 1'1 | |
assign \rx_count$next 4'1010 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:74" | |
case | |
end | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:76" | |
case | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
switch { $57 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:79" | |
case | |
assign \rx_count$next $59 [3:0] | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \rx_count$next 4'0000 | |
end | |
sync init | |
update \rx_count 4'0000 | |
sync posedge \clk | |
update \rx_count \rx_count$next | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
wire width 1 $62 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
cell $eq $63 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_count | |
connect \B 1'0 | |
connect \Y $62 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
wire width 1 $64 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
cell $not $65 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_i | |
connect \Y $64 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
wire width 1 $66 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
cell $not $67 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_rdy | |
connect \Y $66 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
wire width 1 $68 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
cell $or $69 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_ack | |
connect \B $66 | |
connect \Y $68 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
wire width 1 $70 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
cell $ne $71 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_phase | |
connect \B 1'0 | |
connect \Y $70 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:78" | |
wire width 8 $72 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:78" | |
wire width 8 $73 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:78" | |
cell $sub $74 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 4'1000 | |
connect \A \rx_phase | |
connect \B 1'1 | |
connect \Y $73 | |
end | |
connect $72 $73 | |
process $group_10 | |
assign \rx_phase$next \rx_phase | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
switch { $62 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
switch { $64 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
switch { $68 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
case 1'1 | |
assign \rx_phase$next 7'0110100 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:74" | |
case | |
end | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:76" | |
case | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
switch { $70 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
case 1'1 | |
assign \rx_phase$next $72 [6:0] | |
attribute \src "/home/eddy/Projects/halogen/uart.py:79" | |
case | |
assign \rx_phase$next 7'1100111 | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \rx_phase$next 7'0000000 | |
end | |
sync init | |
update \rx_phase 7'0000000 | |
sync posedge \clk | |
update \rx_phase \rx_phase$next | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
wire width 1 $75 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
cell $eq $76 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_count | |
connect \B 1'0 | |
connect \Y $75 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
wire width 1 $77 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
cell $ne $78 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_phase | |
connect \B 1'0 | |
connect \Y $77 | |
end | |
process $group_11 | |
assign \rx_shreg$next \rx_shreg | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
switch { $75 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:76" | |
case | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
switch { $77 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:79" | |
case | |
assign \rx_shreg$next { \rx_i \rx_shreg [9:1] } | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \rx_shreg$next 10'1111111111 | |
end | |
sync init | |
update \rx_shreg 10'1111111111 | |
sync posedge \clk | |
update \rx_shreg \rx_shreg$next | |
end | |
end | |
attribute \generator "nMigen" | |
attribute \nmigen.hierarchy "top.cd_sync" | |
module \cd_sync | |
attribute \src "nmigen/vendor/lattice_ice40.py:364" | |
wire width 1 output 0 \rst | |
attribute \src "nmigen/vendor/lattice_ice40.py:364" | |
wire width 1 output 1 \clk | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 input 2 \clk12_0__i | |
attribute \src "nmigen/vendor/lattice_ice40.py:354" | |
wire width 1 \por_clk | |
process $group_0 | |
assign \por_clk 1'0 | |
assign \por_clk \clk12_0__i | |
sync init | |
end | |
attribute \src "nmigen/vendor/lattice_ice40.py:357" | |
wire width 1 \ready | |
attribute \src "nmigen/vendor/lattice_ice40.py:357" | |
wire width 1 \ready$next | |
attribute \src "nmigen/vendor/lattice_ice40.py:356" | |
wire width 8 \timer | |
attribute \src "nmigen/vendor/lattice_ice40.py:356" | |
wire width 8 \timer$next | |
attribute \src "nmigen/vendor/lattice_ice40.py:359" | |
wire width 1 $1 | |
attribute \src "nmigen/vendor/lattice_ice40.py:359" | |
cell $eq $2 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 4'1000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \timer | |
connect \B 8'10110100 | |
connect \Y $1 | |
end | |
process $group_1 | |
assign \ready$next \ready | |
attribute \src "nmigen/vendor/lattice_ice40.py:359" | |
switch { $1 } | |
attribute \src "nmigen/vendor/lattice_ice40.py:359" | |
case 1'1 | |
assign \ready$next 1'1 | |
attribute \src "nmigen/vendor/lattice_ice40.py:361" | |
case | |
end | |
sync init | |
update \ready 1'0 | |
sync posedge \por_clk | |
update \ready \ready$next | |
end | |
attribute \src "nmigen/vendor/lattice_ice40.py:359" | |
wire width 1 $3 | |
attribute \src "nmigen/vendor/lattice_ice40.py:359" | |
cell $eq $4 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 4'1000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \timer | |
connect \B 8'10110100 | |
connect \Y $3 | |
end | |
attribute \src "nmigen/vendor/lattice_ice40.py:362" | |
wire width 9 $5 | |
attribute \src "nmigen/vendor/lattice_ice40.py:362" | |
wire width 9 $6 | |
attribute \src "nmigen/vendor/lattice_ice40.py:362" | |
cell $add $7 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 4'1001 | |
connect \A \timer | |
connect \B 1'1 | |
connect \Y $6 | |
end | |
connect $5 $6 | |
process $group_2 | |
assign \timer$next \timer | |
attribute \src "nmigen/vendor/lattice_ice40.py:359" | |
switch { $3 } | |
attribute \src "nmigen/vendor/lattice_ice40.py:359" | |
case 1'1 | |
attribute \src "nmigen/vendor/lattice_ice40.py:361" | |
case | |
assign \timer$next $5 [7:0] | |
end | |
sync init | |
update \timer 8'00000000 | |
sync posedge \por_clk | |
update \timer \timer$next | |
end | |
process $group_3 | |
assign \clk 1'0 | |
assign \clk \clk12_0__i | |
sync init | |
end | |
attribute \src "nmigen/vendor/lattice_ice40.py:369" | |
wire width 1 $8 | |
attribute \src "nmigen/vendor/lattice_ice40.py:369" | |
cell $not $9 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \ready | |
connect \Y $8 | |
end | |
process $group_4 | |
assign \rst 1'0 | |
assign \rst $8 | |
sync init | |
end | |
end | |
attribute \generator "nMigen" | |
attribute \top 1 | |
attribute \nmigen.hierarchy "top" | |
module \top | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 0 \clk12_0__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 1 \led_0__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 2 \led_1__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 3 \led_2__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 4 \led_3__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 5 \led_4__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 6 \uart_0__cts__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 7 \uart_0__dcd__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 8 \uart_0__dsr__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 9 \uart_0__dtr__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 10 \uart_0__rts__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 11 \uart_0__rx__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 12 \uart_0__tx__io | |
attribute \src "nmigen/vendor/lattice_ice40.py:364" | |
wire width 1 \clk | |
attribute \src "nmigen/vendor/lattice_ice40.py:364" | |
wire width 1 \rst | |
attribute \src "/home/eddy/Projects/halogen/uart.py:21" | |
wire width 1 \uart_rx_i | |
attribute \src "/home/eddy/Projects/halogen/uart.py:20" | |
wire width 1 \uart_tx_o | |
attribute \src "/home/eddy/Projects/halogen/uart.py:30" | |
wire width 1 \uart_rx_rdy | |
attribute \src "/home/eddy/Projects/halogen/uart.py:31" | |
wire width 1 \uart_rx_ack | |
attribute \src "/home/eddy/Projects/halogen/uart.py:31" | |
wire width 1 \uart_rx_ack$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:27" | |
wire width 8 \uart_rx_data | |
attribute \src "/home/eddy/Projects/halogen/uart.py:24" | |
wire width 1 \uart_tx_rdy | |
attribute \src "/home/eddy/Projects/halogen/uart.py:24" | |
wire width 1 \uart_tx_rdy$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:23" | |
wire width 8 \uart_tx_data | |
attribute \src "/home/eddy/Projects/halogen/uart.py:23" | |
wire width 8 \uart_tx_data$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:25" | |
wire width 1 \uart_tx_ack | |
cell \uart \uart | |
connect \rx_i \uart_rx_i | |
connect \tx_o \uart_tx_o | |
connect \rx_rdy \uart_rx_rdy | |
connect \rx_ack \uart_rx_ack | |
connect \rx_data \uart_rx_data | |
connect \tx_rdy \uart_tx_rdy | |
connect \tx_data \uart_tx_data | |
connect \tx_ack \uart_tx_ack | |
connect \rst \rst | |
connect \clk \clk | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \cd_sync_clk12_0__i | |
cell \cd_sync \cd_sync | |
connect \rst \rst | |
connect \clk \clk | |
connect \clk12_0__i \cd_sync_clk12_0__i | |
end | |
cell \SB_GB_IO \clk12_0_0 | |
parameter \IO_STANDARD "SB_LVCMOS" | |
parameter \PIN_TYPE 6'1 | |
connect \PACKAGE_PIN \clk12_0__io | |
connect \GLOBAL_BUFFER_OUTPUT \cd_sync_clk12_0__i | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_0__o | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_0__o$next | |
cell \SB_IO \led_0_0 | |
parameter \IO_STANDARD "SB_LVCMOS" | |
parameter \PIN_TYPE 6'11001 | |
connect \PACKAGE_PIN \led_0__io | |
connect \D_OUT_0 \led_0__o | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_1__o | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_1__o$next | |
cell \SB_IO \led_1_0 | |
parameter \IO_STANDARD "SB_LVCMOS" | |
parameter \PIN_TYPE 6'11001 | |
connect \PACKAGE_PIN \led_1__io | |
connect \D_OUT_0 \led_1__o | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_2__o | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_2__o$next | |
cell \SB_IO \led_2_0 | |
parameter \IO_STANDARD "SB_LVCMOS" | |
parameter \PIN_TYPE 6'11001 | |
connect \PACKAGE_PIN \led_2__io | |
connect \D_OUT_0 \led_2__o | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_3__o | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_3__o$next | |
cell \SB_IO \led_3_0 | |
parameter \IO_STANDARD "SB_LVCMOS" | |
parameter \PIN_TYPE 6'11001 | |
connect \PACKAGE_PIN \led_3__io | |
connect \D_OUT_0 \led_3__o | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_4__o | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_4__o$next | |
cell \SB_IO \led_4_0 | |
parameter \IO_STANDARD "SB_LVCMOS" | |
parameter \PIN_TYPE 6'11001 | |
connect \PACKAGE_PIN \led_4__io | |
connect \D_OUT_0 \led_4__o | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \uart_0__cts__i | |
cell \SB_IO \uart_0__cts_0 | |
parameter \IO_STANDARD "SB_LVTTL" | |
parameter \PULLUP 1'1 | |
parameter \PIN_TYPE 6'1 | |
connect \PACKAGE_PIN \uart_0__cts__io | |
connect \D_IN_0 \uart_0__cts__i | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \uart_0__dcd__i | |
cell \SB_IO \uart_0__dcd_0 | |
parameter \IO_STANDARD "SB_LVTTL" | |
parameter \PULLUP 1'1 | |
parameter \PIN_TYPE 6'1 | |
connect \PACKAGE_PIN \uart_0__dcd__io | |
connect \D_IN_0 \uart_0__dcd__i | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \uart_0__dsr__i | |
cell \SB_IO \uart_0__dsr_0 | |
parameter \IO_STANDARD "SB_LVTTL" | |
parameter \PULLUP 1'1 | |
parameter \PIN_TYPE 6'1 | |
connect \PACKAGE_PIN \uart_0__dsr__io | |
connect \D_IN_0 \uart_0__dsr__i | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \uart_0__dtr__o | |
cell \SB_IO \uart_0__dtr_0 | |
parameter \IO_STANDARD "SB_LVTTL" | |
parameter \PULLUP 1'1 | |
parameter \PIN_TYPE 6'11001 | |
connect \PACKAGE_PIN \uart_0__dtr__io | |
connect \D_OUT_0 \uart_0__dtr__o | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \uart_0__rts__o | |
cell \SB_IO \uart_0__rts_0 | |
parameter \IO_STANDARD "SB_LVTTL" | |
parameter \PULLUP 1'1 | |
parameter \PIN_TYPE 6'11001 | |
connect \PACKAGE_PIN \uart_0__rts__io | |
connect \D_OUT_0 \uart_0__rts__o | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \uart_0__rx__i | |
cell \SB_IO \uart_0__rx_0 | |
parameter \IO_STANDARD "SB_LVTTL" | |
parameter \PULLUP 1'1 | |
parameter \PIN_TYPE 6'1 | |
connect \PACKAGE_PIN \uart_0__rx__io | |
connect \D_IN_0 \uart_0__rx__i | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \uart_0__tx__o | |
cell \SB_IO \uart_0__tx_0 | |
parameter \IO_STANDARD "SB_LVTTL" | |
parameter \PULLUP 1'1 | |
parameter \PIN_TYPE 6'11001 | |
connect \PACKAGE_PIN \uart_0__tx__io | |
connect \D_OUT_0 \uart_0__tx__o | |
end | |
attribute \src "aoc-2019-1.py:17" | |
wire width 2 \err | |
attribute \src "aoc-2019-1.py:17" | |
wire width 2 \err$next | |
attribute \src "aoc-2019-1.py:18" | |
wire width 1 $1 | |
attribute \src "aoc-2019-1.py:18" | |
cell $ne $2 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'10 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \err | |
connect \B 1'0 | |
connect \Y $1 | |
end | |
attribute \src "aoc-2019-1.py:19" | |
wire width 6 $3 | |
attribute \src "aoc-2019-1.py:15" | |
wire width 6 $4 | |
attribute \src "aoc-2019-1.py:15" | |
cell $pos $5 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'101 | |
parameter \Y_WIDTH 3'110 | |
connect \A { \led_4__o \led_3__o \led_2__o \led_1__o \led_0__o } | |
connect \Y $4 | |
end | |
attribute \src "aoc-2019-1.py:19" | |
wire width 6 $6 | |
attribute \src "aoc-2019-1.py:19" | |
cell $and $7 | |
parameter \A_SIGNED 1'1 | |
parameter \A_WIDTH 3'110 | |
parameter \B_SIGNED 1'1 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 3'110 | |
connect \A $4 | |
connect \B 6'101111 | |
connect \Y $6 | |
end | |
attribute \src "aoc-2019-1.py:19" | |
wire width 6 $8 | |
attribute \src "aoc-2019-1.py:19" | |
wire width 4 $9 | |
attribute \src "aoc-2019-1.py:19" | |
cell $sshl $10 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 3'100 | |
connect \A 1'1 | |
connect \B \err | |
connect \Y $9 | |
end | |
attribute \src "aoc-2019-1.py:19" | |
cell $pos $11 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \Y_WIDTH 3'110 | |
connect \A $9 | |
connect \Y $8 | |
end | |
attribute \src "aoc-2019-1.py:19" | |
wire width 6 $12 | |
attribute \src "aoc-2019-1.py:19" | |
cell $or $13 | |
parameter \A_SIGNED 1'1 | |
parameter \A_WIDTH 3'110 | |
parameter \B_SIGNED 1'1 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 3'110 | |
connect \A $6 | |
connect \B $8 | |
connect \Y $12 | |
end | |
connect $3 $12 | |
process $group_0 | |
assign \led_0__o$next \led_0__o | |
assign \led_1__o$next \led_1__o | |
assign \led_2__o$next \led_2__o | |
assign \led_3__o$next \led_3__o | |
assign \led_4__o$next \led_4__o | |
attribute \src "aoc-2019-1.py:18" | |
switch { $1 } | |
attribute \src "aoc-2019-1.py:18" | |
case 1'1 | |
assign { \led_4__o$next \led_3__o$next \led_2__o$next \led_1__o$next \led_0__o$next } $3 [4:0] | |
attribute \src "aoc-2019-1.py:20" | |
case | |
assign { \led_4__o$next \led_3__o$next \led_2__o$next \led_1__o$next \led_0__o$next } 5'10000 | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \led_0__o$next 1'0 | |
assign \led_1__o$next 1'0 | |
assign \led_2__o$next 1'0 | |
assign \led_3__o$next 1'0 | |
assign \led_4__o$next 1'0 | |
end | |
sync init | |
update \led_0__o 1'0 | |
update \led_1__o 1'0 | |
update \led_2__o 1'0 | |
update \led_3__o 1'0 | |
update \led_4__o 1'0 | |
sync posedge \clk | |
update \led_0__o \led_0__o$next | |
update \led_1__o \led_1__o$next | |
update \led_2__o \led_2__o$next | |
update \led_3__o \led_3__o$next | |
update \led_4__o \led_4__o$next | |
end | |
process $group_5 | |
assign \uart_rx_i 1'0 | |
assign \uart_rx_i { \uart_0__rx__i } | |
sync init | |
end | |
process $group_6 | |
assign \uart_0__tx__o 1'0 | |
assign { \uart_0__tx__o } \uart_tx_o | |
sync init | |
end | |
process $group_7 | |
assign \uart_rx_ack$next \uart_rx_ack | |
attribute \src "aoc-2019-1.py:41" | |
switch { \uart_rx_rdy } | |
attribute \src "aoc-2019-1.py:41" | |
case 1'1 | |
assign \uart_rx_ack$next 1'1 | |
attribute \src "aoc-2019-1.py:75" | |
case | |
assign \uart_rx_ack$next 1'0 | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \uart_rx_ack$next 1'0 | |
end | |
sync init | |
update \uart_rx_ack 1'0 | |
sync posedge \clk | |
update \uart_rx_ack \uart_rx_ack$next | |
end | |
attribute \src "aoc-2019-1.py:44" | |
wire width 1 $14 | |
attribute \src "aoc-2019-1.py:44" | |
cell $not $15 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_ack | |
connect \Y $14 | |
end | |
attribute \src "aoc-2019-1.py:45" | |
wire width 1 $16 | |
attribute \src "aoc-2019-1.py:45" | |
cell $eq $17 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'101 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 5'10010 | |
connect \Y $16 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $18 | |
attribute \src "aoc-2019-1.py:53" | |
cell $ge $19 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'110000 | |
connect \Y $18 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $20 | |
attribute \src "aoc-2019-1.py:53" | |
cell $le $21 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'111001 | |
connect \Y $20 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $22 | |
attribute \src "aoc-2019-1.py:53" | |
cell $and $23 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A $18 | |
connect \B $20 | |
connect \Y $22 | |
end | |
attribute \src "aoc-2019-1.py:35" | |
wire width 1 \out_en | |
attribute \src "aoc-2019-1.py:35" | |
wire width 1 \out_en$next | |
attribute \src "aoc-2019-1.py:65" | |
wire width 1 $24 | |
attribute \src "aoc-2019-1.py:65" | |
cell $eq $25 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'100000 | |
connect \Y $24 | |
end | |
attribute \src "aoc-2019-1.py:67" | |
wire width 1 $26 | |
attribute \src "aoc-2019-1.py:67" | |
cell $eq $27 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 4'1010 | |
connect \Y $26 | |
end | |
process $group_8 | |
assign \err$next \err | |
attribute \src "aoc-2019-1.py:41" | |
switch { \uart_rx_rdy } | |
attribute \src "aoc-2019-1.py:41" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:44" | |
switch { $14 } | |
attribute \src "aoc-2019-1.py:44" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:45" | |
switch { $22 $16 } | |
attribute \src "aoc-2019-1.py:45" | |
case 2'-1 | |
assign \err$next 2'00 | |
attribute \src "aoc-2019-1.py:53" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:57" | |
case | |
attribute \src "aoc-2019-1.py:58" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:58" | |
case 1'1 | |
assign \err$next 2'01 | |
attribute \src "aoc-2019-1.py:60" | |
case | |
attribute \src "aoc-2019-1.py:65" | |
switch { $26 $24 } | |
attribute \src "aoc-2019-1.py:65" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:67" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:73" | |
case | |
assign \err$next 2'10 | |
end | |
end | |
end | |
end | |
attribute \src "aoc-2019-1.py:75" | |
case | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \err$next 2'00 | |
end | |
sync init | |
update \err 2'00 | |
sync posedge \clk | |
update \err \err$next | |
end | |
attribute \src "aoc-2019-1.py:33" | |
wire width 27 \in_val | |
attribute \src "aoc-2019-1.py:33" | |
wire width 27 \in_val$next | |
attribute \src "aoc-2019-1.py:44" | |
wire width 1 $28 | |
attribute \src "aoc-2019-1.py:44" | |
cell $not $29 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_ack | |
connect \Y $28 | |
end | |
attribute \src "aoc-2019-1.py:45" | |
wire width 1 $30 | |
attribute \src "aoc-2019-1.py:45" | |
cell $eq $31 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'101 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 5'10010 | |
connect \Y $30 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $32 | |
attribute \src "aoc-2019-1.py:53" | |
cell $ge $33 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'110000 | |
connect \Y $32 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $34 | |
attribute \src "aoc-2019-1.py:53" | |
cell $le $35 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'111001 | |
connect \Y $34 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $36 | |
attribute \src "aoc-2019-1.py:53" | |
cell $and $37 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A $32 | |
connect \B $34 | |
connect \Y $36 | |
end | |
attribute \src "aoc-2019-1.py:55" | |
wire width 32 $38 | |
attribute \src "aoc-2019-1.py:55" | |
wire width 31 $39 | |
attribute \src "aoc-2019-1.py:55" | |
cell $mul $40 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 5'11111 | |
connect \A \in_val | |
connect \B 4'1010 | |
connect \Y $39 | |
end | |
attribute \src "aoc-2019-1.py:55" | |
wire width 9 $41 | |
attribute \src "aoc-2019-1.py:55" | |
cell $sub $42 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 4'1001 | |
connect \A \uart_rx_data | |
connect \B 6'110000 | |
connect \Y $41 | |
end | |
attribute \src "aoc-2019-1.py:55" | |
wire width 32 $43 | |
attribute \src "aoc-2019-1.py:55" | |
cell $add $44 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 4'1001 | |
parameter \Y_WIDTH 6'100000 | |
connect \A $39 | |
connect \B $41 | |
connect \Y $43 | |
end | |
connect $38 $43 | |
process $group_9 | |
assign \in_val$next \in_val | |
attribute \src "aoc-2019-1.py:41" | |
switch { \uart_rx_rdy } | |
attribute \src "aoc-2019-1.py:41" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:44" | |
switch { $28 } | |
attribute \src "aoc-2019-1.py:44" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:45" | |
switch { $36 $30 } | |
attribute \src "aoc-2019-1.py:45" | |
case 2'-1 | |
assign \in_val$next 27'000000000000000000000000000 | |
attribute \src "aoc-2019-1.py:53" | |
case 2'1- | |
assign \in_val$next $38 [26:0] | |
attribute \src "aoc-2019-1.py:57" | |
case | |
attribute \src "aoc-2019-1.py:58" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:58" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:60" | |
case | |
assign \in_val$next 27'000000000000000000000000000 | |
end | |
end | |
end | |
attribute \src "aoc-2019-1.py:75" | |
case | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \in_val$next 27'000000000000000000000000000 | |
end | |
sync init | |
update \in_val 27'000000000000000000000000000 | |
sync posedge \clk | |
update \in_val \in_val$next | |
end | |
attribute \src "aoc-2019-1.py:44" | |
wire width 1 $45 | |
attribute \src "aoc-2019-1.py:44" | |
cell $not $46 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_ack | |
connect \Y $45 | |
end | |
attribute \src "aoc-2019-1.py:45" | |
wire width 1 $47 | |
attribute \src "aoc-2019-1.py:45" | |
cell $eq $48 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'101 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 5'10010 | |
connect \Y $47 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $49 | |
attribute \src "aoc-2019-1.py:53" | |
cell $ge $50 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'110000 | |
connect \Y $49 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $51 | |
attribute \src "aoc-2019-1.py:53" | |
cell $le $52 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'111001 | |
connect \Y $51 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $53 | |
attribute \src "aoc-2019-1.py:53" | |
cell $and $54 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A $49 | |
connect \B $51 | |
connect \Y $53 | |
end | |
attribute \src "aoc-2019-1.py:65" | |
wire width 1 $55 | |
attribute \src "aoc-2019-1.py:65" | |
cell $eq $56 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'100000 | |
connect \Y $55 | |
end | |
attribute \src "aoc-2019-1.py:67" | |
wire width 1 $57 | |
attribute \src "aoc-2019-1.py:67" | |
cell $eq $58 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 4'1010 | |
connect \Y $57 | |
end | |
attribute \src "aoc-2019-1.py:36" | |
wire width 27 \out_val | |
attribute \src "aoc-2019-1.py:36" | |
wire width 27 \out_val$next | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $59 | |
attribute \src "aoc-2019-1.py:38" | |
wire width 3 \out_idx | |
attribute \src "aoc-2019-1.py:38" | |
wire width 3 \out_idx$next | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $60 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $61 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 1'0 | |
connect \Y $60 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $62 | |
parameter \WIDTH 6'100000 | |
connect \A 32'00000000000000000000000000000000 | |
connect \B 32'00000000000000000000000000000001 | |
connect \S $60 | |
connect \Y $59 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $63 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $64 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $65 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 1'1 | |
connect \Y $64 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $66 | |
parameter \WIDTH 6'100000 | |
connect \A $59 | |
connect \B 32'00000000000000000000000000001010 | |
connect \S $64 | |
connect \Y $63 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $67 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $68 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $69 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 2'10 | |
connect \Y $68 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $70 | |
parameter \WIDTH 6'100000 | |
connect \A $63 | |
connect \B 32'00000000000000000000000001100100 | |
connect \S $68 | |
connect \Y $67 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $71 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $72 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $73 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 2'11 | |
connect \Y $72 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $74 | |
parameter \WIDTH 6'100000 | |
connect \A $67 | |
connect \B 32'00000000000000000000001111101000 | |
connect \S $72 | |
connect \Y $71 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $75 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $76 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $77 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'100 | |
connect \Y $76 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $78 | |
parameter \WIDTH 6'100000 | |
connect \A $71 | |
connect \B 32'00000000000000000010011100010000 | |
connect \S $76 | |
connect \Y $75 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $79 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $80 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $81 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'101 | |
connect \Y $80 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $82 | |
parameter \WIDTH 6'100000 | |
connect \A $75 | |
connect \B 32'00000000000000011000011010100000 | |
connect \S $80 | |
connect \Y $79 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $83 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $84 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $85 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'110 | |
connect \Y $84 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $86 | |
parameter \WIDTH 6'100000 | |
connect \A $79 | |
connect \B 32'00000000000011110100001001000000 | |
connect \S $84 | |
connect \Y $83 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $87 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $88 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $89 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'111 | |
connect \Y $88 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $90 | |
parameter \WIDTH 6'100000 | |
connect \A $83 | |
connect \B 32'00000000100110001001011010000000 | |
connect \S $88 | |
connect \Y $87 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $91 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $92 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $93 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 4'1000 | |
connect \Y $92 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $94 | |
parameter \WIDTH 6'100000 | |
connect \A $87 | |
connect \B 32'00000101111101011110000100000000 | |
connect \S $92 | |
connect \Y $91 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $95 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $96 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $97 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 4'1001 | |
connect \Y $96 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $98 | |
parameter \WIDTH 6'100000 | |
connect \A $91 | |
connect \B 32'00111011100110101100101000000000 | |
connect \S $96 | |
connect \Y $95 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $99 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $100 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 6'100000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B $95 | |
connect \Y $99 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $101 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $102 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $101 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $103 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $104 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 1'0 | |
connect \Y $103 | |
end | |
process $group_10 | |
assign \out_en$next \out_en | |
attribute \src "aoc-2019-1.py:41" | |
switch { \uart_rx_rdy } | |
attribute \src "aoc-2019-1.py:41" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:44" | |
switch { $45 } | |
attribute \src "aoc-2019-1.py:44" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:45" | |
switch { $53 $47 } | |
attribute \src "aoc-2019-1.py:45" | |
case 2'-1 | |
assign \out_en$next 1'0 | |
attribute \src "aoc-2019-1.py:53" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:57" | |
case | |
attribute \src "aoc-2019-1.py:58" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:58" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:60" | |
case | |
attribute \src "aoc-2019-1.py:65" | |
switch { $57 $55 } | |
attribute \src "aoc-2019-1.py:65" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:67" | |
case 2'1- | |
assign \out_en$next 1'1 | |
attribute \src "aoc-2019-1.py:73" | |
case | |
end | |
end | |
end | |
end | |
attribute \src "aoc-2019-1.py:75" | |
case | |
end | |
attribute \src "aoc-2019-1.py:79" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:79" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $101 $99 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $103 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:97" | |
case | |
assign \out_en$next 1'0 | |
end | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \out_en$next 1'0 | |
end | |
sync init | |
update \out_en 1'0 | |
sync posedge \clk | |
update \out_en \out_en$next | |
end | |
attribute \src "aoc-2019-1.py:44" | |
wire width 1 $105 | |
attribute \src "aoc-2019-1.py:44" | |
cell $not $106 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_ack | |
connect \Y $105 | |
end | |
attribute \src "aoc-2019-1.py:45" | |
wire width 1 $107 | |
attribute \src "aoc-2019-1.py:45" | |
cell $eq $108 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'101 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 5'10010 | |
connect \Y $107 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $109 | |
attribute \src "aoc-2019-1.py:53" | |
cell $ge $110 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'110000 | |
connect \Y $109 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $111 | |
attribute \src "aoc-2019-1.py:53" | |
cell $le $112 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'111001 | |
connect \Y $111 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $113 | |
attribute \src "aoc-2019-1.py:53" | |
cell $and $114 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A $109 | |
connect \B $111 | |
connect \Y $113 | |
end | |
attribute \src "aoc-2019-1.py:63" | |
wire width 29 $115 | |
attribute \src "aoc-2019-1.py:63" | |
wire width 27 $116 | |
attribute \src "aoc-2019-1.py:63" | |
cell $div $117 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 5'11011 | |
connect \A \in_val | |
connect \B 2'11 | |
connect \Y $116 | |
end | |
attribute \src "aoc-2019-1.py:63" | |
wire width 27 $118 | |
attribute \src "nmigen/back/rtlil.py:516" | |
wire width 1 $119 | |
attribute \src "nmigen/back/rtlil.py:516" | |
cell $eq $120 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \in_val | |
connect \B 1'0 | |
connect \Y $119 | |
end | |
attribute \src "aoc-2019-1.py:63" | |
cell $mux $121 | |
parameter \WIDTH 5'11011 | |
connect \A $116 | |
connect \B 27'000000000000000000000000000 | |
connect \S $119 | |
connect \Y $118 | |
end | |
attribute \src "aoc-2019-1.py:63" | |
wire width 28 $122 | |
attribute \src "aoc-2019-1.py:63" | |
cell $add $123 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11011 | |
parameter \Y_WIDTH 5'11100 | |
connect \A \out_val | |
connect \B $118 | |
connect \Y $122 | |
end | |
attribute \src "aoc-2019-1.py:63" | |
wire width 29 $124 | |
attribute \src "aoc-2019-1.py:63" | |
cell $sub $125 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 5'11101 | |
connect \A $122 | |
connect \B 2'10 | |
connect \Y $124 | |
end | |
connect $115 $124 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $126 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $127 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $128 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 1'0 | |
connect \Y $127 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $129 | |
parameter \WIDTH 6'100000 | |
connect \A 32'00000000000000000000000000000000 | |
connect \B 32'00000000000000000000000000000001 | |
connect \S $127 | |
connect \Y $126 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $130 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $131 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $132 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 1'1 | |
connect \Y $131 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $133 | |
parameter \WIDTH 6'100000 | |
connect \A $126 | |
connect \B 32'00000000000000000000000000001010 | |
connect \S $131 | |
connect \Y $130 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $134 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $135 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $136 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 2'10 | |
connect \Y $135 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $137 | |
parameter \WIDTH 6'100000 | |
connect \A $130 | |
connect \B 32'00000000000000000000000001100100 | |
connect \S $135 | |
connect \Y $134 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $138 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $139 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $140 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 2'11 | |
connect \Y $139 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $141 | |
parameter \WIDTH 6'100000 | |
connect \A $134 | |
connect \B 32'00000000000000000000001111101000 | |
connect \S $139 | |
connect \Y $138 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $142 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $143 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $144 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'100 | |
connect \Y $143 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $145 | |
parameter \WIDTH 6'100000 | |
connect \A $138 | |
connect \B 32'00000000000000000010011100010000 | |
connect \S $143 | |
connect \Y $142 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $146 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $147 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $148 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'101 | |
connect \Y $147 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $149 | |
parameter \WIDTH 6'100000 | |
connect \A $142 | |
connect \B 32'00000000000000011000011010100000 | |
connect \S $147 | |
connect \Y $146 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $150 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $151 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $152 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'110 | |
connect \Y $151 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $153 | |
parameter \WIDTH 6'100000 | |
connect \A $146 | |
connect \B 32'00000000000011110100001001000000 | |
connect \S $151 | |
connect \Y $150 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $154 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $155 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $156 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'111 | |
connect \Y $155 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $157 | |
parameter \WIDTH 6'100000 | |
connect \A $150 | |
connect \B 32'00000000100110001001011010000000 | |
connect \S $155 | |
connect \Y $154 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $158 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $159 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $160 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 4'1000 | |
connect \Y $159 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $161 | |
parameter \WIDTH 6'100000 | |
connect \A $154 | |
connect \B 32'00000101111101011110000100000000 | |
connect \S $159 | |
connect \Y $158 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $162 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $163 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $164 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 4'1001 | |
connect \Y $163 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $165 | |
parameter \WIDTH 6'100000 | |
connect \A $158 | |
connect \B 32'00111011100110101100101000000000 | |
connect \S $163 | |
connect \Y $162 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $166 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $167 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 6'100000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B $162 | |
connect \Y $166 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $168 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $169 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $168 | |
end | |
attribute \src "aoc-2019-1.py:87" | |
wire width 33 $170 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $171 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $172 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $173 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 1'0 | |
connect \Y $172 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $174 | |
parameter \WIDTH 6'100000 | |
connect \A 32'00000000000000000000000000000000 | |
connect \B 32'00000000000000000000000000000001 | |
connect \S $172 | |
connect \Y $171 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $175 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $176 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $177 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 1'1 | |
connect \Y $176 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $178 | |
parameter \WIDTH 6'100000 | |
connect \A $171 | |
connect \B 32'00000000000000000000000000001010 | |
connect \S $176 | |
connect \Y $175 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $179 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $180 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $181 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 2'10 | |
connect \Y $180 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $182 | |
parameter \WIDTH 6'100000 | |
connect \A $175 | |
connect \B 32'00000000000000000000000001100100 | |
connect \S $180 | |
connect \Y $179 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $183 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $184 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $185 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 2'11 | |
connect \Y $184 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $186 | |
parameter \WIDTH 6'100000 | |
connect \A $179 | |
connect \B 32'00000000000000000000001111101000 | |
connect \S $184 | |
connect \Y $183 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $187 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $188 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $189 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'100 | |
connect \Y $188 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $190 | |
parameter \WIDTH 6'100000 | |
connect \A $183 | |
connect \B 32'00000000000000000010011100010000 | |
connect \S $188 | |
connect \Y $187 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $191 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $192 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $193 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'101 | |
connect \Y $192 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $194 | |
parameter \WIDTH 6'100000 | |
connect \A $187 | |
connect \B 32'00000000000000011000011010100000 | |
connect \S $192 | |
connect \Y $191 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $195 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $196 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $197 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'110 | |
connect \Y $196 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $198 | |
parameter \WIDTH 6'100000 | |
connect \A $191 | |
connect \B 32'00000000000011110100001001000000 | |
connect \S $196 | |
connect \Y $195 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $199 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $200 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $201 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'111 | |
connect \Y $200 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $202 | |
parameter \WIDTH 6'100000 | |
connect \A $195 | |
connect \B 32'00000000100110001001011010000000 | |
connect \S $200 | |
connect \Y $199 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $203 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $204 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $205 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 4'1000 | |
connect \Y $204 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $206 | |
parameter \WIDTH 6'100000 | |
connect \A $199 | |
connect \B 32'00000101111101011110000100000000 | |
connect \S $204 | |
connect \Y $203 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $207 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $208 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $209 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 4'1001 | |
connect \Y $208 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $210 | |
parameter \WIDTH 6'100000 | |
connect \A $203 | |
connect \B 32'00111011100110101100101000000000 | |
connect \S $208 | |
connect \Y $207 | |
end | |
attribute \src "aoc-2019-1.py:87" | |
wire width 33 $211 | |
attribute \src "aoc-2019-1.py:87" | |
cell $sub $212 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 6'100000 | |
parameter \Y_WIDTH 6'100001 | |
connect \A \out_val | |
connect \B $207 | |
connect \Y $211 | |
end | |
connect $170 $211 | |
process $group_11 | |
assign \out_val$next \out_val | |
attribute \src "aoc-2019-1.py:41" | |
switch { \uart_rx_rdy } | |
attribute \src "aoc-2019-1.py:41" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:44" | |
switch { $105 } | |
attribute \src "aoc-2019-1.py:44" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:45" | |
switch { $113 $107 } | |
attribute \src "aoc-2019-1.py:45" | |
case 2'-1 | |
assign \out_val$next 27'000000000000000000000000000 | |
attribute \src "aoc-2019-1.py:53" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:57" | |
case | |
attribute \src "aoc-2019-1.py:58" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:58" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:60" | |
case | |
assign \out_val$next $115 [26:0] | |
end | |
end | |
end | |
attribute \src "aoc-2019-1.py:75" | |
case | |
end | |
attribute \src "aoc-2019-1.py:79" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:79" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $168 $166 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_val$next $170 [26:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \out_val$next 27'000000000000000000000000000 | |
end | |
sync init | |
update \out_val 27'000000000000000000000000000 | |
sync posedge \clk | |
update \out_val \out_val$next | |
end | |
attribute \src "aoc-2019-1.py:37" | |
wire width 4 \out_digit | |
attribute \src "aoc-2019-1.py:37" | |
wire width 4 \out_digit$next | |
attribute \src "aoc-2019-1.py:44" | |
wire width 1 $213 | |
attribute \src "aoc-2019-1.py:44" | |
cell $not $214 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_ack | |
connect \Y $213 | |
end | |
attribute \src "aoc-2019-1.py:45" | |
wire width 1 $215 | |
attribute \src "aoc-2019-1.py:45" | |
cell $eq $216 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'101 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 5'10010 | |
connect \Y $215 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $217 | |
attribute \src "aoc-2019-1.py:53" | |
cell $ge $218 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'110000 | |
connect \Y $217 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $219 | |
attribute \src "aoc-2019-1.py:53" | |
cell $le $220 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'111001 | |
connect \Y $219 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $221 | |
attribute \src "aoc-2019-1.py:53" | |
cell $and $222 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A $217 | |
connect \B $219 | |
connect \Y $221 | |
end | |
attribute \src "aoc-2019-1.py:65" | |
wire width 1 $223 | |
attribute \src "aoc-2019-1.py:65" | |
cell $eq $224 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'100000 | |
connect \Y $223 | |
end | |
attribute \src "aoc-2019-1.py:67" | |
wire width 1 $225 | |
attribute \src "aoc-2019-1.py:67" | |
cell $eq $226 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 4'1010 | |
connect \Y $225 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $227 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $228 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $229 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 1'0 | |
connect \Y $228 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $230 | |
parameter \WIDTH 6'100000 | |
connect \A 32'00000000000000000000000000000000 | |
connect \B 32'00000000000000000000000000000001 | |
connect \S $228 | |
connect \Y $227 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $231 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $232 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $233 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 1'1 | |
connect \Y $232 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $234 | |
parameter \WIDTH 6'100000 | |
connect \A $227 | |
connect \B 32'00000000000000000000000000001010 | |
connect \S $232 | |
connect \Y $231 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $235 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $236 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $237 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 2'10 | |
connect \Y $236 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $238 | |
parameter \WIDTH 6'100000 | |
connect \A $231 | |
connect \B 32'00000000000000000000000001100100 | |
connect \S $236 | |
connect \Y $235 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $239 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $240 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $241 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 2'11 | |
connect \Y $240 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $242 | |
parameter \WIDTH 6'100000 | |
connect \A $235 | |
connect \B 32'00000000000000000000001111101000 | |
connect \S $240 | |
connect \Y $239 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $243 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $244 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $245 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'100 | |
connect \Y $244 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $246 | |
parameter \WIDTH 6'100000 | |
connect \A $239 | |
connect \B 32'00000000000000000010011100010000 | |
connect \S $244 | |
connect \Y $243 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $247 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $248 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $249 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'101 | |
connect \Y $248 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $250 | |
parameter \WIDTH 6'100000 | |
connect \A $243 | |
connect \B 32'00000000000000011000011010100000 | |
connect \S $248 | |
connect \Y $247 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $251 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $252 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $253 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'110 | |
connect \Y $252 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $254 | |
parameter \WIDTH 6'100000 | |
connect \A $247 | |
connect \B 32'00000000000011110100001001000000 | |
connect \S $252 | |
connect \Y $251 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $255 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $256 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $257 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'111 | |
connect \Y $256 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $258 | |
parameter \WIDTH 6'100000 | |
connect \A $251 | |
connect \B 32'00000000100110001001011010000000 | |
connect \S $256 | |
connect \Y $255 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $259 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $260 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $261 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 4'1000 | |
connect \Y $260 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $262 | |
parameter \WIDTH 6'100000 | |
connect \A $255 | |
connect \B 32'00000101111101011110000100000000 | |
connect \S $260 | |
connect \Y $259 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $263 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $264 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $265 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 4'1001 | |
connect \Y $264 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $266 | |
parameter \WIDTH 6'100000 | |
connect \A $259 | |
connect \B 32'00111011100110101100101000000000 | |
connect \S $264 | |
connect \Y $263 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $267 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $268 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 6'100000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B $263 | |
connect \Y $267 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $269 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $270 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $269 | |
end | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $271 | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $272 | |
attribute \src "aoc-2019-1.py:86" | |
cell $add $273 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'101 | |
connect \A \out_digit | |
connect \B 1'1 | |
connect \Y $272 | |
end | |
connect $271 $272 | |
process $group_12 | |
assign \out_digit$next \out_digit | |
attribute \src "aoc-2019-1.py:41" | |
switch { \uart_rx_rdy } | |
attribute \src "aoc-2019-1.py:41" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:44" | |
switch { $213 } | |
attribute \src "aoc-2019-1.py:44" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:45" | |
switch { $221 $215 } | |
attribute \src "aoc-2019-1.py:45" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:53" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:57" | |
case | |
attribute \src "aoc-2019-1.py:58" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:58" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:60" | |
case | |
attribute \src "aoc-2019-1.py:65" | |
switch { $225 $223 } | |
attribute \src "aoc-2019-1.py:65" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:67" | |
case 2'1- | |
assign \out_digit$next 4'0000 | |
attribute \src "aoc-2019-1.py:73" | |
case | |
end | |
end | |
end | |
end | |
attribute \src "aoc-2019-1.py:75" | |
case | |
end | |
attribute \src "aoc-2019-1.py:79" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:79" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $269 $267 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_digit$next $271 [3:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \out_digit$next 4'0000 | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \out_digit$next 4'0000 | |
end | |
sync init | |
update \out_digit 4'0000 | |
sync posedge \clk | |
update \out_digit \out_digit$next | |
end | |
attribute \src "aoc-2019-1.py:44" | |
wire width 1 $274 | |
attribute \src "aoc-2019-1.py:44" | |
cell $not $275 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_ack | |
connect \Y $274 | |
end | |
attribute \src "aoc-2019-1.py:45" | |
wire width 1 $276 | |
attribute \src "aoc-2019-1.py:45" | |
cell $eq $277 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'101 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 5'10010 | |
connect \Y $276 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $278 | |
attribute \src "aoc-2019-1.py:53" | |
cell $ge $279 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'110000 | |
connect \Y $278 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $280 | |
attribute \src "aoc-2019-1.py:53" | |
cell $le $281 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'111001 | |
connect \Y $280 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $282 | |
attribute \src "aoc-2019-1.py:53" | |
cell $and $283 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A $278 | |
connect \B $280 | |
connect \Y $282 | |
end | |
attribute \src "aoc-2019-1.py:65" | |
wire width 1 $284 | |
attribute \src "aoc-2019-1.py:65" | |
cell $eq $285 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'100000 | |
connect \Y $284 | |
end | |
attribute \src "aoc-2019-1.py:67" | |
wire width 1 $286 | |
attribute \src "aoc-2019-1.py:67" | |
cell $eq $287 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 4'1010 | |
connect \Y $286 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $288 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $289 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $290 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 1'0 | |
connect \Y $289 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $291 | |
parameter \WIDTH 6'100000 | |
connect \A 32'00000000000000000000000000000000 | |
connect \B 32'00000000000000000000000000000001 | |
connect \S $289 | |
connect \Y $288 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $292 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $293 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $294 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 1'1 | |
connect \Y $293 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $295 | |
parameter \WIDTH 6'100000 | |
connect \A $288 | |
connect \B 32'00000000000000000000000000001010 | |
connect \S $293 | |
connect \Y $292 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $296 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $297 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $298 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 2'10 | |
connect \Y $297 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $299 | |
parameter \WIDTH 6'100000 | |
connect \A $292 | |
connect \B 32'00000000000000000000000001100100 | |
connect \S $297 | |
connect \Y $296 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $300 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $301 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $302 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 2'11 | |
connect \Y $301 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $303 | |
parameter \WIDTH 6'100000 | |
connect \A $296 | |
connect \B 32'00000000000000000000001111101000 | |
connect \S $301 | |
connect \Y $300 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $304 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $305 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $306 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'100 | |
connect \Y $305 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $307 | |
parameter \WIDTH 6'100000 | |
connect \A $300 | |
connect \B 32'00000000000000000010011100010000 | |
connect \S $305 | |
connect \Y $304 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $308 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $309 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $310 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'101 | |
connect \Y $309 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $311 | |
parameter \WIDTH 6'100000 | |
connect \A $304 | |
connect \B 32'00000000000000011000011010100000 | |
connect \S $309 | |
connect \Y $308 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $312 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $313 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $314 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'110 | |
connect \Y $313 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $315 | |
parameter \WIDTH 6'100000 | |
connect \A $308 | |
connect \B 32'00000000000011110100001001000000 | |
connect \S $313 | |
connect \Y $312 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $316 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $317 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $318 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'111 | |
connect \Y $317 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $319 | |
parameter \WIDTH 6'100000 | |
connect \A $312 | |
connect \B 32'00000000100110001001011010000000 | |
connect \S $317 | |
connect \Y $316 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $320 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $321 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $322 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 4'1000 | |
connect \Y $321 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $323 | |
parameter \WIDTH 6'100000 | |
connect \A $316 | |
connect \B 32'00000101111101011110000100000000 | |
connect \S $321 | |
connect \Y $320 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $324 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $325 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $326 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 4'1001 | |
connect \Y $325 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $327 | |
parameter \WIDTH 6'100000 | |
connect \A $320 | |
connect \B 32'00111011100110101100101000000000 | |
connect \S $325 | |
connect \Y $324 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $328 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $329 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 6'100000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B $324 | |
connect \Y $328 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $330 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $331 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $330 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $332 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $333 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 1'0 | |
connect \Y $332 | |
end | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $334 | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $335 | |
attribute \src "aoc-2019-1.py:96" | |
cell $sub $336 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'100 | |
connect \A \out_idx | |
connect \B 1'1 | |
connect \Y $335 | |
end | |
connect $334 $335 | |
process $group_13 | |
assign \out_idx$next \out_idx | |
attribute \src "aoc-2019-1.py:41" | |
switch { \uart_rx_rdy } | |
attribute \src "aoc-2019-1.py:41" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:44" | |
switch { $274 } | |
attribute \src "aoc-2019-1.py:44" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:45" | |
switch { $282 $276 } | |
attribute \src "aoc-2019-1.py:45" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:53" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:57" | |
case | |
attribute \src "aoc-2019-1.py:58" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:58" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:60" | |
case | |
attribute \src "aoc-2019-1.py:65" | |
switch { $286 $284 } | |
attribute \src "aoc-2019-1.py:65" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:67" | |
case 2'1- | |
assign \out_idx$next 3'111 | |
attribute \src "aoc-2019-1.py:73" | |
case | |
end | |
end | |
end | |
end | |
attribute \src "aoc-2019-1.py:75" | |
case | |
end | |
attribute \src "aoc-2019-1.py:79" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:79" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $330 $328 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $332 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
assign \out_idx$next $334 [2:0] | |
attribute \src "aoc-2019-1.py:97" | |
case | |
end | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \out_idx$next 3'000 | |
end | |
sync init | |
update \out_idx 3'000 | |
sync posedge \clk | |
update \out_idx \out_idx$next | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $337 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $338 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $339 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 1'0 | |
connect \Y $338 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $340 | |
parameter \WIDTH 6'100000 | |
connect \A 32'00000000000000000000000000000000 | |
connect \B 32'00000000000000000000000000000001 | |
connect \S $338 | |
connect \Y $337 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $341 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $342 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $343 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 1'1 | |
connect \Y $342 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $344 | |
parameter \WIDTH 6'100000 | |
connect \A $337 | |
connect \B 32'00000000000000000000000000001010 | |
connect \S $342 | |
connect \Y $341 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $345 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $346 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $347 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 2'10 | |
connect \Y $346 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $348 | |
parameter \WIDTH 6'100000 | |
connect \A $341 | |
connect \B 32'00000000000000000000000001100100 | |
connect \S $346 | |
connect \Y $345 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $349 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $350 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $351 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 2'11 | |
connect \Y $350 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $352 | |
parameter \WIDTH 6'100000 | |
connect \A $345 | |
connect \B 32'00000000000000000000001111101000 | |
connect \S $350 | |
connect \Y $349 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $353 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $354 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $355 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'100 | |
connect \Y $354 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $356 | |
parameter \WIDTH 6'100000 | |
connect \A $349 | |
connect \B 32'00000000000000000010011100010000 | |
connect \S $354 | |
connect \Y $353 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $357 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $358 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $359 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'101 | |
connect \Y $358 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $360 | |
parameter \WIDTH 6'100000 | |
connect \A $353 | |
connect \B 32'00000000000000011000011010100000 | |
connect \S $358 | |
connect \Y $357 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $361 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $362 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $363 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'110 | |
connect \Y $362 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $364 | |
parameter \WIDTH 6'100000 | |
connect \A $357 | |
connect \B 32'00000000000011110100001001000000 | |
connect \S $362 | |
connect \Y $361 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $365 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $366 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $367 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'111 | |
connect \Y $366 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $368 | |
parameter \WIDTH 6'100000 | |
connect \A $361 | |
connect \B 32'00000000100110001001011010000000 | |
connect \S $366 | |
connect \Y $365 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $369 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $370 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $371 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 4'1000 | |
connect \Y $370 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $372 | |
parameter \WIDTH 6'100000 | |
connect \A $365 | |
connect \B 32'00000101111101011110000100000000 | |
connect \S $370 | |
connect \Y $369 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $373 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $374 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $375 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 4'1001 | |
connect \Y $374 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $376 | |
parameter \WIDTH 6'100000 | |
connect \A $369 | |
connect \B 32'00111011100110101100101000000000 | |
connect \S $374 | |
connect \Y $373 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $377 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $378 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 6'100000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B $373 | |
connect \Y $377 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $379 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $380 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $379 | |
end | |
attribute \src "aoc-2019-1.py:100" | |
wire width 1 $381 | |
attribute \src "aoc-2019-1.py:100" | |
cell $and $382 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \B \uart_tx_ack | |
connect \Y $381 | |
end | |
process $group_14 | |
assign \uart_tx_rdy$next \uart_tx_rdy | |
attribute \src "aoc-2019-1.py:79" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:79" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $379 $377 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_rdy$next 1'1 | |
end | |
end | |
attribute \src "aoc-2019-1.py:100" | |
switch { $381 } | |
attribute \src "aoc-2019-1.py:100" | |
case 1'1 | |
assign \uart_tx_rdy$next 1'0 | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \uart_tx_rdy$next 1'0 | |
end | |
sync init | |
update \uart_tx_rdy 1'0 | |
sync posedge \clk | |
update \uart_tx_rdy \uart_tx_rdy$next | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $383 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $384 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $385 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 1'0 | |
connect \Y $384 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $386 | |
parameter \WIDTH 6'100000 | |
connect \A 32'00000000000000000000000000000000 | |
connect \B 32'00000000000000000000000000000001 | |
connect \S $384 | |
connect \Y $383 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $387 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $388 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $389 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 1'1 | |
connect \Y $388 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $390 | |
parameter \WIDTH 6'100000 | |
connect \A $383 | |
connect \B 32'00000000000000000000000000001010 | |
connect \S $388 | |
connect \Y $387 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $391 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $392 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $393 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 2'10 | |
connect \Y $392 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $394 | |
parameter \WIDTH 6'100000 | |
connect \A $387 | |
connect \B 32'00000000000000000000000001100100 | |
connect \S $392 | |
connect \Y $391 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $395 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $396 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $397 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 2'11 | |
connect \Y $396 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $398 | |
parameter \WIDTH 6'100000 | |
connect \A $391 | |
connect \B 32'00000000000000000000001111101000 | |
connect \S $396 | |
connect \Y $395 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $399 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $400 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $401 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'100 | |
connect \Y $400 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $402 | |
parameter \WIDTH 6'100000 | |
connect \A $395 | |
connect \B 32'00000000000000000010011100010000 | |
connect \S $400 | |
connect \Y $399 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $403 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $404 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $405 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'101 | |
connect \Y $404 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $406 | |
parameter \WIDTH 6'100000 | |
connect \A $399 | |
connect \B 32'00000000000000011000011010100000 | |
connect \S $404 | |
connect \Y $403 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $407 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $408 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $409 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'110 | |
connect \Y $408 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $410 | |
parameter \WIDTH 6'100000 | |
connect \A $403 | |
connect \B 32'00000000000011110100001001000000 | |
connect \S $408 | |
connect \Y $407 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $411 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $412 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $413 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'11 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 3'111 | |
connect \Y $412 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $414 | |
parameter \WIDTH 6'100000 | |
connect \A $407 | |
connect \B 32'00000000100110001001011010000000 | |
connect \S $412 | |
connect \Y $411 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $415 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $416 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $417 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 4'1000 | |
connect \Y $416 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $418 | |
parameter \WIDTH 6'100000 | |
connect \A $411 | |
connect \B 32'00000101111101011110000100000000 | |
connect \S $416 | |
connect \Y $415 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
wire width 32 $419 | |
attribute \src "aoc-2019-1.py:82" | |
wire width 1 $420 | |
attribute \src "aoc-2019-1.py:82" | |
cell $eq $421 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_idx | |
connect \B 4'1001 | |
connect \Y $420 | |
end | |
attribute \src "aoc-2019-1.py:82" | |
cell $mux $422 | |
parameter \WIDTH 6'100000 | |
connect \A $415 | |
connect \B 32'00111011100110101100101000000000 | |
connect \S $420 | |
connect \Y $419 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $423 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $424 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 6'100000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B $419 | |
connect \Y $423 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $425 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $426 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $425 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
wire width 8 $427 | |
attribute \src "aoc-2019-1.py:92" | |
wire width 7 $428 | |
attribute \src "aoc-2019-1.py:92" | |
cell $add $429 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'110 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 3'111 | |
connect \A 6'110000 | |
connect \B \out_digit | |
connect \Y $428 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
cell $pos $430 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \Y_WIDTH 4'1000 | |
connect \A $428 | |
connect \Y $427 | |
end | |
process $group_15 | |
assign \uart_tx_data$next \uart_tx_data | |
attribute \src "aoc-2019-1.py:79" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:79" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $425 $423 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_data$next $427 | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \uart_tx_data$next 8'00000000 | |
end | |
sync init | |
update \uart_tx_data 8'00000000 | |
sync posedge \clk | |
update \uart_tx_data \uart_tx_data$next | |
end | |
connect \uart_0__dtr__o 1'0 | |
connect \uart_0__rts__o 1'0 | |
end |
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
# Automatically generated by nMigen 0.1.dev1+g6765021.dirty. Do not edit. | |
attribute \generator "nMigen" | |
attribute \nmigen.hierarchy "top.uart" | |
module \uart | |
attribute \src "/home/eddy/Projects/halogen/uart.py:21" | |
wire width 1 input 0 \rx_i | |
attribute \src "/home/eddy/Projects/halogen/uart.py:20" | |
wire width 1 output 1 \tx_o | |
attribute \src "/home/eddy/Projects/halogen/uart.py:30" | |
wire width 1 output 2 \rx_rdy | |
attribute \src "/home/eddy/Projects/halogen/uart.py:30" | |
wire width 1 \rx_rdy$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:31" | |
wire width 1 input 3 \rx_ack | |
attribute \src "/home/eddy/Projects/halogen/uart.py:27" | |
wire width 8 output 4 \rx_data | |
attribute \src "/home/eddy/Projects/halogen/uart.py:24" | |
wire width 1 input 5 \tx_rdy | |
attribute \src "/home/eddy/Projects/halogen/uart.py:23" | |
wire width 8 input 6 \tx_data | |
attribute \src "/home/eddy/Projects/halogen/uart.py:25" | |
wire width 1 output 7 \tx_ack | |
attribute \src "nmigen/vendor/lattice_ice40.py:364" | |
wire width 1 input 8 \rst | |
attribute \src "nmigen/vendor/lattice_ice40.py:364" | |
wire width 1 input 9 \clk | |
attribute \src "/home/eddy/Projects/halogen/uart.py:37" | |
wire width 10 \tx_shreg | |
attribute \src "/home/eddy/Projects/halogen/uart.py:37" | |
wire width 10 \tx_shreg$next | |
process $group_0 | |
assign \tx_o 1'0 | |
assign \tx_o \tx_shreg [0] | |
sync init | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:38" | |
wire width 4 \tx_count | |
attribute \src "/home/eddy/Projects/halogen/uart.py:38" | |
wire width 4 \tx_count$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
wire width 1 $1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
cell $eq $2 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \tx_count | |
connect \B 1'0 | |
connect \Y $1 | |
end | |
process $group_1 | |
assign \tx_ack 1'0 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
switch { $1 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
case 1'1 | |
assign \tx_ack 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:49" | |
case | |
end | |
sync init | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
wire width 1 $3 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
cell $eq $4 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \tx_count | |
connect \B 1'0 | |
connect \Y $3 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:36" | |
wire width 7 \tx_phase | |
attribute \src "/home/eddy/Projects/halogen/uart.py:36" | |
wire width 7 \tx_phase$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
wire width 1 $5 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
cell $ne $6 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \tx_phase | |
connect \B 1'0 | |
connect \Y $5 | |
end | |
process $group_2 | |
assign \tx_shreg$next \tx_shreg | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
switch { $3 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:43" | |
switch { \tx_rdy } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:43" | |
case 1'1 | |
assign \tx_shreg$next { 1'1 \tx_data 1'0 } | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:49" | |
case | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
switch { $5 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:52" | |
case | |
assign \tx_shreg$next { 1'1 \tx_shreg [9:1] } | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \tx_shreg$next 10'1111111111 | |
end | |
sync init | |
update \tx_shreg 10'1111111111 | |
sync posedge \clk | |
update \tx_shreg \tx_shreg$next | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
wire width 1 $7 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
cell $eq $8 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \tx_count | |
connect \B 1'0 | |
connect \Y $7 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
wire width 1 $9 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
cell $ne $10 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \tx_phase | |
connect \B 1'0 | |
connect \Y $9 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:55" | |
wire width 5 $11 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:55" | |
wire width 5 $12 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:55" | |
cell $sub $13 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'101 | |
connect \A \tx_count | |
connect \B 1'1 | |
connect \Y $12 | |
end | |
connect $11 $12 | |
process $group_3 | |
assign \tx_count$next \tx_count | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
switch { $7 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:43" | |
switch { \tx_rdy } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:43" | |
case 1'1 | |
assign \tx_count$next 4'1010 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:49" | |
case | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
switch { $9 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:52" | |
case | |
assign \tx_count$next $11 [3:0] | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \tx_count$next 4'0000 | |
end | |
sync init | |
update \tx_count 4'0000 | |
sync posedge \clk | |
update \tx_count \tx_count$next | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
wire width 1 $14 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
cell $eq $15 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \tx_count | |
connect \B 1'0 | |
connect \Y $14 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
wire width 1 $16 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
cell $ne $17 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \tx_phase | |
connect \B 1'0 | |
connect \Y $16 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:51" | |
wire width 8 $18 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:51" | |
wire width 8 $19 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:51" | |
cell $sub $20 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 4'1000 | |
connect \A \tx_phase | |
connect \B 1'1 | |
connect \Y $19 | |
end | |
connect $18 $19 | |
process $group_4 | |
assign \tx_phase$next \tx_phase | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
switch { $14 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:41" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:43" | |
switch { \tx_rdy } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:43" | |
case 1'1 | |
assign \tx_phase$next 7'1100111 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:49" | |
case | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
switch { $16 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:50" | |
case 1'1 | |
assign \tx_phase$next $18 [6:0] | |
attribute \src "/home/eddy/Projects/halogen/uart.py:52" | |
case | |
assign \tx_phase$next 7'1100111 | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \tx_phase$next 7'0000000 | |
end | |
sync init | |
update \tx_phase 7'0000000 | |
sync posedge \clk | |
update \tx_phase \tx_phase$next | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:60" | |
wire width 10 \rx_shreg | |
attribute \src "/home/eddy/Projects/halogen/uart.py:60" | |
wire width 10 \rx_shreg$next | |
process $group_5 | |
assign \rx_data 8'00000000 | |
assign \rx_data \rx_shreg [8:1] | |
sync init | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:28" | |
wire width 1 \rx_err | |
attribute \src "/home/eddy/Projects/halogen/uart.py:61" | |
wire width 4 \rx_count | |
attribute \src "/home/eddy/Projects/halogen/uart.py:61" | |
wire width 4 \rx_count$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
wire width 1 $21 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
cell $eq $22 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_count | |
connect \B 1'0 | |
connect \Y $21 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:65" | |
wire width 1 $23 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:65" | |
wire width 1 $24 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:65" | |
cell $not $25 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_shreg [0] | |
connect \Y $24 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:65" | |
wire width 1 $26 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:65" | |
cell $and $27 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A $24 | |
connect \B \rx_shreg [9] | |
connect \Y $26 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:65" | |
cell $not $28 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A $26 | |
connect \Y $23 | |
end | |
process $group_6 | |
assign \rx_err 1'0 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
switch { $21 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
case 1'1 | |
assign \rx_err $23 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:76" | |
case | |
end | |
sync init | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
wire width 1 $29 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
cell $eq $30 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_count | |
connect \B 1'0 | |
connect \Y $29 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
wire width 1 $31 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
cell $not $32 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_i | |
connect \Y $31 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
wire width 1 $33 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
cell $not $34 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_rdy | |
connect \Y $33 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
wire width 1 $35 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
cell $or $36 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_ack | |
connect \B $33 | |
connect \Y $35 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:59" | |
wire width 7 \rx_phase | |
attribute \src "/home/eddy/Projects/halogen/uart.py:59" | |
wire width 7 \rx_phase$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
wire width 1 $37 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
cell $ne $38 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_phase | |
connect \B 1'0 | |
connect \Y $37 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:85" | |
wire width 1 $39 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:85" | |
cell $eq $40 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_count | |
connect \B 1'1 | |
connect \Y $39 | |
end | |
process $group_7 | |
assign \rx_rdy$next \rx_rdy | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
switch { $29 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
switch { $31 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
switch { $35 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
case 1'1 | |
assign \rx_rdy$next 1'0 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:74" | |
case | |
end | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:76" | |
case | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
switch { $37 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:79" | |
case | |
attribute \src "/home/eddy/Projects/halogen/uart.py:85" | |
switch { $39 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:85" | |
case 1'1 | |
assign \rx_rdy$next 1'1 | |
end | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \rx_rdy$next 1'0 | |
end | |
sync init | |
update \rx_rdy 1'0 | |
sync posedge \clk | |
update \rx_rdy \rx_rdy$next | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:29" | |
wire width 1 \rx_ovf | |
attribute \src "/home/eddy/Projects/halogen/uart.py:29" | |
wire width 1 \rx_ovf$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
wire width 1 $41 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
cell $eq $42 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_count | |
connect \B 1'0 | |
connect \Y $41 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
wire width 1 $43 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
cell $not $44 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_i | |
connect \Y $43 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
wire width 1 $45 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
cell $not $46 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_rdy | |
connect \Y $45 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
wire width 1 $47 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
cell $or $48 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_ack | |
connect \B $45 | |
connect \Y $47 | |
end | |
process $group_8 | |
assign \rx_ovf$next \rx_ovf | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
switch { $41 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
switch { $43 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
switch { $47 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
case 1'1 | |
assign \rx_ovf$next 1'0 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:74" | |
case | |
assign \rx_ovf$next 1'1 | |
end | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:76" | |
case | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \rx_ovf$next 1'0 | |
end | |
sync init | |
update \rx_ovf 1'0 | |
sync posedge \clk | |
update \rx_ovf \rx_ovf$next | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
wire width 1 $49 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
cell $eq $50 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_count | |
connect \B 1'0 | |
connect \Y $49 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
wire width 1 $51 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
cell $not $52 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_i | |
connect \Y $51 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
wire width 1 $53 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
cell $not $54 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_rdy | |
connect \Y $53 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
wire width 1 $55 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
cell $or $56 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_ack | |
connect \B $53 | |
connect \Y $55 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
wire width 1 $57 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
cell $ne $58 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_phase | |
connect \B 1'0 | |
connect \Y $57 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:82" | |
wire width 5 $59 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:82" | |
wire width 5 $60 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:82" | |
cell $sub $61 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'101 | |
connect \A \rx_count | |
connect \B 1'1 | |
connect \Y $60 | |
end | |
connect $59 $60 | |
process $group_9 | |
assign \rx_count$next \rx_count | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
switch { $49 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
switch { $51 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
switch { $55 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
case 1'1 | |
assign \rx_count$next 4'1010 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:74" | |
case | |
end | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:76" | |
case | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
switch { $57 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:79" | |
case | |
assign \rx_count$next $59 [3:0] | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \rx_count$next 4'0000 | |
end | |
sync init | |
update \rx_count 4'0000 | |
sync posedge \clk | |
update \rx_count \rx_count$next | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
wire width 1 $62 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
cell $eq $63 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_count | |
connect \B 1'0 | |
connect \Y $62 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
wire width 1 $64 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
cell $not $65 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_i | |
connect \Y $64 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
wire width 1 $66 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
cell $not $67 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_rdy | |
connect \Y $66 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
wire width 1 $68 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
cell $or $69 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_ack | |
connect \B $66 | |
connect \Y $68 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
wire width 1 $70 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
cell $ne $71 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_phase | |
connect \B 1'0 | |
connect \Y $70 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:78" | |
wire width 8 $72 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:78" | |
wire width 8 $73 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:78" | |
cell $sub $74 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 4'1000 | |
connect \A \rx_phase | |
connect \B 1'1 | |
connect \Y $73 | |
end | |
connect $72 $73 | |
process $group_10 | |
assign \rx_phase$next \rx_phase | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
switch { $62 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
switch { $64 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:66" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
switch { $68 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:67" | |
case 1'1 | |
assign \rx_phase$next 7'0110100 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:74" | |
case | |
end | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:76" | |
case | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
switch { $70 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
case 1'1 | |
assign \rx_phase$next $72 [6:0] | |
attribute \src "/home/eddy/Projects/halogen/uart.py:79" | |
case | |
assign \rx_phase$next 7'1100111 | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \rx_phase$next 7'0000000 | |
end | |
sync init | |
update \rx_phase 7'0000000 | |
sync posedge \clk | |
update \rx_phase \rx_phase$next | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
wire width 1 $75 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
cell $eq $76 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_count | |
connect \B 1'0 | |
connect \Y $75 | |
end | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
wire width 1 $77 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
cell $ne $78 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \rx_phase | |
connect \B 1'0 | |
connect \Y $77 | |
end | |
process $group_11 | |
assign \rx_shreg$next \rx_shreg | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
switch { $75 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:64" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:76" | |
case | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
switch { $77 } | |
attribute \src "/home/eddy/Projects/halogen/uart.py:77" | |
case 1'1 | |
attribute \src "/home/eddy/Projects/halogen/uart.py:79" | |
case | |
assign \rx_shreg$next { \rx_i \rx_shreg [9:1] } | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \rx_shreg$next 10'1111111111 | |
end | |
sync init | |
update \rx_shreg 10'1111111111 | |
sync posedge \clk | |
update \rx_shreg \rx_shreg$next | |
end | |
end | |
attribute \generator "nMigen" | |
attribute \nmigen.hierarchy "top.cd_sync" | |
module \cd_sync | |
attribute \src "nmigen/vendor/lattice_ice40.py:364" | |
wire width 1 output 0 \rst | |
attribute \src "nmigen/vendor/lattice_ice40.py:364" | |
wire width 1 output 1 \clk | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 input 2 \clk12_0__i | |
attribute \src "nmigen/vendor/lattice_ice40.py:354" | |
wire width 1 \por_clk | |
process $group_0 | |
assign \por_clk 1'0 | |
assign \por_clk \clk12_0__i | |
sync init | |
end | |
attribute \src "nmigen/vendor/lattice_ice40.py:357" | |
wire width 1 \ready | |
attribute \src "nmigen/vendor/lattice_ice40.py:357" | |
wire width 1 \ready$next | |
attribute \src "nmigen/vendor/lattice_ice40.py:356" | |
wire width 8 \timer | |
attribute \src "nmigen/vendor/lattice_ice40.py:356" | |
wire width 8 \timer$next | |
attribute \src "nmigen/vendor/lattice_ice40.py:359" | |
wire width 1 $1 | |
attribute \src "nmigen/vendor/lattice_ice40.py:359" | |
cell $eq $2 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 4'1000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \timer | |
connect \B 8'10110100 | |
connect \Y $1 | |
end | |
process $group_1 | |
assign \ready$next \ready | |
attribute \src "nmigen/vendor/lattice_ice40.py:359" | |
switch { $1 } | |
attribute \src "nmigen/vendor/lattice_ice40.py:359" | |
case 1'1 | |
assign \ready$next 1'1 | |
attribute \src "nmigen/vendor/lattice_ice40.py:361" | |
case | |
end | |
sync init | |
update \ready 1'0 | |
sync posedge \por_clk | |
update \ready \ready$next | |
end | |
attribute \src "nmigen/vendor/lattice_ice40.py:359" | |
wire width 1 $3 | |
attribute \src "nmigen/vendor/lattice_ice40.py:359" | |
cell $eq $4 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 4'1000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \timer | |
connect \B 8'10110100 | |
connect \Y $3 | |
end | |
attribute \src "nmigen/vendor/lattice_ice40.py:362" | |
wire width 9 $5 | |
attribute \src "nmigen/vendor/lattice_ice40.py:362" | |
wire width 9 $6 | |
attribute \src "nmigen/vendor/lattice_ice40.py:362" | |
cell $add $7 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 4'1001 | |
connect \A \timer | |
connect \B 1'1 | |
connect \Y $6 | |
end | |
connect $5 $6 | |
process $group_2 | |
assign \timer$next \timer | |
attribute \src "nmigen/vendor/lattice_ice40.py:359" | |
switch { $3 } | |
attribute \src "nmigen/vendor/lattice_ice40.py:359" | |
case 1'1 | |
attribute \src "nmigen/vendor/lattice_ice40.py:361" | |
case | |
assign \timer$next $5 [7:0] | |
end | |
sync init | |
update \timer 8'00000000 | |
sync posedge \por_clk | |
update \timer \timer$next | |
end | |
process $group_3 | |
assign \clk 1'0 | |
assign \clk \clk12_0__i | |
sync init | |
end | |
attribute \src "nmigen/vendor/lattice_ice40.py:369" | |
wire width 1 $8 | |
attribute \src "nmigen/vendor/lattice_ice40.py:369" | |
cell $not $9 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \ready | |
connect \Y $8 | |
end | |
process $group_4 | |
assign \rst 1'0 | |
assign \rst $8 | |
sync init | |
end | |
end | |
attribute \generator "nMigen" | |
attribute \top 1 | |
attribute \nmigen.hierarchy "top" | |
module \top | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 0 \clk12_0__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 1 \led_0__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 2 \led_1__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 3 \led_2__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 4 \led_3__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 5 \led_4__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 6 \uart_0__cts__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 7 \uart_0__dcd__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 8 \uart_0__dsr__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 9 \uart_0__dtr__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 10 \uart_0__rts__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 11 \uart_0__rx__io | |
attribute \src "nmigen/build/res.py:129" | |
wire width 1 inout 12 \uart_0__tx__io | |
attribute \src "nmigen/vendor/lattice_ice40.py:364" | |
wire width 1 \clk | |
attribute \src "nmigen/vendor/lattice_ice40.py:364" | |
wire width 1 \rst | |
attribute \src "/home/eddy/Projects/halogen/uart.py:21" | |
wire width 1 \uart_rx_i | |
attribute \src "/home/eddy/Projects/halogen/uart.py:20" | |
wire width 1 \uart_tx_o | |
attribute \src "/home/eddy/Projects/halogen/uart.py:30" | |
wire width 1 \uart_rx_rdy | |
attribute \src "/home/eddy/Projects/halogen/uart.py:31" | |
wire width 1 \uart_rx_ack | |
attribute \src "/home/eddy/Projects/halogen/uart.py:31" | |
wire width 1 \uart_rx_ack$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:27" | |
wire width 8 \uart_rx_data | |
attribute \src "/home/eddy/Projects/halogen/uart.py:24" | |
wire width 1 \uart_tx_rdy | |
attribute \src "/home/eddy/Projects/halogen/uart.py:24" | |
wire width 1 \uart_tx_rdy$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:23" | |
wire width 8 \uart_tx_data | |
attribute \src "/home/eddy/Projects/halogen/uart.py:23" | |
wire width 8 \uart_tx_data$next | |
attribute \src "/home/eddy/Projects/halogen/uart.py:25" | |
wire width 1 \uart_tx_ack | |
cell \uart \uart | |
connect \rx_i \uart_rx_i | |
connect \tx_o \uart_tx_o | |
connect \rx_rdy \uart_rx_rdy | |
connect \rx_ack \uart_rx_ack | |
connect \rx_data \uart_rx_data | |
connect \tx_rdy \uart_tx_rdy | |
connect \tx_data \uart_tx_data | |
connect \tx_ack \uart_tx_ack | |
connect \rst \rst | |
connect \clk \clk | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \cd_sync_clk12_0__i | |
cell \cd_sync \cd_sync | |
connect \rst \rst | |
connect \clk \clk | |
connect \clk12_0__i \cd_sync_clk12_0__i | |
end | |
cell \SB_GB_IO \clk12_0_0 | |
parameter \IO_STANDARD "SB_LVCMOS" | |
parameter \PIN_TYPE 6'1 | |
connect \PACKAGE_PIN \clk12_0__io | |
connect \GLOBAL_BUFFER_OUTPUT \cd_sync_clk12_0__i | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_0__o | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_0__o$next | |
cell \SB_IO \led_0_0 | |
parameter \IO_STANDARD "SB_LVCMOS" | |
parameter \PIN_TYPE 6'11001 | |
connect \PACKAGE_PIN \led_0__io | |
connect \D_OUT_0 \led_0__o | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_1__o | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_1__o$next | |
cell \SB_IO \led_1_0 | |
parameter \IO_STANDARD "SB_LVCMOS" | |
parameter \PIN_TYPE 6'11001 | |
connect \PACKAGE_PIN \led_1__io | |
connect \D_OUT_0 \led_1__o | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_2__o | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_2__o$next | |
cell \SB_IO \led_2_0 | |
parameter \IO_STANDARD "SB_LVCMOS" | |
parameter \PIN_TYPE 6'11001 | |
connect \PACKAGE_PIN \led_2__io | |
connect \D_OUT_0 \led_2__o | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_3__o | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_3__o$next | |
cell \SB_IO \led_3_0 | |
parameter \IO_STANDARD "SB_LVCMOS" | |
parameter \PIN_TYPE 6'11001 | |
connect \PACKAGE_PIN \led_3__io | |
connect \D_OUT_0 \led_3__o | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_4__o | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \led_4__o$next | |
cell \SB_IO \led_4_0 | |
parameter \IO_STANDARD "SB_LVCMOS" | |
parameter \PIN_TYPE 6'11001 | |
connect \PACKAGE_PIN \led_4__io | |
connect \D_OUT_0 \led_4__o | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \uart_0__cts__i | |
cell \SB_IO \uart_0__cts_0 | |
parameter \IO_STANDARD "SB_LVTTL" | |
parameter \PULLUP 1'1 | |
parameter \PIN_TYPE 6'1 | |
connect \PACKAGE_PIN \uart_0__cts__io | |
connect \D_IN_0 \uart_0__cts__i | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \uart_0__dcd__i | |
cell \SB_IO \uart_0__dcd_0 | |
parameter \IO_STANDARD "SB_LVTTL" | |
parameter \PULLUP 1'1 | |
parameter \PIN_TYPE 6'1 | |
connect \PACKAGE_PIN \uart_0__dcd__io | |
connect \D_IN_0 \uart_0__dcd__i | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \uart_0__dsr__i | |
cell \SB_IO \uart_0__dsr_0 | |
parameter \IO_STANDARD "SB_LVTTL" | |
parameter \PULLUP 1'1 | |
parameter \PIN_TYPE 6'1 | |
connect \PACKAGE_PIN \uart_0__dsr__io | |
connect \D_IN_0 \uart_0__dsr__i | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \uart_0__dtr__o | |
cell \SB_IO \uart_0__dtr_0 | |
parameter \IO_STANDARD "SB_LVTTL" | |
parameter \PULLUP 1'1 | |
parameter \PIN_TYPE 6'11001 | |
connect \PACKAGE_PIN \uart_0__dtr__io | |
connect \D_OUT_0 \uart_0__dtr__o | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \uart_0__rts__o | |
cell \SB_IO \uart_0__rts_0 | |
parameter \IO_STANDARD "SB_LVTTL" | |
parameter \PULLUP 1'1 | |
parameter \PIN_TYPE 6'11001 | |
connect \PACKAGE_PIN \uart_0__rts__io | |
connect \D_OUT_0 \uart_0__rts__o | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \uart_0__rx__i | |
cell \SB_IO \uart_0__rx_0 | |
parameter \IO_STANDARD "SB_LVTTL" | |
parameter \PULLUP 1'1 | |
parameter \PIN_TYPE 6'1 | |
connect \PACKAGE_PIN \uart_0__rx__io | |
connect \D_IN_0 \uart_0__rx__i | |
end | |
attribute \src "nmigen/build/res.py:137" | |
wire width 1 \uart_0__tx__o | |
cell \SB_IO \uart_0__tx_0 | |
parameter \IO_STANDARD "SB_LVTTL" | |
parameter \PULLUP 1'1 | |
parameter \PIN_TYPE 6'11001 | |
connect \PACKAGE_PIN \uart_0__tx__io | |
connect \D_OUT_0 \uart_0__tx__o | |
end | |
attribute \src "aoc-2019-1.py:17" | |
wire width 2 \err | |
attribute \src "aoc-2019-1.py:17" | |
wire width 2 \err$next | |
attribute \src "aoc-2019-1.py:18" | |
wire width 1 $1 | |
attribute \src "aoc-2019-1.py:18" | |
cell $ne $2 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'10 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \err | |
connect \B 1'0 | |
connect \Y $1 | |
end | |
attribute \src "aoc-2019-1.py:19" | |
wire width 6 $3 | |
attribute \src "aoc-2019-1.py:15" | |
wire width 6 $4 | |
attribute \src "aoc-2019-1.py:15" | |
cell $pos $5 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'101 | |
parameter \Y_WIDTH 3'110 | |
connect \A { \led_4__o \led_3__o \led_2__o \led_1__o \led_0__o } | |
connect \Y $4 | |
end | |
attribute \src "aoc-2019-1.py:19" | |
wire width 6 $6 | |
attribute \src "aoc-2019-1.py:19" | |
cell $and $7 | |
parameter \A_SIGNED 1'1 | |
parameter \A_WIDTH 3'110 | |
parameter \B_SIGNED 1'1 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 3'110 | |
connect \A $4 | |
connect \B 6'101111 | |
connect \Y $6 | |
end | |
attribute \src "aoc-2019-1.py:19" | |
wire width 6 $8 | |
attribute \src "aoc-2019-1.py:19" | |
wire width 4 $9 | |
attribute \src "aoc-2019-1.py:19" | |
cell $sshl $10 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 3'100 | |
connect \A 1'1 | |
connect \B \err | |
connect \Y $9 | |
end | |
attribute \src "aoc-2019-1.py:19" | |
cell $pos $11 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \Y_WIDTH 3'110 | |
connect \A $9 | |
connect \Y $8 | |
end | |
attribute \src "aoc-2019-1.py:19" | |
wire width 6 $12 | |
attribute \src "aoc-2019-1.py:19" | |
cell $or $13 | |
parameter \A_SIGNED 1'1 | |
parameter \A_WIDTH 3'110 | |
parameter \B_SIGNED 1'1 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 3'110 | |
connect \A $6 | |
connect \B $8 | |
connect \Y $12 | |
end | |
connect $3 $12 | |
process $group_0 | |
assign \led_0__o$next \led_0__o | |
assign \led_1__o$next \led_1__o | |
assign \led_2__o$next \led_2__o | |
assign \led_3__o$next \led_3__o | |
assign \led_4__o$next \led_4__o | |
attribute \src "aoc-2019-1.py:18" | |
switch { $1 } | |
attribute \src "aoc-2019-1.py:18" | |
case 1'1 | |
assign { \led_4__o$next \led_3__o$next \led_2__o$next \led_1__o$next \led_0__o$next } $3 [4:0] | |
attribute \src "aoc-2019-1.py:20" | |
case | |
assign { \led_4__o$next \led_3__o$next \led_2__o$next \led_1__o$next \led_0__o$next } 5'10000 | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \led_0__o$next 1'0 | |
assign \led_1__o$next 1'0 | |
assign \led_2__o$next 1'0 | |
assign \led_3__o$next 1'0 | |
assign \led_4__o$next 1'0 | |
end | |
sync init | |
update \led_0__o 1'0 | |
update \led_1__o 1'0 | |
update \led_2__o 1'0 | |
update \led_3__o 1'0 | |
update \led_4__o 1'0 | |
sync posedge \clk | |
update \led_0__o \led_0__o$next | |
update \led_1__o \led_1__o$next | |
update \led_2__o \led_2__o$next | |
update \led_3__o \led_3__o$next | |
update \led_4__o \led_4__o$next | |
end | |
process $group_5 | |
assign \uart_rx_i 1'0 | |
assign \uart_rx_i { \uart_0__rx__i } | |
sync init | |
end | |
process $group_6 | |
assign \uart_0__tx__o 1'0 | |
assign { \uart_0__tx__o } \uart_tx_o | |
sync init | |
end | |
process $group_7 | |
assign \uart_rx_ack$next \uart_rx_ack | |
attribute \src "aoc-2019-1.py:41" | |
switch { \uart_rx_rdy } | |
attribute \src "aoc-2019-1.py:41" | |
case 1'1 | |
assign \uart_rx_ack$next 1'1 | |
attribute \src "aoc-2019-1.py:75" | |
case | |
assign \uart_rx_ack$next 1'0 | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \uart_rx_ack$next 1'0 | |
end | |
sync init | |
update \uart_rx_ack 1'0 | |
sync posedge \clk | |
update \uart_rx_ack \uart_rx_ack$next | |
end | |
attribute \src "aoc-2019-1.py:44" | |
wire width 1 $14 | |
attribute \src "aoc-2019-1.py:44" | |
cell $not $15 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_ack | |
connect \Y $14 | |
end | |
attribute \src "aoc-2019-1.py:45" | |
wire width 1 $16 | |
attribute \src "aoc-2019-1.py:45" | |
cell $eq $17 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'101 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 5'10010 | |
connect \Y $16 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $18 | |
attribute \src "aoc-2019-1.py:53" | |
cell $ge $19 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'110000 | |
connect \Y $18 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $20 | |
attribute \src "aoc-2019-1.py:53" | |
cell $le $21 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'111001 | |
connect \Y $20 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $22 | |
attribute \src "aoc-2019-1.py:53" | |
cell $and $23 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A $18 | |
connect \B $20 | |
connect \Y $22 | |
end | |
attribute \src "aoc-2019-1.py:35" | |
wire width 1 \out_en | |
attribute \src "aoc-2019-1.py:35" | |
wire width 1 \out_en$next | |
attribute \src "aoc-2019-1.py:65" | |
wire width 1 $24 | |
attribute \src "aoc-2019-1.py:65" | |
cell $eq $25 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'100000 | |
connect \Y $24 | |
end | |
attribute \src "aoc-2019-1.py:67" | |
wire width 1 $26 | |
attribute \src "aoc-2019-1.py:67" | |
cell $eq $27 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 4'1010 | |
connect \Y $26 | |
end | |
process $group_8 | |
assign \err$next \err | |
attribute \src "aoc-2019-1.py:41" | |
switch { \uart_rx_rdy } | |
attribute \src "aoc-2019-1.py:41" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:44" | |
switch { $14 } | |
attribute \src "aoc-2019-1.py:44" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:45" | |
switch { $22 $16 } | |
attribute \src "aoc-2019-1.py:45" | |
case 2'-1 | |
assign \err$next 2'00 | |
attribute \src "aoc-2019-1.py:53" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:57" | |
case | |
attribute \src "aoc-2019-1.py:58" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:58" | |
case 1'1 | |
assign \err$next 2'01 | |
attribute \src "aoc-2019-1.py:60" | |
case | |
attribute \src "aoc-2019-1.py:65" | |
switch { $26 $24 } | |
attribute \src "aoc-2019-1.py:65" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:67" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:73" | |
case | |
assign \err$next 2'10 | |
end | |
end | |
end | |
end | |
attribute \src "aoc-2019-1.py:75" | |
case | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \err$next 2'00 | |
end | |
sync init | |
update \err 2'00 | |
sync posedge \clk | |
update \err \err$next | |
end | |
attribute \src "aoc-2019-1.py:33" | |
wire width 27 \in_val | |
attribute \src "aoc-2019-1.py:33" | |
wire width 27 \in_val$next | |
attribute \src "aoc-2019-1.py:44" | |
wire width 1 $28 | |
attribute \src "aoc-2019-1.py:44" | |
cell $not $29 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_ack | |
connect \Y $28 | |
end | |
attribute \src "aoc-2019-1.py:45" | |
wire width 1 $30 | |
attribute \src "aoc-2019-1.py:45" | |
cell $eq $31 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'101 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 5'10010 | |
connect \Y $30 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $32 | |
attribute \src "aoc-2019-1.py:53" | |
cell $ge $33 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'110000 | |
connect \Y $32 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $34 | |
attribute \src "aoc-2019-1.py:53" | |
cell $le $35 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'111001 | |
connect \Y $34 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $36 | |
attribute \src "aoc-2019-1.py:53" | |
cell $and $37 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A $32 | |
connect \B $34 | |
connect \Y $36 | |
end | |
attribute \src "aoc-2019-1.py:55" | |
wire width 32 $38 | |
attribute \src "aoc-2019-1.py:55" | |
wire width 31 $39 | |
attribute \src "aoc-2019-1.py:55" | |
cell $mul $40 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 5'11111 | |
connect \A \in_val | |
connect \B 4'1010 | |
connect \Y $39 | |
end | |
attribute \src "aoc-2019-1.py:55" | |
wire width 9 $41 | |
attribute \src "aoc-2019-1.py:55" | |
cell $sub $42 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 4'1001 | |
connect \A \uart_rx_data | |
connect \B 6'110000 | |
connect \Y $41 | |
end | |
attribute \src "aoc-2019-1.py:55" | |
wire width 32 $43 | |
attribute \src "aoc-2019-1.py:55" | |
cell $add $44 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11111 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 4'1001 | |
parameter \Y_WIDTH 6'100000 | |
connect \A $39 | |
connect \B $41 | |
connect \Y $43 | |
end | |
connect $38 $43 | |
process $group_9 | |
assign \in_val$next \in_val | |
attribute \src "aoc-2019-1.py:41" | |
switch { \uart_rx_rdy } | |
attribute \src "aoc-2019-1.py:41" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:44" | |
switch { $28 } | |
attribute \src "aoc-2019-1.py:44" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:45" | |
switch { $36 $30 } | |
attribute \src "aoc-2019-1.py:45" | |
case 2'-1 | |
assign \in_val$next 27'000000000000000000000000000 | |
attribute \src "aoc-2019-1.py:53" | |
case 2'1- | |
assign \in_val$next $38 [26:0] | |
attribute \src "aoc-2019-1.py:57" | |
case | |
attribute \src "aoc-2019-1.py:58" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:58" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:60" | |
case | |
assign \in_val$next 27'000000000000000000000000000 | |
end | |
end | |
end | |
attribute \src "aoc-2019-1.py:75" | |
case | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \in_val$next 27'000000000000000000000000000 | |
end | |
sync init | |
update \in_val 27'000000000000000000000000000 | |
sync posedge \clk | |
update \in_val \in_val$next | |
end | |
attribute \src "aoc-2019-1.py:44" | |
wire width 1 $45 | |
attribute \src "aoc-2019-1.py:44" | |
cell $not $46 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_ack | |
connect \Y $45 | |
end | |
attribute \src "aoc-2019-1.py:45" | |
wire width 1 $47 | |
attribute \src "aoc-2019-1.py:45" | |
cell $eq $48 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'101 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 5'10010 | |
connect \Y $47 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $49 | |
attribute \src "aoc-2019-1.py:53" | |
cell $ge $50 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'110000 | |
connect \Y $49 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $51 | |
attribute \src "aoc-2019-1.py:53" | |
cell $le $52 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'111001 | |
connect \Y $51 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $53 | |
attribute \src "aoc-2019-1.py:53" | |
cell $and $54 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A $49 | |
connect \B $51 | |
connect \Y $53 | |
end | |
attribute \src "aoc-2019-1.py:65" | |
wire width 1 $55 | |
attribute \src "aoc-2019-1.py:65" | |
cell $eq $56 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'100000 | |
connect \Y $55 | |
end | |
attribute \src "aoc-2019-1.py:67" | |
wire width 1 $57 | |
attribute \src "aoc-2019-1.py:67" | |
cell $eq $58 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 4'1010 | |
connect \Y $57 | |
end | |
attribute \src "aoc-2019-1.py:36" | |
wire width 27 \out_val | |
attribute \src "aoc-2019-1.py:36" | |
wire width 27 \out_val$next | |
attribute \src "aoc-2019-1.py:38" | |
wire width 3 \out_idx | |
attribute \src "aoc-2019-1.py:38" | |
wire width 3 \out_idx$next | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $59 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $60 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000000000001 | |
connect \Y $59 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $61 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $62 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $61 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $63 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $64 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A 3'000 | |
connect \B 1'0 | |
connect \Y $63 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $65 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $66 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000000001010 | |
connect \Y $65 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $67 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $68 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $67 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $69 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $70 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A 3'001 | |
connect \B 1'0 | |
connect \Y $69 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $71 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $72 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000001100100 | |
connect \Y $71 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $73 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $74 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $73 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $75 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $76 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A 3'010 | |
connect \B 1'0 | |
connect \Y $75 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $77 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $78 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000001111101000 | |
connect \Y $77 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $79 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $80 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $79 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $81 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $82 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A 3'011 | |
connect \B 1'0 | |
connect \Y $81 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $83 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $84 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000010011100010000 | |
connect \Y $83 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $85 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $86 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $85 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $87 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $88 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A 3'100 | |
connect \B 1'0 | |
connect \Y $87 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $89 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $90 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000011000011010100000 | |
connect \Y $89 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $91 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $92 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $91 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $93 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $94 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A 3'101 | |
connect \B 1'0 | |
connect \Y $93 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $95 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $96 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000011110100001001000000 | |
connect \Y $95 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $97 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $98 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $97 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $99 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $100 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A 3'110 | |
connect \B 1'0 | |
connect \Y $99 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $101 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $102 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'100110001001011010000000 | |
connect \Y $101 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $103 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $104 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $103 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $105 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $106 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A 3'111 | |
connect \B 1'0 | |
connect \Y $105 | |
end | |
process $group_10 | |
assign \out_en$next \out_en | |
attribute \src "aoc-2019-1.py:41" | |
switch { \uart_rx_rdy } | |
attribute \src "aoc-2019-1.py:41" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:44" | |
switch { $45 } | |
attribute \src "aoc-2019-1.py:44" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:45" | |
switch { $53 $47 } | |
attribute \src "aoc-2019-1.py:45" | |
case 2'-1 | |
assign \out_en$next 1'0 | |
attribute \src "aoc-2019-1.py:53" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:57" | |
case | |
attribute \src "aoc-2019-1.py:58" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:58" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:60" | |
case | |
attribute \src "aoc-2019-1.py:65" | |
switch { $57 $55 } | |
attribute \src "aoc-2019-1.py:65" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:67" | |
case 2'1- | |
assign \out_en$next 1'1 | |
attribute \src "aoc-2019-1.py:73" | |
case | |
end | |
end | |
end | |
end | |
attribute \src "aoc-2019-1.py:75" | |
case | |
end | |
attribute \src "aoc-2019-1.py:79" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:79" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:83" | |
switch \out_idx | |
case 3'000 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $61 $59 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $63 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:97" | |
case | |
assign \out_en$next 1'0 | |
end | |
end | |
case 3'001 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $67 $65 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $69 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:97" | |
case | |
assign \out_en$next 1'0 | |
end | |
end | |
case 3'010 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $73 $71 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $75 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:97" | |
case | |
assign \out_en$next 1'0 | |
end | |
end | |
case 3'011 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $79 $77 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $81 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:97" | |
case | |
assign \out_en$next 1'0 | |
end | |
end | |
case 3'100 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $85 $83 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $87 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:97" | |
case | |
assign \out_en$next 1'0 | |
end | |
end | |
case 3'101 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $91 $89 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $93 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:97" | |
case | |
assign \out_en$next 1'0 | |
end | |
end | |
case 3'110 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $97 $95 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $99 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:97" | |
case | |
assign \out_en$next 1'0 | |
end | |
end | |
case 3'--- | |
attribute \src "aoc-2019-1.py:84" | |
switch { $103 $101 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $105 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:97" | |
case | |
assign \out_en$next 1'0 | |
end | |
end | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \out_en$next 1'0 | |
end | |
sync init | |
update \out_en 1'0 | |
sync posedge \clk | |
update \out_en \out_en$next | |
end | |
attribute \src "aoc-2019-1.py:44" | |
wire width 1 $107 | |
attribute \src "aoc-2019-1.py:44" | |
cell $not $108 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_ack | |
connect \Y $107 | |
end | |
attribute \src "aoc-2019-1.py:45" | |
wire width 1 $109 | |
attribute \src "aoc-2019-1.py:45" | |
cell $eq $110 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'101 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 5'10010 | |
connect \Y $109 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $111 | |
attribute \src "aoc-2019-1.py:53" | |
cell $ge $112 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'110000 | |
connect \Y $111 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $113 | |
attribute \src "aoc-2019-1.py:53" | |
cell $le $114 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'111001 | |
connect \Y $113 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $115 | |
attribute \src "aoc-2019-1.py:53" | |
cell $and $116 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A $111 | |
connect \B $113 | |
connect \Y $115 | |
end | |
attribute \src "aoc-2019-1.py:63" | |
wire width 29 $117 | |
attribute \src "aoc-2019-1.py:63" | |
wire width 27 $118 | |
attribute \src "aoc-2019-1.py:63" | |
cell $div $119 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 5'11011 | |
connect \A \in_val | |
connect \B 2'11 | |
connect \Y $118 | |
end | |
attribute \src "aoc-2019-1.py:63" | |
wire width 27 $120 | |
attribute \src "nmigen/back/rtlil.py:516" | |
wire width 1 $121 | |
attribute \src "nmigen/back/rtlil.py:516" | |
cell $eq $122 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \in_val | |
connect \B 1'0 | |
connect \Y $121 | |
end | |
attribute \src "aoc-2019-1.py:63" | |
cell $mux $123 | |
parameter \WIDTH 5'11011 | |
connect \A $118 | |
connect \B 27'000000000000000000000000000 | |
connect \S $121 | |
connect \Y $120 | |
end | |
attribute \src "aoc-2019-1.py:63" | |
wire width 28 $124 | |
attribute \src "aoc-2019-1.py:63" | |
cell $add $125 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11011 | |
parameter \Y_WIDTH 5'11100 | |
connect \A \out_val | |
connect \B $120 | |
connect \Y $124 | |
end | |
attribute \src "aoc-2019-1.py:63" | |
wire width 29 $126 | |
attribute \src "aoc-2019-1.py:63" | |
cell $sub $127 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 2'10 | |
parameter \Y_WIDTH 5'11101 | |
connect \A $124 | |
connect \B 2'10 | |
connect \Y $126 | |
end | |
connect $117 $126 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $128 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $129 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000000000001 | |
connect \Y $128 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $130 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $131 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $130 | |
end | |
attribute \src "aoc-2019-1.py:87" | |
wire width 28 $132 | |
attribute \src "aoc-2019-1.py:87" | |
wire width 28 $133 | |
attribute \src "aoc-2019-1.py:87" | |
cell $sub $134 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 5'11100 | |
connect \A \out_val | |
connect \B 24'000000000000000000000001 | |
connect \Y $133 | |
end | |
connect $132 $133 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $135 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $136 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000000001010 | |
connect \Y $135 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $137 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $138 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $137 | |
end | |
attribute \src "aoc-2019-1.py:87" | |
wire width 28 $139 | |
attribute \src "aoc-2019-1.py:87" | |
wire width 28 $140 | |
attribute \src "aoc-2019-1.py:87" | |
cell $sub $141 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 5'11100 | |
connect \A \out_val | |
connect \B 24'000000000000000000001010 | |
connect \Y $140 | |
end | |
connect $139 $140 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $142 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $143 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000001100100 | |
connect \Y $142 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $144 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $145 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $144 | |
end | |
attribute \src "aoc-2019-1.py:87" | |
wire width 28 $146 | |
attribute \src "aoc-2019-1.py:87" | |
wire width 28 $147 | |
attribute \src "aoc-2019-1.py:87" | |
cell $sub $148 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 5'11100 | |
connect \A \out_val | |
connect \B 24'000000000000000001100100 | |
connect \Y $147 | |
end | |
connect $146 $147 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $149 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $150 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000001111101000 | |
connect \Y $149 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $151 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $152 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $151 | |
end | |
attribute \src "aoc-2019-1.py:87" | |
wire width 28 $153 | |
attribute \src "aoc-2019-1.py:87" | |
wire width 28 $154 | |
attribute \src "aoc-2019-1.py:87" | |
cell $sub $155 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 5'11100 | |
connect \A \out_val | |
connect \B 24'000000000000001111101000 | |
connect \Y $154 | |
end | |
connect $153 $154 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $156 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $157 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000010011100010000 | |
connect \Y $156 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $158 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $159 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $158 | |
end | |
attribute \src "aoc-2019-1.py:87" | |
wire width 28 $160 | |
attribute \src "aoc-2019-1.py:87" | |
wire width 28 $161 | |
attribute \src "aoc-2019-1.py:87" | |
cell $sub $162 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 5'11100 | |
connect \A \out_val | |
connect \B 24'000000000010011100010000 | |
connect \Y $161 | |
end | |
connect $160 $161 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $163 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $164 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000011000011010100000 | |
connect \Y $163 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $165 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $166 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $165 | |
end | |
attribute \src "aoc-2019-1.py:87" | |
wire width 28 $167 | |
attribute \src "aoc-2019-1.py:87" | |
wire width 28 $168 | |
attribute \src "aoc-2019-1.py:87" | |
cell $sub $169 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 5'11100 | |
connect \A \out_val | |
connect \B 24'000000011000011010100000 | |
connect \Y $168 | |
end | |
connect $167 $168 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $170 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $171 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000011110100001001000000 | |
connect \Y $170 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $172 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $173 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $172 | |
end | |
attribute \src "aoc-2019-1.py:87" | |
wire width 28 $174 | |
attribute \src "aoc-2019-1.py:87" | |
wire width 28 $175 | |
attribute \src "aoc-2019-1.py:87" | |
cell $sub $176 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 5'11100 | |
connect \A \out_val | |
connect \B 24'000011110100001001000000 | |
connect \Y $175 | |
end | |
connect $174 $175 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $177 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $178 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'100110001001011010000000 | |
connect \Y $177 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $179 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $180 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $179 | |
end | |
attribute \src "aoc-2019-1.py:87" | |
wire width 28 $181 | |
attribute \src "aoc-2019-1.py:87" | |
wire width 28 $182 | |
attribute \src "aoc-2019-1.py:87" | |
cell $sub $183 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 5'11100 | |
connect \A \out_val | |
connect \B 24'100110001001011010000000 | |
connect \Y $182 | |
end | |
connect $181 $182 | |
process $group_11 | |
assign \out_val$next \out_val | |
attribute \src "aoc-2019-1.py:41" | |
switch { \uart_rx_rdy } | |
attribute \src "aoc-2019-1.py:41" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:44" | |
switch { $107 } | |
attribute \src "aoc-2019-1.py:44" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:45" | |
switch { $115 $109 } | |
attribute \src "aoc-2019-1.py:45" | |
case 2'-1 | |
assign \out_val$next 27'000000000000000000000000000 | |
attribute \src "aoc-2019-1.py:53" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:57" | |
case | |
attribute \src "aoc-2019-1.py:58" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:58" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:60" | |
case | |
assign \out_val$next $117 [26:0] | |
end | |
end | |
end | |
attribute \src "aoc-2019-1.py:75" | |
case | |
end | |
attribute \src "aoc-2019-1.py:79" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:79" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:83" | |
switch \out_idx | |
case 3'000 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $130 $128 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_val$next $132 [26:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
end | |
case 3'001 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $137 $135 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_val$next $139 [26:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
end | |
case 3'010 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $144 $142 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_val$next $146 [26:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
end | |
case 3'011 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $151 $149 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_val$next $153 [26:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
end | |
case 3'100 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $158 $156 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_val$next $160 [26:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
end | |
case 3'101 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $165 $163 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_val$next $167 [26:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
end | |
case 3'110 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $172 $170 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_val$next $174 [26:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
end | |
case 3'--- | |
attribute \src "aoc-2019-1.py:84" | |
switch { $179 $177 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_val$next $181 [26:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
end | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \out_val$next 27'000000000000000000000000000 | |
end | |
sync init | |
update \out_val 27'000000000000000000000000000 | |
sync posedge \clk | |
update \out_val \out_val$next | |
end | |
attribute \src "aoc-2019-1.py:37" | |
wire width 4 \out_digit | |
attribute \src "aoc-2019-1.py:37" | |
wire width 4 \out_digit$next | |
attribute \src "aoc-2019-1.py:44" | |
wire width 1 $184 | |
attribute \src "aoc-2019-1.py:44" | |
cell $not $185 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_ack | |
connect \Y $184 | |
end | |
attribute \src "aoc-2019-1.py:45" | |
wire width 1 $186 | |
attribute \src "aoc-2019-1.py:45" | |
cell $eq $187 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'101 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 5'10010 | |
connect \Y $186 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $188 | |
attribute \src "aoc-2019-1.py:53" | |
cell $ge $189 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'110000 | |
connect \Y $188 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $190 | |
attribute \src "aoc-2019-1.py:53" | |
cell $le $191 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'111001 | |
connect \Y $190 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $192 | |
attribute \src "aoc-2019-1.py:53" | |
cell $and $193 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A $188 | |
connect \B $190 | |
connect \Y $192 | |
end | |
attribute \src "aoc-2019-1.py:65" | |
wire width 1 $194 | |
attribute \src "aoc-2019-1.py:65" | |
cell $eq $195 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'100000 | |
connect \Y $194 | |
end | |
attribute \src "aoc-2019-1.py:67" | |
wire width 1 $196 | |
attribute \src "aoc-2019-1.py:67" | |
cell $eq $197 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 4'1010 | |
connect \Y $196 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $198 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $199 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000000000001 | |
connect \Y $198 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $200 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $201 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $200 | |
end | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $202 | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $203 | |
attribute \src "aoc-2019-1.py:86" | |
cell $add $204 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'101 | |
connect \A \out_digit | |
connect \B 1'1 | |
connect \Y $203 | |
end | |
connect $202 $203 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $205 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $206 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000000001010 | |
connect \Y $205 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $207 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $208 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $207 | |
end | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $209 | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $210 | |
attribute \src "aoc-2019-1.py:86" | |
cell $add $211 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'101 | |
connect \A \out_digit | |
connect \B 1'1 | |
connect \Y $210 | |
end | |
connect $209 $210 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $212 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $213 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000001100100 | |
connect \Y $212 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $214 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $215 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $214 | |
end | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $216 | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $217 | |
attribute \src "aoc-2019-1.py:86" | |
cell $add $218 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'101 | |
connect \A \out_digit | |
connect \B 1'1 | |
connect \Y $217 | |
end | |
connect $216 $217 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $219 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $220 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000001111101000 | |
connect \Y $219 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $221 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $222 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $221 | |
end | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $223 | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $224 | |
attribute \src "aoc-2019-1.py:86" | |
cell $add $225 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'101 | |
connect \A \out_digit | |
connect \B 1'1 | |
connect \Y $224 | |
end | |
connect $223 $224 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $226 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $227 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000010011100010000 | |
connect \Y $226 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $228 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $229 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $228 | |
end | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $230 | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $231 | |
attribute \src "aoc-2019-1.py:86" | |
cell $add $232 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'101 | |
connect \A \out_digit | |
connect \B 1'1 | |
connect \Y $231 | |
end | |
connect $230 $231 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $233 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $234 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000011000011010100000 | |
connect \Y $233 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $235 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $236 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $235 | |
end | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $237 | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $238 | |
attribute \src "aoc-2019-1.py:86" | |
cell $add $239 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'101 | |
connect \A \out_digit | |
connect \B 1'1 | |
connect \Y $238 | |
end | |
connect $237 $238 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $240 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $241 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000011110100001001000000 | |
connect \Y $240 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $242 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $243 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $242 | |
end | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $244 | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $245 | |
attribute \src "aoc-2019-1.py:86" | |
cell $add $246 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'101 | |
connect \A \out_digit | |
connect \B 1'1 | |
connect \Y $245 | |
end | |
connect $244 $245 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $247 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $248 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'100110001001011010000000 | |
connect \Y $247 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $249 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $250 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $249 | |
end | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $251 | |
attribute \src "aoc-2019-1.py:86" | |
wire width 5 $252 | |
attribute \src "aoc-2019-1.py:86" | |
cell $add $253 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'100 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'101 | |
connect \A \out_digit | |
connect \B 1'1 | |
connect \Y $252 | |
end | |
connect $251 $252 | |
process $group_12 | |
assign \out_digit$next \out_digit | |
attribute \src "aoc-2019-1.py:41" | |
switch { \uart_rx_rdy } | |
attribute \src "aoc-2019-1.py:41" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:44" | |
switch { $184 } | |
attribute \src "aoc-2019-1.py:44" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:45" | |
switch { $192 $186 } | |
attribute \src "aoc-2019-1.py:45" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:53" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:57" | |
case | |
attribute \src "aoc-2019-1.py:58" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:58" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:60" | |
case | |
attribute \src "aoc-2019-1.py:65" | |
switch { $196 $194 } | |
attribute \src "aoc-2019-1.py:65" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:67" | |
case 2'1- | |
assign \out_digit$next 4'0000 | |
attribute \src "aoc-2019-1.py:73" | |
case | |
end | |
end | |
end | |
end | |
attribute \src "aoc-2019-1.py:75" | |
case | |
end | |
attribute \src "aoc-2019-1.py:79" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:79" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:83" | |
switch \out_idx | |
case 3'000 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $200 $198 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_digit$next $202 [3:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \out_digit$next 4'0000 | |
end | |
case 3'001 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $207 $205 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_digit$next $209 [3:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \out_digit$next 4'0000 | |
end | |
case 3'010 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $214 $212 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_digit$next $216 [3:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \out_digit$next 4'0000 | |
end | |
case 3'011 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $221 $219 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_digit$next $223 [3:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \out_digit$next 4'0000 | |
end | |
case 3'100 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $228 $226 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_digit$next $230 [3:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \out_digit$next 4'0000 | |
end | |
case 3'101 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $235 $233 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_digit$next $237 [3:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \out_digit$next 4'0000 | |
end | |
case 3'110 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $242 $240 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_digit$next $244 [3:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \out_digit$next 4'0000 | |
end | |
case 3'--- | |
attribute \src "aoc-2019-1.py:84" | |
switch { $249 $247 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
assign \out_digit$next $251 [3:0] | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \out_digit$next 4'0000 | |
end | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \out_digit$next 4'0000 | |
end | |
sync init | |
update \out_digit 4'0000 | |
sync posedge \clk | |
update \out_digit \out_digit$next | |
end | |
attribute \src "aoc-2019-1.py:44" | |
wire width 1 $254 | |
attribute \src "aoc-2019-1.py:44" | |
cell $not $255 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_ack | |
connect \Y $254 | |
end | |
attribute \src "aoc-2019-1.py:45" | |
wire width 1 $256 | |
attribute \src "aoc-2019-1.py:45" | |
cell $eq $257 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'101 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 5'10010 | |
connect \Y $256 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $258 | |
attribute \src "aoc-2019-1.py:53" | |
cell $ge $259 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'110000 | |
connect \Y $258 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $260 | |
attribute \src "aoc-2019-1.py:53" | |
cell $le $261 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'111001 | |
connect \Y $260 | |
end | |
attribute \src "aoc-2019-1.py:53" | |
wire width 1 $262 | |
attribute \src "aoc-2019-1.py:53" | |
cell $and $263 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A $258 | |
connect \B $260 | |
connect \Y $262 | |
end | |
attribute \src "aoc-2019-1.py:65" | |
wire width 1 $264 | |
attribute \src "aoc-2019-1.py:65" | |
cell $eq $265 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'110 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 6'100000 | |
connect \Y $264 | |
end | |
attribute \src "aoc-2019-1.py:67" | |
wire width 1 $266 | |
attribute \src "aoc-2019-1.py:67" | |
cell $eq $267 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 4'1000 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_rx_data | |
connect \B 4'1010 | |
connect \Y $266 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $268 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $269 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000000000001 | |
connect \Y $268 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $270 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $271 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $270 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $272 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $273 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A 3'000 | |
connect \B 1'0 | |
connect \Y $272 | |
end | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $274 | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $275 | |
attribute \src "aoc-2019-1.py:96" | |
cell $sub $276 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'100 | |
connect \A 3'000 | |
connect \B 1'1 | |
connect \Y $275 | |
end | |
connect $274 $275 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $277 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $278 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000000001010 | |
connect \Y $277 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $279 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $280 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $279 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $281 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $282 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A 3'001 | |
connect \B 1'0 | |
connect \Y $281 | |
end | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $283 | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $284 | |
attribute \src "aoc-2019-1.py:96" | |
cell $sub $285 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'100 | |
connect \A 3'001 | |
connect \B 1'1 | |
connect \Y $284 | |
end | |
connect $283 $284 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $286 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $287 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000001100100 | |
connect \Y $286 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $288 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $289 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $288 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $290 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $291 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A 3'010 | |
connect \B 1'0 | |
connect \Y $290 | |
end | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $292 | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $293 | |
attribute \src "aoc-2019-1.py:96" | |
cell $sub $294 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'100 | |
connect \A 3'010 | |
connect \B 1'1 | |
connect \Y $293 | |
end | |
connect $292 $293 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $295 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $296 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000001111101000 | |
connect \Y $295 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $297 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $298 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $297 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $299 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $300 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A 3'011 | |
connect \B 1'0 | |
connect \Y $299 | |
end | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $301 | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $302 | |
attribute \src "aoc-2019-1.py:96" | |
cell $sub $303 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'100 | |
connect \A 3'011 | |
connect \B 1'1 | |
connect \Y $302 | |
end | |
connect $301 $302 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $304 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $305 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000010011100010000 | |
connect \Y $304 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $306 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $307 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $306 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $308 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $309 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A 3'100 | |
connect \B 1'0 | |
connect \Y $308 | |
end | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $310 | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $311 | |
attribute \src "aoc-2019-1.py:96" | |
cell $sub $312 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'100 | |
connect \A 3'100 | |
connect \B 1'1 | |
connect \Y $311 | |
end | |
connect $310 $311 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $313 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $314 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000011000011010100000 | |
connect \Y $313 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $315 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $316 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $315 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $317 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $318 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A 3'101 | |
connect \B 1'0 | |
connect \Y $317 | |
end | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $319 | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $320 | |
attribute \src "aoc-2019-1.py:96" | |
cell $sub $321 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'100 | |
connect \A 3'101 | |
connect \B 1'1 | |
connect \Y $320 | |
end | |
connect $319 $320 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $322 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $323 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000011110100001001000000 | |
connect \Y $322 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $324 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $325 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $324 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $326 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $327 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A 3'110 | |
connect \B 1'0 | |
connect \Y $326 | |
end | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $328 | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $329 | |
attribute \src "aoc-2019-1.py:96" | |
cell $sub $330 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'100 | |
connect \A 3'110 | |
connect \B 1'1 | |
connect \Y $329 | |
end | |
connect $328 $329 | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $331 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $332 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'100110001001011010000000 | |
connect \Y $331 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $333 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $334 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $333 | |
end | |
attribute \src "aoc-2019-1.py:95" | |
wire width 1 $335 | |
attribute \src "aoc-2019-1.py:95" | |
cell $ne $336 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A 3'111 | |
connect \B 1'0 | |
connect \Y $335 | |
end | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $337 | |
attribute \src "aoc-2019-1.py:96" | |
wire width 4 $338 | |
attribute \src "aoc-2019-1.py:96" | |
cell $sub $339 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 2'11 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 3'100 | |
connect \A 3'111 | |
connect \B 1'1 | |
connect \Y $338 | |
end | |
connect $337 $338 | |
process $group_13 | |
assign \out_idx$next \out_idx | |
attribute \src "aoc-2019-1.py:41" | |
switch { \uart_rx_rdy } | |
attribute \src "aoc-2019-1.py:41" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:44" | |
switch { $254 } | |
attribute \src "aoc-2019-1.py:44" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:45" | |
switch { $262 $256 } | |
attribute \src "aoc-2019-1.py:45" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:53" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:57" | |
case | |
attribute \src "aoc-2019-1.py:58" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:58" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:60" | |
case | |
attribute \src "aoc-2019-1.py:65" | |
switch { $266 $264 } | |
attribute \src "aoc-2019-1.py:65" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:67" | |
case 2'1- | |
assign \out_idx$next 3'111 | |
attribute \src "aoc-2019-1.py:73" | |
case | |
end | |
end | |
end | |
end | |
attribute \src "aoc-2019-1.py:75" | |
case | |
end | |
attribute \src "aoc-2019-1.py:79" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:79" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:83" | |
switch \out_idx | |
case 3'000 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $270 $268 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $272 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
assign \out_idx$next $274 [2:0] | |
attribute \src "aoc-2019-1.py:97" | |
case | |
end | |
end | |
case 3'001 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $279 $277 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $281 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
assign \out_idx$next $283 [2:0] | |
attribute \src "aoc-2019-1.py:97" | |
case | |
end | |
end | |
case 3'010 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $288 $286 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $290 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
assign \out_idx$next $292 [2:0] | |
attribute \src "aoc-2019-1.py:97" | |
case | |
end | |
end | |
case 3'011 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $297 $295 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $299 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
assign \out_idx$next $301 [2:0] | |
attribute \src "aoc-2019-1.py:97" | |
case | |
end | |
end | |
case 3'100 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $306 $304 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $308 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
assign \out_idx$next $310 [2:0] | |
attribute \src "aoc-2019-1.py:97" | |
case | |
end | |
end | |
case 3'101 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $315 $313 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $317 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
assign \out_idx$next $319 [2:0] | |
attribute \src "aoc-2019-1.py:97" | |
case | |
end | |
end | |
case 3'110 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $324 $322 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $326 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
assign \out_idx$next $328 [2:0] | |
attribute \src "aoc-2019-1.py:97" | |
case | |
end | |
end | |
case 3'--- | |
attribute \src "aoc-2019-1.py:84" | |
switch { $333 $331 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
attribute \src "aoc-2019-1.py:95" | |
switch { $335 } | |
attribute \src "aoc-2019-1.py:95" | |
case 1'1 | |
assign \out_idx$next $337 [2:0] | |
attribute \src "aoc-2019-1.py:97" | |
case | |
end | |
end | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \out_idx$next 3'000 | |
end | |
sync init | |
update \out_idx 3'000 | |
sync posedge \clk | |
update \out_idx \out_idx$next | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $340 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $341 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000000000001 | |
connect \Y $340 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $342 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $343 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $342 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $344 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $345 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000000001010 | |
connect \Y $344 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $346 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $347 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $346 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $348 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $349 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000001100100 | |
connect \Y $348 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $350 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $351 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $350 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $352 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $353 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000001111101000 | |
connect \Y $352 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $354 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $355 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $354 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $356 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $357 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000010011100010000 | |
connect \Y $356 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $358 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $359 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $358 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $360 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $361 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000011000011010100000 | |
connect \Y $360 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $362 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $363 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $362 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $364 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $365 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000011110100001001000000 | |
connect \Y $364 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $366 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $367 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $366 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $368 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $369 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'100110001001011010000000 | |
connect \Y $368 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $370 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $371 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $370 | |
end | |
attribute \src "aoc-2019-1.py:100" | |
wire width 1 $372 | |
attribute \src "aoc-2019-1.py:100" | |
cell $and $373 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \B \uart_tx_ack | |
connect \Y $372 | |
end | |
process $group_14 | |
assign \uart_tx_rdy$next \uart_tx_rdy | |
attribute \src "aoc-2019-1.py:79" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:79" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:83" | |
switch \out_idx | |
case 3'000 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $342 $340 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_rdy$next 1'1 | |
end | |
case 3'001 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $346 $344 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_rdy$next 1'1 | |
end | |
case 3'010 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $350 $348 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_rdy$next 1'1 | |
end | |
case 3'011 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $354 $352 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_rdy$next 1'1 | |
end | |
case 3'100 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $358 $356 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_rdy$next 1'1 | |
end | |
case 3'101 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $362 $360 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_rdy$next 1'1 | |
end | |
case 3'110 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $366 $364 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_rdy$next 1'1 | |
end | |
case 3'--- | |
attribute \src "aoc-2019-1.py:84" | |
switch { $370 $368 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_rdy$next 1'1 | |
end | |
end | |
end | |
attribute \src "aoc-2019-1.py:100" | |
switch { $372 } | |
attribute \src "aoc-2019-1.py:100" | |
case 1'1 | |
assign \uart_tx_rdy$next 1'0 | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \uart_tx_rdy$next 1'0 | |
end | |
sync init | |
update \uart_tx_rdy 1'0 | |
sync posedge \clk | |
update \uart_tx_rdy \uart_tx_rdy$next | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $374 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $375 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000000000001 | |
connect \Y $374 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $376 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $377 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $376 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
wire width 8 $378 | |
attribute \src "aoc-2019-1.py:92" | |
wire width 7 $379 | |
attribute \src "aoc-2019-1.py:92" | |
cell $add $380 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'110 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 3'111 | |
connect \A 6'110000 | |
connect \B \out_digit | |
connect \Y $379 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
cell $pos $381 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \Y_WIDTH 4'1000 | |
connect \A $379 | |
connect \Y $378 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $382 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $383 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000000001010 | |
connect \Y $382 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $384 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $385 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $384 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
wire width 8 $386 | |
attribute \src "aoc-2019-1.py:92" | |
wire width 7 $387 | |
attribute \src "aoc-2019-1.py:92" | |
cell $add $388 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'110 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 3'111 | |
connect \A 6'110000 | |
connect \B \out_digit | |
connect \Y $387 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
cell $pos $389 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \Y_WIDTH 4'1000 | |
connect \A $387 | |
connect \Y $386 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $390 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $391 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000000001100100 | |
connect \Y $390 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $392 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $393 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $392 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
wire width 8 $394 | |
attribute \src "aoc-2019-1.py:92" | |
wire width 7 $395 | |
attribute \src "aoc-2019-1.py:92" | |
cell $add $396 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'110 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 3'111 | |
connect \A 6'110000 | |
connect \B \out_digit | |
connect \Y $395 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
cell $pos $397 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \Y_WIDTH 4'1000 | |
connect \A $395 | |
connect \Y $394 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $398 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $399 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000000001111101000 | |
connect \Y $398 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $400 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $401 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $400 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
wire width 8 $402 | |
attribute \src "aoc-2019-1.py:92" | |
wire width 7 $403 | |
attribute \src "aoc-2019-1.py:92" | |
cell $add $404 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'110 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 3'111 | |
connect \A 6'110000 | |
connect \B \out_digit | |
connect \Y $403 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
cell $pos $405 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \Y_WIDTH 4'1000 | |
connect \A $403 | |
connect \Y $402 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $406 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $407 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000000010011100010000 | |
connect \Y $406 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $408 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $409 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $408 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
wire width 8 $410 | |
attribute \src "aoc-2019-1.py:92" | |
wire width 7 $411 | |
attribute \src "aoc-2019-1.py:92" | |
cell $add $412 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'110 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 3'111 | |
connect \A 6'110000 | |
connect \B \out_digit | |
connect \Y $411 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
cell $pos $413 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \Y_WIDTH 4'1000 | |
connect \A $411 | |
connect \Y $410 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $414 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $415 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000000011000011010100000 | |
connect \Y $414 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $416 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $417 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $416 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
wire width 8 $418 | |
attribute \src "aoc-2019-1.py:92" | |
wire width 7 $419 | |
attribute \src "aoc-2019-1.py:92" | |
cell $add $420 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'110 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 3'111 | |
connect \A 6'110000 | |
connect \B \out_digit | |
connect \Y $419 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
cell $pos $421 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \Y_WIDTH 4'1000 | |
connect \A $419 | |
connect \Y $418 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $422 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $423 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'000011110100001001000000 | |
connect \Y $422 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $424 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $425 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $424 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
wire width 8 $426 | |
attribute \src "aoc-2019-1.py:92" | |
wire width 7 $427 | |
attribute \src "aoc-2019-1.py:92" | |
cell $add $428 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'110 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 3'111 | |
connect \A 6'110000 | |
connect \B \out_digit | |
connect \Y $427 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
cell $pos $429 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \Y_WIDTH 4'1000 | |
connect \A $427 | |
connect \Y $426 | |
end | |
attribute \src "aoc-2019-1.py:84" | |
wire width 1 $430 | |
attribute \src "aoc-2019-1.py:84" | |
cell $ge $431 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 5'11011 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 5'11000 | |
parameter \Y_WIDTH 1'1 | |
connect \A \out_val | |
connect \B 24'100110001001011010000000 | |
connect \Y $430 | |
end | |
attribute \src "aoc-2019-1.py:89" | |
wire width 1 $432 | |
attribute \src "aoc-2019-1.py:89" | |
cell $not $433 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 1'1 | |
parameter \Y_WIDTH 1'1 | |
connect \A \uart_tx_rdy | |
connect \Y $432 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
wire width 8 $434 | |
attribute \src "aoc-2019-1.py:92" | |
wire width 7 $435 | |
attribute \src "aoc-2019-1.py:92" | |
cell $add $436 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'110 | |
parameter \B_SIGNED 1'0 | |
parameter \B_WIDTH 3'100 | |
parameter \Y_WIDTH 3'111 | |
connect \A 6'110000 | |
connect \B \out_digit | |
connect \Y $435 | |
end | |
attribute \src "aoc-2019-1.py:92" | |
cell $pos $437 | |
parameter \A_SIGNED 1'0 | |
parameter \A_WIDTH 3'111 | |
parameter \Y_WIDTH 4'1000 | |
connect \A $435 | |
connect \Y $434 | |
end | |
process $group_15 | |
assign \uart_tx_data$next \uart_tx_data | |
attribute \src "aoc-2019-1.py:79" | |
switch { \out_en } | |
attribute \src "aoc-2019-1.py:79" | |
case 1'1 | |
attribute \src "aoc-2019-1.py:83" | |
switch \out_idx | |
case 3'000 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $376 $374 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_data$next $378 | |
end | |
case 3'001 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $384 $382 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_data$next $386 | |
end | |
case 3'010 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $392 $390 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_data$next $394 | |
end | |
case 3'011 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $400 $398 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_data$next $402 | |
end | |
case 3'100 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $408 $406 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_data$next $410 | |
end | |
case 3'101 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $416 $414 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_data$next $418 | |
end | |
case 3'110 | |
attribute \src "aoc-2019-1.py:84" | |
switch { $424 $422 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_data$next $426 | |
end | |
case 3'--- | |
attribute \src "aoc-2019-1.py:84" | |
switch { $432 $430 } | |
attribute \src "aoc-2019-1.py:84" | |
case 2'-1 | |
attribute \src "aoc-2019-1.py:89" | |
case 2'1- | |
assign \uart_tx_data$next $434 | |
end | |
end | |
end | |
attribute \src "nmigen/hdl/xfrm.py:528" | |
switch \rst | |
case 1'1 | |
assign \uart_tx_data$next 8'00000000 | |
end | |
sync init | |
update \uart_tx_data 8'00000000 | |
sync posedge \clk | |
update \uart_tx_data \uart_tx_data$next | |
end | |
connect \uart_0__dtr__o 1'0 | |
connect \uart_0__rts__o 1'0 | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment