KR0178746B1 - 매크로블럭의 반픽셀처리장치 - Google Patents

매크로블럭의 반픽셀처리장치 Download PDF

Info

Publication number
KR0178746B1
KR0178746B1 KR1019950049398A KR19950049398A KR0178746B1 KR 0178746 B1 KR0178746 B1 KR 0178746B1 KR 1019950049398 A KR1019950049398 A KR 1019950049398A KR 19950049398 A KR19950049398 A KR 19950049398A KR 0178746 B1 KR0178746 B1 KR 0178746B1
Authority
KR
South Korea
Prior art keywords
data
pixel
flip
signal
pixel processing
Prior art date
Application number
KR1019950049398A
Other languages
English (en)
Other versions
KR970057917A (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 KR1019950049398A priority Critical patent/KR0178746B1/ko
Priority to US08/763,897 priority patent/US6028638A/en
Priority to EP19960309065 priority patent/EP0779743A3/en
Priority to JP33243396A priority patent/JP2918506B2/ja
Priority to CN96121480A priority patent/CN1104813C/zh
Publication of KR970057917A publication Critical patent/KR970057917A/ko
Application granted granted Critical
Publication of KR0178746B1 publication Critical patent/KR0178746B1/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/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
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
    • 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/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/182Methods 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 a pixel
    • 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/43Hardware specially adapted for motion estimation or compensation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)

Abstract

본 발명은 움직임보상(Motion Compensation)에 관한 것으로, 특히 전방화상과 후 방화상의 양쪽에서 움직임보상을 하는 B픽춰에 대해 움직임보상을 효율적으로 하기 위한 매크로블럭의 반픽셀처리장치에 관한 것이다. 본 발명은 반픽셀처리를 8비트씩 2번처리하고, 휘도성분뿐만 아니라, 색차성분에 대해서도 처리할 수 있도록 하고, 파이프라인을 이용하여 회로를 간략화 할 수 있는 잇점을 제공한다. 또한, MPEG에서 B픽춰의 움직임보상시, 전방화상과 후방화상의 평균값으로 움직임보상이 이루어지기 때문에 2번의 클럭으로 전방화상(제2(a)도)에서 1라인을 읽어들이고, 다음에는 후방화상(제2(b)도)에서 1라인씩 읽어들였던 것을 4번의 클럭으로 전방화상의 1라인을 두 번에 나누어 읽어들임으로써 시간지연을 줄일 수 있다.

Description

