KR19980039535A - Picture Synchronizer for MPEG Video Decoder - Google Patents
Picture Synchronizer for MPEG Video Decoder Download PDFInfo
- Publication number
- KR19980039535A KR19980039535A KR1019960058562A KR19960058562A KR19980039535A KR 19980039535 A KR19980039535 A KR 19980039535A KR 1019960058562 A KR1019960058562 A KR 1019960058562A KR 19960058562 A KR19960058562 A KR 19960058562A KR 19980039535 A KR19980039535 A KR 19980039535A
- Authority
- KR
- South Korea
- Prior art keywords
- picture
- signal
- buffer
- output
- bit
- Prior art date
Links
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/007—Transform coding, e.g. discrete cosine transform
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Discrete Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
개시된 내용은 MPEG 비디오디코더에서 비트버퍼에 입력되는 비트스트림데이타를 픽쳐단위로 동기화하여 디코딩할 수 있도록 하는 MPEG 비디오디코더의 픽쳐 동기화장치에 관한 것이다. 본 발명은 임의의 한 픽쳐 비트스트림데이타가 비트버퍼로 입력되기 시작할 때 그 픽쳐의 버퍼지연시간간격을 카운팅하면서 카운팅이 끝나기 전에 그 픽쳐가 비트버퍼에서 출력될 때는 카운팅이 끝날 때까지 디코딩을 중지시키고, 카운팅이 끝나고 미리 설정한 문턱값 이상 지연되어 그 픽쳐가 비트버퍼에서 출력되면 그 픽쳐에 대해 디코딩을 스킵하도록 구성된다. 따라서, 본 발명은 MPEG 비디오디코더에서 픽쳐단위로 동기화시켜 디코딩할 수 있는 효과를 제공한다.The present disclosure relates to an apparatus for synchronizing a picture of an MPEG video decoder which enables decoding of bitstream data input to a bit buffer in a MPEG video decoder in picture units. When the picture is output from the bit buffer before counting is completed while counting the buffer delay time interval of the picture when any one picture bitstream data starts to be input to the bit buffer, the decoding stops until the end of counting. When the counting ends and the predetermined threshold is delayed and the picture is output from the bit buffer, the decoding is skipped for the picture. Accordingly, the present invention provides an effect that can be decoded by synchronizing in picture units in an MPEG video decoder.
Description
본 발명은 MPEG 비디오디코더에서 버퍼상태에 따라 디코딩을 제어하는 시스템에 관한 것으로서, 특히 픽쳐(picture)단위의 부호화된 비트스트림의 버퍼지연시간간격(vbv_delay)과 버퍼출력시점에 따라 디코딩을 중지 또는 스킵하도록 제어하므로써 MPEG 비디오디코더를 픽쳐단위로 동기화시킬 수 있는 장치에 관한 것이다.The present invention relates to a system for controlling decoding according to a buffer state in an MPEG video decoder, and in particular, stops or skips decoding according to a buffer delay time interval (vbv_delay) and a buffer output time of an encoded bitstream in a picture unit. The present invention relates to an apparatus capable of synchronizing an MPEG video decoder on a picture basis by controlling the video data decoder.
동영상 압축기법의 표준안인 MPEG(moving picture experts group)규격의 비디오디코더(video decoder)에서는 도 1에 나타낸 바와 같이, 일정한 전송율의 압축 부호화된 비트스트림형태의 영상데이타를 비트버퍼(Bit-Buffer)(11)에서 입력받고, 가변장복호기(VLD)(12)에서는 비트버퍼(11)에 저장된 비트스트림 영상데이타를 읽어들여 가변장복호화한다. 가변장복호화된 데이타는 역양자화 및 역이산여현변환기(IQ/IDCT)(13)에서 역양자화 및 역이산여현변환되고, 동보상부(14)에서 동보상되어 복원된 영상데이타로 출력된다.In the video decoder of the MPEG (moving picture experts group) standard, which is a standard of the video compression method, as shown in FIG. 1, image data in the form of a compression-coded bitstream having a constant bit rate is obtained by using a bit buffer (Bit-Buffer). 11), the variable length decoder (VLD) 12 reads the bitstream video data stored in the bit buffer 11 and performs variable length decoding. The variable-length decoded data is inverse quantized and inverse discrete cosine transformed by an inverse quantization and inverse discrete cosine transformer (IQ / IDCT) 13, and is output as image data that is compensated by the compensator 14 and reconstructed.
위와 같은 MPEG 비디오디코더에서, 부호화된 비트스트림 데이타를 디코딩하면서 각 픽쳐의 디코딩 타이밍이 맞지 않으면 비트버퍼가 오버플로우 또는 언더플로우되어 정상적인 디코딩이 안된다. 그래서, 비트스트림 데이타에는 각 픽쳐가 디코딩되기 시작할 때의 비트버퍼상태를 90㎑ 클럭으로 카운팅한 16비트의 버퍼지연시간간격(vbv_delay)이 각 픽쳐마다 있다. 임의의 한 픽쳐 비트스트림 데이타가 비트버퍼에 입력되는 시점에서부터 출력되는 시점까지의 시간차가 그 픽쳐마다 존재하는 버퍼지연시간간격(vbv_delay)가 같아야 한다.In the MPEG video decoder as described above, if the decoding timing of each picture is not correct while decoding the encoded bitstream data, the bit buffer overflows or underflows and thus normal decoding cannot be performed. Therefore, in the bitstream data, there is a 16-bit buffer delay time interval (vbv_delay) counting the bit buffer state at the time when each picture starts to be decoded by 90 ms clock for each picture. The time difference from the time point at which one picture bitstream data is input to the bit buffer to the time point at which the picture bitstream data is output should be equal to the buffer delay time interval (vbv_delay) existing for each picture.
하지만, MPEG 비디오디코더에서 비트스트림 데이타에 에러가 발생하여 비정상적으로 디코딩되거나 하드웨어 구조상 빠르게 또는 느리게 디코딩될 때는 비트버퍼를 정상적으로 유지할 수 없게 된다. 이로 인하여 각 픽쳐의 디코딩 타이밍이 맞지 않게 되고, 비트버퍼에 오버플로우 또는 언더플로우가 발생한다.However, when an error occurs in the bitstream data in the MPEG video decoder, the bit buffer cannot be normally maintained when abnormally decoded or decoded quickly or slowly due to hardware structure. As a result, the decoding timing of each picture does not match, and overflow or underflow occurs in the bit buffer.
따라서, 본 발명의 목적은 부호화된 비트스트림 데이타를 디코딩하기 위하여 수신받는 비트버퍼에 입력되는 픽쳐가 비트버퍼에서 출력되는 시점까지의 시간간격을 그 픽쳐에 대한 버퍼지연시간간격과 비교하여 그 픽쳐가 제시간에 디코딩되는 지를 판단하고, 제시간이 될 때까지 디코딩 동작을 중지시키거나 그 픽쳐를 디코딩하지 않고 건너뛰도록 하므로써 비트버퍼의 오버플로우나 언더플로우를 방지할 수 있도록 한 MPEG 비디오디코더를 픽쳐단위로 동기화하는 MPEG 비디오디코더의 픽쳐 동기화장치를 제공함에 있다.Accordingly, an object of the present invention is to compare the time interval from the time at which the picture input to the received bit buffer to the output from the bit buffer to decode the encoded bitstream data to the buffer delay time interval for the picture. MPEG video decoders that determine whether they are decoded in time and either stop the decoding operation until on time or skip the picture without decoding the picture can prevent overflow or underflow of the bit buffer. The present invention provides a picture synchronization device of an MPEG video decoder which synchronizes in units.
도 1은 일반적인 MPEG 비디오디코더를 개략적으로 나타낸 블록도,1 is a block diagram schematically showing a typical MPEG video decoder;
도 2는 본 발명의 픽쳐동기화장치가 적용된 MPEG 비디오디코더를 개략적으로 나타내는 블록도,2 is a block diagram schematically showing an MPEG video decoder to which a picture synchronization device of the present invention is applied;
도 3은 도 2 픽쳐동기화장치의 픽쳐시작부호검출부를 나타내는 상세도,3 is a detailed view showing a picture start code detection unit of the picture synchronization device of FIG. 2;
도 4는 도 2 픽쳐동기화장치의 버퍼지연시간간격 및 버퍼입출력비교부를 나타내는 상세도,4 is a detailed diagram illustrating a buffer delay time interval and a buffer input / output comparison unit of the picture synchronization device of FIG. 2;
도 5는 도 2 픽쳐동기화장치의 카운터인에이블신호발생부를 나타내는 상세도,5 is a detailed view illustrating a counter enable signal generation unit of the picture synchronization device of FIG. 2;
도 6은 도 3 내지 도 5의 각 구성에 대한 동작을 설명하기 위한 타이밍도,6 is a timing diagram for describing an operation of each component of FIGS. 3 to 5;
도 7은 도 2 픽쳐동기화장치의 버퍼출력픽쳐지연신호발생부를 나타내는 상세도,7 is a detailed view illustrating a buffer output picture delay signal generation unit of the picture synchronization device of FIG. 2;
도 8은 도 2 픽쳐동기화장치의 시스템클럭카운트값검출부를 나타내는 상세도,8 is a detailed view illustrating a system clock count value detection unit of the picture synchronization device of FIG. 2;
도 9는 도 2 픽쳐동기화장치의 오프셋계산부를 나타내는 상세도,9 is a detailed view showing an offset calculator of the picture synchronization device of FIG. 2;
도 10은 도 2 픽쳐동기화장치의 홀드신호발생부를 나타내는 상세도,10 is a detailed view showing a hold signal generator of the picture synchronization device of FIG. 2;
도 11은 도 10 홀드신호발생부의 동작을 설명하기 위한 타이밍도,FIG. 11 is a timing diagram for describing an operation of the hold signal generator of FIG. 10; FIG.
도 12는 도 2 픽쳐동기화장치의 스킵신호발생부를 나타내는 상세도,12 is a detailed view illustrating a skip signal generator of the picture synchronization device of FIG. 2;
도 13은 도 12 스킵신호발생부의 동작을 설명하기 위한 타이밍도.FIG. 13 is a timing diagram for describing an operation of a skip signal generator of FIG. 12. FIG.
도면의 주요부분에 대한 부호의 설명Explanation of symbols for main parts of the drawings
20 : 비트버퍼 25 : 픽쳐동기화장치20: bit buffer 25: picture synchronization device
30 : 픽쳐시작부호검출부 40 : 버퍼지연시간간격 및 버퍼입출력비교부30: Picture start code detection unit 40: Buffer delay time interval and buffer input / output comparison unit
50 : 카운터인에이블신호발생부 70 : 버퍼출력픽쳐지연신호발생부50: counter enable signal generator 70: buffer output picture delay signal generator
80 : 시스템클럭카운트값검출부 90 : 오프셋계산부80: system clock count value detection unit 90: offset calculation unit
100 : 홀드신호발생부 120 : 스킵신호발생부100: hold signal generator 120: skip signal generator
이와 같은 목적을 달성하기 위한 본 발명에 따른 MPEG 비디오디코더의 픽쳐 동기화장치는 일정한 전송율의 비트스트림 영상데이타를 입력받아 디코딩하여 복원된 영상데이타로 출력하는 MPEG 비디오디코더에 있어서, 비트스트림 영상데이타를 입력받아 출력하는 비트버퍼와, 상기 비트버퍼에 병렬로 연결되어 상기 비트버퍼의 입력 및 출력 비트스트림 영상데이타를 입력받고, 디코딩의 기준이 되는 동기정보를 일정클럭으로 카운트한 시스템클럭카운트값과 소정 클럭을 입력받아 임의의 픽쳐단위 비트스트림 영상데이타가 상기 비트버퍼로 입력되기 시작할 때 그 픽쳐의 버퍼지연시간간격을 카운팅하면서 카운팅이 끝나기 전에 그 픽쳐가 상기 비트버퍼에서 출력될 때 카운팅이 끝날 때까지 디코딩중지신호를 발생하며, 카운팅이 끝난 후 미리 설정한 문턱값 이상 지연되어 그 픽쳐가 상기 비트버퍼에서 출력될 때 디코딩스킵신호를 발생하여 픽쳐단위로 동기화시켜 디코딩되도록 하는 픽쳐동기화수단, 및 상기 비트버퍼로부터 비트스트림 영상데이타를 읽어들여 디코딩하고, 상기 픽쳐동기화수단에서 발생하는 디코딩중지신호와 디코딩스킵신호에 따라 디코딩을 중지하거나 그 픽쳐의 비트스트림 영상데이타를 디코딩하지 않고 버리는 디코딩수단을 포함한다.The picture synchronization apparatus of the MPEG video decoder according to the present invention for achieving the above object, in the MPEG video decoder to receive the decoded bitstream video data of a constant bit rate and output the decoded video data, the bitstream video data input A system clock count value and a predetermined clock that receive and output a bit buffer, and are connected in parallel to the bit buffer and receive the input and output bitstream video data of the bit buffer, and count the synchronization information as a reference for a predetermined clock. Decode until the end of counting when the picture is output from the bit buffer before counting, while counting the buffer delay time interval of the picture when any picture unit bitstream video data starts to be input to the bit buffer. It generates a stop signal and preset after counting. Picture synchronization means for generating a decoding skip signal when the picture is outputted from the bit buffer and decoded by synchronizing in units of pictures when the picture is delayed by a threshold value; and reading and decoding bitstream image data from the bit buffer, and decoding the picture. And decoding means for stopping decoding or discarding the bitstream image data of the picture according to the decoding stop signal and the decoding skip signal generated by the synchronization means.
이하, 첨부한 도면들을 참조하여 본 발명의 바람직한 실시예를 상세히 기술하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 2는 본 발명의 픽쳐동기화장치가 적용된 MPEG 비디오디코더를 개략적으로 나타내는 블록도이다. 도시된 바와 같이, 본 발명의 MPEG 비디오디코더는 입력되는 비트스트림 영상데이타를 일정비트단위로 버퍼링하는 비트버퍼(20)를 구비하고 있다. 또한, 비트버퍼(20)에 병렬로 연결되어 비트버퍼(20)의 입출력 비트스트림데이타를 입력받고, 외부로부터 시스템클럭카운트값(stc_count_value) 및 클럭(sclk,clk90㎑)을 입력받아 뒷단의 가변장복호기(VLD)(도 1 참조)의 디코딩을 중지시키기 위한 홀드신호(hold_vld)와 한 픽쳐를 디코딩하지 않고 버리라는 스킵신호(skip_vld)를 출력하여 픽쳐단위로 동기를 맞추는 픽쳐동기화장치(25)를 구비하도록 구성된다. 여기에서 픽쳐동기화장치(25)의 내부구성은 도 3 내지 도 12에 각각 별도로 도시하였으며, 이에 대해서는 후술한다.2 is a block diagram schematically illustrating an MPEG video decoder to which the picture synchronization device of the present invention is applied. As shown, the MPEG video decoder of the present invention includes a bit buffer 20 for buffering input bitstream video data in a predetermined bit unit. In addition, it is connected in parallel to the bit buffer 20 receives the input and output bit stream data of the bit buffer 20, and receives the system clock count value (stc_count_value) and the clock (sclk, clk90㎑) from the outside of the variable length of the rear stage A picture synchronization device 25 for synchronizing on a picture-by-picture basis by outputting a hold signal hold_vld for stopping decoding of the decoder VLD (see FIG. 1) and a skip signal skip_vld for discarding one picture without decoding. It is configured to have. The internal structure of the picture synchronization device 25 is shown separately in FIGS. 3 to 12, which will be described later.
도 2에서, 부호화된 비트스트림 영상데이타는 일정한 전송율로 비트버퍼(20)에 입력되고, 뒷단의 가변장복호화기(VLD)의 요구에 따라 가변적으로 비트버퍼(20)에서 출력된다. 이때, 가변장복호화기(VLD)는 본 발명의 픽쳐동기화장치(25)에서 발생하는 홀드신호(hold_vld) 내지 스킵신호(skip_vld)에 따라 디코딩을 중지하거나 그 픽쳐를 디코딩하지 않고 스킵한다. 픽쳐동기화장치(25)는 비트버퍼(20)의 입출력 비트스트림데이타와 시스템클럭카운트값(stc_count_value)을 클럭(sclk,clk90㎑)과 함께 입력받는다. 여기서, 시스템클럭카운트값(stc_count_value)은 MPEG 비디오디코더에서 영상데이타의 복호재생시각의 기준이 되는 동기정보(STC; System Time Clock) 즉, 미도시된 PLL회로에 의해 동기화된 27㎒ 클럭에 대해 이를 '1/300'로 분주한 90㎑ 클럭으로 카운트한 값이다. 이 시스템클럭카운트값(stc_count_value)은 33비트로 나타내며, 외부로부터 입력받는다. 그리고, 픽쳐동기화장치(25)는 입력되는 임의의 시스템클럭(sclk)에 따라 각 구성의 동작을 동기시키며, 입력되는 90㎑의 클럭(clk)에 따라 도 4에 나타낸 카운터(44)가 동작한다. 픽쳐동기화장치(25)는 비트버퍼(20)의 입출력 비트스트림 데이타를 입력받아 픽쳐시작부호(picture_start_code)를 검출하며, 이는 도 3를 통해 좀더 구체적으로 설명한다.In FIG. 2, the encoded bitstream image data is input to the bit buffer 20 at a constant data rate, and is variably output from the bit buffer 20 according to a request of the variable length decoder VLD. In this case, the variable length decoder VLD stops decoding or skips the picture without decoding the picture according to the hold signal hold_vld to skip signal skip_vld generated by the picture synchronization device 25 of the present invention. The picture synchronization device 25 receives the input / output bitstream data and the system clock count value stc_count_value of the bit buffer 20 together with the clocks sclk and clk90 ms. Here, the system clock count value (stc_count_value) corresponds to a synchronization time (STC; System Time Clock) that is a reference of the decoding playback time of video data in an MPEG video decoder, that is, a 27 MHz clock synchronized by a PLL circuit (not shown). This value is counted as 90Hz divided by '1/300'. This system clock count value (stc_count_value) is represented by 33 bits and is input from the outside. Then, the picture synchronization device 25 synchronizes the operation of each component in accordance with an arbitrary system clock sclk inputted, and the counter 44 shown in FIG. 4 operates in accordance with an input clock of 90 kHz. . The picture synchronization device 25 receives input / output bitstream data of the bit buffer 20 and detects a picture start code (picture_start_code), which will be described in more detail with reference to FIG. 3.
도 3은 본 발명의 픽쳐동기화장치(도 2 참조)(25)에서 픽쳐시작부호검출부(30)를 나타내는 상세도이다. 도시된 바와 같이, 픽쳐시작부호검출부(30)는 비트버퍼(도 2 참조)(20)의 입력 및 출력 비트스트림 데이타를 일정비트단위로 입력받아 차례로 지연하여 출력하는 직렬연결된 세개의 D형 플립플롭(DFF1∼DFF3)을 구비하고 있다. 또한, 일정비트의 입력데이타와 각 플립플롭(DFF1∼DFF3)의 출력데이타를 입력받아 MPEG규정에 따라 지정된 픽쳐시작부호와 일치하는 지를 비교하는 비교기들(31∼34)과, 비교기들(31∼34)의 출력을 논리곱연산하여 픽쳐시작부호 검출여부를 나타내는 이진신호를 출력하는 논리곱소자(AND)(35)를 구비하고 있다. 논리곱소자(35)에는 픽쳐시작부호검출신호를 차례로 지연하여 출력하는 네개의 D형 플립플롭(DFF4∼DFF7)이 직렬연결되도록 구성된다.Fig. 3 is a detailed view showing the picture start code detection section 30 in the picture synchronization device 25 (see Fig. 2) of the present invention. As shown, the picture start code detection unit 30 receives three input and output bitstream data of the bit buffer (see FIG. 2) in a predetermined bit unit and sequentially outputs three D-type flip-flops that are sequentially delayed and output. (DFF1 to DFF3) are provided. In addition, comparators 31 to 34 for comparing a predetermined bit of input data and output data of each of the flip-flops DFF1 to DFF3 and matching the picture start code designated according to the MPEG standard, and the comparators 31 to 34. And an AND (35) for outputting a binary signal indicating whether or not the picture start code is detected by performing an AND operation on the output of the signal 34). The logical multiplication device 35 is configured such that four D-type flip-flops DFF4 to DFF7 for sequentially delaying and outputting the picture start code detection signal are connected in series.
이와 같이 구성된 픽쳐동기화장치(25)의 픽쳐시작부호검출부(30)는 임의의 클럭(도 6의 sclk 파형 참조)에 따라 비트버퍼(도 2 참조)(20)의 입/출력 비트스트림데이타를 8비트단위로 입력받아(도 6의 bitstream 참조) 세개의 플립플롭(DFF1∼DFF3)을 통해서 차례로 지연하여 출력한다. 아울러, 입력되는 8비트데이타중 5비트와 세개의 플립플롭(DFF1∼DFF3)에서 각각 출력되는 8비트데이타를 합한 29비트단위의 비트스트림데이타를 출력한다. 입력측과 세개의 플립플롭(DFF1∼DFF3) 출력단에 각각 연결된 비교기들(31∼34)은 각 입력되는 8비트데이타들을 MPEG 규격에 의해 지정된 '0000010016'으로 나타내는 픽쳐시작부호중 10016과 비교하여 같으면 이진신호 1을 출력하고, 같지 않으면 이진신호 0을 출력한다. 즉, 도 6에 나타낸 타이밍도와 같이 8비트단위의 비트스트림 0→0→1→0이 입력되면 논리곱소자(AND)(35)는 네개의 비교기(31∼34)에서 모두 이진신호 1의 비교결과신호를 입력받아 논리곱연산하여 픽쳐시작부호가 검출되었음을 나타낸다. 그래서, 논리곱소자(35)는 픽쳐시작부호가 검출된 경우에 픽쳐시작부호검출신호(도 6 pic_start 파형 참조)를 1로 셋팅하여 출력하고, 아니면 픽쳐시작부호검출신호를 0으로 리셋하여 출력한다. 픽쳐시작부호검출신호는 네개의 플립플롭(DFF4∼DFF7)을 통해서 차례로 지연되어 출력된다(도 6 pic_start3d 파형 참조).The picture start code detector 30 of the picture synchronization device 25 configured as described above generates 8 input / output bitstream data of the bit buffer (see FIG. 2) according to an arbitrary clock (see the sclk waveform of FIG. 6). It is input in bit units (see bitstream in Fig. 6) and sequentially outputs through three flip-flops DFF1 to DFF3. In addition, 29-bit bitstream data including 5 bits of the input 8-bit data and 8-bit data output from the three flip-flops DFF1 to DFF3 are output. Comparators 31 to 34 respectively connected to the input side and the output terminals of the three flip-flops DFF1 to DFF3 compare each input 8-bit data with 100 16 of the picture start code indicated by '00000100 16 ' specified by the MPEG standard. If it is equal, it outputs binary signal 1. If it is not equal, it outputs binary signal 0. That is, when the bit streams 0 → 0 → 1 → 0 in 8-bit units are input as shown in the timing diagram shown in FIG. 6, the AND product 35 compares the binary signals 1 in all four comparators 31 to 34. FIG. The result signal is input and logical-operated to indicate that the picture start code is detected. Thus, when the picture start code is detected, the logical multiplication element 35 sets and outputs the picture start code detection signal (see the pic_start waveform in FIG. 6) to 1, or resets the picture start code detection signal to 0 and outputs it. . The picture start code detection signal is delayed and outputted in turn through the four flip-flops DFF4 to DFF7 (see the Fig. 6 pic_start3d waveform).
도 4는 본 발명의 픽쳐동기화장치(도 2 참조)(25)에서 버퍼지연시간간격 및 버퍼입출력비교부(40)를 나타내는 상세도이다. 도시된 바와 같이, 버퍼지연시간간격 및 버퍼입출력비교부(40)는 비트버퍼(도 2 참조)(20)로 입력되는 비트스트림 영상데이타를 입력받아 픽쳐시작부호를 검출하기 위한 제 1픽쳐시작부호검출기(41)와, 비트버퍼(도 2 참조)(20)에서 출력되는 비트스트림 영상데이타를 입력받아 픽쳐시작부호를 검출하기 위한 제 2픽쳐시작부호검출기(42)를 구비하고 있다. 여기서, 제 1픽쳐시작부호검출기(41)와 제 2픽쳐시작부호검출기(42)의 상세 구성은 도 3에 나타낸 바와 같다. 또한, 비트버퍼(20)에 입력되는 픽쳐에 대한 버퍼지연시간간격(vbv_delay)과 그 픽쳐의 버퍼입출력시간간격을 비교하기 위한 비교부(43)를 구비하고 있다. 비교부(43)는 특정주파수의 클럭을 카운트하여 버퍼지연시간간격을 체크하는 카운터(431)와, 제 1픽쳐시작부호검출기(41)와 제 2픽쳐시작부호검출기(42)에서 픽쳐시작부호가 검출될 때 연속해서 나타나는 픽쳐부가정보들을 서로 비교하여 비트버퍼(20)의 입력 비트스트림 데이타와 출력 비트스트림 데이타가 동일한 픽쳐에서의 시간간격인지를 판단하기 위한 래치(L1,L2)와 비교기(433,434)로 이루어진다. 비교기(433)에는 카운터(431)의 카운트값과 버퍼지연시간간격(vbv_delay)을 비교한 결과에 따라 카운트종료신호(vbv_count_end)발생하는 카운트종료신호발생기(44)가 연결된다. 카운트종료신호발생기(44)는 비교결과신호를 지연하는 D형 플립플롭(DFF8)과, 비교결과신호와 지연된 비교결과신호를 상태반전하여 논리곱연산하는 논리곱소자(AND)(441), 및 논리곱소자(441)의 출력을 지연하여 카운트종료신호(vbv_count_end)로 출력하는 D형 플립플롭(DFF9)으로 이루어진다. 비교기(434)에는 버퍼입출력픽쳐가 동일한 경우에 대해 버퍼출력시작신호(vbv_pic_start)를 발생하는 버퍼출력시작신호발생기(45)가 연결된다. 버퍼출력시작신호발생기(45)는 비교결과신호를 지연하는 D형 플립플롭(DFF10)과, 비교결과신호와 지연된 비교결과신호를 상태반전하여 논리곱연산하는 논리곱소자(AND)(451), 및 논리곱소자(451)의 출력을 지연하여 버퍼출력시작신호(vbv_pic_start)로 발생하는 D형 플립플롭(DFF11)으로 이루어진다. 버퍼출력시작신호발생기(45)에는 버퍼출력시작신호(vbv_pic_start)를 3클럭만큼 지연하기 위한 세개의 D형 플립플롭(DFF12∼DFF14)이 차례로 연결된다.FIG. 4 is a detailed view showing the buffer delay time interval and the buffer input / output comparison unit 40 in the picture synchronization device 25 (see FIG. 2) of the present invention. As shown, the buffer delay time interval and the buffer input / output comparison unit 40 receives the bitstream image data input to the bit buffer 20 (see FIG. 2) and receives a first picture start code for detecting a picture start code. A detector 41 and a second picture start code detector 42 for receiving the bitstream video data output from the bit buffer 20 (see Fig. 2) and detecting the picture start code are provided. Here, the detailed configurations of the first picture start code detector 41 and the second picture start code detector 42 are as shown in FIG. In addition, a comparison unit 43 for comparing the buffer delay time interval (vbv_delay) with respect to the picture input to the bit buffer 20 and the buffer input / output time interval of the picture is provided. The comparator 43 counts a clock of a specific frequency to check a buffer delay time interval, and a picture start code is added by the first picture start code detector 41 and the second picture start code detector 42. Latches (L1, L2) and comparators (433, 434) for determining whether the input bitstream data and the output bitstream data of the bit buffer 20 are time intervals in the same picture by comparing the picture additional information which appears continuously when detected. ) The comparator 433 is connected to a count end signal generator 44 which generates a count end signal vbv_count_end based on a result of comparing the count value of the counter 431 with the buffer delay time interval vbv_delay. The count end signal generator 44 includes a D flip-flop (DFF8) for delaying the comparison result signal, an AND product 441 for performing logical AND operation on the state inversion of the comparison result signal and the delayed comparison result signal, and The D-type flip-flop DFF9 outputs the count end signal vbv_count_end by delaying the output of the AND device 441. The comparator 434 is connected to a buffer output start signal generator 45 for generating a buffer output start signal (vbv_pic_start) for the case where the buffer I / O pictures are the same. The buffer output start signal generator 45 includes a D flip-flop (DFF10) for delaying the comparison result signal, an AND (451) for performing logical AND operation on the state inversion of the comparison result signal and the delayed comparison result signal, And a D flip-flop DFF11 generated by the buffer output start signal vbv_pic_start by delaying the output of the AND product 451. The buffer output start signal generator 45 is sequentially connected with three D-type flip-flops DFF12 to DFF14 for delaying the buffer output start signal vbv_pic_start by 3 clocks.
도 4에서, 제 1픽쳐시작부호검출기(41)를 통해서 출력되는 29비트단위의 비트스트림은 제 1래치(L1)로 입력되고, 픽쳐시작부호검출신호(도 6 pic_start3d1 파형)는 논리곱소자(432)로 입력된다. 논리곱소자(432)는 카운터인에이블신호(도 6 vbv_count_enable 파형)를 입력받아 상태반전하고, 이를 입력되는 픽쳐시작부호검출신호(pic_start3d1)와 논리곱연산하여 제 1래치(L1)의 인에이블단자(ena)로 출력한다. 그래서, 논리곱소자(432)는 픽쳐시작부호가 검출되고, 카운터인에이블신호(vbv_count_enable)가 0일 때 제 1래치(L1)가 인에이블되도록 한다. 여기서, 픽쳐시작부호가 검출될 때 제 1픽쳐시작부호검출기(41)에서 출력되는 29비트단위의 비트스트림은 화면순서정보(temporal_reference) 10비트와, 픽쳐부호화모드(픽쳐타입)을 나타내는 값(picture_coding_type) 3비트, 및 버퍼지연시간(vbv_delay) 16비트로 이루어진다. 한편, 제 2픽쳐시작부호검출기(42)에서 비트버퍼(20)의 출력으로부터 픽쳐시작부호를 검출한 경우에도 화면순서정보(temporal_reference) 10비트와, 픽쳐부호화모드(픽쳐타입)을 나타내는 값(picture_coding_type) 3비트, 및 버퍼지연시간(vbv_delay) 16비트로 이루어진 29비트단위의 비트스트림이 제 2래치(L2)로 입력된다. 이때, 제 2래치(L2)는 픽쳐시작부호검출신호(pic_start3d2)에 의해 인에이블상태가 되어 입력되는 29비트단위의 비트스트림을 래치한다. 제 2비교기(434)는 제 1래치(L1)와 제 2래치(L2)의 출력을 비교하여 비트버퍼(20)에 입력되는 비트스트림과 출력되는 비트스트림이 동일한 픽쳐인지를 판단한다. 여기서, 화면순서정보(temporal_reference) 또는 버퍼지연시간간격(vbv_delay) 하나만을 비교하지 않는 것은 연속하는 2개의 픽쳐들의 화면순서정보(temporal_reference) 또는 버퍼지연시간간격(vbv_delay)이 같을 수도 있기 때문이다. 예를 들어, 한프레임이 2개의 필드픽쳐로 부호화된 경우에는 그 두 픽쳐의 화면순서정보(temporal_reference)들은 같다. 또한, 그 경우에 앞의 픽쳐가 B 픽쳐일 때는 뒤의 픽쳐도 B 픽쳐이다. 그리고, 연속하는 임의의 2개 픽쳐들의 버퍼지연시간간격(vbv_delay)은 언제든지 같을 수 있는 가능성이 있다. 그래서, 화면순서정보(temporal_reference), 픽쳐부호화모드(picture_coding_type), 버퍼지연시간간격(vbv_delay) 모두를 비교해야 해당 픽쳐가 비트버퍼(20)에서 출력되기 시작한다는 것을 구분할 수 있다. 제 2비교기(434)에서 두 래치된 29비트 비트스트림이 같으면 비트버퍼(20)의 입출력 비트스트림이 동일한 픽쳐로 판단하여 이진신호 1의 비교결과신호를 출력하고, 같지 않으면 이진신호 0의 비교결과신호를 출력한다. 버퍼출력시작신호발생기(45)는 제 2비교기(434)의 출력이 1이 되는 상승에지에서 버퍼출력시작신호(vbv_pic_start)를 1이 되게 한다. 즉, 버퍼출력시작신호발생기(45)에서 플립플롭(DFF10)은 제 2비교기(434)의 출력을 입력받아 1클럭 지연하여 논리곱소자(451)로 출력하고, 논리곱소자(451)는 플립플롭(DFF10)의 출력을 상태반전하여 제 2비교기(434)의 출력과 논리곱연산한다. 플립플롭(DFF11)은 논리곱연산결과를 입력받아 1클럭 지연하여 버퍼출력시작신호(vbv_pic_start)로 출력한다. 또한, 버퍼출력시작신호(vbv_pic_start)는 세개의 직렬연결된 플립플롭(DFF12∼DFF14)을 차례로 통과하여 3클럭 지연된다. 한편, 카운터(431)는 90㎑ 클럭을 1씩 카운트하고, 그 카운트값을 16비트단위로 출력한다. 제 1비교기(433)는 카운트값과 제 1래치(L1)의 29비트 출력중 16비트의 버퍼지연시간간격(vbv_delay)을 비교하여 카운트값이 버퍼지연시간간격과 같으면 이진신호 1의 하이레벨신호를 출력한다. 카운트종료신호발생기(44)는 제 1비교기(433)의 출력이 1이 되는 상승에지에서 카운트종료신호(vbv_count_end)가 1이 되게 한다. 여기에서 제 1픽쳐시작부호검출기(41)의 픽쳐시작부호검출신호(pic_start3d1)와 카운트종료신호발생기(44)의 카운트종료신호(vbv_count_end)는 도 5의 카운터인에이블신호발생부(50)로 입력된다.In FIG. 4, a 29-bit bitstream output through the first picture start code detector 41 is input to the first latch L1, and the picture start code detection signal (Fig. 6 pic_start3d1 waveform) is a logical multiplication device ( 432). The AND device 432 receives the counter enable signal (Fig. 6 vbv_count_enable waveform) and inverts the state. The AND device 432 performs an AND operation on the input picture start code detection signal pic_start3d1 to input the enable signal of the first latch L1. output as (ena) Thus, the AND product 432 detects the picture start code and enables the first latch L1 when the counter enable signal vbv_count_enable is zero. Here, when the picture start code is detected, the 29-bit bitstream output from the first picture start code detector 41 has 10 bits of temporal_reference information and a value indicating the picture coding mode (picture type) (picture_coding_type). ) 3 bits and 16 bits of buffer delay time (vbv_delay). On the other hand, even when the picture start code is detected from the output of the bit buffer 20 by the second picture start code detector 42, a value indicating 10 bits of the screen order information (temporal_reference) and the picture coding mode (picture type) (picture_coding_type) ) A bitstream of 29-bit units consisting of 3 bits and 16 bits of buffer delay time (vbv_delay) is input to the second latch L2. At this time, the second latch L2 is enabled by the picture start code detection signal pic_start3d2 and latches the 29-bit bitstream. The second comparator 434 compares the outputs of the first latch L1 and the second latch L2 to determine whether the bitstream input to the bit buffer 20 and the output bitstream are the same picture. The reason for not comparing only the screen order information (temporal_reference) or the buffer delay time interval (vbv_delay) is because the screen order information (temporal_reference) or the buffer delay time interval (vbv_delay) of two consecutive pictures may be the same. For example, when one frame is encoded into two field pictures, the screen order information (temporal_reference) of the two pictures is the same. In this case, when the previous picture is a B picture, the next picture is also a B picture. And, there is a possibility that the buffer delay time interval (vbv_delay) of two consecutive random pictures may be the same at any time. Therefore, it is necessary to compare all of the screen order information (temporal_reference), the picture encoding mode (picture_coding_type), and the buffer delay time interval (vbv_delay) to distinguish that the picture starts to be output from the bit buffer 20. If the two latched 29-bit bitstreams in the second comparator 434 are the same, the input / output bitstreams of the bit buffer 20 are determined to be the same picture, and a comparison result signal of the binary signal 1 is output. Output the signal. The buffer output start signal generator 45 sets the buffer output start signal vbv_pic_start to 1 at the rising edge at which the output of the second comparator 434 becomes 1. That is, the flip-flop DFF10 receives the output of the second comparator 434 from the buffer output start signal generator 45 and outputs the result to the logical product 451 by one clock delay, and the logical product 451 is flipped. The output of the flop DFF10 is inverted in state to perform an AND operation on the output of the second comparator 434. The flip-flop DFF11 receives the logical product operation result and delays one clock to output the buffer output start signal (vbv_pic_start). The buffer output start signal vbv_pic_start is sequentially delayed by three clocks through three serially connected flip-flops DFF12 to DFF14. On the other hand, the counter 431 counts the 90 kHz clock by 1 and outputs the count value in 16 bit units. The first comparator 433 compares the count value with the buffer delay time interval (vbv_delay) of 16 bits of the 29-bit output of the first latch L1, and if the count value is equal to the buffer delay time interval, the high level signal of the binary signal 1 Outputs The count end signal generator 44 causes the count end signal vbv_count_end to be 1 at the rising edge at which the output of the first comparator 433 is 1. Here, the picture start code detection signal pic_start3d1 of the first picture start code detector 41 and the count end signal (vbv_count_end) of the count end signal generator 44 are inputted to the counter enable signal generator 50 of FIG. 5. do.
도 5는 본 발명의 픽쳐동기화장치(25)에서 카운터인에이블신호발생부(50)를 나타내는 상세도이다. 도시된 바와 같이, 카운터인에이블신호발생부(50)는 궤환입력되는 카운터인에이블신호(vbv_count_enable)와 제 1픽쳐시작부호검출기(41)의 픽쳐시작부호검출신호(pic_start3d1) 및 카운트종료신호(vbv_count_end)를 논리곱연산하는 논리곱소자(AND)(51)와, 논리곱소자(51)의 출력을 s단자로 입력받고 카운트종료신호(vbv_count_end)를 r단자로 입력받아 카운터인에이블신호(vbv_count_enable)를 출력하는 SR형 플립플롭(SRFF1)으로 구성된다.5 is a detailed diagram showing the counter enable signal generation unit 50 in the picture synchronization device 25 of the present invention. As shown in the drawing, the counter enable signal generation unit 50 feeds back the counter enable signal vbv_count_enable, the picture start code detection signal pic_start3d1 of the first picture start code detector 41, and the count end signal vbv_count_end. ) And a counter enable signal (vbv_count_enable) by inputting the output of the AND product 51 to the s terminal and the count end signal (vbv_count_end) to the r terminal. SR flip-flop (SRFF1) for outputting.
도 5에서, 카운터인에이블신호발생부(50)의 논리곱소자(51)는 궤환 입력되는 1클럭 이전의 카운터인에이블신호(vbv_count_enable)와 카운트종료신호발생기(44)에서 발생되는 카운트종료신호(도 6 vbv_count_end 파형)를 각각 상태반전하고, 이를 제 1픽쳐시작부호검출기(41)에서 지연 출력되는 픽쳐시작부호검출신호(도 6 pic_start3d1 파형)를 입력받아 논리곱연산하여 플립플롭(SRFF1)의 s단자로 출력한다. 카운트종료신호(vbv_count_end)는 플립플롭(SRFF1)의 r단자로도 입력된다. 여기서, 논리곱소자(51)는 카운터인에이블신호(vbv_count_enable)가 0이면 다음 픽쳐에 대한 버퍼카운트를 시작해도 된다는 의미이고, 이때 픽쳐시작부호검출신호(pic_start3d1)가 1이고 카운트종료신호(vbv_count_end)가 0이면 플립플롭(SRFF1)의 s단자에 1를 인가하여 플립플롭(SRFF1)에서 도 4에 나타낸 카운터(431)와 제 1래치(L1)의 인에이블상태를 제어하는 논리곱소자(432)에 유효한 카운터인에이블신호(vbv_count_enable)가 인가하도록 한다. 그리고, 플립플롭(SRFF1)은 r단자에 유효한 카운트종료신호(vbv_count_end)가 인가되면 카운터인에이블신호를 디스에이블시킨다. 카운터인에이블신호(vbv_count_enable)는 도 4의 카운터(431)와 논리곱소자(432)로 입력됨과 아울러 도 7의 버퍼출력픽쳐지연신호발생부(70)로도 입력된다.In FIG. 5, the logical multiplication element 51 of the counter enable signal generator 50 includes the counter enable signal vbv_count_enable before the clock input and the count end signal generated by the count end signal generator 44. The vbv_count_end waveform of FIG. 6 is inverted, and the picture start signal detection signal (Fig. 6 pic_start3d1 waveform) delayed outputted from the first picture start code detector 41 is logically multiplied to receive the s of the flip-flop SRFF1. Output to the terminal. The count end signal vbv_count_end is also input to the r terminal of the flip-flop SRFF1. Here, if the counter enable signal vbv_count_enable is 0, it means that the buffer count for the next picture may be started. In this case, the picture start code detection signal pic_start3d1 is 1 and the count end signal (vbv_count_end) is set. Is 0, 1 is applied to the s terminal of the flip-flop SRFF1 to control the enable state of the counter 431 and the first latch L1 shown in FIG. 4 in the flip-flop SRFF1. A valid counter enable signal (vbv_count_enable) is applied to. The flip-flop SRFF1 disables the counter enable signal when a valid count end signal (vbv_count_end) is applied to the r terminal. The counter enable signal vbv_count_enable is input to the counter 431 and the logical product 432 of FIG. 4, and also to the buffer output picture delay signal generator 70 of FIG. 7.
다시, 도 4에서 도 5의 카운터인에이블신호발생부(50)에서 발생되는 카운터인에이블신호(vbv_count_enable)를 인에이블단자(ena)로 입력받고, 이를 인버터(INV)를 통해 상태반전하여 클리어단자(clr)로 입력받는 카운터(431)는 유효한 카운터인에이블신호(vbv_count_enable)가 입력되는 동안 90㎑로 발생되는 클럭을 카운트하여 픽쳐단위로 버퍼지연시간간격(vbv_delay)를 카운트한다. 그리고, 카운터인에이블신호(vbv_count_enable)를 입력받는 논리곱소자(432)는 이를 상태반전하여 제 1픽쳐시작부호검출기(41)의 픽쳐시작부호검출신호(pic_start3d1)와 논리곱연산하여 제 1래치(L1)의 인에이블단자(ena)로 인가하므로써 카운터(431)가 카운트하는 동안 제 1래치(L1)를 디스에이블시킨다.4, the counter enable signal vbv_count_enable generated by the counter enable signal generation unit 50 of FIG. 5 is input to the enable terminal ena, and the state is reversed through the inverter INV to clear the terminal. The counter 431, which is inputted at (clr), counts a clock generated at 90 Hz while a valid counter enable signal (vbv_count_enable) is input and counts a buffer delay time interval (vbv_delay) in picture units. In addition, the logical multiplication device 432 that receives the counter enable signal vbv_count_enable inverts the state and performs a logical multiplication with the picture start code detection signal pic_start3d1 of the first picture start code detector 41 to perform the first latch ( The first latch L1 is disabled while the counter 431 counts by applying to the enable terminal ena of L1.
도 7은 본 발명의 픽쳐동기화장치(25)에서 버퍼출력픽쳐지연신호발생부(70)를 나타내는 상세도이다. 도시된 바와 같이, 버퍼출력픽쳐지연신호발생부(70)는 도 4의 버퍼출력시작신호발생기(45)에서 발생되는 버퍼출력시작신호(vbv_pic_start)와 도 5의 카운터인에이블신호발생부(50)에서 발생되는 카운터인에이블신호(vbv_count_enable)를 상태반전하여 논리곱연산하는 논리곱소자(71)와, 상태반전된 카운터인에이블신호(vbv_count_enable)와 3클럭 지연된 버퍼출력시작신호(vbv_pic_start3d)를 논리곱연산하는 논리곱소자(72)를 구비하고, 두 논리곱소자(71,72)에 각각 s단자와 r단자가 연결되어 버퍼출력픽쳐지연신호(delayed_vbv)를 출력하는 플립플롭(SRFF2)으로 구성된다.Fig. 7 is a detailed diagram showing the buffer output picture delay signal generation unit 70 in the picture synchronization device 25 of the present invention. As shown, the buffer output picture delay signal generator 70 includes the buffer output start signal vbv_pic_start generated by the buffer output start signal generator 45 of FIG. 4 and the counter enable signal generator 50 of FIG. 5. Logical multiplying the logic enable element 71 which inverts the state of the counter enable signal (vbv_count_enable) generated by the logic operation, and the state of the counter enable signal (vbv_count_enable) and the buffer output start signal (vbv_pic_start3d) delayed by three clocks. Comprising a logical multiplication device 72, and the two logical multiplication devices (71, 72) connected to the s terminal and r terminal is composed of a flip-flop (SRFF2) for outputting the buffer output picture delayed signal (delayed_vbv) .
도 7에서, 버퍼출력픽쳐지연신호발생부(70)의 논리곱소자(71)는 도 4의 버퍼출력시작신호발생기(45)에서 발생되는 버퍼출력시작신호(vbv_pic_start)를 입력받고, 도 5의 카운터인에이블신호발생부(50)에서 발생되는 카운터인에이블신호(vbv_count_enable)를 입력받아 상태반전한다. 논리곱소자(71)는 버퍼출력시작신호(vbv_pic_start)와 상태반전된 카운터인에이블신호(vbv_count_enable)를 논리곱연산하여 플립플롭(SRFF2)의 s단자로 인가한다. 논리곱소자(72)는 상태반전된 카운터인에이블신호(vbv_count_enable)와 3클럭 지연된 버퍼출력시작신호(vbv_pic_start3d)를 논리곱연산하여 플립플롭(SRFF2)의 r단자로 인가한다. 그래서, 플립플롭(SRFF2)은 카운터인에이블신호(vbv_count_enable)가 1인 동안에는 버퍼출력픽쳐지연신호(delayed_vbv)를 0으로 유지하여 출력하고, 카운터인에이블신호(vbv_count_enable)가 0이고 버퍼출력시작신호(vbv_pic_start)가 1이면 1로 셋팅하여 출력한다. 반면에, 플립플롭(SRFF2)은 3클럭뒤에 즉, 3클럭 지연된 버퍼출력시작신호(vbv_pic_start3d)가 1일 될 때 다시 버퍼출력픽쳐지연신호(delayed_vbv)를 0으로 리셋시킨다. 여기서, 버퍼출력픽쳐지연신호(delayed_vbv)는 현재 비트버퍼(20)에서 출력되는 비트스트림데이타중 검출된 픽쳐가 지연되었는 지를 나타내는 신호로서, 이는 도 12의 스킵신호발생부(120)로 인가된다.In FIG. 7, the logical product element 71 of the buffer output picture delay signal generator 70 receives the buffer output start signal (vbv_pic_start) generated by the buffer output start signal generator 45 of FIG. The counter enable signal generator 50 receives the counter enable signal vbv_count_enable, and the state is reversed. The AND device 71 performs an AND operation on the buffer output start signal vbv_pic_start and the state enable counter enable signal vbv_count_enable, and applies it to the s terminal of the flip-flop SRFF2. The AND device 72 performs an AND operation on the counter-inverted signal enable signal vbv_count_enable and the buffer output start signal vbv_pic_start3d delayed by three clocks, and applies it to the r terminal of the flip-flop SRFF2. Thus, the flip-flop SRFF2 maintains and outputs the buffer output picture delayed signal delayed_vbv as 0 while the counter enable signal vbv_count_enable is 1, and outputs the counter enable signal vbv_count_enable 0 and the buffer output start signal If vbv_pic_start) is 1, it is set to 1 and output. On the other hand, the flip-flop SRFF2 resets the buffer output picture delayed signal delayed_vbv to 0 after three clocks, that is, when the three clock delayed buffer output start signal vbv_pic_start3d becomes one. Here, the buffer output picture delayed signal delayed_vbv is a signal indicating whether the detected picture among the bit stream data currently output from the bit buffer 20 is delayed, and is applied to the skip signal generator 120 of FIG. 12.
도 8은 본 발명의 픽쳐동기화장치(25)에서 시스템클럭카운트값검출부(80)를 나타내는 상세도이다. 도시된 바와 같이, 시스템클럭카운트값검출부(80)는 카운트종료시점과 버퍼출력시작시점에서의 시스템클럭카운트값(stc_count_value)을 검출하기 위한 복수개의 래치(L3,L4)로 구성된다.8 is a detailed diagram showing the system clock count value detection unit 80 in the picture synchronization device 25 of the present invention. As shown, the system clock count value detection unit 80 is composed of a plurality of latches L3 and L4 for detecting the system clock count value stc_count_value at the count end time and the buffer output start time.
도 8에서, 제 3래치(L3)는 카운트종료신호발생기(44)에서 발생되는 카운트종료신호(vbv_count_end)를 인에이블단자(ena)로 입력받아 카운트종료신호(vbv_count_end)가 1이 되는 카운트종료시점에서 외부로부터 입력되는 33비트단위의 시스템클럭카운트값(stc_count_value)을 래치하여 출력한다. 제 4래치(L4)는 버퍼출력시작신호발생기(45)에서 발생되는 버퍼출력시작신호(vbv_pic_start)를 인에이블단자(ena)로 입력받아 버퍼출력시작신호(vbv_pic_start)가 1이 되는 비트버퍼(20)에서 해당 픽쳐가 출력될 때 외부로부터 입력되는 33비트단위의 시스템클럭카운트값(stc_count_value)을 래치하여 출력한다. 제 3래치(L3)와 제 4래치(L4)에서 각각 출력되는 시스템클럭카운트값(vbv_end_stc_value)(vbv_pic_stc_value)은 도 9의 오프셋계산부(90)로 출력된다.In FIG. 8, the third latch L3 receives the count end signal vbv_count_end generated by the count end signal generator 44 through the enable terminal ena and ends the count when the count end signal vbv_count_end becomes 1. Latches and outputs a 33-bit system clock count value (stc_count_value) input from the outside. The fourth latch L4 receives the buffer output start signal vbv_pic_start generated by the buffer output start signal generator 45 as an enable terminal ena and has a bit buffer 20 at which the buffer output start signal vbv_pic_start becomes 1. ) Outputs by latching the system clock count value (stc_count_value) in 33-bit units inputted from the outside when the corresponding picture is output. The system clock count value (vbv_end_stc_value) (vbv_pic_stc_value) respectively output from the third latch L3 and the fourth latch L4 is output to the offset calculator 90 of FIG. 9.
도 9는 본 발명의 픽쳐동기화장치(25)에서 오프셋계산부(90)를 나타내는 상세도이다. 도시된 바와 같이, 오프셋계산부(90)는 버퍼출력시작시점의 시스템클럭카운트값(vbv_pic_stc_value)에서 카운트종료시점의 시스템클럭카운트값(vbv_end_stc_value)을 감산하여 그 차이를 구하는 제 1가산기(91)와, 그 차이의 절대치를 취하는 절대값변환기(92)를 구비하고 있다. 절대값변환기(92)에는 미리 설정한 문턱값(threshold)에서 그 절대차(abs_diff)를 감산하여 오프셋(offset)을 구하는 제 2가산기(93)가 연결되도록 구성된다.9 is a detailed view showing the offset calculator 90 in the picture synchronization device 25 of the present invention. As shown, the offset calculator 90 subtracts the system clock count value (vbv_end_stc_value) at the end of the count from the system clock count value (vbv_pic_stc_value) at the buffer output start point and calculates the difference with the first adder 91. And an absolute value converter 92 which takes an absolute value of the difference. The absolute value converter 92 is configured to be coupled to a second adder 93 which obtains an offset by subtracting the absolute difference abs_diff from a preset threshold.
도 9에서, 제 1가산기(91)는 33비트단위의 버퍼출력시작시점의 시스템클럭카운트값(vbv_pic_stc_value)에서 33비트단위의 카운트종료시점의 시스템클럭카운트값(vbv_end_stc_value)을 감산하여 그 차를 구하고, 그 차를 부호(sign)비트를 포함한 34비트로 하여 절대값변환기(92)로 출력한다. 절대값변환기(92)는 34비트단위의 차이값을 입력받아 절대치를 취하여 33비트단위의 절대차값을 제 2가산기(93)로 출력한다. 제 2가산기(92)는 미리 설정한 33비트단위의 문턱값에서 입력되는 33비트단위의 절대차값(abs_diff)을 감산하여 부호(sign)비트를 포함하는 34비트의 오프셋(offset)을 출력한다. 여기서, 오프셋(offset)의 부호(sign)비트가 1이면 비트버퍼(20)에서 출력되는 픽쳐의 지연정도가 미리 설정한 문턱값보다 큼을 의미한다.In FIG. 9, the first adder 91 subtracts the system clock count value (vbv_end_stc_value) at the end of count from 33 bits from the system clock count value (vbv_pic_stc_value) at the start of buffer output in 33 bit units to obtain the difference. The difference is output to the absolute value converter 92 with 34 bits including a sign bit. The absolute value converter 92 receives a difference value in units of 34 bits, takes an absolute value, and outputs an absolute difference value in units of 33 bits to the second adder 93. The second adder 92 outputs a 34-bit offset including a sign bit by subtracting an absolute difference value abs_diff in 33-bit units input from a preset 33-bit unit threshold. Here, when the sign bit of the offset is 1, it means that the delay degree of the picture output from the bit buffer 20 is larger than the preset threshold.
도 10은 본 발명의 픽쳐동기화장치(25)에서 홀드신호발생부(100)를 나타내는 상세도이다. 도시된 바와 같이, 홀드신호발생부(100)는 버퍼출력시작신호발생기(도 4 참조)(45)에서 발생되는 버퍼출력시작신호(vbv_pic_start)와 카운터인에이블신호발생부(도 5 참조)(50)에서 발생되는 카운터인에이블신호(vbv_count_enable)를 입력받고, 카운트종료신호발생부(44)에서 발생되는 카운트종료신호(vbv_count_end)를 입력받아 상태반전하여 논리곱연산하는 논리곱소자(101)와, 논리곱소자(101)의 출력을 s단자로 입력받고 카운트종료신호발생기(44)에서 발생되는 카운트종료신호(vbv_count_end)를 r단자로 입력받아 디코딩을 홀딩시키기 위한 홀드신호(hold_vld)를 출력하는 플립플롭(SRFF3)으로 구성된다.10 is a detailed view of the hold signal generator 100 in the picture synchronization device 25 of the present invention. As shown, the hold signal generator 100 may include a buffer output start signal (vbv_pic_start) generated by the buffer output start signal generator (see FIG. 4) 45 and a counter enable signal generator (see FIG. 5) (50). A logical multiplication device 101 for receiving a counter enable signal (vbv_count_enable) generated from the input signal, receiving a count end signal (vbv_count_end) generated from the count end signal generator 44, and performing logical multiplication by inverting the state; A flip that receives the output of the logical multiplication device 101 as the s terminal, receives the count end signal (vbv_count_end) generated by the count end signal generator 44 as the r terminal, and outputs a hold signal (hold_vld) for holding decoding. It consists of a flop SRFF3.
위와 같이 구성된 홀드신호발생부(100)에 대한 동작을 도 11의 타이밍도를 통해 설명하면, 우선 논리곱소자(AND)(101)는 임의의 클럭(sclk)에 따라 버퍼출력시작신호(vbv_pic_start)와 카운터인에이블신호(vbv_count_enable)를 입력받는다. 논리곱소자(101)는 카운트종료신호(vbv_count_end)를 입력받아 상태반전하고, 상태반전한 카운트종료신호(vbv_count_end)와 입력된 버퍼출력시작신호(vbv_pic_start) 및 카운터인에이블신호(vbv_count_enable)를 논리곱연산하여 플립플롭(SRFF3)의 s단자로 출력한다. 여기서, 카운트종료신호(vbv_count_end)는 플립플롭(SRFF3)의 r단자로도 입력된다. 그래서, 플립플롭(SRFF3)은 도 11를 보면, 버퍼지연시간간격(vbv_delay)이 카운트되는 동안 즉, 카운터인에이블신호(vbv_count_enable)가 1이고, 카운트종료신호(vbv_count_end)가 0인 동안 비트버퍼(20)에서 해당 카운트의 픽쳐가 출력됨이 검출되면 즉, 버퍼출력시작신호(vbv_pic_start)가 1이 되면 이는 비트버퍼(20)에서 해당 픽쳐의 비트스트림 데이타가 빨리 출력된 경우이므로 뒷단의 가변장복호기(VLD)에서 디코딩동작이 일시 중지되도록 홀드신호(hold_vld)를 1로 셋팅하여 출력한다. 그리고, 플립플롭(SRFF3)은 버퍼지연시간간격(vbv_delay)에 대한 카운트가 끝나면(vbv_count_end=1) 홀드신호(hold_vld)를 0으로 리셋하여 픽쳐단위로 디코딩시점을 맞춘다.Referring to the operation of the hold signal generation unit 100 configured as described above with reference to the timing diagram of FIG. 11, first, the AND device 101 performs a buffer output start signal (vbv_pic_start) according to an arbitrary clock (sclk). And the counter enable signal (vbv_count_enable) are input. The logical multiplication device 101 receives the count end signal vbv_count_end and inverts the state, and logically multiplies the counted inverted count end signal vbv_count_end, the input buffer output start signal vbv_pic_start, and the counter enable signal vbv_count_enable. The calculation is performed to the s terminal of the flip-flop SRFF3. The count end signal vbv_count_end is also input to the r terminal of the flip-flop SRFF3. Thus, the flip-flop SRFF3 is shown in FIG. 11 while the buffer buffer time interval vbv_delay is counted, that is, while the counter enable signal vbv_count_enable is 1 and the count end signal vbv_count_end is 0. When it is detected that the picture of the corresponding count is output in step 20), that is, when the buffer output start signal (vbv_pic_start) becomes 1, the bitstream data of the corresponding picture is quickly output from the bit buffer 20. In VLD, the hold signal hold_vld is set to 1 so that the decoding operation is suspended. The flip-flop SRFF3 resets the hold signal hold_vld to 0 when the count for the buffer delay time interval vbv_delay ends (vbv_count_end = 1) to set the decoding time in picture units.
도 12은 본 발명의 픽쳐동기화장치(25)에서 스킵신호발생부(120)를 나타내는 상세도이다. 도시된 바와 같이, 스킵신호발생부(120)는 도 9의 오프셋계산부(90)에서 구한 오프셋의 부호비트를 입력받아 지연하여 출력하는 복수개의 플립플롭(DFF15,DFF16)과, 플립플롭(DFF15,DFF16)에서 각 출력되는 오프셋부호비트(offset_sign_bit)와 버퍼출력픽쳐지연신호(delayed_vbv)를 논리곱연산하는 논리곱소자(AND)(121), 및 논리곱소자(121)의 출력을 1클럭 지연하여 스킵신호(skip_vld)로 출력하는 플립플롭(DFF17)으로 구성된다.12 is a detailed view of the skip signal generator 120 in the picture synchronization device 25 of the present invention. As illustrated, the skip signal generator 120 receives a plurality of flip-flops DFF15 and DFF16 that delay and output the code bits of the offset obtained by the offset calculator 90 of FIG. 9, and the flip-flop DFF15. Delays the output of the logical AND (AND) 121 and the logical AND (121) logic AND operation of the offset code bit (offset_sign_bit) and the buffer output picture delayed signal (delayed_vbv) output from DFF16) by one clock delay. And a flip-flop DFF17 that is output as a skip signal skip_vld.
위와 같이 구성된 스킵신호발생부(120)에 대한 동작을 도 12의 타이밍도를 통해 설명하면, 우선 플립플롭(DFF15)은 도 9의 오프셋계산부(90)에서 계산된 오프셋(offset)의 부호비트(offset_sign_bit)를 입력받아 1클럭 지연하여 논리곱소자(121)와 플립플롭(DFF16)으로 출력한다. 플립플롭(DFF16)은 1클럭 지연된 오프셋부호비트를 다시 1클럭 지연하여 논리곱소자(121)로 출력한다. 논리곱소자(121)는 2클럭 지연된 오프셋부호비트를 입력받아 상태반전하고, 상태반전한 2클럭 지연 오프셋부호비트와 1클럭 지연된 오프셋부호비트 및 버퍼출력픽쳐지연신호(도 13 delayed_vbv 파형)를 논리곱연산하여 플립플롭(DFF17)으로 출력한다. 여기서, 논리곱소자(121)는 버퍼출력픽쳐지연신호(delayed_vbv)가 1이고, 오프셋부호비트의 상승에지에서 스킵신호(skip_vld)를 1로 출력하여 뒷단의 가변장복호기(VLD)에서 그 픽쳐를 디코딩하지 않고 버릴수 있도록 하므로써 지연된 픽쳐들의 디코딩시점을 앞당긴다.Referring to the operation of the skip signal generator 120 configured as described above with reference to the timing diagram of FIG. 12, first, the flip-flop DFF15 is the bit code of the offset calculated by the offset calculator 90 of FIG. The offset_sign_bit is input and delayed by one clock to output the logical product element 121 and the flip-flop DFF16. The flip-flop DFF16 delays the one-delayed offset code bit by one clock and outputs the result to the logical product element 121. The logical product element 121 receives the two-clock delayed offset code bit and inverts the state, and logically inverts the two-clock delayed offset code bit and the one-clock delayed offset code bit and the buffer output picture delay signal (Fig. 13 delayed_vbv waveform). Multiply and output the flip-flop (DFF17). Here, the logical multiplication device 121 outputs the skip signal skip_vld to 1 at the rising edge of the offset code bit and outputs the skip signal to 1 at the rising edge of the offset code bit. This speeds up the decoding time of delayed pictures by allowing them to be discarded without decoding.
상술한 바와 같이, 본 발명은 MPEG 비디오디코더의 픽쳐동기화장치에 관한 것으로 비디오디코더에 입력되는 비트스트림데이타에 에러가 발생하여 비정상적으로 디코딩되거나 비디오디코더의 하드웨어 구조상 빠르게 또는 느리게 디코딩되더라도 픽쳐단위로 비디오디코더의 비트버퍼상태를 맞추어 나갈 수 있어 비트버퍼에 오버플로우 또는 언더플로우가 발생하지 않도록 하는 효과를 갖는다.As described above, the present invention relates to an apparatus for synchronizing a picture of an MPEG video decoder. Even if an error occurs in a bitstream data input to the video decoder, it is decoded abnormally or decoded quickly or slowly due to hardware structure of the video decoder. The bitbuffer state can be adjusted so that overflow or underflow does not occur in the bitbuffer.
Claims (14)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960058562A KR100203290B1 (en) | 1996-11-27 | 1996-11-27 | Picture synchronizing apparatus of mpeg video decoder |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960058562A KR100203290B1 (en) | 1996-11-27 | 1996-11-27 | Picture synchronizing apparatus of mpeg video decoder |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19980039535A true KR19980039535A (en) | 1998-08-17 |
KR100203290B1 KR100203290B1 (en) | 1999-06-15 |
Family
ID=19484060
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019960058562A KR100203290B1 (en) | 1996-11-27 | 1996-11-27 | Picture synchronizing apparatus of mpeg video decoder |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100203290B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100822132B1 (en) * | 2006-10-24 | 2008-04-15 | 주식회사 대우일렉트로닉스 | Method for display broadcasting of digital multimedia broadcasting apparatus |
-
1996
- 1996-11-27 KR KR1019960058562A patent/KR100203290B1/en not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100822132B1 (en) * | 2006-10-24 | 2008-04-15 | 주식회사 대우일렉트로닉스 | Method for display broadcasting of digital multimedia broadcasting apparatus |
Also Published As
Publication number | Publication date |
---|---|
KR100203290B1 (en) | 1999-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100918598B1 (en) | Time base reconstruction for converting discrete time labeled video into analog output signal | |
US6081299A (en) | Methods and systems for encoding real time multimedia data | |
RU2117411C1 (en) | Device for video signal compression and synchronization device | |
KR0128244B1 (en) | Apparatus for decoding image signal | |
KR930001740A (en) | High efficiency encoded signal processing device | |
US6674801B1 (en) | Circuit for synchronizing picture and method therefor | |
PL174674B1 (en) | Video and audio signals synchronising system | |
US5566192A (en) | Variable-length decoder for bit-stuffed data | |
KR0175395B1 (en) | Stc error detect circuit for mpeg system decoder | |
US6055272A (en) | Run length encoder | |
KR100200617B1 (en) | A picture synchronizing circuit and method | |
KR100203290B1 (en) | Picture synchronizing apparatus of mpeg video decoder | |
EP0662271B1 (en) | Apparatus and method for producing periodic synchronization references forming a synchronization signal | |
JPS59224992A (en) | Encoder and decoder | |
US6445420B1 (en) | Apparatus for detecting data in a vertical blanking period of a radio frequency broadcasting signal | |
KR970001852Y1 (en) | Underflow protect circuit in variable code decoder | |
KR100237884B1 (en) | The circuit of pts and dts processing for video/audio synchronization | |
KR0120607B1 (en) | Pll circuit | |
KR100215822B1 (en) | Method for decoding image preventing bitstream overflow | |
KR0139163B1 (en) | Sync adapting apparatus applicating in a vlc process | |
KR0157464B1 (en) | Variable bit allocation decoding method and device | |
KR0152026B1 (en) | Method and apparatus for decoding header detection | |
KR200165753Y1 (en) | Clock restration circuit of digital image decoder | |
KR0176948B1 (en) | Clock Synchronizer for MPEG II Decoder with Double Clock | |
JPH114433A (en) | Image receiver |
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: 20080228 Year of fee payment: 10 |
|
LAPS | Lapse due to unpaid annual fee |