attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:257"
wire width 5 \opcode_switch$1
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 10'0000000000
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 10'0100000001
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 10'0010000001
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 10'0100100001
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 10'0011100001
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 10'0000100001
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 10'0111000001
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 10'0110100001
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 10'0011000001
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 10'1000010000
- assign \function_unit 10'0000100000
+ assign \function_unit 11'00000100000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 10'0000010000
- assign \function_unit 10'0000100000
+ assign \function_unit 11'00000100000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 10'1000110000
- assign \function_unit 10'0000100000
+ assign \function_unit 11'00000100000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 10'0010010110
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 10'0000010010
- assign \function_unit 10'0010000000
+ assign \function_unit 11'00010000000
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch$1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00010
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 4'0100
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 4'0101
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 4'0000
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 4'0001
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 4'0010
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 4'0011
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 4'0110
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 4'0111
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 4'1000
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 4'1001
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01000
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11000
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00000
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10000
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00100
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10100
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00111
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10111
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00110
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10110
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00000
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00001
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00111
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01111
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01000
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01110
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00011
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01101
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01100
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01001
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00000
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00111
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00001
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00100
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00001
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00000
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10001
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10000
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11101
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11100
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11110
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00011
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01111
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01011
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00101
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00100
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11000
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11001
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00000
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00010
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00010000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01010
- assign \function_unit 10'0000000010
+ assign \function_unit 11'10000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01110
- assign \function_unit 10'0000000010
+ assign \function_unit 11'10000000000
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00010
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00001
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01000
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00111
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11110
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00000
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11000
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10000
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10101
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00110
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11100
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10110
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10100
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00100
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10010
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01100
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11100
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01101
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11101
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01110
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11110
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01111
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11111
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01000
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11000
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00010
- assign \function_unit 10'0100000000
+ assign \function_unit 11'00100000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00000
- assign \function_unit 10'0100000000
+ assign \function_unit 11'00100000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10010
- assign \function_unit 10'0100000000
+ assign \function_unit 11'00100000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10000
- assign \function_unit 10'0100000000
+ assign \function_unit 11'00100000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00111
- assign \function_unit 10'0100000000
+ assign \function_unit 11'00100000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10111
- assign \function_unit 10'0100000000
+ assign \function_unit 11'00100000000
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01100
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11100
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01101
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11101
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01110
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11110
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01111
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11111
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01000
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11000
- assign \function_unit 10'1000000000
+ assign \function_unit 11'01000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00010
- assign \function_unit 10'0100000000
+ assign \function_unit 11'00100000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00000
- assign \function_unit 10'0100000000
+ assign \function_unit 11'00100000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10010
- assign \function_unit 10'0100000000
+ assign \function_unit 11'00100000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10000
- assign \function_unit 10'0100000000
+ assign \function_unit 11'00100000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00111
- assign \function_unit 10'0100000000
+ assign \function_unit 11'00100000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10111
- assign \function_unit 10'0100000000
+ assign \function_unit 11'00100000000
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00000
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11001
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10000
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00000
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00001
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00010
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00011
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00100
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00101
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00110
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00111
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01000
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01001
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01010
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01011
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01100
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01101
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01110
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01111
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10000
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10001
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10010
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10011
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10100
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10101
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10110
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10111
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11000
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11001
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11010
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11011
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11100
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11101
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11110
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11111
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00001
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00010
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10000
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00011
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00000
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10100
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00011
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00010
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01011
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01010
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01001
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01000
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00001
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00000
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00111
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00110
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01101
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01100
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00101
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00100
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00001
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00000
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01011
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'01010
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00101
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00100
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00100
- assign \function_unit 10'0001000000
+ assign \function_unit 11'00001000000
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00101
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00010000000
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00011
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10011
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00001
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10001
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00000
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10000
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00100
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10100
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00111
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10111
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00110
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10110
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00000
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11000
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'11001
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'10000
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00010
- assign \function_unit 10'0010000000
+ assign \function_unit 11'00010000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 5'00000
- assign \function_unit 10'0010000000
+ assign \function_unit 11'00010000000
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub10_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub10_function_unit
+ wire width 11 \dec_sub10_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub28_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub28_function_unit
+ wire width 11 \dec_sub28_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub0_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub0_function_unit
+ wire width 11 \dec_sub0_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub26_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub26_function_unit
+ wire width 11 \dec_sub26_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub19_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub19_function_unit
+ wire width 11 \dec_sub19_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub22_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub22_function_unit
+ wire width 11 \dec_sub22_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub9_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub9_function_unit
+ wire width 11 \dec_sub9_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub11_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub11_function_unit
+ wire width 11 \dec_sub11_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub27_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub27_function_unit
+ wire width 11 \dec_sub27_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub15_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub15_function_unit
+ wire width 11 \dec_sub15_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub20_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub20_function_unit
+ wire width 11 \dec_sub20_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub23_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub23_function_unit
+ wire width 11 \dec_sub23_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub21_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub21_function_unit
+ wire width 11 \dec_sub21_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub16_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub16_function_unit
+ wire width 11 \dec_sub16_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub18_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub18_function_unit
+ wire width 11 \dec_sub18_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub8_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub8_function_unit
+ wire width 11 \dec_sub8_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub24_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub24_function_unit
+ wire width 11 \dec_sub24_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec_sub4_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec_sub4_function_unit
+ wire width 11 \dec_sub4_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_20
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:264"
switch \opc_in
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:274"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 2'00
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 2'01
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 2'10
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 input 0 \opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 1 \function_unit
+ wire width 11 output 1 \function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
sync init
end
process $group_1
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 2'00
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 2'01
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:129"
wire width 3 output 9 \cr_out
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 10 \function_unit
+ wire width 11 output 10 \function_unit
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec19_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec19_function_unit
+ wire width 11 \dec19_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec30_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec30_function_unit
+ wire width 11 \dec30_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec31_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec31_function_unit
+ wire width 11 \dec31_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec58_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec58_function_unit
+ wire width 11 \dec58_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
wire width 32 \dec62_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 \dec62_function_unit
+ wire width 11 \dec62_function_unit
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:257"
wire width 32 \opcode_switch$1
process $group_6
- assign \function_unit 10'0000000000
+ assign \function_unit 11'00000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:299"
assign \function_unit \dec62_function_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'001100
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'001101
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'001110
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'001111
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'010001
- assign \function_unit 10'0010000000
+ assign \function_unit 11'00010000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'011100
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'011101
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'010010
- assign \function_unit 10'0000100000
+ assign \function_unit 11'00000100000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'010000
- assign \function_unit 10'0000100000
+ assign \function_unit 11'00000100000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'001011
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'001010
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'100010
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'100011
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'101010
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'101011
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'101000
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'101001
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'100000
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'100001
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'000111
- assign \function_unit 10'0100000000
+ assign \function_unit 11'00100000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'011000
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'011001
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'010100
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'010101
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'010111
- assign \function_unit 10'0000001000
+ assign \function_unit 11'00000001000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'100110
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'100111
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'101100
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'101101
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'100100
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'100101
- assign \function_unit 10'0000000100
+ assign \function_unit 11'00000000100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'001000
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'000010
- assign \function_unit 10'0010000000
+ assign \function_unit 11'00010000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'000011
- assign \function_unit 10'0010000000
+ assign \function_unit 11'00010000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'011010
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 6'011011
- assign \function_unit 10'0000010000
+ assign \function_unit 11'00000010000
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:279"
switch \opcode_switch$1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 32'000000---------------0100000000-
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 32'01100000000000000000000000000000
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:288"
case 32'000001---------------0000000011-
- assign \function_unit 10'0000000010
+ assign \function_unit 11'00000000010
end
sync init
end
end
end
attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.pdecode2.dec_a.sprmap"
+module \sprmap
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:59"
+ wire width 10 input 0 \spr_i
+ attribute \enum_base_type "SPR"
+ attribute \enum_value_0000000001 "XER"
+ attribute \enum_value_0000000011 "DSCR"
+ attribute \enum_value_0000001000 "LR"
+ attribute \enum_value_0000001001 "CTR"
+ attribute \enum_value_0000001101 "AMR"
+ attribute \enum_value_0000010001 "DSCR_priv"
+ attribute \enum_value_0000010010 "DSISR"
+ attribute \enum_value_0000010011 "DAR"
+ attribute \enum_value_0000010110 "DEC"
+ attribute \enum_value_0000011010 "SRR0"
+ attribute \enum_value_0000011011 "SRR1"
+ attribute \enum_value_0000011100 "CFAR"
+ attribute \enum_value_0000011101 "AMR_priv"
+ attribute \enum_value_0000110000 "PIDR"
+ attribute \enum_value_0000111101 "IAMR"
+ attribute \enum_value_0010000000 "TFHAR"
+ attribute \enum_value_0010000001 "TFIAR"
+ attribute \enum_value_0010000010 "TEXASR"
+ attribute \enum_value_0010000011 "TEXASRU"
+ attribute \enum_value_0010001000 "CTRL"
+ attribute \enum_value_0010010000 "TIDR"
+ attribute \enum_value_0010011000 "CTRL_priv"
+ attribute \enum_value_0010011001 "FSCR"
+ attribute \enum_value_0010011101 "UAMOR"
+ attribute \enum_value_0010011110 "GSR"
+ attribute \enum_value_0010011111 "PSPB"
+ attribute \enum_value_0010110000 "DPDES"
+ attribute \enum_value_0010110100 "DAWR0"
+ attribute \enum_value_0010111010 "RPR"
+ attribute \enum_value_0010111011 "CIABR"
+ attribute \enum_value_0010111100 "DAWRX0"
+ attribute \enum_value_0010111110 "HFSCR"
+ attribute \enum_value_0100000000 "VRSAVE"
+ attribute \enum_value_0100000011 "SPRG3"
+ attribute \enum_value_0100001100 "TB"
+ attribute \enum_value_0100001101 "TBU"
+ attribute \enum_value_0100010000 "SPRG0_priv"
+ attribute \enum_value_0100010001 "SPRG1_priv"
+ attribute \enum_value_0100010010 "SPRG2_priv"
+ attribute \enum_value_0100010011 "SPRG3_priv"
+ attribute \enum_value_0100011011 "CIR"
+ attribute \enum_value_0100011100 "TBL"
+ attribute \enum_value_0100011101 "TBU_hypv"
+ attribute \enum_value_0100011110 "TBU40"
+ attribute \enum_value_0100011111 "PVR"
+ attribute \enum_value_0100110000 "HSPRG0"
+ attribute \enum_value_0100110001 "HSPRG1"
+ attribute \enum_value_0100110010 "HDSISR"
+ attribute \enum_value_0100110011 "HDAR"
+ attribute \enum_value_0100110100 "SPURR"
+ attribute \enum_value_0100110101 "PURR"
+ attribute \enum_value_0100110110 "HDEC"
+ attribute \enum_value_0100111001 "HRMOR"
+ attribute \enum_value_0100111010 "HSRR0"
+ attribute \enum_value_0100111011 "HSRR1"
+ attribute \enum_value_0100111110 "LPCR"
+ attribute \enum_value_0100111111 "LPIDR"
+ attribute \enum_value_0101010000 "HMER"
+ attribute \enum_value_0101010001 "HMEER"
+ attribute \enum_value_0101010010 "PCR"
+ attribute \enum_value_0101010011 "HEIR"
+ attribute \enum_value_0101011101 "AMOR"
+ attribute \enum_value_0110111110 "TIR"
+ attribute \enum_value_0111010000 "PTCR"
+ attribute \enum_value_1100000000 "SIER"
+ attribute \enum_value_1100000001 "MMCR2"
+ attribute \enum_value_1100000010 "MMCRA"
+ attribute \enum_value_1100000011 "PMC1"
+ attribute \enum_value_1100000100 "PMC2"
+ attribute \enum_value_1100000101 "PMC3"
+ attribute \enum_value_1100000110 "PMC4"
+ attribute \enum_value_1100000111 "PMC5"
+ attribute \enum_value_1100001000 "PMC6"
+ attribute \enum_value_1100001011 "MMCR0"
+ attribute \enum_value_1100001100 "SIAR"
+ attribute \enum_value_1100001101 "SDAR"
+ attribute \enum_value_1100001110 "MMCR1"
+ attribute \enum_value_1100010000 "SIER_priv"
+ attribute \enum_value_1100010001 "MMCR2_priv"
+ attribute \enum_value_1100010010 "MMCRA_priv"
+ attribute \enum_value_1100010011 "PMC1_priv"
+ attribute \enum_value_1100010100 "PMC2_priv"
+ attribute \enum_value_1100010101 "PMC3_priv"
+ attribute \enum_value_1100010110 "PMC4_priv"
+ attribute \enum_value_1100010111 "PMC5_priv"
+ attribute \enum_value_1100011000 "PMC6_priv"
+ attribute \enum_value_1100011011 "MMCR0_priv"
+ attribute \enum_value_1100011100 "SIAR_priv"
+ attribute \enum_value_1100011101 "SDAR_priv"
+ attribute \enum_value_1100011110 "MMCR1_priv"
+ attribute \enum_value_1100100000 "BESCRS"
+ attribute \enum_value_1100100001 "BESCRSU"
+ attribute \enum_value_1100100010 "BESCRR"
+ attribute \enum_value_1100100011 "BESCRRU"
+ attribute \enum_value_1100100100 "EBBHR"
+ attribute \enum_value_1100100101 "EBBRR"
+ attribute \enum_value_1100100110 "BESCR"
+ attribute \enum_value_1100101000 "reserved808"
+ attribute \enum_value_1100101001 "reserved809"
+ attribute \enum_value_1100101010 "reserved810"
+ attribute \enum_value_1100101011 "reserved811"
+ attribute \enum_value_1100101111 "TAR"
+ attribute \enum_value_1100110000 "ASDR"
+ attribute \enum_value_1100110111 "PSSCR"
+ attribute \enum_value_1101010000 "IC"
+ attribute \enum_value_1101010001 "VTB"
+ attribute \enum_value_1101010111 "PSSCR_hypv"
+ attribute \enum_value_1110000000 "PPR"
+ attribute \enum_value_1110000010 "PPR32"
+ attribute \enum_value_1111111111 "PIR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:60"
+ wire width 10 output 1 \spr_o
+ process $group_0
+ assign \spr_o 10'0000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:64"
+ switch \spr_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000000001
+ assign \spr_o 10'0000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000000011
+ assign \spr_o 10'0000000001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000001000
+ assign \spr_o 10'0000000010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000001001
+ assign \spr_o 10'0000000011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000001101
+ assign \spr_o 10'0000000100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000010001
+ assign \spr_o 10'0000000101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000010010
+ assign \spr_o 10'0000000110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000010011
+ assign \spr_o 10'0000000111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000010110
+ assign \spr_o 10'0000001000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000011010
+ assign \spr_o 10'0000001001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000011011
+ assign \spr_o 10'0000001010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000011100
+ assign \spr_o 10'0000001011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000011101
+ assign \spr_o 10'0000001100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000110000
+ assign \spr_o 10'0000001101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000111101
+ assign \spr_o 10'0000001110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010000000
+ assign \spr_o 10'0000001111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010000001
+ assign \spr_o 10'0000010000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010000010
+ assign \spr_o 10'0000010001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010000011
+ assign \spr_o 10'0000010010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010001000
+ assign \spr_o 10'0000010011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010010000
+ assign \spr_o 10'0000010100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010011000
+ assign \spr_o 10'0000010101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010011001
+ assign \spr_o 10'0000010110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010011101
+ assign \spr_o 10'0000010111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010011110
+ assign \spr_o 10'0000011000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010011111
+ assign \spr_o 10'0000011001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010110000
+ assign \spr_o 10'0000011010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010110100
+ assign \spr_o 10'0000011011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010111010
+ assign \spr_o 10'0000011100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010111011
+ assign \spr_o 10'0000011101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010111100
+ assign \spr_o 10'0000011110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010111110
+ assign \spr_o 10'0000011111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100000000
+ assign \spr_o 10'0000100000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100000011
+ assign \spr_o 10'0000100001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100001100
+ assign \spr_o 10'0000100010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100001101
+ assign \spr_o 10'0000100011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100010000
+ assign \spr_o 10'0000100100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100010001
+ assign \spr_o 10'0000100101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100010010
+ assign \spr_o 10'0000100110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100010011
+ assign \spr_o 10'0000100111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100011011
+ assign \spr_o 10'0000101000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100011100
+ assign \spr_o 10'0000101001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100011101
+ assign \spr_o 10'0000101010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100011110
+ assign \spr_o 10'0000101011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100011111
+ assign \spr_o 10'0000101100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100110000
+ assign \spr_o 10'0000101101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100110001
+ assign \spr_o 10'0000101110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100110010
+ assign \spr_o 10'0000101111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100110011
+ assign \spr_o 10'0000110000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100110100
+ assign \spr_o 10'0000110001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100110101
+ assign \spr_o 10'0000110010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100110110
+ assign \spr_o 10'0000110011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100111001
+ assign \spr_o 10'0000110100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100111010
+ assign \spr_o 10'0000110101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100111011
+ assign \spr_o 10'0000110110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100111110
+ assign \spr_o 10'0000110111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100111111
+ assign \spr_o 10'0000111000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0101010000
+ assign \spr_o 10'0000111001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0101010001
+ assign \spr_o 10'0000111010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0101010010
+ assign \spr_o 10'0000111011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0101010011
+ assign \spr_o 10'0000111100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0101011101
+ assign \spr_o 10'0000111101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0110111110
+ assign \spr_o 10'0000111110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0111010000
+ assign \spr_o 10'0000111111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100000000
+ assign \spr_o 10'0001000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100000001
+ assign \spr_o 10'0001000001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100000010
+ assign \spr_o 10'0001000010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100000011
+ assign \spr_o 10'0001000011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100000100
+ assign \spr_o 10'0001000100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100000101
+ assign \spr_o 10'0001000101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100000110
+ assign \spr_o 10'0001000110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100000111
+ assign \spr_o 10'0001000111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100001000
+ assign \spr_o 10'0001001000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100001011
+ assign \spr_o 10'0001001001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100001100
+ assign \spr_o 10'0001001010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100001101
+ assign \spr_o 10'0001001011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100001110
+ assign \spr_o 10'0001001100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100010000
+ assign \spr_o 10'0001001101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100010001
+ assign \spr_o 10'0001001110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100010010
+ assign \spr_o 10'0001001111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100010011
+ assign \spr_o 10'0001010000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100010100
+ assign \spr_o 10'0001010001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100010101
+ assign \spr_o 10'0001010010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100010110
+ assign \spr_o 10'0001010011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100010111
+ assign \spr_o 10'0001010100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100011000
+ assign \spr_o 10'0001010101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100011011
+ assign \spr_o 10'0001010110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100011100
+ assign \spr_o 10'0001010111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100011101
+ assign \spr_o 10'0001011000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100011110
+ assign \spr_o 10'0001011001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100100000
+ assign \spr_o 10'0001011010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100100001
+ assign \spr_o 10'0001011011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100100010
+ assign \spr_o 10'0001011100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100100011
+ assign \spr_o 10'0001011101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100100100
+ assign \spr_o 10'0001011110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100100101
+ assign \spr_o 10'0001011111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100100110
+ assign \spr_o 10'0001100000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100101000
+ assign \spr_o 10'0001100001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100101001
+ assign \spr_o 10'0001100010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100101010
+ assign \spr_o 10'0001100011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100101011
+ assign \spr_o 10'0001100100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100101111
+ assign \spr_o 10'0001100101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100110000
+ assign \spr_o 10'0001100110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100110111
+ assign \spr_o 10'0001100111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1101010000
+ assign \spr_o 10'0001101000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1101010001
+ assign \spr_o 10'0001101001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1101010111
+ assign \spr_o 10'0001101010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1110000000
+ assign \spr_o 10'0001101011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1110000010
+ assign \spr_o 10'0001101100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1111111111
+ assign \spr_o 10'0001101101
+ end
+ sync init
+ end
+end
+attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.pdecode2.dec_a"
module \dec_a
attribute \enum_base_type "In1Sel"
attribute \enum_value_010 "RA_OR_ZERO"
attribute \enum_value_011 "SPR"
attribute \enum_value_100 "RS"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:57"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:80"
wire width 3 input 0 \sel_in
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
wire width 5 output 2 \reg_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 3 \reg_a_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:60"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:83"
wire width 1 output 4 \immz_out
+ attribute \enum_base_type "SPR"
+ attribute \enum_value_0000000001 "XER"
+ attribute \enum_value_0000000011 "DSCR"
+ attribute \enum_value_0000001000 "LR"
+ attribute \enum_value_0000001001 "CTR"
+ attribute \enum_value_0000001101 "AMR"
+ attribute \enum_value_0000010001 "DSCR_priv"
+ attribute \enum_value_0000010010 "DSISR"
+ attribute \enum_value_0000010011 "DAR"
+ attribute \enum_value_0000010110 "DEC"
+ attribute \enum_value_0000011010 "SRR0"
+ attribute \enum_value_0000011011 "SRR1"
+ attribute \enum_value_0000011100 "CFAR"
+ attribute \enum_value_0000011101 "AMR_priv"
+ attribute \enum_value_0000110000 "PIDR"
+ attribute \enum_value_0000111101 "IAMR"
+ attribute \enum_value_0010000000 "TFHAR"
+ attribute \enum_value_0010000001 "TFIAR"
+ attribute \enum_value_0010000010 "TEXASR"
+ attribute \enum_value_0010000011 "TEXASRU"
+ attribute \enum_value_0010001000 "CTRL"
+ attribute \enum_value_0010010000 "TIDR"
+ attribute \enum_value_0010011000 "CTRL_priv"
+ attribute \enum_value_0010011001 "FSCR"
+ attribute \enum_value_0010011101 "UAMOR"
+ attribute \enum_value_0010011110 "GSR"
+ attribute \enum_value_0010011111 "PSPB"
+ attribute \enum_value_0010110000 "DPDES"
+ attribute \enum_value_0010110100 "DAWR0"
+ attribute \enum_value_0010111010 "RPR"
+ attribute \enum_value_0010111011 "CIABR"
+ attribute \enum_value_0010111100 "DAWRX0"
+ attribute \enum_value_0010111110 "HFSCR"
+ attribute \enum_value_0100000000 "VRSAVE"
+ attribute \enum_value_0100000011 "SPRG3"
+ attribute \enum_value_0100001100 "TB"
+ attribute \enum_value_0100001101 "TBU"
+ attribute \enum_value_0100010000 "SPRG0_priv"
+ attribute \enum_value_0100010001 "SPRG1_priv"
+ attribute \enum_value_0100010010 "SPRG2_priv"
+ attribute \enum_value_0100010011 "SPRG3_priv"
+ attribute \enum_value_0100011011 "CIR"
+ attribute \enum_value_0100011100 "TBL"
+ attribute \enum_value_0100011101 "TBU_hypv"
+ attribute \enum_value_0100011110 "TBU40"
+ attribute \enum_value_0100011111 "PVR"
+ attribute \enum_value_0100110000 "HSPRG0"
+ attribute \enum_value_0100110001 "HSPRG1"
+ attribute \enum_value_0100110010 "HDSISR"
+ attribute \enum_value_0100110011 "HDAR"
+ attribute \enum_value_0100110100 "SPURR"
+ attribute \enum_value_0100110101 "PURR"
+ attribute \enum_value_0100110110 "HDEC"
+ attribute \enum_value_0100111001 "HRMOR"
+ attribute \enum_value_0100111010 "HSRR0"
+ attribute \enum_value_0100111011 "HSRR1"
+ attribute \enum_value_0100111110 "LPCR"
+ attribute \enum_value_0100111111 "LPIDR"
+ attribute \enum_value_0101010000 "HMER"
+ attribute \enum_value_0101010001 "HMEER"
+ attribute \enum_value_0101010010 "PCR"
+ attribute \enum_value_0101010011 "HEIR"
+ attribute \enum_value_0101011101 "AMOR"
+ attribute \enum_value_0110111110 "TIR"
+ attribute \enum_value_0111010000 "PTCR"
+ attribute \enum_value_1100000000 "SIER"
+ attribute \enum_value_1100000001 "MMCR2"
+ attribute \enum_value_1100000010 "MMCRA"
+ attribute \enum_value_1100000011 "PMC1"
+ attribute \enum_value_1100000100 "PMC2"
+ attribute \enum_value_1100000101 "PMC3"
+ attribute \enum_value_1100000110 "PMC4"
+ attribute \enum_value_1100000111 "PMC5"
+ attribute \enum_value_1100001000 "PMC6"
+ attribute \enum_value_1100001011 "MMCR0"
+ attribute \enum_value_1100001100 "SIAR"
+ attribute \enum_value_1100001101 "SDAR"
+ attribute \enum_value_1100001110 "MMCR1"
+ attribute \enum_value_1100010000 "SIER_priv"
+ attribute \enum_value_1100010001 "MMCR2_priv"
+ attribute \enum_value_1100010010 "MMCRA_priv"
+ attribute \enum_value_1100010011 "PMC1_priv"
+ attribute \enum_value_1100010100 "PMC2_priv"
+ attribute \enum_value_1100010101 "PMC3_priv"
+ attribute \enum_value_1100010110 "PMC4_priv"
+ attribute \enum_value_1100010111 "PMC5_priv"
+ attribute \enum_value_1100011000 "PMC6_priv"
+ attribute \enum_value_1100011011 "MMCR0_priv"
+ attribute \enum_value_1100011100 "SIAR_priv"
+ attribute \enum_value_1100011101 "SDAR_priv"
+ attribute \enum_value_1100011110 "MMCR1_priv"
+ attribute \enum_value_1100100000 "BESCRS"
+ attribute \enum_value_1100100001 "BESCRSU"
+ attribute \enum_value_1100100010 "BESCRR"
+ attribute \enum_value_1100100011 "BESCRRU"
+ attribute \enum_value_1100100100 "EBBHR"
+ attribute \enum_value_1100100101 "EBBRR"
+ attribute \enum_value_1100100110 "BESCR"
+ attribute \enum_value_1100101000 "reserved808"
+ attribute \enum_value_1100101001 "reserved809"
+ attribute \enum_value_1100101010 "reserved810"
+ attribute \enum_value_1100101011 "reserved811"
+ attribute \enum_value_1100101111 "TAR"
+ attribute \enum_value_1100110000 "ASDR"
+ attribute \enum_value_1100110111 "PSSCR"
+ attribute \enum_value_1101010000 "IC"
+ attribute \enum_value_1101010001 "VTB"
+ attribute \enum_value_1101010111 "PSSCR_hypv"
+ attribute \enum_value_1110000000 "PPR"
+ attribute \enum_value_1110000010 "PPR32"
+ attribute \enum_value_1111111111 "PIR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 10 output 5 \spr_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 10 input 12 \SPR
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:335"
wire width 10 input 13 \XL_XO
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:69"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:59"
+ wire width 10 \sprmap_spr_i
+ attribute \enum_base_type "SPR"
+ attribute \enum_value_0000000001 "XER"
+ attribute \enum_value_0000000011 "DSCR"
+ attribute \enum_value_0000001000 "LR"
+ attribute \enum_value_0000001001 "CTR"
+ attribute \enum_value_0000001101 "AMR"
+ attribute \enum_value_0000010001 "DSCR_priv"
+ attribute \enum_value_0000010010 "DSISR"
+ attribute \enum_value_0000010011 "DAR"
+ attribute \enum_value_0000010110 "DEC"
+ attribute \enum_value_0000011010 "SRR0"
+ attribute \enum_value_0000011011 "SRR1"
+ attribute \enum_value_0000011100 "CFAR"
+ attribute \enum_value_0000011101 "AMR_priv"
+ attribute \enum_value_0000110000 "PIDR"
+ attribute \enum_value_0000111101 "IAMR"
+ attribute \enum_value_0010000000 "TFHAR"
+ attribute \enum_value_0010000001 "TFIAR"
+ attribute \enum_value_0010000010 "TEXASR"
+ attribute \enum_value_0010000011 "TEXASRU"
+ attribute \enum_value_0010001000 "CTRL"
+ attribute \enum_value_0010010000 "TIDR"
+ attribute \enum_value_0010011000 "CTRL_priv"
+ attribute \enum_value_0010011001 "FSCR"
+ attribute \enum_value_0010011101 "UAMOR"
+ attribute \enum_value_0010011110 "GSR"
+ attribute \enum_value_0010011111 "PSPB"
+ attribute \enum_value_0010110000 "DPDES"
+ attribute \enum_value_0010110100 "DAWR0"
+ attribute \enum_value_0010111010 "RPR"
+ attribute \enum_value_0010111011 "CIABR"
+ attribute \enum_value_0010111100 "DAWRX0"
+ attribute \enum_value_0010111110 "HFSCR"
+ attribute \enum_value_0100000000 "VRSAVE"
+ attribute \enum_value_0100000011 "SPRG3"
+ attribute \enum_value_0100001100 "TB"
+ attribute \enum_value_0100001101 "TBU"
+ attribute \enum_value_0100010000 "SPRG0_priv"
+ attribute \enum_value_0100010001 "SPRG1_priv"
+ attribute \enum_value_0100010010 "SPRG2_priv"
+ attribute \enum_value_0100010011 "SPRG3_priv"
+ attribute \enum_value_0100011011 "CIR"
+ attribute \enum_value_0100011100 "TBL"
+ attribute \enum_value_0100011101 "TBU_hypv"
+ attribute \enum_value_0100011110 "TBU40"
+ attribute \enum_value_0100011111 "PVR"
+ attribute \enum_value_0100110000 "HSPRG0"
+ attribute \enum_value_0100110001 "HSPRG1"
+ attribute \enum_value_0100110010 "HDSISR"
+ attribute \enum_value_0100110011 "HDAR"
+ attribute \enum_value_0100110100 "SPURR"
+ attribute \enum_value_0100110101 "PURR"
+ attribute \enum_value_0100110110 "HDEC"
+ attribute \enum_value_0100111001 "HRMOR"
+ attribute \enum_value_0100111010 "HSRR0"
+ attribute \enum_value_0100111011 "HSRR1"
+ attribute \enum_value_0100111110 "LPCR"
+ attribute \enum_value_0100111111 "LPIDR"
+ attribute \enum_value_0101010000 "HMER"
+ attribute \enum_value_0101010001 "HMEER"
+ attribute \enum_value_0101010010 "PCR"
+ attribute \enum_value_0101010011 "HEIR"
+ attribute \enum_value_0101011101 "AMOR"
+ attribute \enum_value_0110111110 "TIR"
+ attribute \enum_value_0111010000 "PTCR"
+ attribute \enum_value_1100000000 "SIER"
+ attribute \enum_value_1100000001 "MMCR2"
+ attribute \enum_value_1100000010 "MMCRA"
+ attribute \enum_value_1100000011 "PMC1"
+ attribute \enum_value_1100000100 "PMC2"
+ attribute \enum_value_1100000101 "PMC3"
+ attribute \enum_value_1100000110 "PMC4"
+ attribute \enum_value_1100000111 "PMC5"
+ attribute \enum_value_1100001000 "PMC6"
+ attribute \enum_value_1100001011 "MMCR0"
+ attribute \enum_value_1100001100 "SIAR"
+ attribute \enum_value_1100001101 "SDAR"
+ attribute \enum_value_1100001110 "MMCR1"
+ attribute \enum_value_1100010000 "SIER_priv"
+ attribute \enum_value_1100010001 "MMCR2_priv"
+ attribute \enum_value_1100010010 "MMCRA_priv"
+ attribute \enum_value_1100010011 "PMC1_priv"
+ attribute \enum_value_1100010100 "PMC2_priv"
+ attribute \enum_value_1100010101 "PMC3_priv"
+ attribute \enum_value_1100010110 "PMC4_priv"
+ attribute \enum_value_1100010111 "PMC5_priv"
+ attribute \enum_value_1100011000 "PMC6_priv"
+ attribute \enum_value_1100011011 "MMCR0_priv"
+ attribute \enum_value_1100011100 "SIAR_priv"
+ attribute \enum_value_1100011101 "SDAR_priv"
+ attribute \enum_value_1100011110 "MMCR1_priv"
+ attribute \enum_value_1100100000 "BESCRS"
+ attribute \enum_value_1100100001 "BESCRSU"
+ attribute \enum_value_1100100010 "BESCRR"
+ attribute \enum_value_1100100011 "BESCRRU"
+ attribute \enum_value_1100100100 "EBBHR"
+ attribute \enum_value_1100100101 "EBBRR"
+ attribute \enum_value_1100100110 "BESCR"
+ attribute \enum_value_1100101000 "reserved808"
+ attribute \enum_value_1100101001 "reserved809"
+ attribute \enum_value_1100101010 "reserved810"
+ attribute \enum_value_1100101011 "reserved811"
+ attribute \enum_value_1100101111 "TAR"
+ attribute \enum_value_1100110000 "ASDR"
+ attribute \enum_value_1100110111 "PSSCR"
+ attribute \enum_value_1101010000 "IC"
+ attribute \enum_value_1101010001 "VTB"
+ attribute \enum_value_1101010111 "PSSCR_hypv"
+ attribute \enum_value_1110000000 "PPR"
+ attribute \enum_value_1110000010 "PPR32"
+ attribute \enum_value_1111111111 "PIR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:60"
+ wire width 10 \sprmap_spr_o
+ cell \sprmap \sprmap
+ connect \spr_i \sprmap_spr_i
+ connect \spr_o \sprmap_spr_o
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:93"
wire width 5 \ra
process $group_0
assign \ra 5'00000
assign \ra \RA
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:71"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:95"
wire width 1 $1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:71"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:95"
cell $eq $2
parameter \A_SIGNED 0
parameter \A_WIDTH 3
connect \B 3'001
connect \Y $1
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:72"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:96"
wire width 1 $3
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:72"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:96"
cell $eq $4
parameter \A_SIGNED 0
parameter \A_WIDTH 3
connect \B 3'010
connect \Y $3
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
wire width 1 $5
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
cell $ne $6
parameter \A_SIGNED 0
parameter \A_WIDTH 5
connect \B 5'00000
connect \Y $5
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
wire width 1 $7
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
cell $and $8
parameter \A_SIGNED 0
parameter \A_WIDTH 1
connect \B $5
connect \Y $7
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
wire width 1 $9
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
cell $or $10
parameter \A_SIGNED 0
parameter \A_WIDTH 1
connect \B $7
connect \Y $9
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:83"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:107"
wire width 1 $11
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:83"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:107"
cell $eq $12
parameter \A_SIGNED 0
parameter \A_WIDTH 3
end
process $group_1
assign \reg_a 5'00000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
switch { $9 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
case 1'1
assign \reg_a \ra
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:83"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:107"
switch { $11 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:83"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:107"
case 1'1
assign \reg_a \RS
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:71"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:95"
wire width 1 $13
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:71"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:95"
cell $eq $14
parameter \A_SIGNED 0
parameter \A_WIDTH 3
connect \B 3'001
connect \Y $13
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:72"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:96"
wire width 1 $15
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:72"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:96"
cell $eq $16
parameter \A_SIGNED 0
parameter \A_WIDTH 3
connect \B 3'010
connect \Y $15
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
wire width 1 $17
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
cell $ne $18
parameter \A_SIGNED 0
parameter \A_WIDTH 5
connect \B 5'00000
connect \Y $17
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
wire width 1 $19
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
cell $and $20
parameter \A_SIGNED 0
parameter \A_WIDTH 1
connect \B $17
connect \Y $19
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
wire width 1 $21
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
cell $or $22
parameter \A_SIGNED 0
parameter \A_WIDTH 1
connect \B $19
connect \Y $21
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:83"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:107"
wire width 1 $23
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:83"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:107"
cell $eq $24
parameter \A_SIGNED 0
parameter \A_WIDTH 3
end
process $group_2
assign \reg_a_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
switch { $21 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
case 1'1
assign \reg_a_ok 1'1
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:83"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:107"
switch { $23 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:83"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:107"
case 1'1
assign \reg_a_ok 1'1
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:78"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:102"
wire width 1 $25
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:78"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:102"
cell $eq $26
parameter \A_SIGNED 0
parameter \A_WIDTH 3
connect \B 3'010
connect \Y $25
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:79"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:103"
wire width 1 $27
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:79"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:103"
cell $eq $28
parameter \A_SIGNED 0
parameter \A_WIDTH 5
connect \B 5'00000
connect \Y $27
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:79"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:103"
wire width 1 $29
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:79"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:103"
cell $and $30
parameter \A_SIGNED 0
parameter \A_WIDTH 1
end
process $group_3
assign \immz_out 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:79"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:103"
switch { $29 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:79"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:103"
case 1'1
assign \immz_out 1'1
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:90"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:114"
wire width 1 $31
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:90"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:114"
cell $eq $32
parameter \A_SIGNED 0
parameter \A_WIDTH 7
connect \B 7'0000111
connect \Y $31
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:94"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:118"
wire width 1 $33
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:94"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:118"
cell $eq $34
parameter \A_SIGNED 0
parameter \A_WIDTH 7
connect \B 7'0001000
connect \Y $33
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:91"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:115"
wire width 1 $35
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:91"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:115"
cell $not $36
parameter \A_SIGNED 0
parameter \A_WIDTH 1
connect \A \BO [2]
connect \Y $35
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:121"
wire width 1 $37
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:121"
cell $not $38
parameter \A_SIGNED 0
parameter \A_WIDTH 1
connect \A \XL_XO [5]
connect \Y $37
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:121"
wire width 1 $39
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:121"
cell $and $40
parameter \A_SIGNED 0
parameter \A_WIDTH 1
connect \B $37
connect \Y $39
end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ wire width 1 $41
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ cell $eq $42
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 7
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 7
+ parameter \Y_WIDTH 1
+ connect \A \internal_op
+ connect \B 7'0101110
+ connect \Y $41
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:127"
+ wire width 10 \spr
process $group_4
assign \fast_a 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:90"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:114"
switch { $33 $31 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:90"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:114"
case 2'-1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:91"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:115"
switch { $35 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:91"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:115"
case 1'1
assign \fast_a 3'010
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:94"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:118"
case 2'1-
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:121"
switch { $39 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:121"
case 1'1
assign \fast_a 3'010
end
end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ switch { $41 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ case 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:129"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:131"
+ case 10'0000001001
+ assign \fast_a 3'010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:134"
+ case 10'0000001000
+ assign \fast_a 3'011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:137"
+ case 10'1100101111
+ assign \fast_a 3'100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:140"
+ case 10'0000011010
+ assign \fast_a 3'101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:143"
+ case 10'0000011011
+ assign \fast_a 3'110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:146"
+ case 10'0000000001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:150"
+ case
+ end
+ end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:90"
- wire width 1 $41
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:90"
- cell $eq $42
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:114"
+ wire width 1 $43
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:114"
+ cell $eq $44
parameter \A_SIGNED 0
parameter \A_WIDTH 7
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \internal_op
connect \B 7'0000111
- connect \Y $41
+ connect \Y $43
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:94"
- wire width 1 $43
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:94"
- cell $eq $44
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:118"
+ wire width 1 $45
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:118"
+ cell $eq $46
parameter \A_SIGNED 0
parameter \A_WIDTH 7
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \internal_op
connect \B 7'0001000
- connect \Y $43
+ connect \Y $45
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:91"
- wire width 1 $45
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:91"
- cell $not $46
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:115"
+ wire width 1 $47
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:115"
+ cell $not $48
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \Y_WIDTH 1
connect \A \BO [2]
- connect \Y $45
+ connect \Y $47
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
- wire width 1 $47
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
- cell $not $48
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:121"
+ wire width 1 $49
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:121"
+ cell $not $50
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \Y_WIDTH 1
connect \A \XL_XO [5]
- connect \Y $47
+ connect \Y $49
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
- wire width 1 $49
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
- cell $and $50
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:121"
+ wire width 1 $51
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:121"
+ cell $and $52
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
connect \A \XL_XO [9]
- connect \B $47
- connect \Y $49
+ connect \B $49
+ connect \Y $51
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ wire width 1 $53
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ cell $eq $54
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 7
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 7
+ parameter \Y_WIDTH 1
+ connect \A \internal_op
+ connect \B 7'0101110
+ connect \Y $53
end
process $group_5
assign \fast_a_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:90"
- switch { $43 $41 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:90"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:114"
+ switch { $45 $43 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:114"
case 2'-1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:91"
- switch { $45 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:91"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:115"
+ switch { $47 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:115"
case 1'1
assign \fast_a_ok 1'1
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:94"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:118"
case 2'1-
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
- switch { $49 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:97"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:121"
+ switch { $51 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:121"
case 1'1
assign \fast_a_ok 1'1
end
end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ switch { $53 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ case 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:129"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:131"
+ case 10'0000001001
+ assign \fast_a_ok 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:134"
+ case 10'0000001000
+ assign \fast_a_ok 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:137"
+ case 10'1100101111
+ assign \fast_a_ok 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:140"
+ case 10'0000011010
+ assign \fast_a_ok 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:143"
+ case 10'0000011011
+ assign \fast_a_ok 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:146"
+ case 10'0000000001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:150"
+ case
+ end
+ end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:102"
- wire width 1 $51
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:102"
- cell $eq $52
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ wire width 1 $55
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ cell $eq $56
parameter \A_SIGNED 0
parameter \A_WIDTH 7
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \internal_op
connect \B 7'0101110
- connect \Y $51
+ connect \Y $55
end
process $group_6
- assign \spr_a 10'0000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:102"
- switch { $51 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:102"
+ assign \spr 10'0000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ switch { $55 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
case 1'1
- assign \spr_a \SPR
+ assign \spr { \SPR [4:0] \SPR [9:5] }
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:102"
- wire width 1 $53
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:102"
- cell $eq $54
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ wire width 1 $57
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ cell $eq $58
parameter \A_SIGNED 0
parameter \A_WIDTH 7
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \internal_op
connect \B 7'0101110
- connect \Y $53
+ connect \Y $57
end
process $group_7
+ assign \sprmap_spr_i 10'0000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ switch { $57 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ case 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:129"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:131"
+ case 10'0000001001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:134"
+ case 10'0000001000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:137"
+ case 10'1100101111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:140"
+ case 10'0000011010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:143"
+ case 10'0000011011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:146"
+ case 10'0000000001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:150"
+ case
+ assign \sprmap_spr_i \spr
+ end
+ end
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ wire width 1 $59
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ cell $eq $60
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 7
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 7
+ parameter \Y_WIDTH 1
+ connect \A \internal_op
+ connect \B 7'0101110
+ connect \Y $59
+ end
+ process $group_8
+ assign \spr_a 10'0000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ switch { $59 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ case 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:129"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:131"
+ case 10'0000001001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:134"
+ case 10'0000001000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:137"
+ case 10'1100101111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:140"
+ case 10'0000011010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:143"
+ case 10'0000011011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:146"
+ case 10'0000000001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:150"
+ case
+ assign \spr_a \sprmap_spr_o
+ end
+ end
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ wire width 1 $61
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ cell $eq $62
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 7
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 7
+ parameter \Y_WIDTH 1
+ connect \A \internal_op
+ connect \B 7'0101110
+ connect \Y $61
+ end
+ process $group_9
assign \spr_a_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:102"
- switch { $53 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:102"
- case 1'1
- assign \spr_a_ok 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ switch { $61 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:126"
+ case 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:129"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:131"
+ case 10'0000001001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:134"
+ case 10'0000001000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:137"
+ case 10'1100101111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:140"
+ case 10'0000011010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:143"
+ case 10'0000011011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:146"
+ case 10'0000000001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:150"
+ case
+ assign \spr_a_ok 1'1
+ end
end
sync init
end
attribute \enum_value_1011 "CONST_SH32"
attribute \enum_value_1100 "SPR"
attribute \enum_value_1101 "RS"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:121"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:170"
wire width 4 input 0 \sel_in
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
wire width 10 input 17 \XL_XO
process $group_0
assign \reg_b 5'00000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:132"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:181"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:133"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:182"
attribute \nmigen.decoding "RB/1"
case 4'0001
assign \reg_b \RB
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:136"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:185"
attribute \nmigen.decoding "RS/13"
case 4'1101
assign \reg_b \RS
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:139"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:188"
attribute \nmigen.decoding "CONST_UI/2"
case 4'0010
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:142"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:191"
attribute \nmigen.decoding "CONST_SI/3"
case 4'0011
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:146"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:195"
attribute \nmigen.decoding "CONST_UI_HI/4"
case 4'0100
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:149"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:198"
attribute \nmigen.decoding "CONST_SI_HI/5"
case 4'0101
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:154"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:203"
attribute \nmigen.decoding "CONST_LI/6"
case 4'0110
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:157"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:206"
attribute \nmigen.decoding "CONST_BD/7"
case 4'0111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:160"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:209"
attribute \nmigen.decoding "CONST_DS/8"
case 4'1000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:163"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:212"
attribute \nmigen.decoding "CONST_M1/9"
case 4'1001
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:166"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:215"
attribute \nmigen.decoding "CONST_SH/10"
case 4'1010
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:169"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:218"
attribute \nmigen.decoding "CONST_SH32/11"
case 4'1011
end
end
process $group_1
assign \reg_b_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:132"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:181"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:133"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:182"
attribute \nmigen.decoding "RB/1"
case 4'0001
assign \reg_b_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:136"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:185"
attribute \nmigen.decoding "RS/13"
case 4'1101
assign \reg_b_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:139"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:188"
attribute \nmigen.decoding "CONST_UI/2"
case 4'0010
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:142"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:191"
attribute \nmigen.decoding "CONST_SI/3"
case 4'0011
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:146"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:195"
attribute \nmigen.decoding "CONST_UI_HI/4"
case 4'0100
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:149"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:198"
attribute \nmigen.decoding "CONST_SI_HI/5"
case 4'0101
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:154"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:203"
attribute \nmigen.decoding "CONST_LI/6"
case 4'0110
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:157"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:206"
attribute \nmigen.decoding "CONST_BD/7"
case 4'0111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:160"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:209"
attribute \nmigen.decoding "CONST_DS/8"
case 4'1000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:163"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:212"
attribute \nmigen.decoding "CONST_M1/9"
case 4'1001
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:166"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:215"
attribute \nmigen.decoding "CONST_SH/10"
case 4'1010
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:169"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:218"
attribute \nmigen.decoding "CONST_SH32/11"
case 4'1011
end
connect \A \UI
connect \Y $1
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:147"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:196"
wire width 64 $3
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:147"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:196"
wire width 47 $4
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:147"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:196"
cell $sshl $5
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \B 5'10000
connect \Y $4
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:147"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:196"
cell $pos $6
parameter \A_SIGNED 0
parameter \A_WIDTH 47
connect \A $4
connect \Y $3
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:150"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:199"
wire width 64 $7
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:150"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:199"
wire width 47 $8
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:150"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:199"
cell $sshl $9
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \B 5'10000
connect \Y $8
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:150"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:199"
cell $pos $10
parameter \A_SIGNED 0
parameter \A_WIDTH 47
connect \A $8
connect \Y $7
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $11
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $12
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $13
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $12
end
connect $11 $12
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $14
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $15
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $16
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $15
end
connect $14 $15
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $17
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $18
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $19
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $18
end
connect $17 $18
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $20
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $21
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $22
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $21
end
connect $20 $21
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $23
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $24
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $25
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $24
end
connect $23 $24
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $26
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $27
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $28
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $27
end
connect $26 $27
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $29
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $30
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $31
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $30
end
connect $29 $30
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $32
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $33
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $34
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $33
end
connect $32 $33
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $35
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $36
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $37
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $36
end
connect $35 $36
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $38
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $39
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $40
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $39
end
connect $38 $39
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $41
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $42
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $43
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $42
end
connect $41 $42
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $44
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $45
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $46
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $45
end
connect $44 $45
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $47
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $48
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $49
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $48
end
connect $47 $48
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $50
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $51
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $52
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $51
end
connect $50 $51
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $53
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $54
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $55
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $54
end
connect $53 $54
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $56
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $57
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $58
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $57
end
connect $56 $57
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $59
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $60
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $61
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $60
end
connect $59 $60
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $62
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $63
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $64
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $63
end
connect $62 $63
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $65
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $66
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $67
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $66
end
connect $65 $66
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $68
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $69
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $70
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $69
end
connect $68 $69
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $71
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $72
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $73
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $72
end
connect $71 $72
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $74
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $75
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $76
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $75
end
connect $74 $75
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $77
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $78
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $79
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $78
end
connect $77 $78
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $80
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $81
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $82
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $81
end
connect $80 $81
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $83
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $84
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $85
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $84
end
connect $83 $84
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $86
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $87
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $88
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $87
end
connect $86 $87
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $89
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $90
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $91
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $90
end
connect $89 $90
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $92
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $93
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $94
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $93
end
connect $92 $93
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $95
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $96
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $97
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $96
end
connect $95 $96
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $98
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $99
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $100
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $99
end
connect $98 $99
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $101
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $102
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $103
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $102
end
connect $101 $102
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $104
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $105
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $106
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $105
end
connect $104 $105
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $107
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
wire width 47 $108
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:201"
cell $sshl $109
parameter \A_SIGNED 0
parameter \A_WIDTH 16
connect \Y $108
end
connect $107 $108
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:155"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:204"
wire width 64 $110
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:155"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:204"
wire width 27 $111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:155"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:204"
cell $sshl $112
parameter \A_SIGNED 0
parameter \A_WIDTH 24
connect \B 2'10
connect \Y $111
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:155"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:204"
cell $pos $113
parameter \A_SIGNED 0
parameter \A_WIDTH 27
connect \A $111
connect \Y $110
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:158"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:207"
wire width 64 $114
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:158"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:207"
wire width 17 $115
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:158"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:207"
cell $sshl $116
parameter \A_SIGNED 0
parameter \A_WIDTH 14
connect \B 2'10
connect \Y $115
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:158"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:207"
cell $pos $117
parameter \A_SIGNED 0
parameter \A_WIDTH 17
connect \A $115
connect \Y $114
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:161"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:210"
wire width 64 $118
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:161"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:210"
wire width 17 $119
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:161"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:210"
cell $sshl $120
parameter \A_SIGNED 0
parameter \A_WIDTH 14
connect \B 2'10
connect \Y $119
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:161"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:210"
cell $pos $121
parameter \A_SIGNED 0
parameter \A_WIDTH 17
connect \A $119
connect \Y $118
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:213"
wire width 64 $122
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:213"
cell $not $123
parameter \A_SIGNED 0
parameter \A_WIDTH 64
end
process $group_2
assign \imm_b 64'0000000000000000000000000000000000000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:132"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:181"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:133"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:182"
attribute \nmigen.decoding "RB/1"
case 4'0001
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:136"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:185"
attribute \nmigen.decoding "RS/13"
case 4'1101
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:139"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:188"
attribute \nmigen.decoding "CONST_UI/2"
case 4'0010
assign \imm_b $1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:142"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:191"
attribute \nmigen.decoding "CONST_SI/3"
case 4'0011
assign \imm_b { { \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] \SI [15] } \SI }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:146"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:195"
attribute \nmigen.decoding "CONST_UI_HI/4"
case 4'0100
assign \imm_b $3
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:149"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:198"
attribute \nmigen.decoding "CONST_SI_HI/5"
case 4'0101
assign \imm_b $7
assign \imm_b { { $14 [31:0] [31] $17 [31:0] [31] $20 [31:0] [31] $23 [31:0] [31] $26 [31:0] [31] $29 [31:0] [31] $32 [31:0] [31] $35 [31:0] [31] $38 [31:0] [31] $41 [31:0] [31] $44 [31:0] [31] $47 [31:0] [31] $50 [31:0] [31] $53 [31:0] [31] $56 [31:0] [31] $59 [31:0] [31] $62 [31:0] [31] $65 [31:0] [31] $68 [31:0] [31] $71 [31:0] [31] $74 [31:0] [31] $77 [31:0] [31] $80 [31:0] [31] $83 [31:0] [31] $86 [31:0] [31] $89 [31:0] [31] $92 [31:0] [31] $95 [31:0] [31] $98 [31:0] [31] $101 [31:0] [31] $104 [31:0] [31] $107 [31:0] [31] } $11 [31:0] }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:154"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:203"
attribute \nmigen.decoding "CONST_LI/6"
case 4'0110
assign \imm_b $110
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:157"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:206"
attribute \nmigen.decoding "CONST_BD/7"
case 4'0111
assign \imm_b $114
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:160"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:209"
attribute \nmigen.decoding "CONST_DS/8"
case 4'1000
assign \imm_b $118
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:163"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:212"
attribute \nmigen.decoding "CONST_M1/9"
case 4'1001
assign \imm_b $122
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:166"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:215"
attribute \nmigen.decoding "CONST_SH/10"
case 4'1010
assign \imm_b $124
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:169"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:218"
attribute \nmigen.decoding "CONST_SH32/11"
case 4'1011
assign \imm_b $126
end
process $group_3
assign \imm_b_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:132"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:181"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:133"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:182"
attribute \nmigen.decoding "RB/1"
case 4'0001
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:136"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:185"
attribute \nmigen.decoding "RS/13"
case 4'1101
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:139"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:188"
attribute \nmigen.decoding "CONST_UI/2"
case 4'0010
assign \imm_b_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:142"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:191"
attribute \nmigen.decoding "CONST_SI/3"
case 4'0011
assign \imm_b_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:146"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:195"
attribute \nmigen.decoding "CONST_UI_HI/4"
case 4'0100
assign \imm_b_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:149"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:198"
attribute \nmigen.decoding "CONST_SI_HI/5"
case 4'0101
assign \imm_b_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:154"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:203"
attribute \nmigen.decoding "CONST_LI/6"
case 4'0110
assign \imm_b_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:157"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:206"
attribute \nmigen.decoding "CONST_BD/7"
case 4'0111
assign \imm_b_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:160"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:209"
attribute \nmigen.decoding "CONST_DS/8"
case 4'1000
assign \imm_b_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:163"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:212"
attribute \nmigen.decoding "CONST_M1/9"
case 4'1001
assign \imm_b_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:166"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:215"
attribute \nmigen.decoding "CONST_SH/10"
case 4'1010
assign \imm_b_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:169"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:218"
attribute \nmigen.decoding "CONST_SH32/11"
case 4'1011
assign \imm_b_ok 1'1
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:177"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:226"
wire width 1 $128
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:177"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:226"
cell $eq $129
parameter \A_SIGNED 0
parameter \A_WIDTH 7
connect \B 7'0001000
connect \Y $128
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:180"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:229"
wire width 1 $130
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:180"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:229"
cell $not $131
parameter \A_SIGNED 0
parameter \A_WIDTH 1
end
process $group_4
assign \fast_b 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:177"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:226"
switch { $128 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:177"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:226"
case 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:180"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:229"
switch { \XL_XO [5] $130 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:180"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:229"
case 2'-1
assign \fast_b 3'011
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:183"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:232"
case 2'1-
assign \fast_b 3'100
end
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:177"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:226"
wire width 1 $132
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:177"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:226"
cell $eq $133
parameter \A_SIGNED 0
parameter \A_WIDTH 7
connect \B 7'0001000
connect \Y $132
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:180"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:229"
wire width 1 $134
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:180"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:229"
cell $not $135
parameter \A_SIGNED 0
parameter \A_WIDTH 1
end
process $group_5
assign \fast_b_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:177"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:226"
switch { $132 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:177"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:226"
case 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:180"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:229"
switch { \XL_XO [5] $134 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:180"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:229"
case 2'-1
assign \fast_b_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:183"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:232"
case 2'1-
assign \fast_b_ok 1'1
end
attribute \enum_value_00 "NONE"
attribute \enum_value_01 "RS"
attribute \enum_value_10 "RB"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:198"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:247"
wire width 2 input 0 \sel_in
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 5 output 1 \reg_c
wire width 5 input 4 \RB
process $group_0
assign \reg_c 5'00000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:207"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:256"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:208"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:257"
attribute \nmigen.decoding "RB/2"
case 2'10
assign \reg_c \RB
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:211"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:260"
attribute \nmigen.decoding "RS/1"
case 2'01
assign \reg_c \RS
end
process $group_1
assign \reg_c_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:207"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:256"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:208"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:257"
attribute \nmigen.decoding "RB/2"
case 2'10
assign \reg_c_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:211"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:260"
attribute \nmigen.decoding "RS/1"
case 2'01
assign \reg_c_ok 1'1
end
end
attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.pdecode2.dec_o.sprmap"
+module \sprmap$1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:59"
+ wire width 10 input 0 \spr_i
+ attribute \enum_base_type "SPR"
+ attribute \enum_value_0000000001 "XER"
+ attribute \enum_value_0000000011 "DSCR"
+ attribute \enum_value_0000001000 "LR"
+ attribute \enum_value_0000001001 "CTR"
+ attribute \enum_value_0000001101 "AMR"
+ attribute \enum_value_0000010001 "DSCR_priv"
+ attribute \enum_value_0000010010 "DSISR"
+ attribute \enum_value_0000010011 "DAR"
+ attribute \enum_value_0000010110 "DEC"
+ attribute \enum_value_0000011010 "SRR0"
+ attribute \enum_value_0000011011 "SRR1"
+ attribute \enum_value_0000011100 "CFAR"
+ attribute \enum_value_0000011101 "AMR_priv"
+ attribute \enum_value_0000110000 "PIDR"
+ attribute \enum_value_0000111101 "IAMR"
+ attribute \enum_value_0010000000 "TFHAR"
+ attribute \enum_value_0010000001 "TFIAR"
+ attribute \enum_value_0010000010 "TEXASR"
+ attribute \enum_value_0010000011 "TEXASRU"
+ attribute \enum_value_0010001000 "CTRL"
+ attribute \enum_value_0010010000 "TIDR"
+ attribute \enum_value_0010011000 "CTRL_priv"
+ attribute \enum_value_0010011001 "FSCR"
+ attribute \enum_value_0010011101 "UAMOR"
+ attribute \enum_value_0010011110 "GSR"
+ attribute \enum_value_0010011111 "PSPB"
+ attribute \enum_value_0010110000 "DPDES"
+ attribute \enum_value_0010110100 "DAWR0"
+ attribute \enum_value_0010111010 "RPR"
+ attribute \enum_value_0010111011 "CIABR"
+ attribute \enum_value_0010111100 "DAWRX0"
+ attribute \enum_value_0010111110 "HFSCR"
+ attribute \enum_value_0100000000 "VRSAVE"
+ attribute \enum_value_0100000011 "SPRG3"
+ attribute \enum_value_0100001100 "TB"
+ attribute \enum_value_0100001101 "TBU"
+ attribute \enum_value_0100010000 "SPRG0_priv"
+ attribute \enum_value_0100010001 "SPRG1_priv"
+ attribute \enum_value_0100010010 "SPRG2_priv"
+ attribute \enum_value_0100010011 "SPRG3_priv"
+ attribute \enum_value_0100011011 "CIR"
+ attribute \enum_value_0100011100 "TBL"
+ attribute \enum_value_0100011101 "TBU_hypv"
+ attribute \enum_value_0100011110 "TBU40"
+ attribute \enum_value_0100011111 "PVR"
+ attribute \enum_value_0100110000 "HSPRG0"
+ attribute \enum_value_0100110001 "HSPRG1"
+ attribute \enum_value_0100110010 "HDSISR"
+ attribute \enum_value_0100110011 "HDAR"
+ attribute \enum_value_0100110100 "SPURR"
+ attribute \enum_value_0100110101 "PURR"
+ attribute \enum_value_0100110110 "HDEC"
+ attribute \enum_value_0100111001 "HRMOR"
+ attribute \enum_value_0100111010 "HSRR0"
+ attribute \enum_value_0100111011 "HSRR1"
+ attribute \enum_value_0100111110 "LPCR"
+ attribute \enum_value_0100111111 "LPIDR"
+ attribute \enum_value_0101010000 "HMER"
+ attribute \enum_value_0101010001 "HMEER"
+ attribute \enum_value_0101010010 "PCR"
+ attribute \enum_value_0101010011 "HEIR"
+ attribute \enum_value_0101011101 "AMOR"
+ attribute \enum_value_0110111110 "TIR"
+ attribute \enum_value_0111010000 "PTCR"
+ attribute \enum_value_1100000000 "SIER"
+ attribute \enum_value_1100000001 "MMCR2"
+ attribute \enum_value_1100000010 "MMCRA"
+ attribute \enum_value_1100000011 "PMC1"
+ attribute \enum_value_1100000100 "PMC2"
+ attribute \enum_value_1100000101 "PMC3"
+ attribute \enum_value_1100000110 "PMC4"
+ attribute \enum_value_1100000111 "PMC5"
+ attribute \enum_value_1100001000 "PMC6"
+ attribute \enum_value_1100001011 "MMCR0"
+ attribute \enum_value_1100001100 "SIAR"
+ attribute \enum_value_1100001101 "SDAR"
+ attribute \enum_value_1100001110 "MMCR1"
+ attribute \enum_value_1100010000 "SIER_priv"
+ attribute \enum_value_1100010001 "MMCR2_priv"
+ attribute \enum_value_1100010010 "MMCRA_priv"
+ attribute \enum_value_1100010011 "PMC1_priv"
+ attribute \enum_value_1100010100 "PMC2_priv"
+ attribute \enum_value_1100010101 "PMC3_priv"
+ attribute \enum_value_1100010110 "PMC4_priv"
+ attribute \enum_value_1100010111 "PMC5_priv"
+ attribute \enum_value_1100011000 "PMC6_priv"
+ attribute \enum_value_1100011011 "MMCR0_priv"
+ attribute \enum_value_1100011100 "SIAR_priv"
+ attribute \enum_value_1100011101 "SDAR_priv"
+ attribute \enum_value_1100011110 "MMCR1_priv"
+ attribute \enum_value_1100100000 "BESCRS"
+ attribute \enum_value_1100100001 "BESCRSU"
+ attribute \enum_value_1100100010 "BESCRR"
+ attribute \enum_value_1100100011 "BESCRRU"
+ attribute \enum_value_1100100100 "EBBHR"
+ attribute \enum_value_1100100101 "EBBRR"
+ attribute \enum_value_1100100110 "BESCR"
+ attribute \enum_value_1100101000 "reserved808"
+ attribute \enum_value_1100101001 "reserved809"
+ attribute \enum_value_1100101010 "reserved810"
+ attribute \enum_value_1100101011 "reserved811"
+ attribute \enum_value_1100101111 "TAR"
+ attribute \enum_value_1100110000 "ASDR"
+ attribute \enum_value_1100110111 "PSSCR"
+ attribute \enum_value_1101010000 "IC"
+ attribute \enum_value_1101010001 "VTB"
+ attribute \enum_value_1101010111 "PSSCR_hypv"
+ attribute \enum_value_1110000000 "PPR"
+ attribute \enum_value_1110000010 "PPR32"
+ attribute \enum_value_1111111111 "PIR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:60"
+ wire width 10 output 1 \spr_o
+ process $group_0
+ assign \spr_o 10'0000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:64"
+ switch \spr_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000000001
+ assign \spr_o 10'0000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000000011
+ assign \spr_o 10'0000000001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000001000
+ assign \spr_o 10'0000000010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000001001
+ assign \spr_o 10'0000000011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000001101
+ assign \spr_o 10'0000000100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000010001
+ assign \spr_o 10'0000000101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000010010
+ assign \spr_o 10'0000000110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000010011
+ assign \spr_o 10'0000000111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000010110
+ assign \spr_o 10'0000001000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000011010
+ assign \spr_o 10'0000001001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000011011
+ assign \spr_o 10'0000001010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000011100
+ assign \spr_o 10'0000001011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000011101
+ assign \spr_o 10'0000001100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000110000
+ assign \spr_o 10'0000001101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0000111101
+ assign \spr_o 10'0000001110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010000000
+ assign \spr_o 10'0000001111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010000001
+ assign \spr_o 10'0000010000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010000010
+ assign \spr_o 10'0000010001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010000011
+ assign \spr_o 10'0000010010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010001000
+ assign \spr_o 10'0000010011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010010000
+ assign \spr_o 10'0000010100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010011000
+ assign \spr_o 10'0000010101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010011001
+ assign \spr_o 10'0000010110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010011101
+ assign \spr_o 10'0000010111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010011110
+ assign \spr_o 10'0000011000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010011111
+ assign \spr_o 10'0000011001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010110000
+ assign \spr_o 10'0000011010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010110100
+ assign \spr_o 10'0000011011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010111010
+ assign \spr_o 10'0000011100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010111011
+ assign \spr_o 10'0000011101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010111100
+ assign \spr_o 10'0000011110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0010111110
+ assign \spr_o 10'0000011111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100000000
+ assign \spr_o 10'0000100000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100000011
+ assign \spr_o 10'0000100001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100001100
+ assign \spr_o 10'0000100010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100001101
+ assign \spr_o 10'0000100011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100010000
+ assign \spr_o 10'0000100100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100010001
+ assign \spr_o 10'0000100101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100010010
+ assign \spr_o 10'0000100110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100010011
+ assign \spr_o 10'0000100111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100011011
+ assign \spr_o 10'0000101000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100011100
+ assign \spr_o 10'0000101001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100011101
+ assign \spr_o 10'0000101010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100011110
+ assign \spr_o 10'0000101011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100011111
+ assign \spr_o 10'0000101100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100110000
+ assign \spr_o 10'0000101101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100110001
+ assign \spr_o 10'0000101110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100110010
+ assign \spr_o 10'0000101111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100110011
+ assign \spr_o 10'0000110000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100110100
+ assign \spr_o 10'0000110001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100110101
+ assign \spr_o 10'0000110010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100110110
+ assign \spr_o 10'0000110011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100111001
+ assign \spr_o 10'0000110100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100111010
+ assign \spr_o 10'0000110101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100111011
+ assign \spr_o 10'0000110110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100111110
+ assign \spr_o 10'0000110111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0100111111
+ assign \spr_o 10'0000111000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0101010000
+ assign \spr_o 10'0000111001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0101010001
+ assign \spr_o 10'0000111010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0101010010
+ assign \spr_o 10'0000111011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0101010011
+ assign \spr_o 10'0000111100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0101011101
+ assign \spr_o 10'0000111101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0110111110
+ assign \spr_o 10'0000111110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'0111010000
+ assign \spr_o 10'0000111111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100000000
+ assign \spr_o 10'0001000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100000001
+ assign \spr_o 10'0001000001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100000010
+ assign \spr_o 10'0001000010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100000011
+ assign \spr_o 10'0001000011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100000100
+ assign \spr_o 10'0001000100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100000101
+ assign \spr_o 10'0001000101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100000110
+ assign \spr_o 10'0001000110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100000111
+ assign \spr_o 10'0001000111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100001000
+ assign \spr_o 10'0001001000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100001011
+ assign \spr_o 10'0001001001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100001100
+ assign \spr_o 10'0001001010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100001101
+ assign \spr_o 10'0001001011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100001110
+ assign \spr_o 10'0001001100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100010000
+ assign \spr_o 10'0001001101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100010001
+ assign \spr_o 10'0001001110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100010010
+ assign \spr_o 10'0001001111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100010011
+ assign \spr_o 10'0001010000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100010100
+ assign \spr_o 10'0001010001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100010101
+ assign \spr_o 10'0001010010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100010110
+ assign \spr_o 10'0001010011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100010111
+ assign \spr_o 10'0001010100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100011000
+ assign \spr_o 10'0001010101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100011011
+ assign \spr_o 10'0001010110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100011100
+ assign \spr_o 10'0001010111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100011101
+ assign \spr_o 10'0001011000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100011110
+ assign \spr_o 10'0001011001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100100000
+ assign \spr_o 10'0001011010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100100001
+ assign \spr_o 10'0001011011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100100010
+ assign \spr_o 10'0001011100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100100011
+ assign \spr_o 10'0001011101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100100100
+ assign \spr_o 10'0001011110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100100101
+ assign \spr_o 10'0001011111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100100110
+ assign \spr_o 10'0001100000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100101000
+ assign \spr_o 10'0001100001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100101001
+ assign \spr_o 10'0001100010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100101010
+ assign \spr_o 10'0001100011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100101011
+ assign \spr_o 10'0001100100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100101111
+ assign \spr_o 10'0001100101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100110000
+ assign \spr_o 10'0001100110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1100110111
+ assign \spr_o 10'0001100111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1101010000
+ assign \spr_o 10'0001101000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1101010001
+ assign \spr_o 10'0001101001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1101010111
+ assign \spr_o 10'0001101010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1110000000
+ assign \spr_o 10'0001101011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1110000010
+ assign \spr_o 10'0001101100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:66"
+ case 10'1111111111
+ assign \spr_o 10'0001101101
+ end
+ sync init
+ end
+end
+attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.pdecode2.dec_o"
module \dec_o
attribute \enum_base_type "OutSel"
attribute \enum_value_01 "RT"
attribute \enum_value_10 "RA"
attribute \enum_value_11 "SPR"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:226"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:275"
wire width 2 input 0 \sel_in
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
wire width 5 output 2 \reg_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 3 \reg_o_ok
+ attribute \enum_base_type "SPR"
+ attribute \enum_value_0000000001 "XER"
+ attribute \enum_value_0000000011 "DSCR"
+ attribute \enum_value_0000001000 "LR"
+ attribute \enum_value_0000001001 "CTR"
+ attribute \enum_value_0000001101 "AMR"
+ attribute \enum_value_0000010001 "DSCR_priv"
+ attribute \enum_value_0000010010 "DSISR"
+ attribute \enum_value_0000010011 "DAR"
+ attribute \enum_value_0000010110 "DEC"
+ attribute \enum_value_0000011010 "SRR0"
+ attribute \enum_value_0000011011 "SRR1"
+ attribute \enum_value_0000011100 "CFAR"
+ attribute \enum_value_0000011101 "AMR_priv"
+ attribute \enum_value_0000110000 "PIDR"
+ attribute \enum_value_0000111101 "IAMR"
+ attribute \enum_value_0010000000 "TFHAR"
+ attribute \enum_value_0010000001 "TFIAR"
+ attribute \enum_value_0010000010 "TEXASR"
+ attribute \enum_value_0010000011 "TEXASRU"
+ attribute \enum_value_0010001000 "CTRL"
+ attribute \enum_value_0010010000 "TIDR"
+ attribute \enum_value_0010011000 "CTRL_priv"
+ attribute \enum_value_0010011001 "FSCR"
+ attribute \enum_value_0010011101 "UAMOR"
+ attribute \enum_value_0010011110 "GSR"
+ attribute \enum_value_0010011111 "PSPB"
+ attribute \enum_value_0010110000 "DPDES"
+ attribute \enum_value_0010110100 "DAWR0"
+ attribute \enum_value_0010111010 "RPR"
+ attribute \enum_value_0010111011 "CIABR"
+ attribute \enum_value_0010111100 "DAWRX0"
+ attribute \enum_value_0010111110 "HFSCR"
+ attribute \enum_value_0100000000 "VRSAVE"
+ attribute \enum_value_0100000011 "SPRG3"
+ attribute \enum_value_0100001100 "TB"
+ attribute \enum_value_0100001101 "TBU"
+ attribute \enum_value_0100010000 "SPRG0_priv"
+ attribute \enum_value_0100010001 "SPRG1_priv"
+ attribute \enum_value_0100010010 "SPRG2_priv"
+ attribute \enum_value_0100010011 "SPRG3_priv"
+ attribute \enum_value_0100011011 "CIR"
+ attribute \enum_value_0100011100 "TBL"
+ attribute \enum_value_0100011101 "TBU_hypv"
+ attribute \enum_value_0100011110 "TBU40"
+ attribute \enum_value_0100011111 "PVR"
+ attribute \enum_value_0100110000 "HSPRG0"
+ attribute \enum_value_0100110001 "HSPRG1"
+ attribute \enum_value_0100110010 "HDSISR"
+ attribute \enum_value_0100110011 "HDAR"
+ attribute \enum_value_0100110100 "SPURR"
+ attribute \enum_value_0100110101 "PURR"
+ attribute \enum_value_0100110110 "HDEC"
+ attribute \enum_value_0100111001 "HRMOR"
+ attribute \enum_value_0100111010 "HSRR0"
+ attribute \enum_value_0100111011 "HSRR1"
+ attribute \enum_value_0100111110 "LPCR"
+ attribute \enum_value_0100111111 "LPIDR"
+ attribute \enum_value_0101010000 "HMER"
+ attribute \enum_value_0101010001 "HMEER"
+ attribute \enum_value_0101010010 "PCR"
+ attribute \enum_value_0101010011 "HEIR"
+ attribute \enum_value_0101011101 "AMOR"
+ attribute \enum_value_0110111110 "TIR"
+ attribute \enum_value_0111010000 "PTCR"
+ attribute \enum_value_1100000000 "SIER"
+ attribute \enum_value_1100000001 "MMCR2"
+ attribute \enum_value_1100000010 "MMCRA"
+ attribute \enum_value_1100000011 "PMC1"
+ attribute \enum_value_1100000100 "PMC2"
+ attribute \enum_value_1100000101 "PMC3"
+ attribute \enum_value_1100000110 "PMC4"
+ attribute \enum_value_1100000111 "PMC5"
+ attribute \enum_value_1100001000 "PMC6"
+ attribute \enum_value_1100001011 "MMCR0"
+ attribute \enum_value_1100001100 "SIAR"
+ attribute \enum_value_1100001101 "SDAR"
+ attribute \enum_value_1100001110 "MMCR1"
+ attribute \enum_value_1100010000 "SIER_priv"
+ attribute \enum_value_1100010001 "MMCR2_priv"
+ attribute \enum_value_1100010010 "MMCRA_priv"
+ attribute \enum_value_1100010011 "PMC1_priv"
+ attribute \enum_value_1100010100 "PMC2_priv"
+ attribute \enum_value_1100010101 "PMC3_priv"
+ attribute \enum_value_1100010110 "PMC4_priv"
+ attribute \enum_value_1100010111 "PMC5_priv"
+ attribute \enum_value_1100011000 "PMC6_priv"
+ attribute \enum_value_1100011011 "MMCR0_priv"
+ attribute \enum_value_1100011100 "SIAR_priv"
+ attribute \enum_value_1100011101 "SDAR_priv"
+ attribute \enum_value_1100011110 "MMCR1_priv"
+ attribute \enum_value_1100100000 "BESCRS"
+ attribute \enum_value_1100100001 "BESCRSU"
+ attribute \enum_value_1100100010 "BESCRR"
+ attribute \enum_value_1100100011 "BESCRRU"
+ attribute \enum_value_1100100100 "EBBHR"
+ attribute \enum_value_1100100101 "EBBRR"
+ attribute \enum_value_1100100110 "BESCR"
+ attribute \enum_value_1100101000 "reserved808"
+ attribute \enum_value_1100101001 "reserved809"
+ attribute \enum_value_1100101010 "reserved810"
+ attribute \enum_value_1100101011 "reserved811"
+ attribute \enum_value_1100101111 "TAR"
+ attribute \enum_value_1100110000 "ASDR"
+ attribute \enum_value_1100110111 "PSSCR"
+ attribute \enum_value_1101010000 "IC"
+ attribute \enum_value_1101010001 "VTB"
+ attribute \enum_value_1101010111 "PSSCR_hypv"
+ attribute \enum_value_1110000000 "PPR"
+ attribute \enum_value_1110000010 "PPR32"
+ attribute \enum_value_1111111111 "PIR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 10 output 4 \spr_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 5 input 10 \BO
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:322"
wire width 10 input 11 \SPR
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:59"
+ wire width 10 \sprmap_spr_i
+ attribute \enum_base_type "SPR"
+ attribute \enum_value_0000000001 "XER"
+ attribute \enum_value_0000000011 "DSCR"
+ attribute \enum_value_0000001000 "LR"
+ attribute \enum_value_0000001001 "CTR"
+ attribute \enum_value_0000001101 "AMR"
+ attribute \enum_value_0000010001 "DSCR_priv"
+ attribute \enum_value_0000010010 "DSISR"
+ attribute \enum_value_0000010011 "DAR"
+ attribute \enum_value_0000010110 "DEC"
+ attribute \enum_value_0000011010 "SRR0"
+ attribute \enum_value_0000011011 "SRR1"
+ attribute \enum_value_0000011100 "CFAR"
+ attribute \enum_value_0000011101 "AMR_priv"
+ attribute \enum_value_0000110000 "PIDR"
+ attribute \enum_value_0000111101 "IAMR"
+ attribute \enum_value_0010000000 "TFHAR"
+ attribute \enum_value_0010000001 "TFIAR"
+ attribute \enum_value_0010000010 "TEXASR"
+ attribute \enum_value_0010000011 "TEXASRU"
+ attribute \enum_value_0010001000 "CTRL"
+ attribute \enum_value_0010010000 "TIDR"
+ attribute \enum_value_0010011000 "CTRL_priv"
+ attribute \enum_value_0010011001 "FSCR"
+ attribute \enum_value_0010011101 "UAMOR"
+ attribute \enum_value_0010011110 "GSR"
+ attribute \enum_value_0010011111 "PSPB"
+ attribute \enum_value_0010110000 "DPDES"
+ attribute \enum_value_0010110100 "DAWR0"
+ attribute \enum_value_0010111010 "RPR"
+ attribute \enum_value_0010111011 "CIABR"
+ attribute \enum_value_0010111100 "DAWRX0"
+ attribute \enum_value_0010111110 "HFSCR"
+ attribute \enum_value_0100000000 "VRSAVE"
+ attribute \enum_value_0100000011 "SPRG3"
+ attribute \enum_value_0100001100 "TB"
+ attribute \enum_value_0100001101 "TBU"
+ attribute \enum_value_0100010000 "SPRG0_priv"
+ attribute \enum_value_0100010001 "SPRG1_priv"
+ attribute \enum_value_0100010010 "SPRG2_priv"
+ attribute \enum_value_0100010011 "SPRG3_priv"
+ attribute \enum_value_0100011011 "CIR"
+ attribute \enum_value_0100011100 "TBL"
+ attribute \enum_value_0100011101 "TBU_hypv"
+ attribute \enum_value_0100011110 "TBU40"
+ attribute \enum_value_0100011111 "PVR"
+ attribute \enum_value_0100110000 "HSPRG0"
+ attribute \enum_value_0100110001 "HSPRG1"
+ attribute \enum_value_0100110010 "HDSISR"
+ attribute \enum_value_0100110011 "HDAR"
+ attribute \enum_value_0100110100 "SPURR"
+ attribute \enum_value_0100110101 "PURR"
+ attribute \enum_value_0100110110 "HDEC"
+ attribute \enum_value_0100111001 "HRMOR"
+ attribute \enum_value_0100111010 "HSRR0"
+ attribute \enum_value_0100111011 "HSRR1"
+ attribute \enum_value_0100111110 "LPCR"
+ attribute \enum_value_0100111111 "LPIDR"
+ attribute \enum_value_0101010000 "HMER"
+ attribute \enum_value_0101010001 "HMEER"
+ attribute \enum_value_0101010010 "PCR"
+ attribute \enum_value_0101010011 "HEIR"
+ attribute \enum_value_0101011101 "AMOR"
+ attribute \enum_value_0110111110 "TIR"
+ attribute \enum_value_0111010000 "PTCR"
+ attribute \enum_value_1100000000 "SIER"
+ attribute \enum_value_1100000001 "MMCR2"
+ attribute \enum_value_1100000010 "MMCRA"
+ attribute \enum_value_1100000011 "PMC1"
+ attribute \enum_value_1100000100 "PMC2"
+ attribute \enum_value_1100000101 "PMC3"
+ attribute \enum_value_1100000110 "PMC4"
+ attribute \enum_value_1100000111 "PMC5"
+ attribute \enum_value_1100001000 "PMC6"
+ attribute \enum_value_1100001011 "MMCR0"
+ attribute \enum_value_1100001100 "SIAR"
+ attribute \enum_value_1100001101 "SDAR"
+ attribute \enum_value_1100001110 "MMCR1"
+ attribute \enum_value_1100010000 "SIER_priv"
+ attribute \enum_value_1100010001 "MMCR2_priv"
+ attribute \enum_value_1100010010 "MMCRA_priv"
+ attribute \enum_value_1100010011 "PMC1_priv"
+ attribute \enum_value_1100010100 "PMC2_priv"
+ attribute \enum_value_1100010101 "PMC3_priv"
+ attribute \enum_value_1100010110 "PMC4_priv"
+ attribute \enum_value_1100010111 "PMC5_priv"
+ attribute \enum_value_1100011000 "PMC6_priv"
+ attribute \enum_value_1100011011 "MMCR0_priv"
+ attribute \enum_value_1100011100 "SIAR_priv"
+ attribute \enum_value_1100011101 "SDAR_priv"
+ attribute \enum_value_1100011110 "MMCR1_priv"
+ attribute \enum_value_1100100000 "BESCRS"
+ attribute \enum_value_1100100001 "BESCRSU"
+ attribute \enum_value_1100100010 "BESCRR"
+ attribute \enum_value_1100100011 "BESCRRU"
+ attribute \enum_value_1100100100 "EBBHR"
+ attribute \enum_value_1100100101 "EBBRR"
+ attribute \enum_value_1100100110 "BESCR"
+ attribute \enum_value_1100101000 "reserved808"
+ attribute \enum_value_1100101001 "reserved809"
+ attribute \enum_value_1100101010 "reserved810"
+ attribute \enum_value_1100101011 "reserved811"
+ attribute \enum_value_1100101111 "TAR"
+ attribute \enum_value_1100110000 "ASDR"
+ attribute \enum_value_1100110111 "PSSCR"
+ attribute \enum_value_1101010000 "IC"
+ attribute \enum_value_1101010001 "VTB"
+ attribute \enum_value_1101010111 "PSSCR_hypv"
+ attribute \enum_value_1110000000 "PPR"
+ attribute \enum_value_1110000010 "PPR32"
+ attribute \enum_value_1111111111 "PIR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:60"
+ wire width 10 \sprmap_spr_o
+ cell \sprmap$1 \sprmap
+ connect \spr_i \sprmap_spr_i
+ connect \spr_o \sprmap_spr_o
+ end
process $group_0
assign \reg_o 5'00000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:238"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:288"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:239"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:289"
attribute \nmigen.decoding "RT/1"
case 2'01
assign \reg_o \RT
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:242"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:292"
attribute \nmigen.decoding "RA/2"
case 2'10
assign \reg_o \RA
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:245"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:295"
attribute \nmigen.decoding "SPR/3"
case 2'11
end
end
process $group_1
assign \reg_o_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:238"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:288"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:239"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:289"
attribute \nmigen.decoding "RT/1"
case 2'01
assign \reg_o_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:242"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:292"
attribute \nmigen.decoding "RA/2"
case 2'10
assign \reg_o_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:245"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:295"
attribute \nmigen.decoding "SPR/3"
case 2'11
end
sync init
end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:296"
+ wire width 10 \spr
process $group_2
- assign \spr_o 10'0000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:238"
+ assign \spr 10'0000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:288"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:239"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:289"
attribute \nmigen.decoding "RT/1"
case 2'01
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:242"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:292"
attribute \nmigen.decoding "RA/2"
case 2'10
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:245"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:295"
attribute \nmigen.decoding "SPR/3"
case 2'11
- assign \spr_o \SPR
+ assign \spr { \SPR [4:0] \SPR [9:5] }
end
sync init
end
- process $group_3
- assign \spr_o_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:238"
- switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:239"
- attribute \nmigen.decoding "RT/1"
- case 2'01
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:242"
- attribute \nmigen.decoding "RA/2"
- case 2'10
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:245"
- attribute \nmigen.decoding "SPR/3"
- case 2'11
- assign \spr_o_ok 1'1
- end
- sync init
- end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:269"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
wire width 1 $1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:269"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
cell $eq $2
parameter \A_SIGNED 0
parameter \A_WIDTH 7
parameter \B_WIDTH 7
parameter \Y_WIDTH 1
connect \A \internal_op
- connect \B 7'0000111
+ connect \B 7'0110001
connect \Y $1
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:270"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:328"
wire width 1 $3
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:270"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:328"
cell $eq $4
parameter \A_SIGNED 0
parameter \A_WIDTH 7
parameter \B_WIDTH 7
parameter \Y_WIDTH 1
connect \A \internal_op
- connect \B 7'0001000
+ connect \B 7'0000111
connect \Y $3
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:270"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:329"
wire width 1 $5
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:270"
- cell $or $6
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:329"
+ cell $eq $6
parameter \A_SIGNED 0
- parameter \A_WIDTH 1
+ parameter \A_WIDTH 7
parameter \B_SIGNED 0
- parameter \B_WIDTH 1
+ parameter \B_WIDTH 7
parameter \Y_WIDTH 1
- connect \A $1
- connect \B $3
+ connect \A \internal_op
+ connect \B 7'0001000
connect \Y $5
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:271"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:329"
wire width 1 $7
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:271"
- cell $not $8
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:329"
+ cell $or $8
parameter \A_SIGNED 0
parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \BO [2]
+ connect \A $3
+ connect \B $5
connect \Y $7
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:276"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:330"
wire width 1 $9
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:276"
- cell $eq $10
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:330"
+ cell $not $10
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \BO [2]
+ connect \Y $9
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:335"
+ wire width 1 $11
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:335"
+ cell $eq $12
parameter \A_SIGNED 0
parameter \A_WIDTH 7
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \internal_op
connect \B 7'1000110
- connect \Y $9
+ connect \Y $11
end
- process $group_4
+ process $group_3
assign \fast_o 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:270"
- switch { $5 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:270"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:288"
+ switch \sel_in
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:289"
+ attribute \nmigen.decoding "RT/1"
+ case 2'01
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:292"
+ attribute \nmigen.decoding "RA/2"
+ case 2'10
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:295"
+ attribute \nmigen.decoding "SPR/3"
+ case 2'11
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ switch { $1 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ case 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:300"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:302"
+ case 10'0000001001
+ assign \fast_o 3'010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:305"
+ case 10'0000001000
+ assign \fast_o 3'011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:308"
+ case 10'1100101111
+ assign \fast_o 3'100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:311"
+ case 10'0000011010
+ assign \fast_o 3'101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:314"
+ case 10'0000011011
+ assign \fast_o 3'110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:317"
+ case 10'0000000001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:321"
+ case
+ end
+ end
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:329"
+ switch { $7 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:329"
case 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:271"
- switch { $7 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:271"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:330"
+ switch { $9 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:330"
case 1'1
assign \fast_o 3'010
end
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:276"
- switch { $9 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:276"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:335"
+ switch { $11 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:335"
case 1'1
assign \fast_o 3'101
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:269"
- wire width 1 $11
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:269"
- cell $eq $12
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ wire width 1 $13
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ cell $eq $14
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 7
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 7
+ parameter \Y_WIDTH 1
+ connect \A \internal_op
+ connect \B 7'0110001
+ connect \Y $13
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:328"
+ wire width 1 $15
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:328"
+ cell $eq $16
parameter \A_SIGNED 0
parameter \A_WIDTH 7
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \internal_op
connect \B 7'0000111
- connect \Y $11
+ connect \Y $15
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:270"
- wire width 1 $13
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:270"
- cell $eq $14
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:329"
+ wire width 1 $17
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:329"
+ cell $eq $18
parameter \A_SIGNED 0
parameter \A_WIDTH 7
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \internal_op
connect \B 7'0001000
- connect \Y $13
+ connect \Y $17
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:270"
- wire width 1 $15
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:270"
- cell $or $16
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:329"
+ wire width 1 $19
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:329"
+ cell $or $20
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $11
- connect \B $13
- connect \Y $15
+ connect \A $15
+ connect \B $17
+ connect \Y $19
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:271"
- wire width 1 $17
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:271"
- cell $not $18
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:330"
+ wire width 1 $21
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:330"
+ cell $not $22
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \Y_WIDTH 1
connect \A \BO [2]
- connect \Y $17
+ connect \Y $21
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:276"
- wire width 1 $19
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:276"
- cell $eq $20
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:335"
+ wire width 1 $23
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:335"
+ cell $eq $24
parameter \A_SIGNED 0
parameter \A_WIDTH 7
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \internal_op
connect \B 7'1000110
- connect \Y $19
+ connect \Y $23
end
- process $group_5
+ process $group_4
assign \fast_o_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:270"
- switch { $15 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:270"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:288"
+ switch \sel_in
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:289"
+ attribute \nmigen.decoding "RT/1"
+ case 2'01
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:292"
+ attribute \nmigen.decoding "RA/2"
+ case 2'10
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:295"
+ attribute \nmigen.decoding "SPR/3"
+ case 2'11
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ switch { $13 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ case 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:300"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:302"
+ case 10'0000001001
+ assign \fast_o_ok 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:305"
+ case 10'0000001000
+ assign \fast_o_ok 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:308"
+ case 10'1100101111
+ assign \fast_o_ok 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:311"
+ case 10'0000011010
+ assign \fast_o_ok 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:314"
+ case 10'0000011011
+ assign \fast_o_ok 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:317"
+ case 10'0000000001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:321"
+ case
+ end
+ end
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:329"
+ switch { $19 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:329"
case 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:271"
- switch { $17 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:271"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:330"
+ switch { $21 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:330"
case 1'1
assign \fast_o_ok 1'1
end
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:276"
- switch { $19 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:276"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:335"
+ switch { $23 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:335"
case 1'1
assign \fast_o_ok 1'1
end
sync init
end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ wire width 1 $25
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ cell $eq $26
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 7
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 7
+ parameter \Y_WIDTH 1
+ connect \A \internal_op
+ connect \B 7'0110001
+ connect \Y $25
+ end
+ process $group_5
+ assign \sprmap_spr_i 10'0000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:288"
+ switch \sel_in
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:289"
+ attribute \nmigen.decoding "RT/1"
+ case 2'01
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:292"
+ attribute \nmigen.decoding "RA/2"
+ case 2'10
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:295"
+ attribute \nmigen.decoding "SPR/3"
+ case 2'11
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ switch { $25 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ case 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:300"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:302"
+ case 10'0000001001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:305"
+ case 10'0000001000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:308"
+ case 10'1100101111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:311"
+ case 10'0000011010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:314"
+ case 10'0000011011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:317"
+ case 10'0000000001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:321"
+ case
+ assign \sprmap_spr_i \spr
+ end
+ end
+ end
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ wire width 1 $27
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ cell $eq $28
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 7
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 7
+ parameter \Y_WIDTH 1
+ connect \A \internal_op
+ connect \B 7'0110001
+ connect \Y $27
+ end
+ process $group_6
+ assign \spr_o 10'0000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:288"
+ switch \sel_in
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:289"
+ attribute \nmigen.decoding "RT/1"
+ case 2'01
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:292"
+ attribute \nmigen.decoding "RA/2"
+ case 2'10
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:295"
+ attribute \nmigen.decoding "SPR/3"
+ case 2'11
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ switch { $27 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ case 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:300"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:302"
+ case 10'0000001001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:305"
+ case 10'0000001000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:308"
+ case 10'1100101111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:311"
+ case 10'0000011010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:314"
+ case 10'0000011011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:317"
+ case 10'0000000001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:321"
+ case
+ assign \spr_o \sprmap_spr_o
+ end
+ end
+ end
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ wire width 1 $29
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ cell $eq $30
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 7
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 7
+ parameter \Y_WIDTH 1
+ connect \A \internal_op
+ connect \B 7'0110001
+ connect \Y $29
+ end
+ process $group_7
+ assign \spr_o_ok 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:288"
+ switch \sel_in
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:289"
+ attribute \nmigen.decoding "RT/1"
+ case 2'01
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:292"
+ attribute \nmigen.decoding "RA/2"
+ case 2'10
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:295"
+ attribute \nmigen.decoding "SPR/3"
+ case 2'11
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ switch { $29 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:299"
+ case 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:300"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:302"
+ case 10'0000001001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:305"
+ case 10'0000001000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:308"
+ case 10'1100101111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:311"
+ case 10'0000011010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:314"
+ case 10'0000011011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:317"
+ case 10'0000000001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:321"
+ case
+ assign \spr_o_ok 1'1
+ end
+ end
+ end
+ sync init
+ end
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.pdecode2.dec_o2"
module \dec_o2
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:292"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:351"
wire width 1 input 0 \lk
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
process $group_0
assign \reg_o 5'00000
assign \reg_o_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:302"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:361"
switch { \upd }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:302"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:361"
case 1'1
assign { \reg_o_ok \reg_o } $1
assign \reg_o_ok 1'1
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:308"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:367"
wire width 1 $3
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:308"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:367"
cell $eq $4
parameter \A_SIGNED 0
parameter \A_WIDTH 7
connect \B 7'0000111
connect \Y $3
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:309"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:368"
wire width 1 $5
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:309"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:368"
cell $eq $6
parameter \A_SIGNED 0
parameter \A_WIDTH 7
connect \B 7'0001000
connect \Y $5
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:309"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:368"
wire width 1 $7
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:309"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:368"
cell $or $8
parameter \A_SIGNED 0
parameter \A_WIDTH 1
connect \B $5
connect \Y $7
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:315"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:374"
wire width 1 $9
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:315"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:374"
cell $eq $10
parameter \A_SIGNED 0
parameter \A_WIDTH 7
end
process $group_2
assign \fast_o 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:309"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:368"
switch { $7 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:309"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:368"
case 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:310"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:369"
switch { \lk }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:310"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:369"
case 1'1
assign \fast_o 3'011
end
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:315"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:374"
switch { $9 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:315"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:374"
case 1'1
assign \fast_o 3'110
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:308"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:367"
wire width 1 $11
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:308"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:367"
cell $eq $12
parameter \A_SIGNED 0
parameter \A_WIDTH 7
connect \B 7'0000111
connect \Y $11
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:309"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:368"
wire width 1 $13
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:309"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:368"
cell $eq $14
parameter \A_SIGNED 0
parameter \A_WIDTH 7
connect \B 7'0001000
connect \Y $13
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:309"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:368"
wire width 1 $15
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:309"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:368"
cell $or $16
parameter \A_SIGNED 0
parameter \A_WIDTH 1
connect \B $13
connect \Y $15
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:315"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:374"
wire width 1 $17
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:315"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:374"
cell $eq $18
parameter \A_SIGNED 0
parameter \A_WIDTH 7
end
process $group_3
assign \fast_o_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:309"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:368"
switch { $15 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:309"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:368"
case 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:310"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:369"
switch { \lk }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:310"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:369"
case 1'1
assign \fast_o_ok 1'1
end
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:315"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:374"
switch { $17 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:315"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:374"
case 1'1
assign \fast_o_ok 1'1
end
attribute \enum_value_00 "NONE"
attribute \enum_value_01 "ONE"
attribute \enum_value_10 "RC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:329"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:388"
wire width 2 input 0 \sel_in
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 1 \rc
wire width 1 input 3 \Rc
process $group_0
assign \rc 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:338"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:397"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:339"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:398"
attribute \nmigen.decoding "RC/2"
case 2'10
assign \rc \Rc
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:342"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:401"
attribute \nmigen.decoding "ONE/1"
case 2'01
assign \rc 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:345"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:404"
attribute \nmigen.decoding "NONE/0"
case 2'00
assign \rc 1'0
end
process $group_1
assign \rc_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:338"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:397"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:339"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:398"
attribute \nmigen.decoding "RC/2"
case 2'10
assign \rc_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:342"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:401"
attribute \nmigen.decoding "ONE/1"
case 2'01
assign \rc_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:345"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:404"
attribute \nmigen.decoding "NONE/0"
case 2'00
assign \rc_ok 1'1
attribute \enum_value_00 "NONE"
attribute \enum_value_01 "ONE"
attribute \enum_value_10 "RC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:365"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:424"
wire width 2 input 0 \sel_in
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 1 \oe
wire width 1 input 3 \OE
process $group_0
assign \oe 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:374"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:433"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:375"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:434"
attribute \nmigen.decoding "RC/2"
case 2'10
assign \oe \OE
end
process $group_1
assign \oe_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:374"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:433"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:375"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:434"
attribute \nmigen.decoding "RC/2"
case 2'10
assign \oe_ok 1'1
attribute \enum_value_100 "BA_BB"
attribute \enum_value_101 "BC"
attribute \enum_value_110 "WHOLE_REG"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:390"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:449"
wire width 3 input 0 \sel_in
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 3 output 1 \cr_bitfield
wire width 3 output 5 \cr_bitfield_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 6 \cr_bitfield_o_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:395"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:454"
wire width 1 output 7 \whole_reg
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:322"
wire width 5 input 8 \BB
process $group_0
assign \cr_bitfield_ok 1'0
assign \cr_bitfield_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:404"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:463"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:405"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:464"
attribute \nmigen.decoding "NONE/0"
case 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:407"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:466"
attribute \nmigen.decoding "CR0/1"
case 3'001
assign \cr_bitfield_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:410"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:469"
attribute \nmigen.decoding "BI/2"
case 3'010
assign \cr_bitfield_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:413"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:472"
attribute \nmigen.decoding "BFA/3"
case 3'011
assign \cr_bitfield_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:416"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:475"
attribute \nmigen.decoding "BA_BB/4"
case 3'100
assign \cr_bitfield_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:423"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:482"
attribute \nmigen.decoding "BC/5"
case 3'101
assign \cr_bitfield_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:426"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:485"
attribute \nmigen.decoding "WHOLE_REG/6"
case 3'110
end
process $group_1
assign \cr_bitfield_b_ok 1'0
assign \cr_bitfield_b_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:404"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:463"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:405"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:464"
attribute \nmigen.decoding "NONE/0"
case 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:407"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:466"
attribute \nmigen.decoding "CR0/1"
case 3'001
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:410"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:469"
attribute \nmigen.decoding "BI/2"
case 3'010
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:413"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:472"
attribute \nmigen.decoding "BFA/3"
case 3'011
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:416"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:475"
attribute \nmigen.decoding "BA_BB/4"
case 3'100
assign \cr_bitfield_b_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:423"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:482"
attribute \nmigen.decoding "BC/5"
case 3'101
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:426"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:485"
attribute \nmigen.decoding "WHOLE_REG/6"
case 3'110
end
process $group_2
assign \whole_reg 1'0
assign \whole_reg 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:404"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:463"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:405"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:464"
attribute \nmigen.decoding "NONE/0"
case 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:407"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:466"
attribute \nmigen.decoding "CR0/1"
case 3'001
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:410"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:469"
attribute \nmigen.decoding "BI/2"
case 3'010
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:413"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:472"
attribute \nmigen.decoding "BFA/3"
case 3'011
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:416"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:475"
attribute \nmigen.decoding "BA_BB/4"
case 3'100
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:423"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:482"
attribute \nmigen.decoding "BC/5"
case 3'101
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:426"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:485"
attribute \nmigen.decoding "WHOLE_REG/6"
case 3'110
assign \whole_reg 1'1
end
process $group_3
assign \cr_bitfield 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:404"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:463"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:405"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:464"
attribute \nmigen.decoding "NONE/0"
case 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:407"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:466"
attribute \nmigen.decoding "CR0/1"
case 3'001
assign \cr_bitfield 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:410"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:469"
attribute \nmigen.decoding "BI/2"
case 3'010
assign \cr_bitfield \BI [4:2]
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:413"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:472"
attribute \nmigen.decoding "BFA/3"
case 3'011
assign \cr_bitfield \X_BFA
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:416"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:475"
attribute \nmigen.decoding "BA_BB/4"
case 3'100
assign \cr_bitfield \BA [4:2]
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:423"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:482"
attribute \nmigen.decoding "BC/5"
case 3'101
assign \cr_bitfield \BC [4:2]
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:426"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:485"
attribute \nmigen.decoding "WHOLE_REG/6"
case 3'110
end
end
process $group_4
assign \cr_bitfield_b 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:404"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:463"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:405"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:464"
attribute \nmigen.decoding "NONE/0"
case 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:407"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:466"
attribute \nmigen.decoding "CR0/1"
case 3'001
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:410"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:469"
attribute \nmigen.decoding "BI/2"
case 3'010
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:413"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:472"
attribute \nmigen.decoding "BFA/3"
case 3'011
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:416"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:475"
attribute \nmigen.decoding "BA_BB/4"
case 3'100
assign \cr_bitfield_b \BB [4:2]
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:423"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:482"
attribute \nmigen.decoding "BC/5"
case 3'101
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:426"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:485"
attribute \nmigen.decoding "WHOLE_REG/6"
case 3'110
end
end
process $group_5
assign \cr_bitfield_o 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:404"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:463"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:405"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:464"
attribute \nmigen.decoding "NONE/0"
case 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:407"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:466"
attribute \nmigen.decoding "CR0/1"
case 3'001
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:410"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:469"
attribute \nmigen.decoding "BI/2"
case 3'010
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:413"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:472"
attribute \nmigen.decoding "BFA/3"
case 3'011
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:416"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:475"
attribute \nmigen.decoding "BA_BB/4"
case 3'100
assign \cr_bitfield_o \BT [4:2]
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:423"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:482"
attribute \nmigen.decoding "BC/5"
case 3'101
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:426"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:485"
attribute \nmigen.decoding "WHOLE_REG/6"
case 3'110
end
end
process $group_6
assign \cr_bitfield_o_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:404"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:463"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:405"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:464"
attribute \nmigen.decoding "NONE/0"
case 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:407"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:466"
attribute \nmigen.decoding "CR0/1"
case 3'001
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:410"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:469"
attribute \nmigen.decoding "BI/2"
case 3'010
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:413"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:472"
attribute \nmigen.decoding "BFA/3"
case 3'011
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:416"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:475"
attribute \nmigen.decoding "BA_BB/4"
case 3'100
assign \cr_bitfield_o_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:423"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:482"
attribute \nmigen.decoding "BC/5"
case 3'101
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:426"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:485"
attribute \nmigen.decoding "WHOLE_REG/6"
case 3'110
end
attribute \enum_value_010 "BF"
attribute \enum_value_011 "BT"
attribute \enum_value_100 "WHOLE_REG"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:442"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:501"
wire width 3 input 0 \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:441"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:500"
wire width 1 input 1 \rc_in
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 3 output 2 \cr_bitfield
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 3 \cr_bitfield_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:445"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:504"
wire width 1 output 4 \whole_reg
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:335"
wire width 3 input 5 \X_BF
process $group_0
assign \cr_bitfield_ok 1'0
assign \cr_bitfield_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:453"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:512"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:454"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:513"
attribute \nmigen.decoding "NONE/0"
case 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:456"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:515"
attribute \nmigen.decoding "CR0/1"
case 3'001
assign \cr_bitfield_ok \rc_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:459"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:518"
attribute \nmigen.decoding "BF/2"
case 3'010
assign \cr_bitfield_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:462"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:521"
attribute \nmigen.decoding "BT/3"
case 3'011
assign \cr_bitfield_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:465"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:524"
attribute \nmigen.decoding "WHOLE_REG/4"
case 3'100
end
process $group_1
assign \whole_reg 1'0
assign \whole_reg 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:453"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:512"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:454"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:513"
attribute \nmigen.decoding "NONE/0"
case 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:456"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:515"
attribute \nmigen.decoding "CR0/1"
case 3'001
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:459"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:518"
attribute \nmigen.decoding "BF/2"
case 3'010
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:462"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:521"
attribute \nmigen.decoding "BT/3"
case 3'011
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:465"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:524"
attribute \nmigen.decoding "WHOLE_REG/4"
case 3'100
assign \whole_reg 1'1
end
process $group_2
assign \cr_bitfield 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:453"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:512"
switch \sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:454"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:513"
attribute \nmigen.decoding "NONE/0"
case 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:456"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:515"
attribute \nmigen.decoding "CR0/1"
case 3'001
assign \cr_bitfield 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:459"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:518"
attribute \nmigen.decoding "BF/2"
case 3'010
assign \cr_bitfield \X_BF
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:462"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:521"
attribute \nmigen.decoding "BT/3"
case 3'011
assign \cr_bitfield \XL_BT [4:2]
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:465"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:524"
attribute \nmigen.decoding "WHOLE_REG/4"
case 3'100
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:318"
wire width 32 input 1 \raw_opcode_in
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:34"
- wire width 10 output 2 \fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:33"
+ wire width 11 output 2 \fn_unit
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1000111 "OP_MFMSR"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:33"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:32"
wire width 7 output 3 \insn_type
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 output 4 \imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 5 \imm_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:59"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:58"
wire width 1 output 6 \lk
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 7 \rc
wire width 1 output 9 \oe
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 10 \oe_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:62"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:61"
wire width 1 output 11 \invert_a
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:63"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:62"
wire width 1 output 12 \zero_a
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:64"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:63"
wire width 1 output 13 \invert_out
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 3 output 14 \cr_out
attribute \enum_value_00 "ZERO"
attribute \enum_value_01 "ONE"
attribute \enum_value_10 "CA"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:65"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:64"
wire width 2 output 16 \input_carry
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:66"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:65"
wire width 1 output 17 \output_carry
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:67"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:66"
wire width 1 output 18 \input_cr
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:68"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:67"
wire width 1 output 19 \output_cr
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:69"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:68"
wire width 1 output 20 \is_32bit
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:70"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:69"
wire width 1 output 21 \is_signed
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:72"
- wire width 4 output 22 \data_len
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:71"
+ wire width 4 output 22 \data_len
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:70"
wire width 32 output 23 \insn
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:72"
wire width 1 output 24 \byte_reverse
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:74"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:73"
wire width 1 output 25 \sign_extend
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 26 \reg1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 27 \reg2_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:56"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:55"
wire width 1 output 28 \read_cr_whole
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:58"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:57"
wire width 1 output 29 \write_cr_whole
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 30 \cr_in1_ok
wire width 1 output 33 \fast1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 34 \fast2_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:77"
- wire width 13 output 35 \trapaddr
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 36 \reg3_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:75"
- wire width 1 output 37 \update
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 5 output 38 \reg1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 5 output 39 \reg2
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 5 output 40 \reg3
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 41 \cr_in1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 42 \cr_in2
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 43 \cr_in2$2
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 44 \fast1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 45 \fast2
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 5 output 46 \rego
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 5 output 47 \ea
+ wire width 5 output 35 \traptype
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:76"
+ wire width 13 output 36 \trapaddr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 48 \fasto1
+ wire width 1 output 37 \spr1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 49 \fasto2
+ wire width 1 output 38 \reg3_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:74"
+ wire width 1 output 39 \update
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 5 output 40 \reg1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 5 output 41 \reg2
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 5 output 42 \reg3
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 3 output 43 \cr_in1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 3 output 44 \cr_in2
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 3 output 45 \cr_in2$2
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 3 output 46 \fast1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 3 output 47 \fast2
+ attribute \enum_base_type "SPR"
+ attribute \enum_value_0000000001 "XER"
+ attribute \enum_value_0000000011 "DSCR"
+ attribute \enum_value_0000001000 "LR"
+ attribute \enum_value_0000001001 "CTR"
+ attribute \enum_value_0000001101 "AMR"
+ attribute \enum_value_0000010001 "DSCR_priv"
+ attribute \enum_value_0000010010 "DSISR"
+ attribute \enum_value_0000010011 "DAR"
+ attribute \enum_value_0000010110 "DEC"
+ attribute \enum_value_0000011010 "SRR0"
+ attribute \enum_value_0000011011 "SRR1"
+ attribute \enum_value_0000011100 "CFAR"
+ attribute \enum_value_0000011101 "AMR_priv"
+ attribute \enum_value_0000110000 "PIDR"
+ attribute \enum_value_0000111101 "IAMR"
+ attribute \enum_value_0010000000 "TFHAR"
+ attribute \enum_value_0010000001 "TFIAR"
+ attribute \enum_value_0010000010 "TEXASR"
+ attribute \enum_value_0010000011 "TEXASRU"
+ attribute \enum_value_0010001000 "CTRL"
+ attribute \enum_value_0010010000 "TIDR"
+ attribute \enum_value_0010011000 "CTRL_priv"
+ attribute \enum_value_0010011001 "FSCR"
+ attribute \enum_value_0010011101 "UAMOR"
+ attribute \enum_value_0010011110 "GSR"
+ attribute \enum_value_0010011111 "PSPB"
+ attribute \enum_value_0010110000 "DPDES"
+ attribute \enum_value_0010110100 "DAWR0"
+ attribute \enum_value_0010111010 "RPR"
+ attribute \enum_value_0010111011 "CIABR"
+ attribute \enum_value_0010111100 "DAWRX0"
+ attribute \enum_value_0010111110 "HFSCR"
+ attribute \enum_value_0100000000 "VRSAVE"
+ attribute \enum_value_0100000011 "SPRG3"
+ attribute \enum_value_0100001100 "TB"
+ attribute \enum_value_0100001101 "TBU"
+ attribute \enum_value_0100010000 "SPRG0_priv"
+ attribute \enum_value_0100010001 "SPRG1_priv"
+ attribute \enum_value_0100010010 "SPRG2_priv"
+ attribute \enum_value_0100010011 "SPRG3_priv"
+ attribute \enum_value_0100011011 "CIR"
+ attribute \enum_value_0100011100 "TBL"
+ attribute \enum_value_0100011101 "TBU_hypv"
+ attribute \enum_value_0100011110 "TBU40"
+ attribute \enum_value_0100011111 "PVR"
+ attribute \enum_value_0100110000 "HSPRG0"
+ attribute \enum_value_0100110001 "HSPRG1"
+ attribute \enum_value_0100110010 "HDSISR"
+ attribute \enum_value_0100110011 "HDAR"
+ attribute \enum_value_0100110100 "SPURR"
+ attribute \enum_value_0100110101 "PURR"
+ attribute \enum_value_0100110110 "HDEC"
+ attribute \enum_value_0100111001 "HRMOR"
+ attribute \enum_value_0100111010 "HSRR0"
+ attribute \enum_value_0100111011 "HSRR1"
+ attribute \enum_value_0100111110 "LPCR"
+ attribute \enum_value_0100111111 "LPIDR"
+ attribute \enum_value_0101010000 "HMER"
+ attribute \enum_value_0101010001 "HMEER"
+ attribute \enum_value_0101010010 "PCR"
+ attribute \enum_value_0101010011 "HEIR"
+ attribute \enum_value_0101011101 "AMOR"
+ attribute \enum_value_0110111110 "TIR"
+ attribute \enum_value_0111010000 "PTCR"
+ attribute \enum_value_1100000000 "SIER"
+ attribute \enum_value_1100000001 "MMCR2"
+ attribute \enum_value_1100000010 "MMCRA"
+ attribute \enum_value_1100000011 "PMC1"
+ attribute \enum_value_1100000100 "PMC2"
+ attribute \enum_value_1100000101 "PMC3"
+ attribute \enum_value_1100000110 "PMC4"
+ attribute \enum_value_1100000111 "PMC5"
+ attribute \enum_value_1100001000 "PMC6"
+ attribute \enum_value_1100001011 "MMCR0"
+ attribute \enum_value_1100001100 "SIAR"
+ attribute \enum_value_1100001101 "SDAR"
+ attribute \enum_value_1100001110 "MMCR1"
+ attribute \enum_value_1100010000 "SIER_priv"
+ attribute \enum_value_1100010001 "MMCR2_priv"
+ attribute \enum_value_1100010010 "MMCRA_priv"
+ attribute \enum_value_1100010011 "PMC1_priv"
+ attribute \enum_value_1100010100 "PMC2_priv"
+ attribute \enum_value_1100010101 "PMC3_priv"
+ attribute \enum_value_1100010110 "PMC4_priv"
+ attribute \enum_value_1100010111 "PMC5_priv"
+ attribute \enum_value_1100011000 "PMC6_priv"
+ attribute \enum_value_1100011011 "MMCR0_priv"
+ attribute \enum_value_1100011100 "SIAR_priv"
+ attribute \enum_value_1100011101 "SDAR_priv"
+ attribute \enum_value_1100011110 "MMCR1_priv"
+ attribute \enum_value_1100100000 "BESCRS"
+ attribute \enum_value_1100100001 "BESCRSU"
+ attribute \enum_value_1100100010 "BESCRR"
+ attribute \enum_value_1100100011 "BESCRRU"
+ attribute \enum_value_1100100100 "EBBHR"
+ attribute \enum_value_1100100101 "EBBRR"
+ attribute \enum_value_1100100110 "BESCR"
+ attribute \enum_value_1100101000 "reserved808"
+ attribute \enum_value_1100101001 "reserved809"
+ attribute \enum_value_1100101010 "reserved810"
+ attribute \enum_value_1100101011 "reserved811"
+ attribute \enum_value_1100101111 "TAR"
+ attribute \enum_value_1100110000 "ASDR"
+ attribute \enum_value_1100110111 "PSSCR"
+ attribute \enum_value_1101010000 "IC"
+ attribute \enum_value_1101010001 "VTB"
+ attribute \enum_value_1101010111 "PSSCR_hypv"
+ attribute \enum_value_1110000000 "PPR"
+ attribute \enum_value_1110000010 "PPR32"
+ attribute \enum_value_1111111111 "PIR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 10 output 48 \spr1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 5 output 49 \rego
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 5 output 50 \ea
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 3 output 51 \fasto1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 3 output 52 \fasto2
+ attribute \enum_base_type "SPR"
+ attribute \enum_value_0000000001 "XER"
+ attribute \enum_value_0000000011 "DSCR"
+ attribute \enum_value_0000001000 "LR"
+ attribute \enum_value_0000001001 "CTR"
+ attribute \enum_value_0000001101 "AMR"
+ attribute \enum_value_0000010001 "DSCR_priv"
+ attribute \enum_value_0000010010 "DSISR"
+ attribute \enum_value_0000010011 "DAR"
+ attribute \enum_value_0000010110 "DEC"
+ attribute \enum_value_0000011010 "SRR0"
+ attribute \enum_value_0000011011 "SRR1"
+ attribute \enum_value_0000011100 "CFAR"
+ attribute \enum_value_0000011101 "AMR_priv"
+ attribute \enum_value_0000110000 "PIDR"
+ attribute \enum_value_0000111101 "IAMR"
+ attribute \enum_value_0010000000 "TFHAR"
+ attribute \enum_value_0010000001 "TFIAR"
+ attribute \enum_value_0010000010 "TEXASR"
+ attribute \enum_value_0010000011 "TEXASRU"
+ attribute \enum_value_0010001000 "CTRL"
+ attribute \enum_value_0010010000 "TIDR"
+ attribute \enum_value_0010011000 "CTRL_priv"
+ attribute \enum_value_0010011001 "FSCR"
+ attribute \enum_value_0010011101 "UAMOR"
+ attribute \enum_value_0010011110 "GSR"
+ attribute \enum_value_0010011111 "PSPB"
+ attribute \enum_value_0010110000 "DPDES"
+ attribute \enum_value_0010110100 "DAWR0"
+ attribute \enum_value_0010111010 "RPR"
+ attribute \enum_value_0010111011 "CIABR"
+ attribute \enum_value_0010111100 "DAWRX0"
+ attribute \enum_value_0010111110 "HFSCR"
+ attribute \enum_value_0100000000 "VRSAVE"
+ attribute \enum_value_0100000011 "SPRG3"
+ attribute \enum_value_0100001100 "TB"
+ attribute \enum_value_0100001101 "TBU"
+ attribute \enum_value_0100010000 "SPRG0_priv"
+ attribute \enum_value_0100010001 "SPRG1_priv"
+ attribute \enum_value_0100010010 "SPRG2_priv"
+ attribute \enum_value_0100010011 "SPRG3_priv"
+ attribute \enum_value_0100011011 "CIR"
+ attribute \enum_value_0100011100 "TBL"
+ attribute \enum_value_0100011101 "TBU_hypv"
+ attribute \enum_value_0100011110 "TBU40"
+ attribute \enum_value_0100011111 "PVR"
+ attribute \enum_value_0100110000 "HSPRG0"
+ attribute \enum_value_0100110001 "HSPRG1"
+ attribute \enum_value_0100110010 "HDSISR"
+ attribute \enum_value_0100110011 "HDAR"
+ attribute \enum_value_0100110100 "SPURR"
+ attribute \enum_value_0100110101 "PURR"
+ attribute \enum_value_0100110110 "HDEC"
+ attribute \enum_value_0100111001 "HRMOR"
+ attribute \enum_value_0100111010 "HSRR0"
+ attribute \enum_value_0100111011 "HSRR1"
+ attribute \enum_value_0100111110 "LPCR"
+ attribute \enum_value_0100111111 "LPIDR"
+ attribute \enum_value_0101010000 "HMER"
+ attribute \enum_value_0101010001 "HMEER"
+ attribute \enum_value_0101010010 "PCR"
+ attribute \enum_value_0101010011 "HEIR"
+ attribute \enum_value_0101011101 "AMOR"
+ attribute \enum_value_0110111110 "TIR"
+ attribute \enum_value_0111010000 "PTCR"
+ attribute \enum_value_1100000000 "SIER"
+ attribute \enum_value_1100000001 "MMCR2"
+ attribute \enum_value_1100000010 "MMCRA"
+ attribute \enum_value_1100000011 "PMC1"
+ attribute \enum_value_1100000100 "PMC2"
+ attribute \enum_value_1100000101 "PMC3"
+ attribute \enum_value_1100000110 "PMC4"
+ attribute \enum_value_1100000111 "PMC5"
+ attribute \enum_value_1100001000 "PMC6"
+ attribute \enum_value_1100001011 "MMCR0"
+ attribute \enum_value_1100001100 "SIAR"
+ attribute \enum_value_1100001101 "SDAR"
+ attribute \enum_value_1100001110 "MMCR1"
+ attribute \enum_value_1100010000 "SIER_priv"
+ attribute \enum_value_1100010001 "MMCR2_priv"
+ attribute \enum_value_1100010010 "MMCRA_priv"
+ attribute \enum_value_1100010011 "PMC1_priv"
+ attribute \enum_value_1100010100 "PMC2_priv"
+ attribute \enum_value_1100010101 "PMC3_priv"
+ attribute \enum_value_1100010110 "PMC4_priv"
+ attribute \enum_value_1100010111 "PMC5_priv"
+ attribute \enum_value_1100011000 "PMC6_priv"
+ attribute \enum_value_1100011011 "MMCR0_priv"
+ attribute \enum_value_1100011100 "SIAR_priv"
+ attribute \enum_value_1100011101 "SDAR_priv"
+ attribute \enum_value_1100011110 "MMCR1_priv"
+ attribute \enum_value_1100100000 "BESCRS"
+ attribute \enum_value_1100100001 "BESCRSU"
+ attribute \enum_value_1100100010 "BESCRR"
+ attribute \enum_value_1100100011 "BESCRRU"
+ attribute \enum_value_1100100100 "EBBHR"
+ attribute \enum_value_1100100101 "EBBRR"
+ attribute \enum_value_1100100110 "BESCR"
+ attribute \enum_value_1100101000 "reserved808"
+ attribute \enum_value_1100101001 "reserved809"
+ attribute \enum_value_1100101010 "reserved810"
+ attribute \enum_value_1100101011 "reserved811"
+ attribute \enum_value_1100101111 "TAR"
+ attribute \enum_value_1100110000 "ASDR"
+ attribute \enum_value_1100110111 "PSSCR"
+ attribute \enum_value_1101010000 "IC"
+ attribute \enum_value_1101010001 "VTB"
+ attribute \enum_value_1101010111 "PSSCR_hypv"
+ attribute \enum_value_1110000000 "PPR"
+ attribute \enum_value_1110000010 "PPR32"
+ attribute \enum_value_1111111111 "PIR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 10 output 53 \spro
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
- wire width 32 output 50 \opcode_in
+ wire width 32 output 54 \opcode_in
attribute \enum_base_type "In1Sel"
attribute \enum_value_000 "NONE"
attribute \enum_value_001 "RA"
attribute \enum_value_011 "SPR"
attribute \enum_value_100 "RS"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:124"
- wire width 3 output 51 \in1_sel
+ wire width 3 output 55 \in1_sel
attribute \enum_base_type "In2Sel"
attribute \enum_value_0000 "NONE"
attribute \enum_value_0001 "RB"
attribute \enum_value_1100 "SPR"
attribute \enum_value_1101 "RS"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:125"
- wire width 4 output 52 \in2_sel
+ wire width 4 output 56 \in2_sel
attribute \enum_base_type "In3Sel"
attribute \enum_value_00 "NONE"
attribute \enum_value_01 "RS"
attribute \enum_value_10 "RB"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:126"
- wire width 2 output 53 \in3_sel
+ wire width 2 output 57 \in3_sel
attribute \enum_base_type "OutSel"
attribute \enum_value_00 "NONE"
attribute \enum_value_01 "RT"
attribute \enum_value_10 "RA"
attribute \enum_value_11 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:127"
- wire width 2 output 54 \out_sel
+ wire width 2 output 58 \out_sel
attribute \enum_base_type "RC"
attribute \enum_value_00 "NONE"
attribute \enum_value_01 "ONE"
attribute \enum_value_10 "RC"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:131"
- wire width 2 output 55 \rc_sel
+ wire width 2 output 59 \rc_sel
attribute \enum_base_type "CRInSel"
attribute \enum_value_000 "NONE"
attribute \enum_value_001 "CR0"
attribute \enum_value_101 "BC"
attribute \enum_value_110 "WHOLE_REG"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:128"
- wire width 3 output 56 \cr_in
+ wire width 3 output 60 \cr_in
attribute \enum_base_type "CROutSel"
attribute \enum_value_000 "NONE"
attribute \enum_value_001 "CR0"
attribute \enum_value_011 "BT"
attribute \enum_value_100 "WHOLE_REG"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:129"
- wire width 3 output 57 \cr_out$3
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:37"
- wire width 64 output 58 \nia
+ wire width 3 output 61 \cr_out$3
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:36"
+ wire width 64 output 62 \nia
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 59 \function_unit
+ wire width 11 output 63 \function_unit
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:120"
- wire width 7 output 60 \internal_op
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 61 \rego_ok
+ wire width 7 output 64 \internal_op
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 62 \ea_ok
+ wire width 1 output 65 \rego_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 10 output 63 \spr1
+ wire width 1 output 66 \ea_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 64 \spr1_ok
+ wire width 1 output 67 \spro_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 10 output 65 \spro
+ wire width 1 output 68 \fasto1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 66 \spro_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 67 \fasto1_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 68 \fasto2_ok
+ wire width 1 output 69 \fasto2_ok
attribute \enum_base_type "LdstLen"
attribute \enum_value_0000 "NONE"
attribute \enum_value_0001 "is1B"
attribute \enum_value_0100 "is4B"
attribute \enum_value_1000 "is8B"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:130"
- wire width 4 output 69 \ldst_len
+ wire width 4 output 70 \ldst_len
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 70 \inv_a
+ wire width 1 output 71 \inv_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 71 \inv_out
+ wire width 1 output 72 \inv_out
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 72 \cry_out
+ wire width 1 output 73 \cry_out
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 73 \is_32b
+ wire width 1 output 74 \is_32b
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 74 \sgn
+ wire width 1 output 75 \sgn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 75 \lk$4
+ wire width 1 output 76 \lk$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 76 \br
+ wire width 1 output 77 \br
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 77 \sgn_ext
+ wire width 1 output 78 \sgn_ext
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 78 \upd
+ wire width 1 output 79 \upd
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:35"
+ wire width 8 output 80 \asmcode
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \enum_value_11011 "Z22"
attribute \enum_value_11100 "Z23"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:121"
- wire width 5 output 79 \form
+ wire width 5 output 81 \form
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 80 \rsrv
+ wire width 1 output 82 \rsrv
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 81 \sgl_pipe
+ wire width 1 output 83 \sgl_pipe
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:123"
- wire width 8 output 82 \asmcode
+ wire width 8 output 84 \asmcode$5
attribute \enum_base_type "CryIn"
attribute \enum_value_00 "ZERO"
attribute \enum_value_01 "ONE"
connect \form \form
connect \rsrv \rsrv
connect \sgl_pipe \sgl_pipe
- connect \asmcode \asmcode
+ connect \asmcode \asmcode$5
connect \RS \dec_RS
connect \RT \dec_RT
connect \RA \dec_RA
attribute \enum_value_010 "RA_OR_ZERO"
attribute \enum_value_011 "SPR"
attribute \enum_value_100 "RS"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:57"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:80"
wire width 3 \dec_a_sel_in
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 5 \dec_a_reg_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \dec_a_reg_a_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:60"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:83"
wire width 1 \dec_a_immz_out
+ attribute \enum_base_type "SPR"
+ attribute \enum_value_0000000001 "XER"
+ attribute \enum_value_0000000011 "DSCR"
+ attribute \enum_value_0000001000 "LR"
+ attribute \enum_value_0000001001 "CTR"
+ attribute \enum_value_0000001101 "AMR"
+ attribute \enum_value_0000010001 "DSCR_priv"
+ attribute \enum_value_0000010010 "DSISR"
+ attribute \enum_value_0000010011 "DAR"
+ attribute \enum_value_0000010110 "DEC"
+ attribute \enum_value_0000011010 "SRR0"
+ attribute \enum_value_0000011011 "SRR1"
+ attribute \enum_value_0000011100 "CFAR"
+ attribute \enum_value_0000011101 "AMR_priv"
+ attribute \enum_value_0000110000 "PIDR"
+ attribute \enum_value_0000111101 "IAMR"
+ attribute \enum_value_0010000000 "TFHAR"
+ attribute \enum_value_0010000001 "TFIAR"
+ attribute \enum_value_0010000010 "TEXASR"
+ attribute \enum_value_0010000011 "TEXASRU"
+ attribute \enum_value_0010001000 "CTRL"
+ attribute \enum_value_0010010000 "TIDR"
+ attribute \enum_value_0010011000 "CTRL_priv"
+ attribute \enum_value_0010011001 "FSCR"
+ attribute \enum_value_0010011101 "UAMOR"
+ attribute \enum_value_0010011110 "GSR"
+ attribute \enum_value_0010011111 "PSPB"
+ attribute \enum_value_0010110000 "DPDES"
+ attribute \enum_value_0010110100 "DAWR0"
+ attribute \enum_value_0010111010 "RPR"
+ attribute \enum_value_0010111011 "CIABR"
+ attribute \enum_value_0010111100 "DAWRX0"
+ attribute \enum_value_0010111110 "HFSCR"
+ attribute \enum_value_0100000000 "VRSAVE"
+ attribute \enum_value_0100000011 "SPRG3"
+ attribute \enum_value_0100001100 "TB"
+ attribute \enum_value_0100001101 "TBU"
+ attribute \enum_value_0100010000 "SPRG0_priv"
+ attribute \enum_value_0100010001 "SPRG1_priv"
+ attribute \enum_value_0100010010 "SPRG2_priv"
+ attribute \enum_value_0100010011 "SPRG3_priv"
+ attribute \enum_value_0100011011 "CIR"
+ attribute \enum_value_0100011100 "TBL"
+ attribute \enum_value_0100011101 "TBU_hypv"
+ attribute \enum_value_0100011110 "TBU40"
+ attribute \enum_value_0100011111 "PVR"
+ attribute \enum_value_0100110000 "HSPRG0"
+ attribute \enum_value_0100110001 "HSPRG1"
+ attribute \enum_value_0100110010 "HDSISR"
+ attribute \enum_value_0100110011 "HDAR"
+ attribute \enum_value_0100110100 "SPURR"
+ attribute \enum_value_0100110101 "PURR"
+ attribute \enum_value_0100110110 "HDEC"
+ attribute \enum_value_0100111001 "HRMOR"
+ attribute \enum_value_0100111010 "HSRR0"
+ attribute \enum_value_0100111011 "HSRR1"
+ attribute \enum_value_0100111110 "LPCR"
+ attribute \enum_value_0100111111 "LPIDR"
+ attribute \enum_value_0101010000 "HMER"
+ attribute \enum_value_0101010001 "HMEER"
+ attribute \enum_value_0101010010 "PCR"
+ attribute \enum_value_0101010011 "HEIR"
+ attribute \enum_value_0101011101 "AMOR"
+ attribute \enum_value_0110111110 "TIR"
+ attribute \enum_value_0111010000 "PTCR"
+ attribute \enum_value_1100000000 "SIER"
+ attribute \enum_value_1100000001 "MMCR2"
+ attribute \enum_value_1100000010 "MMCRA"
+ attribute \enum_value_1100000011 "PMC1"
+ attribute \enum_value_1100000100 "PMC2"
+ attribute \enum_value_1100000101 "PMC3"
+ attribute \enum_value_1100000110 "PMC4"
+ attribute \enum_value_1100000111 "PMC5"
+ attribute \enum_value_1100001000 "PMC6"
+ attribute \enum_value_1100001011 "MMCR0"
+ attribute \enum_value_1100001100 "SIAR"
+ attribute \enum_value_1100001101 "SDAR"
+ attribute \enum_value_1100001110 "MMCR1"
+ attribute \enum_value_1100010000 "SIER_priv"
+ attribute \enum_value_1100010001 "MMCR2_priv"
+ attribute \enum_value_1100010010 "MMCRA_priv"
+ attribute \enum_value_1100010011 "PMC1_priv"
+ attribute \enum_value_1100010100 "PMC2_priv"
+ attribute \enum_value_1100010101 "PMC3_priv"
+ attribute \enum_value_1100010110 "PMC4_priv"
+ attribute \enum_value_1100010111 "PMC5_priv"
+ attribute \enum_value_1100011000 "PMC6_priv"
+ attribute \enum_value_1100011011 "MMCR0_priv"
+ attribute \enum_value_1100011100 "SIAR_priv"
+ attribute \enum_value_1100011101 "SDAR_priv"
+ attribute \enum_value_1100011110 "MMCR1_priv"
+ attribute \enum_value_1100100000 "BESCRS"
+ attribute \enum_value_1100100001 "BESCRSU"
+ attribute \enum_value_1100100010 "BESCRR"
+ attribute \enum_value_1100100011 "BESCRRU"
+ attribute \enum_value_1100100100 "EBBHR"
+ attribute \enum_value_1100100101 "EBBRR"
+ attribute \enum_value_1100100110 "BESCR"
+ attribute \enum_value_1100101000 "reserved808"
+ attribute \enum_value_1100101001 "reserved809"
+ attribute \enum_value_1100101010 "reserved810"
+ attribute \enum_value_1100101011 "reserved811"
+ attribute \enum_value_1100101111 "TAR"
+ attribute \enum_value_1100110000 "ASDR"
+ attribute \enum_value_1100110111 "PSSCR"
+ attribute \enum_value_1101010000 "IC"
+ attribute \enum_value_1101010001 "VTB"
+ attribute \enum_value_1101010111 "PSSCR_hypv"
+ attribute \enum_value_1110000000 "PPR"
+ attribute \enum_value_1110000010 "PPR32"
+ attribute \enum_value_1111111111 "PIR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 10 \dec_a_spr_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
attribute \enum_value_1011 "CONST_SH32"
attribute \enum_value_1100 "SPR"
attribute \enum_value_1101 "RS"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:121"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:170"
wire width 4 \dec_b_sel_in
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 5 \dec_b_reg_b
attribute \enum_value_00 "NONE"
attribute \enum_value_01 "RS"
attribute \enum_value_10 "RB"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:198"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:247"
wire width 2 \dec_c_sel_in
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 5 \dec_c_reg_c
attribute \enum_value_01 "RT"
attribute \enum_value_10 "RA"
attribute \enum_value_11 "SPR"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:226"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:275"
wire width 2 \dec_o_sel_in
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 5 \dec_o_reg_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \dec_o_reg_o_ok
+ attribute \enum_base_type "SPR"
+ attribute \enum_value_0000000001 "XER"
+ attribute \enum_value_0000000011 "DSCR"
+ attribute \enum_value_0000001000 "LR"
+ attribute \enum_value_0000001001 "CTR"
+ attribute \enum_value_0000001101 "AMR"
+ attribute \enum_value_0000010001 "DSCR_priv"
+ attribute \enum_value_0000010010 "DSISR"
+ attribute \enum_value_0000010011 "DAR"
+ attribute \enum_value_0000010110 "DEC"
+ attribute \enum_value_0000011010 "SRR0"
+ attribute \enum_value_0000011011 "SRR1"
+ attribute \enum_value_0000011100 "CFAR"
+ attribute \enum_value_0000011101 "AMR_priv"
+ attribute \enum_value_0000110000 "PIDR"
+ attribute \enum_value_0000111101 "IAMR"
+ attribute \enum_value_0010000000 "TFHAR"
+ attribute \enum_value_0010000001 "TFIAR"
+ attribute \enum_value_0010000010 "TEXASR"
+ attribute \enum_value_0010000011 "TEXASRU"
+ attribute \enum_value_0010001000 "CTRL"
+ attribute \enum_value_0010010000 "TIDR"
+ attribute \enum_value_0010011000 "CTRL_priv"
+ attribute \enum_value_0010011001 "FSCR"
+ attribute \enum_value_0010011101 "UAMOR"
+ attribute \enum_value_0010011110 "GSR"
+ attribute \enum_value_0010011111 "PSPB"
+ attribute \enum_value_0010110000 "DPDES"
+ attribute \enum_value_0010110100 "DAWR0"
+ attribute \enum_value_0010111010 "RPR"
+ attribute \enum_value_0010111011 "CIABR"
+ attribute \enum_value_0010111100 "DAWRX0"
+ attribute \enum_value_0010111110 "HFSCR"
+ attribute \enum_value_0100000000 "VRSAVE"
+ attribute \enum_value_0100000011 "SPRG3"
+ attribute \enum_value_0100001100 "TB"
+ attribute \enum_value_0100001101 "TBU"
+ attribute \enum_value_0100010000 "SPRG0_priv"
+ attribute \enum_value_0100010001 "SPRG1_priv"
+ attribute \enum_value_0100010010 "SPRG2_priv"
+ attribute \enum_value_0100010011 "SPRG3_priv"
+ attribute \enum_value_0100011011 "CIR"
+ attribute \enum_value_0100011100 "TBL"
+ attribute \enum_value_0100011101 "TBU_hypv"
+ attribute \enum_value_0100011110 "TBU40"
+ attribute \enum_value_0100011111 "PVR"
+ attribute \enum_value_0100110000 "HSPRG0"
+ attribute \enum_value_0100110001 "HSPRG1"
+ attribute \enum_value_0100110010 "HDSISR"
+ attribute \enum_value_0100110011 "HDAR"
+ attribute \enum_value_0100110100 "SPURR"
+ attribute \enum_value_0100110101 "PURR"
+ attribute \enum_value_0100110110 "HDEC"
+ attribute \enum_value_0100111001 "HRMOR"
+ attribute \enum_value_0100111010 "HSRR0"
+ attribute \enum_value_0100111011 "HSRR1"
+ attribute \enum_value_0100111110 "LPCR"
+ attribute \enum_value_0100111111 "LPIDR"
+ attribute \enum_value_0101010000 "HMER"
+ attribute \enum_value_0101010001 "HMEER"
+ attribute \enum_value_0101010010 "PCR"
+ attribute \enum_value_0101010011 "HEIR"
+ attribute \enum_value_0101011101 "AMOR"
+ attribute \enum_value_0110111110 "TIR"
+ attribute \enum_value_0111010000 "PTCR"
+ attribute \enum_value_1100000000 "SIER"
+ attribute \enum_value_1100000001 "MMCR2"
+ attribute \enum_value_1100000010 "MMCRA"
+ attribute \enum_value_1100000011 "PMC1"
+ attribute \enum_value_1100000100 "PMC2"
+ attribute \enum_value_1100000101 "PMC3"
+ attribute \enum_value_1100000110 "PMC4"
+ attribute \enum_value_1100000111 "PMC5"
+ attribute \enum_value_1100001000 "PMC6"
+ attribute \enum_value_1100001011 "MMCR0"
+ attribute \enum_value_1100001100 "SIAR"
+ attribute \enum_value_1100001101 "SDAR"
+ attribute \enum_value_1100001110 "MMCR1"
+ attribute \enum_value_1100010000 "SIER_priv"
+ attribute \enum_value_1100010001 "MMCR2_priv"
+ attribute \enum_value_1100010010 "MMCRA_priv"
+ attribute \enum_value_1100010011 "PMC1_priv"
+ attribute \enum_value_1100010100 "PMC2_priv"
+ attribute \enum_value_1100010101 "PMC3_priv"
+ attribute \enum_value_1100010110 "PMC4_priv"
+ attribute \enum_value_1100010111 "PMC5_priv"
+ attribute \enum_value_1100011000 "PMC6_priv"
+ attribute \enum_value_1100011011 "MMCR0_priv"
+ attribute \enum_value_1100011100 "SIAR_priv"
+ attribute \enum_value_1100011101 "SDAR_priv"
+ attribute \enum_value_1100011110 "MMCR1_priv"
+ attribute \enum_value_1100100000 "BESCRS"
+ attribute \enum_value_1100100001 "BESCRSU"
+ attribute \enum_value_1100100010 "BESCRR"
+ attribute \enum_value_1100100011 "BESCRRU"
+ attribute \enum_value_1100100100 "EBBHR"
+ attribute \enum_value_1100100101 "EBBRR"
+ attribute \enum_value_1100100110 "BESCR"
+ attribute \enum_value_1100101000 "reserved808"
+ attribute \enum_value_1100101001 "reserved809"
+ attribute \enum_value_1100101010 "reserved810"
+ attribute \enum_value_1100101011 "reserved811"
+ attribute \enum_value_1100101111 "TAR"
+ attribute \enum_value_1100110000 "ASDR"
+ attribute \enum_value_1100110111 "PSSCR"
+ attribute \enum_value_1101010000 "IC"
+ attribute \enum_value_1101010001 "VTB"
+ attribute \enum_value_1101010111 "PSSCR_hypv"
+ attribute \enum_value_1110000000 "PPR"
+ attribute \enum_value_1110000010 "PPR32"
+ attribute \enum_value_1111111111 "PIR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 10 \dec_o_spr_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
connect \BO \dec_BO
connect \SPR \dec_SPR
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:292"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:351"
wire width 1 \dec_o2_lk
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 5 \dec_o2_reg_o
attribute \enum_value_00 "NONE"
attribute \enum_value_01 "ONE"
attribute \enum_value_10 "RC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:329"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:388"
wire width 2 \dec_rc_sel_in
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \dec_rc_rc
attribute \enum_value_00 "NONE"
attribute \enum_value_01 "ONE"
attribute \enum_value_10 "RC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:365"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:424"
wire width 2 \dec_oe_sel_in
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \dec_oe_oe
attribute \enum_value_100 "BA_BB"
attribute \enum_value_101 "BC"
attribute \enum_value_110 "WHOLE_REG"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:390"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:449"
wire width 3 \dec_cr_in_sel_in
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 3 \dec_cr_in_cr_bitfield
wire width 3 \dec_cr_in_cr_bitfield_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \dec_cr_in_cr_bitfield_o_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:395"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:454"
wire width 1 \dec_cr_in_whole_reg
cell \dec_cr_in \dec_cr_in
connect \sel_in \dec_cr_in_sel_in
attribute \enum_value_010 "BF"
attribute \enum_value_011 "BT"
attribute \enum_value_100 "WHOLE_REG"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:442"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:501"
wire width 3 \dec_cr_out_sel_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:441"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:500"
wire width 1 \dec_cr_out_rc_in
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 3 \dec_cr_out_cr_bitfield
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \dec_cr_out_cr_bitfield_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:445"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:504"
wire width 1 \dec_cr_out_whole_reg
cell \dec_cr_out \dec_cr_out
connect \sel_in \dec_cr_out_sel_in
connect \X_BF \dec_X_BF
connect \XL_BT \dec_XL_BT
end
- process $group_0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:590"
+ wire width 7 $6
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:590"
+ wire width 1 $7
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:590"
+ cell $eq $8
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 11
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 11
+ parameter \Y_WIDTH 1
+ connect \A \function_unit
+ connect \B 11'00000000000
+ connect \Y $7
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:590"
+ cell $mux $9
+ parameter \WIDTH 7
+ connect \A \internal_op
+ connect \B 7'0000000
+ connect \S $7
+ connect \Y $6
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:646"
+ wire width 1 $10
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:646"
+ cell $eq $11
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 7
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 7
+ parameter \Y_WIDTH 1
+ connect \A \internal_op
+ connect \B 7'0111111
+ connect \Y $10
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:653"
+ wire width 1 $12
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:653"
+ cell $eq $13
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 7
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 7
+ parameter \Y_WIDTH 1
+ connect \A \internal_op
+ connect \B 7'0000000
+ connect \Y $12
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:664"
+ wire width 1 $14
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:664"
+ cell $eq $15
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 7
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 7
+ parameter \Y_WIDTH 1
+ connect \A \insn_type
+ connect \B 7'0111111
+ connect \Y $14
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:665"
+ wire width 1 $16
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:665"
+ cell $eq $17
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 7
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 7
+ parameter \Y_WIDTH 1
+ connect \A \insn_type
+ connect \B 7'1001001
+ connect \Y $16
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:665"
+ wire width 1 $18
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:665"
+ cell $or $19
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $14
+ connect \B $16
+ connect \Y $18
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:674"
+ wire width 1 $20
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:674"
+ cell $eq $21
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 7
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 7
+ parameter \Y_WIDTH 1
+ connect \A \insn_type
+ connect \B 7'1000110
+ connect \Y $20
+ end
+ process $group_22
assign \insn 32'00000000000000000000000000000000
+ assign \nia 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \insn_type 7'0000000
+ assign \fn_unit 11'00000000000
+ assign \reg1 5'00000
+ assign \reg1_ok 1'0
+ assign \reg2 5'00000
+ assign \reg2_ok 1'0
+ assign \reg3 5'00000
+ assign \reg3_ok 1'0
+ assign \rego 5'00000
+ assign \rego_ok 1'0
+ assign \ea 5'00000
+ assign \ea_ok 1'0
+ assign \imm 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \imm_ok 1'0
+ assign \zero_a 1'0
+ assign \rc 1'0
+ assign \rc_ok 1'0
+ assign \oe 1'0
+ assign \oe_ok 1'0
+ assign \spr1 10'0000000000
+ assign \spr1_ok 1'0
+ assign \spro 10'0000000000
+ assign \spro_ok 1'0
+ assign \fast1 3'000
+ assign \fast1_ok 1'0
+ assign \fast2 3'000
+ assign \fast2_ok 1'0
+ assign \fasto1 3'000
+ assign \fasto1_ok 1'0
+ assign \fasto2 3'000
+ assign \fasto2_ok 1'0
+ assign \cr_in1 3'000
+ assign \cr_in1_ok 1'0
+ assign \cr_in2 3'000
+ assign \cr_in2_ok 1'0
+ assign \cr_in2$2 3'000
+ assign \cr_in2_ok$1 1'0
+ assign \read_cr_whole 1'0
+ assign \cr_out 3'000
+ assign \cr_out_ok 1'0
+ assign \write_cr_whole 1'0
+ assign \data_len 4'0000
+ assign \invert_a 1'0
+ assign \invert_out 1'0
+ assign \input_carry 2'00
+ assign \output_carry 1'0
+ assign \is_32bit 1'0
+ assign \is_signed 1'0
+ assign \lk 1'0
+ assign \byte_reverse 1'0
+ assign \sign_extend 1'0
+ assign \update 1'0
+ assign \input_cr 1'0
+ assign \output_cr 1'0
+ assign \trapaddr 13'0000000000000
+ assign \asmcode 8'00000000
+ assign \traptype 5'00000
assign \insn \opcode_in
+ assign \nia 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \insn_type $6
+ assign \fn_unit \function_unit
+ assign { \reg1_ok \reg1 } { \dec_a_reg_a_ok \dec_a_reg_a }
+ assign { \reg2_ok \reg2 } { \dec_b_reg_b_ok \dec_b_reg_b }
+ assign { \reg3_ok \reg3 } { \dec_c_reg_c_ok \dec_c_reg_c }
+ assign { \rego_ok \rego } { \dec_o_reg_o_ok \dec_o_reg_o }
+ assign { \ea_ok \ea } { \dec_o2_reg_o_ok \dec_o2_reg_o }
+ assign { \imm_ok \imm } { \dec_b_imm_b_ok \dec_b_imm_b }
+ assign \zero_a \dec_a_immz_out
+ assign { \rc_ok \rc } { \dec_rc_rc_ok \dec_rc_rc }
+ assign { \oe_ok \oe } { \dec_oe_oe_ok \dec_oe_oe }
+ assign { \spr1_ok \spr1 } { \dec_a_spr_a_ok \dec_a_spr_a }
+ assign { \spro_ok \spro } { \dec_o_spr_o_ok \dec_o_spr_o }
+ assign { \fast1_ok \fast1 } { \dec_a_fast_a_ok \dec_a_fast_a }
+ assign { \fast2_ok \fast2 } { \dec_b_fast_b_ok \dec_b_fast_b }
+ assign { \fasto1_ok \fasto1 } { \dec_o_fast_o_ok \dec_o_fast_o }
+ assign { \fasto2_ok \fasto2 } { \dec_o2_fast_o_ok \dec_o2_fast_o }
+ assign { \cr_in1_ok \cr_in1 } { \dec_cr_in_cr_bitfield_ok \dec_cr_in_cr_bitfield }
+ assign { \cr_in2_ok \cr_in2 } { \dec_cr_in_cr_bitfield_b_ok \dec_cr_in_cr_bitfield_b }
+ assign { \cr_in2_ok$1 \cr_in2$2 } { \dec_cr_in_cr_bitfield_o_ok \dec_cr_in_cr_bitfield_o }
+ assign \read_cr_whole \dec_cr_in_whole_reg
+ assign { \cr_out_ok \cr_out } { \dec_cr_out_cr_bitfield_ok \dec_cr_out_cr_bitfield }
+ assign \write_cr_whole \dec_cr_out_whole_reg
+ assign \data_len \ldst_len
+ assign \invert_a \inv_a
+ assign \invert_out \inv_out
+ assign \input_carry \dec_cry_in
+ assign \output_carry \cry_out
+ assign \is_32bit \is_32b
+ assign \is_signed \sgn
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:634"
+ switch { \lk$4 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:634"
+ case 1'1
+ assign \lk \dec_LK
+ end
+ switch { }
+ case
+ assign \byte_reverse \br
+ end
+ switch { }
+ case
+ assign \sign_extend \sgn_ext
+ end
+ switch { }
+ case
+ assign \update \upd
+ end
+ switch { }
+ case
+ assign \input_cr \cr_in [0]
+ end
+ switch { }
+ case
+ assign \output_cr \cr_out$3 [0]
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:646"
+ switch { $10 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:646"
+ case 1'1
+ assign \trapaddr 13'0000001110000
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:653"
+ switch { $12 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:653"
+ case 1'1
+ assign { \trapaddr \traptype \update \sign_extend \byte_reverse \data_len \insn \is_signed \is_32bit \output_cr \input_cr \output_carry \input_carry \invert_out \zero_a \invert_a { \oe_ok \oe } { \rc_ok \rc } \lk \write_cr_whole { \cr_out_ok \cr_out } \read_cr_whole { \cr_in2_ok$1 \cr_in2$2 } { \cr_in2_ok \cr_in2 } { \cr_in1_ok \cr_in1 } { \fasto2_ok \fasto2 } { \fasto1_ok \fasto1 } { \fast2_ok \fast2 } { \fast1_ok \fast1 } { \spr1_ok \spr1 } { \spro_ok \spro } { \imm_ok \imm } { \reg3_ok \reg3 } { \reg2_ok \reg2 } { \reg1_ok \reg1 } { \ea_ok \ea } { \rego_ok \rego } \nia \asmcode \fn_unit \insn_type } 313'0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
+ assign \insn \opcode_in
+ assign \insn_type 7'0111111
+ assign \fn_unit 11'00010000000
+ assign \trapaddr 13'0000001110000
+ assign \traptype 5'10000
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:665"
+ switch { $18 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:665"
+ case 1'1
+ assign \fasto1 3'101
+ assign \fasto1_ok 1'1
+ assign \fasto2 3'110
+ assign \fasto2_ok 1'1
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:674"
+ switch { $20 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:674"
+ case 1'1
+ assign \fast1 3'101
+ assign \fast1_ok 1'1
+ assign \fast2 3'110
+ assign \fast2_ok 1'1
+ end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:58"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:81"
wire width 32 \insn_in
process $group_1
assign \insn_in 32'00000000000000000000000000000000
assign \insn_in \opcode_in
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:122"
- wire width 32 \insn_in$5
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:171"
+ wire width 32 \insn_in$22
process $group_2
- assign \insn_in$5 32'00000000000000000000000000000000
- assign \insn_in$5 \opcode_in
+ assign \insn_in$22 32'00000000000000000000000000000000
+ assign \insn_in$22 \opcode_in
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:199"
- wire width 32 \insn_in$6
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:248"
+ wire width 32 \insn_in$23
process $group_3
- assign \insn_in$6 32'00000000000000000000000000000000
- assign \insn_in$6 \opcode_in
+ assign \insn_in$23 32'00000000000000000000000000000000
+ assign \insn_in$23 \opcode_in
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:227"
- wire width 32 \insn_in$7
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:276"
+ wire width 32 \insn_in$24
process $group_4
- assign \insn_in$7 32'00000000000000000000000000000000
- assign \insn_in$7 \opcode_in
+ assign \insn_in$24 32'00000000000000000000000000000000
+ assign \insn_in$24 \opcode_in
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:293"
- wire width 32 \insn_in$8
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:352"
+ wire width 32 \insn_in$25
process $group_5
- assign \insn_in$8 32'00000000000000000000000000000000
- assign \insn_in$8 \opcode_in
+ assign \insn_in$25 32'00000000000000000000000000000000
+ assign \insn_in$25 \opcode_in
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:330"
- wire width 32 \insn_in$9
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:389"
+ wire width 32 \insn_in$26
process $group_6
- assign \insn_in$9 32'00000000000000000000000000000000
- assign \insn_in$9 \opcode_in
+ assign \insn_in$26 32'00000000000000000000000000000000
+ assign \insn_in$26 \opcode_in
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:366"
- wire width 32 \insn_in$10
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:425"
+ wire width 32 \insn_in$27
process $group_7
- assign \insn_in$10 32'00000000000000000000000000000000
- assign \insn_in$10 \opcode_in
+ assign \insn_in$27 32'00000000000000000000000000000000
+ assign \insn_in$27 \opcode_in
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:391"
- wire width 32 \insn_in$11
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:450"
+ wire width 32 \insn_in$28
process $group_8
- assign \insn_in$11 32'00000000000000000000000000000000
- assign \insn_in$11 \opcode_in
+ assign \insn_in$28 32'00000000000000000000000000000000
+ assign \insn_in$28 \opcode_in
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:443"
- wire width 32 \insn_in$12
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:502"
+ wire width 32 \insn_in$29
process $group_9
- assign \insn_in$12 32'00000000000000000000000000000000
- assign \insn_in$12 \opcode_in
+ assign \insn_in$29 32'00000000000000000000000000000000
+ assign \insn_in$29 \opcode_in
sync init
end
process $group_10
attribute \enum_value_01 "RT"
attribute \enum_value_10 "RA"
attribute \enum_value_11 "SPR"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:291"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:350"
wire width 2 \sel_in
process $group_14
assign \sel_in 2'00
assign \dec_cr_out_rc_in \dec_rc_rc
sync init
end
- wire width 1 $verilog_initial_trigger
- process $group_21
- assign \nia 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \nia 64'0000000000000000000000000000000000000000000000000000000000000000
- assign $verilog_initial_trigger $verilog_initial_trigger
- sync init
- update $verilog_initial_trigger 1'0
- end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:530"
- wire width 7 $13
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:530"
- wire width 1 $14
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:530"
- cell $eq $15
- parameter \A_SIGNED 0
- parameter \A_WIDTH 10
- parameter \B_SIGNED 0
- parameter \B_WIDTH 10
- parameter \Y_WIDTH 1
- connect \A \function_unit
- connect \B 10'0000000000
- connect \Y $14
- end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:530"
- cell $mux $16
- parameter \WIDTH 7
- connect \A \internal_op
- connect \B 7'0000000
- connect \S $14
- connect \Y $13
- end
- process $group_22
- assign \insn_type 7'0000000
- assign \insn_type $13
- sync init
- end
- process $group_23
- assign \fn_unit 10'0000000000
- assign \fn_unit \function_unit
- sync init
- end
- process $group_24
- assign \reg1 5'00000
- assign \reg1_ok 1'0
- assign { \reg1_ok \reg1 } { \dec_a_reg_a_ok \dec_a_reg_a }
- sync init
- end
- process $group_26
- assign \reg2 5'00000
- assign \reg2_ok 1'0
- assign { \reg2_ok \reg2 } { \dec_b_reg_b_ok \dec_b_reg_b }
- sync init
- end
- process $group_28
- assign \reg3 5'00000
- assign \reg3_ok 1'0
- assign { \reg3_ok \reg3 } { \dec_c_reg_c_ok \dec_c_reg_c }
- sync init
- end
- process $group_30
- assign \rego 5'00000
- assign \rego_ok 1'0
- assign { \rego_ok \rego } { \dec_o_reg_o_ok \dec_o_reg_o }
- sync init
- end
- process $group_32
- assign \ea 5'00000
- assign \ea_ok 1'0
- assign { \ea_ok \ea } { \dec_o2_reg_o_ok \dec_o2_reg_o }
- sync init
- end
- process $group_34
- assign \imm 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \imm_ok 1'0
- assign { \imm_ok \imm } { \dec_b_imm_b_ok \dec_b_imm_b }
- sync init
- end
- process $group_36
- assign \zero_a 1'0
- assign \zero_a \dec_a_immz_out
- sync init
- end
- process $group_37
- assign \rc 1'0
- assign \rc_ok 1'0
- assign { \rc_ok \rc } { \dec_rc_rc_ok \dec_rc_rc }
- sync init
- end
- process $group_39
- assign \oe 1'0
- assign \oe_ok 1'0
- assign { \oe_ok \oe } { \dec_oe_oe_ok \dec_oe_oe }
- sync init
- end
- process $group_41
- assign \spr1 10'0000000000
- assign \spr1_ok 1'0
- assign { \spr1_ok \spr1 } { \dec_a_spr_a_ok \dec_a_spr_a }
- sync init
- end
- process $group_43
- assign \spro 10'0000000000
- assign \spro_ok 1'0
- assign { \spro_ok \spro } { \dec_o_spr_o_ok \dec_o_spr_o }
- sync init
- end
- process $group_45
- assign \fast1 3'000
- assign \fast1_ok 1'0
- assign { \fast1_ok \fast1 } { \dec_a_fast_a_ok \dec_a_fast_a }
- sync init
- end
- process $group_47
- assign \fast2 3'000
- assign \fast2_ok 1'0
- assign { \fast2_ok \fast2 } { \dec_b_fast_b_ok \dec_b_fast_b }
- sync init
- end
- process $group_49
- assign \fasto1 3'000
- assign \fasto1_ok 1'0
- assign { \fasto1_ok \fasto1 } { \dec_o_fast_o_ok \dec_o_fast_o }
- sync init
- end
- process $group_51
- assign \fasto2 3'000
- assign \fasto2_ok 1'0
- assign { \fasto2_ok \fasto2 } { \dec_o2_fast_o_ok \dec_o2_fast_o }
- sync init
- end
- process $group_53
- assign \cr_in1 3'000
- assign \cr_in1_ok 1'0
- assign { \cr_in1_ok \cr_in1 } { \dec_cr_in_cr_bitfield_ok \dec_cr_in_cr_bitfield }
- sync init
- end
- process $group_55
- assign \cr_in2 3'000
- assign \cr_in2_ok 1'0
- assign { \cr_in2_ok \cr_in2 } { \dec_cr_in_cr_bitfield_b_ok \dec_cr_in_cr_bitfield_b }
- sync init
- end
- process $group_57
- assign \cr_in2$2 3'000
- assign \cr_in2_ok$1 1'0
- assign { \cr_in2_ok$1 \cr_in2$2 } { \dec_cr_in_cr_bitfield_o_ok \dec_cr_in_cr_bitfield_o }
- sync init
- end
- process $group_59
- assign \read_cr_whole 1'0
- assign \read_cr_whole \dec_cr_in_whole_reg
- sync init
- end
- process $group_60
- assign \cr_out 3'000
- assign \cr_out_ok 1'0
- assign { \cr_out_ok \cr_out } { \dec_cr_out_cr_bitfield_ok \dec_cr_out_cr_bitfield }
- sync init
- end
- process $group_62
- assign \write_cr_whole 1'0
- assign \write_cr_whole \dec_cr_out_whole_reg
- sync init
- end
- process $group_63
- assign \data_len 4'0000
- assign \data_len \ldst_len
- sync init
- end
- process $group_64
- assign \invert_a 1'0
- assign \invert_a \inv_a
- sync init
- end
- process $group_65
- assign \invert_out 1'0
- assign \invert_out \inv_out
- sync init
- end
- process $group_66
- assign \input_carry 2'00
- assign \input_carry \dec_cry_in
- sync init
- end
- process $group_67
- assign \output_carry 1'0
- assign \output_carry \cry_out
- sync init
- end
- process $group_68
- assign \is_32bit 1'0
- assign \is_32bit \is_32b
- sync init
- end
- process $group_69
- assign \is_signed 1'0
- assign \is_signed \sgn
- sync init
- end
- process $group_70
- assign \lk 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:573"
- switch { \lk$4 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:573"
- case 1'1
- assign \lk \dec_LK
- end
- sync init
- end
- process $group_71
- assign \byte_reverse 1'0
- assign \byte_reverse \br
- sync init
- end
- process $group_72
- assign \sign_extend 1'0
- assign \sign_extend \sgn_ext
- sync init
- end
- process $group_73
- assign \update 1'0
- assign \update \upd
- sync init
- end
- process $group_74
- assign \input_cr 1'0
- assign \input_cr \cr_in [0]
- sync init
- end
- process $group_75
- assign \output_cr 1'0
- assign \output_cr \cr_out$3 [0]
- sync init
- end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:586"
- wire width 1 $17
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:586"
- cell $eq $18
- parameter \A_SIGNED 0
- parameter \A_WIDTH 7
- parameter \B_SIGNED 0
- parameter \B_WIDTH 7
- parameter \Y_WIDTH 1
- connect \A \internal_op
- connect \B 7'0111111
- connect \Y $17
- end
- process $group_76
- assign \trapaddr 13'0000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:586"
- switch { $17 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:586"
- case 1'1
- assign \trapaddr 13'0000001110000
- end
- sync init
- end
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.alu0.alu_alu0.p"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.alu0.alu_alu0.pipe.p"
-module \p$1
+module \p$2
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
wire width 1 input 0 \p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.alu0.alu_alu0.pipe.n"
-module \n$2
+module \n$3
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
wire width 1 input 0 \n_valid_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 input 1 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 input 2 \op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 input 2 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 input 3 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 output 30 \op__insn_type$2
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 output 31 \op__fn_unit$3
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 output 31 \op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 output 32 \op__imm_data__imm$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
end
process $group_5
assign \op__insn_type$2 7'0000000
- assign \op__fn_unit$3 10'0000000000
+ assign \op__fn_unit$3 11'00000000000
assign \op__imm_data__imm$4 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$5 1'0
assign \op__lk$6 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 input 1 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 input 2 \op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 input 2 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 input 3 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 output 30 \op__insn_type$2
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 output 31 \op__fn_unit$3
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 output 31 \op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 output 32 \op__imm_data__imm$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
end
process $group_19
assign \op__insn_type$2 7'0000000
- assign \op__fn_unit$3 10'0000000000
+ assign \op__fn_unit$3 11'00000000000
assign \op__imm_data__imm$4 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$5 1'0
assign \op__lk$6 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 input 1 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 input 2 \op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 input 2 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 input 3 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 output 32 \op__insn_type$2
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 output 33 \op__fn_unit$3
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 output 33 \op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 output 34 \op__imm_data__imm$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
end
process $group_16
assign \op__insn_type$2 7'0000000
- assign \op__fn_unit$3 10'0000000000
+ assign \op__fn_unit$3 11'00000000000
assign \op__imm_data__imm$4 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$5 1'0
assign \op__lk$6 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 input 5 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 input 6 \op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 input 6 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 input 7 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 \op__insn_type$2$next
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 output 37 \op__fn_unit$3
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 \op__fn_unit$3$next
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 output 37 \op__fn_unit$3
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 \op__fn_unit$3$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 output 38 \op__imm_data__imm$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 1 output 69 \xer_so_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \xer_so_ok$next
- cell \p$1 \p
+ cell \p$2 \p
connect \p_valid_i \p_valid_i
connect \p_ready_o \p_ready_o
end
- cell \n$2 \n
+ cell \n$3 \n
connect \n_valid_o \n_valid_o
connect \n_ready_i \n_ready_i
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 \input_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 \input_op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 \input_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 \input_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 \input_op__insn_type$29
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 \input_op__fn_unit$30
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 \input_op__fn_unit$30
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 \input_op__imm_data__imm$31
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 \main_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 \main_op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 \main_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 \main_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 \main_op__insn_type$58
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 \main_op__fn_unit$59
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 \main_op__fn_unit$59
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 \main_op__imm_data__imm$60
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 \output_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 \output_op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 \output_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 \output_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 \output_op__insn_type$85
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 \output_op__fn_unit$86
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 \output_op__fn_unit$86
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 \output_op__imm_data__imm$87
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
end
process $group_1
assign \input_op__insn_type 7'0000000
- assign \input_op__fn_unit 10'0000000000
+ assign \input_op__fn_unit 11'00000000000
assign \input_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \input_op__imm_data__imm_ok 1'0
assign \input_op__lk 1'0
end
process $group_30
assign \main_op__insn_type 7'0000000
- assign \main_op__fn_unit 10'0000000000
+ assign \main_op__fn_unit 11'00000000000
assign \main_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \main_op__imm_data__imm_ok 1'0
assign \main_op__lk 1'0
end
process $group_59
assign \output_op__insn_type 7'0000000
- assign \output_op__fn_unit 10'0000000000
+ assign \output_op__fn_unit 11'00000000000
assign \output_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \output_op__imm_data__imm_ok 1'0
assign \output_op__lk 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 \op__insn_type$124
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 \op__fn_unit$125
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 \op__fn_unit$125
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 \op__imm_data__imm$126
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 1 \op__sign_extend$147
process $group_97
assign \op__insn_type$124 7'0000000
- assign \op__fn_unit$125 10'0000000000
+ assign \op__fn_unit$125 11'00000000000
assign \op__imm_data__imm$126 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$127 1'0
assign \op__lk$128 1'0
end
sync init
update \op__insn_type$2 7'0000000
- update \op__fn_unit$3 10'0000000000
+ update \op__fn_unit$3 11'00000000000
update \op__imm_data__imm$4 64'0000000000000000000000000000000000000000000000000000000000000000
update \op__imm_data__imm_ok$5 1'0
update \op__lk$6 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 input 14 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 input 15 \op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 input 15 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 input 16 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 \pipe_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 \pipe_op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 \pipe_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 \pipe_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 \pipe_op__insn_type$4
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 \pipe_op__fn_unit$5
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 \pipe_op__fn_unit$5
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 \pipe_op__imm_data__imm$6
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
end
process $group_3
assign \pipe_op__insn_type 7'0000000
- assign \pipe_op__fn_unit 10'0000000000
+ assign \pipe_op__fn_unit 11'00000000000
assign \pipe_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \pipe_op__imm_data__imm_ok 1'0
assign \pipe_op__lk 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 \op__insn_type$31
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 \op__fn_unit$32
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 \op__fn_unit$32
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 \op__imm_data__imm$33
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 1 \op__sign_extend$54
process $group_34
assign \op__insn_type$31 7'0000000
- assign \op__fn_unit$32 10'0000000000
+ assign \op__fn_unit$32 11'00000000000
assign \op__imm_data__imm$33 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$34 1'0
assign \op__lk$35 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 input 2 \oper_i__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 input 3 \oper_i__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 input 3 \oper_i__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 input 4 \oper_i__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 \alu_alu0_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 \alu_alu0_op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 \alu_alu0_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 \alu_alu0_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 \oper_r__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 \oper_r__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 \oper_r__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 \oper_r__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 7 \oper_l__insn_type$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 10 \oper_l__fn_unit
+ wire width 11 \oper_l__fn_unit
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 10 \oper_l__fn_unit$next
+ wire width 11 \oper_l__fn_unit$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 64 \oper_l__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 1 \oper_l__sign_extend$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
- wire width 139 $69
+ wire width 140 $69
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
cell $mux $70
- parameter \WIDTH 139
+ parameter \WIDTH 140
connect \A { \oper_l__sign_extend \oper_l__byte_reverse \oper_l__insn \oper_l__data_len \oper_l__is_signed \oper_l__is_32bit \oper_l__output_cr \oper_l__input_cr \oper_l__output_carry \oper_l__input_carry { \oper_l__write_cr__ok \oper_l__write_cr__data } \oper_l__invert_out \oper_l__zero_a \oper_l__invert_a { \oper_l__oe__oe_ok \oper_l__oe__oe } { \oper_l__rc__rc_ok \oper_l__rc__rc } \oper_l__lk { \oper_l__imm_data__imm_ok \oper_l__imm_data__imm } \oper_l__fn_unit \oper_l__insn_type }
connect \B { \oper_i__sign_extend \oper_i__byte_reverse \oper_i__insn \oper_i__data_len \oper_i__is_signed \oper_i__is_32bit \oper_i__output_cr \oper_i__input_cr \oper_i__output_carry \oper_i__input_carry { \oper_i__write_cr__ok \oper_i__write_cr__data } \oper_i__invert_out \oper_i__zero_a \oper_i__invert_a { \oper_i__oe__oe_ok \oper_i__oe__oe } { \oper_i__rc__rc_ok \oper_i__rc__rc } \oper_i__lk { \oper_i__imm_data__imm_ok \oper_i__imm_data__imm } \oper_i__fn_unit \oper_i__insn_type }
connect \S \issue_i
end
process $group_25
assign \oper_r__insn_type 7'0000000
- assign \oper_r__fn_unit 10'0000000000
+ assign \oper_r__fn_unit 11'00000000000
assign \oper_r__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \oper_r__imm_data__imm_ok 1'0
assign \oper_r__lk 1'0
end
sync init
update \oper_l__insn_type 7'0000000
- update \oper_l__fn_unit 10'0000000000
+ update \oper_l__fn_unit 11'00000000000
update \oper_l__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
update \oper_l__imm_data__imm_ok 1'0
update \oper_l__lk 1'0
end
process $group_94
assign \alu_alu0_op__insn_type 7'0000000
- assign \alu_alu0_op__fn_unit 10'0000000000
+ assign \alu_alu0_op__fn_unit 11'00000000000
assign \alu_alu0_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \alu_alu0_op__imm_data__imm_ok 1'0
assign \alu_alu0_op__lk 1'0
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.cr0.alu_cr0.p"
-module \p$3
+module \p$4
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
wire width 1 input 0 \p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.cr0.alu_cr0.n"
-module \n$4
+module \n$5
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
wire width 1 input 0 \n_valid_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.cr0.alu_cr0.pipe.p"
-module \p$6
+module \p$7
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
wire width 1 input 0 \p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.cr0.alu_cr0.pipe.n"
-module \n$7
+module \n$8
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
wire width 1 input 0 \n_valid_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.cr0.alu_cr0.pipe.main"
-module \main$8
+module \main$9
attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
wire width 2 input 0 \muxid
attribute \enum_base_type "InternalOp"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 7 input 1 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 input 2 \op__fn_unit
+ wire width 11 input 2 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 32 input 3 \op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 7 output 13 \op__insn_type$2
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 output 14 \op__fn_unit$3
+ wire width 11 output 14 \op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 32 output 15 \op__insn$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
end
process $group_17
assign \op__insn_type$2 7'0000000
- assign \op__fn_unit$3 10'0000000000
+ assign \op__fn_unit$3 11'00000000000
assign \op__insn$4 32'00000000000000000000000000000000
assign \op__read_cr_whole$5 1'0
assign \op__write_cr_whole$6 1'0
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.cr0.alu_cr0.pipe"
-module \pipe$5
+module \pipe$6
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 7 input 5 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 input 6 \op__fn_unit
+ wire width 11 input 6 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 32 input 7 \op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 7 \op__insn_type$2$next
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 output 20 \op__fn_unit$3
+ wire width 11 output 20 \op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 \op__fn_unit$3$next
+ wire width 11 \op__fn_unit$3$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 32 output 21 \op__insn$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 1 output 29 \cr_a_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \cr_a_ok$next
- cell \p$6 \p
+ cell \p$7 \p
connect \p_valid_i \p_valid_i
connect \p_ready_o \p_ready_o
end
- cell \n$7 \n
+ cell \n$8 \n
connect \n_valid_o \n_valid_o
connect \n_ready_i \n_ready_i
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 7 \main_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 \main_op__fn_unit
+ wire width 11 \main_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 32 \main_op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 7 \main_op__insn_type$10
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 \main_op__fn_unit$11
+ wire width 11 \main_op__fn_unit$11
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 32 \main_op__insn$12
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 4 \main_cr_a$16
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \main_cr_a_ok
- cell \main$8 \main
+ cell \main$9 \main
connect \muxid \main_muxid
connect \op__insn_type \main_op__insn_type
connect \op__fn_unit \main_op__fn_unit
end
process $group_1
assign \main_op__insn_type 7'0000000
- assign \main_op__fn_unit 10'0000000000
+ assign \main_op__fn_unit 11'00000000000
assign \main_op__insn 32'00000000000000000000000000000000
assign \main_op__read_cr_whole 1'0
assign \main_op__write_cr_whole 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 7 \op__insn_type$21
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 \op__fn_unit$22
+ wire width 11 \op__fn_unit$22
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 32 \op__insn$23
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 1 \op__write_cr_whole$25
process $group_16
assign \op__insn_type$21 7'0000000
- assign \op__fn_unit$22 10'0000000000
+ assign \op__fn_unit$22 11'00000000000
assign \op__insn$23 32'00000000000000000000000000000000
assign \op__read_cr_whole$24 1'0
assign \op__write_cr_whole$25 1'0
end
sync init
update \op__insn_type$2 7'0000000
- update \op__fn_unit$3 10'0000000000
+ update \op__fn_unit$3 11'00000000000
update \op__insn$4 32'00000000000000000000000000000000
update \op__read_cr_whole$5 1'0
update \op__write_cr_whole$6 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 7 input 10 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 input 11 \op__fn_unit
+ wire width 11 input 11 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 32 input 12 \op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 1 input 21 \p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
wire width 1 output 22 \p_ready_o
- cell \p$3 \p
+ cell \p$4 \p
connect \p_valid_i \p_valid_i
connect \p_ready_o \p_ready_o
end
- cell \n$4 \n
+ cell \n$5 \n
connect \n_valid_o \n_valid_o
connect \n_ready_i \n_ready_i
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 7 \pipe_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 \pipe_op__fn_unit
+ wire width 11 \pipe_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 32 \pipe_op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 7 \pipe_op__insn_type$4
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 \pipe_op__fn_unit$5
+ wire width 11 \pipe_op__fn_unit$5
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 32 \pipe_op__insn$6
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 4 \pipe_cr_a$10
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \pipe_cr_a_ok
- cell \pipe$5 \pipe
+ cell \pipe$6 \pipe
connect \rst \rst
connect \clk \clk
connect \p_valid_i \pipe_p_valid_i
end
process $group_3
assign \pipe_op__insn_type 7'0000000
- assign \pipe_op__fn_unit 10'0000000000
+ assign \pipe_op__fn_unit 11'00000000000
assign \pipe_op__insn 32'00000000000000000000000000000000
assign \pipe_op__read_cr_whole 1'0
assign \pipe_op__write_cr_whole 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 7 \op__insn_type$12
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 \op__fn_unit$13
+ wire width 11 \op__fn_unit$13
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 32 \op__insn$14
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 1 \op__write_cr_whole$16
process $group_17
assign \op__insn_type$12 7'0000000
- assign \op__fn_unit$13 10'0000000000
+ assign \op__fn_unit$13 11'00000000000
assign \op__insn$14 32'00000000000000000000000000000000
assign \op__read_cr_whole$15 1'0
assign \op__write_cr_whole$16 1'0
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.cr0.src_l"
-module \src_l$9
+module \src_l$10
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.cr0.opc_l"
-module \opc_l$10
+module \opc_l$11
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.cr0.req_l"
-module \req_l$11
+module \req_l$12
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.cr0.rst_l"
-module \rst_l$12
+module \rst_l$13
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.cr0.rok_l"
-module \rok_l$13
+module \rok_l$14
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.cr0.alui_l"
-module \alui_l$14
+module \alui_l$15
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.cr0.alu_l"
-module \alu_l$15
+module \alu_l$16
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 7 input 2 \oper_i__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 input 3 \oper_i__fn_unit
+ wire width 11 input 3 \oper_i__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 32 input 4 \oper_i__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 7 \alu_cr0_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 \alu_cr0_op__fn_unit
+ wire width 11 \alu_cr0_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 32 \alu_cr0_op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 6 \src_l_r_src$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
wire width 6 \src_l_q_src
- cell \src_l$9 \src_l
+ cell \src_l$10 \src_l
connect \rst \rst
connect \clk \clk
connect \s_src \src_l_s_src
wire width 1 \opc_l_r_opc$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
wire width 1 \opc_l_q_opc
- cell \opc_l$10 \opc_l
+ cell \opc_l$11 \opc_l
connect \rst \rst
connect \clk \clk
connect \s_opc \opc_l_s_opc
wire width 3 \req_l_s_req
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
wire width 3 \req_l_r_req
- cell \req_l$11 \req_l
+ cell \req_l$12 \req_l
connect \rst \rst
connect \clk \clk
connect \q_req \req_l_q_req
wire width 1 \rst_l_s_rst
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
wire width 1 \rst_l_r_rst
- cell \rst_l$12 \rst_l
+ cell \rst_l$13 \rst_l
connect \rst \rst
connect \clk \clk
connect \s_rst \rst_l_s_rst
wire width 1 \rok_l_r_rdok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
wire width 1 \rok_l_r_rdok$next
- cell \rok_l$13 \rok_l
+ cell \rok_l$14 \rok_l
connect \rst \rst
connect \clk \clk
connect \q_rdok \rok_l_q_rdok
wire width 1 \alui_l_r_alui$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
wire width 1 \alui_l_s_alui
- cell \alui_l$14 \alui_l
+ cell \alui_l$15 \alui_l
connect \rst \rst
connect \clk \clk
connect \q_alui \alui_l_q_alui
wire width 1 \alu_l_r_alu$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
wire width 1 \alu_l_s_alu
- cell \alu_l$15 \alu_l
+ cell \alu_l$16 \alu_l
connect \rst \rst
connect \clk \clk
connect \q_alu \alu_l_q_alu
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 7 \oper_r__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 \oper_r__fn_unit
+ wire width 11 \oper_r__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 32 \oper_r__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 7 \oper_l__insn_type$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 10 \oper_l__fn_unit
+ wire width 11 \oper_l__fn_unit
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 10 \oper_l__fn_unit$next
+ wire width 11 \oper_l__fn_unit$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 32 \oper_l__insn
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 1 \oper_l__write_cr_whole$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
- wire width 51 $69
+ wire width 52 $69
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
cell $mux $70
- parameter \WIDTH 51
+ parameter \WIDTH 52
connect \A { \oper_l__write_cr_whole \oper_l__read_cr_whole \oper_l__insn \oper_l__fn_unit \oper_l__insn_type }
connect \B { \oper_i__write_cr_whole \oper_i__read_cr_whole \oper_i__insn \oper_i__fn_unit \oper_i__insn_type }
connect \S \issue_i
end
process $group_25
assign \oper_r__insn_type 7'0000000
- assign \oper_r__fn_unit 10'0000000000
+ assign \oper_r__fn_unit 11'00000000000
assign \oper_r__insn 32'00000000000000000000000000000000
assign \oper_r__read_cr_whole 1'0
assign \oper_r__write_cr_whole 1'0
end
sync init
update \oper_l__insn_type 7'0000000
- update \oper_l__fn_unit 10'0000000000
+ update \oper_l__fn_unit 11'00000000000
update \oper_l__insn 32'00000000000000000000000000000000
update \oper_l__read_cr_whole 1'0
update \oper_l__write_cr_whole 1'0
end
process $group_48
assign \alu_cr0_op__insn_type 7'0000000
- assign \alu_cr0_op__fn_unit 10'0000000000
+ assign \alu_cr0_op__fn_unit 11'00000000000
assign \alu_cr0_op__insn 32'00000000000000000000000000000000
assign \alu_cr0_op__read_cr_whole 1'0
assign \alu_cr0_op__write_cr_whole 1'0
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.branch0.alu_branch0.p"
-module \p$16
+module \p$17
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
wire width 1 input 0 \p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.branch0.alu_branch0.n"
-module \n$17
+module \n$18
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
wire width 1 input 0 \n_valid_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.branch0.alu_branch0.pipe.p"
-module \p$19
+module \p$20
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
wire width 1 input 0 \p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.branch0.alu_branch0.pipe.n"
-module \n$20
+module \n$21
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
wire width 1 input 0 \n_valid_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.branch0.alu_branch0.pipe.main"
-module \main$21
+module \main$22
attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
wire width 2 input 0 \muxid
attribute \enum_base_type "InternalOp"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 7 input 1 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 input 2 \op__fn_unit
+ wire width 11 input 2 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 64 input 3 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 32 input 7 \op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 input 8 \spr1
+ wire width 64 input 8 \fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 input 9 \spr2
+ wire width 64 input 9 \fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 4 input 10 \cr_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 7 output 13 \op__insn_type$2
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 output 14 \op__fn_unit$3
+ wire width 11 output 14 \op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 64 output 15 \op__imm_data__imm$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 32 output 19 \op__insn$8
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 20 \spr1$9
+ wire width 64 output 20 \fast1$9
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 21 \spr1_ok
+ wire width 1 output 21 \fast1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 22 \spr2$10
+ wire width 64 output 22 \fast2$10
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 23 \spr2_ok
+ wire width 1 output 23 \fast2_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 output 24 \nia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 65
- connect \A \spr1
+ connect \A \fast1
connect \B 1'1
connect \Y $35
end
sync init
end
process $group_6
- assign \spr1$9 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast1$9 64'0000000000000000000000000000000000000000000000000000000000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/main_stage.py:97"
switch { { \op__insn [25] \op__insn [24] \op__insn [23] \op__insn [22] \op__insn [21] } [2] }
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/main_stage.py:97"
case 1'1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/main_stage.py:99"
case
- assign \spr1$9 \ctr_n
+ assign \fast1$9 \ctr_n
end
sync init
end
parameter \A_SIGNED 0
parameter \A_WIDTH 32
parameter \Y_WIDTH 64
- connect \A \spr1 [31:0]
+ connect \A \fast1 [31:0]
connect \Y $37
end
process $group_7
assign \ctr_m $37
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/main_stage.py:109"
case
- assign \ctr_m \spr1
+ assign \ctr_m \fast1
end
end
sync init
switch { $45 }
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/main_stage.py:137"
case 1'1
- assign \br_imm_addr { \spr1 [63:2] 2'00 }
+ assign \br_imm_addr { \fast1 [63:2] 2'00 }
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/main_stage.py:139"
case
- assign \br_imm_addr { \spr2 [63:2] 2'00 }
+ assign \br_imm_addr { \fast2 [63:2] 2'00 }
end
end
sync init
sync init
end
process $group_11
- assign \spr1_ok 1'0
+ assign \fast1_ok 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/main_stage.py:122"
switch \op__insn_type
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/main_stage.py:124"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/main_stage.py:129"
attribute \nmigen.decoding "OP_BC/7"
case 7'0000111
- assign \spr1_ok \ctr_write
+ assign \fast1_ok \ctr_write
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/main_stage.py:135"
attribute \nmigen.decoding "OP_BCREG/8"
case 7'0001000
- assign \spr1_ok \ctr_write
+ assign \fast1_ok \ctr_write
end
sync init
end
end
connect $47 $48
process $group_14
- assign \spr2$10 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast2$10 64'0000000000000000000000000000000000000000000000000000000000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/main_stage.py:149"
switch { \op__lk }
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/main_stage.py:149"
case 1'1
- assign \spr2$10 $47 [63:0]
+ assign \fast2$10 $47 [63:0]
end
sync init
end
process $group_15
- assign \spr2_ok 1'0
+ assign \fast2_ok 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/main_stage.py:149"
switch { \op__lk }
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/main_stage.py:149"
case 1'1
- assign \spr2_ok 1'1
+ assign \fast2_ok 1'1
end
sync init
end
end
process $group_17
assign \op__insn_type$2 7'0000000
- assign \op__fn_unit$3 10'0000000000
+ assign \op__fn_unit$3 11'00000000000
assign \op__imm_data__imm$4 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$5 1'0
assign \op__lk$6 1'0
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.branch0.alu_branch0.pipe"
-module \pipe$18
+module \pipe$19
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 7 input 5 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 input 6 \op__fn_unit
+ wire width 11 input 6 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 64 input 7 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 32 input 11 \op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 input 12 \spr1
+ wire width 64 input 12 \fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 input 13 \spr2
+ wire width 64 input 13 \fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 4 input 14 \cr_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 7 \op__insn_type$2$next
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 output 20 \op__fn_unit$3
+ wire width 11 output 20 \op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 \op__fn_unit$3$next
+ wire width 11 \op__fn_unit$3$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 64 output 21 \op__imm_data__imm$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 32 \op__insn$8$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 26 \spr1$9
+ wire width 64 output 26 \fast1$9
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \spr1$9$next
+ wire width 64 \fast1$9$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 27 \spr1_ok
+ wire width 1 output 27 \fast1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \spr1_ok$next
+ wire width 1 \fast1_ok$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 28 \spr2$10
+ wire width 64 output 28 \fast2$10
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \spr2$10$next
+ wire width 64 \fast2$10$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 29 \spr2_ok
+ wire width 1 output 29 \fast2_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \spr2_ok$next
+ wire width 1 \fast2_ok$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 output 30 \nia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 31 \nia_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \nia_ok$next
- cell \p$19 \p
+ cell \p$20 \p
connect \p_valid_i \p_valid_i
connect \p_ready_o \p_ready_o
end
- cell \n$20 \n
+ cell \n$21 \n
connect \n_valid_o \n_valid_o
connect \n_ready_i \n_ready_i
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 7 \main_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 \main_op__fn_unit
+ wire width 11 \main_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 64 \main_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 32 \main_op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 \main_spr1
+ wire width 64 \main_fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 \main_spr2
+ wire width 64 \main_fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 4 \main_cr_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 7 \main_op__insn_type$12
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 \main_op__fn_unit$13
+ wire width 11 \main_op__fn_unit$13
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 64 \main_op__imm_data__imm$14
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 32 \main_op__insn$18
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \main_spr1$19
+ wire width 64 \main_fast1$19
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \main_spr1_ok
+ wire width 1 \main_fast1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \main_spr2$20
+ wire width 64 \main_fast2$20
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \main_spr2_ok
+ wire width 1 \main_fast2_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 \main_nia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \main_nia_ok
- cell \main$21 \main
+ cell \main$22 \main
connect \muxid \main_muxid
connect \op__insn_type \main_op__insn_type
connect \op__fn_unit \main_op__fn_unit
connect \op__lk \main_op__lk
connect \op__is_32bit \main_op__is_32bit
connect \op__insn \main_op__insn
- connect \spr1 \main_spr1
- connect \spr2 \main_spr2
+ connect \fast1 \main_fast1
+ connect \fast2 \main_fast2
connect \cr_a \main_cr_a
connect \cia \main_cia
connect \muxid$1 \main_muxid$11
connect \op__lk$6 \main_op__lk$16
connect \op__is_32bit$7 \main_op__is_32bit$17
connect \op__insn$8 \main_op__insn$18
- connect \spr1$9 \main_spr1$19
- connect \spr1_ok \main_spr1_ok
- connect \spr2$10 \main_spr2$20
- connect \spr2_ok \main_spr2_ok
+ connect \fast1$9 \main_fast1$19
+ connect \fast1_ok \main_fast1_ok
+ connect \fast2$10 \main_fast2$20
+ connect \fast2_ok \main_fast2_ok
connect \nia \main_nia
connect \nia_ok \main_nia_ok
end
end
process $group_1
assign \main_op__insn_type 7'0000000
- assign \main_op__fn_unit 10'0000000000
+ assign \main_op__fn_unit 11'00000000000
assign \main_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \main_op__imm_data__imm_ok 1'0
assign \main_op__lk 1'0
sync init
end
process $group_8
- assign \main_spr1 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \main_spr1 \spr1
+ assign \main_fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \main_fast1 \fast1
sync init
end
process $group_9
- assign \main_spr2 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \main_spr2 \spr2
+ assign \main_fast2 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \main_fast2 \fast2
sync init
end
process $group_10
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 7 \op__insn_type$25
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 \op__fn_unit$26
+ wire width 11 \op__fn_unit$26
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 64 \op__imm_data__imm$27
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 32 \op__insn$31
process $group_16
assign \op__insn_type$25 7'0000000
- assign \op__fn_unit$26 10'0000000000
+ assign \op__fn_unit$26 11'00000000000
assign \op__imm_data__imm$27 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$28 1'0
assign \op__lk$29 1'0
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \spr1$32
+ wire width 64 \fast1$32
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \spr1_ok$33
+ wire width 1 \fast1_ok$33
process $group_23
- assign \spr1$32 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \spr1_ok$33 1'0
- assign { \spr1_ok$33 \spr1$32 } { \main_spr1_ok \main_spr1$19 }
+ assign \fast1$32 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast1_ok$33 1'0
+ assign { \fast1_ok$33 \fast1$32 } { \main_fast1_ok \main_fast1$19 }
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \spr2$34
+ wire width 64 \fast2$34
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \spr2_ok$35
+ wire width 1 \fast2_ok$35
process $group_25
- assign \spr2$34 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \spr2_ok$35 1'0
- assign { \spr2_ok$35 \spr2$34 } { \main_spr2_ok \main_spr2$20 }
+ assign \fast2$34 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast2_ok$35 1'0
+ assign { \fast2_ok$35 \fast2$34 } { \main_fast2_ok \main_fast2$20 }
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
end
sync init
update \op__insn_type$2 7'0000000
- update \op__fn_unit$3 10'0000000000
+ update \op__fn_unit$3 11'00000000000
update \op__imm_data__imm$4 64'0000000000000000000000000000000000000000000000000000000000000000
update \op__imm_data__imm_ok$5 1'0
update \op__lk$6 1'0
update \op__insn$8 \op__insn$8$next
end
process $group_38
- assign \spr1$9$next \spr1$9
- assign \spr1_ok$next \spr1_ok
+ assign \fast1$9$next \fast1$9
+ assign \fast1_ok$next \fast1_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
switch { \n_i_rdy_data \p_valid_i_p_ready_o }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
case 2'-1
- assign { \spr1_ok$next \spr1$9$next } { \spr1_ok$33 \spr1$32 }
+ assign { \fast1_ok$next \fast1$9$next } { \fast1_ok$33 \fast1$32 }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:637"
case 2'1-
- assign { \spr1_ok$next \spr1$9$next } { \spr1_ok$33 \spr1$32 }
+ assign { \fast1_ok$next \fast1$9$next } { \fast1_ok$33 \fast1$32 }
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \spr1_ok$next 1'0
+ assign \fast1_ok$next 1'0
end
sync init
- update \spr1$9 64'0000000000000000000000000000000000000000000000000000000000000000
- update \spr1_ok 1'0
+ update \fast1$9 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \fast1_ok 1'0
sync posedge \clk
- update \spr1$9 \spr1$9$next
- update \spr1_ok \spr1_ok$next
+ update \fast1$9 \fast1$9$next
+ update \fast1_ok \fast1_ok$next
end
process $group_40
- assign \spr2$10$next \spr2$10
- assign \spr2_ok$next \spr2_ok
+ assign \fast2$10$next \fast2$10
+ assign \fast2_ok$next \fast2_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
switch { \n_i_rdy_data \p_valid_i_p_ready_o }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
case 2'-1
- assign { \spr2_ok$next \spr2$10$next } { \spr2_ok$35 \spr2$34 }
+ assign { \fast2_ok$next \fast2$10$next } { \fast2_ok$35 \fast2$34 }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:637"
case 2'1-
- assign { \spr2_ok$next \spr2$10$next } { \spr2_ok$35 \spr2$34 }
+ assign { \fast2_ok$next \fast2$10$next } { \fast2_ok$35 \fast2$34 }
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \spr2_ok$next 1'0
+ assign \fast2_ok$next 1'0
end
sync init
- update \spr2$10 64'0000000000000000000000000000000000000000000000000000000000000000
- update \spr2_ok 1'0
+ update \fast2$10 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \fast2_ok 1'0
sync posedge \clk
- update \spr2$10 \spr2$10$next
- update \spr2_ok \spr2_ok$next
+ update \fast2$10 \fast2$10$next
+ update \fast2_ok \fast2_ok$next
end
process $group_42
assign \nia$next \nia
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 1 \clk
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 2 \spr1_ok
+ wire width 1 output 2 \fast1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 3 \spr1
+ wire width 64 output 3 \fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 4 \spr2_ok
+ wire width 1 output 4 \fast2_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 5 \spr2
+ wire width 64 output 5 \fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 6 \nia_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 7 input 10 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 input 11 \op__fn_unit
+ wire width 11 input 11 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 64 input 12 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 32 input 16 \op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 input 17 \spr1$1
+ wire width 64 input 17 \fast1$1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 input 18 \spr2$2
+ wire width 64 input 18 \fast2$2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 4 input 19 \cr_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 1 input 21 \p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
wire width 1 output 22 \p_ready_o
- cell \p$16 \p
+ cell \p$17 \p
connect \p_valid_i \p_valid_i
connect \p_ready_o \p_ready_o
end
- cell \n$17 \n
+ cell \n$18 \n
connect \n_valid_o \n_valid_o
connect \n_ready_i \n_ready_i
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 7 \pipe_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 \pipe_op__fn_unit
+ wire width 11 \pipe_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 64 \pipe_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 32 \pipe_op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 \pipe_spr1
+ wire width 64 \pipe_fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 \pipe_spr2
+ wire width 64 \pipe_fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 4 \pipe_cr_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 7 \pipe_op__insn_type$4
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 \pipe_op__fn_unit$5
+ wire width 11 \pipe_op__fn_unit$5
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 64 \pipe_op__imm_data__imm$6
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 32 \pipe_op__insn$10
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \pipe_spr1$11
+ wire width 64 \pipe_fast1$11
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \pipe_spr1_ok
+ wire width 1 \pipe_fast1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \pipe_spr2$12
+ wire width 64 \pipe_fast2$12
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \pipe_spr2_ok
+ wire width 1 \pipe_fast2_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 \pipe_nia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \pipe_nia_ok
- cell \pipe$18 \pipe
+ cell \pipe$19 \pipe
connect \rst \rst
connect \clk \clk
connect \p_valid_i \pipe_p_valid_i
connect \op__lk \pipe_op__lk
connect \op__is_32bit \pipe_op__is_32bit
connect \op__insn \pipe_op__insn
- connect \spr1 \pipe_spr1
- connect \spr2 \pipe_spr2
+ connect \fast1 \pipe_fast1
+ connect \fast2 \pipe_fast2
connect \cr_a \pipe_cr_a
connect \cia \pipe_cia
connect \n_valid_o \pipe_n_valid_o
connect \op__lk$6 \pipe_op__lk$8
connect \op__is_32bit$7 \pipe_op__is_32bit$9
connect \op__insn$8 \pipe_op__insn$10
- connect \spr1$9 \pipe_spr1$11
- connect \spr1_ok \pipe_spr1_ok
- connect \spr2$10 \pipe_spr2$12
- connect \spr2_ok \pipe_spr2_ok
+ connect \fast1$9 \pipe_fast1$11
+ connect \fast1_ok \pipe_fast1_ok
+ connect \fast2$10 \pipe_fast2$12
+ connect \fast2_ok \pipe_fast2_ok
connect \nia \pipe_nia
connect \nia_ok \pipe_nia_ok
end
end
process $group_3
assign \pipe_op__insn_type 7'0000000
- assign \pipe_op__fn_unit 10'0000000000
+ assign \pipe_op__fn_unit 11'00000000000
assign \pipe_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \pipe_op__imm_data__imm_ok 1'0
assign \pipe_op__lk 1'0
sync init
end
process $group_10
- assign \pipe_spr1 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \pipe_spr1 \spr1$1
+ assign \pipe_fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \pipe_fast1 \fast1$1
sync init
end
process $group_11
- assign \pipe_spr2 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \pipe_spr2 \spr2$2
+ assign \pipe_fast2 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \pipe_fast2 \fast2$2
sync init
end
process $group_12
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 7 \op__insn_type$14
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 \op__fn_unit$15
+ wire width 11 \op__fn_unit$15
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 64 \op__imm_data__imm$16
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 32 \op__insn$20
process $group_17
assign \op__insn_type$14 7'0000000
- assign \op__fn_unit$15 10'0000000000
+ assign \op__fn_unit$15 11'00000000000
assign \op__imm_data__imm$16 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$17 1'0
assign \op__lk$18 1'0
sync init
end
process $group_24
- assign \spr1 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \spr1_ok 1'0
- assign { \spr1_ok \spr1 } { \pipe_spr1_ok \pipe_spr1$11 }
+ assign \fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast1_ok 1'0
+ assign { \fast1_ok \fast1 } { \pipe_fast1_ok \pipe_fast1$11 }
sync init
end
process $group_26
- assign \spr2 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \spr2_ok 1'0
- assign { \spr2_ok \spr2 } { \pipe_spr2_ok \pipe_spr2$12 }
+ assign \fast2 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast2_ok 1'0
+ assign { \fast2_ok \fast2 } { \pipe_fast2_ok \pipe_fast2$12 }
sync init
end
process $group_28
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.branch0.src_l"
-module \src_l$22
+module \src_l$23
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.branch0.opc_l"
-module \opc_l$23
+module \opc_l$24
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.branch0.req_l"
-module \req_l$24
+module \req_l$25
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.branch0.rst_l"
-module \rst_l$25
+module \rst_l$26
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.branch0.rok_l"
-module \rok_l$26
+module \rok_l$27
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.branch0.alui_l"
-module \alui_l$27
+module \alui_l$28
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.branch0.alu_l"
-module \alu_l$28
+module \alu_l$29
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 7 input 2 \oper_i__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 input 3 \oper_i__fn_unit
+ wire width 11 input 3 \oper_i__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 64 input 4 \oper_i__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
wire width 64 input 17 \src4_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 18 \spr1_ok
+ wire width 1 output 18 \fast1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
wire width 3 output 19 \wr__rel
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
wire width 3 input 20 \wr__go
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 21 \spr1
+ wire width 64 output 21 \fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 22 \spr2_ok
+ wire width 1 output 22 \fast2_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 23 \spr2
+ wire width 64 output 23 \fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 24 \nia_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 7 \alu_branch0_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 \alu_branch0_op__fn_unit
+ wire width 11 \alu_branch0_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 64 \alu_branch0_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 32 \alu_branch0_op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 \alu_branch0_spr1
+ wire width 64 \alu_branch0_fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 \alu_branch0_spr2
+ wire width 64 \alu_branch0_fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 4 \alu_branch0_cr_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
cell \alu_branch0 \alu_branch0
connect \rst \rst
connect \clk \clk
- connect \spr1_ok \spr1_ok
- connect \spr1 \spr1
- connect \spr2_ok \spr2_ok
- connect \spr2 \spr2
+ connect \fast1_ok \fast1_ok
+ connect \fast1 \fast1
+ connect \fast2_ok \fast2_ok
+ connect \fast2 \fast2
connect \nia_ok \nia_ok
connect \nia \nia
connect \n_valid_o \alu_branch0_n_valid_o
connect \op__lk \alu_branch0_op__lk
connect \op__is_32bit \alu_branch0_op__is_32bit
connect \op__insn \alu_branch0_op__insn
- connect \spr1$1 \alu_branch0_spr1
- connect \spr2$2 \alu_branch0_spr2
+ connect \fast1$1 \alu_branch0_fast1
+ connect \fast2$2 \alu_branch0_fast2
connect \cr_a \alu_branch0_cr_a
connect \cia \alu_branch0_cia
connect \p_valid_i \alu_branch0_p_valid_i
wire width 4 \src_l_r_src$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
wire width 4 \src_l_q_src
- cell \src_l$22 \src_l
+ cell \src_l$23 \src_l
connect \rst \rst
connect \clk \clk
connect \s_src \src_l_s_src
wire width 1 \opc_l_r_opc$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
wire width 1 \opc_l_q_opc
- cell \opc_l$23 \opc_l
+ cell \opc_l$24 \opc_l
connect \rst \rst
connect \clk \clk
connect \s_opc \opc_l_s_opc
wire width 3 \req_l_s_req
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
wire width 3 \req_l_r_req
- cell \req_l$24 \req_l
+ cell \req_l$25 \req_l
connect \rst \rst
connect \clk \clk
connect \q_req \req_l_q_req
wire width 1 \rst_l_s_rst
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
wire width 1 \rst_l_r_rst
- cell \rst_l$25 \rst_l
+ cell \rst_l$26 \rst_l
connect \rst \rst
connect \clk \clk
connect \s_rst \rst_l_s_rst
wire width 1 \rok_l_r_rdok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
wire width 1 \rok_l_r_rdok$next
- cell \rok_l$26 \rok_l
+ cell \rok_l$27 \rok_l
connect \rst \rst
connect \clk \clk
connect \q_rdok \rok_l_q_rdok
wire width 1 \alui_l_r_alui$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
wire width 1 \alui_l_s_alui
- cell \alui_l$27 \alui_l
+ cell \alui_l$28 \alui_l
connect \rst \rst
connect \clk \clk
connect \q_alui \alui_l_q_alui
wire width 1 \alu_l_r_alu$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
wire width 1 \alu_l_s_alu
- cell \alu_l$28 \alu_l
+ cell \alu_l$29 \alu_l
connect \rst \rst
connect \clk \clk
connect \q_alu \alu_l_q_alu
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 7 \oper_r__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 \oper_r__fn_unit
+ wire width 11 \oper_r__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 64 \oper_r__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 7 \oper_l__insn_type$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 10 \oper_l__fn_unit
+ wire width 11 \oper_l__fn_unit
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 10 \oper_l__fn_unit$next
+ wire width 11 \oper_l__fn_unit$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 64 \oper_l__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 32 \oper_l__insn$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
- wire width 116 $69
+ wire width 117 $69
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
cell $mux $70
- parameter \WIDTH 116
+ parameter \WIDTH 117
connect \A { \oper_l__insn \oper_l__is_32bit \oper_l__lk { \oper_l__imm_data__imm_ok \oper_l__imm_data__imm } \oper_l__fn_unit \oper_l__insn_type }
connect \B { \oper_i__insn \oper_i__is_32bit \oper_i__lk { \oper_i__imm_data__imm_ok \oper_i__imm_data__imm } \oper_i__fn_unit \oper_i__insn_type }
connect \S \issue_i
end
process $group_25
assign \oper_r__insn_type 7'0000000
- assign \oper_r__fn_unit 10'0000000000
+ assign \oper_r__fn_unit 11'00000000000
assign \oper_r__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \oper_r__imm_data__imm_ok 1'0
assign \oper_r__lk 1'0
end
sync init
update \oper_l__insn_type 7'0000000
- update \oper_l__fn_unit 10'0000000000
+ update \oper_l__fn_unit 11'00000000000
update \oper_l__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
update \oper_l__imm_data__imm_ok 1'0
update \oper_l__lk 1'0
update \oper_l__insn \oper_l__insn$next
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
- wire width 64 \data_r0__spr1
+ wire width 64 \data_r0__fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
- wire width 1 \data_r0__spr1_ok
+ wire width 1 \data_r0__fast1_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 64 \data_r0_l__spr1
+ wire width 64 \data_r0_l__fast1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 64 \data_r0_l__spr1$next
+ wire width 64 \data_r0_l__fast1$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \data_r0_l__spr1_ok
+ wire width 1 \data_r0_l__fast1_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \data_r0_l__spr1_ok$next
+ wire width 1 \data_r0_l__fast1_ok$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
wire width 65 $71
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
cell $mux $74
parameter \WIDTH 65
- connect \A { \data_r0_l__spr1_ok \data_r0_l__spr1 }
- connect \B { \spr1_ok \spr1 }
+ connect \A { \data_r0_l__fast1_ok \data_r0_l__fast1 }
+ connect \B { \fast1_ok \fast1 }
connect \S $72
connect \Y $71
end
process $group_39
- assign \data_r0__spr1 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \data_r0__spr1_ok 1'0
- assign { \data_r0__spr1_ok \data_r0__spr1 } $71
+ assign \data_r0__fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \data_r0__fast1_ok 1'0
+ assign { \data_r0__fast1_ok \data_r0__fast1 } $71
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
connect \Y $75
end
process $group_41
- assign \data_r0_l__spr1$next \data_r0_l__spr1
- assign \data_r0_l__spr1_ok$next \data_r0_l__spr1_ok
+ assign \data_r0_l__fast1$next \data_r0_l__fast1
+ assign \data_r0_l__fast1_ok$next \data_r0_l__fast1_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
switch { $75 }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
case 1'1
- assign { \data_r0_l__spr1_ok$next \data_r0_l__spr1$next } { \spr1_ok \spr1 }
+ assign { \data_r0_l__fast1_ok$next \data_r0_l__fast1$next } { \fast1_ok \fast1 }
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \data_r0_l__spr1_ok$next 1'0
+ assign \data_r0_l__fast1_ok$next 1'0
end
sync init
- update \data_r0_l__spr1 64'0000000000000000000000000000000000000000000000000000000000000000
- update \data_r0_l__spr1_ok 1'0
+ update \data_r0_l__fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \data_r0_l__fast1_ok 1'0
sync posedge \clk
- update \data_r0_l__spr1 \data_r0_l__spr1$next
- update \data_r0_l__spr1_ok \data_r0_l__spr1_ok$next
+ update \data_r0_l__fast1 \data_r0_l__fast1$next
+ update \data_r0_l__fast1_ok \data_r0_l__fast1_ok$next
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
- wire width 64 \data_r1__spr2
+ wire width 64 \data_r1__fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
- wire width 1 \data_r1__spr2_ok
+ wire width 1 \data_r1__fast2_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 64 \data_r1_l__spr2
+ wire width 64 \data_r1_l__fast2
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 64 \data_r1_l__spr2$next
+ wire width 64 \data_r1_l__fast2$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \data_r1_l__spr2_ok
+ wire width 1 \data_r1_l__fast2_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \data_r1_l__spr2_ok$next
+ wire width 1 \data_r1_l__fast2_ok$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
wire width 65 $77
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
cell $mux $80
parameter \WIDTH 65
- connect \A { \data_r1_l__spr2_ok \data_r1_l__spr2 }
- connect \B { \spr2_ok \spr2 }
+ connect \A { \data_r1_l__fast2_ok \data_r1_l__fast2 }
+ connect \B { \fast2_ok \fast2 }
connect \S $78
connect \Y $77
end
process $group_43
- assign \data_r1__spr2 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \data_r1__spr2_ok 1'0
- assign { \data_r1__spr2_ok \data_r1__spr2 } $77
+ assign \data_r1__fast2 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \data_r1__fast2_ok 1'0
+ assign { \data_r1__fast2_ok \data_r1__fast2 } $77
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
connect \Y $81
end
process $group_45
- assign \data_r1_l__spr2$next \data_r1_l__spr2
- assign \data_r1_l__spr2_ok$next \data_r1_l__spr2_ok
+ assign \data_r1_l__fast2$next \data_r1_l__fast2
+ assign \data_r1_l__fast2_ok$next \data_r1_l__fast2_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
switch { $81 }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
case 1'1
- assign { \data_r1_l__spr2_ok$next \data_r1_l__spr2$next } { \spr2_ok \spr2 }
+ assign { \data_r1_l__fast2_ok$next \data_r1_l__fast2$next } { \fast2_ok \fast2 }
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \data_r1_l__spr2_ok$next 1'0
+ assign \data_r1_l__fast2_ok$next 1'0
end
sync init
- update \data_r1_l__spr2 64'0000000000000000000000000000000000000000000000000000000000000000
- update \data_r1_l__spr2_ok 1'0
+ update \data_r1_l__fast2 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \data_r1_l__fast2_ok 1'0
sync posedge \clk
- update \data_r1_l__spr2 \data_r1_l__spr2$next
- update \data_r1_l__spr2_ok \data_r1_l__spr2_ok$next
+ update \data_r1_l__fast2 \data_r1_l__fast2$next
+ update \data_r1_l__fast2_ok \data_r1_l__fast2_ok$next
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
wire width 64 \data_r2__nia
end
process $group_51
assign \wrmask 3'000
- assign \wrmask { \data_r2__nia_ok \data_r1__spr2_ok \data_r0__spr1_ok }
+ assign \wrmask { \data_r2__nia_ok \data_r1__fast2_ok \data_r0__fast1_ok }
sync init
end
process $group_52
assign \alu_branch0_op__insn_type 7'0000000
- assign \alu_branch0_op__fn_unit 10'0000000000
+ assign \alu_branch0_op__fn_unit 11'00000000000
assign \alu_branch0_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \alu_branch0_op__imm_data__imm_ok 1'0
assign \alu_branch0_op__lk 1'0
connect \Y $93
end
process $group_61
- assign \alu_branch0_spr1 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \alu_branch0_spr1 $93
+ assign \alu_branch0_fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \alu_branch0_fast1 $93
sync init
end
process $group_62
connect \Y $95
end
process $group_63
- assign \alu_branch0_spr2 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \alu_branch0_spr2 $95
+ assign \alu_branch0_fast2 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \alu_branch0_fast2 $95
sync init
end
process $group_64
switch { \wr__go [0] }
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
case 1'1
- assign \dest1_o { \data_r0__spr1_ok \data_r0__spr1 } [63:0]
+ assign \dest1_o { \data_r0__fast1_ok \data_r0__fast1 } [63:0]
end
sync init
end
switch { \wr__go [1] }
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
case 1'1
- assign \dest2_o { \data_r1__spr2_ok \data_r1__spr2 } [63:0]
+ assign \dest2_o { \data_r1__fast2_ok \data_r1__fast2 } [63:0]
end
sync init
end
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.trap0.alu_trap0.p"
-module \p$29
+module \p$30
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
wire width 1 input 0 \p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.trap0.alu_trap0.n"
-module \n$30
+module \n$31
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
wire width 1 input 0 \n_valid_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.trap0.alu_trap0.pipe.p"
-module \p$32
+module \p$33
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
wire width 1 input 0 \p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.trap0.alu_trap0.pipe.n"
-module \n$33
+module \n$34
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
wire width 1 input 0 \n_valid_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.trap0.alu_trap0.pipe.main"
-module \main$34
+module \main$35
attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
wire width 2 input 0 \muxid
attribute \enum_base_type "InternalOp"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 7 input 1 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 input 2 \op__fn_unit
+ wire width 11 input 2 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 32 input 3 \op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 1 input 4 \op__is_32bit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 input 5 \op__traptype
+ wire width 5 input 5 \op__traptype
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 13 input 6 \op__trapaddr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 64 input 8 \rb
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 input 9 \spr1
+ wire width 64 input 9 \fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 input 10 \spr2
+ wire width 64 input 10 \fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 64 input 11 \cia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 7 output 14 \op__insn_type$2
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 output 15 \op__fn_unit$3
+ wire width 11 output 15 \op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 32 output 16 \op__insn$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 1 output 17 \op__is_32bit$5
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 output 18 \op__traptype$6
+ wire width 5 output 18 \op__traptype$6
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 13 output 19 \op__trapaddr$7
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 21 \o_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 22 \spr1$8
+ wire width 64 output 22 \fast1$8
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 23 \spr1_ok
+ wire width 1 output 23 \fast1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 24 \spr2$9
+ wire width 64 output 24 \fast2$9
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 25 \spr2_ok
+ wire width 1 output 25 \fast2_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 output 26 \nia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 output 28 \msr$10
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 29 \msr_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:125"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:101"
wire width 5 \to
process $group_0
assign \to 5'00000
assign \to { \op__insn [25] \op__insn [24] \op__insn [23] \op__insn [22] \op__insn [21] }
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:129"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:105"
wire width 64 \a_s
process $group_1
assign \a_s 64'0000000000000000000000000000000000000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:136"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:112"
switch { \op__is_32bit }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:136"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:112"
case 1'1
assign \a_s { { \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] \ra [31:0] [31] } \ra [31:0] }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:141"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:117"
case
assign \a_s \ra
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:130"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:106"
wire width 64 \b_s
process $group_2
assign \b_s 64'0000000000000000000000000000000000000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:136"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:112"
switch { \op__is_32bit }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:136"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:112"
case 1'1
assign \b_s { { \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] \rb [31:0] [31] } \rb [31:0] }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:141"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:117"
case
assign \b_s \rb
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:132"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:108"
wire width 64 \a
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:251"
wire width 64 $11
end
process $group_3
assign \a 64'0000000000000000000000000000000000000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:136"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:112"
switch { \op__is_32bit }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:136"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:112"
case 1'1
assign \a $11
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:141"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:117"
case
assign \a \ra
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:133"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:109"
wire width 64 \b
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:251"
wire width 64 $13
end
process $group_4
assign \b 64'0000000000000000000000000000000000000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:136"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:112"
switch { \op__is_32bit }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:136"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:112"
case 1'1
assign \b $13
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:141"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:117"
case
assign \b \rb
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:148"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:124"
wire width 1 \lt_s
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:154"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:130"
wire width 1 $15
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:154"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:130"
cell $lt $16
parameter \A_SIGNED 1
parameter \A_WIDTH 64
assign \lt_s $15
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:149"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:125"
wire width 1 \gt_s
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:155"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:131"
wire width 1 $17
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:155"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:131"
cell $gt $18
parameter \A_SIGNED 1
parameter \A_WIDTH 64
assign \gt_s $17
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:150"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:126"
wire width 1 \lt_u
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:156"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:132"
wire width 1 $19
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:156"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:132"
cell $lt $20
parameter \A_SIGNED 0
parameter \A_WIDTH 64
assign \lt_u $19
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:151"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:127"
wire width 1 \gt_u
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:157"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:133"
wire width 1 $21
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:157"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:133"
cell $gt $22
parameter \A_SIGNED 0
parameter \A_WIDTH 64
assign \gt_u $21
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:128"
wire width 1 \equal
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:158"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:134"
wire width 1 $23
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:158"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:134"
cell $eq $24
parameter \A_SIGNED 0
parameter \A_WIDTH 64
assign \equal $23
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:162"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:138"
wire width 5 \trap_bits
process $group_10
assign \trap_bits 5'00000
assign \trap_bits { \lt_s \gt_s \equal \lt_u \gt_u }
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:167"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:143"
wire width 1 \should_trap
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:168"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:144"
wire width 1 $25
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:168"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:144"
wire width 5 $26
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:168"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:144"
cell $and $27
parameter \A_SIGNED 0
parameter \A_WIDTH 5
connect \B \to
connect \Y $26
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:168"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:144"
cell $reduce_or $28
parameter \A_SIGNED 0
parameter \A_WIDTH 5
connect \A $26
connect \Y $25
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:168"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:144"
wire width 1 $29
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:168"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:144"
cell $reduce_or $30
parameter \A_SIGNED 0
- parameter \A_WIDTH 4
+ parameter \A_WIDTH 5
parameter \Y_WIDTH 1
connect \A \op__traptype
connect \Y $29
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:168"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:144"
wire width 1 $31
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:168"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:144"
cell $or $32
parameter \A_SIGNED 0
parameter \A_WIDTH 1
assign \should_trap $31
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:177"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:153"
wire width 64 $33
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:177"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:153"
wire width 20 $34
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:177"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:153"
cell $sshl $35
parameter \A_SIGNED 0
parameter \A_WIDTH 13
connect \B 3'100
connect \Y $34
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:177"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:153"
cell $pos $36
parameter \A_SIGNED 0
parameter \A_WIDTH 20
end
process $group_12
assign \nia 64'0000000000000000000000000000000000000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:171"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:147"
switch \op__insn_type
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:173"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:149"
attribute \nmigen.decoding "OP_TRAP/63"
case 7'0111111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:175"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:151"
switch { \should_trap }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:175"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:151"
case 1'1
assign \nia $33
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:189"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:167"
attribute \nmigen.decoding "OP_MTMSRD/72"
case 7'1001000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:204"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:182"
attribute \nmigen.decoding "OP_MFMSR/71"
case 7'1000111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:209"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:187"
attribute \nmigen.decoding "OP_RFID/70"
case 7'1000110
- assign \nia { { { } \spr1 [63:2] } 2'00 }
+ assign \nia { { { } \fast1 [63:2] } 2'00 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:200"
+ attribute \nmigen.decoding "OP_SC/73"
+ case 7'1001001
+ assign \nia 64'0000000000000000000000000000000000000000000000000000110000000000
end
sync init
end
process $group_13
assign \nia_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:171"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:147"
switch \op__insn_type
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:173"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:149"
attribute \nmigen.decoding "OP_TRAP/63"
case 7'0111111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:175"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:151"
switch { \should_trap }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:175"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:151"
case 1'1
assign \nia_ok 1'1
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:189"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:167"
attribute \nmigen.decoding "OP_MTMSRD/72"
case 7'1001000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:204"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:182"
attribute \nmigen.decoding "OP_MFMSR/71"
case 7'1000111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:209"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:187"
attribute \nmigen.decoding "OP_RFID/70"
case 7'1000110
assign \nia_ok 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:200"
+ attribute \nmigen.decoding "OP_SC/73"
+ case 7'1001001
+ assign \nia_ok 1'1
end
sync init
end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:205"
+ wire width 65 $37
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:205"
+ wire width 65 $38
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:205"
+ cell $add $39
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 64
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 3
+ parameter \Y_WIDTH 65
+ connect \A \cia
+ connect \B 3'100
+ connect \Y $38
+ end
+ connect $37 $38
process $group_14
- assign \spr1$8 64'0000000000000000000000000000000000000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:171"
+ assign \fast1$8 64'0000000000000000000000000000000000000000000000000000000000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:147"
switch \op__insn_type
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:173"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:149"
attribute \nmigen.decoding "OP_TRAP/63"
case 7'0111111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:175"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:151"
switch { \should_trap }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:175"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:151"
case 1'1
- assign \spr1$8 \cia
+ assign \fast1$8 \cia
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:189"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:167"
attribute \nmigen.decoding "OP_MTMSRD/72"
case 7'1001000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:204"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:182"
attribute \nmigen.decoding "OP_MFMSR/71"
case 7'1000111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:209"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:187"
attribute \nmigen.decoding "OP_RFID/70"
case 7'1000110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:200"
+ attribute \nmigen.decoding "OP_SC/73"
+ case 7'1001001
+ assign \fast1$8 $37 [63:0]
end
sync init
end
process $group_15
- assign \spr1_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:171"
+ assign \fast1_ok 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:147"
switch \op__insn_type
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:173"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:149"
attribute \nmigen.decoding "OP_TRAP/63"
case 7'0111111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:175"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:151"
switch { \should_trap }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:175"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:151"
case 1'1
- assign \spr1_ok 1'1
+ assign \fast1_ok 1'1
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:189"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:167"
attribute \nmigen.decoding "OP_MTMSRD/72"
case 7'1001000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:204"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:182"
attribute \nmigen.decoding "OP_MFMSR/71"
case 7'1000111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:209"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:187"
attribute \nmigen.decoding "OP_RFID/70"
case 7'1000110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:200"
+ attribute \nmigen.decoding "OP_SC/73"
+ case 7'1001001
+ assign \fast1_ok 1'1
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:178"
- wire width 1 $37
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:178"
- cell $eq $38
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:154"
+ wire width 1 $40
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:154"
+ cell $eq $41
parameter \A_SIGNED 0
- parameter \A_WIDTH 4
+ parameter \A_WIDTH 5
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
connect \A \op__traptype
connect \B 1'0
- connect \Y $37
+ connect \Y $40
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
- wire width 1 $39
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:181"
- wire width 4 $40
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:181"
- cell $and $41
+ wire width 1 $42
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:157"
+ wire width 5 $43
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:157"
+ cell $and $44
parameter \A_SIGNED 0
- parameter \A_WIDTH 4
+ parameter \A_WIDTH 5
parameter \B_SIGNED 0
parameter \B_WIDTH 2
- parameter \Y_WIDTH 4
+ parameter \Y_WIDTH 5
connect \A \op__traptype
connect \B 2'10
- connect \Y $40
+ connect \Y $43
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
- cell $reduce_bool $42
+ cell $reduce_bool $45
parameter \A_SIGNED 0
- parameter \A_WIDTH 4
+ parameter \A_WIDTH 5
parameter \Y_WIDTH 1
- connect \A $40
- connect \Y $39
+ connect \A $43
+ connect \Y $42
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
- wire width 1 $43
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:183"
- wire width 4 $44
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:183"
- cell $and $45
+ wire width 1 $46
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:159"
+ wire width 5 $47
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:159"
+ cell $and $48
parameter \A_SIGNED 0
- parameter \A_WIDTH 4
+ parameter \A_WIDTH 5
parameter \B_SIGNED 0
parameter \B_WIDTH 1
- parameter \Y_WIDTH 4
+ parameter \Y_WIDTH 5
connect \A \op__traptype
connect \B 1'1
- connect \Y $44
+ connect \Y $47
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
- cell $reduce_bool $46
+ cell $reduce_bool $49
parameter \A_SIGNED 0
- parameter \A_WIDTH 4
+ parameter \A_WIDTH 5
parameter \Y_WIDTH 1
- connect \A $44
- connect \Y $43
+ connect \A $47
+ connect \Y $46
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
- wire width 1 $47
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:185"
- wire width 4 $48
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:185"
- cell $and $49
+ wire width 1 $50
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:161"
+ wire width 5 $51
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:161"
+ cell $and $52
parameter \A_SIGNED 0
- parameter \A_WIDTH 4
+ parameter \A_WIDTH 5
parameter \B_SIGNED 0
parameter \B_WIDTH 4
- parameter \Y_WIDTH 4
+ parameter \Y_WIDTH 5
connect \A \op__traptype
connect \B 4'1000
- connect \Y $48
+ connect \Y $51
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
- cell $reduce_bool $50
+ cell $reduce_bool $53
parameter \A_SIGNED 0
- parameter \A_WIDTH 4
+ parameter \A_WIDTH 5
parameter \Y_WIDTH 1
- connect \A $48
- connect \Y $47
+ connect \A $51
+ connect \Y $50
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
+ wire width 1 $54
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:163"
+ wire width 5 $55
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:163"
+ cell $and $56
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 5
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 5
+ parameter \Y_WIDTH 5
+ connect \A \op__traptype
+ connect \B 5'10000
+ connect \Y $55
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
+ cell $reduce_bool $57
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 5
+ parameter \Y_WIDTH 1
+ connect \A $55
+ connect \Y $54
end
process $group_16
- assign \spr2$9 64'0000000000000000000000000000000000000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:171"
+ assign \fast2$9 64'0000000000000000000000000000000000000000000000000000000000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:147"
switch \op__insn_type
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:173"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:149"
attribute \nmigen.decoding "OP_TRAP/63"
case 7'0111111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:175"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:151"
switch { \should_trap }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:175"
- case 1'1
- assign \spr2$9 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \spr2$9 [15:0] \msr [15:0]
- assign \spr2$9 [26:22] \msr [26:22]
- assign \spr2$9 [63:31] \msr [63:31]
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:178"
- switch { $37 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:178"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:151"
+ case 1'1
+ assign \fast2$9 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast2$9 [15:0] \msr [15:0]
+ assign \fast2$9 [26:22] \msr [26:22]
+ assign \fast2$9 [63:31] \msr [63:31]
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:154"
+ switch { $40 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:154"
+ case 1'1
+ assign \fast2$9 [17] 1'1
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:157"
+ switch { $42 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:157"
case 1'1
- assign \spr2$9 [17] 1'1
+ assign \fast2$9 [18] 1'1
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:181"
- switch { $39 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:181"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:159"
+ switch { $46 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:159"
case 1'1
- assign \spr2$9 [18] 1'1
+ assign \fast2$9 [20] 1'1
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:183"
- switch { $43 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:183"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:161"
+ switch { $50 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:161"
case 1'1
- assign \spr2$9 [20] 1'1
+ assign \fast2$9 [16] 1'1
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:185"
- switch { $47 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:185"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:163"
+ switch { $54 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:163"
case 1'1
- assign \spr2$9 [16] 1'1
+ assign \fast2$9 [19] 1'1
end
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:189"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:167"
attribute \nmigen.decoding "OP_MTMSRD/72"
case 7'1001000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:204"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:182"
attribute \nmigen.decoding "OP_MFMSR/71"
case 7'1000111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:209"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:187"
attribute \nmigen.decoding "OP_RFID/70"
case 7'1000110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:200"
+ attribute \nmigen.decoding "OP_SC/73"
+ case 7'1001001
+ assign \fast2$9 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast2$9 [15:0] \msr [15:0]
+ assign \fast2$9 [26:22] \msr [26:22]
+ assign \fast2$9 [63:31] \msr [63:31]
end
sync init
end
process $group_17
- assign \spr2_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:171"
+ assign \fast2_ok 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:147"
switch \op__insn_type
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:173"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:149"
attribute \nmigen.decoding "OP_TRAP/63"
case 7'0111111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:175"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:151"
switch { \should_trap }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:175"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:151"
case 1'1
- assign \spr2_ok 1'1
+ assign \fast2_ok 1'1
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:189"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:167"
attribute \nmigen.decoding "OP_MTMSRD/72"
case 7'1001000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:204"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:182"
attribute \nmigen.decoding "OP_MFMSR/71"
case 7'1000111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:209"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:187"
attribute \nmigen.decoding "OP_RFID/70"
case 7'1000110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:200"
+ attribute \nmigen.decoding "OP_SC/73"
+ case 7'1001001
+ assign \fast2_ok 1'1
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
- wire width 1 $51
+ wire width 1 $58
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
- cell $reduce_bool $52
+ cell $reduce_bool $59
parameter \A_SIGNED 0
parameter \A_WIDTH 2
parameter \Y_WIDTH 1
connect \A { \op__insn [22] \op__insn [21] }
- connect \Y $51
+ connect \Y $58
end
process $group_18
assign \msr$10 64'0000000000000000000000000000000000000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:171"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:147"
switch \op__insn_type
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:173"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:149"
attribute \nmigen.decoding "OP_TRAP/63"
case 7'0111111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:189"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:167"
attribute \nmigen.decoding "OP_MTMSRD/72"
case 7'1001000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:191"
- switch { $51 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:191"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:169"
+ switch { $58 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:169"
case 1'1
assign \msr$10 [15] \ra [15]
assign \msr$10 [1] \ra [1]
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:195"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:173"
case
assign \msr$10 [11:1] \ra [11:1]
assign \msr$10 [59:13] \ra [59:13]
assign \msr$10 [63:61] \ra [63:61]
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:75"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:50"
switch { \msr$10 [14] }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:75"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:50"
case 1'1
assign \msr$10 [15] 1'1
assign \msr$10 [5] 1'1
assign \msr$10 [4] 1'1
end
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:204"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:182"
attribute \nmigen.decoding "OP_MFMSR/71"
case 7'1000111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:209"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:187"
attribute \nmigen.decoding "OP_RFID/70"
case 7'1000110
- assign \msr$10 [15:0] \spr2 [15:0]
- assign \msr$10 [26:22] \spr2 [26:22]
- assign \msr$10 [63:31] \spr2 [63:31]
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:75"
+ assign \msr$10 [15:0] \fast2 [15:0]
+ assign \msr$10 [26:22] \fast2 [26:22]
+ assign \msr$10 [63:31] \fast2 [63:31]
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:50"
switch { \msr$10 [14] }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:75"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:50"
case 1'1
assign \msr$10 [15] 1'1
assign \msr$10 [5] 1'1
assign \msr$10 [4] 1'1
end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:200"
+ attribute \nmigen.decoding "OP_SC/73"
+ case 7'1001001
end
sync init
end
process $group_19
assign \msr_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:171"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:147"
switch \op__insn_type
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:173"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:149"
attribute \nmigen.decoding "OP_TRAP/63"
case 7'0111111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:189"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:167"
attribute \nmigen.decoding "OP_MTMSRD/72"
case 7'1001000
assign \msr_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:204"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:182"
attribute \nmigen.decoding "OP_MFMSR/71"
case 7'1000111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:209"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:187"
attribute \nmigen.decoding "OP_RFID/70"
case 7'1000110
assign \msr_ok 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:200"
+ attribute \nmigen.decoding "OP_SC/73"
+ case 7'1001001
end
sync init
end
process $group_20
assign \o 64'0000000000000000000000000000000000000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:171"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:147"
switch \op__insn_type
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:173"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:149"
attribute \nmigen.decoding "OP_TRAP/63"
case 7'0111111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:189"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:167"
attribute \nmigen.decoding "OP_MTMSRD/72"
case 7'1001000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:204"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:182"
attribute \nmigen.decoding "OP_MFMSR/71"
case 7'1000111
assign \o \msr
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:209"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:187"
attribute \nmigen.decoding "OP_RFID/70"
case 7'1000110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:200"
+ attribute \nmigen.decoding "OP_SC/73"
+ case 7'1001001
end
sync init
end
process $group_21
assign \o_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:171"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:147"
switch \op__insn_type
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:173"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:149"
attribute \nmigen.decoding "OP_TRAP/63"
case 7'0111111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:189"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:167"
attribute \nmigen.decoding "OP_MTMSRD/72"
case 7'1001000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:204"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:182"
attribute \nmigen.decoding "OP_MFMSR/71"
case 7'1000111
assign \o_ok 1'1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:209"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:187"
attribute \nmigen.decoding "OP_RFID/70"
case 7'1000110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/main_stage.py:200"
+ attribute \nmigen.decoding "OP_SC/73"
+ case 7'1001001
end
sync init
end
end
process $group_23
assign \op__insn_type$2 7'0000000
- assign \op__fn_unit$3 10'0000000000
+ assign \op__fn_unit$3 11'00000000000
assign \op__insn$4 32'00000000000000000000000000000000
assign \op__is_32bit$5 1'0
- assign \op__traptype$6 4'0000
+ assign \op__traptype$6 5'00000
assign \op__trapaddr$7 13'0000000000000
assign { \op__trapaddr$7 \op__traptype$6 \op__is_32bit$5 \op__insn$4 \op__fn_unit$3 \op__insn_type$2 } { \op__trapaddr \op__traptype \op__is_32bit \op__insn \op__fn_unit \op__insn_type }
sync init
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.trap0.alu_trap0.pipe"
-module \pipe$31
+module \pipe$32
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 7 input 5 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 input 6 \op__fn_unit
+ wire width 11 input 6 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 32 input 7 \op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 1 input 8 \op__is_32bit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 input 9 \op__traptype
+ wire width 5 input 9 \op__traptype
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 13 input 10 \op__trapaddr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 64 input 12 \rb
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 input 13 \spr1
+ wire width 64 input 13 \fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 input 14 \spr2
+ wire width 64 input 14 \fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 64 input 15 \cia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 7 \op__insn_type$2$next
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 output 21 \op__fn_unit$3
+ wire width 11 output 21 \op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 \op__fn_unit$3$next
+ wire width 11 \op__fn_unit$3$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 32 output 22 \op__insn$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 1 \op__is_32bit$5$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 output 24 \op__traptype$6
+ wire width 5 output 24 \op__traptype$6
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 \op__traptype$6$next
+ wire width 5 \op__traptype$6$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 13 output 25 \op__trapaddr$7
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \o_ok$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 28 \spr1$8
+ wire width 64 output 28 \fast1$8
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \spr1$8$next
+ wire width 64 \fast1$8$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 29 \spr1_ok
+ wire width 1 output 29 \fast1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \spr1_ok$next
+ wire width 1 \fast1_ok$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 30 \spr2$9
+ wire width 64 output 30 \fast2$9
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \spr2$9$next
+ wire width 64 \fast2$9$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 31 \spr2_ok
+ wire width 1 output 31 \fast2_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \spr2_ok$next
+ wire width 1 \fast2_ok$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 output 32 \nia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 35 \msr_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \msr_ok$next
- cell \p$32 \p
+ cell \p$33 \p
connect \p_valid_i \p_valid_i
connect \p_ready_o \p_ready_o
end
- cell \n$33 \n
+ cell \n$34 \n
connect \n_valid_o \n_valid_o
connect \n_ready_i \n_ready_i
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 7 \main_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 \main_op__fn_unit
+ wire width 11 \main_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 32 \main_op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 1 \main_op__is_32bit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 \main_op__traptype
+ wire width 5 \main_op__traptype
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 13 \main_op__trapaddr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 64 \main_rb
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 \main_spr1
+ wire width 64 \main_fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 \main_spr2
+ wire width 64 \main_fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 64 \main_cia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 7 \main_op__insn_type$12
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 \main_op__fn_unit$13
+ wire width 11 \main_op__fn_unit$13
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 32 \main_op__insn$14
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 1 \main_op__is_32bit$15
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 \main_op__traptype$16
+ wire width 5 \main_op__traptype$16
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 13 \main_op__trapaddr$17
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \main_o_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \main_spr1$18
+ wire width 64 \main_fast1$18
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \main_spr1_ok
+ wire width 1 \main_fast1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \main_spr2$19
+ wire width 64 \main_fast2$19
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \main_spr2_ok
+ wire width 1 \main_fast2_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 \main_nia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 \main_msr$20
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \main_msr_ok
- cell \main$34 \main
+ cell \main$35 \main
connect \muxid \main_muxid
connect \op__insn_type \main_op__insn_type
connect \op__fn_unit \main_op__fn_unit
connect \op__trapaddr \main_op__trapaddr
connect \ra \main_ra
connect \rb \main_rb
- connect \spr1 \main_spr1
- connect \spr2 \main_spr2
+ connect \fast1 \main_fast1
+ connect \fast2 \main_fast2
connect \cia \main_cia
connect \msr \main_msr
connect \muxid$1 \main_muxid$11
connect \op__trapaddr$7 \main_op__trapaddr$17
connect \o \main_o
connect \o_ok \main_o_ok
- connect \spr1$8 \main_spr1$18
- connect \spr1_ok \main_spr1_ok
- connect \spr2$9 \main_spr2$19
- connect \spr2_ok \main_spr2_ok
+ connect \fast1$8 \main_fast1$18
+ connect \fast1_ok \main_fast1_ok
+ connect \fast2$9 \main_fast2$19
+ connect \fast2_ok \main_fast2_ok
connect \nia \main_nia
connect \nia_ok \main_nia_ok
connect \msr$10 \main_msr$20
end
process $group_1
assign \main_op__insn_type 7'0000000
- assign \main_op__fn_unit 10'0000000000
+ assign \main_op__fn_unit 11'00000000000
assign \main_op__insn 32'00000000000000000000000000000000
assign \main_op__is_32bit 1'0
- assign \main_op__traptype 4'0000
+ assign \main_op__traptype 5'00000
assign \main_op__trapaddr 13'0000000000000
assign { \main_op__trapaddr \main_op__traptype \main_op__is_32bit \main_op__insn \main_op__fn_unit \main_op__insn_type } { \op__trapaddr \op__traptype \op__is_32bit \op__insn \op__fn_unit \op__insn_type }
sync init
sync init
end
process $group_9
- assign \main_spr1 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \main_spr1 \spr1
+ assign \main_fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \main_fast1 \fast1
sync init
end
process $group_10
- assign \main_spr2 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \main_spr2 \spr2
+ assign \main_fast2 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \main_fast2 \fast2
sync init
end
process $group_11
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 7 \op__insn_type$25
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 \op__fn_unit$26
+ wire width 11 \op__fn_unit$26
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 32 \op__insn$27
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 1 \op__is_32bit$28
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 \op__traptype$29
+ wire width 5 \op__traptype$29
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 13 \op__trapaddr$30
process $group_17
assign \op__insn_type$25 7'0000000
- assign \op__fn_unit$26 10'0000000000
+ assign \op__fn_unit$26 11'00000000000
assign \op__insn$27 32'00000000000000000000000000000000
assign \op__is_32bit$28 1'0
- assign \op__traptype$29 4'0000
+ assign \op__traptype$29 5'00000
assign \op__trapaddr$30 13'0000000000000
assign { \op__trapaddr$30 \op__traptype$29 \op__is_32bit$28 \op__insn$27 \op__fn_unit$26 \op__insn_type$25 } { \main_op__trapaddr$17 \main_op__traptype$16 \main_op__is_32bit$15 \main_op__insn$14 \main_op__fn_unit$13 \main_op__insn_type$12 }
sync init
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \spr1$33
+ wire width 64 \fast1$33
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \spr1_ok$34
+ wire width 1 \fast1_ok$34
process $group_25
- assign \spr1$33 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \spr1_ok$34 1'0
- assign { \spr1_ok$34 \spr1$33 } { \main_spr1_ok \main_spr1$18 }
+ assign \fast1$33 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast1_ok$34 1'0
+ assign { \fast1_ok$34 \fast1$33 } { \main_fast1_ok \main_fast1$18 }
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \spr2$35
+ wire width 64 \fast2$35
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \spr2_ok$36
+ wire width 1 \fast2_ok$36
process $group_27
- assign \spr2$35 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \spr2_ok$36 1'0
- assign { \spr2_ok$36 \spr2$35 } { \main_spr2_ok \main_spr2$19 }
+ assign \fast2$35 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast2_ok$36 1'0
+ assign { \fast2_ok$36 \fast2$35 } { \main_fast2_ok \main_fast2$19 }
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
end
sync init
update \op__insn_type$2 7'0000000
- update \op__fn_unit$3 10'0000000000
+ update \op__fn_unit$3 11'00000000000
update \op__insn$4 32'00000000000000000000000000000000
update \op__is_32bit$5 1'0
- update \op__traptype$6 4'0000
+ update \op__traptype$6 5'00000
update \op__trapaddr$7 13'0000000000000
sync posedge \clk
update \op__insn_type$2 \op__insn_type$2$next
update \o_ok \o_ok$next
end
process $group_43
- assign \spr1$8$next \spr1$8
- assign \spr1_ok$next \spr1_ok
+ assign \fast1$8$next \fast1$8
+ assign \fast1_ok$next \fast1_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
switch { \n_i_rdy_data \p_valid_i_p_ready_o }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
case 2'-1
- assign { \spr1_ok$next \spr1$8$next } { \spr1_ok$34 \spr1$33 }
+ assign { \fast1_ok$next \fast1$8$next } { \fast1_ok$34 \fast1$33 }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:637"
case 2'1-
- assign { \spr1_ok$next \spr1$8$next } { \spr1_ok$34 \spr1$33 }
+ assign { \fast1_ok$next \fast1$8$next } { \fast1_ok$34 \fast1$33 }
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \spr1_ok$next 1'0
+ assign \fast1_ok$next 1'0
end
sync init
- update \spr1$8 64'0000000000000000000000000000000000000000000000000000000000000000
- update \spr1_ok 1'0
+ update \fast1$8 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \fast1_ok 1'0
sync posedge \clk
- update \spr1$8 \spr1$8$next
- update \spr1_ok \spr1_ok$next
+ update \fast1$8 \fast1$8$next
+ update \fast1_ok \fast1_ok$next
end
process $group_45
- assign \spr2$9$next \spr2$9
- assign \spr2_ok$next \spr2_ok
+ assign \fast2$9$next \fast2$9
+ assign \fast2_ok$next \fast2_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
switch { \n_i_rdy_data \p_valid_i_p_ready_o }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
case 2'-1
- assign { \spr2_ok$next \spr2$9$next } { \spr2_ok$36 \spr2$35 }
+ assign { \fast2_ok$next \fast2$9$next } { \fast2_ok$36 \fast2$35 }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:637"
case 2'1-
- assign { \spr2_ok$next \spr2$9$next } { \spr2_ok$36 \spr2$35 }
+ assign { \fast2_ok$next \fast2$9$next } { \fast2_ok$36 \fast2$35 }
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \spr2_ok$next 1'0
+ assign \fast2_ok$next 1'0
end
sync init
- update \spr2$9 64'0000000000000000000000000000000000000000000000000000000000000000
- update \spr2_ok 1'0
+ update \fast2$9 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \fast2_ok 1'0
sync posedge \clk
- update \spr2$9 \spr2$9$next
- update \spr2_ok \spr2_ok$next
+ update \fast2$9 \fast2$9$next
+ update \fast2_ok \fast2_ok$next
end
process $group_47
assign \nia$next \nia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 output 3 \o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 4 \spr1_ok
+ wire width 1 output 4 \fast1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 5 \spr1
+ wire width 64 output 5 \fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 6 \spr2_ok
+ wire width 1 output 6 \fast2_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 7 \spr2
+ wire width 64 output 7 \fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 8 \nia_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 7 input 14 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 input 15 \op__fn_unit
+ wire width 11 input 15 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 32 input 16 \op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 1 input 17 \op__is_32bit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 input 18 \op__traptype
+ wire width 5 input 18 \op__traptype
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 13 input 19 \op__trapaddr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 64 input 21 \rb
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 input 22 \spr1$1
+ wire width 64 input 22 \fast1$1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 input 23 \spr2$2
+ wire width 64 input 23 \fast2$2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 64 input 24 \cia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 1 input 26 \p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
wire width 1 output 27 \p_ready_o
- cell \p$29 \p
+ cell \p$30 \p
connect \p_valid_i \p_valid_i
connect \p_ready_o \p_ready_o
end
- cell \n$30 \n
+ cell \n$31 \n
connect \n_valid_o \n_valid_o
connect \n_ready_i \n_ready_i
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 7 \pipe_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 \pipe_op__fn_unit
+ wire width 11 \pipe_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 32 \pipe_op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 1 \pipe_op__is_32bit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 \pipe_op__traptype
+ wire width 5 \pipe_op__traptype
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 13 \pipe_op__trapaddr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 64 \pipe_rb
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 \pipe_spr1
+ wire width 64 \pipe_fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 \pipe_spr2
+ wire width 64 \pipe_fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 64 \pipe_cia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 7 \pipe_op__insn_type$5
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 \pipe_op__fn_unit$6
+ wire width 11 \pipe_op__fn_unit$6
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 32 \pipe_op__insn$7
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 1 \pipe_op__is_32bit$8
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 \pipe_op__traptype$9
+ wire width 5 \pipe_op__traptype$9
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 13 \pipe_op__trapaddr$10
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \pipe_o_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \pipe_spr1$11
+ wire width 64 \pipe_fast1$11
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \pipe_spr1_ok
+ wire width 1 \pipe_fast1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \pipe_spr2$12
+ wire width 64 \pipe_fast2$12
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \pipe_spr2_ok
+ wire width 1 \pipe_fast2_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 \pipe_nia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 \pipe_msr$13
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \pipe_msr_ok
- cell \pipe$31 \pipe
+ cell \pipe$32 \pipe
connect \rst \rst
connect \clk \clk
connect \p_valid_i \pipe_p_valid_i
connect \op__trapaddr \pipe_op__trapaddr
connect \ra \pipe_ra
connect \rb \pipe_rb
- connect \spr1 \pipe_spr1
- connect \spr2 \pipe_spr2
+ connect \fast1 \pipe_fast1
+ connect \fast2 \pipe_fast2
connect \cia \pipe_cia
connect \msr \pipe_msr
connect \n_valid_o \pipe_n_valid_o
connect \op__trapaddr$7 \pipe_op__trapaddr$10
connect \o \pipe_o
connect \o_ok \pipe_o_ok
- connect \spr1$8 \pipe_spr1$11
- connect \spr1_ok \pipe_spr1_ok
- connect \spr2$9 \pipe_spr2$12
- connect \spr2_ok \pipe_spr2_ok
+ connect \fast1$8 \pipe_fast1$11
+ connect \fast1_ok \pipe_fast1_ok
+ connect \fast2$9 \pipe_fast2$12
+ connect \fast2_ok \pipe_fast2_ok
connect \nia \pipe_nia
connect \nia_ok \pipe_nia_ok
connect \msr$10 \pipe_msr$13
end
process $group_3
assign \pipe_op__insn_type 7'0000000
- assign \pipe_op__fn_unit 10'0000000000
+ assign \pipe_op__fn_unit 11'00000000000
assign \pipe_op__insn 32'00000000000000000000000000000000
assign \pipe_op__is_32bit 1'0
- assign \pipe_op__traptype 4'0000
+ assign \pipe_op__traptype 5'00000
assign \pipe_op__trapaddr 13'0000000000000
assign { \pipe_op__trapaddr \pipe_op__traptype \pipe_op__is_32bit \pipe_op__insn \pipe_op__fn_unit \pipe_op__insn_type } { \op__trapaddr \op__traptype \op__is_32bit \op__insn \op__fn_unit \op__insn_type }
sync init
sync init
end
process $group_11
- assign \pipe_spr1 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \pipe_spr1 \spr1$1
+ assign \pipe_fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \pipe_fast1 \fast1$1
sync init
end
process $group_12
- assign \pipe_spr2 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \pipe_spr2 \spr2$2
+ assign \pipe_fast2 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \pipe_fast2 \fast2$2
sync init
end
process $group_13
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 7 \op__insn_type$15
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 \op__fn_unit$16
+ wire width 11 \op__fn_unit$16
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 32 \op__insn$17
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 1 \op__is_32bit$18
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 \op__traptype$19
+ wire width 5 \op__traptype$19
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 13 \op__trapaddr$20
process $group_18
assign \op__insn_type$15 7'0000000
- assign \op__fn_unit$16 10'0000000000
+ assign \op__fn_unit$16 11'00000000000
assign \op__insn$17 32'00000000000000000000000000000000
assign \op__is_32bit$18 1'0
- assign \op__traptype$19 4'0000
+ assign \op__traptype$19 5'00000
assign \op__trapaddr$20 13'0000000000000
assign { \op__trapaddr$20 \op__traptype$19 \op__is_32bit$18 \op__insn$17 \op__fn_unit$16 \op__insn_type$15 } { \pipe_op__trapaddr$10 \pipe_op__traptype$9 \pipe_op__is_32bit$8 \pipe_op__insn$7 \pipe_op__fn_unit$6 \pipe_op__insn_type$5 }
sync init
sync init
end
process $group_26
- assign \spr1 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \spr1_ok 1'0
- assign { \spr1_ok \spr1 } { \pipe_spr1_ok \pipe_spr1$11 }
+ assign \fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast1_ok 1'0
+ assign { \fast1_ok \fast1 } { \pipe_fast1_ok \pipe_fast1$11 }
sync init
end
process $group_28
- assign \spr2 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \spr2_ok 1'0
- assign { \spr2_ok \spr2 } { \pipe_spr2_ok \pipe_spr2$12 }
+ assign \fast2 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast2_ok 1'0
+ assign { \fast2_ok \fast2 } { \pipe_fast2_ok \pipe_fast2$12 }
sync init
end
process $group_30
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.trap0.src_l"
-module \src_l$35
+module \src_l$36
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.trap0.opc_l"
-module \opc_l$36
+module \opc_l$37
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.trap0.req_l"
-module \req_l$37
+module \req_l$38
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.trap0.rst_l"
-module \rst_l$38
+module \rst_l$39
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.trap0.rok_l"
-module \rok_l$39
+module \rok_l$40
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.trap0.alui_l"
-module \alui_l$40
+module \alui_l$41
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.trap0.alu_l"
-module \alu_l$41
+module \alu_l$42
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 7 input 2 \oper_i__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 input 3 \oper_i__fn_unit
+ wire width 11 input 3 \oper_i__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 32 input 4 \oper_i__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 1 input 5 \oper_i__is_32bit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 input 6 \oper_i__traptype
+ wire width 5 input 6 \oper_i__traptype
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 13 input 7 \oper_i__trapaddr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 output 22 \o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 23 \spr1_ok
+ wire width 1 output 23 \fast1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 24 \spr1
+ wire width 64 output 24 \fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 25 \spr2_ok
+ wire width 1 output 25 \fast2_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 26 \spr2
+ wire width 64 output 26 \fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 27 \nia_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 7 \alu_trap0_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 \alu_trap0_op__fn_unit
+ wire width 11 \alu_trap0_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 32 \alu_trap0_op__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 1 \alu_trap0_op__is_32bit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 \alu_trap0_op__traptype
+ wire width 5 \alu_trap0_op__traptype
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 13 \alu_trap0_op__trapaddr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 64 \alu_trap0_rb
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 \alu_trap0_spr1
+ wire width 64 \alu_trap0_fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 \alu_trap0_spr2
+ wire width 64 \alu_trap0_fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 64 \alu_trap0_cia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
connect \clk \clk
connect \o_ok \o_ok
connect \o \o
- connect \spr1_ok \spr1_ok
- connect \spr1 \spr1
- connect \spr2_ok \spr2_ok
- connect \spr2 \spr2
+ connect \fast1_ok \fast1_ok
+ connect \fast1 \fast1
+ connect \fast2_ok \fast2_ok
+ connect \fast2 \fast2
connect \nia_ok \nia_ok
connect \nia \nia
connect \msr_ok \msr_ok
connect \op__trapaddr \alu_trap0_op__trapaddr
connect \ra \alu_trap0_ra
connect \rb \alu_trap0_rb
- connect \spr1$1 \alu_trap0_spr1
- connect \spr2$2 \alu_trap0_spr2
+ connect \fast1$1 \alu_trap0_fast1
+ connect \fast2$2 \alu_trap0_fast2
connect \cia \alu_trap0_cia
connect \msr$3 \alu_trap0_msr
connect \p_valid_i \alu_trap0_p_valid_i
wire width 6 \src_l_r_src$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
wire width 6 \src_l_q_src
- cell \src_l$35 \src_l
+ cell \src_l$36 \src_l
connect \rst \rst
connect \clk \clk
connect \s_src \src_l_s_src
wire width 1 \opc_l_r_opc$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
wire width 1 \opc_l_q_opc
- cell \opc_l$36 \opc_l
+ cell \opc_l$37 \opc_l
connect \rst \rst
connect \clk \clk
connect \s_opc \opc_l_s_opc
wire width 5 \req_l_s_req
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
wire width 5 \req_l_r_req
- cell \req_l$37 \req_l
+ cell \req_l$38 \req_l
connect \rst \rst
connect \clk \clk
connect \q_req \req_l_q_req
wire width 1 \rst_l_s_rst
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
wire width 1 \rst_l_r_rst
- cell \rst_l$38 \rst_l
+ cell \rst_l$39 \rst_l
connect \rst \rst
connect \clk \clk
connect \s_rst \rst_l_s_rst
wire width 1 \rok_l_r_rdok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
wire width 1 \rok_l_r_rdok$next
- cell \rok_l$39 \rok_l
+ cell \rok_l$40 \rok_l
connect \rst \rst
connect \clk \clk
connect \q_rdok \rok_l_q_rdok
wire width 1 \alui_l_r_alui$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
wire width 1 \alui_l_s_alui
- cell \alui_l$40 \alui_l
+ cell \alui_l$41 \alui_l
connect \rst \rst
connect \clk \clk
connect \q_alui \alui_l_q_alui
wire width 1 \alu_l_r_alu$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
wire width 1 \alu_l_s_alu
- cell \alu_l$41 \alu_l
+ cell \alu_l$42 \alu_l
connect \rst \rst
connect \clk \clk
connect \q_alu \alu_l_q_alu
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 7 \oper_r__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 \oper_r__fn_unit
+ wire width 11 \oper_r__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 32 \oper_r__insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 1 \oper_r__is_32bit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 \oper_r__traptype
+ wire width 5 \oper_r__traptype
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 13 \oper_r__trapaddr
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 7 \oper_l__insn_type$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 10 \oper_l__fn_unit
+ wire width 11 \oper_l__fn_unit
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 10 \oper_l__fn_unit$next
+ wire width 11 \oper_l__fn_unit$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 32 \oper_l__insn
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 1 \oper_l__is_32bit$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 4 \oper_l__traptype
+ wire width 5 \oper_l__traptype
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 4 \oper_l__traptype$next
+ wire width 5 \oper_l__traptype$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 13 \oper_l__trapaddr
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 13 \oper_l__trapaddr$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
- wire width 67 $69
+ wire width 69 $69
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
cell $mux $70
- parameter \WIDTH 67
+ parameter \WIDTH 69
connect \A { \oper_l__trapaddr \oper_l__traptype \oper_l__is_32bit \oper_l__insn \oper_l__fn_unit \oper_l__insn_type }
connect \B { \oper_i__trapaddr \oper_i__traptype \oper_i__is_32bit \oper_i__insn \oper_i__fn_unit \oper_i__insn_type }
connect \S \issue_i
end
process $group_25
assign \oper_r__insn_type 7'0000000
- assign \oper_r__fn_unit 10'0000000000
+ assign \oper_r__fn_unit 11'00000000000
assign \oper_r__insn 32'00000000000000000000000000000000
assign \oper_r__is_32bit 1'0
- assign \oper_r__traptype 4'0000
+ assign \oper_r__traptype 5'00000
assign \oper_r__trapaddr 13'0000000000000
assign { \oper_r__trapaddr \oper_r__traptype \oper_r__is_32bit \oper_r__insn \oper_r__fn_unit \oper_r__insn_type } $69
sync init
end
sync init
update \oper_l__insn_type 7'0000000
- update \oper_l__fn_unit 10'0000000000
+ update \oper_l__fn_unit 11'00000000000
update \oper_l__insn 32'00000000000000000000000000000000
update \oper_l__is_32bit 1'0
- update \oper_l__traptype 4'0000
+ update \oper_l__traptype 5'00000
update \oper_l__trapaddr 13'0000000000000
sync posedge \clk
update \oper_l__insn_type \oper_l__insn_type$next
update \data_r0_l__o_ok \data_r0_l__o_ok$next
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
- wire width 64 \data_r1__spr1
+ wire width 64 \data_r1__fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
- wire width 1 \data_r1__spr1_ok
+ wire width 1 \data_r1__fast1_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 64 \data_r1_l__spr1
+ wire width 64 \data_r1_l__fast1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 64 \data_r1_l__spr1$next
+ wire width 64 \data_r1_l__fast1$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \data_r1_l__spr1_ok
+ wire width 1 \data_r1_l__fast1_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \data_r1_l__spr1_ok$next
+ wire width 1 \data_r1_l__fast1_ok$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
wire width 65 $77
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
cell $mux $80
parameter \WIDTH 65
- connect \A { \data_r1_l__spr1_ok \data_r1_l__spr1 }
- connect \B { \spr1_ok \spr1 }
+ connect \A { \data_r1_l__fast1_ok \data_r1_l__fast1 }
+ connect \B { \fast1_ok \fast1 }
connect \S $78
connect \Y $77
end
process $group_41
- assign \data_r1__spr1 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \data_r1__spr1_ok 1'0
- assign { \data_r1__spr1_ok \data_r1__spr1 } $77
+ assign \data_r1__fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \data_r1__fast1_ok 1'0
+ assign { \data_r1__fast1_ok \data_r1__fast1 } $77
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
connect \Y $81
end
process $group_43
- assign \data_r1_l__spr1$next \data_r1_l__spr1
- assign \data_r1_l__spr1_ok$next \data_r1_l__spr1_ok
+ assign \data_r1_l__fast1$next \data_r1_l__fast1
+ assign \data_r1_l__fast1_ok$next \data_r1_l__fast1_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
switch { $81 }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
case 1'1
- assign { \data_r1_l__spr1_ok$next \data_r1_l__spr1$next } { \spr1_ok \spr1 }
+ assign { \data_r1_l__fast1_ok$next \data_r1_l__fast1$next } { \fast1_ok \fast1 }
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \data_r1_l__spr1_ok$next 1'0
+ assign \data_r1_l__fast1_ok$next 1'0
end
sync init
- update \data_r1_l__spr1 64'0000000000000000000000000000000000000000000000000000000000000000
- update \data_r1_l__spr1_ok 1'0
+ update \data_r1_l__fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \data_r1_l__fast1_ok 1'0
sync posedge \clk
- update \data_r1_l__spr1 \data_r1_l__spr1$next
- update \data_r1_l__spr1_ok \data_r1_l__spr1_ok$next
+ update \data_r1_l__fast1 \data_r1_l__fast1$next
+ update \data_r1_l__fast1_ok \data_r1_l__fast1_ok$next
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
- wire width 64 \data_r2__spr2
+ wire width 64 \data_r2__fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
- wire width 1 \data_r2__spr2_ok
+ wire width 1 \data_r2__fast2_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 64 \data_r2_l__spr2
+ wire width 64 \data_r2_l__fast2
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 64 \data_r2_l__spr2$next
+ wire width 64 \data_r2_l__fast2$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \data_r2_l__spr2_ok
+ wire width 1 \data_r2_l__fast2_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \data_r2_l__spr2_ok$next
+ wire width 1 \data_r2_l__fast2_ok$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
wire width 65 $83
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
cell $mux $86
parameter \WIDTH 65
- connect \A { \data_r2_l__spr2_ok \data_r2_l__spr2 }
- connect \B { \spr2_ok \spr2 }
+ connect \A { \data_r2_l__fast2_ok \data_r2_l__fast2 }
+ connect \B { \fast2_ok \fast2 }
connect \S $84
connect \Y $83
end
process $group_45
- assign \data_r2__spr2 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \data_r2__spr2_ok 1'0
- assign { \data_r2__spr2_ok \data_r2__spr2 } $83
+ assign \data_r2__fast2 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \data_r2__fast2_ok 1'0
+ assign { \data_r2__fast2_ok \data_r2__fast2 } $83
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
connect \Y $87
end
process $group_47
- assign \data_r2_l__spr2$next \data_r2_l__spr2
- assign \data_r2_l__spr2_ok$next \data_r2_l__spr2_ok
+ assign \data_r2_l__fast2$next \data_r2_l__fast2
+ assign \data_r2_l__fast2_ok$next \data_r2_l__fast2_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
switch { $87 }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
case 1'1
- assign { \data_r2_l__spr2_ok$next \data_r2_l__spr2$next } { \spr2_ok \spr2 }
+ assign { \data_r2_l__fast2_ok$next \data_r2_l__fast2$next } { \fast2_ok \fast2 }
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \data_r2_l__spr2_ok$next 1'0
+ assign \data_r2_l__fast2_ok$next 1'0
end
sync init
- update \data_r2_l__spr2 64'0000000000000000000000000000000000000000000000000000000000000000
- update \data_r2_l__spr2_ok 1'0
+ update \data_r2_l__fast2 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \data_r2_l__fast2_ok 1'0
sync posedge \clk
- update \data_r2_l__spr2 \data_r2_l__spr2$next
- update \data_r2_l__spr2_ok \data_r2_l__spr2_ok$next
+ update \data_r2_l__fast2 \data_r2_l__fast2$next
+ update \data_r2_l__fast2_ok \data_r2_l__fast2_ok$next
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
wire width 64 \data_r3__nia
end
process $group_57
assign \wrmask 5'00000
- assign \wrmask { \data_r4__msr_ok \data_r3__nia_ok \data_r2__spr2_ok \data_r1__spr1_ok \data_r0__o_ok }
+ assign \wrmask { \data_r4__msr_ok \data_r3__nia_ok \data_r2__fast2_ok \data_r1__fast1_ok \data_r0__o_ok }
sync init
end
process $group_58
assign \alu_trap0_op__insn_type 7'0000000
- assign \alu_trap0_op__fn_unit 10'0000000000
+ assign \alu_trap0_op__fn_unit 11'00000000000
assign \alu_trap0_op__insn 32'00000000000000000000000000000000
assign \alu_trap0_op__is_32bit 1'0
- assign \alu_trap0_op__traptype 4'0000
+ assign \alu_trap0_op__traptype 5'00000
assign \alu_trap0_op__trapaddr 13'0000000000000
assign { \alu_trap0_op__trapaddr \alu_trap0_op__traptype \alu_trap0_op__is_32bit \alu_trap0_op__insn \alu_trap0_op__fn_unit \alu_trap0_op__insn_type } { \oper_r__trapaddr \oper_r__traptype \oper_r__is_32bit \oper_r__insn \oper_r__fn_unit \oper_r__insn_type }
sync init
connect \Y $105
end
process $group_68
- assign \alu_trap0_spr1 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \alu_trap0_spr1 $105
+ assign \alu_trap0_fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \alu_trap0_fast1 $105
sync init
end
process $group_69
connect \Y $107
end
process $group_70
- assign \alu_trap0_spr2 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \alu_trap0_spr2 $107
+ assign \alu_trap0_fast2 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \alu_trap0_fast2 $107
sync init
end
process $group_71
switch { \wr__go [1] }
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
case 1'1
- assign \dest2_o { \data_r1__spr1_ok \data_r1__spr1 } [63:0]
+ assign \dest2_o { \data_r1__fast1_ok \data_r1__fast1 } [63:0]
end
sync init
end
switch { \wr__go [2] }
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
case 1'1
- assign \dest3_o { \data_r2__spr2_ok \data_r2__spr2 } [63:0]
+ assign \dest3_o { \data_r2__fast2_ok \data_r2__fast2 } [63:0]
end
sync init
end
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.alu_logical0.p"
-module \p$42
+module \p$43
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
wire width 1 input 0 \p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.alu_logical0.n"
-module \n$43
+module \n$44
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
wire width 1 input 0 \n_valid_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.alu_logical0.pipe.p"
-module \p$45
+module \p$46
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
wire width 1 input 0 \p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.alu_logical0.pipe.n"
-module \n$46
+module \n$47
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
wire width 1 input 0 \n_valid_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.alu_logical0.pipe.input"
-module \input$47
+module \input$48
attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
wire width 2 input 0 \muxid
attribute \enum_base_type "InternalOp"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 input 1 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 input 2 \op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 input 2 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 input 3 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 output 24 \op__insn_type$2
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 output 25 \op__fn_unit$3
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 output 25 \op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 output 26 \op__imm_data__imm$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
end
process $group_3
assign \op__insn_type$2 7'0000000
- assign \op__fn_unit$3 10'0000000000
+ assign \op__fn_unit$3 11'00000000000
assign \op__imm_data__imm$4 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$5 1'0
assign \op__lk$6 1'0
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.alu_logical0.pipe.main"
-module \main$48
+module \main$49
attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
wire width 2 input 0 \muxid
attribute \enum_base_type "InternalOp"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 input 1 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 input 2 \op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 input 2 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 input 3 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 output 24 \op__insn_type$2
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 output 25 \op__fn_unit$3
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 output 25 \op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 output 26 \op__imm_data__imm$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
end
process $group_14
assign \op__insn_type$2 7'0000000
- assign \op__fn_unit$3 10'0000000000
+ assign \op__fn_unit$3 11'00000000000
assign \op__imm_data__imm$4 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$5 1'0
assign \op__lk$6 1'0
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.alu_logical0.pipe.output"
-module \output$49
+module \output$50
attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
wire width 2 input 0 \muxid
attribute \enum_base_type "InternalOp"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 input 1 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 input 2 \op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 input 2 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 input 3 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 output 26 \op__insn_type$2
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 output 27 \op__fn_unit$3
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 output 27 \op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 output 28 \op__imm_data__imm$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
end
process $group_16
assign \op__insn_type$2 7'0000000
- assign \op__fn_unit$3 10'0000000000
+ assign \op__fn_unit$3 11'00000000000
assign \op__imm_data__imm$4 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$5 1'0
assign \op__lk$6 1'0
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.alu_logical0.pipe"
-module \pipe$44
+module \pipe$45
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 input 5 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 input 6 \op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 input 6 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 input 7 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 \op__insn_type$2$next
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 output 31 \op__fn_unit$3
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 \op__fn_unit$3$next
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 output 31 \op__fn_unit$3
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 \op__fn_unit$3$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 output 32 \op__imm_data__imm$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 1 output 55 \xer_ca_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \xer_ca_ok$next
- cell \p$45 \p
+ cell \p$46 \p
connect \p_valid_i \p_valid_i
connect \p_ready_o \p_ready_o
end
- cell \n$46 \n
+ cell \n$47 \n
connect \n_valid_o \n_valid_o
connect \n_ready_i \n_ready_i
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 \input_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 \input_op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 \input_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 \input_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 \input_op__insn_type$23
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 \input_op__fn_unit$24
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 \input_op__fn_unit$24
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 \input_op__imm_data__imm$25
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 \input_ra$43
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 64 \input_rb$44
- cell \input$47 \input
+ cell \input$48 \input
connect \muxid \input_muxid
connect \op__insn_type \input_op__insn_type
connect \op__fn_unit \input_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 \main_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 \main_op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 \main_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 \main_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 \main_op__insn_type$46
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 \main_op__fn_unit$47
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 \main_op__fn_unit$47
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 \main_op__imm_data__imm$48
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 \main_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \main_o_ok
- cell \main$48 \main
+ cell \main$49 \main
connect \muxid \main_muxid
connect \op__insn_type \main_op__insn_type
connect \op__fn_unit \main_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 \output_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 \output_op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 \output_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 \output_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 \output_op__insn_type$67
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 \output_op__fn_unit$68
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 \output_op__fn_unit$68
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 \output_op__imm_data__imm$69
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 2 \output_xer_ca$90
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \output_xer_ca_ok
- cell \output$49 \output
+ cell \output$50 \output
connect \muxid \output_muxid
connect \op__insn_type \output_op__insn_type
connect \op__fn_unit \output_op__fn_unit
end
process $group_1
assign \input_op__insn_type 7'0000000
- assign \input_op__fn_unit 10'0000000000
+ assign \input_op__fn_unit 11'00000000000
assign \input_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \input_op__imm_data__imm_ok 1'0
assign \input_op__lk 1'0
end
process $group_24
assign \main_op__insn_type 7'0000000
- assign \main_op__fn_unit 10'0000000000
+ assign \main_op__fn_unit 11'00000000000
assign \main_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \main_op__imm_data__imm_ok 1'0
assign \main_op__lk 1'0
end
process $group_47
assign \output_op__insn_type 7'0000000
- assign \output_op__fn_unit 10'0000000000
+ assign \output_op__fn_unit 11'00000000000
assign \output_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \output_op__imm_data__imm_ok 1'0
assign \output_op__lk 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 \op__insn_type$101
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 \op__fn_unit$102
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 \op__fn_unit$102
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 \op__imm_data__imm$103
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 32 \op__insn$120
process $group_77
assign \op__insn_type$101 7'0000000
- assign \op__fn_unit$102 10'0000000000
+ assign \op__fn_unit$102 11'00000000000
assign \op__imm_data__imm$103 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$104 1'0
assign \op__lk$105 1'0
end
sync init
update \op__insn_type$2 7'0000000
- update \op__fn_unit$3 10'0000000000
+ update \op__fn_unit$3 11'00000000000
update \op__imm_data__imm$4 64'0000000000000000000000000000000000000000000000000000000000000000
update \op__imm_data__imm_ok$5 1'0
update \op__lk$6 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 input 10 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 input 11 \op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 input 11 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 input 12 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 1 input 32 \p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
wire width 1 output 33 \p_ready_o
- cell \p$42 \p
+ cell \p$43 \p
connect \p_valid_i \p_valid_i
connect \p_ready_o \p_ready_o
end
- cell \n$43 \n
+ cell \n$44 \n
connect \n_valid_o \n_valid_o
connect \n_ready_i \n_ready_i
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 \pipe_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 \pipe_op__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 \pipe_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 \pipe_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 \pipe_op__insn_type$2
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 \pipe_op__fn_unit$3
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 \pipe_op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 \pipe_op__imm_data__imm$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 2 \pipe_xer_ca
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \pipe_xer_ca_ok
- cell \pipe$44 \pipe
+ cell \pipe$45 \pipe
connect \rst \rst
connect \clk \clk
connect \p_valid_i \pipe_p_valid_i
end
process $group_3
assign \pipe_op__insn_type 7'0000000
- assign \pipe_op__fn_unit 10'0000000000
+ assign \pipe_op__fn_unit 11'00000000000
assign \pipe_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \pipe_op__imm_data__imm_ok 1'0
assign \pipe_op__lk 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 \op__insn_type$23
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 \op__fn_unit$24
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 \op__fn_unit$24
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 64 \op__imm_data__imm$25
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 32 \op__insn$42
process $group_28
assign \op__insn_type$23 7'0000000
- assign \op__fn_unit$24 10'0000000000
+ assign \op__fn_unit$24 11'00000000000
assign \op__imm_data__imm$25 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$26 1'0
assign \op__lk$27 1'0
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.src_l"
-module \src_l$50
+module \src_l$51
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.opc_l"
-module \opc_l$51
+module \opc_l$52
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 0 \rst
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 1 \clk
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
+ wire width 1 input 2 \s_opc
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 1 input 3 \r_opc
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
+ wire width 1 output 4 \q_opc
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:66"
+ wire width 1 \q_int
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:66"
+ wire width 1 \q_int$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 1 $1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $not $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \r_opc
+ connect \Y $1
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 1 $3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $and $4
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_int
+ connect \B $1
+ connect \Y $3
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 1 $5
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $or $6
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $3
+ connect \B \s_opc
+ connect \Y $5
+ end
+ process $group_0
+ assign \q_int$next \q_int
+ assign \q_int$next $5
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \q_int$next 1'0
+ end
+ sync init
+ update \q_int 1'0
+ sync posedge \clk
+ update \q_int \q_int$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 1 $7
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $not $8
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \r_opc
+ connect \Y $7
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 1 $9
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $and $10
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_int
+ connect \B $7
+ connect \Y $9
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 1 $11
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $or $12
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $9
+ connect \B \s_opc
+ connect \Y $11
+ end
+ process $group_1
+ assign \q_opc 1'0
+ assign \q_opc $11
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:61"
+ wire width 1 \qn_opc
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:73"
+ wire width 1 $13
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:73"
+ cell $not $14
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_opc
+ connect \Y $13
+ end
+ process $group_2
+ assign \qn_opc 1'0
+ assign \qn_opc $13
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:62"
+ wire width 1 \qlq_opc
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:74"
+ wire width 1 $15
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:74"
+ cell $or $16
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_opc
+ connect \B \q_int
+ connect \Y $15
+ end
+ process $group_3
+ assign \qlq_opc 1'0
+ assign \qlq_opc $15
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.req_l"
+module \req_l$53
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 0 \rst
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 1 \clk
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
+ wire width 3 output 2 \q_req
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
+ wire width 3 input 3 \s_req
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 3 input 4 \r_req
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:66"
+ wire width 3 \q_int
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:66"
+ wire width 3 \q_int$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 3 $1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $not $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A \r_req
+ connect \Y $1
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 3 $3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $and $4
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A \q_int
+ connect \B $1
+ connect \Y $3
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 3 $5
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $or $6
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A $3
+ connect \B \s_req
+ connect \Y $5
+ end
+ process $group_0
+ assign \q_int$next \q_int
+ assign \q_int$next $5
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \q_int$next 3'000
+ end
+ sync init
+ update \q_int 3'000
+ sync posedge \clk
+ update \q_int \q_int$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 3 $7
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $not $8
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A \r_req
+ connect \Y $7
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 3 $9
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $and $10
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A \q_int
+ connect \B $7
+ connect \Y $9
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 3 $11
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $or $12
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A $9
+ connect \B \s_req
+ connect \Y $11
+ end
+ process $group_1
+ assign \q_req 3'000
+ assign \q_req $11
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:61"
+ wire width 3 \qn_req
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:73"
+ wire width 3 $13
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:73"
+ cell $not $14
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A \q_req
+ connect \Y $13
+ end
+ process $group_2
+ assign \qn_req 3'000
+ assign \qn_req $13
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:62"
+ wire width 3 \qlq_req
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:74"
+ wire width 3 $15
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:74"
+ cell $or $16
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A \q_req
+ connect \B \q_int
+ connect \Y $15
+ end
+ process $group_3
+ assign \qlq_req 3'000
+ assign \qlq_req $15
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.rst_l"
+module \rst_l$54
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 0 \rst
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 1 \clk
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
+ wire width 1 input 2 \s_rst
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 1 input 3 \r_rst
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:66"
+ wire width 1 \q_int
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:66"
+ wire width 1 \q_int$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 1 $1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $not $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \r_rst
+ connect \Y $1
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 1 $3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $and $4
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_int
+ connect \B $1
+ connect \Y $3
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 1 $5
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $or $6
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $3
+ connect \B \s_rst
+ connect \Y $5
+ end
+ process $group_0
+ assign \q_int$next \q_int
+ assign \q_int$next $5
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \q_int$next 1'0
+ end
+ sync init
+ update \q_int 1'0
+ sync posedge \clk
+ update \q_int \q_int$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
+ wire width 1 \q_rst
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 1 $7
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $not $8
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \r_rst
+ connect \Y $7
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 1 $9
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $and $10
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_int
+ connect \B $7
+ connect \Y $9
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 1 $11
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $or $12
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $9
+ connect \B \s_rst
+ connect \Y $11
+ end
+ process $group_1
+ assign \q_rst 1'0
+ assign \q_rst $11
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:61"
+ wire width 1 \qn_rst
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:73"
+ wire width 1 $13
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:73"
+ cell $not $14
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_rst
+ connect \Y $13
+ end
+ process $group_2
+ assign \qn_rst 1'0
+ assign \qn_rst $13
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:62"
+ wire width 1 \qlq_rst
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:74"
+ wire width 1 $15
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:74"
+ cell $or $16
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_rst
+ connect \B \q_int
+ connect \Y $15
+ end
+ process $group_3
+ assign \qlq_rst 1'0
+ assign \qlq_rst $15
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.rok_l"
+module \rok_l$55
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 0 \rst
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 1 \clk
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
+ wire width 1 output 2 \q_rdok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
+ wire width 1 input 3 \s_rdok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 1 input 4 \r_rdok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:66"
+ wire width 1 \q_int
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:66"
+ wire width 1 \q_int$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 1 $1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $not $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \r_rdok
+ connect \Y $1
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 1 $3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $and $4
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_int
+ connect \B $1
+ connect \Y $3
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 1 $5
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $or $6
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $3
+ connect \B \s_rdok
+ connect \Y $5
+ end
+ process $group_0
+ assign \q_int$next \q_int
+ assign \q_int$next $5
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \q_int$next 1'0
+ end
+ sync init
+ update \q_int 1'0
+ sync posedge \clk
+ update \q_int \q_int$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 1 $7
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $not $8
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \r_rdok
+ connect \Y $7
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 1 $9
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $and $10
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_int
+ connect \B $7
+ connect \Y $9
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 1 $11
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $or $12
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $9
+ connect \B \s_rdok
+ connect \Y $11
+ end
+ process $group_1
+ assign \q_rdok 1'0
+ assign \q_rdok $11
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:61"
+ wire width 1 \qn_rdok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:73"
+ wire width 1 $13
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:73"
+ cell $not $14
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_rdok
+ connect \Y $13
+ end
+ process $group_2
+ assign \qn_rdok 1'0
+ assign \qn_rdok $13
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:62"
+ wire width 1 \qlq_rdok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:74"
+ wire width 1 $15
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:74"
+ cell $or $16
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_rdok
+ connect \B \q_int
+ connect \Y $15
+ end
+ process $group_3
+ assign \qlq_rdok 1'0
+ assign \qlq_rdok $15
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.alui_l"
+module \alui_l$56
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 0 \rst
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 1 \clk
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
+ wire width 1 output 2 \q_alui
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 1 input 3 \r_alui
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
+ wire width 1 input 4 \s_alui
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:66"
+ wire width 1 \q_int
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:66"
+ wire width 1 \q_int$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 1 $1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $not $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \r_alui
+ connect \Y $1
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 1 $3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $and $4
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_int
+ connect \B $1
+ connect \Y $3
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 1 $5
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $or $6
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $3
+ connect \B \s_alui
+ connect \Y $5
+ end
+ process $group_0
+ assign \q_int$next \q_int
+ assign \q_int$next $5
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \q_int$next 1'0
+ end
+ sync init
+ update \q_int 1'0
+ sync posedge \clk
+ update \q_int \q_int$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 1 $7
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $not $8
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \r_alui
+ connect \Y $7
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 1 $9
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $and $10
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_int
+ connect \B $7
+ connect \Y $9
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 1 $11
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $or $12
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $9
+ connect \B \s_alui
+ connect \Y $11
+ end
+ process $group_1
+ assign \q_alui 1'0
+ assign \q_alui $11
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:61"
+ wire width 1 \qn_alui
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:73"
+ wire width 1 $13
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:73"
+ cell $not $14
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_alui
+ connect \Y $13
+ end
+ process $group_2
+ assign \qn_alui 1'0
+ assign \qn_alui $13
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:62"
+ wire width 1 \qlq_alui
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:74"
+ wire width 1 $15
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:74"
+ cell $or $16
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_alui
+ connect \B \q_int
+ connect \Y $15
+ end
+ process $group_3
+ assign \qlq_alui 1'0
+ assign \qlq_alui $15
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.alu_l"
+module \alu_l$57
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 0 \rst
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 1 \clk
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
+ wire width 1 output 2 \q_alu
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 1 input 3 \r_alu
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
+ wire width 1 input 4 \s_alu
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:66"
+ wire width 1 \q_int
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:66"
+ wire width 1 \q_int$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 1 $1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $not $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \r_alu
+ connect \Y $1
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 1 $3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $and $4
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_int
+ connect \B $1
+ connect \Y $3
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 1 $5
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $or $6
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $3
+ connect \B \s_alu
+ connect \Y $5
+ end
+ process $group_0
+ assign \q_int$next \q_int
+ assign \q_int$next $5
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \q_int$next 1'0
+ end
+ sync init
+ update \q_int 1'0
+ sync posedge \clk
+ update \q_int \q_int$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 1 $7
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $not $8
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \r_alu
+ connect \Y $7
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 1 $9
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $and $10
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_int
+ connect \B $7
+ connect \Y $9
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 1 $11
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $or $12
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $9
+ connect \B \s_alu
+ connect \Y $11
+ end
+ process $group_1
+ assign \q_alu 1'0
+ assign \q_alu $11
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:61"
+ wire width 1 \qn_alu
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:73"
+ wire width 1 $13
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:73"
+ cell $not $14
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_alu
+ connect \Y $13
+ end
+ process $group_2
+ assign \qn_alu 1'0
+ assign \qn_alu $13
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:62"
+ wire width 1 \qlq_alu
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:74"
+ wire width 1 $15
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:74"
+ cell $or $16
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \q_alu
+ connect \B \q_int
+ connect \Y $15
+ end
+ process $group_3
+ assign \qlq_alu 1'0
+ assign \qlq_alu $15
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.fus.logical0"
+module \logical0
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 0 \rst
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 1 \clk
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 7 input 2 \oper_i__insn_type
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 input 3 \oper_i__fn_unit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 64 input 4 \oper_i__imm_data__imm
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 5 \oper_i__imm_data__imm_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 6 \oper_i__lk
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 7 \oper_i__rc__rc
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 8 \oper_i__rc__rc_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 9 \oper_i__oe__oe
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 10 \oper_i__oe__oe_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 11 \oper_i__invert_a
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 12 \oper_i__zero_a
+ attribute \enum_base_type "CryIn"
+ attribute \enum_value_00 "ZERO"
+ attribute \enum_value_01 "ONE"
+ attribute \enum_value_10 "CA"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 2 input 13 \oper_i__input_carry
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 14 \oper_i__invert_out
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 3 input 15 \oper_i__write_cr__data
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 16 \oper_i__write_cr__ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 17 \oper_i__output_carry
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 18 \oper_i__is_32bit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 19 \oper_i__is_signed
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 4 input 20 \oper_i__data_len
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 32 input 21 \oper_i__insn
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
+ wire width 1 input 22 \issue_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
+ wire width 1 output 23 \busy_o
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
+ wire width 2 input 24 \rdmaskn
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 2 output 25 \rd__rel
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 2 input 26 \rd__go
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 64 input 27 \src1_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 64 input 28 \src2_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 29 \o_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 3 output 30 \wr__rel
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 3 input 31 \wr__go
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 output 32 \o
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 33 \cr_a_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 4 output 34 \cr_a
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 35 \xer_ca_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 output 36 \xer_ca
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
+ wire width 1 input 37 \go_die_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
+ wire width 1 input 38 \shadown_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
+ wire width 64 output 39 \dest1_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
+ wire width 1 \alu_logical0_n_valid_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
+ wire width 1 \alu_logical0_n_ready_i
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 7 \alu_logical0_op__insn_type
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 \alu_logical0_op__fn_unit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 64 \alu_logical0_op__imm_data__imm
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \alu_logical0_op__imm_data__imm_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \alu_logical0_op__lk
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \alu_logical0_op__rc__rc
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \alu_logical0_op__rc__rc_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \alu_logical0_op__oe__oe
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \alu_logical0_op__oe__oe_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \alu_logical0_op__invert_a
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \alu_logical0_op__zero_a
+ attribute \enum_base_type "CryIn"
+ attribute \enum_value_00 "ZERO"
+ attribute \enum_value_01 "ONE"
+ attribute \enum_value_10 "CA"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 2 \alu_logical0_op__input_carry
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \alu_logical0_op__invert_out
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 3 \alu_logical0_op__write_cr__data
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \alu_logical0_op__write_cr__ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \alu_logical0_op__output_carry
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \alu_logical0_op__is_32bit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \alu_logical0_op__is_signed
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 4 \alu_logical0_op__data_len
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 32 \alu_logical0_op__insn
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 \alu_logical0_ra
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 \alu_logical0_rb
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
+ wire width 1 \alu_logical0_p_valid_i
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
+ wire width 1 \alu_logical0_p_ready_o
+ cell \alu_logical0 \alu_logical0
+ connect \rst \rst
+ connect \clk \clk
+ connect \o_ok \o_ok
+ connect \o \o
+ connect \cr_a_ok \cr_a_ok
+ connect \cr_a \cr_a
+ connect \xer_ca_ok \xer_ca_ok
+ connect \xer_ca \xer_ca
+ connect \n_valid_o \alu_logical0_n_valid_o
+ connect \n_ready_i \alu_logical0_n_ready_i
+ connect \op__insn_type \alu_logical0_op__insn_type
+ connect \op__fn_unit \alu_logical0_op__fn_unit
+ connect \op__imm_data__imm \alu_logical0_op__imm_data__imm
+ connect \op__imm_data__imm_ok \alu_logical0_op__imm_data__imm_ok
+ connect \op__lk \alu_logical0_op__lk
+ connect \op__rc__rc \alu_logical0_op__rc__rc
+ connect \op__rc__rc_ok \alu_logical0_op__rc__rc_ok
+ connect \op__oe__oe \alu_logical0_op__oe__oe
+ connect \op__oe__oe_ok \alu_logical0_op__oe__oe_ok
+ connect \op__invert_a \alu_logical0_op__invert_a
+ connect \op__zero_a \alu_logical0_op__zero_a
+ connect \op__input_carry \alu_logical0_op__input_carry
+ connect \op__invert_out \alu_logical0_op__invert_out
+ connect \op__write_cr__data \alu_logical0_op__write_cr__data
+ connect \op__write_cr__ok \alu_logical0_op__write_cr__ok
+ connect \op__output_carry \alu_logical0_op__output_carry
+ connect \op__is_32bit \alu_logical0_op__is_32bit
+ connect \op__is_signed \alu_logical0_op__is_signed
+ connect \op__data_len \alu_logical0_op__data_len
+ connect \op__insn \alu_logical0_op__insn
+ connect \ra \alu_logical0_ra
+ connect \rb \alu_logical0_rb
+ connect \p_valid_i \alu_logical0_p_valid_i
+ connect \p_ready_o \alu_logical0_p_ready_o
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
+ wire width 2 \src_l_s_src
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
+ wire width 2 \src_l_s_src$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 2 \src_l_r_src
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 2 \src_l_r_src$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
+ wire width 2 \src_l_q_src
+ cell \src_l$51 \src_l
+ connect \rst \rst
+ connect \clk \clk
+ connect \s_src \src_l_s_src
+ connect \r_src \src_l_r_src
+ connect \q_src \src_l_q_src
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
+ wire width 1 \opc_l_s_opc
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
+ wire width 1 \opc_l_s_opc$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 1 \opc_l_r_opc
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 1 \opc_l_r_opc$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
+ wire width 1 \opc_l_q_opc
+ cell \opc_l$52 \opc_l
+ connect \rst \rst
+ connect \clk \clk
+ connect \s_opc \opc_l_s_opc
+ connect \r_opc \opc_l_r_opc
+ connect \q_opc \opc_l_q_opc
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
+ wire width 3 \req_l_q_req
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
+ wire width 3 \req_l_s_req
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 3 \req_l_r_req
+ cell \req_l$53 \req_l
+ connect \rst \rst
+ connect \clk \clk
+ connect \q_req \req_l_q_req
+ connect \s_req \req_l_s_req
+ connect \r_req \req_l_r_req
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
+ wire width 1 \rst_l_s_rst
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 1 \rst_l_r_rst
+ cell \rst_l$54 \rst_l
+ connect \rst \rst
+ connect \clk \clk
+ connect \s_rst \rst_l_s_rst
+ connect \r_rst \rst_l_r_rst
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
+ wire width 1 \rok_l_q_rdok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
+ wire width 1 \rok_l_s_rdok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 1 \rok_l_r_rdok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 1 \rok_l_r_rdok$next
+ cell \rok_l$55 \rok_l
+ connect \rst \rst
+ connect \clk \clk
+ connect \q_rdok \rok_l_q_rdok
+ connect \s_rdok \rok_l_s_rdok
+ connect \r_rdok \rok_l_r_rdok
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
+ wire width 1 \alui_l_q_alui
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 1 \alui_l_r_alui
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 1 \alui_l_r_alui$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
+ wire width 1 \alui_l_s_alui
+ cell \alui_l$56 \alui_l
+ connect \rst \rst
+ connect \clk \clk
+ connect \q_alui \alui_l_q_alui
+ connect \r_alui \alui_l_r_alui
+ connect \s_alui \alui_l_s_alui
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
+ wire width 1 \alu_l_q_alu
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 1 \alu_l_r_alu
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 1 \alu_l_r_alu$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
+ wire width 1 \alu_l_s_alu
+ cell \alu_l$57 \alu_l
+ connect \rst \rst
+ connect \clk \clk
+ connect \q_alu \alu_l_q_alu
+ connect \r_alu \alu_l_r_alu
+ connect \s_alu \alu_l_s_alu
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:178"
+ wire width 1 \all_rd
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:179"
+ wire width 1 $1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:179"
+ cell $and $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \busy_o
+ connect \B \rok_l_q_rdok
+ connect \Y $1
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:180"
+ wire width 1 $3
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:180"
+ wire width 2 $4
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:180"
+ cell $not $5
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \Y_WIDTH 2
+ connect \A \rd__rel
+ connect \Y $4
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:180"
+ wire width 2 $6
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:180"
+ cell $or $7
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 2
+ parameter \Y_WIDTH 2
+ connect \A $4
+ connect \B \rd__go
+ connect \Y $6
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:180"
+ cell $reduce_and $8
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \Y_WIDTH 1
+ connect \A $6
+ connect \Y $3
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:180"
+ wire width 1 $9
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:180"
+ cell $and $10
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $1
+ connect \B $3
+ connect \Y $9
+ end
+ process $group_0
+ assign \all_rd 1'0
+ assign \all_rd $9
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:183"
+ wire width 1 \all_rd_dly
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:183"
+ wire width 1 \all_rd_dly$next
+ process $group_1
+ assign \all_rd_dly$next \all_rd_dly
+ assign \all_rd_dly$next \all_rd
+ sync init
+ update \all_rd_dly 1'0
+ sync posedge \clk
+ update \all_rd_dly \all_rd_dly$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:184"
+ wire width 1 \all_rd_pulse
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:186"
+ wire width 1 $11
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:186"
+ cell $not $12
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \all_rd_dly
+ connect \Y $11
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:186"
+ wire width 1 $13
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:186"
+ cell $and $14
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \all_rd
+ connect \B $11
+ connect \Y $13
+ end
+ process $group_2
+ assign \all_rd_pulse 1'0
+ assign \all_rd_pulse $13
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:189"
+ wire width 1 \alu_done
+ process $group_3
+ assign \alu_done 1'0
+ assign \alu_done \alu_logical0_n_valid_o
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:190"
+ wire width 1 \alu_done_dly
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:190"
+ wire width 1 \alu_done_dly$next
+ process $group_4
+ assign \alu_done_dly$next \alu_done_dly
+ assign \alu_done_dly$next \alu_done
+ sync init
+ update \alu_done_dly 1'0
+ sync posedge \clk
+ update \alu_done_dly \alu_done_dly$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:191"
+ wire width 1 \alu_pulse
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:195"
+ wire width 1 $15
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:195"
+ cell $not $16
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \alu_done_dly
+ connect \Y $15
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:195"
+ wire width 1 $17
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:195"
+ cell $and $18
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \alu_done
+ connect \B $15
+ connect \Y $17
+ end
+ process $group_5
+ assign \alu_pulse 1'0
+ assign \alu_pulse $17
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:192"
+ wire width 3 \alu_pulsem
+ process $group_6
+ assign \alu_pulsem 3'000
+ assign \alu_pulsem { \alu_pulse \alu_pulse \alu_pulse }
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:199"
+ wire width 3 \prev_wr_go
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:199"
+ wire width 3 \prev_wr_go$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:201"
+ wire width 3 $19
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:201"
+ cell $and $20
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A \wr__go
+ connect \B { \busy_o \busy_o \busy_o }
+ connect \Y $19
+ end
+ process $group_7
+ assign \prev_wr_go$next \prev_wr_go
+ assign \prev_wr_go$next $19
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \prev_wr_go$next 3'000
+ end
+ sync init
+ update \prev_wr_go 3'000
+ sync posedge \clk
+ update \prev_wr_go \prev_wr_go$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:100"
+ wire width 1 \done_o
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:209"
+ wire width 1 $21
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:209"
+ wire width 1 $22
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:209"
+ wire width 3 $23
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:93"
+ wire width 3 \wrmask
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:209"
+ cell $not $24
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A \wrmask
+ connect \Y $23
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:209"
+ wire width 3 $25
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:209"
+ cell $and $26
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A \wr__rel
+ connect \B $23
+ connect \Y $25
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:209"
+ cell $reduce_bool $27
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 1
+ connect \A $25
+ connect \Y $22
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:209"
+ cell $not $28
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $22
+ connect \Y $21
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:209"
+ wire width 1 $29
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:209"
+ cell $and $30
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \busy_o
+ connect \B $21
+ connect \Y $29
+ end
+ process $group_8
+ assign \done_o 1'0
+ assign \done_o $29
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:206"
+ wire width 1 \wr_any
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:210"
+ wire width 1 $31
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:210"
+ cell $reduce_bool $32
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 1
+ connect \A \wr__go
+ connect \Y $31
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:210"
+ wire width 1 $33
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:210"
+ cell $reduce_bool $34
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 1
+ connect \A \prev_wr_go
+ connect \Y $33
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:210"
+ wire width 1 $35
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:210"
+ cell $or $36
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $31
+ connect \B $33
+ connect \Y $35
+ end
+ process $group_9
+ assign \wr_any 1'0
+ assign \wr_any $35
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:207"
+ wire width 1 \req_done
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:211"
+ wire width 1 $37
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:211"
+ cell $not $38
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \alu_logical0_n_ready_i
+ connect \Y $37
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:211"
+ wire width 1 $39
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:211"
+ cell $and $40
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \wr_any
+ connect \B $37
+ connect \Y $39
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:212"
+ wire width 3 $41
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:212"
+ cell $and $42
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A \req_l_q_req
+ connect \B \wrmask
+ connect \Y $41
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:212"
+ wire width 1 $43
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:212"
+ cell $eq $44
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $41
+ connect \B 1'0
+ connect \Y $43
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:212"
+ wire width 1 $45
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:212"
+ cell $and $46
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $39
+ connect \B $43
+ connect \Y $45
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:217"
+ wire width 1 $47
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:217"
+ cell $eq $48
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \wrmask
+ connect \B 1'0
+ connect \Y $47
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:217"
+ wire width 1 $49
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:217"
+ cell $and $50
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $47
+ connect \B \alu_logical0_n_ready_i
+ connect \Y $49
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:217"
+ wire width 1 $51
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:217"
+ cell $and $52
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $49
+ connect \B \alu_logical0_n_valid_o
+ connect \Y $51
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:217"
+ wire width 1 $53
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:217"
+ cell $and $54
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $51
+ connect \B \busy_o
+ connect \Y $53
+ end
+ process $group_10
+ assign \req_done 1'0
+ assign \req_done $45
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:217"
+ switch { $53 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:217"
+ case 1'1
+ assign \req_done 1'1
+ end
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:221"
+ wire width 1 \reset
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:225"
+ wire width 1 $55
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:225"
+ cell $or $56
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \req_done
+ connect \B \go_die_i
+ connect \Y $55
+ end
+ process $group_11
+ assign \reset 1'0
+ assign \reset $55
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:222"
+ wire width 1 \rst_r
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:226"
+ wire width 1 $57
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:226"
+ cell $or $58
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \issue_i
+ connect \B \go_die_i
+ connect \Y $57
+ end
+ process $group_12
+ assign \rst_r 1'0
+ assign \rst_r $57
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:223"
+ wire width 3 \reset_w
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:227"
+ wire width 3 $59
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:227"
+ cell $or $60
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A \wr__go
+ connect \B { \go_die_i \go_die_i \go_die_i }
+ connect \Y $59
+ end
+ process $group_13
+ assign \reset_w 3'000
+ assign \reset_w $59
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:224"
+ wire width 2 \reset_r
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:228"
+ wire width 2 $61
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:228"
+ cell $or $62
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 2
+ parameter \Y_WIDTH 2
+ connect \A \rd__go
+ connect \B { \go_die_i \go_die_i }
+ connect \Y $61
+ end
+ process $group_14
+ assign \reset_r 2'00
+ assign \reset_r $61
+ sync init
+ end
+ process $group_15
+ assign \rok_l_s_rdok 1'0
+ assign \rok_l_s_rdok \issue_i
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:232"
+ wire width 1 $63
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:232"
+ cell $and $64
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \alu_logical0_n_valid_o
+ connect \B \busy_o
+ connect \Y $63
+ end
+ process $group_16
+ assign \rok_l_r_rdok$next \rok_l_r_rdok
+ assign \rok_l_r_rdok$next $63
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \rok_l_r_rdok$next 1'1
+ end
+ sync init
+ update \rok_l_r_rdok 1'1
+ sync posedge \clk
+ update \rok_l_r_rdok \rok_l_r_rdok$next
+ end
+ process $group_17
+ assign \rst_l_s_rst 1'0
+ assign \rst_l_s_rst \all_rd
+ sync init
+ end
+ process $group_18
+ assign \rst_l_r_rst 1'1
+ assign \rst_l_r_rst \rst_r
+ sync init
+ end
+ process $group_19
+ assign \opc_l_s_opc$next \opc_l_s_opc
+ assign \opc_l_s_opc$next \issue_i
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \opc_l_s_opc$next 1'0
+ end
+ sync init
+ update \opc_l_s_opc 1'0
+ sync posedge \clk
+ update \opc_l_s_opc \opc_l_s_opc$next
+ end
+ process $group_20
+ assign \opc_l_r_opc$next \opc_l_r_opc
+ assign \opc_l_r_opc$next \req_done
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \opc_l_r_opc$next 1'1
+ end
+ sync init
+ update \opc_l_r_opc 1'1
+ sync posedge \clk
+ update \opc_l_r_opc \opc_l_r_opc$next
+ end
+ process $group_21
+ assign \src_l_s_src$next \src_l_s_src
+ assign \src_l_s_src$next { \issue_i \issue_i }
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \src_l_s_src$next 2'00
+ end
+ sync init
+ update \src_l_s_src 2'00
+ sync posedge \clk
+ update \src_l_s_src \src_l_s_src$next
+ end
+ process $group_22
+ assign \src_l_r_src$next \src_l_r_src
+ assign \src_l_r_src$next \reset_r
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \src_l_r_src$next 2'11
+ end
+ sync init
+ update \src_l_r_src 2'11
+ sync posedge \clk
+ update \src_l_r_src \src_l_r_src$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:247"
+ wire width 3 $65
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:247"
+ cell $and $66
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A \alu_pulsem
+ connect \B \wrmask
+ connect \Y $65
+ end
+ process $group_23
+ assign \req_l_s_req 3'000
+ assign \req_l_s_req $65
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:248"
+ wire width 3 $67
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:248"
+ cell $or $68
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A \reset_w
+ connect \B \prev_wr_go
+ connect \Y $67
+ end
+ process $group_24
+ assign \req_l_r_req 3'111
+ assign \req_l_r_req $67
+ sync init
+ end
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 7 \oper_r__insn_type
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 \oper_r__fn_unit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 64 \oper_r__imm_data__imm
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \oper_r__imm_data__imm_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \oper_r__lk
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \oper_r__rc__rc
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \oper_r__rc__rc_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \oper_r__oe__oe
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \oper_r__oe__oe_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \oper_r__invert_a
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \oper_r__zero_a
+ attribute \enum_base_type "CryIn"
+ attribute \enum_value_00 "ZERO"
+ attribute \enum_value_01 "ONE"
+ attribute \enum_value_10 "CA"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 2 \oper_r__input_carry
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \oper_r__invert_out
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 3 \oper_r__write_cr__data
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \oper_r__write_cr__ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \oper_r__output_carry
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \oper_r__is_32bit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 \oper_r__is_signed
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 4 \oper_r__data_len
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 32 \oper_r__insn
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 7 \oper_l__insn_type
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 7 \oper_l__insn_type$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 11 \oper_l__fn_unit
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 11 \oper_l__fn_unit$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 64 \oper_l__imm_data__imm
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 64 \oper_l__imm_data__imm$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__imm_data__imm_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__imm_data__imm_ok$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__lk
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__lk$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__rc__rc
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__rc__rc$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__rc__rc_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__rc__rc_ok$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__oe__oe
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__oe__oe$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__oe__oe_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__oe__oe_ok$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__invert_a
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__invert_a$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__zero_a
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__zero_a$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 2 \oper_l__input_carry
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 2 \oper_l__input_carry$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__invert_out
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__invert_out$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 3 \oper_l__write_cr__data
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 3 \oper_l__write_cr__data$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__write_cr__ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__write_cr__ok$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__output_carry
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__output_carry$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__is_32bit
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__is_32bit$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__is_signed
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \oper_l__is_signed$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 4 \oper_l__data_len
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 4 \oper_l__data_len$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 32 \oper_l__insn
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 32 \oper_l__insn$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ wire width 136 $69
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ cell $mux $70
+ parameter \WIDTH 136
+ connect \A { \oper_l__insn \oper_l__data_len \oper_l__is_signed \oper_l__is_32bit \oper_l__output_carry { \oper_l__write_cr__ok \oper_l__write_cr__data } \oper_l__invert_out \oper_l__input_carry \oper_l__zero_a \oper_l__invert_a { \oper_l__oe__oe_ok \oper_l__oe__oe } { \oper_l__rc__rc_ok \oper_l__rc__rc } \oper_l__lk { \oper_l__imm_data__imm_ok \oper_l__imm_data__imm } \oper_l__fn_unit \oper_l__insn_type }
+ connect \B { \oper_i__insn \oper_i__data_len \oper_i__is_signed \oper_i__is_32bit \oper_i__output_carry { \oper_i__write_cr__ok \oper_i__write_cr__data } \oper_i__invert_out \oper_i__input_carry \oper_i__zero_a \oper_i__invert_a { \oper_i__oe__oe_ok \oper_i__oe__oe } { \oper_i__rc__rc_ok \oper_i__rc__rc } \oper_i__lk { \oper_i__imm_data__imm_ok \oper_i__imm_data__imm } \oper_i__fn_unit \oper_i__insn_type }
+ connect \S \issue_i
+ connect \Y $69
+ end
+ process $group_25
+ assign \oper_r__insn_type 7'0000000
+ assign \oper_r__fn_unit 11'00000000000
+ assign \oper_r__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \oper_r__imm_data__imm_ok 1'0
+ assign \oper_r__lk 1'0
+ assign \oper_r__rc__rc 1'0
+ assign \oper_r__rc__rc_ok 1'0
+ assign \oper_r__oe__oe 1'0
+ assign \oper_r__oe__oe_ok 1'0
+ assign \oper_r__invert_a 1'0
+ assign \oper_r__zero_a 1'0
+ assign \oper_r__input_carry 2'00
+ assign \oper_r__invert_out 1'0
+ assign \oper_r__write_cr__data 3'000
+ assign \oper_r__write_cr__ok 1'0
+ assign \oper_r__output_carry 1'0
+ assign \oper_r__is_32bit 1'0
+ assign \oper_r__is_signed 1'0
+ assign \oper_r__data_len 4'0000
+ assign \oper_r__insn 32'00000000000000000000000000000000
+ assign { \oper_r__insn \oper_r__data_len \oper_r__is_signed \oper_r__is_32bit \oper_r__output_carry { \oper_r__write_cr__ok \oper_r__write_cr__data } \oper_r__invert_out \oper_r__input_carry \oper_r__zero_a \oper_r__invert_a { \oper_r__oe__oe_ok \oper_r__oe__oe } { \oper_r__rc__rc_ok \oper_r__rc__rc } \oper_r__lk { \oper_r__imm_data__imm_ok \oper_r__imm_data__imm } \oper_r__fn_unit \oper_r__insn_type } $69
+ sync init
+ end
+ process $group_45
+ assign \oper_l__insn_type$next \oper_l__insn_type
+ assign \oper_l__fn_unit$next \oper_l__fn_unit
+ assign \oper_l__imm_data__imm$next \oper_l__imm_data__imm
+ assign \oper_l__imm_data__imm_ok$next \oper_l__imm_data__imm_ok
+ assign \oper_l__lk$next \oper_l__lk
+ assign \oper_l__rc__rc$next \oper_l__rc__rc
+ assign \oper_l__rc__rc_ok$next \oper_l__rc__rc_ok
+ assign \oper_l__oe__oe$next \oper_l__oe__oe
+ assign \oper_l__oe__oe_ok$next \oper_l__oe__oe_ok
+ assign \oper_l__invert_a$next \oper_l__invert_a
+ assign \oper_l__zero_a$next \oper_l__zero_a
+ assign \oper_l__input_carry$next \oper_l__input_carry
+ assign \oper_l__invert_out$next \oper_l__invert_out
+ assign \oper_l__write_cr__data$next \oper_l__write_cr__data
+ assign \oper_l__write_cr__ok$next \oper_l__write_cr__ok
+ assign \oper_l__output_carry$next \oper_l__output_carry
+ assign \oper_l__is_32bit$next \oper_l__is_32bit
+ assign \oper_l__is_signed$next \oper_l__is_signed
+ assign \oper_l__data_len$next \oper_l__data_len
+ assign \oper_l__insn$next \oper_l__insn
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ switch { \issue_i }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ case 1'1
+ assign { \oper_l__insn$next \oper_l__data_len$next \oper_l__is_signed$next \oper_l__is_32bit$next \oper_l__output_carry$next { \oper_l__write_cr__ok$next \oper_l__write_cr__data$next } \oper_l__invert_out$next \oper_l__input_carry$next \oper_l__zero_a$next \oper_l__invert_a$next { \oper_l__oe__oe_ok$next \oper_l__oe__oe$next } { \oper_l__rc__rc_ok$next \oper_l__rc__rc$next } \oper_l__lk$next { \oper_l__imm_data__imm_ok$next \oper_l__imm_data__imm$next } \oper_l__fn_unit$next \oper_l__insn_type$next } { \oper_i__insn \oper_i__data_len \oper_i__is_signed \oper_i__is_32bit \oper_i__output_carry { \oper_i__write_cr__ok \oper_i__write_cr__data } \oper_i__invert_out \oper_i__input_carry \oper_i__zero_a \oper_i__invert_a { \oper_i__oe__oe_ok \oper_i__oe__oe } { \oper_i__rc__rc_ok \oper_i__rc__rc } \oper_i__lk { \oper_i__imm_data__imm_ok \oper_i__imm_data__imm } \oper_i__fn_unit \oper_i__insn_type }
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \oper_l__imm_data__imm$next 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \oper_l__imm_data__imm_ok$next 1'0
+ assign \oper_l__rc__rc$next 1'0
+ assign \oper_l__rc__rc_ok$next 1'0
+ assign \oper_l__oe__oe$next 1'0
+ assign \oper_l__oe__oe_ok$next 1'0
+ assign \oper_l__write_cr__data$next 3'000
+ assign \oper_l__write_cr__ok$next 1'0
+ assign \oper_l__insn$next 32'00000000000000000000000000000000
+ end
+ sync init
+ update \oper_l__insn_type 7'0000000
+ update \oper_l__fn_unit 11'00000000000
+ update \oper_l__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \oper_l__imm_data__imm_ok 1'0
+ update \oper_l__lk 1'0
+ update \oper_l__rc__rc 1'0
+ update \oper_l__rc__rc_ok 1'0
+ update \oper_l__oe__oe 1'0
+ update \oper_l__oe__oe_ok 1'0
+ update \oper_l__invert_a 1'0
+ update \oper_l__zero_a 1'0
+ update \oper_l__input_carry 2'00
+ update \oper_l__invert_out 1'0
+ update \oper_l__write_cr__data 3'000
+ update \oper_l__write_cr__ok 1'0
+ update \oper_l__output_carry 1'0
+ update \oper_l__is_32bit 1'0
+ update \oper_l__is_signed 1'0
+ update \oper_l__data_len 4'0000
+ update \oper_l__insn 32'00000000000000000000000000000000
+ sync posedge \clk
+ update \oper_l__insn_type \oper_l__insn_type$next
+ update \oper_l__fn_unit \oper_l__fn_unit$next
+ update \oper_l__imm_data__imm \oper_l__imm_data__imm$next
+ update \oper_l__imm_data__imm_ok \oper_l__imm_data__imm_ok$next
+ update \oper_l__lk \oper_l__lk$next
+ update \oper_l__rc__rc \oper_l__rc__rc$next
+ update \oper_l__rc__rc_ok \oper_l__rc__rc_ok$next
+ update \oper_l__oe__oe \oper_l__oe__oe$next
+ update \oper_l__oe__oe_ok \oper_l__oe__oe_ok$next
+ update \oper_l__invert_a \oper_l__invert_a$next
+ update \oper_l__zero_a \oper_l__zero_a$next
+ update \oper_l__input_carry \oper_l__input_carry$next
+ update \oper_l__invert_out \oper_l__invert_out$next
+ update \oper_l__write_cr__data \oper_l__write_cr__data$next
+ update \oper_l__write_cr__ok \oper_l__write_cr__ok$next
+ update \oper_l__output_carry \oper_l__output_carry$next
+ update \oper_l__is_32bit \oper_l__is_32bit$next
+ update \oper_l__is_signed \oper_l__is_signed$next
+ update \oper_l__data_len \oper_l__data_len$next
+ update \oper_l__insn \oper_l__insn$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
+ wire width 64 \data_r0__o
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
+ wire width 1 \data_r0__o_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 64 \data_r0_l__o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 64 \data_r0_l__o$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \data_r0_l__o_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \data_r0_l__o_ok$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ wire width 65 $71
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
+ wire width 1 $72
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
+ cell $reduce_bool $73
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 1
+ connect \A \alu_pulsem
+ connect \Y $72
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ cell $mux $74
+ parameter \WIDTH 65
+ connect \A { \data_r0_l__o_ok \data_r0_l__o }
+ connect \B { \o_ok \o }
+ connect \S $72
+ connect \Y $71
+ end
+ process $group_65
+ assign \data_r0__o 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \data_r0__o_ok 1'0
+ assign { \data_r0__o_ok \data_r0__o } $71
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
+ wire width 1 $75
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
+ cell $reduce_bool $76
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 1
+ connect \A \alu_pulsem
+ connect \Y $75
+ end
+ process $group_67
+ assign \data_r0_l__o$next \data_r0_l__o
+ assign \data_r0_l__o_ok$next \data_r0_l__o_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ switch { $75 }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ case 1'1
+ assign { \data_r0_l__o_ok$next \data_r0_l__o$next } { \o_ok \o }
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \data_r0_l__o_ok$next 1'0
+ end
+ sync init
+ update \data_r0_l__o 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \data_r0_l__o_ok 1'0
+ sync posedge \clk
+ update \data_r0_l__o \data_r0_l__o$next
+ update \data_r0_l__o_ok \data_r0_l__o_ok$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
+ wire width 4 \data_r1__cr_a
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
+ wire width 1 \data_r1__cr_a_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 4 \data_r1_l__cr_a
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 4 \data_r1_l__cr_a$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \data_r1_l__cr_a_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \data_r1_l__cr_a_ok$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ wire width 5 $77
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
+ wire width 1 $78
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
+ cell $reduce_bool $79
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 1
+ connect \A \alu_pulsem
+ connect \Y $78
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ cell $mux $80
+ parameter \WIDTH 5
+ connect \A { \data_r1_l__cr_a_ok \data_r1_l__cr_a }
+ connect \B { \cr_a_ok \cr_a }
+ connect \S $78
+ connect \Y $77
+ end
+ process $group_69
+ assign \data_r1__cr_a 4'0000
+ assign \data_r1__cr_a_ok 1'0
+ assign { \data_r1__cr_a_ok \data_r1__cr_a } $77
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
+ wire width 1 $81
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
+ cell $reduce_bool $82
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 1
+ connect \A \alu_pulsem
+ connect \Y $81
+ end
+ process $group_71
+ assign \data_r1_l__cr_a$next \data_r1_l__cr_a
+ assign \data_r1_l__cr_a_ok$next \data_r1_l__cr_a_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ switch { $81 }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ case 1'1
+ assign { \data_r1_l__cr_a_ok$next \data_r1_l__cr_a$next } { \cr_a_ok \cr_a }
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \data_r1_l__cr_a_ok$next 1'0
+ end
+ sync init
+ update \data_r1_l__cr_a 4'0000
+ update \data_r1_l__cr_a_ok 1'0
+ sync posedge \clk
+ update \data_r1_l__cr_a \data_r1_l__cr_a$next
+ update \data_r1_l__cr_a_ok \data_r1_l__cr_a_ok$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
+ wire width 2 \data_r2__xer_ca
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
+ wire width 1 \data_r2__xer_ca_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 2 \data_r2_l__xer_ca
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 2 \data_r2_l__xer_ca$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \data_r2_l__xer_ca_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \data_r2_l__xer_ca_ok$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ wire width 3 $83
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
+ wire width 1 $84
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
+ cell $reduce_bool $85
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 1
+ connect \A \alu_pulsem
+ connect \Y $84
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ cell $mux $86
+ parameter \WIDTH 3
+ connect \A { \data_r2_l__xer_ca_ok \data_r2_l__xer_ca }
+ connect \B { \xer_ca_ok \xer_ca }
+ connect \S $84
+ connect \Y $83
+ end
+ process $group_73
+ assign \data_r2__xer_ca 2'00
+ assign \data_r2__xer_ca_ok 1'0
+ assign { \data_r2__xer_ca_ok \data_r2__xer_ca } $83
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
+ wire width 1 $87
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
+ cell $reduce_bool $88
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 1
+ connect \A \alu_pulsem
+ connect \Y $87
+ end
+ process $group_75
+ assign \data_r2_l__xer_ca$next \data_r2_l__xer_ca
+ assign \data_r2_l__xer_ca_ok$next \data_r2_l__xer_ca_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ switch { $87 }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ case 1'1
+ assign { \data_r2_l__xer_ca_ok$next \data_r2_l__xer_ca$next } { \xer_ca_ok \xer_ca }
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \data_r2_l__xer_ca_ok$next 1'0
+ end
+ sync init
+ update \data_r2_l__xer_ca 2'00
+ update \data_r2_l__xer_ca_ok 1'0
+ sync posedge \clk
+ update \data_r2_l__xer_ca \data_r2_l__xer_ca$next
+ update \data_r2_l__xer_ca_ok \data_r2_l__xer_ca_ok$next
+ end
+ process $group_77
+ assign \wrmask 3'000
+ assign \wrmask { \data_r2__xer_ca_ok \data_r1__cr_a_ok \data_r0__o_ok }
+ sync init
+ end
+ process $group_78
+ assign \alu_logical0_op__insn_type 7'0000000
+ assign \alu_logical0_op__fn_unit 11'00000000000
+ assign \alu_logical0_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \alu_logical0_op__imm_data__imm_ok 1'0
+ assign \alu_logical0_op__lk 1'0
+ assign \alu_logical0_op__rc__rc 1'0
+ assign \alu_logical0_op__rc__rc_ok 1'0
+ assign \alu_logical0_op__oe__oe 1'0
+ assign \alu_logical0_op__oe__oe_ok 1'0
+ assign \alu_logical0_op__invert_a 1'0
+ assign \alu_logical0_op__zero_a 1'0
+ assign \alu_logical0_op__input_carry 2'00
+ assign \alu_logical0_op__invert_out 1'0
+ assign \alu_logical0_op__write_cr__data 3'000
+ assign \alu_logical0_op__write_cr__ok 1'0
+ assign \alu_logical0_op__output_carry 1'0
+ assign \alu_logical0_op__is_32bit 1'0
+ assign \alu_logical0_op__is_signed 1'0
+ assign \alu_logical0_op__data_len 4'0000
+ assign \alu_logical0_op__insn 32'00000000000000000000000000000000
+ assign { \alu_logical0_op__insn \alu_logical0_op__data_len \alu_logical0_op__is_signed \alu_logical0_op__is_32bit \alu_logical0_op__output_carry { \alu_logical0_op__write_cr__ok \alu_logical0_op__write_cr__data } \alu_logical0_op__invert_out \alu_logical0_op__input_carry \alu_logical0_op__zero_a \alu_logical0_op__invert_a { \alu_logical0_op__oe__oe_ok \alu_logical0_op__oe__oe } { \alu_logical0_op__rc__rc_ok \alu_logical0_op__rc__rc } \alu_logical0_op__lk { \alu_logical0_op__imm_data__imm_ok \alu_logical0_op__imm_data__imm } \alu_logical0_op__fn_unit \alu_logical0_op__insn_type } { \oper_r__insn \oper_r__data_len \oper_r__is_signed \oper_r__is_32bit \oper_r__output_carry { \oper_r__write_cr__ok \oper_r__write_cr__data } \oper_r__invert_out \oper_r__input_carry \oper_r__zero_a \oper_r__invert_a { \oper_r__oe__oe_ok \oper_r__oe__oe } { \oper_r__rc__rc_ok \oper_r__rc__rc } \oper_r__lk { \oper_r__imm_data__imm_ok \oper_r__imm_data__imm } \oper_r__fn_unit \oper_r__insn_type }
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:158"
+ wire width 1 \src_sel
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:159"
+ wire width 1 $89
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:159"
+ cell $mux $90
+ parameter \WIDTH 1
+ connect \A \src_l_q_src [0]
+ connect \B \opc_l_q_opc
+ connect \S \oper_r__zero_a
+ connect \Y $89
+ end
+ process $group_98
+ assign \src_sel 1'0
+ assign \src_sel $89
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:157"
+ wire width 64 \src_or_imm
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:160"
+ wire width 64 $91
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:160"
+ cell $mux $92
+ parameter \WIDTH 64
+ connect \A \src1_i
+ connect \B 64'0000000000000000000000000000000000000000000000000000000000000000
+ connect \S \oper_r__zero_a
+ connect \Y $91
+ end
+ process $group_99
+ assign \src_or_imm 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \src_or_imm $91
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:158"
+ wire width 1 \src_sel$93
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:159"
+ wire width 1 $94
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:159"
+ cell $mux $95
+ parameter \WIDTH 1
+ connect \A \src_l_q_src [1]
+ connect \B \opc_l_q_opc
+ connect \S \oper_r__imm_data__imm_ok
+ connect \Y $94
+ end
+ process $group_100
+ assign \src_sel$93 1'0
+ assign \src_sel$93 $94
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:157"
+ wire width 64 \src_or_imm$96
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:160"
+ wire width 64 $97
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:160"
+ cell $mux $98
+ parameter \WIDTH 64
+ connect \A \src2_i
+ connect \B \oper_r__imm_data__imm
+ connect \S \oper_r__imm_data__imm_ok
+ connect \Y $97
+ end
+ process $group_101
+ assign \src_or_imm$96 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \src_or_imm$96 $97
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:39"
+ wire width 64 \src_r0
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:39"
+ wire width 64 \src_r0$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ wire width 64 $99
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ cell $mux $100
+ parameter \WIDTH 64
+ connect \A \src_r0
+ connect \B \src_or_imm
+ connect \S \src_sel
+ connect \Y $99
+ end
+ process $group_102
+ assign \alu_logical0_ra 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \alu_logical0_ra $99
+ sync init
+ end
+ process $group_103
+ assign \src_r0$next \src_r0
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ switch { \src_sel }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ case 1'1
+ assign \src_r0$next \src_or_imm
+ end
+ sync init
+ update \src_r0 64'0000000000000000000000000000000000000000000000000000000000000000
+ sync posedge \clk
+ update \src_r0 \src_r0$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:39"
+ wire width 64 \src_r1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:39"
+ wire width 64 \src_r1$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ wire width 64 $101
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ cell $mux $102
+ parameter \WIDTH 64
+ connect \A \src_r1
+ connect \B \src_or_imm$96
+ connect \S \src_sel$93
+ connect \Y $101
+ end
+ process $group_104
+ assign \alu_logical0_rb 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \alu_logical0_rb $101
+ sync init
+ end
+ process $group_105
+ assign \src_r1$next \src_r1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ switch { \src_sel$93 }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ case 1'1
+ assign \src_r1$next \src_or_imm$96
+ end
+ sync init
+ update \src_r1 64'0000000000000000000000000000000000000000000000000000000000000000
+ sync posedge \clk
+ update \src_r1 \src_r1$next
+ end
+ process $group_106
+ assign \alu_logical0_p_valid_i 1'0
+ assign \alu_logical0_p_valid_i \alui_l_q_alui
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:321"
+ wire width 1 $103
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:321"
+ cell $and $104
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \alu_logical0_p_ready_o
+ connect \B \alui_l_q_alui
+ connect \Y $103
+ end
+ process $group_107
+ assign \alui_l_r_alui$next \alui_l_r_alui
+ assign \alui_l_r_alui$next $103
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \alui_l_r_alui$next 1'1
+ end
+ sync init
+ update \alui_l_r_alui 1'1
+ sync posedge \clk
+ update \alui_l_r_alui \alui_l_r_alui$next
+ end
+ process $group_108
+ assign \alui_l_s_alui 1'0
+ assign \alui_l_s_alui \all_rd_pulse
+ sync init
+ end
+ process $group_109
+ assign \alu_logical0_n_ready_i 1'0
+ assign \alu_logical0_n_ready_i \alu_l_q_alu
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:328"
+ wire width 1 $105
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:328"
+ cell $and $106
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \alu_logical0_n_valid_o
+ connect \B \alu_l_q_alu
+ connect \Y $105
+ end
+ process $group_110
+ assign \alu_l_r_alu$next \alu_l_r_alu
+ assign \alu_l_r_alu$next $105
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \alu_l_r_alu$next 1'1
+ end
+ sync init
+ update \alu_l_r_alu 1'1
+ sync posedge \clk
+ update \alu_l_r_alu \alu_l_r_alu$next
+ end
+ process $group_111
+ assign \alu_l_s_alu 1'0
+ assign \alu_l_s_alu \all_rd_pulse
+ sync init
+ end
+ process $group_112
+ assign \busy_o 1'0
+ assign \busy_o \opc_l_q_opc
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:341"
+ wire width 2 $107
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:341"
+ cell $and $108
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 2
+ parameter \Y_WIDTH 2
+ connect \A \src_l_q_src
+ connect \B { \busy_o \busy_o }
+ connect \Y $107
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:164"
+ wire width 1 $109
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:164"
+ cell $not $110
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \oper_r__zero_a
+ connect \Y $109
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:164"
+ wire width 1 $111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:164"
+ cell $not $112
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \oper_r__imm_data__imm_ok
+ connect \Y $111
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:341"
+ wire width 2 $113
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:341"
+ cell $and $114
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 2
+ parameter \Y_WIDTH 2
+ connect \A $107
+ connect \B { $111 $109 }
+ connect \Y $113
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:341"
+ wire width 2 $115
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:341"
+ cell $not $116
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \Y_WIDTH 2
+ connect \A \rdmaskn
+ connect \Y $115
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:341"
+ wire width 2 $117
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:341"
+ cell $and $118
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 2
+ parameter \Y_WIDTH 2
+ connect \A $113
+ connect \B $115
+ connect \Y $117
+ end
+ process $group_113
+ assign \rd__rel 2'00
+ assign \rd__rel $117
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
+ wire width 1 $119
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
+ cell $and $120
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \busy_o
+ connect \B \shadown_i
+ connect \Y $119
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
+ wire width 1 $121
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
+ cell $and $122
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \busy_o
+ connect \B \shadown_i
+ connect \Y $121
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
+ wire width 1 $123
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
+ cell $and $124
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \busy_o
+ connect \B \shadown_i
+ connect \Y $123
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:345"
+ wire width 3 $125
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:345"
+ cell $and $126
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A \req_l_q_req
+ connect \B { $119 $121 $123 }
+ connect \Y $125
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:345"
+ wire width 3 $127
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:345"
+ cell $and $128
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A $125
+ connect \B \wrmask
+ connect \Y $127
+ end
+ process $group_114
+ assign \wr__rel 3'000
+ assign \wr__rel $127
+ sync init
+ end
+ process $group_115
+ assign \dest1_o 64'0000000000000000000000000000000000000000000000000000000000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
+ switch { \wr__go [0] }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
+ case 1'1
+ assign \dest1_o { \data_r0__o_ok \data_r0__o } [63:0]
+ end
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
+ wire width 4 \dest2_o
+ process $group_116
+ assign \dest2_o 4'0000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
+ switch { \wr__go [1] }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
+ case 1'1
+ assign \dest2_o { \data_r1__cr_a_ok \data_r1__cr_a } [3:0]
+ end
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
+ wire width 2 \dest3_o
+ process $group_117
+ assign \dest3_o 2'00
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
+ switch { \wr__go [2] }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
+ case 1'1
+ assign \dest3_o { \data_r2__xer_ca_ok \data_r2__xer_ca } [1:0]
+ end
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.fus.spr0.alu_spr0.p"
+module \p$58
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
+ wire width 1 input 0 \p_valid_i
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
+ wire width 1 input 1 \p_ready_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:156"
+ wire width 1 \trigger
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:203"
+ wire width 1 $1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:203"
+ cell $and $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \p_valid_i
+ connect \B \p_ready_o
+ connect \Y $1
+ end
+ process $group_0
+ assign \trigger 1'0
+ assign \trigger $1
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.fus.spr0.alu_spr0.n"
+module \n$59
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
+ wire width 1 input 0 \n_valid_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
+ wire width 1 input 1 \n_ready_i
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:249"
+ wire width 1 \trigger
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:295"
+ wire width 1 $1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:295"
+ cell $and $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \n_ready_i
+ connect \B \n_valid_o
+ connect \Y $1
+ end
+ process $group_0
+ assign \trigger 1'0
+ assign \trigger $1
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.fus.spr0.alu_spr0.pipe.p"
+module \p$61
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
+ wire width 1 input 0 \p_valid_i
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
+ wire width 1 input 1 \p_ready_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:156"
+ wire width 1 \trigger
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:203"
+ wire width 1 $1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:203"
+ cell $and $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \p_valid_i
+ connect \B \p_ready_o
+ connect \Y $1
+ end
+ process $group_0
+ assign \trigger 1'0
+ assign \trigger $1
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.fus.spr0.alu_spr0.pipe.n"
+module \n$62
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
+ wire width 1 input 0 \n_valid_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
+ wire width 1 input 1 \n_ready_i
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:249"
+ wire width 1 \trigger
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:295"
+ wire width 1 $1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:295"
+ cell $and $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \n_ready_i
+ connect \B \n_valid_o
+ connect \Y $1
+ end
+ process $group_0
+ assign \trigger 1'0
+ assign \trigger $1
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.fus.spr0.alu_spr0.pipe.spr_main"
+module \spr_main
+ attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
+ wire width 2 input 0 \muxid
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 7 input 1 \op__insn_type
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 input 2 \op__fn_unit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 input 3 \op__insn
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 input 4 \op__is_32bit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 input 5 \ra
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 input 6 \fast1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 1 input 7 \xer_so
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 2 input 8 \xer_ov
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 2 input 9 \xer_ca
+ attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
+ wire width 2 output 10 \muxid$1
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 7 output 11 \op__insn_type$2
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 output 12 \op__fn_unit$3
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 output 13 \op__insn$4
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 output 14 \op__is_32bit$5
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 output 15 \o
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 16 \o_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 output 17 \fast1$6
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 18 \fast1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 19 \xer_so$7
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 20 \xer_so_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 output 21 \xer_ov$8
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 22 \xer_ov_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 output 23 \xer_ca$9
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 24 \xer_ca_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:42"
+ wire width 10 \spr
+ process $group_0
+ assign \spr 10'0000000000
+ assign \spr { { \op__insn [15] \op__insn [14] \op__insn [13] \op__insn [12] \op__insn [11] } { \op__insn [20] \op__insn [19] \op__insn [18] \op__insn [17] \op__insn [16] } }
+ sync init
+ end
+ process $group_1
+ assign \fast1$6 64'0000000000000000000000000000000000000000000000000000000000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:46"
+ switch \op__insn_type
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:48"
+ attribute \nmigen.decoding "OP_MTSPR/49"
+ case 7'0110001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:49"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:51"
+ case 10'0000001001, 10'0000001000, 10'1100101111, 10'0000011010, 10'0000011011
+ assign \fast1$6 \ra
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:55"
+ case 10'0000000001
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:70"
+ attribute \nmigen.decoding "OP_MFSPR/46"
+ case 7'0101110
+ end
+ sync init
+ end
+ process $group_2
+ assign \fast1_ok 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:46"
+ switch \op__insn_type
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:48"
+ attribute \nmigen.decoding "OP_MTSPR/49"
+ case 7'0110001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:49"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:51"
+ case 10'0000001001, 10'0000001000, 10'1100101111, 10'0000011010, 10'0000011011
+ assign \fast1_ok 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:55"
+ case 10'0000000001
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:70"
+ attribute \nmigen.decoding "OP_MFSPR/46"
+ case 7'0101110
+ end
+ sync init
+ end
+ process $group_3
+ assign \xer_so$7 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:46"
+ switch \op__insn_type
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:48"
+ attribute \nmigen.decoding "OP_MTSPR/49"
+ case 7'0110001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:49"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:51"
+ case 10'0000001001, 10'0000001000, 10'1100101111, 10'0000011010, 10'0000011011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:55"
+ case 10'0000000001
+ assign \xer_so$7 \ra [31]
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:70"
+ attribute \nmigen.decoding "OP_MFSPR/46"
+ case 7'0101110
+ end
+ sync init
+ end
+ process $group_4
+ assign \xer_so_ok 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:46"
+ switch \op__insn_type
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:48"
+ attribute \nmigen.decoding "OP_MTSPR/49"
+ case 7'0110001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:49"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:51"
+ case 10'0000001001, 10'0000001000, 10'1100101111, 10'0000011010, 10'0000011011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:55"
+ case 10'0000000001
+ assign \xer_so_ok 1'1
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:70"
+ attribute \nmigen.decoding "OP_MFSPR/46"
+ case 7'0101110
+ end
+ sync init
+ end
+ process $group_5
+ assign \xer_ov$8 2'00
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:46"
+ switch \op__insn_type
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:48"
+ attribute \nmigen.decoding "OP_MTSPR/49"
+ case 7'0110001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:49"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:51"
+ case 10'0000001001, 10'0000001000, 10'1100101111, 10'0000011010, 10'0000011011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:55"
+ case 10'0000000001
+ assign \xer_ov$8 [0] \ra [30]
+ assign \xer_ov$8 [1] \ra [19]
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:70"
+ attribute \nmigen.decoding "OP_MFSPR/46"
+ case 7'0101110
+ end
+ sync init
+ end
+ process $group_6
+ assign \xer_ov_ok 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:46"
+ switch \op__insn_type
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:48"
+ attribute \nmigen.decoding "OP_MTSPR/49"
+ case 7'0110001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:49"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:51"
+ case 10'0000001001, 10'0000001000, 10'1100101111, 10'0000011010, 10'0000011011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:55"
+ case 10'0000000001
+ assign \xer_ov_ok 1'1
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:70"
+ attribute \nmigen.decoding "OP_MFSPR/46"
+ case 7'0101110
+ end
+ sync init
+ end
+ process $group_7
+ assign \xer_ca$9 2'00
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:46"
+ switch \op__insn_type
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:48"
+ attribute \nmigen.decoding "OP_MTSPR/49"
+ case 7'0110001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:49"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:51"
+ case 10'0000001001, 10'0000001000, 10'1100101111, 10'0000011010, 10'0000011011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:55"
+ case 10'0000000001
+ assign \xer_ca$9 [0] \ra [29]
+ assign \xer_ca$9 [1] \ra [18]
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:70"
+ attribute \nmigen.decoding "OP_MFSPR/46"
+ case 7'0101110
+ end
+ sync init
+ end
+ process $group_8
+ assign \xer_ca_ok 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:46"
+ switch \op__insn_type
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:48"
+ attribute \nmigen.decoding "OP_MTSPR/49"
+ case 7'0110001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:49"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:51"
+ case 10'0000001001, 10'0000001000, 10'1100101111, 10'0000011010, 10'0000011011
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:55"
+ case 10'0000000001
+ assign \xer_ca_ok 1'1
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:70"
+ attribute \nmigen.decoding "OP_MFSPR/46"
+ case 7'0101110
+ end
+ sync init
+ end
+ process $group_10
+ assign \o_ok 1'0
+ assign \o 64'0000000000000000000000000000000000000000000000000000000000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:46"
+ switch \op__insn_type
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:48"
+ attribute \nmigen.decoding "OP_MTSPR/49"
+ case 7'0110001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:70"
+ attribute \nmigen.decoding "OP_MFSPR/46"
+ case 7'0101110
+ assign \o_ok 1'1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:72"
+ switch \spr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:74"
+ case 10'0000001001, 10'0000001000, 10'1100101111, 10'0000011010, 10'0000011011
+ assign \o \fast1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/main_stage.py:77"
+ case 10'0000000001
+ assign { \o_ok \o } [31] \xer_so
+ assign { \o_ok \o } [30] \xer_ov [0]
+ assign { \o_ok \o } [19] \xer_ov [1]
+ assign { \o_ok \o } [29] \xer_ca [0]
+ assign { \o_ok \o } [18] \xer_ca [1]
+ end
+ end
+ sync init
+ end
+ process $group_11
+ assign \muxid$1 2'00
+ assign \muxid$1 \muxid
+ sync init
+ end
+ process $group_12
+ assign \op__insn_type$2 7'0000000
+ assign \op__fn_unit$3 11'00000000000
+ assign \op__insn$4 32'00000000000000000000000000000000
+ assign \op__is_32bit$5 1'0
+ assign { \op__is_32bit$5 \op__insn$4 \op__fn_unit$3 \op__insn_type$2 } { \op__is_32bit \op__insn \op__fn_unit \op__insn_type }
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.fus.spr0.alu_spr0.pipe"
+module \pipe$60
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 0 \rst
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 1 \clk
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
+ wire width 1 input 2 \p_valid_i
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
+ wire width 1 output 3 \p_ready_o
+ attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
+ wire width 2 input 4 \muxid
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 7 input 5 \op__insn_type
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 input 6 \op__fn_unit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 input 7 \op__insn
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 input 8 \op__is_32bit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 input 9 \ra
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 input 10 \spr1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 input 11 \fast1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 1 input 12 \xer_so
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 2 input 13 \xer_ov
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 2 input 14 \xer_ca
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
+ wire width 1 output 15 \n_valid_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
+ wire width 1 input 16 \n_ready_i
+ attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
+ wire width 2 output 17 \muxid$1
+ attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
+ wire width 2 \muxid$1$next
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 7 output 18 \op__insn_type$2
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 7 \op__insn_type$2$next
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 output 19 \op__fn_unit$3
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 \op__fn_unit$3$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 output 20 \op__insn$4
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 \op__insn$4$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 output 21 \op__is_32bit$5
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 \op__is_32bit$5$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 output 22 \o
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 \o$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 23 \o_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \o_ok$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 output 24 \spr1$6
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 \spr1$6$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 25 \spr1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \spr1_ok$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 output 26 \fast1$7
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 \fast1$7$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 27 \fast1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \fast1_ok$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 28 \xer_so$8
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \xer_so$8$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 29 \xer_so_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \xer_so_ok$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 output 30 \xer_ov$9
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 \xer_ov$9$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 31 \xer_ov_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \xer_ov_ok$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 output 32 \xer_ca$10
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 \xer_ca$10$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 33 \xer_ca_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \xer_ca_ok$next
+ cell \p$61 \p
+ connect \p_valid_i \p_valid_i
+ connect \p_ready_o \p_ready_o
+ end
+ cell \n$62 \n
+ connect \n_valid_o \n_valid_o
+ connect \n_ready_i \n_ready_i
+ end
+ attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
+ wire width 2 \spr_main_muxid
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 7 \spr_main_op__insn_type
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 \spr_main_op__fn_unit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 \spr_main_op__insn
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 \spr_main_op__is_32bit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 \spr_main_ra
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 \spr_main_fast1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 1 \spr_main_xer_so
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 2 \spr_main_xer_ov
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 2 \spr_main_xer_ca
+ attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
+ wire width 2 \spr_main_muxid$11
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 7 \spr_main_op__insn_type$12
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 \spr_main_op__fn_unit$13
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 \spr_main_op__insn$14
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 \spr_main_op__is_32bit$15
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 \spr_main_o
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \spr_main_o_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 \spr_main_fast1$16
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \spr_main_fast1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \spr_main_xer_so$17
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \spr_main_xer_so_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 \spr_main_xer_ov$18
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \spr_main_xer_ov_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 \spr_main_xer_ca$19
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \spr_main_xer_ca_ok
+ cell \spr_main \spr_main
+ connect \muxid \spr_main_muxid
+ connect \op__insn_type \spr_main_op__insn_type
+ connect \op__fn_unit \spr_main_op__fn_unit
+ connect \op__insn \spr_main_op__insn
+ connect \op__is_32bit \spr_main_op__is_32bit
+ connect \ra \spr_main_ra
+ connect \fast1 \spr_main_fast1
+ connect \xer_so \spr_main_xer_so
+ connect \xer_ov \spr_main_xer_ov
+ connect \xer_ca \spr_main_xer_ca
+ connect \muxid$1 \spr_main_muxid$11
+ connect \op__insn_type$2 \spr_main_op__insn_type$12
+ connect \op__fn_unit$3 \spr_main_op__fn_unit$13
+ connect \op__insn$4 \spr_main_op__insn$14
+ connect \op__is_32bit$5 \spr_main_op__is_32bit$15
+ connect \o \spr_main_o
+ connect \o_ok \spr_main_o_ok
+ connect \fast1$6 \spr_main_fast1$16
+ connect \fast1_ok \spr_main_fast1_ok
+ connect \xer_so$7 \spr_main_xer_so$17
+ connect \xer_so_ok \spr_main_xer_so_ok
+ connect \xer_ov$8 \spr_main_xer_ov$18
+ connect \xer_ov_ok \spr_main_xer_ov_ok
+ connect \xer_ca$9 \spr_main_xer_ca$19
+ connect \xer_ca_ok \spr_main_xer_ca_ok
+ end
+ process $group_0
+ assign \spr_main_muxid 2'00
+ assign \spr_main_muxid \muxid
+ sync init
+ end
+ process $group_1
+ assign \spr_main_op__insn_type 7'0000000
+ assign \spr_main_op__fn_unit 11'00000000000
+ assign \spr_main_op__insn 32'00000000000000000000000000000000
+ assign \spr_main_op__is_32bit 1'0
+ assign { \spr_main_op__is_32bit \spr_main_op__insn \spr_main_op__fn_unit \spr_main_op__insn_type } { \op__is_32bit \op__insn \op__fn_unit \op__insn_type }
+ sync init
+ end
+ process $group_5
+ assign \spr_main_ra 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \spr_main_ra \ra
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 \spr1$20
+ process $group_6
+ assign \spr1$20 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \spr1$20 \spr1
+ sync init
+ end
+ process $group_7
+ assign \spr_main_fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \spr_main_fast1 \fast1
+ sync init
+ end
+ process $group_8
+ assign \spr_main_xer_so 1'0
+ assign \spr_main_xer_so \xer_so
+ sync init
+ end
+ process $group_9
+ assign \spr_main_xer_ov 2'00
+ assign \spr_main_xer_ov \xer_ov
+ sync init
+ end
+ process $group_10
+ assign \spr_main_xer_ca 2'00
+ assign \spr_main_xer_ca \xer_ca
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:621"
+ wire width 1 \p_valid_i$21
+ process $group_11
+ assign \p_valid_i$21 1'0
+ assign \p_valid_i$21 \p_valid_i
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:619"
+ wire width 1 \n_i_rdy_data
+ process $group_12
+ assign \n_i_rdy_data 1'0
+ assign \n_i_rdy_data \n_ready_i
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:620"
+ wire width 1 \p_valid_i_p_ready_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:624"
+ wire width 1 $22
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:624"
+ cell $and $23
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \p_valid_i$21
+ connect \B \p_ready_o
+ connect \Y $22
+ end
+ process $group_13
+ assign \p_valid_i_p_ready_o 1'0
+ assign \p_valid_i_p_ready_o $22
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
+ wire width 2 \muxid$24
+ process $group_14
+ assign \muxid$24 2'00
+ assign \muxid$24 \spr_main_muxid$11
+ sync init
+ end
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 7 \op__insn_type$25
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 \op__fn_unit$26
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 \op__insn$27
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 \op__is_32bit$28
+ process $group_15
+ assign \op__insn_type$25 7'0000000
+ assign \op__fn_unit$26 11'00000000000
+ assign \op__insn$27 32'00000000000000000000000000000000
+ assign \op__is_32bit$28 1'0
+ assign { \op__is_32bit$28 \op__insn$27 \op__fn_unit$26 \op__insn_type$25 } { \spr_main_op__is_32bit$15 \spr_main_op__insn$14 \spr_main_op__fn_unit$13 \spr_main_op__insn_type$12 }
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 \o$29
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \o_ok$30
+ process $group_19
+ assign \o$29 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \o_ok$30 1'0
+ assign { \o_ok$30 \o$29 } { \spr_main_o_ok \spr_main_o }
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 \spr1$31
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \spr1_ok$32
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 \spr1$33
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \spr1_ok$34
+ process $group_21
+ assign \spr1$31 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \spr1_ok$32 1'0
+ assign { \spr1_ok$32 \spr1$31 } { \spr1_ok$34 \spr1$33 }
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 \fast1$35
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \fast1_ok$36
+ process $group_23
+ assign \fast1$35 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast1_ok$36 1'0
+ assign { \fast1_ok$36 \fast1$35 } { \spr_main_fast1_ok \spr_main_fast1$16 }
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \xer_so$37
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \xer_so_ok$38
+ process $group_25
+ assign \xer_so$37 1'0
+ assign \xer_so_ok$38 1'0
+ assign { \xer_so_ok$38 \xer_so$37 } { \spr_main_xer_so_ok \spr_main_xer_so$17 }
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 \xer_ov$39
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \xer_ov_ok$40
+ process $group_27
+ assign \xer_ov$39 2'00
+ assign \xer_ov_ok$40 1'0
+ assign { \xer_ov_ok$40 \xer_ov$39 } { \spr_main_xer_ov_ok \spr_main_xer_ov$18 }
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 \xer_ca$41
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \xer_ca_ok$42
+ process $group_29
+ assign \xer_ca$41 2'00
+ assign \xer_ca_ok$42 1'0
+ assign { \xer_ca_ok$42 \xer_ca$41 } { \spr_main_xer_ca_ok \spr_main_xer_ca$19 }
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:615"
+ wire width 1 \r_busy
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:615"
+ wire width 1 \r_busy$next
+ process $group_31
+ assign \r_busy$next \r_busy
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ switch { \n_i_rdy_data \p_valid_i_p_ready_o }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ case 2'-1
+ assign \r_busy$next 1'1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:637"
+ case 2'1-
+ assign \r_busy$next 1'0
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \r_busy$next 1'0
+ end
+ sync init
+ update \r_busy 1'0
+ sync posedge \clk
+ update \r_busy \r_busy$next
+ end
+ process $group_32
+ assign \muxid$1$next \muxid$1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ switch { \n_i_rdy_data \p_valid_i_p_ready_o }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ case 2'-1
+ assign \muxid$1$next \muxid$24
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:637"
+ case 2'1-
+ assign \muxid$1$next \muxid$24
+ end
+ sync init
+ update \muxid$1 2'00
+ sync posedge \clk
+ update \muxid$1 \muxid$1$next
+ end
+ process $group_33
+ assign \op__insn_type$2$next \op__insn_type$2
+ assign \op__fn_unit$3$next \op__fn_unit$3
+ assign \op__insn$4$next \op__insn$4
+ assign \op__is_32bit$5$next \op__is_32bit$5
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ switch { \n_i_rdy_data \p_valid_i_p_ready_o }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ case 2'-1
+ assign { \op__is_32bit$5$next \op__insn$4$next \op__fn_unit$3$next \op__insn_type$2$next } { \op__is_32bit$28 \op__insn$27 \op__fn_unit$26 \op__insn_type$25 }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:637"
+ case 2'1-
+ assign { \op__is_32bit$5$next \op__insn$4$next \op__fn_unit$3$next \op__insn_type$2$next } { \op__is_32bit$28 \op__insn$27 \op__fn_unit$26 \op__insn_type$25 }
+ end
+ sync init
+ update \op__insn_type$2 7'0000000
+ update \op__fn_unit$3 11'00000000000
+ update \op__insn$4 32'00000000000000000000000000000000
+ update \op__is_32bit$5 1'0
+ sync posedge \clk
+ update \op__insn_type$2 \op__insn_type$2$next
+ update \op__fn_unit$3 \op__fn_unit$3$next
+ update \op__insn$4 \op__insn$4$next
+ update \op__is_32bit$5 \op__is_32bit$5$next
+ end
+ process $group_37
+ assign \o$next \o
+ assign \o_ok$next \o_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ switch { \n_i_rdy_data \p_valid_i_p_ready_o }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ case 2'-1
+ assign { \o_ok$next \o$next } { \o_ok$30 \o$29 }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:637"
+ case 2'1-
+ assign { \o_ok$next \o$next } { \o_ok$30 \o$29 }
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \o_ok$next 1'0
+ end
+ sync init
+ update \o 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \o_ok 1'0
+ sync posedge \clk
+ update \o \o$next
+ update \o_ok \o_ok$next
+ end
+ process $group_39
+ assign \spr1$6$next \spr1$6
+ assign \spr1_ok$next \spr1_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ switch { \n_i_rdy_data \p_valid_i_p_ready_o }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ case 2'-1
+ assign { \spr1_ok$next \spr1$6$next } { \spr1_ok$32 \spr1$31 }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:637"
+ case 2'1-
+ assign { \spr1_ok$next \spr1$6$next } { \spr1_ok$32 \spr1$31 }
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \spr1_ok$next 1'0
+ end
+ sync init
+ update \spr1$6 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \spr1_ok 1'0
+ sync posedge \clk
+ update \spr1$6 \spr1$6$next
+ update \spr1_ok \spr1_ok$next
+ end
+ process $group_41
+ assign \fast1$7$next \fast1$7
+ assign \fast1_ok$next \fast1_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ switch { \n_i_rdy_data \p_valid_i_p_ready_o }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ case 2'-1
+ assign { \fast1_ok$next \fast1$7$next } { \fast1_ok$36 \fast1$35 }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:637"
+ case 2'1-
+ assign { \fast1_ok$next \fast1$7$next } { \fast1_ok$36 \fast1$35 }
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \fast1_ok$next 1'0
+ end
+ sync init
+ update \fast1$7 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \fast1_ok 1'0
+ sync posedge \clk
+ update \fast1$7 \fast1$7$next
+ update \fast1_ok \fast1_ok$next
+ end
+ process $group_43
+ assign \xer_so$8$next \xer_so$8
+ assign \xer_so_ok$next \xer_so_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ switch { \n_i_rdy_data \p_valid_i_p_ready_o }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ case 2'-1
+ assign { \xer_so_ok$next \xer_so$8$next } { \xer_so_ok$38 \xer_so$37 }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:637"
+ case 2'1-
+ assign { \xer_so_ok$next \xer_so$8$next } { \xer_so_ok$38 \xer_so$37 }
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \xer_so_ok$next 1'0
+ end
+ sync init
+ update \xer_so$8 1'0
+ update \xer_so_ok 1'0
+ sync posedge \clk
+ update \xer_so$8 \xer_so$8$next
+ update \xer_so_ok \xer_so_ok$next
+ end
+ process $group_45
+ assign \xer_ov$9$next \xer_ov$9
+ assign \xer_ov_ok$next \xer_ov_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ switch { \n_i_rdy_data \p_valid_i_p_ready_o }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ case 2'-1
+ assign { \xer_ov_ok$next \xer_ov$9$next } { \xer_ov_ok$40 \xer_ov$39 }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:637"
+ case 2'1-
+ assign { \xer_ov_ok$next \xer_ov$9$next } { \xer_ov_ok$40 \xer_ov$39 }
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \xer_ov_ok$next 1'0
+ end
+ sync init
+ update \xer_ov$9 2'00
+ update \xer_ov_ok 1'0
+ sync posedge \clk
+ update \xer_ov$9 \xer_ov$9$next
+ update \xer_ov_ok \xer_ov_ok$next
+ end
+ process $group_47
+ assign \xer_ca$10$next \xer_ca$10
+ assign \xer_ca_ok$next \xer_ca_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ switch { \n_i_rdy_data \p_valid_i_p_ready_o }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:631"
+ case 2'-1
+ assign { \xer_ca_ok$next \xer_ca$10$next } { \xer_ca_ok$42 \xer_ca$41 }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/singlepipe.py:637"
+ case 2'1-
+ assign { \xer_ca_ok$next \xer_ca$10$next } { \xer_ca_ok$42 \xer_ca$41 }
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \xer_ca_ok$next 1'0
+ end
+ sync init
+ update \xer_ca$10 2'00
+ update \xer_ca_ok 1'0
+ sync posedge \clk
+ update \xer_ca$10 \xer_ca$10$next
+ update \xer_ca_ok \xer_ca_ok$next
+ end
+ process $group_49
+ assign \n_valid_o 1'0
+ assign \n_valid_o \r_busy
+ sync init
+ end
+ process $group_50
+ assign \p_ready_o 1'0
+ assign \p_ready_o \n_i_rdy_data
+ sync init
+ end
+ connect \spr1$33 64'0000000000000000000000000000000000000000000000000000000000000000
+ connect \spr1_ok$34 1'0
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.fus.spr0.alu_spr0"
+module \alu_spr0
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 0 \rst
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 1 \clk
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 2 \o_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 output 3 \o
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 4 \xer_ca_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 output 5 \xer_ca
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 6 \xer_ov_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 output 7 \xer_ov
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 8 \xer_so_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 9 \xer_so
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 10 \fast1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 output 11 \fast1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 12 \spr1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 output 13 \spr1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
+ wire width 1 output 14 \n_valid_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
+ wire width 1 input 15 \n_ready_i
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 7 input 16 \op__insn_type
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 input 17 \op__fn_unit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 input 18 \op__insn
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 input 19 \op__is_32bit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 input 20 \ra
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 input 21 \spr1$1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 input 22 \fast1$2
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 1 input 23 \xer_so$3
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 2 input 24 \xer_ov$4
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 2 input 25 \xer_ca$5
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
+ wire width 1 input 26 \p_valid_i
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
+ wire width 1 output 27 \p_ready_o
+ cell \p$58 \p
+ connect \p_valid_i \p_valid_i
+ connect \p_ready_o \p_ready_o
+ end
+ cell \n$59 \n
+ connect \n_valid_o \n_valid_o
+ connect \n_ready_i \n_ready_i
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
+ wire width 1 \pipe_p_valid_i
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
+ wire width 1 \pipe_p_ready_o
+ attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
+ wire width 2 \pipe_muxid
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 7 \pipe_op__insn_type
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 \pipe_op__fn_unit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 \pipe_op__insn
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 \pipe_op__is_32bit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 \pipe_ra
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 \pipe_spr1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 \pipe_fast1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 1 \pipe_xer_so
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 2 \pipe_xer_ov
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 2 \pipe_xer_ca
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
+ wire width 1 \pipe_n_valid_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
+ wire width 1 \pipe_n_ready_i
+ attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
+ wire width 2 \pipe_muxid$6
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 7 \pipe_op__insn_type$7
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 \pipe_op__fn_unit$8
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 \pipe_op__insn$9
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 \pipe_op__is_32bit$10
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 \pipe_o
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \pipe_o_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 \pipe_spr1$11
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \pipe_spr1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 \pipe_fast1$12
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \pipe_fast1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \pipe_xer_so$13
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \pipe_xer_so_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 \pipe_xer_ov$14
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \pipe_xer_ov_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 \pipe_xer_ca$15
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \pipe_xer_ca_ok
+ cell \pipe$60 \pipe
+ connect \rst \rst
+ connect \clk \clk
+ connect \p_valid_i \pipe_p_valid_i
+ connect \p_ready_o \pipe_p_ready_o
+ connect \muxid \pipe_muxid
+ connect \op__insn_type \pipe_op__insn_type
+ connect \op__fn_unit \pipe_op__fn_unit
+ connect \op__insn \pipe_op__insn
+ connect \op__is_32bit \pipe_op__is_32bit
+ connect \ra \pipe_ra
+ connect \spr1 \pipe_spr1
+ connect \fast1 \pipe_fast1
+ connect \xer_so \pipe_xer_so
+ connect \xer_ov \pipe_xer_ov
+ connect \xer_ca \pipe_xer_ca
+ connect \n_valid_o \pipe_n_valid_o
+ connect \n_ready_i \pipe_n_ready_i
+ connect \muxid$1 \pipe_muxid$6
+ connect \op__insn_type$2 \pipe_op__insn_type$7
+ connect \op__fn_unit$3 \pipe_op__fn_unit$8
+ connect \op__insn$4 \pipe_op__insn$9
+ connect \op__is_32bit$5 \pipe_op__is_32bit$10
+ connect \o \pipe_o
+ connect \o_ok \pipe_o_ok
+ connect \spr1$6 \pipe_spr1$11
+ connect \spr1_ok \pipe_spr1_ok
+ connect \fast1$7 \pipe_fast1$12
+ connect \fast1_ok \pipe_fast1_ok
+ connect \xer_so$8 \pipe_xer_so$13
+ connect \xer_so_ok \pipe_xer_so_ok
+ connect \xer_ov$9 \pipe_xer_ov$14
+ connect \xer_ov_ok \pipe_xer_ov_ok
+ connect \xer_ca$10 \pipe_xer_ca$15
+ connect \xer_ca_ok \pipe_xer_ca_ok
+ end
+ process $group_0
+ assign \pipe_p_valid_i 1'0
+ assign \pipe_p_valid_i \p_valid_i
+ sync init
+ end
+ process $group_1
+ assign \p_ready_o 1'0
+ assign \p_ready_o \pipe_p_ready_o
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
+ wire width 2 \muxid
+ process $group_2
+ assign \pipe_muxid 2'00
+ assign \pipe_muxid \muxid
+ sync init
+ end
+ process $group_3
+ assign \pipe_op__insn_type 7'0000000
+ assign \pipe_op__fn_unit 11'00000000000
+ assign \pipe_op__insn 32'00000000000000000000000000000000
+ assign \pipe_op__is_32bit 1'0
+ assign { \pipe_op__is_32bit \pipe_op__insn \pipe_op__fn_unit \pipe_op__insn_type } { \op__is_32bit \op__insn \op__fn_unit \op__insn_type }
+ sync init
+ end
+ process $group_7
+ assign \pipe_ra 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \pipe_ra \ra
+ sync init
+ end
+ process $group_8
+ assign \pipe_spr1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \pipe_spr1 \spr1$1
+ sync init
+ end
+ process $group_9
+ assign \pipe_fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \pipe_fast1 \fast1$2
+ sync init
+ end
+ process $group_10
+ assign \pipe_xer_so 1'0
+ assign \pipe_xer_so \xer_so$3
+ sync init
+ end
+ process $group_11
+ assign \pipe_xer_ov 2'00
+ assign \pipe_xer_ov \xer_ov$4
+ sync init
+ end
+ process $group_12
+ assign \pipe_xer_ca 2'00
+ assign \pipe_xer_ca \xer_ca$5
+ sync init
+ end
+ process $group_13
+ assign \n_valid_o 1'0
+ assign \n_valid_o \pipe_n_valid_o
+ sync init
+ end
+ process $group_14
+ assign \pipe_n_ready_i 1'0
+ assign \pipe_n_ready_i \n_ready_i
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
+ wire width 2 \muxid$16
+ process $group_15
+ assign \muxid$16 2'00
+ assign \muxid$16 \pipe_muxid$6
+ sync init
+ end
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 7 \op__insn_type$17
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 \op__fn_unit$18
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 \op__insn$19
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 \op__is_32bit$20
+ process $group_16
+ assign \op__insn_type$17 7'0000000
+ assign \op__fn_unit$18 11'00000000000
+ assign \op__insn$19 32'00000000000000000000000000000000
+ assign \op__is_32bit$20 1'0
+ assign { \op__is_32bit$20 \op__insn$19 \op__fn_unit$18 \op__insn_type$17 } { \pipe_op__is_32bit$10 \pipe_op__insn$9 \pipe_op__fn_unit$8 \pipe_op__insn_type$7 }
+ sync init
+ end
+ process $group_20
+ assign \o 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \o_ok 1'0
+ assign { \o_ok \o } { \pipe_o_ok \pipe_o }
+ sync init
+ end
+ process $group_22
+ assign \spr1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \spr1_ok 1'0
+ assign { \spr1_ok \spr1 } { \pipe_spr1_ok \pipe_spr1$11 }
+ sync init
+ end
+ process $group_24
+ assign \fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast1_ok 1'0
+ assign { \fast1_ok \fast1 } { \pipe_fast1_ok \pipe_fast1$12 }
+ sync init
+ end
+ process $group_26
+ assign \xer_so 1'0
+ assign \xer_so_ok 1'0
+ assign { \xer_so_ok \xer_so } { \pipe_xer_so_ok \pipe_xer_so$13 }
+ sync init
+ end
+ process $group_28
+ assign \xer_ov 2'00
+ assign \xer_ov_ok 1'0
+ assign { \xer_ov_ok \xer_ov } { \pipe_xer_ov_ok \pipe_xer_ov$14 }
+ sync init
+ end
+ process $group_30
+ assign \xer_ca 2'00
+ assign \xer_ca_ok 1'0
+ assign { \xer_ca_ok \xer_ca } { \pipe_xer_ca_ok \pipe_xer_ca$15 }
+ sync init
+ end
+ connect \muxid 2'00
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.fus.spr0.src_l"
+module \src_l$63
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 0 \rst
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
+ wire width 1 input 1 \clk
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
+ wire width 6 input 2 \s_src
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
+ wire width 6 input 3 \r_src
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
+ wire width 6 output 4 \q_src
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:66"
+ wire width 6 \q_int
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:66"
+ wire width 6 \q_int$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 6 $1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $not $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 6
+ parameter \Y_WIDTH 6
+ connect \A \r_src
+ connect \Y $1
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 6 $3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $and $4
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 6
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
+ connect \A \q_int
+ connect \B $1
+ connect \Y $3
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ wire width 6 $5
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
+ cell $or $6
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 6
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
+ connect \A $3
+ connect \B \s_src
+ connect \Y $5
+ end
+ process $group_0
+ assign \q_int$next \q_int
+ assign \q_int$next $5
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \q_int$next 6'000000
+ end
+ sync init
+ update \q_int 6'000000
+ sync posedge \clk
+ update \q_int \q_int$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 6 $7
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $not $8
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 6
+ parameter \Y_WIDTH 6
+ connect \A \r_src
+ connect \Y $7
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 6 $9
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $and $10
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 6
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
+ connect \A \q_int
+ connect \B $7
+ connect \Y $9
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ wire width 6 $11
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
+ cell $or $12
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 6
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
+ connect \A $9
+ connect \B \s_src
+ connect \Y $11
+ end
+ process $group_1
+ assign \q_src 6'000000
+ assign \q_src $11
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:61"
+ wire width 6 \qn_src
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:73"
+ wire width 6 $13
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:73"
+ cell $not $14
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 6
+ parameter \Y_WIDTH 6
+ connect \A \q_src
+ connect \Y $13
+ end
+ process $group_2
+ assign \qn_src 6'000000
+ assign \qn_src $13
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:62"
+ wire width 6 \qlq_src
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:74"
+ wire width 6 $15
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:74"
+ cell $or $16
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 6
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
+ connect \A \q_src
+ connect \B \q_int
+ connect \Y $15
+ end
+ process $group_3
+ assign \qlq_src 6'000000
+ assign \qlq_src $15
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.fus.spr0.opc_l"
+module \opc_l$64
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
end
attribute \generator "nMigen"
-attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.req_l"
-module \req_l$52
+attribute \nmigen.hierarchy "test_issuer.core.fus.spr0.req_l"
+module \req_l$65
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 1 \clk
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
- wire width 3 output 2 \q_req
+ wire width 6 output 2 \q_req
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
- wire width 3 input 3 \s_req
+ wire width 6 input 3 \s_req
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
- wire width 3 input 4 \r_req
+ wire width 6 input 4 \r_req
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:66"
- wire width 3 \q_int
+ wire width 6 \q_int
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:66"
- wire width 3 \q_int$next
+ wire width 6 \q_int$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
- wire width 3 $1
+ wire width 6 $1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
cell $not $2
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \A_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \r_req
connect \Y $1
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
- wire width 3 $3
+ wire width 6 $3
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
cell $and $4
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \q_int
connect \B $1
connect \Y $3
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
- wire width 3 $5
+ wire width 6 $5
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:68"
cell $or $6
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A $3
connect \B \s_req
connect \Y $5
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \q_int$next 3'000
+ assign \q_int$next 6'000000
end
sync init
- update \q_int 3'000
+ update \q_int 6'000000
sync posedge \clk
update \q_int \q_int$next
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
- wire width 3 $7
+ wire width 6 $7
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
cell $not $8
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \A_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \r_req
connect \Y $7
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
- wire width 3 $9
+ wire width 6 $9
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
cell $and $10
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \q_int
connect \B $7
connect \Y $9
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
- wire width 3 $11
+ wire width 6 $11
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:72"
cell $or $12
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A $9
connect \B \s_req
connect \Y $11
end
process $group_1
- assign \q_req 3'000
+ assign \q_req 6'000000
assign \q_req $11
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:61"
- wire width 3 \qn_req
+ wire width 6 \qn_req
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:73"
- wire width 3 $13
+ wire width 6 $13
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:73"
cell $not $14
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \A_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \q_req
connect \Y $13
end
process $group_2
- assign \qn_req 3'000
+ assign \qn_req 6'000000
assign \qn_req $13
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:62"
- wire width 3 \qlq_req
+ wire width 6 \qlq_req
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:74"
- wire width 3 $15
+ wire width 6 $15
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:74"
cell $or $16
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \q_req
connect \B \q_int
connect \Y $15
end
process $group_3
- assign \qlq_req 3'000
+ assign \qlq_req 6'000000
assign \qlq_req $15
sync init
end
end
attribute \generator "nMigen"
-attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.rst_l"
-module \rst_l$53
+attribute \nmigen.hierarchy "test_issuer.core.fus.spr0.rst_l"
+module \rst_l$66
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
end
attribute \generator "nMigen"
-attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.rok_l"
-module \rok_l$54
+attribute \nmigen.hierarchy "test_issuer.core.fus.spr0.rok_l"
+module \rok_l$67
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
end
attribute \generator "nMigen"
-attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.alui_l"
-module \alui_l$55
+attribute \nmigen.hierarchy "test_issuer.core.fus.spr0.alui_l"
+module \alui_l$68
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
end
attribute \generator "nMigen"
-attribute \nmigen.hierarchy "test_issuer.core.fus.logical0.alu_l"
-module \alu_l$56
+attribute \nmigen.hierarchy "test_issuer.core.fus.spr0.alu_l"
+module \alu_l$69
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
end
attribute \generator "nMigen"
-attribute \nmigen.hierarchy "test_issuer.core.fus.logical0"
-module \logical0
+attribute \nmigen.hierarchy "test_issuer.core.fus.spr0"
+module \spr0
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
attribute \enum_value_1000111 "OP_MFMSR"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
wire width 7 input 2 \oper_i__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 input 3 \oper_i__fn_unit
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 64 input 4 \oper_i__imm_data__imm
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 5 \oper_i__imm_data__imm_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 6 \oper_i__lk
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 7 \oper_i__rc__rc
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 8 \oper_i__rc__rc_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 9 \oper_i__oe__oe
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 10 \oper_i__oe__oe_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 11 \oper_i__invert_a
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 12 \oper_i__zero_a
- attribute \enum_base_type "CryIn"
- attribute \enum_value_00 "ZERO"
- attribute \enum_value_01 "ONE"
- attribute \enum_value_10 "CA"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 2 input 13 \oper_i__input_carry
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 14 \oper_i__invert_out
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 3 input 15 \oper_i__write_cr__data
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 16 \oper_i__write_cr__ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 17 \oper_i__output_carry
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 18 \oper_i__is_32bit
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 19 \oper_i__is_signed
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 4 input 20 \oper_i__data_len
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 32 input 21 \oper_i__insn
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 input 3 \oper_i__fn_unit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 input 4 \oper_i__insn
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 input 5 \oper_i__is_32bit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
- wire width 1 input 22 \issue_i
+ wire width 1 input 6 \issue_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
- wire width 1 output 23 \busy_o
+ wire width 1 output 7 \busy_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
- wire width 2 input 24 \rdmaskn
+ wire width 6 input 8 \rdmaskn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 2 output 25 \rd__rel
+ wire width 6 output 9 \rd__rel
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 2 input 26 \rd__go
+ wire width 6 input 10 \rd__go
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 27 \src1_i
+ wire width 64 input 11 \src1_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 28 \src2_i
+ wire width 1 input 12 \src4_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 2 input 13 \src6_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 2 input 14 \src5_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 64 input 15 \src3_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 64 input 16 \src2_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 29 \o_ok
+ wire width 1 output 17 \o_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 30 \wr__rel
+ wire width 6 output 18 \wr__rel
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 input 31 \wr__go
+ wire width 6 input 19 \wr__go
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 32 \o
+ wire width 64 output 20 \o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 33 \cr_a_ok
+ wire width 1 output 21 \xer_ca_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 4 output 34 \cr_a
+ wire width 2 output 22 \xer_ca
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 35 \xer_ca_ok
+ wire width 1 output 23 \xer_ov_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 2 output 36 \xer_ca
+ wire width 2 output 24 \xer_ov
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 25 \xer_so_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 26 \xer_so
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 27 \fast1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 output 28 \fast1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 29 \spr1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 output 30 \spr1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
- wire width 1 input 37 \go_die_i
+ wire width 1 input 31 \go_die_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
- wire width 1 input 38 \shadown_i
+ wire width 1 input 32 \shadown_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
- wire width 64 output 39 \dest1_o
+ wire width 64 output 33 \dest1_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
- wire width 1 \alu_logical0_n_valid_o
+ wire width 1 \alu_spr0_n_valid_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
- wire width 1 \alu_logical0_n_ready_i
+ wire width 1 \alu_spr0_n_ready_i
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1000111 "OP_MFMSR"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 7 \alu_logical0_op__insn_type
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 7 \alu_spr0_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 \alu_logical0_op__fn_unit
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 64 \alu_logical0_op__imm_data__imm
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \alu_logical0_op__imm_data__imm_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \alu_logical0_op__lk
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \alu_logical0_op__rc__rc
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \alu_logical0_op__rc__rc_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \alu_logical0_op__oe__oe
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \alu_logical0_op__oe__oe_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \alu_logical0_op__invert_a
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \alu_logical0_op__zero_a
- attribute \enum_base_type "CryIn"
- attribute \enum_value_00 "ZERO"
- attribute \enum_value_01 "ONE"
- attribute \enum_value_10 "CA"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 2 \alu_logical0_op__input_carry
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \alu_logical0_op__invert_out
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 3 \alu_logical0_op__write_cr__data
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \alu_logical0_op__write_cr__ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \alu_logical0_op__output_carry
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \alu_logical0_op__is_32bit
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \alu_logical0_op__is_signed
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 4 \alu_logical0_op__data_len
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 32 \alu_logical0_op__insn
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 \alu_spr0_op__fn_unit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 \alu_spr0_op__insn
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 \alu_spr0_op__is_32bit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 \alu_logical0_ra
+ wire width 64 \alu_spr0_ra
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
- wire width 64 \alu_logical0_rb
+ wire width 64 \alu_spr0_spr1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 64 \alu_spr0_fast1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 1 \alu_spr0_xer_so
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 2 \alu_spr0_xer_ov
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
+ wire width 2 \alu_spr0_xer_ca
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
- wire width 1 \alu_logical0_p_valid_i
+ wire width 1 \alu_spr0_p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
- wire width 1 \alu_logical0_p_ready_o
- cell \alu_logical0 \alu_logical0
+ wire width 1 \alu_spr0_p_ready_o
+ cell \alu_spr0 \alu_spr0
connect \rst \rst
connect \clk \clk
connect \o_ok \o_ok
connect \o \o
- connect \cr_a_ok \cr_a_ok
- connect \cr_a \cr_a
connect \xer_ca_ok \xer_ca_ok
connect \xer_ca \xer_ca
- connect \n_valid_o \alu_logical0_n_valid_o
- connect \n_ready_i \alu_logical0_n_ready_i
- connect \op__insn_type \alu_logical0_op__insn_type
- connect \op__fn_unit \alu_logical0_op__fn_unit
- connect \op__imm_data__imm \alu_logical0_op__imm_data__imm
- connect \op__imm_data__imm_ok \alu_logical0_op__imm_data__imm_ok
- connect \op__lk \alu_logical0_op__lk
- connect \op__rc__rc \alu_logical0_op__rc__rc
- connect \op__rc__rc_ok \alu_logical0_op__rc__rc_ok
- connect \op__oe__oe \alu_logical0_op__oe__oe
- connect \op__oe__oe_ok \alu_logical0_op__oe__oe_ok
- connect \op__invert_a \alu_logical0_op__invert_a
- connect \op__zero_a \alu_logical0_op__zero_a
- connect \op__input_carry \alu_logical0_op__input_carry
- connect \op__invert_out \alu_logical0_op__invert_out
- connect \op__write_cr__data \alu_logical0_op__write_cr__data
- connect \op__write_cr__ok \alu_logical0_op__write_cr__ok
- connect \op__output_carry \alu_logical0_op__output_carry
- connect \op__is_32bit \alu_logical0_op__is_32bit
- connect \op__is_signed \alu_logical0_op__is_signed
- connect \op__data_len \alu_logical0_op__data_len
- connect \op__insn \alu_logical0_op__insn
- connect \ra \alu_logical0_ra
- connect \rb \alu_logical0_rb
- connect \p_valid_i \alu_logical0_p_valid_i
- connect \p_ready_o \alu_logical0_p_ready_o
+ connect \xer_ov_ok \xer_ov_ok
+ connect \xer_ov \xer_ov
+ connect \xer_so_ok \xer_so_ok
+ connect \xer_so \xer_so
+ connect \fast1_ok \fast1_ok
+ connect \fast1 \fast1
+ connect \spr1_ok \spr1_ok
+ connect \spr1 \spr1
+ connect \n_valid_o \alu_spr0_n_valid_o
+ connect \n_ready_i \alu_spr0_n_ready_i
+ connect \op__insn_type \alu_spr0_op__insn_type
+ connect \op__fn_unit \alu_spr0_op__fn_unit
+ connect \op__insn \alu_spr0_op__insn
+ connect \op__is_32bit \alu_spr0_op__is_32bit
+ connect \ra \alu_spr0_ra
+ connect \spr1$1 \alu_spr0_spr1
+ connect \fast1$2 \alu_spr0_fast1
+ connect \xer_so$3 \alu_spr0_xer_so
+ connect \xer_ov$4 \alu_spr0_xer_ov
+ connect \xer_ca$5 \alu_spr0_xer_ca
+ connect \p_valid_i \alu_spr0_p_valid_i
+ connect \p_ready_o \alu_spr0_p_ready_o
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
- wire width 2 \src_l_s_src
+ wire width 6 \src_l_s_src
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
- wire width 2 \src_l_s_src$next
+ wire width 6 \src_l_s_src$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
- wire width 2 \src_l_r_src
+ wire width 6 \src_l_r_src
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
- wire width 2 \src_l_r_src$next
+ wire width 6 \src_l_r_src$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
- wire width 2 \src_l_q_src
- cell \src_l$50 \src_l
+ wire width 6 \src_l_q_src
+ cell \src_l$63 \src_l
connect \rst \rst
connect \clk \clk
connect \s_src \src_l_s_src
wire width 1 \opc_l_r_opc$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
wire width 1 \opc_l_q_opc
- cell \opc_l$51 \opc_l
+ cell \opc_l$64 \opc_l
connect \rst \rst
connect \clk \clk
connect \s_opc \opc_l_s_opc
connect \q_opc \opc_l_q_opc
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
- wire width 3 \req_l_q_req
+ wire width 6 \req_l_q_req
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
- wire width 3 \req_l_s_req
+ wire width 6 \req_l_s_req
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
- wire width 3 \req_l_r_req
- cell \req_l$52 \req_l
+ wire width 6 \req_l_r_req
+ cell \req_l$65 \req_l
connect \rst \rst
connect \clk \clk
connect \q_req \req_l_q_req
wire width 1 \rst_l_s_rst
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
wire width 1 \rst_l_r_rst
- cell \rst_l$53 \rst_l
+ cell \rst_l$66 \rst_l
connect \rst \rst
connect \clk \clk
connect \s_rst \rst_l_s_rst
wire width 1 \rok_l_r_rdok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
wire width 1 \rok_l_r_rdok$next
- cell \rok_l$54 \rok_l
+ cell \rok_l$67 \rok_l
connect \rst \rst
connect \clk \clk
connect \q_rdok \rok_l_q_rdok
wire width 1 \alui_l_r_alui$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
wire width 1 \alui_l_s_alui
- cell \alui_l$55 \alui_l
+ cell \alui_l$68 \alui_l
connect \rst \rst
connect \clk \clk
connect \q_alui \alui_l_q_alui
wire width 1 \alu_l_r_alu$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
wire width 1 \alu_l_s_alu
- cell \alu_l$56 \alu_l
+ cell \alu_l$69 \alu_l
connect \rst \rst
connect \clk \clk
connect \q_alu \alu_l_q_alu
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:180"
wire width 1 $3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:180"
- wire width 2 $4
+ wire width 6 $4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:180"
cell $not $5
parameter \A_SIGNED 0
- parameter \A_WIDTH 2
- parameter \Y_WIDTH 2
+ parameter \A_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \rd__rel
connect \Y $4
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:180"
- wire width 2 $6
+ wire width 6 $6
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:180"
cell $or $7
parameter \A_SIGNED 0
- parameter \A_WIDTH 2
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 2
- parameter \Y_WIDTH 2
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A $4
connect \B \rd__go
connect \Y $6
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:180"
cell $reduce_and $8
parameter \A_SIGNED 0
- parameter \A_WIDTH 2
+ parameter \A_WIDTH 6
parameter \Y_WIDTH 1
connect \A $6
connect \Y $3
wire width 1 \alu_done
process $group_3
assign \alu_done 1'0
- assign \alu_done \alu_logical0_n_valid_o
+ assign \alu_done \alu_spr0_n_valid_o
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:190"
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:192"
- wire width 3 \alu_pulsem
+ wire width 6 \alu_pulsem
process $group_6
- assign \alu_pulsem 3'000
- assign \alu_pulsem { \alu_pulse \alu_pulse \alu_pulse }
+ assign \alu_pulsem 6'000000
+ assign \alu_pulsem { \alu_pulse \alu_pulse \alu_pulse \alu_pulse \alu_pulse \alu_pulse }
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:199"
- wire width 3 \prev_wr_go
+ wire width 6 \prev_wr_go
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:199"
- wire width 3 \prev_wr_go$next
+ wire width 6 \prev_wr_go$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:201"
- wire width 3 $19
+ wire width 6 $19
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:201"
cell $and $20
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \wr__go
- connect \B { \busy_o \busy_o \busy_o }
+ connect \B { \busy_o \busy_o \busy_o \busy_o \busy_o \busy_o }
connect \Y $19
end
process $group_7
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \prev_wr_go$next 3'000
+ assign \prev_wr_go$next 6'000000
end
sync init
- update \prev_wr_go 3'000
+ update \prev_wr_go 6'000000
sync posedge \clk
update \prev_wr_go \prev_wr_go$next
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:209"
wire width 1 $22
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:209"
- wire width 3 $23
+ wire width 6 $23
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:93"
- wire width 3 \wrmask
+ wire width 6 \wrmask
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:209"
cell $not $24
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \A_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \wrmask
connect \Y $23
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:209"
- wire width 3 $25
+ wire width 6 $25
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:209"
cell $and $26
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \wr__rel
connect \B $23
connect \Y $25
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:209"
cell $reduce_bool $27
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \Y_WIDTH 1
connect \A $25
connect \Y $22
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:210"
cell $reduce_bool $32
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \Y_WIDTH 1
connect \A \wr__go
connect \Y $31
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:210"
cell $reduce_bool $34
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \Y_WIDTH 1
connect \A \prev_wr_go
connect \Y $33
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \alu_logical0_n_ready_i
+ connect \A \alu_spr0_n_ready_i
connect \Y $37
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:211"
connect \Y $39
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:212"
- wire width 3 $41
+ wire width 6 $41
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:212"
cell $and $42
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \req_l_q_req
connect \B \wrmask
connect \Y $41
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:212"
cell $eq $44
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:217"
cell $eq $48
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
connect \A $47
- connect \B \alu_logical0_n_ready_i
+ connect \B \alu_spr0_n_ready_i
connect \Y $49
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:217"
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
connect \A $49
- connect \B \alu_logical0_n_valid_o
+ connect \B \alu_spr0_n_valid_o
connect \Y $51
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:217"
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:223"
- wire width 3 \reset_w
+ wire width 6 \reset_w
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:227"
- wire width 3 $59
+ wire width 6 $59
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:227"
cell $or $60
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \wr__go
- connect \B { \go_die_i \go_die_i \go_die_i }
+ connect \B { \go_die_i \go_die_i \go_die_i \go_die_i \go_die_i \go_die_i }
connect \Y $59
end
process $group_13
- assign \reset_w 3'000
+ assign \reset_w 6'000000
assign \reset_w $59
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:224"
- wire width 2 \reset_r
+ wire width 6 \reset_r
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:228"
- wire width 2 $61
+ wire width 6 $61
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:228"
cell $or $62
parameter \A_SIGNED 0
- parameter \A_WIDTH 2
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 2
- parameter \Y_WIDTH 2
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \rd__go
- connect \B { \go_die_i \go_die_i }
+ connect \B { \go_die_i \go_die_i \go_die_i \go_die_i \go_die_i \go_die_i }
connect \Y $61
end
process $group_14
- assign \reset_r 2'00
+ assign \reset_r 6'000000
assign \reset_r $61
sync init
end
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \alu_logical0_n_valid_o
+ connect \A \alu_spr0_n_valid_o
connect \B \busy_o
connect \Y $63
end
end
process $group_21
assign \src_l_s_src$next \src_l_s_src
- assign \src_l_s_src$next { \issue_i \issue_i }
+ assign \src_l_s_src$next { \issue_i \issue_i \issue_i \issue_i \issue_i \issue_i }
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \src_l_s_src$next 2'00
+ assign \src_l_s_src$next 6'000000
end
sync init
- update \src_l_s_src 2'00
+ update \src_l_s_src 6'000000
sync posedge \clk
update \src_l_s_src \src_l_s_src$next
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \src_l_r_src$next 2'11
+ assign \src_l_r_src$next 6'111111
end
sync init
- update \src_l_r_src 2'11
+ update \src_l_r_src 6'111111
sync posedge \clk
update \src_l_r_src \src_l_r_src$next
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:247"
- wire width 3 $65
+ wire width 6 $65
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:247"
cell $and $66
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \alu_pulsem
connect \B \wrmask
connect \Y $65
end
process $group_23
- assign \req_l_s_req 3'000
+ assign \req_l_s_req 6'000000
assign \req_l_s_req $65
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:248"
- wire width 3 $67
+ wire width 6 $67
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:248"
cell $or $68
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \reset_w
connect \B \prev_wr_go
connect \Y $67
end
process $group_24
- assign \req_l_r_req 3'111
+ assign \req_l_r_req 6'111111
assign \req_l_r_req $67
sync init
end
attribute \enum_value_1000111 "OP_MFMSR"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
wire width 7 \oper_r__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 \oper_r__fn_unit
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 64 \oper_r__imm_data__imm
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \oper_r__imm_data__imm_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \oper_r__lk
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \oper_r__rc__rc
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \oper_r__rc__rc_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \oper_r__oe__oe
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \oper_r__oe__oe_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \oper_r__invert_a
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \oper_r__zero_a
- attribute \enum_base_type "CryIn"
- attribute \enum_value_00 "ZERO"
- attribute \enum_value_01 "ONE"
- attribute \enum_value_10 "CA"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 2 \oper_r__input_carry
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \oper_r__invert_out
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 3 \oper_r__write_cr__data
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \oper_r__write_cr__ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \oper_r__output_carry
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \oper_r__is_32bit
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \oper_r__is_signed
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 4 \oper_r__data_len
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 \oper_r__fn_unit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
wire width 32 \oper_r__insn
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 \oper_r__is_32bit
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 7 \oper_l__insn_type
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 7 \oper_l__insn_type$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 10 \oper_l__fn_unit
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 10 \oper_l__fn_unit$next
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 64 \oper_l__imm_data__imm
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 64 \oper_l__imm_data__imm$next
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__imm_data__imm_ok
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__imm_data__imm_ok$next
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__lk
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__lk$next
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__rc__rc
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__rc__rc$next
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__rc__rc_ok
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__rc__rc_ok$next
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__oe__oe
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__oe__oe$next
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__oe__oe_ok
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__oe__oe_ok$next
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__invert_a
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__invert_a$next
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__zero_a
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__zero_a$next
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 2 \oper_l__input_carry
+ wire width 11 \oper_l__fn_unit
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 2 \oper_l__input_carry$next
+ wire width 11 \oper_l__fn_unit$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__invert_out
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__invert_out$next
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 3 \oper_l__write_cr__data
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 3 \oper_l__write_cr__data$next
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__write_cr__ok
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__write_cr__ok$next
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__output_carry
+ wire width 32 \oper_l__insn
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__output_carry$next
+ wire width 32 \oper_l__insn$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 1 \oper_l__is_32bit
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 1 \oper_l__is_32bit$next
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__is_signed
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \oper_l__is_signed$next
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 4 \oper_l__data_len
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 4 \oper_l__data_len$next
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 32 \oper_l__insn
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 32 \oper_l__insn$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
- wire width 135 $69
+ wire width 51 $69
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
cell $mux $70
- parameter \WIDTH 135
- connect \A { \oper_l__insn \oper_l__data_len \oper_l__is_signed \oper_l__is_32bit \oper_l__output_carry { \oper_l__write_cr__ok \oper_l__write_cr__data } \oper_l__invert_out \oper_l__input_carry \oper_l__zero_a \oper_l__invert_a { \oper_l__oe__oe_ok \oper_l__oe__oe } { \oper_l__rc__rc_ok \oper_l__rc__rc } \oper_l__lk { \oper_l__imm_data__imm_ok \oper_l__imm_data__imm } \oper_l__fn_unit \oper_l__insn_type }
- connect \B { \oper_i__insn \oper_i__data_len \oper_i__is_signed \oper_i__is_32bit \oper_i__output_carry { \oper_i__write_cr__ok \oper_i__write_cr__data } \oper_i__invert_out \oper_i__input_carry \oper_i__zero_a \oper_i__invert_a { \oper_i__oe__oe_ok \oper_i__oe__oe } { \oper_i__rc__rc_ok \oper_i__rc__rc } \oper_i__lk { \oper_i__imm_data__imm_ok \oper_i__imm_data__imm } \oper_i__fn_unit \oper_i__insn_type }
+ parameter \WIDTH 51
+ connect \A { \oper_l__is_32bit \oper_l__insn \oper_l__fn_unit \oper_l__insn_type }
+ connect \B { \oper_i__is_32bit \oper_i__insn \oper_i__fn_unit \oper_i__insn_type }
connect \S \issue_i
connect \Y $69
end
process $group_25
assign \oper_r__insn_type 7'0000000
- assign \oper_r__fn_unit 10'0000000000
- assign \oper_r__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \oper_r__imm_data__imm_ok 1'0
- assign \oper_r__lk 1'0
- assign \oper_r__rc__rc 1'0
- assign \oper_r__rc__rc_ok 1'0
- assign \oper_r__oe__oe 1'0
- assign \oper_r__oe__oe_ok 1'0
- assign \oper_r__invert_a 1'0
- assign \oper_r__zero_a 1'0
- assign \oper_r__input_carry 2'00
- assign \oper_r__invert_out 1'0
- assign \oper_r__write_cr__data 3'000
- assign \oper_r__write_cr__ok 1'0
- assign \oper_r__output_carry 1'0
- assign \oper_r__is_32bit 1'0
- assign \oper_r__is_signed 1'0
- assign \oper_r__data_len 4'0000
+ assign \oper_r__fn_unit 11'00000000000
assign \oper_r__insn 32'00000000000000000000000000000000
- assign { \oper_r__insn \oper_r__data_len \oper_r__is_signed \oper_r__is_32bit \oper_r__output_carry { \oper_r__write_cr__ok \oper_r__write_cr__data } \oper_r__invert_out \oper_r__input_carry \oper_r__zero_a \oper_r__invert_a { \oper_r__oe__oe_ok \oper_r__oe__oe } { \oper_r__rc__rc_ok \oper_r__rc__rc } \oper_r__lk { \oper_r__imm_data__imm_ok \oper_r__imm_data__imm } \oper_r__fn_unit \oper_r__insn_type } $69
+ assign \oper_r__is_32bit 1'0
+ assign { \oper_r__is_32bit \oper_r__insn \oper_r__fn_unit \oper_r__insn_type } $69
sync init
end
- process $group_45
+ process $group_29
assign \oper_l__insn_type$next \oper_l__insn_type
assign \oper_l__fn_unit$next \oper_l__fn_unit
- assign \oper_l__imm_data__imm$next \oper_l__imm_data__imm
- assign \oper_l__imm_data__imm_ok$next \oper_l__imm_data__imm_ok
- assign \oper_l__lk$next \oper_l__lk
- assign \oper_l__rc__rc$next \oper_l__rc__rc
- assign \oper_l__rc__rc_ok$next \oper_l__rc__rc_ok
- assign \oper_l__oe__oe$next \oper_l__oe__oe
- assign \oper_l__oe__oe_ok$next \oper_l__oe__oe_ok
- assign \oper_l__invert_a$next \oper_l__invert_a
- assign \oper_l__zero_a$next \oper_l__zero_a
- assign \oper_l__input_carry$next \oper_l__input_carry
- assign \oper_l__invert_out$next \oper_l__invert_out
- assign \oper_l__write_cr__data$next \oper_l__write_cr__data
- assign \oper_l__write_cr__ok$next \oper_l__write_cr__ok
- assign \oper_l__output_carry$next \oper_l__output_carry
- assign \oper_l__is_32bit$next \oper_l__is_32bit
- assign \oper_l__is_signed$next \oper_l__is_signed
- assign \oper_l__data_len$next \oper_l__data_len
assign \oper_l__insn$next \oper_l__insn
+ assign \oper_l__is_32bit$next \oper_l__is_32bit
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
switch { \issue_i }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
case 1'1
- assign { \oper_l__insn$next \oper_l__data_len$next \oper_l__is_signed$next \oper_l__is_32bit$next \oper_l__output_carry$next { \oper_l__write_cr__ok$next \oper_l__write_cr__data$next } \oper_l__invert_out$next \oper_l__input_carry$next \oper_l__zero_a$next \oper_l__invert_a$next { \oper_l__oe__oe_ok$next \oper_l__oe__oe$next } { \oper_l__rc__rc_ok$next \oper_l__rc__rc$next } \oper_l__lk$next { \oper_l__imm_data__imm_ok$next \oper_l__imm_data__imm$next } \oper_l__fn_unit$next \oper_l__insn_type$next } { \oper_i__insn \oper_i__data_len \oper_i__is_signed \oper_i__is_32bit \oper_i__output_carry { \oper_i__write_cr__ok \oper_i__write_cr__data } \oper_i__invert_out \oper_i__input_carry \oper_i__zero_a \oper_i__invert_a { \oper_i__oe__oe_ok \oper_i__oe__oe } { \oper_i__rc__rc_ok \oper_i__rc__rc } \oper_i__lk { \oper_i__imm_data__imm_ok \oper_i__imm_data__imm } \oper_i__fn_unit \oper_i__insn_type }
- end
- attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
- switch \rst
- case 1'1
- assign \oper_l__imm_data__imm$next 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \oper_l__imm_data__imm_ok$next 1'0
- assign \oper_l__rc__rc$next 1'0
- assign \oper_l__rc__rc_ok$next 1'0
- assign \oper_l__oe__oe$next 1'0
- assign \oper_l__oe__oe_ok$next 1'0
- assign \oper_l__write_cr__data$next 3'000
- assign \oper_l__write_cr__ok$next 1'0
- assign \oper_l__insn$next 32'00000000000000000000000000000000
+ assign { \oper_l__is_32bit$next \oper_l__insn$next \oper_l__fn_unit$next \oper_l__insn_type$next } { \oper_i__is_32bit \oper_i__insn \oper_i__fn_unit \oper_i__insn_type }
end
sync init
update \oper_l__insn_type 7'0000000
- update \oper_l__fn_unit 10'0000000000
- update \oper_l__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
- update \oper_l__imm_data__imm_ok 1'0
- update \oper_l__lk 1'0
- update \oper_l__rc__rc 1'0
- update \oper_l__rc__rc_ok 1'0
- update \oper_l__oe__oe 1'0
- update \oper_l__oe__oe_ok 1'0
- update \oper_l__invert_a 1'0
- update \oper_l__zero_a 1'0
- update \oper_l__input_carry 2'00
- update \oper_l__invert_out 1'0
- update \oper_l__write_cr__data 3'000
- update \oper_l__write_cr__ok 1'0
- update \oper_l__output_carry 1'0
- update \oper_l__is_32bit 1'0
- update \oper_l__is_signed 1'0
- update \oper_l__data_len 4'0000
+ update \oper_l__fn_unit 11'00000000000
update \oper_l__insn 32'00000000000000000000000000000000
+ update \oper_l__is_32bit 1'0
sync posedge \clk
update \oper_l__insn_type \oper_l__insn_type$next
update \oper_l__fn_unit \oper_l__fn_unit$next
- update \oper_l__imm_data__imm \oper_l__imm_data__imm$next
- update \oper_l__imm_data__imm_ok \oper_l__imm_data__imm_ok$next
- update \oper_l__lk \oper_l__lk$next
- update \oper_l__rc__rc \oper_l__rc__rc$next
- update \oper_l__rc__rc_ok \oper_l__rc__rc_ok$next
- update \oper_l__oe__oe \oper_l__oe__oe$next
- update \oper_l__oe__oe_ok \oper_l__oe__oe_ok$next
- update \oper_l__invert_a \oper_l__invert_a$next
- update \oper_l__zero_a \oper_l__zero_a$next
- update \oper_l__input_carry \oper_l__input_carry$next
- update \oper_l__invert_out \oper_l__invert_out$next
- update \oper_l__write_cr__data \oper_l__write_cr__data$next
- update \oper_l__write_cr__ok \oper_l__write_cr__ok$next
- update \oper_l__output_carry \oper_l__output_carry$next
- update \oper_l__is_32bit \oper_l__is_32bit$next
- update \oper_l__is_signed \oper_l__is_signed$next
- update \oper_l__data_len \oper_l__data_len$next
update \oper_l__insn \oper_l__insn$next
+ update \oper_l__is_32bit \oper_l__is_32bit$next
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
wire width 64 \data_r0__o
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
cell $reduce_bool $73
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \Y_WIDTH 1
connect \A \alu_pulsem
connect \Y $72
connect \S $72
connect \Y $71
end
- process $group_65
+ process $group_33
assign \data_r0__o 64'0000000000000000000000000000000000000000000000000000000000000000
assign \data_r0__o_ok 1'0
assign { \data_r0__o_ok \data_r0__o } $71
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
cell $reduce_bool $76
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \Y_WIDTH 1
connect \A \alu_pulsem
connect \Y $75
end
- process $group_67
+ process $group_35
assign \data_r0_l__o$next \data_r0_l__o
assign \data_r0_l__o_ok$next \data_r0_l__o_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
update \data_r0_l__o_ok \data_r0_l__o_ok$next
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
- wire width 4 \data_r1__cr_a
+ wire width 64 \data_r1__spr1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
- wire width 1 \data_r1__cr_a_ok
+ wire width 1 \data_r1__spr1_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 4 \data_r1_l__cr_a
+ wire width 64 \data_r1_l__spr1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 4 \data_r1_l__cr_a$next
+ wire width 64 \data_r1_l__spr1$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \data_r1_l__cr_a_ok
+ wire width 1 \data_r1_l__spr1_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \data_r1_l__cr_a_ok$next
+ wire width 1 \data_r1_l__spr1_ok$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
- wire width 5 $77
+ wire width 65 $77
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
wire width 1 $78
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
cell $reduce_bool $79
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \Y_WIDTH 1
connect \A \alu_pulsem
connect \Y $78
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
cell $mux $80
- parameter \WIDTH 5
- connect \A { \data_r1_l__cr_a_ok \data_r1_l__cr_a }
- connect \B { \cr_a_ok \cr_a }
+ parameter \WIDTH 65
+ connect \A { \data_r1_l__spr1_ok \data_r1_l__spr1 }
+ connect \B { \spr1_ok \spr1 }
connect \S $78
connect \Y $77
end
- process $group_69
- assign \data_r1__cr_a 4'0000
- assign \data_r1__cr_a_ok 1'0
- assign { \data_r1__cr_a_ok \data_r1__cr_a } $77
+ process $group_37
+ assign \data_r1__spr1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \data_r1__spr1_ok 1'0
+ assign { \data_r1__spr1_ok \data_r1__spr1 } $77
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
cell $reduce_bool $82
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \Y_WIDTH 1
connect \A \alu_pulsem
connect \Y $81
end
- process $group_71
- assign \data_r1_l__cr_a$next \data_r1_l__cr_a
- assign \data_r1_l__cr_a_ok$next \data_r1_l__cr_a_ok
+ process $group_39
+ assign \data_r1_l__spr1$next \data_r1_l__spr1
+ assign \data_r1_l__spr1_ok$next \data_r1_l__spr1_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
switch { $81 }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
case 1'1
- assign { \data_r1_l__cr_a_ok$next \data_r1_l__cr_a$next } { \cr_a_ok \cr_a }
+ assign { \data_r1_l__spr1_ok$next \data_r1_l__spr1$next } { \spr1_ok \spr1 }
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \data_r1_l__cr_a_ok$next 1'0
+ assign \data_r1_l__spr1_ok$next 1'0
end
sync init
- update \data_r1_l__cr_a 4'0000
- update \data_r1_l__cr_a_ok 1'0
+ update \data_r1_l__spr1 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \data_r1_l__spr1_ok 1'0
sync posedge \clk
- update \data_r1_l__cr_a \data_r1_l__cr_a$next
- update \data_r1_l__cr_a_ok \data_r1_l__cr_a_ok$next
+ update \data_r1_l__spr1 \data_r1_l__spr1$next
+ update \data_r1_l__spr1_ok \data_r1_l__spr1_ok$next
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
- wire width 2 \data_r2__xer_ca
+ wire width 64 \data_r2__fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
- wire width 1 \data_r2__xer_ca_ok
+ wire width 1 \data_r2__fast1_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 2 \data_r2_l__xer_ca
+ wire width 64 \data_r2_l__fast1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 2 \data_r2_l__xer_ca$next
+ wire width 64 \data_r2_l__fast1$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \data_r2_l__xer_ca_ok
+ wire width 1 \data_r2_l__fast1_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 1 \data_r2_l__xer_ca_ok$next
+ wire width 1 \data_r2_l__fast1_ok$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
- wire width 3 $83
+ wire width 65 $83
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
wire width 1 $84
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
cell $reduce_bool $85
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \Y_WIDTH 1
connect \A \alu_pulsem
connect \Y $84
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
cell $mux $86
- parameter \WIDTH 3
- connect \A { \data_r2_l__xer_ca_ok \data_r2_l__xer_ca }
- connect \B { \xer_ca_ok \xer_ca }
+ parameter \WIDTH 65
+ connect \A { \data_r2_l__fast1_ok \data_r2_l__fast1 }
+ connect \B { \fast1_ok \fast1 }
connect \S $84
connect \Y $83
end
- process $group_73
- assign \data_r2__xer_ca 2'00
- assign \data_r2__xer_ca_ok 1'0
- assign { \data_r2__xer_ca_ok \data_r2__xer_ca } $83
+ process $group_41
+ assign \data_r2__fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \data_r2__fast1_ok 1'0
+ assign { \data_r2__fast1_ok \data_r2__fast1 } $83
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
cell $reduce_bool $88
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \Y_WIDTH 1
connect \A \alu_pulsem
connect \Y $87
end
- process $group_75
- assign \data_r2_l__xer_ca$next \data_r2_l__xer_ca
- assign \data_r2_l__xer_ca_ok$next \data_r2_l__xer_ca_ok
+ process $group_43
+ assign \data_r2_l__fast1$next \data_r2_l__fast1
+ assign \data_r2_l__fast1_ok$next \data_r2_l__fast1_ok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
switch { $87 }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
case 1'1
- assign { \data_r2_l__xer_ca_ok$next \data_r2_l__xer_ca$next } { \xer_ca_ok \xer_ca }
+ assign { \data_r2_l__fast1_ok$next \data_r2_l__fast1$next } { \fast1_ok \fast1 }
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \data_r2_l__xer_ca_ok$next 1'0
+ assign \data_r2_l__fast1_ok$next 1'0
end
sync init
- update \data_r2_l__xer_ca 2'00
- update \data_r2_l__xer_ca_ok 1'0
+ update \data_r2_l__fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \data_r2_l__fast1_ok 1'0
sync posedge \clk
- update \data_r2_l__xer_ca \data_r2_l__xer_ca$next
- update \data_r2_l__xer_ca_ok \data_r2_l__xer_ca_ok$next
+ update \data_r2_l__fast1 \data_r2_l__fast1$next
+ update \data_r2_l__fast1_ok \data_r2_l__fast1_ok$next
end
- process $group_77
- assign \wrmask 3'000
- assign \wrmask { \data_r2__xer_ca_ok \data_r1__cr_a_ok \data_r0__o_ok }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
+ wire width 1 \data_r3__xer_so
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
+ wire width 1 \data_r3__xer_so_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \data_r3_l__xer_so
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \data_r3_l__xer_so$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \data_r3_l__xer_so_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \data_r3_l__xer_so_ok$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ wire width 2 $89
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
+ wire width 1 $90
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
+ cell $reduce_bool $91
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 6
+ parameter \Y_WIDTH 1
+ connect \A \alu_pulsem
+ connect \Y $90
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ cell $mux $92
+ parameter \WIDTH 2
+ connect \A { \data_r3_l__xer_so_ok \data_r3_l__xer_so }
+ connect \B { \xer_so_ok \xer_so }
+ connect \S $90
+ connect \Y $89
+ end
+ process $group_45
+ assign \data_r3__xer_so 1'0
+ assign \data_r3__xer_so_ok 1'0
+ assign { \data_r3__xer_so_ok \data_r3__xer_so } $89
sync init
end
- process $group_78
- assign \alu_logical0_op__insn_type 7'0000000
- assign \alu_logical0_op__fn_unit 10'0000000000
- assign \alu_logical0_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \alu_logical0_op__imm_data__imm_ok 1'0
- assign \alu_logical0_op__lk 1'0
- assign \alu_logical0_op__rc__rc 1'0
- assign \alu_logical0_op__rc__rc_ok 1'0
- assign \alu_logical0_op__oe__oe 1'0
- assign \alu_logical0_op__oe__oe_ok 1'0
- assign \alu_logical0_op__invert_a 1'0
- assign \alu_logical0_op__zero_a 1'0
- assign \alu_logical0_op__input_carry 2'00
- assign \alu_logical0_op__invert_out 1'0
- assign \alu_logical0_op__write_cr__data 3'000
- assign \alu_logical0_op__write_cr__ok 1'0
- assign \alu_logical0_op__output_carry 1'0
- assign \alu_logical0_op__is_32bit 1'0
- assign \alu_logical0_op__is_signed 1'0
- assign \alu_logical0_op__data_len 4'0000
- assign \alu_logical0_op__insn 32'00000000000000000000000000000000
- assign { \alu_logical0_op__insn \alu_logical0_op__data_len \alu_logical0_op__is_signed \alu_logical0_op__is_32bit \alu_logical0_op__output_carry { \alu_logical0_op__write_cr__ok \alu_logical0_op__write_cr__data } \alu_logical0_op__invert_out \alu_logical0_op__input_carry \alu_logical0_op__zero_a \alu_logical0_op__invert_a { \alu_logical0_op__oe__oe_ok \alu_logical0_op__oe__oe } { \alu_logical0_op__rc__rc_ok \alu_logical0_op__rc__rc } \alu_logical0_op__lk { \alu_logical0_op__imm_data__imm_ok \alu_logical0_op__imm_data__imm } \alu_logical0_op__fn_unit \alu_logical0_op__insn_type } { \oper_r__insn \oper_r__data_len \oper_r__is_signed \oper_r__is_32bit \oper_r__output_carry { \oper_r__write_cr__ok \oper_r__write_cr__data } \oper_r__invert_out \oper_r__input_carry \oper_r__zero_a \oper_r__invert_a { \oper_r__oe__oe_ok \oper_r__oe__oe } { \oper_r__rc__rc_ok \oper_r__rc__rc } \oper_r__lk { \oper_r__imm_data__imm_ok \oper_r__imm_data__imm } \oper_r__fn_unit \oper_r__insn_type }
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
+ wire width 1 $93
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
+ cell $reduce_bool $94
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 6
+ parameter \Y_WIDTH 1
+ connect \A \alu_pulsem
+ connect \Y $93
+ end
+ process $group_47
+ assign \data_r3_l__xer_so$next \data_r3_l__xer_so
+ assign \data_r3_l__xer_so_ok$next \data_r3_l__xer_so_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ switch { $93 }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ case 1'1
+ assign { \data_r3_l__xer_so_ok$next \data_r3_l__xer_so$next } { \xer_so_ok \xer_so }
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \data_r3_l__xer_so_ok$next 1'0
+ end
sync init
+ update \data_r3_l__xer_so 1'0
+ update \data_r3_l__xer_so_ok 1'0
+ sync posedge \clk
+ update \data_r3_l__xer_so \data_r3_l__xer_so$next
+ update \data_r3_l__xer_so_ok \data_r3_l__xer_so_ok$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:158"
- wire width 1 \src_sel
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:159"
- wire width 1 $89
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:159"
- cell $mux $90
- parameter \WIDTH 1
- connect \A \src_l_q_src [0]
- connect \B \opc_l_q_opc
- connect \S \oper_r__zero_a
- connect \Y $89
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
+ wire width 2 \data_r4__xer_ov
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
+ wire width 1 \data_r4__xer_ov_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 2 \data_r4_l__xer_ov
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 2 \data_r4_l__xer_ov$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \data_r4_l__xer_ov_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \data_r4_l__xer_ov_ok$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ wire width 3 $95
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
+ wire width 1 $96
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
+ cell $reduce_bool $97
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 6
+ parameter \Y_WIDTH 1
+ connect \A \alu_pulsem
+ connect \Y $96
end
- process $group_98
- assign \src_sel 1'0
- assign \src_sel $89
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ cell $mux $98
+ parameter \WIDTH 3
+ connect \A { \data_r4_l__xer_ov_ok \data_r4_l__xer_ov }
+ connect \B { \xer_ov_ok \xer_ov }
+ connect \S $96
+ connect \Y $95
+ end
+ process $group_49
+ assign \data_r4__xer_ov 2'00
+ assign \data_r4__xer_ov_ok 1'0
+ assign { \data_r4__xer_ov_ok \data_r4__xer_ov } $95
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:157"
- wire width 64 \src_or_imm
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:160"
- wire width 64 $91
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:160"
- cell $mux $92
- parameter \WIDTH 64
- connect \A \src1_i
- connect \B 64'0000000000000000000000000000000000000000000000000000000000000000
- connect \S \oper_r__zero_a
- connect \Y $91
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
+ wire width 1 $99
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
+ cell $reduce_bool $100
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 6
+ parameter \Y_WIDTH 1
+ connect \A \alu_pulsem
+ connect \Y $99
end
- process $group_99
- assign \src_or_imm 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \src_or_imm $91
+ process $group_51
+ assign \data_r4_l__xer_ov$next \data_r4_l__xer_ov
+ assign \data_r4_l__xer_ov_ok$next \data_r4_l__xer_ov_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ switch { $99 }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ case 1'1
+ assign { \data_r4_l__xer_ov_ok$next \data_r4_l__xer_ov$next } { \xer_ov_ok \xer_ov }
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \data_r4_l__xer_ov_ok$next 1'0
+ end
sync init
+ update \data_r4_l__xer_ov 2'00
+ update \data_r4_l__xer_ov_ok 1'0
+ sync posedge \clk
+ update \data_r4_l__xer_ov \data_r4_l__xer_ov$next
+ update \data_r4_l__xer_ov_ok \data_r4_l__xer_ov_ok$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:158"
- wire width 1 \src_sel$93
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:159"
- wire width 1 $94
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:159"
- cell $mux $95
- parameter \WIDTH 1
- connect \A \src_l_q_src [1]
- connect \B \opc_l_q_opc
- connect \S \oper_r__imm_data__imm_ok
- connect \Y $94
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
+ wire width 2 \data_r5__xer_ca
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:262"
+ wire width 1 \data_r5__xer_ca_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 2 \data_r5_l__xer_ca
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 2 \data_r5_l__xer_ca$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \data_r5_l__xer_ca_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
+ wire width 1 \data_r5_l__xer_ca_ok$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ wire width 3 $101
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
+ wire width 1 $102
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ast.py:730"
+ cell $reduce_bool $103
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 6
+ parameter \Y_WIDTH 1
+ connect \A \alu_pulsem
+ connect \Y $102
end
- process $group_100
- assign \src_sel$93 1'0
- assign \src_sel$93 $94
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ cell $mux $104
+ parameter \WIDTH 3
+ connect \A { \data_r5_l__xer_ca_ok \data_r5_l__xer_ca }
+ connect \B { \xer_ca_ok \xer_ca }
+ connect \S $102
+ connect \Y $101
+ end
+ process $group_53
+ assign \data_r5__xer_ca 2'00
+ assign \data_r5__xer_ca_ok 1'0
+ assign { \data_r5__xer_ca_ok \data_r5__xer_ca } $101
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:157"
- wire width 64 \src_or_imm$96
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:160"
- wire width 64 $97
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:160"
- cell $mux $98
- parameter \WIDTH 64
- connect \A \src2_i
- connect \B \oper_r__imm_data__imm
- connect \S \oper_r__imm_data__imm_ok
- connect \Y $97
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
+ wire width 1 $105
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
+ cell $reduce_bool $106
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 6
+ parameter \Y_WIDTH 1
+ connect \A \alu_pulsem
+ connect \Y $105
end
- process $group_101
- assign \src_or_imm$96 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \src_or_imm$96 $97
+ process $group_55
+ assign \data_r5_l__xer_ca$next \data_r5_l__xer_ca
+ assign \data_r5_l__xer_ca_ok$next \data_r5_l__xer_ca_ok
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ switch { $105 }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ case 1'1
+ assign { \data_r5_l__xer_ca_ok$next \data_r5_l__xer_ca$next } { \xer_ca_ok \xer_ca }
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \data_r5_l__xer_ca_ok$next 1'0
+ end
+ sync init
+ update \data_r5_l__xer_ca 2'00
+ update \data_r5_l__xer_ca_ok 1'0
+ sync posedge \clk
+ update \data_r5_l__xer_ca \data_r5_l__xer_ca$next
+ update \data_r5_l__xer_ca_ok \data_r5_l__xer_ca_ok$next
+ end
+ process $group_57
+ assign \wrmask 6'000000
+ assign \wrmask { \data_r5__xer_ca_ok \data_r4__xer_ov_ok \data_r3__xer_so_ok \data_r2__fast1_ok \data_r1__spr1_ok \data_r0__o_ok }
+ sync init
+ end
+ process $group_58
+ assign \alu_spr0_op__insn_type 7'0000000
+ assign \alu_spr0_op__fn_unit 11'00000000000
+ assign \alu_spr0_op__insn 32'00000000000000000000000000000000
+ assign \alu_spr0_op__is_32bit 1'0
+ assign { \alu_spr0_op__is_32bit \alu_spr0_op__insn \alu_spr0_op__fn_unit \alu_spr0_op__insn_type } { \oper_r__is_32bit \oper_r__insn \oper_r__fn_unit \oper_r__insn_type }
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:39"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:39"
wire width 64 \src_r0$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
- wire width 64 $99
+ wire width 64 $107
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
- cell $mux $100
+ cell $mux $108
parameter \WIDTH 64
connect \A \src_r0
- connect \B \src_or_imm
- connect \S \src_sel
- connect \Y $99
+ connect \B \src1_i
+ connect \S \src_l_q_src [0]
+ connect \Y $107
end
- process $group_102
- assign \alu_logical0_ra 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \alu_logical0_ra $99
+ process $group_62
+ assign \alu_spr0_ra 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \alu_spr0_ra $107
sync init
end
- process $group_103
+ process $group_63
assign \src_r0$next \src_r0
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
- switch { \src_sel }
+ switch { \src_l_q_src [0] }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
case 1'1
- assign \src_r0$next \src_or_imm
+ assign \src_r0$next \src1_i
end
sync init
update \src_r0 64'0000000000000000000000000000000000000000000000000000000000000000
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:39"
wire width 64 \src_r1$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
- wire width 64 $101
+ wire width 64 $109
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
- cell $mux $102
+ cell $mux $110
parameter \WIDTH 64
connect \A \src_r1
- connect \B \src_or_imm$96
- connect \S \src_sel$93
- connect \Y $101
+ connect \B \src2_i
+ connect \S \src_l_q_src [1]
+ connect \Y $109
end
- process $group_104
- assign \alu_logical0_rb 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \alu_logical0_rb $101
+ process $group_64
+ assign \alu_spr0_spr1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \alu_spr0_spr1 $109
sync init
end
- process $group_105
+ process $group_65
assign \src_r1$next \src_r1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
- switch { \src_sel$93 }
+ switch { \src_l_q_src [1] }
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
case 1'1
- assign \src_r1$next \src_or_imm$96
+ assign \src_r1$next \src2_i
end
sync init
update \src_r1 64'0000000000000000000000000000000000000000000000000000000000000000
sync posedge \clk
update \src_r1 \src_r1$next
end
- process $group_106
- assign \alu_logical0_p_valid_i 1'0
- assign \alu_logical0_p_valid_i \alui_l_q_alui
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:39"
+ wire width 64 \src_r2
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:39"
+ wire width 64 \src_r2$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ wire width 64 $111
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ cell $mux $112
+ parameter \WIDTH 64
+ connect \A \src_r2
+ connect \B \src3_i
+ connect \S \src_l_q_src [2]
+ connect \Y $111
+ end
+ process $group_66
+ assign \alu_spr0_fast1 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \alu_spr0_fast1 $111
+ sync init
+ end
+ process $group_67
+ assign \src_r2$next \src_r2
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ switch { \src_l_q_src [2] }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ case 1'1
+ assign \src_r2$next \src3_i
+ end
+ sync init
+ update \src_r2 64'0000000000000000000000000000000000000000000000000000000000000000
+ sync posedge \clk
+ update \src_r2 \src_r2$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:39"
+ wire width 1 \src_r3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:39"
+ wire width 1 \src_r3$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ wire width 1 $113
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ cell $mux $114
+ parameter \WIDTH 1
+ connect \A \src_r3
+ connect \B \src4_i
+ connect \S \src_l_q_src [3]
+ connect \Y $113
+ end
+ process $group_68
+ assign \alu_spr0_xer_so 1'0
+ assign \alu_spr0_xer_so $113
+ sync init
+ end
+ process $group_69
+ assign \src_r3$next \src_r3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ switch { \src_l_q_src [3] }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ case 1'1
+ assign \src_r3$next \src4_i
+ end
+ sync init
+ update \src_r3 1'0
+ sync posedge \clk
+ update \src_r3 \src_r3$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:39"
+ wire width 2 \src_r4
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:39"
+ wire width 2 \src_r4$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ wire width 2 $115
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ cell $mux $116
+ parameter \WIDTH 2
+ connect \A \src_r4
+ connect \B \src5_i
+ connect \S \src_l_q_src [4]
+ connect \Y $115
+ end
+ process $group_70
+ assign \alu_spr0_xer_ov 2'00
+ assign \alu_spr0_xer_ov $115
+ sync init
+ end
+ process $group_71
+ assign \src_r4$next \src_r4
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ switch { \src_l_q_src [4] }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ case 1'1
+ assign \src_r4$next \src5_i
+ end
+ sync init
+ update \src_r4 2'00
+ sync posedge \clk
+ update \src_r4 \src_r4$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:39"
+ wire width 2 \src_r5
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:39"
+ wire width 2 \src_r5$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ wire width 2 $117
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
+ cell $mux $118
+ parameter \WIDTH 2
+ connect \A \src_r5
+ connect \B \src6_i
+ connect \S \src_l_q_src [5]
+ connect \Y $117
+ end
+ process $group_72
+ assign \alu_spr0_xer_ca 2'00
+ assign \alu_spr0_xer_ca $117
+ sync init
+ end
+ process $group_73
+ assign \src_r5$next \src_r5
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ switch { \src_l_q_src [5] }
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:41"
+ case 1'1
+ assign \src_r5$next \src6_i
+ end
+ sync init
+ update \src_r5 2'00
+ sync posedge \clk
+ update \src_r5 \src_r5$next
+ end
+ process $group_74
+ assign \alu_spr0_p_valid_i 1'0
+ assign \alu_spr0_p_valid_i \alui_l_q_alui
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:321"
- wire width 1 $103
+ wire width 1 $119
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:321"
- cell $and $104
+ cell $and $120
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \alu_logical0_p_ready_o
+ connect \A \alu_spr0_p_ready_o
connect \B \alui_l_q_alui
- connect \Y $103
+ connect \Y $119
end
- process $group_107
+ process $group_75
assign \alui_l_r_alui$next \alui_l_r_alui
- assign \alui_l_r_alui$next $103
+ assign \alui_l_r_alui$next $119
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
sync posedge \clk
update \alui_l_r_alui \alui_l_r_alui$next
end
- process $group_108
+ process $group_76
assign \alui_l_s_alui 1'0
assign \alui_l_s_alui \all_rd_pulse
sync init
end
- process $group_109
- assign \alu_logical0_n_ready_i 1'0
- assign \alu_logical0_n_ready_i \alu_l_q_alu
+ process $group_77
+ assign \alu_spr0_n_ready_i 1'0
+ assign \alu_spr0_n_ready_i \alu_l_q_alu
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:328"
- wire width 1 $105
+ wire width 1 $121
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:328"
- cell $and $106
+ cell $and $122
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \alu_logical0_n_valid_o
+ connect \A \alu_spr0_n_valid_o
connect \B \alu_l_q_alu
- connect \Y $105
+ connect \Y $121
end
- process $group_110
+ process $group_78
assign \alu_l_r_alu$next \alu_l_r_alu
- assign \alu_l_r_alu$next $105
+ assign \alu_l_r_alu$next $121
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
sync posedge \clk
update \alu_l_r_alu \alu_l_r_alu$next
end
- process $group_111
+ process $group_79
assign \alu_l_s_alu 1'0
assign \alu_l_s_alu \all_rd_pulse
sync init
end
- process $group_112
+ process $group_80
assign \busy_o 1'0
assign \busy_o \opc_l_q_opc
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:341"
- wire width 2 $107
+ wire width 6 $123
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:341"
- cell $and $108
+ cell $and $124
parameter \A_SIGNED 0
- parameter \A_WIDTH 2
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 2
- parameter \Y_WIDTH 2
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \src_l_q_src
- connect \B { \busy_o \busy_o }
- connect \Y $107
- end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:164"
- wire width 1 $109
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:164"
- cell $not $110
- parameter \A_SIGNED 0
- parameter \A_WIDTH 1
- parameter \Y_WIDTH 1
- connect \A \oper_r__zero_a
- connect \Y $109
- end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:164"
- wire width 1 $111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:164"
- cell $not $112
- parameter \A_SIGNED 0
- parameter \A_WIDTH 1
- parameter \Y_WIDTH 1
- connect \A \oper_r__imm_data__imm_ok
- connect \Y $111
+ connect \B { \busy_o \busy_o \busy_o \busy_o \busy_o \busy_o }
+ connect \Y $123
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:341"
- wire width 2 $113
+ wire width 6 $125
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:341"
- cell $and $114
+ cell $and $126
parameter \A_SIGNED 0
- parameter \A_WIDTH 2
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 2
- parameter \Y_WIDTH 2
- connect \A $107
- connect \B { $111 $109 }
- connect \Y $113
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
+ connect \A $123
+ connect \B { 1'1 1'1 1'1 1'1 1'1 1'1 }
+ connect \Y $125
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:341"
- wire width 2 $115
+ wire width 6 $127
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:341"
- cell $not $116
+ cell $not $128
parameter \A_SIGNED 0
- parameter \A_WIDTH 2
- parameter \Y_WIDTH 2
+ parameter \A_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \rdmaskn
- connect \Y $115
+ connect \Y $127
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:341"
- wire width 2 $117
+ wire width 6 $129
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:341"
- cell $and $118
+ cell $and $130
parameter \A_SIGNED 0
- parameter \A_WIDTH 2
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 2
- parameter \Y_WIDTH 2
- connect \A $113
- connect \B $115
- connect \Y $117
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
+ connect \A $125
+ connect \B $127
+ connect \Y $129
end
- process $group_113
- assign \rd__rel 2'00
- assign \rd__rel $117
+ process $group_81
+ assign \rd__rel 6'000000
+ assign \rd__rel $129
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
- wire width 1 $119
+ wire width 1 $131
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
- cell $and $120
+ cell $and $132
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \busy_o
connect \B \shadown_i
- connect \Y $119
+ connect \Y $131
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
- wire width 1 $121
+ wire width 1 $133
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
- cell $and $122
+ cell $and $134
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \busy_o
connect \B \shadown_i
- connect \Y $121
+ connect \Y $133
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
- wire width 1 $123
+ wire width 1 $135
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
- cell $and $124
+ cell $and $136
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \busy_o
connect \B \shadown_i
- connect \Y $123
+ connect \Y $135
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
+ wire width 1 $137
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
+ cell $and $138
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \busy_o
+ connect \B \shadown_i
+ connect \Y $137
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
+ wire width 1 $139
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
+ cell $and $140
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \busy_o
+ connect \B \shadown_i
+ connect \Y $139
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
+ wire width 1 $141
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:344"
+ cell $and $142
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \busy_o
+ connect \B \shadown_i
+ connect \Y $141
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:345"
- wire width 3 $125
+ wire width 6 $143
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:345"
- cell $and $126
+ cell $and $144
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
connect \A \req_l_q_req
- connect \B { $119 $121 $123 }
- connect \Y $125
+ connect \B { $131 $133 $135 $137 $139 $141 }
+ connect \Y $143
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:345"
- wire width 3 $127
+ wire width 6 $145
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:345"
- cell $and $128
+ cell $and $146
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 6
parameter \B_SIGNED 0
- parameter \B_WIDTH 3
- parameter \Y_WIDTH 3
- connect \A $125
+ parameter \B_WIDTH 6
+ parameter \Y_WIDTH 6
+ connect \A $143
connect \B \wrmask
- connect \Y $127
+ connect \Y $145
end
- process $group_114
- assign \wr__rel 3'000
- assign \wr__rel $127
+ process $group_82
+ assign \wr__rel 6'000000
+ assign \wr__rel $145
sync init
end
- process $group_115
+ process $group_83
assign \dest1_o 64'0000000000000000000000000000000000000000000000000000000000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
switch { \wr__go [0] }
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
- wire width 4 \dest2_o
- process $group_116
- assign \dest2_o 4'0000
+ wire width 64 \dest2_o
+ process $group_84
+ assign \dest2_o 64'0000000000000000000000000000000000000000000000000000000000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
switch { \wr__go [1] }
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
case 1'1
- assign \dest2_o { \data_r1__cr_a_ok \data_r1__cr_a } [3:0]
+ assign \dest2_o { \data_r1__spr1_ok \data_r1__spr1 } [63:0]
end
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
- wire width 2 \dest3_o
- process $group_117
- assign \dest3_o 2'00
+ wire width 64 \dest3_o
+ process $group_85
+ assign \dest3_o 64'0000000000000000000000000000000000000000000000000000000000000000
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
switch { \wr__go [2] }
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
case 1'1
- assign \dest3_o { \data_r2__xer_ca_ok \data_r2__xer_ca } [1:0]
+ assign \dest3_o { \data_r2__fast1_ok \data_r2__fast1 } [63:0]
+ end
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
+ wire width 1 \dest4_o
+ process $group_86
+ assign \dest4_o 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
+ switch { \wr__go [3] }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
+ case 1'1
+ assign \dest4_o { \data_r3__xer_so_ok \data_r3__xer_so } [0]
+ end
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
+ wire width 2 \dest5_o
+ process $group_87
+ assign \dest5_o 2'00
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
+ switch { \wr__go [4] }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
+ case 1'1
+ assign \dest5_o { \data_r4__xer_ov_ok \data_r4__xer_ov } [1:0]
+ end
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
+ wire width 2 \dest6_o
+ process $group_88
+ assign \dest6_o 2'00
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
+ switch { \wr__go [5] }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:349"
+ case 1'1
+ assign \dest6_o { \data_r5__xer_ca_ok \data_r5__xer_ca } [1:0]
end
sync init
end
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.shiftrot0.alu_shift_rot0.p"
-module \p$57
+module \p$70
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
wire width 1 input 0 \p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.shiftrot0.alu_shift_rot0.n"
-module \n$58
+module \n$71
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
wire width 1 input 0 \n_valid_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.shiftrot0.alu_shift_rot0.pipe.p"
-module \p$60
+module \p$73
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:151"
wire width 1 input 0 \p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.shiftrot0.alu_shift_rot0.pipe.n"
-module \n$61
+module \n$74
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:244"
wire width 1 input 0 \n_valid_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:245"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.shiftrot0.alu_shift_rot0.pipe.input"
-module \input$62
+module \input$75
attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
wire width 2 input 0 \muxid
attribute \enum_base_type "InternalOp"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 input 1 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 input 2 \op__fn_unit
+ wire width 11 input 2 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 input 3 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 output 23 \op__insn_type$2
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 output 24 \op__fn_unit$3
+ wire width 11 output 24 \op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 output 25 \op__imm_data__imm$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
end
process $group_4
assign \op__insn_type$2 7'0000000
- assign \op__fn_unit$3 10'0000000000
+ assign \op__fn_unit$3 11'00000000000
assign \op__imm_data__imm$4 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$5 1'0
assign \op__rc__rc$6 1'0
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.shiftrot0.alu_shift_rot0.pipe.main"
-module \main$63
+module \main$76
attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
wire width 2 input 0 \muxid
attribute \enum_base_type "InternalOp"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 input 1 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 input 2 \op__fn_unit
+ wire width 11 input 2 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 input 3 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 output 22 \op__insn_type$2
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 output 23 \op__fn_unit$3
+ wire width 11 output 23 \op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 output 24 \op__imm_data__imm$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
end
process $group_20
assign \op__insn_type$2 7'0000000
- assign \op__fn_unit$3 10'0000000000
+ assign \op__fn_unit$3 11'00000000000
assign \op__imm_data__imm$4 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$5 1'0
assign \op__rc__rc$6 1'0
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.shiftrot0.alu_shift_rot0.pipe.output"
-module \output$64
+module \output$77
attribute \src "/home/lkcl/src/libresoc/ieee754fpu/src/ieee754/fpcommon/getop.py:60"
wire width 2 input 0 \muxid
attribute \enum_base_type "InternalOp"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 input 1 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 input 2 \op__fn_unit
+ wire width 11 input 2 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 input 3 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 output 23 \op__insn_type$2
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 output 24 \op__fn_unit$3
+ wire width 11 output 24 \op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 output 25 \op__imm_data__imm$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
end
process $group_16
assign \op__insn_type$2 7'0000000
- assign \op__fn_unit$3 10'0000000000
+ assign \op__fn_unit$3 11'00000000000
assign \op__imm_data__imm$4 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$5 1'0
assign \op__rc__rc$6 1'0
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.shiftrot0.alu_shift_rot0.pipe"
-module \pipe$59
+module \pipe$72
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 input 5 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 input 6 \op__fn_unit
+ wire width 11 input 6 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 input 7 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 \op__insn_type$2$next
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 output 30 \op__fn_unit$3
+ wire width 11 output 30 \op__fn_unit$3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 \op__fn_unit$3$next
+ wire width 11 \op__fn_unit$3$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 output 31 \op__imm_data__imm$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 1 output 51 \xer_ca_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \xer_ca_ok$next
- cell \p$60 \p
+ cell \p$73 \p
connect \p_valid_i \p_valid_i
connect \p_ready_o \p_ready_o
end
- cell \n$61 \n
+ cell \n$74 \n
connect \n_valid_o \n_valid_o
connect \n_ready_i \n_ready_i
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 \input_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 \input_op__fn_unit
+ wire width 11 \input_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 \input_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 \input_op__insn_type$21
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 \input_op__fn_unit$22
+ wire width 11 \input_op__fn_unit$22
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 \input_op__imm_data__imm$23
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 \input_rc$40
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/pipe_data.py:19"
wire width 2 \input_xer_ca$41
- cell \input$62 \input
+ cell \input$75 \input
connect \muxid \input_muxid
connect \op__insn_type \input_op__insn_type
connect \op__fn_unit \input_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 \main_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 \main_op__fn_unit
+ wire width 11 \main_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 \main_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 \main_op__insn_type$43
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 \main_op__fn_unit$44
+ wire width 11 \main_op__fn_unit$44
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 \main_op__imm_data__imm$45
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 1 \main_o_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 2 \main_xer_ca
- cell \main$63 \main
+ cell \main$76 \main
connect \muxid \main_muxid
connect \op__insn_type \main_op__insn_type
connect \op__fn_unit \main_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 \output_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 \output_op__fn_unit
+ wire width 11 \output_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 \output_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 \output_op__insn_type$61
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 \output_op__fn_unit$62
+ wire width 11 \output_op__fn_unit$62
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 \output_op__imm_data__imm$63
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 2 \output_xer_ca$81
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \output_xer_ca_ok
- cell \output$64 \output
+ cell \output$77 \output
connect \muxid \output_muxid
connect \op__insn_type \output_op__insn_type
connect \op__fn_unit \output_op__fn_unit
end
process $group_1
assign \input_op__insn_type 7'0000000
- assign \input_op__fn_unit 10'0000000000
+ assign \input_op__fn_unit 11'00000000000
assign \input_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \input_op__imm_data__imm_ok 1'0
assign \input_op__rc__rc 1'0
end
process $group_23
assign \main_op__insn_type 7'0000000
- assign \main_op__fn_unit 10'0000000000
+ assign \main_op__fn_unit 11'00000000000
assign \main_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \main_op__imm_data__imm_ok 1'0
assign \main_op__rc__rc 1'0
end
process $group_45
assign \output_op__insn_type 7'0000000
- assign \output_op__fn_unit 10'0000000000
+ assign \output_op__fn_unit 11'00000000000
assign \output_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \output_op__imm_data__imm_ok 1'0
assign \output_op__rc__rc 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 \op__insn_type$92
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 \op__fn_unit$93
+ wire width 11 \op__fn_unit$93
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 \op__imm_data__imm$94
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 32 \op__insn$108
process $group_72
assign \op__insn_type$92 7'0000000
- assign \op__fn_unit$93 10'0000000000
+ assign \op__fn_unit$93 11'00000000000
assign \op__imm_data__imm$94 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$95 1'0
assign \op__rc__rc$96 1'0
end
sync init
update \op__insn_type$2 7'0000000
- update \op__fn_unit$3 10'0000000000
+ update \op__fn_unit$3 11'00000000000
update \op__imm_data__imm$4 64'0000000000000000000000000000000000000000000000000000000000000000
update \op__imm_data__imm_ok$5 1'0
update \op__rc__rc$6 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 input 10 \op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 input 11 \op__fn_unit
+ wire width 11 input 11 \op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 input 12 \op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 1 input 31 \p_valid_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:152"
wire width 1 output 32 \p_ready_o
- cell \p$57 \p
+ cell \p$70 \p
connect \p_valid_i \p_valid_i
connect \p_ready_o \p_ready_o
end
- cell \n$58 \n
+ cell \n$71 \n
connect \n_valid_o \n_valid_o
connect \n_ready_i \n_ready_i
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 \pipe_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 \pipe_op__fn_unit
+ wire width 11 \pipe_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 \pipe_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 \pipe_op__insn_type$3
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 \pipe_op__fn_unit$4
+ wire width 11 \pipe_op__fn_unit$4
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 \pipe_op__imm_data__imm$5
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 2 \pipe_xer_ca$20
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \pipe_xer_ca_ok
- cell \pipe$59 \pipe
+ cell \pipe$72 \pipe
connect \rst \rst
connect \clk \clk
connect \p_valid_i \pipe_p_valid_i
end
process $group_3
assign \pipe_op__insn_type 7'0000000
- assign \pipe_op__fn_unit 10'0000000000
+ assign \pipe_op__fn_unit 11'00000000000
assign \pipe_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \pipe_op__imm_data__imm_ok 1'0
assign \pipe_op__rc__rc 1'0
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 \op__insn_type$22
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 \op__fn_unit$23
+ wire width 11 \op__fn_unit$23
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 \op__imm_data__imm$24
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 32 \op__insn$38
process $group_27
assign \op__insn_type$22 7'0000000
- assign \op__fn_unit$23 10'0000000000
+ assign \op__fn_unit$23 11'00000000000
assign \op__imm_data__imm$24 64'0000000000000000000000000000000000000000000000000000000000000000
assign \op__imm_data__imm_ok$25 1'0
assign \op__rc__rc$26 1'0
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.shiftrot0.src_l"
-module \src_l$65
+module \src_l$78
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.shiftrot0.opc_l"
-module \opc_l$66
+module \opc_l$79
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.shiftrot0.req_l"
-module \req_l$67
+module \req_l$80
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.shiftrot0.rst_l"
-module \rst_l$68
+module \rst_l$81
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.shiftrot0.rok_l"
-module \rok_l$69
+module \rok_l$82
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.shiftrot0.alui_l"
-module \alui_l$70
+module \alui_l$83
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.shiftrot0.alu_l"
-module \alu_l$71
+module \alu_l$84
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 input 2 \oper_i__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 input 3 \oper_i__fn_unit
+ wire width 11 input 3 \oper_i__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 input 4 \oper_i__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 \alu_shift_rot0_op__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 \alu_shift_rot0_op__fn_unit
+ wire width 11 \alu_shift_rot0_op__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 \alu_shift_rot0_op__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 4 \src_l_r_src$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
wire width 4 \src_l_q_src
- cell \src_l$65 \src_l
+ cell \src_l$78 \src_l
connect \rst \rst
connect \clk \clk
connect \s_src \src_l_s_src
wire width 1 \opc_l_r_opc$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
wire width 1 \opc_l_q_opc
- cell \opc_l$66 \opc_l
+ cell \opc_l$79 \opc_l
connect \rst \rst
connect \clk \clk
connect \s_opc \opc_l_s_opc
wire width 3 \req_l_s_req
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
wire width 3 \req_l_r_req
- cell \req_l$67 \req_l
+ cell \req_l$80 \req_l
connect \rst \rst
connect \clk \clk
connect \q_req \req_l_q_req
wire width 1 \rst_l_s_rst
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
wire width 1 \rst_l_r_rst
- cell \rst_l$68 \rst_l
+ cell \rst_l$81 \rst_l
connect \rst \rst
connect \clk \clk
connect \s_rst \rst_l_s_rst
wire width 1 \rok_l_r_rdok
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:59"
wire width 1 \rok_l_r_rdok$next
- cell \rok_l$69 \rok_l
+ cell \rok_l$82 \rok_l
connect \rst \rst
connect \clk \clk
connect \q_rdok \rok_l_q_rdok
wire width 1 \alui_l_r_alui$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
wire width 1 \alui_l_s_alui
- cell \alui_l$70 \alui_l
+ cell \alui_l$83 \alui_l
connect \rst \rst
connect \clk \clk
connect \q_alui \alui_l_q_alui
wire width 1 \alu_l_r_alu$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:58"
wire width 1 \alu_l_s_alu
- cell \alu_l$71 \alu_l
+ cell \alu_l$84 \alu_l
connect \rst \rst
connect \clk \clk
connect \q_alu \alu_l_q_alu
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 7 \oper_r__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 \oper_r__fn_unit
+ wire width 11 \oper_r__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
wire width 64 \oper_r__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 7 \oper_l__insn_type$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 10 \oper_l__fn_unit
+ wire width 11 \oper_l__fn_unit
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
- wire width 10 \oper_l__fn_unit$next
+ wire width 11 \oper_l__fn_unit$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 64 \oper_l__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:37"
wire width 32 \oper_l__insn$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
- wire width 129 $69
+ wire width 130 $69
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:40"
cell $mux $70
- parameter \WIDTH 129
+ parameter \WIDTH 130
connect \A { \oper_l__insn \oper_l__is_signed \oper_l__is_32bit \oper_l__output_cr \oper_l__input_cr \oper_l__output_carry \oper_l__input_carry { \oper_l__write_cr__ok \oper_l__write_cr__data } { \oper_l__oe__oe_ok \oper_l__oe__oe } { \oper_l__rc__rc_ok \oper_l__rc__rc } { \oper_l__imm_data__imm_ok \oper_l__imm_data__imm } \oper_l__fn_unit \oper_l__insn_type }
connect \B { \oper_i__insn \oper_i__is_signed \oper_i__is_32bit \oper_i__output_cr \oper_i__input_cr \oper_i__output_carry \oper_i__input_carry { \oper_i__write_cr__ok \oper_i__write_cr__data } { \oper_i__oe__oe_ok \oper_i__oe__oe } { \oper_i__rc__rc_ok \oper_i__rc__rc } { \oper_i__imm_data__imm_ok \oper_i__imm_data__imm } \oper_i__fn_unit \oper_i__insn_type }
connect \S \issue_i
end
process $group_25
assign \oper_r__insn_type 7'0000000
- assign \oper_r__fn_unit 10'0000000000
+ assign \oper_r__fn_unit 11'00000000000
assign \oper_r__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \oper_r__imm_data__imm_ok 1'0
assign \oper_r__rc__rc 1'0
end
sync init
update \oper_l__insn_type 7'0000000
- update \oper_l__fn_unit 10'0000000000
+ update \oper_l__fn_unit 11'00000000000
update \oper_l__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
update \oper_l__imm_data__imm_ok 1'0
update \oper_l__rc__rc 1'0
end
process $group_72
assign \alu_shift_rot0_op__insn_type 7'0000000
- assign \alu_shift_rot0_op__fn_unit 10'0000000000
+ assign \alu_shift_rot0_op__fn_unit 11'00000000000
assign \alu_shift_rot0_op__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \alu_shift_rot0_op__imm_data__imm_ok 1'0
assign \alu_shift_rot0_op__rc__rc 1'0
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.ldst0.opc_l"
-module \opc_l$72
+module \opc_l$85
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.ldst0.src_l"
-module \src_l$73
+module \src_l$86
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.ldst0.alu_l"
-module \alu_l$74
+module \alu_l$87
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fus.ldst0.rst_l"
-module \rst_l$75
+module \rst_l$88
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 \opc_l_r_opc$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
wire width 1 \opc_l_q_opc
- cell \opc_l$72 \opc_l
+ cell \opc_l$85 \opc_l
connect \rst \rst
connect \clk \clk
connect \s_opc \opc_l_s_opc
wire width 3 \src_l_r_src$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
wire width 3 \src_l_q_src
- cell \src_l$73 \src_l
+ cell \src_l$86 \src_l
connect \rst \rst
connect \clk \clk
connect \s_src \src_l_s_src
wire width 1 \alu_l_r_alu
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
wire width 1 \alu_l_q_alu
- cell \alu_l$74 \alu_l
+ cell \alu_l$87 \alu_l
connect \rst \rst
connect \clk \clk
connect \s_alu \alu_l_s_alu
wire width 1 \rst_l_r_rst
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
wire width 1 \rst_l_q_rst
- cell \rst_l$75 \rst_l
+ cell \rst_l$88 \rst_l
connect \rst \rst
connect \clk \clk
connect \s_rst \rst_l_s_rst
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 7 input 6 \oper_i__insn_type
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 input 7 \oper_i__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 input 7 \oper_i__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 input 8 \oper_i__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
attribute \enum_value_1000111 "OP_MFMSR"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 7 input 33 \oper_i__insn_type$1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
+ wire width 7 input 33 \oper_i__insn_type$1
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
+ wire width 11 input 34 \oper_i__fn_unit$2
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
+ wire width 32 input 35 \oper_i__insn$3
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
+ wire width 1 input 36 \oper_i__read_cr_whole
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
+ wire width 1 input 37 \oper_i__write_cr_whole
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
+ wire width 1 input 38 \issue_i$4
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
+ wire width 1 output 39 \busy_o$5
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
+ wire width 6 input 40 \rdmaskn$6
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
+ wire width 7 input 41 \oper_i__insn_type$7
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 input 34 \oper_i__fn_unit$2
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 32 input 35 \oper_i__insn$3
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 1 input 36 \oper_i__read_cr_whole
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 1 input 37 \oper_i__write_cr_whole
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
+ wire width 11 input 42 \oper_i__fn_unit$8
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
+ wire width 64 input 43 \oper_i__imm_data__imm$9
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
+ wire width 1 input 44 \oper_i__imm_data__imm_ok$10
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
+ wire width 1 input 45 \oper_i__lk$11
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
+ wire width 1 input 46 \oper_i__is_32bit$12
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
+ wire width 32 input 47 \oper_i__insn$13
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
- wire width 1 input 38 \issue_i$4
+ wire width 1 input 48 \issue_i$14
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
- wire width 1 output 39 \busy_o$5
+ wire width 1 output 49 \busy_o$15
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
- wire width 6 input 40 \rdmaskn$6
+ wire width 4 input 50 \rdmaskn$16
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1000111 "OP_MFMSR"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 7 input 41 \oper_i__insn_type$7
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
+ wire width 7 input 51 \oper_i__insn_type$17
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 input 42 \oper_i__fn_unit$8
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 64 input 43 \oper_i__imm_data__imm$9
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 1 input 44 \oper_i__imm_data__imm_ok$10
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 1 input 45 \oper_i__lk$11
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 1 input 46 \oper_i__is_32bit$12
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 32 input 47 \oper_i__insn$13
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
+ wire width 11 input 52 \oper_i__fn_unit$18
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
+ wire width 32 input 53 \oper_i__insn$19
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
+ wire width 1 input 54 \oper_i__is_32bit$20
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
+ wire width 5 input 55 \oper_i__traptype
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
+ wire width 13 input 56 \oper_i__trapaddr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
- wire width 1 input 48 \issue_i$14
+ wire width 1 input 57 \issue_i$21
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
- wire width 1 output 49 \busy_o$15
+ wire width 1 output 58 \busy_o$22
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
- wire width 4 input 50 \rdmaskn$16
+ wire width 6 input 59 \rdmaskn$23
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1000111 "OP_MFMSR"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 7 input 51 \oper_i__insn_type$17
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 7 input 60 \oper_i__insn_type$24
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 input 52 \oper_i__fn_unit$18
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 32 input 53 \oper_i__insn$19
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 1 input 54 \oper_i__is_32bit$20
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 input 55 \oper_i__traptype
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 13 input 56 \oper_i__trapaddr
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 input 61 \oper_i__fn_unit$25
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 64 input 62 \oper_i__imm_data__imm$26
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 63 \oper_i__imm_data__imm_ok$27
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 64 \oper_i__lk$28
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 65 \oper_i__rc__rc$29
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 66 \oper_i__rc__rc_ok$30
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 67 \oper_i__oe__oe$31
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 68 \oper_i__oe__oe_ok$32
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 69 \oper_i__invert_a$33
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 70 \oper_i__zero_a$34
+ attribute \enum_base_type "CryIn"
+ attribute \enum_value_00 "ZERO"
+ attribute \enum_value_01 "ONE"
+ attribute \enum_value_10 "CA"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 2 input 71 \oper_i__input_carry$35
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 72 \oper_i__invert_out$36
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 3 input 73 \oper_i__write_cr__data$37
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 74 \oper_i__write_cr__ok$38
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 75 \oper_i__output_carry$39
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 76 \oper_i__is_32bit$40
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 input 77 \oper_i__is_signed$41
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 4 input 78 \oper_i__data_len$42
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 32 input 79 \oper_i__insn$43
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
- wire width 1 input 57 \issue_i$21
+ wire width 1 input 80 \issue_i$44
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
- wire width 1 output 58 \busy_o$22
+ wire width 1 output 81 \busy_o$45
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
- wire width 6 input 59 \rdmaskn$23
+ wire width 2 input 82 \rdmaskn$46
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1000111 "OP_MFMSR"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 7 input 60 \oper_i__insn_type$24
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 7 input 83 \oper_i__insn_type$47
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 input 61 \oper_i__fn_unit$25
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 64 input 62 \oper_i__imm_data__imm$26
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 63 \oper_i__imm_data__imm_ok$27
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 64 \oper_i__lk$28
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 65 \oper_i__rc__rc$29
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 66 \oper_i__rc__rc_ok$30
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 67 \oper_i__oe__oe$31
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 68 \oper_i__oe__oe_ok$32
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 69 \oper_i__invert_a$33
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 70 \oper_i__zero_a$34
- attribute \enum_base_type "CryIn"
- attribute \enum_value_00 "ZERO"
- attribute \enum_value_01 "ONE"
- attribute \enum_value_10 "CA"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 2 input 71 \oper_i__input_carry$35
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 72 \oper_i__invert_out$36
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 3 input 73 \oper_i__write_cr__data$37
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 74 \oper_i__write_cr__ok$38
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 75 \oper_i__output_carry$39
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 76 \oper_i__is_32bit$40
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 input 77 \oper_i__is_signed$41
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 4 input 78 \oper_i__data_len$42
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 32 input 79 \oper_i__insn$43
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 input 84 \oper_i__fn_unit$48
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 input 85 \oper_i__insn$49
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 input 86 \oper_i__is_32bit$50
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
- wire width 1 input 80 \issue_i$44
+ wire width 1 input 87 \issue_i$51
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
- wire width 1 output 81 \busy_o$45
+ wire width 1 output 88 \busy_o$52
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
- wire width 2 input 82 \rdmaskn$46
+ wire width 6 input 89 \rdmaskn$53
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 7 input 83 \oper_i__insn_type$47
+ wire width 7 input 90 \oper_i__insn_type$54
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 input 84 \oper_i__fn_unit$48
+ wire width 11 input 91 \oper_i__fn_unit$55
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 64 input 85 \oper_i__imm_data__imm$49
+ wire width 64 input 92 \oper_i__imm_data__imm$56
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 input 86 \oper_i__imm_data__imm_ok$50
+ wire width 1 input 93 \oper_i__imm_data__imm_ok$57
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 input 87 \oper_i__rc__rc$51
+ wire width 1 input 94 \oper_i__rc__rc$58
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 input 88 \oper_i__rc__rc_ok$52
+ wire width 1 input 95 \oper_i__rc__rc_ok$59
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 input 89 \oper_i__oe__oe$53
+ wire width 1 input 96 \oper_i__oe__oe$60
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 input 90 \oper_i__oe__oe_ok$54
+ wire width 1 input 97 \oper_i__oe__oe_ok$61
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 3 input 91 \oper_i__write_cr__data$55
+ wire width 3 input 98 \oper_i__write_cr__data$62
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 input 92 \oper_i__write_cr__ok$56
+ wire width 1 input 99 \oper_i__write_cr__ok$63
attribute \enum_base_type "CryIn"
attribute \enum_value_00 "ZERO"
attribute \enum_value_01 "ONE"
attribute \enum_value_10 "CA"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 2 input 93 \oper_i__input_carry$57
+ wire width 2 input 100 \oper_i__input_carry$64
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 input 94 \oper_i__output_carry$58
+ wire width 1 input 101 \oper_i__output_carry$65
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 input 95 \oper_i__input_cr$59
+ wire width 1 input 102 \oper_i__input_cr$66
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 input 96 \oper_i__output_cr$60
+ wire width 1 input 103 \oper_i__output_cr$67
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 input 97 \oper_i__is_32bit$61
+ wire width 1 input 104 \oper_i__is_32bit$68
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 input 98 \oper_i__is_signed$62
+ wire width 1 input 105 \oper_i__is_signed$69
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 32 input 99 \oper_i__insn$63
+ wire width 32 input 106 \oper_i__insn$70
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
- wire width 1 input 100 \issue_i$64
+ wire width 1 input 107 \issue_i$71
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
- wire width 1 output 101 \busy_o$65
+ wire width 1 output 108 \busy_o$72
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
- wire width 4 input 102 \rdmaskn$66
+ wire width 4 input 109 \rdmaskn$73
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 7 input 103 \oper_i__insn_type$67
+ wire width 7 input 110 \oper_i__insn_type$74
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 64 input 104 \oper_i__imm_data__imm$68
+ wire width 64 input 111 \oper_i__imm_data__imm$75
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 input 105 \oper_i__imm_data__imm_ok$69
+ wire width 1 input 112 \oper_i__imm_data__imm_ok$76
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 input 106 \oper_i__zero_a$70
+ wire width 1 input 113 \oper_i__zero_a$77
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 input 107 \oper_i__is_32bit$71
+ wire width 1 input 114 \oper_i__is_32bit$78
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 input 108 \oper_i__is_signed$72
+ wire width 1 input 115 \oper_i__is_signed$79
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 4 input 109 \oper_i__data_len$73
+ wire width 4 input 116 \oper_i__data_len$80
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 input 110 \oper_i__byte_reverse$74
+ wire width 1 input 117 \oper_i__byte_reverse$81
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 input 111 \oper_i__sign_extend$75
+ wire width 1 input 118 \oper_i__sign_extend$82
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 input 112 \oper_i__update
+ wire width 1 input 119 \oper_i__update
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
- wire width 1 input 113 \issue_i$76
+ wire width 1 input 120 \issue_i$83
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
- wire width 1 output 114 \busy_o$77
+ wire width 1 output 121 \busy_o$84
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
- wire width 3 input 115 \rdmaskn$78
+ wire width 3 input 122 \rdmaskn$85
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 4 output 123 \rd__rel
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 4 input 124 \rd__go
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 64 input 125 \src1_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 4 output 116 \rd__rel
+ wire width 6 output 126 \rd__rel$86
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 4 input 117 \rd__go
+ wire width 6 input 127 \rd__go$87
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 118 \src1_i
+ wire width 64 input 128 \src1_i$88
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 6 output 119 \rd__rel$79
+ wire width 6 output 129 \rd__rel$89
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 6 input 120 \rd__go$80
+ wire width 6 input 130 \rd__go$90
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 121 \src1_i$81
+ wire width 64 input 131 \src1_i$91
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 6 output 122 \rd__rel$82
+ wire width 2 output 132 \rd__rel$92
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 6 input 123 \rd__go$83
+ wire width 2 input 133 \rd__go$93
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 124 \src1_i$84
+ wire width 64 input 134 \src1_i$94
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 2 output 125 \rd__rel$85
+ wire width 6 output 135 \rd__rel$95
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 2 input 126 \rd__go$86
+ wire width 6 input 136 \rd__go$96
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 127 \src1_i$87
+ wire width 64 input 137 \src1_i$97
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 4 output 128 \rd__rel$88
+ wire width 4 output 138 \rd__rel$98
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 4 input 129 \rd__go$89
+ wire width 4 input 139 \rd__go$99
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 130 \src1_i$90
+ wire width 64 input 140 \src1_i$100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 131 \rd__rel$91
+ wire width 3 output 141 \rd__rel$101
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 input 132 \rd__go$92
+ wire width 3 input 142 \rd__go$102
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 133 \src1_i$93
+ wire width 64 input 143 \src1_i$103
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 134 \src2_i
+ wire width 64 input 144 \src2_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 135 \src2_i$94
+ wire width 64 input 145 \src2_i$104
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 136 \src2_i$95
+ wire width 64 input 146 \src2_i$105
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 137 \src2_i$96
+ wire width 64 input 147 \src2_i$106
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 138 \src2_i$97
+ wire width 64 input 148 \src2_i$107
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 139 \src2_i$98
+ wire width 64 input 149 \src2_i$108
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 140 \src3_i
+ wire width 64 input 150 \src3_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 141 \src3_i$99
+ wire width 64 input 151 \src3_i$109
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 1 input 142 \src3_i$100
+ wire width 1 input 152 \src3_i$110
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 2 input 143 \src4_i
+ wire width 1 input 153 \src4_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 2 input 144 \src4_i$101
+ wire width 2 input 154 \src4_i$111
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 32 input 145 \src3_i$102
+ wire width 2 input 155 \src6_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 4 input 146 \src4_i$103
+ wire width 2 input 156 \src4_i$112
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 2 input 157 \src5_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 32 input 158 \src3_i$113
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 4 input 159 \src4_i$114
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 4 output 147 \rd__rel$104
+ wire width 4 output 160 \rd__rel$115
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 4 input 148 \rd__go$105
+ wire width 4 input 161 \rd__go$116
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 4 input 162 \src3_i$117
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 4 input 163 \src5_i$118
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 4 input 149 \src3_i$106
+ wire width 4 input 164 \src6_i$119
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 4 input 150 \src5_i
+ wire width 64 input 165 \src1_i$120
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 4 input 151 \src6_i
+ wire width 64 input 166 \src3_i$121
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 152 \src1_i$107
+ wire width 64 input 167 \src3_i$122
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 153 \src3_i$108
+ wire width 64 input 168 \src2_i$123
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 154 \src2_i$109
+ wire width 64 input 169 \src4_i$124
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 155 \src4_i$110
+ wire width 64 input 170 \src4_i$125
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 156 \src4_i$111
+ wire width 64 input 171 \src5_i$126
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 157 \src5_i$112
+ wire width 64 input 172 \src6_i$127
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 input 158 \src6_i$113
+ wire width 64 input 173 \src2_i$128
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 159 \o_ok
+ wire width 1 output 174 \o_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 5 output 160 \wr__rel
+ wire width 5 output 175 \wr__rel
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 5 input 161 \wr__go
+ wire width 5 input 176 \wr__go
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 162 \o_ok$114
+ wire width 1 output 177 \o_ok$129
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 163 \wr__rel$115
+ wire width 3 output 178 \wr__rel$130
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 input 164 \wr__go$116
+ wire width 3 input 179 \wr__go$131
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 165 \o_ok$117
+ wire width 1 output 180 \o_ok$132
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 5 output 166 \wr__rel$118
+ wire width 5 output 181 \wr__rel$133
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 5 input 167 \wr__go$119
+ wire width 5 input 182 \wr__go$134
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 168 \o_ok$120
+ wire width 1 output 183 \o_ok$135
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 169 \wr__rel$121
+ wire width 3 output 184 \wr__rel$136
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 input 170 \wr__go$122
+ wire width 3 input 185 \wr__go$137
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 171 \o_ok$123
+ wire width 1 output 186 \o_ok$138
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 172 \wr__rel$124
+ wire width 6 output 187 \wr__rel$139
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 input 173 \wr__go$125
+ wire width 6 input 188 \wr__go$140
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 189 \o_ok$141
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 3 output 190 \wr__rel$142
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 2 output 174 \wr__rel$126
+ wire width 3 input 191 \wr__go$143
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 2 input 175 \wr__go$127
+ wire width 2 output 192 \wr__rel$144
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 2 input 193 \wr__go$145
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 output 194 \o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 176 \o
+ wire width 64 output 195 \o$146
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 177 \o$128
+ wire width 64 output 196 \o$147
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 178 \o$129
+ wire width 64 output 197 \o$148
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 179 \o$130
+ wire width 64 output 198 \o$149
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 180 \o$131
+ wire width 64 output 199 \o$150
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 181 \o$132
+ wire width 64 output 200 \o$151
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 182 \ea
+ wire width 64 output 201 \ea
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 183 \full_cr_ok
+ wire width 1 output 202 \full_cr_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 32 output 184 \full_cr
+ wire width 32 output 203 \full_cr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 185 \cr_a_ok
+ wire width 1 output 204 \cr_a_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 186 \cr_a_ok$133
+ wire width 1 output 205 \cr_a_ok$152
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 187 \cr_a_ok$134
+ wire width 1 output 206 \cr_a_ok$153
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 188 \cr_a_ok$135
+ wire width 1 output 207 \cr_a_ok$154
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 4 output 189 \cr_a
+ wire width 4 output 208 \cr_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 4 output 190 \cr_a$136
+ wire width 4 output 209 \cr_a$155
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 4 output 191 \cr_a$137
+ wire width 4 output 210 \cr_a$156
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 4 output 192 \cr_a$138
+ wire width 4 output 211 \cr_a$157
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 193 \xer_ca_ok
+ wire width 1 output 212 \xer_ca_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 194 \xer_ca_ok$139
+ wire width 1 output 213 \xer_ca_ok$158
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 195 \xer_ca_ok$140
+ wire width 1 output 214 \xer_ca_ok$159
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 2 output 196 \xer_ca
+ wire width 1 output 215 \xer_ca_ok$160
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 2 output 197 \xer_ca$141
+ wire width 2 output 216 \xer_ca
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 2 output 198 \xer_ca$142
+ wire width 2 output 217 \xer_ca$161
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 199 \xer_ov_ok
+ wire width 2 output 218 \xer_ca$162
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 2 output 200 \xer_ov
+ wire width 2 output 219 \xer_ca$163
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 201 \xer_so_ok
+ wire width 1 output 220 \xer_ov_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 202 \xer_so
+ wire width 1 output 221 \xer_ov_ok$164
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 203 \spr1_ok
+ wire width 2 output 222 \xer_ov
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 output 223 \xer_ov$165
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 224 \xer_so_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 225 \xer_so_ok$166
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 226 \xer_so
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 227 \xer_so$167
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 228 \fast1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 204 \wr__rel$143
+ wire width 3 output 229 \wr__rel$168
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 input 205 \wr__go$144
+ wire width 3 input 230 \wr__go$169
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 231 \fast1_ok$170
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 232 \fast1_ok$171
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 206 \spr1_ok$145
+ wire width 64 output 233 \fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 207 \spr1
+ wire width 64 output 234 \fast1$172
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 208 \spr1$146
+ wire width 64 output 235 \fast1$173
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 209 \spr2_ok
+ wire width 1 output 236 \fast2_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 210 \spr2_ok$147
+ wire width 1 output 237 \fast2_ok$174
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 211 \spr2
+ wire width 64 output 238 \fast2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 212 \spr2$148
+ wire width 64 output 239 \fast2$175
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 213 \nia_ok
+ wire width 1 output 240 \nia_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 214 \nia_ok$149
+ wire width 1 output 241 \nia_ok$176
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 215 \nia
+ wire width 64 output 242 \nia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 216 \nia$150
+ wire width 64 output 243 \nia$177
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 217 \msr_ok
+ wire width 1 output 244 \msr_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 218 \msr
+ wire width 64 output 245 \msr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 246 \spr1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 output 247 \spr1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
+ wire width 1 input 248 \go_die_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
+ wire width 1 input 249 \shadown_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
+ wire width 64 output 250 \dest1_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
- wire width 1 input 219 \go_die_i
+ wire width 1 input 251 \go_die_i$178
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
- wire width 1 input 220 \shadown_i
+ wire width 1 input 252 \shadown_i$179
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
- wire width 64 output 221 \dest1_o
+ wire width 64 output 253 \dest1_o$180
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
- wire width 1 input 222 \go_die_i$151
+ wire width 1 input 254 \go_die_i$181
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
- wire width 1 input 223 \shadown_i$152
+ wire width 1 input 255 \shadown_i$182
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
- wire width 64 output 224 \dest1_o$153
+ wire width 64 output 256 \dest1_o$183
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
- wire width 1 input 225 \go_die_i$154
+ wire width 1 input 257 \go_die_i$184
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
- wire width 1 input 226 \shadown_i$155
+ wire width 1 input 258 \shadown_i$185
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
- wire width 64 output 227 \dest1_o$156
+ wire width 64 output 259 \dest1_o$186
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
- wire width 1 input 228 \go_die_i$157
+ wire width 1 input 260 \go_die_i$187
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
- wire width 1 input 229 \shadown_i$158
+ wire width 1 input 261 \shadown_i$188
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
- wire width 64 output 230 \dest1_o$159
+ wire width 64 output 262 \dest1_o$189
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
- wire width 1 input 231 \go_die_i$160
+ wire width 1 input 263 \go_die_i$190
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
- wire width 1 input 232 \shadown_i$161
+ wire width 1 input 264 \shadown_i$191
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
- wire width 64 output 233 \dest1_o$162
+ wire width 64 output 265 \dest1_o$192
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
- wire width 1 input 234 \go_die_i$163
+ wire width 1 input 266 \go_die_i$193
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
- wire width 1 input 235 \shadown_i$164
+ wire width 1 input 267 \shadown_i$194
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
- wire width 64 output 236 \dest1_o$165
+ wire width 64 output 268 \dest1_o$195
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
- wire width 1 input 237 \go_die_i$166
+ wire width 1 input 269 \go_die_i$196
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compldst_multi.py:112"
- wire width 1 output 238 \load_mem_o
+ wire width 1 output 270 \load_mem_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compldst_multi.py:113"
- wire width 1 output 239 \stwd_mem_o
+ wire width 1 output 271 \stwd_mem_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
- wire width 1 input 240 \shadown_i$167
+ wire width 1 input 272 \shadown_i$197
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:95"
- wire width 1 output 241 \ldst_port0_is_ld_i
+ wire width 1 output 273 \ldst_port0_is_ld_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:96"
- wire width 1 output 242 \ldst_port0_is_st_i
+ wire width 1 output 274 \ldst_port0_is_st_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:99"
- wire width 4 output 243 \ldst_port0_data_len
+ wire width 4 output 275 \ldst_port0_data_len
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 96 output 244 \ldst_port0_addr_i
+ wire width 96 output 276 \ldst_port0_addr_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 245 \ldst_port0_addr_i_ok
+ wire width 1 output 277 \ldst_port0_addr_i_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:107"
- wire width 1 input 246 \ldst_port0_addr_exc_o
+ wire width 1 input 278 \ldst_port0_addr_exc_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:106"
- wire width 1 input 247 \ldst_port0_addr_ok_o
+ wire width 1 input 279 \ldst_port0_addr_ok_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 input 248 \ldst_port0_ld_data_o
+ wire width 64 input 280 \ldst_port0_ld_data_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 input 249 \ldst_port0_ld_data_o_ok
+ wire width 1 input 281 \ldst_port0_ld_data_o_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 250 \ldst_port0_st_data_i
+ wire width 64 output 282 \ldst_port0_st_data_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 251 \ldst_port0_st_data_i_ok
+ wire width 1 output 283 \ldst_port0_st_data_i_ok
cell \alu0 \alu0
connect \rst \rst
connect \clk \clk
connect \rd__go \rd__go
connect \src1_i \src1_i
connect \src2_i \src2_i
- connect \src3_i \src3_i$100
- connect \src4_i \src4_i
+ connect \src3_i \src3_i$110
+ connect \src4_i \src4_i$111
connect \o_ok \o_ok
connect \wr__rel \wr__rel
connect \wr__go \wr__go
connect \issue_i \issue_i$4
connect \busy_o \busy_o$5
connect \rdmaskn \rdmaskn$6
- connect \rd__rel \rd__rel$79
- connect \rd__go \rd__go$80
- connect \src1_i \src1_i$81
- connect \src2_i \src2_i$94
- connect \src3_i \src3_i$102
- connect \src4_i \src4_i$103
- connect \src5_i \src5_i
- connect \src6_i \src6_i
- connect \o_ok \o_ok$114
- connect \wr__rel \wr__rel$115
- connect \wr__go \wr__go$116
- connect \o \o$128
+ connect \rd__rel \rd__rel$86
+ connect \rd__go \rd__go$87
+ connect \src1_i \src1_i$88
+ connect \src2_i \src2_i$104
+ connect \src3_i \src3_i$113
+ connect \src4_i \src4_i$114
+ connect \src5_i \src5_i$118
+ connect \src6_i \src6_i$119
+ connect \o_ok \o_ok$129
+ connect \wr__rel \wr__rel$130
+ connect \wr__go \wr__go$131
+ connect \o \o$146
connect \full_cr_ok \full_cr_ok
connect \full_cr \full_cr
- connect \cr_a_ok \cr_a_ok$133
- connect \cr_a \cr_a$136
- connect \go_die_i \go_die_i$151
- connect \shadown_i \shadown_i$152
- connect \dest1_o \dest1_o$153
+ connect \cr_a_ok \cr_a_ok$152
+ connect \cr_a \cr_a$155
+ connect \go_die_i \go_die_i$178
+ connect \shadown_i \shadown_i$179
+ connect \dest1_o \dest1_o$180
end
cell \branch0 \branch0
connect \rst \rst
connect \issue_i \issue_i$14
connect \busy_o \busy_o$15
connect \rdmaskn \rdmaskn$16
- connect \rd__rel \rd__rel$104
- connect \rd__go \rd__go$105
- connect \src3_i \src3_i$106
- connect \src1_i \src1_i$107
- connect \src2_i \src2_i$109
- connect \src4_i \src4_i$111
- connect \spr1_ok \spr1_ok
- connect \wr__rel \wr__rel$143
- connect \wr__go \wr__go$144
- connect \spr1 \spr1
- connect \spr2_ok \spr2_ok
- connect \spr2 \spr2
+ connect \rd__rel \rd__rel$115
+ connect \rd__go \rd__go$116
+ connect \src3_i \src3_i$117
+ connect \src1_i \src1_i$120
+ connect \src2_i \src2_i$123
+ connect \src4_i \src4_i$125
+ connect \fast1_ok \fast1_ok
+ connect \wr__rel \wr__rel$168
+ connect \wr__go \wr__go$169
+ connect \fast1 \fast1
+ connect \fast2_ok \fast2_ok
+ connect \fast2 \fast2
connect \nia_ok \nia_ok
connect \nia \nia
- connect \go_die_i \go_die_i$154
- connect \shadown_i \shadown_i$155
- connect \dest1_o \dest1_o$156
+ connect \go_die_i \go_die_i$181
+ connect \shadown_i \shadown_i$182
+ connect \dest1_o \dest1_o$183
end
cell \trap0 \trap0
connect \rst \rst
connect \issue_i \issue_i$21
connect \busy_o \busy_o$22
connect \rdmaskn \rdmaskn$23
- connect \rd__rel \rd__rel$82
- connect \rd__go \rd__go$83
- connect \src1_i \src1_i$84
- connect \src2_i \src2_i$95
- connect \src3_i \src3_i$108
- connect \src4_i \src4_i$110
- connect \src5_i \src5_i$112
- connect \src6_i \src6_i$113
- connect \o_ok \o_ok$117
- connect \wr__rel \wr__rel$118
- connect \wr__go \wr__go$119
- connect \o \o$129
- connect \spr1_ok \spr1_ok$145
- connect \spr1 \spr1$146
- connect \spr2_ok \spr2_ok$147
- connect \spr2 \spr2$148
- connect \nia_ok \nia_ok$149
- connect \nia \nia$150
+ connect \rd__rel \rd__rel$89
+ connect \rd__go \rd__go$90
+ connect \src1_i \src1_i$91
+ connect \src2_i \src2_i$105
+ connect \src3_i \src3_i$121
+ connect \src4_i \src4_i$124
+ connect \src5_i \src5_i$126
+ connect \src6_i \src6_i$127
+ connect \o_ok \o_ok$132
+ connect \wr__rel \wr__rel$133
+ connect \wr__go \wr__go$134
+ connect \o \o$147
+ connect \fast1_ok \fast1_ok$170
+ connect \fast1 \fast1$172
+ connect \fast2_ok \fast2_ok$174
+ connect \fast2 \fast2$175
+ connect \nia_ok \nia_ok$176
+ connect \nia \nia$177
connect \msr_ok \msr_ok
connect \msr \msr
- connect \go_die_i \go_die_i$157
- connect \shadown_i \shadown_i$158
- connect \dest1_o \dest1_o$159
+ connect \go_die_i \go_die_i$184
+ connect \shadown_i \shadown_i$185
+ connect \dest1_o \dest1_o$186
end
cell \logical0 \logical0
connect \rst \rst
connect \issue_i \issue_i$44
connect \busy_o \busy_o$45
connect \rdmaskn \rdmaskn$46
- connect \rd__rel \rd__rel$85
- connect \rd__go \rd__go$86
- connect \src1_i \src1_i$87
- connect \src2_i \src2_i$96
- connect \o_ok \o_ok$120
- connect \wr__rel \wr__rel$121
- connect \wr__go \wr__go$122
- connect \o \o$130
- connect \cr_a_ok \cr_a_ok$134
- connect \cr_a \cr_a$137
- connect \xer_ca_ok \xer_ca_ok$139
- connect \xer_ca \xer_ca$141
- connect \go_die_i \go_die_i$160
- connect \shadown_i \shadown_i$161
- connect \dest1_o \dest1_o$162
- end
- cell \shiftrot0 \shiftrot0
+ connect \rd__rel \rd__rel$92
+ connect \rd__go \rd__go$93
+ connect \src1_i \src1_i$94
+ connect \src2_i \src2_i$106
+ connect \o_ok \o_ok$135
+ connect \wr__rel \wr__rel$136
+ connect \wr__go \wr__go$137
+ connect \o \o$148
+ connect \cr_a_ok \cr_a_ok$153
+ connect \cr_a \cr_a$156
+ connect \xer_ca_ok \xer_ca_ok$158
+ connect \xer_ca \xer_ca$161
+ connect \go_die_i \go_die_i$187
+ connect \shadown_i \shadown_i$188
+ connect \dest1_o \dest1_o$189
+ end
+ cell \spr0 \spr0
connect \rst \rst
connect \clk \clk
connect \oper_i__insn_type \oper_i__insn_type$47
connect \oper_i__fn_unit \oper_i__fn_unit$48
- connect \oper_i__imm_data__imm \oper_i__imm_data__imm$49
- connect \oper_i__imm_data__imm_ok \oper_i__imm_data__imm_ok$50
- connect \oper_i__rc__rc \oper_i__rc__rc$51
- connect \oper_i__rc__rc_ok \oper_i__rc__rc_ok$52
- connect \oper_i__oe__oe \oper_i__oe__oe$53
- connect \oper_i__oe__oe_ok \oper_i__oe__oe_ok$54
- connect \oper_i__write_cr__data \oper_i__write_cr__data$55
- connect \oper_i__write_cr__ok \oper_i__write_cr__ok$56
- connect \oper_i__input_carry \oper_i__input_carry$57
- connect \oper_i__output_carry \oper_i__output_carry$58
- connect \oper_i__input_cr \oper_i__input_cr$59
- connect \oper_i__output_cr \oper_i__output_cr$60
- connect \oper_i__is_32bit \oper_i__is_32bit$61
- connect \oper_i__is_signed \oper_i__is_signed$62
- connect \oper_i__insn \oper_i__insn$63
- connect \issue_i \issue_i$64
- connect \busy_o \busy_o$65
- connect \rdmaskn \rdmaskn$66
- connect \rd__rel \rd__rel$88
- connect \rd__go \rd__go$89
- connect \src1_i \src1_i$90
- connect \src2_i \src2_i$97
+ connect \oper_i__insn \oper_i__insn$49
+ connect \oper_i__is_32bit \oper_i__is_32bit$50
+ connect \issue_i \issue_i$51
+ connect \busy_o \busy_o$52
+ connect \rdmaskn \rdmaskn$53
+ connect \rd__rel \rd__rel$95
+ connect \rd__go \rd__go$96
+ connect \src1_i \src1_i$97
+ connect \src4_i \src4_i
+ connect \src6_i \src6_i
+ connect \src5_i \src5_i
+ connect \src3_i \src3_i$122
+ connect \src2_i \src2_i$128
+ connect \o_ok \o_ok$138
+ connect \wr__rel \wr__rel$139
+ connect \wr__go \wr__go$140
+ connect \o \o$149
+ connect \xer_ca_ok \xer_ca_ok$159
+ connect \xer_ca \xer_ca$162
+ connect \xer_ov_ok \xer_ov_ok$164
+ connect \xer_ov \xer_ov$165
+ connect \xer_so_ok \xer_so_ok$166
+ connect \xer_so \xer_so$167
+ connect \fast1_ok \fast1_ok$171
+ connect \fast1 \fast1$173
+ connect \spr1_ok \spr1_ok
+ connect \spr1 \spr1
+ connect \go_die_i \go_die_i$190
+ connect \shadown_i \shadown_i$191
+ connect \dest1_o \dest1_o$192
+ end
+ cell \shiftrot0 \shiftrot0
+ connect \rst \rst
+ connect \clk \clk
+ connect \oper_i__insn_type \oper_i__insn_type$54
+ connect \oper_i__fn_unit \oper_i__fn_unit$55
+ connect \oper_i__imm_data__imm \oper_i__imm_data__imm$56
+ connect \oper_i__imm_data__imm_ok \oper_i__imm_data__imm_ok$57
+ connect \oper_i__rc__rc \oper_i__rc__rc$58
+ connect \oper_i__rc__rc_ok \oper_i__rc__rc_ok$59
+ connect \oper_i__oe__oe \oper_i__oe__oe$60
+ connect \oper_i__oe__oe_ok \oper_i__oe__oe_ok$61
+ connect \oper_i__write_cr__data \oper_i__write_cr__data$62
+ connect \oper_i__write_cr__ok \oper_i__write_cr__ok$63
+ connect \oper_i__input_carry \oper_i__input_carry$64
+ connect \oper_i__output_carry \oper_i__output_carry$65
+ connect \oper_i__input_cr \oper_i__input_cr$66
+ connect \oper_i__output_cr \oper_i__output_cr$67
+ connect \oper_i__is_32bit \oper_i__is_32bit$68
+ connect \oper_i__is_signed \oper_i__is_signed$69
+ connect \oper_i__insn \oper_i__insn$70
+ connect \issue_i \issue_i$71
+ connect \busy_o \busy_o$72
+ connect \rdmaskn \rdmaskn$73
+ connect \rd__rel \rd__rel$98
+ connect \rd__go \rd__go$99
+ connect \src1_i \src1_i$100
+ connect \src2_i \src2_i$107
connect \src3_i \src3_i
- connect \src4_i \src4_i$101
- connect \o_ok \o_ok$123
- connect \wr__rel \wr__rel$124
- connect \wr__go \wr__go$125
- connect \o \o$131
- connect \cr_a_ok \cr_a_ok$135
- connect \cr_a \cr_a$138
- connect \xer_ca_ok \xer_ca_ok$140
- connect \xer_ca \xer_ca$142
- connect \go_die_i \go_die_i$163
- connect \shadown_i \shadown_i$164
- connect \dest1_o \dest1_o$165
+ connect \src4_i \src4_i$112
+ connect \o_ok \o_ok$141
+ connect \wr__rel \wr__rel$142
+ connect \wr__go \wr__go$143
+ connect \o \o$150
+ connect \cr_a_ok \cr_a_ok$154
+ connect \cr_a \cr_a$157
+ connect \xer_ca_ok \xer_ca_ok$160
+ connect \xer_ca \xer_ca$163
+ connect \go_die_i \go_die_i$193
+ connect \shadown_i \shadown_i$194
+ connect \dest1_o \dest1_o$195
end
cell \ldst0 \ldst0
connect \ad__go \ad__go
connect \st__rel \st__rel
connect \rst \rst
connect \clk \clk
- connect \oper_i__insn_type \oper_i__insn_type$67
- connect \oper_i__imm_data__imm \oper_i__imm_data__imm$68
- connect \oper_i__imm_data__imm_ok \oper_i__imm_data__imm_ok$69
- connect \oper_i__zero_a \oper_i__zero_a$70
- connect \oper_i__is_32bit \oper_i__is_32bit$71
- connect \oper_i__is_signed \oper_i__is_signed$72
- connect \oper_i__data_len \oper_i__data_len$73
- connect \oper_i__byte_reverse \oper_i__byte_reverse$74
- connect \oper_i__sign_extend \oper_i__sign_extend$75
+ connect \oper_i__insn_type \oper_i__insn_type$74
+ connect \oper_i__imm_data__imm \oper_i__imm_data__imm$75
+ connect \oper_i__imm_data__imm_ok \oper_i__imm_data__imm_ok$76
+ connect \oper_i__zero_a \oper_i__zero_a$77
+ connect \oper_i__is_32bit \oper_i__is_32bit$78
+ connect \oper_i__is_signed \oper_i__is_signed$79
+ connect \oper_i__data_len \oper_i__data_len$80
+ connect \oper_i__byte_reverse \oper_i__byte_reverse$81
+ connect \oper_i__sign_extend \oper_i__sign_extend$82
connect \oper_i__update \oper_i__update
- connect \issue_i \issue_i$76
- connect \busy_o \busy_o$77
- connect \rdmaskn \rdmaskn$78
- connect \rd__rel \rd__rel$91
- connect \rd__go \rd__go$92
- connect \src1_i \src1_i$93
- connect \src2_i \src2_i$98
- connect \src3_i \src3_i$99
- connect \wr__rel \wr__rel$126
- connect \wr__go \wr__go$127
- connect \o \o$132
+ connect \issue_i \issue_i$83
+ connect \busy_o \busy_o$84
+ connect \rdmaskn \rdmaskn$85
+ connect \rd__rel \rd__rel$101
+ connect \rd__go \rd__go$102
+ connect \src1_i \src1_i$103
+ connect \src2_i \src2_i$108
+ connect \src3_i \src3_i$109
+ connect \wr__rel \wr__rel$144
+ connect \wr__go \wr__go$145
+ connect \o \o$151
connect \ea \ea
- connect \go_die_i \go_die_i$166
+ connect \go_die_i \go_die_i$196
connect \load_mem_o \load_mem_o
connect \stwd_mem_o \stwd_mem_o
- connect \shadown_i \shadown_i$167
+ connect \shadown_i \shadown_i$197
connect \ldst_port0_is_ld_i \ldst_port0_is_ld_i
connect \ldst_port0_is_st_i \ldst_port0_is_st_i
connect \ldst_port0_data_len \ldst_port0_data_len
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.l0.l0.reset_l"
-module \reset_l$77
+module \reset_l$90
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.l0.l0"
-module \l0$76
+module \l0$89
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 \reset_l_r_reset
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/latch.py:60"
wire width 1 \reset_l_q_reset
- cell \reset_l$77 \reset_l
+ cell \reset_l$90 \reset_l
connect \rst \rst
connect \clk \clk
connect \s_reset \reset_l_s_reset
connect \m_valid_i \m_valid_i
connect \x_valid_i \x_valid_i
end
- cell \l0$76 \l0
+ cell \l0$89 \l0
connect \rst \rst
connect \clk \clk
connect \ldst_port0_is_ld_i \ldst_port0_is_ld_i
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.cr.reg_0"
-module \reg_0$78
+module \reg_0$91
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.cr.reg_1"
-module \reg_1$79
+module \reg_1$92
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.cr.reg_2"
-module \reg_2$80
+module \reg_2$93
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.cr.reg_3"
-module \reg_3$81
+module \reg_3$94
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.cr.reg_4"
-module \reg_4$82
+module \reg_4$95
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.cr.reg_5"
-module \reg_5$83
+module \reg_5$96
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.cr.reg_6"
-module \reg_6$84
+module \reg_6$97
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.cr.reg_7"
-module \reg_7$85
+module \reg_7$98
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 4 \reg_0_w0__data_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 1 \reg_0_w0__wen
- cell \reg_0$78 \reg_0
+ cell \reg_0$91 \reg_0
connect \rst \rst
connect \clk \clk
connect \src10__ren \reg_0_src10__ren
wire width 4 \reg_1_w1__data_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 1 \reg_1_w1__wen
- cell \reg_1$79 \reg_1
+ cell \reg_1$92 \reg_1
connect \rst \rst
connect \clk \clk
connect \src11__ren \reg_1_src11__ren
wire width 4 \reg_2_w2__data_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 1 \reg_2_w2__wen
- cell \reg_2$80 \reg_2
+ cell \reg_2$93 \reg_2
connect \rst \rst
connect \clk \clk
connect \src12__ren \reg_2_src12__ren
wire width 4 \reg_3_w3__data_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 1 \reg_3_w3__wen
- cell \reg_3$81 \reg_3
+ cell \reg_3$94 \reg_3
connect \rst \rst
connect \clk \clk
connect \src13__ren \reg_3_src13__ren
wire width 4 \reg_4_w4__data_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 1 \reg_4_w4__wen
- cell \reg_4$82 \reg_4
+ cell \reg_4$95 \reg_4
connect \rst \rst
connect \clk \clk
connect \src14__ren \reg_4_src14__ren
wire width 4 \reg_5_w5__data_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 1 \reg_5_w5__wen
- cell \reg_5$83 \reg_5
+ cell \reg_5$96 \reg_5
connect \rst \rst
connect \clk \clk
connect \src15__ren \reg_5_src15__ren
wire width 4 \reg_6_w6__data_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 1 \reg_6_w6__wen
- cell \reg_6$84 \reg_6
+ cell \reg_6$97 \reg_6
connect \rst \rst
connect \clk \clk
connect \src16__ren \reg_6_src16__ren
wire width 4 \reg_7_w7__data_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 1 \reg_7_w7__wen
- cell \reg_7$85 \reg_7
+ cell \reg_7$98 \reg_7
connect \rst \rst
connect \clk \clk
connect \src17__ren \reg_7_src17__ren
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.xer.reg_0"
-module \reg_0$86
+module \reg_0$99
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.xer.reg_1"
-module \reg_1$87
+module \reg_1$100
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.xer.reg_2"
-module \reg_2$88
+module \reg_2$101
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 2 output 5 \src2__data_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 3 input 6 \wen
+ wire width 3 input 6 \src3__ren
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
+ wire width 2 output 7 \src3__data_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
+ wire width 3 input 8 \wen
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 2 input 7 \data_i
+ wire width 2 input 9 \data_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 3 input 8 \wen$1
+ wire width 3 input 10 \wen$1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 2 input 9 \data_i$2
+ wire width 2 input 11 \data_i$2
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 3 input 10 \wen$3
+ wire width 3 input 12 \wen$3
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 2 input 11 \data_i$4
+ wire width 2 input 13 \data_i$4
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 1 \reg_0_src10__ren
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 2 \reg_0_w0__data_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 1 \reg_0_w0__wen
- cell \reg_0$86 \reg_0
+ cell \reg_0$99 \reg_0
connect \rst \rst
connect \clk \clk
connect \src10__ren \reg_0_src10__ren
wire width 2 \reg_1_w1__data_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 1 \reg_1_w1__wen
- cell \reg_1$87 \reg_1
+ cell \reg_1$100 \reg_1
connect \rst \rst
connect \clk \clk
connect \src11__ren \reg_1_src11__ren
wire width 2 \reg_2_w2__data_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 1 \reg_2_w2__wen
- cell \reg_2$88 \reg_2
+ cell \reg_2$101 \reg_2
connect \rst \rst
connect \clk \clk
connect \src12__ren \reg_2_src12__ren
assign \src2__data_o $11
sync init
end
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 3 \src3__ren
process $group_8
assign \reg_0_src30__ren 1'0
assign \reg_1_src31__ren 1'0
assign { \reg_2_src32__ren \reg_1_src31__ren \reg_0_src30__ren } \src3__ren
sync init
end
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 2 \src3__data_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
wire width 2 $13
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
assign { \reg_2_w2__wen \reg_1_w1__wen \reg_0_w0__wen } \full_wr__wen
sync init
end
- connect \src3__ren 3'000
connect \full_rd__ren 3'000
connect \full_wr__data_i 6'000000
connect \full_wr__wen 3'000
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fast.reg_0"
-module \reg_0$89
+module \reg_0$102
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fast.reg_1"
-module \reg_1$90
+module \reg_1$103
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fast.reg_2"
-module \reg_2$91
+module \reg_2$104
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fast.reg_3"
-module \reg_3$92
+module \reg_3$105
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fast.reg_4"
-module \reg_4$93
+module \reg_4$106
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fast.reg_5"
-module \reg_5$94
+module \reg_5$107
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fast.reg_6"
-module \reg_6$95
+module \reg_6$108
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.fast.reg_7"
-module \reg_7$96
+module \reg_7$109
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 \reg_0_d_wr10__wen
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 64 \reg_0_d_wr10__data_i
- cell \reg_0$89 \reg_0
+ cell \reg_0$102 \reg_0
connect \rst \rst
connect \clk \clk
connect \src10__ren \reg_0_src10__ren
wire width 1 \reg_1_d_wr11__wen
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 64 \reg_1_d_wr11__data_i
- cell \reg_1$90 \reg_1
+ cell \reg_1$103 \reg_1
connect \rst \rst
connect \clk \clk
connect \src11__ren \reg_1_src11__ren
wire width 1 \reg_2_d_wr12__wen
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 64 \reg_2_d_wr12__data_i
- cell \reg_2$91 \reg_2
+ cell \reg_2$104 \reg_2
connect \rst \rst
connect \clk \clk
connect \src12__ren \reg_2_src12__ren
wire width 1 \reg_3_d_wr13__wen
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 64 \reg_3_d_wr13__data_i
- cell \reg_3$92 \reg_3
+ cell \reg_3$105 \reg_3
connect \rst \rst
connect \clk \clk
connect \src13__ren \reg_3_src13__ren
wire width 1 \reg_4_d_wr14__wen
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 64 \reg_4_d_wr14__data_i
- cell \reg_4$93 \reg_4
+ cell \reg_4$106 \reg_4
connect \rst \rst
connect \clk \clk
connect \src14__ren \reg_4_src14__ren
wire width 1 \reg_5_d_wr15__wen
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 64 \reg_5_d_wr15__data_i
- cell \reg_5$94 \reg_5
+ cell \reg_5$107 \reg_5
connect \rst \rst
connect \clk \clk
connect \src15__ren \reg_5_src15__ren
wire width 1 \reg_6_d_wr16__wen
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 64 \reg_6_d_wr16__data_i
- cell \reg_6$95 \reg_6
+ cell \reg_6$108 \reg_6
connect \rst \rst
connect \clk \clk
connect \src16__ren \reg_6_src16__ren
wire width 1 \reg_7_d_wr17__wen
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 64 \reg_7_d_wr17__data_i
- cell \reg_7$96 \reg_7
+ cell \reg_7$109 \reg_7
connect \rst \rst
connect \clk \clk
connect \src17__ren \reg_7_src17__ren
wire width 1 input 0 \rst
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 1 \clk
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/regfile/regfile.py:197"
- wire width 1 \wr_detect
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 1 \src__ren
+ wire width 1 input 2 \src__ren
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 1 \dest__wen
+ wire width 64 output 3 \src__data_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
+ wire width 1 input 4 \dest__wen
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
+ wire width 64 input 5 \dest__data_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/regfile/regfile.py:197"
+ wire width 1 \wr_detect
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/regfile/regfile.py:201"
wire width 1 \addrmatch
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/regfile/regfile.py:203"
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 64 \src__data_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/regfile/regfile.py:203"
wire width 1 $5
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/regfile/regfile.py:203"
connect \B \addrmatch
connect \Y $5
end
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 64 \dest__data_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/regfile/regfile.py:206"
wire width 1 $7
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/regfile/regfile.py:206"
update \reg$116 \reg$116$next
update \reg$117 \reg$117$next
end
- connect \src__ren 1'0
- connect \dest__wen 1'0
connect \dest__waddr 6'000000
connect \src__raddr 6'000000
- connect \dest__data_i 64'0000000000000000000000000000000000000000000000000000000000000000
end
attribute \generator "nMigen"
attribute \nmigen.hierarchy "test_issuer.core.rdpick_INT_ra"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 output 0 \en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 6 input 1 \i
+ wire width 7 input 1 \i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 6 output 2 \o
+ wire width 7 output 2 \o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:42"
- wire width 6 \ni
+ wire width 7 \ni
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
- wire width 6 $1
+ wire width 7 $1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
cell $not $2
parameter \A_SIGNED 0
- parameter \A_WIDTH 6
- parameter \Y_WIDTH 6
+ parameter \A_WIDTH 7
+ parameter \Y_WIDTH 7
connect \A \i
connect \Y $1
end
process $group_0
- assign \ni 6'000000
+ assign \ni 7'0000000
assign \ni $1
sync init
end
assign \t5 $19
sync init
end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
+ wire width 1 \t6
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $23
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $24
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $reduce_bool $25
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 7
+ parameter \Y_WIDTH 1
+ connect \A { \i [5:0] [5] \i [5:0] [4] \i [5:0] [3] \i [5:0] [2] \i [5:0] [1] \i [5:0] [0] \ni [6] }
+ connect \Y $24
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $not $26
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $24
+ connect \Y $23
+ end
process $group_7
- assign \o 6'000000
- assign \o { \t5 \t4 \t3 \t2 \t1 \t0 }
+ assign \t6 1'0
+ assign \t6 $23
+ sync init
+ end
+ process $group_8
+ assign \o 7'0000000
+ assign \o { \t6 \t5 \t4 \t3 \t2 \t1 \t0 }
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- wire width 1 $23
+ wire width 1 $27
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- cell $reduce_bool $24
+ cell $reduce_bool $28
parameter \A_SIGNED 0
- parameter \A_WIDTH 6
+ parameter \A_WIDTH 7
parameter \Y_WIDTH 1
connect \A \o
- connect \Y $23
+ connect \Y $27
end
- process $group_8
+ process $group_9
assign \en_o 1'0
- assign \en_o $23
+ assign \en_o $27
sync init
end
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 output 0 \en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 1 input 1 \i
+ wire width 2 input 1 \i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 1 output 2 \o
+ wire width 2 output 2 \o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:42"
- wire width 1 \ni
+ wire width 2 \ni
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
- wire width 1 $1
+ wire width 2 $1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
cell $not $2
parameter \A_SIGNED 0
- parameter \A_WIDTH 1
- parameter \Y_WIDTH 1
+ parameter \A_WIDTH 2
+ parameter \Y_WIDTH 2
connect \A \i
connect \Y $1
end
process $group_0
- assign \ni 1'0
+ assign \ni 2'00
assign \ni $1
sync init
end
wire width 1 \t0
process $group_1
assign \t0 1'0
- assign \t0 \i
+ assign \t0 \i [0]
sync init
end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
+ wire width 1 \t1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $4
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $reduce_bool $5
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \Y_WIDTH 1
+ connect \A { \i [0] \ni [1] }
+ connect \Y $4
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $not $6
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $4
+ connect \Y $3
+ end
process $group_2
- assign \o 1'0
- assign \o { \t0 }
+ assign \t1 1'0
+ assign \t1 $3
+ sync init
+ end
+ process $group_3
+ assign \o 2'00
+ assign \o { \t1 \t0 }
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- wire width 1 $3
+ wire width 1 $7
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- cell $reduce_bool $4
+ cell $reduce_bool $8
parameter \A_SIGNED 0
- parameter \A_WIDTH 1
+ parameter \A_WIDTH 2
parameter \Y_WIDTH 1
connect \A \o
- connect \Y $3
+ connect \Y $7
end
- process $group_3
+ process $group_4
assign \en_o 1'0
- assign \en_o $3
+ assign \en_o $7
sync init
end
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 output 0 \en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 2 input 1 \i
+ wire width 3 input 1 \i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 2 output 2 \o
+ wire width 3 output 2 \o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:42"
- wire width 2 \ni
+ wire width 3 \ni
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
- wire width 2 $1
+ wire width 3 $1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
cell $not $2
parameter \A_SIGNED 0
- parameter \A_WIDTH 2
- parameter \Y_WIDTH 2
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 3
connect \A \i
connect \Y $1
end
process $group_0
- assign \ni 2'00
+ assign \ni 3'000
assign \ni $1
sync init
end
assign \t1 $3
sync init
end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
+ wire width 1 \t2
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $7
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $8
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $reduce_bool $9
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 1
+ connect \A { \i [1:0] [1] \i [1:0] [0] \ni [2] }
+ connect \Y $8
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $not $10
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $8
+ connect \Y $7
+ end
process $group_3
- assign \o 2'00
- assign \o { \t1 \t0 }
+ assign \t2 1'0
+ assign \t2 $7
+ sync init
+ end
+ process $group_4
+ assign \o 3'000
+ assign \o { \t2 \t1 \t0 }
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- wire width 1 $7
+ wire width 1 $11
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- cell $reduce_bool $8
+ cell $reduce_bool $12
parameter \A_SIGNED 0
- parameter \A_WIDTH 2
+ parameter \A_WIDTH 3
parameter \Y_WIDTH 1
connect \A \o
- connect \Y $7
+ connect \Y $11
end
- process $group_4
+ process $group_5
assign \en_o 1'0
- assign \en_o $7
+ assign \en_o $11
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.rdpick_XER_xer_ov"
+module \rdpick_XER_xer_ov
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
+ wire width 1 output 0 \en_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
+ wire width 1 input 1 \i
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
+ wire width 1 output 2 \o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:42"
+ wire width 1 \ni
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
+ wire width 1 $1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
+ cell $not $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \i
+ connect \Y $1
+ end
+ process $group_0
+ assign \ni 1'0
+ assign \ni $1
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
+ wire width 1 \t0
+ process $group_1
+ assign \t0 1'0
+ assign \t0 \i
+ sync init
+ end
+ process $group_2
+ assign \o 1'0
+ assign \o { \t0 }
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
+ wire width 1 $3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
+ cell $reduce_bool $4
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \o
+ connect \Y $3
+ end
+ process $group_3
+ assign \en_o 1'0
+ assign \en_o $3
sync init
end
end
end
end
attribute \generator "nMigen"
-attribute \nmigen.hierarchy "test_issuer.core.rdpick_FAST_spr1"
-module \rdpick_FAST_spr1
+attribute \nmigen.hierarchy "test_issuer.core.rdpick_FAST_fast1"
+module \rdpick_FAST_fast1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
+ wire width 1 output 0 \en_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
+ wire width 3 input 1 \i
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
+ wire width 3 output 2 \o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:42"
+ wire width 3 \ni
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
+ wire width 3 $1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
+ cell $not $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 3
+ connect \A \i
+ connect \Y $1
+ end
+ process $group_0
+ assign \ni 3'000
+ assign \ni $1
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
+ wire width 1 \t0
+ process $group_1
+ assign \t0 1'0
+ assign \t0 \i [0]
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
+ wire width 1 \t1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $4
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $reduce_bool $5
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \Y_WIDTH 1
+ connect \A { \i [0] \ni [1] }
+ connect \Y $4
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $not $6
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $4
+ connect \Y $3
+ end
+ process $group_2
+ assign \t1 1'0
+ assign \t1 $3
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
+ wire width 1 \t2
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $7
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $8
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $reduce_bool $9
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 1
+ connect \A { \i [1:0] [1] \i [1:0] [0] \ni [2] }
+ connect \Y $8
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $not $10
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $8
+ connect \Y $7
+ end
+ process $group_3
+ assign \t2 1'0
+ assign \t2 $7
+ sync init
+ end
+ process $group_4
+ assign \o 3'000
+ assign \o { \t2 \t1 \t0 }
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
+ wire width 1 $11
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
+ cell $reduce_bool $12
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 1
+ connect \A \o
+ connect \Y $11
+ end
+ process $group_5
+ assign \en_o 1'0
+ assign \en_o $11
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.rdpick_FAST_fast2"
+module \rdpick_FAST_fast2
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 output 0 \en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
end
end
attribute \generator "nMigen"
-attribute \nmigen.hierarchy "test_issuer.core.rdpick_FAST_spr2"
-module \rdpick_FAST_spr2
+attribute \nmigen.hierarchy "test_issuer.core.rdpick_FAST_cia"
+module \rdpick_FAST_cia
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 output 0 \en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
end
end
attribute \generator "nMigen"
-attribute \nmigen.hierarchy "test_issuer.core.rdpick_FAST_cia"
-module \rdpick_FAST_cia
+attribute \nmigen.hierarchy "test_issuer.core.rdpick_FAST_msr"
+module \rdpick_FAST_msr
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 output 0 \en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 2 input 1 \i
+ wire width 1 input 1 \i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 2 output 2 \o
+ wire width 1 output 2 \o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:42"
- wire width 2 \ni
+ wire width 1 \ni
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
- wire width 2 $1
+ wire width 1 $1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
cell $not $2
parameter \A_SIGNED 0
- parameter \A_WIDTH 2
- parameter \Y_WIDTH 2
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
connect \A \i
connect \Y $1
end
process $group_0
- assign \ni 2'00
+ assign \ni 1'0
assign \ni $1
sync init
end
wire width 1 \t0
process $group_1
assign \t0 1'0
- assign \t0 \i [0]
+ assign \t0 \i
sync init
end
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
- wire width 1 \t1
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
- wire width 1 $3
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
- wire width 1 $4
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
- cell $reduce_bool $5
- parameter \A_SIGNED 0
- parameter \A_WIDTH 2
- parameter \Y_WIDTH 1
- connect \A { \i [0] \ni [1] }
- connect \Y $4
- end
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
- cell $not $6
- parameter \A_SIGNED 0
- parameter \A_WIDTH 1
- parameter \Y_WIDTH 1
- connect \A $4
- connect \Y $3
- end
process $group_2
- assign \t1 1'0
- assign \t1 $3
- sync init
- end
- process $group_3
- assign \o 2'00
- assign \o { \t1 \t0 }
+ assign \o 1'0
+ assign \o { \t0 }
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- wire width 1 $7
+ wire width 1 $3
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- cell $reduce_bool $8
+ cell $reduce_bool $4
parameter \A_SIGNED 0
- parameter \A_WIDTH 2
+ parameter \A_WIDTH 1
parameter \Y_WIDTH 1
connect \A \o
- connect \Y $7
+ connect \Y $3
end
- process $group_4
+ process $group_3
assign \en_o 1'0
- assign \en_o $7
+ assign \en_o $3
sync init
end
end
attribute \generator "nMigen"
-attribute \nmigen.hierarchy "test_issuer.core.rdpick_FAST_msr"
-module \rdpick_FAST_msr
+attribute \nmigen.hierarchy "test_issuer.core.rdpick_SPR_spr1"
+module \rdpick_SPR_spr1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 output 0 \en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 output 0 \en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 6 input 1 \i
+ wire width 7 input 1 \i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 6 output 2 \o
+ wire width 7 output 2 \o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:42"
- wire width 6 \ni
+ wire width 7 \ni
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
- wire width 6 $1
+ wire width 7 $1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
cell $not $2
parameter \A_SIGNED 0
- parameter \A_WIDTH 6
- parameter \Y_WIDTH 6
+ parameter \A_WIDTH 7
+ parameter \Y_WIDTH 7
connect \A \i
connect \Y $1
end
process $group_0
- assign \ni 6'000000
+ assign \ni 7'0000000
assign \ni $1
sync init
end
assign \t5 $19
sync init
end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
+ wire width 1 \t6
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $23
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $24
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $reduce_bool $25
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 7
+ parameter \Y_WIDTH 1
+ connect \A { \i [5:0] [5] \i [5:0] [4] \i [5:0] [3] \i [5:0] [2] \i [5:0] [1] \i [5:0] [0] \ni [6] }
+ connect \Y $24
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $not $26
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $24
+ connect \Y $23
+ end
process $group_7
- assign \o 6'000000
- assign \o { \t5 \t4 \t3 \t2 \t1 \t0 }
+ assign \t6 1'0
+ assign \t6 $23
+ sync init
+ end
+ process $group_8
+ assign \o 7'0000000
+ assign \o { \t6 \t5 \t4 \t3 \t2 \t1 \t0 }
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- wire width 1 $23
+ wire width 1 $27
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- cell $reduce_bool $24
+ cell $reduce_bool $28
parameter \A_SIGNED 0
- parameter \A_WIDTH 6
+ parameter \A_WIDTH 7
parameter \Y_WIDTH 1
connect \A \o
- connect \Y $23
+ connect \Y $27
end
- process $group_8
+ process $group_9
assign \en_o 1'0
- assign \en_o $23
+ assign \en_o $27
sync init
end
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 output 0 \en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 3 input 1 \i
+ wire width 4 input 1 \i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 3 output 2 \o
+ wire width 4 output 2 \o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:42"
- wire width 3 \ni
+ wire width 4 \ni
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
- wire width 3 $1
+ wire width 4 $1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
cell $not $2
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
- parameter \Y_WIDTH 3
+ parameter \A_WIDTH 4
+ parameter \Y_WIDTH 4
connect \A \i
connect \Y $1
end
process $group_0
- assign \ni 3'000
+ assign \ni 4'0000
assign \ni $1
sync init
end
assign \t2 $7
sync init
end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
+ wire width 1 \t3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $11
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $12
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $reduce_bool $13
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 4
+ parameter \Y_WIDTH 1
+ connect \A { \i [2:0] [2] \i [2:0] [1] \i [2:0] [0] \ni [3] }
+ connect \Y $12
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $not $14
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $12
+ connect \Y $11
+ end
process $group_4
- assign \o 3'000
- assign \o { \t2 \t1 \t0 }
+ assign \t3 1'0
+ assign \t3 $11
+ sync init
+ end
+ process $group_5
+ assign \o 4'0000
+ assign \o { \t3 \t2 \t1 \t0 }
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- wire width 1 $11
+ wire width 1 $15
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- cell $reduce_bool $12
+ cell $reduce_bool $16
parameter \A_SIGNED 0
- parameter \A_WIDTH 3
+ parameter \A_WIDTH 4
parameter \Y_WIDTH 1
connect \A \o
- connect \Y $11
+ connect \Y $15
end
- process $group_5
+ process $group_6
assign \en_o 1'0
- assign \en_o $11
+ assign \en_o $15
sync init
end
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 output 0 \en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 1 input 1 \i
+ wire width 2 input 1 \i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 1 output 2 \o
+ wire width 2 output 2 \o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:42"
- wire width 1 \ni
+ wire width 2 \ni
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
- wire width 1 $1
+ wire width 2 $1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
cell $not $2
parameter \A_SIGNED 0
- parameter \A_WIDTH 1
- parameter \Y_WIDTH 1
+ parameter \A_WIDTH 2
+ parameter \Y_WIDTH 2
connect \A \i
connect \Y $1
end
process $group_0
- assign \ni 1'0
+ assign \ni 2'00
assign \ni $1
sync init
end
wire width 1 \t0
process $group_1
assign \t0 1'0
- assign \t0 \i
+ assign \t0 \i [0]
sync init
end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
+ wire width 1 \t1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $4
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $reduce_bool $5
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \Y_WIDTH 1
+ connect \A { \i [0] \ni [1] }
+ connect \Y $4
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $not $6
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $4
+ connect \Y $3
+ end
process $group_2
- assign \o 1'0
- assign \o { \t0 }
+ assign \t1 1'0
+ assign \t1 $3
+ sync init
+ end
+ process $group_3
+ assign \o 2'00
+ assign \o { \t1 \t0 }
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- wire width 1 $3
+ wire width 1 $7
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- cell $reduce_bool $4
+ cell $reduce_bool $8
parameter \A_SIGNED 0
- parameter \A_WIDTH 1
+ parameter \A_WIDTH 2
parameter \Y_WIDTH 1
connect \A \o
- connect \Y $3
+ connect \Y $7
end
- process $group_3
+ process $group_4
assign \en_o 1'0
- assign \en_o $3
+ assign \en_o $7
sync init
end
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 output 0 \en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 1 input 1 \i
+ wire width 2 input 1 \i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 1 output 2 \o
+ wire width 2 output 2 \o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:42"
- wire width 1 \ni
+ wire width 2 \ni
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
- wire width 1 $1
+ wire width 2 $1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
cell $not $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \Y_WIDTH 2
+ connect \A \i
+ connect \Y $1
+ end
+ process $group_0
+ assign \ni 2'00
+ assign \ni $1
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
+ wire width 1 \t0
+ process $group_1
+ assign \t0 1'0
+ assign \t0 \i [0]
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
+ wire width 1 \t1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $4
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $reduce_bool $5
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \Y_WIDTH 1
+ connect \A { \i [0] \ni [1] }
+ connect \Y $4
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $not $6
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \Y_WIDTH 1
+ connect \A $4
+ connect \Y $3
+ end
+ process $group_2
+ assign \t1 1'0
+ assign \t1 $3
+ sync init
+ end
+ process $group_3
+ assign \o 2'00
+ assign \o { \t1 \t0 }
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
+ wire width 1 $7
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
+ cell $reduce_bool $8
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \Y_WIDTH 1
+ connect \A \o
+ connect \Y $7
+ end
+ process $group_4
+ assign \en_o 1'0
+ assign \en_o $7
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.wrpick_FAST_fast1"
+module \wrpick_FAST_fast1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
+ wire width 1 output 0 \en_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
+ wire width 3 input 1 \i
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
+ wire width 3 output 2 \o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:42"
+ wire width 3 \ni
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
+ wire width 3 $1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
+ cell $not $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 3
connect \A \i
connect \Y $1
end
process $group_0
- assign \ni 1'0
+ assign \ni 3'000
assign \ni $1
sync init
end
wire width 1 \t0
process $group_1
assign \t0 1'0
- assign \t0 \i
+ assign \t0 \i [0]
sync init
end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
+ wire width 1 \t1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $4
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $reduce_bool $5
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \Y_WIDTH 1
+ connect \A { \i [0] \ni [1] }
+ connect \Y $4
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $not $6
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $4
+ connect \Y $3
+ end
process $group_2
- assign \o 1'0
- assign \o { \t0 }
+ assign \t1 1'0
+ assign \t1 $3
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
+ wire width 1 \t2
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $7
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $8
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $reduce_bool $9
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 3
+ parameter \Y_WIDTH 1
+ connect \A { \i [1:0] [1] \i [1:0] [0] \ni [2] }
+ connect \Y $8
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $not $10
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $8
+ connect \Y $7
+ end
+ process $group_3
+ assign \t2 1'0
+ assign \t2 $7
+ sync init
+ end
+ process $group_4
+ assign \o 3'000
+ assign \o { \t2 \t1 \t0 }
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- wire width 1 $3
+ wire width 1 $11
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- cell $reduce_bool $4
+ cell $reduce_bool $12
parameter \A_SIGNED 0
- parameter \A_WIDTH 1
+ parameter \A_WIDTH 3
parameter \Y_WIDTH 1
connect \A \o
+ connect \Y $11
+ end
+ process $group_5
+ assign \en_o 1'0
+ assign \en_o $11
+ sync init
+ end
+end
+attribute \generator "nMigen"
+attribute \nmigen.hierarchy "test_issuer.core.wrpick_FAST_fast2"
+module \wrpick_FAST_fast2
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
+ wire width 1 output 0 \en_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
+ wire width 2 input 1 \i
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
+ wire width 2 output 2 \o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:42"
+ wire width 2 \ni
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
+ wire width 2 $1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
+ cell $not $2
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \Y_WIDTH 2
+ connect \A \i
+ connect \Y $1
+ end
+ process $group_0
+ assign \ni 2'00
+ assign \ni $1
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
+ wire width 1 \t0
+ process $group_1
+ assign \t0 1'0
+ assign \t0 \i [0]
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
+ wire width 1 \t1
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $3
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ wire width 1 $4
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $reduce_bool $5
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \Y_WIDTH 1
+ connect \A { \i [0] \ni [1] }
+ connect \Y $4
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
+ cell $not $6
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $4
connect \Y $3
end
+ process $group_2
+ assign \t1 1'0
+ assign \t1 $3
+ sync init
+ end
process $group_3
+ assign \o 2'00
+ assign \o { \t1 \t0 }
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
+ wire width 1 $7
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
+ cell $reduce_bool $8
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \Y_WIDTH 1
+ connect \A \o
+ connect \Y $7
+ end
+ process $group_4
assign \en_o 1'0
- assign \en_o $3
+ assign \en_o $7
sync init
end
end
attribute \generator "nMigen"
-attribute \nmigen.hierarchy "test_issuer.core.wrpick_FAST_spr1"
-module \wrpick_FAST_spr1
+attribute \nmigen.hierarchy "test_issuer.core.wrpick_FAST_nia"
+module \wrpick_FAST_nia
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 output 0 \en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
end
end
attribute \generator "nMigen"
-attribute \nmigen.hierarchy "test_issuer.core.wrpick_FAST_spr2"
-module \wrpick_FAST_spr2
+attribute \nmigen.hierarchy "test_issuer.core.wrpick_FAST_msr"
+module \wrpick_FAST_msr
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 output 0 \en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 2 input 1 \i
+ wire width 1 input 1 \i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 2 output 2 \o
+ wire width 1 output 2 \o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:42"
- wire width 2 \ni
+ wire width 1 \ni
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
- wire width 2 $1
+ wire width 1 $1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
cell $not $2
- parameter \A_SIGNED 0
- parameter \A_WIDTH 2
- parameter \Y_WIDTH 2
- connect \A \i
- connect \Y $1
- end
- process $group_0
- assign \ni 2'00
- assign \ni $1
- sync init
- end
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
- wire width 1 \t0
- process $group_1
- assign \t0 1'0
- assign \t0 \i [0]
- sync init
- end
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
- wire width 1 \t1
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
- wire width 1 $3
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
- wire width 1 $4
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
- cell $reduce_bool $5
- parameter \A_SIGNED 0
- parameter \A_WIDTH 2
- parameter \Y_WIDTH 1
- connect \A { \i [0] \ni [1] }
- connect \Y $4
- end
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
- cell $not $6
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $4
- connect \Y $3
- end
- process $group_2
- assign \t1 1'0
- assign \t1 $3
- sync init
- end
- process $group_3
- assign \o 2'00
- assign \o { \t1 \t0 }
- sync init
- end
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- wire width 1 $7
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- cell $reduce_bool $8
- parameter \A_SIGNED 0
- parameter \A_WIDTH 2
- parameter \Y_WIDTH 1
- connect \A \o
- connect \Y $7
- end
- process $group_4
- assign \en_o 1'0
- assign \en_o $7
- sync init
- end
-end
-attribute \generator "nMigen"
-attribute \nmigen.hierarchy "test_issuer.core.wrpick_FAST_nia"
-module \wrpick_FAST_nia
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
- wire width 1 output 0 \en_o
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 2 input 1 \i
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 2 output 2 \o
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:42"
- wire width 2 \ni
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
- wire width 2 $1
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:43"
- cell $not $2
- parameter \A_SIGNED 0
- parameter \A_WIDTH 2
- parameter \Y_WIDTH 2
connect \A \i
connect \Y $1
end
process $group_0
- assign \ni 2'00
+ assign \ni 1'0
assign \ni $1
sync init
end
wire width 1 \t0
process $group_1
assign \t0 1'0
- assign \t0 \i [0]
+ assign \t0 \i
sync init
end
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:45"
- wire width 1 \t1
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
- wire width 1 $3
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
- wire width 1 $4
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
- cell $reduce_bool $5
- parameter \A_SIGNED 0
- parameter \A_WIDTH 2
- parameter \Y_WIDTH 1
- connect \A { \i [0] \ni [1] }
- connect \Y $4
- end
- attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:50"
- cell $not $6
- parameter \A_SIGNED 0
- parameter \A_WIDTH 1
- parameter \Y_WIDTH 1
- connect \A $4
- connect \Y $3
- end
process $group_2
- assign \t1 1'0
- assign \t1 $3
- sync init
- end
- process $group_3
- assign \o 2'00
- assign \o { \t1 \t0 }
+ assign \o 1'0
+ assign \o { \t0 }
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- wire width 1 $7
+ wire width 1 $3
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:55"
- cell $reduce_bool $8
+ cell $reduce_bool $4
parameter \A_SIGNED 0
- parameter \A_WIDTH 2
+ parameter \A_WIDTH 1
parameter \Y_WIDTH 1
connect \A \o
- connect \Y $7
+ connect \Y $3
end
- process $group_4
+ process $group_3
assign \en_o 1'0
- assign \en_o $7
+ assign \en_o $3
sync init
end
end
attribute \generator "nMigen"
-attribute \nmigen.hierarchy "test_issuer.core.wrpick_FAST_msr"
-module \wrpick_FAST_msr
+attribute \nmigen.hierarchy "test_issuer.core.wrpick_SPR_spr1"
+module \wrpick_SPR_spr1
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 output 0 \en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
wire width 8 input 4 \d_rd1__ren
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 64 output 5 \d_rd1__data_o
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:32"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:546"
wire width 1 input 6 \valid
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:75"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:74"
wire width 1 input 7 \issue_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:319"
wire width 1 input 8 \bigendian
wire width 8 output 10 \fast_nia_wen
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 8 \fast_nia_wen$next
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:76"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:75"
wire width 1 output 11 \corebusy_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 8 input 12 \wen
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
wire width 1 input 15 \clk
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:34"
- wire width 10 output 16 \fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:33"
+ wire width 11 output 16 \fn_unit
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1000111 "OP_MFMSR"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:33"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:32"
wire width 7 output 18 \insn_type
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 output 19 \imm
wire width 1 output 20 \imm_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 1 output 21 \oper_i__lk
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:59"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:58"
wire width 1 output 22 \lk
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 output 23 \rc
wire width 1 output 26 \oe_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 1 output 27 \oper_i__invert_a
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:62"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:61"
wire width 1 output 28 \invert_a
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:63"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:62"
wire width 1 output 29 \zero_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 1 output 30 \oper_i__invert_out
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:64"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:63"
wire width 1 output 31 \invert_out
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 3 output 32 \cr_out
attribute \enum_value_00 "ZERO"
attribute \enum_value_01 "ONE"
attribute \enum_value_10 "CA"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:65"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:64"
wire width 2 output 35 \input_carry
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 1 output 36 \oper_i__output_carry
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:66"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:65"
wire width 1 output 37 \output_carry
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 1 output 38 \oper_i__input_cr
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:67"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:66"
wire width 1 output 39 \input_cr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 1 output 40 \oper_i__output_cr
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:68"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:67"
wire width 1 output 41 \output_cr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 1 output 42 \oper_i__is_32bit
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:69"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:68"
wire width 1 output 43 \is_32bit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 1 output 44 \oper_i__is_signed
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:70"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:69"
wire width 1 output 45 \is_signed
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 4 output 46 \oper_i__data_len
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:72"
- wire width 4 output 47 \data_len
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:71"
+ wire width 4 output 47 \data_len
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:70"
wire width 32 output 48 \insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 1 output 49 \oper_i__byte_reverse
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:73"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:72"
wire width 1 output 50 \byte_reverse
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 1 output 51 \oper_i__sign_extend
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:74"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:73"
wire width 1 output 52 \sign_extend
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
wire width 1 output 53 \issue_i$1
attribute \enum_value_1000111 "OP_MFMSR"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 7 output 57 \oper_i__insn_type$2
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
+ wire width 7 output 57 \oper_i__insn_type$2
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
+ wire width 11 output 58 \oper_i__fn_unit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
+ wire width 32 output 59 \oper_i__insn
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
+ wire width 1 output 60 \oper_i__read_cr_whole
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:55"
+ wire width 1 output 61 \read_cr_whole
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
+ wire width 1 output 62 \oper_i__write_cr_whole
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:57"
+ wire width 1 output 63 \write_cr_whole
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
+ wire width 1 output 64 \issue_i$3
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
+ wire width 1 output 65 \busy_o$4
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 66 \cr_in1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 67 \cr_in2_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 68 \cr_in2_ok$5
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
+ wire width 7 output 69 \oper_i__insn_type$6
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 output 58 \oper_i__fn_unit
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 32 output 59 \oper_i__insn
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 1 output 60 \oper_i__read_cr_whole
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:56"
- wire width 1 output 61 \read_cr_whole
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 1 output 62 \oper_i__write_cr_whole
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:58"
- wire width 1 output 63 \write_cr_whole
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
+ wire width 11 output 70 \oper_i__fn_unit$7
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
+ wire width 1 output 71 \oper_i__lk$8
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
+ wire width 1 output 72 \oper_i__is_32bit$9
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
+ wire width 32 output 73 \oper_i__insn$10
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
- wire width 1 output 64 \issue_i$3
+ wire width 1 output 74 \issue_i$11
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
- wire width 1 output 65 \busy_o$4
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 66 \cr_in1_ok
+ wire width 1 output 75 \busy_o$12
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 67 \cr_in2_ok
+ wire width 1 output 76 \fast1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 68 \cr_in2_ok$5
+ wire width 1 output 77 \fast2_ok
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1000111 "OP_MFMSR"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 7 output 69 \oper_i__insn_type$6
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
+ wire width 7 output 78 \oper_i__insn_type$13
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 output 70 \oper_i__fn_unit$7
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 1 output 71 \oper_i__lk$8
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 1 output 72 \oper_i__is_32bit$9
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 32 output 73 \oper_i__insn$10
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
+ wire width 11 output 79 \oper_i__fn_unit$14
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
+ wire width 32 output 80 \oper_i__insn$15
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
+ wire width 1 output 81 \oper_i__is_32bit$16
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
+ wire width 5 output 82 \oper_i__traptype
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:75"
+ wire width 5 output 83 \traptype
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
+ wire width 13 output 84 \oper_i__trapaddr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:76"
+ wire width 13 output 85 \trapaddr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
- wire width 1 output 74 \issue_i$11
+ wire width 1 output 86 \issue_i$17
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
- wire width 1 output 75 \busy_o$12
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 76 \fast1_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 77 \fast2_ok
+ wire width 1 output 87 \busy_o$18
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1000111 "OP_MFMSR"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 7 output 78 \oper_i__insn_type$13
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 7 output 88 \oper_i__insn_type$19
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 output 79 \oper_i__fn_unit$14
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 32 output 80 \oper_i__insn$15
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 1 output 81 \oper_i__is_32bit$16
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 output 82 \oper_i__traptype
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:76"
- wire width 4 input 83 \traptype
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 13 output 84 \oper_i__trapaddr
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:77"
- wire width 13 output 85 \trapaddr
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 output 89 \oper_i__fn_unit$20
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 output 90 \oper_i__lk$21
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 output 91 \oper_i__invert_a$22
+ attribute \enum_base_type "CryIn"
+ attribute \enum_value_00 "ZERO"
+ attribute \enum_value_01 "ONE"
+ attribute \enum_value_10 "CA"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 2 output 92 \oper_i__input_carry$23
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 output 93 \oper_i__invert_out$24
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 output 94 \oper_i__output_carry$25
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 output 95 \oper_i__is_32bit$26
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 1 output 96 \oper_i__is_signed$27
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 4 output 97 \oper_i__data_len$28
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
- wire width 1 output 86 \issue_i$17
+ wire width 1 output 98 \issue_i$29
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
- wire width 1 output 87 \busy_o$18
+ wire width 1 output 99 \busy_o$30
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1000111 "OP_MFMSR"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 7 output 88 \oper_i__insn_type$19
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 7 output 100 \oper_i__insn_type$31
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 output 89 \oper_i__fn_unit$20
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 output 90 \oper_i__lk$21
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 output 91 \oper_i__invert_a$22
- attribute \enum_base_type "CryIn"
- attribute \enum_value_00 "ZERO"
- attribute \enum_value_01 "ONE"
- attribute \enum_value_10 "CA"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 2 output 92 \oper_i__input_carry$23
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 output 93 \oper_i__invert_out$24
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 output 94 \oper_i__output_carry$25
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 output 95 \oper_i__is_32bit$26
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 output 96 \oper_i__is_signed$27
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 4 output 97 \oper_i__data_len$28
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 output 101 \oper_i__fn_unit$32
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 output 102 \oper_i__insn$33
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 output 103 \oper_i__is_32bit$34
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
- wire width 1 output 98 \issue_i$29
+ wire width 1 output 104 \issue_i$35
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
- wire width 1 output 99 \busy_o$30
+ wire width 1 output 105 \busy_o$36
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 106 \spr1_ok
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 7 output 100 \oper_i__insn_type$31
+ wire width 7 output 107 \oper_i__insn_type$37
attribute \enum_base_type "CryIn"
attribute \enum_value_00 "ZERO"
attribute \enum_value_01 "ONE"
attribute \enum_value_10 "CA"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 2 output 101 \oper_i__input_carry$32
+ wire width 2 output 108 \oper_i__input_carry$38
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 output 102 \oper_i__output_carry$33
+ wire width 1 output 109 \oper_i__output_carry$39
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 output 103 \oper_i__input_cr$34
+ wire width 1 output 110 \oper_i__input_cr$40
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 output 104 \oper_i__output_cr$35
+ wire width 1 output 111 \oper_i__output_cr$41
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 output 105 \oper_i__is_32bit$36
+ wire width 1 output 112 \oper_i__is_32bit$42
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 output 106 \oper_i__is_signed$37
+ wire width 1 output 113 \oper_i__is_signed$43
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
- wire width 1 output 107 \issue_i$38
+ wire width 1 output 114 \issue_i$44
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
- wire width 1 output 108 \busy_o$39
+ wire width 1 output 115 \busy_o$45
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 109 \reg3_ok
+ wire width 1 output 116 \reg3_ok
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 7 output 110 \oper_i__insn_type$40
+ wire width 7 output 117 \oper_i__insn_type$46
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 output 111 \oper_i__zero_a
+ wire width 1 output 118 \oper_i__zero_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 output 112 \oper_i__is_32bit$41
+ wire width 1 output 119 \oper_i__is_32bit$47
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 output 113 \oper_i__is_signed$42
+ wire width 1 output 120 \oper_i__is_signed$48
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 4 output 114 \oper_i__data_len$43
+ wire width 4 output 121 \oper_i__data_len$49
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 output 115 \oper_i__byte_reverse$44
+ wire width 1 output 122 \oper_i__byte_reverse$50
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 output 116 \oper_i__sign_extend$45
+ wire width 1 output 123 \oper_i__sign_extend$51
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 output 117 \oper_i__update
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:75"
- wire width 1 output 118 \update
+ wire width 1 output 124 \oper_i__update
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:74"
+ wire width 1 output 125 \update
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
- wire width 1 output 119 \issue_i$46
+ wire width 1 output 126 \issue_i$52
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
- wire width 1 output 120 \busy_o$47
+ wire width 1 output 127 \busy_o$53
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 5 output 121 \reg1
+ wire width 5 output 128 \reg1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 4 output 129 \rd__rel
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 4 output 130 \rd__go
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 64 output 131 \src1_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 4 output 122 \rd__rel
+ wire width 6 output 132 \rd__rel$54
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 4 output 123 \rd__go
+ wire width 6 output 133 \rd__go$55
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 124 \src1_i
+ wire width 64 output 134 \src1_i$56
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 6 output 125 \rd__rel$48
+ wire width 6 output 135 \rd__rel$57
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 6 output 126 \rd__go$49
+ wire width 6 output 136 \rd__go$58
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 127 \src1_i$50
+ wire width 64 output 137 \src1_i$59
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 6 output 128 \rd__rel$51
+ wire width 2 output 138 \rd__rel$60
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 6 output 129 \rd__go$52
+ wire width 2 output 139 \rd__go$61
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 130 \src1_i$53
+ wire width 64 output 140 \src1_i$62
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 2 output 131 \rd__rel$54
+ wire width 6 output 141 \rd__rel$63
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 2 output 132 \rd__go$55
+ wire width 6 output 142 \rd__go$64
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 133 \src1_i$56
+ wire width 64 output 143 \src1_i$65
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 4 output 134 \rd__rel$57
+ wire width 4 output 144 \rd__rel$66
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 4 output 135 \rd__go$58
+ wire width 4 output 145 \rd__go$67
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 136 \src1_i$59
+ wire width 64 output 146 \src1_i$68
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 137 \rd__rel$60
+ wire width 3 output 147 \rd__rel$69
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 138 \rd__go$61
+ wire width 3 output 148 \rd__go$70
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 139 \src1_i$62
+ wire width 64 output 149 \src1_i$71
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 5 output 140 \reg2
+ wire width 5 output 150 \reg2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 141 \src2_i
+ wire width 64 output 151 \src2_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 142 \src2_i$63
+ wire width 64 output 152 \src2_i$72
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 143 \src2_i$64
+ wire width 64 output 153 \src2_i$73
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 144 \src2_i$65
+ wire width 64 output 154 \src2_i$74
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 145 \src2_i$66
+ wire width 64 output 155 \src2_i$75
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 146 \src2_i$67
+ wire width 64 output 156 \src2_i$76
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 5 output 147 \reg3
+ wire width 5 output 157 \reg3
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 148 \src3_i
+ wire width 64 output 158 \src3_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 149 \cr_in1
+ wire width 3 output 159 \cr_in1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 4 output 150 \rd__rel$68
+ wire width 4 output 160 \rd__rel$77
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 4 output 151 \rd__go$69
+ wire width 4 output 161 \rd__go$78
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 152 \cr_in2
+ wire width 3 output 162 \cr_in2
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 153 \cr_in2$70
+ wire width 3 output 163 \cr_in2$79
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 154 \fast1
+ wire width 3 output 164 \fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 155 \src1_i$71
+ wire width 64 output 165 \src1_i$80
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 156 \fast2
+ wire width 3 output 166 \fast2
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 64 output 167 \src2_i$81
+ attribute \enum_base_type "SPR"
+ attribute \enum_value_0000000001 "XER"
+ attribute \enum_value_0000000011 "DSCR"
+ attribute \enum_value_0000001000 "LR"
+ attribute \enum_value_0000001001 "CTR"
+ attribute \enum_value_0000001101 "AMR"
+ attribute \enum_value_0000010001 "DSCR_priv"
+ attribute \enum_value_0000010010 "DSISR"
+ attribute \enum_value_0000010011 "DAR"
+ attribute \enum_value_0000010110 "DEC"
+ attribute \enum_value_0000011010 "SRR0"
+ attribute \enum_value_0000011011 "SRR1"
+ attribute \enum_value_0000011100 "CFAR"
+ attribute \enum_value_0000011101 "AMR_priv"
+ attribute \enum_value_0000110000 "PIDR"
+ attribute \enum_value_0000111101 "IAMR"
+ attribute \enum_value_0010000000 "TFHAR"
+ attribute \enum_value_0010000001 "TFIAR"
+ attribute \enum_value_0010000010 "TEXASR"
+ attribute \enum_value_0010000011 "TEXASRU"
+ attribute \enum_value_0010001000 "CTRL"
+ attribute \enum_value_0010010000 "TIDR"
+ attribute \enum_value_0010011000 "CTRL_priv"
+ attribute \enum_value_0010011001 "FSCR"
+ attribute \enum_value_0010011101 "UAMOR"
+ attribute \enum_value_0010011110 "GSR"
+ attribute \enum_value_0010011111 "PSPB"
+ attribute \enum_value_0010110000 "DPDES"
+ attribute \enum_value_0010110100 "DAWR0"
+ attribute \enum_value_0010111010 "RPR"
+ attribute \enum_value_0010111011 "CIABR"
+ attribute \enum_value_0010111100 "DAWRX0"
+ attribute \enum_value_0010111110 "HFSCR"
+ attribute \enum_value_0100000000 "VRSAVE"
+ attribute \enum_value_0100000011 "SPRG3"
+ attribute \enum_value_0100001100 "TB"
+ attribute \enum_value_0100001101 "TBU"
+ attribute \enum_value_0100010000 "SPRG0_priv"
+ attribute \enum_value_0100010001 "SPRG1_priv"
+ attribute \enum_value_0100010010 "SPRG2_priv"
+ attribute \enum_value_0100010011 "SPRG3_priv"
+ attribute \enum_value_0100011011 "CIR"
+ attribute \enum_value_0100011100 "TBL"
+ attribute \enum_value_0100011101 "TBU_hypv"
+ attribute \enum_value_0100011110 "TBU40"
+ attribute \enum_value_0100011111 "PVR"
+ attribute \enum_value_0100110000 "HSPRG0"
+ attribute \enum_value_0100110001 "HSPRG1"
+ attribute \enum_value_0100110010 "HDSISR"
+ attribute \enum_value_0100110011 "HDAR"
+ attribute \enum_value_0100110100 "SPURR"
+ attribute \enum_value_0100110101 "PURR"
+ attribute \enum_value_0100110110 "HDEC"
+ attribute \enum_value_0100111001 "HRMOR"
+ attribute \enum_value_0100111010 "HSRR0"
+ attribute \enum_value_0100111011 "HSRR1"
+ attribute \enum_value_0100111110 "LPCR"
+ attribute \enum_value_0100111111 "LPIDR"
+ attribute \enum_value_0101010000 "HMER"
+ attribute \enum_value_0101010001 "HMEER"
+ attribute \enum_value_0101010010 "PCR"
+ attribute \enum_value_0101010011 "HEIR"
+ attribute \enum_value_0101011101 "AMOR"
+ attribute \enum_value_0110111110 "TIR"
+ attribute \enum_value_0111010000 "PTCR"
+ attribute \enum_value_1100000000 "SIER"
+ attribute \enum_value_1100000001 "MMCR2"
+ attribute \enum_value_1100000010 "MMCRA"
+ attribute \enum_value_1100000011 "PMC1"
+ attribute \enum_value_1100000100 "PMC2"
+ attribute \enum_value_1100000101 "PMC3"
+ attribute \enum_value_1100000110 "PMC4"
+ attribute \enum_value_1100000111 "PMC5"
+ attribute \enum_value_1100001000 "PMC6"
+ attribute \enum_value_1100001011 "MMCR0"
+ attribute \enum_value_1100001100 "SIAR"
+ attribute \enum_value_1100001101 "SDAR"
+ attribute \enum_value_1100001110 "MMCR1"
+ attribute \enum_value_1100010000 "SIER_priv"
+ attribute \enum_value_1100010001 "MMCR2_priv"
+ attribute \enum_value_1100010010 "MMCRA_priv"
+ attribute \enum_value_1100010011 "PMC1_priv"
+ attribute \enum_value_1100010100 "PMC2_priv"
+ attribute \enum_value_1100010101 "PMC3_priv"
+ attribute \enum_value_1100010110 "PMC4_priv"
+ attribute \enum_value_1100010111 "PMC5_priv"
+ attribute \enum_value_1100011000 "PMC6_priv"
+ attribute \enum_value_1100011011 "MMCR0_priv"
+ attribute \enum_value_1100011100 "SIAR_priv"
+ attribute \enum_value_1100011101 "SDAR_priv"
+ attribute \enum_value_1100011110 "MMCR1_priv"
+ attribute \enum_value_1100100000 "BESCRS"
+ attribute \enum_value_1100100001 "BESCRSU"
+ attribute \enum_value_1100100010 "BESCRR"
+ attribute \enum_value_1100100011 "BESCRRU"
+ attribute \enum_value_1100100100 "EBBHR"
+ attribute \enum_value_1100100101 "EBBRR"
+ attribute \enum_value_1100100110 "BESCR"
+ attribute \enum_value_1100101000 "reserved808"
+ attribute \enum_value_1100101001 "reserved809"
+ attribute \enum_value_1100101010 "reserved810"
+ attribute \enum_value_1100101011 "reserved811"
+ attribute \enum_value_1100101111 "TAR"
+ attribute \enum_value_1100110000 "ASDR"
+ attribute \enum_value_1100110111 "PSSCR"
+ attribute \enum_value_1101010000 "IC"
+ attribute \enum_value_1101010001 "VTB"
+ attribute \enum_value_1101010111 "PSSCR_hypv"
+ attribute \enum_value_1110000000 "PPR"
+ attribute \enum_value_1110000010 "PPR32"
+ attribute \enum_value_1111111111 "PIR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 10 output 168 \spr1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 157 \src2_i$72
+ wire width 64 output 169 \src2_i$82
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 5 output 158 \rego
+ wire width 5 output 170 \rego
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 5 output 159 \wr__rel
+ wire width 5 output 171 \wr__rel
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 5 output 160 \wr__go
+ wire width 5 output 172 \wr__go
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
wire width 5 \wr__go$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 161 \wr__rel$73
+ wire width 3 output 173 \wr__rel$83
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 3 output 174 \wr__go$84
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 3 \wr__go$84$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 5 output 175 \wr__rel$85
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 162 \wr__go$74
+ wire width 5 output 176 \wr__go$86
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 \wr__go$74$next
+ wire width 5 \wr__go$86$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 5 output 163 \wr__rel$75
+ wire width 3 output 177 \wr__rel$87
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 5 output 164 \wr__go$76
+ wire width 3 output 178 \wr__go$88
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 5 \wr__go$76$next
+ wire width 3 \wr__go$88$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 165 \wr__rel$77
+ wire width 6 output 179 \wr__rel$89
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 166 \wr__go$78
+ wire width 6 output 180 \wr__go$90
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 \wr__go$78$next
+ wire width 6 \wr__go$90$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 167 \wr__rel$79
+ wire width 3 output 181 \wr__rel$91
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 168 \wr__go$80
+ wire width 3 output 182 \wr__go$92
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 \wr__go$80$next
+ wire width 3 \wr__go$92$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 input 169 \o_ok
+ wire width 1 input 183 \o_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 2 output 170 \wr__rel$81
+ wire width 2 output 184 \wr__rel$93
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 2 output 171 \wr__go$82
+ wire width 2 output 185 \wr__go$94
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 2 \wr__go$82$next
+ wire width 2 \wr__go$94$next
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 172 \o
+ wire width 64 output 186 \o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 5 output 173 \ea
+ wire width 5 output 187 \ea
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 input 174 \ea_ok
+ wire width 1 input 188 \ea_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 175 \ea$83
+ wire width 64 output 189 \ea$95
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 176 \fasto1
+ wire width 3 output 190 \fasto1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 177 \wr__rel$84
+ wire width 3 output 191 \wr__rel$96
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 178 \wr__go$85
+ wire width 3 output 192 \wr__go$97
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 \wr__go$85$next
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 179 \fasto2
+ wire width 3 \wr__go$97$next
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 3 output 193 \fasto2
+ attribute \enum_base_type "SPR"
+ attribute \enum_value_0000000001 "XER"
+ attribute \enum_value_0000000011 "DSCR"
+ attribute \enum_value_0000001000 "LR"
+ attribute \enum_value_0000001001 "CTR"
+ attribute \enum_value_0000001101 "AMR"
+ attribute \enum_value_0000010001 "DSCR_priv"
+ attribute \enum_value_0000010010 "DSISR"
+ attribute \enum_value_0000010011 "DAR"
+ attribute \enum_value_0000010110 "DEC"
+ attribute \enum_value_0000011010 "SRR0"
+ attribute \enum_value_0000011011 "SRR1"
+ attribute \enum_value_0000011100 "CFAR"
+ attribute \enum_value_0000011101 "AMR_priv"
+ attribute \enum_value_0000110000 "PIDR"
+ attribute \enum_value_0000111101 "IAMR"
+ attribute \enum_value_0010000000 "TFHAR"
+ attribute \enum_value_0010000001 "TFIAR"
+ attribute \enum_value_0010000010 "TEXASR"
+ attribute \enum_value_0010000011 "TEXASRU"
+ attribute \enum_value_0010001000 "CTRL"
+ attribute \enum_value_0010010000 "TIDR"
+ attribute \enum_value_0010011000 "CTRL_priv"
+ attribute \enum_value_0010011001 "FSCR"
+ attribute \enum_value_0010011101 "UAMOR"
+ attribute \enum_value_0010011110 "GSR"
+ attribute \enum_value_0010011111 "PSPB"
+ attribute \enum_value_0010110000 "DPDES"
+ attribute \enum_value_0010110100 "DAWR0"
+ attribute \enum_value_0010111010 "RPR"
+ attribute \enum_value_0010111011 "CIABR"
+ attribute \enum_value_0010111100 "DAWRX0"
+ attribute \enum_value_0010111110 "HFSCR"
+ attribute \enum_value_0100000000 "VRSAVE"
+ attribute \enum_value_0100000011 "SPRG3"
+ attribute \enum_value_0100001100 "TB"
+ attribute \enum_value_0100001101 "TBU"
+ attribute \enum_value_0100010000 "SPRG0_priv"
+ attribute \enum_value_0100010001 "SPRG1_priv"
+ attribute \enum_value_0100010010 "SPRG2_priv"
+ attribute \enum_value_0100010011 "SPRG3_priv"
+ attribute \enum_value_0100011011 "CIR"
+ attribute \enum_value_0100011100 "TBL"
+ attribute \enum_value_0100011101 "TBU_hypv"
+ attribute \enum_value_0100011110 "TBU40"
+ attribute \enum_value_0100011111 "PVR"
+ attribute \enum_value_0100110000 "HSPRG0"
+ attribute \enum_value_0100110001 "HSPRG1"
+ attribute \enum_value_0100110010 "HDSISR"
+ attribute \enum_value_0100110011 "HDAR"
+ attribute \enum_value_0100110100 "SPURR"
+ attribute \enum_value_0100110101 "PURR"
+ attribute \enum_value_0100110110 "HDEC"
+ attribute \enum_value_0100111001 "HRMOR"
+ attribute \enum_value_0100111010 "HSRR0"
+ attribute \enum_value_0100111011 "HSRR1"
+ attribute \enum_value_0100111110 "LPCR"
+ attribute \enum_value_0100111111 "LPIDR"
+ attribute \enum_value_0101010000 "HMER"
+ attribute \enum_value_0101010001 "HMEER"
+ attribute \enum_value_0101010010 "PCR"
+ attribute \enum_value_0101010011 "HEIR"
+ attribute \enum_value_0101011101 "AMOR"
+ attribute \enum_value_0110111110 "TIR"
+ attribute \enum_value_0111010000 "PTCR"
+ attribute \enum_value_1100000000 "SIER"
+ attribute \enum_value_1100000001 "MMCR2"
+ attribute \enum_value_1100000010 "MMCRA"
+ attribute \enum_value_1100000011 "PMC1"
+ attribute \enum_value_1100000100 "PMC2"
+ attribute \enum_value_1100000101 "PMC3"
+ attribute \enum_value_1100000110 "PMC4"
+ attribute \enum_value_1100000111 "PMC5"
+ attribute \enum_value_1100001000 "PMC6"
+ attribute \enum_value_1100001011 "MMCR0"
+ attribute \enum_value_1100001100 "SIAR"
+ attribute \enum_value_1100001101 "SDAR"
+ attribute \enum_value_1100001110 "MMCR1"
+ attribute \enum_value_1100010000 "SIER_priv"
+ attribute \enum_value_1100010001 "MMCR2_priv"
+ attribute \enum_value_1100010010 "MMCRA_priv"
+ attribute \enum_value_1100010011 "PMC1_priv"
+ attribute \enum_value_1100010100 "PMC2_priv"
+ attribute \enum_value_1100010101 "PMC3_priv"
+ attribute \enum_value_1100010110 "PMC4_priv"
+ attribute \enum_value_1100010111 "PMC5_priv"
+ attribute \enum_value_1100011000 "PMC6_priv"
+ attribute \enum_value_1100011011 "MMCR0_priv"
+ attribute \enum_value_1100011100 "SIAR_priv"
+ attribute \enum_value_1100011101 "SDAR_priv"
+ attribute \enum_value_1100011110 "MMCR1_priv"
+ attribute \enum_value_1100100000 "BESCRS"
+ attribute \enum_value_1100100001 "BESCRSU"
+ attribute \enum_value_1100100010 "BESCRR"
+ attribute \enum_value_1100100011 "BESCRRU"
+ attribute \enum_value_1100100100 "EBBHR"
+ attribute \enum_value_1100100101 "EBBRR"
+ attribute \enum_value_1100100110 "BESCR"
+ attribute \enum_value_1100101000 "reserved808"
+ attribute \enum_value_1100101001 "reserved809"
+ attribute \enum_value_1100101010 "reserved810"
+ attribute \enum_value_1100101011 "reserved811"
+ attribute \enum_value_1100101111 "TAR"
+ attribute \enum_value_1100110000 "ASDR"
+ attribute \enum_value_1100110111 "PSSCR"
+ attribute \enum_value_1101010000 "IC"
+ attribute \enum_value_1101010001 "VTB"
+ attribute \enum_value_1101010111 "PSSCR_hypv"
+ attribute \enum_value_1110000000 "PPR"
+ attribute \enum_value_1110000010 "PPR32"
+ attribute \enum_value_1111111111 "PIR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 10 output 194 \spro
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
- wire width 32 output 180 \opcode_in
+ wire width 32 output 195 \opcode_in
attribute \enum_base_type "In1Sel"
attribute \enum_value_000 "NONE"
attribute \enum_value_001 "RA"
attribute \enum_value_011 "SPR"
attribute \enum_value_100 "RS"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:124"
- wire width 3 output 181 \in1_sel
+ wire width 3 output 196 \in1_sel
attribute \enum_base_type "In2Sel"
attribute \enum_value_0000 "NONE"
attribute \enum_value_0001 "RB"
attribute \enum_value_1100 "SPR"
attribute \enum_value_1101 "RS"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:125"
- wire width 4 output 182 \in2_sel
+ wire width 4 output 197 \in2_sel
attribute \enum_base_type "In3Sel"
attribute \enum_value_00 "NONE"
attribute \enum_value_01 "RS"
attribute \enum_value_10 "RB"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:126"
- wire width 2 output 183 \in3_sel
+ wire width 2 output 198 \in3_sel
attribute \enum_base_type "OutSel"
attribute \enum_value_00 "NONE"
attribute \enum_value_01 "RT"
attribute \enum_value_10 "RA"
attribute \enum_value_11 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:127"
- wire width 2 output 184 \out_sel
+ wire width 2 output 199 \out_sel
attribute \enum_base_type "RC"
attribute \enum_value_00 "NONE"
attribute \enum_value_01 "ONE"
attribute \enum_value_10 "RC"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:131"
- wire width 2 output 185 \rc_sel
+ wire width 2 output 200 \rc_sel
attribute \enum_base_type "CRInSel"
attribute \enum_value_000 "NONE"
attribute \enum_value_001 "CR0"
attribute \enum_value_101 "BC"
attribute \enum_value_110 "WHOLE_REG"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:128"
- wire width 3 output 186 \cr_in
+ wire width 3 output 201 \cr_in
attribute \enum_base_type "CROutSel"
attribute \enum_value_000 "NONE"
attribute \enum_value_001 "CR0"
attribute \enum_value_011 "BT"
attribute \enum_value_100 "WHOLE_REG"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:129"
- wire width 3 output 187 \cr_out$86
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:37"
- wire width 64 output 188 \nia
+ wire width 3 output 202 \cr_out$98
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:36"
+ wire width 64 output 203 \nia
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 189 \function_unit
+ wire width 11 output 204 \function_unit
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:120"
- wire width 7 output 190 \internal_op
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 191 \rego_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 192 \ea_ok$87
+ wire width 7 output 205 \internal_op
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 10 output 193 \spr1
+ wire width 1 output 206 \rego_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 194 \spr1_ok
+ wire width 1 output 207 \ea_ok$99
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 10 output 195 \spro
+ wire width 1 output 208 \spro_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 196 \spro_ok
+ wire width 1 output 209 \fasto1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 197 \fasto1_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 198 \fasto2_ok
+ wire width 1 output 210 \fasto2_ok
attribute \enum_base_type "LdstLen"
attribute \enum_value_0000 "NONE"
attribute \enum_value_0001 "is1B"
attribute \enum_value_0100 "is4B"
attribute \enum_value_1000 "is8B"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:130"
- wire width 4 output 199 \ldst_len
+ wire width 4 output 211 \ldst_len
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 200 \inv_a
+ wire width 1 output 212 \inv_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 201 \inv_out
+ wire width 1 output 213 \inv_out
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 202 \cry_out
+ wire width 1 output 214 \cry_out
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 203 \is_32b
+ wire width 1 output 215 \is_32b
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 204 \sgn
+ wire width 1 output 216 \sgn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 205 \lk$88
+ wire width 1 output 217 \lk$100
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 206 \br
+ wire width 1 output 218 \br
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 207 \sgn_ext
+ wire width 1 output 219 \sgn_ext
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 208 \upd
+ wire width 1 output 220 \upd
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:35"
+ wire width 8 output 221 \asmcode
attribute \enum_base_type "Form"
attribute \enum_value_00000 "NONE"
attribute \enum_value_00001 "I"
attribute \enum_value_11011 "Z22"
attribute \enum_value_11100 "Z23"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:121"
- wire width 5 output 209 \form
+ wire width 5 output 222 \form
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 210 \rsrv
+ wire width 1 output 223 \rsrv
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 211 \sgl_pipe
+ wire width 1 output 224 \sgl_pipe
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:123"
- wire width 8 output 212 \asmcode
+ wire width 8 output 225 \asmcode$101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
+ wire width 1 input 226 \go_die_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
+ wire width 1 input 227 \shadown_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
+ wire width 64 output 228 \dest1_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
- wire width 1 input 213 \go_die_i
+ wire width 1 input 229 \go_die_i$102
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
- wire width 1 input 214 \shadown_i
+ wire width 1 input 230 \shadown_i$103
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
- wire width 64 output 215 \dest1_o
+ wire width 64 output 231 \dest1_o$104
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
- wire width 1 input 216 \go_die_i$89
+ wire width 1 input 232 \go_die_i$105
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
- wire width 1 input 217 \shadown_i$90
+ wire width 1 input 233 \shadown_i$106
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
- wire width 64 output 218 \dest1_o$91
+ wire width 64 output 234 \dest1_o$107
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
- wire width 1 input 219 \go_die_i$92
+ wire width 1 input 235 \go_die_i$108
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
- wire width 1 input 220 \shadown_i$93
+ wire width 1 input 236 \shadown_i$109
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
- wire width 64 output 221 \dest1_o$94
+ wire width 64 output 237 \dest1_o$110
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
- wire width 1 input 222 \go_die_i$95
+ wire width 1 input 238 \go_die_i$111
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
- wire width 1 input 223 \shadown_i$96
+ wire width 1 input 239 \shadown_i$112
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
- wire width 64 output 224 \dest1_o$97
+ wire width 64 output 240 \dest1_o$113
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
- wire width 1 input 225 \go_die_i$98
+ wire width 1 input 241 \go_die_i$114
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
- wire width 1 input 226 \shadown_i$99
+ wire width 1 input 242 \shadown_i$115
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
- wire width 64 output 227 \dest1_o$100
+ wire width 64 output 243 \dest1_o$116
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
- wire width 1 input 228 \go_die_i$101
+ wire width 1 input 244 \go_die_i$117
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
- wire width 1 input 229 \shadown_i$102
+ wire width 1 input 245 \shadown_i$118
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
- wire width 64 output 230 \dest1_o$103
+ wire width 64 output 246 \dest1_o$119
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
- wire width 1 input 231 \go_die_i$104
+ wire width 1 input 247 \go_die_i$120
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compldst_multi.py:112"
- wire width 1 output 232 \load_mem_o
+ wire width 1 output 248 \load_mem_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compldst_multi.py:113"
- wire width 1 output 233 \stwd_mem_o
+ wire width 1 output 249 \stwd_mem_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
- wire width 1 input 234 \shadown_i$105
+ wire width 1 input 250 \shadown_i$121
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:95"
- wire width 1 output 235 \ldst_port0_is_ld_i
+ wire width 1 output 251 \ldst_port0_is_ld_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:96"
- wire width 1 output 236 \ldst_port0_is_st_i
+ wire width 1 output 252 \ldst_port0_is_st_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:99"
- wire width 4 output 237 \ldst_port0_data_len
+ wire width 4 output 253 \ldst_port0_data_len
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 96 output 238 \ldst_port0_addr_i
+ wire width 96 output 254 \ldst_port0_addr_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 239 \ldst_port0_addr_i_ok
+ wire width 1 output 255 \ldst_port0_addr_i_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:107"
- wire width 1 output 240 \ldst_port0_addr_exc_o
+ wire width 1 output 256 \ldst_port0_addr_exc_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:106"
- wire width 1 output 241 \ldst_port0_addr_ok_o
+ wire width 1 output 257 \ldst_port0_addr_ok_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 242 \ldst_port0_ld_data_o
+ wire width 64 output 258 \ldst_port0_ld_data_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 243 \ldst_port0_ld_data_o_ok
+ wire width 1 output 259 \ldst_port0_ld_data_o_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 244 \ldst_port0_st_data_i
+ wire width 64 output 260 \ldst_port0_st_data_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 245 \ldst_port0_st_data_i_ok
+ wire width 1 output 261 \ldst_port0_st_data_i_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:95"
- wire width 1 output 246 \ldst_port0_is_ld_i$106
+ wire width 1 output 262 \ldst_port0_is_ld_i$122
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:102"
- wire width 1 output 247 \ldst_port0_busy_o
+ wire width 1 output 263 \ldst_port0_busy_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:96"
- wire width 1 output 248 \ldst_port0_is_st_i$107
+ wire width 1 output 264 \ldst_port0_is_st_i$123
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:99"
- wire width 4 output 249 \ldst_port0_data_len$108
+ wire width 4 output 265 \ldst_port0_data_len$124
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 48 output 250 \ldst_port0_addr_i$109
+ wire width 48 output 266 \ldst_port0_addr_i$125
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 251 \ldst_port0_addr_i_ok$110
+ wire width 1 output 267 \ldst_port0_addr_i_ok$126
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:27"
- wire width 8 output 252 \x_mask_i
+ wire width 8 output 268 \x_mask_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:26"
- wire width 48 output 253 \x_addr_i
+ wire width 48 output 269 \x_addr_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:106"
- wire width 1 output 254 \ldst_port0_addr_ok_o$111
+ wire width 1 output 270 \ldst_port0_addr_ok_o$127
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:45"
- wire width 64 output 255 \m_ld_data_o
+ wire width 64 output 271 \m_ld_data_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 256 \ldst_port0_ld_data_o$112
+ wire width 64 output 272 \ldst_port0_ld_data_o$128
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 257 \ldst_port0_ld_data_o_ok$113
+ wire width 1 output 273 \ldst_port0_ld_data_o_ok$129
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:42"
- wire width 1 output 258 \x_busy_o
+ wire width 1 output 274 \x_busy_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 259 \ldst_port0_st_data_i_ok$114
+ wire width 1 output 275 \ldst_port0_st_data_i_ok$130
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 260 \ldst_port0_st_data_i$115
+ wire width 64 output 276 \ldst_port0_st_data_i$131
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:30"
- wire width 64 output 261 \x_st_data_i
+ wire width 64 output 277 \x_st_data_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:107"
- wire width 1 input 262 \ldst_port0_addr_exc_o$116
+ wire width 1 input 278 \ldst_port0_addr_exc_o$132
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:28"
- wire width 1 output 263 \x_ld_i
+ wire width 1 output 279 \x_ld_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:29"
- wire width 1 output 264 \x_st_i
+ wire width 1 output 280 \x_st_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:37"
- wire width 1 output 265 \m_valid_i
+ wire width 1 output 281 \m_valid_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:33"
- wire width 1 output 266 \x_valid_i
+ wire width 1 output 282 \x_valid_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:103"
- wire width 1 output 267 \ldst_port0_go_die_i
+ wire width 1 output 283 \ldst_port0_go_die_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:103"
- wire width 1 input 268 \ldst_port0_go_die_i$117
+ wire width 1 input 284 \ldst_port0_go_die_i$133
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:102"
- wire width 1 output 269 \ldst_port0_busy_o$118
+ wire width 1 output 285 \ldst_port0_busy_o$134
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 1 output 270 \dbus__cyc
+ wire width 1 output 286 \dbus__cyc
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:32"
- wire width 1 input 271 \x_stall_i
+ wire width 1 input 287 \x_stall_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 1 input 272 \dbus__ack
+ wire width 1 input 288 \dbus__ack
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 1 input 273 \dbus__err
+ wire width 1 input 289 \dbus__err
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 1 output 274 \dbus__stb
+ wire width 1 output 290 \dbus__stb
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 64 input 275 \dbus__dat_r
+ wire width 64 input 291 \dbus__dat_r
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 45 output 276 \dbus__adr
+ wire width 45 output 292 \dbus__adr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 8 output 277 \dbus__sel
+ wire width 8 output 293 \dbus__sel
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 1 output 278 \dbus__we
+ wire width 1 output 294 \dbus__we
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 64 output 279 \dbus__dat_w
+ wire width 64 output 295 \dbus__dat_w
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:36"
- wire width 1 input 280 \m_stall_i
+ wire width 1 input 296 \m_stall_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:50"
- wire width 1 output 281 \m_load_err_o
+ wire width 1 output 297 \m_load_err_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:51"
- wire width 1 output 282 \m_store_err_o
+ wire width 1 output 298 \m_store_err_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:52"
- wire width 45 output 283 \m_badaddr_o
+ wire width 45 output 299 \m_badaddr_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:43"
- wire width 1 output 284 \m_busy_o
+ wire width 1 output 300 \m_busy_o
cell \pdecode2 \pdecode2
connect \bigendian \bigendian
connect \raw_opcode_in \raw_opcode_in
connect \cr_in2_ok$1 \cr_in2_ok$5
connect \fast1_ok \fast1_ok
connect \fast2_ok \fast2_ok
+ connect \traptype \traptype
connect \trapaddr \trapaddr
+ connect \spr1_ok \spr1_ok
connect \reg3_ok \reg3_ok
connect \update \update
connect \reg1 \reg1
connect \reg3 \reg3
connect \cr_in1 \cr_in1
connect \cr_in2 \cr_in2
- connect \cr_in2$2 \cr_in2$70
+ connect \cr_in2$2 \cr_in2$79
connect \fast1 \fast1
connect \fast2 \fast2
+ connect \spr1 \spr1
connect \rego \rego
connect \ea \ea
connect \fasto1 \fasto1
connect \fasto2 \fasto2
+ connect \spro \spro
connect \opcode_in \opcode_in
connect \in1_sel \in1_sel
connect \in2_sel \in2_sel
connect \out_sel \out_sel
connect \rc_sel \rc_sel
connect \cr_in \cr_in
- connect \cr_out$3 \cr_out$86
+ connect \cr_out$3 \cr_out$98
connect \nia \nia
connect \function_unit \function_unit
connect \internal_op \internal_op
connect \rego_ok \rego_ok
- connect \ea_ok \ea_ok$87
- connect \spr1 \spr1
- connect \spr1_ok \spr1_ok
- connect \spro \spro
+ connect \ea_ok \ea_ok$99
connect \spro_ok \spro_ok
connect \fasto1_ok \fasto1_ok
connect \fasto2_ok \fasto2_ok
connect \cry_out \cry_out
connect \is_32b \is_32b
connect \sgn \sgn
- connect \lk$4 \lk$88
+ connect \lk$4 \lk$100
connect \br \br
connect \sgn_ext \sgn_ext
connect \upd \upd
+ connect \asmcode \asmcode
connect \form \form
connect \rsrv \rsrv
connect \sgl_pipe \sgl_pipe
- connect \asmcode \asmcode
+ connect \asmcode$5 \asmcode$101
end
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
- wire width 10 \fus_oper_i__fn_unit
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
+ wire width 11 \fus_oper_i__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
wire width 64 \fus_oper_i__imm_data__imm
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/alu/alu_input_record.py:35"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
wire width 4 \fus_rdmaskn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
- wire width 6 \fus_rdmaskn$119
+ wire width 6 \fus_rdmaskn$135
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 64 \fus_oper_i__imm_data__imm$120
+ wire width 64 \fus_oper_i__imm_data__imm$136
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 1 \fus_oper_i__imm_data__imm_ok$121
+ wire width 1 \fus_oper_i__imm_data__imm_ok$137
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
- wire width 4 \fus_rdmaskn$122
+ wire width 4 \fus_rdmaskn$138
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
- wire width 6 \fus_rdmaskn$123
+ wire width 6 \fus_rdmaskn$139
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 64 \fus_oper_i__imm_data__imm$124
+ wire width 64 \fus_oper_i__imm_data__imm$140
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \fus_oper_i__imm_data__imm_ok$125
+ wire width 1 \fus_oper_i__imm_data__imm_ok$141
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \fus_oper_i__rc__rc$126
+ wire width 1 \fus_oper_i__rc__rc$142
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \fus_oper_i__rc__rc_ok$127
+ wire width 1 \fus_oper_i__rc__rc_ok$143
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \fus_oper_i__oe__oe$128
+ wire width 1 \fus_oper_i__oe__oe$144
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \fus_oper_i__oe__oe_ok$129
+ wire width 1 \fus_oper_i__oe__oe_ok$145
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \fus_oper_i__zero_a$130
+ wire width 1 \fus_oper_i__zero_a$146
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 3 \fus_oper_i__write_cr__data$131
+ wire width 3 \fus_oper_i__write_cr__data$147
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 1 \fus_oper_i__write_cr__ok$132
+ wire width 1 \fus_oper_i__write_cr__ok$148
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 32 \fus_oper_i__insn$133
+ wire width 32 \fus_oper_i__insn$149
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
- wire width 2 \fus_rdmaskn$134
+ wire width 2 \fus_rdmaskn$150
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
+ wire width 6 \fus_rdmaskn$151
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 10 \fus_oper_i__fn_unit$135
+ wire width 11 \fus_oper_i__fn_unit$152
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 64 \fus_oper_i__imm_data__imm$136
+ wire width 64 \fus_oper_i__imm_data__imm$153
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 \fus_oper_i__imm_data__imm_ok$137
+ wire width 1 \fus_oper_i__imm_data__imm_ok$154
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 \fus_oper_i__rc__rc$138
+ wire width 1 \fus_oper_i__rc__rc$155
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 \fus_oper_i__rc__rc_ok$139
+ wire width 1 \fus_oper_i__rc__rc_ok$156
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 \fus_oper_i__oe__oe$140
+ wire width 1 \fus_oper_i__oe__oe$157
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 \fus_oper_i__oe__oe_ok$141
+ wire width 1 \fus_oper_i__oe__oe_ok$158
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 3 \fus_oper_i__write_cr__data$142
+ wire width 3 \fus_oper_i__write_cr__data$159
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 \fus_oper_i__write_cr__ok$143
+ wire width 1 \fus_oper_i__write_cr__ok$160
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 32 \fus_oper_i__insn$144
+ wire width 32 \fus_oper_i__insn$161
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
- wire width 4 \fus_rdmaskn$145
+ wire width 4 \fus_rdmaskn$162
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 64 \fus_oper_i__imm_data__imm$146
+ wire width 64 \fus_oper_i__imm_data__imm$163
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 \fus_oper_i__imm_data__imm_ok$147
+ wire width 1 \fus_oper_i__imm_data__imm_ok$164
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:92"
- wire width 3 \fus_rdmaskn$148
+ wire width 3 \fus_rdmaskn$165
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
wire width 64 \fus_src3_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 1 \fus_src3_i$149
+ wire width 1 \fus_src3_i$166
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 1 \fus_src4_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 2 \fus_src4_i
+ wire width 2 \fus_src4_i$167
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 2 \fus_src4_i$150
+ wire width 2 \fus_src6_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 32 \fus_src3_i$151
+ wire width 2 \fus_src4_i$168
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 4 \fus_src4_i$152
+ wire width 2 \fus_src5_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 4 \fus_src3_i$153
+ wire width 32 \fus_src3_i$169
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 4 \fus_src5_i
+ wire width 4 \fus_src4_i$170
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 4 \fus_src6_i
+ wire width 4 \fus_src3_i$171
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 \fus_src3_i$154
+ wire width 4 \fus_src5_i$172
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 \fus_src4_i$155
+ wire width 4 \fus_src6_i$173
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 \fus_src4_i$156
+ wire width 64 \fus_src3_i$174
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 \fus_src5_i$157
+ wire width 64 \fus_src3_i$175
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 \fus_src6_i$158
+ wire width 64 \fus_src4_i$176
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 64 \fus_src4_i$177
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 64 \fus_src5_i$178
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 64 \fus_src6_i$179
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \fus_o_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \fus_o_ok$159
+ wire width 1 \fus_o_ok$180
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \fus_o_ok$181
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \fus_o_ok$160
+ wire width 1 \fus_o_ok$182
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \fus_o_ok$161
+ wire width 1 \fus_o_ok$183
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \fus_o_ok$162
+ wire width 1 \fus_o_ok$184
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 \fus_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \fus_o$163
+ wire width 64 \fus_o$185
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \fus_o$164
+ wire width 64 \fus_o$186
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \fus_o$165
+ wire width 64 \fus_o$187
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \fus_o$166
+ wire width 64 \fus_o$188
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 \fus_o$189
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \fus_full_cr_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \fus_cr_a_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \fus_cr_a_ok$167
+ wire width 1 \fus_cr_a_ok$190
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \fus_cr_a_ok$168
+ wire width 1 \fus_cr_a_ok$191
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \fus_cr_a_ok$169
+ wire width 1 \fus_cr_a_ok$192
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 4 \fus_cr_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 4 \fus_cr_a$170
+ wire width 4 \fus_cr_a$193
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 4 \fus_cr_a$171
+ wire width 4 \fus_cr_a$194
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 4 \fus_cr_a$172
+ wire width 4 \fus_cr_a$195
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \fus_xer_ca_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \fus_xer_ca_ok$173
+ wire width 1 \fus_xer_ca_ok$196
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \fus_xer_ca_ok$197
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \fus_xer_ca_ok$174
+ wire width 1 \fus_xer_ca_ok$198
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 2 \fus_xer_ca
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 2 \fus_xer_ca$175
+ wire width 2 \fus_xer_ca$199
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 2 \fus_xer_ca$176
+ wire width 2 \fus_xer_ca$200
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 \fus_xer_ca$201
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \fus_xer_ov_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \fus_xer_ov_ok$202
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 2 \fus_xer_ov
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 2 \fus_xer_ov$203
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \fus_xer_so_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \fus_xer_so_ok$204
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \fus_xer_so
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \fus_spr1_ok
+ wire width 1 \fus_xer_so$205
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \fus_spr1_ok$177
+ wire width 1 \fus_fast1_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \fus_spr1
+ wire width 1 \fus_fast1_ok$206
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \fus_spr1$178
+ wire width 1 \fus_fast1_ok$207
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \fus_spr2_ok
+ wire width 64 \fus_fast1
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \fus_spr2_ok$179
+ wire width 64 \fus_fast1$208
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \fus_spr2
+ wire width 64 \fus_fast1$209
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \fus_spr2$180
+ wire width 1 \fus_fast2_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \fus_fast2_ok$210
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 \fus_fast2
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 \fus_fast2$211
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \fus_nia_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 \fus_nia_ok$181
+ wire width 1 \fus_nia_ok$212
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 \fus_nia
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 \fus_nia$182
+ wire width 64 \fus_nia$213
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 1 \fus_msr_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
wire width 64 \fus_msr
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 \fus_spr1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 \fus_spr1
cell \fus \fus
connect \ad__go \ad__go
connect \ad__rel \ad__rel
connect \oper_i__write_cr_whole \oper_i__write_cr_whole
connect \issue_i$4 \issue_i$3
connect \busy_o$5 \busy_o$4
- connect \rdmaskn$6 \fus_rdmaskn$119
+ connect \rdmaskn$6 \fus_rdmaskn$135
connect \oper_i__insn_type$7 \oper_i__insn_type$6
connect \oper_i__fn_unit$8 \oper_i__fn_unit$7
- connect \oper_i__imm_data__imm$9 \fus_oper_i__imm_data__imm$120
- connect \oper_i__imm_data__imm_ok$10 \fus_oper_i__imm_data__imm_ok$121
+ connect \oper_i__imm_data__imm$9 \fus_oper_i__imm_data__imm$136
+ connect \oper_i__imm_data__imm_ok$10 \fus_oper_i__imm_data__imm_ok$137
connect \oper_i__lk$11 \oper_i__lk$8
connect \oper_i__is_32bit$12 \oper_i__is_32bit$9
connect \oper_i__insn$13 \oper_i__insn$10
connect \issue_i$14 \issue_i$11
connect \busy_o$15 \busy_o$12
- connect \rdmaskn$16 \fus_rdmaskn$122
+ connect \rdmaskn$16 \fus_rdmaskn$138
connect \oper_i__insn_type$17 \oper_i__insn_type$13
connect \oper_i__fn_unit$18 \oper_i__fn_unit$14
connect \oper_i__insn$19 \oper_i__insn$15
connect \oper_i__trapaddr \oper_i__trapaddr
connect \issue_i$21 \issue_i$17
connect \busy_o$22 \busy_o$18
- connect \rdmaskn$23 \fus_rdmaskn$123
+ connect \rdmaskn$23 \fus_rdmaskn$139
connect \oper_i__insn_type$24 \oper_i__insn_type$19
connect \oper_i__fn_unit$25 \oper_i__fn_unit$20
- connect \oper_i__imm_data__imm$26 \fus_oper_i__imm_data__imm$124
- connect \oper_i__imm_data__imm_ok$27 \fus_oper_i__imm_data__imm_ok$125
+ connect \oper_i__imm_data__imm$26 \fus_oper_i__imm_data__imm$140
+ connect \oper_i__imm_data__imm_ok$27 \fus_oper_i__imm_data__imm_ok$141
connect \oper_i__lk$28 \oper_i__lk$21
- connect \oper_i__rc__rc$29 \fus_oper_i__rc__rc$126
- connect \oper_i__rc__rc_ok$30 \fus_oper_i__rc__rc_ok$127
- connect \oper_i__oe__oe$31 \fus_oper_i__oe__oe$128
- connect \oper_i__oe__oe_ok$32 \fus_oper_i__oe__oe_ok$129
+ connect \oper_i__rc__rc$29 \fus_oper_i__rc__rc$142
+ connect \oper_i__rc__rc_ok$30 \fus_oper_i__rc__rc_ok$143
+ connect \oper_i__oe__oe$31 \fus_oper_i__oe__oe$144
+ connect \oper_i__oe__oe_ok$32 \fus_oper_i__oe__oe_ok$145
connect \oper_i__invert_a$33 \oper_i__invert_a$22
- connect \oper_i__zero_a$34 \fus_oper_i__zero_a$130
+ connect \oper_i__zero_a$34 \fus_oper_i__zero_a$146
connect \oper_i__input_carry$35 \oper_i__input_carry$23
connect \oper_i__invert_out$36 \oper_i__invert_out$24
- connect \oper_i__write_cr__data$37 \fus_oper_i__write_cr__data$131
- connect \oper_i__write_cr__ok$38 \fus_oper_i__write_cr__ok$132
+ connect \oper_i__write_cr__data$37 \fus_oper_i__write_cr__data$147
+ connect \oper_i__write_cr__ok$38 \fus_oper_i__write_cr__ok$148
connect \oper_i__output_carry$39 \oper_i__output_carry$25
connect \oper_i__is_32bit$40 \oper_i__is_32bit$26
connect \oper_i__is_signed$41 \oper_i__is_signed$27
connect \oper_i__data_len$42 \oper_i__data_len$28
- connect \oper_i__insn$43 \fus_oper_i__insn$133
+ connect \oper_i__insn$43 \fus_oper_i__insn$149
connect \issue_i$44 \issue_i$29
connect \busy_o$45 \busy_o$30
- connect \rdmaskn$46 \fus_rdmaskn$134
+ connect \rdmaskn$46 \fus_rdmaskn$150
connect \oper_i__insn_type$47 \oper_i__insn_type$31
- connect \oper_i__fn_unit$48 \fus_oper_i__fn_unit$135
- connect \oper_i__imm_data__imm$49 \fus_oper_i__imm_data__imm$136
- connect \oper_i__imm_data__imm_ok$50 \fus_oper_i__imm_data__imm_ok$137
- connect \oper_i__rc__rc$51 \fus_oper_i__rc__rc$138
- connect \oper_i__rc__rc_ok$52 \fus_oper_i__rc__rc_ok$139
- connect \oper_i__oe__oe$53 \fus_oper_i__oe__oe$140
- connect \oper_i__oe__oe_ok$54 \fus_oper_i__oe__oe_ok$141
- connect \oper_i__write_cr__data$55 \fus_oper_i__write_cr__data$142
- connect \oper_i__write_cr__ok$56 \fus_oper_i__write_cr__ok$143
- connect \oper_i__input_carry$57 \oper_i__input_carry$32
- connect \oper_i__output_carry$58 \oper_i__output_carry$33
- connect \oper_i__input_cr$59 \oper_i__input_cr$34
- connect \oper_i__output_cr$60 \oper_i__output_cr$35
- connect \oper_i__is_32bit$61 \oper_i__is_32bit$36
- connect \oper_i__is_signed$62 \oper_i__is_signed$37
- connect \oper_i__insn$63 \fus_oper_i__insn$144
- connect \issue_i$64 \issue_i$38
- connect \busy_o$65 \busy_o$39
- connect \rdmaskn$66 \fus_rdmaskn$145
- connect \oper_i__insn_type$67 \oper_i__insn_type$40
- connect \oper_i__imm_data__imm$68 \fus_oper_i__imm_data__imm$146
- connect \oper_i__imm_data__imm_ok$69 \fus_oper_i__imm_data__imm_ok$147
- connect \oper_i__zero_a$70 \oper_i__zero_a
- connect \oper_i__is_32bit$71 \oper_i__is_32bit$41
- connect \oper_i__is_signed$72 \oper_i__is_signed$42
- connect \oper_i__data_len$73 \oper_i__data_len$43
- connect \oper_i__byte_reverse$74 \oper_i__byte_reverse$44
- connect \oper_i__sign_extend$75 \oper_i__sign_extend$45
+ connect \oper_i__fn_unit$48 \oper_i__fn_unit$32
+ connect \oper_i__insn$49 \oper_i__insn$33
+ connect \oper_i__is_32bit$50 \oper_i__is_32bit$34
+ connect \issue_i$51 \issue_i$35
+ connect \busy_o$52 \busy_o$36
+ connect \rdmaskn$53 \fus_rdmaskn$151
+ connect \oper_i__insn_type$54 \oper_i__insn_type$37
+ connect \oper_i__fn_unit$55 \fus_oper_i__fn_unit$152
+ connect \oper_i__imm_data__imm$56 \fus_oper_i__imm_data__imm$153
+ connect \oper_i__imm_data__imm_ok$57 \fus_oper_i__imm_data__imm_ok$154
+ connect \oper_i__rc__rc$58 \fus_oper_i__rc__rc$155
+ connect \oper_i__rc__rc_ok$59 \fus_oper_i__rc__rc_ok$156
+ connect \oper_i__oe__oe$60 \fus_oper_i__oe__oe$157
+ connect \oper_i__oe__oe_ok$61 \fus_oper_i__oe__oe_ok$158
+ connect \oper_i__write_cr__data$62 \fus_oper_i__write_cr__data$159
+ connect \oper_i__write_cr__ok$63 \fus_oper_i__write_cr__ok$160
+ connect \oper_i__input_carry$64 \oper_i__input_carry$38
+ connect \oper_i__output_carry$65 \oper_i__output_carry$39
+ connect \oper_i__input_cr$66 \oper_i__input_cr$40
+ connect \oper_i__output_cr$67 \oper_i__output_cr$41
+ connect \oper_i__is_32bit$68 \oper_i__is_32bit$42
+ connect \oper_i__is_signed$69 \oper_i__is_signed$43
+ connect \oper_i__insn$70 \fus_oper_i__insn$161
+ connect \issue_i$71 \issue_i$44
+ connect \busy_o$72 \busy_o$45
+ connect \rdmaskn$73 \fus_rdmaskn$162
+ connect \oper_i__insn_type$74 \oper_i__insn_type$46
+ connect \oper_i__imm_data__imm$75 \fus_oper_i__imm_data__imm$163
+ connect \oper_i__imm_data__imm_ok$76 \fus_oper_i__imm_data__imm_ok$164
+ connect \oper_i__zero_a$77 \oper_i__zero_a
+ connect \oper_i__is_32bit$78 \oper_i__is_32bit$47
+ connect \oper_i__is_signed$79 \oper_i__is_signed$48
+ connect \oper_i__data_len$80 \oper_i__data_len$49
+ connect \oper_i__byte_reverse$81 \oper_i__byte_reverse$50
+ connect \oper_i__sign_extend$82 \oper_i__sign_extend$51
connect \oper_i__update \oper_i__update
- connect \issue_i$76 \issue_i$46
- connect \busy_o$77 \busy_o$47
- connect \rdmaskn$78 \fus_rdmaskn$148
+ connect \issue_i$83 \issue_i$52
+ connect \busy_o$84 \busy_o$53
+ connect \rdmaskn$85 \fus_rdmaskn$165
connect \rd__rel \rd__rel
connect \rd__go \rd__go
connect \src1_i \src1_i
- connect \rd__rel$79 \rd__rel$48
- connect \rd__go$80 \rd__go$49
- connect \src1_i$81 \src1_i$50
- connect \rd__rel$82 \rd__rel$51
- connect \rd__go$83 \rd__go$52
- connect \src1_i$84 \src1_i$53
- connect \rd__rel$85 \rd__rel$54
- connect \rd__go$86 \rd__go$55
- connect \src1_i$87 \src1_i$56
- connect \rd__rel$88 \rd__rel$57
- connect \rd__go$89 \rd__go$58
- connect \src1_i$90 \src1_i$59
- connect \rd__rel$91 \rd__rel$60
- connect \rd__go$92 \rd__go$61
- connect \src1_i$93 \src1_i$62
+ connect \rd__rel$86 \rd__rel$54
+ connect \rd__go$87 \rd__go$55
+ connect \src1_i$88 \src1_i$56
+ connect \rd__rel$89 \rd__rel$57
+ connect \rd__go$90 \rd__go$58
+ connect \src1_i$91 \src1_i$59
+ connect \rd__rel$92 \rd__rel$60
+ connect \rd__go$93 \rd__go$61
+ connect \src1_i$94 \src1_i$62
+ connect \rd__rel$95 \rd__rel$63
+ connect \rd__go$96 \rd__go$64
+ connect \src1_i$97 \src1_i$65
+ connect \rd__rel$98 \rd__rel$66
+ connect \rd__go$99 \rd__go$67
+ connect \src1_i$100 \src1_i$68
+ connect \rd__rel$101 \rd__rel$69
+ connect \rd__go$102 \rd__go$70
+ connect \src1_i$103 \src1_i$71
connect \src2_i \src2_i
- connect \src2_i$94 \src2_i$63
- connect \src2_i$95 \src2_i$64
- connect \src2_i$96 \src2_i$65
- connect \src2_i$97 \src2_i$66
- connect \src2_i$98 \src2_i$67
+ connect \src2_i$104 \src2_i$72
+ connect \src2_i$105 \src2_i$73
+ connect \src2_i$106 \src2_i$74
+ connect \src2_i$107 \src2_i$75
+ connect \src2_i$108 \src2_i$76
connect \src3_i \fus_src3_i
- connect \src3_i$99 \src3_i
- connect \src3_i$100 \fus_src3_i$149
+ connect \src3_i$109 \src3_i
+ connect \src3_i$110 \fus_src3_i$166
connect \src4_i \fus_src4_i
- connect \src4_i$101 \fus_src4_i$150
- connect \src3_i$102 \fus_src3_i$151
- connect \src4_i$103 \fus_src4_i$152
- connect \rd__rel$104 \rd__rel$68
- connect \rd__go$105 \rd__go$69
- connect \src3_i$106 \fus_src3_i$153
- connect \src5_i \fus_src5_i
+ connect \src4_i$111 \fus_src4_i$167
connect \src6_i \fus_src6_i
- connect \src1_i$107 \src1_i$71
- connect \src3_i$108 \fus_src3_i$154
- connect \src2_i$109 \src2_i$72
- connect \src4_i$110 \fus_src4_i$155
- connect \src4_i$111 \fus_src4_i$156
- connect \src5_i$112 \fus_src5_i$157
- connect \src6_i$113 \fus_src6_i$158
+ connect \src4_i$112 \fus_src4_i$168
+ connect \src5_i \fus_src5_i
+ connect \src3_i$113 \fus_src3_i$169
+ connect \src4_i$114 \fus_src4_i$170
+ connect \rd__rel$115 \rd__rel$77
+ connect \rd__go$116 \rd__go$78
+ connect \src3_i$117 \fus_src3_i$171
+ connect \src5_i$118 \fus_src5_i$172
+ connect \src6_i$119 \fus_src6_i$173
+ connect \src1_i$120 \src1_i$80
+ connect \src3_i$121 \fus_src3_i$174
+ connect \src3_i$122 \fus_src3_i$175
+ connect \src2_i$123 \src2_i$81
+ connect \src4_i$124 \fus_src4_i$176
+ connect \src4_i$125 \fus_src4_i$177
+ connect \src5_i$126 \fus_src5_i$178
+ connect \src6_i$127 \fus_src6_i$179
+ connect \src2_i$128 \src2_i$82
connect \o_ok \fus_o_ok
connect \wr__rel \wr__rel
connect \wr__go \wr__go
- connect \o_ok$114 \fus_o_ok$159
- connect \wr__rel$115 \wr__rel$73
- connect \wr__go$116 \wr__go$74
- connect \o_ok$117 \fus_o_ok$160
- connect \wr__rel$118 \wr__rel$75
- connect \wr__go$119 \wr__go$76
- connect \o_ok$120 \fus_o_ok$161
- connect \wr__rel$121 \wr__rel$77
- connect \wr__go$122 \wr__go$78
- connect \o_ok$123 \fus_o_ok$162
- connect \wr__rel$124 \wr__rel$79
- connect \wr__go$125 \wr__go$80
- connect \wr__rel$126 \wr__rel$81
- connect \wr__go$127 \wr__go$82
+ connect \o_ok$129 \fus_o_ok$180
+ connect \wr__rel$130 \wr__rel$83
+ connect \wr__go$131 \wr__go$84
+ connect \o_ok$132 \fus_o_ok$181
+ connect \wr__rel$133 \wr__rel$85
+ connect \wr__go$134 \wr__go$86
+ connect \o_ok$135 \fus_o_ok$182
+ connect \wr__rel$136 \wr__rel$87
+ connect \wr__go$137 \wr__go$88
+ connect \o_ok$138 \fus_o_ok$183
+ connect \wr__rel$139 \wr__rel$89
+ connect \wr__go$140 \wr__go$90
+ connect \o_ok$141 \fus_o_ok$184
+ connect \wr__rel$142 \wr__rel$91
+ connect \wr__go$143 \wr__go$92
+ connect \wr__rel$144 \wr__rel$93
+ connect \wr__go$145 \wr__go$94
connect \o \fus_o
- connect \o$128 \fus_o$163
- connect \o$129 \fus_o$164
- connect \o$130 \fus_o$165
- connect \o$131 \fus_o$166
- connect \o$132 \o
- connect \ea \ea$83
+ connect \o$146 \fus_o$185
+ connect \o$147 \fus_o$186
+ connect \o$148 \fus_o$187
+ connect \o$149 \fus_o$188
+ connect \o$150 \fus_o$189
+ connect \o$151 \o
+ connect \ea \ea$95
connect \full_cr_ok \fus_full_cr_ok
connect \full_cr \fus_full_cr
connect \cr_a_ok \fus_cr_a_ok
- connect \cr_a_ok$133 \fus_cr_a_ok$167
- connect \cr_a_ok$134 \fus_cr_a_ok$168
- connect \cr_a_ok$135 \fus_cr_a_ok$169
+ connect \cr_a_ok$152 \fus_cr_a_ok$190
+ connect \cr_a_ok$153 \fus_cr_a_ok$191
+ connect \cr_a_ok$154 \fus_cr_a_ok$192
connect \cr_a \fus_cr_a
- connect \cr_a$136 \fus_cr_a$170
- connect \cr_a$137 \fus_cr_a$171
- connect \cr_a$138 \fus_cr_a$172
+ connect \cr_a$155 \fus_cr_a$193
+ connect \cr_a$156 \fus_cr_a$194
+ connect \cr_a$157 \fus_cr_a$195
connect \xer_ca_ok \fus_xer_ca_ok
- connect \xer_ca_ok$139 \fus_xer_ca_ok$173
- connect \xer_ca_ok$140 \fus_xer_ca_ok$174
+ connect \xer_ca_ok$158 \fus_xer_ca_ok$196
+ connect \xer_ca_ok$159 \fus_xer_ca_ok$197
+ connect \xer_ca_ok$160 \fus_xer_ca_ok$198
connect \xer_ca \fus_xer_ca
- connect \xer_ca$141 \fus_xer_ca$175
- connect \xer_ca$142 \fus_xer_ca$176
+ connect \xer_ca$161 \fus_xer_ca$199
+ connect \xer_ca$162 \fus_xer_ca$200
+ connect \xer_ca$163 \fus_xer_ca$201
connect \xer_ov_ok \fus_xer_ov_ok
+ connect \xer_ov_ok$164 \fus_xer_ov_ok$202
connect \xer_ov \fus_xer_ov
+ connect \xer_ov$165 \fus_xer_ov$203
connect \xer_so_ok \fus_xer_so_ok
+ connect \xer_so_ok$166 \fus_xer_so_ok$204
connect \xer_so \fus_xer_so
- connect \spr1_ok \fus_spr1_ok
- connect \wr__rel$143 \wr__rel$84
- connect \wr__go$144 \wr__go$85
- connect \spr1_ok$145 \fus_spr1_ok$177
- connect \spr1 \fus_spr1
- connect \spr1$146 \fus_spr1$178
- connect \spr2_ok \fus_spr2_ok
- connect \spr2_ok$147 \fus_spr2_ok$179
- connect \spr2 \fus_spr2
- connect \spr2$148 \fus_spr2$180
+ connect \xer_so$167 \fus_xer_so$205
+ connect \fast1_ok \fus_fast1_ok
+ connect \wr__rel$168 \wr__rel$96
+ connect \wr__go$169 \wr__go$97
+ connect \fast1_ok$170 \fus_fast1_ok$206
+ connect \fast1_ok$171 \fus_fast1_ok$207
+ connect \fast1 \fus_fast1
+ connect \fast1$172 \fus_fast1$208
+ connect \fast1$173 \fus_fast1$209
+ connect \fast2_ok \fus_fast2_ok
+ connect \fast2_ok$174 \fus_fast2_ok$210
+ connect \fast2 \fus_fast2
+ connect \fast2$175 \fus_fast2$211
connect \nia_ok \fus_nia_ok
- connect \nia_ok$149 \fus_nia_ok$181
+ connect \nia_ok$176 \fus_nia_ok$212
connect \nia \fus_nia
- connect \nia$150 \fus_nia$182
+ connect \nia$177 \fus_nia$213
connect \msr_ok \fus_msr_ok
connect \msr \fus_msr
+ connect \spr1_ok \fus_spr1_ok
+ connect \spr1 \fus_spr1
connect \go_die_i \go_die_i
connect \shadown_i \shadown_i
connect \dest1_o \dest1_o
- connect \go_die_i$151 \go_die_i$89
- connect \shadown_i$152 \shadown_i$90
- connect \dest1_o$153 \dest1_o$91
- connect \go_die_i$154 \go_die_i$92
- connect \shadown_i$155 \shadown_i$93
- connect \dest1_o$156 \dest1_o$94
- connect \go_die_i$157 \go_die_i$95
- connect \shadown_i$158 \shadown_i$96
- connect \dest1_o$159 \dest1_o$97
- connect \go_die_i$160 \go_die_i$98
- connect \shadown_i$161 \shadown_i$99
- connect \dest1_o$162 \dest1_o$100
- connect \go_die_i$163 \go_die_i$101
- connect \shadown_i$164 \shadown_i$102
- connect \dest1_o$165 \dest1_o$103
- connect \go_die_i$166 \go_die_i$104
+ connect \go_die_i$178 \go_die_i$102
+ connect \shadown_i$179 \shadown_i$103
+ connect \dest1_o$180 \dest1_o$104
+ connect \go_die_i$181 \go_die_i$105
+ connect \shadown_i$182 \shadown_i$106
+ connect \dest1_o$183 \dest1_o$107
+ connect \go_die_i$184 \go_die_i$108
+ connect \shadown_i$185 \shadown_i$109
+ connect \dest1_o$186 \dest1_o$110
+ connect \go_die_i$187 \go_die_i$111
+ connect \shadown_i$188 \shadown_i$112
+ connect \dest1_o$189 \dest1_o$113
+ connect \go_die_i$190 \go_die_i$114
+ connect \shadown_i$191 \shadown_i$115
+ connect \dest1_o$192 \dest1_o$116
+ connect \go_die_i$193 \go_die_i$117
+ connect \shadown_i$194 \shadown_i$118
+ connect \dest1_o$195 \dest1_o$119
+ connect \go_die_i$196 \go_die_i$120
connect \load_mem_o \load_mem_o
connect \stwd_mem_o \stwd_mem_o
- connect \shadown_i$167 \shadown_i$105
+ connect \shadown_i$197 \shadown_i$121
connect \ldst_port0_is_ld_i \ldst_port0_is_ld_i
connect \ldst_port0_is_st_i \ldst_port0_is_st_i
connect \ldst_port0_data_len \ldst_port0_data_len
connect \ldst_port0_ld_data_o_ok \ldst_port0_ld_data_o_ok
connect \ldst_port0_st_data_i \ldst_port0_st_data_i
connect \ldst_port0_st_data_i_ok \ldst_port0_st_data_i_ok
- connect \ldst_port0_is_ld_i$1 \ldst_port0_is_ld_i$106
+ connect \ldst_port0_is_ld_i$1 \ldst_port0_is_ld_i$122
connect \ldst_port0_busy_o \ldst_port0_busy_o
- connect \ldst_port0_is_st_i$2 \ldst_port0_is_st_i$107
- connect \ldst_port0_data_len$3 \ldst_port0_data_len$108
- connect \ldst_port0_addr_i$4 \ldst_port0_addr_i$109
- connect \ldst_port0_addr_i_ok$5 \ldst_port0_addr_i_ok$110
+ connect \ldst_port0_is_st_i$2 \ldst_port0_is_st_i$123
+ connect \ldst_port0_data_len$3 \ldst_port0_data_len$124
+ connect \ldst_port0_addr_i$4 \ldst_port0_addr_i$125
+ connect \ldst_port0_addr_i_ok$5 \ldst_port0_addr_i_ok$126
connect \x_mask_i \x_mask_i
connect \x_addr_i \x_addr_i
- connect \ldst_port0_addr_ok_o$6 \ldst_port0_addr_ok_o$111
+ connect \ldst_port0_addr_ok_o$6 \ldst_port0_addr_ok_o$127
connect \m_ld_data_o \m_ld_data_o
- connect \ldst_port0_ld_data_o$7 \ldst_port0_ld_data_o$112
- connect \ldst_port0_ld_data_o_ok$8 \ldst_port0_ld_data_o_ok$113
+ connect \ldst_port0_ld_data_o$7 \ldst_port0_ld_data_o$128
+ connect \ldst_port0_ld_data_o_ok$8 \ldst_port0_ld_data_o_ok$129
connect \x_busy_o \x_busy_o
- connect \ldst_port0_st_data_i_ok$9 \ldst_port0_st_data_i_ok$114
- connect \ldst_port0_st_data_i$10 \ldst_port0_st_data_i$115
+ connect \ldst_port0_st_data_i_ok$9 \ldst_port0_st_data_i_ok$130
+ connect \ldst_port0_st_data_i$10 \ldst_port0_st_data_i$131
connect \x_st_data_i \x_st_data_i
- connect \ldst_port0_addr_exc_o$11 \ldst_port0_addr_exc_o$116
+ connect \ldst_port0_addr_exc_o$11 \ldst_port0_addr_exc_o$132
connect \x_ld_i \x_ld_i
connect \x_st_i \x_st_i
connect \m_valid_i \m_valid_i
connect \x_valid_i \x_valid_i
connect \ldst_port0_go_die_i \ldst_port0_go_die_i
- connect \ldst_port0_go_die_i$12 \ldst_port0_go_die_i$117
- connect \ldst_port0_busy_o$13 \ldst_port0_busy_o$118
+ connect \ldst_port0_go_die_i$12 \ldst_port0_go_die_i$133
+ connect \ldst_port0_busy_o$13 \ldst_port0_busy_o$134
connect \dbus__cyc \dbus__cyc
connect \x_stall_i \x_stall_i
connect \dbus__ack \dbus__ack
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 64 \int_data_i$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 32 \int_wen$183
+ wire width 32 \int_wen$214
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 32 \int_wen$183$next
+ wire width 32 \int_wen$214$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 64 \int_data_i$184
+ wire width 64 \int_data_i$215
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 64 \int_data_i$184$next
+ wire width 64 \int_data_i$215$next
cell \int \int
connect \rst \rst
connect \clk \clk
connect \src3__data_o \int_src3__data_o
connect \wen \int_wen
connect \data_i \int_data_i
- connect \wen$1 \int_wen$183
- connect \data_i$2 \int_data_i$184
+ connect \wen$1 \int_wen$214
+ connect \data_i$2 \int_data_i$215
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 8 \cr_full_rd__ren
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 2 \xer_src2__data_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
+ wire width 3 \xer_src3__ren
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
+ wire width 2 \xer_src3__data_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 3 \xer_wen
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 3 \xer_wen$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 2 \xer_data_i$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 3 \xer_wen$185
+ wire width 3 \xer_wen$216
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 3 \xer_wen$185$next
+ wire width 3 \xer_wen$216$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 2 \xer_data_i$186
+ wire width 2 \xer_data_i$217
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 2 \xer_data_i$186$next
+ wire width 2 \xer_data_i$217$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 3 \xer_wen$187
+ wire width 3 \xer_wen$218
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 3 \xer_wen$187$next
+ wire width 3 \xer_wen$218$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 2 \xer_data_i$188
+ wire width 2 \xer_data_i$219
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 2 \xer_data_i$188$next
+ wire width 2 \xer_data_i$219$next
cell \xer \xer
connect \rst \rst
connect \clk \clk
connect \src1__data_o \xer_src1__data_o
connect \src2__ren \xer_src2__ren
connect \src2__data_o \xer_src2__data_o
+ connect \src3__ren \xer_src3__ren
+ connect \src3__data_o \xer_src3__data_o
connect \wen \xer_wen
connect \data_i \xer_data_i
- connect \wen$1 \xer_wen$185
- connect \data_i$2 \xer_data_i$186
- connect \wen$3 \xer_wen$187
- connect \data_i$4 \xer_data_i$188
+ connect \wen$1 \xer_wen$216
+ connect \data_i$2 \xer_data_i$217
+ connect \wen$3 \xer_wen$218
+ connect \data_i$4 \xer_data_i$219
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 8 \fast_src3__ren
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 64 \fast_data_i$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 8 \fast_wen$189
+ wire width 8 \fast_wen$220
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 8 \fast_wen$189$next
+ wire width 8 \fast_wen$220$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 64 \fast_data_i$190
+ wire width 64 \fast_data_i$221
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 64 \fast_data_i$190$next
+ wire width 64 \fast_data_i$221$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 64 \fast_data_i$191
+ wire width 64 \fast_data_i$222
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 64 \fast_data_i$191$next
+ wire width 64 \fast_data_i$222$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 8 \fast_wen$192
+ wire width 8 \fast_wen$223
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 8 \fast_wen$192$next
+ wire width 8 \fast_wen$223$next
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 64 \fast_data_i$193
+ wire width 64 \fast_data_i$224
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
- wire width 64 \fast_data_i$193$next
+ wire width 64 \fast_data_i$224$next
cell \fast \fast
connect \d_rd1__ren \d_rd1__ren
connect \d_rd1__data_o \d_rd1__data_o
connect \src2__data_o \fast_src2__data_o
connect \wen$1 \fast_wen
connect \data_i$2 \fast_data_i
- connect \wen$3 \fast_wen$189
- connect \data_i$4 \fast_data_i$190
- connect \data_i$5 \fast_data_i$191
- connect \wen$6 \fast_wen$192
- connect \data_i$7 \fast_data_i$193
+ connect \wen$3 \fast_wen$220
+ connect \data_i$4 \fast_data_i$221
+ connect \data_i$5 \fast_data_i$222
+ connect \wen$6 \fast_wen$223
+ connect \data_i$7 \fast_data_i$224
end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
+ wire width 1 \spr_src__ren
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
+ wire width 64 \spr_src__data_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
+ wire width 1 \spr_dest__wen
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
+ wire width 1 \spr_dest__wen$next
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
+ wire width 64 \spr_dest__data_i
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
+ wire width 64 \spr_dest__data_i$next
cell \spr \spr
connect \rst \rst
connect \clk \clk
+ connect \src__ren \spr_src__ren
+ connect \src__data_o \spr_src__data_o
+ connect \dest__wen \spr_dest__wen
+ connect \dest__data_i \spr_dest__data_i
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 \rdpick_INT_ra_en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 6 \rdpick_INT_ra_i
+ wire width 7 \rdpick_INT_ra_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 6 \rdpick_INT_ra_o
+ wire width 7 \rdpick_INT_ra_o
cell \rdpick_INT_ra \rdpick_INT_ra
connect \en_o \rdpick_INT_ra_en_o
connect \i \rdpick_INT_ra_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 \rdpick_XER_xer_so_en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 1 \rdpick_XER_xer_so_i
+ wire width 2 \rdpick_XER_xer_so_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 1 \rdpick_XER_xer_so_o
+ wire width 2 \rdpick_XER_xer_so_o
cell \rdpick_XER_xer_so \rdpick_XER_xer_so
connect \en_o \rdpick_XER_xer_so_en_o
connect \i \rdpick_XER_xer_so_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 \rdpick_XER_xer_ca_en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 2 \rdpick_XER_xer_ca_i
+ wire width 3 \rdpick_XER_xer_ca_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 2 \rdpick_XER_xer_ca_o
+ wire width 3 \rdpick_XER_xer_ca_o
cell \rdpick_XER_xer_ca \rdpick_XER_xer_ca
connect \en_o \rdpick_XER_xer_ca_en_o
connect \i \rdpick_XER_xer_ca_i
connect \o \rdpick_XER_xer_ca_o
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
+ wire width 1 \rdpick_XER_xer_ov_en_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
+ wire width 1 \rdpick_XER_xer_ov_i
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
+ wire width 1 \rdpick_XER_xer_ov_o
+ cell \rdpick_XER_xer_ov \rdpick_XER_xer_ov
+ connect \en_o \rdpick_XER_xer_ov_en_o
+ connect \i \rdpick_XER_xer_ov_i
+ connect \o \rdpick_XER_xer_ov_o
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 \rdpick_CR_full_cr_en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
wire width 1 \rdpick_CR_full_cr_i
connect \o \rdpick_CR_cr_c_o
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
- wire width 1 \rdpick_FAST_spr1_en_o
+ wire width 1 \rdpick_FAST_fast1_en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 2 \rdpick_FAST_spr1_i
+ wire width 3 \rdpick_FAST_fast1_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 2 \rdpick_FAST_spr1_o
- cell \rdpick_FAST_spr1 \rdpick_FAST_spr1
- connect \en_o \rdpick_FAST_spr1_en_o
- connect \i \rdpick_FAST_spr1_i
- connect \o \rdpick_FAST_spr1_o
+ wire width 3 \rdpick_FAST_fast1_o
+ cell \rdpick_FAST_fast1 \rdpick_FAST_fast1
+ connect \en_o \rdpick_FAST_fast1_en_o
+ connect \i \rdpick_FAST_fast1_i
+ connect \o \rdpick_FAST_fast1_o
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
- wire width 1 \rdpick_FAST_spr2_en_o
+ wire width 1 \rdpick_FAST_fast2_en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 2 \rdpick_FAST_spr2_i
+ wire width 2 \rdpick_FAST_fast2_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 2 \rdpick_FAST_spr2_o
- cell \rdpick_FAST_spr2 \rdpick_FAST_spr2
- connect \en_o \rdpick_FAST_spr2_en_o
- connect \i \rdpick_FAST_spr2_i
- connect \o \rdpick_FAST_spr2_o
+ wire width 2 \rdpick_FAST_fast2_o
+ cell \rdpick_FAST_fast2 \rdpick_FAST_fast2
+ connect \en_o \rdpick_FAST_fast2_en_o
+ connect \i \rdpick_FAST_fast2_i
+ connect \o \rdpick_FAST_fast2_o
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 \rdpick_FAST_cia_en_o
connect \o \rdpick_FAST_msr_o
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
+ wire width 1 \rdpick_SPR_spr1_en_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
+ wire width 1 \rdpick_SPR_spr1_i
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
+ wire width 1 \rdpick_SPR_spr1_o
+ cell \rdpick_SPR_spr1 \rdpick_SPR_spr1
+ connect \en_o \rdpick_SPR_spr1_en_o
+ connect \i \rdpick_SPR_spr1_i
+ connect \o \rdpick_SPR_spr1_o
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 \wrpick_INT_o_en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 6 \wrpick_INT_o_i
+ wire width 7 \wrpick_INT_o_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 6 \wrpick_INT_o_o
+ wire width 7 \wrpick_INT_o_o
cell \wrpick_INT_o \wrpick_INT_o
connect \en_o \wrpick_INT_o_en_o
connect \i \wrpick_INT_o_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 \wrpick_XER_xer_ca_en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 3 \wrpick_XER_xer_ca_i
+ wire width 4 \wrpick_XER_xer_ca_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 3 \wrpick_XER_xer_ca_o
+ wire width 4 \wrpick_XER_xer_ca_o
cell \wrpick_XER_xer_ca \wrpick_XER_xer_ca
connect \en_o \wrpick_XER_xer_ca_en_o
connect \i \wrpick_XER_xer_ca_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 \wrpick_XER_xer_ov_en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 1 \wrpick_XER_xer_ov_i
+ wire width 2 \wrpick_XER_xer_ov_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 1 \wrpick_XER_xer_ov_o
+ wire width 2 \wrpick_XER_xer_ov_o
cell \wrpick_XER_xer_ov \wrpick_XER_xer_ov
connect \en_o \wrpick_XER_xer_ov_en_o
connect \i \wrpick_XER_xer_ov_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 \wrpick_XER_xer_so_en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 1 \wrpick_XER_xer_so_i
+ wire width 2 \wrpick_XER_xer_so_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 1 \wrpick_XER_xer_so_o
+ wire width 2 \wrpick_XER_xer_so_o
cell \wrpick_XER_xer_so \wrpick_XER_xer_so
connect \en_o \wrpick_XER_xer_so_en_o
connect \i \wrpick_XER_xer_so_i
connect \o \wrpick_XER_xer_so_o
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
- wire width 1 \wrpick_FAST_spr1_en_o
+ wire width 1 \wrpick_FAST_fast1_en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 2 \wrpick_FAST_spr1_i
+ wire width 3 \wrpick_FAST_fast1_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 2 \wrpick_FAST_spr1_o
- cell \wrpick_FAST_spr1 \wrpick_FAST_spr1
- connect \en_o \wrpick_FAST_spr1_en_o
- connect \i \wrpick_FAST_spr1_i
- connect \o \wrpick_FAST_spr1_o
+ wire width 3 \wrpick_FAST_fast1_o
+ cell \wrpick_FAST_fast1 \wrpick_FAST_fast1
+ connect \en_o \wrpick_FAST_fast1_en_o
+ connect \i \wrpick_FAST_fast1_i
+ connect \o \wrpick_FAST_fast1_o
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
- wire width 1 \wrpick_FAST_spr2_en_o
+ wire width 1 \wrpick_FAST_fast2_en_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
- wire width 2 \wrpick_FAST_spr2_i
+ wire width 2 \wrpick_FAST_fast2_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
- wire width 2 \wrpick_FAST_spr2_o
- cell \wrpick_FAST_spr2 \wrpick_FAST_spr2
- connect \en_o \wrpick_FAST_spr2_en_o
- connect \i \wrpick_FAST_spr2_i
- connect \o \wrpick_FAST_spr2_o
+ wire width 2 \wrpick_FAST_fast2_o
+ cell \wrpick_FAST_fast2 \wrpick_FAST_fast2
+ connect \en_o \wrpick_FAST_fast2_en_o
+ connect \i \wrpick_FAST_fast2_i
+ connect \o \wrpick_FAST_fast2_o
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
wire width 1 \wrpick_FAST_nia_en_o
connect \i \wrpick_FAST_msr_i
connect \o \wrpick_FAST_msr_o
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:35"
+ wire width 1 \wrpick_SPR_spr1_en_o
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:33"
+ wire width 1 \wrpick_SPR_spr1_i
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/picker.py:34"
+ wire width 1 \wrpick_SPR_spr1_o
+ cell \wrpick_SPR_spr1 \wrpick_SPR_spr1
+ connect \en_o \wrpick_SPR_spr1_en_o
+ connect \i \wrpick_SPR_spr1_i
+ connect \o \wrpick_SPR_spr1_o
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:111"
wire width 1 \en_alu0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 1 $194
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 10 $195
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $and $196
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 1 $225
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 11 $226
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $and $227
parameter \A_SIGNED 0
- parameter \A_WIDTH 10
+ parameter \A_WIDTH 11
parameter \B_SIGNED 0
parameter \B_WIDTH 2
- parameter \Y_WIDTH 10
+ parameter \Y_WIDTH 11
connect \A \fn_unit
connect \B 2'10
- connect \Y $195
+ connect \Y $226
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $reduce_bool $197
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $reduce_bool $228
parameter \A_SIGNED 0
- parameter \A_WIDTH 10
+ parameter \A_WIDTH 11
parameter \Y_WIDTH 1
- connect \A $195
- connect \Y $194
+ connect \A $226
+ connect \Y $225
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 1 $198
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $and $199
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 1 $229
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $and $230
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
connect \A \valid
- connect \B $194
- connect \Y $198
+ connect \B $225
+ connect \Y $229
end
process $group_0
assign \en_alu0 1'0
- assign \en_alu0 $198
+ assign \en_alu0 $229
sync init
end
process $group_1
assign \oper_i__insn_type 7'0000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__insn_type \insn_type
end
sync init
end
process $group_2
- assign \fus_oper_i__fn_unit 10'0000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \fus_oper_i__fn_unit 11'00000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \fus_oper_i__fn_unit \fn_unit
end
process $group_3
assign \fus_oper_i__imm_data__imm 64'0000000000000000000000000000000000000000000000000000000000000000
assign \fus_oper_i__imm_data__imm_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign { \fus_oper_i__imm_data__imm_ok \fus_oper_i__imm_data__imm } { \imm_ok \imm }
end
end
process $group_5
assign \oper_i__lk 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__lk \lk
end
process $group_6
assign \fus_oper_i__rc__rc 1'0
assign \fus_oper_i__rc__rc_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign { \fus_oper_i__rc__rc_ok \fus_oper_i__rc__rc } { \rc_ok \rc }
end
process $group_8
assign \fus_oper_i__oe__oe 1'0
assign \fus_oper_i__oe__oe_ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign { \fus_oper_i__oe__oe_ok \fus_oper_i__oe__oe } { \oe_ok \oe }
end
end
process $group_10
assign \oper_i__invert_a 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__invert_a \invert_a
end
end
process $group_11
assign \fus_oper_i__zero_a 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \fus_oper_i__zero_a \zero_a
end
end
process $group_12
assign \oper_i__invert_out 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__invert_out \invert_out
end
process $group_13
assign \fus_oper_i__write_cr__data 3'000
assign \fus_oper_i__write_cr__ok 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign { \fus_oper_i__write_cr__ok \fus_oper_i__write_cr__data } { \cr_out_ok \cr_out }
end
end
process $group_15
assign \oper_i__input_carry 2'00
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__input_carry \input_carry
end
end
process $group_16
assign \oper_i__output_carry 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__output_carry \output_carry
end
end
process $group_17
assign \oper_i__input_cr 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__input_cr \input_cr
end
end
process $group_18
assign \oper_i__output_cr 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__output_cr \output_cr
end
end
process $group_19
assign \oper_i__is_32bit 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__is_32bit \is_32bit
end
end
process $group_20
assign \oper_i__is_signed 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__is_signed \is_signed
end
end
process $group_21
assign \oper_i__data_len 4'0000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__data_len \data_len
end
end
process $group_22
assign \fus_oper_i__insn 32'00000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \fus_oper_i__insn \insn
end
end
process $group_23
assign \oper_i__byte_reverse 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__byte_reverse \byte_reverse
end
end
process $group_24
assign \oper_i__sign_extend 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__sign_extend \sign_extend
end
end
process $group_25
assign \issue_i$1 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \issue_i$1 \issue_i
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:111"
wire width 1 \en_cr0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:111"
wire width 1 \en_branch0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:111"
wire width 1 \en_trap0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:111"
wire width 1 \en_logical0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:111"
+ wire width 1 \en_spr0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:111"
wire width 1 \en_shiftrot0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:111"
wire width 1 \en_ldst0
process $group_26
assign \corebusy_o 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \corebusy_o \busy_o
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_cr0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \corebusy_o \busy_o$4
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_branch0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \corebusy_o \busy_o$12
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_trap0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \corebusy_o \busy_o$18
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \corebusy_o \busy_o$30
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ switch { \en_spr0 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ case 1'1
+ assign \corebusy_o \busy_o$36
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_shiftrot0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \corebusy_o \busy_o$39
+ assign \corebusy_o \busy_o$45
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_ldst0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \corebusy_o \busy_o$47
+ assign \corebusy_o \busy_o$53
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:119"
- wire width 4 $200
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:118"
+ wire width 4 $231
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:71"
- wire width 1 $201
+ wire width 1 $232
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:71"
- cell $and $202
+ cell $and $233
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \oe
connect \B \oe_ok
- connect \Y $201
+ connect \Y $232
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:75"
- wire width 1 $203
+ wire width 1 $234
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:75"
- cell $eq $204
+ cell $eq $235
parameter \A_SIGNED 0
parameter \A_WIDTH 2
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \input_carry
connect \B 2'10
- connect \Y $203
+ connect \Y $234
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:119"
- cell $not $205
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:118"
+ cell $not $236
parameter \A_SIGNED 0
parameter \A_WIDTH 4
parameter \Y_WIDTH 4
- connect \A { $203 $201 \reg2_ok \reg1_ok }
- connect \Y $200
+ connect \A { $234 $232 \reg2_ok \reg1_ok }
+ connect \Y $231
end
process $group_27
assign \fus_rdmaskn 4'0000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_alu0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \fus_rdmaskn $200
+ assign \fus_rdmaskn $231
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:104"
- wire width 7 \fu_enable
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:103"
+ wire width 8 \fu_enable
process $group_28
- assign \fu_enable 7'0000000
+ assign \fu_enable 8'00000000
assign \fu_enable [0] \en_alu0
assign \fu_enable [1] \en_cr0
assign \fu_enable [2] \en_branch0
assign \fu_enable [3] \en_trap0
assign \fu_enable [4] \en_logical0
- assign \fu_enable [5] \en_shiftrot0
- assign \fu_enable [6] \en_ldst0
+ assign \fu_enable [5] \en_spr0
+ assign \fu_enable [6] \en_shiftrot0
+ assign \fu_enable [7] \en_ldst0
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 1 $206
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 10 $207
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $and $208
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 1 $237
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 11 $238
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $and $239
parameter \A_SIGNED 0
- parameter \A_WIDTH 10
+ parameter \A_WIDTH 11
parameter \B_SIGNED 0
parameter \B_WIDTH 7
- parameter \Y_WIDTH 10
+ parameter \Y_WIDTH 11
connect \A \fn_unit
connect \B 7'1000000
- connect \Y $207
+ connect \Y $238
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $reduce_bool $209
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $reduce_bool $240
parameter \A_SIGNED 0
- parameter \A_WIDTH 10
+ parameter \A_WIDTH 11
parameter \Y_WIDTH 1
- connect \A $207
- connect \Y $206
+ connect \A $238
+ connect \Y $237
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 1 $210
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $and $211
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 1 $241
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $and $242
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
connect \A \valid
- connect \B $206
- connect \Y $210
+ connect \B $237
+ connect \Y $241
end
process $group_29
assign \en_cr0 1'0
- assign \en_cr0 $210
+ assign \en_cr0 $241
sync init
end
process $group_30
assign \oper_i__insn_type$2 7'0000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_cr0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__insn_type$2 \insn_type
end
sync init
end
process $group_31
- assign \oper_i__fn_unit 10'0000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \oper_i__fn_unit 11'00000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_cr0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__fn_unit \fn_unit
end
end
process $group_32
assign \oper_i__insn 32'00000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_cr0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__insn \insn
end
end
process $group_33
assign \oper_i__read_cr_whole 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_cr0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__read_cr_whole \read_cr_whole
end
end
process $group_34
assign \oper_i__write_cr_whole 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_cr0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__write_cr_whole \write_cr_whole
end
end
process $group_35
assign \issue_i$3 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_cr0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \issue_i$3 \issue_i
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:119"
- wire width 6 $212
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:119"
- cell $not $213
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:118"
+ wire width 6 $243
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:118"
+ cell $not $244
parameter \A_SIGNED 0
parameter \A_WIDTH 6
parameter \Y_WIDTH 6
connect \A { \cr_in2_ok$5 \cr_in2_ok \cr_in1_ok \read_cr_whole \reg2_ok \reg1_ok }
- connect \Y $212
+ connect \Y $243
end
process $group_36
- assign \fus_rdmaskn$119 6'000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \fus_rdmaskn$135 6'000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_cr0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \fus_rdmaskn$119 $212
+ assign \fus_rdmaskn$135 $243
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 1 $214
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 10 $215
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $and $216
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 1 $245
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 11 $246
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $and $247
parameter \A_SIGNED 0
- parameter \A_WIDTH 10
+ parameter \A_WIDTH 11
parameter \B_SIGNED 0
parameter \B_WIDTH 6
- parameter \Y_WIDTH 10
+ parameter \Y_WIDTH 11
connect \A \fn_unit
connect \B 6'100000
- connect \Y $215
+ connect \Y $246
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $reduce_bool $217
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $reduce_bool $248
parameter \A_SIGNED 0
- parameter \A_WIDTH 10
+ parameter \A_WIDTH 11
parameter \Y_WIDTH 1
- connect \A $215
- connect \Y $214
+ connect \A $246
+ connect \Y $245
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 1 $218
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $and $219
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 1 $249
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $and $250
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
connect \A \valid
- connect \B $214
- connect \Y $218
+ connect \B $245
+ connect \Y $249
end
process $group_37
assign \en_branch0 1'0
- assign \en_branch0 $218
+ assign \en_branch0 $249
sync init
end
process $group_38
assign \oper_i__insn_type$6 7'0000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_branch0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__insn_type$6 \insn_type
end
sync init
end
process $group_39
- assign \oper_i__fn_unit$7 10'0000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \oper_i__fn_unit$7 11'00000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_branch0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__fn_unit$7 \fn_unit
end
sync init
end
process $group_40
- assign \fus_oper_i__imm_data__imm$120 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \fus_oper_i__imm_data__imm_ok$121 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \fus_oper_i__imm_data__imm$136 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fus_oper_i__imm_data__imm_ok$137 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_branch0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign { \fus_oper_i__imm_data__imm_ok$121 \fus_oper_i__imm_data__imm$120 } { \imm_ok \imm }
+ assign { \fus_oper_i__imm_data__imm_ok$137 \fus_oper_i__imm_data__imm$136 } { \imm_ok \imm }
end
sync init
end
process $group_42
assign \oper_i__lk$8 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_branch0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__lk$8 \lk
end
end
process $group_43
assign \oper_i__is_32bit$9 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_branch0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__is_32bit$9 \is_32bit
end
end
process $group_44
assign \oper_i__insn$10 32'00000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_branch0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__insn$10 \insn
end
end
process $group_45
assign \issue_i$11 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_branch0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \issue_i$11 \issue_i
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:119"
- wire width 4 $220
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:119"
- cell $not $221
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:118"
+ wire width 4 $251
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:118"
+ cell $not $252
parameter \A_SIGNED 0
parameter \A_WIDTH 4
parameter \Y_WIDTH 4
connect \A { 1'1 \cr_in1_ok \fast2_ok \fast1_ok }
- connect \Y $220
+ connect \Y $251
end
process $group_46
- assign \fus_rdmaskn$122 4'0000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \fus_rdmaskn$138 4'0000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_branch0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \fus_rdmaskn$122 $220
+ assign \fus_rdmaskn$138 $251
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 1 $222
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 10 $223
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $and $224
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 1 $253
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 11 $254
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $and $255
parameter \A_SIGNED 0
- parameter \A_WIDTH 10
+ parameter \A_WIDTH 11
parameter \B_SIGNED 0
parameter \B_WIDTH 8
- parameter \Y_WIDTH 10
+ parameter \Y_WIDTH 11
connect \A \fn_unit
connect \B 8'10000000
- connect \Y $223
+ connect \Y $254
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $reduce_bool $225
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $reduce_bool $256
parameter \A_SIGNED 0
- parameter \A_WIDTH 10
+ parameter \A_WIDTH 11
parameter \Y_WIDTH 1
- connect \A $223
- connect \Y $222
+ connect \A $254
+ connect \Y $253
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 1 $226
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $and $227
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 1 $257
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $and $258
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
connect \A \valid
- connect \B $222
- connect \Y $226
+ connect \B $253
+ connect \Y $257
end
process $group_47
assign \en_trap0 1'0
- assign \en_trap0 $226
+ assign \en_trap0 $257
sync init
end
process $group_48
assign \oper_i__insn_type$13 7'0000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_trap0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__insn_type$13 \insn_type
end
sync init
end
process $group_49
- assign \oper_i__fn_unit$14 10'0000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \oper_i__fn_unit$14 11'00000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_trap0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__fn_unit$14 \fn_unit
end
end
process $group_50
assign \oper_i__insn$15 32'00000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_trap0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__insn$15 \insn
end
end
process $group_51
assign \oper_i__is_32bit$16 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_trap0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__is_32bit$16 \is_32bit
end
sync init
end
process $group_52
- assign \oper_i__traptype 4'0000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \oper_i__traptype 5'00000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_trap0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__traptype \traptype
end
end
process $group_53
assign \oper_i__trapaddr 13'0000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_trap0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__trapaddr \trapaddr
end
end
process $group_54
assign \issue_i$17 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_trap0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \issue_i$17 \issue_i
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:119"
- wire width 6 $228
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:119"
- cell $not $229
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:118"
+ wire width 6 $259
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:118"
+ cell $not $260
parameter \A_SIGNED 0
parameter \A_WIDTH 6
parameter \Y_WIDTH 6
connect \A { 1'1 1'1 \fast2_ok \fast1_ok \reg2_ok \reg1_ok }
- connect \Y $228
+ connect \Y $259
end
process $group_55
- assign \fus_rdmaskn$123 6'000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \fus_rdmaskn$139 6'000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_trap0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \fus_rdmaskn$123 $228
+ assign \fus_rdmaskn$139 $259
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 1 $230
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 10 $231
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $and $232
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 1 $261
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 11 $262
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $and $263
parameter \A_SIGNED 0
- parameter \A_WIDTH 10
+ parameter \A_WIDTH 11
parameter \B_SIGNED 0
parameter \B_WIDTH 5
- parameter \Y_WIDTH 10
+ parameter \Y_WIDTH 11
connect \A \fn_unit
connect \B 5'10000
- connect \Y $231
+ connect \Y $262
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $reduce_bool $233
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $reduce_bool $264
parameter \A_SIGNED 0
- parameter \A_WIDTH 10
+ parameter \A_WIDTH 11
parameter \Y_WIDTH 1
- connect \A $231
- connect \Y $230
+ connect \A $262
+ connect \Y $261
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 1 $234
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $and $235
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 1 $265
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $and $266
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
connect \A \valid
- connect \B $230
- connect \Y $234
+ connect \B $261
+ connect \Y $265
end
process $group_56
assign \en_logical0 1'0
- assign \en_logical0 $234
+ assign \en_logical0 $265
sync init
end
process $group_57
assign \oper_i__insn_type$19 7'0000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__insn_type$19 \insn_type
end
sync init
end
process $group_58
- assign \oper_i__fn_unit$20 10'0000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \oper_i__fn_unit$20 11'00000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__fn_unit$20 \fn_unit
end
sync init
end
process $group_59
- assign \fus_oper_i__imm_data__imm$124 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \fus_oper_i__imm_data__imm_ok$125 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \fus_oper_i__imm_data__imm$140 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fus_oper_i__imm_data__imm_ok$141 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign { \fus_oper_i__imm_data__imm_ok$125 \fus_oper_i__imm_data__imm$124 } { \imm_ok \imm }
+ assign { \fus_oper_i__imm_data__imm_ok$141 \fus_oper_i__imm_data__imm$140 } { \imm_ok \imm }
end
sync init
end
process $group_61
assign \oper_i__lk$21 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__lk$21 \lk
end
sync init
end
process $group_62
- assign \fus_oper_i__rc__rc$126 1'0
- assign \fus_oper_i__rc__rc_ok$127 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \fus_oper_i__rc__rc$142 1'0
+ assign \fus_oper_i__rc__rc_ok$143 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign { \fus_oper_i__rc__rc_ok$127 \fus_oper_i__rc__rc$126 } { \rc_ok \rc }
+ assign { \fus_oper_i__rc__rc_ok$143 \fus_oper_i__rc__rc$142 } { \rc_ok \rc }
end
sync init
end
process $group_64
- assign \fus_oper_i__oe__oe$128 1'0
- assign \fus_oper_i__oe__oe_ok$129 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \fus_oper_i__oe__oe$144 1'0
+ assign \fus_oper_i__oe__oe_ok$145 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign { \fus_oper_i__oe__oe_ok$129 \fus_oper_i__oe__oe$128 } { \oe_ok \oe }
+ assign { \fus_oper_i__oe__oe_ok$145 \fus_oper_i__oe__oe$144 } { \oe_ok \oe }
end
sync init
end
process $group_66
assign \oper_i__invert_a$22 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__invert_a$22 \invert_a
end
sync init
end
process $group_67
- assign \fus_oper_i__zero_a$130 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \fus_oper_i__zero_a$146 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \fus_oper_i__zero_a$130 \zero_a
+ assign \fus_oper_i__zero_a$146 \zero_a
end
sync init
end
process $group_68
assign \oper_i__input_carry$23 2'00
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__input_carry$23 \input_carry
end
end
process $group_69
assign \oper_i__invert_out$24 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__invert_out$24 \invert_out
end
sync init
end
process $group_70
- assign \fus_oper_i__write_cr__data$131 3'000
- assign \fus_oper_i__write_cr__ok$132 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \fus_oper_i__write_cr__data$147 3'000
+ assign \fus_oper_i__write_cr__ok$148 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign { \fus_oper_i__write_cr__ok$132 \fus_oper_i__write_cr__data$131 } { \cr_out_ok \cr_out }
+ assign { \fus_oper_i__write_cr__ok$148 \fus_oper_i__write_cr__data$147 } { \cr_out_ok \cr_out }
end
sync init
end
process $group_72
assign \oper_i__output_carry$25 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__output_carry$25 \output_carry
end
end
process $group_73
assign \oper_i__is_32bit$26 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__is_32bit$26 \is_32bit
end
end
process $group_74
assign \oper_i__is_signed$27 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__is_signed$27 \is_signed
end
end
process $group_75
assign \oper_i__data_len$28 4'0000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__data_len$28 \data_len
end
sync init
end
process $group_76
- assign \fus_oper_i__insn$133 32'00000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \fus_oper_i__insn$149 32'00000000000000000000000000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \fus_oper_i__insn$133 \insn
+ assign \fus_oper_i__insn$149 \insn
end
sync init
end
process $group_77
assign \issue_i$29 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \issue_i$29 \issue_i
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:119"
- wire width 2 $236
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:119"
- cell $not $237
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:118"
+ wire width 2 $267
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:118"
+ cell $not $268
parameter \A_SIGNED 0
parameter \A_WIDTH 2
parameter \Y_WIDTH 2
connect \A { \reg2_ok \reg1_ok }
- connect \Y $236
+ connect \Y $267
end
process $group_78
- assign \fus_rdmaskn$134 2'00
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \fus_rdmaskn$150 2'00
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_logical0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \fus_rdmaskn$134 $236
+ assign \fus_rdmaskn$150 $267
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 1 $238
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 10 $239
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $and $240
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 1 $269
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 11 $270
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $and $271
parameter \A_SIGNED 0
- parameter \A_WIDTH 10
+ parameter \A_WIDTH 11
parameter \B_SIGNED 0
- parameter \B_WIDTH 4
- parameter \Y_WIDTH 10
+ parameter \B_WIDTH 11
+ parameter \Y_WIDTH 11
connect \A \fn_unit
- connect \B 4'1000
- connect \Y $239
+ connect \B 11'10000000000
+ connect \Y $270
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $reduce_bool $241
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $reduce_bool $272
parameter \A_SIGNED 0
- parameter \A_WIDTH 10
+ parameter \A_WIDTH 11
parameter \Y_WIDTH 1
- connect \A $239
- connect \Y $238
+ connect \A $270
+ connect \Y $269
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 1 $242
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $and $243
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 1 $273
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $and $274
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
connect \A \valid
- connect \B $238
- connect \Y $242
+ connect \B $269
+ connect \Y $273
end
process $group_79
- assign \en_shiftrot0 1'0
- assign \en_shiftrot0 $242
+ assign \en_spr0 1'0
+ assign \en_spr0 $273
sync init
end
process $group_80
assign \oper_i__insn_type$31 7'0000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
- switch { \en_shiftrot0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ switch { \en_spr0 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__insn_type$31 \insn_type
end
sync init
end
process $group_81
- assign \fus_oper_i__fn_unit$135 10'0000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
- switch { \en_shiftrot0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \oper_i__fn_unit$32 11'00000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ switch { \en_spr0 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \fus_oper_i__fn_unit$135 \fn_unit
+ assign \oper_i__fn_unit$32 \fn_unit
end
sync init
end
process $group_82
- assign \fus_oper_i__imm_data__imm$136 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \fus_oper_i__imm_data__imm_ok$137 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
- switch { \en_shiftrot0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \oper_i__insn$33 32'00000000000000000000000000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ switch { \en_spr0 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign { \fus_oper_i__imm_data__imm_ok$137 \fus_oper_i__imm_data__imm$136 } { \imm_ok \imm }
+ assign \oper_i__insn$33 \insn
+ end
+ sync init
+ end
+ process $group_83
+ assign \oper_i__is_32bit$34 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ switch { \en_spr0 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ case 1'1
+ assign \oper_i__is_32bit$34 \is_32bit
end
sync init
end
process $group_84
- assign \fus_oper_i__rc__rc$138 1'0
- assign \fus_oper_i__rc__rc_ok$139 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
- switch { \en_shiftrot0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \issue_i$35 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ switch { \en_spr0 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ case 1'1
+ assign \issue_i$35 \issue_i
+ end
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:118"
+ wire width 6 $275
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:71"
+ wire width 1 $276
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:71"
+ cell $and $277
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \oe
+ connect \B \oe_ok
+ connect \Y $276
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:73"
+ wire width 1 $278
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:73"
+ cell $and $279
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \oe
+ connect \B \oe_ok
+ connect \Y $278
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:75"
+ wire width 1 $280
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:75"
+ cell $eq $281
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 2
+ parameter \Y_WIDTH 1
+ connect \A \input_carry
+ connect \B 2'10
+ connect \Y $280
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:118"
+ cell $not $282
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 6
+ parameter \Y_WIDTH 6
+ connect \A { $280 $278 $276 \fast1_ok \spr1_ok \reg1_ok }
+ connect \Y $275
+ end
+ process $group_85
+ assign \fus_rdmaskn$151 6'000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ switch { \en_spr0 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign { \fus_oper_i__rc__rc_ok$139 \fus_oper_i__rc__rc$138 } { \rc_ok \rc }
+ assign \fus_rdmaskn$151 $275
end
sync init
end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 1 $283
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 11 $284
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $and $285
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 11
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 4
+ parameter \Y_WIDTH 11
+ connect \A \fn_unit
+ connect \B 4'1000
+ connect \Y $284
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $reduce_bool $286
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 11
+ parameter \Y_WIDTH 1
+ connect \A $284
+ connect \Y $283
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 1 $287
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $and $288
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \valid
+ connect \B $283
+ connect \Y $287
+ end
process $group_86
- assign \fus_oper_i__oe__oe$140 1'0
- assign \fus_oper_i__oe__oe_ok$141 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \en_shiftrot0 1'0
+ assign \en_shiftrot0 $287
+ sync init
+ end
+ process $group_87
+ assign \oper_i__insn_type$37 7'0000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_shiftrot0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign { \fus_oper_i__oe__oe_ok$141 \fus_oper_i__oe__oe$140 } { \oe_ok \oe }
+ assign \oper_i__insn_type$37 \insn_type
end
sync init
end
process $group_88
- assign \fus_oper_i__write_cr__data$142 3'000
- assign \fus_oper_i__write_cr__ok$143 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \fus_oper_i__fn_unit$152 11'00000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_shiftrot0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign { \fus_oper_i__write_cr__ok$143 \fus_oper_i__write_cr__data$142 } { \cr_out_ok \cr_out }
+ assign \fus_oper_i__fn_unit$152 \fn_unit
end
sync init
end
- process $group_90
- assign \oper_i__input_carry$32 2'00
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_89
+ assign \fus_oper_i__imm_data__imm$153 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fus_oper_i__imm_data__imm_ok$154 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_shiftrot0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \oper_i__input_carry$32 \input_carry
+ assign { \fus_oper_i__imm_data__imm_ok$154 \fus_oper_i__imm_data__imm$153 } { \imm_ok \imm }
end
sync init
end
process $group_91
- assign \oper_i__output_carry$33 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ assign \fus_oper_i__rc__rc$155 1'0
+ assign \fus_oper_i__rc__rc_ok$156 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_shiftrot0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \oper_i__output_carry$33 \output_carry
+ assign { \fus_oper_i__rc__rc_ok$156 \fus_oper_i__rc__rc$155 } { \rc_ok \rc }
end
sync init
end
- process $group_92
- assign \oper_i__input_cr$34 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_93
+ assign \fus_oper_i__oe__oe$157 1'0
+ assign \fus_oper_i__oe__oe_ok$158 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_shiftrot0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \oper_i__input_cr$34 \input_cr
+ assign { \fus_oper_i__oe__oe_ok$158 \fus_oper_i__oe__oe$157 } { \oe_ok \oe }
end
sync init
end
- process $group_93
- assign \oper_i__output_cr$35 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_95
+ assign \fus_oper_i__write_cr__data$159 3'000
+ assign \fus_oper_i__write_cr__ok$160 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_shiftrot0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \oper_i__output_cr$35 \output_cr
+ assign { \fus_oper_i__write_cr__ok$160 \fus_oper_i__write_cr__data$159 } { \cr_out_ok \cr_out }
end
sync init
end
- process $group_94
- assign \oper_i__is_32bit$36 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_97
+ assign \oper_i__input_carry$38 2'00
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_shiftrot0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \oper_i__is_32bit$36 \is_32bit
+ assign \oper_i__input_carry$38 \input_carry
end
sync init
end
- process $group_95
- assign \oper_i__is_signed$37 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_98
+ assign \oper_i__output_carry$39 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_shiftrot0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \oper_i__is_signed$37 \is_signed
+ assign \oper_i__output_carry$39 \output_carry
end
sync init
end
- process $group_96
- assign \fus_oper_i__insn$144 32'00000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_99
+ assign \oper_i__input_cr$40 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_shiftrot0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \fus_oper_i__insn$144 \insn
+ assign \oper_i__input_cr$40 \input_cr
end
sync init
end
- process $group_97
- assign \issue_i$38 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_100
+ assign \oper_i__output_cr$41 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_shiftrot0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \issue_i$38 \issue_i
+ assign \oper_i__output_cr$41 \output_cr
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:119"
- wire width 4 $244
+ process $group_101
+ assign \oper_i__is_32bit$42 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ switch { \en_shiftrot0 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ case 1'1
+ assign \oper_i__is_32bit$42 \is_32bit
+ end
+ sync init
+ end
+ process $group_102
+ assign \oper_i__is_signed$43 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ switch { \en_shiftrot0 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ case 1'1
+ assign \oper_i__is_signed$43 \is_signed
+ end
+ sync init
+ end
+ process $group_103
+ assign \fus_oper_i__insn$161 32'00000000000000000000000000000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ switch { \en_shiftrot0 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ case 1'1
+ assign \fus_oper_i__insn$161 \insn
+ end
+ sync init
+ end
+ process $group_104
+ assign \issue_i$44 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ switch { \en_shiftrot0 }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
+ case 1'1
+ assign \issue_i$44 \issue_i
+ end
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:118"
+ wire width 4 $289
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:75"
- wire width 1 $245
+ wire width 1 $290
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:75"
- cell $eq $246
+ cell $eq $291
parameter \A_SIGNED 0
parameter \A_WIDTH 2
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \input_carry
connect \B 2'10
- connect \Y $245
+ connect \Y $290
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:119"
- cell $not $247
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:118"
+ cell $not $292
parameter \A_SIGNED 0
parameter \A_WIDTH 4
parameter \Y_WIDTH 4
- connect \A { $245 \reg3_ok \reg2_ok \reg1_ok }
- connect \Y $244
+ connect \A { $290 \reg3_ok \reg2_ok \reg1_ok }
+ connect \Y $289
end
- process $group_98
- assign \fus_rdmaskn$145 4'0000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_105
+ assign \fus_rdmaskn$162 4'0000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_shiftrot0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \fus_rdmaskn$145 $244
+ assign \fus_rdmaskn$162 $289
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 1 $248
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 10 $249
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $and $250
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 1 $293
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 11 $294
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $and $295
parameter \A_SIGNED 0
- parameter \A_WIDTH 10
+ parameter \A_WIDTH 11
parameter \B_SIGNED 0
parameter \B_WIDTH 3
- parameter \Y_WIDTH 10
+ parameter \Y_WIDTH 11
connect \A \fn_unit
connect \B 3'100
- connect \Y $249
+ connect \Y $294
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $reduce_bool $251
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $reduce_bool $296
parameter \A_SIGNED 0
- parameter \A_WIDTH 10
+ parameter \A_WIDTH 11
parameter \Y_WIDTH 1
- connect \A $249
- connect \Y $248
+ connect \A $294
+ connect \Y $293
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- wire width 1 $252
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
- cell $and $253
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ wire width 1 $297
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:112"
+ cell $and $298
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
connect \A \valid
- connect \B $248
- connect \Y $252
+ connect \B $293
+ connect \Y $297
end
- process $group_99
+ process $group_106
assign \en_ldst0 1'0
- assign \en_ldst0 $252
+ assign \en_ldst0 $297
sync init
end
- process $group_100
- assign \oper_i__insn_type$40 7'0000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_107
+ assign \oper_i__insn_type$46 7'0000000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_ldst0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \oper_i__insn_type$40 \insn_type
+ assign \oper_i__insn_type$46 \insn_type
end
sync init
end
- process $group_101
- assign \fus_oper_i__imm_data__imm$146 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \fus_oper_i__imm_data__imm_ok$147 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_108
+ assign \fus_oper_i__imm_data__imm$163 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fus_oper_i__imm_data__imm_ok$164 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_ldst0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign { \fus_oper_i__imm_data__imm_ok$147 \fus_oper_i__imm_data__imm$146 } { \imm_ok \imm }
+ assign { \fus_oper_i__imm_data__imm_ok$164 \fus_oper_i__imm_data__imm$163 } { \imm_ok \imm }
end
sync init
end
- process $group_103
+ process $group_110
assign \oper_i__zero_a 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_ldst0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__zero_a \zero_a
end
sync init
end
- process $group_104
- assign \oper_i__is_32bit$41 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_111
+ assign \oper_i__is_32bit$47 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_ldst0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \oper_i__is_32bit$41 \is_32bit
+ assign \oper_i__is_32bit$47 \is_32bit
end
sync init
end
- process $group_105
- assign \oper_i__is_signed$42 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_112
+ assign \oper_i__is_signed$48 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_ldst0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \oper_i__is_signed$42 \is_signed
+ assign \oper_i__is_signed$48 \is_signed
end
sync init
end
- process $group_106
- assign \oper_i__data_len$43 4'0000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_113
+ assign \oper_i__data_len$49 4'0000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_ldst0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \oper_i__data_len$43 \data_len
+ assign \oper_i__data_len$49 \data_len
end
sync init
end
- process $group_107
- assign \oper_i__byte_reverse$44 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_114
+ assign \oper_i__byte_reverse$50 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_ldst0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \oper_i__byte_reverse$44 \byte_reverse
+ assign \oper_i__byte_reverse$50 \byte_reverse
end
sync init
end
- process $group_108
- assign \oper_i__sign_extend$45 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_115
+ assign \oper_i__sign_extend$51 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_ldst0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \oper_i__sign_extend$45 \sign_extend
+ assign \oper_i__sign_extend$51 \sign_extend
end
sync init
end
- process $group_109
+ process $group_116
assign \oper_i__update 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_ldst0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
assign \oper_i__update \update
end
sync init
end
- process $group_110
- assign \issue_i$46 1'0
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_117
+ assign \issue_i$52 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_ldst0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \issue_i$46 \issue_i
+ assign \issue_i$52 \issue_i
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:119"
- wire width 3 $254
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:119"
- cell $not $255
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:118"
+ wire width 3 $299
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:118"
+ cell $not $300
parameter \A_SIGNED 0
parameter \A_WIDTH 3
parameter \Y_WIDTH 3
connect \A { \reg3_ok \reg2_ok \reg1_ok }
- connect \Y $254
+ connect \Y $299
end
- process $group_111
- assign \fus_rdmaskn$148 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ process $group_118
+ assign \fus_rdmaskn$165 3'000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
switch { \en_ldst0 }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:114"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:113"
case 1'1
- assign \fus_rdmaskn$148 $254
+ assign \fus_rdmaskn$165 $299
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:151"
wire width 1 \rdflag_INT_ra
- process $group_112
+ process $group_119
assign \rdflag_INT_ra 1'0
assign \rdflag_INT_ra \reg1_ok
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:47"
- wire width 32 $256
+ wire width 32 $301
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:47"
- cell $sshl $257
+ cell $sshl $302
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 32
connect \A 1'1
connect \B \reg1
- connect \Y $256
+ connect \Y $301
end
- process $group_113
+ process $group_120
assign \int_src1__ren 32'00000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
switch { \rdpick_INT_ra_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
case 1'1
- assign \int_src1__ren $256
+ assign \int_src1__ren $301
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $258
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $259
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $303
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $304
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \rd__rel [0]
connect \B \fu_enable [0]
- connect \Y $258
+ connect \Y $303
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $260
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $261
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $305
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $306
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $258
+ connect \A $303
connect \B \rdflag_INT_ra
- connect \Y $260
+ connect \Y $305
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $262
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $263
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $307
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $308
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$48 [0]
+ connect \A \rd__rel$54 [0]
connect \B \fu_enable [1]
- connect \Y $262
+ connect \Y $307
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $264
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $265
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $309
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $310
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $262
+ connect \A $307
connect \B \rdflag_INT_ra
- connect \Y $264
+ connect \Y $309
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $266
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $267
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $311
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $312
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$51 [0]
+ connect \A \rd__rel$57 [0]
connect \B \fu_enable [3]
- connect \Y $266
+ connect \Y $311
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $268
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $269
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $313
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $314
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $266
+ connect \A $311
connect \B \rdflag_INT_ra
- connect \Y $268
+ connect \Y $313
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $270
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $271
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $315
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $316
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$54 [0]
+ connect \A \rd__rel$60 [0]
connect \B \fu_enable [4]
- connect \Y $270
+ connect \Y $315
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $272
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $273
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $317
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $318
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $270
+ connect \A $315
connect \B \rdflag_INT_ra
- connect \Y $272
+ connect \Y $317
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $274
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $275
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $319
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $320
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$57 [0]
+ connect \A \rd__rel$63 [0]
connect \B \fu_enable [5]
- connect \Y $274
+ connect \Y $319
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $276
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $277
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $321
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $322
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $274
+ connect \A $319
connect \B \rdflag_INT_ra
- connect \Y $276
+ connect \Y $321
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $278
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $279
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $323
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $324
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$60 [0]
+ connect \A \rd__rel$66 [0]
connect \B \fu_enable [6]
- connect \Y $278
+ connect \Y $323
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $280
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $281
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $325
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $326
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $278
+ connect \A $323
connect \B \rdflag_INT_ra
- connect \Y $280
+ connect \Y $325
end
- process $group_114
- assign \rdpick_INT_ra_i 6'000000
- assign \rdpick_INT_ra_i [0] $260
- assign \rdpick_INT_ra_i [1] $264
- assign \rdpick_INT_ra_i [2] $268
- assign \rdpick_INT_ra_i [3] $272
- assign \rdpick_INT_ra_i [4] $276
- assign \rdpick_INT_ra_i [5] $280
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $327
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $328
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \rd__rel$69 [0]
+ connect \B \fu_enable [7]
+ connect \Y $327
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $329
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $330
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $327
+ connect \B \rdflag_INT_ra
+ connect \Y $329
+ end
+ process $group_121
+ assign \rdpick_INT_ra_i 7'0000000
+ assign \rdpick_INT_ra_i [0] $305
+ assign \rdpick_INT_ra_i [1] $309
+ assign \rdpick_INT_ra_i [2] $313
+ assign \rdpick_INT_ra_i [3] $317
+ assign \rdpick_INT_ra_i [4] $321
+ assign \rdpick_INT_ra_i [5] $325
+ assign \rdpick_INT_ra_i [6] $329
sync init
end
- process $group_115
+ process $group_122
assign \rd__go 4'0000
assign \rd__go [0] \rdpick_INT_ra_o [0]
assign \rd__go [1] \rdpick_INT_rb_o [0]
- assign \rd__go [2] \rdpick_XER_xer_so_o
+ assign \rd__go [2] \rdpick_XER_xer_so_o [0]
assign \rd__go [3] \rdpick_XER_xer_ca_o [0]
sync init
end
- process $group_116
+ process $group_123
assign \src1_i 64'0000000000000000000000000000000000000000000000000000000000000000
assign \src1_i \int_src1__data_o
sync init
end
- process $group_117
- assign \rd__go$49 6'000000
- assign \rd__go$49 [0] \rdpick_INT_ra_o [1]
- assign \rd__go$49 [1] \rdpick_INT_rb_o [1]
- assign \rd__go$49 [2] \rdpick_CR_full_cr_o
- assign \rd__go$49 [3] \rdpick_CR_cr_a_o [0]
- assign \rd__go$49 [4] \rdpick_CR_cr_b_o
- assign \rd__go$49 [5] \rdpick_CR_cr_c_o
+ process $group_124
+ assign \rd__go$55 6'000000
+ assign \rd__go$55 [0] \rdpick_INT_ra_o [1]
+ assign \rd__go$55 [1] \rdpick_INT_rb_o [1]
+ assign \rd__go$55 [2] \rdpick_CR_full_cr_o
+ assign \rd__go$55 [3] \rdpick_CR_cr_a_o [0]
+ assign \rd__go$55 [4] \rdpick_CR_cr_b_o
+ assign \rd__go$55 [5] \rdpick_CR_cr_c_o
sync init
end
- process $group_118
- assign \src1_i$50 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \src1_i$50 \int_src1__data_o
+ process $group_125
+ assign \src1_i$56 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \src1_i$56 \int_src1__data_o
sync init
end
- process $group_119
- assign \rd__go$52 6'000000
- assign \rd__go$52 [0] \rdpick_INT_ra_o [2]
- assign \rd__go$52 [1] \rdpick_INT_rb_o [2]
- assign \rd__go$52 [2] \rdpick_FAST_spr1_o [1]
- assign \rd__go$52 [3] \rdpick_FAST_spr2_o [1]
- assign \rd__go$52 [4] \rdpick_FAST_cia_o [1]
- assign \rd__go$52 [5] \rdpick_FAST_msr_o
+ process $group_126
+ assign \rd__go$58 6'000000
+ assign \rd__go$58 [0] \rdpick_INT_ra_o [2]
+ assign \rd__go$58 [1] \rdpick_INT_rb_o [2]
+ assign \rd__go$58 [2] \rdpick_FAST_fast1_o [1]
+ assign \rd__go$58 [3] \rdpick_FAST_fast2_o [1]
+ assign \rd__go$58 [4] \rdpick_FAST_cia_o [1]
+ assign \rd__go$58 [5] \rdpick_FAST_msr_o
sync init
end
- process $group_120
- assign \src1_i$53 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \src1_i$53 \int_src1__data_o
+ process $group_127
+ assign \src1_i$59 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \src1_i$59 \int_src1__data_o
sync init
end
- process $group_121
- assign \rd__go$55 2'00
- assign \rd__go$55 [0] \rdpick_INT_ra_o [3]
- assign \rd__go$55 [1] \rdpick_INT_rb_o [3]
+ process $group_128
+ assign \rd__go$61 2'00
+ assign \rd__go$61 [0] \rdpick_INT_ra_o [3]
+ assign \rd__go$61 [1] \rdpick_INT_rb_o [3]
sync init
end
- process $group_122
- assign \src1_i$56 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \src1_i$56 \int_src1__data_o
+ process $group_129
+ assign \src1_i$62 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \src1_i$62 \int_src1__data_o
sync init
end
- process $group_123
- assign \rd__go$58 4'0000
- assign \rd__go$58 [0] \rdpick_INT_ra_o [4]
- assign \rd__go$58 [1] \rdpick_INT_rb_o [4]
- assign \rd__go$58 [2] \rdpick_INT_rc_o [0]
- assign \rd__go$58 [3] \rdpick_XER_xer_ca_o [1]
+ process $group_130
+ assign \rd__go$64 6'000000
+ assign \rd__go$64 [0] \rdpick_INT_ra_o [4]
+ assign \rd__go$64 [3] \rdpick_XER_xer_so_o [1]
+ assign \rd__go$64 [5] \rdpick_XER_xer_ca_o [1]
+ assign \rd__go$64 [4] \rdpick_XER_xer_ov_o
+ assign \rd__go$64 [2] \rdpick_FAST_fast1_o [2]
+ assign \rd__go$64 [1] \rdpick_SPR_spr1_o
sync init
end
- process $group_124
- assign \src1_i$59 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \src1_i$59 \int_src1__data_o
+ process $group_131
+ assign \src1_i$65 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \src1_i$65 \int_src1__data_o
sync init
end
- process $group_125
- assign \rd__go$61 3'000
- assign \rd__go$61 [0] \rdpick_INT_ra_o [5]
- assign \rd__go$61 [1] \rdpick_INT_rb_o [5]
- assign \rd__go$61 [2] \rdpick_INT_rc_o [1]
+ process $group_132
+ assign \rd__go$67 4'0000
+ assign \rd__go$67 [0] \rdpick_INT_ra_o [5]
+ assign \rd__go$67 [1] \rdpick_INT_rb_o [4]
+ assign \rd__go$67 [2] \rdpick_INT_rc_o [0]
+ assign \rd__go$67 [3] \rdpick_XER_xer_ca_o [2]
sync init
end
- process $group_126
- assign \src1_i$62 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \src1_i$62 \int_src1__data_o
+ process $group_133
+ assign \src1_i$68 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \src1_i$68 \int_src1__data_o
+ sync init
+ end
+ process $group_134
+ assign \rd__go$70 3'000
+ assign \rd__go$70 [0] \rdpick_INT_ra_o [6]
+ assign \rd__go$70 [1] \rdpick_INT_rb_o [5]
+ assign \rd__go$70 [2] \rdpick_INT_rc_o [1]
+ sync init
+ end
+ process $group_135
+ assign \src1_i$71 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \src1_i$71 \int_src1__data_o
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:151"
wire width 1 \rdflag_INT_rb
- process $group_127
+ process $group_136
assign \rdflag_INT_rb 1'0
assign \rdflag_INT_rb \reg2_ok
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:49"
- wire width 32 $282
+ wire width 32 $331
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:49"
- cell $sshl $283
+ cell $sshl $332
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 32
connect \A 1'1
connect \B \reg2
- connect \Y $282
+ connect \Y $331
end
- process $group_128
+ process $group_137
assign \int_src2__ren 32'00000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
switch { \rdpick_INT_rb_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
case 1'1
- assign \int_src2__ren $282
+ assign \int_src2__ren $331
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $284
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $285
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $333
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $334
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \rd__rel [1]
connect \B \fu_enable [0]
- connect \Y $284
+ connect \Y $333
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $286
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $287
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $335
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $336
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $284
+ connect \A $333
connect \B \rdflag_INT_rb
- connect \Y $286
+ connect \Y $335
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $288
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $289
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $337
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $338
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$48 [1]
+ connect \A \rd__rel$54 [1]
connect \B \fu_enable [1]
- connect \Y $288
+ connect \Y $337
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $290
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $291
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $339
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $340
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $288
+ connect \A $337
connect \B \rdflag_INT_rb
- connect \Y $290
+ connect \Y $339
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $292
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $293
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $341
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $342
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$51 [1]
+ connect \A \rd__rel$57 [1]
connect \B \fu_enable [3]
- connect \Y $292
+ connect \Y $341
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $294
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $295
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $343
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $344
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $292
+ connect \A $341
connect \B \rdflag_INT_rb
- connect \Y $294
+ connect \Y $343
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $296
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $297
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $345
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $346
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$54 [1]
+ connect \A \rd__rel$60 [1]
connect \B \fu_enable [4]
- connect \Y $296
+ connect \Y $345
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $298
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $299
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $347
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $348
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $296
+ connect \A $345
connect \B \rdflag_INT_rb
- connect \Y $298
+ connect \Y $347
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $300
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $301
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $349
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $350
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$57 [1]
- connect \B \fu_enable [5]
- connect \Y $300
+ connect \A \rd__rel$66 [1]
+ connect \B \fu_enable [6]
+ connect \Y $349
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $302
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $303
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $351
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $352
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $300
+ connect \A $349
connect \B \rdflag_INT_rb
- connect \Y $302
+ connect \Y $351
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $304
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $305
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $353
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $354
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$60 [1]
- connect \B \fu_enable [6]
- connect \Y $304
+ connect \A \rd__rel$69 [1]
+ connect \B \fu_enable [7]
+ connect \Y $353
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $306
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $307
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $355
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $356
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $304
+ connect \A $353
connect \B \rdflag_INT_rb
- connect \Y $306
+ connect \Y $355
end
- process $group_129
+ process $group_138
assign \rdpick_INT_rb_i 6'000000
- assign \rdpick_INT_rb_i [0] $286
- assign \rdpick_INT_rb_i [1] $290
- assign \rdpick_INT_rb_i [2] $294
- assign \rdpick_INT_rb_i [3] $298
- assign \rdpick_INT_rb_i [4] $302
- assign \rdpick_INT_rb_i [5] $306
+ assign \rdpick_INT_rb_i [0] $335
+ assign \rdpick_INT_rb_i [1] $339
+ assign \rdpick_INT_rb_i [2] $343
+ assign \rdpick_INT_rb_i [3] $347
+ assign \rdpick_INT_rb_i [4] $351
+ assign \rdpick_INT_rb_i [5] $355
sync init
end
- process $group_130
+ process $group_139
assign \src2_i 64'0000000000000000000000000000000000000000000000000000000000000000
assign \src2_i \int_src2__data_o
sync init
end
- process $group_131
- assign \src2_i$63 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \src2_i$63 \int_src2__data_o
+ process $group_140
+ assign \src2_i$72 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \src2_i$72 \int_src2__data_o
sync init
end
- process $group_132
- assign \src2_i$64 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \src2_i$64 \int_src2__data_o
+ process $group_141
+ assign \src2_i$73 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \src2_i$73 \int_src2__data_o
sync init
end
- process $group_133
- assign \src2_i$65 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \src2_i$65 \int_src2__data_o
+ process $group_142
+ assign \src2_i$74 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \src2_i$74 \int_src2__data_o
sync init
end
- process $group_134
- assign \src2_i$66 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \src2_i$66 \int_src2__data_o
+ process $group_143
+ assign \src2_i$75 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \src2_i$75 \int_src2__data_o
sync init
end
- process $group_135
- assign \src2_i$67 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \src2_i$67 \int_src2__data_o
+ process $group_144
+ assign \src2_i$76 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \src2_i$76 \int_src2__data_o
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:151"
wire width 1 \rdflag_INT_rc
- process $group_136
+ process $group_145
assign \rdflag_INT_rc 1'0
assign \rdflag_INT_rc \reg3_ok
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:51"
- wire width 32 $308
+ wire width 32 $357
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:51"
- cell $sshl $309
+ cell $sshl $358
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 32
connect \A 1'1
connect \B \reg3
- connect \Y $308
+ connect \Y $357
end
- process $group_137
+ process $group_146
assign \int_src3__ren 32'00000000000000000000000000000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
switch { \rdpick_INT_rc_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
case 1'1
- assign \int_src3__ren $308
+ assign \int_src3__ren $357
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $310
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $311
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $359
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $360
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$57 [2]
- connect \B \fu_enable [5]
- connect \Y $310
+ connect \A \rd__rel$66 [2]
+ connect \B \fu_enable [6]
+ connect \Y $359
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $312
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $313
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $361
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $362
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $310
+ connect \A $359
connect \B \rdflag_INT_rc
- connect \Y $312
+ connect \Y $361
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $314
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $315
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $363
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $364
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$60 [2]
- connect \B \fu_enable [6]
- connect \Y $314
+ connect \A \rd__rel$69 [2]
+ connect \B \fu_enable [7]
+ connect \Y $363
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $316
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $317
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $365
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $366
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $314
+ connect \A $363
connect \B \rdflag_INT_rc
- connect \Y $316
+ connect \Y $365
end
- process $group_138
+ process $group_147
assign \rdpick_INT_rc_i 2'00
- assign \rdpick_INT_rc_i [0] $312
- assign \rdpick_INT_rc_i [1] $316
+ assign \rdpick_INT_rc_i [0] $361
+ assign \rdpick_INT_rc_i [1] $365
sync init
end
- process $group_139
+ process $group_148
assign \fus_src3_i 64'0000000000000000000000000000000000000000000000000000000000000000
assign \fus_src3_i \int_src3__data_o
sync init
end
- process $group_140
+ process $group_149
assign \src3_i 64'0000000000000000000000000000000000000000000000000000000000000000
assign \src3_i \int_src3__data_o
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:151"
wire width 1 \rdflag_XER_xer_so
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:71"
- wire width 1 $318
+ wire width 1 $367
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:71"
- cell $and $319
+ cell $and $368
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \oe
connect \B \oe_ok
- connect \Y $318
+ connect \Y $367
end
- process $group_141
+ process $group_150
assign \rdflag_XER_xer_so 1'0
- assign \rdflag_XER_xer_so $318
+ assign \rdflag_XER_xer_so $367
sync init
end
- process $group_142
+ process $group_151
assign \xer_src1__ren 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
switch { \rdpick_XER_xer_so_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
case 1'1
assign \xer_src1__ren 3'001
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $320
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $321
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $369
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $370
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \rd__rel [2]
connect \B \fu_enable [0]
- connect \Y $320
+ connect \Y $369
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $322
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $323
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $371
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $372
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $320
+ connect \A $369
connect \B \rdflag_XER_xer_so
- connect \Y $322
+ connect \Y $371
end
- process $group_143
- assign \rdpick_XER_xer_so_i 1'0
- assign \rdpick_XER_xer_so_i $322
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $373
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $374
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \rd__rel$63 [3]
+ connect \B \fu_enable [5]
+ connect \Y $373
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $375
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $376
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $373
+ connect \B \rdflag_XER_xer_so
+ connect \Y $375
+ end
+ process $group_152
+ assign \rdpick_XER_xer_so_i 2'00
+ assign \rdpick_XER_xer_so_i [0] $371
+ assign \rdpick_XER_xer_so_i [1] $375
sync init
end
- process $group_144
- assign \fus_src3_i$149 1'0
- assign \fus_src3_i$149 \xer_src1__data_o [0]
+ process $group_153
+ assign \fus_src3_i$166 1'0
+ assign \fus_src3_i$166 \xer_src1__data_o [0]
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:152"
+ process $group_154
+ assign \fus_src4_i 1'0
+ assign \fus_src4_i \xer_src1__data_o [0]
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:151"
wire width 1 \rdflag_XER_xer_ca
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:75"
- wire width 1 $324
+ wire width 1 $377
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:75"
- cell $eq $325
+ cell $eq $378
parameter \A_SIGNED 0
parameter \A_WIDTH 2
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \input_carry
connect \B 2'10
- connect \Y $324
+ connect \Y $377
end
- process $group_145
+ process $group_155
assign \rdflag_XER_xer_ca 1'0
- assign \rdflag_XER_xer_ca $324
+ assign \rdflag_XER_xer_ca $377
sync init
end
- process $group_146
+ process $group_156
assign \xer_src2__ren 3'000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
switch { \rdpick_XER_xer_ca_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
case 1'1
assign \xer_src2__ren 3'010
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $326
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $327
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $379
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $380
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \rd__rel [3]
connect \B \fu_enable [0]
- connect \Y $326
+ connect \Y $379
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $328
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $329
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $381
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $382
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $326
+ connect \A $379
connect \B \rdflag_XER_xer_ca
- connect \Y $328
+ connect \Y $381
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $330
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $331
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $383
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $384
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$57 [3]
+ connect \A \rd__rel$63 [5]
connect \B \fu_enable [5]
- connect \Y $330
+ connect \Y $383
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $332
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $333
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $385
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $386
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $330
+ connect \A $383
connect \B \rdflag_XER_xer_ca
- connect \Y $332
+ connect \Y $385
end
- process $group_147
- assign \rdpick_XER_xer_ca_i 2'00
- assign \rdpick_XER_xer_ca_i [0] $328
- assign \rdpick_XER_xer_ca_i [1] $332
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $387
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $388
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \rd__rel$66 [3]
+ connect \B \fu_enable [6]
+ connect \Y $387
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $389
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $390
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $387
+ connect \B \rdflag_XER_xer_ca
+ connect \Y $389
+ end
+ process $group_157
+ assign \rdpick_XER_xer_ca_i 3'000
+ assign \rdpick_XER_xer_ca_i [0] $381
+ assign \rdpick_XER_xer_ca_i [1] $385
+ assign \rdpick_XER_xer_ca_i [2] $389
sync init
end
- process $group_148
- assign \fus_src4_i 2'00
- assign \fus_src4_i \xer_src2__data_o
+ process $group_158
+ assign \fus_src4_i$167 2'00
+ assign \fus_src4_i$167 \xer_src2__data_o
sync init
end
- process $group_149
- assign \fus_src4_i$150 2'00
- assign \fus_src4_i$150 \xer_src2__data_o
+ process $group_159
+ assign \fus_src6_i 2'00
+ assign \fus_src6_i \xer_src2__data_o
+ sync init
+ end
+ process $group_160
+ assign \fus_src4_i$168 2'00
+ assign \fus_src4_i$168 \xer_src2__data_o
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:151"
+ wire width 1 \rdflag_XER_xer_ov
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:73"
+ wire width 1 $391
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:73"
+ cell $and $392
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \oe
+ connect \B \oe_ok
+ connect \Y $391
+ end
+ process $group_161
+ assign \rdflag_XER_xer_ov 1'0
+ assign \rdflag_XER_xer_ov $391
+ sync init
+ end
+ process $group_162
+ assign \xer_src3__ren 3'000
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
+ switch { \rdpick_XER_xer_ov_en_o }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
+ case 1'1
+ assign \xer_src3__ren 3'100
+ end
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $393
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $394
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \rd__rel$63 [4]
+ connect \B \fu_enable [5]
+ connect \Y $393
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $395
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $396
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $393
+ connect \B \rdflag_XER_xer_ov
+ connect \Y $395
+ end
+ process $group_163
+ assign \rdpick_XER_xer_ov_i 1'0
+ assign \rdpick_XER_xer_ov_i $395
+ sync init
+ end
+ process $group_164
+ assign \fus_src5_i 2'00
+ assign \fus_src5_i \xer_src3__data_o
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:151"
wire width 1 \rdflag_CR_full_cr
- process $group_150
+ process $group_165
assign \rdflag_CR_full_cr 1'0
assign \rdflag_CR_full_cr \read_cr_whole
sync init
end
- process $group_151
+ process $group_166
assign \cr_full_rd__ren 8'00000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
switch { \rdpick_CR_full_cr_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
case 1'1
assign \cr_full_rd__ren 8'11111111
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $334
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $335
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $397
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $398
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$48 [2]
+ connect \A \rd__rel$54 [2]
connect \B \fu_enable [1]
- connect \Y $334
+ connect \Y $397
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $336
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $337
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $399
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $400
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $334
+ connect \A $397
connect \B \rdflag_CR_full_cr
- connect \Y $336
+ connect \Y $399
end
- process $group_152
+ process $group_167
assign \rdpick_CR_full_cr_i 1'0
- assign \rdpick_CR_full_cr_i $336
+ assign \rdpick_CR_full_cr_i $399
sync init
end
- process $group_153
- assign \fus_src3_i$151 32'00000000000000000000000000000000
- assign \fus_src3_i$151 \cr_full_rd__data_o
+ process $group_168
+ assign \fus_src3_i$169 32'00000000000000000000000000000000
+ assign \fus_src3_i$169 \cr_full_rd__data_o
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:151"
wire width 1 \rdflag_CR_cr_a
- process $group_154
+ process $group_169
assign \rdflag_CR_cr_a 1'0
assign \rdflag_CR_cr_a \cr_in1_ok
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:59"
- wire width 16 $338
+ wire width 16 $401
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:59"
- wire width 4 $339
+ wire width 4 $402
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:59"
- cell $sub $340
+ cell $sub $403
parameter \A_SIGNED 0
parameter \A_WIDTH 3
parameter \B_SIGNED 0
parameter \Y_WIDTH 4
connect \A 3'111
connect \B \cr_in1
- connect \Y $339
+ connect \Y $402
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:59"
- wire width 16 $341
+ wire width 16 $404
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:59"
- cell $sshl $342
+ cell $sshl $405
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 4
parameter \Y_WIDTH 16
connect \A 1'1
- connect \B $339
- connect \Y $341
+ connect \B $402
+ connect \Y $404
end
- connect $338 $341
- process $group_155
+ connect $401 $404
+ process $group_170
assign \cr_src1__ren 8'00000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
switch { \rdpick_CR_cr_a_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
case 1'1
- assign \cr_src1__ren $338 [7:0]
+ assign \cr_src1__ren $401 [7:0]
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $343
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $344
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $406
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $407
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$48 [3]
+ connect \A \rd__rel$54 [3]
connect \B \fu_enable [1]
- connect \Y $343
+ connect \Y $406
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $345
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $346
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $408
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $409
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $343
+ connect \A $406
connect \B \rdflag_CR_cr_a
- connect \Y $345
+ connect \Y $408
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $347
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $348
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $410
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $411
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$68 [2]
+ connect \A \rd__rel$77 [2]
connect \B \fu_enable [2]
- connect \Y $347
+ connect \Y $410
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $349
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $350
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $412
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $413
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $347
+ connect \A $410
connect \B \rdflag_CR_cr_a
- connect \Y $349
+ connect \Y $412
end
- process $group_156
+ process $group_171
assign \rdpick_CR_cr_a_i 2'00
- assign \rdpick_CR_cr_a_i [0] $345
- assign \rdpick_CR_cr_a_i [1] $349
+ assign \rdpick_CR_cr_a_i [0] $408
+ assign \rdpick_CR_cr_a_i [1] $412
sync init
end
- process $group_157
- assign \fus_src4_i$152 4'0000
- assign \fus_src4_i$152 \cr_src1__data_o
+ process $group_172
+ assign \fus_src4_i$170 4'0000
+ assign \fus_src4_i$170 \cr_src1__data_o
sync init
end
- process $group_158
- assign \rd__go$69 4'0000
- assign \rd__go$69 [2] \rdpick_CR_cr_a_o [1]
- assign \rd__go$69 [0] \rdpick_FAST_spr1_o [0]
- assign \rd__go$69 [1] \rdpick_FAST_spr2_o [0]
- assign \rd__go$69 [3] \rdpick_FAST_cia_o [0]
+ process $group_173
+ assign \rd__go$78 4'0000
+ assign \rd__go$78 [2] \rdpick_CR_cr_a_o [1]
+ assign \rd__go$78 [0] \rdpick_FAST_fast1_o [0]
+ assign \rd__go$78 [1] \rdpick_FAST_fast2_o [0]
+ assign \rd__go$78 [3] \rdpick_FAST_cia_o [0]
sync init
end
- process $group_159
- assign \fus_src3_i$153 4'0000
- assign \fus_src3_i$153 \cr_src1__data_o
+ process $group_174
+ assign \fus_src3_i$171 4'0000
+ assign \fus_src3_i$171 \cr_src1__data_o
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:151"
wire width 1 \rdflag_CR_cr_b
- process $group_160
+ process $group_175
assign \rdflag_CR_cr_b 1'0
assign \rdflag_CR_cr_b \cr_in2_ok
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:61"
- wire width 16 $351
+ wire width 16 $414
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:61"
- wire width 4 $352
+ wire width 4 $415
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:61"
- cell $sub $353
+ cell $sub $416
parameter \A_SIGNED 0
parameter \A_WIDTH 3
parameter \B_SIGNED 0
parameter \Y_WIDTH 4
connect \A 3'111
connect \B \cr_in2
- connect \Y $352
+ connect \Y $415
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:61"
- wire width 16 $354
+ wire width 16 $417
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:61"
- cell $sshl $355
+ cell $sshl $418
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 4
parameter \Y_WIDTH 16
connect \A 1'1
- connect \B $352
- connect \Y $354
+ connect \B $415
+ connect \Y $417
end
- connect $351 $354
- process $group_161
+ connect $414 $417
+ process $group_176
assign \cr_src2__ren 8'00000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
switch { \rdpick_CR_cr_b_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
case 1'1
- assign \cr_src2__ren $351 [7:0]
+ assign \cr_src2__ren $414 [7:0]
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $356
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $357
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $419
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $420
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$48 [4]
+ connect \A \rd__rel$54 [4]
connect \B \fu_enable [1]
- connect \Y $356
+ connect \Y $419
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $358
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $359
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $421
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $422
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $356
+ connect \A $419
connect \B \rdflag_CR_cr_b
- connect \Y $358
+ connect \Y $421
end
- process $group_162
+ process $group_177
assign \rdpick_CR_cr_b_i 1'0
- assign \rdpick_CR_cr_b_i $358
+ assign \rdpick_CR_cr_b_i $421
sync init
end
- process $group_163
- assign \fus_src5_i 4'0000
- assign \fus_src5_i \cr_src2__data_o
+ process $group_178
+ assign \fus_src5_i$172 4'0000
+ assign \fus_src5_i$172 \cr_src2__data_o
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:151"
wire width 1 \rdflag_CR_cr_c
- process $group_164
+ process $group_179
assign \rdflag_CR_cr_c 1'0
assign \rdflag_CR_cr_c \cr_in2_ok$5
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:63"
- wire width 16 $360
+ wire width 16 $423
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:63"
- wire width 4 $361
+ wire width 4 $424
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:63"
- cell $sub $362
+ cell $sub $425
parameter \A_SIGNED 0
parameter \A_WIDTH 3
parameter \B_SIGNED 0
parameter \B_WIDTH 3
parameter \Y_WIDTH 4
connect \A 3'111
- connect \B \cr_in2$70
- connect \Y $361
+ connect \B \cr_in2$79
+ connect \Y $424
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:63"
- wire width 16 $363
+ wire width 16 $426
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:63"
- cell $sshl $364
+ cell $sshl $427
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 4
parameter \Y_WIDTH 16
connect \A 1'1
- connect \B $361
- connect \Y $363
+ connect \B $424
+ connect \Y $426
end
- connect $360 $363
- process $group_165
+ connect $423 $426
+ process $group_180
assign \cr_src3__ren 8'00000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
switch { \rdpick_CR_cr_c_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
case 1'1
- assign \cr_src3__ren $360 [7:0]
+ assign \cr_src3__ren $423 [7:0]
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $365
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $366
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $428
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $429
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$48 [5]
+ connect \A \rd__rel$54 [5]
connect \B \fu_enable [1]
- connect \Y $365
+ connect \Y $428
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $367
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $368
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $430
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $431
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $365
+ connect \A $428
connect \B \rdflag_CR_cr_c
- connect \Y $367
+ connect \Y $430
end
- process $group_166
+ process $group_181
assign \rdpick_CR_cr_c_i 1'0
- assign \rdpick_CR_cr_c_i $367
+ assign \rdpick_CR_cr_c_i $430
sync init
end
- process $group_167
- assign \fus_src6_i 4'0000
- assign \fus_src6_i \cr_src3__data_o
+ process $group_182
+ assign \fus_src6_i$173 4'0000
+ assign \fus_src6_i$173 \cr_src3__data_o
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:152"
- wire width 1 \rdflag_FAST_spr1
- process $group_168
- assign \rdflag_FAST_spr1 1'0
- assign \rdflag_FAST_spr1 \fast1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:151"
+ wire width 1 \rdflag_FAST_fast1
+ process $group_183
+ assign \rdflag_FAST_fast1 1'0
+ assign \rdflag_FAST_fast1 \fast1_ok
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:92"
- wire width 8 $369
+ wire width 8 $432
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:92"
- cell $sshl $370
+ cell $sshl $433
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 8
connect \A 1'1
connect \B \fast1
- connect \Y $369
+ connect \Y $432
end
- process $group_169
+ process $group_184
assign \fast_src3__ren 8'00000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
- switch { \rdpick_FAST_spr1_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
+ switch { \rdpick_FAST_fast1_en_o }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
case 1'1
- assign \fast_src3__ren $369
+ assign \fast_src3__ren $432
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $371
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $372
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $434
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $435
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$68 [0]
+ connect \A \rd__rel$77 [0]
connect \B \fu_enable [2]
- connect \Y $371
+ connect \Y $434
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $373
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $374
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $436
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $437
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $371
- connect \B \rdflag_FAST_spr1
- connect \Y $373
+ connect \A $434
+ connect \B \rdflag_FAST_fast1
+ connect \Y $436
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $375
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $376
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $438
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $439
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$51 [2]
+ connect \A \rd__rel$57 [2]
connect \B \fu_enable [3]
- connect \Y $375
+ connect \Y $438
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $377
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $378
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $440
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $441
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $375
- connect \B \rdflag_FAST_spr1
- connect \Y $377
+ connect \A $438
+ connect \B \rdflag_FAST_fast1
+ connect \Y $440
end
- process $group_170
- assign \rdpick_FAST_spr1_i 2'00
- assign \rdpick_FAST_spr1_i [0] $373
- assign \rdpick_FAST_spr1_i [1] $377
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $442
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $443
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \rd__rel$63 [2]
+ connect \B \fu_enable [5]
+ connect \Y $442
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $444
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $445
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $442
+ connect \B \rdflag_FAST_fast1
+ connect \Y $444
+ end
+ process $group_185
+ assign \rdpick_FAST_fast1_i 3'000
+ assign \rdpick_FAST_fast1_i [0] $436
+ assign \rdpick_FAST_fast1_i [1] $440
+ assign \rdpick_FAST_fast1_i [2] $444
sync init
end
- process $group_171
- assign \src1_i$71 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \src1_i$71 \fast_src3__data_o
+ process $group_186
+ assign \src1_i$80 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \src1_i$80 \fast_src3__data_o
sync init
end
- process $group_172
- assign \fus_src3_i$154 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \fus_src3_i$154 \fast_src3__data_o
+ process $group_187
+ assign \fus_src3_i$174 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fus_src3_i$174 \fast_src3__data_o
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:152"
- wire width 1 \rdflag_FAST_spr2
- process $group_173
- assign \rdflag_FAST_spr2 1'0
- assign \rdflag_FAST_spr2 \fast2_ok
+ process $group_188
+ assign \fus_src3_i$175 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fus_src3_i$175 \fast_src3__data_o
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:151"
+ wire width 1 \rdflag_FAST_fast2
+ process $group_189
+ assign \rdflag_FAST_fast2 1'0
+ assign \rdflag_FAST_fast2 \fast2_ok
sync init
end
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:94"
- wire width 8 $379
+ wire width 8 $446
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:94"
- cell $sshl $380
+ cell $sshl $447
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 8
connect \A 1'1
connect \B \fast2
- connect \Y $379
+ connect \Y $446
end
- process $group_174
+ process $group_190
assign \fast_src4__ren 8'00000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
- switch { \rdpick_FAST_spr2_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
+ switch { \rdpick_FAST_fast2_en_o }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
case 1'1
- assign \fast_src4__ren $379
+ assign \fast_src4__ren $446
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $381
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $382
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $448
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $449
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$68 [1]
+ connect \A \rd__rel$77 [1]
connect \B \fu_enable [2]
- connect \Y $381
+ connect \Y $448
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $383
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $384
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $450
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $451
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $381
- connect \B \rdflag_FAST_spr2
- connect \Y $383
+ connect \A $448
+ connect \B \rdflag_FAST_fast2
+ connect \Y $450
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $385
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $386
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $452
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $453
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$51 [3]
+ connect \A \rd__rel$57 [3]
connect \B \fu_enable [3]
- connect \Y $385
+ connect \Y $452
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $387
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $388
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $454
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $455
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $385
- connect \B \rdflag_FAST_spr2
- connect \Y $387
+ connect \A $452
+ connect \B \rdflag_FAST_fast2
+ connect \Y $454
end
- process $group_175
- assign \rdpick_FAST_spr2_i 2'00
- assign \rdpick_FAST_spr2_i [0] $383
- assign \rdpick_FAST_spr2_i [1] $387
+ process $group_191
+ assign \rdpick_FAST_fast2_i 2'00
+ assign \rdpick_FAST_fast2_i [0] $450
+ assign \rdpick_FAST_fast2_i [1] $454
sync init
end
- process $group_176
- assign \src2_i$72 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \src2_i$72 \fast_src4__data_o
+ process $group_192
+ assign \src2_i$81 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \src2_i$81 \fast_src4__data_o
sync init
end
- process $group_177
- assign \fus_src4_i$155 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \fus_src4_i$155 \fast_src4__data_o
+ process $group_193
+ assign \fus_src4_i$176 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fus_src4_i$176 \fast_src4__data_o
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:151"
wire width 1 \rdflag_FAST_cia
wire width 1 $verilog_initial_trigger
- process $group_178
+ process $group_194
assign \rdflag_FAST_cia 1'0
assign \rdflag_FAST_cia 1'1
assign $verilog_initial_trigger $verilog_initial_trigger
sync init
update $verilog_initial_trigger 1'0
end
- process $group_179
+ process $group_195
assign \fast_src1__ren 8'00000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
switch { \rdpick_FAST_cia_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
case 1'1
assign \fast_src1__ren 8'00000001
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $389
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $390
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $456
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $457
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$68 [3]
+ connect \A \rd__rel$77 [3]
connect \B \fu_enable [2]
- connect \Y $389
+ connect \Y $456
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $391
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $392
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $458
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $459
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $389
+ connect \A $456
connect \B \rdflag_FAST_cia
- connect \Y $391
+ connect \Y $458
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $393
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $394
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $460
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $461
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$51 [4]
+ connect \A \rd__rel$57 [4]
connect \B \fu_enable [3]
- connect \Y $393
+ connect \Y $460
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $395
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $396
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $462
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $463
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $393
+ connect \A $460
connect \B \rdflag_FAST_cia
- connect \Y $395
+ connect \Y $462
end
- process $group_180
+ process $group_196
assign \rdpick_FAST_cia_i 2'00
- assign \rdpick_FAST_cia_i [0] $391
- assign \rdpick_FAST_cia_i [1] $395
+ assign \rdpick_FAST_cia_i [0] $458
+ assign \rdpick_FAST_cia_i [1] $462
sync init
end
- process $group_181
- assign \fus_src4_i$156 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \fus_src4_i$156 \fast_src1__data_o
+ process $group_197
+ assign \fus_src4_i$177 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fus_src4_i$177 \fast_src1__data_o
sync init
end
- process $group_182
- assign \fus_src5_i$157 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \fus_src5_i$157 \fast_src1__data_o
+ process $group_198
+ assign \fus_src5_i$178 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fus_src5_i$178 \fast_src1__data_o
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:152"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:151"
wire width 1 \rdflag_FAST_msr
- process $group_183
+ process $group_199
assign \rdflag_FAST_msr 1'0
assign \rdflag_FAST_msr 1'1
assign $verilog_initial_trigger $verilog_initial_trigger
sync init
end
- process $group_184
+ process $group_200
assign \fast_src2__ren 8'00000000
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
switch { \rdpick_FAST_msr_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:164"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
case 1'1
assign \fast_src2__ren 8'00000010
end
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $397
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $398
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $464
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $465
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \rd__rel$51 [5]
+ connect \A \rd__rel$57 [5]
connect \B \fu_enable [3]
- connect \Y $397
+ connect \Y $464
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- wire width 1 $399
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:174"
- cell $and $400
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $466
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $467
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A $397
+ connect \A $464
connect \B \rdflag_FAST_msr
- connect \Y $399
+ connect \Y $466
end
- process $group_185
+ process $group_201
assign \rdpick_FAST_msr_i 1'0
- assign \rdpick_FAST_msr_i $399
+ assign \rdpick_FAST_msr_i $466
sync init
end
- process $group_186
- assign \fus_src6_i$158 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \fus_src6_i$158 \fast_src2__data_o
+ process $group_202
+ assign \fus_src6_i$179 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fus_src6_i$179 \fast_src2__data_o
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:108"
- wire width 32 $401
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:108"
- cell $sshl $402
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:151"
+ wire width 1 \rdflag_SPR_spr1
+ process $group_203
+ assign \rdflag_SPR_spr1 1'0
+ assign \rdflag_SPR_spr1 \spr1_ok
+ sync init
+ end
+ process $group_204
+ assign \spr_src__ren 1'0
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
+ switch { \rdpick_SPR_spr1_en_o }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:163"
+ case 1'1
+ assign \spr_src__ren \spr1 [0]
+ end
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $468
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $469
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \rd__rel$63 [1]
+ connect \B \fu_enable [5]
+ connect \Y $468
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ wire width 1 $470
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:173"
+ cell $and $471
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A $468
+ connect \B \rdflag_SPR_spr1
+ connect \Y $470
+ end
+ process $group_205
+ assign \rdpick_SPR_spr1_i 1'0
+ assign \rdpick_SPR_spr1_i $470
+ sync init
+ end
+ process $group_206
+ assign \src2_i$82 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \src2_i$82 \spr_src__data_o
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:111"
+ wire width 32 $472
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:111"
+ cell $sshl $473
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 32
connect \A 1'1
connect \B \rego
- connect \Y $401
+ connect \Y $472
end
- process $group_187
+ process $group_207
assign \int_wen$next \int_wen
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
switch { \wrpick_INT_o_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
case 1'1
- assign \int_wen$next $401
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:226"
+ assign \int_wen$next $472
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:225"
case
assign \int_wen$next 32'00000000000000000000000000000000
end
sync posedge \clk
update \int_wen \int_wen$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_alu0_o_0
- process $group_188
+ process $group_208
assign \wrflag_alu0_o_0 1'0
assign \wrflag_alu0_o_0 \fus_o_ok
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $403
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $404
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $474
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $475
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wr__rel [0]
connect \B \fu_enable [0]
- connect \Y $403
+ connect \Y $474
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $405
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $406
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $476
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $477
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$73 [0]
+ connect \A \wr__rel$83 [0]
connect \B \fu_enable [1]
- connect \Y $405
+ connect \Y $476
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $407
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $408
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $478
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $479
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$75 [0]
+ connect \A \wr__rel$85 [0]
connect \B \fu_enable [3]
- connect \Y $407
+ connect \Y $478
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $409
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $410
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $480
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $481
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$77 [0]
+ connect \A \wr__rel$87 [0]
connect \B \fu_enable [4]
- connect \Y $409
+ connect \Y $480
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $411
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $412
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $482
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $483
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$79 [0]
+ connect \A \wr__rel$89 [0]
connect \B \fu_enable [5]
- connect \Y $411
+ connect \Y $482
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $413
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $414
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $484
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $485
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$81 [0]
+ connect \A \wr__rel$91 [0]
connect \B \fu_enable [6]
- connect \Y $413
+ connect \Y $484
end
- process $group_189
- assign \wrpick_INT_o_i 6'000000
- assign \wrpick_INT_o_i [0] $403
- assign \wrpick_INT_o_i [1] $405
- assign \wrpick_INT_o_i [2] $407
- assign \wrpick_INT_o_i [3] $409
- assign \wrpick_INT_o_i [4] $411
- assign \wrpick_INT_o_i [5] $413
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $486
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $487
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \wr__rel$93 [0]
+ connect \B \fu_enable [7]
+ connect \Y $486
+ end
+ process $group_209
+ assign \wrpick_INT_o_i 7'0000000
+ assign \wrpick_INT_o_i [0] $474
+ assign \wrpick_INT_o_i [1] $476
+ assign \wrpick_INT_o_i [2] $478
+ assign \wrpick_INT_o_i [3] $480
+ assign \wrpick_INT_o_i [4] $482
+ assign \wrpick_INT_o_i [5] $484
+ assign \wrpick_INT_o_i [6] $486
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $415
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $416
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $488
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $489
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wrpick_INT_o_o [0]
connect \B \wrpick_INT_o_en_o
- connect \Y $415
+ connect \Y $488
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $417
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $418
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $490
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $491
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wrpick_CR_cr_a_o [0]
connect \B \wrpick_CR_cr_a_en_o
- connect \Y $417
+ connect \Y $490
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $419
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $420
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $492
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $493
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wrpick_XER_xer_ca_o [0]
connect \B \wrpick_XER_xer_ca_en_o
- connect \Y $419
+ connect \Y $492
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $421
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $422
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $494
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $495
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wrpick_XER_xer_ov_o
+ connect \A \wrpick_XER_xer_ov_o [0]
connect \B \wrpick_XER_xer_ov_en_o
- connect \Y $421
+ connect \Y $494
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $423
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $424
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $496
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $497
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wrpick_XER_xer_so_o
+ connect \A \wrpick_XER_xer_so_o [0]
connect \B \wrpick_XER_xer_so_en_o
- connect \Y $423
+ connect \Y $496
end
- process $group_190
+ process $group_210
assign \wr__go$next \wr__go
- assign \wr__go$next [0] $415
- assign \wr__go$next [1] $417
- assign \wr__go$next [2] $419
- assign \wr__go$next [3] $421
- assign \wr__go$next [4] $423
+ assign \wr__go$next [0] $488
+ assign \wr__go$next [1] $490
+ assign \wr__go$next [2] $492
+ assign \wr__go$next [3] $494
+ assign \wr__go$next [4] $496
sync init
update \wr__go 5'00000
sync posedge \clk
update \wr__go \wr__go$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_cr0_o_0
- process $group_191
+ process $group_211
assign \wrflag_cr0_o_0 1'0
- assign \wrflag_cr0_o_0 \fus_o_ok$159
+ assign \wrflag_cr0_o_0 \fus_o_ok$180
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $425
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $426
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $498
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $499
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wrpick_INT_o_o [1]
connect \B \wrpick_INT_o_en_o
- connect \Y $425
+ connect \Y $498
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $427
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $428
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $500
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $501
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wrpick_CR_full_cr_o
connect \B \wrpick_CR_full_cr_en_o
- connect \Y $427
+ connect \Y $500
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $429
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $430
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $502
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $503
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wrpick_CR_cr_a_o [1]
connect \B \wrpick_CR_cr_a_en_o
- connect \Y $429
+ connect \Y $502
end
- process $group_192
- assign \wr__go$74$next \wr__go$74
- assign \wr__go$74$next [0] $425
- assign \wr__go$74$next [1] $427
- assign \wr__go$74$next [2] $429
+ process $group_212
+ assign \wr__go$84$next \wr__go$84
+ assign \wr__go$84$next [0] $498
+ assign \wr__go$84$next [1] $500
+ assign \wr__go$84$next [2] $502
sync init
- update \wr__go$74 3'000
+ update \wr__go$84 3'000
sync posedge \clk
- update \wr__go$74 \wr__go$74$next
+ update \wr__go$84 \wr__go$84$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_trap0_o_0
- process $group_193
+ process $group_213
assign \wrflag_trap0_o_0 1'0
- assign \wrflag_trap0_o_0 \fus_o_ok$160
+ assign \wrflag_trap0_o_0 \fus_o_ok$181
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $431
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $432
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $504
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $505
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wrpick_INT_o_o [2]
connect \B \wrpick_INT_o_en_o
- connect \Y $431
+ connect \Y $504
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $433
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $434
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $506
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $507
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wrpick_FAST_spr1_o [1]
- connect \B \wrpick_FAST_spr1_en_o
- connect \Y $433
+ connect \A \wrpick_FAST_fast1_o [1]
+ connect \B \wrpick_FAST_fast1_en_o
+ connect \Y $506
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $435
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $436
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $508
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $509
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wrpick_FAST_spr2_o [1]
- connect \B \wrpick_FAST_spr2_en_o
- connect \Y $435
+ connect \A \wrpick_FAST_fast2_o [1]
+ connect \B \wrpick_FAST_fast2_en_o
+ connect \Y $508
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $437
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $438
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $510
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $511
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wrpick_FAST_nia_o [1]
connect \B \wrpick_FAST_nia_en_o
- connect \Y $437
+ connect \Y $510
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $439
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $440
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $512
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $513
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wrpick_FAST_msr_o
connect \B \wrpick_FAST_msr_en_o
- connect \Y $439
+ connect \Y $512
end
- process $group_194
- assign \wr__go$76$next \wr__go$76
- assign \wr__go$76$next [0] $431
- assign \wr__go$76$next [1] $433
- assign \wr__go$76$next [2] $435
- assign \wr__go$76$next [3] $437
- assign \wr__go$76$next [4] $439
- sync init
- update \wr__go$76 5'00000
+ process $group_214
+ assign \wr__go$86$next \wr__go$86
+ assign \wr__go$86$next [0] $504
+ assign \wr__go$86$next [1] $506
+ assign \wr__go$86$next [2] $508
+ assign \wr__go$86$next [3] $510
+ assign \wr__go$86$next [4] $512
+ sync init
+ update \wr__go$86 5'00000
sync posedge \clk
- update \wr__go$76 \wr__go$76$next
+ update \wr__go$86 \wr__go$86$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_logical0_o_0
- process $group_195
+ process $group_215
assign \wrflag_logical0_o_0 1'0
- assign \wrflag_logical0_o_0 \fus_o_ok$161
+ assign \wrflag_logical0_o_0 \fus_o_ok$182
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $441
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $442
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $514
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $515
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wrpick_INT_o_o [3]
connect \B \wrpick_INT_o_en_o
- connect \Y $441
+ connect \Y $514
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $443
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $444
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $516
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $517
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wrpick_CR_cr_a_o [2]
connect \B \wrpick_CR_cr_a_en_o
- connect \Y $443
+ connect \Y $516
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $445
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $446
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $518
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $519
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wrpick_XER_xer_ca_o [1]
connect \B \wrpick_XER_xer_ca_en_o
- connect \Y $445
+ connect \Y $518
end
- process $group_196
- assign \wr__go$78$next \wr__go$78
- assign \wr__go$78$next [0] $441
- assign \wr__go$78$next [1] $443
- assign \wr__go$78$next [2] $445
+ process $group_216
+ assign \wr__go$88$next \wr__go$88
+ assign \wr__go$88$next [0] $514
+ assign \wr__go$88$next [1] $516
+ assign \wr__go$88$next [2] $518
sync init
- update \wr__go$78 3'000
+ update \wr__go$88 3'000
sync posedge \clk
- update \wr__go$78 \wr__go$78$next
+ update \wr__go$88 \wr__go$88$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
+ wire width 1 \wrflag_spr0_o_0
+ process $group_217
+ assign \wrflag_spr0_o_0 1'0
+ assign \wrflag_spr0_o_0 \fus_o_ok$183
+ sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $520
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $521
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \wrpick_INT_o_o [4]
+ connect \B \wrpick_INT_o_en_o
+ connect \Y $520
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $522
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $523
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \wrpick_XER_xer_ca_o [2]
+ connect \B \wrpick_XER_xer_ca_en_o
+ connect \Y $522
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $524
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $525
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \wrpick_XER_xer_ov_o [1]
+ connect \B \wrpick_XER_xer_ov_en_o
+ connect \Y $524
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $526
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $527
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \wrpick_XER_xer_so_o [1]
+ connect \B \wrpick_XER_xer_so_en_o
+ connect \Y $526
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $528
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $529
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \wrpick_FAST_fast1_o [2]
+ connect \B \wrpick_FAST_fast1_en_o
+ connect \Y $528
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $530
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $531
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \wrpick_SPR_spr1_o
+ connect \B \wrpick_SPR_spr1_en_o
+ connect \Y $530
+ end
+ process $group_218
+ assign \wr__go$90$next \wr__go$90
+ assign \wr__go$90$next [0] $520
+ assign \wr__go$90$next [5] $522
+ assign \wr__go$90$next [4] $524
+ assign \wr__go$90$next [3] $526
+ assign \wr__go$90$next [2] $528
+ assign \wr__go$90$next [1] $530
+ sync init
+ update \wr__go$90 6'000000
+ sync posedge \clk
+ update \wr__go$90 \wr__go$90$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_shiftrot0_o_0
- process $group_197
+ process $group_219
assign \wrflag_shiftrot0_o_0 1'0
- assign \wrflag_shiftrot0_o_0 \fus_o_ok$162
+ assign \wrflag_shiftrot0_o_0 \fus_o_ok$184
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $447
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $448
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $532
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $533
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wrpick_INT_o_o [4]
+ connect \A \wrpick_INT_o_o [5]
connect \B \wrpick_INT_o_en_o
- connect \Y $447
+ connect \Y $532
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $449
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $450
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $534
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $535
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wrpick_CR_cr_a_o [3]
connect \B \wrpick_CR_cr_a_en_o
- connect \Y $449
+ connect \Y $534
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $451
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $452
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $536
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $537
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wrpick_XER_xer_ca_o [2]
+ connect \A \wrpick_XER_xer_ca_o [3]
connect \B \wrpick_XER_xer_ca_en_o
- connect \Y $451
+ connect \Y $536
end
- process $group_198
- assign \wr__go$80$next \wr__go$80
- assign \wr__go$80$next [0] $447
- assign \wr__go$80$next [1] $449
- assign \wr__go$80$next [2] $451
+ process $group_220
+ assign \wr__go$92$next \wr__go$92
+ assign \wr__go$92$next [0] $532
+ assign \wr__go$92$next [1] $534
+ assign \wr__go$92$next [2] $536
sync init
- update \wr__go$80 3'000
+ update \wr__go$92 3'000
sync posedge \clk
- update \wr__go$80 \wr__go$80$next
+ update \wr__go$92 \wr__go$92$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_ldst0_o_0
- process $group_199
+ process $group_221
assign \wrflag_ldst0_o_0 1'0
assign \wrflag_ldst0_o_0 \o_ok
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $453
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $454
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $538
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $539
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wrpick_INT_o_o [5]
+ connect \A \wrpick_INT_o_o [6]
connect \B \wrpick_INT_o_en_o
- connect \Y $453
+ connect \Y $538
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $455
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $456
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $540
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $541
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wrpick_INT_o1_o
connect \B \wrpick_INT_o1_en_o
- connect \Y $455
+ connect \Y $540
end
- process $group_200
- assign \wr__go$82$next \wr__go$82
- assign \wr__go$82$next [0] $453
- assign \wr__go$82$next [1] $455
+ process $group_222
+ assign \wr__go$94$next \wr__go$94
+ assign \wr__go$94$next [0] $538
+ assign \wr__go$94$next [1] $540
sync init
- update \wr__go$82 2'00
+ update \wr__go$94 2'00
sync posedge \clk
- update \wr__go$82 \wr__go$82$next
+ update \wr__go$94 \wr__go$94$next
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
- wire width 64 $457
+ wire width 64 $542
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
- cell $or $458
+ cell $or $543
parameter \A_SIGNED 0
parameter \A_WIDTH 64
parameter \B_SIGNED 0
parameter \B_WIDTH 64
parameter \Y_WIDTH 64
- connect \A \fus_o$163
- connect \B \fus_o$164
- connect \Y $457
+ connect \A \fus_o$185
+ connect \B \fus_o$186
+ connect \Y $542
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:28"
- wire width 64 $459
+ wire width 64 $544
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:28"
- cell $or $460
+ cell $or $545
parameter \A_SIGNED 0
parameter \A_WIDTH 64
parameter \B_SIGNED 0
parameter \B_WIDTH 64
parameter \Y_WIDTH 64
connect \A \fus_o
- connect \B $457
- connect \Y $459
+ connect \B $542
+ connect \Y $544
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
+ wire width 64 $546
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
+ cell $or $547
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 64
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 64
+ parameter \Y_WIDTH 64
+ connect \A \fus_o$187
+ connect \B \fus_o$188
+ connect \Y $546
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
- wire width 64 $461
+ wire width 64 $548
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
- cell $or $462
+ cell $or $549
parameter \A_SIGNED 0
parameter \A_WIDTH 64
parameter \B_SIGNED 0
parameter \B_WIDTH 64
parameter \Y_WIDTH 64
- connect \A \fus_o$166
+ connect \A \fus_o$189
connect \B \o
- connect \Y $461
+ connect \Y $548
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:28"
- wire width 64 $463
+ wire width 64 $550
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:28"
- cell $or $464
+ cell $or $551
parameter \A_SIGNED 0
parameter \A_WIDTH 64
parameter \B_SIGNED 0
parameter \B_WIDTH 64
parameter \Y_WIDTH 64
- connect \A \fus_o$165
- connect \B $461
- connect \Y $463
+ connect \A $546
+ connect \B $548
+ connect \Y $550
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:28"
- wire width 64 $465
+ wire width 64 $552
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:28"
- cell $or $466
+ cell $or $553
parameter \A_SIGNED 0
parameter \A_WIDTH 64
parameter \B_SIGNED 0
parameter \B_WIDTH 64
parameter \Y_WIDTH 64
- connect \A $459
- connect \B $463
- connect \Y $465
+ connect \A $544
+ connect \B $550
+ connect \Y $552
end
- process $group_201
+ process $group_223
assign \int_data_i$next \int_data_i
- assign \int_data_i$next $465
+ assign \int_data_i$next $552
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
sync posedge \clk
update \int_data_i \int_data_i$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:110"
- wire width 32 $467
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:110"
- cell $sshl $468
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:113"
+ wire width 32 $554
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:113"
+ cell $sshl $555
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 32
connect \A 1'1
connect \B \ea
- connect \Y $467
+ connect \Y $554
end
- process $group_202
- assign \int_wen$183$next \int_wen$183
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ process $group_224
+ assign \int_wen$214$next \int_wen$214
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
switch { \wrpick_INT_o1_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
case 1'1
- assign \int_wen$183$next $467
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:226"
+ assign \int_wen$214$next $554
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:225"
case
- assign \int_wen$183$next 32'00000000000000000000000000000000
+ assign \int_wen$214$next 32'00000000000000000000000000000000
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \int_wen$183$next 32'00000000000000000000000000000000
+ assign \int_wen$214$next 32'00000000000000000000000000000000
end
sync init
- update \int_wen$183 32'00000000000000000000000000000000
+ update \int_wen$214 32'00000000000000000000000000000000
sync posedge \clk
- update \int_wen$183 \int_wen$183$next
+ update \int_wen$214 \int_wen$214$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_ldst0_o1_1
- process $group_203
+ process $group_225
assign \wrflag_ldst0_o1_1 1'0
assign \wrflag_ldst0_o1_1 \ea_ok
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $469
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $470
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $556
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $557
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$81 [1]
- connect \B \fu_enable [6]
- connect \Y $469
+ connect \A \wr__rel$93 [1]
+ connect \B \fu_enable [7]
+ connect \Y $556
end
- process $group_204
+ process $group_226
assign \wrpick_INT_o1_i 1'0
- assign \wrpick_INT_o1_i $469
+ assign \wrpick_INT_o1_i $556
sync init
end
- process $group_205
- assign \int_data_i$184$next \int_data_i$184
- assign \int_data_i$184$next \ea$83
+ process $group_227
+ assign \int_data_i$215$next \int_data_i$215
+ assign \int_data_i$215$next \ea$95
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \int_data_i$184$next 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \int_data_i$215$next 64'0000000000000000000000000000000000000000000000000000000000000000
end
sync init
- update \int_data_i$184 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \int_data_i$215 64'0000000000000000000000000000000000000000000000000000000000000000
sync posedge \clk
- update \int_data_i$184 \int_data_i$184$next
+ update \int_data_i$215 \int_data_i$215$next
end
- process $group_206
+ process $group_228
assign \cr_full_wr__wen$next \cr_full_wr__wen
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
switch { \wrpick_CR_full_cr_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
case 1'1
assign \cr_full_wr__wen$next 8'11111111
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:226"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:225"
case
assign \cr_full_wr__wen$next 8'00000000
end
sync posedge \clk
update \cr_full_wr__wen \cr_full_wr__wen$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_cr0_full_cr_1
- process $group_207
+ process $group_229
assign \wrflag_cr0_full_cr_1 1'0
assign \wrflag_cr0_full_cr_1 \fus_full_cr_ok
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $471
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $472
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $558
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $559
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$73 [1]
+ connect \A \wr__rel$83 [1]
connect \B \fu_enable [1]
- connect \Y $471
+ connect \Y $558
end
- process $group_208
+ process $group_230
assign \wrpick_CR_full_cr_i 1'0
- assign \wrpick_CR_full_cr_i $471
+ assign \wrpick_CR_full_cr_i $558
sync init
end
- process $group_209
+ process $group_231
assign \cr_full_wr__data_i$next \cr_full_wr__data_i
assign \cr_full_wr__data_i$next \fus_full_cr
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
sync posedge \clk
update \cr_full_wr__data_i \cr_full_wr__data_i$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:118"
- wire width 16 $473
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:118"
- wire width 4 $474
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:118"
- cell $sub $475
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:121"
+ wire width 16 $560
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:121"
+ wire width 4 $561
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:121"
+ cell $sub $562
parameter \A_SIGNED 0
parameter \A_WIDTH 3
parameter \B_SIGNED 0
parameter \Y_WIDTH 4
connect \A 3'111
connect \B \cr_out
- connect \Y $474
+ connect \Y $561
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:118"
- wire width 16 $476
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:118"
- cell $sshl $477
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:121"
+ wire width 16 $563
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:121"
+ cell $sshl $564
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 4
parameter \Y_WIDTH 16
connect \A 1'1
- connect \B $474
- connect \Y $476
+ connect \B $561
+ connect \Y $563
end
- connect $473 $476
- process $group_210
+ connect $560 $563
+ process $group_232
assign \cr_wen$next \cr_wen
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
switch { \wrpick_CR_cr_a_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
case 1'1
- assign \cr_wen$next $473 [7:0]
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:226"
+ assign \cr_wen$next $560 [7:0]
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:225"
case
assign \cr_wen$next 8'00000000
end
sync posedge \clk
update \cr_wen \cr_wen$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_alu0_cr_a_1
- process $group_211
+ process $group_233
assign \wrflag_alu0_cr_a_1 1'0
assign \wrflag_alu0_cr_a_1 \fus_cr_a_ok
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $478
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $479
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $565
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $566
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wr__rel [1]
connect \B \fu_enable [0]
- connect \Y $478
+ connect \Y $565
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $480
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $481
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $567
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $568
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$73 [2]
+ connect \A \wr__rel$83 [2]
connect \B \fu_enable [1]
- connect \Y $480
+ connect \Y $567
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $482
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $483
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $569
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $570
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$77 [1]
+ connect \A \wr__rel$87 [1]
connect \B \fu_enable [4]
- connect \Y $482
+ connect \Y $569
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $484
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $485
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $571
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $572
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$79 [1]
- connect \B \fu_enable [5]
- connect \Y $484
+ connect \A \wr__rel$91 [1]
+ connect \B \fu_enable [6]
+ connect \Y $571
end
- process $group_212
+ process $group_234
assign \wrpick_CR_cr_a_i 4'0000
- assign \wrpick_CR_cr_a_i [0] $478
- assign \wrpick_CR_cr_a_i [1] $480
- assign \wrpick_CR_cr_a_i [2] $482
- assign \wrpick_CR_cr_a_i [3] $484
+ assign \wrpick_CR_cr_a_i [0] $565
+ assign \wrpick_CR_cr_a_i [1] $567
+ assign \wrpick_CR_cr_a_i [2] $569
+ assign \wrpick_CR_cr_a_i [3] $571
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_cr0_cr_a_2
- process $group_213
+ process $group_235
assign \wrflag_cr0_cr_a_2 1'0
- assign \wrflag_cr0_cr_a_2 \fus_cr_a_ok$167
+ assign \wrflag_cr0_cr_a_2 \fus_cr_a_ok$190
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_logical0_cr_a_1
- process $group_214
+ process $group_236
assign \wrflag_logical0_cr_a_1 1'0
- assign \wrflag_logical0_cr_a_1 \fus_cr_a_ok$168
+ assign \wrflag_logical0_cr_a_1 \fus_cr_a_ok$191
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_shiftrot0_cr_a_1
- process $group_215
+ process $group_237
assign \wrflag_shiftrot0_cr_a_1 1'0
- assign \wrflag_shiftrot0_cr_a_1 \fus_cr_a_ok$169
+ assign \wrflag_shiftrot0_cr_a_1 \fus_cr_a_ok$192
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
- wire width 4 $486
+ wire width 4 $573
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
- cell $or $487
+ cell $or $574
parameter \A_SIGNED 0
parameter \A_WIDTH 4
parameter \B_SIGNED 0
parameter \B_WIDTH 4
parameter \Y_WIDTH 4
connect \A \fus_cr_a
- connect \B \fus_cr_a$170
- connect \Y $486
+ connect \B \fus_cr_a$193
+ connect \Y $573
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
- wire width 4 $488
+ wire width 4 $575
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
- cell $or $489
+ cell $or $576
parameter \A_SIGNED 0
parameter \A_WIDTH 4
parameter \B_SIGNED 0
parameter \B_WIDTH 4
parameter \Y_WIDTH 4
- connect \A \fus_cr_a$171
- connect \B \fus_cr_a$172
- connect \Y $488
+ connect \A \fus_cr_a$194
+ connect \B \fus_cr_a$195
+ connect \Y $575
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:28"
- wire width 4 $490
+ wire width 4 $577
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:28"
- cell $or $491
+ cell $or $578
parameter \A_SIGNED 0
parameter \A_WIDTH 4
parameter \B_SIGNED 0
parameter \B_WIDTH 4
parameter \Y_WIDTH 4
- connect \A $486
- connect \B $488
- connect \Y $490
+ connect \A $573
+ connect \B $575
+ connect \Y $577
end
- process $group_216
+ process $group_238
assign \cr_data_i$next \cr_data_i
- assign \cr_data_i$next $490
+ assign \cr_data_i$next $577
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
sync posedge \clk
update \cr_data_i \cr_data_i$next
end
- process $group_217
+ process $group_239
assign \xer_wen$next \xer_wen
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
switch { \wrpick_XER_xer_ca_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
case 1'1
assign \xer_wen$next 3'010
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:226"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:225"
case
assign \xer_wen$next 3'000
end
sync posedge \clk
update \xer_wen \xer_wen$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_alu0_xer_ca_2
- process $group_218
+ process $group_240
assign \wrflag_alu0_xer_ca_2 1'0
assign \wrflag_alu0_xer_ca_2 \fus_xer_ca_ok
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $492
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $493
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $579
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $580
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wr__rel [2]
connect \B \fu_enable [0]
- connect \Y $492
+ connect \Y $579
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $494
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $495
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $581
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $582
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$77 [2]
+ connect \A \wr__rel$87 [2]
connect \B \fu_enable [4]
- connect \Y $494
+ connect \Y $581
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $496
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $497
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $583
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $584
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$79 [2]
+ connect \A \wr__rel$89 [5]
connect \B \fu_enable [5]
- connect \Y $496
+ connect \Y $583
end
- process $group_219
- assign \wrpick_XER_xer_ca_i 3'000
- assign \wrpick_XER_xer_ca_i [0] $492
- assign \wrpick_XER_xer_ca_i [1] $494
- assign \wrpick_XER_xer_ca_i [2] $496
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $585
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $586
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \wr__rel$91 [2]
+ connect \B \fu_enable [6]
+ connect \Y $585
+ end
+ process $group_241
+ assign \wrpick_XER_xer_ca_i 4'0000
+ assign \wrpick_XER_xer_ca_i [0] $579
+ assign \wrpick_XER_xer_ca_i [1] $581
+ assign \wrpick_XER_xer_ca_i [2] $583
+ assign \wrpick_XER_xer_ca_i [3] $585
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_logical0_xer_ca_2
- process $group_220
+ process $group_242
assign \wrflag_logical0_xer_ca_2 1'0
- assign \wrflag_logical0_xer_ca_2 \fus_xer_ca_ok$173
+ assign \wrflag_logical0_xer_ca_2 \fus_xer_ca_ok$196
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
+ wire width 1 \wrflag_spr0_xer_ca_5
+ process $group_243
+ assign \wrflag_spr0_xer_ca_5 1'0
+ assign \wrflag_spr0_xer_ca_5 \fus_xer_ca_ok$197
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_shiftrot0_xer_ca_2
- process $group_221
+ process $group_244
assign \wrflag_shiftrot0_xer_ca_2 1'0
- assign \wrflag_shiftrot0_xer_ca_2 \fus_xer_ca_ok$174
+ assign \wrflag_shiftrot0_xer_ca_2 \fus_xer_ca_ok$198
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
- wire width 2 $498
+ wire width 2 $587
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
- cell $or $499
+ cell $or $588
parameter \A_SIGNED 0
parameter \A_WIDTH 2
parameter \B_SIGNED 0
parameter \B_WIDTH 2
parameter \Y_WIDTH 2
- connect \A \fus_xer_ca$175
- connect \B \fus_xer_ca$176
- connect \Y $498
+ connect \A \fus_xer_ca
+ connect \B \fus_xer_ca$199
+ connect \Y $587
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
+ wire width 2 $589
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
+ cell $or $590
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 2
+ parameter \Y_WIDTH 2
+ connect \A \fus_xer_ca$200
+ connect \B \fus_xer_ca$201
+ connect \Y $589
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:28"
- wire width 2 $500
+ wire width 2 $591
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:28"
- cell $or $501
+ cell $or $592
parameter \A_SIGNED 0
parameter \A_WIDTH 2
parameter \B_SIGNED 0
parameter \B_WIDTH 2
parameter \Y_WIDTH 2
- connect \A \fus_xer_ca
- connect \B $498
- connect \Y $500
+ connect \A $587
+ connect \B $589
+ connect \Y $591
end
- process $group_222
+ process $group_245
assign \xer_data_i$next \xer_data_i
- assign \xer_data_i$next $500
+ assign \xer_data_i$next $591
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
sync posedge \clk
update \xer_data_i \xer_data_i$next
end
- process $group_223
- assign \xer_wen$185$next \xer_wen$185
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ process $group_246
+ assign \xer_wen$216$next \xer_wen$216
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
switch { \wrpick_XER_xer_ov_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
case 1'1
- assign \xer_wen$185$next 3'100
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:226"
+ assign \xer_wen$216$next 3'100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:225"
case
- assign \xer_wen$185$next 3'000
+ assign \xer_wen$216$next 3'000
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \xer_wen$185$next 3'000
+ assign \xer_wen$216$next 3'000
end
sync init
- update \xer_wen$185 3'000
+ update \xer_wen$216 3'000
sync posedge \clk
- update \xer_wen$185 \xer_wen$185$next
+ update \xer_wen$216 \xer_wen$216$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_alu0_xer_ov_3
- process $group_224
+ process $group_247
assign \wrflag_alu0_xer_ov_3 1'0
assign \wrflag_alu0_xer_ov_3 \fus_xer_ov_ok
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $502
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $503
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $593
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $594
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wr__rel [3]
connect \B \fu_enable [0]
- connect \Y $502
+ connect \Y $593
end
- process $group_225
- assign \wrpick_XER_xer_ov_i 1'0
- assign \wrpick_XER_xer_ov_i $502
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $595
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $596
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \wr__rel$89 [4]
+ connect \B \fu_enable [5]
+ connect \Y $595
+ end
+ process $group_248
+ assign \wrpick_XER_xer_ov_i 2'00
+ assign \wrpick_XER_xer_ov_i [0] $593
+ assign \wrpick_XER_xer_ov_i [1] $595
sync init
end
- process $group_226
- assign \xer_data_i$186$next \xer_data_i$186
- assign \xer_data_i$186$next \fus_xer_ov
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
+ wire width 1 \wrflag_spr0_xer_ov_4
+ process $group_249
+ assign \wrflag_spr0_xer_ov_4 1'0
+ assign \wrflag_spr0_xer_ov_4 \fus_xer_ov_ok$202
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
+ wire width 2 $597
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
+ cell $or $598
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 2
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 2
+ parameter \Y_WIDTH 2
+ connect \A \fus_xer_ov
+ connect \B \fus_xer_ov$203
+ connect \Y $597
+ end
+ process $group_250
+ assign \xer_data_i$217$next \xer_data_i$217
+ assign \xer_data_i$217$next $597
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \xer_data_i$186$next 2'00
+ assign \xer_data_i$217$next 2'00
end
sync init
- update \xer_data_i$186 2'00
+ update \xer_data_i$217 2'00
sync posedge \clk
- update \xer_data_i$186 \xer_data_i$186$next
+ update \xer_data_i$217 \xer_data_i$217$next
end
- process $group_227
- assign \xer_wen$187$next \xer_wen$187
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ process $group_251
+ assign \xer_wen$218$next \xer_wen$218
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
switch { \wrpick_XER_xer_so_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
case 1'1
- assign \xer_wen$187$next 3'001
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:226"
+ assign \xer_wen$218$next 3'001
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:225"
case
- assign \xer_wen$187$next 3'000
+ assign \xer_wen$218$next 3'000
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \xer_wen$187$next 3'000
+ assign \xer_wen$218$next 3'000
end
sync init
- update \xer_wen$187 3'000
+ update \xer_wen$218 3'000
sync posedge \clk
- update \xer_wen$187 \xer_wen$187$next
+ update \xer_wen$218 \xer_wen$218$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_alu0_xer_so_4
- process $group_228
+ process $group_252
assign \wrflag_alu0_xer_so_4 1'0
assign \wrflag_alu0_xer_so_4 \fus_xer_so_ok
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $504
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $505
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $599
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $600
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wr__rel [4]
connect \B \fu_enable [0]
- connect \Y $504
+ connect \Y $599
end
- process $group_229
- assign \wrpick_XER_xer_so_i 1'0
- assign \wrpick_XER_xer_so_i $504
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $601
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $602
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \wr__rel$89 [3]
+ connect \B \fu_enable [5]
+ connect \Y $601
+ end
+ process $group_253
+ assign \wrpick_XER_xer_so_i 2'00
+ assign \wrpick_XER_xer_so_i [0] $599
+ assign \wrpick_XER_xer_so_i [1] $601
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 2 $506
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- cell $pos $507
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
+ wire width 1 \wrflag_spr0_xer_so_3
+ process $group_254
+ assign \wrflag_spr0_xer_so_3 1'0
+ assign \wrflag_spr0_xer_so_3 \fus_xer_so_ok$204
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
+ wire width 2 $603
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
+ wire width 1 $604
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
+ cell $or $605
parameter \A_SIGNED 0
parameter \A_WIDTH 1
- parameter \Y_WIDTH 2
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
connect \A \fus_xer_so
- connect \Y $506
+ connect \B \fus_xer_so$205
+ connect \Y $604
end
- process $group_230
- assign \xer_data_i$188$next \xer_data_i$188
- assign \xer_data_i$188$next $506
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
+ cell $pos $606
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \Y_WIDTH 2
+ connect \A $604
+ connect \Y $603
+ end
+ process $group_255
+ assign \xer_data_i$219$next \xer_data_i$219
+ assign \xer_data_i$219$next $603
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \xer_data_i$188$next 2'00
+ assign \xer_data_i$219$next 2'00
end
sync init
- update \xer_data_i$188 2'00
+ update \xer_data_i$219 2'00
sync posedge \clk
- update \xer_data_i$188 \xer_data_i$188$next
+ update \xer_data_i$219 \xer_data_i$219$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:147"
- wire width 8 $508
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:147"
- cell $sshl $509
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:150"
+ wire width 8 $607
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:150"
+ cell $sshl $608
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 8
connect \A 1'1
connect \B \fasto1
- connect \Y $508
+ connect \Y $607
end
- process $group_231
+ process $group_256
assign \fast_wen$next \fast_wen
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
- switch { \wrpick_FAST_spr1_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
+ switch { \wrpick_FAST_fast1_en_o }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
case 1'1
- assign \fast_wen$next $508
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:226"
+ assign \fast_wen$next $607
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:225"
case
assign \fast_wen$next 8'00000000
end
sync posedge \clk
update \fast_wen \fast_wen$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
- wire width 1 \wrflag_branch0_spr1_0
- process $group_232
- assign \wrflag_branch0_spr1_0 1'0
- assign \wrflag_branch0_spr1_0 \fus_spr1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
+ wire width 1 \wrflag_branch0_fast1_0
+ process $group_257
+ assign \wrflag_branch0_fast1_0 1'0
+ assign \wrflag_branch0_fast1_0 \fus_fast1_ok
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $510
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $511
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $609
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $610
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$84 [0]
+ connect \A \wr__rel$96 [0]
connect \B \fu_enable [2]
- connect \Y $510
+ connect \Y $609
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $512
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $513
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $611
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $612
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$75 [1]
+ connect \A \wr__rel$85 [1]
connect \B \fu_enable [3]
- connect \Y $512
+ connect \Y $611
end
- process $group_233
- assign \wrpick_FAST_spr1_i 2'00
- assign \wrpick_FAST_spr1_i [0] $510
- assign \wrpick_FAST_spr1_i [1] $512
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $613
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $614
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \wr__rel$89 [2]
+ connect \B \fu_enable [5]
+ connect \Y $613
+ end
+ process $group_258
+ assign \wrpick_FAST_fast1_i 3'000
+ assign \wrpick_FAST_fast1_i [0] $609
+ assign \wrpick_FAST_fast1_i [1] $611
+ assign \wrpick_FAST_fast1_i [2] $613
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $514
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $515
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $615
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $616
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wrpick_FAST_spr1_o [0]
- connect \B \wrpick_FAST_spr1_en_o
- connect \Y $514
+ connect \A \wrpick_FAST_fast1_o [0]
+ connect \B \wrpick_FAST_fast1_en_o
+ connect \Y $615
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $516
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $517
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $617
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $618
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wrpick_FAST_spr2_o [0]
- connect \B \wrpick_FAST_spr2_en_o
- connect \Y $516
+ connect \A \wrpick_FAST_fast2_o [0]
+ connect \B \wrpick_FAST_fast2_en_o
+ connect \Y $617
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- wire width 1 $518
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:243"
- cell $and $519
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ wire width 1 $619
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:242"
+ cell $and $620
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 1
connect \A \wrpick_FAST_nia_o [0]
connect \B \wrpick_FAST_nia_en_o
- connect \Y $518
+ connect \Y $619
end
- process $group_234
- assign \wr__go$85$next \wr__go$85
- assign \wr__go$85$next [0] $514
- assign \wr__go$85$next [1] $516
- assign \wr__go$85$next [2] $518
+ process $group_259
+ assign \wr__go$97$next \wr__go$97
+ assign \wr__go$97$next [0] $615
+ assign \wr__go$97$next [1] $617
+ assign \wr__go$97$next [2] $619
sync init
- update \wr__go$85 3'000
+ update \wr__go$97 3'000
sync posedge \clk
- update \wr__go$85 \wr__go$85$next
+ update \wr__go$97 \wr__go$97$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
- wire width 1 \wrflag_trap0_spr1_1
- process $group_235
- assign \wrflag_trap0_spr1_1 1'0
- assign \wrflag_trap0_spr1_1 \fus_spr1_ok$177
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
+ wire width 1 \wrflag_trap0_fast1_1
+ process $group_260
+ assign \wrflag_trap0_fast1_1 1'0
+ assign \wrflag_trap0_fast1_1 \fus_fast1_ok$206
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
+ wire width 1 \wrflag_spr0_fast1_2
+ process $group_261
+ assign \wrflag_spr0_fast1_2 1'0
+ assign \wrflag_spr0_fast1_2 \fus_fast1_ok$207
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
- wire width 64 $520
+ wire width 64 $621
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
- cell $or $521
+ cell $or $622
parameter \A_SIGNED 0
parameter \A_WIDTH 64
parameter \B_SIGNED 0
parameter \B_WIDTH 64
parameter \Y_WIDTH 64
- connect \A \fus_spr1
- connect \B \fus_spr1$178
- connect \Y $520
+ connect \A \fus_fast1$208
+ connect \B \fus_fast1$209
+ connect \Y $621
end
- process $group_236
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:28"
+ wire width 64 $623
+ attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:28"
+ cell $or $624
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 64
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 64
+ parameter \Y_WIDTH 64
+ connect \A \fus_fast1
+ connect \B $621
+ connect \Y $623
+ end
+ process $group_262
assign \fast_data_i$next \fast_data_i
- assign \fast_data_i$next $520
+ assign \fast_data_i$next $623
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
sync posedge \clk
update \fast_data_i \fast_data_i$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:149"
- wire width 8 $522
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:149"
- cell $sshl $523
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:152"
+ wire width 8 $625
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_regspec_map.py:152"
+ cell $sshl $626
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 8
connect \A 1'1
connect \B \fasto2
- connect \Y $522
+ connect \Y $625
end
- process $group_237
- assign \fast_wen$189$next \fast_wen$189
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
- switch { \wrpick_FAST_spr2_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ process $group_263
+ assign \fast_wen$220$next \fast_wen$220
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
+ switch { \wrpick_FAST_fast2_en_o }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
case 1'1
- assign \fast_wen$189$next $522
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:226"
+ assign \fast_wen$220$next $625
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:225"
case
- assign \fast_wen$189$next 8'00000000
+ assign \fast_wen$220$next 8'00000000
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \fast_wen$189$next 8'00000000
+ assign \fast_wen$220$next 8'00000000
end
sync init
- update \fast_wen$189 8'00000000
+ update \fast_wen$220 8'00000000
sync posedge \clk
- update \fast_wen$189 \fast_wen$189$next
+ update \fast_wen$220 \fast_wen$220$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
- wire width 1 \wrflag_branch0_spr2_1
- process $group_238
- assign \wrflag_branch0_spr2_1 1'0
- assign \wrflag_branch0_spr2_1 \fus_spr2_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
+ wire width 1 \wrflag_branch0_fast2_1
+ process $group_264
+ assign \wrflag_branch0_fast2_1 1'0
+ assign \wrflag_branch0_fast2_1 \fus_fast2_ok
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $524
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $525
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $627
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $628
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$84 [1]
+ connect \A \wr__rel$96 [1]
connect \B \fu_enable [2]
- connect \Y $524
+ connect \Y $627
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $526
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $527
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $629
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $630
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$75 [2]
+ connect \A \wr__rel$85 [2]
connect \B \fu_enable [3]
- connect \Y $526
+ connect \Y $629
end
- process $group_239
- assign \wrpick_FAST_spr2_i 2'00
- assign \wrpick_FAST_spr2_i [0] $524
- assign \wrpick_FAST_spr2_i [1] $526
+ process $group_265
+ assign \wrpick_FAST_fast2_i 2'00
+ assign \wrpick_FAST_fast2_i [0] $627
+ assign \wrpick_FAST_fast2_i [1] $629
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
- wire width 1 \wrflag_trap0_spr2_2
- process $group_240
- assign \wrflag_trap0_spr2_2 1'0
- assign \wrflag_trap0_spr2_2 \fus_spr2_ok$179
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
+ wire width 1 \wrflag_trap0_fast2_2
+ process $group_266
+ assign \wrflag_trap0_fast2_2 1'0
+ assign \wrflag_trap0_fast2_2 \fus_fast2_ok$210
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
- wire width 64 $528
+ wire width 64 $631
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
- cell $or $529
+ cell $or $632
parameter \A_SIGNED 0
parameter \A_WIDTH 64
parameter \B_SIGNED 0
parameter \B_WIDTH 64
parameter \Y_WIDTH 64
- connect \A \fus_spr2
- connect \B \fus_spr2$180
- connect \Y $528
+ connect \A \fus_fast2
+ connect \B \fus_fast2$211
+ connect \Y $631
end
- process $group_241
- assign \fast_data_i$190$next \fast_data_i$190
- assign \fast_data_i$190$next $528
+ process $group_267
+ assign \fast_data_i$221$next \fast_data_i$221
+ assign \fast_data_i$221$next $631
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \fast_data_i$190$next 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast_data_i$221$next 64'0000000000000000000000000000000000000000000000000000000000000000
end
sync init
- update \fast_data_i$190 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \fast_data_i$221 64'0000000000000000000000000000000000000000000000000000000000000000
sync posedge \clk
- update \fast_data_i$190 \fast_data_i$190$next
+ update \fast_data_i$221 \fast_data_i$221$next
end
- process $group_242
+ process $group_268
assign \fast_nia_wen$next \fast_nia_wen
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
switch { \wrpick_FAST_nia_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
case 1'1
assign \fast_nia_wen$next 8'00000001
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:226"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:225"
case
assign \fast_nia_wen$next 8'00000000
end
sync posedge \clk
update \fast_nia_wen \fast_nia_wen$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_branch0_nia_2
- process $group_243
+ process $group_269
assign \wrflag_branch0_nia_2 1'0
assign \wrflag_branch0_nia_2 \fus_nia_ok
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $530
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $531
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $633
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $634
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$84 [2]
+ connect \A \wr__rel$96 [2]
connect \B \fu_enable [2]
- connect \Y $530
+ connect \Y $633
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $532
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $533
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $635
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $636
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$75 [3]
+ connect \A \wr__rel$85 [3]
connect \B \fu_enable [3]
- connect \Y $532
+ connect \Y $635
end
- process $group_244
+ process $group_270
assign \wrpick_FAST_nia_i 2'00
- assign \wrpick_FAST_nia_i [0] $530
- assign \wrpick_FAST_nia_i [1] $532
+ assign \wrpick_FAST_nia_i [0] $633
+ assign \wrpick_FAST_nia_i [1] $635
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_trap0_nia_3
- process $group_245
+ process $group_271
assign \wrflag_trap0_nia_3 1'0
- assign \wrflag_trap0_nia_3 \fus_nia_ok$181
+ assign \wrflag_trap0_nia_3 \fus_nia_ok$212
sync init
end
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
- wire width 64 $534
+ wire width 64 $637
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/util.py:25"
- cell $or $535
+ cell $or $638
parameter \A_SIGNED 0
parameter \A_WIDTH 64
parameter \B_SIGNED 0
parameter \B_WIDTH 64
parameter \Y_WIDTH 64
connect \A \fus_nia
- connect \B \fus_nia$182
- connect \Y $534
+ connect \B \fus_nia$213
+ connect \Y $637
end
- process $group_246
- assign \fast_data_i$191$next \fast_data_i$191
- assign \fast_data_i$191$next $534
+ process $group_272
+ assign \fast_data_i$222$next \fast_data_i$222
+ assign \fast_data_i$222$next $637
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \fast_data_i$191$next 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast_data_i$222$next 64'0000000000000000000000000000000000000000000000000000000000000000
end
sync init
- update \fast_data_i$191 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \fast_data_i$222 64'0000000000000000000000000000000000000000000000000000000000000000
sync posedge \clk
- update \fast_data_i$191 \fast_data_i$191$next
+ update \fast_data_i$222 \fast_data_i$222$next
end
- process $group_247
- assign \fast_wen$192$next \fast_wen$192
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ process $group_273
+ assign \fast_wen$223$next \fast_wen$223
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
switch { \wrpick_FAST_msr_en_o }
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:224"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
case 1'1
- assign \fast_wen$192$next 8'00000010
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:226"
+ assign \fast_wen$223$next 8'00000010
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:225"
case
- assign \fast_wen$192$next 8'00000000
+ assign \fast_wen$223$next 8'00000000
end
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \fast_wen$192$next 8'00000000
+ assign \fast_wen$223$next 8'00000000
end
sync init
- update \fast_wen$192 8'00000000
+ update \fast_wen$223 8'00000000
sync posedge \clk
- update \fast_wen$192 \fast_wen$192$next
+ update \fast_wen$223 \fast_wen$223$next
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:236"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
wire width 1 \wrflag_trap0_msr_4
- process $group_248
+ process $group_274
assign \wrflag_trap0_msr_4 1'0
assign \wrflag_trap0_msr_4 \fus_msr_ok
sync init
end
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- wire width 1 $536
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:241"
- cell $and $537
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $639
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $640
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \B_WIDTH 1
parameter \Y_WIDTH 1
- connect \A \wr__rel$75 [4]
+ connect \A \wr__rel$85 [4]
connect \B \fu_enable [3]
- connect \Y $536
+ connect \Y $639
end
- process $group_249
+ process $group_275
assign \wrpick_FAST_msr_i 1'0
- assign \wrpick_FAST_msr_i $536
+ assign \wrpick_FAST_msr_i $639
sync init
end
- process $group_250
- assign \fast_data_i$193$next \fast_data_i$193
- assign \fast_data_i$193$next \fus_msr
+ process $group_276
+ assign \fast_data_i$224$next \fast_data_i$224
+ assign \fast_data_i$224$next \fus_msr
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
switch \rst
case 1'1
- assign \fast_data_i$193$next 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \fast_data_i$224$next 64'0000000000000000000000000000000000000000000000000000000000000000
end
sync init
- update \fast_data_i$193 64'0000000000000000000000000000000000000000000000000000000000000000
+ update \fast_data_i$224 64'0000000000000000000000000000000000000000000000000000000000000000
sync posedge \clk
- update \fast_data_i$193 \fast_data_i$193$next
+ update \fast_data_i$224 \fast_data_i$224$next
+ end
+ process $group_277
+ assign \spr_dest__wen$next \spr_dest__wen
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
+ switch { \wrpick_SPR_spr1_en_o }
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:223"
+ case 1'1
+ assign \spr_dest__wen$next \spro [0]
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:225"
+ case
+ assign \spr_dest__wen$next 1'0
+ end
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \spr_dest__wen$next 1'0
+ end
+ sync init
+ update \spr_dest__wen 1'0
+ sync posedge \clk
+ update \spr_dest__wen \spr_dest__wen$next
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:235"
+ wire width 1 \wrflag_spr0_spr1_1
+ process $group_278
+ assign \wrflag_spr0_spr1_1 1'0
+ assign \wrflag_spr0_spr1_1 \fus_spr1_ok
+ sync init
+ end
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ wire width 1 $641
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:240"
+ cell $and $642
+ parameter \A_SIGNED 0
+ parameter \A_WIDTH 1
+ parameter \B_SIGNED 0
+ parameter \B_WIDTH 1
+ parameter \Y_WIDTH 1
+ connect \A \wr__rel$89 [1]
+ connect \B \fu_enable [5]
+ connect \Y $641
+ end
+ process $group_279
+ assign \wrpick_SPR_spr1_i 1'0
+ assign \wrpick_SPR_spr1_i $641
+ sync init
+ end
+ process $group_280
+ assign \spr_dest__data_i$next \spr_dest__data_i
+ assign \spr_dest__data_i$next \fus_spr1
+ attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/xfrm.py:519"
+ switch \rst
+ case 1'1
+ assign \spr_dest__data_i$next 64'0000000000000000000000000000000000000000000000000000000000000000
+ end
+ sync init
+ update \spr_dest__data_i 64'0000000000000000000000000000000000000000000000000000000000000000
+ sync posedge \clk
+ update \spr_dest__data_i \spr_dest__data_i$next
end
end
attribute \generator "nMigen"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 32 output 35 \oper_i__insn
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
- wire width 10 output 36 \oper_i__fn_unit
+ wire width 11 output 36 \oper_i__fn_unit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
wire width 1 output 37 \oper_i__read_cr_whole
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/cr/cr_input_record.py:21"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 7 output 50 \oper_i__insn_type$18
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
- wire width 10 output 51 \oper_i__fn_unit$19
+ wire width 11 output 51 \oper_i__fn_unit$19
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
wire width 1 output 52 \oper_i__lk$20
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/branch/br_input_record.py:26"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 32 output 67 \oper_i__insn$35
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 10 output 68 \oper_i__fn_unit$36
+ wire width 11 output 68 \oper_i__fn_unit$36
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 1 output 69 \oper_i__is_32bit$37
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
- wire width 4 output 70 \oper_i__traptype
+ wire width 5 output 70 \oper_i__traptype
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/trap/trap_input_record.py:22"
wire width 13 output 71 \oper_i__trapaddr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 7 output 83 \oper_i__insn_type$49
attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
- wire width 10 output 84 \oper_i__fn_unit$50
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
+ wire width 11 output 84 \oper_i__fn_unit$50
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
wire width 1 output 85 \oper_i__lk$51
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/logical/logical_input_record.py:32"
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
wire width 64 output 98 \dest1_o$64
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 4 output 99 \rd__go$65
+ wire width 6 output 99 \rd__go$65
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 100 \wr__go$66
+ wire width 6 output 100 \wr__go$66
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
wire width 1 output 101 \issue_i$67
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
attribute \enum_value_1000111 "OP_MFMSR"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
wire width 7 output 104 \oper_i__insn_type$70
- attribute \enum_base_type "CryIn"
- attribute \enum_value_00 "ZERO"
- attribute \enum_value_01 "ONE"
- attribute \enum_value_10 "CA"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 2 output 105 \oper_i__input_carry$71
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 output 106 \oper_i__output_carry$72
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 output 107 \oper_i__input_cr$73
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 output 108 \oper_i__output_cr$74
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 output 109 \oper_i__is_32bit$75
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
- wire width 1 output 110 \oper_i__is_signed$76
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 32 output 105 \oper_i__insn$71
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 11 output 106 \oper_i__fn_unit$72
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/spr/spr_input_record.py:20"
+ wire width 1 output 107 \oper_i__is_32bit$73
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 111 \src1_i$77
+ wire width 64 output 108 \src1_i$74
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 112 \src2_i$78
+ wire width 64 output 109 \src2_i$75
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
- wire width 1 output 113 \busy_o$79
+ wire width 1 output 110 \busy_o$76
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 4 output 114 \rd__rel$80
+ wire width 6 output 111 \rd__rel$77
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 115 \wr__rel$81
+ wire width 6 output 112 \wr__rel$78
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
- wire width 64 output 116 \dest1_o$82
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 117 \rd__go$83
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 1 output 118 \ad__go
+ wire width 64 output 113 \dest1_o$79
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 2 output 119 \wr__go$84
+ wire width 4 output 114 \rd__go$80
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 1 output 120 \st__go
+ wire width 3 output 115 \wr__go$81
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
- wire width 1 output 121 \issue_i$85
+ wire width 1 output 116 \issue_i$82
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
- wire width 1 input 122 \shadown_i$86
+ wire width 1 input 117 \shadown_i$83
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
- wire width 1 input 123 \go_die_i$87
+ wire width 1 input 118 \go_die_i$84
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1000111 "OP_MFMSR"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 7 output 124 \oper_i__insn_type$88
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 output 125 \oper_i__is_32bit$89
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 output 126 \oper_i__zero_a
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 output 127 \oper_i__is_signed$90
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 4 output 128 \oper_i__data_len$91
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 output 129 \oper_i__byte_reverse$92
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 output 130 \oper_i__sign_extend$93
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
- wire width 1 output 131 \oper_i__update
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 132 \src1_i$94
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
+ wire width 7 output 119 \oper_i__insn_type$85
+ attribute \enum_base_type "CryIn"
+ attribute \enum_value_00 "ZERO"
+ attribute \enum_value_01 "ONE"
+ attribute \enum_value_10 "CA"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
+ wire width 2 output 120 \oper_i__input_carry$86
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
+ wire width 1 output 121 \oper_i__output_carry$87
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
+ wire width 1 output 122 \oper_i__input_cr$88
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
+ wire width 1 output 123 \oper_i__output_cr$89
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
+ wire width 1 output 124 \oper_i__is_32bit$90
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/shift_rot/sr_input_record.py:29"
+ wire width 1 output 125 \oper_i__is_signed$91
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 133 \src2_i$95
+ wire width 64 output 126 \src1_i$92
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
- wire width 64 output 134 \src3_i
+ wire width 64 output 127 \src2_i$93
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
- wire width 1 output 135 \busy_o$96
+ wire width 1 output 128 \busy_o$94
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 3 output 136 \rd__rel$97
+ wire width 4 output 129 \rd__rel$95
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 1 output 137 \ad__rel
+ wire width 3 output 130 \wr__rel$96
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:81"
+ wire width 64 output 131 \dest1_o$97
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 1 output 138 \st__rel
+ wire width 3 output 132 \rd__go$98
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
- wire width 2 output 139 \wr__rel$98
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 140 \o
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 input 141 \o_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 142 \ea
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 input 143 \ea_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compldst_multi.py:112"
- wire width 1 output 144 \load_mem_o
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compldst_multi.py:113"
- wire width 1 output 145 \stwd_mem_o
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:318"
- wire width 32 output 146 \raw_opcode_in
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:319"
- wire width 1 output 147 \bigendian
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
- wire width 32 output 148 \opcode_in
- attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
- wire width 10 output 149 \function_unit
- attribute \enum_base_type "In1Sel"
- attribute \enum_value_000 "NONE"
- attribute \enum_value_001 "RA"
- attribute \enum_value_010 "RA_OR_ZERO"
- attribute \enum_value_011 "SPR"
- attribute \enum_value_100 "RS"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:124"
- wire width 3 output 150 \in1_sel
- attribute \enum_base_type "In2Sel"
- attribute \enum_value_0000 "NONE"
- attribute \enum_value_0001 "RB"
- attribute \enum_value_0010 "CONST_UI"
- attribute \enum_value_0011 "CONST_SI"
- attribute \enum_value_0100 "CONST_UI_HI"
- attribute \enum_value_0101 "CONST_SI_HI"
- attribute \enum_value_0110 "CONST_LI"
- attribute \enum_value_0111 "CONST_BD"
- attribute \enum_value_1000 "CONST_DS"
- attribute \enum_value_1001 "CONST_M1"
- attribute \enum_value_1010 "CONST_SH"
- attribute \enum_value_1011 "CONST_SH32"
- attribute \enum_value_1100 "SPR"
- attribute \enum_value_1101 "RS"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:125"
- wire width 4 output 151 \in2_sel
- attribute \enum_base_type "In3Sel"
- attribute \enum_value_00 "NONE"
- attribute \enum_value_01 "RS"
- attribute \enum_value_10 "RB"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:126"
- wire width 2 output 152 \in3_sel
- attribute \enum_base_type "OutSel"
- attribute \enum_value_00 "NONE"
- attribute \enum_value_01 "RT"
- attribute \enum_value_10 "RA"
- attribute \enum_value_11 "SPR"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:127"
- wire width 2 output 153 \out_sel
- attribute \enum_base_type "CRInSel"
- attribute \enum_value_000 "NONE"
- attribute \enum_value_001 "CR0"
- attribute \enum_value_010 "BI"
- attribute \enum_value_011 "BFA"
- attribute \enum_value_100 "BA_BB"
- attribute \enum_value_101 "BC"
- attribute \enum_value_110 "WHOLE_REG"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:128"
- wire width 3 output 154 \cr_in
- attribute \enum_base_type "CROutSel"
- attribute \enum_value_000 "NONE"
- attribute \enum_value_001 "CR0"
- attribute \enum_value_010 "BF"
- attribute \enum_value_011 "BT"
- attribute \enum_value_100 "WHOLE_REG"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:129"
- wire width 3 output 155 \cr_out
- attribute \enum_base_type "LdstLen"
- attribute \enum_value_0000 "NONE"
- attribute \enum_value_0001 "is1B"
- attribute \enum_value_0010 "is2B"
- attribute \enum_value_0100 "is4B"
- attribute \enum_value_1000 "is8B"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:130"
- wire width 4 output 156 \ldst_len
- attribute \enum_base_type "RC"
- attribute \enum_value_00 "NONE"
- attribute \enum_value_01 "ONE"
- attribute \enum_value_10 "RC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:131"
- wire width 2 output 157 \rc_sel
- attribute \enum_base_type "InternalOp"
- attribute \enum_value_0000000 "OP_ILLEGAL"
- attribute \enum_value_0000001 "OP_NOP"
- attribute \enum_value_0000010 "OP_ADD"
- attribute \enum_value_0000011 "OP_ADDPCIS"
- attribute \enum_value_0000100 "OP_AND"
- attribute \enum_value_0000101 "OP_ATTN"
- attribute \enum_value_0000110 "OP_B"
- attribute \enum_value_0000111 "OP_BC"
- attribute \enum_value_0001000 "OP_BCREG"
- attribute \enum_value_0001001 "OP_BPERM"
- attribute \enum_value_0001010 "OP_CMP"
- attribute \enum_value_0001011 "OP_CMPB"
- attribute \enum_value_0001100 "OP_CMPEQB"
- attribute \enum_value_0001101 "OP_CMPRB"
- attribute \enum_value_0001110 "OP_CNTZ"
- attribute \enum_value_0001111 "OP_CRAND"
- attribute \enum_value_0010000 "OP_CRANDC"
- attribute \enum_value_0010001 "OP_CREQV"
- attribute \enum_value_0010010 "OP_CRNAND"
- attribute \enum_value_0010011 "OP_CRNOR"
- attribute \enum_value_0010100 "OP_CROR"
- attribute \enum_value_0010101 "OP_CRORC"
- attribute \enum_value_0010110 "OP_CRXOR"
- attribute \enum_value_0010111 "OP_DARN"
- attribute \enum_value_0011000 "OP_DCBF"
- attribute \enum_value_0011001 "OP_DCBST"
- attribute \enum_value_0011010 "OP_DCBT"
- attribute \enum_value_0011011 "OP_DCBTST"
- attribute \enum_value_0011100 "OP_DCBZ"
- attribute \enum_value_0011101 "OP_DIV"
- attribute \enum_value_0011110 "OP_DIVE"
- attribute \enum_value_0011111 "OP_EXTS"
- attribute \enum_value_0100000 "OP_EXTSWSLI"
- attribute \enum_value_0100001 "OP_ICBI"
- attribute \enum_value_0100010 "OP_ICBT"
- attribute \enum_value_0100011 "OP_ISEL"
- attribute \enum_value_0100100 "OP_ISYNC"
- attribute \enum_value_0100101 "OP_LOAD"
- attribute \enum_value_0100110 "OP_STORE"
- attribute \enum_value_0100111 "OP_MADDHD"
- attribute \enum_value_0101000 "OP_MADDHDU"
- attribute \enum_value_0101001 "OP_MADDLD"
- attribute \enum_value_0101010 "OP_MCRF"
- attribute \enum_value_0101011 "OP_MCRXR"
- attribute \enum_value_0101100 "OP_MCRXRX"
- attribute \enum_value_0101101 "OP_MFCR"
- attribute \enum_value_0101110 "OP_MFSPR"
- attribute \enum_value_0101111 "OP_MOD"
- attribute \enum_value_0110000 "OP_MTCRF"
- attribute \enum_value_0110001 "OP_MTSPR"
- attribute \enum_value_0110010 "OP_MUL_L64"
- attribute \enum_value_0110011 "OP_MUL_H64"
- attribute \enum_value_0110100 "OP_MUL_H32"
- attribute \enum_value_0110101 "OP_OR"
- attribute \enum_value_0110110 "OP_POPCNT"
- attribute \enum_value_0110111 "OP_PRTY"
- attribute \enum_value_0111000 "OP_RLC"
- attribute \enum_value_0111001 "OP_RLCL"
- attribute \enum_value_0111010 "OP_RLCR"
- attribute \enum_value_0111011 "OP_SETB"
- attribute \enum_value_0111100 "OP_SHL"
- attribute \enum_value_0111101 "OP_SHR"
- attribute \enum_value_0111110 "OP_SYNC"
- attribute \enum_value_0111111 "OP_TRAP"
- attribute \enum_value_1000011 "OP_XOR"
- attribute \enum_value_1000100 "OP_SIM_CONFIG"
- attribute \enum_value_1000101 "OP_CROP"
- attribute \enum_value_1000110 "OP_RFID"
- attribute \enum_value_1000111 "OP_MFMSR"
- attribute \enum_value_1001000 "OP_MTMSRD"
- attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:120"
- wire width 7 output 158 \internal_op
- attribute \enum_base_type "Form"
- attribute \enum_value_00000 "NONE"
- attribute \enum_value_00001 "I"
- attribute \enum_value_00010 "B"
- attribute \enum_value_00011 "SC"
- attribute \enum_value_00100 "D"
- attribute \enum_value_00101 "DS"
- attribute \enum_value_00110 "DQ"
- attribute \enum_value_00111 "DX"
- attribute \enum_value_01000 "X"
- attribute \enum_value_01001 "XL"
- attribute \enum_value_01010 "XFX"
- attribute \enum_value_01011 "XFL"
- attribute \enum_value_01100 "XX1"
- attribute \enum_value_01101 "XX2"
- attribute \enum_value_01110 "XX3"
- attribute \enum_value_01111 "XX4"
- attribute \enum_value_10000 "XS"
- attribute \enum_value_10001 "XO"
- attribute \enum_value_10010 "A"
- attribute \enum_value_10011 "M"
- attribute \enum_value_10100 "MD"
- attribute \enum_value_10101 "MDS"
- attribute \enum_value_10110 "VA"
- attribute \enum_value_10111 "VC"
- attribute \enum_value_11000 "VX"
- attribute \enum_value_11001 "EVX"
- attribute \enum_value_11010 "EVS"
- attribute \enum_value_11011 "Z22"
- attribute \enum_value_11100 "Z23"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:121"
- wire width 5 output 159 \form
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:123"
- wire width 8 output 160 \asmcode
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 161 \inv_a
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 162 \inv_out
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 163 \cry_out
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 164 \br
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 165 \sgn_ext
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 166 \upd
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 167 \rsrv
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 168 \is_32b
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 169 \sgn
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 170 \lk
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
- wire width 1 output 171 \sgl_pipe
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:32"
- wire width 1 output 172 \valid
+ wire width 1 output 133 \ad__go
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 2 output 134 \wr__go$99
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 1 output 135 \st__go
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:94"
+ wire width 1 output 136 \issue_i$100
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:95"
+ wire width 1 input 137 \shadown_i$101
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:96"
+ wire width 1 input 138 \go_die_i$102
attribute \enum_base_type "InternalOp"
attribute \enum_value_0000000 "OP_ILLEGAL"
attribute \enum_value_0000001 "OP_NOP"
attribute \enum_value_1000111 "OP_MFMSR"
attribute \enum_value_1001000 "OP_MTMSRD"
attribute \enum_value_1001001 "OP_SC"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:33"
- wire width 7 output 173 \insn_type
- attribute \enum_base_type "Function"
- attribute \enum_value_0000000000 "NONE"
- attribute \enum_value_0000000010 "ALU"
- attribute \enum_value_0000000100 "LDST"
- attribute \enum_value_0000001000 "SHIFT_ROT"
- attribute \enum_value_0000010000 "LOGICAL"
- attribute \enum_value_0000100000 "BRANCH"
- attribute \enum_value_0001000000 "CR"
- attribute \enum_value_0010000000 "TRAP"
- attribute \enum_value_0100000000 "MUL"
- attribute \enum_value_1000000000 "DIV"
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:34"
- wire width 10 output 174 \fn_unit
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:36"
- wire width 8 input 175 \asmcode$99
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:37"
- wire width 64 output 176 \nia
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 5 output 177 \rego
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 178 \rego_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 5 output 179 \ea$100
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 180 \ea_ok$101
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 5 output 181 \reg1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 182 \reg1_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 5 output 183 \reg2
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 184 \reg2_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 5 output 185 \reg3
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 186 \reg3_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 187 \imm
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 188 \imm_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 10 output 189 \spro
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 190 \spro_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 10 output 191 \spr1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 192 \spr1_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 10 input 193 \spr2
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 input 194 \spr2_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 195 \fast1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 196 \fast1_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 197 \fast2
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 198 \fast2_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 199 \fasto1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 200 \fasto1_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 201 \fasto2
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 202 \fasto2_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 203 \cr_in1
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 204 \cr_in1_ok
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 205 \cr_in2
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 206 \cr_in2_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
+ wire width 7 output 139 \oper_i__insn_type$103
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
+ wire width 1 output 140 \oper_i__is_32bit$104
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
+ wire width 1 output 141 \oper_i__zero_a
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
+ wire width 1 output 142 \oper_i__is_signed$105
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
+ wire width 4 output 143 \oper_i__data_len$106
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
+ wire width 1 output 144 \oper_i__byte_reverse$107
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
+ wire width 1 output 145 \oper_i__sign_extend$108
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/fu/ldst/ldst_input_record.py:24"
+ wire width 1 output 146 \oper_i__update
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 64 output 147 \src1_i$109
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 64 output 148 \src2_i$110
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:69"
+ wire width 64 output 149 \src3_i
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:99"
+ wire width 1 output 150 \busy_o$111
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 3 output 151 \rd__rel$112
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 1 output 152 \ad__rel
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 1 output 153 \st__rel
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compalu_multi.py:33"
+ wire width 2 output 154 \wr__rel$113
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 207 \cr_in2$102
+ wire width 64 output 155 \o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 208 \cr_in2_ok$103
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:56"
- wire width 1 output 209 \read_cr_whole
+ wire width 1 input 156 \o_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 3 output 210 \cr_out$104
+ wire width 64 output 157 \ea
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 211 \cr_out_ok
+ wire width 1 input 158 \ea_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compldst_multi.py:112"
+ wire width 1 output 159 \load_mem_o
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/compldst_multi.py:113"
+ wire width 1 output 160 \stwd_mem_o
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:318"
+ wire width 32 output 161 \raw_opcode_in
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:319"
+ wire width 1 output 162 \bigendian
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:219"
+ wire width 32 output 163 \opcode_in
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:119"
+ wire width 11 output 164 \function_unit
+ attribute \enum_base_type "In1Sel"
+ attribute \enum_value_000 "NONE"
+ attribute \enum_value_001 "RA"
+ attribute \enum_value_010 "RA_OR_ZERO"
+ attribute \enum_value_011 "SPR"
+ attribute \enum_value_100 "RS"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:124"
+ wire width 3 output 165 \in1_sel
+ attribute \enum_base_type "In2Sel"
+ attribute \enum_value_0000 "NONE"
+ attribute \enum_value_0001 "RB"
+ attribute \enum_value_0010 "CONST_UI"
+ attribute \enum_value_0011 "CONST_SI"
+ attribute \enum_value_0100 "CONST_UI_HI"
+ attribute \enum_value_0101 "CONST_SI_HI"
+ attribute \enum_value_0110 "CONST_LI"
+ attribute \enum_value_0111 "CONST_BD"
+ attribute \enum_value_1000 "CONST_DS"
+ attribute \enum_value_1001 "CONST_M1"
+ attribute \enum_value_1010 "CONST_SH"
+ attribute \enum_value_1011 "CONST_SH32"
+ attribute \enum_value_1100 "SPR"
+ attribute \enum_value_1101 "RS"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:125"
+ wire width 4 output 166 \in2_sel
+ attribute \enum_base_type "In3Sel"
+ attribute \enum_value_00 "NONE"
+ attribute \enum_value_01 "RS"
+ attribute \enum_value_10 "RB"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:126"
+ wire width 2 output 167 \in3_sel
+ attribute \enum_base_type "OutSel"
+ attribute \enum_value_00 "NONE"
+ attribute \enum_value_01 "RT"
+ attribute \enum_value_10 "RA"
+ attribute \enum_value_11 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:127"
+ wire width 2 output 168 \out_sel
+ attribute \enum_base_type "CRInSel"
+ attribute \enum_value_000 "NONE"
+ attribute \enum_value_001 "CR0"
+ attribute \enum_value_010 "BI"
+ attribute \enum_value_011 "BFA"
+ attribute \enum_value_100 "BA_BB"
+ attribute \enum_value_101 "BC"
+ attribute \enum_value_110 "WHOLE_REG"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:128"
+ wire width 3 output 169 \cr_in
+ attribute \enum_base_type "CROutSel"
+ attribute \enum_value_000 "NONE"
+ attribute \enum_value_001 "CR0"
+ attribute \enum_value_010 "BF"
+ attribute \enum_value_011 "BT"
+ attribute \enum_value_100 "WHOLE_REG"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:129"
+ wire width 3 output 170 \cr_out
+ attribute \enum_base_type "LdstLen"
+ attribute \enum_value_0000 "NONE"
+ attribute \enum_value_0001 "is1B"
+ attribute \enum_value_0010 "is2B"
+ attribute \enum_value_0100 "is4B"
+ attribute \enum_value_1000 "is8B"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:130"
+ wire width 4 output 171 \ldst_len
+ attribute \enum_base_type "RC"
+ attribute \enum_value_00 "NONE"
+ attribute \enum_value_01 "ONE"
+ attribute \enum_value_10 "RC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:131"
+ wire width 2 output 172 \rc_sel
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:120"
+ wire width 7 output 173 \internal_op
+ attribute \enum_base_type "Form"
+ attribute \enum_value_00000 "NONE"
+ attribute \enum_value_00001 "I"
+ attribute \enum_value_00010 "B"
+ attribute \enum_value_00011 "SC"
+ attribute \enum_value_00100 "D"
+ attribute \enum_value_00101 "DS"
+ attribute \enum_value_00110 "DQ"
+ attribute \enum_value_00111 "DX"
+ attribute \enum_value_01000 "X"
+ attribute \enum_value_01001 "XL"
+ attribute \enum_value_01010 "XFX"
+ attribute \enum_value_01011 "XFL"
+ attribute \enum_value_01100 "XX1"
+ attribute \enum_value_01101 "XX2"
+ attribute \enum_value_01110 "XX3"
+ attribute \enum_value_01111 "XX4"
+ attribute \enum_value_10000 "XS"
+ attribute \enum_value_10001 "XO"
+ attribute \enum_value_10010 "A"
+ attribute \enum_value_10011 "M"
+ attribute \enum_value_10100 "MD"
+ attribute \enum_value_10101 "MDS"
+ attribute \enum_value_10110 "VA"
+ attribute \enum_value_10111 "VC"
+ attribute \enum_value_11000 "VX"
+ attribute \enum_value_11001 "EVX"
+ attribute \enum_value_11010 "EVS"
+ attribute \enum_value_11011 "Z22"
+ attribute \enum_value_11100 "Z23"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:121"
+ wire width 5 output 174 \form
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:123"
+ wire width 8 output 175 \asmcode
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
+ wire width 1 output 176 \inv_a
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
+ wire width 1 output 177 \inv_out
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
+ wire width 1 output 178 \cry_out
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
+ wire width 1 output 179 \br
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
+ wire width 1 output 180 \sgn_ext
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
+ wire width 1 output 181 \upd
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
+ wire width 1 output 182 \rsrv
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
+ wire width 1 output 183 \is_32b
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
+ wire width 1 output 184 \sgn
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
+ wire width 1 output 185 \lk
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder.py:135"
+ wire width 1 output 186 \sgl_pipe
+ attribute \enum_base_type "InternalOp"
+ attribute \enum_value_0000000 "OP_ILLEGAL"
+ attribute \enum_value_0000001 "OP_NOP"
+ attribute \enum_value_0000010 "OP_ADD"
+ attribute \enum_value_0000011 "OP_ADDPCIS"
+ attribute \enum_value_0000100 "OP_AND"
+ attribute \enum_value_0000101 "OP_ATTN"
+ attribute \enum_value_0000110 "OP_B"
+ attribute \enum_value_0000111 "OP_BC"
+ attribute \enum_value_0001000 "OP_BCREG"
+ attribute \enum_value_0001001 "OP_BPERM"
+ attribute \enum_value_0001010 "OP_CMP"
+ attribute \enum_value_0001011 "OP_CMPB"
+ attribute \enum_value_0001100 "OP_CMPEQB"
+ attribute \enum_value_0001101 "OP_CMPRB"
+ attribute \enum_value_0001110 "OP_CNTZ"
+ attribute \enum_value_0001111 "OP_CRAND"
+ attribute \enum_value_0010000 "OP_CRANDC"
+ attribute \enum_value_0010001 "OP_CREQV"
+ attribute \enum_value_0010010 "OP_CRNAND"
+ attribute \enum_value_0010011 "OP_CRNOR"
+ attribute \enum_value_0010100 "OP_CROR"
+ attribute \enum_value_0010101 "OP_CRORC"
+ attribute \enum_value_0010110 "OP_CRXOR"
+ attribute \enum_value_0010111 "OP_DARN"
+ attribute \enum_value_0011000 "OP_DCBF"
+ attribute \enum_value_0011001 "OP_DCBST"
+ attribute \enum_value_0011010 "OP_DCBT"
+ attribute \enum_value_0011011 "OP_DCBTST"
+ attribute \enum_value_0011100 "OP_DCBZ"
+ attribute \enum_value_0011101 "OP_DIV"
+ attribute \enum_value_0011110 "OP_DIVE"
+ attribute \enum_value_0011111 "OP_EXTS"
+ attribute \enum_value_0100000 "OP_EXTSWSLI"
+ attribute \enum_value_0100001 "OP_ICBI"
+ attribute \enum_value_0100010 "OP_ICBT"
+ attribute \enum_value_0100011 "OP_ISEL"
+ attribute \enum_value_0100100 "OP_ISYNC"
+ attribute \enum_value_0100101 "OP_LOAD"
+ attribute \enum_value_0100110 "OP_STORE"
+ attribute \enum_value_0100111 "OP_MADDHD"
+ attribute \enum_value_0101000 "OP_MADDHDU"
+ attribute \enum_value_0101001 "OP_MADDLD"
+ attribute \enum_value_0101010 "OP_MCRF"
+ attribute \enum_value_0101011 "OP_MCRXR"
+ attribute \enum_value_0101100 "OP_MCRXRX"
+ attribute \enum_value_0101101 "OP_MFCR"
+ attribute \enum_value_0101110 "OP_MFSPR"
+ attribute \enum_value_0101111 "OP_MOD"
+ attribute \enum_value_0110000 "OP_MTCRF"
+ attribute \enum_value_0110001 "OP_MTSPR"
+ attribute \enum_value_0110010 "OP_MUL_L64"
+ attribute \enum_value_0110011 "OP_MUL_H64"
+ attribute \enum_value_0110100 "OP_MUL_H32"
+ attribute \enum_value_0110101 "OP_OR"
+ attribute \enum_value_0110110 "OP_POPCNT"
+ attribute \enum_value_0110111 "OP_PRTY"
+ attribute \enum_value_0111000 "OP_RLC"
+ attribute \enum_value_0111001 "OP_RLCL"
+ attribute \enum_value_0111010 "OP_RLCR"
+ attribute \enum_value_0111011 "OP_SETB"
+ attribute \enum_value_0111100 "OP_SHL"
+ attribute \enum_value_0111101 "OP_SHR"
+ attribute \enum_value_0111110 "OP_SYNC"
+ attribute \enum_value_0111111 "OP_TRAP"
+ attribute \enum_value_1000011 "OP_XOR"
+ attribute \enum_value_1000100 "OP_SIM_CONFIG"
+ attribute \enum_value_1000101 "OP_CROP"
+ attribute \enum_value_1000110 "OP_RFID"
+ attribute \enum_value_1000111 "OP_MFMSR"
+ attribute \enum_value_1001000 "OP_MTMSRD"
+ attribute \enum_value_1001001 "OP_SC"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:32"
+ wire width 7 output 187 \insn_type
+ attribute \enum_base_type "Function"
+ attribute \enum_value_00000000000 "NONE"
+ attribute \enum_value_00000000010 "ALU"
+ attribute \enum_value_00000000100 "LDST"
+ attribute \enum_value_00000001000 "SHIFT_ROT"
+ attribute \enum_value_00000010000 "LOGICAL"
+ attribute \enum_value_00000100000 "BRANCH"
+ attribute \enum_value_00001000000 "CR"
+ attribute \enum_value_00010000000 "TRAP"
+ attribute \enum_value_00100000000 "MUL"
+ attribute \enum_value_01000000000 "DIV"
+ attribute \enum_value_10000000000 "SPR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:33"
+ wire width 11 output 188 \fn_unit
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:35"
+ wire width 8 output 189 \asmcode$114
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:36"
+ wire width 64 output 190 \nia
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 5 output 191 \rego
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 192 \rego_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 5 output 193 \ea$115
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 194 \ea_ok$116
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 5 output 195 \reg1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 196 \reg1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 5 output 197 \reg2
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 198 \reg2_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 5 output 199 \reg3
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 200 \reg3_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 64 output 201 \imm
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 202 \imm_ok
+ attribute \enum_base_type "SPR"
+ attribute \enum_value_0000000001 "XER"
+ attribute \enum_value_0000000011 "DSCR"
+ attribute \enum_value_0000001000 "LR"
+ attribute \enum_value_0000001001 "CTR"
+ attribute \enum_value_0000001101 "AMR"
+ attribute \enum_value_0000010001 "DSCR_priv"
+ attribute \enum_value_0000010010 "DSISR"
+ attribute \enum_value_0000010011 "DAR"
+ attribute \enum_value_0000010110 "DEC"
+ attribute \enum_value_0000011010 "SRR0"
+ attribute \enum_value_0000011011 "SRR1"
+ attribute \enum_value_0000011100 "CFAR"
+ attribute \enum_value_0000011101 "AMR_priv"
+ attribute \enum_value_0000110000 "PIDR"
+ attribute \enum_value_0000111101 "IAMR"
+ attribute \enum_value_0010000000 "TFHAR"
+ attribute \enum_value_0010000001 "TFIAR"
+ attribute \enum_value_0010000010 "TEXASR"
+ attribute \enum_value_0010000011 "TEXASRU"
+ attribute \enum_value_0010001000 "CTRL"
+ attribute \enum_value_0010010000 "TIDR"
+ attribute \enum_value_0010011000 "CTRL_priv"
+ attribute \enum_value_0010011001 "FSCR"
+ attribute \enum_value_0010011101 "UAMOR"
+ attribute \enum_value_0010011110 "GSR"
+ attribute \enum_value_0010011111 "PSPB"
+ attribute \enum_value_0010110000 "DPDES"
+ attribute \enum_value_0010110100 "DAWR0"
+ attribute \enum_value_0010111010 "RPR"
+ attribute \enum_value_0010111011 "CIABR"
+ attribute \enum_value_0010111100 "DAWRX0"
+ attribute \enum_value_0010111110 "HFSCR"
+ attribute \enum_value_0100000000 "VRSAVE"
+ attribute \enum_value_0100000011 "SPRG3"
+ attribute \enum_value_0100001100 "TB"
+ attribute \enum_value_0100001101 "TBU"
+ attribute \enum_value_0100010000 "SPRG0_priv"
+ attribute \enum_value_0100010001 "SPRG1_priv"
+ attribute \enum_value_0100010010 "SPRG2_priv"
+ attribute \enum_value_0100010011 "SPRG3_priv"
+ attribute \enum_value_0100011011 "CIR"
+ attribute \enum_value_0100011100 "TBL"
+ attribute \enum_value_0100011101 "TBU_hypv"
+ attribute \enum_value_0100011110 "TBU40"
+ attribute \enum_value_0100011111 "PVR"
+ attribute \enum_value_0100110000 "HSPRG0"
+ attribute \enum_value_0100110001 "HSPRG1"
+ attribute \enum_value_0100110010 "HDSISR"
+ attribute \enum_value_0100110011 "HDAR"
+ attribute \enum_value_0100110100 "SPURR"
+ attribute \enum_value_0100110101 "PURR"
+ attribute \enum_value_0100110110 "HDEC"
+ attribute \enum_value_0100111001 "HRMOR"
+ attribute \enum_value_0100111010 "HSRR0"
+ attribute \enum_value_0100111011 "HSRR1"
+ attribute \enum_value_0100111110 "LPCR"
+ attribute \enum_value_0100111111 "LPIDR"
+ attribute \enum_value_0101010000 "HMER"
+ attribute \enum_value_0101010001 "HMEER"
+ attribute \enum_value_0101010010 "PCR"
+ attribute \enum_value_0101010011 "HEIR"
+ attribute \enum_value_0101011101 "AMOR"
+ attribute \enum_value_0110111110 "TIR"
+ attribute \enum_value_0111010000 "PTCR"
+ attribute \enum_value_1100000000 "SIER"
+ attribute \enum_value_1100000001 "MMCR2"
+ attribute \enum_value_1100000010 "MMCRA"
+ attribute \enum_value_1100000011 "PMC1"
+ attribute \enum_value_1100000100 "PMC2"
+ attribute \enum_value_1100000101 "PMC3"
+ attribute \enum_value_1100000110 "PMC4"
+ attribute \enum_value_1100000111 "PMC5"
+ attribute \enum_value_1100001000 "PMC6"
+ attribute \enum_value_1100001011 "MMCR0"
+ attribute \enum_value_1100001100 "SIAR"
+ attribute \enum_value_1100001101 "SDAR"
+ attribute \enum_value_1100001110 "MMCR1"
+ attribute \enum_value_1100010000 "SIER_priv"
+ attribute \enum_value_1100010001 "MMCR2_priv"
+ attribute \enum_value_1100010010 "MMCRA_priv"
+ attribute \enum_value_1100010011 "PMC1_priv"
+ attribute \enum_value_1100010100 "PMC2_priv"
+ attribute \enum_value_1100010101 "PMC3_priv"
+ attribute \enum_value_1100010110 "PMC4_priv"
+ attribute \enum_value_1100010111 "PMC5_priv"
+ attribute \enum_value_1100011000 "PMC6_priv"
+ attribute \enum_value_1100011011 "MMCR0_priv"
+ attribute \enum_value_1100011100 "SIAR_priv"
+ attribute \enum_value_1100011101 "SDAR_priv"
+ attribute \enum_value_1100011110 "MMCR1_priv"
+ attribute \enum_value_1100100000 "BESCRS"
+ attribute \enum_value_1100100001 "BESCRSU"
+ attribute \enum_value_1100100010 "BESCRR"
+ attribute \enum_value_1100100011 "BESCRRU"
+ attribute \enum_value_1100100100 "EBBHR"
+ attribute \enum_value_1100100101 "EBBRR"
+ attribute \enum_value_1100100110 "BESCR"
+ attribute \enum_value_1100101000 "reserved808"
+ attribute \enum_value_1100101001 "reserved809"
+ attribute \enum_value_1100101010 "reserved810"
+ attribute \enum_value_1100101011 "reserved811"
+ attribute \enum_value_1100101111 "TAR"
+ attribute \enum_value_1100110000 "ASDR"
+ attribute \enum_value_1100110111 "PSSCR"
+ attribute \enum_value_1101010000 "IC"
+ attribute \enum_value_1101010001 "VTB"
+ attribute \enum_value_1101010111 "PSSCR_hypv"
+ attribute \enum_value_1110000000 "PPR"
+ attribute \enum_value_1110000010 "PPR32"
+ attribute \enum_value_1111111111 "PIR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 10 output 203 \spro
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 204 \spro_ok
+ attribute \enum_base_type "SPR"
+ attribute \enum_value_0000000001 "XER"
+ attribute \enum_value_0000000011 "DSCR"
+ attribute \enum_value_0000001000 "LR"
+ attribute \enum_value_0000001001 "CTR"
+ attribute \enum_value_0000001101 "AMR"
+ attribute \enum_value_0000010001 "DSCR_priv"
+ attribute \enum_value_0000010010 "DSISR"
+ attribute \enum_value_0000010011 "DAR"
+ attribute \enum_value_0000010110 "DEC"
+ attribute \enum_value_0000011010 "SRR0"
+ attribute \enum_value_0000011011 "SRR1"
+ attribute \enum_value_0000011100 "CFAR"
+ attribute \enum_value_0000011101 "AMR_priv"
+ attribute \enum_value_0000110000 "PIDR"
+ attribute \enum_value_0000111101 "IAMR"
+ attribute \enum_value_0010000000 "TFHAR"
+ attribute \enum_value_0010000001 "TFIAR"
+ attribute \enum_value_0010000010 "TEXASR"
+ attribute \enum_value_0010000011 "TEXASRU"
+ attribute \enum_value_0010001000 "CTRL"
+ attribute \enum_value_0010010000 "TIDR"
+ attribute \enum_value_0010011000 "CTRL_priv"
+ attribute \enum_value_0010011001 "FSCR"
+ attribute \enum_value_0010011101 "UAMOR"
+ attribute \enum_value_0010011110 "GSR"
+ attribute \enum_value_0010011111 "PSPB"
+ attribute \enum_value_0010110000 "DPDES"
+ attribute \enum_value_0010110100 "DAWR0"
+ attribute \enum_value_0010111010 "RPR"
+ attribute \enum_value_0010111011 "CIABR"
+ attribute \enum_value_0010111100 "DAWRX0"
+ attribute \enum_value_0010111110 "HFSCR"
+ attribute \enum_value_0100000000 "VRSAVE"
+ attribute \enum_value_0100000011 "SPRG3"
+ attribute \enum_value_0100001100 "TB"
+ attribute \enum_value_0100001101 "TBU"
+ attribute \enum_value_0100010000 "SPRG0_priv"
+ attribute \enum_value_0100010001 "SPRG1_priv"
+ attribute \enum_value_0100010010 "SPRG2_priv"
+ attribute \enum_value_0100010011 "SPRG3_priv"
+ attribute \enum_value_0100011011 "CIR"
+ attribute \enum_value_0100011100 "TBL"
+ attribute \enum_value_0100011101 "TBU_hypv"
+ attribute \enum_value_0100011110 "TBU40"
+ attribute \enum_value_0100011111 "PVR"
+ attribute \enum_value_0100110000 "HSPRG0"
+ attribute \enum_value_0100110001 "HSPRG1"
+ attribute \enum_value_0100110010 "HDSISR"
+ attribute \enum_value_0100110011 "HDAR"
+ attribute \enum_value_0100110100 "SPURR"
+ attribute \enum_value_0100110101 "PURR"
+ attribute \enum_value_0100110110 "HDEC"
+ attribute \enum_value_0100111001 "HRMOR"
+ attribute \enum_value_0100111010 "HSRR0"
+ attribute \enum_value_0100111011 "HSRR1"
+ attribute \enum_value_0100111110 "LPCR"
+ attribute \enum_value_0100111111 "LPIDR"
+ attribute \enum_value_0101010000 "HMER"
+ attribute \enum_value_0101010001 "HMEER"
+ attribute \enum_value_0101010010 "PCR"
+ attribute \enum_value_0101010011 "HEIR"
+ attribute \enum_value_0101011101 "AMOR"
+ attribute \enum_value_0110111110 "TIR"
+ attribute \enum_value_0111010000 "PTCR"
+ attribute \enum_value_1100000000 "SIER"
+ attribute \enum_value_1100000001 "MMCR2"
+ attribute \enum_value_1100000010 "MMCRA"
+ attribute \enum_value_1100000011 "PMC1"
+ attribute \enum_value_1100000100 "PMC2"
+ attribute \enum_value_1100000101 "PMC3"
+ attribute \enum_value_1100000110 "PMC4"
+ attribute \enum_value_1100000111 "PMC5"
+ attribute \enum_value_1100001000 "PMC6"
+ attribute \enum_value_1100001011 "MMCR0"
+ attribute \enum_value_1100001100 "SIAR"
+ attribute \enum_value_1100001101 "SDAR"
+ attribute \enum_value_1100001110 "MMCR1"
+ attribute \enum_value_1100010000 "SIER_priv"
+ attribute \enum_value_1100010001 "MMCR2_priv"
+ attribute \enum_value_1100010010 "MMCRA_priv"
+ attribute \enum_value_1100010011 "PMC1_priv"
+ attribute \enum_value_1100010100 "PMC2_priv"
+ attribute \enum_value_1100010101 "PMC3_priv"
+ attribute \enum_value_1100010110 "PMC4_priv"
+ attribute \enum_value_1100010111 "PMC5_priv"
+ attribute \enum_value_1100011000 "PMC6_priv"
+ attribute \enum_value_1100011011 "MMCR0_priv"
+ attribute \enum_value_1100011100 "SIAR_priv"
+ attribute \enum_value_1100011101 "SDAR_priv"
+ attribute \enum_value_1100011110 "MMCR1_priv"
+ attribute \enum_value_1100100000 "BESCRS"
+ attribute \enum_value_1100100001 "BESCRSU"
+ attribute \enum_value_1100100010 "BESCRR"
+ attribute \enum_value_1100100011 "BESCRRU"
+ attribute \enum_value_1100100100 "EBBHR"
+ attribute \enum_value_1100100101 "EBBRR"
+ attribute \enum_value_1100100110 "BESCR"
+ attribute \enum_value_1100101000 "reserved808"
+ attribute \enum_value_1100101001 "reserved809"
+ attribute \enum_value_1100101010 "reserved810"
+ attribute \enum_value_1100101011 "reserved811"
+ attribute \enum_value_1100101111 "TAR"
+ attribute \enum_value_1100110000 "ASDR"
+ attribute \enum_value_1100110111 "PSSCR"
+ attribute \enum_value_1101010000 "IC"
+ attribute \enum_value_1101010001 "VTB"
+ attribute \enum_value_1101010111 "PSSCR_hypv"
+ attribute \enum_value_1110000000 "PPR"
+ attribute \enum_value_1110000010 "PPR32"
+ attribute \enum_value_1111111111 "PIR"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 10 output 205 \spr1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 206 \spr1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 3 output 207 \fast1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 208 \fast1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 3 output 209 \fast2
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 210 \fast2_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 3 output 211 \fasto1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 212 \fasto1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 3 output 213 \fasto2
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 214 \fasto2_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 3 output 215 \cr_in1
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 216 \cr_in1_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 3 output 217 \cr_in2
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 218 \cr_in2_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 3 output 219 \cr_in2$117
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 220 \cr_in2_ok$118
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:55"
+ wire width 1 output 221 \read_cr_whole
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 3 output 222 \cr_out$119
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
+ wire width 1 output 223 \cr_out_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:57"
+ wire width 1 output 224 \write_cr_whole
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:58"
- wire width 1 output 212 \write_cr_whole
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:59"
- wire width 1 output 213 \lk$105
+ wire width 1 output 225 \lk$120
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 214 \rc
+ wire width 1 output 226 \rc
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 215 \rc_ok
+ wire width 1 output 227 \rc_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 216 \oe
+ wire width 1 output 228 \oe
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 217 \oe_ok
+ wire width 1 output 229 \oe_ok
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:61"
+ wire width 1 output 230 \invert_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:62"
- wire width 1 output 218 \invert_a
+ wire width 1 output 231 \zero_a
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:63"
- wire width 1 output 219 \zero_a
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:64"
- wire width 1 output 220 \invert_out
+ wire width 1 output 232 \invert_out
attribute \enum_base_type "CryIn"
attribute \enum_value_00 "ZERO"
attribute \enum_value_01 "ONE"
attribute \enum_value_10 "CA"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:64"
+ wire width 2 output 233 \input_carry
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:65"
- wire width 2 output 221 \input_carry
+ wire width 1 output 234 \output_carry
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:66"
- wire width 1 output 222 \output_carry
+ wire width 1 output 235 \input_cr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:67"
- wire width 1 output 223 \input_cr
+ wire width 1 output 236 \output_cr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:68"
- wire width 1 output 224 \output_cr
+ wire width 1 output 237 \is_32bit
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:69"
- wire width 1 output 225 \is_32bit
+ wire width 1 output 238 \is_signed
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:70"
- wire width 1 output 226 \is_signed
+ wire width 32 output 239 \insn
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:71"
- wire width 32 output 227 \insn
+ wire width 4 output 240 \data_len
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:72"
- wire width 4 output 228 \data_len
+ wire width 1 output 241 \byte_reverse
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:73"
- wire width 1 output 229 \byte_reverse
+ wire width 1 output 242 \sign_extend
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:74"
- wire width 1 output 230 \sign_extend
+ wire width 1 output 243 \update
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:75"
- wire width 1 output 231 \update
+ wire width 5 output 244 \traptype
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:76"
- wire width 4 input 232 \traptype
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:77"
- wire width 13 output 233 \trapaddr
+ wire width 13 output 245 \trapaddr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:95"
- wire width 1 output 234 \ldst_port0_is_ld_i
+ wire width 1 output 246 \ldst_port0_is_ld_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:96"
- wire width 1 output 235 \ldst_port0_is_st_i
+ wire width 1 output 247 \ldst_port0_is_st_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:99"
- wire width 4 output 236 \ldst_port0_data_len
+ wire width 4 output 248 \ldst_port0_data_len
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:102"
- wire width 1 output 237 \ldst_port0_busy_o
+ wire width 1 output 249 \ldst_port0_busy_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:103"
- wire width 1 output 238 \ldst_port0_go_die_i
+ wire width 1 output 250 \ldst_port0_go_die_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 48 output 239 \ldst_port0_addr_i
+ wire width 48 output 251 \ldst_port0_addr_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 240 \ldst_port0_addr_i_ok
+ wire width 1 output 252 \ldst_port0_addr_i_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:106"
- wire width 1 output 241 \ldst_port0_addr_ok_o
+ wire width 1 output 253 \ldst_port0_addr_ok_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:107"
- wire width 1 input 242 \ldst_port0_addr_exc_o
+ wire width 1 input 254 \ldst_port0_addr_exc_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 243 \ldst_port0_ld_data_o
+ wire width 64 output 255 \ldst_port0_ld_data_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 244 \ldst_port0_ld_data_o_ok
+ wire width 1 output 256 \ldst_port0_ld_data_o_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 245 \ldst_port0_st_data_i
+ wire width 64 output 257 \ldst_port0_st_data_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 246 \ldst_port0_st_data_i_ok
+ wire width 1 output 258 \ldst_port0_st_data_i_ok
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:26"
- wire width 48 output 247 \x_addr_i
+ wire width 48 output 259 \x_addr_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:27"
- wire width 8 output 248 \x_mask_i
+ wire width 8 output 260 \x_mask_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:28"
- wire width 1 output 249 \x_ld_i
+ wire width 1 output 261 \x_ld_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:29"
- wire width 1 output 250 \x_st_i
+ wire width 1 output 262 \x_st_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:30"
- wire width 64 output 251 \x_st_data_i
+ wire width 64 output 263 \x_st_data_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:32"
- wire width 1 input 252 \x_stall_i
+ wire width 1 input 264 \x_stall_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:33"
- wire width 1 output 253 \x_valid_i
+ wire width 1 output 265 \x_valid_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:36"
- wire width 1 input 254 \m_stall_i
+ wire width 1 input 266 \m_stall_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:37"
- wire width 1 output 255 \m_valid_i
+ wire width 1 output 267 \m_valid_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:42"
- wire width 1 output 256 \x_busy_o
+ wire width 1 output 268 \x_busy_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:43"
- wire width 1 output 257 \m_busy_o
+ wire width 1 output 269 \m_busy_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:45"
- wire width 64 output 258 \m_ld_data_o
+ wire width 64 output 270 \m_ld_data_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:50"
- wire width 1 output 259 \m_load_err_o
+ wire width 1 output 271 \m_load_err_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:51"
- wire width 1 output 260 \m_store_err_o
+ wire width 1 output 272 \m_store_err_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:52"
- wire width 45 output 261 \m_badaddr_o
+ wire width 45 output 273 \m_badaddr_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 45 output 262 \dbus__adr
+ wire width 45 output 274 \dbus__adr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 64 output 263 \dbus__dat_w
+ wire width 64 output 275 \dbus__dat_w
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 64 input 264 \dbus__dat_r
+ wire width 64 input 276 \dbus__dat_r
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 8 output 265 \dbus__sel
+ wire width 8 output 277 \dbus__sel
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 1 output 266 \dbus__cyc
+ wire width 1 output 278 \dbus__cyc
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 1 output 267 \dbus__stb
+ wire width 1 output 279 \dbus__stb
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 1 input 268 \dbus__ack
+ wire width 1 input 280 \dbus__ack
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 1 output 269 \dbus__we
+ wire width 1 output 281 \dbus__we
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 3 input 270 \dbus__cti
+ wire width 3 input 282 \dbus__cti
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 2 input 271 \dbus__bte
+ wire width 2 input 283 \dbus__bte
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/loadstore.py:16"
- wire width 1 input 272 \dbus__err
+ wire width 1 input 284 \dbus__err
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:95"
- wire width 1 output 273 \ldst_port0_is_ld_i$106
+ wire width 1 output 285 \ldst_port0_is_ld_i$121
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:96"
- wire width 1 output 274 \ldst_port0_is_st_i$107
+ wire width 1 output 286 \ldst_port0_is_st_i$122
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:99"
- wire width 4 output 275 \ldst_port0_data_len$108
+ wire width 4 output 287 \ldst_port0_data_len$123
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:102"
- wire width 1 output 276 \ldst_port0_busy_o$109
+ wire width 1 output 288 \ldst_port0_busy_o$124
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:103"
- wire width 1 input 277 \ldst_port0_go_die_i$110
+ wire width 1 input 289 \ldst_port0_go_die_i$125
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 96 output 278 \ldst_port0_addr_i$111
+ wire width 96 output 290 \ldst_port0_addr_i$126
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 279 \ldst_port0_addr_i_ok$112
+ wire width 1 output 291 \ldst_port0_addr_i_ok$127
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:106"
- wire width 1 output 280 \ldst_port0_addr_ok_o$113
+ wire width 1 output 292 \ldst_port0_addr_ok_o$128
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/experiment/pimem.py:107"
- wire width 1 output 281 \ldst_port0_addr_exc_o$114
+ wire width 1 output 293 \ldst_port0_addr_exc_o$129
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 282 \ldst_port0_ld_data_o$115
+ wire width 64 output 294 \ldst_port0_ld_data_o$130
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 283 \ldst_port0_ld_data_o_ok$116
+ wire width 1 output 295 \ldst_port0_ld_data_o_ok$131
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 64 output 284 \ldst_port0_st_data_i$117
+ wire width 64 output 296 \ldst_port0_st_data_i$132
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/decode2execute1.py:16"
- wire width 1 output 285 \ldst_port0_st_data_i_ok$118
+ wire width 1 output 297 \ldst_port0_st_data_i_ok$133
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:21"
- wire width 48 output 286 \a_pc_i
+ wire width 48 output 298 \a_pc_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:22"
- wire width 1 input 287 \a_stall_i
+ wire width 1 input 299 \a_stall_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:23"
- wire width 1 output 288 \a_valid_i
+ wire width 1 output 300 \a_valid_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:24"
- wire width 1 input 289 \f_stall_i
+ wire width 1 input 301 \f_stall_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:25"
- wire width 1 output 290 \f_valid_i
+ wire width 1 output 302 \f_valid_i
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:28"
- wire width 1 output 291 \a_busy_o
+ wire width 1 output 303 \a_busy_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:29"
- wire width 1 output 292 \f_busy_o
+ wire width 1 output 304 \f_busy_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:30"
- wire width 64 output 293 \f_instr_o
+ wire width 64 output 305 \f_instr_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:31"
- wire width 1 output 294 \f_fetch_err_o
+ wire width 1 output 306 \f_fetch_err_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:32"
- wire width 45 output 295 \f_badaddr_o
+ wire width 45 output 307 \f_badaddr_o
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:17"
- wire width 45 output 296 \ibus__adr
+ wire width 45 output 308 \ibus__adr
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:17"
- wire width 64 input 297 \ibus__dat_w
+ wire width 64 input 309 \ibus__dat_w
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:17"
- wire width 64 input 298 \ibus__dat_r
+ wire width 64 input 310 \ibus__dat_r
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:17"
- wire width 8 input 299 \ibus__sel
+ wire width 8 input 311 \ibus__sel
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:17"
- wire width 1 output 300 \ibus__cyc
+ wire width 1 output 312 \ibus__cyc
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:17"
- wire width 1 output 301 \ibus__stb
+ wire width 1 output 313 \ibus__stb
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:17"
- wire width 1 input 302 \ibus__ack
+ wire width 1 input 314 \ibus__ack
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:17"
- wire width 1 input 303 \ibus__we
+ wire width 1 input 315 \ibus__we
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:17"
- wire width 3 input 304 \ibus__cti
+ wire width 3 input 316 \ibus__cti
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:17"
- wire width 2 input 305 \ibus__bte
+ wire width 2 input 317 \ibus__bte
attribute \src "/home/lkcl/src/libresoc/soc/src/soc/minerva/units/fetch.py:17"
- wire width 1 input 306 \ibus__err
+ wire width 1 input 318 \ibus__err
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
- wire width 1 input 307 \clk
+ wire width 1 input 319 \clk
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/ir.py:526"
- wire width 1 input 308 \rst
+ wire width 1 input 320 \rst
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 8 \core_d_rd1__ren
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 64 \core_d_rd1__data_o
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:75"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/decoder/power_decoder2.py:546"
+ wire width 1 \core_valid
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:74"
wire width 1 \core_issue_i
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 8 \core_fast_nia_wen
- attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:76"
+ attribute \src "/home/lkcl/src/libresoc/soc/src/soc/simple/core.py:75"
wire width 1 \core_corebusy_o
attribute \src "/home/lkcl/src/libresoc/nmutil/src/nmutil/iocontrol.py:91"
wire width 8 \core_wen
connect \st__rel \st__rel
connect \d_rd1__ren \core_d_rd1__ren
connect \d_rd1__data_o \core_d_rd1__data_o
- connect \valid \valid
+ connect \valid \core_valid
connect \issue_i \core_issue_i
connect \bigendian \bigendian
connect \raw_opcode_in \raw_opcode_in
connect \imm \imm
connect \imm_ok \imm_ok
connect \oper_i__lk \oper_i__lk
- connect \lk \lk$105
+ connect \lk \lk$120
connect \rc \rc
connect \rc_ok \rc_ok
connect \oe \oe
connect \zero_a \zero_a
connect \oper_i__invert_out \oper_i__invert_out
connect \invert_out \invert_out
- connect \cr_out \cr_out$104
+ connect \cr_out \cr_out$119
connect \cr_out_ok \cr_out_ok
connect \oper_i__input_carry \oper_i__input_carry
connect \input_carry \input_carry
connect \busy_o$4 \busy_o$9
connect \cr_in1_ok \cr_in1_ok
connect \cr_in2_ok \cr_in2_ok
- connect \cr_in2_ok$5 \cr_in2_ok$103
+ connect \cr_in2_ok$5 \cr_in2_ok$118
connect \oper_i__insn_type$6 \oper_i__insn_type$18
connect \oper_i__fn_unit$7 \oper_i__fn_unit$19
connect \oper_i__lk$8 \oper_i__lk$20
connect \issue_i$29 \issue_i$46
connect \busy_o$30 \busy_o$61
connect \oper_i__insn_type$31 \oper_i__insn_type$70
- connect \oper_i__input_carry$32 \oper_i__input_carry$71
- connect \oper_i__output_carry$33 \oper_i__output_carry$72
- connect \oper_i__input_cr$34 \oper_i__input_cr$73
- connect \oper_i__output_cr$35 \oper_i__output_cr$74
- connect \oper_i__is_32bit$36 \oper_i__is_32bit$75
- connect \oper_i__is_signed$37 \oper_i__is_signed$76
- connect \issue_i$38 \issue_i$67
- connect \busy_o$39 \busy_o$79
+ connect \oper_i__fn_unit$32 \oper_i__fn_unit$72
+ connect \oper_i__insn$33 \oper_i__insn$71
+ connect \oper_i__is_32bit$34 \oper_i__is_32bit$73
+ connect \issue_i$35 \issue_i$67
+ connect \busy_o$36 \busy_o$76
+ connect \spr1_ok \spr1_ok
+ connect \oper_i__insn_type$37 \oper_i__insn_type$85
+ connect \oper_i__input_carry$38 \oper_i__input_carry$86
+ connect \oper_i__output_carry$39 \oper_i__output_carry$87
+ connect \oper_i__input_cr$40 \oper_i__input_cr$88
+ connect \oper_i__output_cr$41 \oper_i__output_cr$89
+ connect \oper_i__is_32bit$42 \oper_i__is_32bit$90
+ connect \oper_i__is_signed$43 \oper_i__is_signed$91
+ connect \issue_i$44 \issue_i$82
+ connect \busy_o$45 \busy_o$94
connect \reg3_ok \reg3_ok
- connect \oper_i__insn_type$40 \oper_i__insn_type$88
+ connect \oper_i__insn_type$46 \oper_i__insn_type$103
connect \oper_i__zero_a \oper_i__zero_a
- connect \oper_i__is_32bit$41 \oper_i__is_32bit$89
- connect \oper_i__is_signed$42 \oper_i__is_signed$90
- connect \oper_i__data_len$43 \oper_i__data_len$91
- connect \oper_i__byte_reverse$44 \oper_i__byte_reverse$92
- connect \oper_i__sign_extend$45 \oper_i__sign_extend$93
+ connect \oper_i__is_32bit$47 \oper_i__is_32bit$104
+ connect \oper_i__is_signed$48 \oper_i__is_signed$105
+ connect \oper_i__data_len$49 \oper_i__data_len$106
+ connect \oper_i__byte_reverse$50 \oper_i__byte_reverse$107
+ connect \oper_i__sign_extend$51 \oper_i__sign_extend$108
connect \oper_i__update \oper_i__update
connect \update \update
- connect \issue_i$46 \issue_i$85
- connect \busy_o$47 \busy_o$96
+ connect \issue_i$52 \issue_i$100
+ connect \busy_o$53 \busy_o$111
connect \reg1 \reg1
connect \rd__rel \rd__rel
connect \rd__go \rd__go
connect \src1_i \src1_i
- connect \rd__rel$48 \rd__rel$10
- connect \rd__go$49 \rd__go$1
- connect \src1_i$50 \src1_i$7
- connect \rd__rel$51 \rd__rel$41
- connect \rd__go$52 \rd__go$29
- connect \src1_i$53 \src1_i$38
- connect \rd__rel$54 \rd__rel$62
- connect \rd__go$55 \rd__go$44
- connect \src1_i$56 \src1_i$59
- connect \rd__rel$57 \rd__rel$80
- connect \rd__go$58 \rd__go$65
- connect \src1_i$59 \src1_i$77
- connect \rd__rel$60 \rd__rel$97
- connect \rd__go$61 \rd__go$83
- connect \src1_i$62 \src1_i$94
+ connect \rd__rel$54 \rd__rel$10
+ connect \rd__go$55 \rd__go$1
+ connect \src1_i$56 \src1_i$7
+ connect \rd__rel$57 \rd__rel$41
+ connect \rd__go$58 \rd__go$29
+ connect \src1_i$59 \src1_i$38
+ connect \rd__rel$60 \rd__rel$62
+ connect \rd__go$61 \rd__go$44
+ connect \src1_i$62 \src1_i$59
+ connect \rd__rel$63 \rd__rel$77
+ connect \rd__go$64 \rd__go$65
+ connect \src1_i$65 \src1_i$74
+ connect \rd__rel$66 \rd__rel$95
+ connect \rd__go$67 \rd__go$80
+ connect \src1_i$68 \src1_i$92
+ connect \rd__rel$69 \rd__rel$112
+ connect \rd__go$70 \rd__go$98
+ connect \src1_i$71 \src1_i$109
connect \reg2 \reg2
connect \src2_i \src2_i
- connect \src2_i$63 \src2_i$8
- connect \src2_i$64 \src2_i$39
- connect \src2_i$65 \src2_i$60
- connect \src2_i$66 \src2_i$78
- connect \src2_i$67 \src2_i$95
+ connect \src2_i$72 \src2_i$8
+ connect \src2_i$73 \src2_i$39
+ connect \src2_i$74 \src2_i$60
+ connect \src2_i$75 \src2_i$93
+ connect \src2_i$76 \src2_i$110
connect \reg3 \reg3
connect \src3_i \src3_i
connect \cr_in1 \cr_in1
- connect \rd__rel$68 \rd__rel$26
- connect \rd__go$69 \rd__go$13
+ connect \rd__rel$77 \rd__rel$26
+ connect \rd__go$78 \rd__go$13
connect \cr_in2 \cr_in2
- connect \cr_in2$70 \cr_in2$102
+ connect \cr_in2$79 \cr_in2$117
connect \fast1 \fast1
- connect \src1_i$71 \src1_i$23
+ connect \src1_i$80 \src1_i$23
connect \fast2 \fast2
- connect \src2_i$72 \src2_i$24
+ connect \src2_i$81 \src2_i$24
+ connect \spr1 \spr1
+ connect \src2_i$82 \src2_i$75
connect \rego \rego
connect \wr__rel \wr__rel
connect \wr__go \wr__go
- connect \wr__rel$73 \wr__rel$11
- connect \wr__go$74 \wr__go$2
- connect \wr__rel$75 \wr__rel$42
- connect \wr__go$76 \wr__go$30
- connect \wr__rel$77 \wr__rel$63
- connect \wr__go$78 \wr__go$45
- connect \wr__rel$79 \wr__rel$81
- connect \wr__go$80 \wr__go$66
+ connect \wr__rel$83 \wr__rel$11
+ connect \wr__go$84 \wr__go$2
+ connect \wr__rel$85 \wr__rel$42
+ connect \wr__go$86 \wr__go$30
+ connect \wr__rel$87 \wr__rel$63
+ connect \wr__go$88 \wr__go$45
+ connect \wr__rel$89 \wr__rel$78
+ connect \wr__go$90 \wr__go$66
+ connect \wr__rel$91 \wr__rel$96
+ connect \wr__go$92 \wr__go$81
connect \o_ok \o_ok
- connect \wr__rel$81 \wr__rel$98
- connect \wr__go$82 \wr__go$84
+ connect \wr__rel$93 \wr__rel$113
+ connect \wr__go$94 \wr__go$99
connect \o \o
- connect \ea \ea$100
+ connect \ea \ea$115
connect \ea_ok \ea_ok
- connect \ea$83 \ea
+ connect \ea$95 \ea
connect \fasto1 \fasto1
- connect \wr__rel$84 \wr__rel$27
- connect \wr__go$85 \wr__go$14
+ connect \wr__rel$96 \wr__rel$27
+ connect \wr__go$97 \wr__go$14
connect \fasto2 \fasto2
+ connect \spro \spro
connect \opcode_in \opcode_in
connect \in1_sel \in1_sel
connect \in2_sel \in2_sel
connect \out_sel \out_sel
connect \rc_sel \rc_sel
connect \cr_in \cr_in
- connect \cr_out$86 \cr_out
+ connect \cr_out$98 \cr_out
connect \nia \nia
connect \function_unit \function_unit
connect \internal_op \internal_op
connect \rego_ok \rego_ok
- connect \ea_ok$87 \ea_ok$101
- connect \spr1 \spr1
- connect \spr1_ok \spr1_ok
- connect \spro \spro
+ connect \ea_ok$99 \ea_ok$116
connect \spro_ok \spro_ok
connect \fasto1_ok \fasto1_ok
connect \fasto2_ok \fasto2_ok
connect \cry_out \cry_out
connect \is_32b \is_32b
connect \sgn \sgn
- connect \lk$88 \lk
+ connect \lk$100 \lk
connect \br \br
connect \sgn_ext \sgn_ext
connect \upd \upd
+ connect \asmcode \asmcode$114
connect \form \form
connect \rsrv \rsrv
connect \sgl_pipe \sgl_pipe
- connect \asmcode \asmcode
+ connect \asmcode$101 \asmcode
connect \go_die_i \go_die_i
connect \shadown_i \shadown_i
connect \dest1_o \dest1_o
- connect \go_die_i$89 \go_die_i$5
- connect \shadown_i$90 \shadown_i$4
- connect \dest1_o$91 \dest1_o$12
- connect \go_die_i$92 \go_die_i$17
- connect \shadown_i$93 \shadown_i$16
- connect \dest1_o$94 \dest1_o$28
- connect \go_die_i$95 \go_die_i$33
- connect \shadown_i$96 \shadown_i$32
- connect \dest1_o$97 \dest1_o$43
- connect \go_die_i$98 \go_die_i$48
- connect \shadown_i$99 \shadown_i$47
- connect \dest1_o$100 \dest1_o$64
- connect \go_die_i$101 \go_die_i$69
- connect \shadown_i$102 \shadown_i$68
- connect \dest1_o$103 \dest1_o$82
- connect \go_die_i$104 \go_die_i$87
+ connect \go_die_i$102 \go_die_i$5
+ connect \shadown_i$103 \shadown_i$4
+ connect \dest1_o$104 \dest1_o$12
+ connect \go_die_i$105 \go_die_i$17
+ connect \shadown_i$106 \shadown_i$16
+ connect \dest1_o$107 \dest1_o$28
+ connect \go_die_i$108 \go_die_i$33
+ connect \shadown_i$109 \shadown_i$32
+ connect \dest1_o$110 \dest1_o$43
+ connect \go_die_i$111 \go_die_i$48
+ connect \shadown_i$112 \shadown_i$47
+ connect \dest1_o$113 \dest1_o$64
+ connect \go_die_i$114 \go_die_i$69
+ connect \shadown_i$115 \shadown_i$68
+ connect \dest1_o$116 \dest1_o$79
+ connect \go_die_i$117 \go_die_i$84
+ connect \shadown_i$118 \shadown_i$83
+ connect \dest1_o$119 \dest1_o$97
+ connect \go_die_i$120 \go_die_i$102
connect \load_mem_o \load_mem_o
connect \stwd_mem_o \stwd_mem_o
- connect \shadown_i$105 \shadown_i$86
- connect \ldst_port0_is_ld_i \ldst_port0_is_ld_i$106
- connect \ldst_port0_is_st_i \ldst_port0_is_st_i$107
- connect \ldst_port0_data_len \ldst_port0_data_len$108
- connect \ldst_port0_addr_i \ldst_port0_addr_i$111
- connect \ldst_port0_addr_i_ok \ldst_port0_addr_i_ok$112
- connect \ldst_port0_addr_exc_o \ldst_port0_addr_exc_o$114
- connect \ldst_port0_addr_ok_o \ldst_port0_addr_ok_o$113
- connect \ldst_port0_ld_data_o \ldst_port0_ld_data_o$115
- connect \ldst_port0_ld_data_o_ok \ldst_port0_ld_data_o_ok$116
- connect \ldst_port0_st_data_i \ldst_port0_st_data_i$117
- connect \ldst_port0_st_data_i_ok \ldst_port0_st_data_i_ok$118
- connect \ldst_port0_is_ld_i$106 \ldst_port0_is_ld_i
+ connect \shadown_i$121 \shadown_i$101
+ connect \ldst_port0_is_ld_i \ldst_port0_is_ld_i$121
+ connect \ldst_port0_is_st_i \ldst_port0_is_st_i$122
+ connect \ldst_port0_data_len \ldst_port0_data_len$123
+ connect \ldst_port0_addr_i \ldst_port0_addr_i$126
+ connect \ldst_port0_addr_i_ok \ldst_port0_addr_i_ok$127
+ connect \ldst_port0_addr_exc_o \ldst_port0_addr_exc_o$129
+ connect \ldst_port0_addr_ok_o \ldst_port0_addr_ok_o$128
+ connect \ldst_port0_ld_data_o \ldst_port0_ld_data_o$130
+ connect \ldst_port0_ld_data_o_ok \ldst_port0_ld_data_o_ok$131
+ connect \ldst_port0_st_data_i \ldst_port0_st_data_i$132
+ connect \ldst_port0_st_data_i_ok \ldst_port0_st_data_i_ok$133
+ connect \ldst_port0_is_ld_i$122 \ldst_port0_is_ld_i
connect \ldst_port0_busy_o \ldst_port0_busy_o
- connect \ldst_port0_is_st_i$107 \ldst_port0_is_st_i
- connect \ldst_port0_data_len$108 \ldst_port0_data_len
- connect \ldst_port0_addr_i$109 \ldst_port0_addr_i
- connect \ldst_port0_addr_i_ok$110 \ldst_port0_addr_i_ok
+ connect \ldst_port0_is_st_i$123 \ldst_port0_is_st_i
+ connect \ldst_port0_data_len$124 \ldst_port0_data_len
+ connect \ldst_port0_addr_i$125 \ldst_port0_addr_i
+ connect \ldst_port0_addr_i_ok$126 \ldst_port0_addr_i_ok
connect \x_mask_i \x_mask_i
connect \x_addr_i \x_addr_i
- connect \ldst_port0_addr_ok_o$111 \ldst_port0_addr_ok_o
+ connect \ldst_port0_addr_ok_o$127 \ldst_port0_addr_ok_o
connect \m_ld_data_o \m_ld_data_o
- connect \ldst_port0_ld_data_o$112 \ldst_port0_ld_data_o
- connect \ldst_port0_ld_data_o_ok$113 \ldst_port0_ld_data_o_ok
+ connect \ldst_port0_ld_data_o$128 \ldst_port0_ld_data_o
+ connect \ldst_port0_ld_data_o_ok$129 \ldst_port0_ld_data_o_ok
connect \x_busy_o \x_busy_o
- connect \ldst_port0_st_data_i_ok$114 \ldst_port0_st_data_i_ok
- connect \ldst_port0_st_data_i$115 \ldst_port0_st_data_i
+ connect \ldst_port0_st_data_i_ok$130 \ldst_port0_st_data_i_ok
+ connect \ldst_port0_st_data_i$131 \ldst_port0_st_data_i
connect \x_st_data_i \x_st_data_i
- connect \ldst_port0_addr_exc_o$116 \ldst_port0_addr_exc_o
+ connect \ldst_port0_addr_exc_o$132 \ldst_port0_addr_exc_o
connect \x_ld_i \x_ld_i
connect \x_st_i \x_st_i
connect \m_valid_i \m_valid_i
connect \x_valid_i \x_valid_i
connect \ldst_port0_go_die_i \ldst_port0_go_die_i
- connect \ldst_port0_go_die_i$117 \ldst_port0_go_die_i$110
- connect \ldst_port0_busy_o$118 \ldst_port0_busy_o$109
+ connect \ldst_port0_go_die_i$133 \ldst_port0_go_die_i$125
+ connect \ldst_port0_busy_o$134 \ldst_port0_busy_o$124
connect \dbus__cyc \dbus__cyc
connect \x_stall_i \x_stall_i
connect \dbus__ack \dbus__ack
sync init
end
attribute \src "simple/issuer.py:79"
- wire width 64 \nia$119
+ wire width 64 \nia$134
attribute \src "simple/issuer.py:80"
- wire width 65 $120
+ wire width 65 $135
attribute \src "simple/issuer.py:80"
- wire width 65 $121
+ wire width 65 $136
attribute \src "simple/issuer.py:80"
- cell $add $122
+ cell $add $137
parameter \A_SIGNED 0
parameter \A_WIDTH 64
parameter \B_SIGNED 0
parameter \Y_WIDTH 65
connect \A \current_pc
connect \B 3'100
- connect \Y $121
+ connect \Y $136
end
- connect $120 $121
+ connect $135 $136
process $group_3
- assign \nia$119 64'0000000000000000000000000000000000000000000000000000000000000000
- assign \nia$119 $120 [63:0]
+ assign \nia$134 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \nia$134 $135 [63:0]
sync init
end
attribute \src "simple/issuer.py:74"
attribute \src "simple/issuer.py:90"
wire width 2 \fsm_state$next
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
- wire width 1 $123
+ wire width 1 $138
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/hdl/dsl.py:439"
- cell $reduce_bool $124
+ cell $reduce_bool $139
parameter \A_SIGNED 0
parameter \A_WIDTH 8
parameter \Y_WIDTH 1
connect \A \core_fast_nia_wen
- connect \Y $123
+ connect \Y $138
end
process $group_4
assign \pc_changed$next \pc_changed
attribute \nmigen.decoding "INSN_ACTIVE/2"
case 2'10
attribute \src "simple/issuer.py:136"
- switch { $123 }
+ switch { $138 }
attribute \src "simple/issuer.py:136"
case 1'1
assign \pc_changed$next 1'1
update \pc_changed \pc_changed$next
end
attribute \src "simple/issuer.py:97"
- wire width 64 \pc$125
+ wire width 64 \pc$140
process $group_5
- assign \pc$125 64'0000000000000000000000000000000000000000000000000000000000000000
+ assign \pc$140 64'0000000000000000000000000000000000000000000000000000000000000000
attribute \src "simple/issuer.py:90"
switch \fsm_state
attribute \src "simple/issuer.py:93"
switch { \pc_ok }
attribute \src "simple/issuer.py:98"
case 1'1
- assign \pc$125 \pc
+ assign \pc$140 \pc
attribute \src "simple/issuer.py:101"
case
- assign \pc$125 \core_d_rd1__data_o
+ assign \pc$140 \core_d_rd1__data_o
end
end
attribute \src "simple/issuer.py:115"
switch { \go_insn_i }
attribute \src "simple/issuer.py:95"
case 1'1
- assign \a_pc_i \pc$125 [47:0]
+ assign \a_pc_i \pc$140 [47:0]
end
attribute \src "simple/issuer.py:115"
attribute \nmigen.decoding "INSN_READ/1"
switch { \go_insn_i }
attribute \src "simple/issuer.py:95"
case 1'1
- assign \current_pc$next \pc$125
+ assign \current_pc$next \pc$140
end
attribute \src "simple/issuer.py:115"
attribute \nmigen.decoding "INSN_READ/1"
update \current_pc \current_pc$next
end
attribute \src "simple/issuer.py:138"
- wire width 1 $126
+ wire width 1 $141
attribute \src "simple/issuer.py:138"
- cell $not $127
+ cell $not $142
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \Y_WIDTH 1
connect \A \core_corebusy_o
- connect \Y $126
+ connect \Y $141
end
process $group_11
assign \fsm_state$next \fsm_state
attribute \nmigen.decoding "INSN_ACTIVE/2"
case 2'10
attribute \src "simple/issuer.py:138"
- switch { $126 }
+ switch { $141 }
attribute \src "simple/issuer.py:138"
case 1'1
assign \fsm_state$next 2'00
attribute \src "simple/issuer.py:72"
wire width 32 \current_insn
attribute \src "simple/issuer.py:122"
- wire width 32 $128
+ wire width 32 $143
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/back/rtlil.py:609"
- wire width 7 $129
+ wire width 7 $144
attribute \src "/home/lkcl/src/libresoc/nmigen/nmigen/back/rtlil.py:609"
- cell $mul $130
+ cell $mul $145
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \B_SIGNED 0
parameter \Y_WIDTH 7
connect \A \current_pc [2]
connect \B 6'100000
- connect \Y $129
+ connect \Y $144
end
attribute \src "simple/issuer.py:122"
- cell $shift $131
+ cell $shift $146
parameter \A_SIGNED 0
parameter \A_WIDTH 64
parameter \B_SIGNED 0
parameter \B_WIDTH 7
parameter \Y_WIDTH 32
connect \A \f_instr_o
- connect \B $129
- connect \Y $128
+ connect \B $144
+ connect \Y $143
end
process $group_12
assign \current_insn 32'00000000000000000000000000000000
case 1'1
attribute \src "simple/issuer.py:120"
case
- assign \current_insn $128
+ assign \current_insn $143
end
attribute \src "simple/issuer.py:132"
attribute \nmigen.decoding "INSN_ACTIVE/2"
sync init
end
process $group_13
- assign \valid 1'0
+ assign \core_valid 1'0
attribute \src "simple/issuer.py:90"
switch \fsm_state
attribute \src "simple/issuer.py:93"
case 1'1
attribute \src "simple/issuer.py:120"
case
- assign \valid 1'1
+ assign \core_valid 1'1
end
attribute \src "simple/issuer.py:132"
attribute \nmigen.decoding "INSN_ACTIVE/2"
case 2'10
- assign \valid 1'1
+ assign \core_valid 1'1
end
sync init
end
update \ilatch \ilatch$next
end
attribute \src "simple/issuer.py:138"
- wire width 1 $132
+ wire width 1 $147
attribute \src "simple/issuer.py:138"
- cell $not $133
+ cell $not $148
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \Y_WIDTH 1
connect \A \core_corebusy_o
- connect \Y $132
+ connect \Y $147
end
attribute \src "simple/issuer.py:144"
- wire width 1 $134
+ wire width 1 $149
attribute \src "simple/issuer.py:144"
- cell $not $135
+ cell $not $150
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \Y_WIDTH 1
connect \A \pc_changed
- connect \Y $134
+ connect \Y $149
end
process $group_18
assign \core_wen 8'00000000
attribute \nmigen.decoding "INSN_ACTIVE/2"
case 2'10
attribute \src "simple/issuer.py:138"
- switch { $132 }
+ switch { $147 }
attribute \src "simple/issuer.py:138"
case 1'1
attribute \src "simple/issuer.py:144"
- switch { $134 }
+ switch { $149 }
attribute \src "simple/issuer.py:144"
case 1'1
assign \core_wen 8'00000001
sync init
end
attribute \src "simple/issuer.py:138"
- wire width 1 $136
+ wire width 1 $151
attribute \src "simple/issuer.py:138"
- cell $not $137
+ cell $not $152
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \Y_WIDTH 1
connect \A \core_corebusy_o
- connect \Y $136
+ connect \Y $151
end
attribute \src "simple/issuer.py:144"
- wire width 1 $138
+ wire width 1 $153
attribute \src "simple/issuer.py:144"
- cell $not $139
+ cell $not $154
parameter \A_SIGNED 0
parameter \A_WIDTH 1
parameter \Y_WIDTH 1
connect \A \pc_changed
- connect \Y $138
+ connect \Y $153
end
process $group_19
assign \core_data_i 64'0000000000000000000000000000000000000000000000000000000000000000
attribute \nmigen.decoding "INSN_ACTIVE/2"
case 2'10
attribute \src "simple/issuer.py:138"
- switch { $136 }
+ switch { $151 }
attribute \src "simple/issuer.py:138"
case 1'1
attribute \src "simple/issuer.py:144"
- switch { $138 }
+ switch { $153 }
attribute \src "simple/issuer.py:144"
case 1'1
- assign \core_data_i \nia$119
+ assign \core_data_i \nia$134
end
end
end