常用EDA工具软件讲解_第1页
常用EDA工具软件讲解_第2页
常用EDA工具软件讲解_第3页
常用EDA工具软件讲解_第4页
常用EDA工具软件讲解_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2022-3-241本章概要:本章概要:本章介绍几种目前世界上比较流行和实用的本章介绍几种目前世界上比较流行和实用的EDA工具软件,包括工具软件,包括Altera公司的公司的MAX+PLUS 、ModelSim和和Matlab,以适应不同读者的需要。这些软件主要是基于,以适应不同读者的需要。这些软件主要是基于PC机机平台的,面向平台的,面向FPGA和和CPLD或或ASIC设计,比较适合学校教学、设计,比较适合学校教学、项目开发和相关的科研。项目开发和相关的科研。知识要点:知识要点:(1)MAX+PLUS 工具软件的使用方法。工具软件的使用方法。(2)ModelSim工具软件的使用方法。工具软件

2、的使用方法。(3)基于)基于Matlab/DSP Builder的的DSP模块设计。模块设计。2022-3-2425.1 MAX+plus5.1.1 MAX+PLUS 的安装的安装 1. 运行运行setup.exe2. 遵守协议遵守协议3.3.授权(授权(LICENSE)文件)文件 复制名称为复制名称为ALTERA.DAT的的LICENSE文件,到文件,到MAX+plus II的安装目录下(如的安装目录下(如c:maxplus2)。运行)。运行MAX+plus II,进入,进入MAX+plus II集成环境,选择集成环境,选择OptionLicense Setup菜单,弹出一个对话框。按菜单,

3、弹出一个对话框。按Browse按钮,可以选择,此时选择前面复制时进入的授按钮,可以选择,此时选择前面复制时进入的授权文件即可。权文件即可。 2022-3-243MAX+plus软件授权操作提示对话框软件授权操作提示对话框 2022-3-2445.1.2 MAX+plus原理图输入法原理图输入法 用用MAX+plus II的原理图输入设计法进行数字系统设计的原理图输入设计法进行数字系统设计时,不需要任何硬件描述语言知识,在掌握了数字逻辑电路时,不需要任何硬件描述语言知识,在掌握了数字逻辑电路的基本知识后,即可使用的基本知识后,即可使用MAX+plus II提供提供EDA平台,设计平台,设计数字电

4、路。数字电路。为了方便电路设计,设计者首先应当在计算机中建立为了方便电路设计,设计者首先应当在计算机中建立自己的工程目录。例如,将自己的全部自己的工程目录。例如,将自己的全部EDA设计文件放在设计文件放在d:myeda文件夹中,而为图形编辑设计建立文件夹中,而为图形编辑设计建立d:myedamygdf文件夹,为文件夹,为VHDL文本编辑设计建立文本编辑设计建立d:myedamyvhdl等。等。 2022-3-245编辑原理图编辑原理图编译设计文件编译设计文件功能仿真功能仿真产生元件符号产生元件符号引脚锁定引脚锁定时序仿真时序仿真硬件调试硬件调试编程下载编程下载MAX+plus 原理图输入的基本

5、操作原理图输入的基本操作2022-3-2461. 编辑图形设计文件编辑图形设计文件 执行执行“File”“New”命令,弹出编辑文件类型对话框命令,弹出编辑文件类型对话框,选择,选择“Graphic Editor file”后单击后单击 “OK”按钮。按钮。2022-3-247MAX+plus的图形编辑界面的图形编辑界面2022-3-248在原理图编辑窗中的任何一个位置上双击鼠在原理图编辑窗中的任何一个位置上双击鼠标的左键,将弹出一个元件选择窗,或者点鼠标右标的左键,将弹出一个元件选择窗,或者点鼠标右键,选择输入元件项键,选择输入元件项Enter Symbol,也可以出现,也可以出现这个元件选

6、择窗。这个元件选择窗。 由此输入所需要的元件名用户自己设置的元件库基本逻辑元件库老式宏函数元件库参数可设置的强函数元件库基本逻辑元件库中的元件2022-3-249半加器(半加器(h_adder.gdf)设计项目示意图)设计项目示意图2022-3-24102. 编译设计图形文件编译设计图形文件设计好的图形文件一定要通过设计好的图形文件一定要通过MAX+plusII的编译。在的编译。在MAX+plus集成环境下,执行集成环境下,执行“MAX+plus”菜单下的菜单下的“Compiler”命令,在弹出的编译对话框按命令,在弹出的编译对话框按“START”键,即键,即可对可对h_adder.gdf文件

7、进行编译。文件进行编译。 在编译中,在编译中,MAX+plusII自动完成编译网表提取自动完成编译网表提取(Compiler Netlist Extractor)、数据库建立()、数据库建立(Database Builder)、逻辑综合()、逻辑综合(Logic Synthesizer)、逻辑分割)、逻辑分割(Partitioner)、适配()、适配(Fitter)、延时网表提取()、延时网表提取(Timing SNF Extractor)和编程文件汇编()和编程文件汇编(Assembler)等操作。)等操作。 2022-3-24113. 产生元件符号产生元件符号在在MAXplusII集成环境

