Review Board 2.0.15


mem: model data array bank in classic cache

Review Request #1809 - Created March 31, 2013 and updated

Information
Xiangyu Dong
gem5
default
Reviewers
Default
Changeset 9818:438f37f51ba2
---------------------------
mem: model data array bank in classic cache
The classic cache does not model data array bank, i.e. if a read/write is being
serviced by a cache bank, no other requests should be sent to this bank.
This patch models a multi-bank cache.  Features include:
1. detect if the bank interleave granularity is larger than cache line size
2. add CacheBank debug flag
3. Differentiate read and write latency
3a. read latency is named as read_latency
3b. write latency is named as write_latency
4. Add write_latency, num_banks, bank_itlv_bit into the Python parser
5. Enabling bank model by --l1-bank-model, --l2-bank-model, --l3-bank-model
Not modeled in this patch:
Due to the lack of retry mechanism in the cache master port, the access form
the memory side will not be denied if the bank is in service. Instead, the bank
service time will be extended. This is equivalent to an infinite write buffer
for cache fill operations.

   

Issue Summary

49 0 39 10
Description From Last Updated Status
Review request changed
Updated (Aug. 1, 2013, 12:15 a.m.)

Description:

~  

Changeset 9818:0e146004005e

  ~

Changeset 9818:438f37f51ba2

   
   

mem: model data array bank in classic cache

    The classic cache does not model data array bank, i.e. if a read/write is being
    serviced by a cache bank, no other requests should be sent to this bank.
    This patch models a multi-bank cache. Features include:
    1. detect if the bank interleave granularity is larger than cache line size
    2. add CacheBank debug flag
    3. Differentiate read and write latency
    3a. read latency is named as read_latency
    3b. write latency is named as write_latency
    4. Add write_latency, num_banks, bank_itlv_bit into the Python parser
    5. Enabling bank model by --l1-bank-model, --l2-bank-model, --l3-bank-model
    Not modeled in this patch:
    Due to the lack of retry mechanism in the cache master port, the access form
    the memory side will not be denied if the bank is in service. Instead, the bank
    service time will be extended. This is equivalent to an infinite write buffer
    for cache fill operations.

Diff:

Revision 14 (+293 -31)

Show changes

Ship it!
Posted (Sept. 1, 2013, 6:01 a.m.)
Ship It!
  1. Sorry, I pushed the 'Ship It!' button by mistake. I want to remove this 'Ship it!' post, but I don't know how to remove this. 
  2. What are our chances of getting this in shape again and get some momentum going?