Claims
- 1. A method of operating a circuit, comprising the steps of:
(A) generating a particular policy of a plurality of policies by a lookup operation on a first transaction request received by said circuit; (B) generating a second transaction request for use by a memory external to said circuit based upon said first transaction request and said particular policy in response to a first cache signal of said first transaction request having a non-cacheable state; and (C) searching a plurality of address tags for cache data cached within said circuit for a match with said first transaction request in response to said first cache signal having a cacheable state.
- 2. The method according to claim 1, wherein step (A) further comprises the sub-step of:
masking an address of said first transaction request with a mask field prior to searching each of said policies.
- 3. The method according to claim 2, wherein step (A) further comprises the sub-step of:
generating said particular policy by prioritizing said matches by a number of bits of said address tags matching said address of said first transaction request.
- 4. The method according to claim 1, further comprising the step of:
generating a second cache signal for said second transaction request from said particular policy, said second cache signal comprising a caching state and a non-caching state for data of said second transaction request.
- 5. The method according to claim 1, further comprising the step of:
generating a buffer signal for said second transaction request from said particular policy, said buffer signal comprising a buffering state and non-buffering state for data of said second transaction request.
- 6. The method according to claim 1, further comprising the step of:
transferring write data of said first transaction request to said second transaction request in response to said particular policy having a write-thru condition.
- 7. The method according to claim 1, further comprising the step of:
caching write data of said first transaction request in said circuit in response to said particular policy having a write-allocate condition.
- 8. The method according to claim 7, wherein caching said write data is in further response to said particular policy having a burst condition and said transaction request being a burst write request.
- 9. A circuit comprising:
a cache block configured to store a plurality of address tags and cache data; and a control block configured to (i) generate a particular policy of a plurality of policies by a lookup operation on a first transaction request, (ii) generate a second transaction request based upon said first transaction request and said particular policy in response to a first cache signal of said first transaction request having a non-cacheable state and (iii) search said address tags for a match with said first transaction request in response to said first cache signal having a cacheable state.
- 10. The circuit according to claim 9, wherein said control block comprises:
a ternary content addressable memory configured to store said policies under software control.
- 11. The circuit according to claim 9, wherein each of said policies is allocated to a range of addresses.
- 12. The circuit according to claim 11, wherein at least two of said range of addresses have different sizes.
- 13. The circuit according to claim 9, wherein said cache block comprises:
a first memory configured to store said cache data.
- 14. The circuit according to claim 13, wherein said cache block further comprises:
a second memory having a line width greater than said data memory and configured to store an associative set of said cache data.
- 15. The circuit according to claim 9, further comprising:
an interface block configured to communicate at a plurality of bus interfaces to receive said first transaction request.
- 16. An apparatus comprising:
means for generating a particular policy of a plurality of policies by a lookup operation on a first transaction request received by said circuit; means for generating a second transaction request for use by a memory external to said circuit based upon said first transaction request and said particular policy in response to a first cache signal of said first transaction request having a non-cacheable state; and means for searching a plurality of address tags for cache data cached within said circuit for a match with said first transaction request in response to said first cache signal having a cacheable state.
- 17. A circuit comprising:
a plurality of first line buffers configured to communicate on a plurality of first busses; an arbiter performing an arbitration among said fist line buffers; and a cache block configured to (i) determine a particular policy of a plurality of policies in response to a first transaction request from one of said first line buffers winning said arbitration and (ii) generate a second transaction request based upon said first transaction request and said particular policy.
- 18. The circuit according to claim 17, wherein said cache block comprises:
a ternary content addressable memory configured to generate said particular policy in response to an address of said first transaction request.
- 19. The circuit according to claim 17, further comprising:
a second line buffer configured to transfer said second transaction request to a second bus.
- 20. The circuit according to claim 17, further comprising:
a controller block for a memory configured to respond to said second transaction request.
- 21. The circuit according to claim 17, wherein at least two of said first busses have different bus protocols.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] The present application relates to co-pending applications (i) Ser. No. 10/262,180 filed Oct. 1, 2002, (ii) Ser. No. 10/323,521 filed Dec. 18, 2002 and (iii) Ser. No. 10/325,383 filed Dec. 20, 2002 which are hereby incorporated by reference in their entirety.