Site affiché en Français Voir le site en English (USA) Voir le site en English (GB)
Vous êtes ici: ac6 > ac6-formation > AMCC processors > 405GP implementation

M1 405GP implementation

This course covers AMCC 405GP processor

Objectives
bullet_jaune_1 The course explains how to design a 405GP based board.
bullet_jaune_1 The SDRAM controller is viewed in detail.
bullet_jaune_1 A boot firmware that initializes the MMU has been developped.
bullet_jaune_1 The course provides an example of interrupt handler that supports nesting.
bullet_jaune_1 External control of DMA channels working in scatter / gather mode is described.
bullet_jaune_1 The course explains the fast ethernet controller operation.

bullet_jaune_1 This training has been delivered several times to companies developing embedded systems based on 405GP (Defence systems, multimedia systems).

bullet_jaune_1 A chapter on Linux porting can be appended on request.
Labs are compiled with Diab Data compiler and run under Lauterbach debugger.
A more detailed course description is available on request at info@ac6-formation.com
Prerequisites
bullet_jaune_2 Experience of a 32 bit processor or DSP is mandatory.
bullet_jaune_2 Knowledge of PCI bus is recommended (see our course reference IC1).

Plan
INTRODUCTION TO 405GP
bullet_jaune_2 Internal bus organization : PLB, OPB, DCR
bullet_jaune_2 Internal concurrent transfers examples
bullet_jaune_2 405GP CPU board architecture examples
bullet_jaune_2 405GP mapping
THE 405 CORE
bullet_jaune_2 5-stage pipeline operation
bullet_jaune_2 Speculative execution, guarded memory, SGR register
bullet_jaune_2 Serialization
bullet_jaune_2 Cache basics
bullet_jaune_2 Data flow between external memory and caches
bullet_jaune_2 Memory Management Unit : memory attributes definition (cache enabled / cache inhibited, copyback / writethrough
bullet_jaune_2 Translation Lookaside Buffer initialization
bullet_jaune_2 Load / store buffer, sync instruction
PowerPC ARCHITECTURE FOR EMBEDDED
bullet_jaune_2 Branch instructions
bullet_jaune_2 Load / store instructions
bullet_jaune_2 Arithmetical and logical instructions, shift and rotate instructions
bullet_jaune_2 The PowerPC EABI
bullet_jaune_2 Cache related instructions
bullet_jaune_2 16-bit mac instructions to develop fixed point DSP algorithms
bullet_jaune_2 Exception processing
bullet_jaune_2 Critical versus non critical interrupts
bullet_jaune_2 Syndrome registers updating when an exception is taken
bullet_jaune_2 Core timers : PIT, FIT and WDT
INTERNAL BUSES
bullet_jaune_2 PLB bus : transfer protocol, split mode advantage, arbiter initialization
bullet_jaune_2 OPB bus : parking strategy, arbitration
bullet_jaune_2 The PLB-to-OPB bridge
bullet_jaune_2 The DCR bus
bullet_jaune_2 Internal busses related registers initialization
bullet_jaune_2 Bus fault management using syndrome registers
CLOCKS, RESET AND POWER MANAGEMENT
bullet_jaune_2 Clocks synthesizer
bullet_jaune_2 PCI synchronous versus asynchronous mode
bullet_jaune_2 PLL multiplication ratio selection PLLMR and CHCR0 registers initialization
bullet_jaune_2 Low power modes
bullet_jaune_2 The core, chip and system reset effects on 405GP internal resources
bullet_jaune_2 Initialization code example
bullet_jaune_2 405GP hardware configuration with strap pins
INTERRUPT CONTROLLER
bullet_jaune_2 Interrupt sources enumeration
bullet_jaune_2 Interrupt masking and acknowledgement explanation
bullet_jaune_2 Vectorization mechanism for critical interrupts
THE SDRAM CONTROLLER
bullet_jaune_2 Page mode
bullet_jaune_2 Mode register initialization
bullet_jaune_2 Bank selection and precharge
bullet_jaune_2 SDRAM control truth table
bullet_jaune_2 Chip selection with DQM pins
bullet_jaune_2 Bank activation, read, write and precharge timing diagrams
bullet_jaune_2 ECC error correction
bullet_jaune_2 405GP SDRAM controller features
bullet_jaune_2 Timing parameters programming
THE EXTERNAL BUS CONTROLLER
bullet_jaune_2 External bus pinout
bullet_jaune_2 Dynamic bus sizing
bullet_jaune_2 Timing parameters initialization in PB0-7AP registers for either bursting or non bursting devices
bullet_jaune_2 Timing diagrams
bullet_jaune_2 External acknowledge with the Ready input
bullet_jaune_2 External master interface : arbitration timing diagram
THE PCI2.2 BRIDGE
bullet_jaune_2 PCI bridge features
bullet_jaune_2 405GP as a PCI target
bullet_jaune_2 405GP as a PCI master
bullet_jaune_2 405GP as PCI configurator
bullet_jaune_2 Internal arbiter initialization
bullet_jaune_2 405GP used on a PCI expansion board
THE 4 DMA CHANNELS
bullet_jaune_2 Burst mode support
bullet_jaune_2 Related signals
bullet_jaune_2 Channels bus priority
bullet_jaune_2 Data packing / unpacking
bullet_jaune_2 Buffers chaining through the scatter / gather mode
THE FAST ETHERNET CONTROLLER
bullet_jaune_2 Frame description with or without VLAN option
bullet_jaune_2 405GP Ethernet controller organization
bullet_jaune_2 MII interface
bullet_jaune_2 Hash table disadvantage
bullet_jaune_2 Buffer descriptors management
bullet_jaune_2 Interrupt management
THE UARTS
bullet_jaune_2 Transmission and reception FIFOs use
bullet_jaune_2 Flow control signals management
THE IIC INTERFACE
bullet_jaune_2 Protocol basics
bullet_jaune_2 Transfer timing diagrams, IICSCL and IICSDA pins
bullet_jaune_2 Transmission and reception sequence
THE INTERNAL DEBUG TOOLS
bullet_jaune_2 JTAG debug restrictions
bullet_jaune_2 Logic analyser connection through Mictor connectors
bullet_jaune_2 The trace port