Zilog Z800: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Undid revision 107168272 by Sarenne (talk)
Added Z80 emulation remarks.
 
(47 intermediate revisions by 34 users not shown)
Line 1: Line 1:
The '''Zilog Z800''' was a [[16-bit]] [[microprocessor]] designed by [[Zilog]] to be released in [[1985]]. It was instruction compatible with their existing [[Zilog Z80|Z80]], and differed primarily in having on chip cache and MMU for a 16 MB address range, and also a huge number of new more orthogonal instructions and addressing modes. However Zilog essentially ignored the Z800 in favour of their 32-bit [[Zilog Z80,000|Z80,000]] and it appears the Z800 never entered mass production. The [[Z280]] in [[1987]] was another try with almost the same design, but this time implemented in [[CMOS]].
The '''Zilog Z800''' was a [[16-bit]] [[microprocessor]] designed by [[Zilog]] and meant to be released in 1985. It was instruction compatible with their existing [[Zilog Z80|Z80]], and differed primarily in having on-chip [[CPU cache|cache]] and a [[memory management unit]] (MMU) to provide a 16 MB address range. It also added a huge number of new more orthogonal instructions and addressing modes.


Zilog essentially ignored the Z800 in favor of their 32-bit [[Zilog Z80000|Z80000]] and the Z800 never entered mass production. After more than five years had elapsed since it was originally introduced, the effort was redubbed the [[Zilog Z280|Z280]] in 1986.<ref>EDN November 27, 1986, p133</ref> An actual product, the Z280 would ship in 1987 with almost the same design as the Z800, but this time implemented in [[CMOS]].
====Short description====

There was no expansion of the [[processor register|register]] set but the registers and instructions were significantly orthogonalized in order to make them more general purpose and powerful. Many new 8-bit and 16-bit operations were added, and the HL, IX, and IY registers were upgraded from their rather limited possibilities as accumulators in the Z80 to more versatile accumulators. In addition to the register operands possible in the Z80, they could be used with immediate data, direct address, register indirect, or indexed operands, even program counter-relative. Eight-bit operations had even more possibilies, including stack pointer-relative addressing and a choice of 8-bit or 16-bits immediate offsets.
The Z800 contrasts with Zilog's first 16-bit effort, the [[Zilog Z8000]], in that the Z800 was intended to be Z80 compatible, while the Z8000 was only Z80-like and did not offer any direct compatibility. Zilog sought to rectify the lack of Z80 compatibility exhibited by the Z8000 when introducing the Z800, seeking to offer Z80 binary compatibility with an eightfold performance increase over the Z80, mirroring plans by [[National Semiconductor]] to incorporate emulation of the [[Intel 8080]] in certain products in its own [[NS32000|32000 series]] of microprocessors.<ref name="dataprocessing198202">{{ cite magazine | url=https://archive.org/details/sim_data-processing_1982-02_24_2/page/26/mode/2up | title=16-bits means more power for your money | magazine=Data Processing | last1=Geisler | first1=Pamela A. | date=February 1982 | access-date=2 March 2023 | pages=26–27 }}</ref>

==Short description==
There was no expansion of the [[processor register|register]] set but the registers and instructions were significantly orthogonalized in order to make them more general-purpose and powerful. Many new 8-bit and 16-bit operations were added, and the HL, IX, and IY registers were upgraded from their rather limited possibilities as accumulators in the Z80 to more versatile accumulators. In addition to the register operands possible in the Z80, they could be used with immediate data, direct address, register indirect, or indexed operands, even program counter-relative. Eight-bit operations had even more possibilities, including stack pointer-relative addressing and a choice of 8-bit or 16-bits immediate offsets.


The address bus was expanded to 24-bits to address 16 MB of memory. The chip was offered with either a 19-bit external bus for 512kB RAM, or a full 24-bit bus for 16MB RAM, the advantage to the smaller bus was a smaller 40-pin package. Like the Z80 before it, the Z800 retained the internal DRAM controller and clock, but added 256 bytes of RAM that could be used either as "scratchpad" RAM, or as a cache. When used in cache mode the programmer could configure it as a data or instruction cache, or both, and the internal memory controller then used it to reduce access to (slower) external memory.
The address bus was expanded to 24-bits to address 16 MB of memory. The chip was offered with either a 19-bit external bus for 512kB RAM, or a full 24-bit bus for 16MB RAM, the advantage to the smaller bus was a smaller 40-pin package. Like the Z80 before it, the Z800 retained the internal DRAM controller and clock, but added 256 bytes of RAM that could be used either as "scratchpad" RAM, or as a cache. When used in cache mode the programmer could configure it as a data or instruction cache, or both, and the internal memory controller then used it to reduce access to (slower) external memory.
Line 10: Line 14:
Another change was the addition of an optional 16-bit data bus, which doubled the rate at which it could access memory if set up properly. Combined with the two address bus sizes this meant that the chip was offered in a total of four versions:
Another change was the addition of an optional 16-bit data bus, which doubled the rate at which it could access memory if set up properly. Combined with the two address bus sizes this meant that the chip was offered in a total of four versions:


