• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

Apple Quickdraw 3D Accelerator card

demik

Well-known member
That's interesting, thanks for posting.

Does the 7500 onboard video has Q3D HW capabilities ?
 

stynx

Active member
A bit info about the QD3D card:
released: Nov 1995
40Mhz core-clock
120 KPolygons/s
20 MPixel/s (tested: 11 Mpix/s)
10 MTexel/s (tested: 10 MTex/s)
7 transparency Z-Layer singe-cycle
40 million Z-Layer/s
2 pixel/clock filtering (8x1 trilinear) -> 4-cycle texture filtering
16x1 pixel chunk processing
512 Kib 32 bit wide, 40MHz texture memory (160 Mb/s)
128 Kib 32 bit wide, 40Mhz objekt cache (160 Mb/s)
12 texture @ 128px x 128px, 16 bit (18bit capable but not implemented)
16/24/32 bit output (RGBA)
36 bit RGBA internal datapath
32bit Z-index accuracy
CSG (constructive solid geometry) -> boolean operations on chip possible
Several cards can be used simultaneously to speed up computation.
 

Powerbase

Well-known member
Ooooooo, nice and thank you for the benchmarks. I wish I would have bought one a bit ago (while they were cheap and plentiful). Did you manage to overclock the card (if i'm reading the benchmarks right)?
 

stynx

Active member
Ooooooo, nice and thank you for the benchmarks. I wish I would have bought one a bit ago (while they were cheap and plentiful). Did you manage to overclock the card (if i'm reading the benchmarks right)?
Yes. I overclocked from 40 to 50MHz and then to 54MHz. 54MHz was not stable, though. The SRAM is 15ns and capable of around 45MHz based on specs from the data sheet. One of the two cards I have can only do 44Mhz but the other the aforementionedcard can do 50-54. I think that faster Sram would allow around 60MHz with a heatsink and fan. At 50MHz the chips need a small heatsink to stay cool.

From the QD3D accelerator patents:
The 512K texture memory can be expanded to a 36bit data path since the corresponding pins are still on the ASIC but not connected. A texture would have 18bit (262K colors) instead of 16bit (32K colors). The ASIC may contain additional address lines as well but I am a bit hesitant to modify the cards. The patents describe the texture index to be only 4bit (16 textures) which would make any memory expansion irrelevant. The card can store 12 128x128 textures or 3 256x256 textures with its 512K ram.

An earlier iteration of the card could access 2Mb of Dram as well as 131K cache. The Prototype was described in 1991 patents. It did not have texturing ability at that time. Texturing seems to be a bit of an afterthought and was seemingly quickly implemented. The texturing unit does not support alpha bits or color keying. That means a texture can either be solid or see-through with an alpha-value from the vertex. No fog of effects are supported. it has trilinear filtering, though. The development at Apple began in 1986/87 and resulted in the "White Magic" prototype in 1990/91. This prototype might have used multiple render-pipelines to archive around 880 KPoly/s. This card would most likely have been used in a Quadra 700 with a NuBus Interface. It featured multiple chips per pipeline and most likely ran at 20Mhz. Four chips would make up a pipeline: The command processor, the Z-chip, the RGB-chip and a separate gate-array that processed control-tokens into commands: 4-stages. White Magic was not capable of texturing.

Around 1994 a shift to PCI would have occurred and work on the texturing unit might have started. The codename of this prototype was "Gotham" in 1994/95. It was originally intended to use Dram but the complexity of a dram-controller with caching for the needed speed was too complicated to the short development time. They went with a 512K cache-like ram as a compromise and slashed the memory controller. The limit of 4bit texture-index is described in a 1995 patent as well as a lot of hardware-anomalies found on the QD3D accelerator.

In 1997 the last iteration on the 3D-accelerator was prototyped. This card would have archived 100 MTex/s and 2 MPoly/s with support for up to 64Mb SDRam texture memory per pipeline. 4 pipelines could have been combined with a frontend-processor which would have up to 64Mb of object SDRam available. The frontend-processor would most likely allow triangle setup and some form of T&L (like the GLINT Delta).

Steve Jobs killed all projects that were not directly connected to either computer- or OS development as he was brought back to Apple. The Apple Advanced Technology Group was closed around October 1997. Most of the 3D Developers were already working at their new employers at that time (3Dfx, Bungee, SGI).

All of the stuff I said can be found in SIGGRAPH proceedings and patents.

-Jonas
 

stynx

Active member
Here are some pictures from the SIGGRAPH proceedings (1988, 1995, 1997)
The 1994/95 Gotham-implementation would use a NuBus Mac most likely since the PCI-Interface chip is not shown.
Gotham.png
 

Attachments

  • 1988_Deering.png
    1988_Deering.png
    483.1 KB · Views: 26
  • 1995_QD3D_CSG.png
    1995_QD3D_CSG.png
    319.7 KB · Views: 19
  • QD3D_antialias_1997.png
    QD3D_antialias_1997.png
    187.8 KB · Views: 26
Yes. I overclocked from 40 to 50MHz and then to 54MHz. 54MHz was not stable, though. The SRAM is 15ns and capable of around 45MHz based on specs from the data sheet. One of the two cards I have can only do 44Mhz but the other the aforementionedcard can do 50-54. I think that faster Sram would allow around 60MHz with a heatsink and fan. At 50MHz the chips need a small heatsink to stay cool.

From the QD3D accelerator patents:
The 512K texture memory can be expanded to a 36bit data path since the corresponding pins are still on the ASIC but not connected. A texture would have 18bit (262K colors) instead of 16bit (32K colors). The ASIC may contain additional address lines as well but I am a bit hesitant to modify the cards. The patents describe the texture index to be only 4bit (16 textures) which would make any memory expansion irrelevant. The card can store 12 128x128 textures or 3 256x256 textures with its 512K ram.

An earlier iteration of the card could access 2Mb of Dram as well as 131K cache. The Prototype was described in 1991 patents. It did not have texturing ability at that time. Texturing seems to be a bit of an afterthought and was seemingly quickly implemented. The texturing unit does not support alpha bits or color keying. That means a texture can either be solid or see-through with an alpha-value from the vertex. No fog of effects are supported. it has trilinear filtering, though. The development at Apple began in 1986/87 and resulted in the "White Magic" prototype in 1990/91. This prototype might have used multiple render-pipelines to archive around 880 KPoly/s. This card would most likely have been used in a Quadra 700 with a NuBus Interface. It featured multiple chips per pipeline and most likely ran at 20Mhz. Four chips would make up a pipeline: The command processor, the Z-chip, the RGB-chip and a separate gate-array that processed control-tokens into commands: 4-stages. White Magic was not capable of texturing.

Around 1994 a shift to PCI would have occurred and work on the texturing unit might have started. The codename of this prototype was "Gotham" in 1994/95. It was originally intended to use Dram but the complexity of a dram-controller with caching for the needed speed was too complicated to the short development time. They went with a 512K cache-like ram as a compromise and slashed the memory controller. The limit of 4bit texture-index is described in a 1995 patent as well as a lot of hardware-anomalies found on the QD3D accelerator.

In 1997 the last iteration on the 3D-accelerator was prototyped. This card would have archived 100 MTex/s and 2 MPoly/s with support for up to 64Mb SDRam texture memory per pipeline. 4 pipelines could have been combined with a frontend-processor which would have up to 64Mb of object SDRam available. The frontend-processor would most likely allow triangle setup and some form of T&L (like the GLINT Delta).

Steve Jobs killed all projects that were not directly connected to either computer- or OS development as he was brought back to Apple. The Apple Advanced Technology Group was closed around October 1997. Most of the 3D Developers were already working at their new employers at that time (3Dfx, Bungee, SGI).

All of the stuff I said can be found in SIGGRAPH proceedings and patents.

-Jonas
Can you point me to the PDF from the SIGGRAPH on the accelerator? I remember working from the Tinsel Town spec ages ago, I was always curious on the workings of the QD 3D card.
 
" Most of the 3D Developers were already working at their new employers at that time (3Dfx, Bungee, SGI)."

One of my friends was working at Synopsis at the time on timing and placement of a 3Dfx ASIC... he said there was Apple Verilog code mixed in with the 3Dfx code.. which was later absorbed by nVidia.
 

stynx

Active member
I have posted here as well:
The docs are mostly uploaded there... somewhere ;-)

I have speculated a lot in the logons thread :)

