WDC 65C02
Il WDC 65C02 è un microprocessore ad 8 bit prodotto nel 1982[1] da Western Design Center (WDC) come evoluzione in tecnologia CMOS del popolare 6502 di MOS Technology, realizzato in tecnologia NMOS. Il processore, nel corso degli anni, è stato prodotto su licenza anche da National Cash Register (NCR), GTE, Rockwell, Synertek e Sanyo. Il 65C02 fu progettato da Bill Mensch dopo che questi lasciò MOS Technology nel 1976 per fondare WDC (1978). Attualmente il chip continua ad essere prodotto e venduto da WDC.[2] Informazioni generaliIl nome completo del processore è W65C02S: la lettera "W" indica il produttore (WDC); la lettera "C" indica che il processore è una versione CMOS del 6502; la lettera "S" indica che il componente ha un core completamente statico, ossia che il clock principale può essere rallentato indefinitamente fino a fermarlo completamente, sia nello stato alto che in quello basso.[3] Il W65C02S ha un'architettura interna ad 8 bit e può indirizzare fino a 65.536 locazioni di memoria (spazio di indirizzamento a 16 bit). Grazie alla die di dimensioni ridotte ed al set di istruzioni di lunghezza variabile, il processore è indicato per applicazioni di tipo SoC (System on a Chip).[3] WDC fornisce anche il sorgente Verilog del core del 65C02 per la programmazione di integrati ASIC e FPGA. Caratteristiche tecniche principali
Differenze rispetto al 6502IstruzioniIl 65C02 condivide con il suo predecessore l'architettura ad 8 bit delle istruzioni e l'indirizzamento della memoria a 16 bit aggiungendo però alcune migliorie, tra cui gli opcode per inserire e togliere dallo stack i registri "X" e "Y". Gli opcode non definiti presenti nel set di istruzioni del 6502 sono stati convertiti in operazioni Il 65C02 risolve anche il bug sull'istruzione di salto indiretto Il 65C02 introduce anche istruzioni per la manipolazione dei singoli bit ( Registro di statoAltri problemi del 6502 risolti nella versione CMOS di WDC sono quelli relativi al registro di stato, che contiene 8 singoli flag che possono essere impostati a 1 oppure a 0. Tali impostazioni possono avvenire sia come risultato di un'operazione aritmetica o di manipolazione dei bit sia tramite codice.
In tutte le versioni NMOS del 6502 il flag decimale "D" non è inizializzato correttamente dopo un reset o quando viene eseguito un interrupt, per cui si possono avere comportamenti anomali del software. Il 65C02 sistema questo bug forzando a 0 il flag "D" dopo un reset o al momento dell'inizio del trattamento di un interrupt. Il 6502 ha, inoltre, un altro bug che affligge il flag "N", che non viene influenzato dalle operazioni in modalità BCD: anche in questo caso il 65C02 risolve il problema, al costo di un ciclo di clock aggiuntivo nel tempo di esecuzione del codice. 65SC02 e derivatiIl 65SC02 è un processore derivato dal 65C02 rispetto al quale si differenzia per alcune istruzioni aggiuntive: non è chiaro chi fu il progettista originale del chip, anche se in commercio era distribuito da GTE. Dal 65SC02 derivano l'Hudson HuC6280, usato nella console TurboGrafx-16, ed il 65CE02, utilizzato nel microcontrollore CSG 4510 del prototipo di computer Commodore 65.[4] ImpieghiHome computer
Console giochi
Altri prodotti
Note
Voci correlateAltri progetti
Collegamenti esterni
|
Portal di Ensiklopedia Dunia