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:
655 bytes
|
Rev | Line | |
---|
[78] | 1 | #include "../include/Cache_MultiLevel.h" |
---|
| 2 | #include <sstream> |
---|
| 3 | |
---|
| 4 | namespace environnement { |
---|
| 5 | namespace cache { |
---|
| 6 | namespace cache_multilevel { |
---|
| 7 | |
---|
| 8 | uint32_t Cache_MultiLevel::update_access (Access cur_access) |
---|
| 9 | { |
---|
| 10 | if (cur_access.last_nb_level > 0) |
---|
| 11 | { |
---|
| 12 | uint32_t latence = cur_access.latence; |
---|
| 13 | |
---|
| 14 | for (uint32_t it = 0; it <= cur_access.last_nb_level; it ++) |
---|
| 15 | latence = hierarchy_cache [it]->update_latence (cur_access.num_port,latence); |
---|
| 16 | |
---|
| 17 | // if (latence != 0) |
---|
| 18 | // { |
---|
| 19 | // std::cout << "<Cache_MultiLevel::update_access> after all update, latence must be null." << std::endl; |
---|
| 20 | // exit(1); |
---|
| 21 | // } |
---|
| 22 | } |
---|
| 23 | |
---|
| 24 | return cur_access.latence; |
---|
| 25 | } |
---|
| 26 | |
---|
| 27 | }; |
---|
| 28 | }; |
---|
| 29 | }; |
---|
Note: See
TracBrowser
for help on using the repository browser.