可编程逻辑器件软件MAX

可编程逻辑器件软件MAX+ PLUSIIMAX+ PLUSII( Multiple Array Matrix ancProgrammable Logic User System II ) 是Alt era公司为可编程逻辑器件PLD(Programming Logic Driver )器件应用、逻辑电路 设计、仿真开发的软件平台MAX + PLUSII运行在Windows操作系统的软件它的功能 全,可以使用的器件类型比较广泛MAX+ PLUSII的主要技术特点如下:1) 适用范围广泛MAX+PLUSII除了支持Alt era系列PLD外,也支持在其它芯片上 设计逻辑电路2) 与器件结构独立MAX+ PLUSII提供了与器件结构独立的设计环境和综合功能, 用户可以在设计过程中不考虑具体的器件结构3) 通用性强MAX + PLUS II的软件设计环境是开放的它符合工业标准的EDA软 件它提供了与EDA工具的接口对大多数EDA工具,接口由MAX+PLUSII软件内部的 相关框架协议自动完成4) 兼容性好MAX + PLUS II软件可与其它工业标准设计输入、综合与校验工具链 接用户可使用Alt era设计输入工具去建立逻辑设计。
使用MAX + PLUS II能够对Alt era 的器件进行逻辑电路设计、运行和仿真5) 自动化程度高MAX + PLUS II软件集成了设计输入、处理与校验功能他可以 减轻设计人员的工作量,加快动态调试,缩短开发周期,取得较高的设计效率6) 帮助系统完善MAX + PLUS II软件的帮助系统功能齐全,有丰富的图表与设计 实例,为设计者提供很大的方便下面介绍使用MAX + PLUS II软件的图形编辑器设计和仿真一位8421BCD码转换成余3 BCD码合逻辑电路,使用VDHL语言设计和仿真三位二进制加1计数器同步时序逻辑电路 通过学习,初步掌握MAX + PLUS II软件的使用方法C.1 MAX + PLUS II 软件环境C.1.1 MAX + PLUS II 管理器MAX + PLUS II管理器窗口如图C-1所示在这个界面里,用户可以进入全部的应用 程序,可以执行的命令在应用程序界面也可运行管理器窗口包括标题栏、菜单栏、工 具栏、状态栏和工作显示区等在标题栏中提示了当前文件及工程的路径在状态栏中 提示所选的菜单活工具的功能工作区4状态栏图 C-1 MAX + PLUS II 管理器C.1.2 MAX + PLUS II 软件的 MAX + PLUS II 菜单栏1. MAX + PLUS II菜单,如图C-2所示。
单击这一菜单,可以显示MAX + PLUS II 菜单的下拉菜单选择其中任何一个菜单选项,可打开该程序的界面MAX + PLUS II 菜单包括层次显示器(Hierarchy Display),图形编辑器(Graphic Editor),符号逻 辑器(Symbol Editor),文本编辑器(Text Editor),波形逻辑器(Waveform Editor), 平面逻辑器(Floorplan Edi tor),编译器(Compiler),仿真器(Simula tor),定时分 析器(Timing Analyzer),编程器(Programmer),消息处理器(Massage Processor)Hi er :=Lt_ chy D i spl ay Gr aphi c E di t or SyTTibol Edi tor Text EHitoirWaveform EditorFl o or pl:=ltl Edi tor CompilerSimulatorTiming ArL:=Llyzer F I- ci gr :=urim erMessage Fr«:«ceEsor图 C-2 MAX + PLUS II 菜单栏2. File菜单。
如图C-3所示同大多数软件一样,File菜单包含管理文件的基本 操作例如新建一个文件、打开已有文件、删除指定文件、退出MAX + PLUS II等在 File菜单中,还有另外三个操作,他们是,Fr oj_ect►ITew...UjierL...DeleFile...Ctrl+0Hi er :±f chy Froj ect TopCtrl+TM e g:=L,ili, i z :=q- d Flug-IrL M :=LrL:±gerE/t MAX+plus IIAlt+F4Assi etl Qp t i ons Help1) Project选项向用户提供对所设计工程文件的操作界面它的子菜单中包括确 定工程名称、将工程设定为当前文件、工程的编译、仿真、检查和工程备份选项等 Project选项为用户设计工程提供了方便2) Hierarchy Project Top选项用于打开顶层工程设计文件3) MegaWizard Plug-In Manager选项帮助用户创建或修改自定义的函数,然后 在设计文件中说明它它利用Altera公司提供的标准函数库和参数模型库简化设计过 程3. Assign菜单。
如图C-4所示该菜单向用户提供对所设计系统各个参数赋值的 命令Device...FirJLocation/Chip...Timing Reqiiii_emerLtE...Clique...Lugic Qpti..Frobe...Connected Fins...Local Ruuting...GL 止 alGlobalGlobalGL 止 alFroj ectFrojectFroj ectFroj ectDevi ce Dpti ons..F:±f :=litietwE...Timing RequirerTientE...Lugii: gynthesis...IgrLor e Froj ect As si griirientE...Cle.:=Lf Froj ect As si griirierL t吕...Back-AtltlutsLtE Froject...C'jnvert Obsolete Assi gnnient Format图C-4 Assign菜单4. Option菜单如图C-5所示该菜单帮助用户对软件使用中的一些特性进行设1) User Libraries选项使用户确定自己的库,其中包含图元文件和设计文件等。
当编译器对工程进行编译时,首先在当前工程目录中查找,接下来在用户自定义的目录 中查找2) Color Palette选项用于打开颜色调整对话框MAX + PLUS II对软件中的各 个项目及工作环境的颜色设置为默认值用户可根据自己的要求进行调整3) License Setup选项用于打开License Setup对话框该对话框使用户确认 License.dat文件的位置使软件通过授权,使用全部功能4) Preferences选项使用户可以对软件使用中的一些特性进行选择例如:是否 在关闭软件前请示用户,是否在删除文件前请示用户,是否在编译器运行时使窗口最小 话,是否在仿真时使窗口最小化,是否显示工具栏,是否显示状态栏、是否在软件开始 运行时打开最新的工程图C-5 Opt ion菜单5. Help菜单该菜单向用户提供各个MAX + PLUS II帮助选项C.1.3 MAX + PLUS II 的工具栏MAX + PLUS II的工具栏向用户提供菜单中快捷键方式下面是工具栏中向用户提供 菜单快捷方式1)婚'(Shift + F1)快捷键为上下文相关帮助按钮它提供即时帮助单击该按 钮,显示器中鼠标会变成带问号标记的形状,然后将它指向所需帮助的地方,在大多数 情况下都可得到相关的信息。
1) ◎快捷键为设计层次显示的快捷方式,使用它可以打开层次显示器窗口2) 強快捷键为设计平面编辑的快捷方式,使用它可打开平面编辑器窗口3) 屍快捷键为编译器的快捷方式,使用它可打开编译器窗口4) 四快捷键为仿真器的快捷方式,使用它可打开仿真器窗口5) 口快捷键为定时分析器的快捷方式,使用它可打开定时分析起窗口心快捷键为编程器的快捷方式,使用它可打开编程器窗口6) 少 園(Ctrl+J)快捷键:工程名确认按钮单击它,会打开工程名称对话框, 在这里可以更改或确定设计层次中的顶层工程名或程序名7) 蠹(Ctrl+T)快捷键为顶层工程按钮单击它,将把顶层设计层次中的文件打 开10) IS (ctrl + K)快捷键为工程文件存盘和检测按钮单击它,将保存目前的工 程并部分编译即把工程提交给编译器中的网表生成器并建立数据库11) 遐(Ctrl + L)快捷键为工程文件存盘编译按钮将保存所有的编译器输入文 件,打开编译器并开始编译目前的工程12)曲(Ctrl + Shift + L)快捷键为工程存盘仿真按钮将保存具有仿真格式的 文件,打开仿真器并开始对目前的工程进行仿真C.2使用MAX + PLUS II软件设计逻辑电路MAX + PLUS II的设计逻辑电路过程如图C-6所示。
如果在设计过程中某一步出错或 未达到设计要求,则应当修正设计,直到正确为止图C-6 MAX + PLUS II的设计逻辑电路过程1)输入设计项目在MAX + PLUS II中输入逻辑电路可以通过图形编辑器、文本编辑器和波形编辑器 使用的输入方法不同,生成的设计文件也不同,如图C-7所示图形编辑器设计逻辑电路 生成的设计文件的扩展名为.gdf文本编辑器设计逻辑电路生成的设计文件的扩展名 为.vhd波形编辑器用于在仿真时,编辑输入信号的波形设计文件生關文件图形编辑器.gdf.sym爻本编辑器■ vhd.inc符号编辑器tdf波那编辑器wdt图C-7输入设计项目及文件类型2)编译设计项目根据设计项目要求设定编译参数和编译策略,如选定器件、锁定引脚、设置逻辑综合 方式等等然后,根据设定的编译参数和编译策略对设计项目进行网表提取,逻辑综合, 器件适配编译后产生报告文件、器件编程文件,提供分析、仿真和编程用,如图C-8 所示设计文件MAX +PLUSII 编译器,gd£ . sth网表提取器数据臨逹库器逻辑综合器仿車定时文件.snf.tdf .edf—►荫真定时SNF化分器适配器-►报告文件.rpt.vhd .xnfEDIF VHDL网表写入器设计诊斷器编程文件.pof .sof汇编器.jed图C-8编译设计项目3)校验设计项目项目校验方法包括功能仿真、模拟仿真和定时分析。
功能仿真时是在不考虑器件延时的理想情况下的验证方法功能仿真可以用来验证一 个项目的逻辑功能是否正确模拟仿真(也称时序仿真)是在考虑设计项目具体器件的 各种延时的情况下,仿真设计项目的一种项目验证方法时序仿真不仅测试逻辑功能, 还测试目标器件最差情况下的时间关系通过时序仿真,在把项目编程到器件之前全面 检测项目,以确保在各种可能的条件下都有正确的响应MAX + PLUS II的仿真过程如图 C-9所示定时分析用来分析器件引脚及内部节点间的传输路径延时,时序逻辑的性能(如 最高工作频率、最小时钟周期等)以及器件内部各种寄存器的建立/保持时间MAX + PLUS IJ 编译器MAX + PLUS II波形編译器MAX +PLUS II文本编译黑MAX +PLUS II 仿真器1烈f MAX + PLUS II波形編译器图C-9校验设计项目4)编程验证设计项目用MAX + PLUS II编程器通过Altera编程硬件或其它工业标准编程器将经过仿真确 认后的编程目标文件编入所选定的Altera CPLD器件中,然后加入实际激励信号进行测 试,检查是否达到设计要求C.2.1使用图形编辑器设计逻辑电路和仿真运行完成一个逻辑电路的设计和仿真运行,要涉及到如以下几个步骤。
下面结合例子说明 使用图形编辑器设计组合逻辑电路的过程例C-1设计把一位8421 BCD码转换成余三码的组合逻辑电路使用MAX + PLUS II软 件创建该电路的图形文件,给出逻辑功能的仿真图形第一步,设一位8421 BCD码转换成余3 BCD码组合逻辑电路输入变量为A,A,A,8 4 2兔,输出变量为B3, B2, Bx,B0它的框图如下:使用组合逻辑的设计方法设计一位8421BCD码转换成余3 BCD码,它的逻辑函数表达 示如下:屢比甌曲虫)二A+皿+乩加卽4,乩九川J = A..A.. A+ A A + 4.驻::盘個,如九川J二4儿+爲乩血虫)=加第二步,逻辑设计的项目命名MAX + PLUS II软件设计逻辑电路以和仿真是以项目为单位进行的因此,使用MAX + PLUS II软件进行仿真一个逻辑电路设计时,首先要为这个逻辑电路建立一个项目,以及 为项目起一个名字如果一个项目中有多个文件的话,这多个文件要存储在这个文件项目 名中,或者是存储在这个项目名的层次结构中对于每一个项目名,应当单独建立一个目 录存放这个项目在MAX + PLUS II软件中保存项目名字时的时候,前面可以添上目录名 字,MAX + PLUS II会自动地建立这个目录。
必须注意,命名的项目名字必须同项目中的 文件名相同,例如图形文件名,文本文件名设在 “F” 盘下有一目录“MAX-EXAM”,也就是 “F: \MAX-EXAM”一位8421 BCD 码 转换成余3 BCD码的项目名为“8421-EXCESS3”,建立项目的名字步骤入下:1)单击菜单项/File/Project/Name,出现Project Name对话框,如图CTO所示Project Na>e图 CTO Project Name 对话框2) 在Drives中选择f :在Directories中选择MAX-EXAM为当前目录;3) 在 Project Name 中输入 EXAM\8421- EXCESS3; EXAM 1 为新建的子目录,421- EXCESS3 为项目名字,单击OK按扭这样就建立了一个项目,项目名称是“8421- EXCESS3”第三步,建立图形文件建立图形文件是在图形逻辑器环境中完成的MAX + PLUS II软件中的图形编辑器是 一个直观的设计输入,提供给用户输入逻辑电路的原理图在图形逻辑编辑器环境中,MAX + PLUS II提供有种类齐全的图元,例如74系列逻辑电路符号。
还有宏模块库在图形逻 辑器环境中完成逻辑电路原理图的设计比较方便建立新的图形文件步骤如下:1)单击菜单项File/New,出现New对话框,如图C-11所示图c-ll New对话框2) 在New对话框中选择Graphic Editor File,即选择图形编辑器环境3) 在New对话框中的右上角的下拉列表中选择.gdf, . gdf是建立新的图形文件的扩展 名;4)单击OK按扭,出现图形编辑器;如图C-12所示在图形编辑容器中,左边是为图形编辑提供的工具,如光标工具A,直角线工具1,直线工具等图C-12图形编辑器5)单击菜单项File/Save,出现Save as对话框,如图CT3所示Save AsFile Name:Directory is: f:\2005Files:' K.gdfcountadcl1-3.gdfuciun tadd1-3.gdfDirectories':Automatic Extension.OKD血瞬;];5df jJCancel6) 在Save As对话框中,选择Directories中,选择f:的MAS-EXAM\Eaxm 1为当前目 录,在File Name中输入8421-EXCESS3.gdf;必需注意输入的图形文件名必须与项目名相 同。
7) 保存新建图形文件名,单击OK按扭,8421-EXCESS3.gdf文件保存在Exam1目录下 了第四步,输入图元构成组合逻辑电路图在第一步中得到的逻辑函数表达式,构成逻辑电路图要用到“与”门,“非”门,和 “或”门,这些门电路在MAX + PlusII中称为图元在8421-EXCESS3.gdf图形逻辑编辑 器需要用到“与”门,“非”门,和“或”门的图元是7432 (与门),7408 (或门),7404 (非门)输入图元的步骤如下:1)选择图元在图形编辑器空白处双击鼠标右键,出现Enter Symbol对话框,如图 C-14所示在Symbol Libraries滚动框中列出了能够用于在图形编辑器中使用的图元和 宏功能符号库,其中:Prim: 是 Alt era 图元,mf: 7400系列逻辑的电路,触发器,输入引脚,输出引脚,mega —lpm:参数化模块,本图形逻辑器中构成逻辑电路图使用mf中的图元即可Ezi+er Symbol图C-14选择图元选择图元方法是,例如选择7432,双击Symbol Libraries中的mf, mf中的图元显 示在Symbol File文本框中在Symbol File框内选择7432,使它变蓝,然后双击7432, 这样7432或门符号便出现在图形逻辑器中。
在图形逻辑器中它的边框为红色矩形,表示当 前激活7432在图形编辑容器中,可以对图元进行复制和移动复制图元的方法是,把鼠 标箭头放到红色矩形框中,单击鼠标右键,在快捷菜单中选择“ Copy ”命令;然后把箭头 放到图形逻辑编辑器的空白处,单击鼠标右键,在快捷菜单中选择Paste,命令复制的7432 或门出现在图形逻辑编辑器中移动图元的方法是用鼠标左键单击某个7432,该7432图元 边框为红色,然后把鼠标箭头放到红色矩形中,按住鼠标左键移动,松开鼠标左键,图元 便移动到另一个位置图元可以旋转角度,方法是首先选择 A编辑模式,在激活7432 状态的时候,单击鼠标右键,在快捷菜单中选择Rotate/90o,可以使图元7432旋转90 删除图元的方法是激活图元,单击鼠标右键,用 cut命令即可用同样的方法输入7408 “与”门,7404 “非”门图元根据第一步中的逻辑函数表达式,在图形编辑器的合 适位置放置所需的全部的图元2)对图元进行连线在图形编辑容器中对图元进行连线是首先选择图形编辑容器左边 的园或者是鬱连线模式風称为正交线工具,它可以画直线或者是直角线,如果需 要画多个直角线,则需要画多次才能完成。
關工具只能画直线删除该连线的方法是在和 越的模式把鼠标移动到被删除的直线处,单击鼠标右键使连线变成红色,在快捷菜 单中选择cut,连线即可删除3) 产生和消除交叉的结点如果有两根线交叉需要产生结点时先用鼠标单击两根线的交叉 处,然后按下农工具,交叉处就有交叉结点出现如果去掉某个交叉结点,使用鼠标单 击交叉结点,然后按下嘤工具,交叉结点即可消去4) 输入,输出引脚及命名在图形编辑器中用图元组成逻辑电路图的输入输出引脚要 进行命名在MAX + PLUS II软件中引脚也是由图元提供因此,逻辑电路图输入完毕后, 要为每一个输入端和输出端给一个INPUT,OUTPUT图元,然后给每一个INPUT,OUTPUT图 元命名名字,步骤如下:(1) 双击Symbol Libraries中的prim, prim中的图元在Symbol File框中显示,在 Symbol File 框中选择 INPUT 和 OUTPUT 是分别双击 INPUT 和 OUTPUT 图元,INPUT 和 OUTPUT 图元均出现在图形编辑器中2) 激活某个INPUT图元,使边框为红色矩形,再单击INPUT图元中的“PIN-NAME “或 者把鼠标箭头放到红色矩形区域里,单击鼠标右键,在快捷菜单中选择Edit Piu Name,“PIN-NAME”的边框为红色矩形。
输入B这样逻辑电路图的一个输入端被命名为B 了8, 8用同样的方法编辑逻辑电路图的引脚为B B B4, 2, 13) 把INPUT图元旋转900,激活某个INPUT图元,使之边框为红色的矩形把鼠标箭 头放到红色矩形中,单击鼠标右键,在快捷菜单中选择Rotate/900,可以使INPUT图元旋 转90然后再把INPUT图元拖到合适的位置上4) 激活某个OUTPUT图元,命名输出端为A3,A2,A1,A把OUTPUT图元拖动到合适的位置上 3210经上述四步,输入图元,图元之间连线,标上结点和输入,输出引脚命名,在图形 逻辑电路图中完成了一个逻辑电路图的输入使用File/Save保存逻辑电路图从以上可以看出,用MAX +PLUS II软件中的图形编辑器构成逻辑电路图在操作上很 直观和方便8421-EXCESS.gdf的组合逻辑电路图如图C-15所示AzA,月4第四步,检查逻辑电路为了检查输入的逻辑电路是否正确,MAX +PLUS II提供了 对.gdf逻辑电路图进行错误检查的功能,提取和显示错误,步骤如下:1) 在图形逻辑编辑器环境中,打开8421-EXCESS3.gdf文件,选择File/Project/Save &Check子菜单,给出编译后的提示,如图C-16所示2) 如果编辑器发出了错误和警告和错误的提示,可单击容器中的Message按扭选择一 条消息,MAX +PLUS II可以定位到图形逻辑编辑器中出错的地方。
进行修改,直到错误 和警告为0时为止图C-16显示8421-EXCESS.gdf文件的信息C.2.2使用波形编辑器仿真 在图形编辑器中建立图形文件8421-EXCESS3.gdf后,MAX +PLUS II软件提供波形编辑器对 建立的图形文件进行仿真,验证逻辑电路在功能上是否能够实现设计要求仿真是项目验证 的一种手段,在MAX +PLUS II中仿真包括功能仿真和模拟仿真功能仿真是在不考虑器件 延时的理想情况下的验证方法,用来验证逻辑功能是否正确模拟仿真是考虑具体适配器件 的各种延时的情况下的验证方法下面介绍在MAX +PLUS II软件中对逻辑电路进行仿真的步骤:1•打开项目,单击File/open,打开项目8421-EXCESS32. 建波形仿真文件.scf1)单击File/New,出现图C-17所表示的对话框图C-17 New对话框2) 在New对话框中选择Waveform Edit File,即选者仿真波形编辑器3) 在New对话框中的右上角的下拉列表框中选择.scf,.scf是新建的波形文件的扩展 名4)单击OK按扭,出现波形编辑容器,如图C-18所示图C-18 MAX-PlusII的波形编辑器容器5)建立仿真文件,单击菜单FILE/SAVE,出现Save As对话框,选择f:的MAX-EXAM\EXAM1 为当前目录,在File Name中输入8421-EXCESS3波形文件名,波形文件名也要同项目名相同。
至此仿真文件已经建立3. 设定时间轴网格大小单击菜单Option/Grid Size出现Grid Size对话框,在Grid Size文本框中输入20ns,单击OK按扭,这时波形编辑器容器中会在纵向上每40ns有一个竖 线网格大小的设置用于表示信号周期状态的维持时间4•定时间轴长度,单击菜单File/End Time,输入3.0庖这个时间是波形文件的结束 时间,它决定在仿真过程中何时终止施加输入向量5.向仿真编辑器输入图形编辑器中逻辑电路的输入,输出引脚在仿真逻辑器容器空白 处单击右键,在快捷菜单选择Enter Nodes from SNF,然后出现结点对话框,如图CT9所 示在Type下的INPUT,OUTPUT,和Group前的多选框中打上丁,按下List按扭右边 的文本框中是8421-EXCESS3.gdf文件中输入、输出引脚名字按中间的“=>”按扭,左 边的输入、输出引脚名字全部移到了右边按OK按扭,8421-EXCESS3.gdf中的输入、输出 引脚名列在波形编辑器的Name列的下面这时在波形编辑器中每一个输入,输出都没有被 编辑,默认是低电平虫ode / GroupModg & Geoids:P [哄熄 厂且硏初te«d> Ci#口啟 I CcfljbiftjJtoiid厂宜a叩 厂Memory Eil厂AllJ- 2 1 3 ?-IAIAIA:IAE 口宅Enter lodes ft dm SHF^elected Nodes t Gwpk 期JUL—二二SA4 [I]A2UJAU1B3[0)R? rni* fteseive Exisliig Notfesi' ' Shpifl All Nodfr N adne 创^则险Cancel图 C-19 Enter Nodes from SNF 对话框6•编辑输入脚的波形。
编辑波形的目的是为仿真提供输入向量如图C-20所示Hilt it ledl - EditOf150 0(151IDO 0nsiValue'0it-Al-Ur閃*£* B2 -O BlBO0编辑A输入脚的波形,点击A然后点击左边的图形工具上:则用低电平覆盖了整个8 8A波形,在A波形处按下鼠标,拖五格处在松开,这时区间为黑;点击左边的图形工具 入,2则该区间为高电平此时第一个时间段逻辑电路A A A A输入为“0010”,第二个时间段8 4 2 1逻辑电路A A A A输入为“0101”,8 4 2 17•选择菜单MAX +PLUS II/Simulator,出现MAX +PLUS II仿真器容器输出仿真波形 记录在8421- EXCESS3.scf文件中分析仿真结果在仿真容器中选择Open SCF按扭,即打开8421- EXCESS3.Scf文件 移动参考线到仿真器中的不同位置,可以查看参考线所在的位置的输入和输出转换是否正 确逻辑电平的值显示在Value位置上如图C-21所示图中A A A A输入为“0101”,8 4 2 1B B B 输出为“ 1000”,也就是把8421 BCD码“0101”,转换成了余3 BCD码“ 1000”。
如果在仿真波形中发现问题,则要回到前面的步骤去进行修改一般来讲,为了得到期望的 仿真结果,多次重新编辑修改输入信号,重复仿真设计项目图C-21仿真结果分析。