Toets Digitale Systemen 01/06/2006, 8.45 10.30 uur



Vergelijkbare documenten
Toets Digitale Systemen 31/05/2007, uur

EE1410: Digitale Systemen BSc. EE, 1e jaar, , vragencollege 2

Eindtentamen Digitale Systemen 18/06/2007, uur

Eindtentamen Digitale Systemen (ET1405) 18 juni 2008, uur

Eindtentamen Digitale Systemen 07/07/2006, uur

Tentamen Digitale Systemen (EE1410) 6 juli 2012, uur

EE1410: Digitale Systemen BSc. EE, 1e jaar, , 2e werkcollege

b) Geef het schema van een minimale realisatie met uitsluitend NANDs en inverters voor uitgang D.

EE1410: Digitale Systemen BSc. EE, 1e jaar, , vragencollege 1

Studentnummer:... Opleiding:...

Antwoorden zijn afgedrukt!!!!!!!

Faculteit Elektrotechniek - Leerstoel ES Tentamen Schakeltechniek. Vakcode 5A050, 19 januari 2005, 14:00u-17:00u

Faculteit Elektrotechniek - Leerstoel ES Tentamen Schakeltechniek. Vakcode 5A050, 19 januari 2005, 14:00u-17:00u

Faculteit Elektrotechniek - Capaciteitsgroep ICS Tentamen Schakeltechniek. Vakcodes 5A010/5A050, 26 november 2003, 14:00u-17:00u

Digitale Systemen (ET1 410)

VHDL overzicht. Digitale Systemen (ET1 410) VHDL? VHDL? Sequentieel vs. Concurrent 2/15/2011

Digitale Systeem Engineering 1. Week 4 Toepassing: Pulse Width Modulation Jesse op den Brouw DIGSE1/

Digitale Systeem Engineering 1

Faculteit Elektrotechniek - Leerstoel ES Tentamen Schakeltechniek. Vakcode 5A050, 17 november 2004, 9:00u-12:00u

Digitale Systemen (EE1 410)

Project Digitale Systemen

Proeftentamen Digitale technieken

Basisconcept VHDL. Digitaal Ontwerpen Tweede studiejaar. Wim Dolman. Engineering, leerroute Elektrotechniek Faculteit Techniek

Digitale technieken Deeltoets II

Antwoorden vragen en opgaven Basismodule

Digitaal Ontwerp Mogelijke Examenvragen

Proeftentamen in1211 Computersystemen I (NB de onderstreepte opgaven zijn geschikt voor de tussentoets)

Inleiding Digitale Techniek

Deeltoets Digitale technieken

Faculteit Elektrotechniek - Capaciteitsgroep ICS Tentamen Schakeltechniek. Vakcodes 5A010/5A050, 19 januari 2004, 9:00u-12:00u

Digitale Systeem Engineering 1. Week 1 VHDL basics, datatypes, signal assignment Jesse op den Brouw DIGSE1/

Opgaven. en uitwerkingen bij het boek Digitale Techniek. Jesse op den Brouw

Digitale Systeem Engineering 1

Sequentiële schakelingen

Digitale Systeem Engineering 1

EE1410: Digitale Systemen BSc. EE, 1e jaar, , 4e college

Tentamen Elektronische Schakelingen (ET1205-D2)

Digitale Systeem Engineering 2

Toets In2305-ii Embedded Programming Dinsdag 28 November 2006, 15:45-16:30

Ontwerp van digitale systemen. in VHDL

VOORBLAD SCHRIFTELIJKE TOETSEN

Lab6: Implementatie video timing generator

clk_32768 mins_up secs_up countdown clear time_zero

Proeftentamen in1211 Computersystemen I (Opm: de onderstreepte opgaven zijn geschikt voor de tussentoets)

Wouter Geraedts Processen & Processoren

Logische functies. Negatie

Inleiding Digitale Techniek

EE1410: Digitale Systemen BSc. EE, 1e jaar, , 8e hoorcollege

Tentamen Computersystemen

EE1410: Digitale Systemen BSc. EE, 1e jaar, , 10e hoorcollege

Voorbeeldtentamen Inleiding programmeren (IN1608WI), Oktober 2003, , Technische Universiteit Delft, Faculteit EWI, Afdeling 2.

