Patent Description:
The present disclosure relates generally to a microcontroller with external data image inputs that is able to support an addressable LED pixel array at high speed image refresh speeds. In particular the invention relates to a LED controller for an LED pixel array according to claim <NUM>. Preferred embodiments of the invention are defined by the dependent claims.

While pixel arrays of LEDs with supporting CMOS circuitry have been used, practical implementations suitable for commercial use can face severe manufacture, power, and data management problems. Individual light intensity of thousands of emitting pixels may need to be controlled at refresh rates of <NUM>-<NUM>. High data refresh rates are needed for many applications, and systems that support a variety of calibration, testing, and control methodologies are needed. Publication <CIT> discloses an LED controller for an LED pixel array comprising a pixel control circuit including logic.

In one embodiment, a LED controller includes an image buffer to hold image data. An LED pixel forming a part of a large pixel array is activatable in response to image data, LDO state, and pulse width modulation module state. A logic module including a pixel diagnostic mode using an LDO bypass is connected to modify LDO state and allow direct addressing of the LED pixel for diagnostic purposes without needing to use image data from the image buffer.

In one embodiment, the image buffer is effectively disconnected from the LED pixel when the LDO bypass is activated.

In another embodiment, a pulse width modulator is connected between the image frame buffer and the LED pixel. The pulse wide modulator can have duty cycle loaded during a read of the image buffer. In other embodiments, the pulse width modulator supports configurable per pixel leading edge phase shift.

A row select and a column select are used to select the particular LED pixel for activation when using LDO bypass. The LED pixel can be supplied with a data line, a bypass line, PWMOSC line, a Vbias line, and a Vfline.

In another embodiment, an LED controller for an LED pixel array includes a switch K1 activated in response to a row and column select signal; a switch K2 activated in response to a pulse width modulation duty cycle; and a switch K3 providing a current source from Vbias. Pixel activation is determined at least in part by state of switch K1 and K2. In operation, the LED pixel in the LED pixel array is selected by switch K1 and a fault determination for the LED pixel is made based on determined Vf on a Vf bus.

In another embodiment an LED controller for an LED pixel array includes logic providing a row and column select signal; a pulse width modulator having a duty cycle; and a LED pixel in the LED pixel array that is activated at least in part according to state of the row and column select signal and the duty cycle of the pulse width modulator. Fault determination for the LED pixel is made based on determined Vf on a Vf bus.

Light emitting pixel arrays may support applications that benefit from fine-grained intensity, spatial, and temporal control of light distribution. This may include, but is not limited to, precise spatial patterning of emitted light from pixel blocks or individual pixels. Depending on the application, emitted light may be spectrally distinct, adaptive over time, and/or environmentally responsive. The light emitting pixel arrays may provide pre-programmed light distribution in various intensity, spatial, or temporal patterns. The emitted light may be based at least in part on received sensor data and may be used for optical wireless communications. Associated optics may be distinct at a pixel, pixel block, or device level. An example light emitting pixel array may include a device having a commonly controlled central block of high intensity pixels with an associated common optic, whereas edge pixels may have individual optics. Common applications supported by light emitting pixel arrays include video lighting, automotive headlights, architectural and area illumination, street lighting, and informational displays.

Light emitting pixel arrays may be used to selectively and adaptively illuminate buildings or areas for improved visual display or to reduce lighting costs. In addition, light emitting pixel arrays may be used to project media facades for decorative motion or video effects. In conjunction with tracking sensors and/or cameras, selective illumination of areas around pedestrians may be possible. Spectrally distinct pixels may be used to adjust the color temperature of lighting, as well as support wavelength specific horticultural illumination.

Street lighting is an important application that may greatly benefit from use of light emitting pixel arrays. A single type of light emitting array may be used to mimic various street light types, allowing, for example, switching between a Type I linear street light and a Type IV semicircular street light by appropriate activation or deactivation of selected pixels. In addition, street lighting costs may be lowered by adjusting light beam intensity or distribution according to environmental conditions or time of use. For example, light intensity and area of distribution may be reduced when pedestrians are not present. If pixels of the light emitting pixel array are spectrally distinct, the color temperature of the light may be adjusted according to respective daylight, twilight, or night conditions.

