04-09-2012, 04:05 PM
Floating Point Multipliers: Simulation & Synthesis Using VHDL
Floating Point.ppt (Size: 299.5 KB / Downloads: 33)
Which base do we use?
Decimal: great for humans, especially when doing arithmetic
Hex: if human looking at long strings of binary numbers, its much easier to convert to hex and look 4 bits/symbol
Not good for arithmetic on paper
Binary: what computers use; computers do +, -, *, / using this only
To a computer, numbers always binary
Regardless of how number is written:
32ten == 3210 == 0x20 == 1000002 == 0b100000
Normalization
FP numbers are usually normalized
i.e. exponent is adjusted so that leading bit (MSB) of mantissa is 1
Example - Scientific notation where numbers are normalized to give a single digit before the decimal point
e.g. 3.123 x 103
Because it is always 1, there is no need to store it
FP Rounding
Rounding is important
Small errors can save the huge storage
FP rounding hardware helps
Finally, keep sticky bit that is set whenever ‘1’ bits are “lost” to the right
Differentiates between 0.5 and 0.500000000001
So the rounding can save a huge Memory, of course the price is Accuracy, But that can be paid
VHDL Language
Hardware Description Language (HDL)
High-level language for to model, simulate, and synthesize digital circuits and systems.
History
1980: US Department of Defense Very High Speed Integrated Circuit program (VHSIC)
1987: Institute of Electrical and Electronics Engineers ratifies IEEE Standard 1076 (VHDL’87)
1993: VHDL language was revised and updated
Verilog is the other major HDL
Syntax similar to C language
Terminology
Behavioral modeling
Describes the functionality of a component/system
For the purpose of simulation and synthesis
Structural modeling
A component is described by the interconnection of lower level components/primitives
For the purpose of synthesis and simulation
Synthesis:
Translating the HDL code into a circuit, which is then optimized
Register Transfer Level (RTL):
Type of behavioral model used for instance for synthesis