Digital- och datorteknik

Relevanta dokument
Digital- och datorteknik

Digital- och datorteknik

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

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

TENTAMEN(Nu anpassad till FLIS- processorn)

TENTAMEN. Digital- och datorteknik E. Institutionen för data- och informationsteknik Avdelningen för datorteknik. Elektro Åk 1/ lp 4 EDA216/DIT790

TENTAMEN (Något redigerad)

Lars-Eric Arebrink. Av institutionen utgiven. vid flera tillfällen. Betyg 4: 36 poäng Betyg 5: 48 poäng

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

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

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

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

Tentamen. EDA432 Digital och datorteknik IT INN790 Digital och datorteknik GU. Måndag 23 oktober 2006, kl i V-salar

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

Maskinorienterad programmering. Mekatronikingenjör åk 2/ lp 3. Lars-Eric Arebrink. Av institutionen utgiven. Lars-Eric Arebrink

Maskinorienterad programmering

Maskinorienterad programmering. Mekatronikingenjör åk 2/ lp 3. Lars-Eric Arebrink. Av institutionen utgiven. vid flera tillfällen.

Maskinorienterad programmering

EDA215 Digital- och datorteknik för Z

exempel på Tentamen 2

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

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

LV6 LV7. Aktivera Kursens mål:

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

ALU:n ska anslutas hur då?

Exempel 3 på Tentamen

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

Assemblerprogrammeringsuppgifter för FLIS-processorn

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

Tentamen (Svar och lösningsförslag)

Lösningsförslag tenta

Maskinorienterad programmering

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

Tentamen med lösningar

Tentamen. EDA432 Digital- och datorteknik, It DIT790 Digital- och datorteknik, GU. Måndag 19 oktober 2009, kl

EDA Digital och Datorteknik

Grundläggande Datorteknik Digital- och datorteknik

Programexempel för FLEX

Exempel 1 på Tentamen med lösningar

Digital- och datorteknik

Exempel 2 på Tentamen med lösningar

Exempel på tentamen 1

CHALMERS TEKNISKA HÖGSKOLA

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

Tentamen. EDA432 Digital- och datorteknik, IT DIT790 Digital- och datorteknik, GU. Måndag 18 Oktober 2010, kl

Struktur: Elektroteknik A. Digitalteknik 3p, vt 01. F1: Introduktion. Motivation och målsättning för kurserna i digital elektronik

TENTAMEN (med svar och vissa lösningar)

Tentamen. EDA485 Maskinorienterad programmering Z DAT015 Maskinorienterad programmering IT. Tisdag xx yyyy 2006, kl

Digital- och datorteknik

Digital- och datorteknik

Digital- och datorteknik

Extrauppgifter för CPU12

Digital- och datorteknik

Programmering i maskinspråk (Maskinassemblering)

PARITETSKONTROLL. Om generatorn i vidstående exempel avkänner ett jämt antal ettor ger den en nolla ut. Detta innebär att överföringen

LEU431. Digital- och datorteknik. Diverse kompletterande material

Digital- och datorteknik

Lösningar till tentamen i EIT070 Datorteknik

Ext-14 (Ver ) Ext-14. FLEX-processorns styrenhet med fast logik

Digital- och datorteknik

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

Digital- och datorteknik

Digital- och datorteknik

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

Assemblerprogrammering

Digital- och datorteknik

Övningsuppgifterna i kapitel F avser FLIS-processorn, vars instruktioner och motsvarande koder definieras i INSTRUKTIONSLISTA FÖR FLISP.

Assemblerprogrammering del 1

Programmering i maskinspråk (Maskinassemblering)

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:

Digital- och datorteknik

Tentamen. TSEA22 Digitalteknik 5 juni, 2015, kl

Centralenheten: ALU, dataväg och minne

Digitalteknik EIT020. Lecture 15: Design av digitala kretsar

TENTAMEN Datorteknik (DO2005) D1/E1/Mek1/Ö1

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

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

Binär kodning. Binära koder. Tal och talsystem positionssystem för basen 10. Begrepp. Begrepp Tal och talsystem Talomvandling ASCII-kod NBCD Gray-kod

Digital- och datorteknik

Reducerad INSTRUKTIONSLISTA för FLIS-processorn

Bilda styrsignalerna till datavägen RESET FETCH EXECUTE NF NF NF. Digital och Datorteknik EDA /2011. Digital och Datorteknik EDA /2011

