EasyManua.ls Logo

Cypress EZ-USB FX3 - User Manual

Cypress EZ-USB FX3
660 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
Loading...
EZ-USB
®
FX3™ Technical Reference Manual
Document Number: 001-76074 Rev. *F
May 9, 2019
Cypress Semiconductor
198 Champion Court
San Jose, CA 95134-1709
www.cypress.com

Table of Contents

Question and Answer IconNeed help?

Do you have a question about the Cypress EZ-USB FX3 and is the answer not in the manual?

Cypress EZ-USB FX3 Specifications

General IconGeneral
BrandCypress
ModelEZ-USB FX3
CategoryController
LanguageEnglish

Summary

Introduction to EZ-USB FX3

Overview of USB 3.0

Overview of USB 3.0 and its changes from USB 2.0, including power management.

FX3;FX3 S Features

Lists key features of FX3 and FX3S, including USB, GPIF II, CPU, and connectivity.

Functional Overview

Describes the functional blocks: CPU, DMA, USB, GPIF II, serial peripherals, and storage.

FX3 CPU Subsystem

Features

Details features of the ARM9 core, including frequency, instruction support, caches, TCM, and debug interface.

Functional Overview

Explains the ARM9 core, its interfaces, and the interrupt controller's role.

Memory and System Interconnect

Features

Details system memory, TCM, DMA bandwidth, MMIO access, and latency guarantees.

Functional Overview

Covers memory regions, system interconnect, low-power operations, cache operations, and memory usage.

Global Controller (GCTL)

GPIO Pins

Explains GPIO pin functionality, multiplexing, simple vs. complex GPIOs, and I/O matrix configuration.

Clock Management

Describes how peripheral clocks are configured using GCTL registers and clock sources.

Power Management

Details power domains, power modes (normal, suspend, standby, core power down), and wakeup sources.

FX3 DMA Subsystem

DMA Introduction

Introduces the FX3 DMA controller, its distributed nature, and AHB interconnect usage.

DMA Features

Outlines DMA features including distributed controllers, transfer support, gateways, and adapters.

DMA Overview

Provides an overview of the DMA adapter architecture and its role in peripheral communication.

DMA Subsystem Components

Explains clocking and the distributed DMA controllers architecture.

Universal Serial Bus (USB)

Introduction

Introduces USB as a peripheral interconnect, its speeds, and evolution to USB 3.0.

Features

Lists USB controllers supported by FX3, including UIB, USB 3.0/2.0 controllers, and OTG.

Overview

Details the USB interface block, controllers, I/O system, and operational modes.

USB 3.0 Function Controller

Explains the USB 3.0 function controller's role in link and protocol layers.

USB OTG Controller

Covers FX3's capability to support USB 2.0 host, peripheral, and OTG controller functions.

DMA Adapters

Explains the two dedicated DMA adapters managing USB data flow and their mapping to sockets.

USB 3.0 and USB 2.0 Function Coordination

Describes how FX3 firmware manages USB 3.0 and USB 2.0 PHY operations for host connection negotiation.

USB Function Programming Model

Details how to program USB functions, including initialization and enabling.

USB 3.0 Initialization

Provides a code example for the UIB initialization sequence for the USB 3.0 function.

USB 3.0 Enable

Implements the sequence to enable the USB 3.0 function controller.

USB 3.0 Fallback to USB 2.0

Explains the fallback mechanism when USB 3.0 termination or link training fails.

General Programmable Interface II (GPIF II)

Features

Summarizes GPIF II features like master/slave operation, programmable states, data bus width, and interface frequency.

Functional Overview

Explains GPIF II state machine configuration, state properties, triggers, and actions.

Actions

Details the various actions that can be programmed within a GPIF II state machine for data transfer and control.

Triggers

Describes triggers that cause state transitions, including external and internal signals.

GPIF II Designer Tool

Introduces the GUI tool for developing GPIF II state machines and generating configuration files.

Designing a GPIF II Interface

Guides on configuring the GPIF II outside-world interface using the Interface Definition tab.

