Centralenheten: ALU, dataväg och minne

Relevanta dokument
EDA451 - Digital och Datorteknik 2010/2011. EDA Digital och Datorteknik

EDA451 - Digital och Datorteknik 2009/2010. EDA Digital och Datorteknik

Styrenheten styrsignalsekvenser programflödeskontroll

LV6 LV7. Aktivera Kursens mål:

Minnet. Minne. Minns Man Minnet? Aktivera Kursens mål: LV3 Fo7. RAM-minnen: ROM PROM FLASH RWM. Primärminnen Sekundärminne Blockminne. Ext 15.

ALU:n ska anslutas hur då?

1 Introduktion till datortekniken. Innehåll GRUNDLÄGGANDE DATORTEKNIK FÖR HÖGSKOLANS INGENJÖRSUTBILDNINGAR KOMPENDIUM

EDA Digital och Datorteknik

Ext-13 (Ver ) Exempel på RTN-beskrivning av FLEX-instruktioner

Ext-13 (Ver ) Exempel på RTN-beskrivning av FLEX-instruktioner

Sekvensnät vippor, register och bussar

Laboration nr 3 behandlar

Digital- och datorteknik

EDA451 - Digital och Datorteknik 2010/2011. EDA Digital och Datorteknik 2010/2011

Digital- och datorteknik

Exempel 3 på Tentamen

Kapitel 7 Systemexempel (forts.)

F2: Motorola Arkitektur. Assembler vs. Maskinkod Exekvering av instruktioner i Instruktionsformat MOVE instruktionen

Tentamen i Digitala system - EITA15 15hp varav denna tentamen 4,5hp

LABORATION DATORTEKNIK Y,C,I DATORTEKNIK D

Ett minneselements egenskaper. F10: Minneselement. Latch. SR-latch. Innehåll:

Digital- och datorteknik

Digital- och datorteknik

Assemblerprogrammering del 2

Digital- och datorteknik. Lars-Eric Arebrink. Betyg 4: 36 poäng Betyg 5: 48 poäng

Styrenheten 9/17/2011. Styrenheten - forts Arb s 120. LV4 Fo10. Aktivera Kursens mål: Kap 7 Blå

Digitala System: Datorteknik ERIK LARSSON

Datorsystemteknik DVGA03 Föreläsning 8

Datormodell. Datorns uppgifter -Utföra program (instruktioner) Göra beräkningar på data Flytta data Interagera med omvärlden

Digital- och datorteknik. Lars-Eric Arebrink. vid flera tillfällen. Betyg 4: 36 poäng Betyg 5: 48 poäng

Assemblerprogrammering del 1

Tentamen 3. EDAxxx Grundläggande Datorteknik DIT791 Grundläggande Datorteknik, GU. Måndag xx Oktober 20xx, kl

MANUALBLAD MODULER TILL DIGITALMASKINEN

Digitalteknik EIT020. Lecture 15: Design av digitala kretsar

Lösningsförslag tenta

Uppgift 1: a) u= a c + a bc+ ab d +b cd

Digital- och datorteknik

EDA215 Digital- och datorteknik för Z

Digital- och datorteknik

Tentamen den 12 januari 2017 Datorarkitektur med operativsystem, EDT621

Digital- och datorteknik

CPU. Carry/Borrow IX. Programräknare

Exempel 2 på Tentamen med lösningar

Datorteknik. Tomas Nordström. Föreläsning 2. För utveckling av verksamhet, produkter och livskvalitet.

TENTAMEN. Digital- och datorteknik. Institutionen för data- och informationsteknik Avdelningen för datorteknik LEU431. Lars-Eric Arebrink

Tentamen. EDA432 Digital- och datorteknik, It DIT790 Digital- och datorteknik, GU. Onsdag 12 Januari 2011, kl

En något mer detaljerad bild av en processor. De tre delarna i processorn är: Nere 3ll vänster finns e' antal register som används för a' lagra data.

En något mer detaljerad bild av en processor. De tre delarna i processorn är: Nere 3ll vänster finns e' antal register som används för a' lagra data.

IT för personligt arbete F5

EDA216. Digital- och datorteknik. Diverse kompletterande material

Digital- och datorteknik

Datorteknik. Föreläsning 6. Processorns uppbyggnad, pipelining. Institutionen för elektro- och informationsteknologi, LTH. Mål

Grundläggande datorteknik

