Zum Inhalt springen

MOS Technology 6502

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 16. November 2005 um 04:59 Uhr durch YurikBot (Diskussion | Beiträge) (Bot: Ergänze: it). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Teil einer C64-Platine mit einigen wichtigen Chips von MOS Technologies, u.a. einer 6510-CPU.

Der MOS Technology 6502 ist ein 8-Bit-Mikroprozessor von MOS Technologies, der 1975 auf den Markt kam. Aufgrund seiner Unkompliziertheit und vor allem des im Vergleich zu den etablierten Intel-Prozessoren sehr niedrigen Preises wurde er in vielen Heimcomputern (z.B. dem Commodore VC-20, dem Atari 800 XL, Apple II und BBC Micro), zahlreichen Schachcomputern (z.B. dem Mephisto Polgar mit 5 oder 10(!) MHz) und Peripherie-Geräten verbaut. Auch andere Mitglieder dieser Prozessorfamilie waren sehr erfolgreich, so der 6510, ein Bestandteil des Commodore 64, und der 6507 in den Atari-Spielkonsolen. Hauptkonkurrent war damals der Zilog Z80, der z.B. in den Sinclair- und Schneider-Computern sowie in CP/M-Rechnern zu finden war.

Die 6502 lebt heute als Prozessorkern der Mikrocontroller Mitsubishi/Renesas (38000/740 Series) und VMC Scal von Micronas Intermetall (eingesetzt in Automotive- und Fernseh-Technik) weiter.

Als Cross-Compiler wurde häufig der cc65 eingesetzt.

Technische Daten

  • Technologie: NMOS, HMOS, CMOS
  • Anzahl Transistoren: ca. 5000
  • Taktfrequenz: traditionell 20 kHz bis 4 MHz; CMOS-Version: 0 bis 14 MHz
  • Taktzyklen je Befehl: 2 bis 6
  • Adressraum: 64 kByte
  • Adressbusbreite: 16 Bit
  • Datenbusbreite: 8 Bit
  • Befehle: traditionell 56, CMOS-Version: 70
  • Adressierungsmodi: traditionell 13, CMOS-Version: 16
  • Register:
    • Akkumulator, 8 Bit
    • 2 Index-Register (X und Y), 8 Bit, eigentlich ein offset-Register: es wird zu einer 16 Bit Adresse addiert, die je nach Adressierungsart im Opcode oder in der Zeropage steht.
    • Stapelzeiger, 16 Bit, allerdings ist das High-Byte konstant auf $01 festgelegt, so dass der Stapel nur 256 Bytes umfasst.
    • Prozessorstatus-Register, 7 Bit (Flags: Carry, Zero, Decimal, Interrupt Disable, Break, unbenutzt, Overflow, Negative)
    • Befehlszähler, 16 Bit

Varianten des 6502

  • 6501
    • Gehäuse- und Signalkompatibel (nicht Softwarekompatibel) zum Motorola 6800 (nicht Motorola 68000). Musste nach einer Patentverletzungsklage Motorolas durch den 6502 ersetzt werden.
  • 6502
    • eingesetzt in den Commodore-PET- und -CBM-Modellen PET 2001 bis CBM 8296
  • 6502A
  • 6502C
  • 65C02
    • CMOS-Technologie
    • Zusätzliche Befehle und Adressierungsmodi
    • Eingesetzt im erweiterten Apple IIe und im Apple IIc
    • Eingesetzt im Atari Lynx
  • 6503, 6505, 6506
    • 12 Bit Adressbus (4 KiB)
  • 6504, 6507
    • 13 Bit Adressbus (8 KiB)
    • 6507 eingesetzt im Atari 2600
  • 6509
    • 20 Bit Adressbus (1 MiB) durch internes Bankswitching
    • Eingesetzt in den Commodore PET-II Modellen (CBM 500, 600 und 700).
  • 6510
    • 6502 mit zusätzlichem 6 Bit I/O-Port
    • Eingesetzt im C64
  • 6511
    • Microcontroller mit I/O-Ports, serieller Schnittstelle und RAM, von Rockwell
  • 65F11
    • Variante des 6511 mit integriertem Forth-Interpreter
  • 6512 bis 6517
    • Variante des entsprechenden 650x, aber ohne eingebauten Oszillator.
  • 6280
    • Entwickelt von NEC
    • incl. MMU (2 MiB adressierbar)
    • Eingesetzt in der PC Engine
  • 6702
    • eingesetzt nur im Plug-in Board des Commodore SuperPET
  • 7501
  • 8500
    • 6510 in CMOS-Technologie
  • 8502
    • 6510 umschaltbar auf 2 MHz
    • 7-Bit I/O-Port
    • Eingesetzt im C128
  • 65816 (65C816)
    • Entwickelt von Western Design Center
    • Eingesetzt u. a. im Apple IIgs, Nintendo SNES, den meisten Beschleunigungskarten für 6502-Rechner
    • 16 Bit Register und ALU
    • 24 Bit Adressbus (16 MiB)
    • Bis zu 24MHz
  • 65802 (65C802)
    • Variante des 65816 die pinkompatibel zum 6502 ist, Adressraum daher wie dieser nur 64 KiB
    • Zum direkten Austausch des 6502 in bereits bestehenden Schaltungen gedacht
    • Bis zu 16MHz