I2c Bus Overview
I2c Bus Overview
Philips Semiconductors
Jean Marc Irazabal Technical Marketing Manager for I2C Devices Steve Blozis International Product Manager for I2C Devices
1st Hour
Agenda
Serial Bus Overview I2C Theory Of Operation 2nd Hour Overcoming Previous Limitations I2C Development Tools and Evaluation Board 3rd Hour SMBus and IPMI Overview I2C Device Overview I2C Patent and Legal Information Q&A
Slide speaker notes are included in AN10216 I2C Manual
DesignCon 2003 TecForum I2C Bus Overview
2
st 1
Hour
Co
m m un ic
at io
ns
Co
er m nsu
Au
tive o tom
IEEE1394
SERIAL BUSES
UART SPI
DesignCon 2003 TecForum I2C Bus Overview
In du st
ria l
5
enable R/W
enable R/W
enable R/W
DATA
MASTER
SLAVE 1
SLAVE 2
SLAVE 3
A point to point communication does not require a Select control signal An asynchronous communication does not have a Clock signal Data, Select and R/W signals can share the same line, depending on the protocol Notice that Slave 1 cannot communicate with Slave 2 or 3 (except via the master) Only the master can start communicating. Slaves can only speak when spoken to
DesignCon 2003 TecForum I2C Bus Overview
6
LVTTL RS422/485 PECL LVPECL LVDS I2C I2C SMBus 1394 I2C GTL+
CML
LVT LVC 5V 3.3 V 2.5 V GTL GTLP
Transmission Standards
2500 Data Transfer Rate (Mbps) 655 400
GTLP BTL ETL CML
1394.a
35 10
RS-422 RS-485
0.1
I2C RS-232 RS-423
0.5
10
1000
Data rate (bits / sec) 400k 400k 3.4M 33k 5k 125k 1M 1.5M 1.5/12M 480M 100 to 400M+
Length limiting factor w iring capacitance propagation delays w iring capacitance total capacitance propagation delays cable specs 5 cables linking 6 nodes (5m cable node to node) 16 hops, 4.5M each
Node number limiting factor 400pF max no limit 100pF max load resistance and transceiver current drive bus specs bus and hub specs 6-bit address
CAN 1 w ire CAN differential USB (low -speed, 1.1) USB (full -speed, 1.1) Hi-Speed USB (2.0) IEEE-1394
10
What is UART?
(Universal Asynchronous Receiver Transmitter) Communication standard implemented in the 60s. Simple, universal, well understood and well supported. Slow speed communication standard: up to 1 Mbits/s Asynchronous means that the data clock is not included in the data: Sender and Receiver must agree on timing parameters in advance. Start and Stop bits indicates the data to be sent Parity information can also be sent
0 Start bit 1 2 3 4 5 6 7 Stop bit Parity Information
11
8 Bit Data
UART - Applications
Server Server Processor Processor Digital tt Datacom Datacom r r controller controller x x
t rModem Modem x
WAN application
Serial Interface
Display
Micro Micro Data contr. contr. UART
Address
Memory Memory
Interface to Server
What is SPI?
Serial Peripheral Interface (SPI) is a 4-wire full-duplex synchronous serial data link:
SCLK: Serial Clock MOSI: Master Out Slave In - Data from Master to Slave MISO: Master In Slave Out - Data from Slave to Master SS: Slave Select
Originally developed by Motorola Used for connecting peripherals to each other and to microprocessors Shift register that serially transmits data to other SPI devices Actually a 3 + n wire interface with n = number of devices Only one master active at a time Various Speed transfers (function of the system clock)
DesignCon 2003 TecForum I2C Bus Overview
13
SLAVE 2
SLAVE 3
Simple transfer scheme, 8 or 16 bits Allows many devices to use SPI through the addition of a shift register Full duplex communications Number of wires proportional to the number of devices in the bus
DesignCon 2003 TecForum I2C Bus Overview
14
Filter
Frame
Filter
15
CAN protocol
Start Of Frame Identifier Remote Transmission Request Identifier Extension Data Length Code Data Cyclic Redundancy Check Acknowledge End Of Frame Intermission Frame Space
18
Monitor Host PC
5m
5m
5m 5m
Hub
5m
Device
19
Extreme volumes force down IC and hardware prices Protocol is evolving fast
20
USB OTG (On The Go) Supplement New hardware - smaller 5-pin plugs/sockets Lower power (reduced or no bus-powering)
DesignCon 2003 TecForum I2C Bus Overview
21
What is IEEE1394 ?
A bus standard devised to handle the high data throughput requirements of MPEG-2 and DVD
Video requires constant transfer rates with guaranteed bandwidth Data rates 100, 200, 400 Mbits/sec and looking to 3.2 Gb/s
Also known as Firewire bus (registered trademark of Apple) Automatically re-configures itself as each device is added
True plug & play Hot-plugging of devices allowed
22
1394 Topology
Physical layer Analog interface to the cable Simple repeater Performs bus arbitration
Link layer
Assembles and dis-assembles bus packets Handles response and acknowledgment functions
Host controller
DesignCon 2003 TecForum I2C Bus Overview
No specific wiring or connectors - most often its just PCB tracks Has become a recognised standard throughout our industry and is used now by ALL major IC manufacturers
DesignCon 2003 TecForum I2C Bus Overview
24
The master IC that initiates communication provides the clock signal (SCL)
There is a maximum clock frequency but NO MINIMUM SPEED
DesignCon 2003 TecForum I2C Bus Overview
25
26
CAN
Secure Fast
USB
Fast Plug&Play HW Simple Low cost
SPI
Fast Universally accepted Low cost Large Portfolio
I2C
Simple Well known Universally accepted Plug&Play Large portfolio Cost effective
Powerful master No Plug&Play required HW No Plug&Play SW - Specific drivers required No fixed standard
Limited speed
27
2 IC
Theory Of Operation
28
I2C Introduction
I2C bus = Inter-IC bus Bus developed by Philips in the 80s Simple bi-directional 2-wire bus:
serial data (SDA) serial clock (SCL)
Has become a worldwide industry standard and used by all major IC manufacturers Multi-master capable bus with arbitration feature Master-Slave communication; Two-device only communication Each IC on the bus is identified by its own address code The slave can be a:
receiver-only device transmitter with the capability to both receive and send data
DesignCon 2003 TecForum I2C Bus Overview
29
Fast-Mode
0 to 400 400 300 50 7 and 10
High-SpeedMode
0 to 1700 400 160 10 7 and 10 0 to 3400 100 80
SCL
Open Drain structure (or Open Collector) for both SCL and SDA
10 pF Max
31
START/STOP conditions
Data on SDA must be stable when SCL is High
32
1010 0 1 1 1010A2A1A0R/W
Fixed Hardware Selectable Each device is addressed individually by software
A0 A1 A2
EEPROM
Unique address per device: fully fixed or with a programmable part through hardware pin(s). Programmable pins mean that several same devices can share the same bus Address allocation coordinated by the I2C-bus committee 112 different types of devices max with the 7-bit format (others reserved)
DesignCon 2003 TecForum I2C Bus Overview
33
X X X X X X X R/W A
The 7 bits
10-bit addressing S
1 1 1 1 0 X X R/W A1 X X X X X X X X A2 DATA
XX = the 2 MSBs The 8 remaining More than one device can Only one device will bits acknowledge acknowledge
34
Slave receiver
0 = Write
The master is a MASTER - TRANSMITTER: it transmits both Clock and Data during the all communication
SCL
data
receiver
SDA
transmitter
1 = Read
Each byte is acknowledged by the master device (except the last one, just before the STOP condition)
The master is a MASTER TRANSMITTER then MASTER - RECEIVER: it transmits Clock all the time it sends slave address data and then becomes a receiver
DesignCon 2003 TecForum I2C Bus Overview
35
<
0 = Write
1 = Read Each byte is acknowledged by the master device (except the last one, just before the STOP condition)
< m data bytes > A data data A P
data
Each byte is 0 = Write Each byte is acknowledged acknowledged by the master device by the slave device (except the last one, just before the Re-START condition) DesignCon 2003 TecForum I2C Bus Overview
1 = Read
36
Clock Stretching
- Slave device can hold the CLOCK line LOW when performing other functions - Master can slow down the clock to accommodate slow slaves
DesignCon 2003 TecForum I2C Bus Overview
37
SCL
1 2
4 3
LOW period determined by the longest clock LOW period HIGH period determined by shortest clock HIGH period
DesignCon 2003 TecForum I2C Bus Overview
38
Start command
39
Master
I2C BUS
1) With a Microcontroller with on-chip I2C Interface Bit oriented - CPU is interrupted after every bit transmission (Example: 87LPC76x) Byte oriented - CPU can be interrupted after every byte transmission (Example: 87C552) 2) With ANY microcontroller: 'Bit Banging
The I2C protocol can be emulated bit by bit via any bi-directional open drain port
3) With a microcontroller in conjunction with bus controller like the PCF8584 or PCA9564 parallel to I2C bus interface IC
DesignCon 2003 TecForum I2C Bus Overview
40
V(t) = VDD (1-e -t /RC ) Rising time defined between 30% and 70% Trise = 0.847.RC
41
ACKNOWLEDGE
CLOCK
ARBITRATION
43
nd 2
Hour
45
MASTER
I2C EEPROM 1
I2C EEPROM 2
I2C MULTIPLEXER
MASTER
49
I2C bus
200 pF
200 pF
300 pF
MASTER
I2C MULTIPLEXER
300 pF
100 pF
I2C bus 1
The multiplexer splits the bus in two downstream 200 pF busses + 100 pF upstream
DesignCon 2003 TecForum I2C Bus Overview
50
51
PCA 0 95540
1 INT
Interrupt signals are collected into one signal DesignCon 2003 TecForum I2C Bus Overview
52
Products
# Channels 1 GTL2002 PCA9540 PCA9542/43 PCA9546 PCA9544/45 GTL2010 PCA9548 GTL2000 X X Int
2 4 5 8 11
MASTER
I2C SWITCH
54
An I2C switch can be used to split the I2C bus in several branches that can be isolated if the bus hangs up.
Switches allow the main I2C to be split dynamically in several sub-branches that can be: active all the time deactivated if one device of a particular branch hangs the bus When a malfunctioning sub-branch has been isolated, the other sub branches are still available It is programmable through I2C so no additional pin is required to control it More than one switch can be plugged in the same I2C bus
DesignCon 2003 TecForum I2C Bus Overview
55
56
MASTER
P82 B96
SEGMENT 2
P82 B96
SEGMENT 3
A bus buffer isolates the branch (capacitive isolation) Its power supply is controlled by a bus sensor SDA and SCL are sensed and the sensor generates a timeout when the bus stays low Bus buffer is Hi-Z when power supply is off.
DesignCon 2003 TecForum I2C Bus Overview
57
An I2C demultiplexer can be used to switch from one failing master to its backup.
It allows to have 2 independent masters to control the bus without any fault or system corruption failed master completely isolated from the bus I2C bus is initialized by the demultiplexer before switching from one master to the other one It is programmable through I2C so no additional pin is required to control it More than one demultiplexer can be plugged in the same I2C bus
DesignCon 2003 TecForum I2C Bus Overview
58
Slave
SDA SCL
Slave
Main Master control the I2C bus When it fails, backup master asks to take control of the bus Previous master is then isolated by the multiplexer Downstream bus is initialized (all devices waiting for START condition) Switch to the new master is done Products
Device PCA9541 # of upstream channels 2
59
An I2C bus repeater or an I2C hub can be used to get rid of this limitation
It allows to double the I2C max capacitive load (repeater) or to make it 5 times higher (hub = 5 repeaters) Multi-master capable, voltage level translation All channels can be active at the same time Limitation: Repeater/hub cannot be used in series Products:
Device PCA9515 PC9516 # of repeaters 1 5 # of ENABLE pins 1 4
60
Master
PCA 9515
Hub Hub 1 1
PCA 9516
61
An expandable I2C hub can be used to easily upgrade this type of application
It allows to expand the numbers of hubs without any limit Multi-master capable, voltage level translation All channels can be active at the same time (4 channels per expandable hub can be individually disabled) Products:
Device PCA9518 # of repeaters 5 # of ENABLE pins 4
62
PCA9518 Applications
Hub 4 Hub 3 Hub 2 Hub 1 Master Master Hub 12 Hub 11 Hub 10 Hub Hub 9 9
DesignCon 2003 TecForum I2C Bus Overview
How to accommodate 100 kHz and 400 kHz devices in the same I2C bus?
I2C protocol limitation: in an application where 100 kHz and 400 kHz devices (masters and/or slaves) are present in the same bus, the lowest frequency must be used to guarantee a safe behavior.
An I2C bus repeater can be used to isolate 100 kHz from 400 kHz devices when a 400 kHz communication is required
It allows to easily upgrade applications where legacy 100 kHz I2C devices share bus access with newer 400 kHz I2C devices Each side of the repeater can work with different logic voltage levels Products:
Device # of repeaters # of ENABLE pins PCA9515 1 1 DesignCon 2003 TecForum I2C Bus Overview
64
Master 1 works at 400 kHz and can access 100 & 400 kHz slaves at their maximum speed (100 kHz only for 100 kHz devices) Master 2 works at only 100 kHz PCA9515 is disabled (ENABLE = 0) when Master 1 sends commands at 400 kHz
DesignCon 2003 TecForum I2C Bus Overview
65
An I2C hot swap bus buffer can be used to detect bus idle condition isolate capacitance, and prevent glitching SDA & SCL when inserting new cards into an active backplane.
Repeaters work with the same logic level on each side except the PCA9512 which works with 3.3 V and 5 V logic voltage levels at the same time Products:
Device PCA9511 PCA9512 PCA9513 PCA9514 # of repeaters 1 1 1 1 # of ENABLE pins 1 0 1 1
66
SDA0 READY
SDA1
Card is plugged on the system - Buffer is on Hi-Z state Bus buffer checks the activity on the main I2C bus When the bus is idle, upstream and downstream buses are connected Ready signal informs that both buses are connected together
DesignCon 2003 TecForum I2C Bus Overview
67
How to use a micro-controller without I2C bus or how to develop a dual master application with a single micro-controller?
Some micro-controllers integrates an I2C port, others dont
An I2C bus controller can be used to interface with the micro-controllers parallel port
It generates the I2C commands with the instructions from the micro controllers parallel port (8-bits) It receives the I2C data from the bus and send them to the micro-controller It converts by software any device with a parallel port to an I2C device
69
Master
PCA 9564
SDA SCL
Master
PCA 9564
Products
Voltage range PCF8584 4.5 - 5.5V PCA9564 2.3 - 3.6V w/5V tolerance
Purpose of the Development Tool and I2C Evaluation Board To provide a low cost platform that allows Field Application Engineers, designers and educators to easily test and demonstrate I2C devices in a platform that allows multiple operations to be performed in a setting similar to a real system environment.
72
FEATURES - Converts Personal Computer parallel port to I2C bus master - Simple to use graphical interface for I2C commands - Win-I2CNT software compatible with Windows 95, 98, ME, NT, XP and 2000 - Order kits at www.demoboard.com
DesignCon 2003 TecForum I2C Bus Overview
73
I2C Cable
74
Jumper JP2 I2C Voltage Selection (Bus voltage) Open = 3.3 V bus Closed = 5.0 V bus DesignCon 2003 TecForum I2C Bus Overview
75
PCA9550
PCA9551
PCA9554
PCA9543
PCA9555
PCA9561
PCA9515
P82B96
PCA9501
PCF8582
RJ11
LM75A LM75A
3 3 3
USB A SCL1/SDA1 9V
REGULATORS
SCL2/SDA2
USB B SCL0/SDA0
3.3 V 5.0 V
12 I2C devices on the evaluation board 2 evaluation boards can be daisy chained without any address conflict Boards cascadable through I2C connectors, RJ11 phone cable or USB cable On board regulators
DesignCon 2003 TecForum I2C Bus Overview
76
I2C Indicates the clock (SCL) frequency Indicates that I2C communications can start If problem, message WIN-I2C hardware not detected displayed Action: check Adapter Card DesignCon 2003 TecForum I2C Bus Overview
Help Hints
Parallel Port
77
GPIO programming
EEPROM Read / Write Options Set the all EEPROM to the same value DesignCon 2003 TecForum I2C Bus Overview
EEPROM programming
78
Interrupt Status
79
LED drivers states Register values Device address Auto Write Feature Read / Write Operation Frequencies and duty cycles programming DesignCon 2003 TecForum I2C Bus Overview
80
Device address Input Register Configuratio n Register Polarity Register Register Programming Read / Write Operation (specific register)
81
Device Address Register Programming Configuration Registers Read / Write Operation (specific Register) Output Registers
82
Device Address
EEPROMs Read / Write Operation MUX_IN Read Operation Data (EEPROM, MUX_IN) Multiplexing
Note: MUX_IN, MUX_SELECT and WP pins are not controlled by the Software
DesignCon 2003 TecForum I2C Bus Overview
83
Device address
Device modes
Temperature Monitoring Programming frequency DesignCon 2003 TecForum I2C Bus Overview
Start Monitoring
84
P82B96
Bus buffer - No software to control it I2C can come from the Port Adapter + USB Adapter through the USB cable I2C can be sent through RJ11 and USB cables to others boards 5.0 V and 9.0 V power supplies
DesignCon 2003 TecForum I2C Bus Overview
85
Commands Programming
Sequencer Send Sequence selected programming message DesignCon 2003 TecForum I2C Bus Overview
88
rd 3
Hour
90
Low Power version of the SMBus Specification only The SMBus specification can be found on SMBus web site at www.SMBus.org
DesignCon 2003 TecForum I2C Bus Overview
93
94
IPMI Details
Defines a standardized interface to intelligent platform management hardware Prediction and early monitoring of hardware failures Diagnosis of hardware problems Automatic recovery and restoration measures after failure Permanent availability management Facilitate management and recovery Autonomous Management Functions: Monitoring, Event Logging, Platform Inventory, Remote Recovery Implemented using Autonomous Management Hardware: designed for Microcontrollers based implementations Hardware implementation is isolated from software implementation New sensors and events can then be added without any software changes
DesignCon 2003 TecForum I2C Bus Overview
99
IPMB
BMC
100
PICMG
PICMG (PCI Industrial Computer Manufacturers Group) is a consortium of over 600 companies who collaboratively develop open specifications for high performance telecommunications and industrial computing applications. PICMG specifications include CompactPCI for Eurocard, rackmount applications and PCI/ISA for passive backplane, standard format cards. Recently, PICMG announced it was beginning development of a new series of specifications, called AdvancedTCA, for next-generation telecommunications equipment, with a new form factor and based on switched fabric architectures More information - www.picmg.org
103
Comments No IPMB Single hot swap IPMB optional Dual redundant hot swap IPMB mandatory
PICMG 2.0: CompactPCI Core PICMG 2.9: System Management PICMG 3.0: AdvancedTCA Core 3.1 Ethernet Star (1000BX and XAUI) FC-PH links mixed with 1000BX 3.2 InfiniBand Star & Mesh 3.3 StarFabric 3.4 PCI Express
DesignCon 2003 TecForum I2C Bus Overview
104
PCA9511
PCA9511
Dual, redundant -48VDC power distribution to each card w. high current, bladed power connector High frequency differential data connectors Robust keying block Two alignment pins Robust, redundant system management 8U x 280mm card size 1.2 (6HP) pitch Flexible rear I/O connector area
105
PCA9511 PCA9511
PCA9511 PCA9511 PCA9511 PCA9511 PCA9511 PCA9511 PCA9511 PCA9511 PCA9511 PCA9511 PCA9511 PCA9511 PCA9511 PCA9511 PCA9511 PCA9511
106
VME
Motorola, Mostek and Signetics cooperated to define the standard Mechanical standard based on the Eurocard format. Large body of mechanical hardware readily available Pin and socket connector scheme is more resilient to mechanical wear than older printed circuit board edge connectors. Hundreds of component manufacturers support applications such as industrial controls, military, telecommunications, office automation and instrumentation systems.
DesignCon 2003 TecForum I2C Bus Overview
www.vita.com
107
2 IC
Device Overview
109
110
TV Reception
The SAA56xx family of microcontrollers are a derivative of the Philips industry-standard 80C51 microcontroller and are intended for use as the central control mechanism in a television receiver. They provide control functions for the television system, OSD and incorporate an integrated Data Capture and display function for either Teletext or Closed Caption. Additional features over the SAA55xx family have been included, e.g. 100/120 Hz (2H/2V only) display timing modes, two page operation (50/60 Hz mode for 16:9, 4:3), higher frequency microcontroller, increased character storage, more 80C51 peripherals and a larger Display memory. For CC operation, only a 50/60 Hz display option is available. Byte level IC-bus up to 400 kHz dual port I/O
DesignCon 2003 TecForum I2C Bus Overview
112
Radio Reception
The TEA6845H is a single IC with car radio tuner for AM and FM intended for microcontroller tuning with the ICbus. It provides the following functions:
AM double conversion receiver for LW, MW and SW (31 m, 41 m and 49 m bands) with IF1 = 10.7 MHz and IF2 = 450 kHz FM single conversion receiver with integrated image rejection for IF = 10.7 MHz capable of selecting US FM, US weather, Europe FM, East Europe FM and Japan FM bands.
DesignCon 2003 TecForum I2C Bus Overview
113
Audio Processing
The SAA7740H is a functionspecific digital signal processor. The device is capable of performing processing for listening-environments such as equalization, hall-effects, reverberation, surround-sound and digital volume/balance control. The SAA7740H can also be reconfigured (in a dual and quad filter mode) so that it can be used as a digital filter with programmable characteristics. The SAA7740H realizes most functions directly in hardware. The flexibility exists in the possibility to download function parameters, correction coefficients and various configurations from a host microcontroller. The parameters can be passed in real time and all functions can be switched on simultaneously. The SAA7740H accepts 2 digital stereo signals in the I2S-bus format at audio sampling frequency (fast ) and provides 2 digital stereo outputs.
DesignCon 2003 TecForum I2C Bus Overview
114
Modem and musical tone generation Telephone tone dialing DTMF > Dual Tone Multiple Frequency Low baud rate modem
DesignCon 2003 TecForum I2C Bus Overview
115
Row driver
Supply
Column driver
The LCD Display driver is a complex device and is an example of how "complete" a system an I2C chip can be it generates the LCD voltages, adjusts the contrast, temperature compensates, stores the messages, has CGROM and RAM etc etc.
DesignCon 2003 TecForum I2C Bus Overview
116
Supply
Sequencer
Backplane drivers
Segment drivers
The LCD Segment driver is a less complex LCD driver (e.g., just a segment driver).
DesignCon 2003 TecForum I2C Bus Overview
117
Real time clocks and event counters count the passage of time and act as a chronometer They are used in applications such as:
periodic alarms for safety applications system energy conservation time and date stamp for point of sales terminals or bank machines
Interrupt
119
Transfers keyboard, ACPI Power switch, keypad, switch or other inputs to microcontroller via I2C bus Expand microcontroller via I2C bus where I/O can be located near the source or on various cards Use outputs to drive LEDs, sensors, fans, enable and other input pins, relays and timers Quasi outputs can be used as Input or Output without the use of a configuration register.
DesignCon 2003 TecForum I2C Bus Overview
120
Latches
Multiple writes are possible during the same communication Multiple reads are possible during the same communication
Important to know
At power-up, all the I/Os are HIGH; Only a current source to VDD is active An additional strong pull-up resistors allows fast rising edges I/Os should be HIGH before using them as Inputs
DesignCon 2003 TecForum I2C Bus Overview
121
Blank
122
1 1 0 1 1 0 0 1
125
Quasi Output (20-25 ma sink and 100 uA source) 8 PCF8574/74A PCA9500/58 PCA9501 16 PCF8575/75C -
# of Outputs
Advantages
Number of I/O scalable Programmable I2C address allowing more than one device in the bus Interrupt output to monitor changes in the inputs Software controlling the device(s) easy to implement
DesignCon 2003 TecForum I2C Bus Overview
126
I2C/SMBus is not tied up by sending repeated transmissions to turn LEDs on and then off to blink LEDs. Frees up the micros timer Continues to blink LEDs even when no longer connected to bus master Can be used to cycle relays and timers Higher frequency rate allows LEDs to be dimmed by varying the duty cycle for Red/Green/Blue color mixing applications.
DesignCon 2003 TecForum I2C Bus Overview
127
Oscillator
255 (FFH) 6.4 s 0.4 % 255 (FFH) 1.6 s 99.6 % Blinkers Dimmers
ON
PSC0 + 1 160 PWM1 256
OFF
PSC0 + 1 40 256 - PWM1 256
ON
OFF
0 PWM1 0 0 0 0 0 0 0 PSC1
ON
PSC1 + 1 160
OFF
PSC1 + 1 40
ON
ON = OFF =
OFF ON
LED ON LED OFF
0 0Selector 0 0 LED
PSC0 pointer = 01H for 2, 4 and 8-bit devices PSC0 pointer = 02H for the 16-bit devices
LEDSEL0 pointer = 05H for 2, 4 and 8-bit devices LEDSEL0 pointer = 06H for the 16-bit devices Only the 16-bit devices have 4 LED selector registers (8-bit devices have 2 registers, 2 and 4-bit devices have only one)
DesignCon 2003 TecForum I2C Bus Overview
129
LED Blinkers
Blinking between 40 times a second to once every 6.4 seconds
# of Outputs 2 4 8 16
LED Dimmers
Blinking between 160 times a second to once every 1.6 seconds. Can be used for dimming/brightness or PWM for stepper motor control
131
Non-volatile EEPROM retains values when the device is powered down Used for Speed Step notebook processor voltage changes when on AC/battery power or when in deep sleep mode Also used as replacement for jumpers or DIP switches since there is no requirement to open the equipment cabinet to modify the jumpers/DIP switch settings
DesignCon 2003 TecForum I2C Bus Overview
132
Mux Select
Mode Selection
0 0 0 0
0 0 0 0
MUX
0HARDWARE 0 0 0 Value 0 0
PCA9561
6 Bits
DesignCon 2003 TecForum I2C Bus Overview
133
EEPROM 2
EEPROM 3
I2C Multiplexers
I2C Bus I2C Controller
OFF
Interrupt Out
FEATURES -Fan out main I2C/SMBus to multiple channels -Select off or individual downstream channel -I2C/SMBus commands used to select channel -Power On Reset (POR) opens all channels -Interrupt logic provides flag to master for system monitoring.
KEY POINTS -Many specialized devices have only one I2C address and sometimes many are needed in the same system. -Multiplexers allow the master to communicate to one downstream channel at a time but dont isolate the bus capacitance -Other Applications include sub-branch isolation.
135
I2C Switches
I2C Bus Reset Interrupt Out
OFF
I2C Controller
OFF
Switches allow the master to communicate to one channel or multiple downstream channels at a time Switches dont isolate the bus capacitance Other Applications include: sub-branch isolation and I2C/SMBus level shifting (1.8, 2.5, 3.3 or 5.0 V)
DesignCon 2003 TecForum I2C Bus Overview
136
Once the downstream channel selection is done, there is no need to access (Write) the PCA954x Multiplexer or Switch The device will keep the configuration until a new configuration is required (New Write operation on the PCA954x)
DesignCon 2003 TecForum I2C Bus Overview
137
Interrupt In Reset
Master Selector selects from two I2C/SMBus masters to a single channel I2C/SMBus commands used to select master Interrupt outputs report demultiplexer status Sends 9 clock pulses/stop to clear slaves prior to transferring master
DesignCon 2003 TecForum I2C Bus Overview
138
Master 0
Master 1
139
Master 1
Master 1
Master 1
Master 1
PCA9541
PCA9541
PCA9541
PCA9541
Master 0
Master 0
Master 0
Master 0
140
GTL2002
GND GREF
VCORE
SREF DREF S1 S2 D1 D2
VCC
CPU I/O
Chipset I/O
Voltage translation between any voltage from 1.0 V to 5.0 V Bi-directional with no direction pin Reference voltage clamps the input voltage with low propagation delay Used for bi-directional translation of I2C buses at 3.3 V and/or 5 V to the processor I2C port at 1.2 V or 1.5 V or any voltage in-between BiCMOS process provides excellent ESD performance
141
SCL0
400 pF
SCL1 SDA1
400 pF
400 pF
400 pF
SDA0
Enable
I2C Bus Repeater PCA9515
400 pF
400 pF
Bi-directional I2C drivers isolate the I2C bus capacitance to each segment. Multi-master capable (e.g., repeater transparent to bus arbitration and contention protocols) with only one repeater delay between segments. Segments can be individually isolated Voltage Level Translation 3.3 V or 5 V voltage levels allowed on the segment
DesignCon 2003 TecForum I2C Bus Overview
142
Allows I/O card insertion into a live backplane without corruption of busses Control circuitry connects card after stop bit or idle occurs on the backplane Bi-directional buffering isolates capacitance, allows 400 pF on either side Rise time accelerator allows use of weaker DC pull-up currents while still meeting rise time requirements SDA and SCL lines are precharged to 1V, minimizing current required to charge chip parasitic capacitance
DesignCon 2003 TecForum I2C Bus Overview
143
Note: Schottky diode or Zener clamps may be needed to limit spurious signals on very long wiring
KEY POINTS High drive outputs are used to extend the reach of the I2C bus and exceed the 400 pF/system limit. Possible distances range from 50 meters at 85kHz to 1km at 31kHz over twisted-pair phone cable. Bus Buffer has split high drive outputs allowing differential transmission or Dual Bi-Directional Bus Buffer Opto-isolation of the I2C Bus.
P82B96
144
SDA P82B96
Link parking meters and pay stations
P82B96
SDA/SCL
P82B96
SDA/SCL
P82B96
SDA/SCL
P82B96
SCL SDA
------
Factory automation Access/alarm systems Video, LCD & LED display signs Hotel/motel management systems Monitor emergency lighting/exit signs
------
145
Long cables
SCL 3.3-5V 12V
Bi-directional data streams Special logic levels (I2C compatible 5V) I2C currents (3mA)
Simply link the pins for Bi-directional data streams Conventional CMOS logic levels (2-15V) Higher current option, up to 30mA static sink
Twisted-pair telephone wires, Re-combine to bi-directional I2C USB or flat ribbon cables 2V through 12V logic levels Able to send VCC and GND 100 meters at 70kHz NO LIMIT to the number of connected devices ! Convert the logic signal levels back to I2C compatible Hot Swap Protection
146
Vcc 1
Vcc 2
SCL
SDA
Bi-directional data streams Special logic levels ( I2C compatible 5V) I2C currents (3mA)
Low cost Optos can be directly driven (10-30mA) VCC 1 = 2 to 12V Higher current option, up to 30mA static sink
Re-combined to I2C
Controlling equipment on phone lines AC Mains switches, lamp dimmers Isolating medical equipment
147
Chip Enable Write Strobe Read Strobe Reset Address Inputs Interrupt Request Data (8-bits)
Controls all the I2C bus specific sequences, protocol, arbitration and timing Serves as an interface between most standard parallel-bus microcontrollers/ microprocessors and the serial I2C bus. Allows the parallel bus system to communicate with the I2C bus
DesignCon 2003 TecForum I2C Bus Overview
149
Microcontroller
I2C Interface
Digital Potentiometers
DS1846 nonvolatile (NV) tripotentiometer, memory, and MicroMonitor. The DS1846 is a highly integrated chip that combines three linear-taper potentiometers, 256 bytes of EEPROM memory, and a MicroMonitor. The part communicates over the industry-standard 2-wire interface and is available in a 20-pin TSSOP. The DS1846 is optimized for use in a variety of embedded systems where microprocessor supervisory, NV storage, and control of analog functions are required. Common applications include gigabit transceiver modules, portable instrumentation, PDAs, cell phones, and a variety of personal multimedia products.
DesignCon 2003 TecForum I2C Bus Overview
150
These devices translate between digital information communicated via the I2C bus and analog information measured by a voltage. Analog to digital conversion is used for measurement of the size of a physical quantity (temperature, pressure ), proportional control or transformation of physical amplitudes into numerical values for calculation. Digital to analog conversion is used for creation of particular control voltages to control DC motors or LCD contrast.
151
Blank
152
Standard Sizes
128 x 8-byte (1 kbit) 256 x 8-byte (2 kbit) 512 x 8-byte (4 kbit) 1024 x 8-byte (8 kbit) 2048 x 8-byte (16 kbit) 4096 x 8-byte (32 kbit) 8192 x 8-byte (64 kbit) 16384 x 8-byte (128 kbit) 32768 x 8-byte (256 kbit) 65536 x 8-byte (512 kbit) 24C01 24C02 24C04 24C08 24C16 24C32 24C64 24C128 24C256 24C512
RAM
Address pointer
256 I2C-bus Byte Sub address interface Sub decoder E2PROM address decoder Sub address decoder
IC bus is used to read and write information to and from the memory Electrically Erasable Programmable Read Only Memory 1,000,000 write cycles, unlimited read cycles 10 year data retention
DesignCon 2003 TecForum I2C Bus Overview
153
Digital Temperature Sensor and Thermal I2C Temperature Monitor NE1617A NE1618 Watchdog LM75A I2C Temperature and Voltage Monitor(Heceta4) NE1619
Sense temperature and/or monitor voltage via IC Remote sensor can be internal to microprocessor
DesignCon 2003 TecForum I2C Bus Overview
154
I2C Microcontroller
Ports 0, 1, 2, 3 8K ISP 512B 768B IAP Data SRAM Flash EEPROM Timer 0/1 16-bit
Analog Comparators
The master can be either a bus controller or controller and provides the brains behind the I2C bus operation. A bus controller adds I2C bus capability to a regular controller without I2C, or to add more I2C ports to controllers already equipped with an I2C port such as the: P87LPC76x 100 kHz I2C P89C55x 100 kHz I2C P89C65x 100 kHz I2C P89C66x 100 kHz I2C P89LPC932 400 kHz I2C
155
600% Accelerated C51 Core Keypad/ Pattern Match Interrupt Internal 2.5% 7.3728 MHz RC Oscillator
Power Management, RTC, WDT, power-on-reset, brownout detect 32xPLL 16-bit PWM CCU Enh. UART I2C SPI
Microcontrollers with Multiple Serial ports can convert from: I2C to UART/RS232 LPC76x, 89C66x and 89LPC9xx I2C to SPI - P87C51MX and 89LPC9xx family I2C to CAN - 8 bit P87C591 and 16 bit PXA-C37
DesignCon 2003 TecForum I2C Bus Overview
2 IC