第二篇MAX+plusⅡ设计向导.doc_第1页
第二篇MAX+plusⅡ设计向导.doc_第2页
第二篇MAX+plusⅡ设计向导.doc_第3页
第二篇MAX+plusⅡ设计向导.doc_第4页
第二篇MAX+plusⅡ设计向导.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

4.2 MAX+plus设计向导MAX+plus常用两种输入方式:一种是图形输入方式、一种是文本输入方式。两种输入方式的设计步骤相似,因此把文本输入方式放到实训中讲解。为使原理图输入方式的介绍言简意明,以设计一个十进制递增计数器为例学习操作。4.2.1 项目建立1建立设计文件夹在MAX+plus中,设计是按照项目来管理的,每个项目中可包含一个或多个设计文件。其中只有一个是顶层文件,顶层文件的名字必须与项目名相同,编译器是对项目中的顶层文件进行编译的。项目还管理着多个在设计过程中产生的中间文件,所有中间文件的文件名都相同,仅扩展名不同。为了便于管理,最好为每个新的项目建立一个单独的文件夹保存。本例中,在d盘根目录下建立d:Example文件夹。该设计项目仅含一个设计文件,文件输入采用图形输入方式。2启动MAX+plus10.2 BASELINE单击“开始”“程序”MAX+plus10.2 BASELINE组MAX+plus10.2 BASELINE项,随即出现MAX+plus管理窗口,如前一节的图4-10所示。3建立项目单击标题栏的File菜单,从中选择ProjectName菜单,出现项目名称对话框。在 Directories 区域内,双击设计者为本次设计项目所建的目录(文件夹)。然后在Project Name的空白区,输入操作者拟定的项目名。项目名称的命名规则是:名称可由字母、数字和下划线组成。在本例中,文件夹为Example,项目名为Count,如图4-22所示。完成后,单击【OK】按钮,MAX+plus返回管理器窗口。图4-22 项目名称对话框4.2.2 编辑文件1建立图形输入文件单击FileNew选项,如图4-23所示。MAX+plus支持四种方式:Graphic Editor file是图形输入方式;Symbol Editor file方式可以编辑用户生成的符号文件;Text Editor file是文本输入方式,支持如VHDL、AHDL和Verilog_HDL硬件描述语言;Waveform Editor file是波形输入方式。图4-23 输入方式选择选择Graphic Editor File选项后,接受gdf的默认扩展名,单击【OK】按钮确认。进入图形编辑器的编辑环境,出现如图4-24所示的编辑窗口画面。图4-24 图形编辑窗口图4-24左侧是画图工具按钮,其功能如图4-25所示。其中皮筋拖动功能打开时,连线像皮筋一样可以伸缩。打开此功能移动图标时,可以判断接线的连接情况。文字工具缩小接点接/断皮筋拖动功能打开与窗口匹配画正交线选择工具皮筋拖动功能关闭放大画圆画直线画圆弧图4-25 画图工具按钮功能说明为了使电路图更清晰,可以给图形编辑器的图形编辑区设置网格线。它的作用是在编辑区显现清晰的位置坐标,从而使各个电路元件逻辑符号的布局定位容易。这些网格线不会出现在电路图内,也不会对电路的设计产生任何影响。设置网格线的方法是在标题栏中单击OptionsShow Guidelines选项,这时该项前面会出现一个对钩,表明当前处于显示网格线状态。如果要取消网格线,可再次作上述操作,把Show Guidelines选项前面的对钩去掉,窗口立即看不到网格线了。另外,还可以通过对单击OptionsGuideline Spacing菜单,弹出网格线间距的设置对话框,如图4-26所示,输入适当的数字并确认即设置网格线的疏密。图4-26 设置网格线对话框2调入元件符号及管脚用鼠标左键在图4-24所示图形编辑器中图形编辑区的任意位置上双击,即可弹出符号输入对话框,如图4-27所示。图4-27 元件库输入元件有两种方式:一种是在Symbol Name对话框中直接输入元件名称,如输入AND2(2个输入端的与门)等;一种是调用MAX+plus库文件中的元件,如输入7400(2个输入端的与非门)等。这两种方式都必须了解每个元件的名称、用法乃至特性,以便在设计中正确地使用。MAX+plus为实现不同的逻辑功能提供了库文件,每个库对应一个目录。这些库文件的功能及特点如表4-1所示。表4-1 库文件功能及特点库名内容用户库(不在max2lib路径下)用户自建的元器件、底层设计prim(基本库)基本逻辑器件,如各种门、触发器等mf(宏功能库)含有所有的74系列逻辑元件,如74161、7404等mega_lpm(可调参数库)包括功能复杂的高级功能模块、参数化模块,如可调模值的计数器、可设置方向的移位计数器等edif(和mf库的内容同类)与mf库的内容相同,但调用方式不同在Symbol Name中输入74161,单击【OK】按钮。然后在图形编辑区单击鼠标左键,即输入一个74161芯片。按照同样的方法依次输入NAND2、VCC、GND、INPUT和OUTPUT。如图4-28所示。图4-28 计数器所需元件如果要了解某一个元件的性质,可单击工具栏的按钮,再单击要了解的元件。例如想知道74161的用法,进行上述操作后,可见图4-29。图4-29 74161的用法3元件符号的复制和移动有的设计可能用到多个同种元件,简单的办法是输入一个元件后进行复制。方法十分简单:可单击准备复制的元件或用鼠标对该元件画矩形框(定位于某一点,按下鼠标左键并向元件对角方向拖动),元件的轮廓变成红色的粗实线,表示已经选中该元件,然后按住Ctrl键,对该元件拖动,即可拖出一个被复制的元件。元件需要移动时,可用鼠标拖动图形编辑区中的元件图形符号,元件就能随着鼠标的滑动而任意移动。左键释放,则图形元件定位。用这样的方法可以把元件或者图形符号摆放到适当的位置。若要同时移动多个元件,可以用鼠标左键拉出一个大的矩形框,把要移动的元件都包围起来。这样多个元件同时被选中,就可以一起被移动了。4连接各元件符号(电路连线)首先将各元件符号移动到合适的位置,以易于连线。将鼠标移至某一元件符号的外轮廓边缘的管脚处,鼠标箭头会自动变成十字形状。此时可以按住左键拖动,直至另一个需要连接的元件输入或输出管脚处,松开左键。于是,这两个元件管脚间就会出现红颜色的连线。红色表示它是“选中”的,可以移动、删除和复制。进行任何其他的鼠标操作都将使连线变成黑色(固化)。画折线时,可在转折处松开鼠标左键一下再按住,继续拖动即可。用上述方法,连接所有需要连接的元件和输入输出管脚。5元件命名(1)管脚名称:在图形编辑器中,输入、输出管脚是prim库中的特殊“元件”,它们的名字分别是input和output。所有的输入输出管脚在输入到编辑区之初,均被系统默认命名为PIN_NAME。双击某个管脚的PIN_NAME处,使其变为黑底白字显示,然后直接键入所定义的管脚名。管脚命名可采用英文字母、阿拉伯数字或是一些特殊符号,如“/”、“”、“-”等。例如。A1、b0、D/dl、3_ab、l2a等都是合法的名字。但是,要注意管脚名称所包括英文字母的大小写所代表的意义是相同的,也就是说abc与ABC代表的是同一个的管脚,在同一个设计文件中的管脚名称是绝对不能重名的。注意:管脚不能使用默认的名称,必须重新命名(2)节点名称:节点在图形编辑窗口中是一条细线,负责在不同的逻辑器件间传送信号,其名称的命名规则与管脚名称相同,限制也是一样的。例如,ABc、SIGN-b、Ql、123_a等都是可以接受的节点名称。(3)总线名称:总线在图形编辑窗口中是一条粗线。总线名称的命名规则与管脚和节点名称有很大的不同,必须要在名称的后面加上m.n,m和n都必须是整数,如Q3.0、A0.7等,表示一条总线内所含有的节点编号。一条总线代表很多节点的组合,可以同时传送多路信号,最少可代表两个节点的组合,最多可代表256个节点的组合,即总线编号最大是255.0或0.255。以同样方法修改所有的输入、输出管脚名,如图4-30所示。图4-30 十进制计数器逻辑图6保存单击Filesave菜单,以Count为文件名,以gdf为扩展名,保存当前文件。注意:文件名与项目名必须相同且在同一个文件夹下4.2.3 编译完成设计文件输入并存盘后,即可对其进行编译。编译的主要目的是查找电路中的连接错误或语法错误,生成网表文件。1选择器件单击AssignDevice选项,打开器件选择对话框。单击Device Family区的下拉按钮,进行器件选择,本例中选择ACEX1K系列;然后在Devices区中选择EP1K30TC144-1可编程逻辑器件,如图4-31所示。选择完毕后,单击【OK】按钮。图4-31 器件选择对话框2编译单击MAX+plusCompiler选项,即可打开编译器。另外,也可以单击FileProjectSave & Compiler(保存文件同时编译)选项,系统将把当前设计的若干文件存盘后,自动弹出编译器窗口,单击【Start】按钮,编译器就开始对当前设计进行编译。编译结果如图4-32所示。图4-32 编译结果编译完成后,系统弹出错误和警告信息统计对话框,单击【确定】按钮。若电路中存在错误,可依据编译信息窗口的提示,双击显示错误的信息条,一般可定位错误之处。对当前设计的电路进行修改后,再进行编译,直至显示0 errors为止。如果有若干个warnings,通常要仔细阅读一下警告提示,看看是否与授权等级有关(可能不支持某些功能)。若是授权的原因,不会影响编译;若没有,最好解决,多数是没有连线的管脚或元件。3编译过程编译器是由一系列处理模块构成的,这些模块负责对设计项目的检错、逻辑综合和结构综合。即将设计项目与选择(没有选择,系统会指定一个)的可编程逻辑器件进行适配,同时产生多种用途的输出文件,如功能和时序仿真文件、器件编程的目标文件等。各部分名称与功能如表4-2所示。表4-2 处理模块名称及功能处理模块名称功能Compiler Netlist Extractor编译器网表提取器,该过程完成后生成当前设计的网表文件(描述设计中各元件之间连接信息的文件)。若图形连接中有错误(如两个输出直接短接),该过程将指出此类错误Database Builder数据库建库器Logic Synthesizer逻辑综合器,对设计进行逻辑综合,即选择合适的逻辑化简算法,去除冗余逻辑。确保对某种特定的器件结构尽可能有效地使用器件的逻辑资源,用户可通过修改逻辑综合器的一些选项,来指导逻辑综合Fitter适配器,通过一定的算法(如试探法)进行布局布线,将通过逻辑综合器的设计结果,恰当地用一个或多个器件来实现Timing SNF Extractor时序模拟的模拟器网表文件生成器,可生成用于时序模拟(项目校验)的标准延时文件Assembler装配器,生成用于器件下载或配置的文件。编译器可自动为设计选择目标器件并进行管脚锁定,也可以由用户进行目标器件选择和管脚锁定编译器首先从工程设计文件的层次结构描述中提取信息,包括每个低层次文件中的错误信息,供设计者排除,然后将这些层次构建产生一个结构化的电路原理图文件,并把各层次中所有的文件结合成一个数据包,以便更有效地处理。4创建电路符号单击菜单FileCreat Default Symbol选项,产生Count.sym文件(操作界面没有任何变化)代表现在所设计的电路,该文件可以作为独立的元件供其他设计调用。单击FileEdit Symbol选项,进入Symbol Edit窗口,可以看到所创建的电路符号,如图4-33所示。图4-33 十进制计数器的逻辑符号5创建电路包含文件单击菜单FileCreat Default Include File选项,产生Count.inc文件,可以供其他VHDL程序编辑时使用。查看时,可单击菜单FileOpen选项,在弹出的对话框中,选择Count.inc文件。4.2.4 仿真仿真就是对设计的测试,确保在给器件编程或配置之前,设计对每一个激励(输入信号)都给出一个正确的响应。MAX+plus软件的仿真器可以完成功能仿真和定时分析两种测试模式:功能仿真仅仅测试设计的逻辑操作,能够验证系统逻辑关系正确与否;定时分析既测试设计的逻辑操作,还测试目标器件在最坏情况下系统的延时情况。仿真前,设计者要提供输入向量作为激励,仿真器使用这些输入向量仿真输出信号。通常情况下,设计者需要产生多个仿真的激励向量,来验证不同情况下的输出结果。1建立波形输入文件单击FileNew菜单,打开新建文件类型对话框,如前面的图4-23所示。选择其中的Waveform Editor File选项,扩展名为scf,然后单击【OK】按钮,出现图4-34的窗口。图4-34 波形编辑器2加入管脚单击标题栏的NodeEnter Nodes from SNF选项,可打开如图4-35所示的对话框。图4-35 从SNF文件输入观测节点单击图4-35中的【List】按钮,可在Available Nodes &Groups区中,看到在当前设计中所使用的输入、输出信号管脚名称。这些信号管脚蓝色高亮度显示,表示被选中。单击【=】按钮,可将这些信号选择到Selected Nodes & Groups区,表示可对这些信号进行观测。单击【OK】按钮,可见到图4-34的波形编辑器窗口变为图4-36,MAX+plus就自动进入了编辑输入信号波形的状态。图4-36 输入信号波形编辑文件(加入管脚)单击FileSave选项,将此波形文件按默认名存盘。设计者接下来的任务就是按照对所设计电路的功能、特性的预期,构思一个特定的工作状态来测试系统的性能。因此,要先确定输入信号波形。3编辑前设置单击标题栏的FileEnd Time菜单,设定仿真时间,如图4-37所示。图4-37 仿真时间设定在Time旁边的空白框中输入适当数值(本例中设置为1000ns,时间单位可以为 ns、us、ms和s)。然后单击【OK】按钮。单击标题栏的OptionsSnap to Grid(对齐网格)和Show Grid(显示网格)两选项,使两选项前面出现对勾,再单击Grid Size(网格大小)选项,如图4-38所示。图4-38 网格大小对话框在Grid Size旁边的空白框中输入适当数值,这个时间值就是在测试该电路过程中每个逻辑电平(脉冲)持续的最小时间。本例中设置为20ns,然后单击【OK】按钮。绘制信号波形所需要的工具按钮及其功能如图4-39所示。给选定波形改写状态名将选定波形或波形组改为计数器将选定波形的值取反将选定波形定义为任意值将选定波形定义为低电平缩小将选定波形组改为不同值将选定波形改为时钟脉冲将选定波形定义为高阻态将选定波形定义为高电平与窗口匹配放大图4-39 波形编辑按钮4波形输入以本文所列举的设计为例,操作如下:1)复位信号的设置:在图4-36的Name区,单击信号resert,这时可见resert信号全段编辑区变成黑色,单击工具条中的按钮,将其从0ns到1000ns设置为“高电平”,表示复位信号无效。2)时钟设置:单击EditValueClock选项,打开如图4-40所示的时钟参数设置窗口。图4-40 时钟参数设置其中:Period是时钟周期、Phese是时钟相位、Duty cycle是占空比,输入50,即选50%占空比,设置完成后,单击【OK】按钮。单击图4-36中Name区的时钟信号clk,选中clk后,单击工具条中的时钟信号赋值按钮 可以打开如图4-41所示的对话框。图4-41 时钟波形编辑设计者可在对话框内相应的输入区域输入适当的数字设置将用于仿真分析的时钟信号。本例将Starting Value设置为0,表示时钟的开始电平是低电平,单击【OK】按钮。3)单击Filesave菜单,以Count为文件名,以scf为扩展名,保存当前文件。5仿真分析1)单击MAX+plusSimulator选项,打开仿真分析器,如图4-42所示。图4-42 仿真分析器图4-41中可见,可在Start time和End time两个设置框内,输入数字选择分析的起、止时间。当选择了Check Outputs选项时,可进行两次仿真分析的结果对比。单击【Start】按钮,系统开始分析,进程在窗口下面的进程显示器中以红色进程条显示。完成仿真分析后,单击【Open SCF】按钮,打开波形文件,如图4-43所示。图4-43 仿真波形按照设计要求,分析输入与输出波形的对应关系,在图4-43中可以明显的看到输出波形有延时,延时的长短与选择的器件有关。为观测方便,可将计数输出Q3,Q2,Q1,Q0作为一个组来观测,可将鼠标移到Name区的Q3上,按住鼠标左键并往下拖拽到Q0处,释放左键,选中信号Q3Q0。在选中区域(黑色)单击鼠标右键,打开一个下拉菜单。从中选择Enter Group项,弹出如图4-44所示的对话框。图4-44 组合输出按照观测的需要,在Group Name区输入Q3.0的组名称定义,共有“二进制”、“十进制”、“八进制”和“十六进制”四种显示形式可供选择,本例选择十进制。单击【OK】按钮关闭组设置对话框后,会出现如图4-45所示的波形图。图4-45 编辑输入信号波形4.2.5 定时分析编译完成后,可以应用定时分析器分析当前设计项目的性能。在项目管理器窗口下,单击MAX+plusTiming Analyzer选项,即可打开定时分析器,系统进入定时分析状态。定时分析状态提供了三种分析模式:传输延迟矩阵分析、建立/保持时间分析和寄存器性能分析(默认的分析方式为传输延迟分析)。1传输延迟矩阵分析单击标题栏的AnalysisDelay Matrix选项(默认情况下已经选中),单击【Start】按钮,定时分析器立即开始对项目进行传输延迟分析,计算项目中每对连接节点之间的传输延迟,本例的测试结果如图4-46所示。图4-46 传输延迟测试结果拉动Delay Matrix表格右侧和下方的滚动条,可以看到每个输出管脚(信号)与输入信号之间的传输延迟时间。2建立/保持时间分析单击 AnalysisSetup/Hold Matrix选项,如图4-47所示。图4-47 建立/保持时间分析单击【Start】按钮,开始进行建立和保持时间分析,该方式可以计算从输入管脚到触发器、锁存器和异步RAM之间,信号输入所需的最小建立和保持时间。注意:没有触发器的组合逻辑电路此项分析不可用3寄存器性能分析单击 AnalysisRegistered Performance选项,打开寄存器性能分析窗口,单击【Start】按钮,即可开始进行时序逻辑电路性能分析,如图4-48所示。图4-48 寄存器性能分析该模式分析电路中的延迟、最小的时钟周期和最高的电路工作频率,可以看出本例设计的时钟周期为4.0ns,频率为250.00MHs。单击【List Paths】按钮,可显示延迟分析的结果列表。注意:没有触发器的组合逻辑电路此项分析也不可用4.2.6 器件编程或配置通过仿真和定时分析后,可以把设计下载到可编程逻辑器件中。在Altera公司的常用器件中,一种为CPLD结构,编程信息以EEPROM方式保存,对这类器件的下载称为编程,如MAX系列;另一种是FPGA结构,其编程信息是存储在芯片内部的存储器单元阵列中,存储器单元阵列采用SRAM方式,对这类器件的下载称为配置,如FLEX系列和ACEX1K系列。因为CPLD系列的编程信息是以EEPROM方式保存,所以系统掉电后,其编程信息不丢失;而FPGA系列的配置信息采用SRAM方式保存,系统掉电或关闭后其配置信息会丢失,需要每次系统上电后重新配置。在本例中使用的是EP1K30TC144-1,属于ACEX1K系列。下面对其进行配置:1)单击标题栏中的AssignPin/Location/Chip选项,出现对话框,如图4-49所示。图4-49 管脚锁定在Node Name中键入管脚名(如resert),根据使用实验箱的具体情况(采用康芯GW48-PK2实验平台的No.6电路结构图),在下面的Pin中键入相应的管脚编号(如27),单击【Add】按钮,把管脚与芯片锁定。按照同样的方法,将其

温馨提示

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

评论

0/150

提交评论