{| class="toccolours" border="1" cellpadding="4" style="border-collapse:collapse; text-align: center"
{| class="wikitable" style="text-align: center"
! part # !! # of pins !! data bus !! address bus
! part # !! # of pins !! data bus !! address bus
|-
|-
| '''Z8108''' || 40 || 8-bit || 19-bit (512kB)
! Z8108
| 40 || 8-bit || 19-bit (512kB)
|-
|-
| '''Z8116''' || 40 || 16-bit || 19-bit (512kB)
! Z8116
| 40 || 16-bit || 19-bit (512kB)
|-
|-
| '''Z8208''' || 64 || 8-bit || 24-bit (16MB)
! Z8208
| 64 || 8-bit || 24-bit (16MB)
|-
|-
| '''Z8216''' || 64 || 16-bit || 24-bit (16MB)
! Z8216
| 64 || 16-bit || 24-bit (16MB)
|}
|}


====Reason for the failure====
==Reason for the failure==
The Z800 was, in most ways, a mini computer inspired "super Z80" that would run existing, and larger, programs at considerably higher speeds. However the address and data buses were multiplexed and the chip was, also in other respects, somewhat complicated to program and interface to. Calculation of exact execution times was also very much harder to do than for the Z80. Moreover, the plain Z80 were good enough for most applications at the time so the extra computing power was, in many cases, not worth the added complexity. Bad marketing seems to have hurt the product as well. Hitach later developed the [[HD64180]], which is a less ambitious Z80 derivative that have had great success, probably because it is almost as simple to program and interface to as the original Z80.
The Z800 was, in most ways, a [[minicomputer]]-inspired "super Z80" that would run existing, and larger, programs at considerably higher speeds. However the address and data buses were multiplexed and the chip was, also in other respects, somewhat complicated to program and interface to. Calculation of exact execution times was also very much harder to do than for the Z80. Moreover, the plain Z80 were good enough for most applications at the time so the extra computing power was, in many cases, not worth the added complexity. Bad marketing seems to have hurt the product as well.
A slightly different variant of the same design, the [[Z180]], has been sold by Zilog for over twenty years, still maintained and developed.


Hitachi developed the [[HD64180]], as a less ambitious Z80 derivative. It had great success, probably because it is almost as simple to program and interface to as the original Z80.
====More successful Z80 derivatives (from ZiLOG)====
Appart from the successful [[Z180]] (developed largely by [[Hitachi]]) other attempts were made to extend the Z80 architecture, the [[32-bit]] [[Z380]] (introduced [[1994]]) was a commercial disapointment but is still in production for some specific telecom applications. On the other hand, the fast [[24-bit]] [[Zilog eZ80|eZ80]] (introduced [[2001]]) has been both commercially successful and won engineering awards. It may be interesting to note that, unlike the Z800, Z280, and Z380, the [[Zilog eZ80|eZ80]] does '''not''' introduce many new instruction or addressing modes, but merely extends the 16-bits registers of the Z80 into 24 bits, enabling it to reach 256 times as much memory while its fully pipelined execution unit executes Z80 instructions four times as fast as the original.


==More successful Z80 derivatives (from Zilog)==
Apart from the successful [[Zilog Z180]] (developed largely by [[Hitachi]]) and Zilog Z182 other attempts were made to extend the Z80 architecture, the [[32-bit]] [[Zilog Z380|Z380]] (introduced 1994) was a commercial disappointment except for some specific telecom applications. On the other hand, the fast [[24-bit]] [[Zilog eZ80|eZ80]] (introduced 2001) has been both commercially successful and won engineering awards. Unlike the Z800, Z280, and Z380, the eZ80 does not introduce many new instructions or addressing modes, in comparison to the original Z80, but instead primarily extends the 16-bit registers of the Z80 to 24 bits wide. This enables it to reach 256 times as much memory, and adds a fully pipelined execution unit that executes Z80 opcodes as fast as the original.


==Notes==
{{zilog}}
{{More footnotes|date=July 2009}}
{{reflist}}


==References==
[[Category:Microprocessors]]
* {{cite book
| title = Z800 MPU Family Preliminary Product Specification (00-2259-01)
|date=September 1983
| publisher = [[Zilog]]
| location = [[San Jose, California]]
}}
* {{cite web
| url = http://www.retroarchive.org/cpm/cdrom/CPM/GENDOC/Z800.DOC
| title = Zilog Z800 microprocessor chip quick description
| access-date = 2009-07-16
| last = Olsen
| first = Dave
| date = 1985-01-08
}}
* {{cite web
| url = http://www.retroarchive.org/cpm/cdrom/CPM/GENDOC/Z800MORE.DOC
| title = Z800 preliminary specs
| access-date = 2009-07-16
| last = Skot
| first = Jeff
| date = 1985-05-16
}}

