DATASHEET. Synchronous Serial Interface (SPI)

Similar documents
Smart Card Bridge to Full-Speed USB, SPI, and UART Interfaces

LAN bit Non-PCI Small Form Factor 10/100 Ethernet Controller with Variable Voltage I/O & HP Auto-MDIX Support PRODUCT FEATURES.

EVB-USB2640 Evaluation Board Revision A

USB2507. Integrated USB 2.0 Compatible 7-Port Hub PRODUCT FEATURES. Data Brief

LAN bit Non-PCI 10/100 Ethernet Controller with HP Auto-MDIX Support PRODUCT FEATURES. Highlights. Target Applications.

KBC1122/KBC1122P. Mobile KBC with Super I/O, SFI, ADC and DAC with SMSC SentinelAlert! TM PRODUCT FEATURES. Data Brief

EVB-USB82640 Evaluation Board Revision A User Manual

EVB-USB2250 User Manual Revision B

Complete USB2.0 Digital Wireless Audio Dongle

EVB-USB2517 Evaluation Board User Manual (Revision A)

HIGH PERFORMANCE ECP/EPP PRINTER INTERFACE USING THE PPC34C60 PPIC

EVB-USB2514Q48 48-Pin QFN Evaluation Board Revision A1

CAP1114. Multiple Channel Capacitive Touch Sensor and LED Driver PRODUCT FEATURES PRODUCT PREVIEW

USB Port USB 2.0 Hub Controller PRODUCT FEATURES. Data Brief

Frequently Asked Questions

LAN9420/LAN9420i. Single-Chip Ethernet Controller with HP Auto-MDIX Support and PCI Interface PRODUCT FEATURES PRODUCT PREVIEW.

LAN9500/LAN9500i LAN9500A/LAN9500Ai USB 2.0 to 10/100 Ethernet Controller

LAN9512 Evaluation Board User Manual

PPC34C60 Tips Background, History, Design Issues and Recommendations IEEE 1284 Detailing Interrupt and DMA Considerations By Bob Gross

Using the NEMA SHADER-Edit

For the LAN91C111 TQFP package, the Vdd and AVdd pins are located as follows: Pin #1, #11, #16, #33, #44, #62, #77, #98, #110, #120.

AN USB332x Transceiver Layout Guidelines

ORDERING INFORMATION. Order Numbers: COM20019ILJP for 28 pin PLCC package; COM20019I-DZD for 28 pin PLCC lead-free RoHS Compliant package

USB2640i/USB2641i. Industrial Temperature USB 2.0 Flash Media Controller and Hub Combo PRODUCT FEATURES PRODUCT PREVIEW. General Description.

EVB-USB2514Q36-BAS, USB2513 and USB Pin QFN Evaluation Board User Manual

EVB-USB2514Q36-BAS, USB2513 and USB Pin QFN Evaluation Board, Revision C User Manual

USB2512. USB 2.0 High-Speed 2-Port Hub Controller PRODUCT FEATURES

USB2533 USB 2.0 Hi-Speed 3-Port Hub Controller

LAN9303/LAN9303i. Small Form Factor Three Port 10/100 Managed Ethernet Switch with Single MII/RMII/Turbo MII PRODUCT FEATURES.

EMC2113. RPM-Based Fan Controller with Multiple Temperature Zones & Hardware Thermal Shutdown PRODUCT FEATURES. General Description.

LAN9303 Evaluation Board User Manual

Ethernet1 Xplained Pro

LAN9513/LAN9513i. USB 2.0 Hub and 10/100 Ethernet Controller PRODUCT FEATURES PRODUCT PREVIEW. Highlights. Target Applications.

EVB-USB2240-IND User Manual Revision B

AN Migrating the USB97CFDC to the USB97CFDC2

Digital Blocks Semiconductor IP

FDC37C6XX SUPER I/O UNIVERSAL DESIGN-IN APPLICATION NOTE

EVB8720 Evaluation Board User Manual

Please visit SMSC's website at for the latest updated documentation.

USB3319. Hi-Speed USB Transceiver with 1.8V ULPI Interface - 13MHz Reference Clock PRODUCT FEATURES. Applications. Data Brief

LPC47N217N. 56-Pin Super I/O with LPC Interface PRODUCT FEATURES. Data Brief

EDBG. Description. Programmers and Debuggers USER GUIDE

How to use the NTAG I²C plus for bidirectional communication. Rev June

Verilog AHB Testbench User's Guide

