SlideShare a Scribd company logo
1 of 21
I2C - Inter Integrated Circuit
G.Sunodh Kumar
Design Verification Enginner
I2C
d
• I2C is Serial Communication Protocol & data transfered bit by bit
• It was first developed by Philips Semiconductors
• It provides the good support to slow devices like EEPROM,ADC..
• Additionally, an I2C bus is used in the various control architecture, for
example, SMBus (System Management Bus), PMBus (Power Management
Bus), IPMI (Intelligent Platform Management Interface) etc.
• Speed : Mode Baud Rate
Standard Mode 100 kbps
Fast Mode 400 kbps
High Speed Mode 3.4 Mbps
Ultra Fast Mode 5 Mbps
• It support Single Master - Multi Slave & Multi Master - Multi Slave
Electrical Characteristics
d
• I2C uses an open-drain/open-collector with an input buffer on the same line, which
allows a single data line to be used for bidirectional data flow
• Another advantage is connecting multiple Open
Collector outputs together in single line results in
“Wired ANDed”(For Clock Synchronization &
Stretching)
• Pull-up resistor on the line is responsible for pulling
the bus voltage up to the power rail. this means that the
bus will never run into a communication issue where
one device may try to transmit a high, and another
transmits a low, causing a short (power rail to ground).
I2C requires it for Aribitraction
I2C Bus Features
d
• In I2C only two buses are required for the communication,
• Serial data bus (SDA)
• Serial clock bus (SCL).
• Each Salve has unique address to communicate with a master.
• In I2C, Alway’s communication is started by the master.
• Ability of the arbitration and collision detection.
• I2C is the 8-bit oriented serial bidirectional communication with
different speed mode in I2C
• It i worked in Half-Duplex mode
Data Frame overview of I2C protocol
• With I2C, data is transferred in messages. Messages are broken up into frames of data.
• Each message has an address frame that contains the binary address of the slave, and
one or more data frames that contain the data being transmitted.
• The message also includes start and stop conditions, read/write bits, and ACK/NACK
bits between each data frame
d
Data Frame overview of I2C protocol
k
• Start Condition: SDA line switches from a high voltage to low voltage level before
the SCL line switches from high to low.
• Stop Condition: SDA line switches from a low voltage to high voltage level before
the SCL line switches from low to high.
• A START and STOP condition always asserted by the master.
Address R/W Description
0000 000 0 General call address
0000 000 1 Start byte
0000 001 x CBUS address
0000 010 x Reserved for different bus formats
0000 011 0 Reserved
0000 1xx x High speed mode
0000 0xx x 10-bit address
0000 1xx X Reserved
Special addresses used in the I2C network
k
• In Slave address bits are used to address a specific slave device on the bus. 7 bit
address let the master to address maximum of 128 slaves on the bus. Although address
0000 000 is reserved for general call and all address of the format 1111 xxx are
reserved in many devices. That means 119 devices can share an I2C bus. In I2C bus the
MSB of the address is transmitted first.
I2C Transcation - Data Transfer Sequence
s
• Data validity
The data on the SDA line must be stable during the HIGH period of the clock. The HIGH
or LOW state of the data line can only change when the clock signal on the SCL line is
LOW,One clock pulse is generated for each data bit transferred.
Data Frame of I2C protocol
k
• Repeat Start Condition
In a multi-master configuration, there is the possibility for the master to own the
bus in order to make several transactions without being interrupted by another master. In
this case is used what is called a Repeated START condition.
Acknowledgement Scheme in I2C protocol
k
Below are some scenario, where NACK bit is generated.
• When the receiver is unable to receive or transmit the data, in that situation it
generates a NACK bit to stop the communication.
• During the communication, if the receiver gets any data or commands which are not
understood by the receiver then it generates a NACK bit.
• During the transfer, if the receiver performs any real-time operation and not able to
communicate with master then assert a NACK bit.
• When Master is a receiver and reads the data from the slave, then after the reading of
whole data it asserts a NACK bit on data lines to stop the communication.
• If there is no device present in the I2c bus of the same address which is transmitted by
the master, then the master will not get the acknowledge by any slave and treat this
situation as NACK.
I2C Transcation - Data Transfer from Master to Slave
d
• A master device sends the sequence S ADDR W and then waits for an acknowledge bit (A)
from the slave which the slave will only generate if its internal address matches the value
sent by the master. If this happens then the master sends DATA and waits for acknowledge
(A) from the slave. The master completes the byte transfer by generating a stop bit (P) (or
repeated start).
I2C Transcation - Data Transfer from Slave to Master
d
• A similar process happens when a master reads from the slave but in this case, instead of
W, R is sent. After the data is transmitted from the slave to the master the master sends the
acknowledge (A). If instead the master does not want any more data it must send a not-
acknowledge which indicates to the slave that it should release the bus. This lets the master
send the STOP or repeated START signal.
Clock Stretching in I2C protocol
k
• One of the features of the I²C protocol is clock stretching. It is a kind of flow control.
If an addressed slave device is not ready to process more data it will stretch the clock
by holding the clock line (SCL) low after receiving (or sending) a bit of data so that
the master will not be able to raise the clock line (because devices are wire-ANDed)
and will wait until the slave releases the SCL line to show it is ready for the next bit.
Clock Synchronization in I2C protocol
k
• I2c is synchronous communication, in which clock is always generated by the master
and this clock is shared by both master and slave.
• In the case of multi-master, all master generate their own SCL clock, hence it is
necessary that clock of all master should be synchronized. In the I2C, this clock
synchronization is done by Wired ANDed logic.
Aribitraction in I2C protocol
k
This diagram conveys the basis of I2C arbitration; the process occurs as follows:
• Both masters generate a start bit and proceed with their transmissions.
• If the masters happen to choose the same logic levels, nothing happens.
• As soon as the masters attempt to impose different logic levels, the master driving the
signal low is proclaimed the winner; the loser detects the logic mismatch and
abandons its transmission.
Aribitraction in I2C protocol
k
Take a moment to appreciate the simplicity and efficacy of this arrangement:
• The winner continues its transmission without interruption—no corrupted data, no
driver contention, no need to restart the transaction.
• Theoretically the loser could monitor the slave address during the arbitration process
and actually make a proper response if it happens to be the addressed slave.
• If the competing masters are both requesting data from the same slave, the arbitration
process does not unnecessarily interrupt either transaction—no mismatch will be
detected, and the slave will output its data to the bus such that multiple masters can
receive it.
Advantages of I2C communication protocol
k
• It is the synchronous communication protocol, so no need of precise oscillators for the
master and slave.
• It requires only two wire, one wire for the data (SDA) and other wire for the clock
(SCL).
• It provides the flexibility to the user to select the transmission rate as per the
requirements.
• In I2C Bus, each device on the bus is independently addressable.
• It follows the master and slave relationships.
• It has the capability to handle the multiple masters and multiple slaves on the I2C Bus.
• I2C has some important features like arbitration, clock synchronization, and clock
stretching.
• I2C provide ACK/NACK (acknowledgment/ Not-acknowledgement) features which
provide the help in error handling.
Some important limitation of I2C communication protocol
k
• It consumes more power than other serial communication busses due to open-drain
topology.
• It is good only for the short distance.
• I2C protocol has some limitation for the number of slaves, the number of the slave
depends on the capacitance of the I2C bus.
• It only provides few limited communication speed like 100 kbit/s,400 kbit/s etc.
• In I2c, devices can set their communication speed, slower operational devices can
delay the operation of faster speed devices.
• The Size of the data frame is limited to 8 bits
Reference :
• https://aticleworld.com/i2c-bus-protocol-and-interface/
• http://karuppuswamy.com/wordpress/2015/06/24/what-is-open-collector-output-pull-
uppull-down-resistor-and-tri-state-output/
• http://www.ti.com/lit/an/slva704/slva704.pdf
• https://www.artekit.eu/i2c-communication-protocol/
• https://www.best-microcontroller-projects.com/i2c-tutorial.html
Thank You

More Related Content

What's hot (20)

I2C BUS PROTOCOL
I2C BUS PROTOCOLI2C BUS PROTOCOL
I2C BUS PROTOCOL
 
I2 c bus
I2 c busI2 c bus
I2 c bus
 
Serial peripheral Interface - Embedded System Protocol
Serial peripheral Interface - Embedded System ProtocolSerial peripheral Interface - Embedded System Protocol
Serial peripheral Interface - Embedded System Protocol
 
SPI Protocol
SPI ProtocolSPI Protocol
SPI Protocol
 
Serial Peripheral Interface(SPI)
Serial Peripheral Interface(SPI)Serial Peripheral Interface(SPI)
Serial Peripheral Interface(SPI)
 
SPI Bus Protocol
SPI Bus ProtocolSPI Bus Protocol
SPI Bus Protocol
 
I2C
I2CI2C
I2C
 
Uart
UartUart
Uart
 
axi protocol
axi protocolaxi protocol
axi protocol
 
APB protocol v1.0
APB protocol v1.0APB protocol v1.0
APB protocol v1.0
 
AHB To APB BRIDGE.pptx
AHB To APB BRIDGE.pptxAHB To APB BRIDGE.pptx
AHB To APB BRIDGE.pptx
 
I2C
I2CI2C
I2C
 
Serial Peripheral Interface
Serial Peripheral InterfaceSerial Peripheral Interface
Serial Peripheral Interface
 
I2C BUS
I2C BUSI2C BUS
I2C BUS
 
The I2C Interface
The I2C InterfaceThe I2C Interface
The I2C Interface
 
Pcie basic
Pcie basicPcie basic
Pcie basic
 
AMBA Ahb 2.0
AMBA Ahb 2.0AMBA Ahb 2.0
AMBA Ahb 2.0
 
I2C-Bus Design and Verification Specs
I2C-Bus Design and Verification SpecsI2C-Bus Design and Verification Specs
I2C-Bus Design and Verification Specs
 
I2 c
I2 cI2 c
I2 c
 
Advance Peripheral Bus
Advance Peripheral Bus Advance Peripheral Bus
Advance Peripheral Bus
 

Similar to I2C introduction

communication interfaces-Embedded real time systems
communication interfaces-Embedded real time systemscommunication interfaces-Embedded real time systems
communication interfaces-Embedded real time systemsRaghunath reddy
 
Inter intergrated circuits-communication protocol
Inter intergrated circuits-communication protocolInter intergrated circuits-communication protocol
Inter intergrated circuits-communication protocolRevathi Subramaniam
 
Raspberry Pi - Lecture 3 Embedded Communication Protocols
Raspberry Pi - Lecture 3 Embedded Communication ProtocolsRaspberry Pi - Lecture 3 Embedded Communication Protocols
Raspberry Pi - Lecture 3 Embedded Communication ProtocolsMohamed Abdallah
 
Peripherals and interfacing
Peripherals  and interfacingPeripherals  and interfacing
Peripherals and interfacingRAMPRAKASHT1
 
An Implementation of I2C Slave Interface using Verilog HDL
An Implementation of I2C Slave Interface using Verilog HDLAn Implementation of I2C Slave Interface using Verilog HDL
An Implementation of I2C Slave Interface using Verilog HDLIJMER
 
Slow peripheral interfaces (i2 c spi uart)
Slow peripheral interfaces (i2 c  spi uart)Slow peripheral interfaces (i2 c  spi uart)
Slow peripheral interfaces (i2 c spi uart)PREMAL GAJJAR
 
I2C protocol and DS1307 RTC interfacing
I2C protocol and DS1307 RTC interfacingI2C protocol and DS1307 RTC interfacing
I2C protocol and DS1307 RTC interfacingBhargav Kakadiya
 
Implementation of I2C Master Bus Protocol on FPGA
Implementation of I2C Master Bus Protocol on FPGAImplementation of I2C Master Bus Protocol on FPGA
Implementation of I2C Master Bus Protocol on FPGAIJERA Editor
 
serial_busses_i2c.pptx
serial_busses_i2c.pptxserial_busses_i2c.pptx
serial_busses_i2c.pptxSKUP1
 
Part-2: Mastering microcontroller with embedded driver development
Part-2: Mastering microcontroller with embedded driver developmentPart-2: Mastering microcontroller with embedded driver development
Part-2: Mastering microcontroller with embedded driver developmentFastBit Embedded Brain Academy
 
Embedded networking
Embedded networkingEmbedded networking
Embedded networkingArul Kumar
 
Networks-part17-Bridges-RP1.pptjwhwhsjshh
Networks-part17-Bridges-RP1.pptjwhwhsjshhNetworks-part17-Bridges-RP1.pptjwhwhsjshh
Networks-part17-Bridges-RP1.pptjwhwhsjshhVijayKaran7
 
UNI T 6- SPI_I2C_Lecture8.pptx
UNI                    T 6- SPI_I2C_Lecture8.pptxUNI                    T 6- SPI_I2C_Lecture8.pptx
UNI T 6- SPI_I2C_Lecture8.pptxnaveen088888
 
Application Report On Stellaris To Dac5571(I2c)
Application Report On Stellaris To Dac5571(I2c)Application Report On Stellaris To Dac5571(I2c)
Application Report On Stellaris To Dac5571(I2c)Chiu-Hao Chen (Ted)
 

Similar to I2C introduction (20)

communication interfaces-Embedded real time systems
communication interfaces-Embedded real time systemscommunication interfaces-Embedded real time systems
communication interfaces-Embedded real time systems
 
Inter intergrated circuits-communication protocol
Inter intergrated circuits-communication protocolInter intergrated circuits-communication protocol
Inter intergrated circuits-communication protocol
 
Raspberry Pi - Lecture 3 Embedded Communication Protocols
Raspberry Pi - Lecture 3 Embedded Communication ProtocolsRaspberry Pi - Lecture 3 Embedded Communication Protocols
Raspberry Pi - Lecture 3 Embedded Communication Protocols
 
Peripherals and interfacing
Peripherals  and interfacingPeripherals  and interfacing
Peripherals and interfacing
 
COM_BASIC.pptx
COM_BASIC.pptxCOM_BASIC.pptx
COM_BASIC.pptx
 
An Implementation of I2C Slave Interface using Verilog HDL
An Implementation of I2C Slave Interface using Verilog HDLAn Implementation of I2C Slave Interface using Verilog HDL
An Implementation of I2C Slave Interface using Verilog HDL
 
