ISEmodelsim联合仿真教程.docx

上传人:b****4 文档编号:6580243 上传时间:2023-05-10 格式:DOCX 页数:20 大小:1.68MB
下载 相关 举报
ISEmodelsim联合仿真教程.docx_第1页
第1页 / 共20页
ISEmodelsim联合仿真教程.docx_第2页
第2页 / 共20页
ISEmodelsim联合仿真教程.docx_第3页
第3页 / 共20页
ISEmodelsim联合仿真教程.docx_第4页
第4页 / 共20页
ISEmodelsim联合仿真教程.docx_第5页
第5页 / 共20页
ISEmodelsim联合仿真教程.docx_第6页
第6页 / 共20页
ISEmodelsim联合仿真教程.docx_第7页
第7页 / 共20页
ISEmodelsim联合仿真教程.docx_第8页
第8页 / 共20页
ISEmodelsim联合仿真教程.docx_第9页
第9页 / 共20页
ISEmodelsim联合仿真教程.docx_第10页
第10页 / 共20页
ISEmodelsim联合仿真教程.docx_第11页
第11页 / 共20页
ISEmodelsim联合仿真教程.docx_第12页
第12页 / 共20页
ISEmodelsim联合仿真教程.docx_第13页
第13页 / 共20页
ISEmodelsim联合仿真教程.docx_第14页
第14页 / 共20页
ISEmodelsim联合仿真教程.docx_第15页
第15页 / 共20页
ISEmodelsim联合仿真教程.docx_第16页
第16页 / 共20页
ISEmodelsim联合仿真教程.docx_第17页
第17页 / 共20页
ISEmodelsim联合仿真教程.docx_第18页
第18页 / 共20页
ISEmodelsim联合仿真教程.docx_第19页
第19页 / 共20页
ISEmodelsim联合仿真教程.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

ISEmodelsim联合仿真教程.docx

《ISEmodelsim联合仿真教程.docx》由会员分享,可在线阅读,更多相关《ISEmodelsim联合仿真教程.docx(20页珍藏版)》请在冰点文库上搜索。

ISEmodelsim联合仿真教程.docx

ISEmodelsim联合仿真教程

ISE、modelsim联合教程

一、ISE的使用

1、建立工程:

A、点击File,然后Newproject

B、输入工程名和工程文件夹所在位置,那个WorkingDirectory不用动,它会自动跟Location变化的(PS:

工程名一定要用英文,存放工程的文件夹也一定要放在英文目录下,否则编译会出问题,这一点非常重要!

C、设定芯片类型什么的,点击Next,点击Finish就行了(PS:

这里什么都不用修改,因为芯片类型啥的都可以在后面随时进行修改的)

2、给工程添加文件:

A、鼠标右击工程图标下面的芯片图标,选择Newsource,当您想往该工程中添加文件的时候选择下面的Addsource(PS:

一个工程下可以有多个文件)

B、选择新建的文件类型,这里我们选择verilogmodule,在右边输入文件名称就可以了,文件位置默认是在工程文件下下(PS:

文件名跟工程名最好一样,否则在后面也可能出现奇怪的问题,当程序写完了,要用modelsim仿真的时候这里就要添加verilogtextfixture文件了)

C、设置程序的输入和输出端口,portname就是端口名称,如果该端口是输入端口就在direction中选择input,输出端口就选择output,如果该端口是总线的形式,就勾选上bus,在MSB中输入最高位,在LSB中输入最低位,比如是8位宽的总线,则在MSB中写7,LSB中写0(PS:

这里我用一个之前写的小程序举例子,一个并串转换器,输入有两路,一路是奇数1、3、5、7、9等,一路是偶数2、4、6、8、10等,然后让输出是1、2、3、4、5等,这里我将采取调用IP核的方式,IP核就是ISE封装好的器件,就跟matlab的内置函数差不多,我们设定好它的参数后直接例化调用它就好了,就不用再自己写了)

设置好后点击Next,然后点击Finish即可

从这里我们可以看到,刚才设置的参数ISE已经帮我们设置好了,接下来我们开始调用IP核

D、调用IP核,右击practice文件名,选择newsource(PS:

因为IP核是隶属于verilog文件的,所以要在文件中添加IP核,这里的隶属关系一定要搞懂!

!

选择那个大灯泡,就是IP核了,同样只需要起名字就行了,不用管位置,名字最好用文件名加个ipcore后缀

我们在这个例子中是想用两个fifo来不断的存储和输出数据,通过时钟和读写使能控制fifo实现并串转换,所以我们应该选择fifo的IP核,然后点击next不要点击generate因为我们还有好多参数要设定

这里选择读写不同时钟

这里选择读写深度和读写位宽

然后这里选择读满、写满等乱七八糟的东西的标志(PS:

就是说这个fifo快被写满的时候就会有一个输出端口被拉高或拉低,这里根据个人需求设定,我没有用到就没有勾选)

然后选择复位方式

然后选择是否使用输出、输入计数端口(就是说要不要用端口来记进入和输出fifo的数据的个数,我们这个例子中并不需要记个数,所以不用勾选),然后点击generate就行了

E、例化IP核,找到IP核所在的文件夹,点击左上角的打开按钮

找到刚刚设定的IP核名称后缀为。

v的文件(我这里是用我之前的文件了,所以是p2s_ipcore。

v,如果您按照上述步骤操作这里应该会找到practice_ipcore。

v)

在该文件中找到下面图中的一段程序

把这一段复制到之前创建的主文件中,就是practice。

v的文件中的这个位置(在下图),我们发现p2s_ipcore后面多出了一个ipcore1,这个是我们在主程序中给ip核起的名字,就是说,刚才我们在创建ip核时给ip核起的名字是这个ip核在系统中的名字而不是在我们将要编程的文件中的名字,就像在学校别人都叫我们大名,但是在家里父母叫我们小名一样,然后我们也发现上图中的端口名称在下图中也被我们替换掉了,因为我们要给这个fifo输入,并控制它的输出,上图中的端口名只是告诉我们这些端口都是做什么作用,我们肯定是要用我们定义的端口来替换它的,对于不用的端口悬空就行了,比如empty端口我们就没用,悬空就行了,在下图中我们直接把empty删掉了,但是逗号千万不能删,这里有点难理解,您不懂的地方可以随时问我.

下面的ipcore2跟上面这个是一个意思,因为我们这个程序用到了2个fifo所以只需要创建一个fifo的ip核,然后调用2次就可以了

老师请您注意下图中画圈的部分中我又定义了两种类型的变量wire型和reg型,它们不同于之前我们建立文件时设定的端口类型,wire是内部连线(就是内部模块间通信用的,注意是内部模块间,wire型不能用作整个系统的输入和输出,整个系统的输入和输出只能是input和output型),reg是寄存器类型(用于临时存储数据)

F、下面我们来编写主函数,我先把图贴上然后再进行说明

Verilog程序跟C和matlab最大的不同就在于它需要驱动,就是第一句,也就是always那一句,意思是每当检测到clock_2或者rst的上升沿执行下列程序,由此也可以看出来verilog程序必须由时钟或者复位信号来驱动,我们发现程序中多用的是“〈=”而不用等号,=号是立即赋值(阻塞模式),而<=是(非阻塞模式)等beginend之间这一小段程序运行完再统一赋值,反正一般在时序电路中要用非阻塞模式赋值,这里您不懂的话只需XX“verilog阻塞与非阻塞赋值就清楚了”至于这段程序的意思想必您也知道了rd_en1是第一个fifo的读使能,rd_en2是第二个fifo的读使能,到这里您可能会疑惑为什么这里没有输入,因为verilog程序我们只需要关心模块的内部连接和时序,输入是外部给的,在仿真的时候我们会自己写输入脚本,所以这里并不关心输入。

G、好了程序写完了,下面我们开始进行编译、综合、布线。

双击synthesize—XST按钮

编译完成后问号会变成感叹号,当然这是在没有错误的条件下,warning不用管,但是如果编译没成功记得点击error查看原因

二、使用modelsim对编写的程序进行仿真调试

1、新建测试文件,如下图所示:

选择下图的文件,起名字时一般都是_test

接下来一定要选择主文件,不要选错了ip核,因为是要对主文件进行仿真

之后点击simulation,然后p2s_test就会看到已经建立好的文件

2、编写测试脚本,先上图然后再进行说明

前两句是在编写时钟,每隔10个单位时间clock_1翻转一次,每隔5个单位时间clock_2翻转一次,也就是说clock_2的频率为1的2倍,clock_1是写时钟,clock_2是读时钟,读时钟必然要快于写时钟。

Always@(posedgeclock_1)是在编写输入数据,always结构和下面的initial结构最大的不同就在于,always只要检测到后面的条件就执行,但是initial只执行一次。

在编写测试脚本的时候就不需要用<=直接用=就可以了.

3、编写完成测试脚本后,运行modelsim进行波形观察,双击下图中的按钮

就会看到下图的画面:

然后点击下图中的图标,软件就会帮你把尺寸调到合适:

至此,本教程就完结了,希望您使用愉快!

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2