The VHDL standard's float package gets sqrt(2) wrong
|
The IEEE 1076 VHDL standard's float package contains multiple computational errors, including an incorrect result for sqrt(2.0) and failures in other mathematical operations like multiply, divide, and scaling functions. A detailed analysis comparing the package's outputs against exact arithmetic reveals systematic rounding and precision errors across various floating-point operations, with some calls even causing simulators to halt.