8、下,执行集成环境下,执行“File”菜单下的菜单下的“Create Default Symbol”命令,将通过编译的命令,将通过编译的GDF文件产文件产生一个元件符号,并保存在工程目录中。元件符号可以被其他生一个元件符号,并保存在工程目录中。元件符号可以被其他图形设计文件调用,实现多层次的系统电路设计。图形设计文件调用,实现多层次的系统电路设计。 半加器元件符号半加器元件符号2022-3-24124. 功能仿真设计文件功能仿真设计文件仿真,也称为模拟(仿真,也称为模拟(Simulation),是对电路设计的一),是对电路设计的一种间接的检测方法。对电路设计的逻辑行为和功能进行模拟检种间接的检测

9、方法。对电路设计的逻辑行为和功能进行模拟检测,可以获得许多设计错误及改进方面的信息。对于大型系统测,可以获得许多设计错误及改进方面的信息。对于大型系统的设计,能进行可靠、快速、全面的仿真尤为重要的设计,能进行可靠、快速、全面的仿真尤为重要。仿真包括编辑波形文件、波形文件存盘和执行仿真文件仿真包括编辑波形文件、波形文件存盘和执行仿真文件等操作。等操作。2022-3-24135. 编程下载设计文件编程下载设计文件上述的仿真仅是用来检查设计电路的逻辑功能是否正上述的仿真仅是用来检查设计电路的逻辑功能是否正确,与实际编程下载的目标芯片还没有联系。为了获得与目确,与实际编程下载的目标芯片还没有联系。为了

10、获得与目标器件对应的、精确的时序仿真文件,在对文件编译前必须标器件对应的、精确的时序仿真文件,在对文件编译前必须选定设计项目的目标器件,在选定设计项目的目标器件,在Max+plusII环境中主要选环境中主要选Altera公司的公司的FPGA或或CPLD。编程下载包括选择目标芯片、引脚锁定、编译和编程编程下载包括选择目标芯片、引脚锁定、编译和编程下载等操作。下载等操作。完成选择目标芯片、引脚锁定再编译后再进行的仿真完成选择目标芯片、引脚锁定再编译后再进行的仿真称为时序仿真,此时的仿真是针对具体的目标芯片进行的。称为时序仿真,此时的仿真是针对具体的目标芯片进行的。2022-3-24141)选择)选

11、择目标芯片目标芯片执行执行“Assign”的的“Device”命令,选择下载芯片型号。在命令,选择下载芯片型号。在“Device Family”中选择中选择“FLE10K”,在,在Device列表中选列表中选择择“EPF10KLC84-4”芯片型号。芯片型号。 2022-3-24152)锁)锁定定引脚引脚 选择选择EDAEDA实验实验/ /开发设备开发设备GW48GW48的的实验结构图实验结构图NO.6NO.6,用用“键键7 7”和和“键键8 8”分别作为分别作为A A、B B输入按键,接输入按键,接PIO12PIO12和和PIO13 PIO13 。用用“D8D8”和和“D7D7”作为设计电路

12、的进位作为设计电路的进位COCO与和与和SOSO输出显示输出显示 接接PIO23PIO23和和PIO22PIO22 (PIO39/65PIO39/65)。)。6. 设计电路硬件调试设计电路硬件调试按实验板上的按实验板上的“模式选择模式选择”键,选择模式键,选择模式NONO.6,执行向,执行向EPF10K10编程下载配置后,按动编程下载配置后,按动GW48实验板上的高低电平输实验板上的高低电平输入键入键“键键7”和和“键键8”,得到,得到A、B不同的输入组合;观察不同的输入组合;观察“D8D8”和和“D7D7”发光二极管显示的结果是否正确。发光二极管显示的结果是否正确。 2022-3-24165

13、.1.3 原理图输入法的层次化设计原理图输入法的层次化设计 层次化设计也称为层次化设计也称为“自底向上自底向上”的设计方法,即将一个大的设计方法,即将一个大的设计项目分解为若干个子项目或若干个层次来完成。先从底的设计项目分解为若干个子项目或若干个层次来完成。先从底层的电路设计开始,然后在高层次的设计中逐级调用低层次的层的电路设计开始,然后在高层次的设计中逐级调用低层次的设计结果,直至最后系统电路的实现。对于每个层次的设计结设计结果,直至最后系统电路的实现。对于每个层次的设计结果,都经过严格的仿真验证,尽量减少系统设计中的错误。果,都经过严格的仿真验证,尽量减少系统设计中的错误。例例4位加法器的

14、设计位加法器的设计4位加法器由位加法器由4个个1位全加器构成,它的底层设计文件是位全加器构成,它的底层设计文件是1位全加器。位全加器。2022-3-2417 1位全加器的原理图位全加器的原理图全加器元件符号全加器元件符号2022-3-24184位加法器原理图位加法器原理图2022-3-2419ModelSim是一种快速而又方便的是一种快速而又方便的HDL编译型仿真工具,编译型仿真工具,支持支持VHDL和和Verilog HDL的编辑、编译和仿真。的编辑、编译和仿真。ModelSim有一系列产品,它们可以在有一系列产品,它们可以在Unix平台和平台和Windows平台上工作,目前主要分为平台上工

15、作,目前主要分为MoelSim/VHDL(或(或ModelSim/Verilog-OEM)、)、MoelSim/LNL (支持(支持VHDL或或Verilog的版本,但不同时支持的版本,但不同时支持VHDL和和Verilog)、)、ModelSim/PLUS(支持(支持VHDL和和Verilog的版本,包括混合仿的版本,包括混合仿真)和真)和ModelSim/SE(主要版本,功能比(主要版本,功能比ModelSim/Plus更更强大)等不同版本。强大)等不同版本。 2022-3-24206.2.1 ModelSim的安装的安装ModelSim的安装分为软件安装和许可文件安装两个过的安装分为软件

16、安装和许可文件安装两个过程。程。1. ModelSim软件安装软件安装插入插入ModelSimModelSim光盘后,执行光盘后,执行“setupsetup”安装命令,根据屏安装命令,根据屏幕提示完成幕提示完成ModelSimModelSim的安装。安装结束后,将的安装。安装结束后,将License.datLicense.dat拷拷贝到贝到Modeltech_5.8c安装目录下,并将附在光盘上的安装目录下,并将附在光盘上的lmgr326b.dlllmgr326b.dll文件拷贝到文件拷贝到 Modeltech_5.8c WIN32 WIN32 目录下目录下替换原文件,重新启动计算机。替换原文件

17、,重新启动计算机。 2022-3-24212. ModelSim许可文件安装许可文件安装计算机的计算机的“开始开始”菜单的菜单的“程序程序”选项中,选择选项中,选择“ModelSim XE II Eval 5.8C”中的中的“Licening Wizard”命令,命令,在弹出的许可文件安装的对话框中点击在弹出的许可文件安装的对话框中点击“Continue”按钮,按钮,然后在弹出许可文件位置(然后在弹出许可文件位置(License File Location)对话框)对话框中输入中输入“C: Modeltech_5.8cwin32license.dat ”许可文件许可文件后按后按“OK”。 许可

18、文件安装对话框许可文件安装对话框2022-3-24226.2.2 ModelSim的使用方法的使用方法ModelSim是是Unix下的下的QuickHDL发展来,发展来,Windows版版本的本的ModelSim保留了部分保留了部分Unix风格,可以使用键盘完成所有风格,可以使用键盘完成所有操作,但也提供了用户图形界面接口。操作,但也提供了用户图形界面接口。ModelSim有交互命令有交互命令方式(即在方式(即在ModelSim的主窗口通过输入命令实现编辑、编译的主窗口通过输入命令实现编辑、编译和仿真操作)、图形用户交互方式(即通过菜单进行交互)和和仿真操作)、图形用户交互方式(即通过菜单进行

19、交互)和批处理方式(类似批处理方式(类似DOS批处理或批处理或Unix的的shell工作方式)等三工作方式)等三种执行方式。种执行方式。 2022-3-2423ModelSim启动后,首先呈现出的主窗口(启动后,首先呈现出的主窗口(Main Windows)界面,主窗口中包括命令窗口()界面,主窗口中包括命令窗口(Transcript)、)、工作区(工作区(Workspace)和工具栏。在命令窗口中可以输入)和工具栏。在命令窗口中可以输入ModeSim的命令,并获得执行信息;在工作区中用树状列表的命令,并获得执行信息;在工作区中用树状列表(Tree List)的形式来观察库()的形式来观察库(

20、Library)、项目源文件)、项目源文件(Project)和设计仿真的结构。)和设计仿真的结构。 ModeSim的主窗口界面的主窗口界面工具栏工具栏工作区工作区命令窗口命令窗口2022-3-2424在使用在使用ModelSim之前,应事先建立用户自己的工程文之前,应事先建立用户自己的工程文件夹,用于存放各种设计文件和仿真文件,然后还要建立件夹,用于存放各种设计文件和仿真文件,然后还要建立work库。在库。在VHDL中中work是默认的工作库,因此是默认的工作库,因此ModelSim中中必须首先建立一个必须首先建立一个work库。库。 建立新项目对话框建立新项目对话框2022-3-24251.

21、 ModelSim编辑方法编辑方法在在ModelSim的主窗口界面,执行的主窗口界面,执行“File”“New”“Source”“VHDL”命令,进入命令,进入ModelSim的的VHDL(或(或Verilog HDL)编辑方式。在)编辑方式。在ModelSim的编辑方的编辑方式(式(source)界面输入十进制加法计数器的)界面输入十进制加法计数器的VHDL源程序,并源程序,并用用cnt4m.vhd为文件名,存入用户自己的工程文件夹中。为文件名,存入用户自己的工程文件夹中。 进入进入ModelSim编辑方式的界面编辑方式的界面2022-3-2426ModelSim编辑方式的界面编辑方式的界面

22、2022-3-24272. ModelSim编译方法编译方法完成源程序的编辑后,在完成源程序的编辑后,在ModelSim编辑方式窗口执行编辑方式窗口执行“Tools”“Compile”命令,在弹出的编译命令,在弹出的编译HDL源文件源文件(Compile HDL Source File)对话框中,按)对话框中,按“Compile”按按钮,即可对源程序进行编译,编译成功后,钮,即可对源程序进行编译,编译成功后,cnt10m的设计实的设计实体就会出现在体就会出现在work库中。库中。 ModelSim的编译方式界面的编译方式界面2022-3-24283. ModelSim仿真方法仿真方法Model

