lphillips@lpami.wimsey.bc.ca (Larry Phillips) (03/06/90)
In <1745@crash.cts.com>, hawk@pnet01.cts.com (John Anderson) writes: > Dave, since the A2630 board uses 16 256x4 chips to make 2 megabytes of RAM, >then(32 bit RAM), then isn't that actually 512K of actual RAM. Since each >"thing" needs 32 bits then that means it can only hold 512 thousand "Things" >since each one is 32 bits long? Is that correct? And if so, or not so, how >much RAM will be left over after your SetCPU program copies Kickstart into 32 >bit RAM? > A byte is 8 bits. A megabyte is 1048576 bytes (1K * 1K, or 1024 * 1024 bytes). The 'things' that you are speaking of are not bytes. 16 chips, in the 256*4 variety, can hold 2 megabytes of data, and can be organized as: 2 megabytes (2097152 by 8 bits wide) 1 megawords (1048576 by 16 bits wide) .5 mega-longwords ( 524288 by 32 bits wide) There are, of course, other ways to organize it, but these are the ways you will usually see it laid out. The first organization is pretty much useless on an Amiga, unless it's on a peripheral card that needs it that way for some reason. Note, though, that in all cases, we have the same number of bytes. -larry -- Gallium Arsenide is the technology of the future; always has been, always will be. +-----------------------------------------------------------------------+ | // Larry Phillips | | \X/ lphillips@lpami.wimsey.bc.ca -or- uunet!van-bc!lpami!lphillips | | COMPUSERVE: 76703,4322 -or- 76703.4322@compuserve.com | +-----------------------------------------------------------------------+
hawk@pnet01.cts.com (John Anderson) (03/06/90)
Dave, since the A2630 board uses 16 256x4 chips to make 2 megabytes of RAM, then(32 bit RAM), then isn't that actually 512K of actual RAM. Since each "thing" needs 32 bits then that means it can only hold 512 thousand "Things" since each one is 32 bits long? Is that correct? And if so, or not so, how much RAM will be left over after your SetCPU program copies Kickstart into 32 bit RAM? Another question of you don't mind. I have a 2000 with 1 meg agnus, 2 megabyte Micron RAM board and XT Bridgeboard. So that's 3 megs of RAM. With the XT Bridgeboard my maximum RAM is limited to 6 Megs. Well, the quesion is, if I buy your 2630 board with the 2 megs on it, expanding my system to 5 Megabytes of RAM (3 16bit and 2 32bit) can I add the two extra megabytes of 32 bit RAM to the 2630 board and map it somewhere else to avoid the 6 megabyte RAM limitation set by the XT Bridgeboard? (to bring it to 4 megs 32 but RAM and 3 megs 16 bit RAM).? Thank you for all your help and I hope you continue to stay with Commodore because you do a marvelous job designing the hardware, 2000, 2620, 2630 etc.
peter@cbmvax.commodore.com (Peter Cherna) (03/07/90)
In article <1745@crash.cts.com> hawk@pnet01.cts.com (John Anderson) writes: > > Dave, since the A2630 board uses 16 256x4 chips to make 2 megabytes of RAM, >then(32 bit RAM), then isn't that actually 512K of actual RAM. Since each >"thing" needs 32 bits then that means it can only hold 512 thousand "Things" >since each one is 32 bits long? Is that correct? And if so, or not so, how >much RAM will be left over after your SetCPU program copies Kickstart into 32 >bit RAM? When people talk about K, by convention they are referring to thousands of 8-bit-bytes. So each "K" is 8192 bits regardless of the memory-word size. So when we talk of two megabytes of RAM, while it is true that is only 524288 32-bit words, it is still has as much storage capacity of 2 Meg of 16-bit memory, such as on a standard 2 MB expansion card like the A2052, which has 1048576 16-bit words. Don't forget that your 512 thousand "things" hold twice as much memory as 16-bit wide things. When Kickstart is copied into 32-bit RAM, it take just as much room, namely 256K of your 2 MB. All that happens is that in one access, 32 bits of memory can be gotten, instead of 16. So you still have the rest of your 2MB (1.75MB) left. Peter -- Peter Cherna, Software Engineer, Commodore-Amiga, Inc. {uunet|rutgers}!cbmvax!peter peter@cbmvax.cbm.commodore.com My opinions do not necessarily represent the opinions of my employer.
swarren@convex.com (Steve Warren) (03/08/90)
In article <1745@crash.cts.com> hawk@pnet01.cts.com (John Anderson) writes: [...] >"thing" needs 32 bits then that means it can only hold 512 thousand "Things" >since each one is 32 bits long? Is that correct? And if so, or not so, how >much RAM will be left over after your SetCPU program copies Kickstart into 32 >bit RAM? [...] The "Things" you are talking about are called words, and the definition of word-size has nothing to do with how much capacity a memory has, only how it is organized. Here is how 16 bytes of data would be stored in 16-bit ram (labeled A-P): ADDRESS DATA (2 bytes/16-bit word) 00000000 B,A 00000002 D,C 00000004 F,E 00000006 H,G 00000008 J,I 0000000A L,K 0000000C N,M 0000000E P,O (The addresses are in hexadecimal; byte 'A' is stored at '0', 'B' at '1', etc) Here is how the same 16 bytes of data would be stored in 32-bit ram: ADDRESS DATA (4 bytes/32-bit word) 00000000 D,C,B,A 00000004 H,G,F,E 00000008 L,K,J,I 0000000C P,O,N,M Notice that sequential word-addresses in the 16-bit memory are incremented by two, but sequential word-addresses in the 32-bit memory are incremented by four. The address actually corresponds to a single byte location (the byte farthest to the right, in this example). So each word is twice as long, and it only takes half as many words to store the same program. Since the addresses of each byte are unchanged (the 680X0 family maintains an address for each byte in memory, regardless of bus-size), the storage capacity of the memory is unchanged. But the 68030 can access the data in 32-bit chunks and then sort it out, so it goes faster. In other words, if you use the same number of memory chips - ie the byte-count is the same, you get the same total storage capacity, regardless of how the memory is organized. Addresses are not related to word-size either. But the 32-bit storage will work much faster. -- --Steve ------------------------------------------------------------------------- {uunet,sun}!convex!swarren; swarren@convex.COM
daveh@cbmvax.commodore.com (Dave Haynie) (03/08/90)
In article <1745@crash.cts.com> hawk@pnet01.cts.com (John Anderson) writes: > Dave, since the A2630 board uses 16 256x4 chips to make 2 megabytes of RAM, >then(32 bit RAM), then isn't that actually 512K of actual RAM. Well, its actually 512K WORDs of RAM, as well as simultaneously being 2 Mega-BYTES of RAM. The same number of chips on a 68000 memory board would be 1 Mega-WORD of RAM. >Since each "thing" needs 32 bits then that means it can only hold 512 >thousand "Things" since each one is 32 bits long? No. The memory can still be byte addressed; all 680x0 family CPUs, and most others for that matter, equate one address with one byte and allow individual bytes to be addressed. All the 32 bit bus indicates is how much data can be read or written in a single cycle; the CPU doesn't have to read or write all 32 bits at once, it just has that option. >Well, the quesion is, if I buy your 2630 board with the 2 megs on it, >expanding my system to 5 Megabytes of RAM (3 16bit and 2 32bit) can I add >the two extra megabytes of 32 bit RAM to the 2630 board and map it somewhere >else to avoid the 6 megabyte RAM limitation set by the XT Bridgeboard? Not on-board; the A2630's built-in memory must be configured as a single autoconfig unit of either 2 or 4 megs in size. You could buy a daughterboard for it, as soon as someone offers one, and put more memory there; the A2630 daughterboard space is above the 68000 memory map. Though I would expect most daughterboard designs to increment in 4 or 16 megabyte chunks. -- Dave Haynie Commodore-Amiga (Systems Engineering) "The Crew That Never Rests" {uunet|pyramid|rutgers}!cbmvax!daveh PLINK: hazy BIX: hazy Too much of everything is just enough
hawk@pnet01.cts.com (John Anderson) (03/30/90)
I just purchased your 68030 board through the student discount offered by Commodore. It is very slick and I am very impressed. I have your SetCPU program also but there are a few questions and problems. Before I start: I have a B2000 with 1 meg agnus, 2 megs of 16 bit RAM and the 2 megs of 32 bit RAM that came on your '030 board, 8088 bridgeboard, and 2090 (not "a") hard disk controller. For the hard disk controller I have purchased the Centaur autobooting card that takes up an Amiga slot and lets the hard disk autoboot. Ok, the first question is abou the caching and burst mode. Should I set the instruction cache *and* the data cache, neither, or either, same question about the burst modes. Two: When I use the CARDROM option like this "CARDROM s:CardROMList" (I have a file called that in my S: dir just like you said, and it looks like this "0x202 0x01 0x010000 0x10000 0x10000 CBM_2090_Disk_Controller") and SetCPU doesn't give any error that it can't find anything but it also doesn't say anything about *doing* anything because I use the VERBOSE option like your instrucions alos said. Am I doing anything wrong there, and can I do the same for the 2630 ROMS & my 2 meg 16 bit RAM ROMS & my bridgeboard ROMs? Three: The KICKROM command doesn't work with Kickstart 1.1, but it does with 1.2 and 1.3, I do "SetCPU KICKROM df0: CONFIG 0" (I've also tried CONFIG 1, and CONFIG 2, but they don't work either). AM i doinf something wrong or is there a problem with the version of Kickstart and your board, or both? And finally Four: Does the 32 bit RAM map itself into $200000 and map the 2 megs of 16 bit RAM into $400000? I've used a couple of programs to show me the memory lists biut I don't know which one is which. What does MergeMem (the command in the system drawer of workbench) do to the two memory section (af anything at all). The largest still says around 1.8 megs even when I use meremem and type "avail". Sorry for so many questions and thank you for such a well designed product.
daveh@cbmvax.commodore.com (Dave Haynie) (03/30/90)
In article <2002@crash.cts.com> hawk@pnet01.cts.com (John Anderson) writes: > I just purchased your 68030 board through the student discount offered by >Commodore. It is very slick and I am very impressed. I have your SetCPU >program also but there are a few questions and problems. You obviously have excellent taste in both hardware and software. >Ok, the first question is abou the caching and burst mode. Should I set the >instruction cache *and* the data cache, neither, or either, same question >about the burst modes. I-Cache is perfectly safe to use. The D-Cache is not likely to be a problem with the hard disk controller, but unless the driver explicitly does cache dumps after DMA, there's always a potential problem with data caching. The only driver I know of that flushes the cache where appropriate is the A2091 driver. Data caching also causes trouble with BridgeCards. There's a utility out called CacheCard which will let you modify the cachability of any expansion card, allowing the data cache and the bridge card to co-exist. SetCPU V1.6 (available Real Soon Now) will also adjust things for the BridgeCard. >Two: When I use the CARDROM option like this "CARDROM s:CardROMList" ... >Am I doing anything wrong there... What you really may need is a CARDROM entry for the autoboot card. The 2090 itself doesn't have any ROM, so SetCPU won't try to build a translated ROM image for it. You need to know more about the autoboot card, like its manufacturer and product codes. The SetCPU instructions explain how to build your own entry in the CardROMList file. >.. and can I do the same for the 2630 ROMS & my 2 meg 16 bit RAM ROMS & my >bridgeboard ROMs? You don't need it for any of those. The A2630 ROMs only get used prior to booing. The 16 bit RAM doesn't have any ROM on it, and the BridgeBoard's ROM is only used by the PC side of things. >Three: The KICKROM command doesn't work with Kickstart 1.1, but it does with >1.2 and 1.3, I do "SetCPU KICKROM df0: CONFIG 0" (I've also tried CONFIG 1, >and CONFIG 2, but they don't work either). I don't know of any problem with 1.1. If you have normal autobooting devices, you may have trouble with 1.2 (though some of the autoboot cards for 2090s use a different autoboot technique that actually works under 1.2). Using 1.1 may be annoying, since the expansion.library wasn't around, so none of your expansion stuff will work. If your autoboot card works under 1.2, I would guess that's what's causing the problem booting 1.1. I do know that 1.1 will work OK with 68030s, though there was some problem with FPU context that might mess up operation of the FPU. >And finally Four: Does the 32 bit RAM map itself into $200000 and map the >2 megs of 16 bit RAM into $400000? Yeah, the 32 bit memory is the first autoconfig device, and so currently it'll show up at $00200000. >What does MergeMem (the command in the system drawer of workbench) do to the >two memory section (af anything at all). The largest still says around 1.8 >megs even when I use meremem and type "avail". MergeMem will merge the two memory lists. You won't really see anything much happen with that if you use "SetCPU FASTROM" or similar, since SetCPU locates it's ROM image at the end of 32 bit memory to avoid fragmentation, which is a good idea if you're mainly concerned about fragging 32 bit memory, but a bad idea if you want lots of contiguous memory. Try "SetCPU FASTROM HEAD" and things will look more merged. -- Dave Haynie Commodore-Amiga (Systems Engineering) "The Crew That Never Rests" {uunet|pyramid|rutgers}!cbmvax!daveh PLINK: hazy BIX: hazy Too much of everything is just enough