Path: utzoo!utgpu!watserv1!watmath!att!occrsh!uokmax!apple!usc!sdd.hp.com!uakari.primate.wisc.edu!samsung!uunet!cbmvax!daveh From: daveh@cbmvax.commodore.com (Dave Haynie) Newsgroups: comp.sys.m68k Subject: Re: Designing memory for cache-burst access. Message-ID: <14267@cbmvax.commodore.com> Date: 6 Sep 90 22:28:29 GMT References: <15852@unix.SRI.COM> Reply-To: daveh@cbmvax (Dave Haynie) Organization: Commodore, West Chester, PA Lines: 49 In article <15852@unix.SRI.COM> henry@ginger.sri.com (Henry Pasternack) writes: > > As I understand it, the 68030 allows cache-burst access from >arbitrary long word addresses. This means that there is no guarantee >that a cache burst will begin and end within the same page. Actually, there is. While the first cycle in a burst mode fetch can start on any address, the logical burst address wraps around. So a burst cycle always addresses a single quadlongword aligned quadlongword, it just starts at any longword within that quadlongword. >The implication is that the memory controller must check for page access >and terminate the cache-burst access early if necessary. This is something >of a nuisance in a nibble-mode memory where the column address is only >available internal to the DRAM. No, actually, the 68030 burst cycle exactly matches the nybble mode DRAM cycle -- your first address is supplied, the next three are assumed to be increments, modulo 4, from the first address. >It's even a nuisance with fast page-mode DRAM's (but a necessary one). With page mode or static column memories, you'll have to create low order addresses A2 and A3 for the last 3 cycles in the fetch, but you're guaranteed to stay on the page. > Is there someone out there who can describe to me in some detail >the tradeoffs involved in selecting nibble-mode or fast page mode >DRAM's for application with the 68030? I'm not looking for a beginners >tutorial, but some detailed information on real applications to help >speed my learning process. Nybble-mode memory is much easier to use, but since nybble mode parts are generally available only in "x1" packages (which does kinda make sense), your minimal memory chunk turns out to be 4 Megabytes using 1 Meg x 1, or 16 Megabytes using 4 Meg x 1. For the PRAM/SCRAM system, you can use x4 parts for a minimal memory chunk of 1 or 4 megs, using corresponding memory denisties. But there's more overhead in the control logic, and in general, page or static column cycles are quite as fast as nybble cycles, so you may end up with an extra burst cycle wait state in the PRAM/SCRAM case. >-Henry -- Dave Haynie Commodore-Amiga (Amiga 3000) "The Crew That Never Rests" {uunet|pyramid|rutgers}!cbmvax!daveh PLINK: hazy BIX: hazy Get that coffee outta my face, put a Margarita in its place!