23、Sim仿真包括装载设计文件、设置激励信号和仿真等操仿真包括装载设计文件、设置激励信号和仿真等操作过程。作过程。(1)装载设计文件)装载设计文件执行执行“Simulate”“Simulate”命令,在弹出的仿真命令,在弹出的仿真文件装载对话框中,用鼠标将文件装载对话框中,用鼠标将work库中的库中的cnt10m点黑选中,点黑选中,然后按然后按“Add”键,再按键,再按“Load”键,即可完成设计文件的装键,即可完成设计文件的装载,此时工作区会出现载,此时工作区会出现“Sim”标签,表示装载成功。标签,表示装载成功。 2022-3-2429设计文件装载对话框设计文件装载对话框2022-3-2430

24、(2)设置仿真激励信号)设置仿真激励信号执行执行“View”“Signals”命令,打开信号(命令,打开信号(Signals)窗口,经过装载的十进制加法计数器设计电路的复位输入端窗口,经过装载的十进制加法计数器设计电路的复位输入端clr、时钟输入端、时钟输入端clk和输出端和输出端cnt已在窗口内。已在窗口内。 ModelSim的信号窗口的信号窗口2022-3-2431将将ModelSim信号(信号(Signal)窗口中的复位输入信号)窗口中的复位输入信号clr用鼠标点亮选中后,执行用鼠标点亮选中后,执行“Edit”“force”命令,在弹出的命令,在弹出的被选信号激励(被选信号激励(Forc

25、e Selected Signal)对话框中将)对话框中将“Value:”中的数值改写为中的数值改写为1,则为,则为clr当前赋当前赋1值。另外,值。另外,“Delay For:”中的值是信号赋值前的延迟时间,中的值是信号赋值前的延迟时间,“Cancei After:”中的值是仿真取消后的值,这两个参数一般可以不填。中的值是仿真取消后的值,这两个参数一般可以不填。被选激励信号的值确定后,按被选激励信号的值确定后,按“OK”键结束键结束Force赋值操作。赋值操作。 为为clr赋值的对话框赋值的对话框2022-3-2432将将ModelSim的的Signal窗口中的时钟输入信号窗口中的时钟输入信

26、号clk用鼠标点亮选中用鼠标点亮选中后,执行后,执行“Edit”“Clock”命令,在弹出的定义时钟(命令,在弹出的定义时钟(Define Clock)对话框中,时钟信号的主要参数基本设置好,其中对话框中,时钟信号的主要参数基本设置好,其中“Period”参数是时钟参数是时钟的周期,已经预先设置为的周期,已经预先设置为100标准单位;标准单位;“Duty”参数是时钟波形的高电参数是时钟波形的高电平持续时间,已经预先设置为平持续时间,已经预先设置为50个标准单位,表示预先设置的个标准单位,表示预先设置的Clock的占的占空比为空比为50,即方波。另外,即方波。另外,“offset”参数是补偿时间

27、,参数是补偿时间,“Cancel”参数参数是取消时间。是取消时间。Clock设置完毕后按设置完毕后按“OK”键确定。键确定。 定义时钟对话框定义时钟对话框2022-3-2433当全部激励信号设置完毕后,将当全部激励信号设置完毕后,将ModelSim的的Signal窗口中全部端口信号用鼠标点亮选中,然后执行窗口中全部端口信号用鼠标点亮选中,然后执行“Add”“Wave”“Selected Signals”命令,即可将选中命令,即可将选中的端口信号加入到的端口信号加入到ModelSim的波形(的波形(Wave)窗口中。)窗口中。 选择端口信号操作示意图选择端口信号操作示意图2022-3-2434(

28、3)仿真设计文件)仿真设计文件执行执行“View”“Signals”命令,打开波形(命令,打开波形(Wave)窗)窗口。在口。在Wave窗口的工具栏中,各主要按键的功能如图所示。窗口的工具栏中,各主要按键的功能如图所示。 表表示示驱驱动动器器停停止止运运行行全全程程继继续续运运行行运运行行重重新新开开始始缩缩小小2x放放大大2x波形窗口波形窗口2022-3-2435按动按动ModelSim的波形窗口上的的波形窗口上的“运行运行”按键,仿真波按键,仿真波形将按照按一次键输出一个时钟周期的方式对设计电路进行形将按照按一次键输出一个时钟周期的方式对设计电路进行仿真。在仿真期间,可以用仿真。在仿真期间

29、,可以用ModelSim的的Signal窗口,改变复窗口,改变复位信号位信号clr的值,来验证复位信号的功能。的值,来验证复位信号的功能。 十进制加法计数器十进制加法计数器cnt10m的仿真波形的仿真波形2022-3-24366.2.3 ModelSim与与MAX+plusII的接口的接口ModelSim是一种快速仿真工具,但对设计文是一种快速仿真工具,但对设计文件的输入编辑与编译不如件的输入编辑与编译不如MAX+plusII那样方便快捷。那样方便快捷。因此,在因此,在EDA设计过程中,设计者常用设计过程中,设计者常用MAX+plusII来完成来完成HDL设计文件的输入编辑与编译,再用设计文件

30、的输入编辑与编译,再用ModelSim对设计文件进行仿真。由于对设计文件进行仿真。由于ModelSim是是编译型仿真器,使用编译后的编译型仿真器,使用编译后的HDL库进行仿真,因库进行仿真,因此在进行仿真前,必须编译所以待仿真的此在进行仿真前,必须编译所以待仿真的HDL文件文件成为仿真库,在编译时获得优化,提高仿真速度。成为仿真库,在编译时获得优化,提高仿真速度。 2022-3-2437编译时执行编译时执行“Compile”“Compile”命令,在弹出命令,在弹出的在弹出的的在弹出的“Compile HDL Source File”对话框的对话框的“查找范查找范围:围:”栏目输入或选择栏目输

31、入或选择MAX+plusII设计文件夹,则该文件中设计文件夹,则该文件中的的HDL源文件将全部出现在对话框中,然后用鼠标将选中的源文件将全部出现在对话框中,然后用鼠标将选中的源文件点黑选中,或者直接把选中的源文件名输入源文件点黑选中,或者直接把选中的源文件名输入“文件名文件名”栏目中,按栏目中,按“Compile”按钮,即可对源程序进行编译。编译按钮,即可对源程序进行编译。编译成功后,选中源文件的设计实体就会出现在成功后,选中源文件的设计实体就会出现在work库中。库中。 ModelSim的编译方式界面的编译方式界面2022-3-2438ModelSim仿真属于功能仿真,输出波形没有延迟。仿真

32、属于功能仿真,输出波形没有延迟。为了对设计文件进行门级时序仿真,必须用为了对设计文件进行门级时序仿真,必须用MAX+plusII对对设计文件进行综合和适配,再把适配后的网表文件导入到设计文件进行综合和适配,再把适配后的网表文件导入到ModelSim仿真环境中进行门级时序仿真。仿真环境中进行门级时序仿真。MAX+plusII支持多种支持多种VHDL和和Verilog HDL网表格式,网表格式,不同的网表格式不同的网表格式ModelSim仿真处理不同,因此在仿真处理不同,因此在MAX+plusII中还必须进行设置。在中还必须进行设置。在MAX+plusII对设计文件对设计文件进行编译时,可以执行进

33、行编译时,可以执行“Interface”“VHDL Netlist Writer Settings”命令,对命令,对VHDL的网表格式进行设置;执的网表格式进行设置;执行行“Interface”“Verilog Netlist Writer Settings”命令,命令,对对Verilog HDL的网表格式进行设置。在的网表格式进行设置。在MAX+plusII中已将中已将VHDL的网表格式默认设置为的网表格式默认设置为“VHDL Output File.vho”文文件,将件,将Verilog HDL的网表格式默认设置为的网表格式默认设置为“Verilog Output File.vo”文件。文

34、件。 2022-3-2439在对在对VHDL或或Verilog HDL设计文件进行编译前,打开设计文件进行编译前,打开MAX+plusII 的的“Interface”界面,将界面,将“VHDL Netlist Writer”和和“Verilog Netlist Writer”选项前加上选项前加上“”,如图所示,则,如图所示,则在对设计文件进行编译后,生成在对设计文件进行编译后,生成VHDL网表文件网表文件.vho,或者,或者Verilog HDL的网表文件的网表文件.vo。 在在MAX+plus中进行设置的示意图中进行设置的示意图2022-3-24406.2.4 ModelSim交互命令方式仿

35、真交互命令方式仿真ModelSim交互命令方式,是在交互命令方式,是在ModelSim的的主窗口的命令窗口上,通过输入命令来实现的,具主窗口的命令窗口上,通过输入命令来实现的,具有更好的调试和交互功能。有更好的调试和交互功能。ModelSim提供了多种指提供了多种指令,既可以单步,也可以构成批处理文件,用来控令,既可以单步,也可以构成批处理文件,用来控制编辑、编译和仿真流程。制编辑、编译和仿真流程。ModelSim用于仿真的主要指令包括用于仿真的主要指令包括Run、Force、View等指令,其他指令可参考等指令,其他指令可参考ModelSim说说明书或帮助。明书或帮助。 2022-3-244

36、11. Run指令指令指令格式:指令格式:Run 其中,其中, 参数参数timesteps(时间步长)和(时间步长)和time_unit(时间单位)(时间单位)是可选项,是可选项,time_unit可以是可以是fs(1015秒),秒),ps(1012秒)秒)ns(109秒)秒)ms(106秒),秒),sec(秒)这几种。(秒)这几种。指令功能:运行(仿真)并指定时间及单元。指令功能:运行(仿真)并指定时间及单元。例如,例如,“run”表示运行;表示运行;“run 1000”表示运行表示运行1000个默认个默认的时间单元(的时间单元(ps););“run 2500 ns”表示运行表示运行2500

