Back to results
US 6,604,169 B2Granted
Modulo addressing based on absolute offset
AssigneeMicrochip Technology Incorporated
InventorMichael I. Catherwood
Life of this patent
Estimating the term…
Abstract
A hardware based modulo addressing scheme is described that is fast and makes efficient use of logic. The scheme uses a subtractor, multiplexers and AND/OR logic to produce modulo addresses to address, for example, a circular buffer in a memory. The buffer is defined by the user based on start and end addresses and an offset value. The offset may be positive or negative and may be greater than one.
Claims18
A modulo addressing circuit, comprising:
- registers for storing a pointer, an offset, an end address and a start address;
- an adder for determining a sum of the pointer and the offset;
- a subtractor for determining a difference between the pointer value and a selected one of the start and end addresses and producing a carry signal on an overflow;
- OR logic for calculating a logical OR between the difference and the selected address;
- and
- a multiplexer for storing the logical OR into the pointer when a carry signal indicates an overflow out of the end address.
3 more elements
A method of generating modulo addresses, comprising:
- calculating a sum of a current address and an offset;
- subtracting a start address from the sum to determine a difference and a carry;
- generating a logical OR between the difference and the start address;
- and
- selecting either the sum or the logical OR generated as a new current address based on the carry.
2 more elements
A method of generating modulo addresses, comprising:
- calculating a sum of a current address and an offset;
- subtracting an end address from the sum to determine a difference and a carry;
- generating a logical AND between the difference and the end address;
- and
- selecting either the sum or the logical AND generated as a new current address based on the carry.
2 more elements
Dependencies are inferred from the claim text.