From: Westermann Fu <wes...@gm...> - 2010-02-24 05:06:23
|
Hi, friends: Sorry for my junior level question first, but I don't know where I can get it been answered. I have post it to dri-devel list but nobody seems interested, so I hope anyone here can help me. As I know, DMA/CommandParser can provide asynchronous execuation of graphics commands with CPU execution, and the direct I/O of course is synchronous with instructions executed on CPU, but what is here 'synchronous' means? I take an example of direct I/O triangle setting for 3D engine to render triangle (3 vertexes) as the below piece of code: /* ** set graphics contexts */ /* ** using direct I/O to write 3 vertex data to 3D engine ** register for rendering a triangle, assume the vertex data ** only contain position (x,y,z,w) */ movl vtx.pos.1, VP_register movl vtx.pos.2, VP_register movl vtx.pos.3, VP_register does 'synchronous' mean CPU won't finish the last one 'MOV' instruction until the 3D engine finish rendering this triangle (finishing all TnL, rasterization and pixel processing to framebuffer)? Or my understanding is wrong? Thanks very much. Regards |