(*) Design (VHDL) (*) Verification (System Verilog) Presented by: Omer Shaked Beeri Schreiber The SPI Project 27.09.2011.

Slides:



Advertisements
Similar presentations
Anurag Dwivedi Rudra Pratap Suman. Scope of Communica tion Telephones and Cell Phones.
Advertisements

The 8051 Microcontroller Chapter 5 SERIAL PORT OPERATION.
Internal Logic Analyzer Final presentation-part B
Internal Logic Analyzer Final presentation-part A
Digital Systems Design VHDL in Bluetooth Baseband Module by Marc A. Mackey.
Serial Interfaces, Part Deux -I 2 C and SPI December 4, 2002 Presented by Eugene Ho.
Presented by: Omer Shaked Beeri Schreiber Serial Peripheral Interface Final Project Presentation Supervised by: Tal Yahav Leon Polishuk.
Turbo decoder Core For ASIC&System Development softDSP Corporation
1 Asynchronous Bit-stream Compression (ABC) IEEE 2006 ABC Asynchronous Bit-stream Compression Arkadiy Morgenshtein, Avinoam Kolodny, Ran Ginosar Technion.
Serial Communication Buses: I 2 C and SPI By Brody Dunn.
Encryption Transaction with 3DES Team W2 Yervant Dermenjian (W21) Taewan Kim (W22) Evan Mengstab(W23) Xiaochun Zhu(W24) Objective: To implement a secure.
Reliable Data Storage using Reed Solomon Code Supervised by: Isaschar (Zigi) Walter Performed by: Ilan Rosenfeld, Moshe Karl Spring 2004 Midterm Presentation.
Fibre Channel Video Controller Project Description Kapshitz Tsachy Grinkrug Michael.
7-1 Digital Serial Input/Output Two basic approaches  Synchronous shared common clock signal all devices synchronised with the shared clock signal data.
Configuration. Mirjana Stojanovic Process of loading bitstream of a design into the configuration memory. Bitstream is the transmission.
Serial Peripheral Interface (SPI) Bus. SPI Bus There is no official specification for the SPI bus. It is necessary to consult the data sheets of the devices.
Serial Peripheral Interface Module MTT M SERIAL PERIPHERAL INTERFACE (SPI)
Multichannel Serial Port Interface (McSPI)
CRKit RF Control WINLAB – Rutgers University Date : June Authors : Prasanthi Maddala, Khanh Le,
CRKit RF Control WINLAB – Rutgers University Date : June Authors : Prasanthi Maddala, Khanh Le,
4.0 rtos implementation part II
CRKit RF Control WINLAB – Rutgers University Date : June Authors : Prasanthi Maddala, Khanh Le,
CRKit RF Control WINLAB – Rutgers University Date : June Authors : Prasanthi Maddala, Khanh Le,
Final presentation – part B Olga Liberman and Yoav Shvartz Advisor: Moshe Porian April 2013 S YMBOL G ENERATOR 2 semester project.
7/23 Inter-chip Serial Communication: SPI and I 2 C Computer Science & Engineering Department Arizona State University Tempe, AZ Dr. Yann-Hang Lee.
Presented by : Maya Oren & Chen Feigin Supervisor : Moshe Porian Lab: High Speed Digital System One Semester project – Spring
Volume. 1-the idea of the program is to increase, decrease the volume. 2-the program does the following: A-PF8:decrease the volume B-Pf9:increase the.
Lecture 20: Communications Lecturers: Professor John Devlin Mr Robert Ross.
Universal Asynchronous Receiver/Transmitter (UART)
Picture to be sent (640x480) Displayed Picture (800x600) HOST VGA DE2 Board.
Electrocardiogram (ECG) application operation – Part B Performed By: Ran Geler Mor Levy Instructor:Moshe Porian Project Duration: 2 Semesters Spring 2012.
REGISTER MANAGEMENT TOOL Preformed by: Liat Honig Nitzan Carmel Supervisor: Moshe Porian Date: 24/11/2011, winter semester 2011 Duration: One semester.
Atmel Atmega128 Overview ALU Particulars RISC Architecture 133, Mostly single cycle instructions 2 Address instructions (opcode, Rs, Rd, offset) 32x8 Register.
Project Characterization Implementing a compressor in software and decompression in hardware Presents by - Schreiber Beeri Yavich Alon Guided by – Porian.
Design of a Novel Bridge to Interface High Speed Image Sensors In Embedded Systems Tareq Hasan Khan ID: ECE, U of S Term Project (EE 800)
LZRW3 Decompressor dual semester project Part A Mid Presentation Students: Peleg Rosen Tal Czeizler Advisors: Moshe Porian Netanel Yamin
Electrocardiogram (ECG) application operation – Part A Performed By: Ran Geler Mor Levy Instructor:Moshe Porian Project Duration: 2 Semesters Spring 2012.
Performed by:Yulia Turovski Lior Bar Lev Instructor: Mony Orbach המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
ATtiny23131 A SEMINAR ON AVR MICROCONTROLLER ATtiny2313.
Project Final Semester A Presentation Implementing a compressor in software and decompression in hardware Presents by - Schreiber Beeri Yavich Alon Guided.
Tools - LogiBLOX - Chapter 5 slide 1 FPGA Tools Course The LogiBLOX GUI and the Core Generator LogiBLOX L BX.
FPGA firmware of DC5 FEE. Outline List of issue Data loss issue Command error issue (DCM to FEM) Command lost issue (PC with USB connection to GANDALF)
Flush UART RX MP Dec RAM 1 SDRAM Controller WBS WBM – Wishbone Master WBS – Wishbone Slave Mem Ctrl Wr Mem Ctrl Rd SDRAM Arbiter WBS RAM 2 MP Enc UART.
OCRP RF Control WINLAB – Rutgers University Date : June Authors : Prasanthi Maddala, Khanh Le,
REGISTER MANAGMENT TOOL Preformed by: Liat Honig Nitzan Carmel Supervisor: Moshe Porian Date: 29/1/2012 winter semester 2011 Duration: One semester Middle.
(*) Design (VHDL) (*) Verification (System Verilog) Presented by: Omer Shaked Beeri Schreiber The SPI Project
© 2009, Renesas Technology America, Inc., All Rights Reserved 1 Course Introduction  Purpose:  This course provides an overview of the serial communication.
GBT SCA overview Slide 1-5 Work status Slide 6-10 Shuaib Ahmad Khan.
Part A Final Dor Obstbaum Kami Elbaz Advisor: Moshe Porian August 2012 FPGA S ETTING U SING F LASH.
REGISTER MANAGMENT TOOL Preformed by: Liat Honig Nitzan Carmel Supervisor: Moshe Porian Date: 17/05/13 Duration: Two Semesters Final presentation – Part.
Lab 2.
OCRP RF Control WINLAB – Rutgers University Date : June Authors : Prasanthi Maddala, Khanh Le,
CERN, 18 december 2003Coincidence Matrix ASIC PRR Coincidence ASIC modifications E.Petrolo, R.Vari, S.Veneziano INFN-Rome.
Mini scope one semester project Project final Presentation Svetlana Gnatyshchak Lior Haiby Advisor: Moshe Porian Febuary 2014.
Communicating. The ATmega16 communicates through one of the following ways: Serial Peripheral Interface (SPI) Universal Synchronous and Asynchronous serial.
Output imageIntput image. Output imageIntput image.
BIRLA VISHVAKARMA MAHAVIDYALAY SUBJECT: SPI PROTOCOL & MAX7221 DISPLAY INTERFACING SUBMITTED BY: KISHAN AVASTHI( ) MANSI CHANDEGARA( )
Genova May 2013 Diego Real – David Calvo IFIC (CSIC – Universidad de Valencia) CLBv2 1.
Status and Plans for Xilinx Development
©F.M. Rietti Communication Lines Fundamentals. ©F.M. Rietti LM-18 Computer Science SSI Embedded Systems I 2 Communication Lines Generally used to connect.
Verification for Ethernet second/first layer with 10 Gigabit Attachment Interface (XAUI) Matan Kacen Intel, ICG, LAD HW AV June 2005 Dr. Nissim Tsouri.
Internal Logic Analyzer Middle presentation-part A By: Moran Katz and Zvika Pery Mentor: Moshe Porian Dual-semester project Spring 2012.
Serial Communications
SERIAL PERIPHERAL INTERFACE
I2C PROTOCOL SPECIFICATION
EEPROM Comparison – Parallel or Serial
Clock Domain Crossing Keon Amini.
SPI Protocol and DAC Interfacing
SPI Protocol and DAC Interfacing
Programmable Data Communication Blocks
Presentation transcript:

