7 superak - Streszczenie Architektura komputerów PDF

Title 7 superak - Streszczenie Architektura komputerów
Course Architektura komputerów
Institution Politechnika Bialostocka
Pages 20
File Size 702.7 KB
File Type PDF
Total Downloads 100
Total Views 124

Summary

Na egzmain opracowanie...


Description

/* Odpowiedziwrzucamypododpowiednimpytaniem Adampytania15 Jakub610+27 Bartek1118 Weronika19n  https://www.youtube.com/watch?v=wj4rWBYdSAM&spfreload=10 https://www.youtube.com/watch?v=WjrqpJQBKCQ  */ 1.Budowakomputera Komputerskładasięzjednostkicentralnej,urządzeńwe/wyorazpamięcigłównej, komunikującychsięzesobązapomocąpołączeńsystemowych Jednostkacentralnaskładasięzjednostkisterującej,jednostkiarytmetycznologicznej (ALU)irejestrów,połączonychzesobąmagistraląwewnętrznąCPU. Jednostkasterującaskładasięzukładówlogicznychszeregowaniaipamięci sterującej,komunikującychsięzesobązużyciemrejestrówidekoderówjednostkisterującej. //wykład1,slajdy2729  2.Oczymświadczypołączeniemiędzywe/wyaprocesorze[modułDMA] //pytaniejestdośćdziwne,więcopróczDMAdorzuciłemjeszcze2rzeczy 2a.DMA Połączeniepomiędzymodułemwejścia/wyjściaaprocesoremświadczyoistnieniu modułuDMA[DirectMemoryAccess].Pozwalaonnawykonanieoperacjiznanejjako bezpośrednidostępdopamięci.Wtakimprzypadkuprocesorprzekazujemodułowi wejściawyjściaprawodoodczytywanialubzapisywaniarozkazówwpamięci,dziękiczemu przesyłaniedanychmiędzywejściemwyjściemapamięciąmożenastępowaćbez angażowaniaprocesora.Podczastakiegoprzesyłaniamodułwejściawyjściaodczytujelub zapisujerozkazywpamięci,uwalniającprocesorododpowiedzialnościzatęwymianę. //Stallings,strona87[stronawksiążce,niePDF] 2b.Modułwejścia/wyjścia Modułwejściawyjścianiejestpoprostuzłączemmechanicznymsłużącymdo połączeniaurządzeniazmagistraląsystemową.Zawieraonpewną„inteligencję",toznaczy układylogiczneumożliwiającekomunikacjęmiędzyurządzeniemperyferyjnymamagistralą. Powody,dlaktórychniełączysięurządzeńperyferyjnychbezpośredniozmagistralą:  Urządzeniaperyferyjnewykorzystujączęstoinneformatydanychidługościsłowaniż komputery,doktórychsądołączone.  Istniejeznacznaróżnorodnośćurządzeńperyferyjnych,różniącychsięsposobem pracy.Byłobyniepraktycznewbudowywanieniezbędnychukładówlogicznychdo procesorawceluumożliwieniasterowaniatakszerokimzakresemurządzeń.  Szybkośćtransferu(przesyłania)danychdo/zurządzeńperyferyjnychjestowiele mniejszaniżwprzypadkupamięciczyprocesora.Jestwięcniepraktyczne

wykorzystywanieszybkiejmagistralisystemowejdobezpośredniegokomunikowania sięzurządzeniamiperyferyjnymi 2c.Urządzeniaperyferyjne Urządzeniezewnętrznepołączonezmodułemwejściawyjściajestczęstookreślane jakourządzenieperyferyjne.Możemysklasyfikowaćurządzeniazewnętrznenatrzykategorie:  Przeznaczonedoodczytywaniaprzezczłowieka.Odpowiedniedokomunikowaniasię zużytkownikiemkomputera.  Przeznaczonedoodczytywaniaprzezmaszyną.Odpowiedniedokomunikowaniasię zesprzętem.  Komunikacyjne.Odpowiedniedokomunikowaniasięzodległymiurządzeniami. //2bi2c>Stallings,strona218  3.Czterypodstawowefunkcjekomputera  przetwarzaniedanych(dataprocessing)  przechowywaniedanych(datastorage)  przenoszenieiduplikowaniedanych(datamovement)  sterowanie(control) //wykład1,slajd24  4.Grafstanówprocesora(gdziemożenastąpićprzerwaniewcykluprocesora)?

 Przerwaniewmożenastąpić(zostaćzgłoszone)wdowolnymmomenciecyklu procesora.Obsłużenieprzerwaniazależnejestodsposoburozwiązańprzerwań wielokrotnych.  Przerwaniezablokowane(ang.disabledinterrupf)oznaczapoprostu,żeprocesor zignorujesygnałżądaniaprzerwania.Jeśliżądanieprzerwanianastąpiwtymwłaśnie czasie,naogółpozostajeonozawieszoneizostaniewykryteprzezprocesor,jeśli uzyskaonzezwolenienaprzerwanie.Jeżelijestwięcwykonywanyprogramużytkowyi

