Presentation laddar. Vänta.

Presentation laddar. Vänta.

Digital och Datorteknik – EDA451 2009/2010 1 Dataväg och minne EDA 451 - Digital och Datorteknik Dagens föreläsning: Dataväg och minne, Arbetsboken kapitel.

Liknande presentationer


En presentation över ämnet: "Digital och Datorteknik – EDA451 2009/2010 1 Dataväg och minne EDA 451 - Digital och Datorteknik Dagens föreläsning: Dataväg och minne, Arbetsboken kapitel."— Presentationens avskrift:

1 Digital och Datorteknik – EDA / Dataväg och minne EDA Digital och Datorteknik Dagens föreläsning: Dataväg och minne, Arbetsboken kapitel Ur innehållet:  Läs- och skrivbart minne  Dataväg med manuell styrenhet  Centralenhetens arbetssätt: FETCH/EXECUTE

2 Digital och Datorteknik – EDA /2010 Vi ansluter flaggregister och väljarfunktion Cin 2 Dataväg och minne

3 Digital och Datorteknik – EDA /2010 Väljarfunktion för Cin 3 Dataväg och minne f3 f2 f1 f0 U = f(D,E,F,Cin) OperationResultat 0 0 Bitvis nollställning D E Bitvis inverteringD 1k Bitvis inverteringE 1k 0 1 Bitvis ORD OR E Bitvis ANDD AND E Bitvis XORD XOR E D CinD + Cin D + FF 16 + Cin D  1 + Cin 1 0 D + E + Cin D + D + Cin2D + Cin D +E 1k + Cin D  E  1 + Cin Bitvis nollställning Bitvis nollställning0 1 1 Bitvis ettställningFF 16 G=2 (1,0)=g 1 G=g 1 g 0

4 Digital och Datorteknik – EDA /2010 Flaggregister (Condition Codes register) 4 Dataväg och minne Vid g 2 =0 och LD CC =1 överförs ALU’ns flaggor till CC. CC kan också laddas från bussen (g 2 =1). Med OE CC förs innehållet i CC till bussen

5 Digital och Datorteknik – EDA /2010 Vi ansluter minne till en centralenhet 5 Dataväg och minne

6 Digital och Datorteknik – EDA /2010 Princip Läs-/ Skriv- minne 6 Dataväg och minne

7 Digital och Datorteknik – EDA /2010 Dataväg utökad med minne 7 Dataväg och minne (Adress) 16 xxxxxxxx 00 Data xxxxxxxx 01 xxxxxxxx FF xxxxxxxx FE RTN: Att skriva till minne: data →M(MA) Att läsa från minne: M(MA) → data

8 Digital och Datorteknik – EDA /2010 Random Access Memory (RAM) 8 Dataväg och minne Alla minnets delar har samma åtkomsttid. central- enhet primär- minnes- system adressering dataöverföring styrsignaler

9 Digital och Datorteknik – EDA /2010 Volatile (”Flyktigt”) innehållet försvinner vid spänningsbortfall, vid spänningstillslag är innehållet oftast slumpmässigt bestämt. Kallas ofta “RAM”. n RWM (Read Write Memory) NON Volatile (”Icke flyktigt”) behåller sitt innehåll även efter spänningsbortfall n ROM (Read Only Memory) –programmeras vid tillverkningen, innehållet kan därefter inte ändras n PROM (Programmable ROM) –minnestypen kan programmeras (kräver speciell utrustning) en gång n EPROM (Erasable PROM) –minnestypen kan programmeras och raderas med speciell utrustning n FLASH –minnestypen kan programmeras/raderas utan speciell typ av utrustning 9 Dataväg och minne RAM - Minnestyper

10 Digital och Datorteknik – EDA /2010 n Skriv/läs-minnen, kallas ibland ”dataminne” –Williamstub –Kärnminnen –Halvledarminnen, SRAM/DRAM n Läs-minnen, kallas ibland”Programminne” –Halvledarminne, ROM –Halvledarminne, EPROM –Halvledarminne, FLASH Snabb tillbakablick 10 Dataväg och minne

11 Digital och Datorteknik – EDA /2010 ”Williamstuben”, Dataväg och minne Första elektrostatiska minnet Lagrad nolla Lagrad etta Bilden visar 32 st. 40-bitars ord och en 20-bitars sidadress (Ferranti Mark I) Elektronstrålens efterlysning (minnestid) c:a 0,2 sek. Metallplatta framför skapar ”kondensator” för varje minnesbit.

12 Digital och Datorteknik – EDA /2010 Kärnminne c:a Dataväg och minne Skrivström, läsström – riktning anger lagrad nolla eller etta

13 Digital och Datorteknik – EDA /2010 Halvledarminnen Dataväg och minne Statiskt RAM (SRAM) 6 transistorer/-bit WL = 1, väljer denna cell. (M 5 och M 6 leder). Minneselementet har två stabila tillstånd: BL=1 och BL’ = 0 →”1” BL=0 och BL’ = 1 →”0” (Jämför med SR-latch) 256-bit TTL RAM (Fairchild) 128-bit RAM (IBM System/360 Model 145 primärminne) jämförd med kärnminne.

14 Digital och Datorteknik – EDA /2010 Dynamiskt RAM (DRAM) Dataväg och minne Intel i bit Dynamiskt RAM Endast en transistor krävs för att lagra en bit. Kräver ”refresh” eftersom kondensatorn laddas ur efter hand. (Jämför med Wiliamstuben)

15 Digital och Datorteknik – EDA /2010 ROM (1965) 15 Dataväg och minne Intel 3301, 1024-bit ROM A2A2 A1A1 A0A0 ord 0 ord 1 ord 2 ord 3 ord 4 ord 5 ord 6 ord 7 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 ”1” ”0” Dioder (ettor) placeras i diodmatrisens skärningar vid tillverkningsprocessen, “mask- programmerade”

16 Digital och Datorteknik – EDA /2010 EPROM (1971) 16 Dataväg och minne Dov Frohman uppfann EPROM (Intel) Intel 1702, EPROM. UV-ljus användes för att radera minnet. Intel EPROM- programmerare (1971)

17 Digital och Datorteknik – EDA /2010 FLASH Dataväg och minne NOR-FLASH NAND-FLASH ”BLOCK”-minnes åtkomst MINNESTYRKRETS

18 Digital och Datorteknik – EDA /2010 Läs-cykel 18 Dataväg och minne Exempel: Kopiera minnesinnehåll på adress (FF) 16 till register A CykelOperation (RTN)Aktiva styrsignalerBeskrivning 1(FF) 16 →Rf 3, f 2, f 1, f 0, LD R F(15), dvs f 3 =1,f 2 =f 1 =f 0 =1. dvs. FF placeras i R 2R→MAROE R, LD MAR FF kopplas till bussen. Vid klockpuls laddas MAR 3M(MAR) →AMR LD A Lässignal till minnet Vid klockpuls laddas minnesinnehåll i A FF M(FF)

19 Digital och Datorteknik – EDA / Dataväg och minne Arkiv -> Datavägen ->Dataväg med RWM Exempel: Addera minnesinnehållen på adress och och spara resultatet på adress

20 Digital och Datorteknik – EDA / Dataväg och minne Lösning: Vi börjar med att placera på adress och på adress (För att kunna kontrollera styrsignalsekvensen) CPOELDMemALU FunkSourceRTN S1ABRABTRRW Cin →M(04) →M(05)

21 Digital och Datorteknik – EDA / Dataväg och minne Nu till utförandet: Läs första operanden från minnet till register T. Läs därefter andra operanden och utför ALU-operationen, spara resultatet i register R Skriv tillbaks resultatet till minnet från register R CPOELDMemALU FunkSourceRTN S1ABRABTRRW Cin M(04)→T M(05)+T→R 51106R→M(06)

22 Digital och Datorteknik – EDA /2010 n John Louis Von Neumann ( ) ”Det lagrade programmets princip”, dvs program och data i samma minne. Program och minne 22 Dataväg och minne Maskinprogram i minnet Tillhörande assemblerprogram Instruktion Adress Data

23 Digital och Datorteknik – EDA /2010 Maskininstruktioner 23 Dataväg och minne Kan ha olika “INSTRUKTIONSFORMAT” EXEMPEL:

24 Digital och Datorteknik – EDA / Dataväg och minne OP-kodAdr ADDB Adr OP-kod TFR B,A Instruktionsformat LDAB #data OP-koddata Exempelvis: Maskinprogram Instruktion ”mnemonic” Assemblerprogram operand- information Adress ”Byte-wide” 8 bitar data på varje adress

25 Digital och Datorteknik – EDA /2010 Exempel: Instruktionen ”Clear” 25 Dataväg och minne InstruktionAdresseringOperationFlaggor Clear VariantmetodOP#~NZVC CLRA Inherent  A 01-0 CLRB Inherent  B 01-0 CLR Absolute  M(ADR) 01-0 F ö ljande instruktionsbeskrivning specificerar ” Clear ”. Instruktionen nollst ä ller operanden och finns i olika varianter: CLRAnollst ä ll register A CLRBnollst ä ll register B CLR nollst ä ll minnesinneh å ll Antag att vi placerar instruktionssekvensen i minnet med start p å adress 01, minnet skulle d å f å f ö ljande utseende: CLRA CLRB CLR (55) OP-kod, (47) 16 OP-kod, (48) 16 OP-kod, (49) 16 operandinformation,(55) 16

26 Digital och Datorteknik – EDA /2010 Dataväg för program i minne 26 Dataväg och minne

27 Digital och Datorteknik – EDA /2010 Centralenhetens instruktionsbearbetning 27 Dataväg och minne EXECUTEFETCH Utför maskininstruktion Hämta maskininstruktion från minne I sin enklaste form kan bearbetningen av en instruktion delas in i två faser

28 Digital och Datorteknik – EDA /2010 Instruktionshämtning – ”FETCH” 28 Dataväg och minne CykelOperation (RTN) Aktiva styrsignaler Beskrivning 1PC→MA PC+1→PC OE PC,LD MA INC PC Innehållet i PC adresserar minnet Uppdateras för att peka på nästa minnesposition 2M(MA) →IMR,LD I Läsning från minnet till instruktionsregistret. Vid instruktionshämtning placeras operationskoden som PC “pekar på” i instruktionsregistret. PC räknas upp och pekar därefter på antingen en operand eller en ny instruktion.

29 Digital och Datorteknik – EDA / Dataväg och minne Arkiv -> Datavägen ->Dataväg med manuell styrenhet Nya register i datavägen: S – Stackpekare, speciellt register med flera viktiga funktioner. X – Generellt register för adressinformation

30 Digital och Datorteknik – EDA / Dataväg och minne FETCH - Hämtningsfas StateRTNStyr- signaler Kommentar 0PC→MA, PC+1→PC OE PC =1, LD MA =1, IncPC=1. Adressen till instruktionens operationskod kopieras från PC till minnesadressregistret MA. Adressen som finns i PC ökas med ett. 1MIMR=1, LD I =1. Läs operationskoden från minnet. Placera den i instruktionsregistret I. Nästa state skall vara det första i EXECUTE- sekvensen. Det förutsätts alltså att det finns en operationskod på denna adress.. FETCH EXEMPEL: PC = (0C) 16

31 Digital och Datorteknik – EDA / Dataväg och minne EXECUTE - Utförandefas Utförandefasen är unik för varje instruktion. Exempel: INCA OP-kod Instruktionsformat StateRTNStyrsignalerKommentar 0A+1→R, Flaggor→CC OE A =1, f 3 =1, g 0 =1, LD R =1, LD CC =1 ALU-funktionen (1000) utför “A+0+Cin”. g 0 =1 väljer Cin = 1. Resultatet överförs till R. ALU’ns flaggor (NZCV) överförs till flaggregister CC. 1R→AOE R =1, LD A =1 NF=1 Resultatet från operationen (i R) återförs till register A. Nästa klockcykel skall vara den första i ny FETCH-sekvens. INCAIncrement register A RTN: A + 1  A Flaggor:N: Ettställs om resultatets teckenbit (bit 7) får värdet 1. Z: Ettställs om samtliga åtta bitar i resultatet blir noll. V: Ettställs om 2-komplementoverflow uppstår. C: Ettställs om summan ej ryms i åtta bitar, dvs blir lika med 256. I detta fall ettställs även Z. Detaljerad beskrivning av instruktionen EXECUTE NF

32 Digital och Datorteknik – EDA / Dataväg och minne Exempel: LDAA #data OP-koddata Instruktionsformat StateRTNStyrsignalerKommentar 0PC→MA, PC+1→PC OE PC =1, LD MA =1, IncPC=1. Instruktionens datadel finns i minnesordet efter OP-koden. När EXECUTE-sekvensen inleds pekar PC på instruktionens datadel. PC kopieras därför över till minnesadressregistret MA så att datadelen kan läsas från minnet under nästa klockcykel. Innehållet i PC ökas med ett, så att PC pekar på nästa adress i minnet där OP-koden för nästa instruktion skall finnas. 1M→AM→AMR=1, LD A =1, NF=1 Läs instruktionens datadel "Data" från minnet och placera den i A-registret. Nästa klockcykel skall vara den första i ny FETCH-sekvens. LDAA #dataLoad A Immediate RTN: Data  A Flaggor:Påverkas ej. Beskrivning:Laddar dataord från instruktionen till register A. Detaljerad beskrivning av instruktionen

33 Digital och Datorteknik – EDA / Dataväg och minne Exempel: LDAA Adr OP-kodAdr Instruktionsformat StateRTNStyrsignalerKommentar 0PC→MA, PC+1→PC OE PC =1, LD MA =1, IncPC=1. “Adressen till Adr”, dvs PC, vid execute-fasens början, adresserar minnet för att kunna läsa “Adr”. 1M→MAMR=1, LD MA =1, “Adr” läses och placeras direkt i MA för att vi i nästa fas ska kunna adressera minnet. 2M→AM→AMR=1, LD A =1, NF=1 Data från “Adr” läses och placeras i register A. Nästa klockcykel skall vara den första i ny FETCH-sekvens. LDAA AdrLoad A from memory RTN: Data  A Flaggor:Påverkas ej. Beskrivning:Laddar dataord från minnet till register A. Detaljerad beskrivning av instruktionen

34 Digital och Datorteknik – EDA /2010 Centralenhetens arbetsätt 34 Dataväg och minne EXECUTEFETCHRESET NF FETCH EXECUTE RESET

35 Digital och Datorteknik – EDA /2010 RESET - Återställningsfas 35 Dataväg och minne SRTN- beskr StyrsignalerKommentar 0FF 16 →RALU-fkn = F 16, LD R =1. ALU-funktionen väljs så att talet FF 16 finns på ALU:ns utgång. Laddingången på R- registret ettställs så att utvärdet från ALU’n (FF 16 ) laddas i R-registret vid nästa klockpuls. 1R→MAOE R =1, LD MA =1. Talet FF 16 i R-registret kopplas ut på bussen. Bussinnehållet laddas i minnesadressregistret vid nästa klockpuls. 2M→PCMR=1, LD PC =1. Minnesinnehållet på adressen FF 16 läses. Det dataord som läses placeras i PC vid nästa klockpuls. Nästa klockcykel skall vara den första i FETCH- sekvensen. (Start- tillstånd) RESET I exemplet placeras adressen 0C i PC. En instruktion förutsätts finnas på denna adress.


Ladda ner ppt "Digital och Datorteknik – EDA451 2009/2010 1 Dataväg och minne EDA 451 - Digital och Datorteknik Dagens föreläsning: Dataväg och minne, Arbetsboken kapitel."

Liknande presentationer


Google-annonser