MOS Technology 6510

Last updated

MOS Technology 6510
KL MOS 6510.jpg
General information
Common manufacturer
Performance
Max. CPU clock rate 0.985 MHz to 1.023 MHz
Data width8
Address width16
Architecture and classification
Instruction set MOS 6502
Physical specifications
Package
Products, models, variants
Variant
  • MOS 8500, 7501/8501, 8502, 6510T
History
Predecessor MOS 6502
Successor MOS 8502
Internals of a Commodore 64 showing the 6510 CPU (40-pin DIP, lower left). The chip on the right is the 6581 SID. The production week/year (WWYY) of each chip is given below its name. MOS Technologies large.jpg
Internals of a Commodore 64 showing the 6510 CPU (40-pin DIP, lower left). The chip on the right is the 6581 SID. The production week/year (WWYY) of each chip is given below its name.

The MOS Technology 6510 is an 8-bit microprocessor designed by MOS Technology. It is a modified form of the very successful 6502. The 6510 is widely used in the Commodore 64 (C64) home computer and its variants. It is also used in the Seagate ST-251 MFM hard disk. [1]

Contents

The primary change from the 6502 is the addition of an 8-bit general purpose I/O port, although only 6 I/O pins are available in the most common version of the 6510. In addition, the address bus can be made tri-state and the CPU can be halted cleanly.

Description

The 6510 and variants were based on the same core as the 6502, and are opcode compatible, including undocumented opcodes. [2]

The parallel port was provided by using several formerly unused pins, eliminating some, and re-arranging others. In the original 6502, pins 5, 35 and 36 were not connected. Pin 3, formerly the phase-1 clock out, was eliminated, as most roles did not require it. This left only CLKIN, moved to pin 1 from 37, and CLKOUT on its original pin 39. The SO pin, which was connected to the overflow flag in the processor status register, was eliminated as few applications made use of it and the new parallel port could provide similar functionality. The final pin to be removed was the VSS on pin 1, the original 6520 had it on both pin 1 and pin 21, on the opposite side of the chip, but only one was needed.

The pins were also re-arranged. The VSS (ground) on pin 1 became clock in, while the other pins on the right side all moved up to fill the space from the removed clock out on pin 3 and unused pin 5. This put address bus pins A0 to A13 on one side, instead of 0 through 11 on the 6502, removing two from the left side. On the left side, the SO and two unconnected pins were removed, while clock in moved to pin 1 and the two address pins to 19 and 20, leaving pins 29 through 24 to be available for the parallel port pins, P0 through P5.

Use

In the C64, the extra I/O pins of the processor are used to control the computer's memory map by bank switching, and for controlling three of the four signal lines of the Datasette tape recorder (the electric motor control, key-press sensing and write data lines; the read data line went to another I/O chip). It is possible, by writing the correct bit pattern to the processor at address $01, to completely expose almost the full 64  KB of RAM in the C64, leaving no ROM or I/O hardware exposed except for the processor I/O port itself and its data directional register at address $00. [3]

Variants

Pin configuration of the most common variation of the 6510 CPU (/HALT in this image refers to the RDY pin.) 6510 CPU Pinout.svg
Pin configuration of the most common variation of the 6510 CPU (/HALT in this image refers to the RDY pin.)

MOS 8500

In 1985, MOS produced the 8500, an HMOS version of the 6510. Other than the process modification, it is virtually identical to the NMOS version of the 6510. The 8500 was originally designed for use in the modernised C64, the C64C. However, in 1985, limited quantities of 8500s were found on older NMOS-based C64s. It finally made its official debut in 1987, appearing in a motherboard using the new 85xx HMOS chipset.

MOS 7501/8501

MOS 8501 CPU MOS8501R1.jpg
MOS 8501 CPU

The 7501/8501 variant of the 6510 was introduced in 1984. [4] Compared to the 6510, this variant extends the number of I/O port pins from 6 to 8, but omits the pins for non-maskable interrupt and clock output. [5] It is used in Commodore's C16, C116 and Plus/4 home computers, where its I/O port controls not only the Datasette but also the CBM Bus interface. The main difference between 7501 and 8501 CPUs is that they were manufactured with slightly different processes: 7501 was manufactured with HMOS-1 and 8501 with HMOS-2. [4]

MOS 8502

The 2  MHz-capable 8502 variant is used in the Commodore 128.

MOS 6510T

The Commodore 1551 disk drive (for the Commodore Plus/4) uses the 6510T, a version of the 6510 with eight I/O lines. The NMI and RDY signals are not available.

See also

References

  1. ST-251 schematic
  2. Graham. "6502/6510/8500/8502 Opcodes". www.oxyron.de.
  3. Butterfield, Jim (January 1983). "Commodore 64 Architecture". Compute!. No. 32. p. 208.
  4. 1 2 Hardware – MOS 7501/8501
  5. CPU 7501 / 8501

Further reading