FIFO 与 UPP 本节我们结合UPP接口给大家介绍一下FIFO在实际工程中的使用。 广州创龙电子科技有限公司 广州创龙电子科技有限公司 Guangzhou Tronlong Electronic Technology Co., Ltd FIFO 与 UPP 01 51ele.net 广州创龙电子科技有限公司 官网:www.tronlong.com 论坛:51dsp.net 微信公众号:广州创龙
本节我们给大家讲解串行RapidIO接口(SRIO接口)。 我们会结合广州创龙的相关板卡给大家进行实验演示。 广州创龙电子科技有限公司 Guangzhou Tronlong Electronic Technology Co., Ltd 本节我们给大家讲解串行RapidIO接口(SRIO接口)。 我们会结合广州创龙的相关板卡给大家进行实验演示。 01 广州创龙电子科技有限公司
01 RapidIO简介 02 FPGA实现RapidIO接口 03 FPGA程序解析 04 实验 02 广州创龙电子科技有限公司
01 RapidIO简介 第 1 部分 03 广州创龙电子科技有限公司
总线技术 传统串行总线:UART总线,SPI总线,IIC总线等。 传统并行总线:EMIF总线,UPP总线,PCI总线等。 接口简单,硬件设计简单。 协议较简单。 传输速度慢。 传统并行总线:EMIF总线,UPP总线,PCI总线等。 比传统串行总线速度快。 接口引脚多,硬件设计困难。 传输距离短。 高速串行总线:USB总线,PCIE总线,SRIO总线等。 速度快,链路速度一般可以工作在2.5Gbps,3.25Gbps,5Gbps,6.25Gbps。 低压差分信号(Low Voltage Differential Signal,LVDS)。 接口简单,硬件设计简单。但传输协议复杂。 04 广州创龙电子科技有限公司
10G级互连技术比较 三种带宽能达到10Gbps的互连技术:以太网,PCI Express和串行RapidIO(SRIO)。 05 广州创龙电子科技有限公司
RapidIO 简介 RapidIO技术是由Freescale和Mercury公司率先提出的一种高带宽、低延时的基于包交换的开方式互联技术标准。RapidIO主要应用于嵌入式系统的高速互联,支持芯片到芯片以及板卡到板卡间的高速通讯。 RapidIO技术的主要特点: 灵活的系统结构,允许点对点传输。 带错误检测的鲁棒传输。 可扩展的频率和接口宽度。 非软件密集型操作。 低开销的高带宽互联。 低引脚数、低功耗、低延迟。 06 广州创龙电子科技有限公司
RapidIO 规范 RapidIO行业协会成立于2000年,其宗旨是为嵌入式系统开发可靠的、 高性能、 基于包交换的互连技术,2001 年正式发表其基本的规范。2003 年10 月,国际标准组织(ISO)和国际电工委员会(IEC)一致通过了RapidIO互联规范,即ISO/IEC DIS 18372,这是RapidIO成为嵌入式互连技术方面得到授权的唯一标准。RapidIO 的规范发布历史如下: 2001年3月,发布RapidIO 1.1规范; 2002年6月,发布RapidIO 1.2规范; 2005年2月,发布RapidIO 1.3规范; 2007年6月,发布RapidIO 2.0规范; 2009年8月,发布RapidIO 2.1规范; 2011年5月,发布RapidIO 2.2规范。 RapidIO 1.x标准支持的信号速率为1.25GHz、2.5GHz和3.125GHz;RapidIO 2.x标准在兼容Rapid IO 1.x标准基础上,增加了支持5GHz和6.25GHz的传输速率 。 RapidIO 已有超过10 年的历史,仍然生机勃勃,它还在继续为开发人员提供高速、先进的通讯技术:可对许多集成电路、板卡、背板及计算机系统供应商提供支持,支持RapidIO 标准的厂商有:Mercury Computer Systems、Freescale Semiconductor、Lucent-Alcatel、PMC-Sierra、Texas Instruments、Tundra Semiconductor、WindRiver、AMCC、Curtiss-Wright Controls、GE Fanuc 等,也就是说世界上几乎所有的嵌入式主流厂商都已经支持RapidIO 技术,显然,RapidIO 势在必行。 07 广州创龙电子科技有限公司
RapidIO Interconnect Specification 2.1 Part 1: Input/Output Logical Specification Part 2: Message Passing Logical Specification Part 3: Common Transport Specification Part 4: Physical Layer 8/16 LP-LVDS Specification Part 5: Globally Shared Memory Logical Specification Part 6: LP-Serial Physical Layer Specification Part 7: System and Device Inter-operability Specification Part 8: Error Management Extensions Specification Part 9: Flow Control Logical Layer Extensions Specification Part 10: Data Streaming Logical Specification Part 11: Multicast Extensions Specification Part 12: Virtual Output Queueing Extensions Specification Annex 1: Software/System Bring Up Specification Annex 2: Session Management Protocol Specification 08 广州创龙电子科技有限公司
RapidIO协议结构 RapidIO协议分为三层:逻辑层、传输层和物理层。 逻辑层定义接口的协议和数据包格式; 传输层定义了包交换、路由和寻址机制; 物理层定义了电气特性、链路控制和纠错重传等。 09 广州创龙电子科技有限公司
RapidIO 传输流程 10 广州创龙电子科技有限公司
RapidIO 包格式 RapidIO 包由包头、可选的载荷数据和16bits CRC校验组成。包头的长度因为包类型不同可能是十几到二十几个字节。每包的载荷数据长度不超过256字节,这有利于减少传输时延,简化硬件实现。 11 广州创龙电子科技有限公司
RapidIO 支持的IO操作规范 12 广州创龙电子科技有限公司
RapidIO NREAD 操作 13 广州创龙电子科技有限公司
RapidIO 支持的消息传递逻辑规范 14 广州创龙电子科技有限公司
RapidIO 数据对齐和分包 15 广州创龙电子科技有限公司
RapidIO数据包的具体格式 16 广州创龙电子科技有限公司
02 FPGA实现RapidIO接口 第 2 部分 17 广州创龙电子科技有限公司
Xilinx RapidIO IP核 18 广州创龙电子科技有限公司
Xilinx RapidIO IP核 LOG 逻辑层 BUF 传输层 PHY 物理层 19 广州创龙电子科技有限公司
LOG逻辑层 LOG层内包含3种接口:user interface、transport interface 和 configurationfabric interface。 任何支持I/O事务传输的都将在I/O Port 收发,如NWRITE,NWRITE_R,SWRITE,NREAD和RESPONSE等事务; MESSAGE事务可以在I/O Port 传输,也可以在专用的Messaging Port传输; DOORBELL事务不管有没有Messaging Port,都将使用 I/O Port 进行传输; 如果定义了Maintenance Port,那么MAINTENANCE事务将通过Maintenance Port 传输; 如果使用了User-Defined 接口的话,那么由用户自定义的、系统不支持的或者未指明接口的事务将可以采用User-Defined 接口,如果未使能User-Defined 接口,那么上面提到的这3种事务包将被丢弃。 20 广州创龙电子科技有限公司
User Interface 21 广州创龙电子科技有限公司 I/O port (必备的) I/O port支持两种模式:Condensed IO 和 Initiator/Target Legacy I/O port支持两种格式:HELLO Format 和 SRIO Stream 对于接口模式和数据包格式的选择都需要在IP核配置中选择,并且IO Port所有的channels都必须使用相同的包格式。 Initiator/Target ireq/iresp作为Master的通道。ireq用于向Slave器件主动发起事务请求,iresp用于接收Slave器件返回的响应。 treq/tresp作为Slave的通道。treq用于接收Master器件发送的事务包,tresp用于给Master器件发送响应。 Condensed IO IO Port配置成Condensed IO模式主要是为了减少channels数,此时只有一个AXI4-Stream用来收发数据。 在这种模式下,SRIO的IO Port很接近于PCIE的AXI总线。 21 广州创龙电子科技有限公司
User Interface 22 广州创龙电子科技有限公司
AXI4 总线 AXI是ARM 1996年提出的微控制器总线家族AMBA中的一部分。AXI的第一个版本出现在AMBA3.0,发布于2003年。当前的最新的版本发布于2010年。 AXI4:主要面向高性能地址映射通信的需求; AXI4-Lite:是一个简单地吞吐量地址映射性通信总线; AXI4-Stream:面向高速流数据传输; AXI4总线分为主、从两端,两者间可以连续的进行通信。 ISE从12.3版本,Virtex6,Spartan6芯片开始对AXI4总线提供支持,并且随着Xilinx与ARM的合作面逐渐展开而得到大力推广。 23 广州创龙电子科技有限公司
Xilinx 提供的示例程序 24 广州创龙电子科技有限公司
数据包的解析 25 广州创龙电子科技有限公司
SWRITE 与 DOORBELL 26 广州创龙电子科技有限公司
03 FPGA程序解析 第 3 部分 27 广州创龙电子科技有限公司
FPGA程序解析 28 广州创龙电子科技有限公司
04 实验 第 4 部分 29 广州创龙电子科技有限公司
硬件: TL-A7HSAD高速数据采集卡,TL665x-EasyEVM 软件: Vivado2015.2,CCSv5.5 平台 硬件: TL-A7HSAD高速数据采集卡,TL665x-EasyEVM 软件: Vivado2015.2,CCSv5.5 30 广州创龙电子科技有限公司
TL-A7HSAD 31 广州创龙电子科技有限公司
TL665x-EasyEVM 32 广州创龙电子科技有限公司
广州创龙电子科技有限公司 谢谢 官网:www.tronlong.com 论坛:51ele.net 微信公众号:广州创龙