一种实现任意数据位宽转换的方法和装置制造方法

文档序号:6631135阅读:304来源:国知局
一种实现任意数据位宽转换的方法和装置制造方法
【专利摘要】本发明公开了一种实现任意数据位宽转换的方法和装置,方法如下:将输入输出数据位宽转换比化简到不可约转换比;读出本通道数据转换存贮状态,然后将上次转换剩余的数据读出,并将上次转换剩余的数据和输入的数据合并;采用拍数计数方法,对合并后的数据进行拍数计数,对拍数计数到不可约转换比;按相应拍数依次输出。装置包括数据位宽转换比化简模块、数据转换控制模块、状态存贮模块和数据输出模块。本发明的一种实现任意数据位宽转换的方法和装置,具有可实现任意位宽数据转换、简化数据转换装置结构、显著减小逻辑资源和面积并提高时钟频率等优点。
【专利说明】一种实现任意数据位宽转换的方法和装置

【技术领域】
[0001]本发明涉及一种数据转换方法,尤其是一种实现任意数据位宽转换的方法和装置。

【背景技术】
[0002]任意位宽转换技术在逻辑电路或大规模集成电路设计使用是非常广泛的,譬如需要将输入的8比特位宽数据转换为16比特位宽的数据。需要进行位宽转换操作的原因很多,可能是因为需要降低逻辑电路或ASIC (专用集成电路)的内部时钟频率。根据输入数据流量等于输出数据流量原理,clkl*n (bit) =clk2*m(bit),如果m大于η,必然clk2小于clkl,从这个等式就可以知道,通过数据位宽转换,将小位宽转换为大位宽数据,就可以降低时钟频率,从而降低逻辑电路或ASIC电路的设计难度。时钟频率降低还可以降低逻辑电路或ASIC电路的功耗。进行位宽转换操作也有可能是因为后端处理电路的需要,后段处理电路需要的数据位宽如果与输入数据位宽不相等,此时就需要进行位宽转换操作。综上所述,在逻辑电话设计或ASIC电路设计中,数据位宽转换操作的使用是非常广泛的。
[0003]目前主要的数据位宽转换方法一般是基于FIFO电路或MEMORY电路,通过FIFO或MEMORY将输入数据存储起来,然后根据输出数据位宽的要求进行读取,从而实现位宽转换操作。如图3所示,这种电路的主要问题是随着通道数量增加,所需要的FIFO也需要增加,FIFO数量和通道数量是对应的。同时随着通道数量增加,各个FIFO读出数据的间隔时间会增大,这就要求每个FIFO的深度也要增加,否则FIFO会溢出。此外,由于FIFO数量增加,各个FIFO的输出必须通过选择电路输出,选择电路的输入增多了,它的时序就会变得复杂,难于提高设计速度。
[0004]还有一种作法是如中国发明专利CN1674477B所提出的方法,采用一组有限状态机实现位宽转换,如图4所示。这种电路相比较上述方法,不用FIFO或MEMORY,在状态机的控制下直接实现位宽转换,各个有限状态机对应一个通道。通过一个状态机组实现所有通道的数据位宽转换。各个通道转换后的数据通过选择器输出,从而实现数据位宽转换操作。这个方法也有问题,首先它需要多个状态机,有多少个通道就有多少个状态机。这也会耗费很多资源。根据实际情况,输入数据只会在某个通道状态机里处理,而不会在所有状态机都进行处理。其次它的转换只能实现由η拍数据到I拍数据的转换,无法实现由η拍数据到m拍数据的转换,而实际上这样的需要是很多的。还有一个问题,随着转换通道增加,数据选择输出电路也会变得很复杂,同样难于提高设计时钟频率。
[0005]有鉴于此,特提出一种实现任意数据位宽转换的方法和装置,使其能节省逻辑资源和面积,并实现任意数据位宽转换。


【发明内容】

[0006]本发明是为避免上述已有技术中存在的不足之处,提供一种实现任意数据位宽转换的方法和装置,以实现任意位宽数据转换、简化数据转换装置结构。
[0007]本发明为解决技术问题采用以下技术方案。
[0008]一种实现任意数据位宽转换的方法,其包括如下步骤:
步骤1:将输入输出数据位宽转换比化简到不可约转换比;
步骤2:读出本通道数据转换存贮状态,然后将上次转换剩余的数据读出,并将上次转换剩余的数据和输入的数据合并;
步骤3:采用拍数计数方法,对合并后的数据进行拍数计数,对拍数计数到不可约转换比;
步骤4:按相应拍数依次输出。
[0009]在所述步骤3中,对拍数计数到不可约转换比后,如果有剩余数据,需要把此剩余数据写到一个状态存贮模块。
[0010]一种所述的实现任意数据位宽转换的方法的装置,其特征是,包括数据位宽转换比化简模块、数据转换控制模块、状态存贮模块和数据输出模块;
所述数据位宽转换比化简模块,用于将输入输出数据位宽转换比化简到不可约转换比;
所述数据转换控制模块,用于从数据位宽转换比化简模块得到数据位宽转换比,根据该不可约转换比进行数据位宽转换;从状态存贮模块读出本通道数据转换存贮状态,将上次转换剩余的数据读出,并和输入的数据合并,采用拍数计数方法,对合并后的数据进行拍数计数,一直计到不可约转换比;
所述状态存贮模块,用于从数据转换控制模块接收本次数据转换后剩余的数据并存储;而后,根据数据转换控制模块要求,输出相应通道的剩余数据,供数据转换控制模块使用;
所述数据输出模块,用于从数据转换控制模块接收转换后的数据,按相应拍数依次输出。
[0011]与已有技术相比,本发明有益效果体现在:
本发明的一种实现任意数据位宽转换的方法和装置,将输入输出数据位宽转换比化简到不可约转换比;读出本通道数据转换存贮状态,然后将上次转换剩余的数据读出,并将上次转换剩余的数据和输入的数据合并;采用拍数计数方法,对合并后的数据进行拍数计数,对拍数计数到不可约转换比;按相应拍数依次输出。装置包括数据位宽转换比化简模块、数据转换控制模块、状态存贮模块和数据输出模块。通过不可约转换比对数据进行拍数技术,实现数据的计数和输出。
[0012]本发明的一种实现任意数据位宽转换的方法和装置,可以显著减小逻辑资源和面积,同时可以实现任意位宽数据转换。同时由于不需要使用复杂的选择输出,可以大大提高时钟频率。由此采用本方法和装置,在数据位宽转换方面有显著的效果。
[0013]本发明的一种实现任意数据位宽转换的方法和装置,具有可实现任意位宽数据转换、简化数据转换装置结构、显著减小逻辑资源和面积并提高时钟频率等优点。

【专利附图】

【附图说明】
[0014]图1为本发明的一种实现任意数据位宽转换的方法的流程图。
[0015]图2为本发明的一种实现任意数据位宽转换装置的结构框图。
[0016]图3为现有技术中的采用基于FIFO电路或MEMORY电路的数据转换示意图。
[0017]图4为专利CN1674477B的数据转换示意图。
[0018]以下通过【具体实施方式】,并结合附图对本发明作进一步说明。

