KR100776943B1 - Video capture card having a high quality and capture method of multichannel video - Google Patents

Video capture card having a high quality and capture method of multichannel video Download PDF

Info

Publication number
KR100776943B1
KR100776943B1 KR1020060074556A KR20060074556A KR100776943B1 KR 100776943 B1 KR100776943 B1 KR 100776943B1 KR 1020060074556 A KR1020060074556 A KR 1020060074556A KR 20060074556 A KR20060074556 A KR 20060074556A KR 100776943 B1 KR100776943 B1 KR 100776943B1
Authority
KR
South Korea
Prior art keywords
data
frame buffer
buffering
pci
video
Prior art date
Application number
KR1020060074556A
Other languages
Korean (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 KR1020060074556A priority Critical patent/KR100776943B1/en
Application granted granted Critical
Publication of KR100776943B1 publication Critical patent/KR100776943B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0024Peripheral component interconnect [PCI]

Abstract

A high quality video capture card and a multichannel video capture method are provided to solve problems which occur when a video capture IC for one channel is applied to a multichannel capture system with high quality in the conventional method. A high quality video capture card comprises a buffering controller(130), a frame buffer(140), and a PCI(Peripheral Component Interconnect) interface(150). The buffer controller(130) receives a digital video signal of one channel, extracts information for data buffering, and controls a buffering. The frame buffer(140) buffers the digital video data at one storage area matched with one channel according to a control signal of the buffer controller(130). The PCI interface(150) transmits a data transmission request signal to a PCI bus, receives a data transmission admission signal from the PCI bus, extracts the stored data from the frame buffer(140), and transmits the extracted data to the PCI bus in case that data more than a criterion is stored at the storage area.

Description

고성능 비디오 캡쳐 카드 및 다채널 비디오 캡쳐 방법{VIDEO CAPTURE CARD HAVING A HIGH QUALITY AND CAPTURE METHOD OF MULTICHANNEL VIDEO}VIDEO CAPTURE CARD HAVING A HIGH QUALITY AND CAPTURE METHOD OF MULTICHANNEL VIDEO}

도 1은 종래 범용의 비디오 캡쳐용 IC(CX23880)의 구성을 도시한 블럭도이다.Fig. 1 is a block diagram showing the structure of a conventional general video capture IC (CX23880).

도 2는 종래 다채널 구현을 위한 복수의 비디오 캡쳐용 IC와 PCI 브릿지 IC의 연결상태를 도시한 도면이다.2 is a diagram illustrating a connection state of a plurality of video capturing ICs and a PCI bridge IC for a conventional multi-channel implementation.

도 3은 종래의 PCI 카드(40, 50, 60)와 브릿지 사이의 데이터 전송 과정을 도시한 타이밍 도이다. 3 is a timing diagram illustrating a data transmission process between a conventional PCI card (40, 50, 60) and a bridge.

도 4는 본 발명의 고성능 비디오 캡쳐 시스템을 도시한 블럭도이다.4 is a block diagram illustrating a high performance video capture system of the present invention.

도 5는 본 발명의 비디오 캡쳐 카드를 도시한 블럭도이다.5 is a block diagram illustrating a video capture card of the present invention.

도 6은 본 발명의 버퍼링 제어부의 구성을 보다 상세히 도시한 블럭도이다.6 is a block diagram illustrating in detail the configuration of the buffering control unit of the present invention.

도 7은 본 발명의 PCI 인터페이스부를 통한 프레임 버퍼와 PC 시스템 메모리 사이의 데이터 전송과정을 도시한 도면이다.7 is a diagram illustrating a data transmission process between a frame buffer and a PC system memory through the PCI interface unit of the present invention.

도 8은 본 발명의 프레임 버퍼의 구조를 도시한 도면이다.8 is a diagram showing the structure of a frame buffer of the present invention.

< 도면의 주요 부분에 대한 설명 ><Description of Main Parts of Drawings>

10 : 비디오 캡쳐용 IC 11,120 : 비디오 디코더10: video capture IC 11,120: video decoder

12 : 스케일러 13,133,151 : FIFO12: scaler 13,133,151: FIFO

14 : DMA 15 : PCI 인터페이스14: DMA 15: PCI interface

16,170 : PCI 버스 20 : PCI 브릿지 IC16170: PCI bus 20: PCI bridge IC

30 : PCI 2차 버스 40, 50, 60 : PCI 카드30: PCI secondary bus 40, 50, 60: PCI card

70 : 브릿지 80 : CPU70: bridge 80: CPU

100 : 하드웨어 110 : 비디오 캡쳐 카드100: hardware 110: video capture card

130 : 버퍼링 제어부 131 : 비디오 신호 인터페이스 수단130: buffering control unit 131: video signal interface means

132 : 타이밍 정보 추출 모듈 134 : 프레임 버퍼 주소설정 모듈132: timing information extraction module 134: frame buffer address setting module

135 : 프레임 버퍼 주소제공 모듈 136 : SDRAM 컨트롤러135: frame buffer address providing module 136: SDRAM controller

137 : SDRAM 아비터 138 : 비디오 데이터 독출 수단 137: SDRAM arbiter 138: video data reading means

140 : 프레임 버퍼 150 : PCI 인터페이스부 140: frame buffer 150: PCI interface unit

160 : 로컬 버스 200 : 디바이스 드라이버 160: local bus 200: device driver

300 : 응용 소프트웨어 400 : PC 시스템 메모리300: Application Software 400: PC System Memory

본 발명은 버퍼링 제어부와 SDRAM(synchronous dynamic random access memory)을 사용하여 비디오 프레임을 더블 버퍼링함으로써 종래 1 채널용 비디오 캡쳐 IC를 다채널 고성능의 캡쳐 시스템에 적용 가능 하도록한 고성능 비디오 캡쳐 카드 및 다채널 비디오 캡쳐 방법에 관한 것이다.The present invention provides a high-performance video capture card and a multi-channel video that enable the conventional 1-channel video capture IC to be applied to a multi-channel high performance capture system by double buffering a video frame using a buffering controller and synchronous dynamic random access memory (SDRAM). To a capture method.

아날로그 비디오 신호를 디지털 비디오 신호로 변환하여 사용하는 기술은 많은 분야에서 사용된다. 대표적인 예로 일반 PC에서 사용되는 TV 수신카드, 의료용으로 사용되는 PACS(picture archiving and communication system), 산업용으로 사용되는 머신 비젼(Machine Vision) 등을 들 수 있다. 이러한 기술 개발을 위해서는 아날로그 비디오 신호를 디지털 비디오 신호로 변환하는 기술, 프레임 버퍼를 제어하는 기술, PCI(peripheral component interconnect) 버스를 효율적으로 사용하여 데이터를 전송하는 기술, 고난이도의 디바이스 드라이버를 작성하는 기술 등이 요구된다.The technology of converting an analog video signal into a digital video signal is used in many fields. Typical examples include TV reception cards used in general PCs, picture archiving and communication systems (PACS) used for medical purposes, and machine vision used for industrial purposes. The development of this technology involves converting analog video signals into digital video signals, controlling frame buffers, efficiently transferring data using a peripheral component interconnect (PCI) bus, and writing highly difficult device drivers. Etc. are required.

이 중에서 특히 프레임 버퍼를 관리하는 기술은 근래에 비디오 데이터의 압축, 복원, 처리 등에서 폭넓게 사용되고 있다. 보다 상세히, 프레임 버퍼를 제어하는 방법은 비디오 캡쳐 시스템뿐만 아니라, MPEG(Moving Picture Experts Group) 1/2, 인코더/디코더 등 비디오 처리 시스템에서 거의 필수적으로 사용된다. 특히, 비디오 처리 시스템은 실시간으로 비디오 데이터를 처리하기 때문에 프레임 버퍼의 대역폭을 얼마나 효율적으로 사용하는가가 중요한 문제이다. 이를 위하여 현재 요청되는 데이터 처리량에 맞춰 동작 주파수, 데이터버스 폭, 버스트 길이, 버퍼링 기법, 밝기와 색 정보의 별도 저장 등 많은 기법들이 연구되고 있다.Among them, in particular, a technique for managing a frame buffer has been widely used in compression, decompression, and processing of video data. More specifically, the method of controlling the frame buffer is almost essential in a video processing system such as a moving picture expert group (MPEG) 1/2, an encoder / decoder, as well as a video capture system. In particular, since the video processing system processes the video data in real time, how efficiently the bandwidth of the frame buffer is used is an important problem. To this end, many techniques such as operating frequency, data bus width, burst length, buffering technique, and separate storage of brightness and color information have been studied according to the data throughput.

특히, 최근에는 비디오 감시 장비로 사용되는 DVR(Digital Video Recorder)의 등장으로 1 채널뿐만 아니라 4 채널, 8 채널, 16 채널의 멀티 채널과 캡쳐 성능도 30 ~ 240 FPS(frame per second, 320x240 해상도 기준)까지의 고성능 비디오 캡쳐 카드가 등장하고 있다. 대부분의 비디오 캡쳐 카드들이 범용의 비디오 캡쳐용 IC들을 사용하고 있다. 최근 가장 많이 사용되는 IC로는 Conexant 사의 CX23880와 Philips 사의 SAA7146를 들 수 있다. 이하, 상기 CX23880을 예로 들어 종래 고성능 비디오 캡쳐 카드의 구성을 살펴보고, 멀티 채널, 고성능 비디오 캡쳐 시의 문제점을 살펴본다.In particular, with the advent of digital video recorders (DVRs), which are used as video surveillance equipment recently, not only 1 channel but also 4, 8, 16 channels, multi-channel and capture performance based on 30 to 240 frames per second (320x240 resolution) The high-performance video capture card up to) comes up. Most video capture cards use general purpose video capture ICs. The most popular ICs in recent years include the Conexant CX23880 and Philips SAA7146. Hereinafter, the configuration of a conventional high performance video capture card will be described using the CX23880 as an example, and the problems in capturing multi-channel and high performance video will be described.

