![Intel FPGA权威设计指南:基于Quartus Prime Pro 19集成开发环境](https://wfqqreader-1252317822.image.myqcloud.com/cover/850/41202850/b_41202850.jpg)
2.9 设计的适配
本节将介绍Quartus设计适配的原理,实现适配过程,并对适配结果进行分析。
2.9.1 适配器设置选项
打开“Settings-top”对话框,如图 2.88 所示。在该对话框左侧的“Category”窗口中,选中 Compiler Settings。在右侧窗口中,单击“Advanced Settings(Fitter)...”按钮,弹出“Advanced Fitter Settings”对话框。在该对话框中,给出了适配器的设置选项(部分),适配器设置选项(全部)的功能描述如表2.14所示。
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_205_2.jpg?sign=1738852552-7ZGRI5EE5MMvzomr7gVblT7g1TaL4lfb-0-9b90aca732221ee83d13d718f406b4d3)
图2.88 “Settings-top”对话框
表2.14 适配器设置选项的功能描述
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_206_1.jpg?sign=1738852552-NdZlwaZ2Lz0MZJrzrwidG2rdqIjYWb7v-0-65f1d0c97b0b4c4385508f6899d13eeb)
续表
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_207_1.jpg?sign=1738852552-rKWXVaDAmdF9jwfSDfKt6q4zeMvYFawU-0-b9707b36a6072d664c2830fda40ffd7c)
续表
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_208_1.jpg?sign=1738852552-pjFDEfacaYEOsChwxdeXInDDBZ5UeXes-0-1601f1ad35e388d3e4752d6ba91f7f78)
续表
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_209_1.jpg?sign=1738852552-FD5JQyNEbOlvXh2Tg9QlY3qpTSkPtcn1-0-c8a262d5657c37dee4068d168ada3807)
续表
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_210_1.jpg?sign=1738852552-ZhwCy2IEY6EBnfbc2FgjU0aFHC1wGFsD-0-2075c29c17d591971551825a20ff6623)
2.9.2 适配的实现
本节将对设计执行适配,主要步骤包括:
(1)选择下面方式之一启动适配过程。
① 在Quartus Prime主界面主菜单下,选择Processing->Start->Start Fitter。
② 在“Compilation Dashboard”界面中,单击“Fitter”(适配)前面的按钮。
(2)Quartus开始执行对设计的适配过程,主要包括Plan(规划)、Place(布局)、Route (布线)和Fitter(Finalize)[适配(完成)],如图2.89所示。
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_210_3.jpg?sign=1738852552-eOBrdIImFidozGX2sV5kqOdYmyyfiiN1-0-54b97e006cc0d35b68dafb1bb6630172)
图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所示。
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_211_3.jpg?sign=1738852552-Nskcb3Ykj8iVCd1BpJlcCp486r75UrHV-0-4e4b1872f17dc6b07a221183986a8a6a)
图2.90 “Compilation Report-top”界面
① Summary给出了设计中所占用片内各种资源的情况。
② Plan Stage(规划阶段)文件夹给出了规划阶段的报告信息,如图2.91所示。
③ Place Stage(布局阶段)文件夹给出了布局阶段的报告信息,如图 2.92 所示。典型地,Resource Usage Summary(资源利用率总结)文件给出了该设计所使用逻辑资源的详细信息。
④ Route Stage(布线阶段)文件夹给出了布线阶段的报告信息,如图 2.93 所示。典型地,Routing Usage Summary(布线利用率)文件给出了该设计所使用布线资源的详细情况。
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_212_1.jpg?sign=1738852552-g1viM92PLTXMAOmnyv8zuyuFc02cwJCk-0-13a600d9e92e799002d300305960dda4)
图2.91 规划阶段的报告信息
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_212_2.jpg?sign=1738852552-4pjmFB9ebiPmAlDvySBcLSoda9l9K8bw-0-c5dd3b34d6a6d4dde47ffff6038e80ee)
图2.92 布局阶段的报告信息
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_212_3.jpg?sign=1738852552-mKhXmi8AStBYFaYthbz4HTR72MwWde7x-0-74f8da60b198d125b55977ebc80c4cd9)
图2.93 布线阶段的报告信息
⑤ Finalize Stage(完成阶段)文件夹给出了完成阶段的报告信息,如图2.94所示。
思考与练习2-9:请读者仔细分析适配后的报告细节。
2.查看适配后的网表
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_212_4.jpg?sign=1738852552-yOJQslGbwkcPqX6satW0NZSJQQZrin71-0-021d51da3a52a3e59375c100d4bb0bc3)
图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所示。
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_212_6.jpg?sign=1738852552-BQeLYstwM30vs6SEaTHfp52VewfWQbER-0-b5660abdac4cb9c8eeafba1a2b36e567)
图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个默认的标签。
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_213_1.jpg?sign=1738852552-mwIZG8bXu8FNGVYstmEVQ3hntkCXC8gp-0-cc89e23161fb6ca9bf76f0cf8650a6ca)
图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的信号流。
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_214_1.jpg?sign=1738852552-J0pm4VyJrsyw6KbunrTixSgjCwffiI6S-0-6076abffc16471b9ffc4f13e21f2ada4)
图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 所示,通过鸟瞰图定位到该设计所使用的逻辑资源区域。
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_214_2.jpg?sign=1738852552-EAUGr9joUrWt2hJu9JFsMxcSAC1F2T06-0-1c1e107afd129c4076a248f3b6e411a8)
图2.98 鸟瞰图界面
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_215_1.jpg?sign=1738852552-8654XDiC8nd5gCZlv7jTHQoyw1APpG4Y-0-22cebcfa925863d1fb63d3c555a31059)
图2.99 通过鸟瞰图定位到设计所使用的逻辑资源区域
(4)选择图 2.95 中的设计元素,如名字为“a_1”的触发器,单击鼠标右键,出现浮动菜单。在浮动菜单内,选择Locate Node->Locate in Chip Planner。可以直接定位到图2.100中的逻辑单元。如图2.100所示,该界面的右侧给出了3个标签页。
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_215_2.jpg?sign=1738852552-WwXTfCZZ9IbHNue5olcYC3V16RwAesta-0-4b9e41db5091a0a264f7fba0c635b332)
图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所示。
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_216_1.jpg?sign=1738852552-31XKmdHgHdPrKnp1tmjM7MnNRdv674Mj-0-e6e9fa8ebe6db48af55e2f0eab25bc87)
图2.101 “Fan-in”标签页
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_216_2.jpg?sign=1738852552-TDmXzuhhaYU2EqHb2DtZTSrHNPUS2WuR-0-33d066d92d895dc2c17621f82465ac3b)
图2.102 “Fan-out”标签页
(5)在Chip Planner主界面左下方的“Tasks”窗口中,展开“Clock Reports”选项。在展开项中,找到并用鼠标左键双击Report Clock Details...,如图2.103所示。
(6)弹出“Report Clock Details”对话框,如图 2.104 所示。在该对话框中,选中“Report destination nodes”前面的复选框。
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_216_3.jpg?sign=1738852552-BSXjF4fh4fp8u1L2op3tpDHDoeDc6gbg-0-daca6e64f1ffec937d733294ad91efc7)
图2.103 “Tasks”窗口
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_216_4.jpg?sign=1738852552-iX2m7jkquFjsOdRG1QZDyKIrdihCtOJf-0-5c52343dd11616f395233cfab244aab3)
图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视图界面。
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_217_1.jpg?sign=1738852552-VKOFOGMaucwGGDZcborRqGu4GbvfEbSd-0-030d788d8b8822c546d7bdf1b9c276ee)
图2.105 “Report”窗口
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_217_2.jpg?sign=1738852552-WMd5j81VPf0NUqD2b06IqbuBpYzOoORc-0-6fff295dc000aacbedae05533b78c0ee)
图2.106 时钟信息窗口
思考与练习2-11:在“Tasks”窗口中,操作Report Registered Connections...,观察其连接状态。
思考与练习2-12:观察整个设计的逻辑资源使用连线资源的情况。
![](https://epubservercos.yuewen.com/A53FE3/21440186201517906/epubprivate/OEBPS/Images/38244_217_3.jpg?sign=1738852552-rBuKxKzlsWrrUp7IET1pz6dhqY2EQKu2-0-1bdad1a0463aec6f258f2c468fd45f9d)
图2.107 Report内的浮动子菜单