The Zilog eZ80 is an
8-bit
In computer architecture, 8-bit integers or other data units are those that are 8 bits wide (1 octet). Also, 8-bit central processing unit (CPU) and arithmetic logic unit (ALU) architectures are those that are based on registers or data bu ...
microprocessor designed by
Zilog
Zilog, Inc. is an American manufacturer of microprocessors, microcontrollers, and application-specific embedded System on a chip, system-on-chip (SoC) products.
The company was founded in 1974 by Federico Faggin and Ralph Ungermann, who were soo ...
as an updated version of the company's first product, the highly-successful
Zilog Z80
The Zilog Z80 is an 8-bit computing, 8-bit microprocessor designed by Zilog that played an important role in the evolution of early personal computing. Launched in 1976, it was designed to be Backward compatibility, software-compatible with the ...
. The eZ80 is
binary compatible
Binary-code compatibility (binary compatible or object-code compatible) is a property of a computer system, meaning that it can run the same executable code, typically machine code for a general-purpose computer central processing unit (CPU), ...
with the Z80, but it operates almost three times faster at the same
clock frequency
Clock rate or clock speed in computing typically refers to the frequency at which the clock generator of a Microprocessor, processor can generate Clock signal, pulses used to Synchronization (computer science), synchronize the operations of it ...
.
Design
The eZ80 has a three-stage pipeline: fetch, decode, and execute. When an instruction changes the
program counter
The program counter (PC), commonly called the instruction pointer (IP) in Intel x86 and Itanium microprocessors, and sometimes called the instruction address register (IAR), the instruction counter, or just part of the instruction sequencer, ...
, it flushes the instructions that the CPU is currently processing. Available at up to 50 MHz (2004), the performance is comparable to a Z80 clocked at 150 MHz if fast memory is used (i.e. no wait states for
opcode
In computing, an opcode (abbreviated from operation code) is an enumerated value that specifies the operation to be performed. Opcodes are employed in hardware devices such as arithmetic logic units (ALUs), central processing units (CPUs), and ...
fetches, for data, or for I/O) or even higher in some applications (a 16-bit addition is 11 times as fast as in the original). The original Z80-compatible 16-bit register configuration is supported. The eZ80 also supports direct continuous addressing of 16
MB of memory without a
memory management unit
A memory management unit (MMU), sometimes called paged memory management unit (PMMU), is a computer hardware unit that examines all references to computer memory, memory, and translates the memory addresses being referenced, known as virtual mem ...
, by extending most registers (HL, BC, DE, IX, IY, SP, and PC) from 16 to 24 bits. In order to do so, the CPU has a full 24-bit address mode called ADL mode. In ADL mode, all Z80 16-bit registers are extended to 24 bits with additional upper 8-bit registers. For example, the HL register pair is extended with an uppermost register called HLU. The resulting 24-bit multi-byte register is collectively accessed by its old name, HL. The upper registers cannot be accessed individually.
The processor has a 24-bit ALU
arithmetic logic unit
In computing, an arithmetic logic unit (ALU) is a Combinational logic, combinational digital circuit that performs arithmetic and bitwise operations on integer binary numbers. This is in contrast to a floating-point unit (FPU), which operates on ...
and overlapped processing of several instructions (the three-stage pipeline) which are the two primary reasons for its speed. Unlike the older
Z280
The Zilog Z280 is a 16-bit computing, 16-bit microprocessor designed by Zilog as an enhancement of the Zilog Z80 architecture and integrating improvements from the abandoned Zilog Z800 project. First introduced in July 1987, the Z280 is conside ...
and
Z380 it does not have (or need) a cache memory. Instead, it is intended to work with fast
SRAM directly as main memory (as this had become much cheaper). Nor does it have the multiplexed bus of the Z280, making it as easy to work with (interface to) as the original Z80 and Z180, and equally predictable when it comes to exact execution times.
The chip has a
memory interface that is similar to the original Z80, including the bus request/acknowledge pins, and adds four integrated chip selects. Versions are available with on-chip flash memory and on-chip zero wait-state SRAM (up to 256
KB flash memory and 16 KB SRAM) but there are also external buses on all models.
Variants
The eZ80 family includes several variants offering different levels of integration. These single-chip computers retain an external address and data bus so they can function as general-purpose microprocessors despite their focus on specific applications.
The ''eZ80Acclaim!'' line integrates up to 128 KB of flash memory and 8 KB of SRAM, operating at speeds up to 20 MHz.
The ''eZ80AcclaimPlus!'' adds an
Ethernet
Ethernet ( ) is a family of wired computer networking technologies commonly used in local area networks (LAN), metropolitan area networks (MAN) and wide area networks (WAN). It was commercially introduced in 1980 and first standardized in 198 ...
controller and TCP/IP stack to the eZ80Acclaim! features, reaching speeds of up to 50 MHz.
Use in commercial products
The
TI-84 Plus CE graphing calculator utilizes the eZ80 in 24-bit address mode at 48 MHz. The eZ80L92 processor powers the
ST Robotics robot controller, running at 50 MHz.
Notes
References
*
*
*
Further reading
*
*
{{8bitMCUs
Zilog microprocessors
24-bit microprocessors
8-bit microprocessors