《基于FPGA的现代数字电路设计》-第4章_第1页
《基于FPGA的现代数字电路设计》-第4章_第2页
《基于FPGA的现代数字电路设计》-第4章_第3页
《基于FPGA的现代数字电路设计》-第4章_第4页
《基于FPGA的现代数字电路设计》-第4章_第5页
已阅读5页,还剩114页未读 继续免费阅读

下载本文档

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

文档简介

4.1模块编辑及设计流程4.1.1原理图输入文件的建立在这里我们设计一个非常简单的二输入的或门电路,它只包含一个或门、两个输入引脚和一个输出引脚。首先创建一个原理图形式的输入文件。步骤如下:1.打开模块编辑器单击“File”|“New”命令,弹出“New”对话框,如图4.1所示。选择文件类型“BlockDiagram/SchematicFile”选项,打开模块编辑器,如图4.2所示。使用该编辑器可以编辑图标模块,也可以编辑原理图。下一页返回4.1模块编辑及设计流程

AlteraQuartusⅡ提供了大量的常用的基本单元和宏功能模块,在模块编辑器中可以直接调用它们。在模块编辑器要插入元件的地方单击鼠标左键,会出现小黑点,称为插入点。然后,单击鼠标左键,弹出“Symbol”对话框,如图4.3所示。注意:在工具栏中单击图标,也可以打开如图4.3所示的对话框。在“Symbol”对话框左边的元件库“Libraries”中包含了AlteraQuartusⅡ提供的元件。它们存放在C:\altera\quartus60\libraries\的子目录下,分为基本逻辑函数(primitives)、宏模块函数(megafunctions)、其他函数(others)三个大类。上一页下一页返回4.1模块编辑及设计流程

2.添加元件符号打开“Symbol”对话框左边的元件库“Libraries”,选择primitives|logic|or2元件,弹出“Symbol”对话框,如图4.4所示。单击“OK”按钮,鼠标变为“+”和选中的符号,将目标元件移动到合适位置单击左键,编辑器窗口就出现了该元件,如图4.5所示。同理,在元件库“Libraries”中,选择primitives|pin|input元件,放两个输入引脚到编辑器窗口;选择primitives|pin|output元件,放一个输出引脚到编辑器窗口。上一页下一页返回4.1模块编辑及设计流程

3.连接各元件并给引脚命名放置好元件后,接下来的就要连接各个功能模块,通过导线将模块间的对应管脚直接连接起来。其具体做法如下:将鼠标移到其中一个端口,待鼠标变为“+”形状后,一直按住鼠标左键,将鼠标拖到到待连接的另一个端口上,放开左键,则一条连线画好了。如果需要删除一根线,单击这根连线并按Del键。这里分别将两个输入引脚连接到或门的两个输入端,将输出引脚连接到或门的输出端。连线完成后可以给输入/输出引脚命名。在引线端子的PIN_NAME处双击鼠标,弹出“PinProperties”对话框,在“Pinname”栏中填入名字。这里三个引脚分别命名为A、B、C。上一页下一页返回4.1模块编辑及设计流程

引脚名称可以使用26个大写英文字母和26个小写英文字母,以及10个阿拉伯数字,或是一些特殊符号“/”“_”来命名,如AB,/5C,a_b都是合法的引脚名。引脚名称不能超过32个字符;大小写表示相同的含义;不能以阿拉伯数字开头;在同一个设计文件中引脚名称不能重名。总线(Bus)在图形编辑窗口中显示的是一条粗线,一条总线可代表2~256个节点的组合,即可以同时传递多路信号。总线的命名必须在名称后面加上[a…b],表示一条总线内所含的节点编号,其中a和b必须是整数,但谁大谁小并无原则性的规定。例如,A[3…0]、B[0…15]、C[8…15]都是合法的总线名称。上一页下一页返回4.1模块编辑及设计流程

4.保存文件最后如需要保存文件,选择“File”菜单中的“SaveAs”项或单击保存按钮,弹出“SaveAs”对话框,如图4.8所示。在“文件名”对话框内输入设计文件名“my_or2”,然后单击“保存”按钮,即可保存文件。原理图和图表模块设计的文件名称与引脚命名规则相同,长度必须在32个字符以内,不包含扩展名“*.bdf”。上一页返回下一页4.1模块编辑及设计流程4.1.2图表模块输入图表模块输入是自顶向下的设计方法。首先在顶层文件中画出图形块或器件符号,然后在图形块上设置端口和参数信息,用信号线、总线和管道把各个组件连接起来。下面以3−8译码器为例介绍图表模块输入法。打开模块编辑器,单击工具栏上的图表模块工具,将该模块拖到右边的空白处,用鼠标在需作图的地方画矩形框,在所画的矩形框范围就会出现图表模块,如图4.9所示。上一页下一页返回4.1模块编辑及设计流程在图表模块上单击鼠标右键,弹出如图4.10(a)所示的菜单,选择“BlockProperties”选项,弹出“BlockProperties”对话框,如图4.10(b)所示。“BlockProperties”对话框有四个属性标签页。在“General”标签页中的“Name”栏设置模块名称为“decode3_8”;在“I/Os”标签页设置译码器的端口信息,在“Name”栏中输入端口名称“A”,“Type”栏输入“INPUT”,设定为输入端口。单击“Add”按钮,即可将输入端口A添加到模块属性设置对话框下面的“ExistingBlockI/Os”列表中,如图4.11(a)所示。上一页下一页返回4.1模块编辑及设计流程4.1.3原理图设计流程本节以上节建立的二输入或门输入文件为顶层文件,通过全部流程,实现设计。详细介绍基于AlteraQuartusⅡ软件的原理图设计方法,具体实现步骤如下:1.建立工程(1)单击“File”|“NewProjectWizard”选项,弹出工程向导的基本信息对话框,如图4.21所示,在此对话框中,第一栏填入新工程的文件夹名,这里单击按钮,弹出“SelectDirectory”对话框,找到上节建立的输入文件(my_or2.bdf),单击“打开”按钮,在第一栏就出现新工程的文件夹名,第二栏出现工程名,第三栏出现顶层实体名。注意工程名要和顶层实体名相同。上一页下一页返回4.1模块编辑及设计流程(2)选择需要加入的文件和库。单击图4.21所示对话框中的“Next”按钮进行下一步操作。此时如果文件夹不存在,系统会自动提示用户是否创建该文件夹,选择“Yes”按钮后会自动创建。已经创建就弹出添加文件对话框,如图4.22所示。如果此设计中还需要其他设计文件,可以单击“Filename”栏右边的按钮,选择要添加的文件,单击“AddAll”按钮就将该文件加入到上面的工程中。或者直接单击“AddAll”按钮加入在该目录下的所有文件,如果需要用户自定义的库,单击“UserLibraries”按钮进行选择。选中已加入的文件,单击“Remove”按钮可以将其移除。这里不需要添加任何其他文件,直接单击“Next”按钮。上一页下一页返回4.1模块编辑及设计流程(3)选择目标器件。单击图4.22所示对话框中的“Next”按钮后,弹出器件类型设置对话框,如图4.23所示。在“Targetdevice”选项中选择“AutodeviceselectedbytheFitter”选项,系统会自动给所设计的文件分配目标器件。选择“Specificdeviceselectedin’Availabledevices’list”选项,用户可以根据实验条件指定目标器件。在右侧的选项中,可以选择目标器件的封装类型(Package)、引脚数量(Pincount)和速度等级(Speedgrade),以便快速查找用户所需的器件范围。上一页下一页返回4.1模块编辑及设计流程(4)选择第三方EDA工具。单击图4.23中的“Next”按钮,弹出EDA工具设置对话框,如图4.24所示。在此选择使用的第三方EDA工具。本例中不需要第三方EDA工具,直接单击“Next”按钮。(5)结束工程设置。最后弹出工程信息概要,如图4.25所示。从对话框中可以看到建立的工程名称、选择的器件等信息,如确认无误,单击“Finish”按钮,创建新工程。2.编译工程单击工具栏上的按钮,对工程文件进行编译,这时AlteraQuartusⅡ界面不断变化,编译完成时的界面如图4.26所示,这是编译成功的情况。上一页下一页返回4.1模块编辑及设计流程该界面显示了编译时的各种信息。如果编译不成功,在信息显示窗口给出错误和警告,可根据提示错误和警告进行相应的修改后重新编译,直到没有错误提示为止。用户单击“确定”按钮,生成的编译结果界面如图4.27所示。3.建立仿真矢量波形文件1)创建文件在工具栏中单击“File”|“New”命令,弹出“New”对话框,如图4.28所示。上一页下一页返回4.1模块编辑及设计流程在出现的“New”对话框中选择“OtherFiles”页面,在该页面选择“VectorWaveformFile”选项,单击“OK”按钮,弹出矢量波形文件编辑窗口,如图4.29所示。2)添加引脚或节点双击图4.29中“Name”下方空白处,弹出“InsertNodeorBus”对话框,如图4.30所示。单击“NodeFinder”按钮,弹出“NodeFinder”对话框,如图4.31所示。单击“Filter”栏的下拉菜单选择“Pins:all”选项后,单击“List”按钮,弹出设计文件引脚列表窗口,如图4.32所示。在“NodeFound”栏中列出了设计文件的列表。上一页下一页返回4.1模块编辑及设计流程在列表中双击需要的引脚,选中的信号将出现在右边的一侧,或者单击按钮,也可以如此,如图4.33所示。单击“OK”按钮,返回“InsertNodeorBus”对话框,如图4.34所示。单击“OK”按钮后,选中的输入/输出引脚就出现在波形文件编辑窗口的“Name”栏下,引脚添加成功,如图4.35所示。3)编辑输入波形并保存波形观察窗的左边是输入引脚,在同行的右边可以编辑波形。使用时,先选中左边的输入引脚名,再在右边用鼠标在输入波形上拖一条需要改变的黑色区域,然后单击左边工具栏的有关按钮,即可进行低电平、高电平、任意、高阻态、反相和总线数据等各种设置。上一页下一页返回4.1模块编辑及设计流程若是时钟信号,用鼠标单击时钟信号的出现时钟信号设置对话框,单击“OK”按钮即可设置时钟信号。这时时钟信号的波形区域全部变成黑色,按集成环境窗左边上的时钟按钮,根据要求将各输入信号A、B的波形设置成如图4.36所示。单击可以保存文件,文件取名为“my_or_2.vwf”上一页下一页返回4.1模块编辑及设计流程4.1.4波形仿真1.功能仿真在AlteraQuartusⅡ的工具栏中选择“Processing”|“GenerateFunctional”|…选项,生成功能仿真网表,然后选择“Assignments”|“Setting”选项,弹出设置仿真类型对话框,单击“SimulatorSettings”选项,在“simulationmode”中选择“Functional”命令,如图4.37所示。然后单击按钮进行功能仿真,检查设计的逻辑错误。仿真结果如图4.38所示。上一页下一页返回4.1模块编辑及设计流程2.时序仿真选择AlteraQuartusⅡ的工具栏中“Assignments”|“Setting”|“SimulatorSettings”|“simulationmode”选项,选择“Timing”命令,然后单击工具栏的按钮,开始时序仿真,验证时序是否符合要求,仿真过程在后台进行,计算机能够同时做其他的工作。时序仿真结果如图4.39所示。上一页下一页返回4.1模块编辑及设计流程4.1.5引脚分配引脚分配是为了对所设计的过程进行硬件测试,将输入/输出引脚信号锁定在目标器件的引脚上。单击工具栏“Assignments”|“Pins”选项,弹出选择要分配的分配引脚的对话框,如图4.40所示。在下方的列表中列出了本设计的所有输入/输出引脚名。在图4.40中,双击输入端A对应的“Location”选项,弹出引脚列表,从中选择合适的引脚,这时输入A的引脚分配完毕,同理完成其他所有引脚的指定,结果如图4.41所示。上一页下一页返回4.1模块编辑及设计流程4.1.6下载验证下载验证是将所做设计生成的文件通过计算机下载到实验电路板上,用来验证本次设计是否符合要求的一道流程,其步骤如下:1.编译分配完引脚后必须经过再次编译,这样才能存储引脚锁定的信息,单击编译按钮执行再次编译。如果编译出现问题,可以对器件重新设置。2.配置下载电缆单击“Tools”|“Programmer”命令,弹出未经配置的下载窗口,如图4.42所示。上一页下一页返回4.1模块编辑及设计流程单击“HardwareSetup”按钮,弹出“HardwareSetup”对话框,如图4.43所示。单击“AddHardware”按钮,弹出下载电缆选择对话框,如图4.44所示。在“HardwareType”一栏中选择“ByteBlasterMVorByteBlasterⅡ”选项,单击“OK”按钮,完成设置。如果下载电缆一直保持不变,不需要每次都设置。3.JTAG模式下载JTAG模式是AlteraQuartusⅡ软件默认的下载模式,其相应的下载文件为.sof格式,勾选下载文件右侧的小方框,如图4.45所示。上一页下一页返回4.1模块编辑及设计流程将下载电缆连接好后,单击“Start”按钮,计算机就开始下载编程文件。下载完后结果如图4.46所示。4.ActiveSerial模式ActiveSerial模式的下载文件为“.pof”格式,在“Mode”一栏中选择“ActiveSerial”选项,弹出提示框,单击“是”按钮,然后在“AddFile”里添加选择文件“or_2.pof”,勾选下载文件右侧的小方框,将下载电缆连接好后,单击“Start”按钮,开始下载编程文件。下载完后结果如图4.47所示上一页下一页返回4.1模块编辑及设计流程4.1.7QuartusⅡ的几个常用功能1.使用RTLViewer分析综合结果单击“Tools”|“NetlistViewers”|“RTLViewer”命令,弹出“RTLViewer”对话框,如图4.48所示,可以看到综合后的RTL结构图,发现该图与原理图相同。2.使用TechnologyMapViewer分析综合结果单击“Tools”|“NetlistViewers”|“TechnologyMapViewer”命令,弹出“TechnologyMapViewer”对话框,如图4.49所示。上一页下一页返回4.1模块编辑及设计流程3.创建图元符号单击“File”|“Create/Update”|“CreateSymbolFilesforCurrentFile”命令,生成“.bsf”格式的图元符号文件,如图4.50所示。从图4.50中可以看出生成的是只有输入/输出的元件。在原理图编辑窗口单击按钮,在弹出的“Symbol”对话框的“Project”栏里出现已经生成的元件“or_2”,在以后的原理图设计中可以直接调用。上一页返回4.2文本编辑及设计流程4.2.1建立文本文件在工具栏中,单击“File”|“New”命令或使用快捷键Ctrl+N,弹出“New”对话框,如图4.51所示,按图4.51所示选择“VHDLFile”选项。单击“OK”按钮,弹出文本文件编辑框,如图4.52所示,在编辑框内可以输入VHDL程序。在编辑框内可以输入VHDL代码,输入代码后的文本文件编辑框,如图4.53所示。为了提高代码输入的效率,AlteraQuartusⅡ软件提供了一个输入模板,在模板上给出了程序的框架,在框架内,需要填入的自己的代码。单击“Edit”|“InsertTemplate”…命令,弹出“InsertTemplate”对话框,如图4.54所示。下一页返回4.2文本编辑及设计流程

在“Templatesection”下面的窗口中可以选择需要插入的文本类型。如单击“ArchitectureBody”选项,在下面的“Preview”窗口中就出现具体的内容,单击“OK”按钮,“Preview”窗口中的内容就会出现在文本文件编辑框中。这样就可在编辑框中的模板内容里删除不需要的内容,添加自己的程序。以此类推,可以删除其他模板内容,以减轻编程中的负担。在文本编辑完成后保存文件。单击保存文件或选择“File”“|SaveAs”命令,弹出“SaveAs”对话框。在文件名对话框内输入设计文件名“add4.vhd”,然后选择“OK”即可保存文件,这样文本输入文件就建立完成。上一页下一页返回4.2文本编辑及设计流程

4.2.2文本设计流程——建立新工程文本设计与模块设计的流程大致相同,本节就以上节的四位加法器为例,详细介绍AlteraQuartusⅡ的文本设计方法,具体实现步骤如下:单击“File”|“NewProjectWizard”命令,在弹出的对话框中分别填入新工程的文件夹名、工程名、顶层实体名,如图4.57所示。注意:工程名要和顶层实体名相同。本例中只有一个设计文件,那么它就是顶层文件,它的工程名就是文件的实体名。单击“Next”按钮,弹出添加文件对话框,添加设计文件,然后单击“Next”按钮,进入目标器件选择窗口,设置完器件后,单击“Next”按钮,进入EDA工具选择窗口,这里不选择。单击“Finish”按钮,弹出完成工程配置窗口,如图4.58所示。上一页下一页返回4.2文本编辑及设计流程

4.2.3文本设计流程——编译工程单击工具栏上的按钮,对文件进行编译,根据提示错误警告进行相应的修改后重新编译,直到没有错误提示为止,编译成功后,其结果如图4.59所示。4.2.4文本设计流程——建立矢量波形文件在工具栏中单击“File”|“New”命令,弹出“New”对话框,如图4.60所示。在出现的“New”对话框中选择“WaveformEditorFile”选项,单击“OK”按钮后波形文件建立成功,如图4.61所示。上一页下一页返回4.2文本编辑及设计流程

下面添加引脚或节点。双击“Name”下方空白处,在弹出的对话框中单击“NodeFinder”按钮,选择“Filter”栏的“Pins:all”选项后单击“List”按钮,双击需要的引脚,选中的信号将出现在波形编辑器中,如图4.62所示。单击“OK”按钮,弹出查找节点后的“InsertNodeorBus”对话框,如图4.63所示。单击“OK”按钮后,引脚添加成功,如图4.64所示。下面编辑输入信号并保存文件。单击左边工具栏的有关按钮对输入波形按需要设定,本例波形按图4.65设定。单击保存文件,文件取名为“add4.vwf”,如图4.66所示。上一页下一页返回4.2文本编辑及设计流程

4.2.5文本设计流程——仿真波形(1)在AlteraQuartusⅡ的工具栏中选择“Processing”|“GenerateFunctional”….选项,生成功能仿真网表,然后选择“Assignments”|“Setting”选项,弹出如图4.67所示对话框。单击“SimulatorSettings”选项,在“simulationmode”中选择“Functional”选项,单击钮进行功能仿真,检查设计的逻辑错误。上一页下一页返回4.2文本编辑及设计流程

(2)选择AlteraQuartusⅡ工具栏中“Assignments”|“Setting”选项,在弹出的对话框中选择“SimulatorSettings”页面中的“simulationmode”选项,选择“Timing”选项,单击工具栏的按钮,开始时序仿真,验证时序是否符合要求。4.2.6文本设计流程——引脚分配及下载验证对本项目分配引脚,结果如图4.70所示,并可以下载到实验板上验证其功能。上一页返回4.3混合设计4.3.1建立计数器文件需要建立两个VHDL的文本文件。cnt4.vhd文件描述十进制计数器,seg_7.vhd文件描述七段译码显示电路。cnt4.vhd程序的功能是在时钟的驱动下循环产生0~9的二进制数,其代码如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYCNT4IS下一页返回4.3混合设计

PORT(CLK:INSTD_LOGIC;EN:INSTD_LOGIC;RST:INSTD_LOGIC;Q:OUTSTD_LOGIC_VECTOR(3DOWNTO0));ENDCNT4;ARCHITECTUREARTOFCNT4ISSIGNALCNT:STD_LOGIC_VECTOR(3DOWNTO0);BEGINPROCESS(CLK,EN,RST)上一页下一页返回4.3混合设计BEGINIFRST='1'THENCNT<="0000";ELSIFCLK'EVENTANDCLK='1'THENIFEN='1'THENIFCNT<9THENCNT<=CNT+1;ELSECNT<="0000";ENDIF;ENDIF;ENDIF;上一页下一页返回4.3混合设计

ENDPROCESS;Q<=CNT;ENDART;该程序经编译仿真正确后,建立图元符号。单击“File”|“Create”/“Update”|“SymbolFilesforCurrentFile”命令,生成“.bsf”格式的图元文件,以备后面使用。生成的十进制计数器图元符号如图4.71所示。上一页下一页返回4.3混合设计

4.3.2建立七段译码显示电路文件SEG_7程序设计的电路的功能是将计数器输出的二进制数转化为数码管的驱动信号。其代码如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYSEG_7ISPORT(SEG:INSTD_LOGIC_VECTOR(3DOWNTO0);//四位二进制码输入上一页下一页返回4.3混合设计

Q3:OUTSTD_LOGIC_VECTOR(6DOWNTO0));//输出LED七段码ENDSEG_7;ARCHITECTUREARTOFSEG_7ISBEGINPROCESS(SEG)BEGINCASESEGIS上一页下一页返回4.3混合设计

WHEN"0000"=>Q3<="0000001";--0WHEN"0001"=>Q3<="1001111";--1WHEN"0010"=>Q3<="0010010";--2WHEN"0011"=>Q3<="0000110";--3WHEN"0100"=>Q3<="1001100";--4WHEN"0101"=>Q3<="0100100";--5WHEN"0110"=>Q3<="0100000";--6WHEN"0111"=>Q3<="0001111";--7上一页下一页返回4.3混合设计

WHEN"1000"=>Q3<="0000000";--8WHEN"1001"=>Q3<="0000100";--9WHENOTHERS=>Q3<="1111111";ENDCASE;ENDPROCESS;ENDART;如上面一样,该程序经编译仿真正确后,建立图元符号,以备后面使用。生成的十进制计数器图元符号如图4.72所示。上一页下一页返回4.3混合设计

4.3.3设计流程混合设计的流程与前面的设计流程一样,所不同的只是顶层文件的设计。具体步骤如下:1.建立新工程创建一个新工程,其顶层文件是一个“.bdf”格式的文件。这里取工程名为“cnt4_top”。2.建立原理图文件并添加图元符号建立名为“cnt4_top”的原理图文件,双击鼠标后在弹出对话框中的“Project”栏中选择生成的图元符号。上一页下一页返回4.3混合设计

将两个图元符号添加到原理图编辑器中,并放置三个输入和一个输出引脚。连接各个模块并命名,完成各个线路的连接,结果如图4.76所示,并且保存该图。3.编译工程单击工具栏的按钮,将所设计的工程项目进行编译,根据提示,如有错误,进行相应的修改并重新编译,直到没有错误提示编译成功为止,如图4.77所示。上一页下一页返回4.3混合设计

4.仿真首先创建波形矢量文件,然后分别进行功能仿真和时序仿真。功能仿真结果如图4.78所示。时序仿真结果如图4.79所示。5.引脚分配分配引脚结果,如图4.80所示,并下载到实验板上验证其功能,具体步骤与4.1节原理图编译相同。上一页返回4.4使用SignalTapⅡ的实时测试随着逻辑设计越来越复杂,仅仅依赖软件的仿真来测试设计的硬件功能已经远远不够,而不断需要重复进行的硬件系统测试也变得更加困难。为了解决这些问题,Altera提供了一种将高效的硬件测试手段和传统的系统测试方法相结合的工具,这就是嵌入式逻辑分析仪(SignalTapⅡ)。它可以随设计文件一并下载到目标芯片中,用以捕捉目标芯片内部信号节点处的信息,而且不影响原硬件系统的正常工作。在实际监测中,SignalTapⅡ将测得的样本信号暂存于目标器件的嵌入式RAM中,然后通过器件的JTAG端口将采得的信息传出,送入计算机进行显示和分析。下一页返回4.4使用SignalTapⅡ的实时测试

嵌入式逻辑分析仪SignalTapⅡ可以对设计中所有层次的模块的信号节点进行测试,可以使用多时钟驱动,而且还能通过设置以确定前后触发捕捉信号信息的比例。本节以一个扫描电路为例介绍SignalTapⅡ的使用方法,流程如下:4.4.1打开SignalTapⅡ的编辑窗口将电脑和开发板连接起来,电源开启,保证能实现下载功能。用QuartusⅡ软件打开扫描电路的工程文件。扫描电路所用的代码如下:上一页下一页返回4.4使用SignalTapⅡ的实时测试

如下上一页下一页返回4.4使用SignalTapⅡ的实时测试

如下上一页下一页返回4.4使用SignalTapⅡ的实时测试

endendmodule4.4.2文件存盘在SignalTapⅡ界面中单击“File”|“Save”命令,弹出如图4.90所示对话框,单击“保存”按钮,将出现一个提示页面“DoyouwanttoenableSignalTapⅡ…”。单击“是”按钮,表示同意再次编译SignalTapⅡ文件与工程ledwater捆绑在一起综合/适配,以便一同被下载到FPGA芯片中去完成实时测试任务。单击“否”按钮,则必须自己去设置。上一页下一页返回4.4使用SignalTapⅡ的实时测试4.4.3文件存盘在SignalTapⅡ界面中单击“File”|“Save”命令,弹出如图4.90所示对话框,单击“保存”按钮,将出现一个提示页面“DoyouwanttoenableSignalTapⅡ…”,如图4.91所示。单击“是”按钮,表示同意再次编译SignalTapⅡ文件与工程ledwater捆绑在一起综合/适配,以便一同被下载到FPGA芯片中去完成实时测试任务。单击“否”按钮,则必须自己去设置。上一页下一页返回4.4使用SignalTapⅡ的实时测试

4.4.4编译回到QuartusⅡ界面,单击“Assignment”菜单选中“Settings”选项,单击“SignalTap148基于FPGA的现代数字电路设计ⅡLogicAnalyzer”选项,出现“SignalTapⅡLogicAnalyzer”对话框,这说明测试文件已经添加到工程中了。应该特别注意的是当利用SignalTapⅡ将芯片中的信号全部测试结束后,在构成产品前,必须将SignalTapⅡ从芯片中除去,方法是在图4.92所示窗口中关闭“EnableSignalTapⅡLogicAnalyzer”选项,重新编译一次。上一页下一页返回4.4使用SignalTapⅡ的实时测试

关闭上面界面,然后单击“编译”按钮,启动全程编译。接着打开实验开发系统的电源,连接JTAG口,设定通信模式。单击右上角的“Setup”按钮,选择硬件通信模:ByteBlasterMV或ByteBlasterⅡ。再单击下方的“Device”栏的“ScanChain”按钮,对实验板进行扫描。如果在栏中出现板上FPGA的型号名,表示系统JTAG通信情况正常,可以进行下载。上一页下一页返回4.4使用SignalTapⅡ的实时测试

4.4.4启动SignalTapⅡ进行采样分析编译结束后打开SignalTapⅡ的观察窗口,选择菜单栏“Tools”“|SignalTapⅡAnalyzer”命令,打开SignalTapⅡ的观察窗口。在SignalTap窗口,选择“Processing”|“RunAnalysis”或者单击图标。接着,单击SignalTapⅡ窗口中的“Data”标签页。这时,我们应该看到如图4.94所示的界面。注意到这时SignalTapⅡInstanceManager面板中状态“Status”中显示“Waitingfortrigger”,这是因为触发条件没有满足。上一页下一页返回4.4使用SignalTapⅡ的实时测试

4.4.5SignalTapⅡ的其他设置和控制方法以上实例仅设置了单一嵌入式测试模块,其采样时钟是clk。事实上可以设置多个嵌入式测试模块,可以使用此功能为器件中的每一个时钟域建立单独且唯一的逻辑分析测试模块,并在多个测试模块中应用不同的时钟和不同的设置。Instance管理器允许在多个测试模块上建立并执行SignalTapⅡ逻辑分析,可以使用它在SignalTapⅡ文件中建立、删除和重命名测试模块。Instance管理器显示当前SignalTapⅡ在文件中的所有测试模块、每个相关测试模块的当前状态以及相关实例中使用的逻辑元素和存储器的消耗量。上一页下一页返回4.4使用SignalTapⅡ的实时测试

测试模块管理器协助检查每个逻辑分析仪在器件上要求的资源使用量。可以选择多个逻辑分析仪来同时启动多个逻辑分析仪,此外,SignalTapⅡ采样触发器采用逻辑级别或逻辑边缘方面的逻辑事件模式,支持多级触发、多个触发位置、多个段以及外部触发事件。SignalTapⅡ的触发信号也可单独设置或编辑,其触发控制逻辑也可根据实际需要由用户自行编辑。上一页返回下一页4.4使用SignalTapⅡ的实时测试

4.4.6SignalTapⅡ的其他设置和控制方法以上实例仅设置了单一嵌入式测试模块,其采样时钟是clk。事实上可以设置多个嵌入式测试模块,可以使用此功能为器件中的每一个时钟域建立单独且唯一的逻辑分析测试模块,并在多个测试模块中应用不同的时钟和不同的设置。Instance管理器允许在多个测试模块上建立并执行SignalTapⅡ逻辑分析,可以使用它在SignalTapⅡ文件中建立、删除和重命名测试模块。Instance管理器显示当前SignalTapⅡ在文件中的所有测试模块、每个相关测试模块的当前状态以

温馨提示

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

最新文档

评论

0/150

提交评论