quartus综合简单流程(自用)

这篇具有很好参考价值的文章主要介绍了quartus综合简单流程(自用)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

quartus综合简单流程

quartus是Altera的FPGA软件,用于综合verilog代码,生成sof文件,也可转换为jic文件,使用jtag下载进altera的FPGA开发板中。

1建工程

File>New Project Wizard.
quartus怎么综合,IC设计,fpga开发
点击下一步;
设置file name,project name,和目录。
下一步;
选择对应的fpga开发板;
finish;

2 导入设计

quartus怎么综合,IC设计,fpga开发
右键点击图中project name,选择setting,然后选择文件类型,点击导入;

3 compile

导入设计文件以后,选择编译;
如果没有sdc文件可以导入,也可以进行编译;
quartus怎么综合,IC设计,fpga开发
如果没有语法错误,那么到这一步,只会报这个红色ERROR,TimeQuest Timing Analysis。
此项一般为时序检查未通过,没有sdc文件,所以会出现unconstrained path,port等等。根据自己的设计文件和软件提示,可以在软件的GUI界面进行sdc文件的设置。

一般的sdc文件设置包含以下几项:

1. clk的设置

eg.# create_clock -name aaa_clk -period 20.000 -waveform {0.000 10.000} [get_ports {aaa_clk}]

2. generated clk

此项clk一般为分频的时钟
eg.# create_generated_clock -name clk_div50 -source [get_ports aaa_clk] -divide_by 50 -master_clock aaa_clk [get_nets clk_div50]

3. set clock latency

可以省略

4.set clk uncertainty

eg.# set_clock_uncertainty -rise_from [get_clocks aaa_clk] -rise_to [get_clocks aaa_clk] 0.020
eg.# set_clock_uncertainty -rise_from [get_clocks aaa_clk] -fall_to [get_clocks aaa_clk] 0.020
eg.# set_clock_uncertainty -fall_from [get_clocks aaa_clk] -rise_to [get_clocks aaa_clk] 0.020
eg.# set_clock_uncertainty -fall_from [get_clocks aaa_clk] -fall_to [get_clocks aaa_clk] 0.020

5.set input delay

eg.# set_input_delay -add_delay -clock [get_clocks aaa_clk] 2.000 [get_ports i_rst_n]

6.set output delay

eg.# set_output_delay -add_delay -clock [get_clocks aaa_clk] 2.000 [get_ports o_spi_miso]

7.set clock groups

设置异步clk
eg.# set_clock_groups -asynchronous -group [get_clocks aaa_clk]
-group [get_clocks spi_clk]

8.set False Path

此项和设置异步clk作用相同,任意设置一个即可,但是设置set_false_path需要设置两个方向
使用set_false_path设置异步clk:
set_false_path -from [get_clocks clk1] -to [get_clocks clk2]
set_false_path -from [get_clocks clk2] -to [get_clocks clk1]
使用set_false_path设置异步复位的false path
set_false_path -from [get_port i_rst_n] -to [all_registers]

9.set multicycle Path

TODO,待补充示例文章来源地址https://www.toymoban.com/news/detail-776517.html

10.set maximum delay

TODO,待补充示例
约束的时候都会约束下异步fifo中的格雷码信号, 设置为set_max_delay $source_clk_period, 这样是否仅仅是为了保证性能,即 如果异步fifo中的格雷码同步信号path直接设置为false path不会影响功能。
这是因为设置了set_false_path的路径,FPGA综合工具或者后端人员会认为这条路径不是critical timing path,FPGA工具会额外在这条路上插入若干delay cell或buf(后端人员走线不够balance, 或者局部power没法收敛等等原因),从而导致此条路径的timing很差,成为制约芯片性能限制点。
因此在设计中尽可能少设置set_false_path,使用set_max_delay代替。如果遇到无法确认max_delay的路径,可以考虑false path

11.set minimum delay

TODO,待补充示例

12.set input transition

TODO,待补充示例

不定期更新