Light emitting arrays are also well suited for supporting applications requiring direct or projected displays. For example, warning, emergency, or informational signs may all be displayed or projected using light emitting arrays. This allows, for example, color changing or flashing exit signs to be projected. If a light emitting array is composed of a large number of pixels, textual or numerical information may be presented. Directional arrows or similar indicators may also be provided.

Vehicle headlamps are a light emitting array application that requires large pixel numbers and a high data refresh rate. Automotive headlights that actively illuminate only selected sections of a roadway can used to reduce problems associated with glare or dazzling of oncoming drivers. Using infrared cameras as sensors, light emitting pixel arrays activate only those pixels needed to illuminate the roadway, while deactivating pixels that may dazzle pedestrians or drivers of oncoming vehicles. In addition, off-road pedestrians, animals, or signs may be selectively illuminated to improve driver environmental awareness. If pixels of the light emitting pixel array are spectrally distinct, the color temperature of the light may be adjusted according to respective daylight, twilight, or night conditions. Some pixels may be used for optical wireless vehicle to vehicle communication.

One high value application for light emitting arrays is illustrated with respect to <FIG>, which shows potential roadway illumination pattern <NUM> for a vehicle headlamp system illuminating a region <NUM> in front of a vehicle. As illustrated, a roadway <NUM> includes a left edge <NUM>, a right edge <NUM>, and a centerline <NUM>. In this example, two major regions are illuminated - a downward directed statically illuminated region <NUM> and a dynamically illuminated region <NUM>. Light intensity within region <NUM> can be dynamically controlled. For example, as an oncoming vehicle (not shown) traveling between centerline <NUM> and left edge <NUM> moves into a subregion <NUM>, light intensity can be reduced or shut off completely. As the oncoming vehicle moves toward subregion <NUM>, a series of subregions (not shown) can be defined to also have reduced light intensity, reducing the chance of unsafe dazzle or glare. As will be appreciated, in other embodiments, light intensity can be increased to accentuate road signs or pedestrians, or spatial illumination patterns adjusted to allow, for example, dynamic light tracking of curved roadways.

<FIG> illustrates a positioning of lighting modules <NUM> able to provide a lighting pattern such as discussed with respect to <FIG>. An LED light module <NUM> can include LEDS, alone or in conjunction with primary or secondary optics, including lenses or reflectors. To reduce overall data management requirements, the light module <NUM> can be limited to on/off functionality or switching between relatively few light intensity levels. Pixel level control of light intensity is not necessarily supported.

Positioned adjacent to LED light module <NUM> is an active LED array <NUM>. The LED array includes a CMOS die <NUM>, with a pixel area <NUM> and alternatively selectable LED areas <NUM> and <NUM>. The pixel area <NUM> can have <NUM> rows and <NUM> columns, for a total of <NUM>,<NUM> pixels distributed over an area of <NUM> by <NUM> millimeters. The selectable LED areas <NUM> and <NUM> allow for differing aspect ratios suitable for different vehicle headlamps or applications to be selected. For example, in one embodiment selectable LED area <NUM> can have a <NUM>:<NUM> aspect ratio with <NUM> rows and <NUM> columns, for a total of <NUM>,<NUM> pixels distributed over an area of <NUM> by <NUM> millimeters. Alternatively, selectable LED area <NUM> can have a <NUM>:<NUM> aspect ratio with <NUM> rows and <NUM> columns, for a total of <NUM>,<NUM> pixels distributed over an area of <NUM> by <NUM> millimeters. In one embodiment, pixels can be actively managed to have a <NUM>-bit intensity range and a refresh rate of between <NUM> and <NUM>, with a typical operational refresh rate of <NUM> or greater.