37、ns;“run continue”表示继续运行;表示继续运行;“run all”表示运行全程。表示运行全程。 2022-3-24422. force指令指令指 令 格 式 :指 令 格 式 : f o r c e , 其中,参数其中,参数item_name 不能缺省,它可以是端口信号,也可不能缺省,它可以是端口信号,也可以是内部信号,且还支持通配符号,但只能匹配一个;以是内部信号,且还支持通配符号,但只能匹配一个;value 也不能缺省,其类型必须与也不能缺省,其类型必须与item_name 一致;一致;time是可选项,是可选项,支持时间单元。支持时间单元。例如,例如,“force clr

38、1”表示为表示为clr赋值赋值1;“force clr 1 100”表表示经历示经历100个默认时间单元延迟后为个默认时间单元延迟后为clr赋值赋值1;“force clr 1,0 1000”表示为表示为clr赋值赋值1后经历后经历1000默认时间单元延迟后为默认时间单元延迟后为clr赋赋值值0。 2022-3-24433. force repeat指令指令指令格式:指令格式:force , repeat 指令功能:每隔一定的周期(指令功能:每隔一定的周期(period)重复一定的)重复一定的force命令。命令。该指令常用来产生时钟信号。该指令常用来产生时钟信号。例如,例如,“force c

39、lk 0 0, 1 30 -repeat 100”表示强制表示强制clk从从0时时间单元开始,起始电平为间单元开始,起始电平为0,结束电平为,结束电平为1,忽略时间(即,忽略时间(即0电电平保持时间)为平保持时间)为30个默认时间单元,周期为个默认时间单元,周期为100个默认时间单个默认时间单元,占空比为(元,占空比为(100-30)/100=70%。 2022-3-24444. force cancel指令指令指令格式:指令格式:force cancel 指令功能:执行指令功能:执行period周期时间后取消周期时间后取消force命令。命令。例如,例如,“force clk 0 0, 1

40、30 -repeat 60 -cancel 1000”强制强制clk从从0时间单元开始,直到时间单元开始,直到1000个时间单元结束。个时间单元结束。 5. View指令指令指令格式:指令格式:view 窗口名窗口名指令功能:打开指令功能:打开ModelSim的窗口。的窗口。例如,例如,“view souce”是打开源代码窗口;是打开源代码窗口;“view wave”是打开波形窗口;是打开波形窗口;“view list”是打开列表窗口;是打开列表窗口;“view variables”是打开变量窗口;是打开变量窗口;“view signals”是打开是打开信号窗口;信号窗口;“view all”

41、是打开所有窗口。是打开所有窗口。 2022-3-24456.2.5 ModelSim批处理工作方式批处理工作方式如果采用单步指令来控制仿真流程,每次都要输入相应如果采用单步指令来控制仿真流程,每次都要输入相应的指令,是很繁琐的事情。的指令,是很繁琐的事情。ModelSim提供了一个简化方式,提供了一个简化方式,即可以把这些命令形成一个批处理文件后再执行。即可以把这些命令形成一个批处理文件后再执行。在在ModelSim的主窗口,执行的主窗口,执行“File”“New”“Source”“DO”命令,进入命令,进入ModelSim的的DO文件编辑方式。在编辑窗口输入下列计数器仿真批处理文文件编辑方式

42、。在编辑窗口输入下列计数器仿真批处理文件(件(cnt10m.do)的代码:)的代码: vsim t10mforce -freeze sim:/cnt10m/clk 1 0, 0 50 ns -repeat 100/设置时钟设置时钟force -freeze sim:/cnt10m/rst 0, 1 200, 0 1000/设置复位信号设置复位信号force -freeze sim:/cnt10m/ena 1, 0 2200, 1 2600/设置使能信号设置使能信号add wave -r /*run 100002022-3-2446 完成计数器仿真批处理文件的编辑后,用完成计数器仿真批处理文件的

43、编辑后,用“cnt10m.do”为文件名保存在与计数器设计文件相同的文件夹中(为文件名保存在与计数器设计文件相同的文件夹中(.do是是DO文件的属性后缀),并通过文件的属性后缀),并通过ModelSim的编译。的编译。在在ModelSim的命令窗口中执行的命令窗口中执行“do cnt10m.do”,完成对计,完成对计数器设计(数器设计(cnt10m)的仿真。)的仿真。 2022-3-2447Matlab是当前国际控制界最流行的面向工程与科学计是当前国际控制界最流行的面向工程与科学计算的高级语言。算的高级语言。Altera公司充分利用了公司充分利用了Matlab的优势,将的优势,将Quartus

44、 II与其进行无缝连接,完成与其进行无缝连接,完成DSP等复杂系统的设计。等复杂系统的设计。本节介绍利用本节介绍利用Matlab/DSP Builder工具进行工具进行DSP模块设计、模块设计、Matlab模型仿真、模型仿真、SignalCompiler使用方法、使用使用方法、使用Modelsim进行进行RTL级仿真、使用级仿真、使用Quartus II实现时序仿真、实现时序仿真、使用使用Quartus II硬件实现与测试。硬件实现与测试。 下面以一个简单的正弦信号调制电路的设计为例,介绍下面以一个简单的正弦信号调制电路的设计为例,介绍基于基于Matlab/DSP Builder的的DSP开发

45、技术。开发技术。 5.3.1 设计原理设计原理 正弦信号调制电路电路由阶梯信号发生器模块正弦信号调制电路电路由阶梯信号发生器模块IncCounter、正弦函、正弦函数值查找表模块数值查找表模块SinLUT、延时模块、延时模块Delay、乘法器模块、乘法器模块Product、数据控、数据控制模块制模块DATAIN和输出模块和输出模块Output等等6个部分构成。阶梯信号发生器模块个部分构成。阶梯信号发生器模块IncCounter产生线性递增的地址信号,送往产生线性递增的地址信号,送往SinLUT查找表。查找表。SinLUT是是一个正弦函数值的查找表模块,由递增的地址获得正弦波值输出,输出的一个正

46、弦函数值的查找表模块,由递增的地址获得正弦波值输出,输出的8位正弦波数据经延时模块位正弦波数据经延时模块Delay后送往后送往Product乘法模块,与乘法模块,与DATAIN的的数据相乘生成正弦波调制的数字信号,由数据相乘生成正弦波调制的数字信号,由Output输出。输出。Output输出的数输出的数据送往据送往D/A即可获得正弦调制信号。即可获得正弦调制信号。 正弦信号发生器原理图正弦信号发生器原理图5.3.2 建立建立Matlab设计模型设计模型 利用利用Matlab建立建立DSP设计模型是基于设计模型是基于Matlab/DSP Builder的的DSP模块设计的主要过程。模块设计的主要

47、过程。1. 运行运行Matlab 启动后的启动后的Matlab软件界面面中有三个窗口,分别是命令窗口软件界面面中有三个窗口,分别是命令窗口(Command Windows)、工作区()、工作区(Workspace)、命令历史)、命令历史(Command History)。在命令窗口中,可以键入命令,同时得到响)。在命令窗口中,可以键入命令,同时得到响应信息、出错警告和提示等。应信息、出错警告和提示等。Matlab软件界面软件界面工作区工作区命令历史命令历史命令窗口命令窗口2. 新建一个模型文件新建一个模型文件 在在Matlab软件界面执行软件界面执行“File”菜单的菜单的“New”,在弹出,

48、在弹出的子菜单中选择的子菜单中选择“model”方式,弹出建立方式,弹出建立MATLAB设计模型设计模型的编辑窗口,设计电路的模型在此编辑窗口中完成编辑、分的编辑窗口,设计电路的模型在此编辑窗口中完成编辑、分析、仿真控制和生成设计文件。析、仿真控制和生成设计文件。 建立建立MATLAB设计模型的编辑窗口(右)和设计模型的编辑窗口(右)和Simulink库管理器窗口(左)库管理器窗口(左)SignalCompilder组件图标组件图标3. 放置放置SignalCompiler图标图标 用鼠标左键点击用鼠标左键点击Library browser窗口左侧的库内树形窗口左侧的库内树形列表中的列表中的A

49、ltera DSP Builder条,展开条,展开DSP Builder库,再点库,再点击击AltLab项展开项展开AltLab库,用鼠标选中库管理器右侧的库,用鼠标选中库管理器右侧的SignalCompiler组件图标,按住鼠标左键将组件图标,按住鼠标左键将SignalCompiler图标拖动到新模型窗口中。图标拖动到新模型窗口中。SignalCompiler组件图标是一个组件图标是一个控制符号,用鼠标左键双击它时,可以启动软件对编辑窗口控制符号,用鼠标左键双击它时,可以启动软件对编辑窗口中的设计模型(电路)进行分析,并引导进入下一步的编译、中的设计模型(电路)进行分析,并引导进入下一步的编

50、译、适配和生成适配和生成HDL代码文件操作。代码文件操作。 4. 放置放置Increment Decrement模块模块 用鼠标将用鼠标将Altera DSP Builder中的中的Arithmetic库展开,库展开,把库中的把库中的Increment Decrement模块(图标)拖放到新建模模块(图标)拖放到新建模型编辑窗口中。型编辑窗口中。Increment Decrement是阶梯信号发生器模是阶梯信号发生器模块,用鼠标左键点击块,用鼠标左键点击Increment Decrement模块下面的文字模块下面的文字“Increment Decrement”,就可以修改模块名字。用此方法,就

51、可以修改模块名字。用此方法将模块名其修改为将模块名其修改为“IncCounter”。 IncCounter模块图标及其参数设置对话框模块图标及其参数设置对话框5. 放置放置SinLUT(正弦查找表)模块(正弦查找表)模块 用鼠标将用鼠标将Altera DSP Builder中的中的Gate & Control库展开,将库中的库展开,将库中的LUT模块拖放到新建模型编辑窗口,将模块的名字修改成模块拖放到新建模型编辑窗口,将模块的名字修改成“SinLUT”。用。用鼠标双击鼠标双击SinLUT模块,弹出模块,弹出inLUT模块参数设置对话框。在此对话框中,模块参数设置对话框。在此对话框中,把

52、把Bus Type(总线宽度)设置为(总线宽度)设置为“Unsigned Integer”(无符号整数);(无符号整数);把把Outputnumber of bits(输出位宽)设置为(输出位宽)设置为“8”;把;把LUT Address Width(查找表地址线位宽)设置为(查找表地址线位宽)设置为“6”。SinLUT模块图标及其参数设置对话框模块图标及其参数设置对话框6. 放置放置Delay模块模块 用鼠标将用鼠标将Altera DSP Builder中的中的Storage库展开,将库库展开,将库中的中的Delay模块拖放到新建模型编辑窗口。模块拖放到新建模型编辑窗口。Delay是一个延时

53、是一个延时环节,用鼠标双击环节,用鼠标双击Delay模块,弹出模块,弹出Delay模块参数设置对话模块参数设置对话框。在框。在Delay模块参数设置对话框中,参数模块参数设置对话框中,参数Depth是设置信号是设置信号延时的深度。当延时的深度。当Depth为为1时,延时传输函数为时,延时传输函数为1/z1,表示信,表示信号传输延时号传输延时1个时钟周期;当个时钟周期;当Depth为为n时,延时传输函数为时,延时传输函数为1/zn,表示信号传输延时,表示信号传输延时n个时钟周期。个时钟周期。Delay模块图标及其参数设置对话框模块图标及其参数设置对话框7. 放置数据输入端口放置数据输入端口DAT

54、AIN模块模块 用鼠标将用鼠标将Altera DSP Builder中的中的IO & Bus库展开,将库库展开,将库中的中的Input模块拖放到新建模型编辑窗口,修改模块拖放到新建模型编辑窗口,修改Input模块的名模块的名字为字为DATAIN。鼠标双击。鼠标双击DATAIN模块,弹出的模块,弹出的DATAIN模块参模块参数设置对话框。在参数设置对话框中,把数设置对话框。在参数设置对话框中,把Bus Type设置为设置为“Unsigned Integer”(无符号整数),把(无符号整数),把number of bits.设置为设置为“1”,表示该输入模块是,表示该输入模块是1位无符号数

55、据输入。该模块位无符号数据输入。该模块在生成在生成HDL代码文件时,是一个名为代码文件时,是一个名为DATAIN,宽度为,宽度为1位的输位的输入端口。入端口。DATAIN模块图标及其参数设置对话框模块图标及其参数设置对话框8. 放置乘法器放置乘法器Product模块模块 用鼠标将用鼠标将Altera DSP Builder中的中的Arithmetic库展开,将库中的库展开,将库中的Product模块拖放到新建模型编辑窗口。模块拖放到新建模型编辑窗口。Product有两个输入,一个是经有两个输入,一个是经过一个过一个Delay的的SinLUT查表输出,另一个是外部查表输出,另一个是外部1位端口位

56、端口DATAIN送来的送来的数据,用数据,用DATAIN对对SinLUT查找表输出的控制,产生正弦调制输出。用查找表输出的控制,产生正弦调制输出。用鼠标双击鼠标双击Product模块,弹出模块,弹出Product模块参数设置对话框,在模块参数设置对话框,在Product模块参数设置对话框中,模块参数设置对话框中,Pipeline参数是设置参数是设置Product模块使用的流水线模块使用的流水线数,即控制数,即控制Product的乘积延时几个脉冲周期后出现。的乘积延时几个脉冲周期后出现。Product模块图标及其参数设置对话框模块图标及其参数设置对话框9. 放置输出端口放置输出端口Output模

57、块模块 用鼠标将用鼠标将Altera DSP Builder中的中的IO & Bus库展开,将库中的库展开,将库中的Output模块拖放到新建模型编辑窗口。模块拖放到新建模型编辑窗口。Output模块的图标如图模块的图标如图5.56所示,所示,用鼠标左键双击用鼠标左键双击Output模块图标,弹出模块图标,弹出Output模块参数设置对话框。在模块参数设置对话框。在参数设置对话框中,把参数设置对话框中,把Bus Type设置为设置为“Unsigned Integer”(无符号(无符号整数),把整数),把number of bits.设置为设置为“8”,表示该输出模块是,表示该输出模块是

58、8位无符位无符号数据输出。该模块在生成号数据输出。该模块在生成HDL代码文件时,是一个名为代码文件时,是一个名为Output,宽度,宽度为为8位输出端口。位输出端口。 Output模块图标及其参数设置对话框模块图标及其参数设置对话框5.3.3 Matlab模型仿真模型仿真1. 加入仿真激励模块加入仿真激励模块 在在Simulink管理器中,用鼠标将管理器中,用鼠标将Simulink的的Sources库库展开,将库中的展开,将库中的Random Number模块拖放到新建模型编辑模块拖放到新建模型编辑窗口,用鼠标双击窗口,用鼠标双击Random Number 模块图标,弹出模块图标,弹出Rand

59、om Number模块参数设置对话框。模块参数设置对话框。 Random Number模块图标及其参数设置对话框模块图标及其参数设置对话框2. 加入波形观察模块加入波形观察模块 用鼠标将用鼠标将Simulink的的Sinks库展开,将库中的库展开,将库中的Scope(示波器)模块拖放到新建模型编辑窗口,用鼠标双击(示波器)模块拖放到新建模型编辑窗口,用鼠标双击Scope(示波器)模块图标,弹出(示波器)模块图标,弹出Scope窗口。用鼠标单击窗口。用鼠标单击Scope窗口工具栏上的窗口工具栏上的“Parameters”(参数设置)按钮(参数设置)按钮(左起第二个工具按钮),弹出(左起第二个工具

60、按钮),弹出Scope模块参数设置对话框。模块参数设置对话框。Scope模块图标(中)、模块图标(中)、Scope窗口(左)和窗口(左)和Genera参数参数设置窗口(右)设置窗口(右)3. 设置仿真参数设置仿真参数 在新建模型编辑窗口中,执行在新建模型编辑窗口中,执行“Simulation”菜单的菜单的“Simulation Parameters”命令,弹出命令,弹出Simulation Parameters(仿真参数)设置对话框,其中(仿真参数)设置对话框,其中“Start time”(开始时间)设置为(开始时间)设置为“0.0”,“Stop Time”(结束时间)设(结束时间)设定为定为500,其他设置按照默

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论