Welcome, Guest. Please login or register.

Author Topic: Accelerator Cards  (Read 7723 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline darksun9210

Re: Accelerator Cards
« on: December 12, 2008, 03:14:11 PM »
sorry for the long winded rambling reply, but it's friday, and i'm hungover (still), and i'm on a single minded misson to avoid work today.

motorola made the 68020, 68030, 68040, and 68060.
different manufacturers took those chips (GVP, Phase5, SSL, M-Tec etc.) and designed boards, and memory controllers to plug those 680x0 processors into amigas.

and in theory, yes, a full 68030 (and 68020) has access to the full 4GB address range no matter who made the card. however, the memory controller is a different matter.
the GVP A530 for example, memory controller maps its memory to the 8MB zorro2 area in the amiga's address range, and so has a limit at 8MB, as the memory controller cannot address any memory outside of that window.
"back in the day" this wasn't really a problem, as 4MB memory modules cost around £150+. so 8MB of ram was not only a lot, but prohibitivly expensive too. plus it didn't take too much controller logic to map the memory to an area the amiga already had set aside for that kind of thing.
this also has the added advantage that even if you switch off the accelerator, it could act as just a ram card for the 68000 chip as the 8MB is well within its addressable area. however that usually didn't happen, as disabling the accelerator disabled the memory controller it had and there for, the memory as well.
the VXL memory controller can take more than 8MB as it maps outside of the 16MB amiga range, into the 32bit space, but can't understand how to talk to memory modules with higher density cell counts above 32MB, as 64 and 128MB simms were again uncommon, and very expensive, and probably developed later than the card was designed.

The A500 Viper530 also mapped its ram above the standard amiga range in the 32bit area, so was happy to take 128MB on one simm slot as it had plenty of room to map it (i suspect that an additional simm slot would be able to take another 128MB simm quite happily..).

The A1200 blizzardIV/PPC series of accelerators have memory controllers that are again able to map to the entire 32bit range, and, understand double banked simm modules up to 128Mb. and as the A1200 doesn't have to worry about Zorro3 space in the 32Bit address range, so the accelerator has almost the whole 4GB range free to map the memory outside of the standard amiga 16/24bit address space and so can take as much ram as you can throw at it. hence 2x simm slots= 256Mb ram. i'm fairly willing to bet that if you could solder another simm socket or two on there, it would happily use those as well.

The A3/4000 series have a slightly different problem. while they are 32bit, and have the whole 4GB at their disposal, their address range has to take account the zorro3 address space, so they only have 128MB assigned to the CPU slot above the standard memory mapping, then the rest is assigned to Zorro3 address space.
so you can have upto 128Mb on the CPU slot, (a crazy amount when the A3000 was conceived), and up to 512MB addressable per zorro3 slot, with 7 slots with available DMA can take up to 3.5GB of ram. but that all goes through the Zorro3 controller (not as fast as ram directly on the CPU card).

But apparently there is a bug in the exec, and expansion.library that means a machine can't see more than 384MB of ram.

when i say standard amiga memory layout, i mean (as far as i can figure):-
starting from the bottom address
----------------------- start of 16bit area
000000000 - 0001FFFFF .. 2MB chipram
000200000 - 0009FFFFF .. 8MB Zorro2 autoconfig space (16bit/gvp A530 ram goes here)
000A00000 - 000BEFFFF .. Reserved
000BFD000 - 000BFDF00 .. CIA-B even addresses only
000BFE001 - 000BFEF00 .. CIA-A odd addresses only
000C00000 - 000D7FFFF .. 512KB slow ram on A500
000D80000 - 000DBFFFF .. Reserved
000DC0000 - 000DCFFFF .. Realtime Clock
000DD0000 - 000E7FFFF .. Reserved
000E80000 - 000E8FFFF .. autoconfig initialization space
000E90000 - 000EFFFFF .. autoconfig space for I/O boards
000F00000 - 000FBFFFF .. 256KB kick rom (high)
000FC0000 - 000FFFFFF .. 256KB kick rom (low)
----------------------- end of 16bit area
001000000 - FFFFFF000 .. 3.5+GB free for use by 32bit accelerators on non zorro3 machines (VXL etc.)
----------------------- end of 32bit area

otherwise, as a rough guess for A3k/4k machines...

----------------------- end of 16bit area
001000000 - 001FFFFFF .. 16MB mainboard fast ram
002000000 - 009FFFFFF .. 128MB CPU slot area
00A000000 - FFFFFF000 .. zorro3 space from the end of the CPU slot to the top of the 32bit range
----------------------- end of 32bit area

i'm sure someone can correct me on these address ranges where i've gone wrong, but the idea is pretty much there

A500, A600, A1200x3, A2000, A3000, A4000 & a CD32.
and probably just like the rest of you, crates full of related "treasure" for the above XD
 

Offline darksun9210

Re: Accelerator Cards
« Reply #1 on: December 12, 2008, 03:56:18 PM »
sorry, i should have made that bit clearer  :-)

the A500+ has one meg on the mainboard, and the 2nd meg in the trapdoor is mapped to the addresses right after it, so you have 2meg continuous chipram, like all machines after it. A600,A1200,A3000,A4000 etc.

The A500 (non plus) only had 512k chip ram on the motherboard, the area where the extra 1.5Mb of the A500plus's ram was mapped as "reserved", and the 0.5MB  trapdoor expansion was mapped to the "slow ram" area.

the 3.5GB+ free refers to the available address space that the CPU can get to, _if_ the memory controller can understand that much ram. a-la Viper handing "only" 128MB, but i recon it could do more if it had more simm slots. :-D

-edit-

i guess the "ranger memory" is the address space that hasn't been used, but the trouble with this, and "slow" ram, is that it is "fast" ram in that only the CPU can access it, but it is slow in as much as it has to go across the chipram bus to get to it. so ends up having to ask the custom chips for permission to get to this "ranger mem" and hence slower than true fast ram on the side port or accelerator, as that is controlled by the CPU for the CPU.

A500, A600, A1200x3, A2000, A3000, A4000 & a CD32.
and probably just like the rest of you, crates full of related "treasure" for the above XD