Chip, CPU e schede varie - Miscellaneous interesting chips & cards (1)

Sorry You'll have to dig deep into the page since the items displayed here are uncategorized, e.g. not in order! Maybe I can help with a bunch of shortcuts to some interesting stuff in the page: Viatron System 21 "microprocessor" card, AT&T/WE BELLMAC-8 CPU board, Honeywell/Bull DPS/6000 CPU, HP 9000/827S CPU, HP FOCUS CPU in lucite, Hitachi GS/8600 mainframe CPU board, Kendall Square Research KSR-1 CPU chip, NEC SX-ACE supercomputer prototype CPU, HP PARISC NS-2 CPU card, Prime Computer dual MIPS R3000 CPU board, Pick-OS coprocessor card for DEC MicroVAXes, Solbourne 6/500 SPARC CPU card, Cray XT-4 Opteron node board, PC-AT/DOS emulator card for the  IBM PC-RT, Symbolics 3650 CPU board, 2 nice HP 3000 boards with PA-RISC PCX (CMOS26B) CPU, Intergraph 6400 Clipper C400 CPU Module, HP A600/A700/A900 CPU cards.

Pagina in costruzione

Questa pagina raccoglie materiali di diversa natura appartenenti alla mia collezione, tutti a mio avviso interessanti: microprocessori ed integrati particolari, schede, memorie ecc. Vedete anche pagina 2.

Dettaglio di scheda Olivetti, 1983, con CPU Rockwell PPS-4. Dovrebbe appartenere ad una macchina elettrocontabile "di uso generale" Olivetti A4, presentata nel 1975 e rimasta in produzione fino alla metà degli anni Ottanta (vedi). La A4, che ha avuto un buon successo commerciale, era una versione semplificata delle più potenti Olivetti A5 ed A7 e sostituiva, migliorandone le prestazioni, le vecchie Audit 4000 e 6000. A differenza delle A5/A7 era basata su un microprocessore, il PPS-4 appunto, standard e non su una CPU sviluppata in proprio da Olivetti. Il Rockwell PPS-4 appartiene alla prima generazione di microprocessori: al momento della sua introduzione, nel 1972 (vedi), esistevano sul mercato 3 soli altri processori: gli Intel 4004 ed 8008 e il National IMP-16. "PPS" è una sigla che sta per Parallel Processing System. Si tratta di una CPU a 4 bit fabbricata con processo metal-gate (contrariamente al 4004 ed 8008 prodotti invece con processo Si-gate) e funzionante normalmente a 200 oppure 256 kHz. Grazie all'esistenza di una variegata famiglia di chip di supporto, era possibile realizzare un sistema completo, ancorché minimo, con tre soli componenti: la CPU 10660, una ROM ed un generatore di clock 10706. Nel 1975 venne presentata un'evoluzione, chiamata PPS-4/2 e siglata 11660, che pur funzionando con un clock leggermente più lento, 200 kHz, consentiva di realizzare un sistema completo con 2 chip soltanto, dal momento che il generatore di clock era integrato nella CPU e a quest'ultima si affiancava un componente ad elevata integrazione contenente ROM, RAM e porte di I/O. Rockwell presentò successivamente una versione single-chip del PPS-4, denominata PPS-4/1, che integrava nella CPU piccole quantità di ROM e RAM oltre ad alcune porte di I/O, sufficienti nel complesso per realizzare un piccolo sistema completo. Nel 1976 il PPS-4 originale venne ridenominato 12660, e questa è la versione visibile qui. Sulla scheda si vedono 2 CPU 12660EA, un chip di I/O 10696, alcuni chip di ROM/RAM 10432.

Vedi: http://bitsavers.trailing-edge.com/pdf/rockwell/PPS-4/pps4-2_cpu.pdf

Vedi: http://www.cpushack.com/2013/05/06/cpu-of-the-day-rockwell-pps-41-the-other-4-bit-processor/

Anche: http://www.antiquetech.com/?page_id=796; http://www.retrocomputing.net/info/allan/eBook03.pdf.  

Scheda con CPU Rockwell PPS-4, 1972.

Particolare di una scheda con integrati Rockwell proveniente da una calcolatrice elettronica Victor 18-3441 (vedi); è probabile che si tratti di una versione della CPU PPS-4 adattata a questo tipo di impiego. Integrati simili si trovano anche nella calcolatrice scientifica Victor 1800 (vedi).

Scheda del 1980 con CPU Rockwell PPS-4/2; il microprocessore vero e proprio è l'integrato più a sinistra, siglato 11660.

Vedi: http://bitsavers.informatik.uni-stuttgart.de/pdf/rockwell/PPS-4/pps4-2_cpu.pdf

15.2.2015 - Una delle schede che formano la CPU del microcomputer Viatron System 21 (1970); questa contiene in particolare l'ALU, i registri di base, l'unità di controllo ed il microcodice (nelle 8 ROM allineate in alto), tutti realizzati con integrati PMOS LSI fabbricati da AMI e contenuti in caratteristici package ceramici DIP a 40 piedini più "larghi" dei DIP usuali. Il Viatron System 21 è stato uno dei primi sistemi "da ufficio" implementati con logica MOS LSI in luogo dei tradizionali componenti TTL SSI/MSI in uso all'epoca. Si noti che qui la parola "microprocessor" identifica una CPU formata da più integrati anziché un processore a chip singolo com'è normale oggi (il primo microprocessore a chip singolo commerciale è stato l'Intel 4004). Vedi: http://en.wikipedia.org/wiki/Viatron.

Recentemente Ken Shirriff ha pubblicato nel suo blog questo articolo riguardante i primi microprocessori, completo di un'interessante timeline, un paragrafo del quale è dedicato proprio al Viatron System 21 (ed è fra l'altro illustrato proprio dall'immagine della mia scheda!) Nell'articolo si ricorda giustamente che Viatron ha introdotto per prima nell'uso commerciale il termine "microprocessor", scritto senza spazio tra le due parole.

Scheda logica di controllo (processore e memoria ROM) di un "terminale intelligente" NCR (1973), implementata con integrati MOS LSI realizzata dalla stessa NCR.

Come detto sopra, l'Olivetti prima di adottare microprocessori standard nelle proprie macchine aveva sviluppato alcune CPU di propria concezione, basate sia su componenti SSI ed MSI come l'ALU 74181 utilizzata ad esempio nei personal computer P6060 e P6040 (nei quali la CPU vera e propria è suddivisa in due schede, o piastre logiche secondo la terminologia in uso all'epoca) sia su integrati più complessi per la realizzazione dei quali la Casa di Ivrea cercò l'aiuto dapprima di Motorola e successivamente della Mostek - non senza difficoltà a causa dei limitati volumi che la Olivetti avrebbe potuto garantire ai propri partner statunitensi. Qui si vede un esempio di CPU di macchina contabile della metà degli anni Settanta che dovrebbe essere il processore Micro 8, sviluppato nel 1974 con l'ausilio proprio della Mostek e pensato come CPU per sistemi di fascia bassa; esso è stato utilizzato nelle macchine elettrocontabili Olivetti A5 ed A7.

Vedi: http://www.storiaolivetti.it/percorso.asp?idPercorso=578

Due CPU degli anni Settanta: il 6800 (in alto), qui prodotto dalla second source AMi, ed il National Semiconductor PACE (IPC-16A/500D). Il 6800, anche noto come MC6800, venne presentato da Motorola nel 1974 a pochi mesi di distanza dall'Intel 8080 (Novembre contro Febbraio, anche se in realtà il 6800 venne annunciato, come parte del progetto Motorola M6800 Computer System, all'inizio del Marzo 1974). Con il rivale Intel condivide la caratteristica di essere stato utilizzato come CPU di alcuni dei primissimi home computer, anche se meno famosi di quelli basati sull'8080: ricordiamo il MITS Altair 680, l'SWTPC 6800, la console per videogiochi APF M1000 e svariate piattaforme arcade, oltre al personal computer professionale Tektronix Graphics Computing System 4051. Il 6800 ha la fama, indubbiamente meritata, di "microprocessore sfortunato": nonostante infatti punti di forza dell'architettura (semplicità e linearità del set di istruzioni, solo 72 con 4 modi di indirizzamento, presenza di 2 accumulatori, registro indice a 16 bit, presenza di istruzioni di salto condizionato, accesso veloce ai 256 byte più bassi della memoria RAM per sopperire alla mancanza di registri interni di uso generale, mappatura dell'I/O in memoria), una serie di circostanze e di infelici scelte commerciali lo ha relegato ad un ruolo assolutamente secondario rispetto ai più noti 8080/8085, Z80 e 6502 i quali furono dal canto loro i veri pilastri della "rivoluzione degli home computer" alla fine degli anni Settanta. Proprio quest'ultimo, infatti, ebbe un enorme successo anche al di fuori del campo prettamente informatico, tanto che le stime di vendita a tutto il 2007 variano tra i 5 ed i 10 miliardi (!) di pezzi. Il 6502 venne progettato dal medesimo gruppo di ingegneri che aveva già sviluppato il 6800 e che aveva in seguito lasciato Motorola per trasferirsi in blocco alla MOS Technology. L'architettura del 6800 possedeva alcune caratteristiche particolarmente apprezzate dai programmatori, prima tra tutte il registro indice a 16 bit associato ad una specifica modalità di indirizzamento che semplificava l'accesso a strutture di dati complesse, ed in secondo luogo le istruzioni di salto condizionato che consentivano il confronto tra interi con e senza segno. Questo aspetto diventò poi un tratto caratteristico di tutti i  microprocessori degli anni Ottanta nonché di molte CPU RISC. L'architettura ed il set di istruzioni del 6800 erano dichiaratamente ispirati a quelli del minicomputer DEC PDP-11. A differenza di altri microprocessori dell'epoca, che richiedevano tensioni di alimentazione multiple (ad esempio +5V, -5V e +12V come nel caso dell'8080), il 6800 necessitava di un'unica alimentazione +5V. Le prime versioni potevano funzionare a frequenze comprese tra 100 kHz ed 1 MHz, successivamente aumentati fino a 2 MHz.

All'inizio degli anni Settanta il costo per unità dei microprocessori iniziò a calare rapidamente: ciò, unitamente all'interesse mostrato per questo nuovo tipo di componente da parte di tutti i principali fabbricanti di circuiti integrati, contribuì al loro diffondersi in molte applicazioni ed all'emergere di nuove prospettive di utilizzo (home automation, informatica personale). Nacquero dapprima tutta una serie di microcomputer "in scatola di montaggio", che richiedevano quindi l'assemblaggio fisico da parte degli utilizzatori, in genere appassionati di elettronica i quali formarono la prima generazione di utenti dei personal computer. Un esempio tipico della categoria è l'Altair 8800. Nel giro di poco queste prime semplici macchine (cui va riconosciuto il merito di aver mostrato le enormi potenzialità dei microprocessori come CPU per computer) vennero sostituite da progetti più evoluti e di più facile utilizzo, in quanto venduti spesso già montati e soprattutto perché interfacciati all'utente non tramite il vecchio "pannello frontale" con LED ed interruttori, bensì attraverso terminali video, tastiere ed eventualmente modem. Alla fine degli anni Settanta si diffuse, dapprima negli Stati Uniti e poi in Europa, la convinzione che la vita degli anni Ottanta - sul posto di lavoro ma prima ancora tra le mura domestiche - sarebbe stata scandita e regolata in ogni suo aspetto dai computer. Moltissimi esperti di informatica pronosticavano che di lì a poco la domotica avrebbe rivoluzionato abitudini e stili di vita, ad esempio con i kitchen computer o "computer da cucina". Il 1977 può essere considerato l'anno in cui questa rivoluzione sembrava davvero alle porte: in quei mesi fu presentato il Commodore PET, primo personal all-in-one, fu fondata l'Apple Computer, vennero lanciati l'Atari Video Computer System e l'Atari 2600. Purtroppo la tecnologia dell'epoca, in primis per quanto riguarda l'hardware, non consentiva affatto la traduzione in pratica di queste previsioni, che avrebbero dovuto attendere almeno altri 10 anni per essere realizzate almeno in parte, fin quando cioè si ebbero a disposizione macchine sufficientemente potenti e software evoluti. La gran parte degli home computer acquistati alla fine degli anni Settanta ed all'inizio del decennio successivo vennero utilizzati principalmente come evolute console da gioco e solo da una piccola parte di utenti come veri e propri elaboratori. Altri, dopo l'iniziale entusiasmo, finirono i loro giorni dimenticati nelle soffitte. Il crash dell'industria dei videogiochi del 1983 contribuì alla transizione da questo tipo di sistemi ai Personal Computer veri e propri, il cui capostipite è in genere considerato l'IBM PC o IBM 5150 (presentato il 12 Agosto 1981), assieme ai quali si diffuse la piattaforma software Microsoft - prima DOS, poi Windows, favorita dall'enorme successo dei cosiddetti "cloni" ed "IBM compatibili" a loro volta resi possibili dal fatto che l'architettura di sistema del PC IBM era aperta e non proprietaria. Il passaggio ai PC decretò la fine degli home computer e della gran parte dei loro produttori, che all'inizio degli anni Novanta erano quasi tutti scomparsi dal mercato. 

Il National Semiconductor PACE (IPC-16A/500D), introdotto nel 1975, è noto soprattutto per essere stato il primo microprocessore commerciale single-chip a 16 bit ("PACE" è acronimo di Processing And Control Element). Questa CPU contiene 4 accumulatori di uso generale che fungono anche da registri; la sua architettura deriva da quella del più vecchio IMP-16, a sua volta ispirato al Data General NOVA. Il PACE era realizzato con processo PMOS; venne sostituito dopo poco tempo dall'INS8900 che era di fatto una sua implementazione con la più veloce tecnologia NMOS.

Scheda in formato Eurocard con CPU National Semiconductor SC-MP/2 (INS8060N o ISP-8A/600N, in basso a destra), 1979. Si tratta di una versione del microprocessore SC-MP, anche noto come "SCAMP", in sostanza un'abbreviazione delle parole "Simple and Cost-effective Micro Processor". Introdotto nell'Agosto del 1974 questo microprocessore era caratterizzato da un bus dati a 16 bit e da un bus indirizzi ad 8 bit; un particolare meccanismo di gestione del Program Counter consentiva di mappare in tutto 16 pagine di memoria, ciascuna ampia 4 KB. Vi erano 5 registri di uso generale più il Program Counter (PC), ma nessun registro con funzioni di Stack Pointer (SP). La CPU SC-MP può gestire il bus di sistema in modo tale da consentire con relativa facilità l'implementazione di configurazioni multi-processore, il che era una caratteristica avanzata per i tempi in cui essa venne introdotta. Una semplice UART integrata permetteva di ridurre il numero dei componenti necessari alla realizzazione di un sistema minimo completo. L'SC-MP è stato impiegato principalmente in applicazioni industriali (controlli numerici e similari) ed in alcuni progetti di microcomputer, il più famoso dei quali è l'MK-14 sviluppato da Science of Cambridge (poi Sinclair), introdotto nel 1977 e venduto in oltre 50.000 esemplari. La CPU SCAMP esiste in tre successive versioni: SC-MP/1 (INS8050, ISP-8A/500) funzionante a 1 MHz e fabbricata con processo PMOS; SC-MP/2 (INS8060, ISP-8A/600N) funzionante a 2 MHz (clock esterno a 4 MHz) e fabbricata con processo NMOS; SC-MP/3 (INS807x) funzionante a 2 MHz con 4 KB di ROM a bordo.

Scheda Eurocard con CPU Motorola MC6800L (1976) e generatore di clock a 1 MHz.

Negli anni Ottanta un PC dotato di hard disk era un autentico lusso al quale anche in ambito professionale pochi potevano ambire: la maggior parte degli utenti si accontentava di lavorare con uno o al più due unità floppy. Oltre al costo proibitivo dell'accoppiata disco + controller occorre tenere nella dovuta considerazione le esigenze dei programmi dell'epoca, molto diverse dalle attuali tanto in termini di RAM che di spazio su disco necessari al loro funzionamento (solitamente qualche decina di KB, o qualche centinaio negli altri casi). Un disco rigido della capacità di 10, 20 o per i più fortunati 40 MB era dunque indispensabile soltanto in pochi casi e quasi mai nel lavoro quotidiano al computer, che fosse in casa od in ufficio. La gran parte dei PC commercializzati fino al 1985 circa veniva offerta in configurazione base priva di hard disk, che era trattato alla stregua di un costoso optional e poteva comunque essere montato in un secondo momento, finanze permettendo. In quegli anni l'interfaccia di gran lunga più comune era la ST-506, anche nota come "MFM" dal tipo di codifica impiegata per la registrazione dei dati, simile a quella dei floppy a doppia densità, la quale prendeva il nome dall'omonima unità disco sviluppata da Shugart Associates, poi trasformatasi in Seagate, e conosciuta soprattutto per essere stata il primo disco commerciale nel formato 5,25''. La codifica MFM (Modified Frequency Modulation) era stata utilizzata per la prima volta dalla IBM nel disco 3330 del 1970. Introdotto nel 1980 l'hard disk ST-506 aveva una capacità, dopo la formattazione, di 6 MB (donde il nome); alla fine del 1981 ne venne prodotta una versione con 10 MB di capacità, chiamata ST-412. Questo disco venne scelto da IBM per il PC 5150, dando così modo alla Seagate di diventare il più grande fabbricante di hard disk degli anni Ottanta. Nel 1982 l'ST-412 venne ulteriormente aggiornato con l'introduzione della codifica RLL che consentì un incremento sia della densità di registrazione dei dati che della velocità di trasferimento. Ad esempio, con un controller RLL un disco da 10 MB poteva essere formattato per una capacità effettiva di circa 15 MB (guadagno del 50%). La scheda mostrata qui, per PC e PC XT (notare il bus a 8 bit), prodotta nel 1982, è stata tra i primi modelli di controller ST-506 compatibili, cioè non prodotti da IBM, disponibili nel nostro Paese. L'IBM da parte sua aveva in catalogo un proprio controller ST-506, in realtà prodotto per lei dalla Xebec (IBM 1816101), ed offriva 3 diversi dischi da 10 MB: l'ST-412, il WD-10 ed il WD-12. Nel 1982 era anche possibile acquistare controller IBM-compatibili prodotti dalla DTC, comunque piuttosto rari in Italia. Questo esemplare è basato sul microprocessore Signetics 8X305, una tra le numerose incarnazioni dell'8X300, microprocessore "quasi RISC" prodotto da Scientific Micro Systems a partire dal 1976 e successivamente da svariati altri fabbricanti. Progettato per essere innanzitutto un veloce microcontroller più che un autentico microprocessore "all purpose", l'8X300 possiede alcune caratteristiche inusuali, sia nell'architettura che nel set di istruzioni. Ricordiamo inoltre che esso è una CPU bipolare (TTL Schottky) e non MOS come la grande maggioranza dei microprocessori, il che nelle intenzioni del produttore avrebbe dovuto renderla più veloce dei concorrenti. Nei primi anni Ottanta l'8X300 fu popolare nei controller di floppy ed hard disk, probabilmente perché Signetics rilasciò nel 1979 una nota di applicazione molto dettagliata contenente il progetto proprio di un controller di floppy. Quest'ultimo poteva essere facilmente adattato, con l'aggiunta di pochi componenti, come controller di dischi rigidi MFM. La maggior parte delle schede basate su 8X300/8X305 ricalca infatti il medesimo schema, con gli stessi componenti essenziali. Questa scheda mi è stata donata da un avvocato udinese in pensione che l'aveva acquistata alla fine del 1982 assieme ad un disco da 10 MB da montare nell'IBM PC 5150 nuovo di zecca. A distanza di tanti anni ricorda perfettamente di aver pagato la coppia "ben più del computer", tanto da conservarla con cura in occasione della sostituzione della macchina con la (vana) speranza di poterla riutilizzare nel nuovo PC AT. A quei tempi, come certamente qualcuno di voi ricorderà, gli hard disk si chiamavano comunemente "Winchester", termine derivato dal disco IBM 3340 commercializzato a partire dal 1973. Con l'avvento dei dischi ESDI e poi SCSI comparvero controller più evoluti basati su chipset Adaptec, WDC, Archive e così via.

Vedi: http://www.redhill.net.au/d/i.php.

Il Rockwell R6500 (sopra, nella versione R6500/1EC del 1980 in package CERDIP-64 bianco) era un microcontroller NMOS a 8 bit basato sulla CPU 6502 con alcune estensioni (4 nuove istruzioni specifiche per la manipolazione di singoli bit, aritmetica sia binaria che decimale, 13 modalità di indirizzamento) alla quale si affiancano una ROM programmabile integrata da 3 oppure 4 KB a seconda delle versioni, una piccola RAM statica integrata da 192 byte, 32 o 56 linee di I/O TTL, due porte a 8 bit programmabili, una porta seriale con una velocità massima di trasferimento di 62,5 kbit/s, due contatori/temporizzatori programmabili a 16 bit ed il supporto per un massimo di 10 interrupt. L'R6500 poteva funzionare con un clock di 1 oppure 2 MHz. In basso si vede la versione R6511-AQC (1981) in package QUIP ceramico a 64 pin (qui oppure qui è visibile una versione in package QUIP-64 plastico).

Vedi: http://www.buchty.net/ensoniq/files/r6500.pdf; http://www.cpu-world.com/CPUs/6500/Rockwell-R6500-1EAC.html

Anche: http://intelmicroprocessors4u.blogspot.it/2009/04/chip-rockwell-r6511-microprocessor-chip.html

Il Western Electric, poi AT&T, WE 212E è una CPU BELLMAC-8 a 8 bit sviluppata dai Laboratori Bell anche nota come MAC-8. Introdotto nel 1978 questo microprocessore CMOS aveva un'architettura di sistema influenzata dalle caratteristiche del linguaggio C. E' stato impiegato prevalentemente come CPU nei centralini telefonici AT&T/Bell. Per il BELLMAC-8 esisteva un evoluto ambiente di progettazione hardware/software funzionante in ambiente Unix. Il BELLMAC-8 è stato il primo microprocessore sviluppato dai Laboratori Bell (vedi). Il chip contiene circa 7.000 transistor ed è fabbricato con processo a 5 micrometri; richiede una doppia alimentazione a +5 e -5 V e può funzionare ad una frequenza di clock massimale di 2 MHz. Il BELLMAC-8 è una CPU "register based" con 16 registri di uso generale, contenuti in apposite locazioni della RAM di sistema, la prima delle quali è puntata da un apposito registro indice interno. La maggior parte delle 40 istruzioni del set richiedono 4 cicli di clock per essere eseguite. Nel 1979 ne è stata prodotta una versione single-chip con RAM e ROM integrate, nota come BELLMAC-4.

"For telecommunications services, AT&T Bell Laboratories first developed the 8-bit microprocessor chip BELLMAC-8 in the mid-1970s using 5 micron CMOS technology with its debut in 1977, followed by 4-bit microcomputer chip BELLMAC-4 using 3.5 micron CMOS technology in late 1970s. In 1974, however, the federal government started putting more pressure on AT&T to divide into two independent companies -- a long-distance telecommunications service company and another consisting of seven regional Bell operating companies (Baby Bells). Before agreeing to the divestiture, which happened on Jan. 1, 1984, AT&T asked to get into computer business and was allowed to do so. As a result of the request, the development of the next generation microprocessor chip, initially named BELLMAC-80, became critically important. A strategic decision was made for the architecture of BELLMAC-80 to be 32-bit instead of 16-bit chip, which would have been more gradual and prevented major surprises in development. Also, AT&T wanted the chip ready by 1980, another reason to call it BELLMAC-80. Thus, a serious project was initiated in late 1970s" (da The AT&T BELLMAC-32 Microprocessor Development, articolo di Sun Mo Kang, IEEE Global History Network, vedi).

Vedi: http://www3.alcatel-lucent.com/bstj/vol57-1978/articles/bstj57-6-2251.pdf.

Anche (manualistica nel sito Bitsavers): http://bitsavers.trailing-edge.com/pdf/westernElectric/mac-8/

Anche: http://ferretronix.com/march/sbc/mactutor/

Anche: http://www.cpushack.com/2013/06/16/cpu-of-the-day-bell-labs-bellmac-8-aka-the-we212/ (articolo di CPUshack).

Microprocessore BELLMAC-8 (WE212B-13, in basso) montato su scheda AT&T del 1980, proveniente da un commutatore telefonico ESS. Sulla scheda ci sono anche un General Purpose Bus Interface Adapter TMS9914 (in sostanza un controller di interfaccia IEEE 488), in alto (vedi qui per la descrizione), un controller di interrupt AMD Am9519, un timer programmabile Intel D8253. A destra una fila di 8 DRAM da 16 Kbit WE39A.

Dettaglio di una scheda Honeywell-Bull con CPU AMD Am386SXL-33 (in alto a destra) e processore Harris RTX2001AGI-8 (in basso a sinistra), oltre ad alcuni gate array LSI Logic ed a due SRAM dual-ported IDT 7015. L'RTX-2001 è un membro della famiglia Harris RTX-2000; si tratta in sostanza di un processore progettato per l'esecuzione di programmi scritti in liguaggio Forth, molto diffuso nei sistemi embedded. Il Forth è un linguaggio "stack based" interpretato, strutturato, semplice ed efficiente, che definisce una sorta di macchina virtuale indipendente dall'hardware fisico sul quale viene eseguita. Nel corso degli anni Ottanta vennero prodotti più tipi di "stack machine" di questo genere; in particolare, l'architettura dell'RTX-2000 deriva da quella del più datato Novix NC4016 (1985), progettato dallo stesso ideatore del linguaggio Forth, Chuck Moore. L'RTX-2001 è realizzato con un gate array CMOS la cui complessità è di circa 2.000 gate.

Vedi: http://users.ece.cmu.edu/~koopman/stack.html; http://www.ultratechnology.com/chips.htm

ALU bitslice a 16 bit Cypress CY7C9101-30GC su scheda Cisco Systems (1990). Si tratta di un'unità aritmetico-logica (ALU) ad alta integrazione a 16 bit, funzionalmente equivalente all'AMD Am29101 e con essa compatibile a livello di pin: rimpiazza 4 bitslice AMD Am2901/2903 a 4 bit e può essere utilizzata tanto come ALU di una generica CPU che come controller di periferiche o ancora come microcontroller programmabile. Realizzata in tecnologia CMOS a 1,2 micron, ha un ciclo di 30 ns; contiene 16 registri a 16 bit, l'unità aritmetica vera e propria (la quale può eseguire 3 tipi di istruzioni aritmetiche e 5 di istruzioni logiche) e la relativa logica di controllo. Le istruzioni sono lunghe 9 bit. Più unità possono essere connesse in cascata per formare unità aritmetiche a 32, 48 e più bit.

CPU microprogrammata a 16 bit AMD Am29116, con microsequencer Am2910, su scheda DEC T1015 ("CI to BI bus controller"). L'Am29116 venne introdotta nel 1981, quando ancora non esisteva un vincitore definito della "guerra" tra le CPU a 16 bit (Intel 8086, Zilog Z8001, Motorola 68000) ed ottenne un eccellente succeso commerciale nelle applicazioni embedded (in primo luogo controller di periferiche) grazie soprattutto alla flessibilità derivante dal fatto che il microcodice era completamente definibile dall'utente, esattamente come accadeva nel caso delle più vetuste e lente ALU bitslice 2901/2903. Rispetto a queste la 29116, fabbricata con processo MOS a 2 micron, è un dispositivo più complesso, in quanto offre più istruzioni per la manipolazione dei bit, un barrel-shifted ed una RAM scratchpad da 32x16 bit integrati. Il set di istruzioni comprende 167 diversi codici (istruzioni aritmetiche, logiche, di comparazione e di salto). La 29116 rimane a tutti gli effetti un'ALU bitslice, anche se sono davvero pochissimi gli esempi di processori a 32 o più bit realizzati collegando più unità in cascata. Come la 2901/2903 necessita di logica esterna per il sequenziamento delle microistruzioni; tale logica può essere realizzata con PAL o gate array o, più comunemente, con un microsequencer quale il diffusissimo 2910. Originariamente l'Am29116 era fabbricata con processo NMOS e poteva funzionare ad una frequenza massima di 6 MHz; nel 1986 venne introdotta la versione "A", più veloce, prodotta invece con processo IMOX bipolare e funzionante a 12,5 MHz. Nel 1987 vennero commercializzate le versioni CMOS a 10 e 12,5 MHz (note come 29C116). Questo componente venne prodotto anche da Texas Instruments (SN74ACT29116, EPIC CMOS a 1 micron) e da Cypress (CY7C9116, che raggiungeva la frequenza di 35 MHz).

Vedi: http://bitsavers.informatik.uni-stuttgart.de/pdf/amd/_dataSheets/29116_dataSheet_Mar86.pdf

28.9.2015 - Scheda CPU Symbolics della famiglia 3600, proveniente da una macchina 3653 (1986). Symbolics Inc., attiva tra il 1980 e l'inizio degli anni Novanta, è stata il più noto produttore del particolare tipo di computer noti come "macchine Lisp" (Lisp machines), progettati in modo specifico per eseguire in maniera ottimale software scritti in linguaggio Lisp. Grazie ad appositi accorgimenti hardware riuscivano ad essere fino a 10 volte più veloci, in questo specifico compito, dei "normali" minicomputer della stessa epoca. Le macchine Lisp sono un esempio tipico di architettura orientata a linguaggi ad alto livello ("High Level Language-oriented Architecture", HLLA); storicamente parlando si possono altresì collocare tra le prime vere workstation commerciali, nonché tra i primi elaboratori per i quali sia stata adoperata questa specifica terminologia. Pur avendo avuto soltanto un ridotto successo commerciale (ne sono state vendute complessivamente circa 10.000 unità, considerando l'insieme dei vari fabbricanti), hanno rivestito negli anni Ottanta un ruolo chiave nello sviluppo di svariate tecnologie, tutte oggi di uso comune: la stampa laser, gli ambienti grafici a finestre, l'utilizzo del mouse, la grafica bitmap ad alta risoluzione, la grafica tridimensionale, le reti locali. Ricordiamo come curiosità che quello della Symbolics Inc. è stato il primo dominio Internet ".com" ad essere registrato, ancora nel 1985. Durante il decennio 1977-1987 svariati produttori hanno sviluppato macchine Lisp: oltre a Symbolics, si sono cimentate nel settore la Texas Instruments, la Xerox e la LMI (Lisp Machines Incorporated). Il termine "Lisp" si riferisce in realtà non ad un singolo linguaggio di programmazione, bensì ai membri di una variegata famiglia di linguaggi -più precisamente "dialetti"- sia compilati che interpretati, i quali condividono un insieme di caratteristiche comuni e le cui radici risalgono agli albori dell'informatica dal momento che il Lisp originale è stato creato nel lontano 1958 da John McCarthy come linguaggio formale per studiare le equazioni di ricorsione, influenzato in questo dal "calcolo lambda" di Alonzo Church. Va classificato dunque, assieme al Cobol, tra i più vecchi linguaggi di programmazione tuttora in uso. Il Lisp si basa sul concetto di programma inteso come funzione (in senso informatico). Il nome "Lisp", originariamente scritto "LISP", è l'acronimo di "LISt Processor" e sottolinea il fatto che le linked lists rappresentano una delle sue più importati strutture di dati. Alcuni suoi aspetti peculiari lo hanno reso fin da subito il linguaggio preferito dai ricercatori nel campo dell'intelligenza artificiale. Esso, inoltre, è stato il primo linguaggio di alto livello con caratteristiche avanzate. Si tratta, però, di un linguaggio simbolico -con una caratteristica e tipica notazione polacca prefissa- che per le sue stesse caratteristiche richiedeva risorse superiori, in termini sia di velocità operativa che di capacità di memoria, rispetto agli altri linguaggi tipici degli anni Sessanta/Settanta (Fortran, soprattutto). Ad esempio nei programmi Lisp le variabili sono definite in fase di esecuzione (runtime) anziché durante la compilazione, e questo comporta un maggior impegno della CPU durante la valutazione delle variabili stesse. Per questa ragione i programmatori del Laboratorio di Intelligenza Artificiale del MIT (AI Lab), guidati da Richard Greenblatt (considerato il padre della comunità hacker) e Thomas Knight, svilupparono nel 1973 il prototipo di una macchina in grado di eseguire in modo rapido, grazie ad alcune particolari caratteristiche hardware, i programmi Lisp senza richiedere l'impegno di risorse computazionali elevate. Essi si focalizzarono in particolare sull'efficienza del processo di garbage collection, cruciale nella programmazione in Lisp, che impegnava severamente i calcolatori di uso generale all'epoca disponibili (ad esempio il minicomputer DEC PDP-10). Dagli sforzi del MIT nacque un primo progetto di macchina Lisp a 24 bit denominato CONS (dal nome dell'operatore Lisp che funge da costruttore di una lista) o più confidenzialmente "macchina di Knight", interamente realizzata con logiche TTL a bassa scala di integrazione. CONS, nonostante la semplicità architetturale, risultava di circa un ordine di grandezza più veloce del PDP-10 nell'esecuzione di programmi Lisp complessi. Venne successivamente migliorato dando origine alla più potente macchina CADR (anche in questo caso il nome è quello di un'istruzione Lisp) la quale ebbe successo nel mondo accademico dell'epoca, tanto che il MIT riuscì a venderne parecchi esemplari ad altre Università americane e non solo. La popolarità raggiunta dalla CADR nell'ambito del mondo Lisp, unita alla relativa semplicità del suo hardware, attirò un cospicuo finanziamento pubblico della DARPA, la potente agenzia del Ministero della Difesa degli Stati Uniti che si occupa dello sviluppo di tecnologie innovative con possibili applicazioni militari. In quel periodo -stiamo parlando del 1977- le tematiche connesse in un modo o nell'altro all'intelligenza artificiale esercitavano ancora una forte attrattiva sia sui ricercatori che nelle industrie, ed il Lisp era il linguaggio preferito dagli esperti del settore. L'efficienza del progetto CADR e la previsione di poter ricevere ulteriori sovvenzioni spinse quindi un altro membro del Laboratorio, Russell Noftsker, a tentare la strada della sua trasformazione in un progetto commerciale. Dopo lunghe discussioni in seno al MIT Noftsker riuscì nell'intento di convincere Greenblatt ed un gruppo di programmatori a seguirlo nell'impresa, dalla quale nacque la Symbolics Inc. In seguito, a causa di divergenze sulle strategie commerciali da perseguire, lo stesso Greenblatt abbandonò la Symbolics per fondare una propria società, la Lisp Machines Inc. (LMI). Entrambe le aziende ebbero però vita breve: verso la fine degli anni Ottanta l'interesse dell'industria per l'intelligenza artificiale calò progressivamente fin quasi a scomparire del tutto, gli investitori si defilarono, il numero di acquirenti delle macchine Lisp crollò e così tanto la Symbolics quanto la LMI furono costrette a dichiarare fallimento. Il venir meno della spinta propulsiva alla ricerca, oggi noto come "AI winter" (inverno dell'Intelligenza Artificiale), non fu in effetti un evento subitaneo ma al contrario un lungo processo, durato almeno un decennio ed iniziato già alla fine degli anni Sessanta con l'insuccesso dei primi progetti di traduzione automatica di testi da una lingua all'altra (principalmente dal Russo all'Inglese, in epoca di Guerra fredda). La nascita dei primi grandi calcolatori elettronici aveva illuso molti esperti del settore circa la realizzabilità, in tempi relativamente brevi, di macchine in grado di imitare il ragionamento umano; col passare del tempo ci si rese conto invece che la strada da percorrere era molto più ardua del previsto, e non solo per un problema di insufficiente potenza di calcolo ma, innanzitutto, a causa delle lacune nella conoscenza dei dettagli del "funzionamento" della nostra mente. A partire dagli anni Novanta lo stesso termine "intelligenza artificiale" scomparve di fatto dall'informatica commerciale (con l'eccezione, forse, dei videogiochi), restando apparentemente relegato al campo della finzione (cinema, libri..) In realtà le ricerche in questo settore sono continuate senza interruzione, non solo in campo accademico, sia pure sotto altra veste ed altre denominazioni più "soft" e meno impegnative. La più nota e diffusa famiglia di macchine Lisp è stata indubbiamente la serie 3600, prodotta da Symbolics tra il 1983 ed il 1987. Ne sono stati venduti complessivamente circa 5.000 esemplari dei vari modelli. L'architettura del processore, a 36 bit con parole di memoria a 44 bit, è comune a tutti ed ispirata a quella della macchina CADR, benché ne riprenda solo pochi elementi hardware. Il set di istruzioni è quello di un'architettura basata su stack; vi sono 4.096 registri di uso generale, metà dei quali riservati al microcodice ed al sistema operativo, volutamente mantenuto semplice per non degradare le prestazioni della macchina. La memoria virtuale ha uno specifico supporto hardware così come, nei modelli più recenti, le operazioni in virgola mobile (tramite una coppia ALU/moltiplicatore della Weitek). I primi modelli montavano una CPU implementata con integrati TTL standard su più schede, operante alla frequenza di circa 5 MHz; nelle versioni più recenti invece, conosciute come "macchine G", la CPU era realizzata con gate array LSI CMOS ed occupava un'unica scheda. Le macchine 3600 potevano eseguire molte primitive Lisp in un singolo ciclo di clock.

La brochure del 1983 Symbolics 3600 Technical Summary, disponibile qui: http://www.textfiles.com/bitsavers/pdf/symbolics/3600technicalSummary_Feb83.pdf, contiene una dettagliata descrizione tecnica dell'architettura di questa famiglia di macchine.

Il sito: http://smbx.org/ è interamente dedicato alle macchine Lisp di Symbolics.

Vedi anche: http://www.donhopkins.com/drupal/node/109

Sull'evoluzione del linguaggio Lisp e delle macchine Lisp è stato pubblicato questo interessante articolo: http://www.dreamsongs.com/Files/HOPL2-Uncut.pdf. Sempre sulla storia del linguaggio Lisp vedi anche: http://www.cs.uml.edu/ecg/pub/uploads/OPLspr09/genesis-of-lisp-jmc.pdf, http://pt.withy.org/publications/LispM.pdf

