Datasheet
Table Of Contents
- 1/3.2-Inch System-On-A-Chip (SOC) CMOS Digital Image Sensor
- Features
- Applications
- Ordering Information
- General Description
- Feature Overview
- Typical Connection
- Ballout and Interface
- Architecture Overview
- Registers and Variables
- Registers
- Registers
- IFP Registers, Page 1
- IFP Registers, Page 2
- JPEG Indirect Registers
- Table 8: JPEG Indirect Registers (See Registers 30 and 31, Page 2)
- Firmware Driver Variables
- Table 9: Drivers IDs
- Table 10: Driver Variables-Monitor Driver (ID = 0)
- Table 11: Driver Variables-Sequencer Driver (ID = 1)
- Table 12: Driver Variables-Auto Exposure Driver (ID = 2)
- Table 13: Driver Variables-Auto White Balance (ID = 3)
- Table 14: Driver Variables-Flicker Detection Driver (ID = 4)
- Table 15: Driver Variables-Auto Focus Driver (ID = 5)
- Table 16: Driver Variables-Auto Focus Mechanics Driver (ID = 6)
- Table 17: Driver Variables-Mode/Context Driver (ID = 7)
- Table 18: Driver Variables-JPEG Driver (ID = 9)
- Table 19: Driver Variables-Histogram Driver (ID = 11)
- MCU Register List and Memory Map
- JPEG Indirect Registers
- Output Format and Timing
- Sensor Core
- Feature Description
- PLL Generated Master Clock
- PLL Setup
- Window Control
- Pixel Border
- Readout Modes
- Figure 20: 6 Pixels in Normal and Column Mirror Readout Modes
- Figure 21: 6 Rows in Normal and Row Mirror Readout Modes
- Table 30: Skip Values
- Figure 22: 8 Pixels in Normal and Column Skip 2x Readout Modes
- Figure 23: 16 Pixels in Normal and Column Skip 4x Readout Modes
- Figure 24: 32 Pixels in Normal and Column Skip 8x Readout Modes
- Figure 25: 64 Pixels in Normal and Column Skip 16x Readout Modes
- Table 31: Row Addressing
- Table 32: Column Addressing
- Frame Rate Control
- Context Switching
- Integration Time
- Flash STROBE
- Global Reset
- Analog Signal Path
- Analog Inputs AIN1-AIN3
- Firmware
- Firmware
- Start-Up and Usage
- General Purpose I/O
- Introduction
- GPIO Output Control Overview
- Waveform Programming
- Notification Signals
- Digital and Analog Inputs
- GPIO Software Drivers
- Auto Focus
- Figure 42: Search for Best Focus
- Figure 43: Scene with Two Potential Focus Targets at Different Distances from Camera
- Figure 44: Dependence of Luminance-Normalized Local Sharpness Scores on Lens Position
- Figure 45: Example of Position Weight Histogram Created by AF Driver
- Figure 46: Auto Focus Windows
- Figure 47: Computation of Sharpness Scores and Luminance Average for an AF Window
- Table 41: Examples of AF Filters that can be Programmed into the MT9D111
- Spectral Characteristics
- Electrical Specifications
- Packaging
- Appendix A: Two-Wire Serial Register Interface
- Protocol
- Sequence
- Bus Idle State
- Start Bit
- Stop Bit
- Slave Address
- Data Bit Transfer
- Acknowledge Bit
- No-Acknowledge Bit
- Page Register
- Sample Write and Read Sequences
- Figure 52: WRITE Timing to R0x09:0-Value 0x0284
- Figure 53: READ Timing from R0x09:0; Returned Value 0x0284
- Figure 54: WRITE Timing to R0x09:0-Value 0x0284
- Figure 55: READ Timing from R0x09:0; Returned Value 0x0284
- Figure 56: Two-Wire Serial Bus Timing Parameters
- Table 46: Two-wire Serial Bus Characteristics
- Revision History
PDF: 09005aef8202ec2e/Source: 09005aef8202ebf7 Micron Technology, Inc., reserves the right to change products or specifications without notice.
MT9D111__7_REV5.fm - Rev. B 2/06 EN
168 ©2004 Micron Technology, Inc. All rights reserved.
MT9D111 - 1/3.2-Inch 2-Megapixel SOC Digital Image Sensor
General Purpose I/O
Micron Confidential and Proprietary
a direct jump from last position tried in a scan to best focus position. Number of steps in
each scan, lens positions stepped through during the first scan, and step size in the sec-
ond scan are all individually programmable.
The first normalized score from each AF window, acquired at the start position, is stored
as both the worst (minimum) and best (maximum) score for that window. These two
extreme scores are then updated as the lens moves to subsequent positions and a new
maximum position is memorized at every update of the maximum score. In effect, the
preselected set of lens positions is scanned for maxima of the normalized sharpness
scores, while at the same time information needed to validate each maximum is being
collected. This information is in the difference between the maximum and the mini-
mum of the same score. A small difference in their values indicates that the score is not
sensitive to the lens position and therefore its observed extrema are likely determined by
random noise. On the other hand, if the score varies a lot with the lens position, its max-
imum is much more likely to be valid, i.e. close to the true sharpness maximum for the
corresponding AF window. Due to these considerations, the AF driver ignores the max-
ima of all sharpness scores whose peak-to-trough variation is below a preset percentage
threshold. The remaining maxima, if any, are sorted by position and used to build a
weight histogram of the scanned positions. The histogram is build by assigning to each
position the sum of weights of all AF windows whose normalized sharpness scores
peaked at that position. The position with the highest weight in the histogram is then
selected as the best lens position.
This method of selecting the best position may be compared to voting. The voting enti-
ties are the AF windows, i.e. different image zones. Depending on the imaged scene, they
may all look sharp at the same lens position or at different ones. If all the zones have
equal weight, the lens position at which a simple majority of them looks sharp is voted
the best. If the weights of the zones are unequal, it means that making some zones look
sharp is more important than maximizing the entire sharp-looking area in the image. If
there are no valid votes, because sharpness scores from all the AF windows vary too little
with the lens position, the AF driver arbitrarily chooses the start position as the best.
Figure 43, Figure 44 and Figure 45 illustrate selection of best lens position when there are
several objects in imaged scene to focus on, each at a different distance from the lens.
Each lens position bringing one or more of these objects into sharp focus within the AF
window grid can be potentially voted the best. The actual result of the vote is determined
by the extent and texture of each object and the weights of the overlying AF windows.
What happens after the first scan and ensuing selection of best position is user-pro-
grammable—the AF algorithm gives the user a number of ways to proceed with final
lens positioning. The user should select a way that best fits the magnitude of lens actua-
tor hysteresis and desired lens proximity to the truly optimal position. Actuators with
large, unknown or variable hysteresis should do a second flyback, i.e. jump back to the
start position of the first scan, and then either retrace the steps made during the scan or
directly jump to the best of the scanned positions. Actuators with constant hysteresis
(like gear backlash) can be moved to that position directly from the end position of the
scan—the AF algorithm offers an option to automatically increase the length of this
move by a pre-programmed backlash-compensating step. Finally, if the first scan is
coarse relative to the positioning precision of the lens actuator and depth of field of the
lens, an optional second fine scan can be performed around the lens position selected as
best after the first scan.
The second scan is done in the same way as the first, except that the positions it covers
are not preset. Instead, the AF algorithm user must preset step size and number of steps
for the second scan and enable its execution by setting the appropriate control bit in one
of AF driver variables. Finding this bit equal to 1 at the end of the first scan, the AF driver










