456-0320/01 – Computer Units Design (NJP)

Gurantor departmentDepartment of Computer ScienceCredits5
Subject guarantorIng. Jiří Mitrych, Ph.D.Subject version guarantorIng. Jiří Mitrych, Ph.D.
Study levelundergraduate or graduateRequirementOptional
Year1Semestersummer
Study languageCzech
Year of introduction2003/2004Year of cancellation2009/2010
Intended for the facultiesFEIIntended for study typesMaster
Instruction secured by
LoginNameTuitorTeacher giving lectures
MIT04 Ing. Jiří Mitrych, Ph.D.
Extent of instruction for forms of study
Form of studyWay of compl.Extent
Full-time Credit and Examination 2+2
Combined Credit and Examination 4+2

Subject aims expressed by acquired skills and competences

The subject goal is to show the ASIC design flow on programmable logic base, the problems bound up with that and their solving. After graduating student shoud be able to make a digital design with simulation and realization. The subject parts are exercices with single design realization to show the real design flow.

Teaching methods

Lectures
Experimental work in labs

Summary

The languages for design automation are a basic means, which make possible to design applications of computer units in the form of modern electronic circuits on the basis of project documentation of boards with programmable elements CPLD, FPGA a FPAA.

Compulsory literature:

Dewey, A.: Design Automation. IBM Enterprise Systems, Czech Technical University in Prague (8-11 March, 1993). Bernard, J.-M., Hugon, J.: Od logických obvodů k mikroprocesorům I - IV, Praha 1983

Recommended literature:

Ashenden, P.J.: The VHDL CookBook. Dept. Computer Science University of Adelaide South Australia,(1990) Malvino, A.P., Brown J.A.: Digital Computer Electronics, McGraw-Hill Science Engineering 1992, ISBN-13 9780028005942

Way of continuous check of knowledge in the course of semester

Průběžná kontrola studia: Zpracování semestrálního projektu

E-learning

Další požadavky na studenta

Prerequisities

Subject has no prerequisities.

Co-requisities

Subject has no co-requisities.

Subject syllabus:

