System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种带时间同步功能的异步串口通信控制器IP核制造技术_技高网

一种带时间同步功能的异步串口通信控制器IP核制造技术

技术编号:40353282 阅读:5 留言:0更新日期:2024-02-09 14:38
本发明专利技术提出了一种带时间同步功能的异步串口通信控制器IP核,包括若干寄存器模块;AXI Lite总线控制模块,用于IP核与主机的AXI Lite总线进行通信;AXI Lite总线地址译码模块,用于将主机的总线地址空间分解成若干个可访问的地址块,若干个可访问的地址块与若干寄存器模块一一对应设置;时间同步输入模块,用于输入同源的同步时间;若干串口逻辑控制模块,与若干寄存器模块一一对应通信连接,用于使能异步串口通讯功能,或者与时间同步输入模块配合,获取接收到同步时间的时间戳。

【技术实现步骤摘要】

本专利技术涉及飞控数据采集设备,尤其涉及一种带时间同步功能的异步串口通信控制器ip核。


技术介绍

1、无人飞行器具有准备时间短、飞行速度快、成本低廉、适应于全天候任务作业的特点在国防、测绘、工业控制、农业等领域运用越来越广泛。无人飞行器飞控计算机与飞行控制传感器之间、飞控系统与地面控制站之间需保证严格的时间同步性,时间精度越高、多源传感器之间的时间同源性越好,越利于飞控解算和地面控制。

2、异步串口因成本低廉、易于使用、抗干扰性强在飞行控制传感器领域应用广泛,传统通过单片机或通用cpu实现异步串口通讯方式往往采用中断处理方式,并通过cpu定时器对通信数据打上时间戳的方式进行时间同步,相比于查询方式,能够有效提高实时性,但仍然无法解决多路中断触发条件下的时间同步性,更无法解决信号传输过程中本身的时间延时和软件运行,时间同步精度差。fpga厂商开发工具一般会提供基于uart16550开发的异步串口通信控制器ip核,但该ip核不具备时间同步功能,还是需要依赖于传统中断方式进行时间同步,时间同步精度不高,且由中断处理数据添加时间戳的方式无法解决多源传感器数据并行同步采集以及同步时间的同源性。而且基于uart16550开发的异步串口通信控制器ip核,对于高频率、大数据量的传感器的数据传输,常常会发生丢帧现象。

3、综上所述,提供一种带时间同步功能的异步串口通信控制器ip核,避免通过cpu中断方式实现时间同步,并抵扣数据传输过程中的时间延迟,对于提高多源性异步数据采集接口的时间同步,提高数据同步精度,是非常有必要的。


技术实现思路

1、有鉴于此,本专利技术提出了一种不通过cpu中断同步方式、多串口数据传输时间延迟更小的、带时间同步功能的异步串口通信控制器ip核。

2、本专利技术的技术方案是这样实现的:本专利技术提供了一种带时间同步功能的异步串口通信控制器ip核,包括:

3、若干寄存器模块;

4、axi lite总线控制模块,用于ip核与主机的axi lite总线进行通信;

5、axi lite总线地址译码模块,用于将主机的总线地址空间分解成若干个可访问的地址块,若干个可访问的地址块与若干寄存器模块一一对应设置;

6、时间同步输入模块,用于输入同源的同步时间;

7、若干串口逻辑控制模块,与若干寄存器模块一一对应通信连接,用于使能异步串口通讯功能,或者与时间同步输入模块配合,获取接收到同步时间的时间戳。

8、在以上技术方案的基础上,优选的,所述若干寄存器模块包括一个全局寄存器和若干子串口私有寄存器;全局寄存器用于复位ip核内若干串口逻辑控制模块、测试全局寄存器访问主机的结果、存储ip核版本信息或者ip核厂家信息;若干子串口私有寄存器分别对若干串口逻辑控制模块的控制状态、数据收发内容、帧头配置以及同步时间进行存储。

9、优选的,所述全局寄存器包括在预留地址空间内顺序设置的全局软件复位子寄存器、ip核读写测试子寄存器、ip核版本信息子寄存器和ip核开发商代码子寄存器;全局软件复位子寄存器用于存储复位ip核内若干串口逻辑控制模块的代码;ip核读写测试子寄存器用于测试ip核连接主机后全局寄存器访问结果对应的代码;ip核版本信息子寄存器用于存储ip核版本信息对应的代码;ip核开发商代码子寄存器用于存储ip核厂家信息对应的代码。

