TimeQuest使用步骤.doc
《TimeQuest使用步骤.doc》由会员分享,可在线阅读,更多相关《TimeQuest使用步骤.doc(8页珍藏版)》请在课桌文档上搜索。
1、Timequest timing analyzer使用方法步骤1:执行初始编译在应用时序约束设计之前,创立一个初始数据库:post-map。表 1-1. 执行初始编译(1)Quartus II软件GUI命令行在Processing菜单上,指向Start,点击Start Analysis & Synthesis。quartus_map filtrefr表 1-1注释:1. quartus_map用于创立一个post-map数据库。2. Analysis & Synthesis阶段生成post-map数据库。3. 也可为初始数据库创立一个post-fit网表。不过,创立一个post-map网表耗时
2、较少。图 1Analysis & Synthesis步骤2:运行TimeQuest Timing Analyzer通过表 2-1中的程序,运行TimeQuest Timing Analyzer来创立和验证所有时序约束和例外。此命令将翻开TimeQuest shell。表 2-1. 运行TimeQuest Timing AnalyzerQuartus II软件GUI命令行在Tools菜单中,单击TimeQuest Timing Analyzer。quartus_sta srproject_open fir_filter -revision filtrefr当您直接从Quartus II软件中运行
3、TimeQuest Timing Analyzer时,当前工程将会自动翻开。如果使用GUI,则当出现下面的消息时,请选择No:No SDC files were found in the Quartus Settings File and filtref.sdc doesnt e*ist. Would you like to generate an SDC file from the Quartus Settings File?图 2TimeQuest Timing Analyzer步骤3:创立一个Post-map时序网表在指定时序要求之前,请创立一个时序网表。表 3-1. 创立一个Post-
4、Map时序网表TimeQuest Timing Analyzer GUITimeQuest Timing Analyzer Console1.在Netlist菜单上,点击Create Timing Netlist。 出现 Create Timing Netlist对话框。2.在Input netlist中,选择Post-Map。create_timing_netlist post_map注意:不要在Tasks面板中使用Create Timing Netlist命令来创立一个post-map时序网表。默认情况下,Create Timing Netlist创立一个post-fit数据库。图 3 C
5、reate Timing Netlist图 4 Input netlist图 5waiting步骤4:指定时序要求时钟、IO表 4-2. 创立时钟并分配时钟端口TimeQuest Timing Analyzer GUITimeQuest Timing Analyzer Console1.在Constraints菜单中,点击 Create Clock。出现Create Clock对话框。对25 MHz时钟指定参数。单击RUN。输入:#create the 25 MHz (20 ns) clock create_clock period 20 get_ports Cpsl_Clk25M_i2. 在
6、Constraints菜单中,点击Drive PLL clocks。出现Drive PLL clocks对话框,前面指定了PLL基时钟,什么都不选直接单击RUN即可。默认情况下,如果未使用-waveform选项,则create_clock命令假设50/50的占空比。时序包括以下方面:时钟:create_clocks / derive_pll_clocks / derive_clocks_uncertainly手动添加IO: set_input_delay / set_output_delay此处用延迟0参数,步骤10进展调整完成表 4-2中显示的程序后,时钟定义完成。图 7Create clo
7、ck图 8设置参数图 9指定时钟图 10 Create clock设置完毕图 11Drive PLL clocks步骤5:更新时序网表timing Netlist在您创立时序约束或例外后,通过表 5-1中的程序,对时序网表进展更新,将所有时序要求应用到时序网表新的clk和clk*2时钟约束。只要应用了新的时序约束,就必须对时序网表进展更新。表 5-1. 更新时序网表(Timing Netlist)TimeQuest Timing Analyzer GUITimeQuest Timing Analyzer Console在Tasks面板中,双击Update Timing Netlist命令。输入
8、:update_timing_netlist图 12Update Timing Netlist步骤6:保存到SDC文件在为设计指定时钟约束并更新时序网表后,您可以通过表 6-1中的程序来选择创立SDC文件。通过TimeQuest Timing Analyzer GUI或者在控制台(console)中指定的约束不会自动保存。因此,Altera建议单独保存利用文本编辑器可以手动编辑的一个golden SDC文件。这使您能够根据自身的规输入注释并组织文件。如下列图:而不是从TimeQuest GUI的Constraints下拉菜单输入约束:虽然看起来很相似,但这些约束将直接应用于计时数据库,而不会放
9、入.sdc文件中。高级用户可能会找到理由这样做,用于修改配置确定参数。建议初学者翻开.sdc文件并从Edit - Insert Constraint访问它们。表 6-1. 保存SDC文件TimeQuest Timing Analyzer GUITimeQuest Timing Analyzer Console1.在Tasks面板中,双击Write SDC File命令。出现Write SDC File对话框。2.在File Name栏输入名称。输入:write_sdc -name.sdcr新的.sdc文件包含步骤4:指定时序要求中定义的时钟约束。Write SDC File命令可以覆盖任何现有
10、的SDC文件。当这种情况出现时,新的SDC文件没有保持顺序或注释。建议拷贝粘贴至SDC文件中步骤7:对初始时时序网表生成时序报告通过表 7-1中的程序定义的时钟,在指定时序约束和更新时序网表后,生成时序报告,这验证了时钟被正确地定义并应用到正确的节点。1. SDC报告表 7-1. Report SDC命令TimeQuest Timing Analyzer GUITimeQuest Timing Analyzer Console在Tasks面板中,双击Report SDC命令。输入:report_sdc图 13生成SDC约束报告(SDC Assignments Report)SDC Assign
11、ments报告了在指定设计中包含的所有时序约束和例外。生成两个报告:一个用于时钟和一个用于时钟组。2. clock报告表 7-2. 生成报告时钟报告(Report Clocks ),总结设计中所有的时钟。TimeQuest Timing Analyzer GUITimeQuest Timing Analyzer Console在Tasks面板中,双击Report Clocks命令。输入:report_clocks图 14时钟报告3. ClockTransfers报告通过表 7-3中的程序,使用Report Clock Transfers命令生成一个报告来验证所有的时钟到时钟传输都是有效的。这种
12、报告包含设计中所有的时钟到时钟传输。表 7-3. 生成报告时钟传输(Report Clock Transfers)TimeQuest Timing Analyzer GUITimeQuest Timing Analyzer Console在Tasks面板中,双击Report Clock Transfers命令。输入:report_clock_transfers图 15时钟传输报告(Clock Transfers Report)4. 伪路径设置两条路径不相关本环节只是告诉这个局部伪路径可以作为例外不进展分析。实际的时序要在做设计时保证其正确。Clock Transfers报告说明在clk源时钟和
13、clk*2目的时钟之间存在跨时钟域路径。共有16条路径,其中clk为源节点提供时钟,clk*2为目的节点提供时钟。在fir_filter设计中,不必分析clk至clk*2的时钟传输,因为它们是忽略路径。通过表 7-4中的程序声明clk至clk*2的路径为伪路径。当完成该程序后,TimeQuest Timing Analyzer说明Clock Transfers报告是过时的。表 7-4. 声明伪路径TimeQuest Timing Analyzer GUITimeQuest Timing Analyzer Console1.在Clock Transfers报告中,在From Clock列选择cl
14、k。2.右击并选择Set False Paths Between Clock Domains。这个命令说明将所有由clk驱动的源存放器到由clk*2驱动的目的存放器之间的路径设为伪路径。set_false_path -from get_clocks clk -to get_clocks clk*2r5. set_clock_groups设置两个时钟域不相关另外,也可以使用set_clock_groups命令来声明两个时钟域之间的路径为伪路径。例如,set_clock_groups -asynchronous -group get_clocks clk -groupget_clocks clk*
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- TimeQuest 使用 步骤

链接地址:https://www.desk33.com/p-15762.html