Contents | < Browse | Browse >

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Is the AAA obsolete?                               by Aric R. Caley %%
%%                                                   dances@qedbbs.com %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

                Is AAA already obsolete?
                ------------------------

  Recent  rumors of AAA being "too little, too late" have been making the
rounds.   Some rumors say that Commodore has canceled AAA because they A)
can't afford to make it, and B) it's already obsolete.  Well, I don't buy
into that.

  According to Dave Haynie, one of the senior engineers at Commodore, and
who  is responsible for the system design of the next generation high end
Amiga,  and  who  seemed  enthusiastic  just  three months ago, said some
important  things  publicly.   And  I tend to believe him over other less
reliable  people.   Here's  some  quotes from Dave's conference on Portal
three months ago:

"Everyone's  heard  about AAA, of course, and I did build a AAA prototype
machine, which we have running in the labs of course."

So,  AAA  *IS*  real and *IS* up and RUNNING, even if only in a prototype
machine.  And that was three months ago.

"There  are things in AAA which will make a very impressive difference in
many of the things we're doing with computers these days."

"The  AAA  chip  set  is  a radical departure from anything you have seen
before.  Everything in it was designed new, from the ground up."

"I  don't think AAA is coming out too late, though it's later than I (and
all of you, of course) would have liked.  There's still not a big move to
4MB  floppies  yet,  everyone's  still  trying to work out just how to do
multimedia,  and I think AAA supports much of this in hardware, the right
way."

He seems confident that AAA isn't obsolete.

"AAA  will  cost  more  [than  AGA],  though much less than we originally
guessed,  thanks  to  the  downsizing of chips (AAA takes about a million
transistors)."

That's  good  news.   Things  are  turning out, at least in some aspects,
BETTER than they had planned.

"I  think  you'll find this new system isn't lacking as a '94 machine.  I
can't  get into too much detail, only to say that [a] I have been working
on  this  architecture for two years, something that never happened at C=
before  (two  weeks  was  more  like it in the...  old days), and [b] I'm
doing  things  with  system  throughput no one else is doing, or at least
talking  about,  now.   No  big surprise, really, though.  There's little
incentive  to  get  too  fancy in "standard" architecture.  Apple doesn't
build  clever  hardware,  and they seem to be wanting out of the hardware
business anyway."

Sounds like a nice *system*, no?

"C=  "high-end"  is $4k and below, generally.  I think it should start at
about $1.5K-$2K, less if possible."

With a great price...

"There's  perhaps  an  aggregate  bandwith of 400-600MB/s in a basic next
generation machine."

Yikes!   The  AGA chipset has a total bandwidth of just 14MB.  The 32 bit
ram in the A4000 has around 10MB bandwidth, as does the Zorro III and CPU
slots.  The "A5000" has 400-600MB total?  WHOA!

I  will  now detail why I think AAA and the next generation machine won't
be  obsolete, and in fact will be innovative, based on facts presented by
Dave.

                        . . .

  First  of  all,  lets  talk  about  the  features  of  AAA and the next
