KR100504507B1 - 비디오 디코딩 시스템 - Google Patents

비디오 디코딩 시스템 Download PDF

Info

Publication number
KR100504507B1
KR100504507B1 KR10-2003-0002989A KR20030002989A KR100504507B1 KR 100504507 B1 KR100504507 B1 KR 100504507B1 KR 20030002989 A KR20030002989 A KR 20030002989A KR 100504507 B1 KR100504507 B1 KR 100504507B1
Authority
KR
South Korea
Prior art keywords
memory
field
video
bit
data
Prior art date
Application number
KR10-2003-0002989A
Other languages
English (en)
Other versions
KR20040065809A (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 엘지전자 주식회사
Priority to KR10-2003-0002989A priority Critical patent/KR100504507B1/ko
Publication of KR20040065809A publication Critical patent/KR20040065809A/ko
Application granted granted Critical
Publication of KR100504507B1 publication Critical patent/KR100504507B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • H04N19/45Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder performing compensation of the inverse transform mismatch, e.g. Inverse Discrete Cosine Transform [IDCT] mismatch
    • 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/172Methods 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 picture, frame or field
    • 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/176Methods 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 block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명에 따른 비디오 디코딩 시스템은, 외부 64비트 데이터 버스를 갖는 DDR SDRAM를 이용하는 비디오 디코더에서 비월 주사 영상의 경우는 필드 구조의 외부 메모리 맵을 구성하고, 순차 주사 영상의 경우는 프레임 구조의 메모리 맵을 구성한 후 한번의 억세스로 하나의 매크로 블록을 저장하고, 읽을 수 있도록 함으로써, 비디오 디코더의 전체 밴드폭을 줄일 뿐만 아니라 로컬 프로세싱 타임도 줄일 수 있다. 특히, 2개 HD급 영상 신호의 디코딩이나 기타 고성능의 프로세싱을 요하는 비디오 디코더의 성능을 향상시킬 수 있다.

Description

비디오 디코딩 시스템{Apparatus for video decoding}
본 발명은 디지털 TV 또는, 디지털 화상회의 시스템 응용분야에 적용하는 엠펙(Moving Picture Experts Group ; MPEG)-2 비디오 디코딩 시스템 및 비디오 디코딩 시스템에 관한 것이다.
일반적인 MPEG-2 비디오 디코딩 시스템은 트랜스포트 디코더, 비디오 디코더, 비디오 디스플레이 프로세서(VDP), 외부 메모리, 호스트 인터페이스 등으로 구성되어 있다. 또한, 외부 메모리의 경우 입력 비트 스트림과 움직임 보상을 위한 프레임들을 저장하기 위해 사용되며, 통상 외부 디램(DRAM)이 사용된다.
MPEG-2 표준 규격 안에서 MP@HL 모드를 지원하기 위해서는 약 10Mbits의 비트-버퍼 사이즈가 요구되며, 최대 허용 비트율(bit rate)이 약 80Mbit/s에 이른다. 기존의 16Mbits DRAM을 기반으로 하는 MPEG-2 디코더의 경우 약 96∼128Mbits의 외부 메모리를 필요로 한다.
그러므로 제품 및 소비자 응용에 있어서 가격 경쟁력을 갖기 위해서는 고 가격의 메모리를 줄이면서 좋은 화질을 유지할 수 있는 필요성이 대두된다. 또한, 각종 OSD(On Screen Display) 및 다양한 서비스를 제공하고 있는 추세에 비추어 앞으로는 추가적인 메모리의 증가가 필연적이다.
최근에 MPEG-2와 같은 비디오 압축 복원 시스템의 경우 여러 종류의 비디오 신호를 멀티 디코딩하여 동시에 디스플레이함으로써 다양한 서비스를 제공하고 있다. 이런 경우 한정된 외부 메모리를 이용하여 여러개의 비디오 신호를 디코딩할 수 있어야 한다. 일반적인 비디오 디코딩 칩들의 메모리 데이터 버스는 예를 들면, broadcom의 BCM7021의 64비트, 테라로직의 TL850의 64비트, 필립스의 TM1000의 32비트 등이 있다. 특히 2개의 HD 영상을 디코딩하기 위해서는 64비트 메모리 데이터 버스의 경우는 매우 높은 클럭을 쓰거나, 128비트의 넓은 데이터 버스를 사용해야 한다.
결국, 메모리의 한계성, 가격, 및 데이터 버스의 밴드폭를 고려해 볼 때 비디오 디코딩 칩의 효과적인 메모리 인터페이스 장치가 필요하다.
또한, 그 사용 목적에 따라 예를 들면, 두 개의 고화질 HD(High Definition)급 영상을 디스플레이하거나, 다양한 데이터 방송 등을 지원하기 위해서는 디코딩 칩의 처리 속도를 증가시켜야 하며 이를 위해서는 높은 데이터 처리 속도를 가지는 더블 데이터 레이트(double data rate ; DDR) 동기식 DRAM(SDRAM) 등의 외부 메모리가 필요하다.
본 발명의 목적은 DDR SDRAM용 64비트의 외부 데이터 버스를 지원하면서 메모리 밴드폭 및 디코딩 시간을 줄이기 위한 비디오 디코딩 시스템을 제공함에 있다.
상기와 같은 목적을 달성하기 위한 본 발명에 따른 비디오 디코딩 시스템은, 128비트 내부 메모리 버스를 통해 압축된 비트 스트림을 가변 길이 디코딩, 역 양자화, 역 이산 코사인 변환, 움직임 보상을 수행하여 원 영상 신호로 복원하는 비디오 디코딩부와, 64비트 외부 데이터 버스를 이용하여 비디오 디코딩된 데이터를 저장하거나 움직임 보상을 위해 저장된 데이터를 출력할 때, 필드 구조 또는 프레임 구조로 메모리 맵을 구성하여 휘도(Y) 또는, 색차(CbCr) 신호들을 동시에 저장하고, 동시에 출력하는 DDR SDRAM과, 128비트 내부 메모리 버스를 통해 비디오 디코딩부와 인터페이스하고, 64비트 외부 데이터 버스를 통해 상기 DDR SDRAM과 인터페이스하며, 한 매크로 블록의 데이터가 필드 단위 또는, 프레임 단위로 상기 DDR SDRAM에 저장되고, 읽어질 수 있도록 상기 비디오 디코딩된 데이터를 재배치하는 메모리 인터페이스부를 포함하여 구성되는 것을 특징으로 한다.
상기 메모리 인터페이스부는 디코딩된 매크로 블록이 비월 주사인 경우 Y 성분의 블록들에 대해서 톱 필드는 톱 필드끼리, 바텀 필드는 바텀 필드끼리 화소들을 재배열하여 필드 구조로 변환하는 것을 특징으로 한다.
상기 메모리 인터페이스부는 디코딩된 매크로 블록이 비월 주사인 경우 Cb 성분의 8*8 블록에 대해서 톱 필드는 톱 필드끼리, 바텀 필드는 바텀 필드끼리 화소들을 재배열하고, Cr 성분의 8*8 블록에 대해서도 톱 필드는 톱 필드끼리, 바텀 필드는 바텀 필드끼리 화소들을 재배열하여 필드 구조로 변환한 후 각 4*4 픽셀의 Cb 톱 필드, Cr 톱 필드, Cb 바텀 필드, Cr 바텀 필드의 화소들로 각각의 8*8 블록들을 구성하여 64비트 단위로 메모리 억세스시 64비트의 Y 신호에 상응하는 64비트 단위의 색차 신호를 억세스하도록 하는 것을 특징으로 한다.
상기 메모리 인터페이스부는 디코딩된 매크로 블록에 대해서 128비트를 하나의 워드로 구성하고, 한번의 외부 메모리 억세스로 16개의 워드를 상기 외부 메모리에 저장하거나 읽어내도록 제어하는 것을 특징으로 한다.
상기 비디오 디코딩부는 움직임 보상시 휘도(Y), 색차(CbCr) 신호들에 대해 병렬로 하프 펠 보간을 수행하는 것을 특징으로 한다.
본 발명의 다른 목적, 특징 및 잇점들은 첨부한 도면을 참조한 실시예들의 상세한 설명을 통해 명백해질 것이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예의 구성과 그 작용을 설명하며, 도면에 도시되고 또 이것에 의해서 설명되는 본 발명의 구성과 작용은 적어도 하나의 실시예로서 설명되는 것이며, 이것에 의해서 상기한 본 발명의 기술적 사상과 그 핵심 구성 및 작용이 제한되지는 않는다.
도 1은 본 발명에 따른 비디오 디코더의 구성 블록도로서, 압축된 비트 스트림에 대해 가변길이 디코딩(Variable Length Decoding ; VLD), 역 양자화(Inverse Quantized ; IQ), 역 이산 코사인 변환(Inverse Discrete Cosine Transform ; IDCT), 및 움직임 보상(Motion Compensation ; MC) 등을 수행하여 원 영상 신호로 복원하는 비디오 디코딩부(100), 64비트의 외부 데이터 버스를 이용하여 데이터 읽기/쓰기를 수행하는 외부 메모리(201), 외부 메모리(201)와는 64비트 데이터 버스를 이용하고, 상기 비디오 디코딩부(100)와는 128비트 내부 메모리 버스를 이용하여 휘도(Y; Luminance) 또는, 색차(C ; Chrominance) 신호들을 상기 외부 메모리(201)에 동시에 저장하고, 동시에 읽을 수 있도록 제어하는 메모리 인터페이스부(202), 및 상기 비디오 디코딩부(100)에서 원 영상 신호로 복원된 픽셀 값은 메모리(201)에 저장되어 있으며, 이렇게 저장된 픽셀 값을 메모리 인터페이스부(202)를 통해 메모리(201)로부터 읽어 와 픽쳐 타입에 따라 데이터를 재배열하거나 또는 그대로 디스플레이 장치로 출력하는 VDP(203)로 구성된다.
이와 같이 구성된 본 발명에서 외부 DDR SDRAM(201)과 메모리 인터페이스(202) 사이에는 64비트의 외부 데이터 버스를 이용하고, 상기 메모리 인터페이스(202)와 비디오 디코딩부(100) 사이에는 128비트 내부 메모리 버스를 사용한다.
한편, 압축된 비트 스트림은 비디오 디코딩부(100)의 버퍼(101)를 통해 VLD부(102)로 출력된다. 상기 VLD부(102)는 입력되는 비디오 비트스트림을 가변길이 디코딩하여 움직임 벡터, 양자화 값, DCT(Discrete Cosine Transform) 계수로 분리한 후 움직임 벡터(MV)는 움직임 보상부(106)로 출력하고, 양자화 값 및 DCT 계수는 IQ부(103)로 출력한다. 상기 IQ부(103)는 상기 DCT 계수를 양자화 값에 따라 역 양자화하여 IDCT부(104)로 출력하고, 상기 IDCT부(104)는 역 양자화된 DCT 계수를 IDCT하여 가산기(105)로 출력한다. 만일, 상기 비디오 디코딩부(100)가 일반적인 MPEG-2 비디오 디코더라면 상기 IDCT부(104)는 MPEG-2 비디오 신택스(syntax)에 맞게 8*8 블록 단위로 IDCT를 수행한다.
이때, MPEG에서 규정하는 픽쳐의 형태에는 I,P,B 픽쳐의 세가지가 있으며, 상기 IDCT부(104)를 통해 복원된 데이터가 I 픽쳐일 경우 그대로 디스플레이 할 수 있는 완전한 그림이고, B, P 픽쳐일 경우 움직임 보상부(106)를 통해 움직임 보상을 해야 하는 불완전한 그림이다.
즉, I 픽쳐를 기준으로 볼 때 움직임을 나타내는 정보인 움직임 벡터는 0이라고 볼수 있고, B, P 픽쳐일때는 외부 메모리부(201)에 저장되어 있는 이전 픽쳐를 이용하여 원래 화면으로 복원해야 한다.
따라서, 상기 VLD부(102)에서 출력되는 움직임 벡터는 움직임 보상부(106)로 출력되고, 상기 움직임 보상부(106)는 상기 움직임 벡터와 외부 메모리(201)에 저장된 이전 프레임을 이용하여 현재의 픽셀값에 대한 움직임 보상을 수행한 후 가산기(105)로 출력한다. 즉, 상기 움직임 보상부(106)는 외부 메모리(201)에 저장된 이전 픽쳐와 VLD부(102)에서 출력된 현재 B 또는 P 픽쳐에 대한 움직임 벡터를 이용하여 한 방향 또는 양방향 예측을 하여 B 또는 P 픽쳐를 완전한 영상으로 복원한다.
상기 가산기(105)는 IDCT된 값과 움직임 보상된 값을 더하여 최종 픽셀값인 완전한 영상으로 복원한 후 메모리 인터페이스부(202)를 통해 외부 메모리(201)에 저장한다. 즉, I 픽쳐의 경우는 IQ/IDCT한 결과가 바로 외부 메모리(201)에 저장되고, P 픽쳐나 B 픽쳐의 경우는 움직임 보상된 데이터와 IDCT된 결과가 가산기(105)에서 더해진 후 외부 메모리(201)에 저장된다.
이때, 본 발명은 64비트 데이터 버스를 가진 DDR SDRM을 이용하여 비디오 디코더 전체 밴드폭을 높일 뿐만 아니라 로컬 프로세서 타임도 줄이기 위해 Y(Luminance ; 밝기 성분)와 C(Chrominance ; 색차 성분) 신호들을 움직임 예측 보상시 용이하게 읽고 쓸수 있는 메모리 인터페이스부(202)를 제안한다.
도 2와 도 3은 본 발명에 따른 비월주사된 영상의 한 매크로 블록의 휘도(Y)와 색차 신호(CbCr)에 대한 화소 배치를 나타낸 것으로서, 도 2는 하나의 매크로 블록 중 Y 데이터를 나타내며 8bit x 16 x 16 데이터로 구성되고, 도 3은 하나의 매크로 블록 중 CbCr 데이터를 나타내며, 각각 8bit x 8 x 8로 구성된다.
통상, P 픽처나 B 픽처의 움직임 예측 보상시 메모리 사용의 효율성을 위해 데이터 쓰기 또는 읽기 요구에 따른 메모리 억세스 횟수를 줄이는 것이 중요하다.
따라서, 비월 주사된 시퀀스의 경우 프레임 예측 움직임 보상과 필드 예측 움직임 보상이 같이 존재하는 경우 도 2 및 도 3과 같이 Y와 C를 재배열하므로서 도 4와 같은 필드 구조의 메모리 맵을 얻을 수 있다.
즉, 도 2의 (a)의 Y 블록 0,2에서 화소들을 톱 필드는 톱 필드끼리, 바텀 필드는 바텀 필드끼리 도 2의 (b)와 같이 재배열하고, Y 블록 1,3에서도 화소들을 톱 필드는 톱 필드끼리, 바텀 필드는 바텀 필드끼리 도 2의 (b)와 같이 재배열하여 메모리 맵을 도 4와 같이 필드 단위로 구성한다.
그러면, 도 2의 (b)와 같이 Y 블록들은 톱 필드는 톱 필드끼리, 바텀 필드는 바텀 필드끼리 화소가 재배치되는데, 이때 하나의 Y 블록은 수평쪽으로 64비트를 구성하고, 두 개의 Y 블록을 한번에 억세스하게 되면 128비트가 된다.
결국 한 매크로 블록에 대해서 필드 예측 움직임 보상을 위한 외부 메모리 억세스시 컬럼 어드레스가 필드별로 순차 증가하게 되고, 이로 인해 메모리 리드 레이턴시(read latency)를 줄이므로 효율을 높일 수 있게 된다.
한편, CbCr 신호의 경우도 각 화소들을 톱 필드는 톱 필드끼리, 바텀 필드는 바텀 필드끼리 재배열하여 메모리 맵을 도 5와 같이 필드 단위로 구성하는데 이때, 하나의 C 블록은 각각 4*4 크기를 갖는 톱 필드의 Cb 화소, 톱 필드의 Cr 화소, 바텀 필드의 Cb 화소, 바텀 필드의 Cr 화소들로 재배열된다. 또다른 C 블록도 동일한 구조로 CbCr 화소들이 배열된다. 이는 하나의 C 블록이 톱 필드는 톱 필드끼리, 바텀 필드는 바텀 필드끼리 화소들을 재배치한 2개의 Y 블록에 대응하도록 하기 위해서이다.
즉, CbCr 신호의 경우 도 3의 (b)와 같이 재배열하여 주므로 64비트 단위로 메모리 억세스시 64비트의 Y 신호에 상응하도록 색 신호를 64비트 단위로 메모리 억세스하여 프로세싱 효율을 증대시킬 수 있다.
또한, 한번의 메모리 억세스시 16워드(= 1워드는 128비트임)까지 쓰고 읽기를 하도록 하여 한 매크로 블록을 메모리에 한번 억세스로 모두 쓸 수 있도록 하였다.
한편, 순차 주사된 시퀀스의 경우는 도 2의 Y 신호와 같이 필드 단위의 재배열을 하지 않고 원래 매크로 블록의 형태대로 배열하여 프레임 구조의 메모리 맵을 얻는다. 단 CbCr 신호에 대해서는 도 3과 같이 Cb와 Cr을 재배열하여 준다. 즉, 하나의 C 블록에서 앞쪽 4*8 부분은 Cb 화소들로 재배열하고, 뒤쪽 4*8 부분은 Cr 화소들로 재배열한다.
도 4는 Y신호의 경우 1 로우에 대한 매크로 블록들의 외부 메모리(201)의 컬럼 어드레스를 나타낸다. Y 신호의 경우 1 로우에 8개의 매크로 블록들로 구성된다.
이때, DDR SDRAM의 경우 외부 데이터 크기는 64비트로 라이징 에지 클럭과 폴링 에지 클럭을 모두 사용하므로 실제적인 메모리 맵은 도 4와 같이 128비트 단위로 구성되며, 컬럼 어드레스는 짝수 단위로 증가하게 된다.
즉, 어드레스가 0, 2, 4, 6 등으로 증가하며, 이에 따라 메모리 인터페이스부(202)가 짝수에 해당하는 컬럼 어드레스의 데이터는 라이징 에지 클럭에서, 홀수에 해당하는 컬럼 어드레스의 데이터는 폴링 에지 클럭에서 가져오게 된다. 그러므로, SDRAM 대비 DDR SDRAM은 같은 메모리 클록에서 메모리 효율이 두배가 증가되는 효과를 얻을 수 있다.
도 5는 색 신호의 경우 1 로우에 대한 매크로 블록들의 컬럼 어드레스를 나타낸다. 색 신호의 경우 1 로우에 16개의 매크로 블록들로 구성된다.
따라서, HD 1920x1080i 한 프레임을 위한 물리적 로우(physical row)의 개수는 Y가 255 로우가 필요하며, C가 136 로우가 필요하여 총 391 로우가 필요하게 된다.
도 6은 128비트 내부 데이터 버스를 가지는 비디오 디코더(100)의 외부 메모리(201)에 매크로 블록을 쓰기 위한 본 발명의 메모리 인터페이스부(202)의 블록도이다.
상기된 도 1에서 바와 같이 IDCT한 결과와 MC(움직임 보상)한 결과의 합인 매크로 블록 가산기(MB ADDER)(105)의 결과가 도 2 및 도 3과 같이 배열되어 외부 메모리(201)에 저장되는 관계를 나타낸다.
도 6을 보면, 외부 메모리(201)에 데이터를 쓰기 위한 메모리 인터페이스부(202)는 비디오 쓰기 버퍼(602)와 비디오 쓰기 제어부(603), 및 메모리 아비터(604)로 구성된다. 이때, 색차 신호의 셔플링을 위해 상기 비디오 쓰기 버퍼(602) 전단에 셔플부(601)가 배치된다.
상기 비디오 쓰기 버퍼(602)는 4개의 버퍼(602a∼602d)로 구성되어 128비트를 만들어 주는데, 각 버퍼는 32x32의 듀얼 버퍼이다.
이때, 비월 주사된 시퀀스의 경우 도 2 및 도 3과 같이 Y와 C 성분들이 톱 필드와 바텀 필드로 나뉘어지며, 색차 성분의 경우 Cb와 Cr 신호에 대해서 셔플된 값들이 차례대로 배열되어 버퍼에 저장되어진다.
한 매크로 블록에 대해서 비디오 쓰기 버퍼(602)가 준비되면 바로 외부 메모리(201)에 라이트 억세스되게 된다.
이때, 상기 비디오 쓰기 버퍼(601)에는 한 매크로 블록에 대해서 2개의 Y 블록들의 데이터가 순차적으로 4개의 버퍼(601a∼602d)에 저장되어 억세스되고, 이어 다른 2개의 Y 블록의 데이터가 다시 순차적으로 4개의 버퍼(601a∼602d)에 더블 버퍼링 형태로 저장되어 억세스된다. 그리고 나서, 색차 신호가 셔플부(601)를 통해 셔플링된 후 순차적으로 상기 4개의 버퍼(601a∼602d)에 더블 버퍼링 형태로 저장되어 억세스된다.
상기 4개의 버퍼(601a∼601d)에서 출력되는 각 데이터는 디먹스(601e)를 통해 128비트로 되어 메모리 아비터(604)로 출력된다.
상기 메모리 아비터(604)는 한 매크로 블록에 대해서 비디오 쓰기 버퍼(602)가 준비되면 바로 외부 메모리(201)에 쓰기를 수행한다. 이때, 상기 외부 메모리(201)는 98비트 메모리 버스를 사용하는데 DDR SDRAM이므로, 상기 메모리 아비터(604)는 라이징 에지 클럭에서 앞쪽 64비트를, 폴링 에지 클럭에서 뒤쪽 64비트를 상기 외부 메모리(201)에 쓴다.
상기 비디오 쓰기 제어부(603)는 상기 비디오 쓰기 버퍼(603)의 버퍼(601a∼601d)에 쓰기 어드레스 및 인에이블 신호등을 출력하고, 상기 가산기(105)와 메모리 아비터(604) 간에 제어 신호를 주고 받으며, 외부 메모리(201)에 데이터를 쓰기 위한 쓰기 어드레스를 메모리 아비터(604)로 출력한다.
도 7은 128비트 데이터 버스를 가지는 비디오 디코더(100)가 64비트 데이터 버스를 가지는 외부 메모리(201)에서 일정 부분의 영역을 읽어서 움직임 예측된 매크로 블록을 생성하려고 할 때의 본 발명의 메모리 인터페이스부(202)와 움직임 보상부의 상세 블록도이다. 즉, 비디오 디코딩부(100)의 움직임 보상부(106)는 상기 외부 메모리(201)에서 일정 부분을 읽어서 움직임 예측된 매크로 블록을 생성한다.
도 7을 보면, 외부 메모리(201)로부터 데이터를 읽기 위한 메모리 인터페이스부(202)는 비디오 읽기 제어부(700), 비디오 읽기 버퍼(701), 읽기 버퍼 제어부(702), 타이밍 제어부(703), 및 메모리 아비터(704)로 구성된다.
그리고, 이렇게 구성된 메모리 인터페이스부(202)를 통해 읽어온 데이터를 이용하여 움직임 보상을 수행하기 위한 움직임 보상부(106)는 Y 하프-펠 보간부(801), C 하프-펠 보간부(802), 예측 버퍼 제어부(803), 예측 버퍼(804), 및 움직임 보상 인터페이스(MC I/F)(805)로 구성된다.
상기 비디오 읽기 제어부(700)는 MC I/F(805)를 통해 움직임 보상부(106)로부터 필드/프레임 예측등에 대한 정보를 받아서 외부 메모리(201)의 해당되는 로우 어드레스와 컬럼 어드레스를 발생하여 메모리 아비터(704)로 출력한다. 그러면, 상기 메모리 아비터(704)는 상기 로우 어드레스와 컬럼 어드레스에 해당하는 매크로 블록을 외부 메모리(201)로부터 읽어 와 비디오 읽기 버퍼(701)로 출력한다. 상기 비디오 읽기 버퍼(701)의 각 버퍼들(701b∼701d)도 64x32의 듀얼 버퍼로 구성된다. 상기 읽기 버퍼 제어부(702)는 비디오 읽기 제어부(700)로부터 파라미터들을 입력받고 타이밍 제어부(703)의 타이밍 신호에 따라 상기 비디오 읽기 버퍼(701)의 쓰기와 읽기를 제어한다.
이때, 도 2와 같이 Y에 해당하는 블록의 어드레스를 통해 Y 성분을 외부 메모리(201)로부터 읽은 후 바로 Y에 해당하는 도 3의 색차 성분들이 읽어 들어오게 되어 있으며 이를 통해 원하는 블록(Y와 CbCr)을 재생할 수 있다. 그런데, 색차 성분에 대해서는 Cb와 Cr을 다시 디셔플부(701a)에서 디셔플하여 버퍼(701b∼701d)에 저장한다. 이렇게 저장된 블록들에 대해서 Y와 CbCr 신호들을 약간의 시간 지연을 두고 Y 하프 펠 보간부(801)와 C 하프 펠 보간부(802)에서 각각 패러럴하게 하프 펠 보간(half-pel interpolation)을 한 후 그 결과를 예측 버퍼 제어부(803)의 제어에 의해 예측 버퍼(804)에 저장한다. 그리고, 상기 예측 버퍼(804)에 저장된 예측 데이터는 가산기(105)로 출력된다. 즉, 상기 가산기(105)는 상기 예측 버퍼(804)로부터 필요한 부분을 읽어간다.
결국, 본 발명은 Y 신호에 대한 처리와 동시에 CbCr을 읽고 쓰기 위한 프로세싱 시간을 줄일 수 있다. 이는 전체 시스템의 메모리 밴드폭에 매우 크게 작용하므로 성능을 높일 수 있을 뿐만 아니라, Y와 CbCr에 대한 성분을 병렬 처리함으로써, 로컬 밴드폭도 크게 향상된다.
여기서, 상기 비디오 쓰기 버퍼(601)와 읽기 버퍼(701)는 서로 공유하여 사용할 수도 있고, 각각 별도로 구성하여 쓰기용과 읽기용으로 구분하여 사용할 수도 있다.
본 발명은 디지털 TV나 비디오 화상 회의 등의 응용 분야에 적용할 수 있는 기술로서, 멀티 디코딩이나 한 화면에 여러 개의 비디오를 수신 및 화면 처리할 수 있는 고 성능 비디오 디코더 및 타 회사의 디지털 TV와의 기술 경쟁력 강화등의 큰 효과를 얻을 수 있다.
이상에서와 같이 본 발명에 따른 비디오 디코딩 시스템에 의하면, 외부 64비트 데이터 버스를 갖는 DDR SDRAM를 이용하는 비디오 디코더에서 비월 주사 영상의 경우는 필드 구조의 외부 메모리 맵을 구성하고, 순차 주사 영상의 경우는 프레임 구조의 메모리 맵을 구성한 후 한번의 억세스로 하나의 매크로 블록을 저장하고, 읽을 수 있도록 함으로써, 비디오 디코더의 전체 밴드폭을 줄일 뿐만 아니라 로컬 프로세싱 타임도 줄일 수 있다. 특히, 2개 HD급 영상 신호의 디코딩이나 기타 고성능의 프로세싱을 요하는 비디오 디코더의 성능을 향상시킬 수 있다.
이상 설명한 내용을 통해 당업자라면 본 발명의 기술 사상을 일탈하지 아니하는 범위에서 다양한 변경 및 수정이 가능함을 알 수 있을 것이다.
따라서, 본 발명의 기술적 범위는 실시예에 기재된 내용으로 한정되는 것이 아니라 특허 청구의 범위에 의하여 정해져야 한다.
도 1은 본 발명에 따른 비디오 디코딩 시스템의 구성 블록도
도 2는 본 발명에 따른 비월주사된 영상의 한 매크로 블록의 휘도(Y) 신호에 대한 화소 배치를 나타낸 도면
도 3은 본 발명에 따른 비월주사된 영상의 한 매크로 블록의 색차(C) 신호에 대한 화소 배치를 나타낸 도면
도 4는 한 매크로 블록의 Y 신호에 대한 1 로우 내 외부 메모리의 컬럼 배치를 나타낸 본 발명의 도면
도 5는 한 매크로 블록의 C 신호에 대한 1 로우 내 외부 메모리의 컬럼 배치를 나타낸 본 발명의 도면
도 6은 64비트 데이터 버스를 가지는 외부 메모리에 매크로 블록을 쓰기 위한 본 발명의 메모리 인터페이스부의 구성 블록도
도 7은 64비트 데이터 버스를 가지는 외부 메모리에 저장된 매크로 블록을 읽기 위한 본 발명의 메모리 인터페이스부의 구성 블록도
도면의 주요부분에 대한 부호의 설명
100 : 비디오 디코딩부 101 : 버퍼
102 : VLD부 103 : IQ부
104 : IDCT부 105 : 가산기
106 : 움직임 보상부 201 : 외부 메모리
202 : 메모리 인터페이스부 203 : 비디오 디스플레이 프로세서

Claims (5)

128비트 내부 메모리 버스를 통해 압축된 비트 스트림을 가변 길이 디코딩, 역 양자화, 역 이산 코사인 변환, 움직임 보상을 수행하여 원 영상 신호로 복원하는 비디오 디코딩부;
64비트 외부 데이터 버스를 이용하여 비디오 디코딩된 데이터를 저장하거나 움직임 보상을 위해 저장된 데이터를 출력할 때, 필드 구조 또는 프레임 구조로 메모리 맵을 구성하여 휘도(Y) 또는, 색차(CbCr) 신호들을 동시에 저장하고, 동시에 출력하는 DDR SDRAM; 그리고
128비트 내부 메모리 버스를 통해 비디오 디코딩부와 인터페이스하고, 64비트 외부 데이터 버스를 통해 상기 DDR SDRAM과 인터페이스하며, 한 매크로 블록의 데이터가 필드 단위 또는, 프레임 단위로 상기 DDR SDRAM에 저장되고, 읽어질 수 있도록 상기 비디오 디코딩된 데이터를 재배치하는 메모리 인터페이스부를 포함하여 구성되는 것을 특징으로 하는 비디오 디코딩 시스템.
제 1 항에 있어서, 상기 메모리 인터페이스부는
디코딩된 매크로 블록이 비월 주사인 경우 Y 성분의 블록들에 대해서 톱 필드는 톱 필드끼리, 바텀 필드는 바텀 필드끼리 화소들을 재배열하여 필드 구조로 변환하는 것을 특징으로 하는 비디오 디코딩 시스템.
제 1 항에 있어서, 상기 메모리 인터페이스부는
디코딩된 매크로 블록이 비월 주사인 경우 Cb 성분의 8*8 블록에 대해서 톱 필드는 톱 필드끼리, 바텀 필드는 바텀 필드끼리 화소들을 재배열하고, Cr 성분의 8*8 블록에 대해서도 톱 필드는 톱 필드끼리, 바텀 필드는 바텀 필드끼리 화소들을 재배열하여 필드 구조로 변환한 후 각 4*4 픽셀의 Cb 톱 필드, Cr 톱 필드, Cb 바텀 필드, Cr 바텀 필드의 화소들로 각각의 8*8 블록들을 구성하여 64비트 단위로 메모리 억세스시 64비트의 Y 신호에 상응하는 64비트 단위의 색차 신호를 억세스하도록 하는 것을 특징으로 하는 비디오 디코딩 시스템.
제 1 항에 있어서, 상기 메모리 인터페이스부는
디코딩된 매크로 블록에 대해서 128비트를 하나의 워드로 구성하고, 한번의 외부 메모리 억세스로 16개의 워드를 상기 외부 메모리에 저장하거나 읽어내도록 제어하는 것을 특징으로 하는 비디오 디코딩 시스템.
제 1 항에 있어서,
상기 비디오 디코딩부는 움직임 보상시 휘도(Y), 색차(CbCr) 신호들에 대해 병렬로 하프 펠 보간을 수행하는 것을 특징으로 하는 비디오 디코딩 시스템.
KR10-2003-0002989A 2003-01-16 2003-01-16 비디오 디코딩 시스템 KR100504507B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2003-0002989A KR100504507B1 (ko) 2003-01-16 2003-01-16 비디오 디코딩 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0002989A KR100504507B1 (ko) 2003-01-16 2003-01-16 비디오 디코딩 시스템

Publications (2)

Publication Number Publication Date
KR20040065809A KR20040065809A (ko) 2004-07-23
KR100504507B1 true KR100504507B1 (ko) 2005-08-01

Family

ID=37355892

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0002989A KR100504507B1 (ko) 2003-01-16 2003-01-16 비디오 디코딩 시스템

Country Status (1)

Country Link
KR (1) KR100504507B1 (ko)

Also Published As

Publication number Publication date
KR20040065809A (ko) 2004-07-23

Similar Documents

Publication Publication Date Title
US8687706B2 (en) Memory word array organization and prediction combination for memory access
US7773676B2 (en) Video decoding system with external memory rearranging on a field or frames basis
US6917652B2 (en) Device and method for decoding video signal
US5581310A (en) Architecture for a high definition video frame memory and an accompanying data organization for use therewith and efficient access therefrom
US6104416A (en) Tiling in picture memory mapping to minimize memory bandwidth in compression and decompression of data sequences
US5912676A (en) MPEG decoder frame memory interface which is reconfigurable for different frame store architectures
US5646693A (en) Memory utilization for video decoding and display with 3:2 pull-down
KR100504471B1 (ko) 비디오 디코딩 시스템
WO2009133671A1 (ja) ビデオ符号化・復号化装置
US6028612A (en) Picture memory mapping to minimize memory bandwidth in compression and decompression of data sequences
KR100298397B1 (ko) 비디오디코딩시스템
US8514937B2 (en) Video encoding apparatus
US8666160B2 (en) Method and apparatus for DRAM 2D video word formatting
US6205181B1 (en) Interleaved strip data storage system for video processing
US20110135008A1 (en) Video processing system
KR100282389B1 (ko) 에이치디티브이 비디오 디코더의 메모리 제어 방법
US6188727B1 (en) Simplicity HDTV video decoder and its decoding method
KR20030057690A (ko) 비디오 디코딩 시스템
JPH0865686A (ja) 画像復号化装置
KR100463515B1 (ko) 비디오 디코딩 시스템
US20010055427A1 (en) Method of memory utilization in a predictive video decoder
KR100504507B1 (ko) 비디오 디코딩 시스템
US6144323A (en) Method and apparatus for decoding video data
JPH07298264A (ja) 画像データの処理方法およびそれに用いる記憶装置ならびに画像データの処理装置
KR100556341B1 (ko) 메모리 대역폭이 감소된 비디오 디코더 시스템

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee