This section assumes that you currently have a copy of NT / Linux HASE with the Dinero project loaded and built. If this is not the case, please follow the guidelines in the Guide to Use section of this website.
Each tutorial is designed to be used in conjunction with reading the descriptive text on this page. Furthermore, the tutorials are designed to be run in sequential order as each builds on concepts previously introduced.
There are 14 tutorials available in HASE Dinero, each of which can be run by using the following set of instructions:
You are now ready to view the tutorial. The recommended way of doing this is to click on the yellow button of the Animation window showing a '1' over the top left-hand corner of a page. This instructs HASE to playback one simulation time unit. Note that the tutorial can be paused in the middle of animation by clicking on the pause button. Alternatively, clicking on the play button will cause the animation to run until simulation completion.
The main benefit of using HASE Dinero in tutorial mode is the descriptive text, shown at the bottom of the HASE screen, which indicates what is currently happening in the simulation.
All of the tutorials require one or more of the following screens to be open:
![]() |
Unified Cache Contents |
![]() |
Data Cache Contents |
![]() |
Instruction Cache Contents |
![]() |
Prefetch Buffer |
![]() |
Victim Cache |
To open one of the cache contents windows, right click on the Cache Memory entity (in the main window) and select View->Desired Cache Contents from the ensuing pop-up menu. Note that the resulting window can be resized and moved to suit.
To open the prefetch buffer or victim cache windows, right click on the Cache Control Unit (in the main window) and select View->Prefetch Buffer (or Victim Cache) from the ensuing pop-up menu. Note that the resulting window can be resized and moved to suit.
For an explanation of the contents of the Cache Contents windows, click here.
For an explanation of the contents of the Prefetch Buffer or Victim Cache windows, click here.
It is essential that you gain an understanding of how CPU addresses are used to determine where data can be stored in a cache BEFORE running any of the HASE Dinero tutorials. For an explanation of this process, click here.
The following tutorials are available:
![]() |
Tutorial 1: A Direct-Mapped Cache | ||
![]() |
Tutorial 2: A Set-Associative Cache | ||
![]() |
Tutorial 3: A Fully-Associative Cache | ||
![]() |
Tutorial
4: The Benefit of Increased Block Size
|
||
![]() |
Tutorial 5: The Operation of a Split Instruction / Data Cache | ||
![]() |
Tutorial 6: A Demonstration of LRU Replacement | ||
![]() |
Tutorial 7: A Demonstration of FIFO Replacement | ||
![]() |
Tutorial 8: A Demonstration of Random Replacement | ||
![]() |
Tutorial 9: The Copy-Back Write Policy | ||
![]() |
Tutorial 10: The Write-Through, Write Policy | ||
![]() |
Tutorial 11: The Write-Through, No-Write Policy | ||
![]() |
Tutorial 12: The Always-Prefetch Fetch Policy | ||
![]() |
Tutorial 13: The Miss-Prefetch Policy | ||
![]() |
Tutorial 14: The Benefit of a Victim Cache |