ITPE2400/DATS2400: Datamaskinarkitektur



Like dokumenter
Dagens tema. Dagens temaer hentes fra kapittel 3 i læreboken. Repetisjon, design av digitale kretser. Kort om 2-komplements form

Dagens temaer. temaer hentes fra kapittel 3 i Computer Organisation. av sekvensielle kretser. and Architecture. Tilstandsdiagram.

Dagens temaer. Architecture INF ! Dagens temaer hentes fra kapittel 3 i Computer Organisation and

En mengde andre typer som DVD, CD, FPGA, Flash, (E)PROM etc. (Kommer. Hukommelse finnes i mange varianter avhengig av hva de skal brukes til:

4 kombinatorisk logikk, løsning

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Datamaskinarkitektur våren 2009

TFE4101 Krets- og Digitalteknikk Høst 2016

Dagens temaer. Dagens temaer hentes fra kapittel 3 i læreboken. Oppbygging av flip-flop er og latcher. Kort om 2-komplements form

Dagens temaer. Sekvensiell logikk: Kretser med minne. D-flipflop: Forbedring av RS-latch

Repetisjon digital-teknikk. teknikk,, INF2270

Dagens temaer. Architecture INF ! Dagens temaer hentes fra kapittel 3 i Computer Organisation and. ! Kort repetisjon fra forrige gang

INF1400. Kombinatorisk Logikk

Dagens tema. Dagens tema hentes fra kapittel 3 i Computer Organisation and Architecture. Sekvensiell logikk. Flip-flop er. Tellere og registre

Dagens temaer. Dagens temaer hentes fra kapittel 3 i Computer Organisation and Architecture. Kort repetisjon fra forrige gang. Kombinatorisk logikk

Dagens temaer. Dagens temaer hentes fra kapittel 3 i Computer Organisation and Architecture. Sekvensiell logikk. Flip-flop er

5 E, B (16) , 1011 (2) Danner grupper a' fire bit , (2) Danner grupper a' tre bit 1 3 6, 5 4 (8)

Forelesning 4. Binær adder m.m.

, ~', -~ lalle trykte og skrevne hjelpemidler. I Kalkulator som ikke kan kommunisere med andre.

INF1400. Kombinatorisk Logikk

IN1020. Logiske porter om forenkling til ALU

INF2270. Sekvensiell Logikk

Øving 7: Løsningsforslag (frivillig)

Dagens temaer. Dagens temaer er hentet fra P&P kapittel 3. Motivet for å bruke binær representasjon. Boolsk algebra: Definisjoner og regler

NY EKSAMEN Emnekode: ITD13012

Forelesning 7. Tilstandsmaskin

INF2270. Boolsk Algebra og kombinatorisk logikk

ITPE/DATS 2400: Datamaskinarkitektur og Nettverk

Eksamen i emne TFE4110 DIGITALTEKNIKK MED KRETSTEKNIKK

EKSAMEN (Del 1, høsten 2014)

Løsningsforslag i digitalteknikkoppgaver INF2270 uke 5 (29/1-4/2 2006)

Digitalstyring sammendrag

UNIVERSITETET I OSLO

IN1020. Sekvensiell Logikk

EKSAMEN Emnekode: ITD13012

Tall. Binære regnestykker. Binære tall positive, negative heltall, flytende tall

Løsningsforslag til 1. del av Del - EKSAMEN

Rapport. Lab 1. Absoluttverdikrets - portkretser

Kapittel 5 Tilstandsmaskin

INF1400. Sekvensiell logikk del 1

Hva gikk vi gjennom forrige uke? Omid Mirmotahari 3

Avdelingfor ingeniørutdanning

INF1400. Karnaughdiagram

Forelesning 6. Sekvensiell logikk

Løsningsforslag til regneøving 6. a) Bruk boolsk algebra til å forkorte følgende uttrykk [1] Fjerner 0 uttrykk, og får: [4]

INF1400. Sekvensiell logikk del 1

INF1400. Digital teknologi. Joakim Myrvoll 2014

Tall. Posisjons-tallsystemer. Representasjon av heltall. Tall positive, negative heltall, flytende tall. Tekst ASCII, UNICODE XML, CSS

Eksamen i emne TFE4110 DIGITALTEKNIKK MED KRETSTEKNIKK Fredag 21. mai 2004 Tid. Kl