One of my friends was working at Synopsis at the time on timing and placement of a 3Dfx ASIC... he said there was Apple Verilog code mixed in with the 3Dfx code.. which was later absorbed by nVidia.
Stephanie Winner came to 3Dfx in 1997 and may have brought in some Apple knowledge. She worked together with Michael Deering (a 3D pioneer) in the 80s before being hired at Apple. Stephanie Winner is a patent lawyer nowadays and seems to have left 3D stuff behind her.
Apple was pretty far in terms of theoretical 3D development. The engineers were targeting a flexible high performance hardware architectures. The QD3D accelerator is most likely a mid-development offshoot for the "suits" at Apple to continue financing the development.



-Jonas
 

stynx

Active member
There were close ties between Apple and Sun in terms of 3D development. Some employees seem to have wandered between the companies back and forth.

The leading figure from Sun was Michael Deering while the person on Apples side was Michael Kelley.

In a short conversation between me and Stephanie Winner via eMail, she seemed to have mixed the two Michaels together in memory as she was talking about Deering when asked about work at Apple on the QD3D project. Sadly her interest in 3D and the past was very low. She seems to have "moved on".

-Jonas
 
I have posted here as well:
The docs are mostly uploaded there... somewhere ;-)

I have speculated a lot in the logons thread :)


