一种Spi模拟多路全双工串口的系统技术方案

技术编号:17812680 阅读:55 留言:0更新日期:2018-04-28 05:28
本发明专利技术提供了一种Spi模拟多路全双工串口的系统,包括FPGA/CPLD平台,FPGA/CPLD平台集成SPI接口、波特率时钟模块、FIFO缓存模块以及RX/TX状态机,上位机通过Spi协议定义的接口连接FPGA/CPLD芯片,FIFO缓存模块连接RX/TX状态机,FIFO缓存模块包括发FIFO模块和收FIFO模块。本发明专利技术基于时序控制的FPGA/CPLD平台,利用分时复用的方式,实现了高速Spi对慢速串口的接口模拟,能够灵活的满足上位机对外部全双工串口数量的要求;采用基于时序逻辑的FPGA/CPLD平台,对于通信时钟系统控制准确,灵活的对外部信号进行解析,提高了对信号较差时的适应能力。

【技术实现步骤摘要】
一种Spi模拟多路全双工串口的系统
本专利技术属于高速接口Spi对多路低速接口串口的模拟扩展领域,尤其是涉及一种Spi模拟多路全双工串口的系统。
技术介绍
串口是一种常用的异步通信接口,有时上位机需要与外部通信的设备很多,而IO数量又很有限,无法同时接入多路串口,这时就需要用其它方式解决多路串口的通信问题。
技术实现思路
有鉴于此,本专利技术旨在提出一种Spi模拟多路全双工串口的系统,利用平台的精准时序控制保证数据通信极低的误码率,同时满足了上位机对多路全双工串口的要求。为达到上述目的,本专利技术的技术方案是这样实现的:一种Spi模拟多路全双工串口的系统,包括FPGA/CPLD平台,所述FPGA/CPLD平台集成SPI接口、波特率时钟模块、FIFO缓存模块以及RX/TX状态机,上位机通过Spi协议定义的接口连接FPGA/CPLD芯片,所述FIFO缓存模块连接RX/TX状态机,所述FIFO缓存模块包括发FIFO模块和收FIFO模块;发送串口数据时,上位机将需要发送的数据经过Spi接口发送到发FIFO进行缓存,然后输出给TX状态机,再以串口协议的方式发送出去,完成上位机模拟串口数据发送的过程本文档来自技高网...
一种Spi模拟多路全双工串口的系统

【技术保护点】
一种Spi模拟多路全双工串口的系统,其特征在于:包括FPGA/CPLD平台,所述FPGA/CPLD平台集成SPI接口、波特率时钟模块、FIFO缓存模块以及RX/TX状态机,上位机通过Spi协议定义的接口连接FPGA/CPLD芯片,所述FIFO缓存模块连接RX/TX状态机,所述FIFO缓存模块包括发FIFO模块和收FIFO模块;发送串口数据时,上位机将需要发送的数据经过Spi接口发送到发FIFO进行缓存,然后输出给TX状态机,再以串口协议的方式发送出去,完成上位机模拟串口数据发送的过程;接收串口数据时,RX状态机模块接收外部设备通过串口发送来的数据,输出到接收FIFO缓存模块,然后经过Spi接口...

【技术特征摘要】
1.一种Spi模拟多路全双工串口的系统,其特征在于:包括FPGA/CPLD平台,所述FPGA/CPLD平台集成SPI接口、波特率时钟模块、FIFO缓存模块以及RX/TX状态机,上位机通过Spi协议定义的接口连接FPGA/CPLD芯片,所述FIFO缓存模块连接RX/TX状态机,所述FIFO缓存模块包括发FIFO模块和收FIFO模块;发送串口数据时,上位机将需要发送的数据经过Spi接口发送到发FIFO进行缓存,然后输出给TX状态机,再以串口协议的方式发送出去,完成上位机模拟串口数据发送的过程;接收串口数据时,RX状态机模块接收外部设备通过串口发送来的数据,输出到接收FIFO缓存模块,然后经过Spi接口模块将数据从接收FIFO模块送至上位机,完成上位机对外部串口数据的接收过程;波特率时钟模块用于为FIFO模块与RX/TX状态机提供工作时钟。2.根据权利要求1所述的一种Spi模拟多路全双工串口的系统,其特征在于:所述波特率时钟模块设计方法如下:(1)输入本地高速时钟clk;(2)建立多个低位宽计数器cnt1、cnt2、cnt3;(3)计算...

【专利技术属性】
技术研发人员:于宏志王景彬张帆张龙龙
申请(专利权)人:天津天地伟业机器人技术有限公司
类型:发明
国别省市:天津,12

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

1