一种矢量排列电路及矢量处理器的制造方法_3

文档序号:9505972阅读:来源:国知局
[0073] 可选的,本发明实施例中,所述控制单元,具体用于根据预设的控制逻辑,生成与 所述每个X选1选择器分别对应的第一控制信号以及与所述每个η选1选择器分别对应的 第二控制信号,并将所述第一控制信号输出至对应的X选1选择器以及将所述第二控制信 号输出至对应的η选1选择器;
[0074] 所述每个X选1选择器,具体用于根据输入至该X选1选择器的所述第一控制信 号,从输入该X选1选择器的所述第一矢量数据组中选择一个元素,并将所述元素输出至与 该X选1选择器连接的η选1选择器;
[0075] 所述每个η选1选择器,具体用于根据输入至该η选1选择器的所述第二控制信 号,从输入该η选1选择器的η个元素中选择一个元素输出。
[0076] 可选的,本发明实施例提供的矢量排列电路可以实现多种排列模式。为了更加清 楚、完整地说明本发明实施例提供的矢量排列电路能够实现多种排列模式,下面分别以三 种常用的排列模式为例对本发明实施例提供的矢量排列电路进行详细地说明。
[0077] 如图5所示,为三种常用的排列模式的示意图。图5中的(a)是通用排列模式的 示意图,在图5中的(a)中,输入一个矢量数据%(%的位宽为64,即V s包括64个并行排列 的元素),经过矢量排列电路Bl后输出一个矢量数据Vy %的位宽为64,即V γ包括64个元 素,且Vy中元素的排列顺序可能与V 5中元素的排列顺序不同),且输出的矢量数据Vy中的 每个元素都来自于输入的矢量数据%中的任意位置的元素;图5中的(b)是支持自适应滤 波器查表的排列模式的示意图,在图5中的(b)中,输入一个矢量数据V s(%的位宽为64, 即Vs包括64个并行排列的元素),经过矢量排列电路B2后输出两个矢量数据V ,和V z (^和 Vz的位宽均为64,即V ,和V z均包括64个元素,且V ,和V z中元素的排列顺序可能与V 5中 元素的排列顺序不同),且输出的两个矢量数据VdP Vz中对应位置的元素为输入矢量数据 Vs中相邻的两个元素;图5中的(c)是支持有限长单位冲激响应(英文:finite impulse response,缩写:FIR)滤波器矢量延时排列模式的示意图,在图5中的(c)中,输入两个矢 量数据%和V R队和V R的位宽均为64,即V 5和V R均包括64个并行排列的元素),经过矢量 排列电路B3后输出两个矢量数据片段VjP V z (V#P V z的位宽均为64,即V ^ V z均包括64 个元素,且VjP V z中元素的排列顺序可能与V 5和V冲元素的排列顺序不同),且输出的两 个矢量片段V#P V z为输入的两个矢量数据V 5和V R拼接后的两个独立并连续的矢量片段。
[0078] 对于上述如图5所示的三种常用的排列模式,由于这三种排列模式的排列需求均 不相同,因此在这三种模式中,交换单元、交换单元与选择单元的连接方式,以及控制单元 针对选择单元中的每个X选1选择器的第一控制信号和针对交换单元中的每个η选1选择 器的第二控制信号均不相同。下面分别以一组输出(图5中的(a) -组输出包括一个输出 元素,这一个输出元素为一路输出,例如Y。为一路输出;图5中的(b) -组输出包括两个输 出元素,这两个输出元素为一路输出,例如Y。和Z。为一路输出;图5中的(c) 一组输出包括 两个输出元素,这两个输出元素为两路输出,例如1和Y i为两路输出)为例,对这三种排列 模式中,交换单元、交换单元与选择单元的连接方式,以及控制单元针对选择单元中的每个 X选1选择器的第一控制信号和针对交换单元中的每个η选1选择器的第二控制信号进行 详细地说明。
[0079] 进一步地,由于图5中的(b)和图5中的(c)所示的排列模式,每一组输出均包括 两个输出元素,因此在图5中的(b)和图5中的(c)所示的排列模式中,交换单元、交换单 元与选择单元的连接方式,以及控制单元针对选择单元中的每个X选1选择器的第一控制 信号和针对交换单元中的每个η选1选择器的第二控制信号均类似。
[0080] (1)针对图5中的(a)所示的排列模式
[0081] 在图5中的(a)所不的排列模式中,每一组输出(包括一个输出元素)对应2个 X选1选择器和1个η选1选择器。如图6所示,为控制单元13对2个X选1选择器110 和1个η选1选择器120的控制示意图。图6中仅以控制单元13控制2个X选1选择器 110和1个η选1选择器120为例,对交换单元、交换单元与选择单元的连接方式,以及控制 单元针对选择单元中的每个X选1选择器的第一控制信号和针对交换单元中的每个η选1 选择器的第二控制信号进行示例性的说明。
[0082] 示例性的,假设待排列的矢量数据为{S63, S62,……,S1, S。},且将该矢量数据分为 奇数矢量数据组和偶数矢量数据组两个矢量数据组,则奇数矢量数据组为{S63, s61,……, s3, SJ,偶数矢量数据组为{S62, S6。,……,S2, S。},上述如图6所示的X选1选择器为32选 1选择器,η选1选择器为2选1选择器。分别将这两个矢量数据组输入2个32选1选择 器,使得这2个32选1选择器中的每个32选1选择器分别在控制单元生成的第一控制信 号的控制作用下,从输入该32选1选择器的矢量数据组中选择一个元素输出到与该32选1 选择器连接的2选1选择器,再由2选1选择器在控制单元生成的第二控制信号的控制作 用下,从输入该2选1选择器的两个元素中选择一个元素输出。
[0083] 举例来说,在图6中,假设控制单元的控制逻辑为第P1个输入元素 Spi从第i路输 出,第i路输出表示为Y1 (输出Spi);因为P1既可以是奇数,也可以是偶数,所以Y i可能来 自奇数序号的元素或者偶数序号的元素。例如,当Pi= 30时,如图6所示的2个32选1选 择器中,输入奇数矢量数据组的32选1选择器需从该奇数矢量数据组中选择S31输出,输入 偶数矢量数据组的32选1选择器需从该偶数矢量数据组中选择S 3。输出,这2个32选1选 择器分别将S3。和S 31输出到与各自连接的2选1选择器,由该2选1选择器从S 3。和S 31中 选择一个输出。当P1= 31时,如图6所示的2个32选1选择器中,输入奇数矢量数据组的 32选1选择器需从该奇数矢量数据组中选择S31输出,输入偶数矢量数据组的32选1选择 器需从该偶数矢量数据组中选择S 3。输出,这2个32选1选择器分别将S 3。和S 31输出到与 各自连接的2选1选择器,由该2选1选择器从S3。和S 31中选择一个输出。可见,在这种排 列模式中,无论?1是奇数还是偶数,控制单元的控制逻辑均相同。
[0084] 基于如图6所示的本实施例中控制单元的控制逻辑,为了保证本实施例满足上述 图5中的(a)的排列模式,上述控制单元13针对选择单元11中的每个32选1选择器的第 一控制信号和控制单元13针对交换单元12中的每个2选1选择器的第二控制信号具体可 以设置为:
[0085] 控制单元针对这2个32选1选择器的第一控制信号cl均为floor (P1A), floor (Pl/2)表示Pl/2向下取整函数;控制单元针对2选1选择器的第二控制信号c2为取 Pi的最低一个比特。
[0086] 其中,由于本实施例中?1的取值有64个,因此可以采用6个比特来表示p i,所以 floor (Pl/2)具体可以通过取P1的高5个比特实现。例如,p $ 011110(即p为30,S P1为 SJ,则floor (Pl/2)可以通过取P1的高5个比特01111实现,即floor (Pl/2)为15,也就是 cl为15 ;相应的,c2可以通过取?1的最低一个比特0实现(假设当c2为0时,2选1选择 器选择偶数序号的元素输出;当c2为1时,2选1选择器选择奇数序号的元素输出)。本 实施例中,由于cl为15,因此2个32选1选择器中的每个32选1选择器分别从输入该32 选1选择器的第一矢量数据组中选择第15个元素输出到2选1选择器,例如输入偶数矢量 数据组的32选1选择器选择序号为30的元素 S3。输出到2选1选择器,输入奇数矢量数据 组的32选1选择器选择序号为31的元素 S31输出到2选1选择器;且由于c2为0,因此2 选1选择器从S3。和S 31中选择偶数序号的元素 S 3。输出,即第i路输出Y 1来自偶数矢量数 据组中的第15个元素 S3。。
[0087] (2)针对图5中的(b)和图5中的(c)所示的排列模式
[0088] 在图5中的(b)和图5中的(c)所示的排列模式中,每一组输出(包括两个输出 元素)对应2个X选1选择器和2个η选1选择器(其中,2个η选1选择器形成1个2xn 的交换矩阵。如图7所示,为控制单元13对2个X选1选择器110和1个2xn的交换矩阵 (包括2个η选1选择器120)的控制示意图。图7中仅以控制单元13控制2个X选1选 择器110和2个η选1选择器120为例,对交换单元、交换单元与选择单元的连接方式,以 及控制单元针对选择单元中的每个X选1选择器的第一控制信号和针对交换单元中的每个 η选1选择器的第二控制信号进行示例性的说明。
[0089] 示例性的,假设待排列的矢量数据为{S63, S62,……,S1, S。},且将该矢量数据分为 奇数矢量数据组和偶数矢量数据组两个矢量数据组,则奇数矢量数据组为{S63, s61,……, s3, SJ,偶数矢量数据组为{S62, S6。,……,S2, S。},上述如图7所示的X选1选择器为32选 1选择器,η选1选择器为2选1选择器,图7中的2个2选1选择器形成1个2x2的交换 矩阵。分别将这两个矢量数据组输入2个32选1选择器,使得这2个32选1选择器中的 每个32选1选择器分别在控制单元生成的第一控制信号的控制作用下,从输入该32选1 选择器的矢量数据组中选择一个元素输出到与该32选1选择器连接的2个2选1选择器, 再由这2个2选1选择器中的每个2选1选择器分别在控制单元生成的第二控制信号的控 制作用下,从输入该2选1选择器的两个元素中选择一个元素输出。
[0090] 举例来说,在图7中,假设控制单元的控制逻辑为第P1个输入元素 Spi从第i路输 出,第i路输出表示为Y1 (输出Spi);第p1+1个输入元素 S P1+1从第i+Ι路输出,第i+Ι路输 出表示为Y1+1 (输出SP1+1)。因为Spi和SP1+1为两个相邻的输入元素,所以pjPp 1+1肯定一 个是奇数,一个是偶数,这样可以得知1和Y 1+1中的奇数序号的元素来自S P1和S P1+1中的奇 数序号的元素 ,YJPY 1+1中的偶数序号的元素来自Spi和S P1+1中的偶数序号的元素。例如, 当P1= 30时,如图7所示的2个32选1选择器中,输入奇数矢量数据组的32选1选择器 需从该奇数矢量数据组中选择S31输出,输入偶数矢量数据组的32选1选择器需从该偶数 矢量数据组中选择S3。输出,这2个32选1选择器分别将S 3。和S 31输出到与各自连接的2 个2选1选择器,由这2个2选1选择器分别从S3。和S 31中选择一个输出,这种情况下,由 于最终输出的是{S31,S3J,所以也可以理解为这2个2选1选择器对S 3。和S 31直接透传输 出。当P1= 31时,如图7所示的2个32选1选择器中,输入奇数矢量数据组的32选1选 择器需从该奇数矢量数据组中选择S31输出,输入偶数矢量数据组的32选1选择器需从该 偶数矢量数据组中选择S 32输出,这2个32选1选择器分别将S 31和S 32输出到与各自连接 的2个2选1选择器,由这2个2选1选择器分别从S31和S 32中选择一个元素输出,这种 情况下,为了避免这2个2选1选择器最终输出{S31,S 3J,所以需要这2个2选1选择器从 S31和S 32中选择一个元素输出时改变这两个元素的输出位置,即保证这2个2选1选择器 最终输出{S32, S3J,这种情况也可以理解为这2个2选1选择器对S31和S32做了交换后再 输出。
[0091] 需要说明的是,本实施例中,在控制单元对选择单元的控制逻辑下,可能会存在 选择单元的某一组输出中,相邻两个元素之间的输出顺序相反的情况,例如需要输出{S 32, S31},但是通过上述选择单元的选择后得到的是{S31,S32},那么就需要再将{S 31,S32}分别输 入到2个2选1选择器中,使得这2个2选1选择器分别从S31和S 32这两个元素中选择一 个元素输出,最终输出{S32, S3J。具体的,如图7所示,从左到右,第一个2选1选择器120 选择S32输出,第二个2选1选择器120选择S 31输出,从而这2个2选1选择器120可以实 现对{S31,S3J中的两
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1