10、进一步优选的,所述若干子串口私有寄存器均包括在预留地址空间内顺次设置的串口控制子寄存器、串口接收波特率控制子寄存器、串口发送波特率控制子寄存器、串口接收数据子寄存器、串口发送数据子寄存器、串口中断控制子寄存器、串口状态子寄存器、串口接收帧头配置子寄存器、串口接收时间标签低位子寄存器和串口接收时间标签高位子寄存器;其中,串口控制子寄存器用于存储对应的串口逻辑控制模块收发数据的起始位、数据位、停止位、校验模式以及数据帧帧头识别使能和时间同步使能的内容;串口接收波特率控制子寄存器用于存储对应的串口逻辑控制模块接收数据所采用的波特率;串口发送波特率控制子寄存器用于存储对应的串口逻辑控制模块发送数据所采用的波特率;串口接收数据子寄存器用于存储对应的串口逻辑控制模块接收到的数据,并通过主机的axi lite总线进行数据读取;串口发送数据子寄存器将主机写入子串口私有寄存器的数据写入对应的串口逻辑控制模块中;串口中断控制子寄存器用于控制当前串口逻辑控制模块的中断使能与屏蔽;串口状态子寄存器用于记录当前串口逻辑控制模块的工作状态。

11、更进一步优选的,所述若干串口逻辑控制模块中分别设置有接收fifo和发送fifo;

12、所述串口接收数据子寄存器用于存储对应串口逻辑控制模块的接收fifo所接收到的数据,并通过主机的axi lite总线进行数据读取;

13、串口发送数据子寄存器将主机写入子串口私有寄存器的数据写入对应的串口逻辑控制模块的发送fifo中;

14、串口中断控制子寄存器配置的中断使能与屏蔽包括对应的串口逻辑控制模块的接收fifo空中断、接收fifo深度触发中断、接收fifo满中断、发送fifo空中断、发送fifo满中断、空闲中断和帧头识别中断;

15、串口状态子寄存器用于记录当前串口逻辑控制模块的工作状态,即接收fifo空中断状态、接收fifo深度触发中断状态、接收fifo满中断状态、发送fifo空中断状态、发送fifo满中断状态、空闲中断状态、帧头识别中断状态,串口状态子寄存器还记录接收fifo中的数据的个数以及发送fifo中的数据的个数;

16、串口接收帧头配置子寄存器用于配置需要ip核自动识别的帧头,并结合接收fifo和发送fifo的空闲中断,完成同步时间的记录,串口接收帧头配置子寄存器还根据串口中断控制子寄存器的配置产生帧头识别中断;

17、串口接收时间标签低位子寄存器和串口接收时间标签高位子寄存器在当前串口逻辑控制模块处于帧头识别中断工作状态时,分别记录同步时间中50%的低位数据和50%的高位数据;

18、所述接收fifo和发送fifo除了默认存储空间外,还配置有可变存储空间。

19、更进一步优选的,所述接收fifo或者发送fifo的可变存储空间是需要满足如下条件:a)接收fifo接收的数据帧或者发送fifo发送的数据帧为不定长数据帧,且接收该不定长数据帧之前接收fifo内部没有待接收的其他数据帧,或者发送该不定长数据帧之前发送fifo内部没有待发送的其他数据帧;b)接收fifo满中断已触发,不定长数据帧没有发生接收超时,且连续x个以上的采样周期内当前串口逻辑控制模块的接收fifo的剩余的默认存储空间小于50%;或者发送fifo满中断已触发,主机通过子串口私有寄存器将不定长数据帧写入当前串口逻辑控制模块的发送fifo的状态未发生改变,且连续三个以上采样周期内发送fifo的剩余的默认存储空间小于50%;c)可变存储空间至少为默认存储空间的一倍;d)可变存储空间的存活时间为当前串口逻辑控本文档来自技高网...

【技术保护点】

1.一种带时间同步功能的异步串口通信控制器IP核,其特征在于,包括:

2.根据权利要求1所述的一种带时间同步功能的异步串口通信控制器IP核,其特征在于,所述若干寄存器模块包括一个全局寄存器和若干子串口私有寄存器;全局寄存器用于复位IP核内若干串口逻辑控制模块、测试全局寄存器访问主机的结果、存储IP核版本信息或者IP核厂家信息;若干子串口私有寄存器分别对若干串口逻辑控制模块的控制状态、数据收发内容、帧头配置以及同步时间进行存储。

3.根据权利要求2所述的一种带时间同步功能的异步串口通信控制器IP核,其特征在于,所述全局寄存器包括在预留地址空间内顺序设置的全局软件复位子寄存器、IP核读写测试子寄存器、IP核版本信息子寄存器和IP核开发商代码子寄存器;全局软件复位子寄存器用于存储复位IP核内若干串口逻辑控制模块的代码;IP核读写测试子寄存器用于测试IP核连接主机后全局寄存器访问结果对应的代码;IP核版本信息子寄存器用于存储IP核版本信息对应的代码;IP核开发商代码子寄存器用于存储IP核厂家信息对应的代码。

4.根据权利要求3所述的一种带时间同步功能的异步串口通信控制器IP核,其特征在于,所述若干子串口私有寄存器均包括在预留地址空间内顺次设置的串口控制子寄存器、串口接收波特率控制子寄存器、串口发送波特率控制子寄存器、串口接收数据子寄存器、串口发送数据子寄存器、串口中断控制子寄存器、串口状态子寄存器、串口接收帧头配置子寄存器、串口接收同步时间标签低位子寄存器和串口接收同步时间标签高位子寄存器;其中,串口控制子寄存器用于存储对应的串口逻辑控制模块收发数据的起始位、数据位、停止位、校验模式以及数据帧帧头识别使能和时间同步使能的内容;串口接收波特率控制子寄存器用于存储对应的串口逻辑控制模块接收数据所采用的波特率;串口发送波特率控制子寄存器用于存储对应的串口逻辑控制模块发送数据所采用的波特率;串口接收数据子寄存器用于存储对应的串口逻辑控制模块接收到的数据,并通过主机的AXI Lite总线进行数据读取;串口发送数据子寄存器将主机写入子串口私有寄存器的数据写入对应的串口逻辑控制模块中;串口中断控制子寄存器用于控制当前串口逻辑控制模块的中断使能与屏蔽;串口状态子寄存器用于记录当前串口逻辑控制模块的工作状态。

5.根据权利要求4所述的一种带时间同步功能的异步串口通信控制器IP核,其特征在于,所述若干串口逻辑控制模块中分别设置有接收FIFO和发送FIFO;

6.根据权利要求5所述的一种带时间同步功能的异步串口通信控制器IP核,其特征在于,所述接收FIFO或者发送FIFO的可变存储空间是需要满足如下条件:A)接收FIFO接收的数据帧或者发送FIFO发送的数据帧为不定长数据帧,且接收该不定长数据帧之前接收FIFO内部没有待接收的其他数据帧,或者发送该不定长数据帧之前发送FIFO内部没有待发送的其他数据帧;B)接收FIFO满中断已触发,不定长数据帧没有发生接收超时,且连续X个以上的采样周期内当前串口逻辑控制模块的接收FIFO的剩余的默认存储空间小于50%;或者发送FIFO满中断已触发,主机通过子串口私有寄存器将不定长数据帧写入当前串口逻辑控制模块的发送FIFO的状态未发生改变,且连续三个以上采样周期内发送FIFO的剩余的默认存储空间小于50%;C)可变存储空间至少为默认存储空间的一倍;D)可变存储空间的存活时间为当前串口逻辑控制模块的接收FIFO的默认存储空间和可变存储空间的全部内容读取完毕且连续2X个采样周期内没有接收到外部输入的当前不定长数据帧发送的新的内容,或者当前串口逻辑控制模块的发送FIFO的默认存储空间和可变存储空间的全部内容读取完毕且连续2X个采样周期内没有收到主机对当前不定长数据帧发送的新的内容,则移除可变存储空间。

