自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 fpga开发过程中遇到的一些小问题

你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。分析:撤销:Ctrl/Command + Z重做:Ctrl/Command + Y加粗:Ctrl/Command + B斜体:Ctrl/Command + I标题:Ctrl/Command + Shift + H无序列表:Ctrl/Command + Shift + U有序列表:Ctrl/Command + Shift +

2024-04-24 09:36:11 4519 1

原创 vivado FFT(Fast Fourier Transform 9.1) ip核使用

FFT傅里叶变换是将时域信号转换到频域,从而对一些在时域上难以分析的信号在频域上进行处理。关键参数:FFT采样频率(Fs)、FFT采样点数(N)、频率分辨率(Δf )。采样频率:根据奈奎斯特采样定理,采样频率需大于信号频率的两倍;指ADC或数据源的实际采样频率FFT采样点数:代表对信号在频域的采样数;频率分辨率 :Δf = fs / N,能够区分两个相邻频率分量的最小频率间隔;

2025-08-05 17:34:47 632

原创 UDP_千兆光通信(四)Tri Mode Ethernet MAC ip核

其中 Transmit Engine 从 AXI-Stream TX 接口接收数据,并添加前导码 Preamble、帧起始界定符 SFD、帧校验序列 FSC 等,并在必要时(长度小于最小 MAC 帧长度)填充数据,因此在使用 TEMAC 时,MAC 帧的这几个部分就不需要我们自己添加了(不过其他的 MAC 帧部分,可选的帧过滤器 Frame Filter 用于过滤与一组可配置过滤器匹配的帧,一般用于过滤掉目的 MAC 地址与本设备不一致的帧,TEMAC 默认开启帧过滤器。默认值为使用64位宽的计数器。

2025-07-31 15:25:45 1260

原创 true dual BRAM使用记录

BRAM输出固有一拍延迟;写BRAM时序:根据写时序可知,BRAM的0地址写入数据eb601100读BRAM时序:0地址读出数据有1拍延迟;

2025-07-11 17:04:46 245

原创 使用VIVADO合并FPGA bit文件和Microblaze elf

Xilinx使用Microblaze软核进行功能开发时,需要将Vivado生成的硬件bit文件和Vitis生成的软件elf文件进行合并,生成软硬结合的bit文件,然后可以选择将该bit文件烧进FPGA、或者将该bit文件转换成mcs文件/bin文件然后烧录至Flash中。此时由于在第1步中,已经完成工程的编译,所以此步并不会导致重新编译工程,只需要等待新的bit文件生成即可。参考:https://blog.youkuaiyun.com/qq_22324309/article/details/127649058。

2025-06-25 14:22:02 606

原创 JESD204_phy ip核下serdes引脚约束(三)

【代码】JESD204_phy ip核下serdes引脚约束(三)

2025-05-19 16:33:11 414

原创 JESD204 ip核使用与例程分析(二)

在图中,refclk和glblclk均由同一外部时钟芯片产生,进入FPGA后分别作为JESD204_PHY内部收发器的参考时钟和JESD204 IP核的核时钟。使用全局时钟缓冲器(BUFG)对全局时钟进行缓冲和分发,生成 glblclk_buf,保证时钟信号在FPGA内部的低偏斜和高可靠性。BUFG 是 FPGA 内部专用的全局时钟缓冲器,能将时钟信号分发到整个芯片的各个区域,保证所有逻辑单元都能获得同步的时钟信号。这是通用的差分输入缓冲器,用于将外部差分信号转换为FPGA内部的单端信号。

2025-05-19 13:30:54 1434

原创 AXI-LITE slave读写时序

从接口的响应信号s_axi_bresp[1:0]用2‘b00表示数据信道的数据写入成功,即OKEY,从机接口发出的s_axi_bresp响应信号 的有效信号s_axi_bvaild为1时才表示响应有效。主接口发送完地址信息后,准备写入数据,将待写入的数据置于s_axi_wdata总线上(s_axi_wstrb表示写入选通吸信号,默认为11,表示写入数据均可用),并将s_axi_wvalid置为有效(拉高),表示数据已经在信道上等待从机发出的写入响应信号,进而写入从接口。信号拉高,表示主机可以接收数据了。

2025-05-16 16:23:59 1416

原创 BUFDS_GTE2,IBUFDS,BUFG缓冲的区别

主要功能是将外部的差分时钟信号(如LVDS、LVPECL等)转换为FPGA内部的单端时钟信号,并保证信号的完整性和高速特性。它的“缓冲”作用主要体现在信号标准转换和抖动优化,而不是像BUFG那样用于全局时钟分发。主要负责输入端的信号标准转换和初级缓冲,保证外部信号能被FPGA内部逻辑正确识别。这是通用的差分输入缓冲器,用于将外部差分信号转换为FPGA内部的单端信号。主要负责全局时钟分发,将时钟信号低偏斜地分布到FPGA芯片的各个区域。同样具有输入缓冲和信号标准转换的作用,但不具备全局分发功能。

2025-05-16 10:44:56 643

原创 JESD204 ip核使用与例程分析(一)

其中支持确定性延迟是JESD204B的特点,JESD204B链路的确定性延迟定义为串行数据从发送器(ADX或FPGA)的并行帧数据输入传播至接收器(DAC或接收端FPGA)并行帧数据输出所需的时间。以上图表格为例,JMODE=6时,K的可选范围为32:16:256,即32、48、64、80、…JESD204从发布开始至今有四个版本,分别为JESD204、JESD204A、JESD204B、JESD204C,目前使用最多的是JESD204B,各个版本之间的差异如下所示。K的单位是“帧”,不是字节。

2025-05-15 16:08:26 2033

原创 Kintex Ultrascale GTY多IP共享与例程分析

Kintex Ultrascale GTY多IP共享

2025-04-17 17:31:12 692 2

原创 10G以太网接口

学习链接:https://zhuanlan.zhihu.com/p/46296438https://zhuanlan.zhihu.com/p/98448910

2025-03-14 10:57:01 418

原创 硬件调试小知识

内部有一个阈值,高于该阈值电压转换成3.3,低于该阈值电压转换为-3.3v①电平转换,eg:5.5V转3.3v②隔离作用:进来的电平有可能不稳定,串扰引起的电平过高或者过低;这时候就可以使用电平转换芯片过滤掉这些毛刺,防止器件被打坏;

2025-03-03 10:37:20 254

原创 XILINX MMCME2_ADV原语参数配置

xilinx mmcme2_dav原语使用详解

2025-02-13 14:51:50 582

原创 UDP_千兆光通信(三)1G/2.5G Ethernet PCS/PMA or SGMII IP核

本文研究了1G/2.5G以太网PCS/PMA和SGMII IP核的应用。主要内容包括:1)IP核配置选项,如MAC选择(PL端或PS端)、速率(1G或2.5G)、标准(1000Base-X或SGMII)及功能设置;2)详细解析了IP核接口,包括时钟复位、GMII数据接口等关键信号;3)重点说明independent_clock_bufg(200MHz独立时钟)、signal_detect(物理信号检测)和Configuration_Vector(工作模式配置)等特殊接口的使用方法。该IP核可实现光纤(100

2025-01-17 18:00:03 2187

原创 UDP_千兆光通信(二)

OSI协议栈中的数据链路层可进一步细分为较低的介质访问控制(MAC)子层和较高的逻辑链路控制(LLC)子层。当它接收到一个分组后,它从MAC子层向上传送。如果有多个网络和设备相连,LLC层可能将分组送给另一个网络功能:MAC子层负责把物理层的“0”、“1”比特流组建成帧,并通过帧尾部的错误校验信息进行错误校验;提供对共享介质的访问方法,包括以太网的带冲突检测的载波侦听多路访问(CSMA/CD)、令牌环(TokenRing)、光纤分布式数据接口(FDDI)等。

2025-01-13 14:50:57 1355

原创 UDP_千兆光通信(一)

verilog UDP_千兆以太网学习记录

2025-01-12 09:07:07 1412 1

原创 beyond compar文件编码错误,禁止编辑

但是其他编辑器软件的编码方式是UTF-8,所以编码方式有冲突。导致beyond compar显示文件编辑错误。所以只要把编码方式改成简体中文GB18030即可。

2024-12-26 09:41:53 933

原创 vs_code verilog自动例化

键盘输入Ctrl+shift+P或快捷键F1,在出现的扩展命令框中搜索inst,选择Verilog: Instantiate Module,再现在需要例化的文件即可生产例化模块。下载地址:https://github.com/universal-ctags/ctags-win32/releases/6、重启vscode,打开文件夹,从文件夹中打开文件,将光标放到变量上就会显示变量的定义。点击Verilog: Instantiate Module,选择想要例化的模块即可;2、将下载的压缩包解压到指定目录。

2024-12-07 20:08:16 1026

原创 【vivado导出仿真波形数据至txt文件+matlab分析】

fromshare=blogdetail&sharetype=blogdetail&sharerId=122271074&sharerefer=PC&sharesource=lzr232&sharefrom=from_link]若想把上述波形中的m_axis_data_tdata[31:0]打印出来,则只需在.v代码中加入以下代码,run behavioral simulation后,波形内容就会被保存下来。