GPIF II State Machine Implementation

Guides on implementing GPIF II state machines using the designer tool.

Add a State

Describes how to add states to the state machine canvas using the right-click menu.

Add Actions to a State

Explains how to add actions to a selected state from the Action List window.

Draw Transitions Between Actions

Details how to draw transitions between states by dragging the mouse cursor.

Add a Transition Equation

Guides on opening the Transition Equation Entry dialog and defining logical functions for state transitions.

Set State Properties

Explains how to set state properties like name, repeat count, and associated actions.

Analyzing the Signal Timing of the GPIF II Interface

Describes how to simulate relative timing of input/output signals using the Timing window.

GPIF II Constraints

Discusses limitations like binary state machines and transition equation complexity, and techniques to overcome them.

Low Performance Peripherals (LPP)

I2 C Interface

Lists I2C features such as master mode, clock speeds, addressing, and transfer modes.

FX3 I2 C Operations Overview

Explains I2C operations on FX3, including reset, initialization, and data transfer methods.

Serial Peripheral Interface

Lists SPI features like master mode, transfer modes, data unit length, and boot options.

FX3 SPI Operations Overview

Explains SPI operations on FX3, including reset, initialization, and transfer modes.

Examples

Provides example code for SPI register-based and DMA-based transfers using FX3 SDK APIs.

Universal Asynchronous Receiver Transmitter

Lists UART features like baud rate, modes, communication type, oversampling, and flow control.

FX3 UART Operations Overview

Explains UART operations on FX3, including reset, initialization, and programming models.

Integrated Interchip Sound Interface

Lists I2S features like transmitter function, sampling frequencies, and data value formats.

I2 S Overview

Explains the I2S bus for digital audio communication, clock/data separation, and interface pins.

FX3 I2 S Operations Overview

Details I2S operations on FX3, including programming model and transfer types.

GPIO

Lists GPIO features like pin configuration, complex GPIOs, drive strength, and pull-up/pull-down.

GPIO Overview

Describes general-purpose I/O pins, multiplexing, and their use as simple or complex GPIOs.

Programming Model

Explains GPIO operations including reset and initialization.

Examples

Provides example code for configuring GPIO pins as input, output, or for PWM generation.

Registers

Introduction

Introduces the chapter on FX3 registers and provides an overview of the memory map.

Register Conventions

Explains the format used for register descriptions, including name, bits, accessibility, and default values.

Vectored Interrupt Controller (VIC) Registers

Describes the VIC IRQ Status Register, which shows IRQ status after masking.

VIC_INT_SELECT

Covers the VIC Interrupt Select register for designating lines as FIQ or IRQ.

VIC_INT_ENABLE

Describes the VIC Interrupt Enable Register for enabling interrupts at specific bit positions.

VIC_INT_CLEAR

Details the VIC Interrupt Clear Register for disabling and masking interrupts.

Global Controller Registers

Defines port usage and implementation for GPIO pins, requiring configuration before accessing alternate functions.

GCTL_IOMATRIX

Defines port usage and implementation for GPIO pins, requiring configuration before accessing alternate functions.

GCTL_GPIO_SIMPLE

Configures GPIO pins for simple functionality, overriding default functions.

GCTL_GPIO_COMPLEX

Configures GPIO pins for complex functionality, including timer/counter capabilities.

GCTL_DS

Defines pull-up and pull-down drive strength capability for I/O pins.

GCTL_WPU_CFG

Configures internal weak pull-up resistors for I/O pins.

GCTL_WPD_CFG

Configures internal weak pull-down resistors for I/O pins.

GCTL_IOPOWER

Allows firmware to monitor power status of various I/O blocks.

GCTL_CPU_CLK_CFG

Configures CPU and bus clock dividers based on clock source.

GCTL_GPIO_FAST_CLK

Configures GPIO fast clock divider and source.

GCTL_I2 C_CORE_CLK

Configures the divider for the I2C clock block.

GCTL_UART_CORE_CLK

Configures the core clock provided to the UART peripheral.

GCTL_I2 S_CORE_CLK

