草庐IT

PCIE-PHY

全部标签

FPGA驱动千兆以太网PHY但电脑只显示百兆

前两天公司做了个新板子,ZYNQ7035+RTL8211E,拿给我测,于是写逻辑代码测试一下数据回环,没想到电脑端网络适配器一直显示是百兆网。查了多方原因,差点想手动配置寄存器了,但是想想又觉得不对,FPGA逻辑驱动以太网PHY芯片是不用配置寄存器的,只要PHY芯片外部引脚上下拉正常就行。于是我一个写代码的查起了硬件,果然,PHY芯片1.05V电压输出端有个电感,变成磁珠了,这肯定不行啊,虽然电压是稳定的,但是磁珠电流太小,遂换成2.2uh电感,顺利解决问题。电脑终于协商为千兆网了。(做硬件的一定要仔细啊)原理图局部如下:就是图中的BF15磁珠换成2.2uh电感。 类似的,大家做硬件一定要检查

Atlas200关于RTL8211FSI和YT8521SH千兆以太PHY调试心得

最近调试了一个硬件千兆以太PHY的问题,记录一下。问题现象描述:两块Atlas200板卡,上电后,ping不通,但是插网线连接电脑的话,电脑能识别这个网卡,所以感觉还是MAC和PHY之间的通信出了问题。一块板卡用的是RTL8211,另一块是YT8521SH,两个PHY芯片是封装完全兼容的。 实施步骤:1.先测量外部的25Mhz晶振,正常         2.测量PHY芯片的核压,1V/1.2V,正常.顺便说一下,这个核压是一个DC-DC电路,外部的的电感和电容需靠近芯片布局,否则会出现电压不正常现象。         3.接口为1.8V,不正常,经过排查发现是配置电压不对,修改后正常。心得:之

PHY芯片的使用(二)使用Vivado SDK调试网络

在使用ZYNQ或者FMQL的以太网时都需要在VivadoBD中勾选Enet0/1,最好也勾选上UART0/1。如果就使用这两个外设就可是直接生成bit然后导出硬件启动SDK了。SDK建立工程中有以太网相关的工程,选用最简单的即可如下图。使用这个工程除了选Enet还要选用串口,否则工程无法建立。建立工程后进入工程main函数,可配置物理地址,取消DHCP可配置IP地址,,如下图。若新板卡硬件设计和制板没问题,就这个程序运行后,可用PC端ping通该板卡。这就是最简单判断以太网是否正常的例子。若通讯异常可单步调试该工程首先排查MDIO是否正常。该工程首先会遍历MDIO地址从0-31依次扫描。然后再

PCIE学习笔记:PCIE-PHY功能描述之什么是PMA/PCS?

PMA和PCS模块用于处理PHYpackets。PMA:PhysicalMediumAttachmentPMA在串行通道上接收和传输高速串行数据,串行化/去串行化、时钟数据恢复等功能,以及连续时间线性均衡器(CTLE)、判决反馈均衡器(DFE)和传输均衡等模拟前端功能。。PCS:PhysicalCodingSublayerPCS充当PMA和PCIe控制器之间的接口,并执行数据编码和解码、加扰和解扰、块同步等功能。参考资料:1.F-TileAvalon®StreamingIntel®FPGAIPforPCIExpress*UserGuide2.ProposalforanInitialdrafto

【Microsemi PolarFire】PCIe学习笔记(一)——PCIe IP核配置

