From 2b18a9559197117e37670675a247627cf36ed341 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Sun, 5 Nov 2017 16:42:27 -0500 Subject: [PATCH 01/78] Add work plan --- work_plan.txt | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 work_plan.txt diff --git a/work_plan.txt b/work_plan.txt new file mode 100644 index 0000000..38cf1d0 --- /dev/null +++ b/work_plan.txt @@ -0,0 +1,20 @@ +Work Plan +William Derksen, Alexander Hoppe, Samuel Meyers, Taylor Sheneman + +Week 1 + +- RTL for all required instructions in the set (30 mins) +- Block Diagram of Single Cycle CPU (2 Hr) (by Wednesday night office hours) +- Begin Verilog Implementation (4 Hr) + +Friday +~~~~~~~~~~~~~~~~~~ +Saturday +- Finish Verilog Implementation + +- Testing in parts (3 Hr) +- Developing Assembly Code (3 Hr) ++ (stretch goal) Draw pipelined design block diagram (2 Hr) ++ Implement Pipeline (2 Hr) ++ Test pipelined design (should just be modifying exising ones) +- Report writing (2 Hr) From 214a265739506a3668617372b1e9eec6cef05a1d Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Sun, 5 Nov 2017 16:57:09 -0500 Subject: [PATCH 02/78] Add stubbed out RTL document --- RISC_RTL.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 RISC_RTL.md diff --git a/RISC_RTL.md b/RISC_RTL.md new file mode 100644 index 0000000..a036db3 --- /dev/null +++ b/RISC_RTL.md @@ -0,0 +1,28 @@ +# Single cycle MIPS RISC RTL + +## Instructions: +`lw`, `sw`, `j`, `jr`, `jal`, `bne`, `xori`, `addi`, `add`, `sub`, `slt` + +## RTL + +### `lw` + +### `sw` + +### `j` + +### `jr` + +### `jal` + +### `bne` + +### `xori` + +### `addi` + +### `add` + +### `sub` + +### `slt` From 5c05c7bf924c12fa9883c5433566c268fe6c92f2 Mon Sep 17 00:00:00 2001 From: juicyslew Date: Tue, 7 Nov 2017 19:15:16 -0500 Subject: [PATCH 03/78] added Instruction set pseudo code --- RISC_RTL.md | 38 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 36 insertions(+), 2 deletions(-) diff --git a/RISC_RTL.md b/RISC_RTL.md index a036db3..d053f0c 100644 --- a/RISC_RTL.md +++ b/RISC_RTL.md @@ -6,15 +6,39 @@ ## RTL ### `lw` - +I-type +Load Word - 23 +``` +R[rt] = M[R[rs]+SignExtImm] +``` ### `sw` +I-type +Store Word - 43 +``` +M[R[rs]+SignExtImm] = R[rt] +``` ### `j` +J-type +Jump - 2 +``` +PC=JumpAdd +``` ### `jr` +R-type Funct 8 +Jump Register - 0 +``` +PC=R[rs] +``` ### `jal` - +J-type +Jump and Link - 3 +``` +R[31] = PC+8; +PC = JumpAddr +``` ### `bne` ### `xori` @@ -24,5 +48,15 @@ ### `add` ### `sub` +R-type Funct 22 +Subtract - 0 +``` +R[rd] = R[rs] - R[rt] +``` ### `slt` +R-type Funct 42 +Set Less Than - 0 +``` +R R[rd] = (R[rs] < R[rt]) ? 1 : 0 +``` From 5fbfd1923274baee50ff3da4c9f3fdfe3cfa9191 Mon Sep 17 00:00:00 2001 From: juicyslew Date: Tue, 7 Nov 2017 19:37:29 -0500 Subject: [PATCH 04/78] Finished RTL sheet --- RISC_RTL.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/RISC_RTL.md b/RISC_RTL.md index d053f0c..e83f5b3 100644 --- a/RISC_RTL.md +++ b/RISC_RTL.md @@ -11,6 +11,7 @@ Load Word - 23 ``` R[rt] = M[R[rs]+SignExtImm] ``` + ### `sw` I-type Store Word - 43 @@ -39,13 +40,35 @@ Jump and Link - 3 R[31] = PC+8; PC = JumpAddr ``` + ### `bne` +I-type +Branch On Not Equal - 5 +``` +if(R[rs]!=R[rt]) + PC=PC+4+BranchAddr +``` ### `xori` +I-type +Xor immediate - 14 +``` +R[rt] = R[rs] | ZeroExtImm +``` ### `addi` +I-type +Add Immediate - 8 +``` +R[rt] = R[rs] + SignExtImm +``` ### `add` +R-Type Funct 8 +Add - 0 +``` +R[rd] = R[rs] + R[rt] +``` ### `sub` R-type Funct 22 From 933bde661bb14bf696986f16c871e5a4356bb2ed Mon Sep 17 00:00:00 2001 From: Halliax Date: Wed, 8 Nov 2017 12:24:01 -0500 Subject: [PATCH 05/78] proofreading RTL reference --- RISC_RTL.md | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/RISC_RTL.md b/RISC_RTL.md index e83f5b3..e9af40f 100644 --- a/RISC_RTL.md +++ b/RISC_RTL.md @@ -1,39 +1,39 @@ # Single cycle MIPS RISC RTL ## Instructions: -`lw`, `sw`, `j`, `jr`, `jal`, `bne`, `xori`, `addi`, `add`, `sub`, `slt` +`LW`, `SW`, `J`, `JR`, `JAL`, `BNE`, `XORI`, `ADDI`, `ADD`, `SUB`, `SLT` ## RTL -### `lw` +### `LW` I-type Load Word - 23 ``` R[rt] = M[R[rs]+SignExtImm] ``` -### `sw` +### `SW` I-type Store Word - 43 ``` M[R[rs]+SignExtImm] = R[rt] ``` -### `j` +### `J` J-type Jump - 2 ``` -PC=JumpAdd +PC=JumpAddr ``` -### `jr` +### `JR` R-type Funct 8 Jump Register - 0 ``` PC=R[rs] ``` -### `jal` +### `JAL` J-type Jump and Link - 3 ``` @@ -41,7 +41,7 @@ R[31] = PC+8; PC = JumpAddr ``` -### `bne` +### `BNE` I-type Branch On Not Equal - 5 ``` @@ -49,37 +49,37 @@ if(R[rs]!=R[rt]) PC=PC+4+BranchAddr ``` -### `xori` +### `XORI` I-type Xor immediate - 14 ``` -R[rt] = R[rs] | ZeroExtImm +R[rt] = R[rs] ^ ZeroExtImm ``` -### `addi` +### `ADDI` I-type Add Immediate - 8 ``` R[rt] = R[rs] + SignExtImm ``` -### `add` +### `ADD` R-Type Funct 8 Add - 0 ``` R[rd] = R[rs] + R[rt] ``` -### `sub` +### `SUB` R-type Funct 22 Subtract - 0 ``` R[rd] = R[rs] - R[rt] ``` -### `slt` +### `SLT` R-type Funct 42 Set Less Than - 0 ``` -R R[rd] = (R[rs] < R[rt]) ? 1 : 0 +R[rd] = (R[rs] < R[rt]) ? 1 : 0 ``` From 59f3c5056be3fe879fab2db71f938ec5b697bb35 Mon Sep 17 00:00:00 2001 From: Halliax Date: Wed, 8 Nov 2017 13:05:12 -0500 Subject: [PATCH 06/78] pull regfile and dependencies from HW4 --- regfile-dependencies/decoders.v | 14 +++++++ regfile-dependencies/mux32to1by32.v | 47 +++++++++++++++++++++++ regfile-dependencies/register32.v | 18 +++++++++ regfile-dependencies/register32zero.v | 16 ++++++++ regfile.v | 54 +++++++++++++++++++++++++++ 5 files changed, 149 insertions(+) create mode 100644 regfile-dependencies/decoders.v create mode 100644 regfile-dependencies/mux32to1by32.v create mode 100644 regfile-dependencies/register32.v create mode 100644 regfile-dependencies/register32zero.v create mode 100644 regfile.v diff --git a/regfile-dependencies/decoders.v b/regfile-dependencies/decoders.v new file mode 100644 index 0000000..bd759c9 --- /dev/null +++ b/regfile-dependencies/decoders.v @@ -0,0 +1,14 @@ +// 32 bit decoder with enable signal +// enable=0: all output bits are 0 +// enable=1: out[address] is 1, all other outputs are 0 +/* Verilator lint_off WIDTH */ +module decoder1to32 +( +output[31:0] out, +input enable, +input[4:0] address +); + + assign out = enable< Date: Wed, 8 Nov 2017 13:46:38 -0500 Subject: [PATCH 07/78] Adds opcode LUT for control signals --- opcodeDecode.v | 80 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 opcodeDecode.v diff --git a/opcodeDecode.v b/opcodeDecode.v new file mode 100644 index 0000000..ec14eb2 --- /dev/null +++ b/opcodeDecode.v @@ -0,0 +1,80 @@ +//----------------------------------------------------------------------------- +// Instruction decode opcode decoder module +//----------------------------------------------------------------------------- + +module opcodeDecode( + input [5:0] opcode, + input [5:0] funct, + output reg reg_wr, + output reg reg_dst, + output reg ALU_src, + output reg [2:0] ALU_ctrl, + output reg mem_wr, + output reg mem_to_reg, + output reg jl, + output reg jal, + output reg jr, + output reg branch, + output reg zero_ext + ); + + // Define opcode localparams + localparam + LW = 6'h23, + SW = 6'h2b, + J = 6'h2, + JAL = 6'h3, + BNE = 6'h5, + XORI = 6'he, + ADDI = 6'h8, + RTYPE = 6'h0; + + // define funct localparams + localparam + r_jr = 6'h8, + r_add = 6'h20, + r_sub = 6'h22, + r_slt = 6'h2a; + + // Concatenate all signals into 1 + // reg_wr, reg_dst, ALU_src, ALU_ctrl, mem_wr, mem_to_reg, jl, jal, jr, branch, zero_ext + reg [12:0] control; + + // combinational block + always @(*) begin + case (opcode) + LW: + control = 13'b1_0100_0010_0000; + SW: + control = 13'b0_0100_0100_0000; + J: + control = 13'b0_0000_0001_0000; + JAL: + control = 13'b1_0000_0001_1000; + BNE: + control = 13'b0_0000_1000_0010; + XORI: + control = 13'b1_0101_0000_0001; + ADDI: + control = 13'b1_0100_0000_0000; + RTYPE: // For R-type instructions we need to check the funct bits + case (funct) + r_jr: + control = 13'b0_0000_0000_0100; + r_add: + control = 13'b1_1000_0000_0000; + r_sub: + control = 13'b1_1000_1000_0000; + r_slt: + control = 13'b1_1001_1000_0000; + default: + control = 13'b0; + endcase + default: // Just NOP if something goes screwy here + control = 13'b0; + endcase + // Split out control signal assignment + {reg_wr, reg_dst, ALU_src, ALU_ctrl, mem_wr, mem_to_reg, jl, jal, jr, branch, zero_ext} = control; + end + +endmodule From f841867013af692751ef1e29ed5ccf179968084f Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Wed, 8 Nov 2017 13:47:00 -0500 Subject: [PATCH 08/78] Adds complete instruction decode module --- instructionDecode.v | 59 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 instructionDecode.v diff --git a/instructionDecode.v b/instructionDecode.v new file mode 100644 index 0000000..87d5bea --- /dev/null +++ b/instructionDecode.v @@ -0,0 +1,59 @@ +//------------------------------------------------------------------------------ +// Instruction decoder module +//------------------------------------------------------------------------------ + +`include "opcodeDecode.v" + +module instructionDecode( + input [31:0] instruction, + output [25:0] target_address, + output [4:0] rs, + output [4:0] rt, + output [4:0] rd, + output [15:0] imm16, + output reg_wr, + output reg_dst, + output ALU_src, + output [2:0] ALU_ctrl, + output mem_wr, + output mem_to_reg, + output jl, + output jal, + output jr, + output branch, + output zero_ext + ); + + wire [5:0] opcode, funct; + + // R-type instructions + assign opcode = instruction[31:26]; + assign rs = instruction[25:21]; + assign rt = instruction[20:16]; + assign rd = instruction[15:11]; + assign funct = instruction[5:0]; + + // J-type instructions + assign imm16 = instruction[15:0]; + + // I-type instructions + assign target_address = instruction[25:0]; + + // Instantiate LUT for opcodes + opcodeDecode op_decoder( + .opcode(opcode), + .funct(funct), + .reg_wr(reg_wr), + .reg_dst(reg_dst), + .ALU_src(ALU_src), + .ALU_ctrl(ALU_ctrl), + .mem_wr(mem_wr), + .mem_to_reg(mem_to_reg), + .jl(jl), + .jal(jal), + .jr(jr), + .branch(branch), + .zero_ext(zero_ext) + ); + +endmodule From c5b00ac8dac3fabdded0da235a7774ad7457f004 Mon Sep 17 00:00:00 2001 From: Halliax Date: Wed, 8 Nov 2017 22:26:29 -0500 Subject: [PATCH 09/78] add behavioral ALU and copied test cases from Lab 1 --- alu.t.v | 287 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ alu.v | 74 +++++++++++++++ 2 files changed, 361 insertions(+) create mode 100644 alu.t.v create mode 100644 alu.v diff --git a/alu.t.v b/alu.t.v new file mode 100644 index 0000000..50b903e --- /dev/null +++ b/alu.t.v @@ -0,0 +1,287 @@ +//Test harness for testing 32 bit ALU +`define code_ADD 3'b000 +`define code_SUB 3'b001 +`define code_XOR 3'b010 +`define code_SLT 3'b011 +`define code_AND 3'b100 +`define code_NAND 3'b101 +`define code_NOR 3'b110 +`define code_OR 3'b111 + +`include "alu.v" + +module ALUTestHarness (); + // Declare registers for inputs + reg signed [31:0] A, B; + reg[2:0] command; + + // Declare output wires + wire cout, ovf, zero; + wire[31:0] out; + + // Instantiate DUT + ALU alu (out, cout, ovf, zero, A, B, command); + + // Declare helper variable registers + + // Set of operands to loop through for ADD, SUB and SLT + reg[191:0] a_vals = { + 32'd400000000, + 32'd1500000000, + -32'd300000000, + -32'd1000000000, + -32'd2147483647, + 32'd5000 + }; + reg[191:0] b_vals = { + 32'd500000000, + 32'd1000000000, + -32'd100000000, + -32'd2000000000, + 32'd2147483647, + 32'd5000 + }; + + // Expected output flags + // cout | ovf | zero + reg[17:0] add_res = { + 3'b000, + 3'b010, + 3'b100, + 3'b110, + 3'b101, + 3'b000 + }; + + // Expected output flags + // cout | ovf | zero + reg[17:0] sub_res = { + 3'b000, + 3'b100, + 3'b000, + 3'b100, + 3'b110, + 3'b101 + }; + + reg[2:0] logic_index; + reg ex_cout, ex_ovf, ex_zero; + reg[3:0] add_index; + reg[15:0] testfailed; + + initial begin + $dumpfile("alu.vcd"); + $dumpvars(0, alu); + testfailed = 0; + + $display("Test Commence"); + + // Test Worst Case Delay + // Setup by doing SLT on -2147483648 1 + A = -2147483648; B = 1; command = `code_SLT; #2000 + + if ( out != 32'b1 ) begin + testfailed = testfailed +1; + $display("Test SLT A:%b B:%b Failed, Expected Out:%b, Got Out:%b", A, B, 32'b1, out); + end + + // Next measure delay for SLT on 0 0 + A = 0; B = 0; #2000 + if ( out != 32'b0 ) begin + testfailed = testfailed +1; + $display("Test SLT A:%b B:%b Failed, Expected Out:%b, Got Out:%b", A, B, 32'b0, out); + end + + + // Test block logic to check all of the bits + command = `code_XOR; + for (logic_index = 0; logic_index < 4; logic_index = logic_index + 1) begin + A = (logic_index[0]==0) ? 32'd0 : 32'd2147483647; + B = (logic_index[1]==0) ? 32'd0 : 32'd2147483647;#2000 + if (out != (A^B)) begin + testfailed = testfailed +1; + $display("Test XOR A:%b B:%b Failed, Expected Out:%b Got Out:%b", A, B, A^B, out); + end + if (cout == 1 || ovf == 1 || zero == 1) begin + testfailed = testfailed +1; + $display("Test XOR A:%b B:%b Failed, Produced Flags cout:%b, ovf:%b, zero:%b", A, B, cout, ovf, zero); + end + end + + command = `code_AND; + for (logic_index = 0; logic_index < 4; logic_index = logic_index + 1) begin + A = (logic_index[0]==0) ? 32'd0 : -32'd1; + B = (logic_index[1]==0) ? 32'd0 : -32'd1;#2000 + if (out != (A&B)) begin + testfailed = testfailed +1; + $display("Test AND A:%b B:%b Failed, Expected Out:%b Got Out:%b", A, B, A&B, out); + end + if (cout == 1 || ovf == 1 || zero == 1) begin + testfailed = testfailed +1; + $display("Test AND A:%b B:%b Failed, Produced Flags cout:%b, ovf:%b, zero:%b", A, B, cout, ovf, zero); + end + end + + command = `code_NAND; + for (logic_index = 0; logic_index < 4; logic_index = logic_index + 1) begin + A = (logic_index[0]==0) ? 32'd0 : -32'd1; + B = (logic_index[1]==0) ? 32'd0 : -32'd1;#2000 + if (out != (A~&B)) begin + testfailed = testfailed +1; + $display("Test NAND A:%b B:%b Failed, Expected Out:%b Got Out:%b", A, B, A~&B, out); + end + if (cout == 1 || ovf == 1 || zero == 1) begin + testfailed = testfailed +1; + $display("Test NAND A:%b B:%b Failed, Produced Flags cout:%b, ovf:%b, zero:%b", A, B, cout, ovf, zero); + end + end + + command = `code_NOR; + for (logic_index = 0; logic_index < 4; logic_index = logic_index + 1) begin + A = (logic_index[0]==0) ? 32'd0 : -32'd1; + B = (logic_index[1]==0) ? 32'd0 : -32'd1;#2000 + if (out != (A~|B)) begin + testfailed = testfailed +1; + $display("Test NOR A:%b B:%b Failed, Expected Out:%b Got Out:%b", A, B, A~|B, out); + end + if (cout == 1 || ovf == 1 || zero == 1) begin + testfailed = testfailed +1; + $display("Test NOR A:%b B:%b Failed, Produced Flags cout:%b, ovf:%b, zero:%b", A, B, cout, ovf, zero); + end + end + + command = `code_OR; + for (logic_index = 0; logic_index < 4; logic_index = logic_index + 1) begin + A = (logic_index[0]==0) ? 32'd0 : -32'd1; + B = (logic_index[1]==0) ? 32'd0 : -32'd1;#2000 + if (out != (A|B)) begin + testfailed = testfailed +1; + $display("Test OR A:%b B:%b Failed, Expected Out:%b Got Out:%b", A, B, A|B, out); + end + if (cout == 1 || ovf == 1 || zero == 1) begin + testfailed = testfailed +1; + $display("Test OR A:%b B:%b Failed, Produced Flags cout:%b, ovf:%b, zero:%b", A, B, cout, ovf, zero); + end + end + + + // Test all signals in ADD by using all bits for a non-zero result + command = `code_ADD; + // 0111... + 1111... + A = 2147483647; B = -1;#2000 + if (out != 2147483646) begin + testfailed = testfailed +1; + $display("Test ADD A:%b B:%b Failed, Expected Out:%b Got Out:%b", A, B, 2147483646, out); + end + + // 1111... + 1000... + A = -1; B = 32'b1<<31;#2000 + if (out != 2147483647) begin + testfailed = testfailed +1; + $display("Test ADD A:%b B:%b Failed, Expected Out:%b Got Out:%b", A, B, 2147483647, out); + end + + // Test a few internal carries for ADD + // ...0001 + ...0001 + A = 32'b1; B = 32'b1;#2000 + if (out != 32'b10) begin + testfailed = testfailed +1; + $display("Test ADD A:%b B:%b Failed, Expected Out:%b Got Out:%b", A, B, 32'b10, out); + end + + // ...0010 + 0010 + A = 32'b10; B =32'b10;#2000 + if (out != 32'b100) begin + testfailed = testfailed +1; + $display("Test ADD A:%b B:%b Failed, Expected Out:%b Got Out:%b", A, B, 32'b100, out); + end + + // 0100... + 0100... + A = 32'b1<<30; B = 32'b1<<30 ;#2000 + if (out != 32'b1<<31) begin + testfailed = testfailed +1; + $display("Test ADD A:%b B:%b Failed, Expected Out:%b Got Out:%b", A, B, 32'b1<<31, out); + end + + // 1000... + 1000... + A = 32'b1<<31; B = 32'b1<<31 ;#2000 + if (out != 32'b0) begin + testfailed = testfailed +1; + $display("Test ADD A:%b B:%b Failed, Expected Out:%b Got Out:%b", A, B, 32'b0, out); + end + + + // ADD SUB SLT interesting cases + command = `code_ADD; + for (add_index = 0; add_index<6; add_index = add_index + 1) begin + A = a_vals[((add_index*32)-1)-:32]; // Grab the relevant chunk of the register of queued operations + B = b_vals[((add_index*32)-1)-:32];#2000 + {ex_cout,ex_ovf,ex_zero} = add_res[((add_index*3)-1)-:3]; + + if (out != (A+B)) begin + testfailed = testfailed +1; + $display("Test ADD A:%d B:%d Failed, Expected Out:%d Got Out:%d", A, B, A+B, out); + end + if (cout != ex_cout) begin + testfailed = testfailed +1; + $display("Test ADD A:%d B:%d Failed, Expected cout:%d Got cout:%d", A, B, ex_cout, cout); + end + if (ovf != ex_ovf) begin + testfailed = testfailed +1; + $display("Test ADD A:%d B:%d Failed, Expected ovf:%d Got ovf:%d", A, B, ex_ovf, ovf); + end + if (zero != ex_zero) begin + testfailed = testfailed +1; + $display("Test ADD A:%d B:%d Failed, Expected zero:%d Got zero:%d", A, B, ex_zero, zero); + end + end + + //SUB + command = `code_SUB; + for (add_index = 0; add_index<6; add_index = add_index + 1) begin + A = a_vals[((add_index*32)-1)-:32]; // Grab the relevant chunk of the register of queued operations + B = b_vals[((add_index*32)-1)-:32];#2000 + {ex_cout,ex_ovf,ex_zero} = sub_res[((add_index*3)-1)-:3]; + + if (out != (A-B)) begin + testfailed = testfailed +1; + $display("Test SUB A:%d B:%d Failed, Expected Out:%d Got Out:%d", A, B, A-B, out); + end + if (cout != ex_cout) begin + testfailed = testfailed +1; + $display("Test SUB A:%d B:%d Failed, Expected cout:%d Got cout:%d", A, B, ex_cout, cout); + end + if (ovf != ex_ovf) begin + testfailed = testfailed +1; + $display("Test SUB A:%d B:%d Failed, Expected ovf:%d Got ovf:%d", A, B, ex_ovf, ovf); + end + if (zero != ex_zero) begin + testfailed = testfailed +1; + $display("Test SUB A:%d B:%d Failed, Expected zero:%d Got zero:%d", A, B, ex_zero, zero); + end + end + + //SLT + command = `code_SLT; + for (add_index = 0; add_index<6; add_index = add_index + 1) begin + A = a_vals[((add_index*32)-1)-:32]; // Grab the relevant chunk of the register of queued operations + B = b_vals[((add_index*32)-1)-:32];#2000 + + if (out != ((A 0) begin + $display(" %d Tests Failed", testfailed); + end else begin + $display(" Tests Passed!"); + end + + end +endmodule diff --git a/alu.v b/alu.v new file mode 100644 index 0000000..fcf656e --- /dev/null +++ b/alu.v @@ -0,0 +1,74 @@ +// //4 bit ALU module +// `define NOR nor #20 +// `define AND and #30 +// `define OR or #30 +// `define XOR xor #30 + +// `include "BitSlice.v" +// `include "ALUcontrolLUT.v" + +module ALU +( + output reg [31:0] out, + output reg carryout, ovf, zero, + input signed[31:0] a, + input signed[31:0] b, + input[2:0] cmd +); + localparam + ADD = 3'd0, + SUB = 3'd1, + XOR = 3'd2, + SLT = 3'd3, + AND = 3'd4, + NAND = 3'd5, + NOR = 3'd6, + OR = 3'd7; + + always @(*) begin + case (cmd) + ADD: begin + {carryout, out} = {1'b0, a} + {1'b0, b}; + ovf = (a[31] ~^ b[31]) && (a[31] ^ out[31]) ? 1 : 0; + zero = (a + b == 0) ? 1 : 0; + end + + SUB: begin + {carryout, out} = {1'b0, a} + {1'b0, ~b} + 32'b1; + ovf = (a[31] ^ b[31]) && (a[31] ^ out[31]) ? 1 : 0; + zero = (a - b == 0) ? 1 : 0; + end + + XOR: begin + out = a ^ b; + {carryout, ovf, zero} = 3'b0; + end + + SLT: begin + out = (a < b) ? 32'b1 : 0; + {carryout, ovf, zero} = 3'b0; + end + + AND: begin + out = a & b; + {carryout, ovf, zero} = 3'b0; + end + + NAND: begin + out = a ~& b; + {carryout, ovf, zero} = 3'b0; + end + + NOR: begin + out = a ~| b; + {carryout, ovf, zero} = 3'b0; + end + + OR: begin + out = a | b; + {carryout, ovf, zero} = 3'b0; + end + endcase + end + +endmodule From ce89691448178e44f04576355b1dbe11e7d391ec Mon Sep 17 00:00:00 2001 From: Halliax Date: Wed, 8 Nov 2017 22:27:03 -0500 Subject: [PATCH 10/78] add gitignore --- .gitignore | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8439a9d --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +*~ +*.out +*.vcd From b426b647756f21a54dbc8012bef6296546e2fde4 Mon Sep 17 00:00:00 2001 From: Halliax Date: Wed, 8 Nov 2017 22:27:03 -0500 Subject: [PATCH 11/78] add gitignore --- .gitignore | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8439a9d --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +*~ +*.out +*.vcd From 79d873fc3175ec5b859824cde8380f98d4a19866 Mon Sep 17 00:00:00 2001 From: Halliax Date: Wed, 8 Nov 2017 22:44:33 -0500 Subject: [PATCH 12/78] add sign extend module, comment block on ALU --- alu.v | 17 ++++++++--------- signExtend.v | 17 +++++++++++++++++ 2 files changed, 25 insertions(+), 9 deletions(-) create mode 100644 signExtend.v diff --git a/alu.v b/alu.v index fcf656e..9e900bf 100644 --- a/alu.v +++ b/alu.v @@ -1,15 +1,14 @@ -// //4 bit ALU module -// `define NOR nor #20 -// `define AND and #30 -// `define OR or #30 -// `define XOR xor #30 - -// `include "BitSlice.v" -// `include "ALUcontrolLUT.v" +//------------------------------------------------------------------------------ +// Arithmetic Logic Unit +// 2 inputs of width: 32 bits +// input: 3 bit control signal +// output width: 32 bits +// output: carryout, overflow, zero flags +//------------------------------------------------------------------------------ module ALU ( - output reg [31:0] out, + output reg[31:0] out, output reg carryout, ovf, zero, input signed[31:0] a, input signed[31:0] b, diff --git a/signExtend.v b/signExtend.v new file mode 100644 index 0000000..6f0856e --- /dev/null +++ b/signExtend.v @@ -0,0 +1,17 @@ +//------------------------------------------------------------------------------ +// Sign Extend or Zero Extend +// input: 16 bit immediate +// input: 1 bit selector signal +// output width: 32 bits +//------------------------------------------------------------------------------ + +module signExtend +( + input[15:0] imm16, + input zeroExtend, + output[31:0] out +); + + assign out = zeroExtend ? {16'b0, imm16} : {{16{imm16[15]}}, imm16}; + +endmodule From f61e616a85da28ec90a9b602e15fa95004d2848b Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Wed, 8 Nov 2017 13:46:38 -0500 Subject: [PATCH 13/78] Adds opcode LUT for control signals --- opcodeDecode.v | 80 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 opcodeDecode.v diff --git a/opcodeDecode.v b/opcodeDecode.v new file mode 100644 index 0000000..ec14eb2 --- /dev/null +++ b/opcodeDecode.v @@ -0,0 +1,80 @@ +//----------------------------------------------------------------------------- +// Instruction decode opcode decoder module +//----------------------------------------------------------------------------- + +module opcodeDecode( + input [5:0] opcode, + input [5:0] funct, + output reg reg_wr, + output reg reg_dst, + output reg ALU_src, + output reg [2:0] ALU_ctrl, + output reg mem_wr, + output reg mem_to_reg, + output reg jl, + output reg jal, + output reg jr, + output reg branch, + output reg zero_ext + ); + + // Define opcode localparams + localparam + LW = 6'h23, + SW = 6'h2b, + J = 6'h2, + JAL = 6'h3, + BNE = 6'h5, + XORI = 6'he, + ADDI = 6'h8, + RTYPE = 6'h0; + + // define funct localparams + localparam + r_jr = 6'h8, + r_add = 6'h20, + r_sub = 6'h22, + r_slt = 6'h2a; + + // Concatenate all signals into 1 + // reg_wr, reg_dst, ALU_src, ALU_ctrl, mem_wr, mem_to_reg, jl, jal, jr, branch, zero_ext + reg [12:0] control; + + // combinational block + always @(*) begin + case (opcode) + LW: + control = 13'b1_0100_0010_0000; + SW: + control = 13'b0_0100_0100_0000; + J: + control = 13'b0_0000_0001_0000; + JAL: + control = 13'b1_0000_0001_1000; + BNE: + control = 13'b0_0000_1000_0010; + XORI: + control = 13'b1_0101_0000_0001; + ADDI: + control = 13'b1_0100_0000_0000; + RTYPE: // For R-type instructions we need to check the funct bits + case (funct) + r_jr: + control = 13'b0_0000_0000_0100; + r_add: + control = 13'b1_1000_0000_0000; + r_sub: + control = 13'b1_1000_1000_0000; + r_slt: + control = 13'b1_1001_1000_0000; + default: + control = 13'b0; + endcase + default: // Just NOP if something goes screwy here + control = 13'b0; + endcase + // Split out control signal assignment + {reg_wr, reg_dst, ALU_src, ALU_ctrl, mem_wr, mem_to_reg, jl, jal, jr, branch, zero_ext} = control; + end + +endmodule From 9e4cf1a81509af59a0ade7d65e66f6a8ed9c826f Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Wed, 8 Nov 2017 13:47:00 -0500 Subject: [PATCH 14/78] Adds complete instruction decode module --- instructionDecode.v | 59 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 instructionDecode.v diff --git a/instructionDecode.v b/instructionDecode.v new file mode 100644 index 0000000..87d5bea --- /dev/null +++ b/instructionDecode.v @@ -0,0 +1,59 @@ +//------------------------------------------------------------------------------ +// Instruction decoder module +//------------------------------------------------------------------------------ + +`include "opcodeDecode.v" + +module instructionDecode( + input [31:0] instruction, + output [25:0] target_address, + output [4:0] rs, + output [4:0] rt, + output [4:0] rd, + output [15:0] imm16, + output reg_wr, + output reg_dst, + output ALU_src, + output [2:0] ALU_ctrl, + output mem_wr, + output mem_to_reg, + output jl, + output jal, + output jr, + output branch, + output zero_ext + ); + + wire [5:0] opcode, funct; + + // R-type instructions + assign opcode = instruction[31:26]; + assign rs = instruction[25:21]; + assign rt = instruction[20:16]; + assign rd = instruction[15:11]; + assign funct = instruction[5:0]; + + // J-type instructions + assign imm16 = instruction[15:0]; + + // I-type instructions + assign target_address = instruction[25:0]; + + // Instantiate LUT for opcodes + opcodeDecode op_decoder( + .opcode(opcode), + .funct(funct), + .reg_wr(reg_wr), + .reg_dst(reg_dst), + .ALU_src(ALU_src), + .ALU_ctrl(ALU_ctrl), + .mem_wr(mem_wr), + .mem_to_reg(mem_to_reg), + .jl(jl), + .jal(jal), + .jr(jr), + .branch(branch), + .zero_ext(zero_ext) + ); + +endmodule From d7a6fa0027cb30227da8716cd90c34a2d061bc73 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Sun, 12 Nov 2017 21:39:22 -0500 Subject: [PATCH 15/78] Make module parameter definition conform to output, input style --- instructionDecode.v | 10 +++++----- opcodeDecode.v | 6 +++--- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/instructionDecode.v b/instructionDecode.v index 87d5bea..3d3eed8 100644 --- a/instructionDecode.v +++ b/instructionDecode.v @@ -5,7 +5,6 @@ `include "opcodeDecode.v" module instructionDecode( - input [31:0] instruction, output [25:0] target_address, output [4:0] rs, output [4:0] rt, @@ -21,7 +20,8 @@ module instructionDecode( output jal, output jr, output branch, - output zero_ext + output zero_ext, + input [31:0] instruction ); wire [5:0] opcode, funct; @@ -41,8 +41,6 @@ module instructionDecode( // Instantiate LUT for opcodes opcodeDecode op_decoder( - .opcode(opcode), - .funct(funct), .reg_wr(reg_wr), .reg_dst(reg_dst), .ALU_src(ALU_src), @@ -53,7 +51,9 @@ module instructionDecode( .jal(jal), .jr(jr), .branch(branch), - .zero_ext(zero_ext) + .zero_ext(zero_ext), + .opcode(opcode), + .funct(funct) ); endmodule diff --git a/opcodeDecode.v b/opcodeDecode.v index ec14eb2..8587c78 100644 --- a/opcodeDecode.v +++ b/opcodeDecode.v @@ -3,8 +3,6 @@ //----------------------------------------------------------------------------- module opcodeDecode( - input [5:0] opcode, - input [5:0] funct, output reg reg_wr, output reg reg_dst, output reg ALU_src, @@ -15,7 +13,9 @@ module opcodeDecode( output reg jal, output reg jr, output reg branch, - output reg zero_ext + output reg zero_ext, + input [5:0] opcode, + input [5:0] funct ); // Define opcode localparams From 42ea8dccff8eb78f9a33293375f4352857581201 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Sun, 12 Nov 2017 21:39:22 -0500 Subject: [PATCH 16/78] Make module parameter definition conform to output, input style --- instructionDecode.v | 10 +++++----- opcodeDecode.v | 6 +++--- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/instructionDecode.v b/instructionDecode.v index 87d5bea..3d3eed8 100644 --- a/instructionDecode.v +++ b/instructionDecode.v @@ -5,7 +5,6 @@ `include "opcodeDecode.v" module instructionDecode( - input [31:0] instruction, output [25:0] target_address, output [4:0] rs, output [4:0] rt, @@ -21,7 +20,8 @@ module instructionDecode( output jal, output jr, output branch, - output zero_ext + output zero_ext, + input [31:0] instruction ); wire [5:0] opcode, funct; @@ -41,8 +41,6 @@ module instructionDecode( // Instantiate LUT for opcodes opcodeDecode op_decoder( - .opcode(opcode), - .funct(funct), .reg_wr(reg_wr), .reg_dst(reg_dst), .ALU_src(ALU_src), @@ -53,7 +51,9 @@ module instructionDecode( .jal(jal), .jr(jr), .branch(branch), - .zero_ext(zero_ext) + .zero_ext(zero_ext), + .opcode(opcode), + .funct(funct) ); endmodule diff --git a/opcodeDecode.v b/opcodeDecode.v index ec14eb2..8587c78 100644 --- a/opcodeDecode.v +++ b/opcodeDecode.v @@ -3,8 +3,6 @@ //----------------------------------------------------------------------------- module opcodeDecode( - input [5:0] opcode, - input [5:0] funct, output reg reg_wr, output reg reg_dst, output reg ALU_src, @@ -15,7 +13,9 @@ module opcodeDecode( output reg jal, output reg jr, output reg branch, - output reg zero_ext + output reg zero_ext, + input [5:0] opcode, + input [5:0] funct ); // Define opcode localparams From 2422b9d1a552fd457c52299bd22953d22f08a29c Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Sun, 12 Nov 2017 21:50:50 -0500 Subject: [PATCH 17/78] Fix output, input convention of signExtend --- signExtend.v | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/signExtend.v b/signExtend.v index 6f0856e..95d3a76 100644 --- a/signExtend.v +++ b/signExtend.v @@ -7,9 +7,9 @@ module signExtend ( + output[31:0] out, input[15:0] imm16, - input zeroExtend, - output[31:0] out + input zeroExtend ); assign out = zeroExtend ? {16'b0, imm16} : {{16{imm16[15]}}, imm16}; From e9e227b14578ec5732569d1c6eaf91a32ad3c553 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Sun, 12 Nov 2017 22:20:31 -0500 Subject: [PATCH 18/78] Port over data memory from Lab2 --- dataMemory.v | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 dataMemory.v diff --git a/dataMemory.v b/dataMemory.v new file mode 100644 index 0000000..20f0dca --- /dev/null +++ b/dataMemory.v @@ -0,0 +1,29 @@ +//------------------------------------------------------------------------ +// Data Memory +// Positive edge triggered +// dataOut always has the value mem[address] +// If writeEnable is true, writes dataIn to mem[address] +//------------------------------------------------------------------------ + +module dataMemory +#( + parameter addresswidth = 7, + parameter depth = 2**addresswidth, + parameter width = 8 +) +( + output reg [width-1:0] dataOut, + input [addresswidth-1:0] address, + input writeEnable, + input [width-1:0] dataIn, + input clk +); + reg [width-1:0] memory [depth-1:0]; + + always @(posedge clk) begin + if(writeEnable) + memory[address] <= dataIn; + dataOut <= memory[address]; + end + +endmodule From d2fa357b50374cb5f0cdda401aa1e59375a6953f Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Sun, 12 Nov 2017 22:20:54 -0500 Subject: [PATCH 19/78] Implement full data path --- dataPath.v | 73 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 dataPath.v diff --git a/dataPath.v b/dataPath.v new file mode 100644 index 0000000..c1fb701 --- /dev/null +++ b/dataPath.v @@ -0,0 +1,73 @@ +//------------------------------------------------------------------------------ +// Instruction decoder module +//------------------------------------------------------------------------------ + +`include "alu.v" +`include "dataMemory.v" +`include "regfile.v" +`include "signExtend.v" + +module dataPath( + output carryout, ovf, zero, + output [31:0] Da, + input [29:0] PC, + input [4:0] Rs, + input [4:0] Rt, + input [4:0] Rd, + input [15:0] imm16, + input reg_wr, + input reg_dst, + input ALU_src, + input [2:0] ALU_ctrl, + input mem_wr, + input mem_to_reg, + input jl, + input jal, + input jr, + input branch, + input zero_ext, + input clk + ); + + // Declare internal wires + wire [4:0] dest_reg; // Output of reg_dst mux + wire [4:0] Aw; // Output of jal mux + wire [31:0] Dw; // Output of writeback/PC+8 mux for JAL + wire [31:0] se_ze_imm16; // Output of sign/zero extender + wire [31:0] A, B; // Inputs to ALU + wire [31:0] ALU_out; // Output of ALU + wire [31:0] writeback; // Output of mem_to_reg mux + wire [31:0] Db; // Output of regfile Db + wire [31:0] mem_dout; // Output of memory + + // Set up MUXes for regfile write address + assign dest_reg = reg_dst ? Rd : Rt; + assign Aw = jal ? 5'd31 : dest_reg; + + // Set up jal link register mux + assign Dw = jal ? ((PC << 2) + 32'd8) : writeback; + + // Set up regfile + regfile reg_file(Da, Db, Dw, Rs, Rt, Aw, reg_wr, clk); + + // Set up ALU immediate/register source mux + assign B = ALU_src ? se_ze_imm16 : Db; + signExtend sign_extend(B, imm16, zero_ext); + + // Set up ALU + assign A = Da; + ALU alu(ALU_out, carryout, ovf, zero, A, B, ALU_ctrl); + + // Set up data memory + dataMemory #(32,2**32,32) data_mem (mem_dout, ALU_out, mem_wr, Db, clk); + + // Set up load/result mux + assign writeback = mem_to_reg ? mem_dout : ALU_out; + + + + + + + +endmodule From d8d9f109134950c94295fcbd6dd1e841b307571f Mon Sep 17 00:00:00 2001 From: juicyslew Date: Sun, 12 Nov 2017 22:37:49 -0500 Subject: [PATCH 20/78] making Instruction Fetch --- InstructionFetch.v | 30 ++++++++++++++++++++++++++++++ InstructionMemory.v | 21 +++++++++++++++++++++ Memories/addingtest.dat | 9 +++++++++ Memories/mips1.asm | 11 +++++++++++ 4 files changed, 71 insertions(+) create mode 100644 InstructionFetch.v create mode 100644 InstructionMemory.v create mode 100644 Memories/addingtest.dat create mode 100644 Memories/mips1.asm diff --git a/InstructionFetch.v b/InstructionFetch.v new file mode 100644 index 0000000..260a2e4 --- /dev/null +++ b/InstructionFetch.v @@ -0,0 +1,30 @@ +`include "regfile-dependencies/register32.v" +`include "signExtend.v" + +module InstructionFetchUnit +( + output[31:0] Instr, + input[25:0] TargetAddr, + input Imm16, + input zero, + input Branch, + input Da, + input jr, + input j, + input clk +); + //Jumping + wire[31:0] regOut; + wire[31:0] currAddr; + register32 PC (regOut, currAddr, 1'b1, clk); + wire[31:0] jumpaddr; + assign jumpaddr = {currAddr[31:28],TargetAddr, 2'b00}; + wire nextAddr; + + //Branching and continuing + wire muxsig1; + assign muxsig1 = (not zero && Branch); + wire add; + SignExtend(Imm16, 1'b0) + assign +endmodule diff --git a/InstructionMemory.v b/InstructionMemory.v new file mode 100644 index 0000000..2d3155e --- /dev/null +++ b/InstructionMemory.v @@ -0,0 +1,21 @@ +module InstructionMemory +( + output[31:0] DataOut, + input clk, regWE, + input[9:0] Addr, + input[31:0] DataIn +); + + reg[31:0] mem[1023:0]; + + + initial $readmemh("Memories/addingtest.dat", mem);//Memories/mips1.asm + + always @(posedge clk) begin + if (regWE) begin + mem[Addr] <= DataIn; + end + end + + assign DataOut = mem[Addr]; +endmodule diff --git a/Memories/addingtest.dat b/Memories/addingtest.dat new file mode 100644 index 0000000..278c9e5 --- /dev/null +++ b/Memories/addingtest.dat @@ -0,0 +1,9 @@ +2008000a +20090009 +200a000d +200b0010 +200c000c +01096820 +01aa6820 +01ab6820 +01ac6820 diff --git a/Memories/mips1.asm b/Memories/mips1.asm new file mode 100644 index 0000000..84d55d3 --- /dev/null +++ b/Memories/mips1.asm @@ -0,0 +1,11 @@ + +addi $t0, $zero, 10 +addi $t1, $zero, 9 +addi $t2, $zero, 13 +addi $t3, $zero, 16 +addi $t4, $zero, 12 + +add $t5, $t0, $t1 +add $t5, $t5, $t2 +add $t5, $t5, $t3 +add $t5, $t5, $t4 From eade4cf3cbdffcf7ce008b00c17379811a7efff3 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Sun, 12 Nov 2017 23:01:53 -0500 Subject: [PATCH 21/78] Add top level single cycle CPU interconnect module --- singleCycleCPU.v | 94 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 94 insertions(+) create mode 100644 singleCycleCPU.v diff --git a/singleCycleCPU.v b/singleCycleCPU.v new file mode 100644 index 0000000..2fab070 --- /dev/null +++ b/singleCycleCPU.v @@ -0,0 +1,94 @@ +//------------------------------------------------------------------------------ +// 32-bit Single Cycle CPU top level module +// Implements MIPS reduced ISA of: +// `LW`, `SW`, `J`, `JR`, `JAL`, `BNE`, `XORI`, `ADDI`, `ADD`, `SUB`, `SLT` +// 4Gb memory, single-cycle operation +//------------------------------------------------------------------------------ + +`include "dataPath.v" +`include "instructionFetch.v" +`include "instructionDecode.v" + +module singleCycleCPU ( + input clk + ); + + wire carryout, ovf, zero; + wire [31:0] Da; + wire [29:0] PC; + wire [25:0] target_address; + wire [4:0] rs; + wire [4:0] rt; + wire [4:0] rd; + wire [15:0] imm16; + wire reg_wr; + wire reg_dst; + wire ALU_src; + wire [2:0] ALU_ctrl; + wire mem_wr; + wire mem_to_reg; + wire jl; + wire jal; + wire jr; + wire branch; + wire zero_ext; + wire [31:0] instruction; + + instructionFetch instr_fetch( + instruction, + PC, + target_address, + imm16, + zero, + branch, + Da, + jr, + jl, + clk + ); + + instructionDecode instr_decode( + target_address, + rs, + rt, + rd, + imm16, + reg_wr, + reg_dst, + ALU_src, + ALU_ctrl, + mem_wr, + mem_to_reg, + jl, + jal, + jr, + branch, + zero_ext, + instruction + ); + + dataPath data_path( + carryout, ovf, zero, + Da, + PC, + rs, + rt, + rd, + imm16, + reg_wr, + reg_dst, + ALU_src, + ALU_ctrl, + mem_wr, + mem_to_reg, + jl, + jal, + jr, + branch, + zero_ext, + clk + ); + + + +endmodule From 2a8d34d41f8fbde3a710b3c1b8338c64ccf0ebe0 Mon Sep 17 00:00:00 2001 From: juicyslew Date: Sun, 12 Nov 2017 23:14:05 -0500 Subject: [PATCH 22/78] Instruction Fetch and Memory --- InstructionFetch.v | 38 +++++++++++++++++++++++--------------- InstructionMemory.v | 9 +++++---- 2 files changed, 28 insertions(+), 19 deletions(-) diff --git a/InstructionFetch.v b/InstructionFetch.v index 260a2e4..090d6cf 100644 --- a/InstructionFetch.v +++ b/InstructionFetch.v @@ -1,30 +1,38 @@ `include "regfile-dependencies/register32.v" `include "signExtend.v" +`include "alu.v" +`include "InstructionMemory.v" -module InstructionFetchUnit +module InstructionFetch ( output[31:0] Instr, + output[9:0] PC, input[25:0] TargetAddr, - input Imm16, + input[15:0] Imm16, input zero, input Branch, - input Da, + input[31:0] Da, input jr, - input j, + input jl, input clk ); //Jumping - wire[31:0] regOut; - wire[31:0] currAddr; - register32 PC (regOut, currAddr, 1'b1, clk); + wire[31:0] newAddr; wire[31:0] jumpaddr; - assign jumpaddr = {currAddr[31:28],TargetAddr, 2'b00}; - wire nextAddr; - - //Branching and continuing + wire[31:0] addunit; + wire[31:0] added; + wire[31:0] same_branch_addr; + wire[31:0] signextimm; wire muxsig1; - assign muxsig1 = (not zero && Branch); - wire add; - SignExtend(Imm16, 1'b0) - assign + //wire nextAddr; + register32 PC_module (PC, newAddr, 1'b1, clk); + signExtend IF_SE (signextimm, Imm16, 1'b0); + InstructionMemory InstMem(Instr, {PC[31:2], 2'b00}, clk); + assign jumpaddr = {PC[31:28],TargetAddr, 2'b00}; + assign muxsig1 = (!zero && Branch); + assign addunit = muxsig1 ? signextimm : 32'b0; + assign added = addunit + PC + 1; + assign same_branch_addr = jr ? Da : added; + assign newAddr = jl ? jumpaddr : same_branch_addr; + endmodule diff --git a/InstructionMemory.v b/InstructionMemory.v index 2d3155e..596401c 100644 --- a/InstructionMemory.v +++ b/InstructionMemory.v @@ -1,9 +1,10 @@ module InstructionMemory ( output[31:0] DataOut, - input clk, regWE, + //input regWE, //for actual memory input[9:0] Addr, - input[31:0] DataIn + //input[31:0] DataIn, //this is for the actual memory + input clk ); reg[31:0] mem[1023:0]; @@ -11,11 +12,11 @@ module InstructionMemory initial $readmemh("Memories/addingtest.dat", mem);//Memories/mips1.asm - always @(posedge clk) begin + /*always @(posedge clk) begin if (regWE) begin mem[Addr] <= DataIn; end - end + end*/ //This is for the actual memory assign DataOut = mem[Addr]; endmodule From 8d5c83d53ee222e4c50aae064feb38f61ce51165 Mon Sep 17 00:00:00 2001 From: juicyslew Date: Sun, 12 Nov 2017 23:21:56 -0500 Subject: [PATCH 23/78] slight modification to instruction fetch --- InstructionFetch.v | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/InstructionFetch.v b/InstructionFetch.v index 090d6cf..1471162 100644 --- a/InstructionFetch.v +++ b/InstructionFetch.v @@ -6,7 +6,7 @@ module InstructionFetch ( output[31:0] Instr, - output[9:0] PC, + output[31:0] PC, input[25:0] TargetAddr, input[15:0] Imm16, input zero, From 7891a78bae5e0bd173329f120b0ea9202f667f77 Mon Sep 17 00:00:00 2001 From: Sam Myers Date: Mon, 13 Nov 2017 13:32:18 -0500 Subject: [PATCH 24/78] Quicksort in C. Currently segfaults. --- quicksort.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 quicksort.c diff --git a/quicksort.c b/quicksort.c new file mode 100644 index 0000000..52c05ed --- /dev/null +++ b/quicksort.c @@ -0,0 +1,33 @@ +int partition(int *arr, int start, int end) { + int pivot = arr[end]; + int i = start - 1; + for (int j = start; j <= end - 1; j++) { + if (arr[j] <= pivot) { + i++; + int temp = arr[i]; + arr[i] = arr[j]; + arr[j] = temp; + } + } + int temp = arr[i + 1]; + arr[i + 1] = arr[end]; + arr[end] = temp; + return i + 1; +} + +void quicksort(int *arr, int start, int end) { + if (start < end) { + int pivot = partition(arr, start, end); + quicksort(arr, start, pivot - 1); + quicksort(arr, pivot + 1, end); + } +} + +int main() { + int arr[] = { 9, 5, 3, 6, 2, 8, 7, 3, 1, 4 }; + quicksort(arr, 0, 9); + for (int i = 0; i < 10; i++) { + printf(arr[i]); + } + return 0; +} From b6bc73015881ac5230b7a359919226b9ff7ea84b Mon Sep 17 00:00:00 2001 From: Sam Myers Date: Mon, 13 Nov 2017 14:01:38 -0500 Subject: [PATCH 25/78] Fixed segfault. --- quicksort.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/quicksort.c b/quicksort.c index 52c05ed..77c7142 100644 --- a/quicksort.c +++ b/quicksort.c @@ -1,3 +1,5 @@ +#include + int partition(int *arr, int start, int end) { int pivot = arr[end]; int i = start - 1; @@ -27,7 +29,7 @@ int main() { int arr[] = { 9, 5, 3, 6, 2, 8, 7, 3, 1, 4 }; quicksort(arr, 0, 9); for (int i = 0; i < 10; i++) { - printf(arr[i]); + printf("%d\n", arr[i]); } return 0; } From 03343fe418dacc2bb66fad168f45706de8b46e1f Mon Sep 17 00:00:00 2001 From: Halliax Date: Mon, 13 Nov 2017 16:29:12 -0500 Subject: [PATCH 26/78] hand-rolled assembly is pain itself --- quicksort.asm | 97 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 quicksort.asm diff --git a/quicksort.asm b/quicksort.asm new file mode 100644 index 0000000..4b44d40 --- /dev/null +++ b/quicksort.asm @@ -0,0 +1,97 @@ +# $v0 = return val +# $s0 = arr* +# $a0 = start +# $a1 = end +# $t0 = pivot +# $t1 = addr (for data address calculations) +# $t2 = multiply counter temporary +# $t3 = branch check temporary (for xori and slt) +# $t4 = i (counter) +# $t5 = j (counter) +# $t6 = temp +# $t7 = arr[i] +# $t8 = arr[j] + +partition: +# ----------------------------------------------------------------- +## int pivot = arr[end] +## int i = start - 1; + +# set addr to arr* and mult counter to 0 +add $t1, $zero, $s0 +addi $t2, $zero, 0 +pivotcalc: +# add end to addr, 1 to mult counter +add $t1, $t1, $a1 +addi $t2, $t2, 1 +# if mult counter != 4, loop +xori $t3, $t2, 4 +bne $t3, $zero, pivotcalc + +# set pivot to mem[addr] +lw $t0, ($t1) +# set i to start - 1 +sub $t4, $a0, 1 + +# ----------------------------------------------------------------- +## for (int j = start; j < end; j++) { +## if (arr[j] <= pivot) { +## i++; +## int temp = arr[i]; +## arr[i] = arr[j]; +## arr[j] = temp; +## } +## } + +# set j to start and jump to check +add $t5, $zero, $a0 +j forcheck +forloop: + +# set addr to arr* and mult counter to 0 +add $t1, $zero, $s0 +addi $t2, $zero, 0 +arrjcalc: +# add j to addr, 1 to mult counter +add $t1, $t1, $t5 +addi $t2, $t2, 1 +# if mult counter != 4, loop +xori $t3, $t2, 4 +bne $t3, $zero, arrjcalc + +# set arr[j] to mem[addr] +lw $t8, ($t1) + +# check if arr[j] <= pivot +addi $t0, $t0, 1 +slt $t3, $t8, $t0 +addi $t0, $t0, -1 + +# execute swap if slt is true +bne $t3, $zero, swap +j increment +swap: + +# set addr to arr* and mult counter to 0 +add $t1, $zero, $s0 +addi $t2, $zero, 0 +arricalc: +# add i to addr, 1 to mult counter +add $t1, $t1, $t4 +addi $t2, $t2, 1 +# if mult counter != 4, loop +xori $t3, $t2, 4 +bne $t3, $zero, arricalc + +# set arr[i] to mem[addr] +lw $t7, ($t1) + +add $t6, $zero, $t7 +##### working here + +# increment j +increment: +addi $t5, $t5, 1 +# break for loop when j = end +forcheck: +bne $t5, $a1, forloop From c6ac01c5db495271e5664a2297422f5211c4522d Mon Sep 17 00:00:00 2001 From: Halliax Date: Mon, 13 Nov 2017 18:42:33 -0500 Subject: [PATCH 27/78] working partition function --- quicksort.asm | 138 +++++++++++++++++++++++++++++++++++--------------- 1 file changed, 98 insertions(+), 40 deletions(-) diff --git a/quicksort.asm b/quicksort.asm index 4b44d40..11cb3a7 100644 --- a/quicksort.asm +++ b/quicksort.asm @@ -1,35 +1,48 @@ +main: +addi $t0, $zero, 3 +addi $t1, $zero, 2 +addi $t2, $zero, 7 +addi $t3, $zero, 9 +addi $t4, $zero, 5 +sw $t0, ($gp) +sw $t1, 4($gp) +sw $t2, 8($gp) +sw $t3, 12($gp) +sw $t4, 16($gp) +add $s0, $zero, $gp +addi $a0, $zero, 0 +addi $a1, $zero, 4 +jal partition +j end + # $v0 = return val # $s0 = arr* # $a0 = start # $a1 = end +# $a2 = arr index (calcMemAddr) # $t0 = pivot # $t1 = addr (for data address calculations) # $t2 = multiply counter temporary # $t3 = branch check temporary (for xori and slt) # $t4 = i (counter) # $t5 = j (counter) -# $t6 = temp -# $t7 = arr[i] -# $t8 = arr[j] +# $t6 = arr[i] val +# $t7 = arr[j] val partition: +addi $sp, $sp, -4 +sw $ra, ($sp) # ----------------------------------------------------------------- ## int pivot = arr[end] ## int i = start - 1; -# set addr to arr* and mult counter to 0 -add $t1, $zero, $s0 -addi $t2, $zero, 0 -pivotcalc: -# add end to addr, 1 to mult counter -add $t1, $t1, $a1 -addi $t2, $t2, 1 -# if mult counter != 4, loop -xori $t3, $t2, 4 -bne $t3, $zero, pivotcalc +# set arr index to end and call calcMemAddr +add $a2, $zero, $a1 +jal calcMemAddr -# set pivot to mem[addr] +# set reg pivot to mem[arr[end]] lw $t0, ($t1) + # set i to start - 1 sub $t4, $a0, 1 @@ -48,46 +61,45 @@ add $t5, $zero, $a0 j forcheck forloop: -# set addr to arr* and mult counter to 0 -add $t1, $zero, $s0 -addi $t2, $zero, 0 -arrjcalc: -# add j to addr, 1 to mult counter -add $t1, $t1, $t5 -addi $t2, $t2, 1 -# if mult counter != 4, loop -xori $t3, $t2, 4 -bne $t3, $zero, arrjcalc +# set arr index to j and call calcMemAddr +add $a2, $zero, $t5 +jal calcMemAddr -# set arr[j] to mem[addr] -lw $t8, ($t1) +# set reg arr[j] to mem[arr[j]] +lw $t7, ($t1) # check if arr[j] <= pivot addi $t0, $t0, 1 -slt $t3, $t8, $t0 +slt $t3, $t7, $t0 addi $t0, $t0, -1 # execute swap if slt is true bne $t3, $zero, swap j increment swap: +# i++ +addi $t4, $t4, 1 -# set addr to arr* and mult counter to 0 -add $t1, $zero, $s0 -addi $t2, $zero, 0 -arricalc: -# add i to addr, 1 to mult counter -add $t1, $t1, $t4 -addi $t2, $t2, 1 -# if mult counter != 4, loop -xori $t3, $t2, 4 -bne $t3, $zero, arricalc +# set arr index to i and call calcMemAddr +add $a2, $zero, $t4 +jal calcMemAddr + +# set reg arr[i] to mem[arr[i]] +lw $t6, ($t1) + +# set arr index to j and call calcMemAddr +add $a2, $zero, $t5 +jal calcMemAddr -# set arr[i] to mem[addr] +# set reg arr[j] to mem[arr[j]] lw $t7, ($t1) -add $t6, $zero, $t7 -##### working here +# store in opposite places +sw $t6, ($t1) +# set arr index to i and call calcMemAddr +add $a2, $zero, $t4 +jal calcMemAddr +sw $t7, ($t1) # increment j increment: @@ -95,3 +107,49 @@ addi $t5, $t5, 1 # break for loop when j = end forcheck: bne $t5, $a1, forloop + +# ----------------------------------------------------------------- +## int temp = arr[i + 1]; +## arr[i + 1] = arr[end]; +## arr[end] = temp; +## return i + 1; + +# set i to i + 1, arr index to i + 1 and call calcMemAddr +addi $t4, $t4, 1 +add $a2, $zero, $t4 +jal calcMemAddr + +# set reg arr[i] to mem[arr[i + 1]] +lw $t6, ($t1) +# store pivot at mem[arr[i + 1]] +sw $t0 ($t1) + +# set arr index to end and call calcMemAddr +add $a2, $zero, $a1 +jal calcMemAddr + +# store reg arr[i] (holding arr[i + 1]) into mem[arr[end]] +sw $t6, ($t1) + +#return i + 1 +add $v0, $zero, $t4 +lw $ra, ($sp) +addi $sp, $sp, 4 +jr $ra + + +calcMemAddr: +# set addr to arr* and mult counter to 0 +add $t1, $zero, $s0 +addi $t2, $zero, 0 +pivotcalc: +# add index to addr, 1 to mult counter +add $t1, $t1, $a2 +addi $t2, $t2, 1 +# if mult counter != 4, loop +xori $t3, $t2, 4 +bne $t3, $zero, pivotcalc +jr $ra + + +end: From e871cecd41a8d3890d0684d55d0fb5710fb32c5a Mon Sep 17 00:00:00 2001 From: Halliax Date: Mon, 13 Nov 2017 20:28:02 -0500 Subject: [PATCH 28/78] working quicksort --- quicksort.asm | 104 +++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 94 insertions(+), 10 deletions(-) diff --git a/quicksort.asm b/quicksort.asm index 11cb3a7..d4db260 100644 --- a/quicksort.asm +++ b/quicksort.asm @@ -1,20 +1,103 @@ main: -addi $t0, $zero, 3 -addi $t1, $zero, 2 -addi $t2, $zero, 7 -addi $t3, $zero, 9 -addi $t4, $zero, 5 +addi $t0, $zero, 9 +addi $t1, $zero, 5 +addi $t2, $zero, 3 +addi $t3, $zero, 6 +addi $t4, $zero, 2 +addi $t5, $zero, 8 +addi $t6, $zero, 7 +addi $t7, $zero, 3 +addi $t8, $zero, 1 +addi $t9, $zero, 4 sw $t0, ($gp) sw $t1, 4($gp) sw $t2, 8($gp) sw $t3, 12($gp) sw $t4, 16($gp) +sw $t5, 20($gp) +sw $t6, 24($gp) +sw $t7, 28($gp) +sw $t8, 32($gp) +sw $t9, 36($gp) add $s0, $zero, $gp addi $a0, $zero, 0 -addi $a1, $zero, 4 -jal partition +addi $a1, $zero, 9 +jal quicksort +j done + + +quicksort: +# $s0 = arr* +# $s1 = pivot +# $a0 = start +# $a1 = end +# $t3 = branch check temporary (for xori and slt) + + +# if start < end, run quicksort +slt $t3, $a0, $a1 +bne $t3, $zero, run j end +run: +# push frame onto stack +addi $sp, $sp, -12 +sw $ra, 8($sp) +sw $a0, 4($sp) +sw $a1, ($sp) + +# pivot = partition (arr, start, end) +jal partition + +# pop frame from stack +lw $ra, 8($sp) +lw $a0, 4($sp) +lw $a1, ($sp) +addi $sp, $sp, 12 + +add $s1, $zero, $v0 + +# push frame onto stack +addi $sp, $sp, -16 +sw $ra, 12($sp) +sw $a0, 8($sp) +sw $a1, 4($sp) +sw $s1, ($sp) + +# quicksort(arr, start, pivot - 1) +addi $a1, $s1, -1 + +jal quicksort + +# pop frame from stack +lw $ra, 12($sp) +lw $a0, 8($sp) +lw $a1, 4($sp) +lw $s1, ($sp) +addi $sp, $sp, 16 + +# push frame onto stack +addi $sp, $sp, -12 +sw $ra, 8($sp) +sw $a0, 4($sp) +sw $a1, ($sp) + +# quicksort(arr, pivot + 1, end) +add $a0, $s1, 1 + +jal quicksort + +# pop frame from stack +lw $ra, 8($sp) +lw $a0, 4($sp) +lw $a1, ($sp) +addi $sp, $sp, 12 + +end: +jr $ra + + +partition: # $v0 = return val # $s0 = arr* # $a0 = start @@ -29,7 +112,6 @@ j end # $t6 = arr[i] val # $t7 = arr[j] val -partition: addi $sp, $sp, -4 sw $ra, ($sp) # ----------------------------------------------------------------- @@ -122,7 +204,7 @@ jal calcMemAddr # set reg arr[i] to mem[arr[i + 1]] lw $t6, ($t1) # store pivot at mem[arr[i + 1]] -sw $t0 ($t1) +sw $t0, ($t1) # set arr index to end and call calcMemAddr add $a2, $zero, $a1 @@ -152,4 +234,6 @@ bne $t3, $zero, pivotcalc jr $ra -end: +done: +addi $v0, $zero, 10 +syscall From 44244fe92694361c9e55d31069ed4bb0dce088b3 Mon Sep 17 00:00:00 2001 From: Halliax Date: Mon, 13 Nov 2017 22:42:26 -0500 Subject: [PATCH 29/78] cleanup and optimizations of quicksort.asm --- quicksort.asm | 119 ++++++++++++++++++++++++-------------------------- 1 file changed, 58 insertions(+), 61 deletions(-) diff --git a/quicksort.asm b/quicksort.asm index d4db260..bd7d6e8 100644 --- a/quicksort.asm +++ b/quicksort.asm @@ -28,15 +28,15 @@ j done quicksort: # $s0 = arr* -# $s1 = pivot # $a0 = start # $a1 = end -# $t3 = branch check temporary (for xori and slt) +# $t0 = pivot +# $t1 = branch check temporary (for xori and slt) # if start < end, run quicksort -slt $t3, $a0, $a1 -bne $t3, $zero, run +slt $t1, $a0, $a1 +bne $t1, $zero, run j end run: @@ -55,17 +55,17 @@ lw $a0, 4($sp) lw $a1, ($sp) addi $sp, $sp, 12 -add $s1, $zero, $v0 +add $t0, $zero, $v0 # push frame onto stack addi $sp, $sp, -16 sw $ra, 12($sp) sw $a0, 8($sp) sw $a1, 4($sp) -sw $s1, ($sp) +sw $t0, ($sp) # quicksort(arr, start, pivot - 1) -addi $a1, $s1, -1 +addi $a1, $t0, -1 jal quicksort @@ -73,7 +73,7 @@ jal quicksort lw $ra, 12($sp) lw $a0, 8($sp) lw $a1, 4($sp) -lw $s1, ($sp) +lw $t0, ($sp) addi $sp, $sp, 16 # push frame onto stack @@ -83,7 +83,7 @@ sw $a0, 4($sp) sw $a1, ($sp) # quicksort(arr, pivot + 1, end) -add $a0, $s1, 1 +add $a0, $t0, 1 jal quicksort @@ -99,18 +99,19 @@ jr $ra partition: # $v0 = return val -# $s0 = arr* # $a0 = start # $a1 = end # $a2 = arr index (calcMemAddr) -# $t0 = pivot -# $t1 = addr (for data address calculations) -# $t2 = multiply counter temporary -# $t3 = branch check temporary (for xori and slt) -# $t4 = i (counter) -# $t5 = j (counter) -# $t6 = arr[i] val -# $t7 = arr[j] val +# $s0 = arr* +# $s1 = pivot +# $s2 = i (counter) +# $s3 = j (counter) +# $s4 = arr[i] val +# $s5 = arr[j] val +# $t0 = branch check temporary (for xori and slt) +# $t3 = arr[end] addr +# $t4 = arr[i] addr +# $t5 = arr[j] addr addi $sp, $sp, -4 sw $ra, ($sp) @@ -121,12 +122,14 @@ sw $ra, ($sp) # set arr index to end and call calcMemAddr add $a2, $zero, $a1 jal calcMemAddr +# set arr[end] addr +add $t3, $zero, $v0 # set reg pivot to mem[arr[end]] -lw $t0, ($t1) +lw $s1, ($t3) # set i to start - 1 -sub $t4, $a0, 1 +sub $s2, $a0, 1 # ----------------------------------------------------------------- ## for (int j = start; j < end; j++) { @@ -139,56 +142,50 @@ sub $t4, $a0, 1 ## } # set j to start and jump to check -add $t5, $zero, $a0 +add $s3, $zero, $a0 j forcheck forloop: # set arr index to j and call calcMemAddr -add $a2, $zero, $t5 +add $a2, $zero, $s3 jal calcMemAddr +# set arr[j] addr +add $t5, $zero, $v0 # set reg arr[j] to mem[arr[j]] -lw $t7, ($t1) +lw $s5, ($t5) # check if arr[j] <= pivot -addi $t0, $t0, 1 -slt $t3, $t7, $t0 -addi $t0, $t0, -1 +addi $s1, $s1, 1 +slt $t0, $s5, $s1 +addi $s1, $s1, -1 # execute swap if slt is true -bne $t3, $zero, swap +bne $t0, $zero, swap j increment swap: # i++ -addi $t4, $t4, 1 +addi $s2, $s2, 1 # set arr index to i and call calcMemAddr -add $a2, $zero, $t4 +add $a2, $zero, $s2 jal calcMemAddr +# set arr[i] addr +add $t4, $zero, $v0 # set reg arr[i] to mem[arr[i]] -lw $t6, ($t1) - -# set arr index to j and call calcMemAddr -add $a2, $zero, $t5 -jal calcMemAddr - -# set reg arr[j] to mem[arr[j]] -lw $t7, ($t1) +lw $s4, ($t4) # store in opposite places -sw $t6, ($t1) -# set arr index to i and call calcMemAddr -add $a2, $zero, $t4 -jal calcMemAddr -sw $t7, ($t1) +sw $s4, ($t5) +sw $s5, ($t4) # increment j increment: -addi $t5, $t5, 1 +addi $s3, $s3, 1 # break for loop when j = end forcheck: -bne $t5, $a1, forloop +bne $s3, $a1, forloop # ----------------------------------------------------------------- ## int temp = arr[i + 1]; @@ -197,40 +194,40 @@ bne $t5, $a1, forloop ## return i + 1; # set i to i + 1, arr index to i + 1 and call calcMemAddr -addi $t4, $t4, 1 -add $a2, $zero, $t4 +addi $s2, $s2, 1 +add $a2, $zero, $s2 jal calcMemAddr # set reg arr[i] to mem[arr[i + 1]] -lw $t6, ($t1) +lw $s4, ($v0) # store pivot at mem[arr[i + 1]] -sw $t0, ($t1) - -# set arr index to end and call calcMemAddr -add $a2, $zero, $a1 -jal calcMemAddr +sw $s1, ($v0) # store reg arr[i] (holding arr[i + 1]) into mem[arr[end]] -sw $t6, ($t1) +sw $s4, ($t3) #return i + 1 -add $v0, $zero, $t4 +add $v0, $zero, $s2 lw $ra, ($sp) addi $sp, $sp, 4 jr $ra calcMemAddr: +# $v0 = addr (return) +# $t0 = multiply counter temporary +# $t1 = branch check temporary (for xori and slt) + # set addr to arr* and mult counter to 0 -add $t1, $zero, $s0 -addi $t2, $zero, 0 -pivotcalc: +add $v0, $zero, $s0 +addi $t0, $zero, 0 +calc: # add index to addr, 1 to mult counter -add $t1, $t1, $a2 -addi $t2, $t2, 1 +add $v0, $v0, $a2 +addi $t0, $t0, 1 # if mult counter != 4, loop -xori $t3, $t2, 4 -bne $t3, $zero, pivotcalc +xori $t1, $t0, 4 +bne $t1, $zero, calc jr $ra From dcc2811ef3e65691612f923856edbeadbc88768f Mon Sep 17 00:00:00 2001 From: Halliax Date: Tue, 14 Nov 2017 12:55:53 -0500 Subject: [PATCH 30/78] reformat quicksort data segment --- quicksort.asm | 36 +++++++++++++++--------------------- 1 file changed, 15 insertions(+), 21 deletions(-) diff --git a/quicksort.asm b/quicksort.asm index bd7d6e8..d94159d 100644 --- a/quicksort.asm +++ b/quicksort.asm @@ -1,25 +1,6 @@ main: -addi $t0, $zero, 9 -addi $t1, $zero, 5 -addi $t2, $zero, 3 -addi $t3, $zero, 6 -addi $t4, $zero, 2 -addi $t5, $zero, 8 -addi $t6, $zero, 7 -addi $t7, $zero, 3 -addi $t8, $zero, 1 -addi $t9, $zero, 4 -sw $t0, ($gp) -sw $t1, 4($gp) -sw $t2, 8($gp) -sw $t3, 12($gp) -sw $t4, 16($gp) -sw $t5, 20($gp) -sw $t6, 24($gp) -sw $t7, 28($gp) -sw $t8, 32($gp) -sw $t9, 36($gp) -add $s0, $zero, $gp +addi $sp, $zero, 0x00003ffc +la $s0, array addi $a0, $zero, 0 addi $a1, $zero, 9 jal quicksort @@ -234,3 +215,16 @@ jr $ra done: addi $v0, $zero, 10 syscall + +.data +array: +0x00000009 +0x00000005 +0x00000003 +0x00000006 +0x00000002 +0x00000008 +0x00000007 +0x00000003 +0x00000001 +0x00000004 From df75ba2c3515530015940ed175fcd46f5bef1706 Mon Sep 17 00:00:00 2001 From: Halliax Date: Tue, 14 Nov 2017 13:09:28 -0500 Subject: [PATCH 31/78] add quicksort readme, create required folder structure --- asmtest/DRAGAN/README.md | 13 +++++++++++++ quicksort.asm => asmtest/DRAGAN/quicksort.asm | 0 quicksort.c => asmtest/DRAGAN/quicksort.c | 0 3 files changed, 13 insertions(+) create mode 100644 asmtest/DRAGAN/README.md rename quicksort.asm => asmtest/DRAGAN/quicksort.asm (100%) rename quicksort.c => asmtest/DRAGAN/quicksort.c (100%) diff --git a/asmtest/DRAGAN/README.md b/asmtest/DRAGAN/README.md new file mode 100644 index 0000000..2fed225 --- /dev/null +++ b/asmtest/DRAGAN/README.md @@ -0,0 +1,13 @@ +# Quicksort algorithm + +### Preconditions: + +Array { 9, 5, 3, 6, 2, 8, 7, 3, 1, 4 } loaded into .data (should be handled by quicksort.asm) + +### Expected result: + +Array { 1, 2, 3, 3, 4, 5, 6, 7, 8, 9 } in .data + +### Required additional instructions: + +N/A diff --git a/quicksort.asm b/asmtest/DRAGAN/quicksort.asm similarity index 100% rename from quicksort.asm rename to asmtest/DRAGAN/quicksort.asm diff --git a/quicksort.c b/asmtest/DRAGAN/quicksort.c similarity index 100% rename from quicksort.c rename to asmtest/DRAGAN/quicksort.c From c82689b651a0dddcd6aca0a6277e439ae725489f Mon Sep 17 00:00:00 2001 From: Halliax Date: Tue, 14 Nov 2017 17:43:09 -0500 Subject: [PATCH 32/78] replace syscall with jump trap so iverilog doesn't screw everything up --- asmtest/DRAGAN/quicksort.asm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/asmtest/DRAGAN/quicksort.asm b/asmtest/DRAGAN/quicksort.asm index d94159d..501470a 100644 --- a/asmtest/DRAGAN/quicksort.asm +++ b/asmtest/DRAGAN/quicksort.asm @@ -213,8 +213,9 @@ jr $ra done: -addi $v0, $zero, 10 -syscall +j done +# addi $v0, $zero, 10 +# syscall .data array: From 92726c21505b5a97be62c5c94f26cf2debcef9e8 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Tue, 14 Nov 2017 18:26:33 -0500 Subject: [PATCH 33/78] Add simple assembly test bench for all functionality --- asmtest/DRAGAN/basic_testbench.asm | 146 +++++++++++++++++++++++++++++ 1 file changed, 146 insertions(+) create mode 100644 asmtest/DRAGAN/basic_testbench.asm diff --git a/asmtest/DRAGAN/basic_testbench.asm b/asmtest/DRAGAN/basic_testbench.asm new file mode 100644 index 0000000..52433a0 --- /dev/null +++ b/asmtest/DRAGAN/basic_testbench.asm @@ -0,0 +1,146 @@ +# Test bench function for Lab3 reduced MIPS ISA +# $s7 = ('tests failed') ? 1 : 0 + +main: # Run all tests conditionally + +jal test_lw_sw +bne $s7, $zero, test_end + +jal test_bne +bne $s7, $zero, test_end + +jal test_xori +bne $s7, $zero, test_end + +jal test_add +bne $s7, $zero, test_end + +jal test_sub +bne $s7, $zero, test_end + +jal test_slt +bne $s7, $zero, test_end + +j test_end + + +test_lw_sw: +# Initialize values +addi $t0, $zero, 30 +addi $t1, $zero, 87 +# store to heap +sw $t0, 16($gp) +sw $t1, 12($gp) +# load from heap +lw $t2, 16($gp) +lw $t3, 12($gp) +# compare equality +bne $t0, $t2, lw_sw_fail +bne $t1, $t3, lw_sw_fail +jr $ra + +lw_sw_fail: +addi $s7, $zero, 1 #set testfailed to true +jr $ra + +test_bne: +# initialize values +addi $t0, $zero, 40 +addi $t1, $zero, 16 +addi $t2, $zero, 40 + +bne $t0, $t2, bne_fail +bne $t0, $t1, bne_pass +bne_fail: +addi $s7, $zero, 1 +bne_pass: +jr $ra + +test_xori: +#initialize values +addi $t0, $zero, 0x0000f0f0 +addi $t1, $zero, 0x00000f0f + +# xor identical things +xori $t2, $t0, 0x0000f0f0 +# fail if not zero +bne $t2, $zero, xori_fail +# xor different things +xori $t2, $t1, 0X0000f0f0 +# pass if zero +bne $t2, $zero, xori_pass +xori_fail: +addi $s7, $zero, 1 +xori_pass: +jr $ra + +test_add: +# initialize values +addi $t0, $zero, 13 +addi $t1, $zero, 31 +addi $t2, $zero, 44 + +# add registers +add $t3, $t0, $t1 +# fail if not expected result +bne $t3, $t2, add_fail +# otherwise pass +j add_pass + +add_fail: +addi $s7, $zero, 1 +add_pass: +jr $ra + + +test_sub: +# initialize values +addi $t0, $zero, 31 +addi $t1, $zero, 13 +addi $t2, $zero, 18 + +# subtract registers +sub $t3, $t0, $t1 +# fail if not expected result +bne $t3, $t2, sub_fail +# otherwise pass +j sub_pass + +sub_fail: +addi $s7, $zero, 1 +sub_pass: +jr $ra + +test_slt: +# initialize values +addi $t0, $zero, 13 +addi $t1, $zero, 15 + +# 13 is less than 15 +slt $t2, $t0, $t1 +bne $t2, 1, slt_fail + +# 15 is not less than 13 +slt $t2, $t1, $t0 +bne $t2, 0, slt_fail +j slt_pass + +slt_fail: +addi $s7, $zero, 1 +slt_pass: +jr $ra + + +# End the program +test_end: +add $a0, $s7, $zero +addi $v0, $zero, 1 +syscall +j jump_trap + +jump_trap: +nop +nop +nop +j jump_trap + From 6d776ae89ce7abba4be3607b277818f1ef14c0ff Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Tue, 14 Nov 2017 18:32:02 -0500 Subject: [PATCH 34/78] Enforce file naming convention on instruction fetch module --- InstructionFetch.v => instructionFetch.v | 6 +++--- InstructionMemory.v => instructionMemory.v | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) rename InstructionFetch.v => instructionFetch.v (87%) rename InstructionMemory.v => instructionMemory.v (94%) diff --git a/InstructionFetch.v b/instructionFetch.v similarity index 87% rename from InstructionFetch.v rename to instructionFetch.v index 1471162..2bd72ea 100644 --- a/InstructionFetch.v +++ b/instructionFetch.v @@ -1,9 +1,9 @@ `include "regfile-dependencies/register32.v" `include "signExtend.v" `include "alu.v" -`include "InstructionMemory.v" +`include "instructionMemory.v" -module InstructionFetch +module instructionFetch ( output[31:0] Instr, output[31:0] PC, @@ -27,7 +27,7 @@ module InstructionFetch //wire nextAddr; register32 PC_module (PC, newAddr, 1'b1, clk); signExtend IF_SE (signextimm, Imm16, 1'b0); - InstructionMemory InstMem(Instr, {PC[31:2], 2'b00}, clk); + instructionMemory InstMem(Instr, {PC[31:2], 2'b00}, clk); assign jumpaddr = {PC[31:28],TargetAddr, 2'b00}; assign muxsig1 = (!zero && Branch); assign addunit = muxsig1 ? signextimm : 32'b0; diff --git a/InstructionMemory.v b/instructionMemory.v similarity index 94% rename from InstructionMemory.v rename to instructionMemory.v index 596401c..335f609 100644 --- a/InstructionMemory.v +++ b/instructionMemory.v @@ -1,4 +1,4 @@ -module InstructionMemory +module instructionMemory ( output[31:0] DataOut, //input regWE, //for actual memory From b6b42ae7ad69d56f282a6a8d62693b982f40e43f Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Tue, 14 Nov 2017 18:33:49 -0500 Subject: [PATCH 35/78] Remove alu.v include in instructionFetch.v; --- instructionFetch.v | 1 - 1 file changed, 1 deletion(-) diff --git a/instructionFetch.v b/instructionFetch.v index 2bd72ea..efc8bdb 100644 --- a/instructionFetch.v +++ b/instructionFetch.v @@ -1,6 +1,5 @@ `include "regfile-dependencies/register32.v" `include "signExtend.v" -`include "alu.v" `include "instructionMemory.v" module instructionFetch From 0112818942d8247b3e470970d9a50fb98db50193 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Tue, 14 Nov 2017 18:38:15 -0500 Subject: [PATCH 36/78] Reduce size of data memory to recommended 0x4000 --- dataPath.v | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dataPath.v b/dataPath.v index c1fb701..5090e3c 100644 --- a/dataPath.v +++ b/dataPath.v @@ -59,12 +59,12 @@ module dataPath( ALU alu(ALU_out, carryout, ovf, zero, A, B, ALU_ctrl); // Set up data memory - dataMemory #(32,2**32,32) data_mem (mem_dout, ALU_out, mem_wr, Db, clk); + dataMemory #(32,32'h4000,32) data_mem (mem_dout, ALU_out, mem_wr, Db, clk); // Set up load/result mux assign writeback = mem_to_reg ? mem_dout : ALU_out; - + From fd2ffb875b37b6e1b3cc8099e1005860c0b8aaff Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Wed, 15 Nov 2017 17:59:52 -0500 Subject: [PATCH 37/78] naive copy of simulation environment from in-class/day20 example --- sim/Makefile | 31 +++++++ sim/README.md | 19 +++++ sim/asm/Makefile | 27 ++++++ sim/asm/fib_func.asm | 132 +++++++++++++++++++++++++++++ sim/filters/fake_cpu-fib_func.gtkw | 52 ++++++++++++ sim/filters/mips-funct.filter | 21 +++++ sim/filters/mips-opcodes.filter | 20 +++++ sim/filters/mips-regs.filter | 33 ++++++++ sim/settings.mk | 18 ++++ sim/verilog/Makefile | 23 +++++ sim/verilog/counter.v | 22 +++++ sim/verilog/fake_cpu.t.v | 72 ++++++++++++++++ sim/verilog/fake_cpu.v | 84 ++++++++++++++++++ 13 files changed, 554 insertions(+) create mode 100644 sim/Makefile create mode 100644 sim/README.md create mode 100644 sim/asm/Makefile create mode 100644 sim/asm/fib_func.asm create mode 100644 sim/filters/fake_cpu-fib_func.gtkw create mode 100644 sim/filters/mips-funct.filter create mode 100644 sim/filters/mips-opcodes.filter create mode 100644 sim/filters/mips-regs.filter create mode 100644 sim/settings.mk create mode 100644 sim/verilog/Makefile create mode 100644 sim/verilog/counter.v create mode 100644 sim/verilog/fake_cpu.t.v create mode 100644 sim/verilog/fake_cpu.v diff --git a/sim/Makefile b/sim/Makefile new file mode 100644 index 0000000..839197d --- /dev/null +++ b/sim/Makefile @@ -0,0 +1,31 @@ +# Assembly simulation in Verilog unified Makefile example + +include settings.mk + +GTKWAVE := gtkwave +SIM := vvp + +# Final waveform to produce is the combination of machine and program +WAVEFORM := $(TOPLEVEL)-$(PROGRAM).vcd +WAVEOPTS := filters/$(WAVEFORM:vcd=gtkw) + + +# Build memory image, compile Verilog, run simulation to produce VCD trace +$(WAVEFORM): settings.mk + $(MAKE) -C asm $(MEMDUMP) + $(MAKE) -C verilog $(TOPLEVEL).vvp + $(SIM) verilog/$(TOPLEVEL).vvp +mem_fn=asm/$(MEMDUMP) +dump_fn=$@ + + +# Open waveform with saved formatting and filter options +scope: $(WAVEFORM) $(WAVEOPTS) + $(GTKWAVE) $(WAVEOPTS) + + +# Remove generated files, including from subdirectories +clean: + $(MAKE) -C asm clean + $(MAKE) -C verilog clean + rm -f $(WAVEFORM) + +.PHONY: scope clean diff --git a/sim/README.md b/sim/README.md new file mode 100644 index 0000000..de29209 --- /dev/null +++ b/sim/README.md @@ -0,0 +1,19 @@ +# Assembly and Verilog simulation example + +This code demonstrates several concepts that could be helpful for testing your CPU: + +* cpu: Fake CPU Verilog - doesn't do much, but shows instructions loaded into memory and flowing through a pipeline +* asm: Turning assembly code into a memory image on the command line +* filters: GTKWave filter files that may be useful for various MIPS instruction fields, and a saved GTKWave session showing them all in use +* Various Makefiles demonstrating how these tasks can be automated + +At the root, run ```make``` to + +1. assemble the example program +1. compile the Verilog cpu into a vvp simulator +1. run the simulation, loading the assembly program into CPU memory + +You can run ```make scope``` to load the waveform in GTKWave with some nice filters added. + +```make clean``` removes all generated files (which you should not be committing in your own repos). + diff --git a/sim/asm/Makefile b/sim/asm/Makefile new file mode 100644 index 0000000..3b27942 --- /dev/null +++ b/sim/asm/Makefile @@ -0,0 +1,27 @@ +# Generate machine code memory image from MIPS assembly + +# Get PROGRAM and MEMDUMP from project settings +include ../settings.mk + +MARS_PATH := ../../Mars4_5.jar +MARS_OPTS := a mc CompactTextAtZero +MARS := java -jar $(MARS_PATH) $(MARS_OPTS) + + +# Pattern rule for generating .text memory dump from MIPS assembly +%.text.hex: %.asm + $(MARS) dump .text HexText $@ $< + +# Pattern rule for generating .data memory dump from MIPS assembly +%.data.hex: %.asm + $(MARS) dump .data HexText $@ $< + + +# Shortcut (phony) targets for convenience +assemble: $(MEMDUMP) + +clean: + -rm -f $(MEMDUMP) + + +.PHONY: assemble clean diff --git a/sim/asm/fib_func.asm b/sim/asm/fib_func.asm new file mode 100644 index 0000000..d2d5279 --- /dev/null +++ b/sim/asm/fib_func.asm @@ -0,0 +1,132 @@ +# Function call example: recursive Fibonacci + +main: +# Set up arguments for call to fib_test +addi $a0, $zero, 4 # arg0 = 4 +addi $a1, $zero, 10 # arg1 = 10 +jal fib_test + +# Print result +add $a0, $zero, $v0 # Copy result into argument register a0 +jal print_result + +# Jump to "exit", rather than falling through to subroutines +j program_end + +#------------------------------------------------------------------------------ +# Fibonacci test function. Equivalent C code: +# int fib_test(arg0, arg1) { +# return Fibonacci(arg0) + Fibonacci(arg1); +# } +# By MIPS calling convention, expects arguments in +# registers a0 and a1, and returns result in register v0. +fib_test: +# We will use s0 and s1 registers in this function, plus the ra register +# to return at the end. Save them to stack in case caller was using them. +addi $sp, $sp, -12 # Allocate three words on stack at once for three pushes +sw $ra, 8($sp) # Push ra on the stack (will be overwritten by Fib function calls) +sw $s0, 4($sp) # Push s0 onto stack +sw $s1, 0($sp) # Push s1 onto stack + +# a1 may be overwritten by called functions, so save it to s1 (saved temporary), +# which called function won't change, so we can use it later for the second fib call +add $s1, $zero, $a1 + +# Call Fib(arg0), save result in s0 +# arg0 is already in register a0, placed there by caller of fib_test +jal fib # Call fib(4), returns in register v0 +add $s0, $zero, $v0 # Move result to s0 so we can call fib again without overwriting + +# Call Fib(arg1), save result in s1 +add $a0, $zero, $s1 # Move original arg1 into register a0 for function call +jal fib +add $s1, $zero, $v0 # Move result to s1 + +# Add Fib(arg0) and Fib(arg1) into v0 (return value for fib_test) +add $v0, $s0, $s1 + +# Restore original values to s0 and s1 registers from stack before returning +lw $s1, 0($sp) # Pop s1 from stack +lw $s0, 4($sp) # Pop s0 from stack +lw $ra, 8($sp) # Pop ra from the stack so we can return to caller +addi $sp, $sp, 12 # Adjust stack pointer to reflect pops + +jr $ra # Return to caller + +#------------------------------------------------------------------------------ +# Recursive Fibonacci function. Equivalent C code: +# +# int Fibonacci(int n) { +# if (n == 0) return 0; // Base case +# if (n == 1) return 1; // Base case +# int fib_1 = Fibonacci(n - 1); +# int fib_2 = Fibonacci(n - 2); +# return fib_1+fib_2; +# } +fib: +# Test base cases. If we're in a base case, return directly (no need to use stack) +bne $a0, 0, testone +add $v0, $zero, $zero # a0 == 0 -> return 0 +jr $ra +testone: +bne $a0, 1, fib_body +add $v0, $zero, $a0 # a0 == 1 -> return 1 +jr $ra + +fib_body: +# Create stack frame for fib: push ra and s0 +addi $sp, $sp, -8 # Allocate two words on stack at once for two pushes +sw $ra, 4($sp) # Push ra on the stack (will be overwritten by recursive function calls) +sw $s0, 0($sp) # Push s0 onto stack + +# Call Fib(n-1), save result in s0 +add $s0, $zero, $a0 # Save a0 argument (n) in register s0 +addi $a0, $a0, -1 # a0 = n-1 +jal fib +add $a0, $s0, -2 # a0 = n-2 +add $s0, $zero, $v0 # s0 = Fib(n-1) + +# Call Fib(n-2), compute final result +jal fib +add $v0, $v0, $s0 # v0 = Fib(n-2) + Fib(n-1) + +# Restore registers and pop stack frame +lw $ra, 4($sp) +lw $s0, 0($sp) +addi $sp, $sp, 8 + +jr $ra # Return to caller + +#------------------------------------------------------------------------------ +# Utility function to print results +print_result: +# Create stack frame for ra and s0 +addi $sp, $sp, -8 +sw $ra, 4($sp) +sw $s0, 0($sp) + +add $s0, $zero, $a0 # Save argument (integer to print) to s0 + +li $v0, 4 # Service code to print string +la $a0, result_str # Argument is memory address of string to print +syscall + +li $v0, 1 # Service code to print integer +add $a0, $zero, $s0 # Argument is integer to print +syscall + +# Restore registers and pop stack frame +lw $ra, 4($sp) +lw $s0, 0($sp) +addi $sp, $sp, 8 + +#------------------------------------------------------------------------------ +# Jump loop to end execution, so we don't fall through to .data section +program_end: +j program_end + + +#------------------------------------------------------------------------------ +.data +# Null-terminated string to print as part of result +result_str: .asciiz "\nFib(4)+Fib(10) = " diff --git a/sim/filters/fake_cpu-fib_func.gtkw b/sim/filters/fake_cpu-fib_func.gtkw new file mode 100644 index 0000000..b39c5ac --- /dev/null +++ b/sim/filters/fake_cpu-fib_func.gtkw @@ -0,0 +1,52 @@ +[*] +[*] GTKWave Analyzer v3.3.79 (w)1999-2017 BSI +[*] Wed Nov 15 00:28:31 2017 +[*] +[dumpfile] "fake_cpu-fib_func.vcd" +[dumpfile_mtime] "Wed Nov 15 00:24:17 2017" +[dumpfile_size] 7517 +[savefile] "filters/fake_cpu-fib_func.gtkw" +[timestart] 0 +[size] 1000 600 +[pos] -1 -1 +*-5.270822 57 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +[treeopen] cpu_test. +[treeopen] cpu_test.cpu. +[sst_width] 193 +[signals_width] 133 +[sst_expanded] 1 +[sst_vpaned_height] 168 +@28 +cpu_test.clk +cpu_test.reset +@200 +---A-- +@22 +cpu_test.cpu.PC_A[31:0] +cpu_test.cpu.INS_A[31:0] +@200 +---B-- +@22 +cpu_test.cpu.PC_B[31:0] +cpu_test.cpu.INS_B[31:0] +@2022 +^2 filters/mips-opcodes.filter +cpu_test.cpu.OP_B[5:0] +@200 +---C-- +@22 +cpu_test.cpu.PC_C[31:0] +cpu_test.cpu.INS_C[31:0] +@2022 +^4 filters/mips-funct.filter +cpu_test.cpu.FUNCT_C[5:0] +@2023 +^2 filters/mips-opcodes.filter +cpu_test.cpu.OP_C[5:0] +@2022 +^1 filters/mips-regs.filter +cpu_test.cpu.RS_C[4:0] +^1 filters/mips-regs.filter +cpu_test.cpu.RT_C[4:0] +[pattern_trace] 1 +[pattern_trace] 0 diff --git a/sim/filters/mips-funct.filter b/sim/filters/mips-funct.filter new file mode 100644 index 0000000..654e706 --- /dev/null +++ b/sim/filters/mips-funct.filter @@ -0,0 +1,21 @@ +# MIPS funct codes (R-type, OP=0x00) +00 sll +02 srl +03 sra +08 jr +10 mfhi +12 mflo +18 mult +19 multu +1A div +1B divu +20 add +21 addu +22 sub +23 subu +24 and +25 or +26 xor +27 nor +2A slt +2B sltu diff --git a/sim/filters/mips-opcodes.filter b/sim/filters/mips-opcodes.filter new file mode 100644 index 0000000..fedc8cc --- /dev/null +++ b/sim/filters/mips-opcodes.filter @@ -0,0 +1,20 @@ +# MIPS opcodes +00 R-type +02 j +03 jal +04 beq +05 bne +08 addi +09 addiu +0A slti +0B sltiu +0C andi +0D ori +0F lui +10 mfc0 +23 lw +24 lbu +25 lhu +28 sb +29 sh +2B sw diff --git a/sim/filters/mips-regs.filter b/sim/filters/mips-regs.filter new file mode 100644 index 0000000..f704bdb --- /dev/null +++ b/sim/filters/mips-regs.filter @@ -0,0 +1,33 @@ +# MIPS register names +00 $zero +01 $at +02 $v0 +03 $v1 +04 $a0 +05 $a1 +06 $a2 +07 $a3 +08 $t0 +09 $t1 +0A $t2 +0B $t3 +0C $t4 +0D $t5 +0E $t6 +0F $t7 +10 $s0 +11 $s1 +12 $s2 +13 $s3 +14 $s4 +15 $s5 +16 $s6 +17 $s7 +18 $t8 +19 $t9 +1a $k0 +1b $k1 +1c $gp +1d $sp +1e $fp +1f $ra diff --git a/sim/settings.mk b/sim/settings.mk new file mode 100644 index 0000000..2002840 --- /dev/null +++ b/sim/settings.mk @@ -0,0 +1,18 @@ +# Project-specific settings + +## Assembly settings + +# Assembly program (minus .asm extension) +PROGRAM := fib_func + +# Memory image(s) to create from the assembly program +MEMDUMP := $(PROGRAM).text.hex + + +## Verilog settings + +# Top-level module/filename (minus .v/.t.v extension) +TOPLEVEL := fake_cpu + +# All circuits included by the toplevel $(TOPLEVEL).t.v +CIRCUITS := $(TOPLEVEL).v counter.v diff --git a/sim/verilog/Makefile b/sim/verilog/Makefile new file mode 100644 index 0000000..43374fb --- /dev/null +++ b/sim/verilog/Makefile @@ -0,0 +1,23 @@ +# Verilog compilation Makefile example + +# Get TOPLEVEL and CIRCUITS variables from project settings +include ../settings.mk + +ICARUS_OPTS := -Wall +IVERILOG := iverilog $(ICARUS_OPTS) +LINT := verilator --lint-only +SIM := vvp + + +# Pattern rule for compiling vvp (Icarus assembly) from a testbench +%.vvp: %.t.v $(CIRCUITS) + $(IVERILOG) -o $@ $< + + +# Shortcut (phony) targets for convenience +compile: $(TOPLEVEL).vvp + +clean: + -rm -f $(TOPLEVEL).vvp + +.PHONY: compile clean diff --git a/sim/verilog/counter.v b/sim/verilog/counter.v new file mode 100644 index 0000000..546199b --- /dev/null +++ b/sim/verilog/counter.v @@ -0,0 +1,22 @@ +//------------------------------------------------------------------------ +// Simple resettable up-counter +//------------------------------------------------------------------------ + +module counter +#( + parameter width = 16, + parameter increment = 1, + parameter init_val = 0 +) +( + output reg [width-1:0] count, + input clk, + input reset +); + + always @(posedge clk, posedge reset) begin + if (reset) count <= init_val; + else count <= count + increment; + end + +endmodule diff --git a/sim/verilog/fake_cpu.t.v b/sim/verilog/fake_cpu.t.v new file mode 100644 index 0000000..5d8d31c --- /dev/null +++ b/sim/verilog/fake_cpu.t.v @@ -0,0 +1,72 @@ +`include "fake_cpu.v" + +//------------------------------------------------------------------------ +// Simple fake CPU testbench sequence +//------------------------------------------------------------------------ + +module cpu_test (); + + reg clk; + reg reset; + + // Clock generation + initial clk=0; + always #10 clk = !clk; + + // Instantiate fake CPU + fake_cpu cpu(.clk(clk), .reset(reset)); + + + reg [1023:0] mem_fn; + reg [1023:0] dump_fn; + + // Test sequence + initial begin + + // Get command line arguments for memory image and VCD dump file + // http://iverilog.wikia.com/wiki/Simulation + // http://www.project-veripage.com/plusarg.php + if (! $value$plusargs("mem_fn=%s", mem_fn)) begin + $display("ERROR: provide +mem_fn=[path to memory image] argument"); + $finish(); + end + if (! $value$plusargs("dump_fn=%s", dump_fn)) begin + $display("ERROR: provide +dump_fn=[path for VCD dump] argument"); + $finish(); + end + + + // Load CPU memory from (assembly) dump file + $readmemh(mem_fn, cpu.memory); + // Alternate: Explicitly state which array element range to read into + //$readmemh("mymem.hex", memory, 10, 80); + + // Dump waveforms to file + // Note: arrays (e.g. memory) are not dumped by default + $dumpfile(dump_fn); + $dumpvars(); + + // Assert reset pulse + reset = 0; #10; + reset = 1; #10; + reset = 0; #10; + + // Display a few cycles just for quick checking + // Note: I'm just dumping instruction bits, but you can do some + // self-checking test cases based on your CPU and program and + // automatically report the results. + $display("Time | PC | Instruction"); + repeat(3) begin + $display("%4t | %h | %h", $time, cpu.PC_A, cpu.INS_A); #20 ; + end + $display("... more execution (see waveform)"); + + // End execution after some time delay - adjust to match your program + // or use a smarter approach like looking for an exit syscall or the + // PC to be the value of the last instruction in your program. + #2000 $finish(); + end + +endmodule + + diff --git a/sim/verilog/fake_cpu.v b/sim/verilog/fake_cpu.v new file mode 100644 index 0000000..5472f4b --- /dev/null +++ b/sim/verilog/fake_cpu.v @@ -0,0 +1,84 @@ +`include "counter.v" + +//------------------------------------------------------------------------ +// Fake CPU with three "pipeline stages" A -> B -> C +//------------------------------------------------------------------------ + +module fake_cpu +( + input clk, + input reset +); + + //-------------------------------------------------------------------- + // Stage A - "Instruction Fetch" + + wire [31:0] PC_A; + wire [31:0] INS_A; + + // Simplified PC generation unit - increments by 4 every cycle + counter #(.width(32), .increment(4)) pc_incr(.count(PC_A), + .clk(clk), + .reset(reset)); + + + // 16KiB memory, organized as 4096 element array of 32-bit words + reg [31:0] memory [4095:0]; + // Alternate: 16KiB memory, organized as 16384 element array of bytes + // reg [7:0] memory [2**14-1:0]; + + + // Simplified memory "read port" + assign INS_A = memory[ PC_A[13:2] ]; + // Note: Discards the low 2 bits of the PC (should be zero) since I've + // implemented my memory as an array of words instead of bytes. Discards + // upper 18 bits of PC (should be zero) because my memory is only 16 KiB + // (smaller than maximum addressible 2^32 bytes). + + // Non-synthesizable debugging code for checking assertions about PC + always @(PC_A) begin + if (| PC_A[1:0]) begin // Lower PC bits != 00 + $display("Warning: misaligned PC access, truncating: %h", PC_A); + end + if (| PC_A[31:14]) begin // Upper PC bits non-zero + $display("Error: PC outside implemented memory range: %h", PC_A); + $stop(); + end + end + + //-------------------------------------------------------------------- + // Stages B and C - fake functionality to see more signals propagate + + reg [31:0] PC_B, PC_C; + reg [31:0] INS_B, INS_C; + + // Op-code is the upper 6 bits, for all instruction formats + wire [5:0] OP_B; + reg [5:0] OP_C; + assign OP_B = INS_B[31:26]; + + // Funct code is the lowest 6 bits for R type (not meaningful for others) + wire [5:0] FUNCT_C; + assign FUNCT_C = INS_C[5:0]; + + // Register addresses (not meaningful for J-type instructions) + wire [4:0] RS_C, RT_C; + assign RS_C = INS_C[25:21]; + assign RT_C = INS_C[20:16]; + + + //-------------------------------------------------------------------- + // Registers between pipeline stages + + always @(posedge clk) begin + // A-B registers + PC_B <= PC_A; + INS_B <= INS_A; + + // B-C registers + PC_C <= PC_B; + INS_C <= INS_B; + OP_C <= OP_B; + end + +endmodule From 813fb7f9edae981d87f0549aa5e1c62c70b529eb Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Wed, 15 Nov 2017 18:40:12 -0500 Subject: [PATCH 38/78] Repaired Makefile MARS path --- sim/asm/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sim/asm/Makefile b/sim/asm/Makefile index 3b27942..ab8c462 100644 --- a/sim/asm/Makefile +++ b/sim/asm/Makefile @@ -3,7 +3,7 @@ # Get PROGRAM and MEMDUMP from project settings include ../settings.mk -MARS_PATH := ../../Mars4_5.jar +MARS_PATH := ~/Documents/CompArch/mips/Mars4_5.jar MARS_OPTS := a mc CompactTextAtZero MARS := java -jar $(MARS_PATH) $(MARS_OPTS) From e3652baf963b4c3a69b7198c15834b6786613d9a Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Wed, 15 Nov 2017 18:57:38 -0500 Subject: [PATCH 39/78] Change assembly test to quicksort --- sim/asm/fib_func.asm | 132 ------------------------ sim/asm/quicksort.asm | 231 ++++++++++++++++++++++++++++++++++++++++++ sim/settings.mk | 2 +- 3 files changed, 232 insertions(+), 133 deletions(-) delete mode 100644 sim/asm/fib_func.asm create mode 100644 sim/asm/quicksort.asm diff --git a/sim/asm/fib_func.asm b/sim/asm/fib_func.asm deleted file mode 100644 index d2d5279..0000000 --- a/sim/asm/fib_func.asm +++ /dev/null @@ -1,132 +0,0 @@ -# Function call example: recursive Fibonacci - -main: -# Set up arguments for call to fib_test -addi $a0, $zero, 4 # arg0 = 4 -addi $a1, $zero, 10 # arg1 = 10 -jal fib_test - -# Print result -add $a0, $zero, $v0 # Copy result into argument register a0 -jal print_result - -# Jump to "exit", rather than falling through to subroutines -j program_end - -#------------------------------------------------------------------------------ -# Fibonacci test function. Equivalent C code: -# int fib_test(arg0, arg1) { -# return Fibonacci(arg0) + Fibonacci(arg1); -# } -# By MIPS calling convention, expects arguments in -# registers a0 and a1, and returns result in register v0. -fib_test: -# We will use s0 and s1 registers in this function, plus the ra register -# to return at the end. Save them to stack in case caller was using them. -addi $sp, $sp, -12 # Allocate three words on stack at once for three pushes -sw $ra, 8($sp) # Push ra on the stack (will be overwritten by Fib function calls) -sw $s0, 4($sp) # Push s0 onto stack -sw $s1, 0($sp) # Push s1 onto stack - -# a1 may be overwritten by called functions, so save it to s1 (saved temporary), -# which called function won't change, so we can use it later for the second fib call -add $s1, $zero, $a1 - -# Call Fib(arg0), save result in s0 -# arg0 is already in register a0, placed there by caller of fib_test -jal fib # Call fib(4), returns in register v0 -add $s0, $zero, $v0 # Move result to s0 so we can call fib again without overwriting - -# Call Fib(arg1), save result in s1 -add $a0, $zero, $s1 # Move original arg1 into register a0 for function call -jal fib -add $s1, $zero, $v0 # Move result to s1 - -# Add Fib(arg0) and Fib(arg1) into v0 (return value for fib_test) -add $v0, $s0, $s1 - -# Restore original values to s0 and s1 registers from stack before returning -lw $s1, 0($sp) # Pop s1 from stack -lw $s0, 4($sp) # Pop s0 from stack -lw $ra, 8($sp) # Pop ra from the stack so we can return to caller -addi $sp, $sp, 12 # Adjust stack pointer to reflect pops - -jr $ra # Return to caller - -#------------------------------------------------------------------------------ -# Recursive Fibonacci function. Equivalent C code: -# -# int Fibonacci(int n) { -# if (n == 0) return 0; // Base case -# if (n == 1) return 1; // Base case -# int fib_1 = Fibonacci(n - 1); -# int fib_2 = Fibonacci(n - 2); -# return fib_1+fib_2; -# } -fib: -# Test base cases. If we're in a base case, return directly (no need to use stack) -bne $a0, 0, testone -add $v0, $zero, $zero # a0 == 0 -> return 0 -jr $ra -testone: -bne $a0, 1, fib_body -add $v0, $zero, $a0 # a0 == 1 -> return 1 -jr $ra - -fib_body: -# Create stack frame for fib: push ra and s0 -addi $sp, $sp, -8 # Allocate two words on stack at once for two pushes -sw $ra, 4($sp) # Push ra on the stack (will be overwritten by recursive function calls) -sw $s0, 0($sp) # Push s0 onto stack - -# Call Fib(n-1), save result in s0 -add $s0, $zero, $a0 # Save a0 argument (n) in register s0 -addi $a0, $a0, -1 # a0 = n-1 -jal fib -add $a0, $s0, -2 # a0 = n-2 -add $s0, $zero, $v0 # s0 = Fib(n-1) - -# Call Fib(n-2), compute final result -jal fib -add $v0, $v0, $s0 # v0 = Fib(n-2) + Fib(n-1) - -# Restore registers and pop stack frame -lw $ra, 4($sp) -lw $s0, 0($sp) -addi $sp, $sp, 8 - -jr $ra # Return to caller - -#------------------------------------------------------------------------------ -# Utility function to print results -print_result: -# Create stack frame for ra and s0 -addi $sp, $sp, -8 -sw $ra, 4($sp) -sw $s0, 0($sp) - -add $s0, $zero, $a0 # Save argument (integer to print) to s0 - -li $v0, 4 # Service code to print string -la $a0, result_str # Argument is memory address of string to print -syscall - -li $v0, 1 # Service code to print integer -add $a0, $zero, $s0 # Argument is integer to print -syscall - -# Restore registers and pop stack frame -lw $ra, 4($sp) -lw $s0, 0($sp) -addi $sp, $sp, 8 - -#------------------------------------------------------------------------------ -# Jump loop to end execution, so we don't fall through to .data section -program_end: -j program_end - - -#------------------------------------------------------------------------------ -.data -# Null-terminated string to print as part of result -result_str: .asciiz "\nFib(4)+Fib(10) = " diff --git a/sim/asm/quicksort.asm b/sim/asm/quicksort.asm new file mode 100644 index 0000000..501470a --- /dev/null +++ b/sim/asm/quicksort.asm @@ -0,0 +1,231 @@ +main: +addi $sp, $zero, 0x00003ffc +la $s0, array +addi $a0, $zero, 0 +addi $a1, $zero, 9 +jal quicksort +j done + + +quicksort: +# $s0 = arr* +# $a0 = start +# $a1 = end +# $t0 = pivot +# $t1 = branch check temporary (for xori and slt) + + +# if start < end, run quicksort +slt $t1, $a0, $a1 +bne $t1, $zero, run +j end + +run: +# push frame onto stack +addi $sp, $sp, -12 +sw $ra, 8($sp) +sw $a0, 4($sp) +sw $a1, ($sp) + +# pivot = partition (arr, start, end) +jal partition + +# pop frame from stack +lw $ra, 8($sp) +lw $a0, 4($sp) +lw $a1, ($sp) +addi $sp, $sp, 12 + +add $t0, $zero, $v0 + +# push frame onto stack +addi $sp, $sp, -16 +sw $ra, 12($sp) +sw $a0, 8($sp) +sw $a1, 4($sp) +sw $t0, ($sp) + +# quicksort(arr, start, pivot - 1) +addi $a1, $t0, -1 + +jal quicksort + +# pop frame from stack +lw $ra, 12($sp) +lw $a0, 8($sp) +lw $a1, 4($sp) +lw $t0, ($sp) +addi $sp, $sp, 16 + +# push frame onto stack +addi $sp, $sp, -12 +sw $ra, 8($sp) +sw $a0, 4($sp) +sw $a1, ($sp) + +# quicksort(arr, pivot + 1, end) +add $a0, $t0, 1 + +jal quicksort + +# pop frame from stack +lw $ra, 8($sp) +lw $a0, 4($sp) +lw $a1, ($sp) +addi $sp, $sp, 12 + +end: +jr $ra + + +partition: +# $v0 = return val +# $a0 = start +# $a1 = end +# $a2 = arr index (calcMemAddr) +# $s0 = arr* +# $s1 = pivot +# $s2 = i (counter) +# $s3 = j (counter) +# $s4 = arr[i] val +# $s5 = arr[j] val +# $t0 = branch check temporary (for xori and slt) +# $t3 = arr[end] addr +# $t4 = arr[i] addr +# $t5 = arr[j] addr + +addi $sp, $sp, -4 +sw $ra, ($sp) +# ----------------------------------------------------------------- +## int pivot = arr[end] +## int i = start - 1; + +# set arr index to end and call calcMemAddr +add $a2, $zero, $a1 +jal calcMemAddr +# set arr[end] addr +add $t3, $zero, $v0 + +# set reg pivot to mem[arr[end]] +lw $s1, ($t3) + +# set i to start - 1 +sub $s2, $a0, 1 + +# ----------------------------------------------------------------- +## for (int j = start; j < end; j++) { +## if (arr[j] <= pivot) { +## i++; +## int temp = arr[i]; +## arr[i] = arr[j]; +## arr[j] = temp; +## } +## } + +# set j to start and jump to check +add $s3, $zero, $a0 +j forcheck +forloop: + +# set arr index to j and call calcMemAddr +add $a2, $zero, $s3 +jal calcMemAddr +# set arr[j] addr +add $t5, $zero, $v0 + +# set reg arr[j] to mem[arr[j]] +lw $s5, ($t5) + +# check if arr[j] <= pivot +addi $s1, $s1, 1 +slt $t0, $s5, $s1 +addi $s1, $s1, -1 + +# execute swap if slt is true +bne $t0, $zero, swap +j increment +swap: +# i++ +addi $s2, $s2, 1 + +# set arr index to i and call calcMemAddr +add $a2, $zero, $s2 +jal calcMemAddr +# set arr[i] addr +add $t4, $zero, $v0 + +# set reg arr[i] to mem[arr[i]] +lw $s4, ($t4) + +# store in opposite places +sw $s4, ($t5) +sw $s5, ($t4) + +# increment j +increment: +addi $s3, $s3, 1 +# break for loop when j = end +forcheck: +bne $s3, $a1, forloop + +# ----------------------------------------------------------------- +## int temp = arr[i + 1]; +## arr[i + 1] = arr[end]; +## arr[end] = temp; +## return i + 1; + +# set i to i + 1, arr index to i + 1 and call calcMemAddr +addi $s2, $s2, 1 +add $a2, $zero, $s2 +jal calcMemAddr + +# set reg arr[i] to mem[arr[i + 1]] +lw $s4, ($v0) +# store pivot at mem[arr[i + 1]] +sw $s1, ($v0) + +# store reg arr[i] (holding arr[i + 1]) into mem[arr[end]] +sw $s4, ($t3) + +#return i + 1 +add $v0, $zero, $s2 +lw $ra, ($sp) +addi $sp, $sp, 4 +jr $ra + + +calcMemAddr: +# $v0 = addr (return) +# $t0 = multiply counter temporary +# $t1 = branch check temporary (for xori and slt) + +# set addr to arr* and mult counter to 0 +add $v0, $zero, $s0 +addi $t0, $zero, 0 +calc: +# add index to addr, 1 to mult counter +add $v0, $v0, $a2 +addi $t0, $t0, 1 +# if mult counter != 4, loop +xori $t1, $t0, 4 +bne $t1, $zero, calc +jr $ra + + +done: +j done +# addi $v0, $zero, 10 +# syscall + +.data +array: +0x00000009 +0x00000005 +0x00000003 +0x00000006 +0x00000002 +0x00000008 +0x00000007 +0x00000003 +0x00000001 +0x00000004 diff --git a/sim/settings.mk b/sim/settings.mk index 2002840..3dd73db 100644 --- a/sim/settings.mk +++ b/sim/settings.mk @@ -3,7 +3,7 @@ ## Assembly settings # Assembly program (minus .asm extension) -PROGRAM := fib_func +PROGRAM := quicksort # Memory image(s) to create from the assembly program MEMDUMP := $(PROGRAM).text.hex From 6bb3b3bd48f1278e2e6d7f38ba911882198c770d Mon Sep 17 00:00:00 2001 From: juicyslew Date: Wed, 15 Nov 2017 21:44:00 -0500 Subject: [PATCH 40/78] concatenated the Memories --- dataMemory.v | 3 +++ dataPath.v | 14 ++++++++------ instructionFetch.v | 17 ++++++++++------- singleCycleCPU.v | 25 ++++++++++++++++++++++--- 4 files changed, 43 insertions(+), 16 deletions(-) diff --git a/dataMemory.v b/dataMemory.v index 20f0dca..6ec6ddb 100644 --- a/dataMemory.v +++ b/dataMemory.v @@ -13,7 +13,9 @@ module dataMemory ) ( output reg [width-1:0] dataOut, + output reg [width-1:0] InstrOut, input [addresswidth-1:0] address, + input [addresswidth-1:0] InstrAddr, input writeEnable, input [width-1:0] dataIn, input clk @@ -24,6 +26,7 @@ module dataMemory if(writeEnable) memory[address] <= dataIn; dataOut <= memory[address]; + InstrOut <= memory[InstrAddr]; end endmodule diff --git a/dataPath.v b/dataPath.v index 5090e3c..c33b340 100644 --- a/dataPath.v +++ b/dataPath.v @@ -3,14 +3,17 @@ //------------------------------------------------------------------------------ `include "alu.v" -`include "dataMemory.v" +//`include "dataMemory.v" `include "regfile.v" `include "signExtend.v" module dataPath( output carryout, ovf, zero, output [31:0] Da, - input [29:0] PC, + output [31:0] ALU_out, + output [31:0] Db, + input [31:0] mem_dout, + input [31:0] PC, input [4:0] Rs, input [4:0] Rt, input [4:0] Rd, @@ -19,7 +22,7 @@ module dataPath( input reg_dst, input ALU_src, input [2:0] ALU_ctrl, - input mem_wr, + //input mem_wr, input mem_to_reg, input jl, input jal, @@ -35,7 +38,7 @@ module dataPath( wire [31:0] Dw; // Output of writeback/PC+8 mux for JAL wire [31:0] se_ze_imm16; // Output of sign/zero extender wire [31:0] A, B; // Inputs to ALU - wire [31:0] ALU_out; // Output of ALU + //wire [31:0] ALU_out; // Output of ALU wire [31:0] writeback; // Output of mem_to_reg mux wire [31:0] Db; // Output of regfile Db wire [31:0] mem_dout; // Output of memory @@ -59,8 +62,7 @@ module dataPath( ALU alu(ALU_out, carryout, ovf, zero, A, B, ALU_ctrl); // Set up data memory - dataMemory #(32,32'h4000,32) data_mem (mem_dout, ALU_out, mem_wr, Db, clk); - + //dataMemory #(32,32'h4000,32) data_mem (mem_dout, ALU_out, mem_wr, Db, clk); // Set up load/result mux assign writeback = mem_to_reg ? mem_dout : ALU_out; diff --git a/instructionFetch.v b/instructionFetch.v index efc8bdb..9117211 100644 --- a/instructionFetch.v +++ b/instructionFetch.v @@ -1,11 +1,11 @@ -`include "regfile-dependencies/register32.v" -`include "signExtend.v" -`include "instructionMemory.v" +//`include "regfile-dependencies/register32.v" +//`include "signExtend.v" +//`include "instructionMemory.v" module instructionFetch ( - output[31:0] Instr, - output[31:0] PC, + //output[31:0] Instr, + output [31:0] PC, input[25:0] TargetAddr, input[15:0] Imm16, input zero, @@ -15,6 +15,7 @@ module instructionFetch input jl, input clk ); + //initial PC = 29'b0; //Jumping wire[31:0] newAddr; wire[31:0] jumpaddr; @@ -23,11 +24,13 @@ module instructionFetch wire[31:0] same_branch_addr; wire[31:0] signextimm; wire muxsig1; + wire[31:0] regwrite; + //wire nextAddr; register32 PC_module (PC, newAddr, 1'b1, clk); signExtend IF_SE (signextimm, Imm16, 1'b0); - instructionMemory InstMem(Instr, {PC[31:2], 2'b00}, clk); - assign jumpaddr = {PC[31:28],TargetAddr, 2'b00}; + //instructionMemory InstMem(Instr, {PC[31:2], 2'b00}, clk); + assign jumpaddr = {PC[29:26],TargetAddr, 2'b00}; assign muxsig1 = (!zero && Branch); assign addunit = muxsig1 ? signextimm : 32'b0; assign added = addunit + PC + 1; diff --git a/singleCycleCPU.v b/singleCycleCPU.v index 2fab070..54929cf 100644 --- a/singleCycleCPU.v +++ b/singleCycleCPU.v @@ -8,6 +8,7 @@ `include "dataPath.v" `include "instructionFetch.v" `include "instructionDecode.v" +`include "dataMemory.v" module singleCycleCPU ( input clk @@ -15,7 +16,7 @@ module singleCycleCPU ( wire carryout, ovf, zero; wire [31:0] Da; - wire [29:0] PC; + wire [31:0] PC; wire [25:0] target_address; wire [4:0] rs; wire [4:0] rt; @@ -34,8 +35,13 @@ module singleCycleCPU ( wire zero_ext; wire [31:0] instruction; + wire [31:0] ALU_out; + wire [31:0] Db; + wire [31:0] mem_dout; + wire [31:0] InstrAddr; + instructionFetch instr_fetch( - instruction, + //instruction, PC, target_address, imm16, @@ -70,6 +76,9 @@ module singleCycleCPU ( dataPath data_path( carryout, ovf, zero, Da, + ALU_out, + Db, + mem_dout, PC, rs, rt, @@ -79,7 +88,7 @@ module singleCycleCPU ( reg_dst, ALU_src, ALU_ctrl, - mem_wr, + //mem_wr, mem_to_reg, jl, jal, @@ -88,6 +97,16 @@ module singleCycleCPU ( zero_ext, clk ); + dataMemory #(.addresswidth(32),.depth(32'h4000),.width(32)) + data_mem ( + .dataOut(mem_dout), + .InstrOut(instruction), + .address(ALU_out), + .InstrAddr(PC), + .writeEnable(mem_wr), + .dataIn(Db), + .clk(clk) + ); From 0bc95ced6f9af094c55ad7d0e3c40702463887c9 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Tue, 14 Nov 2017 18:26:33 -0500 Subject: [PATCH 41/78] Add simple assembly test bench for all functionality --- asmtest/DRAGAN/basic_testbench.asm | 146 +++++++++++++++++++++++++++++ 1 file changed, 146 insertions(+) create mode 100644 asmtest/DRAGAN/basic_testbench.asm diff --git a/asmtest/DRAGAN/basic_testbench.asm b/asmtest/DRAGAN/basic_testbench.asm new file mode 100644 index 0000000..52433a0 --- /dev/null +++ b/asmtest/DRAGAN/basic_testbench.asm @@ -0,0 +1,146 @@ +# Test bench function for Lab3 reduced MIPS ISA +# $s7 = ('tests failed') ? 1 : 0 + +main: # Run all tests conditionally + +jal test_lw_sw +bne $s7, $zero, test_end + +jal test_bne +bne $s7, $zero, test_end + +jal test_xori +bne $s7, $zero, test_end + +jal test_add +bne $s7, $zero, test_end + +jal test_sub +bne $s7, $zero, test_end + +jal test_slt +bne $s7, $zero, test_end + +j test_end + + +test_lw_sw: +# Initialize values +addi $t0, $zero, 30 +addi $t1, $zero, 87 +# store to heap +sw $t0, 16($gp) +sw $t1, 12($gp) +# load from heap +lw $t2, 16($gp) +lw $t3, 12($gp) +# compare equality +bne $t0, $t2, lw_sw_fail +bne $t1, $t3, lw_sw_fail +jr $ra + +lw_sw_fail: +addi $s7, $zero, 1 #set testfailed to true +jr $ra + +test_bne: +# initialize values +addi $t0, $zero, 40 +addi $t1, $zero, 16 +addi $t2, $zero, 40 + +bne $t0, $t2, bne_fail +bne $t0, $t1, bne_pass +bne_fail: +addi $s7, $zero, 1 +bne_pass: +jr $ra + +test_xori: +#initialize values +addi $t0, $zero, 0x0000f0f0 +addi $t1, $zero, 0x00000f0f + +# xor identical things +xori $t2, $t0, 0x0000f0f0 +# fail if not zero +bne $t2, $zero, xori_fail +# xor different things +xori $t2, $t1, 0X0000f0f0 +# pass if zero +bne $t2, $zero, xori_pass +xori_fail: +addi $s7, $zero, 1 +xori_pass: +jr $ra + +test_add: +# initialize values +addi $t0, $zero, 13 +addi $t1, $zero, 31 +addi $t2, $zero, 44 + +# add registers +add $t3, $t0, $t1 +# fail if not expected result +bne $t3, $t2, add_fail +# otherwise pass +j add_pass + +add_fail: +addi $s7, $zero, 1 +add_pass: +jr $ra + + +test_sub: +# initialize values +addi $t0, $zero, 31 +addi $t1, $zero, 13 +addi $t2, $zero, 18 + +# subtract registers +sub $t3, $t0, $t1 +# fail if not expected result +bne $t3, $t2, sub_fail +# otherwise pass +j sub_pass + +sub_fail: +addi $s7, $zero, 1 +sub_pass: +jr $ra + +test_slt: +# initialize values +addi $t0, $zero, 13 +addi $t1, $zero, 15 + +# 13 is less than 15 +slt $t2, $t0, $t1 +bne $t2, 1, slt_fail + +# 15 is not less than 13 +slt $t2, $t1, $t0 +bne $t2, 0, slt_fail +j slt_pass + +slt_fail: +addi $s7, $zero, 1 +slt_pass: +jr $ra + + +# End the program +test_end: +add $a0, $s7, $zero +addi $v0, $zero, 1 +syscall +j jump_trap + +jump_trap: +nop +nop +nop +j jump_trap + From e51f10a0b30f13c2cbc1d6a98dfa6cfbd3b0c9e1 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Tue, 14 Nov 2017 18:32:02 -0500 Subject: [PATCH 42/78] Enforce file naming convention on instruction fetch module --- InstructionFetch.v => instructionFetch.v | 6 +++--- InstructionMemory.v => instructionMemory.v | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) rename InstructionFetch.v => instructionFetch.v (87%) rename InstructionMemory.v => instructionMemory.v (94%) diff --git a/InstructionFetch.v b/instructionFetch.v similarity index 87% rename from InstructionFetch.v rename to instructionFetch.v index 1471162..2bd72ea 100644 --- a/InstructionFetch.v +++ b/instructionFetch.v @@ -1,9 +1,9 @@ `include "regfile-dependencies/register32.v" `include "signExtend.v" `include "alu.v" -`include "InstructionMemory.v" +`include "instructionMemory.v" -module InstructionFetch +module instructionFetch ( output[31:0] Instr, output[31:0] PC, @@ -27,7 +27,7 @@ module InstructionFetch //wire nextAddr; register32 PC_module (PC, newAddr, 1'b1, clk); signExtend IF_SE (signextimm, Imm16, 1'b0); - InstructionMemory InstMem(Instr, {PC[31:2], 2'b00}, clk); + instructionMemory InstMem(Instr, {PC[31:2], 2'b00}, clk); assign jumpaddr = {PC[31:28],TargetAddr, 2'b00}; assign muxsig1 = (!zero && Branch); assign addunit = muxsig1 ? signextimm : 32'b0; diff --git a/InstructionMemory.v b/instructionMemory.v similarity index 94% rename from InstructionMemory.v rename to instructionMemory.v index 596401c..335f609 100644 --- a/InstructionMemory.v +++ b/instructionMemory.v @@ -1,4 +1,4 @@ -module InstructionMemory +module instructionMemory ( output[31:0] DataOut, //input regWE, //for actual memory From a6d46032df38fc9606da84a72de6fec88596c3c0 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Tue, 14 Nov 2017 18:33:49 -0500 Subject: [PATCH 43/78] Remove alu.v include in instructionFetch.v; --- instructionFetch.v | 1 - 1 file changed, 1 deletion(-) diff --git a/instructionFetch.v b/instructionFetch.v index 2bd72ea..efc8bdb 100644 --- a/instructionFetch.v +++ b/instructionFetch.v @@ -1,6 +1,5 @@ `include "regfile-dependencies/register32.v" `include "signExtend.v" -`include "alu.v" `include "instructionMemory.v" module instructionFetch From 706555b04148013b5df2977614f52a8301042790 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Tue, 14 Nov 2017 18:38:15 -0500 Subject: [PATCH 44/78] Reduce size of data memory to recommended 0x4000 --- dataPath.v | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dataPath.v b/dataPath.v index c1fb701..5090e3c 100644 --- a/dataPath.v +++ b/dataPath.v @@ -59,12 +59,12 @@ module dataPath( ALU alu(ALU_out, carryout, ovf, zero, A, B, ALU_ctrl); // Set up data memory - dataMemory #(32,2**32,32) data_mem (mem_dout, ALU_out, mem_wr, Db, clk); + dataMemory #(32,32'h4000,32) data_mem (mem_dout, ALU_out, mem_wr, Db, clk); // Set up load/result mux assign writeback = mem_to_reg ? mem_dout : ALU_out; - + From abe9852d4ab2384daa3182df045d8c8763e480ba Mon Sep 17 00:00:00 2001 From: juicyslew Date: Wed, 15 Nov 2017 21:44:00 -0500 Subject: [PATCH 45/78] concatenated the Memories --- dataMemory.v | 3 +++ dataPath.v | 14 ++++++++------ instructionFetch.v | 17 ++++++++++------- singleCycleCPU.v | 25 ++++++++++++++++++++++--- 4 files changed, 43 insertions(+), 16 deletions(-) diff --git a/dataMemory.v b/dataMemory.v index 20f0dca..6ec6ddb 100644 --- a/dataMemory.v +++ b/dataMemory.v @@ -13,7 +13,9 @@ module dataMemory ) ( output reg [width-1:0] dataOut, + output reg [width-1:0] InstrOut, input [addresswidth-1:0] address, + input [addresswidth-1:0] InstrAddr, input writeEnable, input [width-1:0] dataIn, input clk @@ -24,6 +26,7 @@ module dataMemory if(writeEnable) memory[address] <= dataIn; dataOut <= memory[address]; + InstrOut <= memory[InstrAddr]; end endmodule diff --git a/dataPath.v b/dataPath.v index 5090e3c..c33b340 100644 --- a/dataPath.v +++ b/dataPath.v @@ -3,14 +3,17 @@ //------------------------------------------------------------------------------ `include "alu.v" -`include "dataMemory.v" +//`include "dataMemory.v" `include "regfile.v" `include "signExtend.v" module dataPath( output carryout, ovf, zero, output [31:0] Da, - input [29:0] PC, + output [31:0] ALU_out, + output [31:0] Db, + input [31:0] mem_dout, + input [31:0] PC, input [4:0] Rs, input [4:0] Rt, input [4:0] Rd, @@ -19,7 +22,7 @@ module dataPath( input reg_dst, input ALU_src, input [2:0] ALU_ctrl, - input mem_wr, + //input mem_wr, input mem_to_reg, input jl, input jal, @@ -35,7 +38,7 @@ module dataPath( wire [31:0] Dw; // Output of writeback/PC+8 mux for JAL wire [31:0] se_ze_imm16; // Output of sign/zero extender wire [31:0] A, B; // Inputs to ALU - wire [31:0] ALU_out; // Output of ALU + //wire [31:0] ALU_out; // Output of ALU wire [31:0] writeback; // Output of mem_to_reg mux wire [31:0] Db; // Output of regfile Db wire [31:0] mem_dout; // Output of memory @@ -59,8 +62,7 @@ module dataPath( ALU alu(ALU_out, carryout, ovf, zero, A, B, ALU_ctrl); // Set up data memory - dataMemory #(32,32'h4000,32) data_mem (mem_dout, ALU_out, mem_wr, Db, clk); - + //dataMemory #(32,32'h4000,32) data_mem (mem_dout, ALU_out, mem_wr, Db, clk); // Set up load/result mux assign writeback = mem_to_reg ? mem_dout : ALU_out; diff --git a/instructionFetch.v b/instructionFetch.v index efc8bdb..9117211 100644 --- a/instructionFetch.v +++ b/instructionFetch.v @@ -1,11 +1,11 @@ -`include "regfile-dependencies/register32.v" -`include "signExtend.v" -`include "instructionMemory.v" +//`include "regfile-dependencies/register32.v" +//`include "signExtend.v" +//`include "instructionMemory.v" module instructionFetch ( - output[31:0] Instr, - output[31:0] PC, + //output[31:0] Instr, + output [31:0] PC, input[25:0] TargetAddr, input[15:0] Imm16, input zero, @@ -15,6 +15,7 @@ module instructionFetch input jl, input clk ); + //initial PC = 29'b0; //Jumping wire[31:0] newAddr; wire[31:0] jumpaddr; @@ -23,11 +24,13 @@ module instructionFetch wire[31:0] same_branch_addr; wire[31:0] signextimm; wire muxsig1; + wire[31:0] regwrite; + //wire nextAddr; register32 PC_module (PC, newAddr, 1'b1, clk); signExtend IF_SE (signextimm, Imm16, 1'b0); - instructionMemory InstMem(Instr, {PC[31:2], 2'b00}, clk); - assign jumpaddr = {PC[31:28],TargetAddr, 2'b00}; + //instructionMemory InstMem(Instr, {PC[31:2], 2'b00}, clk); + assign jumpaddr = {PC[29:26],TargetAddr, 2'b00}; assign muxsig1 = (!zero && Branch); assign addunit = muxsig1 ? signextimm : 32'b0; assign added = addunit + PC + 1; diff --git a/singleCycleCPU.v b/singleCycleCPU.v index 2fab070..54929cf 100644 --- a/singleCycleCPU.v +++ b/singleCycleCPU.v @@ -8,6 +8,7 @@ `include "dataPath.v" `include "instructionFetch.v" `include "instructionDecode.v" +`include "dataMemory.v" module singleCycleCPU ( input clk @@ -15,7 +16,7 @@ module singleCycleCPU ( wire carryout, ovf, zero; wire [31:0] Da; - wire [29:0] PC; + wire [31:0] PC; wire [25:0] target_address; wire [4:0] rs; wire [4:0] rt; @@ -34,8 +35,13 @@ module singleCycleCPU ( wire zero_ext; wire [31:0] instruction; + wire [31:0] ALU_out; + wire [31:0] Db; + wire [31:0] mem_dout; + wire [31:0] InstrAddr; + instructionFetch instr_fetch( - instruction, + //instruction, PC, target_address, imm16, @@ -70,6 +76,9 @@ module singleCycleCPU ( dataPath data_path( carryout, ovf, zero, Da, + ALU_out, + Db, + mem_dout, PC, rs, rt, @@ -79,7 +88,7 @@ module singleCycleCPU ( reg_dst, ALU_src, ALU_ctrl, - mem_wr, + //mem_wr, mem_to_reg, jl, jal, @@ -88,6 +97,16 @@ module singleCycleCPU ( zero_ext, clk ); + dataMemory #(.addresswidth(32),.depth(32'h4000),.width(32)) + data_mem ( + .dataOut(mem_dout), + .InstrOut(instruction), + .address(ALU_out), + .InstrAddr(PC), + .writeEnable(mem_wr), + .dataIn(Db), + .clk(clk) + ); From 237f600d5ea43e6d77f6ef28636ab3eee0ac14f8 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Wed, 15 Nov 2017 19:38:33 -0500 Subject: [PATCH 46/78] Add singleCycleCPU.t.v --- singleCycleCPU.t.v | 67 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 singleCycleCPU.t.v diff --git a/singleCycleCPU.t.v b/singleCycleCPU.t.v new file mode 100644 index 0000000..092df59 --- /dev/null +++ b/singleCycleCPU.t.v @@ -0,0 +1,67 @@ +//------------------------------------------------------------------------------ +// Top-level test for single-cycle CPU +//------------------------------------------------------------------------------ + +`include "singleCycleCPU.v" + +module singleCycleCPUTestHarness(); + + // + reg clk; + + // Clock generation + initial clk=0; + always #10 clk = !clk; + + // Instantiate fake CPU + fake_cpu cpu(.clk(clk), .reset(reset)); + + + reg [1023:0] mem_fn; + reg [1023:0] dump_fn; + + // Test sequence + initial begin + + // // Get command line arguments for memory image and VCD dump file + // // http://iverilog.wikia.com/wiki/Simulation + // // http://www.project-veripage.com/plusarg.php + // if (! $value$plusargs("mem_fn=%s", mem_fn)) begin + // $display("ERROR: provide +mem_fn=[path to memory image] argument"); + // $finish(); + // end + // if (! $value$plusargs("dump_fn=%s", dump_fn)) begin + // $display("ERROR: provide +dump_fn=[path for VCD dump] argument"); + // $finish(); + // end + + + // Load CPU memory from (assembly) dump file + $readmemh("quicksort.text.hex", cpu.memory, 0, 32'h0FFC); + $readmemh("quicksort.text.data", cpu.memory, 32'h2000, 32'h3FFF); + // Alternate: Explicitly state which array element range to read into + //$readmemh("mymem.hex", memory, 10, 80); + + // Dump waveforms to file + // Note: arrays (e.g. memory) are not dumped by default + $dumpfile(dump_fn); + $dumpvars(); + + // Display a few cycles just for quick checking + // Note: I'm just dumping instruction bits, but you can do some + // self-checking test cases based on your CPU and program and + // automatically report the results. + $display("Time | PC | Instruction"); + repeat(3) begin + $display("%4t | %h | %h", $time, cpu.PC_A, cpu.INS_A); #20 ; + end + $display("... more execution (see waveform)"); + + // End execution after some time delay - adjust to match your program + // or use a smarter approach like looking for an exit syscall or the + // PC to be the value of the last instruction in your program. + #2000 $finish(); + + end + +endmodule From 0d1fc89a45e20b182b49d5a21fd6b02328b6e587 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Wed, 15 Nov 2017 23:43:32 -0500 Subject: [PATCH 47/78] Restore fib_func assembly test --- sim/asm/fib_func.asm | 132 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 132 insertions(+) create mode 100644 sim/asm/fib_func.asm diff --git a/sim/asm/fib_func.asm b/sim/asm/fib_func.asm new file mode 100644 index 0000000..d2d5279 --- /dev/null +++ b/sim/asm/fib_func.asm @@ -0,0 +1,132 @@ +# Function call example: recursive Fibonacci + +main: +# Set up arguments for call to fib_test +addi $a0, $zero, 4 # arg0 = 4 +addi $a1, $zero, 10 # arg1 = 10 +jal fib_test + +# Print result +add $a0, $zero, $v0 # Copy result into argument register a0 +jal print_result + +# Jump to "exit", rather than falling through to subroutines +j program_end + +#------------------------------------------------------------------------------ +# Fibonacci test function. Equivalent C code: +# int fib_test(arg0, arg1) { +# return Fibonacci(arg0) + Fibonacci(arg1); +# } +# By MIPS calling convention, expects arguments in +# registers a0 and a1, and returns result in register v0. +fib_test: +# We will use s0 and s1 registers in this function, plus the ra register +# to return at the end. Save them to stack in case caller was using them. +addi $sp, $sp, -12 # Allocate three words on stack at once for three pushes +sw $ra, 8($sp) # Push ra on the stack (will be overwritten by Fib function calls) +sw $s0, 4($sp) # Push s0 onto stack +sw $s1, 0($sp) # Push s1 onto stack + +# a1 may be overwritten by called functions, so save it to s1 (saved temporary), +# which called function won't change, so we can use it later for the second fib call +add $s1, $zero, $a1 + +# Call Fib(arg0), save result in s0 +# arg0 is already in register a0, placed there by caller of fib_test +jal fib # Call fib(4), returns in register v0 +add $s0, $zero, $v0 # Move result to s0 so we can call fib again without overwriting + +# Call Fib(arg1), save result in s1 +add $a0, $zero, $s1 # Move original arg1 into register a0 for function call +jal fib +add $s1, $zero, $v0 # Move result to s1 + +# Add Fib(arg0) and Fib(arg1) into v0 (return value for fib_test) +add $v0, $s0, $s1 + +# Restore original values to s0 and s1 registers from stack before returning +lw $s1, 0($sp) # Pop s1 from stack +lw $s0, 4($sp) # Pop s0 from stack +lw $ra, 8($sp) # Pop ra from the stack so we can return to caller +addi $sp, $sp, 12 # Adjust stack pointer to reflect pops + +jr $ra # Return to caller + +#------------------------------------------------------------------------------ +# Recursive Fibonacci function. Equivalent C code: +# +# int Fibonacci(int n) { +# if (n == 0) return 0; // Base case +# if (n == 1) return 1; // Base case +# int fib_1 = Fibonacci(n - 1); +# int fib_2 = Fibonacci(n - 2); +# return fib_1+fib_2; +# } +fib: +# Test base cases. If we're in a base case, return directly (no need to use stack) +bne $a0, 0, testone +add $v0, $zero, $zero # a0 == 0 -> return 0 +jr $ra +testone: +bne $a0, 1, fib_body +add $v0, $zero, $a0 # a0 == 1 -> return 1 +jr $ra + +fib_body: +# Create stack frame for fib: push ra and s0 +addi $sp, $sp, -8 # Allocate two words on stack at once for two pushes +sw $ra, 4($sp) # Push ra on the stack (will be overwritten by recursive function calls) +sw $s0, 0($sp) # Push s0 onto stack + +# Call Fib(n-1), save result in s0 +add $s0, $zero, $a0 # Save a0 argument (n) in register s0 +addi $a0, $a0, -1 # a0 = n-1 +jal fib +add $a0, $s0, -2 # a0 = n-2 +add $s0, $zero, $v0 # s0 = Fib(n-1) + +# Call Fib(n-2), compute final result +jal fib +add $v0, $v0, $s0 # v0 = Fib(n-2) + Fib(n-1) + +# Restore registers and pop stack frame +lw $ra, 4($sp) +lw $s0, 0($sp) +addi $sp, $sp, 8 + +jr $ra # Return to caller + +#------------------------------------------------------------------------------ +# Utility function to print results +print_result: +# Create stack frame for ra and s0 +addi $sp, $sp, -8 +sw $ra, 4($sp) +sw $s0, 0($sp) + +add $s0, $zero, $a0 # Save argument (integer to print) to s0 + +li $v0, 4 # Service code to print string +la $a0, result_str # Argument is memory address of string to print +syscall + +li $v0, 1 # Service code to print integer +add $a0, $zero, $s0 # Argument is integer to print +syscall + +# Restore registers and pop stack frame +lw $ra, 4($sp) +lw $s0, 0($sp) +addi $sp, $sp, 8 + +#------------------------------------------------------------------------------ +# Jump loop to end execution, so we don't fall through to .data section +program_end: +j program_end + + +#------------------------------------------------------------------------------ +.data +# Null-terminated string to print as part of result +result_str: .asciiz "\nFib(4)+Fib(10) = " From 5d889b303dbe47dadc5b89f3193e8af9b78f6c2e Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Thu, 16 Nov 2017 17:44:33 -0500 Subject: [PATCH 48/78] Reorganize folder structure for simulation --- sim/Makefile => Makefile | 0 {sim/asm => asm}/Makefile | 0 asm/basic_testbench.asm | 146 +++++++++++ {sim/asm => asm}/quicksort.asm | 0 .../fake_cpu-fib_func.gtkw | 0 {sim/filters => filters}/mips-funct.filter | 0 {sim/filters => filters}/mips-opcodes.filter | 0 {sim/filters => filters}/mips-regs.filter | 0 settings.mk | 18 ++ sim_example/Makefile | 31 +++ {sim => sim_example}/README.md | 0 sim_example/asm/Makefile | 27 ++ {sim => sim_example}/asm/fib_func.asm | 0 sim_example/asm/quicksort.asm | 231 ++++++++++++++++++ sim_example/filters/fake_cpu-fib_func.gtkw | 52 ++++ sim_example/filters/mips-funct.filter | 21 ++ sim_example/filters/mips-opcodes.filter | 20 ++ sim_example/filters/mips-regs.filter | 33 +++ {sim => sim_example}/settings.mk | 0 {sim => sim_example}/verilog/Makefile | 0 {sim => sim_example}/verilog/counter.v | 0 {sim => sim_example}/verilog/fake_cpu.t.v | 0 {sim => sim_example}/verilog/fake_cpu.v | 0 verilog/Makefile | 23 ++ {Memories => verilog/Memories}/addingtest.dat | 0 {Memories => verilog/Memories}/mips1.asm | 0 alu.t.v => verilog/alu.t.v | 0 alu.v => verilog/alu.v | 0 dataMemory.v => verilog/dataMemory.v | 0 dataPath.v => verilog/dataPath.v | 0 .../instructionDecode.v | 0 .../instructionFetch.v | 0 .../instructionMemory.v | 0 opcodeDecode.v => verilog/opcodeDecode.v | 0 .../regfile-dependencies}/decoders.v | 0 .../regfile-dependencies}/mux32to1by32.v | 0 .../regfile-dependencies}/register32.v | 0 .../regfile-dependencies}/register32zero.v | 0 regfile.v => verilog/regfile.v | 0 signExtend.v => verilog/signExtend.v | 0 .../singleCycleCPU.t.v | 12 +- singleCycleCPU.v => verilog/singleCycleCPU.v | 0 42 files changed, 606 insertions(+), 8 deletions(-) rename sim/Makefile => Makefile (100%) rename {sim/asm => asm}/Makefile (100%) create mode 100644 asm/basic_testbench.asm rename {sim/asm => asm}/quicksort.asm (100%) rename {sim/filters => filters}/fake_cpu-fib_func.gtkw (100%) rename {sim/filters => filters}/mips-funct.filter (100%) rename {sim/filters => filters}/mips-opcodes.filter (100%) rename {sim/filters => filters}/mips-regs.filter (100%) create mode 100644 settings.mk create mode 100644 sim_example/Makefile rename {sim => sim_example}/README.md (100%) create mode 100644 sim_example/asm/Makefile rename {sim => sim_example}/asm/fib_func.asm (100%) create mode 100644 sim_example/asm/quicksort.asm create mode 100644 sim_example/filters/fake_cpu-fib_func.gtkw create mode 100644 sim_example/filters/mips-funct.filter create mode 100644 sim_example/filters/mips-opcodes.filter create mode 100644 sim_example/filters/mips-regs.filter rename {sim => sim_example}/settings.mk (100%) rename {sim => sim_example}/verilog/Makefile (100%) rename {sim => sim_example}/verilog/counter.v (100%) rename {sim => sim_example}/verilog/fake_cpu.t.v (100%) rename {sim => sim_example}/verilog/fake_cpu.v (100%) create mode 100644 verilog/Makefile rename {Memories => verilog/Memories}/addingtest.dat (100%) rename {Memories => verilog/Memories}/mips1.asm (100%) rename alu.t.v => verilog/alu.t.v (100%) rename alu.v => verilog/alu.v (100%) rename dataMemory.v => verilog/dataMemory.v (100%) rename dataPath.v => verilog/dataPath.v (100%) rename instructionDecode.v => verilog/instructionDecode.v (100%) rename instructionFetch.v => verilog/instructionFetch.v (100%) rename instructionMemory.v => verilog/instructionMemory.v (100%) rename opcodeDecode.v => verilog/opcodeDecode.v (100%) rename {regfile-dependencies => verilog/regfile-dependencies}/decoders.v (100%) rename {regfile-dependencies => verilog/regfile-dependencies}/mux32to1by32.v (100%) rename {regfile-dependencies => verilog/regfile-dependencies}/register32.v (100%) rename {regfile-dependencies => verilog/regfile-dependencies}/register32zero.v (100%) rename regfile.v => verilog/regfile.v (100%) rename signExtend.v => verilog/signExtend.v (100%) rename singleCycleCPU.t.v => verilog/singleCycleCPU.t.v (88%) rename singleCycleCPU.v => verilog/singleCycleCPU.v (100%) diff --git a/sim/Makefile b/Makefile similarity index 100% rename from sim/Makefile rename to Makefile diff --git a/sim/asm/Makefile b/asm/Makefile similarity index 100% rename from sim/asm/Makefile rename to asm/Makefile diff --git a/asm/basic_testbench.asm b/asm/basic_testbench.asm new file mode 100644 index 0000000..52433a0 --- /dev/null +++ b/asm/basic_testbench.asm @@ -0,0 +1,146 @@ +# Test bench function for Lab3 reduced MIPS ISA +# $s7 = ('tests failed') ? 1 : 0 + +main: # Run all tests conditionally + +jal test_lw_sw +bne $s7, $zero, test_end + +jal test_bne +bne $s7, $zero, test_end + +jal test_xori +bne $s7, $zero, test_end + +jal test_add +bne $s7, $zero, test_end + +jal test_sub +bne $s7, $zero, test_end + +jal test_slt +bne $s7, $zero, test_end + +j test_end + + +test_lw_sw: +# Initialize values +addi $t0, $zero, 30 +addi $t1, $zero, 87 +# store to heap +sw $t0, 16($gp) +sw $t1, 12($gp) +# load from heap +lw $t2, 16($gp) +lw $t3, 12($gp) +# compare equality +bne $t0, $t2, lw_sw_fail +bne $t1, $t3, lw_sw_fail +jr $ra + +lw_sw_fail: +addi $s7, $zero, 1 #set testfailed to true +jr $ra + +test_bne: +# initialize values +addi $t0, $zero, 40 +addi $t1, $zero, 16 +addi $t2, $zero, 40 + +bne $t0, $t2, bne_fail +bne $t0, $t1, bne_pass +bne_fail: +addi $s7, $zero, 1 +bne_pass: +jr $ra + +test_xori: +#initialize values +addi $t0, $zero, 0x0000f0f0 +addi $t1, $zero, 0x00000f0f + +# xor identical things +xori $t2, $t0, 0x0000f0f0 +# fail if not zero +bne $t2, $zero, xori_fail +# xor different things +xori $t2, $t1, 0X0000f0f0 +# pass if zero +bne $t2, $zero, xori_pass +xori_fail: +addi $s7, $zero, 1 +xori_pass: +jr $ra + +test_add: +# initialize values +addi $t0, $zero, 13 +addi $t1, $zero, 31 +addi $t2, $zero, 44 + +# add registers +add $t3, $t0, $t1 +# fail if not expected result +bne $t3, $t2, add_fail +# otherwise pass +j add_pass + +add_fail: +addi $s7, $zero, 1 +add_pass: +jr $ra + + +test_sub: +# initialize values +addi $t0, $zero, 31 +addi $t1, $zero, 13 +addi $t2, $zero, 18 + +# subtract registers +sub $t3, $t0, $t1 +# fail if not expected result +bne $t3, $t2, sub_fail +# otherwise pass +j sub_pass + +sub_fail: +addi $s7, $zero, 1 +sub_pass: +jr $ra + +test_slt: +# initialize values +addi $t0, $zero, 13 +addi $t1, $zero, 15 + +# 13 is less than 15 +slt $t2, $t0, $t1 +bne $t2, 1, slt_fail + +# 15 is not less than 13 +slt $t2, $t1, $t0 +bne $t2, 0, slt_fail +j slt_pass + +slt_fail: +addi $s7, $zero, 1 +slt_pass: +jr $ra + + +# End the program +test_end: +add $a0, $s7, $zero +addi $v0, $zero, 1 +syscall +j jump_trap + +jump_trap: +nop +nop +nop +j jump_trap + diff --git a/sim/asm/quicksort.asm b/asm/quicksort.asm similarity index 100% rename from sim/asm/quicksort.asm rename to asm/quicksort.asm diff --git a/sim/filters/fake_cpu-fib_func.gtkw b/filters/fake_cpu-fib_func.gtkw similarity index 100% rename from sim/filters/fake_cpu-fib_func.gtkw rename to filters/fake_cpu-fib_func.gtkw diff --git a/sim/filters/mips-funct.filter b/filters/mips-funct.filter similarity index 100% rename from sim/filters/mips-funct.filter rename to filters/mips-funct.filter diff --git a/sim/filters/mips-opcodes.filter b/filters/mips-opcodes.filter similarity index 100% rename from sim/filters/mips-opcodes.filter rename to filters/mips-opcodes.filter diff --git a/sim/filters/mips-regs.filter b/filters/mips-regs.filter similarity index 100% rename from sim/filters/mips-regs.filter rename to filters/mips-regs.filter diff --git a/settings.mk b/settings.mk new file mode 100644 index 0000000..af0629a --- /dev/null +++ b/settings.mk @@ -0,0 +1,18 @@ +# Project-specific settings + +## Assembly settings + +# Assembly program (minus .asm extension) +PROGRAM := quicksort + +# Memory image(s) to create from the assembly program +MEMDUMP := $(PROGRAM).text.hex + + +## Verilog settings + +# Top-level module/filename (minus .v/.t.v extension) +TOPLEVEL := singleCycleCPU + +# All circuits included by the toplevel $(TOPLEVEL).t.v +CIRCUITS := $(TOPLEVEL).v diff --git a/sim_example/Makefile b/sim_example/Makefile new file mode 100644 index 0000000..839197d --- /dev/null +++ b/sim_example/Makefile @@ -0,0 +1,31 @@ +# Assembly simulation in Verilog unified Makefile example + +include settings.mk + +GTKWAVE := gtkwave +SIM := vvp + +# Final waveform to produce is the combination of machine and program +WAVEFORM := $(TOPLEVEL)-$(PROGRAM).vcd +WAVEOPTS := filters/$(WAVEFORM:vcd=gtkw) + + +# Build memory image, compile Verilog, run simulation to produce VCD trace +$(WAVEFORM): settings.mk + $(MAKE) -C asm $(MEMDUMP) + $(MAKE) -C verilog $(TOPLEVEL).vvp + $(SIM) verilog/$(TOPLEVEL).vvp +mem_fn=asm/$(MEMDUMP) +dump_fn=$@ + + +# Open waveform with saved formatting and filter options +scope: $(WAVEFORM) $(WAVEOPTS) + $(GTKWAVE) $(WAVEOPTS) + + +# Remove generated files, including from subdirectories +clean: + $(MAKE) -C asm clean + $(MAKE) -C verilog clean + rm -f $(WAVEFORM) + +.PHONY: scope clean diff --git a/sim/README.md b/sim_example/README.md similarity index 100% rename from sim/README.md rename to sim_example/README.md diff --git a/sim_example/asm/Makefile b/sim_example/asm/Makefile new file mode 100644 index 0000000..ab8c462 --- /dev/null +++ b/sim_example/asm/Makefile @@ -0,0 +1,27 @@ +# Generate machine code memory image from MIPS assembly + +# Get PROGRAM and MEMDUMP from project settings +include ../settings.mk + +MARS_PATH := ~/Documents/CompArch/mips/Mars4_5.jar +MARS_OPTS := a mc CompactTextAtZero +MARS := java -jar $(MARS_PATH) $(MARS_OPTS) + + +# Pattern rule for generating .text memory dump from MIPS assembly +%.text.hex: %.asm + $(MARS) dump .text HexText $@ $< + +# Pattern rule for generating .data memory dump from MIPS assembly +%.data.hex: %.asm + $(MARS) dump .data HexText $@ $< + + +# Shortcut (phony) targets for convenience +assemble: $(MEMDUMP) + +clean: + -rm -f $(MEMDUMP) + + +.PHONY: assemble clean diff --git a/sim/asm/fib_func.asm b/sim_example/asm/fib_func.asm similarity index 100% rename from sim/asm/fib_func.asm rename to sim_example/asm/fib_func.asm diff --git a/sim_example/asm/quicksort.asm b/sim_example/asm/quicksort.asm new file mode 100644 index 0000000..501470a --- /dev/null +++ b/sim_example/asm/quicksort.asm @@ -0,0 +1,231 @@ +main: +addi $sp, $zero, 0x00003ffc +la $s0, array +addi $a0, $zero, 0 +addi $a1, $zero, 9 +jal quicksort +j done + + +quicksort: +# $s0 = arr* +# $a0 = start +# $a1 = end +# $t0 = pivot +# $t1 = branch check temporary (for xori and slt) + + +# if start < end, run quicksort +slt $t1, $a0, $a1 +bne $t1, $zero, run +j end + +run: +# push frame onto stack +addi $sp, $sp, -12 +sw $ra, 8($sp) +sw $a0, 4($sp) +sw $a1, ($sp) + +# pivot = partition (arr, start, end) +jal partition + +# pop frame from stack +lw $ra, 8($sp) +lw $a0, 4($sp) +lw $a1, ($sp) +addi $sp, $sp, 12 + +add $t0, $zero, $v0 + +# push frame onto stack +addi $sp, $sp, -16 +sw $ra, 12($sp) +sw $a0, 8($sp) +sw $a1, 4($sp) +sw $t0, ($sp) + +# quicksort(arr, start, pivot - 1) +addi $a1, $t0, -1 + +jal quicksort + +# pop frame from stack +lw $ra, 12($sp) +lw $a0, 8($sp) +lw $a1, 4($sp) +lw $t0, ($sp) +addi $sp, $sp, 16 + +# push frame onto stack +addi $sp, $sp, -12 +sw $ra, 8($sp) +sw $a0, 4($sp) +sw $a1, ($sp) + +# quicksort(arr, pivot + 1, end) +add $a0, $t0, 1 + +jal quicksort + +# pop frame from stack +lw $ra, 8($sp) +lw $a0, 4($sp) +lw $a1, ($sp) +addi $sp, $sp, 12 + +end: +jr $ra + + +partition: +# $v0 = return val +# $a0 = start +# $a1 = end +# $a2 = arr index (calcMemAddr) +# $s0 = arr* +# $s1 = pivot +# $s2 = i (counter) +# $s3 = j (counter) +# $s4 = arr[i] val +# $s5 = arr[j] val +# $t0 = branch check temporary (for xori and slt) +# $t3 = arr[end] addr +# $t4 = arr[i] addr +# $t5 = arr[j] addr + +addi $sp, $sp, -4 +sw $ra, ($sp) +# ----------------------------------------------------------------- +## int pivot = arr[end] +## int i = start - 1; + +# set arr index to end and call calcMemAddr +add $a2, $zero, $a1 +jal calcMemAddr +# set arr[end] addr +add $t3, $zero, $v0 + +# set reg pivot to mem[arr[end]] +lw $s1, ($t3) + +# set i to start - 1 +sub $s2, $a0, 1 + +# ----------------------------------------------------------------- +## for (int j = start; j < end; j++) { +## if (arr[j] <= pivot) { +## i++; +## int temp = arr[i]; +## arr[i] = arr[j]; +## arr[j] = temp; +## } +## } + +# set j to start and jump to check +add $s3, $zero, $a0 +j forcheck +forloop: + +# set arr index to j and call calcMemAddr +add $a2, $zero, $s3 +jal calcMemAddr +# set arr[j] addr +add $t5, $zero, $v0 + +# set reg arr[j] to mem[arr[j]] +lw $s5, ($t5) + +# check if arr[j] <= pivot +addi $s1, $s1, 1 +slt $t0, $s5, $s1 +addi $s1, $s1, -1 + +# execute swap if slt is true +bne $t0, $zero, swap +j increment +swap: +# i++ +addi $s2, $s2, 1 + +# set arr index to i and call calcMemAddr +add $a2, $zero, $s2 +jal calcMemAddr +# set arr[i] addr +add $t4, $zero, $v0 + +# set reg arr[i] to mem[arr[i]] +lw $s4, ($t4) + +# store in opposite places +sw $s4, ($t5) +sw $s5, ($t4) + +# increment j +increment: +addi $s3, $s3, 1 +# break for loop when j = end +forcheck: +bne $s3, $a1, forloop + +# ----------------------------------------------------------------- +## int temp = arr[i + 1]; +## arr[i + 1] = arr[end]; +## arr[end] = temp; +## return i + 1; + +# set i to i + 1, arr index to i + 1 and call calcMemAddr +addi $s2, $s2, 1 +add $a2, $zero, $s2 +jal calcMemAddr + +# set reg arr[i] to mem[arr[i + 1]] +lw $s4, ($v0) +# store pivot at mem[arr[i + 1]] +sw $s1, ($v0) + +# store reg arr[i] (holding arr[i + 1]) into mem[arr[end]] +sw $s4, ($t3) + +#return i + 1 +add $v0, $zero, $s2 +lw $ra, ($sp) +addi $sp, $sp, 4 +jr $ra + + +calcMemAddr: +# $v0 = addr (return) +# $t0 = multiply counter temporary +# $t1 = branch check temporary (for xori and slt) + +# set addr to arr* and mult counter to 0 +add $v0, $zero, $s0 +addi $t0, $zero, 0 +calc: +# add index to addr, 1 to mult counter +add $v0, $v0, $a2 +addi $t0, $t0, 1 +# if mult counter != 4, loop +xori $t1, $t0, 4 +bne $t1, $zero, calc +jr $ra + + +done: +j done +# addi $v0, $zero, 10 +# syscall + +.data +array: +0x00000009 +0x00000005 +0x00000003 +0x00000006 +0x00000002 +0x00000008 +0x00000007 +0x00000003 +0x00000001 +0x00000004 diff --git a/sim_example/filters/fake_cpu-fib_func.gtkw b/sim_example/filters/fake_cpu-fib_func.gtkw new file mode 100644 index 0000000..b39c5ac --- /dev/null +++ b/sim_example/filters/fake_cpu-fib_func.gtkw @@ -0,0 +1,52 @@ +[*] +[*] GTKWave Analyzer v3.3.79 (w)1999-2017 BSI +[*] Wed Nov 15 00:28:31 2017 +[*] +[dumpfile] "fake_cpu-fib_func.vcd" +[dumpfile_mtime] "Wed Nov 15 00:24:17 2017" +[dumpfile_size] 7517 +[savefile] "filters/fake_cpu-fib_func.gtkw" +[timestart] 0 +[size] 1000 600 +[pos] -1 -1 +*-5.270822 57 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +[treeopen] cpu_test. +[treeopen] cpu_test.cpu. +[sst_width] 193 +[signals_width] 133 +[sst_expanded] 1 +[sst_vpaned_height] 168 +@28 +cpu_test.clk +cpu_test.reset +@200 +---A-- +@22 +cpu_test.cpu.PC_A[31:0] +cpu_test.cpu.INS_A[31:0] +@200 +---B-- +@22 +cpu_test.cpu.PC_B[31:0] +cpu_test.cpu.INS_B[31:0] +@2022 +^2 filters/mips-opcodes.filter +cpu_test.cpu.OP_B[5:0] +@200 +---C-- +@22 +cpu_test.cpu.PC_C[31:0] +cpu_test.cpu.INS_C[31:0] +@2022 +^4 filters/mips-funct.filter +cpu_test.cpu.FUNCT_C[5:0] +@2023 +^2 filters/mips-opcodes.filter +cpu_test.cpu.OP_C[5:0] +@2022 +^1 filters/mips-regs.filter +cpu_test.cpu.RS_C[4:0] +^1 filters/mips-regs.filter +cpu_test.cpu.RT_C[4:0] +[pattern_trace] 1 +[pattern_trace] 0 diff --git a/sim_example/filters/mips-funct.filter b/sim_example/filters/mips-funct.filter new file mode 100644 index 0000000..654e706 --- /dev/null +++ b/sim_example/filters/mips-funct.filter @@ -0,0 +1,21 @@ +# MIPS funct codes (R-type, OP=0x00) +00 sll +02 srl +03 sra +08 jr +10 mfhi +12 mflo +18 mult +19 multu +1A div +1B divu +20 add +21 addu +22 sub +23 subu +24 and +25 or +26 xor +27 nor +2A slt +2B sltu diff --git a/sim_example/filters/mips-opcodes.filter b/sim_example/filters/mips-opcodes.filter new file mode 100644 index 0000000..fedc8cc --- /dev/null +++ b/sim_example/filters/mips-opcodes.filter @@ -0,0 +1,20 @@ +# MIPS opcodes +00 R-type +02 j +03 jal +04 beq +05 bne +08 addi +09 addiu +0A slti +0B sltiu +0C andi +0D ori +0F lui +10 mfc0 +23 lw +24 lbu +25 lhu +28 sb +29 sh +2B sw diff --git a/sim_example/filters/mips-regs.filter b/sim_example/filters/mips-regs.filter new file mode 100644 index 0000000..f704bdb --- /dev/null +++ b/sim_example/filters/mips-regs.filter @@ -0,0 +1,33 @@ +# MIPS register names +00 $zero +01 $at +02 $v0 +03 $v1 +04 $a0 +05 $a1 +06 $a2 +07 $a3 +08 $t0 +09 $t1 +0A $t2 +0B $t3 +0C $t4 +0D $t5 +0E $t6 +0F $t7 +10 $s0 +11 $s1 +12 $s2 +13 $s3 +14 $s4 +15 $s5 +16 $s6 +17 $s7 +18 $t8 +19 $t9 +1a $k0 +1b $k1 +1c $gp +1d $sp +1e $fp +1f $ra diff --git a/sim/settings.mk b/sim_example/settings.mk similarity index 100% rename from sim/settings.mk rename to sim_example/settings.mk diff --git a/sim/verilog/Makefile b/sim_example/verilog/Makefile similarity index 100% rename from sim/verilog/Makefile rename to sim_example/verilog/Makefile diff --git a/sim/verilog/counter.v b/sim_example/verilog/counter.v similarity index 100% rename from sim/verilog/counter.v rename to sim_example/verilog/counter.v diff --git a/sim/verilog/fake_cpu.t.v b/sim_example/verilog/fake_cpu.t.v similarity index 100% rename from sim/verilog/fake_cpu.t.v rename to sim_example/verilog/fake_cpu.t.v diff --git a/sim/verilog/fake_cpu.v b/sim_example/verilog/fake_cpu.v similarity index 100% rename from sim/verilog/fake_cpu.v rename to sim_example/verilog/fake_cpu.v diff --git a/verilog/Makefile b/verilog/Makefile new file mode 100644 index 0000000..43374fb --- /dev/null +++ b/verilog/Makefile @@ -0,0 +1,23 @@ +# Verilog compilation Makefile example + +# Get TOPLEVEL and CIRCUITS variables from project settings +include ../settings.mk + +ICARUS_OPTS := -Wall +IVERILOG := iverilog $(ICARUS_OPTS) +LINT := verilator --lint-only +SIM := vvp + + +# Pattern rule for compiling vvp (Icarus assembly) from a testbench +%.vvp: %.t.v $(CIRCUITS) + $(IVERILOG) -o $@ $< + + +# Shortcut (phony) targets for convenience +compile: $(TOPLEVEL).vvp + +clean: + -rm -f $(TOPLEVEL).vvp + +.PHONY: compile clean diff --git a/Memories/addingtest.dat b/verilog/Memories/addingtest.dat similarity index 100% rename from Memories/addingtest.dat rename to verilog/Memories/addingtest.dat diff --git a/Memories/mips1.asm b/verilog/Memories/mips1.asm similarity index 100% rename from Memories/mips1.asm rename to verilog/Memories/mips1.asm diff --git a/alu.t.v b/verilog/alu.t.v similarity index 100% rename from alu.t.v rename to verilog/alu.t.v diff --git a/alu.v b/verilog/alu.v similarity index 100% rename from alu.v rename to verilog/alu.v diff --git a/dataMemory.v b/verilog/dataMemory.v similarity index 100% rename from dataMemory.v rename to verilog/dataMemory.v diff --git a/dataPath.v b/verilog/dataPath.v similarity index 100% rename from dataPath.v rename to verilog/dataPath.v diff --git a/instructionDecode.v b/verilog/instructionDecode.v similarity index 100% rename from instructionDecode.v rename to verilog/instructionDecode.v diff --git a/instructionFetch.v b/verilog/instructionFetch.v similarity index 100% rename from instructionFetch.v rename to verilog/instructionFetch.v diff --git a/instructionMemory.v b/verilog/instructionMemory.v similarity index 100% rename from instructionMemory.v rename to verilog/instructionMemory.v diff --git a/opcodeDecode.v b/verilog/opcodeDecode.v similarity index 100% rename from opcodeDecode.v rename to verilog/opcodeDecode.v diff --git a/regfile-dependencies/decoders.v b/verilog/regfile-dependencies/decoders.v similarity index 100% rename from regfile-dependencies/decoders.v rename to verilog/regfile-dependencies/decoders.v diff --git a/regfile-dependencies/mux32to1by32.v b/verilog/regfile-dependencies/mux32to1by32.v similarity index 100% rename from regfile-dependencies/mux32to1by32.v rename to verilog/regfile-dependencies/mux32to1by32.v diff --git a/regfile-dependencies/register32.v b/verilog/regfile-dependencies/register32.v similarity index 100% rename from regfile-dependencies/register32.v rename to verilog/regfile-dependencies/register32.v diff --git a/regfile-dependencies/register32zero.v b/verilog/regfile-dependencies/register32zero.v similarity index 100% rename from regfile-dependencies/register32zero.v rename to verilog/regfile-dependencies/register32zero.v diff --git a/regfile.v b/verilog/regfile.v similarity index 100% rename from regfile.v rename to verilog/regfile.v diff --git a/signExtend.v b/verilog/signExtend.v similarity index 100% rename from signExtend.v rename to verilog/signExtend.v diff --git a/singleCycleCPU.t.v b/verilog/singleCycleCPU.t.v similarity index 88% rename from singleCycleCPU.t.v rename to verilog/singleCycleCPU.t.v index 092df59..a37f575 100644 --- a/singleCycleCPU.t.v +++ b/verilog/singleCycleCPU.t.v @@ -14,11 +14,7 @@ module singleCycleCPUTestHarness(); always #10 clk = !clk; // Instantiate fake CPU - fake_cpu cpu(.clk(clk), .reset(reset)); - - - reg [1023:0] mem_fn; - reg [1023:0] dump_fn; + singleCycleCPU cpu(.clk(clk)); // Test sequence initial begin @@ -37,14 +33,14 @@ module singleCycleCPUTestHarness(); // Load CPU memory from (assembly) dump file - $readmemh("quicksort.text.hex", cpu.memory, 0, 32'h0FFC); - $readmemh("quicksort.text.data", cpu.memory, 32'h2000, 32'h3FFF); + $readmemh("quicksort.text.hex", cpu.data_memory, 0, 32'h0FFC); + $readmemh("quicksort.text.data", cpu.data_memory, 32'h2000, 32'h3FFF); // Alternate: Explicitly state which array element range to read into //$readmemh("mymem.hex", memory, 10, 80); // Dump waveforms to file // Note: arrays (e.g. memory) are not dumped by default - $dumpfile(dump_fn); + $dumpfile(quicksort.vcd); $dumpvars(); // Display a few cycles just for quick checking diff --git a/singleCycleCPU.v b/verilog/singleCycleCPU.v similarity index 100% rename from singleCycleCPU.v rename to verilog/singleCycleCPU.v From bdbbe22735604ebb19be82964577416333299e40 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Thu, 16 Nov 2017 17:53:08 -0500 Subject: [PATCH 49/78] Fix singleCycleCPU to comply with makefile --- verilog/singleCycleCPU.t.v | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/verilog/singleCycleCPU.t.v b/verilog/singleCycleCPU.t.v index a37f575..708b0f3 100644 --- a/verilog/singleCycleCPU.t.v +++ b/verilog/singleCycleCPU.t.v @@ -33,14 +33,14 @@ module singleCycleCPUTestHarness(); // Load CPU memory from (assembly) dump file - $readmemh("quicksort.text.hex", cpu.data_memory, 0, 32'h0FFC); - $readmemh("quicksort.text.data", cpu.data_memory, 32'h2000, 32'h3FFF); + $readmemh("quicksort.text.hex", cpu.data_mem.memory, 0, 32'h0FFC); + $readmemh("quicksort.text.data", cpu.data_mem.memory, 32'h2000, 32'h3FFF); // Alternate: Explicitly state which array element range to read into //$readmemh("mymem.hex", memory, 10, 80); // Dump waveforms to file // Note: arrays (e.g. memory) are not dumped by default - $dumpfile(quicksort.vcd); + $dumpfile("quicksort.vcd"); $dumpvars(); // Display a few cycles just for quick checking @@ -49,7 +49,7 @@ module singleCycleCPUTestHarness(); // automatically report the results. $display("Time | PC | Instruction"); repeat(3) begin - $display("%4t | %h | %h", $time, cpu.PC_A, cpu.INS_A); #20 ; + $display("%4t | %h | %h", $time, cpu.PC, cpu.instruction); #20 ; end $display("... more execution (see waveform)"); From 025a35c4fafece93caa26eddddc5bef393b5ae82 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Thu, 16 Nov 2017 17:53:33 -0500 Subject: [PATCH 50/78] Set program counter to 0 initially --- verilog/regfile-dependencies/register32.v | 3 +++ 1 file changed, 3 insertions(+) diff --git a/verilog/regfile-dependencies/register32.v b/verilog/regfile-dependencies/register32.v index 45e45d0..439fe39 100644 --- a/verilog/regfile-dependencies/register32.v +++ b/verilog/regfile-dependencies/register32.v @@ -8,6 +8,9 @@ input[31:0] d, input wrenable, input clk ); + initial begin + q = 32'b0; + end always @(posedge clk) begin if(wrenable) begin From 27721842a7640f3722f15278763fecc7612e2cae Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Thu, 16 Nov 2017 17:55:17 -0500 Subject: [PATCH 51/78] Made output last longer at end --- verilog/singleCycleCPU.t.v | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/verilog/singleCycleCPU.t.v b/verilog/singleCycleCPU.t.v index 708b0f3..e3e040b 100644 --- a/verilog/singleCycleCPU.t.v +++ b/verilog/singleCycleCPU.t.v @@ -48,7 +48,7 @@ module singleCycleCPUTestHarness(); // self-checking test cases based on your CPU and program and // automatically report the results. $display("Time | PC | Instruction"); - repeat(3) begin + repeat(10) begin $display("%4t | %h | %h", $time, cpu.PC, cpu.instruction); #20 ; end $display("... more execution (see waveform)"); From 2e470fdc500be6be17dc43acd39b40c658dbb62d Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Thu, 16 Nov 2017 18:03:56 -0500 Subject: [PATCH 52/78] Fix file extension on memory read --- verilog/singleCycleCPU.t.v | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/verilog/singleCycleCPU.t.v b/verilog/singleCycleCPU.t.v index e3e040b..5215436 100644 --- a/verilog/singleCycleCPU.t.v +++ b/verilog/singleCycleCPU.t.v @@ -33,8 +33,8 @@ module singleCycleCPUTestHarness(); // Load CPU memory from (assembly) dump file - $readmemh("quicksort.text.hex", cpu.data_mem.memory, 0, 32'h0FFC); - $readmemh("quicksort.text.data", cpu.data_mem.memory, 32'h2000, 32'h3FFF); + $readmemh("~/Documents/CompArch/Lab3/asm/quicksort.text.hex", cpu.data_mem.memory, 0, 32'h0FFC); + $readmemh("~/Documents/Comparch/Lab3/asm/quicksort.data.hex", cpu.data_mem.memory, 32'h2000, 32'h3FFF); // Alternate: Explicitly state which array element range to read into //$readmemh("mymem.hex", memory, 10, 80); From ab5f5dda0eaf491ad332e9d4d99da8a03bc01548 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Thu, 16 Nov 2017 19:40:19 -0500 Subject: [PATCH 53/78] Switch to basic testbench, failing --- filters/singleCycleCPU.gtkw | 39 +++++++++++++++++++++++++++++++++++++ settings.mk | 2 +- verilog/singleCycleCPU.t.v | 4 ++-- 3 files changed, 42 insertions(+), 3 deletions(-) create mode 100644 filters/singleCycleCPU.gtkw diff --git a/filters/singleCycleCPU.gtkw b/filters/singleCycleCPU.gtkw new file mode 100644 index 0000000..bdb96d9 --- /dev/null +++ b/filters/singleCycleCPU.gtkw @@ -0,0 +1,39 @@ +[*] +[*] GTKWave Analyzer v3.3.66 (w)1999-2015 BSI +[*] Fri Nov 17 00:39:09 2017 +[*] +[dumpfile] "/home/aehoppe/Documents/CompArch/Lab3/quicksort.vcd" +[dumpfile_mtime] "Fri Nov 17 00:26:36 2017" +[dumpfile_size] 33166 +[savefile] "/home/aehoppe/Documents/CompArch/Lab3/filters/singleCycleCPU.gtkw" +[timestart] 0 +[size] 1920 1021 +[pos] -33 -33 +*-5.644512 10 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +[treeopen] singleCycleCPUTestHarness. +[treeopen] singleCycleCPUTestHarness.cpu. +[sst_width] 229 +[signals_width] 190 +[sst_expanded] 1 +[sst_vpaned_height] 286 +@22 +singleCycleCPUTestHarness.cpu.PC[31:0] +@4023 +^>1 /home/aehoppe/Documents/CompArch/mips-dasm/mips-dasm-filter +singleCycleCPUTestHarness.cpu.instruction[31:0] +@2022 +^1 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-opcodes.filter +singleCycleCPUTestHarness.cpu.instr_decode.opcode[5:0] +^2 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-funct.filter +singleCycleCPUTestHarness.cpu.instr_decode.funct[5:0] +^3 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-regs.filter +singleCycleCPUTestHarness.cpu.instr_decode.rs[4:0] +^3 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-regs.filter +singleCycleCPUTestHarness.cpu.instr_decode.rt[4:0] +^3 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-regs.filter +singleCycleCPUTestHarness.cpu.instr_decode.rd[4:0] +@22 +singleCycleCPUTestHarness.cpu.instr_decode.target_address[25:0] +singleCycleCPUTestHarness.cpu.instr_decode.imm16[15:0] +[pattern_trace] 1 +[pattern_trace] 0 diff --git a/settings.mk b/settings.mk index af0629a..1635613 100644 --- a/settings.mk +++ b/settings.mk @@ -3,7 +3,7 @@ ## Assembly settings # Assembly program (minus .asm extension) -PROGRAM := quicksort +PROGRAM := basic_testbench # Memory image(s) to create from the assembly program MEMDUMP := $(PROGRAM).text.hex diff --git a/verilog/singleCycleCPU.t.v b/verilog/singleCycleCPU.t.v index 5215436..a814989 100644 --- a/verilog/singleCycleCPU.t.v +++ b/verilog/singleCycleCPU.t.v @@ -33,8 +33,8 @@ module singleCycleCPUTestHarness(); // Load CPU memory from (assembly) dump file - $readmemh("~/Documents/CompArch/Lab3/asm/quicksort.text.hex", cpu.data_mem.memory, 0, 32'h0FFC); - $readmemh("~/Documents/Comparch/Lab3/asm/quicksort.data.hex", cpu.data_mem.memory, 32'h2000, 32'h3FFF); + $readmemh("asm/basic_testbench.text.hex", cpu.data_mem.memory, 0, 32'h0FFC); + $readmemh("asm/basic_testbench.data.hex", cpu.data_mem.memory, 32'h2000, 32'h3FFF); // Alternate: Explicitly state which array element range to read into //$readmemh("mymem.hex", memory, 10, 80); From 38df87d322bc86b26956f30aab82c7a03c97387c Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Thu, 16 Nov 2017 19:40:19 -0500 Subject: [PATCH 54/78] Switch to basic testbench, failing --- filters/singleCycleCPU.gtkw | 39 +++++++++++++++++++++++++++++++++++++ settings.mk | 2 +- verilog/singleCycleCPU.t.v | 6 +++--- 3 files changed, 43 insertions(+), 4 deletions(-) create mode 100644 filters/singleCycleCPU.gtkw diff --git a/filters/singleCycleCPU.gtkw b/filters/singleCycleCPU.gtkw new file mode 100644 index 0000000..bdb96d9 --- /dev/null +++ b/filters/singleCycleCPU.gtkw @@ -0,0 +1,39 @@ +[*] +[*] GTKWave Analyzer v3.3.66 (w)1999-2015 BSI +[*] Fri Nov 17 00:39:09 2017 +[*] +[dumpfile] "/home/aehoppe/Documents/CompArch/Lab3/quicksort.vcd" +[dumpfile_mtime] "Fri Nov 17 00:26:36 2017" +[dumpfile_size] 33166 +[savefile] "/home/aehoppe/Documents/CompArch/Lab3/filters/singleCycleCPU.gtkw" +[timestart] 0 +[size] 1920 1021 +[pos] -33 -33 +*-5.644512 10 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +[treeopen] singleCycleCPUTestHarness. +[treeopen] singleCycleCPUTestHarness.cpu. +[sst_width] 229 +[signals_width] 190 +[sst_expanded] 1 +[sst_vpaned_height] 286 +@22 +singleCycleCPUTestHarness.cpu.PC[31:0] +@4023 +^>1 /home/aehoppe/Documents/CompArch/mips-dasm/mips-dasm-filter +singleCycleCPUTestHarness.cpu.instruction[31:0] +@2022 +^1 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-opcodes.filter +singleCycleCPUTestHarness.cpu.instr_decode.opcode[5:0] +^2 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-funct.filter +singleCycleCPUTestHarness.cpu.instr_decode.funct[5:0] +^3 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-regs.filter +singleCycleCPUTestHarness.cpu.instr_decode.rs[4:0] +^3 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-regs.filter +singleCycleCPUTestHarness.cpu.instr_decode.rt[4:0] +^3 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-regs.filter +singleCycleCPUTestHarness.cpu.instr_decode.rd[4:0] +@22 +singleCycleCPUTestHarness.cpu.instr_decode.target_address[25:0] +singleCycleCPUTestHarness.cpu.instr_decode.imm16[15:0] +[pattern_trace] 1 +[pattern_trace] 0 diff --git a/settings.mk b/settings.mk index af0629a..1635613 100644 --- a/settings.mk +++ b/settings.mk @@ -3,7 +3,7 @@ ## Assembly settings # Assembly program (minus .asm extension) -PROGRAM := quicksort +PROGRAM := basic_testbench # Memory image(s) to create from the assembly program MEMDUMP := $(PROGRAM).text.hex diff --git a/verilog/singleCycleCPU.t.v b/verilog/singleCycleCPU.t.v index 5215436..20ad528 100644 --- a/verilog/singleCycleCPU.t.v +++ b/verilog/singleCycleCPU.t.v @@ -33,14 +33,14 @@ module singleCycleCPUTestHarness(); // Load CPU memory from (assembly) dump file - $readmemh("~/Documents/CompArch/Lab3/asm/quicksort.text.hex", cpu.data_mem.memory, 0, 32'h0FFC); - $readmemh("~/Documents/Comparch/Lab3/asm/quicksort.data.hex", cpu.data_mem.memory, 32'h2000, 32'h3FFF); + $readmemh("asm/basic_testbench.text.hex", cpu.data_mem.memory, 0, 32'h0FFC); + $readmemh("asm/basic_testbench.data.hex", cpu.data_mem.memory, 32'h2000, 32'h3FFF); // Alternate: Explicitly state which array element range to read into //$readmemh("mymem.hex", memory, 10, 80); // Dump waveforms to file // Note: arrays (e.g. memory) are not dumped by default - $dumpfile("quicksort.vcd"); + $dumpfile("basic_testbench.vcd"); $dumpvars(); // Display a few cycles just for quick checking From a0c7e416bf5cbeb1ec3de208eb863cfcf956fa56 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Thu, 16 Nov 2017 23:01:18 -0500 Subject: [PATCH 55/78] Switch to basic add test --- asm/add.asm | 12 ++++++ ...eCycleCPU.gtkw => singleCycleCPU-add.gtkw} | 0 filters/singleCycleCPU-quicksort.gtkw | 39 +++++++++++++++++++ settings.mk | 2 +- verilog/singleCycleCPU.t.v | 6 +-- 5 files changed, 55 insertions(+), 4 deletions(-) create mode 100644 asm/add.asm rename filters/{singleCycleCPU.gtkw => singleCycleCPU-add.gtkw} (100%) create mode 100644 filters/singleCycleCPU-quicksort.gtkw diff --git a/asm/add.asm b/asm/add.asm new file mode 100644 index 0000000..ff70e4b --- /dev/null +++ b/asm/add.asm @@ -0,0 +1,12 @@ +# most basic test function for MIPS reduced Instantiate + +addi $t0, $zero, 1 +addi $t0, $zero, 2 +addi $t0, $zero, 3 +addi $t0, $zero, 4 +addi $t0, $zero, 5 +addi $t0, $zero, 6 +addi $t0, $zero, 7 +addi $t0, $zero, 8 +addi $t0, $zero, 9 +addi $t0, $zero, 10 diff --git a/filters/singleCycleCPU.gtkw b/filters/singleCycleCPU-add.gtkw similarity index 100% rename from filters/singleCycleCPU.gtkw rename to filters/singleCycleCPU-add.gtkw diff --git a/filters/singleCycleCPU-quicksort.gtkw b/filters/singleCycleCPU-quicksort.gtkw new file mode 100644 index 0000000..bdb96d9 --- /dev/null +++ b/filters/singleCycleCPU-quicksort.gtkw @@ -0,0 +1,39 @@ +[*] +[*] GTKWave Analyzer v3.3.66 (w)1999-2015 BSI +[*] Fri Nov 17 00:39:09 2017 +[*] +[dumpfile] "/home/aehoppe/Documents/CompArch/Lab3/quicksort.vcd" +[dumpfile_mtime] "Fri Nov 17 00:26:36 2017" +[dumpfile_size] 33166 +[savefile] "/home/aehoppe/Documents/CompArch/Lab3/filters/singleCycleCPU.gtkw" +[timestart] 0 +[size] 1920 1021 +[pos] -33 -33 +*-5.644512 10 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +[treeopen] singleCycleCPUTestHarness. +[treeopen] singleCycleCPUTestHarness.cpu. +[sst_width] 229 +[signals_width] 190 +[sst_expanded] 1 +[sst_vpaned_height] 286 +@22 +singleCycleCPUTestHarness.cpu.PC[31:0] +@4023 +^>1 /home/aehoppe/Documents/CompArch/mips-dasm/mips-dasm-filter +singleCycleCPUTestHarness.cpu.instruction[31:0] +@2022 +^1 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-opcodes.filter +singleCycleCPUTestHarness.cpu.instr_decode.opcode[5:0] +^2 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-funct.filter +singleCycleCPUTestHarness.cpu.instr_decode.funct[5:0] +^3 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-regs.filter +singleCycleCPUTestHarness.cpu.instr_decode.rs[4:0] +^3 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-regs.filter +singleCycleCPUTestHarness.cpu.instr_decode.rt[4:0] +^3 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-regs.filter +singleCycleCPUTestHarness.cpu.instr_decode.rd[4:0] +@22 +singleCycleCPUTestHarness.cpu.instr_decode.target_address[25:0] +singleCycleCPUTestHarness.cpu.instr_decode.imm16[15:0] +[pattern_trace] 1 +[pattern_trace] 0 diff --git a/settings.mk b/settings.mk index 1635613..504d345 100644 --- a/settings.mk +++ b/settings.mk @@ -3,7 +3,7 @@ ## Assembly settings # Assembly program (minus .asm extension) -PROGRAM := basic_testbench +PROGRAM := add # Memory image(s) to create from the assembly program MEMDUMP := $(PROGRAM).text.hex diff --git a/verilog/singleCycleCPU.t.v b/verilog/singleCycleCPU.t.v index 20ad528..3ff66d5 100644 --- a/verilog/singleCycleCPU.t.v +++ b/verilog/singleCycleCPU.t.v @@ -33,14 +33,14 @@ module singleCycleCPUTestHarness(); // Load CPU memory from (assembly) dump file - $readmemh("asm/basic_testbench.text.hex", cpu.data_mem.memory, 0, 32'h0FFC); - $readmemh("asm/basic_testbench.data.hex", cpu.data_mem.memory, 32'h2000, 32'h3FFF); + $readmemh("asm/add.text.hex", cpu.data_mem.memory, 0, 32'h0FFC); + $readmemh("asm/add.data.hex", cpu.data_mem.memory, 32'h2000, 32'h3FFF); // Alternate: Explicitly state which array element range to read into //$readmemh("mymem.hex", memory, 10, 80); // Dump waveforms to file // Note: arrays (e.g. memory) are not dumped by default - $dumpfile("basic_testbench.vcd"); + $dumpfile("add.vcd"); $dumpvars(); // Display a few cycles just for quick checking From 8e6d82feced574ff1059c65088b75285fb6da652 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Fri, 17 Nov 2017 00:24:02 -0500 Subject: [PATCH 56/78] modify add to sequence out fetch error, fix Db miswire --- asm/add.asm | 2 ++ filters/singleCycleCPU-add.gtkw | 31 +++++++++++++++++++++---------- verilog/dataPath.v | 3 +-- 3 files changed, 24 insertions(+), 12 deletions(-) diff --git a/asm/add.asm b/asm/add.asm index ff70e4b..4d4a879 100644 --- a/asm/add.asm +++ b/asm/add.asm @@ -1,5 +1,7 @@ # most basic test function for MIPS reduced Instantiate +nop +addi $t0, $zero, 0 addi $t0, $zero, 1 addi $t0, $zero, 2 addi $t0, $zero, 3 diff --git a/filters/singleCycleCPU-add.gtkw b/filters/singleCycleCPU-add.gtkw index bdb96d9..c6b14a7 100644 --- a/filters/singleCycleCPU-add.gtkw +++ b/filters/singleCycleCPU-add.gtkw @@ -1,25 +1,27 @@ [*] [*] GTKWave Analyzer v3.3.66 (w)1999-2015 BSI -[*] Fri Nov 17 00:39:09 2017 +[*] Fri Nov 17 05:06:51 2017 [*] -[dumpfile] "/home/aehoppe/Documents/CompArch/Lab3/quicksort.vcd" -[dumpfile_mtime] "Fri Nov 17 00:26:36 2017" -[dumpfile_size] 33166 -[savefile] "/home/aehoppe/Documents/CompArch/Lab3/filters/singleCycleCPU.gtkw" +[dumpfile] "/home/aehoppe/Documents/CompArch/Lab3/add.vcd" +[dumpfile_mtime] "Fri Nov 17 04:54:22 2017" +[dumpfile_size] 33127 +[savefile] "/home/aehoppe/Documents/CompArch/Lab3/filters/singleCycleCPU-add.gtkw" [timestart] 0 [size] 1920 1021 -[pos] -33 -33 -*-5.644512 10 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +[pos] -1 -1 +*-4.000000 50 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 [treeopen] singleCycleCPUTestHarness. [treeopen] singleCycleCPUTestHarness.cpu. [sst_width] 229 [signals_width] 190 [sst_expanded] 1 [sst_vpaned_height] 286 +@28 +singleCycleCPUTestHarness.cpu.clk @22 singleCycleCPUTestHarness.cpu.PC[31:0] -@4023 -^>1 /home/aehoppe/Documents/CompArch/mips-dasm/mips-dasm-filter +@4022 +^>1 /home/aehoppe/Documents/CompArch/Lab3/filters/../../mips-dasm/mips-dasm-filter singleCycleCPUTestHarness.cpu.instruction[31:0] @2022 ^1 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-opcodes.filter @@ -33,7 +35,16 @@ singleCycleCPUTestHarness.cpu.instr_decode.rt[4:0] ^3 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-regs.filter singleCycleCPUTestHarness.cpu.instr_decode.rd[4:0] @22 -singleCycleCPUTestHarness.cpu.instr_decode.target_address[25:0] singleCycleCPUTestHarness.cpu.instr_decode.imm16[15:0] +singleCycleCPUTestHarness.cpu.instr_decode.target_address[25:0] +singleCycleCPUTestHarness.cpu.Da[31:0] +singleCycleCPUTestHarness.cpu.data_path.A[31:0] +singleCycleCPUTestHarness.cpu.Db[31:0] +@23 +singleCycleCPUTestHarness.cpu.data_path.B[31:0] +@22 +singleCycleCPUTestHarness.cpu.data_path.ALU_out[31:0] +@28 +singleCycleCPUTestHarness.cpu.data_path.ALU_src [pattern_trace] 1 [pattern_trace] 0 diff --git a/verilog/dataPath.v b/verilog/dataPath.v index c33b340..cd07a32 100644 --- a/verilog/dataPath.v +++ b/verilog/dataPath.v @@ -40,7 +40,6 @@ module dataPath( wire [31:0] A, B; // Inputs to ALU //wire [31:0] ALU_out; // Output of ALU wire [31:0] writeback; // Output of mem_to_reg mux - wire [31:0] Db; // Output of regfile Db wire [31:0] mem_dout; // Output of memory // Set up MUXes for regfile write address @@ -55,7 +54,7 @@ module dataPath( // Set up ALU immediate/register source mux assign B = ALU_src ? se_ze_imm16 : Db; - signExtend sign_extend(B, imm16, zero_ext); + signExtend sign_extend(se_ze_imm16, imm16, zero_ext); // Set up ALU assign A = Da; From ed8c45212dee55bfb0372db4deddbd7cf942c1ad Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Fri, 17 Nov 2017 01:21:16 -0500 Subject: [PATCH 57/78] Resolve clocked memory reads --- verilog/dataMemory.v | 7 +++++-- verilog/dataPath.v | 2 +- verilog/instructionFetch.v | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/verilog/dataMemory.v b/verilog/dataMemory.v index 6ec6ddb..be729fe 100644 --- a/verilog/dataMemory.v +++ b/verilog/dataMemory.v @@ -22,11 +22,14 @@ module dataMemory ); reg [width-1:0] memory [depth-1:0]; + always @(*) begin + dataOut <= memory[address]; + InstrOut <= memory[InstrAddr]; + end + always @(posedge clk) begin if(writeEnable) memory[address] <= dataIn; - dataOut <= memory[address]; - InstrOut <= memory[InstrAddr]; end endmodule diff --git a/verilog/dataPath.v b/verilog/dataPath.v index cd07a32..4a8de4e 100644 --- a/verilog/dataPath.v +++ b/verilog/dataPath.v @@ -47,7 +47,7 @@ module dataPath( assign Aw = jal ? 5'd31 : dest_reg; // Set up jal link register mux - assign Dw = jal ? ((PC << 2) + 32'd8) : writeback; + assign Dw = jal ? (PC + 32'd2) : writeback; // Set up regfile regfile reg_file(Da, Db, Dw, Rs, Rt, Aw, reg_wr, clk); diff --git a/verilog/instructionFetch.v b/verilog/instructionFetch.v index 9117211..e2c9508 100644 --- a/verilog/instructionFetch.v +++ b/verilog/instructionFetch.v @@ -30,7 +30,7 @@ module instructionFetch register32 PC_module (PC, newAddr, 1'b1, clk); signExtend IF_SE (signextimm, Imm16, 1'b0); //instructionMemory InstMem(Instr, {PC[31:2], 2'b00}, clk); - assign jumpaddr = {PC[29:26],TargetAddr, 2'b00}; + assign jumpaddr = {PC[29:26],TargetAddr}; assign muxsig1 = (!zero && Branch); assign addunit = muxsig1 ? signextimm : 32'b0; assign added = addunit + PC + 1; From 60a6f0deab22839c1a66e45c167d0fa4219937a3 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Fri, 17 Nov 2017 01:21:43 -0500 Subject: [PATCH 58/78] Running basic testbench --- filters/singleCycleCPU-basic_testbench.gtkw | 50 +++++++++++++++++++++ settings.mk | 2 +- verilog/singleCycleCPU.t.v | 6 +-- 3 files changed, 54 insertions(+), 4 deletions(-) create mode 100644 filters/singleCycleCPU-basic_testbench.gtkw diff --git a/filters/singleCycleCPU-basic_testbench.gtkw b/filters/singleCycleCPU-basic_testbench.gtkw new file mode 100644 index 0000000..ded95bd --- /dev/null +++ b/filters/singleCycleCPU-basic_testbench.gtkw @@ -0,0 +1,50 @@ +[*] +[*] GTKWave Analyzer v3.3.66 (w)1999-2015 BSI +[*] Fri Nov 17 05:06:51 2017 +[*] +[dumpfile] "/home/aehoppe/Documents/CompArch/Lab3/basic_testbench.vcd" +[dumpfile_mtime] "Fri Nov 17 04:54:22 2017" +[dumpfile_size] 33127 +[savefile] "/home/aehoppe/Documents/CompArch/Lab3/filters/singleCycleCPU-basic_testbench.gtkw" +[timestart] 0 +[size] 1920 1021 +[pos] -1 -1 +*-4.000000 50 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +[treeopen] singleCycleCPUTestHarness. +[treeopen] singleCycleCPUTestHarness.cpu. +[sst_width] 229 +[signals_width] 190 +[sst_expanded] 1 +[sst_vpaned_height] 286 +@28 +singleCycleCPUTestHarness.cpu.clk +@22 +singleCycleCPUTestHarness.cpu.PC[31:0] +@4022 +^>1 /home/aehoppe/Documents/CompArch/Lab3/filters/../../mips-dasm/mips-dasm-filter +singleCycleCPUTestHarness.cpu.instruction[31:0] +@2022 +^1 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-opcodes.filter +singleCycleCPUTestHarness.cpu.instr_decode.opcode[5:0] +^2 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-funct.filter +singleCycleCPUTestHarness.cpu.instr_decode.funct[5:0] +^3 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-regs.filter +singleCycleCPUTestHarness.cpu.instr_decode.rs[4:0] +^3 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-regs.filter +singleCycleCPUTestHarness.cpu.instr_decode.rt[4:0] +^3 /home/aehoppe/Documents/CompArch/Lab3/filters/mips-regs.filter +singleCycleCPUTestHarness.cpu.instr_decode.rd[4:0] +@22 +singleCycleCPUTestHarness.cpu.instr_decode.imm16[15:0] +singleCycleCPUTestHarness.cpu.instr_decode.target_address[25:0] +singleCycleCPUTestHarness.cpu.Da[31:0] +singleCycleCPUTestHarness.cpu.data_path.A[31:0] +singleCycleCPUTestHarness.cpu.Db[31:0] +@23 +singleCycleCPUTestHarness.cpu.data_path.B[31:0] +@22 +singleCycleCPUTestHarness.cpu.data_path.ALU_out[31:0] +@28 +singleCycleCPUTestHarness.cpu.data_path.ALU_src +[pattern_trace] 1 +[pattern_trace] 0 diff --git a/settings.mk b/settings.mk index 504d345..1635613 100644 --- a/settings.mk +++ b/settings.mk @@ -3,7 +3,7 @@ ## Assembly settings # Assembly program (minus .asm extension) -PROGRAM := add +PROGRAM := basic_testbench # Memory image(s) to create from the assembly program MEMDUMP := $(PROGRAM).text.hex diff --git a/verilog/singleCycleCPU.t.v b/verilog/singleCycleCPU.t.v index 3ff66d5..20ad528 100644 --- a/verilog/singleCycleCPU.t.v +++ b/verilog/singleCycleCPU.t.v @@ -33,14 +33,14 @@ module singleCycleCPUTestHarness(); // Load CPU memory from (assembly) dump file - $readmemh("asm/add.text.hex", cpu.data_mem.memory, 0, 32'h0FFC); - $readmemh("asm/add.data.hex", cpu.data_mem.memory, 32'h2000, 32'h3FFF); + $readmemh("asm/basic_testbench.text.hex", cpu.data_mem.memory, 0, 32'h0FFC); + $readmemh("asm/basic_testbench.data.hex", cpu.data_mem.memory, 32'h2000, 32'h3FFF); // Alternate: Explicitly state which array element range to read into //$readmemh("mymem.hex", memory, 10, 80); // Dump waveforms to file // Note: arrays (e.g. memory) are not dumped by default - $dumpfile("add.vcd"); + $dumpfile("basic_testbench.vcd"); $dumpvars(); // Display a few cycles just for quick checking From 38cfbd7732f8e8ecb0c50994cc36a032b689fd46 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Fri, 17 Nov 2017 01:25:29 -0500 Subject: [PATCH 59/78] Make memory and regfile writeback on negative edge --- verilog/dataMemory.v | 2 +- verilog/regfile-dependencies/negRegister32.v | 21 ++++++++++++++++++++ verilog/regfile.v | 4 ++-- verilog/singleCycleCPU.t.v | 2 +- 4 files changed, 25 insertions(+), 4 deletions(-) create mode 100644 verilog/regfile-dependencies/negRegister32.v diff --git a/verilog/dataMemory.v b/verilog/dataMemory.v index be729fe..5faf343 100644 --- a/verilog/dataMemory.v +++ b/verilog/dataMemory.v @@ -27,7 +27,7 @@ module dataMemory InstrOut <= memory[InstrAddr]; end - always @(posedge clk) begin + always @(negedge clk) begin if(writeEnable) memory[address] <= dataIn; end diff --git a/verilog/regfile-dependencies/negRegister32.v b/verilog/regfile-dependencies/negRegister32.v new file mode 100644 index 0000000..2d3e3db --- /dev/null +++ b/verilog/regfile-dependencies/negRegister32.v @@ -0,0 +1,21 @@ +// 32-bit D Flip-Flop with enable +// Positive edge triggered + +module negRegister32 +( +output reg[31:0] q, +input[31:0] d, +input wrenable, +input clk +); + initial begin + q = 32'b0; + end + + always @(negedge clk) begin + if(wrenable) begin + q = d; + end + end + +endmodule diff --git a/verilog/regfile.v b/verilog/regfile.v index cc77761..9f514d9 100644 --- a/verilog/regfile.v +++ b/verilog/regfile.v @@ -6,7 +6,7 @@ // 1 synchronous, positive edge triggered write port //------------------------------------------------------------------------------ -`include "regfile-dependencies/register32.v" +`include "regfile-dependencies/negRegister32.v" `include "regfile-dependencies/register32zero.v" `include "regfile-dependencies/decoders.v" `include "regfile-dependencies/mux32to1by32.v" @@ -33,7 +33,7 @@ genvar i; register32zero register0 (regOut[0], WriteData, regEnable[0], Clk); generate for (i = 1; i < 32; i = i+1) begin : register_generate - register32 register (regOut[i], WriteData, regEnable[i], Clk); + negRegister32 register (regOut[i], WriteData, regEnable[i], Clk); end endgenerate diff --git a/verilog/singleCycleCPU.t.v b/verilog/singleCycleCPU.t.v index 20ad528..2cd09c4 100644 --- a/verilog/singleCycleCPU.t.v +++ b/verilog/singleCycleCPU.t.v @@ -10,7 +10,7 @@ module singleCycleCPUTestHarness(); reg clk; // Clock generation - initial clk=0; + initial clk=1; always #10 clk = !clk; // Instantiate fake CPU From defd292b0a4c9b48eb09a672724ea5be7b6f45c0 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Fri, 17 Nov 2017 01:27:06 -0500 Subject: [PATCH 60/78] Fix include --- verilog/instructionFetch.v | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/verilog/instructionFetch.v b/verilog/instructionFetch.v index e2c9508..362b407 100644 --- a/verilog/instructionFetch.v +++ b/verilog/instructionFetch.v @@ -1,4 +1,4 @@ -//`include "regfile-dependencies/register32.v" +`include "regfile-dependencies/register32.v" //`include "signExtend.v" //`include "instructionMemory.v" From 869a2aba76f0852ee6fe7621c81ed20347877848 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Fri, 17 Nov 2017 01:41:49 -0500 Subject: [PATCH 61/78] Repair JAL and J to function mostly. Testbench fails, but we are closer --- filters/singleCycleCPU-basic_testbench.gtkw | 12 +++++------- verilog/dataMemory.v | 2 +- verilog/dataPath.v | 2 +- verilog/singleCycleCPU.t.v | 2 +- 4 files changed, 8 insertions(+), 10 deletions(-) diff --git a/filters/singleCycleCPU-basic_testbench.gtkw b/filters/singleCycleCPU-basic_testbench.gtkw index ded95bd..20c432f 100644 --- a/filters/singleCycleCPU-basic_testbench.gtkw +++ b/filters/singleCycleCPU-basic_testbench.gtkw @@ -1,15 +1,15 @@ [*] [*] GTKWave Analyzer v3.3.66 (w)1999-2015 BSI -[*] Fri Nov 17 05:06:51 2017 +[*] Fri Nov 17 06:32:08 2017 [*] [dumpfile] "/home/aehoppe/Documents/CompArch/Lab3/basic_testbench.vcd" -[dumpfile_mtime] "Fri Nov 17 04:54:22 2017" -[dumpfile_size] 33127 +[dumpfile_mtime] "Fri Nov 17 06:29:27 2017" +[dumpfile_size] 98766 [savefile] "/home/aehoppe/Documents/CompArch/Lab3/filters/singleCycleCPU-basic_testbench.gtkw" [timestart] 0 [size] 1920 1021 [pos] -1 -1 -*-4.000000 50 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +*-4.000000 10 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 [treeopen] singleCycleCPUTestHarness. [treeopen] singleCycleCPUTestHarness.cpu. [sst_width] 229 @@ -18,7 +18,7 @@ [sst_vpaned_height] 286 @28 singleCycleCPUTestHarness.cpu.clk -@22 +@25 singleCycleCPUTestHarness.cpu.PC[31:0] @4022 ^>1 /home/aehoppe/Documents/CompArch/Lab3/filters/../../mips-dasm/mips-dasm-filter @@ -40,9 +40,7 @@ singleCycleCPUTestHarness.cpu.instr_decode.target_address[25:0] singleCycleCPUTestHarness.cpu.Da[31:0] singleCycleCPUTestHarness.cpu.data_path.A[31:0] singleCycleCPUTestHarness.cpu.Db[31:0] -@23 singleCycleCPUTestHarness.cpu.data_path.B[31:0] -@22 singleCycleCPUTestHarness.cpu.data_path.ALU_out[31:0] @28 singleCycleCPUTestHarness.cpu.data_path.ALU_src diff --git a/verilog/dataMemory.v b/verilog/dataMemory.v index 5faf343..660f9ee 100644 --- a/verilog/dataMemory.v +++ b/verilog/dataMemory.v @@ -22,7 +22,7 @@ module dataMemory ); reg [width-1:0] memory [depth-1:0]; - always @(*) begin + always @(InstrAddr) begin dataOut <= memory[address]; InstrOut <= memory[InstrAddr]; end diff --git a/verilog/dataPath.v b/verilog/dataPath.v index 4a8de4e..3b34be5 100644 --- a/verilog/dataPath.v +++ b/verilog/dataPath.v @@ -47,7 +47,7 @@ module dataPath( assign Aw = jal ? 5'd31 : dest_reg; // Set up jal link register mux - assign Dw = jal ? (PC + 32'd2) : writeback; + assign Dw = jal ? (PC + 32'd1) : writeback; // Set up regfile regfile reg_file(Da, Db, Dw, Rs, Rt, Aw, reg_wr, clk); diff --git a/verilog/singleCycleCPU.t.v b/verilog/singleCycleCPU.t.v index 2cd09c4..20ad528 100644 --- a/verilog/singleCycleCPU.t.v +++ b/verilog/singleCycleCPU.t.v @@ -10,7 +10,7 @@ module singleCycleCPUTestHarness(); reg clk; // Clock generation - initial clk=1; + initial clk=0; always #10 clk = !clk; // Instantiate fake CPU From 568489885b0d756b8eae97aeaf93ea366329905b Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Fri, 17 Nov 2017 01:41:49 -0500 Subject: [PATCH 62/78] Repair JAL and J to function mostly. Testbench fails, but we are closer --- asm/basic_testbench.asm | 6 +++--- filters/singleCycleCPU-basic_testbench.gtkw | 12 +++++------- verilog/dataMemory.v | 2 +- verilog/dataPath.v | 2 +- verilog/singleCycleCPU.t.v | 2 +- 5 files changed, 11 insertions(+), 13 deletions(-) diff --git a/asm/basic_testbench.asm b/asm/basic_testbench.asm index 52433a0..4ac5859 100644 --- a/asm/basic_testbench.asm +++ b/asm/basic_testbench.asm @@ -1,5 +1,6 @@ # Test bench function for Lab3 reduced MIPS ISA # $s7 = ('tests failed') ? 1 : 0 +nop main: # Run all tests conditionally @@ -35,7 +36,7 @@ sw $t1, 12($gp) lw $t2, 16($gp) lw $t3, 12($gp) # compare equality -bne $t0, $t2, lw_sw_fail +bne $t0, $t2, lw_sw_fail bne $t1, $t3, lw_sw_fail jr $ra @@ -133,7 +134,7 @@ jr $ra # End the program test_end: -add $a0, $s7, $zero +add $a0, $s7, $zero addi $v0, $zero, 1 syscall j jump_trap @@ -143,4 +144,3 @@ nop nop nop j jump_trap - diff --git a/filters/singleCycleCPU-basic_testbench.gtkw b/filters/singleCycleCPU-basic_testbench.gtkw index ded95bd..20c432f 100644 --- a/filters/singleCycleCPU-basic_testbench.gtkw +++ b/filters/singleCycleCPU-basic_testbench.gtkw @@ -1,15 +1,15 @@ [*] [*] GTKWave Analyzer v3.3.66 (w)1999-2015 BSI -[*] Fri Nov 17 05:06:51 2017 +[*] Fri Nov 17 06:32:08 2017 [*] [dumpfile] "/home/aehoppe/Documents/CompArch/Lab3/basic_testbench.vcd" -[dumpfile_mtime] "Fri Nov 17 04:54:22 2017" -[dumpfile_size] 33127 +[dumpfile_mtime] "Fri Nov 17 06:29:27 2017" +[dumpfile_size] 98766 [savefile] "/home/aehoppe/Documents/CompArch/Lab3/filters/singleCycleCPU-basic_testbench.gtkw" [timestart] 0 [size] 1920 1021 [pos] -1 -1 -*-4.000000 50 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +*-4.000000 10 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 [treeopen] singleCycleCPUTestHarness. [treeopen] singleCycleCPUTestHarness.cpu. [sst_width] 229 @@ -18,7 +18,7 @@ [sst_vpaned_height] 286 @28 singleCycleCPUTestHarness.cpu.clk -@22 +@25 singleCycleCPUTestHarness.cpu.PC[31:0] @4022 ^>1 /home/aehoppe/Documents/CompArch/Lab3/filters/../../mips-dasm/mips-dasm-filter @@ -40,9 +40,7 @@ singleCycleCPUTestHarness.cpu.instr_decode.target_address[25:0] singleCycleCPUTestHarness.cpu.Da[31:0] singleCycleCPUTestHarness.cpu.data_path.A[31:0] singleCycleCPUTestHarness.cpu.Db[31:0] -@23 singleCycleCPUTestHarness.cpu.data_path.B[31:0] -@22 singleCycleCPUTestHarness.cpu.data_path.ALU_out[31:0] @28 singleCycleCPUTestHarness.cpu.data_path.ALU_src diff --git a/verilog/dataMemory.v b/verilog/dataMemory.v index 5faf343..660f9ee 100644 --- a/verilog/dataMemory.v +++ b/verilog/dataMemory.v @@ -22,7 +22,7 @@ module dataMemory ); reg [width-1:0] memory [depth-1:0]; - always @(*) begin + always @(InstrAddr) begin dataOut <= memory[address]; InstrOut <= memory[InstrAddr]; end diff --git a/verilog/dataPath.v b/verilog/dataPath.v index 4a8de4e..3b34be5 100644 --- a/verilog/dataPath.v +++ b/verilog/dataPath.v @@ -47,7 +47,7 @@ module dataPath( assign Aw = jal ? 5'd31 : dest_reg; // Set up jal link register mux - assign Dw = jal ? (PC + 32'd2) : writeback; + assign Dw = jal ? (PC + 32'd1) : writeback; // Set up regfile regfile reg_file(Da, Db, Dw, Rs, Rt, Aw, reg_wr, clk); diff --git a/verilog/singleCycleCPU.t.v b/verilog/singleCycleCPU.t.v index 2cd09c4..20ad528 100644 --- a/verilog/singleCycleCPU.t.v +++ b/verilog/singleCycleCPU.t.v @@ -10,7 +10,7 @@ module singleCycleCPUTestHarness(); reg clk; // Clock generation - initial clk=1; + initial clk=0; always #10 clk = !clk; // Instantiate fake CPU From 093eb5e5b0c21d9131b34dc9b8cf79b769f009b9 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Fri, 17 Nov 2017 15:56:07 -0500 Subject: [PATCH 63/78] Add a turnkey test script --- test.sh | 5 +++++ 1 file changed, 5 insertions(+) create mode 100755 test.sh diff --git a/test.sh b/test.sh new file mode 100755 index 0000000..f66b55b --- /dev/null +++ b/test.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +make clean +make +gtkwave filters/singleCycleCPU-basic_testbench.gtkw From a8aff5597996fabcfebfb1cad60f6f252fddf4bf Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Fri, 17 Nov 2017 22:03:16 -0500 Subject: [PATCH 64/78] Add additional load --- asm/basic_testbench.asm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/asm/basic_testbench.asm b/asm/basic_testbench.asm index 4ac5859..22be4ba 100644 --- a/asm/basic_testbench.asm +++ b/asm/basic_testbench.asm @@ -1,6 +1,7 @@ # Test bench function for Lab3 reduced MIPS ISA # $s7 = ('tests failed') ? 1 : 0 nop +addi $gp, $zero, 0x2000 main: # Run all tests conditionally @@ -29,15 +30,19 @@ test_lw_sw: # Initialize values addi $t0, $zero, 30 addi $t1, $zero, 87 +addi $t2, $zero, 4 # store to heap sw $t0, 16($gp) sw $t1, 12($gp) +sw $t2, 8($gp) # load from heap -lw $t2, 16($gp) -lw $t3, 12($gp) +lw $t3, 16($gp) +lw $t4, 12($gp) +lw $t5, 8($gp) # compare equality bne $t0, $t2, lw_sw_fail bne $t1, $t3, lw_sw_fail +bne $t2, $t6, lw_sw_fail jr $ra lw_sw_fail: From cbd5e67662ecd0b23e7e0696cbb6d68850d3454a Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Fri, 17 Nov 2017 23:55:51 -0500 Subject: [PATCH 65/78] Separated memory sensitivity for instructions and data --- asm/basic_testbench.asm | 14 +++++++------- verilog/dataMemory.v | 5 ++++- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/asm/basic_testbench.asm b/asm/basic_testbench.asm index 22be4ba..1797ed9 100644 --- a/asm/basic_testbench.asm +++ b/asm/basic_testbench.asm @@ -40,9 +40,9 @@ lw $t3, 16($gp) lw $t4, 12($gp) lw $t5, 8($gp) # compare equality -bne $t0, $t2, lw_sw_fail -bne $t1, $t3, lw_sw_fail -bne $t2, $t6, lw_sw_fail +bne $t0, $t3, lw_sw_fail +bne $t1, $t4, lw_sw_fail +bne $t2, $t5, lw_sw_fail jr $ra lw_sw_fail: @@ -64,15 +64,15 @@ jr $ra test_xori: #initialize values -addi $t0, $zero, 0x0000f0f0 -addi $t1, $zero, 0x00000f0f +addi $t0, $zero, 0xf0f0 +addi $t1, $zero, 0x0f0f # xor identical things -xori $t2, $t0, 0x0000f0f0 +xori $t2, $t0, 0xf0f0 # fail if not zero bne $t2, $zero, xori_fail # xor different things -xori $t2, $t1, 0X0000f0f0 +xori $t2, $t1, 0xf0f0 # pass if zero bne $t2, $zero, xori_pass xori_fail: diff --git a/verilog/dataMemory.v b/verilog/dataMemory.v index 660f9ee..581b65b 100644 --- a/verilog/dataMemory.v +++ b/verilog/dataMemory.v @@ -22,8 +22,11 @@ module dataMemory ); reg [width-1:0] memory [depth-1:0]; - always @(InstrAddr) begin + always @(address) begin dataOut <= memory[address]; + end + + always @(InstrAddr) begin InstrOut <= memory[InstrAddr]; end From 54d18b0d9a71ada46ec045cb04d0c464dc70ba36 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Sat, 18 Nov 2017 00:00:14 -0500 Subject: [PATCH 66/78] Reduced size of immediates in testbench, tests pass --- asm/basic_testbench.asm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/asm/basic_testbench.asm b/asm/basic_testbench.asm index 1797ed9..3493485 100644 --- a/asm/basic_testbench.asm +++ b/asm/basic_testbench.asm @@ -64,15 +64,15 @@ jr $ra test_xori: #initialize values -addi $t0, $zero, 0xf0f0 -addi $t1, $zero, 0x0f0f +addi $t0, $zero, 0xf0 +addi $t1, $zero, 0x0f # xor identical things -xori $t2, $t0, 0xf0f0 +xori $t2, $t0, 0xf0 # fail if not zero bne $t2, $zero, xori_fail # xor different things -xori $t2, $t1, 0xf0f0 +xori $t2, $t1, 0xf0 # pass if zero bne $t2, $zero, xori_pass xori_fail: From 4378aca3a982688a2bfe809a976da47c1ba1c15b Mon Sep 17 00:00:00 2001 From: juicyslew Date: Sat, 18 Nov 2017 00:08:30 -0500 Subject: [PATCH 67/78] report start --- Report.md | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 Report.md diff --git a/Report.md b/Report.md new file mode 100644 index 0000000..fbd2267 --- /dev/null +++ b/Report.md @@ -0,0 +1,33 @@ +# Lab 3 Writeup +### William Derksen, Alexander Hoppe, Sam Myers, Taylor Sheneman + +## Processor architecture + +In this lab we designed a Single Cycle CPU complete with an Instruction Fetch Unit, Instruction Decoding, Execution Hub, Memory Accessing, and WriteBack to Registers. We designed it fairly similar to the designs seen in class with a couple important changes in order to accommodate different instructions. + +The quick explanation of the architecture in that our architecture uses the value from the Program counter to fetch instructions from the first piece of the memory (from address 0 - 8192). We then decode this instruction into each of the essential pieces of the I- J- and R-type signals, as well as into an array of control signals depending on the op code. Next these signals and controls affect the Program counter in the instruction fetch unit (in order to branch and jump), the ALU (in order to do different math operations), the Memory (in order to load and store), and the RegFile (for determining I J and R type instructions). + +ChangeLog: + +In order to correctly to do the new instruction xori, we needed to create a more versatile Sign Extend that could also Zero Extend, We came up with a nice design that allowed for both of these processes without needing a bitwise mux. We managed to do this by creating a Sign Extend control signal, by setting the seventeenth value of the input to the and of the control signal and the sixteenth value of the input. Then we sign extend naturally from the 17th value. + +Additionally, for jump and link we added two new muxes, one for choosing register $31 in order to do jal, and one right before the write back to the Dw port for the regfile. This sets the PC to the value that is to be written to register $31. For jal, the jump part is the same as a normal jump instruction. + + +### Block Diagram + + +### RTL Examples and Walkthroughs + + + +## Test Plan + +### Results + + +## Performance/Area Design analysis + + + +## Work Plan Reflection From c5f6668e6f743b11fa3b98c22430393a22cd4dc9 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Mon, 20 Nov 2017 17:52:38 -0500 Subject: [PATCH 68/78] Edit report to match file name convention --- Report.md => REPORT.MD | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename Report.md => REPORT.MD (100%) diff --git a/Report.md b/REPORT.MD similarity index 100% rename from Report.md rename to REPORT.MD From e7ae3c8866bf015eb94276749372ecc91a5eadfb Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Tue, 21 Nov 2017 22:02:10 -0500 Subject: [PATCH 69/78] Add todo for clock cycle --- REPORT.MD | 2 ++ 1 file changed, 2 insertions(+) diff --git a/REPORT.MD b/REPORT.MD index fbd2267..a02bb70 100644 --- a/REPORT.MD +++ b/REPORT.MD @@ -13,6 +13,8 @@ In order to correctly to do the new instruction xori, we needed to create a more Additionally, for jump and link we added two new muxes, one for choosing register $31 in order to do jal, and one right before the write back to the Dw port for the regfile. This sets the PC to the value that is to be written to register $31. For jal, the jump part is the same as a normal jump instruction. +TODO: Add section about changing to negative edge for writeback + ### Block Diagram From 498cb2f1c2e75f7360aaa3a9e61fb5efb793ae88 Mon Sep 17 00:00:00 2001 From: Halliax Date: Tue, 21 Nov 2017 21:02:14 -0600 Subject: [PATCH 70/78] proofing --- REPORT.MD | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/REPORT.MD b/REPORT.MD index a02bb70..f70a15a 100644 --- a/REPORT.MD +++ b/REPORT.MD @@ -1,17 +1,19 @@ # Lab 3 Writeup ### William Derksen, Alexander Hoppe, Sam Myers, Taylor Sheneman -## Processor architecture +## Processor Architecture -In this lab we designed a Single Cycle CPU complete with an Instruction Fetch Unit, Instruction Decoding, Execution Hub, Memory Accessing, and WriteBack to Registers. We designed it fairly similar to the designs seen in class with a couple important changes in order to accommodate different instructions. +In this lab we designed a Single Cycle CPU complete with an Instruction Fetch Unit, Instruction Decoder, Arithmetic Logic Unit and associated logic, Memory Access, and Writeback to Registers. We based the design off of our previous in-class designs, with a couple important changes in order to accommodate different instructions. -The quick explanation of the architecture in that our architecture uses the value from the Program counter to fetch instructions from the first piece of the memory (from address 0 - 8192). We then decode this instruction into each of the essential pieces of the I- J- and R-type signals, as well as into an array of control signals depending on the op code. Next these signals and controls affect the Program counter in the instruction fetch unit (in order to branch and jump), the ALU (in order to do different math operations), the Memory (in order to load and store), and the RegFile (for determining I J and R type instructions). +Broadly, our architecture uses the value from the Program Counter to fetch instructions from the first segment of memory (from address 0 - 8192). We then decode this instruction into each of the major components of the I- J- and R-type encodings, as well as into an array of control signals depending on the opcode. These signals and controls affect the Program counter in the instruction fetch unit (in order to branch and jump), the ALU (to execute mathematical operations), the Memory (to load and store), and the Register File (for determining I J and R type instructions). -ChangeLog: +Our processor architecture supports a subset of the MIPS ISA, consisting of `LW`, `SW`, `J`, `JR`, `JAL`, `BNE`, `XORI`, `ADDI`, `ADD`, `SUB`, and `SLT`. -In order to correctly to do the new instruction xori, we needed to create a more versatile Sign Extend that could also Zero Extend, We came up with a nice design that allowed for both of these processes without needing a bitwise mux. We managed to do this by creating a Sign Extend control signal, by setting the seventeenth value of the input to the and of the control signal and the sixteenth value of the input. Then we sign extend naturally from the 17th value. +Changelog: -Additionally, for jump and link we added two new muxes, one for choosing register $31 in order to do jal, and one right before the write back to the Dw port for the regfile. This sets the PC to the value that is to be written to register $31. For jal, the jump part is the same as a normal jump instruction. +In order to correctly to do the new instruction `xori`, we needed to create a more versatile Sign Extend component that could also Zero Extend if needed. We came up with a simple design with a Sign Extend control signal that allowed for both of these processes without needing a bitwise multiplexer. We did this by setting the seventeenth value of the input to the `and` of the control signal and the sixteenth value of the input. Then we sign extend naturally from the 17th value. + +Additionally, for jump and link we added two new muxes, one for choosing register `$31` in order to do `jal`, and one right before the writeback to the `Dw` port for the regfile. This sets the PC to the value that is to be written to register `$31`. For `jal`, the jump part is the same as a normal jump instruction. TODO: Add section about changing to negative edge for writeback @@ -19,7 +21,7 @@ TODO: Add section about changing to negative edge for writeback ### Block Diagram -### RTL Examples and Walkthroughs +### RTL Examples From eae0468a3fa00b267cf7df7d0287c966e45880a2 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Tue, 21 Nov 2017 22:07:08 -0500 Subject: [PATCH 71/78] Add clock cycle image --- REPORT.MD | 2 ++ clock-cycle.jpg | Bin 0 -> 91180 bytes 2 files changed, 2 insertions(+) create mode 100644 clock-cycle.jpg diff --git a/REPORT.MD b/REPORT.MD index f70a15a..97b7e2a 100644 --- a/REPORT.MD +++ b/REPORT.MD @@ -17,6 +17,8 @@ Additionally, for jump and link we added two new muxes, one for choosing registe TODO: Add section about changing to negative edge for writeback +clock-cycle + ### Block Diagram diff --git a/clock-cycle.jpg b/clock-cycle.jpg new file mode 100644 index 0000000000000000000000000000000000000000..491e2d3734da64720d429a2d1936d68d9dcb2335 GIT binary patch literal 91180 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®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 P{&DB#U-h{Gf1mg_-{~LB literal 0 HcmV?d00001 From a7b569ad8f229550d541f82156254287e6b31e5d Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Tue, 21 Nov 2017 22:30:48 -0500 Subject: [PATCH 72/78] Add section about single cycle timing fixes --- REPORT.MD | 12 ++++++++++-- clock-cycle.jpg => img/clock-cycle.jpg | Bin img/out-of-order.png | Bin 0 -> 52347 bytes 3 files changed, 10 insertions(+), 2 deletions(-) rename clock-cycle.jpg => img/clock-cycle.jpg (100%) create mode 100644 img/out-of-order.png diff --git a/REPORT.MD b/REPORT.MD index 97b7e2a..b6a5779 100644 --- a/REPORT.MD +++ b/REPORT.MD @@ -15,14 +15,22 @@ In order to correctly to do the new instruction `xori`, we needed to create a mo Additionally, for jump and link we added two new muxes, one for choosing register `$31` in order to do `jal`, and one right before the writeback to the `Dw` port for the regfile. This sets the PC to the value that is to be written to register `$31`. For `jal`, the jump part is the same as a normal jump instruction. -TODO: Add section about changing to negative edge for writeback +While running basic tests for the first time, we were confronted with issues loading and storing data to memory. For some reason we were only executing odd-numbered instructions for a while, which was very problematic. We also were having loads and stores executing out of order. -clock-cycle +out-of-order + +Eventually we traced this back to memory and writeback instructions being triggered `@ (posedge clk)` which was preventing instructions from being fetched properly and also preventing loads and stores from executing except for every other cycle. We solved this by establishing the single-cycle timing scheme below and enforcing it, moving memory write and writeback operations to the negative clock edge. + +clock-cycle + +This diagram has the program counter updating on the positive edge, then instructions being read from memory combinationally, decoded combinationally, ALU result being computed combinationally, and then the memory or writeback happening on negative edge. In a real single-cycle CPU we'd have to worry about timing for all of these, but for our model the combinational steps are instantaneous so this is not an issue. ### Block Diagram + + ### RTL Examples diff --git a/clock-cycle.jpg b/img/clock-cycle.jpg similarity index 100% rename from clock-cycle.jpg rename to img/clock-cycle.jpg diff --git a/img/out-of-order.png b/img/out-of-order.png new file mode 100644 index 0000000000000000000000000000000000000000..fb01e50414e7e5e44213492ce4d76ceac21dadf3 GIT binary patch literal 52347 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 literal 0 HcmV?d00001 From 21b84fe1d03cf3e5969315c81ac1dd49c5284ff1 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Tue, 21 Nov 2017 22:47:58 -0500 Subject: [PATCH 73/78] Add section on consolidating memory --- REPORT.MD | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/REPORT.MD b/REPORT.MD index b6a5779..1391615 100644 --- a/REPORT.MD +++ b/REPORT.MD @@ -15,6 +15,8 @@ In order to correctly to do the new instruction `xori`, we needed to create a mo Additionally, for jump and link we added two new muxes, one for choosing register `$31` in order to do `jal`, and one right before the writeback to the `Dw` port for the regfile. This sets the PC to the value that is to be written to register `$31`. For `jal`, the jump part is the same as a normal jump instruction. +When first trying to run code on our CPU, we changed our architecture from a Harvard architecture with separate memory for instructions and data to Von Neumann architecture with one contiguous memory to be more compatible with the Mars assembler's output for MIPS. + While running basic tests for the first time, we were confronted with issues loading and storing data to memory. For some reason we were only executing odd-numbered instructions for a while, which was very problematic. We also were having loads and stores executing out of order. out-of-order @@ -27,7 +29,13 @@ This diagram has the program counter updating on the positive edge, then instruc ### Block Diagram +top-level-block-diagram +decode +data-path From fb482bbb6cec92f43fb26b324dd1f2bfe39ad623 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Tue, 21 Nov 2017 22:52:55 -0500 Subject: [PATCH 74/78] Add block diagram images --- REPORT.MD | 4 ++-- img/single-cycle-cpu_DataPath.jpg | Bin 0 -> 95209 bytes img/single-cycle-cpu_IF.jpg | Bin 0 -> 229235 bytes img/single-cycle-cpu_decode.jpg | Bin 0 -> 389602 bytes img/single-cycle-report_block-diagram.jpg | Bin 0 -> 211932 bytes 5 files changed, 2 insertions(+), 2 deletions(-) create mode 100644 img/single-cycle-cpu_DataPath.jpg create mode 100644 img/single-cycle-cpu_IF.jpg create mode 100644 img/single-cycle-cpu_decode.jpg create mode 100644 img/single-cycle-report_block-diagram.jpg diff --git a/REPORT.MD b/REPORT.MD index 1391615..2d3b23d 100644 --- a/REPORT.MD +++ b/REPORT.MD @@ -15,7 +15,7 @@ In order to correctly to do the new instruction `xori`, we needed to create a mo Additionally, for jump and link we added two new muxes, one for choosing register `$31` in order to do `jal`, and one right before the writeback to the `Dw` port for the regfile. This sets the PC to the value that is to be written to register `$31`. For `jal`, the jump part is the same as a normal jump instruction. -When first trying to run code on our CPU, we changed our architecture from a Harvard architecture with separate memory for instructions and data to Von Neumann architecture with one contiguous memory to be more compatible with the Mars assembler's output for MIPS. +When first trying to run code on our CPU, we changed our architecture from a Harvard architecture with separate memory for instructions and data to Von Neumann architecture with one contiguous memory to be more compatible with the Mars assembler's output for MIPS. While running basic tests for the first time, we were confronted with issues loading and storing data to memory. For some reason we were only executing odd-numbered instructions for a while, which was very problematic. We also were having loads and stores executing out of order. @@ -29,7 +29,7 @@ This diagram has the program counter updating on the positive edge, then instruc ### Block Diagram -top-level-block-diagramC6ciM|`1K2TSpi4_5aHnw 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 literal 0 HcmV?d00001 diff --git a/img/single-cycle-cpu_IF.jpg b/img/single-cycle-cpu_IF.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a8f1bd76ae7080e39f7ab61685d0b6e56fbfaa69 GIT binary patch literal 229235 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ⅆ@G%4}<3)GCr_w9<0kEFI#C1`?phay@!wO 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≻cd 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�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�t?5?F0k?^xA@VctFA-1+>7t^Y`Er)C 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¯t90z>RGaj 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

