Presentation laddar. Vänta.

Presentation laddar. Vänta.

IE1204 Digital Design F1 F2 Ö1 Booles algebra, Grindar F3 F4

Liknande presentationer


En presentation över ämnet: "IE1204 Digital Design F1 F2 Ö1 Booles algebra, Grindar F3 F4"— Presentationens avskrift:

1 William Sandqvist william@kth.se
IE1204 Digital Design F1 F2 Ö1 Booles algebra, Grindar F3 F4 MOS-teknologi, minimering F5 F6 Ö2 Aritmetik Ö3 KK1 LAB1 Kombinatoriska kretsar F7 Ö4 Multiplexor F8 F9 Ö5 Låskretsar, vippor, FSM KK2 LAB2 F10 F11 Ö6 KK3 LAB3 FSM, VHDL introduktion F12 Ö7 F13 Asynkron FSM Ö8 F14 tentamen Minnen Föreläsningar och övningar bygger på varandra! Ta alltid igen det Du missat! Läs på i förväg – delta i undervisningen – arbeta igenom materialet efteråt! William Sandqvist

2 William Sandqvist william@kth.se
ÖH kod Kodomvandlare kod till BCD-kod. Vid kodning av siffrorna 0…9 användes förr ibland en kod med vikterna i stället för den binära kodens vikter I de fall då en siffras kodord kan väljas på olika sätt väljs det kodord som innehåller minst antal ettor. ( en variant av koden används i dag till butikernas streck-kod ) William Sandqvist

3 William Sandqvist william@kth.se
8.4 Gemensamma hoptagningar kan ge delade grindar! William Sandqvist

4 William Sandqvist william@kth.se
8.4 PAL-kretsar (eg. PLA) kan innehåller programerbara AND och OR grindar. Grindarna har många programmerbara ingångsanslutningar. De många ingångarna ritas därför oftast med ett ”förenklat” ritsätt. William Sandqvist

5 William Sandqvist william@kth.se
8.4 Grind-delning! William Sandqvist

6 Reella tal Decimalkomma ”,” och Binärpunkt ”.” 10, =

7 William Sandqvist william@kth.se
ÖH 1.2b = = ( = ) = = 52,2510 William Sandqvist

8 Komplementräkning Subtraktion med en additionsmaskin = komplementräkning = 46 Talet -17 slås in som med röda siffror 17 och blir då 82. När - tangenten trycks in adderas 1. Resultatet blir: = 146. Om bara två siffror visas: 46

9 2-komplement Binärtalet 3, 0011, blir negativt -3 genom att man inverterar alla bitar och lägger till ett, 1101.

10 Registeraritmetik Datorregister är ”ringar”
Ett fyra bitars register rymmer 24 = 16 tal. Antingen 8 positiva (+0…+7) och 8 negativa (-1…-8) tal ”med tecken”, eller 16 (0…F) ”teckenlösa” tal. Om registret är fullt gör ”+1” att det ”slår runt”.

11 William Sandqvist william@kth.se
Registerlängd 4 bitar kallas Nibble. Registret rymmer 24 = 16 tal. 0…15, -8…+7 8 bitar kallas Byte. Registret rymmer 28 = 256 tal. 0…255, -128…+127 16 bitar kallas Word. 216 = tal. 0…65535, …+32767 Vanliga registerstorlekar är idag 32 bitar (DoubleWord) och 64 bitar (QuadWord ). Dessa storleksbenämningar är de som används av Windows-programmet Calculator. Word kan ofta vara 32 bitar i stället. William Sandqvist

12 William Sandqvist william@kth.se
Skriv följande tal ”med tecken” med två-komplementsnotation, x = (x6, x5, x4, x3, x2, x1, x0). a) = ( =  = ) = = 10510 b) -1 = (+110 =  = ) = = 12710 c) +38 = ( ) = = 3810 d) -64 = ( = är ett för stort positivt tal! men fungerar ändå  ) = = 6410 William Sandqvist

13 William Sandqvist william@kth.se
a) b) c) d) William Sandqvist

14 Heladderaren Ett grindnät som gör en binär addition på en valfri bitposition med två binära tal kallas för en Heladderare.

15 4-bits adderare En additionskrets för binära fyrbitstal består således av fyra heladderarkretsar.

16 Subtraktion? Subtraktion av binära tal kan ske genom sk. komplementräkning. Negativa tal represen-teras då av sannkomplementet, vilket innebär att alla bitar inverteras och en etta adderas till talet. Man utnyttjar då additionskretsen även till subtraktion. Rent kretsmässigt kan man lösa inverteringen med XOR-grindar ,och man adderar en etta till talet genom att låta CIN = 1.

17 Figure 5.13. Adder/subtractor unit.
y y y n 1 1 Add Sub control x x x n 1 1 c n -bit adder c n s s s n 1 1 Figure Adder/subtractor unit.

18 William Sandqvist william@kth.se
Addera eller subtrahera (addition med motsvarande negativa tal) nedanstående tal. Talen skall representeras som binära 4-bitstal (Nibble) på två-komplementform. a) b) 4 – 1 c) 7 – 8 d) -3 – 5 Exemplets negativa tal: -110 = (+110 =  = ) = 11112 -810 = (+810 =  = ) = 10002 -310 = (+310 =  = ) = 11012 -510 = (+510 =  = ) = 10112 William Sandqvist

