KR100854724B1 - Encoded data transfer method and imaging device performing the method - Google Patents
Encoded data transfer method and imaging device performing the method Download PDFInfo
- Publication number
- KR100854724B1 KR100854724B1 KR1020060120877A KR20060120877A KR100854724B1 KR 100854724 B1 KR100854724 B1 KR 100854724B1 KR 1020060120877 A KR1020060120877 A KR 1020060120877A KR 20060120877 A KR20060120877 A KR 20060120877A KR 100854724 B1 KR100854724 B1 KR 100854724B1
- Authority
- KR
- South Korea
- Prior art keywords
- signal
- output
- sync
- generator
- image data
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000003384 imaging method Methods 0.000 title claims abstract description 27
- 238000012546 transfer Methods 0.000 title abstract description 8
- 230000002159 abnormal effect Effects 0.000 claims abstract description 17
- 230000005540 biological transmission Effects 0.000 claims description 76
- 230000007704 transition Effects 0.000 claims description 39
- 239000003550 marker Substances 0.000 claims description 36
- 230000008569 process Effects 0.000 claims description 13
- 238000003672 processing method Methods 0.000 claims description 6
- 238000012544 monitoring process Methods 0.000 claims description 4
- 238000001514 detection method Methods 0.000 abstract description 5
- 238000012545 processing Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 6
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000001914 filtration Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/80—Camera processing pipelines; Components thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N25/00—Circuitry of solid-state image sensors [SSIS]; Control thereof
- H04N25/60—Noise processing, e.g. detecting, correcting, reducing or removing noise
- H04N25/68—Noise processing, e.g. detecting, correcting, reducing or removing noise applied to defects
- H04N25/683—Noise processing, e.g. detecting, correcting, reducing or removing noise applied to defects by defect estimation performed on the scene signal, e.g. real time or on the fly detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/04—Synchronising
- H04N5/06—Generation of synchronising signals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20048—Transform domain processing
- G06T2207/20052—Discrete cosine transform [DCT]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
인코딩된 데이터 전달 방법 및 그 방법을 수행하는 촬상 장치가 개시된다. 이미지 시그널 프로세서는 이미지 센서로부터 입력된 전기 신호에 상응하는 이미지 데이터를 인코딩하여 인코딩된 이미지 데이터를 생성하는 인코딩부와, 각 프레임에 대해 인코딩부로부터 순차적으로 입력되는 인코딩된 이미지 데이터를 수신단으로 출력하는 데이터 출력부를 포함할 수 있다. 여기서, 상기 출력되는 인코딩된 이미지 데이터가 비정상적인 데이터인 경우 상응하는 판단 신호가 상기 데이터 출력부에 의해 상기 수신단으로 출력될 수 있다. 본 발명에 의해, 인코딩된 영상 데이터의 용이한 에러 검출이 가능하다.An encoded data transfer method and an imaging device that performs the method are disclosed. The image signal processor encodes image data corresponding to an electrical signal input from an image sensor to generate encoded image data, and outputs encoded image data sequentially input from the encoding unit to the receiving end for each frame. It may include a data output unit. Here, when the output encoded image data is abnormal data, a corresponding determination signal may be output to the receiving end by the data output unit. By the present invention, easy error detection of encoded video data is possible.
인코딩, 이미지, JPEG, 이미지 센서 Encoding, image, JPEG, image sensor
Description
도 1은 일반적인 촬상 장치의 구성의 간략하게 나타낸 도면.BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a simplified diagram of a configuration of a general imaging device.
도 2는 일반적인 JPEG 인코딩 과정을 나타낸 도면.2 is a diagram illustrating a general JPEG encoding process.
도 3은 종래의 이미지 시그널 프로세서(ISP, Image Signal Processor)가 인코딩된 데이터를 출력하기 위한 신호 형태를 나타낸 도면.FIG. 3 is a diagram illustrating a signal form for outputting encoded data by a conventional image signal processor (ISP). FIG.
도 4는 본 발명의 일 실시예에 따른 촬상 장치의 구성을 간략히 나타낸 도면.4 is a diagram schematically showing a configuration of an imaging device according to an embodiment of the present invention.
도 5는 본 발명의 일 실시예에 따른 데이터 출력부의 구성을 간략히 나타낸 도면.5 is a diagram schematically showing a configuration of a data output unit according to an embodiment of the present invention.
도 6 및 도 7은 본 발명의 일 실시예에 따른 이미지 시그널 프로세서의 인코딩된 데이터 출력을 위한 신호 파형을 예시한 도면.6 and 7 illustrate signal waveforms for encoded data output of an image signal processor in accordance with one embodiment of the present invention.
본 발명은 데이터 인코딩(encoding)에 관한 것으로, 보다 상세하게는 촬상 장치에서 수행되는 데이터 인코딩에 관한 것이다.TECHNICAL FIELD The present invention relates to data encoding, and more particularly, to data encoding performed in an imaging device.
최근, 소형 및 박형의 촬상 소자가 휴대 전화기나 PDA(Personal Digital Assistant) 등의 소형 및 박형의 휴대용 단말기에 탑재됨으로써, 휴대용 단말기가 촬상 장치로서 기능할 수 있다. 즉, 촬상 소자는 휴대 전화기나 PDA 뿐 아니라 MP3 플레이어 등의 휴대용 단말기에도 구비되어 다양한 장치에서 외부 영상을 전자적인 데이터로 보유할 수 있도록 구현되어 있다. 따라서, 통신 기능을 구비한 휴대용 단말기인 경우 원격지로 음성 정보뿐만 아니라 촬상한 화상 정보도 전송할 수 있게 되었다. In recent years, small and thin image pickup devices are mounted in small and thin portable terminals such as mobile phones and PDAs (Personal Digital Assistants), whereby the portable terminals can function as image pickup devices. That is, the imaging device is provided not only in a mobile phone or a PDA but also in a portable terminal such as an MP3 player so that various devices can hold external images as electronic data. Therefore, in the case of a portable terminal having a communication function, not only the voice information but also the captured image information can be transmitted to a remote place.
이러한 촬상 장치에는 일반적으로 CCD(Charge Coupled Device)형 이미지 센서나 CMOS(Complementary Metal-Oxide Semiconductor)형 이미지 센서 등의 고체 촬상 소자가 사용되고 있다.Generally, solid-state imaging devices, such as a charge coupled device (CCD) type image sensor and a complementary metal-oxide semiconductor (CMOS) type image sensor, are used for such an imaging device.
도 1은 일반적인 촬상 장치의 구성의 간략하게 나타낸 도면이고, 도 2는 일반적인 JPEG 인코딩 과정을 나타낸 도면이며, 도 3은 종래의 이미지 시그널 프로세서(ISP, Image Signal Processor)가 인코딩된 데이터를 출력하기 위한 신호 형태를 나타낸 도면이다.FIG. 1 is a diagram schematically illustrating a configuration of a general image capturing apparatus, FIG. 2 is a diagram illustrating a general JPEG encoding process, and FIG. 3 is a conventional image signal processor (ISP) for outputting encoded data. It is a figure which shows the signal form.
도 1에 도시된 바와 같이, 외부 영상을 전기적인 데이터로 변환하여 표시부(150)에 디스플레이하는 촬상 장치는 이미지 센서(110), 이미지 시그널 프로세서(120, ISP(Image Signal Processor)), 백엔드 칩(130, Back-end chip), 베이스밴드 칩(140, Baseband Chip) 및 표시부(150)를 포함한다. 이외에, 촬상 장치는 변 환된 전기적인 데이터를 저장하기 위한 메모리, 아날로그 신호를 디지털 신호로 변환하는 AD 변환기 등을 더 포함할 수 있다.As illustrated in FIG. 1, an image pickup device that converts an external image into electrical data and displays the same on the
이미지 센서(110)는 베이어 패턴(Bayer Pattern)을 가지는 센서로서, 단위 픽셀별로 렌즈를 통해 입력된 빛의 양에 상응하는 전기 신호(raw data)를 출력한다. The
이미지 시그널 프로세서(120)는 이미지 센서(110)로부터 입력된 전기 신호(raw data)를 YUV값으로 변환하고, 변환된 YUV 값을 백엔드 칩(130)으로 입력한다. YUV 방식은 사람의 눈이 색상보다는 밝기에 민감하다는 사실에 착안한 방식으로, 색을 밝기(Luminance)인 Y성분과 색상(Chrominance)인 U와 V 성분으로 구분한다. Y성분은 오차에 민감하므로 색상 성분인 U와 V보다 많은 비트를 코딩한다. 전형적인 Y:U:V의 비율은 4:2:2 이다. The
이미지 시그널 프로세서(120)는 변환한 YUV 값을 FIFO에 순차적으로 저장시킴으로써 백엔드 칩(130)이 해당 정보를 입력받을 수 있도록 한다.The
백엔드 칩(130)은 입력된 YUV 값을 미리 지정된 인코딩 방법에 의해 JPEG나 BMP로 변환하여 메모리에 저장하거나 이를 디코딩하여 표시부(150)에 디스플레이한다. 백엔드 칩(130)은 이미지의 확대, 축소, 로테이션 등의 기능도 수행할 수 있다. 물론, 도 1에 도시된 바와 같이, 베이스밴드 칩(140)이 백엔드 칩(130)으로부터 디코딩된 데이터를 입력받아 표시부(150)에 디스플레이할 수도 있다. The
베이스밴드 칩(140)은 촬상 장치의 동작을 전반적으로 제어하는 기능을 수행한다. 예를 들어, 키 입력부(도시되지 않음)를 통해 사용자로부터 촬상 명령이 입 력되면 베이스밴드 칩(140)은 백엔드 칩(130)으로 이미지 생성 명령을 전송함으로써 백엔드 칩(130)이 입력된 외부 영상에 상응하는 인코딩된 데이터를 생성하도록 할 수도 있다. The
표시부(150)는 백엔드 칩(130) 또는 베이스밴드 칩(140)의 제어에 의해 제공받은 디코딩된 데이터를 디스플레이한다.The
도 2에는 백엔드 칩(130)에 의해 수행되는 일반적인 JPEG 인코딩(encoding) 과정이 도시되어 있다. JPEG 인코딩 과정(200)은 당업자에게 자명한 사항이므로 간략히 설명하기로 한다.2 illustrates a general JPEG encoding process performed by the
도 2에 도시된 바와 같이, 입력된 YUV값들의 이미지는 8 x 8 픽셀 크기의 블록으로 나뉘어지고, 각 블록에 대해 DCT(이산 코사인 변환, Discrete Cosine Transform)를 수행한다(210). -128~127사이의 8 비트 정수 형태로 입력된 각 픽셀의 화소값은 DCT에 의해 -1024 ~ 1023 사이의 값으로 변환된다.As shown in FIG. 2, the input YUV values are divided into blocks of 8 × 8 pixel size, and a DCT (Discrete Cosine Transform) is performed on each block (210). The pixel value of each pixel input in the form of an 8-bit integer between -128 and 127 is converted into a value between -1024 and 1023 by the DCT.
이어서, 양자화기(Quantizer)는 각 블록의 DCT계수를 시각에 미치는 영향에 따라 가중치를 두어 양자화한다(220). 이 가중치의 테이블을 양자화 테이블이라 한다. 양자화 테이블 값은 DC 근처에서 작은 값을 취하고, 높은 주파수에서는 큰 값을 취하여 정보량이 많은 DC 근처의 데이터를 적은 손실로 보내고 고주파수에서는 높은 압축율을 유도한다.Subsequently, the quantizer quantizes the DCT coefficient of each block with weights according to the effect on time (220). This table of weights is called a quantization table. The quantization table values take small values near DC, and large values at high frequencies, resulting in small loss of data near DC with a large amount of information, and high compression at high frequencies.
이어서, 무손실 코더(Lossless coder)인 엔트로피 인코더(entropy encoder)에 의해 최종 압축된 데이터가 생성된다(230). The final compressed data is then generated 230 by an entropy encoder, which is a lossless coder.
상술한 과정을 통해 인코딩된 데이터는 메모리에 적재된다. 백엔드 칩(130) 은 메모리에 적재된 데이터를 복호화하여 표시부(150)에 디스플레이하는 등의 처리를 수행한다.The data encoded through the above-described process is loaded into the memory. The
메모리에 적재된 데이터들이 복호화 등의 처리를 위해 순차적으로 입력되는 과정의 신호 파형이 도 3에 도시되어 있다. 일반적으로, 백엔드 칩(130)은 YUV/BAYER 포맷의 데이터를 입력받도록 구현되어 있으며, 이런 데이터를 입력받기 위한 인터페이스로서 P_CLK, V_sync, H_sync, DATA 신호를 이용하고 있다.A signal waveform of a process of sequentially inputting data loaded in a memory for processing such as decoding is shown in FIG. 3. In general, the
도 3에 도시된 바와 같이, 종래의 백엔드 칩(130)은 인코딩된 데이터를 후속하는 구성 요소(예를 들어, 디코딩부 등)으로 데이터를 전달함에 있어 전체 과정에서 클럭 신호(P_CLK)의 출력 상태를 온(ON) 상태로 유지하므로, 백엔드 칩(130)은 유효하지 않은 데이터(예를 들어, 0x00를 포함하는 데이터)가 입력되는 동안에도 상호간에 인터페이싱을 위한 동작을 수행하여야 한다.As shown in FIG. 3, the
따라서, 종래의 촬상 장치는 백엔드 칩(130)이 불필요한 동작을 수행함으로써 불필요한 전력 소모가 야기되는 문제점이 있었다. Therefore, the conventional imaging device has a problem that unnecessary power consumption is caused by the unnecessary operation of the
또한, 종래의 촬상 장치는 이미지 시그널 프로세서에서 백엔드 칩으로 영상 데이터 정보를 출력함에 있어, YUV, BAYER, RGB 형태의 영상 데이터 정보를 출력한다. 그러나, 이는 모든 픽셀에 대한 정보를 포함하며, 결과적으로 너무 많은 영상 정보가 제공되어 백엔드 칩이 불필요한 동작을 수행하는 원인이 되며, 또한 불필요한 전력 소모의 원인이 된다.In addition, the conventional imaging device outputs image data information in the form of YUV, BAYER, RGB in outputting image data information from the image signal processor to the back end chip. However, this includes information on all pixels, and as a result, too much image information is provided, which causes the backend chip to perform unnecessary operations and also causes unnecessary power consumption.
따라서 본 발명은 상술한 문제점을 해결하기 위한 것으로, 수신단(예를 들어, 백엔드 칩, 베이스밴드 칩 등 중 어느 하나)의 처리 효율 증진 및 전력 소모를 방지할 수 있는 인코딩된 데이터 전달 방법 및 그 방법을 수행하는 촬상 장치를 제공하기 위한 것이다.Accordingly, the present invention is to solve the above-described problem, and the encoded data transfer method and method for improving the processing efficiency and power consumption of the receiving end (for example, any one of the back-end chip, baseband chip, etc.) To provide an imaging device for performing the.
또한, 본 발명은 수신단에 영상 데이터를 제공함에 있어 인코딩된 데이터의 형태로 한 프레임의 압축된 데이터를 출력함으로써 수신단이 메모리의 기록 인에이블(Write Enable) 신호의 스위칭으로 인한 전력 소모를 억제할 수 있는 인코딩된 데이터 전달 방법 및 그 방법을 수행하는 촬상 장치를 제공하기 위한 것이다. In addition, the present invention outputs the compressed data of one frame in the form of encoded data in providing the image data to the receiving end, the receiving end can suppress the power consumption due to the switching of the write enable signal of the memory The present invention provides an encoded data transfer method and an imaging device that performs the method.
또한, 본 발명은 이미지 시그널 프로세서가 수신단으로 데이터를 출력함에 있어 종래의 동기 신호(즉, H_sync, V_sync)를 에러 검출용으로 이용할 수 있어 영상 데이터의 용이한 에러 검출이 가능한 인코딩된 데이터 전달 방법 및 그 방법을 수행하는 촬상 장치를 제공하기 위한 것이다. In addition, the present invention provides an encoded data transfer method capable of using the conventional synchronization signal (ie, H_sync, V_sync) for error detection when the image signal processor outputs data to the receiving end for easy error detection of the image data and It is to provide an imaging device that performs the method.
또한, 본 발명은 이미지 시그널 프로세서가 인코딩된 데이터를 수신단으로 제공함에 있어 일반적인 인터페이스 구조를 이용함으로써 하드웨어 설계 및 제어 측면에서 유리한 효과를 가지는 인코딩된 데이터 전달 방법 및 그 방법을 수행하는 촬상 장치를 제공하기 위한 것이다.In addition, the present invention provides an encoded data transfer method having an advantageous effect in terms of hardware design and control by using a general interface structure in the image signal processor to provide the encoded data to the receiving end, and to provide an image pickup apparatus that performs the method. It is for.
그 외의 다른 본 발명의 목적들은 이하에 서술되는 바람직한 실시예를 통하여 보다 명확해질 것이다.Other objects of the present invention will become more apparent through the preferred embodiments described below.
상술한 목적을 달성하기 위하여 본 발명의 일 측면에 따르면, 이미지 시그널 프로세서 및/또는 상기 이미지 시그널 프로세서를 포함하는 촬상 장치가 제공된다.According to an aspect of the present invention to achieve the above object, there is provided an image signal processor and / or an imaging device including the image signal processor.
본 발명의 일 실시예에 따르면, 촬상 장치의 이미지 시그널 프로세서는 이미지 센서로부터 입력된 전기 신호에 상응하는 이미지 데이터를 미리 지정된 인코딩 방식에 의해 인코딩하여 인코딩된 이미지 데이터를 생성하는 인코딩부; 및 각 프레임에 대해 상기 인코딩부로부터 순차적으로 입력되는 인코딩된 이미지 데이터를 수신단으로 출력하는 데이터 출력부를 포함할 수 있다. 여기서, 상기 출력되는 인코딩된 이미지 데이터가 비정상적인 데이터인 경우 상응하는 판단 신호가 상기 데이터 출력부에 의해 상기 수신단으로 출력될 수 있다.According to an embodiment of the present invention, an image signal processor of an imaging device includes: an encoding unit which encodes image data corresponding to an electrical signal input from an image sensor by a predetermined encoding method to generate encoded image data; And a data output unit configured to output encoded image data sequentially input from the encoding unit to each receiver for each frame. Here, when the output encoded image data is abnormal data, a corresponding determination signal may be output to the receiving end by the data output unit.
상기 데이터 출력부는 클럭 발생기(Clock Generator)를 포함할 수 있다. 상기 데이터 출력부는 상기 인코딩된 이미지 데이터가 출력되는 구간 중 유효한 데이터가 전달되는 구간에만 클럭(Clock) 신호가 상기 수신단으로 출력되도록 제어할 수 있다.The data output unit may include a clock generator. The data output unit may control a clock signal to be output to the receiver only in a section in which valid data is transmitted among sections in which the encoded image data is output.
상기 데이터 출력부는, 상기 인코딩부로부터 입력되는 인코딩된 이미지 데이터를 미리 지정된 크기 단위로 상기 수신단으로 출력하는 전송 지연부; 판단신호 제어 명령에 따라 하이(High) 또는 로우(Low) 상태의 판단신호를 출력하는 판단신호 발생기; 및 상기 전송 지연부에 입력되는 인코딩된 이미지 데이터가 DCT 연산과정에서 연산 오류가 있었는지 여부, 상기 전송 지연부의 오버플로우(overflow) 발생 여부 중 하나 이상을 감시하여 상응하는 판단신호가 출력되도록 상기 판단신호 발생기를 제어하는 전송 제어부를 포함할 수 있다.The data output unit may include: a transmission delay unit configured to output encoded image data input from the encoding unit to a receiving end in a predetermined size unit; A determination signal generator configured to output a determination signal in a high or low state according to a determination signal control command; And determining whether a corresponding determination signal is output by monitoring one or more of whether an encoded image data input to the transmission delay unit has an operation error during a DCT operation, or whether an overflow occurs in the transmission delay unit. It may include a transmission control unit for controlling the signal generator.
상기 판단신호 발생기는 수직 동기 신호(V_sync) 발생기 또는 수평 동기 신호(H_sync) 발생기 중 어느 하나일 수 있다.The determination signal generator may be either a vertical sync signal V_sync generator or a horizontal sync signal H_sync generator.
상기 전송 제어부는 상기 판단신호 발생기를 제어하여, 상기 연산 오류 또는 상기 오버플로우 발생시 상기 판단신호 발생기에 의해 출력되는 판단신호의 상태 천이점이 상기 인코딩된 이미지 데이터에 대한 STOP MARKER 출력 이전에 발생되도록 하고, 상기 연산 오류 또는 상기 오버플로우 미발생시 상기 판단신호 발생기에 의해 출력되는 판단신호의 상태 천이점이 상기 인코딩된 이미지 데이터에 대한 STOP MARKER 출력 이후에 발생되도록 할 수 있다.The transmission control unit controls the determination signal generator to cause a state transition point of the determination signal output by the determination signal generator when the calculation error or the overflow occurs, before the STOP MARKER output for the encoded image data is generated. When the operation error or the overflow does not occur, the state transition point of the determination signal output by the determination signal generator may be generated after the STOP MARKER output for the encoded image data.
상기 데이터 출력부는, 상기 인코딩부로부터 입력되는 인코딩된 이미지 데이터를 미리 지정된 크기 단위로 상기 수신단으로 출력하는 전송 지연부; 판단신호 제어 명령에 따라 하이(High) 또는 로우(Low) 상태의 판단신호를 각각 출력하는 제1 및 제2 판단신호 발생기; 및 상기 전송 지연부에 입력되는 인코딩된 이미지 데이터가 DCT 연산과정에서 연산 오류가 있었는지 여부, 상기 전송 지연부의 오버플로우(overflow) 발생 여부 중 하나 이상을 감시하여 상응하는 판단신호가 출력되도록 상기 제1 및 제2 판단신호 발생기를 제어하는 전송 제어부를 포함할 수 있다.The data output unit may include: a transmission delay unit configured to output encoded image data input from the encoding unit to a receiving end in a predetermined size unit; First and second determination signal generators respectively outputting a determination signal in a high or low state according to a determination signal control command; And outputting a corresponding determination signal by monitoring one or more of whether an encoded image data input to the transmission delay unit has an operation error during a DCT operation, or whether an overflow occurs in the transmission delay unit. It may include a transmission control unit for controlling the first and second determination signal generator.
상기 제1 및 제2 판단신호 발생기 중 어느 하나는 수직 동기 신호(V_sync) 발생기이고, 상기 제1 및 제2 판단신호 발생기 중 다른 하나는 수평 동기 신호(H_sync) 발생기일 수 있다.One of the first and second determination signal generators may be a vertical synchronization signal (V_sync) generator, and the other of the first and second determination signal generators may be a horizontal synchronization signal (H_sync) generator.
상기 전송 제어부는 상기 연산 오류 또는 상기 오버플로우 발생시 상기 제1 및 제2 판단신호 발생기에 의해 출력되는 제1 및 제2 판단신호 중 하나 이상의 상 태 천이점이 상기 인코딩된 이미지 데이터에 대한 STOP MARKER 출력 이전에 발생되도록 상기 제1 및 제2 판단신호 발생기 중 하나 이상을 제어할 수 있다.The transmission control unit transfers a STOP MARKER output of the encoded image data to at least one state transition point of the first and second determination signals output by the first and second determination signal generators when the operation error or the overflow occurs. One or more of the first and second determination signal generators may be controlled to be generated at.
상기 전송 제어부는 상기 연산 오류 또는 상기 오버플로우 미발생시 상기 제1 및 제2 판단신호 발생기에 의해 출력되는 제1 및 제2 판단신호들의 상태 천이점들이 상기 인코딩된 이미지 데이터에 대한 STOP MARKER 출력 이후에 발생되도록 상기 제1 및 제2 판단신호 발생기를 제어할 수 있다.The transmission control unit may output the state transition points of the first and second determination signals output by the first and second determination signal generators when the operation error or the overflow does not occur after the STOP MARKER output for the encoded image data. The first and second determination signal generators may be controlled to be generated.
상기 전송 제어부는 상기 전송 지연부에 저장되는 상기 인코딩된 이미지 데이터들의 헤더(Header) 정보 및 테일(Tail) 정보를 이용하여 한 프레임에 대한 인코딩된 이미지 데이터이 모두 출력되었는지 여부를 인식할 수 있다.The transmission control unit may recognize whether all of the encoded image data for one frame are output by using header information and tail information of the encoded image data stored in the transmission delay unit.
상기 전송 제어부는 상기 연산 오류 또는 상기 오버플로우 발생시 상기 H_sync 발생기 및 상기 H_sync 발생기에 의해 출력되는 제1 및 제2 판단신호의 상태 천이점들이 일치하지 않는 시점에서 각각 발생되도록 상기 H_sync 발생기 및 상기 H_sync 발생기를 제어할 수 있다. 또한, 상기 전송 제어부는 상기 연산 오류 또는 상기 오버플로우 미발생시 상기 H_sync 발생기 및 상기 H_sync 발생기에 의해 출력되는 제1 및 제2 판단신호의 상태 천이점들이 일치하는 시점에서 각각 발생되도록 상기 H_sync 발생기 및 상기 H_sync 발생기를 제어할 수 있다.The transmission control unit generates the H_sync generator and the H_sync generator so that they are generated when the state transition points of the first and second determination signals output by the H_sync generator and the H_sync generator do not coincide with each other when the operation error or the overflow occurs. Can be controlled. The transmission control unit may be configured to generate the H_sync generator and the controller at a time point at which state transition points of the first and second determination signals output by the H_sync generator and the H_sync generator coincide with each other when the operation error or the overflow does not occur. You can control the H_sync generator.
상기 미리 지정된 인코딩 방식은 JPEG 인코딩 방식, BMP 인코딩 방식, MPEG 인코딩 방식, TV 아웃 방식 중 적어도 어느 하나일 수 있다.The predetermined encoding scheme may be at least one of a JPEG encoding scheme, a BMP encoding scheme, an MPEG encoding scheme, and a TV out scheme.
본 발명의 다른 실시예에 따른 이미지 센서 및 이미지 시그널 프로세서를 포함하는 촬상 장치에서, 상기 이미지 시그널 프로세서는 상기 이미지 센서로부터 입 력된 전기 신호에 상응하는 이미지 데이터를 미리 지정된 인코딩 방식에 의해 인코딩하여 인코딩된 이미지 데이터를 생성하는 인코딩부; 상기 인코딩부로부터 입력되는 인코딩된 이미지 데이터를 미리 지정된 크기 단위로 수신단으로 출력하는 전송 지연부; 판단신호 제어 명령에 따라 하이(High) 또는 로우(Low) 상태의 판단신호를 각각 출력하는 판단신호 발생기; 및 상기 전송 지연부에 입력되는 인코딩된 이미지 데이터가 DCT 연산과정에서 연산 오류가 있었는지 여부, 상기 전송 지연부의 오버플로우(overflow) 발생 여부 중 하나 이상을 감시하여 상응하는 판단신호가 상기 수신단으로 출력되도록 상기 판단신호 발생기를 제어하는 전송 제어부를 포함할 수 있다.In an imaging device including an image sensor and an image signal processor according to another embodiment of the present invention, the image signal processor encodes and encodes image data corresponding to an electrical signal input from the image sensor by a predetermined encoding scheme. An encoding unit for generating image data; A transmission delay unit outputting the encoded image data input from the encoding unit to a receiver in units of a predetermined size; A decision signal generator for outputting a decision signal in a high or low state according to a decision signal control command; And whether the encoded image data input to the transmission delay unit has an operation error during a DCT operation, or whether an overflow occurs in the transmission delay unit and outputs a corresponding determination signal to the receiver. It may include a transmission control unit for controlling the determination signal generator so as to.
상기 이미지 시그널 프로세서는 클럭 발생기(Clock Generator)를 포함할 수 있다. 상기 전송 제어부는 상기 인코딩된 이미지 데이터가 출력되는 구간 중 유효한 데이터가 전달되는 구간에만 클럭(Clock) 신호가 상기 수신단으로 출력되도록 제어할 수 있다.The image signal processor may include a clock generator. The transmission controller may control a clock signal to be output to the receiver only in a section in which valid data is transmitted among sections in which the encoded image data is output.
상기 판단신호 발생기는 수직 동기 신호(V_sync) 발생기 및 수평 동기 신호(H_sync) 발생기중 하나 이상을 포함할 수 있다.The determination signal generator may include at least one of a vertical sync signal V_sync generator and a horizontal sync signal H_sync generator.
상기 전송 제어부는 상기 연산 오류 또는 상기 오버플로우 발생시 상기 V_sync 발생기 및 H_sync 발생기에 의해 출력되는 제1 및 제2 판단신호 중 하나 이상의 상태 천이점이 상기 인코딩된 이미지 데이터에 대한 STOP MARKER 출력 이전에 발생되도록 상기 V_sync 발생기 및 상기 H_sync 발생기 중 하나 이상을 제어할 수 있다.The transmission controller may be configured to generate a state transition point of at least one of the first and second determination signals output by the V_sync generator and the H_sync generator when the operation error or the overflow occurs before the STOP MARKER output for the encoded image data. One or more of the V_sync generator and the H_sync generator may be controlled.
상기 전송 제어부는 상기 연산 오류 또는 상기 오버플로우 미발생시 상기 H_sync 발생기 및 상기 H_sync 발생기에 의해 출력되는 제1 및 제2 판단신호들의 상태 천이점들이 상기 인코딩된 이미지 데이터에 대한 STOP MARKER 출력 이후에 발생되도록 상기 H_sync 발생기 및 상기 V_sync 발생기를 제어할 수 있다.The transmission control unit may generate the state transition points of the first and second determination signals output by the H_sync generator and the H_sync generator after the STOP MARKER output for the encoded image data when the operation error or the overflow does not occur. The H_sync generator and the V_sync generator can be controlled.
또는, 상기 전송 제어부는 상기 연산 오류 또는 상기 오버플로우 발생시 상기 H_sync 발생기 및 상기 H_sync 발생기에 의해 출력되는 제1 및 제2 판단신호의 상태 천이점들이 일치하지 않는 시점에서 각각 발생되도록 상기 H_sync 발생기 및 상기 H_sync 발생기를 제어할 수 있다. 또한, 상기 전송 제어부는 상기 연산 오류 또는 상기 오버플로우 미발생시 상기 H_sync 발생기 및 상기 H_sync 발생기에 의해 출력되는 제1 및 제2 판단신호의 상태 천이점들이 일치하는 시점에서 각각 발생되도록 상기 H_sync 발생기 및 상기 H_sync 발생기를 제어할 수 있다.Alternatively, the transmission controller may be configured to generate the H_sync generator and the controller at a time when state transition points of the first and second determination signals output by the H_sync generator and the H_sync generator do not coincide with each other when the operation error or the overflow occurs. You can control the H_sync generator. The transmission control unit may be configured to generate the H_sync generator and the controller at a time point at which state transition points of the first and second determination signals output by the H_sync generator and the H_sync generator coincide with each other when the operation error or the overflow does not occur. You can control the H_sync generator.
상술한 목적을 달성하기 위하여 본 발명의 다른 측면에 따르면, 이미지 시그널 프로세서에서 수행되는 이미지 시그널 프로세싱 방법 및/또는 그 방법을 수행하기 위한 프로그램이 기록된 기록매체가 제공된다.According to another aspect of the present invention for achieving the above object, there is provided an image signal processing method performed in an image signal processor and / or a recording medium on which a program for performing the method is recorded.
본 발명의 바람직한 일 실시예에 따른 이미지 센서를 구비한 촬상 장치의 이미지 시그널 프로세서에서 수행되는 이미지 시그널 프로세싱 방법은, 인코딩부에 의해 인코딩되어 순차적으로 입력되는 인코딩된 이미지 데이터를 수신단으로 순차적 출력하는 단계; 상기 인코딩된 이미지 데이터가 비정상적인 데이터인지 여부를 판단하는 단계; 및 상기 판단 결과에 따른 상응하는 판단신호를 상기 수신단으로 출력하는 단계를 포함할 수 있다. 여기서, 상기 판단신호는 상기 수신단으로 출력되는 수직 동기 신호(V_sync) 및 수평 동기 신호(H_sync) 중 하나 이상일 수 있다.An image signal processing method performed in an image signal processor of an imaging device having an image sensor according to an exemplary embodiment of the present invention includes sequentially outputting encoded image data encoded by an encoding unit and sequentially input to a receiving end. ; Determining whether the encoded image data is abnormal data; And outputting a corresponding determination signal according to the determination result to the receiver. Here, the determination signal may be at least one of a vertical sync signal V_sync and a horizontal sync signal H_sync output to the receiver.
한 프레임에 대한 인코딩 이미지 데이터의 출력 완료 여부는 상기 입력되는 인코딩된 이미지 데이터들의 헤더(Header) 정보 및 테일(Tail) 정보를 이용하여 판단될 수 있다.Whether the output of the encoded image data for one frame is completed may be determined using header information and tail information of the input encoded image data.
상기 인코딩부로부터 입력되는 인코딩된 이미지 데이터가 DCT 연산과정에서 연산 오류가 있었거나, 상기 입력되는 인코딩된 이미지 데이터가 임시적으로 저장되는 전송 지연부에서 오버플로우(overflow)가 발생되는 경우 비정상적인 데이터인 것으로 판단할 수 있다.The encoded image data input from the encoding unit is an abnormal data when there is an operation error during the DCT operation or an overflow occurs in the transmission delay unit in which the input encoded image data is temporarily stored. You can judge.
상기 인코딩된 이미지 데이터가 비정상적인 데이터인 것으로 판단되면, 상기 수직 동기 신호(V_sync) 및 상기 수평 동기 신호(H_sync) 중 하나 이상이 상기 인코딩된 이미지 데이터에 상응하는 STOP MARKER의 출력 이전에 상태 천이되도록 제어될 수 있다.If it is determined that the encoded image data is abnormal data, one or more of the vertical sync signal V_sync and the horizontal sync signal H_sync are controlled to have a state transition before output of the STOP MARKER corresponding to the encoded image data. Can be.
또는, 상기 인코딩된 이미지 데이터가 비정상적인 데이터인 것으로 판단되면, 상기 수직 동기 신호(V_sync) 및 상기 수평 동기 신호(H_sync)의 상태 천이점이 일치하지 않는 시점에서 각각 발생되도록 제어될 수 있다.Alternatively, when it is determined that the encoded image data is abnormal data, the encoded image data may be controlled to be generated when the state transition points of the vertical synchronization signal V_sync and the horizontal synchronization signal H_sync do not coincide.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발 명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. Terms including ordinal numbers such as first and second may be used to describe various components, but the components are not limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component. The term and / or includes a combination of a plurality of related items or any item of a plurality of related items.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that there is no other component in between.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징 들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.
이하, 첨부한 도면들을 참조하여 본 발명에 따른 실시예들을 상세히 설명하기로 하며, 첨부 도면을 참조하여 설명함에 있어 도면 부호에 상관없이 동일하거나 대응하는 구성 요소는 동일한 참조번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 또한, 본 발명의 실시예를 설명함에 있어, 본 발명의 핵심 사항인 이미지 시그널 프로세서의 처리 동작만을 중심으로 설명하지만, 본 발명의 권리범위가 이에 제한되지 않음은 자명하다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings, and in describing the present invention with reference to the accompanying drawings, the same or corresponding elements are denoted by the same reference numerals regardless of the reference numerals, and duplicates thereof. The description will be omitted. In addition, in the following description of the embodiments of the present invention, only the processing operations of the image signal processor, which is the core of the present invention, will be described. However, the scope of the present invention is not limited thereto.
도 4는 본 발명의 일 실시예에 따른 촬상 장치의 구성을 간략히 나타낸 도면이고, 도 5는 본 발명의 일 실시예에 따른 데이터 출력부(430)의 구성을 간략히 나타낸 도면이며, 도 6 및 도 7은 본 발명의 일 실시예에 따른 이미지 시그널 프로세서(400)의 인코딩된 데이터 출력을 위한 신호 파형을 예시한 도면이다. 4 is a view schematically showing the configuration of an image pickup device according to an embodiment of the present invention, and FIG. 5 is a view schematically showing the configuration of a
도 4에 도시된 바와 같이, 본 발명에 따른 촬상 장치는 이미지 센서(110), 이미지 시그널 프로세서(400), 백엔드 칩(405)을 포함한다. 이외에, 촬상 장치는 표시부(150), 메모리, 베이스밴드 칩(140), 키 입력부 등을 더 포함할 수 있음은 자명하나, 본 발명의 요지와는 다소 거리감이 있으므로 이에 대한 설명은 생략한다. 또한, 도 4에 도시된 백엔드 칩(405)은 이미지 시그널 프로세서(400)로부터의 출력 신호를 입력받는 수신단의 일 예로서, 이미지 시그널 프로세서(400)가 본 명세서에서 제시된 기술적 사상을 이용하여 출력하는 영상 데이터를 수신하는 수신단이 백엔드 칩(405)에 제한되지 않음은 자명하다.As shown in FIG. 4, the imaging apparatus according to the present invention includes an
이미지 시그널 프로세서(400)는 전처리부(410), 인코더(420) 및 데이터 출력부(430)를 포함할 수 있다. 물론, 이미지 시그널 프로세서(400)는 내부 동작을 위한 클럭 발생기(Clock Generator)를 더 포함할 수 있다.The
전처리부(410)는 JPEG 인코더(420)의 처리를 위한 전처리 과정을 수행한다. 전처리부(410)는 각 프레임에 대해 이미지 센서(110)로부터 전기 신호 형태의 원시 데이터(raw data)를 각 라인별로 입력받아 처리한 후 인코더(420)로 전달할 수 있다.The
전처리 과정에는 컬러 모델 변환(Color Space Transformation), 필터링(Filtering), 다운 샘플링(Color SubSampling) 등이 포함될 수 있다. The preprocessing may include color space transformation, filtering, downsampling, and the like.
컬러 모델 변환(Color Space Transformation)은 RGB 컬러 모델을 YUV(또는 YIQ) 컬러 모델로 변환하며, 이는 화질의 차이에 대한 인식없이 정보의 양을 줄일 수 있기 때문이다.Color Space Transformation converts the RGB color model to a YUV (or YIQ) color model because it can reduce the amount of information without being aware of the difference in picture quality.
필터링(Filtering)은 로패스 필터로 영상을 Smoothing하는 과정으로 압축율 을 높이기 위함이다. Filtering is a process of smoothing the image with a low pass filter to increase the compression ratio.
다운 샘플링(Color SubSampling)은 Y값은 모두 사용하고, 다른 값들은 일부만 사용하고 나머지는 버리는 등의 방법으로 색차(Chrominance) 신호 성분을 다운 샘플링하는 과정이다.Color subsampling is the process of downsampling the chrominance signal components by using all Y values, using only some of the other values, and discarding others.
인코더(420)는 앞서 설명한 방식에 의해 전처리된 원시 데이터(raw data)를 압축 처리하여 인코딩된 데이터를 생성한다. 인코더(420)는 미리 지정된 방식에 따라 입력된 원시 데이터를 압축 처리하며, 압축 처리 방식은 설계 방법에 따라 다양할 수 있으며, 압축 처리 방식에 따라 인코더의 구체적인 명칭도 상이해질 수 있다.The
다만, 이하에서는 현재 가장 일반적으로 사용되는 JPEG 인코딩 방식이 이용되는 경우를 가정하여 설명한다. 따라서, 설명 및 이해의 편의를 위해 이하에서는 인코더(420)가 JPEG 인코딩 방식에 따른 인코딩을 수행하는 JPEG 인코더인 것으로 가정하고, 인코더(420)에 의해 인코딩된 데이터는 JPEG 인코딩된 데이터인 것으로 가정하여 설명한다. 또한, JPEG 인코더에 대해 동일한 참조 부호(즉, 420)을 적용하여 설명하기로 한다.However, hereinafter, it is assumed that the most commonly used JPEG encoding scheme is used. Therefore, for convenience of explanation and understanding, hereinafter, it is assumed that the
JPEG 인코더(420)는 인코딩 처리를 위해 미리 지정된 블록 단위(예를 들어, 8 x 8)로 분할할 수 있도록 하기 위하여 전처리부(410)로부터 입력되는 처리된 원시 데이터를 임시로 저장하기 위한 입력 메모리를 포함할 수 있다. The
또한, JPEG 인코더(420)는 JPEG 인코딩된 데이터를 데이터 출력부(430)로 출력하기 전에 잠시 저장하는 출력 메모리를 더 포함할 수 있다. 출력 메모리는 예를 들어, FIFO일 수 있다. In addition, the
즉, 본 발명에 따른 이미지 시그널 프로세서(400)는 종래의 이미지 시그널 프로세서(120)와 달리 이미지 데이터의 인코딩을 더 수행할 수 있다. 또한, JPEG 인코더(420)(또는 출력 메모리)는 출력 메모리에 JPEG 인코딩된 데이터(또는 유효 데이터)가 어느 정도 채워졌는지 등에 대한 상태 정보를 전송 제어부(550 - 도 5 참조)로 제공할 수도 있다.That is, the
데이터 출력부(430)는 JPEG 인코더(420)에 의해 생성된 JPEG 인코딩된 데이터를 백엔드 칩(405)으로 전달한다. 상술한 바와 같이, 백엔드 칩(405)은 수신단의 일 예로서, JPEG 인코딩된 데이터를 전달하기 위한 수신단이 백엔드 칩(405)으로 제한되지 않음은 자명하다.The
데이터 출력부(430)는 백엔드 칩(405)으로 JPEG 인코딩된 데이터를 전달함에 있어 미리 지정된 주기마다 출력되는 총 데이터(즉, JPEG 인코딩된 데이터 중 유효 데이터(즉, 실제적으로 이미지를 구성하는 JPEG 인코딩된 데이터) 및/또는 무효 데이터)의 크기는 미리 지정된 라인 사이즈와 일치한다. 본 명세서에서의 무효 데이터(또는 더미(Dummy) 데이터)는 JPEG 표준 등에서 유효 데이터로서 언급되지 않은 데이터(즉, 실제적으로 이미지를 구성하지 않는 데이터)를 의미하며, 그 예시로서 0x00(도 3 참조)으로 표시하거나 별도의 데이터가 출력되지 않는 것(도 6 및 도 7의 라인 참조)처럼 도시하기로 한다.The
예를 들어, 백엔드 칩(405)에서 하나의 프레임에 대한 모든 JPEG 인코딩된 데이터가 입력되었다고 인식하는 크기가 640 x 480이라면, 데이터 출력부(430)는 라인 사이즈인 640만큼의 데이터가 출력될 때까지 JPEG 인코더(420)로부터 입력되는 JPEG 인코딩된 데이터들 중 유효 데이터와 더미 데이터를 순차적으로 출력한다. For example, if the size at which the
이 경우, 더미 데이터는 데이터 출력부(430)가 출력한 유효 데이터가 라인 사이즈인 640만큼의 데이터가 되지 않는 경우 640이 될 때까지 형식적으로 추가하는 데이터에 불과할 수 있다. 이는 라인 사이즈 미만의 데이터가 출력된 경우 백엔드 칩(405)이 인식하지 못할 수 있기 때문이다. In this case, the dummy data may be only data added formally until the data becomes 640 when the valid data output by the
상술한 과정은 컬럼 사이즈인 480번만큼 미리 지정된 시간 간격에 의해 순차적, 반복적으로 실시될 것이다. The above-described process will be performed sequentially and repeatedly by a predetermined time interval of 480 times the column size.
도 5에 데이터 출력부(430)의 세부 구성이 도시되어 있다. 5 illustrates a detailed configuration of the
도 5를 참조하면, 데이터 출력부(430)는 AND 게이트(510), 제1 판단신호 발생기(520), 제2 판단신호 발생기(530), 전송 지연부(Delay unit)(540) 및 전송 제어부(550)를 포함한다.Referring to FIG. 5, the
AND 게이트(510)는 모든 입력에 신호가 입력되는 경우에만 클럭 신호(P_CLK)를 백엔드 칩(405)으로 출력한다. 즉, 이미지 시그널 프로세서(400)에 구비된 클럭 발생기(도시되지 않음)로부터 클럭 신호를 입력받고, 전송 제어부(550)로부터 클럭 제어 신호를 입력받아 클럭 제어 신호가 클럭 신호 출력을 지시하는 경우에만 클럭 신호를 백엔드 칩(405)으로 출력한다. 클럭 제어 신호는 하이 신호(High Signal) 또는 로우 신호(Low Signal) 형태일 수 있고, 각각 P_CLK 인에이블(enable) 또는 P_CLK 디스에이블(disable) 신호로서 인식될 수 있다. The AND
제1 판단신호 발생기(520) 및 제2 판단신호 발생기(530)는 백엔드 칩(405)에 서 현재 입력되는 JPEG 인코딩된 데이터가 정상적인지 비정상적인지 여부를 판단할 수 있도록 하기 위한 제1 판단신호와 제2 판단신호를 백엔드 칩(405)으로 출력한다. The first
제1 판단신호 발생기(520)와 제2 판단신호 발생기(530)는 각각 종래에 수신단으로 동기 신호(수직 동기 신호(V_sync) 및 수평 동기 신호(H_sync))를 출력하기 위한 V_sync 발생기와 H_sync 발생기일 수 있다. 따라서, 각 판단신호 발생기에 의해 출력되는 판단신호는 V_sync 출력 핀 및 H_sync 출력 핀을 통해 출력되는 동기신호들일 수 있다. 그러나, 종래의 V_sync와 H_sync의 의미와는 다른 의미로 인식될 수 있다. The first
즉, 종래의 인터페이스 구조를 동일하게 유지하면서 전송 제어부(550)의 제어에 의해 수신단으로 출력되는 신호의 용도를 상이하게 적용함으로써 JPEG 인코딩된 데이터에 대해 보다 용이한 에러 인식이 가능해진다. 이는, JPEG 인코딩된 데이터를 송수신하는 경우, 송신단과 수신단의 관계에서 헤더(Header) 및/또는 테일(Tail)에 포함된 정보(즉, START MARKER(FFD8) 및 STOP MARKER(FFD9))를 이용하여 한 프레임의 시작과 끝을 인식할 수 있어 V_sync과 H_sync의 입출력이 불필요할 수 있기 때문이다.In other words, while maintaining the same interface structure, different applications of the signals output to the receiving end under the control of the
도 5에는 제1 판단신호가 V_sync(수직 동기 신호)이고, 제2 판단신호가 H_sync(수평 동기 신호)인 것으로 가정하여 도시되었으며 이하에서도 이를 기준으로 설명되나, 이에 제한되지 않음은 자명하다.In FIG. 5, it is assumed that the first determination signal is V_sync (vertical synchronization signal), and the second determination signal is H_sync (horizontal synchronization signal), and the following description will be made based on this, but it is obvious.
전송 지연부(540)는 JPEG 인코더(420)로부터 입력되는 JPEG 인코딩된 데이터 를 미리 지정된 크기 단위로 백엔드 칩(405)로 출력한다. 전송 지연부(540)는 예를 들어 JPEG 인코더(420)로부터 입력된 데이터를 일정 시간(예를 들어, 2 ~ 3 클럭) 지연(delay)시켜 출력하도록 하기 위한 레지스터를 포함하거나 FIFO일 수 있다. 예를 들어, JPEG 인코더(420)로부터 입력되는 데이터 크기 단위는 32비트일 수 있고, 백엔드 칩(405)으로 출력되는 데이터 크기 단위는 8비트일 수 있다. The
도 6에는 전송 지연부(540)로부터 JPEG 인코딩된 데이터들이 백엔드 칩(405)으로 출력되는 구간이 제1 판단신호 및 제2 판단신호가 폴링 엣지(falling edge) 시점부터 라이징 엣지(rising edge) 시점까지인 것으로 도시되었다. 그러나, 설계 방법에 따라 JPEG 인코딩된 데이터들이 출력되는 구간에서 제1 판단신호 및/또는 제2 판단신호가 로우 상태(low state)일지 하이 상태(high state)일지 여부는 다양할 수 있다. 예를 들어, 판단신호가 로우 상태인 경우에는 0(zero)인 신호가 출력되는 상태이고, 하이 상태인 경우에는 1인 신호가 출력되는 상태일 수 있다.6, a section in which JPEG encoded data from the
전송 제어부(550)는 현재 백엔드 칩(405)으로 출력될 데이터가 유효 데이터인지 또는 무효 데이터인지 여부에 따라 P_CLK 인에이블(enable) 또는 P_CLK 디스에이블(disable) 신호를 AND 게이트(510)로 출력함으로써 클럭 신호의 출력 여부를 제어한다.The
전송 제어부(550)는 JPEG 인코더(420)로부터 출력되어 전송 지연부(540)에 순차적으로 기록되는 JPEG 인코딩된 데이터들을 감시하여 START MARKER(FFD8)와 STOP MARKER(FFD9)를 캡쳐하여 JPEG 인코딩의 시작과 끝에 관한 정보를 인식할 수 있다. 즉, 이를 통해 JPEG 인코더(420)에 의해 하나의 프레임이 모두 인코딩되었는 지 여부를 인식할 수 있다. 여기서, 전송 제어부(550)는 JPEG 인코더(420)로부터의 V_sync_I 신호의 입력에 의해 새로운 프레임에 대한 JPEG 인코딩된 데이터가 입력될 것임을 인식할 수 있다. 새로운 프레임의 입력을 검출하는 방식은 V_sync 신호의 라이징 엣지(rising edge) 또는 폴링 엣지(falling edge)를 검출하는 방법 등으로 다양할 수 있다. The
또한, 전송 제어부(550)는 어느 하나의 프레임에 대한 JPEG 인코딩된 데이터를 백엔드 칩(405)으로 출력함에 있어, 현재 출력되는 JPEG 인코딩된 데이터가 정상적으로 인코딩된 데이터인지 여부, 전송 지연부(540)가 정상적인 처리 동작을 수행하는지 여부에 따라 제1 판단신호 발생기(520) 및 제2 판단신호 발생기(530)의 판단신호 발생을 제어한다. In addition, when the
전송 제어부(550)가 비정상적인 JPEG 인코딩된 데이터로 인식하는 경우로는 예를 들어 정해진 비트수만큼 덧셈/뺄셈/곱셈 연산을 수행하는 DCT 연산에서 에러가 발생하였음을 감지하는 경우, 전송 지연부(540)에서 오버플로우(overflow)가 발생되는 경우 등이 있을 수 있다. 전송 지연부(540)에서 오버플로우가 발생되는 경우로는 JPEG 인코딩된 데이터의 크기가 비정상적으로 큰 경우, JPEG 인코더(420)의 동작 클럭이 백엔드 칩(405)의 동작 클럭에 비해 지나치게 큰 경우(즉, 데이터가 출력되기 전에 지나치게 많은 데이터들이 축적되어야 하는 경우) 등이 있을 수 있다. 또한 전송 제어부(550)는 사용자가 지정한 압축 데이터의 크기 상한값보다 JPEG 인코딩된 데이터의 크기가 큰 경우 비정상적으로 JPEG 인코딩된 데이터로 인식할 수 있다.When the
상술한 바와 같이, 전송 제어부(550)가 현재 백엔드 칩(405)으로 출력되는 JPEG 인코딩된 데이터가 정상적인 데이터라고 인식하면, 도 6에 도시된 바와 같이 제1 판단신호와 제2 판단신호의 상태 천이점이 STOP MARKER 이후에 나타나도록 제1 판단신호 발생기(520) 및 제2 판단신호 발생기(530)을 제어한다. 상태 천이점은 판단신호가 제1 상태(로우 상태 또는 하이 상태 중 어느 하나)에서 제2 상태(로우 상태 또는 하이 상태 중 다른 하나)로 변환되는 지점으로, 도 6의 경우 STOP MARKER 출력 이후의 임의의 시점에서 나타남을 알 수 있다. 즉, 전송 제어부(550)는 정상적인 JPEG 인코딩된 데이터인 경우 제1 판단신호 발생기(520) 및 제2 판단신호 발생기(530)을 제어하여 STOP MARKER가 백엔드 칩(405)로 출력된 이후에 각각의 판단신호에 대한 상태 천이점이 나타나도록 한다. 백엔드 칩(405)는 STOP MARKER의 입력을 인식함으로써 정상적인 JPEG 인코딩 데이터(하나의 프레임에 대한)가 모두 입력되었음을 인식할 수 있다. As described above, when the
전송 제어부(550)의 제어에 의해 각각의 상태 천이점이 나타나는 시점은 도 6에 예시된 바와 같이 동일한 시점일수도 있으나, STOP MARKER 출력 이후라면 그 시점이 상이할지라도 무방하다. 다만, 후속하는 프레임에 상응하는 JPEG 인코딩된 데이터가 백엔드 칩(405)으로 더 출력되어야 하는 경우라면, 각각의 상태 천이점은 후속하는 프레임에 대한 START MARKER 출력 이전에 나타나도록 제어되어야 한다.The point of time at which each state transition point appears under the control of the
또한 상술한 바와 같이, 전송 제어부(550)가 현재 백엔드 칩(405)으로 출력되는 JPEG 인코딩된 데이터가 비정상적인 데이터(예를 들어, 전송 지연부(540)에서의 오버플로우 발생, DCT 연산에서의 오류 발생 등)라고 인식하면, 도 7에 도시된 바와 같이 제1 판단신호와 제2 판단신호의 상태 천이점 중 하나 이상이 STOP MARKER 이전에 나타나도록 제1 판단신호 발생기(520) 및/또는 제2 판단신호 발생기(530)을 제어한다. 백엔드 칩(405)는 하나 이상의 판단신호에 대한 상태 천이를 인식한 시점에서 아직 STOP MARKER가 입력되지 않았음을 인식함으로써 비정상적인 JPEG 인코딩 데이터(하나의 프레임에 대한)가 입력되고 있음을 인식할 수 있다. In addition, as described above, the JPEG-encoded data currently output to the back-
도 7의 경우 STOP MARKER 출력 이전의 임의의 시점에서 제1 판단신호와 제2 판단신호의 상태 천이점들이 각각 나타남을 알 수 있다. 즉, 전송 제어부(550)는 비정상적인 JPEG 인코딩된 데이터인 경우 제1 판단신호 발생기(520) 및/또는 제2 판단신호 발생기(530)을 제어하여 STOP MARKER가 백엔드 칩(405)로 출력되기 이전에 하나 이상의 판단신호에 대한 상태 천이점이 나타나도록 한다. In FIG. 7, it can be seen that state transition points of the first determination signal and the second determination signal appear at an arbitrary time point before the output of the STOP MARKER. That is, in case of abnormal JPEG encoded data, the
전송 제어부(550)의 제어에 의해 각각의 상태 천이점이 나타나는 시점은 도 7에 예시된 바와 같이 STOP MARKER 출력 이전의 각각 상이한 시점일수도 있으나, STOP MARKER 출력 이전의 동일한 시점일 수도 있다. 또한, STOP MARKER 출력 시점을 기준으로 그 이전과 그 이후에 각각 하나씩 존재(예를 들어, 제1 판단신호의 상태 천이점은 STOP MARKER 출력 이전에 나타나고, 제2 판단신호의 상태 천이점은 STOP MARKER 출력 이후에 나타남)할지라도 무방하다. 다만, 후속하는 프레임에 상응하는 JPEG 인코딩된 데이터가 백엔드 칩(405)으로 더 출력되어야 하는 경우라면, 각각의 상태 천이점은 후속하는 프레임에 대한 START MARKER 출력 이전에 나타나도록 제어되어야 한다.As illustrated in FIG. 7, the time points at which the state transition points appear under the control of the
이제까지 판단신호의 출력 방법을 설명함에 있어 H_sync와 V_sync가 모두 이용되는 경우를 중심으로 설명하였다. 그러나, H_sync와 V_sync 중 어느 하나만을 이용할지라도 해당 신호가 STOP MARKER를 기준으로 이전에 상태 천이점을 나타내는지 그 이후에 상태 천이점을 나타내는지를 판단함으로써 동일하거나 유사한 작용 효과가 가능할 수 있다. 즉, 판단 신호로서 이용되는 특정 동기 신호의 상태 천이점이 STOP MARKER의 출력 이전에 나타난다면 현재 출력되는 JPEG 인코딩된 데이터가 비정상적인 데이터인 것으로 수신단에서 인식하도록 할 수도 있다. 이 경우, 판단 신호로서 이용되지 않는 하나의 동기 신호는 종래와 동일한 용도로서 이용될 수도 있을 것이다.So far, the method of outputting the determination signal has been described based on the case where both H_sync and V_sync are used. However, even if only one of H_sync and V_sync is used, the same or similar effect may be possible by determining whether the corresponding signal indicates a state transition point before or after the STOP MARKER. That is, if the state transition point of the specific synchronization signal used as the determination signal appears before the output of the STOP MARKER, the receiving end may recognize that the currently encoded JPEG encoded data is abnormal data. In this case, one synchronization signal that is not used as the determination signal may be used for the same purpose as in the prior art.
이제까지, 이미지 시그널 프로세서(400)가 JPEG 인코딩 방식을 이용하는 경우만을 중심으로 설명하였으나 BMP 인코딩 방식, MPEG(MPEG 1/2/4, MPEG-4 AVC) 인코딩 방식, TV 아웃 방식 등과 같이 다른 인코딩 방식을 지원하는 경우에도 동일한 데이터 전송 방식이 이용될 수 있음은 자명하다.Until now, the
상술한 바와 같이 본 발명은 수신단(예를 들어, 백엔드 칩, 베이스밴드 칩 등 중 어느 하나)의 처리 효율 증진 및 전력 소모를 방지할 수 있는 효과가 있다.As described above, the present invention has an effect of improving processing efficiency and preventing power consumption of a receiving end (for example, any one of a backend chip, a baseband chip, and the like).
또한, 본 발명은 수신단에 영상 데이터를 제공함에 있어 인코딩된 데이터의 형태로 한 프레임의 압축된 데이터를 출력함으로써 수신단이 메모리의 기록 인에이 블(Write Enable) 신호의 스위칭으로 인한 전력 소모를 억제할 수 있는 효과도 있다.In addition, the present invention outputs the compressed data of one frame in the form of encoded data in providing the image data to the receiving end to suppress the power consumption due to the switching of the write enable signal of the memory by the receiving end. There is also an effect.
또한, 본 발명은 이미지 시그널 프로세서가 수신단으로 데이터를 출력함에 있어 종래의 동기 신호(즉, H_sync, V_sync)를 에러 검출용으로 이용할 수 있어 영상 데이터의 용이한 에러 검출이 가능한 효과도 있다.In addition, in the present invention, when the image signal processor outputs data to the receiving end, conventional synchronization signals (that is, H_sync and V_sync) can be used for error detection, so that error detection of image data can be easily performed.
또한, 본 발명은 이미지 시그널 프로세서가 인코딩된 데이터를 수신단으로 제공함에 있어 일반적인 인터페이스 구조를 이용함으로써 하드웨어 설계 및 제어 측면에서 유리한 효과도 있다.In addition, the present invention has an advantageous effect in terms of hardware design and control by using a general interface structure in providing the encoded data to the receiving end of the image signal processor.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the above has been described with reference to a preferred embodiment of the present invention, those skilled in the art to which the present invention pertains without departing from the spirit and scope of the invention as set forth in the claims below It will be appreciated that modifications and variations can be made.
Claims (27)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060120877A KR100854724B1 (en) | 2006-12-01 | 2006-12-01 | Encoded data transfer method and imaging device performing the method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060120877A KR100854724B1 (en) | 2006-12-01 | 2006-12-01 | Encoded data transfer method and imaging device performing the method |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080050076A KR20080050076A (en) | 2008-06-05 |
KR100854724B1 true KR100854724B1 (en) | 2008-08-27 |
Family
ID=39805587
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060120877A KR100854724B1 (en) | 2006-12-01 | 2006-12-01 | Encoded data transfer method and imaging device performing the method |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100854724B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR19990066839A (en) * | 1997-12-10 | 1999-08-16 | 이데이 노부유끼 | Data Multiplexing Device and Data Multiplexing Method |
KR20020052218A (en) * | 2001-04-14 | 2002-07-03 | 유봉훈 | The method of format conversion and edit for an image of a progressive ccd camera |
KR20030001309A (en) * | 2001-06-22 | 2003-01-06 | 산요 덴키 가부시키가이샤 | Image pickup device |
-
2006
- 2006-12-01 KR KR1020060120877A patent/KR100854724B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR19990066839A (en) * | 1997-12-10 | 1999-08-16 | 이데이 노부유끼 | Data Multiplexing Device and Data Multiplexing Method |
KR20020052218A (en) * | 2001-04-14 | 2002-07-03 | 유봉훈 | The method of format conversion and edit for an image of a progressive ccd camera |
KR20030001309A (en) * | 2001-06-22 | 2003-01-06 | 산요 덴키 가부시키가이샤 | Image pickup device |
Also Published As
Publication number | Publication date |
---|---|
KR20080050076A (en) | 2008-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4932846B2 (en) | Image processing method and apparatus | |
US7948527B2 (en) | Image signal processor and method for outputting deferred vertical synchronous signal | |
EP2296381A2 (en) | Method and apparatus for generating compressed file | |
EP2204998A1 (en) | Method and apparatus for generating a compressed file, and terminal comprising the apparatus | |
US7936378B2 (en) | Image pickup device and encoded data transferring method | |
US20080252740A1 (en) | Image Pickup Device and Encoded Data Transferring Method | |
US20080266415A1 (en) | Image Pickup Device and Encoded Data Outputting Method | |
KR100935541B1 (en) | Image signal processing method and signal processing device performing the same | |
US8154749B2 (en) | Image signal processor and deferred vertical synchronous signal outputting method | |
KR100854724B1 (en) | Encoded data transfer method and imaging device performing the method | |
US20080225165A1 (en) | Image Pickup Device and Encoded Data Transferring Method | |
KR20070047729A (en) | Vertical sync signal delay output method and image signal processor performing the method | |
KR20070047730A (en) | Encoded data transfer method and imaging device performing the method | |
KR100907465B1 (en) | Image signal processing method and signal processing device performing the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20061201 |
|
PA0201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20071128 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20080523 |
|
PG1501 | Laying open of application | ||
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20080821 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20080821 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20110711 Start annual number: 4 End annual number: 4 |
|
FPAY | Annual fee payment |
Payment date: 20120710 Year of fee payment: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20120710 Start annual number: 5 End annual number: 5 |
|
FPAY | Annual fee payment |
Payment date: 20130731 Year of fee payment: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20130731 Start annual number: 6 End annual number: 6 |
|
FPAY | Annual fee payment |
Payment date: 20140728 Year of fee payment: 7 |
|
PR1001 | Payment of annual fee |
Payment date: 20140728 Start annual number: 7 End annual number: 7 |
|
FPAY | Annual fee payment |
Payment date: 20150729 Year of fee payment: 8 |
|
PR1001 | Payment of annual fee |
Payment date: 20150729 Start annual number: 8 End annual number: 8 |
|
FPAY | Annual fee payment |
Payment date: 20160801 Year of fee payment: 9 |
|
PR1001 | Payment of annual fee |
Payment date: 20160801 Start annual number: 9 End annual number: 9 |
|
PC1903 | Unpaid annual fee |
Termination category: Default of registration fee Termination date: 20200601 |