Fixed instruction width issue in ROM. Stripped all comments to form minimal HEX file to rule out possible parser issues.
This commit is contained in:
2 files changed
+23
-5
No files matched your search
@@ -0,0 +1,18 @@
|
||||
01084023
|
||||
25090007
|
||||
ad090000
|
||||
8d0a0000
|
||||
012a5821
|
||||
012b6022
|
||||
212d0003
|
||||
018d7020
|
||||
012d8024
|
||||
012d8825
|
||||
012d9026
|
||||
012d9827
|
||||
018ea02a
|
||||
018ea82b
|
||||
25080001
|
||||
010db02b
|
||||
12d4fffd
|
||||
12d6ffff
|
||||
+5
-5
@@ -3,19 +3,19 @@
|
||||
|
||||
module rom #(parameter m=7,p=4) (
|
||||
input logic [m-1:0] Ad,
|
||||
output logic [p-1:0] Dout
|
||||
output logic [2**p-1:0] Dout
|
||||
);
|
||||
|
||||
logic [p-1:0] mem[2**m-1:0];
|
||||
assign Dout = mem[Ad];
|
||||
logic [2**p-1:0] mem[2**m];
|
||||
assign Dout = mem[Ad>>2]; // Because word-size versus byte size hack
|
||||
|
||||
//Load the program in memory
|
||||
// The machine code stored in text file program.dat written in Hex format
|
||||
initial begin
|
||||
`ifdef QUARTUS_SYNTH
|
||||
$readmemh("../../asm/bin/ELEC4720-2026s2-Ass-02-Demo.txt",mem); //$readmemb for binary
|
||||
$readmemh("../../asm/bin/ELEC4720-2026s2-Ass-02-Demo.hex", mem, 0, 2**m-1); //$readmemb for binary
|
||||
`else
|
||||
$readmemh("./asm/bin/ELEC4720-2026s2-Ass-02-Demo.txt",mem); //$readmemb for binary
|
||||
$readmemh("./asm/bin/ELEC4720-2026s2-Ass-02-Demo.hex", mem, 0, 2**m-1); //$readmemb for binary
|
||||
`endif
|
||||
end
|
||||
endmodule // end rom module
|
||||
|
||||
Reference in new issue
Block a user