On Wed, 9 Feb 2005 00:53:33 -0500, Daniel Phillips <[EMAIL PROTECTED]> wrote: > On Tuesday 08 February 2005 20:52, Timothy Miller wrote: > > On Tue, 8 Feb 2005 19:59:54 -0500, Daniel Phillips wrote: > > > I suppose that is why multipliers start disappearing when you > > > use the larger ram blocks. > > > > No, the multipliers are dedicated logic. If you wanted to put an > > 18x18 multiplier into a RAM block, you'd have to have a 36 bit > > address. Where are you going to fit 2^36 bits? > > If it was done this way (which it's not as you point out) you might > stack up a bunch of little multipliers to make a big one that works in > O Log(N), I seem to recall from Knuth. OK, that's called a partial > product lut multiplier: > > http://www.andraka.com/multipli.htm > > There's one in there, the computed partial product multiplier, that > looks like it might be useful in this design.
I've done something like that too. It's a multiplier that requires log2(n) stages, where n is the number of bits in the multiplier. The first stage is just muxes, and the remainder are just adders. > > > The reason the multipliers disappear when you use RAMs in 36-bit mode > > is because each multiplier is paired with a RAM block, and they share > > some data lines. Apparently, the pairing is useful for digital > > signal processing like FFTs and stuff, but since we want to use them > > independently, we have to deal with some limitations. > > Now I'm curious, we're not planning on leaving part of the chip unused > are we? :-) We're going to use every bit of it that we can. :) > > Well, if we need to add functionality, we need to figure that out. > > Otherwise, the most useful thing to do right now is to use the > > float25 class and perhaps start making other modifications that > > reflect the implementation (like fixed-point). But it may be too > > early to make some of those decisions. > > Yes, I feel like I sort of understand what's going to happen at the > rasterizing end of the pipe, but the other end is still a big murky > unknown. I see a lot of 8x8 multiplies that could be table lookups, > since multipliers and logic are apparently in shorter supply than ram. > On a once over lightly, I didn't spot anything that won't work with 8x8 > = 8 bit precision, with the possible exception of fog. Well, there may be something to what you say. I generally don't start with the idea of using a LUT (unless it's obvious), but I often get there when optimizing a design. > > > In fact, this FPGA appears to work entirely by lookup tables and > > > doesn't actually implement gate logic at all. I don't know, maybe > > > they all work that way, but this is the only one I've ever looked > > > at and it does seem very cool. > > > > That's a misleading way to put it. > > Don't forget, this is a software guy trying to make sense of a hardware > world. That's alright. I had to go through the same process myself a few years back. :) _______________________________________________ Open-graphics mailing list [email protected] http://lists.duskglow.com/mailman/listinfo/open-graphics List service provided by Duskglow Consulting, LLC (www.duskglow.com)
