HDL 综合工具: Synplify
综合工具将 HDL 程序转换为 EDA 工具可以识别的形式,对应
为具体的电路结构形式;在采用 PLD 进行设计时,综合工具
可以将设计映射到具体的 CPLD 或 FPGA 器件上,对应得到与
器件相关的技术实现方式;
不同的综合工具对 HDL 的综合能力不同,对 HDL 标准综合的
程度也不同;采用不同器件时,会得到不同的综合效果;
综合结果可以给出电路实现的具体方式以及电路的时间延迟
信息,是对程序设计的重要评价方式。
Synplify 基本设计流程
打开程序—建立约束—建立文件—运行程序—结果分析
例:全加器的综合(Synplify Pro 7.6)
点击图标、打开程序
建立约束和选项
点击 Impl Option 按钮,打开约束和选项窗口;
器件选择:
选择技术(公司型号)、器件类别、封装形式、速度级别;
对布局选项进行设置(对于不同的技术,选项不同);
为了分析对比的方便,在本课程中固定选用 Altera 的
Flex10k 型号的器件;
约束选择:
在设计开始时,通常采用自动约束方式,以评估设计可
能实现的最快速度,然后再根据电路的具体需求,对约束条
件进行手动调整;
自动约束只能对 Atera 和 Xilinx 的部分器件实行。
要想对 IO 端口进行自动约束,应该在约束选项中,选择
Use clock period for unconstrained IO;否则系统只对触
发器之间的通道进行约束。
建立项目、编辑文件
打开或新建一个项目(Open Project —New Project) ;
添加文件(Add File) ;
点击文件名,打开文本窗口,进行文件的输入编辑;
保存编辑完成的文件后, 回到项目窗口, 运行综合程序 (Run) ;
结果分析(.srr 文件)
记录文件分析(View Log) :可以得到器件综合的各种信息,
主要有如下重要信息:
时间特性(TIMING REPORT) :
最长延迟时间/最高频率;各端口的时间信息;
面积特性(AREA REPORT) :
器件使用量(IO 单元、LUT 单元、DSP 块) ,门输入数量,
节点数量;
结构查看
综合后的电路结构可以通过电路视图分析综合的效果,
电路视图可以给出电路中所有基本器件的种类和数量,也给
出端口和节点的数量;每个器件、端口、节点都给予了相应
的命名;在电路视图中双击任何器件,可以显示程序中与之
相关的语句;
RTL 视图
由基本电路单元连接成的电路,与综合器件无关,由于
不同语句不同方法会导致不同的 RTL 电路,因此 RTL 电路可
以用于客观地评价电路的设计效果;由于基本电路单元在
ASIC 设计中得到大量使用,因此 RTL 视图有助于评估该电路
在全定制设计时的情况;
技术视图
与综合器件相关的电路图;点击主窗口的器件选择,可
以选择各类不同的 PLD 器件进行综合;器件选择后,必须重
新单击“Run”进行综合;选择不同的器件可以综合出不同的
技术视图;
技术视图可以分为单元电路图和门级电路图两种;
单元电路图 显示电路使用的FPGA单元块的使用量和相应
的连接关系,可以用于评价该电路采用 PLD 设计时在特定器
件中的使用情况;
门级电路图将电路在该器件中的实现情况分解到基本门
电路(4 输入以内)的连接方式,可以用于评估将该电路从
PLD 设计转化为半定制设计(标准门单元设计)后的情况;
在技术视图中,可以查看各器件的时间特性(HDL
Alalyst—Show Timing Information) ,选择这一操作后,每
个器件上用红色数字标明该器件的信号到达时间和时间容
限;可以通过显示关键路径(Show Critical Path )选出最
长延迟路径;