도 1은 종래 범용의 비디오 캡쳐용 IC(CX23880)의 구성을 도시한 블럭도이다.Fig. 1 is a block diagram showing the structure of a conventional general video capture IC (CX23880).

도 1에 도시된 바와 같이, 비디오 캡쳐용 IC(10)는 아날로그 비디오 신호의 캡쳐를 위하여 ADC(analog-to-digital converter), 비디오 디코더(11), 스케일러(12), 비디오 FIFO(video first-in first-out, 13), DMA(direct memory access, 14), PCI 인터페이스(15)를 포함한다.As shown in FIG. 1, the IC 10 for video capturing includes an analog-to-digital converter (ADC), a video decoder 11, a scaler 12, and a video FIFO for capturing an analog video signal. in first-out, 13), direct memory access (DMA) 14, and PCI interface 15.

상기 비디오 캡쳐용 IC(10)를 통한 데이터 캡쳐 과정을 살펴보면, 상기 비디오 디코더(11)는 아날로그 비디오 입력 신호를 디지털 비디오 신호로 변환한다. 이 후, 상기 스케일러(12)를 통해 변환된 디지털 비디오 신호를 원하는 해상도로 스케일링 한 후, 상기 비디오 FIFO(13)에 버퍼링 한다. 상기 비디오 FIFO(13)에 쌓인 데이터가 특정 레벨이 되면 상기 DMA(14) 엔진을 사용하여, 상기 데이터를 상기 PCI 인터페이스(15)를 거쳐 PCI 버스(16)로 전송한다. Looking at the data capture process through the video capture IC 10, the video decoder 11 converts an analog video input signal into a digital video signal. Thereafter, the digital video signal converted by the scaler 12 is scaled to a desired resolution and then buffered in the video FIFO 13. When the data accumulated in the video FIFO 13 reaches a specific level, the data is transmitted to the PCI bus 16 via the PCI interface 15 using the DMA 14 engine.

상기 비디오 데이터는 최대 초당 24 MBytes/sec (PAL(phase alternation by line system)의 경우, 768 Pixel x 625 Lines x 2 Bytes x 25 Frame = 24,000,000 Bytes)의 속도로 상기 비디오 캡쳐용 IC(10)에 입력될 수 있다. 상기 PCI 버스(16) 의 최대 대역폭은 132 MBytes/sec(33 Mhz * 4 Bytes)이므로 상기 비디오 데이터의 입력 속도를 커버할 수 있으나, 하나의 PCI 버스(16)를 여러 디바이스가 공유하므로, 비디오 데이터를 전송할 때 상기 PCI 버스(16)를 즉시 사용할 수 없는 경우가 발생할 수 있다. 이를 방지하기 위해서는 적절한 데이터 량의 버퍼링이 필요하다. 상기 비디오 캡쳐용 IC(10)의 경우 4 라인을 버퍼링할 수 있는 양의 FIFO(13)를 내장하고 있다. 4 라인을 Bytes 수로 계산하면 6144 Bytes(768 Pixel / Line * 2 Bytes / Pixel * 4 Line = 6144 Bytes), 시간으로 계산하면 256 us(6144 Bytes / 24 MBytes/sec = 256 us)이다. 최대 256 us 안에 적어도 한번은 상기 PCI 버스(16)를 사용하여 비디오 데이터를 호스트 컴퓨터로 전송해야 상기 FIFO(13)에 오버플로 (Overflow)가 발생하지 않는다. 만약 상기 FIFO(13)에 오버플로가 한번이라도 발생하면 캡쳐된 이미지는 왜곡될 수 있다.The video data is input to the video capturing IC 10 at a rate of 24 MBytes / sec per second (768 pixels x 625 lines x 2 Bytes x 25 Frames = 24,000,000 Bytes in the case of a phase alternation by line system (PAL)). Can be. Since the maximum bandwidth of the PCI bus 16 is 132 MBytes / sec (33 Mhz * 4 Bytes), it can cover the input speed of the video data. However, since one PCI bus 16 is shared by several devices, the video data It may occur that the PCI bus 16 is not immediately available when transmitting. To prevent this, an appropriate amount of data buffering is required. The video capturing IC 10 includes a built-in FIFO 13 capable of buffering four lines. 4 lines is 6144 Bytes (768 Pixel / Line * 2 Bytes / Pixel * 4 Line = 6144 Bytes), or 256 us (6144 Bytes / 24 MBytes / sec = 256 us). At least once within a maximum of 256 us, video data must be transmitted to the host computer using the PCI bus 16 so that no overflow occurs in the FIFO 13. If an overflow occurs in the FIFO 13 even once, the captured image may be distorted.

또한, 상기 256 us 동안 상기 PCI 버스(16)를 통해 전송할 수 있는 최대 데이터 양은 33 KBytes(132 MBytes/sec * 256 us = 33792 Bytes)이다. 만약 상기 PCI 버스(16)에 연결된 장치 중 일부가 순간적으로 33 KBytes 이상의 데이터를 연속하여 전송하는 경우 이미지는 왜곡될 수 있다. 또는 상기 PCI 버스(16)에 여러 장치가 연결되어 있고, 이 장치들이 순간적으로 모두 데이터를 전송하는 경우도 이미지 왜곡이 발생할 수 있다.In addition, the maximum amount of data that can be transmitted through the PCI bus 16 during the 256 us is 33 KBytes (132 MBytes / sec * 256 us = 33792 Bytes). If some of the devices connected to the PCI bus 16 instantaneously transmit more than 33 KBytes of data, the image may be distorted. Alternatively, image distortion may occur when multiple devices are connected to the PCI bus 16 and these devices all transmit data instantaneously.

도 2는 종래 다채널 구현을 위한 복수의 비디오 캡쳐용 IC와 PCI 버스의 연결상태를 도시한 도면이다.FIG. 2 is a diagram illustrating a connection state between a plurality of video capturing ICs and a PCI bus for implementing a conventional multi-channel.

도 2를 참조하여, 상기 비디오 캡쳐용 IC(10)를 사용하여 16 채널, 120 FPS 로 동작 가능한 고성능의 비디오 캡쳐 카드의 구현 가능성을 살펴본다. 16 채널 비디오 신호의 입력을 위해서는 비디오 캡쳐용 IC(10) 16 개와 상기 비디오 캡쳐용 IC(10)와 상기 PCI 버스(16)를 상호 연결하는 PCI 브릿지(Bridge) IC(20)가 요구된다. 상기 PCI 브릿지 IC(20)는 상기 16 개의 비디오 캡쳐용 IC(10)와 원활한 통신을 하기 위하여 PCI 2차 버스(Secondary Bus;30)에 최대한 많이 연결될 수 있을 것이 요구된다. 예를 들어 PLX Technology 사의 PCI6156 IC 는 상기 PCI 2차 버스(30)에 상기 비디오 캡쳐용 IC(10)를 10 개까지 연결할 수 있다. 편의상 도 2에서는 하나의 PCI 브릿지 IC(20)에 연결된 8 개의 비디오 캡쳐용 IC(10)만이 도시되었으나, 실제 구현시에는 PCI 브릿지 IC(20) 2 개에 비디오 캡쳐용 IC(10) 16 개가 연결된다.Referring to FIG. 2, the possibility of implementing a high-performance video capture card capable of operating at 16 channels and 120 FPS using the video capture IC 10 will be described. In order to input a 16-channel video signal, 16 video capturing ICs 10 and a PCI bridge IC 20 interconnecting the video capturing ICs 10 and the PCI bus 16 are required. The PCI bridge IC 20 is required to be able to be connected to the PCI secondary bus (30) as much as possible in order to communicate smoothly with the 16 video capture IC (10). For example, PLX Technology's PCI6156 IC can connect up to 10 video capture ICs 10 to the PCI secondary bus 30. For convenience, only 8 video capture ICs 10 connected to one PCI bridge IC 20 are shown in FIG. 2, but in practice, 16 video capture ICs 10 are connected to two PCI bridge ICs 20. do.

또한, PCI 버스(16)에는 상술한 비디오 캡쳐용 IC(10)와 PCI 브릿지 IC(20)를 포함하는 PCI 카드(40) 이외에도 다른 PCI 카드(50, 60)가 연결될 수 있다. 또한, PCI 버스(16)에는 PCI 카드들(40, 50, 60)의 요청 신호(req)를 수신하고, PCI 버스(16)를 점유할 수 있는 PCI 카드를 알려주는 응답 신호(gnt)를 송신하는 브릿지(특히 브릿지의 아비터(arbiter)가 상술한 기능을 수행함, 70)가 연결된다. 브릿지(70)는 일반적으로 호스트 버스를 통하여 CPU(80)에 접속된다. In addition, other PCI cards 50 and 60 may be connected to the PCI bus 16 in addition to the PCI card 40 including the video capturing IC 10 and the PCI bridge IC 20 described above. In addition, the PCI bus 16 receives a request signal req of the PCI cards 40, 50, and 60, and transmits a response signal gnt indicating a PCI card that can occupy the PCI bus 16. A bridge (particularly an arbiter of the bridge performs the above function, 70) is connected. The bridge 70 is generally connected to the CPU 80 via a host bus.

위에서와 같은 다채널의 대용량 실시간 데이터를 캡쳐하기 위하여 각 비디오 캡쳐용 IC(10)는 상기 PCI 브릿지 IC(20)에 요청 신호를 전송하고, 상기 PCI 브릿지 IC(20)는 브릿지(70)에 요청 신호(req1)를 전송하고, 상기 브릿지(70)이 제1 PCI 카드(40)에 응답 신호(gnt1)를 전송하면, PCI 브릿지 IC(20)는 해당 비디오 캡쳐용 IC(10)에 응답 신호를 전송하여 비디오 캡쳐용 IC로부터의 데이터를 PCI 버스(16)를 통하여 브릿지(70)로 전송한다. 이하, 도 3을 참조하여 상기 캡쳐된 비디오 데이터의 전송 타이밍을 살펴본다.Each video capturing IC 10 transmits a request signal to the PCI bridge IC 20, and the PCI bridge IC 20 requests a bridge 70 to capture a large amount of multi-channel real-time data as described above. When the signal req1 is transmitted and the bridge 70 transmits the response signal gnt1 to the first PCI card 40, the PCI bridge IC 20 sends a response signal to the corresponding video capturing IC 10. And transmits data from the video capturing IC to the bridge 70 via the PCI bus 16. Hereinafter, the transmission timing of the captured video data will be described with reference to FIG. 3.

