Vivadoz中Block Memory Generator v8.3的使用方法(二)

在我们的项目中使用的是单端口RAM,读优先模式。其相关配置如下图所示。

我们采用OOC的方式对其综合。

查看官方文档,对操作模式的解释如下:

1、 写优先。

及在一个有效的clk上升沿到来时,先将DIN上的数据写入到ADDRA对应的地址中,然后再将ADDRA对应地址中的数据读出。其时序图入下所示。

可以看出,在写使能信号无效时读出的是ADDRA对应地址中原始的数据,在写使能信号有效后,读出的即为在该时钟写入的DIN 的新数据。

2、 读优先。

即在一个有效的clk上升沿到来时,先将ADDRA对应地址中的原始数据读出,然后再将DIN上的数据写入到ADDRA对应的地址中。其时序图入下所示。

从时序图中,我们可以看出,只要使能信号(ENA)有效,输出数据(DOUT)都是地址中的原始数据,先读出原始数据后,再将DIN中的数据写入到对应地址中。

3、 不变模式(No Change Mode)

即在写使能信号有效时,也即在写入数据时,输出端口(DOUT)上的数据不会发生改变。其时序图如下所示。

我们采用OOC的综合方式方式生成IP核,通过打开例子工程,可以对其单独进行仿真。先对该IP核单独仿真的时序图如下所示。

从图中可以看出,在第一条红色线标记的clka上升沿处,数据被写入到地址为000的内存中。在第一条红色线标记的clka上升沿处,数据被写入到地址为00的内存中。而由于采用读优先模式,在第一条红色线标记的clka上升沿处和在第而条红色线标记的clka上升沿处对应地址中还没有被写入数据,故dout端口数据为0.

在第三条红色线标记的clka上升沿处,地址为000的内存已经在第一条红色线标记处被写入数据,故此时dout端口上的数据为第一条红色线标记处写入到000地址的数

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值