SIE 4005, 2/10 (2. Forelesn.)

Forelesning 3. Karnaughdiagram

INF1400 Kap 02 Boolsk Algebra og Logiske Porter

Forelesning 2. Boolsk algebra og logiske porter

ITPE/DATS 2400: Datamaskinarkitektur og Nettverk

INF1400. Tilstandsmaskin

Forelesning 5. Diverse komponenter/større system

Ferdighetsmål: Kunne forenkle boolske uttrykk Kunne implementere flerinputs-porter med bare 2-inputs porter

7. Hvilket alternativ (A, B eller C) representerer hexadesimaltallet B737 (16) på oktal form?

Datamaskiner og operativsystemer =>Datamaskinorganisering og arkitektur

HiST-AFT-EDT Digitalteknikk EDT001T-A 11H

Løsningsforslag INF1400 H04

MIK 200 Anvendt signalbehandling, Lab. 5, brytere, lysdioder og logikk.

UNIVERSITETET I OSLO

INF3340/4340. Synkrone design Tilstandsmaskiner

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

Løsningsforslag til eksamen i IN 147(A)

SIE 4005, 8/10 (3. Forelesn.)

INF1400. Tilstandsmaskin

Overordnet maskinarkitektur. Maskinarkitektur zoomet inn. I CPU: Kontrollenheten (CU) IT1101 Informatikk basisfag, dobbeltime 11/9

Høgskoleni østfold EKSAMEN. Dato: Eksamenstid: kl til kl. 1200

Tilstandsmaskiner (FSM) Kapittel 5

G høgskolen i oslo ~~'~6"'-- - i Kalkulator som ikke kan kommunisere med andre. Dato:OS~3. Faglig veileder: Lars Kristiansen.

INF1400 Kap4rest Kombinatorisk Logikk

Emnenavn: Datateknikk. Eksamenstid: 3 timer. Faglærer: Robert Roppestad. består av 5 sider inklusiv denne forsiden, samt 1 vedleggside.

INF3340/4431. Tilstandsmaskiner

EKSAMEN I FAG TFE4101 KRETS- OG DIGITALTEKNIKK

Andre funksjoner som NAND, NOR, XOR og XNOR avledes fra AND, To funksjoner er ekvivalente hvis de for alle input-kombinasjoner gir

INF3340. Tilstandsmaskiner

EKSAMEN (Del 1, høsten 2015)

Kapittel 3: Litt om representasjon av tall

EKSAMEN I FAG TFE4101 KRETS- OG DIGITALTEKNIKK, LF DIGITALTEKNIKKDELEN AV EKSAMEN (VERSJON 1)

TMA 4140 Diskret Matematikk, 4. forelesning

EKSAMEN I FAG TFE4101 KRETS- OG DIGITALTEKNIKK

Oppgave 1 (Flanke- og nivåstyrte vipper)

Løsningsforslag til 1. del av Del - EKSAMEN

HiST-AFT-EDT Datateknikk TELE1003-A 13H. Oppgåve 1 [15 % ; digitalteknikk] Side 1 av 10

Digitale (binære) kretser og systemer en kort introduksjon

Emne: Datamaskinarkitektur Emnekode:lO 134A Faglig veileder: Lars Kristiansen

Kryptering Kongruensregning Kongruensregning i kryptering Litteratur. Hemmelige koder. Kristian Ranestad. 9. Mars 2006

MAX MIN RESET. 7 Data Inn Data Ut. Load

Tallregning og algebra

Repetisjon. Sentrale temaer i kurset som er relevante for eksamen (Eksamen kan inneholde stoff som ikke er nevnt her)

UNIVERSITETET I OSLO

! Dekoder: En av 2 n output linjer er høy, avhengig av verdien på n inputlinjer. ! Positive tall: Som før

En oppsummering (og litt som står igjen)

Løsningsforslag til eksamen i INF2270

Teori og oppgaver om 2-komplement

SIE 4005, 9/10 (4. Forelesn.)

Transkript:

ITPE2400/DATS2400: Datamaskinarkitektur Forelesning 6: Mer om kombinatoriske kretser Aritmetikk Sekvensiell logikk Desta H. Hagos / T. M. Jonassen Institute of Computer Science Faculty of Technology, Art and Design Oslo and Akershus University College of Applied Sciences 23. Januar 2015

