VS6724Q0FB [STMICROELECTRONICS]

2 Megapixel single-chip camera module; 200万像素的单芯片相机模块
VS6724Q0FB
型号: VS6724Q0FB
厂家: ST    ST
描述:

2 Megapixel single-chip camera module
200万像素的单芯片相机模块

消费电路 商用集成电路
文件: 总118页 (文件大小:1426K)
中文:  中文翻译
下载:  下载PDF数据表文档文件
VS6724  
2 Megapixel single-chip camera module  
Preliminary Data  
Features  
1600H x 1200V active pixels  
Class leading 30 fps UXGA progressive scan  
2.2 µm pixel size, 1/3.8 inch optical format  
Quad-element plastic lens, F# 3.2,  
52° horizontal field of view  
8.0 x 8.0 x 5.55 mm ultra low profile fixed focus  
camera module with embedded passives  
Integrated power management with power  
switch, automatic power-on reset and power-  
safe pins  
RGB Bayer color filter array  
Integrated 10-bit ADC  
Integrated digital image processing functions,  
including defect correction, lens shading  
correction, image scaling, interpolation,  
sharpening, gamma correction and color space  
conversion  
Low power consumption, ultra low standby  
current  
24-pin 8.0 mm x 8.0 mm x 5.55 mm shielded  
socket option  
Embedded hardware JPEG compression  
(4:2:0 or 4:2:2) delivering 30 fps streaming  
performance  
Applications  
Mobile phone, videophone  
PDA, toys  
Embedded camera controller for automatic  
exposure control, automatic white balance  
control, black level compensation, 50/60 Hz  
flicker cancelling, flashgun support.  
Medical  
Biometry  
Fully programmable frame rate and output  
Bar code reader  
Lighting control  
derating functions  
Low power 30 fps up to SVGA for video  
capture  
Description  
ITU-R BT.656-4 YUV (YCbCr) 4:2:2 with  
embedded syncs, YUV (YCbCr) 4:0:0, RGB  
565, RGB 444, JPEG, Bayer 10-bit or Bayer 8-  
bit output formats  
The VS6724 is a UXGA resolution CMOS imaging  
device designed for low power systems,  
particularly mobile phone applications.  
Manufactured using ST 0.18 µm CMOS Imaging  
process, it integrates a high-sensitivity pixel array,  
digital image processor and camera control  
functions.  
8-bit parallel video interface, horizontal and  
vertical syncs, 80 MHz (max) clock  
Two-wire serial control interface  
On-chip PLL, 6.5 to 27 MHz clock input  
Analog power supply, from 2.4 V to 3.0 V  
Separate I/O power supply, 1.8 V or 2.8 V  
levels  
July 2007  
Rev 1  
1/118  
This is preliminary information on a new product now in development or undergoing evaluation. Details are subject to  
change without notice.  
www.st.com  
1
Contents  
VS6724  
Contents  
1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8  
1.1  
1.2  
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8  
Signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9  
2
Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10  
2.1  
2.2  
2.3  
Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10  
Imaging pipe diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11  
Sensor array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12  
2.3.1  
2.3.2  
Sensor mode control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12  
Horizontal mirror and vertical flip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12  
2.4  
Recovery engine (RE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13  
2.4.1  
2.4.2  
2.4.3  
2.4.4  
2.4.5  
2.4.6  
2.4.7  
2.4.8  
2.4.9  
Channel offsets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13  
Channel gains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13  
Lens shading compensation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13  
Bayer scaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13  
Cropping module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14  
Zoom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15  
Pan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15  
Derating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15  
Defect correction 1 & 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16  
2.4.10 Spatial noise reduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16  
2.4.11 Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16  
2.5  
Color engine (CE block) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16  
2.5.1  
2.5.2  
2.5.3  
2.5.4  
2.5.5  
2.5.6  
Color matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16  
Aperture correction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17  
Special effects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17  
Gamma correction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17  
YCbCr conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17  
Dither . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17  
2.6  
Video compression module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17  
2.6.1  
2.6.2  
2.6.3  
Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17  
JPEG compression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18  
JPEG squeeze controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19  
2/118  
VS6724  
Contents  
2.6.4  
2.6.5  
FIFO control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20  
JPEG output as a conventional frame . . . . . . . . . . . . . . . . . . . . . . . . . . 21  
2.7  
2.8  
Microprocessor functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23  
2.7.1 Operational mode control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24  
Video pipe context configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27  
2.8.1  
2.8.2  
2.8.3  
Video pipe setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27  
Context switching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27  
ViewLive operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27  
2.9  
Output formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  
2.9.1  
2.9.2  
2.9.3  
2.9.4  
2.9.5  
2.9.6  
Image size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  
Line / frame blanking data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  
YCbCr 4:2:2 data format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  
YCbCr 4:0:0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  
RGB and Bayer 10 bit data formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  
Bayer 8-bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  
2.10 Data synchronization methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  
2.10.1 Embedded codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  
2.10.2 Mode 1 (ITU656 compatible) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33  
2.10.3 Embedded synchronization EXT-CSI . . . . . . . . . . . . . . . . . . . . . . . . . . . 34  
2.10.4 VSYNC and HSYNC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35  
2.10.5 Pixel clock (PCLK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37  
2.11 Timing control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39  
2.11.1 Input clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39  
2.11.2 PLL operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39  
2.11.3 Derating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40  
3
Host communication - I²C control interface . . . . . . . . . . . . . . . . . . . . . 41  
3.1  
3.2  
Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41  
Detailed overview of the message format . . . . . . . . . . . . . . . . . . . . . . . . 42  
3.2.1  
3.2.2  
3.2.3  
3.2.4  
Data valid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43  
Start (S) and Stop (P) conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43  
Acknowledge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44  
Index space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44  
3.3  
Types of messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45  
3.3.1  
3.3.2  
Random location, single data write . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45  
Current location, single data read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46  
3/118  
Contents  
VS6724  
3.3.3  
3.3.4  
3.3.5  
3.3.6  
Random location, single data read . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46  
Multiple location write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47  
Multiple location read stating from the current location . . . . . . . . . . . . . 48  
Multiple location read starting from a random location . . . . . . . . . . . . . 49  
4
Programming model and register description . . . . . . . . . . . . . . . . . . . 50  
4.1  
4.2  
Programming model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50  
Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51  
4.2.1  
4.2.2  
4.2.3  
Register interpreter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51  
Low level control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52  
User interface register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53  
5
6
Optical specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103  
Electrical characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104  
6.1  
6.2  
6.3  
6.4  
6.5  
6.6  
6.7  
Absolute maximum ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104  
Operating conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104  
DC electrical characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105  
External clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107  
Chip enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107  
I²C slave interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108  
Parallel data interface timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111  
7
Application circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112  
User precaution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114  
Package mechanical data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114  
Ordering information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117  
Revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117  
8
9
10  
11  
4/118  
VS6724  
List of tables  
List of tables  
Table 1.  
Table 2.  
Table 3.  
Table 4.  
Table 5.  
Table 6.  
Table 7.  
Table 8.  
Signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9  
JPEG data embedded markers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22  
ITU656 embedded synchronization code definition (even frames). . . . . . . . . . . . . . . . . . . 33  
ITU656 embedded synchronization code definition (odd frames). . . . . . . . . . . . . . . . . . . . 34  
CSI - embedded synchronization code definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34  
Register naming prefix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51  
Data type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51  
Low-level control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52  
Device parameters [read only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53  
Device parameters [read only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53  
Host interface manager status [read only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54  
Run mode control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54  
Mode setup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55  
PipeContext0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56  
PipeContext1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61  
ViewLive control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66  
ViewLive status. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66  
Power management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67  
Video timing parameter host inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67  
Video timing parameter FP inputs (read only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67  
Video timing control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68  
Frame dimension parameter host inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68  
Static frame rate control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69  
Static frame rate status. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69  
Automatic frame rate control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70  
Exposure controls. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71  
Exposure algorithm control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75  
Exposure status [read only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75  
White balance control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76  
White balance constrainer controls. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78  
Image stability [read only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79  
Sensor setup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80  
ExpSensor constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81  
Flash control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81  
Flash status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82  
Lens shading correction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82  
Defect correction 1 controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85  
Defect correction 2 controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85  
Interpolation control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86  
color matrix dampers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86  
sRGB color matrix. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87  
Peaking control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88  
RGB to YCbCr matrix manual control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90  
Gamma manual control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92  
Fade to black . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93  
Dither control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93  
Output control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94  
NoRA controls. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98  
Table 9.  
Table 10.  
Table 11.  
Table 12.  
Table 13.  
Table 14.  
Table 15.  
Table 16.  
Table 17.  
Table 18.  
Table 19.  
Table 20.  
Table 21.  
Table 22.  
Table 23.  
Table 24.  
Table 25.  
Table 26.  
Table 27.  
Table 28.  
Table 29.  
Table 30.  
Table 31.  
Table 32.  
Table 33.  
Table 34.  
Table 35.  
Table 36.  
Table 37.  
Table 38.  
Table 39.  
Table 40.  
Table 41.  
Table 42.  
Table 43.  
Table 44.  
Table 45.  
Table 46.  
Table 47.  
Table 48.  
5/118  
List of tables  
VS6724  
Table 49.  
Table 50.  
Table 51.  
Table 52.  
Table 53.  
Table 54.  
Table 55.  
Table 56.  
Table 57.  
Table 58.  
Special effects control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99  
JPEG image characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101  
Optical specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103  
Absolute maximum ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104  
Supply specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104  
DC electrical characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105  
Typical current consumption - sensor mode UXGA - JPEG UXGA@ 30 fps . . . . . . . . . . 105  
Typical current consumption - sensor mode UXGA - JPEG UXGA @ 15 fps . . . . . . . . . 106  
Typical current consumption - sensor mode UXGA scaled QVGA RGB565 @ 15 fps. . . 106  
Typical current consumption - sensor analogue binning SVGA- scaled QVGA RGB565 @ 15  
fps106  
Table 59.  
Table 60.  
Table 61.  
Table 62.  
Table 63.  
Table 64.  
External clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107  
Serial interface voltage levels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108  
Timing specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109  
Parallel data interface timings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111  
Order codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117  
Document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117  
6/118  
VS6724  
List of figures  
List of figures  
Figure 1.  
Figure 2.  
Figure 3.  
Figure 4.  
Figure 5.  
Figure 6.  
Figure 7.  
Figure 8.  
Figure 9.  
Simplified block diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10  
Imaging pipe block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11  
Sensor array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12  
Scaling of Bayer image. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14  
Crop controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15  
Color matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16  
QCLK options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18  
JPEG Compression image size to squeeze value relationship. . . . . . . . . . . . . . . . . . . . . . 20  
JPEG frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22  
Figure 10. State machine at power -up and user mode transitions . . . . . . . . . . . . . . . . . . . . . . . . . . . 24  
Figure 11. Power up sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25  
Figure 12. ViewLive frame output format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  
Figure 13. Standard Y Cb Cr data order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  
Figure 14. Y Cb Cr data swapping options register bYCbCrSetup . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  
Figure 15. YCbCr 4:0:0 format encapsulated in ITU stream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  
Figure 16. RGB and Bayer data formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  
Figure 17. Bayer 8 output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  
Figure 18. ITU656 frame structure with even codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33  
Figure 19. CSI 2 frame structure (VGA example) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34  
Figure 20. CSI frame structure (VGA example). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35  
Figure 21. HSYNC timing example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36  
Figure 22. VSYNC timing example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37  
Figure 23. QCLK options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38  
Figure 24. Qualification clock. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38  
Figure 25. Write message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41  
Figure 26. Read message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41  
Figure 27. Detailed overview of message format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42  
Figure 28. Device addresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43  
Figure 29. SDA data valid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43  
Figure 30. START and STOP conditions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44  
Figure 31. Data acknowledge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44  
Figure 32. Internal register index space. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45  
Figure 33. Random location, single write. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46  
Figure 34. Current location, single read. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46  
Figure 35. 16-bit index, 8-bit data random index, single data read . . . . . . . . . . . . . . . . . . . . . . . . . . . 47  
Figure 36. 16-bit index, 8-bit data multiple location write. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47  
Figure 37. Multiple location read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48  
Figure 38. Multiple location read starting from a random location . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49  
Figure 39. System / Host view of VS6724 memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50  
Figure 40. Voltage level specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108  
Figure 41. Timing specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110  
Figure 42. SDA/SCL rise and fall times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110  
Figure 43. Parallel data output video timing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111  
Figure 44. Application diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112  
Figure 45. Package outline socket module VS6724 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115  
Figure 46. Package outline socket module VS6724 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116  
7/118  
Overview  
VS6724  
1
Overview  
1.1  
Description  
The VS6724 is a UXGA resolution CMOS imaging device designed for low power systems,  
particularly mobile phone applications.  
Manufactured using ST 0.18 µm CMOS Imaging process, it integrates a high-sensitivity  
pixel array, digital image processor and camera control functions.  
The VS6724 is capable of streaming UXGA video up to 30 fps JPEG and up to 15 fps with  
ITU-R BT.656-4 YCbCr 4:2:2 format. It supports 1.8 V or 2.8 V interface and requires a 2.4  
to 3.0 V analog power supply. Typically, the VS6724 can operate as a 2.8 V single supply  
camera or as a 1.8 V interface / 2.8 V supply camera. The integrated PLL allows for low  
frequency system clock, and flexibility for successful EMC integration. An input clock is  
required in the range 6.5 MHz to 27 MHz.  
The VS6724 camera module uses ST’s second generation “SmOP2” packaging technology:  
the sensor, lens and passives are assembled, tested and focused in a fully automated  
process, allowing high volume and low cost production.  
The device contains an embedded video processor and delivers fully color processed  
images at up to 30 fps UXGA JPEG, or up to 30 fps SVGA YCbCr 4:2:2.  
The video data is output over an 8-bit parallel bus in JPEG (4:2:2 or 4:2:0), RGB, YCbCr or  
Bayer formats and the device is controlled via an I²C interface.  
The VS6724 also includes a wide range of image enhancement functions, designed to  
ensure high image quality, these include:  
Automatic exposure control  
Automatic white balance  
Lens shading compensation  
Defect correction algorithms  
Interpolation (Bayer to RGB conversion)  
Color space conversion  
Sharpening  
Gamma correction  
Flicker cancellation  
NoRA noise reduction algorithm  
Intelligent image scaling  
Special effects  
8/118  
VS6724  
Overview  
1.2  
Signal description  
The VS6724 has 20 electrical connections which are described in Table 1.  
The package details and electrical pinout of the flex connector are shown in Figure 45 on  
page 115 and Figure 46 on page 116.  
Table 1.  
Pad name  
Signal description  
Type  
Description  
Reference voltage  
GND  
HSYNC  
VSYNC  
SCL  
PWR  
OUT  
OUT  
IN  
Ground(1)  
Horizontal synchronization output  
Vertical synchronization output  
I²C clock input  
VDD  
VDD  
VDD  
CLK  
IN  
Master clock input - 6.5MHz to 27MHz  
I²C data line  
VDD  
SDA  
I/O  
VDD  
VDD  
AVDD  
PCLK  
CE  
PWR  
PWR  
OUT  
IN  
Digital supply  
1.8 V OR 2.8 V  
2.4 V to 3.0 V  
VDD  
Analogue supply  
Pixel qualification clock  
Chip enable signal active HIGH  
Data output D5  
VDD  
DO5  
DO4  
GND  
DO3  
DO2  
DO1  
DO0  
DO6  
DO7  
FSO  
OUT  
OUT  
PWR  
OUT  
OUT  
OUT  
OUT  
OUT  
OUT  
OUT  
VDD  
Data output D4  
VDD  
Ground(1)  
Data output D3  
VDD  
VDD  
VDD  
VDD  
VDD  
VDD  
VDD  
Data output D2  
Data output D1  
Data output D0  
Data output D6  
Data output D7  
Flash output  
1. The two GND pins are connected together on the device substrate.  
9/118  
Functional description  
VS6724  
2
Functional description  
The VS6724 simplified block diagram is shown in Figure 1, with the following main blocks:  
UXGA-sized pixel array  
Video pipe  
Statistics gathering unit  
Clock generator  
Microprocessor  
Video timing generator  
Figure 1.  
Simplified block diagram  
SDA  
SCL  
I²C Interface  
Clock  
Generator  
CLK  
CE  
Microprocessor  
RESET  
VREG  
VDD  
GND  
Video Timing  
Generator  
Statistics  
Gathering  
FSO  
Video  
Compressor  
(JPEG  
engine)  
AVDD  
GND  
VSYNC  
HSYNC  
PCLK  
UXGA  
Pixel  
Array  
Video  
Engine  
Output  
Coder  
D[0:7]  
Bypass  
Bypass  
Bypass  
2.1  
Operation  
A video timing generator controls a UXGA-sized pixel array to produce raw Bayer images.  
The analogue pixel information is digitized and passed into the video pipe. The video pipe  
contains a number of different functions (explained in detail later). At the end of the video  
pipe, data is output to the host system over an 8-bit parallel interface along with qualification  
signals.  
The whole system is controlled by an embedded microprocessor that is running firmware  
stored in an internal ROM. The external host communicates with this microprocessor over  
an I²C interface. The microprocessor does not handle the video data itself but is able to  
control all the functions within the video pipe. Real-time information about the video data is  
gathered by a statistics engine and is available to the microprocessor. The processor uses  
this information to perform real-time image control tasks such as automatic exposure  
control.  
10/118  
VS6724  
Functional description  
2.2  
Imaging pipe diagram  
The details of the imaging pipe are shown in Figure 2. The main functions contained within  
this diagram are detailed in this chapter.  
Figure 2.  
Imaging pipe block diagram  
Sensor array  
Recovery  
engine  
AE & AWB  
engine  
Channel  
gains &  
offsets  
Lens  
shading  
Bayer  
scaling  
Defect  
correction  
Stats.  
Noise  
reduction  
gathering  
Intermediate Bayer data  
Host  
Color  
matrix  
Colorspace  
conversion &  
JPEG  
Color  
reconstruction  
(Interpolation,  
alias)  
Gamma  
correction  
compression  
Front end  
RGB, YCbCr, JPEG  
Scaler  
Output  
formatter  
Aperture  
Color  
engine  
correction  
11/118  
Functional description  
VS6724  
2.3  
Sensor array  
The VS6724 physical pixel array is 1616 x 1216 pixels (see Figure 3), with a pixel size of  
2.2 µm by 2.2 µm. The image size read from the array is mode dependent. For UXGA mode  
the image size read from the array is 1608x1208. For SVGA mode it is 1616x1208.  
Figure 3.  
Sensor array  
4 Dummy Rows  
4 Border Rows  
Visible array  
1600 x 1200 pixels  
(1608x1208 including borders)  
4 Border Rows  
4 Dummy Rows  
1600 pixels  
1608 pixels  
1616 pixels  
2.3.1  
Sensor mode control  
The VS6724 can operate it’s sensor array in two modes controlled by register SensorMode  
within Mode setup.  
SensorMode_UXGA - the full array can be read out at 30 fps and the VS6724 can  
achieve:  
30 fps JPEGs up to UXGA  
30 fps YCbCr or RGB up to SVGA  
15 fps YCbCr or RGB over SVGA  
SensorMode_SVGA_analogue binning - this is a reduced power mode which uses the  
full array and a technique of analogue binning output SVGA at up to 30 fps.  
2.3.2  
Horizontal mirror and vertical flip  
The image data output from the VS6724 can be mirrored horizontally or flipped vertically (or  
both).  
12/118  
VS6724  
Functional description  
2.4  
Recovery engine (RE)  
The RE is used to process raw Bayer input from the sensor array to an intermediate Bayer  
which is correctly white balanced and noise reduced, and can be supplied to the  
interpolation engine.  
2.4.1  
Channel offsets  
To achieve the desired black level of Bayer pixel data it is often necessary to apply an offset  
to the data. This module provides the functionality to apply color channel dependent offset  
on active pixel data, i.e. not dark or black data.  
2.4.2  
2.4.3  
Channel gains  
Color dependent gains are applied to active pixel data within this module as part of the  
automatic white balance function. The gain inputs are re-synchronized to the first active line.  
Lens shading compensation  
The lens shading is used to compensate for attenuation in the optical signal caused by  
primary and micro lens roll off. The module uses internal counters to determine the input  
pixel position in terms of imaging array, to which it applies a simple polynomial gain function.  
This gain is dependent on two coefficients which are system specific.  
2.4.4  
Bayer scaling  
The RE architecture includes an optional Bayer scaler/smoothing module which produces a  
Bayer image fully compatible with existing image reconstruction techniques.  
The scaling factor is fixed at downscale-by-3 (in both x & y), with the basic principle of sub-  
sampling from successive 3x3 blocks to produce a pseudo-Bayer pattern (2x2 Bayer pattern  
generated from 6x6 Bayer input as illustrated in Figure 4).  
This module is intended for use during viewfinder modes to provide a lower power (and  
reduced quality) image for display on LCD.  
13/118  
Functional description  
Figure 4.  
VS6724  
Scaling of Bayer image  
A B C D E F  
1
Q1  
Q3  
Q2  
Q4  
2
3
4
5
6
(a)  
(b)  
(c)  
(d)  
a) is a 6x6 pixel section of a Bayer patterned pixel array.  
b) shows four 3x3 pixel regions which divide the 6x6 pixel array into quarters.  
c) shows the pixels in each quarter used to calculate the sub-sampled pixel (and the  
spatial positioning of the sub-sampled pixel shown by the dashed colored line)  
d) shows the final sub-sampled 2x2 Bayer data  
The sub-sampled pixel value is the average value of the specific color pixels in each quarter.  
Smoothing is required in order to regulate the data rate through the image reconstruction  
chain so as to match any system bandwidth limits.  
2.4.5  
Cropping module  
The VS6724 cropping module can be used to define a window of interest within the full  
UXGA array size, with all pixels falling outside this window of interest appearing as blanking.  
The crop block is also used by the scaler to allow configuration of certain output frame  
dimensions.  
The user can set a start location and the required output size. Figure 5 shows the example  
with of the crop.  
14/118  
VS6724  
Functional description  
Figure 5.  
Crop controls  
Sensor array horizontal size  
uwManualCropHorizontalStart  
uwManualCropVerticalStart  
Cropped ROI  
uwManualCropVerticalSize  
uwManualCropHorizontalSize  
FFOV  
2.4.6  
Zoom  
The zoom function found in the pipe context control sections can be used to achieve a  
continuous zoom by simply selecting the commands zoom_in, zoom_out and zoom_stop. It  
is also possible to perform a single step of zoom by selecting Zoom_step_in and  
Zoom_step_out.  
It is possible to zoom between the sensor size selected and the output size (the output size  
must be smaller that the sensor mode size, UXGA or SVGA).  
2.4.7  
2.4.8  
Pan  
It is possible to pan left, right, up and down when the output size selected is smaller than the  
sensor size selected (if the output size selected equals the sensor mode size then no pan  
can take place).  
The pan step size in both the horizontal and vertical directions are selectable.  
Derating  
The VS6724 contains an internal derating module. This is designed to reduce the peak  
output data rate of the device by spreading the data over the whole frame period and  
allowing a subsequent reduction in output clock frequency.  
The maximum achievable derating factor is x400 for an equivalent scale factor of x20  
downscale. As a general rule the allowable derating factor is equal to the square of the  
scaling factor.  
Note:  
The interline period is not guaranteed to be consistent for all derating ratios. This means the  
host capture system must be able to cope with use of the sync signals or embedded codes  
rather than relying on fixed line counts.  
15/118  
Functional description  
VS6724  
2.4.9  
Defect correction 1 & 2  
The input to the defect correction filters is a 5x5 pixel matrix from which a centre pixel and a  
neighborhood of 8 pixels is extracted. The 8 pixel neighborhood is used to determine the  
validity of the corresponding centre pixel. This is achieved using the ranked output of a  
Batcher-Banyan sort architecture. The defect correction filters perform both detection and  
weighted correction on all data. Defect correction 1 is weighted to work horizontally and  
vertically. Defect correction 2 is weighted to operate on the diagonal elements.  
2.4.10  
2.4.11  
Spatial noise reduction  
The noise reduction module implements an algorithm based on the human-visual system  
and adaptive pixel filtering that reduces perceived noise in an image whilst maintaining  
areas of high definition.  
Interpolation  
The interpolation module converts Bayer pixel data to RGB and applies an anti-alias filter to  
the data. It also generates the sharp data used in the aperture correction block.  
2.5  
Color engine (CE block)  
The role of the CE is to process the RGB data from the recovery engine into a specific  
format requested by the host, e.g. RGB565 for LCD display, or YCbCr for the JPEG encoder.  
2.5.1  
Color matrix  
A matrix color correction transform is performed on the outputs of the scaler, the matrix is  
detailed in Figure 6.  
Figure 6.  
Color matrix  
rcof00  
rcof10  
rcof20  
rcof01  
rcof11  
rcof21  
rcof02  
rcof12  
rcof22  
The matrix equations are:  
Ro = Rin.rcof00 + Gin.rcof01 + Bin.rcof02  
Go = Rin.rcof10 + Gin.rcof11 + Bin.rcof12  
Bo = Rin.rcof20 + Gin.rcof21 + Bin.rcof22  
Note:  
The neutral-preserving (“eigen-grey”) property of the matrix can be achieved by ensuring  
the matrix rows sum to unity.  
16/118  
VS6724  
Functional description  
2.5.2  
Aperture correction  
The aperture correction module is used to add a certain amount of sharpening to the scaled  
RGB, it can be programmed to reduce as the light level drops. The aperture correction  
module also includes a function known as coring which allows control of the minimum  
magnitude which any edge on the image must exceed before sharpening is applied. This  
ensures that small edges such as noise are not amplified by the sharpening. The coring can  
be programmed to increase as the light level drops.  
2.5.3  
Special effects  
The special effects module is used to apply simple transforms onto the input data. The  
supported effects are: Black and White, Hue, Sepia, Negative, Antique, sketch, caricature  
and Emboss. There are also a number of color effects which can only be applied to YCbCr  
data.  
2.5.4  
2.5.5  
2.5.6  
Gamma correction  
The gamma module is a gain curve applied to each of the three image components from the  
sharpening module. The shape of the gain curve is fully programmable.  
YCbCr conversion  
This module performs color space conversion from RGB to YCbCr. It is used to control the  
contrast and color saturation of the output image as well as the fade to black feature.  
Dither  
The dither block is used in RGB modes to reduce contouring in the image when the data is  
truncated to lower ranges. This is achieved by determining the error introduced by truncation  
and adding/subtracting this residual energy to/from the subsequent pixel.  
2.6  
Video compression module  
The JPEG encoder receives YCbCr data from the image reconstruction engine and  
encodes it using baseline sequential JPEG technique. It outputs a standard JPEG data  
stream with all the required markers and segments required by decoders.  
2.6.1  
Features  
Supports YCbCr 422 as input data format.  
Converts YCbCr 422 to 420 format internally, format selectable.  
Baseline ISO/ IEC 10918-1 JPEG compliance.  
Programmable quantization tables.  
Capable of streaming the UXGA image at a rate of 30 frames per second.  
Manual / automatic compression control via scaled quantization tables.  
Automatic compression control targeted at file size and/or peak bit-rate.  
Progressive high-frequency roll-off option for increased compression.  
Intraframe rate-control via zig-zag sequence truncation.  
17/118  
Functional description  
Quantizer  
VS6724  
Quantizer scales the DCT coefficients with programmable luminance and chrominance Q-  
tables. These Q-tables are programmed according to image characteristics, and modified by  
the squeeze setting. The larger the squeeze setting, the more severe the quantization and  
the greater the compression achieved.  
Squeeze values can be manually set via the 8-bit register user_squeeze, or automatically  
set, and dynamically adjusted, by the autosqueeze module.  
Entcoder16  
The entcoder16 (entropy coder with 16-bit output) converts the quantized data stream to a  
symbol stream, including differential encoding of DC samples and run-length encoding of  
zero-valued AC samples according to the JPEG standard, and finally Huffman-encodes the  
symbol stream using hardwired baseline JPEG tables to compress the image. It also  
includes the JPEG header and embeds restart interval markers (if requested by nonzero  
restartinterval setting) as per the JPEG standard.  
Autosqueeze  
Autosqueeze is the VC’s in-built dynamic compression control system. It adjusts the  
squeeze parameter based on measurements of two key criteria derived from the previous  
frame: output file size, and FIFO fullness. Squeeze is subsequently driven iteratively  
towards the optimal value, satisfying the two conditions:  
1. FIFO stability, i.e. fullness has not exceeded a user-defined dead-zone, AND  
2. output file size <= a user-defined target.  
2.6.2  
JPEG compression  
At the simplest level the video compressor has one control which is the Squeeze setting:  
this tells the system how hard to compress. A change in compression is achieved by scaling  
the quantization tables.  
Figure 7.  
QCLK options  
Control  
Firmware control  
Squeeze  
bOIFCLK  
ratio  
JPEG  
output  
FIFO  
Video  
compression  
engine  
UYV  
422 to 420  
JPEG  
YUV 422  
18/118  
VS6724  
Functional description  
The FIFO shown in the figure above is being constantly monitored with fixed break points, if  
the FIFO fill state passes one of these break points the squeeze value is increased or  
decreased.  
The amount of data in the FIFO is dependant on a number of factors  
The squeeze factor set  
The complexity of the scene  
The speed at which the FIFO is being emptied (bOIFClkRatio)  
2.6.3  
JPEG squeeze controls  
The strength of compression or the level of squeeze operated on the image (and therefore  
the quality of the final image) can be controlled in two ways via the bJpegSqueezeSettings  
register (note each context can be set independently);  
bJpegSqueezeSettings0  
0x00 SET_USER_SQUEEZE_MODE  
0x01 SET_AUTO_SQUEEZE_MODE  
In auto squeeze mode, the JPEG compression engine is trying to achieve a target file size  
and constantly changes the compression ratio. This is the preferred mode when using the  
output JPEG to create a video, or in preview mode.  
wJpegTargetFileSize {0x03c3, 0x03c4}: Input required size in KBytes  
In user squeeze mode, the JPEG compression engine will use a constant level of squeeze.  
This is recommended when trying to capture a high quality image and for snapshot or  
flashgun modes. For ease of use, the level of squeeze can be adjusted for each pipe context  
between a high, medium or low level. The value of these squeeze settings can be  
configured by using the following registers:  
bJpegImageQuality0  
0x00 High quality. Value set in bHiSqueezeValue{0x2508}  
0x01 Medium quality. Value set in MedSqueezeValue{0x250a}  
0x02 Low quality. Value set in bLowSqueezeValue {0x250c}  
It is also possible to select between the YCbCr formats input to the video compression  
engine:  
bJpegImageFormat  
0x00 YCbCr 422  
0x01 YCbCr 420  
19/118  
Functional description  
VS6724  
Figure 8. JPEG Compression image size to squeeze value relationship  
Image size to squeeze relationship  
1800  
1600  
1400  
1200  
1000  
800  
600  
400  
200  
0
Scene1  
Scene2  
Scene3  
Scene4  
Scene5  
Scene6  
Scene7  
Scene8  
Scene9  
Scene10  
Scene11  
MEAN  
Squeeze value  
2.6.4  
FIFO control  
The rate which the FIFO is emptied (and therefore the output PCLK frequency) can be  
controlled using the bOIFClkRatio register. Changing the FIFO readout rate will in turn  
change the FIFO’s fullness and therefore the squeeze factor used. Section 2.11.2: PLL  
operation on page 39 describes the calculations for PCLKmax frequency. This frequency is  
divided by the bOIFClkRatio to give the max JPEG PCLK output from the device:  
bOIFClkRatio {0x2514}  
1. PCLK is 2 times slower  
2. PCLK is 4 times slower  
3. PCLK is 8 times slower  
4. PCLK is 16 times slower  
5. PCLK is 32 times slower  
6. PCLK is 64 times slower  
20/118  
VS6724  
Functional description  
2.6.5  
JPEG output as a conventional frame  
To keep compatibility with conventional frame format, the JPEG frame is output in a series of  
packets targeted to look like image lines. The Hsync envelopes each packet (line) of data  
and the Vsync envelopes the complete frame. The start of the frame is indicated by a  
transition of the Vsync and Hsync. This will occur when the output FIFO has accumulated  
enough JPEG data for the first line (default line size 512 = 1KBytes). When this line is  
output, it will then output blocks of blank data (16Byte blocks) until the next 512Bytes of data  
is available.  
The number of bytes per line can be programmed using the following registers, both 16 bit  
registers should be programmed with the same value:  
wLineLength {MSB 0x2511, LSB 0x2512} default = 512  
wThres {MSB 0x251b, LSB 0x251c}  
Note:  
The number of PCLKs in a line is equal to 2 x the line length and the maximum line length is  
2K.  
In most cases the JPEG data will not fill the last line of data and padding data is added after  
the JPEG end of image marker FFD9h filling the remainder of the last line. Note that it is  
possible that the JPEG data will exactly fill the line and no padding is required.  
The value of padding bytes can be programmed using the following registers, both registers  
should be programmed with the same value;  
bJPEG_FILL_VAL {0x23b4} default = 0xA5  
bJPEG_PADDING {0x23b6}  
It is not possible to control the timing of the Vsync and Hsync signals in JPEG mode. You  
can however change the polarity of the signals and select if the Hsync is present or not  
during the interframe period.  
PCLK can be made to be present only during active JPEG data, and therefore not present  
during the interline or interframe periods. The rising edge of PCLK is always half clock  
delayed from both Hsync and Vsync.  
21/118  
Functional description  
Figure 9. JPEG frame  
VS6724  
Padding data at the  
end of the JPEG stream  
Beginning of JPEG stream(FF D8)  
JPEG packet size  
programmable  
JPEG data  
End of JPEG  
End of JPEG  
stream  
FF D9  
PCLK  
HSYNC  
VSYNC  
Packet dispatching depends on the image content.  
This results in a variable blanking duration.  
JPEG packet data  
Padding data 0xA5 (Programmable)  
Note:  
The minimum inter-packet (line) blanking time is 16 clock cycles, and is always a multiple of  
16 clock cycles  
Table 2.  
JPEG data embedded markers  
Marker function  
Name  
Value  
Start of image  
SOF  
FFD8  
FFDB  
FFC0  
FFC4  
FFDA  
FFD9  
Define Quantization tables  
State of frame for baseline  
Define Huffman Tables  
Start of Scan  
DQT  
DCT SOF  
DHT  
SOS  
End of image  
End of image  
22/118  
VS6724  
Functional description  
2.7  
Microprocessor functions  
The microprocessor inside the VS6724 handles the I²C communication with the host  
processor. From this communication it allows the host control over the device via the User  
interface registers.  
Dark calibration: The microprocessor uses information from the array to ensure that the  
optimal and consistent ‘black’ level is achieved from the output.  
Automatic exposure control: Using the information output by the statics gathering engine  
the appropriate exposure settings for the scene is calculated and using a combination of  
exposure control, analogue gain and digital gain the device will outputs a correctly exposed  
image. The host can program the exposure target within a range of EV values or can control  
the system manually setting a known Exposure time, analogue gain and digital gain.  
Flicker cancellation: The 50/60 Hz flicker frequency present in many lighting sources is  
visible when the integration time is not a integer multiple of this frequency. The VS6724 will  
adjust the integration time to ensure that the flicker effect is minimized. Note that flicker is  
present when using a integration time shorter than the period of the lighting frequency (less  
than 8.333 ms for 60 Hz, and less than 10 ms for 50 Hz).  
Automatic white balance: Using the information output by the statics gathering engine the  
microprocessor adjusts the gains applied to the individual color channels in order to achieve  
a correctly color balanced image. In addition to the standard white balance operation a  
constrainer operates on this information which ensures that the white balance achieved fits  
within the expected color temperature of real life illuminants.  
Frame rate control: VS6724 contains a firmware based programmable timing generator.  
This automatically designs internal video timings, PLL multipliers, clock dividers etc. to  
achieve a target frame rate with a given input clock frequency.  
Optionally an automatic frame rate controller can be enabled. This system examines the  
current exposure status and adapts the frame rate based on this information. This function is  
typically useful in low-light scenarios where reducing the frame rate extends the useful  
integration period. This reduces the need for the application of analog and digital gain and  
results in better quality images.  
Active noise management: The microprocessor is able to modify certain video pipe  
functions according to the current exposure settings determined by the automatic exposure  
controller. The main purpose of this is to improve the noise level in the system under low  
lighting conditions. Functions which ‘strength’ is reduced under low lighting conditions (e.g.  
aperture correction) are controlled by ‘dampers’. Functions which ‘strength’ is increased  
under low lighting conditions are controlled by ‘promoters’. The fade to black operation is  
also controlled by the microprocessor  
Fade to Black: Using programmable levels the microprocessor will fade the output signal to  
black, this ensures that under the darkest conditions when the image is not of sufficient  
quality the device will output black. This operation is achieved by scaling the RGB to YCbCr  
matrix.  
23/118  
Functional description  
VS6724  
2.7.1  
Operational mode control  
The microprocessor allows high level control of the modes in which the VS6724 can  
operate, this avoids the need for the host to be concerned with the complexity of controlling  
the timing or power management during mode changes.  
Figure 10. State machine at power -up and user mode transitions  
Supplies  
turned-on  
& CE pin LOW  
Supplies  
Supplies Off  
turned-off  
Power-Down  
CE pin LOW  
Supplies  
turned-off  
CE pin  
HIGH  
State Machine at power-up  
I2C controlled user mode transitions  
Standby  
-
Uninitialised  
It is possible to enter any of  
the user modes direct from the  
uninitialised state via an I2C  
command  
1
Stop Mode  
Flashgun  
Snapshot  
Pause Mode  
Note; Depending on the snapshot  
exit transition settings the device will  
revert to RUN or PAUSE state  
automatically after snapshot  
Run Mode  
Host initiated state  
changes  
System state changes  
The power down mode is entered and exited by driving the hardware CE signal. Transitions  
between all other modes are initiated by I²C transactions from the host system or  
automatically after time-outs.  
24/118  
VS6724  
Functional description  
Power Down/Up: The power down state is entered when CE is pulled low or the supplies  
are removed.  
During the power-down state (CE = logic 0)  
The internal digital supply of the VS6724 is shut down by an internal switch  
mechanism. This method allows a very low power-down current value.  
The device input / outputs are fail-safe, and consequently can be considered high  
impedance.  
During the power-up sequence (CE = logic 1)  
The digital supplies must be on and stable.  
The internal digital supply of the VS6724 is enabled by an internal switch mechanism.  
All internal registers are reset to default values by an internal power on reset cell.  
Figure 11. Power up sequence  
uninitialised mode  
POWER DOWN  
standby  
t1  
VDD (1.8V/2.8V)  
AVDD (2.8V)  
CE  
t2  
t3  
CLK  
SDA  
SCL  
t4  
t5  
Constraints:  
t1 >= 0 ns  
t2 >= 0 ns  
t3 >= 0 ns  
t4 >= 200 µs  
setup commands  
low level command(0xC003): enable clocks  
t5 >= 7 ms (based on 12 MHz external clock frequency, delay is inversely proportional to  
external clock. Max delay for 6 MHz = 14 ms.)  
STANDBY mode: The VS6724 enters STANDBY mode when the CE pin on the device is  
pulled HIGH. Power consumption is very low, most clocks inside the device are switched off.  
In this state I²C communication is possible when CLK is present and when the  
microprocessor is enabled.  
All registers are reset to their default values. The device I/O pins have a very high-  
impedance.  
Uninitialised = RAW: The initialize mode is defined as supplies present, the CE signal is  
logic 1 and the microcontroller clock has been activated.  
During initialize mode the device firmware may be patched. This state is provided as an  
intermediary configuration state and is not central to regular operation of the device.  
The analogue video block is powered down, leading to a lower global consumption  
25/118  
Functional description  
VS6724  
STOP mode: This is a low power mode. The analogue section of the VS6724 is switched off  
and all registers are accessed over the I²C interface. A run command received in this state  
automatically sets a transition through the Pause state to the run mode.  
If a STOP command is issued while streaming an incomplete frame may be generated, it is  
recommended that a Pause command is issued and a timeout set in bTimeToPowerdown to  
force an automatic transition to STOP.  
The analogue video block is powered down, leading to a lower global consumption.  
Pause mode: In this mode all VS6724 clocks are running and all registers are accessible  
but no data is output from the device. The device is ready to start streaming but is halted.  
This mode is used to set up the required output format before outputting any data.  
The analogue video block is powered down, leading to a lower global consumption  
Note:  
The PowerManagement register can be adjusted in PAUSE mode but has no effect until the  
next RUN to PAUSE transition.  
RUN mode: This is the fully operational mode. In running mode the device outputs a  
continuous stream of images, according to the set image format parameters and frame rate  
control parameters. The image size is derived through downscaling of the UXGA image  
from the pixel array.  
ViewLive: this feature allows different sizes, formats and reconstruction settings to be  
applied to alternate frames of data, while in run mode.  
Snapshot mode: The device can be configured to output a single frame according to the  
size, format and reconstruction settings in the relevant video pipe context. In normal  
operation this frame will be output, once the exposure, white balance and dark-cal systems  
are stable. To reduce the latency to output, the user may manually override the stability  
flags.  
The snapshot mode command can be issued in either Run or Stop mode and the device will  
automatically return previous state after the snapshot is taken. The snapshot mode must not  
be entered into while ViewLive is selected.  
FLASHGUN mode: In flashgun mode, the array is configured for use with an external  
flashgun. A flash is triggered and a single frame of data is output and the device  
automatically switches to Pause Mode.  
VS6724 supports the following flashgun configurations:  
Torch Mode - user can manually switch on/off the FSO IO pin via a register setting.  
Independent of mode.  
Pulsed Mode - the flash output is synchronized to the image stream. There are two  
options available:  
Pulsed flash with snapshot. Device outputs a single frame synchronized to flash.  
Pulsed flash with viewfinder. Device outputs a flash pulse synchronized to a single  
frame in the image stream.  
In the pulsed mode there are two possible pulse configurations:  
Single pulse during the interframe period when all image lines are exposed. This is  
suitable for SCR and IGBT flash configurations. The falling edge of the pulse can  
be programmed to vary the width of the pulse.  
Single pulse over entire integration period of frame. This is suitable for LED flash  
configurations.  
26/118  
VS6724  
Functional description  
Mode transitions  
Transitions between operating modes are normally controlled by the host by writing to the  
Host interface manager control register. Some transitions can occur automatically after a  
time out. If there is no activity in the Pause state then an automatic transition to the Stop  
state occurs. This functionality is controlled by the Power management register, writing 0xFF  
disables the automatic transition to Stop.  
The users control allows a transition between Stop and Run, at the state level the system  
will transition through a Pause state.  
2.8  
Video pipe context configuration  
2.8.1  
Video pipe setup  
The VS6724 has a single video pipe, the control of this pipe can be loaded from either of two  
possible setups Pipecontext0 and PipeContext1;  
PipeContext0 and PipeContext 1, control the operations shown below:  
Image size  
Zoom control  
Pan control  
Crop control  
Image format (YCbCr 4:2:2, RGB565, etc....)  
Image controls (Contrast, Color saturation, Horizontal and vertical flip)  
2.8.2  
Context switching  
In normal operation, it is possible to control which pipe context is used and to switch  
between contexts without the need to stop streaming, the change will occur at the next  
frame boundary after the change to the register has been made.  
For example this function allows the VS6724 to stream an output targeting a display (e.g.  
QQVGA RGB 444) then switch to capture an image (e.g. UXGA JPEG) with no need to stop  
streaming or enter any other operating mode.  
It is important to note the output size selected for both pipe context must be appropriate to  
the sensor mode used, i.e. to configure PipeContext0 to QQVGA and PipeContext1 to  
UXGA the sensor mode must be set to UXGA.  
The register Mode setup allows selection of the pipe context, by default the PipeContext0 is  
used.  
2.8.3  
ViewLive operation  
ViewLive is an option which allows a different pipe context to be applied to alternate frames  
of the output data.  
The controls for VIewLive function are found in the register bank where the fEnable register  
allows the host to enable or disable the function and the binitialPipecontext register selects  
which pipe context is output first.  
27/118  
Functional description  
VS6724  
When ViewLive is enabled the output data switches between PipeContext0 and PipeContext  
1 on each alternate frame.  
Figure 12. ViewLive frame output format  
Frame output  
Interline  
Blanking  
Active Video  
Pipe context0  
Interframe Blanking  
Active Video  
Interline  
Pipe context1  
Blanking  
Interframe Blanking  
2.9  
Output formats  
2.9.1  
Image size  
An output frame consists of a number of active lines and a number of interframe lines. Each  
line consists of embedded line codes (if selected), active pixel data and interline blank data.  
Note that by default the interline blanking data is not qualified by the PCLK and therefore is  
not captured by the host system.  
The image size can be either the full output from the sensor, depending on sensor mode, or  
a scaled output, The output image size can be chosen from one of 9 pre-selected sizes or a  
manual image size can be used.  
The VS6724 supports the following data formats:  
JPEG (4:2:2, 4:2:0)  
YCbCr 4:2:2  
YCbCr 4:0:0  
RGB565  
RGB444 (encapsulated as 565)  
RGB444 (zero padded)  
Bayer 10-bit  
Bayer 8-bit  
The required data format is selected using the bdataFomat control found in the pipe context  
registers. The various options available for each format are controlled using the bRgbsetup  
and bYCbCrSetup registers found in the Dither control registers.  
28/118  
VS6724  
Functional description  
2.9.2  
Line / frame blanking data  
The values which are output during line and frame blanking are an alternating pattern of  
0x10 and 0x80 by default. These values may be changed by writing to the BlankData_MSB  
and BlankData_LSB registers in the Dither control bank.  
2.9.3  
YCbCr 4:2:2 data format  
YCbCr 422 data format requires 4 bytes of data to represent 2 adjacent pixels. ITU601-656  
defines the order of the Y, Cb and Cr components as shown in Figure 13.  
Figure 13. Standard Y Cb Cr data order  
HSYNC SIGNAL  
START OF DIGITAL ACTIVE LINE  
EAV Code  
F 0 0 X  
F 0 0 Y  
8 1  
0 0  
Cb  
Y
Cr  
Y
Cb  
Y
Cr  
Y
Cb  
Y
Cr  
Y
4-data  
packet  
The VS6724 bYCbCrSetup register can be programmed to change the order of the  
components as follows:  
Figure 14. Y Cb Cr data swapping options register bYCbCrSetup  
Components order  
in 4-byte data packet  
1st  
Y
2nd  
3rd  
4th  
Cr  
1
1
Cb  
Y
0
1
0
1
0
0
Cb  
Y
Y
Cr  
Y
Cr  
Y
Y
Cb  
Y
DEFAULT  
Cr  
Cb  
2.9.4  
YCbCr 4:0:0  
The ITU protocol allows the encapsulation of various data formats over the link. The  
following data formats are also proposed encapsulated in ITU601-656 protocol:  
YCbCr 4:0:0 - luminance data channel  
This is done as described in Figure 15. In this output mode the output data per pixel is a  
single byte. Therefore the output PCLK and data rate is halved.  
It is possible to reverse the overall bit order of the component through a register  
programming.  
29/118  
Functional description  
VS6724  
Note:  
False synchronization codes are avoided in the LSByte by adding or subtracting a value of  
one, dependent on detection of a 0 code or 255 code respectively.  
Figure 15. YCbCr 4:0:0 format encapsulated in ITU stream  
START OF DIGITAL ACTIVE LINE  
EAV code  
F 0 0  
F 0 0  
D D  
8 9  
D D D D  
4 5 6 7  
D D D D  
0 1 2 3  
X
Y
..................  
F 0 0  
F 0 0  
X
Y
..................  
YCbCr 4:0:0  
where: Pixeln = Yn[7:0]  
See Dither control for user interface control of output data formats.  
2.9.5  
RGB and Bayer 10 bit data formats  
The VS6724 can output data in the following formats:  
RGB565  
RGB444 (encapsulated as RGB565)  
RGB444 (zero padded)  
Bayer 10-bit  
Note:  
Pixels in Bayer 10-bit data output are defect corrected, correctly exposed and white  
balanced. Any or all of these functions can be disabled.  
In each of these modes 2 bytes of data are required for each output pixel. The encapsulation  
of the data is shown in Table 16.  
30/118  
VS6724  
Functional description  
Figure 16. RGB and Bayer data formats  
(1) RGB565 data packing  
Bit  
7
6
5
4
3
2
1
0
Bit  
7
6
5
4
3
2
1
0
R4 R3 R2 R1 R0 G5 G4 G3  
G2 G1 G0 B4 B3 B2 B1 B0  
first byte  
second byte  
(2) RGB 444 packed as RGB565  
Bit  
7
6
5
4
3
1
2
1
0
Bit  
7
6
1
5
0
4
3
2
1
0
1
R3 R2 R1 R0  
G3 G2 G1  
G0  
B3 B2 B1 B0  
first byte  
second byte  
(3) RGB 444 zero padded  
Bit  
7
0
6
0
5
0
4
0
3
2
1
0
Bit  
7
6
5
4
3
2
1
0
R3 R2 R1 R0  
G3 G2 G1 G0 B3 B2 B1 B0  
first byte  
second byte  
(4) Bayer 10-bit  
Bit  
7
1
6
0
5
1
4
0
3
1
2
0
1
0
Bit  
7
6
5
4
3
2
1
0
b9 b8  
b7 b6 b5 b4 b3 b2 b1 b0  
first byte  
second byte  
Manipulation of RGB data  
It is possible to modify the encapsulation of the RGB data in a number of ways:  
swap the location of the RED and BLUE data  
reverse the bit order of the individual color channel data  
reverse the order of the data bytes themselves  
Dithering  
An optional dithering function can be enabled for each RGB output mode to reduce the  
appearance of contours produced by RGB data truncation. This is enabled through the  
DitherControl register.  
31/118  
Functional description  
VS6724  
2.9.6  
Bayer 8-bit  
The ITU protocol allows the encapsulation of various data formats over the link. The  
following data formats are also proposed encapsulated in ITU601-656 protocol:  
Truncated from 10-bit  
The output is shown in Figure 17. In this output mode a single byte is output data per pixel,  
therefore the output PCLK and data rate is half that of the 10bit modes.  
It is possible to reverse the overall bit order of the individual Bayer pixels through a register  
programming.  
Note:  
False synchronization codes are avoided in the LSByte by adding or subtracting a value of  
one, dependent on detection of a 0 code or 255 code respectively.  
Figure 17. Bayer 8 output  
START OF DIGITAL ACTIVE LINE  
EAV Code  
F 0 0  
F 0 0  
D D D D  
0 1 2 3  
D D D D  
0 1 2 3  
D D D D  
0 1 2 3  
X
Y
L
L
L
L L  
S S  
L
L
L
L
L L  
S S  
L
F 0 0  
F 0 0  
X
Y
S
S
8-bit Bayer  
S
S
S
S
S
S
B0 B1  
B2 B3 B4 B5 B6 B7 B8 B9 B10B11  
where: LSBn = Bayern[7:0]  
2.10  
Data synchronization methods  
External capture systems can synchronize with the data output from VS6724 in one of two  
ways:  
1. Synchronization codes are embedded in the output data  
2. Via the use of two additional synchronization signals: VSYNC and HSYNC  
Both methods of synchronization can be programmed to meet the needs of the host system.  
2.10.1  
Embedded codes  
The embedded code sequence can be inserted into the output data stream to enable the  
external host system to synchronize with the output frames. The code consists of a 4-byte  
sequence starting with 0xFF, 0x00, 0x00. The final byte in the sequence depends on the  
mode selected.  
Two types of embedded codes are supported by the VS6724: Mode 1 (ITU656) and Mode 2.  
The bSyncCodeSetup register is used to select whether codes are inserted or not and to  
select the type of code to insert.  
When embedded codes are selected each line of data output contains 8 additional clocks: 4  
before the active video data and 4 after it.  
32/118  
VS6724  
Functional description  
Prevention of false synchronization codes  
The VS6724 is able to prevent the output of 0xFF and/or 0x00 data from being  
misinterpreted by a host system as the start of synchronization data. This function is  
controlled the bCodeCheckEnable register.  
2.10.2  
Mode 1 (ITU656 compatible)  
The structure of an image frame with ITU656 codes is shown in Figure 18.  
Figure 18. ITU656 frame structure with even codes  
Line 1  
SAV  
80  
EAV  
9D  
Frame of image data  
Line 480  
SAV  
AB  
EAV  
B6  
Frame blanking period  
The synchronization codes for odd and even frames are listed in Table 3 and Table 4. By  
default all frames output from the VS6724 are EVEN. It is possible to set all frames to be  
ODD or to alternate between ODD and EVEN using the SyncCodeSetup register in  
theDither control register bank.  
Table 3.  
ITU656 embedded synchronization code definition (even frames)  
Name Description 4-byte sequence  
Line start - active FF 00 00 80  
SAV  
EAV  
Line end - active  
FF 00 00 9D  
FF 00 00 AB  
FF 00 00 B6  
SAV (blanking)  
EAV (blanking)  
Line start - blanking  
Line end - blanking  
33/118  
Functional description  
Table 4.  
VS6724  
ITU656 embedded synchronization code definition (odd frames)  
Name Description 4-byte sequence  
Line start - active FF 00 00 C7  
SAV  
EAV  
Line end - active  
FF 00 00 DA  
FF 00 00 EC  
FF 00 00 F1  
SAV (blanking)  
EAV (blanking)  
Line start - blanking  
Line end - blanking  
2.10.3  
Embedded synchronization EXT-CSI  
The structure of a CSI image frame is shown Figure 19.  
Figure 19. CSI 2 frame structure (VGA example)  
Line 1  
FS  
Frame of image data  
LS  
LE  
Line 480  
FE  
Frame blanking period  
For CSI, the synchronization codes are as listed in Table 5.  
Table 5.  
CSI - embedded synchronization code definition  
Name Description  
4-byte sequence  
LS  
LE  
FS  
FE  
Line start  
Line end  
FF 00 00 00  
FF 00 00 01  
FF 00 00 02  
FF 00 00 03  
Frame Start  
Frame End  
34/118  
VS6724  
Functional description  
CSI logical DMA channels  
The purpose of logical channels is to separate different data flows which are interleaved in  
the data stream, in the case of the VS6724 this allows the identification of the pipe context  
used for an image frame. The DMA channel identifier number is directly encoded in the 4-  
byte CSI embedded sync codes. The receiver can then monitor the DMA channel identifier  
and de-multiplex the interleaved video streams to their appropriate DMA channel. The  
bChannelID register can have the value 0 to 6. The DMA channel identifier must be fully  
programmable to allow the host to configure which DMA channels the different video data  
stream use.  
Logical channel control  
The channel identifier is a part of CSI synchronization code, upper four bits of last byte of  
synchronization code. Figure 20. CSI frame structure (VGA example) illustrates the  
synchronization code with logical channel identifiers.  
Figure 20. CSI frame structure (VGA example)  
32-bit embedded ITU-CSI sync code  
F F 0 0 0 0 DC LC  
DMA Channel Number  
Valid channels = 0 to 6  
Line code  
0x0 = Line Start  
0x1 = Line End  
0x2 = Frame Start  
0x3 = Frame End  
2.10.4  
VSYNC and HSYNC  
The VS6724 can provide two programmable hardware synchronization signals: VSYNC and  
HSYNC. The position of these signals within the output frame can be programmed by the  
user or an automatic setting can be used where the signals track the active video portion of  
the output frame regardless of its size.  
Horizontal synchronization signal (HSYNC)  
The HSYNC signal is controlled by the bHSyncSetup register. The following options are  
available:  
enable/disable  
select polarity  
all lines or active lines only  
manual or automatic  
35/118  
Functional description  
VS6724  
In automatic mode the HSYNC signal envelops all the active video data on every line in the  
output frame regardless of the programmed image size. Line codes (if selected) fall outside  
the HSYNC envelope as shown in Figure 21.  
Figure 21. HSYNC timing example  
hsync=0  
hsync=1  
BLANKING DATA  
ACTIVE VIDEO DATA  
EAV Code  
EAV Code  
SAV Code  
00 00 XY  
FF  
80 10 80 10  
80 10  
00 00 XY D0 D1 D2 D3 D0 D1 D2 D3  
00 00 XY  
FF  
80 10  
FF  
D2 D3  
If manual mode is selected then the pixel positions for HSYNC rising edge and falling edge  
are programmable. The pixel position for the rising edge of HSYNC is programmed in the  
bHSyncRising registers. The pixel position for the falling edge of HSYNC is programmed in  
the bHSyncFalling registers.  
Vertical synchronization (VSYNC)  
The VSYNC signal is controlled by the bSyncSetup register. The following options are  
available:  
enable/disable  
select polarity  
manual or automatic  
In automatic mode the VSYNC signal envelops all the active video lines in the output frame  
regardless of the programmed image size as shown in Figure 22.  
36/118  
VS6724  
Functional description  
Figure 22. VSYNC timing example  
BLANKING  
V=0  
V=1  
ACTIVE  
VIDEO  
vsync  
BLANKING  
V=0  
V=1  
ACTIVE  
VIDEO  
If manual mode is selected then the line number for VSYNC rising edge and falling edge is  
programmable. The rising edge of VSYNC is programmed in the bVsyncRisingLine  
registers, the pixel position for VSYNC rising edge is programmed in the bVsyncRisingPixel  
registers. Similarly the line count for the falling edge position is specified in the  
bVsyncFallingLine registers, and the pixel count is specified in the bVsyncFallingPixel  
registers.  
2.10.5  
Pixel clock (PCLK)  
The PCLK signal is controlled by the Dither control register. The following options are  
available:  
enable/disable  
select polarity  
select starting phase  
qualify/don’t qualify embedded synchronization codes  
enable/disable during horizontal blanking  
37/118  
Functional description  
VS6724  
Figure 23. QCLK options  
D0  
D1  
D2  
data  
Negative edge  
None-active  
level - High  
Positive edge  
Negative edge  
Positive edge  
PCLK  
None-active  
level - Low  
The YCbCr, RGB and Bayer timings are represented on Figure 24, with the associated  
qualifying PCLK clock. The output clock rate is effectively halved for the Bayer 8-bit and  
YCbCr4:0:0 modes where only one byte of output data is required per pixel.  
Figure 24. Qualification clock  
16-bit data output formats - 2 bytes per pixel  
Data[7:0]  
PCLK  
Cb  
Y
Cr  
Y
Cb  
n+2,n+3  
n,n+1  
n
n,n+1  
n+1  
YCbCr  
Data[7:0]  
PCLK  
Pix0_lsb  
Pix0_lsb  
Pix0_msb  
Pix0_msb  
Pix1_lsb  
Pix1_lsb  
Pix1_msb  
Pix1_msb  
Pix2_lsb  
Pix2_lsb  
RGB565  
RGB444  
Data[7:0]  
PCLK  
Bayer 10-Bit  
8-bit data output formats- 1 byte per pixel  
Data[7:0]  
Pix0  
Pix0  
Pix1  
Pix1  
Pix2  
Bayer 8-Bit  
PCLK  
Data[7:0]  
PCLK  
Pix2  
YCbCr 4:0:0  
In practice the user is likely to require to write some additional setup information prior to  
receive the required data output.  
38/118  
VS6724  
Functional description  
2.11  
Timing control  
2.11.1  
Input clock  
The VS6724 requires provision of an external reference clock. The external clock should be  
a DC coupled square wave and may have been RC filtered. The clock input is fail-safe in  
power down mode.  
The VS6724 contains an internal PLL allowing it to produce accurate frame rates from a  
wide range of input clock frequencies. The allowable input range is from 6.5 MHz to 27 MHz.  
The external clock frequency must be programmed in the registers found in Table 19: Video  
timing parameter host inputs.  
2.11.2  
PLL operation  
The VS6724 contains a firmware based programmable timing generator which automatically  
configures the internal video timing, PLL multipliers, clock dividers to achieve a target  
operation. The timing generator is controlled and constrained by the required PLL  
frequency, framerate and scaling factor, this in turn effects the output PCLK frequency.  
Timing control  
The bSysClkMode register selects the mode in which the system clock manager works,  
<0> SYSCLK_MODE_NORMAL  
<1> SYSCLK_MODE_USER  
In normal mode the VS6724 can achieve UXGA at 30 fps and is based on an internal PLL  
frequency of 260 MHz, the clock management system ensures a maximum output  
frequency of 80 Mhz (YCbCr).  
In user mode the VS6724 can be configured to allow the VS6724 to meet the input  
frequency constraints of a host application. The fpUserPLLCLK register sets the maximum  
frequency generated by the system clock manager and therefore limits the output frequency  
and is based on the following equation:  
fpUserPLLClk = 2 * PCLKmax  
The PCLKmax may be a limitation on the host and using the following approximate  
calculation can help work out the framerate achievable with this output PCLK rate;  
Framerate = PCLKmax / (Image size * data format * 1.10)  
Image size = 1600 x 1200 for UXGA sensor mode  
Image size = 800 x 600 for SVGA sensor mode  
Data format = 2 for YCbCr 4:2:2, RGB and Bayer10 (as these are 2 Bytes per pixel)  
Data format = 1 for YCbCr 4:2:0 and Bayer 8 (as these are 1 Byte per pixel)  
(1.10) is a 10% increase to take into account interline and interframe.  
39/118  
Functional description  
VS6724  
2.11.3  
Derating  
When the scaler is operating the clock manager employs derating to reduce the peak output  
rate of the device by spreading the data over the full frame period.  
The derating employed can be found by dividing the input size to the scaler by the output  
size of the scaler and rounding up to the nearest even number.  
Example: VGA output scaled from the full UXGA array = 1600x1200 / 640x480 = 6.25  
rounded up to the nearest even number = 8, therefore the VGA output is 8 times slower than  
that for the full UXGA output.  
40/118  
VS6724  
Host communication - I²C control interface  
3
Host communication - I²C control interface  
The interface used on the VS6724 is a subset of the I²C standard. Higher level protocol  
adaptations have been made to allow for greater addressing flexibility. This extended  
interface is known as the V2W interface.  
3.1  
Protocol  
A message contains two or more bytes of data preceded by a START (S) condition and  
followed by either a STOP (P) or a repeated START (Sr) condition followed by another  
message.  
STOP and START conditions can only be generated by a V2W master.  
After every byte transferred the receiving device must output an acknowledge bit which tells  
the transmitter if the data byte has been successfully received or not.  
The first byte of the message is called the device address byte and contains the 7-bit  
address of the V2W slave to be addressed plus a read/write bit which defines the direction  
of the data flow between the master and the slave.  
The meaning of the data bytes that follow device address changes depending whether the  
master is writing to or reading from the slave.  
Figure 25. Write message  
S
DEV ADDR R/W  
A
DATA  
A
DATA  
A
DATA  
A/A P  
‘0’ (Write)  
2 Index Bytes  
N Data Byte  
From Master to Slave  
From Slave to Master  
For the master writing to the slave the device address byte is followed by 2 bytes which  
specify the 16-bit internal location (index) for the data write. The next byte of data contains  
the value to be written to that register index. If multiple data bytes are written then the  
internal register index is automatically incremented after each byte of data transferred. The  
master can send data bytes continuously to the slave until the slave fails to provide an  
acknowledge or the master terminates the write communication with a STOP condition or  
sends a repeated START (Sr).  
Figure 26. Read message  
S
DEV ADDR R/W  
A
DATA  
A
DATA  
A
P
‘1’ (Read)  
1 or more Data Byte  
From Slave to Master  
From Master to Slave  
For the master reading from the slave the device address is followed by the contents of last  
register index that the previous read or write message accessed. If multiple data bytes are  
read then the internal register index is automatically incremented after each byte of data  
41/118  
Host communication - I²C control interface  
VS6724  
read. A read message is terminated by the bus master generating a negative acknowledge  
after reading a final byte of data.  
A message can only be terminated by the bus master, either by issuing a stop condition, a  
repeated start condition or by a negative acknowledge after reading a complete byte during  
a read operation.  
3.2  
Detailed overview of the message format  
Figure 27. Detailed overview of message format  
1
2
3
4
5
6
S
7-bit device  
address  
A
P
R/W  
A
8-bit Data  
(Sr)  
(A)  
(Sr)  
P
SDA  
SCL  
Sr  
MSB  
1
LSB  
8
MSB  
1
LSB  
8
S
or  
Sr  
Sr  
2
7
9
2
7
9
or  
P
START  
Device address  
R/W  
Bit  
0 - Write  
1 - Read  
ACK  
signal  
from  
Data byte from  
transmitter  
R/W=0 - Master  
R/W=1 - Slave  
ACK  
signal  
from  
STOP  
or  
repeated  
Start  
or  
repeated  
START  
condition  
slave  
receiver  
condition  
The V2W generic message format consists of the following sequence:  
1. Master generates a START condition to signal the start of new message.  
2. Master outputs, MS bit first, a 7-bit device address of the slave the master is trying to  
communicate with followed by a R/W bit.  
a) R/W = 0 then the master (transmitter) is writing to the slave (receiver).  
b) R/W = 1 the master (receiver) is reading from the slave (transmitter).  
3. The addressed slave acknowledges the device address.  
4. Data transmitted on the bus  
a) When a write is performed then master outputs 8-bits of data on SDA (MS Bit  
first).  
b) When a read is performed then slave outputs 8-bits of data on SDA (MS Bit First).  
5. Data receive acknowledge  
a) When a write is performed slave acknowledges data.  
42/118  
VS6724  
Host communication - I²C control interface  
b) When a read is performed master acknowledges data.  
Repeat 4 and 5 until all the required data has been written or read.  
Minimum number of data bytes for a read =1 (Shortest Message length is 2-bytes).  
The master outputs a negative acknowledge for the data when reading the last byte of data.  
This causes the slave to stop the output of data and allows the master to generate a STOP  
condition.  
6. Master generates a STOP condition or a repeated START.  
Figure 28. Device addresses  
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
R/W  
0
Sensor address  
Sensor write address 20H  
Sensor read address 21H  
0
0
1
0
0
0
1
3.2.1  
Data valid  
The data on SDA is stable during the high period of SCL. The state of SDA is changed  
during the low phase of SCL. The only exceptions to this are the start (S) and stop (P)  
conditions as defined below. (See I²C slave interface for full timing specification).  
Figure 29. SDA data valid  
SDA  
SCL  
Data line  
stable  
Data change  
Data line  
stable  
Data valid  
Data valid  
3.2.2  
Start (S) and Stop (P) conditions  
A START (S) condition defines the start of a V2W message. It consists of a high to low  
transition on SDA while SCL is high.  
A STOP (P) condition defines the end of a V2W message. It consists of a low to high  
transition on SDA while SCL is high.  
After STOP condition the bus is considered free for use by other devices. If a repeated  
START (Sr) is used instead of a stop then the bus stays busy. A START (S) and a repeated  
START (Sr) are considered to be functionally equivalent.  
43/118  
Host communication - I²C control interface  
VS6724  
Figure 30. START and STOP conditions  
SDA  
SCL  
S
P
START  
STOP  
condition  
condition  
3.2.3  
Acknowledge  
After every byte transferred the receiver must output an acknowledge bit. To acknowledge  
the data byte receiver pulls SDA during the 9th SCL clock cycle generated by the master. If  
SDA is not pulled low then the transmitter stops the output of data and releases control of  
the bus back to the master so that it can either generate a STOP or a repeated START  
condition.  
Figure 31. Data acknowledge  
SDA data  
output by  
transmitter  
Negative acknowledge (A)  
SDA data  
output by  
receiver  
Acknowledge (A)  
SCL clock  
from master  
S
1
2
8
9
START condition  
Clock pulse for acknowledge  
3.2.4  
Index space  
Communication using the serial bus centres around a number of registers internal to the  
either the sensor or the co-processor. These registers store sensor status, set-up, exposure  
and system information. Most of the registers are read/write allowing the receiving  
equipment to change their contents. Others (such as the chip id) are read only.  
The internal register locations are organized in a 64k by 8-bit wide space. This space  
includes “real” registers, SRAM, ROM and/or micro controller values.  
44/118  
VS6724  
Host communication - I²C control interface  
Figure 32. Internal register index space  
8 bits  
65535  
65534  
65533  
65532  
130  
129  
128  
127  
126  
125  
16-bit Index / 8-bit Data Format  
64k by 8-bit wide index space  
(Valid Addresses 0-65535)  
4
3
2
1
0
3.3  
Types of messages  
This section gives guidelines on the basic operations to read data from and write data to  
VS6724.  
The serial interface supports variable length messages. A message contains no data bytes  
or one data byte or many data bytes. This data can be written to or read from common or  
different locations within the sensor. The range of instructions available are detailed below.  
Single location, single byte data read or write.  
Write no data byte. Only sets the index for a subsequent read message.  
Multiple location, multiple data read or write for fast information transfers.  
Any messages formats other than those specified in the following section should be  
considered illegal.  
3.3.1  
Random location, single data write  
For the master writing to the slave the R/W bit is set to zero.  
The register index value written is preserved and is used by a subsequent read. The write  
message is terminated with a stop condition from the master.  
45/118  
Host communication - I²C control interface  
VS6724  
Figure 33. Random location, single write  
16-bit Index, 8-bit Data, Random Location, Single Data Write  
Previous Index Value, K  
Index M  
S
DEV ADDR R/W  
A
DATA  
A
DATA  
A
DATA  
A/A P  
‘0’ (Write)  
INDEX[15:8]  
INDEX[7:0]  
DATA[7:0]  
DATA[7:0]  
Index[15:0]  
value, M  
From Master to Slave  
From Slave to Master  
S = START condition  
Sr = repeated START  
P = STOP Condition  
A = Acknowledge  
A = Negative acknowledge  
3.3.2  
Current location, single data read  
For the master reading from the slave the R/W bit is set to one. The register index of the  
data returned is that accessed by the previous read or write message.  
The first data byte returned by a read message is the contents of the internal index value  
and NOT the index value. This was the case in older V2W implementations.  
Note that the read message is terminated with a negative acknowledge (A) from the master:  
it is not guaranteed that the master will be able to issue a stop condition at any other time  
during a read message. This is because if the data sent by the slave is all zeros, the SDA  
line cannot rise, which is part of the stop condition.  
Figure 34. Current location, single read  
16-bit index, 8-bit data current location, single data read  
Previous Index Value, K  
S
DEV ADDR R/W  
A
DATA  
A
P
‘1’ (Read)  
DATA[7:0]  
DATA[7:0]  
S = START Condition  
Sr = repeated START  
P = STOP Condition  
A = Acknowledge  
A = Negative Acknowledge  
From Master to Slave  
From Slave to Master  
3.3.3  
Random location, single data read  
When a location is to be read, but the value of the stored index is not known, a write  
message with no data byte must be written first, specifying the index. The read message  
then completes the message sequence. To avoid relinquishing the serial to bus to another  
master a repeated start condition is asserted between the write and read messages.  
46/118  
VS6724  
Host communication - I²C control interface  
As mentioned in the previous example, the read message is terminated with a negative  
acknowledge (A) from the master.  
Figure 35. 16-bit index, 8-bit data random index, single data read  
Previous Index Value, K  
No Data Write  
Index M  
Data Read  
S
DEV ADDR R/W  
A
DATA  
A
DATA  
A
Sr DEV ADDR R/W  
A
DATA  
A
P
‘0’ (Write)  
‘1’ (Read)  
INDEX[15:8]  
INDEX[7:0]  
DATA[7:0]  
INDEX[15:0]  
value, M  
DATA[7:0]  
From Master to Slave  
From Slave to Master  
A = Acknowledge  
A = Negative Acknowledge  
S = START Condition  
Sr = repeated START  
P = STOP Condition  
3.3.4  
Multiple location write  
For messages with more than 1 data byte the internal register index is automatically  
incremented for each byte of data output, making it possible to write data bytes to  
consecutive adjacent internal registers without having to send explicit indexes prior to  
sending each data byte.  
Figure 36. 16-bit index, 8-bit data multiple location write  
Previous Index Value, K  
Index M  
DATA  
Index (M + N - 1)  
S
DEV ADDR R/W  
A
DATA  
A
DATA  
A
A
DATA  
A/A P  
‘0’ (Write)  
INDEX[15:8]  
INDEX[7:0]  
DATA[7:0]  
DATA[7:0]  
INDEX[15:0]  
value, M  
DATA[7:0]  
DATA[7:0]  
N Bytes of Data  
From Master to Slave  
From Slave to Master  
A = Acknowledge  
A = Negative acknowledge  
S = START condition  
Sr = repeated START  
P = STOP Condition  
47/118  
Host communication - I²C control interface  
VS6724  
3.3.5  
Multiple location read stating from the current location  
In the same manner to multiple location writes, multiple locations can be read with a single  
read message.  
Figure 37. Multiple location read  
16-bit Index, 8-bit data multiple location read  
Previous Index Value, K  
Index K+1  
Index (K + N - 1)  
S
DEV ADDR R/W  
A
DATA  
A
DATA  
A
DATA  
A
P
‘1’ (Read)  
DATA[7:0]  
DATA[7:0]  
DATA[7:0]  
DATA[7:0]  
DATA[7:0]  
DATA[7:0]  
N Bytes of Data  
From Master to Slave  
From Slave to Master  
A = Acknowledge  
A = Negative acknowledge  
S = START condition  
Sr = repeated START  
P = STOP Condition  
48/118  
VS6724  
Host communication - I²C control interface  
3.3.6  
Multiple location read starting from a random location  
Figure 38. Multiple location read starting from a random location  
49/118  
Programming model and register description  
VS6724  
4
Programming model and register description  
4.1  
Programming model  
The VS6724 addressable register/memory space is configured as shown below. It consists  
of four principal areas each of which provides a different function:  
User Interface: this area starting from address zero provides the user interface. Register  
reads and writes to this block are passed through the internal micro and processed. All  
operational control of the device by the host should be performed through these user  
interface locations.Many of these registers are detailed in Section 4.2: Register description.  
Registers not listed in this datasheet should be considered as reserved or read-only and  
should NOT be written to, as this may cause unpredictable results.  
Hardware registers: provides direct access to hardware registers associated with each  
functional block of the device. In normal operation, these registers will be accessed under  
the control of the micro. i.e. they should never be accessed by the host system. However,  
they may be directly accessed by the host for debug and test purposes.  
XDATA RAM: provides temporary variable storage for the on-board micro.  
Patch RAM: provides memory space to download firmware patches and modify device  
operation. This provides a software update mechanism without the need for a new program  
ROM.  
Figure 39. System / Host view of VS6724 memory  
FFFF  
D800  
HARDWARE REGISTERS  
C000  
9FFF  
LEGEND  
4K MCU PATCH RAM  
9000  
8FFF  
4K MCU XDATA RAM  
User Interface  
8000  
Hardware Registers  
XDATA/Patch RAM  
Blank space  
USER INTERFACE  
0000  
50/118  
VS6724  
Programming model and register description  
4.2  
Register description  
4.2.1  
Register interpreter  
Register contents represent different data types as described in Register naming prefix.  
Table 6.  
Register naming prefix  
Prefix  
Description  
VP_BYTE = ub  
VP_UINT16 = uw  
Flag_e(F) = f  
Enum = e  
One Byte unsigned data  
Two Byte unsigned data  
One byte data. Only two possible values  
One Byte data. Specific to module  
VP_FLOAT = fl  
VP_INT8 = sb  
Two byte data. Expect value in Floating Point 16 notation  
One Byte signed data  
Registers not listed in this datasheet should be considered as reserved or read-only should  
NOT be written to, as this may cause unpredictable results.  
The VS6724 I²C write address is 0x20.  
All I²C locations contain an 8-bit byte. However, certain parameters require 16 bits to  
represent them and are therefore stored in more than 1 location.  
Note:  
For all 16 bit parameters the MSB register must be written before the LSB register.  
The data stored in each location can be interpreted in different ways as shown below.  
Register contents represent different data types as described in Table 7.  
Table 7.  
Data type  
Data type  
Description  
Single field register 8 bit parameter  
BYTE  
UINT_16  
FLAG_e  
CODED  
FLOAT  
Multiple field registers - 16 bit parameter  
Bit 0 of register must be set/cleared  
Coded register - function depends on value written  
Float Value  
Float number format  
Float 900 is used in ST co-processors to represent floating point numbers in 2 bytes of data.  
It conforms to the following structure:  
Bit[15] = Sign bit (1 represents negative)  
Bit[14:9] = 6 bits of exponent, biased at decimal 31  
Bit[8:0] = 9 bits of mantissa  
51/118  
Programming model and register description  
VS6724  
4.2.2  
Low level control registers  
Table 8.  
Index  
Low-level control registers  
LowLevelControlRegisters(1)  
MicroEnable  
Default value  
Purpose  
Type  
0x1c  
Used to power up the device  
CODED  
0xC003  
<0x1c> initial state after low to high transition of CE pin  
<0x02> Power enable for all MCU Clock- start device  
Possible values  
DIO_Enable  
Default value  
Purpose  
Type  
0x00  
Enables the digital I/O of the device  
CODED  
0xC044  
<0> IO pins in a high impedance state ‘Tri-state’  
<1> IO pins enabled  
Possible values  
1. Can be controlled in all stable states.  
Note:  
The default values for the above registers are true when the device is powered on, Ext. Clk  
input is present and the CE pin is high. All other registers can be read when the MicroEnable  
register is set to 0x02.  
52/118  
VS6724  
Programming model and register description  
4.2.3  
User interface register description  
Device parameters [read only]  
Table 9.  
Index  
Device parameters [read only]  
DeviceParameters [read only](1)  
uwDeviceId  
0x0001  
(MSByte)  
Purpose  
Type  
device id i.e. 724  
UINT  
0x0002 (LSByte)  
bFirmwareVsnMajor  
0x0004  
Type  
BYTE, Silicon cut 1.2 = 0,  
bFirmwareVsnMinor  
0x0006  
0x0008  
0x000a  
Type  
BYTE, Silicon cut 1.2 = 8,  
bPatchVsnMajor  
Type  
BYTE, Silicon cut 1.2 = 0,  
bPatchVsnMinor  
Type  
BYTE, Silicon cut 1.2 = 0,  
1. Can be accessed in all stable state.  
Host interface manager control  
Table 10. Device parameters [read only]  
Index  
HostInterfaceManagerControl(1)  
bUserCommand  
Default value  
Purpose  
Type  
<0> UNINITIALISED  
User level control of operating states  
CODED  
<0> UNINITIALISED - powerup default  
<1> BOOT - the boot command will identify the sensor & setup  
low level handlers  
0x0180  
<2> RUN - stream video  
<3> PAUSE- stop video streaming  
<4> STOP - low power mode, analogue powered down  
<3> SNAPSHOT- grab one frame at correct exposure without  
flashgun  
Possible values  
<6> FLASHGUN - grab one frame at correct exposure for  
flashgun  
1. Can be controlled in all stable states  
53/118  
Programming model and register description  
VS6724  
Host interface manager status  
Table 11. Host interface manager status [read only]  
Index  
HostInterfaceManagerStatus [read only](1)  
bState  
Default Value  
Purpose  
Type  
<16>_RAW  
The current state of the mode manager.  
CODED  
<16>_RAW - default powerup state.  
<33> WAITING_FOR_BOOT - Waiting for ModeManager to signal  
BOOT event.  
0x0202  
<34> PAUSED - Booted, the input pipe is idle.  
<38>WAITING_FOR_RUN - Waiting for ModeManager to complete  
RUN setup.  
Possible values  
<49> RUNNING - The pipe is active.  
<50> WAITING_FOR_PAUSE - The host has issued a PAUSE  
command. The HostInterfaceManager is waiting for the ModeManager  
to signal PAUSE processing complete.  
<64> FLASHGUN - Grabbing a single frame.  
<80> STOPPED - Low power  
bCycles  
Allows the host to read back a register which indicates that the device is  
streaming, the output should increment by one on each frame boundary  
Purpose  
0x0204  
Type  
Coded  
0 -255  
Possible values  
1. Can be accessed in all stable states  
Run mode control  
Table 12. Run mode control  
Index  
RunModeControl(1)  
fMeteringOn  
Default Value:  
<1> TRUE  
If metering is off the Auto Exposure (AE) and Auto White Balance (AWB)  
tasks are disabled  
Purpose  
0x0280  
Type  
Possible values  
Flag_e  
<0> FALSE  
<1> TRUE  
1. Can be controlled in all stable states  
54/118  
VS6724  
Programming model and register description  
Mode setup  
Table 13. Mode setup  
Index  
ModeSetup  
bNonViewLive_ActivePipeContext (Can be controlled in all stable states)  
Default Value: <0> PipeContext_0  
Select the context used for streaming, can be changed on the fly to  
switch between contexts on next frame boundary  
Purpose  
0x0302  
Type  
CODED  
<0> PipeContext_0  
<1>PipeContext_1  
Possible values  
bSnapShot_ActivePipeContext (Can be controlled in all stable states)  
Default Value:  
Purpose  
Type  
<0> PipeContext_0  
Select the context for snapshot mode  
CODED  
0x0304  
<0> PipeContext_0  
<1>PipeContext_1  
Possible values  
SensorMode (Must be configured in STOP mode)  
Default value  
Purpose  
Type  
<0>SensorMode_UXGA  
Select the different sensor mode  
CODED  
0x0308  
<0>SensorMode_UXGA  
<1>SensorMode_SVGA  
Possible values  
55/118  
Programming model and register description  
PipeContext0  
VS6724  
Table 14. PipeContext0  
Index  
PipeContext0(1)  
bImageSize0 #  
Default value  
Purpose  
Type  
<0> ImageSize_UXGA  
required output dimension.  
CODED  
<0> ImageSize_UXGA  
<1> ImageSize_SXGA  
<2> ImageSize_SVGA  
<3> ImageSize_VGA  
<4> ImageSize_CIF  
0x0380  
Possible values  
<5> ImageSize_QVGA  
<6> ImageSize_QCIF  
<7> ImageSize_QQVGA  
<8> ImageSize_QQCIF  
<9> ImageSize_Manual - to use ManualSubSample and ManualCrop  
controls select Manual mode.  
uwManualHSize0 #  
0x0383(MSB)  
0x0384(LSB)  
Default value  
Purpose  
Type  
0x00  
if ImageSize_Manual selected, input required manual H size  
UINT16  
uwManualVSize0 #  
0x0387(MSB)  
0x0388(LSB)  
Default value  
Purpose  
Type  
0x00  
if ImageSize_Manual selected, input required manual V size  
UINT16  
uwZoomStepHSize0  
0x038b(MSB)  
0x038c(LSB)  
Default value  
Purpose  
Type  
0x01  
Set the zoom H step  
UINT16  
uwZoomStepVSize0  
0x038f(MSB)  
0x0390(LSB)  
Default value  
Purpose  
Type  
0x01  
Set the zoom V step  
UINT16  
56/118  
VS6724  
Programming model and register description  
PipeContext0(1)  
Table 14. PipeContext0 (continued)  
Index  
bZoomControl0  
Default value  
Purpose  
Type  
<0> ZoomStop  
control zoom in, zoom out and zoom stop  
C
0x0392  
<0> ZoomStop  
<1> ZoomStart_In  
<2> ZoomStart_Out  
<3> ZoomStep_in  
<4> ZoomStep_out  
Possible values  
uwPanSteplHSize0  
0x0395(MSB)  
0x0396LSB)  
Default value  
Purpose  
Type  
0x00  
Set the pan H step  
UINT16  
uwPanStepVSize0  
0x0399(MSB)  
0x039a(LSB)  
Default value  
Purpose  
Type  
0x00  
Set the PanV step  
UINT16  
bPanControl0  
Default value  
Purpose  
Type  
<0> Pan_Disable  
control pandisable, pan right, pan left, pan up, pan down  
C
0x039c  
<0> Pan_Disable  
<1> Pan_Right  
<2> Pan_Left  
Possible values  
<3> Pan_Down  
<4> Pan_Up  
bCropControl0  
Default value  
Purpose  
Type  
<1> Crop_auto  
Select cropping manual or auto  
C
0x039e  
<0> Crop_manual  
<1> Crop_auto  
Possible values  
uwManualCropHorizontalStart0  
0x03a1(MSB)  
0x03a2(LSB)  
Default value  
Purpose  
Type  
0x00  
Set the cropping H start address  
UINT16  
57/118  
Programming model and register description  
VS6724  
Table 14. PipeContext0 (continued)  
Index  
PipeContext0(1)  
uwManualCropHorizontalSize0  
0x03a5(MSB)  
0x03a6(LSB)  
Default value  
Purpose  
Type  
0x00  
Set the cropping H size  
UINT16  
uwManualCropVerticalStart0  
0x03a9(MSB)  
0x03aa(LSB)  
Default value  
Purpose  
Type  
0x00  
Set the cropping Vstart address  
UINT16  
uwManualCropVerticalSize0  
0x03ad(MSB)  
0x03ae(LSB)  
Default value  
Purpose  
Type  
0x00  
Set the cropping Vsize  
UINT16  
bImageFormat0 #(2)  
Default value  
Purpose  
Type  
<0> ImageFormat_YCbCr_JFIF  
select required output image format.  
CODED  
<0> ImageFormat_YCbCr_JFIF  
<1> ImageFormat_YCbCr_Rec601  
<2> ImageFormat_YCbCr_Custom - to use custom output select  
required RgbToYCbCr OutputSignalRange from 'PipeContext' page.  
0x03b0  
<3> ImageFormat_YCbCr_400  
<4> ImageFormat_RGB_565  
<5> ImageFormat_RGB_565_Custom - to use custom output select  
required RgbToYCbCr OutputSignalRange from 'PipeContext' page.  
<6> ImageFormat_RGB_444  
Possible values  
<7> ImageFormat_RGB_444_Custom - to use custom output select  
required RgbToYCbCr OutputSignalRange from 'PipeContext' page.  
<9> ImageFormat_Bayer10_ThroughVP  
<10> ImageFormat_Bayer8_ThroughVP-- to truncate Bayer data to 8  
bits data  
<11> JPEG  
bBayerOutputAlignment0  
Default value  
Purpose  
Type  
<4> BayerOutputAlignment_RightShifted  
set Bayer output alignment  
CODED  
0x03b2  
<4> BayerOutputAlignment_RightShifted  
<5> BayerOutputAlignment_LeftShifted  
Possible values  
58/118  
VS6724  
Programming model and register description  
PipeContext0(1)  
Table 14. PipeContext0 (continued)  
Index  
bContrast0  
Default value  
Purpose  
Type  
0x87  
contrast control for both YCbCr and RGB output.  
0x03b4  
0x03b6  
BYTE  
bcolorSaturation0  
Default value  
Purpose  
Type  
0x78  
color saturation control for both YCbCr and RGB output.  
BYTE  
bGamma0  
Default value  
Purpose  
0x0f  
0x03b8  
gamma settings.  
BYTE  
Type  
Possible values  
0 to 31  
fHorizontalMirror0  
Default Value:  
Purpose  
Type  
0x00  
Horizontal image orientation flip  
Flag_e  
0x03ba  
<0> FALSE  
<1> TRUE  
Possible values  
fVerticalFlip0  
Default Value:  
Purpose  
Type  
0x00  
Vertical image orientation flip  
Flag_e  
0x03bc  
<0> FALSE  
<1> TRUE  
Possible values  
bChannelD  
Default value  
Purpose  
0x00  
0x03be  
Logical DMA Channel Number  
Type  
BYTE  
0 to 6  
Possible values  
59/118  
Programming model and register description  
VS6724  
Table 14. PipeContext0 (continued)  
Index  
PipeContext0(1)  
bJpegSqueezeSettings  
Default value  
Purpose  
Type  
0x00  
Select JPEG compression control  
BYTE  
<0> User Squeeze mode - Sets the VC squeeze setting as user  
squeeze (e.g. quality based setting). Low, medium or high quality factor  
should be set to override these settings  
0x03c0  
<1> Auto Squeeze mode - Sets the VC squeeze setting as auto squeeze  
(file size based setting).  
Possible values  
<2> Auto still capture mode - If the host is taking only one still, the  
engine calibrates and waits for 5-10 frames to work out compression  
settings to reach optimum squeeze for target file size.  
bJpegTargetFileSize  
0x03c3(MSB)  
0x03c4(LSB)  
Default value  
Purpose  
Type  
0x02ee (750KB)  
sets target file size KByte  
UINT16  
bJpegImageQuality  
Default value  
Purpose  
Type  
0x00  
Sets target JPEG image quality setting for Auto Squeeze mode  
0x03c6  
BYTE  
<0>High Quality  
Possible values  
<1> Medium Quality  
<2> Low Quality  
bJpegImageFormat  
Default value  
Purpose  
0x00  
0x03c8  
Sets image format supplied to JPEG engine  
BYTE  
Type  
Possible values  
<0>YCbCr 422 <1> YCbCr 420  
bMinScalerFactor  
Default value  
0x10  
Sets the minimum scaling factor which can be achieved by the zoom  
operation, this can be used to limit the max PCLK rate.  
0x03cc  
Purpose  
Type  
BYTE  
Possible values  
0x00 - 0xff  
1. Can be controlled in all stable state.  
# denotes registers where changes will only be consumed during the transition to a RUN state.  
2. It is possible to switch between any YCbCr (422) mode, RGB mode and Bayer 10bit or move between YCbCr 400 and a  
Bayer8 mode without a requiring a transition to STOP, it is not possible to move between these groups of modes without  
first a transition to STOP then a BOOT.  
60/118  
VS6724  
Programming model and register description  
PipeContext 1  
Table 15. PipeContext1  
Index  
PipeContext1(1)  
bImageSize1 #  
Default value  
Purpose  
Type  
<1> ImageSize_UXGA  
required output dimension.  
CODED  
<0> ImageSize_UXGA  
<1> ImageSize_SXGA  
<2> ImageSize_SVGA  
0x0400  
<3> ImageSize_VGA  
<4> ImageSize_CIF  
Possible values  
<5> ImageSize_QVGA  
<6> ImageSize_QCIF  
<7> ImageSize_QQVGA  
<8> ImageSize_QQCIF  
<9> ImageSize_Manual - to use ManualSubSample and ManualCrop  
controls select Manual mode.  
uwManualHSize1 #  
0x0403(MSB)  
0x0404(LSB)  
Default value  
Purpose  
Type  
0x00  
if ImageSize_Manual selected, input required manual H size  
UINT16  
uwManualVSize1 #  
0x0407(MSB)  
0x0408(LSB)  
Default value  
Purpose  
Type  
0x00  
if ImageSize_Manual selected, input required manual V size  
UINT16  
uwZoomStepHSize1  
0x040b(MSB)  
0x040c(LSB)  
Default value  
Purpose  
Type  
0x01  
Set the zoom H step  
UINT16  
uwZoomStepVSize1  
0x040f(MSB)  
0x0410(LSB)  
Default value  
Purpose  
Type  
0x01  
Set the zoom V step  
UINT16  
61/118  
Programming model and register description  
VS6724  
Table 15. PipeContext1 (continued)  
Index  
PipeContext1(1)  
bZoomControl1  
Default value  
Purpose  
Type  
<0> ZoomStop  
control zoom in, zoom out, zoom stop  
CODED  
0x0412  
<0> ZoomStop  
<1> ZoomStart_In  
<2> ZoomStart_Out  
<3> ZoomStep_in  
<4> ZoomStep_out  
Possible values  
uwPanSteplHSize1  
0x0415(MSB)  
0x0416(LSB)  
Default value  
Purpose  
Type  
0x00  
Set the pan H step  
UINT16  
uwPanStepVSize1  
0x0419(MSB)  
0x041a(LSB)  
Default value  
Purpose  
Type  
0x00  
Set the PanV step  
UINT16  
bPanControl1  
Default value  
Purpose  
Type  
<0> Pan_Disable  
control pandisable, pan right, pan left, pan up, pan down  
C
0x041c  
<0> Pan_Disable  
<1> Pan_Right  
<2> Pan_Left  
<3> Pan_Down  
<4> Pan_Up  
Possible values  
bCropControl1  
Default value  
Purpose  
Type  
<1> Crop_auto  
Select cropping manual or auto  
C
0x041e  
<0> Crop_manual  
<1> Crop_auto  
Possible values  
uwManualCropHorizontalStart1  
0x0421(MSB)  
0x0422(LSB)  
Default value  
Purpose  
Type  
0x00  
Set the cropping H start address  
UINT16  
62/118  
VS6724  
Programming model and register description  
PipeContext1(1)  
Table 15. PipeContext1 (continued)  
Index  
uwManualCropHorizontalSize1  
0x0425(MSB)  
0x0426(LSB)  
Default value  
Purpose  
Type  
0x00  
Set the cropping H size  
UINT16  
uwManualCropVerticalStart1  
0x0429(MSB)  
0x042a(LSB)  
Default value  
Purpose  
Type  
0x00  
Set the cropping Vstart address  
UINT16  
uwManualCropVerticalSize1  
0x042d(MSB)  
0x042e(LSB)  
Default value  
Purpose  
Type  
0x00  
Set the cropping Vsize  
UINT16  
bImageFormat1(2)  
Default value  
Purpose  
Type  
<0> ImageFormat_YCbCr_JFIF  
select required output image format.  
CODED  
<0> ImageFormat_YCbCr_JFIF  
<1> ImageFormat_YCbCr_Rec601  
<2> ImageFormat_YCbCr_Custom - to use custom output select  
required RgbToYCbCr OutputSignalRange from 'PipeContext' page.  
0x0430  
<3> ImageFormat_YCbCr_400  
<4> ImageFormat_RGB_565  
<5> ImageFormat_RGB_565_Custom - to use custom output select  
required RgbToYCbCr OutputSignalRange from 'PipeContext' page.  
<6> ImageFormat_RGB_444  
Possible values  
<7> ImageFormat_RGB_444_Custom - to use custom output select  
required RgbToYCbCr OutputSignalRange from 'PipeContext' page.  
<9> ImageFormat_Bayer10ThroughVP  
<10> ImageFormat_Bayer8ThroughVP-- to truncate Bayer data to 8 bits  
data  
<11> JPEG 4:2:2  
bBayerOutputAlignment1  
Default value  
Purpose  
Type  
<4> BayerOutputAlignment_RightShifted  
set Bayer output alignment  
CODED  
0x0432  
<4> BayerOutputAlignment_RightShifted  
<5> BayerOutputAlignment_LeftShifted  
Possible values  
63/118  
Programming model and register description  
VS6724  
Table 15. PipeContext1 (continued)  
Index  
PipeContext1(1)  
bContrast1  
Default value  
Purpose  
Type  
0x87  
0x0434  
0x0436  
contrast control for both YCbCr and RGB output.  
BYTE  
bcolorSaturation1  
Default value  
Purpose  
Type  
0x78  
color saturation control for both YCbCr and RGB output.  
BYTE  
bGamma1  
Default value  
Purpose  
0x0f  
0x0438  
gamma settings.  
BYTE  
Type  
Possible values  
0 to 31  
fHorizontalMirror1  
Default value  
Purpose  
Type  
0x00  
Horizontal image orientation flip  
Flag_e  
0x043a  
<0> FALSE  
<1> TRUE  
Possible values  
fVerticalFlip1  
Default value  
Purpose  
Type  
0x00  
Vertical image orientation flip  
Flag_e  
0x043c  
<0> FALSE  
<1> TRUE  
Possible values  
bChannelD  
Default value  
Purpose  
0x00  
0x043e  
Logical DMA Channel Number  
Type  
BYTE  
0 to 6  
Possible values  
64/118  
VS6724  
Programming model and register description  
PipeContext1(1)  
Table 15. PipeContext1 (continued)  
Index  
bJpegSqueezeSettings  
Default value  
Purpose  
Type  
0x00  
Select JPEG compression control  
BYTE  
<0> User Squeeze mode - Sets the VC squeeze setting as user  
squeeze (e.g. quality based setting). Low, medium or high quality factor  
should be set to override these settings  
0x0440  
<1> Auto Squeeze mode - Sets the VC squeeze setting as auto squeeze  
(file size based setting).  
Possible values  
<2> Auto still capture mode - If the host is taking only one still, the  
engine calibrates and waits for 5-10 frames to work out compression  
settings to reach optimum squeeze for target file size.  
bJpegTargetFileSize  
0x0443(MSB)  
0x0444(LSB)  
Default value  
Purpose  
Type  
0x02ee (750KB)  
sets target file size KByte  
UINT16  
bJpegImageQuality  
Default value  
Purpose  
Type  
0x00  
Sets target JPEG image quality setting for Auto Squeeze mode  
0x0446  
BYTE  
<0>High Quality  
Possible values  
<1> Medium Quality  
<2> Low Quality  
bJpegImageFormat  
Default value  
Purpose  
0x00  
0x0448  
Sets image format supplied to JPEG engine  
BYTE  
Type  
Possible values  
<0>YCbCr 422 <1> YCbCr 420  
bMinScalerFactor  
Default value  
0x10  
Sets the minimum scaling factor which can be achieved by the zoom  
operation, this can be used to limit the max PCLK rate.  
0x044c  
Purpose  
Type  
BYTE  
Possible values  
0x00 - 0xff  
1. Can be controlled in all stable state. # denotes registers where changes will only be consumed during the transition to a  
RUN state.  
2. It is possible to switch between any YCbCr (422) mode, RGB mode and Bayer 10bit or move between YCbCr 400 and a  
Bayer8 mode without a requiring a transition to STOP, it is not possible to move between these groups of modes without  
first a transition to STOP then a BOOT.  
65/118  
Programming model and register description  
ViewLive control  
VS6724  
Table 16. ViewLive control  
Index  
ViewLiveControl  
fEnable (Can be controlled in all stable states)  
Default value <0> FALSE  
Purpose  
set to enable the View Live mode.  
Flag_e  
0x0480  
Type  
<0> FALSE  
<1> TRUE  
Possible values  
bInitialPipeContext (must be setup in PAUSE or STOP mode)  
Default value  
<0> PipeContext_0  
First frame output will be from PipeSetupBank selected by  
Purpose  
'bInitialPipeContext'. if ViewLive is enabled the next frame will be from  
the other PipeContext, otherwise only one PipeContext will be used.  
0x0482  
Type  
CODED  
<0> PipeContext_0  
<1> PipeContext_1  
Possible values  
ViewLive status [read only]  
Table 17. ViewLive status  
Index  
ViewLiveStatus [read only]  
CurrentPipeContext  
Default value  
Purpose  
<0>PipeContext_0  
indicates the PipeContext which has most recently been applied to the  
pixel pipe hardware.  
0x0500  
Type  
CODED  
<0> PipeContext_0  
<1> PipeContext_1  
Possible values  
66/118  
VS6724  
Programming model and register description  
Power management  
Table 18. Power management  
Index  
PowerManagement(1)  
bTimeToPowerdown  
Default value  
Purpose  
Type  
0x0f  
0x0580  
Time (mSecs) from entering Pause mode until the system automatically  
transitions stop mode. 0xff disables the automatic transition.  
BYTE  
1. Must be configured in STOP mode  
Video timing parameter host inputs  
Table 19. Video timing parameter host inputs  
Index  
VideoTimingParameterHostInputs(1)  
uwExternalClockFrequencyNumerator  
Default value  
Purpose  
0x0c  
The External Clock Frequency configuration must match the frequency  
supplied to the CLK pin;  
0x0605(MSByte)  
0x0606(LSByte)  
External clock frequency = uwExternalClockFrequencyDenumerator/  
bExternalClockFrequencyDenominator  
Type  
UINT16  
The External clock frequency range is 6 to 27, this represents 6MHz to  
27 MHz  
Possible values  
bExternalClockFrequencyDenominator  
0x0608  
Default value  
Type  
0x01  
BYTE  
1. Should be configured in the RAW state  
Video timing parameter FP inputs (read only)  
Table 20. Video timing parameter FP inputs (read only)  
Index  
VideoTimingParameterFPInputs (read only)(1)  
uwExternalClockFrequencyMhzNumerator  
0x0605(MSByte)  
0x0606(LSByte)  
Purpose  
Type  
Allows the host to read back the uwExternalClockFrequency  
FLOAT  
1. Can be read in all operating modes  
67/118  
Programming model and register description  
Video timing control  
VS6724  
Table 21. Video timing control  
Index  
VideoTimingControl(1)  
bSysClkMode  
Default value  
Purpose  
0x00  
User selection between using default system clock frequency or  
selecting this frequency manually  
0x0880  
Type  
CODED  
<0>Normal - Default PLL frequency  
Possible values  
<1>user - Manual selection of PLL frequency  
bfpUserPLLClk  
Default value  
Purpose  
Type  
0x00  
0x0883(MSByte)  
0x0884(LSByte)  
User selectable system clock frequency  
FLOAT - number of MHz  
Minimum = 6  
Possible values  
Maximum = 270 (Max required for 30fps)  
1. Must be controlled in STOP state  
Frame dimension parameter host inputs  
Table 22. Frame dimension parameter host inputs  
Index  
FrameDimensionParameterHostInputs(1)  
bLightingFrequencyHz  
Default value  
Purpose  
Type  
0x64  
AC Frequency - used for flicker free time period calculations this mains  
0x0b80  
frequency determines the flicker free time period.  
BYTE  
fFlickerCompatibleFrameLength  
Default value  
Purpose  
Type  
<0> FALSE  
flicker_compatible_frame_length  
Flag_e  
0x0b82  
<0> FALSE  
<1> TRUE  
Possible values  
1. Can be controlled in all stable states  
68/118  
VS6724  
Programming model and register description  
Static frame rate control  
Table 23. Static frame rate control  
Index  
StaticFrameRateControl(1)  
uwDesiredFrameRate_Num  
0x0c81(MSByte)  
0x0c82(LSByte)  
Default value  
Purpose  
Type  
0x1e  
Numerator for the Frame Rate  
UINT16  
bDesiredFrameRate_Den  
Default value  
Purpose  
Type  
0x01  
0x0c84  
Denominator for the Frame Rate  
BYTE  
1. Can be controlled in all stable states  
Static frame rate status (read only)  
Table 24. Static frame rate status  
Index  
StaticFrameRatestatus(1)  
fprequestedFramerate_Hz  
0x0d01(MSByte)  
0x0d02(LSByte)  
Purpose  
Type  
Shows the existing framerate of the system  
FLOAT  
1. Can be controlled in all stable states  
69/118  
Programming model and register description  
VS6724  
Automatic frame rate control  
Table 25. Automatic frame rate control  
Index  
AutomaticFrameRateControl(1)  
bFrameRateMode  
Default value  
Purpose  
Type  
0x00  
Defines the mode in which the framerate of the system would work  
0x0d80  
<0> Manual - the system uses the values programmed into the  
StaticFrameRateControl registers  
<1> Auto - the system automatically adjusts the framerate between the  
Possible values  
bUserMinimumFrameRate_Hz and bUserMinimumFrameRate_Hz.  
bImpliedGainThresholdLow_num  
Default value  
Purpose  
Type  
0x02  
0x0d82  
0x0d84  
0x0d86  
0x0d88  
Numerator for calculation of low threshold of autoframerate control  
BYTE  
bImpliedGainThresholdLow_den  
Default value  
Purpose  
Type  
0x02  
Denominator for calculation of low threshold of autoframerate control.  
BYTE  
bImpliedGainThresholdHigh_num  
Default value  
Purpose  
Type  
0x02  
Numerator for calculation of High threshold of autoframerate control  
BYTE  
bImpliedGainThresholdHigh_Den  
Default value  
Purpose  
Type  
0x02  
Denominator for calculation of high threshold of autoframerate control  
BYTE  
bUserMinimumFrameRate_Hz  
Default value  
Purpose  
Type  
0x02  
0x0d8a  
Sets the minimum framerate employed when in automatic framerate  
mode.  
BYTE  
70/118  
VS6724  
Programming model and register description  
Table 25. Automatic frame rate control (continued)  
Index  
AutomaticFrameRateControl(1)  
bUserMinimumFrameRate_Hz  
Default value  
Purpose  
Type  
0x1e  
0x0d8c  
Sets the maximum framerate employed when in automatic framerate  
mode.  
BYTE  
bRelativeChange_num  
Default value  
Purpose  
Type  
0x02  
0x0d8e  
0x0d90  
Numerator for calculation of relative change in framerate.  
BYTE  
bRelativeChange_den  
Default value  
Purpose  
Type  
0x02  
Denominator for calculation of relative change in framerate  
BYTE  
fpImpliedGain (read only)  
0x0e01  
0x0e02  
Purpose  
Type  
Displays the present value of implied gain  
FLOAT  
1. Can be controlled in all stable states  
Exposure controls  
Table 26. Exposure controls  
Index  
ExposureControls(1)  
bMode  
Default value  
Purpose  
Type  
<0> AUTOMATIC_MODE  
Sets the mode for the exposure algorithm  
CODED  
<0> AUTOMATIC_MODE - Automatic Mode of Exposure which includes  
computation of Relative Step  
0x1080  
<1> COMPILED_MANUAL_MODE - Compiled Manual Mode in which  
the desired exposure is given and not calculated by algorithm  
<2> DIRECT_MANUAL_MODE - Mode in which the exposure  
parameters are input directly and not calculated by compiler  
<3> FLASHGUN_MODE - Flash Gun Mode in which the exposure  
parameters are set to fixed values  
possible values  
71/118  
Programming model and register description  
VS6724  
Table 26. Exposure controls (continued)  
Index  
ExposureControls(1)  
bMetering  
Default value  
Purpose  
Type  
<0> ExposureMetering_flat  
Weights to be associated with the zones for calculating the mean  
statistics Exposure Weight could Centered, Backlit or Flat  
0x1082  
C
<0> ExposureMetering_flat - Uniform gain associated with all pixels  
<1> ExposureMetering_backlit - more gain associated with centre pixels  
and bottom pixels  
possible values  
<2> ExposureMetering_centred - more gain associated with centre  
pixels  
bManualExposureTime_Num  
Default value  
Purpose  
Type  
0x01  
0x1084  
0x1086  
Exposure Time for Compiled Manual Mode in seconds. Num/Den gives  
required exposure time  
BYTE  
bManualExposureTime_Den  
Default value  
Type  
0x1e  
BYTE  
fpManualFloatExposureTime  
Default value  
Purpose  
Type  
0x59aa (15008)  
0x1089(MSByte)  
0x108a(LSByte)  
Exposure Time for the Manual Mode. This value is in microseconds.  
iMiscSettings must be configured  
FLOAT  
fpColdStartDesiredTime_us  
Default value  
Purpose  
Type  
0x59aa (15008)  
0x108d(MSByte)  
0x108e(LSByte)  
Exposure Time for the that the system will use when entering RUN  
mode  
FLOAT  
iExposureCompensation  
Default value  
Purpose  
Type  
0x00  
Exposure Compensation - a user choice for setting the runtime target. A  
unit of exposure compensation corresponds to 1/6 EV. Default value  
according to the Nominal Target of 30 is 0. Coded Value of Exposure  
compensation can take values from -25 to 12.  
0x1090  
INT8  
72/118  
VS6724  
Programming model and register description  
ExposureControls(1)  
Table 26. Exposure controls (continued)  
Index  
iMiscSettings  
Default value  
Purpose  
Type  
0x00  
Set Bit [6] to use fpManualFloatExposureTime value  
0x1092  
INT8  
0x00 - COMPILED_MANUAL_MODE uses  
bManualExposureTime_Num and bManualExposureTime_Den  
Possible Value  
0x40 - COMPILED_MANUAL_MODE uses  
fpManualFloatExposureTime  
uwDirectModeCoarseIntegrationLines  
0x1095 (MSByte) Default value  
0x00  
0x1096(LSByte)  
Purpose  
Coarse Integration Lines to be set for Direct Mode  
UINT16  
Type  
uwDirectModeFineIntegrationPixels  
0x1099(MSByte) Default value  
0x00  
0x109a(LSByte)  
Purpose  
Fine Integration Pixels to be set for Direct Mode  
UINT16  
Type  
fpDirectModeAnalogGain  
0x109d (MSByte) Default value  
0x00  
0x109e(LSByte)  
Purpose  
Analog Gain to be set for Direct Mode  
FLOAT  
Type  
fpDirectModeDigitalGain  
0x10a1 (MSByte) Default value  
0x00  
0x10a2(LSByte)  
Purpose  
Digital Gain to be set for Direct Mode  
FLOAT  
Type  
uwFlashGunModeCoarseIntLines  
0x10a5 (MSByte) Default value  
0x00  
0x10a6(LSByte)  
Purpose  
Coarse Integration Lines to be set for Flash Gun Mode  
UINT16  
Type  
uwFlashGunModeFineIntPixels  
0x10a9 (MSByte) Default value  
0x00  
0x10aa(LSByte)  
Purpose  
Fine Integration Pixels to be set for Flash Gun Mode  
UINT16  
Type  
73/118  
Programming model and register description  
VS6724  
Table 26. Exposure controls (continued)  
Index  
ExposureControls(1)  
fpFlashGunModeAnalogGain  
0x10ad (MSByte) Default value  
0x00  
0x10ae(LSByte)  
Purpose  
Analog Gain to be set for Flash Gun Mode  
FLOAT  
Type  
fpFlashGunModeDigitalGain  
0x10b1 (MSByte) Default value  
0x00  
0x10b2(LSByte)  
Purpose  
Digital Gain to be set for Flash Gun Mode  
FLOAT  
Type  
fFreezeAutoExposure  
Default value  
<0> FALSE  
Purpose  
0x10b4  
Freeze auto exposure  
Flag_e  
Type  
<0> FALSE  
<1> TRUE  
possible values  
fpUserMaximumIntegrationTime  
Default value  
Purpose  
Type  
0x647f (654336)  
0x10b7 (MSByte)  
0x10b8(LSByte)  
User Maximum Integration Time in microseconds. This control takes in  
the maximum integration time that host would like to support. This would  
in turn give an idea of the degree of “wobbly pencil effect” acceptable to  
Host.  
FLOAT  
fpRecommendFlashGunAnalogGainThreshold  
0x10bb(MSByte)  
0x10bc(LSByte)  
Default value  
Purpose  
Type  
0x4200 (4)  
Recommend flash gun analog gain threshold value  
FLOAT  
bAntiFlickerMode  
Default value  
Purpose  
Type  
<0> AntiFlickerMode_Inhibit  
Anti flicker mode  
CODED  
0x10c0  
<0> AntiFlickerMode_Inhibit  
<1> AntiFlickerMode_ManualEnable  
Possible values  
<2>AntiFlickerMode_AutomaticEnable  
1. Can be controlled in all stable states  
74/118  
VS6724  
Programming model and register description  
Exposure algorithm control  
Table 27. Exposure algorithm control  
Index  
ExposureAlgorithmControl(1)  
fpDigitalGainFloor  
Default value  
Purpose  
1.0000  
0x1119(MSByte)  
0x111a(LSByte)  
Minimum digital gain applied by the auto exposure system  
Type  
FLOAT  
Possible values  
Min 1.0000, Max 2.50000  
fpDigitalGainCeiling  
Default value  
Purpose  
2.5000  
0x111d(MSByte)  
0x111e(LSByte)  
Maximum Digital Gain applied by the auto exposure system  
Type  
FLOAT  
Possible values  
Min 1.0000, Max 2.50000  
1. Can be controlled in all stable states  
Exposure status [read only]  
Table 28. Exposure status [read only]  
Index  
ExposureStatus [read only]  
uwCoarseIntegrationPending_lines  
The course period of time over which every pixel is integrating is a  
multiple of the number of lines times the number of pixels on the line  
times the pixel period. These registers show the number of lines of  
integration which will be used for the next frame.  
0x1209(MSByte)  
0x120a(LSByte)  
Purpose  
Type  
FLOAT  
uwFineIntegrationPending_pixels  
0x120d(MSByte)  
0x120e(LSByte)  
Purpose  
Type  
The fine period of integration is detailed as a added of  
FLOAT  
fpAnalogGainPending  
0x1211(MSByte)  
0x1212(LSByte)  
Purpose  
Type  
Minimum digital gain applied by the auto exposure system  
FLOAT  
fpDigitalGainPending  
0x1215(MSByte)  
0x1216(LSByte)  
Purpose  
Type  
Maximum Digital Gain applied by the auto exposure system  
FLOAT  
fpDesiredExposureTime_us  
0x1219(MSByte)  
0x121a(LSByte)  
Purpose  
Type  
Time in µsecond that the system would like to use for correct exposure  
FLOAT  
75/118  
Programming model and register description  
VS6724  
Table 28. Exposure status [read only] (continued)  
Index  
ExposureStatus [read only]  
fpCompiledExposureTime_us  
0x121d(MSByte)  
0x121e(LSByte)  
Purpose  
Type  
Time in µsecond that the system uses  
FLOAT  
fpFinalDesiredExposureTime_us  
0x1285(MSByte)  
0x1286(LSByte)  
Absolute time in µsecond that the system would like to use for correct  
exposure, this is the value which is used to control the dampers  
Purpose  
Type  
FLOAT  
White balance control  
Table 29. White balance control  
Index  
WBControlParameters(1)  
bWhiteBalanceMode  
Default value  
Purpose  
Type  
<1> AUTOMATIC  
For setting Mode of the white balance  
CODED  
<0> OFF - No White balance, all gains will be unity in this mode  
<1> AUTOMATIC - Automatic mode, relative step is computed here  
<3> MANUAL_RGB - User manual mode, gains are applied manually  
<4> DAYLIGHT_PRESET - DAYLIGHT and all the modes below, fixed  
value of gains are applied here.  
0x1380  
possible values  
<5> TUNGSTEN_PRESET  
<6> FLUORESCENT_PRESET  
<7> HORIZON_PRESET  
<8> MANUAL_color_TEMP  
<9> FLASHGUN_PRESET  
bManualRedGain  
Default value  
Purpose  
0x00  
User setting for Red Channel gain  
BYTE  
0x1382  
Type  
0 to 255  
Applied_Red_Gain = (1 + bManualRedGain / 128) / MinGain  
possible values  
Where MinGain = the smallest value from either Applied_Red_Gain,  
Applied_Green_Gain or Applied_Blue_Gain  
76/118  
VS6724  
Programming model and register description  
Table 29. White balance control (continued)  
Index  
WBControlParameters(1)  
bManualGreenGain  
Default value  
Purpose  
Type  
0x00  
User setting for Green Channel gain  
BYTE  
0x1384  
0 to 255  
Applied_Green_Gain = (1 + bManualGreenGain / 128) / MinGain  
possible values  
Where MinGain = the smallest value from either Applied_Red_Gain,  
Applied_Green_Gain or Applied_Blue_Gain  
bManualBlueGain  
Default value  
Purpose  
Type  
0x00  
User setting for Blue Channel gain  
BYTE  
0x1386  
0 to 255  
Applied_Blue_Gain = (1 + bManualBlueGain / 128) / MinGain  
possible values  
Where MinGain = the smallest value from either Applied_Red_Gain,  
Applied_Green_Gain or Applied_Blue_Gain  
bMiscSettings  
Default value  
Purpose  
Type  
0x00  
Bit [2] fFreezeWhiteBalance  
BYTE  
0x1388  
0x00 - Normal  
possible values  
0x04 - Freeze white balance  
fpFlashRedGain  
Default value  
0x3e80 (1.250)  
0x138b (MSByte)  
0x138c(LSByte)  
When FLASHGUN_PRESET is selected in bWhiteBalanceMode the  
fpFlashRedGain is used.  
Purpose  
Type  
FLOAT  
fpFlashGreenGain  
Default value  
0x3e00 (1.000)  
0x138f (MSByte)  
0x1390(LSByte)  
When FLASHGUN_PRESET is selected in bWhiteBalanceMode the  
fpFlashGreenGain is used.  
Purpose  
Type  
FLOAT  
77/118  
Programming model and register description  
VS6724  
Table 29. White balance control (continued)  
Index  
WBControlParameters(1)  
fpFlashBlueGain  
Default value  
Purpose  
Type  
0x3e8a (1.269531)  
0x1393(MSByte)  
0x1394(LSByte)  
When FLASHGUN_PRESET is selected in bWhiteBalanceMode the  
fpFlashBlueGain is used.  
FLOAT  
1. Can be controlled in all stable states  
White balance constrainer controls  
Table 30. White balance constrainer controls  
Index  
WhiteBalanceConstrainerControls(1)  
fpRedA  
0x1501(MSByte)  
0x1502(LSByte)  
Default value  
Purpose  
Type  
0.281738  
Sets location of Ref. A point on constrainer control  
FLOAT  
fpBlueA  
0x1505(MSByte)  
0x1506(LSByte)  
Default value  
Purpose  
Type  
0.4223636  
Sets location of Ref. A point on constrainer control  
FLOAT  
fpRedB  
0x1509(MSByte)  
0x150a(LSByte)  
Default value  
Purpose  
Type  
0.4223636  
Sets location of Ref. B point on constrainer control  
FLOAT  
fpBlueB  
0x150d(MSByte)  
0x150e(LSByte)  
Default value  
Purpose  
Type  
0.281738  
Sets location of Ref. B point on constrainer control  
FLOAT  
fpMaximumDistanceAllowedFromLocus  
0x1511(MSByte)  
0x1512(LSByte)  
Default value  
Purpose  
Type  
0.281738  
Sets distance from locus within which the white balance is constrained.  
FLOAT  
78/118  
VS6724  
Programming model and register description  
Table 30. White balance constrainer controls (continued)  
Index  
WhiteBalanceConstrainerControls(1)  
fEnableConstrainedWhiteBalance  
Default value  
Purpose  
Type  
0.4223636  
Maximum Digital Gain applied by the auto exposure system  
CODED  
0x1514  
<0> FALSE  
<1> TRUE  
Possible values  
1. Can be controlled in all stable states  
Image stability [read only]  
Table 31. Image stability [read only]  
Index  
Image stability [read only]  
fWhiteBalanceStable  
Default value  
0x00  
Purpose  
0x1800  
Indicated that white balance system is stable/unstable  
CODED  
Type  
<0> Unstable  
<1> Stable  
Possible values  
fExposureStable  
Default value  
0x00  
Purpose  
01802  
Indicated that the exposure system is stable/unstable  
CODED  
Type  
<0> Unstable  
<1> Stable  
Possible values  
fStable  
Default value  
0x00  
Purpose  
0x1808  
Consolidated flag to indicate whether the system is stable/unstable  
CODED  
Type  
<0> Unstable  
<1> Stable  
Possible values  
79/118  
Programming model and register description  
Sensor setup  
VS6724  
Table 32. Sensor setup  
Index  
SensorSetup(1)  
fpRedtilt  
Default value  
Purpose  
0x3e00  
0x1885  
0x1886  
An offset can be applied to the Red data from the sensor array to ensure  
help match the response of all the color channels  
Type  
BYTE  
fpGreentilt  
Default value  
0x3e00  
0x1889  
0x188a  
An offset can be applied to the Green data from the sensor array to  
ensure help match the response of all the color channels  
Purpose  
Type  
BYTE  
fpbluetilt  
Default value  
0x3e00  
0x188d  
0x188e  
An offset can be applied to the Blue data from the sensor array to ensure  
help match the response of all the color channels  
Purpose  
Type  
BYTE  
bBlackCorrectionOffset  
Default value  
Purpose  
Type  
0x00  
0x1890  
A black correction offset can be added to the sensor pedestal. This  
maybe adjusted to improve the black level.  
BYTE  
1. Can be controlled in all stable states  
80/118  
VS6724  
Programming model and register description  
ExpSensor constants  
Table 33. ExpSensor constants  
Index  
ExpSensorConstants(1)  
uwSensorAnalogGainFloor  
Default value  
Purpose  
0x00  
0x1901(MSByte)  
0x1902(LSByte)  
Sets the minimum gain that will be used by the auto exposure system.  
BYTE-Bits [7:0] - NOTE: Bits[16:8 and 3:0] are not used.  
Type  
Possible values.  
Min Analogue gain = 256 / (256 - uwSensorAnalogGainFloor)  
uwSensorAnalogGainFloor  
Default value  
Purpose  
0xd0  
0x1905(MSByte)  
0x1906(LSByte)  
Sets the maximum gain that will be used by the auto exposure system.  
BYTE-Bits [7:0] - NOTE: Bits[16:8 and 3:0] are not used.  
Max Analogue gain = 256 / (256 - uwSensorAnalogGainFloor)  
Type  
Possible values  
1. Can be controlled in all stable states  
Flash control  
Table 34. Flash control  
Index  
FlashControl(1)  
bFlashMode  
Default value  
Purpose  
<0> FLASH_OFF  
Select the flash type and on/off  
CODED  
0x1980  
Type  
<0> FLASH_OFF  
<1>FLASH_TORCH  
<2>FLASH_PULSE  
Possible values  
uwFlashOffLine  
0x1983(MSB)  
0x1984(LSB)  
Default value  
Purpose  
Type  
0x021c (540)  
In flash_pulse mode, used to control off line  
UINT16  
1. Can be controlled in all stable states  
81/118  
Programming model and register description  
Flash status [read only]  
VS6724  
Table 35. Flash status  
Index  
FlashStatus [read only]  
fFlashRecommend  
Default value  
<0> FALSE  
This flag is set if the Exposure Control system reports that the image is  
underexposed and so the flashgun is recommended to the Host  
controlled by register fpRecommendFlashGunAnalogGainThreshold.  
It is at the discretion of Host to use it or not for the following still grab.  
0x1a00  
Purpose  
Type  
Flag_e  
Possible values  
<0> FALSE <1> TRUE  
fFlashGrabComplete  
Default value  
Purpose  
<0> FALSE  
0x1a02  
This flag indicates that the FlashGun Image has been grabbed.  
Type  
Flag_e  
Possible values  
<0> FALSE <1> TRUE  
Lens shading correction  
Table 36. Lens shading correction  
Index  
LensShadingcorrection(1)  
uwHorizontalOffsetR  
Default value  
purpose  
type  
0x00  
0x1c01 (MSByte)  
0x1c02 (LSByte)  
Controls lens shading Horizontal Offset for red pixels  
VPIP_UINT16  
uwHorizontalOffsetGR  
Default value  
0x1c05 (MSByte)  
0x1c06 (LSByte)  
purpose  
type  
Controls lens shading Horizontal Offset for green_red pixels  
VPIP_UINT16  
uwHorizontalOffsetGB  
Default value  
0x1c09 (MSByte)  
0x1c0a (LSByte)  
purpose  
type  
Controls lens shading Horizontal Offset for green_blue pixels  
VPIP_UINT16  
82/118  
VS6724  
Programming model and register description  
Table 36. Lens shading correction (continued)  
Index  
LensShadingcorrection(1)  
uwHorizontalOffsetB  
Default value  
0x1c0e (MSByte)  
0x1c0f (LSByte)  
purpose  
Controls lens shading Horizontal Offset for blue pixels  
VPIP_UINT16  
type  
uwVerticalOffsetR  
Default value  
purpose  
0x1c11 (MSByte)  
0x1c12 (LSByte)  
Controls lens shading Vertical Offset for red pixels  
VPIP_UINT16  
type  
uwVerticalOffsetGR  
Default value  
purpose  
0x1c15 (MSByte)  
0x1c16 (LSByte)  
Controls lens shading Vertical Offset for green_red pixels  
VPIP_UINT16  
type  
uwVerticalOffsetGB  
Default value  
purpose  
0x1c19 (MSByte)  
0x1c1a (LSByte)  
Controls lens shading Vertical Offset for green_blue pixels  
VPIP_UINT16  
type  
uwVerticalOffsetB  
Default value  
purpose  
0x1c1e (MSByte)  
0x1c1f (LSByte)  
Controls lens shading Vertical Offset for blue pixels  
VPIP_UINT16  
type  
iR2RCoefficient  
Default value  
purpose  
0x1c20  
0x1c22  
Controls lens shading R2 component for red pixels.  
VPIP_INT8  
type  
iR2GRCoefficient  
Default value  
purpose  
Controls lens shading R2 component for green_red pixels.  
VPIP_INT8  
type  
83/118  
Programming model and register description  
Table 36. Lens shading correction (continued)  
VS6724  
Index  
LensShadingcorrection(1)  
iR2GBCoefficient  
Default value  
purpose  
0x1c24  
Controls lens shading R2 component for green_blue pixels.  
VPIP_INT8  
type  
iR2BCoefficient  
Default value  
purpose  
0x1c26  
0x1c28  
0x1c2a  
0x1c2c  
0x1c2e  
Controls lens shading R2 component for blue pixels.  
VPIP_INT8  
type  
iR4RCoefficient  
Default value  
purpose  
Controls lens shading R4 component for red pixels.  
VPIP_INT8  
type  
iR4GRCoefficient  
Default value  
purpose  
Controls lens shading R4 component for green_red pixels.  
VPIP_INT8  
type  
iR4GBCoefficient  
Default value  
purpose  
Controls lens shading R4 component for green_blue pixels.  
VPIP_INT8  
type  
iR4BCoefficient  
Default value  
purpose  
0x00  
Controls lens shading R4 component for blue pixels.  
VPIP_INT8  
type  
84/118  
VS6724  
Programming model and register description  
Table 36. Lens shading correction (continued)  
Index  
LensShadingcorrection(1)  
fDisable  
Default value  
purpose  
type  
0x00  
To enable or disable Lens shading block  
Flag_e  
0x1c30  
<0> VPIP_FALSE  
<1> VPIP_TRUE  
possible values  
1. Can be controlled in all stable states  
Defect correction 1 controls  
Table 37. Defect correction 1 controls  
Index  
DefectCorrection1Controls(1)  
fDisableFilter  
Default value  
Purpose  
Type  
<0> FALSE  
Disable defect correction 1  
0x1c80  
Flag_e  
<0> FALSE  
<1> TRUE  
Possible values  
1. Can be controlled in all stable state  
Defect correction 2 controls  
Table 38. Defect correction 2 controls  
Index  
DefectCorrection 2Controls(1)  
fDisableFilter  
Default value  
Purpose  
Type  
<0> FALSE  
Disable defect correction 2  
0x1d00  
Flag_e  
<0> FALSE  
<1> TRUE  
Possible values  
1. Can be controlled in all stable state  
85/118  
Programming model and register description  
Interpolation control  
VS6724  
Table 39. Interpolation control  
Index  
InterpolationControl(1)  
bAntiAliasFilterSuppress  
Default value  
Purpose  
Type  
0x08  
0x1d80  
Anti alias filter suppress  
BYTE  
1. Can be controlled in all stable state  
Color matrix dampers  
Table 40. color matrix dampers  
Index  
colorMatrixDamper(1)  
fDisable  
Default value  
<0> FALSE  
set to disable color matrix damper and therefore ensure that all the color  
matrix coefficients remain constant under all conditions.  
Purpose  
0x1e00  
Type  
Flag_e  
<0> FALSE  
<1> TRUE  
Possible values  
fpLowThreshold  
0x1e03(MSByte) Default value  
0x67d1 (2000896)  
0x1e04(LSByte)  
Purpose  
Low Threshold for exposure for calculating the damper slope  
FLOAT  
Type  
fpHighThreshold  
0x1e07(MSByte) Default value  
0x6862 (2498560)  
0x1e08(LSByte)  
Purpose  
High Threshold for exposure for calculating the damper slope  
FLOAT  
Type  
fpMinimumOutput  
0x1e0b (MSByte) Default value  
0x3acd (0.350098)  
0x1e0c(LSByte)  
Purpose  
Minimum possible damper output for the color matrix  
FLOAT  
Type  
1. Can be controlled in all stable state  
86/118  
VS6724  
Programming model and register description  
sRGB color matrix  
Table 41. sRGB color matrix  
Index  
sRGBColorMatrix(1) (2)  
fpGinR  
0x1e81 (MSByte) Default value  
0x1e82(LSByte)  
Purpose  
Green in Red element  
Type  
fpBinR  
FLOAT  
0x1e85 (MSByte) Default value  
0x1e86 (LSByte)  
Purpose  
Blue in Red element  
FLOAT  
Type  
fpRinG  
0x1e89 (MSByte) Default value  
0x1e8a (LSByte)  
Purpose  
Red in Green element  
FLOAT  
Type  
fpBinG  
0x1e8d (MSByte) Default value  
0x1e8e (LSByte)  
Purpose  
Blue in Green element  
FLOAT  
Type  
fpRinB  
0x1e91 (MSByte) Default value  
0x00  
0x1e92 (LSByte)  
Purpose  
Red in Blue element  
FLOAT  
Type  
fpGinB  
0x1e95 (MSByte) Default value  
0x00  
0x1e96(LSByte)  
Purpose  
Green in Blue element  
FLOAT  
Type  
1. The diagonal elements of the matrix are calculated such at the sun for each row equal unity  
2. Can be controlled in all stable states  
87/118  
Programming model and register description  
Peaking control  
VS6724  
Table 42. Peaking control  
Index  
Peaking control(1)  
bUserPeakGain  
Default value  
Purpose  
Type  
0x0e  
0x1f00  
controls peaking gain / sharpness applied to the image  
BYTE  
fDisableGainDamping  
Default value  
Purpose  
<0> FALSE  
set to disable damping and therefore ensure that the peaking gain  
0x1f02  
applied remains constant under all conditions  
Type  
Flag_e  
<0> FALSE  
<1> TRUE  
Possible values  
fpDamperLowThreshold_Gain  
0x1f05 (MSByte)  
0x1f06(LSByte)  
Default value  
Purpose  
Type  
0x62ac (350208)  
Low Threshold for exposure for calculating the damper slope - for gain  
FLOAT  
fpDamperHighThreshold_Gain  
0x1f09 (MSByte)  
0x1f0a(LSByte)  
Default value  
Purpose  
Type  
0x65d1 (10004488)  
High Threshold for exposure for calculating the damper slope - for gain  
FLOAT  
fpMinimumDamperOutput_Gain  
0x1f0d (MSByte)  
0x1f0e(LSByte)  
Default value  
Purpose  
Type  
0x3d33 (0.799805)  
Minimum possible damper output for the gain.  
FLOAT  
bUserPeakLoThresh  
Default value  
Purpose  
Type  
0x1e  
0x1f10  
Adjust degree of coring. range: 0 - 63  
BYTE  
fDisableCoringDamping  
Default value  
Purpose  
Type  
<0> FALSE  
set to ensure that bUserPeakLoThresh is applied to gain block  
Flag_e  
0x1f12  
88/118  
<0> FALSE  
<1> TRUE  
Possible values  
VS6724  
Programming model and register description  
Peaking control(1)  
Table 42. Peaking control (continued)  
Index  
bUserPeakHiThresh  
Default value  
Purpose  
Type  
0x30  
0x1f14  
adjust maximum gain that can be applied. range: 0 - 63  
BYTE  
fpDamperLowThreshold_Coring  
0x1f107(MSByte) Default value  
0x624a (300032)  
0x1f108(LSByte)  
Purpose  
Low Threshold for exposure for calculating the damper slope - for coring  
FLOAT  
Type  
fpDamperHighThreshold_Coring  
0x1f1b (MSByte)  
0x1f1c(LSByte)  
Default value  
Purpose  
Type  
0x656f (900096)  
High Threshold for exposure for calculating the damper slope - for coring  
FLOAT  
fpMinimumDamperOutput_Coring  
0x1f1f (MSByte)  
0x1f20(LSByte)  
Default value  
Purpose  
Type  
0x3a00 (0.2500)  
Minimum possible damper output for the Coring.  
FLOAT  
1. Can be controlled in all stable states  
89/118  
Programming model and register description  
VS6724  
RGB to YCbCr matrix manual control  
Table 43. RGB to YCbCr matrix manual control  
Index  
RGB to YCbCr matrix (1)  
fRgbToYCbCrManuCtrl  
Default value  
Purpose  
Type  
<0> FALSE  
Enables manual RGB to YCbCr matrix  
Flag_e  
0x2080  
<0> FALSE  
<1> TRUE  
Possible values  
w0_0  
0x2083 (MSByte) Default value  
0x00  
0x2084(LSByte)  
Purpose  
Row 0 Column 0 of YCbCr matrix  
UINT_16  
Type  
w0_1  
0x2087 (MSByte) Default value  
0x00  
0x2088(LSByte)  
Purpose  
Row 0 Column 1 of YCbCr matrix  
UINT_16  
Type  
w0_2  
0x208b (MSByte) Default value  
0x00  
0x208c(LSByte)  
Purpose  
Row 0 Column 2 of YCbCr matrix  
UINT_16  
Type  
w1_0  
0x208f (MSByte)  
0x2090(LSByte)  
Default value  
Purpose  
Type  
0x00  
Row 1 Column 0 of YCbCr matrix  
UINT_16  
w1_1  
0x2093 (MSByte) Default value  
0x00  
0x2094(LSByte)  
Purpose  
Row 1 Column 1 of YCbCr matrix  
UINT_16  
Type  
w1_2  
0x2097 (MSByte) Default value  
0x00  
0x2098(LSByte)  
Purpose  
Row 1 Column 2 of YCbCr matrix  
UINT_16  
Type  
90/118  
VS6724  
Programming model and register description  
Table 43. RGB to YCbCr matrix manual control  
Index  
RGB to YCbCr matrix (1)  
w2_0  
0x209b (MSByte) Default value  
0x00  
0x209c(LSByte)  
Purpose  
Row 2 Column 0 of YCbCr matrix  
UINT_16  
Type  
w2_1  
0x209f (MSByte)  
0x20a0(LSByte)  
Default value  
Purpose  
Type  
0x00  
Row 2 Column 1 of YCbCr matrix  
UINT_16  
w2_2  
0x20a3(MSByte) Default value  
0x00  
0x20a4(LSByte)  
Purpose  
Row 2 Column 2 of YCbCr matrix  
UINT_16  
Type  
YinY  
0x20a7 (MSByte) Default value  
0x00  
0x20a8(LSByte)  
Purpose  
Y in Y  
Type  
YinCb  
UINT_16  
0x20ab (MSByte) Default value  
0x00  
0x20ac(LSByte)  
Purpose  
Y in Cb  
UINT_16  
Type  
YinCr  
0x20af (MSByte)  
0x20b0(LSByte)  
Default value  
Purpose  
Type  
0x00  
Y in Cr  
UINT_16  
1. Can be controlled in all stable states  
91/118  
Programming model and register description  
Gamma manual control  
VS6724  
Table 44. Gamma manual control  
Index  
GammaManuControl(1)  
fGammaManuCtrl  
Default value  
Purpose  
Type  
<0> FALSE  
Enables manual Gamma Setup  
Flag_e  
0x2100  
<0> FALSE  
<1> TRUE  
Possible values  
bRPeakGamma  
Default value  
Purpose  
Type  
0x00  
0x2102  
0x2104  
0x2106  
0x2108  
0x210a  
0x210c  
Peaked Red channel gamma value  
BYTE  
bGPeakGamma  
Default value  
Purpose  
Type  
0x00  
Peaked Green channel gamma value  
BYTE  
bBPeakGamma  
Default value  
Purpose  
Type  
0x00  
Peaked Blue channel gamma value  
BYTE  
bRUnPeakGamma  
Default value  
Purpose  
Type  
0x00  
Unpeaked Red channel gamma value  
BYTE  
bGUnPeakGamma  
Default value  
Purpose  
Type  
0x00  
Unpeaked Green channel gamma value  
BYTE  
bBUnPeakGamma  
Default value  
Purpose  
Type  
0x00  
Unpeaked Blue channel gamma value  
BYTE  
1. Can be controlled in all stable states  
92/118  
VS6724  
Programming model and register description  
Fade to black  
Table 45. Fade to black  
Index  
FadeToBlack(1)  
fDisable  
Default value  
<0> FALSE  
Flag_e  
0x2280  
Purpose  
Type  
<0> FALSE  
<1> TRUE  
fpBlackValue  
0x2283(MSByte)  
0x2284(LSByte)  
Default value  
Purpose  
Type  
0x0000 (0.000)  
Black value  
FLOAT  
fpDamperLowThreshold  
0x2287 (MSByte)  
0x2288(LSByte)  
Default value  
Purpose  
Type  
0x6d56 (6995968)  
Low Threshold for exposure for calculating the damper slope  
FLOAT  
fpDamperHighThreshold  
0x228b (MSByte)  
0x228c(LSByte)  
Default value  
Purpose  
Type  
0x6cdc (11993088)  
High Threshold for exposure for calculating the damper slope  
FLOAT  
fpDamperOutput  
0x228f (MSByte)  
0x2290(LSByte)  
Default value  
Purpose  
Type  
0x0 (0.0000)  
Minimum possible damper output.  
FLOAT  
1. Can be controlled in all stable states  
Dither control  
Table 46. Dither control  
Index  
DitherControl(1)  
bDither Block control  
Default value  
0x00  
Purpose  
0x2300  
Control of dither block  
BYTE  
Type  
0 -> Control Automatic  
1 -> Control Manual  
Possible values  
1. Can be controlled in all stable state  
93/118  
Programming model and register description  
Output control  
VS6724  
Table 47. Output control  
Index  
OutputControl(1)  
bYCbCrSetup  
Default value  
Type  
0x00  
CODED  
Purpose  
Changes the output order of YCbCr  
0x2380  
[[0] Cb_Cr_Order  
0-> Cr before Cb  
1-> Cb before Cr  
[1] Y_ C order  
0-> Cb or Cr first  
1-> Y first  
flag bits  
bRgbSetup  
Default value  
Type  
0x00  
CODED  
Purpose  
Setup the RGB padding and order  
[0]rgb444_format  
0-> zero padding  
0x2382  
1->not zero padding  
[3:1] RGB output order  
0-> GBR  
1-> RBG  
2-> BRG  
3-> GRB  
4-> RGB  
5-> BGR  
flag bits  
bBlank_Value_1  
Default value  
Type  
0x10  
0x238c  
0x238e  
CODED  
Purpose  
First Blanking value used during interline & interframe blanking  
<16> BlankingMSB_Default  
Possible values  
bBlank_Value_2  
Default value  
Type  
0x80  
CODED  
Purpose  
First Blanking value used during interline & interframe blanking  
<128> BlankingLSB_Default  
Possible values  
94/118  
VS6724  
Programming model and register description  
OutputControl(1)  
Table 47. Output control (continued)  
Index  
bHSyncSetup  
Default value  
Type  
0x0b  
CODED  
[0] HSyncSetup_sync_en  
1-> enable hsync  
0-> disable hsync  
[1] HSyncSetup_sync_pol  
1-> hsync active high  
0x2390  
0-> hsync active low  
[2] HSyncSetup_only_activelines  
flag bits  
1-> hsync qualifies only active lines  
0-> hsync qualifies active and non active lines, (PCLK will be on for  
non active lines)  
[3] HSyncSetup_track_henv  
1-> automatic tracking hsync, ensures that the Hsync qualifies from  
the first active pixel to last active pixel  
0 -> programmable rise and fall of the hsync signal  
bVSyncSetup  
Default value  
Type  
0x07  
CODED  
[0] VSyncSetup_sync_en  
1-> enable vsync  
0-> disable vsync  
0x2392  
[1] VSyncSetup_pol  
1-> vsync active high  
flag bits  
0-> vsync active low  
[2] VSyncSetup_2_sel  
1-> automatic tracking the vsync, so that it covers from the first  
active line to last active line  
0->manually set the rising and falling of the vsync signal  
bHsyncRisingH  
0x2395MSByte)  
0x2396(LSByte)  
Default value  
Type  
0x00  
BYTE  
Purpose  
Operates only when bHSyncSetup bit [3] = 0  
bHsyncFallingH  
0x2399MSByte)  
0x239a(LSByte)  
Default value  
Type  
0x00  
BYTE  
Purpose  
Operates only when bHSyncSetup bit [3] = 0  
95/118  
Programming model and register description  
VS6724  
Table 47. Output control (continued)  
Index  
OutputControl(1)  
bVsyncRisingFine  
0x239d(MSByte)  
0x239e(LSByte)  
Default value  
Type  
0x00  
BYTE  
Purpose  
Operates only when bVSyncSetup bit [2] = 0  
bVsyncFallingFineH  
0x23a1(MSByte)  
0x23a2(LSByte)  
Default value  
Type  
0x00  
BYTE  
Purpose  
Operates only when bVSyncSetup bit [2] = 0  
bVsyncRisingCoarse  
0x23a5(MSByte)  
0x23a6(LSByte)  
Default value  
Type  
0x00  
UINT_16  
Purpose  
Operates only when bVSyncSetup bit [2] = 0  
bVsyncFallingCoarseH  
0x23a9MSByte)  
0x23aa(LSByte)  
Default value  
Type  
0x01  
BYTE  
Purpose  
Operates only when bVSyncSetup bit [2] = 0  
bSyncCodeSetup  
Default value  
Type  
0x01  
CODED  
[0] SyncCodeSetup_ins_code_en  
1-> enable embedded codes  
0-> disable embedded codes  
[1] SyncCodeSetup_frame 0=ITU-656, 1 ITU-CSI  
0-> ITU-656 codes  
0x23ae  
1-> ITU-CSI codes  
[2] SyncCodeSetup_field_bit - ITU-656 only  
flag bits  
1-> Next field is odd frame  
0-> Next field is even frame  
[3] SyncCodeSetup_field_tag - ITU-656 only  
1-> the sync code for odd and even frames will toggle  
0 -> the sync code will be constant for all frames  
[4] SyncCodeSetup_field_load - ITU-656 only  
1-> Load new settings for bits [3:2]  
0 -> New settings for bits [3:2] not consumed  
96/118  
VS6724  
Programming model and register description  
OutputControl(1)  
Table 47. Output control (continued)  
Index  
bPClkSetup  
Default value  
Type  
0x05  
CODED  
[0] PClkSetup_prog_lo  
1-> Rising Edge of PCLK  
0-> Falling Edge of PCLK  
[1] PClkSetup_prog_hi  
1-> Polarity of PLCK normally high  
0-> Polarity of PLCK normally low  
[2] PClkSetup_sync_en  
1-> Enable PCLK during Embedded sync codes  
0-> Disable PCLK during Embedded sync codes  
[3] PClkSetup_hsync_en_n  
0x23b0  
1-> enable the PCLK outside the HSYNC active period  
0-> disable the PCLK outside the HSYNC active period  
[4] PClkSetup_hsync_en_n_track_internal  
flag bits  
1-> use the internal tracked hsync for the qualification of the bit[3]  
0-> use the manually set hsync for the qualification of the bit[3]  
[5] PClkSetup_vsync_n  
1-> enable pclk outside VSYNC active period  
0-> disable pclk outside VSYNC active period  
[6] PClkSetup_vsync_n_track_internal  
1-> use the internal tracked vsync for the qualification of the bit[5]  
0-> use the manually set vsync for the qualification of the bit[5]  
[7] PClkSetup_freer  
1-> Set the PCLK to free run  
0 ->Set the PCLK to be controlled  
fPclkEn  
Default value  
Type  
<1> TRUE  
Flag_e  
0x23b2  
<0> FALSE  
<1> TRUE  
Possible values  
1. Changes only consumed during a change to RUN mode  
97/118  
Programming model and register description  
NoRA controls  
VS6724  
Table 48. NoRA controls  
Index  
NoRAControls(1)  
fDisable  
Default value  
Type  
<0> NoraCtrl_auto  
Flag_e  
0x2400  
<0> NoraCtrl_auto - switches off NoRA for scaled outputs  
<1> NoraCtrl_ManuDisable - Always off  
Possible values  
<2> NoraCtrl_ManuEnable - Always on  
bUsage  
Default value  
Purpose  
Type  
0x04  
0x2402  
0x240a  
BYTE  
fDisableNoroPromoting  
Default value  
Type  
<0> FALSE  
Flag_e  
<0> FALSE  
<1> TRUE  
Possible values  
fpDamperLowThreshold  
0x240d (MSByte) Default value  
0x6862 (2498560)  
0x240e(LSByte)  
Purpose  
Low Threshold for exposure for calculating the damper slope  
FLOAT  
Type  
fpDamperHighThreshold  
0x2411 (MSByte) Default value  
0x6a62 (4997120)  
0x2412(LSByte)  
Purpose  
High Threshold for exposure for calculating the damper slope  
FLOAT  
Type  
MinimumDamperOutput  
0x2415 (MSByte) Default value  
0x3a00 (0.2500)  
0x2416(LSByte)  
Purpose  
Minimum possible damper output.  
FLOAT  
Type  
1. Can be controlled in all stable states  
98/118  
VS6724  
Programming model and register description  
Special effects control  
Table 49. Special effects control  
Index  
SpecialEffectsControl(1)  
fNegative  
Default value  
<0> FALSE  
Purpose  
0x2480  
INverse of image generated  
Flag_e  
Type  
<0> FALSE  
<1> TRUE  
Possible values  
fSolarising  
Default value  
<0> FALSE  
Purpose  
0x2482  
Colors reversed and edges enhanced to give solarizing effect  
Flag_e  
Type  
<0> FALSE  
<1> TRUE  
Possible values  
fSketch  
Default value  
<0> FALSE  
Edges of the image enhanced and output to give the impression of a  
pencil sketch  
Purpose  
0x2484  
Type  
Flag_e  
<0> FALSE  
<1> TRUE  
Possible values  
fEmboss  
Default value  
<0> FALSE  
Uses mathematical functions to create the effect that the image detail is  
raised above the surface of the background  
Purpose  
0x2486  
Type  
Flag_e  
<0> FALSE  
<1> TRUE  
Possible values  
99/118  
Programming model and register description  
Table 49. Special effects control (continued)  
VS6724  
Index  
SpecialEffectsControl(1)  
fColorEffects  
Default value  
Purpose  
<0>  
Special effect added to the output image  
0 Normal  
1 Red only - Red information preserved, all other color info set to mono  
2 Yellow only - Red and Green information preserved, blue info set to  
mono  
3 Green only - Green information preserved, all other color info set to  
mono  
0x2488  
4 Blue only - Blue information preserved, all other color info set to mono  
5 Black and white - Monochrome  
Type  
6 Sepia - to mimic the wet film effect of replacing the silver in black and  
white print with brown silver sulphide  
7 Antique - to mimic the yellowing effect when an old black and white  
photo ages  
NOTE; All color effects can operate on YCbCr and JPEG formats but  
only Sepia and B & W operate when using RGB formats.  
1. Can be controlled in all stable states  
100/118  
VS6724  
Programming model and register description  
JPEG image characteristics  
Table 50. JPEG image characteristics  
Index  
JPEGImageCharacteristics(1)  
bJPEG_Fill_Val  
Default value  
Purpose  
0xa5  
0x23b4  
0x23b6  
Value of padding bytes inserted at the end of the JPEG data sequence  
to fill the final packet, must equal bJPEG_Padding  
Type  
BYTE  
bJPEG_Padding  
Default value  
0xa5  
Value of padding bytes inserted at the end of the JPEG data sequence  
to fill the final packet, must equal bJPEG_Fill_Val  
Purpose  
Type  
BYTE  
bHiSqueezeValue  
Default value  
Purpose  
Type  
0x18  
Sets squeeze factor for HIgh Quality  
BYTE  
0x2508  
The Squeeze value can be programmed between the range 6 (Highest  
quality) to 255 (Low quality)  
Possible values  
bMedSqueezeValue  
Default value  
Purpose  
Type  
0x20  
0x2508  
0x2508  
Sets squeeze factor for Medium Quality  
BYTE  
bLowSqueezeValue  
Default value  
Purpose  
Type  
0x28  
Sets squeeze factor for Low Quality  
BYTE  
uwLinelength  
Default value  
0x0200  
0x2511  
0x2512  
Sets the number of bytes of JPEG data are present in each Packet  
(line), must equal uwThres  
Purpose  
Type  
WORD  
101/118  
Programming model and register description  
VS6724  
Table 50. JPEG image characteristics (continued)  
Index  
JPEGImageCharacteristics(1)  
bOIFCLKRatio  
Default value  
0x1  
Determines the maximum PCLK output rate for the JPEG data, in  
relation to the YUV pixel clock frequency  
Purpose  
Type  
BYTE  
0 ->PCLK is same frequency YUV pixel clock, for non JPEG  
//for JPEG  
1-> PCLK is 2 times slower  
2-> PCLK is 4 times slower  
3-> PCLK is 6 times slower  
4-> PCLK is 8 times slower  
5-> PCLK is 10 times slower  
6-> PCLK is 12 times slower  
7-> PCLK is 14 times slower  
8-> PCLK is 16 times slower  
9-> PCLK is 18 times slower  
10-> PCLK is 20times slower  
0x2514  
Possible values  
uwThres  
Default value  
0x0200  
Sets the number of bytes of JPEG data are present in each Packet  
(line), must equal uwLinelength  
0x251b  
0x251c  
Purpose  
Type  
WORD  
The number of bytes in a line is 2 x the value programmed into this  
register, the maximum number of bytes in a line is 2KB.  
Possible values  
1. Can be controlled in all stable states  
102/118  
VS6724  
Optical specifications  
5
Optical specifications  
Table 51. Optical specifications(1)  
Parameter  
Min.  
Typ.  
Max.  
Unit  
Optical format  
1/3.8  
3.8  
inch  
mm  
Effective focal length  
Aperture (F number)  
Horizontal field of view  
Depth of field  
3.7  
3.9  
3.2  
50  
deg.  
cm  
%
60  
-1  
infinity  
1
TV distortion  
1. All measurements made at 23°C ± 2°C  
103/118  
Electrical characteristics  
VS6724  
6
Electrical characteristics  
6.1  
Absolute maximum ratings  
Table 52. Absolute maximum ratings  
Symbol  
TSTO  
Parameter  
Storage temperature  
Min.  
Max.  
Unit  
-40  
-0.5  
-0.5  
85  
3.3  
3.3  
° C  
V
VDD  
Digital power supplies  
Analog power supplies  
AVDD  
V
Caution:  
Stress above those listed under “Absolute Maximum Ratings” can cause permanent  
damage to the device. This is a stress rating only and functional operations of the device at  
these or other conditions above those indicated in the operational sections of this  
specification is not implied. Exposure to absolute maximum rating conditions for extended  
periods may affect device reliability.  
6.2  
Operating conditions  
Table 53. Supply specifications  
Symbol  
Parameter  
Min.  
Typ.  
Max.  
Unit  
Operating temperature, functional  
(Camera is electrically functional)  
TAF  
-30  
25  
70  
° C  
Operating temperature, nominal  
(Camera produces acceptable images)  
TAN  
-25  
5
25  
25  
55  
30  
° C  
° C  
Operating temperature, optimal  
(Camera produces optimal optical  
performance)  
TAO  
1.7  
2.4  
1.8  
2.8  
2.0  
3.0  
V
V
Digital power supplies operating range  
VDD  
(@ module pin(1)  
)
Analog power supplies operating range  
(@ module pin(1)  
AVDD  
2.4  
2.8  
3.0  
V
)
1. Module can contain routing resistance up to 5 Ω.  
104/118  
VS6724  
Electrical characteristics  
6.3  
DC electrical characteristics  
Note:  
Over operating conditions unless otherwise specified.  
Table 54. DC electrical characteristics  
Symbol  
Description  
Test conditions  
except CLK  
Min.  
Typ.  
Max.  
Unit  
VIL  
Input low voltage  
-0.3  
-0.3  
0.3 VDD  
0.5  
V
V
V
VIL_CLK Input low voltage  
CLK pin  
VIH  
Input high voltage  
Output low voltage  
Output high voltage  
0.7 VDD  
VDD + 0.3  
IOL < 2 mA  
0.2 VDD  
0.4 VDD  
VOL  
VOH  
V
V
I
OL < 4 mA  
IOH< 4 mA  
0.8 VDD  
Input leakage current  
Input pins  
I/O pins  
IIL  
0 < VIN < VDD  
+/- 10  
+/- 1  
μA  
μA  
CIN  
Input capacitance, SCL  
Output capacitance  
TA = 25 °C, freq = 1 MHz  
TA = 25 °C, freq = 1 MHz  
TA = 25 °C, freq = 1 MHz  
6
6
8
pF  
pF  
pF  
COUT  
CI/O  
I/O capacitance, SDA  
Table 55. Typical current consumption - sensor mode UXGA - JPEG UXGA@ 30 fps  
IAVDD IVDD  
Symbol  
Description  
Test conditions  
Units  
VDD = 2.8V VDD = 1.8V VDD = 2.8V  
supply current in power  
down mode  
IPD  
CE=0, CLK = 12 MHz  
CE=1, CLK = 12 MHz  
CE=1, CLK = 12 MHz  
CE=1, CLK = 12 MHz  
CE=1, CLK = 12 MHz  
2.34  
0.0024  
0.0024  
0.58  
0.05  
2.41  
2.11  
51  
0.07  
2.59  
2.44  
57  
µA  
mA  
mA  
mA  
mA  
supply current in Standby  
mode  
Istanby  
IStop  
IPause  
Irun  
supply current in Stop  
mode  
supply current in Pause  
mode  
supply current in active  
streaming run mode  
29  
120  
135  
105/118  
Electrical characteristics  
VS6724  
Units  
Table 56. Typical current consumption - sensor mode UXGA - JPEG UXGA @ 15 fps  
IAVDD  
IVDD  
Symbol  
Description  
Test conditions  
VDD = 2.8V  
V
DD = 1.8V VDD = 2.8V  
supply current in power  
down mode  
IPD  
CE=0, CLK = 12 MHz  
CE=1, CLK = 12 MHz  
CE=1, CLK = 12 MHz  
CE=1, CLK = 12 MHz  
CE=1, CLK = 12 MHz  
2.34  
0.0024  
0.0024  
0.58  
0.05  
2.41  
1.98  
28.5  
67  
0.07  
2.59  
2.31  
31  
µA  
mA  
mA  
mA  
mA  
supply current in Standby  
mode  
Istanby  
IStop  
IPause  
Irun  
supply current in Stop  
mode  
supply current in Pause  
mode  
supply current in active  
streaming run mode  
29  
73  
Table 57. Typical current consumption - sensor mode UXGA scaled QVGA RGB565 @ 15 fps  
IAVDD  
IVDD  
Symbol  
Description  
Test conditions  
Units  
VDD = 2.8V  
VDD = 1.8V VDD = 2.8V  
supply current in power  
down mode  
IPD  
Istanby  
IStop  
IPause  
Irun  
CE=0, CLK = 12 MHz  
CE=1, CLK = 12 MHz  
CE=1, CLK = 12 MHz  
CE=1, CLK = 12 MHz  
CE=1, CLK = 12 MHz  
2.34  
0.0024  
0.0024  
0.58  
0.05  
2.41  
0.07  
2.59  
µA  
mA  
mA  
mA  
mA  
supply current in Standby  
mode  
supply current in Stop  
mode  
1.93  
2.11  
supply current in Pause  
mode  
15.75  
21.46  
16.44  
23.32  
supply current in active  
streaming run mode  
29  
Table 58. Typical current consumption - sensor analogue binning SVGA- scaled QVGA RGB565  
@ 15 fps  
IAVDD  
IVDD  
Symbol  
Description  
Test conditions  
Units  
VDD = 2.8V  
VDD = 1.8V VDD = 2.8V  
supply current in power  
down mode  
IPD  
CE=0, CLK = 12 MHz  
CE=1, CLK = 12 MHz  
CE=1, CLK = 12 MHz  
CE=1, CLK = 12 MHz  
CE=1, CLK = 12 MHz  
2.34  
0.0024  
0.0024  
0.58  
0.05  
2.41  
1.95  
13  
0.07  
2.59  
2.1  
14  
μA  
mA  
mA  
mA  
mA  
supply current in Standby  
mode  
Istanby  
IStop  
IPause  
Irun  
supply current in Stop  
mode  
supply current in Pause  
mode  
supply current in active  
streaming run mode  
29  
19  
20  
106/118  
VS6724  
Electrical characteristics  
6.4  
External clock  
The VS6724 requires an external clock. This clock is a CMOS digital input. The clock input  
is fail-safe in power down mode.  
Table 59. External clock  
Range  
CLK  
Unit  
Min.  
Typ.  
Max.  
DC coupled square wave  
Clock frequency(1)  
VDD  
V
6.50  
27  
MHz  
1. The uwExternalClockFrequencyDenumerator and bExternalClockFrequencyDenominator registers  
must be configured to match the frequency supplied on the CLK pin.  
6.5  
Chip enable  
CE is a CMOS digital input. The module is powered down when a logic 0 is applied to CE.  
See Section Figure 11.: Power up sequence for further information.  
107/118  
Electrical characteristics  
VS6724  
6.6  
I²C slave interface  
VS6724 contains an I²C-type interface using two signals: a bidirectional serial data line  
(SDA) and an input-only serial clock line (SCL). See PLL operation for detailed description  
of protocol.  
Table 60. Serial interface voltage levels(1)  
Standard mode  
Fast mode  
Symbol  
Parameter  
Unit  
Min.  
Max.  
Min.  
Max.  
Hysteresis of Schmitt Trigger Inputs  
VHYS  
VDD > 2 V  
VDD < 2V  
LOW level output voltage (open drain)  
N/A  
N/A  
N/A  
N/A  
0.05 VDD  
0.1 VDD  
-
-
V
V
at 3mA sink current  
VOL1  
VOL3  
VDD > 2 V  
VDD < 2V  
0
0.4  
0
0
0.4  
V
V
N/A  
N/A  
0.2 VDD  
VOH  
tOF  
HIGH level output voltage  
N/A  
-
N/A  
250  
0.8 VDD  
V
Output fall time from VIHmin to VILmax with  
a bus capacitance from 10 pF to 400 pF  
(2)  
20+0.1Cb  
250  
50  
ns  
Pulse width of spikes which must be  
suppressed by the input filter  
tSP  
N/A  
N/A  
0
ns  
1. Maximum V = V  
+ 0.5 V  
IH  
DDmax  
2. C = capacitance of one bus line in pF  
b
Figure 40. Voltage level specification  
Input voltage levels  
Output voltage levels  
VOH = 0.8 * VDD  
VIH = 0.7 * VDD  
VIL = 0.3 * VDD  
VOL = 0.2 * VDD  
108/118  
VS6724  
Electrical characteristics  
Table 61. Timing specification(1)  
Standard mode  
Fast mode  
Unit  
Symbol  
Parameter  
Min.  
Max.  
Min.  
Max.  
fSCL  
SCL clock frequency  
0
4.0  
4.7  
4.0  
4.7  
300  
250  
-
100  
0
0.6  
400  
kHz  
μs  
μs  
μs  
μs  
ns  
ns  
ns  
ns  
μs  
tHD;STA  
tLOW  
Hold time for a repeated start  
LOW period of SCL  
-
-
-
1.3  
-
tHIGH  
tSU;STA  
tHD;DAT  
tSU;DAT  
tr  
HIGH period of SCL  
-
0.6  
-
Set-up time for a repeated start  
Data hold time (1)  
-
0.6  
-
-
-
300  
-
-
Data Set-up time (1)  
100  
(2)  
(2)  
Rise time of SCL, SDA  
Fall time of SCL, SDA  
Set-up time for a stop  
1000  
300  
-
20+0.1Cb  
20+0.1Cb  
0.6  
300  
300  
-
tf  
-
tSU;STO  
4.0  
Bus free time between a stop and a  
start  
tBUF  
Cb  
4.7  
-
-
400  
-
1.3  
-
-
400  
-
μs  
pF  
V
Capacitive Load for each bus line  
Noise Margin at the LOW level for each  
connected device (including hysteresis)  
VnL  
0.1 VDD  
0.1 VDD  
0.2 VDD  
Noise Margin at the HIGH level for each  
connected device (including hysteresis)  
VnH  
0.2 VDD  
-
-
V
1. All values are referred to a V  
= 0.9 V and V  
= 0.1 V  
IHmin  
DD  
ILmax DD  
2. C = capacitance of one bus line in pF  
b
109/118  
Electrical characteristics  
VS6724  
Figure 41. Timing specification  
SDA  
tSP  
tHD;DAT tSU;DAT  
tSU;STA  
tHD;STA  
tSU;STO  
tBUF  
tHD;STA  
SCL  
tLOW  
tHIGH  
tr  
tf  
S
P
S
START  
STOP  
START  
All values are referred to a VIHmin = 0.9 VDD and VILmax = 0.1 VDD  
Figure 42. SDA/SCL rise and fall times  
0.9 * VDD  
0.9 * VDD  
0.1 * VDD  
0.1 * VDD  
tr  
tf  
110/118  
VS6724  
Electrical characteristics  
6.7  
Parallel data interface timing  
VS6724 contains a parallel data output port (D[7:0]) and associated qualification signals  
(HSYNC, VSYNC, PCLK and FSO).  
This port can be enabled and disabled (tri-stated) to facilitate multiple camera systems or  
bit-serial output configurations. The port is disabled (high impedance) upon reset.  
Figure 43. Parallel data output video timing  
1/fPCLK  
tPCLKH  
tPCLKL  
PCLK  
polarity = 0  
tDV  
D[0:7]  
Valid  
HSYNC,  
VSYNC  
Table 62. Parallel data interface timings  
Symbol  
Description  
Min.  
Max.  
Unit  
MHz  
fPCLK  
tPCLKL  
tPCLKH  
tDV  
PCLK frequency  
PCLK low width  
80  
(1/2 * (1/fPCLK)) -1  
(1/2 * (1/fPCLK)) -1  
-1  
(1/2 * (1/fPCLK)) +1  
(1/2 * (1/fPCLK)) +1  
1
ns  
ns  
ns  
PCLK high width  
PCLK to output valid  
111/118  
Application circuit  
VS6724  
7
Application circuit  
Figure 44. Application diagram  
1.8V or  
2.8V  
2.8V  
8
DIO[7:0]  
PCLK  
AVDD  
DVDD  
HSYNC  
VSYNC  
DVDD  
VS6724  
4.7KR  
2
SCL  
Host  
GND  
SDA  
FSO  
CE  
CLK  
Flashgun  
Driver / controller  
External Clock  
112/118  
VS6724  
Application circuit  
113/118  
User precaution  
VS6724  
8
User precaution  
As is common with many CMOS imagers the camera should not be pointed at bright static  
objects for long periods of time as permanent damage to the sensor may occur.  
9
Package mechanical data  
Figure 45 and Figure 46 details the package outline socket module VS6724.  
114/118  
VS6724  
Package mechanical data  
Figure 45. Package outline socket module VS6724  
0 1 . 0 5 5 . 1  
8 . 0  
4 . 1  
0 1 . 0 0 2 . 2  
0 . 7  
115/118  
Package mechanical data  
VS6724  
Figure 46. Package outline socket module VS6724  
A m u t a d  
2 5 . 3  
@
° 7 . 6 5  
0 3 . 6  
0 4 . 5  
0 5 . 4  
0 6 . 3  
0 7 . 2  
0 8 . 1  
0 9 . 0  
p y t 0 7 . 0  
3 . 0 5  
3 . 5 0  
116/118  
VS6724  
Ordering information  
10  
Ordering information  
Table 63. Order codes  
Part number  
Package and packing  
VS6724Q0FB  
SmOP2 - Socket version  
11  
Revision history  
Table 64. Document revision history  
Date  
Revision  
Changes  
03-Jul-2007  
1
Initial release.  
117/118  
VS6724  
Please Read Carefully:  
Information in this document is provided solely in connection with ST products. STMicroelectronics NV and its subsidiaries (“ST”) reserve the  
right to make changes, corrections, modifications or improvements, to this document, and the products and services described herein at any  
time, without notice.  
All ST products are sold pursuant to ST’s terms and conditions of sale.  
Purchasers are solely responsible for the choice, selection and use of the ST products and services described herein, and ST assumes no  
liability whatsoever relating to the choice, selection or use of the ST products and services described herein.  
No license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted under this document. If any part of this  
document refers to any third party products or services it shall not be deemed a license grant by ST for the use of such third party products  
or services, or any intellectual property contained therein or considered as a warranty covering the use in any manner whatsoever of such  
third party products or services or any intellectual property contained therein.  
UNLESS OTHERWISE SET FORTH IN ST’S TERMS AND CONDITIONS OF SALE ST DISCLAIMS ANY EXPRESS OR IMPLIED  
WARRANTY WITH RESPECT TO THE USE AND/OR SALE OF ST PRODUCTS INCLUDING WITHOUT LIMITATION IMPLIED  
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE (AND THEIR EQUIVALENTS UNDER THE LAWS  
OF ANY JURISDICTION), OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT.  
UNLESS EXPRESSLY APPROVED IN WRITING BY AN AUTHORIZE REPRESENTATIVE OF ST, ST PRODUCTS ARE NOT DESIGNED,  
AUTHORIZED OR WARRANTED FOR USE IN MILITARY, AIR CRAFT, SPACE, LIFE SAVING, OR LIFE SUSTAINING APPLICATIONS,  
NOR IN PRODUCTS OR SYSTEMS, WHERE FAILURE OR MALFUNCTION MAY RESULT IN PERSONAL INJURY, DEATH, OR  
SEVERE PROPERTY OR ENVIRONMENTAL DAMAGE.  
Resale of ST products with provisions different from the statements and/or technical features set forth in this document shall immediately void  
any warranty granted by ST for the ST product or service described herein and shall not create or extend in any manner whatsoever, any  
liability of ST.  
ST and the ST logo are trademarks or registered trademarks of ST in various countries.  
Information in this document supersedes and replaces all information previously supplied.  
The ST logo is a registered trademark of STMicroelectronics. All other names are the property of their respective owners.  
© 2007 STMicroelectronics - All rights reserved  
STMicroelectronics group of companies  
Australia - Belgium - Brazil - Canada - China - Czech Republic - Finland - France - Germany - Hong Kong - India - Israel - Italy - Japan -  
Malaysia - Malta - Morocco - Singapore - Spain - Sweden - Switzerland - United Kingdom - United States of America  
www.st.com  
118/118  