도 3은 종래의 PCI 카드(40, 50, 60)와 브릿지 사이의 데이터 전송 과정을 도시한 타이밍 도이다. 3 is a timing diagram illustrating a data transmission process between a conventional PCI card (40, 50, 60) and a bridge.

도 3을 참조하면, 3개의 PCI 카드(40, 50, 60)로부터 브릿지(70)에 요청 신호(req 1, req 2, req 3)가 전송된다고 가정할 때, 상기 브릿지(70)는 상기 요청 신호의 전달 순서에 따라 차례로 PCI 카드(40, 50, 60)에 응답 신호(gnt 1, gnt 2, gnt 3)를 전송한다. 그러나, 요청 신호와는 달리 응답 신호의 전송은 특정 PCI 카드의 PCI 버스(16) 독점을 의미하기 때문에 선순위의 응답 신호 (gnt 3)를 수신한 제3 PCI 카드(60)로부터 브릿지(70)로 데이터 전송이 완료될 때까지 후순위의 PCI 카드(40, 50)는 응답 신호(gnt 1, gnt 2)의 수신을 대기하게 된다. 도면과 같이 제1 PCI 카드(40)보다 선순위인 2개의 PCI 카드(50, 60)가 있는 경우, 선순위의 PCI 카드(50, 60)의 상기 PCI 버스(16) 독점으로 인하여 요청 신호와 응답 신호 사이의 레이턴시(latency)는 후순위인 제1 PCI 카드(40)로 갈수록 증가하기 때문에 데이터 버퍼링의 중요성을 더욱 커진다.Referring to FIG. 3, assuming that request signals req 1, req 2, and req 3 are transmitted from the three PCI cards 40, 50, and 60 to the bridge 70, the bridge 70 requests the request. The response signals gnt 1, gnt 2, and gnt 3 are sequentially transmitted to the PCI cards 40, 50, and 60 according to the signal transmission order. However, unlike the request signal, the transmission of the response signal means the monopoly of the PCI bus 16 of a specific PCI card, so that the response signal gnt 3 of the priority is received from the third PCI card 60 to the bridge 70. Until the data transmission is completed, the lower priority PCI cards 40 and 50 wait to receive the response signals gnt 1 and gnt 2. When there are two PCI cards 50 and 60 that are higher priority than the first PCI card 40 as shown in the drawing, the request signal and the response signal are due to the PCI bus 16 monopoly of the priority PCI cards 50 and 60. The latency between them increases with the first PCI card 40, which is subordinate, so the importance of data buffering becomes greater.

예를 들어, 제1 PCI 카드(40)에 포함된 비디오 캡쳐용 IC(10)가 256us 만큼의 데이터 버퍼링이 가능하고, 비디오 캡쳐용 IC(10)의 FIFO(13)에 128us 이상에 해당하는 데이터가 찬 경우에 제1 PCI 카드(40)가 브릿지(70)로 요청 신호(req 1)를 송신하는 경우에는, 상기 레이턴시가 128us를 넘으면 비디오 캡쳐용 IC(10)의 FIFO(13)는 오버플로가 발생하게 된다. 즉, 비디오 캡쳐용 IC(10)를 통하여 캡쳐된 이미지는 왜곡되어 정상적인 전송을 하지 못한다. For example, the video capture IC 10 included in the first PCI card 40 is capable of buffering data as much as 256us, and the data corresponding to 128us or more in the FIFO 13 of the video capture IC 10. When the first PCI card 40 transmits the request signal req 1 to the bridge 70 when the value is full, the FIFO 13 of the video capturing IC 10 overflows when the latency exceeds 128 us. Will occur. That is, the image captured through the video capturing IC 10 is distorted and cannot perform normal transmission.

상기 레이턴시로 인한 이미지 왜곡을 방지하기 위해서는 대용량의 버퍼를 사용한 원활한 데이터 버퍼링이 필연적으로 요구된다. 이를 위하여 비디오 캡쳐용 IC (10)의 FIFO(13) 용량을 증가시킬 수 있으나, 상기 FIFO(13)를 구성하는 SRAM의 가격이 고가여서 한계가 있으며, 상기 FIFO(13)의 용량 확장은 핀 수의 증가를 초래하여 시스템의 구성에 장애를 초래할 수 있다.In order to prevent image distortion due to the latency, smooth data buffering using a large buffer is inevitably required. To this end, the capacity of the FIFO 13 of the video capturing IC 10 may be increased. However, the SRAM constituting the FIFO 13 is expensive, and there is a limit. This may cause an increase in the configuration of the system, which may cause a failure.

상기 문제점을 해결하기 위하여 안출된 본 발명은 종래 1 채널용 비디오 캡쳐 IC를 다채널 고성능의 캡쳐 시스템에 적용할 때 발생할 수 있는 문제점을 해결하는 것을 목적으로 한다. 보다 상세히, 버퍼링 제어부와 SDRAM을 사용하여 비디오 프레임을 버퍼링함으로써 고성능 비디오 캡쳐 카드를 제공하는 것을 목적으로 한다.The present invention devised to solve the above problems is an object of the present invention to solve the problems that may occur when applying a conventional one-channel video capture IC to a multi-channel high-performance capture system. More specifically, it is an object to provide a high performance video capture card by buffering video frames using a buffering control unit and SDRAM.

상술한 목적을 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면은 적어도 하나의 채널의 디지털 비디오 신호를 입력받아 데이터 버퍼링을 위한 정보를 추출하고, 버퍼링 과정을 제어하는 버퍼링 제어부; 상기 버퍼링 제어부의 제어 신호에 따라 상기 적어도 하나의 채널에 각각 대응하는 적어도 하나의 저장 영역에 디지털 비디오 데이터를 버퍼링하는 프레임 버퍼; 및 상기 적어도 하나의 저장 영역 중 하나 이상의 저장 영역에 기준치 이상의 데이터가 저장되는 경우 PCI 버스에 데이터 전송 요청 신호를 송신하고, 상기 PCI 버스로부터 데이터 전송 수락 신호를 수신하면 상기 프레임 버퍼에 저장된 데이터를 독출하여 상기 PCI 버스로 전송하는 PCI 인터페이스부를 포함하는 비디오 캡쳐 카드를 제공한다. As a technical means for achieving the above object, a first aspect of the present invention receives a digital video signal of at least one channel to extract information for data buffering, the buffering control unit for controlling the buffering process; A frame buffer for buffering digital video data in at least one storage area corresponding to the at least one channel, respectively, according to a control signal of the buffering controller; And transmitting a data transmission request signal to a PCI bus when data above a reference value is stored in at least one storage area of the at least one storage area, and reading data stored in the frame buffer when receiving a data transmission acceptance signal from the PCI bus. To provide a video capture card including a PCI interface for transmitting to the PCI bus.

바람직하게, 상기 프레임 버퍼의 기준치는 상기 프레임 버퍼의 하나의 저장 영역에 할당된 용량의 1/2이다. 또한, 상기 프레임 버퍼는 SDRAM으로 형성된다. 또한, 상기 프레임 버퍼는 상기 적어도 하나의 저장 영역 각각을 두 영역으로 분할하여 핑퐁 방식으로 데이터를 버퍼링한다. 또한, 상기 버퍼링 제어부는 상기 프레임 버퍼의 사용을 위한 신호를 전송하는 복수의 비디오 신호 인터페이스 수단과, 상기 PCI 인터페이스부에 프레임 메모리의 주소와 전송할 데이터의 크기를 설정하고, 원하는 채널의 데이터를 상기 전송 크기만큼 독출하는 비디오 데이터 독출 수단과, 상기 프레임 버퍼의 제어를 위한 SDRAM 컨트롤러, 및 상기 프레임 버퍼와 연동하는 상기 복수의 비디오 신호 인터페이스 수단과, 상기 비디오 데이터 독출 수단을 중재하는 SDRAM 아비터를 포함한다. 또한, 상기 비디오 신호 인터페이스 수단은 입력된 디지털 비디오 신호로부터 타이밍 정보를 추출하고, 프레임의 시작을 판단하는 타이밍 정보 추출 모듈과, 상기 타이밍 정보 추출 모듈을 통하여 결정된 유효 픽셀을 저장하고, 프레임 버퍼의 버스트 액세스를 조력하는 FIFO, 및 상기 타이밍 정보 추출 모듈로부터 추출되는 수직 싱크와 필드 신호를 기준으로 데이터 프레임의 시작을 판단하고, 상기 프레임 버퍼의 주소를 동기화시키는 프레임 버퍼 주소설정 모듈을 포함한다. Preferably, the reference value of the frame buffer is 1/2 of the capacity allocated to one storage area of the frame buffer. The frame buffer is also formed of SDRAM. The frame buffer divides each of the at least one storage area into two areas to buffer data in a ping-pong manner. The buffering controller may further include a plurality of video signal interface means for transmitting a signal for using the frame buffer, an address of a frame memory and a size of data to be transmitted, and transmitting data of a desired channel to the PCI interface unit. Video data reading means for reading the data by size, an SDRAM controller for controlling the frame buffer, a plurality of video signal interface means interworking with the frame buffer, and an SDRAM arbiter for arbitrating the video data reading means. . In addition, the video signal interface means extracts timing information from an input digital video signal, stores a timing information extraction module for determining the start of a frame, valid pixels determined through the timing information extraction module, and bursts a frame buffer. And a frame buffer addressing module configured to determine the start of a data frame based on the vertical sync and field signals extracted from the timing information extraction module and to synchronize the address of the frame buffer.