매크로블럭의 반픽셀처리장치
제1도는 매크로블럭(MB)내에서 1행을 반픽셀(Half Pixel)처리하기 위해 필요한 17픽셀을 선택하는 것을 설명하기 위한 개념도.
제2도는 제1도의 A부분(17×17픽셀)을 도시한 것으로써, 제2도(a)도는 전방화상을, 제2(b)도는 후방화상을 도시한 개념도.
제3도는 본 발명의 장치인 매크로블럭의 반픽셀처리장치를 나타낸 구성도.
제4도는 제3도의 장치에서 반픽셀처리된 데이터를 소정 기간동안 저장하였다가 MUX를 통해 출력하는 플립플롭수단의 동작 타이밍도.
* 도면의 주요부분에 대한 부호의 설명
31, 37 : 논리곱게이트 32, 38 : 가산부
33~36 : 래치 39 : 데이터처리부
41~44 : 플립플롭 45, 46 : MUX
47 : 예측방향결합부 48 : 합산기
49 : 범위제한부 50 : 카운터
본 발명은 동화상 복호기에서의 동보상(Motion Compensation)장치에 관한 것으로, 특히 전방화상과 후방화상의 양쪽에서 움직임보상을 하는 B픽춰에 대해 움직임보상을 효율적으로 하기 위한 매크로블럭의 반픽셀처리장치에 관한 것이다.
최근에는 화질의 개선을 위하여 영상신호를 디지털데이터로 부호화하여 처리하는 방식이 보편화되고 있다. 그러나, 영상신호를 디지털데이터로 부호화하는 경우, 데이터량이 상당히 많게 된다. 이러한 문제를 해결하기 위해 종래의 영상부호화시스템은 변환부호화, 차분펄스부호변조(DPCM;Differential Pulse Code Modulation), 벡터양자화 및 가변장부호화(VLC;Variable Length Coding)등을 사용하여 디지털 영상신호에 포함되어 있는 용장성데이타(Redundancy Data)를 제거하여 전체 데이터량을 감소시킨다. 일반적인 동화상부호기에서는 한 프레임의 디지털 영상신호를 M×N픽셀들의 비데오블럭으로 나누고, 이 M×N픽셀들로 이루어진 비데오블럭들에 대해 DCT (Discrete Cosine Transform), DST(Discrete Sine Transform), DFT(Discrete Fourier Transform), WHT(Walsh-Hadamard Transfom)중의 하나를 사용하여 변환을 수행한 후 변환계수 값들을 양자화 한다. 소정의 양자화제어신호에 따라 입력하는 데이터를 양자화 시키는 양자화에 관련한 기술은 잘 알려진 것이므로 그 구체적인 설명을 생략하겠다. 양자화된 데이터는 가변장부호화하여 데이터량을 더욱 압축시키며 양자화된 데이터를 역양자화 및 역변환하여 움직임보상을 수행한다.
움직임보상시, 종래의 반픽셀처리장치에서 수평방향 반픽셀처리할때는 매크로블럭당 16필셀씩 한 번에 읽어들여, 수평방향으로 입접한 16픽셀간의 평균을 냄으로써, 반픽셀처리동작을 수행하였다. 그리고, 수직방향으로 반픽셀처리를 할 때는 이전 라인의 픽셀과 수직방향으로 인접한 픽셀간의 평균을 냄으로써 수직방향 반픽셀처리를 하였다. 따라서, 종래의 반픽셀처리장치에서 수직방향으로 반픽셀처리를 할 때, 이전 라인의 픽셀데이터를 따로 저장해야하는 메모리가 필요하고 데이터의 연속된 출력이 어려웠다. 그러므로, 하드웨어가 복잡해지고, 시간지연의 문제점이 발생했다.
본 발명의 목적은 위와같은 종래의 문제점을 해결하기 위해 MPEG에서 B픽춰의 움직임보상시 매크로블럭의 반픽셀처리를 하는데에 있어서, 래치로 구성된 파이프라인을 이용하여 이전 라인의 픽셀데이터를 따로 저장하는 소정 메모리가 필요없도록 하드웨어를 구성하고, MUX를 이용하여 반픽셀처리데이터를 연속적으로 선택하여 움직임보상을 할 수 있으므로 시간지연의 문제점을 해결할 수 있는 매크로블럭의 반픽셀처리장치를 제공함에 있다.
위와 같은 목적을 달성하기 위한 본 발명의 특징은 매크로블럭내에서 동벡터의 동향성분에 따라 반픽셀처리를 하기위해 선택된 바이트단위의 N개의 픽셀데이터를 소정 단위로 분할하여 반픽셀동보상을 하기 위한 데이터 처리장치에 있어서, 외부로부터 인가되는 수평방향반픽셀처리신호에 따라 상기 바이트단위의 N개의 픽셀데이터중 M개의 픽셀데이터들과 한 픽셀 쉬프트된 인접픽셀데이터들간의 평균을 구하기 위한 제1가산수단, 상기 제1가산수단으로부터 인가되는 데이터를 저장하는 다수개의 래치로 구성된 파이프라인수단, 외부로부터 인가되는 수직방향반픽셀처리신호에 따라 상기 파이프라인수단에 저장된 이전 라인의 픽셀결과데이터와 상기 제1가산수단의 출력신호간의 평균을 구하기 위한 제2가산수단, 수평방향반픽셀처리신호와 수직방향반픽셀처리신호에 따라 상기 제2가산수단으로부터 인가되는 수평 또는 수직방향으로 반픽셀처리동작 수행시 생성된 캐리를 제거하여 M개의 반픽셀데이터를 출력하는 데이터처리부, 다수개의 플립플롭으로 구성되며, 상기 데이터처리부로부터의 M개의 반픽셀결과데이터를 디코더의 출력신호에 따라 인에이블되어 상기 데이터처리부로부터 인가되는 데이터를 M/2개의 픽셀데이터로 나누어 소정 기간동안 저장하는 플립플롭수단, 시스템클럭에 따라 소정 비트단위로 카운트하여 상기 플립플롭수단을 동작시키는 카운트수단, 상기 카운트수단으로부터 인가되는 MUX선택신호에 따라 상기 플립플롭수단으로부터 인가되는 M/2개의 반픽셀결과데이터를 선택하는 MUX수단, 상기 MUX수단으로부터 전방화상의 1바이트의 M/2개의 픽셀데이터와 후방화상의 M/2개의 픽셀데이터를 인가받아 합산하여 평균을 내는 예측방향결합부, 상기 예측방향결합부의 출력데이터와 IDCT체이터를 인가받아 반픽셀데이터의 동보상처리를 하는 합산수단을 포함하는 매크로블럭의 반픽셀처리장치에 있다.
이하, 첨부한 도면들을 참조하여 본 발명의 바람직한 일 실시예를 상세히 설명하겠다.
MPEG(Moving Picture Experts Group)에서의 일반적인 동보상단위인 매크로블럭(MB;Macro Block)은 휘도신호에 대해 16픽셀×16라인으로 구성되며, 동보상처리시 이 16픽셀을 한 번에 처리하도록 한다. 이때, 제1도에 도시한 바와 같이 매크로블럭(MB)내에서 1라인을 반픽셀(Half Pixel)처리하기 위해서는 17픽셀이 필요하다. 그래서, 동일한 행의 인접한 매크로블럭의 ①과②의 16픽셀들을 읽어내고 동벡터의 수평성분에 따라 32개의 픽셀중 16개의 반픽셀을 구하기 위한 17개의 픽셀을 선택한다. 32개의 픽셀에서 17개의 픽셀을 선택하는 일은 배럴시프터(도면 미도시)에서 선택된다. 여기서, 반픽셀 동보상을 위해 17픽셀의 데이터를 산출하는 장치는 동일 출원인이 선출원한 특허 제 95-21359ghdp 잘 나타나 있다. 그러므로, 17픽셀을 구하는 방법에 대해서는 설명을 생략하겠다. 이렇게 선택된 17개의 픽셀 즉, 17×8bit 데이터는 반픽셀 동보상을 위한 데이터로 출력된다. 제2도는 제1도의 A부분만을 도시한 것으로써, 제2(a)도는 전방화상을, 제2(b)도는 후방화상을 도시한 것이다. MPEG에서 B픽춰의 움직임보상시, 전방화상과 후방화상의 평균값으로 움직임보상이 이루어지기 때문에 전방화상(제2(a)도)에서 1라인을 읽어들이고, 다음에는 후방화상(제2(b)도)에서 1라인을 읽어들여 이 읽어들인 전방화상과 후방화상의 평균값을 구하여 동보상을 위한 데이터로 출력된다. 이때, 본 발명에서는 데이터를 읽어들이는 데이터버스의 크기를 줄이기 위해 매크로블럭의 한 라인을 구성하는 17픽셀을 한 번에 모두 읽지 않고, 제2도에 도시된 바와 같이 9픽셀씩 2클럭으로 나누어 읽어들인다. 먼저, 전방화상(F1-1)의 0~7픽셀과 1픽셀 쉬프트된 1~8픽셀간을 읽어들여 평균값을 구하고, 그 다음 F1-2의 8~15픽셀과 9~16픽셀을 읽어들여 평균값을 구하는 반픽셀처리동작을 수행한다. 이렇게 전방화상의 한라인을 2클럭에 나누어 반픽셀처리를 한다. 다음으로 후방화상의 한 라인을 반픽셀처리하기 위해 B1-1의 0~7픽셀과 1~8픽셀간의 평균값을 구하는 반픽셀처리동작을 수행하고, 그 다음 B1-2의 8~15픽셀과 9~16픽셀을 읽어들여 평균값을 구하는 반픽셀처리동작을 수행한다. 즉, 한 라인의 반픽셀처리시, 전방화상(F1-1, F1-2)의 1라인과, 후방화상(B1-1, B1-2)의 1라인 순으로 읽어들여 두 신호를 평균하여 매크로블럭 1라인에 대한 움직임보상을 수행한다. 제3도를 통하여, 상술한 동작을 수행하는 본 발명의 장치를 상세히 설명하겠다.
제3도는 본 발명의 장치인 반픽셀처리장치의 구성도이다. 먼저, 반픽셀처리를 하기 위해 제2도에 도시된 바와 같이 반픽셀동보상을 위한 데이터를 배럴쉬프트(도면 미도시)로부터 인가 받는다. 배럴쉬프트는 전방화상의 1바이트(8bit)의 9픽셀 즉, 8bit×9[0:8](제2도③참조)의 데이터를 독출하여 제1 논리곱게이트(31) 및 제1가산부(32)로 출력한다. 제1 논리곱게이트(31)는 외부의 콘트롤러(도면 미도시)로부터 수평방향으로 반픽셀처리를 하지 않겠다는 제1 신호를 인가받으면, 제1가산부(32)는 논리곱연산을하여 0을 출력한다. 따라서, 제1가산부(32)는 반픽셀처리를 하기위해 선택된 1바이트의 9픽셀(8bit×9[0:8])의 데이터중 상위 8개의 픽셀데이터[0:7]만 인가받는다. 또한, 캐리발생신호(Cin)도 인가되지 않았으므로, 제1가산부(32)를 통과한 상위 8픽셀데이터[0:7]는 제 4래치(33)에 저장된다. 그러나, 제1 논리곱게이트(31)로 수평방향반픽셀처리를 위한 제2 신호가 인가되면, 제1 논리곱게이트(31)는 논리곱연산을 하여 1을 출력한다. 제1가산부(32)는 반픽셀처리를 하기위해 선택된 1바이트의 8픽셀데이터(8bit×9[0:8])중 상위 8픽셀데이터[0:7]와 한 픽셀 쉬프트된 [1:8]의 픽셀데이터를 입력받는다. 즉, 제1가산부(32)는 F1-1의 0~7픽셀과 1~8픽셀을 인가받는다. 제1가산부(32)는 8개의 가산기로 이루어져 있으며, 8개의 가산기는 F1-1의 한 픽셀씩 평균값을 구한다. 이때, 캐리발생신호(Cin)가 인가되어 캐리가 하나 발생하므로 비트수가 하나 늘게 된다. 즉, 9bit×8픽셀 데이터가 출력되어 제 4래치(33)에 저장된다. 그 다음 제1 가산부(32)는 전방화상의 하위 8픽셀(F1-2의 8픽셀) 즉, 8bit×9[8:16]중 [8:15]의 픽셀데이터와 그 다음 한 비트 쉬프트된 [9:16]의 픽셀데이터를 인가받는다. 제1가산부(32)는 수평방향반픽셀처리신호에 따라 상술한 F1-1의 반픽셀처리시 동작과 마찬가지 동작을 반복하여 그 결과를 제4 래치(33)로 출력한다. 이때, 제4 래치(33)에 저장된 F1-1의 수평방향 반픽셀처리결과데이터는 제 3래치(34)로 전달된다. 그 다음 후방화상의 첫째라인의 첫 번째 9픽셀이 입력되어 상술한 바와 같은 반픽셀처리동작이 수행된 후, 그 결과는 제4 래치(33)에 저장되고, 제 3래치에 저장된 F1-2의 반픽셀처리데이터는 제2 래치(35)로, 제2 래치(35)에 저장된 F1-1의 반픽셀처리데이터는 제1 래치(36)로 인가된다. 따라서, 첫째 라인의 반픽셀처리동작을 수행한 결과값은 제1 래치(36)에는 F1-1, 제2 래치(35)에는 F1-2, 제 3래치(34)에는 B1-1, 제 4래치(33)에는 B1-2의 수평방향 반픽셀처리결과데이터가 저장된다. 다시, 둘째라인의 반픽셀처리를 하기 위하여 제1가산부(32)는 F2-1의 1바이트의 9픽셀데이터[0:8]를 인가받는다. 제1가산부에서 연산된 F2-1부분의 반픽셀처리데이터는 제 4래치(33)에 저장됨과 동시에 제2 논리곱게이트(37)를 통해 제2가산부(38)로 인가된다. 이때, 각각의 래치에 저장된 이전 라인의 수평방향 반픽셀처리결과데이터를 이용하여 수직방향 반픽셀처리동작의 수행이 가능하게 된다. 제2 논리곱게이트(37)는 외부의 콘트롤러(도면 미도시)로부터 수직방향반픽셀처리여부신호를 인가받아 제 2가산부(38)로 전달된다. 제2가산부(38)는 수직방향으로 반픽셀처리를 하지 않는다는 제1 신호를 인가받으면, 제1 래치(36)에 저장되었던 F1-1의 반픽셀처리데이터만 인가받는다. 그러나, 수직방향반픽셀처리신호를 하겠다는 제2 신호가 제2 논리곱게이트(37)로 인가되면, 제 2가산부(38)는 제1 래치(36)에 저장된 F1-1의 수직방향 반픽셀처리결과데이터와 F2-1의 수직방향 반픽셀처리결과데이터를 가산하여 데이터처리부(39)로 출력한다. 이때, 제2가산부(38)는 수직방향 반픽셀처리신호에 따른 캐리발생신호(Cin)를 인가받아 각각 인가받은 데이터비트값보다 한비트 증가된 10bit×8픽셀의 데이터가 데이터처리부(39)로 출력된다. 이후에는 전방화상에서 2번, 후방화상에서 2번의 순서대로 상술한 바와 같은 반픽셀처리동작을 반복 수행한다. 데이터처리부(39)는 래치들로 구성된 파이프라인을 통해 수평, 수직방향으로 반픽셀처리된 데이터의 최종 8픽셀의 결과데이터를 산출하기 위해 도면에 미도시된 콘트롤러로부터 수평방향 반픽셀처리신호와 수직방향 반픽셀처리신호에 따라 입력되는 10비트의 데이터를 왼쪽으로 쉬프트시켜 최종 8bit×8픽셀데이터를 출력한다. 여기서, 수평방향 또는 수직방향 반픽셀처리신호가 둘다 인가되지 않으면, 데이터치리부(39)는 결국 반픽셀처리가 되지않은 8비트의 데이터를 입력받은셈이 되므로 제1 래치(36)에 저장된 데이터를 인가받아 그대로 출력한다. 그러나, 데이터처리부(39)는 수평방향 또는 수직방향의 반픽셀처리신호중 하나를 입력받으면, 결국 한방향으로 반픽셀처리된 데이터 즉, 9비트의 데이터를 인가받은 셈이된다. 그러므로, 최종 8비트값을 구하기 위해 MSB쪽으로 1비트데이터를 쉬프트시켜 8비트의 데이터를 출력한다. 수평방향, 수직방향 반픽셀처리신호가 둘다 입력되면, 데이터처리부(39)는 수평, 수직의 두 방향 모두 반픽셀처리된 10비트가 데이터를 입력받은셈이 되므로 MSB쪽으로 2비트데이터를 쉬프트시켜 8비트의 데이터를 출력한다. 이렇게 반픽셀처리된 데이터들은 플립플롭수단으로 인가된다.
제4도는 반픽셀처리된 데이터가 플립플롭에 저장되는 순서를 설명하기 위한 동작타이밍도이다. 제4도를 참조하여 4개의 플립플롭의 저장타이밍과 MUX들의 신호선택타이밍을 설명하겠다. 1비트카운터(50)는 입력되는 동작클럭(CLK)에 따라 카운트값(0~3)(제4(a)도 참조)을 출력한다. 디코더(51)는 2비트씩 입력되는 카운트값에 따라 플립플롭들(41~44)로 인에이블 신호를 출력한다. 초기 반픽셀처리시를 예를 들어 설명하겠다. 카운터(50)의 카운트값 1일 경우(제4(a)도 참조), 디코더(51)는 그에 해당하는 신호를 제 2플립플롭(42)으로 인가한다. 이때, 제1 플립플롭(42)은 동작클럭(CLK)의 상승에지에서 인에이블되어 데이터처리부(39)로부터 인가되는 F1-2반픽셀처리데이터(제4(c)도 참조)를 저장한다(제4(e)도 참조). 이때, 각각의 플립플롭은 입력되는 8비트의 데이터를 각각 4비트씩 정해진 구간에 저장한다. 도면에 도시된 바와 같이, 입력되는 1바이트의 반픽셀처리데이타중 하위 4비트는 [0:3]저장소에, 그 다음 4바이트는 [4:7]저장소에 저장하게 된다. 여기서, 1바이트의 반픽셀처리데이터를 모두 한곳에 저장하지 않고, 4비트씩 분리하여 저장하는 이유는 예측방향결합부(47)에서 전방화상데이터와 후방화상데이터를 인가받아 평균을 구할 때, 시간절약을 하기 위함이다. 다시 말하면, 예측방향결합부(47)는 먼저 전방화상데이터 1바이트를 인가받는다. 그 다음 후방화상데이터 1바이트를 인가받아 평균을 구하는데 이때, 후방화상데이터가 입력될때까지 소정 시간이 걸린다. 따라서, 1바이트데이터를 4픽셀씩 분리하여 저장하고, 각각 독출하여 예측방향결합을 함으로써, 시간을 반으로 줄일 수 있다.
이때, 제3 플립플롭(43)은 반픽셀처리데이터의 상위 4비트[4:7]만 저장하고, 하위 4비트[0:3]는 저장하지 않고, 바로 데이터버스를 통해 제 2MUX(46)로 출력하도록 구성되는데 제4도의 타이밍도를 참조하여 그 이유를 설명하겠다. 예들 들어, 카운트값이 2(제4(a)도의 a부분)일 때, 제1 플립플롭(41)에는 F2-1의 반픽셀처리데이터가, 제2 플립플롭(42)에는 F2-2의 반픽셀처리데이터가, 제3 플립플롭(43)에는 B2-1의 반픽셀처리데이터가, 제4 플립플롭(44)에는 B1-2의 반픽셀처리데이터가 저장된다. 이때, 제1 MUX(45) 및 제 2MUX(46)는 카운터(50)로부터 플립플롭선택신호를 인가받는다. 카운트값이 2이므로 제1 MUX(45)는 제1 플립플롭(41)의 하위 4바이트[0:3]를 인가받고, 제2 MUX(46)는 데이터버스에 실린 B2-1의 반픽셀처리데이터를 인가받는다. 그 이유는 카운트값이 2일 때, 제 3플립플롭(43)에는 B1-1의 반픽셀처리데이터가 저장되어 있기 때문이다(제4(f) 빗금친부분). 이렇게 카운터(50)로부터 인가되는 MUX선택신호에 따라 각각의 플립플롭들(41~44)에 저장된 해당 데이터가 선택되어 예측방향결합부(47)로 인가된다. 제1 MUX(45)는 카운터(50)로부터 인가되는 MUX선택신호에 따라 전방화상의 1라인(제2(a)도 참조)의 데이터들(F1-1, F1-2)이 저장된 제1 플립플롭(41) 및 제 2플립플롭(42)의 8bit×4데이터를 인가받아 출력한다. 제 2MUX(46)도 마찬가지로 후방화상의 1라인(제2(b)도 참조)의 데이터들(B1-1, B1-2)이 저장된 제 3플립플롭(43) 및 제 4플립플롭(44)의 8bit×4데이터를 인가받아 외부로부터 인가되는 MUX선택신호에 따라 해당 데이터를 선택하여 출력한다. 예측방향결합부(47)는 선택된 전방화상의 8bit×4데이터와 후방화상의 8bit×4데이터를 인가받아 두 데이터의 평균을 구하여 합산기(48)로 출력한다. 합산기(48)는 도면에 미도시된 IDCT블럭으로부터 IDCT데이터(9bit×4)를 인가받아 예측방향결합부(47)로부터의 데이터(8bit×4)를 합산하여 범위제한부(saturation)(49)로 출력한다. 범위제한부(49)는 동보상처리된 최종 8bit×4의 결과데이터를 출력하기 위한 데이터크기를 제한하는 곳으로써, 이를 거쳐 최종 결과데이터가 출력된다.
따라서, 본 발명은 전방화상과 후방화상의 양쪽에서 움직임보상을 하는 B픽춰에 대한 움직임보상을 효율적으로 하기 위한 움직임보상의 반픽셀처리장치에 관한 것으로써, 움직임보상시, 종래의 반픽셀처리회로에서 수직 방향으로 보간을 할 때, 이전 라인의 픽셀데이터로 따로 저장해야하는 메모리가 필요하고 데이터의 연속된 출력이 어려웠다. 그러므로, 본 발명은 반픽셀처리를 8비트씩 2번처리하여 처리속도를 빠르게 하고, 파이프라인을 이용하여 회로를 간략화할 수 있는 잇점을 제공한다.

