⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ram_basic_tb.v

📁 设计与验证verilog hdl
💻 V
字号:
`timescale 1ns/10ps
module ram_basic_tb;
 reg         clk;
 reg         CS;  //CS = 1, RAM enable
 reg         WR;  //WR =1 then WRite enable; WR = 0 then read enable
 reg         en;  //data_out enable, convert the data sequency
 reg  [5:0]  addr;
 reg  [7:0]  data_in;
 wire [7:0]  data_out;


  initial
    begin
      clk = 0;
      CS  = 1'bz;
      WR  = 1'bz;
      en  = 1;
      addr = 6'bz;
      data_in = 8'bz;
      # 100;
      write (6'd 0, 8'haa);
      # 100;
      read (6'd 0);
      # 100;
      write (6'd 63, 8'hff);
      # 100;
      read (6'd 63);
      # 100;
      read (6'd 31);
      # 100
      $stop;
    
    end
  always # 5 clk = ~clk;

  task read ;
       input   [5:0]  addr_in;
       begin
          # 1;
          WR = 0;
          CS = 0;
          addr = addr_in; 
          # 25;
          WR = 1'bz;
          CS = 1'bz;
          addr = 6'bz;          
       end  
  endtask

  task write ;
       input  [5:0]  addr_in;
       input  [7:0]  data;
       begin
          # 1;
          WR = 1;
          CS = 0;
          addr = addr_in;
          data_in = data;   
          # 25;
          WR = 1'bz;
          CS = 1'bz;
          addr = 6'bz;
          data_in = 8'bz;   
        
       end  
  endtask

ram_basic ram_basic_inst  ( .clk(clk), 
                            .CS(CS), 
                            .WR(WR), 
                            .addr(addr), 
                            .data_in(data_in), 
                            .data_out(data_out), 
                            .en(en)
                            );

endmodule

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -