UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i IN 240 çç Digital Systemkonstruksjon Eksamensdag: 6. desember 2000 Tid for eksamen: 9.00 ç 15.00 Oppgavesettet er p 5 sider. Vedlegg: Tillatte hjelpemidler: Ingen Ingen Kontroller at oppgavesettet er komplett f r du begynner besvare sp rsm lene. Oppgave 1 1-a èvekt 5 èè En krets har inngangene a,b,c,d og en utgang gitt av funksjonen: F=a'b'd+a'bcd+ac'd+ab'cd Forenkle funksjonen ved bruke Karnaugh-diagram og implementer den med et minimalt antall 2-input NAND-porter. Anta at inngangssignalene çnnes i b de invertert og ikke-invertert utgave. 1-b èvekt 5 èè Hva menes med hasard i en kombinatorisk krets? Er dette et problem i en synkron sekvensiell krets? Begrunn svaret. 1-c èvekt 5 èè Gitt funksjonen: F=ab+a'c' Dersom funksjonen implementeres med AND, OR og NOT porter er det da mulighet for at hasarder oppst r? Begrunn svaret. Vis eventuelt hvordan hasarder kan unng s for den gitte funksjonen. èfortsettes p side 2.è
Eksamen i IN 240, 6. desember 2000 Side 2 Oppgave 2 Digitalt termometer Du skal i denne oppgaven designe og implementere et styringssystem til et digitalt termometer som ser ut som f lger: MAX MIN RESET Termometeret m ler temperaturen è0-99 o Cè gjennom en innebygd sensor og viser temperaturen p et display best ende av to -segmenter. Normalt vises n v rende temperatur. Brukeren kan velge heller f vist registrert maksimum eller minimumstemperatur ved trykke inn henholdsvis MAX eller MIN trykknappen. Da skal denne temperaturen vises i 2s f r displayet g r tilbake til vise n v rende temperatur. Termometeret skal hele tiden oppdatere maksimum og minimumstemperaturen, dersom n v rende temperatur g r henholdsvis over eller under den som ligger lagret i termometeret. Brukeren kan çnullstilleç lagret maksimum og minimumstemperatur ved trykke p RESET. Idet brukeren gj r det skal det vises ç00ç p displayet i 1s og maksimum og minimumstemperaturen settes lik n v rende temperatur. Det çnnes tre -bits registre for henholdsvis n v rende, maksimum og minimumstemperatur. Hvert av dem kan representeres med f lgende symbol: Data Inn Data Ut Load En trykknapp gir ut ç1ç i en klokkeperiode n r den trykkes ned. En kan anta at signalet fra en trykknapp er fri for st y. En kan videre anta at temperatursensoren selv er i stand til oppdatere registeret for n v rende temperatur. For eksempel, hvis temperatursensoren m ler 25 o C, lagrer den bin rverdien til dette tallet i registeret. Displayet har innebygd dekoding slik at det tar imot et syvbits bin rtall p inngangen. Dette er korresponderer direkte med tallet è00-99è som blir vist p de to -segmentene. Anta at det çnnes en oscillator med klokkefrekvens lik 1Hz tilgjengelig, samt at brukeren kun trykker ned en av trykknappene av gangen. Spesiçser eventuelt egne forutsetninger du gj r utover oppgaveteksten. 2-a èvekt 5èè Beskriv hvordan to syvbits bin rtall A = A 6 A 5 A 4 A 3 A 2 A 1 A 0 og B = B 6 B 5 B 4 B 3 B 2 B 1 B 0 kan sammenlignes ved hjelp av digitale logiske porter for vise enten A>B, A = B eller A<B. Det skal benyttes en utgang for èfortsettes p side 3.è
Eksamen i IN 240, 6. desember 2000 Side 3 hver av disse, slik at kretsen f r tre utganger. For eksempel, dersom A>B skal utgangen for ça >Bç g h y, mens de to andre er lave. Kretsen kan representeres med f lgende symbol: A B A>B A=B A<B 2-b èvekt 20èè Design en krets for realisere termometerets registrering av maksimum og minimumstemperatur. Ta ogs med i denne kretsen hvordan du kan f displayet til vise nsket informasjon i henhold til beskrivelsen over. Se bort fra innlesningen av trykknapper i denne omgang. Benytt symbolene som er deçnert over sammen med eventuellèeè komponentèerè du mener kreves i tillegg. Tegn deretter et ASM-diagram for en tilstandsmaskin som sjekker trykknappene og s rger for at brukervalg f rer til at displayet viser tilh rende informasjon i henhold til beskrivelsen over. Diagrammet m samsvare med de designvalg som er tatt i f rste del av dette punktet. 2-c èvekt 15èè Implementer ASM-diagrammet du beskrev i forrige punkt i form av en synkron tilstandsmaskin. Bruk D-vipper til lagre tilstandsvariablene. Tegn skjema for kretsen du designer. Bruk s f komponenter som mulig. Kretsen du designer m sammen med èeventuelt en modiçsert utgave avè kretsen du designet i punkt 2-b realisere et fungerende termometer i henhold til beskrivelsen over. 2-d èvekt 15èè Skriv et VHDL program i çbehavioral styleç for hele systemet du beskrev i punkt 2-b. Programmet skal b de s rge for at termometeret registrerer maksimum og minimumstemperatur og er i stand til behandle tastetrykk. Benytt f lgende entitet for systemet: ENTITY termkontroll IS PORT è clk : IN BIT; -- Klokke reset : IN BIT; -- Trykknapp som er ``1'' n r den trykkes inn max : IN BIT; -- Trykknapp som er ``1'' n r den trykkes inn min : IN BIT; -- Trykknapp som er ``1'' n r den trykkes inn senstemp : IN INTEGER RANGE 0 TO 99; -- Registerutgang som inneholder -- n v rende temperatur display : OUT INTEGER RANGE 0 TO 99; -- Utgang som skal g til display è; END termkontroll; èfortsettes p side 4.è
Eksamen i IN 240, 6. desember 2000 Side 4 Oppgave 3 Minne 3-a èvekt 5èè Hvilke hovedtyper av kretser çnnes for permanent lagring av data og program ètradisjonelt kalt ROMè? Hva er fortrinnet med de nyeste typene av kretser framfor de eldre? 3-b èvekt 5èè Hva er en RAM-krets og hvilke fordeler og ulemper har den i forhold til kretstypen i punkt 3-a? 3-c èvekt 10èè Et minnesystem basert p RAM skal designes. F lgende RAM-krets er tilgjengelig: 22 RAM ADR DATA CS 16 DATA: Data inn/ut (16 linjer) ADR: Adresse (22 linjer) CS: Chip Select R/W: Read/Write R/W Den har en lagringskapasitet p 8 Mbyte og kommuniserer med 16 datalinjer. Datalinjene er aktive n r CS=ç1ç, mens de er ikke-aktive èh yohmigeè n r CS=ç0ç. De 22 adresselinjene kan aksessere 2 22 =4M lokasjoner 2 byte ienram-krets. Minnesystemet skal v re p 64 Mbyte totalt og kobles til en prosessor som er representert med f lgende forenklede symbol: CPU DATA ADR 32 24 DATA: Data inn/ut (32 linjer) ADR: Adresse (24 linjer) R/W: Read/Write R/W Prosessoren skal kunne lese og skrive data med 32 bits ordbredde. Bestem det n dvendige antallet RAM-kretser for lage minnesystemet. Tegn deretter et kretsskjema som realiserer det ved bruke symbolene som er deçnert over sammen med eventuellèeè komponentèerè du mener kreves i tillegg. èfortsettes p side 5.è
Eksamen i IN 240, 6. desember 2000 Side 5 Oppgave 4 Embedded Systemer 4-a èvekt 5èè Hvilke grunnleggende egenskaper har et çreaktivt real-time embedded systemç som skiller det fra en tradisjonell datamaskin? Hvorfor kan det v re viktig med en formell designmetodikk for slike systemer? 4-b èvekt 5èè Hva g rikorthet de to hovedtypene av validering av embedded systemer ut p? Hvilke tre trinn best r vanligvis syntesefasen av for et embedded system?