Semestrální projekt 36SP Jan Otradovec a Rudolf Marek ======================================================== Cíle ==== Cílem diplomové práce bude dovršit vývoj programového balíku pro simulace chování logických obvodů a usnadnění jejich návrhu v rámci předmětu 36LS. V rámci projektu byly již zadány a vytvořeny dva programy: Návrhář elektronických součástek a návrhář schémat. Oba dva byly naprogramovány v systému Delphi v prostředí operačního systému Windows. Vytvořený simulátor musí být schopen simulace chování kombinačních i sekvenčních logických obvodů včetně detekce hazardů a musí disponovat prostředky pro jejich snadné === odhalení. Výchozí programy ================= Návrhář elektronických součástek ================================== Návrhář elektronických součástek ukládá do výstupního (knihovního) souboru logickou i grafickou reprezentaci navrhnuté součástky. Pro budoucí využití v simulačním balíku, byly ke každé součástce již přiřazeny charakteristiky, které bude využívat simulátor. Zatím jsou ukládány jen dvě: T H/L a T L/H Pro řešitele bude nejdůležitější znalost výstupního formátu souboru, ve kterém jsou jednotlivé součástky uloženy. Jeho popis je uveden v diplomové práci Pavla Šubrta v kapitole Struktura knihovny. Autor velmi vhodně zvolil architekturně nezávislý textový formát a proto bude možné tohoto formátu využít a případně ho rozšířit o další charakteristky součástek. (modifikace stávajícího programu) Dalším požadavkem na knihovnu součástek je možnost importu součástky z jazyka VHDL. Program uskutečňující převod by buď mohl být součástí samotného návrháře součástek a nebo by se jednalo o samostatný konverzní program. Program by se mohl realizovat v rámci předmětu (semestrální práce) 36PJ - programovací jazyky. Návrhář 1.0 - kreslení schémat ================================= Pro kreslení chémat byl vyvinut program návrhář 1.0, který používá součástkovou základnu vytvořenou předchozím programem. Bohužel, autor zvolil velmi nevhodný a implementačně závislý souborový formát pro uložení schémat. Nutnou součástí tohoto programu musí být nově vytvořený, implementačně nezávislý, souborový formát. Vzhledem k objektové povaze programu bude nejjednoduší použít formát na bázi jazyka XML. Změny programu bude možné uskutečnit v rámci předmětu 36SP - semestrální projekt. Návrh realizace simulátoru =========================== Z hlediska programátora by měl být simulátor vytvořen v platformově nezávislém prostředí (nebo programovacím jazyku). Bude nutné důsledně oddělit grafické uživatelské rozhraní a vlastní engine simulátoru tak, aby byl umožněn jeho další rozvoj. Vhodnými programovacími jazyky pro realizaci jsou C++, C nebo Java. Grafické rozhraní by mělo využívat snadno přenositelné knihovny (java, nebo gtk knihovna pro c a c++) Aplikační rozhraní ================== Aplikační rozhraní simulátoru musí být vytvořeno nezávisle na jeho grafickém rozhraní. Bude nutná spolupráce se studentem, který bude programovat (a navrhovat) nový strukturovaný formát ukládání dat pro nakreslená schémata. GUI === inituitivni jako v electronic workbench Simulační rozhraní =================== Jaké typy simulace??? kontrola log obvodu analyza detekce hazardu vyuziti intuitivnich grafikych prvku