US20130222027A1 - Integrated circuit, micro-controller unit, and method including a synchronous sampling controller - Google Patents
Integrated circuit, micro-controller unit, and method including a synchronous sampling controller Download PDFInfo
- Publication number
- US20130222027A1 US20130222027A1 US13/407,708 US201213407708A US2013222027A1 US 20130222027 A1 US20130222027 A1 US 20130222027A1 US 201213407708 A US201213407708 A US 201213407708A US 2013222027 A1 US2013222027 A1 US 2013222027A1
- Authority
- US
- United States
- Prior art keywords
- adc
- signal
- timing
- input
- clock
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000005070 sampling Methods 0.000 title claims abstract description 52
- 230000001360 synchronised effect Effects 0.000 title claims abstract description 41
- 238000000034 method Methods 0.000 title claims description 9
- 230000002093 peripheral effect Effects 0.000 claims abstract description 31
- 238000006243 chemical reaction Methods 0.000 claims description 28
- 230000000977 initiatory effect Effects 0.000 claims 2
- 239000000523 sample Substances 0.000 claims 2
- 239000013068 control sample Substances 0.000 claims 1
- 230000007704 transition Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 4
- 238000000819 phase cycle Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000004611 spectroscopical analysis Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03L—AUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
- H03L7/00—Automatic control of frequency or phase; Synchronisation
Definitions
- This disclosure relates generally to integrated circuits that are configured to connect to one or more peripheral circuits, and more particularly to integrated circuits that control synchronous operation of one or more peripheral circuits.
- An integrated circuit including a micro-controller unit can be configured to couple to multiple external signal sources, such as scanners, video cameras, audio input devices, sensors, and other data sources.
- Control of clocked external signal sources that provide input to an analog-to-digital converter (ADC) often includes logic circuitry, typically external to the MCU, along with internal timers and counters. Configuration of such logic circuitry uses additional input/output (I/O) and control functions in the MCU, including interrupts, clocking, and the like.
- I/O input/output
- a micro-controller unit includes an analog-to-digital converter (ADC) including an input, a timing input, and an output.
- ADC analog-to-digital converter
- the input of the ADC is configurable to couple to an output of a peripheral module.
- the MCU further includes a synchronous sampling controller configured to provide a clock signal to a clock output terminal configurable to couple to a clock input of the peripheral module.
- the synchronous sampling controller is further configured to provide a timing signal to the timing input of the ADC to synchronize sampling of a signal at the input of the ADC to timing of the peripheral module.
- an integrated circuit in another embodiment, includes a first analog-to-digital converter (ADC) configured to receive a first signal from a first source and a second ADC configured to receive a second signal from a second source.
- the integrated circuit further includes a synchronous sampling generator configured to provide a timing signal to synchronize the first and second ADCs to perform synchronized sampling of the first and second signals.
- a method in still another embodiment, includes receiving a first data signal at a first input terminal of a circuit, receiving a second data signal at a second input terminal of the circuit, and providing a first pixel clock signal to a timing input of a first analog-to-digital converter (ADC) using a synchronous sampling controller.
- the method further includes providing a second pixel clock signal to a timing input of a second ADC using the synchronous sampling controller.
- the first and second pixel clock signals synchronize sample timing of the first and second ADCs.
- FIG. 1 is block diagram of a system having a control circuit including a synchronous sampling generator and coupled to multiple peripheral circuits.
- FIG. 2 is a block diagram of a portion of the integrated circuit of FIG. 1 illustrating functional blocks of the synchronous sampling generator.
- FIG. 3 is a logic diagram of an exemplary embodiment of a synchronous sampling generator.
- FIG. 4 is a timing diagram of a signal received by the integrated circuit of FIG. 1 .
- Embodiments of a circuit include an MCU and that utilizes a synchronous sampling generator (SSG or synchronous sampling controller) to synchronize an ADC to timing of peripheral devices coupled to the circuit.
- SSG synchronous sampling generator
- the SSG is tightly coupled with the ADC's state logic, resulting in improved performance in terms of the effective speed, reduced latency, and ease of use.
- the SSG can synchronize the integrated circuit and external peripherals without external logic circuitry. Further, the SSG also makes it possible to synchronize the integrated circuit to timing of external peripherals without extra input/output (I/O) pins, interrupt mechanisms, and/or clock sources, which might otherwise be used to provide such functionality.
- I/O input/output
- the SSG eliminates external logic circuitry for synchronizing sampling operations among multiple converters by using a multi-phase clock, performing a pre-determined number of sample generations and conversions, mixing automated sampling operations with MCU-control operations, and synchronizing multiple types of signal converters and generators.
- An example of a system including an integrated circuit having an SSG is described below with respect to FIG. 1 .
- FIG. 1 is block diagram of a system 100 that has a control circuit 102 including a synchronous sampling generator 122 where control circuit 102 is coupled to multiple peripheral circuits, such as line scan camera modules 106 and 108 .
- Line scan camera modules 106 and 108 are illustrative examples of peripheral devices that can be used in conjunction with circuit 102 .
- one or more of the camera modules 106 and 108 can be omitted and/or replaced with other devices or circuits.
- Control circuit 102 includes multiple terminals or pads 123 , 125 , 127 , 129 , and 131 for coupling the integrated circuit 102 to a universal serial bus (USB) interface 104 , which may be coupled to a peripheral device or to a host system.
- Pad 131 is coupled to ground, and pads 123 and 125 are coupled to a voltage bus.
- Pads 127 and 129 are coupled to physical transport lines of USB interface 104 .
- Control circuit 102 further includes pads 101 , 103 , 105 , 107 , 109 , 111 , 113 , 115 , 117 , 119 , and 121 .
- System 100 further includes a resistor 110 including a first terminal coupled to pad 101 , and a second terminal coupled to pad 103 .
- System 100 further includes a transistor 112 including a first electrode coupled to pad 103 , a control terminal coupled to pad 105 , and a second electrode coupled to pad 107 .
- Line scan camera module 106 includes a supply input coupled to pad 109 and 107 , an LED control input coupled to pad 111 , and a clock input coupled to pad 115 .
- Line scan camera module 106 further includes a video output coupled to pad 119 .
- Line scan camera module 108 includes a supply input coupled to pad 109 and 107 , an LED control input coupled to pad 113 , and a clock input coupled to pad 117 .
- Line scan camera module 108 further includes a video output coupled to pad 121 .
- Control circuit 102 includes a voltage regulator 112 coupled to pad 123 and is configured to provide a regulated voltage to on-chip circuitry. Control circuit 102 further includes a USB physical layer circuit 114 coupled to pads 127 and 129 . USB physical layer circuit 114 communicates data to and from control circuit 102 to USB interface 104 . Control circuit 102 also includes an external regulator control 116 having an input coupled to an output of a differential amplifier 118 , which has a first input coupled to pad 101 and a second input coupled to pad 103 . External regulator control 116 further includes an output coupled to an input of a differential amplifier 120 , which has a second input coupled to pad 107 and an output coupled to pad 105 .
- Control circuit 102 further includes a synchronous sampling generator (SSG) 122 including outputs coupled to pads 115 and 117 and to ADCs 132 and 134 .
- SSG 122 further includes an input/output coupled to a high current driver 124 .
- High current driver 124 including a first output coupled to driver 126 , which has a power input coupled to pad 109 and an output coupled to pad 111 .
- High current driver 124 includes a second output coupled to driver 128 , which has a power input coupled to pad 109 and an output coupled to pad 113 .
- Control circuit 102 also includes a current-to-voltage (I-to-V) converter stages circuit 130 having inputs coupled to pads 119 and 121 and outputs coupled to ADC circuits 132 and 134 .
- I-to-V current-to-voltage
- ADC 132 includes a timing control input coupled to an output of SSG 122 for receiving a phase-delayed timing signal.
- ADC 134 also includes a timing control input coupled to an output of SSG 122 for receiving a phase-delayed timings signal.
- Each of ADCs 132 and 134 includes an output coupled to an advanced peripheral bus (APB) 136 , which is coupled to SSG 122 .
- APB 136 is also coupled to a direct memory access (DMA) controller 138 and to a static random access memory (SRAM) 140 .
- DMA direct memory access
- SRAM static random access memory
- high current drivers 124 provide current to drivers 126 and 128 , which drive signals onto pads 111 and 113 , respectively.
- Driver 126 drives a light emitting diode (LED) driver signal to pad 111 and to line scan camera module 106 .
- Driver 128 drives an LED driver signal to pad 113 and to line scan camera module 108 .
- SSG 122 controls sample timing of ADCs 132 and 134 to perform synchronized interleaved sampling.
- SSG 122 further includes logic for generating a clock signal for external devices or peripheral modules, such as line scan camera modules 106 and 108 , which clock signal is provide to pads 115 and 117 and which is synchronized to the internal sampling clock used by one or both ADCs 132 and 134 .
- SSG 122 controls ADCs 132 and 134 to perform interleaved sampling of the same input, which can provide a sample rate of twice that of each individual ADC 132 or 134 .
- ADCs 132 and 134 are capable of one mega-sample per second (MSPS) rates
- SSG 122 can control ADCs 132 and 134 to perform interleaved, 2 MSPS sampling of the same input.
- MSPS mega-sample per second
- FIG. 2 is a block diagram of a portion 200 of the control circuit 102 of FIG. 1 illustrating functional blocks of SSG 122 .
- Portion 200 includes APB 136 coupled to ADCs 132 and 134 and to SSG 122 .
- portion 200 includes an analog input multiplexer bus 202 , which is coupled to inputs of ADCs 132 and 134 .
- current-to-voltage converter 130 provided the input to ADCs 132 and 134 ; however, in this example, the input voltages may be multiplexed and provided to the inputs of ADCs 132 and 134 .
- ADC 132 includes a successive approximation register (SAR) 212 , a controller 214 , a direct memory access (DMA) controller 216 , and a first-input-first-output (FIFO) register 218 .
- ADC 134 includes a SAR 222 , a controller 224 , a DMA controller 226 , and a FIFO register 228 .
- SARs 212 and 222 operate under the control of controllers 214 and 224 , respectively, and convert continuous analog waveforms into discrete digital representations.
- the digital representations can be stored in FIFO registers 218 and 228 and written directly to a memory location in SRAM 140 or another memory via APB 136 .
- SSG 122 includes a pulse generator 208 for providing a pixel clock signal synchronized using an ADC synchronization controller 204 to synchronize the ADC capture/convert operations. While FIG. 1 depicts line scan camera modules 106 and 108 , the term “pixel clock signal” is not restricted to camera applications. Instead, the term “pixel clock signal” refers to a clock signal that may be different from the clock pulses provided to the peripheral devices and can be used with any system that generates a sequence of voltage or current values in response to the clock signal. SSG 122 further includes a phase delay generator 206 and a pixel counter 210 . SSG 122 generates a clock signal that can be provided to an external device, such as a camera via pad 115 (for example).
- SSG 122 can also generate a pixel “clock” signal that is provided to ADC 132 and/or ADC 134 that is optionally phase delayed based on signals from phase delay generator 206 .
- the pixel clock signal controls sample timing of ADCs 132 and 134 to sample pixel values from line scan camera modules 106 and 108 .
- phase delay generator 206 is configurable to divide the clock phase of signals produced by pulse generator into 16 discrete phases, which can be configured to delay the clock signal.
- the peripheral device has a canonical number of bits, and pixel counter 210 is used to count the pulses such that SSG 122 knows when ADCs 132 and 134 have sampled the number of pixels scanned by line scan camera modules 106 and 108 .
- the clock signal provided by SSG 122 to ADCs 132 and 134 is a pixel clock signal synchronized to the ADC capture/convert cycle.
- Phase delay generator 208 provides a programmable delay time between the pixel clock edge (as generated by pulse generator 208 ) and the ADC conversion-start event.
- SAR synchronization control 204 uses phase delay generator 206 to provide different data transfer timing for each of ADCs 132 and 134 , which data transfer timing can correspond to the transfer timing of the corresponding peripheral device.
- pulse generator 208 and clock control lines coupling SSG 122 to ADCs 132 and 134 can be controlled by instructions executed by an MCU, so that control signaling can be performed during times when data is not being sampled.
- DMA controllers 216 and 226 ADCs 132 and 134 can provide efficient, low-overhead data transfer from ADCs 132 and 134 to memory.
- SSG 122 has a programmable threshold for determining the number of sample clocks per frame of data transferred by the peripheral device.
- SSG 122 can compare the count of pixel counter 210 to the programmable threshold (frame threshold) to determine when the data transfer is complete (i.e., when the end of a frame is reached).
- the number of sample clocks per frame is variable over a wide range of frame sizes, up to, for example, 4096 pixels, allowing SSG 122 to operate with a wide array of sensors.
- Pulse generator 208 is not frequency-critical. In one instance, pulse generator 208 operates at a high enough frequency to operate ADCs 132 and 134 at their maximum sampling rates, such as one pixel clock cycle/conversion per pixel. The clock rate for control operations may also be frequency-independent. In some systems, the amount of non-pixel-clock signaling per frame between SSG 122 and ADCs 132 and 134 (after initial setup) can be very low, such as a few bits sent before and after a complete frame transfer. Further, SSG 122 can reduce power to pulse generator 206 so that the pixel clock can be quiescent when the peripheral device is not in use.
- stream-processing of pixel data by ADCs 132 and 134 is preceded by a series of operations, including a sensor reset operation, dark-level sensing, active adjustment, illumination control, and other operations that can vary with each particular peripheral device.
- FIG. 3 is a partial block diagram and partial logic diagram of an exemplary embodiment of SSG 122 , which is implemented as a state machine.
- SSG 122 includes a synchronization register 302 including an input for receiving a mode control signal, which specifies whether SSG 122 operates in a free run mode, a 1 ⁇ mode or a 2 ⁇ mode.
- SSG 122 further includes a phase counter 304 , a conversion counter 306 , a pulse generator 308 , and a clock/control signal controller 309 .
- Synchronization register 302 includes an output coupled to an input of phase counter 304 , which is a 4-bit free running phase counter, clocked at the nominal clock speed by a clock signal (CLKm_DIV) supplied by the SSG 122 .
- CLKm_DIV clock signal
- Phase counter 304 may be free-running or it may be programmed to generate a defined number of phase cycles. Because each phase cycle is typically used to start a conversion, the number of phase cycles is equal to the number of conversions that are performed by an ADC, such as ADC 132 or 134 , under the control of SSG 122 in a defined set of cycles. In one example, phase counter 304 is clocked at approximately 16 MHz. Counting-up from zero, phase counter 304 marks sixteen equally-spaced-in-time events each microsecond for one or two ADCs 132 and 134 , and provides the equally-spaced-in-time events via a four-bit phase signal (SSG_ph[3:0]).
- SSG 122 further includes a conversion counter 306 , which operates as a 12-bit, programmable up-counter. Loaded at the start of a series of conversions, conversion counter 306 increments once each time the phase counter 304 overflows. At each count (and once at zero), a sample cycle start can be generated by the SSG 122 and sent to the ADCs 132 and 134 .
- Conversion counter 306 provides an output to pulse generator 308 .
- Pulse generator 308 includes an input coupled to synchronization register 302 and an input coupled to clock/control signal controller 309 . Pulse generator 308 includes an output coupled to a node 311 .
- SSG 122 further includes clock/control signal controller 309 including AND gates 320 , 322 , 324 , and 326 and exclusive-OR gates 330 , 332 , 334 , and 336 .
- Each AND gate 320 , 322 , 324 , and 326 includes a first input coupled to node 311 , a second input coupled to node 313 , and an output.
- Each exclusive-OR gate 330 , 332 , 334 , and 336 includes a first input coupled to the output of one of AND gates 320 , 322 , 324 , and 326 and a second input coupled to a node 315 .
- the output of AND gate 320 is coupled to the first input of exclusive-OR gate 330 .
- the output of AND gate 322 is coupled to the first input of exclusive-OR gate 332 .
- the output of AND gate 324 is coupled to the first input of exclusive-OR gate 334 .
- the output of AND gate 326 is coupled to the first input of exclusive-OR gate 336 .
- Clock/control signal controller 309 further includes an OR gate 328 including multiple inputs coupled to node 313 and an output coupled to an input of synchronization circuit 314 and to a control input of a “pixel count” register 316 .
- Synchronization circuit 314 and “pixel count” register 316 include an input coupled to an APB interface.
- Synchronization circuit 314 includes an output coupled to pulse start control circuit 312 , which has an output coupled to a control input of a decrementer circuit 310 .
- Decrementer 310 includes a clock input for receiving a pixel clock signal (CLKm_div), an input coupled to the output of “pixel count” register 316 , and an output coupled to pulse generator 308 .
- CLKm_div pixel clock signal
- decrementer 310 decrements a count with each pixel clock pulse. In a “2 ⁇ ” mode, decrementer 310 decrements the count with every second pixel clock pulse (i.e., pixel clock pulses occur at two times the decrement rate).
- programmable pulse generator 308 creates a 50% duty cycle pulse once at each count (and once at zero) after the conversion counter 306 is triggered.
- Clock/control signal generator 309 provides register-driven logic allowing software to control the operation of four outputs (SSG_Out[0], SSG_Out[1], SSG_Out[2], and SSG_Out[3]) from the SSG 122 to external devices.
- Clock/control signal generator 309 allows the register settings to define whether (or not) the output is driven by the pulse generator 308 , to set the polarity of the pulses (via exclusive-OR gates 330 , 332 , 334 , and 336 ), and to set the output level of the four outputs when the pulse generator 308 is not running so that the outputs are not floating.
- SSG 112 is coupled to a non-contact location sensing system or non-contact sensor.
- a non-contact location sensing system or non-contact sensor can utilize linear image sensors to detect the location of an object.
- the linear image sensor is a linear array of photocells (1 ⁇ 256, 1 ⁇ 512, . . . , 1 ⁇ 4096). Each photocell generates a voltage or current proportional to the incident light received during a period of light integration (shutter open). The collected voltages or currents are then serially transmitted to an ADC, such as ADC 132 or 134 for conversion to digital form.
- Linear image sensors are used in applications such as page scanning, facsimile, optical carriage recognition (OCR), bar-code reading, position detection and decoding, spectroscopy and contact imaging, and other high-rate sampled-data systems.
- OCR optical carriage recognition
- bar-code reading e.g., bar-code reading
- position detection and decoding e.g., position detection and decoding
- spectroscopy and contact imaging e.g., contact imaging
- other high-rate sampled-data systems e.g., image sensors that uses direct control of linear image sensors to linear images.
- direct control of linear image sensors varies with each sensor.
- firmware By utilizing firmware to perform much of the detailed sensor configuration, the circuit is flexible with respect to options for connecting a wide range of synchronously sampled sensors to ADCs 132 and 134 .
- SSG 122 makes it possible to connect multiple ADCs (such as ADCs 132 and 134 ) together to perform synchronized interleaved sampling. Further, SSG 122 can output a clock signal to pins for use by external devices (such as pads 115 and 117 in FIG. 1 ), where the clock signal is synchronized to the internal sampling clock (pixel clock) used by any number of ADCs 132 and 134 .
- ADCs 132 and 134 can output a clock signal to pins for use by external devices (such as pads 115 and 117 in FIG. 1 ), where the clock signal is synchronized to the internal sampling clock (pixel clock) used by any number of ADCs 132 and 134 .
- SSG 122 In operation, SSG 122 generates a time-base for synchronizing an external sample source with one or more ADCs 132 and 134 .
- the time-base rate is programmable, and its maximum cycle time is equal to the highest sample rate of ADC 132 or 134 .
- Each cycle time is broken into sixteen time slots using phase counter 304 . The start of each cycle is marked for external reference by a pulse, available at the device pins.
- SSG 122 provides each ADC 132 and 134 with clock phase timing signals (CLKm_div). Each ADC 132 and 134 may be programmed to trigger its conversion operation based on any of the sixteen possible phases.
- the external reference pulse is used by an external data source to clock-out analog samples for input to ADCs 132 and 134 .
- the external source's dwell time (the delay between the start of the pulse and the accurate settling of the analog sample it supplies to the ADC 132 or 134 ) determines which phase number is programmed into a ADC 132 or 134 for its conversion start time.
- Pulse generator 308 creates a square wave pulse (optional polarity) that is available at the device pins or pads 115 and 117 .
- pulse generator 308 operates on a timing signal supplied by ADC 132 . If the timing signal is not running, the clocking function of SSG 122 will not operate, but the peripheral bus registers and the output data control functions (ssg_dat) on node 315 can still be used. In an example, enabling the ADC 132 also turns on the timing signal to the SSG 122 . Typically, if there are no SAR data conversions taking place, the generator performs no clocking functions.
- ADCs 132 and 134 can be configured so that their start-of-conversion times are controlled by a phase in the sequence of SSG-generated phases from phase generator 304 .
- Multiple ADCs, such as ADCs 132 and 134 can be synchronized in this manner, either to begin conversion at the same moment or at times offset from each other (if each ADC is programmed to start its conversion on a different phase).
- SSG 122 generates an external sample data (pixel) clock that is synchronous to conversion operations of ADCs 132 and 134 .
- SSG 122 includes a simple state machine for controlling up to four sensor channels, providing control of four linear image sensors, or two image sensors each having odd and even pixel data channels.
- ADCs 132 and 134 convert pixels at a rate of approximately 2M pixels per second (total).
- DMAs 216 and 226 can be used to transfer these samples from the ADCs 132 and 134 to memory during the frame acquisition period.
- Pulse generator 308 produces a square-wave pulse train (or clock) that can be used as the pixel clock. Pulse generator 308 derives the pulses from the 16 MHz (nominal) SAR clock (clkm_div). Software executed by the MCU controls timing of the pulse generation and controls the delivery of the clock pulses to selected pins or pads. Pulse generator 308 provides the pixel clock signal at one of two frequencies: standard (1 ⁇ ) and fast (2 ⁇ ) (i.e., CLKm_div/16 or CLKm_dev/8). At the standard (1 ⁇ ) pixel clock rate, ADCs 132 or 134 converts one pixel voltage at a time (1 MSPS).
- two ADCs 132 and 134 can operate in parallel and can be connected to two sensors, and ADCs 132 and 134 convert two pixel voltages at a time (2 MSPS).
- both ADCs 132 and 134 are configured to operate in interleaved mode to convert pixel voltages from a single sensor, at a rate of 2 MSPS.
- a register bit (ssg — 2 ⁇ ) enables the 2 ⁇ pixel clock rate.
- the “pixel count” register (ssg_cnt) 316 is used, its value equals one-half of the number of clock pulses generated.
- each time pixel generator 308 generates a pulse
- SSG 122 generates a cycle start signal to one or both ADCs 132 and/or 134 (depending on the mode).
- the timing of the ADC conversion start command is controlled internal to each ADC 132 and 134 by sampling time select bits, allowing the start of conversion to be delayed by a variable amount of time after the assertion of the pixel clock pulse, which allows ADC tracking to be optimally matched to the clocked external sensor.
- the value in register bits ssg_ph[3:0] (cleared at reset and ADC disabled) indicates the current state of the phase counter 304 sent to the ADCs 132 and 134 (as number of counts of the ADC timing clock, clkm_div).
- the pixel clock generator creates four outputs, ssg_out[3:0]. These lines are distributed through a crossbar. The pixel clock is not driven onto the ssg_out[3:0] lines unless a register bit (ssg_ckc[3:0]) is set. Setting any of the ssg_ckc register bits at node 315 causes pulse generator 308 to begin a frame sequence of pulses. Setting any of the ssg_ckc bits while a frame sequence is already in progress has no effect on the operation of the pulse generator 308 .
- the pulse generator 308 is not operating, or the clock is not enabled to drive the outputs, the clock signal to those outputs is low if the ssg_dat[3:0] bits are at logic low levels for that particular output. Otherwise, if the ssg_dat[3:0] bits are at a logic high level for the particular output, the quiescent level of the clock output is also high.
- Software can control the state of ssg_out[3:0] lines via control bits (ssg_dat[3:0]), which bits invert the state of the lines.
- ssg_out lines are quiescent, (pulse generator 308 is disabled), setting ssg_dat causes ssg_out to be driven high (clearing ssg_dat in this case causes ssg_out to then return to a low state). Leaving ssg_dat high while the pixel clock is enabled causes pulse generator 308 to be inverted, which allows for direct clocking of sensors requiring a negative-phase sampling clock.
- pulse generator 308 When pulse generator 308 is enabled, it creates a programmed number of sequential conversion pulses, which can be referred to as a conversion “frame”.
- a linear image sensor with 512 elements might be expected to require 512 pixel clock pulses per frame since a pulse is used to shift out a voltage sample for each element in the detector, but the number of required pulses may be larger or smaller depending on the number of white/dark/blocking/reference cells that may be clocked out for sampling.
- a 12-bit “pixel count” register (ssg_cnt[11:0]) 316 programs the number of pulses to be sent per frame, which can be set to the number of conversion minus one. For a single pulse, pixel count register 316 is set to zero, and for 4096 pulses, pixel count register 316 is set to FFF).
- the phase counter 304 divides the clock into 16 different phases for sampling, which makes it possible to select a sampling time that corresponds to a suitable point in the signal. For example, if the analog signal has a slope that resembles a signal having a resistive/capacitive time constant, it may be desirable to sample the analog signal closer to its peak value or its lowest value.
- An example of a timing diagram that depicts an analog waveform is described below with respect to FIG. 4 .
- FIG. 4 is a timing diagram 400 of a signal received by the control circuit 102 of FIG. 1 .
- Diagram 400 illustrates an ideal, square wave signal 402 that has an amplitude corresponding to a color value between black and white for each pixel of an array of pixels.
- Diagram 400 further illustrates an analog signal 404 that increases and decreases from pixel to pixel that has a slope resembling a resistive-capacitive time constant.
- Phase counter 304 makes it possible to divide the sample time for each frame so that the sample is taken at a point in time (such as generally indicated at 408 ), where the amplitude of the analog signal 404 is approximately at a local peak or local low level.
- some peripheral devices can have two shutter periods, one for ambient light and one for LED-illuminated conditions.
- the sensor can subtract the data from the two conditions internally, outputting the difference, or it can output both readings.
- control circuit 102 controls the sensor shutters coupled to control circuit 102 to turn on at the same time for the ambient sensing, and then controls the sensors' shutters to turn on sequentially for the illuminated reading. This sequential illumination uses a relatively long delay between the two shutter periods for all but the first sensor.
- control circuit 102 can utilize instructions executed by an MCU to control the shutter periods and sequential timing.
- SSG 122 produces clock pulses at a frequency of approximately 1 MHz. In one example, about 550 pulses are used to sample the sensor data. For sensors with two shutter times, about 1100 pulses are used to sample the sensor data if the customer wants both ambient and illuminated data output from the sensor.
- a system in conjunction with the circuits and methods described above with respect to FIGS. 1-4 , includes one or more sensors coupled to a control circuit.
- the control circuit includes an SSG coupled to one or more pads for providing a clock signal and coupled to one or more ADCs to provide a pixel clock signal.
- the SSG provides a clock signal for clocking data from the sensors to input pins. Further, the SSG synchronizes the ADCs to the clock signal and sensor delays using pixel clock signal to control sampling of the sensor data.
Landscapes
- Transforming Light Signals Into Electric Signals (AREA)
Abstract
Description
- This disclosure relates generally to integrated circuits that are configured to connect to one or more peripheral circuits, and more particularly to integrated circuits that control synchronous operation of one or more peripheral circuits.
- An integrated circuit including a micro-controller unit (MCU) can be configured to couple to multiple external signal sources, such as scanners, video cameras, audio input devices, sensors, and other data sources. Control of clocked external signal sources that provide input to an analog-to-digital converter (ADC) often includes logic circuitry, typically external to the MCU, along with internal timers and counters. Configuration of such logic circuitry uses additional input/output (I/O) and control functions in the MCU, including interrupts, clocking, and the like.
- In an embodiment, a micro-controller unit (MCU) includes an analog-to-digital converter (ADC) including an input, a timing input, and an output. The input of the ADC is configurable to couple to an output of a peripheral module. The MCU further includes a synchronous sampling controller configured to provide a clock signal to a clock output terminal configurable to couple to a clock input of the peripheral module. The synchronous sampling controller is further configured to provide a timing signal to the timing input of the ADC to synchronize sampling of a signal at the input of the ADC to timing of the peripheral module.
- In another embodiment, an integrated circuit includes a first analog-to-digital converter (ADC) configured to receive a first signal from a first source and a second ADC configured to receive a second signal from a second source. The integrated circuit further includes a synchronous sampling generator configured to provide a timing signal to synchronize the first and second ADCs to perform synchronized sampling of the first and second signals.
- In still another embodiment, a method includes receiving a first data signal at a first input terminal of a circuit, receiving a second data signal at a second input terminal of the circuit, and providing a first pixel clock signal to a timing input of a first analog-to-digital converter (ADC) using a synchronous sampling controller. The method further includes providing a second pixel clock signal to a timing input of a second ADC using the synchronous sampling controller. The first and second pixel clock signals synchronize sample timing of the first and second ADCs.
-
FIG. 1 is block diagram of a system having a control circuit including a synchronous sampling generator and coupled to multiple peripheral circuits. -
FIG. 2 is a block diagram of a portion of the integrated circuit ofFIG. 1 illustrating functional blocks of the synchronous sampling generator. -
FIG. 3 is a logic diagram of an exemplary embodiment of a synchronous sampling generator. -
FIG. 4 is a timing diagram of a signal received by the integrated circuit ofFIG. 1 . - In the following description, the use of the same reference numerals in different drawings indicates similar or identical items.
- Embodiments of a circuit are disclosed that includes an MCU and that utilizes a synchronous sampling generator (SSG or synchronous sampling controller) to synchronize an ADC to timing of peripheral devices coupled to the circuit. The SSG is tightly coupled with the ADC's state logic, resulting in improved performance in terms of the effective speed, reduced latency, and ease of use. In many applications, the SSG can synchronize the integrated circuit and external peripherals without external logic circuitry. Further, the SSG also makes it possible to synchronize the integrated circuit to timing of external peripherals without extra input/output (I/O) pins, interrupt mechanisms, and/or clock sources, which might otherwise be used to provide such functionality. Further, the SSG eliminates external logic circuitry for synchronizing sampling operations among multiple converters by using a multi-phase clock, performing a pre-determined number of sample generations and conversions, mixing automated sampling operations with MCU-control operations, and synchronizing multiple types of signal converters and generators. An example of a system including an integrated circuit having an SSG is described below with respect to
FIG. 1 . -
FIG. 1 is block diagram of asystem 100 that has acontrol circuit 102 including asynchronous sampling generator 122 wherecontrol circuit 102 is coupled to multiple peripheral circuits, such as linescan camera modules scan camera modules circuit 102. In other embodiments, one or more of thecamera modules -
Control circuit 102 includes multiple terminals orpads integrated circuit 102 to a universal serial bus (USB)interface 104, which may be coupled to a peripheral device or to a host system.Pad 131 is coupled to ground, andpads Pads USB interface 104.Control circuit 102 further includespads System 100 further includes aresistor 110 including a first terminal coupled topad 101, and a second terminal coupled topad 103.System 100 further includes atransistor 112 including a first electrode coupled topad 103, a control terminal coupled topad 105, and a second electrode coupled topad 107. - Line
scan camera module 106 includes a supply input coupled topad pad 111, and a clock input coupled topad 115. Linescan camera module 106 further includes a video output coupled topad 119. Linescan camera module 108 includes a supply input coupled topad pad 113, and a clock input coupled topad 117. Linescan camera module 108 further includes a video output coupled topad 121. -
Control circuit 102 includes avoltage regulator 112 coupled topad 123 and is configured to provide a regulated voltage to on-chip circuitry.Control circuit 102 further includes a USBphysical layer circuit 114 coupled topads physical layer circuit 114 communicates data to and fromcontrol circuit 102 toUSB interface 104.Control circuit 102 also includes anexternal regulator control 116 having an input coupled to an output of a differential amplifier 118, which has a first input coupled topad 101 and a second input coupled topad 103.External regulator control 116 further includes an output coupled to an input of adifferential amplifier 120, which has a second input coupled topad 107 and an output coupled topad 105. -
Control circuit 102 further includes a synchronous sampling generator (SSG) 122 including outputs coupled topads ADCs current driver 124. Highcurrent driver 124 including a first output coupled todriver 126, which has a power input coupled topad 109 and an output coupled topad 111. Highcurrent driver 124 includes a second output coupled todriver 128, which has a power input coupled topad 109 and an output coupled topad 113.Control circuit 102 also includes a current-to-voltage (I-to-V)converter stages circuit 130 having inputs coupled topads ADC circuits SSG 122 for receiving a phase-delayed timing signal. ADC 134 also includes a timing control input coupled to an output ofSSG 122 for receiving a phase-delayed timings signal. Each ofADCs SSG 122.APB 136 is also coupled to a direct memory access (DMA)controller 138 and to a static random access memory (SRAM) 140. - In an example, high
current drivers 124 provide current todrivers pads Driver 126 drives a light emitting diode (LED) driver signal topad 111 and to linescan camera module 106.Driver 128 drives an LED driver signal to pad 113 and to linescan camera module 108. SSG 122 controls sample timing ofADCs scan camera modules ADCs ADCs individual ADC ADCs ADCs FIG. 2 . -
FIG. 2 is a block diagram of aportion 200 of thecontrol circuit 102 ofFIG. 1 illustrating functional blocks ofSSG 122.Portion 200 includesAPB 136 coupled toADCs SSG 122. Further,portion 200 includes an analoginput multiplexer bus 202, which is coupled to inputs ofADCs FIG. 1 , current-to-voltage converter 130 provided the input toADCs ADCs ADC 132 includes a successive approximation register (SAR) 212, acontroller 214, a direct memory access (DMA)controller 216, and a first-input-first-output (FIFO)register 218.ADC 134 includes aSAR 222, acontroller 224, aDMA controller 226, and aFIFO register 228.SARs controllers SRAM 140 or another memory viaAPB 136. -
SSG 122 includes apulse generator 208 for providing a pixel clock signal synchronized using anADC synchronization controller 204 to synchronize the ADC capture/convert operations. WhileFIG. 1 depicts linescan camera modules SSG 122 further includes aphase delay generator 206 and apixel counter 210.SSG 122 generates a clock signal that can be provided to an external device, such as a camera via pad 115 (for example).SSG 122 can also generate a pixel “clock” signal that is provided toADC 132 and/orADC 134 that is optionally phase delayed based on signals fromphase delay generator 206. The pixel clock signal controls sample timing ofADCs scan camera modules phase delay generator 206 is configurable to divide the clock phase of signals produced by pulse generator into 16 discrete phases, which can be configured to delay the clock signal. In an example, the peripheral device has a canonical number of bits, andpixel counter 210 is used to count the pulses such thatSSG 122 knows whenADCs scan camera modules - In this example, the clock signal provided by
SSG 122 toADCs Phase delay generator 208 provides a programmable delay time between the pixel clock edge (as generated by pulse generator 208) and the ADC conversion-start event.SAR synchronization control 204 usesphase delay generator 206 to provide different data transfer timing for each ofADCs pulse generator 208 and clock controllines coupling SSG 122 toADCs DMA controllers ADCs ADCs - In an embodiment,
SSG 122 has a programmable threshold for determining the number of sample clocks per frame of data transferred by the peripheral device.SSG 122 can compare the count ofpixel counter 210 to the programmable threshold (frame threshold) to determine when the data transfer is complete (i.e., when the end of a frame is reached). In one instance, the number of sample clocks per frame is variable over a wide range of frame sizes, up to, for example, 4096 pixels, allowingSSG 122 to operate with a wide array of sensors. -
Pulse generator 208 is not frequency-critical. In one instance,pulse generator 208 operates at a high enough frequency to operateADCs SSG 122 andADCs 132 and 134 (after initial setup) can be very low, such as a few bits sent before and after a complete frame transfer. Further,SSG 122 can reduce power topulse generator 206 so that the pixel clock can be quiescent when the peripheral device is not in use. - In an example, stream-processing of pixel data by
ADCs -
FIG. 3 is a partial block diagram and partial logic diagram of an exemplary embodiment ofSSG 122, which is implemented as a state machine.SSG 122 includes asynchronization register 302 including an input for receiving a mode control signal, which specifies whetherSSG 122 operates in a free run mode, a 1× mode or a 2× mode.SSG 122 further includes aphase counter 304, aconversion counter 306, apulse generator 308, and a clock/control signal controller 309.Synchronization register 302 includes an output coupled to an input ofphase counter 304, which is a 4-bit free running phase counter, clocked at the nominal clock speed by a clock signal (CLKm_DIV) supplied by theSSG 122.Phase counter 304 may be free-running or it may be programmed to generate a defined number of phase cycles. Because each phase cycle is typically used to start a conversion, the number of phase cycles is equal to the number of conversions that are performed by an ADC, such asADC SSG 122 in a defined set of cycles. In one example,phase counter 304 is clocked at approximately 16 MHz. Counting-up from zero,phase counter 304 marks sixteen equally-spaced-in-time events each microsecond for one or twoADCs SSG 122 further includes aconversion counter 306, which operates as a 12-bit, programmable up-counter. Loaded at the start of a series of conversions,conversion counter 306 increments once each time thephase counter 304 overflows. At each count (and once at zero), a sample cycle start can be generated by theSSG 122 and sent to theADCs Conversion counter 306 provides an output topulse generator 308.Pulse generator 308 includes an input coupled to synchronization register 302 and an input coupled to clock/control signal controller 309.Pulse generator 308 includes an output coupled to anode 311. -
SSG 122 further includes clock/control signal controller 309 including ANDgates OR gates gate node 311, a second input coupled tonode 313, and an output. Each exclusive-OR gate gates node 315. The output of ANDgate 320 is coupled to the first input of exclusive-OR gate 330. The output of ANDgate 322 is coupled to the first input of exclusive-OR gate 332. The output of ANDgate 324 is coupled to the first input of exclusive-OR gate 334. The output of ANDgate 326 is coupled to the first input of exclusive-OR gate 336. - Clock/
control signal controller 309 further includes an ORgate 328 including multiple inputs coupled tonode 313 and an output coupled to an input ofsynchronization circuit 314 and to a control input of a “pixel count” register 316.Synchronization circuit 314 and “pixel count” register 316 include an input coupled to an APB interface.Synchronization circuit 314 includes an output coupled to pulse startcontrol circuit 312, which has an output coupled to a control input of a decrementer circuit 310. Decrementer 310 includes a clock input for receiving a pixel clock signal (CLKm_div), an input coupled to the output of “pixel count” register 316, and an output coupled topulse generator 308. In a “1×” mode, decrementer 310 decrements a count with each pixel clock pulse. In a “2×” mode, decrementer 310 decrements the count with every second pixel clock pulse (i.e., pixel clock pulses occur at two times the decrement rate). - In an example,
programmable pulse generator 308 creates a 50% duty cycle pulse once at each count (and once at zero) after theconversion counter 306 is triggered. Clock/control signal generator 309 provides register-driven logic allowing software to control the operation of four outputs (SSG_Out[0], SSG_Out[1], SSG_Out[2], and SSG_Out[3]) from theSSG 122 to external devices. Clock/control signal generator 309 allows the register settings to define whether (or not) the output is driven by thepulse generator 308, to set the polarity of the pulses (via exclusive-OR gates pulse generator 308 is not running so that the outputs are not floating. - In one possible implementation,
SSG 112 is coupled to a non-contact location sensing system or non-contact sensor. In an example, such a non-contact location sensing system or non-contact sensor can utilize linear image sensors to detect the location of an object. In an example, the linear image sensor is a linear array of photocells (1×256, 1×512, . . . , 1×4096). Each photocell generates a voltage or current proportional to the incident light received during a period of light integration (shutter open). The collected voltages or currents are then serially transmitted to an ADC, such asADC ADCs -
SSG 122 makes it possible to connect multiple ADCs (such asADCs 132 and 134) together to perform synchronized interleaved sampling. Further,SSG 122 can output a clock signal to pins for use by external devices (such aspads FIG. 1 ), where the clock signal is synchronized to the internal sampling clock (pixel clock) used by any number ofADCs - In operation,
SSG 122 generates a time-base for synchronizing an external sample source with one or more ADCs 132 and 134. The time-base rate is programmable, and its maximum cycle time is equal to the highest sample rate ofADC phase counter 304. The start of each cycle is marked for external reference by a pulse, available at the device pins.SSG 122 provides eachADC ADC - Typically, the external reference pulse is used by an external data source to clock-out analog samples for input to ADCs 132 and 134. The external source's dwell time (the delay between the start of the pulse and the accurate settling of the analog sample it supplies to the
ADC 132 or 134) determines which phase number is programmed into aADC -
Pulse generator 308 creates a square wave pulse (optional polarity) that is available at the device pins orpads pulse generator 308 operates on a timing signal supplied byADC 132. If the timing signal is not running, the clocking function ofSSG 122 will not operate, but the peripheral bus registers and the output data control functions (ssg_dat) onnode 315 can still be used. In an example, enabling theADC 132 also turns on the timing signal to theSSG 122. Typically, if there are no SAR data conversions taking place, the generator performs no clocking functions. - In a particular example,
ADCs phase generator 304. Multiple ADCs, such asADCs - In an example,
SSG 122 generates an external sample data (pixel) clock that is synchronous to conversion operations ofADCs SSG 122 includes a simple state machine for controlling up to four sensor channels, providing control of four linear image sensors, or two image sensors each having odd and even pixel data channels.ADCs DMAs ADCs -
Pulse generator 308 produces a square-wave pulse train (or clock) that can be used as the pixel clock.Pulse generator 308 derives the pulses from the 16 MHz (nominal) SAR clock (clkm_div). Software executed by the MCU controls timing of the pulse generation and controls the delivery of the clock pulses to selected pins or pads.Pulse generator 308 provides the pixel clock signal at one of two frequencies: standard (1×) and fast (2×) (i.e., CLKm_div/16 or CLKm_dev/8). At the standard (1×) pixel clock rate,ADCs ADCs ADCs ADCs - In operation, each
time pixel generator 308 generates a pulse,SSG 122 generates a cycle start signal to one or bothADCs 132 and/or 134 (depending on the mode). The timing of the ADC conversion start command is controlled internal to eachADC phase counter 304 sent to theADCs 132 and 134 (as number of counts of the ADC timing clock, clkm_div). - The pixel clock generator creates four outputs, ssg_out[3:0]. These lines are distributed through a crossbar. The pixel clock is not driven onto the ssg_out[3:0] lines unless a register bit (ssg_ckc[3:0]) is set. Setting any of the ssg_ckc register bits at
node 315 causespulse generator 308 to begin a frame sequence of pulses. Setting any of the ssg_ckc bits while a frame sequence is already in progress has no effect on the operation of thepulse generator 308. At the end of a frame sequence, the ssg_ckc bits onnode 315 are cleared in software (ssg_ckc[3:0]=4′h0), causingpulse generator 308 to return to the idle state. When thepulse generator 308 is not operating, or the clock is not enabled to drive the outputs, the clock signal to those outputs is low if the ssg_dat[3:0] bits are at logic low levels for that particular output. Otherwise, if the ssg_dat[3:0] bits are at a logic high level for the particular output, the quiescent level of the clock output is also high. - Software can control the state of ssg_out[3:0] lines via control bits (ssg_dat[3:0]), which bits invert the state of the lines. When ssg_out lines are quiescent, (
pulse generator 308 is disabled), setting ssg_dat causes ssg_out to be driven high (clearing ssg_dat in this case causes ssg_out to then return to a low state). Leaving ssg_dat high while the pixel clock is enabledcauses pulse generator 308 to be inverted, which allows for direct clocking of sensors requiring a negative-phase sampling clock. - When
pulse generator 308 is enabled, it creates a programmed number of sequential conversion pulses, which can be referred to as a conversion “frame”. A linear image sensor with 512 elements might be expected to require 512 pixel clock pulses per frame since a pulse is used to shift out a voltage sample for each element in the detector, but the number of required pulses may be larger or smaller depending on the number of white/dark/blocking/reference cells that may be clocked out for sampling. A 12-bit “pixel count” register (ssg_cnt[11:0]) 316 programs the number of pulses to be sent per frame, which can be set to the number of conversion minus one. For a single pulse, pixel count register 316 is set to zero, and for 4096 pulses, pixel count register 316 is set to FFF). - In general, the
phase counter 304 divides the clock into 16 different phases for sampling, which makes it possible to select a sampling time that corresponds to a suitable point in the signal. For example, if the analog signal has a slope that resembles a signal having a resistive/capacitive time constant, it may be desirable to sample the analog signal closer to its peak value or its lowest value. An example of a timing diagram that depicts an analog waveform is described below with respect toFIG. 4 . -
FIG. 4 is a timing diagram 400 of a signal received by thecontrol circuit 102 ofFIG. 1 . Diagram 400 illustrates an ideal,square wave signal 402 that has an amplitude corresponding to a color value between black and white for each pixel of an array of pixels. Diagram 400 further illustrates ananalog signal 404 that increases and decreases from pixel to pixel that has a slope resembling a resistive-capacitive time constant.Phase counter 304 makes it possible to divide the sample time for each frame so that the sample is taken at a point in time (such as generally indicated at 408), where the amplitude of theanalog signal 404 is approximately at a local peak or local low level. - In one implementation, some peripheral devices, such as sensors (cameras), can have two shutter periods, one for ambient light and one for LED-illuminated conditions. In this implementation, the sensor can subtract the data from the two conditions internally, outputting the difference, or it can output both readings. In this example,
control circuit 102 controls the sensor shutters coupled to controlcircuit 102 to turn on at the same time for the ambient sensing, and then controls the sensors' shutters to turn on sequentially for the illuminated reading. This sequential illumination uses a relatively long delay between the two shutter periods for all but the first sensor. In this example,control circuit 102 can utilize instructions executed by an MCU to control the shutter periods and sequential timing. - In a particular example,
SSG 122 produces clock pulses at a frequency of approximately 1 MHz. In one example, about 550 pulses are used to sample the sensor data. For sensors with two shutter times, about 1100 pulses are used to sample the sensor data if the customer wants both ambient and illuminated data output from the sensor. - In conjunction with the circuits and methods described above with respect to
FIGS. 1-4 , a system is disclosed that includes one or more sensors coupled to a control circuit. The control circuit includes an SSG coupled to one or more pads for providing a clock signal and coupled to one or more ADCs to provide a pixel clock signal. The SSG provides a clock signal for clocking data from the sensors to input pins. Further, the SSG synchronizes the ADCs to the clock signal and sensor delays using pixel clock signal to control sampling of the sensor data. - Although the present invention has been described with reference to preferred embodiments, workers skilled in the art will recognize that changes may be made in form and detail without departing from the scope of the invention.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/407,708 US8513989B1 (en) | 2012-02-28 | 2012-02-28 | Integrated circuit, micro-controller unit, and method including a synchronous sampling controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/407,708 US8513989B1 (en) | 2012-02-28 | 2012-02-28 | Integrated circuit, micro-controller unit, and method including a synchronous sampling controller |
Publications (2)
Publication Number | Publication Date |
---|---|
US8513989B1 US8513989B1 (en) | 2013-08-20 |
US20130222027A1 true US20130222027A1 (en) | 2013-08-29 |
Family
ID=48952150
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/407,708 Active US8513989B1 (en) | 2012-02-28 | 2012-02-28 | Integrated circuit, micro-controller unit, and method including a synchronous sampling controller |
Country Status (1)
Country | Link |
---|---|
US (1) | US8513989B1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9806734B1 (en) * | 2016-11-04 | 2017-10-31 | Analog Devices Global | SAR analog-to-digital converter selective synchronization |
CN108288371A (en) * | 2017-12-15 | 2018-07-17 | 广州智光自动化有限公司 | Based on the time-multiplexed electric flux synchronous sampling system of bus |
DE102018103088A1 (en) * | 2018-02-12 | 2019-08-14 | Infineon Technologies Ag | SEMICONDUCTOR CHIP AND DEVICE AND METHOD FOR CONTROLLING AT LEAST ONE CHANNEL FOR A RADAR SIGNAL |
CN112904771A (en) * | 2021-01-19 | 2021-06-04 | 厦门欧万精密科技有限公司 | DSP hardware sampling delay compensation method and device based on PWM synchronization mechanism |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7154346B2 (en) * | 2004-07-30 | 2006-12-26 | Broadcom Corporation | Apparatus and method to provide a local oscillator signal |
JP2009232184A (en) * | 2008-03-24 | 2009-10-08 | Nec Electronics Corp | Semiconductor integrated circuit |
EP2237413B1 (en) * | 2009-03-31 | 2013-05-08 | Sony Corporation | Compensator unit and compensation method for I/Q imbalance errors |
-
2012
- 2012-02-28 US US13/407,708 patent/US8513989B1/en active Active
Also Published As
Publication number | Publication date |
---|---|
US8513989B1 (en) | 2013-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20160065867A1 (en) | Digital double sampling method, a related cmos image sensor, and a digital camera comprising the cmos image sensor | |
US9900535B2 (en) | Solid-state imaging apparatus, imaging system and method for driving solid-state imaging apparatus | |
US8513989B1 (en) | Integrated circuit, micro-controller unit, and method including a synchronous sampling controller | |
KR101934260B1 (en) | A image sensor | |
US10609317B2 (en) | Time detection circuit, AD conversion circuit, and solid-state imaging device | |
US8969771B2 (en) | Imaging system and imaging device | |
JP2007300467A (en) | Solid-state imaging apparatus | |
US10129496B2 (en) | Imaging device and imaging system | |
KR102514432B1 (en) | Comparator and operating method, and cmos image sensor thereof using that | |
EP2773099B1 (en) | Image pickup apparatus, driving method for image pickup apparatus, image pickup system, and driving method for image pickup system | |
KR101605831B1 (en) | Cmos image senser and image signal detecting method thereof | |
KR101647102B1 (en) | 2-step analog-digital converting circuit, operating method thereof, and devices having the same | |
US9912898B2 (en) | Amplifier, electric circuit, and image sensor | |
US20110156939A1 (en) | Pulse edge selection circuit, and pulse generation circuit, sample-hold circuit, and solid-state image sensor using the same | |
US7782241B2 (en) | Signal processing method and device, and analog/digital converting device | |
KR20200142169A (en) | Analog-digital converter and image sensor including thereof | |
KR20120040857A (en) | Analog digital converter and image censor including the same | |
US20010013955A1 (en) | Image reading apparatus | |
CN202261579U (en) | Integration-time-adjustable transport driver interface-charge coupled device (TDI-CCD) driving circuit | |
JP2012503395A (en) | Analog counters and image devices equipped with such counters | |
US10992894B2 (en) | Image sensor, address decoder including clock tree, and image processing system including the image sensor | |
Hu et al. | Design of the linear array CCD acquisition system that line frequency and integration time adjustable | |
EP0755149B1 (en) | Method and system for digitizing ccd data | |
US20080158399A1 (en) | Image sensor module, signal generation device and signal generation method | |
US20230162526A1 (en) | Fingerprint recognition device, readout circuit and operating method of fingerprint recognition device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: SILICON LABORATORIES, INC., TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MARTIN, BRADLEY;DAVID, THOMAS SAROSHAN;WESTWICK, ALAN LEE;SIGNING DATES FROM 20120228 TO 20120307;REEL/FRAME:028293/0248 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |