在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2954|回复: 8

[求助] RAM模块如何验证功能

[复制链接]
发表于 2011-5-18 16:54:17 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
设计了一个简单的RAM,代码如下。

因为是第一次设计RAM,不知道怎么写test bench验证功能啊。在网上搜了下,也没找到合适的例子。虽然这个模块比较简单,应该不会有错,还还是感觉写个test bench验证了比较放心。

感觉RAM读数据功能的验证我会写,但是不知道往RAM里面写数据这个功能怎么验证啊。求高手指教!还有RAM的初始化是怎么弄的呢?谢了!

简单的RAM代码如下,里面有8个8bits的数据,一个读端口,一个写端口,有一个ctrl_rw0控制是读还是写(读写不能同时进行),为1的时候写数据,为0的时候读数据。

module memory_8x8_1r_1w(clk, addr_r0, addr_w0, ctrl_rw0, mem_i0,  mem_o0);

     input               clk;
     
     input  [2:0] addr_r0;        // memory address for reading
     input  [2:0] addr_w0;        // memory address  for writing
     
     
     input               ctrl_rw0;        // 1: write,  0: read
   
     input  [7:0] mem_i0;     // input data for writing
   
     output [7:0] mem_o0;      // output data  from reading
     reg   [7:0] mem_o0;
     
     reg [7:0] mem_arr [70];

always @ (posedge clk) begin
         if (ctrl_rw0) mem_arr[addr_w0] <= mem_i0;
         else    mem_o0 <= mem_arr[addr_r0];
  end
endmodule
 楼主| 发表于 2011-5-18 19:32:10 | 显示全部楼层
求助啊求助啊~~~
发表于 2011-5-18 19:49:01 | 显示全部楼层
写一个数据,然后再读出来检查,不就知道写进去的对不对吗?
发表于 2011-5-18 20:31:02 | 显示全部楼层
reg [7:0] mem_arr [70];这个应该写错了吧

关于这个程序应该是对的,要测试的话,你要先产生一些8位的数据,然后再test中将数据读入,之后你应该会的了
 楼主| 发表于 2011-5-19 03:36:50 | 显示全部楼层
回复 5# l7951247


    谢谢指正!
 楼主| 发表于 2011-5-19 03:44:21 | 显示全部楼层
回复 4# acgoal


    这个方法不错,谢谢!我知道怎么做了
发表于 2011-5-21 17:16:37 | 显示全部楼层
学习了啊
发表于 2011-5-21 17:17:22 | 显示全部楼层
学习了啊
发表于 2011-5-21 23:54:38 | 显示全部楼层
在工程里边放二个TXT数据文件,一个写入数据,用于读取,另一个空着,用于写入,验证二个文件是否相同即可.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-23 09:18 , Processed in 0.025509 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表