CDC Advanced Flexible Processor: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
typo |
|||
Riga 7:
==Advanced Flexible Processor ==
Prodotto nel 1979 era un sistema che utilizzava indirizzi a 16 bit e istruzioni raggruppate in parole di 200 bit. Ogni processore aveva internamente un bus crossbar 16x18, i processori erano interconessi tramite una rete ad anello. Ogni processore aveva 15 unità funzionali; due sommatori che potevano essere configurati per eseguire quattro somme a 8 bit per ciclo, due somme a 16 bit per ciclo o una somma a 32 bit per ciclo. Due unità logiche in grado di eseguire le sei funzioni logiche su due variabili. Un'unità di moltiplicazione a [[pipeline dati|pipeline]], un'unità contenente due banchi di registri, ogni banco ha 16 registri a 16 bit. Quattro unità di memoria dati, ogni memoria ha 1024 parole di 16 bit e 16 registri indice, i registri indice gestivano il post incremento e il post decremento dopo l'uso. Due memorie generiche da 1 Mbyte ognuna. Due porte di intercomunicazione per la rete ad anello. Ogni pacchetto inviato nell'anello conteneva 4 bit di controllo, 8 bit di indirizzo e 16 bit di dati, un bit di errore indicava che il pacchetto aveva effettuato il giro della rete più di una volta. Ogni unità è dotata di un registro di comparazione e di bit di stato da utilizzare per la gestione di salti condizionati. Il bus crossbar collegava le unità interne e poteva trasferire 16 bit per linea, il bus aveva sedici linee di ingresso, due linee erano assegnate per i risultati delle unità di moltiplicazione, due linee per i registri e una linea era condivisa tra le due porte di uscita del bus ad anello. Le 16 linee di uscita erano condivise tra le varie unità e quindi potevano esserci conflitti. Il processore utilizzava parole di 200 bit, 48 bit per il clock (il clock serviva anche per gestire la lettura da registri e il bus crossbar, difatti 18 bit erano usati per la gestione delle unità funzionali), 16 bit per memorizzare una costante da inviare a un'unità funzionale, quattro campi 16 bit per le istruzioni e 72 bit per gestire il bus crossbar. Ogni campo delle istruzioni a 16 bit conteneva un sottocampo a 4 bit che identifica l'unità funzionale e 12 bit che potevano indicare un registro dati o peteva essere utilizzato per definire un salto condizionato. Il sistema veniva programmato utilizzando l'assembler MICA che permetteva di gestire direttamente le unità di elaborazione. Il sistema funzionava a 46 MHz, le somme, le operazioni logiche e gli shift dei bit richiedevano due cicli di clock, le moltiplicazioni richiedevano tre cicli di clock. Il sistema era implementato con logica [[Emitter-coupled logic|ECL]] [[Large scale integration|LSI]], ogni pannello era un processore e ogni processore era formato da 500 chip da 200 000 transistor e 1100 chip da 100 000 transistor. Il sistema per dissipare il calore usava un'unità a raffreddamento liquido derivata dal [[CDC Cyber|CDC Cyber 200]].
== CYBERPLUS ==
|