User Tools

Site Tools


project:proj_list

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
project:proj_list [2015/11/08 17:47]
xkubalik [All projects archives 2004 - 2014]
project:proj_list [2023/02/07 15:24]
xkubalik [Current projects]
Line 2: Line 2:
 ===== Current projects ===== ===== Current projects =====
  
-  * **Softwarová ​podpora ​hardwarového rozšíření pro platformu Raspberry PI (Software library used for hardware extension of Raspberry Pi)** (BP - Vico Bohdan- Proveďte tyto úkoly: +  * **Nástroje pro podpora ​výuky bezpečnostních kódů v prostředí Wolfram Mathematica** (BP - Linhartová Helena
-    * Prostudujte ​existující řešení.  +    * Prozkoumejte ​existující řešení ​nástrojů vhodných k výuce bezpečnostních kódů
-    * Vyberte operační systém vhodný pro ovládání a komunikaci s hardware ​es rozšiřující rozhraní+    * Analyzujte problémy studentů ​při výuce bezpečnostních kódů
-    * Vytvořte knihovnu funkcí v programovacím jazyce C pro ovládání jednotlivých pinů rozšiřujícího rozhraní ​etně sériové linky+    * Zaměřte se zejména na tyto kódy: sudá parita, křížová parita, Hammingův kód, rozšířený i zkrácený Hammingůkód, cyklický kód, součinový kód a RM kód
-    * Propojte vývojovou desku Raspberry PI s PC s pomocí sériové linky+    * Navrhněte vlastní nástroje vhodné k výuce těchto kódů
-    * Pro ovládání periferií vytvořte jednoduché webové rozhraníkde bude možné nastavovat ​číst jednotlivé stavy pinů rozhraní+    * Zaměřte se zejména na oblast generovánídekódování ​opravy těchto kódů. 
-    * Umožněte s pomocí webového rozhraní posílat ​číst informace ze sériové linky. +    * Nástroje budou umožňovat generovat nejen výukové notebooky pro program Wolfram Mathematica,​ ale i VHDL kódy testbenche pro lepší představu jejich implementace v hardware. 
-    * Pro zvolený operační systém vytvořte aplikaci, která zprostředkovává komunikaci webového rozhraní s hardware. +    * Nástroj ​bude podporovat i vložení chyby jeji opravu
-    * Vytvořená aplikace ​bude obsahovat soubor proměnných,​ které bude možné nastavovat s pomocí webového rozhraní ​s pomocí PC přes sériovou linku+    * Navržené řešení realizujte ​řádně otestujte.
-    * Vytvořte podrobnou dokumentaci popisující důležité kroky nutné k přidání dalšího rozhraní ​odpovídající modifikaci webového rozhraní.+
  
-  * **Zařízení pro sledování objektu s nízkou spotřebou** (Low power camera trap used for property surveillance)(BP - Václav Vanc) 
-    * Prostudujte existující řešení. 
-    * Navrhněte vlastní zařízení umožňující pořízení a odeslání fotografie přes internet z okolí sledovaného objektu, který není připojen trvale k internetu ani k elektrické sítí. 
-    * Vyberte vhodný procesor sloužící ke komunikaci s GSM modulem a kamerou. 
-    * Důraz bude kladen na velmi nízkou spotřebu a co nejmenší pořizovací cenu. 
-    * Zařízení bude napájeno z 12V baterie. 
-    * Zařízení bude umožňovat data ukládat na SD kartu. 
-    * Nastavení parametrů a doby snímání fotografie bude možné s pomocí SMS zpráv. 
-    * Navržené zařízení zrealizujte. 
-    * Vytvořte knihovnu funkcí umožňující ovládat dostupné periferie. 
-    * Pro výsledné řešení vytvořte demonstrační aplikaci. 
-    * Výsledné zařízení otestujte. 
  
-  * **Multiplatformní grafická aplikace pro simulaci mikroprogramovaného procesoru DOP v3(Cross-platform graphical simulator of micro-programmed processor DOP)** (DP Miškovský Vojtěch+  * **Programovatelná elektronická zátěž ​(Programmable electronic load)** (BP Pánek Miloš) 
-    ​* Prostudujte ​existující řešení. +    ​- Prozkoumejte ​existující řešení ​programovatelné elektronické zátěže
-    ​* V programovacím jazyku C++ implementujte simulátor výukového procesoru DOP-v3+    - Analyzujte problémy současných řešení a navrhněte vlastní řešení
-    ​* Aplikaci bude možné spouštět pod OS Microsoft Windows i OS Linux+    ​- Navržené řešení bude podporovat tyto režimy: stálý proud, stálý odpor, stálý výkon a stálé napě
-    ​* Simulátor musí obsahovat editor mikroprogramu a ekladač zdrojových mikroprogramů (mikroassembler). +    ​- Programovatelná zátěž bude splňovat tyto požadavky:​ 
-    * Syntaxe zdrojového mikroprogramu musí být stejná jako u stávajícího simulátoru používaného pro výuku ​edmětu BI-JPO (jednotky počítače)+      - nastavení všech parametru zátěže ​es rozhraní na samotném zařízení,​ 
-    ​* Simulátor musí umožňovat krokování mikroprogramu po jednotlivých mikroinstrukcích i spouštění úseku k zadanému bodu zastavení+      - komunikace s PC aplikací ​es bluetooth, USB a wifi, 
-    ​* Simulátor musí umožňovat ​zobrazit aktuální stav jednotlivých registrů procesoru DoP a to včetně ​těch, které jsou programátorsky nedostupné+      - záznam naměřených dat lokálně na SD kartu, 
-    ​* Pro uživatele vytvořte jednoduchou uživatelskou ​íručku+      ​jednoduchý protokol pro komunikaci s PC s možným rozšířením pro další funkcionalitu
-    ​* Výsledné ​řešení otestujte.+    ​- Pro PC navrhněte a naprogramujte aplikaci v jazyce c++ s grafickým rozhraním
 +    ​- Aplikace v PC bude umožňovat ​nastavit všechny parametry zátěže, ​včetně ​průběžného sledování naměřených hodnot a jejich zobrazení přímo v aplikaci.  
 +    ​- Parametry zátěže bude možné v průběhu měření měnit podle edem nastavených hodnot
 +    ​- Navržené ​řešení ​zrealizujte a řádně ​otestujte.
  
-  * **Programovatelný stmívač světel pro domácí zvířata** (Programmable light dimmer for domestic animals)(BP - Červenka Ondřej) 
-    * Prostudujte existující řešení. 
-    * Vyberte vhodný procesor pro realizaci. 
-    * Zařízení bude umožňovat nastavení stmívání pro 2 místnosti. 
-    * Ovládání bude možné lokálně u zařízení s pomocí displeje a tlačítek a také vzdáleně s pomocí PC. 
-    * Pro ovládání stmívání a detekcí vnějšího osvětlení vytvořte knihovnu v jazyce c pro zvolený procesor. 
-    * Pro ovládání s PC vytvořte jednoduchou aplikaci. 
-    * Navržené zařízení zrealizujte a vytvořenou knihovnu včetně aplikace v PC otestujte. 
  
-  * **FPGA deska řízená procesorem ARM** (FPGA board controlled by ARM processor)(BP - Elena Filipenková+  * **Zařízení pro ovládání základních periferií připojených k FPGA obvodu ​(Device for controlling basic peripherals connected to the FPGA circuit)** (BP - Šebek Michal
-    ​* Prostudujte ​existující řešení. +    ​- Prozkoumejte ​existující řešení ​ovládání periferií z FPGA obvodu firmy XILINX
-    ​* Navrhněte zařízení obsahující FPGA obvod a procesor ARM. +    ​- Zaměřte se zejména na tyto periférieOLED displej, alfanumerický displej, tlačítka, přepínače, ​led diody
-    * Zvolte vhodnou desku obsahujícíFPGA obvod, tlačítka, přepínače, ​display+    ​- Navrhněte vlastní knihovnu zaměřenou na ovládání periferií zejména přes sběrnici I2C
-    ​* Pro řízení FPGA obvodu použijte vývojový kit Raspberry Pi osazený obvodem ARM. +    ​- Navrženou knihovnu zrealizujte ​řádně otestujte
-    * Mezi těmito obvody vytvořte komunikační linku vhodnou pro řízení FPGA obvodu s pomoci procesoru ARM+    ​- Pro demonstraci správné funkce periférií napište obslužnou aplikaci ​pro FPGA Artix-7
-    ​* Řízení ​zjištění stavu desky bude možné s pomocí minimálně 32x16b registrů+    ​- Aplikace bude obsahovat menu pro volbu testování periférií a nastavení ​obsahu registrů. 
-    ​* Vytvořte knihovnu funkcí ​pro FPGA desku umožňující nastavovat a ovládat základní periferie této desky procesorem ARM+    ​Výsledné řešení ​řádně ​otestujte
-    ​* Pro FPGA desku vytvořte aplikaci umožňující zobrazovat stav registrů určených ​pro nastavení ​parametrů desky+
-    ​* Pro procesor ARM vytvořte jednoduchou aplikaci umožňující nastavovat a zjišťovat stav FPGA desky. +
-    * Výsledné řešení otestujte+
  
-  * **Generátor elektrických obvodů pro předmět ČAO** (Automatic analog circuit generator)(BP - František Veselý) 
-    * Prozkoumejte existující řešení pro kreslení elektrických obvodů. 
-    * Vytvořte aplikaci, která bude umožňovat na základě zadaných parametrů automaticky náhodně generovat jednoduché obvody složené ze zdroje napájení, kondenzátorů,​ rezistorů a cívek. 
-    * Aplikace bude umožňovat nastavit hodnoty a typ součástky v obvodu. 
-    * Výsledné schéma bude možné překreslit tak, aby se změnila pouze pozice součástky. 
-    * Vygenerované schéma bude možné uložit do formátu XML a opětovně načíst. 
-    * Aplikace bude umožňovat popsat obvod s pomocí rovnic a to jak v časové oblasti, tak s pomocí fázorů. 
-    * Aplikace bude dále umožňovat generovat rovnice pro celkovou impedanci na vstupních svorkách a přenos. 
-    * Vygenerované rovnice bude možné bez úprav vložit do programu Wolfram Mathematica a zpracovat. 
-    * Při generování rovnic bude možné zvolit směr proudu a napětí ručně, popřípadě automaticky. 
-    * Výsledné řešení otestujte. 
  
-  * **Modul pro snímání teploty ​i převozu materiálu v dopravě** (Temperature monitoring module for material car transporting purpose)(BP ​Jiří ​Šeda+  * **Multiplatformní nástroj ​pro odposlech dat z rádiového ​enosu pomocí SDR (A multi-platform wireless data sniffing tool using SDR)** (DP - Šimůnek Martin
-    ​* Prozkoumejte existující řešení ​bezdrátových zařízení ​hlídajících teplotu dostupná na trhu+    ​- Analyzujte technologii SDR(softwarově definovaného rádia) a jeho možnosti pro odchytávání ​bezdrátových zařízení. 
-    ​* Navrhněte zařízení ​umožňující monitorování teploty přepravních boxů+    ​- Zaměřte se zejména na zařízení ​pracující v pásmu 433MHz a 868MHz
-    ​* Pro řízení ​sledování teploty ​komunikaci s nadřazeným systémem zvolte vhodnou konfiguraci senzorů ​procesoru+    ​- Prozkoumejte existující řešení pro odchytávání a analýzu těchto zařízení
-    ​* Zařízení bude umožňovat sledovat teplotu u více boxu+    - Využijte SDR navrhněte nástroj pro odposlech dat přenášených rádiovým signálem v pásmu 433MHz ​868 MHz
-    ​* V případě překročení minimální nebo maximální hlídané hodnoty informujte řidiče pomocí zvukového upozornění na telefonu+    ​- Nástroj by měl být tvořen knihovnou a grafickým rozhraním pro odposlech a zpracování naměřených dat
-    ​* Informaci o teplotě je nutné ukládat po celou dobu jízdy. +    ​- Podporována budou zejména zařízení typu: bezdrátový teplotní senzor, bezdrátové senzory v automobilu a bezdrátové měřiče tepla v domácnostech.  
-    * Komunikace s řidičem ​bude provedena s pomocí mobilního telefonu ​es rozhraní bluetooth+    ​- Nastroj ​bude umožňovat analyzovat ​enos, a to jak nešifrovaný,​ tak i šifrovaný
-    ​* Pro komunikaci procesoru s telefonem vytvořte vhodný síťový protokol zaručující bezpečný přenos informací+    ​- Pokud bude k dispozici klíč pro dešifrování,​ bude nástroj umožňovat i dešifrování,​ a to zejména pro bezdrátové měřiče tepla v domácnostech
-    ​Navržené ​zařízení ​zrealizujte+    ​Navržené řešení ​zrealizujte a řádně ​otestujte.
-    * Pro zvolený procesor vytvořte knihovnu funkcí ​obslužnou aplikaci demonstrující správnou funkcí celého zařízení. +
-    * Výsledné zařízení ​otestujte.+
  
-  * **Rozšíření síťového simulátoru o Spanning tree protocol** (Network simulation module extension implementing Spanning tree protocol)(BP - Peter Bábics) +  * **Zařízení pro ovládání aplikace Adobe Lightroom s pomocí hardwarového ovladače (A device to control Adobe Lightroom using a hardware driver)** (BP - Macháček Vitězslav) 
-    * Prostudujte existující simulátor počítačové sítě [1, 2, 3, 4, 5].  +    ​Prozkoumejte ​existující ​řešení umožňující ovládání aplikace Adobe Lightroom s hardwarového ovladače
-    ​Prozkoumejte ​možnosti implementace Spanning tree protokolu do existujícího ​řešení+    ​- Navrhněte vlastní zařízení fungující jako samostatný ovladač splňující tyto požadavky: 
-    * Pro tento simulátor napište modul v jazyce Java, který bude umožňovat využití Spanning tree protokolu v simulovaných přepínačích+      ​- komunikace s aplikací bude realizována ​es USB a Bluetooth, 
-    ​* Vytvořené řešení začleňte do existujícího simulátoru. +      - ovladač bude umožňovat čtení vstupů z encodérůtlačítek a Hallových senzorů, 
-    * Napište návod pro použití simulátoru a to včetně vytvořeného modulu. +      - ovladač bude napájen z baterie
-    * Vytvořte několik ​íkladů použití vytvořeného modulu. +    ​- Navržený ovladač zrealizujte a naprogramujte
-    * Výsledné řešení včetně návodu otestujte. +    ​- Pro PC vytvořte vlastní aplikaci umožňující zpracování dat z ovladače a jejich přenos do aplikace Adobe Lightroom Classic
-    * [1] PitřinecT.,.: „Síťový simulátor pro výukové účely na bázi prvků OS Linux“DP – 2012, ČVUT FIT+    ​- Aplikace v PC bude dále umožňovat nastavení chování ovladače a nastavenou ​konfiguraci ​ukládat lokálně
-    ​* [2] Švihlík, M.,:​“Vizualizace virtuální počítačové sítě“, DP-2012, ČVUT FIT+    ​- Výsledné řešení řádně otestujte.
-    ​* [3] Lukáš, M.,:“ Podpůrné komponenty simulátoru počítačové sítě“, DP-2012, ČVUT FIT+
-    ​* [4] Horáček, M.,:“ Rozšíření síťového simulátoru o možnost použití konfiguračních souborů pro konfiguraci ​síťových prvků “, BP-2014, ČVUT FIT+
-    ​* [5] Mach, V.,:“ Rozšíření síťového simulátoru o připojení do reálné sítě“, BP-2014, ČVUT FIT.+
  
-  * **Levné ​zařízení pro měření veličin a zobrazování informací ​založené na existujícím wifi routeru** ​(Low cost device ​used for data colection ​based on wifi router)(BP Adam Benda+  * **Přenosné ​zařízení pro odposlech NFC komunikace pomocí SDR založené na platformě Raspberry Pi (Portable ​device for sniffing NFC communication using SDR based on the Raspberry Pi platform)** (DP Balko Martin
-    ​* Prostudujte ​existující ​řešení+    ​- Prozkoumejte ​existující ​nástroje určené k analýze NFC komunikace
-    ​* Vyberte vhodný wifi router za účelem modifikace a vylepšení jeho funkcí+    ​- Analyzujte technologií SDR (softwarově definovaného rádia)
-    ​* Na základě vybraného wifi routeru navrhněte a sestavte zařízeníke kterému připojíte teplotní a jiné senzory, a malý displej+    ​- Analyzujte technologii NFC, zejména princip komunikace mezi NFC čtečkou NFC kartou (MIFARE ClassicMIFARE DESFireMIFARE Plus). 
-    ​Navrhněte ​a implementujte aplikaci, která agreguje ze zařízení ​naměřené hodnotyskladuje je a umožňuje jejich prohlížení+    - Analyzujte ​navrhněte způsob pro odposlech NFC komunikace pomoci SDR
-    ​* Navrhněte a implementujte aplikaci, která na zařízení ​zobrazuje data získaná ze sítě Internet (napřpřehled zprávnejbližší odjezd autobusu)+    ​Navrhněte ​přenosné ​zařízení, ​které bude umožňovat odposlech, záznam a prvotní analýzu NFC komunikace
-    ​Navržené zařízení ​otestuje.+    ​- Zařízení ​bude schopné odchytit UID karty a komunikaci směrem od čtečkyPokud bude signál dostatečně silnýzaznamená i komunikaci směrem od karty
 +    ​Navržené ​řešení zrealizujte na platformě Raspberry Pi. 
 +    - Pro výsledné ​zařízení ​napište v jazyce Python obslužnou aplikaci. 
 +    - Výsledné zařízení řádně otestujte.
  
-  * **Knihovna funkcí pro program Wolfram Mathematica umožňující využití bezpečnostních kódů** - (Wolfram Mathematica library used for error detection and correction codes)(DP - Jakub Doubek) +   
-    * Prozkoumejte základní principy pro generování bezpečnostních kódů, zejména Hammingův, BCH, RS a LDPC kód. +===== Available projects ​- FIT =====
-    * Prostudujte existující knihovny pro generování bezpečnostních kódů. +
-    * Součástí analýzy bude i detailnější rozbor všech podporovaných kódů a potřebná matematická teorie. +
-    * Navrhněte a zrealizujte vlastní knihovnu pro program Wolfram Mathematica a to s ohledem na použití této knihovny pro zabezpečení dat. +
-    * Navrženou knihovnu otestuje. +
-    * Pro každý podporovaný bezpečnostní kód vytvořte několik jednoduchých příkladů pro kódování a dekódování dat v závislosti na různých vstupních parametrech. +
-    +
-===== Available projects =====+
  
-**Pokud máte o téma zájemnapište mi email. Rezervace v systému bpm nemá žádnou váhu.**+  1. Arduino HW/SW 
 +    ​GPS přijímač a jeho aplikace 
 +    ​Meteo stanice 
 +    * GSM modém a jeho aplikace 
 +    * NFC a bezkontaktní karty 
 +    * univerzální desky s různými periferiemi 
 +    * řízení modelu auta 
 +    * generator analogových průběhů 
 +    * přípravky pro desku digilent CMOD A7/S7 (displejtlačítka, switche, atd.
 +    * návrh hardware pro desku digilent CMOD A7/S7 
 +    * vlastní zadání 
 +    ​Wifi a ESP32/​ESP2866 
 +    ​zařízení pro ochranu baterie před vybitím
  
-  * **Generátor referencí na základě dat uložených ve formátu XML** - Proveďte rešerší existujících ​řešení. Navrhněte a zrealizujte aplikaci pro generování seznamu referencí na základě dat uložených v XML souboru a šablony pro generování referencí. Reference bude možné vytvářet i hierarchicky. Výstupní formát bude možné konfigurovat s pomocí konfiguračního souboru. Aplikace bude umožňovat editovat jednotlivé záznamy uložené v souboru XML a vytvářet vazby mezi referencemi,​ jako je například tento článek byl citovat v těchto publikacích. BP doba práce 2 semestry (volné) (100% SW)+  ​2. Wolfram Mathematica 
 +    ​bezpečnostní kódy 
 +    ​kódy pro kryptografií 
 +    ​matematické funkce realizované v HW 
 +    ​aritmetický procesor v GF(2^2^n) 
 +    ​efiktivita protokolů pro předmět BI-PSI 
 +    * vlastní zadání
  
-  * **Linuxové jádro ​pro vestavěný procesor*- Proveďte rešerši existujících linuxových jader pro vestavěné procesory a najděte vhodné ​řešení ​pro procesor ARM osazený na desce beagleboard. Pro tuto desku s pomocí linuxového jádra rozchoďte všechny periférie a napište demo aplikaci. BP, DP - doba práce 2-4 semestry (volné) (100% SW)+  ​3. Visual C++/C# 
 +    ​aplikace pro komunikaci s periferiemi v PC 
 +    ​aplikace ​pro komunikaci s procesorem Zynq 
 +    ​aplikace ​pro správu projektu ve VHDL 
 +    * překladače 
 +    * grafické aplikace ​pro výuku 
 +    * vlastní zadání
  
-  * **Programovatelný softwarový ​generátor ​všech typů paketů** BP - doba práce 2 semestry ​(volné) (100% SW)+  ​4. Jazyk VHDL / desky FPGA 
 +    ​návrh hardware pro bezpečnostní kódy 
 +    ​* generátor ​průběhů (sinusovka, obdelník, trojuhelník) 
 +    ​osciloskop 
 +    ​návrh hardware pro realizaci matematických funkcí 
 +    * implementace procesoru/​periferié procesoru ​(ARM, Z80, AVR, ...) 
 +    * HW podpora SoC (Zynq) 
 +    * aritmetický procesor v GF(2^2^n) 
 +    * Hry pro FPGA 
 +    * vlastní zadání
  
-  * **Programovatelný hardwarový generátor všech typů paketů** BP, DP - doba práce 2-4 semestry (volné) (80% SW, 20% HW)+  ​5. Plošné spoje 
 +    ​návrh zařízení s porcesorem atmel + drobné periferié 
 +    ​zařízení s nízkou spotřebou 
 +    ​vlastní zadání
  
-  * **Jednoduchý ​ekladač z jazyka c do mikroprogramu - Simple translator from C to microcode description** - Navrhněte a zrealizujte překladač z programu popsaného podmnožinou příkazů jazyka c do mikroprogramu popsaného v jazyce VHDL. Prozkoumejte existující řešení. Jazyk c bude podporovat vybrané celočíselné a binární typy proměnných. Překladač bude schopen přeložit následující prvky jazyka C: aritmetické a logické operace, podmíněný výraz if (else if, else), cyklus while, cyklus for příkaz goto. Implementace bude s ohledem na multiplatformnost provedena v jazyce Java. (BP, DP) - doba práce 2-4 semestry (volné) (90% SW, 10% HW)+  ​6. Raspberry PI / Raspberry PI Pico 
 +    ​ovládání jednoduchých periferií 
 +    ​chytré síť, ovládání periferií ​es ethernet 
 +    ​vzdálená správa sítí 
 +    ​SDR(Software Defined Radioaplikace - sledování ​analýza provozu 
 +    * vlastní zadání
  
-  * **Jednoduchý překladač z jazyka c do automatového popisu ​ - Simple translator from C to automata description** - Navrhněte a zrealizujte překladač z programu popsaného podmnožinou příkazů jazyka c do mikroprogramu popsaného v jazyce VHDL. Prozkoumejte existující řešení. Jazyk c bude podporovat vybrané celočíselné a binární typy proměnných. Překladač bude schopen přeložit následující prvky jazyka C: aritmetické a logické operace, podmíněný výraz if (else ifelse), cyklus while, cyklus for příkaz goto. Implementace bude s ohledem na multiplatformnost provedena v jazyce Java. (BP, DP) - doba práce 2-4 semestry (volné) (90% SW, 10% HW)+  ​7. Android 
 +    ​aplikace pro práci s hardware ​(raspberry PIArduino ​jiné)
  
-    ​**Šifrování ​dat na pevném SATA disku připojeném přes ethernetové rozhraní** - Prostudujte existující hardwarová řešení šifrování dat na pevném disku. Navrhněte a zrealizujte vlastní řešení napsané v jazyce VHDL. Pro návrh použijte existující ethernetové jádro napsané v jazyce VHDL. (DP) - doba práce 2-4 semestry (volné) (50% SW, 50% HW)+  8. Python 
 +    ​aplikace pro zpracování a generování ​dat podle šablon
  
-  * **Sada nástrojů pro On-Line diagnostiku** (Set of tools for On-Line test) - Naprogramujte sadu nástrojů pro On-Line diagnostiku. Nástroje budou založeny na již existujícím nástroji pro práci s obvody. Tento nástroj zmodifikujte tak, aby umožňoval použít libovolnou techniku pro On-Line testování založenou na bezpečnostních kódech (sudá parita, zdvojení, Berger kód, Hamming kód, atp.). Výsledné řešení bude umožňovat načtení vstupního obvodu, jeho modifikaci na samočinně zabezpečený obvod a jeho konverzi do příslušných VHDL kódů. Aplikace bude podporovat i rozsáhlejší návrh složený z více částí. BP, DP - doba práce 2-4 semestry (volné) (100% SW)+  ​9. Neuronové sítě 
 +    ​Model neuronové sítě ve Wolfram Mathematice 
 +    ​Model neuronové sítě v jazyce c++ 
 +    ​Implementace neuronu a neuronové sítě v hardware 
 +    ​Implementace neuronové sítě v SoC
  
-  * **Rychlý osciloskop postavený s pomocí FPGA** (High speed scope based on FPGA) Navrhněte a zrealizujte levný 1 kanálový 50 Mhz osciloskop postavený s pomocí desky Starter board s obvodem Spartan3e. Jako základ použijte modul tvořený analogovým vstupem s A/D převodníkem. Tento modul upravte tak, aby splňoval požadavky kladené na vstupní části osciloskopu takovýchto parametrů. Pro desku Spartan 3E napište aplikaci pro zpracování dat získaných s A/D převodníku. Získaná data zobrazte. ​ BP, DP - doba práce 2-4 semestry (volné) (50% SW, 50% HW)+===== Available projects HW external =====
  
-  ​* **JTAG ​SPI USB programátor pro ATMEL*Navrhněte ​programátor včetně programovatelné redukce pro programování mikrořadičů Atmel. BP, DP - doba práce 2-4 semestry ​(volné) (50% SW50% HW)+  ​1. Malý grafický displej do výšky 1U s rotačním enkodérem ovládaný přes SPI 
 +    ​* Navrhněte ​a zrealizujte grafický TFT displej ovládaný pomocí sběrnice SPI. 
 +    * Displej by měl obsahovat možnost zadávání příkazů (tlačítkarotační encoder,…).  
 +    * Výška displeje musí splňovat normu 1U.  
 +    * Pro vytvořený displej naprogramujte framework, který usnadní práci s displejem.
  
-  ​* **Vysoce spolehlivý systém železničního zabezpečovacího zařízení založeného na dvou FPGA obvodech** - Prostudujte stávající zrealizované HW zařízení. Prostudujte knihovnu prvků realizujících jednotlivé částí zabezpečovacího systému železnice. Pro toto zařízení napište firmware pro mikrořadič ​spolehlivý řídicí systém popsaný ​jazyce VHDL a to tak, aby docházelo k vzájemné kontrole obou FPGA obvodůŘídicí systém musí využívat samočinně testované obvody pro zajištění detekce poruchCelý systém musí umožňovat vložení poruchy. Návrh ověřte na příkladu zabezpečení železniční stanice. Systém ​případě detekce poruchy provede rekonfiguraci špatného ​FPGA obvoduBP, DP doba práce 2-4 semestry (volné) (50% SW, 50% HW)+  ​2. OSD displej v FPGA 
 +    ​Navrhněte a zrealizujte On-Screen displej ​obvodu ​FPGA pro video stream 
 +    * OSD displej by měl fungovat na formátech od 720p do 4K, jak progressive,​ tak interlaced 
 +    * Požadavkem je minimální využití zdrojů ​v FPGA.  
 +    * OSD se bude ovládat pomocí sběrnice AXI4-Lite.
  
-  * **Programovatelný stmívač světel pro domácí zvířata** - Navrhněte ​zařízení pro stmívání světel řízené mikrořadičem. Zařízení bude umožňovat stmívat 2 žárovky. Pro zadání průběhu stmívání napište aplikaci. Zařízení ​bude možné připojit k PC s pomocí USB rozhraníUpřesňující pokyny zadavatele (kanárek domácí: pí píp - pí - píp pí pí píp) BP - doba práce 2 semestry (volné) (50% SW, 50% HW)+  ​3. Konfigurovatelný filtr ethernetoveho rámce v FPGA 
 +    ​* Navrhněte ​a zrealizujte konfigurovatelný filtr ethernetového rámce ​umožňující filtrovat pakety podle zadaných parametrů (MAC, IP…) do více streamů, nebo jednoho streamu označeného identifikátorem 
 +    * Pro vstupní a výstupní interface ​bude použit AXI4 Stream pro zajištění kompatibility.
  
-  * **Univerzální řadič displejů** - Prozkoumejte existující řešení. ​Navrhněte a zrealizujte ​řadič displeje umožňující jednoduchou komunikaci se znakovým displejemKomunikace bude probíhat po sériové linceBP, - doba práce 2 semestry (volné) (60% HW, 40% SW )+  ​4. Zpracování I2S signálu s integraci do AXI Stream 
 +    ​* Navrhněte a zrealizujte ​konverzní modul v FPGA ze standartního interface I2S na interface AXI4 Stream a opač 
 +    * Modul by měl zvládat konverzi různé datové šířky audio samplu a multiplexování více audio streamu do jednoho I2S interfacu.
  
-  * **Zařízení pro přenos lokálních informací ​do internetu s pomocí existujících wifi routeru** - Prostudujte existující řešení úpravy wifi routerů za účelem modifikace a vylepšení jejich funkcí. Upravte linuxové jádro wifi routeru tak, aby bylo možné nahrávat a ukládat vlastní přeložený kód. K wifi routeru připojte jednoduché zařízení (RFID čtečkateploměr, apod)BP, DP - doba práce 2-4 semestry (volné) (90% SW, 10% HW)+  ​5. Efektivní (de)interlacing 12G SDI videa 
 +    ​Navrhněte a zrealizujte (de)interlacer 6G a 12G SDI videa do progressive formátu.  
 +    ​Modul může pracovat jak nad SDI formátemtak na Native video formátem.
  
-  ​* **Implementace USB rozhraní FPGA obvodem** - Seznamte se s problematikou USB rozhraní realizovaného FPGA obvodyProstudujte stávající ​způsoby realizace tohoto USB rozhraní. ​Navrhněte a realizujte funkční zařízení,​ které bude umožňovat přenos dat pomocí USB rozhraní realizované ​FPGA obvodem. Prostudujte existující řešení USB ovladačů. Na základě získaných informací vytvořte vlastní USB ovladač podporující navržené řešeníNa jednoduché aplikaci demonstrujte funkci vytvořeného řešení. Při návrhu se zaměřte na co možná nejjednodušší řešení, které bude umožňovat přenášet jen jednoduché informaceBP, DP - doba práce 2-4 semestry (volné) (50% HW, 50% SW )+  ​6Embedded audio konvertor na AXi4 Stream a zpět 
 +    * Navrhněte a zrealizujte konverzní modul v FPGA z SDI Embedded audia na interface AXI4 Stream a opačně.  
 +    * Modul by měl zvládat konverzi různé datové ​šířky audio samplu.
  
-  * **Síťový simulátor pro výukové účely na bázi prvků OS Linux a CISCO směrovačů (Network simulator based on Linux OS component and CISCO routers)** - Prostudujte existující řešení. Doplňte některé další síťové prvky do již existujícího simulátoruBP, DP - doba práce 2 semestry (volné) (100% SW)+  ​7. Nízkolatenční komprese v FPGA s využitím vlnové transformace 
 +    ​Navrhněte a zrealizujte nízkolatenční video kodek v FPGA založený ​na vlnkové transformaci.  
 +    * Latence kodeku by se měla pohybovat v jednotkách řádků videa.
  
-  * **Zařízení pro sledování objektu s nízkou spotřebou** ​Prostudujte existující řešení. Navrhněte vlastní zařízení umožňující pořízení a odeslání fotografie přes internet z okolí sledovaného objektu, který není připojen trvale k internetu ani k elektrické sítí. Důraz bude kladen na velmi nízkou spotřebu a co nejmenší pořizovací cenu. Sledovací zařízení bude umožňovat získání fotografie okolí s různou kvalitou. Pro výsledné zařízení navrhněte a nechte vyrobit plošný spoj. BP, DP - doba práce 2-4 semestry (volné) (10% HW, 90% SW)+===== Available projects SW external =====
  
-  ​* **Generátor samoopravných kódů: Hamming, RS, BCH, LDPC** - Prostudujte existující ​řešeníNavrhněte vlastní generátor samoopravných kódů. Zadávat bude možné libovolný generující polynom, popřípadě bude možné specifikovat vlastnosti kódu. Zvolte vhodný výstupní formát. BP, DP - doba práce 2-4 semestry ​(volné) (100% SW)+  ​1. Optimalizace Java aplikací pro horizontální škálování v moderní mikroservisní architektuře - spolupráce s průmyslem 
 +    ​využití AoT kompilace a minimalizace start-up času 
 +    * výběr vhodného JVM a analýza jeho výhod pro minimální náročnost na prostředky (např. GraalVM) 
 +    * využití vhodného frameworku a analýza jeho výhod (např. Quarkus) 
 +    * analýza ​možností využití pro serverless architekturu ​(např. Knative) 
 +    * využití komunikace přes gRPC 
 +    * podpora feature flagů pro release management 
 +    * vlastní zadání
  
-  * **Simulátor procesoru DOP** - Prostudujte existující ​řešeníV programovacím jazyku Java implementujte simulátor výukového procesoru DOP-v3Simulátor musí obsahovat editor a překladač zdrojových mikroprogramů (mikroassembler). Syntaxe zdrojového mikroprogramu musí být stejná jako u stávajícího simulátoru používaného pro výuku ​(SimDOP). Simulátor musí umožňovat krokování mikroprogramu po jednotlivých mikroinstrukcích i spouštění úseku k zadanému bodu zastavení. BP, DP doba práce 2-4 semestry ​(volné) (100% SW)+  ​2. Virtualizace a izolace aplikačních prostředí - spolupráce s průmyslem 
 +    ​využití OCI kontejnerů jako způsob doručování aplikací 
 +    ​analýza bezpečnostních chyb využívané technologie docker a možnosti jejich eliminace 
 +    ​porovnání s jinými přístupy (např. podman, buildah apod.
 +    * lokální orchestrace kontejnerů (docker-compose vs podman-compose) 
 +    * vnořování kontejnerů (napřdocker(-compose)-in-docker/​podman) 
 +    * vlastnosti container file systemů ​(např. OverlayFS) 
 +    * bezpečné ​(rootlessspuštění více kontejnerů uvnitř kontejneru
  
-  * **Generátor obvodů pro předmět ČAO** - Prozkoumejte existující ​ření pro kreslení elektrických obvodů. Vytvořte aplikaci, která bude umožňovat na základě zadaných parametrů vytvářet obvodyBPDP - doba práce 2-4 semestry ​(volné) (100% SW)+  ​3. Orchestrace kontejnerů v distribuovaném on-premise prostředí - spolupráce s průmyslem 
 +    ​porovnání vlastností využívaných pro jako container runtime (containerd vs docker vs CRI-O) 
 +    ​kubernetes vs jeho komerční distribuce (openshift, tanzu) 
 +    ​helm vs yaml manifesty (+ možnosti jejich úprav, např. kustomize) 
 +    ​realizace ingress load balancerů v lokálním on-premise prosředí 
 +    * vytvoření ​persistence v distribuovaném prostředí (např. CephRook, GlusterFS apod.) 
 +    * správa citlivých údajů ​(šifrování kubernetes secrets, PAM nástroje) 
 +    * vytvoření vlastního kubernetes operátora ​(vlastní zadání)
  
-  * **Procesory ​pro FPGA obvody ​(Soft processors for FPGA circuits)** - Prostudujte existující řešení procesorů popsaných v jazyce VHDL. Srovnejte jejich parametry. Na základě srovnání implementujte jeden typ procesoru do FPGA obvodu. Vyberte vhodný procesor s ohledem na dostupnost ​ekladačů jazyka C do ASM.  Zaměřte se zejména na hotové implementace procesoru AVR. Vytvořte knihovnu pro ovládání základních periferií. Pro přípravek firmy XILINX Spartan 3E vytvořte vzorovou aplikaci ​využívající všechny funkce vytvořené knihovnyBP, DP - doba práce 2-4 semestry ​(volné) (80% SW20% HW)+  ​4. Podpora vývoje a administrace prostředí prostřednictvím automatizace - spolupráce s průmyslem 
 +    ​analýza praktik DevOps přístupu, GitOps, SecOps, ChatOps, AIOps 
 +    ​analýza a představení SRE (Site reliability engineering) praktik 
 +    ​vytvoření a nasazení prostředí ​pro kompletní podporu životního cyklu aplikace naplňující znaky GitOps a IaaC (infrastructure as a code) 
 +    ​zabezpečení SVC repozitářů přes GPG klíč
 +    * podpora IaaC nástrojů (ansible, chef+puppet,​ cloud vendor proprietární nástroje, terraform) 
 +    * využití CI nástroje s dynamickým vytěžováním zdrojů dle aktuální zátěže (návrh tzvCI farmy) 
 +    * podpora deklarativního popisu činností ​(pipelines) 
 +    * porovnání známých CI nástrojů ​(jenkinsjenkins-x, gitlab, tekton, github actions) 
 +    * návrh procesů pro validaci aplikací před jejich nasazením prostřednictvím testů
  
-  * **Rychlé ethernetové jádro (High speed ethernet core)** - Prostudujte stávající řešení ethernetového jádra pracujícího na rychlostech 1G, 100M napsané v jazyce Verilog dostupné na stránce www.opencores.org a VHDL dostupné jako diplomová práce. Navrhněte a zrealizujte vlastní řešení 1G, 100M ethernetového jádra napsaného v jazyce VHDL a to tak, aby bylo možné využít pouze jednu hodinovou doménu. Pro jednotlivé částí i pro celé jádro proveďte verifikaci. Pro výsledné jádro napište testovací aplikaci demonstrující funkci jádra na všech realizovaných rychlostech. Pro realizaci použijte vývojovou desku Xilinx. (BP, DP 2-4 semestry)+  ​5. Projekty zadané externím zadavatelem 
 +    ​seznam zadavatelů níže
  
-  ​* **Modul pro správu projektů s VHDL soubory** - Prostudujte stávající řešení vývojového nástroje pro správu VHDL projektůDo již existujícího řešení implementujte modulkterý bude umožňovat přidat do souboru libovolný signál a přenést ho do vyšších úrovní zdrojových VHDL kódů. Vylepšete stávající řešení pro kontrolu konzistence VHDL souborů. V případě potřeby navrhněte nové vývojové prostředíOtestujte generátor VHDL kódu na základě zadaných parametrů uživatele. Jako programovací jazyk zvolte Javu (BP, DP 2-4 semestry, možnost práce více studentů najednou jako tým)+**Pokud máte o téma zájem, napište mi emailRezervace v systému bpm nemá žádnou váhu. Pokud se Vám nelíbí žádné z nabízených tématkoukněte do archívu dostupných zadání.**
  
-  * **Portace operačního systému android na vývojovou desku s procesorem ARM** - Prostudujte existující řešení. Analyzujte možnosti portace operačního systému pro vývojovou desku Raspberry pi a BeagleBone Black. Na jednu z těchto desek proveďte portaci a vytvořte knihovny pro obsluhu periferií. Pro vytvořenou knihovnu vytvořte demo aplikaci. (BP, DP 2-4 semestry) 
  
-  * **FPGA deska řízená procesorem ARM** - Navrhněte zařízení obsahující FPGA obvod a procesor ARM. Mezi těmito obvody vytvořte komunikační linku vhodnou pro řízení FPGA obvodu s pomoci procesoru ARM. Zvolte vhodnou desku obsahující FPGA obvod. Pro řízení FPGA obvodu použijte vývojový kit Raspberry Pi osazený obvodem ARM. Vytvořte knihovnu funkcí pro procesor ARM umožňující komunikaci s FPGA obvodem. Pro ověření funkce celého spojení vytvořte testovací aplikaci. (BP, DP 2-4 semestry)+  *[[project:​2018:​proj_archiv|Návrhy zadání dostupných projektů]]
  
-  * **Správa slovní zásoby pro os Android** - Vytvořte aplikaci pro správu slovní zásoby. Aplikace bude umožňovat import a export slovíček s pomocí textového souboru. Aplikace bude umožňovat zpracovávat velké objemy slov (10 - 20 tisíc). Důraz bude také kladen na rychlost zpracování slov, ovladatelnost a vhodné grafické prostředí. (BP, DP 2-4 semestry) 
  
-  * **Knihovna funkcí v jazyce C pro mikrořadič ARM 32 firmy ATMEL** (BP, DP 2-4 semestry)+===== Projekty zadané externím zadavatelem =====
  
-  * **Knihovna funkcí v jazyce C pro vývojový kit STM32F030** (BP, DP 2-4 semestry) +  * [[project:​eaton:​proj_eaton|EATON HW/SW]]
-  +
-  * **Knihovna funkcí v jazyce C pro vývojový kit STM32F4** (BP, DP 2-4 semestry)+
  
-  * **Knihovna funkcí v jazyce C pro vývojový kit STM32F303** (BP, DP 2-4 semestry) 
  
  
-  * **Jednoduchý TCP/IP stack pro malé procesory** (BP, DP 2-4 semestry) 
  
-  * **Slovník pro zkušení slovní zásoby využívající sdílené úložiště** (BP, DP 2-4 semestry) 
  
-  * **Vysoce spolehlivé zařízení pro automatické dávkování léku - Aplikace pro PC - C# nebo C++** (BP, DP 2-4 semestry) 
- 
-  * **Vysoce spolehlivé zařízení pro automatické dávkování léku - Firmware pro procesor** (BP, DP 2-4 semestry) 
- 
-  * **Vysoce spolehlivé zařízení pro automatické dávkování léku - Hardware** (BP, DP 2-4 semestry) 
- 
-  * **Ethernet 10G jádro** (BP, DP 2-4 semestry) 
- 
-  * **Ethernet řízený s pomocí SMS využívající ARM processor** (BP, DP 2-4 semestry) 
- 
-  * **Sledování zařízení s nízkou spotřebou** - Navrhněte a zrealizujte zařízení umožňující sledování spotřeby objektu s nízkou spotřebou. Zařízení bude hlídat stav baterie a v případě poklesu pod určitou hranici celé zařízení odpojí a to včetně samo sebe. Zároveň bude umožňovat sledovat průběh změny stavu a následně upravit vlastní spotřebu až do stavu, kdy se odpojí od zdroje úplně. Baterií bude možné dobíjet ze solárního panelu s regulátorem. Pro vámi navržené zařízení navrhněte a nechte vyrobit plošný spoj. (BP, DP 2-4 semestry) 
 ===== All defended works ===== ===== All defended works =====
  
-**BP a DP defended works on CTU in Prague FEL/FIT:** [[http://dip.felk.cvut.cz|BP a DP]]+**BP a DP defended works on CTU in Prague FEL/FIT:** [[https://dspace.cvut.cz|BP a DP]]
  
-===== All projects archives 2004 - 2014 =====+===== All projects archives 2004 - 2019 =====
  
 +  *[[project:​2022:​proj_2022|Realized projects 2022]]
 +  *[[project:​2021:​proj_2021|Realized projects 2021]]
 +  *[[project:​2020:​proj_2020|Realized projects 2020]]
 +  *[[project:​2019:​proj_2019|Realized projects 2019]]
 +  *[[project:​2018:​proj_2018|Realized projects 2018]]
 +  *[[project:​2017:​proj_2017|Realized projects 2017]]
 +  *[[project:​2016:​proj_2016|Realized projects 2016]]
   *[[project:​2015:​proj_2015|Realized projects 2015]]   *[[project:​2015:​proj_2015|Realized projects 2015]]
   *[[project:​2014:​proj_2014|Realized projects 2014]]   *[[project:​2014:​proj_2014|Realized projects 2014]]
project/proj_list.txt · Last modified: 2024/02/15 10:30 by xkubalik