Chip della CPU Intergraph Clipper C100, 1990/91. I processori Clipper si basavano su un'architettura RISC a 32 bit sviluppata all'inizio degli anni Ottanta e presentata ufficialmente nel 1986; inizialmente venivano fabbricati dalla Fairchild Semiconductor mentre successivamente sono stati realizzati direttamente da Intergraph. Nel corso degli anni sono stati prodotti 3 diversi modelli, via via più evoluti, della CPU Clipper: C100 (1986), C300 (1988) e C400/C4 (1990). L'architettura Clipper ha avuto un limitato successo ed è rimasta commercialmente limitata all'impiego in alcuni modelli di workstation CAD e server della stessa Intergraph e di pochissimi altri produttori su licenza (es. High Level Hardware). Si tratta in effetti di CPU multi-chip formate da un'unità di elaborazione contenente anche la FPU e da due unità ausiliarie denominate "CAMMU" contenenti la cache e la MMU, una per i dati e l'altra per le istruzioni, il tutto interconnesso tramite un apposito bus locale; nel caso del C400 i chip sono in tutto 4, alloggiati in un unico modulo ceramico. Il C400 è storicamente interessante in quanto è stato la prima CPU sia superscalare che super-pipelined.Pur essendo a tutti gli effetti dei processori RISC load/store, come PowerPC, SPARC e MIPS, i Clipper erano dotati di un set di istruzioni più potente ed esteso degli altri RISC, nel quale in particolare le istruzioni più complesse venivano "tradotte" in sequenze di istruzioni semplici all'interno della CPU, con l'aiuto di una ROM di microprogramma. Ciò consentiva di ottenere una maggior densità di codice rispetto alle architetture concorrenti. Nei primi modelli la CPU e la FPU erano realizzate con integrati separati. Le CPU Clipper sono dotate di 32 registri di uso generale (16 interi ed altrettanti in virgola mobile, questi ultimi sono solo 8 nei primi modelli) più tre registri dedicati (Program Counter, Processor Status Word, System Status Word). La CPU C100 contiene circa 132.000 transistor (contro 357.000 circa della CAMMU), funziona con un clock a 33 MHz ed è realizzata con processo CMOS a 2 micron, 2 livelli di metallizzazione in Alluminio. La velocità di elaborazione massima è di 33 MIPS. Originariamente era contenuta in package ceramico QFP-132 (vedi). Per un breve periodo di tempo si pensò al porting di Windows NT su piattaforma Clipper, ma il progetto venne rapidamente abbandonato. A tal proposito è interessante ricordare che quando Microsoft iniziò lo sviluppo di questo Windows NT, nel Novembre 1989 (all'epoca si pensava di chiamarlo OS/2 3.0 per sottolineare il legame con il sistema operativo IBM), la piattaforma hardware di riferimento era l'i860XR all'epoca da poco entrato in produzione; successivamente lo sviluppo fu trasferito dapprima su piattaforma MIPS (R3000) e solo successivamente, nel 1990, "approdò" sull'architettura Intel x86 alla quale Windows è oggi comunemente associato. Nel complesso Windows NT è stato rilasciato per 6 diverse piattaforme hardware: Intel i386, MIPS R3K/R4K, DEC Alpha, PowerPC, ARM ed Itanium.  

Vedi: http://www.eecs.berkeley.edu/Pubs/TechRpts/1987/CSD-87-329.pdf (architettura della CPU ed organizzazione del set di istruzioni, vedi anche questo PDF)

Vedi: http://www.eecs.berkeley.edu/Pubs/TechRpts/1986/CSD-86-289.pdf (architettura della CAMMU)

Processore Clipper C4: http://www.cpushack.com/2011/01/16/cpu-of-the-week-intergraph-clipper-c4-mcm/

5.9.2016 - Modulo CPU per server Intergraph 6400 con processore Clipper C4 (C400, 1993), suddiviso tra CPU (in alto a destra), FPU (a fianco), controller della cache ed MMU (CAMMU) MB87327B (in basso a sinistra) e chip TLB in basso a destra (MB87326A). La memoria cache si trova sull'altra faccia della scheda.

CPU Alpha 21264C a 1 GHz (EV68CB, 2000). Il 21264C è un'evoluzione della precedente CPU 21264A (EV67) del 1999, a sua volta derivata dalla 21264. Notare il particolare socket e le dimensioni del dissipatore di calore integrato. Rispetto a quest'ultima la versione A era fabbricata da Samsung con un processo CMOS più compatto, a 0,25 micron con metallizzazioni a 0,35 micron in alluminio. La versione C era invece fabbricata da IBM con processo CMOS a 0,18 micron e sette livelli di interconnessione con metallizzazioni ancora in rame. Questa CPU è contenuta in package flip-chip CLGA a 675 punti di contatto. Funziona a 1,7 Volt e contiene 15,5 milioni di transistor. Le cache L1 sono ancora ampie 64 KB come nel caso del 21264 "originale". "A 6-way out-of-order issue custom VLSI implementation of the Alpha architecture runs at >1 GHz. The 13.1/spl times/14.7 mm/sup 2/ die contains 15.2 M transistors and utilizes 0.18 /spl mu/m CMOS which includes 7 aluminum interconnect layers and flip-chip packaging. The design of this chip is highly leveraged from an existing 0.35 /spl mu/m, 6-way issue, 6 metal layer implementation with wire-bond packaging technology. The chip contains two on-chip cache arrays; a 64 kB 2-way set associative instruction cache and 64 kB 2-way set associative dual-ported data cache." (Solid-State Circuits Conference, 2000 - Digest of Technical Papers).

Due CPU Alpha molto diverse tra loro: a sinistra, un 21066-AA del 1994 e a destra un 21364 (EV7) del 2003. Il 21066, commercializzato come DECchip 21066 e denominato LCA (abbreviazione di Low-Cost Alpha, "Alpha a basso costo"), era una versione economica della CPU Alpha 21064 (EV4) introdotta nel Settembre 1993 e fabbricata in quantità a partire dal 1994. Questo processore era destinato, nei piani della DEC, ai sistemi embedded ed alle workstation NT di fascia bassa nel cui settore avrebbe dovuto far concorrenza ai sistemi basati su CPU Intel Pentium. Funzionava a 166 MHz (una sua versione a 100 MHz non venne mai commercializzata in grandi volumi) ed includeva un controller PCI, il controller della cache, un controller di memoria con supporto per l'ECC ed un semplice processore grafico. Questo maggior livello di integrazione rispetto all'Alpha 21064 era reso possibile dal processo di fabbricazione CMOS-4S a 0,675 micrometri; il 21066 conteneva in tutto circa 1,75 milioni di transistor. Il controller di memoria integrato era in grado di rilevare errori a 1, 2 e 4 bit e di correggere quelli a 1 solo bit. Il 21066 ha un bus di sistema a 64 bit, che riduce nel contempo tanto il numero di pin richiesti (287 contro i 431 del 21064) e dunque il costo del package CPGA, quanto le prestazioni - inferiori del 20% circa rispetto a quelle delle CPU 21064 a parità di frequenza operativa. La CPU 21066 non ha avuto l'atteso successo commerciale ed il suo utilizzo è rimasto limitato a poche macchine: i client Multia fabbricati dalla stessa DEC, alcune schede VME, le workstation Alpine di Aspen Systems, Pantera I di di Carrera Computers, Mach 1-166 di NekoTech ed il supercomputer a parallelismo massiccio Transalpha TA9000 di ParSys Computers. La versione 21066-A venne introdotta nell'Ottobre 1994 con la sigla LCA45, inizialmente alle frequenze di 100 e 233 MHz e successivamente anche a 266 MHz. Era basata sulla CPU 21064A rispetto alla quale non aveva le cache integrate da 16 KB per dati ed istruzioni. I processori 21066-A ed -AA integrano un sistema di gestione della potenza (power management) grazie al quale la frequenza operativa può essere regolata via software. Il chip contiene 1,8 milioni di transistor ed era fabbricato con processo CMOS-5 a 0,5 micron con tre livelli di interconnessione. Questa CPU, prodotta anche da Mitsubishi (M36066A), è stata impiegata in uno dei pochissimi notebook basati su architettura Alpha, il Tadpole ALPHAbook 1. Il 21364 o EV7, conosciuto col nome in codice "Marvel", venne presentato da Compaq nell'Ottobre 1998 in occasione del Microprocessor Forum. Si tratta in effetti di una CPU 21264 con una cache di secondo livello ("Scache") ampia 1,75 MB, associativa a 7 vie, un controller di memoria Rambus (RDRAM) ed un controller di rete per l'interconnessione diretta con altre CPU. Rispetto al processore 21264, la CPU EV7 incorpora altre modifiche e miglioramenti architetturali minori, ad esempio nella logica di previsione dei salti (branch prediction). A causa di una serie di ritardi produttivi le CPU 21364, originariamente attese sul mercato all'inizio del 2000, vennero commercializzate solamente a partire dai primi mesi del 2002. La frequenza di funzionamento era originariamente di 1,25 GHz, poi ridotta a 1 e 1,15 GHz nei server SMP che impiegavano questa CPU (AlphaServer ES47, ES80, GS1280). Il 21364 è stato in effetti l'ultima CPU della famiglia Alpha, poiché il suo successore 21464 non superò mai la fase di progettazione. Benché sia considerato un processore Alpha di quarta generazione, il 21364 è architetturalmente identico -a livello di core- al 21264 e precisamente alla versione EV68CB di quest'ultimo. Il controller di rete (router) integrato, denominato R-box, consente l'interconnessione con 127 altre CPU in due diverse topologie di rete, implementando uno schema NUMA (Non-Uniform Memory Access) a risorse distribuite. La R-box ha quattro porte di comunicazione a 39 linee di dati (32 bit + 7 bit per l'ECC). Una quinta porta è invece impiegata per l'I/O locale (ad esempio comunicazione, in una workstation, con il controller grafico AGP e col bus PCI tramite il controller ASIC Compaq IO7). La CPU 21364 integra due controller RDRAM funzionanti a 2/3 della frequenza del processore; ciascun controller (che si occupa anche del controllo di coerenza delle cache secondo il protocollo MESI) si connette a 5 canali di memoria che supportano delle ordinarie RIMM PC800 ECC. 4 di essi sono in effetti canali da e verso la memoria mentre il quinto serve ad ottenere, con la memoria stessa, la ridondanza (si tratta in pratica di uno schema di tipo RAID). Ogni canale di memoria ha una banda di 1,6 GB/s, per un totale di 12,8 GB/s per tutti e 8 i canali di una data CPU. I processori 21364 possono operare in modalità "lock-step" nelle macchine fault tolerant: ciò era un effetto della decisione presa da parte di Compaq di migrare la piattaforma di server Tandem Himalaya dall'architettura MIPS a quella Alpha. Complessivamente la CPU 21364, fabbricata da IBM con processo CMOS a 0,18 micron con 7 livelli di interconnessione in Rame, contiene 152 milioni di transistor (dei quali quasi 114 nelle cache). Il package è di tipo LGA con 1.443 punti di contatto. Il processore, alimentato a 1,65 Volt, assorbe circa 155 Watt alla frequenza di 1,25 GHz. L'esemplare visibile qui è siglato: IB21364-1300 VP7, HP USA 2003, G05J025H-PQ-70P1896. L'architettura Alpha è stata introdotta nel 1992 e deriva dalla precedente CPU PRISM a sua volta discendente da svariati altri progetti sviluppati da DEC periodo del suo massimo splendore alla metà degli anni Ottanta. Si è trattato senza dubbio di una tra le più innovative architetture di microprocessori mai commercializzate: ad esempio, il 21064 è stato il primo microprocessore CMOS in grado di competere, in termini di velocità operativa, con le CPU ECL dell'epoca; il 21164 è a sua volta stato il primo microprocessore ad avere "a bordo" una cache L2 di dimensioni significative. Il successore 21264 è stato il primo microprocessore con esecuzione fuori ordine funzionante a frequenze di clock elevate. Il 21364, infine, è stato il primo microprocessore ad avere un controller di memoria DDR integrato. Il 21464, mai entrato in produzione, sarebbe stato da parte sua il primo microprocessore ad implementare il multithreading simultaneo.

Microprocessore IBM POWER6. Questa CPU a 64 bit con architettura POWER, sviluppata nel 2005 e commercializzata a partire dal 2007, rientra nel cosiddetto "Progetto eCliPS" per la creazione di una piattaforma unificata per server e workstation IBM non-x86. Realizzato con processo SOI a 65 nm con 10 livelli di metallizzazione, il POWER6 è un processore dual-core che integra oltre 750 milioni di transistor e funziona a frequenze comprese tra 4 e 5 GHz. Tanto la cache L1 (64 + 64 KB per ciascun core, associativa a 8 vie) quanto la L2 (4 MB per core) sono integrate. Ciascun core ha due unità intere, due in virgola mobile, un'unità AltiVec ed è in grado di gestire il multithreading simultaneo (SMT) a 2 vie. La cache L2 è "semicondivisa", nel senso che ciascun core ha la propria cache ma tutti i core possono accedere alla cache degli altri attraverso un bus veloce da 300 GB/s. La CPU ha una cache di terzo livello (L3) collocata su un chip esterno, ampia 36 MB e collegata al processore da un bus a 80 GB/s. Il POWER6 può essere collegato ad altre 31 CPU identiche tramite due collegamenti a 50 GB/s. Le prestazioni dichiarate da IBM sono di 22,3 GFLOPS nel test SPECfp2006.

Il microprocessore POWER6 è stato presentato ufficialmente da IBM al Fall Microprocessor Forum 2006; maggiori dettagli riguardo l'architettura (nell'immagine qui sopra uno schema, tratto da questa pagina) e l'implementazione sono stati rivelati nel successivo ISSCC 2007. Il processo di fabbricazione impiegato da IBM consente un notevole risparmio di superficie rispetto a quello a suo tempo usato per il POWER5; ad esempio, le celle SRAM ad alte prestazioni sono ampie solo 0,65 micron, il che consente l'integrazione di ampie cache ad elevata velocità.

As the diagram indicates, the POWER6 has incredible bandwidth to feed the processors. At 5GHz, each MPU has 300GB/s of bandwidth, roughly 80GB/s from the L3 cache, 75GB/s from the memory, 80GB/s across the intra-MCM busses, 50GB/s from remote processors, and 20GB/s from local I/O. Generally, the POWER6 doubles the bandwidth of POWER5+ systems, due to frequency increases and adding some new interfaces. The non-core functions in the POWER6 all run at one half core frequency, in the 2-2.5GHz range, compared to roughly 0.8-1.15GHz for various POWER5+ processors. The POWER6 also hosts an additional memory controller and intra-MCM fabric link, and increases the I/O frequency from one third to one half the CPU frequency. Each memory controller connects to memory using the third generation of IBM’s synchronous memory interface. Like Fully Buffered DIMMs, these SMI chips enable larger memory configurations and different memory types (typically older DDR variants for capacity or newer DDR2/3 for bandwidth). The memory controllers and L3 cache all have separate address and data busses (address busses are not shown in the above image), while the interconnect fabric and GX+ I/O bus multiplex the addressing and data.

L'immagine qui sopra raffigura l'organizzazione della CPU POWER6; in questa pagina è visibile una versione ad elevata risoluzione. L'architettura di sistema delle macchine POWER6 è più lineare ed "elegante" rispetto a quella dei multiprocessori POWER5: nei server di maggiori dimensioni basati su quest'ultima CPU, era infatti presente una coppia di anelli (ring) unidirezionali per il traffico tra i vari moduli CPU (MCM). Il POWER6 utilizza invece un'architettura a due livelli (two-tier) ed un nuovo protocollo di coerenza; ciascun MCM forma una singola cella, e fino ad 8 celle possono essere collegate a formare una rete "fully connected", nella quale cioè ogni nodo è connesso a tutti gli altri, il che permette maggiori velocità di comunicazioni e latenze minori. La microarchitettura del POWER6 discende da quella del POWER4 (presentata nel 2000). Rispetto al POWER5, la pipeline che pure ha lo stesso numero di stadi è stata riorganizzata per velocizzare l'esecuzione fuori sequenza (out of order). Il risultato è una CPU con prestazioni circa doppie, a parità di frequenze, rispetto a quelle del POWER5. Come i predecessori, anche il POWER6 segue è dotato della capacità di trattare direttamente in hardware i dati BCD (Binary Coded Decimal), cosa che usualmente nei processori RISC è affidata a librerie software od a specifiche funzioni del sistema operativo. 

Vedi: http://it.wikipedia.org/wiki/POWER6.

Vedi: http://arstechnica.com/gadgets/2007/05/ibms-power6-flies-the-coop-at-4-7ghz/

Vedi: http://maben.homeip.net/static/computers/aix/architecture/POWER6/IBM%20Power6%20microarchitecture.pdf

Vedi: http://www-inst.eecs.berkeley.edu/~cs150/sp10/Collections/Papers/stolt-power6-jsscc200801.pdf

Anche: http://www-07.ibm.com/servers/eserver/includes/content/iseries/pdf/IBM_System_i_AP_Magazine_Q307.pdf

Anche: http://www.atomicmpc.com.au/Tools/Print.aspx?CIID=127346

CPU POWER6 in diverso package ceramico, contenente 1 CPU e 2 chip di cache. E' classificata come POWER6 in questa pagina.

13.5.2015 - CPU IBM POWER 5, montata assieme ad un chip di cache L3 da 36 MB su un modulo detto "DCM" (Dual Chip Module). Il POWER 5, presentato da IBM nel 2003 ed in produzione dal 2004, rappresenta un notevole miglioramento del fortunato predecessore POWER 4 rispetto al quale introduce il multithreading simultaneo (SMT) ed un controller di memoria integrato nella CPU che supporta fino a 64 GB di RAM ECC DDR oppure DDR2. Si tratta di un processore dual-core, in cui ciascun core può eseguire 1 thread fisico e 2 thread logici. La cache di primo livello è ampia 32+32 KB; quella di secondo livello, anch'essa on-chip, è ampia invece 1,875 MB. Le frequenze di clock, a seconda del modello, sono comprese tra 1,5 e 2,3 GHz. La CPU POWER 5 contiene 275 milioni di transistor ed è fabbricata con processo CMOS SOI a 0,13 micron con 8 livelli di interconnessioni in Rame. Questo processore era disponibile in due diversi package: DCM con 1 CPU ed 1 chip di cache L3 oppure MCM con 4 CPU e 4 cache (visibile in questa pagina del sito). Il POWER5+ è stato invece prodotto anche come QCM con 2 CPU e 2 cache (qui sotto), destinato all'applicazione in server di fascia intermedia.

Vedi: http://en.wikipedia.org/wiki/POWER5

17.6.2015 - Processore  IBM POWER 5+ montato in modulo QCM ceramico (Quad-Chip Module), con 2 CPU ed altrettanti chip di cache L3: può eseguire simultaneamente 4 thread fisici, due per CPU, ovvero 8 thread logici. Il POWER 5+ è un miglioramento del predecessore POWER 5, col quale condivide la medesima architettura interna, introdotto nell'Ottobre 2005. Veniva fabbricato con processo a 90 nm che consentiva una minor area del chip, pari a 243 contro 389 millimetri quadrati: la differenza può essere notata mettendo a confronto le immagini delle due CPU ed in particolare paragonando la dimensione del chip della CPU (di forma quadrata) con quella della cache, rettangolare e rimasta identica nel passaggio da un modello all'altro. Inizialmente il POWER 5+ fu prodotto in una serie di modelli funzionanti alle medesime frequenze del POWER 5, cioè da 1,5 a 1,9 GHz; nel 2006 la frequenza operativa massima venne incrementata fino a 2,3 GHz. La versione DCM è contenuta in un package in tutto simile a quello del corrispondente modello del POWER 5; la versione QCM ha da parte sua una frequenza massima di funzionamento limitata a 1,8 GHz. 

Vedi: http://www.redbooks.ibm.com/redpapers/pdfs/redp4150.pdf

CPU Sun UltraSPARC T1 (2006) a 1,2 GHz, fabbricato da Fujitsu, in package LGA. Si tratta di un processore con architettura SPARC V9, contenente 8 core a 64 bit; introdotto nel 2005, è progettato per l'impiego in server a basso consumo (assorbe circa 70 W) come alternativa alle configurazioni SMP a 4/8 vie basate su UltraSPARC III+ e IV. Il T1, noto col nome in codice "Niagara", è stato la prima CPU SPARC multicore e multithread; ciascun core può eseguire fino a 4 thread contemporaneamente, per un massimo dunque di 32 thread per CPU. I core del T1 possono essere "partizionati", cioè assegnati a compiti (processi) specifici. Contrariamente ad altre implementazioni dell'UltraSPARC il T1 è stato progettato e realizzato con l'obiettivo principale del multithreading piuttosto che con quello della velocità operativa. I suoi core, infatti, sono semplici e non supportano l'esecuzione fuori ordine, né sono dotati di cache particolarmente ampie. La CPU T1 è dunque particolarmente adatta all'impiego in server web e di database. Uno dei principali limiti architetturali dell'UltraSPARC T1, a parte la dimensione delle cache, è rappresentato dall'unica FPU che viene "condivisa" da tutti ed 8 i core del processore; questo limite è stato superato con il T2, che è dotato di un'unità in virgola mobile per ciascun core. Il T1 può essere utilizzato solamente in configurazioni a singola CPU, il che limita fortemente la scalabilità dei sistemi che ne fanno uso.

Una cache ampia riduce il numero di accessi alla RAM e migliora le prestazioni della CPU. Le prestazioni dei singoli thread dipendono a loro volta dalle dimensioni dimensioni della cache, in quanto la mancanza di un dato in quest'ultima comporta una notevole penalizzazione, dal momento che la memoria centrale è più lenta della cache. Il T1 è in grado di contenere l'impatto negativo dell'accesso alla RAM di sistema in caso di cache miss grazie ad un approccio multithreaded. Quando un core subisce un cache miss, cioè non trova i dati necessari nella cache, il processore commuta l'esecuzione su un altro thread disponibile. In questo modo benché i singoli thread siano rallentati dagli accessi alla memoria RAM le prestazioni complessive del sistema rimangono elevate perché il processore esegue in contemporanea numerosi thread. Ogni core può tenere in memoria fino a quattro thread sebbene ne possa eseguire solo uno alla volta. Nelle applicazioni commerciali (Java, database, web server) questo approccio si è dimostrato efficace. Si tratta in effetti di applicazioni che traggono maggior beneficio dalla possibilità della CPU di mantenere gestire più thread piuttosto che dalla potenza di calcolo del singolo core. Ogni core del processore T1 offre una potenza di calcolo superiore a quella di un processore UltraSPARC III. Nell'esecuzione di più thread che non richiedono calcoli in virgola mobile, i core del T1 forniscono prestazioni superiori a quelli degli altri processori SPARC disponibili al momento dell'introduzione nel marcato di questa CPU. "Quando venne presentato nel dicembre 2005 un server basato su un singolo processore a 8 core, 32 thread a 1,2 Ghz forniva prestazioni simili a quelle fornite da un server basato su 2 processori IBM POWER5 a quattro core e otto thread con frequenza di 1,9 Ghz. Le prestazioni erano paragonabili a quelle generate anche da un server basato su quattro Intel Xeon Paxville MP con otto core e 16 thread a 3.0 Ghz e forniva prestazioni superiori a quelle di un server basato su quattro Intel Itanium con quattro core e quattro thread a 1.6 Ghz." (vedi: http://it.wikipedia.org/wiki/UltraSPARC_T1). 

Vedi: http://en.wikipedia.org/wiki/UltraSPARC_T1

Anche: http://ogun.stanford.edu/~kunle/publications/niagra_micro.pdf

Anche: http://ogun.stanford.edu/~kunle/publications/niagra_spectrum.pdf

  

Il NEC MR-4401A-200 (anche noto come MR4401) è un modulo multichip contenente una CPU MIPS R4400 a 200 MHz (originariamente a 150) e 10 chip SRAM che implementano una cache L2 ECC ampia 1 MB. Esso è compatibile con i processori MIPS della serie R4x00PC; è fabbricato con processo CMOS a 0,35 μm e 4 livelli di metallizzazione. E' stato utilizzato, ad esempio, nelle workstation MIPS NEC RISCstation 4400 e nei server SMP NEC RISCserver. Secondo quanto riportato in un post di CPU World, l'MR4401 è stato anche impiegato nel calcolatore parallelo NEC Cenju 3 (vedi).

Vedi: http://museum.ipsj.or.jp/en/computer/super/0022.html (architettura del supercomputer NEC Cenju 3).

Anche: http://www.math.vt.edu/people/sturler/publications/Speedup_ArchProgrCenju3_1994.pdf.

CPU Ross HyperSPARC (1994). Introdotto nel 1993 da Ross Technology, l'HyperSPARC è un microprocessore superscalare a 2 vie che implementa l'ISA SPARC V8. Venne commercializzato in concorrenza con il SuperSPARC (TMS390) di Texas Instruments. La CPU HyperSPARC contiene 4 unità di esecuzione: 1 per numeri interi (integer), 1 in virgola mobile (FPU), 1 unità load/store ed 1 unità di gestione dei salti (branch control unit). Vi è una cache istruzioni on-chip ampia 8 KB, dalla quale vengono prelevate ed eseguite 2 istruzioni per ciascun ciclo di clock. L'HyperSPARC dispone di 136 registri interni raggruppati in 8 blocchi (register windows), conformemente alle specifiche SPARC V8. L'unità integer è formata da una pipeline a 4 stadi. Le istruzioni di moltiplicazione e divisione intere richiedono rispettivamente 18 e 37 cicli di clock. La CPU HyperSPARC originale contiene 1,2 milioni di transistor ed è realizzata con processo CMOS a 0,65 micron, 2 livelli di metallizzazione. Le versioni successive, fabbricate da Fujitsu (dopo l'acquisizione da parte di quest'ultima di Ross e Cypress Semiconductor Corp.) e NEC, contengono un maggior numero di transistor e sono fabbricate con processi CMOS più evoluti. Il modulo multichip visibile qui contiene 1 chip RT620 (CPU, al centro in basso), 1 chip RT626 (CMTU: controller della cache, MMU e tag unit, al centro in alto) e 8 chip di cache (CDU) RT628, per una capacità totale di 1 MB di cache L2 (4 a sinistra ed altrettanti a destra). Questa versione con 1 MB di cache L2 è dedicata all'impiego nei server SMP; le versioni con 256 o 512 KB invece sono contenute in package (sempre multichip) più piccoli e vengono in genere impiegate nelle workstation (es. SPARCstation 10 e 20) e nei server entry-level. Una breve descrizione è disponibile qui: http://www.cilinder.be/docs/ross/rtb104.pdf. L'HyperSPARC è stato prodotto nelle versioni a 90, 100, 125, 150, 180 e 200 MHz. Nel corso degli anni sono stati prodotti moduli MBUS per SPARCstation e server contenenti 1, 2 oppure 4 CPU HyperSPARC.

"HyperSPARC is designed as a tightly coupled chip set and implemented as a SPARC MBus module using Multi-Die Packaging (MDP). Each hyperSPARC CPU supports either 256, 512, or 1024 Kbytes of second-level cache, and each module contains one or two CPUs. The chip set is comprised of the RT620 Central Processing Unit (CPU), the RT625 or RT626 Cache Controller, Memory Management, and Tag Unit (CMTU), and four RT627 Cache Data Units (CDUs) for 256 Kbytes of second-level cache, four RT628 CDUs for 512 Kbytes of second-level cache, or eight RT628 CDUs for 1 Mbyte second-level cache. The chip set can be configured for uniprocessing (Level 1 MBus) or multiprocessing (Level 2 MBus). The RT620 is the primary processing unit in hyperSPARC. This chip is comprised of an integer unit, a floating-point unit, and an 8-Kbyte, two-way, set-associative instruction cache. The integer unit contains the ALU and a separate Load/Store data path, constituting two of the chip’s four execution units. The RT620 also includes the floating-point unit and a branch/call unit (for processing control transfer instructions). Two instructions are fetched every clock cycle. In general, as long as these two instructions require different execution units and have no data dependencies, they can be launched simultaneously. (Itisalsopossible to fetch and dispatch two floating-point adds or two floating-point multiplies at a time.) The RT620 contains two register files: 136 integer registers configured as 8 register windows, and 32 separate floating-point registers in the floating-point unit. HyperSPARC’s second-level cache is built around the RT625 or RT626 CMTU, a combined cache controller and memory management unit that supports shared-memory and symmetric multiprocessing. The RT625 cache controller portion supports 256 Kbytes of cache, made up of four RT627 CDUs. The RT626 CMTU supports 512 Kbytes or 1 Megabyte of cache (four or eight RT628 CDUs, respectively). The cache is direct-mapped with 4K tags (RT625) or 16K tags (RT626). The cache is physically tagged and virtually indexed so that the CMTU’s cache coherency logic can quickly determine snoop hits and misses without stalling the RT620's access to the cache. Both copy-back and write-through caching modes are supported. The MMU is a SPARC Reference MMU with a 64-entry,fullyset-associativeTranslation Lookaside Buffer (TLB) that supports 4096 contexts. The RT625 contains a read buffer (32 bytes deep) and a write buffer (64 bytes deep) for buffering the 32-byte cache lines in and out of the second-level cache. It also contains synchronization logic for interfacing the virtual Intra-Module Bus (IMB) to the SPARC MBus for asynchronous operation (see Figure 3). The RT627 is a 16K x 32 SRAM that is custom-designed for hyperSPARC’s cache requirements (256-Kbyte configuration). It is organized as four arrays of 16-Kbyte static memory with byte-write logic, registered inputs, and data-in and data-out latches. The RT628, used in 512-Kbyte and 1-Mbyte cache versions, is organized as four arrays of 32 Kbtyes each. The RT627 and RT628 provide a zero-wait-state cache to the CPU with no pipeline penalty (i.e., stalls) for loads and stores that hit the cache. The RT627 is designed specifically for hyperSPARC, so it doesn’t require glue logic for interfacing to the RT620 (CPU) and the RT625 (CMTU). The RT628 requires no glue logic to interface to the RT620 and RT626. The microarchitecture of hyperSPARC boasts classic RISC and superscalar features for improving instruction processing throughput. hyperSPARC also employs architectural features that differentiate it from other next-generation microprocessor designs." (vedi: http://www.cilinder.be/docs/ross/hyper.pdf). 

Vedi: http://www.softpanorama.org/Hardware/Sun/history_of_sparc.shtml (sulla storia dell'architettura SPARC).

11.2.2016 - Modulo multichip contenente un processore ROSS HyperSPARC 620C.

Vedi: http://www.abc-cpu.com/index.php/chip-collection/ross/hypersparc/ross-hypersparc-rt620-2-4409

Anche: https://www.researchgate.net/publication/3790981_A_High-Performance_Second-Generation_Sparc_Mcm

Per una descrizione della CPU vedi questo PDF: http://www.cilinder.be/docs/ross/hyper.pdf, oppure: http://www.cilinder.be/docs/ross/rtb104.pdf

Anche: http://www.cilinder.be/docs/ross/rt6224a.pdf

Del modulo multichip della CPU HyperSPARC si parla anche qui: http://smithsonianchips.si.edu/ice/cd/PKG_BK/CHAPT_12.PDF

30.10.2014 - Il PowerPC MCM di IBM è un modulo multichip ceramico che contiene una CPU PowerPC 603E a 100 MHz, la cache di secondo livello, un chip di interfaccia con la memoria ed un generatore di clock. E' contenuto in package C-GA (Columnar Grid Array) con dissipatore di calore integrato.

Foto di un PowerPC MCM "aperto", senza il dissipatore di calore, che mostra i 9 chip contenuti all'interno. Essi sono in particolare la CPU PPC603E a 100 MHz con bus a 66 MHz (in basso al centro), due chip di RAM (in alto), la cache L2 da 512 KB col relativo tag-chip, un buffer dati/indirizzi, un generatore di clock, il bridge/controller 664 tra CPU, memoria e bus PCI (IBM27-82664) ed il buffer 663 (IBM27-82663). CPU, bridge, buffer e cache sono fabbricati da IBM; il generatore di clock (MPC970) è fabbricato invece da Motorola, la tag-RAM da IDT (IDT1216) ed il buffer dati/indirizzi da Texas Instruments (SCBS143F). La foto è tratta dalla pagina Ebay di chi mi ha venduto l'esemplare in mio possesso.

Vedi: http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/powerpc/_dataBooks/G5220297-00_Odyssey_MCM_Feb97.pdf

Due controller basati, rispettivamente, su architettura MIPS (a sinistra) e SPARC (a destra). L'LSI Logic LR33310 Self-Embedding Processor è un processore CMOS ad alta integrazione a 32 bit, introdotto nel 1993, compatibile con il set di istruzioni del MIPS R3000. Nel corso degli anni è stato utilizzato soprattutto come controller di periferiche complesse (stampanti laser, apparecchiature di rete ecc.) Il Fujitsu MB86932-40 è un membro della famiglia di microcontroller SPARC MB930. Il set di istruzioni segue le specifiche SPARC V8. E' anch'esso un processore ad alta integrazione, con a bordo cache separate per istruzioni (8K) e dati (2K) e numerose periferiche di sistema (controller di DMA, di I/O, temporizzatori, porta seriale); alla frequenza di 40 MHz offre una prestazione massima di 40 MIPS e media di 37 MIPS. Entrambi questi processori contengono solo l'hardware per l'elaborazione dei numeri interi; le operazioni in virgola mobile possono essere emulate via software.

CPU Intel Itanium 2 - Serie 9000 "Montecito" a 1,6 GHz (2006). Si tratta di un processore dual-core multithreaded (due thread non simultanei per ciascun core, secondo lo schema TMT), con 256 KB di cache dati ed 1 MB di cache istruzioni, bus a 533 MHz, fabbricato con processo a 90 nanometri. Ciascun core ha 16 KB di cache dati e 16 KB di cache istruzioni di primo livello (L1), più 256 KB di dati ed 1 MB di istruzioni come cache L2, oltre a 12 MB di cache L3 unificata (per un totale quindi di 24 MB per processore). Il chip (dimensioni 27,72 per 21,55 millimetri) contiene in tutto 1,72 miliardi di transistor, dei quali 1,55 miliardi sono "impegnati" dalla cache di terzo livello.

Vista generale del die dell'Itanium 2 "Montecito".

Organizzazione schematica della CPU Itanium 2 9000 (dall'Intel Developer Forum).

Engineering sample di processore Intel Itanium 2 9310 (2007) con core "Tukwila". Il 9310 è il modello più economico e meno potente della serie 9300, con 2 core, 4 thread e 10 MB di cache L3. E' una CPU progettata per applicazioni a basso consumo energetico, soprattutto server blade. I processori Itanium 9300 sono contenuti in package LGA-1248, che sostituisce il package PAC611 utilizzato nella serie 9100; rispetto ai predecessori, essi sono dotati delle funzionalità QuickPath Interconnect (QPI), una connessione punto-a-punto full duplex tra processori, memoria ed I/O (introdotta da Intel nel 2008) che sostituisce il Front Side Bus nei sistemi Xeon, Itanium e Core i7 di fascia alta. QPI è una parte dell'architettura QuickPath, sviluppata da Intel a partire dal 2004 per competere con l'architettura AMD Hyper Transport (presentata nel 2003). Nello sviluppo dell'architettura QuickPath hanno avuto un ruolo importante ex membri del team di progettazione dei processori Alpha, passati ad Intel dopo la sua acquisizione da parte di quest'ultima alla fine del 2003. L'architettura QuickPath connette uno o più processori ad uno o più hub di I/O, formando così una sorta di rete locale all'interno del server (o della scheda madre) e permettendo a ciascun elemento di tale rete di avere accesso a tutti gli altri. QuickPath prevede che tutti i componenti connessi siano dotati di un proprio controller di memoria locale e consente la realizzazione, con relativa semplicità, di sistemi NUMA (Non Uniform Memory Architecture) anche molto complessi. Le specifiche QPI prevedono un insieme di protocolli di comunicazione che formano un'architettura a 5 livelli (layer), alcuni dei quali (in particolare il layer di instradamento - routing e quello di trasporto) non sono presenti o sono presenti in maniera semplificata nei sistemi più piccoli (Core i7, Xeon DP). QPI opera a frequenze di clock comprese, a seconda delle possibilità dei componenti connessi, tra 2,4 e 4,8 GHz; la velocità massima teorica di trasferimento a 2,4 GHz è di 19,2 GB/s. Una connessione QPI è formata da due data link punto-a-punto a 20 bit, uno per ciascuna direzione (full duplex), più una coppia di linee di clock, per un totale di 42 linee totali. Ciascun segnale è "portato" da una coppia differenziale, per cui la connessione QPI è fisicamente formata da 84 pin. Le 20 linee dati sono a loro volta suddivise n 4 "quadranti" da 5 linee ciascuno. Il blocco-dati di base che viene trasferito è ampio 80 bit e viene detto "flit"; il suo trasferimento avviene in 2 cicli di clock, ognuno dei quali consente il trasferimento di due gruppi di 20 bit. Il "flit" contiene 64 bit di dati, 8 bit per l'ECC ed 8 bit per un campo particolare detto "link layer header". Ciascun "quadrante" può essere utilizzato indipendentemente dagli altri; nelle applicazioni ove sia richiesta un'elevata affidabilità, le connessioni QPI possono funzionare in modalità "degraded" (degradata, o ridotta): se una o più delle 20 linee di collegamento non funzionano, l'interfaccia può comunque operare utilizzando 10+1 o anche 5+1 linee (10 o 5 bit + 1 linea di clock), eventualmente riassegnando la funzione di linea di clock ad una delle linee dati ancora disponibili. L'implementazione originaria delle specifiche QPI introdotta con i processori Xeon "Nehalem" impiegava 4 quadranti per una velocità di trasferimento di 26,5 GB/s, valore esattamente doppio rispetto al massimo raggiungibile dal FSB a 1600 MHz del chipset X48.

Processore HP/Intel Itanium 2 MX2 a 1,1 GHz (conosciuto anche come "Hondo", HP A6868-80107) per server HP Integrity RX4640/RX7620, 2003. Si tratta di un particolare modulo che ingloba due CPU Itanium 2 con core Madison ed una cache di quarto livello da 32 MB (all'estrema destra) col relativo controller: si tratta dell'unico modello di Itanium con 4 livelli di cache. Sfruttando lo spazio normalmente occupato dal regolatore di tensione, che in questo caso è sovrapposto anziché affiancato al processore come negli Itanium 2 "normali", HP ha potuto concentrare due CPU nello spazio di una sola. Questi moduli venivano commercializzati come upgrade per i server di fascia alta della famiglia Integrity. Il primo Itanium dual-core venne successivamente introdotto da Intel nel 2005.

Vista posteriore del processore MX2 raffigurato sopra. Si nota che lo zoccolo è identico a quello di un'ordinaria CPU Itanium 2.

Engineering Sample di CPU Intel Itanium a 400 MHz montata su scheda, col relativo regolatore di tensione (a destra).

11.4.2014 - Scheda CPU di mainframe Fujitsu GS-8600/60 (1996) con due CPU e 2 GB di RAM: notevoli le dimensioni, circa 50 per 70 centimetri, ed il peso (12 Kg). Nell'esemplare visibile qui sono installati due soli processori su un massimo di 6: notare le dimensioni e la particolare forma dei socket. Gli altri componenti dotati di dissipatori di calore sono i moduli multichip dei processori di I/O e delle interfacce di memoria. I connettori di segnale e di alimentazione sono raccolti nelle due file all'estrema destra e sinistra della scheda. I mainframe GS-8000 erano macchine con tecnologia CMOS VLSI sviluppate da Fujitsu/Amdahl per fare concorrenza agli IBM S/390: ebbero in effetti un discreto successo sia in America che in Europa. Non riuscirono tuttavia a ripetere gli eccellenti risultati di vendita ottenuti nel periodo della transizione di IBM dalla tecnologia bipolare (ECL, tipica dei calcolatori 3081, delle prime serie S/390 e simili) alla CMOS, quando le CPU ECL, pur consumando più energia ed offrendo un minore livello di integrazione rispetto alle CMOS, erano sensibilmente più veloci di queste ultime. La successiva evoluzione ha poi fatto sì che tutti i produttori di mainframe abbandonassero rapidamente le tecnologie bipolari, scomparse di fatto dal mercato all'inizio degli anni Novanta. I Fujitsu GS-8000 (GS = Global Server) sono basati su CPU multichip ceramici con raffreddamento ad aria, fabbricate con tecnologia CMOS a 0,35 micron e 3 livelli di metallizzazione. La serie GS-8000, introdotta nel 1995, ha rimpiazzato la precedente famiglia di mainframe Fujitsu M-1000 basata invece su circuiti bipolari (ECL-2) a 1 micron.

Vedi: http://museum.ipsj.or.jp/en/computer/main/0088.html

Vista ravvicinata con i 2 moduli CPU (in alto a destra), i 4 socket liberi per l'aggiunta di altrettanti processori opzionali, i 4 processori di I/O (al centro) e le memorie RAM ECC (in alto e in basso). E' probabile, ma non ne sono sicuro, che -vista la forma ed il numero di pin dei moduli MCM delle CPU- questa scheda appartenga in realtà ad un mainframe GS-8800, presentato nel 1998 (vedi questa pagina dove è raffigurato un modulo CPU, differente rispetto a quello visibile in questa pagina dedicata al modello 8600, pur se la scheda ha un'organizzazione simile). Il GS-8800 impiega CPU CMOS fabbricate con processo a 0,25 micron, in grado di offrire prestazioni di 1,8 volte superiori a quelle dei processori della famiglia 8600.

30.3.2015 - Prototipo di processore proveniente da un supercalcolatore vettoriale NEC SX-ACE (2013). Un esemplare pressoché identico è visibile in questo sito. I calcolatori vettoriali, tra cui i più noti sono i Cray, sono progettati per eseguire contemporaneamente la medesima operazione su un gruppo (vettore) di dati. Nel campo dei comuni microprocessori, MMX ed AltiVec sono esempi di estensioni vettoriali di architetture note, rispettivamente x86 e PowerPC. L'importanza dei supercalcolatori vettoriali è man mano cresciuta nel corso degli anni di pari passo con lo sviluppo di modelli matematici di fenomeni naturali complessi (clima e circolazione atmosferica, meteorologia, correnti oceaniche, terremoti ecc.) Oggigiorno la maggior parte delle macchine vettoriali in commercio si basa su processori VLSI sviluppati ad hoc, mentre i primi sistemi commercialmente disponibili negli anni Settanta ed Ottanta facevano uso di circuiti standard a media e larga scala di integrazione. La NEC introdusse l'architettura vettoriale SX nel 1983: di questa famiglia hanno fatto parte diversi modelli, dal SX-1 con una velocità di elaborazione di circa 1,3 GFLOPS fino agli SX-5 e -6 capaci di circa 8 GFLOPS, con una memoria locale di 4 GB per ciascun processore. Tutti i processori impiegati nei supercomputer NEC SX sono stati single-core fino all'avvento dell'ACE (ACE = "Advanced Computing Element"), che è una CPU vettoriale quad-core a 128 bit nella quale ciascun core, funzionante alla frequenza di 1 GHz, è capace di circa 64 GFLOPS per un totale di 256 GFLOPS e ben 1 TB di memoria direttamente indirizzabile. Le performance complessive a livello di sistema (rack) raggiungono i 16 TFLOPS. I chip ACE, realizzati con la filosofia System-On-a-Chip (SoC) integrando direttamente nel processore il maggior numero possibile di circuiti di supporto allo scopo di minimizzare quelli necessari su scheda, benché molto grandi sono più compatti dei predecessori SX-9 rispetto ai quali sono contenuti in un package BGA con minor numero di contatti (4.300 contro ben 8.960). Essi integrano approssimativamente 2 miliardi di transistor a fronte dei "soli" 350 milioni dei processori SX-9; sono fabbricati con processo CMOS a 28 nm ed hanno un'area attiva di 570 millimetri quadrati. L'assorbimento di potenza, nonostante il maggior numero di core, è sostanzialmente invariato rispetto alle macchine SX-9. Un nodo di supercomputer SX-9 con 16 processori raggiunge la velocità di calcolo di 1,6 TFLOPS ed assorbe oltre 30 kW di potenza (distribuiti tra oltre 560 circuiti LSI); al contrario, un nodo SX-ACE con velocità comparabile (1,56 TFLOPS) richiede solamente 16 componenti ed assorbe molta meno potenza, 2,8 kW. Tra i principali impieghi dei supercomputer vettoriali NEC SX ci sono la simulazione climatica con modelli matematici avanzati e le previsioni meteorologiche a lungo termine, anch'esse basate su modelli complessi. La serie NEC SX è una delle famiglie di supercalcolatori vettoriali da più lungo tempo presenti sul mercato e la sua architettura ha ricevuto nel corso degli anni diversi riconoscimenti, così come gli ingegneri che l'hanno progettata. Un esempio di supercomputer con architettura SX (in particolare SX-6) è stato l'Earth Simulator, attivo dal 2002 al 2009. Dal momento della sua entrata in funzione fino al 2004, quando è stato superato dall'IBM BlueGene/L, esso è stato il più veloce supercomputer al mondo con una prestazione nel benchmark LINPACK di 35,86 TFLOPS. I calcolatori NEC SX utilizzano il sistema operativo proprietario (di derivazione Unix) Super-UX.

Vedi: http://www.cpushack.com/2015/02/22/nec-sx-ace-quad-core-vector-supercomputing/ (brochure informativa NEC)

Anche: http://www.hotchips.org/wp-content/uploads/hc_archives/hc26/HC26-11-day1-epub/HC26.11-1-High-Performance-epub/HC26.11.110-SX-ACE-MOMOSE-NEC-v004.pdf

Anche: http://sc14.supercomputing.org/sites/all/themes/sc14/files/archive/tech_poster/poster_files/post196s2-file3.pdf

Anche: https://inst.eecs.berkeley.edu/~cs252/sp14/lectures/L08-Vectors.pdf (Vector Supercomputers).

Anche: http://www.moreno.marzolla.name/teaching/AA2014/seminario-Cesini-20141210.pdf

Ho acquistato su Ebay questi due prototipi di chip in package BGA con dissipatore di calore metallico integrato (2012), fabbricati probabilmente da NEC, assieme al processore SX-ACE visibile più sopra. Sono difficili da identificare con esattezza; potrebbero essere ASIC provenienti da macchine NEC SX, oppure da apparecchiature Cisco. Insieme Networks è un fabbricante di apparati di rete Application Centric acquisito da Cisco Systems nell'Ottobre 2013.

Uno dei 4 diversi chip CMOS VLSI che formano il processore del supercomputer KSR-1 sviluppato e commercializzato dalla Kendall Square Research (KSR). Questa macchina, che impiegava una versione personalizzata del sistema operativo OSF/1 di derivazione Unix, poteva contenere un massimo di 1.088 processori (e un minimo di 8), ciascuno dei quali aveva una velocità di circa 20 MIPS con un clock di 20 MHz. L'architettura del KSR-1 era di tipo shared memory implementata secondo lo schema Cache-Only Memory Architecture (COMA), nel quale le RAM locali di ciascun processore sono interamente utilizzate come cache anziché come memoria principale (come accade nelle architetture NUMA). I processori del KSR-1 erano formati da quattro chip fabbricati con processo CMOS a 1,2 micron: la Cell Execution Unit (CEU), la ALU intera, la FPU in standard IEEE 754 e l'unità di I/O (eXtended I/O, XIO), che raggiunge una velocità massima di trasferimento di 30 MB/s. L'unità CEU sovrintende alle operazioni di fetch delle istruzioni, due per ciascun ciclo di clock, ed a tutte le altre operazioni che implicano accessi alla memoria (load, store). La ALU contiene 32 registri a 64 bit. Si tratta in effetti di un'architettura VLIW con 6 tipi diversi di istruzioni (accesso alla memoria, esecuzione, controllo di flusso, controllo della memoria, I/O). La Kendall Square Research era stata fondata da ex impiegati della Data General e della Encore Computer; attiva dal 1986 al 1994 prima a Kendall Square e poi a Waltham (Massachusetts), sviluppò nel corso della sua attività due modelli di supercomputer, il KSR-1 ed il successore KSR-2, entrambi orientati principalmente ad applicazioni scientifiche e di database relazionali di grandi dimensioni. I primi esemplari di KSR-1 vennero commercializzati nel 1991 ed erano tra i primi calcolatori commerciali ad impiegare CPU a 64 bit. La KSR come altri produttori di calcolatori di questa classe soffrì pesantemente la crisi del mercato dei supercomputer all'inizio degli anni Novanta. Tra i suoi clienti c'erano state diverse Agenzie governative USA (ad esempio il Dipartimento per l'Energia). Quest'ultimo fu uno dei principali acquirenti sia delle macchine KSR-1 che delle KSR-2, calcolatori che continuò ad utilizzare per diversi anni dopo la chiusura della KSR.

30.10.2014 - Node-board di supercomputer parallelo Cray XT-4, con 4 CPU AMD Opteron 1354 quad-core "Budapest" a 2,2 GHz (Socket AM2), ciascuna affiancata da 8 GB di memoria DDR2 (4 moduli da 2 GB, PC6400E). Il Cray XT-4 o semplicemente XT4 è un supercalcolatore a MIMD a memoria condivisa e parallelismo massiccio, noto anche col nome in codice "Hood" durante la fase di sviluppo, introdotto nel 2006; esso rappresenta un miglioramento dell'architettura del predecessore XT3, rispetto al quale ha una rete di interconnessione più efficiente e veloce, detta SeaStar 2 (evoluzione della SeaStar dell'XT3). Il formato delle schede, degli armadi (rack) e la tipologia di rete di interconnessione sono le stesse dell'XT3. Architetturalmente l'XT3 e l'XT4 derivano da un progetto non commerciale di supercomputer sviluppato congiuntamente da Cray e dai Sandia National Laboratories, conosciuto come "Red Storm". Quest'ultimi a sua volta deriva concettualmente dal Cray T3E e dall'ASCI Red. L'XT3 può contenere da 192 a 32.768 (32K) CPU, che sono chip AMD Opteron a singolo o doppio core, funzionanti a 2,2 oppure 2,4 GHz, ciascuno accoppiato ad una memoria RAM locale ampia da 1 ad 8 GB. La rete di interconnessione SeaStar si basa su processori di I/O dedicati basati sulla CPU PowePC 440, ed offre una banda di comunicazione (protocollo HyperTransport) di 6,4 GB/s e 6 canali di comunicazione ad 8 GB/s tra le 4 CPU della scheda. I processori sono interconnessi a formare un toro a tre dimensioni; ciascun cabinet può contenere 96 schede per un totale di 384 CPU Opteron. Il sistema operativo è l'UNICOS/iC che suddivide la macchina in tre sezioni: una dedicata all'elaborazione vera e propria e le altre due all'I/O ed alle funzioni di servizio. In questo sistema i processori eseguono un microkernel (sviluppato da Sandia e da Cray) detto Catamount e derivato dal sistema operativo SUNMOS (Sandia UNM Operating System) sviluppato a partire dal 1991 ed a suo tempo utilizzato nel supercomputer Intel Paragon. Successivamente, nelle versioni commerciali (XT3 ed XT4) il Catamount è stato sostituito da un microkernel di derivazione Linux, detto Computer Node Linux (CNL). I nodi di I/O impiegano un'apposita versione di SuSE Linux e sono utilizzati anche per l'interazione con gli utenti. Le prestazioni dei calcolatori XT3/XT4 dipendono dal numero di processori installati: nel 2007 il più potente sistema XT3, "ASCI Thor Hammer", sviluppava una potenza di 102,7 TFLOPS e si posizionava al sesto posto della classifica TOP 500; nel 2008 la medesima macchina, aggiornata con nodi quad-core XT4, sviluppava 248 TFLOPS.

Vedi: http://davy.nyacom.net/crayxt3.html

Dettagli della scheda Cray. Come si può notare l'XT4 è sostanzialmente un upgrade dell'XT3 con processori più veloci ed un diverso modulo di interconnessione (SeaStar 2).

Schema dell'organizzazione di una scheda CPU Cray XT4 identica alla mia. Il modulo di controllo (L0 Blade Control Computer) è basato su processore x86 AMD Elan.

Due ASIC CMOS (gate array) fabbricati entrambi da LSI Logic rispettivamente nel 1990 e nel 1991 provenienti dalla scheda CPU di un minicomputer Pyramid Technology MIServer. Fondata nel 1981 da tecnici provenienti dalla HP, Pyramid Technology fu una delle prime case produttrici di macchine RISC commerciali e si distinse negli anni Ottanta ed all'inizio degli anni Novanta come fabbricante di server Unix multiprocessore (storicamente è stata a livello mondiale il secondo produttore in ordine cronologico di macchine Unix SMP, precisamente nel 1985). I minicomputer Pyramid erano basati su CPU RISC proprietaria e dotati di un sistema operativo denominato "OSx", successivamente utilizzato anche su macchine con processori MIPS SMP (R3000, R4000). La prima serie di processori Pyramid, a 32 bit, funzionava ad una frequenza di 8 MHz ed era interamente realizzata con gate array CMOS. Queste CPU vennero prodotte fino all'inizio degli anni Novanta, quando Pyramid iniziò a commercializzare server SMP con CPU MIPS. Qui si vede a sinistra una ALU a 32 bit, 10 MHz, del 1990. Benché commercializzati come "veri" RISC, si trattava in effetti di processori microprogrammati ispirati all'architettura Berkeley RISC che erano in grado di eseguire la maggior parte delle operazioni scalari tra registro e registro in un singolo ciclo di clock, mentre richiedevano più cicli le operazioni di accesso alla memoria esterna. Possedevano un totale di 64 registri a 32 bit, dei quali 16 di uso generale "statici", mentre i restanti 48 formavano in realtà la parte superiore dello stack, secondo uno schema tecnicamente noto come "sliding register window". Le istruzioni in virgola mobile furono dapprima interamente implementate nel microcodice, e solo successivamente Pyramid sviluppò una propria FPU esterna. Le prime macchine Pyramid, come il server 90x, offrivano prestazioni circa doppie rispetto a quelle del VAX 11/780 (all'epoca la piattaforma Unix per eccellenza) alla metà tuttavia del suo prezzo. Uno dei principali punti di forza dei server Pyramid era il controller di terminali seriali a 16 porte (ITS, Intelligent Terminal Server) che, grazie ad un processore dedicato a 16 bit ed al DMA, risultava molto veloce ed efficiente; in più, un singolo server poteva ospitare più controller ITS e gestire quindi fino a 64 postazioni di lavoro. Il vantaggio in termini di prestazioni rispetto ai sistemi VAX era dato proprio dal DMA, che consentiva al controller di gestire i terminali ed i trasferimenti dati da e verso la memoria centrale senza la necessità di alcun intervento da parte della CPU di sistema. I server 90x contenevano inoltre un processore di gestione e diagnostica basato su CPU Motorola 68000. Nel 1985 Pyramid introdusse una macchina Unix SMP con un massimo di 4 CPU RISC proprietarie a 7 MHz: la versione più potente, con 4 processori (9845), raggiungeva i 25 MIPS. Nel 1987 venne anche introdotta una revisione, funzionante con un clock di 10 MHz, del processore utilizzato nell'originario sistema 90x. Pyramid Technology continuò ad utilizzare processori proprietari fino al 1990, impiegandoli in particolare in una serie di server Unix SMP a 1/10 vie (le prestazioni medie erano di circa 12 MIPS per CPU) noti dal 1989 come MIServer; a partire dal 1991 essa iniziò a commercializzare server Unix SMP basati su CPU MIPS R3000 e poi R4000/R4400, noti come MiServer T. Negli anni Novanta col marchio Pyramid fu commercializza anche una serie di macchine Unix con CPU MIPS R10000 ed un modello a parallelismo massiccio (MPP), basato sempre su R10000, noto come Reliant RM10000.

Vedi: http://www.computerhistory.org/collections/catalog/102712601

ASIC LSI Logic (gate array CMOS VLSI) in package PGA-244 con specifiche di temperatura estese, utilizzato come controller di bus in alcuni modelli di schede coprocessori multi-DSP Hydra che montano 4 o più DSP floating-point TMS320C40, a suo tempo impiegate principalmente nell'elaborazione di immagini in tempo reale. 

6.7.2014 - Fermacarte promozionale HP con die (chip) di CPU PA-RISC PA-8000, 1996. Il PA-8000 o PCX-U (Onyx) è una CPU RISC a 64 bit annunciata da HP nel 1994 e presentata nel 1995, sviluppata ex novo; in particolare, con essa è stata introdotta la versione 2.0 dell'ISA -Instruction Set Architecture- PA-RISC. Tutti i successivi membri della famiglia PA-RISC sono basati sull'architettura del PA-8000. Questo processore è stato ampiamente utilizzato da HP in workstation e server, e dagli altri produttori di hardware membri della PRO o Precision RISC Organization, in particolare NEC, Convex e Stratus Computer. Il PA-8000 è un microprocessore superscalare a 4 vie con 10 distinte unità funzionali che supporta funzionalità avanzate quali l'esecuzione fuori ordine e l'esecuzione speculativa. Entrambe queste caratteristiche non erano presenti nelle precedenti CPU PA-RISC, che fondavano le loro elevate prestazioni essenzialmente sul binomio semplicità-elevate frequenze di clock. Le cache L1 per dati ed istruzioni sono separate ed esterne, come i relativi TLB, e possono essere ampie ciascuna fino a 4 MB. Il bus di sistema è il Runway bus a 64 bit, con indirizzamento a 40 bit fisici che può quindi indirizzare un massimo di 1 TB di memoria. La CPU PA-8000 contiene 3,8 milioni di transistor ed è fabbricata con processo CMOS-14C a 0,5 micrometri e 5 livelli di metallizzazione, che consentiva una riduzione delle dimensioni del singolo gate del 10% circa rispetto al predecessore CMOS-14 (impiegato ad es. nel PA-7300). Ciononostante il die del PA-8000 è molto grande (vedi sopra il raffronto con la moneta da 1 centesimo di Euro) e misura infatti ben 17,68 per 19,10 millimetri, ovvero 337,69 millimetri quadrati. Vi sono 704 punti di connessione per i segnali e 1.200 per l'alimentazione e la "massa" (solder bumps, essendo il die montato a faccia in giù, secondo la tecnica cosiddetta "flip-chip"). Il package del PA-8000 è un LGA ceramico con 1.085 punti di contatto. L'alimentazione è singola a 3,3 Volt. 

L'R3000, qui nella versione LSI Logic a 25 MHz (LR3000GC-25) affiancato dalla FPU NEC D30311R-33/VR3010A-33 (quest'ultima a 33 MHz) è stato una fortunatissima CPU MIPS a 32 bit, introdotta nel 1988 ed utilizzata in un gran numero di macchine ed applicazioni embedded. Sviluppato da MIPS Computer Systems, l'R3000 (successore dell'R2000) implementa il set di istruzioni (ISA) MIPS-I. Esiste nelle versioni a 20, 25 e 33 MHz. Esso implementa una pipeline a 5 stadi in grado di eseguire la maggior parte delle istruzioni in un unico ciclo di clock; a differenza del predecessore R2000, integra l'unità di gestione della memoria (MMU) ed il relativo TLB (Translation Lookaside Buffer). Non ha alcuna cache interna; il cache controller integrato può comunque gestire cache esterne separate per dati ed istruzioni, ciascuna ampia fino a 256 KB. L'R3000 è stato impiegato, fra l'altro, nelle workstation DEC DECstation, in server e workstation Prime e Pyramid, nelle workstation grafiche Personal IRIS, IRIS ed Indigo di SGI, nonché nelle console Sony PlayStation e PlayStation 2 dove ha la funzione di processore di I/O. Contiene circa 115.000 transistor ed è fabbricato con processo CMOS a 1,2 μm e 2 livelli di metallizzazione. Essendo MIPS Computer System un'azienda "fabless", cioè senza un proprio impianto di produzione dei chip, l'R3000 è stato fabbricato da svariati produttori tra cui NEC, LSI Logic, Performance Semiconductor, IDT.

Spilla promozionale Cyrix con CPU 6x86 (Cyrix M1), 1996. Il 6x86 era un processore x86 di "sesta generazione" con architettura a 32 bit superscalare progettato da Cyrix e fabbricato da IBM ed SGS-Thomson. In realtà, nonostante la sigla iniziasse per "6", il 6x86 era in effetti una CPU paragonabile all'Intel Pentium P54 ed all'AMD K5, dunque un processore di "quinta generazione". Introdotto nell'Ottobre del 1995, incorporava alcune caratteristiche avanzate tra cui l'esecuzione speculativa e fuori ordine ed il register renaming. A differenza però di altri processori dell'epoca quali il Pentium Pro e l'AMD K5, che traducevano in modo dinamico le istruzioni x86 in gruppi di micro-istruzioni "RISC-like", il 6x86 eseguiva nativamente il codice macchina x86 facendo uso di un microcodice tradizionale, come accadeva ad es. nelle CPU di classe 486. La CPU M1 contiene una cache di primo livello unificata ampia 16 KB, visibile qui nella parte sinistra del chip, ed una "scratchpad cache" (cache di livello zero) ampia 256 byte, caratteristica quest'ultima unica tra i processori con architettura x86. E' compatibile a livello di socket (PGA-296) e tensioni con il classico processore Pentium P54C, benché non lo sia completamente a livello di set di istruzioni né abbia la possibilità di funzionare in configurazioni SMP a 2 o più CPU. Le prime versioni del 6x86 risultavano inoltre affette da fastidiosi problemi di surriscaldamento a causa dell'elevata potenza assorbita (circa 25 W, contro i soli 15 del Pentium a parità di frequenza operativa) e dell'inefficace dissipazione di calore offerta dal package. Questo difetto venne successivamente corretto con la versione 6x86L che, pur mantenendo il medesimo package ceramico con "coperchio" (lid) metallico, funzionava con tensione di alimentazione inferiore (3,3V esterni, 2,8V interni - come il Pentium MMX) ed era fabbricato con processo CMOS a 0,35 micron contro i 0,65 della versione originaria. Grazie a queste due innovazioni il 6x86L riusciva ad abbattere il consumo di corrente e la conseguente dissipazione di calore del 25% circa. Il 6x86MX (Maggio 1997) era, infine, un'espansione dell'M1 originario mediante l'aggiunta di un'unità MMX e l'ampliamento della cache L1 a 64 KB. Le CPU M1 offrivano prestazioni globali, a parità di frequenza, inferiori sia a quelle dei Pentium che a quelle degli AMD K5: ciò a causa principalmente delle limitate capacità della FPU, in sostanza una versione solo un po' aggiornata della tradizionale Cyrix 3x87, che non poteva competere con le più evolute unità in virgola mobile dei concorrenti Intel ed AMD. Le prestazioni del 6x86 superavano quelle del Pentium nelle applicazioni che facevano uso solamente di aritmetica integer (intera), come ad esempio la maggior parte dei programmi da ufficio ed anche alcuni videogiochi degli anni Novanta. Questo fatto, unitamente al basso prezzo di vendita - circa la metà di quello di un Pentium di pari prestazioni, garantì al 6x86 una buona popolarità soprattutto nei PC entry level. Va sottolineato che l'M1 non era un clone del Pentium, pur contenendo all'incirca lo stesso numero di transistor, ma si basava su un'architettura interna originale appositamente sviluppata da Cyrix. Per tale motivo, Cyrix ed IBM introdussero un indice di prestazioni chiamato "PR" (abbreviazione di Pentium Rating) per offrire agli acquirenti un termine di paragone delle prestazioni rispetto, appunto, all'Intel Pentium. Ad esempio, un 6x86 PR150 offre prestazioni globali assimilabili a quelle di un Pentium a 150 MHz, pur non funzionando alla stessa frequenza di clock (120 MHz interni per il 6x86). Il 6x86 nelle sue varie versioni fa uso di un moltiplicatore di clock con fattore 2, il che significa che la frequenza interna è doppia rispetto a quella di bus.

Il NEC V70 (D70632R), ultimo membro della famiglia "V" compatibile con l'architettura Intel x86 -se si esclude il V80 che praticamente non ha avuto vita commerciale-, era una CPU a 32 bit evoluzione del precedente V60, rispetto al quale offriva tutti i bus (interno ed esterno) a 32 bit reali. Fabbricato con processo CMOS a 1,5 micron con 2 livelli di metallizzazione, integra 385.000 transistor ed è contenuto in package PGA a 132 piedini. Si tratta di un processore avanzato per l'epoca in cui è stato introdotto (1986/7) dal momento che contiene anche una MMU con supporto del demand-paging ed un'unità in virgola mobile (FPU) compatibile con lo standard IEEE-754. La versione a 20 MHz, presentata nel 1987, aveva una velocità operativa di circa 6,6 MIPS ed è stata fabbricata anche con processo a 1,2 micron. Il V70 è stato impiegato prevalentemente come CPU in sistemi embedded ed in videogiochi (ad es. Sega System Multi-32). Le prestazioni della FPU interna erano molto ridotte, soprattutto perché la maggior parte delle operazioni in virgola mobile erano implementate nel microcodice, ragion per cui NEC rese disponibile un'unità floating-point esterna, più potente (NEC D72691).

"The V60/V70/V80 mostly shared a common architecture. They had thirty-two 32-bit general-purpose registers, although the last three of these were commonly used as stack pointer, frame pointer and argument pointer. The V60 and V70 had a 119-instruction set, slightly extended to 123 instructions for the V80. The instructions have variable-length between one and 22 bytes, and they take two operands, both of which can be memory locations. After studying the V60's reference manual, Paul Vixie described it as "a very VAX-ish arch, with a V20/V30 emulation mode (which, if you recall, means it can run Intel 8086/8088 software)". V60-V80 had a built-in MMU that divide the 4 GB virtual address space into in four 1-GB sections, each section further divided in 1,024 1-MB areas, each area composed of 256 4-KB pages. On the V60/V70 four registers (ATBR0 to ATBR3) store section pointers on the processor, but the area tables entries (ATE) and page tables entries (PTE) are stored in RAM (off-chip). The V80 merged the ATE and ATBR registers, which are both on-chip with only the PTE entries sored in RAM, allowing for a faster execution of TLB misses by eliminating one memory read. The TLBs on the V60/70 are 16-entry fully associative with replacement done by microcode/firmware. The V80 in contrast has a 64-entry 2-way set associative TLB with replacement done in hardware. TLB replacement took 58 cycles in the V70 and also disrupted the pipelined execution of other instructions. On the V80 a TLB replacement took only 6/11 cycles depending if the page was in the same area or not; pipeline disruption no longer occurred in V80 because of the separate TLB replacement hardware unit which operated in parallel to the rest of the processor. All three processors used the same protection mechanism with 4 execution levels (set via a program status word), with ring 0 being the privileged level that could access a special set of privileged registers on the processors. All three models supported a triple-mode redundancy configuration with three CPUs used in a byzantine fault tolerance scheme with bus freeze, instruction retry, and chip replacement signals. The V80 also added parity signals to its data and address buses. String operations were implemented in microcode in the V60/V70, but aided by hardware Data Control Unit in the V80, running at full bus speed. This made string operations about five times faster in the V80. All floating point operations are largely implemented in microcode across the family and thus and are fairly slow. On the V60/V70 the 32-bit floating point operations took 120/116/137 cycles for addition/multiplication/division, while the corresponding 64-bit floating point operations took 178/270/590 cycles. The V80 had some limited hardware assist for parts of the floating point operations, e.g. decomposition into sign, exponent and mantissa, thus its floating point unit was claimed up to 3 times as effective as the one of the V70, with 32-bit operations taking 36/44/74 cycles while 64-bit floating point operations taking 75/110/533 cycles on the V80 (again, for addition/multiplication/division)."

Tre interessanti e poco comuni integrati degli anni Novanta. A sinistra, un AMCC S2020A: si tratta di un controller HIPPI (High Performance Parallel Interface), bus parallelo ad alte prestazioni usato principalmente per il collegamento tra calcolatori paralleli e array di dischi (RAID). Introdotto nel 1985, HIPPI è stato popolare nel mondo dei supercomputer e dei grossi server fino alla metà degli anni Novanta, per essere in seguito soppiantato dalle interfacce SCSI e Fibre Channel. La velocità di trasferimento dati è di 800 mbit/s (100 MB/s); il bus è formato da 50 linee twisted-pair. HIPPI è storicamente importante perché è stato il primo standard di trasmissione dati con velocità prossima al gigabit per secondo in entrambe le direzioni. Nelle sue versioni più recente e veloce, HIPPI raggiunge i 200 MB/s su fibra ottica. Un'ulteriore evoluzione a 6400 mbit/s (800 MB/s) è stata denominata GSN (Gigabit System Network). Questo protocollo venne messo in crisi dal diffondersi dell'interfaccia SCSI Ultra3 (320 MB/s) e di Fibre Channel (400 MB/s su fibra, 100 su cavo twisted-pair). Al centro c'è un Engineering Sample (ES) del controller di DMA a 32 bit Fujitsu MB92411, usato in svariati calcolatori paralleli dei primi anni Novanta basati su CPU Motorola 68K. Questo componente offre una banda di 50 MB/s per singolo blocco di dati a 32 bit e può funzionare ad una frequenza massima di 33 MHz. Il chip a destra è un gate array LSI Logic da 7.500 gate impiegato come controller di interfaccia di comunicazione in alcuni modelli di calcolatori SMP fabbricati da Sequent Computer Systems, in particolare nella famiglia Symmetry (SE60, SE90). Questa compagnia, oggi scomparsa, è stata tra i pionieri dei sistemi aperti ad alto parallelismo basati su sistema operativo derivato da Unix e microprocessori commerciali (Motorola, Intel). Grazie alla collaborazione con Oracle, Sequent diventò negli anni Novanta uno dei principali produttori di sistemi Unix ad alte prestazioni; successivamente, sviluppò alcune macchine parallele con architettura NUMA, basate sia su Unix che su Windows NT. In seguito Sequent si aggregò al cosiddetto Progetto Monterey, tentativo non riuscito di realizzare un "dialetto" Unix direttamente portabile sulle diverse architetture di sistema a 32 e 64 bit. Nel 1999 venne acquisita da IBM che per un certo periodo di tempo commercializzò, anche in Europa, i suoi prodotti di punta.

Vedi: http://whatis.techtarget.com/definition/HIPPI-High-Performance-Parallel-Interface

Anche: http://www.cse.wustl.edu/~jain/cis788-95/ftp/hippi/index.html (The HIPPI Protocol).

Controller di interfaccia CIC3 utilizzato nei server paralleli Sequent Symmetry SE90, realizzato con un gate array LSI Logic da 10.000 gate CMOS e contenuto in package SPGA ("staggered PGA").

Due gate array CMOS sulla scheda processore di I/O di un server Sequent Symmetry 5000/E60 (1996). Come il CIC3 riprodotto sopra, entrambi questi chip non impiegano package PGA ordinari (regular PGA) ma sono contenuti in package SPGA "staggered PGA" (o "interstitial PGA"). Il package SPGA permette di aumentare la densità ed il numero dei pin rispetto al PGA tradizionale, offrendo un maggior numero di contatti per unità di superficie. Il passo dei piedini è infatti di 0,05 pollici contro gli 0,1 pollici del PGA standard. Esempio tipico e comune di chip SPGA sono i processori per Socket 5 e 7. Il chip a destra è fabbricato da LSI Logic ed è siglato L1B6745 SEQUENT-SPI, l'altro invece è prodotto da ST Microelectronic. Chip contenuti in SPGA sono stati usati, in varie forme, anche dalla IBM (esempio tipico la CPU POWER). L'SPGA è il tipo di package "through-hole" (abbreviato spesso thru-hole), i cui piedini cioè attraversano lo spessore del circuito stampato su cui sono montati, che offre la maggior densità di connessione. Densità superiori si ottengono ricorrendo al montaggio superficiale, che permette di superare i limiti dovuti al diametro dei piedini e dei corrispondenti fori (holes) nel circuito stampato. Ad esempio package BGA (Ball Grid Array) per montaggio superficiale hanno passi tipici di 1 mm oppure inferiori (0,50 mm o meno).

Questi due chip, fabbricati uno da LSI Logic e l'altro da VLSI Technologies, provengono entrambi da una scheda Geometry Engine GE-10 parte del sottosistema grafico OpenGL RE2 (Reality Engine 2) impiegato nelle workstation SGI Onyx. La GE-10 contiene 6 oppure 12 CPU RISC Intel i860XP a 50 MHz a seconda della configurazione alla quale appartiene (VTX oppure RE2). A ciascuna CPU è associata una memoria locale da 256 Kword a 64 bit ed un integrato di supporto GEF2 (VY06224-2, chip a destra); il chip HQ2.1 (L1A7662, a sinistra) è invece parte del cosiddetto Command Processor.

The core of each Geometry Engine is an Intel i860XP processor. Operating at 50MHz, the combined floating point multiplier and ALU can achieve a peak performance of 100 MFLOPS. Each Intel processor is provided 2 Mbytes of combined code/data dynamic memory, and is supported by a single ASIC GEF-2 that implements the input and output FIFOs, a small register space from which the i860XP accesses incoming commands, and specialized data conversion facilities that pack computed slope data into a format accepted by the Fragment Generators. All Geometry Engine code is first developed in C, which is cross compiled for the i860XP on MIPS RISC development systems. Code that is executed frequently is then re-coded in i860XP assembly code, showing the greatest improvement in performance where scheduling of the vector floating point unit is hand optimized. The assembly code is written to conform to the compiler’s link conventions, so that hand-codedand compiled modules are interchangeable for development and documentation purposes. Most floating point arithmetic is done in single precision, but much of the texture arithmetic, and all depth arithmetic after projection transformation, must be done in double precision to maintain the required accuracy. After transformation, lighting, and clipping, the rasterization setup code treats each parameter as a plane equation, computing its signed slope in the positive X and Y screen directions. Because the parameters of polygons with more than 3 vertexes may be non-planar, the Geometry Engine decomposes all polygons to triangles. The Triangle Bus acts as a crossbar, connecting the output of each Geometry Engine to the inputs of all the Fragment Generators. Because all Geometry Engine output converges at this bus, it is a potential bottleneck. To avoid performance loss, the Triangle Bus was designed with bandwidth to handle over one million shaded, depth buffered, texture mapped, antialiased triangles per second, more than twice the number of primitives per second that were anticipated from an 8 Geometry Engine system. This performance cushion allows the later-conceived 12 Geometry Engine system to render at full performance, in spite of the greater than expected performance of the individual engines. In addition to broadcasting the rasterization data for triangles to the Fragment Generators, the Triangle Bus broadcasts point and line segment descriptions, texture images, and rasterization mode changes such as blending functions. [...]

That the Command Processor is required at all is primarily a function of the OpenGL graphics language. OpenGL is modal, meaning that much of the state that controls rendering is included in the command stream only when it changes, rather than with each graphics primitive. The Command Processor distinguishes between two classes of this modal state. OpenGL commands that are expected infrequently, such as matrix manipulations and lighting model changes, are broadcast to all the Geometry Engines. OpenGL commands that are expected frequently, such as vertex colors, normals, and texture coordinates, are shadowedby the Command Processor, and the current values are bundled with each rendering command that is passed to an individual Geometry Engine. The Command Processor also breaks long connected sequences of line segments or triangles into smaller groups, each group passing to a single Geometry Engine. The size of these groups is a tradeoff between the increased vertex processing efficiency of larger groups (due to shared vertexes within a group) and the improved load balancing that results from smaller groups. Finally, because the Command Processor must interpret each graphics command, it is also able to detect invalid command sequences and protect the subsequent processors from their effects. Non-broadcast rendering commands are distributed to the Geometry Engines in pure round-robin sequence, taking no account of Geometry Engine loading. This approach was chosen for its simplicity, and is efficient because the processing requirements of primitives are usually very similar, and because the input and output FIFOs of each Geometry Engine smooth the imbalances due to data-dependent processing such as clipping.

Vedi: http://www1.cs.columbia.edu/~ravir/6160/papers/p109-akeley.pdf

A sinistra, un gate array VLSI impiegato in alcuni server paralleli NCR basati su CPU x86. Durante gli anni Ottanta e Novanta, soprattutto dopo l'acquisizione da parte di AT&T nel 1991, NCR fu particolarmente attiva nel settore dei personal computer e dei server di medie e grandi dimensioni dotati di una o più CPU Intel o Motorola "tradizionali" (386, 486, 68020/30), cui si affiancavano componenti proprietari (ASIC) sviluppati ad-hoc. Queste macchine, molto popolari nel settore bancario ed assicurativo degli Stati Uniti, erano perlopiù concepite per funzionare come server di database relazionali e come server di terminali in reti aziendali. Al centro si vede un processore di I/O impiegato in un server di database Teradata (1992). Questa società, fondata nel 1979, è specializzata nella produzione sistemi di database relazionali (RDBMS) e di analisi dei dati, chiamati genericamente "data warehouse" (DW), basati su configurazioni distribuite di server paralleli ed array di dischi. Nel 1984 Teradata introdusse il primo sistema DW parallelo (SMP) al mondo, che rappresentò una pietra miliare nel settore ed ispirò i progetti di molti altri produttori, ad esempio IBM, AT&T ed NCR. Con quest'ultima Teradata iniziò nel 1989 un rapporto di collaborazione per lo sviluppo di server di database a parallelismo massiccio. Teradata è ricordata per aver realizzato il primo database relazionale con capacità di 1 TB, sviluppato per conto della Wal-Mart nel 1992. A destra, un controller di DMA "Openchip" (1988) impiegato nelle macchine Unix basate su CPU 68020 "Quad X" fabbricate da Torch Computer Systems, TCS (vedi). TCS era una società inglese fondata nel 1982 che agli inizi della sua attività divenne nota soprattutto come produttrice di periferiche per gli home computer BBC Micro. Nel 1986 commercializzò un'interessante ed innovativa workstation Unix con processore 68010, chiamata "Triple X": purtroppo ebbe poco successo a motivo del costo elevato e della agguerrita concorrenza dei produttori americani. Nel 1987 sviluppò e introdusse sul mercato europeo, anche in questo caso con scarso successo, una nuova e più veloce macchina Unix con processore Motorola 68020, chiamata "Quad X"  e disponibile in configurazione a singola e doppia CPU, con FPU 68882 e controller di DMA proprietario "Openchip".

Vedi: http://en.wikipedia.org/wiki/Torch_Computers; http://www.computinghistory.org.uk/det/1039/Torch-Computers-Ltd/

Tre diversi gate array VLSI CMOS, fabbricati da LSI Logic e Toshiba (a destra, un Engineering Sample), 1993/94. Sono contenuti rispettivamente in package flat a basso profilo per montaggio superficiale ad alta densità, in package PGA standard a 208 piedini (al centro) ed in package staggered-PGA (PGA a passo ridotto, a destra) a 432 piedini. Il gate array al centro è un componente impiegato nei server SMP Tandem.

Esempi di ASIC VLSI CMOS in diversi tipi di package PGA, fabbricati da LSI Logic per Sun Microsystems, DEC e NEC: quello al centro (siglato DEC 1008A) è un chip di supporto per la CPU NVAX+.

Il chip a sinistra è un gate array VLSI CMOS fabbricato da LSI Logic (1993), siglato L64862HC, che implementa un chipset single-chip per sistemi SPARC, sviluppato da Sun Microsystems nel 1992. La sigla MSI sta per Memory System Integration. Esso riunisce in un unico componente una serie di funzionalità ed in particolare il controller della cache, la MMU, l'arbitraggio del bus di memoria, l'interfaccia tra CPU e memoria, il controller di DMA. Il chip a destra è un cache controller (SPARC CACHE+, L64844NC-40) impiegato in sistemi basati su CPU SPARC a 32 bit di prima generazione, ad es. la LSI Logic L64811GC, quali le SPARCstation 2 e la SPARCstation IPX. Un componente con funzionalità analoghe era fabbricato da AT&T.

Vedi: http://www.hotchips.org/wp-content/uploads/hc_archives/hc04/2_Mon/HC4.S4/HC4.4.2.pdf

ASIC CMOS fabbricato da NEC (1994); si tratta di un gate array VLSI utilizzato in alcuni modelli di schede VME come controller d'interfaccia da e verso il bus di backplane.

A sinistra, un FPGA Xilinx XC3064, appartenente alla famiglia XC3000. Introdotta nel 1987 questa è stata una delle famiglie di logiche programmabili CMOS di maggior successo, con oltre 10 milioni di componenti venduti fino al 1993 ed oltre 20 fino al 2000 (vedi: http://pdf1.alldatasheet.com/datasheet-pdf/view/93153/XILINX/XC3064.html). 

The CMOS XC3000 Class of Logic Cell Array (LCA) families provide a group of high-performance, high-density, digital integrated circuits. Their regular, extendable, flexible, user-programmable array architecture is composed of a configuration program store plus three types of configurable elements: a perimeter of I/O Blocks (IOBs), a core array of Configurable Logic Bocks (CLBs) and resources for interconnection. The XACT development system provides schematic capture and auto place-and-route for design entry. Logic and timing simulation, and in-circuit emulation are available as design verification alternatives. The design editor is used for interactive design optimization, and to compile the data pattern that represents the configuration program. The LCA user logic functions and interconnections are determined by the configuration program data stored in internal static memory cells. The program can be loaded in any of several modes to accommodate various system requirements. The program data resides externally in an EEPROM, EPROM or ROM on the application circuit board, or on a floppy disk or hard disk. On-chip initialization logic provides for optional automatic loading of program data at power-up. The companion XC17XX Serial Configuration PROMs provide a very simple serial configuration program storage in a one-time programmable package.

Il chip a destra è un controller XDBus Xerox IMPACT (1994) implementato in forma di gate array LSI Logic. L'XDBus è un bus di sistema sviluppato congiuntamente da Sun Microsystems e Xerox ed utilizzato in alcuni server Sun SMP basati su processori SPARC, come lo SPARCserver 1000 e lo SPARCcenter 2000. Il concetto alla base dell'XDBus deriva in massima parte da un precedente progetto Xerox di server multiprocessore SPARC ad elevate prestazioni, lo Xerox Dragon (commercializzato da Cray col nome di Cray Superserver 6400 o CS6400). Il CS6400, introdotto nel 1993, non era la prima macchina Cray basata su processori SPARC: l'anno precedente, infatti, era stato presentato il Cray S-MP basato su CPU SPARC di prima generazione (V7). L'XDBus è un bus sincrono, packet-switched, ad elevata velocità, espressamente progettato per l'interconnessione dei processori in un sistema multiprocessore simmetrico (SMP). Il controller Xerox visibile qui implementa la versione 1.0 del protocollo XDBus.

The XDBus is a low-cost, synchronous, packet-switched VLSI bus designed for use in high-performance multiprocessors. The bus provides an efficient coherency protocol which guarantees processors a consistent view of memory in the presence of caches and IO. Low-voltage swing (GTL) CMOS drivers connected to balanced transmission line traces ensure low power as well as high speed for chip, board, and as backplane applications. The signaling scheme and coherency protocol work together to promote a high level of system integration, while permitting a wide variety of configurations to be realized. These configurations include small single board systems, multiple bus systems, multiboard backplane systems, and multilevel cache systems. The bus is used in several commercial systems including Sun Microsystem's new SPARCcenter 2000 series.

Vedi: http://www.sunhelp.org/history/pdf/Compcon-SC2000.pdf

Anche: http://www.ee.ucla.edu/~ingrid/Courses/ee215b/Lectures/W02/JKimDRAMBusL10.pdf

Vedi: http://bitsavers.informatik.uni-stuttgart.de/pdf/xerox/parc/techReports/CSL-93-17_Papers_from_the_SunDragon_Project.pdf

Anche: http://faculty.kfupm.edu.sa/COE/mayez/ps-COE502/SCANNED-MATERIAL/Chapter6.pdf

Anche: http://faculty.kfupm.edu.sa/COE/mayez/ps-COE502/SCANNED-MATERIAL/Chapter5.pdf

Due gate array impiegati in server SMP NCR: un controller di memoria, a sinistra, proveniente da un server 3500 con architettura Microchannel, ed un processore di I/O (a destra), dalla medesima macchina.

Il circuito al centro è un controller HP-IB single-chip SOS, Silicon On Sapphire (HP P/N 1820-2828, 1981). A sinistra, un integrato Motorola (H02NK4, 1985) che è, probabilmente, un gate array CMOS. A destra un gate array ECL (1984) utilizzato da CDC, Control Data Corporation, nei mainframe Cyber 20x. Gli array ECL, discretamente popolari negli anni Ottanta specialmente nel campo dei mainframe (CDC, Burroughs...) caddero rapidamente in disuso nel corso del decennio successivo allorquando i componenti CMOS, già superiori per densità di integrazione e minore consumo, raggiunsero prestazioni ad essi paragonabili in termini di massima frequenza operativa.

Gate array CMOS LSI fabbricato da Texas Instruments (1984) e contenuto in un non comune package PGA-121 ceramico bianco, proveniente da un calcolatore Unisys 2200/100 (vedi: http://ummr.altervista.org/before_microprocessors.htm per la foto della scheda CPU completa), una macchina per applicazioni commerciali -principalmente COBOL e database relazionali- compatibile con i minicomputer Sperry 1100. Queste macchine impiegavano integrati CMOS nei modelli più economici e chip ECL, invece, in quelli più potenti. Questi array CMOS sono stati sviluppati in collaborazione con Texas Instruments ed esistono anche con sigla Sperry oppure Unisys.

Questo integrato Texas Instruments del 1984, siglato CF13610, è un ASIC CMOS, probabilmente (stando ad una recente discussione su CPU World) un gate array LSI.

A sinistra, un integrato in package PGA fabbricato da Siemens (1992) con codice identificativo DEC (21-37362-01): proviene probabilmente da una scheda FDDI per VAX 6000. Al centro, un gate array CMOS in package CLCC con specifiche militari (1993) fabbricato da Texas Instruments: notare la sigla "CF", abbreviazione di "Custom Function", che caratterizza molti ASIC di TI. A destra un gate array LSI Logic con codice DEC (21-21427-01), in package CLCC. La sigla DC336 dovrebbe identificare se non erro un buffer di I/O.

Gate array CMOS con marchio Data General (1984) utilizzato nelle CPU della famiglia di minicomputer Nova a 32 bit.

Il chip in basso a destra è un gate array bipolare (ECL) fabbricato da AMCC nel 1991 con specifiche militari, che può funzionare ad una frequenza massima di 150 MHz. Gli altri due integrati sono ULA, abbreviazione di "Uncommitted Logical Array" ovvero "matrice logica non dedicata", vale a dire "di uso generico", fabbricati da Ferranti rispettivamente nel 1983 e nel 1984. Per oltre un secolo, ovvero dalla fondazione nel 1885 alla dichiarazione di fallimento nel 1993, la Ferranti è stata un importante produttore britannico di apparecchiature elettriche, elettroniche e militari. Venne creata da Sebastian Ziani de Ferranti, un inventore inglese di padre italiano nato a Liverpool, famoso per essere stato un sostenitore della corrente alternata ai tempi della "battaglia delle correnti" e, soprattutto, per aver ideato e realizzato praticamente lo schema di generazione della corrente alternata, trasporto ad alta tensione e distribuzione a bassa tensione all'utenza finale tuttora in uso a livello mondiale. La Ferranti ebbe, nel corso del Novecento, un ruolo di primo piano nel settore della difesa e, cosa più interessante, nello sviluppo dei primi calcolatori elettronici. Tra questi ricordiamo il Ferranti Mark 1 o "Manchester Electronic Computer" del 1948, il primo calcolatore elettronico commerciale d'uso generale, ed il Pegasus (1956), noto per essere stato il più diffuso calcolatore della prima generazione (cioè a valvole): ne vennero venduti in tutto 38 esemplari. Sempre alla Ferranti e sempre nel 1956 venne messo a punto lo schema di codifica dei caratteri che col tempo si sarebbe evoluto nell'attuale standard ASCII. Notevole realizzazione della Ferranti è stato anche il calcolatore scientifico Atlas (1962), uno dei primi esempi di macchine con processore asincrono. La Ferranti, che era attiva da decenni nel settore dell'elettronica come produttore di valvole trasmittenti e riceventi e componenti a semiconduttore (è stata il primo produttore europeo di transistor al Silicio), all'inizio degli anni Ottanta introdusse una delle primissime famiglie di gate array (un tipo di ASIC) basati su matrici di porte NAND. "ULA" è sinonimo di gate array e, nello stesso tempo, il nome dato da Ferranti a questa classe di dispositivi. La divisione semiconduttori venne successivamente ceduta alla Plessey nel 1988. I gate array Ferranti sono noti al pubblico soprattutto per il loro utilizzo in alcuni famosi microcomputer, tra cui in particolare il Sinclair ZX81, lo Spectrum e l'Acorn Electron (questo articolo parla dei problemi incontrati dalla Acorn con la fornitura di chip Ferranti). Di questi componenti sono stati pubblicati pochi dettagli tecnici; si sa (vedi http://www.zxdesign.info/book/insideULA.shtml) che ne esistono almeno due gruppi, uno più datato con tecnologia TTL (famiglie ULA 1000, 2000 e 5000) alla quale appartiene l'integrato in altro a destra (che dovrebbe essere un membro della famiglia C-2000), ed un altro più moderno con tecnologia CML o Current-Mode Logic (famiglia R-6000, 9000) al quale appartiene il chip a sinistra.

Vedi: http://www.visual6502.org/images/pages/Ferranti_ULA_9C018E7_die_shots.html; http://discovery.nationalarchives.gov.uk/details/rd/26429eba-5e77-4b81-b32a-deeedbec55c8#-1

Vedi: http://www.datasheetarchive.com/dl/49505020893f1484198c20289b3fc94da55913/O/ferranti+ula.

Dettagli tecnici della famiglia di ULA "R": http://www.cl.cam.ac.uk/~atm26/acorn/electron/ula/ferranti-r-series-cell.png (da Microprocessors and Microsystems).  

A sinistra, un integrato Compaq (siglato 07P6470) in package CPGA con dissipatore di calore integrato. A destra, un gate array ECL Motorola del 1988, simile a quelli impiegati nei mainframe Burroughs "Series A". Il chip Compaq è stato probabilmente fabbricato nel 2000 e riporta la seguente marcatura: "COMPAQ (m) 07P6470 USA JM7512 0029", in alto, e "20-49409-04" in basso; sul retro c'è la sigla "P9324046".

Il lato inferiore del chip Compaq raffigurato sopra. Se ho contato bene i piedini, è un CPGA con 480 pin.

Esempio di chip contenuto in package QUIP (QUad Inline Package) leadless ceramico. Questo particolare tipo di package è stato sviluppato alla fine degli anni Settanta dalla 3M ed è stato utilizzato solamente in un ridotto numero di microprocessori, principalmente Intel (iAPX 432, versioni del microcontroller 8051 per emulatori ICE e sistemi di sviluppo) e Zilog (versioni della MCU Z8 per sistemi di sviluppo ed ICE). Si tratta di un package ceramico di tipo cavity-down, cioè con l'alloggiamento del chip posto nella parte inferiore; ha 64 contatti suddivisi in 4 file da 16, due su ciascun lato. Quando il QUIP venne introdotto, nel 1980, non esistevano negli Stati Uniti package standardizzati con più di 48 contatti, ad eccezione del DIP-64. Rispetto a quest'ultimo il QUIP presentava alcuni vantaggi ed in particolare: minore spazio occupato (2/3 circa); maggiore capacità di dissipazione del calore grazie alla presenza di un dissipatore integrato nel meccanismo di ritenzione del chip (clip); minore lunghezza dei collegamenti tra contatti e chip, di conseguenza minore induttanza degli stessi. I package QUIP vennero prodotti da 3M in due versioni, con range di temperatura normale (3534) ed esteso (3362). Questo tipo di package fu reso obsoleto e rimpiazzato dal CLCC standard a 68 contatti (JEDEC Type A). 

Vedi: http://www.brouhaha.com/~eric/retrocomputing/intel/iapx432/quip/

Engineering sample di differenti tipi di package tra cui un QUIP fabbricato da 3M (al centro) ed una memoria SRAM di IDT non completamente assemblata (a destra).

Chip Geometry Accelerator (GA) Silicon Graphics del 1988, in package CLCC bianco. I primi prodotti commercializzati dalla Silicon Graphics Inc. (SGI), fondata nel 1982 da Jim Clark, impiegavano la Geometry Engine sviluppata dallo stesso Clark e dal suo collega Hannah alla Stanford University all'inizio degli anni Ottanta: si trattava della prima implementazione VLSI di una pipeline completa per calcoli geometrici 3D. Questo chip venne ad esempio utilizzato nelle workstation grafiche UNIX IRIS 2000 e 3000. Una descrizione dell'implementazione VLSI dell'originaria Geometry Engine di Clark si può trovare qui: http://design.osu.edu/carlson/history/PDFs/geometry-engine.pdf

Vedi: http://en.wikipedia.org/wiki/Silicon_Graphics

Anche: http://www.sgistuff.net/hardware/graphics/index.html

Un integrato in package PGA quasi completamente bianco (il fabbricante è di difficile identificazione). I PGA bianchi sono piuttosto rari: package di questo tipo sono stati utilizzati da Sperry e VLSI Technologies (ad esempio nella CPU del minicomputer Honeywell/Bull DPS 6000).

Dettaglio della scheda Graphics Processor (L2004 - VS600 LEGSS Graphics Base Module) per workstation DEC VAX-3520/3540 "Firefox" (1989, vedi). Erano queste delle macchine Qbus AMP (multiprocessore asimmetrico) basate su 2/8 CPU CVAX 78034 suddivise tra un minimo di 1 ed un massimo di 4 schede processore; derivavano dalla precedente workstation "Firefly" del 1987, architetturalmente simile ma basata sul più lento MicroVAX 78032. Entrambi i tipi di workstation, orientati soprattutto alle applicazioni CAD/CAM e di grafica 3D, implementavano un algoritmo di coerenza della cache sviluppato dalla stessa DEC e noto come "Firefly Protocol". In questa pagina del sito si può vedere la scheda CPU. Nei sistemi AMP le CPU presenti non sono trattate tutte allo stesso modo dal sistema operativo, nel senso che -ad esempio- ad una sola di esse può essere deputata l'esecuzione del codice del S.O. stesso (coi relativi privilegi) mentre alle altre sono assegnati compiti di I/O e di esecuzione dei programmi degli utenti. Esempi di macchine AMP sono stati il Burroughs B5000, il CDC 6700, l'IBM System/370-168, l'Univac 1108 ed il DEC PDP-11/74. La scheda visibile qui fa parte della più avanzata (e costosa) opzione grafica disponibile per le workstation 3520/3540. In essa, l'unità di elaborazione responsabile dei calcoli geometrici è formata da un'ALU CMOS per numeri interi (IPU: Integer Processor Unit) a 32 bit Weitek XL-8137 (in alto a sinistra) con il relativo sequenziatore (microcode sequencer) Weitek XL-8136 (in basso) e la FPU Weitek 3832, capace di una prestazione massima di circa 4,4 MFLOPS. Tutti questi componenti lavorano con un ciclo macchina di 100 ns.

In alto a sinistra, un Intel Video Storage and Display Device (VSDD) 82716, controller ad alta integrazione progettato per ridurre al massimo il numero di componenti necessari a realizzare un sottosistema video (testo e grafica a colori) in apparecchiature Videotext/Teletext, terminali semigrafici e schede video (MGA, CGA, EGA). Questo processore, introdotto nel 1984, può essere facilmente interfacciato con tutte le CPU Intel a 8 e 16 bit. Il contenuto di una schermata è formato da una serie di oggetti descritti e "contenuti" in una memoria locale cui l'82716 ha diretto accesso; questi stessi oggetti vengono poi "tradotti" in un insieme di pixel con le relative coordinate per la visualizzazione ed inviati ad un convertitore digitale/analogico (DAC). L'82716 è notevole perché è stato il primo processore grafico fully-pipelined. L'82716 è stato impiegato in svariate schede grafiche per PC AT durante gli anni Ottanta e Novanta. 

The 82716/VSDD is a low cost, highly integrated video controller. It displays graphic and textual information using a minimum of chips. Il allows the management of up to 16 display objects on the screen at any one time. These object can be formatted as bitmaps or characters arrays anc can be used for windowing or animation. An on-chip color palette allows te selection of up to 16 colors, from a range of 4096. The palette can be programmed to drive a set of on-chip D/A converters. The VSDD also provides DRAM controller functions. It supports overlapped objects and transparent pixels. In conjunction with appropriate software, the 82716 can be compatible with such video standards as NAPLPS, CEPT or custom configurations.

A fianco, un controller ECC CMOS a 32 bit AMD Am29C660 (vedi).

The AMD Am29C660 CMOS Cascadable 32-bit Error Detection and Correction Circuit (EDC) contains the logic necessary to generate check bits on a 32-bit data field according to a modified Hammer Code, and to correct the data word when check bits are supplied. Operating on data read from memory, it detects and corrects all single-bit errors and detects double- and some triple-bit errors. For 32-bit words, 7 check bits are used. The Am29C660 is expandable to operate on 64-bits data words (8 check bits). In both configurations, the device makes error syndromes available on separate outputs for error logging. The Am29C660 also features two diagnostic modes [...]. When used with the Am29C668 Dynamic Memory Controller it can perform the AMD's invented memory "scrubbing" operation to provide highest data integrity.

Il Toshiba T9506 (terzo chip da sinistra in alto) è un processore grafico CMOS a 32 bit introdotto nel 1986 (vedi) e progettato per applicazioni di elaborazione d'immagini industriali, mediche e nel settore delle comunicazioni, con supporto in hardware di funzioni specifiche (FFT, applicazione di filtri, trasformazioni).

The T9506 is fabricated with a 1.2 micron double-layer metal CMOS process. It contains 170K transistors and works with a single 5V power supply. It is a general purpose processor for image analysis with writable control memory. It supports especially high-speed image processings such as FFT, spatial filter, affine transform, and histogram.  The T9506 has 3 external data memory ports and each port reads or writes data. Each data memory can be up to 1 Mword x 32 bit. It has a 32 by 32 bit multiplier and a 64-bit ALU. The ALU and the three address generators work as parallel pipelines. Besides the conventional image processing functions as image enlarging, reducing and shifting, the 3 megabyte memory enables the system to store image data that can be used for both scanning and printing.  

L'Intel 8395 (in basso a sinistra) è un controller HMOS a 16 bit appartenente alla famiglia MCS-96. Basato su un'architettura register-to-register ispirata alla filosofia RISC, contiene un register file ampio 232 bit e varie periferiche integrate tra cui un convertitore A/D a 10 bit, 5 porte di I/O a 8 bit, una porta seriale full-duplex, un generatore di baud rate, 4 timer e 2 contatori a 16 bit. L'8395 impiega 6,25 microsecondi per eseguire una moltiplicazione 16 x 16 bit ed una divisione intera 32/16.

The MCS-96 family of 16 bit microcontrollers consists of many members, all of which are designed for high-speed control applications. The MCS-96 family members are produced using Intel's HMOS-III process. The CPU supports bit, byte and word operations; 32 bit doublewords are supported for a subset of the instruction set. With a 12 MHz input frequency it can do a 16 bit addition in 1.0 microseconds. Instruction execution times average 1 to 2 us in typical applications. 

Il NEC D71071 è un controller di DMA CMOS a 32 bit programmabile che può essere impiegato con CPU sia a 8 che a 16 bit; può eseguire una varietà di funzioni di trasferimento dati (da memoria a memoria, da memoria a I/O e viceversa). Il D71071 ha inoltre diverse modalità di trasferimento (single, on demand, block-mode, release, bus-hold).

Il chip in alto a destra è un gate array LSI Logic da 3.500 gate NAND utilizzato come interfaccia tra CPU e memoria in alcuni modelli di server SMP prodotti da NCR. In questo tipo di macchine venivano spesso impiegati componenti custom (personalizzati) progettati ad hoc in luogo di comuni integrati commerciali per rispondere ad esigenze specifiche e, non ultimo, per contenere il più possibile il numero di componenti necessari.

L'Intel 82730, in alto, è un particolare tipo di coprocessore per sistemi x86 (utilizzabile tuttavia anche con altre CPU, ad esempio la famiglia Motorola M68K) denominato "Text Coprocessor": velocizza e gestisce in un singolo chip VLSI tutte le operazioni che riguardano la visualizzazione su display ad alta risoluzione (fino a 200 caratteri per riga, 2.048 linee di scansione per schermata) in modalità testo e semi-grafica. A differenza dei coprocessori 82716 ed 82786, l'82730 è progettato per gestire in modo specifico display testuali anziché immagini bitmap. Il suo tipico utilizzo tipico era nei terminali e nelle apparecchiature stand-alone per elaborazione di testi (word processing), una categoria di macchine oggi completamente soppiantata da software quali Microsoft Word, OpenOffice ed altri simili. Introdotto nel 1982 in concomitanza con la CPU 80286, ha avuto scarsa diffusione ed è rimasto uno dei chip Intel meno noti. L'SN74S409-20, in basso, fabbricato da Monolithic Memories Inc., è un controller di DRAM che supporta chip da 16, 64 e 256 kbit, fino ad un massimo di 1 MWord: una singola unità può gestire direttamente fino a 88 chip di memoria, con un ritardo di propagazione medio di 25 ns. Implementa una varietà di modi di funzionamento ed interfacciamento con le memorie (ad esempio, accesso e rinfresco automatici oppure controllati dall'esterno). E' pienamente compatibile con il DP8409 fabbricato da National Semiconductor.

L'Intel 82389 è un Bus Interface Controller single-chip per lo standard Multibus II. Il Multibus è un bus asincrono per sistemi a microprocessore sviluppato da Intel negli anni Settanta (è stato introdotto nel 1974) e successivamente definito nello standard IEEE 796. Ebbe notevole successo negli anni Ottanta, soprattutto in campo industriale, grazie sia alle favorevoli specifiche tecniche che al supporto fornito da Intel alla sua diffusione. Multibus è un bus multi-master ed è in grado di connettere periferiche con diverse velocità di trasmissione dati mantenendo comunque il massimo throughput. Le specifiche originali (note anche come Multibus I) prevedevano indirizzi a 20 bit, offrendo così uno spazio di indirizzamento di 1 MB e 1.024 K locazioni di I/O. Le schede in standard IEEE 796 misurano 300 per 171 millimetri e sono dotate di due distinti bus di backplane: il primo (P1), più grande, è il connettore Multibus vero e proprio mentre il secondo, più piccolo (P2), è chiamato "Private Bus". Le specifiche Multibus comprendono in tutto 4 bus di sistema: il Multibus System Bus o MSB (IEEE 796), l'iSBX (I/O Expansion Bus definito dallo standard IEEE p959), l'iLBX (Local Bus Extension) ed il Multichannel I/O Bus. Nel 1987 venne introdotta e poi (1994) standardizzata come IEEE 1296 la versione Multibus II a 32 bit, più veloce (40 MB/s, 10 MHz) e basata su un diverso formato di scheda, simili ma più grandi delle schede VME Eurocard. Le schede Multibus II utilizzano per le connessioni di backplane connettori in standard DIN 41612. Il Multibus è stato impiegato da molti produttori di hardware, ad esempio Sun Microsystems (Sun 1 e 2, in standard IEEE 796), HP (workstation Apollo), Silicon Graphics (SGI IRIS).

Il Raytheon G593222-2, a sinistra, è un ASIC per applicazioni militari proveniente da un'apparecchiatura avionica. A destra, il C-Port (Motorola) C-5 DCP -qui un Engineering Sample del 2001- è un processore di comunicazioni multicore, con 17 nuclei di elaborazione (core) RISC ad architettura Harvard, uno per ciascun canale dati gestito, contenenti un DSP, memorie dati ed istruzioni a 4 porte, e 32 Serial Data Processors progettati per il trattamento dei dati nelle comunicazioni ad alta velocità (ad esempio ADSL, ATM, FibreChannel). Esso integra anche 5 coprocessori ausiliari per la gestione del traffico di rete. Realizzato con processo CMOS a 0,18 micron, funziona a 200 MHz e contiene 56 milioni di transistor. Il package è BGA ad 838 punti di saldatura.

Vedi: http://www.hotchips.org/wp-content/uploads/hc_archives/hc12/hc12pres_pdf/C-Port.PDF 

Tre ASIC PGA per applicazioni di networking. A sinistra un ASIC CMOS sviluppato da Zarlink (1995). Zarlink era un produttore specializzato nella progettazione e realizzazione di componenti per telecomunicazioni e telefonia, applicazioni mediche e reti locali; nel corso degli anni ha man mano ceduto a terzi i propri impianti di fabbricazione fino a diventare una compagnia "fabless". Zarlink nacque come entità autonoma dalla cessione della divisione semiconduttori della Mitel Corp., che a sua volta era essenzialmente la GEC-Plessey Semiconductors che dalla Mitel stessa era stata acquisita nel 1998. Venne assorbita nel 2011 dalla Microsemi.  

Il chip a sinistra è, molto probabilmente e stando alla sigla (CF99070) nonché alla sua somiglianza con altri integrati TI dello stesso periodo,  un gate array CMOS fabbricato da Texas Instruments. In questo sito è visibile un componente simile, assieme ad altri due marcati in modo diverso, genericamente presentati come ASIC (chip custom) per usi militari. Che si tratti di un ASIC è provato dalla sigla "CF" (Custom Function). Al centro in basso un interessante prototipo di gate array bipolare ECL VLSI appartenente alla serie Q20000 di AMCC. Una descrizione di questa famiglia di integrati assieme ad una serie di documenti in formato PDF si può trovare qui: http://www.donnamaie.com/AMC_Arrays_Q20000.html. Essa è stata prodotta dal 1984 fino al 1995, anno in cui la AMCC (Applied Micro Circuits Corporation) ha abbandonato il mercato degli ASIC a causa della forte concorrenza di altri produttori (es. Xilinx, Altera). AMCC ha prodotto anche serie di GA CMOS e BiCMOS. Il chip National Semiconductor visibile al centro in alto è un prototipo difficilmente identificabile dal momento che la presumibile sigla (MM9709) sembra non corrispondere a nessun componente NS noto. Il chip a destra è invece un FPGA ATT3090, compatibile pin-to-pin col più famoso XC3090, fabbricato da AT&T su licenza Xilinx.

Il 10G021A è un flip-flop di tipo D appartenente alla famiglia 10G PicoLogic prodotta da GigaBit Logic (GBL), capace di funzionare ad una frequenza massima di 2,7 GHz. I membri di questa famiglia sono integrati logici all'arseniuro di Gallio (GaAs logic), che offrono tempi di commutazione sensibilmente inferiori rispetto ai corrispondenti circuiti al Silicio. Ciò perché l'arseniuro di Gallio è un semiconduttore caratterizzato da una mobilità dei portatori liberi di carica (elettroni) superiore rispetto al Silicio ed anche al Germanio. L'impiego di circuiti di questo tipo nel campo dei calcolatori elettronici si deve principalmente alla Cray Research, che li utilizzò per la prima volta nel supercomputer Cray 3. La GigaBit Logic stessa è stata fondata dalla Cray nel 1987, allo scopo di sopperire alla mancanza di terze parti produttrici di integrati logici GaAs sufficientemente veloci ed affidabili. Dopo aver toccato l'apice alla fine degli anni Ottanta,  l'interesse per gli integrati all'arseniuro di Gallio declinò rapidamente verso la metà del successivo decennio, in conseguenza della raggiunta capacità di fabbricare logiche CMOS al Silicio con frequenze di lavoro paragonabili a quelle dei circuiti GaAs; il Cray 3, da parte sua, ebbe una diffusione limitata a causa della significativa riduzione degli investimenti in tecnologie informatiche messa in atto dal Dipartimento della Difesa USA (all'epoca uno tra i principali acquirenti dei supercomputer Cray più potenti) conseguente alla fine della Guerra Fredda ed alla progressiva distensione dei rapporti con l'ex-URSS. Da quel momento in avanti gli integrati all'arseniuro di Gallio sono rimasti sempre confinati ad applicazioni specifiche, in modo particolare nel campo delle telecomunicazioni (integrati che lavorano nel campo delle microonde, anche noti come MMIC) ed in alcune applicazioni militari. L'arseniuro di Gallio è comunque utilizzato anche nella fabbricazione di diodi laser nella banda dell'infrarosso e di celle solari ad alta efficienza impiegate nell'alimentazione dei satelliti.

Il Fujitsu FMM362 è un flip-flop JK all'Arseniuro di Gallio capace di funzionare ad una frequenza massima di 5 GHz.

Pregi e difetti dell'arseniuro di Gallio

Come detto prima, un rilevante pregio dell'arseniuro di Gallio è l'elevata mobilità degli elettroni nel reticolo cristallino, che permette di fabbricare transistor capaci di lavorare a 250 GHz ed oltre. Altre caratteristiche positive sono: 1) la scarsa sensibilità alle variazioni di temperatura; 2) il minore rumore di fondo rispetto al Silicio e 3) l'alta resistività, utilissima nella produzione di circuiti per microonde. A fare da contraltare a questi lati positivi ve ne sono, tuttavia, altrettanti (se non di più) negativi. Il principale svantaggio di questo semiconduttore rispetto al Silicio è rappresentato dalla sua relativa scarsità (il Silicio è invece abbondantissimo in natura e risulta perdipiù  molto facile da estrarre) unita al superiore costo di fabbricazione dei componenti che lo utilizzano. Il secondo grande vantaggio del Silicio è dato dall'esistenza del suo ossido nativo, che può essere convenientemente utilizzato come isolante nei circuiti integrati dal momento che un film sottile da esso costituito aderisce perfettamente al substrato di Silicio non ossidato; l'arseniuro di Gallio non possiede invece un simile ossido ed è quindi più difficile creare film isolanti perfettamente aderenti al substrato, quale che sia il materiale da cui sono formati. Il terzo elemento a favore del Silicio è l'elevata mobilità delle cosiddette lacune (hole) nella struttura cristallina, il che consente la realizzazione di veloci transistor FET a canale P, condizione a sua volta essenziale per fabbricare integrati CMOS capaci di lavorare a frequenze elevate. L'arseniuro di Gallio, di contro, presenta una mobilità assai elevata per gli elettoni (portatori liberi di carica) contrapposta ad una sensibilmente inferiore per le lacune, impedendo di fatto la realizzazione di strutture MOS complementari (CMOS, appunto). Inoltre, il Silicio - dotato di una struttura cristallina estremamente regolare e con bassa densità di impurità - permette di raggiungere densità d'integrazione più elevate, presentando nel contempo minori problemi di surriscaldamento, dal momento che esso è un buon conduttore di calore. I wafer di Silicio possono essere infine più grandi di quelli di arseniuro di Gallio, consentendo così una migliore economia di scala nella fabbricazione dei circuiti integrati, sempre a motivo dell'elevata stabilità della sua struttura cristallina.

Il Motorola XC88410RC-50 è un secondary cache controller (controller della cache di secondo livello) per sistemi basati su CPU RISC 88110 singola oppure SMP. Una breve descrizione si può trovare in questa pagina. Un integrato concettualmente simile è il cache controller MC88200 che si integra con la CPU 88100. Anch'esso contiene un'unità di gestione della memoria (MMU) ed una cache associativa. Per ciascuna cache (dati ed istruzioni) sono richiesti due chip 88200, ed altri ne possono essere aggiunti per incrementare la dimensione delle cache. Questo schema, ideato per garantire flessibilità in fase di progettazione del sistema, porta in realtà ad un incremento sia dei costi di implementazione che della complessità circuitale, dato il numero di componenti richiesti. L'88200 contiene circa 750.000 transistor (contro i circa 160mila della CPU), l'88410 ha circa 1,3 milioni di transistor integrati. Entrambi sono stati largamente impiegati nei sistemi basati su microprocessori 88K (ad esempio, i minicomputer DG AViiON). Esistono tuttavia altri componenti sviluppati da terze parti che svolgono le medesime funzioni offrendo però, nello stesso tempo, maggiori semplicità ed integrazione. 

The MC88410 is a highly integrated secondary cache controller for the MC88110 microprocessor that reduces memory latency and extends multiprocessing capability for those seeking the highest level of system performance. Used with the MCM62110 Fast Static RAM, it provides a functionally complete secondary cache solution for both uniprocessor and multiprocessor environments. The MC88410 provides tag, control and buffering for 1/4, 1/2, and 1 Mbyte secondary cache configurations, all in a single chip cache controller. The MC88410 eliminates external logic between the processor and the secondary cache, provides bus arbitration for the MC88110, and requires no external programming. The MC88410 and MCM62110 are optimized to provide low latency memory access to the MC88110 processor. Initial accesses incur only one wait state. Subsequent transactions in a burst incur zero wait states. Data streaming to the processor reduces the penalty on secondary cache misses. The MC88410 expands the MC88110’s system flexibility by providing a choice of secondary cache line size, burst byte ordering, and system clock frequency. The MC88410 extends the MC88110 multiprocessing capability by significantly reducing system bandwidth consumption. This increased available bandwidth, along with the MC88410’s hardware enforced cache coherency protocol, enable the implementation of dual bus systems and scalable shared–bus multiprocessing systems.

I due chip VLSI a sinistra sono ASIC in package PGA, entrambi non identificati con esattezza. L'AT&T Cache+, secondo da destra, è invece un cache controller/MMU impiegato nelle workstation Sun SPARCstation IPX (vedi: http://www.obsolyte.com/sun_ipx/). Il chip all'estrema destra, siglato Sun DVMA, è un IOMMU (Input/Output Memory Management Unit) usato nei sistemi con architettura Sun 4c. L'unità IOMMU si occupa della connessione tra un bus di I/O che supporta il DMA alla memoria centrale (main memory). Come la MMU traduce gli indirizzi di memoria virtuali, visibili alla CPU, in indirizzi di memoria fisici, così la IOMMU "trasforma" gli indirizzi virtuali di I/O visibili dalle periferiche nei corrispondenti indirizzi fisici di memoria, occupandosi anche della protezione della memoria stessa.

Vedi: http://en.wikipedia.org/wiki/IOMMU

Questo integrato PGA fabbricato da VLSI Technologies (1991) proviene dal sottosistema di I/O del minicomputer Solbourne Series5, una macchina SMP basata su CPU SPARC (Cypress CY7C601) a 33 MHz e bus locale KBus a 64 bit. La scheda è visibile qui: http://danjuliodesigns.com/resume/solb_io.html

Vedi: http://danjuliodesigns.com/resume/solbourne.html  

Questo chip NCR di difficile identificazione proviene da uno stock di componenti impiegati nell'assemblaggio di server multiprocessore.

Il chip in alto a destra (Rockwell C6399-X4) è un prototipo di coprocessore per la gestione del protocollo di rete IPX/SPX usato in alcuni modelli di terminali per reti Novell. "IPX/SPX" sta per Internetwork Packet eXchange/Sequenced Packet eXchange; questo protocollo di livello 3 (IPX) e 4 (SPX) deriva dal più vecchio NCR IDP/SPP ed è stato utilizzato primariamente da applicazioni client/server Novell. La funzioni di connettività offerte sono simili a quelle del protocollo TCP/IP; l'IPX/SPX è stato progettato per l'uso nelle reti locali, ambito nel quale offre prestazioni superiori al TCP/IP, che pure è diventato uno standard di fatto a motivo del suo miglior comportamento in Internet e nelle reti WAN (Wide Area Network). Il protocollo IPX/SPX è stato introdotto nel 1983 ed ha avuto il periodo di massima diffusione tra il 1985 e la prima metà degli anni Novanta, quando è stato gradualmente soppiantato dall'oggi universale TCP/IP. Il chip IIT VP2F-33 (in basso a destra) è un processore video single-chip introdotto nel 1990 ed utilizzato nella compressione/decompressione MPEG ed MPEG-II. Il VP2F contiene un core (nucleo) RISC a 33 MHz ottimizzato per l'esecuzione di algoritmi DCT e basato su 16 unità logico-aritmetiche (ALU) a 8 bit operanti in parallelo, cui si aggiungono 4 moltiplicatori hardware a 16 bit ed una serie di shifters e registri indice per l'esecuzione in hardware delle operazioni di motion estimation (valutazione del movimento) tipiche della compressione MPEG. La scheda a sinistra contiene chip Harris e AMI e proviene da strumentazione avionica.

Il TRW 1022 (a sinistra in alto) è un sommatore (adder) floating point a 22 bit con accumulatore che si può utilizzare in unione al moltiplicatore 16x16 TDC1010 e alla ALU TDC1033. Questa configurazione è stata impiegata in svariate architetture di processori floating point sviluppate nel corso degli anni Ottanta (vedi ad esempio questo articolo: https://www.google.com/patents/US4792894), utilizzati ad esempio nell'elaborazione di immagini e nella compressione/decompressione MPEG. Può funzionare ad una frequenza massima di 10 MHz. Il Weitek WTL1233 (a sinistra in basso), qui nella versione a 8 MHz con specifiche estese di temperatura, è una ALU in virgola mobile (floating point) con annesso moltiplicatore hardware 16x16. Introdotto all'inizio del 1983, è stato uno dei primi prodotti Weitek di questa categoria ed ha avuto un buon successo commerciale, tanto da essere clonato nell'ex-URSS (come d'altra parte il TRW TDC1010 di cui sopra). Il TRW 2246HSC, infine (a destra) è un processore d'immagine CMOS che realizza in hardware alcune operazioni specifiche su immagini bitmap come la rotazione, l'inversione, il ritaglio, l'applicazione di filtri ed il resampling. Si tratta di un integrato specializzato che è stato impiegato in molti progetti di processori d'immagine. La TRW, fondata nel 1901 ed acquisita nel 2002 dal gruppo Northrop Grumman, è stata un'azienda attiva in molti campi, dal settore automobilistico, all'elettronica, all'aerospaziale fino al credit reporting (valutazione della solvibilità e del rischio di credito). Essa è nota per aver guidato lo sviluppo del primo missile balistico intercontinentale (ICBM) americano, l'SM-65 Atlas, e per aver partecipato alla progettazione e realizzazione delle sonde spaziali Pioneer 0, 1 e 2 nonché degli osservatori spaziali HEAO e Chandra X-Ray. Nel 1963 TRW ha sviluppato il primo satellite dedicato alla rilevazione di esplosioni atomiche, il Vela. Nel campo dell'elettronica TRW ha sviluppato principalmente integrati dedicati all'elaborazione digitale di segnali (DSP) ed immagini.

A sinistra in alto, il Weitek 8601 (1991), o WTL-8601, è un processore con architettura SPARC noto come SPARC Power-Up o SPARC Power μP. Funziona internamente a 80 MHz, raddoppiano la frequenza di clock esterna di 40 MHz. Poteva essere installato, ad esempio, sulle workstation Sun SPARCstation 2 e SPARCstation IPX, fornendo un incremento di prestazioni pari a circa il 60% rispetto alla CPU originale. Qui è visibile la versione con specifiche di temperatura estese per uso industriale e militare. A sinistra in basso, il Weitek 3132, o XL-3132 (1991), è una FPU per processori MIPS, funzionante a 100 MHz. Al centro, il Texas Instruments SN74ACT8867GA (1988) è una FPU appartenente alla famiglia "88", della quale fanno parte, fra gli altri, l'8847 e l'8837. Si tratta di un'unità floating point funzionante ad una frequenza di clock di 40 MHz ed impiegata ad esempio con le CPU SPARC di prima generazione. A destra, il TRW TDC-1008 (1979) è un moltiplicatore-accumulatore floating point a 22 bit largamente utilizzato nella realizzazione di architetture DSP bit-slice, comuni prima dell'affermarsi dei DSP a singolo chip. Il TRW 112KJ4C, infine, è un'ALU floating-point anch'esso utilizzabile per creare DSP bit-slice.

A sinistra in alto, il TMS320C30 (1991) di Texas Instruments (vedi: http://www.ti.com/lit/an/spra397/spra397.pdf) è stato un fortunatissimo DSP floating point a 32 bit ad elevata integrazione, appartenente alla famiglia TMS320 (introdotta nel 1983 con il TMS32010). Con un ciclo macchina di 60 ns, ha una velocità di elaborazione di circa 16 MIPS ed uno spazio di indirizzamento di 16 MWord a 32 bit. E' fabbricato con processo CMOS a 1 micron. Il 320C30 è stato il primo membro della sua famiglia a supportare il cosiddetto branch delay slot (vedi). Come gli altri DSP TMS320x, esso su basa su un'architettura Harvard modificata (MHA, Modified Hardvard Architecture), che consente l'accesso alla memoria delle istruzioni così come se fosse la memoria dei dati. La flessibilità e le caratteristiche del 320C30 (tra cui la presenza di una MMU, di un controller di DMA e di canali di I/O integrati), unitamente alla sua potenza di calcolo, hanno fatto sì che esso fosse utilizzato non solamente come DSP vero e proprio, ma anche sia come coprocessore floating point che, in alcuni casi, come CPU a tutti gli effetti. Svariate schede grafiche 3D di alto livello degli anni '90 impiegano uno o più 320C30 per l'esecuzione dei calcoli di geometria ed applicazione delle luci. Il TMS320-DSP MVP, o TMS320C80 (a sinistra in basso) è uno speciale DSP multicore introdotto nel 1994 e concepito per l'elaborazione di flussi audio e video in tempo reale: la sigla "MVP" sta infatti per "Multimedia Video Processor". Esso integra 4 DSP ed un coprocessore floating point, oltre alle cache ed alla circuiteria di supporto. Il 320C80 è stato uno dei primi processori ad integrare un CODEC MPEG-1. Al centro, il WE (AT&T) DSP32 che è stato uno dei primi DSP commerciali fixed point a 32 bit, single-chip. A destra, l'ADSP-2101 (alto) ed il 21020 (basso); quest'ultimo è un DSP a 32/40 bit superscalare, floating point, dal quale discende l'attuale famiglia Analog Devices SHARC. Eseguendo la maggior parte delle istruzioni in un singolo ciclo di clock, è capace di circa 33,3 MIPS e 100 MFLOPS di picco. Il 2101 è invece un DSP fixed point a 16 bit basato su 3 unità di elaborazione indipendenti (ALU, moltiplicatore/accumulatore, shifter) e caratterizzato da una prestazione massima di circa 25 MIPS. E' stato utilizzato in un gran numero di applicazioni embedded ed audio/video, risultando alla fine degli anni Novanta tra i DSP più popolari. 

Vedi: http://www.zmitac.aei.polsl.pl/Electronics_Firm_Docs/ANALOG/AD/sp_21020.pdf.

Processore grafico CMOS Texas Instruments TIGA 34020 a 40 MHz in package PGA con specifiche militari. Il TIGA, acronimo di Texas Instruments Graphics Architecture, era uno standard per interfacce grafiche ad alta risoluzione, indipendente dall'architettura di sistema, introdotto nel 1986 con la presentazione del processore grafico 34010 a 32 bit e successivamente perfezionato nel 1989. Lo standard TIGA era progettato per una varietà di applicazioni (CAD e desktop publishing, interfacce grafiche a finestre); nonostante la superiorità tecnologica delle specifiche e delle schede che lo implementavano rispetto alle ordinarie CGA/VGA dell'epoca, non ebbe la diffusione sperata a causa del costo e della sua relativa complessità, rimanendo confinato a pochi prodotti in genere di fascia elevata, anche in ambiente Unix/X Window, a parte qualche rara applicazione nel settore "consumer". Il processore 34010, come il suo più potente successore 34020, era a tutti gli effetti una CPU e come tale poteva essere programmato. Si differenziava in questo dalla maggior parte degli altri processori grafici, come ad esempio l'Intel 82786, che pur essendo programmabili non offrivano la medesima flessibilità né una potenza di calcolo paragonabile. Lo scarso successo commerciale dello standard TIGA favorì invece i produttori di schede video cloni dell'IBM 8514, presentata nel 1987: si ebbe in questo modo una rapida transizione, nel mercato delle schede grafiche di fascia alta, dai prodotti "accelerati" con l'impiego di veri e propri processori, quali il 34010/020 o i vari DSP verso le soluzioni cosiddette fixed-function come la 8514 ed i suoi innumerevoli cloni, che dominarono la scena per molti anni fino all'avvento delle prime GPU basate su shader. Uno degli effetti di lungo termine dell'architettura TIGA si ritrova ancora oggi nell'indipendenza dall'hardware delle API grafiche di Windows, risalente all'introduzione della versione 3.0.

Vedi: http://www.ti.com/lit/ds/spvs002c/spvs002c.pdf; http://www.ti.com/lit/ds/spvs004d/spvs004d.pdf

Anche: https://www.youtube.com/watch?v=730tmDmzeDE

DSP Texas Instruments TMS320VC33 (SMJ320VC33HFGM150), in package PQFP-132. Si tratta di un DSP floating-point a 32 bit, con indirizzi a 24 bit, appartenente alla famiglia TMS320C30; contiene 34K di RAM statica a due porte, un boot-loader, una porta seriale ed un controller di DMA a singolo canale. E' fabbricato con processo CMOS a basso consumo e richiede un'alimentazione singola a 1,8-3,3 V.

Coppia di DSP Texas Instruments TMS320C30 su una scheda grafica Power GT3i per workstation IBM RS/6000 con bus Microchannel (MCA). Il DSP a destra riporta un copyright di IBM che si riferisce al codice contenuto nella ROM interna. La scheda Power GT3i era una soluzione economica, benché dalle buone prestazioni, per il CAD/CAM e la grafica 2D commercializzata tra il 1993 e la fine del 1995 (Option Code 2768, etichetta identificativa sulla scheda 1-9). Benché sensibilmente meno potente della versione GT3, offriva un ottimo rapporto prezzo/prestazioni che l'ha resa una delle schede grafiche più popolari degli anni Novanta sulla piattaforma RS/6000. La scheda GT3i ha un singolo frame-buffer a 8 bit realizzato con DRAM da 70 ns e supporta una risoluzione massima di 1.280x1.024 alle frequenze di 60 oppure 77 Hz; può visualizzare 256 colori contemporanei presi da una palette di 16,7 milioni di colori. Le API grafiche supportate comprendono Xlib, GKS (Graphical Kernel System, storicamente il primo standard ISO per la computer grafica, introdotto nel 1977), Display Post Script, graPHIGS e PEXlib.

Scheda Power GT4x (IBM 41F0499/52G1343) per macchine IBM RS/6000 basate su bus MCA, con 6 DSP Texas Instruments TMS320C30GEL (1994). Era una scheda grafica 3D ad alta risoluzione, con profondità di colore a 24 bit, per applicazioni di CAD ed OpenGL. In accoppiata con i display IBM 5081 e 6091 poteva offrire una risoluzione massima di 1280x1024 con 16 milioni di colori alla frequenza di 60 oppure 77 MHz. Il RAMDAC opera a 150 MHz.

Scheda PCI GreenICE fabbricata da ICE - Integrated Computing Engines (1996), contenente 16 DSP floating-point Analog Devices ADSP-21062 "SHARC". Ciascun lato della scheda ha 8 DSP; una scheda ausiliaria (daughterboard) svolge le funzioni di controllo ed interfaccia col sistema host. La GreenICE -presentata al convegno SIGGRAPH del 1996- era un prodotto di fascia alta, commercializzato soprattutto negli USA fino al 1998, orientato prevalentemente alle applicazioni "DSP-intensive" quali l'elaborazione di flussi video, l'applicazione di effetti su MPEG, l'analisi di immagini, l'elaborazione in tempo reale di immagini bitmap di grandi dimensioni. Esistevano specifici driver sia per Windows NT che per Unix e MacOS 8.5/9. La potenza di elaborazione massima teorica era di circa 1,9 GFLOPS (ciascun DSP 21062 ha una prestazione di picco di 120 MFLOPS contro 80 MFLOPS medi, assumendo un ciclo di 25 ns ed una velocità di elaborazione di 40 MIPS). L'ADSP-21062 supporta sia la virgola mobile in standard IEEE-754, a precisione singola (32 bit) oppure estesa (40 bit) che il formato di dati fixed-point a 32 bit. Come altri membri della serie SHARC ha avuto notevole successo, soprattutto nel campo delle telecomunicazioni. Negli anni Novanta le schede DSP ebbero un periodo di relativa popolarità: esistevano parecchie soluzioni simili a questa, basate ad esempio su DSP Texas Instruments. Integrated Computing Engines ebbe una vita breve e travagliata: nata come fabbricante di soluzioni hardware ad-hoc per il settore della videografica e dell'elaborazione video (uno dei suoi prodotti più conosciuti è la scheda BlueICE, sempre basata su DSP, che consentiva di velocizzare l'applicazione di effetti speciali in filmati MPEG ad alta risoluzione), tentò senza troppa fortuna di entrare nel mercato delle soluzioni DSP di uso più generale e venne infine messa in liquidazione nel 1997. In Europa le schede Green- e BlueICE, caratterizzate da un buon rapporto prezzo/prestazioni (nel 1997 il prezzo finale della GreenICE era pari a circa 5.000 Dollari, non molto se si considera la potenza) sono state vendute soprattutto come parte di pacchetti professionali per l'elaborazione video su piattaforma MacOS. La famiglia SHARC facilita la realizzazione di soluzioni con più processori operanti in parallelo dal momento che questi DSP possono essere collegati a formare un sistema multiprocessore (fino a 6 vie) a memoria condivisa senza l'aggiunta di componenti esterni (glue logic); un maggiore grado di parallelismo si può comunque ottenere in modo semplice, con un limitato numero di connessioni tra chip. In questo caso gli ADSP-21062 sono contenuti in package plastico "thermally enhanced", ovvero con inserto in Alluminio per facilitare la trasmissione del calore, di tipo MQFP-PQ4 a 240 pin.

Il Motorola 96002, qui in versione a 40 MHz, è un DSP floating-point (standard IEEE 754) a 32 bit, di fatto l'unico membro della famiglia Motorola 96000 (96K). Compatibile con la precedente famiglia Motorola 56000, questo DSP è compatibile a livello software con i predecessori ma rispetto ad essi implementa il completo supporto al floating-point a precisione singola. Come nel caso dei DSP 56K, più registri -in questo caso a 32 bit- possono essere raggruppati per costituire un registro accumulatore a 96 bit. Il 96002 ha avuto un successo commerciale molto inferiore a quello della fortunata famiglia 56K ed è stato prodotto solamente per un breve periodo di tempo.

The DSP96002 is designed to support intensive graphic image and numeric processing. It is a dual-port, low-power, general purpose floating-point processor. The DSP includes 1024 words of data RAM (equally divided into X data and Y data memory), 1024 words of fullspeed on-chip Program RAM, two data ROMs, a dual-channel Direct Memory Access (DMA) controller, special on-chip bootstrap hardware, and On-Chip Emulation (OnCE™) debug circuitry. The Central Processing Unit (CPU) consists of three 32-bit execution units operating in parallel. The DSP96002 has two identical memory expansion ports with control lines to facilitate interfacing SRAMs, DRAMs (operating in their fast access modes), and Video RAMs (VRAMs). Each port can be configured as a Host Interface (HI), which facilitates easy interface with other processors for multiprocessor applications. Linear arrays of DSP96002s can be implemented without glue logic. The MPU-style programming model and instruction set allow straightforward generation of efficient, compact code. The high speed of the DSP96002 makes it well-suited for high bandwidth and numerically intensive applications that require floating-point processing and access to large memory subsystems (vedi: http://cache.freescale.com/files/dsp/doc/inactive/DSP96002.pdf). 

L'Harris HSP45116, a sinistra, è un componente specializzato che integra un oscillatore a controllo digitale (NCO, Numerically Controlled Oscillator) ed un moltiplicatore/accumulatore a 16 bit ad elevata velocità (CMAC, Complex Multiplier/ACcumulator). Questa combinazione consente di effettuare in modo rapido la moltiplicazione tra un vettore in input ed un altro vettore generato internamente, operazione utile nella modulazione/demodulazione in quadratura. Il 74AS888 di Texas Instruments (al centro in basso) è una ALU completa ad 8 bit, o più precisamente un Processor Slice sul tipo dell'AMD 2901/2903, che può essere adoperato per realizzare CPU bit-slice a 16, 32 e più bit. Il 74AS890, sopra, è una sua versione più evoluta e performante. L'IDT 49C402, a destra, è anch'esso un Processor Slice CMOS, però a 16 bit, con ALU che supporta la moltiplicazione/divisione in hardware e può rimpiazzare 4 bitslice AMD 2901/2903. Il chip Zoran ZR33891GC-20, all'estrema destra, è un filtro digitale programmabile CMOS a 8 celle (9 bit), o Digital Filter Processor (DFP) che esegue direttamente in hardware operazioni vettoriali come l'applicazione di filtri digitali FIR. Ciascuna delle sue 8 celle, collegate in cascata, contiene un moltiplicatore 9x9, tre registri ed un accumulatore a 26 bit. Il componente funziona ad una frequenza massima di 30 MHz, con una velocità effettiva dell'operazione Multiply/ACcumulate (MAC) di 240 MHz. Applicazioni tipiche del ZR33891 sono i filtri digitali FIR a 1 e 2 dimensioni, i filtri digitali adattativi, la moltiplicazione di matrici, l'elaborazione di numeri complessi, le operazioni di correlazione/convoluzione necessarie nella codifica JPEG ed MPEG.

L'Analog Devices ADSP-3201 (sinistra, qui in versione militare del 1988) è un moltiplicatore CMOS in virgola mobile a 32 bit in standard IEEE-754; accoppiato con l'ALU 3202 può formare un DSP microprogrammato a precisione singola con una velocità operativa di circa 10 MFLOPS. Il 3201 supporta dati a 32 bit a precisione singola sia  in virgola mobile che in virgola fissa (fixed point). Può eseguire un'operazione combinata di moltiplicazione-addizione tra operandi a 32 bit in 240 ns. E' fabbricato con processo a 1,5 micron, doppia metallizzazione, ed è contenuto in package PGA-144. Il Weitek 1066-10GCD (al centro, anch'esso del 1988 con specifiche MIL-STD-883 di classe B) è una memoria SRAM NMOS veloce, con 3 porte di scrittura e 3 di lettura, organizzata come register file dalla capacità di 32 parole (word) da 32 bit. La velocità di trasferimento massima è di 240 MB/s (4 traferimenti da 16 bit ogni 60 ns). Questo componente viene normalmente utilizzato come parte dei sistemi floating-point microprogrammati WTL-1232/1233, e WTL-2264/2265 e 1264/1265. Il Weitek 1066 contiene anche un'ALU in virgola mobile ed una ROM che insieme formano un'unità deputata al calcolo (approssimato) dell'inverso e della radice quadrata dell'inverso per ciascun valore memorizzato nei registri, il che è utile per velocizzare le operazioni di divisione ed estrazione di radice quadrata da parte dell'unità aritmetica centrale. Il TRW 2210G8C (destra), o TMC2210, è un moltiplicatore-accumulatore CMOS che accetta operandi a 16 bit e produce un risultato a 32 bit. E' fabbricato con processo Omicron-C a 1,5 micron, singola metallizzazione, e rimpiazza i precedenti modelli 2010 e 2110. La versione -G8C visibile qui esegue un'operazione di moltiplicazione-addizione combinata in 80 ns. Il TMC2210 è contenuto in package PGA-68 compatibile a livello di pin con quello del più comune ADSP-1010 di Analog Devices, un componente che ha le sue stesse funzioni. Tutti e tre gli integrati riprodotti qui sopra venivano solitamente impiegati in apparati radar e in processori di segnale per telecomunicazioni, oppure nell'elaborazione di immagini in campo medico.

L'STV3200C di ST Microelectronics è un integrato CMOS specializzato nell'esecuzione in hardware dell'algoritmo DCT (Discrete Cosine Transform), usato in svariate applicazioni di elaborazione digitale dei segnali.

Vedi: http://www.littlediode.com/datasheets/pdf/Datasheets-STV/STV3200.PDF

Il primo chip a sinistra è una MMU progettata per funzionare col microprocessore a 32 bit Motorola 68020 ed utilizzata negli Apple Macintosh II, IIx e IIfx nei quali era un componente opzionale. Nota come PMMU, è compatibile con l'Apple HMMU Chip (VLSI VI475) che in effetti non è una vera e propria MMU bensì solamente un traduttore di indirizzi da 24 a 32 bit per il sistema operativo MacOS. Il chip accanto proviene da un controller SCSI NCR (1989). Accanto si vede un chip Westinghouse in un insolito package PGA. Benché ciò sia poco noto, la Westinghouse è stata tra i primi produttori di circuiti integrati su scala industriale (fin dal 1961) e, grazie ai contratti con il Governo degli Stati Uniti, ha mantenuto attivi per molti anni impianti dedicati alla fabbricazione di componenti con specifiche militari, utilizzati principalmente in apparecchiature avioniche ed aerospaziali in genere. Essa tuttavia non è mai diventata un produttore di integrati commerciali, a parte una breve parentesi nei primi anni Sessanta. Il secondo chip da destra è un gate array CMOS Toshiba della serie TC190, con una capacità utile in questo caso di 47K gate NAND. Questo tipo di gate array è stato spesso impiegato in prodotti IBM. All'estrema destra si vede una SRAM ECL da 4 kbit 100474 fabbricata da NEC. L'organizzazione interna è 1.024 word per 4 bit, fully decoded; il tempo d'accesso medio è di 25 ns.

Vedi: http://www.forevermac.com/1987/03/apple-macintosh-ii/; http://www.lowendmac.com/ii/macintosh-ii.html.

Il gate array CMOS LSI Logic, a sinistra, è un processore di I/O utilizzato in alcuni controller SCSI-II fabbricati da Emulex. Il chip LCC bianco a destra, anch'esso un gate array LSI Logic (1985), proviene dal controller dell'hard disk "Widget" dell'Apple Lisa 2, un disco interno con capacità di 10 MB offerto in sostituzione dell'unità esterna ProFile. Il Widget aveva un'interfaccia proprietaria progettata e realizzata interamente da Apple.

L'AMD Am7970A è un Compression/Expansion Processor (CEP) per apparati facsimile (fax) a due tonalità, compatibile con le raccomandazioni CCITT, oggi ITU-T, T.4 e T.6 (vedi: http://www.datasheetarchive.com/AM7970DLC-datasheet.html). Questo chip implementa l'algoritmo di Huffman (Huffman coding: vedi http://it.wikipedia.org/wiki/Codifica_di_Huffman), un metodo di codificazione lossless, cioè senza perdite, molto diffuso nella compressione dei dati soprattutto quale complemento di altri metodi, come accade ad esempio nei codec JPEG ed MP3. Integrati quali il 7970 consentono la realizzazione di modem e terminali con un numero minimo di componenti. Il DM1883-A è un DMAC (controller di DMA) a 8 bit, prodotto da Western Digital (vedi: http://www.datasheetarchive.com/DM1883A-datasheet.html). E' stato un componente relativamente popolare negli anni Ottanta, ad esempio in unione al chipset WD1010 in molti controller di hard disk. L'FDC-3400 di SMC è un controller di floppy disk single-chip. Questo componente è significativo perché è stato il primo FDC commerciale di questo tipo, che non richiede cioè per funzionare la presenza di altri componenti (se non le interfacce). Il TMS38020JDL è un Protocol Handler (gestore di protocollo) Token Ring (IEEE 802.5) sviluppato da Texas Instruments in collaborazione con IBM ed appartenente al primo chipset commerciale per questo tipo di rete, il TMS380, del quale facevano parte anche il Communication Processor TMS38010, l'interfaccia di bus TMS38030 e le interfacce di rete TMS38051/2. Il WDC WD2840AN è un Local Network Token Access Controller utilizzabile con più tipi di comunicazioni e reti multipunto, su una varietà di mezzi di trasmissione (cavo, fibra, doppino telefonico). In sostanza si tratta di un processore di I/O ad alta integrazione che semplifica la realizzazione degli apparati di rete racchiudendo in un unico componente le principali funzioni di comunicazione. L'AMD Am29130 è infine un barrel-shifter CMOS a 16 bit espandibile a 32, 64 bit e così via mediante concatenazione di unità identiche senza penalizzazione in termini di velocità operativa. Questo componente è pensato per l'utilizzo in unità in virgola mobile, in processori grafici ed in DSP (ad esempio per l'esecuzione di calcoli FFT ad alta velocità).

L'Intel 80130 è un integrato noto come "Operating System Processor": si tratta di un chip di supporto per la famiglia Intel x86 che semplifica l'implementazione di microcomputer con sistema operativo iRMX86. Ha una ROM interna da 16 KB nella quale è contenuto il codice di 35 tra le più comuni chiamate di sistema dell'iRMX, oltre a circuiti di temporizzazione, un controller di interrupt simile all'8259 ed un baud-generator per comunicazioni seriali. iRMX era un sistema operativo multitasking in tempo reale (acronimo di Intel Real-time Multitasking eXecutive) sviluppato dalla Intel come evoluzione del precedente sistema RMX/80 per CPU 8080/8085 e della sua evoluzione RMX/86 (1976) per processori 8086/8088 ed architettura Multibus. Il rilascio iniziale è avvenuto nel 1980; attualmente le installazioni tuttora esistenti di questo sistema sono supportate da Tenasys Corporation in virtù di un contratto in esclusiva con la Intel. iRMX è un sistema operativo modulare a più livelli (layered): in ciascun sistema è possibile installare i soli moduli effettivamente necessari. iRMX supporta processi multipli (noti come jobs), e thread multipli all'interno di uno stesso processo.  

Il Motorola MC68340 (estrema sinistra, vedi: http://en.wikipedia.org/wiki/MC68340) è una CPU a 16 MHz con architettura M68K a 32 bit (derivata dal 68040) ad elevata integrazione con controller di DMA ed USART incorporati, adatta ad impieghi embedded nei quali in effetti è stata assai popolare. L'Hitachi HD63450 (secondo da destra) è un controller di DMA CMOS per CPU M68K. E' compatibile con la precedente versione NMOS 68450. Il 63450 offre 4 canali di DMA indipendenti a 8/16 bit con una velocità di trasferimento di 6,25 MB/s a 12,5 MHz. L'HD64400 GDP (Graphics Data Processor), fabbricato sempre da Hitachi (estrema destra) è un controller grafico CMOS ad alta integrazione a 32 bit, utilizzato prevalentemente in applicazioni industriali (es. schede VME) assieme a CPU M68K quali il 68030, il 68040 ed il 68360, con le quali può essere accoppiato direttamente. Il Fujitsu MB17302 (secondo da sinistra) è infine un DMAC (controller di DMA) a 10 MHz che può essere impiegato con più famiglie di CPU (x86, M68K..).

L'integrato a sinistra, fabbricato da Intel, riporta un P/N (Part Number) IBM, 43F9750. La sigla Intel è A60014D. E' difficile stabilire di che cosa si tratti esattamente, probabilmente di un microcontroller con codice personalizzato, visto il copyright IBM e le date dei copyright Intel nella parte bassa. Altrettanto difficile da identificare è il Fujitsu MB60306 al centro, che mi è stato indicato come generico gate array CMOS nel forum di CPU World. L'Intel 80C452P, a destra, è invece un processore di I/O programmabile ad elevata integrazione, in tecnologia CHMOS. A livello software è compatibile con i microcontroller della famiglia Intel MCS-51; funziona ad un clock massimo di 14 MHz e contiene 2 canali di DMA indipendenti, una FIFO bidirezionale da 128 byte, una RAM 256x8, 31 registri specifici per le funzioni di I/O, 40 linee di I/O, 2 timer programmabili a 16 bit.

Da sinistra a destra: un EPIC (circuito logico programmabile) EP1810JC fabbricato da Texas Instruments: questo stesso componente era prodotto anche da Altera e da altri produttori. A seguire due gate array CMOS fabbricati da Mostek per HP (a sinistra) e da Fairchild. Quindi una memoria FIFO da 1.024 x 18 bit (Texas Instruments SN74ACT7801) ed un ASIC LSI Logic impiegato nell'elettronica di alcuni esemplari di hard disk SCSI fabbricati da Control Data Corp. (CDC).

Il National Semiconductors DP8466 Disk Data Controller, di cui qui si vede un Engineering Sample del 1986, è un controller di hard disk single chip che può essere impiegato in sottosistemi ST506, MFM/RLL, ESDI, SMD, SASI e IPI, sia con dischi che con floppy disk ed unità ottiche. Si tratta di una periferica VLSI "intelligente" che si occupa in modo autonomo e trasparente della gestione del traffico di dati tra la CPU ed il sistema-disco, controllando le richieste di lettura e scrittura, di trasferimento di blocchi di dati, il DMA e così via. Il DP8466 contiene un'unità ECC a 32 oppure 48 bit, un canale di DMA a 32 bit (oppure due canali a 16 bit) ed una FIFO ampia 32 byte. La velocità massima di trasferimento dati in DMA è di 10 MB per secondo.

Due tipici controller LAN degli anni Ottanta: lo Zilog Z7990 "LANC", in alto -siglato "CS" cioè Customer Sample-, ed il Mostek MK68590 "LANCE" (in basso, con marcatura DEC), entrambi cloni del fortunato e diffusissimo AMD Am7990. Il 7990, introdotto da AMD nel 1985, era un controller Ethernet (MAC: Media Access Controller) compatibile con lo standard IEEE 802.3; si tratta di uno dei primissimi MAC single-chip disponibili sul mercato. La sua architettura ha rappresentato la base della fortunata famiglia di controller Ethernet AMD PC-Net. Il 7990 era fabbricato con tecnologia NMOS (più tardi ne venne prodotta anche una versione CMOS) e non conteneva, a differenza dei successori, né il codec Manchester né l'interfaccia 10Base-T. E' stato prodotto da una varietà di fabbricanti, come ad esempio la Zilog. Il Z7990 visibile qui appartiene alla prima versione di questo controller; le versioni fino alla C (REV C) erano conosciute per un difetto (bug) che causava talvolta l'inserimento di dati casuali all'inizio di ciascun pacchetto di dati ricevuto. Il chip Mostek in basso è una versione successiva (E) nella quale tale bug è stato corretto.

The Am7990 can handle 10BASE-5 Type A, 10BASE-2 Type B, and 10BASE-T. Back-to-back packet reception with as little as 0,5 µs interframe spacing. DMA/bus mastering 24-bit (16M) address capable. Up to 128 ring buffers can be used. 48 byte receive/transmit FIFO. Operates with 5 volt DC 5% supply and logic. Features an Time-domain reflectometer (TDR) with a granularity of 30 meter. 16,8 MHz maximum frequency.

Questo chip caratterizzato da un insolito package DIP a 40 pin è stato identificato come una ROM di caratteri impiegata in alcuni tipi di macchine telescriventi TeleType.

Alcuni integrati MOS provenienti da macchine TeleType, in particolare da telescriventi elettroniche ASCII Modello 43. Si tratta di memorie ROM.

Il DS5000 fabbricato da Dallas Semiconductor è un microcomputer per applicazioni embedded, in circuito ibrido a 40 pin contenente una CPU compatibile con l'Intel 8051 (o MCS-51), 64 KB di memoria RAM ed un timer programmabile.

Esempio di memoria SRAM CMOS da 64 KB realizzata come circuito ibrido contenente 4 integrati da 16 KB ciascuno. Questo è un Engineering Sample del 1984 fabbricato da ICI - Integrated Circuits Inc., un produttore specializzato nella realizzazione di moduli ad alta integrazioni quali memorie e convertitori A/D e D/A.

Due moduli di memoria realizzati su circuiti ibridi: a sinistra un modulo Harris da 64 KB (M5-6564, 1982) e a destra un modulo Hitachi con parità da 256 KB (1985).

Modulo multichip fabbricato da UTMC (UTMC Microelectronic Systems, Inc.) appartenente alla famiglia Aeroflex SuMMIT (scritto anche SμMMIT) di microcontroller ad alta integrazioni per applicazioni di avionica, rispondenti allo standard MIL-STD 1553. Quest'ultimo è uno standard, pubblicato dal Dipartimento della Difesa degli Stati Uniti - DoD nel 1973 e sottoposto a svariate successive revisioni, che definisce le specifiche di un bus seriale TDM (Time-Division Multiplexing) ad alta velocità per apparati avionici militari. E' stato usato in aerei militari quali l'F16, l'F15, l'F18, il Tornado, l'Eurofighter Typhoon ed il MiG 35. Oggi è stato soppiantato dallo standard civile IEEE-1384.

Vedi: http://www.aeroflex.com/ams/pagesproduct/prods-avionics-databusSummit.cfm.

Vedi: http://www.aeroflex.com/ams/pagesproduct/datasheets/SummitReferenceManualEntire.pdf.

In questa pagina Web è visibile l'interno del modulo ed una scheda che lo utilizza: http://www.cotsjournalonline.com/articles/print_article/100666

Due particolari (anche se non propriamente rari: è un tipo di package abbastanza diffuso, vedi ad esempio alcuni chip AT&T) moduli PGA a doppia cavità per uso militare fabbricati da DTI, Digital Technology Inc. (in alto) ed UTMC. E' probabile che si tratti di due componenti equivalenti. L'UT63M127-BPC, qui un esemplare del 1997, è un doppio transceiver appartenente alla famiglia Aeroflex SuMMIT (vedi sopra). E' stato prodotto fino al 2005.

Prototipo di modulo multi-chip per avionica (il fabbricante non è identificabile, la data è del 1992) contenente 4 chip di memoria.

Prototipo di gate array CMOS proveniente da un apparato GPS militare fabbricato da Honeywell. Dopo la fusione con la Allied Signal, società presente da molto tempo nel settore aerospaziale, la Honeywell (attiva nel campo della difesa e degli armamenti fino dalla Seconda Guerra Mondiale) ha sviluppato e commercializzato con il proprio marchio una vasta serie di apparati di navigazione per impieghi sia militari che civili, così come sistemi di guida inerziali e ricevitori GPS ad elevata precisione.

Tre ASIC in package ceramico per montaggio superficiale: i primi due da sinistra provengono da apparecchiature Nortel. 

8.8.2015 - Questo integrato, sviluppato dalla Daimler-Benz Aerospace (poi Daimler-Chrysler Aerospace o DASA, Deutsche AeroSpace Aktiegesellschaft) e prodotto da Matra Harris - MHS (1996), è un controller di interconnessione SpaceWire (CMOS a basso consumo Radiation Hardened, ovvero resistente alle radiazioni in ambiente spaziale, principalmente raggi cosmici) utilizzato in diverse applicazioni aerospaziali, tra cui ad esempio il processore di controllo dell'unità VIRTIS  sulla sonda spaziale Rosetta (vedi) e molte altre. Lo standard SpaceWire deriva dall'IEEE 1355 ed è stato sviluppato dall'Agenzia Spaziale Europea ESA in coordinamento con altri enti similari (NASA in primis). Questo è un esemplare di produzione testato e pronto per il montaggio.

Package ceramico a montaggio superficiale, non identificato con esattezza, molto probabilmente utilizzato per test elettrici e meccanici (1989): qualcuno riconosce il logo del produttore?

Engineering sample di package ceramico ad alta densità per montaggio superficiale con specifiche militari.

Integrato AT&T/Lucent del 1997, probabilmente un circuito ibrido, in un particolare package con 4 file di piedini. Questo tipo di dispositivo è stato utilizzato in alcuni modelli PABX (centralini telefonici automatici) AT&T negli anni Ottanta e Novanta.

Misterioso chip in package PGA "denso", siglato "CPU" (1998?), con lungo perno filettato per il dissipatore di calore (vedi a destra). Secondo chi l'ha venduto su Ebay proviene molto probabilmente da una macchina Honeywell/Bull.

Integrato VLSI CMOS in package PGA fabbricato da NEC ed utilizzato, ad esempio, in alcuni strumenti di misura Anritsu (1991).

Codec (codificatore/decodificatore) di fabbricazione sovietica per codifica Manchester, 1990, in forma di circuito integrato ibrido con specifiche militari. Questo componente veniva impiegato in stazioni di comunicazione con i satelliti.

Gate array CMOS VLSI di fabbricazione Russa per applicazioni militari, clone di analoga architettura LSI Logic.

Integrato a 64 piedini siglato SA5061A con marchio Bendix, 1985: la funzione è sconosciuta.

Prototipo di integrato per applicazioni di avionica, probabilmente Sperry oppure Bendix, 1986.

Tre diversi tipi (e package) di gate array Fujitsu: a sinistra, in package PGA ordinario, un modello CMOS a 0,8 micron (5.000 gate equivalenti); al centro, un CMOS a 0,5 micron con 9.000 gate equivalenti e package PGA ad alta densità (interstitial PGA, simile a quello impiegato ad esempio nella CPU SuperSPARC TMS390). A destra un prototipo, più precisamente un Engineering Sample, di gate array ECL bipolare a 0,8 micron da 3.000 gate equivalenti (tempi di propagazione di circa 180 ps per gate). Il dissipatore di calore nero a colonna è alto circa 2,5 centimetri; la base a circuito stampato (circa 3 x 3 cm) appare sfuocata perché l'immagine è stata acquisita con uno scanner piano. I primi due sono stati adoperati in vari modelli di mainframe. ICL, International Computers Limited, era un importante produttore britannico di hardware e software, attivo tra il 1968 ed il 2002. Durante gli anni Ottanta iniziò una lunga partnership tecnologica con la Fujitsu che in seguito, nel 1993, acquisì il controllo della ICL stessa commercializzandone i prodotti sui mercati asiatici. La serie di macchine ICL più nota e diffusa in Europa è stata la famiglia di mainframe 2900, prodotta a partire dal 1974 fino all'avvento durante gli anni Ottanta della più moderna Serie 39. Il gate array ECL a destra è dello stesso tipo di quelli utilizzati, ad esempio, in alcuni modelli di mainframe Fujitsu FACOM prodotti in Giappone, come la serie M-700. In questa pagina si può trovare una descrizione di tale famiglia di macchine. Anche la precedente serie FACOM M-300 impiegava gate array ECL, tuttavia con un minore livello di integrazione (da 400 a 1.300 gate equivalenti per chip) e tempi di propagazione più elevati (350 ps/gate). Nei mainframe M-300 i chip della CPU erano montati su apposite schede multistrato dette Multiple Chip Carriers (MCCs). I modelli entry-level erano realizzati con gate array LSI TTL da 2.000 gate equivalenti. Nelle macchine M-700 i gate array ECL della CPU erano invece montati tutti su un'unica scheda ampia circa 50 x 50 centimetri chiamata SSC o Sub-System Carrier; il raffreddamento avveniva ad acqua. Alcuni integrati ECL usati nella serie M-700 integravano circa 10.000 gate equivalenti. 

A destra, un gate array CMOS fabbricato da NEC (1988) appartenente alla famiglia uPD65000 (questo in particolare è un 65070S). Il CG51484 è un gate array Fujitsu CMOS a 0,5 micron utilizzato nei server Amdahl. Gli altri due sono gate array CMOS delle serie Fujitsu MB630 (in questo caso un Engineering Sample) e Fujitsu MB870.

Il chip all'estrema sinistra è un ASIC proveniente dalla scheda CPU di un server parallelo Sequent. Quello alla sua destra è un gate array LSI Logic utilizzato nelle node board GP-16 ed MP-16 dei supercomputer paralleli Intel Paragon con processori i860 ed in particolare uno dei due ASIC che interfacciano le CPU con la RAM locale (vedi). Il secondo chip da destra è un ASIC CMOS Fujitsu (MB87327B), probabilmente una MMU per le CPU Clipper (vedi). Il componente più a destra è un gate array LSI Logic fabbricato per la ELSCINT, un produttore Israeliano di macchinari e tecnologie per la diagnostica per immagini come macchine per TAC, risonanza magnetica ed ecografia.

Tre circuiti CMOS custom in package PGA per applicazioni militari. La sigla SOCN sta per SOurce Control Notation e, unitamente al Source Control PIN, identifica con esattezza il produttore ed il componente secondo le previsioni dello standard MIL-STD-130L (DoD Identification Marking of U.S. Military Property). Si tratta di integrati ASIC impiegati, probabilmente, in applicazioni di avionica; essi sono fabbricati rispettivamente da Texas Instruments (sinistra), TLSI (vedi il sito di questa azienda) e Vitesse Semiconductor Corp. (vedi), specializzata quest'ultima nella produzione di ASIC per telecomunicazioni e trasmissione dati.

Tre ASIC CMOS fabbricati da Motorola (1985, in package CLCC), Fujitsu (MB17302, 1987, PGA) e NEC (1988, a destra, anch'esso in package CLCC).

ASIC fabbricati da diversi produttori, tutti in package PGA: da sinistra National Semiconductor, LSI Logic per Alcatel, LSI Logic per Telettra, VLSI (cache/bus controller per server SMP basati su CPU Alpha 21164).

Vari tipi di ASIC CMOS in package PGA. Da sinistra: un prototipo di  gate array LSI Logic per server Unix Pyramid; un ASIC Texas Instruments per apparati Ericsson; un gate array LSI Logic con specifiche militari; un ASIC CMOS impiegato nella CPU di alcuni modelli di mainframe Bull.

Vari esempi di ASIC CMOS: da sinistra, LSI Logic per Compaq (1994, proveniente da un controller SCSI); Fujitsu (1990, gate array della serie MB630); Toshiba (1995, probabilmente un chip di supporto per il processore MIPS R8000 - Toshiba T5F52); Hitachi (gate array della serie HD60).

ASIC CMOS (gate array) fabbricato da Texas Instruments e contenuto in package PGA. Proviene probabilmente da una scheda Nortel.

Dettaglio di una scheda Nortel (OC48 Multiplexer/Demultiplexer) con un chip PGA simile a quello visibile sopra oltre a diversi altri ASIC.

ASIC CMOS fabbricati da Fujitsu, in package QFP ceramico.

ASIC standard-cell CMOS Fujitsu della serie MB65, in package PGA (1993).

All'estrema sinistra, un chip Digital/DEC (DC1089C) impiegato come controller di memoria in unione alla CPU Alpha 21264. Il chip Motorola (secondo da sinistra), con sigla HP 1820-8312, è un componente custom -vedi la sigla che inizia per XC-, con molta probabilità un gate array CMOS. Il NEC D65060R (1987), secondo da destra, è un membro della famiglia di gate array CMOS uPD65000, fabbricati con processo CMOS-3 e 2 micron, con una complessità compresa a seconda del modello tra 800 e 11.250 celle (gate). Ciascun gate è formato da 4 transistor, due a canale N e due a canale P, con interconnessioni a due livelli; i gate possono essere configurati, ad esempio, come porte NAND a due ingressi. La velocità di commutazione è di circa 2 ns, mentre il consumo medio è di circa 20 microwatt/gate per MHz di frequenza operativa. La progettazione circuitale avveniva con un apposito software CAD sviluppato e commercializzato dalla stessa NEC. Il Fujitsu MB60504 (estrema destra, 1985) faceva parte della famiglia di gate array CMOS Si-gate C-2000 o MB60K. Contiene 2.000 celle (gate) NAND a due ingressi e 72 celle di I/O; le interconnessioni si ottengono mediante due livelli di metallizzazione (maschere) in Alluminio e sono progettate e testate con un apposito software CAD distribuito dal fabbricante. E' contenuto in package PGA-64.

Dettaglio di una scheda T2027 - XMI to FDDI Adapter, per VAX 6000 (1993), con vari gate array CMOS LSI Logic, Toshiba e Motorola (in basso a sinistra). Sulla scheda c'è anche una CPU Motorola 68020 a 16 MHz.

Gate array CMOS fabbricato da LSI Logic, in package PGA a 432 piedini, su scheda DEC T2028 per VAX 7000 (1993). Si tratta di un bridge tra il bus di sistema Laser delle macchine 7000/10000 ed il bus XMI.

Tre ASIC CMOS fabbricati da LSI Logic, in package ceramico QFP per montaggio superficiale con dissipatore di calore integrato (1992), su scheda DEC T2080 per VAX 6000/500 (XMI to CI adapter). CI, abbreviazione di Computer Interconnect, è una tipologia di rete locale proprietaria introdotta da DEC con il VAX 11/780, che consentiva originariamente di connettere unità disco a più server VAX e di condividerle tra essi. Essa è in seguito divenuta parte delle più estese funzionalità offerte da VMScluster.

Il Cypress CY7C601 è un microprocessore RISC che implementa le specifiche dell'architettura (ISA) SPARC V7 a 32 bit. Rispetto ad altre CPU con la medesima architettura (quali il Fujitsu MB86900 - in realtà un gate array CMOS da 20K gate - e l'LSI Logic 64811) è considerato un processore SPARC di seconda generazione. Introdotto nella primavera del 1989, il CY7C601 è stato sviluppato da ROSS Technologies che all'epoca era una divisione della Cypress Semiconductors. Questo microprocessore CMOS, che esiste nelle versioni a 25, 33 e 40 MHz, non ha alcuna cache interna; la cache esterna è di norma ampia 64 KB ed è di tipo write-back con meccanismo di protezione della coerenza per l'applicazione in sistemi multiprocessore. Il CY7C601 è stato impiegato ad esempio nei server Sun SPARCserver 330 e nelle workstation SPARCstation 2. Con un'adeguata quantità di cache questa CPU esegue le istruzioni integer (su numeri interi) ad una media di 1,5 cicli di clock per istruzione, che corrispondono ad una velocità di calcolo compresa tra 10 e 20 MIPS a seconda della frequenza di clock. Il CY7C601 è realizzato con processo CMOS a doppia metallizzazione a 0,8 micron e contiene circa 1,8 milioni di transistor. Dopo l'acquisizione di ROSS da parte di Fujitsu nel 1993 venne rinominato RT601 ed utilizzato ad esempio nei moduli Mbus CYM6001K che equipaggiano gli SPARCserver 370 (assieme alla MMU CY7C604 ed alla FPU CY7C602). Nelle macchine Sun 4/3xx, note come "Stingray" e "Sunray", è affiancato dalla FPU Texas Instruments 8847.

Vedi: http://www.cpu-collection.de/?l0=co&l1=Cypress&l2=SPARC; http://www.cpu-museum.de/?m=Cypress&f=Sparc

Anche: http://www.cpu-world.com/forum/viewtopic.php?p=99241; http://www.chipdb.org/cat-sparc-1279.htm

CPU Sun MicroSPARC-II a 110 MHz, 1999, fabbricata da Fujitsu (MB86904). Il MicroSPARC è un processore a 32 bit a basso costo con FPU integrata, utilizzato soprattutto in applicazioni embedded ed in workstation entry-level (ad es. Sun SPARCstation 5) che implementa il set di istruzioni SPARC V8. Il MicroSPARC-II è una sua evoluzione operante a frequenze più elevate (a partire da 100 MHz), con un controller PCI integrato. E' stato fabbricato sia da Fujitsu che da LSI Logic ed è stato utilizzato ad esempio nella Sun JavaStation.

Il chip a sinistra è un prototipo di ASIC National che ho inserito per errore in questa immagine. A destra si vedono una CPU SPARC 64811GC-40 fabbricata da LSI Logic (L64811GC-40S FW DBA), appartenente alla prima generazione di processori SPARC (architettura V7), ed alla sua sinistra la MMU (L1A6345 FM DBA). "SPARC IU" sta per "SPARC Integer Unit": il supporto hardware per la virgola mobile è rappresentato da una FPU esterna quale la TMS390C601. Questa coppia di chip è stata impiegata in alcune workstation SPARC come la SPARCstation 2. 

Tre chip HP degli anni Ottanta: a sinistra, un chip TACO (TApe drive COntroller) siglato 5061-3012, sviluppato per l'HP 9845 ed utilizzato anche nell'unità nastro HP 9875. Contiene l'equivalente di 48 integrati logici TTL SSI e circa 80 componenti discreti; è realizzato con processo NMOS-III e funziona a 4 MHz. Si tratta a tutti gli effetti di un microcontroller (MCU) e non richiede né ROM né RAM esterne. Ricordiamo che il calcolatore 9845 era stato progettato secondo il paradigma cosiddetto della "intelligenza distribuita", affidando cioè a più processori autonomi dalla CPU di sistema il governo delle periferiche. A destra in alto un'unità LPU multichip, contenente 7 integrati (3 principali: Binary Processor Chip, BPC; Extended Math Chip, EMC; I/O Chip, IOC) e 4 integrati di interfacciamento. Il  modulo visibile qui, siglato 5061-3001, è la versione più recente di questo processore, include l'unità Address Extension (AEC) ed è stato usato nei calcolatori HP 9845B e -C sia come LPU (processore principale) che come PPU (processore ausiliario). Progettato tra il 1972 ed il 1973, contiene complessivamente circa 18.000 transistor ed assorbe 6 Watt. Questa CPU, nelle sue diverse versioni, è stata impiegata in svariate apparecchiature HP: i calcolatori 9825 e l'analizzatore di spettro 3585 (modulo 09825-67907); il calcolatore 9845A (5061-3010, LPU e 5061-3011, PPU); l'analizzatore di protocolli 4955A ed il sistema di sviluppo 64000 (5061-3011); il minicomputer HP 250 (5061-3043); l'analizzatore di spettro 8566A/8568A (5061-4204); il calcolatore HP 9845C (5061-3001 visibile qui). L'integrato 1818-2500 è sua una versione limitata contenente solo il chip BPC, utilizzata come controller in alcune periferiche HP (plotter, stampanti come HP 7220, 7221, 9872B/C). Una descrizione dettagliata di questi integrati si trova nella pagina http://hp9845.net/9845/hardware/processors/ assieme a schemi ed immagini dei vari componenti. Il componente in basso a destra, siglato D5061-3054, è probabilmente -il condizionale è d'obbligo mancando informazioni precise- un controller utilizzato negli oscilloscopi digitali HP 54100.

Fermacarte promozionale HP in resina trasparente, circa 1983, contenente il die di una CPU FOCUS. Impiegato nelle workstation e nei server della famiglia HP 9000-500 (che avrebbe dovuto chiamarsi HP 9020), FOCUS è conosciuto come il primo microprocessore single-chip a 32 bit. All'epoca in cui venne introdotto (1982) tutte le macchine a 32 bit (minicomputer, server e workstation) impiegavano processori bit-slice basati perlopiù su AMD 2900/2903 oppure su ALU TTL 74181. Il FOCUS (in alto a destra un dettaglio del chip contenuto nel fermacarte) era un processore CISC con architettura basata su stack, pipeline interna a 4 stadi, nessun registro di uso generale visibile dal programmatore e 220 istruzioni nel set. Esso impiegava uno schema di memoria segmentato con indirizzi a 29 bit, da cui uno spazio di indirizzamento diretto ampio 512 MB ("500 megabyte" nella brochure informativa di HP). Più in dettaglio la CPU FOCUS conteneva 39 registri, di cui 31 di uso interno ed 8 accessibili dal sistema operativo e/o dal software. L'architettura di sistema derivava in modo diretto da quella delle CPU a 16 bit utilizzate nelle macchine HP 3000 e fabbricate con tecnologia SOS (Silicon On Sapphire), tanto che, nella sostanza, era una sua re-implementazione a 32 bit reali (nel senso che tutti i registri ed i data-path interni erano ampi, appunto, 32 bit). La gran parte delle istruzioni erano orientate ai trasferimenti di dati tra la memoria e lo stack interno ed alle operazioni logiche oppure aritmetiche tra i dati contenuti in cima allo stack stesso. Quest'ultimo risiedeva nella memoria di sistema ed è probabile che alcuni dei 31 registri di uso interno servissero in effetti alla sua gestione. Il processore FOCUS era montato, assieme a 4 chip di supporto (MMU, processore di I/O, una DRAM 16Kx8 ed un timer programmabile) in un apposito modulo realizzato con una tecnologia particolare (finstrate) per garantire l'efficace dissipazione del calore. Era prodotto con processo NMOS-III a 1,5 micron con 2 livelli di interconnessione in Alluminio/Tungsteno. Lavorava ad una frequenza di 18 MHz e, con indirizzi a 19 bit, poteva indirizzare 512 MB di memoria. FOCUS era un progetto particolarmente complesso per i suoi tempi: conteneva infatti ben 450.000 transistor (la complessità era quindi paragonabile a quella dell'Intel iAPX/32). Come termine di paragone si consideri che la prima implementazione col medesimo processo produttivo dell'originale CPU PA-RISC, circa 5 anni più tardi, richiedeva non più di un terzo dei transistor totali del processore FOCUS. In questa pagina sono classificate varie CPU ed altri tipi di chip in base al rispettivo numero di transistor. Il microcodice era formato da 9.000 parole da 38 bit l'una. La prima macchina su cui è stato utilizzato era la workstation HP 9000-520 o HP 9020 "Dawn". L'architettura FOCUS supportava fino a 7 CPU o processori di I/O, IOP, per macchina (ciascuna sulla sua scheda con i propri chip di supporto), oltre ad un massimo di 15 controller di memoria (MC), che nella pratica si riducevano tuttavia a soltanto 3 CPU + 3 MC a causa dei limiti imposti dal sistema operativo e dalla degradazione dei segnali elettrici lungo il bus. Tipicamente le workstation basate su CPU FOCUS avevano tre moduli "finstrate": CPU, RAM da 256/512 KB e IOP. Queste schede erano interconnesse tramite un apposito bus locale chiamato Memory Processor Bus (MPB) a 44 bit con clock a 18 MHz, che offriva una velocità di trasferimento teorica di 36 MB/s. Secondo una "leggenda" che non ha mai avuto conferme ufficiali, il Governo degli Stati Uniti avrebbe imposte nel 1983 dei limiti all'esportazione verso certi Paesi delle workstation HP 9000-5xx, a motivo della loro elevata capacità di calcolo. Vero o no, rimane il fatto che queste macchine erano, senza dubbio, particolarmente avanzate per l'epoca - indipendentemente dalle prestazioni, da molti ritenute non all'altezza del costo e dell'architettura di sistema. La workstation 9000-520 è stata uno degli svariati sistemi desktop accreditati dal produttore, nel corso degli anni, del titolo di "mainframe da scrivania" (altri esempi: IBM RS/6000-320, SGI Indigo2...) Le prestazioni medie in virgola mobile erano di circa 5,9 microsecondi per l'esecuzione di un'addizione di due numeri a 64 bit e di circa 10,3 microsecondi per la moltiplicazione tra numeri floating-point sempre a 64 bit. Con dati interi (integer), invece, questi valori si riducevano a circa 0,28 microsecondi per l'addizione ed a 2,9 microsecondi per la moltiplicazione. Il caricamento dalla memoria impiegava mediamente 0,56 microsecondi. Vedi: http://www.openpa.net/systems/hp-9000_520.html. Un oggetto simile è visibile qui. In questa pagina di Wikimedia Commons è invece visibile un'immagine dettagliata dell'intera scheda processore comprendente la CPU ed i chip di supporto (HP 5061-6803), vedi anche qui.

Wafer da 3'' di circuiti CMOS HP fabbricati da AMI, probabilmente moltiplicatori in virgola mobile, 1988. I chip segnati con un punto di inchiostro nero sono stati scartati in fase di controllo funzionale.

Dettaglio, a maggiore ingrandimento, di uno dei chip del wafer raffigurato sopra. E' prassi diffusa assegnare ai progetti dei circuiti integrati dei nomi in codice, spesse volte scherzosi, che vengono poi riprodotti sui chip durante la fabbricazione di questi ultimi. "Famous Potatoes" è una frase riportata su molte targhe automobilistiche dell'Idaho, uno Stato che in cui la produzione di patate contribuisce grandemente al PIL. La AMI (American Micro-systems Inc.), fondata nel 1966 in California a Santa Clara, aveva in effetti un importante stabilimento a Pocatello appunto nell'Idaho, dove nel 1982 venne anche trasferita la sede della società.

Wafer "blue-taped" con integrati CMOS fabbricati da VLSI Technologies Inc. Diametro 6 pollici. I circuiti marcati in rosso sono stati scartati; si può notare che è già stato effettuato la separazione dei componenti (cutting) con sega diamantata, si vedono infatti le tracce dei tagli. Il wafer è stato posto su un apposito foglio di materiale plastico blu (blue tape) rivestito di adesivo. I chip mancanti sono quelli, funzionanti, che non sono stati scartati. Si tratta di integrati contenenti logica basata su standard-cell e, ai due lati, memorie (le aree rettangolari più scure). 

Dettaglio di un altro wafer "blue taped" con integrati CMOS, fabbricato in questo caso da TSMC (Taiwan Semiconductor Manufacturing Co).

14.9.2014 - Scheda CPU HP A1027-26510 con processore PA-RISC NS-2 (o forse PCX - vedi nota) a 32 bit (1990). Si tratta della seconda "incarnazione" MOS dell'architettura PA-RISC; è un processore multi-chip formato da 7 integrati NMOS-III a 1,5 micron e contiene, in tutto, circa 550.000 transistor. La CPU vera e propria è il chip in alto a destra, senza il dissipatore di calore: contiene 183.000 transistor e funziona a 32 MHz. L'NS-2 è stata storicamente, nel 1989, la terza implementazione dell'architettura PARISC, dopo l'originaria TS-1 del 1986 (quest'ultima realizzata con logica TTL SSI/MSI) e l'NS-1 del 1987, basata su LSI NMOS-III. La CPU NS-1 è stata impiegata nei minicomputer HP 9000/825, 835 ed 850; l'NS-2 nelle macchine 822, 832, 845, 855 ed 860. Rispetto al predecessore la CPU NS-2 ha una pipeline più lunga (5 stadi contro 3), un nuovo controller della cache ed una cache L1 off-chip più ampia (1MB contro soli 16KB nei 9000/825 e 128KB nei 9000/835), separata tra istruzioni e dati. Anche il TLB è più grande (16.384 indirizzi contro 4.096). L'NS-2 impiega, come l'NS-1, indirizzi a 29 bit e può quindi indirizzare 512 MB di memoria. L'interfaccia tra la CPU, la memoria ed i controller di I/O è realizzata tramite un bus sincrono a 64 bit denominato SMB (System Main Bus, vedi: http://www.openpa.net/bus.html#smb). La frequenza di funzionamento era inizialmente di 27,5 MHz, successivamente incrementata a 30 e poi a 31,5 MHz.

Vedi: http://commons.wikimedia.org/wiki/File:HP-HP9000-PA-RISC-NS2-CPU-Board-A1027-26510-RevB_03.jpg (qui). Questa è invece una foto della scheda dopo la rimozione dei dissipatori di calore.

Anche: http://www.openpa.net/pa-risc_processor_pa-early.html

Questo chip è una delle due unità FP, una per l'addizione/sottrazione e l'altra per la moltiplicazione/divisione in virgola mobile, impiegate nella FPU delle prime implementazioni dell'architettura PA-RISC (NS-1, NS-2 e PCX tutti con architettura PA 1.0 e bus di sistema SMB), in alternativa alle ALU floating point di Weitek (2164/2165) ed unitamente ad un terzo chip noto con la sigla FPC (Floating Point Coprocessor).

Questo integrato HP, caratterizzato dalla sigla 1XX6-0001 e da un package CPGA a 431 pin, è un controller di memoria, denominato MMC (Master Memory Controller) dedicato al processore PA-RISC 7200 "Thunderbird", utilizzato nei sistemi SMP a 2 e 4 vie quali l'HP 9000 Serie 700, classe J, la Serie 800 classe K e l'HP 3000 Serie 9x9KS, server commerciali di fascia media con sistema operativo HPUX. Sebbene in questo sito sia classificato come MMU (Memory Management Unit, unità di gestione della memoria), ritengo tale catalogazione non corretta, dal momento che il 7200 ha una MMU interna. Il chip è visibile a pagina 3 di questo PDF: http://www.hpl.hp.com/hpjournal/96feb/feb96a1.pdf. Il PA-RISC 7200 utilizza il bus locale a 64 bit Runway, funzionante a 120 MHz e capace di una velocità di trasferimento dati di picco di 96 MB/s. L'MMC è realizzato con la medesima tecnologia CMOS della CPU 7200 (0,55 micron, 3 livelli di metallizzazione).

Memory performance was highly important throughout the J/K-class system design and implementation. The J/K-class memory subsystem is designed with consideration for high bandwidth, low latency, and expandability from 32M bytes to 2G bytes. It is capable of interleaving memory accesses across 32 banks of memory. The memory system is built around the master memory controller (MMC), which interfaces to the high-speed Runway bus. The MMC communicates with up to eight slave memory controllers (SMC) on one or two memory carriers. Also on the memory carriers are data multiplexers and pairs of SIMMs (single-inline memory modules). This design results in a high-bandwidth, interleaved, 2G-byte memory subsystem. As 64M-bit DRAMs become cost-effective, the 2G-byte limit will increase to 3.75G bytes of main memory. Table IV shows the maximum amounts of memory available in various J/K-class systems.

L'HP 1FT2-0008 (1994, Rev. 2.3) è una CPU PA-RISC 7100LC a 60 MHz. Anche conosciuto come PCX-L o "Hummingbird" implementa l'ISA PA-RISC versione 1.1 (vedi più sotto).

CPU HP PA-RISC 7300LC (PCX-L2) a 132 MHz (1998, siglato 1FE4-0008). Il processore 7300LC venne introdotto nel 1996 ed era una versione migliorata del precedente modello 7100LC, rispetto al quale presentava un rinnovato processo di fabbricazione (CMOS14 a 4 livelli anziché CMOS26) ed un maggiore livello di integrazione (conteneva 64+64 KB di cache per dati ed istruzioni, il controller della cache di secondo livello, il controller della memoria e quello del bus GSC). Il 7300LC è stato la prima CPU PA-RISC con una cache integrata di dimensioni significative. Contiene 9,3 milioni di transistor, dei quali ben 8 "impegnati" dalla cache, e funziona -con alimentazione a 3,3 V- a frequenze comprese tra 132 e 180 MHz. Questo processore era destinato a workstation e server entry-level ed ha avuto un buon successo, anche grazie al fatto che la cache L2 (esterna) poteva essere implementata in varie maniere, ad es. con ordinarie SRAM asincrone che consentivano di contenere il costo totale del sistema.

Vedi: https://parisc.wiki.kernel.org/images-parisc/a/a3/Pa7300lc_design.pdf

L'HP 1FT2-0007 (a sinistra) è una CPU PA-RISC PA-7100LC, nota anche come PCX-L o "Hummingbird". L'esemplare visibile qui funziona a 80 MHz. Questo microprocessore, introdotto nel 1994 ed orientato ai sistemi di fascia bassa (personal workstation) implementa la versione 1.1 dell'instruction set PA-RISC ed è stato la prima CPU di questa famiglia dotata delle estensioni multimediali SIMD MAX-1, dedicate principalmente alla decodifica MPEG. Il 7100LC è un processore superscalare basato sull'architettura del predecessore7100 con l'aggiunta di un'ulteriore unità integer ed altri miglioramenti (tra cui una semplificazione strutturale dell'unità in virgola mobile). Contiene una MMU integrata che può gestire fino a 2 GB di RAM. L'organizzazione della cache è diversa rispetto a quella delle altre CPU PA-RISC: in luogo di ampie cache esterne sia per i dati che per le istruzioni, il 7100LC possiede una piccola cache istruzioni integrata (ampia 1 KB) ed una grande cache esterna unificata, la cui capacità può variare da 8 KB a 2 MB. Questo processore integra circa 900.000 transistor ed è contenuto in package PGA a 432 pin. L'interfaccia di bus è la GSC (General System Connect), impiegata in molti modelli della seconda generazione di macchine HP-9000 a 32 bit.

Vedi: http://www.hpl.hp.com/hpjournal/95apr/apr95a2.pdf; http://www.hpl.hp.com/hpjournal/95apr/apr95a3.pdf

Il chip al centro, identificato dalla sigla HP 1FU7-0001, è una CPU PA-RISC PA-7100, nota anche come PCX-T o "Thunderbird". Introdotto nel 1992, il 7100 è stato il primo microprocessore PA-RISC con FPU integrata. All'epoca i suoi rivali in ambito server e workstation erano principalmente il DEC Alpha 21064, l'IBM POWER e il Sun SuperSPARC. Il PA-7100, superscalare a due vie, deriva dall'architettura del precedente PA-7000, una CPU PA-RISC con CPU ed FPU separate; contiene circa 850.000 transistor ed è fabbricato con processo CMOS26B a 0,8 micron e 3 livelli di metallizzazione. Il package è di tipo PGA a 504 pin. Questa CPU funziona ad una frequenza compresa tra 33 e 100 MHz. Le cache di primo livello, dati ed istruzioni, sono entrambe esterne e realizzate con ordinari chip SRAM; l'ampiezza tipica nei server è di 1 MB per le istruzioni e 2 MB per i dati. L'interfaccia verso la memoria è a 64 bit con supporto ECC; il bus di sistema è il GSC, come nel caso del PA-7100LC.

Vedi: http://www.hotchips.org/archives/hc4/2_Mon/HC4.S1/HC4.1.2.pdf; http://www.hotchips.org/archives/hc4/2_Mon/HC4.S2/HC4.2.1.pdf

Anche: ftp://ftp.inria.fr/INRIA/publication/publi-pdf/RR/RR-3188.pdf

Il chip a destra è una FPU Texas Instruments impiegata in alcuni modelli di processori PA-RISC di prima generazione, in particolare nel PA-7000 (vedi: http://www.hpl.hp.com/hpjournal/pdfs/IssuePDFs/1992-08.pdf). Realizzata con tecnologia EPIC-2, integra 640.000 transistor ed è contenuta in package PGA a 207 piedini. La frequenza di funzionamento tipica è di 66 MHz. Nella CPU PCX-S questo chip, contraddistinto dalla sigla TI ACT89100A, è denominato FPC; la velocità di calcolo dichiarata da HP è di 66 MFLOPS a singola precisione. In questa pagina lo si vede sulla scheda madre di una workstation Apollo 9000-710: http://www.cpu-world.com/forum/viewtopic.php?t=6111

A destra, un gate array LSI Logic siglato L1A9198 e proveniente da una scheda Silicon Graphics, in particolare dalla scheda CPU di una workstation Onyx con processore MIPS R4400. L'integrato a sinistra è un altro gate array CMOS fabbricato da LSI Logic, siglato L5A9017. La riga "40H2839" fa pensare ad un P/N (Part Number) IBM. Notare il doppio triangolo che contraddistingue con specifiche ambientali di temperatura ed umidità estese. Recentemente ho trovato questo vecchio post (2003...) di CPU World: http://www.cpu-world.com/forum/viewtopic.php?t=312 in cui si parla di un chip con la medesima sigla montato su una scheda, appunto, IBM (i P/N di Big Blue rappresentano spesso una traccia tipica ed utilissima). Il link allegato al post, purtroppo, non è più attivo e quindi non è più possibile vedere l'immagine della scheda oggetto della discussione. Tra le righe si parla anche di una scheda Bull con il medesimo chip e due CPU PowerPC 604; un utente del forum sostiene che sia un cache controller (ipotesi peraltro compatibile con la sigla CCA2) associato a due chip di cache da 512 KB (L5A6241). Si potrebbe trattare di schede sviluppate da Prime Computer e commercializzate da IBM e Bull. Il componente al centro, siglato HP 1MS8-0001 (1997), è il controller di sistema (Processor Interface Chip, PIC) "Viper" utilizzato nei server PA-RISC HP 9000 T500/520 e T600, basati su CPU PA7100 o PA8000 (vedi: http://www.hpl.hp.com/hpjournal/94jun/jun94a1.pdf), SMP fino a 12 vie. In queste macchine è presente un PIC per ciascuna CPU; esso si occupa di gestire le transazioni tra la CPU stessa, la cache e la memoria di sistema, nonché di controllare il bus locale (o "P bus") che connette il processore alla memoria. Il PIC Viper è realizzato con processo CMOS a 0,8 μm ed è contenuto in package PGA a 408 pin. Questo componente è presente ad esempio sulla scheda CPU del modello T600 (HP A3329-60001), che costituisce l'unico esempio conosciuto di sistema PA8000 con cache di secondo livello su scheda.

Vedi: http://www.openpa.net/systems/hp-9000_t600_t520_t500_890.html (server HP 9000 classe T).

L'integrato PGA a sinistra, siglato DEC 243E, è un chip di interfaccia tra processore e periferiche di I/O denominato NCA (NDAL to CP I/O Interface Chip) impiegato in alcuni sistemi Digital basati su CPU NVAX come ad esempio i server VAX della Serie 4000 (schede processore KA680, KA694) e la workstation VAXstation 4000/90 (scheda KA49-A). Il componente HP a destra, con sigla 1FU9-0001, è un'unità PFU per sistemi con doppio processore PA-7000, in sostanza un'interfaccia tra CPU, memoria e sottosistemi di I/O.

Fabbricato da Toshiba per SGI (Silicon Graphics), questo integrato CMOS PGA è un Geometry Engine GE11, utilizzato nel sottosistema grafico Infinite Reality per le workstation Onyx. L'architettura Infinite Reality, introdotta da SGI nel 1996, soppiantà la precedente RealityEngine 2 nella fascia alta dei sistemi grafici 3D per workstation MIPS. Il Geometry Engine GE11 è un integrato semi-custom CMOS funzionante a 90 MHz; contiene una pipeline SIMD (Singe Instruction, Multiple Data) formata da 3 unità floating point ciascuna delle quali contiene una ALU, un moltiplicatore a 32 bit, un converitore da floating a fixed-point ed un gruppo locale di registri anch'essi a 32 bit, con 2 porte di lettura ed altrettante di scrittura. Le 3 unità sono "alimentate" da una memoria ampia 2.560 parole a 32 bit deputata a contenere gli elementi (dati ed istruzioni) necessari all'elaborazione OpenGL. Il GE11 può eseguire fino a 3 istruzioni per ciclo di clock; più elementi GE11 possono a loro volta essere montati sulla cosiddetta Geometry Board a formare un'architettura MIMD che esegue fino a 12 istruzioni per ciclo di clock. Queste ultime impiegano un formato compresso a 196 bit per ridurne la dimensione e l'utilizzo di banda di memoria. Le prestazioni di picco sono pari a circa 540 MFLOPS per la singola engine GE11 e a 2,16 GFLOPS teorici per una Geometry Board quale la GE12-4 che contiene quattro chip GE11. Vedi: http://en.wikipedia.org/wiki/InfiniteReality

Questa scheda HP, siglata 09850-86510 REV B, 1988, è con tutta probabilità una delle prime implementazioni dell'architettura PA-RISC, ragionevolmente la NS-1 (1987) oppure la NS-2 (1989). La versione NS-1 è il primo processore PA-RISC realizzato con processo NMOS; si tratta di un progetto multichip in cui la CPU vera e propria è integrata in un singolo componente cui si affiancano fino a 8 chip VLSI di supporto (System Interface Unit, Cache Controller Unit, TLB Controller Unit, Math Interface Unit). La cache L1 è estera, unificata, con una dimensione compresa tra 16 e 128 KB. Il processore NS-1 è stato impiegato nei sistemi HP 9000/825, 835 ed 850. La versione NS-2, anch'essa realizzata con processo NMOS, apporta alcuni miglioramenti architetturali (aumento del numero di stage della pipeline, nuovi controller della cache e dei TLB, cache più ampia, semplificazione della struttura interna della CPU). Il processore NS-2 è anch'esso un progetto multichip formato da 6 ad 8 chip a seconda delle versioni (CPU single chip + componenti di supporto). Il bus locale è modificato rispetto alla versione NS-1, dal momento che la CPU è dotata di una connessione privata ai controller della cache e dei TLB. I chip che formano l'NS-2 sono: la CPU, la SIU (System Interface Unit), la Cache Controller Unit, la TLB Controller Unit e la FPU. Entrambi i processori NS-1 ed NS-2 funzionano a frequenze comprese tra 25 e 30 MHz, ad esempio a 27,5 MHz nell'HP 9000/835. Nel 1990 HP introdusse la CPU PCX-T, primo processore PA-RISC fabbricato con processo CMOS; esso deriva dal progetto NS-2 rispetto al quale presenta alcuni significativi miglioramenti architetturali. Anche il PCX-T è un processore multichip, benché il numero dei componenti sia inferiore rispetto all'NS-2 e la densità di integrazione maggiore. La cache di primo livello è esterna, separata per dati ed istruzioni, con un'ampiezza massima di 1 MB. La CPU PCX-T funziona a 50 MHz.

Vedi: http://www.openpa.net/pa-risc_processor_pa-early.html#pcx

14.4.2017 - Scheda CPU (HP 30190-60001) di un minicomputer HP 3000/950. Il modello 950 è stato introdotto nel 1987 ed offriva prestazioni paragonabili a quelle dell'IBM 4381 e dei VAX 8550/8700, circa 7 MIPS. Supportava un massimo di 128 MB di RAM ed aveva lo stesso bus di sistema (SMB) a 64 bit dei modelli 980 e 955 (vedi qui sotto). La Serie 950 è basata su un'architettura di sistema a livelli multipli e comprende due bus di I/O, indicati con la sigla CTB (Central Transfer Busses), che offrono una velocità di trasferimento massima di 20 MB/s. La velocità massima del bus di sistema SMB è invece di circa 100 MB/s. 

Vedi: http://www.openpa.net/pa-risc_processor_pa-early.html#pcx; http://www.hpmuseum.net/display_item.php?hw=836

22.7.2016 - Scheda processore (HP P/N A1134-00001) con CPU PA-RISC PCX o "CMOS26B" a 50 MHz proveniente probabilmente da un server SMP HP 3000/980 (vedi questa pagina). La CPU PA-7000 venne introdotta nel 1991 e costituisce, in ordine di tempo, la quinta implementazione dell'architettura PA-RISC. In particolare è denominata "PCX-S" in quanto rappresenta l'evoluzione diretta del predecessore PCX o "CMOS26B" dal nome del rispettivo processo di produzione, e come quest'ultimo è una CPU formata da più chip CMOS (in effetti il PCX-S è difficilmente distinguibile a prima vista dal PCX). Il PA-7000 è stato il primo microprocessore ad implementare la versione 1.1, a 32 bit, dell'architettura PA-RISC; il PCX è invece basato sulla revisione 1.0. Anche PCX-S è un processore multi-chip; gli integrati VLSI che lo costituiscono in particolare sono: la CPU vera e propria (circa 577.000 transistor) con integrati la ALU, il TLB ed il controller della cache (elementi suddivisi tra chip VLSI separati nel predecessore PCX); il controller di memoria ed I/O (denominato MIOC) "Viper", il chip di interfaccia tra il bus locale Pbus ed il bus principale di sistema VSC (Viper System Connect), oltre ai tre chip della FPU (il controller FPC, un addizionatore ed un moltiplicatore/accumulatore in standard IEEE 754). Il bus locale Pbus è a 32 bit. In questa foto si può notare chiaramente la separazione tra la cache dati (DC) e quella delle istruzioni (IC). Il processore PA-7000 implementa una pipeline a 5 stadi e normalmente utilizza una frequenza di clock a 60 MHz; ne esistono versioni sia a 50 che a 66 MHz. Veniva fabbricato da HP con processo CMOS26B a 1 micron, 2 livelli di metallizzazione. L'unità di esecuzione (ALU) contiene circa 577.000 transistor; la FPU, fabbricata con un diverso processo (Texas Instruments EPIC-2 a 0,8 micron), integra invece circa 640.000 transistor. Gli integrati più grandi sono contenuti in package CGA-408 mentre i due chip dell'unità in virgola mobile hanno un package CPGA-207. Normalmente entrambe le cache di primo livello, istruzioni e dati, sono ampie 256 KB; in alcune applicazioni, come i server di fascia alta quali il modello 890 cui la foto si riferisce, la loro dimensione è sensibilmente maggiore (2+2 MB). Su questa scheda i 6 chip CPGA-408 sono siglati rispettivamente: 1FY3-0001, 1FZ2-0001, 1FY8-0001, 1FZ4-0001, 1FZ3-0001 (2 chip). Normalmente tutti i chip montano un dissipatore di calore, in genere di colore nero. Il numero e le sigle degli integrati HP su questa scheda fa pensare alla CPU PCX, in particolare per l'apparente presenza di TLB esterni (vedi nota più sotto).

Immagine della scheda completa con i dissipatori di calore installati: http://www.hpmuseum.net/images/A1134-69019_3000-980CPU-22.JPG

22.7.2016 - Anche questa è una scheda processore proveniente da una macchina HP 3000, precisamente il modello 955 (vedi), e monta una CPU PA-RISC, probabilmente PCX o "CMOS-26B" a 27 MHz (vedi qui sotto): è siglata A1130-00001 e, come si nota, i chip sono sempre 8 (6 HP + 2 della FPU, in alto), benché diversi sia come aspetto che come sigla rispetto a quelli dell'immagine precedente. Assumendo che entrambe le schede montino CPU PCX la differenza potrebbe derivare dalle diverse frequenze operative (vedi sotto). Riporto da http://www.openpa.net/pa-risc_processor_pa-early.html#pcx: "the last PA-RISC 1.0 design was the PCX, introduced 1990 and the first PA-RISC processor fabricated in a CMOS process. It implemented the NS-1/NS-2 NMOS design and several of the processor functions previously supplied on external VLSI chips onto a single CPU chip. The PCX still was supplemented by external support chips, including three CMUX (cache multiplexer — one instruction, two data; equivalent to the earlier CCUs), SPI (SMB to processor interface - SMB is the system main bus), FPC (floating point coprocessor) and two FP chips (MUL/DIV and ADD/SUB)". Il processore PCX (1990) è stato la prima CPU PA-RISC utilizzabile in configurazioni multiprocessore simmetriche -SMP- a 2 o 4 vie. Esso supporta una cache esterna ampia al massimo 1 MB, ripartita tra dati ed istruzioni nel rapporto 1:2. Il TLB ha un'ampiezza di 8.192 voci; il bus indirizzi ha 29 linee che permettono dunque uno spazio di indirizzamento fisico di 512 MB. La CPU (196.000 transistor) è connessa al controller di memoria ed I/O (MIOC) dal bus locale SMB (System Main Bus), sincrono a 64 bit. 

Immagine di una scheda simile, completa (ma siglata A1112-60001): http://www.hpmuseum.net/exhibit.php?hwimg=836

Nota sull'identificazione dei chip NS-2, PCX e PCX-S (PA-7000)

In questa pagina ci sono le immagini di tre schede HP della mia collezione: la A1027-26510, la A1134-8001 e la A1130-60001. Per tutte e tre l'identificazione dei chip HP è abbastanza dubbia. I medesimi dubbi si trovano anche nei post sul forum di CPU World. La scheda A1134 monta in particolare i seguenti chip: 1FZ2-0001 (SPI), 1FY8-0001 (CPU), 1FZ4-0001 (FPC), 3 x 1FY3-0001 (DCMUX0, DCMUX1, ICMUX), BIT 00262 + 00306 (FPU "+" ADD e "*" - MULT). Le sigle tra parentesi sono stampate sul retro della scheda in corrispondenza del chip. Tutti i chip, ad eccezione dei due che compongono la FPU, hanno package CPGA-408. L'ampiezza delle cache I/D dovrebbe essere di 256 + 512 KB, in base al tipo di SRAM impiegata. Ciò sembra essere coerente con l'identificazione con la CPU PCX anziché con la PA-7000, a motivo dei 3 TLB esterni e della ripartizione "asimmetrica" della cache tra istruzioni e dati. Non avendo inoltre mai trovato conferma sicura dell'impiego del PA-7000 su macchine HP 3000, ed essendo questa certamente una scheda proveniente da una macchina 3000, è ancor più probabile che si tratti effettivamente di una CPU PCX. Ciò concorda inoltre con questo post e questa pagina. Sulla scheda A1130 non vi sono identificativi stampati sul retro; le sigle dei chip sono: 1FN3-0001 (PGA-408), 1FM5-B (PGA-408), 1FN3-0001 (PGA-408), 1FK8-0001 (PGA-408), 1FM2-0001 (PGA-272), 1FF9-0001 (PGA-272, la marcatura del quale è però sbiadita quindi difficilmente leggibile); i due chip BIT della FPU sono siglati B8019A - 001455 e B8020 - 001472. La CPU potrebbe dunque essere anch'essa un PCX con controller SMB, a due sole vie (versione a 272 pin); la cache I/D è ancora suddivisa tra istruzioni e dati nel rapporto 1:2 (apparentemente 256 + 512 KB). Nel caso della scheda A1027, due chip della FPU sono fabbricati da Weitek e siglati 2264 e 2265. Nel sito chipdb.org la CPU PCX-S/PA-7000 è classificata con la sigla 1FZ3-0001 ed ha package CPGA-408 con due viti per la connessione del dissipatore di calore. Nello stesso sito si legge che una più recente versione di questa CPU ha il package con 1 sola vite di connessione per il dissipatore. Nei forum di CPU World il processore PCX è classificato con la sigla 1FY8-0002 in package CPGA-408 e due viti per il dissipatore. Quanto alla scheda A1027, i chip HP identificabili con certezza sono: 1FG3-0005 (2 chip) ed 1FJ5-0005 siglato "CPU", con 2 viti per il dissipatore; gli altri integrati HP non riportano etichette con sigle. La mia scheda è identica a quella raffigurata qui ed identificata come CPU NS-2. I primi processori VLSI con architettura PA-RISC impiegano nella FPU 2 componenti di terze parti, siglati in genere Weitek oppure BIT. Tanto nel PCX quanto nel PCX-S (PA-7000) è altresì presente un chip HP siglato FPC (Floating Point Controller) che rappresenta l'unità di controllo della sezione in virgola mobile. Recentemente ho trovato nel CE Handbook per le serie HP 3000/950 ed HP 9000/850S (Ottobre 1990) questa tabella:

Scheda HP (A1608-66510 o A3022) con CPU PA-RISC "PCX" per server HP 9000/845, con 256 KB di cache I+D. La CPU vera e propria è l'integrato posto sotto il dissipatore di calore al centro della scheda; sull'altro lato sono montati i controller delle cache dati (DCCU) ed istruzioni (ICCU). Il chip piccolo immediatamente alla sua sinistra è il generatore di clock. In alto a sinistra due chip dell'unità in virgola mobile, tra i quali quello senza dissipatore di calore è un moltiplicatore hardware a 32 bit. Gli altri chip sono l'interfaccia verso il bus di sistema (System Interface Unit, SIU), il terzo integrato della FPU (FPC) ed il controller del TLB/Translation Lookaside Buffer (TCU). La CPU implementa una pipeline a 5 stadi ed è realizzata con processo NMOS-III; le prestazioni medie sono di circa 22 MIPS, 2,5 MFLOPS.

Vedi (foto di questa ed altre schede della classe 835/845): http://www.hpmuseum.net/exhibit.php?hwimg=466

Questa immagine tratta dal sito CPU-World mostra una scheda identica a quella riprodotta sopra, senza i dissipatori di calore dei vari componenti. 

Scheda processore di minicomputer HP 9000/835 con CPU PA-RISC NS-2 (1990). In corrispondenza di ciascun dissipatore di calore è indicata in alto la denominazione del chip riportata sul circuito stampato e, in basso, la sigla HP dell'integrato. Le sigle delle due unità di controllo della cache (CCU0/1) sono illeggibili. La cache I/D di secondo livello (esterna, chip SRAM Motorola da 80 ns) dovrebbe essere di 128+128 KB. I 3 chip a sinistra (MPY, ALU, FPC) formano l'unità in virgola mobile.

Geometry accelerator (processore deputato all'esecuzione in hardware dei calcoli di geometria, illuminazione e trasformazione della scena 3D) HP A4244-69001, parte del sottosistema grafico Visualize 48XP, proveniente da una workstation HP Serie 9000. Contiene 4 processori derivati dal PA-RISC PA-7100LC (ciascuno col suo dissipatore di calore). Il bus utilizzato è l'HSC (High-speed System Connect), derivato dal GSC tipico di questa categoria di macchine.

20.4.2015 - Dettaglio dei 4 processori di derivazione PA-RISC (1FC5-0001) presenti sulla scheda 48XP della foto sopra; in mezzo ad essi vi sono due ASIC fabbricati da NEC. Il sistema grafico 3D Visualize 48XP è formato da due schede: il Geometry Processor visibile qui ed il Frame Buffer.

27.5.2016 - Modulo Texture Accelerator per schede grafiche OpenGL HP Visualize FX4+ ed FX6+ (1998). Al momento della sua introduzione, il complesso formato dalla workstation HP Kayak XU con due processori Intel Pentium II a 300 MHz ed una scheda Visualize FX4+ rappresentava la più veloce (nonché la più costosa) piattaforma personale per grafica professionale OpenGL.

Scheda CPU per minicomputer HP 9000/720 con CPU PA-RISC PA-7000 (PCX-S). Il chip HP 1FZ3-0001, con 408 pin, è il microprocessore vero e proprio mentre quello siglato 1FZ6-0001 (in alto a destra, 272 pin, 185.000 transistor) è il controller di memoria ed di I/O (MSBC o MIOC, anche chiamato Processor - Memory Interface o PMI) "Viper". A sinistra si vede lo zoccolo, vuoto, per la FPU Texas Instruments. Il componente in basso a destra è l'interfaccia verso il bus di sistema (HP 11W5-0501). Questa CPU funziona a 48 MHz (notare, in basso a sinistra, l'oscillatore a 96 MHz). A pagina 12 di questo file PDF che riproduce un numero dell'HP Journal: http://www.hpl.hp.com/hpjournal/pdfs/IssuePDFs/1992-08.pdf è descritta brevemente l'organizzazione di una scheda simile. Le due schiere di memorie SRAM, sopra e sotto il processore, sono le cache dati ed istruzioni (separate). La cache dati, in basso, è ampia 256 KB; quella istruzioni, in alto, ha invece una capacità di 128 KB. Il PCX-S è fabbricato con processo CMOS26B a 1 micron e contiene 570.000 transistor; può funzionare ad una frequenza massima di 66 MHz, come nel caso dei sistemi 9000/730 e 750.

Vedi: http://www.openpa.net/pa-risc_processor_pa-7000.html

25.4.2015 - Scheda CPU HP A1703-60016 per minicomputer HP 9000/817S ed 827S (1992/3, anche noti come 9000/F20 ed H20) con processore PA-RISC  PA7000 a 48 MHz, FPU Texas Instruments (a sinistra) e 256+256 KB di cache esterna L1, separata per dati ed istruzioni. Il processore è identificato dalla sigla HP 1FZ3-0006. Questi modelli di macchine appartenevano alla serie HP 9000/800 "Nova" a 32 bit, ovvero alla seconda generazione di sistemi PA-RISC commercializzata a partire dall'inizio degli anni Novanta. Il chipset di supporto ed interfaccia con la memoria era derivato dall'ASP impiegato nella maggior parte dei più vecchi sistemi PA-RISC con bus SGC (System Graphics Connection); il modulo CPU contiene il chip "Viper" (HP 1FZ6-0006, in alto a destra) che implementa il controller della memoria e l'interfaccia di I/O ed è per questo noto con la sigla MIOC (Memory and I/O Controller). Il controller "Viper" è un componente CMOS VLSI complesso (185.000 transistor, CMOS26B a 0,8 micron, 2 livelli di interconnessione) che funge da interfaccia tra il processore col relativo bus locale (Pbus) ed il bus di sistema principale VSC, acronimo di Viper System Connect, al quale a loro volta sono connessi la memoria ed i diversi dispositivi di I/O coi loro bus (HP/IB, EISA ecc.) Nei sistemi SMP sono possibili due diverse soluzioni: un MIOC accoppiato a ciascuna CPU oppure un MIOC ogni due CPU. Il bus VSC è un bus sincrono, pipelined, con canali separati per dati ed istruzioni che funziona a 32 bit nelle macchine con processore PA-7000 ed a 64 bit, invece, in quelle con CPU PA-7100. E' teoricamente possibile un'ampiezza dati di 128 bit che tuttavia è stata implementata solamente nei server della serie T500. Il VSC non ha un clock prestabilito, ma opera a diverse frequenze in base al clock della CPU: normalmente lavora ai 2/3 della frequenza di clock della CPU stessa. Il trasferimento dei dati da e verso la memoria RAM principale avviene a blocchi di 16, 32 o 64 bit; le specifiche del VSC supportano la coerenza della cache e della memoria nel caso di configurazioni SMP (con due o più CPU). La velocità di trasferimento tipica, a 60 MHz con dati a 64 bit, è di circa 480 MB/s (vedi questo articolo dell'HP Journal: http://www.hpl.hp.com/hpjournal/94jun/jun94a1.pdf, e anche: http://www.hpl.hp.com/hpjournal/pdfs/IssuePDFs/1992-08.pdf). Il chip Viper è stato prodotto in diverse versioni e con diversi package: PGA a 408 pin (come in questo caso) e CPGA a 272 pin. Nelle workstation entry-level 705 e 710 esso è implementato in una versione più economica, in forma di due chip separati con package PQFP a 160 pin, fabbricati con processo CMOS34 a 1 micron. I due componenti che si vedono nella parte destra dell'immagine, in package PQFP-100 sotto il controller Viper, sono le interfacce SBI. Come si può notare nella foto il processore PA-7000 o PCX-S -introdotto nel 1991- è un'implementazione multichip dell'architettura PA-RISC: esso è in effetti formato da più circuiti CMOS, ed in particolare dalla FPU, dalla CPU versa e propria, dal controller Viper e dalle interfacce SBI e Pbus/VSC. La FPU, in standard IEEE754, deriva da un progetto sviluppato di comune accordo da HP e Texas Instruments: fabbricata con processo EPIC-2 a 0,8 micron, integra 640.000 transistor ed è contenuta in package PGA a 207 pin. La CPU contiene da parte sua 577.000 transistor ed è fabbricata con processo CMOS26B, il medesimo utilizzato per il controller Viper; il package è di tipo PGA a 408 piedini. La sigla identificativa di questo chip è ACT89100A. Il processore PA-7000 è stato commercializzato a diverse frequenze di clock, fino a 66 MHz; tutte richiedevano un'unica alimentazione a 5 Volt. Esso implementa le specifiche PA-RISC 1.1a a 32 bit; internamente ha una pipeline a 5 stadi. Il bus delle istruzioni è ampio 32 bit, mentre quello dei dati è a 64 bit. Notare che in questa scheda la FPU è siglata "-50" ed in effetti il clock del processore è a 48 MHz (in basso a sinistra si vede l'oscillatore al quarzo a 96 MHz).

Modulo CPU per server HP 9000/T500 con processore PA-RISC  PA-7100 "Thunderbird" a 90 MHz (PCX-T, 1FT9-0004) con 256+256 KB di cache L2 esterna. Il PA-7100, introdotto nel 1992, è stato il primo processore PA-RISC con FPU integrata. Nel 1994 ne venne sviluppata una versione migliorata denominata PA-7150, capace di raggiungere la frequenza di 125 MHz contro i 100 MHz massimi del 7100. Architetturalmente l'unità integer è simile a quella del predecessore PA-7000, fatte salve alcune migliorie necessarie al raggiungimento di più elevate frequenze di clock. La FPU, invece, venne completamente riprogettata ed "impegnava" solo un terzo dei transistor rispetto all'unità in virgola mobile HP/Texas Instruments del PA-7000 (vedi foto precedente), pur raggiungendo prestazioni superiori (circa 200 MFLOPS di picco). Il PA-7100 implementa le specifiche PA-RISC 1.1b a 32 bit ed è una CPU superscalare a 2 vie (1 ALU per interi, 1 in virgola mobile). La connessione tra CPU e cache L2, esterna, è più ampio di quello del 7000: in questo modo il processore può eseguire il fetch di più istruzioni consecutive e quindi il loro "dispatch" alle unità di esecuzione tra loro indipendenti. Sistemi SMP possono essere realizzati con due diversi approcci: 2 CPU 7100, ciascuna col proprio bus locale Pbus, connesse ad un singolo controller MIOC "Viper" (vedi sopra), oppure 1 controller MIOC per ciascuna CPU. In questo secondo caso i MIOC sono a loro volta connessi ad un bus di memoria ed I/O condiviso. La pipeline interna è a 5 stadi, come quella del PA-7000, con una coda di 3 istruzioni. Le cache di primo livello, separate per dati ed istruzioni, sono esterne e possono essere ampie fino a 1 MB per le istruzioni ed a 2 MB per i dati. Nell'implementazione di queste cache -connesse direttamente alla CPU ed accessibili via software- è possibile utilizzare SRAM ordinarie a 100 ns o più veloci, riducendo così il costo del sistema. Il bus locale può funzionare ad una frequenza equivalente a quella del processore, oppure pari a 2/3 od alla metà di essa. Il processore 7100 ha rappresentato un importante punto di svolta nell'evoluzione della famiglia PA-RISC, segnando il passaggio da costose CPU multichip a più compatti, economici e veloci processori single-chip. Esso integra 850.000 transistor ed è fabbricato con processo CMOS26B a 0,8 micron con 3 livelli di interconnessione; è contenuto in package PGA a 504 piedini. Alla frequenza di 100 MHz assorbe circa 30 W di potenza (alimentazione singola a 5 V). I server HP 9000 della famiglia T erano macchine SMP a 1-12 vie, modulari ed ampiamente scalabili, derivanti dalla precedente serie HP 9000/890. 

CPU HP PA-RISC PA-7150 (1FQ1-0004). Il PA-7150, introdotto nel 1994, era una versione migliorata del processore PA-7100; grazie ad un miglioramento del processo produttivo (CMOS26B a 0,8 micron con 3 livelli di interconnessione) poteva funzionare a 125 MHz. Come il 7100 veniva fabbricato negli stabilimenti HP di Corvallis (Oregon). E' stato utilizzato, ad esempio, nella workstation HP 9000 modello 735/125. Contiene circa 800.000 transistor. Alcune fotografie di dettagli del chip sono visibili qui: http://www.tinytransistors.net/index.php?view=article&catid=1%3Apictures&id=30%3Apa-7150&option=com_content&Itemid=2.

Scheda processore per server HP 9000/800 "Nova" modello G70, 1993, con due CPU PA-7100 a 96 MHz e 2 MB di cache esterna (vedi: http://www.openpa.net/systems/hp-9000_series-800_nova.html). 

Scheda CPU/memoria di workstation HP 9000 C160, con processore PA-8000 a 160 MHz. Il PA-8000 (PCX-U o Onyx), introdotto nel 1996, è la prima CPU PA-RISC a 64 bit con capacità di esecuzione fuori sequenza (Out of Order Execution). Si tratta di un microprocessore superscalare a 4 vie con 4 unità intere, 4 in virgola mobile e 2 load-store. Le cache, usualmente molto ampie, sono esterne. Un'importante caratteristica di questa CPU e di quelle da essa derivate è la presenza di un'unità fuzionale chiamata Instruction Reorder Buffer (IRB), che permette al processore di effettuare il proprio scheduling (ordinamento) delle microistruzioni direttamente in hardware, indipendentemente dal software e dal sistema operativo. L'IRB del PA-8000 può contenere un massimo di 28 istruzioni di calcolo ed altrettante istruzioni load-store; esso tiene traccia delle interdipendenze fra tali istruzioni e ne permette l'esecuzione non appena ciò sia possibile. L'IRB considera anche i risultati della previsione di destinazione delle istruzioni di salto (branch prediction) e, grazie al re-scheduling, la CPU può limitare al massimo gli effetti negativi degli eventuali cache-miss (vedi). Il progetto del PA-8000 (vedi: http://ftp.parisc-linux.org/docs/whitepapers/four_way_superscalar.pdf) ha avuto notevole successo ed è stato la base delle CPU PA-RISC a 64 bit prodotte da HP nel decennio successivo. Accanto al processore si trovano i controller di memoria MMC/SMC (vedi) ed i multiplexer di dati interposti tra tali controller e la RAM di sistema (a destra).

Vedi: http://en.wikipedia.org/wiki/PA-8000

"Foto di gruppo" per tre CPU PA-RISC a 64 bit: da destra verso sinistra, un PA-8000 (PCX-U, Onyx) a 180 MHz (1997 - HP 1ST9-0004 Rev 3.1); un PA-8500 (PCX-W, Vulcan) del 1999 (HP 1QM1-0014) ed un PA-8600 (PCX-W+, Landshark) fabbricato nel 2002 (HP 3AA1-1105). Tutte le CPU PA-RISC successive al PA-8000 derivano dall'architettura di quest'ultimo, che funge da base alla quale sono stati di volta in volta apportati miglioramenti e modifiche. Il PA-8000, che contiene 3,8 milioni di transistor ed è fabbricato con processo CMOS-14C a 0,5 micron con 5 livelli di interconnessione (metallizzazione) in alluminio, non ha cache integrate; nonostante ciò, l'area del chip è notevole (circa 338 millimetri quadrati). E' contenuto in un package LGA flip-chip con 1.085 punti di contatto. Il chip vero e proprio ha 704 punti di contatto per i segnali e 1.200 per l'alimentazione (che è a 3,3 volt). Il PA-8500, al centro, è stato introdotto all'inizio del 1998 con frequenze di clock comprese tra 300 e 440 MHz, successivamente elevate fino a 500. A differenza del PA-8000 esso integra le cache di primo livello dei dati (512 KB) e delle istruzioni (1 MB): il numero di transistor è quindi elevato, circa 140 milioni. L'area del chip è di circa 468 millimetri quadrati. Il package LGA, flip-chip, ha 544 punti di contatto: la differenza rispetto al PA-8000 è dovuta proprio all'integrazione delle cache, che sono connesse alla CPU da bus a 128 bit. Il PA-8500 è stato fabbricato con processo a 0,25 micron, non direttamente da HP bensì dalla Intel: ciò perché HP riteneva troppo costoso l'aggiornamento dei propri impianti al processo CMOS richiesto per la realizzazione di questo processore. Il PA-8500 utilizza una versione migliorata del bus di sistema Runway, che funziona a 125 MHz ed ha una banda di 2 GB/s. L'alimentazione è a 2 volt. Il PA-8600, commercializzato a partire dal Gennaio 2000, è una versione migliorata del PA-8500, con frequenze operative comprese tra 480 e 550 MHz. Anch'esso è stato fabbricato dalla Intel, con processo CMOS a 0,25 micron. Il package LGA è il medesimo del suo diretto predecessore. 

Vedi: http://www.silirium.ru/hp-pa-risc.html

Gate array CMOS Fujitsu (1992) appartenente alla serie MB128, impiegato in alcuni modelli di mainframe Amdahl e Fujitsu FACOM. In tali macchine venivano utilizzati componenti appunto CMOS e, nei modelli di fascia più alta, circuiti ECL (bipolari). Questi ultimi erano più veloci, dal momento che avevano tempi di commutazione e ritardi di propagazione per gate inferiori, ma nello stesso tempo disperdevano più calore e richiedevano soluzioni di raffreddamento più complesse e costose.

Questo circuito è un EPLD (Erasable-Programmable Logic Device) Altera EPM5130, appartenente alla fortunatissima famiglia Altera MAX 5000. Si tratta di gate array CMOS programmabili (e cancellabili come le normali EPROM, mediante esposizione a raggi UV) con una capacità utile compresa, a seconda del modello, tra 600 e 3.750 gate logici. Sono realizzati con una particolare architettura che combina la velocità tipica dei PAL (Programmable Array Logic) con la densità dei gate array macrocell; questa specifica tecnologia, brevettata da Altera, è denominata MAX (Multiple Array matriX). La famiglia MAX 5000 è caratterizzata da un ritardo medio di 15 ns e può funzionare fino a 80 MHz. Il modello 5130 visible qui contiene 2.500 gate utili, 128 macrocell, suddivisi in 8 blocchi logici (LAB); supporta un massimo di 84 connessioni di I/O con l'esterno. Fondata nel 1983, Altera Corp. (con sede a San Jose, California, nella Silicon Valley) è diventata velocemente uno dei principali produttori mondiali di logiche programmabili, FPGA ed EPLD come in questo caso. Sua principale concorrente è la Xilinx, che ha di fatto creato da zero all'inizio degli anni Ottanta il mercato degli FPGA. Gli EPLD fanno parte della più vasta famiglia di componenti chiamati in senso lato CPLD (Complex Programmable Logic Devices), circuiti logici programmabili la cui complessità è compresa tra quella dei PAL e quella dei più sofisticati FPGA. I CPLD possiedono caratteristiche di entrambe queste categorie di componenti. Gli elementi base che costituiscono i CPLD sono le cosiddette macrocell, gruppi di porte logiche prefabbricati che implementano funzioni relativamente complesse quali flip-flop, registri, funzioni aritmetiche ecc. I circuiti CPLD sono caratterizzati da una configurazione permanente, che una volta impostata permane intatta finché non si intervenga per cancellarla; essi possono contenere migliaia o decine di migliaia di gate, risultando così molto più complessi dei PAL. In origine i CPLD si differenziavano dagli FPGA per la presenza di una memoria interna di configurazione non volatile, caratteristica poi assunta anche da quasi tutti gli FPGA "moderni". La principale differenza tra  FPGA e CPLD rimane dunque il fatto che i primi sono basati su tabelle di look-up interne, laddove nei secondi le varie funzioni complesse vengono formate a partire da cosiddetti "sea of gates", blocchi uniformi di porte logiche semplici.

Tre esempi di circuiti programmabili Altera: un EPLD "classico" EP1810 da 900 gate logici e 48 macrocelle utilizzabili; un EPB2001, chip di interfaccia verso il bus Microchannel configurabile dall'utente, utilizzabile per realizzare periferiche MCA pienamente compatibili con lo standard IBM; un EPLD EPM5032DC appartenente alla famiglia MAX5000, contenente 32 macrocelle e capace di funzionare con clock massimo di 100 MHz (15 ns). L'EPB2001 integra tutte le funzionalità di base necessarie alla realizzazione di un'interfaccia MCA completa; può essere opzionalmente abbinato al controller di DMA EPB2002. Questo chip è stato impiegato da svariati fabbricanti di periferiche Microchannel in quanto sostituisce circa 30 integrati TTL a bassa e media scala di integrazione, EPROM e memorie.

"Foto di famiglia" per alcuni EPLD, PAL ed EPROM di diversi fabbricanti. L'Altera EPS448 (1 e 6, vedi) è più precisamente un microsequencer che può essere utilizzato per realizzare semplici CPU basate su gate array programmabili o PLD. L'Altera EPM7096-JC84 è un EPLD CMOS della serie MAX7000, con 1.800 gate utilizzabili (96 macro-celle); funziona con una frequenza di clock massima di 125 MHz (vedi). Il WaferScale Integration (WSI) 57C257 (3) è una EPROM da 256 kbit con specifiche estese di temperatura. L'Intel 5AC324-25 (4, vedi) è un PLD macrocell CMOS contenente 24 macro-celle con I/O programmabili ed un massimo di 36 linee di input (12 dedicate, 24 per l'I/O). Può funzionare ad una frequenza massima di 66 MHz. Il Cypress PALC22V10-35WC (5, vedi), qui un Engineering Sample, è un PAL CMOS programmabile con tecnologia EPROM; contiene 10 macro-celle organizzate come strutture AND-OR (somma di prodotti logici). L'Altera EP600 (7, qui un Engineering Sample, vedi) è un EPLD Macrocell CMOS contenente 16 macro-celle. L'AMD Am29CPL151H-33DC (9) è un Field-Programmable Controller (FPC) CMOS da 64 word (vedi), che consente la realizzazione di state-machine microprogrammate con un ridotto numero di componenti. L'AMD Am27C43T-35DC (9, vedi) è una EPROM CMOS da 32 kbit (4.096x8 bit), 35 ns. L'Atmel AT22V10-35DC (10) è un EPLD CMOS con una velocità massima di 15 ns (vedi). 

Il Cypress CY7C341 (sinistra) è un EPLD CMOS della famiglia MAX contenente192 macrocelle organizzate in 12 blocchi logici (LABs). L'ST Microelectronics 27HC68PFP (destra) è anch'esso un EPLD CMOS, contenente 256 celle ed una memoria EPROM da 64 KB. Il Microchip 16C505, in basso, è un microcontroller RISC CMOS a 8 bit ad alta integrazione appartenente alla famiglia PIC, basato su un set di istruzioni molto ridotto (solo 33, tutte eseguibili in un solo ciclo di clock), particolarmente diffuso nelle applicazioni in cui sono essenziali la semplicità, la facilità di programmazione, il basso numero di circuiti di supporto necessari ed il consumo ridotto (vedi: http://ww1.microchip.com/downloads/en/devicedoc/40192c.pdf).

PLA (Programmable Logical Array) MOS di fabbricazione russa, 1995, in package ceramico DIP-48 con specifiche militari.

Esempi di circuiti CMOS full- e semi-custom. Il TPC1020 di Texas Instruments, equivalente alla versione A1020 di Actel, è un FPGA contenente 2.000 elementi logici (gate) NAND utilizzabili, equivalenti a 547 moduli logici, fabbricato con processo Si-HGate a 1,2 micrometri e 2 livelli di metallizzazione; appartiene alla serie TPC10. A destra si vedono tre engineering sample di gate array National Semiconductor, in package CLCC di vario tipo. Essi appartengono alla famiglia SCX MicroMOS. Questa famiglia di gate array CMOS a 2 micron raggiungeva prestazioni equivalenti a quelle dei componenti bipolari (Schottky TTL) della stessa epoca; la complessità varia da 600 (nel caso dell'SCX6206, in basso) a 6.000 gate utilizzabili nella versione originale, poi estesi a 8.000, organizzati in celle. Ciascuna cella è costituita da tre porte NAND oppure NOR a 2 ingressi. Il modello SCX6287 contiene 8.000 gate utili. L'SCX6324 (1985) visibile all'estrema destra è anch'esso un gate array CMOS, appartenente però ad una precedente versione della serie MicroMOS. Contiene 2.400 gate utilizzabili, organizzati in celle da due porte NAND ciascuna. Il NEC marcato TD3D (1982), a sinistra, è stato genericamente identificato come "customizable CMOS array" ed è contenuto in un package in tutto simile a quello del microcomputer NEC D7809.

A sinistra, un FPGA Xilinx XC3090. Ha una capacità di 6.000 gate utili e, prodotto in parecchie versioni differenti (fra l'altro con diversi package) è stato uno tra i componenti di maggior successo della Xilinx nei primi anni Novanta. Xilinx Corp., fondata nel 1984 e con sede in California a San Josè, è assieme ad Altera e Lattice Semiconductors uno dei tre più grandi produttori mondiali di logiche programmabili. Essa ha di fatto creato il mercato degli FPGA, brevettando alla fine del 1984 l'idea e la struttura di questo tipo di circuito (uno dei brevetti di maggior valore nella storia della microelettronica). Xilinx è stato inoltre il primo grande produttore fabless, cioè non dotato di propri impianti di fabbricazione dei chip. L'idea alla base dell'FPGA è stata concepita da Ross Freeman, uno dei fondatori della Xilinx, ex impiegato della Zilog. Proprio mentre lavorava per questa società egli pensò ad un componente funzionante come un "foglio bianco di bloc notes" sul quale l'utente finale potesse realizzare il proprio progetto di circuito logico. All'epoca, la seconda metà degli anni Settanta, si trattava di un concetto a suo modo rivoluzionario, dal momento che per essere realizzato avrebbe richiesto l'impiego di un gran numero di transistor integrati ed a quei tempi le tecnologie VLSI erano ancora assai costose. I fabbricanti di circuiti logici standard, ad esempio la Serie 74, traevano il loro profitto dalla produzione di grandi quantità di componenti d'uso generale relativamente semplici e poco costosi. All'estremo opposto, la realizzazione di ASIC (componenti ad hoc) VLSI specifici per una singola applicazione era un processo lento e costoso. L'idea del FPGA avrebbe permesso la creazione di un nuovo mercato, nel quale vendere circuiti ad elevata complessità programmabili direttamente dall'utilizzatore finale secondo le sue proprie necessità. Circuiti che potevano essere prodotti in grandi volumi, realizzando così le economie di scala già tipiche delle logiche a bassa e media scala di integrazione, ma che nello stesso tempo offrivano complessità paragonabili a quelle dei più costosi chip VLSI dedicati.

L'AMD Am79C81 (a destra) è un RAM Buffer Controller (RBC) CMOS che, assieme al Data Path Controller Am79C82, consentiva l'implementazione di veniva utilizzato nella realizzazione di interfacce di comunicazione ad alta velocità

Tre esempi di gate array VLSI CMOS. A sinistra un NEC (1997) nel caratteristico package PGA utilizzato da altri chip di questo produttore. Gate array di questo stesso tipo si trovano ad esempio nei server MIPS della serie Siemens RM nonché in svariare schede VME. Il componente al centro è un FPGA fabbricato da AT&T/Lucent (1995) appartenente alla famiglia ORCA (Optimized Reconfigurable Logic Array) 2C, che offre una capacità utile - a seconda dei modelli - fino a 40.000 gate. 

AT&T’s SRAM-based FPGAs feature an overall structure similar to that in Xilinx FPGAs, and is called Optimized Reconfigurable Cell Array (ORCA). The ORCA logic block is based on LUTs, containing an array of Programmable Function Units (PFUs).  A PFU possesses a unique kind of configurability among LUT-based logic blocks, in that it can be configured in the following ways: as four 4-input LUTs, as two 5-input LUTs, and as one 6-input LUT. A key element of this architecture is that when used as four 4-input LUTs, several of the LUTs’ inputs must come from the same PFU input. While this reduces the apparent functionality of the PFU, it also significantly reduces the cost of the wiring associated with the chip. The PFU also includes arithmetic circuitry, like Xilinx XC4000 and Altera FLEX 8000, and like Xilinx XC4000 a PFU can be configured as a RAM block. A recently announced version of the ORCA chip also allows dual-port and synchronous RAM. ORCA’s interconnect structure is also different from those in other SRAM-based FPGAs. Each PFU connects to interconnect that is configured in four-bit buses. This provides for more efficient support for “system-level” designs, since buses are common in such applications. The ORCA family has been extended in the ORCA 2 series, and offers very high logic capacity up to 40,000 logic gates. ORCA 2 features a two-level hierarchy of PFUs based on the original ORCA architecture.

Il chip più a destra è un ASIC AMD proveniente da un sistema Wang. Componenti dello stesso tipo sono stati utilizzati anche nei minicomputer Data General Eclipse MV40000.

Engineering sample di un Intel C8207 in package CLCC (1981). Si tratta di un controller di DRAM a due porte sincrone/asincrone indipendenti che può indirizzare direttamente, senza necessità di alcun altro componente a supporto, un massimo di 2 MB organizzati in chip da 16, 64 oppure 256 kbit. L'8207 può funzionare sia con le CPU 8086/8088 a 8 e 10 MHz che con il 286 a 10 MHz (in modo "fast-cycle"). Si può connettere direttamente all'ECC controller Intel 8206 per realizzare un sottosistema DRAM con correzione d'errore trasparente.

Vedi: http://pdf.datasheetarchive.com/indexerfiles/Scans-052/DSAIH00057716.pdf

Engineering sample di cache controller Intel 82496. Questo componente può essere utilizzato tanto con CPU Pentium a 60 ed a 66 MHz quanto con CPU i486DX/DX2 a 50 e 66 MHz, unitamente ai chip SRAM 82491, per formare un sottosistema processore-cache (writeback) ad alte prestazioni adatto sia a configurazioni singole che a 2 processori (SMP). L'82496 è una versione ottimizzata e migliorata del precedente 82495, a suo tempo progettato per i sistemi 486DX. Esso implementa il protocollo MESI per la coerenza della cache e supporta bus di memoria ampi 32, 64 o 128 bit.

Vedi: http://datasheets.chipdb.org/Intel/x86/Pentium/241429_4.PDF

L'Intel 82395DX, anche noto come "386 Smart Cache", è un componente ad alta integrazione per sistemi 386 che contiene 16 KB di cache write-back e un controller derivato dall'82385 rispetto al quale ha introdotto alcune migliorie in grado di incrementare sensibilmente le prestazioni. Progettato e realizzato in Israele, questo chip è stato il primo componente CMOS Intel a superare il milione di transistor integrati: di essi, la maggior parte (circa 800.000) appartiene alla cache. L'82395 si colloca tra la CPU ed il bus di sistema e di fatto sostituisce la tradizionale accoppiata 82385 + chip di cache SRAM. Grazie al buon rapporto prezzo/prestazioni ed all'elevato livello di integrazione, è stato impiegato in molti sistemi entry-level e di fascia media (ad esempio in diverse macchine Olivetti basate su i386DX).

Cache controller TMS390Z55 per microprocessore Texas Instruments Super SPARC TMS390. Il Super SPARC è una CPU SPARC V8 a 32 bit, superscalare, sviluppata da Sun Microsystems ed introdotta nel 1992 con frequenze di 33 e 40 MHz. E' stato prodotto in due versioni, la Super SPARC I anche nota come "Voyager" e la II chiamata "Viking", con alcuni significativi miglioramenti architetturali e la capacità di lavorare fino a 90 MHz. Il Super SPARC, primo microprocessore superscalare commerciale, è stato utilizzato nelle workstation SPARCstation 10 e 20 ed in alcuni modelli di server SMP Sun (SPARCserver 1000). Questa CPU ha una cache di primo livello integrata (20 KB per i dati e 16 KB per le istruzioni) ed una cache L2 opzionale esterna, gestita da un controller simile a questo oppure da prodotti di terze parti sviluppati ad hoc. La presenza del cache controller è essenziale nei sistemi multiprocessore basati tanto su Mbus che su Xbus; il componente TI visibile qui può gestire fino a 2 MB di cache L2 unificata (la dimensione più comune è 1 MB). E' stato impiegato ad esempio nei moduli CPU Mbus per SPARCstation 10 e 20 (moduli SM51, SM61 e SM520).

Vedi: http://www.cpu-collection.de/?l0=co&l1=Sun%20Microsystems&l2=SuperSPARC

Vedi: http://www.obsolyte.com/sun_ss10/

Anche: http://www.cpu-museum.de/?m=Texas+Instruments&f=SuperSparc

A sinistra, CPU Sun UltraSPARC a 200 MHz in package BGA con dissipatore di calore integrato (1996). Introdotto nel 1995, l'UltraSPARC è stato la prima CPU Sun con architettura SPARC V9. E' un processore superscalare a 4 vie senza supporto per l'esecuzione fuori ordine, contenente 2 ALU per interi, 1 unità Load/Store ed 1 FPU a sua volta formata da 5 distinti elementi funzionali. L'UltraSPARC contiene 32 registri fisici a 64 bit che, grazie alla funzionalità di register windowing, possono essere "visti" dal sistema come 128 registri logici. La cache è organizzata su due livelli, primaria (L1) separata per dati ed istruzioni (16+16 KB) e secondaria (L2), unificata. La presenza di quest'ultima, esterna, è obbligatoria per il funzionamento della CPU; la cache L2, a mappatura diretta, può avere un'ampiezza compresa a seconda dei casi tra 512 KB e 4 MB ed è realizzata con SRAM sincrone funzionanti alla medesima frequenza del processore. L'UltraSPARC è stato anche la prima CPU Sun ad implementare il set di istruzioni SIMD per la multimedialità noto come VIS (Visual Instruction Set), alla cui esecuzione sono deputate due specifiche sotto-unità della FPU. UltraSPARC contiene 3,8 milioni di transistor ed è fabbricato da Texas Instruments con processo CMOS EPIC-3 a 0,5 micron, 3 livelli di metallizzazione in Alluminio. Nelle intenzioni di Texas Instruments esso avrebbe dovuto essere prodotto, come il Pentium Pro, con processo BiCMOS, ma dal momento che esso non poteva essere scalato a 0,5 micron e d'altra parte offriva solamente un piccolo guadagno in termini di prestazioni rispetto al CMOS, si scelse di ricorrere a quest'ultimo. Il processo EPIC-3 era stato perfezionato da Texas Instruments con la fabbricazione del DSP MVP (Multimedia Video Processor) o TMS320C80 e comportava significativi miglioramenti rispetto a quello impiegato nella fabbricazione delle CPU SuperSPARC. L'UltraSPARC venne introdotto sul mercato alla frequenza di 143 MHz, impiegata ad esempio nella workstation Ultra 1, e divenne poi disponibile alle frequenze di 166 e 200 MHz. A destra, una CPU SPARC Fujitsu MB86900 del 1990. Si tratta della prima implementazione VLSI in assoluto dell'architettura SPARC, in particolare della sua versione V7, ed è in effetti parte di un chipset formato, oltre che dalla CPU vera e propria, dalla FPU (MB86901) e dal controller della cache. E' stato impiegato nelle prime workstation SPARC, ovvero le macchine della famiglia Sun-4. Funziona a 16,67 MHz ed è implementato con un gate array CMOS da 20.000 gate fabbricato con processo a 1,2 micron e metallizzazione in Alluminio.

CPU UltraSPARC (STP1030BGA) a 167 MHz; questo esemplare era stato in origine testato per la frequenza di clock più bassa, 143 MHz. Entrambe queste frequenze sono state utilizzate nelle workstation Sun Ultra 1 e precisamente nei modelli 140 e 170.

Il Cypress CY7C516 (qui un Engineering Sample del 1987) è un moltiplicatore parallelo 16 per 16 con output a 32 bit, funzionalmente equivalente al più noto AMD Am29516. Opera a 28 MHz con un ciclo di 42 ns (38 nella versione militare). Si tratta di un componente dedicato all'impiego in sistemi bit-slice microprogrammati o in supporto a CPU AMD 29K.

Il chip Logic LRF08GC-35, fabbricato da American Microsemiconductor (qui in versione con specifiche militari) è una memoria SRAM veloce a 5 porte con una capacità di 8 word per 8 bit, utilizzabile come register file in sistemi basati su ALU bitslice oppure su DSP.

2.7.2015 - CPU per avionica (notare la dicitura "Airborn" sul connettore di backplane), 2002, con due processori Intel TA80C186XL-20 ed  altri componenti con specifiche militari tra cui due moduli multichip di DRAM prodotti da National Hybrid. Sulla scheda ci sono anche due ASIC QuickLogic e due memorie SRAM fabbricate dalla White Electronic Designs Corporation (WEDC), contenute in moduli multi-chip ceramici a doppia cavità. Il TA80C186XL è un microcontroller CMOS a 16 bit con architettura x86; esso costituisce una re-implementazione Modular Core a basso consumo del classico e diffusissimo Intel 80186 NMOS col quale è compatibile a livello di pin e di funzionalità di base. 

26.4.2016 - Scheda per avionica Honeywell con moduli multichip fabbricati dalla stessa casa ed altra componentistica con specifiche militari (1996).

SRAM a bassa densità di fabbricazione sovietica per impieghi aerospaziali, prodotta con tecnologia SOS (Silicon On Sapphire). Circa 1987.

Modulo multichip con specifiche militari, URSS 1989.

Questa scheda è una modulo di memoria SRAM utilizzata nella cache di alcuni modelli di mainframe Fujitsu ed Amdahl. L'esemplare risale al 1991 e contiene 36 chip Fujitsu MB82006-35CV da 288 kbit (18 per ogni lato) e 5 chip Fujitsu MB755, probabilmente interfacce o driver. L'MB82006 è un componente poco documentato: nel web non si trovano né datasheet né le specifiche precise. Una scheda identica è visibile qui: http://www.chips.5u.com/idxodd.html (ma senza ulteriori dettagli).

Modulo DRAM da 4 MB appartenuto ad un minicomputer AT&T della famiglia 3B, molto probabilmente un 3B2/300. In questa pagina è visibile la scheda CPU di tale macchina; a sinistra nella foto i due connettori per i moduli di memoria. I minicomputer AT&T 3B2, commercializzati anche col marchio Olivetti, erano basati su processore WE-32000, considerato da molti il primo microprocessore commerciale a 32 bit. In questa scheda i chip di memoria sono fabbricati da Fujitsu.

Vedi: http://ferretronix.com/tech/3b2/

Una scheda di memoria identica è visibile qui: http://www.computermuseum.org.uk/fixed_pages/AT&T_3B2.html

Scheda CPU di server fault-tolerant Prime Computer con due moduli processore/cache basati su MIPS R3000. Prime Computer, anche nota come PR1ME, è stata un produttore americano di minicomputer e server attivo tra il 1982 ed il 1992, storicamente importante per essere stata un pioniere di alcune tra le tecnologie chiave di questo settore. Alcuni dei suoi soci fondatori avevano partecipato attivamente al Progetto MULTICS presso il MIT. I primi minicomputer Prime erano sistemi a 16 e 32 bit ispirati all'architettura di sistema dell'Honeywell DDP 516, cui aggiungevano però svariati importanti miglioramenti. Ad esempio il Prime 300, commercializzato a partire dal 1974, fu uno dei primi minicomputer con memoria virtuale supportata direttamente a livello del microcodice. Il Prime 750, presentato nel 1979, poteva competere con il VAX 11/780 ed è quindi considerato uno dei primi "superminicomputer". Parecchi sistemi 750 vennero installati presso università e centri di ricerca, sia negli Stati Uniti che in Europa. Nel 1987 Prime Computer introdusse una linea di server Unix basati su CPU Intel 80386: tali macchine, note come EXL-316, erano all'epoca i più potenti server commerciali con architettura x86. Prime giocò anche un ruolo importante nello sviluppo dei sistemi CAD, in particolare di quelli orientati al disegno ed alla progettazione meccanica, dal momento che collaborò strettamente ed a lungo allo sviluppo di un CAD utilizzato internamente dalla Ford, il PDGS (Product Design Graphics System). Prime utilizzò le competenze acquisite nel corso di questo progetto e quelle mutuate da una società inglese, la Cambridge Interactive Systems di cui Prime deteneva i diritti di commercializzazione di un software CAD chiamato MEDUSA, per sviluppare un pionieristico ed avanzato sistema CAD/CAM parametrico, il PRIMEDesign. L'hardware di quest'ultimo faceva uso di processori MIPS ed altre tecnologie sviluppate da Silicon Graphics. Tali CPU vennero poi utilizzate in alcuni modelli di server SMP fault-tolerant prodotti da Prime tra il 1989 ed il 1992.

Vedi: http://www.pr1mehost.com/history.html; http://www.malch.com/prime/.

Scheda processore Solbourne Warpdrive appartenuta ad un Solbourne Series 6/500 con CPU SuperSPARC (TI TMS390) a 33 MHz. I sistemi Solbourne Series 6 e 6E erano server SMP basati su architettura Kbus, concettualmente simili al Sun SPARCserver-1000 benché basati su un bus di sistema a commutazione di circuito (circuit-switched) anziché a commutazione di pacchetto (packet-switched) quale il più evoluto XDbus. Le macchine Solbourne avevano una, due o più schede processore (in numero massimo variabile a seconda del modello), con a bordo una cache L2 ampia in questo caso 1 MB ed una cache di terzo livello (L3) ampia 16 MB, per ovviare alla latenza piuttosto elevata del bus di sistema. Il sistema operativo era rappresentato dall'OS/MP, una versione personalizzata del SunOS 4.x appositamente modificata per supportare un'architettura a parallelismo massiccio. La differenza tra le serie 6 e 6E sta nella frequenza di clock delle CPU, 50 MHz nel secondo caso contro 33 MHz della Serie 6. Il controller della cache è l'usuale MXCC del SuperSPARC, mentre il controller di memoria è rappresentato da una coppia di ASIC CMOS siglati "mDP" sviluppati da Solbourne e fabbricati da AT&T; un limite di questa soluzione è rappresentato dal fatto che essa supporta solo le specifiche M-Bus di primo livello (M-Bus Level 1), dunque una sola CPU per scheda. Il connettore M-Bus visibile accanto alla CPU non può dunque essere utilizzato per installare un processore aggiuntivo (come invece accade ad es. nelle SPARCstation 10 e 20), ma solo un'eventuale rimpiazzo/upgrade della CPU su scheda ad es. con un modello a 50 MHz, operazione peraltro difficoltosa perché costringe a togliere la scheda adiacente nello chassis a causa dell'altezza raggiunta dalla scheda processore col modulo aggiuntivo. Nella pratica lo slot M-Bus veniva utilizzato dal produttore per i test di funzionalità. Ricordiamo brevemente che l'M-Bus è un bus di sistema a 64 bit con indirizzi a 36 bit (quindi 64 GB di spazio di indirizzamento) utilizzato nelle prime macchine Sun SMP come ad esempio il server SPARCserver 600MP e la SPARCstation 10. Sviluppato congiuntamente da Sun Microsystems e ROSS Technology nel 1990/1, consente un transfer-rate di 80 MB/s (con una prestazione di picco di circa 320 MB/s) se funzionante a 40 MHz, e di 100 MB/s a 50 MHz. Le specifiche M-Bus consentono un massimo teorico di 8 CPU per scheda; nella pratica le macchine SMP basate su questo bus hanno un massimo di 4 processori. Il K-Bus o Kbus è invece un sistema di interconnessione ad alta velocità che serve a collegare tra loro più schede M-Bus: esso è stato utilizzato quasi esclusivamente nei server Solbourne Series 6, 6E e 7. La Solbourne Computer Systems, fondata nel 1987, era un produttore di workstation e server con sede a Longmont, in Colorado. Divenne famosa soprattutto per i suoi sistemi SPARC SMP basati su architettura Sun-4 e Kbus, molto diffusi negli Stati Uniti. La serie 4 con CPU Fujitsu MB86900 è nota per essere stata la prima vera macchina SPARC SMP, prima dell'avvento del server Sun SPARCserver 600MP.

Vedi: http://mbus.sunhelp.org/systems/solbourne/series6.htm

Anche: http://www.cbronline.com/news/solbourne_prepares_its_superscalar_series_6_symmetric_multiprocessors

Anche: http://bitsavers.informatik.uni-stuttgart.de/pdf/solbourne/Solbourne-PriceList-Sep-93.txt

20.4.2015 - Dettaglio della scheda CPU di una macchina Solbourne Series 5, denominata "Warpdrive+" (1991, commercializzata dal 1989), con CPU SPARC Cypress CY7C601-40 GC Plus a 40 MHz ed FPU Weitek 3171. Riporto dal sito http://www.cpushack.com/2013/01/18/cpu-of-the-day-cypress-cy7c601-25mhz-sparc/: "The first version was made by Fujitsu on a 20,000 gate array at 1.2 micron and ran at 16.6MHz. In July 1988 Cypress (later to be spun off as Ross and make the famous HyperSPARC line) announced the CY7C601. This was the fastest implementation of the SPARC at the time. It was made on 0.8u CMOS process and contained 165,000 transistors, dissipating around 3.3Watts. As was typical of many processor designs of the time, it was an integer only processor, requiring a separate chip (the CY7C602) for floating point work. In September of 1988, Cypress cross licensed the '601 to Texas Intruments in exchange for rights to the 8847 floating point processor. This was mainly to appease one of Cypress main customers who demanded that a second source for the ‘601 chips be available, a demand more common in the 1970s then in 1988 but Cypress obliged. Cyrpress also gained the rights to make the next generation SPARC processor that TI was developing. TI would go on to make many SPARC processors, and continued to be the primary fab for Sun up through the SPARC T2 Plus in 2008". La FPU 3171 corrisponde al componente Cypress CY7C602-40. Immagini dei chip della CPU e della FPU sono visibili qui: http://cpumuseum.jimdo.com/cpu-die-photography/sparc/. La medesima coppia di processori è utilizzata anche sulle macchine Solbourne Series 700 (vedi: http://www.josvandijken.nl/computer_solbourne_series_700.php). 

Vedi: http://bitsavers.trailing-edge.com/pdf/solbourne/Solbourne_Series_5_Brochure_Oct89.pdf

Questa scheda VME proviene da un simulatore di sonar impiegato dalla Marina Britannica. Si tratta di un processore di I/O contenente 3 DSP Motorola 56001 a 20 MHz e svariati moduli di memoria Hitachi. Il 56001 è un membro della variegata e longeva famiglia di DSP single-chip Motorola 56K (56000), commercializzata a partire dalla metà degli anni Ottanta e tuttora molto diffusa. I DSP 56K sono stati utilizzati in moltissime applicazioni diverse: telecomunicazioni, elaborazione audio/video, telefonia, acquisizione dati e così via. Sono anche presenti in alcune famose workstation degli anni Novanta, quali la NeXT e l'Indigo di Silicon Graphics. La famiglia 56K, a differenza della successiva e meno fortunata serie 96000, fa uso di aritmetica a virgola fissa (fixed-point); sia i dati che le istruzioni sono a 24 bit. L'architettura di sistema è di tipo Harvard con alcune peculiarità, tra cui la presenza di tre differenti e separati spazi di indirizzamento, due per i dati ed uno per le istruzioni. I DSP di questa serie integrano un supporto hardware per l'esecuzione degli algoritmi FFT in virgola mobile. 

Vedi: http://en.wikipedia.org/wiki/Motorola_56000

Scheda VME fabbricata dalla Martin Marietta Laboratories (MML), una delle società del gruppo Martin Marietta -oggi Lockheed- che si occupavano di ricerca e sviluppo in ambito aerospaziale e difesa (vedi una descrizione della fabbrica: http://www.mde.state.md.us/assets/document/brownfields/Martin_Marietta.pdf), contenente 9 DSP floating-point a 32 bit ADSP-21060 "SHARC" di Analog Devices, qui con specifiche militari (1996). SHARC è l'acronimo di Super Harvard Architecture single-chip Computer; si tratta di una tra le architetture Harvard/VLIW di maggior successo nel settore dei DSP. Il 21060 offre performance di circa 40 MIPS e 120 MFLOPS con un ciclo di istruzione della durata di 25 ns. Questo DSP è dotato di 4 bus indipendenti di cui due per il fetch dei dati, uno per quello delle istruzioni ed un quarto per le operazioni di I/O. Contiene una cache SRAM, un controller di I/O e tutta la circuiteria necessaria al multiprocessing. E' disponibile in diversi tipi di package: CQFP plastico a 240 contatti, MQFP-240 con specifiche estese di temperatura/umidità e BGA a 225 punti di contatto. Il 21060 è stato impiegato in moltissime applicazioni, in virtù soprattutto dell'elevato livello di integrazione che lo rende un vero e proprio SoC (System On-Chip), riducendo al minimo il numero di componenti esterni necessari. Per questo stesso motivo è facile realizzare con esso schede DSP multiprocessore.

Vista frontale della scheda CPU di un HP 64000 Logic Development System, 1983. Questa macchina era un sistema di sviluppo per la progettazione di hardware e software per diverse famiglie di processori (Intel 8080/8085, x86, Motorola 6809/68K, National NS32K...), comprendente un analizzatore logico ed uno o più emulatori per le diverse CPU. Esisteva sia nella versione desktop che in quella trasportabile, o più precisamente "luggable" dal momento che aveva le dimensioni di una valigia. Il 64000 faceva uso della medesima CPU impiegata nell'HP 9845 e descritta dettagliatamente in questa pagina. Questo stesso microprocessore multichip realizzato con tecnologia Silicon On Sapphire è stato impiegato anche in altre apparecchiature HP (analizzatori di spettro come il 3585 e per telecomunicazioni quali il 3779C).

Questa scheda HP del 1983 è un Intelligent Network Processor (P/N 30020-69009 DEV INP) utilizzato nei minicomputer HP 3000 modello 64 e modello 70. L'immagine non è molto nitida in quanto si tratta della scansione di una foto fatta diversi anni fa. L'INP era una sorta di processore per comunicazioni che serviva a gestire connessioni multiple di modem e terminali seriali, con velocità fino a 19,2 Kbps. Sulla scheda si notano diversi componenti Intel (8237, 8253, 8242), Signetics (2652, in alto), AMD (memorie ROM, in basso a destra) ed HP (i chip più grandi, a 48 pin). Uno di essi ha le funzioni di microprocessore ed è siglato 1AE8-6101. Un'immagine dettagliata della scheda è visibile in questa pagina. Questa è invece una pagina dedicata ai microprocessori HP 3000.

Scheda CPU di minicomputer Wang VS5600. Il processore è realizzato con ASIC VLSI ed LSI Logic. La famiglia Wang VS venne introdotta nel 1977 ed alcuni dei modelli più recenti sono tuttora in uso a distanza di quasi 36 anni. Si tratta di una serie di minicomputer a 16, poi a 32 bit, con un set di istruzioni compatibile con quello dell'IBM System/360. Queste macchine fanno uso di un sistema operativo proprietario che consente tanto la multi-utenza in modo interattivo che l'esecuzione di complesse procedure batch. Il linguaggio di programmazione impiegato tipicamente è il COBOL ed i calcolatori VS sono infatti progettati essenzialmente per l'impiego in applicazioni commerciali e da ufficio. Mentre i modelli più potenti avevano dimensioni e prestazioni paragonabili a quelle dei mainframe loro contemporanei, i modelli più piccoli come i VS5000/5600 erano paragonabili, per dimensioni e velocità, ai PC 486DX dei primi anni Novanta. La famiglia Wang VS ha avuto un notevole successo commerciale negli Stati Uniti, meno in Europa dove si è scontrata con la forte concorrenza dei sistemi Bull ed IBM.

Vedi: http://en.wikipedia.org/wiki/Wang_Laboratories; http://www.tjunker.com/; http://wangvs.ning.com/photo/wang-vs5600

Questa scheda per DEC PDP-11 e VAX prodotta da The Ultimate Corp. è un coprocessore dedicato all'esecuzione del microcodice del sistema operativo Pick. Questo sistema, progettato e commercializzato a partire dalla metà degli anni Sessanta, era un particolare ed avanzato sistema operativo tmesharing multiutente con memoria virtuale basato su un database multi-dimensionale, orientato alle applicazioni commerciali e di analisi dei dati. Le sue potenzialità erano notevoli e superiori a quelle di tutti gli altri sistemi di database dell'epoca: tuttavia, la scarsa attenzione riservata alla pubblicità ed al marketing da parte dei suoi produttori l'ha relegato ad un ruolo di nicchia, lontano dal grande pubblico. Pick è stato portato su una quantità di diverse architetture di mainframe, mini e microcomputer (IBM 360/370, DEC, DG Nova, Intel x86...). A tutt'oggi, a più di 30 anni dalla sua introduzione, esiste ancora una comunità piuttosto attiva di utenti sparsi nel mondo. Pick nacque nel 1965 su piattaforma IBM/360 con il nome di GIRLS (Generalized Information Retrieval Language System), progettato ed implementato da D. Nelson e D. Pick alla TRW su commissione dell'Esercito USA. A partire dal 1973 esso venne commercializzato da Microdata; il sistema operativo costruito attorno ad esso, noto col nome Reality Operating System, veniva invece sviluppato e licenziato da Northgate Information Solutions. Col passare degli anni vennero apportati numerosi miglioramenti, tra cui uno specifico linguaggio di programmazione derivato dal BASIC con estensioni specifiche per terminali semigrafici ed un linguaggio in "stile SQL" per la ricerca (query) ed il reporting, chiamato ENGLISH. Pick venne concesso in licenza ad una gran quantità di terze parti produttrici di software, una trentina circa, che ne commercializzarono le proprie versioni (ognuna con qualche caratteristica particolare che la distingueva dalle altre). Alcuni di tali prodotti sono tuttora sul mercato. La prima implementazione commerciale di Pick si basava su piattaforma Microdata ed era nota come Reality: funzionava o su macchine dedicate oppure su minicomputer quali PDP-11, NOVA ecc., grazie a specifici hardware di supporto deputati all'esecuzione del microcodice del sistema operativo. Nel 1978 The Ultimate Corp., una casa di software americana, introdusse una seconda implementazione basata su minicomputer Honeywell Level 6. Nel 1982 venne presentata la versione per sistemi DEC PDP-11 e VAX, basata su un coprocessore bit-slice sviluppato ad hoc, in tutto simile alla scheda riprodotta qui, cui spettava il compito di eseguire il firmware costituente il sistema operativo Pick. The Ultimate produsse anche minicomputer basati su CPU Motorola 68K e schede coprocessore per DEC VAX anch'esse dotate di CPU 68000 (vedi). In seguito a problemi finanziari, la Ultimate Corp. venne venduta al Gruppo Bull che continuò la manutenzione, ma non lo sviluppo, dei prodotti correlati a Pick.

Vedi: http://www.microdata-alumni.org/historical.htm

Scheda emulatrice PC AT/DOS per IBM PC RT (1985). Contiene una CPU Intel 80286 a 8 MHz con socket per il coprocessore 287 opzionale, oltre ai controller di interrupt 8259 (due in cascata) ed al PIC - Programmable Interval Timer 8254. L'emulatore comprende anche una scheda con 1 MB di RAM, qui non riprodotta. Esso consente di eseguire software per MS-DOS e PC-DOS, in modalità sia reale che protetta, sui PC RT (6150) basati su CPU RISC e sistema operativo AIX. Negli anni Ottanta questo tipo di schede era comune: esistevano ad esempio emulatori per DOS (x86) e CP/M (Z80) da installare su architetture Motorola 68K, su macchine Unix e su praticamente ogni tipo di personal computer/workstation "non Intel". Come si vede si tratta di un'ordinaria scheda AT a 16 bit: infatti, il PC-RT utilizzava la medesima architettura di I/O (bus ISA) del PC AT. 

.

Scheda Qbus (per PDP-11 e VAX) Avalon A7Q, 1993, con CPU RISC Motorola 88100 a 33 MHz, cache/MMU 88200 e 4 MB di RAM. Questa scheda veniva utilizzata essenzialmente come coprocessore per l'elaborazione di immagini (calcoli FFT, convoluzione/deconvoluzione, compressione JPEG), ad esempio in apparecchiature per TAC o risonanza magnetica. In questa pagina: http://www.classiccmp.org/pipermail/cctech/2013-April/103073.html si trova una discussione sulla scheda A7Q e su altri prodotti Avalon (commercializzati anche con il marchio Teraflop). L'impiego di schede dedicate, equipaggiate spesso con processori RISC (i960, i860, MIPS, 88000...) era comune durante gli anni Novanta nelle applicazioni che richiedevano un'elevata potenza di calcolo che non poteva essere offerta dalle CPU dei minicomputer e delle workstation dell'epoca se non a prezzo di un pesante rallentamento delle prestazioni globali della macchina. Un buon esempio in ambito PC/DOS/Windows è rappresentato dalle schede per OCR (riconoscimento ottico dei caratteri) quali la serie TrueScan di Calera, basate su processore Motorola 68020/68030. In ambiente Mac ricordiamo invece le famigerate schede "Photoshop Accelerator" basate su DSP a 16/32 bit.

25.4.2015 - Dettaglio della scheda processore di un server Honeywell-Bull DPS/6000 (DP6002, 1989), realizzata con ASIC CMOS VLSI. In particolare a destra c'è la CPU vera e propria, al centro la MMU opzionale (in questo caso: http://pradesworld.altervista.org/retrocomputing/img/DPS6000.JPG la MMU non è presente, mentre su questa scheda è invece montata) ed a sinistra un curioso chip PGA di colore bianco, fabbricato da VLSI, che implementa l'unità di esecuzione del "Commercial Instruction Set", ovvero un'estensione delle microistruzioni di base dedicato all'accelerazione in hardware dei programmi COBOL.

Vedi: http://www.feb-patrimoine.com/projet/gcos8/large_systems.htm; http://www.feb-patrimoine.com/projet/gcos6/gcos6.htm

Una macchina DPS/6000 completa è visibile in questa pagina.

Scheda della CPU di un minicomputer Data General Desktop Generation model 30 (brevemente DG-30). La serie di minicomputer Desktop Generation venne introdotta da Data General alla fine degli anni Settanta con l'intento di affiancare alle tradizionali macchine di medie e grandi dimensioni una serie di sistemi di fascia bassa e medio-bassa con caratteristiche tali da adattarsi alle necessità delle piccole aziende e degli uffici. Architetturalmente la famiglia DG deriva dalla serie Eclipse. Il suo primo membro, il DG10, aveva una doppia CPU (DG + Intel) formata da due processori strettamente accoppiati ed in grado di eseguire contemporaneamente un sistema operativo quale il DOS oppure il CP/M ed un altro tipico dei minicomputer Data General, il DG/RDOS, sfruttando la presenza delle due CPU per eseguire in modo concorrente più operazioni. Per quanto dotato di una concezione hardware avanzata, il DG10 ottenne un limitato successo commerciale a motivo del costo elevato e del fatto che era essenzialmente un sistema pensato per eseguire software "vecchio", sviluppato cioè per macchine già esistenti (NOVA ed ECLIPSE) piuttosto che un prodotto veramente nuovo. Gli altri modelli della famiglia DG, il 20 ed il 30, erano invece dedicati all'esecuzione di applicazioni commerciali sviluppate in linguaggio COBOL e di database relazionali; queste macchine si basavano su CPU DG microECLIPSE e condividevano parte dell'hardware della famiglia NOVA MP (Micro Products, ovvero sistemi basati su microprocessore).

Vedi: http://en.wikipedia.org/wiki/Data_General#Desktop_Generation

Scheda di minicomputer Data General DG-10.

Vedi: http://users.rcn.com/crfriend/museum/machines/DG-DeskGen.html

Scheda CPU di minicomputer HP 1000 modello A600+ (2156A, 1983). Il modello A600 introduceva, rispetto ai precedenti della stessa serie, la nuova e più veloce CPU "Lightning" progettata da T. Szolyga e capace di una prestazione superiore ad 1 MIPS. "Lightning" (fulmine) era un riferimento al rivale PDP-11/23 la cui CPU era all'epoca nota col soprannome "Thunder" (tuono). I minicomputer HP 1000 della serie "A" erano alloggiati in rack standard da 19 pollici che potevano contenere 20 schede di espansione; nel 1983 vennero introdotti i modelli Micro/1000, più piccoli, che potevano essere montati come computer desk-side su ruote oppure in rack ed avevano la possibilità di alloggiare al massimo 14 schede di espansione. La CPU A600 è contraddistinta dalla sigla HP 2106AK; sempre nel 1983 il modello A600 (introdotto l'anno prima) venne sostituito dal più veloce A600+ la cui CPU è siglata 2106BK. Vedi: http://www.hpmuseum.net/display_item.php?hw=592

Scheda CPU del minicomputer HP 1000 modello 600 (1982).

14.10.2016 - Scheda "Lower Processor" della CPU di un minicomputer HP 1000 modello A700, introdotto nel 1982 (questo esemplare è del 1987). Questo processore è noto come "Phoenix" e, rispetto a quello del modello A600 (denominato invece "Lightning") offre la possibilità di avere un'unità in virgola mobile (FPU) opzionale. Esso è suddiviso in due schede collegate, "Upper" (che contiene il microcodice e l'unità di controllo) e "Lower" che contiene la ALU a 16 bit implementata con 4 bit-slice AMD Am2903, il micro-sequencer, i registri della CPU ed il generatore di clock. Vedi: http://www.hpmuseum.net/display_item.php?hw=593. Il modello A700 poteva essere dotato di una FPU opzionale (12156A Hardware Floating Point Processor) che offriva prestazioni pari in media al 40% circa di quelle dell'unità in virgola mobile del più potente A900.

Vedi: http://bitsavers.informatik.uni-stuttgart.de/pdf/hp/1000/A-series/02137-90005_A700_ERD_Jun84.pdf 

14.10.2016 - Scheda "Data Path" della CPU di un minicomputer HP 1000 modello A900. Questa macchina, commercializzata a partire dal 1982 (vedi qui l'annuncio su Computerworld), era la più potente della famiglia HP 1000. Il processore, denominato "Magic", era dotato di memoria cache, FPU standard (IEEE 754) e 768 KB di RAM ECC e raggiungeva i 3 MIPS, rendendo l'A900 il più veloce minicomputer real-time al mondo al momento della sua introduzione, tanto che l'esportazione dagli USA poteva avvenire senza restrizioni solamente verso 16 Paesi mentre per tutti gli altri si rendeva necessaria una licenza singola e personalizzata. La CPU è formata da 4 schede: Memory Controller, Cache Controller, Data Path, Sequencer (vedi). Implementa una pipeline a due livelli che raggiunge i 3,7 MB/s di I/O e supporta fino a 6 MB di RAM; la cache è invece ampia 4 KB ed è connessa alla RAM di sistema da un bus a 32 bit; è inoltre dotata di un'apposita logica di supporto per la generazione in hardware dell'indirizzo di destinazione, ed è accreditata dal costruttore di una percentuale di successo (hit-rate) dell'88%. Le micro-istruzioni sono lunghe 48 bit. Come anche nei modelli A600 ed A700, il microcodice è personalizzabile dall'utente attraverso l'opzione "Writable Control Store". Viene fornito un apposito strumento software, detto "Paraphraser", per convertire in routine di microcodice specifici blocchi di programma. La prestazione di picco in virgola mobile, a singola precisione, è di circa 500 kFLOPS (contro 245 kFLOPS a precisione doppia) ed è ottenuta tramite una FPU interamente hardware. A quest'ultima si aggiungono, come opzioni, un set di istruzioni per il calcolo scientifico (SIS) a singola e doppia precisione (si tratta in effetti di macroistruzioni che eseguono calcoli trigonometrici e trascendentali, cui si aggiunge una specifica istruzione, al tempo unica nel suo genere in questa classe di macchine, che consentiva la valutazione diretta di espressioni polinomiali) ed un gruppo di istruzioni per eseguire operazioni su vettori e matrici (VIS, Vector Instruction Set) che, sfruttando al meglio l'hardware della FPU, consentiva una prestazione di picco di circa 830.000 addizioni, sottrazioni e moltiplicazioni vettoriali al secondo. Le prestazioni di picco in singola precisione della FPU sono di circa 575.000 addizioni o sottrazioni, 530.000 moltiplicazioni e 250.000 divisioni per secondo.

Vedi: http://www.hpmuseum.net/display_item.php?hw=594

Vedi: ftp://bitsavers.informatik.uni-stuttgart.de/pdf/hp/1000/5953-8761_HP_1000_A-Series_Hardware_Technical_Data_Dec84.pdf

Scheda HP BASIC Controller (HP 82300/82321) per PC della serie HP Vectra. Questo esemplare è del 1988. Contiene una CPU Motorola 68000, un'interfaccia HP-IB e 256 KB di RAM locale. Consente al PC di eseguire software sviluppato in HP BASIC e, con un modulo aggiuntivo, in HP Pascal. Vedi: http://www.hpmuseum.net/display_item.php?hw=681. Una versione più recente è dettagliatamente descritta in questa pagina.

Questa scheda per PC AT (ISA a 16 bit) è un coprocessore per OCR (riconoscimento ottico dei caratteri) Calera TrueScan. Contiene un microprocessore Motorola 68020 a 16 MHz e 4 MB di DRAM. La Calera Corp. è stata per anni leader nel mercato delle soluzioni hardware e software per scansione di immagini e riconoscimento ottico di testi. Molti suoi prodotti venivano commercializzati in diverse versioni per PC, PS/2 (bus MCA) e Macintosh (NuBus): qui si può vedere questa stessa scheda nella versione MicroChannel. La scheda riporta la denominazione "The Palantir Corporation", che era il nome originario della Calera Recognition Systems. "Palantir" è un termine familiare per i lettori di Tolkien e, ne Il Signore degli Anelli, identifica un gruppo di pietre magiche che consentono la visione a distanza. Negli anni Ottanta e Novanta, prima che le CPU per PC e Mac raggiungessero prestazioni elevate, erano relativamente comuni le schede add-on che fungevano da coprocessore per applicazioni specifiche richiedenti molte risorse in termini di capacità di calcolo e memoria. Esempi comuni sono i coprocessori per PhotoShop in ambiente Mac basati su DSP e le schede acceleratrici per applicazioni FORTRAN. Questo tipo di schede poteva sollevare il processore principale dal gravoso compito di gestire operazioni complesse come l'elaborazione di immagini, il riconoscimento ottico di caratteri e così via, eseguendo direttamente in hardware le relative funzioni.

1.8.2014 - Scheda Calcomp CGS-470 (1987). E' un processore grafico raster (bitmap) a 16 colori contemporanei ed 8 piani per bus VME, controllato da una CPU Motorola 68020 a 12 MHz; le operazioni di manipolazione dei dati grafici sono invece affidate ad un DSP Western Electric/AT&T DSP32-M (in basso a sinistra), versione ridotta con package DIP a 40 pin del più potente e diffuso DSP32C. La Calcomp è nota soprattutto come fabbricante di tavolette grafiche per CAD, tanto da essere identificata con tali apparecchiature; essa ha però realizzato anche altri tipi di prodotti, in particolare soluzioni ad-hoc per CAD/CAM professionale 2D come questa scheda VME. La maggior parte della logica è implementata con gate array CMOS di LSI Logic. In alto a destra, il Brooktree Bt458 funzionante a 110 MHz con palette (tavolozza) da 256 colori, uno dei RAMDAC più popolari degli anni Ottanta.

Scheda di interfaccia MFM/SASI prodotta da Data Technology Corporation, DTC (1984). SASI, acronimo di Shugart Associates' System Interface, è un protocollo di interfacciamento tra computer e periferiche di memorizzazione di massa (dischi, unità nastro) introdotto nel 1978 e considerato come il nucleo iniziale dello standard SCSI. Il controller SASI fa da ponte tra l'interfaccia di I/O a basso livello del disco ed un sistema mini- o microcomputer. Normalmente questo tipo di controller era montato assieme al disco stesso, anche se non mancavano soluzioni simili a quella visibile qui che consentivano il collegamento di periferiche SASI a controller MFM/ST-506 tipici ad esempio dei PC XT ed AT. I comandi SASI sono un sottoinsieme di quelli della specifica SCSI-1, con la quale i dischi SASI sono considerati in generale compatibili. Il protocollo SASI venne standardizzato dall'ANSI all'inizio del 1982; dal momento che non era opportuno lasciare il nome di uno specifico produttore in uno standard industriale, esso venne ridenominato SCSI (Standard Computer System Interface). Le più vecchie schede SASI e SCSI erano basate su componenti standard e gate array, come in questo caso; NCR introdusse nel 1983 il primo controller SCSI single-chip.

Scheda bridge SASI/SCSI Emulex, 1985, con chipset NCR formato dal controller 53C85 in package DIP plastico a 48 pin. Il 53C85, introdotto nel 1984, è stato uno tra i primi controller SCSI single-chip disponibili sul mercato.