11.07.2015 Views

Dynamic Shift Registers - Bitsavers - Trailing-Edge

Dynamic Shift Registers - Bitsavers - Trailing-Edge

Dynamic Shift Registers - Bitsavers - Trailing-Edge

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

BriefsJANUARY 1970...aTRIG FUNCTION GENERATORS 0Accuracy is the major design variable of trigonometriclookup tables built with MaS read-onlymemories. Only a few ROMs are needed for mostpractical applications, but accuracy can be madeto increase very rapidly with memory capacity ifinterpolation techniques are used.For instance, without interpolation a single1024-bit ROM can store 128 angular incrementsand generate an 8-bit output that wi II be betterthan 99.9% of the handbook value (Table 1).BINARY DECIMALADDRESS DEGREES OUTPUT SINE0 0 . 00000000 0.0001 0.7 .00000011 0.0122 1.4 . 00000110 0.0233 2.1 .00001001 0.035127 89.3 .11111111 0.996r----;,-,I II II II IIIIITl(a)12-1ITWlRED·OROUTPUTE ~'-' ,-,,-,,~3:oenttlCD~-I....cC'."C:::sn~.o:::sCi)CD:::sCD....m...o....tnTABLE 1. MM422BM/MM522BM Sine Function GeneratorIf one simply cascaded ROMs to improve inputresolution and output accuracy for a high-accuracytrig solution (X=sin 0) as in Figure 1, large numbersof ROMs might be needed. This 24-ROMsystem stores 2048 12-bit values of sin x (or othertrig functions), giving angular resolution of 1 partin 2" (0.05%) and output accuracy of 1 part in2' 2 (0.024%). The system in Figure 2 has thesame resolution and is accurate to the limit of its12 output bits (0.024%), which makes it just asgood. But it only requires four 1024-bit ROMs andthree 4-bit TTL full adders, so it only costs aboutone-fifth as much as the more obvious solution ofFigure 1.~-~-,-----,,.,,,Instead of producing x = sin 0, the Figure 2 systemdivides the angle into two parts and implementsthe equationx = sin 0 = sin (M + L)= sin M cos L + cos M sin LIt can be programmed for any angular range.Assume the range is 0 to 90 degrees and let M bethe 8 most significant bits of 0 and L be the 3 leastsignificant bits of 0 (0 being the 11-bit inputan gu I a r inc r e ments, equal to 90° /2048, or0.044 deg.) as in Table 2.With an 8-bit address, the three 256x4 ROMs willgive the '12-bit value of sin M at increments ofM = 90° /28, or 0.352 deg. The cos L can only varybetween 1 and 0.99998. So we assume cos L=1and store values of sin M at 0.352 deg. resolution(b)FIGURE 1. Conventional 2048-Incremjlnt Sine Table Uses24 ROMsin the top three ROMs, reducing the equation tosin 0 = sin M + cos M sin LValues of the second term are stored in the fourthROM. The maximum value of the second term inth e above equation can only be cos Msin L= 0.00539 where cos Mmax = 1, sin Lmax= 0.00539. This is the maximum value to be addedto sin M above. Only the five least significant bits273

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!