- 博客(215)
- 资源 (6)
- 收藏
- 关注

原创 DDR4 FPGA verilog驱动逻辑管理
之前写过一个DDR4的配置博客https://blog.csdn.net/jingjiankai5228/article/details/104282707 ,简单的说了一下MIG核的基本配置以及示例工程的搭建。实际使用过程中可能通过DDR4来缓存不同数据,我个人一般的使用的方式可以将DDR分为若干等分的存储空间,前端使用FIFO缓存,从而简化用户接口,基本框架大致如下图,由于时间有限就直接用画图最终可以通过FIFO进行分流数据,程序框架如下入所示:值得注意的就是,DDR读出数据是存在延迟的,为了
2020-10-28 21:52:58
2718

原创 xilnx 万兆光纤GTH传输字节不对齐解决方法
最近有光纤传输的需求,硬件平台是KCU1500,如下图:
原创 spatan6的EMMC DDR3控制器 EMMC驱动开发
1.背景与介绍最近通过spatan6管理一片EMMC存储芯片,采用的是纯逻辑语言管理EMMC芯片,EMMC采用的是JEDCE发布的emmc 5.1版本的协议,但是由于EMMC的存储的速度有限,固在设计的前端加了一片DDR3控制器,本篇博客不介绍EMMC的设计,主要分享一下Spatan6的xilinx自带的IP核MCB在设计实际的工程中遇到的问题。2.问题及解决思路第一次使用S6 的DDR3控...
2020-01-01 15:03:31
2399
3

