Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Z80 MMU

1,169 views
Skip to first unread message

KDMcCullum

unread,
Aug 31, 1998, 3:00:00 AM8/31/98
to
Is there a MMU chip which will work with the Z80 CPU. I know the Z180 has one
built into it but I am looking for one that is specific to the Z80. Also, if
there is one, is it compatable with the Z180 MMU (Will code written for the Z80
MMU work on the Z180 MMU)

Kurt

Clarence Wilkerson

unread,
Aug 31, 1998, 3:00:00 AM8/31/98
to KDMcCullum
I don't think there is a MMU for the z80. Most banked systems
seemed to be handrolled out of TTL and PROMS.

The german mag c't had an article a long time back that
implemented a large ram disk via a DRAM controller and
some bank switching.

--
Clarence Wilkerson \ HomePage: http://www.math.purdue.edu/~wilker
Prof. of Math. \ Internet: wil...@NOspam.math.purdue.edu
Dept. of Mathematics \ Messages: (765) 494-1903, FAX 494-0548
Purdue University, \
W. Lafayette, IN 47907-1395 \

Jack Peacock

unread,
Aug 31, 1998, 3:00:00 AM8/31/98
to
Clarence Wilkerson wrote in message
<6seh3n$c...@mozo.cc.purdue.edu>...

>I don't think there is a MMU for the z80. Most banked
systems
>seemed to be handrolled out of TTL and PROMS.
>
The TI 74LS612 makes a nice MMU for a Z80 system. This is
the IC found on the original IBM AT motherboard, to extend
the 16-bit 8237 DMA controller out to 24-bit address.
Basically, on a Z80 you run the hi 4 address lines thru the
'612, you get 8 address lines out, mapping 4K pages into a
1MB (20-bit address...12 from Z80, 8 from '612) space. The
'612 needs a bank of 16 I/O ports, to load the page register
for each 4K page, plus there's a bypass feature on boot to
just pass thru the address lines. THis really isn't the
same as a "banked" memory system because each 4K page can be
mapped to any section of memory, or even assign two 4K pages
to the same physical address. The drawback is there's no
dirty page flag.
Jack Peacock


KDMcCullum

unread,
Aug 31, 1998, 3:00:00 AM8/31/98
to
In article <6sevoq$p0b$1...@supernews.com>, "Jack Peacock" <pea...@simconv.com>
writes:

>The TI 74LS612 makes a nice MMU for a Z80 system. This is
>the IC found on the original IBM AT motherboard, to extend
>the 16-bit 8237 DMA controller out to 24-bit address.
>Basically, on a Z80 you run the hi 4 address lines thru the
>'612, you get 8 address lines out, mapping 4K pages into a
>1MB (20-bit address...12 from Z80, 8 from '612) space. The
>'612 needs a bank of 16 I/O ports, to load the page register
>for each 4K page, plus there's a bypass feature on boot to
>just pass thru the address lines. THis really isn't the
>same as a "banked" memory system because each 4K page can be
>mapped to any section of memory, or even assign two 4K pages
>to the same physical address. The drawback is there's no
>dirty page flag.
> Jack Peacock
>
>

Thanks for the information Jack. I'll take a look at it.

KDMcCullum

unread,
Aug 31, 1998, 3:00:00 AM8/31/98
to

Herbert R Johnson

unread,
Aug 31, 1998, 3:00:00 AM8/31/98
to
In article <199808311539...@ladder01.news.aol.com>,
kdmcc...@aol.com (KDMcCullum) wrote:
*>Is there a MMU chip which will work with the Z80 CPU. I know the Z180 has one
*>built into it but I am looking for one that is specific to the Z80. Also, if
*>there is one, is it compatable with the Z180 MMU (Will code written for the Z80
*>MMU work on the Z180 MMU)
*>
*>Kurt

Memory management in the Z80 world was by "bank switching" selected portions
of the 64K memory space. This was often done in the S-100 world by the
use of an I/O port (often at I/O address 20H) to switch the "page" of memory
in or out. A "page" was usually 4K, 8K, or 16K of memory. ROM's were
routinely switched "on" with hardware reset, and "off" by addressing some
location in memory or I/O space to permit more RAM memory. Non-bus-based
Z80 systems had proprietary bank switching.

To my knowledge, there were no standards in the Z80 world for bank switching,
just a number of manufacturer's standards. In CP/M 3.0, bank switching was
a function of the BIOS: check the literature for CP/M 3.0 for its requirements,
and what it did with banked memory.

Of course the Z180 occurred later, and as there was no standard, it did not
need to be "compatible".

Herb Johnson

Herbert R. Johnson http://pluto.njcc.com/~hjohnson
hjoh...@pluto.njcc.com voice 609-771-1503, New Jersey USA

amateur astronomer and astro-tour guide
classic S-100 computers restoration & parts as "Dr. S-100"
rebuilder/reseller of classic Macs for your computing pleasure
and senior engineer at Astro Imaging Systems

Jerry Avins

unread,
Aug 31, 1998, 3:00:00 AM8/31/98
to hjoh...@pluto.njcc.com
I have some documentation for an HD64180 system (Z80 c0de compatible)
that probably explains the on-chip memory banking method. I don't know
if it's compatible with Z108. It's an interesting system that I'll
describe if prompted. I never used it.

Jerry
--
If my address has "x" or "z" in it, remove them to reply.

Never ascribe to malice what could be ignorance, stupidity, or sloth.
---------------------------------------------------------------------

KDMcCullum

unread,
Sep 1, 1998, 3:00:00 AM9/1/98
to
In article <35EB41...@erols.com>, Jerry Avins <jxyz...@erols.com> writes:

>I have some documentation for an HD64180 system (Z80 c0de compatible)
>that probably explains the on-chip memory banking method. I don't know
>if it's compatible with Z108. It's an interesting system that I'll
>describe if prompted. I never used it.
>
>Jerry

Jerry,

Thanks for the offer but I've got a ton of info on the Z180/HD64180. I was just
wondering if there was a similar part for the Z80.

Kurt

KDMcCullum

unread,
Sep 1, 1998, 3:00:00 AM9/1/98
to

Holger Petersen

unread,
Sep 1, 1998, 3:00:00 AM9/1/98
to
"Jack Peacock" <pea...@simconv.com> writes:

>The TI 74LS612 makes a nice MMU for a Z80 system. This is
>the IC found on the original IBM AT motherboard, to extend
>the 16-bit 8237 DMA controller out to 24-bit address.

It is used even on the PC from 1981 for the same reason (but
of course limited to 20-bit adresses)


In germany, there was the "Jannich&Klaas" CPU-Card with 64 K Ram
and SIO/PIO, which used a 74S289 (small: 64 Bits fast RAM-Chip)
to implement memory banking.

Greetings, Holger

0 new messages