System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 数据位宽转换方法、装置、计算机设备及介质制造方法及图纸_技高网

数据位宽转换方法、装置、计算机设备及介质制造方法及图纸

技术编号:40157837 阅读:5 留言:0更新日期:2024-01-26 23:32
本发明专利技术涉及计算机技术领域,公开了一种数据位宽转换方法、装置、计算机设备及介质,该方法包括:获取第一指示信号的第一指示状态和第二指示信号的第二指示状态;根据第一指示状态控制写指针在环形缓存寄存器中进行寻址,获取第一地址信息;根据第二指示状态控制读指针在环形缓存寄存器中进行寻址,获取第二地址信息;根据第一指示状态、第二指示状态、第一地址信息,以及第二地址信息,确定数据位宽转换状态;对输入数据和/或输出数据执行与数据位宽转换状态对应的操作。该方式,基于FPGA内部状态机控制读写指针在环形缓存寄存器中进行寻址,相较于传统两级转换,设计更加简单、灵活,高效,可以实现输入数据和输出数据位宽灵活可配。

【技术实现步骤摘要】

本专利技术涉及计算机,具体涉及数据位宽转换方法、装置、计算机设备及介质


技术介绍

1、在大型数字电路设计中,需要将一个大的工程划分为若干个大小不等的功能模块。不同模块之间在进行数据传输时,如果数据位宽不匹配,则需要额外增加一个位宽转换功能模块。常用的整数倍的数据位宽转换可以通过简单的移位控制操作来完成。但是,当存在类似2:3或者3:2之类的非整数位宽转换时,相关方法可能存在无法移植到其他平台的弊端;或者,虽然也有一些方法通用性强、便于移植,但复杂度可能过高,同时占用了更多的逻辑资源。


技术实现思路

1、有鉴于此,本专利技术提供了一种数据位宽转换方法、装置、计算机设备及介质,以解决相关技术中没有相对有效方法能够在不移植到其他平台的情况下实现非整数位宽转换,或者,采用相较于比较简单、占用逻辑资源少的情况下实现非整数位宽的转换的问题。

2、第一方面,本专利技术提供了一种数据位宽转换方法,该方法应用于一种数据位宽转换系统,数据位宽转换系统中配置环形缓存寄存器、读指针和写指针,该方法包括:

3、获取第一指示信号的第一指示状态和第二指示信号的第二指示状态;

4、根据第一指示状态控制写指针在环形缓存寄存器中进行寻址,获取第一地址信息;以及根据第二指示状态控制读指针在环形缓存寄存器中进行寻址,获取第二地址信息;

5、根据第一指示状态、第二指示状态、第一地址信息,以及第二地址信息,确定数据位宽转换状态,其中,数据位宽转换状态用于控制输入数据在数据输入通道中按照第一预设字节数量进行输入,或者,反馈前端反压信号以控制输入数据锁存;和/或,数据位宽转换状态用于控制输出数据在数据输出通道中按照第二预设字节数量进行输出,或者,反馈后端反压信号以控制输出数据锁存;

6、对输入数据和/或输出数据执行与数据位宽转换状态对应的操作。

7、本专利技术提供的一种数据位宽转换方法,具有如下优点:第一指示信号的第一指示状态用于控制写指针在环形缓存寄存器中进行寻址,来获取写指针所指示的第一地址信息。第二指示信号的第二指示状态,用于控制读指针在环形缓存寄存器中进行寻址,获取读指针所指示的第二地址信息。并根据第一地址信息和第二地址信息,确定地址指针差值。这个指针差值则可以代表环形缓存寄存器中目前已经被占用的位置数量。进而推算环形缓存寄存器中空余位置的数量。被占用的位置数量可以指示已输入数据和已输出数据之间的差值。进而,可以判定目前是需要继续写入数据,还是继续读出数据。亦或是写入和读出同时进行。从而,可以根据第一指示状态、第二指示状态,以及地址指针差值,确定数据位宽转换状态,其中数据位宽转换状态用于控制输入数据在数据输入通道按照第一预设字节数量进行输入,或者,反馈前端反压信号以控制输入数据锁存,和/或,控制输出数据在数据输出通道中按照第二预设字节数量进行输出,或者,反馈后端反压信号以控制输出数据锁存。该方式中,基于可编程逻辑器件fpga内部状态机控制读写指针进行跳转在环形缓存寄存器中进行寻址,相较于传统两级转换,设计更加简单、灵活,高效,可以实现输入数据和输出数据位宽灵活可配。无需额外引入第三方位宽转换ip,也可以任意移植到任何平台执行,也无需占用过多的逻辑资源。再者,该方法不仅仅可以适用于非整数倍位宽转换,整数倍位宽转换同样适用。可以适配更多场景的用户设计。