原创 AD9371、AD9361、ADRV9009驱动开发、调试
欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体...
2019-10-04 11:05:13
20424
17
原创 FPGA 纯逻辑NVME raid0 IP核 双盘测试(基于三星9100 pro ssd)
和三星980类似,只是9100掉速的时间会晚一点,当然也可能是容量决定的,过了大概1T之后,写速度基本要减半。目前为止最稳定的还是三星的970 pro,基本可以做到全盘不掉速,这也是MLC颗粒比较贵的原因。产生测试数到两个盘里面,测试发现前1T数据写入,双盘速度可以达到6.7GB/s。本次测试采用XCZU19EG+三星4T的9100盘。
2025-05-21 07:07:52
168
原创 xilinx QDMA开发调试记录
2.1 执行make clean && make命令完成驱动文件的编译,在文件夹会生成bin文件夹,里面包含下述文件。如果需要添加新设备,可以在driver/src/pci_ids.h文件中添加。如果使用虚拟机注意不要把驱动文件夹放在共享目录下,将驱动源文件拷贝到linux系统下,才进行编译,不然可能会出现报错。xilinx针对KU及VU+针对PCIE通讯增加了QDMA支持,相比XDMA拥有更大的带宽,使用起来也更加的灵活。1.依赖库安装:QDMA驱动依赖于libaio,所以在编译驱动前需要安装该库。
2025-05-11 21:01:28
246
原创 FPGA 纯逻辑NVME raid0 IP核 4盘
系统采用XCZU19EG搭载4个三星990 PRO SSD。4盘总带宽不低于12GB/s。单盘读写不低于3GB/s。
2025-05-07 21:38:45
207
原创 rfsoc petalinux适配调试记录
vmware 12 下安装 ubuntu 16.04 后,按往常的惯例安装 vmware-tools,安装时提示建议使用 open-vm-tools,于是放弃 vmware-tools 的安装,尝试使用 open-vm-tools。填入下面的内容,为了方便,就不单独配置各个共享文件夹了,直接将所有共享文件夹 mount 到一个目录下。安装时,apt 提示建议安装 open-vm-tools-desktop,一不做二不休,一起装了吧。如果没有创建 /mnt/hgfs 文件夹,需要创建。
2025-05-03 22:46:59
521
原创 FPGA DDR4多通道管理控制器设计
为了方便后端数据分流,可以通过缓存FIFO进行数据分流处理,示意图如下图所示,从FIFO_in0进入的数据最终输出到FIFO_out0通道。实际工程项目中可能只挂载了一组DDR,但是用户数据可能有很多种,用户通过给每种数据划分特定地址进行存储,如何实现灵活管理成为设计的关键。程序设计过程中,为了随意裁剪通道数,尽量采用generate例化方式。测试过程通过产生一个递增数,然后输出添加对应的校验模块。通过统计错误数据个数,监测内部数据有无读写错误。通过parameter决定实际使用的通道数。
2025-05-03 09:41:46
420
原创 FPGA 100G UDP纯逻辑协议栈
随着器件等级的升高,高速serdes的线速率也随之提高,RFSOC 4x最大可支持100G,主流方案为RDMA方案,该方案相对比较复杂,除了需要负责逻辑端的开发,还需操作系统中开发RDMA的驱动,对于对丢包不那么敏感的场景可考虑UDP方案;协议栈方面相比10G,主要就是通讯位宽从64BIT升级到512BIT,封包需要重新修改。系统搭载xilinx公司的CMAC具体配置如下。
2025-04-26 21:40:09
523
原创 rfsoc 2R4T采集存储模块
信号处理板以zu47dr芯片为主芯片,完成信号收发处理。 PS平台,处理器,4核A53,双核R5。 PL:2路射频接收通道。 PL:4路射频发射通道。
2025-04-20 08:52:53
290
原创 arinc818 fpga单色图像传输ip
随着图像分辨率的提高,单lane的速率无法满足特定需求,一种方式是通过多个LANE交叉的去传输图像,另外一种是通过降低图像的带宽,即通过只传单色图像达到对应的效果。验证方式为本地产生一个彩条,通过光口回环到接收端,进而完成解码,通过HDMI接口送图像显示。arinc818协议支持的常用线速率如下图。
2025-03-30 13:07:56
340
原创 MPSOC 裸机测试USB3.0接口
测试USB接口,通常采用操作系统进行测试,但是xilinx同样提供了裸机测试程序。该工程是将DDR虚拟成U盘,BIT运行起来需要对其进行格式化处理。首先是根据硬件设计BD文件,主要是根据IO口已经GTR接口配置。综合编译产生BIT,创建VITIS工程。
2025-01-19 21:03:46
261
原创 RFSOC PCIE4.0 nvme SSD读写测试
随着器件工艺越来越高,FPGA支持的serdes速度也有所提供,本博客介绍一款RFSOC板卡,本板卡支持一路PCIE4.0 NVME插槽,设计采用xilinx 公司自带的XDMA Ip。测试方式是通过写一个递增数写入盘,然后通过读盘,通过读出的数据和本地数据进行比对。单盘写速度可达5.8GB/s,读可达3.4GB/s(可优化),测试所用的盘为三星公司生产的990 pro。
2025-01-05 10:00:36
414
原创 RFSOC ps端读写SD卡
最后将SD卡取下用读卡器可以看到SD卡中的文件存在。如果需要创建的文件名较长注意以上参数设置为1。生成文件创建vitis工程。
2025-01-01 15:02:05
787
原创 RFSOC 47dr Dp口测试(ARM裸机)
47DR 内核还是一个4核A53的MPSOC,测试方式和MPSOC一样。值得注意的是,最好用HP的线,不要用DP转接线,不然可能工程运行不起来。即使用DP的线也用xillix推荐的显示器。编译好BIT设置VITIS工程。examle工程测试即可。
2024-12-31 18:47:31
473
原创 Bus Interface property CLK_DOMAIN does not match between /usp_rf
直接在对应的clock port修改为正确的时钟域。
2024-12-03 21:58:31
182
原创 RFSOC 47DR 8收8发采集存储板卡
软件方面支持多TIle同步及多板同步,解决特殊点校准问题。 PL端挂载一路NVME接口,最大支持4。
2024-11-26 21:28:15
581
原创 基于RFSOC实现LFMCW雷达测距测速
一般情况下,雷达发射信号的模型可采用线性调频连续波(LFMCW) ,发射波形的信号形式为调频连续锯齿波。线性调频的含义即调制信号频率随时间线性变化,从时域上看是一个频率随时间线性变化的波形;从频域上看, 发射信号的频率与时间成正比,由于带宽大于FPGA直接处理的主频,所以首先需要对信号进行分相处理,本文DAC的采样率设置为2.4G。然后就是控制DDS的频率控制字即可产生对应的LFM信号,主要是控制调频带宽及调频斜率。随着雷达带宽的不断增加,对系统的瞬时带宽需求也随之提高。雷达原理可以参考以下文章。
2024-11-24 21:57:48
750
原创 adrv9009 8通道收发板卡,支持相位同步
硬件展示如上图,同时方案为了满足ADRV9009缺失的0-75M的频段,系统额外添加一款小DAC芯片,双通道支持250M采样率,板卡支持NVME存储及QSFP高速接口。
2024-11-03 13:43:58
912
原创 ADRV9009 跳频时间测试
测试方式为,将信号源设置为任意频率,通过软件设置跳频频率到对应的频率点,触发方式通过9009 gpio模式,及时起点为GPIO的上升沿,同时将GPIO的上升沿作为触发条件。通过IAL观测信号稳定时间,经测试大概时间在60us,和ADI公布时间差不多。需要说明的是,这里的60us只是单纯的切换时间,未算api加载跳频频率的时间。
2024-11-03 09:49:23
751
3
原创 vivado sdk 烧写到SD卡
烧写流程和烧写FLASH一样,产生boot.bin文件,只需要将BOOT.bin文件复制到SD卡里,将SD卡插入板卡,然后设置SD卡启动即可。需要注意的是:SD卡文件系统必须格式化为FAT32,否则可能导致不能正常启动。首先在bd文件中使能SD卡。实际根据实际原理图设置。
2024-09-24 22:38:19
491
原创 xilinx hbm ip运用
AXI-HBM是一个集成的IP核,该核提供高达16个AXI3从PORT的HBM接口,每个使用他自己的独立的时钟。-灵活的存储器地址mapping from HBM线性地址。-由于写操作中的数据奇偶错误,内存访问重试的可选奇偶校验。-配置2个stack,可访问高达64GB地址数据存储。-在用户逻辑和HBM之间的数据路径中提供校验数据保护。-所有的AXI 端口接口,统一的存储器接口模型。-VIVADO通过可选的用户接口生成初始化。-用户端口允许状态及动态配置改变的监控。-16个独立的256bit存储器接口。
2024-09-17 17:41:30
1800
原创 10g subsystem以太网IP上电默认无GTX参考时钟
有时硬件方案设计万兆网IP 10G subsystem ip默认无gtx参考时钟,而是通过上电完成后通过配置时钟芯片输出参考时钟,实际测试发现即使配置时钟芯片提供了参考时钟之后,万兆网IP依旧无法正常工作。解决方法:由于QPLL再时钟稳定后没有对common进行复位操作,只需时钟稳定之后给QPLL common一个复位信号即可。
2024-09-14 22:56:09
306
原创 VIVADO VITIS移动工程目录,编译报错
如果已经丢失了硬件平台文件,可考虑重新创建一个新的工程,把C代码拷贝到新工程即可。以上方法只试用依赖的文件名是一致的情况。
2024-09-01 11:22:00
315
原创 [BD 41-237] Bus Interface property ID_WIDTH does not match between /axi_crossbar_4/S00_AXI(1) and /a
将AXI CONNECT 的特性 修改为下图特性。
2024-08-31 23:20:03
513
原创 [Place 30-823] Failed to process clock nets that should have matching clock routes. Reason: Found in
将BD文件产生方式改为GLOBAL。
2024-08-24 10:50:06
314
原创 Xilinx RFSOC 47DR 6收6发 信号处理板卡
PS端或者PL端可选挂载一片EMMC芯片,可用于存储程序或者PL直接逻辑访问(跳线可选); PL端搭载一组32Bit DDR4,容量为2GB,最高支持速率:2400MT/s; PL端挂载2路4X QSFP+接口,最大支持25*4Gbps; PS端支持一路UART(转接成USB接口); PL端挂载一路uart 422接口; PS端挂载SD接口,用于存储程序; PS端外接一路USB3.0接口; PL端支持2对Can收发接口; PL端挂载两路SATA接口; PL端挂载两路SFP接口;
2024-06-02 21:13:50
2693
6
转载 ARINC818协议----FC-AV协议
容器系统提供了一种使用对象类和索引分类系统定义对象内容的机制(参见表5)。对象分类在容器头中由每个对象的对象类词的Type和Index字段表示。Type字节是Object的粗略分类。Index字节提供了Object的精细分类。该分类系统使用Type和Index字段,为FC-AV实现提供或确定Object内容和格式提供了一种快速、快捷的方法,而不需要传输复杂的描述或协商。Null -未使用的对象条目,大小始终为零;指定-在本标准中定义;预留-用于将来的标准分配;
2024-05-22 20:12:21
1316
原创 FPGA 纯逻辑arinc818 ip core
5、可动态配置光纤端口速率,支持1.0625Gbps、2.125Gbps、3.1875Gbps、4.25Gbps可配置;1、 符合FC-FS、FC-AV、FC-ADVB协议规范;3、支持光纤通信Class1、Class3服务;6、DDR控制接口简洁,方便快速集成;2、符合ARINC818协议规范;可以根据客户定制开发。
2024-05-22 12:53:41
1425
原创 ISE win10闪退解决方法
首先在第一个文件夹中,重命名libPortability.dll为libPortability.dll.orig,然后复制 libPortabilityNOSH.dll 的一个副本并重命名为libPortability.dll,然后在第二个文件夹,将之前得到的新的libPortability.dll覆盖到这个文件夹中。这样你就又有一个libPortability.dll文件了。
2024-05-02 14:41:19
553
原创 xilinx cpri ip 开发记录
如果是2457.5Mbps的CPRI应用,带宽更大,Y就可以为0,1,2,3,按照下图所展示的发送顺序发数,一个基本帧里有Z.X.0,Z.X.1,Z.X.2,Z.X.3,四个控制字,和60个bytes的IQ数据。那么,CPRI的基本帧的结构就如下图所示,如果是614.4Mbps的CPRI应用,那Y就只会等于0,数据为Z.X.0打头,有16个bytes数组成,第1个byte一般做控制用,后15个bytes就是IQ数据。用户不用在IQ数据接口(iq_tx,iq_rx)管这几个数,后面则是正常的IQ数据收发。
2024-04-20 22:32:57
2850
17
CCSv5的安装及TMS320c6678的调试.rar
2020-05-17
riffa_pcie_2.2.zip
2020-04-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人