Ricoh 5A22
Encyclopedia
The Ricoh 5A22 is a microprocessor
produced by Ricoh
for the Super Nintendo Entertainment System (SNES)
video game console. The 5A22 is based around the 16-bit
CMD/GTE 65c816, itself a version of the WDC
65C816 (used in the Apple IIGS
personal computer).
All of the above mentioned processors are based on the MOS Technology 6502
family of processors.
, with bus access times determined by the memory location accessed. The bus runs at 3.58 MHz for non-access cycles and when accessing Bus B and most internal registers, and either 2.68 or 3.58 MHz when accessing Bus A. It runs at 1.79 MHz only when accessing the controller port serial-access registers. It works at approximately 1.5 MIPS
and has a theoretical peak of 1.79 million 16-bit adds per second.
Microprocessor
A microprocessor incorporates the functions of a computer's central processing unit on a single integrated circuit, or at most a few integrated circuits. It is a multipurpose, programmable device that accepts digital data as input, processes it according to instructions stored in its memory, and...
produced by Ricoh
Ricoh
or Ricoh, is a Japanese company that was established in 1936 on February 6th, as , a company in the RIKEN zaibatsu. Its headquarters is located in Ricoh Building in Chūō, Tokyo....
for the Super Nintendo Entertainment System (SNES)
Super Nintendo Entertainment System
The Super Nintendo Entertainment System is a 16-bit video game console that was released by Nintendo in North America, Europe, Australasia , and South America between 1990 and 1993. In Japan and Southeast Asia, the system is called the , or SFC for short...
video game console. The 5A22 is based around the 16-bit
16-bit
-16-bit architecture:The HP BPC, introduced in 1975, was the world's first 16-bit microprocessor. Prominent 16-bit processors include the PDP-11, Intel 8086, Intel 80286 and the WDC 65C816. The Intel 8088 was program-compatible with the Intel 8086, and was 16-bit in that its registers were 16...
CMD/GTE 65c816, itself a version of the WDC
Western Design Center
The Western Design Center , located in Mesa, Arizona, USA, is a company developing and manufacturing MOS 65xx-based microprocessors, microcontrollers , and related support chips...
65C816 (used in the Apple IIGS
Apple IIGS
The Apple , the fifth and most powerful model in the Apple II series of personal computers produced by Apple Computer. The "GS" in the name stands for Graphics and Sound, referring to its enhanced graphics and sound capabilities, both of which greatly surpassed previous models of the line...
personal computer).
All of the above mentioned processors are based on the MOS Technology 6502
MOS Technology 6502
The MOS Technology 6502 is an 8-bit microprocessor that was designed by Chuck Peddle and Bill Mensch for MOS Technology in 1975. When it was introduced, it was the least expensive full-featured microprocessor on the market by a considerable margin, costing less than one-sixth the price of...
family of processors.
Major features
In addition to the 65C816 CPU core, the 5A22 contains support hardware, including:- Controller port interface circuits, including both serialSerial communicationsIn telecommunication and computer science, serial communication is the process of sending data one bit at a time, sequentially, over a communication channel or computer bus. This is in contrast to parallel communication, where several bits are sent as a whole, on a link with several parallel channels...
and parallelParallel communicationsIn telecommunication and computer science, parallel communication is a method of sending several data signals simultaneously over several parallel channels...
access to controller data - An 8-bit parallel I/O port, which was mostly unused in the SNES
- Circuitry for generating NMINon-Maskable interruptA non-maskable interrupt is a computer processor interrupt that cannot be ignored by standard interrupt masking techniques in the system. It is typically used to signal attention for non-recoverable hardware errors...
interruptInterruptIn computing, an interrupt is an asynchronous signal indicating the need for attention or a synchronous event in software indicating the need for a change in execution....
s on V-blankVertical blanking intervalThe vertical blanking interval , also known as the vertical interval or VBLANK, is the time difference between the last line of one frame or field of a raster display, and the beginning of the first line of the next frame. It is present in analog television, VGA, DVI and other signals. During the... - Circuitry for generating IRQInterrupt requestThe computing phrase "interrupt request" is used to refer to either the act of interrupting the bus lines used to signal an interrupt, or the interrupt input lines on a Programmable Interrupt Controller...
interruptInterruptIn computing, an interrupt is an asynchronous signal indicating the need for attention or a synchronous event in software indicating the need for a change in execution....
s on calculated screen positions - A DMADirect memory accessDirect memory access is a feature of modern computers that allows certain hardware subsystems within the computer to access system memory independently of the central processing unit ....
unit, supporting two primary modes:- General DMA, for block transfers at a rate of 2.68MB/s
- H-blank DMA, for transferring small data sets at the end of each scanline outside of the active display period
- MultiplicationMultiplicationMultiplication is the mathematical operation of scaling one number by another. It is one of the four basic operations in elementary arithmetic ....
and divisionDivision (mathematics)right|thumb|200px|20 \div 4=5In mathematics, especially in elementary arithmetic, division is an arithmetic operation.Specifically, if c times b equals a, written:c \times b = a\,...
registers - Two separate address busAddress busAn address bus is a computer bus that is used to specify a physical address. When a processor or DMA-enabled device needs to read or write to a memory location, it specifies that memory location on the address bus...
ses driving the 8-bit data bus: a 24-bit "Bus A" for general access, and an 8-bit "Bus B" mainly for APU and PPU registersMemory-mapped I/OMemory-mapped I/O and port I/O are two complementary methods of performing input/output between the CPU and peripheral devices in a computer...
Performance
The CPU as a whole employs a variable-speed system busSystem bus
A system bus is a single computer bus that connects the major components of a computer system. The technique was developed to reduce costs and improve modularity....
, with bus access times determined by the memory location accessed. The bus runs at 3.58 MHz for non-access cycles and when accessing Bus B and most internal registers, and either 2.68 or 3.58 MHz when accessing Bus A. It runs at 1.79 MHz only when accessing the controller port serial-access registers. It works at approximately 1.5 MIPS
Instructions per second
Instructions per second is a measure of a computer's processor speed. Many reported IPS values have represented "peak" execution rates on artificial instruction sequences with few branches, whereas realistic workloads typically lead to significantly lower IPS values...
and has a theoretical peak of 1.79 million 16-bit adds per second.