Claims (8)

  1. 매크로블럭내에서 동벡터의 방향성분에 따라 반픽셀처리를 하기위해 선택된 바이트단위의 N개의 픽셀데이터를 소정 단위로 분할하여 반픽셀동보상을 하기 위한 데이터처리장치에 있어서, 외부로부터 인가되는 수평방향반픽셀처리신호에 따라 상기 바이트단위의 N개의 픽셀데이터중 M개의 픽셀데이터들과 한 픽셀 쉬프트된 인접픽셀 데이터들간의 평균을 구하기 위한 제1가산수단; 상기 제1가산수단으로부터 인가되는 데이터를 저장하는 다수개의 래치로 구성된 파이프라인수단; 외부로부터 인가되는 수직방향반픽셀처리신호에 따라 상기 파이프라인 수단에 저장된 이전 라인의 픽셀결과데이터와 상기 제1가산수단의 출력신호간의 평균을 구하기 위한 제2가산수단; 수평방향반픽셀처리신호와 수직방향반픽셀처리신호에 따라 상기 제2가산수단으로부터 인가되는 수평 또는 수직방향으로 반픽셀처리동작 수행시 생성된 캐리를 제거하여 M개의 반픽셀데이터를 출력하는 데이터처리부; 다수개의 플립플롭으로 구성되며, 상기 데이터처리부로부터의 M개의 반픽셀결과데이터를 디코더의 출력신호에 따라 인에이블되어 상기 데이터처리부로부터 인가되는 데이터를 M/2개의 픽셀데이터로 나누어 소정 기간동안 저장하는 플립플롭수단; 시스템클럭에 따라 소정 비트단위로 카운트하여 상기 플립플롭수단은 동작시키는 카운트수단; 상기 카운트수단으로부터 인가되는 MUX선택신호에 따라 상기 플립플롭수단으로부터 인가되는 M/2개의 반픽셀결과데이터를 선택하는 MUX수단; 상기 MUX수단으로부터 전방화상의 1바이트의 M/2개의 픽셀데이터와 후방화상의 M/2개의 픽셀데이터를 인가받아 합산하여 평균을 내는 예측방향결합부; 상기 예측방향결합부의 출력데이터와 IDCT데이터를 인가받아 반픽셀데이터의 동보상처리를 하는 합산수단을 포함하는 매크로블럭의 반픽셀처리장치.
  2. 제1항에 있어서, 상기 제1가산수단은 수평방향반픽셀처리신호가 인가되었는지를 결정하는 제1 논리곱게이트; 상기 제1 논리곱게이트로부터 수평방향반픽셀처리신호가 입력되었음을 알리는 신호를 인가받으면, 상기 바이트단위의 M개의 픽셀데이터들과 한바이트 쉬프트된 M개의 인접픽셀데이타를 각각 합산하여 평균을 구하기 위한 다수개의 가산기로 구성된 제1가산부를 포함하는 것을 특징으로 하는 매크로블럭의 반픽셀처리장치.
  3. 제1항에 있어서, 상기 제2가산수단은 수직방향반픽셀처리신호가 인가되었는지를 결정하는 제2 논리곱게이트; 상기 제2 논리곱게이트로부터 수직방향반픽셀처리신호가 입력되었음을 알리는 신호를 인가받으면, 상기 플립플롭수단에 저장된 이전라인의 반픽셀처리데이터와 상기 제1가산수단으로부터 인가되는 현재 라인의 반픽셀처리데이터를 인가받아 합산하여 평균을 구하기 위한 다수개의 가산기로 구성된 제2가산부를 포함하는 것을 특징으로 하는 매크로블럭의 반픽셀처리장치.
  4. 제1항에 있어서, 상기 데이터처리부는 상기 수평방향 또는 수직방향반픽셀처리신호의 입력여부에 따라 상기 제2가산부에서 발생한 소정 비트의 캐리를 제거하기 위해 MSB방향으로 상기 방향성분에 대해 기설정된 해당 비트수만큼 쉬프트하는 것을 특징으로 하는 매크로블럭의 반픽셀처리장치.
  5. 제1항에 있어서, 상기 플립플롭수단은 상기 디코더의 출력신호에 따라 인에이블되어 상기 데이터처리부로부터 인가되는 데이터를 M/2개의 픽셀데이터로 나누어 소정 기간동안 저장하는 제1 내지 제4 플립플롭으로 구성되는 것을 특징으로 하는 매크로블럭의 반픽셀처리장치.
  6. 제5항에 있어서, 상기 제3 플립플롭은 상기 반픽셀처리데이터의 입력타이밍에 따라 데이터버스를 통해 상기 데이터처리부로부터 인가되는 데이터의 소정 갯수의 픽셀을 직접 입력받는 것을 특징으로 하는 매크로블럭의 반픽셀처리장치.
  7. 제1항에 있어서, 상기 카운트수단은 입력되는 시스템클럭에 따라 4비트씩 카운트하여 출력하는 카운터; 상기 카운터로부터 입력되는 카운트신호를 인가받아 상기 플립플롭수단의 읽기/쓰기동작을 가능하게 하는 디코더를 포함하는 것을 특징으로 하는 매크로블럭의 반픽셀처리장치.
  8. 제1항에 있어서, 상기 MUX수단은 상기 카운트수단으로부터 MUX선택신호를 인가받아 상기 플립플롭수단으로부터 인가되는 전방화상 반픽셀데이터중 해당 반픽셀데이타와 후방화상 반픽셀데이터중 해당 반픽셀데이터를 선택하는 것을 특징으로 하는 매크로블럭의 반픽셀처리장치.
