adam-maj / tiny-gpu

A minimal GPU design in Verilog to learn how GPUs work from the ground up
7.1k stars 536 forks source link

Couple of changes to get this running on ubuntu 2204 with iverilog 11 #13

Open niyas-sait opened 6 months ago

niyas-sait commented 6 months ago

Getting bunch of errors during compilation due to declaring input as reg type.

build/gpu.v:1014: error: Port decoded_nzp of module pc is declared as input and as a reg type.
build/gpu.v:1016: error: Port decoded_nzp_write_enable of module pc is declared as input and as a reg type.
build/gpu.v:1017: error: Port decoded_pc_mux of module pc is declared as input and as a reg type.
build/gpu.v:1235: error: Port core_state of module alu is declared as input and as a reg type.

Dropping reg from input seems to fix this issue. I am not a Verilog expert, so not sure if this is specific to the iverilog (version 11) compiler I am using or the problem with SV2V conversion.

PR also contains some minor updates to README and Makefile

adviyer commented 6 months ago

Have you tried enabling the systemverilog flag (-g2012) with this command?

iverilog -Wall -g2012 <file-with-above-content>

I believe Icarus Verilog runs the 2005 version (-g2005) by default. I think that might fix it. Similar isssue for reference: https://stackoverflow.com/questions/64708162/icarus-verilog-reg-show-cannot-be-driven-by-primitives-or-continuous-assignmen

adviyer commented 6 months ago

Realised this other PR uses the updated flag as well, think it might just be the fix: https://github.com/adam-maj/tiny-gpu/pull/2/files

adam-maj commented 6 months ago

I think you're right that that's the fix for everyone @adviyer - will push that when I'm back at my computer

adam-maj commented 6 months ago

@niyas-sait if you want to remove all the reg changes in this PR and just update to use the 2012 version I can merge this or alternatively will just make the change myself

niyas-sait commented 6 months ago

Thanks @adam-maj and @adviyer

I tried top of master (9a07e2b9) and still getting lots of errors during compilation.

make compile
make[1]: Entering directory '/home/n00840801/Workspace/tiny-gpu'
make compile_alu
make[2]: Entering directory '/home/n00840801/Workspace/tiny-gpu'
sv2v -w build/alu.v src/alu.sv
make[2]: Leaving directory '/home/n00840801/Workspace/tiny-gpu'
sv2v -I src/* -w build/gpu.v
echo "" >> build/gpu.v
cat build/alu.v >> build/gpu.v
echo '`timescale 1ns/1ns' > build/temp.v
cat build/gpu.v >> build/temp.v
mv build/temp.v build/gpu.v
make[1]: Leaving directory '/home/n00840801/Workspace/tiny-gpu'
iverilog -o build/sim.vvp -s gpu -g2012 build/gpu.v
build/gpu.v:187: error: Port data_mem_read_data of module core is declared as input and as a reg type.
build/gpu.v:186: error: Port data_mem_read_ready of module core is declared as input and as a reg type.
build/gpu.v:191: error: Port data_mem_write_ready of module core is declared as input and as a reg type.
build/gpu.v:183: error: Port program_mem_read_data of module core is declared as input and as a reg type.
build/gpu.v:182: error: Port program_mem_read_ready of module core is declared as input and as a reg type.
build/gpu.v:1235: error: Port core_state of module alu is declared as input and as a reg type.
build/gpu.v:1236: error: Port decoded_alu_arithmetic_mux of module alu is declared as input and as a reg type.
build/gpu.v:1237: error: Port decoded_alu_output_mux of module alu is declared as input and as a reg type.
build/gpu.v:1238: error: Port rs of module alu is declared as input and as a reg type.
build/gpu.v:1239: error: Port rt of module alu is declared as input and as a reg type.
build/gpu.v:922: error: Port core_state of module lsu is declared as input and as a reg type.
build/gpu.v:923: error: Port decoded_mem_read_enable of module lsu is declared as input and as a reg type.
build/gpu.v:924: error: Port decoded_mem_write_enable of module lsu is declared as input and as a reg type.
build/gpu.v:930: error: Port mem_read_data of module lsu is declared as input and as a reg type.
build/gpu.v:929: error: Port mem_read_ready of module lsu is declared as input and as a reg type.
build/gpu.v:934: error: Port mem_write_ready of module lsu is declared as input and as a reg type.
build/gpu.v:925: error: Port rs of module lsu is declared as input and as a reg type.
build/gpu.v:926: error: Port rt of module lsu is declared as input and as a reg type.
build/gpu.v:1079: error: Port alu_out of module registers is declared as input and as a reg type.
build/gpu.v:1071: error: Port block_id of module registers is declared as input and as a reg type.
build/gpu.v:1072: error: Port core_state of module registers is declared as input and as a reg type.
build/gpu.v:1078: error: Port decoded_immediate of module registers is declared as input and as a reg type.
build/gpu.v:1073: error: Port decoded_rd_address of module registers is declared as input and as a reg type.
build/gpu.v:1077: error: Port decoded_reg_input_mux of module registers is declared as input and as a reg type.
build/gpu.v:1076: error: Port decoded_reg_write_enable of module registers is declared as input and as a reg type.
build/gpu.v:1074: error: Port decoded_rs_address of module registers is declared as input and as a reg type.
build/gpu.v:1075: error: Port decoded_rt_address of module registers is declared as input and as a reg type.
build/gpu.v:1080: error: Port lsu_out of module registers is declared as input and as a reg type.
build/gpu.v:1018: error: Port alu_out of module pc is declared as input and as a reg type.
build/gpu.v:1013: error: Port core_state of module pc is declared as input and as a reg type.
build/gpu.v:1019: error: Port current_pc of module pc is declared as input and as a reg type.
build/gpu.v:1015: error: Port decoded_immediate of module pc is declared as input and as a reg type.
build/gpu.v:1014: error: Port decoded_nzp of module pc is declared as input and as a reg type.
build/gpu.v:1016: error: Port decoded_nzp_write_enable of module pc is declared as input and as a reg type.
build/gpu.v:1017: error: Port decoded_pc_mux of module pc is declared as input and as a reg type.
build/gpu.v:1235: error: Port core_state of module alu is declared as input and as a reg type.
build/gpu.v:1236: error: Port decoded_alu_arithmetic_mux of module alu is declared as input and as a reg type.
build/gpu.v:1237: error: Port decoded_alu_output_mux of module alu is declared as input and as a reg type.
build/gpu.v:1238: error: Port rs of module alu is declared as input and as a reg type.
build/gpu.v:1239: error: Port rt of module alu is declared as input and as a reg type.
build/gpu.v:922: error: Port core_state of module lsu is declared as input and as a reg type.
build/gpu.v:923: error: Port decoded_mem_read_enable of module lsu is declared as input and as a reg type.
build/gpu.v:924: error: Port decoded_mem_write_enable of module lsu is declared as input and as a reg type.
build/gpu.v:930: error: Port mem_read_data of module lsu is declared as input and as a reg type.
build/gpu.v:929: error: Port mem_read_ready of module lsu is declared as input and as a reg type.
build/gpu.v:934: error: Port mem_write_ready of module lsu is declared as input and as a reg type.
build/gpu.v:925: error: Port rs of module lsu is declared as input and as a reg type.
build/gpu.v:926: error: Port rt of module lsu is declared as input and as a reg type.
build/gpu.v:1079: error: Port alu_out of module registers is declared as input and as a reg type.
build/gpu.v:1071: error: Port block_id of module registers is declared as input and as a reg type.
build/gpu.v:1072: error: Port core_state of module registers is declared as input and as a reg type.
build/gpu.v:1078: error: Port decoded_immediate of module registers is declared as input and as a reg type.
build/gpu.v:1073: error: Port decoded_rd_address of module registers is declared as input and as a reg type.
build/gpu.v:1077: error: Port decoded_reg_input_mux of module registers is declared as input and as a reg type.
build/gpu.v:1076: error: Port decoded_reg_write_enable of module registers is declared as input and as a reg type.
build/gpu.v:1074: error: Port decoded_rs_address of module registers is declared as input and as a reg type.
build/gpu.v:1075: error: Port decoded_rt_address of module registers is declared as input and as a reg type.
build/gpu.v:1080: error: Port lsu_out of module registers is declared as input and as a reg type.
build/gpu.v:1018: error: Port alu_out of module pc is declared as input and as a reg type.
build/gpu.v:1013: error: Port core_state of module pc is declared as input and as a reg type.
build/gpu.v:1019: error: Port current_pc of module pc is declared as input and as a reg type.
build/gpu.v:1015: error: Port decoded_immediate of module pc is declared as input and as a reg type.
build/gpu.v:1014: error: Port decoded_nzp of module pc is declared as input and as a reg type.
build/gpu.v:1016: error: Port decoded_nzp_write_enable of module pc is declared as input and as a reg type.
build/gpu.v:1017: error: Port decoded_pc_mux of module pc is declared as input and as a reg type.
build/gpu.v:1235: error: Port core_state of module alu is declared as input and as a reg type.
build/gpu.v:1236: error: Port decoded_alu_arithmetic_mux of module alu is declared as input and as a reg type.
build/gpu.v:1237: error: Port decoded_alu_output_mux of module alu is declared as input and as a reg type.
build/gpu.v:1238: error: Port rs of module alu is declared as input and as a reg type.
build/gpu.v:1239: error: Port rt of module alu is declared as input and as a reg type.
build/gpu.v:922: error: Port core_state of module lsu is declared as input and as a reg type.
build/gpu.v:923: error: Port decoded_mem_read_enable of module lsu is declared as input and as a reg type.
build/gpu.v:924: error: Port decoded_mem_write_enable of module lsu is declared as input and as a reg type.
build/gpu.v:930: error: Port mem_read_data of module lsu is declared as input and as a reg type.
build/gpu.v:929: error: Port mem_read_ready of module lsu is declared as input and as a reg type.
build/gpu.v:934: error: Port mem_write_ready of module lsu is declared as input and as a reg type.
build/gpu.v:925: error: Port rs of module lsu is declared as input and as a reg type.
build/gpu.v:926: error: Port rt of module lsu is declared as input and as a reg type.
build/gpu.v:1079: error: Port alu_out of module registers is declared as input and as a reg type.
build/gpu.v:1071: error: Port block_id of module registers is declared as input and as a reg type.
build/gpu.v:1072: error: Port core_state of module registers is declared as input and as a reg type.
build/gpu.v:1078: error: Port decoded_immediate of module registers is declared as input and as a reg type.
build/gpu.v:1073: error: Port decoded_rd_address of module registers is declared as input and as a reg type.
build/gpu.v:1077: error: Port decoded_reg_input_mux of module registers is declared as input and as a reg type.
build/gpu.v:1076: error: Port decoded_reg_write_enable of module registers is declared as input and as a reg type.
build/gpu.v:1074: error: Port decoded_rs_address of module registers is declared as input and as a reg type.
build/gpu.v:1075: error: Port decoded_rt_address of module registers is declared as input and as a reg type.
build/gpu.v:1080: error: Port lsu_out of module registers is declared as input and as a reg type.
build/gpu.v:1018: error: Port alu_out of module pc is declared as input and as a reg type.
build/gpu.v:1013: error: Port core_state of module pc is declared as input and as a reg type.
build/gpu.v:1019: error: Port current_pc of module pc is declared as input and as a reg type.
build/gpu.v:1015: error: Port decoded_immediate of module pc is declared as input and as a reg type.
build/gpu.v:1014: error: Port decoded_nzp of module pc is declared as input and as a reg type.
build/gpu.v:1016: error: Port decoded_nzp_write_enable of module pc is declared as input and as a reg type.
build/gpu.v:1017: error: Port decoded_pc_mux of module pc is declared as input and as a reg type.
build/gpu.v:1235: error: Port core_state of module alu is declared as input and as a reg type.
build/gpu.v:1236: error: Port decoded_alu_arithmetic_mux of module alu is declared as input and as a reg type.
build/gpu.v:1237: error: Port decoded_alu_output_mux of module alu is declared as input and as a reg type.
build/gpu.v:1238: error: Port rs of module alu is declared as input and as a reg type.
build/gpu.v:1239: error: Port rt of module alu is declared as input and as a reg type.
build/gpu.v:922: error: Port core_state of module lsu is declared as input and as a reg type.
build/gpu.v:923: error: Port decoded_mem_read_enable of module lsu is declared as input and as a reg type.
build/gpu.v:924: error: Port decoded_mem_write_enable of module lsu is declared as input and as a reg type.
build/gpu.v:930: error: Port mem_read_data of module lsu is declared as input and as a reg type.
build/gpu.v:929: error: Port mem_read_ready of module lsu is declared as input and as a reg type.
build/gpu.v:934: error: Port mem_write_ready of module lsu is declared as input and as a reg type.
build/gpu.v:925: error: Port rs of module lsu is declared as input and as a reg type.
build/gpu.v:926: error: Port rt of module lsu is declared as input and as a reg type.
build/gpu.v:1079: error: Port alu_out of module registers is declared as input and as a reg type.
build/gpu.v:1071: error: Port block_id of module registers is declared as input and as a reg type.
build/gpu.v:1072: error: Port core_state of module registers is declared as input and as a reg type.
build/gpu.v:1078: error: Port decoded_immediate of module registers is declared as input and as a reg type.
build/gpu.v:1073: error: Port decoded_rd_address of module registers is declared as input and as a reg type.
build/gpu.v:1077: error: Port decoded_reg_input_mux of module registers is declared as input and as a reg type.
build/gpu.v:1076: error: Port decoded_reg_write_enable of module registers is declared as input and as a reg type.
build/gpu.v:1074: error: Port decoded_rs_address of module registers is declared as input and as a reg type.
build/gpu.v:1075: error: Port decoded_rt_address of module registers is declared as input and as a reg type.
build/gpu.v:1080: error: Port lsu_out of module registers is declared as input and as a reg type.
build/gpu.v:1018: error: Port alu_out of module pc is declared as input and as a reg type.
build/gpu.v:1013: error: Port core_state of module pc is declared as input and as a reg type.
build/gpu.v:1019: error: Port current_pc of module pc is declared as input and as a reg type.
build/gpu.v:1015: error: Port decoded_immediate of module pc is declared as input and as a reg type.
build/gpu.v:1014: error: Port decoded_nzp of module pc is declared as input and as a reg type.
build/gpu.v:1016: error: Port decoded_nzp_write_enable of module pc is declared as input and as a reg type.
build/gpu.v:1017: error: Port decoded_pc_mux of module pc is declared as input and as a reg type.
build/gpu.v:641: error: Port core_state of module fetcher is declared as input and as a reg type.
build/gpu.v:642: error: Port current_pc of module fetcher is declared as input and as a reg type.
build/gpu.v:646: error: Port mem_read_data of module fetcher is declared as input and as a reg type.
build/gpu.v:645: error: Port mem_read_ready of module fetcher is declared as input and as a reg type.
build/gpu.v:441: error: Port core_state of module decoder is declared as input and as a reg type.
build/gpu.v:442: error: Port instruction of module decoder is declared as input and as a reg type.
build/gpu.v:1143: error: Port decoded_mem_read_enable of module scheduler is declared as input and as a reg type.
build/gpu.v:1144: error: Port decoded_mem_write_enable of module scheduler is declared as input and as a reg type.
build/gpu.v:1145: error: Port decoded_ret of module scheduler is declared as input and as a reg type.
build/gpu.v:1146: error: Port fetcher_state of module scheduler is declared as input and as a reg type.
build/gpu.v:1147: error: Port lsu_state of module scheduler is declared as input and as a reg type.
build/gpu.v:1149: error: Port next_pc of module scheduler is declared as input and as a reg type.
build/gpu.v:187: error: Port data_mem_read_data of module core is declared as input and as a reg type.
build/gpu.v:186: error: Port data_mem_read_ready of module core is declared as input and as a reg type.
build/gpu.v:191: error: Port data_mem_write_ready of module core is declared as input and as a reg type.
build/gpu.v:183: error: Port program_mem_read_data of module core is declared as input and as a reg type.
build/gpu.v:182: error: Port program_mem_read_ready of module core is declared as input and as a reg type.
build/gpu.v:1235: error: Port core_state of module alu is declared as input and as a reg type.
build/gpu.v:1236: error: Port decoded_alu_arithmetic_mux of module alu is declared as input and as a reg type.
build/gpu.v:1237: error: Port decoded_alu_output_mux of module alu is declared as input and as a reg type.
build/gpu.v:1238: error: Port rs of module alu is declared as input and as a reg type.
build/gpu.v:1239: error: Port rt of module alu is declared as input and as a reg type.
build/gpu.v:922: error: Port core_state of module lsu is declared as input and as a reg type.
build/gpu.v:923: error: Port decoded_mem_read_enable of module lsu is declared as input and as a reg type.
build/gpu.v:924: error: Port decoded_mem_write_enable of module lsu is declared as input and as a reg type.
build/gpu.v:930: error: Port mem_read_data of module lsu is declared as input and as a reg type.
build/gpu.v:929: error: Port mem_read_ready of module lsu is declared as input and as a reg type.
build/gpu.v:934: error: Port mem_write_ready of module lsu is declared as input and as a reg type.
build/gpu.v:925: error: Port rs of module lsu is declared as input and as a reg type.
build/gpu.v:926: error: Port rt of module lsu is declared as input and as a reg type.
build/gpu.v:1079: error: Port alu_out of module registers is declared as input and as a reg type.
build/gpu.v:1071: error: Port block_id of module registers is declared as input and as a reg type.
build/gpu.v:1072: error: Port core_state of module registers is declared as input and as a reg type.
build/gpu.v:1078: error: Port decoded_immediate of module registers is declared as input and as a reg type.
build/gpu.v:1073: error: Port decoded_rd_address of module registers is declared as input and as a reg type.
build/gpu.v:1077: error: Port decoded_reg_input_mux of module registers is declared as input and as a reg type.
build/gpu.v:1076: error: Port decoded_reg_write_enable of module registers is declared as input and as a reg type.
build/gpu.v:1074: error: Port decoded_rs_address of module registers is declared as input and as a reg type.
build/gpu.v:1075: error: Port decoded_rt_address of module registers is declared as input and as a reg type.
build/gpu.v:1080: error: Port lsu_out of module registers is declared as input and as a reg type.
build/gpu.v:1018: error: Port alu_out of module pc is declared as input and as a reg type.
build/gpu.v:1013: error: Port core_state of module pc is declared as input and as a reg type.
build/gpu.v:1019: error: Port current_pc of module pc is declared as input and as a reg type.
build/gpu.v:1015: error: Port decoded_immediate of module pc is declared as input and as a reg type.
build/gpu.v:1014: error: Port decoded_nzp of module pc is declared as input and as a reg type.
build/gpu.v:1016: error: Port decoded_nzp_write_enable of module pc is declared as input and as a reg type.
build/gpu.v:1017: error: Port decoded_pc_mux of module pc is declared as input and as a reg type.
build/gpu.v:1235: error: Port core_state of module alu is declared as input and as a reg type.
build/gpu.v:1236: error: Port decoded_alu_arithmetic_mux of module alu is declared as input and as a reg type.
build/gpu.v:1237: error: Port decoded_alu_output_mux of module alu is declared as input and as a reg type.
build/gpu.v:1238: error: Port rs of module alu is declared as input and as a reg type.
build/gpu.v:1239: error: Port rt of module alu is declared as input and as a reg type.
build/gpu.v:922: error: Port core_state of module lsu is declared as input and as a reg type.
build/gpu.v:923: error: Port decoded_mem_read_enable of module lsu is declared as input and as a reg type.
build/gpu.v:924: error: Port decoded_mem_write_enable of module lsu is declared as input and as a reg type.
build/gpu.v:930: error: Port mem_read_data of module lsu is declared as input and as a reg type.
build/gpu.v:929: error: Port mem_read_ready of module lsu is declared as input and as a reg type.
build/gpu.v:934: error: Port mem_write_ready of module lsu is declared as input and as a reg type.
build/gpu.v:925: error: Port rs of module lsu is declared as input and as a reg type.
build/gpu.v:926: error: Port rt of module lsu is declared as input and as a reg type.
build/gpu.v:1079: error: Port alu_out of module registers is declared as input and as a reg type.
build/gpu.v:1071: error: Port block_id of module registers is declared as input and as a reg type.
build/gpu.v:1072: error: Port core_state of module registers is declared as input and as a reg type.
build/gpu.v:1078: error: Port decoded_immediate of module registers is declared as input and as a reg type.
build/gpu.v:1073: error: Port decoded_rd_address of module registers is declared as input and as a reg type.
build/gpu.v:1077: error: Port decoded_reg_input_mux of module registers is declared as input and as a reg type.
build/gpu.v:1076: error: Port decoded_reg_write_enable of module registers is declared as input and as a reg type.
build/gpu.v:1074: error: Port decoded_rs_address of module registers is declared as input and as a reg type.
build/gpu.v:1075: error: Port decoded_rt_address of module registers is declared as input and as a reg type.
build/gpu.v:1080: error: Port lsu_out of module registers is declared as input and as a reg type.
build/gpu.v:1018: error: Port alu_out of module pc is declared as input and as a reg type.
build/gpu.v:1013: error: Port core_state of module pc is declared as input and as a reg type.
build/gpu.v:1019: error: Port current_pc of module pc is declared as input and as a reg type.
build/gpu.v:1015: error: Port decoded_immediate of module pc is declared as input and as a reg type.
build/gpu.v:1014: error: Port decoded_nzp of module pc is declared as input and as a reg type.
build/gpu.v:1016: error: Port decoded_nzp_write_enable of module pc is declared as input and as a reg type.
build/gpu.v:1017: error: Port decoded_pc_mux of module pc is declared as input and as a reg type.
build/gpu.v:1235: error: Port core_state of module alu is declared as input and as a reg type.
build/gpu.v:1236: error: Port decoded_alu_arithmetic_mux of module alu is declared as input and as a reg type.
build/gpu.v:1237: error: Port decoded_alu_output_mux of module alu is declared as input and as a reg type.
build/gpu.v:1238: error: Port rs of module alu is declared as input and as a reg type.
build/gpu.v:1239: error: Port rt of module alu is declared as input and as a reg type.
build/gpu.v:922: error: Port core_state of module lsu is declared as input and as a reg type.
build/gpu.v:923: error: Port decoded_mem_read_enable of module lsu is declared as input and as a reg type.
build/gpu.v:924: error: Port decoded_mem_write_enable of module lsu is declared as input and as a reg type.
build/gpu.v:930: error: Port mem_read_data of module lsu is declared as input and as a reg type.
build/gpu.v:929: error: Port mem_read_ready of module lsu is declared as input and as a reg type.
build/gpu.v:934: error: Port mem_write_ready of module lsu is declared as input and as a reg type.
build/gpu.v:925: error: Port rs of module lsu is declared as input and as a reg type.
build/gpu.v:926: error: Port rt of module lsu is declared as input and as a reg type.
build/gpu.v:1079: error: Port alu_out of module registers is declared as input and as a reg type.
build/gpu.v:1071: error: Port block_id of module registers is declared as input and as a reg type.
build/gpu.v:1072: error: Port core_state of module registers is declared as input and as a reg type.
build/gpu.v:1078: error: Port decoded_immediate of module registers is declared as input and as a reg type.
build/gpu.v:1073: error: Port decoded_rd_address of module registers is declared as input and as a reg type.
build/gpu.v:1077: error: Port decoded_reg_input_mux of module registers is declared as input and as a reg type.
build/gpu.v:1076: error: Port decoded_reg_write_enable of module registers is declared as input and as a reg type.
build/gpu.v:1074: error: Port decoded_rs_address of module registers is declared as input and as a reg type.
build/gpu.v:1075: error: Port decoded_rt_address of module registers is declared as input and as a reg type.
build/gpu.v:1080: error: Port lsu_out of module registers is declared as input and as a reg type.
build/gpu.v:1018: error: Port alu_out of module pc is declared as input and as a reg type.
build/gpu.v:1013: error: Port core_state of module pc is declared as input and as a reg type.
build/gpu.v:1019: error: Port current_pc of module pc is declared as input and as a reg type.
build/gpu.v:1015: error: Port decoded_immediate of module pc is declared as input and as a reg type.
build/gpu.v:1014: error: Port decoded_nzp of module pc is declared as input and as a reg type.
build/gpu.v:1016: error: Port decoded_nzp_write_enable of module pc is declared as input and as a reg type.
build/gpu.v:1017: error: Port decoded_pc_mux of module pc is declared as input and as a reg type.
build/gpu.v:1235: error: Port core_state of module alu is declared as input and as a reg type.
build/gpu.v:1236: error: Port decoded_alu_arithmetic_mux of module alu is declared as input and as a reg type.
build/gpu.v:1237: error: Port decoded_alu_output_mux of module alu is declared as input and as a reg type.
build/gpu.v:1238: error: Port rs of module alu is declared as input and as a reg type.
build/gpu.v:1239: error: Port rt of module alu is declared as input and as a reg type.
build/gpu.v:922: error: Port core_state of module lsu is declared as input and as a reg type.
build/gpu.v:923: error: Port decoded_mem_read_enable of module lsu is declared as input and as a reg type.
build/gpu.v:924: error: Port decoded_mem_write_enable of module lsu is declared as input and as a reg type.
build/gpu.v:930: error: Port mem_read_data of module lsu is declared as input and as a reg type.
build/gpu.v:929: error: Port mem_read_ready of module lsu is declared as input and as a reg type.
build/gpu.v:934: error: Port mem_write_ready of module lsu is declared as input and as a reg type.
build/gpu.v:925: error: Port rs of module lsu is declared as input and as a reg type.
build/gpu.v:926: error: Port rt of module lsu is declared as input and as a reg type.
build/gpu.v:1079: error: Port alu_out of module registers is declared as input and as a reg type.
build/gpu.v:1071: error: Port block_id of module registers is declared as input and as a reg type.
build/gpu.v:1072: error: Port core_state of module registers is declared as input and as a reg type.
build/gpu.v:1078: error: Port decoded_immediate of module registers is declared as input and as a reg type.
build/gpu.v:1073: error: Port decoded_rd_address of module registers is declared as input and as a reg type.
build/gpu.v:1077: error: Port decoded_reg_input_mux of module registers is declared as input and as a reg type.
build/gpu.v:1076: error: Port decoded_reg_write_enable of module registers is declared as input and as a reg type.
build/gpu.v:1074: error: Port decoded_rs_address of module registers is declared as input and as a reg type.
build/gpu.v:1075: error: Port decoded_rt_address of module registers is declared as input and as a reg type.
build/gpu.v:1080: error: Port lsu_out of module registers is declared as input and as a reg type.
build/gpu.v:1018: error: Port alu_out of module pc is declared as input and as a reg type.
build/gpu.v:1013: error: Port core_state of module pc is declared as input and as a reg type.
build/gpu.v:1019: error: Port current_pc of module pc is declared as input and as a reg type.
build/gpu.v:1015: error: Port decoded_immediate of module pc is declared as input and as a reg type.
build/gpu.v:1014: error: Port decoded_nzp of module pc is declared as input and as a reg type.
build/gpu.v:1016: error: Port decoded_nzp_write_enable of module pc is declared as input and as a reg type.
build/gpu.v:1017: error: Port decoded_pc_mux of module pc is declared as input and as a reg type.
build/gpu.v:641: error: Port core_state of module fetcher is declared as input and as a reg type.
build/gpu.v:642: error: Port current_pc of module fetcher is declared as input and as a reg type.
build/gpu.v:646: error: Port mem_read_data of module fetcher is declared as input and as a reg type.
build/gpu.v:645: error: Port mem_read_ready of module fetcher is declared as input and as a reg type.
build/gpu.v:441: error: Port core_state of module decoder is declared as input and as a reg type.
build/gpu.v:442: error: Port instruction of module decoder is declared as input and as a reg type.
build/gpu.v:1143: error: Port decoded_mem_read_enable of module scheduler is declared as input and as a reg type.
build/gpu.v:1144: error: Port decoded_mem_write_enable of module scheduler is declared as input and as a reg type.
build/gpu.v:1145: error: Port decoded_ret of module scheduler is declared as input and as a reg type.
build/gpu.v:1146: error: Port fetcher_state of module scheduler is declared as input and as a reg type.
build/gpu.v:1147: error: Port lsu_state of module scheduler is declared as input and as a reg type.
build/gpu.v:1149: error: Port next_pc of module scheduler is declared as input and as a reg type.
build/gpu.v:31: error: Port consumer_read_address of module controller is declared as input and as a reg type.
build/gpu.v:30: error: Port consumer_read_valid of module controller is declared as input and as a reg type.
build/gpu.v:35: error: Port consumer_write_address of module controller is declared as input and as a reg type.
build/gpu.v:36: error: Port consumer_write_data of module controller is declared as input and as a reg type.
build/gpu.v:34: error: Port consumer_write_valid of module controller is declared as input and as a reg type.
build/gpu.v:41: error: Port mem_read_data of module controller is declared as input and as a reg type.
build/gpu.v:40: error: Port mem_read_ready of module controller is declared as input and as a reg type.
build/gpu.v:45: error: Port mem_write_ready of module controller is declared as input and as a reg type.
build/gpu.v:31: error: Port consumer_read_address of module controller is declared as input and as a reg type.
build/gpu.v:30: error: Port consumer_read_valid of module controller is declared as input and as a reg type.
build/gpu.v:35: error: Port consumer_write_address of module controller is declared as input and as a reg type.
build/gpu.v:36: error: Port consumer_write_data of module controller is declared as input and as a reg type.
build/gpu.v:34: error: Port consumer_write_valid of module controller is declared as input and as a reg type.
build/gpu.v:41: error: Port mem_read_data of module controller is declared as input and as a reg type.
build/gpu.v:40: error: Port mem_read_ready of module controller is declared as input and as a reg type.
build/gpu.v:45: error: Port mem_write_ready of module controller is declared as input and as a reg type.
build/gpu.v:561: error: Port core_done of module dispatch is declared as input and as a reg type.
build/gpu.v:312: warning: input port core_state is coerced to inout.
build/gpu.v:313: warning: input port decoded_alu_arithmetic_mux is coerced to inout.
build/gpu.v:314: warning: input port decoded_alu_output_mux is coerced to inout.
build/gpu.v:315: warning: input port rs is coerced to inout.
build/gpu.v:316: warning: input port rt is coerced to inout.
build/gpu.v:338: warning: input port decoded_mem_read_enable is coerced to inout.
build/gpu.v:339: warning: input port decoded_mem_write_enable is coerced to inout.
build/gpu.v:342: warning: input port mem_read_ready is coerced to inout.
build/gpu.v:343: warning: input port mem_read_data is coerced to inout.
build/gpu.v:347: warning: input port mem_write_ready is coerced to inout.
build/gpu.v:365: warning: input port block_id is coerced to inout.
build/gpu.v:369: warning: input port decoded_rd_address is coerced to inout.
build/gpu.v:370: warning: input port decoded_rs_address is coerced to inout.
build/gpu.v:371: warning: input port decoded_rt_address is coerced to inout.
build/gpu.v:367: warning: input port decoded_reg_write_enable is coerced to inout.
build/gpu.v:368: warning: input port decoded_reg_input_mux is coerced to inout.
build/gpu.v:372: warning: input port decoded_immediate is coerced to inout.
build/gpu.v:373: warning: input port alu_out is coerced to inout.
build/gpu.v:374: warning: input port lsu_out is coerced to inout.
build/gpu.v:386: warning: input port decoded_nzp is coerced to inout.
build/gpu.v:388: warning: input port decoded_nzp_write_enable is coerced to inout.
build/gpu.v:389: warning: input port decoded_pc_mux is coerced to inout.
build/gpu.v:390: warning: input port alu_out is coerced to inout.
build/gpu.v:391: warning: input port current_pc is coerced to inout.
build/gpu.v:332: error: Unable to assign words of unresolved wire array.
build/gpu.v:354: error: Unable to assign words of unresolved wire array.
build/gpu.v:356: error: Unable to assign words of unresolved wire array.
build/gpu.v:365: warning: input port block_id is coerced to inout.
build/gpu.v:373: warning: input port alu_out is coerced to inout.
build/gpu.v:390: warning: input port alu_out is coerced to inout.
build/gpu.v:332: error: Unable to assign words of unresolved wire array.
build/gpu.v:354: error: Unable to assign words of unresolved wire array.
build/gpu.v:356: error: Unable to assign words of unresolved wire array.
build/gpu.v:365: warning: input port block_id is coerced to inout.
build/gpu.v:373: warning: input port alu_out is coerced to inout.
build/gpu.v:390: warning: input port alu_out is coerced to inout.
build/gpu.v:332: error: Unable to assign words of unresolved wire array.
build/gpu.v:354: error: Unable to assign words of unresolved wire array.
build/gpu.v:356: error: Unable to assign words of unresolved wire array.
build/gpu.v:365: warning: input port block_id is coerced to inout.
build/gpu.v:373: warning: input port alu_out is coerced to inout.
build/gpu.v:390: warning: input port alu_out is coerced to inout.
build/gpu.v:332: error: Unable to assign words of unresolved wire array.
build/gpu.v:354: error: Unable to assign words of unresolved wire array.
build/gpu.v:356: error: Unable to assign words of unresolved wire array.
build/gpu.v:234: warning: input port mem_read_ready is coerced to inout.
build/gpu.v:235: warning: input port mem_read_data is coerced to inout.
build/gpu.v:271: warning: input port instruction is coerced to inout.
build/gpu.v:299: warning: input port decoded_ret is coerced to inout.
build/gpu.v:295: warning: input port fetcher_state is coerced to inout.
build/gpu.v:300: warning: input port lsu_state is coerced to inout.
build/gpu.v:302: warning: input port next_pc is coerced to inout.
build/gpu.v:221: error: fetcher_state Unable to assign to unresolved wires.
build/gpu.v:223: error: instruction Unable to assign to unresolved wires.
build/gpu.v:240: error: decoded_rd_address Unable to assign to unresolved wires.
build/gpu.v:242: error: decoded_rs_address Unable to assign to unresolved wires.
build/gpu.v:244: error: decoded_rt_address Unable to assign to unresolved wires.
build/gpu.v:246: error: decoded_nzp Unable to assign to unresolved wires.
build/gpu.v:248: error: decoded_immediate Unable to assign to unresolved wires.
build/gpu.v:250: error: decoded_reg_write_enable Unable to assign to unresolved wires.
build/gpu.v:252: error: decoded_mem_read_enable Unable to assign to unresolved wires.
build/gpu.v:254: error: decoded_mem_write_enable Unable to assign to unresolved wires.
build/gpu.v:256: error: decoded_nzp_write_enable Unable to assign to unresolved wires.
build/gpu.v:258: error: decoded_reg_input_mux Unable to assign to unresolved wires.
build/gpu.v:260: error: decoded_alu_arithmetic_mux Unable to assign to unresolved wires.
build/gpu.v:262: error: decoded_alu_output_mux Unable to assign to unresolved wires.
build/gpu.v:264: error: decoded_pc_mux Unable to assign to unresolved wires.
build/gpu.v:266: error: decoded_ret Unable to assign to unresolved wires.
build/gpu.v:288: error: core_state Unable to assign to unresolved wires.
build/gpu.v:290: error: current_pc Unable to assign to unresolved wires.
build/gpu.v:880: warning: input port block_id is coerced to inout.
build/gpu.v:884: warning: input port program_mem_read_ready is coerced to inout.
build/gpu.v:885: warning: input port program_mem_read_data is coerced to inout.
build/gpu.v:312: warning: input port core_state is coerced to inout.
build/gpu.v:313: warning: input port decoded_alu_arithmetic_mux is coerced to inout.
build/gpu.v:314: warning: input port decoded_alu_output_mux is coerced to inout.
build/gpu.v:315: warning: input port rs is coerced to inout.
build/gpu.v:316: warning: input port rt is coerced to inout.
build/gpu.v:338: warning: input port decoded_mem_read_enable is coerced to inout.
build/gpu.v:339: warning: input port decoded_mem_write_enable is coerced to inout.
build/gpu.v:342: warning: input port mem_read_ready is coerced to inout.
build/gpu.v:343: warning: input port mem_read_data is coerced to inout.
build/gpu.v:347: warning: input port mem_write_ready is coerced to inout.
build/gpu.v:365: warning: input port block_id is coerced to inout.
build/gpu.v:369: warning: input port decoded_rd_address is coerced to inout.
build/gpu.v:370: warning: input port decoded_rs_address is coerced to inout.
build/gpu.v:371: warning: input port decoded_rt_address is coerced to inout.
build/gpu.v:367: warning: input port decoded_reg_write_enable is coerced to inout.
build/gpu.v:368: warning: input port decoded_reg_input_mux is coerced to inout.
build/gpu.v:372: warning: input port decoded_immediate is coerced to inout.
build/gpu.v:373: warning: input port alu_out is coerced to inout.
build/gpu.v:374: warning: input port lsu_out is coerced to inout.
build/gpu.v:386: warning: input port decoded_nzp is coerced to inout.
build/gpu.v:388: warning: input port decoded_nzp_write_enable is coerced to inout.
build/gpu.v:389: warning: input port decoded_pc_mux is coerced to inout.
build/gpu.v:390: warning: input port alu_out is coerced to inout.
build/gpu.v:391: warning: input port current_pc is coerced to inout.
build/gpu.v:332: error: Unable to assign words of unresolved wire array.
build/gpu.v:354: error: Unable to assign words of unresolved wire array.
build/gpu.v:356: error: Unable to assign words of unresolved wire array.
build/gpu.v:365: warning: input port block_id is coerced to inout.
build/gpu.v:373: warning: input port alu_out is coerced to inout.
build/gpu.v:390: warning: input port alu_out is coerced to inout.
build/gpu.v:332: error: Unable to assign words of unresolved wire array.
build/gpu.v:354: error: Unable to assign words of unresolved wire array.
build/gpu.v:356: error: Unable to assign words of unresolved wire array.
build/gpu.v:365: warning: input port block_id is coerced to inout.
build/gpu.v:373: warning: input port alu_out is coerced to inout.
build/gpu.v:390: warning: input port alu_out is coerced to inout.
build/gpu.v:332: error: Unable to assign words of unresolved wire array.
build/gpu.v:354: error: Unable to assign words of unresolved wire array.
build/gpu.v:356: error: Unable to assign words of unresolved wire array.
build/gpu.v:365: warning: input port block_id is coerced to inout.
build/gpu.v:373: warning: input port alu_out is coerced to inout.
build/gpu.v:390: warning: input port alu_out is coerced to inout.
build/gpu.v:332: error: Unable to assign words of unresolved wire array.
build/gpu.v:354: error: Unable to assign words of unresolved wire array.
build/gpu.v:356: error: Unable to assign words of unresolved wire array.
build/gpu.v:234: warning: input port mem_read_ready is coerced to inout.
build/gpu.v:235: warning: input port mem_read_data is coerced to inout.
build/gpu.v:271: warning: input port instruction is coerced to inout.
build/gpu.v:299: warning: input port decoded_ret is coerced to inout.
build/gpu.v:295: warning: input port fetcher_state is coerced to inout.
build/gpu.v:300: warning: input port lsu_state is coerced to inout.
build/gpu.v:302: warning: input port next_pc is coerced to inout.
build/gpu.v:221: error: fetcher_state Unable to assign to unresolved wires.
build/gpu.v:223: error: instruction Unable to assign to unresolved wires.
build/gpu.v:240: error: decoded_rd_address Unable to assign to unresolved wires.
build/gpu.v:242: error: decoded_rs_address Unable to assign to unresolved wires.
build/gpu.v:244: error: decoded_rt_address Unable to assign to unresolved wires.
build/gpu.v:246: error: decoded_nzp Unable to assign to unresolved wires.
build/gpu.v:248: error: decoded_immediate Unable to assign to unresolved wires.
build/gpu.v:250: error: decoded_reg_write_enable Unable to assign to unresolved wires.
build/gpu.v:252: error: decoded_mem_read_enable Unable to assign to unresolved wires.
build/gpu.v:254: error: decoded_mem_write_enable Unable to assign to unresolved wires.
build/gpu.v:256: error: decoded_nzp_write_enable Unable to assign to unresolved wires.
build/gpu.v:258: error: decoded_reg_input_mux Unable to assign to unresolved wires.
build/gpu.v:260: error: decoded_alu_arithmetic_mux Unable to assign to unresolved wires.
build/gpu.v:262: error: decoded_alu_output_mux Unable to assign to unresolved wires.
build/gpu.v:264: error: decoded_pc_mux Unable to assign to unresolved wires.
build/gpu.v:266: error: decoded_ret Unable to assign to unresolved wires.
build/gpu.v:288: error: core_state Unable to assign to unresolved wires.
build/gpu.v:290: error: current_pc Unable to assign to unresolved wires.
build/gpu.v:766: warning: input port consumer_read_valid is coerced to inout.
build/gpu.v:767: warning: input port consumer_read_address is coerced to inout.
build/gpu.v:770: warning: input port consumer_write_valid is coerced to inout.
build/gpu.v:771: warning: input port consumer_write_address is coerced to inout.
build/gpu.v:772: warning: input port consumer_write_data is coerced to inout.
build/gpu.v:776: warning: input port mem_read_ready is coerced to inout.
build/gpu.v:777: warning: input port mem_read_data is coerced to inout.
build/gpu.v:781: warning: input port mem_write_ready is coerced to inout.
build/gpu.v:796: warning: input port consumer_read_valid is coerced to inout.
build/gpu.v:797: warning: input port consumer_read_address is coerced to inout.
build/gpu.v:802: warning: input port mem_read_ready is coerced to inout.
build/gpu.v:803: warning: input port mem_read_data is coerced to inout.
build/gpu.v:821: warning: input port core_done is coerced to inout.
build/gpu.v:784: error: fetcher_read_ready Unable to assign to unresolved wires.
build/gpu.v:786: error: fetcher_read_data Unable to assign to unresolved wires.
build/gpu.v:810: error: core_block_id Unable to assign to unresolved wires.
Elaboration failed
make: *** [Makefile:7: test_matadd] Error 1
hossain666 commented 6 months ago

build/gpu.v:1017: error: Port decoded_pc_mux