一种基于FPGA的并行总线自动补偿方法与流程

文档序号:12034540阅读:438来源:国知局
一种基于FPGA的并行总线自动补偿方法与流程

本发明公开一种总线自动补偿方法,涉及嵌入式系统通信技术领域,具体地说是一种基于fpga的并行总线自动补偿方法。



背景技术:

总线bus是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束,按照计算机所传输的信息种类,计算机的总线可以划分为数据总线、地址总线和控制总线,分别用来传输数据、数据地址和控制信号。而并行总线由于信号线数量多,信号传输延时不统一等特点,会出现总线采样时信号不同步现象,容易出现个别信号采样失败问题,尤其在总线频率较高时,会导致误码,数据传输不可靠等问题的发生。

本发明提供一种基于fpga的并行总线自动补偿方法,利用fpga与处理器之间通过并行总线通信,fpga通过采样处理器发出的已知信号获取信号延时信息,并依据信号延时信息对信号采样时间进行补偿,确保信号可靠采样。

fpga(field-programmablegatearray),即现场可编程门阵列,它是在pal、gal、cpld等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(asic)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。



技术实现要素:

本发明针对现有技术存在的不足和问题,提供一种基于fpga的并行总线自动补偿方法,通过采样已知信号获取各个信号延时信息,来补偿并行总线信号采样时间,确保fpga与处理器之间的并行总线信号传输可靠有效。

本发明提出的具体方案是:

一种基于fpga的并行总线自动补偿方法:

在并行总线正常运行之前,利用处理器在并行总线上发出低电平信号供fpga采样,再在并行总线上发出高电平信号供fpga采样;

fpga获取所有信号线上的电平变化时刻,以并行总线中的一条信号线上的电平变化时刻为基准时刻;

在并行总线正常运行时,fpga根据基准时刻,对并行总线上其他信号线的采样时间分别进行时钟补偿。

所述的方法中fpga通过自带时钟信号或所述处理器并行总线接口开出的时钟信号对并行总线信号采样。

所述的方法中时钟信号频率是并行总线信号频率的2倍以上。

所述的方法中所述fpga使用clk信号对所有信号线上的电平信号进行采样。

所述的方法中处理器为带有外部并行总线的嵌入式处理器。

一种基于fpga的并行总线自动补偿系统,包括fpga模块,处理器,

其中在并行总线正常运行之前,利用处理器在并行总线上发出低电平信号供fpga模块采样,再在并行总线上发出高电平信号供fpga模块采样;

fpga模块获取所有信号线上的电平变化时刻,以并行总线中的一条信号线上的电平变化时刻为基准时刻;

在并行总线正常运行时,fpga模块根据基准时刻,对并行总线上其他信号线的采样时间分别进行时钟补偿。

所述的系统中fpga模块通过自带时钟信号或处理器并行总线接口开出的时钟信号对并行总线信号采样。

所述的系统中fpga模块使用clk信号对所有信号线上的电平信号进行采样。

所述的系统中处理器为带有外部并行总线的嵌入式处理器。

本发明的有益之处是:

本发明提供一种基于fpga的并行总线自动补偿方法,利用fpga与处理器之间通过并行总线通信,fpga通过采样处理器发出的已知信号获取信号延时信息,并依据信号延时信息对信号采样时间进行补偿,利用本发明解决了总线采样时信号不同步现象,同时解决容易出现个别信号采样失败问题,尤其在总线频率较高时,避免误码率高,数据传输不可靠的现象发生,确保信号可靠采样。

附图说明

图1本发明中信号补偿示意图;

图2本发明方法流程示意图。

具体实施方式

本发明提供一种基于fpga的并行总线自动补偿方法:

其中在并行总线正常运行之前,利用处理器在并行总线上发出低电平信号供fpga采样,再在并行总线上发出高电平信号供fpga采样;

fpga获取所有信号线上的电平变化时刻,以并行总线中的一条信号线上的电平变化时刻为基准时刻;

在并行总线正常运行时,fpga根据基准时刻,对并行总线上其他信号线的采样时间分别进行时钟补偿。

同时提供一种基于fpga的并行总线自动补偿系统,包括fpga模块,处理器,

其中在并行总线正常运行之前,利用处理器在并行总线上发出低电平信号供fpga模块采样,再在并行总线上发出高电平信号供fpga模块采样;

fpga模块获取所有信号线上的电平变化时刻,以并行总线中的一条信号线上的电平变化时刻为基准时刻;

在并行总线正常运行时,fpga模块根据基准时刻,对并行总线上其他信号线的采样时间分别进行时钟补偿。

结合附图及具体实施方式,对本发明做进一步说明。

并行总线连接处理器到fpga,其中clk为时钟信号,s1、s2、s3、s4为并行总线不同信号线上的电平信号,

用户在使用时,在并行总线正常运行之前,首先使用处理器在并行总线上发出低电平信号供fpga采样,之后同时在所有并行总线上发出高电平信号,fpga使用clk信号对所有信号线上的电平信号进行采样,获取所有信号线上的电平变化时刻,并以s1信号线上的电平变化时刻t0为基准,获得其他信号的电平变化时延,分别为⊿t1、⊿t2、⊿t3,在总线正常运行时,fpga对总线上不同信号线电平信号的采样分别进行延时,对s1信号,有效电平为t0时刻电平,对s2信号,有效电平为t0+⊿t1时刻电平,对s3信号,有效电平为t0+⊿t2时刻电平,对s4信号,有效电平为t0-⊿t3时刻电平,fpga根据获得的信号线的电平变化的上述延时信息,对并行总线上不同信号线的采样时间分别进行时钟补偿。



技术特征:

技术总结
本发明公开一种基于FPGA的并行总线自动补偿方法,涉及嵌入式系统通信技术领域;在并行总线正常运行之前,利用处理器在并行总线上发出低电平信号供FPGA采样,再在并行总线上发出高电平信号供FPGA采样;FPGA获取所有信号线上的电平变化时刻,以并行总线中的一条信号线上的电平变化时刻为基准时刻;在并行总线正常运行时,FPGA根据基准时刻,对并行总线上其他信号线的采样时间分别进行时钟补偿。

技术研发人员:曹刚;秦刚;朱书杉
受保护的技术使用者:山东超越数控电子有限公司
技术研发日:2017.07.05
技术公布日:2017.10.24
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1