自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (1)
  • 收藏
  • 关注

原创 Vivado使用技巧(8):使用Vivado Simulator

Vivado Simulator基本操作 Vivado Simulator是一款硬件描述语言事件驱动的仿真器,支持功能仿真和时序仿真,支持VHDL、Verilog、SystemVerilog和混合语言仿真;点击运行仿真后界面如下所示: 工具栏中显示了控制仿真过程的常用功能按钮:控制功能依次是:Restart:从0时刻开始重新运行仿真; Run All:运行仿真一直到处理完...

2019-01-17 16:33:35 3700 2

原创 Vivado使用技巧(7):仿真功能概述

仿真是FPGA开发中常用的功能,通过给设计注入激励和观察输出结果,验证设计的功能和时序是否满足设计要求;Vivado设计套件支持如下仿真工具:Vivado Simulator、Questa、ModelSim、IES、VCS、Rivera-PRO和Active-HDl;Vivado的仿真流程如下图所示:                                             ...

2019-01-16 17:19:19 13678 1

原创 Vivado使用技巧(6):支持的Verilog语法

复杂的电路设计通常使用自顶向下的设计方法,设计过程中的不同阶段需要不同的设计规格。比如架构设计阶段,需要模块框图或算法状态机(ASM)图表这方面的设计说明。一个框图或算法的实现与寄存器(reg)和连线(wire)息息相关。Verilog便具有将ASM图表和电路框图用计算机语言表达的能力,本文将讲述Vivado综合支持的Verilog硬件描述语言;Verilog提供了行为化和结构化两方面的语言结...

2019-01-15 16:07:08 14464

原创 Verilog中generate语句的用法

在Verilog-2001中新增了语句generate,通过generate循环,可以产生一个对象(比如一个元件或者是一个模块)的多次例化,为可变尺度的设计提供了方便,generate语句一般在循环和条件语句中使用,为此,Verilog-2001增加了四个关键字generate,endgenerate, genvar, localparam,genvar是一个新增的数据类型,用在generate的...

2019-01-14 20:01:56 44482 6

原创 Vivado使用技巧(5):HDL编写技巧 HDL Coding Techniques

在Vivado中进行HDL代码设计,不仅需要描述数字逻辑电路中的常用功能,还要考虑如何发挥Xilinx器件的架构优势,同时xilinx本身也自带了许多语言模板(language template)。目前常用的HDL语言有三种:VHDL、verilog、system verilog;下面将介绍三种语言的优缺点;VHDL语言的优势有:语法规则更加严格; 在HDL源代码中初始化RAM组件更容易...

2019-01-14 16:55:11 3000 1

原创 Vivado使用技巧(4):Block Synthesis Flow技术

前面1-3介绍了Vivado综合技术中的各个方面,这里做个总结:Vivado综合支持使用多种策略(Strategy)和全局设置(Setting)。在RTL或XDC文件中,可以用综合属性(attribuite)来改写某些设置选项。但是目前设计越复杂,全局设置方式限制了设计的潜在性能,同一设计中不同层次结构可能在不同设置下才能获得最佳表现;针对此问题,一个解决方法便是Out-of-context(...

2019-01-14 10:28:52 1348

原创 Vivado使用技巧(3):HDL/XDC中设置综合属性

Vivado综合工具支持直接在RTL文件或XDC文件中设置综合属性。如果Vivado识别出设置的属性,会创建与之相关的逻辑电路;如果不能识别设置的属性,会将该属性和值存放在生成的网表中。因为某些属性,例如LOC约束适用于布线过程,因此必须保留该属性配置情况以用于之后的过程;本文将介绍Vivado综合工具支持的所有属性设置,并给出Verilog示例:1.ASYNC_REG将reg类型配置...

2019-01-14 00:05:10 7428 1

原创 Vivado使用技巧(2):综合运行与OOC

创建综合运行一个“运行(run)”是指定义和配置设计在综合过程中的各方面,包括:使用 的Xilinx器件、应用的约束集、启动单个或多个综合的选项、控制综合引擎结果的选项。点击Flow菜单中的Create Funs,或在Design Runs窗口中: 点击工具栏中的+,即可打开新建运行窗口:  选择Synthesis,点击Next,打开配置综合运行的窗口: 设置综合名称、...

2019-01-10 22:45:20 4816

原创 RAM IP core(2)

例化5种RAM IP core(1)单端口RAM   Single-port RAMRAM参数设置如上图所示,输入输出位宽都为8位,深度为16,采用一级输出寄存器,读写模式为no-change,用COE文件对RAM进行初始化,关于COE文件的制作,前面的帖子有专门提及,这里不再赘述;可以看出输出延时为2个周期,在wea有效时读操作挂起,写操作运行,即在同一时刻只能对一个地址进行...

2019-01-10 20:52:31 754 4

原创 Vivado使用技巧(1):综合策略与设置的选择

综合(Synthesis)是指将RTL设计转换为门级描述。Vivado开发套件中的综合工具是一款时序驱动型、专为内存使用率和性能优化的综合工具,支持System Verilog 2012、Verilog 2005、VHDL 2008、混合语言中的可综合子集,以及XDC设计约束文件(基于工业标准的SDC文件),此外还支持RTL属性来控制综合细节.综合设置选项在Flow Navigator中点...

2019-01-09 16:50:16 14141

原创 创建基本的时钟周期约束

目录Organizing Your ConstraintsClock DescriptionPrimary Clock 主时钟Generated Clock  生成时钟report_clocks   Rename Tool-Generated Clocks 重命名自动生成的时钟 Clock Group 时钟组Asynchronous Clock Groups E...

2019-01-09 11:16:50 977

原创 RAM IP core(1)

Memory Type    块存储器器IP core可以配置生成5种存储器:Single-port RAM(单端口RAM), Simple Dual-port RAM(简单双端口RAM), True Dual-port RAM(真双端口RAM), Single-port ROM(单端口ROM), and Dual-port ROM(双端口ROM);  Sele...

2019-01-08 14:57:05 1580

原创 宏定义(`define),常数(localparam),参数(parameter)三者的区别

在verilog中,好的设计是用符号常量代替固定文本,这使得代码清晰并有助于以后的维护和修改;在verilog中,可以用关键词localparam声明常数,例如声明数据总线的位宽和范围:localparam DATA_WIDTH = 8;DATA_RANGE = 2**DATA_WIDTH;或定义符号端口名称:UART_PORT = 4'b0001;LCD_PORT =...

2019-01-07 10:05:31 6780 1

原创 单口RAM、双口RAM、FIFO三者的关系

单口与双口 单口与双口的区别在于,单口只有一组数据线与地址线,因此读写不能同时进行;而双口有两组数据线与地址线,读写可同时进行;FIFO读写可同时进行,可以看作是双口; 简单双口RAM与真双口RAM     双口RAM分伪双口RAM(Xilinx称为Simple two-dual RAM)与双口RAM(Xilinx称为true two-dual RAM),伪双口RAM,一个端口只...

2019-01-02 09:45:08 11675 3

verilog新手入门资料

主要分为三个模块,verilog建模,时序,整合篇。FPGA 的逻辑资源,好比乐高 的积木,要组合乐高就是需要工具,那 Verilog HDL 就是 FPGA 建模的工具。

2017-10-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除