następujeprzerwanie,tonatychmiastuniemożliwianesąinneprzerwania.Kiedy programobsługiprzerwańkończydziałanie,przerwaniastająsiędozwolonejeszcze przedwznowieniemprogramuużytkowego,aprocesorsprawdza,czywystąpiły dodatkoweprzerwania.Rozwiązanietojestprzyjemneiproste,jeśliprzerwaniasą realizowanewporządkuściślesekwencyjnym  Przerwaniawielokrotnejeśliprzerwaniewystąpiło,towzależnościodswojego priorytetuzostajeobsłużonenakońcucyklulubnie(przykładponiżej) //Stallingsokoliceod84do86  5.Dlaczegoprzerwaniejestsprawdzanenakońcucyklu?Metodyadresowaniaw procesorze?Odczytywanie,wystawienieadresunaukładkontroliprzerwań (magistrali?)  5a.Dlaczegoprzerwaniejestsprawdzanenakońcucyklu? Popierwsze,ponieważwykonanieoperacjiprzerwaniawtrakciewykonywaniacyklu rozkazumogłobyskutkowaćniepoprawnymjegowykonaniem. Podrugie,przerwaniejestsprawdzanenakońcucyklucelemobsługiprzerwań wielokrotnych,wtymobsługiprzerwańowyższympriorytecie.Przykładowo,przyjmijmyiż procesorrozpoczynaprzetwarzanieprzerwaniawłaśniezgłoszonegoprzezdrukarkę.Po chwilinastępujeprzerwaniewywołaneprzezsterownikłączakomunikacyjnego.Wtakim przypadku,jeślipierwszaporcjadanychniezostałabyprzetworzonaprzedprzybyciem następnej,danemogłybyzostaćutracone,zatemtoprzerwaniemawyższypriorytetniż przerwaniezgłoszoneprzezdrukarkę.Programobsługiprzerwańdrukarkiulegaprzerwaniu, standanychjestkierowanynastos,poczymnastępujewykonanieprogramuobsługi przerwańłączakomunikacyjnego.Podczasrealizacjitegoprogramunastępujeprzerwanie wywołaneprzezpamięćdyskową.Ponieważtonoweprzerwaniemaniższypriorytet,jestpo prostuzatrzymywane, aprogramobsługiprzerwańłączakomunikacyjnegojestnadalwykonywany,aż dozakończenia. //Stallings,strony8486[stronywksiążce,niekoniecznieodpowiadajątymzPDF] 5b.Metodyadresowaniawprocesorze EA=rzeczywisty(efektywny)adreslokacjizawierającejodniesionyargument A=zawartośćpolaadresowegowrozkazie,





