# US 5,710,905 A · Cache controller for a non-symetric cache system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 5,710,905 A
- Document ID: US5710905A
- Status: Granted
- Kind: A
- Application number: 08/575,985
- Filed: 1995-12-21
- Granted: 1998-01-20
- Earliest claimed: 1995-12-21
- Assignees: Cypress Semiconductor Corporation
- Inventors: Ricky Wan
- Web page: https://patentgrep.com/patent/US5710905A

## CPC

- G06F 12/0864: using pseudo-associative means, e.g. set-associative or hashing
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A cache controller includes a hit determination circuit that is adapted to handle a non-symmetric cache. This hit determination circuit includes symmetric match circuit having a first input port for receiving addresses from a host processor bus and a second input port for receiving a tag entry from a cache tag memory. The symmetric match circuit compares the address to the tag entry and generates a symmetric match signal when there is a match between the address and the tag entry. A non-symmetric circuit that includes a first input port for receiving an address from the host processor bus and a second input port for receiving a predetermined pattern of bits is also provided. The non-symmetric match circuit generates a non-symmetric match signal when the address matches the predetermined pattern. A hit signal generator that is coupled to the symmetric match circuit and a non-symmetric match circuit generates a hit signal which indicates whether or not the current address is stored in the cache memory.

## Claims

### Claim 1

A cache controller, comprising:
a symmetric match circuit configured to compare a cache tag address with an address received on a host bus;
a non-symmetric match circuit configured to compare a predetermined non-cacheable address with said address received on the host bus; and
a hit signal generator coupled to said symmetric match circuit and said non-symmetric match circuit and configured to generate a hit signal when said cache tag address matches said address received on the host bus and said predetermined non-cacheable address does not match said address received on the host bus.

### Claim 2 (depends on 1)

A cache controller as in claim 1, wherein said symmetric match circuit comprises a comparator.

### Claim 3 (depends on 2)

A cache controller as in claim 2, wherein said non-symmetric match circuit comprises a comparator.

### Claim 4 (depends on 2)

A cache controller as in claim 2, wherein said predetermined non-cacheable address is provided by a configuration register of a computer system which includes said cache controller.

### Claim 5 (depends on 4)

A cache controller as in claim 4, wherein said non-symmetric match circuit further comprises a comparator configured to compare said address received from said host bus to a tag address received from a tag memory associated with said non-symmetric match circuit.

### Claim 6 (depends on 5)

A cache controller as in claim 5, wherein said non-symmetric match circuit further comprises a non-symmetric match signal generator configured to generate a non-symmetric match signal when said address received from said host bus does not match said predetermined non-cacheable address.

### Claim 7 (depends on 6)

A cache controller as in claim 6, wherein said non-symmetric match signal generator comprises an AND gate.

### Claim 8

A cache memory system, comprising:
a cache data memory having at least two cache banks of different sizes;
a cache tag memory organized so as to include tag memories for each of the cache banks of the cache data memory; and
a cache controller coupled to said cache tag memory and said cache data memory and including symmetric match logic and non-symmetric match logic, the symmetric match logic for comparing an address received on a host bus with tag addresses from at first of said tag memories and non-symmetric match logic for comparing the address received on the host bus with tag addresses from a second of said tag memories and a predetermined pattern representing non-cacheable addresses within a cache bank of said cache data memory corresponding to said second tag memory.

### Claim 9 (depends on 8)

A cache memory system as in claim 8 wherein said symmetric match logic comprises a comparator.

### Claim 10 (depends on 9)

A cache memory system as in claim 9 wherein said non-symmetric match logic comprises a symmetric match circuit for comparing the address received on the host bus with tag addresses from said second tag memory and a comparator for comparing said predetermined pattern with the address received on the host bus.

### Claim 11 (depends on 10)

A cache memory system as in claim 10 further comprising a hit signal generator configured to generate a hit signal indicating that an address is contained in said cache tag memory when the address received on the host bus matches an address contained in said cache tag memory and does not match said predetermined pattern.

### Claim 12

A method of generating a cache hit signal in a non-symmetric cache system, comprising the steps of:
receiving an address on a host bus;
comparing said address on said host bus to a cache tag address;
comparing said address on said host bus to a predetermined patterned representing non-cacheable addresses; and
generating a hit signal if said address on said host bus matches said cache tag address and does not match said predetermined pattern.
