lsjshengll 发表于 2011-7-24 16:10:57

简单的读写内部ram的ip核问题。。麻烦会的朋友浪费少少时间帮帮忙,有急用。。多谢。

我加了一个2位宽,4个位深的ram ip核,程序如下,综合没错,接着向问问怎么向里面写数据,还有怎么将数据读出来? 麻烦帮帮忙。。十分感谢。。。因为要急用,所以没时间去慢慢看书。。。还有我见例程有些参数要定义wire变量弄弄到子程序里面,请问什么情况时候用到。。wire和reg的区别我大概清楚,就是不明白问什么有些子程序参数要定义wire变量。。先谢谢帮忙的人。。

module ram_top(
clk,
a,
d,
out
);
    input clk;
    input a;
    input d;
    output out;
       
       
ram2 ram2_1 (
        .clka(clk),
        .wea(1),          // Bus
        .addra(a),   // Bus
        .dina(d),   // Bus
        .douta(out));   // Bus
endmodule

306468117 发表于 2011-7-24 23:03:23

wire 是电路连接线,reg是寄存器。
子程序的参数当然要用wire型与外部电路相连。
读写ram很简单,你只需要按照ip核的时序来写就可以了。
论坛里有很多ram的控制器代码

study_yu 发表于 2011-7-25 08:27:35

ram2 ram2_1 (
.clka(clk),
.wea(1),          // Bus
.addra(a),   // Bus
.dina(d),   // Bus
.douta(out));   // Bus
endmodule

读写的话,需要控制wea信号,可能高电平是写,低电平是读
wire和reg类型,简单一点,在assign或者模块输入输出赋值,是wire,在always里面是reg。
或者如ls所言
页: [1]
查看完整版本: 简单的读写内部ram的ip核问题。。麻烦会的朋友浪费少少时间帮帮忙,有急用。。多谢。