[Open-graphics] Sun releases RTL design for Niagra 2 under GPL 2.0

James Richard Tyrer tyrerj at acm.org
Fri Dec 14 14:13:42 EST 2007


Paul Brook wrote:
>> It is actually the FGX processor which would be of interest to us.  I
>> have wondered if it would be possible to have a graphics processor based
>> on multiple SIMD processors from standard MPUs.  I was thinking of the
>> AltiVec; however, the SPARC is available free.
> 
> This has been disucussed here several times before. It isn't a viable option 
> for two reasons:
> 
> a) Fixed function hardware is relatively easy to pipeline, and is smaller so 
> we can fit more units in the same area. Variable function hardware (aka 
> shaders) is more complicated and you generally need much higher clock and 
> shorter pipelines, which aren't feasible to implement on current FPGAs.

I have to admit that I am in the dark as to exactly what we are planning 
to implement, is there someplace where it is explained?

The UltraSparc can be implemented on a Xiliix FPGA -- have you seen:

	http://www.opensparc.net/

I guess that I could just let you and Nicolas Boulay fight it out since 
he says that fixed use hardware is a bad idea.  But, I would have to 
take the orthodox engineering position that it is an optimization 
problem that I don't pretend to know the answer to.  Fixed function 
hardware can only perform a fixed function which suggests that you might 
need more of of it -- even to the point of having 4-word vector 
processors limits what can be done with the hardware.  OTOH, to the 
extent that hardware is general purpose, you can do more things with it 
which suggests that you would need less of it.  To me, having several 
4-word processors is a reasonable compromise.  I don't see how the clock 
rate and pipeline length (which are usually antithetical) are relevant 
here except that faster clocks and shorter pipes are always nice.

As far as area is concerned, it appears to me that most of the hardware 
area is going to be consumed by the hardware multiplier arrays.  So, 
other minor differences would be minor.  This also means that you should 
avoid making fixed use of a multiplier array if that meant that it would 
stand idle part of the time.

> b) 3D rendering is a very specialised task. Using a general purpose core adds 
> lots of overhead for things that we just don't need. Even a relatively slow 
> special-purpose FPGA can get much higher thoughput and better 
> performance/watt than the fastest general purpose CPU.

Perhaps you missed this.  The VIS and AltiVec units are NOT general 
purpose cores.  They are 4-word vector processors designed for 3D graphics.

	http://www.sun.com/processors/vis/

-- 
JRT



More information about the Open-graphics mailing list