RE: Too good to not mention...

From: Clay Cowgill <ClayC_at_diamondmm.com>
Date: Tue Nov 17 1998 - 11:54:09 EST

> I've followed this processor from the beginning, what I didn't know is
> that they
> have brought the speed up to 100 mhz (I know of a guy who's was beta
> testing the
> 50mhz chips, and he says he's run them at 150mhz on the bench!!)
>
Fram talking to the factory guys a while back, Scenix had been running
the 50's at 75-90MHz reliably, but they were waiting for a process
change to go for *big* "official" speeds. That they did. ;-) All sorts
of cool possibilities. At 100MHz with a 30ns interrupt service time you
could probably sit in a program loop watching some address/data lines
and do a game-genie kind of thing by modifying data as it goes by based
on a target address... All sort of tricks to be played with a 10ns (or
less overclocked!) instruction time.

> The routines assumed two parallel DACs connected to two setable
> counters that
> were simply incremented or decremented by a pulse from the Scenix part
> as part
> of the loop. They included the code for different drawing times at
> different
> angles to keep beam brightness uniform.
>
Yeah, I'd gone down a different path with some CPLD's acting as fast
hardware fixed-point adders. You load a slope value into the adder and
a "distance" and turn it loose. Splines would be neat though. ;-)

> At this point the problem gets down to how fast a PC / MAC / SOMETHING
> can feed
> data to the vector generator to keep it moving. (do you use a
> parallel port?
> ISA? PCI?)
>
I've got a NEC video field memory to feed me data. They're neat-- dual
ported video RAMs in a ~256K byte deep FIFO configuration. Async
reading and writing, auto-incrementing datapointers. (So you put data
on the bus and strobe the write line-- the data is stored and the
internal address pointer auto-increments to the next position. The
port on the "otherside" works the exact opposite-- stroe read and you
automatically get the next data. Each port can be reset to zero async
 from the other.) I just load the memory, flip my "ready to draw" bit,
which clears the counters in the RAM and starts the CPLD's. They grab
data from the RAMs until they hit the "end of list" marker in memory and
then they pull a status line saying "done". Lather. Rinse. Repeat.

-Clay
Received on Tue Nov 17 10:54:35 1998

This archive was generated by hypermail 2.1.8 : Fri Aug 01 2003 - 00:32:23 EDT