一种数据传输控制方法、装置及存储介质制造方法及图纸

技术编号:19690904 阅读:27 留言:0更新日期:2018-12-08 10:56
本发明专利技术公开了一种数据传输控制方法,包括:预先设置计数器;所述方法还包括:确定处于不同时钟域的输入端和输出端的时钟频率比例关系;根据所述时钟频率比例关系,确定所述计数器的计数值;检测到所述输入端开始传输数据时,启动所述计数器,并在所述输出端输出数据,直至所述计数器到达所述计数值时,停止所述输出端的数据输出。本发明专利技术还同时公开了一种数据传输控制装置、以及存储介质。

【技术实现步骤摘要】
一种数据传输控制方法、装置及存储介质
本专利技术涉及通信领域中的数据传输技术,尤其涉及一种数据传输控制方法、装置及存储介质。
技术介绍
随着半导体行业的不断发展,在集成电路(IC,integratedcircuit)板的芯片上集成的电路模块越来越多,当芯片处于工作状态时,各电路模块之间需要进行数据传递。由于各电路模块往往处于不同的时钟域,使得各电路模块的时钟频率不同,从而数据信号的跨时钟域问题成为很多IC板设计的难点。目前,各种通讯协议对数据传输速率的要求,更是让IC硬件接口设计很难灵活适配各种应用场景。通常情况下,对数据传输速率进行一次修改,就需要对IC硬件接口进行一次改动。在一些复杂场景下,还需要增加异步先入先出(FIFO,FirstInputFirstOutput)队列。然而,异步FIFO队列不是万能的,由于异步FIFO队列需要在两个时钟域都有对应的接口,且利用握手机制才能保证异步FIFO队列发挥作用,如果有任何一个时钟域没有办法实现握手机制,则该异步FIFO队列就有数据溢出的风险。对于如何避免数据溢出的风险,目前相关技术的做法是增加异步FIFO队列的深度,即根据发送端与接收端的时钟频率的比值,适当地增大FIFO队列的深度。然而,该相关技术所产生的最大问题就是增加了硬件开销。对于数据位宽比较小如1bit的异步FIFO队列而言,这种设计产生的开销是在接受范围内的;但是对于数据位宽比较大如256bit的异步FIFO队列而言,这种设计增加的缓存面积等开销是巨大的。因为按照上述相关技术的做法,异步FIFO队列中的每个bit都是使用硬件寄存器来实现的,这样就会增大寄存器的数量,对整个产品的能耗和成本都会产生影响,而且如果应用频率发生改变,还有可能引入其他风险。对于如何很好地解决数据信号的跨时钟域问题,以实现最有效地调节接口数据传输速率,相关技术尚无有效解决方案。
技术实现思路
有鉴于此,本专利技术实施例期望提供一种数据传输控制方法、装置及存储介质,能够很好地解决数据信号的跨时钟域问题,以实现最有效地调节接口数据传输速率。为达到上述目的,本专利技术实施例的技术方案是这样实现的:本专利技术实施例提供一种数据传输控制方法,预先设置计数器;所述方法还包括:确定处于不同时钟域的输入端和输出端的时钟频率比例关系;根据所述时钟频率比例关系,确定所述计数器的计数值;检测到所述输入端开始传输数据时,启动所述计数器,并在所述输出端输出数据,直至所述计数器到达所述计数值时,停止所述输出端的数据输出。上述方案中,停止所述输出端的数据输出时,所述方法还包括:将所述计数器清零。上述方案中,所述检测到所述输入端开始传输数据,包括:检测到所述输入端输入的数据的有效信号出现高电平时,所述输入端开始传输数据。上述方案中,所述输入端包括数据内存,所述输出端包括数据处理模块;所述方法还包括:在所述数据内存与所述数据处理模块之间设置接口控制模块;所述数据内存与所述接口控制模块处于同一时钟域,所述数据内存的时钟频率大于所述数据处理模块的时钟频率。上述方案中,在检测到所述输入端开始传输数据之后,所述方法还包括:检测到所述输出端输出的数据有边沿触发时,对所述输出端输出的数据进行采样;所述边沿触发包括以下至少之一:上升沿触发、下降沿触发。上述方案中,所述输入端在预设的时钟周期内传输数据。本专利技术实施例还提供一种数据传输控制装置,所述装置包括:数据内存模块、接口控制模块;其中,所述数据内存模块,用于预先设置计数器和速率寄存器,还用于将处于不同时钟域的输入端和输出端的时钟频率比例关系,保存至所述速率寄存器中;所述接口控制模块,用于检测到所述输入端开始传输数据时,启动所述计数器,并在所述输出端输出数据,当所述计数器的计数值与所述速率寄存器保存的数值相同时,停止所述输出端的数据输出。上述方案中,所述接口控制模块,还用于停止所述输出端的数据输出时,将所述计数器清零。上述方案中,所述接口控制模块,具体用于:检测到所述输入端输入的数据的有效信号出现高电平时,所述输入端开始传输数据。上述方案中,所述装置还包括:数据处理模块,用于在所述接口控制模块检测到所述输入端开始传输数据之后,检测到所述输出端输出的数据有边沿触发时,对所述输出端输出的数据进行采样;所述边沿触发包括以下至少之一:上升沿触发、下降沿触发。上述方案中,所述数据内存模块与所述接口控制模块处于同一时钟域,所述数据内存模块的时钟频率大于所述数据处理模块的时钟频率。本专利技术实施例还提供一种存储介质,其上存储有可执行程序,所述可执行程序被处理器执行时实现上述任一所述方法的步骤。本专利技术实施例还提供一种数据传输控制装置,包括存储器、处理器及存储在存储器上并能够由所述处理器运行的可执行程序,所述处理器运行所述可执行程序时执行上述任一所述方法的步骤。本专利技术实施例提供的数据传输控制方法、装置及存储介质,预先设置计数器;确定处于不同时钟域的输入端和输出端的时钟频率比例关系;根据所述时钟频率比例关系,确定所述计数器的计数值;检测到所述输入端开始传输数据时,启动所述计数器,并在所述输出端输出数据,直至所述计数器到达所述计数值时,停止所述输出端的数据输出。如此,在逻辑上未使用异步FIFO,而是使用计数器控制数据的输出速率,从而不仅避免因异步FIFO队列引起的数据溢出的风险,还减小硬件开销,使得硬件结构简单,很好地解决数据信号的跨时钟域问题,以实现最有效地调节接口数据传输速率,具有很强的实用价值。附图说明图1为现有技术中跨时钟域数据传输的应用环境示意图;图2为现有技术中解决跨时钟域数据传输的装置结构示意图;图3为本专利技术实施例提供的数据传输控制方法的流程示意图;图4为本专利技术实施例提供的数据输入输出时序状态图;图5为本专利技术实施例提供的数据传输控制装置的组成结构示意图;图6为本专利技术实施例提供的接口控制模块的结构示意图;图7为本专利技术实施例提供的数据传输控制装置的硬件结构示意图。具体实施方式现有技术中,实现跨时钟域数据传输的应用环境如图1所示,在该应用环境下,首先按照数据内存11的接口协议从数据内存11中读取数据,然后将读取出的数据传输给数据处理模块12做进一步处理。其中,数据内存11与数据处理模块12处于不同的时钟域,即数据内存11属于时钟域(clockdomain)1,数据处理模块12属于clockdomain2。需要说明的是,即使数据内存11与数据处理模块12处于相同的时钟域,数据处理模块12对输入数据的速率也有一定的要求,即一般要求在一定的时钟周期内输入一个数据,且该时钟周期是由通讯协议或者数据处理模块12的处理能力决定的。要想实现数据内存与数据处理模块保持不同的时钟频率,这给IC硬件接口设计带来很大困难。针对上述问题,现有技术中给出了相应解决方案,图2为现有技术中解决跨时钟域数据传输的装置的结构示意图,如图2所示,该装置包括:数据内存21、发送端接口模块22、异步FIFO模块23、接收端接口模块24、以及数据处理模块25。其中,数据内存21与发送端接口模块22同属于clockdomain1,接收端接口模块24与数据处理模块25同属于clockdomain2,使用跨两个时钟域的异步FIFO模块23连接发送端接口模块22和接收端接口模块24。该装置的本文档来自技高网
...

【技术保护点】
1.一种数据传输控制方法,其特征在于,预先设置计数器;所述方法还包括:确定处于不同时钟域的输入端和输出端的时钟频率比例关系;根据所述时钟频率比例关系,确定所述计数器的计数值;检测到所述输入端开始传输数据时,启动所述计数器,并在所述输出端输出数据,直至所述计数器到达所述计数值时,停止所述输出端的数据输出。

【技术特征摘要】
1.一种数据传输控制方法,其特征在于,预先设置计数器;所述方法还包括:确定处于不同时钟域的输入端和输出端的时钟频率比例关系;根据所述时钟频率比例关系,确定所述计数器的计数值;检测到所述输入端开始传输数据时,启动所述计数器,并在所述输出端输出数据,直至所述计数器到达所述计数值时,停止所述输出端的数据输出。2.根据权利要求1所述的方法,其特征在于,停止所述输出端的数据输出时,所述方法还包括:将所述计数器清零。3.根据权利要求1或2所述的方法,其特征在于,所述检测到所述输入端开始传输数据,包括:检测到所述输入端输入的数据的有效信号出现高电平时,所述输入端开始传输数据。4.根据权利要求1所述的方法,其特征在于,所述输入端包括数据内存,所述输出端包括数据处理模块;所述方法还包括:在所述数据内存与所述数据处理模块之间设置接口控制模块;所述数据内存与所述接口控制模块处于同一时钟域,所述数据内存的时钟频率大于所述数据处理模块的时钟频率。5.根据权利要求1所述的方法,其特征在于,在检测到所述输入端开始传输数据之后,所述方法还包括:检测到所述输出端输出的数据有边沿触发时,对所述输出端输出的数据进行采样;所述边沿触发包括以下至少之一:上升沿触发、下降沿触发。6.根据权利要求1所述的方法,其特征在于,所述输入端在预设的时钟周期内传输数据。7.一种数据传输控制装置,其特征在于,所述装置包括:数据内存模块、接口控制模块;其中,所述数据内存模块,用于预先设置计数器和速率寄存器,还用于将处于不同时钟域...

【专利技术属性】
技术研发人员:杨阳林文琼马超
申请(专利权)人:深圳市中兴微电子技术有限公司
类型:发明
国别省市:广东,44

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

1