Configures the I2S core clock.

Global Controller Always On Registers

Indicates which wakeup sources are enabled to wake up the system from suspend/standby modes.

GCTL_WAKEUP_EN

Indicates which wakeup sources are enabled to wake up the system from suspend/standby modes.

GCTL_WAKEUP_POLARITY

Indicates the polarity for wakeup detect signals.

GCTL_WAKEUP_EVENT

Indicates which wakeup source caused the system wakeup.

GCTL_WATCHDOG_CS

Controls watchdog timers, including mode, interrupt, and reset.

FX3 DMA Subsystem

DMA Introduction

Introduces the FX3 DMA controller, its distributed nature, and AHB interconnect usage.

DMA Features

Outlines DMA features including distributed controllers, transfer support, gateways, and adapters.

DMA Overview

Provides an overview of the DMA adapter architecture and its role in peripheral communication.

DMA Subsystem Components

Explains clocking and the distributed DMA controllers architecture.

Universal Serial Bus (USB)

Introduction

Introduces USB as a peripheral interconnect, its speeds, and evolution to USB 3.0.

Features

Lists USB controllers supported by FX3, including UIB, USB 3.0/2.0 controllers, and OTG.

Overview

Details the USB interface block, controllers, I/O system, and operational modes.

USB 3.0 Function Controller

Explains the USB 3.0 function controller's role in link and protocol layers.

USB OTG Controller

Covers FX3's capability to support USB 2.0 host, peripheral, and OTG controller functions.

DMA Adapters

Explains the two dedicated DMA adapters managing USB data flow and their mapping to sockets.

USB 3.0 and USB 2.0 Function Coordination

Describes how FX3 firmware manages USB 3.0 and USB 2.0 PHY operations for host connection negotiation.

USB Function Programming Model

Details how to program USB functions, including initialization and enabling.

USB 3.0 Initialization

Provides a code example for the UIB initialization sequence for the USB 3.0 function.

USB 3.0 Enable

Implements the sequence to enable the USB 3.0 function controller.

USB 3.0 Fallback to USB 2.0

Explains the fallback mechanism when USB 3.0 termination or link training fails.

General Programmable Interface II (GPIF II)

Features

Summarizes GPIF II features like master/slave operation, programmable states, data bus width, and interface frequency.

Functional Overview

Explains GPIF II state machine configuration, state properties, triggers, and actions.

Actions

Details the various actions that can be programmed within a GPIF II state machine for data transfer and control.

Triggers

Describes triggers that cause state transitions, including external and internal signals.

GPIF II Designer Tool

Introduces the GUI tool for developing GPIF II state machines and generating configuration files.

Designing a GPIF II Interface

Guides on configuring the GPIF II outside-world interface using the Interface Definition tab.

GPIF II State Machine Implementation

Guides on implementing GPIF II state machines using the designer tool.

Add a State

Describes how to add states to the state machine canvas using the right-click menu.

Add Actions to a State

Explains how to add actions to a selected state from the Action List window.

Draw Transitions Between Actions

Details how to draw transitions between states by dragging the mouse cursor.

Add a Transition Equation

Guides on opening the Transition Equation Entry dialog and defining logical functions for state transitions.

Set State Properties

Explains how to set state properties like name, repeat count, and associated actions.

Analyzing the Signal Timing of the GPIF II Interface

Describes how to simulate relative timing of input/output signals using the Timing window.

GPIF II Constraints

Discusses limitations like binary state machines and transition equation complexity, and techniques to overcome them.

Low Performance Peripherals (LPP)

I2 C Interface

Lists I2C features such as master mode, clock speeds, addressing, and transfer modes.

FX3 I2 C Operations Overview

Explains I2C operations on FX3, including reset, initialization, and data transfer methods.

Serial Peripheral Interface

Lists SPI features like master mode, transfer modes, data unit length, and boot options.

FX3 SPI Operations Overview

Explains SPI operations on FX3, including reset, initialization, and transfer modes.

Examples

Provides example code for SPI register-based and DMA-based transfers using FX3 SDK APIs.

