Browse Prior Art Database

16-Bit Floating Point Math in an 8-Bit Microprocessor

IP.com Disclosure Number: IPCOM000037303D
Original Publication Date: 1989-Dec-01
Included in the Prior Art Database: 2005-Jan-29
Document File: 2 page(s) / 42K

Publishing Venue

IBM

Related People

Makowicki, RP: AUTHOR

Abstract

Disclosed is a program that performs 16-bit floating point mathematical operations with a signed 8-bit exponent in an 8-bit microprocessor. By using the processor's 8-bit arithmetic commands and providing proper carry propagation, rounding, normalization, shifting, truncation and exponent adjustment, a processor's data width is expanded allowing increased bit-width operations.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 61% of the total text.

Page 1 of 2

16-Bit Floating Point Math in an 8-Bit Microprocessor

Disclosed is a program that performs 16-bit floating point mathematical operations with a signed 8-bit exponent in an 8-bit microprocessor. By using the processor's 8-bit arithmetic commands and providing proper carry propagation, rounding, normalization, shifting, truncation and exponent adjustment, a processor's data width is expanded allowing increased bit-width operations.

By making the four basic math operations, (Multiply, Divide, Add, Subtract), independent of each other, additional math functions are added. With the basic operations independent, additional functions like Natural Log and Square Root are added by utilizing the basic operations in series expansion equations or Newton-Raphson functions, for example.

The mathematical operations are performed on data with a 16-bit mantissa and 8-bit signed exponent. Normalization is used prior to rounding or truncation to prevent loss of data bits. Rounding is used to maintain necessary system accuracy. Truncation is necessary to contain the results in 16-bits after some operations (e.g., multiplication). Prior to or after each operation, the data is normalized and exponents aligned if necessary. By normalizing the 32-bit product or 17-bit sum, the least number of truncated/rounded bits are lost. The shifting operation is taken care of by adjusting the exponent appropriately up or down. The truncated bits are used in the rounding scheme before they are lost....