PCIeIP核配置1、TransceiverReferenceClock:PF_XCVR_REF_CLK2、TransmitPLL:PF_TXPLL3、PCIExpress:PF_PCIE(1)基础配置(2)设备信息,厂商ID配置(3)电源管理配置(4)中断类型配置(5)Bar空间配置1、TransceiverReferenceClock:PF_XCVR_REF_CLK根据对GUI的输入生成参考时钟,PCIESS系统的参考时钟使用差分HCSL/LVDS。根据PCIe时钟架构,有以下三种参考时钟可供选择:收发端共享同一个参考时钟、收发端采用独立的参考时钟、仅发送端需要参考时钟(适用于PCIe2.

【PCIE体系结构五】PCIE配置和地址空间

👉个人主页:highman110👉作者简介:一名硬件工程师,持续学习,不断记录,保持思考,输出干货内容 参考书籍:PCI_Express体系结构导读、深入浅出SSD:固态存储核心技术、原理与实战目录概述EP的配置空间switch的配置空间概述        每个PCIe设备都有这样一段空间,主机软件可以通过读取它获得该设备的一些信息,也可以通过它来配置该设备,这段空间就称为PCIe的配置空间。不同于每个设备的其他空间,PCIe设备的配置空间是协议规定好的,哪个地方放什么内容,都是有定义的。        PCIE设备的配置空间定义部分从PCI总线继承,PCIE新增了一个扩展配置寄存器空间,PC

【PCIE体系结构三】PCIE的硬件拓扑结构和逻辑层次结构

👉个人主页:highman110👉作者简介:一名硬件工程师,持续学习,不断记录,保持思考,输出干货内容 目录 PCIE总线结构PCI总线结构组成 HOST主桥 PCI总线 PCI设备 HOST处理器 PCI负载 PCIE体系结构组成 RC Endpoint Switch PCIE层次结构事务层数据链路层物理层参考文章:PCI_Express体系结构导读  PCIE总线结构PCI总线结构组成        PCIE是PCI发展而来的,我们先看一下PCI的总线结构,下图从《PCIExpress体系结构导读》书中截取。把下图与计算机硬件体系结构的CPU-GPU-南桥-北桥结构对应一下,上面红框应该是

浅谈pcie硬件验证方案

目录1.1.pcie起源1.2.pcie应用2.1.pcie架构介绍2.2.pcie耦合电容与detect2.3.pcie均衡技术3.1.Chip-to-Chip测试指标3.1.1.无源参数指标3.1.1.有源参数指标3.2.无源+有源仿真无源参数仿真有源仿真3.4.有源信号测试100MHz时钟测试PCIEdatalane信号测试pcie概述本章主要介绍pcie总线的起源、发展、以及目前在市面上以不同形式、不同行业呈现的应用。1.1.pcie起源PCIE全称peripheralcomponentinterconnectexpress,是为了取代跟不上时代发展的PCI提出的,并在相关技术的不断发

PCIE——第 8 章——PCIe 总线的链路训练与电源管理

摘要:PCIE——第8章——PCIe总线的链路训练与电源管理目录第8章 PCIe总线的链路训练与电源管理8.1 PCIe链路训练简介8.1.1 链路训练使用的字符序列8.1.2 ElectricalIdle状态 8.1.3 ReceiverDetect识别逻辑8.2 LTSSM状态机8.2.5 LTSSM的其他状态8.3 PCIe总线的ASPM8.3.1 与电源管理相关的链路状态 8.4 PCIPM机制8.5 小结参考文章:第8章 PCIe总线的链路训练与电源管理8.1 PCIe链路训练简介PCIe总线进行链路训练的主要目的是初始化PCIe链路的物理层、端口配置信息、相应的链路状态,并了解链路

c - Linux 4.4 PCIe DMA 进入用户空间页面不工作 - highmem 不可用于 DMA?

我正在更新一个旧的linux驱动程序,该驱动程序通过DMA将数据传输到用户空间页面,这些页面通过get_user_pages()从应用程序向下传递。我的硬件是一个新的基于x86Xeon的主板,有12GB内存。驱动程序从VME获取数据到PCIeFPGA,并应该将其写入主内存。我为每个页面执行一个dma_map_pages(),我用dma_mapping_error()检查它并将返回的物理DMA地址写入DMAController的缓冲区描述符。然后我启动DMA。(我们还可以在FPGA跟踪器中看到传输开始)。但是,当我收到DMA完成IRQ时,我看不到任何数据。对于控制,我有相同的VME地址空