|EmFB0DRva2wOI3I*evxjSn%{ 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 Bk469h literal 0 HcmV?d00001 diff --git a/img/single-cycle-report_block-diagram.jpg b/img/single-cycle-report_block-diagram.jpg new file mode 100644 index 0000000000000000000000000000000000000000..bdd0441d2caeb1e289e60e1f734cc23147c198c3 GIT binary patch literal 211932 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%0D1=4b&7UE73*&982Oy`Yv1BFFQ2- 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≶ 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 literal 0 HcmV?d00001 From 7f76bb9b7f0a344c66f7927d719e4810d0ca1b16 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Tue, 21 Nov 2017 22:53:36 -0500 Subject: [PATCH 75/78] Repair image tag for block diagramg --- REPORT.MD | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/REPORT.MD b/REPORT.MD index 2d3b23d..2566705 100644 --- a/REPORT.MD +++ b/REPORT.MD @@ -29,7 +29,7 @@ This diagram has the program counter updating on the positive edge, then instruc ### Block Diagram -top-level-block-diagram Our single-cycle CPU is divided up into two main modules, with one shared memory between all of them. This design arose because we originally From e756dbec17da0dad6ece565a52a2a21bc3c08ae8 Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Tue, 21 Nov 2017 23:10:53 -0500 Subject: [PATCH 76/78] Flesh out block diagram section --- REPORT.MD | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/REPORT.MD b/REPORT.MD index 2566705..ee168e7 100644 --- a/REPORT.MD +++ b/REPORT.MD @@ -31,10 +31,21 @@ This diagram has the program counter updating on the positive edge, then instruc ### Block Diagram top-level-block-diagram -Our single-cycle CPU is divided up into two main modules, with one shared memory between all of them. This design arose because we originally +Our single-cycle CPU is divided up into two main modules, with one shared memory between all of them. This design arose because we originally implemented a Harvard architecture, but then pivoted to Von Neumann later down the line. + +#### Instruction Fetch +Inside our instruction-fetch module we keep track of the program counter and any jump or branch signals that need to modify the PC input to instruction memory or set it to a different value. IF + +Below is the table of all of the control signals for our CPU and all of the different states they are in. In this diagram, control signals that do not matter for a particular instruction are drawn in blue, and those that are important are in red. + decode + +#### Data Path + +Below is the data path module, which can operate on two registers or an immediate and write its arithmetic result to memory or a register, or store the program counter (plus two instructions) in the case of a `jal`. We did make a custom module to do sign-extending or logical-extending for `xori`, since the difference is just what we extend with, zeros or the MSB. + data-path From 7f490e883748b1ae69bd1da7b74234a09abfa23a Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Tue, 21 Nov 2017 23:28:06 -0500 Subject: [PATCH 77/78] Add test strategy section --- REPORT.MD | 20 ++++++++++++++++++-- img/test-success.png | Bin 0 -> 52608 bytes 2 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 img/test-success.png diff --git a/REPORT.MD b/REPORT.MD index ee168e7..37ff478 100644 --- a/REPORT.MD +++ b/REPORT.MD @@ -44,7 +44,7 @@ Below is the table of all of the control signals for our CPU and all of the diff #### Data Path -Below is the data path module, which can operate on two registers or an immediate and write its arithmetic result to memory or a register, or store the program counter (plus two instructions) in the case of a `jal`. We did make a custom module to do sign-extending or logical-extending for `xori`, since the difference is just what we extend with, zeros or the MSB. +Below is the data path module, which can operate on two registers or an immediate and write its arithmetic result to memory or a register, or store the program counter (plus two instructions) in the case of a `jal`. We did make a custom module to do sign-extending or logical-extending for `xori`, since the difference is just what we extend with, zeros or the MSB. data-path @@ -55,8 +55,24 @@ Below is the data path module, which can operate on two registers or an immediat ## Test Plan +We implemented various assembly-based tests to test our CPU and also to push our assembly programming skills. For the very basic first functionality test, we implemented `asm/add.asm` which is just a series of adds. We also implemented a complete test of our instruction set in `asm/basic_testbench.asm`, and finally we implemented the quicksort algorithm in assembly, which can be found in `asm/quicksort.asm`. -### Results +#### add.asm +The add test was just a series of `addi` instructions to the same `$t0` register to allow us to debug our ability to load memory into our CPU and test the instruction fetch order. It actually allowed us to debug our instruction fetch bug in which instructions were taking two cycles to execute. It turned out that the instruction output of our memory was only updating `@ (address)` which was the data memory address port, so the instruction memory wasn't being output until the writeback state of a previous instruction. + +#### Quicksort + + +#### Assembly Test Bench +The assembly test bench was a program designed to test all of the different functions in our ISA. It has explicit test subroutines for `lw` and `sw`, `bne`, `xori`, `addi`, `add`, `sub`, and `slt`. We chose to omit tests for `j`, `jr`, and `jal` because the rest of the testbench used them so heavily that it would never complete successfully if they were not correct. Each subroutine sets a return value in a top level register, `$s7`, which is checked before executing additional subroutines. If `$s7` is set to 1, a test has failed and the program exits (falls into a jump trap loop). If at the end of the program, the `$s7` register is zero, then the testbench succeeded. The testbench ends with a MARS syscall which displays the return value in `$s7`, which successfully returned zero when run on the MARS MIPS emulator. + +This testbench is what is run by using the `./test.sh` script in the top level directory of the project. + +This testbench allowed us to debug our memory load and store issue having to do with the read-execute-write cycle happening all at the same clock cycle. Once we resolved this issue, we were met with the following result: + +test-success + +As is visible here, the `$s7` register was still `0x00000000` at the time of program end. This can be seen as the `Da` bus (combinational output of the regfile) is all zeros during instruction 73 when the input address `rs` is `$s7`. This means the test bench succeeded. ## Performance/Area Design analysis diff --git a/img/test-success.png b/img/test-success.png new file mode 100644 index 0000000000000000000000000000000000000000..93aad1051a621078fe46cd4bf7eaae7f03c36ce6 GIT binary patch literal 52608 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 literal 0 HcmV?d00001 From ec801490604271a6511b2e1db094061694469b7a Mon Sep 17 00:00:00 2001 From: Alexander Hoppe Date: Thu, 23 Nov 2017 01:00:46 -0500 Subject: [PATCH 78/78] Finish report with quicksort, RTL, and reflection sections --- REPORT.MD | 33 +++++++++++++++++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) diff --git a/REPORT.MD b/REPORT.MD index 37ff478..406cb56 100644 --- a/REPORT.MD +++ b/REPORT.MD @@ -15,7 +15,7 @@ In order to correctly to do the new instruction `xori`, we needed to create a mo Additionally, for jump and link we added two new muxes, one for choosing register `$31` in order to do `jal`, and one right before the writeback to the `Dw` port for the regfile. This sets the PC to the value that is to be written to register `$31`. For `jal`, the jump part is the same as a normal jump instruction. -When first trying to run code on our CPU, we changed our architecture from a Harvard architecture with separate memory for instructions and data to Von Neumann architecture with one contiguous memory to be more compatible with the Mars assembler's output for MIPS. +When first trying to run code on our CPU, we changed our architecture from a Harvard architecture with separate memory for instructions and data to Von Neumann architecture with one contiguous memory to be more compatible with the Mars assembler's output for MIPS. We also changed our program counter to increment by 1, and our `jal` instruction to store `PC + 2` because our memory is word-addressed by 32-bit word as opposed to byte-addressing. While running basic tests for the first time, we were confronted with issues loading and storing data to memory. For some reason we were only executing odd-numbered instructions for a while, which was very problematic. We also were having loads and stores executing out of order. @@ -50,9 +50,27 @@ Below is the data path module, which can operate on two registers or an immediat -### RTL Examples +### RTL Example +To more clearly illustrate the path of an instruction through our CPU, the following is a walkthrough of a single cycle of program execution using the `addi` instruction: +`Reg[rt] = Reg[rs] + SignExtend(Imm16)` + +#### IF + +The first stage is instruction fetch, kicked off by the positive edge of our clock incrementing the program counter. The program counter input is already fed a combinational `PC + 1` (since our memory is 32 bit word-addressed) so the PC is simply a positive-edge-triggered D-flipflop. After incrementing, the PC is fed into the instruction address port of our memory, which combinationally returns the next instruction on the associated data port. + +#### ID / EX + +Once the instruction is read from memory, it is then fed through our instruction decode unit. This unit combinationally sets the register addresses `rs` and `rt` and also the `imm16` as well as decoding the opcode of the instruction into the proper control signals seen in the previous section. + +Next is the execute section, which also executes combinationally. The output of the regfile `Da` is fed into the ALU, and the other input is muxed to the output of our sign-extend module, which sign-extends `imm16`. The ALU result is then displayed combinationally. Since there are no delays in our ideal system, this all happens instantaneously after the positive clock edge. + +#### MEM / WB + +After the ID and EX phases have finished, the memory and writeback phases (MEM and WB) execute on the negative edge of the clock. On the negative clock edge the result of the ALU is clocked back into the `Dw` port of the regfile, which has been set to `rt` by the instruction decode module. The memory is not written to in this case, as `addi` is an I-type instruction so the memory write enable is disabled by the ID unit. + +The clock cycle for all of this would have to be selected to be sufficiently long for the combinational logic of a memory read and then an ALU operation, plus a memory write on the negative part of the clock cycle. ## Test Plan We implemented various assembly-based tests to test our CPU and also to push our assembly programming skills. For the very basic first functionality test, we implemented `asm/add.asm` which is just a series of adds. We also implemented a complete test of our instruction set in `asm/basic_testbench.asm`, and finally we implemented the quicksort algorithm in assembly, which can be found in `asm/quicksort.asm`. @@ -61,6 +79,9 @@ We implemented various assembly-based tests to test our CPU and also to push our The add test was just a series of `addi` instructions to the same `$t0` register to allow us to debug our ability to load memory into our CPU and test the instruction fetch order. It actually allowed us to debug our instruction fetch bug in which instructions were taking two cycles to execute. It turned out that the instruction output of our memory was only updating `@ (address)` which was the data memory address port, so the instruction memory wasn't being output until the writeback state of a previous instruction. #### Quicksort +In addition to a simpler test bench, we decided to target the implementation of a more challenging algorithm to really push our assembly skills, in this case the quicksort algorithm. This algorithm requires us to use all seven instructions in our reduced set. + +We started by implementing the quicksort algorithm in C, which allowed us to get the control flow down in a language that we could pretty easily expand out into direct memory manipulations and register operations. From there we expanded it out into assembly, primarily the work of @Halliax Taylor Sheneman. Once it successfully executed in MARS, we loaded it into our CPU and were met with success! It was a difficult program to use to debug the CPU, but it provided a stress test to make sure our hardware worked in an actual implementation. #### Assembly Test Bench @@ -76,7 +97,15 @@ As is visible here, the `$s7` register was still `0x00000000` at the time of pro ## Performance/Area Design analysis +Since our design is single-cycle and written behaviorally for code to be uploaded later, the Vivado synthesis of our program tends to optimize out pretty much all of the actual execution of instructions, since the memory is default initialized to zero. This is interpreted by the synthesizer as effectively having an empty program, hence it does not need any actual CPU. +Failing synthesizer performance and area analysis, there are a few performance and area heuristic analyses that can be applied. First, our project is fundamentally limited in throughput by nature of it only being able to execute one instruction at a time in a clock cycle equivalent to the entire length of execution. We can execute an instruction in the time it takes to load an instruction from memory, decode it, do an ALU computation, and then in the worst case write back to memory. This is quite slow, as usually memory access takes much longer than other computing operations. +We're also limited in area, as we cannot do any module reuse within the single-cycle CPU. For example, we have an additional ALU in our CPU for doing the adding to increment the `PC`, because we can't do reuse when our main program ALU is going to be required later in the same cycle. We were able to reuse our memory, however, because our read and write access happens at different times during the clock cycle. We could potentially have saved area by consolidating our read and write ports into one, since they're accessed at different times, but this would require more timing control signals than just having combinational outputs. + +While a single-cycle design is limited in these ways, it's also much simpler to design than a much higher-throughput pipeline design. It's streamlined in that it can all be drawn out on one schematic without any need for mental juggling of timing. It was an MVP for this project, and it ended up being sufficiently challenging. ## Work Plan Reflection +As is often the case, we underestimated how much work this lab would take us in the beginning. We had originally planned to rush to MVP with a single-cycle CPU and then branch out to complete a pipeline CPU if we had time. In the end, it took us the first week to plan out how everything would be implemented which was on schedule, but then the code implementation of our CPU took more time than just the weekend. Fortunately, at the same time we were able to develop our assembly test bench, so when we actually did finish implementation on Wednesday of the final week, we were able to flash code on it immediately. + +The place we could've improved the process here was in allowing more time for debugging and parallelizing more. We were met with a couple of very difficult issues over the course of the last few days of the project, and with only Thursday and Friday to debug them, we were really under the gun. In fact, we only barely finished passing our test benches at around 11:59 on Friday (hence the report is quite late). We also could have parallelized our development process more. When we developed our test benches and implemented our verilog at the same time, we were much more productive than when we were single-threadedly debugging our program at the end of the week. The independent clock and memory access issues could have been resolved at the same time, and the report could have been written during that time as well.