1引言
Altera公司是世界三大CPLD/FPGA厂家之一,它的器件能达到最高的性能和集成度,不仅仅因为采用了先进的工艺和全新的逻辑结构,还在于它提供了现代化的设计工具——MAX+PLUSⅡ可编程逻辑开发软件,该软件是Altera公司推出的第三代PLD开发系统。它提供了一种与结构无关的设计环境,使Altera CPLD设计者能方便地进行设计输入、快速处理和器件编程。MAX+PLUSⅡ提供了全面的逻辑设计能力,包括电路图、文本和波形的设计输入以及编译、逻辑综合、仿真和定时分析以及器件编程等诸多功能。特别是在原理图输入等方面,MAX+PLUSⅡ被公认为是最易使用、人机界面最友好的PLD开发软件。 MAX+PLUSⅡ可以开发除APEX20K以外的任何CPLD/FPGA。
2Altera CPLD器件的开发
MAX+PLUSⅡ由设计输入、设计处理、设计校验和器件编程等四部分组成,用它开发Altera CPLD器件的具体过程如下:
2.1图形输入
利用MAX+PLUSⅡ软件进行逻辑设计的输入方法有原理图输入、文本输入和其它EDA tool生成的EDIF网表输入,其中原理图设计输入最为直接,且容易实现仿真、便于电路调整,是一种常用的方式。其步骤为:
(1)指定设计项目名称。启动MAX+PLUSⅡ后,在File菜单中选Project Name,键入设计项目名,点OK按钮后MAX+PLUSⅡ的标题条将显示新的项目名字;
(2)建立新文件。在File菜单中选New,选Graphic Editor,然后按下OK按钮,会出现一个图形编辑窗口;
(3)输入图元、74系列符号和宏功能符号。在图形编辑窗口的空白处单击鼠标右键,选EnterSymbol,在Symbol Libraries框中选…\maxplus2\max2lib\prim路径,再找到所需的图元(如两输入与门and2),双击后图元会出现在图形编辑窗中;同理在…\maxplus2\max2lib\mf路径中可输入所需的74系列符号(如74373);在…\maxplus2\max2lib\ mega__lpm路径中可输入所需的LPM符号如lpm__mult);
(4)连线。将鼠标移至一个端口处,此时鼠标指示符自动变为“+”形状,然后按住鼠标拖至待连的另一个端口,放开左键即画好一条线;
(5)放置输入输出引脚。在图形编辑窗口的空白处单击鼠标右键,选Enter Symbol,在SymbolName框中键入input或output,则输入或输出符号会出现在图形编辑窗中。
(6)为引脚和引线命名。在INPUT或OUTPUT引脚的PIN__NAME处双击鼠标左键,然后输入指定的名字即可;选中需命名的引线(单击后引线变高亮),可为引线命名;
(7)保存文件。在File菜单中选Save(或Save As重新命名)可保存文件。
2.2项目编译
MAX+PLUSⅡ编译器可以检查项目中的错误并进行逻辑综合,将项目最终设计结果加载到Altera器件中去,并为模拟和编程产生输出文件。主要工作有:
(1)选择器件。在Assign菜单内选Device项,出现Device对话框,在Device Family框选某一器件,比如要选MAX7000S系列84脚PLCC封装6ns的7128S器件,可在Device框选EPM7128SLC84-6;
(2)分配引脚。通常编译器可自动对项目进行引脚分配,但也可以人为分配引脚,方法是在AssignMenu菜单中选 Pin/Location/Chip,然后在NodeName框内输入引脚名,在Chip Resource框内选引脚号,按下Add按钮,按下OK按钮即可。
(3)打开编译器窗口。在MAX+PLUSⅡ菜单中选Compiler,会出现编译器窗口;
(4)运行编译器。在编译器窗口中点击Start按钮,就开始对所要的编译项目进行处理。如有错误信息,可用鼠标选中该错误,并按下Locate按钮,从而找到错误位置并改正。
2.3阅读报告文件
编译完成后,可双击编译器窗口中的报告文件(*.rpt)图标,打开文本编辑器,可看到器件一览表、项目编译信息、文本层次结构以及资源使用、逻辑单元互连等情况。
2.4观察试配结果
在MAX+PLUSⅡ菜单中选Floorplan Editor,会出现底层图编辑器窗口,在这里可观察到器件封装的所有引脚以及它们的功能(器件视图),同时可观察到所有LAB及其单个逻辑单元(逻辑阵列块视图),如有必要,还可编辑修改当前的分配。
2.5在线编程
一个项目在设计输入和编译完成后,就可对器件编程了。这里选用并口下载电缆ByteBlaster的JTAG模式进行在线编程。ByteBlaster 下载电缆包括与PC机并口相连的25针阳性插座头、与PCB板相连的10针插头和25针到10针的变换电路。ByteBlaster的25针插座头和10 针插头的连线定义见表1。
图1是ByteBlaster的数据变换电路,它实际上是由一片74244和7个33Ω的电阻组成的电路,可自行焊接制作。
对器件在线编程的步骤如下:
(1)编译一个项目。用MAX+PLUSⅡ的编译器产生用于MAX器件的编程目标文件(*.pof);
(2)连线。将ByteBlaster电缆的25针插座头一端与微机的并行口相连,另一端10针插头与装有可编程逻辑器件的PCB板上的阳极插座相连,见图2。PCB板还为ByteBlaster电缆提供+5V电源。
(3)设置编程方式。在Option菜单中选Hardware Setup,会出现Hardware Setup窗口,在Hardware Type框中选ByteBlaster,并指定使用并行口(LPT1),按OK按钮;
(4)编程。在MAX+PLUSⅡ菜单中选Programmer,会打开编程器窗口,点击Program按钮即开始对器件进行编程。
3结束语
采用MAX+PLUSⅡ软件开发CPLD,设计速度是很快的,对于一个几千门的电路,从设计输入到器件编程完毕、用户拿到设计好的逻辑电路,大约只需几小时,而设计处理一般在数分钟内可完成。此外,使用MAX+PLUSⅡ的设计者无需精通器件内部的复杂结构,利用并口下载电缆ByteBlaster的 JTAG模式又可进行在系统编程,这给电路设计人员提供了一种快速高效的电路设计方法和花费极低的编程手段,因而带来极大方便。
参考文献
1宋万杰,罗丰,吴顺君编著.CPLD技术及其应用.西安:西安电子科技大学出版社,1999,9