Cursus Computerarchitectuur: processors, geheugen en prestaties

Gratis online cursus · Gemiddeld · 6 lessen

Bestudeer de grens tussen hardware en software: prestaties, digitale logica, de RISC-V-instructieset en assembleertaal, rekenen met computers, datapad en pipelining, caches en virtueel geheugen, en parallelle processors. Daarna kun je uitleggen en inschatten hoe code op echte hardware draait.

Door Studeli

Begin met les 1

Is deze cursus Computerarchitectuur iets voor jou?

Voor wie

Je weet op conceptueel niveau hoe computers werken, kunt een beetje programmeren en wilt begrijpen hoe instructies, processors en geheugensystemen zijn opgebouwd en waarom de prestaties van software daarvan afhangen.

Wat je leert in 6 lessen

Elke les bevat alle negen studietools

  • Leermodule
  • Samenvatting
  • Walkthroughs
  • Oefenvragen
  • Flashcards
  • Leg Het Uit
  • Kernbegrippen
  • Spiekbriefje
  • Conceptmap
  1. Leg de abstractielagen van applicaties tot transistors uit en meet prestaties met uitvoeringstijd, cycli per instructie (CPI), klokfrequentie en de wet van Amdahl.

    5 leerdoelen
    1. 1.Beschrijf de lagen van een computersysteem en de interface tussen hardware en software
    2. 2.Definieer en meet computerprestaties
    3. 3.Voorspel de uitvoeringstijd met de CPU-prestatieformule
    4. 4.Gebruik de wet van Amdahl om de winst van een verbetering te schatten
    5. 5.Leg de vermogensgrens en de overstap naar multicoreprocessors uit
  2. Lees en schrijf eenvoudige RISC-V-assembleertaal, en leg uit hoe instructies, registers, geheugenadressering en procedureaanroepen code in een hogere programmeertaal implementeren.

    6 leerdoelen
    1. 1.Beschrijf hoe instructies, registers en geheugenoperanden werken
    2. 2.Voer berekeningen en vergelijkingen uit en stuur het programmaverloop
    3. 3.Codeer en decodeer RISC-V-machine-instructies
    4. 4.Implementeer procedureaanroepen met registers en de stack
    5. 5.Volg een programma van broncode tot een actief proces
    6. 6.Vergelijk RISC- en CISC-instructiesetontwerpen
  3. Leg uit hoe hardware gehele getallen optelt, aftrekt, vermenigvuldigt en deelt, hoe die overloop detecteert en hoe die drijvendekommagetallen voorstelt en afrondt.

    5 leerdoelen
    1. 1.Tel gehele getallen op, trek ze af en detecteer overloop
    2. 2.Ontwerp een rekenkundig-logische eenheid
    3. 3.Vermenigvuldig en deel gehele getallen met hardware
    4. 4.Stel reële getallen voor als IEEE 754-drijvendekommagetallen
    5. 5.Reken met drijvendekommagetallen en rond ze af
  4. Volg instructies door een datapad dat elke instructie in één klokcyclus uitvoert en door een datapad met pipelining, en leg uit hoe conflicten worden afgehandeld met forwarding, wachtcycli en sprongvoorspelling.

    5 leerdoelen
    1. 1.Bouw een datapad dat elke instructie in één klokcyclus uitvoert
    2. 2.Ontwerp de besturingseenheid voor de processor die elke instructie in één klokcyclus uitvoert
    3. 3.Pas pipelining toe op het datapad
    4. 4.Detecteer dataconflicten en los ze op
    5. 5.Handel besturingsconflicten af en voorspel sprongen
  5. Leg uit hoe caches lokaliteit benutten, bereken trefkansen en de gemiddelde geheugentoegangstijd, en beschrijf hoe virtueel geheugen en TLB's in de hiërarchie passen.

    6 leerdoelen
    1. 1.Leg uit waarom computers een geheugenhiërarchie gebruiken
    2. 2.Zoek gegevens in direct afgebeelde en set-associatieve caches
    3. 3.Leg cachemissers en schrijfstrategieën uit
    4. 4.Bereken cacheprestaties
    5. 5.Leg uit hoe virtueel geheugen en TLB's in de geheugenhiërarchie passen
    6. 6.Schrijf programma's die rekening houden met de cache
  6. Vergelijk parallellisme op instructie-, data- en threadniveau en leg uit hoe multicoreprocessors, GPU's en clusters werk verdelen en het geheugen coherent houden.

    5 leerdoelen
    1. 1.Leg uit waar parallellisme vandaan komt en hoe parallelle hardware wordt ingedeeld
    2. 2.Voorspel en meet de grenzen van de parallelle versnellingsfactor
    3. 3.Benut dataparallellisme met SIMD, vectorprocessors en GPU's
    4. 4.Deel geheugen tussen processorkernen en houd caches coherent
    5. 5.Leg uit hoe clusters en computers op datacenterschaal werk verdelen via netwerken

Wat je hierna kunt volgen

Meer cursussen Informatica
Informatica: hoe computers, data, algoritmen en internet werken (Beginner)

Je wilt een brede, conceptuele eerste kennismaking met informatica (hoe computers, data, algoritmen, het internet en AI werken), vóór of naast je eerste programmeercursus.

Maak je eigen Studiemateriaal

Maak van je aantekeningen, slides en documenten Leermodules, Oefenvragen, Flashcards en 6 andere tools.

Aan de slag