不枉初心,砥砺前行

皮皮祥的博客

欢迎留言,评论

导航

08 2021 档案

在多个always模块中对同一变量赋值
摘要:https://www.docin.com/p-1996173921.html 在同一个变量中,不要对同一个变量赋值,如果对同一变量多次赋值,那么它只执行最后一次赋值操作。 module test(clk,datain,dataout); input clk;input [2:0] datain;o 阅读全文

posted @ 2021-08-31 16:20 皮皮祥 阅读(2665) 评论(0) 推荐(0)

verilog阻塞赋值与非阻塞赋值
摘要:FPGA 非阻塞赋值与阻塞赋值 1.0简介 2.0阻塞赋值&非阻塞赋值 2.1阻塞赋值 2.2非阻塞赋值 2.3区别 3.0编码准则 4.0 举例 准则1)时序电路建模时,用非阻塞赋值; 准则2)锁存器电路建模时,用非阻塞赋值; 准则3)用always块建立组合逻辑模型时,用阻塞赋值; 准则4)在同 阅读全文

posted @ 2021-08-31 14:20 皮皮祥 阅读(1199) 评论(0) 推荐(0)

verilog中的阻塞赋值与非阻塞赋值
摘要:verilog设计进阶 时间:2014年5月6日星期二 主要收获: 1.阻塞赋值与非阻塞赋值; 2.代码测试; 3.组合逻辑电路和时序逻辑电路。 阻塞赋值与非阻塞赋值: 1.阻塞赋值“=”(组合逻辑电路),非阻塞赋值“<=”(时序逻辑电路); 2.Verilog模块编程的8个原则: (1) 时序电路 阅读全文

posted @ 2021-08-31 14:11 皮皮祥 阅读(249) 评论(0) 推荐(0)

always语句中的并行语句还是顺序语句?
摘要:always模块中可以对同一变量赋值吗 阅读全文

posted @ 2021-08-31 14:08 皮皮祥 阅读(667) 评论(0) 推荐(0)

如何快速在Verilog和VHDL之间互转
摘要:Verilog语言和VHDL语言是两种不同的硬件描述语言,但并非所有人都同时精通两种语言,所以在某些时候,需要把Verilog代码转换为VHDL代码。本文以通用的XHDL工具为例对Verilog转换到VHDL过程中存在的问题进行了总结,欢迎批评指正。 当我们刚开始学习FPGA时,一定会遇到一个问题: 阅读全文

posted @ 2021-08-31 09:42 皮皮祥 阅读(6583) 评论(0) 推荐(0)

verilog HDL中wire和reg类型的区别
摘要:本文参考 夜煞CSDN 的CSDN 博客 ,有改动 全文地址请点击:https://blog.csdn.net/u010549444/article/details/50993274?utm_source=copy 基本概念的差别 wire型数据常用来表示以assign关键字指定的组合逻辑信号,模块 阅读全文

posted @ 2021-08-30 16:13 皮皮祥 阅读(1100) 评论(0) 推荐(0)

模块端口输出不能到REG寄存器,[Synth 8-685] variable 'reg_clkd1m2_rx_lvds_clock' should not be used in output port connection ["E:/PJ/2021_8_13/top_2k4k_v1/gsv_7a15/gsv_7a15.srcs/sources_1/new/rx_lvds_8bit.v":232]
摘要:模块端口输出不能到REG寄存器,wire变量可以在always 语句中做右值,但左值只能是REG型, 阅读全文

posted @ 2021-08-30 15:35 皮皮祥 阅读(2903) 评论(0) 推荐(0)

vivado综合出现[Synth 8-91] ambiguous clock in event control
摘要:vivado综合出现[Synth 8-91] ambiguous clock in event control 查阅相关资料,目前有两种情况: 1.always敏感变量没有得到使用 常见有rst信号 代码修改如下即可: 2.always块中语法问题 敏感变量都有使用,为何还会出现该问题,检查语法是否 阅读全文

posted @ 2021-08-27 16:50 皮皮祥 阅读(1953) 评论(0) 推荐(0)

VHDL运算符和库的使用
摘要:VHDL的运算符号VHDL中主要有六类运算符号:赋值运算、逻辑运算、算术运算关系运算、连接运算、移位运算运算符号主要用于各类表达式中; 运算可以分为单目运算(只有一个运算量)和双目运算(针对两个运算量);进行双目运算时,两个运算量必须类型相同;VHDL中运算没有左右优先级差别,同一表达式中进行多个运 阅读全文

