ISE&modelsim联合仿真教程

ISE&modelsim联合仿真教程

ID:42234955

大小:1.85 MB

页数:21页

时间:2019-09-11

ISE&modelsim联合仿真教程_第1页
ISE&modelsim联合仿真教程_第2页
ISE&modelsim联合仿真教程_第3页
ISE&modelsim联合仿真教程_第4页
ISE&modelsim联合仿真教程_第5页
资源描述:

《ISE&modelsim联合仿真教程》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、ISE、modelsim联合教程一、ISE的使用1、建立工程:A、点击File,然后NewprojectB、输入工程名和工程文件夹所在位置,那个WorkingDirectory不用动,它会自动跟Location变化的(PS:工程名一定要用英文,存放工程的文件夹也一定要放在英文目录下,否则编译会出问题,这一点非常重要!!!)C、设定芯片类型什么的,点击Next,点击Finish就行了(PS:这里什么都不用修改,因为芯片类型啥的都可以在后面随时进行修改的)2、给工程添加文件:A、鼠标右击工程图标下面的芯片图标,选择

2、Newsource,当您想往该工程中添加文件的时候选择下面的Addsource(PS:一个工程下可以有多个文件)B、选择新建的文件类型,这里我们选择verilogmodule,在右边输入文件名称就可以了,文件位置默认是在工程文件下下(PS:文件名跟工程名最好一样,否则在后面也可能出现奇怪的问题,当程序写完了,要用modelsim仿真的时候这里就要添加verilogtextfixture文件了)C、设置程序的输入和输出端口,portname就是端口名称,如果该端口是输入端口就在direction中选择input,

3、输出端口就选择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,然后点击

4、Finish即可从这里我们可以看到,刚才设置的参数ISE已经帮我们设置好了,接下来我们开始调用IP核D、调用IP核,右击practice文件名,选择newsource(PS:因为IP核是隶属于verilog文件的,所以要在文件中添加IP核,这里的隶属关系一定要搞懂!!!)选择那个大灯泡,就是IP核了,同样只需要起名字就行了,不用管位置,名字最好用文件名加个ipcore后缀我们在这个例子中是想用两个fifo来不断的存储和输出数据,通过时钟和读写使能控制fifo实现并串转换,所以我们应该选择fifo的IP核,然后点

5、击next不要点击generate因为我们还有好多参数要设定这里选择读写不同时钟这里选择读写深度和读写位宽然后这里选择读满、写满等乱七八糟的东西的标志(PS:就是说这个fifo快被写满的时候就会有一个输出端口被拉高或拉低,这里根据个人需求设定,我没有用到就没有勾选)然后选择复位方式然后选择是否使用输出、输入计数端口(就是说要不要用端口来记进入和输出fifo的数据的个数,我们这个例子中并不需要记个数,所以不用勾选),然后点击generate就行了E、例化IP核,找到IP核所在的文件夹,点击左上角的打开按钮找到刚刚

6、设定的IP核名称后缀为.v的文件(我这里是用我之前的文件了,所以是p2s_ipcore.v,如果您按照上述步骤操作这里应该会找到practice_ipcore.v)在该文件中找到下面图中的一段程序把这一段复制到之前创建的主文件中,就是practice.v的文件中的这个位置(在下图),我们发现p2s_ipcore后面多出了一个ipcore1,这个是我们在主程序中给ip核起的名字,就是说,刚才我们在创建ip核时给ip核起的名字是这个ip核在系统中的名字而不是在我们将要编程的文件中的名字,就像在学校别人都叫我们大名,

7、但是在家里父母叫我们小名一样,然后我们也发现上图中的端口名称在下图中也被我们替换掉了,因为我们要给这个fifo输入,并控制它的输出,上图中的端口名只是告诉我们这些端口都是做什么作用,我们肯定是要用我们定义的端口来替换它的,对于不用的端口悬空就行了,比如empty端口我们就没用,悬空就行了,在下图中我们直接把empty删掉了,但是逗号千万不能删,这里有点难理解,您不懂的地方可以随时问我。下面的ipcore2跟上面这个是一个意思,因为我们这个程序用到了2个fifo所以只需要创建一个fifo的ip核,然后调用2次就可

8、以了老师请您注意下图中画圈的部分中我又定义了两种类型的变量wire型和reg型,它们不同于之前我们建立文件时设定的端口类型,wire是内部连线(就是内部模块间通信用的,注意是内部模块间,wire型不能用作整个系统的输入和输出,整个系统的输入和输出只能是input和output型),reg是寄存器类型(用于临时存储数据)F、下面我们来编写主函数,我先把图贴上然后再进行说明Verilog程

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。