Bachelor's Thesis

Communication interface for direct access to buses from a computer

Final Thesis 17.25 MB Appendix 1.23 MB

Author of thesis: Bc. Jakub Genčur

Acad. year: 2025/2026

Supervisor: Ing. Pavel Tomíček

Reviewer: Ing. Vladimír Levek, Ph.D.

Abstract:

The aim of the bachelor’s thesis is to develop a device capable of emulating various
peripherals, such as UART, SPI, and I2C, using drivers in Linux. Furthermore, this
thesis is intended to serve as a guide and reference for working with the USB bus between a computer and a microcontroller, as well as with drivers in Linux. This encompasses, in particular, the analysis and study of the theoretical aspects of the project, market research and definition of device requirements, hardware design and its implementation, firmware, driver, and test application development, and the testing of the project as a whole.

Keywords:

communication interface, convertor, emulator, bus, USB, driver, UART, SPI, I2C

Date of defence

16.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaEznamka

Grading

E

Process of defence

Student seznámil státní zkušební komisi s cíli a řešením závěrečné práce a zodpověděl otázky a připomínky oponenta a komise. Otázky komise k obhajobě: 1. Jaký je význam v práci uvedených rentgenových snímků? 2. Proč je deska velká, přesto že je tam mnoho nevyužitého místa? 3. Proč jste nereflektoval výhrady vedoucího práce? 4. Shrňte v rámci své práce části, které jsou funkční. 5. Co nebylo splněno? Komise měla výtku k jazykové stránce prezentace i práce.

Language of thesis

Czech

Faculty

Department

Study programme

Microelectronics and Technology (BPC-MET)

Composition of Committee

doc. Ing. Lukáš Fujcik, Ph.D. (předseda)
prof. Ing. Dalibor Biolek, CSc. (místopředseda)
doc. Ing. Radovan Novotný, Ph.D. (člen)
doc. Ing. Jan Pekárek, Ph.D. (člen)
Ing. Radim Hrdý, Ph.D. (člen)
Ing. Břetislav Mikel, Ph.D. (člen)

Supervisor’s report
Ing. Pavel Tomíček

Student se v předložené práci zabývá návrhem a konstrukcí komunikačního rozhraní umožňujícího přímý přístup z počítače přes USB k vybraným sběrnicím I2C, SPI a UART.

V teoretické části jsou popsány vybrané sběrnice, zejména USB, které je pro práci klíčové, a dále ovladače v počítači používané pro komunikaci po USB, resp. s periferiemi připojenými přes USB. Tento výklad je však velmi stručný a neobsahuje žádné obrázky ani tabulky. Výsledkem je strohý text, který je obtížně pochopitelný a bez předchozí znalosti problematiky prakticky neumožňuje orientaci.

Praktická část je rovněž zpracována velmi stručně a místy nepřehledně. Dochází k nejasnému prolínání převzatých informací a vlastního přínosu autora. Zcela nevhodně je do praktické části zařazen také průzkum trhu, který by měl být součástí teoretické části. Navíc není proveden správně, neboť obsahuje pouze integrované obvody namísto komplexních zařízení relevantních pro danou problematiku. Průzkum trhu je tak nadbytečný a nepřináší podstatné informace.

Vlastní praktická část, která začíná kapitolou 2.2, je popsána velmi povrchně a doplněna pouze třemi relevantními obrázky ve formě blokových diagramů. Navržené zařízení je z hlediska hardwaru velmi jednoduché. Primární deska plošných spojů obsahuje napájecí měniče a především výkonný MCU RA8M1, jehož zapojení je prakticky shodné s referenčním evaluačním kitem. Dále je na desce sekundární MCU ESP32 a několik USB-C konektorů, které však nebyly osazeny, a není tak možné ověřit jejich funkčnost.

Sekundární DPS měla obsahovat další obvody umožňující připojení různých sběrnic a volbu logických úrovní, nicméně z časových důvodů nebyly tyto části ani navrženy, ani realizovány. Výsledkem je pouze pasivní deska sloužící jako „redukce“ mezi konektorem a vývodem MCU. Obě DPS vznikaly ve značném časovém presu a obsahují řadu chyb, které sice nejsou kritické, ale u takto jednoduchého návrhu by se vyskytovat neměly.

Firmware mohu hodnotit jen na základě odevzdané práce a elektronických příloh, protože byl dokončován na poslední chvíli a nebylo možné jej v průběhu vývoje konzultovat ani ověřit funkčnost zařízení. V práci je firmware popsán velmi stručně a neodpovídá architektuře uvedené v blokovém diagramu na obrázku 2.2. Kód, jenž je v elektronické příloze lze pravděpodobně považovat za použitelný, avšak je značně neoptimální, zejména kvůli absenci využití DMA a nemožnosti, aby periferie (například teplotní čidla) odesílaly data do MCU bez zásahu počítače. Může tedy docházet ke ztrátě dat.

Podobně jako firmware nebyl před odevzdáním konzultován ani software, který je v textu rovněž popsán jen velmi okrajově. Student uvádí realizaci ovladačů a testovací aplikace, avšak přiložený kód obsahuje syntaktické chyby, což zpochybňuje jeho funkčnost.

