|
一、产品简介
TSI721(JXW721)PCIe转RapidIO高速数据传输卡,以 PCIe 扩展 SRIO 光纤接口形式,提供用户应用 RapidIO 协议进行数据传输的解决方案。其主要功能包括JXW721芯片基础电路、可扩展的高速 QSFP+光模块接口,支持Windows,Linux,麒麟等操作系统的驱动和API函数,板卡支持全国产芯片替代。支持商业级和工业级开发。
二、板卡功能框图
三、产品规格
|
参数/功能
|
详细描述/规格
|
|
核心芯片
|
JXW721桥芯片,支持双向协议转换及高速数据传输
|
|
PCIe功能
|
Gen2.1,支持x4/x2/x1模式,速率2.5Gbps/5Gbps,自适应主板。
|
|
SRIO功能
|
Gen2.2,支持x4/x2/x1模式,速率1.25Gbps/2.5Gbps/3.125Gbps/5Gbps。 API函数设置X模式和速度
|
|
SRIO接口
|
QSFP+光纤接口(1个SRIO端口,1个PCIe端口)。 支持热插拔及IEEE 1149.1/1149.6测试标准。
|
|
板卡综合传输速度
|
Linux下实测 约为1500MB/S
|
|
板卡传输能力
|
板卡支持前端AD转光纤,图像转光纤的数据服务器接入。 总带宽最大支持:16Gbps 支持高清1080P图像4路输入,支持500Msps@16bit AD 2路
|
|
供电方式
|
供电方式:PCIe金手指直接供电。
|
|
整板功耗
|
4.6W(典型值)。
|
|
环境适应性
|
温度:-40°C ~ 85°C。 湿度:5%~85%RH。
|
|
尺寸范围(长×宽)
|
162mm(长) X 68.9(宽,含金手指)
|
|
机械兼容性
|
半高半长PCIe标准设计,适配通用机箱及工业设备。
|
|
重量
|
51.5g
|
四、适配平台
TSI721 (JXW721)PCIe转RapidIO高速数据传输卡为转接桥接板卡,适配不同的主板和操作系统,一般使用商用计算机处理器即可满足硬件使用需求。
具体系统相关软硬件环境需求如下:
1.CPU 处理器架构及型号没有特殊要求,推荐选用龙芯、ARM、x86 架构
2.操作系统推荐使用 Linux,内核版本 3.10.0及以上,发行版本推荐使用:centos7.4/8.2
3.驱动程序推荐使用 JXW721官方驱动
4.驱动安装环境要求 Linux 系统没有内置的 RAPIDIO驱动,查看方法如下:
执行如下指令:
grep RAPIDIO /boot/config-$(uname -r)
查看 CONFIG_RAPIDIO 是否已配置:
如果已经配置上,则需要重新定制内核,去掉.config中 CONFIG_RAPIDIO相关配置选项并 重新编译,使用新编译出的内核(如果使用推荐的 Linux 发行版本可忽略此步骤)。
软件硬件适配平台列表:
表4.1 SDK软件测试通过的处理器及系统版本列表(包括但不仅限于此列表)
|
处理器
|
系统版本
|
内核版本
|
主板型号
|
|
X86
|
centos-7.4.1708
|
3.10.0
|
|
|
ubuntu-16.04
|
4.15.0-112-generic
|
|
|
ubuntu-18.04
|
5.4.0
|
|
|
ubuntu-22.04
|
6.5.8
|
华硕8250plus
|
|
fedora-35
|
5.16.16
|
|
|
FT-2000/4
|
kylin-v10
|
4.19.0以及4.4.131
|
|
|
天脉3
|
ACoreOSMP V1.0.6.02
|
|
|
Loongson-3A4000
|
统信
|
4.19.0以及4.19.190
|
|
|
ZYNQ 7035(ARMv7 Processor rev 0 (v7l))
|
嵌入式Linux系统
|
4.14.0-xilinx-v2018.2
|
|
五、函数说明
为方便用户节省开发时间,我们封装了丰富的API函数,下面列举部分常用函数及其说明
序号 |
API函数
|
功能说明
|
关键参数
|
|
1
|
rio_mport_open()
|
该函数实现打开rio_mport字符设备接口,其中如果PCIE接口挂载N个桥片设备,则使用mport_id编号0~N-1实现对不同桥片设备的访问
|
设备参数 操作权限标志
|
|
2
|
rio_cm_open()
|
该函数实现打开rio_cm字符设备接口,无参数传入
|
无
|
|
3
|
rio_dma_write()
|
该函数实现将用户空间申请的缓存数据通过DMA发起写对端操作,即按照用户配置的模式及参数实现本地PCIE侧数据通过桥片协议转换写到对端设备缓存中
|
目的SRIO设备ID SRIO总线起始地址 需要搬移的数据长度
|
|
4
|
rio_dma_read()
|
该函数通过DMA发起读对端操作,读到用户空间申请的缓存当中,即按照用户配置的模式及参数实现对端缓存中的数据通过桥片协议转换读到本地设备PCIE侧缓存中。
|
目的SRIO设备ID SRIO总线起始地址 需要搬移的数据长度
|
|
5
|
rio_wait_async()
|
该函数用于等待DMA异步传输结束
|
DMA传输ID标志
|
|
6
|
rio_ibwin_map ()
|
该函数实现通过Mapping引擎将SRIO地址空间映射到本地内核数据缓存空间,实现将入站SRIO读写请求的SRIO总线地址转换为PCIE侧数据缓存配置
|
SRIO基地址
|
|
7
|
rio_ibwin_free ()
|
该函数实现SRIO空间到本地内核空间数据的映射缓存区释放
|
保留内存空间物理地址
|
|
8
|
rio_lcfg_read ()
|
该函数用于通过PCIE接口进行本地mport设备寄存器读访问。
|
寄存器访问的字节数
|
|
9
|
rio_lcfg_write ()
|
该函数用于通过PCIE接口进行本地mport设备寄存器写访问
|
寄存器被写入的值访问的寄存器地址偏移
|
|
10
|
rio_socket_socket ()
|
该函数用于创建基于给定邮箱的SRIO套接字结构体指针变量
|
SRIO套接字结构体指针参数
|
|
11
|
rio_socket_listen ()
|
该函数用于服务端使能监听特定虚拟通道的连接请求
|
SRIO套接字结构体参数
|
|
12
|
rio_socket_accept ()
|
该函数用于服务端接受客户端发起的连接请求。如果超时参数非0则该函数会阻塞执行;如果超时参数为0则非阻塞执行
|
SRIO套接字结构体参数
|
六、板卡配件
表 5.1 板卡配件
| 序号 |
配件名称
|
数量
|
|
1
|
光模块(QSFP+)
|
1
|
|
2
|
光纤(MPO-MPO)
|
1
|
|
3
|
主芯片散热片
|
1
|
|
4
|
PCIe挡板(半高,全高)
|
1
|
七、板卡应用
7.1 在国防应用中: JXW721 支持具备 PCIe 接口的处理器实现 RapidIO 网络互连。将 JXW721与井芯微的RapidIO Gen2 交换芯片结合使用,带有各型号处理器的有效载荷处理器卡可以与 RapidIO Gen2互连系统一起工作。
7.2在视频和图像应用中:
系统设计人员需要大量的 DSP或者 FPGA来执行编码/解码/转码操作,或者对大型数据阵列进行 FFT(快速傅里叶变换)。RapidIO协议最适合这种 DSP/FPGA集群要求。在此类应用中,设计人员需要在PCIe网络和RapidIO网络,DSP或FPGA集群之间建数据通道。JXW721非常适合这种应用场景。
7.3 无线应用:
在无线基站中,基带处理卡(LTE,WiMAX,WCDMA和TD-SCDMA)采用的互连技术是 RapidIO。 通过 RapidIO网络连接一组 DSP、处理器和 FPGA集群,用于数据处理。
JXW72为无线设备制造商提供了一个额外的设计选项,在以RapidIO为主的基带卡中使用具有卓越 MIPs的处理器。RapidIO是设备之间的互连总线,并用于背板互连。处理器基于 RapidIO的消息传输机制,可以与基带卡上的其他 RapidIO设备一起工作。
图 6..3.1无线应用
|