WO2009017703A1 - Methodology and circuit for interleaving and serializing/deserializing lcd, camera. keypad and gpio data across a serial stream - Google Patents
Methodology and circuit for interleaving and serializing/deserializing lcd, camera. keypad and gpio data across a serial stream Download PDFInfo
- Publication number
- WO2009017703A1 WO2009017703A1 PCT/US2008/009112 US2008009112W WO2009017703A1 WO 2009017703 A1 WO2009017703 A1 WO 2009017703A1 US 2008009112 W US2008009112 W US 2008009112W WO 2009017703 A1 WO2009017703 A1 WO 2009017703A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- serial
- information
- low speed
- high speed
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/405—Coupling between buses using bus bridges where the bridge performs a synchronising function
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
Definitions
- the present invention relates to multiplexing and serializing/deserializing data from a number of devices across a serial interface.
- I/O devices like keypads and keyboards, cameras, LCD displays, and miscellaneous general purpose I/O (GPIO) devices are often found in mobile hand held devices. These I/O devices, like many microprocessors, typically provide parallel interfaces. In mobile devices, however, some I/O devices are separated by a hinge from a controller microprocessor.
- interconnecting the microprocessor and the I/O devices in a mobile device requires many parallel connections to traverse a flexible cable squeezed into a hinge. A large number of wires is undesirable due to decreased reliability and increased cost.
- Serialization provides one level of wire reduction.
- the present invention provides a reduction of the wires that traverse a flexible cable.
- the present invention provides an interface for serializing and interleaving data to and from, at least, an LCD display, a device interfaced via a GPIO (general purpose input/output) connection, a camera, an I2C device and a keypad or key board. Further reduction may be achieved, as provided by the present invention, by interleaving multiple sets of parallel data across the same serial wires and by controlling modes without a dedicated control pin or wire.
- GPIO general purpose input/output
- the serialized data may be interleaved over shared wires where timing intervals may be utilized to mix signals from different devices in a time sequence. For example, during video transmission often there are vertical (VSYNC) and horizontal (HSYNC) syncing pulses where no data is carried on the video data lines. These times may be used by other devices to send serial data. For example keyboard data may be sent during these times where a human operator will not notice any delay. Although expressed as keyboard data, virtually any serial data may be sent during a camera VSYNC or HSYNC time period.
- LCD data, GPIO and I2C signals may be multiplexed over common connections (connecting wires). At least part of the control of which of these three data types may be sent may be controlled by a changed clock frequency. For example, if LCD or I2C signals are to be multiplexed, a clock frequency may be used to distinguish the data type being sent. For example, a particular clock frequency may indicate that LCD data is being sent, and a frequency change may command a mode change where I2C signals is being transferred. In this example a frequency detection circuit may be used. When neither LCD nor I2C signals is being sent, GPIO data may be loaded and serially transferred.
- FIGs. IA, IB, 1C, ID and IE are block diagram schematics of functional blocks employing the present invention:
- FIG. IF is a timing diagram
- FIG. 2 is a schematic of an internal strobe generation
- FIGs. 3, 4, 5, 6, and 7 are block diagram schematics illustrating the LCD/I2C multiplexing.
- FIG. 8 is a timing chart illustrating frequency comparison to effect mode change.
- FIG. IA illustrates a system employing the present invention.
- a microprocessor 4 has a number for individual parallel I/O ports, each with data, clock and control signals.
- On the right side of FIG. IA are the corresponding I/O devices 5.
- Note that the I/O connections leaving the microprocessor 4 are similar to the I/O connections to the I/O devices 5. In some applications other control connections (not shown) may be employed depending on the devices as would be known to those skilled in the art.
- a Master Device 6 and a Slave Device 10 that are connected to each other via a flexible cable 11 designed to squeeze through a hinge.
- the Master and the Slave Devices have many parallel connections 8 at the microprocessor 4 and at 9 to the I/O devices 5, but only a few connections between the two on the flexible cable 11 that improve reliability and the bending function (fewer wires to bend and break within the hinge).
- the present invention provides for sharing the serial connections among LCD signals, GPIO signals and I2C signals.
- parallel camera I/O data may be serialized and interleaved with signals from a keypad.
- a pair of devices a Slave 6 and a Master 10, made in accordance with the present invention, serialize and deserialize LCD, GPIO and I2C signals as well as camera and keypad signals.
- the signals are multiplexed between the signal sources and carried across shared serial interfaces, and may be sent in full duplex or half duplex as desired.
- FIG. IA illustrates the functions within an example of major blocks that embody the present invention.
- a general purpose microprocessor 4 interfaces with a Master Device 6 via a group of parallel connections 8.
- the Master Device 6 interfaces with a Slave Device 10 via a flexible cable 11 carrying four serial connections.
- the first two 12 carry a clock (LCDCKS) and data (LCDDS). These two carry information to and from LCD displays 16, a GPIO interface 18 and an I2C interface 20.
- the second two 14 carry a camera clock (CAMCKS) and data (CAMDS). These two connections carry information to and from cameras 22 and a keypad 24.
- LCDCKS clock
- LCDDS data
- the second two 14 carry a camera clock (CAMCKS) and data (CAMDS).
- FIG. IB illustrates in block form the electronic functions between the Master Serializer 6 and the microprocessor 4 re the LCD/GPIO and I2C functions.
- Sixteen LCD data lines 32, six GPIO data lines 34 and the LCD chip selects 40 (MAINCS - the main LCD display chip select and the SUBCS - a subsidiary LCD display chip select) are loaded into the multiplexer (MUX) data serializer 30 and clocked out on the LCDDS.
- the LCD chip selects 40, the LCDWE (display write enable), and the I2CSCK (clock), the I2CSDA (data), the LCD/I2C (control) and the LCDCKREF (a reference clock) are input to the LCD/I2C Logic A 36 and the Strobe Gen. 44 that controls the LCD or GPIO data being loaded into and strobed out of the data serializer 30.
- FIG. 1 C shows the functions and circuit in the Slave Device that correspond to the functions in FIG. IB.
- a data deserializer 50 receives either LCD and GPIO or I2C SIGNALS as directed by the LCD/I2C Logic B circuit 52.
- the LCD/I2C Logic blocks A and B are discussed in more detail below.
- FIGs. ID and IE illustrate the functions within the Master/Slave Devices 6 and 10 that passes camera, keypad data and control.
- a 12 bit deserializer 60 receives the CAMCKS (camera clock) and CAMDS (camera /keypad data).
- a demultiplexer 62 splits the 12 parallel data from the deserializer 60 into camera data and control signals and sense and scan signals recreating the keypad signals. These data are input to the microprocessor 4.
- a key pad detection circuit 150 that scans the key pad 24 and detects which key is depressed with the aid of an oscillator 152. As known to those skilled in the art, other techniques may be used to detect when a key is depressed.
- a control and data " multiplexer 154 interleaves sending/receiving signals from the key pad and the camera, alternately, in time. Care is taken so that the time restraints on the camera I/O are met while not missing any key pad depressions.
- the key data is sent to a twelve bit serializer 156.
- the key pad data is serialized and sent over the CAMDS along with a clock signal CAMCKS that provides timing for the Master Deserializer 60 to properly receive the key pad signals.
- the keypad data may be formatted or encoded in binary, hex, etc. as the designed might determine.
- a phase locked loop, PLL 158 provides a clock, CAMCKREF to the camera 22.
- the CAMDATA lines, HSYNC, VSYNC, and the strobe are sent directly to the controller and data multiplexer 154.
- the controller data multiplexer 154 interfaces with the serializer 156 via, illustratively, twelve parallel data lines 160, a strobe 162 and a SERCK (serial clock) 164.
- a PLL (not shown) may be implemented in the LCD path to provide a reference clock for serialization.
- the camera data is invalid.
- the key pad data may be transferred without corrupting either the key pad or the camera operations.
- the present invention uses the HSYNC, illustratively, time period to interleave or multiplex the keypad data and the camera data.
- the combined data is serialized and sent over the DS line with the CKS signal in the flex cable.
- the Master Deserializer 60 receives and deserializes the multiplexed key pad and camera data into parallel data and separates the two with demultiplexer 62.
- the key pad data is regenerated into parallel form 74 recognized by a microprocessor.
- the camera parallel data is also regenerated into a parallel form recognized by the microprocessor 4 as shown in FIG. ID.
- an additional connection may be included in the DS group that signals when keypad or camera data is being passed.
- Other methods may be used as known to those skilled in the art, for example the first byte passed on the DS lines might always be a mode indicator that indicates a given amount of camera (or keypad) data follows. Other techniques are known in the art.
- FIG. IF illustrate a typical set of camera and keypad waveforms that illustrate the present invention.
- the first row 80 of data signals each of one byte shown in hex format are illustrative data signals from the camera.
- the grouping of these signals 81 indicates a HSYNC deasserted, horizontal synchronization, time period.
- the camera data signals, while HSYNC 82 is low, are indicated by bytes FO, Fl, F2, F3, F4 and F5. The data on these lines is meaningless with respect to the camera.
- the HSYNC time is used in the present invention to send keypad data to the micro-processor via the Master Serializer/Deserializer.
- Data 84 and HSYNC 86 are offset in time occurring later that the traces at 80 and 82. This time difference illustrates the delay times through the Master Serializer electronics.
- the F2 and F3 data bytes from the camera have been replaced by the two byte groups, 00 and 04, indicated as item 92.
- the next row 88 shows the keypad data on twelve bits or hex 004. Only 1.5 bytes are used by the keypad so the leading four bits are made equal to zero so that bytes 00 04 are sent to the Deserializer.
- the keypad data is sent replacing the F2 and F3 bytes of camera data during the HSYNC, but any of the data bytes during the HSYNC may be used as long as they are consistent. Keypad data may also be transferred during the VSYNC as would be known to those skilled in the art.
- the system may be operated in several modes.
- a first mode low speed key pad
- the PLL 58 is disabled, and the key oscillator 52 trav- els through the key pad matrix when a key is depressed levels on the serial lines.
- the key pad data is passed using LVCMOS (low Voltage CMOS).
- a second mode, high speed camera/key pad enables the PLL 158 (which becomes locked).
- the key pad data is captured and passed when the HSYNC signal 86 is low.
- Camera data is passed when HYSYNC 86 is high.
- a third mode, high speed camera passes no camera data. But key pad data is passed by the controller and a key pad data multiplexer provides a low, pseudo HSYNC signal.
- timing arrangements as well as other multiplexing arrangements may be used to advantage with the present invention.
- the present disclosure uses an oscillator to detect and decode a key depression, but logic signals may be used, including voltage signals and/or current signals.
- logic signals may be used, including voltage signals and/or current signals.
- microprocessors there are many microprocessors that may be used to advantage.
- very large silicon integration circuits with dedicated functions may be used, as well as one chip computers.
- a PLL is disclosed in this illustrative example, but, as known to those skilled in the art, operations without PLLs may be used.
- crystal clocks or the equivalent depending on the camera timing requirements, and other types of timing circuits may be used to advantage.
- FIG. 2 illustrates one embodiment of the Strobe Generator 44.
- LCD/I2C When LCD/I2C is true, then LCDWE will generate an internal strobe (intStrobe) to load data into the MUX Data Serializer 30. Data in the Data Se- rializer 30 is always sent when the LCDWE pulses. If no data is being sent to the main or subordinate display, the GPIO strobe is generated selecting and loading and sending the GPIO data. If either of the MAINCS or SUBCS is true, the GPIO strobe generation is disabled.
- Timing is designed so that the GPIO data is sent once for every sixteen CKREF cycles. Alternatively, GPIO data may be sent only when the GPIO data changes.
- the operations of LCD/I2C Logic A and B from FIGs. IB ad 1C are illustrated in FIGs. 3 to 7.
- the mechanism is to alter the clock signals for the LCD data for dual use when the LCD data is not being sent. In this case I2C signals and I2C CLK may be transferred, instead of LCD data.
- FIG. 3 shows a generic SENDER (in the Master Device 6) and RECEIVER (in the Slave Device 10) with the interconnecting flex cable 11.
- a control signal is generated by a computer system (not shown) that generates the CONTROL 1 signal.
- the CONTROL 1 may be used to pass LCD data 104 through a differential driver 106, or in the other condition to pass I2C signals and an I2C clock through the pass gate A to the flex cable 11.
- a high speed 108 or a low speed 109 LCD is input to the multiplexer (MUX) 10 that drives a buffer 122 that, in turn, drives the flex cable 11.
- MUX multiplexer
- the CONTROLl signal controls the MUX 110 to pass the LCD HS CLK (high speed clock) or the LCD LS CLK(low speed clock) input onto the flex cable.
- the speed of the clock signal is used by the circuitry to determine if the data is LCD or I2C SIGNALS.
- the LCD DATA' or the I2C signals' and CLK' (clock) is received by buffer 111 or the PASSGATE B as determined by the CONTROL' signal.
- the LCD CLK' is received by the buffer 144 which outputs the CKSIN signal.
- the CKSIN is compared to a REF.
- OSCILLATOR 114 at the FREQ.
- the COMPARATOR 116 outputs the CONTROL' that determines which signals are received.
- the CONTROL' is identical with the I2C_EN signal described later.
- FIG. 4 illustrates an embodiment for the electronics at the SENDER 36 of FIG. 3 driving the output pins 120 that connect to the flex cable 102. These output pins are shown connecting to a flex cable 11, but they might be going directly to another integrated circuit. Differential clock signals, LCD CLK, are driven by a transmitter 122 onto the output pins 120. As shown for the output pins of transmitter 122, each pin is connected to PADs that provide Electrostatic Discharge protection (ESD). All the pins, contacts and wires in this embodiment may be so protected, although not shown in the FIGs.
- ESD Electrostatic Discharge protection
- LCD represents liquid crystal display or any other type of display
- CLK represents clock
- Differential LCD DATA 104 is driven by a transmitter 126 onto differential DSOP and DSOM pins 128 that connect to the flex cable 102.
- LCD DATA 104 is being sent DSOP and DSOM represent the positive and negative, respectively, signals of the differential LCD DATA.
- CONTROLl is a mode determining signal that may be set by a computer system (not shown) that interfaces with the SENDER. Since LCD DATA or I2C signals are placed onto the DSOP and DSOM lines, the output of buffer 126, when not enabled, must not load the PASS GATE A, and the PASS GATE A, when not enabled, must not load the buffer 126.
- FIG. 5 illustrates the RECEIVER of FIG. 3.
- the LCD CLK is received by an optional cable termination load 140 and the buffer 142.
- a buffered LCD CLK' signal is presented to other circuitry (not shown) in the RECEIVER.
- One of the differential LCD CLK signals, CKSIN, is presented to the frequency comparator of FIG. 6, below.
- the LCD DATA (or the I2C CLK and the I2C signals) is received by the buffer 144 from the flex cable. If I2CJEN is true, I2C signals are received and passed through the PASS GATE B to other circuitry (not shown). If LCD DATA is received they are buffered 144 and a single ended LCD DATA' is presented to the following circuitry (not shown). An ENABLE signal, if desired, may be generated to prevent the LCD DATA' signals from traversing the buffer 144.
- FIG. 6 illustrates a circuit that functions as the FREQUENCY COMPARATOR 116 of FIG. 3.
- Frequency detectors formed as parallel missing pulse detectors
- 161 and 163 compare the received clock signal CKSIN to a reference oscillator signal OSCIN.
- the output is the I2C EN signal that directs the I2C signals traversing the flex cable or the LCD signals to the proper receiving circuitry (not shown).
- a camera clock 17 output may provide the CAMCKREF of FIG. IA.
- FIG. 7 illustrates a preferred embodiment of the detector 161 of FIG. 6.
- Item 163 is identical except the order of the OSCIN and CKSIN are reversed.
- CKSIN is input to the DATAIN 171 and OCSIN to the CLKIN 173 of item 161 of FIG. 7. These inputs operate to provide an output WBG COMPLETE 175.
- the output 175 outputs a signal indicating a missing pulse with respect to the input signals 171 and 175.
- the inverter chain 717 provides programmable delays that may be added before the inverter 179 to tune the delay as might be required in applications. When the two missing pulse detectors are logically joined, the frequency of the LCD CLK' is compared to the reference oscillator.
- FIG. 8 illustrates a simulation of a serial clock input frequency.
- CKSIN, 81 compared to a reference oscillator signal, OSCIN illustratively set at 75MHz 183.
- the frequency detection signal 185 illustrates when CKSIN is higher 187 and lower 189 compared to OSCIN 183.
- the present invention provides an advantage, in one preferred embodiment, of using frequency detection for setting different modes.
- the mode change is between LCD and I2C modes, or from transferring LCD signal to transferring I2C signals across a flex cable, while maintaining the usefulness of the frequency's original intent.
- the frequency detection approach provides real time monitoring and multiplexing bidirectional I2C control and LCD data shared over a common serial bus with protection against electromagnetic interference (EMI).
- EMI electromagnetic interference
Abstract
Description
Claims
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010519220A JP2010535453A (en) | 2007-08-02 | 2008-07-28 | Method and circuit for interleaving and serializing / deserializing LCD, camera, keypad and GPIO data via serial stream |
CN2008801085067A CN101809556B (en) | 2007-08-02 | 2008-07-28 | Methodology and circuit for interleaving and serializing/deserializing lcd, camera, keypad and GPIO data across a serial stream |
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US95362507P | 2007-08-02 | 2007-08-02 | |
US60/953,625 | 2007-08-02 | ||
US12/112,136 | 2008-04-30 | ||
US12/112,152 US8107575B2 (en) | 2007-05-03 | 2008-04-30 | Method and circuit for changing modes without dedicated control pin |
US12/112,136 US8170070B2 (en) | 2007-05-03 | 2008-04-30 | Method and circuit for interleaving, serializing and deserializing camera and keypad data |
US12/112,176 | 2008-04-30 | ||
US12/112,152 | 2008-04-30 | ||
US12/112,176 US8321598B2 (en) | 2007-05-03 | 2008-04-30 | Method and circuit for capturing keypad data serializing/deserializing and regenerating the keypad interface |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2009017703A1 true WO2009017703A1 (en) | 2009-02-05 |
Family
ID=39996622
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2008/009112 WO2009017703A1 (en) | 2007-08-02 | 2008-07-28 | Methodology and circuit for interleaving and serializing/deserializing lcd, camera. keypad and gpio data across a serial stream |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2009017703A1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030217214A1 (en) * | 2002-05-16 | 2003-11-20 | International Business Machines Corporation | Method and apparatus for implementing multiple configurable sub-busses of a point-to-point bus |
US20050231399A1 (en) * | 2004-04-15 | 2005-10-20 | Fowler Michael L | Sending and/or receiving serial data with bit timing and parallel data conversion |
US20060193347A1 (en) * | 2005-02-28 | 2006-08-31 | Samsung Electronics Co., Ltd | Serializer for generating serial clock based on independent clock source and method for serial data transmission |
-
2008
- 2008-07-28 WO PCT/US2008/009112 patent/WO2009017703A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030217214A1 (en) * | 2002-05-16 | 2003-11-20 | International Business Machines Corporation | Method and apparatus for implementing multiple configurable sub-busses of a point-to-point bus |
US20050231399A1 (en) * | 2004-04-15 | 2005-10-20 | Fowler Michael L | Sending and/or receiving serial data with bit timing and parallel data conversion |
US20060193347A1 (en) * | 2005-02-28 | 2006-08-31 | Samsung Electronics Co., Ltd | Serializer for generating serial clock based on independent clock source and method for serial data transmission |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20090037621A1 (en) | Methodology and circuit for interleaving and serializing/deserializing lcd, camera, keypad and gpio data across a serial stream | |
KR100904476B1 (en) | Hybrid parallel/serial bus interface | |
CA2658561C (en) | Low output skew double data rate serial encoder | |
US6247137B1 (en) | Delaying clock and data signals to force synchronous operation in digital systems that determine phase relationships between clocks with related frequencies | |
US7760115B2 (en) | Low power serdes architecture using serial I/O burst gating | |
JP5945812B2 (en) | System for transmitting and receiving video digital signals for "LVDS" type links | |
US6847335B1 (en) | Serial communication circuit with display detector interface bypass circuit | |
JP2009525625A (en) | Equipment and deskew for multiple lanes of serial interconnect | |
US8572447B2 (en) | Circuitry for built-in self-test | |
JP2011109654A (en) | Transmitter-dedicated ic chip having external loopback test function, and external loopback test method using the same | |
US9007357B2 (en) | Methods and apparatus for processing serialized video data for display | |
US8170070B2 (en) | Method and circuit for interleaving, serializing and deserializing camera and keypad data | |
TWI806866B (en) | Circuit device, electronic device, cable harness, and data transfer method | |
KR102006068B1 (en) | Device for converting interface | |
US11122187B2 (en) | Transmitter, receiver, transmitter/receiver, and transmitting/receiving system | |
US8107575B2 (en) | Method and circuit for changing modes without dedicated control pin | |
WO2009017703A1 (en) | Methodology and circuit for interleaving and serializing/deserializing lcd, camera. keypad and gpio data across a serial stream | |
US20030112827A1 (en) | Method and apparatus for deskewing parallel serial data channels using asynchronous elastic buffers | |
EP2930874B1 (en) | Duplex transmission device and switching system thereof | |
US20100067635A1 (en) | Measuring and regenerating a variable pulse width | |
IE981055A1 (en) | Clocking in Electronic Circuits | |
JP2001051026A (en) | Electronic-circuit monitoring apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200880108506.7 Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 08794803 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2010519220 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 20107004438 Country of ref document: KR Kind code of ref document: A |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 08794803 Country of ref document: EP Kind code of ref document: A1 |