110152Satgutier@umich.edu-----------------------------------------------------------
210152Satgutier@umich.edu          ____    _    ____ _____ ___    __    ____  
310152Satgutier@umich.edu         / ___|  / \  / ___|_   _|_ _|  / /_  | ___| 
410152Satgutier@umich.edu        | |     / _ \| |     | |  | |  | '_ \ |___ \ 
510152Satgutier@umich.edu        | |___ / ___ \ |___  | |  | |  | (_) | ___) |
610152Satgutier@umich.edu         \____/_/   \_\____| |_| |___|  \___(_)____/ 
710152Satgutier@umich.edu
810152Satgutier@umich.edu
910152Satgutier@umich.edu             A Tool to Model Caches/Memories
1010152Satgutier@umich.edu-----------------------------------------------------------
1110152Satgutier@umich.edu
1210152Satgutier@umich.eduCACTI is an analytical tool that takes a set of cache/memory para-
1310152Satgutier@umich.edumeters as input and calculates its access time, power, cycle 
1410152Satgutier@umich.edutime, and area.
1510152Satgutier@umich.eduCACTI was originally developed by Dr. Jouppi and Dr. Wilton
1610152Satgutier@umich.eduin 1993 and since then it has undergone five major 
1710152Satgutier@umich.edurevisions.
1810152Satgutier@umich.edu
1910152Satgutier@umich.eduList of features (version 1-6.5):
2010152Satgutier@umich.edu===============================
2110152Satgutier@umich.eduThe following is the list of features supported by the tool. 
2210152Satgutier@umich.edu
2310152Satgutier@umich.edu* Power, delay, area, and cycle time model for 
2410152Satgutier@umich.edu                  direct mapped caches
2510152Satgutier@umich.edu                  set-associative caches
2610152Satgutier@umich.edu                  fully associative caches
2710152Satgutier@umich.edu                  Embedded DRAM memories
2810152Satgutier@umich.edu                  Commodity DRAM memories
2910152Satgutier@umich.edu                  
3010152Satgutier@umich.edu* Support for modeling multi-ported uniform cache access (UCA)
3110152Satgutier@umich.edu  and multi-banked, multi-ported non-uniform cache access (NUCA).
3210152Satgutier@umich.edu
3310152Satgutier@umich.edu* Leakage power calculation that also considers the operating
3410152Satgutier@umich.edu  temperature of the cache.
3510152Satgutier@umich.edu  
3610152Satgutier@umich.edu* Router power model.
3710152Satgutier@umich.edu
3810152Satgutier@umich.edu* Interconnect model with different delay, power, and area 
3910152Satgutier@umich.edu  properties including low-swing wire model.
4010152Satgutier@umich.edu
4110152Satgutier@umich.edu* An interface to perform trade-off analysis involving power, delay,
4210152Satgutier@umich.edu  area, and bandwidth.
4310152Satgutier@umich.edu
4410152Satgutier@umich.edu* All process specific values used by the tool are obtained
4510152Satgutier@umich.edu  from ITRS and currently, the tool supports 90nm, 65nm, 45nm, 
4610152Satgutier@umich.edu  and 32nm technology nodes.
4710152Satgutier@umich.edu
4810152Satgutier@umich.eduVersion 6.5 has a new c++ code base and includes numerous bug fixes.
4910152Satgutier@umich.eduCACTI 5.3 and 6.0 activate an entire row of mats to read/write a single
5010152Satgutier@umich.edublock of data. This technique improves reliability at the cost of  
5110152Satgutier@umich.edupower. CACTI 6.5 activates minimum number of mats just enough to retrieve 
5210152Satgutier@umich.edua block to minimize power.
5310152Satgutier@umich.edu
5410152Satgutier@umich.eduHow to use the tool?
5510152Satgutier@umich.edu====================
5610152Satgutier@umich.eduPrior versions of CACTI take input parameters such as cache
5710152Satgutier@umich.edusize and technology node as a set of command line arguments. 
5810152Satgutier@umich.eduTo avoid a long list of command line arguments, 
5910152Satgutier@umich.eduCACTI 6.5 lets users specify their cache model in a more 
6010152Satgutier@umich.edudetailed manner by using a config file (cache.cfg).
6110152Satgutier@umich.edu
6210152Satgutier@umich.edu-> define the cache model using cache.cfg
6310152Satgutier@umich.edu-> run the "cacti" binary <./cacti -infile cache.cfg>
6410152Satgutier@umich.edu
6510152Satgutier@umich.eduCACTI6.5 also provides a command line interface similar to earlier versions
6610152Satgutier@umich.eduof CACTI. The command line interface can be used as
6710152Satgutier@umich.edu
6810152Satgutier@umich.edu./cacti  cache_size line_size associativity rw_ports excl_read_ports excl_write_ports 
6910152Satgutier@umich.edu  single_ended_read_ports search_ports banks tech_node output_width specific_tag tag_width
7010152Satgutier@umich.edu  access_mode cache main_mem obj_func_delay obj_func_dynamic_power obj_func_leakage_power
7110152Satgutier@umich.edu  obj_func_cycle_time obj_func_area dev_func_delay dev_func_dynamic_power dev_func_leakage_power
7210152Satgutier@umich.edu  dev_func_area dev_func_cycle_time ed_ed2_none temp wt data_arr_ram_cell_tech_flavor_in
7310152Satgutier@umich.edu  data_arr_peri_global_tech_flavor_in tag_arr_ram_cell_tech_flavor_in tag_arr_peri_global_tech_flavor_in
7410152Satgutier@umich.edu  interconnect_projection_type_in wire_inside_mat_type_in wire_outside_mat_type_in
7510152Satgutier@umich.edu  REPEATERS_IN_HTREE_SEGMENTS_in VERTICAL_HTREE_WIRES_OVER_THE_ARRAY_in 
7610152Satgutier@umich.edu  BROADCAST_ADDR_DATAIN_OVER_VERTICAL_HTREES_in PAGE_SIZE_BITS_in BURST_LENGTH_in
7710152Satgutier@umich.edu  INTERNAL_PREFETCH_WIDTH_in force_wiretype wiretype force_config ndwl ndbl nspd ndcm 
7810152Satgutier@umich.edu  ndsam1 ndsam2 ecc
7910152Satgutier@umich.edu
8010152Satgutier@umich.eduFor complete documentation of the tool, please refer CACTI-5.3 and 6.0
8110152Satgutier@umich.edutechnical reports and the following paper,
8210152Satgutier@umich.edu"Optimizing NUCA Organizations and Wiring Alternatives for 
8310152Satgutier@umich.eduLarge Caches With CACTI 6.0", that appears in MICRO 2007.
8410152Satgutier@umich.edu
8510152Satgutier@umich.eduWe are still improving the tool and refining the code. If you
8610152Satgutier@umich.eduhave any comments, questions, or suggestions please write to
8710152Satgutier@umich.eduus.
8810152Satgutier@umich.edu
8910152Satgutier@umich.eduNaveen Muralimanohar             Jung Ho Ahn        Sheng Li
9010152Satgutier@umich.edunaveen.muralimanohar@hp.com      gajh@snu.ac.kr     sheng.li@hp.com
9110152Satgutier@umich.edu
9210152Satgutier@umich.edu
9310152Satgutier@umich.edu
9410152Satgutier@umich.edu
95