Universal Asynchronous Receiver Transmitter

Lists UART features like baud rate, modes, communication type, oversampling, and flow control.

FX3 UART Operations Overview

Explains UART operations on FX3, including reset, initialization, and programming models.

Integrated Interchip Sound Interface

Lists I2S features like transmitter function, sampling frequencies, and data value formats.

I2 S Overview

Explains the I2S bus for digital audio communication, clock/data separation, and interface pins.

FX3 I2 S Operations Overview

Details I2S operations on FX3, including programming model and transfer types.

GPIO

Lists GPIO features like pin configuration, complex GPIOs, drive strength, and pull-up/pull-down.

GPIO Overview

Describes general-purpose I/O pins, multiplexing, and their use as simple or complex GPIOs.

Programming Model

Explains GPIO operations including reset and initialization.

Examples

Provides example code for configuring GPIO pins as input, output, or for PWM generation.

Registers

Introduction

Introduces the chapter on FX3 registers and provides an overview of the memory map.

Register Conventions

Explains the format used for register descriptions, including name, bits, accessibility, and default values.

Vectored Interrupt Controller (VIC) Registers

Describes the VIC IRQ Status Register, which shows IRQ status after masking.

VIC_INT_SELECT

Covers the VIC Interrupt Select register for designating lines as FIQ or IRQ.

VIC_INT_ENABLE

Describes the VIC Interrupt Enable Register for enabling interrupts at specific bit positions.

VIC_INT_CLEAR

Details the VIC Interrupt Clear Register for disabling and masking interrupts.

Global Controller Registers

Defines port usage and implementation for GPIO pins, requiring configuration before accessing alternate functions.

GCTL_IOMATRIX

Defines port usage and implementation for GPIO pins, requiring configuration before accessing alternate functions.

GCTL_GPIO_SIMPLE

Configures GPIO pins for simple functionality, overriding default functions.

GCTL_GPIO_COMPLEX

Configures GPIO pins for complex functionality, including timer/counter capabilities.

GCTL_DS

Defines pull-up and pull-down drive strength capability for I/O pins.

GCTL_WPU_CFG

Configures internal weak pull-up resistors for I/O pins.

GCTL_WPD_CFG

Configures internal weak pull-down resistors for I/O pins.

GCTL_IOPOWER

Allows firmware to monitor power status of various I/O blocks.

GCTL_CPU_CLK_CFG

Configures CPU and bus clock dividers based on clock source.

GCTL_GPIO_FAST_CLK

Configures GPIO fast clock divider and source.

GCTL_I2 C_CORE_CLK

Configures the divider for the I2C clock block.

GCTL_UART_CORE_CLK

Configures the core clock provided to the UART peripheral.

GCTL_I2 S_CORE_CLK

Configures the I2S core clock.

Global Controller Always On Registers

Indicates which wakeup sources are enabled to wake up the system from suspend/standby modes.

GCTL_WAKEUP_EN

Indicates which wakeup sources are enabled to wake up the system from suspend/standby modes.

GCTL_WAKEUP_POLARITY

Indicates the polarity for wakeup detect signals.

GCTL_WAKEUP_EVENT

Indicates which wakeup source caused the system wakeup.

GCTL_WATCHDOG_CS

Controls watchdog timers, including mode, interrupt, and reset.

Storage Ports

Storage Interface Block Features

Lists Storage Interface Block features for SD/MMC/SDIO, including ports and bus widths.

Block Diagram

Shows the block diagram of the SIB connecting storage devices to the processor and other peripherals.

SD;MMC; SDIO Interface

Details the SD bus signals, CMD, DAT, and power signals.

SD;MMC Interface Overview

Details the SD bus signals, CMD, DAT, and power signals.

SDIO Interface Overview

Explains SDIO card as an extension of SD specification for I/O functions.

FX3 S S-Port Operations Overview

Covers S-port operations, initialization, and housekeeping performed by the storage driver.

S-port Initialization and Configuration

Guides on configuring the S-port I/O matrix and setting interface parameters like voltage and DDR.

Reads and Writes to SD;MMC Using DMA Transfers

Explains how to perform SD/MMC read/write operations using DMA transfers.

Working with SDIO Cards

Details configuration and initialization for SDIO cards, including IO_RW_DIRECT command.

Registers

Introduction

Introduces the chapter on FX3 registers and provides an overview of the memory map.

Register Conventions

Explains the format used for register descriptions, including name, bits, accessibility, and default values.

Vectored Interrupt Controller (VIC) Registers

Describes the VIC IRQ Status Register, which shows IRQ status after masking.

VIC_INT_SELECT

Covers the VIC Interrupt Select register for designating lines as FIQ or IRQ.

VIC_INT_ENABLE

Describes the VIC Interrupt Enable Register for enabling interrupts at specific bit positions.

VIC_INT_CLEAR

Details the VIC Interrupt Clear Register for disabling and masking interrupts.

Global Controller Registers

Defines port usage and implementation for GPIO pins, requiring configuration before accessing alternate functions.

GCTL_IOMATRIX

Defines port usage and implementation for GPIO pins, requiring configuration before accessing alternate functions.

GCTL_GPIO_SIMPLE

Configures GPIO pins for simple functionality, overriding default functions.

GCTL_GPIO_COMPLEX

Configures GPIO pins for complex functionality, including timer/counter capabilities.

GCTL_DS

Defines pull-up and pull-down drive strength capability for I/O pins.

GCTL_WPU_CFG

Configures internal weak pull-up resistors for I/O pins.

GCTL_WPD_CFG

Configures internal weak pull-down resistors for I/O pins.

GCTL_IOPOWER

Allows firmware to monitor power status of various I/O blocks.

GCTL_CPU_CLK_CFG

Configures CPU and bus clock dividers based on clock source.

GCTL_GPIO_FAST_CLK

Configures GPIO fast clock divider and source.

GCTL_I2 C_CORE_CLK

Configures the divider for the I2C clock block.

GCTL_UART_CORE_CLK

Configures the core clock provided to the UART peripheral.

GCTL_I2 S_CORE_CLK

Configures the I2S core clock.

Global Controller Always On Registers

Indicates which wakeup sources are enabled to wake up the system from suspend/standby modes.

GCTL_WAKEUP_EN

Indicates which wakeup sources are enabled to wake up the system from suspend/standby modes.

GCTL_WAKEUP_POLARITY

Indicates the polarity for wakeup detect signals.

GCTL_WAKEUP_EVENT

Indicates which wakeup source caused the system wakeup.

GCTL_WATCHDOG_CS

Controls watchdog timers, including mode, interrupt, and reset.

Storage Ports

Storage Interface Block Features

Lists Storage Interface Block features for SD/MMC/SDIO, including ports and bus widths.

Block Diagram

Shows the block diagram of the SIB connecting storage devices to the processor and other peripherals.

SD;MMC; SDIO Interface

Details the SD bus signals, CMD, DAT, and power signals.

SD;MMC Interface Overview

Details the SD bus signals, CMD, DAT, and power signals.

SDIO Interface Overview

Explains SDIO card as an extension of SD specification for I/O functions.

FX3 S S-Port Operations Overview

Covers S-port operations, initialization, and housekeeping performed by the storage driver.

S-port Initialization and Configuration

Guides on configuring the S-port I/O matrix and setting interface parameters like voltage and DDR.

Reads and Writes to SD;MMC Using DMA Transfers

Explains how to perform SD/MMC read/write operations using DMA transfers.

Working with SDIO Cards

Details configuration and initialization for SDIO cards, including IO_RW_DIRECT command.

Registers

Introduction

Introduces the chapter on FX3 registers and provides an overview of the memory map.

Register Conventions

Explains the format used for register descriptions, including name, bits, accessibility, and default values.

Vectored Interrupt Controller (VIC) Registers

Describes the VIC IRQ Status Register, which shows IRQ status after masking.

VIC_INT_SELECT

Covers the VIC Interrupt Select register for designating lines as FIQ or IRQ.

