Skip to:Content
|
Bottom
Cover image for Digital computer arithmetic datapath design using verilog hdl
Title:
Digital computer arithmetic datapath design using verilog hdl
Personal Author:
Publication Information:
Dordrecht : Kluwer Academic Publishers, 2004
Physical Description:
1 CD-ROM ; 12 cm
ISBN:
9781402077104
General Note:
Accompanies text with the same title : (TK7868.D5 S74 2004)

Available:*

Library
Item Barcode
Call Number
Material Type
Item Category 1
Status
Searching...
30000010037519 CP 2819 Computer File Accompanies Open Access Book Compact Disc Accompanies Open Access Book
Searching...

On Order

Summary

Summary

The role of arithmetic in datapath design in VLSI design has been increasing in importance over the last several years due to the demand for processors that are smaller, faster, and dissipate less power. Unfortunately, this means that many of these datapaths will be complex both algorithmically and circuit­ wise. As the complexity of the chips increases, less importance will be placed on understanding how a particular arithmetic datapath design is implemented and more importance will be given to when a product will be placed on the market. This is because many tools that are available today, are automated to help the digital system designer maximize their efficiently. Unfortunately, this may lead to problems when implementing particular datapaths. The design of high-performance architectures is becoming more compli­ cated because the level of integration that is capable for many of these chips is in the billions. Many engineers rely heavily on software tools to optimize their work, therefore, as designs are getting more complex less understanding is going into a particular implementation because it can be generated automati­ cally. Although software tools are a highly valuable asset to designer, the value of these tools does not diminish the importance of understanding datapath ele­ ments. Therefore, a digital system designer should be aware of how algorithms can be implemented for datapath elements. Unfortunately, due to the complex­ ity of some of these algorithms, it is sometimes difficult to understand how a particular algorithm is implemented without seeing the actual code.


Table of Contents

Prefacep. ix
1. Motivationp. 1
1.1 Why Use Verilog HDL?p. 1
1.2 What this book is not : Main Objectivep. 2
1.3 Datapath Designp. 3
2. Verilog at the Rtl Levelp. 7
2.1 Abstractionp. 7
2.2 Naming Methodologyp. 10
2.2.1 Gate Instancesp. 11
2.2.2 Netsp. 12
2.2.3 Registersp. 12
2.2.4 Connection Rulesp. 13
2.2.5 Vectorsp. 14
2.2.6 Memoryp. 14
2.2.7 Nested Modulesp. 15
2.3 Force Feeding Verilog : the Test Benchp. 16
2.3.1 Test Benchesp. 18
2.4 Other Odds and Ends within Verilogp. 19
2.4.1 Concatenationp. 19
2.4.2 Replicationp. 21
2.4.3 Writing to Standard Outputp. 21
2.4.4 Stopping a Simulationp. 21
2.5 Timing: For Whom the Bell Tollsp. 22
2.5.1 Delay-based Timingp. 22
2.5.2 Event-Based Timingp. 23
2.6 Synopsys Design Ware Intellectual Property (IP)p. 24
2.7 Verilog 2001p. 24
2.8 Summaryp. 26
3. Additionp. 27
3.1 Half Addersp. 28
3.2 Full Addersp. 28
3.3 Ripple Carry Addersp. 30
3.4 Ripple Carry Adder/Subtractorp. 31
3.4.1 Carry Lookahead Addersp. 34
3.4.1.1 Block Carry Lookahead Generatorsp. 36
3.5 Carry Skip Addersp. 40
3.5.1 Optimizing the Block Size to Reduce Delayp. 42
3.6 Carry Select Addersp. 43
3.6.1 Optimizing the Block Size to Reduce Delayp. 46
3.7 Prefix Additionp. 47
3.8 Summaryp. 52
4. Multiplicationp. 55
4.1 Unsigned Binary Multiplicationp. 56
4.2 Carry-Save Conceptp. 56
4.3 Carry-Save Array Multipliers (CSAM)p. 60
4.4 Tree Multipliersp. 61
4.4.1 Wallace Tree Multipliersp. 61
4.4.2 Dadda Tree Multipliersp. 65
4.4.3 Reduced Area (RA) Multipliersp. 68
4.5 Truncated Multiplicationp. 71
4.6 Two's Complement Multiplicationp. 78
4.7 Signed-Digit Numbersp. 82
4.8 Booth's algorithmp. 86
4.8.1 Bitwise Operatorsp. 87
4.9 Radix-4 Modified Booth Multipliersp. 89
4.9.1 Signed Radix-4 Modified Booth Multiplicationp. 91
4.10 Fractional Multiplicationp. 92
4.11 Summaryp. 93
5. Division Using Recurrencep. 103
5.1 Digit Recurrencep. 104
5.2 Quotient Digit Selectionp. 105
5.2.1 Containment Conditionp. 106
5.2.2 Continuity Conditionp. 106
5.3 On-the-Fly-Conversionp. 108
5.4 Radix 2 Divisionp. 112
5.5 Radix 4 Division with [alpha] = 2 and Non-redundant Residualp. 115
5.5.1 Redundant Adderp. 118
5.6 Radix 4 Division with [alpha] = 2 and Carry-Save Adderp. 119
5.7 Radix 16 Division with Two Radix 4 Overlapped Stagesp. 122
5.8 Summaryp. 126
6. Elementary Functionsp. 129
6.1 Generic Table Lookupp. 131
6.2 Constant Approximationsp. 133
6.3 Piecewise Constant Approximationp. 134
6.4 Linear Approximationsp. 136
6.4.1 Round to Nearest Evenp. 138
6.5 Bipartite Table Methodsp. 141
6.5.1 SBTM and STAMp. 142
6.6 Shift and Add: CORDICp. 147
6.7 Summaryp. 152
7. Division Using Multiplicative-Based Methodsp. 161
7.1 Newton-Raphson Method for Reciprocal Approximationp. 161
7.2 Multiplicative-Divide Using Convergencep. 166
7.3 Summaryp. 168
Referencesp. 171
Indexp. 179
Go to:Top of Page