source: trunk/IPs/systemC/Environnement/Cache/src/Cache_OneLevel_hit_access_port.cpp @ 78

Last change on this file since 78 was 78, checked in by rosiere, 16 years ago

Add :

  • Execute_loop (must be test systemC)
  • Prediction
    • Direction : predifined scheme
    • Branch Target Buffer
  • iFetch_unit
    • ifetch_queue
    • pc management
  • Decod_unit
    • coming soon : support for custom operation
  • Rename_unit
    • RAT
    • Free_list
    • Dependence RAW check
    • Load store unit pointer
  • New Environnement (hierarchy_memory will remove in a next version)


Modif :

  • Manage Custom Operation
  • All component in execute_loop to use the new statistics management

Not Finish :

  • Return Address Stack
  • Environnement
File size: 773 bytes
Line 
1#include "../include/Cache_OneLevel.h"
2
3namespace environnement {
4namespace cache {
5namespace cache_onelevel {
6
7  // return the number of param->associativity if hit
8  // return nb_accosiativity if miss
9  uint32_t Cache_OneLevel::hit_access_port (uint32_t trdid, Address address)
10  {
11    uint32_t it_num_port = 0;
12   
13    // scan all port - test if have a transaction
14    for (it_num_port = 0; it_num_port < param->nb_port; it_num_port ++)
15      if ( (access_port[it_num_port].valid           == true           ) &&
16           (access_port[it_num_port].trdid           == trdid          ) &&
17           (access_port[it_num_port].address.tag     == address.tag    ) &&
18           (access_port[it_num_port].address.familly == address.familly))
19        break;
20   
21    return it_num_port;
22  }
23
24};
25};
26};
Note: See TracBrowser for help on using the repository browser.