自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 问答 (2)
  • 收藏
  • 关注

原创 Transceivers Wizard IP核

后面的CPLL或者QPLL选择,可以直接在代码中进行修正,包括GT收发器的位置也可以在XDC中进行覆盖。通过以上配置,可高效利用7系列FPGA的GT收发器实现高速串行通信。使用两个K28.5进行时钟纠正,类似同步码。buffer延迟大概100个时钟周期。几十公里的就选择DFE均衡器。

2025-02-22 21:36:04 1045

原创 FPGA VIVADO:axi-lite 从机和主机

协议就不详细讲解了,直接看手册即可。下面主要如何写代码和关键的时序。此外下面的代码可以直接用于实际工程。

2025-02-18 23:06:38 910

原创 VIVADO生成DCP和EDF指南

详细步骤就不贴图了,网上一大堆在Vivado中,常用的三种封装形式有三种:● IP● edif● dcp在下文之前,先看几个概念:和global相对,out_of_context就是将上下文分离,在综合的时候,只是将这个module作为一个整体,类似IP生成的时候,选择global就会将IP修改部分和未修改部分整合起来一起综合和优化,而out_of_context就只是将这一块或者修改部分进行综合和优化-no_iobuf。

2025-02-07 23:36:35 1313

原创 PCIE概述

pcie总线知识点解析。

2024-12-09 23:42:42 987

原创 ZYNQ PS和PL交互

AXIM_GP:属于AXI-lite协议。适用于少量数据一般不用AXI-FIFO作为数据交互,因为互联模块本身也有FIFO(但是空间小)。大量数据其实也就不用这种方式。

2024-12-08 22:29:01 650

原创 不常用的verilog语法

full-case:都可以被遍历到parallel-case:一个case表达式只对应一个item. 比如casez在使用时,就可能是。

2024-12-08 00:24:44 684

原创 verilog编程规范

高内聚,低耦合,干净清爽的代码。

2024-12-07 21:39:34 1063

原创 FPGA理论基础1一一一简单的硬件知识

当BANK的I/O口作为LVDS电平时,HR BANK的IO电压VCCO只能为2.5V,HPBANKS的I/O口电压为1.8V。可接1V2/1V5/1V8/2V5/3V3等多种电压,但是主SPI/主BPI模式下配置过程涉及到该BANK上的某些引脚,需要和VCCO_O保持一致。系列的FPGA,GTP最高可以达到6.6Gb/s,GTX最高12.5Gb/s,GTH最高13.1Gb/s,GTZ最高28.05Gb/s。限制电压有助于控制功耗,从而减少热量的产生,对于热管理是非常重要的,尤其是在高密度集成的系统中。

2024-11-19 23:40:03 2238

原创 FPGA FIFO系列 - FIFO使用中需要注意的若干问题

场景:类似图像、文字等码流数据是不需要重复被访问的,因此使用FIFO进行缓存(如果需要被存储,一般不会放在FPGA内部)。此时,FIFO的数据消失性对设计没有影响。但是对于fifo来说,如果时钟频率提高,需要满足建立和保持时间,那么就需要对fifo接口进行缓存,以截断前、后组合逻辑布线延迟和FIFO接口时序之间的相互影响。写时序因为数据和写使能是同步输入给FIFO的,所以没有影响,但是,读时序,读出数据就会延迟3个时钟周期,如下图所示。

2024-11-17 23:33:58 1141

原创 深入浅出通信原理

阅读《深入浅出通信原理----陈爱军》笔记,无图,可以对照的书去看,有页码标志。非通信人,定性的去理解,如果有理解不对的地方,望提出宝贵意见。

2024-09-13 00:27:48 1933

原创 FPGA低功耗设计

功耗类型一般可分为动态功耗、静态功耗和浪涌功耗。

2024-09-09 11:06:38 1539

原创 FPGA概述

FPGA的工作原理主流的是采用SRAM工艺的LUT结构,LUT本质就是一个RAM,将真值表写入RAM,通过4或者6输入来定位ram中的真值表,然后输出。当FPGA启动时,就会读取flash或者其他存储器中的数据,把真值表写入ram中,当下电时,FPGA就是白片。军用或者航天级别一般采用FLASH或者熔丝与反熔丝工艺的LUT。也就是说不同的使用场景,使用不同的工艺来设计LUT硅片融合是发展趋势。熟悉不同器件在不同应用场景的优缺点熟悉FPGA内的资源有哪些。

2024-08-27 21:20:07 595

原创 从PCB开始研究FPGA设计问题

这里只针对FPGA告诉电路板设计问题进行讨论总得来说需要考虑信号线,信号线之间,电源供电(供电曲线,供电顺序(核心电压和io电压),电源退耦)

2024-08-26 12:12:45 627

原创 FPGA时钟域处理

