KR960013230B1 - 디지탈 영상 부호기의 데이타 패킹 회로 - Google Patents

디지탈 영상 부호기의 데이타 패킹 회로 Download PDF

Info

Publication number
KR960013230B1
KR960013230B1 KR1019930014869A KR930014869A KR960013230B1 KR 960013230 B1 KR960013230 B1 KR 960013230B1 KR 1019930014869 A KR1019930014869 A KR 1019930014869A KR 930014869 A KR930014869 A KR 930014869A KR 960013230 B1 KR960013230 B1 KR 960013230B1
Authority
KR
South Korea
Prior art keywords
data
variable length
value
system clock
packing
Prior art date
Application number
KR1019930014869A
Other languages
English (en)
Other versions
KR950005044A (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 KR1019930014869A priority Critical patent/KR960013230B1/ko
Publication of KR950005044A publication Critical patent/KR950005044A/ko
Application granted granted Critical
Publication of KR960013230B1 publication Critical patent/KR960013230B1/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/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)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

내용 없음.

Description

디지털 영상 부호기의 데이타 패킹 회로
제1도는 일반적인 데이터 패킹 회로를 도시한 블록도.
제2도는 본 발명에 따른 디지털 영상 부호기의 데이터 패킹 회로를 도시한 블록도.
제3도는 제2도의 각 부의 데이터 열을 나타내는 도면.
* 도면의 주요부분에 대한 부호의 설명
110 : 바렐 쉬프터 120 : 가산기
130 : 논리합 연산기 140 : 래치 회로
150 : 멀티플렉서
본 발명은 디지털 영상 부호기(doder)의 데이터 패킹 회로에 관한 것으로, 특히 부호화한 가변길이 데이터를 메모리(FIFO)에 인정한 비트로 저장하기 위한 패킹 회로를 간단한 하드웨어 구조로 구현하여 고속으로 동작하게 하는 디지털 영상 부호기의 데이터 패킹 회로에 관한 것이다.
디지털 영상 부호화 장치에서의 가변길이 부호기는 정보원에 포함된 각 부호어의 발생빈도에 따라 빈도가 높은 것은 짧은 길이의 부호로, 빈도가 낮은 것은 길이의 부호로 표시하는 부호화 방법으로서, 데이터의 추가적인 왜곡없이 데이터를 효과적으로 압축하기 위한 기법이다. 이 기법은 영상 신호의 디지털 부호/복호기(digital codec)에 대한 CCITT의 권고인 H, 26I의 표준에서 널리 사용되고 있다.
제1도에서는 일반적인 디지털 영상 부호기의 데이터 패킹 회로가 도시된다. 도시된 바와 같이 일반적인 가변길이 부호기의 데이터 패킹 회로(100)는 레지스터(1), (5), (7) 및 (15), 하위 및 상위 쉬프터 레지스터(11) 및 (12), 가산기(6), 지연회로(9), AND 게이트(10), OR 게이트(13) 및 선택기(14)로 구성된다. 가변길이 부호기(VCL)(도시되지 않음)로부터 출력되는 가변길이 부호값은 전술한 바와 같이 구성된 데이터 패킹 회로(100)의 하위 쉬프트 레지스터(lower shifter register)(11)로 입력된다. 또 VLC로부터 출력되는 코드 길이는 가산기(6)로 입력된다.
한편, 전술하는 데이터 패킹 회로(100)가 8비트로 구현된 경우, 예를 들어 처음 입력되는 데이터가 8비트를 초과하지 않고 두 번째 데이터가 입력되는 경우는 첫 번째 데이터 다음 비트부터 첫 번째 코드길이 만큼 쉬프트되어 입력하게 된다. 이때, 두 번째 입력되는 데이터까지가 8비트를 초과하지 않으면 세 번째로 입력되는 데이터는 두 번째 데이터 다음부터 입력되며, 이때 8비트를 초과하면 상기 상위 쉬프터 레지스터(upper shifter register)(12)로 연장하여 계속 입력된다. 이와 같이 입력되는 가변 길이 부호값중에서 첫 번째 입력된 데이터는 레지스터(register)(15)에 저장하고 OR 게이트(13)에서 이 저장된 데이터와 그 다음 입력되는 데이터, 즉 두 번째 입력되는 데이터를 논리합으로 연산한다. OR 게이트(13)를 통해 논리 합으로 연산한 데이터는 자리올림(carry)값에 의해 레지스터(5)에 저장되고 레지스터(15)에는 상위 쉬프터 레지스터(12)에 남아 있던 데이터가 저장하게 된다.
전술한 바와 같이 작동하는 일반적인 디지털 영상 부호기의 데이터 패킹 회로(100)는 8비트를 예로 들어 설명하였다. 그러나 데이터 패킹 회로(100)의 하위 및 상위 쉬프터 레지스터(11)(12)를 8비트 이상으로 증가할 경우에는 그 구현이 매우 복잡해지고 이에따라 동작지연이 발생된다는 문제점이 있다. 예컨대 전술한 하위 쉬프터 레지스터(11)는 4비트 쉬프터를 사용하고 8비트 패킹 회로의 경우에만 적용가능하도록 구현하였음으로 8비트가 아닐 경우, 즉 비트수가 증가될 경우는 쉬프터의 숫자도 이에 상응하게 증가되고 이를 제어하는 신호 처리 기술도 매우 복잡하게 된다.
그러므로 종래의 일반적인 데이터 패킹회로는 특정한 비트수에 국한되어 있으며, 비트수가 증가할 경우 하드웨어 구성은 매우 복잡하게 되어 결국 동작 시간이 지연된다는 문제점을 초래하게 된다.
따라서 본 발명은 전술한 문제점을 해소하기 위한 것으로서, 본 발명의 목적은 데이터 패킹회로의 하드웨어 구조를 데이터 패킹 비트수에 따라 간단하게 변형하여 보다 간단하게 구현함으로서 동작 속도를 개선한 디지털 영상 부호기의 데이터 패킹 회로를 제공하는데 있다.
본 발명에 따른 디지털 영상 부호기의 데이터 패킹 회로는 디지털 영상 부호기의 가변길이 부호기(VLC)로부터 제공되는 가변길이 부호값과 가변길이 부호길이 값을 입력하여 디지털 영상 부호기의 선입 선출(FIFO) 메로리 장치로 일정하게 데이터를 저장하기 위한 데이터 패킹 회로(data packing circuit)로서, 디지털 영상 부호기에서 제공되는 제1시스템 클럭 입력시에 상기 VLC로부터 제1가변길이 부호 길이 값을 입력하여 제1가변길이 부호 길이 값을 제2시스템 클럭이 입력될 때까지 그대로 보유하며, 제2시스템 클럭 입력시에 상기 VLC로 부터의 제2가변길이 부호값을 입력하여 그대로 보유하고 상기 제1가변길이 부호 길이 값을 그대로 출력하며, 제3시스템 클럭 입력시에 상기 VLC로부터의 제3가변 길이 부호 값을 입력하여 그대로 보유하고 제1 및 제2시스템 클럭 동작시에 입력된 제1 및 제2가변길이 부호 길이 값을 가산하는 방식으로 동작하는 가산(adder)수단과; 상기 VLC로부터 입력되는 가변 길이 부호 값을 상기 가산 수단에서 제공하는 가변 길이 부호 길이 값에 의해 우측으로 소정의 비트만큼 쉬프트하는 바렐 쉬프트(Barrel shift) 수단과; 상기 바렐 쉬프트 수단으로부터 출력되는 데이터열을 상기 시스템 클럭신호들이 입력되는 소정의 시간동안 래치하는 래치(latch) 수단과; 상기 발레 쉬프트 수단으로부터 출력되는 데이터열과 이전의 시스템 클럭이 동작하는 동안에 상기 래치 수단에 래치된 데이터열을 논리합(OR)연산하는 논리합 연산 수단과; 상기 논리합 연산 수단으로부터 출력되는 데이터 열을 입력하여 상기 가산 수단을 통해 출력되는 캐리, 즉 가변길이 부호 길이 값이 기설정된 비트로 구성된 패킹이 초과된 경우 초과 비트에 의해 상기 패킹이 완료된 데이터는 상기 FIFO 메모리 장치로 저장하기 위해 전송하며, 이때 상기 패킹을 초과한 데이터는 상기 제1패킹 영역에 래치하도록 하는 멀티플렉서(MUX) 수단을 포함한다.
이하 본 발명을 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.
제2도는 본 발명에 따른 디지털 영상 부호기의 데이터 패킹 회로를 도시한 것으로서, 데이터 패킹 회로(200)는 바렐 쉬프터(Barrel shifter)(110), 가산기(120), 논리합 연산기(OR gate)(130), 래치 회로(140) 및 MUX(150)로 구성된다. 바렐 쉬프터(110)는 가변 길이 부호기(VLC)(도시되지 않음)로부터 제공되는 부호화된 소정의 가변 길이 부호값을 부호기 시스템에 제공되는 클럭 신호의 라이징 에지(rising edge)에서 입력하며, 후술하는 가산기(120)를 통해 출력된 부호 길이값 만큼 쉬프트하고 논리합 연산기(130)로 전달한다. 가산기(120)는 역시 상기 VLC로부터 제공되는 소정의 가변 길이 부호 길이 값을 클럭 신호의 라이징에지에서 입력하고, 처음 입력되는 부호 길이 값을 바렐 쉬프터(110)로 전달하며 동시에 두 번째 입력되는 부호 길이 값과 궤환되는 처음의 부호 길이 값을 가산하는 방식으로 계속적으로 연산한다.
논리합 연산기(130)는 도시된 바와 같이 두 개의 OR 게이트(131)(132)로 구성되며, 상기 바렐 쉬프터(110)를 통해 부호 길이값 만큼 쉬프트된 부호값과 후술하는 래치 회로(140)로부터 궤환되는 부호값과의 논리합 연산(131) (132)을 통해 출력되는 부호값들을 다시 래치회로(110)에 저장시킨다. 예를 들어 이때 저장된 데이터 값이 패킹하려고 하는 비트 수보다 클 경우, 즉 데이터가 래치회로(140)의 레지스터(142)로 넘어갈 경우에 이 데이터를 상기 가산기(120)에서 발생한 캐리 값에 의해서 레지스터(142)에 저장된 값이 OR 게이트(132)를 통해 MUX(150)에 입력되고, MUX(150)의 출력값이 레지스터(142)로 입력하게 된다. 이와 동시에 OR 게이트(131)의 출력값은 FIFO로 전달하여 저장하게 된다.
래치 회로(140)는 두 개의 레지스터(141)(142)로 구성되며, 전술한 바와 같이 입력되는 데이터를 클럭 신호에 의해 일시적으로 저장하며, 상기 가산기(120)에서 제공되는 캐리 값에 의해 상기 OR 게이트(131)를 통해 MUX (150)로 입력되는 데이터를 제어하며 이에 의해 MUX(150)의 출력값을 저장하거나 OR 게이트(132)를 통과한 데이터를 저장하게 된다.
MUX(150)는 상기 OR 게이트(6)를 통해 출력되는 데이터를 입력하여 가산기(120)에서 발생한 캐리 값에 의해 출력하여 상기 레지스터(141)로 전달한다.
다음 클럭 동작시에 레지스터(141)에 저장된 데이터와 바렐 쉬프터(110)로부터 새로 입력되는 데이터를 OR게이트(131)를 통해 논리합 연산하고 이 연산된 결과의 데이터는 상기 MUX(150)로 전달한다. 이와 같은 동작을 반복 수행함으로서 데이터를 일정한 비트로 FIFO로 저장하게 된다.
제3도는 본 발명에 따른 일련의 동작 과정을 예시하는 전술한 제2도의 각부의 데이터열을 나타내는 도면이다. 예를 들어 부호 갑이 a이고 가변길이 부호가 00011이며, 부호값이 b이고 가변 길이 부호가 00010이며, 부호값이 c이고, 가변 길이 부호가 0000111이며, 부호값이 d이고 가변 길이 부호가 0000110이며, 부호값이 e이고 가별 길이 부호가 00001011이며, 부호값이 f이고 가변 길이 부호가 0001010인 데이터를 12비트로 패킹하여 전송하는 경우, 도시된 바와 같이(161)은 처음의 부호값 a, 즉 가션길이 부호가 00011인 데이터를 전송하는 경우 바렐 쉬프터(110)의 출력을 나타내며, (162)는 레지스터(141)의 초기 상태를 나타낸다. (163)은 상기 바렐 쉬프터(110)의 출력(161)과 레지스터(141)의 초기 상태(162)를 논리합 연산한 데이터를 래치한 것을 나타낸다. (164)는 가변길이 부호가 00010이고, 부호 길이 값이 5인 부호값 b를 바렐 쉬프터(110)로 입력하여 전송하는 경우의 데이터 열을 나타내며, (165)는 바렐 쉬프터(110)로 입력되는 데이터열(164)을 제1시스템 클럭에서의 부호 길이값(5)만큼 우측으로 5비트 쉬프트한 바렐 쉬프터(110)의 출력 데이터열을 나타낸다.
또한, (166)은 제1시스템 클럭에서의 레지스터(141)에서 래치된 데이터열(163)과 제2시스템 클럭에서의 바렐 쉬프터(110)의 출력 데이터열(165)을 OR 게이트(131)에서 논리합 연산하고 MUX(150)를 통해 레지스터(141)에 래치된 데이터열을 나타낸다. (167)은 가변 길이 부호가 0000111이고, 부호 길이값이 7인 뵌 0c를 바렐 쉬프터(110)로 입력하여 전송하는 경우의 데이터열을 나타내며, (168)은 바렐 쉬프터(110)로 입력되는 데이터열(167)을 제1시스템 클럭에서 부호 길이값 5와 제2클럭에서의 부호 길이값 5를 가산기(120)를 통해 가산한 결과의 부호 길이값, 즉 10비트를 우측으로 쉬프트하고 출력한 데이터열을 나타낸다. (169)는 도시된 바와 같이 제2시스템 클럭에서 레지스터(141)에 래치된 상기 데이터열(166)과 제3시스템 클럭에서의 바렐 쉬프터(110)를 통과한 출력 데이터열(168)이 제1래치 영역을 초과함으로 OR 게이트(131)에서 논리합 연산하고 MUX(150)를 통해 레지스터(141)에 래치된 데이터를 나타내며, 또한 제2래치 영역에 있는 데이터는 OR 게이트(132)를 통해 레지스터(142)에 래치된 데이터를 나타낸다. 한편(169)를 통해 알 수 있는 바와 같이 제1래치된 12비트로 구성된 1워드의 패킹이 완료되었음으로, 선입선출(FIFO) 메모리(도시되지 않음)로 전송한다. (170)은 전술한(169)에서 전송하고 남은 레지스터(142)에 래치된 데이터를 레지스터(141)로 이동한 데이터열을 나타낸다.
전술한 바와 같이, 본 발명에 따른 디지털 영상 부호기에 데이터 패킹 회로는 종래의 데이터 패킹 회로가 특정 비트수에 국한되어 있어, 이를 변형하기 위해서는 복잡한 알고리즘으로 구현해야 하는데 반해 하드웨어 구조가 간단하여 그 구현을 용이하게 할 수 있으며, 따라서 동작 속도를 개선한 이점이 있다.

Claims (4)

  1. 디지털 영상 부호기의 가변길이 부호기(VLC)로부터 제공되는 가변 길이 부호값과 가변길이 부호 길이 값을 입력받아 디지털 영상 부호기의 선입 선출(FIFO) 메모리 장치로 일정하게 데이터를 저장하기 위한 데이터 패킹 회로(data packing circuit)로, 디지털 영상 부호기에서 제공되는 제1시스템 클럭 입력시에 상기 VLC로부터 제1가변길이 부호 길이 값을 입력하여 제1가변길이 부호 길이 값을 제2시스템 클럭이 입력될 때까지 그대로 보유하며, 제2시스템 클럭 입력시에 상기 VCL로부터의 제2가변길이 부호값을 입력하여 제1가변길이 부호의 길이만큼 쉬프트하여 출력되어 제1가변길이 부호값과, OR 연산한 값을 보유하고, 제3시스템 클럭 입력시에 상기 VLC로부터의 제3가변길이 부호 값을 입력하여 그대로 보유하고 제1 및 제2클럭 동작시에 입력된 제1 및 제2가변길이 부호 길이 값을 가산하는 방식으로 동작하는 가산(adder) 수단(120)과; 상기 VLC로부터 입력되는 가변길이 부호 값을 상기 가산 수단(120)에서 제공하는 가변길이 부호 길이 값에 의해 가산된 값만큼 쉬프트하는 수단(110)과; 상기 바렐 쉬프트 수단(110)으로부터 출력되는 데이터열을 상기 시스템 클럭신호들이 입력되는 시간동안 래치하는 래치(latch) 수단(140)과; 상기 바렐 쉬프트 수단(110)으로부터 출력되는 데이터열과 이전의 시스템 클럭이 동작하는 동안에 상기 래치 수단(140)에 래치된 데이터 열을 논리합(OR) 연산하는 논리합 연산 수단(130)과; 상기 논리합 연산 수단(130)으로부터 출력되는 데이터 열을 입력하여 상기 가산수단(120)을 통해 출력되는 캐리, 즉 가변길이 부호 길이 값이 기설정된 비트로 구성된 패킹이 초과된 경우 초과 비트 값에 의해 상기 패킹이 완료된 데이터는 상기 FIFO 메모리 장치로 저장하기 위해 전송하며, 이때 상기 패킹을 초과한 데이터는 상기 제1패킹 영역에 래치하도록 하는 멀티플렉서(MUX) 수단(150)을 포함하는 디지털 영상 부호기의 데이터 패킹 회로.
  2. 제1항에 있어서, 상기 래치 수단(140)는 제1 및 제2레지스터(141) 및 제(142)로 구성되며, 제1레지스터(141)는 상기 논리합 연산 수단(130) 및 MUX(150)수단으로부터 제공되는 데이터열을 상기 소정의 시스템 클럭이 작동되는 시간동안 소정의 비트로 구성된 제1패킹 데이타를 래치하도록 작동하며, 제2레지스터(142)는 상기 논리함 연산 수단(130)으로부터 제공되는 데이타열을 상기 소정의 시스템 클럭이 작동되는 시간동안 소정의 비트로 구성된 제2패킹 데이타를 래치하도록 작동하는 것을 특징으로 하는 디지털 영상 부호기의 데이타 패킹회로.
  3. 제1항 또는 제2항에 있어서, 상기 논리합 연산 수단(130)은 제1 및 제2OR게이트(131) 및 (132)로 구성되며, 제1OR 게이트(131)는 상기 바렐 쉬프트 수단(110)으로부터 출력되는 데이터열과 상기 이전 시스템 클럭 동작에서의 래치 수단(140)의 제1레지스터(141)에 래치된 데이터열을 논리합 연산하며, 제2OR 게이트(132)는 상기 바렐 쉬프트 수단(110)으로부터 출력되는 데이터열이 상기 제1레지스터(141)에 소정의 비트로 구성된 제1패킹 데이터를 초과한 경우, 초과한 데이터와 이전 시스템 클럭 동작에서의 래치 수단(140)의 제2래지스터(142)에 래치된 데이타열을 논리합 연산하는 것을 특징으로 하는 디지탈 영상 부호기의 데이타 패킹회로.
  4. 제3항에 있어서, 상기 가산 수단(120), 바렐 쉬프트 수단(110) 및 논리합 연산 수단(130)의 제1 및 제2OR게이트(131) 및 (132)가 동기화(synchroni zation)되어 있는 것을 특징으로 하는 디지탈 영상부호기의 데이타 패킹회로.
