KR20030060228A - 비디오 디코딩 시스템 - Google Patents
비디오 디코딩 시스템 Download PDFInfo
- Publication number
- KR20030060228A KR20030060228A KR1020020000780A KR20020000780A KR20030060228A KR 20030060228 A KR20030060228 A KR 20030060228A KR 1020020000780 A KR1020020000780 A KR 1020020000780A KR 20020000780 A KR20020000780 A KR 20020000780A KR 20030060228 A KR20030060228 A KR 20030060228A
- Authority
- KR
- South Korea
- Prior art keywords
- video
- display
- signal
- output
- unit
- Prior art date
Links
- 230000015654 memory Effects 0.000 claims abstract description 50
- 238000005070 sampling Methods 0.000 claims description 20
- 230000003044 adaptive effect Effects 0.000 claims description 19
- 238000000034 method Methods 0.000 claims description 13
- 239000013598 vector Substances 0.000 claims description 10
- 238000013139 quantization Methods 0.000 claims description 6
- 230000000630 rising effect Effects 0.000 claims description 5
- 230000001360 synchronised effect Effects 0.000 abstract 3
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440263—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the spatial resolution, e.g. for displaying on a connected PDA
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/414—Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
- H04N21/4147—PVR [Personal Video Recorder]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/44004—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/04—Synchronising
- H04N5/06—Generation of synchronising signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/907—Television signal recording using static stores, e.g. storage tubes or semiconductor memories
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
- H04N5/917—Television signal processing therefor for bandwidth reduction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/01—Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
- H04N7/0117—Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving conversion of the spatial resolution of the incoming video signal
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Graphics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
개인 비디오 기록기(PVR) 기능을 가진 디지털 텔레비젼에서 HD급 엠펙(MPEG) 비디오 신호들을 N배속 디코딩해서 N배 빨리 디스플레이하기 위한 비디오 디코딩 시스템에 관한 것으로서, 특히 다운 샘플러를 이용하여 비디오 디코딩된 데이터를 수평 방향으로 1/2 감축한 후 외부 메모리에 저장함으로써, 비디오 디코딩을 위한 전체 대역폭을 줄이며, 2배속에 필요한 메모리 양을 줄일 수 있다. 또한, 비디오 디코딩 시스템 내부에 비디오 디코더와 VDP부간의 디스플레이 정보를 전달 제어하는 VDPC를 가짐으로써, 2배속 모드에서 한 프레임 주기안에 두 픽처의 톱 필드 신호들 또는 바텀 필드 신호들만을 디스플레이할 수 있다.
Description
본 발명은 개인 비디오 기록기(Personal Videi Recoder ; PVR) 기능을 가진 디지털 텔레비젼이나 고화질(High Definition ; HD)급 DVD(Digital Versatile Disc) 플레이어등의 응용분야에 적용하여 HD급 엠펙(Moving Picture Experts Group ; MPEG) 비디오 신호들을 n배속 디코딩해서 디스플레이하기 위한 비디오 디코딩 시스템에 관한 것이다.
요즘 MPEG-2와 같은 비디오 압축 복원 시스템의 경우 여러 종류의 비디오 신호를 멀티 디코딩하여 동시에 디스플레이 하거나 다양한 트릭 플레이(trick play) 서비스를 제공하고 있다. 상기 트릭 플레이의 예로는 빠른 감기/되감기(fast forward/backward), 천천히 감기/되감기(slow forward/backward)등이 있다.
또한, 최근에는 하드 디스크 드라이브(HDD)등과 같은 저장장치를 연결하여 비트스트림 저장 및 재생을 다양하게 제어하는 칩의 개발도 이루어지고 있는 실정이다. 이런 경우 한정된 메모리 및 데이터 버스의 밴드폭(bandwidth)을 고려해 볼 때 비디오 디코딩 칩의 구현이 용이하지가 않다.
특히, 빠른 감기와 같은 기능을 구현시 기존 칩들은 MPEG 비트스트림의 B-픽쳐를 디코딩하지 않고 I-픽쳐나 P-픽쳐들만 디코딩하여 디스플레이하는 트릭 플레이만 지원한다. 그러나, 실제 경우 n-배속 빠른 감기 디스플레이(fast forward display)를 위해서는 n-배속 디코딩 및 하드웨어(H/W) 속도와 메모리 용량을 갖추어야 하는 문제점이 있게 된다.
도 1은 PVR 기능을 가진 셋톱 박스(Set top box) 또는, 빌트 인(built-in) TV의 일 예를 보인 구성 블록도로서, PVR 장치는 디지털 방송을 저장할 수 있는 저장 매체(예, HDD)를 장착하고 있다. 그리고, 비디오 디코더는 일반적으로 트랜스포트 디코더, 비디오 디코더, 비디오 디스플레이 프로세서(VDP), 외부 메모리, 호스트 인터페이스(Host interface)등으로 구성되어져 있다.
이때, 상기 비디오 디코더는 상기 PVR 장치를 통해 비디오 비트스트림을 입력받아 디코딩한 후 TV와 같은 영상 표시 장치에 디스플레이한다.
또한, 상기 비디오 디코더는 DVD 플레이어등을 통해 비디오 비트스트림을 수신받아 디코딩할 수도 있다.
이러한 시스템의 경우도, 기존의 아날로그 저장 매체기와 같이 n(예, 2)배속으로 비디오 신호를 디스플레이하는 요구가 증가하게 된다.
이때, 상기된 비디오 디코더에서 HD급 영상을 디코딩하기 위해서는 3 프레임(예를 들면, 1 프레임은 1920x1080 크기)분의 외부 메모리(예, SDRM) 용량이 필요하다. 만약, 상기 외부 메모리가 두개의 64Mbit 메모리들을 사용할 경우, 1920x1080 크기는 외부 메모리에 4 프레임까지 저장 가능하다. 그러나, 각종 트랜스포트(TP)나 오디오를 위한 메모리 영역 및 OSD(On Screen Display)등과 같은 메모리 영역을 고려할 때 충분히 HD급 4프레임을 저장하기 힘들다. 또한, 전체 메모리 대역폭을 고려할 때 HD급을 두 배로 디코딩하기 위해서는 아주 높은 메모리 클럭을 사용해야 하며, 트랜스포트 비트스트림을 2배로 빨리 비디오 디코더로 입력할 수 있어야 한다.
따라서, HD급의 디지털 비트 스트림을 2배속으로 디코딩 및 디스플레이하기위해서는 매우 높은 메모리 대역폭을 요구하게 되며, 이를 위한 메모리 사이즈와 클럭 및 시스템 코스트가 증가하게 된다.
본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 2배속의 디스플레이 요구시, 입력되는 비디오 비트스트림을 2배속으로 디코딩을 수행한 후 톱 또는 바텀 필드만을 디스플레이하는 비디오 디코딩 시스템을 제공함에 있다.
본 발명의 다른 목적은 비디오 디코딩이 완료된 데이터는 다운 샘플링을 통해 감축하고나서 외부 메모리에 저장하는 비디오 디코딩 시스템을 제공함에 있다.
도 1은 PVR 기능을 갖는 시스템의 일반적인 구성 블록도
도 2는 본 발명에 따른 비디오 디코딩 시스템의 구성 블록도
도 3은 도 2의 비디오 디코더와 비디오 디스플레이 프로세서(VDP), 비디오 디스플레이 파라미터 제어(VDPC)부간 인터페이스의 예를 보인 구성 블록도
도 4는 도 3의 비디오 디스플레이 파라미터 제어(VDPC)부의 상세 블록도
도 5는 정상 모드시 상기 VDPC부에 의해 제어되는 비디오 디코더와 VDP부간의 인터페이스 타이밍도
도 6은 2배속 디스플레이 모드시 상기 VDPC부에 의해 제어되는 비디오 디코더와 VDP부간의 인터페이스 타이밍도
도면의 주요부분에 대한 부호의 설명
100 : 비디오 디코더200 : 메모리 인터페이스
300 : 외부 메모리400 : VDP부
500 : 호스트 인터페이스600 : VDPC부
상기와 같은 목적을 달성하기 위한 본 발명에 따른 비디오 디코딩 시스템은, 디스플레이 동기 신호에 따라 입력되는 비디오 비트 스트림을 디코딩한 후 1/N로 감축하여 출력하는 비디오 디코더와, 상기 1/N로 감축된 디코딩된 데이터를 저장하는 외부 메모리와, 디스플레이 주기를 나타내는 필드 동기 신호를 생성하여 출력하며, N배속 모드에 따라 상기 외부 메모리로부터 한 프레임 주기안에 N 픽처의 톱 필드 신호들 또는, 바텀 필드 신호들만을 읽어 와 디스플레이하는 비디오 디스플레이 프로세서와, N배속 모드시 상기 필드 동기 신호를 N 분주하여 상기 비디오 디코더에 디스플레이 동기 신호로서 출력하며, 상기 비디오 디스플레이 프로세서(VDP)가 한 프레임 주기안에 N 픽처의 톱 필드 신호들 또는, 바텀 필드 신호들만을 디스플레이할 수 있도록 제어하는 비디오 디스플레이 파라미터 제어(VDPC)부를 포함하여 구성되는 것을 특징으로 한다.
상기 비디오 디코더는 입력되는 비디오 비트스트림을 일시 저장하며, 저장량 상태에 따라 오버플로우 플래그를 셋트시켜 상기 비디오 비트 스트림을 입력하는 PVR 장치로 출력하는 버퍼와, IDCT된 데이터와 움직임 보상된 데이터를 더하는 가산기의 출력에 대해 수평 방향으로 1/2 다운 샘플링을 수행한 후 상기 외부 메모리로 출력하는 적응적 다운 샘플링부을 포함하여 구성되며, 상기 PVR 장치는 오버플로우 플래그 값에 따라 상기 버퍼로 출력되는 비디오 비트스트림의 속도를 조절하는 것을 특징으로 한다.
상기 비디오 디스플레이 파라미터 제어부는 N배속 디코딩 및 디스플레이 모드인 경우, 비디오 디코더의 비디오 디코딩 속도가 N배가 되고, 비디오 디스플레이 프로세서에서는 프레임 주기의 정상 속도로 디코딩된 데이터를 디스플레이하는데, 이때 한 프레임 주기내에 N개 픽처의 톱 필드만을 디스플레이하도록 제어하는 것을 특징으로 한다.
상기 비디오 디스플레이 파라미터 제어부는 N배속 디코딩 및 디스플레이 모드인 경우, 비디오 디코더의 비디오 디코딩 속도가 N배가 되고, 비디오 디스플레이 프로세서에서는 프레임 주기의 정상 속도로 디코딩된 데이터를 디스플레이하는데, 이때 한 프레임 주기내에 N개 픽처의 바텀 필드만을 디스플레이하도록 제어하는 것을 특징으로 한다.
본 발명의 다른 목적, 특징 및 잇점들은 첨부한 도면을 참조한 실시예들의 상세한 설명을 통해 명백해질 것이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예의 구성과 그 작용을 설명하며, 도면에 도시되고 또 이것에 의해서 설명되는 본 발명의 구성과 작용은 적어도 하나의 실시예로서 설명되는 것이며, 이것에 의해서 상기한 본 발명의 기술적 사상과 그 핵심 구성 및 작용이 제한되지는 않는다.
도 2는 본 발명에 따른 비디오 디코딩 시스템의 구성 블록도로서, 트랜스포트(TP) 디코더(10), 비디오 디코더(100), 메모리 인터페이스(200), 외부 메모리(300), 비디오 디스플레이 프로세서(400), 호스트 인터페이스(500), 및 비디오 디스플레이 파라미터 제어부(600)로 구성된다.
상기 비디오 디코더(100)는 TP 디코더(10)에서 분리된 비디오 비트스트림을 일시 저장하는 버퍼(101), 상기 버퍼(101)에서 출력되는 비디오 비트 스트림을 가변 길이 디코딩(Variable Length Decoding ; VLD)하여 움직임 벡터, 양자화 값, DCT(Discrete Cosine Transform) 계수로 분리하는 VLD부(102), 상기 VLD된 DCT 계수를 역 양자화(Inverse Quantized ; IQ)하는 역 양자화부(103), 상기 역 양자화된 DCT 계수를 역 이산 여현 변환(Inverse Discrete Cosine Transform ; IDCT)하는 IDCT부(104), 상기 IDCT된 데이터와 움직임 보상된 데이터를 더하는 가산기(105), 상기 가산기(105)의 출력에 대해 적응적 다운 샘플링을 수행한 후 움직임 보상을 위해 메모리(300)로 출력하는 적응적 다운 샘플링부(106), 상기 메모리(300)에 저장된 데이터를 읽어 와 적응적 업 샘플링을 수행하는 적응적 업 샘플링부(107), 및 상기 업 샘플링부(107)의 출력과 상기 VLD부(102)에서 출력되는 움직임 벡터를 이용하여 움직임 보상을 수행한 후 상기 가산기(105)로 출력하는 움직임 보상부(108)로 구성된다.
상기 비디오 디스플레이 파라미터 제어(VDPC)부(600)는 비디오 디코더(100)와 VDP부(400)간의 디스플레이 정보의 전달을 제어한다. 즉, 상기 VDPC부(600)는 비디오 디코더(100)에서 비트 스트림의 2배속 디코딩이 이루어지고, VDP부(400)에서 한 프레임 주기안에 두 픽처의 톱 필드 신호들 또는, 바텀 필드 신호들을 디스플레이할 수 있도록 상기 비디오 디코더(100)와 VDP(400)를 제어한다. 이를 위해 상기 VDPC부(600)는 2배속시 필드를 선택할 수 있는 신호와 2배속의 실행 신호를 호스트 인터페이스(500)로부터 제공받는다.
이때, 상기 비디오 디코딩 시스템은 64비트 데이터 버스를 갖는 108MHz 대역폭을 가지도록 설계되었으며, 용도에 따라 32비트 데이터 버스를 이용할 수 있다. 또한, 외부 메모리(300)는 2개의 64Mbit 메모리를 사용할 수 있다.
이와 같이 구성된 본 발명에서 트랜스포트 디코더(100)는 한 채널에 포함된 다수의 프로그램들 중 원하는 한 프로그램을 선택하여 패킷화되어 있는 오디오와 비디오 비트스트림을 분리한 후 분리된 비디오 비트 스트림을 비디오 디코더(100)로 출력한다.
상기 비디오 디코더(100) 내의 버퍼(101)는 압축된 비트스트림을 일시 저장한 후 가변 길이 디코더(Variable Length Decoder ; VLD)(102)로 출력한다. 상기 VLD(102)는 비디오 비트스트림을 가변길이 디코딩하여 움직임 벡터, 양자화 값, DCT(Discrete Cosine Transform) 계수로 분리한 후 움직임 벡터(MV)는 움직임 보상부(108)로 출력하고, 양자화 값 및 DCT 계수는 역양자화(Inverse Quantizer ; IQ)부(103)로 출력한다. 이때, 상기 DCT 계수는 지그-재그 스캔 방식 또는 택일스캔(Alternate scan) 방식으로 코딩되어 있으므로 IQ부(103)는 이를 라스터 스캔(Raster Scan) 방식으로 역스캔한 후 역스캔된 DCT 계수를 양자화 값에 따라 역 양자화하여 역 이산 여현 변환(Inverse Discrete Cosine Transform ; IDCT)부(104)로 출력한다. 상기 IDCT부(104)는 MPEG-2 비디오 신택스에 맞게 8x8 블록 단위로 역 양자화된 DCT 계수를 IDCT하여 가산기(105)로 출력한다.
한편, 상기 VLD(102)에서 출력되는 움직임 벡터는 움직임 보상부(108)로 출력되고, 상기 움직임 보상부(108)는 상기 움직임 벡터와 메모리(300)에 저장된 이전 프레임을 이용하여 현재의 픽셀값에 대한 움직임 보상을 수행한 후 가산기(105)로 출력한다.
상기 가산기(105)는 IDCT된 값과 움직임 보상된 값을 더하여 최종 픽셀값인 완전한 영상으로 복원한 후 적응적 다운 샘플링부(106)로 출력한다.
여기서, Intra-picture(I-픽쳐)의 경우는 IQ/IDCT한 결과가 바로 가산기(105)를 통해 적응적 다운 샘플링부(106)로 출력되고, predictive picture(P-픽쳐)나 bidirectional picture(B-픽쳐)의 경우는 움직임 보상된 데이터와 IDCT된 결과가 가산기(105)에서 더해진 후 적응적 다운 샘플링부(106)로 출력된다.
상기 적응적 다운 샘플링부(106)는 수평 방향으로 1/2 감축율을 갖는 다운 샘플러로서, 공지된 기술을 그대로 적용할 수도 있고, 본 출원인이 기 출원한 특허(출원 번호 : P00-43520, 출원 일자 : 2000.7.27)를 적용할 수도 있다.
즉, 본 발명은 100MHz 정도에서 2배속 디코딩을 하기 위한 비디오 디코딩 시스템을 개발하기 위하여, 적응적 다운 샘플링부(106)에서 디코딩된 영상의 해상도를 수평방향으로 1/2배 감소시킨다. 이를 통해 전체 메모리 대역폭을 감소시킬 수 있다.
상기 적응적 다운 샘플링부(106)에서 수평 방향으로 1/2로 감축된 신호는 메모리 인터페이스부(200)를 통해 외부 메모리(300)에 저장된다.
이때, 상기 가산기(105)를 통해 디코딩되어져 나오는 매크로 블록들이 다운 샘플링부(106)를 거치면 해상도가 1/2로 줄어들므로, 이에 비례하여 외부 메모리(300)의 크기도 1/2정도 줄일 수 있으므로, 상기 메모리(300)의 대역폭 및 처리 시간을 많이 줄일 수 있다. 여기서, 상기 적응적 다운 샘플링부(106)는 일 실시예로 디코딩된 데이터를 수평 방향으로 1/2 감축한다고 하였으나, 다른 실시예로서 수직 방향으로 1/2 감축할 수도 있고, 수평/수직 방향으로 모두 1/2씩 감축할 수도 있다.
한편, 상기 비디오 디코더(100)에서 움직임 보상시에 화질을 높이기 위해 수평 방향의 움직임 벡터를 스케일링 다운하기보다는 완전 해상도의 움직임 벡터를 그대로 사용하는 것이 더 효율적이다. 만일, 완전 해상도의 움직임 벡터(MV)를 이용한다면 상기 프레임 메모리(300)에 저장된 다운 샘플링된 해상도를 갖는 매크로 블록을 원래 해상도를 갖는 매크로 블록으로 업 샘플링하는 과정이 필요하다. 이를 적응적 업 샘플링부(107)에서 수행한다. 상기 적응적 업 샘플링부(107)는 상기 적응적 다운 샘플링부(106)의 역변환을 통해 수평 방향으로 2배 보간하여 원래 화소로 변환한 후 움직임 보상부(108)로 출력한다.
그리고, 상기된 과정을 거쳐 메모리(300)에 저장된 영상은 VDP부(400)에서 다시 원래의 해상도로 보간된 후 화면에 보여지게 된다. 상기 VDP부(400)는 픽쳐 타입에 따라 데이터를 재배열하여 출력하기도 하고 그대로 출력하기도 한다. 또한, 상기 VDP부(400) 내에는 입력 영상을 보간하는 보간부가 구비되어 있다.
이때, 2배속 디코딩 및 디스플레이를 위해서는 압축된 비트스트림이 TP 디코더(10)를 통해 2배 빨리 비디오 디코더(100)의 버퍼(101)로 입력된다. 따라서, 상기 버퍼(101)에 오버플로우(overflow)가 발생할 수 있으므로, 이를 방지하기 위하여 상기 버퍼(101)의 상태를 표시하는 오버플로우 플래그(예, OVF라 칭함.)를 설정하고, 상기 플래그 값을 도 1의 PVR 장치로 출력한다. 즉, 상기 버퍼(101)의 비트 버퍼량의 상태가 매우 높아질 때 상기 OVF를 1로 셋팅하여 PVR 장치로 출력한다.
그러면, 상기 PVR 장치는 버퍼(101)가 오버플로우가 될 수 있다고 판단하여 입력 비트스트림의 속도를 조절함으로써, 미연에 버퍼(101)의 오버플로우를 방지할 수 있다.
도 3은 비디오 디코더(100), VDP부(400), 호스트 인터페이스(500), 및 VDPC부(600) 간의 각 신호들의 입/출력 상태를 보이고 있다. 즉, 호스트 인터페이스(500)에서는 2배속 디코딩 및 디스플레이시 톱 필드를 선택할 것인지, 바텀 필드를 선택할 것인지를 지시하는 필드 선택 신호(sel_TB)와, 2배속 모드인지 정상 모드인지를 지시하는 신호(double_speed)를 VDPC부(600)로 출력한다.
상기 비디오 디코더(100)는 디스플레이 시작 신호(disp_start), 파라미터 신호들을 상기 VDPC부(600)로 출력하고, 상기 VDPC부(600)로부터 디스플레이 동기 신호(disp_sync)와 디스플레이 종료 신호(disp_end)를 제공받는다.
또한, 상기 VDPC부(600)는 디스플레이 시작 신호(disp_start), 파라미터 신호들을 상기 VDP부(400)로 출력하고, 상기 VDP부(400)는 필드 동기 신호(field_sync), 디스플레이 종료 신호(disp_end)를 VDPC부(600)로 출력한다.
도 4는 도 3의 VDPC부(600)의 상세 블록도로서, 상기 VDP부(400)로부터 출력되는 필드 동기 신호(field_sync)를 2분주하는 분주기(701), 상기 호스트 인터페이스(500)에서 제공하는 double_speed 신호를 선택 신호로 이용하여 상기 VDP부(400)로부터 출력되는 필드 동기 신호(field_sync)와 분주기(701)에서 2분주된 신호(field_sync_2) 중 어느 하나를 선택하여 비디오 디코더(100)에 디스플레이 동기 신호(disp_sync)로서 출력하는 제 1 먹스(702), 타이밍 정렬을 위해 상기 제 1 먹스(702)의 출력을 일정 시간 지연시키는 직렬 연결의 복수의 플립플롭(703,704), 상기 호스트 인터페이스(500)에서 출력되는 sel_TB 신호를 선택 신호로 사용하여 상기 플립플롭(704)의 출력 신호(Q)와 반전된 출력 신호() 중 어느 하나를 선택 출력하는 제 2 먹스(705), 기 설정된 조건(sync_field='0' and disp_start_rising='1')을 만족하는 경우에만 인에이블 신호를 생성하여 출력하는 인에이블 신호 생성부(706), 상기 VDP부(400)에서 제공하는 필드 동기 신호(field_sync)의 에지를 검출하는 에지 검출부(707), 상기 인에이블 신호 생성부(706)의 출력에 따라 인에이블되어 상기 비디오 디코더(100)에서 출력되는 각종 디스플레이 정보(disp_start, disp_field, disp_frame, H,V_size, prog_frame등등)들을 다음 단으로 출력하는 플립플롭(708), 상기 에지 검출부(707)의 출력을 인에이블 신호로 사용하여 상기 플립플롭(708)에 래치된 디스플레이 정보들을 다음단으로 출력하는 플립플롭(709), 상기 double_speed 신호를 선택 신호로 사용하여 상기 플립플롭(709)에 래치된 디스플레이 정보들 또는, 상기 비디오 디코더(100)에서 출력되는 각종 디스플레이 정보(disp_start, disp_field, disp_frame, H,V_size, prog_frame등등)들을 선택하여 VDP부(400)로 출력하는 제 3 먹스(710)로 구성된다.
도 5는 외부 메모리(300)의 용량으로 HD급 4프레임분을 이용할 때, 정상적인 비디오 디코딩시 VDP부(400)를 통해 화면에 디스플레이하는 타이밍도를 보이고 있다.
도 5를 보면, 디스플레이 동기(disp_sync) 신호는 화면의 한 프레임 단위의 주기를 나타내는 신호이다. 상기 비디오 디코더(100)는 항상 disp_sync의 시작 시점(disp_start)에서 압축된 비디오 비트스트림의 디코딩을 시작하며, 디코딩된 영상(decoding frame)은 VDP부(400)에서 한 필드 주기의 지연 후에 디스플레이 되게 된다. 이때, 외부 메모리(300)는 4프레임 분을 사용하는 것을 실시예로 하며, 메모리 영역을 한 프레임 단위로 크기를 설정해주고, 디코딩 프레임이 지정하는 메모리 영역에 디코딩된 비디오를 저장한다. 또한, 상기 비디오 디코더(100)는 입력 비트스트림의 재배열(re-ordering) 주기에 맞춰서 디스플레이 정보(disp_start, disp_frame, disp_field, H,V_size, prog_frame등등)를 VDPC부(600)를 통해 VDP부(400)로 전달한다. 그러면, 상기 VDP부(400)는 disp_frame 정보에 맞춰서 메모리(300)에서 비디오 데이터를 읽어 와 디스플레이 해주게 된다.
상기 호스트 인터페이스(500)는 정상 모드에서는 double_speed 신호를 0으로설정하여 VDPC부(600)로 출력한다.
그러면, 제 1 먹스(702)는 double_speed 신호에 의해 VDP부(400)에서 출력되는 필드 동기(field_sync)를 선택하여 상기 비디오 디코더(100)에 디스플레이 동기(disp_sync) 신호로 출력한다.
또한, 제 3 먹스(710)는 상기 double_speed 신호에 의해 상기 비디오 디코더(100)에서 출력되는 디스플레이 정보(disp_start, disp_frame, disp_field, H,V_size, prog_frame등등)를 선택하여 VDP부(400)로 출력한다.
도 6은 외부 메모리(300)의 용량으로 HD급 4프레임 분을 이용하면서, 2배속 디코딩 및 디스플레이를 수행할 경우, 상기 VDPC부(600)에 의해 제어되는 비디오 디코더(100)와 VDP부(400)간의 인터페이스 타이밍도로서, 상기 VDPC부(600)를 통해 한 프레임 주기내에 2개 픽처의 톱 필드만을 2배속 디스플레이하는 예를 보이고 있다.
도 6을 보면, 도 5와는 달리 2배속 비디오 디코딩의 경우는 비디오 디코딩 속도는 2배이고 디스플레이는 기존의 프레임 주기(예를 들면 30frames/sec)의 정상 속도가 요구된다. 만약 1장씩 건너뛰면서 2배속 디스플레이를 할 경우는 비디오 저글링(juggling)이 생길 뿐만 아니라 IBBP구조등의 MPEG 시퀀스에는 P와 같은 앵커 프레임(anchor frame)을 디코딩 못할 수 있다. 그러므로 시간적으로 스무스(smooth)한 좋은 동영상 화질을 위해서 비디오 디코더를 2배로 디코딩하면서 디스플레이할 수 있는 장치가 필요하다.
이를 위해 VDPC부(600)는 비디오 디코더(100)의 출력인 디스플레이 정보와신호 타이밍을 제어하여 2배속 디스플레이가 가능하도록 VDP부(400)를 제어한다. 이때, 기존의 field_sync를 2분주한 field_sync_2의 신호가 필요하다.
만약, 2배속 디코딩 및 디스플레이라면 상기 호스트 인터페이스(500)는 double_speed 신호를 1로 설정하여 VDPC부(600)로 출력하고, 제 1 먹스(702)는 상기 double_speed 신호에 의해 분주부(701)에서 2분주된 필드 동기 신호(field_sync_2)를 선택하여 상기 비디오 디코더(100)에 디스플레이 동기(disp_sync) 신호로 출력한다. 즉, 상기 디스플레이 동기(disp_sync) 신호는 필드 동기(field_sync) 신호보다 주기가 두배 빠른 동기 신호이다.
이때, 적응적 다운 샘플링부(106)에 의해 수평 방향으로 1/2 감축된 데이터가 메모리(300)에 저장되게 된다. 이러한 경우, 상기 메모리(300)는 전체 대역폭 사용량을 크게 감축할 수 있으므로 도 6과 같이 field_sync_2 신호 주기 안에 입력된 비디오 비트스트림의 디코딩이 가능해진다. 상기 디코딩이 이루어진 disp_frame 정보는 한 필드의 지연 후에 VDPC부(600)의 플립플롭(708)으로 출력되게 된다.
또한, 상기 제 1 먹스(702)에서 출력되는 디스플레이 동기(disp_sync) 신호는 타이밍 정렬을 위해 직렬 결합된 플립플롭(703,704)을 거친 후 제 2 먹스(705)로 출력된다. 상기 제 2 먹스(705)는 상기 호스트 인터페이스(500)에서 출력되는 sel_TB 신호에 따라 상기 플립플롭(704)의 Q 출력단의 신호 또는출력단의 신호를 선택하여 인에이블 신호 생성부(706)로 출력한다. 상기 인에이블 신호 생성부(706)는 기 설정된 조건(예, 상기 제 2 먹스(705)의 출력이 '0'이면서, 디스플레이 시작(disp_start) 신호의 라이징일 때)을 만족할 때에만 다음단의플립플롭(708)을 인에이블시킨다.
즉, sel_TB 신호가 '0'인 경우 즉, 탑 필드만을 디스플레이할 경우에는 disp_sync의 로우 주기(즉, field_sync_2='0'인 구간)의 disp_start 신호의 라이징 에지(disp_start_rising)에서 disp_frame 정보들을 플립플롭(708)으로 채면 disp_frame_d의 신호들을 얻을 수 있다. 이 신호들은 매 프레임들의 TOP 필드에 대한 정보들이다.
한편, 에지 검출부(707)는 상기 필드 동기(field_sync) 신호의 에지가 검출될 때마다 플립플롭(709)을 인에이블시키고, 상기 플립플롭(709)은 인에이블될때마다 상기 플립플롭(708)의 출력을 제 4 먹스(710)로 출력한다. 상기 제 4 먹스(710)는 double_speed 신호에 의해 상기 플립플롭(709)의 출력을 선택하여 VDP부(400)로 출력한다.
즉, double_speed 신호가 1인 경우, field_sync의 동기가 변하는 시점 (sync_edge = '1')에서 디스플레이 정보들을 전송하게 되며, 이때의 디스플레이 정보들(disp_start, disp_field, disp_frame 등등)은 톱 필드 또는, 바텀 필드의 정보들이다 .
최종적으로 VDP부(400)에는 disp_frame/disp_field등의 신호가 한 필드 주기 지연 후에 전송되어지고, VDP부(400)는 이 정보들을 가지고 디스플레이 해주게 된다. 이때, 상기 VDP부(400)에는 보간부가 구비되어 있으며, 다운 샘플링에 의해 감축된 톱 필드 또는 바텀 필드의 신호들을 원 상태로 보간한 후 디스플레이한다.
만약, sel_TB가 '1'인 경우 즉, 바텀 필드만을 디스플레이할 경우에는disp_sync의 하이 주기의 disp_start 신호의 라이징에서 플립플롭(708)으로 채면 바텀 필드에 대한 정보를 구할 수 있다. 즉, sel_TB의 신호에 따라 2배속 디코딩/디스플레이시 TOP 필드 정보 또는, 바텀 필드 정보만의 디스플레이가 가능해진다.
본 발명은 상기와 같이 2배속 디스플레이시 톱 필드 또는, 바텀 필드만을 선택하여 디스플레이함으로써, 비월 주사 시퀀스(interlaced sequence)에서 생기는 플리커링(flickering)을 극복할 수 있으며, 이를 통해 좋은 화질과 훨씬 스무스한 동영상을 얻을 수 있다.
지금까지는 비월 주사인 경우를 예로 들어 설명하였으며, 입력되는 비디오 비트스트림이 순차 주사이면서 2배속 모드인 경우에는 한 프레임씩 건너뛰면서 디스플레이하도록 제어하면 된다.
본 발명은 특히, 108MHz SDRAM 기반에서 HD급 MPEG 시퀀스를 2배속 빠르게 보는데 효과적이다.
이상에서와 같이 본 발명에 따른 비디오 디코딩 시스템에 의하면, 다운 샘플러를 이용하여 비디오 디코딩된 데이터를 수평 방향으로 1/2 감축한 후 외부 메모리에 저장함으로써, 비디오 디코딩을 위한 전체 대역폭을 줄이며, 2배속에 필요한 메모리 양을 줄이는 효과가 있다. 또한, 비디오 디코딩 시스템 내부에 비디오 디코더와 VDP부간의 디스플레이 정보를 전달 제어하는 VDPC를 가짐으로써, 2배속 모드에서 한 프레임 주기안에 두 픽처의 톱 필드 신호들 또는 바텀 필드 신호들을 디스플레이할 수 있다.
이와 같이 비디오 비트스트림을 디코딩하게 되면, 한 개의 HD급 비디오를 처리하기 위한 메모리만 가지고도 HD급 비디오를 2배속 디스플레이 할 수 있으며, 시스템 클럭이나 전체 대역폭을 높이기 위한 시스템 코스트를 줄일 수 있게 된다.
특히, 본 발명의 경우 PVR 기능을 갖는 DTV나 STB, 또는 HD급 DVD 플레이어 등의 응용 분야에 필수적인 기술로서 타 회사의 디지털 TV와의 기술 경쟁력 강화 등의 큰 효과를 얻을 수 있다.
이상 설명한 내용을 통해 당업자라면 본 발명의 기술 사상을 일탈하지 아니하는 범위에서 다양한 변경 및 수정이 가능함을 알 수 있을 것이다.
따라서, 본 발명의 기술적 범위는 실시예에 기재된 내용으로 한정되는 것이 아니라 특허 청구의 범위에 의하여 정해져야 한다.
Claims (7)
- 디스플레이 동기 신호에 따라 입력되는 비디오 비트 스트림을 디코딩한 후 1/N로 감축하여 출력하는 비디오 디코더;상기 1/N로 감축된 디코딩된 데이터를 저장하는 외부 메모리;디스플레이 주기를 나타내는 필드 동기 신호를 생성하여 출력하며, N배속 모드에 따라 상기 외부 메모리로부터 한 프레임 주기안에 N 픽처의 톱 필드 신호들 또는, 바텀 필드 신호들만을 읽어 와 디스플레이하는 비디오 디스플레이 프로세서; 그리고N배속 모드시 상기 필드 동기 신호를 N 분주하여 상기 비디오 디코더에 디스플레이 동기 신호로서 출력하며, 상기 비디오 디스플레이 프로세서가 한 프레임 주기안에 N 픽처의 톱 필드 신호들 또는, 바텀 필드 신호들만을 디스플레이할 수 있도록 제어하는 비디오 디스플레이 파라미터 제어부를 포함하여 구성되는 것을 특징으로 하는 비디오 디코딩 시스템.
- 제 1 항에 있어서, 상기 비디오 디코더는입력되는 비디오 비트스트림을 일시 저장하며, 저장량 상태에 따라 오버플로우 플래그를 셋트시켜 상기 비디오 비트 스트림을 입력하는 PVR 장치로 출력하는 버퍼와,상기 버퍼에서 출력되는 비디오 비트 스트림을 가변 길이 디코딩한 후 역 양자화, 역 이산 코사인 변환(IDCT)을 순차적으로 수행하는 디코딩부와,상기 IDCT된 데이터와 움직임 보상된 데이터를 더하는 가산기와,상기 가산기의 출력에 대해 수평 방향으로 1/2 다운 샘플링을 수행한 후 상기 외부 메모리로 출력하는 적응적 다운 샘플링부와,상기 외부 메모리에 저장된 데이터를 읽어 와 수평 방향으로 2배 업 샘플링을 수행하는 적응적 업 샘플링부와,상기 적응적 업 샘플링부의 출력과 상기 디코딩부에서 가변 길이 디코딩에 의해 분리된 움직임 벡터를 이용하여 움직임 보상을 수행한 후 상기 가산기로 출력하는 움직임 보상부로 구성되며,상기 PVR 장치는 오버플로우 플래그 값에 따라 상기 버퍼로 출력되는 비디오 비트스트림의 속도를 조절하는 것을 특징으로 하는 비디오 디코딩 시스템.
- 제 1 항에 있어서, 상기 비디오 디스플레이 파라미터 제어부는N배속 디코딩 및 디스플레이 모드인 경우, 비디오 디코더의 비디오 디코딩 속도가 N배가 되고, 비디오 디스플레이 프로세서에서는 프레임 주기의 정상 속도로 디코딩된 데이터를 디스플레이하는데, 이때 한 프레임 주기내에 N개 픽처의 톱 필드만을 디스플레이하도록 제어하는 것을 특징으로 하는 비디오 디코딩 시스템.
- 제 1 항에 있어서, 상기 비디오 디스플레이 파라미터 제어부는N배속 디코딩 및 디스플레이 모드인 경우, 비디오 디코더의 비디오 디코딩속도가 N배가 되고, 비디오 디스플레이 프로세서에서는 프레임 주기의 정상 속도로 디코딩된 데이터를 디스플레이하는데, 이때 한 프레임 주기내에 N개 픽처의 바텀 필드만을 디스플레이하도록 제어하는 것을 특징으로 하는 비디오 디코딩 시스템.
- 제 1 항에 있어서, 상기 비디오 디스플레이 파라미터 제어부는2배속 디코딩 및 디스플레이 모드인 경우,상기 비디오 디스플레이 프로세서로부터 출력되는 필드 동기 신호를 2분주하는 분주기와,2배속 모드인지 정상 모드인지를 지시하는 double_speed 신호에 따라 상기 비디오 디스플레이 프로세서로부터 출력되는 필드 동기 신호 또는, 상기 분주기에서 2분주된 신호 중 어느 하나를 선택하여 상기 비디오 디코더에 디스플레이 동기 신호로서 출력하는 제 1 선택부와,2배속 모드에서 톱 필드만을 디스플레이할 것인지 바텀 필드만을 디스플레이할 것인지를 지시하는 sel_TB 신호에 따라 상기 제 1 선택부의 출력 신호와 반전된 출력 신호 중 어느 하나를 선택 출력하는 제 2 선택부와,기 설정된 조건을 만족하는 경우에만 인에이블 신호를 생성하여 출력하는 인에이블 신호 생성부와,상기 비디오 디스플레이 프로세서에서 제공하는 필드 동기 신호의 에지를 검출하는 에지 검출부와,상기 인에이블 신호 생성부의 인에이블 신호에 의해 인에이블되어 상기 비디오 디코더에서 출력되는 디스플레이 정보들을 다음 단으로 출력하는 제 1 플립플롭과,상기 에지 검출부에서 에지가 검출될 때에만 인에이블되어 상기 제 1 플립플롭에 래치된 디스플레이 정보들을 다음단으로 출력하는 제 2 플립플롭과,상기 double_speed 신호에 따라 상기 제 2 플립플롭에 래치된 디스플레이 정보들 또는 상기 비디오 디코더에서 출력되는 디스플레이 정보들 중 어느 하나를 선택하여 상기 비디오 디스플레이 프로세서로 출력하는 제 3 선택부로 구성되는 것을 특징으로 하는 비디오 디코딩 시스템.
- 제 5 항에 있어서, 상기 인에이블 신호 생성부는2배속 모드에서 탑 필드만을 디스플레이할 경우에는 디스플레이 동기 신호가 로우 구간이면서 디스플레이 시작 신호가 라이징 에지일 때 인에이블 신호를 생성하여 출력하는 것을 특징으로 하는 비디오 디코딩 시스템.
- 제 5 항에 있어서, 상기 인에이블 신호 생성부는2배속 모드에서 바텀 필드만을 디스플레이할 경우에는 디스플레이 동기 신호가 하이 구간이면서 디스플레이 시작 신호가 라이징 에지일 때 인에이블 신호를 생성하여 출력하는 것을 특징으로 하는 비디오 디코딩 시스템.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2002-0000780A KR100425136B1 (ko) | 2002-01-07 | 2002-01-07 | 비디오 디코딩 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2002-0000780A KR100425136B1 (ko) | 2002-01-07 | 2002-01-07 | 비디오 디코딩 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20030060228A true KR20030060228A (ko) | 2003-07-16 |
KR100425136B1 KR100425136B1 (ko) | 2004-03-31 |
Family
ID=32217177
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2002-0000780A KR100425136B1 (ko) | 2002-01-07 | 2002-01-07 | 비디오 디코딩 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100425136B1 (ko) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9421206D0 (en) * | 1994-10-20 | 1994-12-07 | Thomson Consumer Electronics | Digital VCR MPEG- trick play processing |
JP3843489B2 (ja) * | 1996-06-28 | 2006-11-08 | ソニー株式会社 | 映像再生装置およびベースバンドメモリ装置 |
US6201927B1 (en) * | 1997-02-18 | 2001-03-13 | Mary Lafuze Comer | Trick play reproduction of MPEG encoded signals |
KR100323688B1 (ko) * | 2000-01-27 | 2002-02-07 | 구자홍 | 디지털 동영상 수신 장치 |
KR100323676B1 (ko) * | 2000-01-27 | 2002-02-07 | 구자홍 | 디지털 동영상 수신 장치 |
KR100370076B1 (ko) * | 2000-07-27 | 2003-01-30 | 엘지전자 주식회사 | 다운 컨버젼 기능을 갖는 비디오 디코더 및 비디오 신호를디코딩 하는 방법 |
-
2002
- 2002-01-07 KR KR10-2002-0000780A patent/KR100425136B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR100425136B1 (ko) | 2004-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10051269B2 (en) | Output management of prior decoded pictures at picture format transitions in bitstreams | |
US6519283B1 (en) | Integrated video processing system having multiple video sources and implementing picture-in-picture with on-screen display graphics | |
KR100320476B1 (ko) | 비디오 디코더 및 디코딩 방법 | |
US6470051B1 (en) | MPEG video decoder with integrated scaling and display functions | |
KR100504471B1 (ko) | 비디오 디코딩 시스템 | |
KR101366203B1 (ko) | 공유 메모리 멀티 비디오 채널 디스플레이 장치 및 방법 | |
US6493005B1 (en) | On screen display | |
US6442206B1 (en) | Anti-flicker logic for MPEG video decoder with integrated scaling and display functions | |
KR101334295B1 (ko) | 공유 메모리 멀티 비디오 채널 디스플레이 장치 및 방법 | |
KR101366199B1 (ko) | 공유 메모리 멀티 비디오 채널 디스플레이 장치 및 방법 | |
WO2000059219A1 (en) | Digital video decoding, buffering and frame-rate converting method and apparatus | |
US6243140B1 (en) | Methods and apparatus for reducing the amount of buffer memory required for decoding MPEG data and for performing scan conversion | |
KR100995032B1 (ko) | 화면 정지 기능을 갖는 비디오 디코딩 장치 및 방법 | |
US8031266B2 (en) | Method and apparatus for video decoding and de-interlacing | |
KR100463515B1 (ko) | 비디오 디코딩 시스템 | |
KR100425136B1 (ko) | 비디오 디코딩 시스템 | |
KR100385527B1 (ko) | 비픽처인픽처 텔레비전 시스템을 위한 다중 스크린 디스플레이 형성 방법과 그 시스템 및 기록매체 | |
JP2005094800A (ja) | 動画像再符号化装置 | |
JP2006054760A (ja) | 画像処理装置及び画像処理方法 | |
JP2007235271A (ja) | 映像復号装置 | |
JP2005244382A (ja) | サムネイル画像生成装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20091230 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |