From Datasheets to Digital Logic. synthesizing an FPGA SPI slave from the gates

Size: px
Start display at page:

Download "From Datasheets to Digital Logic. synthesizing an FPGA SPI slave from the gates"

Transcription

1 From Datasheets to Digital Logic synthesizing an FPGA SPI slave from the gates Joshua Vasquez March 26, 2015

2 The Road Map Top-Level Goal Motivation What is SPI? SPI Topology SPI Wiring SPI Protocol* Defining a Protocol Inspired by MEMs Sensors Example Reading Encoders Building up the SPI Communication Hardware Building up the Controller Hardware Wrap-up

3 The Top-Level Goal Develop a protocol for both sending and receiving data between a microcontroller and an FPGA

4 The Top-Level Goal Develop a protocol for both sending and receiving data between a microcontroller and an FPGA dataaaa!

5 The Top-Level Goal Develop a protocol for both sending and receiving data between a microcontroller and an FPGA dataaaa! Why?

6 The Top-Level Goal Develop a protocol for both sending and receiving data between a microcontroller and an FPGA dataaaa! Why? read encoders drive (lots) of hobby servos turn the FPGA into a generic command-accepting slave etc..

7 SPI What is it?

8 SPI What is it? Method of synchronous serial communication

9 SPI What does it look like?

10 SPI Topology What does SPI look like?

11 SPI Topology What does SPI look like? Bidirectional data transfer synchronized with a clock. Frame (in this case) is 8-bits per transfer Multiple slaves supported

12 SPI Topology (contd) Bidirectional Data Transfer via MISO and MOSI Master SCK MISO MOSI CS Slave

13 SPI Topology (contd) A Single 8-bit transfer

14 SPI Topology (contd) NOTE: Protocol is undefined. A Single 8-bit transfer

15 Defining a Protocol dataaaa!

16 Defining a Protocol dataaaa! We need to agree here

17 Protocol Inspiration: MEMs Sensor Interface All the same communication interface!

18 Protocol Inspiration: MEMs Reading and Writing to Registers inside of the Chip s Internal memory READ: get data from the chip WRITE: tweak settings on the chip Example Chip: Pressure Sensor with i2c interface

19 Protocol Inspiration: MEMs Read/Write Address Data0, Data1, DataN

20 Read/Write Bosch MEMs Sensors Address Data0

21 Read/Write Invensense Sensors Address Data0

22 Read/Write Address Data0 ST Sensors

23 The Road Map Top-Level Goal Motivation What is SPI? SPI Topology SPI Wiring SPI Protocol* Defining a Protocol Inspired by MEMs Sensors Example Reading Encoders Building up the SPI Communication Hardware Building up the Controller Hardware Wrap-up

24 Application: reading encoders

25 Application: reading encoders

26 Application: reading encoders Rotary Encoder Example (Reading) Encoder Data

27 Application: reading encoders Encoder Data 0x00 0x01 0x02...

28 Application: reading encoders Encoder Data 0x00 0x01 0x02... SPI Controller MISO CS SCK MOSI SPI Shift Registers

29 Building it up From Gates Two Parts Controller Hardware Commands SPI Communication Hardware

30 Building it up From Gates Two Parts Controller Hardware Commands SPI Communication Hardware

31 SPI Communication Hardware

32 Two 8-bit Buffers Receiving Sending

33 Two 8-bit Buffers MOSI Receiving Sending MISO

34 Two 8-bit Buffers MOSI MISO Note internal vs external logic

35 Diving into the details

36 Sending Data D-Flip Flop with Asynchronous Load Stores 1 bit Can be pre-loaded with data at any moment in time

37 Sending Data Storing Data: First Method Data gets passed from D to Q (aka: stored) on rising edge of clock signal

38 Sending Data 1 Data gets loaded (stored) from DATA to Q when ALOAD is asserted Storing Data: Second Method n n

39 Sending Data

40 Sending Data 8-bit Shift Register!

41 Sending Data Load a byte in parallel with the ALOAD signal to be clocked out serially!

42 Sending and Receiving

43 Sending and Receiving SetNewData logic defined in controller

44 Building it up From Gates Part Two: the Controller Controller Hardware Commands SPI Communication Hardware

45 Controller Organizes sent/received data Allows us to read/write to/from register in internal memory. Memory Addresses are mapped to store data for controlling/reading external features.

46 Controller Organizes sent/received data SPI Byte Interpreter received SPI data Memory Memorymapped features read/write... data to send over SPI

47 Controller Organizes sent/received data SPI Byte Interpreter received SPI data Memory Memorymapped features read/write... data to send over SPI

48 SPI Byte Interpreter Identifies start of SPI transfer Identifies read or write command Fetches data (if read) sets data (if write) SPI Byte Interpreter received SPI data data to send over SPI read/write

49 Parsing the Waveform

50 Parsing the Waveform First Step: count bits

51 Parsing the Waveform Counter!

52 Parsing the Waveform From here to here Next Step: identify when 1st byte has arrived. i.e: count to 8 and catch clock falling edge.

53 Parsing the Waveform From here to here three flip flops and the counter! save rising edge save falling edge

54 Parsing the Waveform these 7 bytes Next Step: Store the starting address

55 Parsing the Waveform store these 7 bytes 8-bit Shift-Register (with asynchronous loading) trigger here

56 Parsing the Waveform R/W Next Step: identify read or write

57 Parsing the Waveform trigger here Save MSbit from 1st byte transferred.

58 Parsing the Waveform Next Step: increment the address after each byte.

59 Parsing the Waveform Another counter! (count up once per byte using bit-counter)

60 Parsing the Waveform SPI Controller Complete

61 Building it up From Gates Both Parts Complete! Controller Hardware Commands SPI Communication Hardware

62 Wrap-up dataaaa!

63 Wrap-up

64 Questions? Reading Example Writing Example

Introduction the Serial Communications Huang Sections 9.2, 10.2 SCI Block User Guide SPI Block User Guide

Introduction the Serial Communications Huang Sections 9.2, 10.2 SCI Block User Guide SPI Block User Guide Introduction the Serial Communications Huang Sections 9.2,.2 SCI Block User Guide SPI Block User Guide Parallel Data Transfer Suppose you need to transfer data from one HCS2 to another. How can you do

More information

Parallel Data Transfer. Suppose you need to transfer data from one HCS12 to another. How can you do this?

Parallel Data Transfer. Suppose you need to transfer data from one HCS12 to another. How can you do this? Introduction the Serial Communications Huang Sections 9.2, 10.2, 11.2 SCI Block User Guide SPI Block User Guide IIC Block User Guide o Parallel vs Serial Communication o Synchronous and Asynchronous Serial

More information

PARALLEL COMMUNICATIONS

PARALLEL COMMUNICATIONS Parallel Data Transfer Suppose you need to transfer data from one HCS12 to another. How can you do this? You could connect PORTA of the sending computer (set up as an output port) to PORTA of the receiving

More information

SPI (Serial & Peripheral Interface)

SPI (Serial & Peripheral Interface) SPI (Serial & Peripheral Interface) What is SPI SPI is a high-speed, full-duplex bus that uses a minimum of 3 wires to exchange data. The popularity of this bus rose when SD cards (and its variants ie:

More information

Serial Peripheral Interface. What is it? Basic SPI. Capabilities. Protocol. Pros and Cons. Uses

Serial Peripheral Interface. What is it? Basic SPI. Capabilities. Protocol. Pros and Cons. Uses Serial Peripheral Interface What is it? Basic SPI Capabilities Protocol Serial Peripheral Interface http://upload.wikimedia.org/wikipedia/commons/thumb/e/ed/ SPI_single_slave.svg/350px-SPI_single_slave.svg.png

More information

ArduCAM-M-2MP Camera Shield

ArduCAM-M-2MP Camera Shield 33275-MP ArduCAM-M-2MP Camera Shield 2MP SPI Camera Hardware Application Note Rev 1.0, Mar 2015 33275-MP ArduCAM-M-2MP Hardware Application Note Table of Contents 1 Introduction... 2 2 Typical Wiring...

More information

Introduction the Serial Communications Parallel Communications Parallel Communications with Handshaking Serial Communications

Introduction the Serial Communications Parallel Communications Parallel Communications with Handshaking Serial Communications Introduction the Serial Communications Parallel Communications Parallel Communications with Handshaking Serial Communications o Asynchronous Serial (SCI, RS-232) o Synchronous Serial (SPI, IIC) The MC9S12

More information

Microcontrollers and Interfacing

Microcontrollers and Interfacing Microcontrollers and Interfacing Week 10 Serial communication with devices: Serial Peripheral Interconnect (SPI) and Inter-Integrated Circuit (I 2 C) protocols College of Information Science and Engineering

More information

Understanding SPI with Precision Data Converters

Understanding SPI with Precision Data Converters Understanding SPI with Precision Data Converters By: Tony Calabria Presented by: 1 Communication Comparison SPI - Serial Peripheral Interface Bus I2C - Inter- Integrated Circuit Parallel Bus Advantages

More information

An SPI interface for the 65(C)02 family of microprocessors

An SPI interface for the 65(C)02 family of microprocessors Rev 4/B Dec 30, 2011 65SPI/B An SPI interface for the 65(C)02 family of microprocessors This device was created to provide a basic SPI interface for the 65xx family of microprocessors. Currently, the only

More information

Introduction to I2C & SPI. Chapter 22

Introduction to I2C & SPI. Chapter 22 Introduction to I2C & SPI Chapter 22 Issues with Asynch. Communication Protocols Asynchronous Communications Devices must agree ahead of time on a data rate The two devices must also have clocks that are

More information

Lecture 25 March 23, 2012 Introduction to Serial Communications

Lecture 25 March 23, 2012 Introduction to Serial Communications Lecture 25 March 23, 2012 Introduction to Serial Communications Parallel Communications Parallel Communications with Handshaking Serial Communications Asynchronous Serial (e.g., SCI, RS-232) Synchronous

More information

Lecture 14 Serial Peripheral Interface

Lecture 14 Serial Peripheral Interface www.atomicrhubarb.com/systems Lecture 14 Serial Peripheral Interface Section Topic Where in the books Zilog PS220 "Enhanced Serial Peripheral Interface" Assorted datasheets Synchronous Serial Buses 1-wire

More information

AN510 Using SPI protocol with pressure sensor modules

AN510 Using SPI protocol with pressure sensor modules 1 USING SPI PROTOCOL WITH PRESSURE SENSOR MODULES This application note describes the possibility of communication between a microcontroller and MEAS Switzerland's pressure sensor modules (MS55XX series)

More information

Philadelphia University Department of Computer Science. By Dareen Hamoudeh

Philadelphia University Department of Computer Science. By Dareen Hamoudeh Philadelphia University Department of Computer Science By Dareen Hamoudeh 1.REGISTERS WHAT IS REGISTER? register is a quickly accessible location available to a computer's central processing unit (CPU).

More information

Real Time Embedded Systems. Lecture 1 January 17, 2012

Real Time Embedded Systems.  Lecture 1 January 17, 2012 SPI 4-Wire 3-Wire Real Time Embedded Systems www.atomicrhubarb.com/embedded Lecture 1 January 17, 2012 Topic Section Topic Where in the books Catsoulis chapter/page Simon chapter/page Zilog UM197 (ZNEO

More information

Lecture 5: Computing Platforms. Asbjørn Djupdal ARM Norway, IDI NTNU 2013 TDT

Lecture 5: Computing Platforms. Asbjørn Djupdal ARM Norway, IDI NTNU 2013 TDT 1 Lecture 5: Computing Platforms Asbjørn Djupdal ARM Norway, IDI NTNU 2013 2 Lecture overview Bus based systems Timing diagrams Bus protocols Various busses Basic I/O devices RAM Custom logic FPGA Debug

More information

PIC Serial Peripheral Interface (SPI) to Digital Pot

PIC Serial Peripheral Interface (SPI) to Digital Pot Name Lab Section PIC Serial Peripheral Interface (SPI) to Digital Pot Lab 7 Introduction: SPI is a popular synchronous serial communication protocol that allows ICs to communicate over short distances

More information

SPI 3-Wire Master (VHDL)

SPI 3-Wire Master (VHDL) SPI 3-Wire Master (VHDL) Code Download Features Introduction Background Port Descriptions Clocking Polarity and Phase Command and Data Widths Transactions Reset Conclusion Contact Code Download spi_3_wire_master.vhd

More information

Scheme G. Sample Test Paper-I

Scheme G. Sample Test Paper-I Sample Test Paper-I Marks : 25 Times:1 Hour 1. All questions are compulsory. 2. Illustrate your answers with neat sketches wherever necessary. 3. Figures to the right indicate full marks. 4. Assume suitable

More information

ECE Microcontrollers. Serial Peripheral Interface (SPI) & NRF24 Radio

ECE Microcontrollers. Serial Peripheral Interface (SPI) & NRF24 Radio ECE 381 - Microcontrollers Serial Peripheral Interface (SPI) & NRF24 Radio Lab 9 Summary We will develop a wireless temperature sensor Once a second, sample LM34CZ voltage Convert to floating point with

More information

1.3inch OLED User Manual

1.3inch OLED User Manual 1.3inch OLED User Manual 1. Key Parameters Table 1: Key Parameters Driver Chip SH1106 Interface 3-wire SPI 4-wire SPI I2C Resolution 128*64 Display Size 1.3 inch Dimension 29mm*33mm Colors Yellow, Blue

More information

Design Development and Implementation of SPI

Design Development and Implementation of SPI MIT International Journal of Electronics and Communication Engineering, Vol. 4, No. 2, August 2014, pp. 65 69 65 Design Development and Implementation of SPI A. Sirisha Kurnool (DT), A.P, INDIA M. Sravanthi

More information

Serial Peripheral Interface (SPI)

Serial Peripheral Interface (SPI) SPI = Simple, 3 wire, full duplex, synchronous serial data transfer Interfaces to many devices, even many non-spi peripherals Can be a master or slave interface 4 interface pins: -MOSI master out slave

More information

Electronics Single wire communication

Electronics Single wire communication Electronics Single wire communication Wilfrid Laurier University October 23, 2017 Single wire communication Single wire communication Parallel communication uses 4 or 8 bits plus control signals Single

More information

Amarjeet Singh. January 30, 2012

Amarjeet Singh. January 30, 2012 Amarjeet Singh January 30, 2012 Website updated - https://sites.google.com/a/iiitd.ac.in/emsys2012/ Lecture slides, audio from last class Assignment-2 How many of you have already finished it? Final deadline

More information

Tutorial for I 2 C Serial Protocol

Tutorial for I 2 C Serial Protocol Tutorial for I 2 C Serial Protocol (original document written by Jon Valdez, Jared Becker at Texas Instruments) The I 2 C bus is a very popular and powerful bus used for communication between a master

More information

Wisconsin MMC FPGA SPI Configuration Interface

Wisconsin MMC FPGA SPI Configuration Interface Wisconsin MMC FPGA SPI Configuration Interface 31-Jan-2013 T. Gorski, University of Wisconsin This specification describes the enhanced SPI interface supported by the Wisconsin MMC, the purpose of which

More information

i_csn i_wr i_rd i_cpol i_cpha i_lsb_first i_data [15:0] o_data [15:0] o_tx_ready o_rx_ready o_rx_error o_tx_error o_tx_ack o_tx_no_ack

i_csn i_wr i_rd i_cpol i_cpha i_lsb_first i_data [15:0] o_data [15:0] o_tx_ready o_rx_ready o_rx_error o_tx_error o_tx_ack o_tx_no_ack October 2012 Introduction Reference Design RD1142 The Serial Peripheral Interface (SPI) is used primarily for synchronous serial communication between a host processor and its peripherals. The SPI bus

More information

Getting Started with ESPI Interface Using the Z8 Encore! XP F1680

Getting Started with ESPI Interface Using the Z8 Encore! XP F1680 Application Note Getting Started with ESPI Interface Using the Z8 Encore! XP F1680 AN027301-0308 Abstract This application note demonstrates how to use the Enhanced Serial Peripheral Interface (ESPI) in

More information

Embedded Systems and Software. Serial Interconnect Buses I 2 C (SMB) and SPI

Embedded Systems and Software. Serial Interconnect Buses I 2 C (SMB) and SPI Embedded Systems and Software Serial Interconnect Buses I 2 C (SMB) and SPI I2C, SPI, etc. Slide 1 Provide low-cost i.e., low wire/pin count connection between IC devices There are many of serial bus standards

More information

McMaster University Embedded Systems. Computer Engineering 4DS4 Lecture 6 Serial Peripherals Amin Vali Feb. 2016

McMaster University Embedded Systems. Computer Engineering 4DS4 Lecture 6 Serial Peripherals Amin Vali Feb. 2016 McMaster University Embedded Systems Computer Engineering 4DS4 Lecture 6 Serial Peripherals Amin Vali Feb. 2016 Serial Peripherals I2C Inter-IC Bus X/Y Coord. RGB data LCD config controller LCD data controller

More information

UART TO SPI SPECIFICATION

UART TO SPI SPECIFICATION UART TO SPI SPECIFICATION Author: Dinesh Annayya dinesha@opencores.org Table of Contents Preface... 3 Scope... 3 Revision History... 3 Abbreviations... 3 Introduction... 3 Architecture... 4 Baud-rate generator

More information

EECS150 - Digital Design Lecture 17 Memory 2

EECS150 - Digital Design Lecture 17 Memory 2 EECS150 - Digital Design Lecture 17 Memory 2 October 22, 2002 John Wawrzynek Fall 2002 EECS150 Lec17-mem2 Page 1 SDRAM Recap General Characteristics Optimized for high density and therefore low cost/bit

More information

Groking the Linux SPI Subsystem FOSDEM Matt Porter

Groking the Linux SPI Subsystem FOSDEM Matt Porter Groking the Linux SPI Subsystem FOSDEM 2017 Matt Porter Obligatory geek reference deobfuscation grok (/gräk/) verb to understand intuitively or by empathy, to establish rapport with. Overview What is SPI?

More information

Figure 1: Byte 1 Byte 2 MISO <--- OVF EOM P0 P1 P2 P3 P4 P5 P6 P7 P8 P9 P

Figure 1: Byte 1 Byte 2 MISO <--- OVF EOM P0 P1 P2 P3 P4 P5 P6 P7 P8 P9 P A Winbond Company Applications Note 5A Operations, a Simplified Guide A simple but powerful command structure is built into the 4000 series SPI control port. It s inherent flexibility allows the software

More information

EMBED2000+ Data Sheet

EMBED2000+ Data Sheet EMBED2000+ Data Sheet Description The Ocean Optics EMBED2000+ Spectrometer includes the linear CCD-array optical bench, plus all the circuits necessary to operate the array and convert to a digital signal.

More information

MICROCONTROLLER S PROGRAMMER

MICROCONTROLLER S PROGRAMMER MICROCONTROLLER S PROGRAMMER Todor Mladenov Mladenov, Vladimir Mladenov Mladenov Faculty of Communications and Communications Technologies, Faculty of Computer Systems and Control, Technical University

More information

Interfacing Techniques in Embedded Systems

Interfacing Techniques in Embedded Systems Interfacing Techniques in Embedded Systems Hassan M. Bayram Training & Development Department training@uruktech.com www.uruktech.com Introduction Serial and Parallel Communication Serial Vs. Parallel Asynchronous

More information

The 9S12 Serial Peripheral Inteface (SPI) Huang Section 10.2 through 10.6 SPI Block User Guide

The 9S12 Serial Peripheral Inteface (SPI) Huang Section 10.2 through 10.6 SPI Block User Guide The 9S12 Serial Peripheral Inteface (SPI) Huang Section 102 through 106 SPI Block User Guide The 9S12 Serial Peripheral Interface (SPI) The 9S12 has a Synchronous Serial Interface On the 9S12 it is called

More information

< W3150A+ / W5100 Application Note for SPI >

< W3150A+ / W5100 Application Note for SPI > < W3150A+ / W5100 Application Note for SPI > Introduction This application note describes how to set up the SPI in W3150A+ or W5100. Both the W3150A+ and W5100 have same architecture. W5100 is operated

More information

INPUT-OUTPUT ORGANIZATION

INPUT-OUTPUT ORGANIZATION INPUT-OUTPUT ORGANIZATION Peripheral Devices: The Input / output organization of computer depends upon the size of computer and the peripherals connected to it. The I/O Subsystem of the computer, provides

More information

Serial Peripheral Interface (SPI) Host Controller Data Sheet

Serial Peripheral Interface (SPI) Host Controller Data Sheet Serial Peripheral Interface (SPI) Host Controller Data Sheet Proven System Block (PSB) for QuickLogic Customer Specific Standard Products (CSSPs) Features Supports Master configuration (Multi-Master configuration

More information

High Speed SPI Slave Implementation in FPGA using Verilog HDL

High Speed SPI Slave Implementation in FPGA using Verilog HDL High Speed SPI Slave Implementation in FPGA using Verilog HDL Mr. Akshay K. Shah Abstract SPI (Serial Peripheral Interface) is a synchronous serial communication interface for short distance communication.

More information

Serial Communication. Simplex Half-Duplex Duplex

Serial Communication. Simplex Half-Duplex Duplex 1.5. I/O 135 Serial Communication Simplex Half-Duplex Duplex 136 Serial Communication Master-Slave Master Master-Multi-Slave Master Slave Slave Slave (Multi-)Master Multi-Slave Master Slave Slave Slave

More information

ELEC 4200 Lab#10 Interrupting SPI Receiver for use with a Processor Core

ELEC 4200 Lab#10 Interrupting SPI Receiver for use with a Processor Core ELEC 4200 Lab#10 Interrupting SPI Receiver for use with a Processor Core SPI description: http://en.wikipedia.org/wiki/serial_peripheral_interface_bus References you may need: PicoBlaze KCPSM6 User Manual

More information

Growing Together Globally Serial Communication Design In Embedded System

Growing Together Globally Serial Communication Design In Embedded System Growing Together Globally Serial Communication Design In Embedded System Contents Serial communication introduction......... 01 The advantages of serial design......... 02 RS232 interface......... 04 RS422

More information

Serial versus Parallel Data Transfers

Serial versus Parallel Data Transfers Serial versus Parallel Data Transfers 1 SHIFT REGISTERS: CONVERTING BETWEEN SERIAL AND PARALLEL DATA Serial communications Most communications is carried out over serial links Fewer wires needed Less electronics

More information

On a daily basis, first responders are tasked with entering dangerous, often unknown environments

On a daily basis, first responders are tasked with entering dangerous, often unknown environments Ryan Josh Azim The Motivation On a daily basis, first responders are tasked with entering dangerous, often unknown environments These environments usually have little or no visibility due to smoke or other

More information

Review for Exam 3. Write 0x05 to ATD0CTL4 to set at fastest conversion speed and 10-bit conversions

Review for Exam 3. Write 0x05 to ATD0CTL4 to set at fastest conversion speed and 10-bit conversions Review for Exam 3 A/D Converter Power-up A/D converter (ATD0CTL2) Write 0x05 to ATD0CTL4 to set at fastest conversion speed and 10-bit conversions Write 0x85 to ATD0CTL4 to set at fastest conversion speed

More information

Laboratory Exercise 3

Laboratory Exercise 3 Laboratory Exercise 3 Latches, Flip-flops, and egisters The purpose of this exercise is to investigate latches, flip-flops, and registers. Part I Altera FPGAs include flip-flops that are available for

More information

Part 1 Using Serial EEPROMs

Part 1 Using Serial EEPROMs Part 1 Using Serial EEPROMs copyright 1997, 1999 by Jan Axelson If you have a project that needs a modest amount of nonvolatile, read/write memory, serial EEPROM may be the answer. These tiny and inexpensive

More information

Raspberry Pi - I/O Interfaces

Raspberry Pi - I/O Interfaces ECE 1160/2160 Embedded Systems Design Raspberry Pi - I/O Interfaces Wei Gao ECE 1160/2160 Embedded Systems Design 1 I/O Interfaces Parallel I/O and Serial I/O Parallel I/O: multiple input/output simultaneously

More information

Design and development of embedded systems for the Internet of Things (IoT) Fabio Angeletti Fabrizio Gattuso

Design and development of embedded systems for the Internet of Things (IoT) Fabio Angeletti Fabrizio Gattuso Design and development of embedded systems for the Internet of Things (IoT) Fabio Angeletti Fabrizio Gattuso Microcontroller It is essentially a small computer on a chip Like any computer, it has memory,

More information

HANSABA COLLEGE OF ENGINEERING & TECHNOLOGY (098) SUBJECT: DIGITAL ELECTRONICS ( ) Assignment

HANSABA COLLEGE OF ENGINEERING & TECHNOLOGY (098) SUBJECT: DIGITAL ELECTRONICS ( ) Assignment Assignment 1. What is multiplexer? With logic circuit and function table explain the working of 4 to 1 line multiplexer. 2. Implement following Boolean function using 8: 1 multiplexer. F(A,B,C,D) = (2,3,5,7,8,9,12,13,14,15)

More information

I2C and SPI Foundation

I2C and SPI Foundation Revision 30 September 2010 Release I2C and SPI Foundation 17 March 2018 changed ref: command f to x Introduction I2C (I squared C) and SPI (Serial peripheral Interface) are two main ways that microcontrollers

More information

Communication. Chirag Sangani

Communication. Chirag Sangani Communication Scope of Communication Telephones and cell phones. Satellite networks. Radio and DTH services. Campus LAN and wireless. Internet. Intra-galactic communication. Essentials of Communication

More information

FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1

FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1 FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1 Anurag Dwivedi Digital Design : Bottom Up Approach Basic Block - Gates Digital Design : Bottom Up Approach Gates -> Flip Flops Digital

More information

1. Internal Architecture of 8085 Microprocessor

1. Internal Architecture of 8085 Microprocessor 1. Internal Architecture of 8085 Microprocessor Control Unit Generates signals within up to carry out the instruction, which has been decoded. In reality causes certain connections between blocks of the

More information

CprE 488 Embedded Systems Design. Lecture 4 Interfacing Technologies

CprE 488 Embedded Systems Design. Lecture 4 Interfacing Technologies CprE 488 Embedded Systems Design Lecture 4 Interfacing Technologies Joseph Zambreno Electrical and Computer Engineering Iowa State University www.ece.iastate.edu/~zambreno rcl.ece.iastate.edu Never trust

More information

HCTL Open Int. J. of Technology Innovations and Research HCTL Open IJTIR, Volume 4, July 2013 e-issn: ISBN (Print):

HCTL Open Int. J. of Technology Innovations and Research HCTL Open IJTIR, Volume 4, July 2013 e-issn: ISBN (Print): Design, Implementation and Functional Verification of Serial Communication Protocols (SPI and I2C) on FPGAs Amit Kumar Shrivastava and Himanshu Joshi amit0404@gmail.com Abstract Today, at the low end of

More information

EET2411 DIGITAL ELECTRONICS. A device or electrical circuit used to store a single bit (0 or 1) Ex. FF.

EET2411 DIGITAL ELECTRONICS. A device or electrical circuit used to store a single bit (0 or 1) Ex. FF. Chapter 12 - Memory Devices Digital information is easily stored Commonly used memory devices and systems will be examined Flip flops Registers VLSI and LSI memory devices The difference between main memory

More information

LABORATORIO DI ARCHITETTURE E PROGRAMMAZIONE DEI SISTEMI ELETTRONICI INDUSTRIALI. Laboratory Lesson 9: Serial Peripheral Interface (SPI)

LABORATORIO DI ARCHITETTURE E PROGRAMMAZIONE DEI SISTEMI ELETTRONICI INDUSTRIALI. Laboratory Lesson 9: Serial Peripheral Interface (SPI) LABORATORIO DI ARCHITETTURE E PROGRAMMAZIONE DEI SISTEMI ELETTRONICI INDUSTRIALI Laboratory Lesson 9: Serial Peripheral Interface (SPI) Prof. Luca Benini Prof Davide Rossi

More information

Serial Communication. Spring, 2018 Prof. Jungkeun Park

Serial Communication. Spring, 2018 Prof. Jungkeun Park Serial Communication Spring, 2018 Prof. Jungkeun Park Serial Communication Serial communication Transfer of data over a single wire for each direction (send / receive) Process of sending data one bit at

More information

Generic Serial Flash Interface Intel FPGA IP Core User Guide

Generic Serial Flash Interface Intel FPGA IP Core User Guide Generic Serial Flash Interface Intel FPGA IP Core User Guide Updated for Intel Quartus Prime Design Suite: 18.0 Subscribe Send Feedback Latest document on the web: PDF HTML Contents Contents 1. Generic

More information

Summer 2003 Lecture 21 07/15/03

Summer 2003 Lecture 21 07/15/03 Summer 2003 Lecture 21 07/15/03 Simple I/O Devices Simple i/o hardware generally refers to simple input or output ports. These devices generally accept external logic signals as input and allow the CPU

More information

DISCONTINUED. SPI Communication with AMT bit Absolute Encoder

DISCONTINUED. SPI Communication with AMT bit Absolute Encoder ApplicAtion note An-1001 SPI Communication with AMT203 12-bit Absolute Encoder introduction This application note is designed to provide guidelines on how to properly interface with the AMT 203 Absolute

More information

Outcomes. Spiral 1 / Unit 6. Flip Flops FLIP FLOPS AND REGISTERS. Flip flops and Registers. Outputs only change once per clock period

Outcomes. Spiral 1 / Unit 6. Flip Flops FLIP FLOPS AND REGISTERS. Flip flops and Registers. Outputs only change once per clock period 1-6.1 1-6.2 Spiral 1 / Unit 6 Flip flops and Registers Mark Redekopp Outcomes I know the difference between combinational and sequential logic and can name examples of each. I understand latency, throughput,

More information

Serial Communications

Serial Communications 1 Serial Interfaces 2 Embedded systems often use a serial interface to communicate with other devices. Serial Communications Serial implies that it sends or receives one bit at a time. Serial Interfaces

More information

Freescale Semiconductor, Inc.

Freescale Semiconductor, Inc. Order this document by /D Software I 2 C Communications By Brad Bierschenk MMD Applications Engineering Austin, Texas Introduction I 2 C Overview The I 2 C (inter-integrated circuit) protocol is a 2-wire

More information

PIXI click PID: MIKROE Weight: 28 g

PIXI click PID: MIKROE Weight: 28 g PIXI click PID: MIKROE-2817 Weight: 28 g PIXI click is equipped with MAX11300 IC from Maxim Integrated, which features Maxim Integrated's versatile, proprietary PIXI technology - it is the industry's first

More information

USER GUIDE EDBG. Description

USER GUIDE EDBG. Description USER GUIDE EDBG Description The Atmel Embedded Debugger (EDBG) is an onboard debugger for integration into development kits with Atmel MCUs. In addition to programming and debugging support through Atmel

More information

LAB4. Program the on chip SPI module

LAB4. Program the on chip SPI module LAB4 Program the on chip SPI module Outline Learn to utilize the on-chip SPI module Implement it in C Translate it to ARM Assembly Test and verify the result using oscilloscope and shift register. Serial

More information

or between microcontrollers)

or between microcontrollers) : Communication Interfaces in Embedded Systems (e.g., to interface with sensors and actuators or between microcontrollers) Spring 2016 : Communication Interfaces in Embedded Systems Spring (e.g., 2016

More information

Hardware Design of a Flight Control Computer System based on Multi-core Digital Signal Processor and Field Programmable Gate Array

Hardware Design of a Flight Control Computer System based on Multi-core Digital Signal Processor and Field Programmable Gate Array Article Hardware Design of a Flight Control Computer System based on Multi-core Digital Signal Processor and Field Programmable Gate Array Francisco Bilendo 1 ; *francisco-bilendo@hotmail.com Sheng Shouzhao

More information

A MOSIS CMOS 4-bit, 8-sample Fast Fourier Transform Chip Set

A MOSIS CMOS 4-bit, 8-sample Fast Fourier Transform Chip Set Test results for MOSIS Educational Program (Instructional) A MOSIS CMOS 4-bit, 8-sample Fast Fourier Transform Chip Set Neil Tuttle, Ziyuan Zhang, Sandra Pellecer, Dr. Peter Osterberg, Dr. Aziz Inan University

More information

Order Number: MC68HC55 Rev. 2 MC68HC55/D Technical Data Two-Channel CMOS ASIC Device Section 1. DSI/D (Distributed System Interface Digital) 1.1 Featu

Order Number: MC68HC55 Rev. 2 MC68HC55/D Technical Data Two-Channel CMOS ASIC Device Section 1. DSI/D (Distributed System Interface Digital) 1.1 Featu Order Number: Rev. 2 /D Two-Channel CMOS ASIC Device Section 1. DSI/D (Distributed System Interface Digital) 1.1 Features........................................2 1.2 General Description of the DSI System.................3

More information

EE 3170 Microcontroller Applications

EE 3170 Microcontroller Applications EE 3170 Microcontroller Applications Lecture 4 : Processors, Computers, and Controllers - 1.2 (reading assignment), 1.3-1.5 Based on slides for ECE3170 by Profs. Kieckhafer, Davis, Tan, and Cischke Outline

More information

C8051F700 Serial Peripheral Interface (SPI) Overview

C8051F700 Serial Peripheral Interface (SPI) Overview C8051F700 Serial Peripheral Interface (SPI) Overview Agenda C8051F700 block diagram C8051F700 device features SPI operation overview SPI module overview Where to learn more 2 Introducing The C8051F700

More information

Spiral 1 / Unit 6. Flip-flops and Registers

Spiral 1 / Unit 6. Flip-flops and Registers 1-5.1 Spiral 1 / Unit 6 Flip-flops and Registers 1-5.2 Outcomes I know the difference between combinational and sequential logic and can name examples of each. I understand latency, throughput, and at

More information

DataFlash. Application Note. Using Atmel s DataFlash. Introduction (AN-4)

DataFlash. Application Note. Using Atmel s DataFlash. Introduction (AN-4) Using Atmel s DataFlash Introduction In the past, engineers have struggled to use Flash memory for data storage applications. The traditional Flash memory devices, with their large page sizes of 4K to

More information

Outcomes. Spiral 1 / Unit 6. Flip Flops FLIP FLOPS AND REGISTERS. Flip flops and Registers. Outputs only change once per clock period

Outcomes. Spiral 1 / Unit 6. Flip Flops FLIP FLOPS AND REGISTERS. Flip flops and Registers. Outputs only change once per clock period 1-5.1 1-5.2 Spiral 1 / Unit 6 Flip flops and Registers Mark Redekopp Outcomes I know the difference between combinational and sequential logic and can name examples of each. I understand latency, throughput,

More information

Using FlexIO to emulate communications and timing peripherals

Using FlexIO to emulate communications and timing peripherals NXP Semiconductors Document Number: AN12174 Application Note Rev. 0, 06/2018 Using FlexIO to emulate communications and timing peripherals 1. Introduction The FlexIO is a new on-chip peripheral available

More information

C329-SPI User Manual. Release Note: V th September, 2010 First release. V th January 2012 Second release. C329-SPI User Manual

C329-SPI User Manual. Release Note: V th September, 2010 First release. V th January 2012 Second release. C329-SPI User Manual C329-SPI User Manual Release Note: V1.0 27 th September, 2010 First release V1.1 12 th January 2012 Second release C329-SPI JPEG Compression Module 1 2010.08.25 General The C329 is a colour VGA camera

More information

YOU WILL NOT BE ALLOWED INTO YOUR LAB SECTION WITHOUT THE REQUIRED PRE-LAB.

YOU WILL NOT BE ALLOWED INTO YOUR LAB SECTION WITHOUT THE REQUIRED PRE-LAB. Page 1/5 Revision 2 OBJECTIVES Learn how to use SPI communication to interact with an external IMU sensor package. Stream and plot real-time XYZ acceleration data with USART to Atmel Studio s data visualizer.

More information

Pressure 4 click. PID: MIKROE 3020 Weight: 24 g

Pressure 4 click. PID: MIKROE 3020 Weight: 24 g Pressure 4 click PID: MIKROE 3020 Weight: 24 g Pressure 4 click is an absolute barometric pressure measurement Click board, which features a low power consumption, high precision barometric pressure sensor.

More information

EE 456 Fall, Table 1 SPI bus signals. Figure 1 SPI Bus exchange of information between a master and a slave.

EE 456 Fall, Table 1 SPI bus signals. Figure 1 SPI Bus exchange of information between a master and a slave. EE 456 Fall, 2009 Notes on SPI Bus Blandford/Mitchell The Serial Peripheral Interface (SPI) bus was created by Motorola and has become a defacto standard on many microcontrollers. This is a four wire bus

More information

Temperature Sensor TMP2 PMOD Part 1

Temperature Sensor TMP2 PMOD Part 1 Temperature Sensor TMP2 PMOD Part 1 Overview of the Temperature Sensor and I 2 C Interfacing Reference Sites: Diligent Temp2 PMOD: http://www.digilentinc.com/products/detail.cfm?navpath=2,401,961&prod=pmod-tmp2

More information

University of Technology

University of Technology University of Technology Lecturer: Dr. Sinan Majid Course Title: microprocessors 4 th year Lecture 13 Counters Overview Counters are important components in computers The increment or decrement by one

More information

Level Shifter. for. Hardware User s Manual.

Level Shifter. for. Hardware User s Manual. Level Shifter for USB-to to-i2c Hardware User s Manual https://www.i2ctools.com/ Information provided in this document is solely for use with the I2C and SPI Level Shifter from SB Solutions, Inc. SB Solutions,

More information

Using the MagAlpha Serial Interface Advanced Features. Application Note

Using the MagAlpha Serial Interface Advanced Features. Application Note AN137 Using the MagAlpha Serial Interface Advanced Features Using the MagAlpha Serial Interface Advanced Features Application Note Prepared by M. Kaelin June 2018 TABLE OF CONTENTS INTRODUCTION... 3 PARITY

More information

A Half-duplex Synchronous Serial Fieldbus S 2 CAN with Multi-host Structure

A Half-duplex Synchronous Serial Fieldbus S 2 CAN with Multi-host Structure Sensors & Transducers 2014 by IFSA Publishing, S. L. http://www.sensorsportal.com A Half-duplex Synchronous Serial Fieldbus S 2 CA with Multi-host Structure Xu-Fei SU College of Physics and Information

More information

MOS INTEGRATED CIRCUIT

MOS INTEGRATED CIRCUIT DATA SHEET MOS INTEGRATED CIRCUIT µpd6708 IEBus (Inter Equipment Bus ) PROTOCOL CONTROL LSI DESCRIPTION The µpd6708 is a peripheral LSI for microcontrollers that controls the protocol of the IEBus. This

More information

CPE/EE 421/521 Fall 2004 Chapter 4 The CPU Hardware Model. Dr. Rhonda Kay Gaede UAH. The CPU Hardware Model - Overview

CPE/EE 421/521 Fall 2004 Chapter 4 The CPU Hardware Model. Dr. Rhonda Kay Gaede UAH. The CPU Hardware Model - Overview CPE/EE 421/521 Fall 2004 Chapter 4 The 68000 CPU Hardware Model Dr. Rhonda Kay Gaede UAH Fall 2004 1 The 68000 CPU Hardware Model - Overview 68000 interface Timing diagram Minimal configuration using the

More information

SPI Universal Serial Communication Interface SPI Mode

SPI Universal Serial Communication Interface SPI Mode SPI Universal Serial Communication Interface SPI Mode Serial Peripheral Interface (SPI) is not really a protocol, but more of a general idea. It s the bare-minimum way to transfer a lot of data between

More information

Problem Formulation. Specialized algorithms are required for clock (and power nets) due to strict specifications for routing such nets.

Problem Formulation. Specialized algorithms are required for clock (and power nets) due to strict specifications for routing such nets. Clock Routing Problem Formulation Specialized algorithms are required for clock (and power nets) due to strict specifications for routing such nets. Better to develop specialized routers for these nets.

More information

output current sink/source 2 ma PIC 16F690 (see datasheet) SPI resolution 12 bit position accuracy 0.2 deg

output current sink/source 2 ma PIC 16F690 (see datasheet) SPI resolution 12 bit position accuracy 0.2 deg date 02/12/2013 page 1 of 7 SERIES: AMT203 DESCRIPTION: MODULAR ENCODER FEATURES 12 bit (4,096 positions) SPI communication small size 37mm incremental line count up to 1,024 single pulse index capacitive

More information

Pedometer 3 Click. PID: MIKROE 3259 Weight: 24 g

Pedometer 3 Click. PID: MIKROE 3259 Weight: 24 g Pedometer 3 Click PID: MIKROE 3259 Weight: 24 g The Pedometer 3 click is a tri-axis acceleration sensing Click board utilizing the KX126-1063. An advanced three-axis acceleration sensor, the KX126-1063

More information

SHRI ANGALAMMAN COLLEGE OF ENGINEERING. (An ISO 9001:2008 Certified Institution) SIRUGANOOR, TIRUCHIRAPPALLI

SHRI ANGALAMMAN COLLEGE OF ENGINEERING. (An ISO 9001:2008 Certified Institution) SIRUGANOOR, TIRUCHIRAPPALLI SHRI ANGALAMMAN COLLEGE OF ENGINEERING AND TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR, TIRUCHIRAPPALLI 621 105 DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING EC1201 DIGITAL

More information

ECE2049: Embedded Computing in Engineering Design C Term Spring 2018

ECE2049: Embedded Computing in Engineering Design C Term Spring 2018 ECE2049: Embedded Computing in Engineering Design C Term Spring 2018 Lecture #19: Using SPI The LCD Screen and DAC Reading for Today: User's Manual Ch 35, Davies 101.5, DAC datasheet Reading for Next Class:

More information