Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!rutgers!apple!oliveb!amiga!cbmvax!daveh From: daveh@cbmvax.UUCP (Dave Haynie) Newsgroups: comp.sys.amiga Subject: Re: DMA controllers and 32bit RAM Message-ID: <7122@cbmvax.UUCP> Date: 23 Jun 89 07:16:57 GMT References: <14391@ut-emx.UUCP> Organization: Commodore Technology, West Chester, PA Lines: 56 in article <14391@ut-emx.UUCP>, sjk@ut-emx.UUCP (bob) says: > Just a question I haven't been able to get a straight answer about: > What happens if you use a DMA hard disk controller, but have 32bit > expansion RAM that does not have it's own DMA controller? Lots of interesting things can happen, depending on what you've got. 32 bit RAM never has it's own DMA controller, but it needs to have DMA kept in mind. This basically means one of two things: [a] You locate the memory somewhere that's easy to keep DMA away from. I consider this to be some place outside of the normal 68000 address space. With memory starting, say, at $1000000, it's easy to keep DMA devices away from it by specifying a Mask value in their mountlist entry, providing the device will support Mask. [b] You build a 32 bit memory system that can support 16 bit DMA. It does add to the complexity of the memory system. There are two basic approaches. The simplest is to make the memory respond like a 68000 memory board during DMA, and like a 68020/30 memory board during CPU operation. The second approach is to build a bus converter that turns 68000 signals into slow 68020/30 signals. The A2620 and A2630 use the first approach; the only thing they all DMA to access is the on-board DRAM (pretty much the only thing on-board that would be interesting to a DMA device anyhow). > My own system is an Amiga 1000 with LUCAS and (soon to be) FRANCES > 32 bit memory board and a Toolbox expansion chassis where my hard > drive controller will go, but I suppose people with A2000's and > a third party 68020 board (ex. Ronin) will face similar problems, as > the 2620 is the only 020 and 32 bit RAM board with its own DMA support > routines, that I know of. Ronin does indeed have a problem with DMA. They ship their memory board non-autoconfiguring but allow it to sit in expansion space. That's a bad idea. They also recommend a Mask=0x0ffffe, which restricts DMA to CHIP memory, an even worse idea. Fortunately, with the right jumper settings the Ronin memory can be moved above the 24 bit mark and the right 0xfffffe mask can be used (restrict DMA to where the hardware allows it to go in the first place). I talked with Brad on this some before, and briefly at DevCon, so I'd expect his board to make the right kind of decisions for the type of board it'll be. > Scot Kleinman > sjk@astro.as.utexas.edu > Astronomy Dept. U. Texas Austin TX 78712 -- Dave Haynie Commodore-Amiga (Systems Engineering) "The Crew That Never Rests" {uunet|pyramid|rutgers}!cbmvax!daveh PLINK: D-DAVE H BIX: hazy Be careful what you wish for -- you just might get it