FPGA在代码设计的时候要考虑不同功能会有不同的时钟域,在设计构思的时候就要考虑到框图中的时钟域划分。一般都是多时钟域设计总体起来说需要考虑两个方面的知识点,时钟资源有哪些,跨时钟域的处理。另外就是需要考虑对时钟本身的处理需要考虑的处理技巧,如分频,时钟的反转或者倍频调整(尽量还是用pll吧)

2024-08-26 12:05:54 1087

原创 FPGA速度优化

速度优化,主要就是设计时序进行优化吞吐量:每个时钟周期能处理的数据量,多少bit,b/s。为了提高吞吐量,大量的并行的设计被使用,再对数据处理完成之后对外传输,一般使用告诉串行I/O口,使得提高速率的前提又增加了稳定性设计延时:输入数据和数据被处理后输出的时间间隔。对于吞吐量来说,只关心流水线末端下线产品的数量,很少关系数据被处理的传输延迟。即尽量采用并行操作,减少流水操作。设计时序:指设计时钟速度,两个时序单元之间的最大延迟,决定了时钟频率(速度),可以得到一个最大时钟频率。

2024-08-26 10:58:21 1714

原创 如何写好状态机

标准状态机分为两种摩尔moore:状态机输出只和当前状态值有关系mealy:状态输出和当前有关还和输入有关状态转换的时候出现过渡状态进入非法状态器件不同,综合出来的情况不同占用资源过多状态机的注意事项有两个,一个是避免出现非法状态(编码设计、状态切换的布局布线,即组合逻辑和计算影响切换速度,导致时序不满足,出现过度状态),另一个是资源使用。编码状态机内部跳转减少跳转过程的组合逻辑、让综合工具能识别到这些来考虑。

2024-08-25 22:52:05 247

原创 verilog 面积优化

面积优化就是尽可能的减少门电路资源的消耗面积的优化主要从共享来考虑,就是考虑综合出来的电路是什么样的,操作符共享,表达式共享,功能共享。其次,就是有些信号的处理,比如复位信号不是一定给。最后考虑硬件本身的特性。

2024-08-25 22:45:17 987

原创 FPGA解决时序问题

如果设计验证和测试已经接近尾声,偶尔进行小改可能出现几条时序违例的情况这个时候就不建议通过修改代码来进行优化了,首先在设计验证和测试几乎完成的情况下,证明你这套逻辑已经经过了层层考验,不会出什么问题。如果这个时候还通过改功能模块来优化时序有可能引入新的不确定因素,还得花很多时间来验证才行。在这个时候一般的做法是多开几个策略来进行综合或者布局布线。举个简单的例子,因为只是偶尔会出现时序不过的情况,假设概率为0.3。那么如果有3个策略同时编译,则3个都不过的概率就变成0.027了。

2024-08-25 22:32:36 1560

原创 三大低速总线之SPI

SPI(串行外设接口)以其高速度而著称,使其成为快速通信的首选。与 I2C 不同,SPI 使用四线工作:MISO(主输入从输出)、MOSI(主输出从输入)、SCK(串行时钟)和 SS(从选择),允许全双工通信(发送和同时接收)。尽管简单且速度快,但 SPI 比 I2C 需要更多的引脚,这可能是电路设计中需要考虑的一个因素。高速:SPI通信速度较快,适用于对速度要求较高的应用。**全双工:**SPI支持全双工通信,可以同时进行数据发送和接收。

2024-08-25 22:21:45 2044 2

原创 三大低速总线之一:UART

三大低速总线:UART、IIC、SPI,其中IIC和SPI是同步通讯,UART是异步的。tx和rx都是一根线,使用简单的帧结构传输。UART通信协议相对简单,易于实现和调试。适用性广泛:UART被广泛应用于各种设备之间的通信,具有较好的兼容性。距离:UART通信距离较远,适用于需要长距离传输的场景。速度较低:UART通信速度相对较低,不适用于对速度要求较高的应用。双工:UART通信是双工的,可以进行低速双工传输数据,进行数据的发送和接收。

2024-08-24 07:11:29 1624

原创 离散时间信号

离散时间信号的由来连续时间信号离散时间信号数字信号问题1:为什么要对连续时间信号进行采样?计算机处理数据是离散的,且是被量化的问题2:如何选择采样频率?理解什么是序列,序列就是n和值然后就是序列基本计算方式,加减乘除就不说了,然后就是序列的卷积代表的含义。序列的性质,比如周期性。对应离散序列的系统,这个系统的性质都有什么然后就是对于时域信号的采样和采样之前的关系采样频率和目标信号的最高频率的关系,要知道采样后的频谱是怎么样的,注意Fs/2的位置。

2024-08-23 16:17:19 859

原创 FPGA时序约束

