Intel FPGA权威设计指南:基于Quartus Prime Pro 19集成开发环境
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.9 设计的适配

本节将介绍Quartus设计适配的原理,实现适配过程,并对适配结果进行分析。

2.9.1 适配器设置选项

打开“Settings-top”对话框,如图 2.88 所示。在该对话框左侧的“Category”窗口中,选中 Compiler Settings。在右侧窗口中,单击“Advanced Settings(Fitter)...”按钮,弹出“Advanced Fitter Settings”对话框。在该对话框中,给出了适配器的设置选项(部分),适配器设置选项(全部)的功能描述如表2.14所示。

图2.88 “Settings-top”对话框

表2.14 适配器设置选项的功能描述

续表

续表

续表

续表

2.9.2 适配的实现

本节将对设计执行适配,主要步骤包括:

(1)选择下面方式之一启动适配过程。

① 在Quartus Prime主界面主菜单下,选择Processing->Start->Start Fitter。

② 在“Compilation Dashboard”界面中,单击“Fitter”(适配)前面的按钮。

(2)Quartus开始执行对设计的适配过程,主要包括Plan(规划)、Place(布局)、Route (布线)和Fitter(Finalize)[适配(完成)],如图2.89所示。

图2.89 适配过程结束后的界面

(3)当成功执行完适配过程后,在“Fitter”的最前面使用符号标记。

2.9.3 查看适配后的结果

本节将对适配后的结果进行分析,内容主要包括查看适配后的报告、查看适配后的网表和查看适配后的布局布线。

1.查看适配后的报告

本部分将查看适配后的报告,主要步骤包括:

(1)通过下面方式之一打开适配后的报告。

① 在Quartus Prime主界面主菜单下,选择Processing->Compilation Report。

② 在 Quartus Prime 主界面左下方的“Tasks”窗口中,在“Compilation Report”标题下,找到并单击“Compilation Report”选项。

③ 在“Compilation Dashboard”界面中,单击“Fitter”后面的(Fitter Summary)按钮。

(2)打开“Compilation Report-top”界面,如图2.90所示。

图2.90 “Compilation Report-top”界面

① Summary给出了设计中所占用片内各种资源的情况。

② Plan Stage(规划阶段)文件夹给出了规划阶段的报告信息,如图2.91所示。

③ Place Stage(布局阶段)文件夹给出了布局阶段的报告信息,如图 2.92 所示。典型地,Resource Usage Summary(资源利用率总结)文件给出了该设计所使用逻辑资源的详细信息。

④ Route Stage(布线阶段)文件夹给出了布线阶段的报告信息,如图 2.93 所示。典型地,Routing Usage Summary(布线利用率)文件给出了该设计所使用布线资源的详细情况。

图2.91 规划阶段的报告信息

图2.92 布局阶段的报告信息

图2.93 布线阶段的报告信息

⑤ Finalize Stage(完成阶段)文件夹给出了完成阶段的报告信息,如图2.94所示。

思考与练习2-9:请读者仔细分析适配后的报告细节。

2.查看适配后的网表

图2.94 完成阶段的报告信息

本部分将查看适配后的网表,主要步骤包括:

(1)使用下面的方式之一打开适配后的网表。

① 在 Quartus Prime 主界面左下方的“Tasks”窗口中,找到并单击“Analysis”标题下的“Technology Map View(Post-Fitting)”选项。

② 在“Compilation Dashboard”界面下,找到并单击“Fitter(Finalize)”右侧名字为“Technology Map View‘final’ snapshot”的按钮。

③ 在 Quartus Prime 主界面主菜单下,选择 Tools->Netlist Viewers->Technology Map Viewer(Post-Fitting)。

(2)打开适配后的网表结构,如图2.95所示。

图2.95 适配后的网表结构

① 在输入引脚a和b的后级自动插入了IO_IBUF(I/O输入)缓冲区。

② 在输入引脚clk后除插入IO_IBUF(I/O输入)缓冲区外,还插入了CLKCTRL块。③ 在输出z[0..5]的前级自动插入了IO_OBUF(I/O输出)缓冲区。

思考与练习2-10:请读者分析图2.95给出的网表结构。

3.查看适配后的布局布线

Chip Planner 通过提供芯片资源的可视化显示简化了布局规划的分析。通过 Chip Planner,设计者就可以查看编译后的布局、连接和布线路径。设计者也可以修改分配,如创建和删除资源分配。

通过打开Quartus Prime中的Chip Planner来查看适配后的布局布线,主要步骤包括:

(1)通过下面的方式之一打开Chip Planner工具。

① 在Quartus Prime主界面主菜单中,选择Tools->Chip Planner。

② 在 Quartus Prime 主界面左下方的“Tasks”窗口中,找到“Analysis”标题。在该标题下,选择并单击“Chip Planner”选项。

③ 在如图 2.95 所示的网表结构中,选中任意一个设计元素,单击鼠标右键,出现浮动菜单。在浮动菜单内,选择Locate Node->Locate in Chip Planner。