Hoofdstuk 4. Digitale techniek

vrijdag 20 januari 2006 Blad 1 tijd: uur achternaam: voorletters: identiteitsnummer: opleiding:

Sequentiële Logica. Processoren 24 november 2014

scc = b) CD AB

Today s class. Digital Logic. Informationsteknologi. Friday, October 19, 2007 Computer Architecture I - Class 8 1

Toestandentabel van een SR-FF. S R Qn Qn onbep onbep SET SET RESET RESET

Combinatorisch tegenover sequentieel

Zelftest Inleiding Programmeren

OPDRACHTEN PRACTICUM DIGSE1. J.E.J op den Brouw De Haagse Hogeschool Opleiding Elektrotechniek 19 maart 2016

Tutorial. Quartus II. State machine editor. State machine wizard

Van Poort tot Pipeline. Ben Bruidegom & Wouter Koolen-Wijkstra AMSTEL Instituut Universiteit van Amsterdam

von-neumann-architectuur Opbouw van een CPU Processoren 1 december 2014

Slimme schakelingen (2)

Digitale Systeem Engineering 1

Toets 1 IEEE, Modules 1 en 2, Versie 1

Tentamen Programmeren in C (EE1400)

Combinatorische schakelingen

Handleiding Scorebord Horstacker (Nijmegen) Wildcats; november 2011; Versie 1.1 Page 1

b) Teken op de bijlage welke lampjes van het klokje branden om 19:45:52. Schrijf eronder hoe je dit bepaald/berekend hebt. (3p)

Scan-pad technieken. Zet elk register om in een scan-pad register (twee opeenvolgende D-latches: master-slave):

Oefeningen Digitale Elektronica (I), deel 4

Digitale Systeem Engineering 2

Aansturing van een stappenmotor

EE1410: Digitale Systemen BSc. EE, 1e jaar, , 1e college

Digitale Techniek. Jesse op den Brouw. Een inleiding in het ontwerpen van digitale systemen. Deel 2

Digitale Techniek. Jesse op den Brouw. Een inleiding in het ontwerpen van digitale systemen. Eerste druk

Processoren. Marc Seutter & David N. Jansen 12 November 2013

EE1410: Digitale Systemen BSc. EE, 1e jaar, , 3e college

De CPU in detail Hoe worden instruc4es uitgevoerd? Processoren 28 februari 2012

ES1 Project 1: Microcontrollers

Wouter Geraedts Processen & Processoren

Hoe werkt een computer precies?

Practica bij het vak. Inleiding tot de Elektrotechniek: Practicum 2 Analoge versus digitale signalen en hun overdracht

Tentamen Elektronische Schakelingen (ET1205-D2)

Labo-oefeningen Automatisatie (Experimentele fase)

Appendix symbolen Symbolen voor logische schakelingen III Symbolen voor flip-flop geheugenelementen A.18 A.19 A.20 A.21 A.22 A.23

Digitale technieken Combinatorische en sequentiële logica

Tutorial. Quartus II. State machine editor. State machine wizard

Hertentamen Lineaire Schakelingen (EE1300)

Ontwerpmethoden. Doelstelling

Technology, Innovation & Society Delft

EE1410: Digitale Systemen BSc. EE, 1e jaar, , 6e hoorcollege

Digital Systems (Exam) (TI2720-B)

ES1 Project 1: Microcontrollers

Project Name: New project

Wouter Geraedts Processen & Processoren

Ben Bruidegom. Reconstruction: NLT-module Digitale techniek Context: Disco

Tentamen Elektronische Signaalbewerking (ET2405-D2) 25 augustus 2008, 14:00 17:00 uur. [Nienke, gefeliciteerd met je verjaardag!]

Hoofdstuk 5: Signaalverwerking

Transcriptie:

Toets igitale Systemen 0/06/2006, 8.45 0.30 uur e toets is open boek en bestaat uit 0 multiple-choice (MC) vragen en 3 open vragen. e MC-vragen dienen beantwoord te worden op het uitgereikte MC-formulier. Enkele aanwijzingen bij het invullen van de MC-formulieren: slechts antwoord is het correcte antwoord (NB: a,b,c,d staan door elkaar) vul de gekozen vakjes helemaal in (liefst met ballpoint, of met potlood) vul het formulier pas aan het einde in om fouten te voorkomen geen veranderingen aanbrengen: haal dan een nieuw formulier het onbeantwoord laten van een vraag werkt altijd in uw nadeel vergeet niet uw studienummer in te vullen (cijfers en vakjes!) U mag het boek "Contemporary Logic esign", het VHL boek, en eventuele prints van het college slides bij u hebben. Verder dus niets! Wij benadrukken dat u tijdens toetsen het tentamen dus GEEN gebruik mag maken van oude examens en toetsen. Gebruikt u deze toch dan zijn de tentamen fraude regels van toepassing. e toets is niet verplicht maar kan u in sommige gevallen van een 5 naar een 6 helpen bij het eindtentamen. Succes!! A. MC-vragen (gewicht: 0 6 % = 60 %) Vraag Gegeven bijgaand circuit: A Q it circuit is B Q a. een latch met geen verboden ingangscombinatie b. een latch; AB = 0 is de verboden ingangscombinatie c. geen bruikbaar geheugenelement: de Hold-combinatie ontbreekt d. geen van bovenstaande antwoorden. Vraag 2 Gegeven het volgende circuit met positive edge-triggered filpflops: In FF Q FF Q FF Q FF Q Out CLK CLK: t t 2 t 3 t 4 t 5 t 6 t 7 t 8 t 9...

Indien voor tijdstip t op In het constante signaal X wordt gezet, wanneer wordt X op zijn vroegst op Out waargenomen? Op of direct na: a. t 4 b. t 5 c. t 6 d. t 7 of later. Vraag 3 Welke van de volgende vereenvoudigingen is correct? A B C a. F = ((a + b )(a + c)) b. F = a d + c (a + bd) c. F = a(c + b) + cb + bd d. geen van bovenstaande antwoorden. F Vraag 4 Gegeven bijgaand circuit: e ROM heeft de volgende inhoud: A A0 0 ---------------------- 0 0 0 0 0 0 0 0 a b 2 bit ROM 2:4 EC A A0 0 S S0 G 0 2 3 F Welke van de volgende vereenvoudigingen is correct? c a. F = ca + cb b. F = c (a b) c. F = (a b) + cb d. geen van bovenstaande antwoorden. 2

Vraag 5 Gegeven de berekening C = A B in 2 s complement notatie. Er geldt A = 000 en C = 000. Wat is de waarde van B? a. B = -8 b. B = 46 c. B = 4 d. B kan niet in een 6-bit 2 s complement representatie worden berekend wegens overflow. Vraag 6 Gegeven de volgende elta I assembly code: set ld and add st xor add c 0000b 0000b 0000b R 0000b 000000b Wat gebeurt met A, Z en C na de executie van de laatste instructie? a. A = 08 H, C = 0, Z = 0 b. A = 08 H, C =, Z = 0 c. A = 09 H, C = 0, Z = d. A = 09 H, C =, Z = 0 Vraag 7 e onderstaande schakeling bestaat uit een nand -gate en een nor -gate waarop 4 signalen zijn aangesloten volgens de 9-waarden stdlogic standard. e uit -signaal is eveneens een stdlogic signaal. Wat is de waarde van het uitgangssignaal uit? (Hint: gebruik de Uittreksel van std_logic_64 ) a. U b. L c. X d. Z 3

Vraag 8 Gegeven is een hardware component met de volgende entity en architecture beschrijving: entity onbekend is port (a, b, c: in bit; d: out bit); end onbekend; architecture gedrag of onbekend is P: process (b, c) is if (b= ) then d<= 0 ; elsif (c event and c= 0 ) then d<=not(a); else d<=not(a); end if; end process; end gedrag; Welk van de onderstaande beweringen is juist? a. e component is een -flipflop met c als klok die werkt op alleen de neergaande flank en heeft tevens een asynchrone reset. b. e component is een -flipflop met c als klok die werkt op beide flanken en heeft tevens een asynchrone reset. c. e component is een T-flipflop met c als klok die werkt op beide flanken en heeft tevens een synchrone reset. d. e component is een T-flipflop met c als klok die werkt op beide flanken en heeft tevens een asynchrone reset. Vraag 9 Hieronder is de beschrijving van een entity schakeling gegeven met een aantal mogelijke architectures: entity schakeling is port (a, b, c: in bit; d: out bit); end schakeling; architecture een of schakeling is process (a,b) if (b= ) then d<=a; end process; end een; architecture twee of schakeling is process (a,b,c) if (c event and c= ) then if (b= ) then d<= 0 ; else d<=a; end if; end if; end process; end twee; 4

