UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i IN240Digitalsystemkonstruksjon Eksamensdag: 13. desember 1994 Tidforeksamen: 9.0015.00 Oppgavesettet erpå5sider. Vedlegg: Ingen Tillatte hjelpemidler: Ingen Kontroller atoppgavesetteterkomplett før dubegynneråbesvare spørsmålene. 1 Vekt 15% 1-a f(a,b,c,d) = ABCD + ACD' + A'BCD + BC'D + ACD + AB'C'D' + A'B'D' Forenkle funksjonenmestmuligpåformensumavprodukter vedåtegne Karnaughdiagram. 1-b Tegn skjema for port-implementasjon av den forenklede funksjonen. 1-c Forenkle funksjonenmestmuligpåformenprodukt avsummer. 1-d Skriv funksjonen somenlisteavmaxtermer. (Fortsettesside2.)
Eksamen iin240,13.desember 1994 Side 2 2 Vekt 15% f(x,y,z)=xy+x'z Hvisdettefunksjonsuttrykket implementeresdirekteiand-or-porter girdetopphav tilenlogiskhasard. Beskriv hvasom menes meddette,hvasomforårsaker hasarden idette tilfellet,oghvadettekanmedføreavkonsekvenser.vissåhvordan hasarden kanunngås. 3 Vekt 15% 3-a f(a,b,c,d)=ab'+ac+b'd'+bd+c'd AnvendQuine-McCluskeyalgoritmenpådennefunksjonen,ogbeskriviformavtabeller hva du gjør for å komme frem til et forenklet funksjonsuttrykk. 3-b Hva erhovedforskjellene påquine-mccluskey-algoritmen ogalgoritmen iespresso? 4 Vekt 15% 4-a Tegndiagrammerforen3-inputsNOR-portiNMOSogCMOSogforklar hvordan devirker vedforskjellige input-verdier. (Formlerfordimensjonering avtransistorer erikkeønsket, kunenenkelforklaring påbryter-nivå, dvsswitch-level) 4-b Hvilken teknologi (NMOS eller CMOS) bruker mest strøm, og hvorfor? 4-c Hvilken implementasjon vil ha kortest tidsforsinkelse i bruk,og hvorfor? 5 Vekt 15% Denne oppgaven handler omasynkronlogikk. 5-a Forklar hva 'fundamental mode' er. (Fortsettesside3.)
Eksamen iin240,13.desember 1994 Side 3 5-b En asynkron kretshareninput x,toeksitasjonsvariable Y 1 ogy 2,sekundærvariable y 1 og y 2 ogerbeskrevetvedfølgendeligninger: Y 1 =xy 1 +xy 2 ' Y 2 =y 1 y 2 +xy 1 Tegn skjema for kretsen og sett opp transisjonstabell. 5-c Finn utomkretsenharkappløp, forklar eventuelthvadegårutpåogomdeerkritiske. Beskrivhvordankretsenvirker. 6 Algoritmiske tilstandsmaskiner (vekt 25%) Figuren viser en registerblokk og en adressegenerator. Registerblokken består av 16 registere.inneholdet av registrene beskriver hvilke adresser som skal genereres.adressegeneratorenleserinnholdet avregisterblokken, ogutfradette,generererdenadresser påen 12bitsadresse-buss, Adr. Adressegeneratoren erraskidenforstand atdeneristand tilå generere en ny adresse for hver klokkpuls som den mottar på klokke-signalet, Clk. Adressegeneratoren virkerpåfølgende vis.denmåførst gjennom eninitialisering.vi antar at input-signalene, Reset og Start, er lave, dvs. de har logisk verdi lik'0'. Det første somgjøres, er atadressegeneratorenresettes. DetgjøresvedatReset trekkes høyt, dvs. til logisk verdi '1'. Når Clk så går høy,får vi 0 ut på RegblokkAdr-bussen. Dette er en peker (adresse) til registerblokken. Vi peker dermed til første lokasjon, lokasjon 0, i registerblokken. Ganske snart etterpåblirinnholdetatdennelokasjonen iregisterblokken tilgjengelig på Data-bussen. På Data-bussen står det nå følgende informasjon: bitene 0-11 inneholder en start-adresse, SA 0,bitene12-19 inneholder enlengde, L 0,ogbitene20-23 inneholder en neste-peker, NP 0,somerenpekertilnestelokasjon iregisterblokken.reset trekkes sålav igjen ogvierklaretilåbegynne. Adressegeneratoren ventersåpåatstartskal gå høy. Pådenførstestigendeklokkeanken etteratdetteskjer,skal adressegeneratoren lesedata-bussen. Startadressen, SA 0,sendesutpåAdr-bussen. Pådennestestigende klokkeanken, skaladressen påadr-bussen inkrementeres slikatadressen blirsa 0 +1.Detsamme gjentarsegpådenestestigende klokkeankene, d.v.s. Adr-bussen inkrementeresmed1påhverstigendeklokkeanke. Antallinkrementeringerergittavlengden,L 0,minus 1, d.v.s. L 0-1. La osstaeteksempel. Anta atl 0 =5.Dettebetyratviskalha4inkrementeringerogdermedfølgende5adresser utpåadr-bussen: SA 0,SA 0 +1,SA 0 +2, SA 0 +3ogSA 0 +4. Når vierferdigmedalleinkrementeringene,skal adressegeneratoren leseennylokasjon fra registerblokken. Dennelokasjonen ergittavneste-pekeren, NP 0.Desamme operasjonene, som er beskrevet overfor,gjentar seg så med de nye verdiene for startadresse, lengde og neste peker.merk:det at vi går fra en lokasjon til en annen i registerblokken, skal ikke medføre et opphold i adressegenereringen.vi skal også da overholde kravet om at en ny (Fortsettesside4.)
Eksamen iin240,13.desember 1994 Side 4 adresseskalgenererespåhver klokkeanke. Adressegenereringen avsluttespåfølgendevis.hvergangvileserennylokasjon fra registerblokken, skal lengden, L,sjekkes.Hvis den er lik 0,betyr det at vi skal avslutte, og hoppe til tilstanden vivariførvistartetinitialiseringen. End skal datrekkeshøy. Påallestigendeklokkeanker skalreset sjekkes. DersomReset er aktiviserthøy,skaladressegeneratoren resettes. For enkelhetsskyld kan End være høy når adressegeneratoren er resatt. 6-a Anta at vi har følgende verdier i registerblokken ($ betyr at tallet er hexadesimalt): SA 0 =$100 L 0 =$04 NP 0 =$4 SA 4 =$600 L 4 =$03 NP 4 =$7 L 7 =$00 Anta videre at Start og Reset er lave,d.v.s.har logisk verdi lik '0'.Lag et tidsdiagram av hva som skjer med kretsen når adressegeneratoren først resettes ved at Reset trekkes høy ienklokkeperiode, ogsåenklokkeperiode senere,startesvedatstarttrekkeshøyien klokkeperiode. Tidsdiagrammet skalvise de logiske verdienepåfølgendesignalerogbusser: Clk, Reset, RegblokkAdr, Data, Start, Adr og End i tiden fra adressegeneratoren resettes og startestildenhargjort segferdigmedåutføre 'programmet' iregisterblokken. 6-b Lag et utvidetasmkartavadressegeneratoren. 6-c Lag et blokk-diagram av adressegeneratoren. Skill kontroll-del fra data-del. Kontroll-delen tegnes som en boks med input-of output-signaler. Vi er ikke interessert i innmaten av boksen her,menkunhvilkeinput-ogoutput-signaler vibehøver.detsamme gjelderdatadelen, somutfører registeroperasjonene iasmkartet.hervildetriktignokværebehovfor ereregister-deler,menhverdelskalkuntegnessomen boksmedinput-ogoutput-signaler. Gi passende navnpåkontroll-signalene somkontroll-delen mågenerere. 6-d Tegn ettilstandsdiagram avkontroll-delen. (Fortsettes side5.)
Eksamen iin240,13.desember 1994 Side 5 6-e Implementer kontroll-delen medd-ip-oper; først vedåbrukesåfåip-oper sommulig, såvedåbruke'one-hot code' metoden (enip-opprtilstand). Registerblokk 4 bit 8 bit 12 bit 0 NP 0 L 0 SA 0 1 NP 1 L 1 SA 1 2 NP 2 L 2 SA2... 15 NP 15 L 15 SA 15 24 Regblokk_Adr 4 Data Start Reset Clk Adressegenerator End 12 Adr