An interpolating memory unit for function evaluation: analysis and design
- 1 March 1989
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Computers
- Vol. 38 (3) , 377-384
- https://doi.org/10.1109/12.21124
Abstract
A technique for the evaluation of a general continuous function f(x) is presented, and the design of an interpolating memory as an implementation of the technique is described. The technique partitions the domain of f(x) into segments and defines an interpolating (or approximating) function for each. The implementation is a memory subsystem that holds the parameters of the approximating functions and yields an interpolated function value on each read reference. Polynomial interpolating functions are considered in particular. Hardware requirements (memory and computational logic) are analyzed in terms of the required precision. It is shown that as long as f(x) has d+1 derivatives, where d is the degree of the interpolating polynomial, d+1 additional bits of precision of the computed f(x) are obtained for each additional address bit used in the interpolating memory. This establishes a tradeoff between memory and computational logic, which can be exploited in the design of a unit for a specific function, for any precision requirement. Furthermore, a single unit can be designed for any class of functions that have the required derivatives. Two examples of implementations for particular functions are presented.Keywords
This publication has 13 references indexed in Scilit:
- A Hardwired Generalized Algorithm for Generating the Logarithm Base-k by IterationIEEE Transactions on Computers, 1987
- High-Speed VLSI Multiplication Algorithm with a Redundant Binary Addition TreeIEEE Transactions on Computers, 1985
- Programmable variable-rate up/down counter for generating binary logarithmsIEE Proceedings E Computers and Digital Techniques, 1984
- FOCUS microcomputer number systemCommunications of the ACM, 1979
- High-Speed Monolithic Multipliers for Real-Time Digital Signal ProcessingComputer, 1978
- The Focus Number SystemIEEE Transactions on Computers, 1977
- The Sign/Logarithm Number SystemIEEE Transactions on Computers, 1975
- Multiplication Using Logarithms Implemented with Read-Only MemoryIEEE Transactions on Computers, 1975
- New Algorithms for the Approximate Evaluation in Hardware of Binary Logarithms and Elementary FunctionsIEEE Transactions on Computers, 1972
- Generation of Products and Quotients Using Approximate Binary Logarithms for Digital Filtering ApplicationsIEEE Transactions on Computers, 1970