<FIG> illustrates an embodiment of a vehicle headlamp system <NUM> including a vehicle supported power (<NUM>) and control system including a data bus (<NUM>). A sensor module <NUM> can be connected to the data bus <NUM> to provide data related to environment conditions (e.g. time of day, rain, fog, ambient light levels, etc), vehicle condition (parked, in-motion, speed, direction), or presence/position of other vehicles or pedestrians. A separate headlamp controller <NUM> can be connected to the vehicle supported power and control system.

The vehicle headlamp system <NUM> can include a power input filter and control module <NUM>. The module <NUM> can support various filters to reduce conducted emissions and provide power immunity. Electrostatic discharge (ESD) protection, load-dump protection, alternator field decay protection, and reverse polarity protection can also be provided by module <NUM>.

Filtered power can be provided to a LED DC/DC module <NUM>. Module <NUM> can be used only for powering LEDs, and typically has an input voltage of between <NUM> and <NUM> volts, with a nominal <NUM> volts. Output voltage can be set to be slightly higher (e.g. <NUM> volts) than LED array max voltage as determined by factory or local calibration, and operating condition adjustments due to load, temperature or other factors.

Filtered power is also provided to a logic LDO module <NUM> that can be used to power microcontroller <NUM> or CMOS logic in the active headlamp <NUM>.

The vehicle headlamp system <NUM> can also include a bus transceiver <NUM> (e.g. with a UART or SPI interface) connected to microcontroller <NUM>. The microcontroller <NUM> can translate vehicle input based on or including data from the sensor module <NUM>. The translated vehicle input can include a video signal that is transferrable to an image buffer in the active headlamp module <NUM>. In addition, the microcontroller <NUM> can load default image frames and test for open/short pixels during startup. In one embodiment, a SPI Interface loads an image buffer in CMOS. Image frames can be full frame, differential or partial. Other microcontroller <NUM> features can include control interface monitors of CMOS status, including die temperature, as well as logic LDO output. In some embodiments, LED DC/DC output can be dynamically controlled to minimize headroom. In addition to providing image frame data, other headlamp functions such as complementary use in conjunction with side marker or turn signal lights, and/or activation of daytime running lights can also be controlled.

<FIG> illustrates one embodiment of various components and modules of a vehicle headlamp system <NUM> capable of accepting vehicle sensor inputs and commands, as well as commands based on headlamp or locally mounted sensors. As seen in <FIG>, vehicle mounted systems can include remote sensors <NUM> and electronic processing modules capable of sensor processing <NUM>. Processed sensor data can be input to various decision algorithms in a decision algorithm module <NUM> that result in command instructions or pattern creation based at least in part on various sensor input conditions, for example, such as ambient light levels, time of day, vehicle location, location of other vehicles, road conditions, or weather conditions. As will be appreciated, useful information for the decision algorithm module <NUM> can be provided from other sources as well, including connections to user smartphones, vehicle to vehicle wireless connections, or connection to remote data or information resources.

Based on the results of the decision algorithm module <NUM>, image creation module <NUM> provides an image pattern that will ultimately provide an active illumination pattern to the vehicle headlamp that is dynamically adjustable and suitable for conditions. This created image pattern can be encoded for serial or other transmission scheme by image coding module <NUM> and sent over a high speed bus <NUM> to an image decoding module <NUM>. Once decoded, the image pattern is provided to the uLED module <NUM> to drive activation and intensity of illumination pixels.

In some operational modes, the system <NUM> can be driven with default or simplified image patterns using instructions provided to a headlamp control module <NUM> via connection of the decision algorithm module <NUM> through a CAN bus <NUM>. For example, an initial pattern on vehicle start may be a uniform, low light intensity pattern. In some embodiments, the headlamp control module can be used to drive other functions, including sensor activation or control.

In other possible operational modes, the system <NUM> can be driven with image patterns derived from local sensors or commands not requiring input via the CAN bus <NUM> or high speed bus <NUM>. For example, local sensors <NUM> and electronic processing modules capable of sensor processing <NUM> can be used. Processed sensor data can be input to various decision algorithms in a decision algorithm module <NUM> that result in command instructions or pattern creation based at least in part on various sensor input conditions, for example, such as ambient light levels, time of day, vehicle location, location of other vehicles, road conditions, or weather conditions. As will be appreciated, like vehicle supported remote sensors <NUM>, useful information for the decision algorithm module <NUM> can be provided from other sources as well, including connections to user smartphones, vehicle to vehicle wireless connections, or connection to remote data or information resources.

Based on the results of the decision algorithm module <NUM>, image creation module <NUM> provides an image pattern that will ultimately provide an active illumination pattern to the vehicle headlamp that is dynamically adjustable and suitable for conditions. In some embodiments, this created image pattern does not require additional image coding/decoding steps but can be directly sent to the uLED module <NUM> to drive illumination of selected pixels.

<FIG> illustrates one embodiment of various components and modules of an active headlamp system <NUM> such as described with respect to active headlamp <NUM> of <FIG>. As illustrated, internal modules include an LED power distribution and monitor module <NUM> and a logic and control module <NUM>.

Image or other data from the vehicle can arrive via an SPI interface <NUM>. Successive images or video data can be stored in an image frame buffer <NUM>. If no image data is available, one or more standby images held in a standby image buffer can be directed to the image frame buffer <NUM>. Such standby images can include, for example, an intensity and spatial pattern consistent with legally allowed low beam headlamp radiation patterns of a vehicle.

In operation, pixels in the images are used to define response of corresponding LED pixels in the pixel module <NUM>, with intensity and spatial modulation of LED pixels being based on the image(s). To reduce data rate issues, groups of pixels (e.g. 5x5 blocks) can be controlled as single blocks in some embodiments. High speed and high data rate operation is supported, with pixel values from successive images able to be loaded as successive frames in an image sequence at a rate between <NUM> and <NUM>, with <NUM> being typical. In conjunction with a pulse width modulation module <NUM>, each pixel in the pixel module can be operated to emit light in a pattern and with an intensity at least partially dependent on the image held in the image frame buffer <NUM>.

In one embodiment, intensity can be separately controlled and adjusted by setting appropriate ramp times and pulse width for each LED pixel using logic and control module <NUM> and the pulse width modulation module <NUM>. This allows staging of LED pixel activation to reduce power fluctuations, and to provide various pixel diagnostic functionality.

<FIG> illustrates a microcontroller assembly <NUM> for an LED pixel array. The assembly <NUM> can receive logic power via Vdd and Vss pins. An active matrix receives power for LED array control by multiple VLED and VCathode pins. A Serial Peripheral Interface (SPI) can provide full duplex mode communication using a master-slave architecture with a single master. The master device originates the frame for reading and writing. Multiple slave devices are supported through selection with individual slave select (SS) lines. Input pins can include a Master Output Slave Input (MOSI), a Master Input Slave Output (MISO), a chip select (SC), and clock (CLK), all connected to the SPI interface.

In one embodiment, the SPI frame includes <NUM> stop bits (both "<NUM>"), <NUM> data bits, MSB first, <NUM> CRC bits (x3+x+<NUM>), a start 111b, and target 000b. Timing can be set per SafeSPI "in-frame" standards.

A field refresh rate at <NUM> (<NUM> full frames per second) is supported, as is a bit rate of at least 10Mbps, and typically between <NUM>-<NUM> Mbps.

The SPI interface connects to an address generator, frame buffer, and a standby frame buffer. Pixels can have parameters set and signals or power modified (e.g. by power gating before input to the frame buffer, or after output from the frame buffer via pulse width modulation or power gating) by a command and control module. The SPI interface can be connected to an address generation module that in turn provides row and address information to the active matrix. The address generator module in turn can provide the frame buffer address to the frame buffer.

The command and control module can be externally controlled via an Inter-Integrated Circuit (I<NUM>C) serial bus. A clock (SCL) pin and data (SDA) pin with <NUM>-bit addressing is supported.

The command and control module include a digital to analog converter (DAC) and two analog to digital converters (ADC). These are respectively used to set Vbias for a connected active matrix, help determine maximum Vf, and determine system temperature. Also connected are an oscillator (OSC) to set the pulse width modulation oscillation (PWMOSC) frequency for the active matrix. A bypass line is also present to allow address of individual pixels or pixel blocks in the active matrix for diagnostic, calibration, or testing purposes.

In one embodiment, the command and control module can provide the following inputs and outputs:
Input to CMOS chip:.

Various calibration and testing methods for microcontroller assembly <NUM> are supported. During factory calibration a Vf of all pixels can be measured. Maximum, minimum and average Vf of the active area can be "burned" as calibration frame. Maximum Vf and dVf/dT calibration frames can be used together with measured die temperature to determine actual VLED dynamically. Typically, a VLED of between <NUM>. 0V - <NUM>. 5V is supported, with actual value being determined by feedback loop to external DC/DC converter such as described with respect to <FIG>.

<FIG> respectively illustrates one embodiment of a pixel control circuit <NUM> and associated timing diagram <NUM>. Pixel control circuit <NUM> includes logic having row and column select, and a bypass signal. PWN OSC input and data, along with output from the logic are first fed into generator and then into a PWM. The PWM in turn has a duty cycle that controls activation of a particular pixel. This is described in more detail with respect to the following description of a pixel control circuit <NUM> of <FIG>. Factory calibration Vf of all pixels can be measured at <NUM>. 0µA and <NUM> mA using an external current source and LDO bypass functionality.

This operation can be bypassed when the LED pixel is supported by a low dropout (LDO) linear regulator as illustrated in the circuit <NUM>. During bypass Vf can be measured either with internal 1µA current source or external current source on VLED. Bypass can be done as a pixel by pixel operation using row and column select. Advantageously, this pixel bypass circuitry allows determination if a particular pixel is working correctly or if any fault situation has occurred.

As illustrated in <FIG>, image data and pulse width modulation oscillation clock data can be received by a pulse width modulator. Based on input from a logic module, gate timing including pulse start, ramp time and pulse duration/width (duty cycle) can be set on a per pixel basis. For example, the duty cycle (δ) can be loaded from frame buffer on "read". An <NUM>-bit δ resolution can be supported. In one embodiment, the pulse leading-edge phase shift (ϕ) can be set differently for each pixel.

<FIG> illustrates a pixel control circuit <NUM> that does not support a bypass circuit. Pixel control circuit <NUM> includes logic having row and column select. Output from the logic are first fed into generator and then into a PWM. The PWM in turn has a duty cycle that controls activation of a particular pixel using additional circuitry in the following manner. Three switches, K1 through K3, are controlled by signals received from center control block outside pixels. Switch K3 is the current source, or LDO, and its current is controlled by Vbias. K2 is the PWM switch, which turns on and off based on the PWM duty cycle determined by the image data. In this example, K2 and K3 are P-channel MOSFet, but they can also be switches of any other suitable form. In <FIG>, the PWM signal is connected to the gate of K2, and the drain node of K2 is connected to the gate of K3. Consequently, when PWM signal is high, K2 is off and K3 is on, so the LED is on and the current is determined by Vbias voltage. When PWM is low, K2 is on, pulling K3 gate high and turning it off, so the LED is off.

Switch K1 is turned on and off based on row select and column select signal. K1 will be turned on only when the row and column of a specific pixel is selected, otherwise, it will stay off. When K1 is turned on, its impedance becomes low, and the LED forward voltage at the anode, or Va node of that pixel, will appear on the Vf bus. Since the impedance of Vf bus is much higher than that of K1 in the turn-on state, Vf voltage will equal to Va node voltage. When a fault situation happens in the circuit or the LED, the LED forward voltage may deviate from the normal value. Therefore, the Vf voltage can be used to determine if the pixel is working correctly or if any fault situation has occurred, without needing specific pixel bypass circuitry such as disclosed with respect to <FIG>. In this way, a real-time or "on-the-fly" detection can be realized such that the pixel status could be monitored and reported during operation.