==Further reading==
* {{cite web
| url = http://mdfs.net/Docs/Comp/Z800/
| title = R800 additional opcodes over Z80
| access-date = 2009-07-16
| last = Harston
| first = J.G.
| date = 2008-06-04
}}
* {{cite web
| url = http://mdfs.net/Docs/Comp/Z80/OpCodeMap
| title = Z80 Opcode Map
| access-date = 2009-07-16
| last = Harston
| first = J.G.
| date = 1997-09-09
}}
* {{cite web
| url = http://mdfs.net/Docs/Comp/Z80/OpList
| title = Full Z80 Opcode List Including Undocumented Opcodes
| access-date = 2009-07-16
| last = Harston
| first = J.G.
| date = 1998-04-15
}}

{{zilog}}


[[Category:Zilog microprocessors]]
[[nl:Z800]]
[[Category:16-bit microprocessors]]
[[pl:Zilog Z800]]
[[sv:Zilog Z800]]

Latest revision as of 14:58, 2 March 2023

The Zilog Z800 was a 16-bit microprocessor designed by Zilog and meant to be released in 1985. It was instruction compatible with their existing Z80, and differed primarily in having on-chip cache and a memory management unit (MMU) to provide a 16 MB address range. It also added a huge number of new more orthogonal instructions and addressing modes.

Zilog essentially ignored the Z800 in favor of their 32-bit Z80000 and the Z800 never entered mass production. After more than five years had elapsed since it was originally introduced, the effort was redubbed the Z280 in 1986.[1] An actual product, the Z280 would ship in 1987 with almost the same design as the Z800, but this time implemented in CMOS.

The Z800 contrasts with Zilog's first 16-bit effort, the Zilog Z8000, in that the Z800 was intended to be Z80 compatible, while the Z8000 was only Z80-like and did not offer any direct compatibility. Zilog sought to rectify the lack of Z80 compatibility exhibited by the Z8000 when introducing the Z800, seeking to offer Z80 binary compatibility with an eightfold performance increase over the Z80, mirroring plans by National Semiconductor to incorporate emulation of the Intel 8080 in certain products in its own 32000 series of microprocessors.[2]

Short description[edit]

There was no expansion of the register set but the registers and instructions were significantly orthogonalized in order to make them more general-purpose and powerful. Many new 8-bit and 16-bit operations were added, and the HL, IX, and IY registers were upgraded from their rather limited possibilities as accumulators in the Z80 to more versatile accumulators. In addition to the register operands possible in the Z80, they could be used with immediate data, direct address, register indirect, or indexed operands, even program counter-relative. Eight-bit operations had even more possibilities, including stack pointer-relative addressing and a choice of 8-bit or 16-bits immediate offsets.

The address bus was expanded to 24-bits to address 16 MB of memory. The chip was offered with either a 19-bit external bus for 512kB RAM, or a full 24-bit bus for 16MB RAM, the advantage to the smaller bus was a smaller 40-pin package. Like the Z80 before it, the Z800 retained the internal DRAM controller and clock, but added 256 bytes of RAM that could be used either as "scratchpad" RAM, or as a cache. When used in cache mode the programmer could configure it as a data or instruction cache, or both, and the internal memory controller then used it to reduce access to (slower) external memory.

There were also ambitious provisions for multiprocessing and either loosely or tightly coupled slave processors, with or without shared global memory. This was known as the extended processing architecture and extended processing units (EPU).

Another change was the addition of an optional 16-bit data bus, which doubled the rate at which it could access memory if set up properly. Combined with the two address bus sizes this meant that the chip was offered in a total of four versions:

part # # of pins data bus address bus
Z8108 40 8-bit 19-bit (512kB)
Z8116 40 16-bit 19-bit (512kB)
Z8208 64 8-bit 24-bit (16MB)
Z8216 64 16-bit 24-bit (16MB)

Reason for the failure[edit]

The Z800 was, in most ways, a minicomputer-inspired "super Z80" that would run existing, and larger, programs at considerably higher speeds. However the address and data buses were multiplexed and the chip was, also in other respects, somewhat complicated to program and interface to. Calculation of exact execution times was also very much harder to do than for the Z80. Moreover, the plain Z80 were good enough for most applications at the time so the extra computing power was, in many cases, not worth the added complexity. Bad marketing seems to have hurt the product as well.

Hitachi developed the HD64180, as a less ambitious Z80 derivative. It had great success, probably because it is almost as simple to program and interface to as the original Z80.

More successful Z80 derivatives (from Zilog)[edit]

Apart from the successful Zilog Z180 (developed largely by Hitachi) and Zilog Z182 other attempts were made to extend the Z80 architecture, the 32-bit Z380 (introduced 1994) was a commercial disappointment except for some specific telecom applications. On the other hand, the fast 24-bit eZ80 (introduced 2001) has been both commercially successful and won engineering awards. Unlike the Z800, Z280, and Z380, the eZ80 does not introduce many new instructions or addressing modes, in comparison to the original Z80, but instead primarily extends the 16-bit registers of the Z80 to 24 bits wide. This enables it to reach 256 times as much memory, and adds a fully pipelined execution unit that executes Z80 opcodes 4× as fast as the original.

Notes[edit]

  1. ^ EDN November 27, 1986, p133
  2. ^ Geisler, Pamela A. (February 1982). "16-bits means more power for your money". Data Processing. pp. 26–27. Retrieved 2 March 2023.

References[edit]

Further reading[edit]