KR1019950049398A 1995-12-13 1995-12-13 매크로블럭의 반픽셀처리장치 KR0178746B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1019950049398A KR0178746B1 (ko) 1995-12-13 1995-12-13 매크로블럭의 반픽셀처리장치
US08/763,897 US6028638A (en) 1995-12-13 1996-12-11 Half-pixel processing apparatus of macroblock for motion compensation of moving images
EP19960309065 EP0779743A3 (en) 1995-12-13 1996-12-12 Apparatus for half-pixel image motion compensation
JP33243396A JP2918506B2 (ja) 1995-12-13 1996-12-12 動画像の動き補償時マクロブロックの半画素処理装置
CN96121480A CN1104813C (zh) 1995-12-13 1996-12-13 对动图像进行运动补偿时宏数据组的半象素处理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950049398A KR0178746B1 (ko) 1995-12-13 1995-12-13 매크로블럭의 반픽셀처리장치

Publications (2)

Publication Number Publication Date
KR970057917A KR970057917A (ko) 1997-07-31
KR0178746B1 true KR0178746B1 (ko) 1999-05-01

Family

ID=19439726

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950049398A KR0178746B1 (ko) 1995-12-13 1995-12-13 매크로블럭의 반픽셀처리장치

Country Status (5)

Country Link
US (1) US6028638A (ko)
EP (1) EP0779743A3 (ko)
JP (1) JP2918506B2 (ko)
KR (1) KR0178746B1 (ko)
CN (1) CN1104813C (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6141382A (en) * 1998-09-18 2000-10-31 Sarnoff Corporation Using estimated distortion values
US8045203B2 (en) * 2000-03-28 2011-10-25 Mongonet Methods and apparatus for secure facsimile transmissions to electronic storage destinations
US7496736B2 (en) * 2004-08-27 2009-02-24 Siamack Haghighi Method of efficient digital processing of multi-dimensional data
US11379308B2 (en) * 2018-12-10 2022-07-05 Zoox, Inc. Data processing pipeline failure recovery

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2649515B1 (fr) * 1989-07-07 1991-09-20 Thomson Csf Dispositif de calcul d'une prediction pour un traitement d'images
KR950014862B1 (ko) * 1992-02-08 1995-12-16 삼성전자주식회사 움직임추정방법 및 그 장치
US5461423A (en) * 1992-05-29 1995-10-24 Sony Corporation Apparatus for generating a motion vector with half-pixel precision for use in compressing a digital motion picture signal
KR0166724B1 (ko) * 1993-05-08 1999-03-20 김광호 반화소정확도를 갖는 동벡터추정방법 및 그 장치
JP2636674B2 (ja) * 1993-05-25 1997-07-30 日本電気株式会社 動画像の動きベクトル検出装置
KR960010198B1 (ko) * 1993-07-21 1996-07-26 배순훈 동영상 부호화기의 움직임 추정방법 및 장치
EP0644698A3 (en) * 1993-09-14 1997-03-05 Gold Star Co B-image processing device with half-pixel motion compensation for an image encoder.
KR970003102B1 (ko) * 1993-09-17 1997-03-14 대우전자 주식회사 영상 복호기에서의 하프 픽셀 움직임 보상 회로
EP0675652B1 (fr) * 1994-03-30 2009-05-13 Nxp B.V. Procédé et circuit d'estimation de mouvement entre images à deux trames entrelacées, et dispositif de codage de signaux numériques comprenant un tel circuit
JPH07288819A (ja) * 1994-04-19 1995-10-31 Sony Corp 動きベクトル検出装置
KR970010091B1 (en) * 1994-06-13 1997-06-21 Lg Electronics Inc Address generating apparatus for image moving compensation
US5638128A (en) * 1994-11-08 1997-06-10 General Instrument Corporation Of Delaware Pixel interpolation filters for video decompression processor
US5650823A (en) * 1995-03-27 1997-07-22 International Business Machines Corporation Half pel motion estimation method for B pictures
US5623313A (en) * 1995-09-22 1997-04-22 Tektronix, Inc. Fractional pixel motion estimation of video signals

Also Published As

Publication number Publication date
JP2918506B2 (ja) 1999-07-12
CN1104813C (zh) 2003-04-02
US6028638A (en) 2000-02-22
EP0779743A2 (en) 1997-06-18
EP0779743A3 (en) 1999-06-30
JPH09214980A (ja) 1997-08-15
CN1159124A (zh) 1997-09-10
KR970057917A (ko) 1997-07-31

Similar Documents

Publication Publication Date Title
KR100411525B1 (ko) 화상 부호화 장치 및 화상 부호화 방법
KR100399932B1 (ko) 메모리의 양을 감소시키기 위한 비디오 프레임의압축/역압축 하드웨어 시스템
KR100287490B1 (ko) 동화상신호를나타내는변환계수의.역변환시반올림에러를방지하기위한방법및장치
US5126962A (en) Discrete cosine transform processing system
KR0180169B1 (ko) 가변길이 부호기
CN1174478A (zh) 用于去除运动画面解码器中成块效应的装置及方法
JPH07262175A (ja) 関数変換演算装置
US6223193B1 (en) Macroblock variance estimator for MPEG-2 video encoder
KR20040095742A (ko) 화상 복호 유닛과 그것을 이용한 화상 부호화 장치 및부호화 방법, 및 화상 복호 장치 및 복호 방법
US6215823B1 (en) Motion vector decoder
KR20010072420A (ko) 이미지 프로세싱 동안에 2차원 변환을 실행하기 위한 회로및 방법
KR0178746B1 (ko) 매크로블럭의 반픽셀처리장치
KR100197190B1 (ko) 런렝스 부호의 복호회로
US6014186A (en) High-speed motion vector decoding circuit
US5805483A (en) Method of converting data outputting sequence in inverse DCT and circuit thereof
US20050131979A1 (en) Apparatus for calculating absolute difference value, and motion estimation apparatus and motion picture encoding apparatus which use the apparatus for calculating the absolute difference value
KR0154011B1 (ko) 가변길이 복호화 장치
JP2000165861A (ja) 動画像復号装置
US20060227874A1 (en) System, method, and apparatus for DC coefficient transformation
US6668087B1 (en) Filter arithmetic device
KR100345450B1 (ko) 인트라 블록 예측 부호화 및 복호화 장치 및 그 방법
JPH08307868A (ja) 動画像復号装置
KR960005686Y1 (ko) Jpeg 디코더에서의 어드레스 발생회로
KR0155815B1 (ko) 화소 보간을 위한 반올림 연산장치
KR970003103B1 (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
FPAY Annual fee payment

Payment date: 20061030

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee