Presentation laddar. Vänta.

Presentation laddar. Vänta.

IE1204 Digital Design Aritmetik Låskretsar, vippor, FSM FSM, VHDL introduktion Asynkron FSM F1 F3 F5 Ö3 F8 F10 F12 Ö8 F2Ö1 Ö2 Ö6 F13 F9Ö5 tentamen William.

Liknande presentationer


En presentation över ämnet: "IE1204 Digital Design Aritmetik Låskretsar, vippor, FSM FSM, VHDL introduktion Asynkron FSM F1 F3 F5 Ö3 F8 F10 F12 Ö8 F2Ö1 Ö2 Ö6 F13 F9Ö5 tentamen William."— Presentationens avskrift:

1 IE1204 Digital Design Aritmetik Låskretsar, vippor, FSM FSM, VHDL introduktion Asynkron FSM F1 F3 F5 Ö3 F8 F10 F12 Ö8 F2Ö1 Ö2 Ö6 F13 F9Ö5 tentamen William Sandqvist william@kth.se F4 F6 Booles algebra, Grindar MOS-teknologi, minimering Ö4 F11 Multiplexor Ö7 Minnen F14 Kombinatoriska kretsar F7 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! KK1 LAB1 KK2 LAB2 KK3 LAB3

2 William Sandqvist william@kth.se ÖH 8.4 7-4-2-1 kod Kodomvandlare 7-4-2-1-kod till BCD-kod. Vid kodning av siffrorna 0…9 användes förr ibland en kod med vikterna 7-4-2-1 i stället för den binära kodens vikter 8-4-2-1. 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 7-4- 2-1 koden används i dag till butikernas streck-kod )

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

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.

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

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

7 William Sandqvist william@kth.se ÖH 1.2b 110100.010 2 = = ( 2 5 +2 4 +2 2 + 2 -2 = 32+16+4 + 0.25 ) = = 52,25 10

8 Komplementräkning Subtraktion med en additionsmaskin = komplementräkning 63 - 17 = 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: 63+82+1 = 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 Antingen 8 positiva (+0…+7) och 8 negativa (-1…-8) tal ”med tecken”, eller 16 (0…F) ”teckenlösa” tal. Datorregister är ”ringar” Om registret är fullt gör ”+1” att det ”slår runt”. Ett fyra bitars register rymmer 2 4 = 16 tal.

11 Registerlängd 4 bitar kallas Nibble. Registret rymmer 2 4 = 16 tal. 0…15, -8…+7 8 bitar kallas Byte. Registret rymmer 2 8 = 256 tal. 0…255, -128…+127 16 bitar kallas Word. 2 16 = 65536 tal. 0…65535, -32768…+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 william@kth.se

12 ÖH 1.8 b) -1 = (+1 10 = 0000001 2  -1 10 = 1111110 2 + 1 2 ) = 1111111 2 = 127 10 Skriv följande tal ”med tecken” med två-komplementsnotation, x = (x 6, x 5, x 4, x 3, x 2, x 1, x 0 ). a) -23 = (+23 10 = 0010111 2  -23 10 = 1101000 2 + 1 2 ) = 1101001 2 = 105 10 d) -64 = (+64 10 = 1000000 2 är ett för stort positivt tal! men fungerar ändå -64 10  0111111 2 + 1 2 ) = 1000000 2 = 64 10 c) +38 = (32 10 +4 10 +2 10 ) = 0100110 2 = 38 10

13 William Sandqvist william@kth.se ÖH 2.1 a) 110 + 010 b) 1110 + 1001 c) 11 0011.01 + 111.1 d) 0.1101 + 0.1110

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 C IN = 1.

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

18 William Sandqvist william@kth.se ÖH 2.2 Addera eller subtrahera (addition med motsvarande negativa tal) nedanstående tal. Talen skall representeras som binära 4-bitstal (Nibble) på två-komplementform. a) 1 + 2 b) 4 – 1 c) 7 – 8 d) -3 – 5 Exemplets negativa tal: -1 10 = (+1 10 = 0001 2  -1 10 = 1110 2 +1 2 ) = 1111 2 -8 10 = (+8 10 = 1000 2  -8 10 = 0111 2 +1 2 ) = 1000 2 -3 10 = (+3 10 = 0011 2  -3 10 = 1100 2 +1 2 ) = 1101 2 -5 10 = (+5 10 = 0101 2  -5 10 = 1010 2 +1 2 ) = 1011 2

19 William Sandqvist william@kth.se 2.2 -1 10 = 1111 2 -8 10 = 1000 2 -3 10 = 1101 2 -5 10 = 1011 2

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

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 =0.7109375) =110000000.011=0.10110110 Fixpunktsberäkning är en ”heltalsmultiplikation”, binärpunkten sätts in först i resultatet.

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

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

24 2.5 Flyttalsformat IEEE 32 bit flyttal s eeeeeeee fffffffffffffffffffffff 31 30 23 22 0 4 0 C 8 0 0 0 0 01000000110010000000000000000000 Vad blir: +1,5625  2 2 = +6,25 0 10000001 10010000000000000000000 + 129-127 1 + 0.5+0.0625 William Sandqvist william@kth.se

25 http://babbage.cs.qc.cuny.edu/IEEE-754/32bit.html William Sandqvist william@kth.se

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

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.

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 = x 3 x 2 x 1 x 0 and Y = y 3 y 2 y 1 y 0, can be compared by using a subtractor circuit, which performs the operation X – Y. The three Flag-outputs denote the following: Show how Z, N, and V can be used to determine the cases X = Y, X Y. Subtractor circuit 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

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

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 { "@context": "http://schema.org", "@type": "ImageObject", "contentUrl": "http://images.slideplayer.se/2389697/8/slides/slide_30.jpg", "name": "William Sandqvist william@kth.se BV ex 5.10 X < Y .", "description": "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

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

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

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

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.

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

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

38 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 m 2 q 0, m 1 q 1, m 0 q 2. 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?

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


Ladda ner ppt "IE1204 Digital Design Aritmetik Låskretsar, vippor, FSM FSM, VHDL introduktion Asynkron FSM F1 F3 F5 Ö3 F8 F10 F12 Ö8 F2Ö1 Ö2 Ö6 F13 F9Ö5 tentamen William."

Liknande presentationer


Google-annonser