为什么要进行时序约束:就是告诉软件端口的输入的周期、延迟等的关系,然后更好的布局布线如果我们不加这些约束,那么软件无法知道我们的时钟周期的情况,因此布局布线之后,就不会有时序违例的警告,导致错了我们也不知道核心在于防止出现建立或者保持时间不满足导致出现亚稳态建立时间和保持时间,主要的就是明白其保持和建立时间容限IO约束,一个是管脚,一个数据和时钟之间的延迟。数据和时间的延迟又分为是否为捕获时钟有还是没有(对于输入和输出都要判断),有时钟但是不满足和主时钟为整数倍的频率关系。

2024-08-21 21:08:21 2213 2

原创 竞争和冒险

核心思想就是记住 **F = A & A’*对应的硬件和时序图,就能理解了。消除方法,一般就是打拍延迟。

2024-08-21 18:27:58 1100

原创 FPGA资源评估

原文链接。

2024-08-14 22:53:33 1751 1

原创 复位电路及时序分析

同步复位异步复位异步复位同步释放微建立时间和微保持时间:防止出现亚稳态、脉冲宽度要合适、后续数据打拍解决亚稳态布局布线:复位的速度、顺序不同时钟在使用各自的复位编码问题复位去抖。

2024-08-14 11:04:47 1231

原创 傅里叶级数和傅里叶变换

函数分解为三角函数。(傅里叶变换从零到信号处理:数据建模—>函数—>三角函数)条件:简单来说就是有界有限…具体就是什么有限间断点什么的实数域复数域再到傅里叶变换(非周期函数)和傅里叶逆变换。欢迎一起交流学习,如有错误之处,还请各位指正。参考资料[1]参考视频。

2024-05-16 20:21:08 783 1

原创 无源蜂鸣器 verilog FPGA 基础练习9

无源蜂鸣器的练习,就是对计数器和状态机练习的变种,学会用计数器和状态机的思想来设计。核心思想:理清楚设计思路,从到推的角度来分层次设计和功能来设计欢迎一起交流学习,如有错误之处,还请各位指正。

2023-12-25 23:15:40 1637 1

原创 可乐售卖状态机 verilog FPGA 基础练习4.1

状态机其核心就是状态的转换,由以下几个要点。在理解一下几个要素之后就明白状态机设计的核心思维了输入输入后得到的状态该状态对应的输出以上就是简单状态机的实现

2023-12-14 00:49:21 653 1

原创 呼吸灯 verilog FPGA 基础练习8

呼吸灯的练习的主要目的是对计数器使用的进阶,理解计数器计数使用的基础时间单位的变化,对计数器的影响。

2023-12-10 20:08:45 1976 1

原创 流水灯 verilog FPGA 基础练习7

流水灯也是对计数器和计数器的使用的一个练习。很简单的一个功能,主要是熟练对一下两个点计数器计数器和flag的使用核心思想:

2023-12-09 23:33:06 596

原创 数据类型 systemverilog语法 UVM

数据类型是任何编程语言的重中之重,任何编程不管是verilog、systemverilog、c、c++还是python等等,都是对数据的搬运和处理。只有掌握好数据是什么样的,才能进行更好的实现我们需要的功能。

2023-12-07 00:34:59 1204 1

原创 LED控制 verilog FPGA 基础练习6

借用LED灯的开关切换控制,主要来联系如何通过上升沿或者下降沿来进行特定的操作。核心就是通过打拍进行边沿的判断。核心思想:判定条件是上升沿或者下降沿才进行的某个特定的操作。

2023-12-05 22:46:15 651

原创 按键消抖 verilog FPGA 基础练习5

按键消的的练习主要是对计数器使用的一个巩固,核心就是任何一个需要使用计数器的地方,先建立一个always语句去计数,然后根据条件去判断什么时候清零,什么时候保持等等功能。

2023-12-05 21:38:00 606

原创 偶分频和奇分频 FPGA verilog 基础练习4

分频器的练习就是计数器的一个应用分支,用设立来检验自己对计数器的使用使用熟练。真实上板代码,都是使用IP核来进行的。清零条件递增条件核心思想:明白如何使用计数器来实现特定的功能,

2023-12-03 22:33:59 1134 1

原创 计数器 verilog FPGA 基础练习3

RTL语言中计数器是相当重要的。可以说计数器,是FPGA实现各种功能的灵魂,让时间变得有了意义。

2023-12-02 23:32:27 929 1

原创 第一章 通信原理概述

本文旨在记录《深入浅出通信原理》这本书的学过程。如何实现跨具体传输?手段有哪些?如何实现的?通信系统的分类有哪些?基本模型是什么?通信中信号的预处理过程有哪些?为什么要预处理之后才能发送?信道又是怎么一回事?有了电磁波传输之后,如何提高传输的质量和效率?

2023-12-02 19:12:13 1609 1