I2 c communication protocol
I2 c communication protocolI2 c communication protocol
I2 c communication protocol
 
Slow peripheral interfaces (i2 c spi uart)
Slow peripheral interfaces (i2 c  spi uart)Slow peripheral interfaces (i2 c  spi uart)
Slow peripheral interfaces (i2 c spi uart)
 
I2C protocol and DS1307 RTC interfacing
I2C protocol and DS1307 RTC interfacingI2C protocol and DS1307 RTC interfacing
I2C protocol and DS1307 RTC interfacing
 
Implementation of I2C Master Bus Protocol on FPGA
Implementation of I2C Master Bus Protocol on FPGAImplementation of I2C Master Bus Protocol on FPGA
Implementation of I2C Master Bus Protocol on FPGA
 
Serial Busses.pptx
Serial Busses.pptxSerial Busses.pptx
Serial Busses.pptx
 
serial_busses_i2c.pptx
serial_busses_i2c.pptxserial_busses_i2c.pptx
serial_busses_i2c.pptx
 
I2C
I2CI2C
I2C
 
I2C PRESENTATION.PPT
I2C PRESENTATION.PPTI2C PRESENTATION.PPT
I2C PRESENTATION.PPT
 
Part-2: Mastering microcontroller with embedded driver development
Part-2: Mastering microcontroller with embedded driver developmentPart-2: Mastering microcontroller with embedded driver development
Part-2: Mastering microcontroller with embedded driver development
 
Embedded networking
Embedded networkingEmbedded networking
Embedded networking
 
Networks-part17-Bridges-RP1.pptjwhwhsjshh
Networks-part17-Bridges-RP1.pptjwhwhsjshhNetworks-part17-Bridges-RP1.pptjwhwhsjshh
Networks-part17-Bridges-RP1.pptjwhwhsjshh
 
UNI T 6- SPI_I2C_Lecture8.pptx
UNI                    T 6- SPI_I2C_Lecture8.pptxUNI                    T 6- SPI_I2C_Lecture8.pptx
UNI T 6- SPI_I2C_Lecture8.pptx
 
Application Report On Stellaris To Dac5571(I2c)
Application Report On Stellaris To Dac5571(I2c)Application Report On Stellaris To Dac5571(I2c)
Application Report On Stellaris To Dac5571(I2c)
 
Usart 8251
Usart 8251Usart 8251
Usart 8251
 

More from SUNODH GARLAPATI

Low power in vlsi with upf basics part 2
Low power in vlsi with upf basics part 2Low power in vlsi with upf basics part 2
Low power in vlsi with upf basics part 2SUNODH GARLAPATI
 
Low power in vlsi with upf basics part 1
Low power in vlsi with upf basics part 1Low power in vlsi with upf basics part 1
Low power in vlsi with upf basics part 1SUNODH GARLAPATI
 
Difference between PCI PCI-X PCIe
Difference between PCI PCI-X PCIeDifference between PCI PCI-X PCIe
Difference between PCI PCI-X PCIeSUNODH GARLAPATI
 
Cyber threads and its types
Cyber threads and its typesCyber threads and its types
Cyber threads and its typesSUNODH GARLAPATI
 
Ppt of first order differenatiol equation
Ppt of first order differenatiol equationPpt of first order differenatiol equation
Ppt of first order differenatiol equationSUNODH GARLAPATI
 

More from SUNODH GARLAPATI (6)

Low power in vlsi with upf basics part 2
Low power in vlsi with upf basics part 2Low power in vlsi with upf basics part 2
Low power in vlsi with upf basics part 2
 
Low power in vlsi with upf basics part 1
Low power in vlsi with upf basics part 1Low power in vlsi with upf basics part 1
Low power in vlsi with upf basics part 1
 
Difference between PCI PCI-X PCIe
Difference between PCI PCI-X PCIeDifference between PCI PCI-X PCIe
Difference between PCI PCI-X PCIe
 
AMBA AHB 5
AMBA AHB 5AMBA AHB 5
AMBA AHB 5
 
Cyber threads and its types
Cyber threads and its typesCyber threads and its types
Cyber threads and its types
 
Ppt of first order differenatiol equation
Ppt of first order differenatiol equationPpt of first order differenatiol equation
Ppt of first order differenatiol equation
 

Recently uploaded

(SANA) Call Girls Landewadi ( 7001035870 ) HI-Fi Pune Escorts Service
(SANA) Call Girls Landewadi ( 7001035870 ) HI-Fi Pune Escorts Service(SANA) Call Girls Landewadi ( 7001035870 ) HI-Fi Pune Escorts Service
(SANA) Call Girls Landewadi ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsapps
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /WhatsappsBeautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsapps
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsappssapnasaifi408
 
