新闻中心

EEPW首页 > EDA/PCB > 设计应用 > FPGA设计开发软件ISE使用技巧之:编译与仿真设计工程

FPGA设计开发软件ISE使用技巧之:编译与仿真设计工程

作者:时间:2015-02-02来源:网络收藏

  6.5 编译与仿真设计工程

本文引用地址:http://www.eepw.com.cn/article/269336.htm

  编写代码完成之后,一个很重要的工作就是验证代码功能的正确性,这就需要对代码进行编译与仿真。编译主要是为了检查代码是否存在语法错误,仿真主要为了验证代码实现的功能是否正确。

  编译和仿真设计工程在整个设计中占有很重要的地位。因为代码功能不正确或代码的编写风格不好对后期的设计会有很大的影响,所以需要花很多时间在设计工程的仿真上。

  在这一节中将通过一个具体的实例来介绍如何对编译工程代码以及如何使用自带的仿真工具 Simulator进行仿真。

  1.编译工程代码

  编译主要是为了检测代码是否存在语法错误。在下,源代码的编写是在HDL Editor下完成的,但在HDL Editor下没有专门用于编译代码的选项。不过在HDL Editor下完成代码的编写后,单击“保存”按钮,HDL Editor就会自动对代码进行编译。如果代码存在语法错误,就会在信息显示窗中显示出来,用户可以根据显示的提示,查找语法错误并修改。

  如图6.17所示为在输写代码时忘记分号,保存后就会有提示信息。

  当不存在错误时,提示信息就不会出现“Warning”。ISE下对于代码的编译功能并不是很强大,有很多错误是检测不出来的。例如在编写Verilog代码时,写case语句时漏写了end case语句,在HDL Editor下是检查不出来的。但这些错误在仿真或综合阶段是可以检测出来的,因此即使完成了编译没有错误,也一定要进行仿真,检查是否还存在其他的错误。

  2.仿真设计工程

  这里以一个具体的实例来介绍ISE下自带的仿真工具ISE Simulator的使用,代码参见本书实例代码。该例程的主要功能是根据拨码开关(sw)输入的值在数码管(seg_led)上显示相应的数值。

  

 

  图6.17 编译后的出错提示

  ISE Simulator的使用主要是借助于ISE的辅助设计工具HDL Bencher(测试激励生成器)来完成的。用户将VHDL源代码、Verilog源代码或ECS原理图等设计输入导入工程后,用户可以在图形界面下编辑测试波形,HDL Bencher可以根据用户编辑的测试波形自动生成测试激励文件,然后调用ISE中的ISE Simulator进行仿真。可见使用ISE Simulator进行仿真主要分两步。

  (1)调用HDL Bencher,编辑测试波形,生成测试激励文件。

  (2)调用ISE Simulator对工程文件进行功能仿真和时序仿真。

  下面对实例做详细的介绍,具体步骤如下。

  (1)启动HDL Bencher。

  首先打开实例工程,选择“Project”/“New Source”,弹出新建资源的对话框,选择“Test Bench Waveform”,输入测试激励波形文件名,如图6.18所示。

  单击“下一步”按钮为测试激励文件选择源文件,如图6.19所示,选择要测试的源代码,单击“下一步”按钮。

  

 

  图6.18 新建测试测试激励波形文件 图6.19 为被测试的源文件对话框

  单击“完成”按钮确认新建资源信息,HDL Bencher会自动启动。

  (2)波形编辑。

  HDL Bencher启动后首先出现如图6.20所示的时钟设置对话框。

  

 

  图6.20 时钟设置对话框

  如图6.20所示,时钟设置包括:时钟的高电平持续时间(Clock Time High)、低电平持续时间(Clock Time Low)、建立时间(Input Setup Time)和保持时间(Output Valid Delay),系统为单时钟(Single Clock)系统、多时钟(Multiple Clocks)系统以及仿真时间和单位。这里设置的仿真时间表示仿真将持续多长时间后自动停止。

  如果设计存在异步时序(Asynchronous Signal Support),还要对异步时钟做相应的设置。这个设计中,只有同步时序,所以不选,与上表设置不一致之处请用户自行修改。设置完毕单击“OK”按钮后系统会自动生成时钟的波形,如图6.21所示。

  

 

  图6.21 波形编辑界面

  如图6.21所示,设置好时钟后,系统会自动生成时钟波形。在如图6.18所示的对话框中设置的“Initial Length of Test Bench”为1000ns,这里可以看到仿真在进行了1000ns后就自动停止了,双击“End Time”,会弹出如图6.22所示的对话框,可以对仿真时间进行修改。

  在设置好时钟频率、时钟建立时间和保持时间后,如果要修改,选择“Test Bench”/“Rescale Timing”会弹出如图6.23所示对话框,可以对时钟设置进行修改。

  

 

  图6.22 修改仿真时间对话框 图6.23 修改时钟设置对话框

  这此设计中除时钟信号外,rst和sw[7:0]为输入信号,需要对rst和sw的波形进行编辑,编辑方法也比较简单,单击图中的蓝色区域就可以改变波形,根据仿真需要可任意设置波形,在这里设置仿真波形如图6.24所示。

  

 

  图6.24 编辑波形图

fpga相关文章:fpga是什么



上一页 1 2 下一页

关键词: FPGA ISE

评论


相关推荐

技术专区

关闭