Digital- och datorteknik. Lars-Eric Arebrink. Av institutionen utgiven instruktionlista FLEXIBLE INSTRUKTION SET PROCESSOR FLISP

Digital- och datorteknik

Övning1 Datorteknik, HH vt12 - Talsystem, logik, minne, instruktioner, assembler

Mikroprogrammering I

FLEXIBLE INSTRUCTION SET PROCESSOR FLISP

Tentamen. EDA452 Grundläggande Datorteknik, D DIT790 Digital- och datorteknik, GU. Måndag 17 December 2012, kl

Processor pipelining genom historien (Intel i9-intel i7)

Tenta i Digitalteknik

Datorarkitektur. Informationsteknologi sommarkurs 5p, Agenda. Slideset 3

Digital- och datorteknik

Föreläsningsanteckningar 2. Mikroprogrammering I

Grundläggande datavetenskap, 4p

Elektroteknik MF1016 föreläsning 9 MF1017 föreläsning 7 Mikrodatorteknik

CHALMERS TEKNISKA HÖGSKOLA

Digital- och datorteknik. Lars-Eric Arebrink. vid flera tillfällen. Betyg 4: 36 poäng Betyg 5: 48 poäng

Villkorliga hopp: 9/26/2011. Dagens mål: Du ska kunna.. Villrorliga (Relativa) hopp - forts Arb s 140. LV5 Fo12. LV5 Fo12. Aktivera Kursens mål:

SEKVENSKRETSAR. Innehåll

Digital- och datorteknik. Lars-Eric Arebrink. Betyg 4: 36 poäng Betyg 5: 48 poäng

Föreläsningsanteckningar 4. Pipelining

Konstruera en dator mha grindar och programmera denna Använda en modern microcontroller

Digital- och datorteknik

TENTAMEN(Nu anpassad till FLIS- processorn)

Exempel 1 på Tentamen med lösningar

Digital- och datorteknik

Digital- och datorteknik

System S. Datorarkitektur - en inledning. Organisation av datorsystem: olika abstraktionsnivåer. den mest abstrakta synen på systemet

Digital- och datorteknik. Mekatronik-, data- och elektroingenjör Åk 1/ lp 1o2. Lars-Eric Arebrink. Av institutionen utgiven. vid flera tillfällen

HF0010. Introduktionskurs i datateknik 1,5 hp

Högskolan i Halmstad Digital- och Mikrodatorteknik 7.5p. Lista på registeruppsättningen i PIC16F877A Datablad TTL-kretsar 74-serien

TSEA28 Datorteknik Y (och U)

Digital- och datorteknik

Datorteknik. Den digitala automaten. En dator måste kunna räkna! Register och bussanslutning

Binär addition papper och penna metod

Läsminne Read Only Memory ROM

Facit till övningsuppgifter Kapitel 13 Anslutning av minnes- och I/O-moduler till buss 13-1

exempel på Tentamen 2

Övning1 Datorteknik, HH vt12 - Talsystem, logik, minne, instruktioner, assembler

Digital och Datorteknik EDA /2011. EDA 451 Digital och datorteknik 2010/2011. Uppbyggnad_och_funktion.pdf

Att läsa en manual. Exempel Timern ECT_16B8C. Läs den allmänna beskrivningen (Overview) Vi ser att grundfunktionen är en räknare med prescaler

Digital- och datorteknik

Föreläsningsanteckningar 5. Cacheminnen

FLEXIBLE INSTRUCTION SET PROCESSOR FLISP

Digital- och datorteknik

Föreläsning 1: Intro till kursen och programmering

Närliggande allokering Datorteknik

Digital- och datorteknik

TSEA28 Datorteknik Y (och U)

Transkript:

Centralenheten: ALU, dataväg och minne Dagens föreläsning: Kompendium kapitel 7 Arbetsbokens kapitel 11,12 RTN - Register Transfer Notation Förenklat skrivsätt för att specificera operationer där register ingår I skrivsättet används enkla symboler och för att speciellt ange att RTNnotation avses använder vi ett avvikande typsnitt. Ur innehållet: RTN, beskrivande notation Dataväg med Aritmetik/Logik- enhet (ALU) Primärminnet, läsning och skrivning En manuell styrenhet 1 Aritmetik- logikenhet (ALU) ALU ns funktioner 3 4