본 발명의 제2 측면은 복수의 채널을 통하여 디지털 비디오 신호를 입력받아 데이터 버퍼링을 위한 정보를 추출하고, 프레임 버퍼를 통한 버퍼링 과정을 제어하는 버퍼링 제어부; 상기 프레임 버퍼에 기준치 이상의 데이터가 저장되는 경우 PCI 버스에 데이터 전송 요청 신호를 송신하고, 상기 PCI 버스로부터 데이터 전송 수락 신호를 수신하면, 상기 프레임 버퍼에 저장된 데이터를 독출하여 PCI 버스로 전송하는 PCI 인터페이스부를 포함하는 PCI 인터페이스 칩을 제공한다. According to a second aspect of the present invention, a buffering controller receives a digital video signal through a plurality of channels, extracts information for data buffering, and controls a buffering process through a frame buffer; The PCI interface transmits a data transmission request signal to the PCI bus when data higher than a reference value is stored in the frame buffer, and reads the data stored in the frame buffer and transmits the data to the PCI bus when the data transmission acceptance signal is received from the PCI bus. It provides a PCI interface chip including a unit.

바람직하게, 상기 프레임 버퍼는 SDRAM이다. 또한, 상기 버퍼링 제어부는 상기 프레임 메모리를 상기 복수의 채널에 각각 대응하는 복수의 저장 영역으로 구분하고, 상기 복수의 채널 각각을 통하여 입력되는 디지털 비디오 신호를 상기 복수의 저장 영역 중 상기 복수의 채널 각각에 대응하는 저장 영역에 저장한다. 또한, 상기 기준치 이상의 데이터는 상기 복수의 저장 영역 각각의 용량의 1/2이다. 또한, 상기 버퍼링 제어부는 상기 복수의 저장 영역 각각을 두 영역으로 분할하여 핑퐁 방식으로 데이터를 버퍼링한다. Preferably, the frame buffer is SDRAM. The buffering controller divides the frame memory into a plurality of storage regions respectively corresponding to the plurality of channels, and divides the digital video signal input through each of the plurality of channels into each of the plurality of channels among the plurality of storage regions. Store in the storage area corresponding to. The data above the reference value is 1/2 of the capacity of each of the plurality of storage areas. The buffering controller divides each of the plurality of storage areas into two areas to buffer data in a ping-pong manner.

본 발명의 제3 측면은 (A) 입력된 디지털 비디오 신호를 버퍼링 제어부의 제어 신호에 따라 프레임 버퍼의 각 채널에 대응되는 저장 영역에 버퍼링하는 단계; (B) 상기 프레임 버퍼의 저장 영역에 기준치 이상의 데이터가 적재되는 채널 발생 시 이를 PCI 인터페이스부에 통지하는 단계; (C) 상기 통지를 수신한 PCI 인터페이 스부가 PCI 버스에 데이터 전송 요청 신호를 전송하는 단계; (D) 상기 요청 신호에 대한 응답으로 상기 PCI 버스로부터 데이터 전송 수락 신호를 수신하는 경우, 상기 프레임 버퍼에 저장되어 있던 데이터를 독출하여 PCI 인터페이스부로 전송하는 단계; 및 (E) 상기 데이터를 PCI 인터페이스부로부터 PCI 버스로 전송하는 단계를 포함하는 다채널 비디오 캡쳐 방법을 제공한다. According to a third aspect of the present invention, there is provided a method comprising: (A) buffering an input digital video signal in a storage area corresponding to each channel of a frame buffer according to a control signal of a buffering controller; (B) notifying the PCI interface unit when a channel in which data equal to or greater than a reference value is loaded is stored in the storage area of the frame buffer; (C) the PCI interface receiving the notification transmits a data transmission request signal to the PCI bus; (D) when receiving a data transmission acceptance signal from the PCI bus in response to the request signal, reading data stored in the frame buffer and transmitting the data to the PCI interface unit; And (E) transmitting the data from the PCI interface unit to the PCI bus.

바람직하게, 상기 (D) 단계는, 상기 프레임 버퍼로부터 전송받은 데이터를 PCI 인터페이스부에 내재된 FIFO로 재차 버퍼링하는 단계가 더 포함된다. 또한, 상기 기준치는 저장 영역 용량의 1/2이다. 또한, 상기 프레임 버퍼는 SDRAM으로 형성된다. 또한, 상기 프레임 버퍼는 상기 저장 영역을 두 영역으로 분할하여 핑퐁 방식으로 데이터를 버퍼링한다. Preferably, the step (D) further includes the step of buffering the data received from the frame buffer to the FIFO embedded in the PCI interface unit. In addition, the reference value is 1/2 of the storage area capacity. The frame buffer is also formed of SDRAM. In addition, the frame buffer divides the storage area into two areas to buffer data in a ping-pong manner.

본 발명과 본 발명의 동작성의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야 한다.DETAILED DESCRIPTION In order to fully understand the present invention, the advantages of the operability of the present invention, and the objects achieved by the practice of the present invention, reference should be made to the accompanying drawings that illustrate preferred embodiments of the present invention and the contents described in the accompanying drawings.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. Like reference numerals in the drawings denote like elements.

도 4는 본 발명의 고성능 비디오 캡쳐 시스템을 도시한 블럭도이다.4 is a block diagram illustrating a high performance video capture system of the present invention.

도 4에 도시된 바와 같이, 고성능 비디오 캡쳐 시스템은 크게 하드웨 어(100), 디바이스 드라이버(200), 응용 소프트웨어(300) 세 부분으로 구성된다. 상기 하드웨어(100)는 아날로그 비디오 신호를 디지털 비디오 신호로 변환하고, 변환된 디지털 비디오 신호를 프레임 버퍼(도 5의 도면부호 140 참조)에 버퍼링한 뒤, PCI 버스(도 7의 도면부호 170 참조)를 통해 PC의 메인 메모리로 전송한다. 상기 디바이스 드라이버(200)는 상기 하드웨어(100)의 초기화, 세팅 설정 및 비디오 캡쳐 등을 수행한다. 상기 응용 소프트웨어(300)는 상기 디바이스 드라이버(200)에서 캡쳐된 비디오 데이터를 독출하여 화면에 디스플레이하고, 사용자의 각종 입력을 처리한다.As shown in FIG. 4, the high performance video capture system is largely composed of three parts, the hardware 100, the device driver 200, and the application software 300. The hardware 100 converts an analog video signal into a digital video signal, buffers the converted digital video signal into a frame buffer (see reference numeral 140 in FIG. 5), and then uses a PCI bus (see reference numeral 170 in FIG. 7). To the main memory of your PC. The device driver 200 performs initialization, setting settings, and video capture of the hardware 100. The application software 300 reads and displays video data captured by the device driver 200 on a screen and processes various inputs of a user.

본 발명은 상기 고속 비디오 캡쳐 시스템의 각 구성요소 중 특히 하드웨어(100)의 개선을 통한 다채널 데이터 캡쳐 시 고속의 데이터 전송 방안을 제공한다. 종래 비디오 캡쳐 시스템의 경우 1 채널을 기준으로 설계되어 내부 버퍼의 용량이 작아도 큰 무리가 없었으나, 16 채널 이상의 고속 비디오 캡쳐 시스템을 구현하기 위해서는 대용량의 프레임 버퍼(140) 구현이 필수적이다. 이하, 설명의 편의상 16 채널을 기준으로 본 발명을 설명한다. 그러나, 본 발명의 권리 범위를 정함에 있어 이는 단순한 예시에 불과함이 자명하다. 본 시스템은 대용량의 SDRAM을 프레임 버퍼(140)로 사용하여 캡쳐된 비디오 신호의 실시간 전송을 구현한다. 특히 상기 버퍼링 과정에서 핑퐁(Ping-Pong) 기법을 사용함으로써 비디오 디코더(도 5의 도면부호 120 참조)상의 데이터와 캡쳐한 데이터가 서로 겹치지 않도록 한다. 만약 상기 데이터가 겹칠 경우 움직임이 심한 화면의 경우 프레임이 겹쳐서 나타날 수 있기 때문이다.The present invention provides a high-speed data transmission scheme in capturing multi-channel data through the improvement of the hardware 100 among the components of the high speed video capture system. The conventional video capture system has been designed based on 1 channel, so there is no big problem even if the capacity of the internal buffer is small. However, in order to implement a high speed video capture system of 16 channels or more, it is necessary to implement a large frame buffer 140. Hereinafter, for convenience of description, the present invention will be described with reference to 16 channels. However, in defining the scope of the present invention, it is obvious that this is only a mere example. The system uses a large amount of SDRAM as the frame buffer 140 to implement real-time transmission of the captured video signal. In particular, by using the ping-pong technique in the buffering process, the data on the video decoder (refer to reference numeral 120 of FIG. 5) and the captured data do not overlap each other. This is because when the data overlap, frames may be overlapped in the case of a screen with heavy movement.

또한, 데이터 캡쳐의 성능은 PCI 버스(170)를 얼마나 효율적으로 사용하느냐에 따라 결정된다. 상기 PCI 버스(170)의 대역폭을 100 MBytes/sec 정도로 생각할 때 약 120 FPS(= 100 MBytes/sec / 24 MBytes/sec) 정도의 캡쳐 성능 구현이 가능하다. 상기 PCI 버스(170)의 대역폭을 최대로 사용하기 위해서는 상기 PCI 버스(170)의 아비트레이션(Arbitration)을 최대로 줄이고, 버스 사이즈를 최대로 늘려야 한다. 이를 위해서는 비디오 캡쳐 카드(도 5의 도면부호 110 참조) 내에 충분한 용량의 버퍼가 구비되어 전송할 데이터가 항시 준비되어 있어야 한다.In addition, the performance of data capture is determined by how efficiently the PCI bus 170 is used. When the bandwidth of the PCI bus 170 is considered to be about 100 MBytes / sec, a capture performance of about 120 FPS (= 100 MBytes / sec / 24 MBytes / sec) can be realized. In order to maximize the bandwidth of the PCI bus 170, the arbitration of the PCI bus 170 should be reduced to the maximum and the bus size should be increased to the maximum. For this purpose, a buffer having a sufficient capacity is provided in the video capture card (refer to reference numeral 110 of FIG. 5) so that data to be transmitted is always prepared.

그러나, 고성능의 비디오 캡쳐 카드(110) 내부의 FIFO(도 7의 도면부호 151 참조)는 고가의 SRAM으로, 용량이 256 Bytes에 불과하여 데이터 버퍼링에 부적합하고, 용량 확대 시 막대한 비용이 소요되어 버퍼로 사용하는데 무리가 있다. 이하, 도 5 내지 8을 참조하여 상기 조건을 만족시키기 위한 비디오 캡쳐 카드(110)의 구성을 보다 상세히 살펴보도록 하겠다.However, the FIFO inside the high-performance video capture card 110 (refer to reference numeral 151 of FIG. 7) is expensive SRAM, which is only 256 Bytes, which is not suitable for data buffering, and a large cost is required when the capacity is expanded. There is no way to use it. Hereinafter, the configuration of the video capture card 110 to satisfy the above conditions will be described in more detail with reference to FIGS. 5 to 8.

도 5는 본 발명의 비디오 캡쳐 카드를 도시한 블럭도이다.5 is a block diagram illustrating a video capture card of the present invention.

도 5에 도시된 바와 같이, 비디오 캡쳐 카드(110)는 아날로그 비디오 신호를 디지털 비디오 신호로 변환하는 비디오 디코더(120), 변환된 디지털 비디오 신호를 버퍼링하기 위한 데이터를 추출하고 하기 프레임 버퍼를 제어하는 버퍼링 제어부(130), 상기 버퍼링 제어부(130)의 제어 신호에 따라 데이터를 버퍼링하는 프레임 버퍼(140), 상기 프레임 버퍼(140)에 저장된 비디오 데이터를 내재된 FIFO(도 7의 도면부호 151 참조)로 재차 버퍼링하고, PCI 버스(도 7의 도면부호 170 참조)로 전송하는 PCI 인터페이스부(150)를 포함한다. 상기 버퍼링 제어부(130) 및 상기 PCI 인터페이스부(150)는 하나의 칩으로 제작될 수도 있다. As shown in FIG. 5, the video capture card 110 extracts data for buffering the converted digital video signal, and a video decoder 120 for converting an analog video signal into a digital video signal. A buffering controller 130, a frame buffer 140 for buffering data according to the control signal of the buffering controller 130, and a FIFO embedded with video data stored in the frame buffer 140 (see reference numeral 151 of FIG. 7). And a PCI interface unit 150 for buffering and transmitting to the PCI bus (see reference numeral 170 of FIG. 7). The buffering control unit 130 and the PCI interface unit 150 may be manufactured as one chip.

상기 비디오 디코더(120)는 아날로그 CVBS(Composite Video Base Signal)를 입력으로 받아 디지털 신호로 변환하여 출력한다. 출력 형식은 디지털 비디오 데이터와 타이밍 정보(Vertical Sync, Horizontal Sync, Field, Blank)를 별도로 보내는 경우와 디지털 비디오 데이터 사이에 타이밍 정보를 삽입하는 2가지 방식이 있다. 상기 타이밍 정보가 삽입되어 있는 모드의 경우 버퍼링 제어부(130)의 핀 수를 절약할 수 있으나, 상기 버퍼링 제어부(130)에서 타이밍 정보를 추출할 수 있는 로직이 추가로 필요하다는 단점이 있다. 상기 비디오 디코더(120)는 선택적 구성요소로서 상기 비디오 캡쳐 카드(110)에 디지털 신호가 직접 입력될 수도 있다. 상기 버퍼링 제어부(130)로 입력되는 BT.656 포맷의 비디오 데이터는 27 Mhz의 클럭(Clock)신호와 동기화되어 버퍼링 제어부(130)에 입력된다. 상기 버퍼링 제어부 (130) 에 입력되는 데이터 중 수직 공백(Vertical Blanking)과 수평 공백(Horizontal Blanking) 구간을 제외한 나머지 데이터는 모두 유효 데이터로 프레임 버퍼(140)에 전송된다. 일 예로 한 라인 중 수평 공백을 제외한, 720 Pixel(= 720 x 2 Bytes/Pixel = 1440 Bytes)의 데이터가 연속해서 입력된다.The video decoder 120 receives an analog composite video base signal (CVBS) as an input, converts the digital signal into a digital signal, and outputs the digital signal. There are two types of output formats, in which digital video data and timing information (Vertical Sync, Horizontal Sync, Field, Blank) are separately transmitted and timing information is inserted between the digital video data. In the case in which the timing information is inserted, the number of pins of the buffering controller 130 can be saved, but there is a disadvantage in that additional logic is required to extract timing information from the buffering controller 130. The video decoder 120 may be an optional component and a digital signal may be directly input to the video capture card 110. The BT.656-format video data input to the buffering controller 130 is input to the buffering controller 130 in synchronization with a clock signal of 27 MHz. Of the data input to the buffering controller 130, all remaining data except for the vertical blanking and the horizontal blanking sections are transmitted to the frame buffer 140 as valid data. As an example, data of 720 pixels (= 720 x 2 Bytes / Pixel = 1440 Bytes) is continuously input except for a horizontal space in one line.

상기 버퍼링 제어부(130)는 상기 비디오 디코더(120)를 통하여 디지털 신호로 변환된 데이터를 상기 프레임 버퍼(140)에 버퍼링하기 위한 제어신호를 생성하고, 한시적으로 프레이 버퍼(140)에 버퍼링된 데이터를 상기 PCI 인터페이스부(150)로 전송한다. 상기 프레임 버퍼(140)로는 SDRAM이 사용될 수 있다. 상기 SDRAM은 버스트 액세스를 해야 성능이 향상되므로 버퍼링이 필요하다. SDRAM을 이용한 버퍼링을 위해 64 비트 128 깊이(Depth)의 FIFO(도 6의 도면부호 133 참조)가 사용된다. 비디오 신호 1 채널당 64x128 크기의 FIFO(133)가 사용될 수 있다. 즉, 입력 채널용 FIFO(133) 16 개, SDRAM 읽기용 FIFO(133) 1개를 포함해 총 18개의 FIFO(133)가 필요하다.The buffering controller 130 generates a control signal for buffering the data converted into the digital signal through the video decoder 120 in the frame buffer 140, and temporarily stores the data buffered in the frame buffer 140. Transmission to the PCI interface unit 150. SDRAM may be used as the frame buffer 140. The SDRAM requires buffering because burst access improves performance. A 64-bit 128 depth FIFO (see 133 in FIG. 6) is used for buffering with SDRAM. A FIFO 133 of 64x128 size may be used per channel of the video signal. That is, a total of 18 FIFOs 133 are required, including 16 FIFOs 133 for the input channel and one FIFO 133 for reading the SDRAM.

상기 버퍼링 제어부(130)를 통하여 상기 프레임 버퍼(140)에 저장된 디지털 비디오 데이터는 상기 PCI 인터페이스부(150)의 요구에 따라 로컬 버스(Local Bus;160)를 통해 상기 PCI 인터페이스부(150)로 전송되고, 상기 PCI 인터페이스부(150)로부터 PCI 버스(도 7의 도면부호 170 참조)를 통하여 PC 시스템 메모리(도 7의 도면부호 400 참조)로 전송된다.Digital video data stored in the frame buffer 140 through the buffering control unit 130 is transmitted to the PCI interface unit 150 through a local bus 160 according to a request of the PCI interface unit 150. The data is transmitted from the PCI interface unit 150 to the PC system memory (see 400 in FIG. 7) through the PCI bus (see 170 in FIG. 7).

상기 과정을 하나의 채널을 통하여 입력되는 신호를 예로 들어 정리하면 다음과 같다. ① 아날로그 비디오 신호는 상기 비디오 디코더(120)를 통하여 디지털 비디오 신호로 변환된다. ② 상기 디지털로 변환된 비디오 신호는 프레임별로 구분되어 상기 버퍼링 제어부(130)로 입력되고, 상기 버퍼링 제어부(130)의 제어 신호에 따라 프레임 버퍼(140)의 저장 영역 A(도 8 참조)에 한시적으로 저장된다. ③ 상기 프레임 버퍼(140)의 저장 영역 A에 기준치 이상의 데이터가 저장되면 상기 버퍼링 제어부(130)는 상기 PCI 인터페이스부(150)에 그 사실을 통보한다. ④ 상기 버퍼링 제어부(130)는 포화된 저장 영역 A 에 버퍼링을 중지하고, 비어있는 저장 영역 B(도 8 참조)에 연이어 데이터를 저장한다. 즉, 상기 프레임 버퍼(140)는 하나의 SDRAM을 두 영역으로 분할하거나, 두 개의 SDRAM을 사용하여 핑퐁 형식으로 데이터를 버퍼링한다. ⑤ 상기 저장 영역 A 가 포화 상태임을 통지받은 PCI 인터페이스부(150)는 상기 PCI 버스(170)에 데이터의 전송을 요청한다. ⑥ 상기 PCI 버스(170)로부터 상기 요청 신호에 대한 응답으로 수락 신호를 수신하면, 상기 버퍼링 제어부(130)는 상기 프레임 버퍼(140)의 저장 영역 A에 포화된 데이터를 상기 PCI 인터페이스부(150)로 전달한다. ⑦ 상기 PCI 인터페이스부(150)는 상기 프레임 버퍼(140)로부터 전달받은 데이터를 PCI 버스(170)를 통해 PC의 시스템 메모리(400)로 전송한다. 이는 이하, 도 8을 참조하여 보다 상세히 설명한다.The process is summarized as an example of a signal input through one channel as follows. ① The analog video signal is converted into a digital video signal through the video decoder 120. ② The digitally converted video signal is divided into frames and input to the buffering controller 130, and is temporarily limited to the storage area A (see FIG. 8) of the frame buffer 140 according to a control signal of the buffering controller 130. Stored as. ③ When data equal to or greater than a reference value is stored in the storage area A of the frame buffer 140, the buffering controller 130 notifies the PCI interface unit 150 of the fact. (4) The buffering control unit 130 stops buffering in the saturated storage area A and sequentially stores data in the empty storage area B (see FIG. 8). That is, the frame buffer 140 divides one SDRAM into two regions or buffers data in a ping-pong format using two SDRAMs. The PCI interface unit 150 notified that the storage area A is saturated, requests the PCI bus 170 to transmit data. ⑥ When the accept signal is received from the PCI bus 170 in response to the request signal, the buffering controller 130 transmits the data saturated in the storage area A of the frame buffer 140 to the PCI interface unit 150. To pass. ⑦ The PCI interface unit 150 transmits the data received from the frame buffer 140 to the system memory 400 of the PC through the PCI bus 170. This will be described below in more detail with reference to FIG. 8.

