In this project, we try to implement a unique way to "compute the nth root of a 16-bit binary number". In order to simplify arithmetic computations, we use logarithmic techniques. The basic advantage behind using logarithm is that multiplication and division can be simplified to the level of addition and subtraction respectively, and power and root problems can be simplified to the level of multiplication and division respectively. Logarithmic simplicity is the reason for performing root operations using base 2 logarithms, which can be approximately calculated from the number itself by shifting and counting. Even though the circuit employs a simple and fast way to generate logarithms and anti-logarithms, their use is restricted to applications where a small error can be tolerated.
The final goal of the project is to successfully simulate all the blocks of the circuit in both Verilog XL and SpectreS, design the layout for all the blocks using the techniques for layout of advanced and complex CMOS digital logic circuits, integrate the various blocks; perform final tape-out of the chip and send it for fabrication. |