SCPCD 0 Report post Posted August 12, 2007 Now the OP ! first test with a standard 16-bit and not scaled object : E : write back of the previous obj. the time between the last pixel phrase read and the write back completion is 5 cycles. This Followed by the 2 phrase of obj type 1 with one read each 2 cycles The time between last obj phrase and the first pixel phrase is 5 cycles then the OP read pixels : We can see the 2 first phrase read very close I have not yet a real explication about that. (maybe a pipelining effect ?) then 3 cycles between A and B. followed by all other pixel phrase with a rate of 3 cycles. then a 16-bit RMW and not scaled object : E : write back of the previous obj. the time between the last pixel phrase read and the write back completion is 5 cycles. This Followed by the 2 phrase of obj type 1 with one read each 2 cycles. The time between last obj phrase and the first pixel phrase is 5 cycles then the OP read pixels : 5 cycles between A and B. followed by all other pixel phrase with a rate of 4 cycles. Note : Transparent or not, CRY or RGB, it's the same result for timing. Quote Share this post Link to post Share on other sites
SebRmv 2 Report post Posted August 13, 2007 very interesting SCPCD! Quote Share this post Link to post Share on other sites
SCPCD 0 Report post Posted April 19, 2011 New Benchmarks about the OP : (cycles are count from the GPU Clock (@26.59MHz) ECPUCLK = 68k clock (@26.59MHz/2) 16-bit Unscaled {Normal, Transparent or Reflect} Bitmap List Structure : Object Address : Branch 1 : $3000 Branch 2 : $3008 Bitmap : $3010 Stop : $3030 Bitmap : Addr : $4518 Width : 68pix of 16-bit= 17 phrases Timing diagram : A : Branch 1 B : Branch 2 C : Bitmap D : Data Bitmap E : Write Back Bitmap F : Stop Object Cycles informations : A -> B = 4cycles B -> C = 4cycles C -> D = 7cycles first 2 phrase bitmap data read : D -> D' = 2cycles next bitmap data read : D' -> D" = 3cycles last bitmap data read : D"' -> E = 5cycles E -> F = 2cycles Stop length : F -> F' = 4cycles Bitmap data total time : D -> E = D->D' + 15*(D'->D") + D"'->E = 2 + 15*3 + 5 = 52cycles Total time : A->F' = A->B + B->C + C->D + D->E + E->F + F->F' = 4 + 4 + 7 + 52 + 2 + 4 = 73cycles 16-bit Unscaled RMW {Normal, Transparent or Reflect} Bitmap List Structure : Object Address : Branch 1 : $3000 Branch 2 : $3008 Bitmap : $3010 Stop : $3030 Bitmap : Addr : $4518 Width : 68pix of 16-bit= 17 phrases RMW Timing diagram : A : Branch 1 B : Branch 2 C : Bitmap D : Data Bitmap E : Write Back Bitmap F : Stop Object Cycles informations : A -> B = 4cycles B -> C = 4cycles C -> D = 7cycles first 2 phrase bitmap data read : D -> D' = 2cycles next bitmap data read : D' -> D" = 5cycles then bitmap data read : D" -> D"' = 4cycles last bitmap data read : D"" -> E = 5cycles E -> F = 2cycles Stop length : F -> F' = 4cycles Bitmap data total time : D -> E = D->D' + D'->D" + 14*(D"->D"') + D""->E = 2 + 5 + 14*4 + 5 = 68cycles Total time : A->F' = A->B + B->C + C->D + D->E + E->F + F->F' = 4 + 4 + 7 + 68 + 2 + 4 = 89cycles 16-bit Scaledx1 {Normal, Transparent or Reflect} Bitmap List Structure : Object Address : Branch 1 : $3010 Branch 2 : $3018 Bitmap : $3020 Stop : $3048 Bitmap : Addr : $4520 Width : 68pix of 16-bit= 17 phrases Zoom : x1 Timing diagram : A : Branch 1 B : Branch 2 C : Bitmap D : Data Bitmap E : Write Back Bitmap F : Stop Object Cycles informations : A -> B = 4cycles B -> C = 4cycles C -> D = 10cycles first 2 phrase bitmap data read : D -> D' = 2cycles next bitmap data read : D' -> D" = 5cycles then bitmap data read : D" -> D"' = 4cycles last bitmap data read : D"" -> E = 5cycles E -> F = 4cycles Stop length : F -> F' = 4cycles Bitmap data total time : D -> E = D->D' + D'->D" + 14*(D"->D"') + D""->E = 2 + 5 + 14*4 + 5 = 68cycles Total time : A->F' = A->B + B->C + C->D + D->E + E->F + F->F' = 4 + 4 + 10 + 68 + 4 + 4 = 94cycles 16-bit Scaledx2 {Normal, Transparent or Reflect} Bitmap List Structure : Object Address : Branch 1 : $3010 Branch 2 : $3018 Bitmap : $3020 Stop : $3048 Bitmap : Addr : $4520 Width : 32pix of 16-bit= 8 phrases Zoom : x2 Timing diagram : A : Branch 1 B : Branch 2 C : Bitmap D : Data Bitmap E : Write Back Bitmap F : Stop Object Cycles informations : A -> B = 4cycles B -> C = 4cycles C -> D = 10cycles first 2 phrase bitmap data read : D -> D' = 2cycles next bitmap data read : D' -> D" = 9cycles then bitmap data read : D" -> D"' = 8cycles last bitmap data read : D"" -> E = 5cycles E -> F = 4cycles Stop length : F -> F' = 10cycles Bitmap data total time : D -> E = D->D' + D'->D" + 14*(D"->D"') + D""->E = 2 + 9 + 5*8 + 5 = 56cycles Total time : A->F' = A->B + B->C + C->D + D->E + E->F + F->F' = 4 + 4 + 10 + 56 + 4 + 10 = 88cycles 16-bit Scaledx3 {Normal, Transparent or Reflect} Bitmap List Structure : Object Address : Branch 1 : $3010 Branch 2 : $3018 Bitmap : $3020 Stop : $3048 Bitmap : Addr : $4520 Width : 32pix of 16-bit= 8 phrases Zoom : x3 Timing diagram : A : Branch 1 B : Branch 2 C : Bitmap D : Data Bitmap E : Write Back Bitmap F : Stop Object Cycles informations : A -> B = 4cycles B -> C = 4cycles C -> D = 10cycles first 2 phrase bitmap data read : D -> D' = 2cycles next bitmap data read : D' -> D" = 13cycles then bitmap data read : D" -> D"' = 12cycles last bitmap data read : D"" -> E = 5cycles E -> F = 4cycles Stop length : F -> F' = 14cycles Bitmap data total time : D -> E = D->D' + D'->D" + 14*(D"->D"') + D"'->E = 2 + 13 + 5*12 + 5 = 80cycles Total time : A->F' = A->B + B->C + C->D + D->E + E->F + F->F' = 4 + 4 + 10 + 80 + 4 + 14 = 116cycles 16-bit Scaledx2 RMW {Normal, Transparent or Reflect} Bitmap List Structure : Object Address : Branch 1 : $3010 Branch 2 : $3018 Bitmap : $3020 Stop : $3048 Bitmap : Addr : $4520 Width : 32pix of 16-bit= 8 phrases Zoom : x2 RMW Timing diagram : A : Branch 1 B : Branch 2 C : Bitmap D : Data Bitmap E : Write Back Bitmap F : Stop Object Cycles informations : A -> B = 4cycles B -> C = 4cycles C -> D = 10cycles first 2 phrase bitmap data read : D -> D' = 2cycles next bitmap data read : D' -> D" = 17cycles then bitmap data read : D" -> D"' = 16cycles last bitmap data read : D"" -> E = 5cycles E -> F = 4cycles Stop length : F -> F' = 26cycles Bitmap data total time : D -> E = D->D' + D'->D" + 14*(D"->D"') + D"'->E = 2 + 17 + 5*16 + 5 = 104cycles Total time : A->F' = A->B + B->C + C->D + D->E + E->F + F->F' = 4 + 4 + 10 + 104 + 4 + 26 = 152cycles Refresh during line drawing Timing diagram : A : Start B : End Cycles informations : A -> B = 39cycles Result on a 16-bit Scaledx2 Bitmap of 320pix List Structure : Object Address : Branch 1 : $3010 Branch 2 : $3018 Bitmap : $3020 Stop : $3048 Bitmap : Addr : $4520 Width : 320pix of 16-bit= 80 phrases Zoom : x2 Timing diagram : A : Branch 1 B : Branch 2 C : Bitmap D : Data Bitmap E : Write Back Bitmap F : Stop Object Cycles informations : A -> B = 4cycles B -> C = 4cycles C -> D = 10cycles first 2 phrase bitmap data read : D -> D' = 2cycles next bitmap data read : D' -> D" = 9cycles then bitmap data read : D" -> D"' = 8cycles bitmap to refresh : 2cycles refresh : 39cycles last bitmap data read : D"" -> E = 5cycles E -> F = 4cycles Stop length : F -> F' = 10cycles Bitmap data total time : D -> E = D->D' + D'->D" + (54*(D"->D"') + refresh + ) + D""->E = 2 + 9 + (54*8 + 2 + 39 + 22*8) + 5 = 665cycles Total time : A->F' = A->B + B->C + C->D + D->E + E->F + F->F' = 4 + 4 + 10 + 665 + 4 + 10 = 697cycles Quote Share this post Link to post Share on other sites
Zerosquare 10 Report post Posted April 19, 2011 Wow ! Nice work ! Quote Share this post Link to post Share on other sites
ggn 1 Report post Posted April 19, 2011 SCPCD wins the OP Quote Share this post Link to post Share on other sites