Processore Am29000 16 CG

La serie di processori Am29000 sono processori RISC a 32 bit, di progetto simile al Berkeley RISC, all'IBM 801 ed ovviamente anche allo SPARC, diretto discendente del Berkeley RISC che apparve sul mercato poco dopo l'Am29000.

Storia

[modifica | modifica wikitesto]

Fu creata dalla AMD come successore moderno della serie Am2900 destinato a fronteggiare la concorrenza degli analoghi i960 della Intel e 68020 e 68030 di Motorola: I punti di forza di questa famiglia di processori erano una gestione degli interrupt estremamente veloce e una commutazione di contesto (task switching) altrettanto rapida, che li rendevano molto adatti ad essere impiegati come microcontroller e per dispositivi embedded, ruolo per cui riscossero un vasto successo. Dal 1995 in poi la AMD abbandonò questa famiglia di processori per concentrarsi sulla produzione di processori x86 compatibili, il cui mercato era molto più ricco. Il lavoro di sviluppo della serie Am29000 venne travasato nel progetto dell'AMD K5, che traduceva internamente le istruzioni IA32 in istruzioni RISC che venivano eseguite in parallelo a blocchi di cinque dalle unità interne RISC del processore.

Architettura

[modifica | modifica wikitesto]

Esamineremo qui solo l'Am29000 vero e proprio: la famiglia contiene molti altri processori, che però sono variazioni di questo.

L'Am29000 disponeva di 192 registri a 32 bit, di cui 64 globali e 128 locali, che potevano essere gestiti con la tecnica della register window in finestre di dimensione variabile; la finestra di registri corrente era indicata da un apposito registro, simile al registro ISAR del Fairchild F8, che simulava lo stack in memoria dei processori CISC. Questo schema garantiva una flessibilità di uso dei registri che ne facilitava l'allocazione da parte dei compilatori. Era dotato di tre bus indipendenti: uno per gli indirizzi, uno per i dati e uno per le istruzioni (ma esisteva una più tradizionale versione a due bus, l'Am29030): aveva una MMU incorporata ed era dotato di 512 bytes di cache interna (le versioni a due bus ne avevano 4K). Integrava un interrupt controller e un timer.

Durante gli interrupt i registri non venivano salvati, lasciando il compito alla routine di servizio dell'interrupt. Se necessario i registri potevano venire protetti dalla scrittura a blocchi di 4. Le frequenze di clock disponibili andavano da 16 a 40 MHz.

Le memorie preferenziali erano le DRAM video in grado di gestire i dati molto velocemente con la tecnica (allora non ancora sfruttata nei µP) del burst mode

Am29050

[modifica | modifica wikitesto]

Nel 1990 venne commercializzato l'Am29050, una versione superscalare del 29000 particolarmente potente, con clock a 50 MHz e dotata di una FPU integrata che poteva eseguire fino a 4 operazioni in contemporanea. Questa nuova versione riscosse un notevole successo e venne adottata da molti costruttori aeronautici per l'avionica dei loro velivoli: quando la AMD decise di abbandonarne la produzione, per non essere costretta dalla FAA a tenere in produzione un chip solo per poche unità all'anno, cedette il progetto del 29050 alla Honeywell, che lo produce con la sigla HI-29KII e ne usa due in tandem nel suo pacchetto VIA (Versatile Integrated Avionics).

Aerei che montano un VIA basato su Am29050:

Famiglia Am29000

[modifica | modifica wikitesto]

Am290xx

Am29100. La Am29100 è una famiglia di microcontrollers e relativi chip accessori. La maggior parte di essi sono 'intelligenti' ed eseguono automaticamente alcune operazioni che normalmente dovrebbero essere svolte via software.

Am29200

Am29300. La serie Am29300 è un gruppo di microprocessori più evoluti, pensati per creare un calcolatore a 32 bit con pochi chip.

Am29400

Am29500. La serie Am29500 è progettata per l'uso come DSP.

Am29600

Am29700

Am29800. La famiglia Am29800 è usata per autotest o test di altri dispositivi a bordo.

Am29900

Altri progetti

[modifica | modifica wikitesto]

Collegamenti esterni

[modifica | modifica wikitesto]
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica