标题 | 基于ModelSim的VHDL仿真技术研究与应用 |
范文 | 陈志刚 摘要:电子产品设计人员希望电子器件有更小的功耗、更强的功能、更低的价格,这就要求将更多的功能集成到单一的芯片。随着计算机技术的快速发展,电子系统设计过程中广泛使用VHDL语言,首先利用VHDL完成电子产品的系统设计,再通过EDA软件对VHDL程序进行编译,产生SDF文件,ModelSim通过调用SDF文件,使用Testbench生成相应的测试激励。以24进制计数为例,应用联合仿真,有效解决不同种类激励源的产生、验证自动化、平台移植等问题。 关键詞:ModelSim;QuartusII;Testbench;联合仿真 中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2019)31-0286-02 1概述 ModelSim是工业界广泛使用的仿真软件,由Me.or Graph-ics公司开发。可以独立完成硬件描述语言代码的功能仿真,还能结合FPGA/CPLD开发软件进行时序仿真,得到包含信号传输时序的结果。同时可以对System c、c语言进行调试与仿真,设计过程中可以采取许多灵活的手段来完成设计工作,大多数FP-GA/CPLD供应商软件都提供与ModelSim的接口。Altera公司的FPGA/CPLD器件的集成度小到300门,大到超过1000万门,可以用来设计、集成现有的大多数逻辑器件,直到实现单片系统,而且其开发系统简单易学、功能强大,学校计划执行非常好,占据了国内大量的市场,很多学校和公司都使用Ahera公司的产品进行设计和开发。QuartuslI适合通过画波形图做初级的仿真,但从Quartusl110.0起不再提供对波形仿真的支挣”。本文使用QuartusII13与ModelSim10软件进行联合仿真,通过高电平异步复位24进制计数器的设计说明二者联合仿真的方法。 224进制计数器的VHDL设计 目前,常用的HDL硬件描述语言主要有VHDL和VerilogHDL,其中VerilogHDL语言具有简捷、高效、易学易用、功能强大等特点,适用于RTL级和门电路级的描述;VHDL语言主要用于描述数字系统的结构、行为、功能和接口。VHDL作为IEEE的工业标准硬件描述语言,已成为电子工程领域的实际通用硬件描述语言。 为了适应实际数字电路的工作模式,VHDL在多个语句中并行和按顺序同时描述所有可能的事件。因此VHDL程序执行方式与其他计算机语言不同,它不是按顺序一条一条执行每一条语句,而是有并行执行的语句同时也有按顺序执行的语句,VHDL程序由一组并行语句构成,并行语句中有顺序语句,这就要求电路设计人员摆脱一维思维模式,完成多维并行思维的VHDL编程。 在综合分析电子系统任务书发布的系统功能和技术指标后,根据已获取的知识和数据,将系统总体功能合理分解为多个子系统,定义好各个子系统的接口,并将子系统块互连,形成系统框图,采用自顶向下的设计方法,与传统的根据元件选择实现方法有根本不同。各个设计小组分别设计子系统。电子系统设计的质量直接取决于电子系统总体方案的选择。在设计整体方案时,应该多思考,分析更多,并进行更多比较。综合考虑性能稳定、运行可靠、电路简单、成本低、功耗低、测试维护方便等因素,选择最佳方案。通过计算机下载到硬件芯片中,实现电路功能,极大加快产品设计进程,可以使产品快速进入市场。 计数器是一种基本时序逻辑电路,主要用来对输入的脉冲个数进行累计和记忆,兼有分频、定时、产生节拍脉冲及进行数字运算等功能,交通灯、时钟等控制器的核心就是计数器。实现异步高电平复位24进制计数器的VHDL主要程序如下: 启动EDA设计软件Quartuslll3,新建项目工程,将24进制计数器程序输入QuartuslI并编译查错直至没有语法错误,生成网表文件和SDF文件,供ModelSim调用。 3利用ModelSim进行仿真及分析 测试平台(Testbench)是验证基于VHDL的FPGA设计的有效方法。一个完整的测试平台由三部分组成:信号定义、模块接口和功能代码。测试仿真的流程为对被测试设计的顶层接口进行例化、给输入接口加激励、判断输出是与否满足设计要求。通过观察仿真输出波形验证所写RTL代码正确与否,若符合预期,则验证结束,否则修改代码直至与预期相同。虽然画波形图的方法比Testbench更加直观且易于上手,但画波形图只能产生有限的输入信号,从而只能完成较初级的功能测试。Testbench可以产生不同种类激励信号,易于实现远远高于绘图波形提供的功能覆盖,可重用性及平台移植性都好。对于复杂设计来说,可能的状态较多,仿真耗时很长,若只是通过画波形图来人为观测,比对功能是否实现的效率会很低,而Testbench是以程序语言的方式进行描述的,在仿真过程中可以使用还原点和仿真恢复,以减少不必要的仿真,提高仿真效率,通过波形比较,将配套的“.dif”和“.rul”文件添加到对话框中,就可以快速地查看比较的波形结果,定位代码的问题所在,测试台的模拟速度比波形图快几个数量级。在本文的设计中,用VHDL语言来设计测试平台(Testbench),程序主要内容如下: 启动ModelSim软件,先建立一个work库后,创建一个新项目project,编译相应设备的库文件,将QuartuslI生成的包含设计中的延迟信息和时序约束信息SDF仿真文件添加到Model-Sim工程中,编译上述Testbench文件,运行仿真,结果如图l所示。 4结束语 VHDL语言能进行系统级的硬件描述是它的一个最突出的优点,充分利用VHDL语言的易操作性和安全性,可以改善电子产品的设计过程,促进行业进步,加快产品更新,提高市场占有率。根据上述的设计及联合仿真方法,通过QuartuslI编译VHDL源文件,生成仿真文件,再利用VHDL语言写测试平台,启动ModelSim进行模拟。这样二种软件分工明确,从图1可知,仿真的结果正确,达到预期目的。充分发挥ModelSim仿真速度更快、功能更强的特性,易于查错,可以大大减少开发时间,提高开发效率。 |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。