~ruther/verilog-riscv-semestral-project

db85fb354b873f3ab5e5e936b4412a7d828f0ca7 — Rutherther 1 year, 4 months ago 280332e
tests: fix ram and control_unit tests to match newest architecture
2 files changed, 23 insertions(+), 7 deletions(-)

M testbench/tb_control_unit.sv
M testbench/tb_ram.sv
M testbench/tb_control_unit.sv => testbench/tb_control_unit.sv +4 -1
@@ 30,6 30,8 @@ module tb_control_unit();
  memory_mask_t memory_mask;
  wire memory_sign_extension;

  wire ebreak;

  control_unit uut(
    .instruction(instruction),
    .memory_we(memory_we),


@@ 49,7 51,8 @@ module tb_control_unit();
    .reg_rd(reg_rd),
    .reg_we(reg_we),
    .memory_mask(memory_mask),
    .memory_sign_extension(memory_sign_extension)
    .memory_sign_extension(memory_sign_extension),
    .ebreak(ebreak)
  );

  initial begin

M testbench/tb_ram.sv => testbench/tb_ram.sv +19 -6
@@ 1,25 1,27 @@
import cpu_types::*;

module tb_ram();

  reg clk;

  reg [31:0] a;

  wire [31:0] rd;

  memory_mask_t mask;

  reg [3:0]  write_byte_enable;
  reg         we;
  reg [31:0]  wd;

  reg         dump;


  ram uut(
    .clk(clk),
    .a(a),
    .rd(rd),
    .mask(mask),
    .we(we),
    .wd(wd)
    .wd(wd),
    .dump(dump),
    .write_byte_enable(write_byte_enable)
  );

  initial begin


@@ 31,9 33,11 @@ module tb_ram();
    $dumpfile("waves/tb_ram.vcd");
    $dumpvars;

    write_byte_enable = 4'b1111;


    #10
    a = 32'd103;
    mask = MEM_WORD;
    we = 1;
    wd = 32'h5;



@@ 51,6 55,15 @@ module tb_ram();
    we = 0;
    a = 32'd107;

    #10
    we = 1;
    write_byte_enable = 4'b1100;

    wd = 32'hFFFFFFFF;

    #10
    we = 0;

    #10 $finish;
  end


Do not follow this link