Oversikt 1 Litt repetisjon 2 Mer om ripple-carry adderer 3 Eksempel med en sammenlikner 4 Om multiplikasjon, subtraksjon og divisjon 5 2-er komplement representasjon 6 Ripple-carry adderer/subtraktor 7 Byggestenene for sekvensielle kretser

Kombinatorske kretser 1 En dekoder

Kombinatorske kretser 2 En multiplekser

Implementering av adderer Fra eksemplet på whiteboard kan vi skrive: s = c in (x y) og fra sannhetstabell, men ikke algebraisk riktig: c out = xy + c(x y) Dette betyr at kretsen kan implementeres med 2 XOR-porter, 2 AND-porter og 1 OR-port.

En sammenlikner Spesifikasjon: En likhets-sammenlikner som avgjør om to binære ord er like eller ikke. Input: To ord A(0 : 3) og B(0 : 3) Output: Ett bit, E, hvor E = 1 ved likhet, E = 0 ellers. Husk: XOR gir 0 ved likhet, 1 ved ulikhet. Holder å se på ett bit. Se eksempel whiteboard.

Aritmetiske operasjoner Aritmetiske operasjoner: addisjon, subtraksjon, multiplikasjon, divisjon. Vi kan implementere disse i hardware nesten som regning vi gjør for hånd. Multiplikasjon: Shift og addisjon. Divisjon: Shift og subtraksjon. Lettest med hele tall uten fortegn.

2-er komplement 1 2-er komplementet av et binært ord på n bits oppnåes ved å invertere alle bits, deretter addere 1, eventuelt mente kastes. Vi representerer hele tall på n bit på 2-er komplement form ved at mest signifikante bit er fortegn, 0 for +, 1 for på følgende måte: Positive tall på vanlig måte Negative tall, ta 2-er komplement av tilsvarende positive tall. Merk: 0 har unik representasjon.

2-er komplement 2 En annen måte å definere 2-er komplementet til et n-bits binært tall N er å sette dette som Comp 2 (N) = 2 n N. Det er da lett å se at Comp 2 (Comp 2 (N)) = N hvor N er repsenter på 2-er komplement form.

Et par eksempler Anta at vi har 5 bits til rådighet, vi må bruke ett bit (et mest signifikante) til fortegn, og derfor bare fire bit til størrelse. Da er: og N = (4) 10 = (00100) 2 M = (7) 10 = (00111) 2 Vi vil beregne N M, og beregner Comp 2 (M) = 11000 + 1 = 11001. Vi får da at N M = N + ( M) = 00100 + 11001 = 11101 Beregner vi nå 2-komplementet til resultatet ser vi at Comp 2 (11101) = 00010 + 1 = 00011 = (3) 10 Dette ser vi at stemmer siden 4 7 = 3.

Hvorfor det virker Vi kan skrive som A B A + ( B) Dette gir at subtraksjon er en addisjon, ved at vi tar 2-er komplementet av B og deretter addere dette til A. Vi kan få problem med overflow (har sett eksempel på dette tidligere). Dette oppstår bare med tall av like fortegn.

Reglene Heltall A og B er representert på 2-er komplement form med fortegn. Addisjon: A + B: På vanlig måte, hvis mente (carry) på mest signifikante bit: overflow. Subtraksjon: A B: Ta 2-er komplement av B, addér, siden A B = A + ( B). Dette gir oss en enkel overflow regel i vår fulladderer, hvis mente (carry) inn på minst signifikante bit er lik mente ut, ikke overflow, hvis ulikt, overflow.

Et par elementære egenskaper til XOR Vi har at og at Altså har vi x 0 = x 0 + x 0 = x 1 = x x 1 = x 1 + x 1 = x 1 = x x 0 = x og x 1 = x Dette er det som gjør at vår Ripple-carry adderer/subtraktor som kommer på de neste sidene fungerer.

Adderer/subtraktor 2-er komplement representasjonen gjør at vi kan bruke samme krets til både addisjon og subtraksjon med små modifikasjoner. Merk at vi bruker mente inn på minst signifikante bit, som flagg på addisjon, eller subtraksjon. Diagram gitt på neste slide.

Fulladderer med XOR for subtraksjon Fulladderer/subtraherer

