您现在的位置: 范文先生网 >> 理工论文 >> 电子通信论文 >> 正文

非定长码高速实时拼接专用集成电路的研制

时间:2007-1-20栏目:电子通信论文

摘要:给出一种流水线与阵列处理相结合的VLSI系统结构,以实现非定长码的高速定时拼接与存储。该结构不但并行处理能力强,能够在每个时钟周期内拼接一个非定长码,并且复杂度低,仅需10000门单元电路即可实现。利用ACTEL公司的现场可编程门阵列实现该功能,验证结构表明,所研制的专用芯片工作频率大于70MHz、功耗低于130mW、性能稳定可靠,具有良好的工程应用前景。

    关键词:非定长码 并行处理 实时 大规模集成电路 系统结构 现场可编程门阵列

在数字图像、视频、语音等数据压缩应用中,经常使用熵编码,例如Huffman编码、RICE编码、算术编码等。而这些二进制的编码数据在表示中仅有若干位(即码字长度)有效数字(码字),这就要求去除冗余字位,把码字按其长度依次连接,形成紧凑的定长字,经缓存后按恒定码速率输出。
(范文先生网www.fwsir.com收集整理)
1 码字拼接功能描述

图1为数字图像压缩流程示意图。数据经压缩与熵编码后,码字长度不定,最短的码字只有1位,最长的码字需用16位表示,这些码字包含在位宽为16的输出数据中,如图2所示。

M[15:0]为熵编码输出数据,M[15:n]中存放码字,其中n等于15、14、13....2、1、0。由于每个输出数据中仅有码字长度个有效字位,这就要求去除熵编码输出数据中的冗余字位M[n-1:0],把这些有效的不定长的码字M[15:n]拼接凑整,形成定长字。如两个码字A和B长度分别为10和6,用熵编码输出数据M1[15:6]和M2[15:10]表示,这两个码字的拼接结果为Q[15:0],则Q[15:6]存储M1[15:6],Q[5:0]存储M2[15:10],即两个码字A、B拼接凑整为一个定长字Q[15:0],如图3所示。

码字拼接器就是为完成这一功能而设计的,它去除了原数据中的冗余信息,从而减少数据量,节省存储空间、降低对传输信道的带宽要求。在实际应用中,压缩与熵编码功能单元(如图1所示)在每个时钟周期输出一个熵编码数据,为保证实时性,要求码字拼接器能于每个时钟周期内完成一次拼接操作,并且每凑足16位,输出定长字。以上功能的VerilogHDL行为描述如下(该描述不可综合):

module Connector (clock,code,codelength,dataout);//码字拼接器模块

input clock; //时钟

input [15:0] code; //码字

input [4:0] codelength; //码长

output [15:0] dataout; //定长字

reg [4:0] counter;

reg [31:0] tempdata;

initial //初始化

begin

counter = 0;

end

always @(posedge clock) //clock 上升沿

begin

tempdata[31-counter]:(31-counter-15)]

=code[15:0];//缓存码字

counter=counter+codelength;//累计码长

if(counter>=16)//如果累计码长大于等于16

begin

dataout[15:0]=tempdata[31:16];

//输出一个定长字

[1] [2] [3] 下一页

下页更精彩:1 2 3 4 下一页