도 6은 본 발명의 버퍼링 제어부의 구성을 보다 상세히 도시한 블럭도이다.6 is a block diagram illustrating in detail the configuration of the buffering control unit of the present invention.

도 6을 참조하면, 상기 버퍼링 제어부(130)는 타이밍 정보 추출 모듈(132), FIFO(133) 및 프레임 버퍼 주소설정 모듈(134)의 서브 모듈로 구성된 16 개의 비디오 신호 인터페이스 수단(131)과, 비디오 데이터 독출 수단(138)과, 프레임 버퍼(140)의 제어를 위한 SDRAM 컨트롤러(SDRAM Controller;136) 및 상기 프레임 버퍼(140)와 연동하는 16 개의 비디오 신호 인터페이스 수단(131)과, 1 개의 비디오 데이터 독출 수단(138)을 중재하는 SDRAM 아비터(SDRAM Arbiter;137) 를 포함한다.Referring to FIG. 6, the buffering controller 130 includes 16 video signal interface means 131 including sub-modules of the timing information extraction module 132, the FIFO 133, and the frame buffer address setting module 134. A video data reading means 138, an SDRAM controller 136 for controlling the frame buffer 140, 16 video signal interface means 131 cooperating with the frame buffer 140, and one video And an SDRAM Arbiter 137 which mediates the data reading means 138.

다채널 실시간 비디오 데이터와 호스트 CPU의 캡쳐가 프레임 버퍼(140)의 대역폭을 시분할로 공유하기 위해서는 복수의 채널을 통하여 실시간으로 입력되는 비디오 데이터는 버퍼링 제어부(130)를 통하여 프레임 버퍼(140)에 효율적으로 버퍼링 되어야 한다. 이를 위하여 상기 타이밍 정보 추출 모듈(132)은 ITU-R. 656 형식으로 입력되는 디지털 비디오 신호로부터 타이밍 정보(Horizontal Sync, Vertical Sync, Field 등)를 추출하고, 수직 싱크(Vertical Sync)와 필드(Field) 신호를 참조하여 프레임의 시작을 판단하고, 상기 프레임 버퍼(140)에 저장되는 비디오 데이터의 주소 생성을 참조한다. 또한 최대 크기가 아닌 다른 해상도로 캡쳐되는 비디오 데이터 중에서 유효 픽셀만을 선별한다.In order for the multi-channel real-time video data and the capture of the host CPU to share the bandwidth of the frame buffer 140 in time division, the video data input in real time through a plurality of channels is efficiently applied to the frame buffer 140 through the buffering controller 130. Must be buffered. To this end, the timing information extraction module 132 is configured in ITU-R. Extract timing information (Horizontal Sync, Vertical Sync, Field, etc.) from the digital video signal input in 656 format, determine the start of the frame with reference to the Vertical Sync and Field signals, and determine the frame buffer. Reference is made to address generation of video data stored in 140. It also selects only effective pixels from video data captured at a resolution other than the maximum size.

상기 FIFO(133)는 128 깊이 x 64 비트의 크기로, 상기 타이밍 정보 추출 모듈(132)을 통해 결정된 유효 픽셀을 저장하고, SDRAM의 버스트 액세스를 위한 버퍼링에 사용된다. 상기 FIFO(133)는 입력단은 비디오 데이터의 클락인 27 Mhz, 출력단은 SDRAM의 동작주파수인 133 Mhz로 동작하는 듀얼 클럭(Dual Clock) 특성을 가지며, SDRAM의 데이터 버스 폭과 같은 64 비트로 동작한다. 상기 FIFO(133)의 깊이는 한정된 버퍼링 제어부(130) 내부 메모리의 크기로 인하여 적정 수준으로 제한되어야 한다.The FIFO 133 has a depth of 128 bits x 64 bits and stores valid pixels determined by the timing information extraction module 132 and is used for buffering for burst access of the SDRAM. The FIFO 133 has a dual clock characteristic of operating at 27 Mhz, which is a clock of video data, and an output terminal of 133 Mhz, which is an operating frequency of the SDRAM. The FIFO 133 operates at 64 bits equal to the data bus width of the SDRAM. The depth of the FIFO 133 should be limited to an appropriate level due to the limited size of the internal memory of the buffering controller 130.

한편, 실시간으로 들어오는 비디오 데이터는 프레임의 시작부터 정해진 프레임 버퍼(140)의 위치에 저장되어야 한다. 이를 위해 프레임 버퍼 주소설정 모듈 (134)은 상기 타이밍 정보 추출 모듈(132)로부터 수직 싱크와 필드 신호를 기준으로 프레임의 시작을 판단하고, 이때 상기 프레임 버퍼(140)에 저장되는 주소를 동기화시킨다. 이 주소는 비디오 데이터가 프레임 버퍼(140)에 저장될 때 계속 유지, 관리된다.On the other hand, video data coming in real time should be stored in the position of the frame buffer 140 determined from the start of the frame. To this end, the frame buffer address setting module 134 determines the start of the frame from the timing information extraction module 132 based on the vertical sync and field signals, and synchronizes the address stored in the frame buffer 140 at this time. This address is maintained and maintained when video data is stored in the frame buffer 140.

한편, 원하는 특정 채널의 비디오 신호를 캡쳐하고자 할 때 상기 PCI 인터페이스부(150)에 프레임 버퍼(140)의 주소와 전송할 사이즈를 설정하면 상기 비디오 데이터 독출 수단(138)에서 기설정된 사이즈만큼의 데이터 독출을 수행한다. 상기 프레임 버퍼 주소제공 모듈(135)은 상기 프레임 버퍼(140)의 주소 위치를 증가시키면서 다음번 전송의 시작 주소를 제공하는 역할을 수행한다.On the other hand, when capturing a video signal of a specific channel desired, the address of the frame buffer 140 and the size to be transmitted to the PCI interface unit 150 are set, and the video data reading means 138 reads data of a predetermined size. Do this. The frame buffer address providing module 135 increases the address position of the frame buffer 140 and provides a start address of the next transmission.

상기 SDRAM 컨트롤러(136)는 프레임 버퍼로 사용되는 SDRAM을 제어한다. 상기 SDRAM 컨트롤러(136)의 동작 주파수는 133 Mhz, 데이터 버스 폭은 64 비트이다. 한편, 상기 SDRAM 아비터(SDRAM Arbiter;137)는 상기 프레임 버퍼(140)와 연동하는 16 개의 비디오 신호 인터페이스 수단(131)과, 1 개의 비디오 데이터 독출 수단 (138)을 중재한다.The SDRAM controller 136 controls the SDRAM used as the frame buffer. The operating frequency of the SDRAM controller 136 is 133 Mhz and the data bus width is 64 bits. Meanwhile, the SDRAM arbiter 137 arbitrates 16 video signal interface means 131 and one video data read means 138 that interoperate with the frame buffer 140.

도 7은 본 발명의 PCI 인터페이스부를 통한 프레임 버퍼와 PC 시스템 메모리 사이의 데이터 전송과정을 도시한 도면이다.7 is a diagram illustrating a data transmission process between a frame buffer and a PC system memory through the PCI interface unit of the present invention.

도 7을 참조하면, 비디오 데이터는 버퍼링 제어부(130)의 제어에 따라 프레임 버퍼(140)의 저장 영역 A(도 8 참조)에 한시적으로 저장된다. 상기 프레임 버퍼(140)의 저장 영역 A에 기준치 이상의 데이터가 저장되면 상기 버퍼링 제어부(130)는 상기 PCI 인터페이스부(150)에 그 사실을 통보한다. 상기 버퍼링 제어부(130)는 포화된 저장 영역 A에 버퍼링을 중지하고, 비어있는 저장 영역 B에 연이어 데이터를 저장한다. 상기 저장 영역 A가 포화 상태임을 통지받은 PCI 인터페이스부(150)는 상기 PCI 버스(170)에 데이터의 전송을 요청한다. 상기 PCI 버스(170)로부터 상기 요청에 대한 허락을 얻으면, 상기 버퍼링 제어부(130)는 상기 프레임 버퍼(140)의 저장 영역 A에 포화된 데이터를 로컬 버스(160)를 통하여 상기 PCI 인터페이스부(150)로 전달한다. 상기 PCI 인터페이스부(150)는 상기 프레임 버 퍼(140)로부터 전달받은 데이터를 FIFO(151)를 통하여 재차 버퍼링하고, PCI 버스(170)를 통해 PC의 시스템 메모리(400)로 전송한다.Referring to FIG. 7, video data is temporarily stored in the storage area A (see FIG. 8) of the frame buffer 140 under the control of the buffering controller 130. When data equal to or greater than a reference value is stored in the storage area A of the frame buffer 140, the buffering controller 130 notifies the PCI interface unit 150 of the fact. The buffering control unit 130 stops buffering in the saturated storage area A and stores data successively in the empty storage area B. The PCI interface unit 150 notified that the storage area A is saturated, requests the PCI bus 170 to transmit data. When the permission for the request is obtained from the PCI bus 170, the buffering controller 130 transmits the data saturated in the storage area A of the frame buffer 140 through the local bus 160 to the PCI interface unit 150. To pass). The PCI interface unit 150 buffers the data received from the frame buffer 140 again through the FIFO 151 and transmits the data to the system memory 400 of the PC through the PCI bus 170.

도 8은 본 발명의 프레임 버퍼의 구조를 도시한 도면이다.8 is a diagram showing the structure of a frame buffer of the present invention.