【具体实施方式】
[0019]参见图1?图2,本发明的一种实现任意数据位宽转换的方法包括如下步骤:
步骤1:将输入输出数据位宽转换比化简到不可约转换比;
步骤2:读出本通道数据转换存贮状态,然后将上次转换剩余的数据读出,并将上次转换剩余的数据和输入的数据合并;
步骤3:采用拍数计数方法,对合并后的数据进行拍数计数,对拍数计数到不可约转换比;
步骤4:按相应拍数依次输出。
[0020]在所述步骤3中,对拍数计数到不可约转换比后,如果有剩余数据,需要把此剩余数据写到一个状态存贮模块。
[0021]实现所述的一种实现任意数据位宽转换的方法的装置,包括数据位宽转换比化简模块、数据转换控制模块、状态存贮模块和数据输出模块;
所述数据位宽转换比化简模块,用于将输入输出数据位宽转换比化简到不可约转换比;
所述数据转换控制模块,用于从数据位宽转换比化简模块得到数据位宽转换比,根据该不可约转换比进行数据位宽转换;从状态存贮模块读出本通道数据转换存贮状态,将上次转换剩余的数据读出,并和输入的数据合并,采用拍数计数方法,对合并后的数据进行拍数计数,一直计到不可约转换比;
所述状态存贮模块,用于从数据转换控制模块接收本次数据转换后剩余的数据并存储;而后,根据数据转换控制模块要求,输出相应通道的剩余数据,供数据转换控制模块使用;
所述数据输出模块,用于从数据转换控制模块接收转换后的数据,按相应拍数依次输出。
[0022]本发明的一种实现任意数据位宽转换的方法,其转换过程如下:
1、根据数据位宽转换要求,计算出数据位宽转换的不可约转换比。
[0023]2、数据转换控制模块:从数据位宽转换比化简模块得到不可约转换比,同时从状态存贮模块得到本次转换通道上次转换剩余数据。数据转换模块模块将此剩余数据和输入数据进行合并,采用拍数计数方法,对合并后的数据进行计拍操作,一直计数到不可约数据,将此数据输出给数据输出模块。同时需要将本次转换剩余数据输入到状态存贮模块。
[0024]3、状态存贮模块:将此次数据转换剩余数据写到相应通道存贮空间,提供给下次本通道数据来临时数据位宽转换使用。
[0025]4、数据输出模块:接收数据转换控制模块输出的数据,按照数据转换不可约比依次输出。同时还需要输出通道号、数据有效指示、SOP、EOP等。
[0026]本发明还提供了一种用于实现上述实现任意数据位宽转换的方法的装置,包括如下几个模块。
[0027]I)数据位宽转换比化简模块:实现将输入输出数据位宽转换比化简到不可约转换t匕。譬如需要将320比特数据转换为512比特数据,不可约转换比为8:5,也就是说需要将8拍的320比特数据转换为5拍的512比特数据;
2)数据转换控制模块:从数据位宽转换比化简模块得到数据位宽转换比,根据该不可约转换比进行数据位宽转换。数据位宽转换的过程为:从状态存贮模块读出本通道数据转换存贮状态,将上次转换剩余的数据读出,并和输入的数据合并,采用拍数计数方法,对合并后的数据进行拍数计数,一直计到不可约转换比。还以上述例子进行说明,将320比特转换为512比特,不可约位宽转换比为8:5,即需要对合并后的数据进行计数,一直计数到8,然后输出到数据输出模块。同时如果有剩余数据,需要把此剩余数据写到状态存贮模块。
[0028]3)状态存贮模块:从数据转换控制模块接收本次数据转换后剩余的数据,注意此数据是和通道号相对应的。同时根据数据转换控制模块要求,输出相应通道的剩余数据,供数据转换控制模块使用。
[0029]4)数据输出模块,从数据转换控制模块接收转换后的数据,按相应拍数依次输出。还以以上例子进行说明,320比特数据转换为512比特数据,不可约转换比为8:5,数据控制模块输出此8拍320比特数据,共有2560比特,在数据转换模块,需要按照每拍512比特输出,依次输出5拍,即实现了数据位宽转换。除了数据需要输出外,还要输出通道号、数据有效指示、SOP (start of packet)和EOP (end of packet)等。通道号的输出只需要将输出转换模块输出的通道号直接输出即可。数据有效指示需要和转换后的数据位宽相对应。如本例,需要在输出5拍512比特数据时需要将数据输出有效指示为高,表示数据输出有效。SOP来源于数据转换控制模块,EOP需要根据转换后的数据包实际有效拍数输出。
[0030]将输入输出数据位宽转换比化简到不可约转换比;读出本通道数据转换存贮状态,然后将上次转换剩余的数据读出,并将上次转换剩余的数据和输入的数据合并;采用拍数计数方法,对合并后的数据进行拍数计数,对拍数计数到不可约转换比;按相应拍数依次输出。装置包括数据位宽转换比化简模块、数据转换控制模块、状态存贮模块和数据输出模块。通过不可约转换比对数据进行拍数技术,实现数据的计数和输出。
[0031]本发明的一种实现任意数据位宽转换的方法和装置,可以显著减小逻辑资源和面积,同时可以实现任意位宽数据转换。同时由于不需要使用复杂的选择输出,可以大大提高时钟频率。由此采用本方法和装置,在数据位宽转换方面有显著的效果。
[0032]本发明的一种实现任意数据位宽转换的方法和装置,具有可实现任意位宽数据转换、简化数据转换装置结构、显著减小逻辑资源和面积并提高时钟频率等优点。
[0033]上面所述的实施例仅仅是对本发明的优选实施方式进行描述,并非对本发明的构思和范围进行限定。在不脱离本发明设计构思的前提下,本领域普通人员对本发明的技术方案做出的各种变型和改进,均应落入到本发明的保护范围,本发明请求保护的技术内容,已经全部记载在权利要求书中。
【权利要求】
1.一种实现任意数据位宽转换的方法,其特征是,包括如下步骤: 步骤1:将输入输出数据位宽转换比化简到不可约转换比; 步骤2:读出本通道数据转换存贮状态,然后将上次转换剩余的数据读出,并将上次转换剩余的数据和输入的数据合并; 步骤3:采用拍数计数方法,对合并后的数据进行拍数计数,对拍数计数到不可约转换比; 步骤4:按相应拍数依次输出。
2.根据权利要求1所述的一种实现任意数据位宽转换的方法和装置,其特征是,在所述步骤3中,对拍数计数到不可约转换比后,如果有剩余数据,需要把此剩余数据写到一个状态存贮模块。
3.用于实施权利要求1或2所述的一种实现任意数据位宽转换的方法的装置,其特征是,包括数据位宽转换比化简模块、数据转换控制模块、状态存贮模块和数据输出模块; 所述数据位宽转换比化简模块,用于将输入输出数据位宽转换比化简到不可约转换比; 所述数据转换控制模块,用于从数据位宽转换比化简模块得到数据位宽转换比,根据该不可约转换比进行数据位宽转换;从状态存贮模块读出本通道数据转换存贮状态,将上次转换剩余的数据读出,并和输入的数据合并,采用拍数计数方法,对合并后的数据进行拍数计数,一直计到不可约转换比; 所述状态存贮模块,用于从数据转换控制模块接收本次数据转换后剩余的数据并存储;而后,根据数据转换控制模块要求,输出相应通道的剩余数据,供数据转换控制模块使用; 所述数据输出模块,用于从数据转换控制模块接收转换后的数据,按相应拍数依次输出。
【文档编号】G06F5/00GK104331266SQ201410564959
【公开日】2015年2月4日 申请日期:2014年10月22日 优先权日:2014年10月22日
【发明者】周能强 申请人:安徽皖通邮电股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1