LAN9313/LAN9313i. Three Port 10/100 Managed Ethernet Switch with MII PRODUCT FEATURES PRODUCT PREVIEW. Highlights. Target Applications.

AT11512: SAM L Brown Out Detector (BOD) Driver. Introduction. SMART ARM-based Microcontrollers APPLICATION NOTE

AVR42789: Writing to Flash on the New tinyavr Platform Using Assembly

USB334x. Enhanced Single Supply Hi-Speed USB ULPI Transceiver PRODUCT FEATURES PRODUCT PREVIEW. Applications. Data Brief

AT60142H/HT. Rad-Hard 512Kx8 Very Low Power CMOS SRAM ERRATA-SHEET. Active Errata List. Errata History. Abbreviations. 1.

APPLICATION NOTE. AT11008: Migration from ATxmega16D4/32D4 Revision E to Revision I. Atmel AVR XMEGA. Introduction. Features

USER GUIDE EDBG. Description

APPLICATION NOTE 9.15

UM NVT2001GM and NVT2002DP demo boards. Document information

SAM4 Reset Controller (RSTC)

TMC2072. Peripheral Mode CircLink TM Controller PRODUCT FEATURES. Data Brief

AT03262: SAM D/R/L/C System Pin Multiplexer (SYSTEM PINMUX) Driver. Introduction. SMART ARM-based Microcontrollers APPLICATION NOTE

NXP AN11528 sensor Application note

SIO1000. Super I/O with LPC Interface with FIR and Consumer IR Support PRODUCT FEATURES. Data Brief

This application note is written for a reader that is familiar with Ethernet hardware design.

AN LAN9xxx Series Migration

AN CBTL08GP053 Programmer's Guide. Document information. Keywords Abstract

*X13186* Multimedia and Control Networking Technology. MOST Media Oriented Systems Transport. MediaLB Analyzer Hardware Manual

USB3740. High Speed Switch for Mobile and Portable Applications USB3740 PRODUCT FEATURES DATASHEET. USB3740 Block Diagram

7 Series FPGAs Memory Interface Solutions (v1.9)

White Paper AHB to Avalon & Avalon to AHB Bridges

Supported Device Family (1) Supported User Interfaces. Simulation Models Supported S/W Drivers. Simulation. Notes:

AT03975: Getting Started with SAM L21. Descripton. Features. SMART ARM-Based Microcontroller APPLICATION NOTE

Programmable USB Port Power Controller with Charger Emulation

AN10955 Full-duplex software UART for LPC111x and LPC13xx

USER GUIDE. Atmel QT6 Xplained Pro. Preface

AN Conversion from USB251x to USB251xB. 1 Introduction. 1.1 References. 1.2 Objective. 1.3 Overview. 2 Package and Pin Layout

ATAES132A Firmware Development Library. Introduction. Features. Atmel CryptoAuthentication USER GUIDE

UM NVT2008PW and NVT2010PW demo boards. Document information

AT10942: SAM Configurable Custom Logic (CCL) Driver. Introduction. SMART ARM-based Microcontrollers APPLICATION NOTE

AT09381: SAM D - Debugging Watchdog Timer Reset. Introduction. SMART ARM-based Microcontrollers APPLICATION NOTE

USB2227/USB th Generation USB 2.0 Flash Media Controller with Integrated Card Power FETs PRODUCT FEATURES. Data Brief

USER GUIDE. Atmel OLED1 Xplained Pro. Preface

Wireless Audio Processor with Tri-Band Support and Embedded Multi-Channel USB 2.0 Audio Controller

SAMA5D2 Quad SPI (QSPI) Performance. Introduction. SMART ARM-based Microprocessor APPLICATION NOTE

AT21CS Series Reset and Discovery. Introduction. Serial EEPROM APPLICATION NOTE

Section 5 SERCOM. Tasks SPI. In this section you will learn:

APPLICATION NOTE. Atmel AT02260: Driving AT42QT1085. Atmel QTouch. Features. Description

USB3300. Hi-Speed USB Host or Device PHY with ULPI Low Pin Interface PRODUCT FEATURES. Data Brief

AVR134: Real Time Clock (RTC) Using the Asynchronous Timer. Features. Introduction. AVR 8-bit Microcontrollers APPLICATION NOTE

Table 1.1 summarizes the changes needed to migrate from the LAN8700 to the LAN8710A/LAN8720A. Table 1.1 Summary of Changes Required

QT3 Xplained Pro. Preface. Atmel QTouch USER GUIDE

