pcchen said:What are RISC and CISC, by you definition?
I think RISC/CISC is an ISA thing. That's why we call x86 CISC and MIPS RISC. It is not about implementation.
Now get back to SIMD. You can have stack based SIMD engine, register-memory SIMD engine, and register-register SIMD engine. Also, the ISA of a SIMD engine can be fixed length or variable length. So IMHO MMX and SSE are CISC SIMD since they are variable length and register-memory model, and Altivec is a RISC SIMD.
I wasn't going to get involved in this argument on terms, but there is no reason why a SIMD system can't use either a CISC or RISC approach. SIMD just means you have a lot of processing units that are all executing the same instruction, i.e. they all share the same control unit.rwolf said:Different interface similar instructions.
A VPU SIMD might be designed to handle three vertexes on a polygon, or color operations and address lookup.
They don't have to be same.
An orange is still an orange if you put it in a basket of apples. SIMD is not really RISC and not really CISC. If you were to choose one or the other I would say SIMD is most like RISC, because it has simple instructions.
rwolf said:Different interface similar instructions.
A VPU SIMD might be designed to handle three vertexes on a polygon, or color operations and address lookup.
They don't have to be same.
An orange is still an orange if you put it in a basket of apples. SIMD is not really RISC and not really CISC. If you were to choose one or the other I would say SIMD is most like RISC, because it has simple instructions.
Actually nowadays there isn't much difference. You can pretty much sum it up aspcchen said:What are RISC and CISC, by you definition?
ATI liscensed MIPs in order to incorporate it into this, not for use in high end discreet graphics.rwolf said:If you want my guess about what ATI is using RISC or CISC look at this..
http://www.ati.com/companyinfo/press/1999/4201.html
I don't know about pixel shaders, but I'd say that ATI's Vertex shader is pipelined. Avoiding data dependencies on adjacent instructions seems to make it run faster than having each instruction depend on the previous one. That, to me, indicates some overlap of instruction execution.Squigs said:The main difference I see is that most RISC machines are designed to be pipelined. Pixel shaders are not.
Simon F said:I don't know about pixel shaders, but I'd say that ATI's Vertex shader is pipelined. Avoiding data dependencies on adjacent instructions seems to make it run faster than having each instruction depend on the previous one. That, to me, indicates some overlap of instruction execution.
Mulciber said:ATI liscensed MIPs in order to incorporate it into this, not for use in high end discreet graphics.rwolf said:If you want my guess about what ATI is using RISC or CISC look at this..
http://www.ati.com/companyinfo/press/1999/4201.html
You'd just use a silicon design tool to generate the circuits for you.rwolf said:So if you had to create a floating point unit for a GPU and you had licensed the MIPS core would you write the floating point unit from scratch.
Do they? Doesn't the Nvidia chip run at a much higher clock rate?I bet they used it as a reference point which is why their 24-bit calculations run as fast as Nvidia's 16-bit.
Shader_Implementation = (RISC || CISC || SIMD || VLIW || PIPELINED || MICROCODED);
Nimrod:rwolf said:Kind of pointless isn't it. A bunch of nimrods talking about stuff they have no clue about. (with me at the top of the list).