Bachelorprojekt - Softwareteknologi | Projekt nr. 0039: Software-kontrollerede caches |
Aktuelle | Tidligere |
Formålet med dette projekt er at undersøge software-kontrollerede caches.
Hukommelseshierarkiet spiller en afgørende rolle for hastigheden af ethvert computersystem. Generelt består hukommelseshierarkiet af et hovedlager og et antal caches. Caches er tradionelt implementeret i hardware og er transperante for processoren og programmøren. Cache-lageret håndteres af en selvstændig controller, der implementerer alle rutiner til opdatering af cachens indhold, således at der fra processorens side opretholdes et billede af en enkelt konsistent hukommelse. Caches kan håndteres på flere måder, men kun en af dem kan understøttes af en hardware-baseret cache-controller. Lægges cache-håndteringen i stedet over i software, er det muligt at have flere forskellige rutiner til håndtering af cache-data. På den måde bliver der mulighed for at vælge en passende håndteringsrutine til en given applikationen. Samtidig er de programstumper, der kræves for at realisere en softwarebaseret løsning, så små, at det samlede systems ydeevne formodentig kun påvirkes i beskedent omfang
Software-kontrollerede caches kræver en grundlæggende hardware-understøttelse for manipulering af cache-data via software. Projektet omfatter derfor både design af hardware-understøttelse af cache-manipulation og software-rutiner til cache-håndtering. Der kan tages udgangspunkt i en eksisterende processorarkitektur, som tilføjes nødvendige interfaces og instruktioner. Dertil designes en tilhørende cache. Projektets indhold og mål er: 1) Litteraturstudium af software-baserede caches. 2) FPGA-implementering af processor og cache, og implementering tilhørende software-rutiner. 3) Evaluering af den implementerede software-kontrollerede cache og af konceptet generelt.
Forudsætninger: | 02155 Computerarkitektur |
Vejleder(e): Jens Sparsø
Sidst opdateret: Oct 31, 2011 af Hans Henrik Løvengreen |