[verilog] 怎样利用RAM里的数据去做其他的运算

[复制链接]
 楼主| 魔人布欧 发表于 2016-5-5 09:51 | 显示全部楼层 |阅读模式
自己写了一个RAM的存储模块来存储数据,该怎么运用里面的数据做其他的运算啊。用地址该怎么取啊。
  1. module RAM(clk,rst_n,address,WR,RD,datain,dataout);

  2. input clk,rst_n;
  3. input RD,WR,cs;
  4. input [7:0]datain;
  5. input [7:0]address;

  6. output [7:0]pd_k;

  7. reg [7:0]datain;
  8. reg  [7:0] dataout;
  9. reg [7:0] menory[255:0];

  10. always @(posedge clk or negedge rst_n)
  11.   begin
  12.   if(!rst_n)
  13.       menory[address]<=8'b0;
  14.   else if(WR)
  15.      begin
  16.       if((cs==1)&&(RD==0))
  17.         memory[address]<=datain;
  18.      end
  19.   else if(RD)
  20.      begin
  21.        if((cs==1)&&(WR==0))
  22.          dataout<=memory[address];        
  23.      end
  24.    end

  25. endmodule
复制代码

感觉是不是已经读取了啊。
cqugjw 发表于 2016-5-6 10:35 | 显示全部楼层
reg [7:0] menory[255:0];
这种写法很忌讳的,例化FPGA的Block memory吧。
 楼主| 魔人布欧 发表于 2016-5-6 13:42 | 显示全部楼层
cqugjw 发表于 2016-5-6 10:35
reg [7:0] menory[255:0];
这种写法很忌讳的,例化FPGA的Block memory吧。

你的意思是直接调用里面的RAM IP吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

20

主题

43

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部