Path: utzoo!utgpu!attcan!uunet!lll-winken!lll-tis!ames!vsi1!daver!nscimg!daver From: daver@nscimg.b16.sc.NSC.COM (Dave Rand) Newsgroups: comp.arch Subject: Re: Sw vs. Hw BitBlit. Summary: Real Times! Keywords: BitBlit. Message-ID: <684@nscimg.b16.sc.NSC.COM> Date: 28 Jul 88 21:29:03 GMT References: <399@ma.diab.se> <1313@ucsfcca.ucsf.edu> Organization: Electronic Imaging Group, National Semiconductor, Corp. Lines: 45 In article <1313@ucsfcca.ucsf.edu> root@cca.ucsf.edu (Computer Center) writes: > >Now let's see your software timings for real _bit_blit_ operations >such as moving a block 37 bits wide aligned starting at bit 17 in the >source position and starting at bit 29 in the destination position >on a machine with 32-bit registers and data paths. > >Thos Sumner (thos@cca.ucsf.edu) BITNET: thos@ucsfcca On the NS32CG16 (32 bit CPU, 16 bit external data path), here are the numbers. The source is 3 words (less, really, but that's life in BITBLT). This needs to be moved to 4 (NOT 3) words of destination. The shift is 12. The height is not shown: I assume 32 lines. The times are given in clocks, and MICROseconds, assuming 15 Mhz operation. EXTBLT 35 + ( 13 + (12*4)) * 32 = 1987 clocks, or 132 usecs BBFOR 48 + ( 61 + (4+4) + 25 + 4) * 32 = 3184 clocks, or 212 usecs BBOR 42 + (107 + (4+4) + 44 + 4) * 32 = 5258 clocks, or 350 usecs BBAND 45 + (111 + (4+4) + 44 + 4) * 32 = 5389 clocks, or 359 usecs The EXTBLT instruction in the NS32CG16 drives the DP8510 BITBLT unit. This does the shift and ALU operation in hardware - the CPU provides only the addresses. The BBFOR, BBOR, BBAND (and other BITBLT functions) are implemented in microcode directly. These instructions execute WITHOUT hardware assist of any form. The times shown include the shift of 12 (shifts of 0-8 bits are hidden by the fetch time of the destination data, due to the scheduled load/pipeline feature of the Series 32000 architechure). BBFOR is a "Fast OR", performing a left-to-right BITBLT operation. BBOR, BBAND, EXTBLT and the other BITBLT operations in the NS32CG16 allow a full 4-direction (left-to-right, right-to-left, top down, and bottom up) BITBLT. In moderate quantity, the price is $20-30. If you need more information, please contact me. Dave Rand daver@nscimg.nsc.com {pyramid|sun}!nsc!nscimg!daver These opinions in no way represent those of National Semiconductor.