View the site in Français Site displayed in English (USA) View the site in English (GB)
You are here: ac6 > ac6-formation > Freescale Power CPUs > MPC744X/5X implementation

FC3 MPC744X/5X implementation

This course covers Freescale G4+ Power CPU, including MPC7448

Objectives
bullet_jaune_1 The course provides coding guidelines based on the knowledge of the instruction pipeline.
bullet_jaune_1 Alignment rules are to be determined to avoid cache replacement of data being processed.
bullet_jaune_1 Data flows between SDRAM, L1 caches , L2 and possibly L3 cache are highlighted.
bullet_jaune_1 MESI cache coherency protocol is introduced in increasing depth.
bullet_jaune_1 Vector instructions and new C operators are viewed in detail.
bullet_jaune_1 Data streams parameterizing is emphasized through an example.
bullet_jaune_1 This course covers bus operation in either 60X or MPX mode.
bullet_jaune_1 Through a FIR algorithm, the instructor shows how to vectorize processing and reduce execution time using data streaming.
bullet_jaune_1 The internal performance monitor has been programmed so that different versions of the FIR algorithm implementation can be compared.
bullet_jaune_1 This course has been delivered several times to companies involved in the design of avionics equipments, such as flight controller.
A more detailed course description is available on request at info@ac6-training.com
Prerequisites
bullet_jaune_2 Experience of a 32 bit processor or DSP is mandatory.

Outline
PIPELINE
bullet_jaune_2 Pipeline basics
bullet_jaune_2 744X/5X pipeline implementation
bullet_jaune_2 Issue queue resource requirements
bullet_jaune_2 Execution model
bullet_jaune_2 Dispatch conditions, completion conditions
bullet_jaune_2 Execution serialization
bullet_jaune_2 Branch management
bullet_jaune_2 Guarded memory
L1, L2 and L3 CACHES
bullet_jaune_2 Cache basics
bullet_jaune_2 744X/5X L1 cache
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 L3 Cache organization according to L3 size
bullet_jaune_2 L3 replacement algorithm selection, L3 locking
bullet_jaune_2 L3 SSRAM used as private memory
bullet_jaune_2 Cache coherency basics
bullet_jaune_2 The MESI L1 data line states
bullet_jaune_2 MESI snooping sequences involving 2 G4 and a PCI master
INTERNAL DATA FLOWS
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
bullet_jaune_2 Purpose of sync and eieio instructions
MPC744X/5X SPECIFIC UNITS
bullet_jaune_2 The 3 architecture layers introduction : UISA, VEA and OEA
bullet_jaune_2 Low power modes
bullet_jaune_2 Performance monitor
bullet_jaune_2 JTAG debugger
bullet_jaune_2 Real time trace
bullet_jaune_2 Differences between 7441, 7445, 7450, 7451, 7455, 7447, 7457 and 7448
THE UISA LAYER
bullet_jaune_2 Branch instructions
bullet_jaune_2 Integer load / store instructions
bullet_jaune_2 Integer arithmetic and logic instructions
bullet_jaune_2 IEEE754 basics
bullet_jaune_2 Float load / store instructions
bullet_jaune_2 Float arithmetic instructions
bullet_jaune_2 The EABI
THE VEA LAYER
bullet_jaune_2 Cache related instructions
bullet_jaune_2 Little-endian emulation
bullet_jaune_2 PowerPC timers : TB and DEC
ALTIVEC IMPLEMENTATION
bullet_jaune_2 Altivec introduction, SIMD processing
bullet_jaune_2 Intra vs inter element instructions
bullet_jaune_2 Altivec registers
bullet_jaune_2 ANSI C extension to support vector operators
bullet_jaune_2 Vector load / store instructions
bullet_jaune_2 Vector integer instructions
bullet_jaune_2 Vector float instructions
bullet_jaune_2 Vector permut instructions
bullet_jaune_2 Altivec implementation on the 744X/5X
bullet_jaune_2 Data streams management
bullet_jaune_2 EABI extension to support Altivec
THE OEA LAYER - MMU
bullet_jaune_2 MMU goals
bullet_jaune_2 The PowerPC address processing
bullet_jaune_2 Enabling of 4 additional BAT on 7445/55
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 Process protection through VSID selection
bullet_jaune_2 TLB organization
bullet_jaune_2 Page translation
bullet_jaune_2 Software vs hardware TLB reload
bullet_jaune_2 MMU implementation in real-time sensitive applications
THE OEA LAYER – EXCEPTION MECHANISM
bullet_jaune_2 Exception management
bullet_jaune_2 Registers updating related to the exception cause
bullet_jaune_2 Requirements to support exception nesting
MPC744X/5X HARDWARE IMPLEMENTATION
bullet_jaune_2 Bus interface configuration
bullet_jaune_2 Auto-check on power up
bullet_jaune_2 Pinout
bullet_jaune_2 Bus features : address pipelining, split transactions
bullet_jaune_2 60X bus mode : address phase and data phase
bullet_jaune_2 MPX bus mode : *HIT and *DRDY pins use
bullet_jaune_2 Data only transactions
bullet_jaune_2 MPX bus cycles overview
bullet_jaune_2 Other signals : interrupts, machine check
bullet_jaune_2 Synchronous SRAMs technologies
bullet_jaune_2 L3 bus pinout, L3 clock synchronization
bullet_jaune_2 SSRAM related parameters initialization in L3CR register