- Elettronica Open Source - https://it.emcelettronica.com -

MPC8569 PowerQICC III

Questo microprocessore di NXP [1], basato sul core e500 realizzato in tecnologia Power Architecture, si evidenzia particolarmente per impieghi nel campo delle telecomunicazioni, del networking, e dei sistemi wireless.

Il processore MPC8569 (visibile in figura 1) rappresenta un eccellente esempio di come si possa integrare il supporto per diversi tipi di protocolli ed interfacce su di uno stesso componente; esso comprende infatti una CPU ad elevate prestazioni con un’ampia memoria cache di livello 2, un controllore di memoria DDR2/DDR3 a 64-bit (oppure due controllori a 32-bit), interfacce di tipo PCI Express, SGMII, USB 2.0, e serial RapidIO. Tutte queste caratteristiche permettono di sostituire la gestione separata dei segnali di controllo e dati con una soluzione basata su un singolo chip. L’MPC8569 include inoltre un nuovo modello di QUICC Engine basato su quattro processori RISC in grado di offrire terminazione, interworking, e switching tra diversi tipi di protocolli di comunicazione a larga banda, inclusi ATM (Asynchronous Transfer Mode), Ethernet, POS (Packet Over Sonet), PPP, e HDLC. La funzionalità di interworking resa disponibile dal QUICC Engine agevola inoltre la transizione dei sistemi ATM [2]verso quelli basati sull’IP consentendo una significativa riduzione dei costi. E’ inoltre fornito supporto per il protocollo IEEE 1588 precision time, utilizzato per la sincronizzazione temporale dei dispositivi collegati ad una rete Ethernet. La famiglia PowerQUICC cui appartiene questo componente è stata espressamente progettata per soddisfare la crescente domanda di componenti per applicazioni a banda larga, come ad esempio stazioni 3G/WiMAX/LTE, controllori per reti radio, gateway, dispositivi per telecomunicazioni di tipo ATM, TDM, ed IP. L’MPC8569 offre al cliente la possibilità di gestire diverse funzioni con il medesimo componente, cosa che in passato era possibile solo con l’utilizzo di diversi componenti separati e specializzati. Inoltre, una soluzione integrata offre anche innegabili vantaggi in termini di minori costi, minori consumi, e maggiore spazio disponibile a livello di PCB. In figura 2 è mostrato uno schema a blocchi del processore, con evidenziate le principali unità funzionali.

Figura 1: il processore MPC8569E.

Figura 1: il processore MPC8569E.

 

Figura 2: schema a blocchi del processore.

Figura 2: schema a blocchi del processore.

LA TECNOLOGIA QUICC ENGINE

La tecnologia QUICC Engine di Freescale Semiconductor, costruita sulla base dell’architettura Power Architecture, rappresenta un passo significativo all’interno del programma di sviluppo CPM (Communication Processor Module). QUICC Engine comprende un numero scalare di core RISC integrati in grado di fornire un grado di prestazioni tale da soddisfare anche i clienti più esigenti. La versione base del QUICC Engine include 2 processori RISC operanti ad una frequenza di 500 MHz con supporto per numerosi tipi di protocolli, ed offre funzionalità di interwrking con un throughput di 1.2 Gbps; la gamma comprende poi altre funzionalità avanzate, come lo switching, il parsing e l’IP forwarding. Otto controllori unificati per la comunicazione (UCC, si osservi la figura 3) garantiscono il supporto per Fast Ethernet, Gigabit Ethernet, High level Data Link Control (HDLC), Asynchronous Transfer Mode (ATM), Packet Over Sonet (POS).

Figura 3: la tecnologia QUICC Engine.

Figura 3: la tecnologia QUICC Engine.

Otto multiplexer a divisione di tempo (TDM) abilitano la connessione con 8 linee E1/T1, oppure T3/E3. Oltre alle UCC, QUICC Engine supporta controllori di comunicazione multipli e multi-canale (MCC), anche se uno soltanto è oggi disponibile, ed include uno switch Ethernet di livello 2 (L2). Esiste inoltre la possibilità di connettersi a memorie SDRAM e DDR tramite un controllore DMA integrato. La tecnologia QUICC Engine include perciò molte caratteristiche avanzate che la rendono adatta per l’utilizzo attuale e futuro in applicazioni di telecomunicazione a larga banda con e senza fili, come anche sistemi di networking. Ricordiamo infine che QUICC Engine mantiene un elevato grado di compatibilità software con l’architettura originaria PowerQUICC: la compatibilità all’indietro facilita la migrazione da una piattaforma all’altra, riduce i costi di sviluppo, e riduce il time to market.

L’INTERWORKING

L’obiettivo di ogni operatore del settore telecomunicazioni è quello di poter disporre contemporaneamente di traffico dati e voce (telefonia) sulla stessa rete. Ciò è possibile sfruttando la tecnologia basata sui pacchetti IP (Ethernet): in questo modo i dispositivi operanti sulla rete possono interoperare tra flussi di tipo “circuit-switched” e flussi di tipo “packet-switched”, e tra diversi tipi di standard e protocolli. L’interoperabilità tra i protocolli viene chiamata “interworking”. La tecnologia QUICC Engine supporta l’interworking tra ATM ed Ethernet, senza alcun intervento da parte della CPU, secondo la specifica RFC2684. Inoltre, il QUICC Engine supporta l’interworking da MC/MLPPP ad Ethernet, ed è in grado di eseguire funzioni di lookup tra i layer 2 e 4, sempre senza intervento della CPU.

CARATTERISTICHE HARDWARE

Le principali caratteristiche dell’MPC8569, realizzato in tecnologia silicon on insulator (SOI) da 45 nm, sono le seguenti:

ARCHITETTURA DEL’MPC8569E

Vediamo ora di esaminare in dettaglio i singoli blocchi funzionali che compongono il processore.

E500V2 CORE

Il cuore dell’MPC8569 risiede in un core a 32-bit di elevate prestazioni realizzato in tecnologia Power Architecture e le cui principali caratteristiche possiamo così riassumere: indirizzamento fisico a 36-bit (spazio di indirizzamento pari a 64 Gbyte), set di istruzioni embedded per il calcolo in virgola mobile (supporto per il tipo vettore a 64-bit e scalare a 32-bit in singola precisione, e per il tipo scalare a 64-bit in doppia precisione), cache istruzioni e dati L1 da 32 Kbyte (entrambe con controllo di parità), 512 Kbyte di memoria cache L2 utilizzabile anche come SRAM. L’MPC8569 può inoltre far parte di un sistema con uno spazio di indirizzamento maggiore attraverso la mappatura di apposite “translation window”, una funzionalità resa disponibile dalle unità ATMU (Address Translation and Mapping Units) in grado di supportare la traslazione degli indirizzi sia in ingresso (inbound) che in uscita (outbound); questa caratteristica permette al processore di far parte di mappe di indirizzamento di grandi dimensioni come quelle relative alle architetture PCI Express e RapidIO.

QUICC ENGINE

Il blocco QUICC Engine fornisce supporto per:

INTEGRATED SECURITY ENGINE (SEC)

Si tratta di un core modulare e scalare per la gestione della sicurezza, ottimizzato per processare tutti gli algoritmi associati a IPsec, IKE, SSL/TLS, iSCSI, SRTP, IEEE 802.11i®, IEEE 802.16® (WiMAX), IEEE 802.1AE® Std. (MACSec), 3GPP, A5/3 per GSM ed EDGE, GEA3 per GPRS, e SNOW 3G (richiesto dai sistemi LTE). Il SEC dispone al suo interno di unità di elaborazione crittografiche, specifiche per i singoli protocolli, che gli permettono di eseguire gli algoritmi con un singolo passaggio dei dati.

CONTROLLORE DI MEMORIA DDR SDRAM

L’MPC8569 dispone di un controllore di memoria DDR a 64-bit (o due a 32-bit) in grado di supportare memorie sia di tipo DDR2 che DDR3, con uno spazio di indirizzamento che può estendersi sino a 16 Gbyte. Sono disponibili 16 segnali di indirizzamento multiplexati che, unitamente a 4 segnali di chip select, consentono di gestire fino a 4 banchi di memoria con densità da 64 Mbyte a 4 Gbyte. Utilizzando poi la modalità “page mode”, si possono aprire contemporaneamente fino a 32 pagine di memoria, riducendo drasticamente i tempi di latenza sugli accessi. Dal punto di vista della sicurezza, grazie all’ECC si possono rilevare e correggere tutti gli errori sul singolo bit e rilevare tutti gli errori su 2 bit, e tutti gli errori all’interno di un nibble. Per quanto riguarda invece il power management, è presente un segnale con cui l’MPC8569 può portare immediatamente la memoria in una modalità sleep a basso assorbimento di potenza.

INTERFACCE DI I/O

Sono disponibili i seguenti tipi di interfacce di I/O ad elevata velocità:

Figura 4: configurazioni SGMII selezionabili al power-on.

Figura 4: configurazioni SGMII selezionabili al power-on.

PROGRAMMABLE INTERRUPT CONTROLLER

L’MPC8569 implementa la logica e le strutture di programmazione dell’architettura OpenPIC, fornendo supporto per gli interrupt esterni (con annidamento degli stessi), interrupt associati ai messaggi, interrupt associati a stati logici interni, e timer ad elevata risoluzione. Sono disponibili 16 livelli di priorità degli interrupt. Il modulo PIC può inoltre essere escluso per permettere l’utilizzo di un controllore esterno.

ALTRI DISPOSITIVI

Altri moduli presenti nell’MPC8569 sono:

Per quanto concerne la selezione del dispositivo primario da cui eseguire il boot, il processore può essere configurato in modo tale da avviarsi da una delle seguenti interfacce:

SISTEMI DI SVILUPPO

Il principale strumento di sviluppo per questo tipo di processore è rappresentato dal sistema MDS (MPC8569E Modular Development System), espressamente progettato per permettere agli sviluppatori hardware e software di accelerare le fasi di sviluppo e test, riducendo sensibilmente il time to market. L’MDS si compone di diverse board che nel complesso formano un sistema di sviluppo completo:

Figura 5: la scheda di sviluppo MDS.

Figura 5: la scheda di sviluppo MDS.

 

Figura 6: schema a blocchi della scheda MDS.

Figura 6: schema a blocchi della scheda MDS.

SCHEDA PROCESSORE

Questa board è contraddistinta dalle seguenti caratteristiche:

Le risorse ed i dispositivi di debug presenti sulla scheda processore MDS consentono agli sviluppatori di caricare il software e metterlo in esecuzione, impostare i breakpoint, visualizzare il contenuto dei registri e della memoria, e collegare hardware di tipo proprietario. Può anche essere utilizzata come scheda dimostrativa, dal momento che il programma può risiedere sulla sua memoria flash. La scheda può essere inserita in un normale PC come dispositivo end point PCI Express utilizzando l’adattatore opzionale PCI-PCI Express. In figura 7 è mostrato lo schema a blocchi con le diverse unità funzionali presenti sulla scheda processore MDS.

Figura 7: la scheda processore MDS.

Figura 7: la scheda processore MDS.

SCHEDA DI I/O

Questa scheda serve ad aggiungere alla scheda processore (Processor Board, PB) dei PHY addizionali oppure altri moduli di valutazione e supporta fino a 4 slot PMC (PCI Mezzanine Card). I moduli PMC possono essere connessi alla PB tramite il PIB, una scheda adattatore con formato AdvancedTCA che include 2 Gigabit Ethernet ottici e 8 MII/RMII Fast Ethernet Base-T.

MODULI DI ESPANSIONE

I moduli di espansione disponibili per MDS sono i seguenti: