1.一种位矢量变换累加移位的一维DCT/IDCT变换器,其特征在于,包括计数及状态控制器(10)、位矢量生成器(11)、位矢量变换器(12)和变换结果组装器(13);所述计数及状态控制器(10)分别与位矢量生成器(11)、位矢量变换器(12)和变换结果组装器(13)相连接;
所述位矢量生成器(11)和位矢量变换器(12)相连接,所述位矢量变换器(12)和变换结果组装器(13)相连接;
所述计数及状态控制器(10)产生模10的计数信号、数值位矢量状态信号、累加状态信号和变换完成状态信号,其中:模10的计数信号对时钟周期计数并传送给位矢量生成器(11);数值位矢量状态信号在模10的计数信号为0 7期间有效并传送给位矢量生成器(11)~和位矢量变换器(12);累加状态信号在模10的计数信号为1 9期间有效并传送给变换结果~
组装器(13);变换完成状态信号在模10的计数信号为9有效并传送给变换结果组装器(13);
位矢量生成器(11)将9位二进制补码表示的N×N图像块运动补偿残差行数据/列数据矢量按N维数据位矢量多路同步输出到位矢量变换器(12),在数值位矢量状态信号有效期间,位矢量生成器(11)向位矢量变换器(12)发送补偿残差行数据/列数据矢量的第0 7位矢量,即~数值位矢量;在数值位矢量状态信号无效期间,位矢量生成器(11)向位矢量变换器(12)发送补偿残差行数据/列数据矢量的第8位矢量,即符号位矢量;所述位矢量变换器(12)实现位矢量生成器(11)输入的数值位矢量或符号位矢量与DCT核心变换矩阵或IDCT核心变换矩阵的矩阵‑位矢量相乘,即实现无乘法的位矢量变换,位矢量变换器(12)将位矢量变换结果矢量传送给变换结果组装器(13),变换结果组装器(13)将位矢量变换结果累加移位后,组装成数据矢量变换结果;
所述位矢量变换器(12)包括数值位矢量变换器(1202)和符号位矢量变换器(1203),数值位矢量变换器(1202)和符号位矢量变换器(1203)均使用二选一选择算法或位与算法实现无乘法的矩阵‑位矢量相乘;
所述数值位矢量变换器(1202)和符号位矢量变换器(1203)使用二选一选择算法进行位矢量变换的步骤为:
第一步:进行二选一选择,即当输入位矢量分量为0时,中间矩阵同号行矢量为0矢量,即该行各元素都为9位二进制数0 0000 0000B;当输入位矢量分量为1时,中间矩阵同号行矢量为变换矩阵的同号行矢量;
第二步:将中间矩阵的各行元素相加,得到位矢量变换结果矢量;
或者所述数值位矢量变换器(1202)和符号位矢量变换器(1203)使用位与算法进行位矢量变换的步骤为:
第一步:进行输入位矢量扩展,即当输入位矢量分量为1时,扩展为:1 1111 1111B,当输入位矢量分量为0时,扩展为:0 0000 0000B,得到同维的输入扩展矢量;
第二步:输入扩展矢量和变换矩阵的各行矢量进行位与,得到中间矩阵;
第三步:将中间矩阵的各行元素相加,得到位矢量变换结果矢量。
2.根据权利要求1所述的位矢量变换累加移位的一维DCT/IDCT变换器,其特征在于,所述位矢量变换器(12)还包括分配器(1201)、选择器(1204)和矢量求和器(1205);所述分配器(1201)分别与数值位矢量变换器(1202)和符号位矢量变换器(1203)相连接,数值位矢量变换器(1202)和符号位矢量变换器(1203)均与选择器(1204)相连接,选择器(1204)和矢量求和器(1205)相连接。
3.根据权利要求2所述的位矢量变换累加移位的一维DCT/IDCT变换器,其特征在于,在计数及状态控制器(10)产生的数值位矢量状态信号有效期间,分配器(1201)将从位矢量生成器(11)输入的数值位矢量传送到数值位矢量变换器(1202),选择器(1204)将数值位矢量变换器(1202)输出的中间矩阵送入矢量求和器(1205);在数值位矢量状态信号无效期间,分配器(1201)将位矢量生成器(11)输入的符号位矢量传送到符号位矢量变换器(1203),选择器(1204)将符号位矢量变换器(1203)输出的中间矩阵送入矢量求和器(1205);所述矢量求和器(1205)将中间矩阵的各行矢量元素相加,得到位矢量变换结果矢量。
4.根据权利要求3所述的位矢量变换累加移位的一维DCT/IDCT变换器,其特征在于,所述数值位矢量变换器(1202)的变换矩阵采用DCT/IDCT核心变换矩阵,变换矩阵的元素表示为二进制补码表示的9位整数,数值位矢量变换器(1202)的输入为数值位矢量、输出为与变换矩阵同大小的中间矩阵;所述符号位矢量变换器(1203)的变换矩阵采用HEVC核心变换矩阵的负矩阵,即‑1和DCT/IDCT核心变换矩阵的乘积,负矩阵的元素表示为二进制补码表示的9位整数,符号位矢量变换器(1203)的输入为符号位矢量、输出为与变换矩阵同大小的中间矩阵。
5.根据权利要求1‑4中任意一项所述的位矢量变换累加移位的一维DCT/IDCT变换器,其特征在于,所述变换结果组装器(13)包括矢量累加移位器(1301)、移出位矢量寄存器(1302)和数值组装矢量存储器(1303);矢量累加移位器(1301)分别与移出位矢量寄存器(1302)和数值组装矢量存储器(1303)相连接,移出位矢量寄存器(1302)和数值组装矢量存储器(1303)相连接。
6.根据权利要求5所述的位矢量变换累加移位的一维DCT/IDCT变换器,其特征在于,在计数及状态控制器(10)产生的累加状态信号有效期间,矢量累加移位器(1301)对位矢量变换器(12)输出的位矢量变换结果矢量进行矢量累加和移位操作,每次将矢量累加结果右移
1位并符号扩展,移出位进入移出位矢量寄存器(1302)的相应位;在累加状态信号无效期间,矢量累加移位器(1301)清0,移出位矢量寄存器(1302)清0;在计数及状态控制器(10)产生的变换完成状态信号有效期间,数值组装矢量存储器(1303)将矢量累加移位器(1301)内的数值矢量和移出位矢量寄存器(1302)内的数值矢量拼接为一个数值矢量变换结果矢量,其中,矢量累加移位器(1301)内的数值作高字,移出位矢量寄存器(1302)内的数值作低字,然后数值组装矢量存储器(1303)存储数值矢量变换结果矢量。