CN1129324C - 高速数据语法分析装置 - Google Patents
高速数据语法分析装置 Download PDFInfo
- Publication number
- CN1129324C CN1129324C CN97101289A CN97101289A CN1129324C CN 1129324 C CN1129324 C CN 1129324C CN 97101289 A CN97101289 A CN 97101289A CN 97101289 A CN97101289 A CN 97101289A CN 1129324 C CN1129324 C CN 1129324C
- Authority
- CN
- China
- Prior art keywords
- data
- control command
- output
- variable length
- bit stream
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
一种语法分析装置,通过有效位长度使编了码的位流数据解码的视频译码器,包括:输入端,接收编码位流数据;控制指令输出部,存储多个控制指令数据;可变长编码表部,利用控制指令数据选择输出位流数据及可变长码长度;数据存储部,存储由可变长编码表部输出选择的数据;计数器部,接收控制指令数据及数据存储部的输出数据,执行预定位的计数操作;条件信号发生部,产生表示经输入端接收的位流数据是否为附加信息的条件信号;有效长输出部,根据控制指令数据及条件信号,确定并输出通过输入端下一个接收的位流数据的有效长度。本发明的高速数据语法分析控制电路用于需要高速工作频率的视频译码器的语法分析,在HDTV等的视频译码器中可使用。
Description
技术领域
本发明涉及用于在视频译码器上编了码的数据的语法分析装置;尤其是有关这样的高速数据语法分析装置:分析通过在MPEG2提出了的HDTV标准编码的位流语法,可确定用于译码的有效位长度。
背景技术
视频译码器为了利用在编了码的数据标准中明确了的语法对输入位流作解码而使用语法分析装置。语法分析装置根据用编了码的数据标准明确了的位流语法,确定输入的位流数据的有效位长度。因此,译码器要使输入位流数据能够解码。
目前,举出作为HDTV视频译码器的MPEG2,符合MPEG2标准的视频译码器处于开发中。MPEG2标准是具有高级别的主要标准,该标准是由五个标准概况和四个级别定义的总的20个标准之一。
通常,作为用于语法分析电路设计的方式分为FSM方式和微型控制器方式。FSM(Finite State Machine)方式因通过连接的逻辑执行其功能,所以经最佳设计提高语法分析速度。然而,在调整中有困难,不能变更功能、追加新功能。微型控制器方式增加软件概念,在这种情况下,语法分析电路由存储控制码的ROM和对其控制的微型控制器构成。微型控制器仅内设在语法分析中必要的最小限度功能,在1个信息块中依次一个个地从ROM读出一连串语法分析顺序。语法分析顺序由收录命令和程序的微型码构成。其方式比FSM方式更容易实现,并容易调整,也易于补充附加功能。
图1表示能采取所述的FSM方式或微型处理器方式的一般语法分析电路。图1的电路就有关根据在MPEG2中提示了HDTV标准的编码的位流作语法分析控制。语法分析器11以每个时钟N位的速率接收位流,根据外部的同步信号保持语法分析器11的语法分析动作。语法分析器11在N位单位中对输入的位流作语法分析,确定适合于当前语法的输入位流有效位长度。例如,在输入的位流数据N位内,一旦适合于当前语法若分析最上位M位,则语法分析器11输出表示最上位M为有效位的信号。寄存器12存储由当前分析结果获得的参数中影响到下一个语法分析的参数,语法分析器11在语法分析中使用存储在寄存器12中的参数。比较器13根据由该标准定义了的语法使由语法分析器11及寄存器12施加的参数与已经设定了的比较值相比较,将其比较结果供给语法分析器11和存储器12。
然而,由于前述已有的语法分析控制电路其工作要适合于在MPEG2中提出了的HDTV标准,所以要求工作频率高。
发明内容
本发明为了解决上述问题而提出,其目的为提供这样的一种高速数据语法分析装置,就以适合于HDTV标准的高速编码的位流,可作语法分析。
为了实现前述目的,本发明提供一种语法分析装置,用于通过有效位长度使编了码的位流数据解码的视频译码器,包括以下部分:输入端,接收编了码的位流数据;控制指令输出部,用于存储用于进行位流语法分析的多个控制指令的数据,依次选择并输出各个存储了的多个控制指令数据;可变长编码表部,利用来自所述控制指令输出部的控制指令数据,选择输出经所述输入端接收的位流数据以及根据接收了的位流数据的可变长码之一,输出根据接收的位流数据的可变长码长度;数据存储部,存储响应所述控制指令数据以及由条件信号发生部产生的条件信号,而由所述可变长编码表部输出选择了的数据;计数器部,用于接收所述控制指令输出部的控制指令数据以及所述所述数据存储部的输出数据,利用接收的数据和预定的数据执行预定位的计数操作;条件信号发生部,使用在所述数据存储部存储了的所选择了的数据、经所述输入端接收的所述位流数据、以及所述计数器的输出数据,产生表示经所述输入端接收了的位流数据是否为附加信息的条件信号;有效长输出部,接收存储在所述数据存储部的所述选择了的数据以及来自所述可变长编码表部的所述可变长编码长度,根据所述确定了的控制指令数据及所述条件信号,确定并输出通过所述输入端下一个接收的位流数据的有效位长度。
附图说明
图1是表示传统的数据语法分析电路结构图;
图2是表示本发明最佳实施例的高速数据语法分析电路结构图;
图3A至3F表示本发明的详细结构图。
具体实施方式
以下,根据附图详述本发明最佳实施例。
图2是表示本发明一实施例的高速语法分析电路的结构图。图2的电路对编了码的位流做语法分析。控制指令发生部20存储用于MPEG2标准明确了的位流语法分析的控制指令,输出适合于当前接收了的位流语法的控制命令。控制指令供给条件信号发生部30、可变长编码表部40、分析数据存储部50、计数器部60以及有效长输出部70。条件信号发生部30使用从存储根据MPEG2标准编码的视频位流的筒形移位流(未图示)供给的N(=32)位数据、从控制指令发生部20施加的控制指令、分析数据存储部50及计数器部60的输出数据产生条件信号。该条件信号用于选择控制指令发生部20输出的控制指令。接收来自筒形移位器的N位数据的可变长编码表部40根据有效长输出部70的输出数据,从N位数据中确定可变长码及可变长码长度(VLC长度),根据控制指令发生部20的控制指令,选择并输出接收的N位数据和可变长码之一。分析数据存储部50接收可变长编码表部40的输出数据,根据控制指令发生部20的控制指令存储及输出在接收的数据内对于下一个语法分析所必要的数据。计数器部60接收控制指令及分析数据存储部50的输出数据,利用接收的数据及已经设定了的数据,以一定的位逐次进行计数工作。有效长输出部70接收控制指令、条件信号及分析数据存储部50的输出数据,确定有效位长,向筒形移位器(未图示)输出。
图3A表示控制指令发生部20的具体构成。在图3A,ROM表21存储用于在所述的标准中确定了的位流语法分析的控制指令。从ROM表21输出的控制指令数据总共有44位大小,由表现为A至D的四个控制指令构成。用A(1,0)表示的控制指令是在44位的控制指令数据中最上位2位,是指定使ROM表21的地址大致增加1或者转移的增加/转移指定指令。与最上位2位控制指令A(1,0)相继的8位控制指令B(7~0)里表示转移地址,是有最大256(28)个程序行数据。其后,10位的控制指令C(9~0)是为了移位判定,剩下24位的控制指令D(23~0)是用于选择、比较以及存储功能控制。
锁存器24根据由外部施加的使能信号PC_ENABLE启动。使能信号PC_ENABL为“1”时,锁存器24进行锁存从第1多路转换器232输入的地址的动作,锁住了的地址供给ROM表21以及加法器22。使能信号PC_ENABLE为“0”时,锁存器24不工作。因此,图2的电路能使有效位长输出为“0”。即不作语法分析工作。
通常,通过语法结构频频地作搜查同一阶层的下一个起始码(next startcode)的工作,所以,用于对同一阶层下一个起始码的语法分析的控制指令的输出动作必须通过子程序进行。因此,用于子程序的完成的控制指令存储在ROM表21内其它位置上。其结果,ROM表21更有效地存储用于语法分析的控制指令,可以按少的存储量进行设计。ROM表21输出由通过锁存器24输出的8位地址数据指定的控制指令。加法器22使从锁存器24输出的地址增加约“1”,增加了的地址供给选择器231。
选择器231接收由加法器22增加的地址和由ROM表21施加的控制指令B(7~0),根据控制指令A(1,0)及从条件信号发生部30施加的条件信号,选择增加了的地址和控制指令B(7~0)之一。具体来说,如果ROM表21输出的控制指令A(1,0)为“00”,则选择器231选择由加法器22输入的增加了的地址。若控制指令A(1,0)为“01”,则不管来自条件信号发生部30的条件信号,选择自ROM表21输出的控制命令.B(7~0)。控制指令A(1,0)为“01”情况下,选择器23 1根据由条件信号发生部30施加的条件信号,选择控制指令B(7~0)即转移地址和增加的地址之一。条件信号值若为1,则选择转移地址,为0时选择增加地址。当控制指令A(1,0)为“11”时,若条件信号值为“0”,则选择器231选择转移地址B(7~0);若为“1”时,选择增加的地址。由选择器231选择的地址被输入到多路转换器232。
第1多路转换器232接收子程序处理器25的第2多路转换器252的输出数据和选择器231输出的地址,利用子程序处理器25的或门256的输出,选择输出接收的数据之一。从第1多路转换器232输出的地址由锁存器24锁在1个时钟期间当中,被作为用于下一个动作时钟的控制指令输出的ROM表21的地址使用。
子程序处理器25备有用于存储加法器22的输出数据的寄存器251。寄存器251中存储的数据被作为子程序完成后返回的返回地址使用。第2多路转换器252通过比较器253的输出,选择输出来自外部子程序开始地址和寄存器251输出之一。其中,子程序开始地址有固定的值,被作为找出检索ROM表21的下一开始码的子程序的地址使用。比较器253、254接收由ROM表21输出的控制指令位D(23~18),使控制指令位D(23~18)单个地与已经设定了的检索段值ST1、ST2比较。当控制指令位D(23,22)为“01”时,比较器253进行控制,使寄存器251存储自加法器22输出增加了的地址。控制指令位D(23,22)为“00”,D(21,20)为“01”情况下,第2多路转换器252选择输出自外部的子程序开始地址。这时,利用对比较器253、254的输出进行逻辑和运算的或门256的输出,第1多路转换器232选择第2多路转换器252的输出,向锁存器24输入选择了的数据。其结果,由于ROM表21使由子程序开始地址指定的控制指令输出开始,所以开始了用于程序的语法分析动作。在这种情况下也把加法器22的输出数据作为ROM表21的地址使用。在用子程序的语法分析动作期间,当自ROM表21输出的控制指令位的D(23,22)及D(21,20)分别为“00”及“11”时,在寄存器251中存储的返回地址通过多路转换器252、232供给锁存器24,这时ROM表21输出根据输入的返回地址的控制指令。
图3B表示条件信号发生部30的一部分构成。条件信号发生部30用组合电路进行设计,所以随由筒形移位器输入的32位的位流数据BS(31~0)进行条件信号发生动作。该条件信号发生部30备有把输入的位流数据BS(31~0)作为对象实施比较工作的多个比较器31~37。根据自分析数据存储部50施加的选择信号DCT_TABLE_SEL,第一比较器31选择作为内存的EOB码值的“10”及“0110”之一。第1比较器31用于判断在当前输入的位流数据内是否包括EOB码,使选择的EOB码值与位流数据BS(31~0)最上位4位SB(31~28)相比较。第2比较器32用于判断在32位数据内是否存在表示任意区间的开始的开始码,使位SB(31~28)和已设定的24位字符串“0000 0000 0000 0000 0000 0001”相比较。第3比较器33使输入位BS(31~28)和由ROM表21供给的控制指令位D(18~15)相比较。第4比较器34使输入位的BS(31~24)和控制指令位D(18~10)相比较。其中控制指令位D(18~15)及D(18~10)具有用MPEG2标准的位流语法定义了的值。第5比较器35用于检查部分开始码是否存在于BS(31~24),使输入位BS(31~24)和控制指令位D(18~10)相比较。第6比较器36用于判断当前输入的位流标准,使输入位BS(31)和已经设定的值“1”相比较。第7比较器37使作为输入位的BS(31~21)和固定了的位字符串“0000 0000 1000”相比较,检查在BS(31~21)中是否存在ESC码。第1比较器至第7比较器31~37的比较结果被输入条件校验逻辑单元38。
条件校验逻辑单元38接收分析数据存储部50的输出、计数器部60的本地计数值及比较器31~37的比较结果,若接收的数据满足与控制指令位D(21~11)相关联的下一个条件(1)~(13)之一,则其值产生“1”的条件信号。
(1)若是“000LCHWXXXX”,则由LCHW索引的本地硬件逻辑值为“1”;
(2)若是“0010LCXXXXX”,则由LC索引的第1本地硬件逻辑值(LG1)为“0”;
(3)若是“0011LCXXXXX”,则LC为10的情况下第2本地计数值(LC2)大于2;
(4)若是“0011LCXXXXX”,则LC为11的情况下的第3本地计数值(LC3)最上位位(MBS)为“1”;
(5)若是“011REGIabcd”,则通过由REGI索引的寄存器的abcd索引的输出位全部为“1”;
(6)若是“010REGIXXXX”,则由REGI索引了的寄存器的输出位全部为“0”;
(7)若是“1000XXXXXXX”,则筒形移位器输出的最上位位为“1”;
(8)若是“1001XXXXXXX”,则筒形移位器输出为“EOB”;
(9)若是“1010XXXXXXX”,则筒形称位器的输出最上位24位为“000H”;
(10)若是”10110XXXXXX”,则筒形移位器输出的最上位11位为“00000001000”;
(11)若是“10111XXXXXX”,则筒形移位器输出最上位8位是部分开始码范围;
(12)若是“110abcdXXXX”,则筒形移位器输出的最上位4位为abcd;
(1 3)若是“111abcdefgh”,则筒形移位器输出的最上位8位为abcdefgh。
其中在个别条件前方列表的11位表示控制指令位D(21~11)。在上述条件中使用的内容与图3C至图3F相关,以后再叙述。条件逻辑校验单元38中所产生的条件信号用来表示存储在分析数据存储部50中的数据是编码了的数据还是根据语法的附加信息,并且,该条件信号被提供给控制指令发生部20及有效长输出部70。
图3C表示可变长码表部40的详细构成。可变长码表部40备有分别存储可变长码和相应的可变长码长度的2个ROM 41、42。码ROM 41存储多个可变长码表的可变长码,长度ROM 42存储多个可变长码表的可变长码长度。码ROM 41及长度ROM 42通过由有效长度输出部70施加的表ID在多个可变长码表内选择适合于输入位流数据的可变长码表。若通过筒形移位器输入32位的位流数据,则码ROM 41输出相应的可变长码,长度ROM42输出相应的可变长码长度。长度ROM 42的可变长码长度(VLC码长度)向有效长输出部70输出。
第3多路转换器43接收由筒形移位器输出的位流数据及由码ROM 41输出的可变长码。第3多路转换器43通过控制指令发生部20的控制指令位D(8,7)选择输出的数据,选择了的数据以16位大小输出。控制指令位D(8,7)若是“00”,则第3多路转换器43不给分析数据存储部50提供任何数据。在D(8,7)为“01”情况下,把32位的位流数据BS(31~0)供给分析数据存储部50;若D(8,7)为“11”,则把由码ROM 41输出的可变长码供给分析数据存储部50。
图3D所示的分析数据存储部50备有接收可变长码表部40的输出数据的逻辑变换单元511。逻辑变换单元511是硬件逻辑电路,接收第3多路转换器43的输出数据及由控制指令发生部20发生的控制指令位D(6~4)。逻辑变换单元511利用控制指令位D(6~4)表示的帧移动类型或场移动类型使第3多路转换器43的输出数据变换。把变换了的数据输入给寄存器部512。
控制寄存器部512的存储动作的使能控制器513接收控制指令位D(32,22)及D(3~0),并且接收条件信号。使能控制器513单个地使构成寄存部512的16个寄存器R1~R16使能。因此,使能控制器513用下表1表示与由控制指令发生部20输出的控制指令位D(23,22)相关联的关系:
D(23,22) 内容
00 无动作
01 无条件存储
10 条件存储(条件信号=‘0’时)
11 条件存储(条件信号=‘1’时)
使能控制器513根据表1关系确定是否在寄存器部512中存储逻辑变换单元511的输出,通过控制指令位D(3~0)确定存储由逻辑变换单元511施加的数据的寄存器。构成寄存器部512的寄存器R1~R16存储逻辑变换单元511的输出数据。寄存器R1存储Picture_coding_type;寄存器R2存储Picture_structure、top_fieled_first、frame_pred_frame_dct、concealmemt_motion_Vectors、及repeat_first_field;寄存器R3存储Progressive_Sequence;寄存器R4存储fcode[0][0],fcode[0][1],fcode[1][0],fcode[1][1]等;寄存器R5存储macroblock_type;寄存器R6存储frame_motion_type或field_motion_ype;寄存器7存储Coded_Block_Pattem;寄存器8存储dct_dc_size_luminamce;寄存器9存储dct_dc_size_chrominance。其中,表示存储在寄存器R1~R9中的参数的表格记录与视频位流的语法论及意义论相关联,由于是根据MPEG2标准定义的,所以可照样搬用。存储在寄存器部512的寄存器中的全部参数同时供给第4多路转换器514、本地硬件逻辑器521及有效长输出部70。第4多路转换器514根据控制指令发生部20的控制指令位D(18~15),选择自寄存器512施加的参数之一,选择了的参数向逻辑寄存器零校验531及多路转换器532输入。
本地硬件逻辑器521基于由寄存器部512施加的参数,确定根据当前输入的位流数据的DCT表,产生表示该DCT表的选择信号DCT_TABLE_SEL。该选择信号DCT_TABLE_SEL供给图3B的第1比较器31。本地硬件逻辑器521使用外加的参数判断是否存在返回输入位流数据的回路,当存在反复的回路情况下,向计数部60输出帧补偿值。本地硬件逻辑器521还就有关施加的参数作逻辑运算,产生本地硬件逻辑值。第5多路转换器522接收本地硬件逻辑值,向图3B的条件逻辑校验器38输出根据控制指令发生部20输出的控制指令位D(18~15)选择了的本地硬件逻辑值。
寄存器零位校验器531检查在第4多路转换器514选择了的参数值是否为零,输出表示其结果的1位零检查值。该零位检查值表示通过所述条件(6)的“REGI”索引了的寄存器的输出位全部为“0”。向条件逻辑校验器38提供零位检查值。第6多路转换器532使用通过第4多路转换器514施加的16位参数和自控制指令发生部20输出的控制指令位D(14~11),产生条件判断信号。更具体来说,第6多路转换器532产生表示在16位的参数内由控制指令位D(14~11)决定的位全部为1的条件判断信号。该条件判断信号表示由所述的条件(5)的“REGI”及“abcd”索引的输出位全部为“1”。
图3E所示的计数部60是用于在语法上重复的回路存在情况下,重复的回路是由于具有通过语法结构使位流重复的阶层。计数部60备有2位计数器61、3位计数器62、6位计数器63及逻辑使能器64。逻辑使能器64根据控制指令发生部20的控制指令位D(23~16)产生使能控制信号。尤其逻辑使能器64在控制指令位D(23,22)为“00”,D(21,20)为“10”情况下,通过D(19~15)控制计数器61~63的计数动作。并且,当D(19~15)为“00000”则逻辑使能器64使计数器61~63非使能。把使能控制信号加到第1至第3计数器61~63上。
第1计数器61接收由本地硬件逻辑器521施加的帧补偿值。帧补偿值由Progressive_Sequence、repeat_first_field,top_field_first,Picture_structure等确定。第1计数器61内的第7多路转换器611接收帧补偿值和加法器613的输出数据,通过控制指令发生部20的控制指令位D(23~18)选择二者之一。第7多路转换器611在通过本地硬件逻辑器521施加帧补偿值期间选择其值,若D(23~18)为“0001LCx”,则选择加法器613的输出。把选择的信号加到锁存器612上。锁存器612根据逻辑使能器64的使能控制信号锁存自第7多路转换器611施加的数据。锁存器612中存储的数据作为2位本地计数值LC1供给条件逻辑校验器38及加法器613。加法器613在输入的本地计数值上加“-1”,再反馈输入到第7多路转换器611。
第2计数器62为信息块的处理,是用于6次反复的回路的硬件,备有接收通过加法器623施加的数据的第8多路转换器621。若控制指令位D(23~18)为“0001LCx”,第8多路转换器621则选择加法器623的输出,在其它情况下选择已经设定了的值“6”。把选择的信号加在锁存器622上。锁存器622根据逻辑使能器64的使能控制信号锁存在第8多路转换器621中选择了的信号。锁存器622中存储的3位本地计数值LC2供给加法器623及条件信号发生部30的条件条件逻辑校验器38。加法器623在输入的3位本地计数值上加“-1”,加法器623的输出反馈输入到第8多路转换器621。
第3计数器63是用于使64次重复回路或编了码的信息块模式(CBP)向左侧大致移位1位的部分,备有接收编了码的信息块模式CBP和由1位左移位器633施加的数据的第9多路转换器631。第9多路转换器631通过控制指令位的D(23~18),选择输出接收的数据之一。控制指令位D(23,22)为“00”,D(21,20)为“10”情况下,第9多路转换器631若D(19~15)为“01LC0”,则向第3计数器63提供“编了码的信息块模式值CBP”,若为“01LC1”则向第3计数器63提供“63”。若为“11LCx”则向锁存器632提供1位左移位器633的输出。锁存器632通过使能逻辑器64的使能控制锁住在第9多路转换器631选择了的值。作为锁存器632中锁住了的数据的6位本地计数值分别供给1位左移位器633及条件逻辑校验器38。1位左移位器633把输入的6位本地计数值作1位左侧移位,移位了的数据反馈输入第9多路转换器631。
图3F表示有效长输出部70的具体构成。有效长输出部70备有为接收自图3D的寄存器部512输出的多个数据而连接的表ID确定器71和移位确定器72。表ID确定器71的第10多路转换器711通过控制指令位D(12~9)选择自寄存器部512输出的多个数据之一。其中,施加到表ID确定器71的控制指令位D(14~9)是选择可变长码表ID的部分。由第10多路转换器711选择了的数据输入表712及16对4位变换器713。表712输出根据由第10多路转换器711选择的数据的图像编码型的宏信息块型和EOB码的表ID信号。其中,作为图像编码型有I图像编码型、P图像编码型及B图像编码型。16对4位变换器713把16位输入数据变换成4位,把变换了的数据作为表ID信号输出。第11多路转换器714接收来自表712及16对4位变换器713的表ID信号,并接收来自控制指令发生部20的控制指令位D(12~9),通过控制指令位D(14,13)选择输出接收了的数据之一。该表ID确定器71的动作概要如下所述。即,表ID确定器71若D(14~9)为“00XXX”,则不工作。表ID确定器71若D(14~9)为“01abcd”,则向表ID输出abcd,若为“10hwlg”则通过hwlg选择表ID。若D(14~9)为“llregi”,则由regi选择表ID。由表ID确定器71输出的表ID TABLE_ID输入可变长码表部40。
移位确定器72备有接收寄存器部512的输出的第12多路转换器721。第12多路转换器721选择由控制指令发生部20的控制指令位C(5~2)接收的数据之一,选择的16位数据向16对6位变换器722输入。16对6位变换器722把接收的数据从16位变成6位,向第13多路转换器723输出。第13多路转换器723接收16对6位变换器722输出数据和控制指令位C(5~0),由控制指令位C(8)选择并输出。第13多路转换器723若C(8)为“0”,则选择控制指令位C(5~0),若C(8)为“1”,则选择16对6位变换器722的输出数据。由多路转换器723选择的数据向条件移位逻辑器724输入。
条件移位逻辑器724接收第13多路转换器723的输出数据、来自作为控制指令位的C(7,6)及条件信号发生部30的条件信号。条件位移逻辑器724若C(7,6)为“00”时不工作。C(7,6)为“01”情况下,条件移位逻辑器724把来自第13多路转换器723的输入数据向不论条件信号值的可变长译码逻辑器73输出。C(7,6)为“10”情况下,条件移位逻辑器724若条件信号为“1”,则向可变长译码逻辑器73提供多路转换器723的输出数据,若条件信号为“0”,则不工作。C(7,6)为“11”情况下,条件移位逻辑器724若条件信号为“1”,则不工作,条件信号若为“0”,则向可变长译码逻辑器73提供多路转换器723的输出。
可变长译码逻辑器73接收条件移位逻辑器724的输出数据和来自可变长编码表部30的可变长码长度。可变长译码逻辑73根据来自条件信号发生部的条件信号及控制指令位C(9~6),选择条件移位逻辑器724的输出和可变长码表部40的输出之一。可变长译码逻辑器73若控制指令位C(9,8)为“00”,则不工作,若为“01”,则选择来自长度ROM 42的可变长码长度,若为“10”或“11”,则选择条件移位逻辑器724的输出。可变长译码逻辑器73的输出数据输入至字节调整器74。字节调整器74根据来自外部的使能信号PC_ENABLE及控制指令发生部20的控制指令位D(23~18),使可变长译码逻辑器73的输出数据符合标准,调整成字节单位并输出。字节调整器74输出的数据是移位值,在确定输出的位时使用筒形移位器(未图示)。有关根据这样的MPEG标准的译码的筒形移位器的工作图是普通技术人员公知的,说明从略。
所述的图2语法分析控制电路利用确定适合于MPEG2标准的移位值,使用该移位值的视频译码器要能正确地使输入的位流数据作解码。
所述的实施例虽然就有关由MPEG2标准编了码的视频位流数据作了说明,但为了使作数字编码的数据解码,所必须的语法分析的其它系统中可采用,这种变形对于普通技术人员来说是显而易见的。
如上所述,本发明的高速数据语法分析控制电路,用于需要高速工作频率的视频译码器的语法分析。在HDTV等的视频译码器中可使用。
Claims (12)
1、一种语法分析装置,用于通过有效位长度使编了码的位流数据解码的视频译码器,其特征在于包括以下部分:
输入端,接收编了码的位流数据;
控制指令输出部,用于存储用于进行位流语法分析的多个控制指令的数据,依次选择并输出各个存储了的多个控制指令数据;
可变长编码表部,利用来自所述控制指令输出部的控制指令数据,选择输出经所述输入端接收的位流数据以及根据接收了的位流数据的可变长码之一,输出根据接收的位流数据的可变长码长度;
数据存储部,存储响应所述控制指令数据以及由条件信号发生部产生的条件信号,而由所述可变长编码表部输出选择了的数据;
计数器部,用于接收所述控制指令输出部的控制指令数据以及所述所述数据存储部的输出数据,利用接收的数据和预定的数据执行预定位的计数操作;
条件信号发生部,使用在所述数据存储部存储了的所选择了的数据、经所述输入端接收的所述位流数据、以及所述计数器的输出数据,产生表示经所述输入端接收了的位流数据是否为附加信息的条件信号;
有效长输出部,接收存储在所述数据存储部的所述选择了的数据以及来自所述可变长编码表部的所述可变长编码长度,根据所述确定了的控制指令数据及所述条件信号,确定并输出通过所述输入端下一个接收的位流数据的有效位长度。
2、根据权利要求1的装置,其特征是所述控制指令输出部包括:
锁存器,由工作时钟对输入数据作锁定工作;
ROM表,存储所述一组控制指令数据,输出根据把所述锁存器输出作为地址的控制指令数据;
和加法器,使所述锁存器输出增加“1”,反馈给所述锁存器。
3、如权利要求2的装置,其特征是所述ROM表把用于根据所述语法的子程序处理的一组控制指令数据存储在别的区域上;
所述控制指令输出部包括:选择器,在由所述ROM表中输出的控制指令数据内接收转移地址及所述加法器的输出,根据增加/转移选择信号及来自所述条件信号发生部的条件信号,选择并输出所述转移地址和所述加法器输出中的任一个;子程序处理器,把所述加法器的输出作为返回地址存储,使用来自所述ROM表的控制指令数据产生选择信号,根据来自所述ROM表的控制指令数据,选择并输出已经设定了的子程序开始地址和存储的返回地址内任一个;多路转换器,根据所述选择信号选择由所述子程序处理器选择输出的数据和所述选择器输出中任一个,再向所述锁存器输出。
4、如权利要求3的装置,其特征是所述多路转换器在由所述子程序处理器产生的选择信号表示子程序开始情况下,向所述锁存器提供由所述子程序处理器选择输出了的数据,在发生的选择信号表示子程序结束的情况下把所述返回地址供给所述锁存器。
5、如权利要求1的装置,其特征是所述可变长编码表部包括:编码ROM,存储可变长编码输出由通过所述输入端接收的位流数据确定的可变长码;长度ROM,存储根据所述可变长码的码长度,向所述有效长输出部输出由经过所述输入端接收的所述位流数据确定的码长度;和多路转换器,相应于由所述控制部输入的控制指令,选择经所述输入端接收的位流数据以及相应的可变长码之一,通过所述数据存储部输出选择了的数据。
6、如权利要求5的装置,其特征是所述编码ROM存储与一组可变长码表相关联的可变长码;所述长度ROM存储与所述一组可变长码表相关联的码长度。
7、如权利要求6的装置,其特征是所述有效长度输出部包括表ID信号发生部,产生适合于来自所述数据存储部的数据的表识别信号,为了把发生的表识别信号供给所述编码ROM及所述长度ROM,响应控制指令数据,其中所述表识别信号表示所述一组可变长码表内的规定的一个。
8、如权利要求1的装置,其特征是所述条件信号发生部包括:比较部,使与附加信息关联已设定了的值与通过所述输入端接收了的位流数据单个比较,输出其比较结果;和条件校验逻辑单元,接收所述比较部的比较结果、一个由本地硬件逻辑单元产生的本地硬件逻辑值及由所述计数器输出的计数值,根据使用控制指令数据的已设定的组合逻辑对接收的数据作逻辑运算,产生条件信号,
其中,所述本地硬件逻辑单元接收来自所述数据存储部的数据,若接收的数据表示所述语法中的重复回路,则输出帧补偿值,若接收的数据表示其它附加信息,则输出本地硬件逻辑值。
9、如权利要求8的装置,其特征是所述计数部包括:第1计数器,根据所述控制指令数据对所述帧补偿值作减计数;第2计数器,根据所述控制指令数据,对适合于1个反复回路的所述已设定了的计数值作减计数;和第3计数器,根据所述控制指令数据选择编码信息块模式值及适合于其它反复回路所述已设定了的计数值之一,就选择了的数据,实施使1位左移位工作。
10、如权利要求8的装置,其特征是所述信号发生部包括:第1多路转换器,根据所述控制指令数据选择并输出来自所述数据存储部的数据;第2多路转换器,根据所述控制指令数据,选择并输出来自所述本地硬件逻辑单元的本地硬件逻辑值;零位校验器,检查所述第1多路转换器的输出是否为“0”。
11、如权利要求1的装置,其特征是所述有效长输出部包括:移位确定单元,接收从所述数据存储部输出的数据、控制指令数据及条件信号,使用接收的信号使由所述数据存储部输出的数据移位,有选择地输出移了位的数据;和可变长译码逻辑单元,接收来自所述可变长编码表部的可变长编码长度及所述移了位的数据,根据条件信号及控制指令数据,作为有效位长选择并输出接收的数据之一。
12、如权利要求11的装置,其特征是所述可变长译码逻辑单元当在通过所述输入端接收的位流数据为被编了码的数据情况下,选择来自所述可变长编码表部的可变长编码长度,当所述接收的位流数据为附加信息的情况下选择所述移位确定单元的输出数据。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR3017/1996 | 1996-02-08 | ||
KR3017/96 | 1996-02-08 | ||
KR1019960003017A KR100215439B1 (ko) | 1996-02-08 | 1996-02-08 | 고속의 데이타 구문분석 제어회로 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1172400A CN1172400A (zh) | 1998-02-04 |
CN1129324C true CN1129324C (zh) | 2003-11-26 |
Family
ID=19450922
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN97101289A Expired - Fee Related CN1129324C (zh) | 1996-02-08 | 1997-02-08 | 高速数据语法分析装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US5812074A (zh) |
EP (1) | EP0789495B1 (zh) |
JP (1) | JP3113830B2 (zh) |
KR (1) | KR100215439B1 (zh) |
CN (1) | CN1129324C (zh) |
DE (1) | DE69739213D1 (zh) |
ES (1) | ES2321244T3 (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6230245B1 (en) | 1997-02-11 | 2001-05-08 | Micron Technology, Inc. | Method and apparatus for generating a variable sequence of memory device command signals |
US6081212A (en) * | 1997-02-26 | 2000-06-27 | Nec Corporation | Decoder using a finite state machine in decoding an abstract syntax notation-message and an encoder for carrying out encoding operation at a high speed |
US6175894B1 (en) | 1997-03-05 | 2001-01-16 | Micron Technology, Inc. | Memory device command buffer apparatus and method and memory devices and computer systems using same |
US5963260A (en) * | 1997-03-18 | 1999-10-05 | U.S. Philips Electronics North America Corporation | Macroblock-level partitioned HDTV video decoder and related method |
US5996043A (en) | 1997-06-13 | 1999-11-30 | Micron Technology, Inc. | Two step memory device command buffer apparatus and method and memory devices and computer systems using same |
US6484244B1 (en) | 1997-06-17 | 2002-11-19 | Micron Technology, Inc. | Method and system for storing and processing multiple memory commands |
US6202119B1 (en) * | 1997-12-19 | 2001-03-13 | Micron Technology, Inc. | Method and system for processing pipelined memory commands |
US6175905B1 (en) | 1998-07-30 | 2001-01-16 | Micron Technology, Inc. | Method and system for bypassing pipelines in a pipelined memory command generator |
US6178488B1 (en) | 1998-08-27 | 2001-01-23 | Micron Technology, Inc. | Method and apparatus for processing pipelined memory commands |
US6279044B1 (en) * | 1998-09-10 | 2001-08-21 | Advanced Micro Devices, Inc. | Network interface for changing byte alignment transferring on a host bus according to master and slave mode memory and I/O mapping requests |
US7844167B1 (en) | 1998-12-08 | 2010-11-30 | Stmicroelectronics, Inc. | System and apparatus for digital audio/video decoder splitting signal into component data streams for rendering at least two video signals |
US6490324B1 (en) | 1998-12-08 | 2002-12-03 | Stmicroelectronics, Inc. | System, method and apparatus for a variable output video decoder |
US20020114395A1 (en) * | 1998-12-08 | 2002-08-22 | Jefferson Eugene Owen | System method and apparatus for a motion compensation instruction generator |
US6414996B1 (en) | 1998-12-08 | 2002-07-02 | Stmicroelectronics, Inc. | System, method and apparatus for an instruction driven digital video processor |
US6453424B1 (en) * | 1999-03-31 | 2002-09-17 | International Business Machines Corporation | System and method for temporally controlling instruction execution |
US6611524B2 (en) | 1999-06-30 | 2003-08-26 | Cisco Technology, Inc. | Programmable data packet parser |
JP2003169327A (ja) | 2001-11-30 | 2003-06-13 | Matsushita Electric Ind Co Ltd | ソフトウェアでのmpeg−2ビデオ可変長復号化方法 |
US8630354B2 (en) * | 2006-06-16 | 2014-01-14 | Intel Corporation | Hardware accelerated compressed video bitstream escape code handling |
KR101305514B1 (ko) * | 2007-04-17 | 2013-09-06 | (주)휴맥스 | 비트스트림 디코딩 장치 및 방법 |
CN101547368B (zh) * | 2009-04-24 | 2011-03-09 | 炬力集成电路设计有限公司 | 一种图像中参考帧的处理装置、方法以及解码器 |
CN101841715B (zh) * | 2010-05-07 | 2013-04-03 | 无锡中星微电子有限公司 | 一种视频解码系统及方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5173695A (en) * | 1990-06-29 | 1992-12-22 | Bell Communications Research, Inc. | High-speed flexible variable-length-code decoder |
KR950004129B1 (ko) * | 1992-05-19 | 1995-04-25 | 주식회사금성사 | 가변장 부호 복호기 |
US5576765A (en) * | 1994-03-17 | 1996-11-19 | International Business Machines, Corporation | Video decoder |
US5566089A (en) * | 1994-10-26 | 1996-10-15 | General Instrument Corporation Of Delaware | Syntax parser for a video decompression processor |
-
1996
- 1996-02-08 KR KR1019960003017A patent/KR100215439B1/ko not_active IP Right Cessation
-
1997
- 1997-02-06 JP JP2412897A patent/JP3113830B2/ja not_active Expired - Fee Related
- 1997-02-07 EP EP19970300776 patent/EP0789495B1/en not_active Expired - Lifetime
- 1997-02-07 ES ES97300776T patent/ES2321244T3/es not_active Expired - Lifetime
- 1997-02-07 DE DE69739213T patent/DE69739213D1/de not_active Expired - Fee Related
- 1997-02-08 CN CN97101289A patent/CN1129324C/zh not_active Expired - Fee Related
- 1997-02-10 US US08/795,244 patent/US5812074A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP3113830B2 (ja) | 2000-12-04 |
ES2321244T3 (es) | 2009-06-03 |
DE69739213D1 (de) | 2009-03-05 |
EP0789495B1 (en) | 2009-01-14 |
EP0789495A3 (en) | 1999-10-06 |
JPH09289455A (ja) | 1997-11-04 |
US5812074A (en) | 1998-09-22 |
KR100215439B1 (ko) | 1999-08-16 |
EP0789495A2 (en) | 1997-08-13 |
KR970064266A (ko) | 1997-09-12 |
CN1172400A (zh) | 1998-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1129324C (zh) | 高速数据语法分析装置 | |
US7769088B2 (en) | Context adaptive binary arithmetic code decoding engine | |
CN105025303B (zh) | 视频序列图像的解码和编码 | |
CN1148005C (zh) | 快速联合图像专家组霍夫曼编码和解码方法 | |
US8306108B2 (en) | Adaptive canonical Huffman decoder and method thereof and video decoder | |
US5675331A (en) | Decoding device for decoding a variety of code signals | |
CN1535018A (zh) | 一种视频图像跳过宏块的编码方法 | |
CN1169373C (zh) | 编码图像序列的切换方法及相应装置 | |
US9001882B2 (en) | System for entropy decoding of H.264 video for real time HDTV applications | |
CN1135851C (zh) | 同步画面电路及其方法 | |
CN1332522A (zh) | 采用多映射表的可变长度编码和解码方法及设备 | |
CN1119377A (zh) | 用于装满比特位的数据的可变长译码装置 | |
CN1140127C (zh) | 图像同步电路和图像同步方法 | |
CN1126267C (zh) | 变长编码数据传输装置及其方法、发射机和接收机侧装置 | |
CN103067701B (zh) | 使用分区选择的重要性图编码和解码 | |
EA000082B1 (ru) | Способ кодирования цветного изображения и устройство для его реализации | |
CN1154365C (zh) | 无漂移代码转换器和相关的方法 | |
CN86106162A (zh) | 图象码的解码装置 | |
JP2007214998A (ja) | 符号化装置、復号化装置、符号化方法、復号化方法、及びプログラム | |
CN1427630A (zh) | 对编码视频信号进行解码的方法 | |
CN1925616A (zh) | 一种宏块对级帧场自适应编解码方法 | |
CN106488245A (zh) | 用于对视频数字数据流进行解码的系统和方法 | |
CN1901678A (zh) | 保护视频编码器的方法及视频同步保护器 | |
CN1280729C (zh) | 数据存取方法及装置 | |
CN1157954C (zh) | 编码视频数据的转换 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20031126 Termination date: 20100208 |