8、在一种可选的实施方式中,根据第一指示状态、第二指示状态、第一地址信息,以及第二地址信息,确定数据位宽转换状态,包括:

9、根据第一地址信息和第二地址信息,确定地址指针差值;

10、根据第一指示状态、第二指示状态、地址指针差值,确定所属数据位宽转换状态。

11、在一种可选的实施方式中,获取第一指示信号的第一指示状态和第二指示信号的第二指示状态,具体包括:

12、获取预配置的数据输入有效指示信号当前的状态,数据输出有效指示信号当前的状态,以及预配置的输出准备信号当前的状态;

13、识别指针差值当前所属的差值范围;

14、根据数据输入有效指示信号当前的状态和与地址指针差值所属的差值范围,确定第一指示状态;

15、以及,根据输出准备信号当前的状态和数据输出有效指示信号当前的状态,确定第二指示状态。

16、具体的,数据输入有效指示信号当前的状态用于指示输入的输入是否有效,地址指针差值如前述内容所介绍的,可以指示输入数据和输出数据之间的差值,如果输入数据和输出数据之间的差值在允许输入数据的差值范围内,且当前输入数据是有效数据,则可以确定第一指示状态有效,也即是控制写指针在环形缓存寄存器中进行寻址。类似的道理,输出准备信号当前的状态可以指示是否准备好接收输出数据。如果已经准备好,且指针差值所属的范围是允许输出数据的差值范围,则确定第二指示状态有效,进而控制读指针在环形缓存寄存器中进行寻址。

17、在一种可选的实施方式中,数据位宽转换状态包括:第一转换状态、第二转换状态、第三转换状态,以及第四转换状态;

18、根据第一指示状态、第二指示状态,以及地址指针差值,确定数据位宽转换状态,包括:

19、当确定第一指示状态和第二指示状态同时无效,且地址指针差值为预设值时,确定数据位宽转换状态为第一转换状态;

20、或者,当确定第一指示状态和第二指示状态同时有效,且地址指针差值为第一差值范围和第二差值范围的交集中的任意数值时,确定数据位宽转换状态为第二转换状态;

21、或者,当确定第一指示状态有效,第二指示状态无效,且地址指针差值为第一差值范围的任意数值时,确定数据位宽转换状态为第三转换状态;

22、或者,当确定第一指示状态无效,第二指示状态有效,且地址指针差值为第一差值范围的任意数值时,确定数据位宽转换状态为第四转换状态。

23、具体的,当第一指示状态和第二指示状态同时无效时,则说明输入数据和输出数据同时处于锁存状态,则可以确定数据位宽转换状态为第一转换状态。或者,第一地址指针差值在第一差值范围和第二差值范围的交集中,则说明地址指针差值既在用于指示允许输入数据的差值范围内,也在允许输出数据的差值范围内,此时如果第一指示状态和第二指示状态同时有效,则可以确定数据位宽转换状态为第二转换状态,也即是用以指示输入和输出同时有效。或者,如果第一指示状态有效,第二指示状态无效,地址指针差值在第一差值范围内,则说明只允许输入数据,不允许输出数据,可以确定该数据位宽转换状态为第三转换状态;或者,如果第二指示状态有效,第一指示状态无效,地址指针差值在第二差值范围内,则说明只允许输出数据,不允许输入数据,可以确定该数据位宽转换状态为第四转换状态。

24、在一种可选的实施方式中,对输入数据和/或输出数据执行与数据位宽转换状态对应的操作,具体包括:

25、当数据位宽转换状态为第一转换状态时,控制输入数据和输出数据同时进行锁存处理;

26、或者,当数据位宽转换状态为第二本文档来自技高网...

【技术保护点】

1.一种数据位宽转换方法,其特征在于,所述方法应用于一种数据位宽转换系统,所述数据位宽转换系统中配置环形缓存寄存器、读指针和写指针,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述根据所述第一指示状态、所述第二指示状态、所述第一地址信息,以及所述第二地址信息,确定数据位宽转换状态,包括:

3.根据权利要求2所述的方法,其特征在于,获取第一指示信号的第一指示状态和第二指示信号的第二指示状态,具体包括:

4.根据权利要求2或3所述的方法,其特征在于,所述数据位宽转换状态包括:第一转换状态、第二转换状态、第三转换状态,以及第四转换状态;

5.根据权利要求4所述的方法,其特征在于,所述对所述输入数据和/或所述输出数据执行与所述数据位宽转换状态对应的操作,具体包括:

6.根据权利要求1-3中任一项所述的方法,其特征在于,所述方法还包括:

7.根据权利要求6所述的方法,其特征在于,当所述数据输入通道包括多条,采用仲裁的方式从多条所述数据输入通道中选择目标数据输入通道传输所述输入数据,包括:

8.根据权利要求1-3任一项所述的方法,其特征在于,当所述数据输入通道包括多条,采用仲裁的方式从多条所述数据输入通道中选择目标数据输入通道传输所述输入数据包括:

9.根据权利要求1-3任一项所述的方法,其特征在于,所述输入数据预先存放于输入缓存队列,以便后续从所述输入缓存队列中写数据至所述环形缓存寄存器;

10.根据权利要求9所述的方法,其特征在于,当所述数据输入通道包括多条,所述方法还包括:

11.根据权利要求9所述的方法,其特征在于,当所述数据输出通道包括多条,所述方法还包括:

12.根据权利要求3所述的方法,其特征在于,所述第一指示状态包括有效和无效两种状态;

13.根据权利要求3所述的方法,其特征在于,所述第二指示状态包括有效状态和无效状态两种类型,所述数据输出有效指示信号当前的状态包括有效和无效两种类型;

14.根据权利要求1-3中任一项所述的方法,其特征在于,所述环形缓存寄存器的最大数据位宽为所述第一预设字节数量和所述第二预设字节数量中最大值的预设整数倍。

15.根据权利要求1-3中任一项所述的方法,其特征在于,当所述第一指示状态有效时,控制所述写指针在所述环形缓存寄存器中按照所述第一预设字节数量进行跳转寻址;

16.根据权利要求1-3中任一项所述的方法,其特征在于,当所述第二指示状态有效时,控制所述读指针在所述环形缓存寄存器中按照所述第二预设字节数量进行跳转寻址;

17.根据权利要求1-3中任一项所述的方法,其特征在于,所述对所述输入数据和/或所述输出数据执行与所述数据位宽转换状态对应的操作时,所述方法还包括:

18.一种数据位宽转换装置,其特征在于,所述装置包括:

19.一种计算机设备,其特征在于,包括:

20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至17中任一项所述的数据位宽转换方法。

...

【技术特征摘要】

1.一种数据位宽转换方法,其特征在于,所述方法应用于一种数据位宽转换系统,所述数据位宽转换系统中配置环形缓存寄存器、读指针和写指针,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述根据所述第一指示状态、所述第二指示状态、所述第一地址信息,以及所述第二地址信息,确定数据位宽转换状态,包括:

3.根据权利要求2所述的方法,其特征在于,获取第一指示信号的第一指示状态和第二指示信号的第二指示状态,具体包括:

4.根据权利要求2或3所述的方法,其特征在于,所述数据位宽转换状态包括:第一转换状态、第二转换状态、第三转换状态,以及第四转换状态;

5.根据权利要求4所述的方法,其特征在于,所述对所述输入数据和/或所述输出数据执行与所述数据位宽转换状态对应的操作,具体包括:

6.根据权利要求1-3中任一项所述的方法,其特征在于,所述方法还包括:

7.根据权利要求6所述的方法,其特征在于,当所述数据输入通道包括多条,采用仲裁的方式从多条所述数据输入通道中选择目标数据输入通道传输所述输入数据,包括:

8.根据权利要求1-3任一项所述的方法,其特征在于,当所述数据输入通道包括多条,采用仲裁的方式从多条所述数据输入通道中选择目标数据输入通道传输所述输入数据包括:

9.根据权利要求1-3任一项所述的方法,其特征在于,所述输入数据预先存放于输入缓存队列,以便后续从所述输入缓存队列中写数据至所述环形缓存寄存器;

10.根据权利要求9所述的方法,其特征在于,当所述...

【专利技术属性】
技术研发人员:刘伟卢圣才王洪良
申请(专利权)人:苏州元脑智能科技有限公司
类型:发明
国别省市:

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

1