高速接口
weiweiliulu
这个作者很懒,什么都没留下…
展开
-
vivado iBert 测试
以上配置完成后自动生成IP 的example 。不用分配引脚,直接使用就可以。原创 2021-03-24 11:08:16 · 1250 阅读 · 0 评论 -
LVDS OSERDESE2 原语
目录1.AD91482. ad9739在很多高速DA芯片中,都是高速串行输出LVDS数据。这显然不能用fpga Verilog 语言直接写代码进行采样,需要用到专门的 iserdese 原语。一直不懂的是,时钟,并行数据宽度,并行数据位宽的先后顺序,多bit 输出怎么级联,等等。并行数据宽度,有几个,不是随便定义的,要按照上表的说明来。有两套可以学习的代码,一个是AD9148,一个是AD9739 这个不光是看芯片手册,还需要看硬件上原理图。自己没有动手调试过,看别人代码,整理的.原创 2021-02-07 16:40:45 · 2216 阅读 · 1 评论 -
JESD204B 协议解析和参数理解
1. 概述 在JESD204接口出现以前,数模转换器的数字接口绝大多数是差分LVDS的接口,这就造成了布板的困难,当PCB的密度很大的时候就需要增加板层从而造成制版的成本。但是JESD204需要进行严格的同步和时延的测量,接口逻辑会比LVDS复杂。JESD204 有不同的版本,但是大部分用的subclass1。2. 时钟 device clock 是器件工作的主时钟,一般在模数转换器里为采样时钟或者整数倍频的时钟,其协议本身的帧和多帧时钟也是基于device clock 。...原创 2020-08-19 10:58:24 · 10223 阅读 · 0 评论 -
7 series FPGA 高速收发器
RX 信号从AFE (模拟前端)进来之后,首先经过RX均衡器,均衡器的主要作用是用于补偿信号在信道传输过程中的高频损失,因为信道是带宽受限的,所以信号经过它必将造成衰减甚至遭到破坏。RX接收端的均衡器首先外部数据进来之后经过均衡器,紧接着均衡器出来的数据就进入时钟恢复电路。GTX使用相位旋转CDR结构,从DFE进来的数据分别被边缘采样器和数据采样器捕获,然后CDR状态机根据两者决定数据流的相位并反馈控制相位内插器,当数据采样器的位置位于眼图中央的时候边缘采样器锁定到数据流的传输域。其中CPLL或原创 2020-08-18 14:58:54 · 559 阅读 · 0 评论 -
AURORA 8B/10B IP 核详解
Aurora 基础知识没有了解,只是用了一下IP核。废话不说,直接上IP核下面选择aurora的lane通道。这里需要注意,选择 的要和最后引脚分配的一致。也尝试过,在一个IP 核中开4个lane,其中一个做主,另外3个做从。下板子验证过,三个可以独立工作。主lane没有互联lane up 他三个的工作也正常。因为,主lane只要时钟正常,其他lane就可以正常工...原创 2019-06-18 18:07:17 · 14661 阅读 · 3 评论 -
AURORA核多通道绑定使用注意事项
正文在Aurora片间接口的调试中,一共需要用到两片FPGA,为达到速率的要求,所以Aurora需要采用主从双核,双通道绑定的工作模式,一共需要四个GTX(一个GTX 支持4Gbps的速率,一个Aurora核使用两个GTX,所以本例程中一个Aurora核最高支持8Gbps的速率)来完成片间数据的传输工作。 ...转载 2020-07-22 15:03:37 · 4038 阅读 · 0 评论 -
ADS6445开发笔记(2)---- LVDS 高速接口
从上一章节,芯片资料可以看到,串行输出LVDS数据的bit clock,都是400MHZ以上的。这显然不能用fpga Verilog 语言直接写代码进行采样,需要用到专门的 iserdese 原语。1. 数据接口时序图数据接口有很多中模式,这里只贴了一种的图上图可以看到以下几点:信号线分3类,数据采集时钟DCLK,帧同步信号FCLK,输入数据DATA 输入数据采样时钟默认是已经对齐了输入数据的中点,但帧时钟是和数据字边缘对齐 使用iserdese接收数据,idelay调整时钟延迟..原创 2020-06-11 18:48:34 · 6300 阅读 · 2 评论 -
ADS6445开发笔记(1)---- 芯片介绍
写这篇博客的时候,暂未调试ADS6445,只是想资料整理一下,方便自己理解、查看。中间可能会有一些理解错误的地方,欢迎大家批评指正。1. 芯片特性最大采样率125MSPS,可支持125/105/80/65MSPS采样 14bit分辨率 3.5db 粗增益和可编程高达6db增益 可编程调整SFDR(无杂散动态范围)/SNR(信噪比)之间的平衡 串行LVDS输出 支持Sine, LVCMOS,LVPECL,LVSD时钟输入,振幅可以下降到400mVPP2.应用范围基站中频接收机 多样性原创 2020-06-11 13:55:23 · 2532 阅读 · 1 评论 -
JESD204B协议基础知识
1.JESD204B优势 JESD204是基于SERDES的串行接口标准,主要用于数模转换器和逻辑器件之间的数据传输,最早版本的是JESD204A,现在是JESD204B subclass0,subclass1,subclass2。区别主要在于对齐同步和链路间固定时差的测量。目前市场上比较多的数模转换器接口是JESD204Bsubclass1。其最大传输速率可达12.5Gbps,支持多链路和多器件的同步以及固定时差的测量。2. 关键变量M :converters/device , 转换...原创 2020-06-02 17:03:06 · 20156 阅读 · 3 评论 -
FPGA中加扰与解扰的实现
FPGA中加扰与解扰的实现 ...转载 2020-06-02 10:49:40 · 4364 阅读 · 0 评论 -
SATA协议14种FIS介绍
FIS(Frame Information Structure)解析FIS是一种用于Host和device之间信息传输的机制,每个FIS的格式都是固定的,并且对应唯一的ID,SATA Spec定义了14类FIS ID。但是,实际上,我们用到主要是8类:FIS TypeFIS IDDiscriptio...转载 2020-05-27 15:12:49 · 2199 阅读 · 0 评论 -
SATA控制器学习资料整理
1. 参考资料首先,先推荐几个好的参考资料https://www.doc88.com/p-592167157036.html这是一个中文论文,可以先看中文的,再看下面英文的,英文的比中文 的写的详细https://download.csdn.net/download/weiweiliulu/12465007其实就是Design of an Open-Source Sata Core for Virtex-4 FPGAs这篇英文论文2. SATA结构SATA 的每一层都分工明确..原创 2020-05-27 15:03:13 · 3322 阅读 · 0 评论 -
单模光纤和多模光纤
目录1 . 模块外形差别2. 本质上区别1 . 模块外形差别1) 波长不一样,单模块波长长2)拉环不一样,多模块是黑色拉环,但模块是蓝色拉环2. 本质上区别1)多模光纤 (multi mode fiber )波长850nm/1300nm,适用于短距离传输,支持上百种传输模式。一般采用LED(发光二极管)或垂直腔面发射激光器(VCSEL)作为光源,因为LED光源能产生许多模式的光(光较分散);多模光纤适合短距离(300~400m)的数据传输,应用于企业、数据...原创 2020-05-21 14:04:49 · 2238 阅读 · 0 评论 -
GT高速接口通关简介
1、GT基础知识 SATA 接口只有几根线为什么那么快?连上网线显示的10Gbps(万兆网)是不是很令人兴奋!没错,他们都用了高速GTX技术、GTX全称Gigabit transceiver,是为了满足高速、实时传输而生的技术。传统的并行传输技术存在抗干扰能力低,同步能力差,传输速度低和信号质量差等问题。GTX目前的线速度范围是1Gbps - 12Gbps,有效负载范围0.8Gbps - 10Gbps。目前GTX已经应用于光纤通道(FC),PCIE,Rapid io,串行SATA ,千兆以太网,万..原创 2020-05-20 18:54:59 · 8946 阅读 · 0 评论 -
Xilinx 系列 FPGA 高速收发器的一些知识
GT的意思是Gigabyte Transceiver ,G比特收发器,通常叫serdes 、高速收发器。GT有GTP GTX GTH GTZ 。TX和RX:严格说TX应该是Transmitter ,表示发送部分,RX是Receiver .,表示接受部分 。包含两大部分,PMA PCS。PMA主要功能是 : 串并转换和模拟部分。PCS主要是并行数字电路处理。ibert 是Xil...原创 2019-07-02 15:57:22 · 7592 阅读 · 6 评论 -
GTX/GTH QPLL CPLL学习之Aurora
目录1 基础知识2 Aurora 使用过程中报错1 基础知识Xilinx的7系列FPGA随着集成度的提高,其高速串行收发器不再独占一个单独的参考时钟,而是以Quad来对串行高速收发器进行分组,四个串行高速收发器和一个COMMOM(QPLL)组成一个Quad,每一个串行高速收发器称为一个Channel。QPLL和CPLL的区别,在于两者支持的线速率不同,对于CPLL来说,支持的线速率位1.6GHz到3.3GHZ之间,而对于QPLL来说,GTX支持的线速率分两档,Low...原创 2020-05-19 19:05:19 · 8642 阅读 · 0 评论 -
pcie Riffa 之注意事项
在使用Riffa的过程中,观察FPGA发送端口的波形,发现一包数据的搬移,中间会有1MS--3MS 不等的暂停。原创 2020-03-03 14:00:20 · 1166 阅读 · 4 评论 -
基于RIFFA的PCIE
RIFFA 要想用起来,不仅要有FPGA 代码,还需要有PC 的驱动和代码。下面描述Linux 环境下怎么安装驱动和运行代码。驱动安装 打开终端,进入riffa 驱动所在路径 cd(空格)(riffa路径拖入 xx\riffa_2.2.2\source\driver\linux)2)安装内核头文件 $ sudo make setup这将尝试使用...原创 2019-06-25 11:53:31 · 6614 阅读 · 5 评论 -
PCIE 之 FPGA 官方自带example应用
1)用IP 核的example 编译,下载代码根据xilix的xdma例程按照实际的情况分配引脚,生成bit下载到板子2)驱动安装驱动在IP核文档中有链接。下载完成后进入电脑测试模(bcdedit /set testsigning on)重启电脑安装驱动(x64\XDMA_Driver\Win10_Release)选择XDMA.sys,驱动安装成功后可在设备管理器界面看到xilinx ...原创 2020-01-15 16:21:29 · 2596 阅读 · 0 评论 -
pcie 之Riffa
在调试过程中,首先要在Linux系统下安装PCIE驱动,编译代码。驱动安装和代码编译指令见下图。图 riffa 驱动安装图 riffa 代码编译)打开终端,进入riffa 驱动所在路径 cd(空格)(riffa路径拖入 xx\riffa_2.2.2\source\driver\linux)2)安装内核头文件 $ sudo make setup这将...原创 2020-01-15 16:00:16 · 3794 阅读 · 1 评论 -
SRIO IP 数据发送时代码复位的问题
SRIO 调试期间,抓取送入IP核的数据,没有错误,但是对端收到的数据,感觉第一包数据和第二包数据不连续,一包数据16KB。具体记不清了,大致就是,第二包最开始收到的数据不是数据帧头,最后查验,是第一包数据的一部分,然后才是第二包数据的帧头。 最后查找问题,是发送端数据复位的问题。比如,一次SRIO 发送256字节的数据,下面assign 是SRIO NWRITE包,定义了...原创 2020-04-23 14:44:02 · 1026 阅读 · 0 评论 -
rapid io 学习之1
好用的学习网站认真看下面的链接就可以把rapid io 的知识搞明白。https://www.cnblogs.com/lionsde/p/10109523.html IP学习过程中,主要注意以下内容:rapid io协议不用看,FPGA IP 核为了简化应用,在用户接口上已经把复杂的rapid io 数据包简化为hello包。在使用IP 核的时候,只需要看懂hell...原创 2019-12-23 18:28:00 · 2438 阅读 · 0 评论 -
DDR 学习4 不用AXI 方式的DDR IP核控制
ddr 400Mmig 200Muser 200Mddr data_width 64user data_width256https://blog.csdn.net/MaoChuangAn/article/details/85268231https://www.docin.com/p-2111794929.htmlhttps://blog.csdn.net/SLAM_ma...原创 2020-04-21 16:14:58 · 587 阅读 · 0 评论 -
DDR学习3 应用
1 IP核端口介绍这里不逐个赘述,说几个配置需要注意点a) 下面这两个,一个是一个时钟写字节数,一个是突发写数据长度。s_axi_awsize = get_wordlength(C_DATA_WIDTH/8)举例,C_DATA_WIDTH = 256 ,256/8 = 32 get_wordlength(32) = 5 .2^5 = 32s_axi_awlen = = (C_B...原创 2019-09-19 11:53:28 · 450 阅读 · 0 评论 -
DDR学习2 IP核配置注意事项
有关IP核的配置,上一篇文章写的很详细。这里主要写自己使用的过程中需要注意的地方。1 2 这里的数据位宽可选,不如32bit 256bit 512bit。那为什么这里就用了256bit呢?当然也不是随便选的。一种算法是,芯片800M 时钟,双沿触发,数据位宽32bit。IP核生成的用户时钟是芯片时钟的4分之一,也就是200M。(800 * 2...原创 2019-09-19 11:52:58 · 1448 阅读 · 0 评论 -
ddr学习1基本概念和学习资料
第一次入手DDR 的可以先看网上几个经典的学习资料。https://blog.csdn.net/u012923751/article/details/83241169理解DDR是什么,工作原理下面连续3个链接是一个DDR 使用教程https://wenku.baidu.com/view/ac32c8bcf705cc1754270923.htmlXilinx平台DD...原创 2019-09-19 11:50:51 · 626 阅读 · 0 评论 -
DDR3学习之一 好用的学习资料
https://blog.csdn.net/u012923751/article/details/83241169 理解DDRhttps://wenku.baidu.com/view/ac32c8bcf705cc1754270923.html Xilinx平台DDR3设计教程之仿真https://wenku.baidu.com/view/2ffa1334783e0912a316...原创 2019-06-05 11:58:01 · 2043 阅读 · 0 评论 -
8B/10bB编码
8B/10B编码的特性之一是保证DC平衡,使得发送的0 、1数量保持基本一致,连续的1或0不超过5位,即每5个连续的1或0后必须插入一位0或1,从而保证信号DC平衡。 通过0 、1 数据的跳变,接收端可以用来恢复时钟,同样可以在早期发现数据位的传输错误,抑制错误继续发生。 8B/10B编码是将一组连续的8位数据分解成两组数据,一组3位,一组5位,经过编码后分别成为一组4位...原创 2019-07-02 11:46:16 · 4184 阅读 · 0 评论