VIC_INT_ENABLE

Describes the VIC Interrupt Enable Register for enabling interrupts at specific bit positions.

VIC_INT_CLEAR

Details the VIC Interrupt Clear Register for disabling and masking interrupts.

Global Controller Registers

Defines port usage and implementation for GPIO pins, requiring configuration before accessing alternate functions.

GCTL_IOMATRIX

Defines port usage and implementation for GPIO pins, requiring configuration before accessing alternate functions.

GCTL_GPIO_SIMPLE

Configures GPIO pins for simple functionality, overriding default functions.

GCTL_GPIO_COMPLEX

Configures GPIO pins for complex functionality, including timer/counter capabilities.

GCTL_DS

Defines pull-up and pull-down drive strength capability for I/O pins.

GCTL_WPU_CFG

Configures internal weak pull-up resistors for I/O pins.

GCTL_WPD_CFG

Configures internal weak pull-down resistors for I/O pins.

GCTL_IOPOWER

Allows firmware to monitor power status of various I/O blocks.

GCTL_CPU_CLK_CFG

Configures CPU and bus clock dividers based on clock source.

GCTL_GPIO_FAST_CLK

Configures GPIO fast clock divider and source.

GCTL_I2 C_CORE_CLK

Configures the divider for the I2C clock block.

GCTL_UART_CORE_CLK

Configures the core clock provided to the UART peripheral.

GCTL_I2 S_CORE_CLK

Configures the I2S core clock.

Global Controller Always On Registers

Indicates which wakeup sources are enabled to wake up the system from suspend/standby modes.

GCTL_WAKEUP_EN

Indicates which wakeup sources are enabled to wake up the system from suspend/standby modes.

GCTL_WAKEUP_POLARITY

Indicates the polarity for wakeup detect signals.

GCTL_WAKEUP_EVENT

Indicates which wakeup source caused the system wakeup.

GCTL_WATCHDOG_CS

Controls watchdog timers, including mode, interrupt, and reset.

USB Port - SuperSpeed Ingress Socket Registers

UIBIN_ID

Identifies the block and controls its power/clock/reset state. These registers are located in the CPU/Interconnect power and clock domains.

UIBIN_POWER

Controls the block's power/clock/reset state. These registers are located in the CPU/Interconnect power and clock domains.

I2 S Registers

I2 S Interface

Lists I2S features like transmitter function, sampling frequencies, and data value formats.

I2 S Overview

Explains the I2S bus for digital audio communication, clock/data separation, and interface pins.

FX3 I2 S Operations Overview

Details I2S operations on FX3, including programming model and transfer types.

Initialize I2 S Block

Initializes the FX3 I2S block to operate at the default sampling rate of 8 kHz.

Configure I2 S Interface

Configures the FX3 I2S block, setting the interface sampling frequency and word width.

Transfer Data from USB to I2 S Interface Using DMA Transfers

Shows how to transfer data from USB endpoints to I2S channels using DMA.

I2 C Registers

I2 C Interface

Lists I2C features such as master mode, clock speeds, addressing, and transfer modes.

FX3 I2 C Operations Overview

Explains I2C operations on FX3, including reset, initialization, and data transfer methods.

Reset and Initialization

Details I2C core reset, enablement, clock speed configuration, and power control.

Data Transfer

Explains how data is transferred using I2C, including register and DMA paths.

Register-Based I2 C Transfers

Details register usage for I2C transfers, including preamble, command, and data registers.

DMA-Based I2 C Transfers

Explains DMA-based transfers using I2C sockets and the initiation process.

Starting a Transaction

Outlines the steps to select DMA mode, enable the block, and program the byte count.

Examples

Provides example code for register-based and DMA-based I2C transfers using FX3 SDK APIs.

UART Registers

UART Configuration and Modes Register

Defines UART configuration options like enable, clear FIFO, and various modes.

FX3 UART Operations Overview

Explains UART operations on FX3, including reset, initialization, and programming models.

Register-Based Transfers

Explains register usage for conveying core data and interrupts.

Examples

