If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.
![]() |
|
|
#1 |
|
Meh
Join Date: Mar 2004
Location: New York
Posts: 9,809
|
Guys, quick question -
Communication between components running at different clocks/speeds is taken for granted in hardware today. But exactly how does it work. For example, if the ROPs on a GPU are all busy, are the shader pipelines stalled or is there some sort of intermediate buffer ? This is just one example, but is that how it works in general? |
|
|
|
|
|
#2 |
|
Gamerscore Wh...
Join Date: Jan 2002
Posts: 12,956
|
Generally speaking elements have some sort of FIFO's / Buffers inbetween. Should they fill/starve then elements will slow down.
|
|
|
|
|
|
#3 |
|
Meh
Join Date: Mar 2004
Location: New York
Posts: 9,809
|
Thanks Dave.
|
|
|
|
|
|
#4 |
|
Epsilon plus three
Join Date: Feb 2002
Location: Chania
Posts: 7,768
|
I just found out fairly recently that the ROPs on NV40 are running at memory frequency. Is it the same on Radeons?
|
|
|
|
|
|
#5 |
|
Senior Member
Join Date: Feb 2002
Posts: 2,021
|
To expand on Dave's answer. Incorrectly sizing FIFOs can lead to big performance problems or a lot of wasted transistors. A big goal of performance testing is to figure out ideal FIFO sizes.
By this a mean a FIFO that is too small will result in a lot of stalls. In contrast using a 32 deep FIFO when only 8 locations are typically needed is a waste of transistors. |
|
|
|
|
|
#6 |
|
Junior Member
Join Date: Sep 2002
Posts: 55
|
One thing to note is that most of what you've talked about here is not really asynchronous. Rather this is just communication between blocks in the graphics pipeline that take differing numbers of cycles to complete their work.
Most of the time all of the parts of that pipeline run on the same clock ("engine" or "core" clock), so the data passing between them is still synchronous. The FIFOs are there to even out the workflow between blocks. They let the source block continue on with computations and generating data for the next block, until the FIFO is nearly full, and then they provide the destination block with a steady stream of data to work on. Asynchronous communication is trickier. Depending on how much data needs to be send across clock boundaries, you might put all of the actual data into a FIFO that is written with one clock and read with another, while having a parallel set of gray-coded signals communicating that data was added or removed. There is extra delay in this while you make sure everything is synchronized. So most of the time such async boundaries are only used when necessary. You must have one somewhere between the block running on AGP/PCIE clock and the engine clock, and you must have one somewhere in the path between engine clock and external memory clock. |
|
|
|
|
|
#7 | |
|
Meh
Join Date: Mar 2004
Location: New York
Posts: 9,809
|
Quote:
|
|
|
|
|
|
|
#8 | |
|
Senior Member
Join Date: Dec 2003
Posts: 6,201
|
Quote:
__________________
Top one reason why capital punishment is immoral and wrong: You can release an innocently convicted man from jail, but you cannot release an innocently convicted man from death. |
|
|
|
|
|
|
#9 | ||
|
Member
Join Date: Mar 2004
Location: Portugal
Posts: 149
|
Quote:
|
||
|
|
|
|
|
#10 | ||||
|
Junior Member
Join Date: Sep 2002
Posts: 55
|
Quote:
Quote:
|
||||
|
|
|
|
|
#11 | |
|
Join Date: May 2002
Location: New York, NY
Posts: 12,678
|
Quote:
__________________
April 20, 1979 - America must never forget. |
|
|
|
|
![]() |
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Xbox 2 hardware overview leaked? | Bowie | Console Technology | 143 | 25-Jun-2004 18:16 |
| The Way its Meant to be Reviewed? | Dave Baumann | Beyond3D News | 266 | 31-Dec-2003 16:24 |
| 3D Hardware Vendors Key to Microsoft | Dave Baumann | Beyond3D News | 22 | 09-Jun-2003 09:50 |
| Futuremark lied! So dont trust it. | jerry_enCater | 3D Architectures & Chips | 48 | 25-May-2003 09:08 |
| +'s/-'s and feasability of lengthened hardware release cycle | JavaJones | 3D Architectures & Chips | 12 | 09-Mar-2002 16:56 |