2024-11-25 11:24:12 2835

原创 vivado使用tcl脚本保存与重建工程

在vivado的Tcl Console键入:write_project_tcl F:/LZR/lzr_fpga/self_test/AD7386_TCL/AD7386.tcl;路径“F:/LZR/lzr_fpga/self_test/AD7386_TCL/AD7386.tcl”为.tcl文件保存路径;语句执行完成后可以在指定路径目录下找到生成的.tcl文件;把.tcl中列出的依赖文件(.v, .xci, ip核等)拷贝到.tcl文件的目录下;上图这些文件都在src文件夹内;

2024-10-23 17:08:10 1489

转载 定点数、浮点数及其乘法运算

定点浮点数

2024-05-16 15:17:09 707

原创 UVM验证平台-自学笔记

UVM学习记录-仅供参考

2022-09-25 23:41:35 903

转载 FPGA中的竞争与冒险

竞争与冒险是逻辑门因输入端的竞争而导致输出产生不应有的尖峰干扰脉冲(又称过渡干扰脉冲)的现象。在门电路中,**两个输入信号同时向两个相反方向的逻辑状态转换,即一个从低电平变为高电平,一个从高电平变为低电平,或反之,称为竞争。**由于竞争而在电路的输出端可能产生尖峰脉冲的现象称为冒险。竞争不一定会产生冒险,但冒险就一定有竞争。判断是否存在竞争常见的方法就是判断逻辑门的输出端的状态函数在一定的条件下能够简化为A与非A的相乘或相加,则电路存在竞争现象。消除竞争冒险的方法常见有4种:1)修改逻辑设计,这主要包

