KR100232992B1 - 동화상 디코딩 회로 - Google Patents

동화상 디코딩 회로 Download PDF

Info

Publication number
KR100232992B1
KR100232992B1 KR1019960005804A KR19960005804A KR100232992B1 KR 100232992 B1 KR100232992 B1 KR 100232992B1 KR 1019960005804 A KR1019960005804 A KR 1019960005804A KR 19960005804 A KR19960005804 A KR 19960005804A KR 100232992 B1 KR100232992 B1 KR 100232992B1
Authority
KR
South Korea
Prior art keywords
data
processing
signal
header
error
Prior art date
Application number
KR1019960005804A
Other languages
English (en)
Other versions
KR960035340A (ko
Inventor
시니치 우라모토
아키히코 타카바타케
Original Assignee
다니구찌 이찌로오
미쓰비시덴키 가부시키가이샤
기타오카 다카시
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 다니구찌 이찌로오, 미쓰비시덴키 가부시키가이샤, 기타오카 다카시 filed Critical 다니구찌 이찌로오
Publication of KR960035340A publication Critical patent/KR960035340A/ko
Application granted granted Critical
Publication of KR100232992B1 publication Critical patent/KR100232992B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • H04N19/895Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder in combination with error concealment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Communication Control (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

처리의 개시를 나타내는 매크로 블록(MB)동기화 신호(MBSYNC)가 매크로블록 헤더와 매크로 블록에 의해 형성되는 하나의 처리부의 처리에서 어서트될때, 매크로 블록(MB)의 블록 데이터는 MBSYNC의 어서트와 동기해서 디코드되고, 다음의 매크로 블록 헤더정보는 처리부에서 연속해서 해석된다.
다음의 MB동기화 신호의 어서트는 소정의 조건이 성립하기 까지 정지된다.
매크로 블록의 블록 데이터의 처리는 하나의 처리부의 시작에서 통상적으로 실행되므로서, 동작 프로세서의 유효효율이 향상된다.

Description

동화상 디코딩 회로
제1도는 본 발명에 따르는 화상 디코딩 회로의 1처리구간의 동작을 표시하는 도면.
제2(a)도, 제2(b)도는 본 발명에 따르는 화상 디코딩 회로의 1처리구간(단위)의 구성 및 파이프라인화의 효과를 설명하기 위한 도면.
제3도는 본 발명에 따르는 화상 디코딩 회로의 1처리구간의 동작 및 DRAM의 포트의 동작을 표시하는 도면.
제4도는 본 발명에 따르는 화상 디코딩 회로 및 DRAM 포트의 다른동작 시퀀스를 표시하는 도면.
제5도는 본 발명에 따르는 화상 디코딩 회로에 사용되는 역양자화기의 입출력신호의 구성을 표시하는 도면.
제6도는 제5도에 표시하는 역양자화기의 입출력신호의 관계를 예시하는 도면.
제7도는 본 발명에 따르는 화상 디코딩 회로의 처리연산기의 파이프라인 구성 및 블록데이터의 처리의 시퀀스를 표시하는 도면.
제8도는 본 발명에 따르는 화상 디코딩 회로에서의 1처리구간의 시간기간을 설정하기 위한 동작을 표시하는 플로도.
제9도는 본 발명에 따르는 화상 디코딩 회로에서의 1처리구간을 결정하기 위한 별도의 동작시퀀스를 표시하는 도면.
제10도는 본 발명에 따르는 화상 디코딩 회로에서의 에러상태시의 동작을 표시하는 플로도.
제11도는 본 발명에 있어서 이용되는 세그먼트의 헤더 및 그것에 부수하는 스타트코드의 구성을 예시적으로 표시하는 도면.
제12도는 본 발명에 따르는 화상 디코딩 회로에서의 에러상태의 동작에 관련한부분의 구성도를 표시하는 도면.
제13도는 제12도에 표시하는 구성의 에러상태에서의 동작시퀀스를 표시하는 도면.
제14도는 제12도에 표시하는 구성의 에러상태시의 다른동작시퀀스를 표시하는 도면.
제15도는 제12도에 표시하는 가변장부호복호화기의 내부구성을 표시하는 도면.
제16도는 제12도에 표시하는 제어장치의 내부구성을 표시하는 블록도.
제17도는 본 발명에 따르는 화상 디코딩 회로에서의 화소재구성기의 구성을 표시하는 도면.
제18도는 본 발명에 따르는 화상 디코딩 회로에서의 에러상태시 동작시퀀스를 표시하는 도면.
제19도는 본 발명에 따르는 화상 디코딩 회로에서의 에러컨슬멘트(concealment)처리의 형태를 표시하는 도면.
제20도는 본 발명에 따르는 화상 디코딩 회로에서의 화소재구성기의 타의 구성을 표시하는 도면.
제21도는 제20도에 표시하는 스캔변환기의 구성을 표시하는 도면.
제22도는 본 발명에 따르는 화상 디코딩 회로에서의 에러상태시의 타의 동작시퀀스를 표시하는 도면.
제23도는 제22도에 표시하는 동작시퀀스에서의 에러컨슬멘트 처리를 설명하기 위한 도면.
제24도는 본 발명에 따르는 화상 디코딩 회로의 리세트시(리스타트시)의 동작을 표시하는 플로도.
제25도는 본 발명에 따르는 화상 디코딩 회로의 리세트시(초기화시)의 동작을 표시하는 플로도.
제26도는 본 발명에 따르는 화상 디코딩 회로의 리세트시의 동작시퀀스의 일예를 표시하는 도면.
제27도는 본 발명이 대상으로 하는 가변장부호를 생성하기 위한 구성을 설명하기 위한 도면.
제28도는 본 발명이 적용되는 화상 디코딩 회로에서의 GOP 레이어 에서의 픽처의 배열의 형태를 표시하는 도면.
제29도는 본 발명의 대상으로 하는 화상데이터의 구성을 설명하기 위한 도면.
제30도는 본 발명이 대상으로 하는 화상데이터의 신택스를 설명하기 위한 도면.
제31도는 제30도에 표시하는 슬라이스레이어를 설명하기 위한 도면.
제32도는 제30도에 표시하는 블록레이어의 구성을 설명하기 위한도면.
제33도는 본 발명이 대상으로 하는 화상 디코딩 회로의 구성을 개략적으로 표시하는 블록도.
제34도는 제33도에 표시하는 외부메모리영역의 구성을 표시하는 도면.
제35도는 종래의 화상 디코딩 회로의 처리구간을 설명하기 위한 도면.
제36도는 종래의 화상 디코딩 회로의 동작을 설명하기 위한 도면.
제37도는 스타트코드의 구성을 표시하는 도면.
제38도는 매크로블록레이어의 헤더부의 구성을 표시하는 도면.
제39도는 종래의 화상 디코딩 회로의 문제점을 설명하기 위한 도면.
제40도는 종래의 화상 디코딩 회로의 문제점을 설명하기 위한 도면.
본 발명은, 압축처리된 화상데이터를 신장처리하여 압축전의 화상데이터를 복원하는 화상 디코딩 회로에 관한것으로, 특히, 직교변환 및 프레임/필드간 예측부호화를 사용하는 동화상압축방식에 따라서 압축처리된 화상데이터를 신장처리하는 동화상 디코딩 회로에 관한것이다.
팽대한 데이터량을 포함하는 화상 데이터를 고능률로 부호화 하므로서, 데이터량을 저감하여 전송하고, 이 고능률부호화된 화상 데이터를 복호하므로서, 본래의 화상을 복원하는 방식이 제안되어 왔다.
이와같은 화상데이터의 처리방식의 하나로서 동화상을 대상으로 하는 MPEG(Moving Picture Experts Group) 규격이 있다.
이 MPEG규격의 화소 데이터의 방식은, 이 분야에서는 잘알려져 있지만, 본 발명의 배경의 처리의 이해를 쉽게 하기위해서, 먼저 간단하게 MPEG에 의거 화상데이터의 부호화방식에 대해서 설명한다.
제27도는, 일반적인 MPEG 준거 동화상데이터 부호화장치의 구성을 개략적으로 표시하는 도면이다.
제27도에서, 부호화장치는, 입력화소데이터와 예측화상의 대응한화소데이터(참조화소데이터)와의 차를 구하는 감산기(1000)과, 감산기(1000)의 출력하는 신호(예측오차신호)에 직교변환처리의 하나인 이산코사인변환(DCT) 처리를 실시하는 DCT 변환기(1002)와, DCT 변환기(1002)의 출력하는 신호(DCT 계수)를 양자화하는 양자화기(1004)를 포함한다.
뒤에 상세하게 설명하지만, 화상에는, I 픽처, P 픽처 및 B 픽처등의 종류가 존재하며, 화상의 종류에 따라서 사용되는 예측방식이 다르다.
I 픽처는, 프레임내 또는 필드내부호화되며, 입력화소데이터 그것이 부호화된다.
P 픽처는 과거의 재생화상으로 부터의 프레임간 또는 필드간 예측부호화처리를 받는 화상이다.
B 픽처는, 과거의 재생화상 및 미래의 어느것 또는 재생화상양방의 화상(프레임 또는필드)를 사용하여 예측을 행하는 화면이다.
이 B 픽처는, I 픽처 및 P 픽처를 사용하여 예측부호화 된다.
B 픽처는 참조화상으로서는 사용할 수 없다.
프레임간 또는 필드간 예측을 행하는경우에는, 동(動)보상이 행하여진다.
현화상의 블록(처리단위가되는 세그먼트)에 가장 상관성이 높은 예측화상에서의 블록을 구하고, 이 가장 상관성이 높은 블록을 사용하여 예측부호화를 행한다.
이 현화상블록화 예측화상블록과의 위치의 어긋남을 동(動)벡터로서 구하여, 각 화소데이터블록에 부쳐서 전송시에 송신된다.
동보상은, 통상 16화소×16화소의 블록(세그먼트)를 단위로 하여 실행된다.
DCT 변환기(1002)는, 통상, 8화소×8화소의 블록을 단위로하여 DCT 변환처리를 실행한다.
DCT 변환처리를 실행하므로서, 화상에서의 공간적인 용장성(冗長性)(인접화소간의 높은상관성)을 저감한다.
즉, 이 DCT 변환기(1002)에서는 DCD 계수를 저감계수영역에 편재시킬수가 있고, 다음단의 역양자화기의 처리에 의한 화상데이터량의 삭감을 가능하게 한다.
양자화기(1004)는, 양자화테이블(1012)를 참조하여, 이 DCT 변환기(1002)로 부터의 DCT 계수의 양자화를 행한다.
양자화테이블(1012)에서, 고주파성분에 대해서는 큰치가 설정된다.
이 양자화테이블(1012)를 참조하여, 양자화기(1004)에서 DCT 변환기(1002)로 부터 DCT 계수를 양자화함으로서, 공간주파수에서의 수평 및 수직방향과 함께 저역성분을 크게하고, 또한 고역성분을 거의 ″0″로 할 수가 있다.
이것에 의해 데이터량을 저감할 수가 있다.
부호화장치는 또한, 양자화기(1004)로 부터의 양자화데이터를 소정의 순서로 지그재그 형태로 정렬을 바꾸는 지그재그스캔기(1006)와 지그재그스캔기(1006)로 부터의 데이터를 가변장부호화하는 가변장부호화기(1008)와, 가변장부호화기(1008)로 부터의 가변장부호화데이터 및 도시하지않는 동 벡터검출기로 부터의 동 벡터정보 및 다른 블록의 속성을 표시하는 정보를 받아, 소정의 포맷에 따라서 동 벡터정보 및 속성정보를 가변장부호화 처리하고 또한 에러부호어등을 부가하여 출력하는 전송부호화회로(1010)을 포함한다.
지그재그스캔기(1006)은, 제27도에 지그재그스캔기(1006)의 좌측의 블록(1015)에 표시하는것과 같이, 8×8개의 DCT 계수를 제27도의 좌상으로 부터 차례로 우하(右下)(즉 고역성분영역)로 향해서 지그재그로 진행하도록 DCT 계수로 정렬을 바꾼다.
제27도의, DCT 계수블록(1015)에 표시되는 DCT 계수중 가장 좌상의 DCT 계수는, DCT계수라 부르고, 8화소×8화소의 블록 데이터의 평균치를 표시하며, 잔여의 DCT 계수는 AC 계수라 부른다.
지그재그스캔기(1006)에 의해 DCT 계수를 지그재그스캔하므로서, 비0계수를 효율적으로 잡을 수가 있다.
가변장부호화기(1008)은, 이 지그재그스캔기(1006)로 부터의 양자화된 DCT 계수를 순서대로, 선행하는 0계수(무효계수)의 개수(런)과 비0의 계수(유효계수)의 값(레벨)를 종합하여 2차원 가변장부호화를 행한다.
이 가변장부호화기(1008)는, 예를 들면 허프만(Huffman)부호에 따라서 전개된 부호화테이블(1014)을 사용하여 지그재그스캔기(1006)로 부터의 양자화 DCT 계수 데이터를 가변장부호화 한다.
양자화된 DCT 계수에 있어서는, 고역성분에는, ″0″이 많이 존재하고, 저역성분에 유효계수가 많이 존재한다.
이 유효계수에 대해 짧은 길이의 부호를 할당하고, 또한 출현빈도가 적은양자화계수에 부호장이 긴부호를 할당하므로서, 데이터량을 더 저감한다.
제28도는, 제27도에 표시하는 전송부호화회로(1010)로 부터 전송되는 화상의 배열의 일예를 표시하는 도면이다.
제28도에 있어서, 픽처번호 1 내지 13의 번호가 부착된 13장의 화상이 표시된다.
픽처번호 1 및 13의 화상은, I 픽처이며, 픽처번호 4,7 및 10의 화상이 P 픽처이다.
I 픽처와 P 픽처의 사이 또는 P 픽처의 사이에 2개의 B 픽처가 삽입된다.
I 픽처는, 프레임내 부호화처리만이 행하여져, 예측부호화는 행하여지지 않는 화상이다.
P 픽처는 프레임사이 또는 필드간 예측부호화(동보상부)처리되는 화상이며, B 픽처는 일예로서 쌍방향 예측부호화(동보상부)화상이다.
I 픽처(I), P 픽처(P) 및 B 픽처(B)는 필드화상이라도 좋고, 또 프레임화상이라도 좋다.
이 B 픽처(B)의 예측에 있어서는, 예를들면 시간적으로 전 및 후의 I 픽처및 P 픽처 또는 P 픽처 및 P 픽처를 사용하여 내삽(內揷)처리가 행하여진다.
P 픽처는, 시간적으로 전의 I 픽처(I)또는 P 픽처(P)를 사용하여 예측부호화(동보상보)처리가 행하여진다.
I 픽처및 P 픽처만이 예측화상으로서 사용되어, B 픽처(B)는 예측화상으로서 사용할 수 없다.
제29도는, 하나의 화상 구성을 표시하는 도면이다.
제29도에 있어서, 한장의 화상(필드 또는 프레임)(1020)은, 복수의 매크로블록이라고 부르는 세그먼트로 분할된다.
제29도에 있어서는, 간단하게, 화상(1020)은 32개의 매크로블록 MB#1~MB#32로 분할되는 구성이 일예로서 표시되어 있다.
동화상의 처리는, 이 매크로블록이라고 부르는 세그먼트를 단위로하여 실행된다(부호화처리 및 복호화처리 모두).
매크로블록 MB#32의 각각은, 통상, 수평방향 16화소 및 수직방향 16화소에 배열되는 256개의 화소를 포함한다.
따라서, 제29도에 표시하는 화상은, 128화소×64 화소로 구성된다.
제30도는, 화상데이터의 비트스트림(복수비트폭)의 구성을 개략적으로 표시하는 도면이다.
제30도에 있어서, 비트스트림은 복수의 레이어로 분할된다.
상위로 부터, 시퀀스레이어, GOP(그룹·오프·픽처) 레이어, 픽처레이어, 슬라이스레이어, 매크로블록레이어 및 블록레이어이다.
블록레이어는, DCT 계수를 포함하는 영역(1100a)과, 블록의 종료를 표시하는 엔드·오브·블록(EOB)를 격납하는 영역(1100b)를 포함하는 블록(1100)으로 구성된다.
DCT 계수데이터를 격납하는 영역(1100a)은, DCT 처리의 단위가 되는 8행×8열의 화소의 DCT 계수데이터를 격납한다.
이 블록(1100)에서, 영역(1100a)의 최종의 AC 계수가 비0계수인 경우, 영역(1100b)의 EOB은 사용되지 않는 경우가 있다.
매크로블록은, 소정수의 블록(6개)(1100)을 포함한다.
비트스트림상에서의 매크로블록레이어는, 블록(1100)으로 구성되는 데이터블록과, 이 데이터블록의 데이터의 속성 및 동벡터등을 가변장부호화화하여 격납하는 매크로헤더(1115)를 포함한다.
슬라이스레이어는, 화상의 주사순으로 연결되는 한개 또는 복수의 매크로블록(1100)으로 구성되는 슬라이스(1120)을 포함한다.
이(1120)의 선두에는, 슬라이스의 화면상수직위치를 표시하는 정보 및 이 슬라이스의 시작을 표시하는 소정의 패턴을 가지는 스타트코드등의 정보가 격납되는 슬라이스헤더(1125)가 설치된다.
이 슬라이스레이어는, 각각에 소정의 패턴의 코드가 할당된 레이어중의 최하층의 레이어 때문에, 에러 발생시의 재동기화의 단위로서 사용된다.
픽처레이어는, 복수의 슬라이스(1120)로 구성되는 픽처(화상)(1130)를 포함한다.
이 픽처(1130)의 선두에, 픽처의 종류(I 픽처, P 픽처등)을 표시하는 정보 및 픽처의 개시를 표시하는 스타트코드등의 정보가 가변장심볼(가변장부호어)로 격납되는 픽처헤더(1135)가 배치된다.
GOP 레이어는, 복수의 픽처(1130)를 포함하는 GOP(1140)을 포함한다.
이 GOP(1140)에 포함되는 픽처(1130)는, 하나 이상의 I 픽처와 O 또는 복수의 P 픽처또는 B 픽처를 포함한다.
GOP(1140)의 선두에는, GOP스타트코드, 이 GOP가 그것보다 이전의 GOP 의 화상데이터로 부터의 참조가 필요치 않은 것을 표시하는 그래프등의 정보를 격납하는 GOP 헤더(1145)가 배치된다.
시퀀스레이어는, 한개 혹은복수의 GOP(1140)혹은 한개 또는 복수의 픽처(1130)으로 구성되는 시퀀스(1150)를 포함한다.
이 시퀀스(1150)의 선두부에는, 화면의 포맷등의 정보를 격납하는 시퀀스헤더(1155)가 배치된다.
이 시퀀스헤더(1155)는, 시퀀스(1150)에 포함되는 GOP(1140)의 전부 선두에 배치시킬수가 있다(시퀀스의 도중으로 부터의 화상의 재생을 허용하기 때문에).
이 시퀀스헤더(1155)에는, 시퀀스의 개시를 표시하는 소정의 패턴을 가지는 스타트코드, 화상의 수평 및 수직사이스, 픽처레이트(화상표시속도), 비트레이트 및 그 내용등의 정보가 격납된다.
제31도는, 픽처와 슬라이스의 관계를 예시하는 도면이다.
제31도에 표시하는 것과 같이, 한장의 화상을 형성하는 픽처(1130)는, 복수의 슬라이스(1120)을 포함한다.
이 슬라이스(1120)는, 임의의 길이를 가질 수가 있고, 화면상우단에 달하면 좌단으로 되돌아온다.
제32도는, 매크로블록(1110)의 데이터블록의 구성을 표시하는 도면이다.
매크로블록(1110)은, 매크로블록을 4분할한 영역 Y1~Y4 각각에 대한 DCT 계수데이터를 격납하는 영역(1100aa~1100ad)와, 서브샘플링된 색차신호(色差信號) Cb5 및 Cb6를 각각 포함하는 블록(1100ae) 및 (1100af)를 포함한다.
색차블록(1100ae) 또는 (1100af)는, 수직 및 수평방향으로 샘플링되어 있어서, 4개의 휘도블록(1100aa~1100ad)와 한개의 색차블록(1100ae)(또는1100af)이 화면상에서 같은 크기가 된다.
동보상은 16화소×16화소의 매크로블록(1110(MB)를 단위로하여 실행되며, DCT 변환처리는 8 화소×8화소의 블록을 단위로서 실행된다.
제33도는, 종래의 화상 디코딩 회로의 구성의 일예를 개략적으로 표시하는 도면이다.
이 제33도에 표시하는 화상 디코딩 회로는, 앞에 제27도에 표시한 부호화장치에 의해 부호화된 화상데이터를 신장처리해도 화상데이터를 복원한다.
제33도에 있어서, 화상 디코딩 회로(1200)은, 들어오는 비트스트림(복수비트폭)을 받아서 외부메모리(1230)에 FIFO(First In First Out)형태로 격납하고 또한 판독 FIFO 인터페이스(1210)과, FIFO 인터페이스(1210)을 통해서 제공되는 화소데이터를 세그먼트(매크로블록)단위로 가변장복호처리하여 고정장데이터의 양자화된 DCT 계수데이터(양자화인덱스)를 생성하는 가변장부호복호화기(1212)와, 가변장부호복호화기(1212)에서 출력된 데이터를 역양자화하여 DCT 계수데이터를 생성하는 역양자화기(1214)와, 역양자화기(1214)의 출력데이터의 배열순서를 교체하여 주사순으로 배열된 DCT 계수데이터를 생성하는 스캔변환기(1216)와, 이 스캔변환기(1216)의 데이터에 역직교변환의 하나인 역이산 코사인 변환을 실행하는 역이산코사인변환기(1218)과, 이 역이산코사인변환기(1218)의 출력하는 화소데이터(차분데이터)와 메모리인터페이스(1224)를 통해서 외부메모리(1230)으로부터 제공되는 예측화상화소데이터를 받아 화소데이터를 복원하는 화소재구성기(1220)를 포함한다.
FIFO 인터페이스(1210)은, 메모리인터페이스(1224)를 통해서 외부메모리(1230)에 액세스하고, 들어오는 비트스트림을 FIFO 형태로 격납판독하므로서, 들어오는 비트스트림의 버퍼처리를 행하여, 들어오는 비트스트림의 비트레이트와 화상 디코딩 회로(1200)에서의 데이터 처리속도와의 차를 해소한다.
가변장부호복호화기(1212)는 FIFO 인터페이스(1210)를 통해서 제공되는 비트스트림에서, 각레이어의 헤더를 검출하며, 그 검출한 헤더의 해석을 행하고, 그 해석결과에 따라서 각 블록(매크로블록에 포함되는블록)의 데이터처리를 실행한다.
따라서 이 가변장부호복호화기(1212)는, 헤더의 해석기능과 양자화된 DCT 계수의 가변장부호복호화처리를 실행한다.
이 가변장부호복호화처리는 가변장부호화된 런렌스(run length)데이터에서, 고정길이의 양자화된 양자화 DCT 계수를 복원하는 처리를 포함한다.
역양자화기(1214)는, 이 가변장부호복호기로 부터 양자화된 DCT 계수를 도시하지 않는 양자화테이블(양자화매트릭스)의 양자화데이터를 사용하여 역양자화를 행하여 DCT 계수를 복원한다.
이 양자화 매트릭스는, 또 가변장부호복호화기(1212)를 통해서 역양자화기(1214)에 포함되는 양자화테이블에 기록되는 경우도 있다.
스캔변환기(1216)은 이 역양자화기(1214)로 부터 제공되는 제27도에 표시하는 지그재그스캔된 DCT 계수데이터를 받아, 그 스캔순서를 근거로 주사순서로 재배열한다.
역이산코사인변환기(1218)은 스캔변환기(1216)에서 제공된 DCT 계수데이터에 역이산코사인 변환처리를 실시하여 예측부호화된 데이터를 복원한다.
화소재구성기(1220)은 가변장부호복호화기로 부터의 동벡터데이터 및 매크로블록 속성데이터에 따라서 필요로하는 예측화상화소데이터를 메모리인터페이스(1224)를 통해서 외부메모리(1230)으로 부터 판독하고, 판독한화소데이터와 역이산코사인변환기(1218)로 부터 제공된 차분화소데이터와의 가산을 행하여 본래의 화소데이터를 재구성하고, 본래의 화소데이터를 복원하여 외부메모리(1230)에 메모리인터페이스(1224)를 통해서 격납한다.
이 화소재구성기(1220)에서의 처리는, I 픽처, P 픽처및 B 픽처 각각에 따라 다르다.
픽처와같이 프레임내부호화를 행하는 화소데이터인 경우, 역이산코사인변환기(1218)에서 제공된 화소데이터 그것이며, 예측부호화는 행하여있지 않아, 화소재구성기(1220)은, 이 역이산코사인 변환기(1218)에서 제공된 화소데이터를 메모리 데이터 인터페이스(1224)를 통해서 외부메모리(1230)에 기록한다.
P 픽처및 B 픽처와 같은 프레임간 또는 필드간 예측부호화가 행하는 화상데이터인 경우, 이역이산코사인변환기(1218)로 부터 화소구성기(1220)에 제공된 화소데이터는, 이미 복호된 화소데이터(예측화상데이터)와의 차분으로 제공된 예측오차신호이다.
따라서, 이경우에는, 화소재구성기(1220)은 메모리인터페이스(1224)를 통해서 외부메모리(1230)로 부터 대응의 예측화상화소데이터와 역이산코사인변환기(1218)로 부터의 화소데이터와 가산하여, 그 가산결과를 다시 메모리인터페이스(1224)를 통해서 외부메모리(1230)에 기록한다.
외부메모리(1230)에 기록된 화상데이터는 메모리인터페이스(1224)를 통해서 래스터 주사순으로 판독된 화소버스 인터페이스(1222)을 통해서 도시하지 않은 화상표시제어회로를 통해서 표시장치에 제공된다.
상술한 일련의 처리는, 부호화시와 마찬가지로, 세그먼트단위로 실행된다.
역양자화기(1214), 스캔변성기(1216), 역이산코사인변성기(1218) 및 화소제구성기(1220)은, 화상데이터의 처리를 고속으로 행하기 위해서 파이프라인화되어 있다.
제어회로(1226)은, 이 외부메모리(1230)에의 액세스의 제어 및 파이프라인 스테이지의 기동 및 정지의 제어를 행한다.
제34도는, 제33도에 표시하는 외부메모리(1230)의 기억영역을 표시하는 도면이다.
이 외부메모리(1230)는, 예를들면 DRAM를 사용하여 구성되며, 외부로 부터 제공되는 비트스트림을 FIFO 형태로 격납하는 FIFO영역(1232)과, 화소재구성기(1230)(제33도참조)에 있어서 예측부호화복호(DPCM복호)처리에 사용되는 참조 화상화소데이터를 격납하는 참조화상영역(1234)과, 제33도에 있어서 도시하지 않는 표시제어회로를 통해서 표시장치에 표시되는 표시화상데이터를 격납하는 표시화상영역(1236)을 포함한다.
FIFO 영역(1230)은, 일반적으로, 들어오는 비트스트림의 비트레이트와 화상 디코딩 회로(1200)(제33도)에서의 데이터처리속도의 차를 흡수하기 위한 레이트조정용의 레이트버퍼라 부른다.
이 FIFO 영역(1232)를 사용하므로서, 들어오는 비트스트림의 전송레이트가 거의 일정한 것에 비하여, 가변장부호어데이터를 처리하기 위해 화상신장처리에서의 단위시간내에 필요로 하는 부호량에서의 차이를 보상할 수가 있다.
제35도는, 제33도에 표시하는 화상 디코딩 회로의 제어에 관한 타이밍차트의 예를 표시하는 도면이다.
제35도에서는, 프레임 또는 필드의 픽처단위의 동작개시를 지시하는 동기신호인 픽처동기신호와 세그먼트단위의 동작개시를 지시하는 동시신호인 MB 동시신호가 표시된다.
픽처동기신호는, 예를들면 수직동기신호이며, 도시하지 않은 표시제어회로에서 제33도에 표시하는 제어회로(1226)에 제공된다.
제어회로(1226)은, 이 픽처동기신호에 동기하여 MB 동기신호를 출력한다.
픽처동기신호의 주기는, 복호후의 화상데이터(제32도에 표시하는 화소버스 인터페이스(1222)를 통해서 판독되는 화소데이터)의 표시장치상의 표시레이트로 결정되는 일정치를 가진다.
이 표시레이트는, MPEG에 있어서는 레벨에 의해 결정된다.
「레벨」에는, 수평화소수·수직화소수.프레임주파수의 최대치가 규격화되어 있다.
한개의 픽처에서는, 분할되는 매크로블록의 수는 사전에 결정된다.
픽처동기신호 사이클내에서 어서트(assert)되는 MB 동기신호의 수는, 따라서 픽처의 화상수즉 매크로블록의 수로 결정된다.
이 MB 동기신호는, 제33도에 표시하는 제어회로(1226)로 부터 화상 디코딩 회로(1200)의 각 회로에 제공되어서, 각회로가 각각소정의 처리동작을 실행한다.
제36도는, 세그먼트단위의 처리구간내에 행하여지는 처리를 표시하는 타이밍차트도이다.
제36도에서는, 화상 디코딩 회로를 디코더로서 표시한다.
MB 동기신호에 동기하여 이화상 디코딩 회로(디코더)의 동작이 기동된다.
가변장부호복호화기(1212)(제33도를 참조)가 MB 동기신호에 동기하여 활성화되어서, FIFO인터페이스(1210)을 통해서 제공된 비트스트림으로 부터 헤더를 검출하여 해석하고, 다음에 실행해야할 처리를 결정한다.
이어서, 이 헤더해석에 의해 결정된 처리동작에 따라서 매크로블록의 각블록의 실데이터분의 복호(이하 블록데이터의 복호라 칭한다)가 행하여진다.
이 디코더에서의 복호동작과 병행하여, 외부메모리에의 액세스동작이 실행된다.
즉, 제34도에 표시하는 FIFO 영역(1232)에의 비트스트림의 기록, 복호처리해야 할 비트스트림의 FIFO 영역(1232)로 부터의 화소데이터의 판독, 복호된 화상데이터의 참조화상영역(1232)또는 표시화상영역(1236)(B픽처는 참조화상으로서는 사용되지 않는다)에의 기록, 화상데이터의 표시를 위한 외부메모리의 표시화상영역(1236)로 부터의 데이터의 판독 및 화소재구성기에서의 예측부호화 복호처리에 사용되는 예비화상의 판독을 포함한다.
제36도에 있어서는, 한개의 매크로블록의 처리동작을 겸해서 표시한다.
여기서, 이하의 설명에 있어서, 「세그먼트」는, 복수의 블록을 포함하는 매크로블록과, 이 매크로블록의 속성데이터를 포함하는 매크로블록헤더 양자를 포함하며, 「매크로블록」은 단지 복수의 데이터블록을 포함하는 것으로 한다.
헤더 해석부에 있어서는, 세그먼트의 헤더부분의 해독을 행하여, 이후에 실행해야할 처리의 결정 및 처리해야할 매크로블록의 속성을 결정한다.
이 매크로블록의 헤더부분의 해독 후, 매크로블록의 각블록의 휘도신호(Y신호)의 복호화 및 색차신호 Cb 및 Cr의 복호화가 행하여진다.
이때 또 병렬로, 매크로블록헤더부분의 해독에 의해 제공된 동벡터로 부터 동벡터를 재구성하는 연산이 행하여진다(B픽처의 경우 복수의 동벡터가 사용된다).
이 디코더의 복호동작의 일예는, 예를들면 ISSCC94, 다이제스트·오브·테크니컬·페이퍼스의 제27 내지 제73페이지의 「싱글·칩MPEG2 비디오·디코더 LSI」의 제2도에 데무라(Demura) 등에 의해 기술되어 있다.
따라서, 이 처리인 경우, 헤더 해석에 요하는 시간이, 이 헤더부의 길이에서 다르기 때문에, MB 동기신호의 기간 즉 1처리기간의 시간길이는 각처리구간 마다 다르다.
화상 디코딩 회로에 있어서, 비트스트림은 세그먼트 단위로 처리된다.
블록레이어를 제거하는 각 레이어의 선두에는, 제30도에 표시하는 것과 같이, 헤더가 부쳐져 있다.
이 헤더의 선두부에는, 레이어의 시작을 표시하는 스타트코드가 배치된다.
이 스타트코드는, 제37도에 표시하는 것과 같이 바이트단위로 배치되는 32 비트폭을 가진다.
제37도에서, 스타트코드(1300)은, 스타트코드인 것을 표시하는 소정의 패턴을 가지는 3 바이트의 프리픽스(1310)와, 각 레이어에 고유의 패턴을 가지는 1 바이트의 레이어스타트코드(1320)을 포함한다.
예를들면, MPEG2의 픽처레이어의 시작을 표시하는 스타트코드의 경우, 패턴 0000 0000 0000 0000 0000 0001 0000 0000를 가지며, 또 시퀀스레이어의 시작을 표시하는 스타트코드는, 패턴 0000 0000 0000 0000 0000 0001 1011 0011를 가진다.
상술한 스타트코드에 있어서 상위 24 비트(3 바이트)가 프리픽스이며, 하위 1 바이트가 레이어스타트코드이다.
MPEG2 규격에 있어서는, 매크로블록레이어보다 상위의 레이어에서는, 스타트코드에 계속해서 헤더 정보가 배치된다.
매크로 블록레이어에는, 스타트코드는 배치되지 않는다.
이들의 헤더정보는 고정장데이터이지만, 그의 상세한 설명은 생략한다.
매크로블록레이어의 헤더(매크로블록헤더)는, 가변장부호화된정보를 포함한다.
제38도는, 매크로블록헤더의 구성의 일예를 표시하는 도면이다.
제38도에서, 매크로블록크헤더(1350)은, 매크로블록의 화면상의 위치를 표시하는 정보(매크로블록어드레스) 및 스킵되어야 할 매크로블록의 수(매크로블록 어드레스 인크리먼트)를 격납하는 매크로블록 어드레스영역(1352)와, 매크로블록의 처리방법을 표시하는 매크로블록타이프를 격납하는 영역(1354)와, 매크로블록의 동 벡터를 격납하는 영역(1356)과, I 픽처 이외의 매크로블록의 각 블록이 DCT 계수데이터를 포함하느냐 아니냐를 표시하는 CBP(Coded Block Pattern)을 격납하는 CBP영역(1358)를 포함한다.
매크로블록 어드레스 인크리먼트에 의해 스킵되는 매크로블록은, 예를들면 P 픽처에 대해서는, 동보상되지 않은 매크로블록에 있어서, DCT 계수의 부호(코드)를 가지지 않는 타이프의 매크로블록이다.
영역(1354)에 격납되는 매크로블록타이프는, 매크로블록이, 프레임내/필드내 예측부호화되어있느냐 아니냐, 동보상 되어있느냐 아니냐의 정보를 포함한다.
동 벡터영역(1356)에는, 동보상 예측되는 경우의 동 벡터가 격납된다.
I픽처의 경우에는, 동벡터영역(1356)에는, 동벡터가 격납되지 않는다.
또 P 픽처에서는, 그 예측방식(프레임예측 부호화의 경우의 홀수필드(톱필드)및 짝수필드(보톰필드) 예측부호방식에 따라서 동벡터를 사용할 수가 있다.
마찬가지로 B 픽처에 대해서도 그 예측부호방식에 따라서 사용되는 동벡터의 수는 다르다.
따라서, 이 동벡터격납영역(1356)의 비트폭은 세그먼트 마다 다르다.
CBP 영역(1358)은, 각 블록이 DCT 계수데이터를 포함하느냐 아니냐를 표시하며, 따라서, 이 CBP 영역(1358)에 격납된 정보가 DCT 계수 데이터를 포함하지 않는 것을 표시하는 블록은 그 데이터전송에 있어서는 존재하지 않게 된다.
이 매크로블록 헤더의 각 영역(1352,1354,1356) 및 (1358)에 포함되는 정보는, 모두 가변장부호어(가변장심벌)로 표현된다.
따라서, 매크로블록 헤더(1350)의 정보를 모두 해석하는데 요하는 시간은, 매크로블록의 속성(처리방법, 동벡터의수등)에 따라서 다르다.
매크로블록 헤더(1350)의 각 정보를 해석하므로서, 이 매크로블록 헤더(1350)에 계속하는 매크로블록에 대해서 어떠한 처리를 행할것이냐를 결정할 수가 있다.
종래에는, 제36도에 표시하는 것과 같이, MB 동기신호(MBSYNC)에 동기하여 매크로블록 헤더(1350)의 정보의 해석을 개시하고, 이 매크로블록 헤더(1350)의 정보를 모두 해석 한 후에 비로소 매크로블록 데이터의 복호처리를 행하고 있다.
즉, MB동기신호(MBSYNC)가 어서트(assert)되고나서 매크로블록 헤더(1350)의 정보가 모두해석될 때까지, 제33도에 표시하는, 가변장부호복호화기(1212)의 부호복호부, 역양자화기(1214), 스캔변성기(1216), 역이산코사인변환기(1218) 및 화소재구성기(1220)은 동작정지상태로되며, 매크로블록 헤더정보가 모두 해석되었을 때 비로소 이들의 연산처리기 동작상태로 된다.
여기서, 제39도에서, 매크로블록 MB#A, MB#B, MB#C 각각에 헤더해석이 시각 Ta,Tb 및 Tc에서 종료하고, 이어서 블록 데이터의 복호가 행하여지는 상태가 일예로서 표시된다.
따라서, 제39도에서 예를들면 매크로블록 MB#C와 같이 헤더해석에 장시간 요하는 경우, 가변장부호복호화부 이후의 연산처리기의 동작정지 시간이 길게되며, 따라서 연산처리기의 사용효율이 저하하며, 고속으로 화상데이터의 복호처리를 행할 수 없게 되는 문제가 생긴다.
이와같은 처리연산기의 사용효율의 저하를 방지하기 위해서, 연산처리를 파이프라인화하는 것이 고려된다.
제40도는, 일예로서 역양자화기로 부터 화소재구성기까지의 각 처리연산기의 각 단을 파이프라인화한 구성을 개략적으로 표시하는 도면이다.
이 제40도에 표시하는 구성에 있어서는, MB 동기신호 MBSYNC의 어서트 마다, 헤더해석 및 가변장복호된 데이터가 파이프라인에 투입된다.
파이프라인 스테이지에서의 역양자화 스테이지, 스캔변환 스테이지, 역DCT 스테이지 및 화소복호 스테이지는, 각각 제공된 데이터를 파이프라인형태로 처리한다.
세그먼트(매크로블록 헤더 및 매크로블록) MB#A의 헤더 해석 및 가변장복호처리가 종료하고, 다음의 MBSYNC가 어서트되면, 이 매크로블록MB#A의 각 블록 데이터가 파이프라인에 투입되어서 차례로 처리된다.
다음의 세그먼트 MB#B의 헤더해석에 장시간 요할 경우, 매크로블록MB#A의 각 블록의 데이터의 처리가 종료해도, 아직 이 매크로블록 MB#B의 블록의 데이터는 파이프라인에 투입되지 않으므로, 파이프라인 스테이지에 빈틈이 생겨, 파이프라인이용효율이 저하한다.
세그먼트 MB#B의 헤더해석 및 매크로블록의 각 블록의 데이터의 가변장복호화가 종료하면, 다음의 MB 동기신호 MBSYNC의 어서트에 따라서 매크로블록 MB#B의 가변장복호어의 데이터가 파이프라인 스테이지에 투입된다.
다음에 제공된 세그먼트 MB#C의 헤더의 해석이 단시간으로 종료하며, 따라서 매크로블록의 각블록의 데이터의 가변복호처리도 빨리 종료했을 경우, 이 매크로블록 MB#C의 가변장복호처리종료에 따라서 다음의 MB 동기신호 MBSYNC가 어서트된다.
이때, 파이프라인의 역양자화스테이지에 있어서 매크로블록MB#B의 각블록의 데이터의 처리가종료하지 않고 있는 경우에는, 매크로블록 MB#B의 각 블록의 데이터의 처리중에 다음의 매크로블록 MB#C의 블록데이터가 투입되며, 매크로블록 MB#B의 각 블록의 데이터와 매크로블록 MB#C의 블록의 데이터가 혼재하여 처리가 행하게되며, 정확한 데이터처리를 행할수가없고 데이터처리(신장처리)에 파탄이 생긴다. 따라서, 큰 파이프라인을 도입할수가없고, 파이프라인화에 의한 처리연산기의 사용효율개선에도 한도가 있다.
동화상데이터, 특히, HDTV(고해상도 TV)등의 화면사이스의 큰화상의 데이터를 처리하는 화상 디코딩 회로에 있어서는, 대량의 데이터를 고속으로 처리할 필요가 있고(프레임 또는 필드의 주파수 즉 이 픽처동기신호의 주기는, 신장처리후의 화상데이터의 표시속도로 결정된다), 또 그 신장처리과정에서의 처리연산기(예를 들면 역DCT 변환기)에서의 연산량도 극히 크다.
따라서, 처리연산기의 사용효율의 저하를 보상하여 고속데이터처리를 실현하기 위해서는, 각 처리연산기의 동작속도를 빨리할(처리동작속도를 결정하는 클록신호의 주파수를 높게한다)필요가 생기며, 처리연산기의 구성요소의 온 및 오프 및 신호선의 충방전의 단위시간당의 회수가 증대하며, 따라서 소비전류가 증대한다는 문제가 생긴다.
또, 별도의 방법으로서, 복수의 처리연산기를 병렬로 설치하고, 이들의 복수의 처리연산기를 동시에 병렬로 동작시키므로 사용효율의 저하를 보상하는것도 고려된다.
이 경우, 소자수가 증대하고, 장치규모가 증대한다는 문제가 생긴다.
화상신장처리과정에서, 예를들면 외부제어장치로 부터의 인터럽트처리가 생겼을 경우, 그 인터럽트종료 후 화상 디코딩 회로를 초기화할 필요가 생긴다.
이때, 인터럽트된 처리에서 다시 처리를 재개하면, 화상(픽처)의 도중에서 표시가 행하게 되어, 이후의 화상(픽처)의 처리와 표시장치의 표시와의 동기를 취할 수 없는 경우가 생긴다.
즉, 초기화 후 곧 최초의 화상표시를 픽처동기신호(예를들면, 수직동기신호)와 동기하여 실행하면, 이후, 동기가 어긋난 화상이 표시된다(화상(픽처)의 경계가 화면상에 표시된다).
MPEG 규격에서는, 시퀀스레이어에 있어서, GOP의 선두에 시퀀스헤더를 장치하고, 임의의 GOP로 부터 재생가능하게 하고 있다.
그러나, 이와 같은 화상신장처리과정의 리세트시(초기화시)에 실행해야할 처리에 대해서는 전혀 언급하지 않았다.
또, 선행기술도 이와같은 화상신장처리의 초기화의 동작에 대해서는 기술되어 있지 않았다.
본 발명의 목적은, 효율적으로 화상데이터의 신장처리를 실행할 수 있는 화상 디코딩 회로를 제공하는 일이다.
본 발명의 다른 목적은, 효율적으로 동작하는 파이프라인스테이지를 구비하는 화상 디코딩 회로를 제공하는일이다.
본 발명의 또다른목적은, 처리연산기의 사용효율의 뛰어난 화상 디코딩 회로를 제공하는일이다.
본 발명의 또다른 목적은, 리세트시(초기화시 및 재동기화시)에 확실하게 처리효율을 저하시키는 일없이 픽처의 최초의 매크로블록으로 처리를 실행할 수 있는 화상 디코딩 회로를 제공하는 일이다.
제1의 관점에 관련되는 화상신장 장치는, 들어오는 비트스트림을 받아, 세그먼트의 헤더의 정보를 해석하는 헤더복호수단과, 이 헤더복호수단으로 부터의 세그먼트의 헤더정보의 해석종료를 표시하는 신호에 응답하여 데이터처리 개시지시신호를 발생하는 제어수단과, 이 데이터처리 개시지시신호에 응답하여 가동되며, 세그먼트의 헤더에 이어지는 데이터블록에 예정된처리를 실행하는 데이터처리수단을 구비한다.
헤더복호수단은, 데이터에 이어서 제공되는 헤더의 데이터를 연속해서 해석하고, 이것에 의해 하나의 처리구간은, 데이터블록의 처리가 비로소 헤더의 해석으로 종료한다.
제2의 관점에 관련되는 화상신장 장치는, 제공된 비트스트림으로 부터 세그먼트의 헤더를 검출하며, 이 헤더정보의 해석을 행하는 해석수단을 포함한다.
이 해석수단은, 헤더정보의 모든 해석종료를 표시하는 신호를 발생하는 수단을 포함한다.
제2의 관점에 관련되는 화상신장 장치는, 또한, 세그먼트의 헤더에 이어지는 데이터블록의 데이터를 가변장복호처리하여 고정장 부호데이터를 생성하는 수단을 포함하며, 해석수단의 해석결과에 따라서 데이터블록의 데이터를 압축전의 화소데이터로 복원하는 데이터처리수단과, 해석수단 및 가변장복호수단의 어떤처리에 있어서 에러가 검출되었을때, 그 에러를 표시하는 에러검출신호를 발생하는 에러검출수단과, 이 에러검출신호에 응답하여 들어오는 비트스트림에서 예정된 패턴을 가지는 스타트코드를 검출하는 코드수단과, 코드검출수단으로 부터의 코드검출신호에 응답하여, 해석수단을 활성화하는 활성화수단과, 에러검출수단의 활성화시 해석수단으로 부터의 해석종료지시 신호에 응답하여, 소정의 조건이 만족될 때까지 데이터처리수단의 활성화를 늦치게하는 수단을 구비한다.
제3의 관점에 관련되는 화상신장 장치는, 화상신장처리의 초기화를 요구하는 리세트요구신호에 응답하여, 처리기동신호를 생성하는 제어수단과, 상시 제어수단으로 부터의 처리기동신호에 응답하여, 예정된 패턴을 가지는 스타트코드를 들어 오는 비트스트림에서 검출하는 코드검출수단과, 이 에러검출시, 코드검출수단의 코드검출신호에 응답하여, 들어오는 비트스트림으로 부터 세그먼트를 검출하여, 그 헤더의 정보를 해석하고, 그 헤더 정보의 모든해석이 종료한 것을 표시하는 신호를 발생하는 헤더해석수단과, 이 헤더 해석종료지시 신호에 응답하여, 소정의 조건이 만족될 때까지, 이 세그먼트의 데이터블록의 처리를 행하는 데이터수단의 동작을 정지시키는 수단을 구비한다.
제1의 관점에 관련되는 화상신장 장치에 있어서는, 데이터블록의 복호에 이어서 헤더의 해석을 행하며, 이 헤더의 해석이 모두 종료한 후에 데이터처리개시를 지시하고 있다.
하나의 처리구간은 데이터블록의 처리로 비로소 헤더의 해석으로 종료한다.
데이터처리개시가 지정되면 데이터처리수단은 곧 처리를 실행한다.
따라서 처리연산기의 정지기간이 짧아지며, 처리연산기의 사용효율이 높아진다.
또, 처리연산기의 대기시간이 짧아지므로, 1처리구간의 시간기간을 짧게할 수가 있고, 고속처리를 실현할 수가 있다.
제2의 관점에 관련되는 화상신장 장치는, 헤더해석 과정 또는 가변장복호과정에서 에러가 발생했을때, 소정의 패턴을 가지는 스타트코드를 검출, 이 스타트코드에 이어지는 세그먼트의 헤더를 해석하여 해석종료 후 소정의 조건이 만족될 때까지, 그 해석된 헤더에 이어지는 데이터블록의 처리를 늦추고 있는 것이다.
에러발생시에 있어서도, 소정의 세그먼트로 부터 처리를 개시하고, 이 처리개시시에 있어서도 처리구간이 데이터블록의 처리로 부터 시작되므로, 에러 회복 후의 처리 개시에 있어서도 연산처리기의 사용효율의 저하를 억제할 수가 있다.
또 처리구간이 데이터블록의 복호처리로 부터 시작되는 규칙성을 유지할 수가 있다.
제3의 관점에 관련되는 화상신장 장치에 있어서는, 리세트 요구시에 소정의패턴을 가지는 스타트코드를 검출하고, 그 스타트코드에 이어지는 세그먼트의 헤더를 해석하여 이후의 처리를 소정의 조건성립까지 정지한다.
리세트 요구시에 있어서도 확실하게 소망의 위치의 세그먼트의 매크로블록으로 부터 처리를 개시할수가 있다.
[실시예]
제1도는, 본 발명에 따르는 화상신장 장치에서의 가변장복호부의 1처리구간의 동작을 표시하는 도면이다.
가변장부호복호부(이하, 디코더(VLD)라 칭함)의 1처리구간 PS1은, 매크로블록의 각블록의 데이터의 복호를 행하는 복호기간 PS2과, 이 복호기간 PS2 에 이어지는 헤더 정보의 해석을 행하는 기간 PS3를 포함한다.
복호기간 PS2는, MB 동기신호 MBSYNC의 어서트에 응답하여 개시되며, 이 기간 PS2로, 양자화 인덱스를 기본으로 한 가변장심벌군으로 된 블록데이터의 복호가 행하여진다.
헤더해석기간 PS3에서는, 다음의 처리구간에서 복호되는 헤더부분의 정보(시퀀스헤더, 픽처헤더가 매크로블록헤더에 가해서 포함되는 경우도있음)이 모두 해석된다.
해석기간 PS3의 종료후, 즉, 다음의 매크로블록헤더의 모든 정보의 해석 종료 후는, 소정의 조건이 성립할 때까지 다음의 처리구간 PS1의 개시 즉 다음의 매크로블록의 블록의 데이터의 복호처리개시가 늦춰지고 있다.
여기서 제1도에 있어서는, 해석기간 PS3의 종료시점에 있어서 이어서 다음의 매크로블록의 블록데이타의 복호가 행하여지도록 표시된다.
그러나 이 해석기간 PS3의 시간기간은, 헤드정보에 응해서 변동한다.
복호블록데이터(매크로블록의 각 블록의 데이터는 가변장부호화되어 있고, 부호장은 틀리다.
이 가변장부호의 데코드를, 예를들면 1 심벌/1 크록사이클의 속도로 행하면, 매크로블록의 각 블록의 화소수는 8화소×8화소이며, 1 블록당의 최대의 수는 64개다.
따라서 이 복호기간 PS2의 시간기간을 상술한 것과 같이 설정했을 경우, 고정시간장으로 할 수가 있다.
1 심벌/1 클록사이클의 비율로 가변장부호를 행하는 경우에 있어서, 런렌스 데이터를 복호하고, 이 복호된 런렌스정보에 따라서 차례로 각 블록의 DCT 계수가 구하여진다.
따라서, 이 경우, 런·렌스·디코더에 요하는 시간의 최대치는 예정할 수가 있고, 이 런·렌스·데코드에 요하는 시간을 사전에 일정하게 설정해두면, 데코드된 런렌스 정보로 부터 1 클록당 1 화소의 비율로 블록의 DCT 계수 데이터를 구하는 구성으로하면, 마찬가지로 이 경우에도, 시간기간은 고정하게 된다.
런·렌스디코더에 요하는 시간이 변동하는 경우에 있어서, 복호기간 PS2 의 시간기간이 변동하는 구성으로 되는 경우에 있어서도, 그 블록데이터의 복호에 요하는 시간기간은 일정한시간(최대의 복호시간정도)이내로 억제할 수가 있다.
디코더(VLD)로 부터는 고정장의 DCT 계수(양자화인덱스)가 출력된다.
제1도에 표시하는 처리기간의 구성에 따르면 이하의 이점을 얻을 수 있다.
MB 동기신호 MBSYNC에 동기하여 매크로블록의 블록의 데이터의 복호가 행하여진다.
따라서, 화상 디코딩 회로에 포함되는 각 연산기가 헤더해석 종료 후 기다리는일없이 동작을 개시할 수가 있다.
따라서, 이 역량자화기, 가변장복호화기, 스캔변환기, 역이산코사인변환기 및 화소 재구성기가 기다리는 일없이 처리를 개시할 수가 있고(파이프라인화 되어있을 때 특히,) 화상 디코딩 회로의 각종연산기의 사용효율을 개선할 수가 있다.
또 복호영역PS2 및 해석영역 PS3의 시간기간은, 화상 디코딩 회로에 포함되는 각처리연산기를 후에 설명하도록 파이프라인적으로 동작시키므로, 대폭으로 짧게 할 수가 있다.
제2(a)도, 제2(b)도는, 처리구간의 구성을 구체적으로 표시하는 도면이다.
제2(a)도에 있어서는, 1처리구간의 복호영역 PS2는, 가변장부호를 가변장복호처리하여 고정장의 양자화 DCT계수를 생성하는 가변장복호처리(VLD), 이 가변장복호된 DCT 계수데이터의 역양자화처리(IQ), 역양자화된 DCT 계수의 스캔순서의 변환을 행하는 스캔 변환처리, 스캔변환된 처리의 역이산코사인변환기(IDCT) 및 이 역이산코사인 변환 후의 화소데이터로 부터 본래의 화소데이터를 복원하는 화소복원처리(DPCM)을 포함한다.
이 제2(a)도에 있어서는, 처리구간에서의 복호영역 2의 시간기간은, 각 처리연산에 요하는 시간의 합계가 된다.
제2(b)도는 이 복호영역 2에 포함되는 각 처리를 파이프 라인적으로 실행하는 경우의 구성의 일예를 표시하는 도면이다.
가변장복호처리(VLD)가 종료하면, 가변장부호복호기에 있어서는, 헤더정보의 해석을 행하는 것이 가능하게 된다.
따라서, 이 제2(b)도에 표시하는 역량자화처리(IQ), 스캔변환처리(버퍼메모리에의 어드레스변환을 수반하는 데이터의 라이트·리드), 역이산변환처리(IDCT) 및 화소복원처리(DPCM)의 처리와 병렬로, 다음의 세그먼트의 헤더정보의 해석을 행할 수가 있다.
따라서 파이프라인 형태로 처리를 행하므로서 복호영역 PS2의 시간기간의 단축과, 이 파이프라인화에 의한 헤더정보해석과 정보해석과 블록데이터의 보호와의 병렬처리에 의한 해석영역 PS3의 시간기간의 단축을 실현할 수가있고, 1처리구간의 시간기간을 대폭으로 저감할 수가 있으며, 고속연산처리(신장처리)를 실행할수가 있다.
이 파이프라인화의 구성에 대해서는 뒤에 다시 상세하게 설명한다.
본 발명에 따르는 화상장치의 개략외부구성은 제33도에 표시하는 것과 같다.
가변장복호화기(1212) 및 제어회로(1226)의 내부 구성이 다르다.
이 구성에 대해서는 뒤에 설명한다.
제3도는, 1처리구간에서의 디코더(화상 디코딩 회로)의 동작과 외부메모리장치(DRAM)의 포트의 동작을 표시하는 도면이다.
제3도에서, 화상 디코딩 회로(디코더)에 있어서, MB 동기신호 MBSYNC의 어서트가 응답하여, 세그먼트의 블록의 데이터의 복호가 개시된다.
이 블록데이터의 복호가 종료하면, 다음의 세그먼트의 헤더정보의 개시가 행하여진다.
헤드정보의 해석이 종료하면 마치 1처리단위 시간기간의 종료해 있고, 다음의 세그먼트의 매크로블록의 블록데이터의 복호가 개시되어 있다.
한편, DRAM에 대해서는, 먼저 MB동기신호 MBSYNC의 어서트에 응답하여, 앞의 처리단위시간기간에서 복호된 화소데이터의 기록이 행하여진다.
뒤이어서, 외부로부터 제공되는 비트스트림이 제32도에 표시하는 FIFO 인터페이스(1212)를 통해서 예정된 시간기간의 사이에 기록된다.
이 DRAM 포트에의 비트스트림의 기록(레이트버퍼에의 기록)이 종료하면, 뒤이어서 표시용의 화상데이터가 판독된다.
이 표시용의 화상데이터(예를들면 매크로블록의 화소데이터)의 판독이 종료하면, 이어서 예측부호화된 화소데이터의 복원에 사용되는 예측화상데이터의 판독이 행하여진다.
이 예측화상데이터의 판독에 있어서는, B 픽처의 경우에는, 예를들면, 내삽예측(內揷豫測)의 경우, 사간적으로 전 및 후의 2개의 판독에 있어서는, 복호되는 블록데이터의 부호화 모드에 따라 다르다.
예측화상데이터의 판독이 종료하면, 이어서, 처리해야할 비트스트림의 판독이 행하여진다(레이트버퍼의 판독).
이 레이트버퍼의 판독에 있어서는, 판독되는 데이터의 량은 사전에 설정된다.
레이트버퍼의 판독을 행하는 처리단위에서의 헤더정보의 해석에 사용되는 비트스트림 및 다음의 처리단위에 있어서 복호되는 세그먼트의 블록데이터가, 뒤에 설명하는 가변장부호복호화기에 포함되는 버퍼에 준비시키는 것이 필요하게 된다.
각 처리단위구간에 있어서 레이트버퍼로 부터 비트스트림의 판독을 행하므로서, 대응한 처리구간에서의 헤더해석에 사용되는 비트스트림 및 다음의 처리단위에서 사용되는 블록데이터의 가변장부호복호화기에 포함되는 버퍼메모리내에의 격납(prefetch)를 보증할 수가 있다.
이 레이트버퍼의 판독 후, DRAM 리프레시가 행하여져, 외부메모리 장치인 DRAM의 기억하는 메모리 데이터의 리프레시가 실행된다.
DRAM 포트의 동작에있어서 1처리단위시간내에서 이상의 동작이 차례로 실행된다.
이 제3도에 표시하는 동작 시퀀스에 있어서는, DRAM 리프레시 동작종료후, 다음의 처리구간이 시작될때까지, 전혀 액세스하지 않고, DRAM 포트는 비여있는 상태로 된다.
또한, DRAM 리프레시는, 1처리구간에 있어서 최후에 행하도록 표시된다.
그러나, 이 DRAM 리프레시는, 1처리단위의 구간에 있어서, 적당한 타이밍으로 실행되면 좋다.
제4도는, 1처리구간에서의, 화상 디코딩 회로 및 DRAM 포트의 동작의 별도의 시퀀스를 표시하는 도면이다.
제4도에 있어서는, MB 동기신호 MBSYNC의 어서트에 동기하여, 화상 디코딩 회로(디코더)에 있어서는, 제3도에 표시하는 시퀀스와 마찬가지로, 블록데이터(매크로블록의 데이터)의 복호가 행하여져, 이어서 복호종료 후, 다음의 세그먼트의 헤더정보의 해석이 행하여진다.
제4도의 표시하는 시퀀스에 있어서는, 헤더정보의 해석이 종료해도, 다음의 세그먼트의 블록데이터의 복호의 처리의 개시는 지체된다.
한편, DRAM 포트에 있어서는, MB 동기신호 MBSYNC의 어서트에 동기하여, 복호가 끝난 데이터의 기록, 레이트 버퍼에의 기록, 표시용 화상데이터의 판독, 예측화상데이터의 판독 및 레이트버퍼의 판독이 차례로 실행된다.
레이트버퍼의 판독전에, DRAM 리프레시가 실행된다.
이 DRAM 리프레시는, 앞에서 기술한 것과 같이, 1처리구간내에서 임의의 타이밍으로 실행가능하다.
레이트버퍼의 판독이 종료하므로서, 하나의 처리구간이 종료하므로서, 하나의 처리구간이 종료한다.
이 하나의 처리구간의 종료에 응답하여, 다음의 세그먼트의 블록데이터의 복호개시를 표시하기 때문에 MB 동기신호 MBSYNC 가 어서트된다.
헤더정보의 해석이 행하고난후에 다음의 블록데이터의 복호의 개시까지의 사이의 비여있는 시간에 대해서는 뒤에 상세하게 설명한다.
이 1처리구간내에 있어서는 DRAM 포트에 대해서, 소정의 순서로 복호끝난 데이터의 기록, 레이트버퍼의 기록, 표시용의 화상데이터의 판독, 예측화상데이터의 판독 및 레이트버퍼의 판독을 행하므로서, DRAM의 액세스에 있어서, 이 액세스의 우선순위를 판별할 필요가 없고, DRAM에의 액세스를 조정하기 위한 버스얼버터(bus arbiter)를 설치할 필요가 없고, 장치구성이 간략화 된다.
또, 1처리구간의 최초에 복호끝난 데이터의 기록을 행함으로서, 뒤에 상세하게설명할 화상 디코딩 회로의 연산기의 파이프라인구성에 대응할 수가 있다.
먼저 복호끝난 데이터의 기록을 행하므로서, 계속해서 실행되는 표시용화상데이터의 판독에 필요하게 되는 화상데이터를 DRAM에 준비할 수가 있다.
즉, B 픽처인 경우, 복호끝난 데이터가 곧 표시된다(B 픽처는 예비화상으로서는 사용되지않는다).
복호끝난 데이터의 기록에 계속해서 레이트버퍼에의 비트스트림의 기록을 행하므로서, DRAM의 동작 모드(기록모드/판독모드)를 변경하는 일없이, 또 외부로부터 제공되는 비트스트림에 지연을 일으키지 않고 레이트버퍼에 비트스트림을 기록할 수가 있다.
표시용화상데이터의 판독을 예측화상데이터의 판독보다도 앞서 하므로서, 외부에 별도로 설치된 표시제어장치의 동작을 지체시킬 필요가 있다.
즉 예측화상데이터의 판독에서는, 이 세그먼트의 처리방법(예측부호화)에 응해서 판독되는 예측화상의 수가 틀리다.
따라서, 예측화상 데이터의 판독의 종료시점은 각화상에 의해 다르다.
따라서, 1처리구간내에 있어서 종료시점의 변동하는 예측화상데이터보다도 앞서서 표시용의 화상데이터를 판독하므로서, 1처리구간내에 있어서 거의 같은 타이밍으로 표시용화상데이터를 표시제어장치에 제공할 수 있고, 표시제어장치의 사용효율이 손상되는 일은 없다.
레이트버퍼로 부터의 비트스트림의 판독을 처리구간의 최후의 행하는 것은, 다음의 처리구간에서의 블록데이터복호처리 및 헤더해석에 필요하게되는 비트스트림을 가변장부호복호화기(1212, 제33도 참조)에 공급하는 것이 요구할뿐이며, 1처리구간의 최후에 시행해도 전혀 문제는 없다.
예측화상데이터의 판독을 레이트버퍼의 판독보다도 앞서 실행하는 것은, 화상 디코딩 회로의 파이프라인구성에 있어서, 확실히 예측화상데이터를 화상 디코딩 회로의 화소재구성기에 설치된 버퍼메모리로 판독하여, 이어서 다음의 처리구간의 개시에 동기하여 예측화상을 생성하는 연산처리를 확실하게 실행할 수 있도록 하기 위한 것이다.
또, 이 MB 동기신호 MBSYNC에 동기하여 DRAM 포트의 액세스를 개시하는 구성으로 하므로서, 예측화상데이터의 판독타이밍을 사전에 예측할 수가있고, 버스제어가 용이하게 된다(DRAM에의 액세스제어는 후에 그 구성은 상세하게 설명하지만 제32도에 표시하는 제어회로(1226)에 의해 행하여진다).
즉, 앞서서 헤더정보를 해석하므로서, 매크로블록의 타이프 및 화면상의 위치를 알 수가 있다.
DRAM은 프레임메모리의 구성을 구비한다.
따라서 앞서서 헤더정보를 해석해 두므로서, 복호끝난 데이터의 기록 및 표시용의 화상데이터의 판독에서의 로우어드레스의 변화등을 사전에 예측할수가 있으며, 이에 따라서 이들의 복호끝난 데이터의 기록 및 표시용화상데이터의 판독에 요하는 시간을 예측할 수가 있고, 따라서 예측화상데이터의 예측화상데이터의 판독타이밍을 예측할수가 있다.
이것에 의해, 제32도에 표시하는 메모리 인터페이스의 제어와 화소재구성에서의 예측화상데이터의 판독동작과의 조정을 행할 수가 있다.
제5도는, 클록사이클을 단위로하여 파이프라인을 구성하는 역양자화기의 구성을 개략적으로 표시하는 도면이다.
이 역양자화기(1214)는, 가변장복호된 고정장데이터로된 양자화 DCT 계수데이터를 입력버스(A101)를 통해서 받고 또한 각 블록(매크로블록의 각블록)의 시작을 표시하는 입력동기신호를 신호선(A103)을 통해서 받아, 파이프라인 형태에서 양자화처리를 행하여, 출력버스(A102)로 부터 DCT 계수데이터를 출력하고 또한 신호선(A104)를 통해서 그 출력데이터의 블록의 시작을 표시하는 출력동기신호를 출력한다.
역양자화기(1214)에 있어서는, 고정장부호로 변환된 양자화DCT 계수 각각에 대하여, 사전에 준비된 양자화테이블을 사용하여 양자화시와 역의연산(예를들면, 양자화테이블의 대응한계수로 승산(乘算) 한다 ; 양자화시에 양자화테이블의 대응의 계수로 할산(割算)되어있을 때) 처리가 행하여진다.
이때, 승산처리가 파이프라인으로 실행된다.
일반적으로, 제6도에 표시하는 것과 같이, VLD, IDCT 및 DPCM 처리스테이지에 비하여, 이 역양자화기(1214)는, 128단여분의 파이프라인을 구비한다.
따라서, 제6도에 표시하는 것과 같이, 입력동기신호가 신호선(A103)을 통해서 제공되어 차례로 입력버스(A101)를 통해서 데이터가 제공되면, 역양자화처리가 실시된 데이터는 128 사이클경과한 후에 출력된다.
이 역양자화기(1214)에 제공되는 입력데이터는, 제33도에 표시하는 가변장부호복호화기(1214)로 부터 제공된다.
이 역양자화기(1214)로 부터의 출력버스(A102)에 나타나는 출력데이터가 모두 출력될때까지, 또는 제2(b)도에 표시하는 것과 같이, 스캔변환기를 통해서 역DCT기에 제공될 때까지 입력데이터는, 그것보다도 최소한 128사이클전에 종료한다.
따라서 이 사이 헤더해석을 위해서 가변장부호복호화기를 이용할 수가 있다.
따라서 이 역양자화기 이후의 처리와 헤더해석을 병행하여 실행할 수가 있다(제2(b)도 참조).
제7도는, 화상 디코딩 회로를 위해서 타의 파이프라인형태를 표시하는 도면이다.
제7도에 표시하는 화상 디코딩 회로에 있어서, MB 동기신호 MBSYNC에 동기하여 4 단의 파이프라인에 의해 파이프라인처리가 실행된다.
제7도에 있어서, 제1단째의 파이프라인에 있어서는, 예측화상의 DRAM 로 부터의 판독, DCT 계수의 가변장복호처리(고정장DCT 계수데이터의 생성),및 역양자화처리가 행하여진다.
이 DRAM로 부터의 예측화상데이터의 판독에 있어서는, 앞의 처리구간에 있어서 해석된 헤더정보로 부터 동(動)벡터가 추출되며, 이 추출된 동벡터에 따라서 DRAM로 부터 예측화상데이터의 판독이 행하여진다.
제2단의 파이프라인 스테이지는, 이 DRAM로 부터 판독된 예측화상데이터의 필터처리가 행하여진다.
이 예측화상의 필터처리에서는, 계측정도가 분수정도인 경우에서의 복수의 예측 화상의 내삽(內揷)에 의해 합성(평균화)가 행하여진다.
내삽예측의 B 픽처의 경우에는, 시간적으로 전후의 2개의 픽처의 화상데이터의 합성이 행하여진다(각 시간적거리에 따른 무게를 주어 화상데이터를 합성한다).
이것에 의해, 예측화상데이터의 생성이 행하여진다.
제3단째의 파이프라인스테이지는, 역이산코사인변환기(IDCT) 및 예측차분부호의 복호처리(DPCM 복호)가 행하여진다.
IDCT 처리에 있어서는, 역양자화처리(IQ)를 받은 DCT 계수데이터의 역이산코사인 변환처리가 실행된다.
DPCM 복호처리과정에서의, IDCT 처리에 의해 생성된 화소데이터와, 예측화상 필터 처리에 의해 생성된 예측화상 데이터와의 예측차분부호화(양자의 가산)이 행하여져, 본래의 화소데이터가 생성된다.
이 매크로블록이 IDCT 처리된 데이터가 본래의 화소데이터에 대응하는(DC 예측을 행하지않고 있는경우), 이 DPCM 복호처리되어서 복원된 화소데이터는 화상 디코딩 회로에 포함되는 버퍼에 기록된다.
제4번째의 파이프라인은, 이 복호화상데이터의 DRAM의 기록이다.
즉, 버퍼로 부터 DRAM의 기록이 행하여진다.
이 화상 디코딩 회로의 헤더해석 이후의 처리를 세그먼트(매크로블록)단위로 파이프라인화하므로서, 처리단위의 시간기간을 대폭으로 단축할 수가 있다.
제7도에서는, 따라서 MB 동기신호 MBSYNC의 어서트되는 간격을 1처리구간으로하면, 하나의 매크로블록의 블록데이터가 복호되기 때문에 4처리구간이 필요하게 된다.
이 각 처리구간에서, 헤더정보의 해석이 실행된다.
제7도에 있어서는, 일예로서 디지털 NTSC 신호(유효화소수 720/라인, 480라인/프레임)을 프레임마다 16×16 화소로된 매크로블록 단위로 처리하는 경우의 동작 시퀀스를 표시한다.
제1의 매크로블록 MB#1에서 제1350번째의 매크로블록 MB#1350 까지의 처리가 4 단의 세그먼트단위의 파이프라인(1처리구간에서 1 세그먼트(매크로블록)을 처리한다)에 의해 처리되어 있다.
이 화상 디코딩 회로에서의 내부의 연산처리조작을 파이프라인화 했을 경우의, DRAM 포트에의 액세스도 마찬가지로, 제7도에 있어서 화상 디코딩 회로의 내부의 파이프라인스테이지에 대응해서 표시한다.
이 제7도에 표시하는 것과 같이, 화상 디코딩 회로의 각 처리연산기의 세그먼트단위에서의 파이프라인화 처리에 의해, 화상 디코딩 회로의 단위인 세그먼트의 처리를 복수의 처리구간에 걸쳐서 파이프라인적으로 실행할 수가 있고, 따라서 1 세그먼트의 모든처리에 요하는 시간(1처리단위의 시간)을 실효적으로 짧게 할 수가 있다.
제7도에 표시하는 것과 같이, 4단의 파이프라인의 구성인 경우, 1처리단위의 약 1/4의 시간의 처리구간에서 하나의 세그먼트가 처리된다.
이 제7도에 표시하는 처리구간의 시간기간은 일정한 클록사이클수에 고정적으로 설정되어도 좋다.
그러나, 이 세그먼트의 속성에 응해서 처리구간의 시간기간(클록사이클수)를 변동시킬 수가 있다.
제8도는, 처리구간의 시간기간을 변경하기 위한 동작플로를 표시하는 도면이다.
이하, 제8도를 참조하여, 처리구간의 클록사이클수를 변경하기 위한 방법에 대해서 설명한다.
또, MB 동기신호 MBSYNC가 어서트 된다(스텝S1).
이 MB 동기신호 MBSYNC의 어서트에 응답하여 제어회로(1226)(제33도참조)에 포함되는 타이머가 기동된다(스텝S2).
타이머 기동후, 앞의 처리구간에 있어서 해석된 헤더 정보에 기본으로 하여 세트 시간을 변경할 필요가 있느냐 아니냐의 판별이 행하여진다(스텝S3).
이것은, 매크로블록의 처리방법이 복잡한 경우(예를들면 분수정도에서의 동예측부쌍방향 예측부호화처리가 행하여진 B 픽처등의 경우), 그 처리단위시간이 길게 된다.
이 경우, 이 해석헤더정보에 따라서 세트시간을 길게한다.
스텝S3에 있어서, 세트시간의 변경이 필요하게 되는 경우에는, 그 해석된 헤더정보에 따라서 처리구간의 시간을 적당한 값(길게 또는 짧게)으로 설정한다.
스텝S3에 있어서 세트시간의 변경이 필요로 하지 않는다고 판별됐을 경우, 스텝S4의 세트시간의 변경처리는 스킵된다.
이어서, 타이머의 카운트시간이 세트시간에 도달했느냐 아니냐의 판별이 행하여진다(스텝S5).
세트시간이 경과했을 경우에는, 다시 스텝S1에로 되돌아가며, 다음의 처리구간의 시작을 표시하는 MB 동기신호 MBSYNC가 어서트 된다.
세트시간이 경과할때까지 스텝S5가 반복해서 실행된다.
또한, 스텝S3 및 스텝S4는, 스텝S1과 병행하여 행해도 좋다.
세트시간의 변경은, 타이머를 카운터로 구성하고, 이 타이머의 카운트 값과 레지스터의 기준치의 일치/불일치를 비교하는 비교기의 비교결과에 의해 MB 동기신호 MBSYNC를 어서트하는 구성의 경우에서는, 레지스터의 격납치가 변경되어도 좋다.
또, 가변단수의 카운터를 사용하여, 이 세트시간 변경시에는 카운터의 단수를 변경하는 구성으로 하면, 카운터의 카운트업신호를 MB 동기신호 MBSYNC 로서 이용하는 구성을 사용할수도 있다.
처리구간의 시간기간이 일정한 경우에는, 스텝S3 및 스텝S4가 생략된다.
제9도는, 처리구간의 시간기간을 설정하는 타의 수법을 표시하는 도면이다.
이 제9도에 표시하는 제어동작도, 제32도에 표시하는 제어회로(1226)에서 실행된다.
이 제어회로(1226)의 구성에 대해서는 뒤에 상세히 설명한다.
처리구간이 시작되고, MBSYNC가 어서트된다(스텝S10).
이어서 스텝S12, 스텝S14 및 스텝S16이 병렬형태로 시행된다.
스텝S12에 있어서는, 레이트버퍼로 부터의 가변장부호복호화기에서의 비트스트림의 판독이 종료했느냐 아니냐의 판별이 행하여진다.
스텝S14에 있어서는, MB동기신호 MBSYNC로 부터의 소정의 세트시간이 경과했느냐 아니냐의 판별이 행하여진다.
스텝S16에 있어서는, 헤더정보의 해석이 모두 종료했느냐 아니냐의 판별이 행하여진다.
이 헤더정보의 해석이 모두 종료했느냐 아니냐를 표시하는 신호는, 뒤에 상세하게 설명하지만, 가변장부호복호화기로 부터 출력된다.
스텝S18에 있어서, 이들의 판단결과가 모니터되고, 스텝S12, 스텝S14 및 스텝S16에서의 판별결과가 모두 긍정적(YES)인 경우에는, 스텝S18로부터 스텝S10로 돌아가며, 다음의 처리구간의 개시를 지정하는 MB 동기신호 MBSYNC가 어서트된다.
이 제9도에 표시하는 처리동작을 실행하므로서, 확실히 필요한 처리가 종료 한 후에 다음의 처리구간을 개시시킬 수가 있다.
데이터 처리도중(예를들면 레이트버퍼로 부터의 데이터판독 동작중 또는 해석동작중)에 다음의 처리구간이 시작되는 것을 방지 할 수가 있다.
따라서, 고정적으로 처리구간의 시간사이클을 설정하는 구성에 비하여, 확실하게, 모든 필요한처리가 종료한 후에(모두 필요한 데이터가 제공된 후에), 가변장복호 동작으로 부터 화소복원처리까지의 일련의 처리가 파이프라인형태로 개시된다.
이 제9도에 있어서, 스텝S14에서의 세트시간은 복호대상이되는 세그먼트의 속성에 응해서 변경가능하게 해도 좋다(제8도참조).
이상과 같이, 화상 디코딩 회로의 각처리연산기를 세그먼트단위로 파이프라인화하므로서, 세그먼트의 처리구간을 대폭으로 단축할 수가 있다.
[에러처리동작 :]
화상 디코딩 회로에 입력되는 비트스트림의 데이터는, 에러비트를 포함할 가능성이 있다.
가변장부호화 처리된 비트스트림에서는 심볼의 길이가 다르다.
따라서, 에러비트가 혼입했을 경우, 하나의 심볼의 에러는 후속의 심볼에도 영향을 주게되어, 정확한 가변장복호처리를 행할 수 없게 된다.
화상 디코딩 회로는, 이 혼입한 에러비트에 의해 정상인 복호 동작을 행하는 정상상태로 부터 정확한 복호처리를 행할 수 없는 비정상상태로 천이한다.
화상 디코딩 회로에는, 이와같은 비정상상태로 부터 정상상태의 복귀 및 비정상상태에서의 복호화상의 화질 열화를 최소한으로 억제하는 처리를 행하는 것이 요구된다.
여기서, 에러검출로 부터 정상상태에의 복귀까지 행하여지는 처리를 에러처리라 칭한다.
이 비정상상태에 있어서 처리된 세그먼트에 행하여지는 표시화면상에서의 에러의 영향을 작게하는 처리는, 「에러 컨슬멘트처리」라 부른다.
이하, 이 에러처리동작 및 에러컨슬멘트처리에 대해서 설명한다.
제10도는, 에러검출시의 화상 디코딩 회로의 동작을 개략적으로 표시하는 플로도이다.
이하, 제10도를 참조하여 에러검출시의 화상 디코딩 회로의 동작에 대해서 설명한다.
먼저, 스텝S20에서 에러가 검출된다.
이 에러검출에 있어서는, 예를들면, 가변장부호복호화기에 있어서, 스타트코드를 포함하는 해석시에서, 필요로 하는 심볼이 발견되지 않는 경우 및 양자화 인덱스의 가변장복호처리에서 대응의 심볼이 발견되지 않는 경우에 에러가 생겼다고 판정되어서 에러검출신호가 생성된다.
에러가 검출되면, 특정의 패턴을 가지는 스타트코드의 탐색이 행하여진다(스텝 S21).
이 스타트코드에는, MPEG 규격에 있어서는, 레이어의 시작을 표시하기 때문에, 슬라이스스타트코드, 픽처스타트코드, GOP스타트코드 및 시퀀스 에러코드 등이 있다.
이 탐색과정에 의해, 스타트코드가 검출되면, 검출한 스타트코드가, 정상복귀에 유효하느냐 아니냐의 판별이 행하여진다(스텝S22).
예를들면, 스타트코드의 하나인 시퀀스에러 코드가 검출되어도, 이것은 정상복귀(정상상태에의 복귀)에는 유효하지 않다.
따라서, 또 별도의 스타트코드의 탐색이 계속된다.
정상복귀에 유효한 스타트코드가 검출되면, 그 스타트코드에 계속되는 헤더의 해석이 행하여진다(스텝S23).
이 헤더의 해석에서는, 스타트코드 후의 최초의 세그먼트에 포함되는 헤더정보의 해석까지 실행된다.
이 헤더해석에 의해, 정상(정상상태)에 복귀해야할 세그먼트가 식별된다.
즉, 제11도에 표시하는 것과 같이, 스타트코드에 계속되는 헤더(세그먼트의 매크로블록의 앞의 매크로블록헤더까지의 모든 헤더를 포함한다)(1400)에는, 에러발생시에 정상상태로 복귀해야 할 세그먼트(매크로블록)의 화면상의 위치를 표시하는 재동기(再同期) 세그먼트어드레스정보(1402)가 격납되어 있다.
예를들면, MPEG규격에서는 이 재동기 세그먼트어드레스정보(1402)는, 슬라이스 헤더에 포함되는 슬라이스·버티컬·포지션과 매크로블록 어드레스인크리먼트에 대응한다.
이 헤더(1400)를 해석하므로서 재동기 세그먼트어드레스가 고정되며, 비정상상태로 부터 정상상태에 복기해야할 세그먼트가 동일할 수가 있다.
예를들면, MPEG 규격에 있어서, 유효스타트코드가, 시퀀스스타트코드, GOP 스타트코드, GOP스타트코드 및 픽처스타트코드의 경우, 정상상태로 복귀해야할 세그먼트는, 픽처의 최초의 세그먼트이다.
검출된 스타트코드가 슬라이스 스타트코드의 경우, 슬라이스레이어는 에러의 전반을 방지하기 위해서 설치되어 있어서, 이 슬라이스레이어의 선두의 세그먼트로 부터 정상상태로 복귀할 수가 있다.
슬라이스레이어의 헤더에는 앞에 기술한 것과 같이, 화면상의 위치를 표시하는 정보의 위치를 표시하는 정보가 포함되어 있고, 이 화면상의 위치를 표시하는 정보가 재동기 어드레스로서 이용된다.
헤더정보를 해석한 후, 이 헤더에 계속하는 매크로블록의 데이터의 가변장복호처리는 소정의 조건이 성립할 때까지 지체하게 된다.
즉, 다음에 이 화상 디코딩 회로에 있어서 처리해야 할 세그먼트가, 스텝S23에 있어서 행하여진 헤더해석으로 구하여진 매크로블록 어드레스와 일치하느냐 어떠냐의 판별이 행하여진다(스텝S24).
스타트코드 탐색시 화상신장장치에 제공되는 비트스트림은 스타트코드 탐색에 사용되어, 비트스트림에 포함되는 매크로블록데이터의 복호처리는 행하여지지 않는다.
한편, 화상 디코딩 회로로 부터는 각 처리구간마다 뒤에 상세하게 설명하는 에러 컨슬멘트처리가 실시된 화상데이터가 출력된다.
예를들면, 제어장치에 있어서, 각 처리구간을 규정하는 MB동기신호MBSYNC를 카운트하므로서, 각 처리구간에서 처리되는 세그먼트의 어드레스(화면상의 위치)를 알 수가 있다.
따라서, 제어장치에 있어서 다음의 처리구간에서 처리해야할 세그먼트가, 헤더해석으로 구하여진 매크로블록어드레스와 일치하느냐 아니냐를 식별할 수가 있다.
다음에 처리해야할 세그먼트의 매크로블록 어드레스와 일치하는 경우에는, 제어장치의 제어하에 다음의 처리구간으로 부터 복귀한다(스텝S25).
비정상상태로 부터 정상상태에의 복귀시에 있어서도, 헤더정보가 앞에 해석되어 있고, MB 동기신호 MBSYNC에 따라서 블록데이터의 복호처리가 개시되기 때문에, 이 비정상상태로부터 정상상태에의 복귀시에 있어서도, 화상 디코딩 회로의 각 처리연산기의 사용효율의 저하는 것이 전혀 일어나지 않는다.
에러발생시, 각 처리구간에서의 예측화상 데이터의 판독을 정지하고, 이 기간을 레이트 버퍼로 부터의 데이터 판독에 이용하도록 구성되어 있어도 좋다.
에러발생시에 있어서는, 뒤에 상세하게 설명하는 것과 같이, 매크로블록의 화소데이터는 관련한 동일화상(픽처)내의 매크로블록의 화소데이터의 평균치데이터로 치환하는 것이 가능하게 되기 때문이다.
이것에 의해, 고속으로 필요한 스타트코드의 탐색을 행할 수가 있다.
제12도는, 화상 디코딩 회로에서의 에러검출로 부터 에러복귀의 처리동작에 관련하는 부분의 구성을 개략적으로 표시하는 도면이다.
제12도에서는, 가변장부호 복호화기(1212) 및 제어장치(1226)만이 표시된다.
가변장부호복호화기 및 제어장치는, 앞의 제32도에 표시하는 가변장부호복호화기 및 제어장치와같은 참조번호가 사용된다.
이것은 화상복호처리의 기능이 같은것을 표시하기 때문이며, 그 구성은 위에서 설명한 것과 같이 종래의 장치와 다르게 되었다.
제어장치(1226)은, 화상복호처리를 기동신호φACT 및 MB동기신호MBSYNC를 가변장부호 복호화기(1212)에 제공한다.
가변부호복호화기(1212)는, 에러검출신호φER, 유효 스타트코드(정상동작복귀에 유효한 스타트코드)검출 지시신호 φSD 및 세그먼트의 헤더의 정보를 모두 해석한 것을 표시하는 처리단위 복호종료지시신호를 φCPL를 출력하여 제어장치(1226)에 제공한다.
다음에 이 제12도에 표시하는 구성의 동작에 대해서, 그 동작시퀀스도인 제13도를 참조하여 간단하게 설명한다.
제어장치(1226)은, MB 동기신호 MBSYNC를 어서트하여 가변장부호복호화기(1212)에 제공한다.
가변장부호복호화기(1212)에서는, 이 MB 동기신호 MBSYNC의 동기하여, 블록데이터의 복호를 행하며, 고정장의 DCT 계수데이터를 출력한다.
이 블록데이터의 복호종료 후, 계속해서 다음의 세그먼트의 헤더의 정보를 해석한다.
헤더정보의 해석이 모두 종료하면, 가변장부호복호화기(1212)는, 처리단위복호종료지시신호 φPL를 어서트하여 제어장치(1226)에 제공한다.
제어장치(1226)는, 이 처리단위복호 종료지시신호φCPL가 어서트되면, 소정의 조건이 만족된 후에 재차 MB 동기신호 MBSYNC를 어서트하여 가변장부호복호화기(1212)에 제공된다.
이에 응답해서, 블록데이터의 복호처리가 실행된다.
이 복호처리과정에 있어서 에러가 검출됐을 때, 가변장부호복호화기(1212)는, 에러검출지시신호φER의 어서트한다.
이 에러 검출지시신호 φER의 어서트에 응답하여, 제어장치(1226)상태로 들어간다.
이 에러상태에 있어서는, 뒤에 설명하는 에러컨슬멘트처리등이 실행된다.
한편, 가변장부호복호화기(1212)에서는, 이 에러검출지시신호φER의 어서트에 응답하여, 스타트코드의 탐색이 행하여진다.
유효스타트코드가 검출되면, 가변장부호복호화기(1212)는 스타트코드검출지시신호 φSD를 어서트한다.
가변장부호복호화기(1212)는, 이 스타트코드가 검출되면, 스타트코드에 계속해서, 세그먼트의 헤더부의 정보를 해석하고, 해석이 종료한 시점에서 처리단위복호종료지시신호 φCPL를 어서트하여 제어장치(1226)에 제공된다.
제어장치(1226)는, 이 해석된 헤더정보 및 스타트코드정보에 따라서, 다음의 처리 구간에서 실행해야할 세그먼트가 헤더정보가 해석된 세그먼트이냐 아니냐를 판정하고, 이 세그먼트가 다음의 처리구간에서 실행해야 할때에는, 이 처리단위 복호종료지시신호 φCPL의 어서트에 응답하여 MB 동기신호 MBSYNC를 어서트 한다.
따라서 이 제13도에 표시하는 시퀀스에 있어서는, 에러가 발생한 처리구간의 다음의 처리구간으로 부터는 정상상태(정상상태)로 복귀한다.
제14도는, 에러검출시의 화상 디코딩 회로의 별도의 동작시퀀스를 표시하는 도면이다.
제14도에 있어서, 에러검출시에 에러검출지시신호φER가 어서트되고나서 처리단위복호안료지시신호φCPL가 어서트될 때까지, 제13도에 표시하는 동작시퀀스와 같은 동작시퀀스가 실행된다.
제어장치(1226)는, 처리단위복호종료지시신호φCPL의 어서트시, 해석된 헤더정보로 부터 이 해석된 헤더의 세그먼트가 처리해야할 시기를 판정한다(매크로블록어드레스의 검출).
다음의 처리구간에서 이 해석된 세그먼트가 실행해서는 안될때, 제어장치(1226)은, 처리단위복호종료지시신호 φCPL의 어서트와 앞의 MBSYNC로 부터의 소정의 시간(제9도참조)의 경과와 DRAM 포트의 빈것을 조건으로 하여, MB 동기신호 MBYNC를 어서트 한다.
에러시에는, 이 해석된 세그먼트의 블록데이터의 처리는 대기상태로 된다.
해석된 대기중의 세그먼트의 처리구간이 도달할 때까지, 소정시간이 경과할때마다 DRAM 포트의 빈 것을 조건으로하여 MB 동기신호 MBSYNC 가 어서트 된다.
에러상태에 있어서 DRAM포트의 빈 것을 조건으로 하는 것은, 화상 디코딩 회로로 부터의 복호끝난 데이터를 DRAM포트에 기록할 필요가 있기 때문이다.
이 에러상태에 있어서, 처리단위복호종료지시신호 φCPL는 어서트상태를 유지해도 좋다.
즉, 처리단위복호 종료지시신호 φCPL는, 다음의 처리구간에서 블록데이터가 처리해야할 때에는, MB 동기신호MBSYNC의 어서트에 의해 리세트 되도록 구성되어도 좋다.
대기중의 세그먼트가 처리되어야할 처리구간에 도달하면, MB 동기신호 MBSYNC의 어서트에 따라서 화상 디코딩 회로는 정상상태로 이행하며, 이 대기중의 세그먼트의 블록데이터의 복호를 행한다.
또한, 에러상태에서 헤더해석시에 구하여진 재동기 세그먼트 어드레스로 부터 실제로 복호처리되는 처리구간을 검출하여 정상상태로 복귀하는 경우에는, 이하의 방법을 사용할 수가 있다.
픽처의 시작을 표시하는 픽처 동기신호(예를들면 수직동기신호VSYNC)에 동기하여 리세트되는 카운터를 사용하여 MB 동기신호 MBSYNC를 카운트치에 따라서 각 처리구간의 매크로블록어드레스(화면상의 위치)를 모니터로 한다.
이 모니터된 매크로블록어드레스의 다음의 어드레스가 재동기어드레스에 같게되면, 대기중의 세그먼트의 블록데이터는 다음의 처리구간에서, 처리해야한다.
MBSYNC의 어서트 앞에 헤더정보가 모두 해석되어 있어서, 이 판정처리는, 실제에 처리가 실행되어야할 처리구간의 앞의처리구간에 있어서 확실히 행할 수가 있다.
이와같은 에러발생시에 있어서도, 헤더정보를 모두 해석한 후, 그 이후의 처리를 대기상태로서, 처리해야할때 MB 동기신호 MBSYNC에 동기하고, 그 대기중의 블록데이터의 처리를 실행하므로서, 에러상태로 부터 정상상태에의 복귀시에 있어서도, 처리해야 할 블록데이터가 곧 MB 동기신호 MBSYNC 에 동기하여 가변장부호복호화기(1212)에 제공되므로, 고속으로 실행할 수가 있다.
또한, 제14도에 표시하는 동작시퀀스에 있어서는 에러상태의 기간, 블록데이터는 화상 디코딩 회로에 새롭게 공급되지 않는다.
이 구간은, 뒤에 상세하게 설명하는 에러컨슬멘트처리가 실행된다.
제15도는, 제12도에 표시하는 가변장부호복호화기(1212)의 내부구성을 구체적으로 표시하는 도면이다.
제15도에 있어서, 가변장부호복호화기(1212)는, 도시하지 않는 버퍼메모리를 통해서 레이트버퍼로 부터 판독된 비트스트림을 받아, 가변장 심볼의 선두비트스트림데이터를 공급하는 비트스트림 공급기(1)로 부터의 데이터를 받아서 스타트코드를 검출하는 스타트코드 검출부(2)와, 비트스트림공급기(1)로 부터의 비트스트림을 받아서 헤더정보의 해석을 행하는 헤더해석부(3)과, 비트스트림 공급기(1)로 부터의 비트스트림데이터에 포함되는 블록데이터를 복호하여, 고정장의 양자화 DCT 계수데이터를 생성하는 블록데이터복호기(4)와, 스타트코드검출부(2)와, 헤더해석부(3)와, 블록데이터 복호기(4)로 부터의 에러검출신호에 응답하여, 에러가 발생한 것을 검출하는 에러검출부(5)와, 이 가변장부호복호화기 동작을 제어하는 제어부(6)를 포함한다.
제어부(6)는, 기동요구신호 φACT(이 신호에 대해서는 뒤에 리세트시의 동작에 관련하여 설명한다)와 MBSYNC를 받아, 또한 에러검출지시신호φER, 처리단위복호 종료지시신호φCPL 및 스타트코드검출지시신호φSD를 출력한다.
이 제어부(6)은, 스타트코드검출부(2)로 부터의 검출된 스타트코드를 받아, 이 스타트코드가 정상상태복귀에 유효할때에 스타트코드 검출지시신호를 φSD를 어서트한다.
제어부(6)는, 또 헤더해석부(3)로 부터의 헤더정보해석종료지시신호(헤더의 종료비트검출에 의해 검출된다)를 받아, 처리단위복호종료지시신호φCPL를 어서트한다.
제어부(6)는, 에러검출부(5)로 부터의 에러검출신호에 응답하여 이 에러검출지시신호φER를 어서트한다.
제어부(6)는, 또 스타트코드검출부(2)로 부터의 스타트코드, 헤더해석부(3)로 부터의 해석된 가변장부호어의 비트장을 표시하는 정보, 블록데이터 복호기(4)로 부터의 복호된 가변장부호복호어의 비트장정보를 받아, 비트스트림공급기(1)에 대해, 처리된(검출, 해석또는 복호) 가변장부호를 배제하고, 다음의 가변장부호어의 선두비트를 검출하여 헤더해석부(3)또는 블록데이터 복호기(4)에 제공한다.
비트스트림공급기(1)은, 제어부(6)하에서, 항상 가변장부호의 최상위비트로 부터 차례로 데이터비트를 출력한다.
스타트코드검출부(2)는, 상시, 이 비트스트림공급기(1)로 부터의 비트데이터를 모니터하고, 스타트코드가 포함되어있느냐 아니냐의 검출동작을 행한다.
헤더해석부(3)은, 제어부(6)의 제어하에(이 제어경로를 표시하지않음), 블록데이터복호기(4)의 복호동작 종료후에 계속해서 비트스트림공급기(1)로 부터 제공되는 가변장부호어(헤더정보)의 해석을 행한다.
블록데이터복호기(4)는, 제어부(6)의 제어부(6)의 제어하에, MB동기신호 MBSYNC에 동기하여 활성화되며, 비트스트림공급기(1)로부터 제공된 가변장부호를 복호한다.
헤더해석부(3)으로 부터는 동 벡터, 매크로블록의 처리방법예측방법)등의 정보가 추출되며, 또 에러발생시에서의 복귀(재동기)세그먼트 어드레스정보가 추출되어서 제어장치에 제공된다.
블록데이터복호기(4)로 부터는 고정장의 양자화 인덱스가 출력되어서 차단의 양자화기에 제공된다.
또한, 헤더해석부(3)은, 상시, 가변장부호를 해석하도록 설명하고 있다.
그러나, 시퀀스헤더, GOP 헤더 및 픽처헤더등은 고정장데이터이며 이들은 고정장복호가 행하여진다.
헤더해석부(3)에 있어서 고정장부호의 해석이 행하여지느냐 가변장부호의 해석이 행하여지느냐는, 스타트코드검출부(2)에 있어서 스타트코드에 따라서 제어부(6)에서 결정된다.
제어부(6)은, 그 검출된 스타트코드에 따라서 헤더해석부(3)에 대해 어느해석동작을 행하느냐를 지령한다.
또, 이대신에, 헤더해석부(3)이 신택스에 따라서 자신으로 어느동작을 행하느냐를 판단하는 구성이 사용되어도 좋다.
또한, 또 스타트코드검출부(2)는, 상시 스타트코드를 탐색하도록 설명하고 있다.
그러나, 스타트코드검출부(2)는, 헤더해석부(3) 및 블록데이터 복호기(4)의 동작시에는 그 검출동작이 정지되도록 구성되어도 좋다.
제16도는, 제12도에 표시하는 제어장치의 내부구성을 구체적으로 표시하는 도면이다.
제16도에 있어서, 제어장치(1226)는, 리세트 요구지시신호φRRQ에 응답하여 가변장부호복호화기에 대한 기동지시신호φACT를 출력하는 초기화제어회로(14)와, 가변장부호복호화기로 부터의 에러 검출지시신호 및 스타트코드 검출지시 신호에 따라서 이 가변장부호복호화기의 처리의 진행상태를 모니터(15)와, 초기화제어회로(14)로 부터의 기동지시신호φACT와 상태모니터(15)의 출력신호와 픽처의 시작을 표시하는 픽처동기신호 PSYNC와 가변장부호복호화기로 부터 제공되는 처리단위복호종료지시신호φCPL와 헤더정보(블록특정정보)를 받아, MB 동기신호 MBSYNC를 연산기의 각 파이프라인 스테이지에 제공하는 연산구동회로(11)를 포함한다.
초기화제어회로(14)는, 화상데이터의 복호동작의 리세트를 요구하는 리세트요구신호φRRQ가 어서트되면, 기동지시신호φACT를 어서트하여 가변장부호복호화기에 제공된다.
이 리세트요구신호φRRQ는, 화상데이터의 복호처리 개시지시신호일지라도 좋고, 또 외부제어장치의 인터럽트에 기인하는 리세트 요구지시신호일지라도 좋다.
또, 이 리세트요구신호φRRQ,는, 에러상태가 소정시간 계속해서 발생하느냐 또는 소정시간내에 에러검출지시신호가 연속해서 소정회수 어서트될 때에 발생되어도 좋다.
상태모니터(15)는, 에러검출지시신호φER의 어서트시에, 가변장부호복호화기의 부호복호과정에 있어서 에러가 발생한 것을 연산구동회로(11)에 알려, 또 스타트코드검출지시신호φSD의 어서트시에는, 가변장부호복호화기가 정상상태복귀의 준비단계에 들어간 것을 연산구동회로(11)에 알린다.
연산구동회로(11)은, MB동기신호 MBSYNC의 어서트시, 타이머(16)을 기동한다.
타이머(16)은, 그 카운트 동작을 행하여, 세트된 시간에 도달하면 타임아웃신호를 연산구동회로(11)에 제공한다.
이 타이머(16)은, 연산구동회로(11)가, 가변장부호복호화기로 부터 제공되는 블록속성정보(헤더정보)에 따라서 그 세트시간을 변경하도록 구성되어도 좋다(제8도참조).
정상상태시는, 연산구동회로(11)은, 처리단위복호종료지시신호 φCPL가 어서트되며, 또한 타임아웃신호가 어서트되며, 또 버스액세스컨트롤러(12)로 부터의 DRAM포트가 빈상태(레이트버퍼로 부터의 판독이 종료)를 표시하는 신호를 받으면 MB 동기신호MBSYNC를 어서트 한다.
에러발생시에 있어서는, 연산구동회로(11)은 상태모니터(15)의 출력하는 신호에 따라서 이하의 동작을 한다.
연산구동회로(11)은, 픽처동기신호 PSYNC에 응답하여 리세트되며, MB 동기신호 MBSYNC의 어서트마다 카운트업하는 카운터를 포함한다(이 카운터는 도시하지않음).
이 카운터의 카운트치는, 가변장부호복호화기에서 처리되는 세그먼트의 화면상의 위치(매크로블록어드레스)를 표시한다.
에러발생시, 스타트코드검출지시신호φSD에 따라서 상태모니터(15)로 부터의정상복귀에 유효한 스타트코드가 검출된 것을 알려주면, 연산구동회로(11)은, 이 스타트코드검출지시신호φSD에 계속해서 제공되는 블록속성정보로 부터 재동기어드레스를 추출한다.
이 동기 어드레스와 카운터의 카운트치와를 비교하고, 다음의 처리구간으로 부터 정상상태에 복귀할수가 있느냐 아니냐를 판정한다.
다음의 처리구간으로 부터 정상상태로 복귀할 수 있는 경우에는, 연산구동회로(11)은, 이 스타트코드검출지시신호φSD에 계속해서 제공되는 처리단위복호 종료지시신호φCPL의 어서트와 타이머(16)의 타임아웃지시와 버스액세스컨트롤러(12)로 부터의 레이트버퍼판독 종료지시신호에 응답하여 MB 동기신호 MBSYNC를 어서트한다.
이 MB 동기신호 MBSYNC에 응답하여, 가변장부호복호화기의 가변장복호기(제15도의 블록데이터복호기) 이하의 각처리연산기가 동작한다.
다음의 처리구간이 아직 정상상태에 복귀해야할 처리구간이 아닐때, 연산구동회로(11)은, 타이머(16)의 출력하는 타임아웃신호와 버스액세스컨트롤러(12)의 DRAM 포트 빈 것을 표시하는 신호에 따라서 MB 동기신호 MBSYNC를 출력한다.
이 에러상태(다음의 처리구간이 정상상태에 복귀해야할 처리구간이 아닌상태)에 있어서, MB 동기신호 MBSYNC는, 가변장부호복호화기를 제외하는 각 처리연산기의 파이프라인 스테이지에 제공되어도 좋다.
또 이에 대신해서, MB 동기신호 MBSYNC는 가변장복호기(블록데이터복호기)를 포함하는 파이프라인스테이지의 각 처리연산기에 제공되며, 이때 맞처서 연산구동회로(11)로 부터 정상복귀금지신호를 어서트하여 가변장부호복호화기에 제공하므로서, 가변장부호복호화기에 의한 가변장복호동작을 금지하는 구성이 사용되어도 좋다.
에러상태에 있어서도, 화상 디코딩 회로로 부터 화상데이터가 출력된다(뒤에 설명하는 에러컨슬멘트처리가 실시된다).
대기중의 세그먼트가 다음의 처리구간에서 실행해야 할때는, 앞에 설명한 상태와 같이 타이머(16)의 출력하는 타임아웃신호와 버스액세스컨트롤러(12)의 출력하는 DRAM포트의 빈 것을 표시하는 신호에 따라서 연산구동회로(11)이 MB 동기신호 MBSYNC를 어서트 한다.
이것에 의해 연산구동회로(11)은 정상상태에 복귀하고, 카운터의 카운트치와 재동기세그먼트의 비교동작을 정지한다.
이 정상상태가 되면, 연산구동회로(11)로 부터의 MB 동기신호 MBSYNC에 따라서 가변장부호복호화기에 포함되는 가변장복호기(블록데이터복호기)이하의 처리 연산기가 동작하며, 각각 소정의 정상인 처리를 실행한다.
버스액세스컨트롤러(12)는, 연산구동회로(11)의 제어하에, MRAM 포트에의 액세스동작을 제어한다.
즉, 제32도에 표시하는 FIFO 인터페이스(1210) 및 메모리인터페이스(1224)의 포트제어를 차례로 소정의 순서로 실행한다.
즉, 버스액세스컨트롤러(12)는, 연산구동회로(11)로 부터의 MB 동기신호 MBSYNC에 동기하여(정상동작시), 먼저 메모리인터페이스(1224)를 통해서 화소재구성기(1220)로 부터의 복호종료의 화상데이터를 외부 메모리(DRAM)(1230)에 기록한다.
이 기록동작의 종료 후, 버스액세스컨트롤러(12)는, FIFO 인터페이스(1210)로 부터의 비트스트림의 메모리인터페이스(1224)를 통한 외부메모리(DRAM)에의 기록(레이트버퍼에의기록), 메모리인터페이스(1224)를 통한 화소버스인터페이스(1222)에의 외부 메모리(DRAM)(1230)로 부터의 표시화상데이터에의 기록, 메모리인터페이스(1224)를 통한 외부메모리(DRAM)(1230)으로 부터의 예측화상데이터의 전송, 및 FIFO 인터페이스(1210) 및 메모리 인터페이스(1224)를 통한 외부메모리(DRAM)(1230)로 부터의 가변장부호복호화기에의 전송(도시하지않는 버퍼메모리에의 전송)(레이트버퍼의 판독)을 실행한다.
이사이에, 소정간격에서 버스액세스컨트롤러(12)는 외부메모리(DRAM)(1230)의 리프레시를 실행하고, 이 리프레시하는 사이에, 외부메모리의 액세스를 금지한다. 에러상태시에 있어서는, 버스액세스컨트롤러(12)는, 이 예측화상데이터판독기간을, 연산구동회로(11)로 부터의 에러상태지시신호에 응답하여, 레이트버퍼로 부터의 데이터판독 기간으로서 이용하는 구성이 사용되어도 좋다.
예측화상데이터의 판독종료시점은, 연산구동회로(11)로 부터의 블록속성정보에 따라서 결정되는 구성을 사용해도 좋다.
에러 컨슬제어회로(13)은, 그 동작에 대해서 뒤에 상세하게 설명하는 에러컨슬멘트처리를 제어한다.
이 에러컨슬제어회로(13)는, 상태모니터(15)로 부터의 에러검출지시신호φER에 응답하여 기동되어서 스캔변환부 또는 화소재구성기 및 스캔변환부에 대해서 에러컨스처리를 지령하고(신호φERR), 연산구동회로(11)로 부터의 정상상태복귀지시에 응답하여 이 에러컨슬처리종료를 지령한다.
이상과 같이, 본 발명의 실시예에 따르면, 에러발생시에 있어서, 에러상태로 부터 정상상태복귀에 유효한 스타트코드를 검출하며, 이어서, 세그먼트의 헤더정보의 해석까지를 실행하고, 이 세그먼트의 블록의 데이터의 처리를 실제로 지시해야 할 처리구간도달까지 지체되므로, 에러발생시에 있어서도 처리연산기의 사용효율을 저하시키는일 없이 정상상태에의 복귀를 행할 수가 있다.
[에러 컨슬멘트 처리 1 :]
제17도는, 본 발명의 따르는 화상 디코딩 회로의 화소재구성기(1220)의 구성을 개략적으로 표시하는 도면이다.
제17도에 있어서, 화소재구성기(1220)은, 메모리인터페이스(1224)를 통해서 제공되는 데이터를 일시적으로 격납하는 버퍼메모리(20)와, 이 버퍼메모리(20)에 격납된 화상데이터를 사용하여 예측화상을 생성하는 예측화상필터부(21)와, 역이산코사인변환부(IDCT)(1218)로 부터의 데이터와 예측화상필터부(21)의 출력신호와를 가산하고, DPCM 복호를 행하는 가산기로서 표시되는 연산기(22)와, IDCT(1218)의 출력하는 데이터와 연산기(22)의 출력하는 데이터와 예측화상필터부(21)로 부터의 화소데이터의 어느것을 선택하는 선택회로(23)의 출력데이터를 일시적으로 격납하는 버퍼메모리(24)를 포함한다.
이 버퍼메모리(24)의 격납데이터는, 복호끝난 화소데이터로서 메모리인터페이스(1224)를 통해서 외부메모리(DRAM)에 격납된다.
B 픽처의 매크로블록타이프는, (1) 전후의 예측을 공히 사용하지 않는 프레임내/필드내(인트라)예측, (2) 과거의 재생화상으로 부터 예측되는 순방향예측, (3) 미래로 부터 예측되는 역방향예측, 및 (4) 과거 및 미래양방의 화상을 사용하는 내삽적예측의 4 종류를 포함한다.
예측화상필터부(21)는, 이 매크로 블록타이프에 따르는 소정의 처리를 행하여 예측화상을 생성한다.
화소재구성기(1220)은 더욱이, 화소재구성의 동작을 제어하기 위하여 제어부(25)를 포함한다.
제어부(25)는, 가변부호복호부로 부터 제공되는 헤더정보와 제어장치(제16도참조)로 부터의 MB 동기신호MBSYNC와 에러검출 신호지시신호φERR와 제어장치(버스액세스 컨트롤러)로 부터의 사용허가 신호를 받는다.
제어부(25)는, 이 헤더정보에 포함되는 매크로블록타입에 따라서 예측필터부(21)에서 실행하는 필터처리를 결정한다.
또, MB 동기신호 MBSYNC에 동기하여 제어부(25)는, 버퍼메모리(20)의 데이터의 기록및 판독, 및 버퍼메모리(24)의 데이터의 기록 및 판독을 제어한다.
메모리인터페이스(1224)을 통해서 버퍼메모리(20)에 읽어지는 화상데이터는, 가변장부호복호화기에 있어서 데이터해석부의 해석결과에 의해 생성된 동벡터정보에 따라서 어드레스가 생성되어 외부메모리(DRAM)로 부터 판독된다.
에러발생시에 있어서는, 이 동 벡터정보는 송부된 동벡터정보에 근거해서 구성된다.
뒤에 설명하는것과 같이 에러시에는, 동 벡터는 지로에 설정되어도 좋다.
또, 이를 대신하여, 에러시에는 1 라인전의 매크로 블록의 움직임을 사용되어도 좋다.
즉, 에러발생시에는, 예측화상에서의 대응한 화상의 매크로블록데이터가 판독된다.
선택회로(23)은, 제어부(25)의 제어하에서, 처리된 매크로블록이, 인트라(Intra) 예측된 매크로블록(I픽처 및 인트라 예측된 B 픽처)의 경우에는 IDCT(1218)로 부터의 데이터를 선택하며, 인트라 예측이외의 예측부호화 된 매크로블록에 대해서는 연산기(22)의 출력하는 데이터를 선택하고, 에러발생시에는, 예측화상필터부(21)로 부터의 출력데이터를 선택한다.
다음에 이 제17도에 표시하는 화소재구성기를 사용할때의 에러대책동작에 대해서 설명한다.
제18도는, 에러발생시에서의 화상 디코딩 회로의 에러대책 동작을 표시하는 동작 시퀀스도면이다.
제18도에 표시하는 것과 같이, 화상 디코딩 회로는, 세그먼트(매크로블록) 단위의 4 단의 파이프라인스테이지를 구성한다(앞의 실시예와 마찬가지).
지금, 세그먼트 MB#11의 블록데이터의 복호과정에서 에러가 발생한 상태를 고려해본다.
이 상태에 있어서 에러검출지시φER(φERR)가 어서트되며, 가변장부호복호화기 및 제어장치에 있어서는 앞에 설명한 에러시의 동작이 실행된다.
이 에러가 발생한 처리구간에 있어서는, 제17도에 표시하는 복호화소재구성기(1220)에 있어서는 화소복호동작이 행하여지며, 복원된 화소데이터가 버퍼 메모리(24)에 격납된다.
다음의 처리구간이 시작할 때, 메모리인터페이스(1224)를 통해서 버퍼메모리(22)에 버퍼메모리(22)에 매크로블록MB#12에 상당하는 부분의 에러컨슬멘트용의 예측화상데이터가 격납된다.
예측화상필터부(21)에 있어서는, 매크로블록MB#11에 대한 예측화상데이터의 생성을 행하고 있다.
한편, IDCT(1218)로 부터는, 매크로블록 MB#10의 블록데이터의 역양자화 후의 데이터가 생성되며, 그 매크로블록타이프에 응해서 선택회로(23)를 통해서 화소복원된 데이터가 생성되어서 버퍼메모리(24)에 차례로 기록된다.
한편, 버퍼메모리(24)에 있어서는, 앞에 격납한 매크로블록MB#9의 복호 끝난 화소데이터가 메모리 인터페이스(1224)를 통해서 DRAM에 기록한다.
여기서, 버퍼메모리(20) 및 (24)는, 그 격납데이터가 모두 판독한 후에 새로운 데이터의 기록이 행하여진다.
이후, 순차파이프라인처리가 실행되어, 이 에러상태시에 있어서는, 순차외부메모리(DRAM)로 부터, 별도의 픽처에 대응한 매크로블록의 데이터가 판독되어서 화상데이터가 생성된다(제18도에서의 사선을 실시한영역).
매크로블록 MB#12의 처리구간에 있어서 판독된 예측화상화소 데이터는, 선택회로(23)에 의해 선택된다.
이것에 의해, 예측화상의 대응한 화소데이터가 차례로 버퍼메모리(24)에 격납된다.
예측화상필터부(21)은, 에러검출시에 있어서는, 예정된 룰에 따라서 필터처리를 행한다.
따라서, 매크로블록 MB#15가 처리되는 처리구간으로 부터 에러대책이 실시된 화소데이터, 즉, 예측화상의 화소데이터가 DRAM에 차례로 격납된다.
에러상태가 매크로블록MB#16의 처리구간에서 종료하면, 다음의 처리구간으로 부터 매크로블록 MB#17의 처리가 실행된다.
이 경우, 선택기(23)은, 매크로블록MB#17의 블록데이터의 처리가 파이프라인의 제3스테이지에 도달했을 때에, 그 헤더정보에 따라서 IDCT(1218)의 출력하는 데이터 또는 연산기(22)의 출력하는 데이터의 한쪽을 선택한다.
상술한 일련의 동작에 의해, 에러상태에 있어서는 에러에 의해 결락(缺落)한 화소데이터를 예측화상의 화소데이터로 치환할 수가 있고, 에러비트 혼입에의한 복호화상의 열화를 억제할 수가 있다(제19도참조).
즉, 제19도에 표시하는 것과 같이, 에러상태에 있어서, 매크로블록 MB#12~MB#16의 복호화상의 화질의 열화를 억제할 수가 있다.
[에러컨슬멘트처리 2:]
제20도는, 본 발명에 따르는 제2의 에러컨슬멘트처리를 실현하기 위한 화소구성(1220)의 구성을 표시하는 도면이다.
이 제20도에 표시하는 화소재구성기의 구성에 있어서는, 제어부(35)는, 헤더정보, MBSYNC, 버스액세스컨트롤러의 출력신호 및 제어장치에 포함되는 에러컨슬 제어회로로 부터의 출력신호φERR에 응답하여, 에러상태시에 있어서는, 선택회로(33)을, IDCT(1218)의 출력신호를 선택하는 상태에 설정한다.
타의 구성은 제17도에 표시하는 구성과 마찬가지이며, 대응하는 부분에는 동일한 참조번호를 붙인다.
정상상태에 있어서는, 제어(35)는, 예측화상필터부(21)로 부터의 화소 데이터와 IDCT(1218)의 출력하는 화소데이터를 연산기(22)로 연산처리(DPCM복호)시킨 후, 이 픽처의 타입에 따라서 IDCT(1218)의 출력신호 또는 연산기(22)의 출력신호를 선택회로(33)에 의해 선택하여 버퍼메모리(24)에 기록한다.
에러상태시에 있어서는, 즉, 신호φERR의 활성화시에는, 픽처타입에 상관없이, 제어부(35)를 제어하여 IDCT(1218)의 출력하는 데이터를 선택하는 상태에 설정한다.
IDCT(1218)에는, 다음에 그 구성을 상세하게 설명하는 스캔변환부(1216)의 출력하는 데이터가 제공된다.
스캔 변환부(1216)은, 이하에 상세히 설명하는 것과 같이, 에러상태시에 있어서는, 동일한 픽처내의 복호처리된 1 라인전의 매크로블록데이터(IDCT처리전의 데이터)또는 예정된 고정치(1 라인전의 매크로블록이 존재하지 않는때)를 에러가 발생한 처리구간에 계속되는 처리구간으로 부터 IDCT(1218)에 제공한다.
제21도는, 제20도에 표시하는 스캔변환부(1216)의 내부구성을 상세히 표시하는 도면이다.
제21도에서, 스캔변환부(1216)은, 역양자화기를 출력되는 역양자화 된 DCT 계수데이터를 차례로 격납하여, 이어서 래스터(raster)주사순에 출력하는 버퍼메모리(40)과, 이 버퍼메모리(40)의 데이터의 기록 및 판독을 제어하는 리드/라이트 제어회로(41)과, 버퍼메모리(40)으로 부터 판독된 DCT 계수의 편균회로(42)와, 이 편균화회로(42)의 출력하는 편균치 데이터중 예를들면 1 라인의 매크로블록의 데이터를 FIFO 형태로 격납하는 메모리(43)과, 메모리(43)의 데이터의 기록 및 판독을 제어하는 리드/라이트 제어회로(44)와, 리드/라이트 제어회로(44)의 제어하에 버퍼 메모리(40)의 출력하는 DCT 계수데이터 및 메모리(43)로 부터의 데이터의 한쪽을 선택하여 IDCT(1218)에 출력하는 선택회로(45)를 포함한다.
리드/라이트제어회로(41)은, MB 동기신호 MBSYNC에 동기하여, 전단의 역양자화기로 부터 제공된 역양자화 DCT 계수데이터를 격납한다.
이 리드/라이트제어회로(41)은, 단지 버퍼메모리(40)에 대한 리드어드레스와 라이트어드레스를 변환하는 기능을 구비하고 있으며, 지그재그스캔 형태로 주사된 DCT 계수를 래스터 주사순으로 재배열하여 출력하도록 그 어드레스를 조정한다.
이 어드레스의 발생의 형태는, 리드어드레스 및 라이트어드레스의 한쪽이, 예정된 시퀀스에서 발생하며, 다른편이 차례로 인크리먼트 되어서, 지그재그 스캔된 화소데이터를 래스터 주사순으로 재배열하도록 구성하면 좋다.
지그재그스캔변환기(1216)은, 특히 파이프라인스테이지에는 포함되어 있지 않다.
이것은, 버퍼메모리(40)에 의해, 하나의 버퍼회로로서 기능하기 위한 것이다.
리드/라이트제어회로(41)은, 따라서, DCT 계수 데이터의 시작을 표시하는 입력동기신호에 동기하여 어드레스를 발생하도록 구성되어도 좋다.
평균화회로(42)는, 이 버퍼메모리(40)으로 부터 판독된 DCT 계수 데이터의 평균치를 구한다.
이때, 모든 DCT 계수 데이터의 산술평균치(DCT 계수 및 AC 계수 AH모두)에 의해 평균치가 구하여져도 좋다.
그러나, 8×8화소의 블록에 있어서, DC계수는 그 블록의 화소데이터의 평균치를 표시한다.
따라서, 편균회로(42)는, 하나의 매크로블록에 대해 휘도(輝度)신호에 대해서 4개의 블록의 DC 계수 데이터D의 평균치를 구하고, 색차신호에 대해서는, DC 계수를 편균치로서 구하는 구성이 이용되어도 좋다.
메모리(43)은, IFO 형태로 예를들면 1 라인분의 각 매크로블록에 대한 DCT 계수의 평균치 데이터를 격납한다.
다음에 이 제20도 및 제21도에 표시하는 스캔변환부 및 화소재구성기의 동작을 그 동작 시퀀스도인 제22도를 참조하여 설명한다.
제22도에 있어서는, 매크로블록 MB#11의 블록데이터의 복호화시에 있어서 에러가 발생하고, 매크로블록 MB#17로 부터 정상상태로 복귀할때의 동작이 일예로서 표시된다.
에러 검출지시신호 φER가 어서트되면, 따라서 에러컨슬제어회로 부터의 에러지시신호φER가 어서트된다(제22도에는 φERR 는 표시되있지않음).
이 에러검출지시신호φERR의 어서트에 응답하여, 제21도에 표시하는 리드/라이트 제어회로(44)는, 메모리(43)에 대한 평균치데이터의 기록을 금지한다.
즉, 에러가 검출됐을 경우에 산출되는 DCT 계수 데이터의 평균치의 격납이 금지된다.
메모리(43)에는, 매크로블록MB#9 까지의 1 라인분의 매크로블록#10의 DCT 계수의 평균치데이터는 메모리(43)에는 격납되지 않는다.
메모리(43)의 선두 어드레스위치에는, 매크로블록#10의 1라인전의 매크로블록의 DCT 계수의 평균치 데이터가 격납된다.
이 에러가 발생된 처리구간에 있어서는, 매크로블록MB#9의 화소복원처리가 실행되어 있다.
즉, 제20도에 표시하는 선택회로33은, 제어부 35의 출력신호에 따라서, 연산기(22)의 출력신호 또는 IDCT(1218)의 출력하는 데이터의 한쪽을 선택하여 버퍼메모리(24)에 제공한다.
에러가 발생한 다음의 처리구간에 있어서는, 제21도에 표시하는 리드/라이트 제어회로(44)는, 에러지시신호φERR에 응답하여 메모리(43)로 부터 선두위치에 격납된 1 라인 전의 매크로블록의 DCT 계수의 평균치 데이터를 판독하여, 선택회로(45)를 통해서 IDCT(1218)에 제공한다.
메모리(43)은, 매크로블록의 휘도신호블록 각각에 대해 평균치 데이터를 격납해가도 좋다(IDCT(1218)은 8화소×8화소를 단위로 하여 역이산코사인변환처리를 시행하기 위해).
또, 제20도에 표시하는 선택회로(33)은, 제어부(35)의 제어하에, IDCT (1218)의 출력하는 데이터를 선택하는 상태에 설정된다.
따라서, 에러가 발생한 처리구간의 다음의 처리구간에 있어서는, 1 라인전의 매크로블록의 화소 데이터에 따라서 화소복원(DPCM)이 실행된다.
따라서, 제22도에 표시하는 것과 같이, 에러가 발생한 매크로블록보다도 하나 앞의 매크로블록으로 부터 에러컨슬멘트처리를 실행할 수가 있고, 에러가 발생한 매크로블록에 대해서도 에러 컨슬멘트 처리를 실행할 수가 있고, 에러비트혼입에 의한 화질열화를 보다 억제할 수가 있다.
메모리(43)로 부터는, MB 동기신호 MBSYNC에 동기하여, 각 처리구간마다 차례로 틀리는 매크로블록의 데이터가 판독된다.
에러상태로 부터 정상상태로 복귀할 때는, 에러지시신호φERR가 디어서트되면, 그 처리구간에 있어서는 메모리(43)으로 부터의 데이터를 선택하여 IDCT(1218)에 제공하고, 다음의 처리구간에 있어서는 평균화회로(42)로 부터의 평균치 데이터를 메모리(40)의 출력을 선택하는 상태에 설정한다.
메모리(43)에 있어서는, FIFO형태로 데이터격납되어 있어서, 새롭게 매크로블록 MB#17의 블록데이터의 평균치가 메모리(43)에 FIFO형태로 기록되어도, 1 라인분의 화소 블록데이터가 차례로 격납되는 상태는 유지된다.
또한, 정상상태복귀시에 있어서, 버퍼메모리(40)은, 전단의 역양자화기로부터 제공되는 블록데이터의 시작을 표시하는 입력동기신호에 동기하여 리드/라이트제어회로(41)의 제어하에 데이터의 기록이 행하여지는 구성이 이용되어도 좋다.
또 이때, 리드/라이트제어회로(41)에 제어장치로 부터의 정상상태 복귀지시신호가 제공되며, 정상상태복귀지시신호가 제공된 처리구간으로 부터 기록이 행하여져도 좋다(스캔변환부가 제1단의 파이프라인 스테이지의 최종단을 구성할때(버퍼의 데이터기록까지가 제1단의 파이프라인 스테이지)).
또는 정상상태복귀의 처리구간의 다음의 처리구간으로 부터 리드/라이트 제어회로(41)의 제어하에 버퍼메모리(44)에의 데이터기록이 행하여져도 좋다(스캔 변환부 제3단의 파이프라인스테이지를 구성하는 경우).
또, 이 스캔변환부(1216)은, 제2단의 파이프라인 스테이지를 구성하도록 배치되어도 좋다.
또, 에러발생이 픽처의 선두에 생겼을때는, 대응한 평균치데이터는 존재하지않으므로, 예정된 고정치가 사용된다.
이 구성은 표시되어있지 않았지만, 처리되는 매크로블록의 어드레스(화면상의 위치) 정보에 따라서 편균치 데이터 및 고정치데이터의 한쪽을 선택하는 구성이 사용되면 좋다.
제23도는, 제20도 내지 제22도에 표시하는 제2의 에러컨슬멘트 처리에서의 에러컨슬멘트 처리된 매크로블록의 형태를 표시하는 도면이다.
제23도에 표시하는것과 같이 에러가 발생한 매크로블록MB#11 보다도 하나 앞의 매크로블록의 화소데이터를 사용하여 에러컨슬멘트 처리가 실행되어 있다.
즉 매크로블록MB#10~MB#16 블록데이터는 동일픽처내의 1 라인전의 블록MB#2~MB#8의 화소 데이터에 의해 치환되어 있다.
또한, 상술한 설명에 있어서는, 에러발생시에 있어서는, 선행하는 매크로블록의 블록데이터의 편균치를 사용하여 에러컨슬멘트 처리를 행하도록 표시하고 있다.
그러나, 메모리에 여유가 있는 경우, 화소재구성부(1220)에 있어서, 1 라인분의 매크로블록의 화소데이터를 격납하는 라인메모리를 배치하고, 에러발생시에는 이 라인메모리에 격납된 보호끝난 매크로블록의 화소데이터를 사용하여 버퍼메모리(24)를 통해서 외부메모리(DRAM)에 격납하고, 각 화소 데이터 각각을 선행하는 1 라인 전의 매크로블록의 화소 데이터 각각으로 치환하는 구성이 이용되어도 좋다.
이상과 같이, 본 발명의 실시예의 구성에 따르면, 화상 디코딩 회로의 파이프라인스테이지를 유효하게 이용하여, 효율적으로 에러컨슬멘트 처리를 실행할 수가 있다.
특히, 동일픽처내의 복호데이터(가변장복호화된 데이터)를 사용하여 에러컨슬멘트 처리를 행하는 경우, 에러가 검출된 세그먼트(매크로블록) 보다도 처리의 순서로 매크로블록으로 부터 에러컨슬멘트 처리를 실행할 수가 있고, 보다 효과적인 에러 컨슬멘트처리를 실행할 수가 있으며, 에러 비트 혼입에 의한 화질열화를 억제할 수가 있다.
[초기화동작 1 : 리스타트(에러로 부터의 복귀)]
제24도는, 화상 디코딩 회로의 초기화동작을 표시하는 플로도다.
이하, 본 발명에 따르는 화상 디코딩 회로의 초기화동작에 대해서 설명한다.
먼저 리세트요구가 나왔느냐 아니냐의 판별이 행하여진다(스텝S30).
이 리세트요구는, 외부제어장치의 인터럽터에 의한 표시의 중단 및 에러상태가 소정시간 이상 계속하는 경우(에러상태로 부터 정상상태로 복귀하고 또 에러상태로 복귀하는 상태가 연속하는경우)등의 리스타트시에 발생한다.
리세트요구(리스타트지시)가 나오면, 먼저 제어장치(1226)(제16도참조)가, 이 화상 디코딩 회로가, 화상데이터의 복호동작을 행하고 있느냐 아니냐의 판별을 통한다(스텝S31).
화상데이터의 복호동작을 행하고 있을 경우(화소복원동작을 행하고 있을 경우: 에러상태의 동작을 포함하여), MB동기 신호 MBSYNC의 다음의 처리구간으로 부터의 발생이 정지된다(스텝S32).
MB 동기신호 MBSYNC의 발생이 정지되면, 기동신호φACT가 어서트되어서 가변장부호복호화기(제15도참조)에 제공된다.
스텝S31에 있어서, 화소복원동작이 행하여져 있지 않은 경우에 있어서는, 스텝S32가 스킵되어서 스텝S33의 기동신호 φACT의 어서트가 행하여진다.
가변장부호복호화기에 있어서는, 이 기동신호φACT의 어서트에 응답해서, 픽처의 시작을 표시하는 스타트코드를 탐색한다.
즉 시퀀스스타트코드, GOP 스타트코드 및 픽처스타트코드의 탐색이 행하여진다.
이때에는, 슬라이스스타트코드가 검출되어도, 이 슬라이스코드는 무시된다.
픽처의 시작을 표시하는 스타트코드가 검출되면, 이 스타트코드에 계속하는 헤더부의 해석이 행하여져, 매크로블록레이어의 세그먼트의 헤더정보의 해석이 행하여진다(스텝S34).
이 헤더정보를 해석한 소정조건이 성립하는 것을 기다린다(스텝S35).
이 소정조건으로서는, 레이트버퍼에 충분한량의 비트스트림이 격납되어 있는 것 및 외부의 표시제어장치로부터 제공되는 수직동신호가 어서트되는 일이다.
레이트 버퍼에 충분한량의 비트스트림이 격납되어있느냐 아니냐는, 제16도에 표시하는 버스액세스컨트롤러(12)를 통해서 외부메모리장치(DRAM)의 FIFO 영역의 기록어드레스와 판독어드레스의 차를 검출하므로서 판별할 수가 있다.
소정조건이 성립하면, 제어장치는, 픽처의 시작을 표시하는 픽처동기신호를 어서트하여, 그 내부에 포함되는 매크로블록어드레스를 표시하는 카운터를 리세트하고, 이 픽처 동기신호에 동기하여 MB동기신호를 어서트하여 화상 디코딩 회로에 정상동작을 실행시킨다(스텝S36).
이 픽처동기신호에 동기하여 MB 동기신호를 어서트하므로서, 리세트요구가 행하여져 새로운 픽처를 표시할 때, 외부제어장치로 부터 제공된 예를들면 수직동기신호에 동기하여 정확히 표시화상데이터의 판독을 행할 수가 있다.
또 화상표시에 맞춰서 화소복호동작을 차례로 실행할 수가 있다.
스텝S30로 부터 스텝S33 까지의 일련의 동작이 제16도 표시하는 초기화제어회로(14)에 의해 실행된다.
[초기화동작 2 : 리세트 동작]
제25도는, 화상 디코딩 회로의 타의 초기화동작을 표시하는 플로도다.
이하 본 발명에 따르는 화상 디코딩 회로의 타의 초기화동작에 대해서 설명한다.
이 초기화동작에 있어서는, 유저가 새롭게 화상표시를 지정한다.
먼저, 리세트요구(초기화지시)가 나왔느냐 아니냐의 판별이 행하여진다(스텝S40).
이 리세트요구는, 유저로 부터의 화상표시지정에 따라서, 하드웨어 또는 소프트웨어(레지스터치의세트)에 의해 발생된다.
리세트요구가 나오고, 새로운 화상의 표시가 지정되면, 이때에는, 화상 디코딩 회로는, 전혀 화상데이터의 복호동작을 행하고 있지 않아, 기동신호φACT가 어서트되어서, 가변장부호복호화기(제15도참조)에 제공된다(스텝S41).
가변장부호복호화기에 있어서는, 이 기동신호φACT의 어서트에 응답하여, 시퀀스 스타트코드를 탐색한다.
GOP 스타트코드, 픽처스타트코드 및 슬라이스스타트코드가 검출되어도, 이들의 스타트코드는 무시된다.
시퀀스스타트코드가 검출되며, 이어서 픽처의 시작을 표시하는 스타트코드가 검출되면, 이 스타트코드에 계속하는 헤더부의 정보의 해석이 행하여진다(스텝S42).
이 헤더정보를 해석한 상태에서, 소정조건이 성립하는 것을 기다린다(스텝S43).
이 소정의 조건으로서는, 앞의 제24도의 스텝S35에 있어서 설명한 것과 같은 조건이 사용된다.
즉, 레이트버퍼에 충분한 량의 비트 스트림이 격납되어 있는 것 및 외부의 표시제어장치로 부터 제공되는 수직동기신호가 어서트되는 것이다.
소정조건이 성립하면, 제어장치는, 픽처의 시작을 표시하는 픽처동기신호를 어서트하여, 그 내부에 포함되는 매크로블록어드레스를 표시하는 카운터를 리세트하고, 이 픽처동기신호에 동기하여 MB 동기신호를 어서트하여 화상 디코딩 회로에 정상동작을 행하게한다(스텝S44).
이 픽처동기신호에 동기하여 MB 동기신호를 어서트하므로서, 리세트요구가 행하여져, 새로운 시퀀스의 픽처를 표시하는 경우에 있어서, 외부제어장치로 부터 제공된 예를들면 수직동기신호에 동기하여 정확하게 표시화상데이터의 판독을 행할 수가 있고, 또 화상표시에 맞춰서 화소복호동작을 차례로 실행할 수가 있다.
이 일련의 동작은, 제16도에 표시하는 초기화제어회로(14)에 의해 실행된다.
기동신호 φACT는, 리스타트를 지정하는 리세트 요구시 및 초기화를 지정하는 리세트요구시에 있어서 같은신호가 어서트되도록 표시된다.
이들은 별도의 신호인 기동신호φACT의 종류에 따라서, 리스타트시 및 초기화시에 있어서 탐색 대상이되는 스타트코드의 구별이 행하여진다.
제26도는, 리세트동작시에 있어서 화상 디코딩 회로의 동작의 일예를 표시하는 도면이다.
제26도에 있어서는, 외부로 부터 화상표시를 지령하는 초기화지시(리세트지시)가 제공되는 상태가 일예로서 표시된다(제25도 참조).
이 상태에 있어서는, 화상 디코딩 회로는, 화소복호동작은 행하지 않아서, MB 동기신호 MBSYNC는 어서트되어 있지 않다.
화상 디코딩 회로는, 화소복호동작은 행하지 않아서, MBSYNC는 어서트되어 있지 않다.
리세트요구신호φRRQ가 어서트되면, 기동신호φACT가 제16도에 표시하는 초기화제어회로로 부터 출력된다(어서트 된다).
이 기동신호φACT의 어서트에 응답하여, 가변장부호복호화기는, 화상의 시작을 표시하는 스타트코드를 탐색한다.
이 탐색동작시에 있어서, 제어장치의 제어하에 레이트버퍼로 부터 데이터의 판독이 행하여진다.
레이트버퍼에 아직 비트스트림이 격납되어 있지 않고, 리세트 요구신호φRRQ 발생시에 있어서 비로소 비트스트림이 도달하는 경우에는, 제어장치는, FIFO인터페이스를 통해서 제공된 비트스트림을 직접 가변장부호화복호기에 제공하여, 스타트코드탐색을 행하게 한다.
가변장부호복호기는, 스타트코드검출기(제15도참조)를 검출된 스타트코드 제어부(6)로 해석하며, 시퀀스스타트코드의 검출에 계속해서 픽처의 시작을 표시하는 스타트코드를 검출하여, 그것에 이어지는 헤더정보를 해석한다.
리스타트시에는, 매크로블록레이어 보다 위의 스타트코드의 탐색이 행하여져, 그 검출 후 헤더정보의 해석이 행하여진다.
매크로블록레이어의 세그먼트의 헤더정보의 해석이 종료하면, 가변장부호화복호기는, 처리단위복호종료지시신호φCPL를 어서트한다.
제어장치는, 처리단위복호종료신호φCPL의 어서트에 응답하여, 소정의 조건이 성립하는 것을 기다린다.
소정조건이 성립하면, 즉 레이트버퍼에 충분한량의 비트스트림이 격납되며 또한 수직동기신호가 제공되면, 제어장치는 내부에서 픽처동기신호 PSYNC를 어서트하며, 또한 이 픽처동기신호에 동기하여 MB동기 신호 MBSYNC를 어서트한다.
최초의 처리구간에 있어서는, 헤더정보가 해석된 세그먼트의 블록데이터의 복호 및 이 세그먼트에 이어지는 헤더정보의 해석이 실행된다.
이후, 각 처리구간에 있어서 헤더정보의 해석이 행하여져 또한 소정의 조건이 성립할때마다 MB 동기신호 MBSYNC가 어서트된다.
이 일련의 초기화동작에 의해, 에러복귀동작을 포함하는 리세트동작시에 있어서도, 확실히 MB 동기신호 MBSYNC 신호의 어서트에 응답하여 세그먼트의 블록데이터의 복호처리를 개시할 수가 있고, 고속연산처리가 실현된다.
또한, 상술한 실시예에 있어서는, 화소데이터복호처리에 있어서, MPEG규격에 따라서 부호화된 화상데이터(화상데이터)의 복호처리를 표시하고 있다.
그러나, 이와같은 MPEG 규격의 부호화된 화소데이터가 아니고, 가변장부호가 이는 사이스의 데이터블록단위로 처리되는 경우에 있어서도, 그 블록데이터에 대해 헤더정보가 가변장부호로 붙쳐져 있는 경우에는, 본원 발명은 적용가능하다.
또, DCT 변환처리가 아니고, 타의 직교변환처리된 데이터일지라도 본 발명은 적용가능하다.
본 발명의 주요한 특징은 아래와 같다.
(1) 1처리구간내에 있어서 데이터블록처리에 이어서 헤더정보의 해석을 행하고, 이 헤더의 해석정보의 모든해석이 종료한후에 처리개시를 지시하고 있다.
하나의 처리구간은 데이터블록의 복호처리에 시작헤더정보의 해석으로 종료한다.
따라서, 데이터처리 개시가 지시될때, 처리연산기는 곧 처리를 실행할 수 있고, 처리연산기의 사용효율이 개선되며, 고속으로 데이터처리를 실행할 수가 있다.
또 처리연산기의 대기시간을 짧게 할 수가 있다.
(2) 처리구간의 시간기간은 헤더의 정보의 해석결과에 따라서 변경하도록 구성하였다.
처리대상이 되는 세그먼트의 속성에 응해서 처리구간의 시간기간을 변경할 수가 있고, 처리대상이 되는 세그먼트속성에 응해서 최적한 처리구간길이를 설장할 수가 있고, 고정장시간의 처리구간의 경우에 생기는 가능성이 있는, 하나의 처리구간 모두가 종료하지 않는 경우에 다음의 처리구간이 시작되는 오동작을 방지할 수가 있고, 효율적 또한 정확히 화상데이터의 처리를 행할 수가 있다.
(3) 데이터블록데이터의 복호처리와 병행하여 외부 메모리에의 액세스가 실행되도록 구성되어 있다.
외부메모리에의 액세스가 화소데이터 복원처리해 주는 영향을 배제할 수가 있고, 처리시간을 단축할 수가 있다.
또, 이 외부메모리에의 액세스를, 복원데이터의 기록, 입래비트스트림의 기록, 표시화상데이터의 판독, 예측화상데이터의 판독 및 비트스트림의 판독순서로 차례로 행하므로서, 데이터처리수단에서의 파이프라인처리에 필요한 데이터의 파손을 일으키는 일없이 효율적으로 필요로 하는 데이터처리부에 제공할 수가 있다.
(4) 헤더정보의 해석과정 또는 가변장복호과정에 있어서 에러가 발생했을 때, 소정의 패턴을 가지는 스타트코드에 이어지는 세그먼트의 헤더정보를 해석하고, 그 해석종료 후 소정의 조건이 만족될 때까지 그 해석된 헤더정보에 이어지는 데이터블록의 처리를 지체하고 있다.
에러발생시에 있어서도, 처리개시시에 소정의 에러의 영향을 받지않는 세그먼트로 부터 처리를 개시할 수 있는 동시에, 이 처리 개시시에 있어서도 데이터블록의 복호처리로 부터 처리가 개시되기 때문에, 에러회복 후에 있어서도 데이터처리수단에 포함되는 처리연산기의 사용효율저하를 억제할 수가 있고, 고속으로 데이터처리를 실행할 수가 있다.
(5) 세그먼트의 처리구간을 1처리단위로서 파이프라인을 구성하고 있다.
각 파이프라인의 연산기의 사용효율의 저하를 최저한으로 억제할 수가 있으며, 고속데이터처리가 가능하게 된다.
또, 파이프라인스테이지에 의해, 1처리단위(세그먼트)를 복수의 처리구간으로 파이프라인적으로 분담할 수가 있어서, 처리구간의 시간기간을 단축할 수가 있고, 고속데이터처리가 가능하게 된다.
(6) 파이프라인스테이지를, 세그먼트를 단위로하여, 그 처리내용에 따라서 4 단의 파이프라인 구성으로 하고 있다.
처리구간의 시간기간이 변동해도 최소의 처리연산기의 대기시간으로 파이프라인 동작을 실시할 수가 있고, 고속데이터처리를 행할 수가 있다.
또, 이 파이프라인화에 의해, 헤더정보의 해석을 데이터처리와 병행하여 행할 수가 있고, 처리구간의 시간기간을 단축할 수 있고, 고속데이터 처리가 실현된다.
(7) 에러 발생시에는, 파이프라인스테이지내에 있어서 에러가 검출된 세그먼트 보다도 앞의 세그먼트의 블록데이터의 수복동작을 행하고 있어서, 파이프라인스테이지의 지연이 효율적으로 이용되어서 에러가 생긴 세그먼트에 대해서 에러수복동작을 실시할 수가 있고, 에러비트혼입에 의한 복호화상의 화질열화를 억제할 수가 있다.
(8) 리세트요구가 나왔을때는, 소정의 패턴을 가지는 스타트코드를 탐색하고, 그 스타트코드에 이어지는 세그먼트의 헤더정보를 모두 해석한 후 소정의 조건이 성립했을 때에, 처리개시지시신호를 어서트하여, 이 세그먼트의 데이터블록의 처리를 시행시키고 있다.
리세트시에도 확실하게 픽처의 최초로 부터 처리를 실행할 수가 있는 동시에, 개시에 응해서 곧 처리연산기를 동작시켜서 데이터처리를 행할 수가 있으며, 고속처리를 행할 수가 있다.
(9) 외부로 부터 제공되는 화상의 개시를 표시하는 픽처동기신호(수직동기신호)에 동기하여 데이터복호처리를 개시시키도록 구성되어 있다.
리세트시에 있어서도 외부제어장치로 부터 제공되는 동기신호와의 동기를 확립하여 정확한 화소데이터의 보호동작 및 표시화상데이터의 판독을 행할 수가 있다.

Claims (32)

  1. 미리 정해진 수순에 따라서 압축처리된 동화상을 소정 사이즈의 세그먼트단위로 신장하는 화상 디코딩 회로에 있어서, 상기 세그먼트는 처리해야할 데이터를 포함하는 데이터 블록과, 상기 데이터블록의 데이터속성을 나타내는 정보를 가지는 헤더를 가지며, 상기 동화상 정보를 나타내는 비트스트림을 수신하고 상기 세그먼트의 헤더의 정보를 해석하여 다음에 실행되어야할 처리를 표시하는 정보를 생성하는 헤더 디코딩 수단(3,6)과, 상기 헤더 디코딩 수단에서의 상기 세그멘트의 헤더의 정보의 해석종료를 나타내는 신호(φCPL)에 응답해서 데이터 처리 개시지시신호(MBSYNC)를 발생하는 제어수단(1226)과, 상기 데이터 처리 개시지시신호에 응답해서 기동되며, 상기 세그먼트의 헤더에 계속하는 데이터 블록의 상기 헤더디코딩 수단의 해석결과에 의거해서 처리를 실행하는 데이터 처리수단(4,1214,1216,1218,1220)을 구비하고, 상기 헤더 디코딩 수단은 상기 종료신호를 발생하도록 선행의 세그먼트의 처리를 중단없이 계속하고, 각 상기 세그먼트에 중단없이 계속해서 주어지는 헤더의 정보를 분석하는 화상 디코딩 장치.
  2. 제1항에 있어서, 상기 제어수단(1226)은 상기 종료신호를 수신하게 결속되고 소정의 조건이 일치되는 것을 판정하고 상기 소정의 조건이 판정의 결과가 일치할때 상기 데이터처리 개시표시신호(MBSYNC)를 어서트하는 상기 종료신호의 어서트에 응답하는 구동수단(11,12,16)을 포함하는 화상 디코딩 회로.
  3. 제1항에 있어서, 상기 데이터 처리 개시표시신호(MBSYNC)는 세그먼트를 처리하는 주기를 판정하는 화상 디코딩 회로.
  4. 제2항에 있어서, 상기 데이터 처리수단(4,1212,1214,1216)에서 주어지고 그에 의해 처리된 상기 비트 스트림의 데이터를 기억하는 외부 메모리(1230)를 더 구비하고, 상기 제어수단(1226)은 상기 외부 메모리로 억세스가 되지않고 상기 종료신호가 어서트될때 상기 데이터 처리 개시 지시신호의 선행의 어서트가 인가되므로서 프리세트 시간이 경과되는 것을 확인하는 구동수단(11,12,16)을 구비하는 화상 디코딩 회로.
  5. 제1항에 있어서, 상기 제어수단(1226)은 프리세트 시간에 정각에 맞게 계수를 해서 어서트되는 상기 데이터 처리 개시 신호에 응답해서 활성화되는 타이머(16)과, 적어도 상기 타이머가 시간 계수가 상기 프리세트 시간에 도달하는것을 나타내는 정각신호를 발생하는 조건에서, 상기 종료 신호의 어서트에 응답해서 상기 데이터 처리 개시 지시신호(MBSYNC)를 어서트하는 상기 헤더 디코딩 수단(3,6)에서 종료 신호를 수신하게 결속되는 동작 드라이버(11)를 포함하는 화상 디코딩 회로.
  6. 제5항에 있어서, 상기 타이머(16)는 상기 프리세트 시간이 가변으로 되게하는 화상 디코딩 회로.
  7. 제5항에 있어서, 상기 제어수단(1226)은 헤더의 수신 정보에 따라 상기 프리세트 시간을 변경하는 상기 헤더 디코딩 수단(3,6)에서 헤더의 정보를 수신하게 결속되는 수단(11)을 포함하는 화상 디코딩 회로.
  8. 제1항에 있어서, 상기 압축동화는 예상 인코딩을 행하는 화소 데이터를 포함하고, 상기 데이터 처리수단(4,1212,1216,1218)은 원래의 화소 데이터를 복구하는 상기 데이터 블록의 상기 데이터상의 예상 인코딩에 역으로 신장처리를 행하는 수단(1212,1216,1218,1220)과, 상기 제어수단(1226)은 메모리 수단(1230)의 외부에 설치되어 상기 데이터 처리 수단에서 상기 복구 화소 데이터의 기억을 행하고, 메모리 장치로 상기 비트스트림의 데이터를 기록하고, 상기 메모리 장치에서 상기 복구된 화소 데이터사이에 나타나도록 데이터를 판독하며, 어서트되는 상기 데이터 처리 개시 지시 신호에 응답해서 상기 단위 처리부에서 소정의 순서로 상기 데이터 처리 어서트로 화소 데이터의 복구를 요구하는 예상화상 화소 데이터를 순차적으로 판독하는 억세스 수단(12)을 포함하는 화상 디코딩 회로.
  9. 제8항에 있어서, 상기 억세스 수단(12)은 상기 데이터 처리 개시 지시신호(MBSYNC)의 연속적인 어서트사이의 주기내에 상기 저장, 상기 기록, 상기 판독을 행하는 화상 디코딩 회로.
  10. 제8항에 있어서, 상기 억세스 수단(12)는 상기 데이터 처리 개시 표시 신호의 어서트에 응답해서, 메모리 장치로 복구된 화소 데이터의 저장과, 상기 메모리 장치로 비트 스트림의 데이터의 기록과, 상기 메모리장치에서 나타나도록 데이터의 판독과 상기 메모리장치에서 상기 데이터 처리수단 (1212,1214,1216)으로 예상화소 데이터의 데이터 판독과, 상기 메모리 장치에서 이 소정의 순서로 연속해서 상기 데이터 처리수단으로 비트 스트림의 데이터를 판독을 행하는 화상 디코딩 회로.
  11. 제1항에 있어서, 상기 데이터 처리수단(4,1212,1214,1216,1218,1220)은 하나의 세그먼트를 담당하는 각 파이프라인 스테이지에 의해 상기 세그먼트상에 파이프라인 방법으로 처리하는 복수의 파이프라인 스테이지를 포함하는 화상 디코딩 회로.
  12. 제11항에 있어서, 메모리 장치(1230)에서 예상 화상 데이터로드를 하고, 상기 데이터 블록의 직교 변환계수의 가변장 디코딩및 역 양자화를 행하는 제1의 파이프라인 스테이지와, 상기 로드된 예상화상화소 데이터에서 예상화상을 작성하는 제2의 파이프라인 스테이지와, 상기 역양자화된 화소 데이터의 역직교 변환처리및 상기 예상화상화소데이터와 상기 역직교 변환처리된 화소 데이터에서 상기 데이터 블록의 화소 데이터의 복구를 행하는 제3파이프라인 스테이지와, 상기 복원된 화소 데이터의 상기 기억장치에의 기록을 행하는 제4파이프라인 스테이지를 포함하는 화상 신장회로.
  13. 제11항에 있어서, 상기 제어수단(4)에서 발생된 에러 검출신호에 응답해서 상기 데이터 처리수단(4,1212,1216,1218,1220)에서 처리순으로 검출된 상기 에러를 가지는 세그먼트 앞에 위치한 세그먼트의 데이터 블록의 상기 파이프라인 스테이지에서 소정의 에러 복구 처리를 행하는 수단(1216,1220)을 더 구비하는 화상 디코딩 회로.
  14. 제1항에 있어서, 상기 데이터 처리수단(4,1212,1214,1216,1218,1220)은 고정장 데이터를 발생하는 상기 데이터 블록의 가변장 디코딩 데이터용 가변장 디코더와, 수신된 고정장 데이터를 역양자화하는 상기 고정장 데이터를 수신하게 접속되는 역 양자화기(1214)와, 라스터 주사 순으로 수신된 역 양자화 고정장 데이터의 주사 순으로 변환하는 상기 역 양자화기에 결속되는 주사 컨버터(1216)와, 상기 주사 컨버터에서 수신된 데이터상에 소정의 직교변환을 행하는 상기 주사 컨버터에 결속되는 역 직교 트랜스포머(1218)와, 원래의 화소 데이터를 복구하기 위한 상기 역 직교 트랜스포머에서 수신된 데이터상에 소정의 동작을 행하는 상기 역 직교 트랜스포머에 결속되는 화소 재구성기(1220)를 구비하고, 상기 가변장 디코더, 상기 역 양자화기, 상기 주사 컨버터, 상기 역 직교 트랜스포머및 상기 화소 재구성기는 상기 데이터 처리 개시 지시 신호(MBSYNC)의 어서트에 응답해서 각 처리를 개시하도록 활성화 되는 화상 디코딩 회로.
  15. 제14항에 있어서, 상기 헤더 디코딩 수단은 상기 가변장 디코더에서 상기 현재 세그먼트의 데이터 블록의 처리 종료후, 적어도 상기 역 양자화기에서 현재 세그먼트의 처리 동작과 평행으로 다음 세그먼트의 헤더 정보의 해석을 행하는 해석수단(3)을 포함하는 화상 디코딩 회로.
  16. 제14항에 있어서, 상기 헤더 디코딩 수단(3,6)과, 상기 헤더 디코딩 수단에서 발생되는 에러를 검출하는 상기 데이터 처리수단(4)와, 에러 검출신호(φER)를 어서트하는 상기 데이터 처리수단을 더 구비하고, 상기 제어수단(1216)은 에러 처리 신호(φERR)를 어서트하는 상기 에러 검출신호를 수신하도록 결속되는 에러 처리수단(13,15)을 포함하며, 상기 주사 컨버터(1216)은 에러 은폐 데이터를 저장하고, 상기 에러 처리 신호의 어서트에 응답해서 상기 역 직교 트랜스포머로 에러 은폐데이터를 공금하는 에러 은폐수단(42,43,44,45)을 포함하는 화상 디코딩 회로.
  17. 제16항에 있어서, 상기 주사 컨버터(1216)는 세그먼트 단위상에 라스터 주사순으로 데이터의 스퀀스를 재정리하는 역 양자화기에서 데이터를 수신하게 결속되는 디코더수단(40,41)과, 저장용 세그먼트의 단위상에 수신된 데이터의 평균값을 얻는 상기 재정리 수단에서 데이터를 수신하도록 결속되는 평균/저장 수단과, 상기 정리 수단의 데이터를 수신하고 상기 역 직교 트랜스포머상의 상기 에러 처리 신호의 어서트에 응답해서 상기 평균/저장 수단으로 부터 수신된 데이터를 선택 통과하는 상기 평균/저장수단에 결속되는 선택수단(44,45)을 포함하는 화상 디코딩 회로.
  18. 제17항에 있어서, 상기 평균/저장 수단은 퍼스트 인 퍼스트 아웃(first in first out)형에서 스크린의 하나의 라인의 세그먼트 가치량의 평균 데이터를 저장하는 저장수단(43)을 포함하는 화상 디코딩 회로.
  19. 제17항에 있어서, 상기 화상 재구성기(1220)는 상기 복구된 화소 데이터로서 상기 역직교 트랜스포머(1218)에서 수신된 데이터를 선택 통과하는 상기 에러 처리 신호(φERR)의 어서트에 응답해서 선택수단(33,35)을 포함하는 화상 디코딩 장치.
  20. 제16항에 있어서, 상기 비트 스트림을 수신하게 결속되고 상기 에러 검출신호(φER)의 어서트에 응답해서 스타트 코드 검출 신호(φSD)를 발생하는 수신된 비트 스트림에서 소정패턴의 스타트 코드를 검출하는 상기 에러 검출기(5,6)와 결속되는 스타트 코드 검출 수단(2,6)을 더 구비하고, 상기 제어수단(1226)은 소정의 조건이 일치할때 상기 에러 처리 신호(φERR)를 디어서트하는 상기 스타트 코드 검출신호의 어서트에 응답하는 수단(11,13,15)을 포함하는 화상 디코딩 회로.
  21. 제20항에 있어서, 상기 비트 스트림은 에러에서 복귀한 세그먼트를 나타내는 어드레스를 포함하는 헤더 정보에 다음에 상기 스타트 코드를 포함하고, 상기 제어수단(1226)은 상기 어드레스와 상기 헤더 디코딩 수단(3,6)에서 상기 종료 신호와 상기 어드레스가 처리 개시 표시 신호(MBSYNC)의 다음 어서트에 응답해서 처리되는 세그먼트를 나타낼때 상기 소정의 조건을 판정하는 스타트 코드 검출신호를 수신하는 수단(11,13,15)을 포함하고 상기 종료신호와 상기 스타트 코드 검출 신호가 어서트되는 화상 디코딩 회로.
  22. 제21항에 있어서, 상기 소정의 조건은 처리 개시 표시 신호(MBSYNC)의 선행 어서트가 비트 스트림 데이터를 저장하는 외부 메모리(1230)과, 복구 화소 데이터및 외부 메모리에서 데이터 처리수단(4)으로 공급되는 비트스트림 데이터로 억세스 되지 않으므로 소정의 시간이 경과하는것을 더 포함하는 화상 디코딩 회로.
  23. 제1항에 있어서, 소정 패턴의 비트 스트림에서 헤더 정보의 다음에 이어지는 스타트 코드를 검출하는 비트 스트림을 수신하게 결속되는 스타트 코드 검출기(2,6)를 더 구비하고, 상기 제어수단(1226)은 디어서트되는 상기 데이터 처리 개시 표시 신호(MBSYNC)를 유지하고 상기스타트 코드 검출기가 스타트 코드를 검색하도록 상기 스타트 코드 검출기상에 스타트 신호를 어서트하는 리셋트 요구 신호(φRRQ)에 응답하는 초기화 수단(11,14)을 구비하고, 상기 스타트 신호는 또, 헤더 디코딩 수단이 스타트 코드에 이어지는 헤더의 정보를 해석하도록 상기 헤더 디코딩 수단(3,6)에 인가되며, 상기 데이터 처리 개시 표시 신호를 어서트하기 위해 헤더 디코딩 수단에서 종료 신호와 상기 스타트 코드 검출기에서 어서트되는 스타트 코드 검출 신호에 응답하는 구동수단(11,15)을 구비하는 화상 디코딩 회로.
  24. 제23항에 있어서, 비트 스트림의 데이터와 상기 데이터 처리수단(4,1212,1216,1218,1220)에 의해 복구되는 화소 데이터를 저장하는 외부 메모리(1230)를 더 구비하고, 상기 제어수단(1226)은 상기 외부 메모리로의 억세스와 상기 외부 메모리와 상기 데이터 처리수단 사이의 데이터 전송을 모니터하는 상기 외부 메모리에 결속된 버스 콘트롤러(12)와, 상기 구동 수단(11,14)에 결속되고 계수가 프리세트 시간에 다달았을때 타임 엎 신호를 발생하는 프리세트 시간까지 시간 계수종료하는 상기 데이터 처리 개시 표시신호의 어서트에 응답하는 타이머(16)과, 상기 구동 수단(11,15)은 상기 버스 콘트롤러와 상기 타이머에 결속되고 디스플레이 스크린상에 픽쳐를 나타내는 타이밍을 제공하는 픽쳐 동기화 신호를 수신하며, 상기 외부 메모리에서 상기 데이터 처리수단으로 전송되는 비트 스트림의 데이터와 상기 외부 메모리와 어서트되는 상기 타임 엎 신호와 상기 스타트 코드 검출 신호와 상기 종료 신호 모두가 어서트될때 어서트되는 상기 데이터 처리 개시 표시신호를 발생하는 어서트된 상기 픽쳐 동기화 신호로 억세스가 되지 않는것을 나타내는 상기 버스 콘트롤러에 응답하는 수단을 포함하는 화상 디코딩 회로.
  25. 제23항에 있어서, 상기 구동수단(11,15)은 상기 리셋트 신호가 어서트될때 상기 데이터 처리수단(4,1212,1216,1218,1220)이 인가되는 세그먼트의 데이터상의 처리를 종료하기 까지 상기 스타트 신호의 어서트를 지연하는 수단(15)을 포함하는 화상 디코딩 회로.
  26. 제24항에 있어서, 상기 외부 메모리에 저장되는 비트 스트림의 적어도 소정의 데이터량과 상기 외부 메모리에서 상기 데이터 처리수단으로 전송된 적어도 비트 스트림 또다른 소정의 데이터량을 나타내는 상기 버스 콘트롤러(12)에 응답하는 상기 구동수단(11,15)을 구비하는 화상 디코딩 회로.
  27. 압축전 화상 데이터를 복구하는 소정 사이즈의 세그먼트 단위에서 소정의 수순에 따라 압축 동화를 신장하고, 상기 압축동화는 가변장으로 인코드되고, 피처리되는 데이터를 포함하는 데이터 블록을 가지는 각 상기 세그먼트와, 상기 데이터 블록의 속성을 나타내는 정보를 가지는 헤더를 구비한 화상 디코딩 장치에 있어서, (i) 공급된 비트스트림에서 헤더를 검출하고 상기 헤더 정보 모두의 해석의 신호 표시 종료(φCPL)을 발생하는 수단(6)을 포함하는 상기 헤더의 정보를 해석하는 해석수단(3,6)과, (ii) 상기 해석수단의 상기 해석결과에 의거해서 상기 세그먼트의 데이터 블록의 화소 데이터를 가변장을 디코딩하고, 고정장 화소 데이터를 형성하며 상기 데이터 블록의 화소 데이터가 원래의 화소 데이터로 복구하는 가변장 디코딩 수단(4,1212,1214,1216,1220)을 구비하는 데이터 처리수단(4,1212,1216,1218,1220)과, 상기 해석수단과 상기 가변장 디코딩 수단의 처리중에 에러가 검출될때 상기 에러를 나타내는 에러 검출 신호를 발생하는 상기 해석수단과 상기 가변 장 디코딩 수단에 결속되는 검출수단(5,6)과, 상기 에러 검출 신호에 응답해서 다가오는 상기 비트 스트림에서 소정의 패턴을 가지는 코드를 탐색하는 상기 검출수단에 결속되는 코드 탐색 수단(2,6)과, 상기 코드 탐색수단에 의해 코드 검출에 응답해서 상기 해석수단을 활성화하는 상기 코드 탐색 수단에 결속되는 활성화 수단(1226,6)과, 상기 해석수단으로 부터 상기 헤더의 상기 정보의 해석을 종료를 나타내는 해석 종료 표시신호에 응답해서 소정의 조건이 설정되기 까지 상기 데이터 처리수단에 의해 코드를 이어서 헤더 다음에 데이터 블록처리의 실행을 지연하는 수단(1226,6)을 구비하는 화상 디코딩 회로.
  28. 제27항에 있어서, 상기 데이터 처리수단은(4,1212,1216,1218,1220)은 처리 단위로서 상기 세그먼트를 파이프라인 방식으로 처리를 행하는 복수의 파이프라인 스테이지 스테이지를 포함하는 화상 디코딩 회로.
  29. 제28항에 있어서, 상기 파이프라인 스테이지는 역 양자화에의해 이어지는 상기 데이터 블록의 직교 변환 계수의 가변장을 인코딩하는 메모리 장치(1230)에서 예상 화상 데이터의 로드를 행하는 제1파이프라인 스테이지와, 상기 로드된 예상 화상 화소 데이터에서 예상 화소를 형성하는 제2파이프라인 스테이지와, 역 양자화 화소 데이터의 역 직교 변환 처리와 상기 예상 화상 화소 데이터와 역직교 변환 처리된 화소 데이터에서 상기 데이터 블록의 상기 화소 데이터의 복구를 행하는 제3스테이지와, 상기 메모리 장치에서 상기 복구된 화소 데이터를 기록하는 제4파이프 라인 스테이지를 구비하는 화상 디코딩 회로.
  30. 제28항에 있어서, 상기 에러가 상기 데이터 처리수단(4,1212,1216,1214,1218,1220)에서 처리 순으로 검출되는 세그먼트의 앞에 위치되는 세그먼트의 데이터 블록에서 상기 파이프라인 스테이지에서 소정의 에러 복구처리를 행하는 에러 검출신호에 응답하는 수단(1226, 1216, 1220)을 더 구비하는 화상 디코딩 회로.
  31. 압축전 화상 데이터를 복구하는 소정 사이즈의 세그먼트 단위에서 소정의 수순에 따라 압축 동화를 신장하고, 상기 압축동화는 가변장으로 인코드되고, 각 상기 세그먼트는 상기 데이터 블록의 속성을 나타내는 헤더를 이어서 화소 데이터를 포함하는 데이터 블록을 가지는 화상 디코딩 장치에 있어서, 공급된 비트 스트림에 포함되는 세그먼트의 헤더에 포함되는 정보를 해석하는 비트 스트림을 수신하게 결속되는 해석수단(3,6)과, 상기 해석수단의 상기 해석 결과에 따라 헤더를 이어 데이터 블록의 데이터상에 가변장 디코딩 처리를 행하고, 상기 데이터 블록의 상기 데이터를 원래 화상 데이터로 복구하는 가변장 디코딩 수단을 포함하는 데이터 처리수단(4,1212,1214,1216,1218,1220)과, 상기 스타트 신호에 응답해서 공급된 상기 비트 스트림에서 소정의 패턴을 가지는 코드를 탐색하는 탐색수단(2,6)과, 리셋트 요구 신호에 응답해서 상기 탐색수단을 개시하기위한 스타트 신호를 발생하는 수단(6,11,14)과, 상기 탐색수단에 의해 상기 코드의 검출에 응답하는 상기 해석수단을 활성화하는 수단(6,11,14)과, 상기 해석수단에서 상기 헤더의 상기 정보의 해석의 종료를 나타내는 해석 종료 표시 신호에 응답하는 소정의 조건이 설립하기 까지 상기 데이터 처리수단에 의해 상기 코드를 이어서 헤더를 잇는 데이터 블록의 처리의 실행을 지연하는 수단(11,12,15,16)을 구비하는 화상 디코딩 회로.
  32. 제31항에 있어서, 상기 소정의 조건은 디스플레이되는 화상의 스타트 점을 나타내는 동기 신호(PSYNC)를 인가하는 것인 화상 디코딩 회로.
KR1019960005804A 1995-03-09 1996-03-06 동화상 디코딩 회로 KR100232992B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP95-049798 1995-03-09
JP04979895A JP3732867B2 (ja) 1995-03-09 1995-03-09 画像伸張装置

Publications (2)

Publication Number Publication Date
KR960035340A KR960035340A (ko) 1996-10-24
KR100232992B1 true KR100232992B1 (ko) 1999-12-01

Family

ID=12841175

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960005804A KR100232992B1 (ko) 1995-03-09 1996-03-06 동화상 디코딩 회로

Country Status (5)

Country Link
US (1) US5699117A (ko)
EP (2) EP0731422B1 (ko)
JP (1) JP3732867B2 (ko)
KR (1) KR100232992B1 (ko)
DE (2) DE69613873T2 (ko)

Families Citing this family (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69614500T2 (de) * 1996-02-27 2001-11-22 St Microelectronics Srl Speicherverminderung für das Grundprofil und die Hauptebene eines MPEG-2-Dekoders
US6208689B1 (en) * 1996-03-04 2001-03-27 Mitsubishi Denki Kabushiki Kaisha Method and apparatus for digital image decoding
KR100203266B1 (ko) * 1996-07-09 1999-06-15 윤종용 윤곽선복호화장치
US6208655B1 (en) * 1996-11-27 2001-03-27 Sony Europa, B.V., Method and apparatus for serving data
US6128340A (en) * 1997-03-14 2000-10-03 Sony Corporation Decoder system with 2.53 frame display buffer
US6404813B1 (en) * 1997-03-27 2002-06-11 At&T Corp. Bidirectionally predicted pictures or video object planes for efficient and flexible video coding
US6993201B1 (en) 1997-07-08 2006-01-31 At&T Corp. Generalized scalability for video coder based on video objects
US6233356B1 (en) 1997-07-08 2001-05-15 At&T Corp. Generalized scalability for video coder based on video objects
JP4092734B2 (ja) * 1997-11-05 2008-05-28 ソニー株式会社 ディジタル信号変換方法およびディジタル信号変換装置
US6728313B1 (en) * 1998-01-08 2004-04-27 Intel Corporation Method and apparatus for performing MPEG II dequantization and IDCT
US6373905B1 (en) * 1998-02-13 2002-04-16 Matsushita Electric Industrial Co., Ltd. Decoding apparatus and decoding method
EP0944263A1 (en) * 1998-03-20 1999-09-22 Texas Instruments Incorporated Image compression
US6636222B1 (en) * 1999-11-09 2003-10-21 Broadcom Corporation Video and graphics system with an MPEG video decoder for concurrent multi-row decoding
US6563953B2 (en) * 1998-11-30 2003-05-13 Microsoft Corporation Predictive image compression using a single variable length code for both the luminance and chrominance blocks for each macroblock
US6975254B1 (en) * 1998-12-28 2005-12-13 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Methods and devices for coding or decoding an audio signal or bit stream
AU758372B2 (en) * 1999-03-05 2003-03-20 Kabushiki Kaisha Toshiba Method and apparatus for coding moving picture image
JP2001113759A (ja) 1999-10-15 2001-04-24 Ricoh Co Ltd 画像データ出力装置
US7286724B2 (en) * 1999-12-06 2007-10-23 Hyundai Curitel, Inc. Method and apparatus for searching, browsing and summarizing moving image data using fidelity for tree-structure moving image hierarchy
JP4526145B2 (ja) * 1999-12-28 2010-08-18 富士通セミコンダクター株式会社 Mpegビデオ復号器およびmpegビデオ復号方法
JP2001275116A (ja) * 2000-03-24 2001-10-05 Sharp Corp 画像処理装置
JP3877947B2 (ja) * 2000-09-29 2007-02-07 パイオニア株式会社 符号化データの転送制御方法及び蓄積再生システム
US6678590B1 (en) * 2000-10-17 2004-01-13 Bbnt Solutions Llc Vehicle navigation system with vision system preprocessor using MPEG encoder
EP1217843B1 (en) 2000-12-19 2012-11-28 Canon Kabushiki Kaisha Image processing method, apparatus, and storage medium
JP2002271788A (ja) * 2001-03-08 2002-09-20 Monolith Co Ltd 画像符号化方法と装置および画像復号方法および装置
JP2003179929A (ja) * 2001-12-10 2003-06-27 Oki Electric Ind Co Ltd 画像復号化装置
US7200275B2 (en) 2001-12-17 2007-04-03 Microsoft Corporation Skip macroblock coding
US7428338B2 (en) 2002-01-10 2008-09-23 Ricoh Co., Ltd. Header-based processing of images compressed using multi-scale transforms
US6826042B2 (en) 2002-05-03 2004-11-30 Hewlett-Packard Development Company, L.P. Input device and methods and systems for same
JP3817257B2 (ja) 2003-04-10 2006-09-06 松下電器産業株式会社 情報記録媒体、情報記録媒体に情報を記録する装置及び方法
US7349428B2 (en) * 2003-06-30 2008-03-25 Broadcom Corporation Data alignment of the packetized elementary streams in the coded data buffer for dual decode
US20050013498A1 (en) 2003-07-18 2005-01-20 Microsoft Corporation Coding of motion vector information
US8064520B2 (en) * 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
US7567617B2 (en) 2003-09-07 2009-07-28 Microsoft Corporation Predicting motion vectors for fields of forward-predicted interlaced video frames
US7889792B2 (en) * 2003-12-24 2011-02-15 Apple Inc. Method and system for video encoding using a variable number of B frames
US7869503B2 (en) 2004-02-06 2011-01-11 Apple Inc. Rate and quality controller for H.264/AVC video coder and scene analyzer therefor
US7453938B2 (en) * 2004-02-06 2008-11-18 Apple Inc. Target bitrate estimator, picture activity and buffer management in rate control for video coder
US7492820B2 (en) * 2004-02-06 2009-02-17 Apple Inc. Rate control for video coder employing adaptive linear regression bits modeling
US7986731B2 (en) 2004-02-06 2011-07-26 Apple Inc. H.264/AVC coder incorporating rate and quality controller
US7415161B2 (en) * 2004-03-25 2008-08-19 Faraday Technology Corp. Method and related processing circuits for reducing memory accessing while performing de/compressing of multimedia files
US20050286629A1 (en) * 2004-06-25 2005-12-29 Adriana Dumitras Coding of scene cuts in video sequences using non-reference frames
US7983493B2 (en) * 2004-10-05 2011-07-19 Vectormax Corporation Adaptive overlapped block matching for accurate motion compensation
JP4281722B2 (ja) * 2004-10-26 2009-06-17 ソニー株式会社 再生装置、再生方法、プログラムおよび記録媒体
TWI266539B (en) * 2005-01-13 2006-11-11 Via Tech Inc Decoding device with multi-buffers
KR100785855B1 (ko) * 2005-07-19 2007-12-14 한국전자통신연구원 향상된 snr 스케일러빌리티 제공을 위한 양자화 장치 및방법
US9077960B2 (en) 2005-08-12 2015-07-07 Microsoft Corporation Non-zero coefficient block pattern coding
JP2007053554A (ja) * 2005-08-17 2007-03-01 Sony Corp 符号化装置、符号化方法、復号装置、復号方法およびプログラム
US8937997B2 (en) * 2006-03-16 2015-01-20 Apple Inc. Scalable video coding/multiplexing compatible with non-scalable decoders
US7813565B2 (en) * 2006-04-05 2010-10-12 Sharp Kabushiki Kaisha Image processing apparatus, image forming apparatus, and image processing method
US7456760B2 (en) * 2006-09-11 2008-11-25 Apple Inc. Complexity-aware encoding
JP5134001B2 (ja) * 2006-10-18 2013-01-30 アップル インコーポレイテッド 下層のフィルタリングを備えたスケーラブルビデオ符号化
US8447933B2 (en) * 2007-03-06 2013-05-21 Nec Corporation Memory access control system, memory access control method, and program thereof
WO2008114403A1 (ja) * 2007-03-20 2008-09-25 Fujitsu Limited デコード方法、デコーダ及びデコード装置
KR101086435B1 (ko) * 2007-03-29 2011-11-25 삼성전자주식회사 영상 데이터 스트림의 에러 검출 방법 및 그 장치
WO2009047697A2 (en) * 2007-10-08 2009-04-16 Nxp B.V. System and method for error concealment
JP5194762B2 (ja) * 2007-12-14 2013-05-08 ヤマハ株式会社 データ圧縮装置およびデータ伸張装置
US20090304086A1 (en) * 2008-06-06 2009-12-10 Apple Inc. Method and system for video coder and decoder joint optimization
US20090323807A1 (en) * 2008-06-30 2009-12-31 Nicholas Mastronarde Enabling selective use of fractional and bidirectional video motion estimation
JP5206960B2 (ja) * 2008-10-29 2013-06-12 株式会社メガチップス 画像圧縮装置
JP2011066844A (ja) * 2009-09-18 2011-03-31 Toshiba Corp 並列復号装置及びプログラム並びに符号化データの並列復号方法
US8976856B2 (en) 2010-09-30 2015-03-10 Apple Inc. Optimized deblocking filters
EP3125562B1 (en) * 2010-09-30 2022-04-06 Sun Patent Trust Image decoding method, image coding method, image decoding apparatus, image coding apparatus, program, and integrated circuit
JP2013009272A (ja) * 2011-06-27 2013-01-10 Toshiba Corp 画像符号化装置、方法及びプログラム、並びに、画像復号化装置、方法及びプログラム
KR102157672B1 (ko) * 2013-11-15 2020-09-21 에스케이하이닉스 주식회사 반도체 장치 및 이의 동작 방법
JPWO2016157724A1 (ja) * 2015-03-27 2018-01-18 パナソニックIpマネジメント株式会社 動画像復号装置
US10489159B2 (en) 2016-12-21 2019-11-26 Microsoft Technology Licensing, Llc Pipelined decompression of sliding window compressed data
US10483981B2 (en) 2016-12-30 2019-11-19 Microsoft Technology Licensing, Llc Highspeed/low power symbol compare
US10691361B2 (en) * 2017-02-24 2020-06-23 Microsoft Technology Licensing, Llc Multi-format pipelined hardware decompressor
US10735826B2 (en) * 2017-12-20 2020-08-04 Intel Corporation Free dimension format and codec
EP3700206A4 (en) * 2018-12-17 2020-11-18 LG Electronics Inc. METHOD AND APPARATUS FOR DECISION OF THE TRANSFORMATION COEFFICIENT SCANNING SEQUENCE BASED ON THE HIGH-FREQUENCY ZERO-POINT RESET
US20230004533A1 (en) * 2021-07-01 2023-01-05 Microsoft Technology Licensing, Llc Hybrid intermediate stream format

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5291306A (en) * 1989-09-25 1994-03-01 Canon Kabushiki Kaisha Image reproducing apparatus
CA2062200A1 (en) * 1991-03-15 1992-09-16 Stephen C. Purcell Decompression processor for video applications
CA2096584A1 (en) * 1992-05-28 1993-11-29 Frank H. Liao Variable length code decoder for video decompression operations
US5440345A (en) * 1992-07-17 1995-08-08 Kabushiki Kaisha Toshiba High efficient encoding/decoding system
JP3190755B2 (ja) * 1993-01-22 2001-07-23 株式会社東芝 復号装置
FR2705805B1 (fr) * 1993-05-27 1996-06-28 Sgs Thomson Microelectronics Système de traitement d'images.
US5596369A (en) * 1995-01-24 1997-01-21 Lsi Logic Corporation Statistically derived method and system for decoding MPEG motion compensation and transform coded video data

Also Published As

Publication number Publication date
EP1085465A3 (en) 2001-06-27
DE69613873D1 (de) 2001-08-23
KR960035340A (ko) 1996-10-24
DE69613873T2 (de) 2002-04-04
JPH08251595A (ja) 1996-09-27
EP1085465A9 (en) 2001-06-27
EP0731422A3 (en) 1997-05-28
DE69634052T2 (de) 2005-12-22
US5699117A (en) 1997-12-16
EP1085465A2 (en) 2001-03-21
EP0731422A2 (en) 1996-09-11
EP1085465A8 (en) 2001-07-25
EP0731422B1 (en) 2001-07-18
DE69634052D1 (de) 2005-01-20
EP1085465B1 (en) 2004-12-15
JP3732867B2 (ja) 2006-01-11

Similar Documents

Publication Publication Date Title
KR100232992B1 (ko) 동화상 디코딩 회로
USRE48845E1 (en) Video decoding system supporting multiple standards
EP0843485B1 (en) Video decoder with unified memory
JP3395166B2 (ja) 統合ビデオ復号化システム、フレーム・バッファ、符号化ストリーム処理方法、フレーム・バッファ割当て方法及び記憶媒体
KR100376207B1 (ko) 비디오신장프로세서에있어서디램(dram)의효율적인어드레싱을행하기위한방법및장치
EP0712249A2 (en) Pixel interpolation filters for video decompression processor
JPH08130745A (ja) 復号化システム、復号化装置および復号化回路
JP2007510320A (ja) 画像データを処理する方法及び装置
JPH08214312A (ja) ビデオ・デコンプレッション・プロセッサのためのシンタックスパーサ
KR19990023207A (ko) 엠펙 복호화기내에서의 조기 에러 검출 방법 및 그 시스템
US9100653B2 (en) Memory transfer controller and method of transfer control of video line data and macroblock data
US20030016745A1 (en) Multi-channel image encoding apparatus and encoding method thereof
JP2000295616A (ja) 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法及びプログラム記録媒体
KR100215824B1 (ko) 엠펙 디코더의 프레임 메모리 및 영상 데이타 디코딩방법
KR100681242B1 (ko) 동영상 복호화 방법, 동영상 복호화 장치 및 이를 가지는시스템 온 칩 시스템
JP4010617B2 (ja) 画像復号化装置及び画像復号化方法
JP2005124091A (ja) 復号装置及び復号方法
JP3744017B2 (ja) 画像デコーダ
JP4906197B2 (ja) 復号装置および方法、並びに記録媒体
JP3141149B2 (ja) 画像符号化装置
KR20170053031A (ko) 복수개의 블록 기반의 파이프라인을 이용한 데이터 처리 속도 개선 장치 및 그 동작 방법
JP2002010264A (ja) 圧縮データの置き換え装置
JP2002325255A (ja) 復号装置、復号方法およびその方法をコンピュータに実行させるプログラム
JP2004328647A (ja) 復号化方法、および復号化装置
JPH08294117A (ja) 画像復号化装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120907

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20140205

Year of fee payment: 15

LAPS Lapse due to unpaid annual fee