generation  machine  (hereafter  refered  to as the A5000, even though we
don't know if that is what it will be called).


AAA
---

  AAA  consists  of four custom CMOS chips, with a total of approximately
one  million  transistors.  It's a totaly new design, not an upgrade from
AGA,  thus  it  has  none  of the limitations of AGA.  The four chips are
called Andrea, Monica, Linda and Mary.

  They  are  all  full  32  bit  chips, with the "exception" of Linda and
Monica  which  also have 64 bit modes.  They are not limited by the 14Mhz
clock of AGA, or the hardware-fixed DMA slots (see the hardware reference
manual).


DMA: the soul of AAA
--------------------

  There  are 40 DMA channels, with dynamic allocation of bandwidth.  That
means that each channel can be as fast as it needs to be (up to the limit
of total bandwidth in the system).

  DMA  is  used  for everything, from the blitter and copper, to sprites,
the audio voices, video display, floppy disk I/O and serial ports.

  These DMA channels are the heart of AAA and part of what sets the Amiga
apart  from  other  computers.   It's  part  of  what gives the Amiga its
performance.   The  OS  is  fully  capable of taking advantage of DMA and
hardware coprocessing, due to it's multitasking nature.

  When  one  task is waiting for some DMA or other hardware processing to
finish,  another  task  can  switch  on  and  use the processor.  This is
something  that  other computers have a hard time with (for instance, the
Mac,  which  doesn't have the pre-emptive multitasking required for this.
The  Mac  IIfx  had  DMA  channels that couldn't be used by the Mac's OS!
Only UNIX on the Mac could use this hardware).


The blitter and the copper
--------------------------

  The  pride and joy of the Amiga.  In AGA, the blitter and copper became
very  outdated.   They  are slow by modern standards, very slow, although
there  is  still  nothing  that quite duplicates the functionality of the
copper.

  In AAA, these two important components become greatly enhanced.

  The blitter is basicly just some DMA channels that feed data (graphics)
into  a  processor  and  then  write it back out to RAM.  The blitter can
easily  do  all  the  necessary  bit  shifting,  modulo counting, and bit
masking required to move 2D images around in a raster/bitmap; in addition
to  doing  things  like  combining  more  than one image based on a logic
operation.   These  calculations are quite a bit more time consuming when
done by a general purpose CPU.

  The AAA blitter can blit 24 blit images "significantly faster" than AGA
can blit 8 bit images (according to Dave Haynie, who built a prototype!).
I've seen Mac's manipulating 24 bit graphics, and you can visualy see the
windows "slosh" ("shear", "squish", etc) when they are moved (you can see
the  graphics get redrawn slowly from top to bottom).  AAA will move such
windows  instantly (just like back in 1985, when comparing a colour Amiga
to a B/W Mac -- the Mac windows moved very slowly).

  The  Amiga's  "Copper"  is  also  a  DMA channel.  It feeds a stream of
instructions  into  a  very  simple processor (one could almost call it a
RISC CPU).  It's capable of doing almost anything the CPU can do; loading
chipset  registers,  jumping,  looping  and  waiting.   It can be used to
control *everything* in the chipset, independant of the CPU.  It lets the
Amiga  have  dragable  screens,  giant scrolling screen bitmaps, and many
other things characteristic and unique to the Amiga.

  With  the high bandwidth and flexibility of AAA's DMA channels, you can
see  that  the  new  blitter  and  copper are going to be quite powerfull
indeed.


Glorious sound
--------------

  Another  hallmark  trait  of  the  Amiga is its built in sound ability.
Most  computers do not have good built in sound (the exceptions being the
Apple  IIgs  and  the  Atari  Falcon,  both of which failed despite being
decent machines), most even have none standard.

  The  Amiga's  old  4 voice, 8 bit sound has been quite sufficient for a
number  of years and remains better than average for a PC.  But AAA takes
this  to  new  levels:  it now has 8 independant voices, each with 16 bit
accuracy,  and  64Khz  sampling  rates (compared to 30Khz for AGA).  That
puts  each channel well beyond a CD player in technical accuracy, and far
beyond  what  the human ear can hear.  It's also far beyond typical sound
boards on other computers.

  Amiga  sound  samples  are  fed by DMA channels, thus relieving the CPU
from 99% of the work normaly involved.


Video!
------

  Ah,  here  we  get  massive improvements over AGA!  Utilizing 32/64 bit
DRAM  and VRAM, and high speed burst access, AAA increases bandwidth over
AGA by 20 times!

  First  of  all, AAA just simply runs faster, due to its high speed CMOS
chip  design.   Everything  is  at  least  32  bits,  further  increasing
bandwidth.   Memory can now be accessed in "burst mode", which allows you
to  read  four  successive locations in memory very quickly.  And finaly,
VRAM!

  What's  VRAM?   It  stands  for  "Video RAM".  In order to get the high
transfer  rates  (bandwidth)  required  for  hi-res  displays,  VRAM  was
invented.   It  has  two  "ports" (and is hence also called "dual ported"
RAM),  one  exclusively  for video and one for accessing and changing the
bitmaps.  That effectively doubles the speed.

  With  VRAM,  there will be no more "video contention".  Ever notice how
slow your Amiga gets when you open up the largest, most colourfull screen
(640  x  400  x 16c for ECS or 640 x 400 x 256c for AGA)?  That's because
those  modes  need  so much bandwidth, that there is almost none left for
the CPU and blitter to use.

  In  the  AAA chipset, using VRAM, this won't be a problem anymore!  The
video  DMA  only uses one of the ports on the VRAM (in fact, this port is
designed  specificaly  for  video,  and  the  VRAM  has  a built in shift
register  for  this  purpose).   You can open the largest most colourfull
screen  you  can,  and  the  blitter  and copper etc won't slow down!  Of
course, they'll have more graphics to chew on..

  You  can  also  use  normal  everyday  DRAM,  which will be slower, but
cheaper.  VRAM costs about twice as much.  Luckily, you can combine both!
VRAM  is good just for the display, DRAM is good for everything else.  So
as  long  as  you have enough VRAM to open your screens, you're OK.  This
flexibility is a great advantage.  You can have upto 16MB divided between
DRAM and VRAM.

  So,  what  kind  of  resolutions  are  we  talking  about?  The maximum
resolution,  NON-INTERLACED,  should  be  around  1280 x 1024 (at 8 or 16
bits).   That's  quite a far cry from 640 x 480 x 8 in AGA.  It should be
able  to  do  1024  x  768 x 24 bits as well.  And it'll be FAST in these
modes.

  We'll also have our choice of chunky or bitplane modes.  Chunky will be
2, 4, 8 or 16 bits.  Bitplane mode will allow up to 16 planes.  The types
can  be  combined.  For a 24 bit mode, for instance, you would have three
bitplanes, each of which is an 8 bit chunky bitmap.

  There  is also some kind of new compressed display mode (in addition to
HAM  which  is  also  technicaly compressed).  Of course, there's HAM and
HAM8,  which  at a resolution of 1280 x 1024 will be very nice, and there
is  likely  to  be a HAM10 mode, giving 24 bit graphics with only 10 bits
per pixel!


Serial, floppies, mouses
------------------------

  As  if  that weren't enough, AAA does still more.  It has serial ports,
floppy drive support, and input device ports.

  The  two  joystick/mouse  ports  can  support  a wide range of devices,
including   standard  joysticks,  mechanical  and  optical  mice,  analog
joysticks, lightpens, and drawing tablets.

  AAA  also  has  two,  high speed buffered serial ports.  The old single
port  on AGA can handle as much as 115.2K Baud, but requiring significant
CPU  overhead  to prevent loosing characters.  AAA uses a FIFO buffer and
DMA  to  remove the overhead and danger of dropouts at high speeds.  This
will  come  as  great  news  to  those  planning on keeping up with modem
technology!

  Finaly,  the floppy port.  One of the most annoying things that has not
been upgraded, until now.  While AGA requires a special, half speed drive
to support HD floppies, AAA is so fast they don't even make a floppy that
can  keep  up!  It easily supports the Quad Density drives that are still
not  commonplace (High Density being the standard now).  And with AmigaOS
formating, that means 3.52MB on a disk!

  The  floppy  support  can handle the transfer rates of a CD-ROM or slow
HD,  which  is  far  in excess of current floppy drives.  So if they ever
make  an "Octa Density" floppy drive, AAA will be ready for it!  It could
also  handle  a  20MB  floptical  drive,  if there was a non-SCSI version
available.


A little help from a DSP
------------------------

  Though it's not part of the Amiga custom chip set, it fits right in.  A
DSP is a natural companion to the AAA chip set.

  A  DSP isn't limited just to sound, although it can be of great use for
creating  music  and  sound  effects.  But it can also be used for things
like  high-speed modem emulation (indeed, high speed modems have DSP's in
them),  speech synthesis, JPEG/MPEG image compression/decompression, data
aquisition   and  processing,  speech  recognition,  graphics  and  image
processing, and more.

  The  Amiga  DSP has a multitasking OS of it's own.  This allows the DSP
to  do many things at once, so you are not limited to just doing sound or
modem emulation.

  Commodore  has  selected  the  AT&T  3210  DSP.   This  is full 32 bit,
floating point processor (unlike the limited 24 bit fixed point processor
used  in Atari's Falcon).  It has an 8K on-chip memory cache and 33MFlops
of  computing  power,  and  shares  the  system bus with the Amiga's CPU,
giving  it  access  to  all memory and resources.  Finaly, there's a high
speed serial I/O port with DMA, capable of 24Mbit/sec transfers.


Last, but not least, the OS
---------------------------

  One  needs  an  OS to orchestrate the use of the hardware.  AmigaOS has
been maturing for almost 9 years now.  It now has most of the basic tools
needed for multimedia out of the box.

*   Pre-emptive   multitasking.    A   great   help,   especialy   in   a
hardware-oriented machine like the Amiga.

*  Advanced interprocess communication.  Adopting ARexx was a great move.
Any  application  can  communicate  with  another,  control  it, or offer
services  to  other  apps.   This  communication can even exist accross a
network (see "Envoy", Commodore's networking software).

*  Object  oriented  GUI.   While not yet being fully taken advantage of,
this  is  great  thing  for  the future.  An important offspring of this,
Datatypes, play an important role in multimedia.

*  Datatypes  :).   Datatypes allow applications to support multiple file
formats without any extra work.  Since Datatypes are objects, they can be
embeded  into  windows,  or even each other.  The full power of Datatypes
have yet to be realized.

  Currently,  Datatypes cover the basic multimedia data forms:  Pictures,
Sounds,  Animation, Hypertext.  Support for specific file formats include
the  standard  IFF  formats,  including  ILBM  (images),  ANIM  and  CDXL
(animation),  8SVX  (sound);  Amigaguide  (hypertext), ASCII text.  Third
party (public domain) datatypes cover GIF's, JPEG and other forms.

*  Multitasking  GUI.   The  AmigaOS GUI is designed with multitasking in
mind.   It  does not have such unfreindly things like "modal dialogs" and
other "features".

*  Fully  32 bit from the begining.  All Amiga apps are 32 bit.  There is
no baggage from 8 bit OS's.

* Extendable design.  Anyone can add new function libraries, or devices.

* Shared code libraries/devices.

* DSP support library(ies).

* This list goes on.. :)


Amiga, The Next Generation
--------------------------

  What  good  would AAA be, if it doesn't have a nice computer around it?
The "A5000" is going to be a perfect match for AAA.  Like AAA, it will be
a totaly new design.

*  Processor  independant,  high  speed  64 bit local bus.  So you aren't
locked  into  the  040  or  060.   When  you  are ready, go RISC, with no
bottlenecks.

  This  is  probably one of the most important aspects of the new system.
With  this  as  the backbone of the system, everything else will fly.  It
gives  massive  bandwidth  to  the  entire  system,  and a high degree of
modularity.

*  PCI slots.  A future industry standard.  Why go with this?  Isn't this
"anti  Amiga"?   Well,  why not.  PCI is good.  It's fast, it's standard,
it's perfect.  The Amiga will still have Zorro III slots, too.

*  64  bit memory.  While the 68040 and 68060 are only 32 bit processors,
having  64  bit memory actualy will speed things up.  It's also handy for
when you can add a 64 bit RISC processor.

*  Motorola  '040  and '060 CPU's.  The 40Mhz 040, and the upcoming 60Mhz
060 are still formidable processors.  They can hold their own against the
Pentium (PowerPC doesn't count, yet).

*  High  speed  SCSI-II on the motherboard, connected to the 64 bit local
bus.

*  DSP.   As if the AAA chipset isn't powerfull enough, you'll have a DSP
to play with too!


Why the A5000 is still a good idea
----------------------------------

  And  now,  the point to this article.  The primary feature of the A5000
will  be  the  level  of integration of the *system*.  All the parts will
cooperate  smoothly,  complementing  each other, and giving the system an
overall feel and power that is greater than the sum of its parts.

  Look  at  the  A5000  and  look at what the competition will have then.
Sure,  there  may  be individual areas where other machines will beat it.
Particularly,  IBM  clones  will  still  be  cheaper.   But as an overall
system, the A5000 will win for many applications.

  The  A5000  will  have very respectable graphics.  How many people will
have 1280 x 1024 graphics?  Such monitors are very expensive.

  How  many will have 8 voice 16 bit sound?  Cards that do that alone are
expensive.

  Will QuadDensity floppies be standard by then?  Probably not.

  Will  there  be  a  system  that  has  all these things, and more, in a
perfectly balanced system?

  Will  there  be  an  OS  for  it that uses all these features, and lets
applications take full advantage of them?

  The A5000 system is built right, from the ground up.  With a high speed
64  bit local bus at its core, a fast 32 bit CPU, a fast 32/64 bit custom
highly integrated multipurpose chip set, SCSI-II, DSP, and PCI slots, its
a formidable system.

  And  running on this hardware, you have an OS that already knows how to
use  all  this  power.   A very fast, multitasking kernel.  All the basic
multimedia extensions, built in.

  The  Amiga,  and  especialy  the A5000 (or whatever they call it), is a
perfect  multimedia  system.  It can go full blast doing sound, graphics,
communications, number crunching, multitasking, disk I/O, networking, etc
all at once with ease.

  I've  heard  altogether too many stories about Macs that just barf when
trying  to  multitask  with  serial  or  network transfers going on, slow
animation,  mega  expensive  video  hardware and software, and just plain
being slow no matter what you're doing.

  I  don't think the A5000 or AAA is too little, too late.  Sure, I think
Commodore could have created this machine two years ago (which would have
been mind blowing), but that's the way it goes.

  Lets  take a look at what you'd need to approximate the AAA chipset and
the A5000, if you have an IBM clone:

* Modern motherboard.

  64 bit local bus (CPU to DRAM).
  Full PCI slots.
  EISA or ISA or something for backwards compatibility.
  Sockets for plenty of 64 bit SIMM's (well, pairs of 32 bit SIMMs).

*  SVGA card

  PCI based, or built into motherboard.
  64 bit high speed bus interface.
  32 bit fast blitter.
  co-processor  (completely independant instruction list, can control ALL
    aspects of the system -- sound, video, blitter, sprites, etc).
  Sprites
  Bitplane (1 - 16), chunky (2, 4, 8, 16) and hybrid modes (8 x 8 x 8).
  VRAM, DRAM, in varying combinations.
  Upto 16MB VRAM/DRAM.
  Compressed video modes.

*  Sound card.

  8 voices, 16 bits each, 64Khz sampling.
  Separate volume and balance registers.
  DMA fed.

* Serial port card.

  2 high speed serial ports.
  FIFO buffers and DMA.

* Game port/mouse port/floppy/CD-ROM card

  Two ports, which support mice, joystick, lightpen, drawing tablets.

  Floppy port:
    Supports Quad Density disks.
    Is  fast  enough  to  support  CD-ROMs or other devices in this speed
      range (flopticals, etc).

* SCSI-II card

  PCI card or on motherboard.
  High speed SCSI-II FAST (10MB/sec).
  DMA driven.

* Powerfull OS

  Pre-emptive multitasking.
  Object oriented GUI.
  Datatypes.
  Interprocess communication.
  System script language (Rexx?).
  Etc.

  (this narrows it down to OS/2).

* DSP card

  PCI card or on motherboard.
  32 bit floating point DSP.
  33MFlops computing power.
  8K cache.
  Access to system memory.

I don't think you could set up such a system today, and the closest setup
would be very expensive.