AN NTAG I²C plus memory configuration options. Application note COMPANY PUBLIC. Rev June Document information

a clock signal and a bi-directional data signal (SCL, SDA)

ES_LPC81xM. Errata sheet LPC81xM. Document information

USER GUIDE. Atmel QT1 Xplained Pro. Preface

APPLICATION NOTE. Atmel AT03304: SAM D20 I 2 C Slave Bootloader SAM D20. Description. Features

EVB-USB3300 User Manual

UM PCAL6524 demonstration board OM Document information

APPLICATION NOTE. AT6486: Using DIVAS on SAMC Microcontroller. SMART ARM-Based Microcontroller. Introduction. Features

USER GUIDE. ATWINC1500 Xplained Pro. Preface

UM NXP USB PD shield board user manual COMPANY PUBLIC. Document information

4th Generation USB 2.0 Flash Media Controller with Integrated Card Power FETs and HS Hub

FOR TCG ACPI Specification

Using LPC11Axx EEPROM (with IAP)

AVR42772: Data Logger Demo Application on XMEGA A1U Xplained Pro. Introduction. Features. AVR XMEGA Microcontrollers APPLICATION NOTE

Transcription:

DATASHEET Synchronous Serial Interface (SPI) Arasan Chip Systems, Inc. 2010 North First Street, Suite #510 San Jose, CA 95131 Ph:408-282-1600 Fx:408-282-7800 www.arasan.com June, 2018 i

DISCLAIMER This document is written in good faith with the intent to assist the readers in the use of the product. Circuit diagrams and other information relating to Arasan Chip Systems products are included as a means of illustrating typical applications. Although the information has been checked and is believed to be accurate, no responsibility is assumed for inaccuracies. Information contained in this document is subject to continuous improvements and developments. Arasan Chip Systems products are not designed, intended, authorized or warranted for use in any life support or other application where product failure could cause or contribute to personal injury or severe property damage. Any and all such uses without prior written approval of an Officer of Arasan Chip Systems Inc. will be fully at the risk of the customer. Arasan Chip Systems Inc. disclaims and excludes any and all warranties, including without limitation any and all implied warranties of merchantability, fitness for a particular purpose, title, and infringement and the like, and any and all warranties arising from any course or dealing or usage of trade. This document may not be copied, reproduced, or transmitted to others in any manner. Nor may any use of information in this document be made, except for the specific purposes for which it is transmitted to the recipient, without the prior written consent of Arasan Chip Systems, Inc. This specification is subject to change at any time without notice. Arasan Chip Systems Inc. is not responsible for any errors contained herein. In no event shall Arasan Chip Systems Inc. be liable for any direct, indirect, incidental, special, punitive, or consequential damages; or for lost of data, profits, savings or revenues of any kind; regardless of the form of action, whether based on contract; tort; negligence of Arasan Chip Systems or others; strict liability; breach of warranty; or otherwise; whether or not any remedy of buyers is held to have failed of its essential purpose, and whether or not Arasan Chip Systems Inc. has been advised of the possibility of such damages. Restricted Rights Use, duplication, or disclosure by the Government is subject to restrictions as set forth in FAR52.227-14 and DFAR252.227-7013 et seq. or its successor. Copyright Notice No part of this specification may be reproduced in any form or means, without the prior written consent of Arasan Chip Systems, Inc. Questions or comments may be directed to: Arasan Chip Systems, Inc. 2010 North First Street Suite 510, San Jose, CA 95131. Ph: 408-282-1600 Fx: 408-282-7800 Email: sales@arasan.com http://www.arasan.com 1

CONTENTS 1 INTRODUCTION... 3 1.1 Overview... 3 1.2 Features... 4 1.2.1 SPI Bus... 4 1.2.2 AHB Bus... 4 2 ARCHITECTURE... 5 2.1 AHB Target/Master Interface... 5 2.2 Registers... 5 2.3 Clock Pre-scalar... 6 2.4 SPI Transceiver... 6 2.5 Transmit FIFO... 6 2.6 Receive FIFO... 6 2.7 Status and Interrupt Generator... 6 2.8 DMA (AHB Master Interface)... 6 3 PIN DIAGRAM... 7 4 SIGNAL INTERFACES... 8 5 SoC LEVEL INTEGRATION... 11 5.1 Verification Environment... 11 5.2 IP Deliverables... 11 6 RELATED PRODUCTS... 11 TABLES Table 1: SPI Pins... 8 Table 2: AHB Target Interface Pins... 9 Table 3: AHB Master Interface Pins... 9 Table 4: External Dual Port Memory Pins... 10 Table 5: Enable Signals... 10 Table 6: Scan Signals... 10 FIGURES Figure 1: SPI Interface Core IP Block Diagram... 5 Figure 2: SPI PIN Diagram... 7 Figure 3: SPI Verification Environment... 11 2

1 INTRODUCTION The Synchronous Serial Interface (SPI) is a block that connects to the AHB bus. The AHB _SPI Bridge interfaces to the AHB bus on the system side and the SPI bus on the peripheral side. The AHB interface is used to easily integrate the Bridge Controller for any SOC implementation. The AHB-SPI is a master/slave interface that enables synchronous serial communication with other master /slave peripherals having a SPI-compatible interface. The controller performs the following functions: Parallel-to-serial conversion on data written to an internal 32-bit wide, 32 deep transmit FIFO Serial-to-parallel conversion on received data, buffering it in a similar 32-bit wide, 32 deep receive FIFO Interrupts are generated to during transmit and receive FIFO requests, FIFO overruns during programmed I/O mode, and upon completion of transfers during DMA mode. AHB is a new generation of AMBA bus, which is intended to address the requirements of high performance designs. AMBA AHB implements the features required for high performance, high clock frequency systems including burst transfers, single clock edge operation and so on. Before an AMBA AHB transfer can commence the bus master must be granted access to the bus. This process is started by the master asserting a request signal to the arbiter. Then the arbiter indicates when the master will be granted use of the bus. A granted bus master starts an AMBA AHB transfer by driving the address and control signals. 1.1 Overview The SPI AHB bridge enables an AHB host to access a serial device at high-speed through the SPI interface. The controller can be used in applications such as flash memory card and digital camera. Both AHB and SPI support master and slave modes. The AHB SPI bridge performs either parallel-to-serial conversion or serial-to-parallel conversion with a maximum throughput of 50 Mbit/sec. A 32-bit x 32-bit transmit FIFO and a 32- bit x 32-bit receive FIFO serve as the data buffer to coordinate data flows between the AHB and SPI interfaces. The AHB master consists of a DMA controller to enhance the system performance. A SPI Clock Generator is included to provide adjustable input clock to the SPI controller. A SPI clock frequency from 500 KHz to 50 MHz can be selected. The Status and Interrupt Generator provides data transaction information to the AHB host processor that reflects the FIFOs and DMA states. The SPI controller consists of one SPI master and one SPI slave and it can be programmed by an AHB host to support the TI, Motorola, or National SPI protocol. Full SPI duplex mode is supported. The Arasan High Speed SPI AHB IP Core is 3

an RTL design in Verilog that implements an SPI AHB controller on an ASIC, or FPGA. The Arasan High Speed SPI AHB IP Core has been widely used in different applications by major chip vendors. 1.2 Features 1.2.1 SPI Bus Compliant with Motorola SPI specification Compliant with TI SPI specification Compliant with National SPI specification Supports both SPI master and SPI slave Operations Maximum 50 Mbit/sec data throughput Pre-scaling for programmable clock rate from 500 KHz to 50 MHz Supports full-duplex mode 1.2.2 AHB Bus Compliant with AMBA revision 2.0 specification Supports AHB bus for varying frequency range from 1 MHz to 100MHz Supports Bus master DMA modes Supports both AHB master and AHB slave modes Supports interrupts 32 x 32 bytes transmit and receive FIFOs for high performance AHB - SPI data transfers 4

2 ARCHITECTURE The figure below displays AHB-SPI Bridge Controller block diagram. The block has an AHB target interface to read and write registers and to perform programmed IO transfers. The AHB master interface is used to generate DMA cycles for transferring data to and from memory during DMA transfers. The SPI interface handles the serializing and de-serializing of data to the SPI interface. Figure 1: SPI Interface Core IP Block Diagram 2.1 AHB Target/Master Interface The AHB target interface is primarily used for programming the registers on the SPI controller and also to transfer data is the PIO mode is used (DMA mode disabled). 2.2 Registers The target registers are used to program the controller and also to give the status of the design. The registers are programmed using the AHB interface and are used by the SPI controller to control the SPI interface. When necessary the signals are synchronized to the SPI clock domain. 5

2.3 Clock Pre-scalar The clock prescalar contains a running counter. The counter is used to generated a divide signal and generate the SPI clock as required by the user. 2.4 SPI Transceiver The SPI transmit and receive logic contains the state machines. 2.5 Transmit FIFO This FIFO is 32 bit and 32 deep. It is filled by the DMA controller and read by the SPI controller during a transmit operation. 2.6 Receive FIFO This FIFO is 32 bit and 32 deep. If is filled by the SPI controller and read by the DMA controller during a receive operation. 2.7 Status and Interrupt Generator The interrupts are generated for the operations described in the interrupt registers. 2.8 DMA (AHB Master Interface) The DMA controller reads data from memory and puts it into the transmit FIFO which then sent out on the SPI interface. Similarly, it gathers data from the SPI interface in the receive FIFO and dumps into the ARM processor during read operations from SPI interface. DMA controller is used in both SPI master and SPI slave modes of operations. 6

3 PIN DIAGRAM Figure 2: SPI PIN Diagram 7

4 SIGNAL INTERFACES The SPI describes signal names and its descriptions used in high speed SPI bus interface SPI Pins AHB target interface signals AHB master interface signals External dual port memory signals Enable signals Scan signals Table 1: SPI Pins Pin Name Direction Description spi_frin_n Input SPI Frame Signal input when configured as a slave. This signal is low when active and high when inactive spi_clk_in Input This input signal is the SPI clock used by the slave when transmitting or receiving data spi_rxd Input Receive data input. This data is put into the FIFO by the SPI controller spi_frout_n Output SPI Frame Signal to select the slave. This signal is low when active and high when inactive spi_clkout Output This output signal is the SPI clock generated by the master when transmitting or receiving data spi_txd Output Transmit data output. This data is sent from the FIFO spi_ctl_oe_n Output SPI Clock Output Enable: This signal is used for the clock. This signal is cleared when the device is in master mode and set when it is in slave mode spi_oe_n Output SPI Output Enable: This signal controls the bi-directional pad when the spi_txd is used a bidirectional signal for transmitting and receiving data. 8

Table 2: AHB Target Interface Pins Pin Name Direction Description hclk Input AHB Clock. This is the main clock to the SPI module. The SPI clock is derived from this clock depending the programming of the divisor values in the registers. hrst_n Input AHB Reset: Active low reset received from the AHB interface pwr_on_rst_n Input Active low power on reset signal tar_hsel Input Slave Select tar_haddr [31:0] Input Address Bus (Byte Addresses) tar_hw_data [31:0] Input Write Data Bus tar_hburst[2:0] Input Burst Size tar_hwrite Input Write or Read Direction Indication tar_hsize [2:0] Input Size (Byte, Half Word or Word) tar_htrans [1:0] Input Transfer Type hrdy_glb Input Global hready tar_hr_data [31:0] Output Read Data Bus tar_hrdy Output Target Read tar_hrsp [1:0] Output Transfer Response tar_intr Output Interrupt to the ARM Table 3: AHB Master Interface Pins Pin Name Direction Description mas_hgrant Input AHB Bus Grant mas_hrdata [31:0] Input Read Data mas_hrdy Input Target Ready mas_hrsp [1:0] Input Transfer Response mas_hb_req Output AHB Bus Request mas_haddr [31:0] Output Bus Address (Byte Address) mas_hwdata [31:0] Output Write Data mas_hwrite Output Write or Read Direction Indication mas_hsize [2:0] Output Size (Byte, Half Word or Word) mas_htrans [1:0] Output Transfer Type mas_hburst [2:0] Output Burst Size 9

Table 4: External Dual Port Memory Pins Pin Name Direction Description rx_ram_out[31:0] Input Read data for AHB interface spi_data_out[31:0] Input Read data for SPI interface addra[7:0] Output Write and read address for SPI addrb[7:0] Output Write and read address for AHB spi_data_in[31:0] Output Data input from SPI interface wea Output Write enable signal for SPI interface web Output Write enable signal for AHB interface tx_ram_in[31:0] Output Input data from AHB memory Table 5: Enable Signals Pin Name Direction Description frame_sel Output Enable signal to assign spi_frout_n Table 6: Scan Signals Pin Name Direction Description scan_test Input Enable signal for scan operation scan_clk Input Scan clock for scan operation 10

5 SoC LEVEL INTEGRATION 5.1 Verification Environment This section displays the RTL verification and test environment. 5.2 IP Deliverables The IP package consists of the following: Figure 3: SPI Verification Environment RMM-compliant synthesizable RTL design in Verilog Easy-to-use test environment Synthesis scripts Technical documents Simulation scripts 6 RELATED PRODUCTS I2S Controller I2C Controller 11