7.根据权利要求4所述的一种带时间同步功能的异步串口通信控制器IP核,其特征在于,所述若干寄存器模块分别为若干串口逻辑控制模块预留地址空间,是将预留地址空间分为全局寄存器地址块和若干子串口私有寄存器地址块;全局寄存器地址块与全局寄存器的各子寄存器相对应;若干子串口私有寄存器地址块与各个子串口私有寄存器的各子寄存器对应设置;全局寄存器地址块的基地址和若干子串口私有寄存器地址块的基地址均是相对于主机的AXI Lite总线的基地址进行偏移确定的。

8.根据权利要求4所述的一种带时间同步功能的异步串口通信控制器IP核,其特征在于,所述若干串口逻辑控制模块采用直接频率合成方法获取频率控制字并写入串口接收波特率控制子寄存器或者串口发送波特率控制子寄存器;直接频率合成方法的输入频率fi、输出频率fo和频率控制字K之间具有如下关系:由于采用过采样技术,故将频...

【技术特征摘要】

1.一种带时间同步功能的异步串口通信控制器ip核,其特征在于,包括:

2.根据权利要求1所述的一种带时间同步功能的异步串口通信控制器ip核,其特征在于,所述若干寄存器模块包括一个全局寄存器和若干子串口私有寄存器;全局寄存器用于复位ip核内若干串口逻辑控制模块、测试全局寄存器访问主机的结果、存储ip核版本信息或者ip核厂家信息;若干子串口私有寄存器分别对若干串口逻辑控制模块的控制状态、数据收发内容、帧头配置以及同步时间进行存储。

3.根据权利要求2所述的一种带时间同步功能的异步串口通信控制器ip核,其特征在于,所述全局寄存器包括在预留地址空间内顺序设置的全局软件复位子寄存器、ip核读写测试子寄存器、ip核版本信息子寄存器和ip核开发商代码子寄存器;全局软件复位子寄存器用于存储复位ip核内若干串口逻辑控制模块的代码;ip核读写测试子寄存器用于测试ip核连接主机后全局寄存器访问结果对应的代码;ip核版本信息子寄存器用于存储ip核版本信息对应的代码;ip核开发商代码子寄存器用于存储ip核厂家信息对应的代码。

4.根据权利要求3所述的一种带时间同步功能的异步串口通信控制器ip核,其特征在于,所述若干子串口私有寄存器均包括在预留地址空间内顺次设置的串口控制子寄存器、串口接收波特率控制子寄存器、串口发送波特率控制子寄存器、串口接收数据子寄存器、串口发送数据子寄存器、串口中断控制子寄存器、串口状态子寄存器、串口接收帧头配置子寄存器、串口接收同步时间标签低位子寄存器和串口接收同步时间标签高位子寄存器;其中,串口控制子寄存器用于存储对应的串口逻辑控制模块收发数据的起始位、数据位、停止位、校验模式以及数据帧帧头识别使能和时间同步使能的内容;串口接收波特率控制子寄存器用于存储对应的串口逻辑控制模块接收数据所采用的波特率;串口发送波特率控制子寄存器用于存储对应的串口逻辑控制模块发送数据所采用的波特率;串口接收数据子寄存器用于存储对应的串口逻辑控制模块接收到的数据,并通过主机的axi lite总线进行数据读取;串口发送数据子寄存器将主机写入子串口私有寄存器的数据写入对应的串口逻辑控制模块中;串口中断控制子寄存器用于控制当前串口逻辑控制模块的中断使能与屏蔽;串口状态子寄存器用于记录当前串口逻辑控制模块的工作状态。

5.根据权利要求4所述的一种带时间同步功能的异步串口通信控制器ip核,其特征在于,所述若干串口逻辑控制模块中分别设置有接收fifo和发送fifo;

6.根据权利要求5所述的一种带时间同步功能的异步串口通信控制器ip核,其特征在于,所述接收fifo或者发送fifo的可变存储空间是需要满足如下条件:a)接收fifo接收的数据帧或者发送fifo发送的数据帧为不定长数据帧,且接收该不定长数据帧之前接收fifo内部没有待接收的...

【专利技术属性】
技术研发人员:刘江龙李新贵梁云
申请(专利权)人:湖北汇领众科电子技术有限公司
类型:发明
国别省市:

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

1