System-on-a-chip with soft cache and systems and methods using the same
First Claim
Patent Images
1. A soft cache system performing the operations of:
- comparing tag bits of a virtual address with tag bits programmed in a plurality of register entries, each entry associated with an index to a cache line of programmable cache line size in virtual cache space, the virtual cache space location programmed by a block address portion of the virtual address;
when the tag bits of the virtual address match the tag bits of one of the programmable register entries, selecting the index corresponding to said entry for generating a physical address; and
generating the physical address using the selected index as an offset to the cache line and the block address from the virtual memory as an address to the virtual cache space.
1 Assignment
0 Petitions
Accused Products
Abstract
A soft cache system compares tag bits of a virtual address with tag fields of a plurality of soft cache register entries, each entry associated with an index to a corresponding cache line in virtual memory. A cache line size for the cache line is programmable. When the tag bits of the virtual address match the tag field of one of the soft cache entries, the index from that entry is selected for generating a physical address. The physical address is generated using the selected index as an offset to a corresponding soft cache space in memory.
-
Citations
21 Claims
-
1. A soft cache system performing the operations of:
-
comparing tag bits of a virtual address with tag bits programmed in a plurality of register entries, each entry associated with an index to a cache line of programmable cache line size in virtual cache space, the virtual cache space location programmed by a block address portion of the virtual address;
when the tag bits of the virtual address match the tag bits of one of the programmable register entries, selecting the index corresponding to said entry for generating a physical address; and
generating the physical address using the selected index as an offset to the cache line and the block address from the virtual memory as an address to the virtual cache space. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of data caching comprising the steps of:
-
setting up an M-way set associative cache comprising a register having M number of corresponding entries each storing a tag value and indexed to a cache line in a selected cache area in memory;
setting a cache line size for the cache lines, the cache tag value selected as a function of the selected cache line size;
generating a virtual address including a tag field, a cache line address field addressing locations within the cache line size and a block address field addressing the cache area in memory;
comparing the tag field of the virtual address with the tag values in the cache; and
when the tag field of the virtual address matches a tag value in the cache, generating a physical address to the corresponding cache line with the index associated with the register entry containing the matching tag value and the cache line and block address fields from the virtual address. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A system comprising:
-
a central processing unit;
a memory including a soft cache space, and a soft cache system for accessing data in the soft cache space in response to addresses from the central processing unit including;
a register having a plurality of entries each for storing a cache tag and indexed to a cache line in the soft cache space, the cache line having a programmable cache line size;
a plurality of comparators for comparing a tag field of an address from the central processing unit with cache tags stored in each of the entries of the register; and
circuitry for a generating an address to the soft cache space when the tag field matches a tag value in the register using the index associated with the entry storing the matching cache tag and selected bits from the address from the central processing unit addressing the soft cache space. - View Dependent Claims (18, 19, 20, 21)
-
Specification