posted @ 2021-08-24 13:55 皮皮祥 阅读(2329) 评论(0) 推荐(0)

VHDL和VERILOG if语句的不同
摘要:近日进行VHDL和verilog混合编程,发现其间if判断条件的一点小区别,归纳如下: VHDL:if 内容如果是signal类型如signal a,只能写成if(a = '0'),不能写成if(not a)的形式,否则报错“Error type of identifier "a" does not 阅读全文

posted @ 2021-08-24 10:26 皮皮祥 阅读(239) 评论(0) 推荐(0)

xilinx IP核配置,一步一步验证Xilinx Serdes GTX最高8.0Gbps
摘要:之前用serdes一直都是跑的比较低速的应用,3.125Gbps,按照官方文档一步一步来都没出过什么问题,这次想验证一下K7系列GTX最高线速8Gbps,看看xilinx的FPGA是不是如官方文档所说。 GTX速度到底可以跑到多少 关于器件速度的问题首先找到 ds182->Kintex-7 FPGA 阅读全文

posted @ 2021-08-18 13:22 皮皮祥 阅读(1250) 评论(0) 推荐(0)

Xilinx MIG 控制器使用详解
摘要:转自: https://blog.csdn.net/MaoChuangAn/article/details/85268231 想要自己学习MIG控制器已经很久了,刚开始学习的时候也是在网上到处搜索MIG控制器的资料,深知学习过程的不容易。因此本系列的教程一定会详细的写出关于MIG控制器的相关知识,方 阅读全文

posted @ 2021-08-18 11:23 皮皮祥 阅读(2727) 评论(0) 推荐(1)

VIVADO IDDR与ODDR原语的使用
摘要:IDDR与ODDR简单的应用 项目简述 IDDR与ODDR的简述 RGMII时序简述 千兆网输入与输出模块的设计 测试模块的设计 仿真测试结果 总结 项目简述 在数据的传输过程中,我们经常可以碰见双沿传输数据到FPGA,或者FPGA传输双沿数据给外部芯片,最常见的例子就是DDR芯片。这里说明一下,F 阅读全文

posted @ 2021-08-16 11:23 皮皮祥 阅读(1556) 评论(0) 推荐(1)

SelectIO Interface IP核
摘要:You have to believe in yourself. That’s the secret of success. Charles Chaplin 人必须有自信,这是成功的秘密。 文章目录 Xilinx SelectIO IP使用说明 引言 介绍 特色 产品说明书 时钟缓冲和处理 数据路径 阅读全文

posted @ 2021-08-16 10:28 皮皮祥 阅读(3476) 评论(0) 推荐(1)

xilinx 7系列FPGA之SelectIO
摘要:上一篇咱们介绍了IO逻辑资源,本篇咱们来聊一聊高级的IO逻辑资源,即ISERDESE2模块和OSERDESE2模块。 所谓ISERDESE2模块,即Input serial-to-parallel converters。该模块的作用就是实现高速源同步输入数据的串并转换。 所谓OSERDESE2模块, 阅读全文

posted @ 2021-08-16 10:08 皮皮祥 阅读(764) 评论(0) 推荐(0)

FPGA开发流程
摘要:开始学习FPGA,想尽快上手FPGA开发,那么先来了解一下FPGA的开发流程。 1、需求分析到模块划分 需求说明文档;器件选择(逻辑资源、功耗、IO数量、封装等等);配置电路考虑;开发工具选择;电路板的可拓展性考虑;在线调试和板级调试考虑;分模块设计。 2、设计输入到综合优化 设计输入:原理图、Ve 阅读全文

posted @ 2021-08-11 10:59 皮皮祥 阅读(1016) 评论(0) 推荐(0)

FPGA开发基本流程及注意事项
摘要:需求说明:Verilog设计 内容 :FPGA开发基本流程及注意事项 来自 :时间的诗 原文来自:http://www.dzsc.com/data/2015-3-16/108011.html 要知道,要把一件事情做好,不管是做哪们技术还是办什么手续,明白这个事情的流程非常关键,它决定了这件事情的顺利 阅读全文

posted @ 2021-08-11 10:53 皮皮祥 阅读(1338) 评论(0) 推荐(1)