9/22/2012. Assemblernivå Beskrivning av funktion Automatiskt styrd borrmaskin Positionera borr Starta borr Borra genom arbetsstycke...

Digital och Datorteknik EDA /2010. EDA Digital och Datorteknik

INSTRUKTIONSLISTA för FLEX-processorn

EDA216. Digital- och datorteknik. Diverse kompletterande material

Digital- och datorteknik

Digital- och datorteknik

EDA Digital och Datorteknik

Digital- och datorteknik

Assemblerprogrammering del 3

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

Lista på registeruppsättningen i PIC16F877A Datablad TTL-kretsar 74-serien

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

Tentamen i EIT070 Datorteknik

Avbrottshantering. Övningsuppgifter

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

Lösningar till tentamen i EIT070 Datorteknik

FLEX Instruktionslista

Inledning. Statistisk Programmering. UNIVAC 1107 (sextio- och sjuttiotal) Hålkorten. Att använda dator

Transkript:

Institutionen för data- och informationsteknik Avdelningen för datorteknik TENTAMEN KRSNAMN Digital- och datorteknik PROGRAM: KRSBETECKNING EXAMINATOR Data-, elektro- och mekatronikingenjör Åk / lp och LE43/LE43 (Inskrivna före använder kursbeteckning LE43.) Lars-Eric Arebrink TID FÖR TENTAMEN -8-8 kl 4. 8. HJÄLPMEDEL Av institutionen utgiven Instruktionslista för FLEX-processorn (INS) Tabellverk eller miniräknare får ej användas. ANSV LÄRARE: Lars-Eric Arebrink, tel. 77 578 Besöker tentamen ANSLAG AV RESLTAT vid flera tillfällen. När rättningen är färdig anslås resultatet med anonyma koder och tid för granskning på kursens hemsida. Lägg din anonyma kod på minnet. Den används när resultatet anslås! ÖVRIG INFORM. Tentamen omfattar totalt 6 poäng. Onödigt komplicerade lösningar kan ge poängavdrag. Svar på uppgifter skall motiveras. BETYGSGRÄNSER. Betyg 3: 4 poäng Betyg 4: 36 poäng Betyg 5: 48 poäng SLTBETYG För slutbetyg 3, 4 eller 5 på kursen fordras betyg 3, 4 eller 5 på tentamen och godkända laborationer.

. I uppgift a-h nedan används 8-bitars tal X, Y, S och D. X = och Y =. (7) a) Vilket talområde måste X, Y, S och D tillhöra om de tolkas som tal med tecken? (p) b) Vilket talområde måste X, Y, S och D tillhöra om de tolkas som tal utan tecken? (p) c) Visa med penna och papper hur räkneoperationen S = X + Y utförs i en 8-bitars AL. (p) d) Vilka värden får flaggbitarna N, Z, V och C vid räkneoperationen i c)? (p) e) Visa med penna och papper hur räkneoperationen D = X Y utförs i en 8-bitars AL. (p) f) Vilka värden får flaggbitarna N, Z, V och C vid räkneoperationen i e)? (p) g) Tolka bitmönstren X, Y, S och D som tal utan tecken och ange deras decimala motsvarighet. Vilken eller vilka flaggbitar visar om resultatet är korrekt vid tal utan tecken? (p) h) Tolka bitmönstren X, Y, S och D som tal med tecken och ange deras decimala motsvarighet. Vilken eller vilka flaggbitar anger om resultatet är korrekt vid tal med tecken? i) Antag att N min är det minsta positiva tal, förutom, som kan representeras som ett 3-bitars flyttal med full upplösning enligt flyttalsstandarden IEEE 754-985 (dvs 3 bitar av mantissan). Vilket decimalt värde har N min approximativt. j) Hur många olika booleska funktioner av tre variabler finns det? a & c = u k) Ge ett minimalt boolesk SP-uttryck för u i grindnätet till höger. a = b (3p). En boolesk funktion f(a,b,c,d) har karnaughdiagrammet till höger. cd Realisera funktionen med så få grindar som möjligt. NOR-grindar med valfritt antal ingångar, XOR-grindar och NOT-grindar får användas. Endast insignalerna a, b, c och d finns tillgängliga. ab (4p) 3. Realisera en JK-vippa med hjälp av en SR-vippa och standardgrindar. (5p) 4. Ge RTN-beskrivning och styrsignaler för de tillstånd krävs för att utföra operationen enligt nedanstående RTN-beskrivning: (p) RTN-beskrivning: 5(A + ) + 3(B ) A (Aritmetisk multiplikation avses) LD A Reg A LD B Reg B LD T Reg T Register B får inte ändras. Bortse från risken för overflow. Använd så få tillstånd som möjligt. Förutsätt att register A och B från början innehåller de data som skall behandlas enligt uttrycket ovan och att innehållen i register R och T är okända. Använd den enkla datavägen till höger och ge ditt svar i tabellform. Samtliga funktioner AL:n kan utföra framgår av bilaga. OE A OE B C M X C 3 g g Funkt C in D LD R OE R E AL Reg R (5p) Flaggor