Provides example code for UART initialization and message transfer/reception.

SPI Registers

SPI Block Features

Lists SPI features like master mode, transfer modes, data unit length, and boot options.

SPI Interface Overview

Explains the SPI bus as a synchronous serial data link, master/slave modes, and pin functions.

FX3 SPI Operations Overview

Explains SPI operations on FX3, including reset, initialization, and transfer modes.

Data Transfers

Explains register-based and DMA-based SPI transfers, data paths, and endianness configuration.

Examples

Provides example code for SPI register-based and DMA-based transfers using FX3 SDK APIs.

General Purpose IO Block Registers

GPIO Features

Lists GPIO features like pin configuration, complex GPIOs, drive strength, and pull-up/pull-down.

GPIO Overview

Describes general-purpose I/O pins, multiplexing, and their use as simple or complex GPIOs.

Programming Model

Explains GPIO operations including reset and initialization.

Examples

Provides example code for configuring GPIO pins as input, output, or for PWM generation.

DMA Socket and Descriptor Registers

SCK_DSCR

Describes the descriptor chain pointer register for sockets.

SCK_SIZE

Defines the transfer size register for sockets.

SCK_COUNT

Stores the transfer count for sockets.

SCK_STATUS

Provides the status and interrupt control bits for sockets.

SCK_INTR

Details the socket interrupt request bits.

SCK_INTR_MASK

Masks socket interrupt requests to control reporting to the CPU.

DSCR_BUFFER

Defines the descriptor buffer base address register.

DSCR_SYNC

Provides descriptor synchronization pointers.

DSCR_CHAIN

Manages descriptor chain pointers for producer and consumer.

DSCR_SIZE

Configures descriptor size, including byte count, buffer size, and status bits.

EVENT

Facilitates event communication between sockets for DMA operations.

DMA Adapter Global Registers

SCK_INTR

Contains interrupt request bits for each socket, logically OR'd.

ADAPTER_STATUS

Provides global status for the DMA adapter, including word size and queue size.

SIB_ID

Identifies the Storage Interface Block IP with version and block ID.

SIB_POWER

Controls power, clock, and reset state for the storage interface block.

SDMMC_CMD_IDX

Specifies the command index for SD/MMC/SDIO commands.

SDMMC_CMD_ARG0

Holds the lower 32 bits of the SD/MMC/SDIO command argument.

SDMMC_CMD_ARG1

Holds the upper 32 bits of the SD/MMC/SDIO command argument.

SDMMC_RESP_IDX

Captures the first eight bits of the response from the card.

SDMMC_RESP_REG0

Holds response data received from the card for command response.

SDMMC_RESP_REG1

Holds response data received from the card for command response.

SDMMC_RESP_REG2

Holds response data received from the card for command response.

SDMMC_RESP_REG3

Holds response data received from the card for command response.

SDMMC_RESP_REG4

Holds response data received from the card for command response.

SDMMC_CMD_RESP_FMT

Specifies the length and format of the command and response.

SDMMC_BLOCK_COUNT

Holds the number of data blocks to be completed during the ongoing SD/MMC command transfer.

SDMMC_BLOCK_LEN

Holds the block length for transfer. The CRC is computed on this block length.

SDMMC_MODE_CFG

Configures clock, signaling, and so on for each of the storage ports.

SDMMC_DATA_CFG

Holds configuration parameters that affect SD/MMC data transfers.

SDMMC_CS

Initiates SD/MMC/SDIO commands and data transfers.

SDMMC_STATUS

Reflects the current status of the SIB state machines.

SDMMC_INTR

Displays interrupt status bits.

SDMMC_INTR_MASK

Controls whether interrupt status should trigger an interrupt to the CPU.

SDMMC_NCR

Controls timing between command and response.

SDMMC_NCC_NWR

Controls the timing between multiple commands.

SDMMC_NAC

Controls the timeout period for data read operations.

SDMMC_HW_CTRL

Provides a mechanism to reset eMMC devices.

SDMMC_DLL_CTRL

Configures the DLL phases and enables the DLL.

Related product manuals