(2)打开Chip Planner工具,如图2.96所示。在该界面右侧的窗口中,提供了3个默认的标签。

图2.96 Chip Planner视图

①“Properties”标签页。

在Chip Planner主界面主菜单下,选择View->Properties,可以显示该标签页。该标签页显示了在 Chip Planner 中当前所选择对象(如原子、路径、逻辑锁定区域或布线元素)的详细属性。

②“Layers Settings”标签页。

在Chip Planner主界面主菜单下,选择View->Layers Settings,可以显示该标签页。通过该标签页,允许设计者查看与设计相关的指定架构的信息,如图2.97所示。

● 设计使用的布线资源:查看如何连接块,以及连接块的信号布线。

● LE 配置:查看设计中逻辑元素的配置。例如,可以查看使用了哪个 LE 输入、LE 是否使用寄存器和LUT,以及穿过LE的信号流。

● ALM 配置:在设计中查看 ALM 配置。例如,可以看到所使用的 ALM 输入;ALU 是否利用寄存器、上面的 LUT、下面的 LUT 或所有资源。此外,也可以看到通过ALM的信号流。

● I/O 配置:查看器件 I/O 资源的适用情况。例如,可以查看正在使用的I/O资源的组件、是否使能延迟链设置、所设置的I/O标准,以及穿过I/O的信号流。

图2.97 “Layers Settings”标签页

● PLL 配置:查看设计中的 PLL 配置。例如,可以查看该设计中使用的控制信号和PLL的设置。

● 时序:查看 FPGA 元素输入和输出之间的延迟。例如,可以分析 DATAB 输入到COMBOUT输出的时序。

此外,在该标签页顶部的下拉框中提供了“Basic”、“Detailed”和“Floorplan Editing”选项。

③“Color Legend”标签页。

在Chip Planner主界面主菜单下,选择View->Color Legend,可以显示该标签页。

(3)在 Chip Planner 主界面主菜单下,选择 View->Bird’s Eye View,可以显示鸟瞰图界面,如图2.98所示。

鸟瞰图显示整个芯片资源使用情况的高级图片,并且提供了在Chip Planner中导航感兴趣区域的一种快速和高效的方法。

当设计者在芯片两端查看设计的某些部分时,可以在不丢失参考框架的情况下快速浏览资源元素。

通过按住鼠标左键,并用鼠标拖动鸟瞰图中的巨型方框,使得感兴趣的部分出现在Chip Planner中间的视图范围内,以便于设计者观察设计细节。如图 2.99 所示,通过鸟瞰图定位到该设计所使用的逻辑资源区域。

图2.98 鸟瞰图界面

图2.99 通过鸟瞰图定位到设计所使用的逻辑资源区域

(4)选择图 2.95 中的设计元素,如名字为“a_1”的触发器,单击鼠标右键,出现浮动菜单。在浮动菜单内,选择Locate Node->Locate in Chip Planner。可以直接定位到图2.100中的逻辑单元。如图2.100所示,该界面的右侧给出了3个标签页。

图2.100 名字为“a_1”的触发器在芯片中的布局和连线

①“Properties”标签页。在该标签页中,给出了 Full Name(全名)、Full Name with entity(带有实体的全名)、Coordinate(坐标)、Resource Type(资源类型)、Location(位置)和Location Assignment(位置分配)信息。

②“Fan-in”标签页。在该标签页中,给出了当前所选中设计元素的所有输入信号,如图2.101所示。

③“Fan-out”标签页。在该标签页中,给出了当前所选中设计元素的所有输出信号,如图2.102所示。

图2.101 “Fan-in”标签页

图2.102 “Fan-out”标签页

(5)在Chip Planner主界面左下方的“Tasks”窗口中,展开“Clock Reports”选项。在展开项中,找到并用鼠标左键双击Report Clock Details...,如图2.103所示。

(6)弹出“Report Clock Details”对话框,如图 2.104 所示。在该对话框中,选中“Report destination nodes”前面的复选框。

图2.103 “Tasks”窗口

图2.104 “Report Clock Details”对话框

(7)单击“OK”按钮,退出“Report Clock Details”对话框。

(8)在“Report”窗口中,给出了要报告的时钟信息,如图 2.105 所示。在右侧窗口中,根据图例给出的不同颜色观察 Source Node、Clkctrl Node 和 Destination Node,如图2.106所示。

(9)在“Report”窗口中,选择任何一个选项,弹出浮动菜单,如图 2.107 所示。在该浮动菜单内,提供了Zoom To Report、Select Report、Properties...、Delete和Delete All子菜单。

(10)退出Chip Planner视图界面。

图2.105 “Report”窗口

图2.106 时钟信息窗口

思考与练习2-11:在“Tasks”窗口中,操作Report Registered Connections...,观察其连接状态。

思考与练习2-12:观察整个设计的逻辑资源使用连线资源的情况。

图2.107 Report内的浮动子菜单