Elekro- och informationsteknik Tentamen i Digitalteknik, EIT020 18 december 2008, kl 14-19 Skriv namn och årskurs på alla papper. Börja en ny lösning på ett nytt papper. Använd bara en sida av pappret. Lösningarna skall tydligt visa tillvägagångssättet. Minimering av funktioner ses som en naturlig del av lösningen. Om inget annat anges skall kopplingar för realiseringar ritas. Hjälpmedel: kursboken och föreläsningsbilder. Lycka till!
Uppgift 1 Betrakta sekvensen s = [11110101] (a) Bestäm ett minimalt linjärt återkopplat skiftregister som genererar sekvensen s. (b) Kan skiftregistret i a-uppgiften generera någon sekvens (förutom 0-sekvensen) med annan period än sekvensen s? Uppgift 2 (7+3=10p) En släpvagnstillverkare behöver hjälp att tillverka en maskin för automatisk kontroll av lamporna på släpen. Tanken är att belysningen till släpet kopplas in i ett uttag. Då skall bakljusen vara konstant tända. bromsljusen tändas och släckas med intervall om cirka fem sekunder, dvs. det skall vara tänt fem sekunder och släckt fem sekunder om vart annat. blinkersen skall blinka med cirka en sekunds mellanrum. Då höger blinkers är tänd skall vänster vara släckt och vice versa. Maskinen skall alltid vara igång och sätts på och stängs av med matningsspänningen. Konstruera en synkronmaskinen som löser uppgiften. Till din hjälp får du använda valfritt antal räknare av typen 74LS160-163, valfria grindar och vippor samt en klocksignal med frekvensen 2Hz. För datablad till räknaren se längst bak i häftet. (10p) 2
Uppgift 3 I en tillämpning i en mycket utsatt miljö används långa pulser för att indikera skeenden. Anledningen till störningarna är ett svetsaggregat i närheten av systemet. Det gör att signalen blir mycket ostabil och bitar i sekvensen slumpmässigt och förhållandevis ofta inverteras. Därför behövs en konstruktion som renar signalen från störningarna. Konstruktören har med hjälp av mätningar och statistiska överväganden kommit fram till att en puls som varit stabil under tre klockpulser kan klassas som säker. Det innebär att övergången från nolla till etta kan ske när signalen varit ett under tre klockpulser i rad. övergången från etta till nolla kan ske när signalen varit noll under tre klockpulser i rad. Ditt jobb är att konstruera maskinen som renar signalen. T.ex. skall insignalen x enligt tidsdiagrammet i Figur 3.1 ge utsignalen y. x: y: Figur 3.1: Ett exempel på en signal med störningar och den renade signalen. (10p) 3
Uppgift 4 I figur 4.1 visas ett blockschema för ett kombinatoriskt när. Nätet är uppbyggt av de fyra delarna A, B, C och D där blocken A realiserar funktionen f A (x 1, x 2, x 3, x 4 ). B realiserar funktionen f B (x 1, x 2, x 3, x 4 ). C realiserar funktionen f C (x 1, x 2, x 3, x 4 ). D realiserar funktionen f D (a, b, c). Funktionen f kan alltså beskrivas som ) f(x 1, x 2, x 3, x 4 ) = f D (f A (x 1, x 2, x 3, x 4 ), f B (x 1, x 2, x 3, x 4 ), f C (x 1, x 2, x 3, x 4 ) De fyra funktionerna specificeras av f A = (x 1 x 2 x 3 x 4 )(x 1 x 3 x 4)(x 2 x 3) f B = x 1x 2 x 3x 4 x 2 x 3 x 2x 3 x 4 f C = x 1 x 3 x 1 x 2 x 2 x 4 f 1 D (1) = {0, 2, 4, 7} Kan funktionen f(x 1, x 2, x 3, x 4 ) realiseras med enbart modulo-2 adderare? x 1 x 2 x 3 x 4 A f A B f B D f C f C Figur 4.1: Blockschema för ett kombinatoriskt nät. (10p) 4
Uppgift 5 Betrakta en ternär fyrtippel, x = x 3 x 2 x 1 x 0, där x i {0, 1, 2}. På samma sätt som i det binära fallet kan dessa användas för att representera heltal. För en fyrtippel x = x 3 x 2 x 1 x 0 finns 3 4 = 81 kombinationer, vilket innebär att 81 olika tal kan representeras. Vi kan, på samma sätt som i det binära fallet, välja att bara ha heltalen och får då talområdet [0, 80]. Alternativt kan vi, motsvarande 2-komplement, välja att representera talen i området [ 40, 40]. I det första fallet kan vi beräkna värdet som Φ 1 (x) = x 3 3 3 + x 2 3 2 + x 1 3 + x 0 I det andra fallet, då vi väljer området [ 40, 40], blir värdet 1 Φ 2 (x) = { x 3 3 3 + x 2 3 2 + x 1 3 + x 0, om Φ 1 (x) 40 (x 3 2)3 3 + (x 2 2)3 2 + (x 1 2)3 + (x 0 2) 1, om Φ 1 (x) > 40 (a) Beräkna värdet av fyrtippeln x = 1121 för båda fallen, dvs både Φ 1 (x) och Φ 2 (x). (b) Bestäm den ternära representationen (version 2) för 40, 1, 1 och 40. (c) Betrakta representationen av talen i intervallet [ 40, 40]. Hur kan du avgöra om en fyrtippel representerar ett negativt tal eller ett positivt tal? (Ledning: Hur ser mappningen mellan Φ 1 (x) och Φ 2 (x) ut, jämfört med binär 2-komplement representation.) (d) Använd två bitar för att representera en ternär symbol. Konstruera ett kombinatoriskt nät som avgör om Φ 2 (x) är ett positivt eller ett negativt tal för en viss fyrtippel x = x 3 x 2 x 1 x 0 (se figur 5.1). (Ledning: Börja med mest signifikant symbol och arbeta neråt.) x 3 x 2 x 1 x 0 K Figur 5.1: Blockschema för kretsen i uppgift 5. u (2+2+3+3=10p) 1 De negativa värdena är beräknade ur Φ 2 (x) = Φ 1 (x) 3 4. 5
BCD DECADE COUNTERS/ 4-BIT BINARY COUNTERS The LS160A/161A/162A/163A are high-speed 4-bit synchronous counters. They are edge-triggered, synchronously presettable, and cascadable MSI building blocks for counting, memory addressing, frequency division and other applications. The LS160A and LS162A count modulo 10 (BCD). The LS161A and LS163A count modulo 16 (binary.) The LS160A and LS161A have an asynchronous Master Reset (Clear) input that overrides, and is independent of, the clock and all other control inputs. The LS162A and LS163A have a Synchronous Reset (Clear) input that overrides all other control inputs, but is active only during the rising clock edge. BCD (Modulo 10) Binary (Modulo 16) Asynchronous Reset LS160A LS161A Synchronous Reset LS162A LS163A Synchronous Counting and Loading Two Count Enable Inputs for High Speed Synchronous Expansion Terminal Count Fully Decoded Edge-Triggered Operation Typical Count Rate of 35 MHz ESD > 3500 Volts CONNECTION DIAGRAM DIP (TOP VIEW) VCC TC Q0 Q1 Q2 Q3 CET PE 16 15 14 13 12 11 10 9 NOTE: The Flatpak version has the same pinouts (Connection Diagram) as the Dual In-Line Package. *R 1 2 3 4 5 6 7 8 CP P0 P1 P2 P3 CEP GND *MR for LS160A and LS161A *SR for LS162A and LS163A PIN NAMES LOADING (Note a) HIGH LOW PE P0 P3 CEP CET CP MR SR Q0 Q3 TC Parallel Enable (Active LOW) Input Parallel Inputs Count Enable Parallel Input Count Enable Trickle Input Clock (Active HIGH Going Edge) Input Master Reset (Active LOW) Input Synchronous Reset (Active LOW) Input Parallel Outputs (Note b) Terminal Count Output (Note b) 1.0 U.L. 1.0 U.L. 1.0 U.L. 10 U.L. 10 U.L. 5 (2.5) U.L. 5 (2.5) U.L. NOTES: a) 1 TTL Unit Load (U.L.) = 40 µa HIGH/1.6 ma LOW. b) The Output LOW drive factor is 2.5 U.L. for Military (54) and 5 U.L. for Commercial (74) Temperature Ranges. FAST AND LS TTL DATA 5-1 SN54/74LS160A SN54/74LS161A SN54/74LS162A SN54/74LS163A BCD DECADE COUNTERS/ 4-BIT BINARY COUNTERS LOW POWER SCHOTTKY 16 1 J SUFFIX CERAMIC CASE 620-09 16 N SUFFIX PLASTIC CASE 648-08 1 16 1 D SUFFIX SOIC CASE 751B-03 ORDERING INFORMATION SN54LSXXXJ Ceramic SN74LSXXXN Plastic SN74LSXXXD SOIC LOGIC SYMBOL 9 3 4 5 6 7 10 2 PE P0 P1 P2 P3 CEP CET CP *R Q 0 Q1 Q2 Q3 TC 15 1 14 13 12 11 VCC = PIN 16 GND = PIN 8 *MR for LS160A and LS161A *SR for LS162A and LS163A SN54/74LS160A SN54/74LS161A SN54/74LS162A SN54/74LS163A STATE DIAGRAM LS160A LS162A LS161A LS163A 0 1 2 3 4 15 14 5 6 0 1 2 3 4 15 14 5 6 LOGIC EQUATIONS Count Enable = CEP CET PE TC for LS160A & LS162A = CET Q 0 Q 1 Q 2 Q 3 TC for LS161A & LS163A = CET Q 0 Q 1 Q 2 Q 3 Preset = PE CP + (rising clock edge) Reset = MR (LS160A & LS161A) Reset = SR CP + (rising clock edge) Reset = (LS162A & LS163A) 13 12 11 10 9 7 8 13 12 11 10 9 7 8 NOTE: The LS160A and LS162A can be preset to any state, but will not count beyond 9. If preset to state 10, 11, 12, 13, 14, or 15, it will return to its normal sequence within two clock pulses. FUNCTIONAL DESCRIPTION The LS160A/161A/162A/163A are 4-bit synchronous counters with a synchronous Parallel Enable (Load) feature. The counters consist of four edge-triggered D flip-flops with the appropriate data routing networks feeding the D inputs. All changes of the Q outputs (except due to the asynchronous Master Reset in the LS160A and LS161A) occur as a result of, and synchronous with, the LOW to HIGH transition of the Clock input (CP). As long as the set-up time requirements are met, there are no special timing or activity constraints on any of the mode control or data inputs. Three control inputs Parallel Enable (PE), Count Enable Parallel (CEP) and Count Enable Trickle (CET) select the mode of operation as shown in the tables below. The Count Mode is enabled when the CEP, CET, and PE inputs are HIGH. When the PE is LOW, the counters will synchronously load the data from the parallel inputs into the flip-flops on the LOW to HIGH transition of the clock. Either the CEP or CET can be used to inhibit the count sequence. With the PE held HIGH, a LOW on either the CEP or CET inputs at least one set-up time prior to the LOW to HIGH clock transition will cause the existing output states to be retained. The AND feature of the two Count Enable inputs (CET CEP) allows synchronous cascading without external gating and without delay accumulation over any practical number of bits or digits. The Terminal Count (TC) output is HIGH when the Count Enable Trickle (CET) input is HIGH while the counter is in its maximum count state (HLLH for the BCD counters, HHHH for the Binary counters). Note that TC is fully decoded and will, therefore, be HIGH only for one count state. The LS160A and LS162A count modulo 10 following a binary coded decimal (BCD) sequence. They generate a TC output when the CET input is HIGH while the counter is in state 9 (HLLH). From this state they increment to state 0 (LLLL). If loaded with a code in excess of 9 they return to their legitimate sequence within two counts, as explained in the state diagram. States 10 through 15 do not generate a TC output. The LS161A and LS163A count modulo 16 following a binary sequence. They generate a TC when the CET input is HIGH while the counter is in state 15 (HHHH). From this state they increment to state 0 (LLLL). The Master Reset (MR) of the LS160A and LS161A is asynchronous. When the MR is LOW, it overrides all other input conditions and sets the outputs LOW. The MR pin should never be left open. If not used, the MR pin should be tied through a resistor to VCC, or to a gate output which is permanently set to a HIGH logic level. The active LOW Synchronous Reset (SR) input of the LS162A and LS163A acts as an edge-triggered control input, overriding CET, CEP and PE, and resetting the four counter flip-flops on the LOW to HIGH transition of the clock. This simplifies the design from race-free logic controlled reset circuits, e.g., to reset the counter synchronously after reaching a predetermined value. MODE SELECT TABLE *SR PE CET CEP Action on the Rising Clock Edge ( ) L X X X RESET (Clear) H L X X LOAD (Pn Qn) H H H H COUNT (Increment) H H L X NO CHANGE (Hold) H H X L NO CHANGE (Hold) *For the LS162A and *LS163A only. H = HIGH Voltage Level L = LOW Voltage Level X = Don t Care FAST AND LS TTL DATA 5-2 6