LeonardoSpectrum是Mentor公司出品的一款HDL逻辑综合软件,其运行界面如图1所示,该软件有三种逻辑综合方式:SynthesisWizard(综合向导)、
Quick Setup(快速完成)、FlowTabs(详细流程)方式。具体采用哪种方式可点击工具栏快捷图标或从Tools菜单中选择,如图2所示。

图1 LeonardoSpectrum软件界面

图2 逻辑综合的三种方式
综合向导方式是最简单的方式。快速完成方式的功能与向导方式一样,只是从菜单中选择命令完成。详细流程方式选中后出现数据表格,包括Technology、Input、Constraints、Optimize、Output与Physical六个子项,点击每一个子项就可进行相应的设置及参数输入,其过程与综合向导方式一样,只是Constraints子项的选项要多一些。如果会使用综合向导方式,也就会使用其它两种方式。
因此,在这里只介绍SynthesisWizard(综合向导)方式。如果是第一次使用Leonardo.Spectrum软件,建议采用综合向导方式,该方式共分四步。在每一步中都包含以下按钮:帮助(得到进一步帮助),取消(退出综合向导),上一步(返回到综合向导的前一步),在设置过程中能随时点击进行选择。
1、指定器件库
选择SynthesisWizard(综合向导)方式后,出现如图3 所示器件设置对话框。

图3 指定器件库
2、输入文件
在如图4 所示对话框中,首先设置工作目录,点击设置工作目录出现如图4所示对话框,工作目录底下将保存所有的输出文件。然后点击输入文件,出现如图5所示对话框。Encoding选项是为状态机选择编码方式。如选中Resource
Sharing表示没有连接在一起的运算器(加法器,乘法器)将被共享。设置完后点击下一步。

图4 输入文件
图5 设置工作目录

图5 设置输入文件
3、全局约束条件
指定时钟频率,如20MHz,则相应的时钟周期自动显示为50ns,最大延迟为50ns,并在下面的窗口自动出现该时钟波形。当然也可指定时钟周期,软件则自动显示相应的时钟频率、最大延迟及时钟波形。所有端口与寄存器之间的路径均约束在一个时钟周期内。设计人员还可单独指定每个端口与寄存器之间的最大延迟。如图4.35所示,然后点击下一步。如果要进行更多的定时约束条件设置,需要在FlowTabs(详细流程)方式中选择Setting
Timing Constraints。

图6 全局约束条件
4、输出文件
设置输出网表文件的文件名、路径及格式等,一般情况下使用缺省值即可,如图7所示。点击完成后就关闭综合向导开始进行综合,在综合运行过程中,在信息窗口可看到滚动的综合结果及运行流程,出现本例中的pseudorandom.vhd的器件使用报告。如果信息窗口是关闭的,可点击Window\pseudorandom.vhd再次打开设计文件。在综合完成后信息窗口显示Finished
Synthesis run。

图7 输出文件
本例中器件是选用的FLEX10K系列,综合完成后可在MAX+PLUSⅡ中设置当前项目为pseudorandom,用文本编辑器打开pseudorandom.edf文件,将pseudorandom.edf文件作为MAX+PLUSⅡ的设计源文件,然后进行编译、仿真、定时分析及器件编程,完成整个系统的设计过程。如果QuartusⅡ软件,则将综合结果作为QuartusⅡ的设计源文件,再完成编译、仿真、定时分析及器件编程等过程。
同理,可选择Xinlinx等其它PLD公司的器件系列,完成上述综合过程后,将综合结果.edf文件调到支持该器件的开发软件中完成后续工作。