The course clarifies the architecture of the P102X, particularly the operation of the coherency module that interconnects the e500s to memory and high-speed interfaces.
Cache coherency protocol is introduced in increasing depth.
The e500 core is viewed in detail, especially the SPE unit that enable vector processing.
The boot sequence and the clocking are explained.
The course focuses on the hardware implementation of the P102X.
A long introduction to DDR SDRAM operation is done before studying the DDR2/3 SDRAM controller.
An in-depth description of the PCI-Express port is done.
The course highlights both hardware and software implementation of gigabit / fast / Ethernet controllers.
Communication interfaces are explained according to the exact reference of the SoC: either TDM or QuiccEngine or DPAA.
AC6 has developed an optimized SPE based FFT coded in assembler language.
Performance for 1024 complex floating point single precision samples is:
- 91_386 core clock cycles without reverse ordering, 94_124 with reverse ordering
Performance for 4096 complex floating point single precision samples is:
- 470_778 core clock cycles without reverse ordering, 511_227 with reverse ordering
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 data flows, OCEAN switch fabric, packet reordering
Implementation examples
Address map, ATMU, OCEAN configuration
Local vs external address spaces, inbound and outbound address decoding
Dual-issue superscalar operation
Execution units
Dynamic branch prediction
The Core Complex Bus
Store miss merging and store gathering
Memory access ordering
Lock acquisition and import barriers
The first level MMU and the second level MMU, consistency between L1 and L2 TLBs
TLB software reload
Process protection
36-bit real addressing
The L1 caches
Software cache coherency
Level 2 cache
Allocation of data transferred by external masters into the cache: stashing
e500 coherency module
Snooping mechanism
Stashing mechanism
L2 cache locking
Differences between the new Book E architecture and the classic PowerPC architecture
Floating Point units, Double-Precision FP
Signal Processing APU (SPE)
Book E exception handling
Syndrome registers
Core timers
Performance monitoring
JTAG emulation
Watchpoint logic
Platform clock
Voltage configuration selection
Power-on reset sequence, using the I2C interface to access serial ROM
Power management
eSDHC boot
eSPI boot ROM
I/O arbiter
CCB arbiter
CCB interface
On-Die termination
Calibration mechanism
Mode registers initialization, bank selection and precharge
Command truth table
Hardware interface
Bank activation, read, write and precharge timing diagrams, page mode
ECC error correction
Initialization routine
Multiplexed or non-multiplexed address and data buses
Dynamic bus sizing
GPCM, UPMs states machines
NAND flash controller
4-lane PCI Express interface
Modes of operation, Root Complex / Endpoint
Transaction ordering rules
Programming inbound and outbound ATMUs
PIC in multiple-processor implementation
Understanding interrupt masking
Interprocessor interrupts
Per-CPU register usage, message registers
Nesting implementation
Support for cascading descriptor chains
Scatter / gathering
Selectable hardware enforced coherency
Threshold events
Chaining, triggering
Watchpoint facility
Trace buffer
Address recognition, pattern matching
Buffer descriptors management
Physical interfaces
Buffer descriptor management
256-entry hash table for unicast and multicast
Management of VLAN tags and priority, VLAN insertion and deletion
Quality of service, managing several transmit and receive queues
TCP/IP offload engine, filer programming
IEEE1588 compliant time-stamping
Storing and executing commands targeting the external card
Multi-block transfers
Moving data by using the dedicated DMA controller
Dividing large data transfers
EHCI implementation
Periodic Frame List
ULPI interfaces to the transceiver
OTG support
Endpoints configuration
Crypto channels
Sequence to subcontract a crypto job to SEC
Link tables
Managing interrupts
Description of the NS16552 compliant Uarts
I2C controller
Enhanced SPI controller
Serial interface
Network mode of operation with up to 128 time-slots
DMA configuration
End-of-frame interrupt
Configuring the TDM for I2S Operation
Display interfaces
Display color depth
Pixel structure, alpha-blending
Utilization of area descriptor
Moving images through the dedicated DMA channel
Integrated RISC CPU
Communication between Host CPU and QE RISC CPU
Priority management
Steering the interrupt source to either Low priority or High priority input of the platform PIC
Serial DMA
QUICC engine external requests
NMSI vs TDM
Enabling connections to TSA or NMSI
Utilization of Buffer Descriptors
Chaining descriptors into rings
Parameter RAM independent of protocol
UCC as slow communications controllers, UART mode
UCC for fast protocols, virtual FIFOs
Flow control
Setting global parameters
Describing the parameter RAM
Transparent data encapsulation, frame sync and frame CRC
Describing the parameter RAM
Connecting TDM lines
Parameterizing the timings related to Rx/Tx clock, sync and data signals
Connecting the TDM line to UCC using Rx/Tx routing tables
Comparison with MCC and QMC
Connecting time-slots to logical channels through Rx/Tx routing tables
Implementing Rx/Tx channel buffers
Interrupt management
Channel-specific HDLC parameters
Per channel exception management
UMCC host commands
Definitions: buffer, buffer pool, frame, frame queue, work queue, channel
Pour vous enregistrer ou pour toute information supplémentaire, contactez nous par email à l'adresse info@ac6-formation.com.
Les inscriptions aux sessions de formation sont acceptées jusqu'à une semaine avant le début de la formation. Pour une inscription plus tardive nous consulter
Ce cours peut être dispensé dans notre centre de formation près de Paris ou dans vos locaux, en France ou dans le monde entier. Il peut aussi être dispensé sous forme d'un cours en ligne, animé par un de nos formateurs.
Nos formateurs sont bilingues et assurent le cours en français ou en anglais.
Les sessions inter-entreprises programmées sont ouvertes dès deux inscrits. Sous condition d'un dossier complet, les inscriptions sont acceptées jusqu'à deux jours ouvrés avant le début de la formation (une semaine pour les cours en présentiel).
Dernière mise à jour du plan de cours : 15 novembre 2021