Hey everyone,
After thinking a little bit more about the NV30 pipeline organization, I came up with the following:
A little "simplification" I added is that I check for COL - in practice, I'd guess it's a separate value determined by the driver.
Also, I'm not sure about the organization of register combiners and stuff, but you get the point hopefully.
What I mean by FP32 Part 1 and FP32 Part 2 is simple: Both units got sufficent silicon to do the work of one TMU, but got *part* of the required additionnal silicon for being able to do a FP32 operation, and both parts are complementary.
Another explanation is that they're the same units, and that both can do TMU work in 1 cycle or FP32/FP16 work in 2 cycles. I don't find it as logical though, because it would seem to complicate matters needlessly ( although you've got the advantage of having less different type of units to bugfix / optimize... )
So, what do you think? It's obviously not perfect, and maybe even very wrong, but still, it does look quite good to me
Uttar
After thinking a little bit more about the NV30 pipeline organization, I came up with the following:
A little "simplification" I added is that I check for COL - in practice, I'd guess it's a separate value determined by the driver.
Also, I'm not sure about the organization of register combiners and stuff, but you get the point hopefully.
What I mean by FP32 Part 1 and FP32 Part 2 is simple: Both units got sufficent silicon to do the work of one TMU, but got *part* of the required additionnal silicon for being able to do a FP32 operation, and both parts are complementary.
Another explanation is that they're the same units, and that both can do TMU work in 1 cycle or FP32/FP16 work in 2 cycles. I don't find it as logical though, because it would seem to complicate matters needlessly ( although you've got the advantage of having less different type of units to bugfix / optimize... )
So, what do you think? It's obviously not perfect, and maybe even very wrong, but still, it does look quite good to me
Uttar