VIP Call Girls Kavuri Hills ( Hyderabad ) Phone 8250192130 | ₹5k To 25k With ...
VIP Call Girls Kavuri Hills ( Hyderabad ) Phone 8250192130 | ₹5k To 25k With ...VIP Call Girls Kavuri Hills ( Hyderabad ) Phone 8250192130 | ₹5k To 25k With ...
VIP Call Girls Kavuri Hills ( Hyderabad ) Phone 8250192130 | ₹5k To 25k With ...Suhani Kapoor
 
Russian Call Girls Kolkata Chhaya 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls Kolkata Chhaya 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls Kolkata Chhaya 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls Kolkata Chhaya 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
Presentation.pptxjnfoigneoifnvoeifnvklfnvf
Presentation.pptxjnfoigneoifnvoeifnvklfnvfPresentation.pptxjnfoigneoifnvoeifnvklfnvf
Presentation.pptxjnfoigneoifnvoeifnvklfnvfchapmanellie27
 
如何办理伦敦大学伯贝克学院毕业证(BBK毕业证) 成绩单留信学历认证原版一比一
如何办理伦敦大学伯贝克学院毕业证(BBK毕业证) 成绩单留信学历认证原版一比一如何办理伦敦大学伯贝克学院毕业证(BBK毕业证) 成绩单留信学历认证原版一比一
如何办理伦敦大学伯贝克学院毕业证(BBK毕业证) 成绩单留信学历认证原版一比一ga6c6bdl
 
定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一
定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一
定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一zul5vf0pq
 
如何办理萨省大学毕业证(UofS毕业证)成绩单留信学历认证原版一比一
如何办理萨省大学毕业证(UofS毕业证)成绩单留信学历认证原版一比一如何办理萨省大学毕业证(UofS毕业证)成绩单留信学历认证原版一比一
如何办理萨省大学毕业证(UofS毕业证)成绩单留信学历认证原版一比一ga6c6bdl
 
Real Sure (Call Girl) in I.G.I. Airport 8377087607 Hot Call Girls In Delhi NCR
Real Sure (Call Girl) in I.G.I. Airport 8377087607 Hot Call Girls In Delhi NCRReal Sure (Call Girl) in I.G.I. Airport 8377087607 Hot Call Girls In Delhi NCR
Real Sure (Call Girl) in I.G.I. Airport 8377087607 Hot Call Girls In Delhi NCRdollysharma2066
 
Call Girls Service Kolkata Aishwarya 🤌 8250192130 🚀 Vip Call Girls Kolkata
Call Girls Service Kolkata Aishwarya 🤌  8250192130 🚀 Vip Call Girls KolkataCall Girls Service Kolkata Aishwarya 🤌  8250192130 🚀 Vip Call Girls Kolkata
Call Girls Service Kolkata Aishwarya 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
NO1 Qualified Best Black Magic Specialist Near Me Spiritual Healer Powerful L...
NO1 Qualified Best Black Magic Specialist Near Me Spiritual Healer Powerful L...NO1 Qualified Best Black Magic Specialist Near Me Spiritual Healer Powerful L...
NO1 Qualified Best Black Magic Specialist Near Me Spiritual Healer Powerful L...Amil baba
 
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...nagunakhan
 
WhatsApp 9892124323 ✓Call Girls In Khar ( Mumbai ) secure service - Bandra F...
WhatsApp 9892124323 ✓Call Girls In Khar ( Mumbai ) secure service -  Bandra F...WhatsApp 9892124323 ✓Call Girls In Khar ( Mumbai ) secure service -  Bandra F...
WhatsApp 9892124323 ✓Call Girls In Khar ( Mumbai ) secure service - Bandra F...Pooja Nehwal
 
Gaya Call Girls #9907093804 Contact Number Escorts Service Gaya
Gaya Call Girls #9907093804 Contact Number Escorts Service GayaGaya Call Girls #9907093804 Contact Number Escorts Service Gaya
Gaya Call Girls #9907093804 Contact Number Escorts Service Gayasrsj9000
 
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查awo24iot
 
(办理学位证)韩国汉阳大学毕业证成绩单原版一比一
(办理学位证)韩国汉阳大学毕业证成绩单原版一比一(办理学位证)韩国汉阳大学毕业证成绩单原版一比一
(办理学位证)韩国汉阳大学毕业证成绩单原版一比一C SSS
 
(办理学位证)多伦多大学毕业证成绩单原版一比一
(办理学位证)多伦多大学毕业证成绩单原版一比一(办理学位证)多伦多大学毕业证成绩单原版一比一
(办理学位证)多伦多大学毕业证成绩单原版一比一C SSS
 
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一ga6c6bdl
 
Pallawi 9167673311 Call Girls in Thane , Independent Escort Service Thane
Pallawi 9167673311  Call Girls in Thane , Independent Escort Service ThanePallawi 9167673311  Call Girls in Thane , Independent Escort Service Thane
Pallawi 9167673311 Call Girls in Thane , Independent Escort Service ThanePooja Nehwal
 