Krótkoipoludzkuokażdymrodzajuadresowania:  natychmiastowewrozkaziezawartyjestargument;definiowanieiustalaniestałych, doustalaniapoczątkowychwartościzmiennych  bezpośredniepoleadresowezawieraefektywnyadresargumentu;wymagatylko1 odniesieniadopamięcii0obliczeń  pośredniepoleadresoweodnosisiędosłowawpamięci,którezkoleizawiera pełnejdługościadresargumentu;przydługościsłowaNdostępnajestprzestrzeń adresowa2^n/Wadąjestto,żewykonanierozkazuwymagadwóchodniesieńdo pamięciwcelupobraniaargumentu:jednegodootrzymaniaadresu,adrugiegodo uzyskaniasamejwartości.  rejestrowepoleadresoweodnosisiędorejestruzamiastdoadresuwpamięci głównej,Poleadresoweodnoszącesiędorejestrówmazwykle3lub4bity,wobec tegomożesięodwoływaćdo8lub16rejestrówroboczych.Zaletąadresowania rejestrowegojestto,że(1)wrozkaziepotrzebnejesttylkoniewielkiepoleadresowe, oraz(2)niesąwymaganeodniesieniadopamięci.Wadąadresowaniarejestrowego jestbardzoograniczonaprzestrzeńadresowa.  rejestrowepośredniePodobniejakadresowanierejestrowejestanalogicznedo adresowaniabezpośredniego,takpośrednieadresowanierejestrowejestanalogiczne doadresowaniapośredniego.Zaletyiograniczeniapośredniegoadresowania rejestrowegosąwzasadzietakiesame,jakadresowaniapośredniego.  zprzesunięciemwymagadwóchpóladresowychwrozkazie,przyczym przynajmniejjednoznichjestjawne.Wartośćzawartawjednympoluadresowym (wartośćrównaA)jestużywanabezpośrednio.Drugiepoleadresowe,lubodniesienie domyślneopartenakodzieoperacji,odnosisiędorejestru,któregozawartośćpo dodaniudoAdajeadresefektywny.  5c.Odczytywanie,wystawienieadresunaukładkontroliprzerwań(magistrali?)  Niestetyniemampojęcia,ocochodzinieznalazłemtegowStallingsie:3grupy>czymsięróżnią? //wykład13slajdy47 a)Przerwania ● powstająpozaprocesorem ● asynchronicznewzględemwykonywanegostrumieniainstrukcji.Ichwystąpienienie jestwynikiemwykonaniakonkretnejinstrukcji ● służądosygnalizacjizdarzeńdlasystemuoperacyjnego. ○ Sygnalizujązmianękontekstuurządzeńzewnętrznych(np.wciśnięcieklawisza, przesunięciemyszy,nadejściepakietuzsieci,zakończenietransmisjido pamięcimasowej). ○ Sygnalizująrównieżupłynięcieokreślonegoodcinkaczasu.Budzenieprocesów ookreślonymczasie.PrzełączanieprocesówprzezTimerwsystemach wieloprocesorowych. 

b)Pułapki ● generowaneprzezprocesor ● synchronicznewzględemstrumieniainstrukcji:wywoływaneprzezkonkretnąinstrukcję ● rodzaje ○ wywoływanieusługisystemuoperacyjnegoprzezprogramużytkowy ○ sygnalizacjabłędówwykonaniawykrytychprzezprogramużytkowydosystemu operacyjnego ○ pułapkaśledzenia(tracetrap)wygenerowanapowykonaniudowolnej instrukcjiprzyustawionymtrybieśledzenia  c)Błędy ● generowanenaogółprzezprocesor ● wynikajązwykonywanychinstrukcji,aleniezawszewsposóbjednoznaczny ● służądosygnalizacjibłędnychiniedozwolonychzachowańoprogramowaniaisprzętu takichjak ○ próbawykonanianiezdefiniowanejinstrukcji ○ błądwyrównaniaprzydostępiedopamięci ○ naruszeniezasadochronyprocesoralubpamięci ● wykorzystywanedoimplementacjisystemupamięciwirtualnej   7.Doczego/dlaczegoużywasięprzerwańprogramowychisprzętowych? //wikipedia Przerwaniasprzętowe ● Zewnętrznewykorzystujesiędourządzeńwymagającychobsługiprocesoranp. wejścia/wyjścia(klawiatura),czymodułDMA. ● Wewnętrznezgłaszaneprzezprocesordosygnalizacjisytuacjiwyjątkowych.Dzielą sięna ○ niepowodzeniainstrukcjapowodujebłąd.Procesorpowracadowykonywania koduwykonującjeszczeraztęsamąinstrukcję ○ pułapkisytuacja,któraniejestbłędem.Manaceluwykonanieokreślonego kodu,wykorzystywanenp.wdebugerach ○ nienaprawialnebłędyktórychniemożnanaprawić  Przerwaniaprogramowe Wykorzystywanedokomunikacjizsystememoperacyjnym,zkoduprogramuwywoływana jestproceduraobsługiprzerwania  8.Sytuacjawyjątkowa[asynch]apułapka[synch]względemwykonywanegocyklu instrukcji  9.BudowaCPU //wykład1slajd28.Niewiem,czytutajteżliczysięrysunekjednostkisterującej.

  10.Jednostkacentralna:czemusłuży,wykonanieinstrukcjiprocesora JednostkacentralnatoCPU,rysunekpowyżej. Procesorpobierainstrukcjezpamięci,interpretujejeiwykonujejakorozkazy. …wykonywanieinstrukcji?   11.ArchitekturyHarvard,vonNeumann:różnice,umiećwskazać[napodstawie rysunku],któraarch.zostałaprzedstawiona[odnoszeniesiędopodst.cech architektury] źródło:Wiki,wykładyzWDI,wykładnr1  ● ArchitekturaHarvard:

○  ○ pamięćrozkazówoddzielnaodpamięcidanych

○ wstosunkudovonNeumannaprostszabudowa=większawydajność ○ jednoczesnydostępdopamięciinstrukcjiidanychskracatocyklrozkazowy ○ pamięćprogramutylkodoodczytubrakmożliwościprogramowania ● ArchitekturavonNeumanna(Princeton):



○ ○ pamięćzłożonazpewnejliczbyponumerowanychkomórekprocesorodnosi siędonichpodającichnumer(adres) ○ instrukcjepobieranezkolejnychkomórekpamięci,którychadresjest przechowywanyiinkrementowanywprocesorze(rejestPCprogramcounter) ○ vonNeumannbottleneckniemożnajednocześniepobieraćinstrukcjiidanych ○ możliwośćprogramowania ● ArchitekturaHarvardPrinceton:

○  ○ połączeniepowyższychrozwiązań:oddzielnewyższewarstwyhierarchii pamięci,wspólneniższe. ○ przynajmniejjedenpoziomcacheoddzielnydlainstrukcjiidanych ○ większośćodwołańdopamięcirealizowanawgórnychwarstwachszybkie działanie,dziękizastosowaniurozwiązaniajakwHarvard ○ wspólnadolnawarstwaumożliwiazapisprogramuprogramowanie  12.KlasyfikacjaSkillicorna źródłogłówniewykładnr1 ● TaksonomiaSkillicornajestabstrakcyjnaniemabezpośredniegoodwzorowaniaw fizycznejbudowiekomputera. ● opisujekomputerjakozestawskładników: ○ procesoryinstrukcjiIPpobierająianalizująinstrukcje ○ procesorydanychDPwykonująoperacjenadanych ○ pamięćinstrukcjiIM ○ pamięćdanychDMprzechowujedaneargumentyoperacjiiwyniki

● Procesorybezelementówpamiętających,każdymaprzypisanąjednąhierarchię pamięci(IPIM,DPDM) ● 1lubNprocesorówdanych;0,1lubNprocesorówinstrukcji ● Możliwepołączenia: ○ procesorpamięć ○ IPDP ○ procesoryjednegorodzajumiędzysobą

● maszynaVonNeumannawtaksonomiiSkillicorna ● 6z30możliwychmodelimapraktyczneznaczenie: ○ uniprocesorVonNeumanna(SISDsingleinstruction,singledatastream) ○ uniprocesordataflow(instrukcjepodawanewstrumieniudanych) ○ wieloprocesordataflow ○ procesorwektorowy(SIMDsingleinstruction,multipledata) ○ wieloprocesorsłabosprzężony(MIMD) ○ wieloprocesorsilniesprzężony(MIMD) ● niemasensusprzęgaćprocesorówinstrukcji





 13.Kiedymówimyoseparacjipierwszego/drugiegopoziomucache?[jakwielemają proc.?] //…możetuktośpodpowie?inclusive/exclusivecache? 