도 8을 참조하면, 프레임 버퍼(140)는 16 채널의 비디오 데이터를 적재하기 위한 16개의 메모리 저장 영역과 각 채널별로 입력되는 데이터를 프레임 별로 번갈아 저장하기 위해 구분된 A, B 저장 영역을 포함한다. Referring to FIG. 8, the frame buffer 140 includes 16 memory storage areas for loading 16 channels of video data, and A and B storage areas divided to alternately store data input for each channel for each frame. .

상기 비디오 디코더(120)로부터 출력되는 YUV4:2:2 포맷의 데이터를 저장하는데는 1 화소 당 2 바이트의 저장공간이 필요하다. 일 예로 PAL의 경우 최대 해상도는 720x576 화소로 정의된다. 최대 해상도의 PAL 프레임을 저장하기 위한 메모리의 크기는 적어도 720x576x2 = 829,440 Bytes 이상이어야 한다. 즉, 비디오 데이터 1 프레임을 저장하기 위한 A, B 각 저장 영역의 최소 공간은 해상도 720x576 크기의 픽셀을 저장할 수 있는 829,440 Bytes 이상이어야 한다.In order to store the YUV4: 2: 2 format data output from the video decoder 120, two bytes of storage space are required for one pixel. For example, in the case of PAL, the maximum resolution is defined as 720x576 pixels. The size of the memory for storing the maximum resolution PAL frame should be at least 720x576x2 = 829,440 Bytes. That is, the minimum space of each of the storage areas A and B for storing one frame of video data should be 829,440 Bytes or more capable of storing pixels having a resolution of 720x576.

한편, 상기 최소 크기 이상의 저장공간이 구비된 각 영역은 핑퐁 기법을 이용하여 데이터의 저장과 독출을 수행한다. 즉, 각 채널당 구분된 2 개의 영역(A, B)에서 데이터의 쓰기와 읽기가 동시에 발생하지 않도록 A 영역에 데이터를 쓰고 있을 때는 B 영역의 데이터를 읽고, B 영역에 데이터를 쓰고 있을 때는 A 영역의 데이터를 읽는다. 보다 구체적으로, 약 25 MBytes/sec(720x576x2 Bytes x 30 Frame/sec = 24883200 Bytes/sec)의 속도로 입력되는 데이터를 먼저 A 영역에 버퍼링 하였다면, A 영역의 용량이 일정 수준 이상 차게 되면, B 영역을 이용하여 데이 터를 저장하게 되는 것이다.On the other hand, each area provided with a storage space of the minimum size or more to store and read data using the ping-pong technique. In other words, read data from area B when data is written in area A so that data writing and reading does not occur simultaneously in two areas (A, B) separated for each channel. Read data from More specifically, if the data inputted at a rate of about 25 MBytes / sec (720x576x2 Bytes x 30 Frame / sec = 24883200 Bytes / sec) is buffered in the A area first, when the capacity of the A area is filled to a predetermined level or more, To save the data.

한편, 상기 프레임 버퍼(140)는 상기 버퍼링 제어부(130) 내의 FIFO(133)와 서로 다른 웨이퍼로 형성하는 것이 수율면에서 보다 유리하다.On the other hand, the frame buffer 140 is formed in a wafer different from the FIFO 133 in the buffering controller 130 is more advantageous in terms of yield.

상기 설명한 비디오 캡쳐 카드의 실제 성능을 확인하기 위하여 각각의 해상도 별로 최대 캡쳐 가능한 FPS(Frame Per Second)를 측정한 결과가 표 1과 같다. Table 1 shows the results of measuring the maximum capture frame per second (FPS) for each resolution to confirm the actual performance of the video capture card described above.

비디오 포맷Video format 해상도resolution FPSFPS NTSC  NTSC 352x240352 x 240 480480 704x240704x240 341341 704x480704x480 9898 PAL  PAL 352x288352 x 288 400 400 704x288704x288 302 302 704x576704x576 80 80

표 1을 참조하면, NTSC 352x240 해상도의 경우는 16 채널 모두 30 FPS(총 480), PAL 352x288 해상도의 경우는 16 채널 모두 25 FPS(총 400 FPS)의 캡쳐 성능을 나타내었다. Referring to Table 1, capture performance of 30 FPS (480 total) for all 16 channels for NTSC 352x240 resolution and 25 FPS (400 FPS for all 16 channels) for PAL 352x288 resolution.

또한, NTSC 704x240 해상도의 경우는 341 FPS, PAL 704x288 해상도의 경우는 302 FPS의 캡쳐 성능을 보였다. In addition, the capture performance of 341 FPS for NTSC 704x240 resolution and 302 FPS for PAL 704x288 resolution.

한편, NTSC 704x480, PAL 704x576 모드의 경우 홀수(ODD) 필드와 짝수(EVEN) 필드를 섞어야 정상적인 이미지를 볼 수 있기 때문에 이 처리를 하는 시간적인 손실로 인하여 비교적 느린 속도인 98 FPS, 80 FPS의 성능을 보였다.On the other hand, in NTSC 704x480 and PAL 704x576 mode, it is necessary to mix odd (ODD) and even (EVEN) fields to see normal images. Showed performance.

그러나 전체적으로 프레임 버퍼를 이용한 버퍼링의 효과로 인하여 원활한 다채널 고속 캡쳐가 이루어짐을 확인할 수 있었다.However, due to the effect of buffering using the frame buffer as a whole, it was confirmed that smooth multi-channel high-speed capture was achieved.

본 발명은 도면에 도시된 일 실시예를 참고로 설명되었으나, 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.Although the present invention has been described with reference to one embodiment shown in the drawings, this is merely exemplary, and those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. . Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

본 발명은 버퍼링 제어부 와 SDRAM을 사용하여 비디오 프레임을 버퍼링함으로써 고속의 프레임 캡쳐가 가능한 고성능의 비디오 캡쳐 카드를 제공하는 효과가 있다.The present invention has the effect of providing a high-performance video capture card capable of high-speed frame capture by buffering the video frame using a buffering control unit and SDRAM.

Claims (16)

