本发明涉及电子信息技术领域,尤其涉及一种并行数据的产生电路、方法及电子设备。
背景技术:
随着现代电子信息技术的发展,数据通信逐步走向高带宽、高速率,对高速并行数据的需求量增加。传统的并行数据的产生方式大多采用存储器输出、串并转换器或者并串转换器来实现。
本发明发明人在实际操作过程中发现现有技术中存在如下缺陷:
通过存储器直接输出并行数据受限于存储器的传输速度和数据宽度的限制。通过串并转换器输出并行数据依赖于电路设计中使用器件的性能参数和时序收敛性。通过并串转换器实现并行数据只能将数据宽度较大的并行数据转换为数据宽度较小的并行数据,即受到并行数据宽度的限制。可见,现有技术中的并行数据产生方式都具有一定的局限性。
技术实现要素:
本发明提供一种并行数据的产生电路、方法及电子设备,用以提供一种新的并行数据的产生电路。
本发明第一方面提供了一种并行数据的产生电路,包括:
n个存储电路,所述n个存储电路中的每个存储电路产生m位并行数据;所述m位并行数据中的每位并行数据均具有通道标识,所述通道标识用于表示所述每位并行数据从所述每个存储电路输出时对应的输出通道;n为大于等于1的整数;m为大于等于2的整数;
n个并串转换电路,所述n个并串转换电路中的第i个并串转换电路与所述n个存储电路中的第i个存储电路一一对应连接,i为从1到n的整数;所述第i个并串转换电路接收所述第i个存储电路产生的m位并行数据,并将所述m位并行数据转换为第i路串行数据;
合成电路,与所述n个并串转换电路均连接,用于接收所述n个并串转换电路共产生的n路串行数据,并根据所述n路串行数据中每个数据的所述通道标识,合成数据宽度为n的并行数据。
可选的,所述合成电路具体用于:
将所述n路串行数据中所述通道标识相同的数据合成为数据宽度为n的并行数据,最终合成m个数据宽度为n的并行数据。
可选的,所述电路还包括;
第一控制电路,与所述n个并串转换电路均连接;所述第一控制电路用于控制所述n个并串转换电路中任意两个并串转换电路在接收到与各自对应的存储电路产生的m位并行数据时的第一时间差不超过第一预设值。
可选的,所述电路还包括:
n个延时电路,所述n个延时电路中第i个延时电路的一端与所述第i个并串转换电路一一对应连接,所述第i个延时电路的另一端与所述合成电路连接;
所述第i个延时电路用于控制所述第i个并串转换电路产生的第i路串行数据到达所述合成电路时间,使得所述n路串行数据到达所述合成电路的时间相同。
可选的,所述n个存储电路中至少有一个存储电路为高速存储器和/或,所述n个并串转换电路中至少有一个并串转换电路为高速并串转换电路。
本发明第二方面提供一种并行数据的产生方法,应用于一并行数据的产生电路中,所述电路包括n个存储电路、n个并串转换电路和合成电路,所述n个并串转换电路中的第i个并串转换电路与所述n个存储电路中的第i个存储电路一一对应连接,所述合成电路与所述n个并串转换电路均连接,n为大于等于1的整数,i为从1到n的整数;所述方法包括:
所述n个存储电路中的每个存储电路产生m位并行数据;所述m位并行数据中的每位并行数据均具有通道标识,所述通道标识用于表示所述每位并行数据从所述每个存储电路输出时对应的输出通道;m为大于等于2的整数;
所述第i个并串转换电路接收所述第i个存储电路产生的m位并行数据,并将所述m位并行数据转换为第i路串行数据;
所述合成电路接收所述n个并串转换电路共产生的n路串行数据,并根据所述n路串行数据中每个数据的所述通道标识,合成数据宽度为n的并行数据。
可选的,所述合成电路根据所述n路串行数据中每个数据的所述通道标识,合成数据宽度为n的并行数据,包括:
所述合成电路将所述n路串行数据中所述通道标识相同的数据合成为数据宽度为n的并行数据,最终合成m个数据宽度为n的并行数据。
可选的,所述电路还包括:与所述n个并串转换电路连接的第一控制电路,在所述第i个并串转换电路将所述m位并行数据转换为第i路串行数据之前,所述方法还包括:
所述第一控制电路控制所述n个并串转换电路中任意两个并串转换电路在接收到与各自对应的存储电路产生的m位并行数据时的第一时间差不超过第一预设值。
可选的,所述电路还包括:n个延时电路,所述n个延时电路中第i个延时电路的一端与所述第i个并串转换电路一一对应连接,所述第i和延时电路的另一端与所述合成电路连接;在所述合成电路根据所述n路串行数据中每个数据的所述通道标识,合成数据宽度为n的并行数据之前,所述方法还包括:
所述第i个延时电路控制所述第i个并串转换电路产生的第i路串行数据到达所述合成电路时间,使得所述n路串行数据到达所述合成电路的时间相同。
可选的,所述n个存储电路中至少有一个存储电路为高速存储器和/或,所述n个并串转换电路中至少有一个并串转换电路为高速并串转换电路。
本发明第三方面提供一种电子设备,包括:
电路板;
如本发明第一方面提供的电路,设置在所述电路板上。
本发明实施例中的技术方案具有如下有益效果:
在本发明实施例提供的技术方案中,提供一种新的并行数据的产生电路,该电路包括:n个存储电路、n个并串转换电路和合成电路,n个并串转换电路中的第i个并串转换电路与第i个存储电路一一对应连接,合成电路与n个并串转换电路均连接。n为大于等于1的整数;i为从1到n的整数;
其中,每个存储电路产生m位并行数据;m位并行数据中的每位数据均具有通道标识,通道标识用于表示每位数据从所述每个存储电路输出时对应的输出通道;用户可以根据实际需求设置存储电路的个数即n的值。
第i个并串转换电路接收第i个存储电路产生的m位并行数据,并将m位并行数据转换为第i路串行数据;最终,n个并串转换电路共产生n路串行数据并发送于合成电路。
合成电路根据n路串行数据中每个数据的通道标识,合成数据宽度为n的并行数据。由此可见,本发明提供的新的并行数据的产生电路可以保证用户能够根据实际需求设置所需的并行数据的数据宽度。
附图说明
图1为本发明一实施例提供的一种并行数据的产生电路的结构图;
图2为本发明一实施例提供的一种并行数据的产生方法的流程图;
图3为本发明一实施例提供的一种存储电路的结构图;
图4为本发明一实施例提供的一种并行数据的产生电路的实例结构图;
图5为本发明一实施例提供的一种电子设备的结构图。
具体实施方式
本发明提供一种并行数据的产生电路、方法以及电子设备,用以提供一种新的并行数据的产生电路。
为了解决上述问题,本发明总体思路如下:
在本发明实施例提供的技术方案中提供了一种新的并行数据的产生电路。该电路包括:n个存储电路、n个并串转换电路和合成电路。所述n个并串转换电路中的第i个并串转换电路与所述n个存储电路中的第i个存储电路一一对应连接,所述合成电路与所述n个并串转换电路均连接,n为大于等于1的整数,i为从1到n的整数;所述n个存储电路中的每个存储电路产生m位并行数据;所述m位并行数据中的每位数据均具有通道标识,所述通道标识用于表示所述每位数据从所述每个存储电路输出时对应的输出通道;所述第i个并串转换电路接收所述第i个存储电路产生的m位并行数据,并将所述m位并行数据转换为第i路串行数据;所述合成电路接收所述n个并串转换电路共产生的n路串行数据,并根据所述n路串行数据中每个数据的所述通道标识,合成数据宽度为n的并行数据。
为了更好的了解上述技术方案,下面通过附图以及具体实施例对本发明技术方案进行详细的说明,应当理解本发明实施例以及实施例中的具体特征是对本发明技术方案的详细的说明,而不是对本发明技术方案的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互组合。
本发明实施例第一方面提供一种并行数据的产生电路,请参考图1所示,为本发明实施例提供的并行数据的产生电路的结构图。如图1所示,该电路包括:n个存储电路、n个并串转换电路、以及合成电路,n为大于等于1的整数。其中,n个并串转换电路中的第i个并串转换电路与所述n个存储电路中的第i个存储电路一一对应连接,i为从1到n的整数;合成电路与n个并串转换电路均连接。本发明实施例提供的并行数据产生电路可以应用于射频收发器等任何需要产生并行数据的电子设备中。
请同时参考图2所示,为本发明实施例提供的一种并行数据的产生方法的流程图,该方法可以应用于上述的电路或者类似的用于产生并行数据的电路中。以下将结合图1和图2说明通过本发明实施例提供的并行数据的产生电路产生并行数据的过程。如图2所示,所述方法包括:
步骤101:n个存储电路中的每个存储电路产生m位并行数据;所述m位并行数据中的每位并行数据均具有通道标识,所述通道标识用于表示所述每位并行数据从所述每个存储电路输出时对应的输出通道;m为大于等于2的整数;
步骤102:所述第i个并串转换电路接收所述第i个存储电路产生的m位并行数据,并将所述m位并行数据转换为第i路串行数据;
步骤103:所述合成电路接收所述n个并串转换电路共产生的n路串行数据,并根据所述n路串行数据中每个数据的所述通道标识,合成数据宽度为n的并行数据。
在步骤101之前,所述方法还包括:每个存储电路将所需的数据编码并存储。以存储电路为静态随机存储器(staticrandomaccessmemory,sram)为例,单个存储电路的结构图请参考图3所示。主要包括:数据编码电路,sram写电路、sram存储电路及sram读电路。其中,数据编码电路对所需的数据进行编码,该编码过程可以理解为将所需的每个数据与该存储电路中的输出通道对应编号。例如第一个数据对应第一输出通道,则为第一数据编号为0。第二数据对应第二输出通道,则为第二数据编号为1。在数据编码电路对数据进行编码后,通过sram写电路将所述数据写入到sram存储电路中,当需要所述数据时,通过sram读电路从所述sram存储电路中读取出所述数据即步骤101的实现过程。在读取过程中,编号为0的第一数据通过第一输出通道输出从而形成第1位并行数据,可用d0表示,编号为1的第二数据通过第二输出通道输出从而形成第2位并行数据,可用d1表示。最终单个存储电路产生的两位并行数据为
可选的,为了实现数据传输的高效率,n个存储电路可以全部是高速存储器,或者部分是高速存储器。
可选的,n个存储电路的结构可以全部相同,或者部分相同。当然为了更好的保证电路的同步性,电路开发人员可以选择n个存储电路全部相同,同时为了提高最终产生的并行数据的速率,可以选择n存储电路全部是高速存储电路。
在步骤101之后,执行步骤102,即所述第i个并串转换电路接收所述第i个存储电路产生的m位并行数据,并将所述m位并行数据转换为第i路串行数据。继续以图3所示的单个存储器产生的两位并行数据
可选的,为了实现数据传输的高效率,n个并串转换电路可以全部是高速并串转换器,或者部分是高速并串转换器。
可选的,n个并串转换电路的结构可以全部相同,或者部分相同。同样的,为了更好的保证电路的同步性,电路开发人员可以选择n个并串转换电路全部相同,同时为了提高最终产生的并行数据的速率,可以选择n个并串转换电路全部是高速并串转化电路。
在步骤102之后,执行步骤103,即所述合成电路接收所述n个并串转换电路共产生的n路串行数据,并根据所述n路串行数据中每个数据的所述通道标识,合成数据宽度为n的并行数据。具体的实现方式可以是,将所述n路串行数据中所述通道标识相同的数据合成为数据宽度为n的并行数据。
以下将以n个存储电路具体为2个相同的存储电路,n个并串转换电路具体为2个相同的并串转换电路为例来说明步骤103的执行过程。
请参考图4所示,为本发明实施例提供的一种并行数据产生电路的实例结构图。n个存储电路中第1个存储电路产生3位并行数据并将所述3位并行数据发送给第1个并串转换电路。所述3位并行数据可以分别标记为d0[1]、d1[1]和d2[1]。其中,d0[1]表示通过第1存储电路中的第1个输出通道输出的,d1[1]表示通过第1存储电路中的第2个输出通道输出的,d2[1]表示通过第1存储电路中的第3个输出通道输出的。类似的,第2个存储电路产生标记依次为d0[2],d1[2],d2[2]的3位并行数据,并将所述3位并行数据发送给第2个并串转换电路。对应的,第1个并串转换电路将3位并行数据转换为第1路串行数据并发送给合成电路。第2个并串转换电路将3位并行数据转换为第2路串行数据并发送给合成电路。
合成电路接收到第1路串行数据和第2路串行数据后。将第1路串行数据和第2路串行数据中通道标识相同的d0[1]和d0[2]合成为数据位宽为2的并行数据即d0[2:1];将通道标识相同的d1[1]和d1[2]合成为数据位宽为2的并行数据即d1[2:1],将通道标识相同的d2[1]和d2[2]合成为数据位宽为2的并行数据即d2[2:1]。最终产生的并行数据流为d0[2:1]、d1[2:1]、d2[2:1]。
通过以上的描述可知,本发明提供的并行数据的产生电路可以将每个存储电路产生m位并行数据转换成一路串行数据,最终n个并串转换电路共产生n路串行数据并发送于合成电路,合成电路根据n路串行数据合成数据宽度为n的并行数据。可见,本发明提供的并行数据的产生电路可以保证用户能够根据实际需求设置所需的并行数据的数据宽度。
在实际操作过程中,电路开发者可以根据需要产生的并行数据的数据宽度来设置电路的具体结构,例如假设需要的并行数据的数据宽度为n,那么可以设置电路的具体结构为,n个存储电路(每个存储电路产生m位并行数据)、n路并串转换电路和合成电路。m与n可以相同或者不同。
举例来说,如需产生数据宽度为8的并行数据,则可在电路中设计8个存储器,分别为sram7~sram0。在每个存储器中经过编码存储的数据依次为:d0[7]~d7[7]、d0[6]~d7[6]、d0[5]~d7[5]、d0[4]~d7[4]、d0[3]~d7[3]、d0[2]~d7[2]、d0[1]~d7[1]、d0[0]~d7[0]。对应的,在所述电路中可以设计8个并串转换器与8个存储电路对应连接。且所述8个并串转换器为8转1的并串转换器。并串转换器7输出串行数据为d0[7],d1[7],……d6[7],d7[7];并串转换器6输出串行数据为d0[6],d1[6],……d6[6],d7[6];并串转换器5输出串行数据为d0[5],d1[5],……d6[5],d7[5];并串转换器4输出串行数据为d0[4],d1[4],……d6[4],d7[4];并串转换器3输出串行数据为d0[3],d1[3],……d6[3],d7[3];并串转换器2输出串行数据为d0[2],d1[2],……d6[2],d7[2];并串转换器1输出串行数据为d0[1],d1[1],……d6[1],d7[1];并串转换器0输出串行数据为d0[0],d1[0],……d6[0],d7[0]。最终经过8个并串转换器可得到8路串行数据,合成电路将这8路串行数据合并可产生8个数据宽度为8的并行数据,例如:d0[7:0]、d1[7:0]、d2[7:0]、d3[7:0]、d4[7:0]、d5[7:0]、d6[7:0]、d7[7:0]。
上述只是举例说明一种较为对称的设计并行数据的产生电路的方式,即需要的并行数据的数据宽度为n,那么设置电路的具体结构为,n个存储电路(每个存储电路产生n位并行数据)、n路并串转换电路和合成电路。但是在实际操作中,可以不限于上述方式,可灵活的设置,例如需要产生数据宽度为8的并行数据,可以设置8个存储器,但是每个存储器可以产生3位并行数据,对应的可以设置8个并串转换电路,每个并串转换电路将对应的3位并行数据转换为一路并行数据,最终合成电路将8路串行数据合成为8位并行数据。
可选的,在并行数据的产生电路中对电路的时序收敛性即数据传输过程的同步性具有较高的要求,以下说明几种控制电路时序收敛性的可能的实现方式。
第一种可能的实现方式为,所述电路中还包括第一控制电路,所述第一控制电路与所述n个并串转换电路均连接;所述第一控制电路用于控制所述n个并串转换电路中任意两个并串转换电路在接收到与各自对应的存储电路产生的m位并行数据时的第一时间差不超过第一预设值。
第二种可能的实现方式为,所述电路中还包括第二控制电路,所述第二控制电路与所述合成电路连接,所述第二控制电路用于控制所述n路串行数据中任意两路串行数据到达所述合成电路的第二时间差不超过第二预设值。
对应第一种或者第二种实现方式,在实际操作过程中,第一控制电路或者第二控制电路可以是同步时钟电路,以防止某一路数据传输超前或者滞后。具体的,第一控制电路或者第二控制电路可以是一个同步时钟也可以是多个同步时钟。若为多个同步时钟,则每个存储电路与对应的并串转换电路之间都设置一个同步时钟,每个并串转换电路与合成电路之间每个数据传输过程都设置一个同步时钟。在工程应用中可以在印刷电路板(printedcircuitboard,pcb)布线时,控制各路同步时钟走线严格等长以及采用差分时钟来限制各路时钟的相位差,从而保证数据传输的同步性。
第三种可能的实现方式为,所述电路还包括:n个延时电路,所述n个延时电路中第i个延时电路的一端与所述第i个并串转换电路一一对应连接,所述第i个延时电路的另一端与所述合成电路连接;所述第i个延时电路用于控制所述第i个并串转换电路产生的第i路串行数据到达所述合成电路时间,使得所述n路串行数据到达所述合成电路的时间相同。
n个延时电路的实现方法可以根据需要的延时分辨率的不同而采取不同的方式,例如第一种可以是可编程延时线,可编程延时线的延时调整分辨率大于等于10ps,另一种可以是电压控制延时电路。电压控制延时电路的延时分辨率约为1ps。无论哪种方式都可以保证n路串行信号到达合成电路的过程中的传输延时相同。本领域技术人员可以根据实际情况采取不同的延时电路的实现方法,若电路中对信号的同步性要求非常高,而且已经设计好布线延时,可以采用电压控制延时线路来实现皮秒级延时以更好地保证n路串行信号的同步性。
可选的,前述的三种方式可以结合使用,例如第一种和第三种结合,第二种和第三种结合等,本发明不作具体的限定。
通过以上的描述可知,在本发明实施例提供的技术方案中,提供一种新的并行数据的产生电路,该电路包括:n个存储电路、n个并串转换电路和合成电路,n个并串转换电路中的第i个并串转换电路与第i个存储电路一一对应连接,合成电路与n个并串转换电路均连接。n为大于等于1的整数;i为从1到n的整数;其中,每个存储电路产生m位并行数据;m位并行数据中的每位数据均具有通道标识,通道标识用于表示每位数据从所述每个存储电路输出时对应的输出通道。在实际操作过程中,用户可以设置存储电路的个数例如n。第i个并串转换电路接收第i个存储电路产生的m位并行数据,并将m位并行数据转换为第i路串行数据;最终,n个并串转换电路共产生n路串行数据。合成电路根据n路串行数据中每个数据的通道标识,合成数据宽度为n的并行数据。可见,本发明提供的并行数据的产生电路可以保证用户能够根据实际需求而设置并行数据的数据宽度。
基于同样的发明构思下,本发明第二方面提供了一种电子设备,请参考图5所示,为本发明实施例提供的一种电子设备的结构图。所述电子设备可以是专门用来生成并行数据的通信设备,或者只是在工作过程中需要产生并行数据的通信设备。该电子设备包括:
电路板1和设置在电路板1上的本发明第一方面提供的并行数据的产生电路。
由于本发明第二方面提供的电子设备是在与本发明第一方面提供的并行数据的产生电路的相同构思下提出的,因此前述图1-4实施例中的并行数据产生电路的各种变化方式和具体实施例同样适用于本实施例的电子设备,通过前述对并行数据产生电路的详细描述,本领域技术人员可以清楚的指导本实施例中电子设备的实施过程,所以为了说明书的简洁,在此不再详述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。