Path: utzoo!mnetor!uunet!lll-winken!lll-tis!ames!mailrus!umix!nancy!eecae!super.upenn.edu!rutgers!bellcore!faline!thumper!ulysses!terminus!rolls!mtuxo!mtgzz!dam From: dam@mtgzz.UUCP (XMRN40000[kvm]-d.a.morano) Newsgroups: comp.arch Subject: Re: Cache Terminology? Message-ID: <3797@mtgzz.UUCP> Date: 31 Mar 88 16:36:11 GMT References: <3298@sequent.UUCP> Organization: AT&T, Middletown NJ Lines: 34 Keywords: cache, set Summary: set has 2 blocks in 2-way set-associate In article <3298@sequent.UUCP>, niven@sequent.UUCP (Kevin Joyce) writes: > > It Has Come To My Attention That There Are Two Quite Different Definitions > For The Word Set In Cache Architecture Circles. For Simplicity Assume A Two- > Way Set Associative Architecture. Also Assume Block Size And Line Size Are The I have always used the definition that in the example of a 2-way set associate cache, that there are 2 blocks in every set and that the total number of sets is equal to half of the total number of blocks in the entire cache. A 4-way set associative cache would have 4 blocks in every set, etc. Also, a 2-way set associative cache would consists of two "groups", 4-way would have 4 groups, etc. The entries in a group would consist of one block from each set in the cache. The amount of associative parallelism (number of tag comparators) is directly related to the number of groups in the cache which is equal to the number of blocks in a set. Sets can be numbered from the top starting at 0. The set number is in fact usually the hardware address used to access the blocks in that set. Groups can also be numbered (ie: group0, and group1 for 2-way) but this numbering is usually not as useful or meaningful in the hardware as the set number. This definition seemed to be the one of choice, if not the only definition, in the literature before approximately 1982. Since then, caches have become much more common in microprocessor based computers and it seems that the definition of a set has also become much more ambiguous. Also, in the last few years, the term "line" has become much more common but can usually be assumed to refer to a cache block. In the last few years, I have had to pick up the various cache definitions of the speaker dynamically from the context of any discussion on caches. Given a vote, I prefer Kevin's former definition as I have also stated above. This seems to be the more traditional/historical definition. Dave Morano AT&T