Embedded Bus – i2c David E. Culler Lab 2 Feb 2, 2015

Slides:



Advertisements
Similar presentations
Homework Reading Machine Projects Labs
Advertisements

I2C bus Inter Integrated Circuits bus by Philips Semiconductors
I/O Organization popo.
1/1/ / faculty of Electrical Engineering eindhoven university of technology Architectures of Digital Information Systems Part 1: Interrupts and DMA dr.ir.
1/1/ / faculty of Electrical Engineering eindhoven university of technology Processor support devices Part 1:Interrupts and shared memory dr.ir. A.C. Verschueren.
Embedded Systems I2CI2C. Feature 3 wire GND SCL(clock) SDA(data) All devices share the same bus wire Using wire and, each device gain access to bus (become.
Serial Interfaces, Part Deux -I 2 C and SPI December 4, 2002 Presented by Eugene Ho.
CS-334: Computer Architecture
Lecture Objectives: 1)Explain the limitations of flash memory. 2)Define wear leveling. 3)Define the term IO Transaction 4)Define the terms synchronous.
Input-output and Communication Prof. Sin-Min Lee Department of Computer Science.
I/O Subsystem Organization and Interfacing Cs 147 Peter Nguyen
I2CI2C CS-423 Dick Steflik. Inter-Integrated Circuit Developed and patented by Philips for connecting low speed peripherals to a motherboard, embedded.
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Lecture 27: LM3S9B96 Microcontroller – Inter- Integrated Circuit (I 2 C) Interface.
Haptic Belt team Informational Presentation.  I 2 C is a form of control bus (multi-master) which allows communication between multiple integrated circuits.
Module I Overview of Computer Architecture and Organization.
1 EECS 373 Design of Microprocessor-Based Systems Prabal Dutta University of Michigan Lecture 10: Serial buses Oct 6, 2011.
INPUT/OUTPUT ARCHITECTURE By Truc Truong. Input Devices Keyboard Keyboard Mouse Mouse Scanner Scanner CD-Rom CD-Rom Game Controller Game Controller.
1 © Unitec New Zealand I2C Lecture 10 Date: - 2 Nov, 2011 Embedded Hardware ETEC 6416.
Computer Architecture Lecture 08 Fasih ur Rehman.
Input / Output CS 537 – Introduction to Operating Systems.
Input/Output. Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower.
VERIFICATION OF I2C INTERFACE USING SPECMAN ELITE By H. Mugil Vannan Experts Mr. Rahul Hakhoo, Section Manager, CMG-MCD Mr. Umesh Srivastva, Project Leader.
Chapter 10: Input / Output Devices Dr Mohamed Menacer Taibah University
7/23 Inter-chip Serial Communication: SPI and I 2 C Computer Science & Engineering Department Arizona State University Tempe, AZ Dr. Yann-Hang Lee.
COMPUTER ORGANIZATIONS CSNB123 NSMS2013 Ver.1Systems and Networking1.
1 (Based on text: David A. Patterson & John L. Hennessy, Computer Organization and Design: The Hardware/Software Interface, 3 rd Ed., Morgan Kaufmann,
Interrupts and DMA CSCI The Role of the Operating System in Performing I/O Two main jobs of a computer are: –Processing –Performing I/O manage and.
2007 Oct 18SYSC2001* - Dept. Systems and Computer Engineering, Carleton University Fall SYSC2001-Ch7.ppt 1 Chapter 7 Input/Output 7.1 External Devices.
I/O Example: Disk Drives To access data: — seek: position head over the proper track (8 to 20 ms. avg.) — rotational latency: wait for desired sector (.5.
Computer Architecture Lecture10: Input/output devices Piotr Bilski.
DEVICES AND COMMUNICATION BUSES FOR DEVICES NETWORK
I/O management is a major component of operating system design and operation Important aspect of computer operation I/O devices vary greatly Various methods.
COMPUTER ORGANIZATIONS CSNB123 NSMS2013 Ver.1Systems and Networking1.
11/16/2006 WSN Mote- MCU & Sensor Hardware 1 ECET 581 Wireless Sensor Networks Mote – MCU & Sensor Hardware 2 of 3 Fall 2006
Direct Memory Access (DMA) Microprocessors I -1. Topics to be discussed  Basic DMA Concept Basic DMA Concept  DMA pins and timing DMA pins and timing.
Input/Output Computer component : Input/Output I/O Modules External Devices I/O Modules Function and Structure I/O Operation Techniques I/O Channels and.
I2C Master Core Simulation Environment. I2C Master Core Requirements Coverage (*) Requirement I2C IP RS-906: The I2C IP shall define the period of time,
I/O Computer Organization II 1 Interconnecting Components Need interconnections between – CPU, memory, I/O controllers Bus: shared communication channel.
MBG 1 CIS501, Fall 99 Lecture 18: Input/Output (I/O): Buses and Peripherals Michael B. Greenwald Computer Architecture CIS 501 Fall 1999.
1 Synchronous Serial IO Send a separate clock line with data –SPI (serial peripheral interface) protocol –I 2 C (or I2C) protocol Encode a clock with data.
Accessing I/O Devices Processor Memory BUS I/O Device 1 I/O Device 2.
L/O/G/O Input Output Chapter 4 CS.216 Computer Architecture and Organization.
Embedded Network Interface (ENI). What is ENI? Embedded Network Interface Originally called DPO (Digital Product Option) card Printer without network.
7.2 Peripheral Supplementary 2 DMA. Reference Siberschatz, “Operating System Concepts Sixth Edition”, John Wiley and Sons, Inc.
Computer Hardware A computer is made of internal components Central Processor Unit Internal External and external components.
CS2100 Computer Organisation Input/Output – Own reading only (AY2015/6) Semester 1 Adapted from David Patternson’s lecture slides:
©2008 R. Gupta, UCSD COSMOS Summer 2008 Peripheral Interfaces Rajesh K. Gupta Computer Science and Engineering University of California, San Diego.
IT3002 Computer Architecture
Processor Memory Processor-memory bus I/O Device Bus Adapter I/O Device I/O Device Bus Adapter I/O Device I/O Device Expansion bus I/O Bus.
Input Output Techniques Programmed Interrupt driven Direct Memory Access (DMA)
بسم الله الرحمن الرحيم MEMORY AND I/O.
1 Device Controller I/O units typically consist of A mechanical component: the device itself An electronic component: the device controller or adapter.
Part IVI/O Systems Chapter 13: I/O Systems. I/O Hardware a typical PCI bus structure 2.
Amdahl’s Law & I/O Control Method 1. Amdahl’s Law The overall performance of a system is a result of the interaction of all of its components. System.
Networked Embedded Systems Sachin Katti & Pengyu Zhang EE107 Spring 2016 Lecture 9 Serial Buses – SPI, I2C.
1 load [2], [9] Transfer contents of memory location 9 to memory location 2. Illegal instruction.
Lecture 2. A Computer System for Labs
DIRECT MEMORY ACCESS and Computer Buses
Outline Analog to digital conversion (ADC) of NuMaker TRIO
Chapter 11: Inter-Integrated Circuit (I2C) Interface
EE 107 Fall 2017 Lecture 7 Serial Buses – I2C Direct Memory Access
CS 286 Computer Organization and Architecture
Communication Lines Fundamentals.
Peng Liu Lecture 14 I/O Peng Liu
Presentation transcript:

Embedded Bus – i2c David E. Culler Lab 2 Feb 2, 2015 http://www.byteparadigm.com/applications/introduction-to-i2c-and-spi-protocols/

What’s a bus ? An efficient means of connecting together several devices so they can interact and transfer information. The method of HW composition in computer systems N devices, N2 interactions, 1 set of wires Defined set of Bus Transactions P M M i/o i/o 10/13/14 cs162 fa14 L19

Modern Computer Systems network

Mainstream Systems Read / Write wires I/O Controllers Processor Secondary Storage (Disk) Core L2 Cache Registers L1 Cache interrupts Secondary Storage (SSD) Main Memory (DRAM) Read / Write DMA transfer L3 Cache (shared) Core L2 Cache Registers L1 Cache I/O devices you recognize are supported by I/O Controllers Processors accesses them by reading and writing IO registers as if they were memory Write commands and arguments, read status and results 10/13/14 cs162 fa14 L19

Example Device-Transfer Rates in Mb/s (Sun Enterprise 6000) Device Rates vary over 12 orders of magnitude !!! System better be able to handle this wide range Better not have high overhead/byte for fast devices! Better not waste time waiting for slow devices

Bus Transaction Master => Slave Arbitration Master requests access to bus (if multi-master) Command (Rd, Wt), Address Slave identified by address ack’s request Data transfer Many variants Synchronous/Asynchronous Split-Phase … 10/13/14 cs162 fa14 L19

What about embedded systems? Many simple devices Extremely constrained interfaces Serial busses => transaction over a wire or two i2c 10/13/14 cs162 fa14 L19

i2C Invented by Philips as chip-chip interconnect for TV sets 2 signal lines, Vcc and Gnd SDA (serial data) and SCL (serial clock) Both bi-directional (actively pulled down) 7-bit slave address Data in 8-bit bytes – 100 kbps – 2.4 mbps 10/13/14 cs162 fa14 L19

I2c transaction 10/13/14 cs162 fa14 L19

i2C Signaling Start/Stop closely tied to physical structure SDA falling/rising when SCK is high Data must remain stable while sck is high, may change while low Slow slave and stretch clock Multi-master arbitration by detection of failure to drive 10/13/14 cs162 fa14 L19

Transferring Data To/From Controller Programmed I/O: Each byte transferred via processor in/out or load/store Pro: Simple hardware, easy to program Con: Consumes processor cycles proportional to data size Direct Memory Access: Give controller access to memory bus Ask it to transfer data blocks to/from memory directly Sample interaction with DMA controller (from OSC): addr len

In embedded ? PIO => bit banging the pins to generate a waveform DMA Not just for high performance Allows MCU to do other things during SLOOOOOW transfers Even to go to sleep 10/13/14 cs162 fa14 L19