14.ISA,IAS:celstworzenia,modelprogramowymikroprocesora[trybinstrukcji wewn.,rejestry,instrukcje,trybyadresowania],elementynieuwidocznione[znaczniki] wmodeluprogramowym. źródła:Wiki,wykład2.oraz3. ISA(ang.instructionsetarchitecture)czylimodelprogramowyprocesorazestaw zasobówlogicznychkomputera,widocznyzpunktuwidzeniaprogramisty(piszącw assemblerze)lubkompilatora(językówwysokiegopoziomu). Składnikimodeluprogramowego: ● zestawrejestrówichliczbaifunkcjonalność ● zestawtrybówadresowaniasposobyspecyfikacjiargumentówoperacji ● modeloperacjiwarunkowychichsposóbrealizacji ● listainstrukcji,któremożewykonywaćprocesor Modelprogramowymoże,aleniemusibyćsilniepowiązanyzjegofizyczną implementacją(architekturąprocesora). Bardziejszczegółowonatematzestawówrejestrów,trybówadresowania,architektur RISC,CISCwnastępnychpytaniach.  Znacznikijednobitowerejestryatrybutówzwiązanezwynikiemostatnio przeproawdzonejoperacji,zgrupowanewjedenrejestr.Mogązawieraćtakieinformacjejak m.in.:czywynikiemoperacjibyło0?czywystapiłoprzeniesienie?czywynikbyłujemny?czy wystąpiłoprzepełnione?czywłączonajestobsługaprzerwań? Wykorzystywanesąnp.winstrukcjachwarunkowychnajpierwustawianesą znacznikidotycząceoperacji,anastępnienaichpodstawiewykonywanajestinstrukcja warunkowa,zależnieodstanuflag. Dwuargumentoweinstrukcjelogiczneiarytmetyczneustawiająwszystkieznaczniki,inne(np. jednoargumentowe)instrukcjeniekoniecznieustawiająwszystkieznaczniki.  15.Mającelementyzbudowaćdziałającąjednostkę:IR,PC,MBR,MAR,ALU, R1,R2,R3,R4,MQ,A,CU[znaćcelistnieniakażdegoelementu] ● IRInstructionRegisterprzechowujezakodowanąaktualnąinstrukcję ● PCProgramCounterprzechowujeadreskolejnejinstrukcji ● CUControlUnitzwanyinaczejdekoderemrozkazów.Dekodujedostarczone instrukcjeisterujepozostałymiblokami. ● ALUArithmeticLogicUnitjednostkaarytmetycznologiczna,wykonujeoperacje nadostarczonychdanych.Podstawoweoperacjetododawanie,op.logiczne(AND, NOT,XOR,OR)orazprzesunięciabitowe. ● MBRMemoryBufferRegisterbuforprzechowującydanezpodadresuwMAR dlaużyciaprzezinnekomponenty ● MARMemoryAddressRegisterrejestradresowy,przechowującyadresz którego/podktórytransmitowanebędądanemiędzypamięciąaCPU. ●   16.Doczegosłużytrybadresowania?Jakiwpływmanainstrukcjeimodelprocesora?

 Trybyadresowaniaopisanewpytaniu5b.Trybadresowaniaoznaczasposóbwjaki procesorodnosisiędoargumentówinstrukcjisposóbokreślenia/odnalezieniadanejw pamięci.  17.Rejestrycel Rejestryzewzględunaichzastosowaniemożemypodzielićnakilkakategorii funkcyjnych: ● rejestrydanychdoprzechowywaniadanychcałkowitoliczbowych,np.argumentów instrukcji ● rejestryadresoweprzechowująceadresydanych,umożliwiajądostępdodanychw pamięciwyróżniasięrejestrysegmentowe(DataSegment,CodeSegment,Stack Segment,ExtraSegmentRegisters)przeznaczonetylkodoprzechowywaniaadresów segmentów ● rejestrprzeznaczeniaogólnegogeneralpurposeprzeznaczonydoprzechowywania zarównodanych,jakiadresów ○ wx86akumulatorAX,rejestrbazowyBX,licznikpętliCX,rejestrdanychDX ● rejestryzmiennoprzecinkowedoprzechowywanialiczbzmiennoprzecinkowe,zwykle umieszczonewoddzielnymblokufunkcjonalnymFPU ● rejestrstałychprzechowującystałetylkodoodczytu ● rejestryinstrukcjiprzechowująceaktualniewykonywanąinstrukcję ● rejestrywyspecjalizowane: ○ programcounterPClicznikinstrukcji,wskaźniknakolejneinstrukcje programu ○ stackpointerSPwskaźnikstosu ○ rejestrflagprocesoraFLAGS/EFLAGSopisującyikontrolującystan procesora,najczęściejzależnyodostatniowykonanejoperacji,zależnyw budowieodwybranegomodeluprogramowego. ● podstawowezestawyrejestrów: ○ architekturabezrejestrowaobecnieniespotyka,zawieraod1do3rejestrów, wtymPC ○ minimalnyzestawrejestrowyPC,SP,akumulator,rejestradresowy ○ małyzestawrejestrówspecjalizowanych68rejestrówpełniącychściśle określonefunkcje(np.wx8616bitowym):akumulator,rozszerzenie akumulatora,licznik,głównyrejestradresowy,SP,wskaźnikramki,2 pomocniczerejestryadresowe,instructionpointerIP,rejestrznaczników ○ małyzestawrejestrówuniwersalnych8rejestrówogólnegoprzeznaczenia (np.x8632bitowy):EAX,EDX,ECX,EBX,ESP,EBP,ESI,EDIwszystkie mogąsłużyćjakoakumulatorylubrejestryadresowe,wszystkiepozaESPjako rejestryindeksowe.34rejestrysąużywanenazmiennelokalnelubparametry. ○ dużyzestawrejestrówuniwersalnych1632rejestryuniwersalne,używanejak wyżej ○ buforwierzchołkastosudużyzestaw(32128)rejestrów,mającymieścićcałą ramkęstosu

