Xilinx ISE 14.1中模拟True Dual Port RAM例子
<一>创建工程
创建工程在此略过。
<二>基本代码
1、创建一个Verilog modual代码如下:
module main(
input clk,
input rsta,
input wea,
input [ : ] addra,
input [ : ] dina,
output [ : ] douta,
input rstb,
input web,
input [ : ] addrb,
input [ : ] dinb,
output [ : ] doutb
);
device1 mydevice(
.clka(clk),
.rsta(rsta),
.wea(wea),
.addra(addra),
.dina(dina),
.douta(douta),
.clkb(clk),
.rstb(rstb),
.web(web),
.addrb(addrb),
.dinb(dinb),
.doutb(doutb)
); endmodule
代码中元件例化了一个True Dual Port RAM。
2、写测试代码
module mainTest; // Inputs
reg clk;
reg rsta;
reg wea;
reg [:] addra;
reg [:] dina;
reg rstb;
reg web;
reg [:] addrb;
reg [:] dinb; // Outputs
wire [:] douta;
wire [:] doutb; // Instantiate the Unit Under Test (UUT)
main uut (
.clk(clk),
.rsta(rsta),
.wea(wea),
.addra(addra),
.dina(dina),
.douta(douta),
.rstb(rstb),
.web(web),
.addrb(addrb),
.dinb(dinb),
.doutb(doutb)
); initial begin
// Initialize Inputs
clk = ;
rsta = ;
wea = ;
addra = 1;//这里为什么是1在下面有解释
dina = ;
rstb = ;
web = ;
addrb = ;
dinb = ; // Wait 100 ns for global reset to finish // Add stimulus here end
always #0.001 clk = ~clk;
always @(negedge clk)
begin
addra = addra + ;
addrb = addrb + ;
dina = dina + ;
end
endmodule
<三>执行结果
在结果图中,前面的100ps数据并没有改变(原因有待进一步查明);
因为web=0一直不变,所以port B是禁止写数据的,而addrb总是比addra小1,这样做的目的就是为了利用port B 的doutb来检测port A在上一次写入的数据是不是正确的写入,即doutb总是显示的port A 在clk上一次的上升沿写入的数据。
Xilinx ISE 14.1中模拟True Dual Port RAM例子的更多相关文章
- Ubuntu 14.04 安装 Xilinx ISE 14.7 全过程
生命在于折腾. 这个帖子作为我安装xilinx ISE 14.7版本一个记录.希望给需要的人一些帮助,这些内容绝大部分也是来源于互联网. 软硬件: lsb_release -a No LSB modu ...
- Ubuntu 14.04 安装 Xilinx ISE 14.7 全过程(转)
reference:https://www.cnblogs.com/tracyone/p/3561781.html 按照ISE后,建立ISE启动连接: 这个帖子作为我安装xilinx ISE 14.7 ...
- DUAL PORT RAM应用实例
作者:桂. 时间:2018-05-14 12:11:00 链接:http://www.cnblogs.com/xingshansi/p/9035522.html 前言 主要是Xilinx 常用模块汇 ...
- Xilinx ISE 14.1生成Rom内核并读取Rom中的数据
<一>建立一个项目readDataFromRom 详细过程参照另一篇文章 http://www.cnblogs.com/LCCRNblog/p/3397666.html <二> ...
- Xilinx ISE 14.1利用Verilog产生clock
<一>建立如下的Verilog Module module myClock( input clock ); endmodule <二>建立 Verilog Test Fixtu ...
- Windows 8 64bit Xilinx ISE(14.7) Fix License
http://www.youtube.com/watch?v=ttPbEcNjdo8 It can work successfully!
- [ISE 14.7]Fail to Link the designer导致无法仿真问题
一.当前配置 操作系统:WIN 8.1 64位 软件:Xilinx ISE 14.7 二.解决方法 首先,似乎64位的binary都有些问题,所以先把ISE Design Suite 14.7这个快捷 ...
- Windows 10下Xilinx ISE需要注意的事项。
一是安装.可以在Windows 10下安装Xilinx ISE 14.7. 详见:https://www.eevblog.com/forum/xilinx/guide-getting-xilinx-i ...
- 87.在ModelSim中添加Xilinx ISE仿真库
在ModelSim中添加Xilinx ISE仿真库 说明: l ModelSim一定要安装在不带空格的目录下,即不要安装在“Program Files”目录下.如作者是安装在D:\softwares\ ...
随机推荐
- 【个人笔记】《知了堂》前端mySql基础
指定列之后添加: ALTER TABLE 表名 ADD 添加的新列名 INT AFTER 指定列之后 第一个位置: ALTER TABLE 表名 ADD 添加的新列名 varchar(20) AFTE ...
- 一个“.java”文件中是否可以包含多个类(不是内部类)?有什么限制?
可以,若这个类的修饰符是public则,其类名须与文件名相同.
- Python-MongoDB的驱动安装、升级
安装pip,并通过此来安装pymongo–Python mongodb驱动 1.下载pip安装包,下载地址:http://pypi.python.org/packages/source/p/pip/p ...
- 【Learning】多项式乘法与快速傅里叶变换(FFT)
简介: FFT主要运用于快速卷积,其中一个例子就是如何将两个多项式相乘,或者高精度乘高精度的操作. 显然暴搞是$O(n^2)$的复杂度,然而FFT可以将其将为$O(n lg n)$. 这看起来十分玄学 ...
- WordPress-基础设置之阅读设置
对于第一次使用Wordpress系统的朋友,请先别着急发布文章及进行其他操作,为了更加科学的使用及管理wordpress,应该需要对其进行相关设置,主要涉及3个部分,一.常规设置,二.阅读设置,三.固 ...
- JAVA提高二:枚举
JDK5.0中有一个非常有用的特性:枚举,这个特性以前在C语言中出现过,后来JDK出现后,开始觉得没有必要,但随着使用JAVA语言的人数增多,发现大家对枚举的需求非常大,于是又加入了此特性,下面我们来 ...
- 深刻理解反射(Reflection)
最近公司在搞自动化测试,由于版权问题,无法用 '录制脚本' 进行,也就没法用 VS 自带的 UITest 框架(蛋疼), 所以只能开源的 FlaUI 框架来搞了.其中不可避免的涉及到反射的应用,但自己 ...
- 从实践的角度理解cookie的几个属性
cookie的处理流程大致分为以下几步: 1.浏览器初次请求服务器. 2.服务器认为有必要设置cookie,通过响应报文首部:Set-Cookie告知浏览器,cookie的内容. 3.浏览器本地保存( ...
- 谦先生的程序员日志之我的hadoop大数据生涯一
从一个初级程序员到高级程序员的经历 你好!我是谦先生,我是茫茫程序猿中的一猿,平凡又执着. 刚入行的时候说实话,啥都不懂,就懂点皮毛的java,各种被虐狗的感觉.又写js又写css又写后台...慢慢被 ...
- 一起来学linux:网络命令
首先介绍最基本也是经常用到的命令ifconfig,对应windows中的ipconfig.执行ifconfig会将所有的端口信息都显示出来,包括IP地址,MTU 接收和发送的报文还有HWaddr也就是 ...