KarbosGuide.dk. Modul 5a2.

Om I/O-enheder, indstikskort mv. (fortsat)


  • Om elektronikken
  • IRQ'er

  • Nęste side
  • Forrige side

  • Om elektronikken

    Selve adapteren er et printkort. På undersiden ses en kant-connector, der skaber kontakten til pc'en. Kant-connectoren passer ned i en slot på bundkortet. Slottene er adgangsveje til I/O-busserne. Et bundkort har tre typer slots, da det har tre I/O-busser:

  • ISA-slots (fx 2 stk)
  • PCI-slots (fx 4 stk)
  • AGP-slot (kun 1 stk)

    Typisk er der 7 udvidelsessokler på et almindeligt bundkort. I hver af disse sokler kan der monteres én adapter. Printkortet mases simpelthen ned i soklen, hvorefter dets kantconnectorer forbinder det til bussen.

    Herunder ses etnetkort.Det er et ethernet-kort med PCI-interface, så det passer i en PCI-slot på en pentium-maskinen. Kortet (der koster 198,00) gør, at pc'en kan forbindes med andre pc'er, bare de også har netkort monteret.

    Herunder ses et udsnit af et bundkort med fire PCI-sokler:


    IRQ'er

    Når du monterer et indstikskort i en slot, så bliver kortet forbundet til I/O-bussen. Det betyder, at data kan løbe til og fra kortet. Men hvordan reguleres trafikken? Hvem fortæller, at nu må netkortet aflevere sine data? Der kan hurtigt blive trafikkaos på busserne, skulle man synes.

    For at styre trafikken på I/O-busserne, har man indført begrebet IRQ. Det står for Interrupt Request,og det betyder noget i retning afanmodning om afbrydelse . Interrupts er et bærende princip i PC-opbygningen, og der findes to typer interrupts: Software-interrupts bruges til at kalde en lang række BIOS-rutiner. Hardware-interrupts, som er emnet her.

    Hardware-interrupts

    Interrupt-signalet bruges af adapteren eller enheden på I/O-bussen til at bede om at få ordet, om at få lov til at afbryde. Et interrupt-signal er som en dørklokke. Signalet består i, at enheden sætter spænding på en af lederne i bussen - en IRQ. Når CPU'en registrerer signalet, ved den at enheden gerne vil hente eller aflevere data, eller er færdig med det.

    Fordelen med IRQ'ere er, at CPU'en kan arbejde videre med andre opgaver, mens en adapter "fordøjer" de data, den skal tage sig af. Når adapteren er færdig med arbejdet, melder den det til CPU'en med et nyt IRQ-signal.

    Lad os som eksempel se tastaturet afsende sine data. Bitsene afsendes serielt fra tastaturet igennem kablet. Bitsene modtages af en tastatur-controller, som samler dem i portioner af 8 (én byte). Hver gang, den har en byte, afsender den et IRQ-signal til I/O-bussen. Det behandles af IRQ-controlleren, som får tilladelse af CPU'en til at benytte bussen. IRQ-controlleren melder tilbage til tastatur-controlleren, at nu er der fri bane, og så afsendes tegnet (byten):


    Printbaner

    Rent fysisk består en IRQ af en printbane på bussen. Printbanen forbinder alle udvidelsesslot på bundkortet, så uanset i hvilken af dem, du monterer et kort, så får kortet kontakt med IRQ'en. pc'en er født med 15 IRQ'er, men fem af dem er interne og kan ikke bruges af I/O-kort. På I/O-busserne finder vi i alt 10 tilgængelige IRQ'er. Hver af dem består i en printbane, der går gennem hele bussen. Når du monterer et udvidelseskort i en af de ledige slots, så tildeles det én af IRQ'erne.

    Når der kommer et signal på én af IRQ-kanalerne, er det en melding til CPU'en. Den får at vide, at nu er der en enhed, der vil på bussen. Hvilken enhed, det er - det afhænger af IRQ-nummeret.

    Herefter får enheden lov til at gå på bussen og hente eller sende sine data. Når handlingen er udført, afsender den et nyt IRQ-signal, som tegn til CPU'en om at nu er bussen fri. IRQ'erne har forskellig prioritet, så CPU'en ved, hvilken IRQ der har fortrin, hvis to signaler sættes samtidigt.

    IRQ-systemet styres af en controller chip som Intel 8259. Den kan håndtere 8 IRQ-signaler, og derfor kobles to af dem sammen (via IRQ 2 og 9). Alle pc'er med ISA-bus rummer altså to 8259-chips.


    MSD (Microsoft Diagnose System)

    Lad mig vise et billede fra diagnostic-programmet MSD (som du kan "køre" under Windows 95). Det viser fordelingen af IRQ'ere på en PC:

    MSD viser fordelingen af IRQ'er på den pc, programmet kører på. Der er 15 IRQ-kanaler i alt. Hver IRQ kan tildeles én enhed. Det er dog ikke altid muligt at udnytte IRQ 9 (den fungerer som en slags bro mellem to afdelinger i IRQ-systemet).

    I billedet herover kan man se, at IRQ nummer 5, 10, 11, 12 og 15 ser ud til at være ledige.

    På IRQ nummer 2 og 9 ses kædningen mellem de to IRQ-controllere.

    Nogle IRQ'er er reserveret til forskellige interne enheder, der også skal kunne afbryde CPU'en. Det er IRQ-numrene 0, 1, 2, 8 og 13, som du kan se det i figuren herover. De kan ikke benyttes til andre enheder. Alle de andre er i princippet tilgængelige for indstikskort og EIDE-enheder.

    Ved pc'ens opstart tildeles IRQ'er. Et ISA-indstikskort booker sig altså på én bestemt IRQ, hver gang pc'en startes. Den IRQ benyttes, hvergang enheden går på bussen.


  • Nęste side
  • Forrige side


    Lær mere

    Karbosguide.dk fortsættes i Modul 5b.

    Læs også om SCSI, USB og FireWire i modul 5c


    Copyright (c) 1996-2011 by Michael B. Karbo.