Tidsdiagrammer Klokkepuls t 1 t t+1 t Synkronisering (det at forandringer skjer ved bestemte tidspunkt) er viktig i komplekse systemer. I en datamaskin brukes en klokke (klokkepuls) for dette. Måleenhet: Hz (Hertz), hvor Hz=s 1, (svigning per sekund). Moderne prossessorer opererer typisk i området gigahertz (GHz), eller altså i størrelsesorden 10 9 Hz.

Tabeller og diagrammer Det er flere måter å fremstille funksjonaliteten til en flip-flop (vippe). Disse er (nesten) ekvivalente, men med tilpasset bruksomåde. Logisk diagram: Koblingsdiagram med porter. Dette digrammet kan brukes for å finne de andre tabellene og karakteristisk likning. Karakteristisk tabell: Tabell som angir funksjonaliteten, gitt ved input og nåtilstand. Tabellen sier ikke noe om hvordan flip-flop-en (vippen) er koblet. Karakteristisk likning: Boolesk uttrykk som angir nestetilstand uttrykt ved nåtilstand og input. Tabellen sier ikke noe om hvordan flip-flop-en (vippen) er koblet. Eksitasjonstabell: Tabell som gir sammenheng mellom nestetilstand, nåtilstand og input. Tabellen brukes for å finne inngangslikningene til en flip-flop ved design av sekvensielle

Sekvensielle kretser 1 En SR-latch med NOR

Sekvensielle kretser 2 En SR-vippe

Karakteristiske tabeller for SR-vippe Karakteristisk tabell SR-vippe S R Q(t + 1) Operasjon 0 0 Q(t) Ingen endring 0 1 0 Reset 1 0 1 Set 1 1? Udefinert Eksitasjonstabell SR-vippe Q(t) Q(t + 1) S R Operasjon 0 0 0 X Ingen endring 0 1 1 0 Set 1 0 0 1 Reset 1 1 X 0 Ingen endring Karakteristisk likning: Q(t + 1) = S(t) + R(t)Q(t)

Sekvensielle kretser 3 En D-vippe

Karakteristiske tabeller for D-vippe Karakteristisk tabell D-vippe D Q(t + 1) Operasjon 0 0 Reset 1 1 Set Eksitasjonstabell D-vippe Q(t + 1) D Operasjon 0 0 Reset 1 1 Set Karakteristisk likning: Q(t + 1) = D(t)

Sekvensielle kretser 4 En JK-vippe

Karakteristiske tabeller for JK-vippe Karakteristisk tabell JK-vippe J K Q(t + 1) Operasjon 0 0 Q(t) Ingen endring 0 1 0 Reset 1 0 1 Set 1 1 Q(t) Komplement Eksitasjonstabell JK-vippe Q(t) Q(t + 1) J K Operasjon 0 0 0 X Ingen endring 0 1 1 X Set 1 0 X 1 Reset 1 1 X 0 Ingen endring Karakteristisk likning: Q(t + 1) = J(t)Q(t) + K(t)Q(t)

Sekvensielle kretser 5 En T-vippe

Karakteristiske tabeller for T-vippe Karakteristisk tabell T-vippe T Q(t + 1) Operasjon 0 Q(t) Ingen endring 1 Q(t) Komplement Eksitasjonstabell T-vippe Q(t) Q(t + 1) T Operasjon 0 0 0 Ingen endring 0 1 1 Komplement 1 0 1 Komplement 1 1 0 Ingen endring Karakteristisk likning: Q(t + 1) = T(t) Q(t)

Design av sekvensielle kretser Spesifikasjon. Lag tilstandsdiagram fra spesifikasjon. Lag tilstandstabell. Tilordne binære koder til tilstandene. Utled vippe input likningene fra tilstandstabellen og eksitasjonstabeller. Utled output likningene. Forenkle. Lag logisk diagram.

Et eksempel 1 Tilstandsdiagram for en teller modulo 4 som teller på SET, men ikke ellers, altså en input, og telle på hver klokkesykel som input x = 1. 0 0 A 1 B 1 1 D 1 C 0 0

Et eksempel 2 Tilstandstabellen, med T -vipper: a t b t x t a t+1 b t+1 T a T b 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 1 0 0 0 1 1 1 0 1 1 1 0 0 1 0 0 0 1 0 1 1 1 0 1 1 1 0 1 1 0 0 1 1 1 0 0 1 1

The End Spørsmål?