(*) Design (VHDL) (*) Verification (System Verilog) Presented by: Omer Shaked Beeri Schreiber The SPI Project

Background - SPI Asynchronous serial data link standard Operates in full duplex mode Devices communicate in master/slave mode the master device initiates the data frame.

Protocol - SPI The master configure the clock polarity and phase with respect to the data

Project Goals 1.Implement SPI Master and SPI Slave 2.Implement SPI Master and Slave Hosts 3.Build Test Benches in System Verilog: A.Individual TB for SPI Master and SPI Slave B.Top TB for the entire system

Implementation Main Problem SPI Clock’s frequency and Polarity may change during runtime. Therefore – SPI Clock cannot be placed in the global nets.

Solution SPI Master and Slave works with the System Clock. Master: SPI Clock is generated from the System Clock, using counter. Slave: SPI Clock (spi_clk) is derivate. SPI Clock Event (MSB = ‘1’) SPI Clock Event (MSB = ‘1’)

Top Architecture Slave Host Slave Host Master Host Master Host Wishbone Slave Interface Wishbone Slave Interface SPI Master Interface SPI Slave Interface RAM Interface RAM

Master Architecture SPI Master SPI Master FIFO Wishbone Slave Controller Wishbone Slave Controller SPI Interface Wishbone Interface Master Host Dec. RAM Enc. RAM M.P. Encoder M.P. Decoder MUX ‘0’ Checksum Implementation for all components is done!

Slave Architecture SPI Slave SPI Slave SPI Interface Message Pack Decoder Message Pack Encoder Type Register Type Register RAM Controller RAM Controller Internal Registers Internal Registers MUX RAM Interface Slave Host RAM Not implemented yet CPOL, CPHA DEC FIFO

Simulations 1.VHDL TB has been performed on RAM, FIFO, Checksum, Message Packs, SPI Master 2.System Verilog TB should be written for the following: A.Individual TB for SPI Master and Slave B.Whole System (Including Wishbone Interface)

Directory Structure 1.All project files are saved to SVN.

Schedule 1.SPI Slave – Slave RAM Controller – Master Host and Slave Connection – Verification schedule is unknown yet.

Verification Plan (1) SPI Master: a.Run with all 4 possible options of CPOL and CPHA. b.Validate that clock is divided correct for minimum and maximum register value. c.FIFO empty (should stop SPI Master transaction). d.Register change during active transaction (Should cause error) e.Operation with single / multiple slaves f.During RESET, change inputs. Validate outputs are in their default value.

Verification Plan (2) SPI Slave: a.Run with all 4 possible options of CPOL and CPHA. b.Negate SPI_SS in the middle of the transaction. c.SPI_CLK stops for a long time (time out). d.Data from RAM is not valid when it should be. e.Register change during active transaction (Should influence after transaction only) f.During RESET, change inputs. Validate outputs are in their default value.

Verification Plan (3) Top Test Bench: a.Run with all 4 possible options of CPOL and CPHA. b.Run with different SPI_CLK frequencies. c.Write data to random address in RAM, then read from it. Validate data match. d.Perform “Write-write-read-write-read”. e.Perform “Write-read-read-write-read”. f.Write Single (burst size of 1), and Burst. g.Write / read to / from non-existing register address. h.Write to valid address, but burst length exceeds from valid address. i.Stop transaction in the middle (Negate WBM_CYC). j.Perform RESET in the middle of the transaction.