Please enable JavaScript.
Coggle requires JavaScript to display documents.
Comp Org: Caches (FUNCTIONS (utilityFunctions (getTag(addr), getIndx(addr)…
Comp Org: Caches
FUNCTIONS
getBlock(ID,addr)
- if (val == -1)
blkNum = set->nxtBlock
call updateNxtBlk(ID,addr)
check if current data in that block is dirty
- if (dirty)
* store block into write_buff
* call cache2mem
call mem2cache(ID, addr, blkNum)
return blkNum
-
-
-
nxtInSet(ID, addr)
- set->nxtBlk = set->nxtBlk + 1
- if(set->nxtBlk >= SET_ASS)
mem2cache(ID,addr,blkNum)
- go to block aligned address and write data into cache
cache2mem()
- write contents of write_buff to block aligned address
-
-
-
PIPELINE INTERFACE
mem2pipe(ID,addr)
blkNum = getBlock(ID,addr)
-
-
pipe2mem(addr,word)
-
-
- if(writeback)
- if(wrtiethrough)
blkNum = getBlock(ID,addr)