2021-09-08 11:45:05 1501

原创 FPGA电子设计系统的资源优化(面积优化)与速度优化

一、电子设计系统的面积优化与速度优化1、资源优化:①资源共享:针对数据通路中耗费逻辑资源较多的模块,通过选择、复用的方式共享使用该模块,达到减少资源使用、优化面积的目的;②逻辑优化:使用优化后的逻辑进行设计,可以明显减少资源的占用;③串行化:将原来耗用资源巨大、单时钟周期内完成的并行执行的逻辑块分割开,提取出相同的逻辑模块(一般为组合逻辑块),在时间上利用该逻辑模块,用多个时钟周期完成相同的功能,其代价是工作速度被大为降低。2、速度优化①流水线设计:复杂组合逻辑之间添加寄存器的方法,是最常用的

2021-09-08 11:40:12 9876

原创 quartus Ⅱ中DDR2 SDRAM的原理与使用

1. SDRAM功能与原理SDRAM(Synchronous Dynamic Random Access Memory),同步动态随机存储器。同步是指 Memory工作需要同步时钟,内部的命令的发送与数据的传输都以它为基准;动态是指存储阵列需要不断的刷新来保证存储的数据不丢失,因为SDRAM中存储数据是通过电容来工作的,大家知道电容在自然放置状态是会有放电的,如果电放完了,也就意味着SDRAM中的数据丢失了,所以SDRAM需要在电容的电量放完之前进行刷新;随机是指数据不是线性依次存储,而是自由指定地址进行

2021-07-19 15:43:42 2205

原创 MATLAB中施密特正交化的实现:

MATLAB中施密特正交化的实现:function b=Schmidt_orthogonalization(a)[m,n] = size(a);if(m<n)error(‘行小于列,无法计算,请转置后重新输入’);returnendb=zeros(m,n);%正交化b(:,1)=a(:,1);for i=2:nfor j=1:i-1b(:,i)=b(:,i)-dot(a(:,i),b(:,j))/dot(b(:,j),b(:,j))*b(:,j);endb(:,i)=b(

2020-11-12 14:06:46 4124

转载 MFC绘图二——简单绘制直线等

步骤一:       在已有的外貌框架中为我们的菜单项鼠标右键添加消息处理程序,用来处理当我们对该菜单项进行点击时能够传递某些东西。如下图所示:在这时我们就会看到一个弹出的向导对话框,记住添加的事件处理程序在DrawView类中,这时我们就会发现改ID的好处了,我们就能对这些事件处理程序进行很好的区分,而不是一堆数字。如下图所示:用同样的方法添加想要...

2019-11-29 11:43:55 1142

原创 基于VS2017的MFC绘图软件-----------------外貌框架(初学菜鸟级)

1、新建一个VS2017项目:2、在资源管理器中设置页眉标题;![(https://img-blog.csdnimg.cn/20191129105916590.PNG?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2x6cjIzMg==,...

2019-11-29 11:18:51 1732

空空如也

空空如也

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

TA关注的人

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