AN 738:Intel® Arria® 10器件设计指南

ID 683555
日期 6/30/2017
Public
文档目录

1.10. 设计检查表

使用本查询表来验证您在设计中是否遵循了每个阶段的设计指南。
编号 是否完成? N/A 检查表项目
1.     “必要时创建详细的设计规范和测试计划。”
2.     “在早期阶段利用结构图规划时钟域、时钟资源和I/O接口。”
3.     “选择影响系统设计,特别是I/O接口的IP。”
4.     “如果计划对IP使用OpenCore Plus受限模式,应确保电路板设计支持此工作模式。”
5.     “利用Qsys进行系统和处理器设计。”
6.     “根据收发器、I/O管脚数量、LVDS通道、封装类型、逻辑/存储器/乘法器密度、 PLL、时钟布线和速度等级对器件进行选择。”
7.     “保留器件资源,以用于将来的开发和调试。”
8.     “考虑纵向器件移植可用性和要求。”
9.     “使用Early Power Estimator (EPE)电子数据表对功耗进行评估,在逻辑设计完成前规划冷却解决方案和电源供应。”
10.     “设置设计中的温度感应二极管,以测量散热热管理的器件结温。”
11.     “选择一个配置方案对配套器件和电路板连接进行规划。”
12.     “如果要使用器件密集度非常大的AS配置模式,需确认目标FPGA密集度是否有足够大的配置器件。”
13.     “如需使用带有并行闪存加载程序的闪存器件,请查看所支持器件列表。”
14.     “要确保配置方案和电路板支持所需特性:设计安全性,远程更新,单粒子翻转(SEU)缓解。”
15.     规划电路板设计,以支持要求的可选配置管脚CLKUSR和INIT_DONE。
16.     “规划板级设计,以使用Auto-restart after configuration error选项。”
17.     “利用片上调试特性分析内部信号和执行高级调试技术。ARM DS-5 <keyword keyref="companyname-tm"/> Edition对SoC设计提供多种调试特性。”
18.     “提前选择片上调试方案,以规划存储器和逻辑要求,I/O管脚连接和电路板连接。”
19.     “如果希望使用Signal Probe增量布线、SignalTap II嵌入式逻辑分析仪、逻辑分析仪接口、在系统存储器内容编辑器、在系统源和探头或虚拟JTAG宏功能,应根据可用于调试的JTAG连接对系统和电路板进行规划。”
20.     “规划少量的额外逻辑资源,用于实现JTAG调试特性所需的JTAG集线器逻辑。”
21.     “使用SignalTap II Embedded Logic Analyzer进行调试时,需要保留器件存储器资源,以在系统操作期间采集数据。”
22.     “预留使用Signal Probe或Logic Analyzer接口进行调试的I/O管脚,以免今后为适应调试信号而不得不更改设计或电路板。”
23.     “确保电路板要支持调试模式,在此模式中调试信号不影响系统运行。”
24.     “根据外部逻辑分析仪或者混合信号示波器的要求来整合pin header或者mictor connector。”
25.     “为能够以增量方式使用调试工具和减少编译时间,应确保打开增量编译,以避免为了修改调试工具而对设计重新编译。”
26.     “要将Virtual JTAG megafunction用于定制的调试应用,作为设计过程的一部分,需要在HDL代码中对其例化。”
27.     "为能够使用In-System Sources and Probes特性,应在HDL代码中使宏功能实例化。"
28.     "要对RAM或ROM模块或LPM_CONSTANT megafunction使用In-System Memory Content Editor,需要开启Allow In-System Memory Content Editor,使IP catalog中的存储器模块能独立于系统时钟选项捕获和更新内容。"
29.     “针对上电进行电路板设计:配置器件和配置管脚驱出(drive out)前, Arria® 10输出缓存处于三态。”
30.     “将电源电压斜坡设计为单调形式。”
31.     “设置POR时间也以确保电源稳定。”
32.     “设计电源顺序和稳压器使器件具有最佳可靠性。在连接电源之前,首先在电路板之间连接GND。”
33.     “正确连接 Arria® 10 GX、GT和SX器件系列管脚连接指南中指定的所有电源管脚。”
34.     “连接VCCIO管脚和VREF管脚以支持每个bank的I/O标准。”
35.     “找出电路板上FPGA电源管脚或其他电源管脚的特殊要求,然后确定电路板上的哪些器件可以共用一条电源轨。”
36.     “遵循 Arria® 10 GX、GT和SX器件系列管脚连接指南中所建议的电源共享和隔离共享,以及每一个管脚的详细指南。”
37.     “使用PDN工具来规划电源分配网表和去耦电容。”
38.     “即使设计中没有使用所有的PLL,也应连接所有的PLL电源管脚以减少噪音。关于管脚电压要求,请参考 Arria® 10 GX、GT和SX器件系列管脚连接指南。”
39.     “电源网应该由一个隔离电源平面、一个电源平面切割区或至少20 mil的粗走线提供。”
40.     “检查所有配置管脚连接和上拉/下拉电阻是否对于您的配置方案正确设置。”
41.     “将配置DCLK和TCK管脚设计成无噪声的。”
42.     “如果JTAG管脚未使用,那么将其连接到一个稳定的电压电平。”
43.     “将JTAG管脚正确地连接到下载电缆接头。 确保管脚顺序不要颠倒。”
44.     “要在上电期间禁用JTAG状态机,需要通过一个1-kW电阻将TCK管脚拉低以确保TCK上不会出现意外的上升沿。”
45.     “通过一个1-k到10-kW电阻将TMS和TDI管脚拉高。”
46.     “将TRST直接连接至VCCPGM(将管脚连接至低电平可禁止JTAG电路)。”
47.     “由于下载电缆连接到您器件的JTAG管脚,因此要保证下载电缆与JTAG管脚电压相互兼容。”
48.     “按照建议对JTAG信号进行缓冲,特别是对于连接器,或者电缆驱动三个以上器件时。”
49.     “如果您的器件在一个配置链中,则要确保链中所有器件正确地连接。”
50.     “MSEL管脚应连接选定的配置方案,不应处于悬空状态。为提高测试或调试期间配置模式切换的灵活性,应将电路板的每个管脚接至VCCPGM或GND,不应使用上拉或下拉电阻。”
51.     “将nIO_PULLUP直接连接到GND。”
52.     “在配置、初始化以及用户模式期间,将nCE(芯片使能)管脚保持为低电平。”
53.     “如果需要,开启device-wide output enable选项。”
54.     “指定未使用I/O管脚的保留状态。”
55.     “仔细检查Quartus Prime软件生成的.pin文件中的管脚连接。请勿连接RESERVED管脚。”
56.     “将VREF管脚设计成无噪音的。”
57.     “分流靠近器件的电路板层上的大量总线信号以降低串扰。”
58.     “可能的话,如果两个信号层相互靠近,可沿正交方向走线。间隔距离为走线宽度的2至3倍。”
59.     “检查所选I/O标准的I/O端接和阻抗匹配,特别是电压参考标准。”
60.     “使用IBIS模型(可用情况下)执行板级仿真。”
61.     “对Quartus Prime高级I/O时序分析进行电路板走线模型配置。”
62.     “使用Quartus Prime Pin Planner进行管脚分配。”
63.     “将Quartus Prime Fitter消息和报告用于管脚分配的签核。”
64.     “验证Quartus Prime管脚分配是否匹配原理图和电路板布局工具中的管脚分配。”
65.     “设计完成前,通过I/O Assignment Analysis,使用Create Top-Level Design File命令来检查I/O约束。”
66.     “根据系统要求规划I/O信号类型。”
67.     “允许软件对差分管脚对的负管脚进行位置约束。”
68.     “为每个I/O管脚选择合适的信号类型和I/O标准。I/O bank位于I/O列内。每个I/O bank包含其自身的PLL、DPA和SERDES电路。”
69.     “确保目标I/O bank支持相应的I/O标准。”
70.     “对在相同I/O bank中共享电压电平的I/O管脚进行布局。”
71.     “验证每个I/O bank的所有输出信号是否会以bank的VCCIO电压电平输出。”
72.     “验证每个I/O bank的所有电压参考信号是否会使用bank的VREF电压电平。”
73.     “检查I/O bank是否支持LVDS和收发器特性。”
74.     “对每个存储器接口使用 Arria® 10 EMIF IP megafunction (或者IP core),并遵循相关文档中的连接原则/规定。”
75.     “将专用DQ/DQS管脚和DQ组用于存储器接口。”
76.     “进行复用管脚设置并检查这些管脚作为普通I/O使用时是否存在任何限制。”
77.     “检查对I/O接口有帮助的可用器件I/O特性:电流强度、摆率、I/O延迟、开漏、总线保持、可编程上拉电阻、PCI钳位二极管、可编程预加重和VOD。”
78.     “考虑OCT特性,以节省板级空间。”
79.     “验证是否所有的管脚位置都支持要求的端接方案。”
80.     “为高速LVDS接口选择相应的DPA、non-DPA或者soft-CDR模式。”
81.     “使用正确的专用时钟管脚,并将布线信号用作时钟和全局控制信号。”
82.     “对时钟管理使用器件小数PLL。”
83.     “分析各PLL和时钟管脚的输入和输出布线连接。确保PLL输入来自专用时钟管脚或其他PLL。”
84.     “使能PLL特性,并检查参数编辑器中的设置。”
85.     “要确保选择正确的PLL反馈补偿模式。”
86.     “检查PLL是否提供了要求的时钟输出数以及是否使用了专用时钟输出管脚。”
87.     “将时钟控制模块用于时钟选择和断电。”
88.     “对设计进行分析,检查是否可能存在SSN问题。”
89.     “尽可能减少在同一时间开关电压的管脚数。”
90.     “对高开关I/O使用差分I/O标准和低电压标准。”
91.     “对高开关I/O使用较低的驱动强度。默认的驱动强度可能会高于设计需要的强度。”
92.     “减少每个Bank内同时开关的输出管脚的数量。尽可能将输出管脚分布在多个Bank内。”
93.     “均匀切换bank中的I/O以减少给定区域中干扰源的数量,从而减低SSN(bank使用率实际低于100%时)。”
94.     “将同时开关管脚与易受SSN影响的输入管脚分隔开。”
95.     “将重要的时钟和异步控制信号安排在靠近地信号的位置,离开大的开关总线。”
96.     “避免将I/O管脚,即远离PLL电源管脚的一个或两个管脚,用于高开关或高驱动强度管脚。”
97.     “使用交错输出延迟通过时间来转移输出信号,或者也可以使用可调节摆率设置。”
98.     “使用同步设计实践。注意时钟信号。”
99.     “使用Quartus II Design Assistant检查设计可靠性。”
99.     “使用宏功能和参数编辑器。”
100.     “遵循推荐的编码风格,特别是在推断诸如存储器和DSP模块等的器件专用模块时。”
101.     "如果需要,使能全芯片(chip-wide)复位以清零所有寄存器。”
102.     “需要考虑可用于寄存器上电和控制信号的资源。不要对一个寄存器同时应用复位和预置信号。”
103.     “按照建议,建立源代码并对您的设计进行增量式编译分区;在设计流程早期进行规划。”
104.     “执行时序预算和分区间的资源平衡,以达到最佳结果,特别是在基于团队的流程中。”
105.     “如果设计流程要求,则对增量式编译分区创建设计平面规划。”
106.     “指定您的第三方综合工具并使用正确的支持版本。”
107.     “编译后,检查资源利用和优化报告。”
108.     “查看所有Quartus Prime消息,特别是所有警告或错误消息。”
109.     “确保时序约束完整并准确,包括所有时钟信号和I/O延迟。”
110.     “编译之后查看TimeQuest Timing Analyzer报告,确保没有时序违规。”
111.     “确保在向 Arria® 10器件提供数据时,不会超出输入I/O时间。”
112.     “在Settings对话框中的Fitter Settings页面上,开启Optimize multi-corner timing。”
113.     “使用create_clock和create_generated_clock命令来对您设计中所有时钟指定频率和关系。”
114.     “使用set_input_delay和set_output_delay指定外部器件或电路板时序参数。”
115.     “使用derive_pll_clocks根据PLL宏功能中的设置为所有的PLL输出创建生成时钟。为LVDS发送器或接收器解串因数指定多个周期关系。”
116.     “使用derive_clock_uncertainty自动应用inter-clock、intra-clock和I/O接口不确定性。”
117.     “使用check_timing命令来生成设计或者应用约束问题报告,包括缺失的约束。”
118.     “如果想在运行完整编译之前进行时序评估,需要执行Early Timing Estimation。”
119.     “使用Quartus Prime优化特性来达到时序收敛或者提高资源利用。”
120.     “使用Timing and Area Optimization Advisors来建议优化设置。”
121.     “使用增量编译保存设计中未更改模块的性能和减少编译时间。”
122.     “如果需要编译多个处理器,请确保并行编译是使能的。”
123.     “使用Compilation Time Advisor来建议能缩短编译时间的设置。”
124.     “指定第三方仿真工具,并使用相应的支持版本和仿真模型。”
125.     “指定您的第三方形式验证工具,并使用正确的支持版本。”
126.     “如果使用形式验证,则要检查支持和设计限制。”
127.     “编译以后,使用Power Analyzer分析功耗和散热。”
128.     “对准确的典型信号活动首选提供门级仿真.vcd文件,以获得准确的功耗分析结果。”
129.     “指定正确的功耗分析运行条件。”
130.     必要时,使用推荐的设计技术和Quartus Prime选项对设计进行功耗优化。
131.     “使用Power Optimization Advisor获得优化设置建议。”