3(7) 5. Figur i bilaga 3 visar hur datorn FLEX är uppbyggd. Bilaga visar hur AL ns funktion väljs med styrsignalerna f 3 - f och signalen C in. OE PC I tabellen nedan visas styrsignalerna i EXECTE-sekvensen för en av FLEX-processorns instruktioner. State S-term RTN-beskrivning Styrsignaler (= ) Q 5 Q 5 I xx OE PC, LD MA, IncPC Q 6 Q 6 I xx MR, LD MA Q 7 Q 7 I xx MR, f, f, LD R, LD CC Q 8 Q 8 I xx OE R, MW, NF NF i tabellens sista rad anger att nästa tillstånd (state) skall vara det första i FETCH-sekvensen. a) Ge RTN-beskrivningen för tillstånden Q 5 -Q 8. (p) b) Förklara vad instruktionen med EXECTE-sekvensen ovan utför i varje klockcykel. Skriv instruktionen med assemblerspråk för FLEX-processorn. c) Med instruktionen nedan skall man kunna nollställa valfria bitar i ett minnesord. De bitpositioner som skall nollställas skall vara ettställda i instruktionens tredje ord, mask. Register A, B, X eller SP får inte påverkas av instruktionen som skall implementeras för FLEX-processorn med hjälp av styrenheten med fast logik. BCLR n,x,#mask RTN: M(X+n) AND mask k M(X+n), Flags CC Samtliga funktioner AL:n kan utföra framgår av bilaga. FLEX-datorn visas i bilaga 3. Gör en tabell liknande tabellen ovan för den efterfrågade EXECTE-sekvensen. Använd operationskoden FB 6. OPKOD n mask (6p) 6. Besvara kortfattat följande frågor rörande FLEX-processorn. a) Förklara kortfattat vad som händer vid Reset av processorn. (p) b) Det finns två principer för att ansluta inportar och utportar till processorns bussar, separatadresserad resp. minnesorienterad in- och utmatning. Vilken av dessa används i FLEX-processorn? Vilka är fördelarna med denna metod? För vilka värden på dataordet W ( W 55) utförs hoppen i c) och d)? c) LDAA #$3F BITA #W BEQ Hopp d) LDAA #W COMA CMPA #$55 BLT Hopp (4p)

6. forts. e) Översätt programavsnittet till höger till maskinkod. Det skall framgå hur offset för branchinstruktionerna beräknas. (3p) f) Hur många klockpulser krävs för att köra hela programavsnittet i e). (3p) ORG $3 LDAA #- ALOOP LDX #6 LDAB #5 XLOOP DECB LEAX $FE,X BNE XLOOP INCA BNE ALOOP NOP 4(7) 7. En FLEX-processor skall användas i styrenheten för en maskin. Till inport FD 6 är ett antal givare och switchar anslutna. En operatör skall styra maskinen via switcharna. Huvudprogrammet för maskinstyrningen skall utformas som en evighetsslinga där inporten läses av en gång i början på varje varv. Programmet skall inledas med att stackpekaren först sätts till värdet FA 6. Sedan skall inporten läsas av och beroende på switcharnas och givarnas värden skall en av tre olika färdiga subrutiner anropas om motsvarande villkor i tabellen nedan är uppfyllt. Om inget av villkoren i tabellen är uppfyllt skall den färdiga subrutinen SB4 anropas. Efter återhopp från subrutinerna skall ett nytt varv i slingan påbörjas. Rita en flödesplan som beskriver programmet och skriv det i assemblerspråk för FLEX-processorn. Startadressen skall vara 6. Subrutinernas startadresser antas vara givna. För full poäng på uppgiften skall programmet vara korrekt radkommenterat. (p+5p) Villkor Inport FD 6 Anropa subrutin b7 b6 b5 b4 b3 b b b???? SB????? SB 3 SB3

