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 )选出最 长延迟路径;