到了这里,关于quartus综合简单流程(自用)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • FPGA—基于Quartus软件设计全加器

    本篇博客主要是基于Quartus软件件完成一个1位全加器的设计,分别采用:1)原理图输入 以及 2)Verilog编程 这两种设计方法。开发板基于Intel DE2-115。 1、半加器 1、定义: 半加器是能够对两个一位的二进制数进行相加得到半加和以及半加进位的组合电路。 2、真值表: A,B表示

    2024年02月06日
    浏览(45)
  • 数字IC实践项目(2)——高速SDRAM控制器的设计与综合(入门级工程项目)

    这个实践项目来源于研究生电子设计竞赛,在涉及到视频图像处理时需要用到DRAM存储数据 ;整个项目过程中先后学习了 小梅哥(AC620开发板资料) 、 开源骚客SDRAM控制器 、 正点原子FPGA教程 、 野火FPGA开发教程 等网络资料。 在此对上述提供学习资料的前辈表示真诚的感谢。

    2024年02月13日
    浏览(79)
  • 【FPGA/IC】什么是模块化设计?

    FPGA/IC设计中根据模块层次的不同有两种基本的设计方法: 自下而上 方法对设计进行逐次划分的过程是从基本单元出发的,设计树最末枝上的单元是已经设计好的基本单元,或者其他项目开发好的单元或者IP。该方法先对底层的功能块进行分析,然后使用这些模块来搭建规模

    2024年03月19日
    浏览(51)
  • 数字IC前端设计流程及详细解释

    数字前端以设计架构为起点,以生成可以布局布线的网表为终点。 使用设计的电路实现想法,主要包括:基本的RTL编程和仿真。前端设计还可以包括 IC系统设计、前仿真波形验证、综合、STA、FM验证。其中 IC系统设计最难掌握,它需要多年的IC设计经验和熟悉那个应用领域,

    2024年02月06日
    浏览(54)
  • 使用Quartus II做FPGA设计遭遇的一些问题

    问题1:Error:Width mismatch in pin_name – source is 。。。 ** 问题2:Error (275028): Bus name allowed only on bus line – pin “data[7…0]” Error (275029): Incorrect connector style at port “test_data[7…0]” for symbol “inst” of type top

    2024年02月11日
    浏览(57)
  • EDA实验(Quartus Ⅱ+fpga) (四)---交通灯设计

    前言: 本文主要介绍了EDA原理与应用这门课程的相关实验及代码。使用的软件是Quartus Ⅱ,该实验使用fpga芯片为cycloneⅤ 5CSEMA5F31C6。 (一)实验目的 (1)熟悉交通灯控制器的工作原理; (2)了解设计中的优化方案; (3)进一步掌握状态机的设计; (4)学习较复杂数字系

    2024年02月02日
    浏览(59)
  • 密码锁设计Verilog代码Quartus 睿智FPGA开发板

    名称:密码锁设计Verilog代码Quartus  睿智FPGA开发板(文末获取) 软件:Quartus 语言:Verilog 代码功能: 1、设计一个密码锁的控制电路,当输入正确代码时,输岀开锁信号用红灯亮、绿灯 熄灭表示关锁,用绿灯亮、红灯熄灭表示开锁 2、在锁的控制电路中储存一个可以修改的4位代

    2024年01月18日
    浏览(51)
  • 模拟IC与数字IC设计该怎么选?哪个岗位薪资高?

    很多同学想要入行IC,但不知道数字和模拟方向怎么选? 如果没有亲身体会过模拟设计,并有发自内心的自信或者兴趣,一般不看好纯小白去学模拟电路设计。 模拟设计想做好,没有数学功底,没有电路分析的功底,很难会有出彩的机会。就连零极点分析都搞不清、基尔霍夫

    2024年02月03日
    浏览(62)
  • 数字式竞赛抢答器(基于Quartus的原理图设计)FPGA

    1. 第一信号鉴别锁存模块 + 犯规电路 (1) 使用器件 74175,带公共时钟和复位四D触发器 (2) 原理 a. 比赛开始前,主持人复位按钮RET=0,四个D触发器复位,此时输出Q[1]–Q[4]为0,QN[1]–QN[4]为1,QN[1]–QN[4]经过与门后输出D为1,时钟CLK所经过的与门(AND2)打开。 ​ 犯规电路中RET经过非

    2024年02月08日
    浏览(39)
  • EDA实验(Quartus Ⅱ+fpga) (五)---多功能数字钟设计

    本实验代码为初学FPGA所写,逻辑不太清晰,请跳往下面网址查看最新的模块化设计数字钟,更易看懂 模块化多功能数字钟设计 前言: 本文主要介绍了EDA原理与应用这门课程的相关实验及代码。使用的软件是Quartus Ⅱ,该实验使用fpga芯片为cycloneⅤ 5CSEMA5F31C6。 (1)了解数字钟的

    2024年02月06日
    浏览(87)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包