|
|
|
|
| INTRODUCTION TO MPC832XE |
| Overview |
 |
Internal architecture |
 |
Highlighting data paths inside the MPC832XE, benefit of a dual-DDR controller system |
 |
Block diagram: characteristics of each of the 3 internal modules e300 core, Platform, QuiccEngine |
 |
Software migration from MPC8XX/MPC82XX/MPC85XX families |
 |
Application examples |
| e300 |
| THE INSTRUCTION PIPELINE |
 |
Superscalar operation |
 |
Branch processing unit |
 |
Branch instructions |
 |
Coding guidelines |
| DATA AND INSTRUCTION PATHS |
 |
Load / store architecture |
 |
Load / store buffers |
 |
Sync and eieio instructions, determining where eieio is really required |
| CACHES |
 |
Cache basics |
 |
Cache locking |
 |
PLRU algorithm, highlighting the difference between a True LRU and the PLRU replacement algorithms |
 |
Shared resource management, lwarx and stwcx. instructions |
 |
Cache coherency mechanism, snooping |
 |
Memory coherency required attribute |
 |
The MEI state machine |
 |
Basic snoop requests: clean / flusk / kill |
 |
Management of cache enabled pages shared with PCI DMAs |
 |
Cache related instructions |
 |
Software enforced cache coherency |
| SOFTWARE IMPLEMENTATION |
 |
PowerPC architecture specification, the 3 books UISA, VEA and OEA |
 |
addressing modes, load / store instructions |
 |
Integer instructions |
 |
Rotate instructions |
 |
PowerPC EABI |
 |
Linking an application with Diab Data, parameterizing the linker command file |
| THE MMU |
 |
Thread vs process |
 |
Introduction to real, block and segmentation / pagination translations |
 |
Real mode restrictions |
 |
Memory attributes and access rights definition |
 |
Virtual space benefit |
 |
TLBs organization |
 |
Segment-translation: process ID definition |
 |
Page-translation |
 |
MMU implementation in real-time sensitive applications |
| THE EXCEPTION MECHANISM |
 |
Supervisor registers description |
 |
Save / restore registers for non-critical interrupts |
 |
Critical interrupt, automatic nesting |
 |
Exception management mechanism |
 |
Requirements to allow exception nesting |
| THE DEBUG PORT |
 |
JTAG emulation, restrictions |
 |
Code instrumentation |
 |
Hardware breakpoints |
| THE PLATFORM CONFIGURATION |
| POWER, RESET AND CLOCKING |
 |
DC and AC electrical characteristics |
 |
Configuration signals sampled at reset |
 |
Reset configuration words source |
 |
Utilization of the I2C boot sequencer |
 |
PCI Host / Agent configuration |
 |
Boot memory space |
 |
Clocking in PCI Host mode, system clock domains |
 |
External clock inputs |
 |
System PLL ratio |
| PLATFORM CONFIGURATION |
 |
Address translation and mapping, local memory map, local access windows |
 |
Arbiter and bus monitor |
 |
Sequencer |
 |
General purpose inputs / outputs |
 |
Timers |
| THE DDR2 MEMORY CONTROLLER |
 |
DDR-SDRAM operation: a 128-Mbits DDR-SDRAM from Micron is used as an example |
 |
Jedec specification basics, mode register initialization, bank selection and precharge |
 |
On-Die termination and calibration |
 |
Differences between DDR1 and DDR2 |
 |
Command truth table |
 |
Bank activation, read, write and precharge timing diagrams, page mode |
 |
DDR-SDRAM controller overview |
 |
Initial configuration following Power-on-Reset |
 |
Address decode |
 |
Timing parameters programming |
 |
Initialization routine |
| LOCAL BUS CONTROLLER |
 |
Multiplexed or non-multiplexed address and data buses |
 |
Burst support |
 |
Dynamic bus sizing |
 |
GPCM, UPMs states machines |
 |
Interfacing to ZBT SRAMs |
| PCI BUS INTERFACES |
 |
Bridge features |
 |
Read prefetch and write posting FIFOs |
 |
Inbound transactions handling, Outbound transactions handling in both modes |
 |
PCI bus arbitration |
 |
PCI hierarchy configuration when operating as host |
| INTEGRATED DMA CONTROLLER |
 |
Priority between the 4 channels |
 |
Scatter / gathering |
 |
Selectable hardware enforced coherency |
 |
Concurrent execution across multiple channels with programmable bandwidth control |
 |
Messaging unit |
| INTEGRATED PROGRAMMABLE INTERRUPT CONTROLLER |
 |
Interrupt sources |
 |
Definition of interrupt priorities |
 |
System critical interrupt |
 |
Interrupt management, vector register |
 |
Requirements to support nesting |
 |
Machine check interrupts |