Patent ID: 6922711

Claim:
An approximate calculator for calculating an approximate value of a non-linear function log (e a +e b ) using input data a and b, comprising: selector means for selecting larger one max (a, b) from said input data a and b; decoder means for outputting m-bit data (m is a natural number) that represents a value corresponding to a slope of a coordinate straight line and outputting intercept data of said coordinate straight line based on an absolute value |a−b| of difference (a−b) of said input data a and b, said coordinate straight line interpolating a non-linear function Y=log (1+e −x ) for an interval that includes said absolute value |a−b| as an X-value and having a slope of 2 n (n is an integer), said intercept data representing Y-intercept of said coordinate straight line; shifter means for shifting said absolute value |a−b| by |n| bits based on said m-bit data and outputting resultant data as first term data of an approximate value of a non-linear function log (1+e −|a−b| ); approximation output means for generating and outputting said approximate value of said non-linear function log (1+e −|a−b| ) based on said first term data and said intercept data; and adder means for generating sum of a value of said larger one max (a, b) of said input data a and b and said approximate value of said non-linear function log (1+e −|a−b| ) and outputting the generated sum as said approximate value of said non-linear function log (e a +e b ).