The MOS Technology 8502 is an
8-bit
In computer architecture, 8-bit Integer (computer science), integers or other Data (computing), data units are those that are 8 bits wide (1 octet (computing), octet). Also, 8-bit central processing unit (CPU) and arithmetic logic unit (ALU) arc ...
microprocessor
A microprocessor is a computer processor where the data processing logic and control is included on a single integrated circuit, or a small number of integrated circuits. The microprocessor contains the arithmetic, logic, and control circu ...
designed by
MOS Technology
MOS Technology, Inc. ("MOS" being short for Metal Oxide Semiconductor), later known as CSG (Commodore Semiconductor Group) and GMT Microelectronics, was a semiconductor design and fabrication company based in Audubon, Pennsylvania. It is mo ...
and used in the
Commodore 128
The Commodore 128, also known as the C128, C-128, C= 128,The "C=" represents the graphical part of the logo. is the last 8-bit home computer that was commercially released by Commodore Business Machines (CBM). Introduced in January 1985 at the ...
(C128). It is an improved version of the
MOS 6510
300px, Image of the 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 mi ...
used in the
Commodore 64
The Commodore 64, also known as the C64, is an 8-bit home computer introduced in January 1982 by Commodore International (first shown at the Consumer Electronics Show, January 7–10, 1982, in Las Vegas). It has been listed in the Guinness ...
(C64). It was manufactured using the
HMOS
In integrated circuits, depletion-load NMOS is a form of digital logic family that uses only a single power supply voltage, unlike earlier NMOS (n-type metal-oxide semiconductor) logic families that needed more than one different power supply v ...
process, allowing it to have higher
transistor density, and lower cost, while dissipating less heat. The 8502 allows the C128 to run at double the clock rate of the C64 with some limitations.
Description
Memory access in 8-bit machines
Common
random access memory
Random-access memory (RAM; ) is a form of computer memory that can be read and changed in any order, typically used to store working Data (computing), data and machine code. A Random access, random-access memory device allows data items to b ...
(RAM) of the Commodore C64-era allowed accesses at 2 MHz. If the CPU and display chip both shared the same memory to communicate, which was the common solution in the era when RAM was expensive, then one would normally have to have the CPU and
display chip chips mediate access to the bus so that only one of them used it at a time, generally by having one pause the other. Assuming the two chips require roughly equal access, that means the chips are paused half of the time, effectively running at 1 MHz.
The 6502-family had a feature that eased the design of such systems. The 6502 used a two-phase clock to drive its internal circuitry, but only accessed memory during one of the two phases. That meant the display chip could access memory during alternating clock phases without having to pause the CPU. The major advantage of this style of access is that the two chips do not have to communicate to pause each other, they simply watch the already-existing clock signal present on the 6502's pins. In the original C64, this timing trick was used to allow the
VIC-II
The VIC-II (Video Interface Chip II), specifically known as the MOS Technology 6567/8562/8564 (NTSC versions), 6569/8565/8566 (PAL), is the microchip tasked with generating Y/C video signals (combined to composite video in the RF modulator) and D ...
to interleave its access to
main memory
Computer data storage is a technology consisting of computer components and recording media that are used to retain digital data. It is a core function and fundamental component of computers.
The central processing unit (CPU) of a computer ...
with that of the 6510.
8502
The 8502 is mostly a conversion of the original 6502 to be fabricated on
Intel
Intel Corporation is an American multinational corporation and technology company headquartered in Santa Clara, California. It is the world's largest semiconductor chip manufacturer by revenue, and is one of the developers of the x86 seri ...
's HMOS-II process, introduced in 1979 and available for 3rd party use. This process used smaller feature sizes, which allowed the same chip to be produced within a smaller area, and thus be lower cost. As a result of being smaller, the chip also required less energy to run and dissipated less heat. This made it useful in some roles where the original 6502 might not be appropriate.
The original 6502 came in three versions, A, B and C, differing in their maximum speed, 1, 2 or 4 MHz, respectively. There was no physical difference between these designs; if a particular chip ran successfully at 2 MHz in testing it was labeled B, otherwise A. With the move to the HMOS process, most of the 8502s were capable of running at 2 MHz, the equivalent of the 6502B.
Changing the running speed of a 6502-based processor is as simple as changing the input clock signal, which meant the 8502 could easily switch between 2 MHz and the 6510's 1 MHz. When the clock runs at double-speed, it faces the problem that there is not enough time for the VIC to access memory during the free half-cycles. For this reason, the 8502 could only run at double-speed full-time when being used with the 80-column
VDC in the C128, which had separate memory for the display that was not being directly accessed by the CPU.
When running a VIC display mode, the two chips began to share access as was the case in the C64, and this meant the CPU had to return to its normal ~1 MHz speed. Programs could disable the screen during CPU-intensive calculations to allow the CPU to run at its faster speed. A smaller speed gain, about 35%, was also possible while keeping the VIC display active by switching the CPU to 2 MHz only while the VIC is drawing the empty border along the top and bottom of the screen, since the VIC performs no RAM access during that time.
The pinout is slightly different than the 6510. The 8502 has an extra I/O-pin (the built-in I/O port mapped to addresses 0 and 1 is extended from 6 to 7 bits) and lacks the ϕ2-pin that the 6510 had. The 8502 family also includes the MOS 7501, 8500 and 8501.
Notes
References
Further reading
{{MOS CPU
65xx microprocessors
MOS Technology microprocessors
Commodore 64
8-bit microprocessors