原创 避免latch verilog FPGA 基础练习2

本文由如何避免latch的问题场景,来更详细的描述verilog中的组合逻辑电路和时序逻辑电路等等理论知识。由latch这个问题入手来阐述更多理论知识,有助于更好的理解和记忆。核心思想:在抛出latch这个问题的情况下,去理解一些基础的理论概念,大致理解就行。知道在编写代码的时候,如何去避免latch。

2023-12-02 00:22:15 1131 1

原创 半加器和全加器 verilog FPGA 基础练习1

对于半加器和全加器的练习,根本目的在于理解自底向上(Bottom-Up)的设计方法和自顶向下(Top- Down)的设计方法,既学会堆积木。

2023-11-30 22:42:03 1040

原创 38译码器 verilog FPGA 基础练习0

译码器是可以将输入二进制代码的状态翻译成输出信号,以表示其原来含义的电路。核心思想:如果能够明白在不同场景下,能够用尽可能少的bit位来控制多bit位的数据,那么就完成思想上的升华。输入数据预处理(通过拼接符“{}”)、数据映射(通过条件选择语句进行3-8译码映射)、输出。

2023-11-29 23:44:04 787 1

数据转axi lite接口: 读/写数据FIFO缓存 仲裁:写优先 AXI LITE 总线输出 以下是axi-lite主机的代码: 主要思路: 先理清楚下面5个通道,一个一个来看,端口再多理顺了就好了

数据转axi lite接口: 读/写数据FIFO缓存 仲裁:写优先 AXI LITE 总线输出 以下是axi-lite主机的代码: 主要思路: 先理清楚下面5个通道,一个一个来看,端口再多理顺了就好了

2025-02-18

FPGA设计中基于Verilog的RTL级仿真详解及其重要性

内容概要:本文详细介绍了FPGA设计中的仿真概念,解释了为何需要进行仿真及其在整个设计流程中的重要作用。具体讲解了不同阶段的仿真(如RTL级仿真、综合后仿真及时序仿真)的特点及意义。此外还探讨了Verilog硬件描述语言中哪些结构能被综合工具支持,哪些则不能,以及时序图的作用和解读方法,包括了一个具体数字信号传输实例。同时简述了对数码管动态显示效果进行仿真的方法。 适合人群:具有一定硬件开发经验的技术人员;初学者在初步掌握Verilog语法之后亦可尝试学习。 使用场景及目标:帮助读者深入理解FPGA的设计与验证过程,特别是在代码正式下载之前确保设计正确性和性能稳定性。能够使读者了解到怎样有效地利用仿真手段提升设计质量,避免后续可能遇到的问题;通过实践掌握各种关键知识点的应用。 其他说明:除了理论讲解外,文中提供了一些实际操作指导,有助于加强理解并应用于真实项目中。推荐配合相应开发环境和工具进行同步操作演练。

2024-11-17

米联客2020版FPGA课程:MIG DDR3控制器设计与实践

内容概要:该文档详细介绍了2020版米联客FPGA课程的MIG DDR3控制器部分,涵盖MIG DDR3的设计、配置参数、时钟管理、复位生成、内存读写操作等方面的内容。课程还包括具体的实例代码和详细的测试方法,帮助读者深入理解和实践FPGA在高性能存储系统的应用。 适合人群:具有一定FPGA基础知识和技术背景的研发人员,特别是对DDR3控制器感兴趣的学习者。 使用场景及目标:适用于希望在嵌入式系统中使用FPGA进行高效能内存管理的研发项目,旨在提升对FPGA及其相关技术的理解和应用能力。 阅读建议:在阅读过程中,重点理解DDR3控制器的各个参数配置和具体实现步骤,同时结合提供的实例代码进行实践和调试,以便更好地掌握FPGA在实际项目中的应用技巧。

2024-11-17

FPGA笔试与面试技术要点详解

内容概要:本文详尽介绍了 FPGA设计相关的知识点,涵盖建立时间、保持时间、时序设计、异步复位与同步复位的区别、跨时钟域设计方法、同步与异步逻辑、时序分析与优化、亚稳态防止、FPGA芯片内部资源介绍等多个重要主题。针对常见的 FPGA设计难题提供了详细的解决方案和技术要点。 适合人群:从事 FPGA设计及相关领域的技术人员,尤其适用于准备笔面试的研发人员。 使用场景及目标:帮助读者掌握 FPGA设计的关键技术和常见问题的解决方法,提升笔面试技能,适用于实际项目设计中遇到的技术挑战。 其他说明:文章内容详尽,理论联系实际,非常适合用于自学和团队培训。阅读时应关注具体案例和实例分析,加深理解和记忆。

2024-11-17

猫叔的时序约束教程提供参考

猫叔的时序约束教程提供参考

2024-10-07

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

TA关注的人

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