○ stosowyzestawrejestrów38rejestrówtworzącychstos.operacje wykonywanenawierzchołkubraknazwrejestrów 18.RISCaCISC:zredukowanaliczbainstrukcji,cojest"stałe"aco"pływawinstrukcji, rozbudowanepulerejestrów ● CISC:complexinstructionsetcomputing: ○ złożone,specjalistyczneinstrukcje(kilka(naście)cyklizegara) ○ wieletrybówadresowania ○ operowaniebezpośrednionapamięci(bezpośredniczeniarejestrów) ○ skomplikowanydekoderrozkazów ○ pojedynczyrozkazmikroprocesorawykonujekilkaoperacjiniskiegopoziomu, jaknaprzykładpobraniezpamięci,operacjęarytmetycznąizapisaniedo pamięci ● RISC:reducedinstructionsetcomputing ○ listarozkazówograniczonadowymaganegominimum ○ uproszczonydekoderrozkazów ○ mniejtrybówadresowania ○ ograniczeniekomunikacjimiędzypamięciąaprocesorempoprzezrejestry ○ większaliczbarejestrówmniejszaliczbaodwołańdopamięci: ■ rozwiązaneprogramowoalokacjarejestrówprzezkompilator wyrafinowanaanalizaprogramów ■ rozwiązaniesprzętowedużyzestawrejestrówpomieściwięcej zmiennychlokalnych ■ użycieokienrejestrówzazwyczajproceduraużywatylkokilku arametrówizmiennychlokalnychjejwywołanieprzełączadoinnego zbiorurejestrów,apowrótprzełączadopoprzedniegozbioru ○ instrukcjetrójargumentowenieniszcząargumentówźródłowych(wynik przypisywanywnowemiejsce) ○ wszystkieinstrukcjetakiejsamejdługościzazwyczaj32bity  ● Budowainstrukcjix86(CISC),kolejno: ○ prefiksy(04bajty)modyfikująsposóbdokodowaniainstrukcji ○ kodoperacji(13bajty) ○ ModRM(braklub1bajt)specyfikacjaargumentówlubrozmieszczeniakodu operacyjnego(?) ○ SIB(braklub1bajt)specyfikacjatrybuadresowaniadlatrybówindeksowych ○ przemieszczenie(0,1,2,4bajty) ○ stała(0,1,2,4bajty)  //...ocochodzi“costałe,acopływa”?:P //chybachodziorzeczystałeizmienne(opcjon...


Similar Free PDFs