Kodutöö põhineb ühel konkreetsel osaliselt
määratud 4 sisendi ja 4 väljundiga loogikafunktsioonide
süsteemist. Igal üliõpilasel on oma loogikafunktsioonide
süsteem. Funktsioonide leidmine toimub analoogselt "Diskreetse
matemaatika"
kodutööga. Peamine erinevus seisneb selles, et korrutamisel
tuleb lisaks 7-le kasutada ka 5, 11 (B) ja 13 (D). 8-kohaline korrutis annab
1-de piirkonna, selle jagatis 3-ga annab määramatuste piirkonna.
Seega moodustatakse funktsioonid järgmiselt:
1. f-n: Matrikli numbrit korrutatakse 5-ga, kuni moodustub 8-kohaline
16-arv.
2. f-n: Matrikli numbrit korrutatakse 7-ga, kuni moodustub 8-kohaline
16-arv.
3. f-n: Matrikli numbrit korrutatakse B-ga (11-ga), kuni moodustub
8-kohaline 16-arv.
4. f-n: Matrikli numbrit korrutatakse D-ga (13-ga), kuni moodustub
8-kohaline 16-arv.
Saadud tulemused annavad 1-de piirkonna (dubleeritud väärtusi tuleb
ignoreerida). Määramatuste piirkond saadakse 3-ga jagamisel
(v.a. need väärtused, mis on juba 1-de piirkonnas). Kui
korrutamisel ei teki 8-kohalist arvu (vaid 7- ja 9-kohalised), siis tuleb
kasutada 7-kohalist tulemust.
Järgnev näide on arvutatud unix keskkonnas kasutades utiliiti bc. Matriklinumbrile 001234 vastavad arvutatud väärtused on alla joonitud. Konkreetsed võtmesõnad võivad erineda, nt. obase asemel võib vanemates versioonides olla ob.
mini:~/>bc obase=16 001234 4D2 ibase=16 4D2*5*5*5*5*5*5*5*5 1CBB3692 1CBB3692/3 993BCDB 4D2*7*7*7*7*7*7*7 3C92C69E 3C92C69E/3 1430ECDF 4D2*B*B*B*B*B*B 824D55A2 824D55A2/3 2B6F1C8B 4D2*D*D*D*D*D 1B4F344A 1B4F344A/3 91A66C3 quit
Seega on tulemuseks järgmine funktsioonide süsteem:
f1(x1,x2,x3,x4) =
Σ(1,2,3,6,9,11,12) 1(13)-
f2(x1,x2,x3,x4) =
Σ(2,3,6,9,12,14) 1(0,1,4,13,15)-
f3(x1,x2,x3,x4) =
Σ(2,4,5,8,10,13) 1(1,6,11,12,15)-
f4(x1,x2,x3,x4) =
Σ(1,3,4,10,11,15) 1(6,9,12)-
Sama süsteem tõeväärtustabelina:
0000 0-00 0001 1--1 0010 1110 0011 1101 0100 0-11 0101 0010 0110 11-- 0111 0000 1000 0010 1001 110- 1010 0011 1011 10-1 1100 11-- 1101 --10 1110 0100 1111 0--1
Nominaaltähtaeg on 7. aprill. Erandjuhul ja mõjuval põhjusel on lubatud ka hilisem esitamine, kuid sellisel juhul tuleb eelnevalt kokku leppida, et oleks tagatud tööde kontroll enne eksamit. Mõjuva põhjuseta hilinenud töö punkte korrutatakse 0,985-ga iga hilinenud päeva kohta (0,9 nädala kohta). Korrektselt vormistatud tööd eraldi kaitsmist ei vaja. Vigade parandused on lubatud eeldusel, et enne eksamit on ka parandused esitatud.
1. [5p] Minimeerida funktsioonide süsteem kasutades mitmevalentsel loogikal põhinevaid meetodeid, st. kõik funktsioonid tuleb minimeerida korraga. Minimeerida võib nii 1-de kui ka 0-de järgi. Minimeerida võib nii käsitsi kui ka vastavate programmide abil. Programmide kasutamine on eelistatud, sest võimaldab proovida erinevaid kombinatsioone. Esitada tuleb nii minimeerimise käik kui ka lõpptulemus, programmide kasutamisel ka parameetrid. Lõpptulemus esitada kas implikant-tabelina või DNK-na (KNK-na). Soovitav on esitada nii lähteülesanne kui ka tulemus implikant-tabelina, sest selline esitus lihtsustab oluliselt tulemuse õigsuse kontrolli (st. võimaldab pool-automaatset kontrolli).
2. [15p] Saadud minimeeritud funktsioonide süsteem teisendada (heuristiliselt) mitmetasemeliseks loogikaelementide skeemiks (võrguks). Kasutatavad elemendid on 2- ja 3-sisendilised AND, NAND, OR, NOR ja XOR ning NOT (viimane loomulikult ühe sisendiga). Optimeerimisel taotleda tulemuse minimaalsust - pindale, viide, testitavus vms. Esitada tuleb teostatavad teisendused koos põhjendustega - tuumade otsimised, funktsioonide dekompositsioonid, jagamised jne. Lõpptulemusega (skeem ja/või võrrandite süsteem) peab kaasnema ka selle suuruse ja kriitilise tee hinnang. Mõõtühikute kasutamine on vaba, kuid nende valikut peab põhjendama.
3. [5p] Valideerida skeemi korrektsust modelleerimise teel. Kontrollima peab nii 1. kui ka 2. punkti tulemust, st. võrdlema lähteülesandega. Modelleerimiseks võib kasutada suvalist VHDL simulaatorit. Simuleerimistulemustel peavad olema näha kõikide väljundite väärtused kõikidel sisendkombinatsioonidel.
Hindamisel arvestatakse lahenduste ja analüüsi korrektsust. Maksimaalse hinde saamiseks tuleb arvestada võimalusega, et osa funktsioone võib olla otstarbekam realiseerida inverteeritult. Samuti peab arvestama hüpoteetilise teegi loogikaelementide parameetritega: 2-NAND - suurus 1.0 / viide 1.0; NOT, 2-NOR, 3-NAND - 1.5 / 1.5; 2-OR, 2-AND, 2-XOR, 3-NOR - 2.0 / 2.0; 3-OR, 3-AND, 3-XOR - 2.5 / 2.5 ("3-NAND" on 3-sisendiga NAND element, parameetrid on ühikuteta, sest kõigi elementide parameetrite normaliseerimise aluseks on 2-NAND).
Töö peab olema esitatud elektrooniliselt.
Soositud formaadiks Portable Document Format (.PDF) (võ mõni muu
üldlevinud formaat, kus lehekülje kujundus ei sõltu printerist).
Kõik ülejäänud formaadid on ebasoosingus ja on lubatud
ainult erikokkuleppel. Siia kuuluvad nii HTML (ka lingina), Rich Text Format
(.RTF), MS Word Document (.DOC, DOCX), LibreOfiice/OpenOffice Document
(.ODT, .SXW) kui ka StarOffice Document (.SDW). Kui on soov esitada ka
käsitsi kirjutatud lehti, siis tuleks seda teha töösse
lisatud piltidena.
Fail (või link) tuleb üles laadida Moodle'sse, lisad on lubatud.
Võib saata ka e-postiga - kas
peeter.ellervee (at)
taltech.ee või
LRV (at) ati.ttu.ee.