KR1019930014869A 1993-07-31 1993-07-31 디지탈 영상 부호기의 데이타 패킹 회로 KR960013230B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019930014869A KR960013230B1 (ko) 1993-07-31 1993-07-31 디지탈 영상 부호기의 데이타 패킹 회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019930014869A KR960013230B1 (ko) 1993-07-31 1993-07-31 디지탈 영상 부호기의 데이타 패킹 회로

Publications (2)

Publication Number Publication Date
KR950005044A KR950005044A (ko) 1995-02-18
KR960013230B1 true KR960013230B1 (ko) 1996-10-02

Family

ID=19360583

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019930014869A KR960013230B1 (ko) 1993-07-31 1993-07-31 디지탈 영상 부호기의 데이타 패킹 회로

Country Status (1)

Country Link
KR (1) KR960013230B1 (ko)

Also Published As

Publication number Publication date
KR950005044A (ko) 1995-02-18

Similar Documents

Publication Publication Date Title
US4286256A (en) Method and means for arithmetic coding utilizing a reduced number of operations
US4467317A (en) High-speed arithmetic compression coding using concurrent value updating
US4463342A (en) Method and means for carry-over control in the high order to low order pairwise combining of digits of a decodable set of relatively shifted finite number strings
US5436626A (en) Variable-length codeword encoder
EP0047440A1 (en) Shift circuit
US4295125A (en) Method and means for pipeline decoding of the high to low order pairwise combined digits of a decodable set of relatively shifted finite number of strings
US5712992A (en) State machine design for generating empty and full flags in an asynchronous FIFO
US5506796A (en) Digital signal processing circuit selectively operable in either a normal or a pseudorandom noise generative mode
US5181184A (en) Apparatus for multiplying real-time 2's complement code in a digital signal processing system and a method for the same
US4899305A (en) Manchester carry adder circuit
US5459683A (en) Apparatus for calculating the square root of the sum of two squares
KR960013230B1 (ko) 디지탈 영상 부호기의 데이타 패킹 회로
US5784497A (en) Arithmetic encoding with carry over processing
US5691930A (en) Booth encoder in a binary multiplier
US5889693A (en) CMOS sum select incrementor
US3932739A (en) Serial binary number and BCD conversion apparatus
US3618077A (en) Walsh function generator
US5062125A (en) Statistic coding arrangement for producing code words comprising a variable number of bits
US5905663A (en) Minimal circuit for detecting loss of precision in floating point numbers
US6496602B2 (en) Sorting device of variable-length code
JP3219571B2 (ja) 画像符号化装置及び方法
US5148480A (en) Decoder
SU1605935A3 (ru) Способ перекодировани @ -разр дных кодовых слов и устройство дл его осуществлени
JP3074958B2 (ja) 加算機能付きシリアル乗算器
KR100188088B1 (ko) 2진 데이타의 수치연산장치

Legal Events

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

Payment date: 19990930

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee