vhdl上机手册(基于xilinxisemodelsim内容摘要:

rojectNew Source;(或在 Sources in Project 窗口中单击鼠标右键选择“ New Source… ”)出现如图 6 所示的窗口; Step2. 选择 VHDL Module( VHDL 模块)作为新建源文件的类型; Step3. 在文件名中键入“ FourBitsCounter”; Step4. 单击“下一步”; Step5. 单击“下一步”; Step6. 单击“完成”,完成这个新源程序的创建。 新源程序文件 将会显示在 HDL 编辑窗口中,它包括 Library, Use, Entity, Architecture 等语句。 7 图 6 源程序的类型选 择 4 利用计数器模板向导生成设计 设计文件建立之后,我们就可以向其中填写代码了。 我们可以直接书写 HDL 代码,也可以利用 ISE 的语言模板( ISE Language Template)工具来辅助我们书写 HDL 代码。 在这里我们使用语言模板,选择其中的计数器描述来完成本源程序的设计。 Step1. 选择 EditLanguage Templates 打开语言模板,或者通过单击按钮 来打开语言模板,如图 7 所示; 8 图 7 计数器语言模板 Step2. 在 Language Templates 中通过单击“+”来展开 VHDL 下的综合模板( Synthesis Templates); Step3. 从 VHDL 综合模板中选择计数器模板( Counter Template),并把它粘贴到源程序 的 begin 和 end 之间。 (或在 Counter Template 上单击右键选择“ Use ”,建议直接复制过去); Step4. 关闭 Language Templates 窗口; Step5. 将带有注释符号“ ”的计数器端口定义语句剪切并粘贴到计数器的 实体( entity) 9 描述中。 这些语句如下所列: CLK: in STD_LOGIC。 RESET: in STD_LOGIC。 CE, LOAD, DIR: in STD_LOGIC。 DIN: in STD_LOGIC_VECTOR(3 downto 0)。 COUNT: inout STD_LOGIC_VECTOR(3 downto 0)。 Step6. 去掉上述语句中的注释符号; Step7. 去掉上述最后一个端口定义语句后的分号;此时的程序如图 8 所示。 Step8. 选择 FileSave,保存 源程序。 10 图 8 修改后的计数器描述文件 5 仿真 我们可以通过设置计数器模块的输入来观察仿真输出,以测试我们编写的 VHDL 源文件是 11 否满足逻辑功能要求。 我们建立的 testbench 波形将被用于与仿真软件 ModelSim 的连接,用来验证所设计的计数器的功能和延时是否达到要求。 6 创建 Testbench波形源文件 在仿真前,首先创建一个 Testbench 波形源文件,与以前版本不同的是,该文件不是在 HDL Bencher( ISE 集成的一个工具,用于设置输入波形)中打开,而是在 ISE 中打开,这也是 不同于以前版本的地方。 具体步骤如下: Step1. 打开上一节所建立的工程; Step2. 选择 ProjectNew Source…, (或通过在 Sources in Project 中单击右键选择“ NewSource… ”),出现如图 9 所示的窗口; 图 9 创建波形源文件 12 Step3. 选择文件类型为 Test Bench Waveform; Step4. 键入文件名“ TestWave”,如图 9 中所示; Step5. 单击“下一步”,在本步骤中可以将波形文件与 VHDL 文件进行关联。 Step6. 单击“下一步”; Step7. 单击“完成”; Step8. 此时, HDL Bencher 程序自动启动,如图 10 所示,我们可以选择哪一个信号是时钟信号并可以输入所需的时序需求;在这里我们采用系统的默认值,单击“ OK”按钮; 图 10 仿真时间参数的设置 13 Step9. 这时出现了如图 11 所示的波形; 图 711 新建的波形文件 7 设置输入仿真波形 我们可以打开刚刚建立的波形文件,来 初始化输入波形,步骤如下: Step1. 单击波形图中的蓝色方块来设置波形电平的高低,并将仿真时间线(图中的垂直的蓝色线)拉到第 10 个时钟周期处,设置后的波形如图 12 所示;。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。