STMICROELECTRONICS VL6524QOMH

VL6524
VS6524
VGA single-chip camera module
Preliminary Data
Features
■
640H x 480V active pixels
■
3.6 µm pixel size, 1/6 inch optical format
■
RGB Bayer color filter array
■
Integrated 10-bit ADC
■
Integrated digital image processing functions,
including defect correction, lens shading
correction, demosaicing, sharpening, gamma
correction and color space conversion
■
Embedded camera controller for automatic
exposure control, automatic white balance
control, black level compensation, 50/60 Hz
flicker cancellation and flashgun support
SmOP
Description
The VL6524/VS6524 is a general purpose VGA
resolution CMOS color digital camera featuring
low size and low power consumption. This
complete camera module is ready to connect to
camera enabled baseband processors, back-end
IC devices or PDA engines.
■
Up to 30 fps progressive scan, flexible
subsampling and cropping modes
■
ITU-R BT.656-4 YUV (YCbCr) 4:2:2 with
embedded syncs, RGB 565, RGB 444 or Bayer
10-bit output formats
■
Viewlive feature allows different sizes, formats
and reconstruction settings to be applied to
alternate frames
Applications
■
Mobile phone
■
8-bit parallel video interface, horizontal and
vertical syncs, 24 MHz clock
■
Videophone
■
Two-wire serial control interface (I2C)
■
Video surveillance
■
On-chip PLL, 6.5 to 26 MHz clock input
■
Medical
■
Analog power supply, from 2.4V to 3.0V
■
Machine Vision
■
Separate I/O power supply, 1.8V or 2.8V levels
■
Toys
■
3.3V tolerant I/O for power supply > 2.7V
■
PDA
■
Integrated power management with power
switch, automatic power-on reset and powersafe pins
■
Biometry
■
Bar Code Reader
■
Lighting Control
■
Low power consumption, ultra low standby
current
■
Dual-element plastic lens, F# 2.8, ~59° DFOV
(VS6524)
November 2006
LGA
Rev 3
This is preliminary information on a new product now in development or undergoing evaluation. Details are subject to
change without notice.
1/70
www.st.com
1
Contents
VL6524/VS6524
Contents
1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.1
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2
Electrical interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3
System architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.1
Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.1.1
3.2
4
Video pipe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Microprocessor functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Operational modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Mode transitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
5
6
Clock control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
5.1
Input clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
5.2
System clock division . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
5.3
Pixel clock (PCLK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
5.4
PCLK gating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Output frame size control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
6.1
6.2
Frame format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
6.1.1
Cropping module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
6.1.2
Subsampling module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Frame rate control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
6.2.1
6.3
Horizontal mirror and vertical flip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
ViewLive Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Video pipe setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
6.4
7
Context switching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Output data formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
7.1
YUV 4:2:2 data format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
7.2
RGB and Bayer data formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
7.2.1
2/70
Manipulation of RGB data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
VL6524/VS6524
Contents
7.2.2
8
Data synchronization methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
8.1
8.2
9
10
Dithering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Embedded codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
8.1.1
Prevention of false synchronization codes . . . . . . . . . . . . . . . . . . . . . . . 26
8.1.2
Mode 1(ITU656 compatible) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
8.1.3
Mode 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
VSYNC and HSYNC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
8.2.1
Horizontal synchronization signal (HSYNC) . . . . . . . . . . . . . . . . . . . . . 29
8.2.2
Vertical synchronization (VSYNC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Getting started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
9.1
Initial power up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
9.2
Minimum startup command sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Host communication - I²C control interface . . . . . . . . . . . . . . . . . . . . . 32
V2W protocol layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Detailed overview of the message format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Data valid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Start (S) and Stop (P) conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Acknowledge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Index space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Types of messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Random location, single data write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Current location, single data read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Random location, single data read. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Multiple location write. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Multiple location read stating from the current location . . . . . . . . . . . . . . . . . . . . . 40
11
Register map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Low level control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Device parameters [read only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Mode control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Mode Status [read only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
RunModeControl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Clock manager input control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3/70
Contents
VL6524/VS6524
Power management control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Frame rate control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Pipe setup bank selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Pipe setup bank0 control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Pipe Setup Bank1 Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
View live control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
White balance control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Exposure control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Exposure status (Read only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Exposure algorithm control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Flashgun control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Flicker frequency control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Defect correction control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Sharpening control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Fade to black damper control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Dither control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Output formatter control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
12
13
Optical specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
12.1
Average sensitivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
12.2
Spectral response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Electrical characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
13.1
Absolute maximum ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
13.2
Operating conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
13.3
DC electrical characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
13.4
AC electrical characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
13.5
14
4/70
13.4.1
External clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
13.4.2
Chip enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
13.4.3
I²C slave interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
13.4.4
Parallel data interface timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
ESD handling characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Package outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
14.1
SmOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
14.2
LGA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
VL6524/VS6524
Contents
15
Ordering information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
16
Revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5/70
List of tables
VL6524/VS6524
List of tables
Table 1.
Table 2.
Table 3.
Table 4.
Table 5.
Table 6.
Table 7.
Table 8.
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.
6/70
VL6524/VS6524 signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Subsampled image sizes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
ITU656 embedded synchronization code definition (even frames). . . . . . . . . . . . . . . . . . . 27
ITU656 embedded synchronization code definition (odd frames). . . . . . . . . . . . . . . . . . . . 28
Mode 2 - embedded synchronization code definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Data type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Low-level control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Device parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Mode control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Mode status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
RunModeControl. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Clock manager input control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Power management control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Frame rate control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Pipe setup bank selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Pipe setup bank0 control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Pipe setup bank1 control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
View live control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
White balance control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Exposure control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Exposure status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Exposure algorithm control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Flashgun control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Flicker frequency control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Defect correction control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Sharpening control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Fade to black damper control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Dither control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Output formatter control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Optical specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
VS6524 average sensitivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Absolute maximum ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Supply specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
DC electrical characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Typical current consumption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
External clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Serial interface voltage levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Timing specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Parallel data interface timings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
ESD handling characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
LGA package mechanical data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
VL6524 pin assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Order codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
VL6524/VS6524
List of figures
List of figures
Figure 1.
Figure 2.
Figure 3.
Figure 4.
Figure 5.
Figure 6.
Figure 7.
Figure 9.
Figure 10.
Figure 11.
Figure 12.
Figure 13.
Figure 14.
Figure 15.
Figure 16.
Figure 17.
Figure 18.
Figure 19.
Figure 20.
Figure 21.
Figure 22.
Figure 23.
Figure 24.
Figure 25.
Figure 26.
Figure 27.
Figure 28.
Figure 29.
Figure 30.
Figure 31.
Figure 32.
Figure 33.
Figure 34.
Figure 35.
Figure 36.
Figure 37.
Figure 38.
VL6524/VS6524 simplified block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
State machine at power -up and user mode transitions . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Power up sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Frame output format against framerate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
VGA 30fps output frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Crop controls (Table 16: Pipe setup bank0 control) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Crop 30fps output frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
ViewLive frame output format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Standard Y Cb Cr data order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Y Cb Cr data swapping options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
RGB and Bayer data formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
ITU656 frame structure with even codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Mode 2 frame structure (VGA example) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
HSYNC timing example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
VSYNC timing example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Write message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Read message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Detailed overview of message format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Device addresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
SDA data valid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
START and STOP conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Data acknowledge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Internal register index space. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Random location, single write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Current location, single read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Random location, single data read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Multiple location write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Multiple location read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Multiple location read starting from a random location . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
VS6524 spectral response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Voltage level specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Timing specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
SDA/SCL rise and fall times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Parallel data output video timing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
VS6524Q06J outline drawing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
VS6524Q06J socket assembly outline drawing for information only . . . . . . . . . . . . . . . . . 65
VL6524QOMH outline drawing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
7/70
Overview
VL6524/VS6524
1
Overview
1.1
Description
The VL6524/VS6524 is a VGA resolution CMOS imaging device designed for low power
systems.
Video data is output from the VS6524 over an 8-bit parallel bus in RGB, YCbCr or bayer
formats and is controlled via an I²C interface.
The VL6524/VS6524 requires an analogue power supply of between 2.4 V to 3.0 V and a
digital supply of either 1.8 V or 2.8 V (dependant on interface levels required). An input clock
is required in the range 6.5 MHz to 26 MHz.
The device contains an embedded video processor and delivers fully color processed
images at up to 30 frames per second. The video processor integrates a wide range of
image enhancement functions, designed to ensure high image quality, these include:
8/70
●
Automatic exposure control
●
Automatic white balance
●
Lens shading compensation
●
Defect correction algorithms
●
Demosaic (Bayer to RGB conversion)
●
Matrix compensation
●
Sharpening
●
Gamma correction
●
Flicker cancellation
VL6524/VS6524
2
Electrical interface
Electrical interface
The device has 20 electrical connections as listed in Table 1. The physical orientation of the
pins on the device is shown in Figure 36.
Table 1.
VL6524/VS6524 signal description
Pad socket
Pad name
I/O
Description
1
GND
PWR
Analogue ground
2
D02
OUT
Data output D2
3
D03
OUT
Data output D3
4
HSYNC
OUT
Horizontal synchronization output
5
VSYNC
OUT
Vertical synchronization output
6
D07
OUT
Data output D7
7
D06
OUT
Data output D6
8
D05
OUT
Data output D5
9
D04
OUT
Data output D4
10
CLK
IN
11
GND
PWR
Digital ground
12
FSO
OUT
Flash output
13
CE
IN
Chip enable signal active HIGH
14
SCL
IN
I²C clock input
15
SDA
I/O
I²C data line
16
AVDD
PWR
Analogue supply 2.4 V to 3.0 V
17
D01
OUT
Data output D1
18
D00
OUT
Data output D0
19
PCLK
OUT
Pixel qualification clock
20
VDD
PWR
Digital supply 1.8 V OR 2.8 V
Clock input - 6.5MHz to 26 MHz
9/70
System architecture
3
VL6524/VS6524
System architecture
The VL6524/VS6524 consists of the following main blocks:
●
VGA-sized pixel array
●
Video timing generator
●
Video pipe
●
Statistics gathering unit
●
Clock generator
●
Microprocessor
A simplified block diagram is shown in Figure 1.
Figure 1.
VL6524/VS6524 simplified block diagram
CLK
CE
Clock
generator
Reset
VREG
I²C Interface
SDA
I²C
SCL
Microprocessor
VDD
GND
Video timing
generator
Statistics
Gathering
FSO
AVDD
VGA
Pixel array
Video pipe
VSYNC
HSYNC
PCLK
D[0:7]
GND
3.1
Operation
A video timing generator controls a VGA-sized pixel array to produce raw images at up to 30
frames per second. 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.
10/70
VL6524/VS6524
System architecture
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.
3.1.1
Video pipe
The main functions contained within the VL6524/VS6524 video processing pipe are as
follows.
Gain and offset: This function is used to apply gain and offset to data coming from the
sensor array. The required gain and offset values result from the automatic exposure and
white balance functions from the microprocessor.
Anti-vignette: This function is used to compensate for the radial roll-off in intensity caused
by the lens. By default the anti-vignette setting matches the lens used in this module and
does not need to be adjusted.
Crop: This function allows the user to select an arbitrary Window Of Interest (WOI) from the
VGA-sized pixel array. It is fully accessible to the user.
Defect correction: This function runs a defect correction filter over the data in order to
remove defects from the final output. This function has been optimized to attain the
minimum level of defects from the system and does not need to be adjusted.
Demosaic: This module performs an interpolation on the Bayer data from the sensor array
to produce an RGB image. It also applies an anti-alias filter.
Subsampler: This module allows the image to be sub-sampled in the X and Y directions by
2, 3, 4, 5 or 6.
Matrix: This function performs a color-space conversion from the sensor RGB data to
standard RGB color space.
Sharpening: This module increases the high frequency content of the image in order to
compensate for the low-pass filtering effects of the previous modules.
Gamma: This module applies a programmable gain curve to the output data. It is user
adjustable.
YUV conversion: This module performs color space conversion from RGB to YUV. It is
used to control the contrast and color saturation of the output image as well as the fade to
black feature.
Dither: This module is used to reduce the contouring effect seen in RGB images with
truncated data.
Output formatter: This module controls the embedded codes which are inserted into the
data stream to allow the host system to synchronize with the output data. It also controls the
optional HSYNC and VSYNC output signals.
11/70
System architecture
3.2
VL6524/VS6524
Microprocessor functions
The microprocessor inside the VL6524/VS6524 performs the following tasks:
Host communication: handles the I²C communication with the host processor.
Video pipe configuration: configures the video pipe modules to produce the output
required by the host.
Automatic exposure control: In normal operation the VL6524/VS6524 determines the
appropriate exposure settings for a particular scene and outputs correctly exposed images.
Flicker cancellation: The 50/60Hz flicker frequency present in the lighting (due to
fluorescent lighting) can be cancelled by the system.
Automatic white balance: The microprocessor adjusts the gains applied to the individual
color channels in order to achieve a correctly color balanced image.
Dark calibration: The microprocessor uses information from special dark lines within the
pixel array to apply an offset to the video data and ensure a consistent ‘black’ level.
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.
sharpening) 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
12/70
VL6524/VS6524
4
Operational modes
Operational modes
VL6524/VS6524 has a number of operational modes. The STANDBY 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.
Figure 2.
State machine at power -up and user mode transitions
Supplies turned ON & CE pin LOW
Supplies OFF
Supplies
turned OFF
Power-down
CE pin LOW
Supplies
turned-off
CE pin HIGH
State Machine at power-up
I2C controlled user mode transitions
Standby
1
STOP mode
Flashgun mode
PAUSE mode
Run mode
Note:
1
It is possible to enter any of the user modes direct from Standby via an I2C
command
Power Down/Up: The power down state is entered from all other modes when CE is pulled
low or the supplies are removed.
During the power-down state (CE = logic 0)
●
The internal digital supply of the VL6524/VS6524 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.
13/70
Operational modes
VL6524/VS6524
During the power-up sequence (CE = logic 1)
Figure 3.
●
The digital supplies must be on and stable.
●
The internal digital supply of the VL6524/VS6524 is enabled by an internal switch
mechanism.
●
All internal registers are reset to default values by an internal power on reset cell.
Power up sequence
POWER DOWN
VDD (1.8V/2.8V)
AVDD (2.8V)
standby
t1
t2
CE
t3
CLK
t4
SDA
SCL
t5
Constraints:
t1 >= 0ns
t2 >= 0ns
low level command:enable clocks
setup commands
t3 >= 0ns
t4 >= 25ms
t5 >= 2ms
STANDBY mode: The VL6524/VS6524 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 by writing the value 0x06 to the MicroEnable register 0xC003
(Table 7).
All registers are reset to their default values. The device I/O pins have a very highimpedance.
Note:
On exit from STANDBY mode, the VL6524/VS6524 is in a transient mode called
UNINITIALISED, this mode is not a user mode.
STOP mode: This is a low power mode. The analogue section of the VL6524/VS6524 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.
PAUSE mode: In this mode all VL6524/VS6524 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.
Note:
The PowerManagement register bTimeToPowerdown can be adjusted in PAUSE mode but
has no effect until the next RUN to PAUSE transition (Table 13).
RUN mode:This is the fully operational mode.
14/70
VL6524/VS6524
Operational modes
ViewLive: this feature allows different sizes, formats and reconstruction settings to be
applied to alternate frames of data, while in run mode.
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.
Mode transitions
Transitions between operating modes are normally controlled by the host by writing to the
Mode 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 control register. Writing 0xFF disables
the automatic transition to STOP mode.
15/70
Clock control
VL6524/VS6524
5
Clock control
5.1
Input clock
The VL6524/VS6524 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
26 MHz. The input clock frequency must be programmed in the uwExtClockFreqNum
(MSB), uwExtClockFreqNum (LSB) and bExtClockFreqDen registers (Table 12). To program
an input frequency of 6.5 MHz, the numerator can be set to 13 and the denominator to 2.
The default input frequency is 12 MHz.
5.2
System clock division
It is possible to set an overall system clock division of 2 in the
bEnableGlobalSystemClockDivision register (Table 12). This results in a PCLK of 12MHz
and a maximum frame rate of 15fps VGA.
5.3
Pixel clock (PCLK)
All data output from the VL6524/VS6524 is qualified by the PCLK output. The PCLK
frequency is 24 MHz (equivalent to a 12 MHz pixel rate as each pixel is represented by 2
bytes of data). For frame rates less than 30 fps the PCLK frequency is not reduced, instead
additional interframe lines are added into the output data stream.
Figure 4.
Frame output format against framerate
Frame output 15fps
Frame output 30fps
ACTIVE VIDEO
1/30 sec
Interline
Blanking
ACTIVE VIDEO
Interline
Blanking
Interframe Blanking
1/15 sec
1/30 sec
ACTIVE VIDEO
Interline
Blanking
Interframe Blanking
Interline
Blanking
ACTIVE VIDEO
Interframe Blanking
ACTIVE VIDEO
1/30 sec
1/15 sec
16/70
Interline
Blanking
VL6524/VS6524
Clock control
Similarly when using sub-sampled output modes the PCLK frequency is not reduced but
instead pairs of PCLKs are 'dropped', see Section 6.1.2: Subsampling module for details.
The PCLK edge used to qualify the output data is fully programmable. It is also possible to
program the state of the PCLK line (high or low) for the times when it is inactive.
5.4
PCLK gating
By default the PCLK output from the VL6524/VS6524 is not continuous. The PCLK qualifies
all video data (and embedded codes if selected) on each video line and each interframe line
but does not qualify the interline blanking data. In non-subsampled modes the PCLK is
continuous during the video data output. The operation of the PCLK can be controlled using
the bPClkSetup register (Table 29).
17/70
Output frame size control
VL6524/VS6524
6
Output frame size control
6.1
Frame format
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 default 30fps VGA output frame is shown in Figure 5.
Figure 5.
VGA 30fps output frame
1460 PCLKs
16 interframe blanking lines(0x10/0x80)
1280 PCLKs
553 lines
480 lines ACTIVE VIDEO
(640 by 480 pixels)
Line blanking
(0x10/0x80)
37 interframe blanking lines (0x10/0x80)
If embedded codes are enabled then 8 additional clocks are required in every line to qualify
the codes and 8 fewer interline clock are output leaving the total constant at 1460 clocks per
line.
By default the PCLK output does not qualify the line blanking data and so each line contains
only 1280 clocks (or 1288 if embedded codes are enabled).
The values which are output during line and frame blanking are an alternating pattern of
0x10 and 0x80 by default. These values can be changed by writing to the BlankData_MSB
and BlankData_LSB registers in the Output formatter control bank.
6.1.1
Cropping module
The VL6524/VS6524 contains a cropping module which can be used to define a window of
interest within the full VGA array size. The user can set a start location and the required
output size. Figure 6 shows the example with pipe setup bank0.
18/70
VL6524/VS6524
Output frame size control
Crop controls (Table 16: Pipe setup bank0 control)
Figure 6.
Sensor array horizontal size = 640
uwCropHStartMSB0
uwCropHStartLSB0
,uwCropVStartMSB0
uwCropVStartLSB0
Cropped ROI
Sensor array
vertical size
uwCropVSizeMSB0
uwCropVSizeLSB0
= 480
uwCropHSizeMSB0
uwCropHSizeLSB0
FFOV VGA Array
Complete lines which fall outside the window of interest are replaced in the output data
frame with lines of blanking data thus the overall frame length is not reduced.
The portion of the output line which contains video data is reduced in length to contain only
those pixels defined by the window of interest. However the overall line length remains
unchanged as the number of interline clocks increases by the same amount.
Figure 7.
Crop 30fps output frame
1460 PCLKs
Interframe blanking lines
2x CropHsize PCLKs
553 lines
CropVsize Lines
(CropHsize by
CropVsize pixels)
Line blanking
Interframe blanking lines
19/70
Output frame size control
6.1.2
VL6524/VS6524
Subsampling module
The VL6524/VS6524 has a built in sub-sampler which can divide the image by 1, 2, 3, 4, 5,
or 6.
Using the sub-sampler gives output images with reduced resolution but the same field of
view as the full VGA image or the region of interest defined in the cropping module. Table 2
lists the available image sizes.
Table 2.
Subsampled image sizes
Subsample ratio
Image format
Image dimensions
1 (default)
VGA
640 by 480
2
QVGA
320 by 240
3
-
213 by 160
4
QQVGA
160 by 120
5
SQCIF
128 by 96
6
-
106 by 80
Subsampled images are produced by ‘dropping’ PCLKs so that only certain pixels are
qualified in the output data stream. The figure below indicates a portion of the PCLK
waveform for VGA and QVGA images. The effect of this is that the time taken to readout one
line of the image remains constant in all subsampled modes - it is just the number of clocks
that changes.
Figure 8.
PCLK waveform in subsampled modes
Pixel n
D[0:7]
D0
Pixel n+1
D1
D2
Pixel n+2
D3
D4
D5
VGA
PCLK
QVGA
It is possible to use the crop module and the sub-sampler together to achieve almost any
required image size. When using the crop and subsampling functions together then the
number of lines in a frame must be an integer multiple of the subsample ratio.
6.2
Frame rate control
The VL6524/VS6524 features an extremely flexible frame rate controller. Using registers
uwDesiredFrame Rate_Num (MSB), uwDesiredFrame Rate_Num (LSB) and
bDesiredFrameRate_ Den any desired frame rate between 1 and 30 fps can be selected
(see Table 14: Frame rate control for register description). To program a required frame rate
of 7.5 fps the numerator can be set to 15 and the denominator to 2. The default frame rate is
30 fps.
Slower frame rates are achieved by adding interframe lines. This results in a longer frame
period and therefore a longer period over which integration is possible. Due to the longer
20/70
VL6524/VS6524
Output frame size control
integration time available slower frame rates have improved performance in low light
conditions.
6.2.1
Horizontal mirror and vertical flip
The image data output from the VL6524/VS6524 can be mirrored horizontally or flipped
vertically (or both).
These functions are available in the Pipe setup bank0 control register bank.
6.3
ViewLive Operation
ViewLive is an option which allows different size, format and image settings to be applied to
alternate frames of the output data.
The controls for ViewLive function are found in the View live control register bank where the
fEnable register allows the host to enable or disable the function and the
InitalPipeSetupBank register selects which pipe setup bank is output first (see Table 18:
View live control for register description).
Video pipe setup
The key controls for VL6524/VS6524 video pipe setup are grouped into register banks
called Pipe setup bank0 control and Pipe setup bank1 control.
Pipe setup bank0 control setup is used when ViewLive is disabled.
When ViewLive is enabled the output data switches between Pipe setup bank0 control and
Pipe setup bank1 control on each alternate frame.
Figure 9.
ViewLive frame output format
Frame output
Active video
Pipe setup bank0
Interline
Blanking
Interframe Blanking
Active Video
Pipe setup bank1
Interline
Blanking
Interframe Blanking
21/70
Output frame size control
6.4
VL6524/VS6524
Context switching
It is possible to control which pipe setup bank is used and to switch between banks without
the need to pause streaming, the change will occur at the next frame boundry after the
change to the register has been made.
For example this function allows the VL6524/VS6524 to stream an output targetting a
display (e.g. RGB 444) and switch to capture an image (e.g. YUV 4:2:2) with no need to
pause streaming or enter any other operating mode.
The register bNonViewLive_ ActivePipeSetupBank allows selection of the pipe setup bank
(see Table 15: Pipe setup bank selection).
22/70
VL6524/VS6524
7
Output data formats
Output data formats
The VL6524/VS6524 supports the following data formats:
●
YUV4:2:2
●
RGB565
●
RGB444 (encapsulated as 565)
●
RGB444 (zero padded)
●
Bayer 10-bit
In all output formats there are 2 output bytes per pixel.
The required data format is selected using the bdataFormat0 register described in Table 16.
The various options available for each format are controlled using the bRgbSetup and
bYuvSetup registers (Table 29).
YUV 4:2:2 data format
YUV 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 10.
Figure 10. Standard Y Cb Cr data order
Cb
Y
Cr
Y
Cb
Y
Cr
Y
Cb
Y
Cr
Y
4-byte data packet
The VL6524/VS6524 bYuvSetup register can be programmed to change the order of the
components as follows:
DEFAULT
Cb first
Figure 11. Y Cb Cr data swapping options
Y first
7.1
Components order
in 4-byte data packet
1st
2nd
3rd
1
1
Y
0
1
Cb
1
0
0
0
4th
Cb
Y
Cr
Y
Cr
Y
Y
Cr
Y
Cb
Cr
Y
Cb
Y
23/70
Output data formats
7.2
VL6524/VS6524
RGB and Bayer data formats
The VL6524/VS6524 can output RGB data in the following formats:
Note:
●
RGB565
●
RGB444 (encapsulated as RGB565)
●
RGB444 (zero padded)
●
Bayer 10-bit
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 Figure 12.
Figure 12. RGB and Bayer data formats
(1) RGB565 data packing
Bit
7
6
5
4
3
2
1
0
Bit
R4 R 3 R2 R1 R0 G 5 G 4 G 3
7
6
5
4
3
2
1
0
G2 G1 G0 B4
B3
B2
B1
B0
first byte
second byte
(2) RGB 444 packed as RGB565
Bit
7
6
5
4
3
R3 R2 R1 R0
1
2
1
0
Bit
G3 G2 G1
7
6
5
4
3
2
1
0
G0
1
0
B3
B2
B1
B0
1
3
2
1
0
G3 G2 G1 G0 B 3
B2
B1
B0
first byte
second byte
(3) RGB 444 zero padded
Bit
7
6
5
4
0
0
0
0
3
2
1
0
Bit
R3 R 2 R1 R0
7
6
5
4
first byte
second byte
(4) Bayer 10-bit
Bit
7
6
5
4
3
2
1
0
1
0
1
0
1
0
b9
b8
second byte
24/70
Bit
7
6
5
4
3
2
1
0
b7
b6
b5
b4
b3
b2
b1
b0
first byte
VL6524/VS6524
7.2.1
Output data formats
Manipulation of RGB data
It is possible to modify the encapsulation of the RGB data in a number of ways:
7.2.2
●
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 (Table 28: Dither control).
25/70
Data synchronization methods
8
VL6524/VS6524
Data synchronization methods
External capture systems can synchronize with the data output from VL6524/VS6524 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.
8.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 VL6524/VS6524: 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 (Table 29: Output formatter control).
When embedded codes are selected each line of data output contains 8 additional clocks: 4
before the active video data and 4 after it.
8.1.1
Prevention of false synchronization codes
The VL6524/VS6524 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 (Table 29: Output formatter control).
8.1.2
Mode 1(ITU656 compatible)
The structure of an image frame with ITU656 codes is shown in Figure 13.
26/70
VL6524/VS6524
Data synchronization methods
Figure 13. ITU656 frame structure with even codes
SAV
80
Frame of image data
EAV
9D
Line blanking period
Line 1
Line 480
SAV
AB
Frame blanking period
EAV
B6
The synchronization codes for odd and even frames are listed in Table 3 and Table 4. By
default all frames output from the VL6524/VS6524 are EVEN. It is possible to set all frames
to be ODD or to alternate between ODD and EVEN using the SyncCodeSetup register in
the Output formatter control register bank.
Table 3.
ITU656 embedded synchronization code definition (even frames)
Name
Description
4-byte sequence
SAV
Line start - active
FF 00 00 80
EAV
Line end - active
FF 00 00 9D
SAV (blanking)
Line start - blanking
FF 00 00 AB
EAV (blanking)
Line end - blanking
FF 00 00 B6
27/70
Data synchronization methods
8.1.3
VL6524/VS6524
Mode 2
Table 4.
ITU656 embedded synchronization code definition (odd frames)
Name
Description
4-byte sequence
SAV
Line start - active
FF 00 00 C7
EAV
Line end - active
FF 00 00 DA
SAV (blanking)
Line start - blanking
FF 00 00 EC
EAV (blanking)
Line end - blanking
FF 00 00 F1
The structure of a mode 2 image frame is shown Figure 14.
FS
Line 1
LS
Frame of image data
LE
Line 480
FE
Line blanking period
Figure 14. Mode 2 frame structure (VGA example)
Frame blanking period
For mode 2, the synchronization codes are as listed in Table 5.
Table 5.
Mode 2 - embedded synchronization code definition
Name
28/70
Description
4-byte sequence
LS
Line start
FF 00 00 00
LE
Line end
FF 00 00 01
VL6524/VS6524
Data synchronization methods
Table 5.
Mode 2 - embedded synchronization code definition
Name
8.2
Description
4-byte sequence
FS
Frame Start
FF 00 00 02
FE
Frame End
FF 00 00 03
VSYNC and HSYNC
The VL6524/VS6524 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.
8.2.1
Horizontal synchronization signal (HSYNC)
The HSYNC signal is controlled by the bHSyncSetup register (Table 29). The following
options are available:
●
enable/disable
●
select polarity
●
all lines or active lines only
●
manual or automatic
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 15.
Figure 15. HSYNC timing example
hsync=0
hsync=1
BLANKING DATA
EAV Code
FF 00 00 XY 80 10 80 10 80 10
ACTIVE VIDEO DATA
SAV Code
80 10 FF 00 00 XY D0 D1 D2 D3 D0 D1 D2 D3
EAV Code
D2 D3 FF 00 00 XY
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
bHsyncRisingH, bHsyncRisingL registers. The pixel position for the falling edge of HSYNC
is programmed in the bHsyncFallingH and bHsyncFallingL registers (Table 29).
29/70
Data synchronization methods
8.2.2
VL6524/VS6524
Vertical synchronization (VSYNC)
The VSYNC signal is controlled by the bVSyncSetup 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 16.
Figure 16. VSYNC timing example
BLANKING
V=0
V=1
ACTIVE
VIDEO
BLANKING
vsync
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 bVsyncRisingLineH,
bVsyncRisingLineL registers, the pixel position for VSYNC rising edge is programmed in the
bVsyncRisingPixelH and bVsyncRisingPixelL registers. Similarly the line count for the falling
edge position is specified in the bVsyncFallingLineH and bVsyncFallingLineL registers, and
the pixel count is specified in the bVsyncFallingPixelH and bVsyncFallingPixelL registers
described in Table 29: Output formatter control.
30/70
VL6524/VS6524
Getting started
9
Getting started
9.1
Initial power up
Before any communication is possible with the VL6524/VS6524 the following steps must
take place:
1.
Apply VDD (1.8V or 2.8V)
2.
Apply AVDD (2.8V)
3.
Apply an external CLOCK (6.5 MHz to 26 MHz)
4.
Assert CE line HIGH
These steps can all take place simultaneously. After these steps are complete a delay of
200 µs is required before any I²C communication can take place, see Figure 3: Power up
sequence.
9.2
Minimum startup command sequence
1.
Enable the microprocessor - before any commands can be sent to the
VL6524/VS6524, the internal microprocessor must be enabled by writing the value
0x06 to the MicroEnable register 0xC003 (Table 7: Low-level control registers).
2.
Enable the digital I/O - after power up the digital I/O of the VL6524/VS6524 is in a highimpedance state (‘tri-state’). The I/O are enabled by writing the value 0x01 to the
Enable I/O register 0xC034 (Table 7: Low-level control registers).
3.
The user can then program the system clock frequency and setup the required output
format before placing the VL6524/VS6524 in RUN mode by writing 0x02 to the
bUserCommand register 0x0180 (Table 9: Mode control).
The above three commands represent the absolute minimum required to get video data
output.
The default configuration results in an output of VGA, 30 fps, YUV data format with ITU
embedded codes requiring a external clock frequency of 12MHz.
In practice the user is likely to require to write some additional setup information prior to
receive the required data output.
31/70
Host communication - I²C control interface
10
VL6524/VS6524
Host communication - I²C control interface
The interface used on the VL6524/VS6524 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.
V2W protocol layer
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 17. Write message
S
DEV ADDR R/W A
DATA
‘0’ (Write)
A
DATA
A
DATA
2 Index Bytes
From Master to Slave
A/A P
N Data Byte
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 18. Read message
S
DEV ADDR R/W A
‘1’ (Read)
DATA
A
A
P
1 or more Data Byte
From Master to Slave
32/70
DATA
From Slave to Master
VL6524/VS6524
Host communication - I²C control interface
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
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.
Detailed overview of the message format
Figure 19. Detailed overview of message format
1
2
S
(Sr)
7-bit Device
Address
R/W
3
4
5
6
A
8-bit Data
A
(A)
P
(Sr)
P
SDA
MSB
SCL
S
or
Sr
START
or
repeated
START
condition
1
LSB
2
Device Address
7
8
R/W
Bit
0 - Write
1 - Read
MSB
9
ACK
signal
from
slave
1
Sr
LSB
2
7
Data byte from
transmitter
R/W=0 - Master
R/W=1 - Slave
8
9
ACK
signal
from
receiver
Sr
or
P
STOP
or
repeated
Start
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.
33/70
Host communication - I²C control interface
VL6524/VS6524
Figure 20. Device addresses
Sensor Address
0
0
1
0
0
0
0
R/W
Sensor write Address 20H
0
0
1
0
0
0
0
0
Sensor read Address 21H
0
0
1
0
0
0
0
1
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
5.
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).
Data receive acknowledge
a)
When a write is performed slave acknowledges data.
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.
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 Figure 33: Timing specification and Table 38: Timing
specification).
Figure 21. SDA data valid
SDA
SCL
Data line
stable
Data valid
34/70
Data change
Data line
stable
Data valid
VL6524/VS6524
Host communication - I²C control interface
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.
Figure 22. START and STOP conditions
SDA
SCL
S
P
START
condition
STOP
condition
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 23. Data acknowledge
SDA data output
by transmitter
Negative acknowledge (A)
SDA data output
by receiver
Acknowledge (A)
SCL clock from
master
S
START condition
1
2
8
9
Clock pulse for acknowledge
35/70
Host communication - I²C control interface
VL6524/VS6524
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.
Figure 24. Internal register index space
8 bits
65535
65534
65533
65532
130
16-bit Index / 8-bit Data Format
64k by 8-bit wide index space
(Valid Addresses 0-65535)
129
128
127
126
125
4
3
2
1
0
36/70
VL6524/VS6524
Host communication - I²C control interface
Types of messages
This section gives guidelines on the basic operations to read data from and write data to
VL6524/VS6524.
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.
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.
Figure 25. Random location, single write
16-bit Index, 8-bit Data, Random Location, Single Data Write
Previous Index Value, K
S
DEV ADDR R/W A
‘0’ (Write)
DATA
Index M
A
INDEX[15:8]
DATA
INDEX[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
DATA
A/A P
DATA[7:0]
DATA[7:0]
A = Acknowledge
A = Negative Acknowledge
37/70
Host communication - I²C control interface
VL6524/VS6524
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 26. 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]
From Master to Slave
From Slave to Master
38/70
S = START Condition
Sr = repeated START
P = STOP Condition
A = Acknowledge
A = Negative Acknowledge
VL6524/VS6524
Host communication - I²C control interface
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.
As mentioned in the previous example, the read message is terminated with a negative
acknowledge (A) from the master.
Figure 27. Random location, single data read
16-bit Index, 8-bit data random index, single data read
Previous Index Value, K
Index M
No Data Write
S
DEV ADDR R/W A
Data Read
DATA
A
DATA
A
Sr
DEV ADDR R/W A
DATA
A
P
‘1’ (Read)
‘0’ (Write)
INDEX[15:8]
INDEX[7:0]
DATA[7:0]
INDEX[15:0]
value, M
From Master to Slave
DATA[7:0]
A = Acknowledge
A = Negative Acknowledge
S = START Condition
Sr = repeated START
P = STOP Condition
From Slave to Master
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 28. Multiple location write
16-bit index, 8-bit data multiple location write
Previous Index Value, K
S
DEV ADDR R/W A
DATA
Index M
A
DATA
A
DATA
Index (M + N - 1)
A
DATA
A/A P
‘0’ (Write)
INDEX[15:8]
INDEX[7:0]
INDEX[15:0]
value, M
DATA[7:0]
DATA[7:0]
DATA[7:0]
DATA[7:0]
N Bytes of Data
From Master to Slave
From Slave to Master
S = START Condition
Sr = repeated START
P = STOP Condition
A = Acknowledge
A = Negative Acknowledge
39/70
Host communication - I²C control interface
VL6524/VS6524
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 29. Multiple location read
16-bit Index, 8-bit data multiple location read
Previous Index Value, K
S
DEV ADDR R/W A
DATA
Index K+1
A
DATA
Index (K + N - 1)
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
40/70
S = START Condition
Sr = repeated START
P = STOP Condition
A = Acknowledge
A = Negative Acknowledge
DEV ADDR R/W A
A
DATA
Write Data
(N bytes + acknowledge)
DATA
DEV ADDR R/W A
‘1’ (Read)
A/A Sr
DEV ADDR R/W A
From Slave to Master
From Master to Slave
‘0’ (Write)
S
A
DATA
INDEX[7:0]
S = START Condition
Sr = repeated START
P = STOP Condition
INDEX[15:0]
value, M
INDEX[15:8]
DATA
No Data Write
Previous Index Value, K
A
DEV ADDR R/W A
A = Acknowledge
A = Negative Acknowledge
‘1’ (Read)
Sr
Index M
16-bit Index, 8-bit Data Random Index, Multiple Data Read
‘0’ (Write)
S
I2C Combined Format Specification
A
DATA
DATA[7:0]
DATA[7:0]
DATA
A
DATA
DATA[7:0]
DATA[7:0]
N Bytes of Data
Data Read
A
P
A
Index (M + N - 1)
Read Data
(R bytes + acknowledge
DATA
P
VL6524/VS6524
Host communication - I²C control interface
Figure 30. Multiple location read starting from a random location
41/70
Register map
11
VL6524/VS6524
Register map
The VL6524/VS6524 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 6.
Table 6.
Data type
Data Type
Description
I
Integer parameter.
M
Multiple field registers - 16 bit parameter
B
Bit field register - individual bits must be set/cleared
C
Coded register - function depends on value written
F
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
To convert a floating point number to Float 900, use the following procedure:
42/70
●
represent the number as a binary floating point number. Normalize the mantissa and
calculate the exponent to give a binary scientific representation of 1.xxxxxxxxx * 2^y.
●
The x symbols should represent 9 binary digits of the mantissa, round or pad with zeros
to achieve 9 digits in total. Remove the leading 1 from the mantissa as it is redundant.
●
To calculate the y value Bias the exponent by adding to 31 decimal then converting to
binary.
●
The data can then be placed in the structure above.
VL6524/VS6524
Register map
Example
Convert -0.41 to Float 900
Convert the fraction into binary by successive multiplication by 2 and removal of integer
component
0.41 * 2 = 0.82
0.82 * 2 = 1.64
0.64 * 2 = 1.28
0.28 * 2 = 0.56
0.56 * 2 = 1.12
0.12 * 2 = 0.24
0.24 * 2 = 0.48
0.48 * 2 = 0.96
0.96 * 2 = 1.92
0.92 * 2 = 1.84
0.84 * 2 = 1.68
0.68 * 2 = 1.36
0.36 * 2 = 0.72
0
1
1
0
1
0
0
0
1
1
1
1
0
This gives us -0.0110100011110.
We then normalize by moving the decimal point to give - 1.10100011110 * 2^-2.
The mantissa is rounded and the leading zero removed to give 101001000.
We add the exponent to the bias of 31 that gives us 29 or 11101.
A leading zero is added to give 6 bits 011101.
The sign bit is set at 1 as the number is negative.
This gives us 1011 1011 0100 1000 as our Float 900 representation or BB48 in hex.
To convert the encoded representation back to a decimal floating point, we can use the
following formula.
Real is = (-1)^sign * ((512+mantissae)>> 9) * 2^(exp-31)
Thus to convert BB48 back to decimal, the following procedure is followed:
Note that >>9 right shift is equal to division by 2^9.
Sign = 1
Exponent = 11101 (29 decimal)
Mantissa = 101001000 (328 decimal)
This gives us:
real = (-1)^1 * ((512+328)/2^9) * 2^(29-31)
real = -1 * (840/512) * 2^(-2)
real = -1 * 1.640625 * 0.25
real = -0.41015625
When compared to the original -0.41, we see that some rounding errors have been
introduced.
43/70
Register map
VL6524/VS6524
Low level control registers
Table 7.
Low-level control registers
Index
R/W
Data
Type
Format
default
MicroEnable
0xC003
R/W
C
0x38
0x06 - clocks enabled
Enable I/O
0xC034
R/W
B
0x00
set bit[0] to enable IO
Name
Note:
Description
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 Clock
enable register is set to 0x06.
Device parameters [read only]
Table 8.
Device parameters
Index
R/W
Data
Type
Format
default
uwDeviceId (MSB)
0x0001
R
I
0x02
uwDeviceId (LSB)
0x0002
R
I
0x0c
bFirmwareVsnMajor
0x0004
R
I
0x01
bFirmwareVsnMinor
0x0006
R
I
0x01
bPatchVsnMajor
0x0008
R
I
0x00
bPatchVsnMinor
0x000a
R
I
0x00
R/W
Data
Type
Format
default
Name
Description
0x020c = 524
Firmware version
0x0101 = 1.1
Patch version
0x0000
Mode control
Table 9.
Mode control
Name
bUserCommand
44/70
Index
0x0180
RW
C
0
Description
0x00 - UNINITIALISED
0x01 - BOOT
0x02 - RUN
0x03 - PAUSE
0x04 - STOP
0x05 - FLASHGUN
VL6524/VS6524
Register map
Mode Status [read only]
Table 10.
Mode status
Name
bState
Index
R/W
0x0202
Data
Type
Format
default
R
C
0x10
Index
R/W
Data
Type
Format
default
0x0280
R/W
B
0x01
Description
0x10 - RAW
0x21 - Waiting for BOOT
0x22 - PAUSED
0x26 - Waiting for RUN
0x31 - RUNNING
0x32 - Waiting for PAUSE
0x40 - FLASHGUN
0x50 - STOPPED
RunModeControl
Table 11.
RunModeControl
Name
fMeteringOn
Description
0x00 = False
0x01 = True
Clock manager input control
Table 12.
Clock manager input control
Index
R/W
Data
Type
Format
default
uwExtClockFreqNum
(MSB)
0x060b
R/W
I
0x00
uwExtClockFreqNum
(LSB)
0x060c
R/W
I
0x0c
bExtClockFreqDen
0x060e
R/W
I
0x01
Specifies the external clock frequency
denominator
bEnableGlobalSystem
ClockDivision
0x0610
R/W
B
0x00
0x00 = False
0x01 = True -system clock division by 2
Name
Description
Specifies the external clock frequency
numerator
Default = 12 MHz
Power management control
Table 13.
Power management control
Name
bTimeToPowerdown
Index
R/W
Data
Type
Format
default
0x0580
R/W
I
0x0f
Description
Time (ms) from pausing streaming to
entering stop. In the range 5 to 154 ms
0xff - disable
45/70
Register map
VL6524/VS6524
Frame rate control
Table 14.
Frame rate control
Index
R/W
Data
Type
Format
default
uwDesiredFrame
Rate_Num (MSB)
0x0d81
R/W
I
0x00
uwDesiredFrame
Rate_Num (LSB)
0x0d82
R/W
I
0x1e
bDesiredFrameRate_
Den
0x0d84
R/W
I
0x01
Name
Description
Numerator for the Frame Rate
Default = 30 fps
Denominator for the Frame Rate
Pipe setup bank selection
Table 15.
Pipe setup bank selection
Name
bNonViewLive_
ActivePipeSetupBank
Index
R/W
Data
Type
Format
default
0x0302
R/W
I
0x00
Data
Type
Format
default
Description
0x00 -Pipe setup bank0 used
0x01 -Pipe setup bank1 used
Pipe setup bank0 control
Table 16.
Pipe setup bank0 control
Name
Index
R/W
Description
bImageSize0
0x0380
R/W
C
0x01
Required output dimension
0x01 - ImageSize_VGA
0x02 - ImageSize_QVGA
0x03 - ImageSize_QQVGA
0x04 - ImageSize_Manual
bSubSample0
0x0382
R/W
I
0x01
0x01 = Minimum sub-sample
corresponding to no sub-sampling.
MAX = 0x06
fEnableCrop0
0x0384
R/W
B
0x00
0x00 = False - 0x01 = True
uwCropHStartMSB0
0x0387
R/W
MI
0x00
uwCropHStartLSB0
0x0388
R/W
MI
0x00
uwCropHSizeMSB0
0x038b
R/W
MI
0x00
uwCropHSizeLSB0
0x038c
R/W
MI
0x00
uwCropVStartMSB0
0x038f
R/W
MI
0x00
uwCropVStartLSB0
0x0390
R/W
MI
0x00
uwCropVSizeMSB0
0x0393
R/W
MI
0x00
uwCropVSizeLSB0
0x0394
R/W
MI
0x00
Horizontal start point for manual crop
Horizontal size for manual crop
Vertical start point for manual crop
Vertical size for manual crop
46/70
VL6524/VS6524
Table 16.
Register map
Pipe setup bank0 control
Name
Index
R/W
Data
Type
Format
default
Description
bdataFormat0
0x0396
R/W
C
0x01
0x00 = YCbCr_JFIF
0x01 = YCbCr_Rec601
0x02 = YCbCr_Custom
0x03 = RGB_565
0x04 = RGB_565_Custom
0x05 = RGB_444
0x06 = RGB_444_Custom
0x07 = reserved
0x08 = Bayer output VP
bBayerOutput
Alignment0
0x398
R/W
C
0x04
0x04 = Bayer output right shifted
0x05 = Bayer output left shifted
bContrast0
0x039a
I
0x79
Contrast control (%)
bColorSaturation0
0x039c
I
0x7d
Color saturation control (%)
bGamma0
0x039e
I
0x0f
Gamma settings
0x00 = Gamma_Linear
0x10 = Gamma SMPTE 240M
0x1F = Gamma_Max
fHorizontaiMirror0
0x03a0
B
0x00
Horizontal mirror control,
0x00 = False - 0x01 = True
fVerticalFlip0
0x03a2
B
0x00
Vertical mirror control,
0x00 = False - 0x01= True
47/70
Register map
VL6524/VS6524
Pipe Setup Bank1 Control
Table 17.
Pipe setup bank1 control
Name
Index
R/W
Data
Type
Format
default
Description
bImageSize1
0x0400
R/W
C
0x01
Required output dimension
0x01 = ImageSize_VGA
0x02 = ImageSize_QVGA
0x03 = ImageSize_QQVGA
0x04 = ImageSize_Manual
bSubSample1
0x0402
R/W
C
0x01
0x01 = Minimum sub-sample
corresponding to no sub-sampling.
MAX = 0x06
fEnableCrop1
0x0404
R/W
B
0x00
0x00 = False - 0x01 = True
uwCropHStartMSB1
0x0407
R/W
MI
0x00
uwCropHStartLSB1
0x0408
R/W
MI
0x00
uwCropHSizeMSB1
0x040b
R/W
MI
0x00
uwCropHSizeLSB1
0x040c
R/W
MI
0x00
uwCropVStartMSB1
0x040f
R/W
MI
0x00
uwCropVStartLSB1
0x0410
R/W
MI
0x00
uwCropVSizeMSB1
0x0413
R/W
MI
0x00
uwCropVSizeLSB1
0x0414
R/W
MI
0x00
Horizontal start point for manual crop
Horizontal size for manual crop
Vertical start point for manual crop
Vertical size for manual crop
bdataFormat1
0x0416
R/W
C
0x01
0x00 = YCbCr_JFIF
0x01 = YCbCr_Rec601
0x02 = YCbCr_Custom
0x03 = RGB_565
0x04 = RGB_565_Custom
0x05 = RGB_444
0x06 = RGB_444_Custom
0x07 = BayerVPBypass
0x08 = BayerThroughVP
bBayerOutput
Alignment1
0x0418
R/W
C
0x04
0x04 = Bayer output right shifted
0x05 = Bayer output left shifted
bContrast1
0x041a
R/W
I
0x79
Contrast control (%)
bColorSaturation1
0x041c
R/W
I
0x7d
Color saturation control (%)
bGamma1
0x041e
R/W
I
0x0f
Gamma settings
0x00 = Gamma_Linear
0x10 = Gamma SMPTE 240M
0x1F = Gamma_Max
fHorizontalMirror1
0x0420
R/W
B
0x00
Horizontal mirror control
0x00 = False, 0x01 = True
fVerticalFlip1
0x0422
R/W
B
0x00
Vertical mirror control
0x00 = False , 0x01 = True
48/70
VL6524/VS6524
Register map
View live control
Table 18.
View live control
Name
fEnable
InitalPipeSetupBank
Index
R/W
Data
Type
Format
default
0x0480
R/W
B
0x00
Enable ViewLive mode
0x00 = False - 0x01 = True
C
0x00
When ViewLive mode is enabled, this
register selects which PipeSetupBank the
first frame output uses,
0x00 = PipeSetupBank0
0x01 = PipeSetupBank1
Data
Type
Format
default
Description
0x0482
R/W
Description
White balance control
Table 19.
White balance control
Name
Index
R/W
WhiteBalanceMode
0x1380
R/W
C
0x01
White balance mode selection:
0x00 = OFF - No White balance, all gains
are unity in this mode
0x01 = AUTOMATIC
0x03 = MANUAL_RGB - gains are applied
manually using registers below
0x04 = DAYLIGHT_PRESET
0x05 = TUNGSTEN_PRESET
0x06 = FLUORESCENT_PRESET
0x07 = HORIZON_PRESET
0x08 = MANUAL_COLOUR_TEMP
0x09 = FLASHGUN_PRESET
bManualRedGain
0x1382
R/W
I
0x00
User setting for Red Channel gain
bManualGreenGain
0x1384
R/W
I
0x00
User setting for Green Channel gain
bManualBlueGain
0x1386
R/W
I
0x00
User setting for Blue Channel gain
fpRedGainforFlashgun
MSB
0x138b
R/W
MF
0x3e
fpRedGainforFlashgun
LSB
0x138c
R/W
MF
0x66
fpGreenGainfor
Flashgun MSB
0x138f
R/W
MF
0x3e
fpGreenGainfor
Flashgun LSB
0x1390
R/W
MF
0x00
fpBlueGainfor
Flashgun MSB
0x1393
R/W
MF
0x3e
fpBlueGainfor
Flashgun LSB
0x1394
Red Channel gain for Flashgun
Code float - Default 0x3e66 = 1.199219
Green Channel gain for Flashgun
Code float - Default 0x3e00 = 1.000000
Blue Channel gain for Flashgun
Code float . Default 0x3e33 = 1.099609
R/W
MF
0x33
49/70
Register map
VL6524/VS6524
Exposure control
Table 20.
Exposure control
Name
bExposureMode
Index
0x1080
R/W
R/W
Data
Type
C
Format
default
Description
0x00
0x00 = AUTOMATIC_MODE
0x01 = COMPILED_MANUAL_
MODE - The desired exposure time is set
manually in the Manual Exposure registers
and the exposure parameters are
calculated by the algorithm.
0x02 = DIRECT_MANUAL_
MODE - The exposure parameters are
input directly.
0x03 = FLASHGUN_MODE The exposure parameters are set manually.
Weights associated with the zones to
calculate the mean statistics. Exposure
Weight is Centered or Backlit or Flat.
0x00 = ExposureMetering_flat - Uniform
gain associated with all pixels
0x01 = ExposureMetering_backlit: more
gain associated with centre and bottom
pixels
0x02 = ExposureMetering_centred - more
gain associated with centre pixels
bExposureMetering
0x1082
R/W
C
0x00
bManualExposure
Time_Num
0x1084
R/W
I
0x01
bManualExposure
Time_Den
0x1086
R/W
I
0x1e
Exposure Time for Compiled Manual Mode
in seconds. Numerator / Denominator gives
required exposure time
iExposure
Compensation
0x1090
R/W
I
0x00
Exposure Compensation - a user choice for
setting the runtime target. A unit of
exposure compensation corresponds to 1/6
EV. This is a signed register.
fFreezeAuto
Exposure
0x10b4
R/W
B
0x00
Freeze auto exposure
0x00 = False
0x01 = True
fpUserMaximum
IntegrationTime (MSB)
0x10b7
R/W
MF
0x64
fpUserMaximum
IntegrationTime (LSB)
0x10b8
R/W
MF
0x7f
50/70
User Maximum Integration Time in
microseconds. This control takes in the
maximum integration time that host would
like to support. This in turn gives an idea of
the degree of “wobbly pencil effect”
acceptable by Host.
Default 0x647f = 654336
VL6524/VS6524
Register map
Exposure status (Read only)
Table 21.
Exposure status
Name
Index
R/W
Data
Type
fpCompiledTime (MSB)
0x121d
R
MF
fpCompiledTime (LSB)
0x121e
R
MF
Format
default
Description
Present exposure time as calculated by the
compiler taking into account the framerate
used.
Exposure algorithm control
Table 22.
Exposure algorithm control
Name
bLeakShift
Index
R/W
Data
Type
Format
default
0x113c
R/W
I
0x02
R/W
Data
Type
Format
default
Description
Control exposure leaky integrator.
Set to 0 for reactive systems.
Set to 4 for more stable systems.
Flashgun control
Table 23.
Flashgun control
Name
Index
bFlashgunMode
0x1780
R/W
C
0x00
uwFlashgunOffLine
MSB
0x1783
R/W
MI
0x02
uwFlashgunOffLine
LSB
0x1784
R/W
MI
0x1c
Description
Manual flashgun control(1)
0x00 = Flash off
0x01 = Torch (FSO pin high)
0x02 = Flash pulse
This is used to set the duration of the flash.
The value equals the line in the frame
during which the flashgun pulse is switched
off.
1. The mode control register has priority over this function
51/70
Register map
VL6524/VS6524
Flicker frequency control
Table 24.
Flicker frequency control
Name
bAntiFlickerMode
bLightingFreqHz
fFlickerComplatible
FrameLength
Index
R/W
Data
Type
Format
default
0x10c0
R/W
C
0x01
Modes for anti-flicker compilation.
0x00 = Inhibit
0x01 = Manual Enable
0x64
Flicker free time period calculations this
should be 2* AC mains frequency
0x64 = 100 = 50Hz AC freq
0x78 =120 = 60Hz AC freq
B
0x00
Set to make the frame length compatible
with the flicker free time period,
0x00 = FALSE
0x01 = TRUE
0x0c80
0x0c82
R/W
I
R/W
Description
Defect correction control
Table 25.
Defect correction control
Index
R/W
Data
Type
Format
default
fDisableScytheFilter
0x1a80
R/W
B
0x00
0x00 = False
0x01 = True
fDisableJackFilter
0x1b00
R/W
B
0x00
0x00 = False
0x01 = True
Index
R/W
Data
Type
Format
default
bUserPeakGain
0x1d80
R/W
I
0x0f
Adjust gradient of sharpening system
bUserPeakLo
Threshold
0x1d90
R/W
I
0x1e
The coring threshold is used to stop the
sharpening gain being applied to very small
changes in the image (i.e. Noise).
Description
Name
Description
Sharpening control
Table 26.
Sharpening control
Name
Description
Fade to black damper control
Table 27.
Fade to black damper control
Name
fDisable
52/70
Index
R/W
Data
Type
Format
default
0x2000
R/W
B
0x00
Set to disable fade to black operation.
0x00 = False
0x01 = True
VL6524/VS6524
Table 27.
Register map
Fade to black damper control
Index
R/W
Data
Type
Format
default
fpBlackValue (MSB)
0x2003
R/W
MF
0x00
fpBlackValue (LSB)
0x2004
R/W
MF
0x00
fpDamperLow
Threshold (MSB)
0x2007
R/W
MF
0x63
fpDamperLow
Threshold (LSB)
0x2008
R/W
MF
0xd1
fpDamperHigh
Threshold (MSB)
0x200b
R/W
MF
0x65
fpDamperHigh
Threshold (LSB)
0x200c
R/W
MF
0x6f
fpMinimumOutput
(MSB)
0x200f
R
F
fpMinimumOutput
(LSB)
0x2010
Name
Description
Minimum possible damper output for the
colour matrix 0.0 fades to absolute black,
1.0 effectively disables fade to black.
Default 0x0000 = 0
Low threshold to calculate the damper
slope
Default 0x67d1 =500224
High threshold to calculate the damper
slope
Default 0x656f = 900096
Status value showing damper strength
used
R
F
53/70
Register map
VL6524/VS6524
Dither control
Table 28.
Dither control
Name
DitherControl
Index
R/W
Data
Type
Format
default
0x2080
R/W
C
0x00
Data
Type
Format
default
Description
0x00 = Dither RGB modes only
0x01 = Dither function OFF
0x02 = Dither function ON
Output formatter control
Table 29.
Output formatter control
Name
bCodeCheckEnable
bSyncCodeSetup
Index
0x2100
0x2104
R/W
R/W
R/W
C
B
Description
0x07
0x00 - allow all output values
1 = suppress 0xFF
2 = suppress 0x00
3 = suppress 0x00 and 0xFF from output
0x01
[0] Enable Sync Codes
[1] Sync Code Type
(0 = ITU, 1 = mode2)
[2] Odd/Even field
(0 =even, 1 =odd)
[3] Toggle (1 = Toggle)
[4] Load (set high then low over a frame
boundary to consume a change applied in
[2] or [3])
bHSyncSetup
0x2106
R/W
B
0x0b
[0] Enable
[1] Polarity
[2] Active lines only
[3] Automatic/manual
bVSyncSetup
0x2108
R/W
B
0x07
[0] Enable
[1] Polarity
[2] Automatic/Manual
bPClkSetup
0x210a
R/W
B
0x05
[0] Edge (1=positive, 0 =negative)
[1] Non-active level
(1=high. 0 = low)
[2] Enable
[7] Free-running
fpPclkEn
0x210c
R/W
B
0x01
0 = False - 1 = True
bBlankData_MSB
0x2110
R/W
I
0x10
Blanking MSB
bBlankData_LSB
0x2112
R/W
I
0x80
Blanking LSB
bRgbSetup
0x2114
R/W
B
0x00
[0] RGB 444 - zero packing
[1] Swap R and B components
[2] Reverse Bits
bYuvSetup
0x2116
R/W
B
0x00
[0] Cb_first
[1] Y first
54/70
VL6524/VS6524
Table 29.
Register map
Output formatter control
Index
R/W
Data
Type
Format
default
bVsyncRisingLineH
0x2118
R/W
MI
0x00
bVsyncRisingLineL
0x211a
R/W
MI
0x00
bVsyncRisingPixelH
0x211c
R/W
MI
0x01
bVsyncRisingPixelL
0x211e
R/W
MI
0x01
bVsyncFallingLineH
0x2120
R/W
MI
0x01
bVsyncFallingLineL
0x2122
R/W
MI
0xf2
bVsyncFallingPixelH
0x2124
R/W
MI
0x00
bVsyncFallingPixelL
0x2126
R/W
MI
0x01
bHsyncRisingH
0x2128
R/W
MI
0x00
bHsyncRisingL
0x212a
R/W
MI
0x03
bHsyncFallingH
0x212c
R/W
MI
0x00
bHsyncFallingL
0x212e
R/W
MI
0x07
Name
Description
Line on which Vsync should rise
(manual vsync must be selected)
Pixel on which Vsync should rise
(manual vsync must be selected)
Line on which Vsync should fall
(manual vsync must be selected)
Pixel on which Vsync should fall
(manual vsync must be selected)
Pixel on which Hsync should rise
(manual Hsync must be selected)
Pixel on which Hsync should fall
(manual Hsync must be selected)
55/70
Optical specifications
12
VL6524/VS6524
Optical specifications
Table 30.
Optical specifications(1)
Parameter
Min.
Typ.
Max.
Unit
Optical format
1/6
inch
Effective focal length
2.5
mm
Aperture (F number)
2.8
Horizontal field of view
46
49
51
deg.
Vertical field of view
35
37
39
deg.
57
59
61
deg.
20
infinity
cm
-1.5
1.5
%
Diagonal field of
Depth of
view(2)
field(3)
TV distortion
1. All measurements made at 23°C ± 2°C
2. Value determined through calculation
3. By design the device has an acceptable quality between hyperfocal distance /2 and infinity.
12.1
Average sensitivity
The average sensitivity is a measure of the image sensor response to a given light stimulus.
The optical stimulus is a white light source with a color temperature of 3200K, producing
uniform illumination at the surface of the sensor package. An IR blocking filter is added to
the light source. The analog gain of the sensor is set to x1. The exposure time, ∆t, is set as
50% of maximum. The illuminance, I, is adjusted so the average sensor output code, Xlight,
is roughly mid-range equivalent to a saturation level of 50%. Once Xlight has been recorded
the experiment is repeated with no illumination to give a value Xdark.
Xlight – Xdark
The sensitivity is then calculated as --------------------------------------- .The result is expressed in volts per lux∆t ⋅ l
second.
The sensitivity of the VS6524 is given in Table 31.
Table 31.
VS6524 average sensitivity
Optical parameter
Average sensitivity
56/70
Value
Unit
0.71
V/lux.s
VL6524/VS6524
Spectral response
The spectral response for the VS6524 sensor is shown in Figure 31.
Figure 31. VS6524 spectral response
Quantum efficiency - Sensitivity = 0.71V/lux.sec.
Blue
Green
Red
35
30
25
QE /%
12.2
Optical specifications
20
15
10
5
0
400
450
500
550
600
650
700
Wavelength /nm
57/70
Electrical characteristics
VL6524/VS6524
13
Electrical characteristics
13.1
Absolute maximum ratings
Table 32.
Absolute maximum ratings
Symbol
Parameter
Min.
Max.
Unit
TSTO
Storage temperature
-40
85
°C
VDD
Digital power supplies
-0.5
3.3
V
AVDD
Analog power supplies
-0.5
3.3
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.
13.2
Operating conditions
Table 33.
Symbol
Supply specifications
Parameter
Min.
Max.
Unit
TAF
Operating temperature, functional
(Camera is electrically functional)
-30
70
°C
TAN
Operating temperature, nominal
(Camera produces acceptable images)
-25
55
°C
TAO
Operating temperature, optimal
(Camera produces optimal optical performance)
5
30
°C
Digital power supplies operating range (@ module pin(1))
1.7
2.0
V
VDD
2.4
3.0
V
AVDD
Analog power supplies operating range
(@ module pin(1))
2.4
3.0
V
1. Module can contain routing resistance up to 5 Ω.
58/70
VL6524/VS6524
Electrical characteristics
13.3
DC electrical characteristics
Note:
Over operating conditions unless otherwise specified.
Table 34.
DC electrical characteristics
Symbol
Description
Test conditions
Min.
Typ.
Max.
Unit
VDD 1.7 ~ 2.0 V
-0.3
0.25 VDD
VDD 2.4 ~ 3.0 V
-0.3
0.3 VDD
VDD < 2.7 V
0.7 VDD
VDD + 0.3
V
VDD > 2.7 V
0.7 VDD
3.46
V
0.2 VDD
0.4 VDD
V
VIL
Input low voltage
VIH
Input high voltage
VOL
Output low voltage
IOL < 2 mA
IOL < 4 mA
VOH
Output high voltage
IOL < 4 mA
IIL
Input leakage current
Input pins
0 < VIN < VDD
I/O pins
-10
-1
+10
+1
µA
µA
Input leakage current
SDA and SCL pins VIH > VDD + 0.3V
-2
+500
µA
6
pF
0.8 VDD
V
V
CIN
Input capacitance, SCL
TA = 25 °C, freq = 1 MHz
COUT
Output capacitance
TA = 25 °C, freq = 1 MHz
6
pF
CI/O
I/O capacitance, SDA
TA = 25 °C, freq = 1 MHz
8
pF
Table 35.
Typical current consumption
IVDD
Symbol
Description
Test conditions
IAVDD
Units
VDD = 1.8V VDD = 2.8V
IPD
Supply current in power
down mode
CE=0, CLK = 12 MHz
0.01
0.6
0.8
µA
Istanby
Supply current in Standby
mode
CE=1, CLK = 12 MHz
0.001
0.4
1.2
mA
Istop
Supply current in Stop
mode
CE=1, CLK = 12 MHz
0.002
0.4
7.45
mA
IPause
Supply current in Pause
mode
CE=1, CLK = 12 MHz
0.050
14.99
24.4
mA
Irun
Supply current in active
streaming run mode
CE=1, CLK = 12 MHz
streaming VGA @30 fps
8.3
32.6
41.0
mA
59/70
Electrical characteristics
VL6524/VS6524
13.4
AC electrical characteristics
13.4.1
External clock
The VL6524/VS6524 requires an external clock. This clock is a CMOS digital input. The
clock input is fail-safe in power down mode.
Table 36.
External clock
Range
CLK
Unit
Min.
Typ.
DC coupled square wave
Clock frequency (normal operation)
13.4.2
Max.
VDD
6.50
V
6.50, 8.40, 9.60, 9.72, 12.00,
13.00, 16.80, 19.20, 19.44
26
MHz
Chip enable
CE is a CMOS digital input. The module is powered down when a logic 0 is applied to CE.
See Chapter 4 for power down and for power-up sequence.
13.4.3
I²C slave interface
VL6524/VS6524 contains an I²C-type interface using two signals: a bidirectional serial data
line (SDA) and an input-only serial clock line (SCL). See Chapter 10 for detailed description
of protocol.
Table 37.
Serial interface voltage levels(1)
Standard Mode
Symbol
VHYS
Fast Mode
Parameter
Unit
Min.
Max.
Min.
Max.
VDD > 2 V
N/A
N/A
0.05 VDD
-
V
VDD < 2V
N/A
N/A
0.1 VDD
-
V
Hysteresis of Schmitt Trigger
Inputs
LOW level output voltage
(open drain) at 3mA sink current
VOL1
VDD > 2 V
0
0.4
0
0.4
V
VOL3
VDD < 2V
N/A
N/A
0
0.2 VDD
V
VOH
HIGH level output voltage
N/A
N/A
0.8 VDD
tOF
Output fall time from VIHmin to
VILmax with a bus capacitance
from 10 pF to 400 pF
-
250
20+0.1Cb(2)
250
ns
tSP
Pulse width of spikes which must
be suppressed by the input filter
N/A
N/A
0
50
ns
1. Maximum VIH = VDDmax + 0.5 V
2. Cb = capacitance of one bus line in pF
60/70
V
VL6524/VS6524
Electrical characteristics
Figure 32. Voltage level specification
Input voltage levels
Output voltage levels
VOH = 0.8 * VDD
VIH
VIL
VOL = 0.2 * VDD
Table 38.
Timing specification(1)
Standard mode
Symbol
Fast mode
Parameter
Unit
Min.
Max.
Min.
Max.
0
100
0
400
kHz
fSCL
SCL clock frequency
tHD;STA
Hold time for a repeated start
4.0
-
0.6
-
µs
tLOW
LOW period of SCL
4.7
-
1.3
-
µs
tHIGH
HIGH period of SCL
4.0
-
0.6
-
µs
tSU;STA
Set-up time for a repeated start
4.7
-
0.6
-
µs
tHD;DAT
Data hold time (1)
300
-
300
-
ns
tSU;DAT
Data Set-up time (1)
250
-
100
-
ns
1000
20+0.1Cb(2)
300
ns
300
ns
tr
Rise time of SCL, SDA
-
tf
Fall time of SCL, SDA
-
300
20+0.1Cb(2)
tSU;STO
Set-up time for a stop
4.0
-
0.6
-
µs
tBUF
Bus free time between a stop and
a start
4.7
-
1.3
-
µs
Cb
Capacitive Load for each bus line
-
400
-
400
pF
VnL
Noise Margin at the LOW level for
each connected device (including
hysteresis)
0.1 VDD
-
0.1 VDD
-
V
VnH
Noise Margin at the HIGH level for
each connected device (including
hysteresis)
0.2 VDD
-
0.2 VDD
-
V
1. All values are referred to a VIHmin = 0.9 VDD and VILmax = 0.1 VDD
2. Cb = capacitance of one bus line in pF
61/70
Electrical characteristics
VL6524/VS6524
Figure 33. Timing specification
SDA
tSP
tSU;STA
tHD;STA
tSU;STO
tHD;DAT
tBUF
tHD;STA
tSU;DAT
SCL
tLOW
S
tHIGH
tr
tf
START
P
S
STOP
START
All values are referred to a VIHmin = 0.9 VDD and VILmax = 0.1 VDD
Figure 34. SDA/SCL rise and fall times
0.9 * VDD
0.9 * VDD
0.1 * VDD
0.1 * VDD
tr
62/70
tf
VL6524/VS6524
13.4.4
Electrical characteristics
Parallel data interface timing
VL6524/VS6524 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 35. Parallel data output video timing
1/fPCLK
tPCLKH
tPCLKL
PCLK
polarity = 0
tDV
D[0:7]
Valid
HSYNC
VSYNC
Table 39.
Symbol
13.5
Parallel data interface timings
Description
Conditions
Min.
Typ.
Max.
Unit
26
MHz
fPCLK
PCLK frequency
tPCLKL
PCLK low width
10
ns
tPCLKH
PCLK high width
10
ns
tDV
PCLK to output valid
-5
5
ns
ESD handling characteristics
Table 40.
ESD handling characteristics
Test
Criteria
Unit
ESD Machine Model
150
V
ESD Human body
1.5
kV
63/70
Package outline
VL6524/VS6524
14
Package outline
14.1
SmOP
Figure 36. VS6524Q06J outline drawing
Packing Dimension
.5
0
Optical Lens Specification:
Focusing Range
20 cm to Infinity
Focal Length
2.53mm
F Number
F2.8
Fov(D)
60.8°
TV Distortion
< 1%
8-
R0
TOP VIEW
1.20±0.05
CAVITY NO.
PROTRUDE 0.05max
.00
Ø5 0
.9
Ø5
6.00
0.50±0.05
D
A
2
Pin1 mark
protrude 0.05max
Ϟ
6.00
Pin No.
1
2
3
4
5
6
7
8
9
10
Name
Pin No.
GND
DO2
DO3
HSYNC
VSYNC
DO7
DO6
DO5
DO4
CLK 1
TOOL NO.
PROTRUDE 0.05max
SIDE VIEW
BOTTOM VIEW
4-
3
5.00±0.05
2.60
Ø
0.
60
5.00±0.05
0.50±0.05
1.80±0.05 2
1.05±0.05 2
0.50
1.45±0.05 2
1
2
Pin1 mark
4
Note:# Image direction register use default settings.
Socket:ALPS P/N:SCKA2A0100
Socket Cover:ALPS P/N:JSCKA0002A
64/70
2
20
3.35
1 3.30±0.15
4.35±0.15
Name
GND
FSO 1
CE 1
SCL 1
SDA
AVDD(2.8V)
DO1
DO0
PCLK
VDD(1.8V) 1
11
12
13
14
15
16
17
18
19
20
0.70±0.05
RECESS 0.1max
0.40±0.05 2
0.325±0.05
0.65±0.05
Basic Tolerance ±0.10mm
VL6524/VS6524
Package outline
Figure 37. VS6524Q06J socket assembly outline drawing for information only
TOP VIEW
BOTTOM VIEW
7.40
6.20
A
6.20
7.40
A
D
1.75
A
A-A SECTION
Socket
Socket
Cover
3.85
3.45
Holder
PCB
3
Lens
CMOS
Sensor
Camera
Protection
3.35
4.35±0.15 4
5.20±0.30
IR 4
Note:# Image direction register use default settings.
Socket:ALPS P/N:SCKA2A0100
Socket Cover:ALPS P/N:JSCKA0002A
Basic Tolerance ±0.10mm
65/70
Package outline
14.2
VL6524/VS6524
LGA
In order to meet environmental requirements, ST offers these devices in ECOPACK®
packages. These packages have a Lead-free second level interconnect . The category of
second Level Interconnect is marked on the package and on the inner box label, in
compliance with JEDEC Standard JESD97. The maximum ratings related to soldering
conditions are also marked on the inner box label. ECOPACK is an ST trademark.
ECOPACK specifications are available at: www.st.com.
Table 41.
LGA package mechanical data
Data book (mm)
Symbol
Min.
Typ.
Max.
A
1.80
1.90
2.00
A4
0.35
0.4
0.45
A5
0.7
0.8
0.9
B1
2.0
B2
3.5
B3
0.55
b
0.25
0.30
0.35
D
9.90
10.00
10.10
D1
9.60
9.70
9.80
D2
5
D4
5.4
e
0.8
E
9.90
10.00
10.10
E1
9.60
9.70
9.80
E2
5
E4
4.5
G
1.0
G1
1.2
1
G2
0.3
0.4
0.5
G3
0.8
0.9
1.0
G4
H
0.8
0.8
H1
66/70
1.1
0.9
1.0
0.8
H2
0.3
0.4
0.5
I
3.95
4.05
4.15
J
4.1
K
0.3
VL6524/VS6524
Package outline
Table 41.
LGA package mechanical data (continued)
Data book (mm)
Symbol
PHI
Min.
Typ.
Max.
4°
5°
6°
z
L
1.65
0.7
0.8
bbb
0.01
ccc
0.1
ddd
0.08
eee
0.08
nD
9
nE
9
n
36
0.9
67/70
Package outline
Figure 38. VL6524QOMH outline drawing
68/70
VL6524/VS6524
VL6524/VS6524
Ordering information
Table 42.
15
VL6524 pin assignment
Pin
Signal
Pin
Signal
Pin
Signal
Pin
Signal
1
AVDD
10
GND
19
DIO7
28
GND
2
GND
11
NC
20
DIO6
29
PCLK
3
SDA
12
NC
21
DIO5
30
VDD
4
SCL
13
NC
22
DIO4
31
NC
5
CE
14
NC
23
VDD
32
NC
6
VDD
15
AVDD
24
DIO3
33
NC
7
CLK
16
HSYNC
25
DIO2
34
NC
8
GND
17
VSYNC
26
DIO1
35
NC
9
FSO
18
GND
27
DIO0
36
GND
Ordering information
Table 43.
Order codes
Part number
16
Package
VS6524Q06J
SmOP 6x6x4.35 mm
VL6524QOMH
LGA 10x10x1.90 mm
IMG-524-E01
Baseboard with socket plug-in for X24 camera integration kit
IMG-524-P02
LGA package plug-in for X24 camera integration kit
Revision history
Table 44.
Document revision history
Date
Revision
Changes
21-Mar-2006
1
Initial release.
29-Jun-2006
2
Updates in Table 30: Optical specifications and addition of
Section 12.1: Average sensitivity and Section 12.2: Spectral
response.
Updates in Table 34: DC electrical characteristics
Updates in Table 40: ESD handling characteristics
Updates in Figure 35: Parallel data output video timing
06-Nov-2006
3
Addition of VL6524 reference and package outline drawing.
69/70
VL6524/VS6524
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 AUTHORIZED ST REPRESENTATIVE, ST PRODUCTS ARE NOT
RECOMMENDED, 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. ST PRODUCTS WHICH ARE NOT SPECIFIED AS "AUTOMOTIVE
GRADE" MAY ONLY BE USED IN AUTOMOTIVE APPLICATIONS AT USER’S OWN RISK.
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.
© 2006 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
70/70