architecture drie of schakeling is process (b) if (b= ) then d<=a; end if; end process; end drie; architecture vier of schakeling is process (a,b,c) if (b= ) then d<= 0 ; elsif (c event and c= ) then d<=a; end if; end process; end vier; architecture vijf of schakeling is process (a) if (b= ) then d<=a; end if; end process; end vijf; Zie bovenstaande beschrijving van schakeling. Welke uitspraak is correct? a. architecture een beschrijft de werking van een flipflop met het signaal a als input, het signaal b als reset, en het signaal c als klok. b. architecture een beschrijft de werking van een latch met het signaal a als input en het signaal b als enable. c. architecture drie beschrijft de werking van een latch met het signaal a als input en het signaal b als enable. d. architecture vijf beschrijft de werking van een flipflop met het signaal a als input en het signaal b als klok. 5

Vraag 0 Hieronder wordt een beschrijving gegeven van een 4-bits comparator. e binaire signalen a en b worden vergeleken. Het resultaat hiervan wordt de boolean c. We geven 3 entitities en een architecture: --mogelijkheid : library IEEE: use IEEE.std_logic_64.all; use IEEE.std_logic_arith.all; entity comparator is port (a: in unsigned(3 downto 0); b: in unsigned(3 downto 0); c: out boolean); end comparator; --mogelijkheid 2: library IEEE: use IEEE.std_logic_64.all; use IEEE.std_logic_arith.all; entity comparator is port (a: in signed(3 downto 0); b: in signed(3 downto 0); c: out boolean); end comparator; --mogelijkheid 3: library IEEE: use IEEE.std_logic_64.all; use IEEE.std_logic_arith.all; entity comparator is port (a: in unsigned(3 downto 0); b: in std_logic_vector(3 downto 0); c: out boolean); end comparator; architecture werking of comparator is c <= (a < b); end werking; Welke van de drie entities wordt door de VHL compiler niet geaccepteerd? a. mogelijkheid wordt niet geaccepteerd. b. mogelijkheid 2 wordt niet geaccepteerd. c. mogelijkheid 3 wordt niet geaccepteerd. d. alle drie worden niet geaccepteerd. 6

Uittreksel van std_logic_64 ------------------------------------------------------------------- -- tables for logical operations ------------------------------------------------------------------- -- truth table for "and" function CONSTANT and_table : stdlogic_table := ( -- ---------------------------------------------------- -- U X 0 Z W L H - -- ---------------------------------------------------- ( 'U', 'U', '0', 'U', 'U', 'U', '0', 'U', 'U' ), -- U ( 'U', 'X', '0', 'X', 'X', 'X', '0', 'X', 'X' ), -- X ( '0', '0', '0', '0', '0', '0', '0', '0', '0' ), -- 0 ( 'U', 'X', '0', '', 'X', 'X', '0', '', 'X' ), -- ( 'U', 'X', '0', 'X', 'X', 'X', '0', 'X', 'X' ), -- Z ( 'U', 'X', '0', 'X', 'X', 'X', '0', 'X', 'X' ), -- W ( '0', '0', '0', '0', '0', '0', '0', '0', '0' ), -- L ( 'U', 'X', '0', '', 'X', 'X', '0', '', 'X' ), -- H ( 'U', 'X', '0', 'X', 'X', 'X', '0', 'X', 'X' ) -- - ); -- truth table for "or" function CONSTANT or_table : stdlogic_table := ( -- ---------------------------------------------------- -- U X 0 Z W L H - -- ---------------------------------------------------- ( 'U', 'U', 'U', '', 'U', 'U', 'U', '', 'U' ), -- U ( 'U', 'X', 'X', '', 'X', 'X', 'X', '', 'X' ), -- X ( 'U', 'X', '0', '', 'X', 'X', '0', '', 'X' ), -- 0 ( '', '', '', '', '', '', '', '', '' ), -- ( 'U', 'X', 'X', '', 'X', 'X', 'X', '', 'X' ), -- Z ( 'U', 'X', 'X', '', 'X', 'X', 'X', '', 'X' ), -- W ( 'U', 'X', '0', '', 'X', 'X', '0', '', 'X' ), -- L ( '', '', '', '', '', '', '', '', '' ), -- H ( 'U', 'X', 'X', '', 'X', 'X', 'X', '', 'X' ) -- - ); -- truth table for "not" function CONSTANT not_table: stdlogic_d := -- ------------------------------------------------- -- U X 0 Z W L H - -- ------------------------------------------------- ( 'U', 'X', '', '0', 'X', 'X', '', '0', 'X' ); ------------------------------------------------------------------- -- overloaded logical operators ( with optimizing hints ) ------------------------------------------------------------------- FUNCTION "and" ( l : std_ulogic; r : std_ulogic ) RETURN UX0 IS RETURN (and_table(l, r)); EN "and"; FUNCTION "nand" ( l : std_ulogic; r : std_ulogic ) RETURN UX0 IS RETURN (not_table ( and_table(l, r))); EN "nand"; FUNCTION "or" ( l : std_ulogic; r : std_ulogic ) RETURN UX0 IS RETURN (or_table(l, r)); EN "or"; FUNCTION "nor" ( l : std_ulogic; r : std_ulogic ) RETURN UX0 IS RETURN (not_table ( or_table( l, r ))); EN "nor"; FUNCTION "not" ( l : std_ulogic ) RETURN UX0 IS RETURN (not_table(l)); EN "not"; 7