적어도 하나의 채널의 디지털 비디오 신호를 입력받아 데이터 버퍼링을 위한 정보를 추출하고, 버퍼링 과정을 제어하는 버퍼링 제어부;A buffering controller configured to receive digital video signals of at least one channel, extract information for data buffering, and control a buffering process; 상기 버퍼링 제어부의 제어 신호에 따라 상기 적어도 하나의 채널에 각각 대응하는 적어도 하나의 저장 영역에 디지털 비디오 데이터를 버퍼링하는 프레임 버퍼; 및A frame buffer for buffering digital video data in at least one storage area corresponding to the at least one channel, respectively, according to a control signal of the buffering controller; And 상기 적어도 하나의 저장 영역 중 하나 이상의 저장 영역에 기준치 이상의 데이터가 저장되는 경우 PCI 버스에 데이터 전송 요청 신호를 송신하고, 상기 PCI 버스로부터 데이터 전송 수락 신호를 수신하면 상기 프레임 버퍼에 저장된 데이터를 독출하여 상기 PCI 버스로 전송하는 PCI 인터페이스부를 포함하는 비디오 캡쳐 카드.When data of more than a reference value is stored in one or more storage areas of the at least one storage area, the data transmission request signal is transmitted to the PCI bus, and when the data transmission acceptance signal is received from the PCI bus, the data stored in the frame buffer is read out. Video capture card including a PCI interface for transmitting to the PCI bus. 제 1항에 있어서,The method of claim 1, 상기 프레임 버퍼의 기준치는 상기 프레임 버퍼의 하나의 저장 영역에 할당된 용량의 1/2인 비디오 캡쳐 카드.And a reference value of the frame buffer is 1/2 of a capacity allocated to one storage area of the frame buffer. 제 1항에 있어서,The method of claim 1, 상기 프레임 버퍼는 SDRAM으로 형성되는 비디오 캡쳐 카드.And the frame buffer is formed of SDRAM. 제 1항에 있어서,The method of claim 1, 상기 프레임 버퍼는 상기 적어도 하나의 저장 영역 각각을 두 영역으로 분할하여 핑퐁 방식으로 데이터를 버퍼링하는 비디오 캡쳐 카드.And the frame buffer divides each of the at least one storage area into two areas to buffer data in a ping-pong manner. 제 1항에 있어서,The method of claim 1, 상기 버퍼링 제어부는 The buffering control unit 상기 프레임 버퍼의 사용을 위한 신호를 전송하는 복수의 비디오 신호 인터페이스 수단과, A plurality of video signal interface means for transmitting signals for use of the frame buffer; 상기 PCI 인터페이스부에 프레임 메모리의 주소와 전송할 데이터의 크기를 설정하고, 원하는 채널의 데이터를 상기 전송 크기만큼 독출하는 비디오 데이터 독출 수단과,Video data reading means for setting an address of a frame memory and a size of data to be transmitted to the PCI interface unit, and reading data of a desired channel by the transmission size; 상기 프레임 버퍼의 제어를 위한 SDRAM 컨트롤러, 및 SDRAM controller for controlling the frame buffer, and 상기 프레임 버퍼와 연동하는 상기 복수의 비디오 신호 인터페이스 수단과, 상기 비디오 데이터 독출 수단을 중재하는 SDRAM 아비터를 포함하는 비디오 캡쳐 카드.And a plurality of video signal interface means interworking with the frame buffer, and an SDRAM arbiter for mediating the video data reading means. 제 5항에 있어서,The method of claim 5, 상기 비디오 신호 인터페이스 수단은 The video signal interface means 입력된 디지털 비디오 신호로부터 타이밍 정보를 추출하고, 프레임의 시작을 판단하는 타이밍 정보 추출 모듈과,A timing information extraction module for extracting timing information from an input digital video signal and determining the start of a frame; 상기 타이밍 정보 추출 모듈을 통하여 결정된 유효 픽셀을 저장하고, 프레임 버퍼의 버스트 액세스를 조력하는 FIFO, 및A FIFO for storing valid pixels determined through the timing information extraction module and for assisting burst access of the frame buffer; and 상기 타이밍 정보 추출 모듈로부터 추출되는 수직 싱크와 필드 신호를 기준으로 데이터 프레임의 시작을 판단하고, 상기 프레임 버퍼의 주소를 동기화시키는 프레임 버퍼 주소설정 모듈을 포함하는 비디오 캡쳐 카드.And a frame buffer addressing module configured to determine the start of a data frame based on the vertical sync and field signals extracted from the timing information extraction module, and to synchronize the address of the frame buffer. 복수의 채널을 통하여 디지털 비디오 신호를 입력받아 데이터 버퍼링을 위한 정보를 추출하고, 프레임 버퍼를 통한 버퍼링 과정을 제어하는 버퍼링 제어부;A buffering controller configured to receive a digital video signal through a plurality of channels, extract information for data buffering, and control a buffering process through a frame buffer; 상기 프레임 버퍼에 기준치 이상의 데이터가 저장되는 경우 PCI 버스에 데이터 전송 요청 신호를 송신하고, 상기 PCI 버스로부터 데이터 전송 수락 신호를 수신하면, 상기 프레임 버퍼에 저장된 데이터를 독출하여 PCI 버스로 전송하는 PCI 인터페이스부를 포함하는 PCI 인터페이스 칩.The PCI interface transmits a data transmission request signal to the PCI bus when data higher than a reference value is stored in the frame buffer, and reads the data stored in the frame buffer and transmits the data to the PCI bus when the data transmission acceptance signal is received from the PCI bus. PCI interface chip containing a part. 제 7항에 있어서,The method of claim 7, wherein 상기 프레임 버퍼는 SDRAM인 PCI 인터페이스 칩.The frame buffer is a PCI interface chip. 제 7항에 있어서,The method of claim 7, wherein 상기 버퍼링 제어부는 상기 프레임 메모리를 상기 복수의 채널에 각각 대응하는 복수의 저장 영역으로 구분하고, The buffering controller divides the frame memory into a plurality of storage regions respectively corresponding to the plurality of channels. 상기 복수의 채널 각각을 통하여 입력되는 디지털 비디오 신호를 상기 복수 의 저장 영역 중 상기 복수의 채널 각각에 대응하는 저장 영역에 저장하는 PCI 인터페이스 칩.And a digital video signal input through each of the plurality of channels in a storage area corresponding to each of the plurality of channels among the plurality of storage areas. 제 9항에 있어서,The method of claim 9, 상기 기준치 이상의 데이터는 상기 복수의 저장 영역 각각의 용량의 1/2인 PCI 인터페이스 칩.And the data above the reference value is 1/2 of the capacity of each of the plurality of storage areas. 제 9항에 있어서,The method of claim 9, 상기 버퍼링 제어부는 상기 복수의 저장 영역 각각을 두 영역으로 분할하여 핑퐁 방식으로 데이터를 버퍼링하는 PCI 인터페이스 칩.The buffering controller divides each of the plurality of storage regions into two regions and buffers data in a ping-pong manner. (A) 입력된 디지털 비디오 신호를 버퍼링 제어부의 제어 신호에 따라 프레임 버퍼의 각 채널에 대응되는 저장 영역에 버퍼링하는 단계;(A) buffering the input digital video signal in a storage area corresponding to each channel of the frame buffer according to a control signal of the buffering controller; (B) 상기 프레임 버퍼의 저장 영역에 기준치 이상의 데이터가 적재되는 채널 발생 시 이를 PCI 인터페이스부에 통지하는 단계;(B) notifying the PCI interface unit when a channel in which data equal to or greater than a reference value is loaded is stored in the storage area of the frame buffer; (C) 상기 통지를 수신한 PCI 인터페이스부가 PCI 버스에 데이터 전송 요청 신호를 전송하는 단계;(C) the PCI interface receiving the notification transmits a data transmission request signal to the PCI bus; (D) 상기 요청 신호에 대한 응답으로 상기 PCI 버스로부터 데이터 전송 수락 신호를 수신하는 경우, 상기 프레임 버퍼에 저장되어 있던 데이터를 독출하여 PCI 인터페이스부로 전송하는 단계; 및(D) when receiving a data transmission acceptance signal from the PCI bus in response to the request signal, reading data stored in the frame buffer and transmitting the data to the PCI interface unit; And (E) 상기 데이터를 PCI 인터페이스부로부터 PCI 버스로 전송하는 단계를 포함하는 다채널 비디오 캡쳐 방법.(E) transmitting the data from the PCI interface unit to the PCI bus. 제 12항에 있어서,The method of claim 12, 상기 (D) 단계는, 상기 프레임 버퍼로부터 전송받은 데이터를 PCI 인터페이스부에 내재된 FIFO로 재차 버퍼링하는 단계가 더 포함되는 다채널 비디오 캡쳐 방법.The step (D) further comprises the step of buffering the data received from the frame buffer back to the FIFO embedded in the PCI interface unit. 제 12항에 있어서,The method of claim 12, 상기 기준치는 저장 영역 용량의 1/2인 다채널 비디오 캡쳐 방법.And the reference value is one half of the storage area capacity. 제 12항에 있어서,The method of claim 12, 상기 프레임 버퍼는 SDRAM으로 형성되는 다채널 비디오 캡쳐 방법.And the frame buffer is formed of SDRAM. 제 12항에 있어서,The method of claim 12, 상기 프레임 버퍼는 상기 저장 영역을 두 영역으로 분할하여 핑퐁 방식으로 데이터를 버퍼링하는 다채널 비디오 캡쳐 방법.The frame buffer divides the storage area into two areas and buffers data in a ping-pong manner.
KR1020060074556A 2006-08-08 2006-08-08 Video capture card having a high quality and capture method of multichannel video KR100776943B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060074556A KR100776943B1 (en) 2006-08-08 2006-08-08 Video capture card having a high quality and capture method of multichannel video

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060074556A KR100776943B1 (en) 2006-08-08 2006-08-08 Video capture card having a high quality and capture method of multichannel video

Publications (1)

Publication Number Publication Date
KR100776943B1 true KR100776943B1 (en) 2007-11-21

Family

ID=39079888

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060074556A KR100776943B1 (en) 2006-08-08 2006-08-08 Video capture card having a high quality and capture method of multichannel video

Country Status (1)

Country Link
KR (1) KR100776943B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109922367A (en) * 2017-12-13 2019-06-21 德克萨斯仪器股份有限公司 Video input port
KR102633455B1 (en) * 2022-08-18 2024-02-07 한국전자기술연구원 Encoding device for multi-channel video

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000050903A (en) * 1999-01-15 2000-08-05 이종수 Digital video capture board
KR100290495B1 (en) 1994-12-23 2001-06-01 로데릭 더블류 루이스 Main memory system with multiple data paths
KR20020008620A (en) * 2000-07-24 2002-01-31 박길순 The system for realtime transfering multimedia data
US20020118293A1 (en) 1999-08-17 2002-08-29 Koichiro Hori Dynamic range video recording and playback system and method
WO2004095757A2 (en) 2003-04-23 2004-11-04 Niket Keshav Patwardhan Rate adaptive data broadcast technique

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100290495B1 (en) 1994-12-23 2001-06-01 로데릭 더블류 루이스 Main memory system with multiple data paths
KR20000050903A (en) * 1999-01-15 2000-08-05 이종수 Digital video capture board
US20020118293A1 (en) 1999-08-17 2002-08-29 Koichiro Hori Dynamic range video recording and playback system and method
KR20020008620A (en) * 2000-07-24 2002-01-31 박길순 The system for realtime transfering multimedia data
WO2004095757A2 (en) 2003-04-23 2004-11-04 Niket Keshav Patwardhan Rate adaptive data broadcast technique

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109922367A (en) * 2017-12-13 2019-06-21 德克萨斯仪器股份有限公司 Video input port
CN109922367B (en) * 2017-12-13 2023-05-12 德克萨斯仪器股份有限公司 Video IC chip, video IC system, and method for video IC chip
US11902612B2 (en) 2017-12-13 2024-02-13 Texas Instruments Incorporated Video input port
KR102633455B1 (en) * 2022-08-18 2024-02-07 한국전자기술연구원 Encoding device for multi-channel video
WO2024038962A1 (en) * 2022-08-18 2024-02-22 한국전자기술연구원 Device for encoding multi-channel image

Similar Documents

Publication Publication Date Title
US5680178A (en) Video multiplexing system for superimposition of scalable video data streams upon a background video data stream
JP4131052B2 (en) Imaging device
US7548586B1 (en) Audio and video processing apparatus
EP0384257A2 (en) Audio video interactive display
CN101572826B (en) Ultrasonic video display device and method
US5369617A (en) High speed memory interface for video teleconferencing applications
US7170553B2 (en) Image processing apparatus, image processing method and portable imaging apparatus
US6570626B1 (en) On-screen display format reduces memory bandwidth for on-screen display systems
US5929933A (en) Video multiplexing system for superimposition of scalable video data streams upon a background video data stream
JP4253881B2 (en) Imaging device
US20060133695A1 (en) Display controller, electronic instrument, and image data supply method
US20070065022A1 (en) Image signal processing apparatus and method
US20070245073A1 (en) Memory controller
JP2000092375A (en) Signal processing unit and its control method
US20060236012A1 (en) Memory controller, image processing controller, and electronic instrument
US6948022B2 (en) Digital image transfer controller
KR100776943B1 (en) Video capture card having a high quality and capture method of multichannel video
EP2012535B1 (en) Direct interface of camera module to general purpose i/o port of digital baseband processor
JP4158245B2 (en) Signal processing device
US20110019089A1 (en) System for video frame synchronization using sub-frame memories
JP4264602B2 (en) Image processing device
US20100254618A1 (en) Method for Accessing Image Data and Related Apparatus
US6154202A (en) Image output apparatus and image decoder
JP6021556B2 (en) Image processing device
JP4532969B2 (en) Data processing apparatus and method

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: 20121109

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20131108

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20141029

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20151105

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20171109

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20181210

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20191104

Year of fee payment: 13