您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > MAX+PLUSII使用指南
42第三章MAX+PLUSII使用指南世界上各大可编程逻辑器件的生产厂商都有各自的EDA开发系统,比如Lattic公司的Synario;Xilinx公司的Foudation等,本章选取美国Altera公司的MAX+PLUSII,介绍如何利用它进行PLD设计。MAX+PLUSII开发系统是美国Altera公司自行设计的CAE软件平台,具有易学、易掌握的特点。MAX+PLUSII的全称为MultipleArrayMatrixandProgrammableLogicUserSystem,可安装在具有Windows95/98或WindowsNT4.0的PC机上,要求硬件至少具备16M内存、80M硬盘。在MAX+PLUSII软件平台上利用PLD来设计系统可通过三大步骤来完成,即设计项目的输入、设计项目的验证和设计项目的处理。为了形象、有效、快速地掌握Max+plusII的使用方法,本章通过一四位二进制加法器的设计实例来介绍整个设计的详细过程。实例中所用的芯片是Altera公司可编程逻辑器件EPF10K10LC84-3,读者可使用EDA实验开发系统来演示设计的结果。3.1设计项目的输入MAX+PLUSII的输入方法有四种:文本输入、波形输入、图形输入、符号输入。我们在此以文本输入法为例来实现四位二进制加法器的设计,其余的输入设计法在后面另做介绍。下面介绍具体设计步骤:3.1.1文本输入一.建立一新项目:图3-11.启动MAX+plusII:在WINDOWS98界面中,单击开始—程序—MAX+plusII—MAX+plusII8.2,进入MAX+plusII8.2集成环境。432.选中File—Project—Name,显示对话框图3-1。3.在ProjectName框中,键入add4b(此文件名可任取,但必须与源程序中的实体名字相同)。若想改变add4b所属目录,用户可在Directories窗口中修改。4.选择OK,则MAX+plusII的标题条会变成新的项目名字:MAX+plusManager-d:\lrc\add4b。二.建立一VHDL文本输入文件:下面我们介绍如何建立一个名为add4b.vhd的四位二进制加法器,输入方法为VHDL文本输入。1.在文件菜单中,选中File-New,出现图3-2对话框,选择对话框中的TextEditorFile。图3-22.选择OK,则出现一个无名称的文本编辑窗口。3.在无名称的编辑窗口中输入以下源程序:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_signed.all;entityadd4bisport(a:instd_logic_vector(3downto0);b:instd_logic_vector(3downto0);cin:instd_logic;c:outstd_logic_vector(3downto0);cout:outstd_logic);end;architectureoneofadd4bissignalcrlt:std_logic_vector(4downto0);begincrlt=a+b+cin;44c=crlt(3downto0);cout=crlt(4);end;4.选择菜单File—save或saveas,在FileName中输入文件名add4b.vhd,并将扩展名(AutomaticExtension)改为.vhd,如图3-3。(注意:保存的文件名必须与源程序中的实体名相同,也必须与前面设置的项目名相同)图3-35.选择OK,此文件名即被保存到当前项目的子目录下。6.选择菜单File—Project—Save&Check,检查程序中的语法错误。若设计程序有错,编译器会自动显示出错信息。从信息处理器(MessageProcessor)中可以得到相关源程序的出错信息的具体内容。当双击某一条信息时,信息处理器会自动打开包含该条信息来源的文本设计文件,并高亮设计文件中产生错误信息的位置。7.选择菜单File—CreateDefaultSymbol,为add4b创建一个图形符号。此时Max+plusII会自动调出编译器对add4b.vhd进行便编译。若编译成功,则自动生成add4b的图形符号。至此,利用VHDL语言设计的四位二进制加法器就完成了。3.2设计项目的验证要验证一设计项目是否按照你的设计要求运行,可以通过模拟这一既省时又省力的方法来完成。模拟允许你在把项目编程到器件之前全面检测项目,以确保它能在各种可能的条件下有正确的响应。在模拟过程中,需要给MAX+plusII模拟器提供输入向量,模拟器将利用这些输入信号产生输出信号(与可编程器件在同一条件下产生的相同)。根据你所需信息的种类,可用MAX+plusII进行功能模拟或时序模拟。功能模拟仅仅测试项目的逻辑功能,而时序45模拟不仅测试逻辑功能,还测试目标器件最差情况下的时间关系。下面我们利用前面介绍的实例——四位二进制加法器add4b.vhd,来说明如何创建通道模拟文件、如何进行功能模拟及时序分析。一.功能模拟:1.选择菜单File—Project—Name,在ProjectName框中键入add4b,再按OK。2.选择菜单File—Open,在FileName框中键入add4b.vhd,再按OK。3.选定要加载的器件:从Assign菜但中,选择Device选项。在DeviceFamily下拉列表中,选择FLEX10K系列;在Devices的器件列表框中,选中EPF10K10LC84-3,最后选择OK。4.选择菜单Max+plusII—Compiler,单击Start,对文件进行编译。5.选择菜单File—New—WaveformEditorfile,从下拉列表框中选择.scf扩展名,并按OK,创建一新的无标题的波形编辑文件。6.选择菜单File—EndTime,在Time框中键入800.0ns,作为仿真的结束的时间,如图3-4。7.选择菜单Option—GridSize,在GridSize框中键入20.0ns,按OK,得到图3-5。图3-4图3-58.选择菜单Node—EnterNodesFromSNF,或在波形文件编辑区的Name下面的空白区单击右键,则出现EnterNodesFromSNF对话框,如图3-6所示。图3-69.选中Type框中的input、output和group选项,再单击list,可得到add4b.vhd的所有input和output。4610.单击AvailableNodes&Groups框中所需的项,再单击“=》”,则把选中的节点或组送到右边的窗口,并按OK。如果要选择所有的输入输出节点,可先选中AvailableNodes&Groups框中所有的项,再单击“=》”。11.给所有的输入节点或组赋值,如图3-7所示。(注意:输入值可任取,输出值是编译后自动生成的,具体赋值方法见P52第7点)图3-712.选择File—Saveas,将文件保存为add4b.scf。13.在MAX+plusII菜单中,选择Simulator,出现图3-8。单击Start,出现图3-9。若无错误,则显示零错误和零警告。14.单击图3-9中的“确定”,并关闭图3-9,则出现图3-7所示的模拟结果。15.移动参考线,可观察各处的模拟结果。此时我们会发现,输出波形与输入波形并不完全对应,这是由于延时所产生的。图3-8图3-947二.时序分析:在MAX+plusII的菜单中,选择TimeAnalyzer,再单击Start,则出现图3-10所示的时序分析结果,从图中我们可看到输入到输出的时间延迟。图3-10在时序分析中,分析器计算项目中每对相连的结点间的最小和最大的传播延迟时间,如果项目的最短和最长路径不一样,则这两个数字都将显示在一个单元中。实际上,这两个数字不同,电路则包含了一个潜在的逻辑竞争的条件。3.3设计项目的处理在完成设计项目的输入、验证后,还必须对设计项目进行处理,才能制成ASIC芯片。设计项目的处理包括管脚锁定、项目编译、观察加载、项目下载四个部分。一.管脚锁定:所谓管脚锁定,即将软件平台上所设计的系统引脚与具体的目标芯片的引脚相对应起来。在锁定之前,具体要使用的目标芯片必须是确定的。有关目标芯片的可用引脚资源可查阅相关的数据手册。下面我们还以前面的四位二进制加法器为例介绍具体的方法:1.选定要加载的器件:从Assign菜但中,选择Device选项,出现如图3-11所示的对话框。在DeviceFamily下拉列表中,选择FLEX10K系列;在Devices的器件列表框中,选中EPF10K10LC84-3,最后选择OK。(如若前面编译时已经选择过目标芯片,则此步骤可省略)2.锁定管脚:选择菜单Assign—Pin/Location/Chip,出现图3-12的对话框。在NodeName栏中键入要锁定的管脚的名字A0,在ChipResource窗口中选中Pin,48并键入要写入的引脚号码21,最后点击右下角的Add,则选中的管脚即被锁定。如果输入的管脚号码不是器件的I/O引脚,返回时将出现错误信息。3.同样的方法可锁定剩余的其他输入输出引脚。图3-11图3-12二.项目编译:选择菜单Max+plusII—Compiler,可对项目进行编译。在前面的介绍中,我们提到过项目的编译。编译的全过程包含:建立网表—建立元件库—逻辑综合—分区布线—加载—时域分析—适配共七个环节。任何一个环节的错误,都将导致编译的失败。若想了解错误信息的来源,可以打开信息处理器(MessageProcessor)。三.观察加载:49在平面布置图编辑器中,可观察器件内部资源的划分和试配结果。我们以前面设计的四位二进制加法器adder.gdf为例,来看看器件加载的情况。1.从Max+plusII菜单中,选择FloorplanEditor,则此项目所选定的器件内部结构被显示,如图3-13所示。2.平面布置图编辑器提供两种显示方式:器件俯视图和逻辑阵列块(LAB)视图,可通过Layout—DeviceView和Layout—LABView来实现。器件视图显示器件封装的所有管脚以及它们的功能。LAB视图显示出器件的内部,包括所有的LAB和每个LAB中的单个逻辑单元。对于某些器件封装,LAB视图还显示出引脚的位置。3.如果你愿意,你可以回注(back-annotate)编译的结果,并对该分配进行编辑修改。具体做法如下:选中Layout—CurrentAssignmentsFloorplan后,器件LAB视图中的逻辑及引脚全部显示在未分配节点(UnassignedNode)窗口中,可用鼠标按住选定的未分配节点,拖到LAB图中合适的位置再松开即可。若想将分配的逻辑和引脚加载到芯片,必须重新编译。图3-13四.项目下载:ISP器件采用在系统可编程技术,是一种无需将器件从电路板上取下即可编程的EECMOS芯片。它通过五根编程连线与计算机的并行口相连,在软件平台MAX+PLUSII的帮助下,即可非常方便地实现设计程序到芯片的下载,从而可免去以往PLD的那种拔插芯片的麻烦,且无需专门的编程器。具体操作如下:501.将带有FLEX10K10LC84-3芯片的实验板、ByteBlaster下载线及电源安装好,并将下载线接在计算机的并行口上。2.选择菜单MAX+plusII—Programmer,出现图3-14。图3-143.在Options菜单上选中HardwareSetup,出现图3-15所示的窗口。在图中的HardwareType中,选择ByteBlaster,在ParallelPort中,选择LPT1,然后按OK,此时硬件连接完毕,返回图3-14。4.若用户所用的器件是Altera的MAX7000系列或MAX9000系列,则图3-14中的Program按钮有效;若是Altera的FLEX800系列或FLEX10K系列,则图3-14中的Configure按钮有效。所以只要选中Pr
本文标题:MAX+PLUSII使用指南
链接地址:https://www.777doc.com/doc-2882324 .html