ADSP-21566/21567/21569System Crossbars (SCBs) • The 1D DMA uses a linked list of four-word descriptor sets containing a link pointer, an address, a length, and a The system crossbars (SCBs) are the fundamental building configuration blocks of a switch fabric style for on-chip system bus intercon- nection. The SCBs connect system bus masters to system bus • The 2D DMA uses an array of one-word descriptor sets, slaves, providing concurrent data transfer between multiple bus specifying only the base DMA address masters and multiple bus slaves. A hierarchical model—built • The 2D DMA uses a linked list of multiword descriptor from multiple SCBs—provides a power and area efficient sys- sets, specifying all configurable parameters tem interconnection. Memory Direct Memory Access (MDMA) The SCBs provide the following features: The processor supports various memory direct memory access • Highly efficient, pipelined bus transfer protocol for sus- (MDMA) operations, including, tained throughput • Enhanced bandwidth MDMA channels with cyclic redun- • Full-duplex bus operation for flexibility and reduced dant code (CRC) protection (32-bit bus width, run on latency SYSCLK) • Concurrent bus transfer support to allow multiple bus • Enhanced bandwidth MDMA channel (32-bit bus width, masters to access bus slaves simultaneously runs on SYSCLK) • Protection model (secure) support for selective bus inter- • Maximum bandwidth MDMA channel (64-bit bus width, connect protection runs on SYCLK) Direct Memory Access (DMA)Extended Memory DMA The processors use direct memory access (DMA) to transfer Extended memory DMA supports various operating modes, data within memory spaces or between a memory space and a such as delay line (which allows processor reads and writes to peripheral. The processors can specify data transfer operations external delay line buffers and to the external memory), with and return to normal processing while the fully integrated DMA limited core interaction and scatter/gather DMA (writes to and controller carries out the data transfers independent of proces- from noncontiguous memory blocks). sor activity. DMA transfers can occur between memory and a peripheral or Cyclic Redundant Code (CRC) Protection between one memory and another memory. Each memory to The cyclic redundant code (CRC) protection modules allow sys- memory DMA stream uses two channels: the source channel tem software to calculate the signature of code, data, or both in and the destination channel. memory, the content of memory-mapped registers, or periodic All DMA channels can transport data to and from all on-chip communication message objects. Dedicated hardware circuitry and off-chip memories. Programs can use two types of DMA compares the signature with precalculated values and triggers transfers: descriptor-based or register-based. Register-based appropriate fault events. DMA allows the processors to program DMA control registers For example, the system software initiates the signature calcula- directly to initiate a DMA transfer. On completion, the DMA tion of the entire memory contents every 100 ms and compares control registers automatically update with original setup values this with expected, precalculated values. If a mismatch occurs, a for continuous transfer. Descriptor-based DMA transfers fault condition is generated through the processor core or the require a set of parameters stored within memory to initiate a trigger routing unit. DMA sequence. Descriptor-based DMA transfers allow The CRC is a hardware module based on a CRC32 engine that multiple DMA sequences to be chained together. Program a computes the CRC value of the 32-bit data-words presented to DMA channel to set up and start another DMA transfer auto- it. The source channel of the memory to memory DMA (in matically after the current sequence completes. memory scan mode) provides data. The data can be optionally The DMA engine supports the following DMA operations: forwarded to the destination channel (memory transfer mode). • A single linear buffer that stops on completion The main features of the CRC peripheral are as follows: • A linear buffer with negative, positive, or zero stride length • Memory scan mode • A circular autorefreshing buffer that interrupts when each • Memory transfer mode buffer becomes full • Data verify mode • A similar circular buffer that interrupts on fractional buf- • Data fill mode fers, such as at the halfway point • User-programmable CRC32 polynomial • The 1D DMA uses a set of identical ping pong buffers • Bit and byte mirroring option (endianness) defined by a linked ring of two-word descriptor sets, each containing a link pointer and an address • Fault and error interrupt mechanisms • 1D and 2D fill block to initialize an array with constants block • 32-bit CRC signature of a block of memory or an MMR Rev. 0 | Page 10 of 98 | March 2020 Document Outline System Features Memory Additional Features Applications Table of Contents Revision History General Description SHARC Processor L1 Memory L1 Master and Slave Ports L1 On-Chip Memory Bandwidth Instruction and Data Cache Core Memory-Mapped Registers (CMMR) SHARC+ Core Architecture Single-Instruction, Multiple Data (SIMD) Computational Engine Independent Parallel Computation Units Core Timer Data Register File Context Switch Universal Registers Data Address Generators (DAG) With Zero Overhead Hardware Circular Buffer Support Flexible Instruction Set Architecture (ISA) Variable Instruction Set Architecture (VISA) Single-Cycle Fetch of Instructional Four Operands Core Event Controller (CEC) Instruction Conflict Cache Branch Target Buffer (BTB)/Branch Predictor (BP) Addressing Spaces Additional Features System Infrastructure System L2 Memory One Time Programmable Memory (OTP) I/O Memory Space System Memory Map System Crossbars (SCBs) Direct Memory Access (DMA) Memory Direct Memory Access (MDMA) Extended Memory DMA Cyclic Redundant Code (CRC) Protection Event Handling System Event Controller (SEC) Trigger Routing Unit (TRU) Security Features Cryptographic Hardware Accelerators System Protection Unit (SPU) System Memory Protection Unit (SMPU) Security Features Disclaimer Safety Features Multiparity Bit Protected SHARC+ Core L1 Memories Error Correcting Code (ECC) Protected L2 Memories Parity Protected Peripheral Memories Cyclic Redundant Code (CRC) Protected Memories Signal Watchdogs System Event Controller (SEC) Memory Error Controller (MEC) Processor Peripherals Dynamic Memory Controller (DMC) Digital Audio Interface (DAI) Serial Port (SPORT) Asynchronous Sample Rate Converter (ASRC) S/PDIF-Compatible Digital Audio Receiver/Transmitter Precision Clock Generators (PCG) Universal Asynchronous Receiver/Transmitter (UART) Ports Serial Peripheral Interface (SPI) Ports Octal Serial Peripheral Interface (OSPI) Port Link Port (LP) Timers General-Purpose (GP) Timers (TIMER) Watchdog Timer (WDT) General-Purpose Counters (CNT) Media Local Bus (MediaLB) 2-Wire Controller Interface (TWI) General-Purpose I/O (GPIO) Pin Interrupts System Acceleration Finite Impulse Response (FIR) Accelerator Infinite Impulse Response (IIR) Accelerator System Design Clock Management Reset Control Unit (RCU) Clock Generation Unit (CGU) System Crystal Oscillator Clock Distribution Unit (CDU) Clock Out/External Clock Booting Power Supplies Power Management Power-Up and Power-Down Sequencing Target Board JTAG Emulator Connector System Debug System Watchpoint Unit (SWU) Debug Access Port (DAP) Development Tools Integrated Development Environments (IDEs) EZ-KIT Evaluation Board EZ-KIT Evaluation Kits Software Add Ins for CrossCore Embedded Studio Board Support Packages for Evaluation Hardware Middleware Packages Algorithmic Modules Designing an Emulator-Compatible DSP Board (Target) Additional Information Related Signal Chains ADSP-2156x Detailed Signal Descriptions 400-Ball CSP_BGA Signal Descriptions GPIO Multiplexing for 400-Ball CSP_BGA Package 120-Lead LQFP Signal Descriptions GPIO Multiplexing for 120-Lead LQFP ADSP-2156x Designer Quick Reference Specifications Operating Conditions Clock Related Operating Conditions Electrical Characteristics Total Internal Power Dissipation Application Dependent Current Clock Current Data Transmission Current Absolute Maximum Ratings ESD Caution Timing Specifications Power-Up Reset Timing Clock and Reset Timing Link Ports (LPs) Serial Ports (SPORTs) Asynchronous Sample Rate Converter (ASRC)—Serial Input Port Asynchronous Sample Rate Converter (ASRC)—Serial Output Port SPI Port—Master Timing SPI0, SPI1, and SPI2 SPI Port—Slave Timing SPI0, SPI1, and SPI2 SPI Port—SPIx_RDY Slave Timing SPI Port—Open Drain Mode (ODM) Timing SPI Port—SPIx_RDY Master Timing OSPI Port—Master Timing OSPI0 Precision Clock Generator (PCG) (Direct Pin Routing) General-Purpose IO Port Timing General-Purpose I/O Timer Cycle Timing DAIx Pin to DAIx Pin Direct Routing (DAI0 Block and DAI1 Block) Up/Down Counter/Rotary Encoder Timing Universal Asynchronous Receiver-Transmitter (UART) Ports—Receive and Transmit Timing Sony/Philips Digital Interface (S/PDIF) Transmitter S/PDIF Transmitter Serial Input Waveforms S/PDIF Transmitter Input Data Timing Oversampling Clock (TxCLK) Switching Characteristics S/PDIF Receiver Internal Digital PLL Mode MediaLB (MLB) Program Trace Macrocell (PTM) Timing Debug Interface (JTAG Emulation Port) Timing Output Drive Currents Test Conditions Output Enable Time Measurement Output Disable Time Measurement Capacitive Loading Environmental Conditions ADSP-2156x 400-Ball BGA Ball Assignments ADSP-2156x 400-Ball BGA Ball Assignments (Numerical by Ball Number) ADSP-2156x 400-Ball BGA Ball Assignments (Alphabetical by Pin Name) Configuration of the 400-Ball CSP_BGA ADSP-2156x 120-Lead LQFP Lead Assignments ADSP-2156x 120-Lead LQFP Lead Assignments (Numerical by Lead Number) ADSP-2156x 120-Lead LQFP Lead Assignments (Alphabetical by Pin Name) Configuration of the 120-Lead LQFP Lead Configuration Outline Dimensions Surface-Mount Design Planned Automotive Production Products Planned Production Products Ordering Guide