Freescale Semiconductor MC9S12XDP512 Microscope & Magnifier User Manual


 
MC9S12XDP512 Data Sheet, Rev. 2.11
Freescale Semiconductor 373
Chapter 9
XGATE (S12XGATEV2)
9.1 Introduction
The XGATE module is a peripheral co-processor that allows autonomous data transfers between the
MCU’s peripherals and the internal memories. It has a built in RISC core that is able to pre-process the
transferred data and perform complex communication protocols.
The XGATE module is intended to increase the MCU’s data throughput by lowering the S12X_CPU’s
interrupt load.
Figure 9-1 gives an overview on the XGATE architecture.
This document describes the functionality of the XGATE module, including:
XGATE registers (Section 9.3, “Memory Map and Register Definition”)
XGATE RISC core (Section 9.4.1, “XGATE RISC Core)
Hardware semaphores (Section 9.4.4, “Semaphores”)
Interrupt handling (Section 9.5, “Interrupts”)
Debug features (Section 9.6, “Debug Mode”)
Security (Section 9.7, “Security”)
Instruction set (Section 9.8, “Instruction Set”)
9.1.1 Features
The XGATE module includes these features:
Data movement between various targets (i.e Flash, RAM, and peripheral modules)
Data manipulation through built in RISC core
Provides up to 112 XGATE channels
104 hardware triggered channels
8 software triggered channels
Hardware semaphores which are shared between the S12X_CPU and the XGATE module
Able to trigger S12X_CPU interrupts upon completion of an XGATE transfer
Software error detection to catch erratic application code