Přednášky: Vymezení problematiky - základy jazyka pro návrh HDL, prvky jazyka. Prvky HDL pro návrh, jejich použití, popis chování, popis struktury. Vytváření modelů, překlad, simulace, syntéza, typové konstrukty. Obecné a konkrétní vlastností modelů, zápis seznamu proměnných pro start událostí. Strukturování navrhovaných obvodů. Modelování kombinačních logických obvodů. Modelování sekvenčních logických obvodů, podprogramy, procedury a funkce. Modelování konečných automatů (FSM). Obvodové funkce vytvářené kombinačně nebo sekvenčně. Třístavové zesilovače, simulace, poruchové simulace Testování modelů obvodů, využití testů, funkce času ve VHDL. Příklady praktického modelování, sestavení signálů, způsob řízení činnosti modelu. Časování při simulaci, vytváření dynamicky obsazovaného pole, doporučení pro návrh. Vliv popisu na syntetizovanou strukturu. Vývoj nových prostředků pro návrh systémů na čipu (SoC). Technika ASIC a FPGA, návrh shora dolů, jazyky pro návrh (HDL), nástroje automatizovaného návrhu, syntéza s podporou HDL. Optimalizace kombinačních obvodů, vymezení obvyklých podmínek návrhu. Jazyky pro návrh, návrhové entity VHDL a Verilog. Deklarace, souběžně prováděné příkazy, sekvenčně prováděné příkazy. Datové typy a datové objekty. Pojem entita, relace, souběžné procesy, definice pole, vektorů a proměnných veličin. Výrazy. Operandy (literály, identifikátory, funkcí volané operandy, indexované a řezové operandy, konverze typů operandů, záznamy). Operátory (aritmetické, znaménkové, relační, logické, v "bitovém formátu", operátory posuvu, zřetězení a replikace. Předdefinované typy, funkce, tvorba knihovních prvků, popis kombinačních a sekvenčních obvodů Modelování pomocí příkazu proces, snížení příkonu, snadné testování. Přesnost simulace, zlepšení rychlosti simulace. Doporučení pro simulaci a syntézu modelu při modu činnosti "output" a "buffer", levostranné uspořádání operátoru, parametry v modelech pro opakované použití. Výpis modelu s plnou citlivostí k událostem, detekce typu hran "wait" a "if". Operátory, řezy, konverze bitů na booleovské proměnné. U-logika. Souběžné procesy. Spojení simulace a syntézy, použití "others" (VHDL) a "default" (Verilog), signály a proměnné, nastavování vstupů pro příkaz "case". Porovnání typů uspořádání vektorů rozdílné šířky. Použití atributů a "packages". Přenosové funkce - rozšíření a useknutí, sdílení zdrojových modelů. Způsob reakce modelu na různě uspořádané seznamy proměnných. Funkce sekvenčních obvodů. Strukturování návrhu, hrubé zrnění, moduly entit nebo architektur. Hrubé - střední zrnění, generování pomocí "for" a "if", blokové příkazy. Střední zrnění. Jemné zrnění, elementární funkce. Konstrukty s příkazem WAIT. Bezchybný popis obvodových struktur pomocí hierarchicky strukturovaných konstruktů. Modelování kombinačních logických obvodů. Logické a aritmetické rovnice. Logická struktura řízení, multiplexory, kodéry, prioritní kodéry, dekodéry, komparátory, aritmetické logické jednotky. Reprezentace čísel. Rozdíly vlastností proměnných a signálů. Vztah proměnné k procesu jako lokální veličiny, signálu jako globální veličiny. Zdroje signálů. Modelování sekvenčních logických obvodů typu zdrž (latch), jak jsou obvody typu zdrž odvozeny. Nechtěný obvod typu zdrž vznikající při použití příkazu "case". Dynamicky řízený klopný obvod ("flip-flop") typu D. Lineární zpětnovazební posuvné registry (LFSR), zpětnovazební hradla XOR a XNOR, struktury s jedním vstupem a mnoha výstupy a s mnoha vstupy a jedním výstupem. Zajištění posloupnosti všech stavů. Generický -bitový LFSR. Čítače, struktury a modelování čítačů. Vedlejší efekty, popis bran, instrukce návratu. Třídy objektů, funkce rozhraní. Modelování konečných automatů (FSM), tabulka stavů a stavový diagram, psaní modelu v jazyce HDL, inicializace a bezchybné chování, kódování stavů, Mealyho a Moorův typ FSM, příští stav a výstupní logika FSM. Strukturování (zapouzdření) standardní a uživatelské. Standardní typy, podprogramy, knihovní prvky, hierarchická struktura knihoven. Zadání semestrálních prací. Posuv, kombinační posuv, sekvenční posuv. Sčítání a odečítání, kombinační sčítání a odečítání, sekvenční sčítání a odečítání. Násobení a dělení, kombinační versus sekvenční násobící a dělicí algoritmy. Sekvenční proměnné, operátory. Předdefinované atributy, uživatelské atributy, stejná jména různých funkcí, přeměna typů. Modelování třístavových zesilovačů, třístavové zesilovače pro dvousměrné signály. Vytváření signálů synchronizace, relativní a absolutní čas signálů, opakující se signály vytvářené smyčkami. Konfigurace (VHDL), konstatující příkazy (VHDL). Syntaxe výrazu DELAY. Potlačení pulsů kratších než zpoždění, přenos jakýchkoliv pulsů. Speciální simulační konstrukty - systémové úlohy a funkce Vytváření vektorů (stimuly a reference) Vektory vytvářené letmo, vytváření signálů s přenosy (inicializace), Vektory zapamatované jako pole, čtení záznamů zkušebních vektorů, srovnávání skutečných a očekávaných výstupních vektorů. Vytváření souborů dat pro simulace. Způsoby zápisu atributů -type, -range, -value, -signal, -function a -constant. Příklady praktického modelování, třístavové zřetězení stavů pro efektivní využití plochy čipu, číslicové spínací hodiny, výhybka mikropočítačů, obvod pro největší společný dělitel, detekce a oprava chyb. Použití U-logiky. Pospojování, sdružení veličin. Asynchronní zpětná vazba, posuvný registr. Zápisy signálů a iterace přírůstkového zpoždění, proměnných a iterace přírůstkového zpoždění, signály a proměnné ve smyčce s příkazem "for" (VHDL), sestavení blokové a neblokové procedury ve smyčce s příkazem "for" (Verilog). Příklady konstruktů, strukturování. Simulace modelů, změny v zapojení a způsob úpravy modelů. Vliv "don't care" na výstupní hodnoty, komparace vektorů s různými délkami vracející booleovskou hodnotu FALSE, typové atributy -´base, 'left, 'right, 'high a 'low (VHDL), atributy polí - 'range, 'reverse_range, a 'length (VHDL), atributy signálů - 'stable, a 'event (VHDL), definování datových typů v "package". BSDL - jazyk pro popis prostředků IEEE Std 1149.1. Typové konstrukty systému Boundary-Scan Testing. Způsob návrhu struktury a testů B-ST. Trendy dalšího rozvoje programových prostředků pro návrh, verifikaci a implementaci systémů na čipu. Exkurse na pracoviště pro implementaci obvodů. Výklad typových konstruktů, aplikace. Odevzdání semestrálních projektů. Zápočtová písemka. Zápočet. Projekty: Projekt je realizací modelů jednotek střední složitosti, vyžaduje se zpracování dokumentace pro implementaci zákaznického obvodu. Počítačové laboratoře: Cvičení navazují na přednášky.

Conditions for subject completion

Full-time form (validity from: 1960/1961 Summer semester)
Task nameType of taskMax. number of points
(act. for subtasks)
Min. number of points
Exercises evaluation and Examination Credit and Examination 100 (145) 51
        Examination Examination 100  0
        Exercises evaluation Credit 45  0
Mandatory attendence parzicipation:

Show history

Occurrence in study plans

Academic yearProgrammeField of studySpec.FormStudy language Tut. centreYearWSType of duty
2009/2010 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology P Czech Ostrava 1 Optional study plan
2009/2010 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology K Czech Ostrava 1 Optional study plan
2008/2009 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology P Czech Ostrava 1 Optional study plan
2008/2009 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology K Czech Ostrava 1 Optional study plan
2008/2009 (N2646) Information Technology (2612T025) Computer Science and Technology K Czech Ostrava 2 Choice-compulsory study plan
2007/2008 (N2646) Information Technology (2612T025) Computer Science and Technology P Czech Ostrava 2 Choice-compulsory study plan
2007/2008 (N2646) Information Technology (2612T025) Computer Science and Technology K Czech Ostrava 2 Choice-compulsory study plan
2007/2008 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology P Czech Ostrava 1 Optional study plan
2007/2008 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology K Czech Ostrava 1 Optional study plan
2006/2007 (N2646) Information Technology (2612T025) Computer Science and Technology P Czech Ostrava 2 Choice-compulsory study plan
2006/2007 (N2646) Information Technology (2612T025) Computer Science and Technology K Czech Ostrava 2 Choice-compulsory study plan
2006/2007 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology P Czech Ostrava 1 Optional study plan
2006/2007 (N2647) Information and Communication Technology (2612T025) Computer Science and Technology K Czech Ostrava 1 Optional study plan
2005/2006 (N2646) Information Technology (2612T025) Computer Science and Technology P Czech Ostrava 2 Choice-compulsory study plan
2005/2006 (N2646) Information Technology (2612T025) Computer Science and Technology K Czech Ostrava 2 Choice-compulsory study plan
2004/2005 (N2646) Information Technology (2612T025) Computer Science and Technology P Czech Ostrava 2 Choice-compulsory study plan
2004/2005 (N2646) Information Technology (2612T025) Computer Science and Technology K Czech Ostrava 2 Choice-compulsory study plan
2003/2004 (N2646) Information Technology (2612T025) Computer Science and Technology P Czech Ostrava 2 Choice-compulsory study plan
2003/2004 (N2646) Information Technology (2612T025) Computer Science and Technology K Czech Ostrava 2 Choice-compulsory study plan

Occurrence in special blocks

Block nameAcademic yearForm of studyStudy language YearWSType of blockBlock owner