I propose this as the ideal NorthBridge based board:
http://home.earthlink.net/~tyrerj/files/OG/NB00.odp
{that is an OpenOffice file}
To use an existing chip, you need to figure out how it could implement
part of this and whether it would be cost effective to do it.
Some chips, (like the Geode GX) have both the CPU and the NorthBridge on
the same chip, nice [but see #5 below]. Some chips have a standard I/O
bus for the I/O bus and some have a proprietary one.
The problem is that it doesn't seem possible to get all this in a
NorthBridge -- can't find a real chip that matches my ideal prototype.
Although the Intel 945G might work, but that had documentation issues.
The main other issue is what additional logic would be required. Other
specific issues are:
1. If the CPU didn't match the chip, some glue logic would be
required and buses seem to keep getting more complex making this
not an easy task.
2. The GPU could have an interface to whatever bus it needed to
connect to, but this might not be optimum if it was using an AGP
backwards (this probably would work, but I don't know how well).
3. We would probably need to use our own SouthBridge since we only
need the two connections. In some cases, a bridge chip would be
suitable to use along with a simple interface to the ROM chips.
4. Still there is an issue with the I/O bus on some chips. I
figured that 64 bit @ 66 MHz was needed and they don't all have
that -- is 32 bit @ 33 MHz enough to connect to the PC?
5. Some setups would have only one bus for both I/O and the
Video. This would be problematic -- it looks like an
unacceptable bottleneck unless we were using a GPU and/or video
on the chip.
So, although this would work if we could get the documentation for a
suitable chip, I'm not sure that it would be worth it. You can make
most anything work if you throw enough hardware at it. :-)
But, if we had our own NorthBridge chip this basic idea might work.
There are disadvantages to using only one chip. The same parameters are
going to be applicable whether we are using FPGAs or ASICs. A chip with
twice the area will cost more than twice as much. The math is fairly
simple for doubling the area: (p+q)^2 where p is the yield for the 1x
chip and q = 1 - p. You square this and then the yield is the p^2 term.
The other terms are q^2 where both halves of the chip are defective
and there are two p*q terms where only half of the chip is defective
(one for each half. So, the increase in cost is a function of the
yield. If you can get 90% for the 1x, it is no problem since you would
expect 81% yield with twice the area. But if your yield is only 50% you
would expect only 25% yield. This would increase the cost of the dice
by 4x -- not good. Lower yields and it gets worse. :-(
So, if we could consider a multiple chip design, I propose this:
http://home.earthlink.net/~tyrerj/files/OG/NB01.odp
I am presuming that we couldn't put the analog video hardware on the
chip so I show it as a separate module which would be made from existing
hardware. This would be a good idea since at some point the VGA RAMDAC
isn't going to be needed any more.
We should be able to use an existing chip for PCI, PCI-X, or PCIe. For
AGP I don't know if it is worth it to adapt a PCI chip or if this would
have to be custom.
The OG Bridge chip would contain the memory controller (DDR2), the video
controller (including a buffer), a bus or cross-bar, and arbitration and
chip selection logic.
A FIFO for the video data stream is probably a good idea. This would be
most effective as a separate chip as part of the Video module. I am
presuming here that you can read memory faster than the video output and
that the connecting bus is faster than reading memory.
The GPU would be the 2D/3D Graphics Processor. This can share the bus
with the video output data since they can't both read memory at the same
time. The advantage of having the processor separate is that you could
have increase the performance of the board by upgrading only the GPU.
The CPU is optional. It would be used in you wanted to run the X server
on the board. Since we would be using a custom Bridge chip, we wouldn't
need a CPU to boot it.
I note that I have included ROM. Although we don't really need VGA
graphics hardware, it is necessary to have a VGA/VESA compatible
character mode available at boot. And it is necessary to support
character based output even if a VGA/VESA graphics mode is selected.
The Video BIOS is needed to support this.
My motherboard starts up in graphics mode and displays the Energy-Star
logo. So, it is using a graphics mode.
IAC, if we were going to have VGA hardware, it would be in the Bridge
chip, not in the GPU since it would be read/write from the PC. VGA
hardware could be emulated in software (DOSemu does it) if we used an on
board CPU.
--
JRT
_______________________________________________
Open-graphics mailing list
[email protected]
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)