Bilaga AL:ns funktion 5(7) D(8) E(8) Funktion C in AL Flaggor (8) AL:ns logik- och aritmetikoperationer på indata D och E definieras av ingångarna Funktion (F) och C in enligt tabellen nedan. F = (f 3, f, f, f ). I kolumnen Operation förklaras hur operationen utförs. f 3 f f f = f(d,e,c in ) Operation bitvis nollställning Resultat D E bitvis invertering D k bitvis invertering E k bitvis OR D OR E bitvis AND D AND E bitvis XOR D XOR E D + + C in D + C in D + FFH + C in D + C in D + E + C in D + D + C in D + C in Carryflaggan (C) innehåller minnessiffran ut (carry-out) från den mest signifikanta bitpositionen (längst till vänster) om en aritmetisk operation utförs av AL:n. Vid subtraktion gäller för denna AL att C = om lånesiffra (borrow) uppstår och C = om lånesiffra inte uppstår. Carryflaggans värde är vid andra operationer än aritmetiska. Overflowflaggan (V) visar om en aritmetisk operation ger "overflow" enligt reglerna för -komplementaritmetik. V-flaggans värde är vid andra operationer än aritmetiska. Zeroflaggan (Z) visar om en AL-operation ger värdet noll som resultat på -utgången. Signflaggan (N) är identisk med den mest signifikanta biten (teckenbiten) av utsignalen från AL:n. Half-carryflaggan (H) är minnessiffran (carry) mellan de fyra minst signifikanta och de fyra mest signifikanta bitarna i AL:n. H-flaggans värde är vid andra operationer än aritmetiska. D +E k + C in D E + C in bitvis nollställning bitvis nollställning bitvis ettställning FFH Med t ex D k menas att samtliga bitar i D inverteras. I tabellen ovan avser "+" och "" aritmetiska operationer.

b 6 b 5 b 4 b 3 b b b Bilaga Assemblerspråket för FLEX-processorn. 6(7) Assemblerspråket använder sig av mnemoniska beteckningar liknande dem som processorkonstruktören MOTOROLA specificerat för maskininstruktioner för mikroprocessorerna 68XX och instruktioner till assemblatorn, s k pseudoinstruktioner eller assemblatordirektiv. Pseudoinstruktionerna listas i tabell. Tabell Direktiv ORG N L RMB N L EQ N L FCB N, N L FCS ABC Förklaring Placerar den efterföljande koden med början på adress N. (ORG för ORiGin = ursprung) Avsätter N bytes i följd i minnet (utan att ge dem värden), så att programmet kan använda dem. Följden placeras med början på adressen L. (RMB för Reseve Memory Bytes) Ger symbolen L konstantvärdet N. (EQ för EQates = beräknas till) Avsätter en byte för varje argument i följd i minnet. Respektive byte ges konstantvärdet N, N etc. Följden placeras med början på adressen L. (FCB för Form Constant Byte) Avsätter en byte för varje tecken i teckensträngen ABC i följd i minnet. Respektive byte ges ASCII-värdet för A B C, etc. Följden placeras med början på adressen L. (FCS för Form Character String) Tabell 7-bitars ASCII NL DLE SP @ P ` p SOH DC! A Q a q STX DC B R b r ETX DC3 # 3 C S c s EOT DC4 $ 4 D T d t ENQ NAK % 5 E e u ACK SYN & 6 F V f v BEL ETB 7 G W g w BS CAN ( 8 H X h x HT EM ) 9 I Y i y LF SB * : J Z j z VT ESC + ; K [Ä k {ä FF FS, < L \Ö l ö CR GS - = M ]Å m }å S RS. > N ^ n ~ S S /? O _ o RBOT (DEL)

Bilaga 3 7(7) Processor MA Adressbuss LD A Reg A LD B Reg B C M X C 3 g g Funkt C in D LD R LD T AL Reg R Reg T E Flaggor g LD CC MX Reg CC LD X Reg X IncSP DecSP LD SP SP IncPC LD PC PC LD MA MR MW Adress Minne Data ut Data in OE A OE B OE R OE CC OE X OE S OE PC MR Styrsignaler LD I Reg I Reset Styrenhet Figur. Datorn FLEX.