- 博客(21)
- 收藏
- 关注
原创 IIC协议、SMI接口、UDP、RGMⅡ接口、TCP协议等
1.简介:OSI(open system interconnection reference model),开放式通信系统互联参考模型,是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系,一般称为OSI模型或七层模型。包含一系列抽象的术语和概念,还有具体的协议。2.具体介绍:应用层应用层TCP、UDP报文或通信子网。
2024-05-25 19:50:56
2222
1
原创 基于Riffa框架的PCIE应用开发(五)——Riffa框架下FPGA侧接收配置数据和图像数据开发--图像数据通道
本文章对另外一个通道——图像数据通道进行开发。conf_channel 解析的PCIE 传递过来的分辨率信息,宽度和高度传递给images_ctrl,images_ctrl 就知道什么时候产生frame_end 信号,当images_ctrl 接收到一帧图像的数据后产生frame_end 信号,frame_end 信号是用来给ack_ctrl 模块通知产生ack 帧通知上位机发送新的一帧数据,以此循环,达到循环帧的接收。本节要完成image_ctrl 和ack_Ctrl模块。
2024-04-16 19:47:05
658
原创 基于Riffa框架的PCIE应用开发(四)——Riffa框架下FPGA侧接收配置数据和图像数据开发--配置数据通道
此部分是本设计中我们重点要掌握的部分,此部分开发包括上位机软件的开发和FPGA的开发,我只重点掌握FPGA的开发。
2024-04-16 17:38:09
454
原创 基于Riffa框架的PCIE应用开发(三)——Riffa框架channel时序要求和初步驱动API搭建
至此,我们便掌握了Riffa框架channel时序和TLP包的接受发送时序,便搭建了Riffa上位机和pcie的环境,下一步我们将进行Riffa的fpga侧接收配置数据和图像数据的开发。
2023-12-29 09:37:24
2379
2
原创 基于Riffa框架的PCIE应用开发(二)——pcie环境搭建
1. 在这篇文章中,我们使用Riffa框架把初步的pcie通道打通,搭建好开发环境。
2023-12-28 21:12:15
1013
原创 基于Riffa框架的PCIE应用开发(一)——基础知识
1. PCI Express 是用来互联网计算机和外围设备的高速接口总线;2. PCIe的两个设备之间可以实现点对点的通信串行总线,如果是多台设备需要通过交换器(Switch)进行互联;互联中可实现单通道或多通道的数据传输;3. pcie的 endpoint 为从设备;root complex为主设备;一般情况下为主从互换,当从与从之间进行互换的时候需要经过主设备;4. 是基于数据包的传输协议;5. 全双工通信1. TLP包由pcie的endpoint或root complex发送;
2023-12-28 12:12:17
2969
原创 千兆通信中的发送链路(三)——CRC校验模块和ODDR模块
本文章实现本设计的最后两个模块:CRC_ctrl模块和ODDR模块,然后便可以将数据包从板卡传递到主机。
2023-11-29 19:51:11
306
原创 千兆通信中的发送链路(二)——IP和UDP校验计算
在上一篇文章中,我们已经完成了设计流程中的定时器模块和产生UDP基本帧结构模块的书写,本文我我们来完成checksum_ctrl模块,该模块里面包含了IP和UDP 的校验和计算,将计算出来的结果填充到以太网协议的IP头部检测计算方法和UDP首部的头部检测计算方法。设计框图如图1-1所示。
2023-11-29 19:20:52
870
原创 千兆通信中的发送链路(一)——定时器和心跳帧
本设计来要构建MAC层和UDP组包,完成板卡板卡到主机的数据包传递链路。设计流程图如图1-1所示。在本文章中,我们只实现前两个模块——定时器和产生UDP基本帧结构。
2023-11-29 14:40:36
301
原创 千兆数据接收,HDMI显示设计(三)——千兆数据流存储和HDMI显示
数据经过千兆以太网发送到FPGA 后,经过CRC校验和过滤无效帧后,我们就要提取视频数据了,并将数据存入到DDR3中,再将视频数据通过HDMI显示。
2023-11-28 10:48:57
394
原创 千兆数据接收,HDMI显示设计(二)——数据接收fifo、crc校验和数据包过滤
pc机通过千兆以太网传来的数据经过上节的模块处理后变成单沿数据,本节要在FPGA 中对接收到的数据进行CRC校验和过滤无效帧。设计框图如图1-1所示。数据到达以后,同时进行:存入RX_BUFFER的fifo中;进行数据包过滤,判断是不是我们需要的包;进行crc校验,判断数据传输是否正确。当数据正确,确定为我们需要的数据包以后,再将存入数据fifo的数据读出使用。
2023-11-17 21:18:11
202
原创 千兆数据接收,HDMI显示设计(一)——RGMⅡ接口、IDDR源语、PHY芯片的使用
1. 本设计通过PC机将数据通过千兆以太网发送到FPGA,由于PHY传到FPGA的数据是双沿数据,而FPGA处理数据一般为单沿数据,所以需要使用IDDR源语将双沿数据转化为单沿数据,然后将数据进行处理储存,流程图如图1-1所示。2.FPGA处理处理数据使用的是晶振产生时钟,而PHY传来的数据是以及经过IDDR源语处理转化为单沿的数据都是和PHY的时钟同步的,使用我们如果想使用FPGA的时钟作为后续数据处理的时钟,就要经过跨时钟域处理。
2023-11-17 16:14:42
348
原创 基于A7 的DDR3 SDRAM 控制器IP核的相关操作——端口优化(三)
在上一篇文章中,我们通过添加fifo解决了防止数据和命令丢失的问题。但是引入了很多的端口信号,这导致使用的时候不是很方便,所以在该篇文章中我们设计两个模块,分别是“用户写控制”和“用户读控制”模块,来减少端口信号。
2023-11-04 21:01:57
73
原创 基于A7 的DDR3 SDRAM 控制器IP核的相关操作——功能优化(二)
1. 我们在上一篇文章中实现了DDR3 SDRAM 控制器IP核的读写操作,但是无论读写一次只能发送一次突发命令和一次突发的数据,当再来一次的读或者写命令的时候,此时我们的控制器是没有办法执行的,所以我们可以加存储器将没有办法即使执行的命令和数据缓存起来,当前操作结束后,再从缓存器里面读取下一次需要的命令和数据。这样就可以防止数据和命令丢失。
2023-11-02 09:27:39
109
原创 基于A7的DDR3 SDRAM 控制器IP核相关操作(一)
掌握Xilinx A7 FPGA芯片内已集成的用于控制SDRAM的IP核的调取和使用。
2023-11-01 22:37:36
202
原创 通过TCP从客户端传输视频流到服务端,并在服务端对数据进行处理后通过HDMI显示和传回客户端
本设计要实现:通过上位机软件将视频数据通过千兆网口(Ethernet)发送到ARM端;然后通过DMA(直接寄存器访问)的方式将视频数据读取出来;在PL端进行相应的算法处理;处理后的视频数据使用ACP接口写入内存中,可以保证缓存和DDR的一致性;再通过DMA将处理后的视频读出并通过HDMI显示,并且传回到上位机。
2023-10-11 23:02:41
749
2
原创 半导体存储器(ROM、RAM)
半导体存储器是一种可以存储大量二值信息的半导体器件。在电子计算机及一些其他的数字系统的工作过程中,需要对大量的数据进行储存。由于数据处理的数据量和运算速度的要求,因此把存储量和存取速度作为衡量存储器的重要指标。因为半导体存储器的存储单元十分庞大,不可能把每个存储单元的输入和输出直接引出。通常是把存储器中的每个存储单元编一个地址,只有被输入地址指定的那些存储单元才能与公用的I/O引脚接通。
2023-10-09 19:28:12
1026
1
原创 zynq的HP口读写IMX222摄像头的1080p视频流并通过HDMI显示(三)——白平衡的RTL实现
(4)调用的除法IP和乘法IP均有延迟,也会输出相应的valid信号,来标志计算结果有效,这个有效信号便可以作为图像数据有效信号的输出(rgb_lv_o),为确保可靠性,我将IP产生的计算结果有效信号延迟一拍后再作为rgb_lv_o输出。当计算出的Rnew、Gnew、Bnew的值大于255时,输出255,小于等于255时,输出计算得到的值即可。代码中:Ravg、Gavg、Bavg表示上一帧图像所有像素的R/G/B的平均值,Kavg是上一帧图像的R/G/B平均值的平均值,称为灰度平均值。
2023-09-19 12:04:17
276
原创 zynq的HP口读写IMX222摄像头的1080p视频流并通过HDMI显示(二)——双BUFFER实现视频帧同步防止视频撕裂
(一)中设计实现的工程在HDMI显示过程中,出现了图像撕裂的现象,是因为我们在之前使用的是单个buffer来缓存视频数据,读写帧不同步。再本设计中,使用双BUFFER实现视频帧同步,来防止视频撕裂。
2023-09-16 18:46:42
519
1
原创 zynq的HP口读写IMX222摄像头的1080p视频流并通过HDMI显示(一)
在本设计中,通过zynq实现了IMX222摄像头拍摄的图像在HDMI显示器上的显示。首先通过SPI配置了IMX222摄像头的寄存器,然后对IMX222 1080P模式的图像进行解析产生同步信号和像素值,再将Bayer形式的像素转换成RGB形式的像素,然后通过zynq的HP口高速的将RGB像素值写入DDR中,再通过zynq的HP口高速的读取DDR中的RGB像素值并且传输给HDMI转换模块进行图像显示。除此之外,还分享了一些调试的方法与心得。
2023-09-12 17:42:40
2090
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人