Site affiché en Français Voir le site en English (USA) Voir le site en English (GB)
Vous êtes ici: ac6 > ac6-formation > Freescale Power CPUs > MPC8641(D) implementation
Télécharger le catalogue
Télécharger le catalogue
Télécharger la page
Télécharger la page
Ecrivez nous
Ecrivez nous
Version imprimable
Version imprimable
 

FC5 MPC8641(D) implementation

This course covers Freescale MPC8641 and MPC8641D single- and dual- core Power CPUs


formateur
Objectives
bullet_jaune_1 The course clarifies the architecture of the MPC8641D, particularly the operation of the coherency module that interconnects the e600s to memory and high-speed interfaces.
bullet_jaune_1 Cache coherency protocol is introduced in increasing depth.
bullet_jaune_1 The e600 core is viewed in detail, especially the Altivec units that enable vector processing.
bullet_jaune_1 The boot sequence and the clocking are explained.
bullet_jaune_1 The course focuses on the hardware implementation of the MPC8641D.
bullet_jaune_1 A long introduction to DDR SDRAM operation is done before studying the DDR SDRAM controller.
bullet_jaune_1 An in-depth description of the RapidIO port and the PCI-Express port is done.
bullet_jaune_1 The course highlights both hardware and software implementation of gigabit / fast / Ethernet controllers.
A more detailed course description is available on request at info@ac6-training.com
Prerequisites and related courses
bullet_jaune_2 Experience of a 32-bit processor or DSP is mandatory.
bullet_jaune_2 Knowledge of the RapidIO (course IC5) and PCI Express bus (course IC4) is recommended.

Plan
MPC8641D OVERVIEW
Overview
bullet_jaune_2 e600 core, usage of a dual core device
bullet_jaune_2 Coherency Module
bullet_jaune_2 Examples of data flow through the MPC8641D
bullet_jaune_2 Address map, local access windows
bullet_jaune_2 Outbound and inbound address translation windows
e600 CORE
PIPELINE
bullet_jaune_2 Pipeline basics
bullet_jaune_2 Introduction to e600 pipeline
bullet_jaune_2 e600 pipeline implementation
bullet_jaune_2 Execution serialization, purpose of the isync instruction
bullet_jaune_2 Branch management
bullet_jaune_2 Guarded memory
bullet_jaune_2 Coding guidelines
bullet_jaune_2 Performance monitor
INTERNAL DATA AND INSTRUCTION PATHS
bullet_jaune_2 L1 and L2 cache loading, hit under miss
bullet_jaune_2 The MSS [Memory Sub System]
bullet_jaune_2 The load fold queue
bullet_jaune_2 The store miss merging advantage when several vectors must be stored
bullet_jaune_2 The BIU [Bus Interface Unit]
bullet_jaune_2 Purpose of sync and eieio instructions
L1 AND L2 CACHES
bullet_jaune_2 Cache basics
bullet_jaune_2 e600 L1 cache : PLRU algorithm, HID0/ICTRL programming interface, way locking
bullet_jaune_2 L1 data cache flush
bullet_jaune_2 Transient load instructions benefits
bullet_jaune_2 L2 cache organization
bullet_jaune_2 L2 replacement algorithm selection, L2 locking
bullet_jaune_2 Cache coherency basics
bullet_jaune_2 MESI snooping sequences involving 2 e600s and a PCI Express master
e600 PROGRAMMING
bullet_jaune_2 User and supervisor registers
bullet_jaune_2 The system call communication path between applications and RTOS
bullet_jaune_2 Integer load / store instructions, boolean semaphore management
bullet_jaune_2 IEEE754 basics
bullet_jaune_2 FPU operation : FPSCR register, IEEE vs non-IEEE mode
bullet_jaune_2 The EABI
bullet_jaune_2 Code and data sections, small data areas benefits
ALTIVEC
bullet_jaune_2 Altivec introduction, SIMD processing
bullet_jaune_2 Intra vs inter element instructions
bullet_jaune_2 Altivec registers, VSCR initialization
bullet_jaune_2 ANSI C extension to support vector operators, new C types, new castings, vector declaration and initialization
bullet_jaune_2 Altivec implementation on the e600 : the VALU and the VPU execution units
bullet_jaune_2 Data streams management
bullet_jaune_2 EABI extension to support Altivec
THE MEMORY MANAGEMENT UNIT
bullet_jaune_2 MMU goals
bullet_jaune_2 Enabling 4 additional BATs
bullet_jaune_2 32-bit or 36-bit real address size selection
bullet_jaune_2 WIMG attributes definition, page and block access rights definition
bullet_jaune_2 Page protection through VSID selection
bullet_jaune_2 TLB organization, TLB software management
bullet_jaune_2 Page translation : PTEG selection, tablesearch, PTE content
bullet_jaune_2 Software vs hardware TLB reload
bullet_jaune_2 MMU implementation in real-time sensitive applications
THE EXCEPTION MECHANISM
bullet_jaune_2 Exception state saving and restoring through SRR0/SRR1 registers
bullet_jaune_2 Exception management
bullet_jaune_2 Recoverable vs non recoverable interrupts
bullet_jaune_2 Requirements to support exception nesting
bullet_jaune_2 Performance monitor
MPC8641D INFRASTRUCTURE
RESET AND CLOCKING
bullet_jaune_2 Platform clock
bullet_jaune_2 RapidIO transmit clock source selection
bullet_jaune_2 Power-on reset sequence, use of the I2C interface to access a serial ROM
bullet_jaune_2 Power-on reset configuration
bullet_jaune_2 Boot page translation
MPX COHERENCY MODULE
bullet_jaune_2 I/O arbiter
bullet_jaune_2 MPX arbiter
bullet_jaune_2 Transaction queue
bullet_jaune_2 Global data multiplexor
bullet_jaune_2 MPX interface
MULTIPROCESSOR PERIPHERAL INTERRUPT CONTROLLER
bullet_jaune_2 Open PIC architecture compatibility
bullet_jaune_2 Interrupt nesting
bullet_jaune_2 Description of the 4 timers / counters
bullet_jaune_2 Message interrupts
bullet_jaune_2 e600-to-e600 interrupt capability
DDR-SDRAM MEMORY CONTROLLER
bullet_jaune_2 DDR2 operation
bullet_jaune_2 Command truth table
bullet_jaune_2 Hardware interface
bullet_jaune_2 Refresh types
bullet_jaune_2 Bank activation, read, write and precharge timing diagrams, page mode
bullet_jaune_2 ECC error correction
bullet_jaune_2 Initial configuration following Power-on-Reset
bullet_jaune_2 Address decode
bullet_jaune_2 Timing parameters programming
bullet_jaune_2 FCRAM interface commands
LOCAL BUS CONTROLLER
bullet_jaune_2 Multiplexed 32-bit address and data transfers
bullet_jaune_2 Burst support
bullet_jaune_2 Dynamic bus sizing
bullet_jaune_2 GPCM, UPMs and SDR SDRAM states machines
INTEGRATED DMA CONTROLLER
bullet_jaune_2 Priority between the 4 channels
bullet_jaune_2 Support for cascading descriptor chains
bullet_jaune_2 Scatter / gathering
bullet_jaune_2 Selectable hardware enforced coherency
bullet_jaune_2 Ability to start DMA from external 3-pin interface
SERIAL RapidIO INTERFACE
bullet_jaune_2 Message Unit, direct vs chaining mode operation
bullet_jaune_2 RapidIO doorbell and port-write unit
bullet_jaune_2 Accessing configuration registers via RapidIO packets
bullet_jaune_2 Programming inbound and outbound ATMUs
bullet_jaune_2 Error handling
PCI EXPRESS INTERFACE
bullet_jaune_2 Modes of operation, Root Complex / Endpoint
bullet_jaune_2 Byte swapping
bullet_jaune_2 Transaction ordering rules
bullet_jaune_2 Programming inbound and outbound ATMUs
bullet_jaune_2 Configuration, initialization
PERFORMANCE MONITOR AND DEBUG FEATURES
bullet_jaune_2 Event counting
bullet_jaune_2 Threshold events
bullet_jaune_2 Watchpoint facility
bullet_jaune_2 Trace buffer
MPC8641D INPUT / OUTPUT PERIPHERALS
THE ETHERNET CONTROLLERS
bullet_jaune_2 802.3 specification fundamentals : the 3 layers PHY, MAC and control
bullet_jaune_2 Frame format with and without VLAN option
bullet_jaune_2 Address recognition, pattern matching
bullet_jaune_2 Buffer descriptors management
bullet_jaune_2 The enhanced three-speed Ethernet controllers (eTSECs)
bullet_jaune_2 Physical interfaces : GMII, MII, TBI or RGMII
bullet_jaune_2 Buffer descriptor management
bullet_jaune_2 Layer 2 acceleration accept or reject on address or pattern match
bullet_jaune_2 256-entry hash table for unicast and multicast
bullet_jaune_2 IPv4, TCP and UDP checksum verification and generation
bullet_jaune_2 Quality of service support
I2C CONTROLLERS
bullet_jaune_2 I2C protocol fundamentals : addressing, multimaster operation
bullet_jaune_2 Transmit and receive sequence
SERIAL INTERFACE
bullet_jaune_2 Introduction to UART protocol
bullet_jaune_2 Description of the NS€50/16550 compliant Uarts
bullet_jaune_2 Flow control signal management