Anslutning av ALU till datavägen Temporärregister (T) för lagring av indata Hur kopplar vi in en ALU till datavägen? Bussen kan bara innehålla en av ALU ns operander åt gången 5 6 Resultatregister (R) för lagring av utdata Dataväg med ALU Eftersom resultatet i ALU ns U-register ändras direkt om någon av ingångarna ändras måste det vara möjligt att spara värdet i ett register. Manöverpanel strömställare för styrsignaler. 7 8

Exempel: Nollställning av register A, 0 A Cykel Operation (RTN) Aktiva styrsignaler 1 0 R LD R Beskrivning ALU ns U-register nollställs ty F(0), dvs f 3 =f 2 =f 1 =f 0 =0. Vid klockpulsen överförs U till R. 2 R A OE R,LD A Innehållet i register R överförs till register A Exempel: Inkrementering av registerinnehåll A, A+1 A 1 2 I DigiFlisp: 1 2 I DigiFlisp: 9 10 Flaggregister, Condition Codes (CC) ALU:ns sätt att påverka flaggorna är flyktigt, dvs i samma ögonblick som styrsignalerna F ändras så ändras också vanligtvis någon eller några av flaggorna N,V,Z, och C. Flaggorna från en ALU-operation måste kunna sparas och det blir därför nödvändigt att införa ett register (CC) för detta. Det är bitarna i CC vi menar (med N,Z,V och C) om inget annat sägs uttryckligt. Flaggregister, olika sätt att påverka Olika instruktioner påverkar CC på olika sätt Flaggor måste kunna påverkas individuellt Logiken (en väljare) utformas så att varje flagga i CC, oberoende av övriga, kan väljas från en av fyra källor: ALU : Flaggan i CC kopieras från ALU:n dvs. sätts baserat på resultatet av ALU:ns senaste operation Buss: Flaggan i CC kopieras från datavägens buss Konstant: Flaggor N,Z,V,C nollställs Ingen ändring: Aktuella värden återförs (ändras ej). 11 12

Flaggregister, väljarfunktioner 8 olika väljarsignaler (g 2 -g 9 ) kan användas för att styra flaggsättningen i CC: Exempel: Nollställ C-flaggan, 0 C Operationen ska nollställa C-flaggan i CC medan övriga flaggor ska förbli oförändrade. Bitarna b 4 t.o.m b 7 i CC används inte och kan heller inte påverkas. I detta fall utnyttjar vi lämpligen att 0 kan kopplas direkt till flaggorna via väljaren, dvs. C tas från 0 medan övriga flaggor återkopplas. 13 14 ALU, kontroll av C in -funktion C in -funktion bestäms av operation (F), normalt 0 eller 1. Operationer som upprepad addition och upprepad subtraktion kräver dock att vi kan välja C eller C som C in. Väljare för kontroll av c in -funktion Vi kopplar en 1 av 4-väljare till ingången C in Inför väljarsignaler g1, g0 för att styra funktionen 15 16

Dataväg med flaggregister (CC) och valbar c in -funktion Exempel: Omedelbar adressering, 80 16 A Skapa en styrsignalsekvens som placerar konstanten 80 16 i register A. Flaggorna i CC ska påverkas så att N och Z sätts baserat på operanden ( dvs. 80 16 ), V och C ska nollställas. 17 18 Vi ansluter minne I DigiFlisp: Princip Läs-/ Skrivminne 19 20

Läs-cykel Skriv-cykel Exempel: Kopiera innehållet från adress 10 16 i minnet till register A. Exempel: Kopiera innehållet från register A till adress 11 16 i minnet. 1. Placera adressen (10 16 ) i register TA: 1. Placera adressen (11 16 ) i register TA: 10 16 TA 11 16 TA 2. Överför data från minne till register: 2. Överför data från register till minne: M(TA) A A M(TA) 21 22 Exempel: Addition, A+M(10 16 ) A Forts. exempel: Addition, A+M(10 16 ) A Utför addition av innehållet i register A med innehållet på adress 10 16 i minnet. Dela upp RTN-beskrivningen i delar som kan åstadkommas inom en klockcykel, vi har två operander, placera den andra i register T Från RTN-beskrivningen fyller vi i styrsignalsekvensen För att förenkla test, använder vi den första raden för att placera något lämpligt testvärde i register A 1. Placera adressen (10 16 ) i register TA: 10 16 TA 2. Överför data från minne till register T: M(TA) T Nu är vi klara att utföra operationen: 3. A+T R; ALU(N,Z,V,C) CC Resultatet finns nu i R, vi behöver bara återföra det till A: 4. R A 23 24