19 William Sandqvist william@kth.se
2.2 -110 = 11112 -810 = 10002 -310 = -510 = William Sandqvist

20 William Sandqvist william@kth.se
ÖH 2.3 a,b Multiplicera för hand följande par av teckenlösa binära tal. a) 110010 b) 11101001 William Sandqvist

21 William Sandqvist william@kth.se
ÖH 2.3 c,d Multiplicera för hand följande par av teckenlösa binära tal. = = (51,257,5 =384,376) (0,81250,875 = ) Fixpunktsberäkning är en ”heltalsmultiplikation”, binärpunkten sätts in först i resultatet. William Sandqvist

22 William Sandqvist william@kth.se
Dividera för hand följande par av teckenlösa binära tal. Vid heltalsdivision blir svaret i stället 1. William Sandqvist

23 William Sandqvist william@kth.se
IEEE – 32 bit float Genom att exponenteten skrivs exess–127 kan flyttal storlekssorteras med vanlig heltalsaritmetik! Dec  IEEE-754 William Sandqvist

24 William Sandqvist william@kth.se
2.5 Flyttalsformat IEEE 32 bit flyttal s eeeeeeee fffffffffffffffffffffff C Vad blir: +1,562522 = +6,25 William Sandqvist

25 William Sandqvist william@kth.se
William Sandqvist

26 Figure 5.34. IEEE Standard floating-point formats.
Sign 32 bits 23 bits of mantissa excess-127 exponent 8-bit 52 bits of mantissa 11-bit excess-1023 64 bits S M (a) Single precision (b) Double precision E + 0 denotes 1 denotes Figure IEEE Standard floating-point formats.

27 William Sandqvist william@kth.se
Overflow När man räknar med ”tal med tecken” kan summan av två positiva tal felaktigt bli negativ (tex. ”+4” + ”+5” = ”-7”), liksom summan av två negativa tal felaktigt kan bli positiv (tex. ”-6” + ”-7” = ”+3”). Detta kallas för Overflow. 32-bitarsdatorer behöver inte ha hårdvara för att upptäcka Carry eller Overflow – det är där sällsynta händelser. William Sandqvist

28 Figure 5.42. A comparator circuit.

29 William Sandqvist william@kth.se
BV ex 5.10, < > = Flags, Comparator. Two four-bit signed numbers, X = x3x2x1x0 and Y = y3y2y1y0, can be compared by using a subtractor circuit, which performs the operation X – Y. The three Flag-outputs denote the following: Z = 1 if the result is 0; otherwise Z = 0 N = 1 if the result is negative; otherwise N = 0 V = 1 if aritmetic overflow occurs; otherwise V = 0 Show how Z, N, and V can be used to determine the cases X = Y, X < Y, X >Y. Subtractor circuit William Sandqvist

30 William Sandqvist william@kth.se
BV ex 5.10 X = Y ? William Sandqvist

31 William Sandqvist william@kth.se
BV ex 5.10 X < Y ? Om X och Y har samma tecken kommer X - Y alltid att ligga inom talområdet. Dvs. V = 0. X, Y positiva tex. 3 – 4 N = 1. X, Y negativa tex. -4 – (-3) N = 1. Om X neg och Y pos och X – Y ligger inom talområdet, blir V = 0 och N = 1. Tex. -3 – 4. Om X neg och Y pos men X – Y ligger utanför talområdet, blir V = 1. Då blir N = 0. Ex. -5 – 4 .  Vid X<Y blir flaggorna V och N således alltid olika. Detta kan indikeras med XOR. William Sandqvist

32 William Sandqvist william@kth.se
BV ex 5.10 Så här kan en dator göra de vanligaste jämförelserna … William Sandqvist

33 William Sandqvist william@kth.se
Träslöjds adderaren Rippel carry kan åskådliggöras med denna video … Marble adding machine William Sandqvist

34 William Sandqvist william@kth.se
BV ex 5.12, mul  William Sandqvist

35 The ”ripple-carry” mul-circuit
The Figure depicts a four-bit multiplier circuit. Each row consists of four fulladder (FA) blocks connected in a ripple-carry configuration. The delay caused by the carry signals rippling through the rows has a significant impact on the time needed to generate the output product. William Sandqvist

36 Summera partialprodukter
Multiplicand M (14) 1110 Multiplier Q (11) 1011 PP0 1110 PP1 10101 0000 PP2 01010 1110 Product P (154) William Sandqvist

37 William Sandqvist william@kth.se
Ripple-carry path 8 William Sandqvist

38 William Sandqvist william@kth.se
Speed up? In an attempt to speed up the circuit, we may use an arangement where the carries in a given row are “saved” (carry-save), and included in the next row at the correct bit position. Then, in the first row the full-adders can be used to add three properly shifted bits of the multiplicand as selected by the multiplier bits. For example, in bit position 2 the three inputs are m2q0, m1q1, m0q2. In the last row it is still necessary to use the ripple-carry adder. What is the total delay of the ”ripple-carry” circuit compared to that of the ”carry-save” circuit? William Sandqvist

39 ”Carry-save” mul-circuit
6 Vid fler än 4 bitar blir skillnaden mycket större! William Sandqvist


Ladda ner ppt "IE1204 Digital Design F1 F2 Ö1 Booles algebra, Grindar F3 F4"

Liknande presentationer


Google-annonser