Because the Vf bus is a shared node for all pixels, the K1 switch can be turned on for only one pixel at a time. The best time to detect fault situations would be when a pixel is turned on by the PWM. Preferably, the PWM values defined by the application image can be used for testing, but special test images may also be an option. When a pixel is turned off, the detection may still be done, although at a more limited level than during turn-on.

The K1 switching control with respect to the PWM can be flexible. Depending on detection requirements, the K1 frequency may be higher or lower than the PWM frequency. Apparently, the higher K1 frequency, the faster detection, i.e. the more pixels can be tested within a time range. , if the PWM frequency is <NUM>, only one pixel can be tested during one PWM period, or <NUM>, with a K1 frequency of <NUM>, whereas ten pixels might be tested during <NUM> with a K1 frequency of <NUM>. Moreover, the two frequencies may be synchronous or asynchronous.

<FIG> illustrates an example control scheme for pixel control circuitry. In this embodiment, a K1 frequency is set close to PWM frequency with turn-on synchronized. Note that while this example only shows three pixels, it can be extended in a similar manner to a whole matrix array of pixels. For each pixel, the diagram shows the PWM signal voltage, Va node voltage and K1 control voltage. For a normal pixel, the Va node voltage is high when the PMM signal is high and low when the PWM is low. Likewise, the K1 is turned on when the K1 control voltage is high, and off when the control voltage is low. Depending on circuit design, control phase of PWM and K1 can be opposite, i.e. turning on the respective switch when low and turning it off when high.

Operation of pixel <NUM> proceeds as follows:
t1~t4: PWM voltage is high. The pixel is turned on and the Va node is high. In the meantime, the K1 control voltage is also high at t1, synchronized with the turn-on of PWM. K1 control voltage remains low for pixel <NUM> and <NUM>. K1 of pixel <NUM> is turned on, and the Va node voltage appears on the Vf bus, so the Vf bus voltage equal to Va voltage of pixel <NUM> at this time. The turning-off moment of K1, t3, is earlier than that of the PWM, t4, so that the pixel test can complete before the pixel is turned off.

Operation of pixel <NUM> proceeds as follows:.

<FIG> illustrate in more detail a block diagram <NUM> of active matrix array supporting LDO bypass. Row and column select are used to address individual pixels, which are supplied with a data line, a bypass line, a PWMOSC line, a Vbias line, and a Vf line. Timing and activation of a gate and pulse width modulator oscillator (PWMOSC) is illustrated with respect to <FIG>. As will appreciated, in certain embodiments LDO bypass is not required, and pixel testing can proceed using circuitry and/or control schemes described with respect to <FIG>.

Claim 1:
A LED controller for an LED pixel array (<NUM>, <NUM>), comprising:
- an image buffer (<NUM>) to hold image data; and
- a pixel control circuit (<NUM>) including logic providing a row and column select signal for each pixel of the LED pixel array (<NUM><NUM>);
characterized by
the LED controller further comprising a command control module for receiving a forward voltage on a forward voltage bus (Vf); and
the pixel control circuit comprising
- a pulse width modulator having a duty cycle determined by the image data;
- a select switch (K1), activated in response to the row and column select signal;
- a PWM switch (K2), activated in response to the pulse width modulation duty cycle; and
- a current source switch (K3) providing a current source from a voltage bias line (VBIAS); and wherein
pixel activation is determined at least in part by the switch state of the select switch (K1) and the switch state of the PWM switch (K2); and wherein an LED pixel in the LED pixel array (<NUM>, <NUM>) is selected by the select switch (K1); and a fault determination for the LED pixel is made based on the forward voltage determined on the forward voltage bus (Vf) shared by all LED pixels in the LED pixel array (<NUM>, <NUM>).