V práci rovněž zcela chybí jakékoliv testování či měření. Je sice uvedeno, že bylo využito ESP32-C6 k emulaci zařízení na sběrnicích I2C, SPI a UART, avšak výsledky jsou prezentovány pouze formou tvrzení „Test prokázal funkčnost“. Chybí jakékoliv objektivní vyhodnocení, například měření propustnosti, latence jednotlivých sběrnic či demonstrace na reálném periferním zařízení.

Z formálního hlediska je práce dostatečná avšak obsahuje řadu nedostatků, které student neopravil, přestože byly v průběhu zpracování vytýkány (například absence obrázků). Po odborné stránce vykazuje práce významné nedostatky. Lze konstatovat, že důvodem těchto problémů bylo výrazné odkládání realizace ze strany studenta, kdy byl hardware dokončen až krátce před odevzdáním a na kód tedy nezbylo mnoho času. I přes uvedené nedostatky předpokládám, že zařízení alespoň částečně funguje a navrhuji hodnocení E – 50 bodů. Points proposed by supervisor: 50

Grade proposed by supervisor: E

Reviewer’s report
Ing. Vladimír Levek, Ph.D.

Předložená bakalářská práce se zabývá tvorbou komunikačního rozhraní mezi USB a vybranými sběrnicemi. Práce je poměrně čtivá, nejsou zde viditelná gramatická či formální pochybení, strukturální členění práce je také optimální, nicméně práce nepůsobí jako finální, spíše jako prvotina, která si zaslouží rozšíření a doplnění na základě konzultací s vedoucím.
Asi nejprve bych vytknul absenci obrázků, dílčích schémat, doprovodných vizualizací či tabulek se specifikacemi. V celé rešeršní části bakalářské práce není přítomen ani jeden obrázek, přitom se v textu popisují protokoly, datové rámce, obvodové bloky. Toto jsou témata, která si přímo říkají o doprovodný obrázek. Ten spolu s informací v textu navodí ucelený a komplexní dojem. Po kapitole diskutující teoretickou průpravu nezbytnou pro návrh zařízení, následuje kapitola pod názvem „Systémový návrh zařízení“, která opět obsahuje rešeršní části, kde jsou popisovány (lakonicky a opět bez vhodné vizualizace) jednotlivé obvody řešící předloženou problematiku. Průzkum stávajícího řešení patří do teoretické průpravy, nikoliv do návrhu samotného. Zde by se měl student na výsledky rešerše pouze dovolávat. Obecně vzato, velká část kapitoly „Návrh“ spadá ještě do oblasti obecné teorie. Uvědomuje si to i autor tím, že hierarchicky člení kapitolu 2.3 „Systémový návrh“ jako podkapitolu 2 „Systémový návrh zařízení“. Takže až od uvedené kapitoly 2.3, lze hledat vlastní řešení a invenci autora. Kapitola 3 popisuje detailní návrh HW, nicméně výraz „detailní“ v názvu kapitoly nelze brát v jeho pravém významu. Kapitola pěkně strukturálně popisuje jednotlivé bloky zařízení, ovšem bez prezentace dílčího schématu, s absencí jakýchkoliv výpočtů, bez specifikace požadovaných parametrů. Jako byla vizuální část popisu zapovězena. Pro literaturu toho technického charakteru je vysoce přirozené využití tabulek, grafů, schémat, vzorců a diagramů při popisu jejich činnosti či návrhu. Zde je předložena jakási beletrie, kdy je čtenář informován zřejmě o všech krocích návrhu, ovšem pouze prostřednictvím strukturovaného textu. Jediné obrázky (v enormním množství 5), které jsou v této části předloženy, je kolekce snímků z rentgenu částí DPS při odlaďování chyb v návrhu. Přitom tato informace není pro výsledný návrh nezbytná.
Dále nejsem přesvědčen o kompletním dokončení návrhu, neboť úplně postrádám kapitolu, ve které autor předkládá kolekci naměřených výsledků, které je schopen diskutovat a porovnávat s předpokládanými parametry systému. V textu se například popisuje užití primárního a sekundárního mikrokontroléru. Jejich odůvodnění, činnost zůstává skryta. Ve schématu v příloze je popisován pouze mikrokontrolér a bez uvedení označení, čísla a typu. Na obrázku realizace je modul ESP neosazen, opět bez udání důvodu. Po přečtení textu není zřejmý stupeň finalizace práce, ani funkcionalita systému. Kapitoly týkající se návrhu pouze předkládají výčet bloků, součástek, knihoven a dalších faktografických údajů, ale nejsme sto se dozvědět skutečný stav práce a popis funkcionality.
Pokud by student tuto práci doprovodil dostatečným množstvím obrázků – ať už popisovaných technologií, popřípadě dílčích částí schémat, která právě popisuje, dále, pokud by uvedl vzorce výpočtů nezbytných pro návrh systému a pokud by celou práci završil výsledky měření jednotlivých bloků a činností, ve kterých by prokazoval legitimitu návrhu, hodnotil bych práci mnohem příznivěji. Topics for thesis defence:
  1. Ve schématu v příloze máte quartz krystal s typovým označením. Je připojen k součástce, která není označena. Vzhledem ke kapacitě krystalu, mi připadá hodnota kapacitorů malá, netvrdím že špatná. Diskutujte to.
Points proposed by reviewer: 68

Grade proposed by reviewer: D

Responsibility: Mgr. et Mgr. Hana Odstrčilová