一种高速串行总线与低速串行总线数据传输和转换方法技术

技术编号:20796943 阅读:43 留言:0更新日期:2019-04-06 10:32
本发明专利技术属于总线技术领域,具体公开了一种高速串行总线与低速串行总线转换与传输方法,在FPGA中对高速串行总线和低速串行总线的的并行接口部分作封装,利用状态机或者组合逻辑,提取出有效数据,使得并行接口数据可以直接对缓存进行读写操作;本发明专利技术技术方案充分发挥了FPGA灵活性的特点,总线的转换方法灵活快速。且实现高速与低速串行总线转换时因为不需要主控芯片,既降低了功耗,又节约了成本,同时还提高了总线的传输效率,保证了系统的低功耗以及高性能设计,在嵌入式领域具有广阔的应用前景。

A Method of Data Transmission and Conversion between High Speed Serial Bus and Low Speed Serial Bus

The invention belongs to the field of bus technology, and specifically discloses a method of conversion and transmission between high-speed serial bus and Low-speed serial bus. The parallel interface part of high-speed serial bus and Low-speed serial bus is encapsulated in the FPGA, and the valid data is extracted by using state machine or combination logic, so that the parallel interface data can read and write directly to the cache. The scheme gives full play to the flexibility of the FPGA, and the bus conversion method is flexible and fast. Because the main control chip is not needed to realize the conversion between high-speed and Low-speed serial bus, it not only reduces the power consumption, but also saves the cost. At the same time, it improves the transmission efficiency of the bus, guarantees the low power consumption and high performance design of the system, and has broad application prospects in the embedded field.

【技术实现步骤摘要】
一种高速串行总线与低速串行总线数据传输和转换方法
本技术属于总线
,具体涉及一种高速串行总线与低速串行总线数据传输和转换方法。
技术介绍
及应用前景目前在机载、车载等军用领域,及民用领域中,高速串行总线逐渐被普及,但同时一些低速串行接口仍然会有应用需求,此时需要高速串行总线和低速串行总线进行数据之间的传输与转换,所以高速串行总线与低速串行总线结合的应用场景是总线接口设计的一个常态,目前通常的方法是利用主控芯片(CPU或MPU)作管理,数据的传输需要经过主控芯片来完成。精工爱普生株式会社申请的专利“显示驱动器及电子设备”(专利号CN200610067406.7,公开号CN1841489A)公开了一种高速串行接口向低速串行接口传输的一种方法,该方法的数据流是单向的,接口转换使用了专用的驱动电路,驱动电路的中包含了一个主控微处理器(MPU)单元,负责控制和转发来自高速接口的数据。苏州皓泰视频技术有限公司申请的专利“一种基于多核处理器的可扩展NVR系统”(专利号CN201310106753.6,公开号CN103179385A)公开了一种PCIe与低速串行接口数据交互的一种方法,该方法主要利用了多核处理器作为主控,来完成各个子系统的交互。以FPGA开发为例,目前低速串并转换协议的IP是基于16C552此类串并转换协议芯片开发的,该IP的并行接口为带片选的局部并行总线接口,该类型接口主要为主控芯片设计。高速串行总线IP如Xilinx的官方PCIe或SRIOIP核中的并行接口为AXI总线接口,该接口也主要为主控芯片设计。可见目前高低速串行总线转换后的并行接口都主要是需要增加额外主控芯片管理,两类串行数据的传输与转换都需要通过主控芯片来完成,该方法配置简单,但也一定的缺点,即一方面增加了主控芯片的开销,另一方面数据经过主控芯片的转发也降低了总线之间传输的效率。本专利技术属于总线
,为了消除主控芯片在总线转换过程中带来的影响,本专利技术基于FPGA设计了提出了一种不需要主控芯片,高速串行总线与低速串行总线直接进行数据转换与传输的方法。本专利技术充分发挥了FPGA灵活性的特点,总线的转换方法灵活快速。且实现高速与低速串行总线转换时因为不需要主控芯片,既降低了功耗,又节约了成本,同时还提高了总线的传输效率,保证了系统的低功耗以及高性能设计,在嵌入式领域具有广阔的应用前景。
技术实现思路
本专利技术的目的:针对机载、车载等军用领域,及民用领域,一种高速串行总线与低速串行总线转换与传输方法,该方法不需要增加额外的主控芯片,且可灵活配置,实现了数据的双向高效传输。本专利技术的技术方案:一种高速串行总线与低速串行总线数据传输和转换方法,其特征在于,在FPGA中对高速串行总线和低速串行总线的的并行接口部分作封装,利用状态机或者组合逻辑,提取出有效数据,使得并行接口数据可以直接对缓存进行读写操作,具体方法实现包括以下步骤:步骤一、利用高速总线中特殊的数据格式或者数据包,初始化并配置低速串行总线:高速串行总线在传输开始之前,向FPGA发送多个中断、消息包、门铃包类特殊数据格式或数据包,每一个包中都包含初始化低速串行总线或传输链路状态的参数值,FPGA解析此类型数据包后,依次配置低速串行总线的波特率,停止位、校验位等数据格式,中断或查询方式,传输链路中发送接收数据的最大长度;步骤二、将高速串行总线与低速串行总线中的并行数据接口封装,封装后两种串行总线的转换出的并行数据可以互相传递并识别;步骤三、将收到的并行数据作转换,转换为需要的串行数据输出。所述的步骤二具体实现形式为:高速串行总线速率远大于低速串行总线速率,为提高从高速到低速串行总线的传输效率,设计两个FIFO缓冲区,缓存连续到来的高速串行总线数据,对两个FIFO进行乒乓操作,将当前数据填到第一个FIFO中时,对第二个缓冲区的填充到发送缓冲FIFO中进行低速串行总线发送,从而完成高速到低速串行总线数据的传递;由低速向高速发送数据时发送数据时,当FPGA缓存接收完毕数据后,向高速串行总线发送通知,通知其读出相应缓存的数据,从而完成低速到高速串行数据的传递。还包括有特殊收发机制:FPGA接收到开始数据标志时,如收到0x5A5A,后续数据为有效数据,当发送端超过1ms无数据传输时,FPGA则认为数据传输结束。有益效果:本专利技术采用现场可编程逻辑门阵列(FPGA)对高速串行总线与低速串线总线的初始化、数据检测、数据转换与传输进行了设计,同时FPGA控制算法采用并行乒乓算法的操作,具有无需主控芯片,可配置,数据传输控制简单的特点。高速串行总线与低速串行总线之间的传输与控制不需要额外主控芯片。利用高速串行总线中中断、消息包、门铃包等特殊数据格式或数据包初始化和配置低速串行总线、总线之间传输发送接收缓存区大小等管理控制参数。数据在高速串行总线和低速串行总线之间传输过程中,对两种总线的并行数据接口进行封装,封装后可以使得并行数据可以直接对缓存读写。本专利技术技术方案不仅应用于机载、车载设备且在民用领域有着广阔的应用前景。附图说明图1为本专利技术方法的原理示意图。具体实施方式本专利技术所述高速串行总线与低速串行总线的传输与转换已经在某型模块中成功实施,能够实现自动完成SRIO对RS422的初始化配置,以及SRIO总线协议与RS422协议之间数据实时传输和互相转换。为了屏蔽两种IP核的AXI接口和局部总线接口,在SRIO的IP核的AXI总线接口上封装了一层组合逻辑,根据AXI总线时序特点,使得AXI接口的数据可以直接写入FPGA内部RAM或者从RAM读出。针对RS422的局部总线接口,利用状态机来模拟对局部总线的读写操作,使得局部总线的数据可以直接存入FPGA内部缓存或者从缓存读出。封装好并行接口后,SRIO和RS422间就可以通过FPGA内部缓存进行数据的传递。如图1所示,在数据发送前,首先要对RS422作初始化配置,本例中SRIO向FPFA发送门铃包,FPGA收到门铃包后解析出16位附带的数据,本方式主要利用低8位数据,即info[7:0],首先判断info[2:0]是否为010,当info[2:0]为010时,该门铃即为RS422初始化配置门类,具体如下所示:当info[5:3]为001代表初始化波特率,info[7:6]为00时代表波特率为115200bps,01代表1Mbps,10代表3.125Mbps,11代表5Mbps;当info[5:3]为010代表初始化数据格式,info[7:6]为00时代表8位数据长度,1位停止位,无校验位。其余编码暂时保留;当info[5:3]为011代表设置中断或查询方时,info[7:6]为00时代表查询方式,11时代表中断方式。其余编码暂时保留;当info[5:3]为100代表初始化发送长度,info[7:6]为00时代表发送长度不超过255字节,其余编码暂时保留;当info[5:3]为101代表初始化接收长度,info[7:6]为00时代表接收长度不超过255字节,其余编码暂时保留;当info[7:3]为00000代表低速串行总线配置完成。门铃包配置串口完成后,SRIO与422开始互发数据:从SRIO到RS422方向,SRIO通过NWIRTE包向FPGA的缓存写数据,当本文档来自技高网
...

【技术保护点】
1.一种高速串行总线与低速串行总线数据传输和转换方法,其特征在于,在FPGA中对高速串行总线和低速串行总线的的并行接口部分作封装,利用状态机或者组合逻辑,提取出有效数据,使得并行接口数据可以直接对缓存进行读写操作,具体方法实现包括以下步骤:步骤一、利用高速总线中特殊的数据格式或者数据包,初始化并配置低速串行总线:高速串行总线在传输开始之前,向FPGA发送多个中断、消息包、门铃包类特殊数据格式或数据包,每一个包中都包含初始化低速串行总线或传输链路状态的参数值,FPGA解析此类型数据包后,依次配置低速串行总线的波特率,停止位、校验位等数据格式,中断或查询方式,传输链路中发送接收数据的最大长度;步骤二、将高速串行总线与低速串行总线中的并行数据接口封装,封装后两种串行总线的转换出的并行数据可以互相传递并识别;步骤三、将收到的并行数据作转换,转换为需要的串行数据输出。

【技术特征摘要】
1.一种高速串行总线与低速串行总线数据传输和转换方法,其特征在于,在FPGA中对高速串行总线和低速串行总线的的并行接口部分作封装,利用状态机或者组合逻辑,提取出有效数据,使得并行接口数据可以直接对缓存进行读写操作,具体方法实现包括以下步骤:步骤一、利用高速总线中特殊的数据格式或者数据包,初始化并配置低速串行总线:高速串行总线在传输开始之前,向FPGA发送多个中断、消息包、门铃包类特殊数据格式或数据包,每一个包中都包含初始化低速串行总线或传输链路状态的参数值,FPGA解析此类型数据包后,依次配置低速串行总线的波特率,停止位、校验位等数据格式,中断或查询方式,传输链路中发送接收数据的最大长度;步骤二、将高速串行总线与低速串行总线中的并行数据接口封装,封装后两种串行总线的转换出的并行数据可以互相传递并识别;步骤三、将收到的并行数据作转换,转换为需要的串行数据输出。2...

【专利技术属性】
技术研发人员:郭京邓豹沈华张晓曦陈颖图亢晓丽
申请(专利权)人:中国航空工业集团公司西安航空计算技术研究所
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1