B. Open vragen (gewicht: 40%) Stel u wordt gevraagd om een digitaal systeem te ontwerpen die een inbraakbeveiliging van een woonhuis realiseert. e inbraakbeveiliging kan door de eigenaar mbv. een afstandsbediening aan en uit worden gezet. Als de eigenaar zijn huis verlaat zet hij de inbraakbeveiliging aan. In de stand aan moet het systeem als volgt werken. Als het woonhuis betreden wordt (hetzij via de voordeur, hetzij via een andere ingang), wordt (via sensors) een timer geactiveerd, die na een vertragingstijd Δ een alarm doet afgaan. Indien de eigenaar voor die tijd de inbraakbeveiliging mbv. zijn afstandsbediening uit zet, is er niets aan de hand. In geval van een inbreker zal de inbraakbeveiliging echter niet uitgezet worden, waarop na Δ het alarm zal afgaan. it alarm kan alleen beëindigd worden door de inbraakbeveiliging uit te zetten. U wordt gevraagd om een FSM te ontwerpen die de besturing vormt van de inbraakbeveiliging. U heeft de beschikking over de volgende signalen: signaal betekenis: -------------------------------------------------------------------------------------------------------------- E ingangsignaal: ( enable ), E = 0: er is op uit gedrukt op de afst.bed. E = : er is op aan gedrukt op de afst.bed. S ingangsignaal: ( sensor ), S = 0: deuren en ramen zijn dicht en heel S = : deuren of ramen zijn open of kapot A uitgangsignaal: ( alarm ), A = 0: alarm niet actief A = : alarm actief Naast bovengenoemde signalen E, S, en A heeft u de beschikking over een clocksignaal CLK. Om de gewenste vertragingstijd te implementeren kunt u gebruik maken van een reeds ontworpen timer met ingangsignaal R (run timer) en uitgangsignaal T (timeout). Het gedrag van de timer kunt u bepalen aan de hand van de bijbehorende VHL specificatie (wat gebeurt er met T en hoe moet R bestuurd worden?): ENTITY timer IS PORT ( R: IN bit; -- run T: OUT bit; -- timeout CLK: IN bit -- clock ); EN timer; ARCHITECTURE timer_arch OF timer IS PROCESS (CLK) VARIABLE count: INTEGER := 0; IF (CLK event AN CLK = ) THEN IF (R = 0 ) THEN T <= 0 ; count := 0; ELSE IF (count < 00000000) THEN T <= 0 ; count := count + ; ELSE T <= ; EN IF; EN IF; EN IF; EN PROCESS; EN timer_arch; 8

Vraag (0%) Kies voor de FSM van de besturing een Moore machine en specificeer het gewenste gedrag mbv. een ASM (dit moet een ASM zijn!) met gebruikmaking van de eerder beschreven signalen A, E, R, S, T. eze ASM vormt tevens de basis voor de volgende vraag. (Ook als uw ASM fout is, wordt uw ASM als uitgangspunt gehanteerd bij de beoordeling). Vergeet niet dat de inbraakbeveiliging altijd uit gezet moet kunnen worden. Vraag 2 (5%) Ontwerp nu een hardware-oplossing voor de besturing aan de hand van uw FS/ASM. a. Schrijf de waarheidstabel op, die aangeeft hoe de nieuwe state (S i, i = 0.. 3) en uitgangsignalen (A, R) afhangen van de huidige state (S i ) en ingangsignalen (E, S, T). b. Kies een state assignment die de states S i afbeeldt op de state-variabelen Q j. e state-opvolging hoeft niet progressief te zijn. c. Hoeveel ingangsvariabelen hebben de K-maps van Q j +, A en R? Teken de K-maps alleen voor A en R, en leidt de expressies af voor A en R. Vraag 3 Gegeven het volgende systeem met de getekende componenten: Component_type I: - architecture fast - gate_delay = 3ns Systeem Component_type I: - architecture small - gate_delay = 4ns A C A C B B Component_type I: - architecture slow - gate_delay = 6ns A C Component_type II: - gate_delay = 2ns A B B C Vraag 3 a (5%) Geef de entity beschrijvingen van de getekende componenten. Let op: tel goed het aantal benodigde componenten. Let op: benut de mogelijkheid in VHL om verschillende delays te kunnen specificeren voor entities. Vraag 3 b (0%) Geef de entity beschrijving en de structurele architecture beschrijving van het gegeven systeem. Hierbij wordt aangenomen dat de benodigde componenten in de huidige werk-directory staan. Let op: vergeet niet alle benodigde declaraties te doen binnen de architecture beschrijving. 9

Uitwerkingen Toets igitale Systemen 0/06/2006, 8.30 0.30 uur MC-vragen:. b 6. d 2. a 7. c 3. c 8. d 4. a 9. b 5. d 0. c Vraag e ASM ziet er als volgt uit: S0 0 E S 0 E S S2 R = 0 E T S3 A = 0 0 0 E 0

Vraag 2 a) e toestandstabel: Huidige state Volgende state Uitgang EST 0XX 00 0 0 R A ---------------------------------------------------------------- S0 S0 S S S S 0 0 S S0 S S S2 S2 0 0 S2 S0 S2 S3 S2 S3 0 S3 S0 S3 S3 S3 S3 0 b) State assignment: state Q Q 0 ----------------------- S0 0 0 S 0 S2 S3 0 c) e K-maps van Q + 0, Q +, A en R hebben respectievelijk 5, 5, 2 en 2 variabelen (zie ook toestandstabel). e K-maps van R en A (gegeven de eerdere state assignment): R: Q : 0 Q 0 : ----------- 0 0 0 0 => R = Q. Q 0 ----------- A: Q : 0 Q 0 : ----------- 0 0 0 0 => A = Q. Q 0 -----------

Vraag 3 a) entity component is generic (gate_delay: Time = 2 ns); port (a, b: in bit; c, d: out bit); end component; entity component2 is generic (gate_delay: Time = 2ns); port (a, b, c: in bit; d: out bit); end component2; b) entity systeem is port (a, b, c, d: in bit; e, f, g: out bit); end component2; architecture circuit of systeem is --component and signal declarations component component is generic (gate_delay: Time = 2ns); port (a, b: in bit; c, d: out bit); end component; component component2 is generic (gate_delay: Time = 2ns); port (a, b, c: in bit; d: out bit); end component; signal s, s2, s3, s4: bit; -- configuration specification for C: component use entity WORK.component(fast); for C2: component use entity WORK.component(slow); for C3: component use entity WORK.component(small); C: component generic map (gate_delay => 3 ns) port map (a => a, b => b, c => s, d => s2); C2: component generic map (gate_delay => 6 ns) port map (a => c, b => d, c => s3, d => s4); C3: component generic map (gate_delay => 4 ns) port map (a => s, b => s2, c => e, d => f); C4: component2 port map (a => s2, b => s3, c => s4, d => g); end circuit; 2