Stephanie Winner came to 3Dfx in 1997 and may have brought in some Apple knowledge. She worked together with Michael Deering (a 3D pioneer) in the 80s before being hired at Apple. Stephanie Winner is a patent lawyer nowadays and seems to have left 3D stuff behind her.
Apple was pretty far in terms of theoretical 3D development. The engineers were targeting a flexible high performance hardware architectures. The QD3D accelerator is most likely a mid-development offshoot for the "suits" at Apple to continue financing the development.



-Jonas

I remember Stephanie, I am pretty sure she was the person at Apple that was sending me the API information on the QD3D interface.
 

stynx

Active member
There are 3 proceedings from siggraph regarding the QD3D accelerator:

"White Magic?":
Michael Kelley, Stephanie Winner, and Kirk Gould
“A Scalable Hardware Render Accelerator using a Modified Scanline Algorithm”
SIGGRAPH Proceedings, pages 241–248, July 1992.

"Gotham":
Michael Kelley, Kirk Gould, Brent Pease, Stephanie Winner, and Alex Yen
“Hardware Accelerated Rendering of CSG and Transparency”
SIGGRAPH Proceedings, pages 177–184, July 1994.

unreleased Prototype:
Stephanie Winner, Mike Kelley, Brent Pease, Bill Rivard, and Alex Yen.
"Hardware Accelerated Rendering Of Antialiasing Using A Modified A-buffer Algorithm"
SIGGRAPH Proceedings, 1997
 

Phipli

Well-known member
Around 1994 a shift to PCI would have occurred and work on the texturing unit might have started. The codename of this prototype was "Gotham" in 1994/95.
The 1994/95 Gotham-implementation would use a NuBus Mac most likely since the PCI-Interface chip is not shown.
There are mentions of Gotham back to 1992, including hints that it was, or was planned to be PCI. Perhaps the slots on the Tesseract were intended to be PCI? The keying looks wrong, but perhaps it was a non-standard connector for PCI.

Crazy thing, but it looks like internally there were PCI Risers for the first gen PPC machines like the 6100 (the 6100 came out of the PDM project. I think it was actually the PDM, with the 7100 and 8100 being derivatives) :
1000017502.jpg
Not texture memory, but I've seen references to double buffering being provided by the HPV (1993) and similar support by the graphics hardware in the 7200 chipset to work with 3D hardware.

Here is the HPV reference to Gotham (1993)
1000017505.jpg

This really is all there is, please don't ask because I've already had to hand paint out the watermark from these images
I don't want to get someone in trouble.

I don't have the 7200 stuff to hand, but it was basically just the same "designed for compatibility" type reference. The document we want, but I haven't found, was called "Gotham Hardware ERS" by K Gould, et al. Dated 1992.
 
Last edited:

Phipli

Well-known member
Tessaract_1992(1).JPG

Tesseract photo for reference (and to confuse the bejesus out of everyone who hasn't seen it before).

The slots just don't look big enough to be PCI and are keyed like dual voltage. I don't believe they are (standard) PCI connectors.

(Yes, that's right, it had dual 601 CPUs)
 
Last edited:

Phipli

Well-known member
Some docs I found online by the same author, but haven't read yet.
 

Attachments

  • ScalableHardwareRenderAccelerator.pdf
    2.4 MB · Views: 4
  • HardwareAccRenderingofCSG&Transparency.pdf
    493.9 KB · Views: 2

Phipli

Well-known member
From one of the previously attached reports (the Scalable Hardware one)...

1712500692143.png

This is interesting. Paper was published in 1992, at which time the Tesseract, PDM and AV macs (660av and 840av) were under development. The implication might be that the underutilised DSP included on the AV macs was actually, whole or in part, intended to contribute towards accelerated 3D performance? Are there any other clues in the architecture? Anything about the video circuit? There is the DAV port - that was used for hardware codec acceleration - could it be used for 3D acceleration? The VRAM was on a 40MHz 32bit bus, compared to the 33 and 40MHz 64bit bus on the HPV cards.

Here again, mentions of a 40MHz 68040 based computer - likely the 840av.

1712501136701.png

Its not fair, I'd love to see a presentation by the original engineers about all this stuff. They spent so long developing it and so little made it to market. I wonder if it was another victim of Copland? Or is it too much to blame this on Copland 😆
 
Top