Przejdź do zawartości

WDC 65C02

Z Wikipedii, wolnej encyklopedii
Procesor WDC 65C02
Procesor WD 65C02

WDC W65C02Smikroprocesor firmy Western Design Center, ulepszona wersja CMOS popularnego MOS 6502.

Układ zaprojektowany został przez założyciela firmy WDC, Billa Menscha - jednego z projektantów 6502. W różnych okresach projekt licencjonowany był firmom takim jak NCR Corporation, GTE, Rockwell International, Synertek oraz Sanyo. W65C02S jest niskonapięciowym, 8-bitowym (8-bitowe rejestry i szyna danych) mikroprocesorem ogólnego przeznaczenia. Ma w pełni statyczny rdzeń, umożliwiający wstrzymanie przebiegu zegarowego. Lista instrukcji oraz ręcznie optymalizowany rdzeń predestynują ten układ do zastosowań system-on-a-chip (SoC). Firma WDC stworzyła opis rdzenia w języku Verilog w celu jego zastosowania w układach ASIC i FPGA.

Układ został użyty m.in. w komputerach Apple IIc, Apple Enhanced IIe, BBC Master, Replica I oraz konsolach Atari Lynx, TurboGrafx-16, GameKing i Watara Supervision.

Dane techniczne

[edytuj | edytuj kod]

Rejestr stanu procesora

[edytuj | edytuj kod]

Rejestr zawiera cztery bity znaczników (N, Z, V, C) - własności wyniku operacji, dwa bity sterujące działaniem procesora (D, I) oraz bit sygnalizacji pułapki (B)

  • N - Wynik ujemny
  • V - Nadmiar dodawania/odejmowania w kodzie U2
  • 1 - (bit 5) Nieokreślony (zawsze 1)
  • B - Break (ustawiany przez rozkaz BRK)
  • D - Włączenie trybu dziesiętnego dla instrukcji dodawania i odejmowania
  • I - wyłączenie przerwania IRQ
  • Z - Wynik ostatniej operacji był zerem
  • C - Nastąpiło przeniesienie

Porównanie z MOS 6502

[edytuj | edytuj kod]

Zestaw instrukcji

[edytuj | edytuj kod]

Lista instrukcji WDC 65C02 zawiera wszystkie instrukcje wersji NMOS 6502 oraz kilka nowych, w tym operacje stosowe na rejestrach X i Y, inkrementację i dekrementację akumulatora A oraz względny skok bezwarunkowy BSR. Dodano również nowy tryby adresowania - pamięciowy pośredni strony zerowej - (zp). Nieudokumentowane w 6502 kody operacyjne są w 65C02 interpretowane jako instrukcje puste (NOP). Poprawione zostało działanie instrukcji JMP z trybem adresowania pamięciowym pośrednim (kosztem wydłużenia jej wykonania o 1 cykl przy przekroczeniu granicy stron). Dodano instrukcję JMP z trybem pamięciowym pośrednim postindeksowanym rejestrem X. W65C02S, podobnie jak seria Rockwell R65C00, wykonuje również nowe instrukcje operujące na pojedynczych bitach (RMB, SMB, BBR i BBS).

Zachowanie znaczników N i Z w trybie dziesiętnym

[edytuj | edytuj kod]

W65C02S różni się programowo od wersji NMOS 6502 sposobem ustawiania znaczników N i Z w trybie dziesiętnym. W W65C02 odzwierciedlają one poprawnie własności wyniku w kodzie BCD (co kosztuje dodatkowy cykl zegara); w 6502 były one ustawiane według pośredniej wartości wyniku operacji, przed finalną korekcją dziesiętną.

Sygnały zewnętrzne

[edytuj | edytuj kod]

Nowy sygnał VPB (Vector Pull), niedostępny w układach innych producentów, oznacza, że procesor pobiera z pamięci adres procedury obsługi wyjątku.

Linki zewnętrzne

[edytuj | edytuj kod]