ŽILINSKÁ UNIVERZITA V ŽILINE Katedra telekomunikácií Optimalizácia informačného obsahu v systéme LMS Moodle Martin Nottný 2007
Optimalizácia informačného obsahu v systéme LMS Moodle DIPLOMOVÁ PRÁCA MARTIN NOTTNÝ ŽILINSKÁ UNIVERZITA V ŽILINE Katedra telekomunikácií Študijný odbor: TELEKOMUNIKÁCIE Vedúci diplomovej práce: doc. Ing. Miroslav Hrianka, PhD. Stupeň kvalifikácie: inžinier (Ing.) Dátum odovzdania diplomovej práce: 18.5.2007 ŽILINA 2007
ABSTRAKT Diplomová práca sa zaoberá multimediálnym CBT kurzom pre dištančné vzdelávanie. Projekt je realizovaný ako dynamické HTML s Flash animáciami. Diplomová práca slúži ako študijný kurz pre študentov zaoberajúcich sa problematikou logických obvodov.
Žilinská univerzita v Žiline,, Katedra telekomunikácií ANOTAČNÝ ZÁZNAM - DIPLOMOVÁ PRÁCA Priezvisko, meno: Nottný Martin školský rok: 2006/2007 Názov práce: Optimalizácia informačného obsahu v systéme LMS Moodle Počet strán: 89 Počet obrázkov: 82 Počet tabuliek: 3 Počet grafov: 0 Počet príloh: 3 Použitá lit.: 16 Anotácia: Táto diplomová práca sa zaoberá multimediálnym CBT kurzom pre dištančné vzdelávanie. Projekt je realizovaný ako dynamické HTML s Flash animáciami. Diplomová práca slúži ako študijný kurz pre študentov zaoberajúcich sa problematikou logických obvodov. Anotácia v cudzom jazyku: This diploma work deals with multimedia CBT course for distance education. Project is realized as dynamic HTML with Flash animations. Diploma work is used as an educational course for students, which are engaged in logical circuit problematic. Kľúčové slová: CBT kurz, dištančné vzdelávanie, e-learning, popis logických funkcií, sekvenčné logické obvody, posuvné registre Vedúci práce: doc. Ing. Miroslav Hrianka, PhD. Recenzent práce: Ing. Maslák Anton Dátum odovzdania práce: 18. mája 2007
OBSAH ZOZNAM OBRÁZKOV A TABULIEK ZOZNAM SKRATIEK A SYMBOLOV 1. ÚVOD...1 1.1. E-learning...2 1.1.1. Proces e-learningu...3 1.1.2. Vlastnosti e-learningu...4 1.1.3. LMS (Learning Management System)...5 2. NÁVRH A REALIZÁCIA MULTIMEDIÁLNEHO KURZU...6 2.1. Výber formátov pre optimálnu štruktúru kurzu...6 2.1.1. Porovnanie GIF a FLASH animácií...6 2.2. Nástroje na realizáciu kurzu...7 2.3. Animácie... 11 2.4. Popis činnosti kurzu... 12 2.5. Požiadavky kurzu... 14 3. MULTIMEDIÁLNY CBT KURZ...16 3.1. SPÔSOBY POPISU LOGICKÝCH FUNKCIÍ... 16 3.1.1. Úvod...16 3.1.2. Pravdivostná tabuľka...17 3.1.3. Zoznam stavových indexov...18 3.1.4. Logický (algebraický) výraz...19 3.1.5. Schematické značky...21 3.1.6. Vennov diagram...22 3.1.7. Mapa logickej funkcie...23 3.1.8. Vyjadrenie logickej funkcie n rozmerným telesom...25 3.1.9. Hypertextové odkazy...28 3.1.10. Testovanie vedomostí...32 3.2. SYNTÉZA SEKVENČNÝCH LOGICKÝCH OBVODOV... 35 3.2.1. Úvod...35 3.2.2. Spôsoby popisu správania SLO...37 3.2.3. Popis správania bistabilných preklápacích obvodov...39
3.2.4. Asynchrónny bistabilný preklápací obvod typu S - R...43 3.2.5. Synchrónny bistabilný preklápací obvod typu S - R...46 3.2.6. Dvojfázový bistabilný preklápací obvod typu S - R (master - slave)48 3.2.7. Dvojfázový bistabilný preklápací obvod typu J - K (master - slave) 50 3.2.8. Dvojfázový bistabilný preklápací obvod typu D (reagujúci na aktívnu hranu riadiaceho impulzu)...55 3.2.9. Hypertextové odkazy...57 3.2.10. Testovanie vedomostí...61 3.3. POSUVNÉ REGISTRE... 64 3.3.1. Úvod...64 3.3.2. Návrh sériového posunu vpred s použitím preklápacích obvodov typu J - K...65 3.3.3. Návrh sériového posunu vpred s použitím preklápacích obvodov typu D...68 3.3.4. Návrh sériového posunu vzad s použitím preklápacích obvodov typu J - K...69 3.3.5. Návrh sériového posunu vzad s použitím preklápacích obvodov typu D71 3.3.6. Analýza trojbitového posuvného registra vpred...73 3.3.7. Kruhový posuvný register...76 3.3.8. Univerzálny posuvný register...78 3.3.9. Hypertextové odkazy...81 3.3.10. Testovanie vedomostí...81 4. LMS SYSTÉM MOODLE...85 4.1. Popis... 85 4.2. Aktivity... 86 4.3. Činnosť kurzu... 87 5. ZÁVER...89 ZOZNAM POUŽITEJ LITERATÚRY... 90 Prílohová časť
ZOZNAM OBRÁZKOV A TABULIEK Obr. 1.1 Funkcie LMS...5 Obr. 2.1 Schéma sekvenčného logického obvodu...7 Obr. 2.2 Prostredie Macromedia Flash MX...10 Obr. 3.1.1. George Boole...16 Obr. 3.1.2. Schematické značky základných logických členov...21 Obr. 3.1.3. Vennov diagram pre dve Booleove premenné...22 Obr. 3.1.4. Vennov diagram pre funkciu f1 z pravdivostnej tabuľky (tab. 3.1.1)...23 Obr. 3.1.5. Výsledná bloková schéma logického obvodu...30 Obr. 3.1.6. Mapa logickej funkcie pre päť premenných...24 Obr. 3.1.7. Zostavenie Karnaughovej mapy a Svobodovej mapy...24 Obr. 3.1.8. Karnaughova mapa pre tri premenné...25 Obr. 3.1.9. Karnaughova mapa pre štyri premenné...31 Obr. 3.1.10. Grafické zobrazenie rôznych stavov logickej funkcie...26 Obr. 3.1.11. Zobrazenie logickej funkcie pomocou n rozmerného telesa...26 Obr. 3.1.12. n rozmerné teleso pre tri premenné v priestorovej a plochej forme...27 Obr. 3.1.13. n rozmerné teleso pre štyri premenné...27 Obr. 3.1.14. Zostavenie n rozmerného telesa pre funkciu troch premenných...31 Obr. 3.1.15. LSB najnižší platný bit...32 Obr. 3.1.16. MSB najvyšší platný bit...32 Obr. 3.1.17. Odvodenie UNDF...29 Obr. 3.1.18. Odvodenie UNKF...30 Obr. 3.2.1. Schéma sekvenčného logického obvodu...35 Obr. 3.2.2. Schéma obvodu typu MOORE...36 Obr. 3.2.3. Príklad zápisu prechodových a výstupných funkcií pre obvod typu MEALY a MOORE...37 Obr. 3.2.4. Príklad prechodových diagramov pre obvod typu MEALY a MOORE...38 Obr. 3.2.5. Príklad tabuliek prechodov pre obvod typu MEALY a MOORE...38 Obr. 3.2.6. Typy transformácií...39 Obr. 3.2.7. Preklápací obvod typu S R...40 Obr. 3.2.8. Preklápací obvod typu T...41 Obr. 3.2.9. Preklápací obvod typu D...42
Obr. 3.2.10. Preklápací obvod typu J K...42 Obr. 3.2.11. Logický obvod s jednou slučkou spätnej väzby...57 Obr. 3.2.12. Karnaughova mapa asynchrónneho obvod typu S R...43 Obr. 3.2.13. Karnaughova mapa asynchrónneho obvod typu S R pre realizáciu členmi NAND...44 Obr. 3.2.14. Asynchrónny obvod typu S R realizovaný členmi NAND...44 Obr.3. 2.15. Karnaughova mapa asynchrónneho obvod typu S R pre realizáciu členmi NOR...45 Obr. 3.2.16. Asynchrónny obvod typu S R realizovaný členmi NOR...45 Obr. 3.2.17. Synchrónny obvod typu S R...46 Obr. 3.2.18. Karnaughova mapa synchrónneho obvod typu S R...46 Obr. 3.2.19. Karnaughova mapa synchrónneho obvod typu S R pre realizáciu členmi NAND...47 Obr. 3.2.20. Synchrónny preklápací obvod typu S R...47 Obr. 3.2.21. Dvojfázový bistabilný preklápací obvod typu S - R (master - slave)...49 Obr. 3.2.22. Činnosť preklápacieho obvodu typu S - R (master - slave)...49 Obr. 3.2.23. Časový diagram preklápacieho obvodu typu S - R (master - slave)...50 Obr. 3.2.24. Synchrónny preklápací obvod typu J - K...50 Obr. 3.2.25. J - K preklápací obvod typu master slave...51 Obr. 3.2.26. Zapojenie J - K preklápacieho obvodu typu master slave...51 Obr. 3.2.27. Činnosť preklápacieho obvodu typu J - K (master - slave)...52 Obr. 3.2.28. Časový diagram preklápacieho obvodu typu J - K (master - slave)...52 Obr. 3.2.29. J K obvod MH 7472...53 Obr. 3.2.30. Časový diagram a pravdivostná tabuľka obvodu MH 7472...54 Obr. 3.2.31. Časové závislosti signálov J, K a TC...54 Obr. 3.2.32. Dvojfázový bistabilný preklápací obvod typu D...55 Obr. 3.2.33. Časový diagram a pravdivostná tabuľka obvodu MH 7474...56 Obr. 3.2.34. Časové závislosti signálov D a TC...57 Obr. 3.3.1. Bloková schéma posuvného registra...64 Obr. 3.3.2. Príklad vstupov a výstupov pri posuve vpred...65 Obr. 3.3.3. Posuv vpred...66 Obr. 3.3.4. Tabuľka prechodov susedných preklápacích obvodov pri posuve vpred...66 Obr. 3.3.5. Zostavenie alg. výrazov pre vstupy J a K...67 Obr. 3.3.6. Zapojenie posuvného registra vpred s preklápacími obvodmi typu J K...67
Obr. 3.3.7. Štvorbitový posuvný register vpred s preklápacími obvodmi typu J K...68 Obr. 3.3.8. Tabuľka prechodov susedných preklápacích obvodov pri posuve vpred s použitím obvodov typu D...68 Obr. 3.3.9. Karnaughova mapa posuvného registra vpred realizovaného preklápacími obvodmi typu D...69 Obr. 3.3.10. Zapojenie posuvného registra vpred s preklápacími obvodmi typu D...69 Obr. 3.3.11. Posuv vzad...70 Obr. 3.3.12. Tabuľka prechodov susedných preklápacích obvodov pri posuve vzad...70 Obr. 3.3.13. Karnaughova mapa posuvného registra vzad realizovaného preklápacími obvodmi typu J K...70 Obr. 3.3.14. Zapojenie posuvného registra vzad s preklápacími obvodmi typu J K...71 Obr. 3.3.15. Karnaughova mapa posuvného registra vzad realizovaného preklápacími obvodmi typu D...71 Obr. 3.3.16. Zapojenie posuvného registra vzad s preklápacími obvodmi typu D...72 Obr. 3.3.17. Štvorbitový posuvný register vzad s preklápacími obvodmi typu D...73 Obr. 3.3.18. Trojbitový posuvný register vpred zložený z J K preklápacích obvodov...73 Obr. 3.3.19. Posun informácie vpred...75 Obr. 3.3.20. Nulovanie registra vstupom RESET...75 Obr. 3.3.21. Nastavenie výstupu QA signálom na vstupe A...75 Obr. 3.3.22. Kruhový posuvný register z obvodov J K...76 Obr. 3.3.23. Časový diagram J K kruhového registra...77 Obr. 3.3.24. Modifikovaný kruhový posuvný register z obvodov J K...77 Obr. 3.3.25. Časový diagram modifikovaného kruhového registra...78 Obr. 3.3.26. Univerzálny štvorbitový posuvný register...79 Obr. 4.3.1. Ukážka kurzu v systéme MOODLE...87 Tab. 2.1 Nameraná rýchlosť načítania jednotlivých kapitol...15 Tab. 2.2 Vypočítaná rýchlosť načítania jednotlivých kapitol...15 Tab. 3.1.1. Pravdivostná tabuľka určitej funkcie f 1 a neurčitej funkcie f 2...18
ZOZNAM SKRATIEK A SYMBOLOV APO astabilný preklápací obvod BPO bistabilný preklápací obvod CBT Computer Base Training počítačom podporovaná výučba CD-ROM Compact Disc - Read Only kompaktný disk určený iba na zápis Memory CSS Cascading Style Sheets kaskádové štýly DHTML Dynamic HyperText Markup dynamický hypertextový značkový jazyk Language GIF Graphics Interchange Format grafický formát pre rastrovú grafiku GNU GNU's Not Unix HTML HyperText Markup Language hypertextový značkový jazyk HW Hardware technické vybavenie počítača IEEE Institute for Electrical and Electronics Engineers inštitút elektrotechnických a elektronických inžinierov KLO kombinačný logický obvod LMS Learning Management System systém pre riadenie štúdia LSB Least Significant Bit bit s najnižšou významnosťou MOODLE Modular Object-Oriented Dynamic Learning modulárne objektovo orientované dynamické prostredie pre výuku Environment MPO monostabilný preklápací obvod MSB Most Significant Bit bit s najvyššou významnosťou PC Personal Computer osobný počítač PHP Personal Home Page PO preklápací obvod QoS Quality of Service kvalita služby R Reset nulovanie RAM Random Access Memory pamäť s náhodným prístupom S Set nastavenie SLO sekvenčný logický obvod SQL Structured Query Language štruktúrovaný dopytovací jazyk
SW Software programové vybavenie počítača UNDF úplná normálna disjunktívna forma UNKF úplná normálna konjunktívna forma WWW World Wide Web celosvetová počítačová sieť f H i K M Ma Mi n N funkcia i-te hradlo klopná transformácia pamäťová transformácia maxterm minterm počet premenných stavový index Q negovaný výstup v čase t + 1 t +1 Q priamy výstup v čase t + 1 t+1 T C t HOLD t SET UP t W X X i Y i Z i synchronizačný impulz doba presahu doba predstihu minimálna dĺžka impulzu neurčitý stav vstupný stav výstupný stav vnútorný stav
1. ÚVOD Vzdelávanie je jednou z najdôležitejších životných priorít nielen jednotlivcov, ale aj modernej spoločnosti a vďaka modernej technike a technológii sa môže uskutočňovať doplňujúcou formou dosiahnutého vzdelania, teda e-learningom. Používanie webových systémov pre vzdelávanie dnes považujeme za samozrejmosť.[1] Pojem e-learning je potrebné rozlišovať v dvoch rovinách: ako technický systém a ako nový systém vzdelávania. Technický systém e-learningu zahrňuje všetky potrebné technické prostriedky informačno-komunikačných technológií pre vzdelávanie, systém vzdelávania a novú technológiu vzdelávania s implementáciou technického systému. Spoločné pôsobenie obidvoch systémov je základným predpokladom vytvorenia nového vzdelávania v informačnej spoločnosti.[2] Z hľadiska úspory ľudských a prírodných zdrojov ale aj šetrenia času, je rozhodne vzdelávanie dištančnou formou jedným z najzaujímavejších a v súčasnosti aj najperspektívnejším smerom získavania kvalifikácie. Dištančné vzdelávanie (štúdium na diaľku) je efektívna forma štúdia, založená na individuálnom prístupe k študujúcemu a v používaní špeciálne pripravených učebných textov, počítača a multimediálnych pomôcok. Je to forma štúdia, ktorej prevažná časť je realizovaná samoštúdiom a komunikáciou s vyučujúcim prostredníctvom e-mailu, diskusných fór a iných komunikačných prostriedkov. Najväčšou výhodou takéhoto typu vzdelania je neustála komunikácia a spätná väzba učiteľ študent prostredníctvom kontrolných testov, kvízov, atď. a neobmedzený priestor pre kreativitu na obidvoch stranách. Hlavným cieľom mojej diplomovej práce je návrh a realizácia multimediálneho kurzu pre e-learning z tematickej oblasti Logické systémy (resp. z oblasti číslicovej techniky), pričom celý kurz je optimalizovaný pre prenos LMS systémom MOODLE a taktiež je optimalizovaný z hľadiska potrebnej prenosovej rýchlosti dátového kanála a pamäťových požiadaviek archivačných médií. Úlohou diplomovej práce nie je úplne nahradiť klasickú formu výučby, ale skôr ponúknuť novú alternatívnu formu štúdia, prípadne možnosť efektívne prehlbovať vedomosti z danej oblasti. Preto učebné materiály v kurze neobsahujú veľké množstvo textu, ako to býva v niektorých študijných materiáloch, ale skôr sa snažia jednoducho a efektívne vysvetliť danú problematiku prostredníctvom názorných interaktívnych animácií, prípadne statických obrázkov. - 1 -
Celý kurz sa skladá z troch kapitol zadaných vedúcim diplomovej práce. Kvôli tomu, aby bolo možné zaradiť kurz do tematických celkov spracovaných v minulosti a taktiež, aby bolo možné v budúcnosti dopĺňať ďalšie témy a tým vytvoriť komplexný celok študijných materiálov, bolo jednou z podmienok vytvoriť kurz v preddefinovanom štýle. Kurz som spracoval vo voľne šíriteľných softvéroch a v softvérovom produkte Macromedia Flash MX, ktorý bol poskytnutý vedúcim diplomovej práce. Celý kurz je realizovaný v jazyku HTML s využitím FLASH animácií, pričom využíva aj ďalšie technológie, ako CSS, JavaScript a ActionScript (využitý na vytvorenie interaktívnych FLASH animácií). Výhodou tejto formy realizácie je to, že používateľ sa nemusí zoznamovať s novým prostredím a ovládacími prvkami (ako to býva pri kurzoch realizovaný kompletne len v prostredí FLASH), ale ovládanie je intuitívne a známe z prostredia internetu. Výsledný kurz je umiestnený v LMS systéme MOODLE (ktorý umožňuje sledovať využívanie kurzu a taktiež umožňuje priamo realizovať spätnú väzbu medzi vyučujúcim a študentom) a tiež vo forme CBT kurzu umiestnenom na CD-ROM, aby bol dostupný aj v offline verzii. 1.1. E-learning E-learning v širšom slova zmysle znamená proces, ktorý popisuje a rieši tvorbu, distribúciu, riadenie výučby a spätnú väzbu na základe počítačových kurzov, ktorým stále častejšie hovoríme e-learningové kurzy. Je zameraný na potreby študujúcich a zaisťuje vyhovujúcu kvalitu študijných materiálov, zostavených profesionálnym tímom, kde jednotlivé moduly sú interaktívne a flexibilné voči požiadavkám študujúcich. [1] Medzi základné ciele e-learningu patrí najmä: efektívnejší a príjemnejší proces učenia: prostredníctvom individuálneho učebného plánu, pri ktorom si študenti sami zvolia čas a miesto svojho štúdia zvýšená kvalita výuky: využitie výpočtovej techniky, audiovizuálnych pomôcok pri interpretácii poznatkov, možnosť automatického spracovania poznatkov zvýšenie dostupnosti vzdelania zníženie finančnej náročnosti vzdelania: ľahšia distribúcia E-learning nie je len efektívnou metódou pre získavanie poznatkov, ponúka aj možnosť naučiť sa orientovať vo svete veľkého množstva informácií, učí vyberať si - 2 -
informácie, triediť ich, spracovávať a správne ich hodnotiť. Výhodou poskytovania informácií prostredníctvom Internetu je možnosť ich neustálej aktualizácie, v porovnaní s klasickými formami poskytovania študijných materiálov je ľahšie ich priebežne dopĺňať, vylepšovať a prepracovávať. 1.1.1. Proces e-learningu Proces e-learningu môžeme rozdeliť do troch nasledujúcich fáz [3]: Tvorba Multimediálny kurz kombinuje textový výklad s animáciami, videom, audiom, grafikou a testovacími objektmi. Forma kurzu sa volí na základe širokého spektra kritérií, ako sú profily potenciálnych študentov, typu vyučovanej látky, či technologické možnosti. Vytvorené kurzy okrem podávania vyučovanej látky v atraktívnej forme študentom vždy zaisťujú spätnú väzbu od študentov pomocou testovacích otázok, volieb s možnosťami, či návrhov riešení. Študenti tak sú aktívne vťahovaní do výučby. Distribúcia Medzi základné spôsoby distribúcie kurzov patrí CD-ROM, lokálne PC disky, miestna počítačová sieť, intranet či internet. CD-ROM a lokálne disky pohltia veľké množstvo dát, k nevýhodám však patrí obtiažna aktualizácia vyučovanej látky. Trendom je preto distribúcia kurzov cez intranet či internet. Tieto prostriedky prinášajú jednotné štandardy, prostredie a zabezpečenie, možnosť regionálnej rozšíriteľnosti a takmer okamžitú distribúciu hotového kurzu k študentovi. Hybridné metódy spájajú výhody uloženia dát na CD-ROM či disk užívateľa s výhodami intranetu / internetu. Riadenie Proces riadenia výučby nastáva po distribúcii vzdelávacích kurzov k študentom. Tento proces zabezpečuje sprístupnenie správnych kurzov v správny čas študentom a ich informovanie o tom, ako sa im v kurze darí a kde majú pokračovať. V riadiacom procese sú sledované informácie, ako sa jednotlivým študentom darí v kurzoch a testoch a štatisticky sú vyhodnocované jednotlivé kurzy. - 3 -
1.1.2. Vlastnosti e-learningu Nasadzovanie e-learningu v procese vzdelávania so sebou prináša určité výhody aj nevýhody. Medzi základné vlastnosti môžeme zaradiť [4]: Pozitívne vlastnosti študent si môže sám určiť tempo štúdia študent si môže sám určiť čas štúdia (štúdium Just-in-Time) pomocou otázok a testov si môže študent overiť úroveň vedomostí pomocou interaktívnych prvkov je vtiahnutý do výučby zvyšovanie počtu študentov bez ohľadu na vyučovacie kapacity nižšie náklady (priame náklady, nepriame náklady, nevykonaná práca) lepšia kontrola výsledkov (LMS) môže byť efektívnejší (učím sa čo potrebujem a kedy potrebujem, prenos zodpovednosti na študenta, orientácia na študenta) Negatívne vlastnosti náročnejšia príprava (pedagogické a didaktické zásady) ochota vyučujúceho používať nové technológie potreba HW / SW vybavenia a technickej podpory nerovnomernosť prístupu (sociálne zázemie) nedostatok priameho kontaktu medzi učiteľom a študentom potreba silnej motivácie študenta absencia praktickej časti výučby Využívaním e-learningu vo vzdelávacom procese vznikajú podmienky pre budovanie univerzitnej, národnej, resp. nadnárodnej databázy vedomostí, s možnosťou výmeny kurzov. V dnešnej dobe však tento nový spôsob učenia sa ešte úplne nenahrádza klasickú formu výučby, skôr slúži na jej zefektívnenie a ponúka možnosť prehlbovať si svoje vedomosti a zjednodušiť a urýchliť vzdelávací proces. Pre efektívne fungovanie e-learningu sú kladené vyššie požiadavky na sebadisciplínu študenta a jeho organizačné schopnosti, než je tomu pri klasickej forme výučby. - 4 -
1.1.3. LMS (Learning Management System) Obecne LMS (v preklade systém na riadenie štúdia) je softvérový produkt, ktorý ponúka automatickú podporu výučbového procesu. Je to hlavný nástroj pre realizáciu a fungovanie e-learningu. Zabezpečuje nástroje pre distribúciu vzdelávacieho obsahu, nástroje pre komunikáciu medzi účastníkmi výučby, systém spätnej väzby, prístup k študijným materiálom a nástroje pre riadenie a monitorovanie výučby a aktivít používateľov. Komunikácia Registrácia Distribúcia L M S Testovanie Štatistika Plánovanie Obr. 1.1 Funkcie LMS Každý takýto systém by mal obsahovať tri základné časti: vzdelávacia: slúži na prezentáciu učebných materiálov, ktoré sú väčšinou rozčlenené do jednotlivých tematických celkov, podpora prístupu k študijným materiálom komunikačná: slúži na vzájomnú komunikáciu medzi všetkými členmi učebného procesu a taktiež umožňuje systém spätnej väzby pre učiteľov informačno organizačná: umožňuje registráciu používateľov kurzu, podávanie informácií (oznamy, informácie, termíny, hodnotenia, atď.), monitorovanie aktivít účastníkov kurzu a vyhodnocovanie ich výsledkov Existuje viacero takýchto systémov, či už komerčných, alebo voľne šíriteľných. Podľa zadania mojej diplomovej práce je však celý kurz umiestnený v LMS systéme MOODLE. Tento systém bude popísaný neskôr v kapitole 4. - 5 -
2. NÁVRH A REALIZÁCIA MULTIMEDIÁLNEHO KURZU Hlavným cieľom diplomovej práce je vytvorenie CBT (Computer Base Training) kurzu venovanému problematike číslicovej techniky, pričom je potrebné prihliadať na minimálne nároky na prenosový kanál, optimálny prenos systémom MOODLE a čo najefektívnejšie podanie učebných materiálov. Niektoré moderné kurzy sú spracované kompletne v prostredí FLASH a ohurujú výbornou grafikou a rôznymi vizuálnymi efektmi. Treba sa však zamyslieť, či je toto to ideálne riešenie. Zo skúseností sa zistilo, že kurzy obsahujúce veľa efektov zaujmú študenta len na chvíľu, potom už tieto efekty začínajú pôsobiť rušivo. Taktiež rozmanitosť takýchto kurzov a spôsobov ich ovládania môžu odrádzať študenta a výsledná veľkosť kurzu nie je príliš vhodná na prenos internetom. Preto celý kurz je vytváraný s dôrazom na jednoduchosť, intuitívnosť, jednoduché ovládanie (známe z prostredia Internet) a minimálne nároky na prenosový kanál a kapacitu archivačných médií. 2.1. Výber formátov pre optimálnu štruktúru kurzu Z dôvodu minimálnej dátovej veľkosti celého kurzu (a tým aj minimálnych požiadaviek na archivačné média a prenosový kanál) som kurz realizoval vo forme HTML stránky (resp. DHTML) s interaktívnymi FLASH animáciami, ktoré názorne a jednoducho znázorňujú danú problematiku, a tým zmenšujú množstvo textových informácií. Pre správnu funkčnosť celého kurzu a možnosť niektorých funkcií (testovanie) sú použité aj ďalšie technológie, ako CSS a JavaScript. 2.1.1. Porovnanie GIF a FLASH animácií Na realizáciu animácií v kurze som mal v podstate na výber dva formáty GIF a FLASH. Výhodnejší bol formát FLASH a to z viacerých dôvodov. Hlavným dôvodom je to, že množstvo animácií v kurze nie sú len klasické animácie, ktoré automaticky prehrajú zadanú sekvenciu obrázkov, ale sú to prakticky simulácie konkrétnych zapojení obvodov alebo iné animácie, ktoré nevyhnutne vyžadujú vstup používateľa, čím sa stávajú interaktívne. Toto GIF animácie neumožňujú. Výhodou interaktívnych animácií je, že študent si ľahšie zapamätá to, čo si môže sám odskúšať, než to, čo len vidí - 6 -
a nemá možnosť nijako zasahovať. Druhým dôvodom je výsledná veľkosť súboru. Keď porovnáme rovnakú animáciu v týchto dvoch formátoch (napríklad animáciu na obr. 2.1.) zistíme, že kým GIF animácia má veľkosť 34kB (v potrebnom rozlíšení), FLASH animácia má len 6kB, čo umožňuje podstatne zmenšiť dátovú veľkosť celého kurzu. Obr. 2.1 Schéma sekvenčného logického obvodu Ďalšou z výhod použitých FLASH animácií je to, že všetky sú realizované vektorovou grafikou (na rozdiel od GIF animácií, ktoré používajú rastrovú grafiku). To umožňuje aj pri zmene veľkosti animácie zachovať kvalitu obrazu. Použitie FLASH animácií má však nevýhodu v tom, že používateľ musí mať nainštalovaný príslušný prehrávač. Preto sú v kurze použité aj náhradné statické obrázky vo formáte GIF, ktoré sa zobrazia ak používateľ nemá podporu FLASH animácií. 2.2. Nástroje na realizáciu kurzu Kurz som realizoval pomocou štyroch hlavných technológií, a to HTML (rozšírený o ďalšie prvky a tým prechádza na DHTML), CSS, JavaScript a FLASH. Ďalej budú jednotlivé technológie stručne popísané a vysvetlené, na čo sú v kurze využívané. - 7 -
DHTML (Dynamic HTML) Dynamické HTML predstavuje spojenie klasického jazyka HTML s programovacím jazykom JavaScript a kaskádovými štýlmi CSS. Tak umožňuje používateľovi poskytnúť väčšiu interaktivitu a dynamické efekty, než ponúka samotné HTML. HTML (HyperText Markup Language) HTML je značkovací jazyk určený na vytváranie webových stránok a iných informácií zobraziteľných vo webovom prehliadači. Umožňuje vytvárať dokumenty obsahujúce text, hypertextové odkazy, multimediálny a iný obsah, formuláre, skripty a metainformácie prehliadateľné vo webovom prehliadači. Výhodou HTML je, že umožňuje úsporne uložiť textový obsah, pričom umožňuje definovať formát jednotlivých častí (odseky, písmo, tabuľky ). Formátovanie jednotlivých častí zabezpečujú špeciálne značky, nazývane tagy. Tieto značky sú uzavreté v ostrých zátvorkách < a >. Poznáme dva druhy tagov - párové a nepárové. Párové sú tie, ktoré medzi seba uzatvárajú vlastný obsah a priraďujú mu danú hodnotu, nepárové môžu byť platné pre celý dokument (napr. nastavenie kódovania) alebo vkladajú do dokumentu len jeden objekt (obrázok, animácia, zvuk, tlačidlo). Špeciálnym typom párových značiek sú hypertexty, ktoré umožňujú prepájať viaceré dokumenty (alebo dané miesto v dokumente) pomocou odkazov. Dnešná špecifikácia HTML umožňuje oddeliť štruktúru dokumentu (nadpisy, odstavce, tabulky ) od jeho výzoru (farba, písmo ) pomocou tzv. kaskádových štýlov. Výhodami tohto jazyka sú výsledná veľkosť dokumentu, možnosť vkladať externé prvky, upravovať vzhľad dokumentu a nezávislosť od platformy. Všetky príkazy sú interpretované prehliadačom. To však prináša aj veľkú nevýhodu v tom, že rôzne prehliadače môžu zobrazovať ten istý dokument rôzne. To sa však dá ošetriť detekciou typu prehliadača a následným podmieneným formátovaním dokumentu. CSS (Cascading Style Sheets) Kaskádové štýly CSS predstavuje skupina formátovacích znakov, ktoré umožňujú meniť parametre tagov v jazyku HTML, resp. ich novú definíciu. Tak pridávajú tagom nové vlastnosti, ktoré potom môžeme využiť pri celkovom grafickom usporiadaní stránky. - 8 -
Medzi možnosti kaskádových štýlov patrí: nastavenie parametrov písma (farba, typ, veľkosť ) formátovanie tabuliek formátovanie nadpisov vytvorenie grafických odrážok formátovanie obrázkov, napr. aj ich prekrývanie Ich obrovskou výhodou je, že vlastná definícia štýlu môže byť definovaná ako externý dokument, ktorý k danej stránke pripojíme v jej hlavičke. V samotnom HTML dokumente potom jednotlivým tagom priradíme ich definície. Existuje aj viacero spôsobov definície kaskádových štýlov, napr. priamo v tagu HTML jazyka, ale vyššie spomínaný spôsob nám umožňuje načítať jednu definíciu do viacerých dokumentov. Kaskádové štýly majú aj svoje nevýhody, ako napríklad to, že každý prehliadač ich podporuje inak.[5] Pri realizácii kurzu zabezpečí použitie CSS štýlov jednak ľahkú úpravu dizajnu všetkých kapitol a jednak načítaním vhodného štýlu odstránime nedostatky spôsobené rôznou interpretáciu HTML kódu rôznymi prehliadačmi. JavaScript Je skriptovací jazyk založený na programovacom jazyku JAVA, ktorý beží na strane klienta (nie servera). Interpretáciu celého zdrojového kódu zabezpečuje prehliadač. Pomocou skriptovacieho jazyka je možné pristupovať k rôznym prvkom stránky ako napríklad obrázky, formuláre, odkazy a iné. Tieto prvky môžeme pomocou skriptov rôzne meniť a ovplyvňovať. JavaScript tiež dovoľuje reagovať na rôzne udalosti, napr. kliknutie myši, stlačenie klávesy a ďalšie, čo umožňuje reagovať na akcie užívateľa spúšťaním ďalších skriptov. Jeho kód sa do HTML stránky vkladá pomocou špeciálnych značiek. Rozlišujeme dve základné skupiny skriptov, a to skripty, ktoré sa spustia iba raz (najčastejšie pri načítaní dokumentu) a skripty spúšťaní udalosťami, ktoré sa vykonajú splnením určitých podmienok (pohyb myšou, stlačenie tlačidla ). Prvý typ skriptov je v kurze využitý na detekciu typu prehliadača, zistenie rozlíšenia monitora a detekciu správnej verzie FLASH prehrávača. Podľa zisteného typu prehliadača zabezpečí JavaScript nahratie správneho CSS štýlu a podľa zisteného rozlíšenia monitora zobrazí buď plnohodnotné menu na ľavej strane dokumentu, alebo zobrazí náhradné menu. Ak skript nenájde vhodný prehrávač FLASH, zabezpečí nahratie náhradného obrázka. Druhý - 9 -
typ skriptov je v kurze využitý pri testovaní vedomostí, kde zabezpečuje zistenie počtu správnych odpovedí a vyznačenie odpovedí červenou farbou. Nevýhodou JavaScriptu je, že používateľ môže mať vypnutú jeho podporu, alebo nemá správny prehliadač, ktorý by ho podporoval. Vtedy je spustené náhradná verzia kurzu, ktorá však stráca multimediálnu podstatu. Macromedia FLASH FLASH je silný nástroj umožňujúci vytvárať pôsobivé animácie a iné multimediálne prvky a umiestniť ich do webovej stránky. Je založený na vektorovej grafike, vďaka ktorej môžu mať výsledné animácie veľmi malé veľkosti. Výhodou vektorovej grafiky je aj to, že pri zmene geometrickej veľkosti animácie nedochádza ku jej skresleniu. Najväčšie výhody zaznamenáva pri grafike nakreslenej priamo v ňom, ale nie je problém ani importovať iné grafické súbory (za cenu zvýšenej veľkosti). Pre vytváranie interaktívnych animácií je v prostredí FLASH integrovaný programovací jazyk ActionScript. Ten umožňuje jednak priraďovať jednotlivým udalostiam rôzne akcie a taktiež používať a pracovať s premennými, cyklami a ďalšími prvkami známymi z iných programovacích jazykov. časová os kresliace nástroje javisko (scéna) panely vlastnosti Obr. 2.2 Prostredie Macromedia Flash MX - 10 -
Všetky animácie a náhradné GIF obrázky som vytvoril v softvérovom produkte Macromedia FlashMX, ktorý mi poskytol vedúci diplomovej práce. Ten umožňuje pri vytváraní grafiky využívať vrstvy a objekty a pri animáciách aj časovú os. Objekty, ktoré budú v animácii použité viackrát je vhodné vložiť do tzv. knižnice symbolov. Potom zmenou tohto symbolu v knižnici dôjde ku zmene všetkých jeho kópii, čo je výhodné najmä pri úpravách animácie a tiež z hľadiska dátovej veľkosti výslednej animácie. Zdrojové súbory sú typu *.fla. Tie je možné ďalej modifikovať a upravovať. Keď už máme animáciu hotovú, je potrebné je prekompilovať do súboru typu *.swf, ktorý už nie je editovateľný, ale je ho možné pomocou špeciálnych značiek a parametrov vložiť do HTML dokumentu a zobraziť v prehliadači. 2.3. Animácie V celom kurze sa nachádza viacero rôznych typov animácií. Prvým typom sú jednoduché animácie, ktoré neumožňujú žiadny vstup používateľa, ale len automaticky prehrávajú danú animáciu. Sú použité na zobrazenie niektorých základných princípov. Druhým typom sú animácie, ktoré umožňujú zásah používateľa pomocou tlačidla. Po ukázaní myšou na toto tlačidlo sa používateľovi prehrá definovaná animácia, alebo sa zobrazí predtým skrytá časť scény. V kurze sa používa na spustenie vybranej animácie alebo na zobrazenie požadovanej animácie. Niektoré zložitejšie animácie môžu používatelia vnímať rozličným spôsobom. Je ťažké navrhnúť optimálnu rýchlosť pre prehrávanie animácie. Niekomu môže byť vopred definovaná rýchlosť prehrávania príliš pomalá a bude sa nudiť, inému zase môže byť prirýchla a nebude stíhať vnímať problematiku, ktorú mala daná animácia vysvetliť. Preto som v zložitejších animáciách zaviedol tlačidlá pre ovládanie priebehu animácie, ktoré sú známe z rôznych audio alebo video prehrávačov a umožňujú intuitívne ovládanie animácie používateľom. Je to týchto päť tlačidiel: - umožňuje presun v animácii o jeden logický krok vzad - umožňuje presun v animácii o jeden logický krok vpred - umožňuje spustiť animáciu (v prípade pozastavenej animácie pokračovať) - umožňuje pozastaviť animáciu na danom mieste - po skončení animácie umožňuje opätovný presun na začiatok - 11 -
Ďalším typom sú animácie, kde používateľ musí ručne vpísať do príslušných políčok zodpovedajúce hodnoty. Potom po stlačení tlačidla Vyhodnotiť animácia zobrazí počet správnych odpovedí. Pomocou tejto animácie si môže používateľ overiť vedomosti z danej problematiky. Posledným typom animácií sú v podstate simulácie konkrétnych zapojení logických obvodov. Pri nich si môžeme overiť správanie sa jednotlivých zapojení. Pri všetkých vstupoch, ktoré môžeme v danom zapojení meniť, je tlačidlo. Kliknutím na toto tlačidlo sa zmení hodnota prislúchajúcej premennej. Činnosť týchto animácií zabezpečuje jazyk ActionScript, v ktorom som zadefinoval logické funkcie všetkých členov použitých v danej animácii. Pri zmene ktorejkoľvek premennej sa prepočítajú všetky ostatné premenné použité v danom zapojení a zobrazia sa pri príslušných vstupoch alebo výstupoch všetkých logických členov. Animácie sú efektívnym nástrojom na jednoduché vysvetlenie danej problematiky. Interaktívne animácie, ktoré nútia študenta zasahovať a riadiť priebeh celej animácie, a tým rozmýšľať nad danou problematikou, umožnia ľahšie a rýchlejšie pochopiť danú problematiku. Preto bol pri tvorbe kurzu kladený najväčší dôraz na vytvorenie animácií, ktoré by čo najjednoduchším spôsobom podali zložitú problematiku študentovi. 2.4. Popis činnosti kurzu Celý kurz je realizovaný ako WWW stránka doplnená o interaktívne FLASH animácie, vďaka čomu je ovládanie celého kurzu veľmi jednoduché a používateľovi už známe z prostredia internetu. Úlohou bolo čo najjednoduchšie vysvetliť danú problematiku pomocou názorných animácií, a tým zredukovať dlhé bloky textu a vzorcov. Tieto časti študijných materiálov nie sú umiestnené priamo na hlavnej stránke príslušnej kapitoly, ale študent sa ku nim dostane pomocou hypertextových odkazov. Po spustení kurzu sa ako prvá spustí kontrola JavaScriptu. Jeho podpora je totiž potrebná pre správne fungovanie celého kurzu. Ak používateľ nemá podporu JavaScriptu, kurz ponúkne možnosť stiahnutia vhodného prehliadača alebo pluginu. Ak používateľ nechce využívať podporu JavaScriptu, môže inštaláciu ignorovať (čo však nezaručí správnu činnosť kurzu), alebo pokračovať v náhradnej verzii kurzu bez JavaScriptu a FLASH animácií. Ak je JavaScript aktívny, skontroluje verziu nainštalovaného FLASH - 12 -
prehrávača. Ak verzia nevyhovuje (alebo nie je prehrávač nájdený), ponúkne možnosť jeho inštalácie (priebeh inštalácie závisí od typu prehliadača). Inštaláciu môžu používateľ taktiež ignorovať (napr. ak nemá oprávnenie inštalovať nové programy) alebo po nainštalovaní sa vrátiť k spusteniu kurzu. JavaScript ďalej kontroluje aj typ a verziu prehliadača a rozlíšenie monitora. Podľa výsledku nahrá príslušný CSS štýl. Tým je zabezpečené korektné zobrazenie na väčšine používaných prehliadačov. V prípade nového typu prehliadača sa korekcia zabezpečí doplnením vhodného CSS štýlu. Ak je rozlíšenie monitora 800 x 600 pixelov, nenahrá sa ani bočné menu, ale zobrazí sa len náhradné menu na začiatku a konci príslušnej kapitoly. JavaScript kontroluje aj vhodnú verziu FLASH prehrávača pre každú animáciu. Ak je výsledok negatívny, tak namiesto animácie nahrá zodpovedajúci náhradný statický obrázok. Po spustení kurzu má používateľ na výber z troch spracovaných kapitol. Keďže kurz využíva pre zobrazenie stránky rámce, tak po spustení príslušnej kapitoly sa vykoná kontrola, či ich daný prehliadač podporuje. Ak áno, načíta sa príslušná kapitola, ak nie, tak kurz ponúkne možnosť stiahnutia vhodného prehliadača. Každá kapitola obsahuje menu, v ktorom sú nasledujúce položky: Pomocník: zobrazuje minimálne systémové požiadavky kurzu, umožňuje prepnúť kurz do verzie bez animácií a spustiť verziu vhodnú pre tlač (nezobrazí sa menu, pri tlačení sa načíta nový CSS štýl, ktorý zmení písmo na Times New Roman s veľkosťou o 2 body menšie, ako bolo pôvodné). Obsah kapitol: umožňuje sa vrátiť na výber jednotlivých kapitol. Táto voľba rešpektuje, či používateľ pozeral verziu bez alebo s FLASH animáciami. Obsah: obsahuje zoznam jednotlivých podkapitol, pričom po kliknutí na vybranú podkapitolu sa presunie dokument na jej začiatok. Tetovanie vedomostí: slúži k overenie získaných vedomostí. Test obsahuje 10 otázok, kde každá ponúka štyri možnosti odpovede. Správna je vždy len jedna. Po kliknutí na tlačidlo počet správnych odpovedí JavaScript spočíta správne odpovede a označí ich červenou farbou. V prípade nefunkčnosti JavaScriptu je možné zobraziť správne odpovede aj v náhradnej forme. Zaujímavé odkazy: obsahuje zoznam odkazov, kde študent nájde ďalšie informácie týkajúce sa kurzu a danej kapitoly, čím si môže prehĺbiť svoje vedomosti. Použitá literatúra: zoznam literatúry použitej v danej kapitole. - 13 -
2.5. Požiadavky kurzu Požiadavky kladené na správnu funkciu kurzu môžeme rozdeliť do dvoch skupín. Prvou skupinou sú systémové požiadavky kladené na hardvérové a softvérové vybavenie počítača, na ktorom bude kurz spustený a druhou skupinou sú požiadavky kladené na prenosový kanál, ak je kurz k študentovi distribuovaný pomocou sieťových technológií (internet, intranet, ). Systémové požiadavky Minimálne systémové požiadavky, pri ktorých je kurz spustiteľný sú procesor Pentium 133MHz, 32MB pamäte RAM, Monitor s rozlíšením 1024 x 768 pixelov, zvuková karta, internetový prehliadač Internet Explorer 5 a vyšší, podpora JavaScriptu a FLASH prehrávač. Kurz funguje s FLASH prehrávačom verzie 5 a vyšším, avšak niektoré funkcie sú prístupné až pre verziu 9.0.18 a vyššiu, na čo kurz upozorní. Pri tejto verzii FLASH prehrávača je však už potrebný minimálne procesor Pentium II 450MHz, 128MB pamäte RAM a prehliadač Internet Explorer 6 a vyšší, alebo niektorý novší prehliadač, ktorý však musí mať podporu JavaScriptu. Požiadavky na prenosový kanál Od parametrov prenosového kanála závisí rýchlosť spustenia a prezerania celého kurzu. Preto bol kurz navrhovaný s dôrazom na čo najmenšiu výslednú veľkosť, vďaka čomu je práca s kurzom rýchla a príjemná a taktiež pamäťové požiadavky na archivačné média sú (v dnešnej dobe veľkokapacitných médií) minimálne. Kompletný kurz má veľkosť zhruba 4,9MB, čo však zahŕňa všetky tri kapitoly, v oboch verziách ( s aj bez podpory JavaScriptu a FLASH) spolu s verziou vo formáte WORD. Keď študent spustí kurz, neprenáša všetky tieto údaja naraz. Potrebuje preniesť údaje prislúchajúce len zvolenej kapitole. Veľkosť prvej kapitoly (vo verzii s animáciami) je 247kB, druhej kapitoly 403kB a tretej kapitoly 268kB. Vo verzii bez FLASH sa nezobrazujú animácie a vo verzii s animáciami sa nezobrazujú náhradné obrázky. Čas, ktorý je potrebný na prenesenie týchto údajov som zmeral pri použití dvoch rôznych internetových prehliadačov a pri rôznych rýchlostiach pripojenia. Keďže som mal k dispozícii len vysokorýchlostné pripojenie k internetu, pomocou ktorého sa kurz zobrazí takmer okamžite, použil som softvér na obmedzenie rýchlosti pripojenia, ktorý riadením - 14 -
QoS zníži rýchlosť pripojenia na požadovanú hodnotu. Pomocou neho som simuloval pripojenie rýchlosťou 56kb/s, 128kb/s a 256kb/s. Namerané časy sú v (tab. 2.1.). Prehliadač Internet Explorer Mozilla Firefox Rýchlosť pripojenia [kb/s] 56 128 256 56 128 256 Čas načítania [s] prvá strana / celá kapitola 1. kap. 5 / 37 5 / 20 2,5 / 10 5 / 38 5 / 16,9 2,6 / 8 2. kap. 7 / 62 4 / 30 2,7 / 13 8 / 59,5 5,9 / 27 3,5 / 12,8 3. kap. 7 / 41 5 / 22 2,6 / 10 6,3 / 39,4 6 / 17,3 3,7 / 8,5 Tab. 2.1 Nameraná rýchlosť načítania jednotlivých kapitol Teoretický čas načítania: objem prenášaných dát t = rýchlosť pripojenia Rýchlosť pripojenia 56[kb/s] =7[kB/s] 128[kb/s] =16[kB/s] 256[kb/s] =32[kB/s] Kap. Veľkosť[kB] Čas načítania [s] 1 247 35,3 15,4 7,7 2 403 57,6 25,2 12,6 3 268 38,3 16,7 8,4 Tab. 2.2 Vypočítaná rýchlosť načítania jednotlivých kapitol Meral som dva časy: jednak čas, kedy sa zobrazí kompletná prvá stránka (po jej načítaní môže študent začať študovať, aj keď ešte nie je načítaná celá kapitola) a čas, za ktorý sa nahrá kompletná kapitola so všetkými obrázkami a animáciami. Namerané časy zodpovedajú teoretickým predpokladom, len sú o niečo vyššie. Je to spôsobené tým, že okrem požadovaných dát sa kanálom prenášajú aj rôzne riadiace informácie, kvôli čomu nemôžeme na prenos požadovaných dát využiť celú šírku prenosového kanála. Ako vidieť z nameraných časov, kurz sa dá používať aj pri najmenších používaných rýchlostiach pripojenia. Optimálne je však pripojenie rýchlosťou 256kb/s a rýchlejšie. - 15 -
3. MULTIMEDIÁLNY CBT KURZ Mnou realizovaný kurz sa skladá z nasledujúcich kapitol: 1. Spôsoby popisu logických funkcií 2. Syntéza sekvenčných logických obvodov 3. Posuvné registre Moju úlohou bolo spracovanie troch kapitol, ktoré navrhol vedúci diplomovej práce. Kurz je realizovaný tak, aby v ňom bolo možné v budúcnosti doplniť ďalšie kapitoly, čím sa kurz stane komplexnejším a bude pokrývať celú problematiku logických systémov. Pre každú kapitolu som navrhol aj sadu testových otázok, pomocou ktorých si môže študujúci overiť nadobudnuté vedomosti. 3.1. SPÔSOBY POPISU LOGICKÝCH FUNKCIÍ 3.1.1. Úvod Obr. 3.1.1. George Boole George Boole (1815-1864), britský matematik a logik, ktorý vyvinul Booleovu algebru. V roku 1849 začal učiť na Queen's College v Corku (Írsko), aj keď nemal univerzitné vzdelanie. V roku 1857 bol zvolený za člena Royal Society. V 1854 Boole popísal algebrický systém, ktorý sa stal neskôr známy ako Booleova algebra. V Booleovej algebre sú logické výroky označené symbolmi a môžu byť spracovávané abstraktnými matematickými operátormi, ktoré korešpondujú so zákonmi logiky. Hlavný význam má Booleova algebra pre moderné počítače. - 16 -
V nasledujúcich odstavcoch budú popísané spôsoby popisu logických funkcií a zhodnotené výhody a nevýhody jednotlivých postupov pre ďalšie kroky v syntéze logických obvodov. Ak nebudeme uvažovať slovné zadanie logickej funkcie, tak najčastejšie používané spôsoby pre vyjadrenie Booleovych funkcií sú: pravdivostná tabuľka Karnaughova mapa (pripadne iné mapy, napr. Svobodova) logický (algebraický) výraz schematické značky Ďalšími spôsobmi vyjadrenia logickej funkcie sú: zoznam indexov vstupných vektorov (stavových indexov) zobrazenie n - rozmerným telesom Vennov diagram kontaktná forma 3.1.2. Pravdivostná tabuľka Pravdivostná tabuľka je najbežnejší spôsob popisu logickej funkcie. Presne popisuje správanie sa logického obvodu, ale neobsahuje žiadny návod na jeho realizáciu. Môžeme ju teda vnímať ako model správania sa logického systému. Obsahuje súhrn všetkých kombinácií vstupných premenných a im zodpovedajúcich výstupných premenných. Ak má logická funkcia n nezávislých premenných, bude mať pravdivostná tabuľka 2 n riadkov.[6] Príklad zobrazenia logickej funkcie je uvedený v (tab. 3.1.1) pre logickú funkciu troch premenných. V stĺpci Min. sú uvedené mintermy a v stĺpci Max. sú uvedené maxtermy. Funkcia f 1 je definovaná vo všetkých riadkoch tabuľky. Pre všetky kombinácie vstupných premenných je jej hodnota 1 nebo 0. Pravdivostnou tabuľkou môžeme vyjadriť určitú aj neurčitú funkciu. Príkladom neurčitej logickej funkcie je funkcia f 2. V dvoch riadkoch je zapísaný symbol X, ktorý značí, že pri týchto kombináciách vstupných premenných je jedno, či logická funkcia bude mať hodnotu 1 nebo 0. - 17 -
N c b a Min. Max. f 1 (N) f 2 (N) 0 0 0 0 c. b. a c + b + a 1 1 1 0 0 1 c. b. a c + b + a 1 0 2 0 1 0 c. b. a c + b + a 0 X 3 0 1 1 c. b. a c + b + a 0 1 4 1 0 0 c. b. a c + b + a 1 X 5 1 0 1 c. b. a c + b + a 0 0 6 1 1 0 c. b. a c + b + a 1 1 7 1 1 1 c. b. a c + b + a 1 0 Tab. 3.1.1. Pravdivostná tabuľka určitej funkcie f 1 a neurčitej funkcie f 2 Z pravdivostnej tabuľky môžeme získať logický výraz pre jednotlivé logické funkcie. Logický výraz funkcie f 1 môžeme z pravdivostnej tabuľky získať dvoma spôsobmi: súčtovou formou súčinovou formou podľa toho, či použijeme k popisu logickej funkcie riadky, v ktorých funkcia nadobúda hodnotu log. 1 alebo riadky, v ktorých nadobúda hodnotu log. 0. Spôsob popisu logických funkcií pomocou logických výrazov bude popísaný v kapitole 3.1.4 Logický (algebraický) výraz. Zobrazenie logickej funkcie pomocou pravdivostnej tabuľky je prehľadné a vhodné aj pre väčší počet premenných, slúži ako východiskový prostriedok pri definovaní kombinačných logických obvodov a dáva nám jednoznačnú informáciu o tom, či je funkcia určitá alebo neurčitá. Je však nevhodné pre zjednodušovanie logických výrazov vyplývajúcich z tejto funkcie a v prípade, ak chceme funkciu vyjadriť určitým typom logických členov, napr. NAND alebo NOR. 3.1.3. Zoznam stavových indexov Zoznam stavových indexov predstavuje zjednodušený zápis pravdivostnej tabuľky. Stavovým indexom rozumieme dekadickú hodnotu kombinácie binárnych vstupných premenných. Napríklad kombináciu štyroch vstupných premenných 0110 môžeme jednoznačne reprezentovať stavovým indexom 6. Logickú funkciu môžeme - 18 -
potom zapísať ako zoznam stavových indexov vstupných kombinácií, pre ktoré logická funkcia nadobúda hodnoty 1, alebo zoznam indexov, pre ktoré nadobúda hodnoty 0. V pravdivostnej tabuľke (tab. 3.1.1) sú stavové indexy N pre dané premenné uvedené v prvom stĺpci. Logickú funkciu f 1 z tejto tabuľky môžeme vyjadriť dvoma spôsobmi: v súčtovej forme, ako sumu stavových indexov, pre ktoré nadobúda f 1 hodnotu 1 f 1( c, b, a) = (0,1,4,6,7 ) v súčinovej forme, ako súčin stavových indexov, pre ktoré nadobúda f 1 hodnotu 0 f 1( c, b, a) = (2,3,5) V prípade neurčitej výstupnej funkcie f 2 musíme doplniť zoznam stavových indexov o tie kombinácie vstupných premenných, pre ktoré daná logická funkcia nie je definovaná, pričom musí platiť, že v súčtovej forme pripočítavame sumu stavových indexov neurčitých stavov a v súčinovej forme násobíme súčinom stavových indexov neurčitých stavov. Potom pre danú pravdivostnú tabuľku (tab. 3.1.1) dostávame: súčtovú formu f ( c, b, a) (2,4) 2 = (0,3,6) + X súčinovú formu f ( c, b, a) (2,4) 2 = (1,5,7). X Zobrazenie logickej funkcie pomocou zoznamu stavových indexov je vhodné len ako kratší zápis pravdivostnej tabuľky, najmä pri väčšom počte vstupných premenných. Tento zápis je však neprehľadný a nevhodný pre minimalizáciu logickej funkcie.[6] 3.1.4. Logický (algebraický) výraz Logický výraz je analytickým vyjadrením logickej funkcie pomocou logických (Booleovych) premenných. Rozoznávame dve varianty súčtovej, resp. súčinovej formy, a to úplnú a minimálnu formu. Úplná normálna forma znamená, že v súčtovej (súčinovej) forme obsahuje toľko súčinov (súčtov), koľko je jednotkových (nulových) hodnôt - 19 -
logickej funkcie v pravdivostnej tabuľke danej logickou funkciou. Minimálna normálna forma predstavuje taký algebraický tvar logickej funkcie, ktorý je určitým spôsobom najjednoduchší (napr. má najmenší počet symbolov premenných). Postup, ktorým sa hľadá minimálna forma, sa nazýva minimalizácia. Úplná normálna disjunktívna (súčtová) forma UNDF je daná súčtom základných súčinových členov (mintermov). f ( x 2 n 1 1, x2... xn ) = f ( X i ). Mi( X i ) i= 0 kde f X ) predstavuje hodnotu funkcie v stave určenom vektorom vstupných ( i premenných X i (resp. stavovým indexom) Mi ( X i ) je minterm nadobúdajúci hodnotu 1 pre vektor vstupných premenných X i Pre určovanie mintermov Mi X ) platí, že v stave priamom sú tie nezávislé premenné, ( i ktoré majú hodnotu 1. V stave negovanom sú premenné s hodnotou 0. Úplná normálna konjunktívna (súčinová) forma UNKF je daná súčinom základných súčtových členov (maxtermov). f ( x 2 n 1 1, x2... xn ) = i i ) i= 0 [ f ( X ) + Ma( X ] kde f X ) predstavuje hodnotu funkcie v stave určenom vektorom vstupných ( i premenných X i (resp. stavovým indexom) Ma( X i ) je maxterm nadobúdajúci hodnotu 0 pre vektor vstupných premenných X i Pre určovanie maxtermov Ma X ) platí, že v stave priamom sú tie nezávislé premenné, ( i ktoré majú hodnotu 0. V stave negovanom sú premenné s hodnotou 1.[6] Spôsob vytvárania UNDF alebo UNKF z pravdivostnej tabuľky je názorne vysvetlený na príklade 1. Výhodou popisu logickej funkcie algebraickým výrazom je, že logickému výrazu jednoznačne zodpovedá obvodová štruktúra. Logický výraz tak môžeme považovať za model štruktúry logického obvodu. Úplná súčtová a súčinová forma logickej funkcie však obsahujú v každom člene všetky premenné a preto tieto - 20 -
formy nie sú z hľadiska realizácie základnými logickými členmi vhodné. Vstupujú preto do minimalizačných procedúr. Snahou je získať minimálne formy, ktoré budú obsahovať minimálny počet členov a v každom z nich minimálny počet premenných. Minimálna forma je už vhodná na realizáciu obvodu základnými logickými členmi. V praxi však väčšinou existujú formy zmiešané (t.j. kombinácie konjunktívnej aj disjunktívnej formy). Nevýhodou tohto spôsobu popisu je, že neposkytuje informáciu o tom, či je logická funkcia určitá alebo nie. 3.1.5. Schematické značky Každému logickému výrazu jednoznačne zodpovedá obvodová štruktúra za predpokladu, že máme k dispozícii všetky realizačné členy zodpovedajúce operátorom výrazu. Pri použití obvodov malej hustoty integrácie sú základnými realizačnými prvkami logickej funkcie základné logické členy. Za základné logické členy môžeme v praxi považovať logický súčet (OR), logický súčin (AND) a negáciu (NOT), za odvodené členy negovaný logický súčet (NOR), negovaný logický súčin (NAND) a súčet modulo2 (XOR). Obr. 3.1.2. Schematické značky základných logických členov - 21 -
Ak máme zadaný logický výraz popisujúci logickú funkciu, môžeme pomocou základných logických členov (schematických značiek) navrhnúť štruktúru logického obvodu realizujúceho danú funkciu. V takejto schéme je každá logická funkcia (logický člen) označená svojou jedinečnou schematickou značkou, ktorá vychádza z normy (napríklad z normy ČSN alebo vo svete z najviac používanej americkej normy MIL-STD-806B, alebo IEEE). Krúžok na niektorom zo vstupov alebo výstupov znamená, že daný vstup alebo výstup je negovaný. Schematické značky základných logických členov sú na (obr. 3.1.2). Spôsob vytvorenia schematického zapojenia obvodu z algebraického výrazu je vidieť na príklade 2. Schematické značky majú význam pri grafickom znázornení logických funkcií a pri návrhu možnej realizácie logickej funkcie danými logickými členmi, prípadne pri úprave zapojenia pre určitý typ logických členov. Pri veľkom počte vstupných premenných sú však neprehľadné a neposkytujú rýchlu informáciu o stave výstupnej funkcie danej kombináciou vstupných premenných. 3.1.6. Vennov diagram Vennov diagram je množinovým spôsobom zobrazenia logickej funkcie. V rovinnej oblasti zvolíme toľko samostatných podoblastí, koľko máme vstupných premenných. Podoblasti volíme tak, aby existoval neprázdny prienik ktorejkoľvek možnej kombinácie týchto podoblastí. Jednoznačné priradenie nastane vtedy, ak zvolíme, že vstupná premenná bude jednotková vnútri príslušnej podoblasti, ako je to vidieť na (obr. 3.1.3). Obr. 3.1.3. Vennov diagram pre dve Booleove premenné - 22 -
Vennov diagram má význam pri logickom zobrazení základných logických funkcií ako sú AND, OR, NOT, atď., pri zobrazení základných Booleovych zákonov, prípadne pri zobrazení jednoduchých logických funkcií. Pri zobrazení logickej funkcie s väčším počtom vstupných premenných sa stáva Vennov diagram veľmi zložitý a neprehľadný, čo vidieť na (obr. 3.1.4), pričom ide o zobrazenie logickej funkcie len 3 premenných.[6] Obr. 3.1.4. Vennov diagram pre funkciu f 1 z pravdivostnej tabuľky (tab. 3.1.1) 3.1.7. Mapa logickej funkcie Zobrazenie logickej funkcie pomocou mapy poskytuje alternatívnu formu zobrazenia logickej funkcie. Mapy sa okrem zobrazenia danej funkcie používajú najmä na minimalizáciu logických funkcií, čo bude popísané neskôr v kapitole Minimalizácia logických funkcií, teraz sa budeme zaoberať len spôsobom zápisu logickej funkcie. Mapa je tabuľka, ktorá ma toľko políčok, koľko je kombinácií nezávislých premenných. Funkcia s n premennými sa teda vyjadruje pomocou mapy s 2 n políčkami (obr. 3.1.6), pričom n premenných rozdelíme do dvoch približne rovnakých skupín n 1 a n 2. Potom zostavíme mapu, ktorá bude mať 2 n1 stĺpcov a 2 n2 riadkov, pričom každému riadku, resp. stĺpcu prislúcha jedna kombinácia nezávisle premenných. Mapa je v podstate transformáciou pravdivostnej tabuľky a každému riadku tabuľky jednoznačne zodpovedá jedno políčko mapy, do ktorého sa zapisuje hodnota logickej funkcie pre danú kombináciu vstupných premenných (1, 0, X). Riadky a stĺpce, v ktorých je príslušná - 23 -
nezávisle premenná v priamom tvare, sa v mapách označujú pruhom nad príslušným stĺpcom, resp. vedľa príslušného riadku. Obr. 3.1.6. Mapa logickej funkcie pre päť premenných Podľa spôsobu kódovania, ktorým priraďujeme políčka mapy jednotlivým kombináciám vstupným premenným, rozlišujeme rôzne typy máp (obr. 3.1.7). Najznámejšia je Karnaughova mapa, prípadne Svobodova mapa. Pri Karnaughovej mape sa susedné políčka líšia len v hodnote jednej nezávisle premennej (pre kódovanie využíva Grayov kód). Je to najpoužívanejší typ mapy a je výhodný pri zjednodušovaní logickej funkcie a pracuje sa s ňou ľahšie ako so Svobodovou mapou. Pri Svobodovej mape rastú stavové indexy jednotlivých políčok mapy zľava doprava po stĺpcoch a zhora nadol po riadkoch (pre kódovanie využíva priamy dvojkový (binárny) kód). Mapa sa dá jednoducho rozširovať aj pre väčší počet premenných.[6] Obr. 3.1.7. Zostavenie Karnaughovej mapy a Svobodovej mapy - 24 -
Na (obr. 3.1.7) je v strede každého políčka uvedený stavový index logickej funkcie a v hornom rohu každého políčka je prislúchajúca kombinácia vstupných premenných. Ako vidieť, pri Svobodovej mape postupne narastá stavový index. Pri Karnaughovej mape síce stavový index nenarastá postupne (čo môže zneprehľadniť mapu pri väčšom počte premenných), ale políčka nachádzajúce sa vedľa seba sa líšia len v logickej hodnote jednej premennej, čo je výhodné pri minimalizácii. Príklad vypĺňania Karnaughovej mapy (podľa pravdivostnej tabuľky) pre funkciu troch premenných je názorne vysvetlený na (obr. 3.1.8), alebo pre funkciu štyroch premenných na príklade 3. Takto vytvorené mapa potom vstupuje do minimalizačných procedúr. Obr. 3.1.8. Karnaughova mapa pre tri premenné 3.1.8. Vyjadrenie logickej funkcie n rozmerným telesom Ďalším spôsobom popisu logickej funkcie je vyjadrenie logickej funkcie n rozmerným telesom. Pre n premenných to je n rozmerná kocka, ktorá vznikne vytvorením 2 n vektorov, pričom súradnice sú dané hodnotami vstupných premenných a koncové body týchto vektorov ležia vo vrcholoch jednotkovej n rozmernej kocky. Pre zobrazenie hodnoty logickej funkcie v danom bode sa používa viacero zápisov. Jedna z možností je, že v danom bode sa priamo napíše hodnota logickej funkcie (1, 0, X). Ak však chceme v danom bode súčasne zobraziť aj stavový index, resp. kombináciu vstupných premenných, je vhodnejšie použiť grafické znázornenie hodnoty funkcie. Vtedy sú jednotlivé stavy logickej funkcie reprezentované rôznymi grafickými značkami (obr. 3.1.10). Takéto značky sú potom zobrazené v príslušných vrcholoch telesa. - 25 -
Obr. 3.1.10. Grafické zobrazenie rôznych stavov logickej funkcie Pre funkciu jednej premennej si môžeme predstaviť úsečku o veľkosti 1 (jednotkovú úsečku), kde každému koncu tejto úsečky priradíme hodnotu logickej funkcie f, zodpovedajúcu príslušnej hodnote vstupnej premennej (obr. 3.1.11a). Ak potrebujeme zobraziť logickú funkciu dvoch nezávisle premenných, môžeme na to využiť štvorec s dĺžkou strany 1 (jednotkový štvorec), ktorý umiestnime do roviny označenej symbolmi vstupných premenných (obr. 3.1.11b). Jednotlivé vrcholy štvorca tak budú jednoznačne priradené príslušnej kombinácii vstupných premenných. Jednotková n rozmerná kocka (obr. 3.1.11c) je vhodná na zobrazenie logickej funkcie troch nezávisle premenných. Každému vrcholu kocky zodpovedá vektor súradníc, ktorý predstavuje kombináciu vstupných premenných. Každému vrcholu potom priradíme funkčnú hodnotu, ktorá zodpovedá príslušnej kombinácii vstupných premenných. Obr. 3.1.11. Zobrazenie logickej funkcie pomocou n rozmerného telesa a) pre jednu premennú (jednotková úsečka) b) pre dve premenné (jednotkový štvorec) c) pre tri premenné (jednotková kocka) Trojrozmerná jednotková kocka (alebo aj viacrozmerné teleso) sa dá okrem priestorovej formy zobraziť aj v tzv. plochej forme (obr. 3.1.12). Toto vyjadrenie je však pomerne zložité a používa sa najmä na demonštráciu bezpečnostných kódov (kódová - 26 -
vzdialenosť medzi obsadenými symbolmi). Podrobná ukážka zostavenia n rozmerného telesa pre funkciu 3 premenných je znázornená v príklade 4. Obr. 3.1.12. n rozmerné teleso pre tri premenné v priestorovej a plochej forme Pre funkciu štyroch a viac premenných sa už n rozmerné teleso znázorňuje zložito, čo je vidieť na (obr. 3.1.13). Pri štyroch premenných môžeme teleso zobraziť tak, že zobrazíme dve jednotkové kocky vedľa seba, pričom to, v ktorej kocke sa budeme práve nachádzať, bude určovať premenná prislúchajúca LSB, resp. MSB (obr. 3.1.13a). Druhou možnosťou je zobraziť tzv. štvorrozmernú kocku, ktorú v podstate tvoria dve kocky (menšia a väčšia) s rovnakým stredom. Potom jedna premenná bude určovať, v ktorej kocke (vonkajšej alebo vnútornej) sa budeme práve pohybovať (obr. 3.1.13b).[6] Obr. 3.1.13. n rozmerné teleso pre štyri premenné - 27 -
3.1.9. Hypertextové odkazy < Booleova algebra > Booleova algebra má uplatnenie pri návrhu logických obvodov zostavených z členov: logický súčet, logický súčin a logická negácia, ktorými je možné základné operácie Booleovej algebry priamo realizovať. Booleova premenná je taká premenná, ktorá môže nadobúdať len hodnoty 0 alebo 1. < mintermy > Pojmom minterm označujeme základný súčinový člen. Je to súčin, ktorý obsahuje všetky vstupné premenné v priamej alebo negovanej forme, napr. pri vstupných premenných a, b, c môže mať minterm tvar: a. b. c Základný súčinový člen a. b. c = 1, ak a = 1, b = 0, c = 1. Platí pravidlo, že mintermy sú negáciou maxtermov: Tiež platí, že súčet všetkých mintermov = 1. a. b. c = a + b + c < maxtermy > Pojmom maxterm označujeme základný súčtový člen. Je to súčet, ktorý obsahuje všetky vstupné premenné v priamej alebo negovanej forme, napr. pri vstupných premenných a, b, c môže mať maxterm tvar: a + b + c Základný súčtový člen a + b + c = 0, ak a = 1, b = 0, c = 1. Platí pravidlo, že maxtermy sú negáciou mintermov: a + b + c = a. b. c Tiež platí, že súčin všetkých maxtermov = 0. - 28 -
< Stavovým indexom > Stavový index je definovaný ako dekadická hodnota binárne zakódovaného vstupného slova. Stavový index N môžeme určiť: N n 1 = i= 0 2. i xi kde i 2 - je váha vstupnej premennej x i x i - je i-tá vstupná premenná < normálna > Normálna forma logickej funkcie znamená, že logická funkcia je zapísaná len pomocou logického súčtu, logického súčinu, alebo negácie. < príklade 1 > Príklad: Odvoďte UNDF logickej funkcie f z pravdivostnej tabuľky (obr. 3.1.17). Úplná normálna súčtová forma vyjadruje logickú funkciu ako súčet základných súčinových členov (mintermov), v ktorých funkcia nadobúda hodnoty log. 1: Obr. 3.1.17. Odvodenie UNDF - 29 -
Stačí vyjadriť len tie kombinácie vstupných premenných, kde f = 1!!! Príklad: Odvoďte UNKF logickej funkcie f z pravdivostnej tabuľky (obr. 3.1.18). Úplná normálna súčinová forma vyjadruje logickú funkciu ako súčin základných súčtových členov (maxtermov), v ktorých funkcia nadobúda hodnoty log. 0: Obr. 3.1.18. Odvodenie UNKF Stačí vyjadriť len tie kombinácie vstupných premenných, kde f = 0!!! < príklade 2 > Navrhnime logický obvod zadaný logickým výrazom f ( a, b, c) = a. bc. + a. b. c s použitím základných logických členov AND, OR, NOT. Jednotlivé logické operácie vo výraze nahradíme základnými členmi. Schéma navrhnutého logického obvodu je uvedená na obrázku (obr. 3.1.5). Obr. 3.1.5. Výsledná bloková schéma logického obvodu - 30 -
< príklade 3 > Príklad: Podľa zadanej logickej funkcie f v tvare UNDF (obr. 3.1.9) správne zostavte pravdivostnú tabuľku a vyplňte Karnaughovu mapu. Obr. 3.1.9. Karnaughova mapa pre štyri premenné < príklade 4 > Obr. 3.1.14. Zostavenie n rozmerného telesa pre funkciu troch premenných < LSB > LSB (Least Significant Bit) najnižší platný bit, niekedy označovaný aj ako pravý okrajový bit. Predstavuje najnižší rád binárneho čísla. - 31 -
Obr. 3.1.15. LSB najnižší platný bit < MSB > MSB (Most Significant Bit) najvyšší platný bit, niekedy označovaný aj ako ľavý okrajový bit. Predstavuje najvyšší rád binárneho čísla. Obr. 3.1.16. MSB najvyšší platný bit 3.1.10. Testovanie vedomostí 1. Pri vytváraní UNDF z pravdivostnej tabuľky berieme do úvahy tie riadky tabuľky, kde má logická funkcia hodnotu: a) 0 b) 1 c) X d) 0 alebo 1 2. Pri vytváraní UNKF z pravdivostnej tabuľky berieme do úvahy tie riadky tabuľky, kde má logická funkcia hodnotu: a) 0 b) 1 c) X d) 0 alebo 1-32 -
3. Na obrázku je zobrazená schematická značka logického člena: a) AND b) NOT c) XOR d) OR 4. Pri Vennovom diagrame ma logická premenná vo vnútri prislúchajúcej podoblasti hodnotu: a) f b) X c) 1 d) 0 5. Koľko políčok má Karnaughova mapa pre funkciu piatich premenných: a) 32 b) 16 c) 5 d) 10 6. Čím je charakteristická Karnaughova mapa: a) stavový index narastá postupne zľava doprava a zhora nadol b) susedné políčka sa líšia len v hodnote jednej nezávisle premennej c) nie je vhodná pre minimalizáciu logických funkcií d) umožňuje priamo navrhnúť zapojenie logického obvodu 7. Ktorý spôsob popisu logickej funkcie je najvhodnejší na priamy návrh zapojenia logického obvodu: a) Karnaughova mapa b) pravdivostná tabuľka c) n - rozmerné teleso d) algebraický výraz - 33 -
8. Čo je to maxterm: a) základný súčtový člen b) základný súčinový člen c) stav, keď funkcia nadobúda hodnotu 1 d) stav, keď funkcia nadobúda hodnotu 0 9. Akú hodnotu ma stavový index N, ak pre funkciu f(a, b, c, d) majú vstupné premenné hodnotu a=0, b=1, c=1, d=0: a) 2 b) 4 c) 6 d) 8 10. Medzi operácie Boolovej algebry nepatrí: a) logický súčet b) logický súčin c) logický rozdiel d) logická negácia - 34 -
3.2. SYNTÉZA SEKVENČNÝCH LOGICKÝCH OBVODOV 3.2.1. Úvod Sekvenčný logický obvod (ďalej len SLO) obsahuje na rozdiel od kombinačného logického obvodu (ďalej len KLO), ktorého výstupný stav je jednoznačne daný len okamžitým vstupným stavom, okrem kombinačnej časti aj pamäťové členy. Výstupný stav SLO nezávisí len od vstupného stavu, ale aj od vnútorného stavu (obr. 3.2.1). Obr. 3.2.1. Schéma sekvenčného logického obvodu Funkciu takéhoto obvodu môžeme popísať dvoma rovnicami. Rovnicou pre výstupnú funkciu: Y = F X ; Z ) (2.1) i ( j k a rovnicou pre prechodovú funkciu (rovnica pre nasledujúci vnútorný stav): Z k, t+ 1 = G( X j, t; Zk, t ) (2.2) V rovniciach označuje Y i množinu výstupov SLO Y i = (y 1, y 2,..., y m ), X j označuje množinu vstupov SLO X j = (x 1, x 2,..., x n ) a Z k označuje množinu vnútorných stavov SLO Z k = (z 1, z 2,..., z r ). Premenné z 1, z 2,..., z r sa nazývajú vnútorné premenné a tvoria ich výstupy jednotlivých preklápacích (klopných) obvodov (ďalej len PO). Množina všetkých - 35 -
výstupov PO v určitom čase t tvorí vnútorný stav Z k t. Tento stav nazývame okamžitý (súčasný) vnútorný stav. Nasledujúci vnútorný stav SLO označujeme Z k,t+1. Výstupnú funkciu vyjadrenú časovou závislosťou môžeme zapísať v tvare: Y = F X ; Z ) (2.3) i, t ( j, t k, t Logický obvod plne popísaný rovnicami (2.2) a (2.3) nazývame logický obvod typu MEALY. Ak je kombinačná časť sekvenčného obvodu rozdelená na dve časti a výstup SLO je jednoznačne určený jeho vnútorným stavom, nazývame logický obvod typu MOORE (obr. 3.2.2). Pre Moorov sekvenčný obvod platia rovnice (2.4) a (2.5). Y = F Z ) (2.4) i, t ( k, t Z k, t+ 1 = G( X j, t ; Z k, t ) (2.5) Obr. 3.2.2. Schéma obvodu typu MOORE Z hľadiska časového sledu delíme SLO na: Asynchrónne: doba prenosu informácie zo vstupu na výstup je daná len vlastným fyzikálnym oneskorením obvodu. Zmenu výstupu môže spôsobiť len zmena vstupného stavu. Ak zanedbáme oneskorenia jednotlivých obvodov, zmena vnútorného stavu nastane ihneď v okamihu zmeny vstupného stavu. Nemajú synchronizačný impulz. - 36 -
Synchrónne: zmeny stavu na výstupe v závislosti na vstupnom stave sú časovo vymedzené synchronizačným signálom. Tento signál povolí zmenu vnútorného stavu len v definovaných okamihoch, nezávisle od zmeny vstupného signálu. Časový interval, medzi dvoma synchronizačnými impulzmi nazývame takt. Ak by sa menili hodnoty viacerých vstupných premenných súčasne, mohlo by dôjsť k neurčitým stavom (hazardom). Aby sme im zabránili, je dovolená len zmena v jednej premennej (pri asynchrónnych obvodoch), alebo sa používa synchronizačný signál a potom sa vstupy uplatňujú len v okamihoch tohto impulzu (synchrónne obvody).[11][12] 3.2.2. Spôsoby popisu správania SLO Správanie sekvenčných logických obvodov sa popisuje viacerými spôsobmi: prechodový diagram tabuľka prechodov časový diagram logické funkcie (rovnice) Logické funkcie Sú matematickým popisom správania SLO. Pomocou matematických rovníc vyjadrujú prechodové a výstupné funkcie, napr. pre obvod typu MEALY alebo MOORE môžu platiť rovnice uvedené na (obr. 3.2.3). Obr. 3.2.3. Príklad zápisu prechodových a výstupných funkcií pre obvod typu MEALY a MOORE - 37 -
Prechodový diagram Predstavuje grafický spôsob popisu správania SLO. Vnútorné stavy obvodu sú v ňom znázornené uzlami. Spojnice predstavujú prechody medzi vnútornými stavmi a popisujú vstupné a výstupné stavy. Potom výstupné a prechodové funkcie použité v predchádzajúcom prípade môžeme zobraziť prechodovými diagramami na (obr. 3.2.4). Obr. 3.2.4. Príklad prechodových diagramov pre obvod typu MEALY a MOORE Tabuľka prechodov Jednotlivé prechody vnútorných, resp. vonkajších stavov sú zobrazené formou tabuľky. Je to len iná interpretácia prechodového diagramu. Pre predchádzajúci príklad sú tabuľky prechodov zobrazené na (obr. 3.2.5). V tabuľke pre obvod typu MEALY je v prvom stĺpci uvedený súčasný (okamžitý) vnútorný stav SLO a prvom riadku nastávajúci vnútorný stav. V priesečníku daného súčasného vnútorného stavu a nastávajúceho vstupného stavu je zapísaný prechod do nového vnútorného a výstupného stavu. Ak prechod nie je definovaný (k prechodu nedochádza), je zobrazený znakom. Podobne to platí aj pre obvod typu MOORE, ale s tým rozdielom, že výstupný stav je viazaný len na vnútorný stav obvodu, nie aj na vstupný stav.[14] Obr. 3.2.5. Príklad tabuliek prechodov pre obvod typu MEALY a MOORE Pri popise správania SLO sa používa aj pravdivostná tabuľka a tabuľka budiacich funkcií. Tabuľka budiacich funkcií zobrazuje, za akých vstupných podmienok prejde - 38 -
obvod zo súčasného vnútorného stavu do určitého nasledujúceho vnútorného stavu. Pravdivostná tabuľka zobrazuje, ako sa zmení vnútorný stav pri danom vstupnom stave. Na popísanie zmeny vnútorného stavu SLO s jedným výstupom (má teda len dva možné (0/1) výstupné, resp. vnútorné stavy) sa používajú štyri typy transformácií (obr. 3.2.6). Sú to: pamäťová, jednotková, nulová a klopná. Transformácie sa uplatňujú v závislosti od vstupného a vnútorného stavu. Obr. 3.2.6. Typy transformácií 3.2.3. Popis správania bistabilných preklápacích obvodov Jedným zo základných prvkov SLO sú prvky, ktoré sú schopné zapamätať si hodnotu určitej dvojhodnotovej premennej. Sú to preklápacie (klopné) obvody (ďalej len PO). Patria medzi obvody typu MOORE, pretože ich výstupná hodnota je zhodná s vnútorným stavom. Preklápacie obvody majú väčšinou dve výstupné premenné, ktoré sú komplementárne. Označujú sa symbolmi Q a Q. Výstup Q sa nazýva priamy výstup a Q je negovaný výstup. Stav preklápacieho obvodu sa posudzuje podľa hodnoty na výstupe Q. Úlohou PO je zaznamenať prítomnosť prechodovej informácie a uchovať tento stav aj vtedy, keď informácia zmizne. PO sú teda elementárnou pamäťou. Ich výstupné stavy sa menia skokovo medzi dvoma hodnotami logických úrovní. Podľa počtu stabilných stavom delíme PO na: bistabilné monostabilné astabilné Pri syntéze SLO sa používajú väčšinou bistabilné preklápacie obvody (ďalej len BPO), preto sa ďalej budeme zaoberať len týmito typmi obvodov. Správanie BPO sa dá popísať tabuľkou, ktorá udáva závislosť výstupnej premennej v časovom okamihu t + 1-39 -
na hodnotách vstupných premenných v časovom okamihu t. Z tabuľky je ďalej možné určiť pre každý vstupný stav preklápacieho obvodu príslušnú transformáciu. Správanie BPO je úplne určené, ak je každému vstupnému stavu jednoznačne priradená jediná transformácia. Preklápací obvod typu S - R Tento PO má dva vstupy S (SET - nastavenie) a R (RESET - nulovanie). Jeho pravdivostná tabuľka, schematická značka, prechodový aj časový diagram sú na (obr. 3.2.7). Obvod pracuje tak, že signál hodnoty log. 1 privedený na vstup S nastaví obvod do stavu 1 a signál hodnoty log. 1 privedený na vstup R nastaví obvod do stavu 0. Pri kombinácii S = 0 a R = 0 sa stav preklápacieho obvodu nemení a obvod si pamätá svoj predchádzajúci stav. Vstupná kombinácia S = 1 a R = 1 je zakázaná (nedefinovaný stav). Používa sa aj variant, kde vstupy S a R sú negované a uplatňujú sa pri vstupných signáloch hodnoty log. 0 a taktiež sa používa synchrónna verzia obvodu typu S R, ktorá má naviac vstup synchronizačného impulzu T C. Vstupy S a R sa potom uplatňujú len v okamihu privedenia synchronizačného impulzu.[4] Obr. 3.2.7. Preklápací obvod typu S R a) schematická značka b) pravdivostná tabuľka c) tabuľka budiacich funkcií d) prechodový diagram e) časový diagram Preklápací obvod typu T Tento PO má len jeden vstup T. Jeho pravdivostná tabuľka, schematická značka, prechodový aj časový diagram sú na (obr. 3.2.8). Obvod pracuje tak, že ak je na - 40 -
vstup T privedený signál s hodnotou log 1, obvod sa preklopí do opačného stavu, než v ktorom sa práve nachádzal. Ak je privedený signál hodnoty log. 0, obvod ostane v pôvodnom stave a zapamätá si ho. Tento obvod má len klopnú a pamäťovú transformáciu. Asynchrónny obvod typu T nemá praktický význam (jedine ako multivibrátor). Preto sa používa synchrónny obvod T, ktorý má vstup hodinových impulzov a výstupný stav sa mení len v okamihu taktovacieho impulzu. Obr. 3.2.8. Preklápací obvod typu T a) schematická značka b) pravdivostná tabuľka c) tabuľka budiacich funkcií d) prechodový diagram e) časový diagram Preklápací obvod typu D Tento PO má len jeden vstup D. Jeho pravdivostná tabuľka, schematická značka, prechodový aj časový diagram sú na (obr. 3.2.9). Obvod pracuje tak, že ak je na vstup D privedený signál s hodnotou log. 1, tak obvod prejde do stavu 1 a zapamätá si ho a naopak, ak je privedený signál hodnoty log. 0, tak obvod prejde do stavu 0 a zapamätá si ho. Tento obvod má len nulovú a jednotkovú transformáciu. Asynchrónny obvod typu D tiež nemá praktický význam. Preto sa používa synchrónny obvod D, ktorý má vstup hodinových impulzov a výstupný stav sa mení len v okamihu taktovacieho impulzu. Používa sa ako pamäťový člen, pretože je schopný zapamätať si hodnotu na vstupe až do príchodu ďalšieho taktovacieho impulzu, alebo ako oneskorovací člen.[7] - 41 -
Obr. 3.2.9. Preklápací obvod typu D a) schematická značka b) pravdivostná tabuľka c) tabuľka budiacich funkcií d) prechodový diagram e) časový diagram Preklápací obvod typu J - K PO typu J - K predstavuje zdokonalený obvod typu R - S, ktorý nemá zakázaný stav vstupných premenných. Má dva vstupy J a K. Jeho pravdivostná tabuľka, schematická značka, prechodový aj časový diagram sú na (obr. 3.2.10). Obvod pracuje tak, že signál hodnoty log. 1 privedený na vstup J nastaví obvod do stavu 1 a signál hodnoty log. 1 privedený na vstup K nastaví obvod do stavu 0. Pri kombinácii J = 0 a K = 0 sa stav preklápacieho obvodu nemení a obvod si pamätá svoj predchádzajúci stav. Pri vstupnej kombinácii J = K = 1 sa obvod preklopí do opačného stavu, než v ktorom sa práve nachádzal. Väčšinou sa používa synchrónny obvod riadený taktovacím impulzom. Obr. 3.2.10. Preklápací obvod typu J K a) schematická značka b) pravdivostná tabuľka c) tabuľka budiacich funkcií d) prechodový diagram e) časový diagram - 42 -
3.2.4. Asynchrónny bistabilný preklápací obvod typu S - R Rozoznávame viaceré varianty BPO typu S R (ale aj ostatných typov). Podľa režimu, v akom pracujú môžu byť synchrónne alebo asynchrónne, ďalej môžu byť realizované z rôznych logických členov, prípadne môžu pracovať viacfázovo (obvod typu master - slave ). Asynchrónny obvod typu S R je najjednoduchším obvodom tohto typu. Zmena vstupov R a S sa okamžite prenáša na výstup. Jeho činnosť môžme popísať nasledovne: ak privedieme na vstupy R a S nulový signál, potom PO zostáva vo svojom predchádzajúcom stave ak privedieme na nastavovací vstup S signál S = 1 a na nulovací vstup R signál R = 0, potom prejde obvod do stavu log. 1 nezávisle na predchádzajúcom stave a zostáva v ňom aj po skončení signálu na vstupe S ak privedieme na nulovací vstup R signál R = 1 a na nastavovací vstup S signál S = 0, potom prejde obvod do stavu log. 0 nezávisle na predchádzajúcom stave a zostáva v ňom aj po skončení signálu na vstupe R súčasne privedenie signálu S = R = 1 znamená, že sa oba výstupy BPO majú nastaviť do stavu log. 1 (alebo log. 0, podľa toho, z akých členov je obvod realizovaný), čím je však porušená vzájomná inverzia výstupov a preto je tento stav zakázaný. Podľa tohto opisu správania a podľa pravdivostnej tabuľky pre asynchrónny obvod typu S R môžme zostaviť Karnaughovu mapu (obr. 3.2.12). Obr. 3.2.12. Karnaughova mapa asynchrónneho obvod typu S R Z tejto mapy môžeme odvodiť konkrétne mapy pre výstupy Q a Q v čase t + 1 (obr. 3.2.13). Výstup Q by sa dal realizovať aj použitím invertora z výstupu Q, avšak pri takomto riešení môžu vznikať hazardy spôsobené oneskorením invertora, čím sa môžu na výstupoch objaviť na okamih rovnaké hodnoty, a tým porušiť vzájomnú inverziu oboch výstupov. Preto sa navrhuje priamo aj zapojenie pre negovaný výstup, ktoré obsahuje - 43 -
rovnaký počet členov, ako zapojenie pre priamy vstup, a tým je zabezpečené rovnaké oneskorenie na oboch výstupoch. Obr. 3.2.13. Karnaughova mapa asynchrónneho obvod typu S R pre realizáciu členmi NAND Keď z takejto mapy zostavíme výrazy pre výstupy BPO v čase t + 1 v tvare UNDF, môžme priamo navrhnúť zapojenie obvodu pomocou členov NAND. Qt + 1 = S + Qt. R Q t + 1 = R + Qt. S (2.6) Úprava na členy NAND: Qt + 1 = Qt+ 1 = S + Qt. R = S. Qt. R (2.7) Qt + 1 = Qt+ 1 = R + Qt. S = R. Qt. S (2.8) Rovniciam (2.7) a (2.8) zodpovedá zapojenie na (obr. 3.2.14), čo predstavuje asynchrónny obvod typu S R realizovaný členmi NAND. Toto zapojenie sa vyznačuje tým, že vstupy S a R sa uplatňujú pri vstupnom signáli log. 0. Ak by sme chceli, aby sa uplatňovali pri vstupnom signáli hodnoty log. 1, stačí pridať na každý vstup invertor.[9] Obr. 3.2.14. Asynchrónny obvod typu S R realizovaný členmi NAND - 44 -
Ak však z Karnaughovej mapy zostavíme výrazy pre výstupy BPO v čase t + 1 v tvare UNKF (obr. 3.2.15), môžme priamo navrhnúť zapojenie obvodu pomocou členov NOR. Obr.3. 2.15. Karnaughova mapa asynchrónneho obvod typu S R pre realizáciu členmi NOR Qt + 1 = R.( Qt + S) Qt + 1 = S.( Qt + R) (2.9) Úprava na členy NOR: Qt + 1 = Qt+ 1 = R.( Qt + S) = R + ( Qt + S) (2.10) Qt + 1 = Qt+ 1 = S.( Qt + R) = S + ( Qt + R) (2.11) Rovniciam (2.10) a (2.11) zodpovedá zapojenie na (obr. 3.2.16), čo predstavuje asynchrónny obvod typu S R realizovaný členmi NOR. V tomto zapojení sa vstupy R a S uplatňujú pri hodnote log. 1. Ďalším rozdielom oproti predchádzajúcemu zapojeniu je to, že v zakázanom stave, keď R = S = 1 sú oba výstupy nulové (pri realizácii členmi NAND sú v zakázanom stave oba výstupy rovné log. 1.). Inak je správanie tohto zapojenia totožné s predchádzajúcim prípadom. Obr. 3.2.16. Asynchrónny obvod typu S R realizovaný členmi NOR - 45 -
Zaujímavá situácia nastáva aj v prípade, ak sa obvod nachádza v zakázanom stave R = S = 1 (v ktorom sú oba výstupy nulové) a súčasne sa zmenia oba vstupy R = S = 0. Vtedy sú oba vstupy oboch členov NOR rovné nule a oba výstupy sa snažia prejsť do stavu log. 1. Avšak jednému obvodu sa to podarí skôr (kvôli rozdielnemu oneskoreniu). Ak by prešiel horný člen NOR ako prvý do stavu log. 1, táto hodnota sa prenesie na vstup spodného hradla NOR a spôsobí, že jeho výstup bude rovný nule. Ale ako prvý môže prejsť do stavu log. 1 aj spodný člen. To, ktorý člen prejde do stavu log. 1 ako prvý je náhodné a preto je tento stav zakázaný.[10] 3.2.5. Synchrónny bistabilný preklápací obvod typu S - R Ak požadujeme, aby záznam informácie zo vstupov R a S do preklápacieho obvodu prebiehal len v určitom čase, je možné doplniť asynchrónny S - R preklápací obvod (asynchrónna časť) vstupnými hradlami, ktoré sa budú otvárať taktovacím impulzom T C (riadiaca časť). To je možné dosiahnuť napr. tak, že asynchrónny S - R preklápací obvod realizovaný členmi NAND doplníme o ďalšie dva vstupné členy NAND (obr. 3.2.17). Synchrónny preklápací obvod R-S sa niekedy označuje aj ako obvod RST. Obr. 3.2.17. Synchrónny obvod typu S R Pri návrhu takéhoto obvodu vychádzame z Karnaughovej mapy pre synchrónny S - R obvod (obr. 3.2.18). Tá je veľmi podobná mape asynchrónneho S - R obvodu. Líši sa len v tom, že obsahuje ďalšiu premennú T C a tam, kde T C je nulové sa uplatňuje pamäťová transformácia, pretože v čase, kedy nie je prítomný taktovací impulz si musí obvod pamätať svoj stav a nereagovať na zmeny vstupných signálov R a S. Obr. 3.2.18. Karnaughova mapa synchrónneho obvod typu S R - 46 -
Z tejto mapy môžme zostaviť konkrétne Karnaughove mapy pre oba výstupy obvodu v čase t + 1 (obr. 3.2.19) a z nich vyjadrením výrazov v tvare UNDF dostávame rovnice pre jednotlivé výstupy (2.13) a (2.14). Obr. 3.2.19. Karnaughova mapa synchrónneho obvod typu S R pre realizáciu členmi NAND Qt + 1 = S. TC + Qt. TC + Qt R Qt + 1 = RT. C + Qt. TC + Qt. S (2.12) Úprava na členy NAND: Q = t + 1 S. TC. Qt. TC. R (2.13) Q = t + 1 R. TC. Qt. TC. S (2.14) Rovniciam (2.13) a (2.14) zodpovedá zapojenie na (obr. 3.2.20), ktoré predstavuje synchrónny preklápací obvod typu S - R. Ak by sme vyjadrovali z Karnaughových máp výrazy v tvare UNKF, mohli by sme obvod realizovať členmi NOR, ale pretože návrh je podobný, ako v predchádzajúcej kapitole, nebudeme sa ním zaoberať.[13] Obr. 3.2.20. Synchrónny preklápací obvod typu S R - 47 -
Ak je taktovací impulz nulový, obvod je zablokovaný pomocou prvých dvoch členov NAND, pretože ich výstup je trvalo rovný log. 1 a akákoľvek zmena vstupov R a S nemôže zmeniť výstup Q. Obvod sa otvorí s príchodom taktovacieho impulzu a jedine v dobe jeho trvania je možné pomocou vstupov R a S meniť výstup Q. Ak je prítomný taktovací impulz a oba vstupy R a S sú rovné jednej, sú výstupy prvých dvoch hradiel nulové a oba výstupy Q aj Q sú rovné jednej (čím nie je dodržaná ich vzájomná inverzia). Potom môžu nastať dva neurčité stavy (hazardy). Ak T = R = S = 1 a dôjde k zmene T = 1 0, alebo dôjde k súčasnej zmene R = S = 1 0. Potom výstupy oboch vstupných hradiel sa súčasne zmenia z hodnoty log. 0 na log. 1, a tým sú oba vstupy výstupných hradiel rovné log. 1. Obe výstupné hradlá sa tak snažia prejsť do stavu log. 0, avšak jednému sa to podarí skôr ako druhému. To, ktorý z výstupov Q alebo Q bude v stave log. 0, a ktorý bude v stave log. 1, je náhodné. 3.2.6. Dvojfázový bistabilný preklápací obvod typu S - R (master - slave) Pri statických preklápacích obvodoch je stav obvodu určený úrovňou vstupného signálu. V prípade, ak dôjde k prekrytiu vstupných signálov pri asynchrónnych obvodoch, alebo k nedodržaniu šírky synchronizačného impulzu pri synchrónnych obvodoch, môže dôjsť ku vzniku hazardov, alebo sa obvod rozkmitá. Toto možno odstrániť dvojfázovým režimom taktovania. Dvojčinné preklápacie obvody sa nazývajú tiež obvody s medzipamäťou. Synchrónne S R preklápacie obvody popísané v predchádzajúcej kapitole, reagovali na hodnoty vstupov R a S po celú dobu prítomnosti logickej 1 na vstupe taktovacieho signálu. Preto im hovoríme, že sú tieto obvody riadené úrovňou taktovacieho signálu. Dvojčinným (dvojfázovým) preklápacím obvodom hovoríme, že sú riadene hranou taktovacieho impulzu (dynamické riadenie). Hlavné nevýhody obvodov riadených úrovňou sú: možnosť zmeny výstupu po celú dobu aktívnej napäťovej úrovne na vstupe taktovacieho impulzu nemožnosť použiť tieto obvody v čítačoch a posuvných registroch, pretože by sa signály na riadiacich vstupoch preklápacích obvodov behom aktívnej úrovne taktu preniesli okamžite až na výstup celého obvodu - 48 -
Preto je potrebné mať k dispozícii takéto preklápacie obvody, ktoré budú mať oddelené vstupy od výstupov. To je možné dosiahnuť pomocou dvoch stupňov preklápacích obvodov s oddeleným taktovaním. Dvojčinný preklápací obvod S R sa skladá z dvoch synchrónnych preklápacích obvodov S R: riadiaceho (Master) a riadeného (Slave) a z invertora, ktorý oddeľuje taktovací signál oboch obvodov, ako je to vidieť na (obr. 3.2.21). Obr. 3.2.21. Dvojfázový bistabilný preklápací obvod typu S - R (master - slave) Stav, ktorý je na vstupoch R a S sa zapisuje do prvého preklápacieho obvodu v dobe, keď je taktovací impulz na úrovni log. 1. Zmeny na vstupoch môžu ovplyvňovať zapísaný stav po celú dobu trvania vrcholu taktovacieho impulzu. Druhý preklápací obvod je blokovaný negovaným taktovacím impulzom a na jeho výstup sa zmeny neprenesú. V okamžiku, kedy prichádza dobežná hrana taktovacieho impulzu, si obvod master zapamätá posledné informácie zo vstupov R a S a jeho stav sa prepíše do obvodu slave pomocou signálov S a R a logickou 1 na jeho taktovacom vstupe. Pri taktovaní oboch obvodov musíme zabezpečiť, aby sa synchronizačné impulzy neprekrývali (aby nikdy neboli 00 / 11), čo je zabezpečené invertorom. Správanie tohto obvodu je zobrazené na (obr. 3.2.22) a na časovom diagrame (obr. 3.2.23). Obr. 3.2.22. Činnosť preklápacieho obvodu typu S - R (master - slave) Obvod tohto typu nie je zaistený proti možnosti vzniku nedefinovaného preklopenia, ak dobežná hrana taktovacieho impulzu prichádza v stave, keď vstupy R a S sú v stave log. 1., čo je vidieť aj na časovom diagrame (obr. 3.2.23). Dôležitý je však - 49 -
fakt, že stav výstupného preklápacieho obvodu slave zachytáva stav vstupov v jedinom okamihu, a to vo chvíli, kedy prebieha dobežná hrana taktovacieho impulzu a vždy je dodržaná vzájomná inverzia výstupov. V iných fázach taktovacieho impulzu nie je možné výstup ovplyvniť. Podľa konštrukcie obvodu ešte môžme zmeniť, či obvod bude riadený nábežnou alebo dobežnou hranou taktovacieho impulzu.[8] Obr. 3.2.23. Časový diagram preklápacieho obvodu typu S - R (master - slave) 3.2.7. Dvojfázový bistabilný preklápací obvod typu J - K (master - slave) Tento typ preklápacieho obvodu vychádza zo štruktúry synchrónneho J - K preklápacieho obvodu (obr. 3.2.24), ktorého konkrétnou syntézou sa nebudem zaoberať, pretože postup návrhu je rovnaký, ako pri návrhu preklápacieho obvodu typu S R. Obr. 3.2.24. Synchrónny preklápací obvod typu J - K Dvojfázový preklápací obvod J K sa líši od synchrónneho preklápacieho obvodu S R tým, že oba výstupy Q aj Q sú prepojené so vstupnými členmi tak, že výstupná funkcia je definovaná aj pre prípad, kedy J = K =1. Aby spätné väzby neboli účinné behom trvania synchronizačného impulzu (mohlo by dôjsť k nekontrolovanému - 50 -
kmitaniu), je J K preklápací obvod riešený ako obvod typu master slave (obr. 3.2.25). Tento obvod sa skladá z dvoch častí: riadiacej (Master) a riadenej (Slave) a z invertora, ktorý oddeľuje taktovací signál oboch častí. Obr. 3.2.25. J - K preklápací obvod typu master - slave Väčšinou sa tento obvod realizuje z členov NAND (obr. 3.2.26), preto sa budem ďalej venovať len tejto verzii, pričom obvod bude reagovať na dobežnú hranu synchronizačného impulzu. Úpravou zapojenia, keď zameníme pozíciu invertora (synchronizačný signál časti master bude negovaný a pre časť slave bude priamy), môžme dosiahnuť, že obvod bude reagovať na nábežnú hranu synchronizačného impulzu. Obr. 3.2.26. Zapojenie J - K preklápacieho obvodu typu master - slave Obvod master informáciu príjme a odovzdá ju do obvodu slave, ktorý informáciu uchová až do ďalšej zmeny na vstupoch J a K. Informácie privedené na vstupy J a K hradiel H 1 a H 2 sa zapisujú do časti master, ak taktovací signál T C = 1, teda nielen pri príchode nábežnej hrany. Informácie z výstupov X a Y hradiel H 3 a H 4 sa neuplatní na vstupoch hradiel H 5 a H 6, pretože výstup invertora H 9 = 0 a teda vstupná časť obvodu - 51 -
slave neprenáša informáciu na svoj výstup. Výstupy H 5 a H 6 = 1, čím uchovávajú predchádzajúcu informáciu uloženú v preklápajúcom obvode H 7 a H 8. Výstupné signály Q a Q privedené spätnou väzbou na vstupné členy H 1 a H 2 ovplyvňujú zápis informácie v tom zmysle, že príslušný výstupný signál s logickou nulou blokuje vstupný NAND a vnucuje mu na výstup logickú jednotku. Takže ak Q = 0, potom sa neuplatní signál na vstupe K, alebo ak Q = 0, neuplatní sa vstup J. Ak T C = 0, informácia na vstupoch J a K sa neuplatní, hradlá H 1 a H 2 sú zablokované. Informácia uložená v časti master na výstupoch X, Y sa však uplatní na vstupoch H 5 a H 6, pretože na výstupe invertora je log. 1. Informácia na výstupoch časti master sa prenáša do obvodu slave a objaví sa na výstupoch Q a Q. Ak sa má informácia preniesť zo vstupov J a K na výstupy Q a Q, musí sa taktovací impulz T C zmeniť z 1 do 0. Aktívna hrana je teda dobežná. V obvode master sa informácia uchováva počas trvania taktovacieho impulzu. Správanie sa dvojfázového preklápacieho obvodu typu J K je vidieť na (obr. 3.2.27). Pre pochopenie je vhodné si overiť a pochopiť časový diagram, ktorý je na (obr. 3.2.28) a zachytáva všetky možné stavy a prechody obvodu. Obr. 3.2.27. Činnosť preklápacieho obvodu typu J - K (master - slave) Obr. 3.2.28. Časový diagram preklápacieho obvodu typu J - K (master - slave) - 52 -
Ako z tohto časového diagramu vyplýva, obvod sa správa podobne ako obvod typu S R, keď vstupu S priradíme vstup J a vstupu R priradíme vstup K, avšak už nemá neurčitý stav, ako mal S R preklápací obvod, ale pri vstupoch J = K = 1 a po prechode taktovacieho impulzu, sa vždy preklopí do stavu opačného, než v akom sa práve nachádzal. Dvojfázový J K preklápací obvod sa vyrába aj v integrovanej forme ako obvod MH 7472 (obr. 3.2.29). Ten obsahuje tri súčinové vstupy J, tri súčinové vstupy K a naviac obsahuje aj prioritné vstupy R a S na nastavenie resp. nulovanie obvodu. Obr. 3.2.29. J K obvod MH 7472 Vstupy J a K sú súčinové, takže platí: J = J1. J 2. J 3 K = K1. K 2. K3 Vstupy S a R majú prioritu pred všetkými ostatnými vstupmi, aj pred taktovacím signálom T C a ich zmena sa okamžite prejaví na výstupe obvodu. Tieto vstupy sa uplatňujú v negovanej forme, takže keď na vstupe S je privedená log. 0, obvod prejde do stavu log. 1 a naopak, keď je privedená log. 0 na vstup R, prejde obvod do stavu log. 0. Vstupy R a S však nesmú nadobudnúť hodnotu log. 0 súčasne, pretože to vedie k stavu Q = 1 a Q = 1 na výstupe, čím je porušená vzájomná inverzia výstupov. Správanie tohto obvodu popisuje (obr. 3.2.30). - 53 -
Obr. 3.2.30. Časový diagram a pravdivostná tabuľka obvodu MH 7472 Pre správnu činnosť obvodu je potrebné zaručiť určité pracovné podmienky. Týka sa to hlavne časovej následnosti jednotlivých signálov. Z (obr. 3.2.31) vyplýva pre signály J a K vzhľadom na signál T C nasledovné: ak sa majú impulzy na vstupoch J a K uplatniť, musia mať voči impulzu T C požadovanú úroveň po dobu predstihu t SET UP ak sa impulzy na vstupoch J a K nemajú uplatniť, musia mať voči impulzu T C požadovanú úroveň až po dobe presahu t HOLD. Na úrovne, ktoré sa vyskytujú po dobe presahu už obvod nie je citlivý a môžu sa uplatniť až pri ďalšom impulze T C ak má platiť pravdivostná tabuľka (obr. 3.2.30), úrovne na vstupoch J a K sa už nesmú meniť (musia byť ustálené) počas trvania impulzu T C určená je tiež minimálna dĺžka nulovacieho impulzu t W(R) a nastavovacieho impulzu t W(S) tiež je určená minimálna šírka taktovacieho impulzu t W(Tc) Obr. 3.2.31. Časové závislosti signálov J, K a T C - 54 -
Obvod v čase t n prijíma vstupnú informáciu do časti master, v čase t n+1 sa uzatvárajú vstupy J a K a informácia z časti master sa presunie do časti slave a tým aj na výstupy celého obvodu. 3.2.8. Dvojfázový bistabilný preklápací obvod typu D (reagujúci na aktívnu hranu riadiaceho impulzu) Je to synchrónny sekvenčný logický obvod zložený z troch S R preklápacích obvodov vzájomne prepojených. Zapojenie obvodu (a jeho funkciu) je vidieť na (obr. 3.2.32), kde je aj jeho schematická značka, pretože tento obvod sa vyrába v integrovanej podobe ako obvod MH 7474. Obr. 3.2.32. Dvojfázový bistabilný preklápací obvod typu D Vstupy S a R sú asynchrónne voči vstupu T C a teda od neho nezávisia a prejavujú sa okamžite pri zmene hodnoty. Oba vstupy sú inverzné a preto sa uplatňujú pri hodnote log. 0. Vstup S slúži na nastavenie obvodu a vstup R slúži na jeho nulovanie. Ak T C = 0, vstup D sa neuplatní (nepresunie sa informácia) a na výstupoch Q a Q ostane hodnota predchádzajúceho stavu. Pri zmene T C z hodnoty nula do jedna (nábežná hrana) sa informácia zo vstupu D presunie na výstup obvodu. Ak T C = 1, vstup D sa neuplatní a na výstupe obvodu ostáva predchádzajúci stav. Keď S = 1 a R = 1 a ak T C = 0, potom - 55 -
výstupy hradiel H 2 a H 3 sú rovné jednej a ich privedením na vstupy hradiel H 5 a H 6 sa uchová predchádzajúci stav výstupov a stav obvodu sa nezmení. Nech v čase t n bude výstup Q = 1 a Q = 0 a na vstup D privedieme log. 0. Keď T C = 0 a D = 0, potom výstup H 2, H 3, H 4 = 1 a výstup H 1 bude nulový. Ak sa zmení T C z hodnoty nula do jedna, budú všetky vstupy H 3 rovné jednej a jeho výstup sa zmení na 0. Táto zmena sa presunie na vstup H 6 a to spôsobí stav Q = 0 a Q = 1. Stav sa uchová a ďalšie zmeny na vstupe D sa neuplatnia, pretože počas T C = 1 má výstup H 3, ktorý ide na vstup H 4 log. 0. Po skončení T C sa pri zmenách vstupu D mení výstup H 4, ale tieto zmeny sa neuplatnia na vstupe H 3, pretože T C = 0. Nech v čase t n bude Q = 0 a Q = 1 a na vstup D privedieme D = 1. Ak T C = 0 a D = 1, potom výstupy hradiel H 1, H 2, H 3 = 1 a výstup H 4 = 0. Pri zmene vstupu T C z hodnoty nula do jedna (nábežná hrana) budú všetky vstupy H 2 rovné jednej, čím bude jeho výstup rovný nule. Táto zmena sa presunie na vstup hradla H 5, čo spôsobí zmenu na výstupe Q = 1 a Q = 0. Tento stav sa uchová a ďalšie zmeny na vstupe D sa neuplatnia, pretože počas trvania T C je výstup H 2 privádzaný na vstup H 3. Po skončení T C sa pri zmenách vstupu D síce výstup H 4 mení, ale neuplatní sa na vstupe H 3, pretože T C = 0. Vstupy R a S nemôžu nadobudnúť hodnotu log. 0 súčasne, pretože vtedy sú oba výstupy Q aj Q rovné jednej, čím sa poruší inverzia výstupov. Inak sú vždy oba výstupy navzájom inverzné. Takto popísané správanie obvodu zachytáva aj časový diagram na (obr. 3.2.33). Obr. 3.2.33. Časový diagram a pravdivostná tabuľka obvodu MH 7474 Pre správnu činnosť obvodu musíme zaručiť určitú časovú následnosť signálov a ich dĺžku trvania (obr. 3.2.34). Ak sa má impulz na vstupe D uplatniť, musí mať voči T C požadovanú úroveň už po dobu predstihu t SET UP. Ak sa nemá impulz na vstupe D - 56 -
uplatniť, môže sa objaviť až po dobe presahu t HOLD. Určená je aj minimálna šírka nulovacieho impulzu R, nastavovacieho impulzu S a taktovacieho impulzu T C. K preklápaniu výstupov dochádza pri nábežnej hrane riadiaceho taktovacieho impulzu. Pomocou vstupov R a S, ktoré sú inverzné, možno preklápací obvod ovládať nezávisle od taktovacieho impulzu, tieto vstupy sú prioritné. Obr. 3.2.34. Časové závislosti signálov D a T C 3.2.9. Hypertextové odkazy < typy transformácií > Kombinačný logický obvod získa schopnosť pamätať si svoj stav, čím sa stane sekvenčným logickým obvodom tak, že v ňom zavedieme slučku spätnej väzby (obr. 3.2.11). Je tiež potrebné uvažovať s reálnym oneskorením v logických členoch. Obr. 3.2.11. Logický obvod s jednou slučkou spätnej väzby Keď budeme skúmať uplatňovanie sa vstupných premenných a reakcie výstupu na zmeny vstupných premenných zistíme, že zavedením jedinej slučky spätnej väzby môžme v obvode realizovať všetky štyri typy transformácií: - 57 -
Ak X 3 = 0; X 1 = 1 a X 2 = 0 Potom z analýzy schémy zapojenia získame funkcie výstupných premenných jednotlivých hradiel: H 1 = Z; H 2 = Z; H 3 = 0; H 4 = 1; H 5 = Z; Dva zo vstupov hradla H 5 sú rovné 1 a tretí vstup sa rovná jeho výstupu, takže platí: Y = Z = Z Slučka je schopná si pamätať hodnotu Z v stabilnom (pamäťovom ) stave. (M pamäťová transformácia) Ak X 3 = 0; X 1 = 1 a X 2 = 1 Z analýzy schémy zapojenia získame funkcie výstupných premenných jednotlivých hradiel: H 1 = Z; H 2 = 1; H 3 = Z; H 4 = Ζ ; H 5 = Ζ ; Dva zo vstupov hradla H 5 sú rovné 1 a tretí vstup sa rovná jeho negovanému výstupu, takže: Y = Z = Ζ Obvod prešiel zo stabilného stavu a kmitá frekvenciou závislou od oneskorenia logických členov. (K klopná transformácia) Ak X 1 = 1; X 2 = 0 a X 3 = 0 Ak sa obvod nachádza v stabilnom stave Z = 1, potom: nech sa zmení vstupná hodnota X 1 = 1 0 Potom nezávisle na X 2 a X 3 sa zmení výstupný stav Y = Z 0 a slučka si zapamätá Z = 0. Ak by bol východzí stav Z = 0, potom: nech sa zmení vstupná hodnota X 1 = 1 0-58 -
Pôvodný stav sa nezmení Y = Z = 0. (0 nulová transformácia) Ak X 1 = 1; X 2 = 0 a X 3 = 0 Ak sa obvod nachádza v stabilnom stave Z = 0, potom funkcie výstupných premenných jednotlivých hradiel sú: H 1 = Z = 0; H 2 = Z = 0; H 3 = 0; H 4 = 1; H 5 = Z = 0 nech sa zmení vstupná hodnota X 3 = 0 1 Zmenia sa aj výstupy jednotlivých hradiel: H 1 = 1; H 2 = 1; H 3 = 0; H 4 = 1; H 5 = 1 Pôvodný stav sa zmení Y = Z 1. Slučka si zapamätá pri X 3 = 1 hodnotu Z = 1. Ak by bol východzí stav Z = 1 a X 1 = 1; X 2 = 0 a X 3 = 0, potom výstupy hradiel: H 1 = Z = 1; H 2 = Z = 1; H 3 = 0; H 4 = 1; H 5 = 1 nech sa zmení vstupná hodnota X 3 = 0 1 Potom výstup H 1 = 1 ostáva bez zmeny a Y = Z = Z = 1 (1 jednotková transformácia) Takýto obvod poskytuje jednobitovú informáciu. Ak by sa menili hodnoty viacerých premenných súčasne, mohli by dôjsť k neurčitým stavom (hazardom). Aby sme im zabránili, je dovolená len zmena v jedinej premennej (pri asynchrónnych obvodoch), alebo sa používa synchronizačný signál a potom sa vstupy uplatňujú len v okamihu synchronizačného impulzu (synchrónne obvody). Ak sa mení hodnota na výstupe obvodu vplyvom zmeny na vstupe, hovoríme o asynchrónnom režime, ak je zmena výstupu podmienená taktovacím signálom, hovoríme o synchrónnom režime. Otvorenie / uzavretie spätnoväzobnej slučky sa uskutočňuje kombinačným logickým členom, ktorý je riadený taktovacím signálom. < pamäťová > Pamäťová transformácia: pri tejto transformácii nedochádza k zmene vnútorného, resp. výstupného stavu, obvod si pamätá svoj stav. Ak má súčasný stav - 59 -
obvodu hodnotu "1", ostáva v hodnote "1" aj v nasledujúcom stave a naopak ak má súčasný stav obvodu hodnotu "0", ostáva v hodnote "0" aj v nasledujúcom stave. < jednotková > Jednotková transformácia: pri tejto transformácii dochádza k prechodu vnútorného, resp. výstupného stavu do hodnoty "1" bez ohľadu na to, v akom stave sa obvod nachádzal. Ak má súčasný stav obvodu hodnotu "1", ostáva v hodnote "1" aj v nasledujúcom stave a naopak ak má súčasný stav obvodu hodnotu "0", prechádza obvod v nasledujúcom stave do hodnoty "1". < nulová > Nulová transformácia: pri tejto transformácii dochádza k prechodu vnútorného, resp. výstupného stavu do hodnoty "0" bez ohľadu na to, v akom stave sa obvod nachádzal. Ak má súčasný stav obvodu hodnotu "0", ostáva v hodnote "0" aj v nasledujúcom stave a naopak ak má súčasný stav obvodu hodnotu "1", prechádza obvod v nasledujúcom stave do hodnoty "0". < klopná > Klopná transformácia: pri tejto transformácii dochádza k prechodu vnútorného, resp. výstupného stavu do stavu opačného bez ohľadu na to, v akom stave sa obvod nachádzal. Ak má súčasný stav obvodu hodnotu "1", prechádza obvod v nasledujúcom stave do hodnoty "0" a naopak ak má súčasný stav obvodu hodnotu "0", prechádza obvod v nasledujúcom stave do hodnoty "1". < bistabilné > Bistabilné PO (ďalej len BPO) majú dva stabilné stavy. Jeden stav prechádza skokom do druhého v prípade, že je na vstup privedený budiaci, prípadne taktovací signál. Používajú sa ako registre, deliče frekvencie a elementárna pamäť SLO. - 60 -
< monostabilné > Monostabilné PO (ďalej len MPO) majú jeden stabilný stav a ich výstupný signál je jeden impulz, ktorý vznikne privedením signálu na vstup PO. Používajú sa pre generovanie impulzov, ktorých dĺžka je závislá od vonkajších RC členov a na oneskorovanie alebo predlžovanie impulzov. < astabilné > Astabilné PO (ďalej len APO) nemajú žiadny stabilný stav a ich výstupné signály sú periodické impulzy. Ich amplitúda a frekvencia závisí od parametrov obvodu. Používajú sa ako zdroje taktovacích impulzov, generátory pravouhlých signálov a periodické spínače. 3.2.10. Testovanie vedomostí 1. Čím sa odlišuje sekvenčný logický obvod od kombinačného: a) neobsahuje pamäťovú časť b) obsahuje pamäťovú časť c) pracuje len v synchrónnom režime d) pracuje len v asynchrónnom režime 2. Pri obvodoch typu MOORE je výstupný stav obvodu jednoznačne určený: a) len jeho vnútorným stavom b) len vstupnou kombináciou c) len predchádzajúcim stavom d) jeho vnútorným stavom a vstupnou kombináciou 3. Na obrázku je zobrazený prechodový diagram pre: a) kombinačný logický obvod b) J K preklápací obvod c) sekvenčný logický obvod typu MOORE d) sekvenčný logický obvod typu MEALY - 61 -
4. Čo znamená zakázaný stav pri S R preklápacom obvode: a) vstupná kombinácia S = R = 1 nie je dovolená b) pri vstupnej kombinácii S = R = 1 sa obvod rozkmitá c) pri vstupnej kombinácii S = R = 1 sú výstupy Q = 1 aj Q = 1 d) oba vstupy S = 0 aj R = 0 5. Akú transformáciu popisuje prechodový diagram na obrázku: a) jednotkovú b) nulovú c) pamäťovú d) klopnú 6. Aké vstupné hodnoty nastavia výstup S R preklápacieho obvodu do stavu log 1.: a) S = 0, R = 1 b) S = 1, R = 0 c) S = 1, R = X d) S = X, R = 0 7. Ako je odstránený zakázaný stav pri J K preklápacom obvode: a) tento stav nie je odstránený a môže nastať b) stav J = K = 1 nie je realizovateľný, kvôli invertoru zapojenému medzi týmito vstupmi c) pri kombinácii J = K = 1 sa obvod preklopí do stavu Q = 1 a Q = 0 d) pri kombinácii J = K = 1 sa obvod preklopí do opačného stavu, než v akom sa práve nachádzal 8. J K preklápací obvod typu master slave reaguje na: a) aktívnu hranu taktovacieho impulzu b) úroveň taktovacieho impulzu c) všetky zmeny na vstupoch J a K nezávisle od taktovacieho impulzu d) prioritne na zmeny na vstupe J - 62 -
9. Čo je to t SET UP : a) maximálna šírka taktovacieho impulzu b) minimálna šírka taktovacieho impulzu c) doba predstihu d) doba presahu 10. Na obrázku je pravdivostná tabuľka pre preklápací obvod typu: a) D b) S - R c) J - K d) T - 63 -
3.3. POSUVNÉ REGISTRE 3.3.1. Úvod Posuvné registre slúžia k záznamu informácií v tvare kódových zložiek a umožňujú ich spracovanie s postupom času. Sú zložené z preklápacích obvodov (najčastejšie z preklápacích obvodov typu J K alebo D) zapojených tak, aby informácia uložená v jednotlivých preklápacích obvodoch sa mohla posúvať medzi jednotlivými susednými obvodmi. Počet preklápacích obvodov určuje dĺžku posuvného registra a súčasne aj počet bitov dvojkovej informácie, ktorá má byť registrom zaznamenaná. Spôsob prepojenia preklápacích obvodov určuje funkciu, akou bude register pracovať so skupinou bitov. Bloková schéma posuvného registra je na (obr. 3.3.1). Obr. 3.3.1. Bloková schéma posuvného registra Posuvné registre môžme rozdeliť podľa rôznych kritérií na: podľa smeru posúvania na registre vpred, vzad, reverzibilné a kruhové podľa spôsobu vkladania informácií na registre s paralelným alebo sériovým vstupom podľa spôsobu vyberania informácií na registre s paralelným alebo sériovým výstupom Ak sa informácia presúva smerom zľava doprava, hovoríme o posuvnom registri vpred. Ak sa informácia presúva smerom sprava doľava, hovoríme o posuvnom registri vzad. K posunu informácií dochádza v okamihu privedenia taktovacieho impulzu, resp. v okamihu aktívnej hrany (pri dvojfázovom J K preklápacom obvode je aktívna hrana dobežná, pri dvojfázovom D preklápacom obvode je aktívna hrana nábežná). Pomocou registra môžeme nulovať alebo nastaviť do 1 všetky preklápacie obvody, informácie na - 64 -
výstupoch preklápacích obvodov možno previesť do inverznej formy, možno urobiť logický súčet medzi dvoma registrami, tiež logický súčin, pomocou registra je možne realizovať binárne násobenie alebo delenie mocninou čísla 2, môžme previesť informácie zo sériovej formy na paralelnú (informácie sa prijímajú jedným sériovým vstupom a vyčítavajú sa paralelnými výstupmi) alebo naopak, paralelné informácie prevedieme do sériovej podoby (informácie zapíšeme najčastejšie pomocou R a S vstupov a vyčítame ich pomocou jedného sériového výstupu) Pri syntéze posuvného registra stačí vyriešiť väzbu medzi dvoma susednými preklápacími obvodmi. Táto väzba je potom rovnaká pre každú dvojicu susedných preklápacích obvodov. Taktovacie vstupy preklápacích obvodov sú spojené do jedného uzla a pripojené na taktovací (posúvací) impulz. 3.3.2. Návrh sériového posunu vpred s použitím preklápacích obvodov typu J - K Pri návrhu väzby medzi dvoma susednými členmi budeme vychádzať z blokovej štruktúry posuvného registra (obr. 3.3.1) a z príkladu, v ktorom budeme chcieť, aby sa vstupné dáta posúvali smerom vpred, čo zobrazuje tabuľka na (obr. 3.3.2). Obr. 3.3.2. Príklad vstupov a výstupov pri posuve vpred Ako vidieť na obrázku, vstupné dáta tvorí kombinácia 11001. Keďže ide o posuv vpred (čiže doprava), tak na sériový vstup obvodu privádzame hodnoty postupne sprava. S príchodom posúvacieho impulzu sa presunú informácie už zapísané v obvode o jedno - 65 -
miesto doprava a do prvého člena sa zapíše ďalšia vstupná hodnota. Takto sa po piatich posúvacích impulzoch zapíše celé vstupné slovo do obvodu. Pri ďalších dvoch posúvacích impulzoch nás už nebudú zaujímať vstupné dáta, tieto impulzy už len posúvajú zapísane vstupné slovo registrom ďalej. Princíp posuvu vpred zobrazuje schéma (obr. 3.3.3). Z tejto tabuľky (obr. 3.3.2) môžeme zostrojiť tabuľku prechodov susedných preklápacích obvodov (obr. 3.3.4) pre dva susedné členy A a B, pretože väzba medzi ostatnými členmi bude rovnaká. Obr. 3.3.3. Posuv vpred Obr. 3.3.4. Tabuľka prechodov susedných preklápacích obvodov pri posuve vpred Táto tabuľka zachytáva všetky možne kombinácie výstupov oboch členov aj prechodov medzi nimi. Ako vidieť, stav výstupu B sa po príchode posúvacieho impulzu v čase t+1 zmení na hodnotu, akú mal výstup A v čase t. Potrebné hodnoty vstupov J a K pre zabezpečenie požadovaného prechodu výstupu B po príchode posúvacieho impulzu zachytáva tretí stĺpec tabuľky (tieto hodnoty zodpovedajú správaniu J K preklápacieho obvodu popisovaného v predchádzajúcej kapitole Syntéza sekvenčných logických obvodov ). Pre zostavenie algebraických výrazov vstupov J a K obvodu B zostavíme z tabuľky (obr. 3.3.4) Karnaughovu mapu pre oba vstupy J aj K (obr. 3.3.5). - 66 -
Obr. 3.3.5. Zostavenie alg. výrazov pre vstupy J a K Keď už sú známe logické funkcie oboch vstupov J K preklápacieho obvodu, môžme priamo navrhnúť zapojenie registra s posuvom vpred, zloženého z týchto obvodov (obr. 3.3.6). Ak chceme zostrojiť viacbitový posuvný register tohto typu, stačí keď nasledujúce obvody prepojíme s predchádzajúcimi rovnako, ako je to na (obr. 3.3.6). Aby nedošlo k tomu, že počas trvania posúvacieho impulzu sa informácie presunú celým registrom až nakoniec (alebo o viac než jednu pozíciu), používajú sa pri registroch preklápacie obvody riadené aktívnou hranou taktovacieho impulzu, pričom pri J K preklápacom obvode je aktívna hrana dobežná. Preto k posuvu informácií dochádza len v okamihu zmeny posúvacieho impulzu z hodnoty 1 na hodnotu 0. Obr. 3.3.6. Zapojenie posuvného registra vpred s preklápacími obvodmi typu J - K Ako vidieť zo zapojenia, vstup J druhého preklápacieho obvodu je zapojený priamo na výstup A a vstup K je zapojený priamo na negovaný výstup A, čo zodpovedá logickým funkciám na (obr. 3.3.5). Medzi vstupmi J a K prvého preklápacieho obvodu je zapojený invertor kvôli tomu, aby sa po privedení posúvacieho impulzu objavila na výstupe A rovnaká informácia, aká je na vstupe Dáta. Ak budeme chcieť realizovať n bitový posuvný register vpred, stačí ak rovnakým spôsobom zapojíme za sebou n preklápacích obvodov, pričom vstup J príslušného obvodu je pripojený na výstup Q predchádzajúceho obvodu a vstup K príslušného obvodu je pripojený na negovaný výstup predchádzajúceho obvodu. Preto pre komplexnosť návrhu uvediem ešte konkrétne zapojenie štvorbitového registra vpred realizovaného preklápacími obvodmi typu J K - 67 -
(obr. 3.3.7). V tomto zapojení dochádza v okamihu príchodu dobežnej hrany taktovacieho impulzu k posuvu informácií o jedno miesto doprava medzi jednotlivými preklápacími obvodmi, pričom do prvého obvodu sa zapíše informácia privedená na dátový vstup a informácia z posledného člena zanikne, pretože sa už nemá kam posunúť. Obr. 3.3.7. Štvorbitový posuvný register vpred s preklápacími obvodmi typu J K 3.3.3. Návrh sériového posunu vpred s použitím preklápacích obvodov typu D Návrh je v podstate rovnaký, ako bol v predchádzajúcom prípade, avšak zmena nastane v tabuľke prechodov pre obvod typu D. Najskôr je potrebné navrhnúť väzbu medzi dvoma susednými členmi, ktorú môžme potom aplikovať na ľubovoľne veľký register. Tabuľka prechodov susedných preklápacích obvodov pri použití obvodov typu D je na (obr. 3.3.8). Obr. 3.3.8. Tabuľka prechodov susedných preklápacích obvodov pri posuve vpred s použitím obvodov typu D Táto tabuľka zachytáva všetky možne kombinácie výstupov oboch členov aj prechodov medzi nimi a k nim prislúchajúce hodnoty vstupu D, ktoré zabezpečia prechody obvodu do požadovaného stavu (tieto hodnoty zodpovedajú správaniu D preklápacieho obvodu popisovanom v predchádzajúcej kapitole Syntéza sekvenčných - 68 -
logických obvodov ). Pre zostavenie algebraického výrazu vstupu D obvodu B zostavíme podľa tabuľky Karnaughovu mapu (obr. 3.3.9). Obr. 3.3.9. Karnaughova mapa posuvného registra vpred realizovaného preklápacími obvodmi typu D Ako je vidieť z výslednej logickej funkcie pre vstup D B, realizácia posuvného registre vpred z preklápacích obvodov D je veľmi jednoduchá a stačí, keď vstup D príslušného člena spojíme s priamym výstupom predchádzajúceho člena (obr. 3.3.10). Kvôli správnej činnosti sa taktiež používajú dvojfázové obvody D, ktoré sú riadené aktívnou hranou taktovacieho impulzu, pričom aktívnou hranou pre obvod typu D je nábežná hrana.[7] Obr. 3.3.10. Zapojenie posuvného registra vpred s preklápacími obvodmi typu D 3.3.4. Návrh sériového posunu vzad s použitím preklápacích obvodov typu J - K Návrh je podobný, ako bol návrh posuvu vpred s použitím preklápacích obvodov typu J K len s tým rozdielom, že teraz sa bude meniť stav obvodu A v závislosti od stavu obvodu B, čiže pôjde o posuv smerom doľava. Princíp posuvu vzad zobrazuje schéma (obr. 3.3.11). Zmení sa aj tabuľka prechodov, pretože teraz si budeme všímať prechody stavov obvodu A v čase t+1 v závislosti od stavu obvodu B v čase t (obr. 3.3.12). - 69 -
Obr. 3.3.11. Posuv vzad Obr. 3.3.12. Tabuľka prechodov susedných preklápacích obvodov pri posuve vzad Na základe tejto tabuľky môžme zostrojiť Karnaughovu mapu (obr. 3.3.13) pre realizáciu preklápacími obvodmi typu J K. Ako je vidieť z výslednej logickej funkcie pre vstupy J A a K A, realizácia posuvného registre vzad z preklápacích obvodov J - K je v podstate rovnaká, ako v prípade registra vpred len s tým rozdielom, že na vstupy príslušného člena sú privedené výstupy člena nasledujúceho. (obr. 3.3.14). To platí aj v prípade, ak chceme realizovať viacbitový register. Obr. 3.3.13. Karnaughova mapa posuvného registra vzad realizovaného preklápacími obvodmi typu J K - 70 -
Obr. 3.3.14. Zapojenie posuvného registra vzad s preklápacími obvodmi typu J - K Ako vidieť na obrázku, vstupné dáta privádzame na vstup posledného preklápacieho obvodu. Medzi vstupmi J a K je zapojený invertor, aby sa dal preklápací obvod korektne ovládať len jedným dátovým signálom. Na vstupy prvého obvodu privádzame výstupy druhého obvodu, aby dochádzalo k posuvu vzad (čiže doľava). Pri príchode dobežnej hrany posúvacieho impulzu sa informácia z výstupu druhého člena prenesie na výstup prvého člena a na výstup druhého člena sa zapíšu nové dáta, ktoré sú privádzané na dátový vstup. 3.3.5. Návrh sériového posunu vzad s použitím preklápacích obvodov typu D Keďže návrh je rovnaký, ako v predchádzajúcich prípadoch, nebudeme ho podrobne rozoberať a popisovať, uvediem len najdôležitejšie zmeny oproti predchádzajúcim typom posuvných registrov. Jednotlivé prechody medzi stavmi obvodu a k nim prislúchajúce potrebné hodnoty vstupu D boli uvedené v tabuľke (obr. 3.3.12). Analogicky ako v predchádzajúcich prípadoch môžme zostrojiť Karnaughovu mapu a z nej odvodiť logické funkcie pre vstup D prvého člena (obr. 3.3.15). Obr. 3.3.15. Karnaughova mapa posuvného registra vzad realizovaného preklápacími obvodmi typu D - 71 -
Ako je vidieť z výslednej funkcie pre vstup prvého obvodu, pre realizáciu posuvného registra vzad stačí, ak vstup príslušného člena spojíme s priamym výstupom predchádzajúceho člena (obr. 3.3.16). Keďže preklápací obvod typu D je riadený len jedným vstupom, tak na rozdiel od predchádzajúceho prípadu registra realizovaného z obvodov typu J K už nemusíme použiť invertor. Inak je zapojenie v podstate rovnaké len s tým rozdielom, že preklápací obvod D reaguje na nábežnú hranu taktovacieho impulzu, tak aj k posunu informácií medzi jednotlivými členmi dochádza len v okamihu zmeny posúvacieho impulzu z hodnoty 0 na hodnotu 1. V iných prípadoch sa výstupy jednotlivých preklápacích obvodov nemenia. Obr. 3.3.16. Zapojenie posuvného registra vzad s preklápacími obvodmi typu D Vo všetkých štyroch predchádzajúcich prípadoch (posuvný register vpred, vzad, realizovaný pomocou členov J K aj D) bol ukázaný návrh väzby medzi dvoma susednými členmi, pričom ak chceme realizovať viacbitový register, stačí navrhnutú väzbu uplatniť medzi všetkými susednými členmi registra. Pre úplnosť preto ešte ukážeme konkrétnu realizáciu štvorbitového registra s posunom vzad, ktorý je realizovaný pomocou preklápacích obvodov D (obr. 3.3.17). Ako vyplýva z funkcie takéhoto registra, ako aj z jeho zapojenia, pri príchode nábežnej hrany na vstupe posúvacieho signálu sa informácia na dátovom vstupe prenesie na výstup obvodu D. Na výstup obvodu C sa prenesie informácia, ktorá bola na výstupe obvodu D v okamihu príchodu posúvacieho impulzu, čím sa vlastne posunie o jedno miesto doľava. Takto sa presunú aj informácie medzi ostatnými výstupmi. Informácia, ktorá bola na výstupe prvého člena sa už nemá kam posunúť a preto sa táto informácia stratí.[16] - 72 -
Obr. 3.3.17. Štvorbitový posuvný register vzad s preklápacími obvodmi typu D 3.3.6. Analýza trojbitového posuvného registra vpred Keď už vieme navrhnúť rôzne typy posuvných registrov, bolo by vhodné sa naučiť aj analyzovať rôzne zapojenia registrov, vedieť podľa zapojenia registra definovať jeho funkciu a zostrojiť časový priebeh jednotlivých výstupov. Preto si teraz ukážeme analýzu trojbitového posuvného registra vpred. ktorý je na (obr. 3.3.18). Ako vidieť na obrázku, jedná sa o posuvný register realizovaný z preklápacích obvodov typu J K. Obr. 3.3.18. Trojbitový posuvný register vpred zložený z J K preklápacích obvodov Do registra všeobecne možno vkladať informáciu (dáta) pomocou jedného sériového vstupu, alebo viacerých paralelných vstupov. Z registra je možné informácie vysúvať použitím sériového výstupu, alebo pomocou viacerých paralelných výstupov. V zapojení na (obr. 3.3.18) rozoznávame nasledovné vstupy a výstupy: sériový vstup Dáta informácia sa ním vkladá do registra postupným (sériovým) privádzaním logických núl a jednotiek - 73 -
paralelné vstupy A, B a C informácia sa privádza súčasne na niekoľko vstupov (paralelne). Jeden bit informácie je na jednom paralelnom vstupe sériový výstup Q C informácia sa vysúva z registra postupne (sériovo) paralelné výstupy Q A, Q B a Q C informácia sa vysúva súčasne z niekoľkých výstupov (paralelne). Jeden bit informácie je na jednom paralelnom výstupe posúvací vstup Posun zabezpečuje synchrónne zmeny (posuvy) v jednotlivých preklápacích obvodoch nulovací vstup Reset zabezpečuje vynulovanie všetkých preklápacích obvodov Keďže tento posuvný register je zložený z preklápacích obvodov typu J K, aktívna hrana je dobežná a preto k posuvu informácií medzi jednotlivými preklápacími obvodmi dôjde len v okamihu zmeny posúvacieho signálu z hodnoty 1 na hodnotu 0. Celý register možno vynulovať (všetky výstupy budú nulové) naraz, privedením signálu log. 0 na vstup RESET. Keďže vstupy R a S sú inverzné, uplatňujú sa pri vstupnej hodnote log. 0. Paralelne môžeme taktiež nastaviť výstup ktorékoľvek preklápacieho obvodu do stavu 1 privedením log. 0 na príslušný paralelný vstup daného obvodu. Treba však dať pozor na to, aby signál hodnoty log. 0 nebol privedený súčasne na oba vstupy, pretože to spôsobí, že oba výstupy daného preklápacieho obvodu (priamy aj negovaný) sa nastavia do hodnoty log. 1, čím sa poruší vzájomná inverzia výstupov, čo predstavuje zakázaný stav. Taktiež platí, že vstupy R a S sú prioritné, preto keď sú tieto vstupy aktívne, nedochádza pri privedení taktovacieho impulzu k zápisu novej hodnoty do registra. Bežne sa informácia do registra zapisuje pomocou sériového vstupu Dáta. Na vstup Posun sú privádzané synchronizačné (taktovacie, posúvacie) impulzy, ktoré dobežnou hranou spôsobia posun informácii o jedno miesto vpred. Príklad posunu vpred týmto registrom je na (obr. 3.3.19). Na obrázku je zachytený posun informácií medzi jednotlivými členmi smerom doprava v okamihu dobežnej hrany taktovacieho (posúvacieho) impulzu.[15] - 74 -
Obr. 3.3.19. Posun informácie vpred Na (obr. 3.3.20) je zobrazený vplyv prioritného vstupu RESET na všetky výstupy registra. Pri privedení signálu hodnoty log. 0 sa všetky výstupy registra nastavia do log. 0. Až po skončení signálu RESET sa môžu do registra začať zapisovať nové informácie. Obr. 3.3.20. Nulovanie registra vstupom RESET Paralelné výstupy registra možno tiež nastaviť na úroveň log. 1 pomocou paralelných vstupov, ak privedieme na ne signál s úrovňou log. 0 (vstupy S sú inverzné). Príklad nastavenia výstupu Q A preklápacieho obvodu signálom A je na (obr. 3.3.21). Obr. 3.3.21. Nastavenie výstupu Q A signálom na vstupe A - 75 -
3.3.7. Kruhový posuvný register Kruhový posuvný register získame tak, že spojíme výstup posledného preklápacieho obvodu (bitu) so vstupmi prvého preklápacieho obvodu (bitu). Zapísaná informácia potom obieha dookola v posuvnom registri. Príklad zapojenia kruhového posuvného registra zloženého z preklápacích obvodov J K, ak spojíme výstup posledného preklápacieho obvodu so vstupmi prvého preklápacieho obvodu, je na (obr. 3.3.22). Obr. 3.3.22. Kruhový posuvný register z obvodov J K Vstupom S A môžme zapísať informáciu do prvého preklápacieho obvodu. Po príchode dobežnej hrany posúvacieho impulzu sa informácie presunú o jedno miesto doprava, pričom informácia z posledného preklápacieho obvodu sa opäť zapíše na vstup prvého obvodu. Takto sa vždy s príchodom taktovacieho impulzu informácie posúvajú v kruhu medzi jednotlivými členmi. Ak by sme chceli zapísať do prvého obvodu log. nulu, museli by sme použiť aj vstup R, na ktorý by sme priviedli signál úrovne log. 0 (vstup je negovaný). Informácia sa na jednotlivých výstupoch objavuje s tretinovou frekvenciou než je frekvencia posúvacieho impulzu, pretože register obsahuje tri členy a na každý člen sa informácia znova presunie až po troch taktovacích impulzoch. Preto je možné použiť kruhové registre aj ako deliče frekvencie. Správanie tohto registra zachytáva aj časový diagram na (obr. 3.3.23).[15] - 76 -
Obr. 3.3.23. Časový diagram J K kruhového registra Ako je vidieť v tomto časovom diagrame, na začiatku celého cyklu sa do obvodu zapíše signálov S A = 0 jednotka na výstup prvého obvodu. Táto jednotka potom koluje medzi jednotlivými výstupmi do kruhu. Do obvodu je možné zapísať ľubovoľnú informáciu, ktorá bude medzi jednotlivými výstupmi rotovať. Taktiež je možné zostaviť tento register podobným spôsobom z preklápacích obvodov typu D. Jediný rozdiel nastane len v tom, že k posunu informácií bude dochádzať pri nábežnej hrane posúvacieho impulzu a nie pri dobežnej. Modifikovaný kruhový posuvný register Kruhový register s pozmeneným správaním získame, ak priamy výstup posledného člena spojíme so vstupom K prvého člena a negovaný výstup posledného člena spojíme so vstupom J prvého člena. Zapojenie takéhoto registra je na (obr. 3.3.24). Obr. 3.3.24. Modifikovaný kruhový posuvný register z obvodov J K Nepoužité vstupy (R a S) predpokladáme patrične ošetrené, taktiež aj v predchádzajúcom prípade (obr. 3.3.22). Pred prvým impulzom vynulujeme všetky - 77 -
preklápacie obvody. To znamená, že na všetkých výstupoch Q je úroveň log. 0. Pomocou posúvacieho impulzu Posuv sa z negovaného výstupu posledného člena budú privádzať logické jednotky na vstup J prvého člena a budú sa zapisovať (posúvať) aj do ďalších preklápacích obvodov, až kým sa nedostanú aj na výstup posledného obvodu. Vtedy sa negovaný výstup posledného obvodu zmení na logickú nulu a dej sa opakuje podobným spôsobom, len do jednotlivých preklápacích obvodov sa teraz budú postupne zapisovať logické nuly, až kým sa negovaný výstup posledného obvodu nezmení opäť na logickú jednotku. Celý tento proces zápisu sa cyklicky opakuje a zodpovedá Johnsonovmu kódu. Popísané správanie zachytáva časový diagram na (obr. 3.3.25).[15] Obr. 3.3.25. Časový diagram modifikovaného kruhového registra 3.3.8. Univerzálny posuvný register S využitím všetkých poznatkov z predchádzajúcich kapitol je možné zostrojiť aj univerzálny posuvný register (obr. 3.3.26). Jedná sa o štvorbitový posuvný register s asynchrónnym nastavením. Tento register umožňuje paralelný zápis dát (pre paralelný zápis informácií používa asynchrónne vstupy R a S preklápacích obvodov) aj sériový zápis dát (obsahuje samostatné vstupy pre sériový vstup vpred a vzad), obsahuje sériový a paralelný výstup vpred i vzad, umožňuje zmenu smeru posuvu informácií vpred i vzad (hodnotou signálu na vstupe Smer ). Posun informácií je synchrónny, dochádza k nemu pri nábežnej hrane impulzu na vstupe Posuv (použité sú preklápacie obvody typu D). Ovládanie smeru posuvu informácií je v zapojení realizované pomocou logiky obsahujúcej tri členy NAND. Podľa úrovne signálu na vstupe Smer sa na vstup D príslušného preklápacieho obvodu tak dostáva buď výstupná hodnota nasledujúceho členu, alebo predchádzajúceho členu. - 78 -
Obr. 3.3.26. Univerzálny štvorbitový posuvný register - 79 -
Zapojenie obsahuje samostatné sériové vstupy a výstupy pre posun vpred i vzad. Sériový výstup vzad a vstup vpred sú vztiahnuté k prvému členu a sériový výstup vpred a vstup vzad sú vztiahnuté k poslednému členu zapojenia. Ďalej obsahuje aj paralelné vstupy, ktoré umožňujú zapísať požadované hodnoty do ktoréhokoľvek preklápacieho obvodu. Tieto vstupy sú asynchrónne a nezáležia od posúvacieho impulzu. Tieto vstupy sú ošetrené proti vzniku nepovoleného stavu (R = S = 0) tým, že vstupy R a S príslušného preklápacieho obvodu sú ovládané len jedným paralelným vstupom, pričom je zabezpečené, že keď signál Zápis je aktívny, sú vstupy R a S vzájomne inverzné. Keď je signál Zápis rovný nule, sú oba vstupy R a S rovné log. 1 a neuplatnia sa. Uplatnia sa však len vtedy, ak je na vstupe Zápis signál s úrovňou log. 1, čím je umožnený paralelný zápis informácie do všetkých obvodov naraz pri príchode impulzu na tomto vstupe. Paralelné výstupy obvodu umožňujú indikovať stav všetkých preklápacích obvodov súčasne. Úpravou zapojenia je možné dosiahnuť aj synchrónnu verziu univerzálneho posuvného registra, kde všetky operácie register vykonáva synchrónne s taktovacím signálom. Z uvedených typov zapojení rôznych posuvných registrov vidíme, že posuvné registre majú široké uplatnenie a môžme ich použiť ako: vyrovnávacia pamäť: uchovanie paralelne nahrávaných informácií bez posunu medzi dvoma riadiacimi (posúvacími) impulzmi sériovo-paralelný prevodník: sériovým vstupom a posunom sa sériové informácie načítajú do registra a paralelne sa z neho vyčítajú paralelno-sériový prevodník: do registra sa nahrajú paralelné informácie a posunom sa vyšlú cez sériový výstup oneskorovací obvod: výstupná informácia zo sériového výstupu je oneskorená voči vstupnej o toľko taktov (impulzov), koľko bitov (preklápacích obvodov) má register. Oneskorenie je dané súčinom počtu preklápacích obvodov registra a periódy taktovacieho impulzu radič (kruhový register): umožňuje kruhový posun informácie zapísanej do registra, pričom je použitá spätná väzba z výstupu na vstup registra. V registri sa kruhovo posúva informácia raz paralelne nahratých dát, alebo sa vonkajšími obvodmi zaisťuje obnova špecifickej posúvanej informácie (posun jedinej jednotky) - 80 -
3.3.9. Hypertextové odkazy < reverzibilné > Reverzibilné posuvné registre sú také, ktoré umožňujú prepínať smer posúvania informácií vpred i vzad. Reverzibilná činnosť registra je zabezpečená pomocou kombinačnej logiky, ktorá sa nachádza medzi jednotlivými stupňami (preklápacími obvodmi) registra. < patrične ošetrené > Ošetrenie vstupov znamená, že všetky nepoužité vstupy pripojíme na signál takej úrovne, aby sa tieto vstupy nemohli uplatňovať a nemenili funkciu obvodu. V tomto prípade to znamená, že vstupy R a S pripojíme trvale na signál úrovne log. 1, pretože pri tejto hodnote sa tieto vstupy neuplatňujú (sú inverzné a uplatňujú sa pri signáloch s úrovňou log. 0). 3.3.10. Testovanie vedomostí 1. Nasledujúci obrázok predstavuje posuvný register: a) vzad b) vpred c) kruhový d) reverzibilný - 81 -
2. Nasledujúci obrázok predstavuje posuvný register: a) vzad b) vpred c) kruhový d) reverzibilný 3. Posuvný register vpred realizovaný členmi J - K zostrojíme tak, že: a) vstup J daného obvodu spojíme s negovaným výstupom nasledujúceho obvodu a vstup K s priamym výstupom nasledujúceho obvodu b) vstup J daného obvodu spojíme s priamym výstupom nasledujúceho obvodu a vstup K s negovaným výstupom nasledujúceho obvodu c) vstup J daného obvodu spojíme s negovaným výstupom predchádzajúceho obvodu a vstup K s priamym výstupom predchádzajúceho obvodu d) vstup J daného obvodu spojíme s priamym výstupom predchádzajúceho obvodu a vstup K s negovaným výstupom predchádzajúceho obvodu 4. Posuvný register vzad realizovaný členmi D zostrojíme tak, že: a) vstup D daného obvodu spojíme s priamym výstupom predchádzajúceho obvodu b) vstup D daného obvodu spojíme s negovaným výstupom predchádzajúceho obvodu c) vstup D daného obvodu spojíme s priamym výstupom nasledujúceho obvodu d) vstup D daného obvodu spojíme s negovaným výstupom nasledujúceho obvodu 5. Ako paralelné vstupy sa pri registroch používajú: a) vstupy R a S preklápacích obvodov b) registre majú len sériový vstup, paralelný môžu mať len výstup c) taktovacie vstupy T C d) vstupy J a K, resp. D - 82 -
6. Predpokladajme stav registra, ako je na obrázku. Po príchode ďalších dvoch posúvacích impulzov bude na výstupoch registra ABCD stav: a) 0 0 1 0 b) 1 0 0 0 c) 1 1 1 0 d) 1 0 1 1 7. Časový diagram na obrázku predstavuje posuvný register: a) vzad, realizovaný obvodmi D b) vzad, realizovaný obvodmi J - K c) vpred, realizovaný obvodmi D d) vpred, realizovaný obvodmi J - K 8. Reverzibilný posuvný register je taký, ktorý: a) umožňuje posun informácií oboma smermi b) neumožňuje posun informácií c) umožňuje prenos informácií z výstupu na vstup d) umožňuje prenos informácií zo vstupu na výstup - 83 -
9. Kruhový posuvný register sa používa najčastejšie ako: a) vyrovnávacia pamäť b) oneskorovací obvod c) radič d) prevodník 10. Čím je určený počet bitov registra: a) dĺžkou vstupného slova b) počtom dátových vstupov c) počtom preklápacích obvodov d) počtom taktovacích impulzov - 84 -
4. LMS SYSTÉM MOODLE Výsledný mnou spracovaný kurz bol navrhovaný tak, aby mohol byť vložený a ďalej distribuovaný LMS systémom MOODLE. Keďže v čase tvorby kurzu som ešte nemal prístup do žiadneho takéhoto systému, rozhodol som sa nainštalovať si vlastný systém (na www adrese http://mnmoodle.tym.sk/ ), v ktorom som kurz optimalizoval do výslednej podoby so všetkými možnosťami, ktoré tento LMS systém ponúka. Neskôr bude kurz vložený do vzdelávacieho systému Žilinskej univerzity, kde bude slúžiť študentom, prípadne iným záujemcom o problematiku logických obvodov. 4.1. Popis Systém MOODLE (Modular Object-Oriented Dynamic Learning Environment) v preklade znamená modulárne objektovo orientované dynamické prostredie pre výuku. Je to softvérový balíček pre tvorbu výukových systémov a elektronických kurzov. Je poskytovaný zdarma, ako Open Source softvér spadajúci pod obecnú verejnú licenciu GNU. MOODLE je možné použiť na akomkoľvek počítači s fungujúcim PHP. Podporuje veľkú radu databáz, avšak najväčšiu podporu má pre databázu MySQL. Používatelia môžu s týmto systémov pracovať pomocou bežných internetových prehliadačov. Všetky aktivity (diskusné fóra, testy, zdroje, ) zabezpečujú jednotlivé moduly. MOODLE poskytuje niekoľko prístupov bežných aj v iných LMS systémoch: študentský učiteľský administrátorský Vzhľad stránky sa v jednotlivých prístupoch príliš nelíši. Rozdiel je iba v ponúkaných možnostiach a právach jednotlivých prístupov. Najmenšie možnosti a práva má študentské konto, najväčšie možnosti a práva má administrátor. Veľmi dôležitou súčasťou nastavení je formát kurzu. V súčasnosti sú možné tri formáty kurzov. Formáty kurzov sú šablóny, ktoré určujú rozloženie jednotlivých súčastí kurzu do menších celkov. V mojom prípade je najvhodnejší tematický formát kurzu. Kurz môže obsahovať elektronické multimediálne prvky, ktoré sa dajú prezerať v internetových prehliadačoch. To znamená, že môžete použiť všetky grafické, zvukové a - 85 -
video súbory, ďalej FLASH animácie, dokumenty z wordu, www stránky a iné. Tieto súbory si môžete uložiť na serveri pomocou nástroja Prenos súborov. V kurze môžete tiež robiť odkazy na www stránky iných serverov, na ktorých máte pripravené študijné materiály. 4.2. Aktivity Pre realizáciu vzdelávacích kurzov je možné v systému MOODLE využiť viacero aktivít. Tie môže učiteľ vkladať na ľubovoľné miesto v kurze. Jednotlivé aktivity fungujú na princípe modulov, ktoré možno do systému dopĺňať a tým zlepšovať jeho možnosti a využitie. Medzi základné a najpoužívanejšie aktivity patria: Zadanie: prestavuje stanovenie úlohy. Pritom sa určuje dátum a maximálna známka, ktorú môže študent dosiahnuť. Pomocou tejto aktivity môžete od študentov požadovať vypracovanie nejakej úlohy a jej odovzdanie prostredníctvom internetu. Jednotlivé vypracované zadania môžete ohodnotiť známkou (bodmi) a môžete tiež pridať písomný komentár. Po krátkej dobe sa študenti môžu dozvedieť svoje hodnotenie. Odpoveď: na položenú otázku má študent možnosť vybrať si jednu odpoveď z mnohých. Pomocou tejto aktivity môžete robiť jednoduché testy alebo zisťovať názor študentov na vybrané témy. Fórum: je to diskusné fórum s rôznymi variantmi (jednoduchá diskusia na jednu tému, všeobecné fórum pre všetkých,...). Pomocou tejto aktivity sa študenti môžu dozvedieť odpovede na svoje otázky (od učiteľa alebo od svojich spolužiakov). Spis: odpoveď na otázku s otvoreným koncom. Táto aktivita môže mať určené obdobie, počas ktorého bude prístupná a maximálnu známku, ktorou sa bude hodnotiť. Zdroj: je to vlastne študijný materiál, z ktorého majú vaši študenti študovať. Sú to dopredu pripravené materiály uložené na serveri, texty napísané priamo v prostredí Moodle, alebo odkazy na www stránky so študijnými materiálmi. Test: jednoduchý test vytvorený z niekoľkých typov otázok. Otázky sú v kategorizovanej databáze a môžu byť opakovane použité. Testy povoľujú viacero pokusov. Prieskum: je to niekoľko typov dotazníkov. - 86 -
Tieto aktivity môžete pridávať pomocou voľby Zapnúť upravovanie. Použitím tohto prepínača sa objavia nástroje na vkladanie a editovanie jednotlivých aktivít. Všetky aktivity môžete študentom sprístupniť (v prípade prekročenia časového obdobia skryť) pomocou ikony na to určenej (oko). Takým istým spôsobom môžete pred študentmi skryť jednotlivé témy (aby sa nerozptyľovali tým, čo ich ešte čaká) a ukázať im len aktuálnu tému. 4.3. Činnosť kurzu Obr. 4.3.1. Ukážka kurzu v systéme MOODLE Na (obr. 4.3.1.) je vidieť dizajn kurzu umiestneného do systému MOODLE. V ľavom menu sú aktivity systému, ako napríklad fórum, zdroje, kurzy, atď. V pravom menu sa nachádzajú informácie o aktuálnej činnosti daného používateľa a udalosti. Jadro celého kurzu sa nachádza v strede okna. Študent si môže spustiť kurz priamo zo systému MOODLE, alebo si najskôr stiahnuť offline verziu CBT kurzu a následne ju prezerať bez nutnosti pripojenia k internetu. Spustiť môže buď kompletný - 87 -
kurz, alebo len vybratú kapitolu. Taktiež si môže ku každej kapitole stiahnuť verziu vhodnú pre tlač. Kurz obsahuje niekoľko testov. Každá kapitola obsahuje test, v ktorom je v náhodnom poradí generovaných 10 otázok, pričom dochádza aj k premiešaniu poradia jednotlivých odpovedí. Vstup do testu je chránený heslom a kurz má časový limit 20 minút. Po dokončení testu systém automaticky vyhodnotí a zobrazí správne odpovede a vypíše dosiahnutý počet bodov. Ak študent predčasne ukončí test (zlyhá internetové pripojenie, zavrie prehliadač, ), pri opätovnom prihlásení môže pokračovať tam, kde predtým skončil, systém si pamätá už zodpovedané otázky. Celý test beží v zabezpečenom okne, aby študent nemohol kopírovať jednotlivé otázky prípadne inak neoprávnene zasahovať do testu. V kurze je aj hlavný test, v ktorom je náhodne generovaných 10 otázok zo všetkých kapitol (z celkového počtu 30 otázok). Ostatné pravidlá sú rovnaké, ako pre ďalšie testy. Pri akýchkoľvek komplikáciách s kurzom, alebo nejasností s danou problematikou sa môže študent obrátiť na pomoc učiteľa alebo ostatných používateľov prostredníctvom diskusných fór, alebo integrovanému systému zasielania správ. - 88 -
5. ZÁVER Hlavným cieľom mojej diplomovej práce bolo navrhnutie a realizácia multimediálneho kurzu pre dištančnú formu vzdelávania. Hlavný dôraz bol kladený na schopnosť kurzu jednoduchým a názorným spôsobom objasniť danú problematiku, ale aj na čo najmenšie požiadavky na prenosový kanál a archivačné média. Výsledný kurz je vložený do systému MOODLE, ktorý zabezpečuje jeho distribúciu a v budúcnosti môže zabezpečovať aj podporu a riadenie vyučovacieho procesu. Tento kurz je určený najmä pre študentov venujúcich sa problematike logických obvodov, ale aj pre ďalších používateľov, ktorý majú záujem a chuť získať, resp. rozšíriť si vedomosti z tejto oblasti. Kvôli efektívnemu vysvetleniu poskytovaných informácií sú v kurze dlhé bloky textu nahradené názornou animáciou. Ako je známe z psychologického hľadiska, človek si ľahko zapamätá to, čo vidí, ale najľahšie si zapamätá to, čo si môže odskúšať alebo overiť. Preto väčšina animácií je interaktívnych, čo umožňuje študenta zatiahnuť do deja a rozmýšľať nad tým, čo študuje. Každá kapitola obsahuje hypertextové odkazy, ktoré umožňujú ukryť doplnkové informácie mimo hlavnej stránky a pozrú si ich len tí študenti, ktorí budú mať o ne záujem. Po doštudovaní kapitoly si študujúci môže overiť nadobudnuté vedomosti pomocou pripravených testov, ktoré sú automaticky vyhodnocované, čo je veľkou výhodou. Na konci každej kapitoly je uvedená literatúra, ktorú som použil pri tvorbe a odkazy na internetové zdroje, kde si môžu záujemci ešte viac prehĺbiť svoje vedomosti. Počas tvorby som kurz nechával testovať pár záujemcom. Cieľom bolo zistiť názory ostatných študujúcich, zistiť čo by bolo vhodné doplniť alebo prepracovať. Ich pripomienky spolu s cennými radami vedúceho diplomovej práce som potom aplikoval pri tvorbe kurzu. Vývoj spoločnosti je vždy daný technologickým vývojom. Ten je v súčasnosti najviac ovplyvnený prudkým rozvojom informačných a komunikačných technológií, ktoré ovplyvňujú všetky odvetvia hospodárskeho a spoločenského života. Vzdelávanie nemôže byť výnimkou. Pre nás sú niečím novým informačno-komunikačné technológie. Prostredníctvom nich, ako novej technológie, nastal vo vzdelávaní problém, ktorý je potrebné riešiť. Tento problém nie je v informačno-komunikačných technológiách, ale v tom, k akému účelu ich máme vo vzdelávaní použiť. To znamená, že majú pomôcť vytvoriť nové, moderné vzdelávanie, ktorým sa e-learning v posledných rokoch stáva.[1] - 89 -
ZOZNAM POUŽITEJ LITERATÚRY [1] Zborník elearn 2007. Žilina 2007 [2] DROZDOVÁ M., KLIMO M., KOVÁČIKOVÁ T.: E-learning elektronické vzdelávanie a spracovanie dokumentov. Žilina 2002, [cit. 2007-04-10] Dostupné na WWW: http://www.cvtisr.sk/itlib/itlib022/drozdova.htm [3] MOLNÁR J.: Vzdelávanie v digitálnom svete. Nitra 2003, [cit. 2007-04-12] Dostupné na WWW: http://divai.ukf.sk/clanky/2003/molnar.pdf [4] IBM: IBM IT Education Services. Bratislava 2005, [cit. 2007-04-13] Dostupné na WWW: http://www-304.ibm.com/jct03001c/services/learning/sk/pdfs/ecdl.pdf [5] DUDÍK T.: Virtuálne laboratórium, alebo stačí nám len HTML?. Martin 2004, [cit. 2007-04-13] Dostupné na WWW: http://virtual.fpv.umb.sk/zbornik/zb2004/dudik.pdf [6] ANTOŠOVÁ M., DAVÍDEK V.: Číslicová technika. 1. vyd., České Budějovice: KOOP, 2003. ISBN 80-7232-206-0 [7] CHARLES H. ROTH, Jr.: Fundamentals of Logic Design (5th edition). Pws Pub Co, 2003. ISBN 05-3437-804-8 [8] KESL J.: Elektronika III - číslicová technika. Praha: BEN - technická literatura, 2005. ISBN 80-7300-182-9 [9] PINKER J., POUPA M.: Číslicové systémy a jazyk VHDL. Praha: BEN - technická literatura, 2006. ISBN 80-7300-198-5 [10] MATOUŠEK D.: Číslicová technika - základy konstruktérske praxe. Praha: BEN - technická literatura, 2001. ISBN 80-7300-025-3 [11] COOK NIGEL P.: A First Course in Digital Electronics. Prentice Hall, 1999. ISBN 0-13-779836-9 [12] PREDKO M.: Digital Electronics Demystified. United States: McGraw-Hill, 2005. ISBN 0-07-144141-7 [13] STOREY N.: Electrical & Electronic Systems. Pearson Higher Education, 2004, ISBN 01-30-93046-6 - 90 -
[14] FRIŠTACKÝ N. a kol.: Logické systémy. Bratislava: ALFA, 1986 [15] HRIANKA M.: Elektronické logické obvody. Žilina: Vysoká škola dopravy a spojov, 1992. ISBN 80-7100-066-3 [16] DIVIŠ Z., CHMELÍKOVÁ Z., PETŘÍKOVÁ I.: Logické obvody pro kombinované a distanční studium. Ostrava 2003, [cit. 2007-02-10] Dostupné na WWW: http://nwfei1.vsb.cz/www/files/lo_01.pdf - 91 -
Čestné vyhlásenie Vyhlasujem, že som zadanú diplomovú prácu vypracoval samostatne, pod odborným vedením vedúceho diplomovej práce doc. Ing. Miroslava Hrianku, PhD. a používal som len literatúru uvedenú v práci. Súhlasím so zapožičiavaním diplomovej práce. V Žiline... Podpis diplomanta...
Poďakovanie Touto cestou by som sa chcel poďakovať všetkým, ktorí mi pri tvorbe diplomovej práce pomohli. Doc. Ing. Miroslavovi Hriankovi, PhD. ďakujem za odborné vedenie, cenné rady a pripomienky, poskytnutie odbornej literatúry a ochotu pomôcť pri vypracovaní tejto diplomovej práce. Ešte raz Vám ďakujem. Autor
ŽILINSKÁ UNIVERZITA V ŽILINE Katedra telekomunikácií Optimalizácia informačného obsahu v systéme LMS Moodle Prílohová časť Martin Nottný 2007
ZOZNAM PRÍLOH Príloha A Ukážka CBT kurzu v prostredí Internet Explorer 7 Príloha B Ukážka kurzu vloženého do systému MOODLE Príloha C CD-ROM s CBT kurzom a diplomovou prácou
Príloha A: Ukážka CBT kurzu v prostredí Internet Explorer 7
Príloha B: Ukážka kurzu vloženého do systému MOODLE