Browse Prior Art Database

Logarithmic Counter Array With Fast Access

IP.com Disclosure Number: IPCOM000044157D
Original Publication Date: 1984-Nov-01
Included in the Prior Art Database: 2005-Feb-05
Document File: 2 page(s) / 90K

Publishing Venue

IBM

Related People

Vermeulen, JC: AUTHOR

Abstract

In data compression apparatus it is often desirable to make logarithmic sums to compute the probability of correctly predicting a data bit from the preceding history of data bits in the bit stream. Shown herein is a logarithmic counter composed of a random-access memory (RAM) and a programmable logic array (PLA). The data bit history is accumulated as counts in the RAM. The counts are stored as binary words representing the log to the base 2 of each count. The binary words take the form XXX.XXXXX where all eight bits are used to keep a history count but only the most significant five bits are used by the data compression algorithm. Subsequent operations on the counts by the data compression algorithm are much quicker since the counts are stored as log values. In Fig.

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 63% of the total text.

Page 1 of 2

Logarithmic Counter Array With Fast Access

In data compression apparatus it is often desirable to make logarithmic sums to compute the probability of correctly predicting a data bit from the preceding history of data bits in the bit stream. Shown herein is a logarithmic counter composed of a random-access memory (RAM) and a programmable logic array (PLA). The data bit history is accumulated as counts in the RAM. The counts are stored as binary words representing the log to the base 2 of each count. The binary words take the form XXX.XXXXX where all eight bits are used to keep a history count but only the most significant five bits are used by the data compression algorithm. Subsequent operations on the counts by the data compression algorithm are much quicker since the counts are stored as log values. In Fig. 1, RAM 10 is addressed based on the pattern of a predetermined number of prior data bits in the data stream. At that address, there will be a count associated with that pattern. Each time the pattern occurs, the count is incremented by one by PLA 12. PLA 12 also generates the new logarithmic value for the new count and passes the log value of the new count back to the addressed location in RAM 10. PLA 12 might also perform other mathematical operations on the new count, such as a divide by 2. This would depend on the data compression algorithm. In any case after the mathematical operation, the new count is converted to the log value and that value is stored...