相关型号:

VS6725

2 megapixel single-chip camera module
STMICROELECTR

VS6725XQ045/TR

2 megapixel single-chip camera module
STMICROELECTR

VS6735

2 megapixel single-chip camera module
STMICROELECTR

VS6735XQ045/TR

2 megapixel single-chip camera module
STMICROELECTR

VS6750

2 Megapixel SMIA Camera Module
STMICROELECTR

VS6955CA

5.0 megapixel fixed-focus camera module
STMICROELECTR

VS6955CAQ05I

5.0 megapixel fixed-focus camera module
STMICROELECTR

VS6955CAQ05I1

5.0 megapixel fixed-focus camera module
STMICROELECTR

VS6961

LED显示控制和按键扫描芯片
ETC

VS6V0UA1LAM

VS5V0UA1LAM是小型模件封装的TVS二极管。适合浪涌保护用途。
ROHM

VS6V0UA1LAMTF

VS5V0UA1LAMTF是适合浪涌保护用途的小型模件封装的TVS二极管。是车载级的高可靠性产品。
ROHM

VS6V0UA1VWM

VS6V0UA1VWM是一款用于浪涌保护、电压控制和电压限制的TVS二极管。该产品用更小型的PMDE封装实现了与ROHM以往产品同等的电气特性。PMDE是可靠性高、散热性能优异的封装形式。
ROHM