ac6-training, un département d'Ac6 SAS
 
Site affiché en Français
Site affiché en FrançaisVoir le site en English (USA)Voir le site en English (GB)
+ +
- -
Cours en ligne
 
Calendrier  Détails
Systèmes d'Exploitation
 
Calendrier  Détails
Programmation
Calendrier  Détails
Processors
 
Calendrier  Détails
Communications
 
 
 
Calendrier  Détails
+ +
> >
- -

ac6 >> ac6-training >> Processors >> NXP Power CPUs >> MPC8309 implementation Télécharger la page Ecrivez nous

FPQ5 MPC8309 implementation

This course covers PowerQUICC II Pro MPC8309, MPC8306 and MPC8306S

formateur
Objectives
  • The course explain the architecture of the MPC8309, particularly the operation of the coherency module that interconnects the e300 to memory and high-speed interfaces.
  • Cache coherency protocol is introduced in increasing depth.
  • The e300 core is viewed in detail, especially the MMU .
  • The boot sequence and the clocking are explained.
  • The course focuses on the hardware implementation of the MPC8309.
  • A long introduction to DDR SDRAM operation is done before studying the DDR1/2 SDRAM controller.
  • The course describes the sophisticated QoS mechanisms supported by the UCC Ethernet Controller.
  • Implementation of Precise Time Protocol is also studied.
  • Generation of a Linux image and Root File System by using LTIB can also be included into the training.

  • Products and services offered by ACSYS:
    • ACSYS is able to assist the customer by providing consultancies
    • Typical expertises are done during board bringup, hardware schematics review, software debugging, performance tuning.
    • Note that ACSYS has delivered several consultancies on NXP Netcomm SoCs to companies developing avionic equipments.
A more detailed course description is available on request at training@ac6-training.com

A lot of programming examples have been developed by ACSYS to explain the boot sequence and the operation of complex peripherals, such as USB and Ethernet.
•  They have been developed with Diab Data compiler and are executed using Lauterbach debugger.
  • Cours théorique
    • Support de cours au format PDF (en anglais) et une version imprimée lors des sessions en présentiel
    • Cours dispensé via le système de visioconférence Teams (si à distance)
    • Le formateur répond aux questions des stagiaires en direct pendant la formation et fournit une assistance technique et pédagogique
  • Au début de chaque demi-journée une période est réservée à une interaction avec les stagiaires pour s'assurer que le cours répond à leurs attentes et l'adapter si nécessaire
  • Tout ingénieur ou technicien en systèmes embarqués possédant les prérequis ci-dessus.
  • Les prérequis indiqués ci-dessus sont évalués avant la formation par l'encadrement technique du stagiaire dans son entreprise, ou par le stagiaire lui-même dans le cas exceptionnel d'un stagiaire individuel.
  • Les progrès des stagiaires sont évalués par des quizz proposés en fin des sections pour vérifier que les stagiaires ont assimilé les points présentés
  • En fin de formation, une attestation et un certificat attestant que le stagiaire a suivi le cours avec succès.
    • En cas de problème dû à un manque de prérequis de la part du stagiaire, constaté lors de la formation, une formation différente ou complémentaire lui est proposée, en général pour conforter ses prérequis, en accord avec son responsable en entreprise le cas échéant.

Plan du cours

  • Internal architecture
  • Highlighting data paths inside the MPC8309
  • Highlighting differences between MPC8309, MPC8306 and MPC8306S
  • Application examples
  • Superscalar operation, out-of-order execution, register renaming, serializations, isync instruction
  • Branch processing unit, prediction
  • Coding guidelines
  • Load / store buffers
  • Sync and eieio instructions
  • Store gathering mechanism
  • Cache basics
  • L1 caches
  • Cache coherency mechanism, snooping, related signals
  • Memory coherency required attribute
  • The MEI state machine
  • Basic snoop requests
  • Management of cache enabled pages shared with DMAs
  • Cache related instructions
  • Software enforced cache coherency
  • Cache flush routine
  • PowerPC architecture specification, the 3 books UISA, VEA and OEA
  • e300 registers
  • Addressing modes, load / store instructions
  • Floating point arithmetical instructions
  • The PowerPC EABI
  • Linking an application with Diab Data
  • Introduction to real, block and segmentation / pagination translations
  • Real mode restrictions
  • Memory attributes and access rights definition
  • TLBs organization
  • Segment-translation
  • Page-translation
  • MMU implementation in real-time sensitive applications
  • Critical interrupt, automatic nesting
  • Exception management mechanism
  • Registers updating according to the exception cause
  • Requirements to allow exception nesting
  • JTAG emulation, restrictions
  • Hardware breakpoints
  • Power management control
  • Configuration signals sampled at reset
  • Output signals state during reset
  • Reset configuration words source
  • Clocking
  • Address translation and mapping
  • Arbiter and bus monitor
  • Timers
  • Dynamic power management
  • DDR-SDRAM operation
  • Jedec specification basics
  • On-Die termination and calibration
  • Hardware interface
  • Bank activation, read, write and precharge timing diagrams, page mode
  • Initial configuration following Power-on-Reset
  • Timing parameters programming
  • Initialization routine
  • Multiplexed or non-multiplexed address and data buses
  • Dynamic bus sizing
  • GPCM, UPMs states machines
  • Nand Flash Controller
  • Booting from NAND flash
  • Bridge features
  • Read prefetch and write posting FIFOs
  • Inbound transactions handling, outbound transactions handling
  • PCI bus arbitration
  • Storing and executing commands targeting the external card
  • Multi-block transfers
  • Moving data by using the dedicated DMA controller
  • Dividing large data transfers
  • Card insertion and removal detection
  • DMA engine 1
    • Transfer control descriptor format
    • Channel-to-channel linking mechanism
    • Scatter/gather DMA processing
  • DMA engine 2
    • Data chaining and direct mode
    • Priority between the 4 channels
  • Definition of interrupt priorities
  • System critical interrupt
  • Interrupt management, vector register
  • Machine check interrupts
  • Hardware interface
  • 64 message buffers (MB) of zero to eight bytes data length
  • Individual Rx mask registers per message buffer
  • Powerful Rx FIFO ID filtering
  • Management of remote frames, overload frames
  • Programmable transmission priority scheme
  • Time stamp based on 16-bit free-running timer
  • Global network time
  • Dual-Role operation
  • EHCI implementation
  • ULPI interfaces to the transceiver
  • Dedicated DMA channels
  • Endpoints configuration
  • DUART
  • I2C controller
  • SPI controller
  • Serial DMA
  • Multi-threading
  • NMSI vs TDM
  • Baud-rate generators
  • QUICC engine timers
  • Utilization of Buffer Descriptors
  • Chaining descriptors into rings
  • Frame boundary definition
  • Handling UCC interrupts
  • Initialization sequence
  • UCC for fast protocols, virtual FIFOs
  • Defining Tx- and Rx-FIFO thresholds
  • Physical interfaces to transceiver
  • Auto-negotiation
  • IP header checksum
  • Frame filtering and address recognition
  • Quality of Service
  • Ethernet scheduler, traffic shaper
  • BD and Parameter RAM description
  • Ethernet host command set
  • Timestamp unit key features
  • Real Time Clock
  • How QuiccEngine and host software interact
  • QMC and serial interface
  • UCC Base and Global multichannel parameters
  • Channel-specific HDLC parameters
  • QMC host commands
  • Introducing the tools required to generate the kernel image
  • What is required on the host before installing LTIB
  • Common package selection screen
  • Common target system configuration screen
  • Building a complete BSP with the default configurations
  • Creating a Root Filesystems image
  • e-configuring the kernel under LTIB
  • Selecting user-space packages
  • Setup the bootloader arguments to use the exported RFS
  • Debugging Uboot and the kernel by using Trace32
  • Command line options
  • Adding a new package
  • Other deployment methods
  • Creating a new package and integrating it into LTIB
    • A lot of labs have been created to explain the usage of LTIB