FGPA设计流程
摘要:可以参考我的专栏文章https://zhuanlan.zhihu.com/p/69415960 这是快速入门FPGA与Verilog HDL系列教程的第二讲,本系列教程致力于让新手入门FPGA和Verilog HDL。本文首发于我的微信公众号“花蚂蚁”,追更教程的可以关注我的公众号,后续还会有视频教 阅读全文

posted @ 2021-08-11 09:13 皮皮祥 阅读(912) 评论(0) 推荐(0)

速度
摘要:如果是系统速度要求1G,很遗憾的说,没有一个fpga能够跑到。一般vertex单级逻辑最高能够到300~500Mspartan只有50~100M如果你采样时1G,而通过串并转换,比如1G变成125M,那么很多型号都是可以的。但这里需要serdes的IO技术了。 阅读全文

posted @ 2021-08-10 14:36 皮皮祥 阅读(144) 评论(0) 推荐(0)

Xilinx FPGA ——时钟资源
摘要:在Xilinx的FPGA中,时钟网络资源分为两大类:全局时钟资源和区域时钟资源。 全局时钟资源是一种专用互连网络,它可以降低时钟歪斜、占空比失真和功耗,提高抖动容限。Xilinx的全局时钟资源设计了专用时钟缓冲与驱动结构,从而使全局时钟到达CLB、IOB和BRAM的延时最小。 区域时钟资源是独立于全 阅读全文

posted @ 2021-08-10 14:32 皮皮祥 阅读(988) 评论(0) 推荐(0)

FPGA器件选型
摘要:本文主要介绍FPGA选型时的速度等级这个参数。 大家在进行FPGA选型时都会看见一个参数:Speed Grade,这就是芯片的速度等级。 芯片的速度等级不是专门设计出来的,而是在芯片生产出来之后,实际测试标定出来的;速度快的芯片在总产量中的比率低,价格也就相应地高。 这是Xilinx FPGA的排序 阅读全文

posted @ 2021-08-10 13:51 皮皮祥 阅读(1426) 评论(0) 推荐(0)

Xilinx的V7系列FPGA中LC、CLB和Slice介绍(如何计算LC)
摘要:在Xilinx的FPGA的资源列表中常常有LC(logic cells)一项,LC代表什么呢,下面是Xilinx官方回答: A "logic cell" is a marketing thing. It is an attempt to create a "unified" metric that 阅读全文

posted @ 2021-08-10 11:01 皮皮祥 阅读(2218) 评论(0) 推荐(0)

Xilinx与Altera的FPGA区别
摘要:最近被各大公司机试\笔试题虐的死去活来,其中一道就是主考的Xilinx与Altera的FPGA架构区别,本人小菜鸟基本只用过A家的FPGA对于X家的知之甚少,这里先简单总价一下,说的不对大家勿喷: 两家FPGA的区别本人认为有两方面吧:1.基本逻辑资源;2.内部基本架构。(也可以看成一方面吧) 从好 阅读全文

posted @ 2021-08-09 11:10 皮皮祥 阅读(1097) 评论(0) 推荐(0)

FPGA基础之逻辑单元(LE or LC)的基本结构
摘要:逻辑单元在FPGA器件内部,用于完成用户逻辑的最小单元 逻辑单元在ALTERA叫作(Logic Element,LE)LE,在XILNX中叫作LC(LOGIC CELL). 1.逻辑单元与逻辑阵列 逻辑单元(Logic Element,LE)在FPGA器件内部,用于完成用户逻辑的最小单元。一个逻辑阵 阅读全文

posted @ 2021-08-09 10:56 皮皮祥 阅读(1085) 评论(0) 推荐(0)

FPGA内部构造
摘要:FPGA由6部分组成,分别为可编程输入/输出单元(IOB)、基本可编程逻辑单元(SLENCE)、嵌入式块RAM(block ram)、丰富的布线资源、底层嵌入功能单元和内嵌专用硬核等。 整个FPGA的资源分布图如下: 上图的分块按照时钟域分的块,前面有文章介绍FPGA的时钟中有详细介绍分块的规则。 阅读全文

posted @ 2021-08-05 16:32 皮皮祥 阅读(987) 评论(0) 推荐(0)

FPGA IO资源
摘要:*写在前面:*关于 FPGA 的 IO资源分析共分为三个系列进行具体阐述,分别为: IO资源:分析FPGA IO资源的电气特性; IO逻辑资源:分析FPGA的输入输出数据寄存器、DDR工作方式、可编程输入延时工作方式; IO串并转换资源:分析IO资源如何实现串并转换。 其中第二、三系列是对第一系列中 阅读全文

posted @ 2021-08-05 16:10 皮皮祥 阅读(787) 评论(0) 推荐(0)

FPGA IO
摘要:今天想和大家一起聊聊 FPGA 的 IO。 先说说我当年入门的经历吧。国内的大学有 FPGA 开发条件的实验室并不太多,当年大学的那帮同学有的做 ARM,有的做 linux,很少有人做 FPGA,当时学 FPGA 仅仅是由于非常渴望的好奇心。所以,在淘宝买了一块开发板,就开始了自己的 FPGA 之路 阅读全文

posted @ 2021-08-05 15:57 皮皮祥 阅读(596) 评论(0) 推荐(0)

Input Delay Reasource (IDELAY)
摘要:Input Delay Reasource (IDELAY): 先来说说IDELAYCTRL资源: 借鉴了这位博主对它的描述:(https://blog.csdn.net/haoxingheng/article/details/50320145) 在电压、温度等因素变化时,可能会影响到系统的时序,此 阅读全文

posted @ 2021-08-05 15:26 皮皮祥 阅读(1154) 评论(0) 推荐(0)

IDELAY
摘要:引言:本文我们介绍SelectIO重要的IDELAY及IDELAYCTRL资源,它们主要用于调整I/O时序延迟,比如调整ADC采集时钟和ADC采集数据I/O之间的时序关系等等。具体内容包括: IDELAY资源概述、端口及使用 IDELAYCTRL资源概述、端口及使用 1.输入延迟资源(IDELAY) 阅读全文

posted @ 2021-08-05 15:23 皮皮祥 阅读(2052) 评论(0) 推荐(0)

Xilinx7系列FPGA SelectIO篇
摘要:上篇咱们简单的说了I/O的电气特性,本篇咱们接着介绍I/O逻辑资源,先贴上两张图。图1为HPBANK的I/O模块,图2为HRBANK的I/O模块,两者区别在于后者无ODELAYE模块。 图1:HP BANK I/O模块 图2:HR BANK I/O模块I/O逻辑资源主要包含5部分:1, ILOGIC 阅读全文

posted @ 2021-08-05 14:37 皮皮祥 阅读(854) 评论(0) 推荐(0)

xilinx oddr idelay用法简单介绍
摘要:我们知道xilinx FPGA的selectio中有ilogic和ologic资源,可以实现iddr/oddr,idelay和odelay等功能。刚入门时可能对xilinx的原语不太熟练,在vivado的tools-> language templates中搜索iddr idelay等关键词,可以看 阅读全文

posted @ 2021-08-05 11:21 皮皮祥 阅读(830) 评论(0) 推荐(0)

FPGA视频仿真
摘要:视频图像处理仿真测试系统 最近看《基于FPGA的数字图像处理原理及应用》看到了第五章,本章内容主要讲如何搭建一个视频图像处理仿真测试系统,我参考了书上的内容,自己设计了一个基于Qt creator的仿真测试系统。 1.仿真测试系统框架 仿真测试系统所包含的功能:(1)模拟可配置的视频流(单帧的视频即 阅读全文

posted @ 2021-08-05 10:51 皮皮祥 阅读(422) 评论(0) 推荐(0)

Vivado进行仿真流程
摘要:仿真功能概述 仿真FPGA开发中常用的功能,通过给设计注入激励和观察输出结果,验证设计的功能性。Vivado设计套件支持如下仿真工具:Vivado Simulator、Questa、ModelSim、IES、VCS、Rivera-PRO和Active-HDl。 Vivado的仿真流程如下图所示: 仿 阅读全文

posted @ 2021-08-04 17:10 皮皮祥 阅读(5325) 评论(0) 推荐(0)

UVM验证方法学
摘要:1 验证的本质:尽可能的找出设计的bug; 2 测试向量文件 测试文件(testbench)以模拟的方式来验证逻辑时序的正确性,以源的方式来激励用户编写的逻辑功能模块; 3 验证的3要素 (1)灌激励:输入信号(2)集响应:输出信号(3)作比较:比较 4 验证平台的发展 Verilog -> C/C 阅读全文

posted @ 2021-08-04 09:50 皮皮祥 阅读(1113) 评论(0) 推荐(0)

MRCC和SRCC(multiregion /single region clock-capable)
摘要:Xilinx 7系列FPGA专用时钟引脚标志 相信许多同学们都知道FPGA内部的全局时钟网络质量特别高,时钟偏移、到达不同寄存器的时钟延迟比较小。进入全局时钟网络有几种方法:1、经过专用时钟引脚引入的时钟2、PLL输出的时钟3、经过BUFG输出的时钟写的不全,但是以后会继续补充。 那么如何判断FPG 阅读全文

posted @ 2021-08-03 15:23 皮皮祥 阅读(2206) 评论(0) 推荐(0)

Xilinx 7系列FPGA 高速收发器GTX/GTH的一些基本概念
摘要:本来写了一篇关于高速收发器的初步调试方案的介绍,给出一些遇到问题时初步的调试建议。但是发现其中涉及到很多概念。逐一解释会导致文章过于冗长。所以单独写一篇基本概念的介绍,基于Xilinx 7系列的GTX。 需要说明,文本只是初步介绍基本概念,会尽量使用通俗浅显的描述而避免使用专业词汇,也只会描述一些基 阅读全文

posted @ 2021-08-03 15:07 皮皮祥 阅读(1303) 评论(0) 推荐(0)

FPGA中BANK的概念
摘要:可编程 输入/输出单元 简称I/O单元,是芯片与外界电路的接口部分,完成不同电气特性下对 输入/输出 信号的驱动与匹配要求。FPGA内的 I/O 按组分类,每组都能够独立地支持不同的I/O标准。通过软件的灵活配置,可适配不同的电气标准与I/O物理特性,可以调整驱动电流的大小,可以改变上、下拉电阻。 阅读全文

posted @ 2021-08-03 15:03 皮皮祥 阅读(3659) 评论(0) 推荐(0)

PLL与MMCM
摘要:设计方法指南 PLL输出时钟和输入时钟之间的相位关系是未知的,但MMCM是可以选择对齐输入输出相位的。 同时PLL只有两个输出时钟,而MMCM有6个。 在Xilinx的FPGA中,时钟管理器称为Clock Management,简称CMT。我们所用到的DCM / PLL / MMCM都包含在CMT中 阅读全文

posted @ 2021-08-03 14:46 皮皮祥 阅读(938) 评论(0) 推荐(0)

时钟资源
摘要:Xilinx的7系列时钟输入有SRCC和MRCC。在手册上有描述,SRCC可用于本时钟区域,MRCC用于本时钟区域和相邻时钟区域。单看这个就有些困惑了,那难不成还连接不到全局时钟了。官方手册中有下面这个图,可以看出SRCC和MRCC都是可以连接到全局时钟的。这个图由于有点具体,不太好理解。 看下面这 阅读全文

posted @ 2021-08-03 14:40 皮皮祥 阅读(312) 评论(0) 推荐(0)

建立时间和保持时间
摘要:图1 建立时间(setup time)是指在触发器的时钟信号上升沿到来以前,数据稳定不变的时间,如果建立时间不够,数据将不能在这个时钟上升沿被打入触发器; 保持时间(hold time)是指在触发器的时钟信号上升沿到来以后,数据稳定不变的时间,如果保持时间不够,数据同样不能被打入触发器。 如图1 。 阅读全文

posted @ 2021-08-03 11:44 皮皮祥 阅读(1573) 评论(0) 推荐(0)

FPGA工程师进阶必学:时序分析的基本步骤和整体设计思路
摘要:最近看了看了一篇《vivado使用误区与进阶》的文章,觉得写得挺不错了,看完后自己对时序分析又有了更深一层的理解,故记录下来。可能排版有些乱,有些图都是直接从文章中截取,但是不影响阅读。 时序分析的基本步骤 一个合理的时序约束,可以分为以下步骤: 时序约束整体的思路与之前我说的方法基本一致。整体的思 阅读全文

posted @ 2021-08-03 11:27 皮皮祥 阅读(3100) 评论(2) 推荐(0)

signal和variable
摘要:定义:signal是指电子电路内部硬件连接的抽象,在综合过程中是硬件电路的线路,变量一般用于进程中局部数据存储单元 范围:信号可定义在结构体,实体,程序包中,变量定义在 process ,function ,procedure 中是局部量, 赋值:信号是在进程结束的时候赋值,所以你在进程中多次赋值只 阅读全文

posted @ 2021-08-03 09:14 皮皮祥 阅读(709) 评论(0) 推荐(0)