VIP Call Girl Saharanpur Aashi 8250192130 Independent Escort Service Saharanpur
VIP Call Girl Saharanpur Aashi 8250192130 Independent Escort Service SaharanpurVIP Call Girl Saharanpur Aashi 8250192130 Independent Escort Service Saharanpur
VIP Call Girl Saharanpur Aashi 8250192130 Independent Escort Service SaharanpurSuhani Kapoor
 

Recently uploaded (20)

(SANA) Call Girls Landewadi ( 7001035870 ) HI-Fi Pune Escorts Service
(SANA) Call Girls Landewadi ( 7001035870 ) HI-Fi Pune Escorts Service(SANA) Call Girls Landewadi ( 7001035870 ) HI-Fi Pune Escorts Service
(SANA) Call Girls Landewadi ( 7001035870 ) HI-Fi Pune Escorts Service
 
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsapps
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /WhatsappsBeautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsapps
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsapps
 
VIP Call Girls Kavuri Hills ( Hyderabad ) Phone 8250192130 | ₹5k To 25k With ...
VIP Call Girls Kavuri Hills ( Hyderabad ) Phone 8250192130 | ₹5k To 25k With ...VIP Call Girls Kavuri Hills ( Hyderabad ) Phone 8250192130 | ₹5k To 25k With ...
VIP Call Girls Kavuri Hills ( Hyderabad ) Phone 8250192130 | ₹5k To 25k With ...
 
Russian Call Girls Kolkata Chhaya 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls Kolkata Chhaya 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls Kolkata Chhaya 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls Kolkata Chhaya 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
Presentation.pptxjnfoigneoifnvoeifnvklfnvf
Presentation.pptxjnfoigneoifnvoeifnvklfnvfPresentation.pptxjnfoigneoifnvoeifnvklfnvf
Presentation.pptxjnfoigneoifnvoeifnvklfnvf
 
如何办理伦敦大学伯贝克学院毕业证(BBK毕业证) 成绩单留信学历认证原版一比一
如何办理伦敦大学伯贝克学院毕业证(BBK毕业证) 成绩单留信学历认证原版一比一如何办理伦敦大学伯贝克学院毕业证(BBK毕业证) 成绩单留信学历认证原版一比一
如何办理伦敦大学伯贝克学院毕业证(BBK毕业证) 成绩单留信学历认证原版一比一
 
定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一
定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一
定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一
 
如何办理萨省大学毕业证(UofS毕业证)成绩单留信学历认证原版一比一
如何办理萨省大学毕业证(UofS毕业证)成绩单留信学历认证原版一比一如何办理萨省大学毕业证(UofS毕业证)成绩单留信学历认证原版一比一
如何办理萨省大学毕业证(UofS毕业证)成绩单留信学历认证原版一比一
 
Real Sure (Call Girl) in I.G.I. Airport 8377087607 Hot Call Girls In Delhi NCR
Real Sure (Call Girl) in I.G.I. Airport 8377087607 Hot Call Girls In Delhi NCRReal Sure (Call Girl) in I.G.I. Airport 8377087607 Hot Call Girls In Delhi NCR
Real Sure (Call Girl) in I.G.I. Airport 8377087607 Hot Call Girls In Delhi NCR
 
Call Girls Service Kolkata Aishwarya 🤌 8250192130 🚀 Vip Call Girls Kolkata
Call Girls Service Kolkata Aishwarya 🤌  8250192130 🚀 Vip Call Girls KolkataCall Girls Service Kolkata Aishwarya 🤌  8250192130 🚀 Vip Call Girls Kolkata
Call Girls Service Kolkata Aishwarya 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
NO1 Qualified Best Black Magic Specialist Near Me Spiritual Healer Powerful L...
NO1 Qualified Best Black Magic Specialist Near Me Spiritual Healer Powerful L...NO1 Qualified Best Black Magic Specialist Near Me Spiritual Healer Powerful L...
NO1 Qualified Best Black Magic Specialist Near Me Spiritual Healer Powerful L...
 
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...
 
WhatsApp 9892124323 ✓Call Girls In Khar ( Mumbai ) secure service - Bandra F...
WhatsApp 9892124323 ✓Call Girls In Khar ( Mumbai ) secure service -  Bandra F...WhatsApp 9892124323 ✓Call Girls In Khar ( Mumbai ) secure service -  Bandra F...
WhatsApp 9892124323 ✓Call Girls In Khar ( Mumbai ) secure service - Bandra F...
 
Gaya Call Girls #9907093804 Contact Number Escorts Service Gaya
Gaya Call Girls #9907093804 Contact Number Escorts Service GayaGaya Call Girls #9907093804 Contact Number Escorts Service Gaya
Gaya Call Girls #9907093804 Contact Number Escorts Service Gaya
 
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查
 
(办理学位证)韩国汉阳大学毕业证成绩单原版一比一
(办理学位证)韩国汉阳大学毕业证成绩单原版一比一(办理学位证)韩国汉阳大学毕业证成绩单原版一比一
(办理学位证)韩国汉阳大学毕业证成绩单原版一比一
 
(办理学位证)多伦多大学毕业证成绩单原版一比一
(办理学位证)多伦多大学毕业证成绩单原版一比一(办理学位证)多伦多大学毕业证成绩单原版一比一
(办理学位证)多伦多大学毕业证成绩单原版一比一
 
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一
 
Pallawi 9167673311 Call Girls in Thane , Independent Escort Service Thane
Pallawi 9167673311  Call Girls in Thane , Independent Escort Service ThanePallawi 9167673311  Call Girls in Thane , Independent Escort Service Thane
Pallawi 9167673311 Call Girls in Thane , Independent Escort Service Thane
 
VIP Call Girl Saharanpur Aashi 8250192130 Independent Escort Service Saharanpur
VIP Call Girl Saharanpur Aashi 8250192130 Independent Escort Service SaharanpurVIP Call Girl Saharanpur Aashi 8250192130 Independent Escort Service Saharanpur
VIP Call Girl Saharanpur Aashi 8250192130 Independent Escort Service Saharanpur
 

I2C introduction

  • 1. I2C - Inter Integrated Circuit G.Sunodh Kumar Design Verification Enginner
  • 2. I2C d • I2C is Serial Communication Protocol & data transfered bit by bit • It was first developed by Philips Semiconductors • It provides the good support to slow devices like EEPROM,ADC.. • Additionally, an I2C bus is used in the various control architecture, for example, SMBus (System Management Bus), PMBus (Power Management Bus), IPMI (Intelligent Platform Management Interface) etc. • Speed : Mode Baud Rate Standard Mode 100 kbps Fast Mode 400 kbps High Speed Mode 3.4 Mbps Ultra Fast Mode 5 Mbps
  • 3. • It support Single Master - Multi Slave & Multi Master - Multi Slave
  • 4. Electrical Characteristics d • I2C uses an open-drain/open-collector with an input buffer on the same line, which allows a single data line to be used for bidirectional data flow • Another advantage is connecting multiple Open Collector outputs together in single line results in “Wired ANDed”(For Clock Synchronization & Stretching) • Pull-up resistor on the line is responsible for pulling the bus voltage up to the power rail. this means that the bus will never run into a communication issue where one device may try to transmit a high, and another transmits a low, causing a short (power rail to ground). I2C requires it for Aribitraction
  • 5. I2C Bus Features d • In I2C only two buses are required for the communication, • Serial data bus (SDA) • Serial clock bus (SCL). • Each Salve has unique address to communicate with a master. • In I2C, Alway’s communication is started by the master. • Ability of the arbitration and collision detection. • I2C is the 8-bit oriented serial bidirectional communication with different speed mode in I2C • It i worked in Half-Duplex mode
  • 6. Data Frame overview of I2C protocol • With I2C, data is transferred in messages. Messages are broken up into frames of data. • Each message has an address frame that contains the binary address of the slave, and one or more data frames that contain the data being transmitted. • The message also includes start and stop conditions, read/write bits, and ACK/NACK bits between each data frame d
  • 7. Data Frame overview of I2C protocol k • Start Condition: SDA line switches from a high voltage to low voltage level before the SCL line switches from high to low. • Stop Condition: SDA line switches from a low voltage to high voltage level before the SCL line switches from low to high. • A START and STOP condition always asserted by the master.
  • 8. Address R/W Description 0000 000 0 General call address 0000 000 1 Start byte 0000 001 x CBUS address 0000 010 x Reserved for different bus formats 0000 011 0 Reserved 0000 1xx x High speed mode 0000 0xx x 10-bit address 0000 1xx X Reserved Special addresses used in the I2C network k • In Slave address bits are used to address a specific slave device on the bus. 7 bit address let the master to address maximum of 128 slaves on the bus. Although address 0000 000 is reserved for general call and all address of the format 1111 xxx are reserved in many devices. That means 119 devices can share an I2C bus. In I2C bus the MSB of the address is transmitted first.
  • 9. I2C Transcation - Data Transfer Sequence s • Data validity The data on the SDA line must be stable during the HIGH period of the clock. The HIGH or LOW state of the data line can only change when the clock signal on the SCL line is LOW,One clock pulse is generated for each data bit transferred.
  • 10. Data Frame of I2C protocol k • Repeat Start Condition In a multi-master configuration, there is the possibility for the master to own the bus in order to make several transactions without being interrupted by another master. In this case is used what is called a Repeated START condition.
  • 11. Acknowledgement Scheme in I2C protocol k Below are some scenario, where NACK bit is generated. • When the receiver is unable to receive or transmit the data, in that situation it generates a NACK bit to stop the communication. • During the communication, if the receiver gets any data or commands which are not understood by the receiver then it generates a NACK bit. • During the transfer, if the receiver performs any real-time operation and not able to communicate with master then assert a NACK bit. • When Master is a receiver and reads the data from the slave, then after the reading of whole data it asserts a NACK bit on data lines to stop the communication. • If there is no device present in the I2c bus of the same address which is transmitted by the master, then the master will not get the acknowledge by any slave and treat this situation as NACK.
  • 12. I2C Transcation - Data Transfer from Master to Slave d • A master device sends the sequence S ADDR W and then waits for an acknowledge bit (A) from the slave which the slave will only generate if its internal address matches the value sent by the master. If this happens then the master sends DATA and waits for acknowledge (A) from the slave. The master completes the byte transfer by generating a stop bit (P) (or repeated start).
  • 13. I2C Transcation - Data Transfer from Slave to Master d • A similar process happens when a master reads from the slave but in this case, instead of W, R is sent. After the data is transmitted from the slave to the master the master sends the acknowledge (A). If instead the master does not want any more data it must send a not- acknowledge which indicates to the slave that it should release the bus. This lets the master send the STOP or repeated START signal.
  • 14. Clock Stretching in I2C protocol k • One of the features of the I²C protocol is clock stretching. It is a kind of flow control. If an addressed slave device is not ready to process more data it will stretch the clock by holding the clock line (SCL) low after receiving (or sending) a bit of data so that the master will not be able to raise the clock line (because devices are wire-ANDed) and will wait until the slave releases the SCL line to show it is ready for the next bit.
  • 15. Clock Synchronization in I2C protocol k • I2c is synchronous communication, in which clock is always generated by the master and this clock is shared by both master and slave. • In the case of multi-master, all master generate their own SCL clock, hence it is necessary that clock of all master should be synchronized. In the I2C, this clock synchronization is done by Wired ANDed logic.
  • 16. Aribitraction in I2C protocol k This diagram conveys the basis of I2C arbitration; the process occurs as follows: • Both masters generate a start bit and proceed with their transmissions. • If the masters happen to choose the same logic levels, nothing happens. • As soon as the masters attempt to impose different logic levels, the master driving the signal low is proclaimed the winner; the loser detects the logic mismatch and abandons its transmission.
  • 17. Aribitraction in I2C protocol k Take a moment to appreciate the simplicity and efficacy of this arrangement: • The winner continues its transmission without interruption—no corrupted data, no driver contention, no need to restart the transaction. • Theoretically the loser could monitor the slave address during the arbitration process and actually make a proper response if it happens to be the addressed slave. • If the competing masters are both requesting data from the same slave, the arbitration process does not unnecessarily interrupt either transaction—no mismatch will be detected, and the slave will output its data to the bus such that multiple masters can receive it.
  • 18. Advantages of I2C communication protocol k • It is the synchronous communication protocol, so no need of precise oscillators for the master and slave. • It requires only two wire, one wire for the data (SDA) and other wire for the clock (SCL). • It provides the flexibility to the user to select the transmission rate as per the requirements. • In I2C Bus, each device on the bus is independently addressable. • It follows the master and slave relationships. • It has the capability to handle the multiple masters and multiple slaves on the I2C Bus. • I2C has some important features like arbitration, clock synchronization, and clock stretching. • I2C provide ACK/NACK (acknowledgment/ Not-acknowledgement) features which provide the help in error handling.
  • 19. Some important limitation of I2C communication protocol k • It consumes more power than other serial communication busses due to open-drain topology. • It is good only for the short distance. • I2C protocol has some limitation for the number of slaves, the number of the slave depends on the capacitance of the I2C bus. • It only provides few limited communication speed like 100 kbit/s,400 kbit/s etc. • In I2c, devices can set their communication speed, slower operational devices can delay the operation of faster speed devices. • The Size of the data frame is limited to 8 bits
  • 20. Reference : • https://aticleworld.com/i2c-bus-protocol-and-interface/ • http://karuppuswamy.com/wordpress/2015/06/24/what-is-open-collector-output-pull- uppull-down-resistor-and-tri-state-output/ • http://www.ti.com/lit/an/slva704/slva704.pdf • https://www.artekit.eu/i2c-communication-protocol/ • https://www.best-microcontroller-projects.com/i2c-tutorial.html

Editor's Notes

  1. Additionally, an I2C bus is used in the various control architecture, for example, SMBus (System Management Bus), PMBus (Power Management Bus), IPMI (Intelligent Platform Management Interface) etc.
  2. The SSI (Synchronous serial interface) has been very popular, but it takes 3-wires for simplex and 4-wires for full duplex communication. The I2C bus is a simple two-wire bi-directional serial communication system that is intended for communication between micro controllers and their peripherals over short distances.