Master's Thesis

Configurable SPI device

Final Thesis 14.01 MB Appendix 82.23 kB

Author of thesis: Ing. Pavol Ženčár

Acad. year: 2020/2021

Supervisor: doc. Ing. Jiří Krejsa, Ph.D.

Reviewer: doc. Ing. Stanislav Věchet, Ph.D.

Abstract:

This thesis deals with the development and testing of a configurable SPI slave device, the main purpose of which is to test real SPI master devices. The device is implemented using STM32 microcontroller on NUCLEO development board. The basic functionalities of the device include measuring frequency of the SPI transmission, stream mode, which allows the user to accurately monitor what the connected master device is transmitting over the SPI interface, and LUT mode, which allows the user to configure the device to respond with preset responses according to the current incoming message. More advanced functionality consists of an EEPROM emulator mode. In this mode, the device behaves as a virtual replacement of a real EEPROM device. The device is connected to a personal computer using a serial port and it is possible to configure the device using a python programming interface. The device also reports every activity on the SPI interface to this python programming interface.

Keywords:

SPI, microcontroler, EEPROM memory, DMA

Date of defence

18.06.2021

Result of the defence

Defended (thesis was successfully defended)

znamkaAznamka

Grading

A

Process of defence

Student ve vymezeném čase prezentoval svou diplomovou práci. Poté byly předneseny posudky a student odpověděl na otázky oponenta. Následně proběhla diskuze se členy komise vztahující se k diplomové práci, při které byly položeny následující dotazy: Jaká je maximální frekvence SPI u vašeho zařízení? (zodpovezeno) Je možné emulovat také slave SPI zařízení s vnitřním stavem? (zodpovězeno)

Language of thesis

English

Faculty

Department

Study programme

Applied Sciences in Engineering (M2A-P)

Field of study

Mechatronics (M-MET)

Composition of Committee

RNDr. Vladimír Opluštil (předseda)
doc. Ing. Robert Grepl, Ph.D. (místopředseda)
Ing. Dalibor Červinka, Ph.D. (člen)
doc. Ing. Jiří Krejsa, Ph.D. (člen)
doc. Ing. Čestmír Ondrůšek, CSc. (člen)
mjr. Ing. Václav Křivánek, Ph.D. (člen)
Ing. Bohumil Král, CSc. (člen)
Ing. Josef Ferda (člen)

Supervisor’s report
doc. Ing. Jiří Krejsa, Ph.D.

Pan Pavol Ženčár se ve své práci věnoval tvorbě simulátoru podřízeného SPI zařízení především pro účely testování při vývoji embedded zařízení. Jedná se o úlohu, která vyžaduje hlubokou znalost nízkoúrovňového programování. Pan Ženčár pracoval samostatně a iniciativně a podařilo se mu splnit a částečně překročit všechny požadované cíle zadání. Poněkud delší rozsah textu práce není dle mého názoru na škodu především pro čtenáře, který by uvedený simulátor používal v reálné úloze testování, zestručnění textu by vedlo k přílišnému zhutnění předávaných informací. Práci hodnotím jako výbornou, tedy známkou A.
Evaluation criteria Grade
Splnění požadavků a cílů zadání A
Postup a rozsah řešení, adekvátnost použitých metod A
Vlastní přínos a originalita A
Schopnost interpretovat dosažené výsledky a vyvozovat z nich závěry A
Využitelnost výsledků v praxi nebo teorii A
Logické uspořádání práce a formální náležitosti A
Grafická, stylistická úprava a pravopis B
Práce s literaturou včetně citací A
Samostatnost studenta při zpracování tématu A

Grade proposed by supervisor: A

Předložená práce s názvem Konfigurovatelné SPI zařízení se zabývá tématem testování v oblasti návrhu „embedded“ zařízení, konkrétně je věnována testování zařízení využívajících ke vzájemné komunikaci SPI sběrnici.

Práce je velmi obsáhlá a na 122 stranách je rozdělena do 9ti kapitol, kde je vyčerpávajícím způsobem provedena rešerše existujících zařízení s obdobnou funkcionalitou, popis metodologie návrhu konfigurovatelného SPI zařízení a ověření vlastní funkcionality.

Každé téma v kapitole je zpracováno vyčerpávajícím způsobem zejména z hlediska popisu HW specifikací ať už vybraných komponent či detailů SPI komunikace mezi vybranými prvky.
Přílohy obsahují zdrojové kódy pro mikrořadič STM i experimentální skripty pro jazyk Python.

I přesto, že je práce velmi rozsáhlá a obsažená témata zpracovaná velmi podrobně bych očekával, zejména pro méně zkušeného čtenáře či studenty kteří by mohli na tuto práci navázat, zařazení všeobecněji zaměřené kapitoly, která by uvedla čtenáře do nastavení systému jako celku z hlediska tzv. „prvního spuštění“, protože zejména popis vytvořeného API pro prostředí Python by zasloužil větší pozornost.

Diplomová práce je celkově na vynikající úrovni, stanovené cíle byly splněny v požadovaném rozsahu a práci hodnotím známkou výborně A.
Evaluation criteria Grade
Splnění požadavků a cílů zadání A
Postup a rozsah řešení, adekvátnost použitých metod A
Vlastní přínos a originalita A
Schopnost interpretovat dosaž. výsledky a vyvozovat z nich závěry A
Využitelnost výsledků v praxi nebo teorii A
Logické uspořádání práce a formální náležitosti A
Grafická, stylistická úprava a pravopis A
Práce s literaturou včetně citací A
Topics for thesis defence:
  1. Popište postup oživení navrženého zařízení pro tzv. „první spuštění“, z hlediska nutného HW, kabeláže a potřebných SW vývojových nástrojů.
  2. Byla by pro realizaci komplexnějšího zařízení zapotřebí nějaká architekturní změna?
  3. Jak byste realizoval implementaci komplexnějšího zařízení (např. akcelerometr)?
  4. Co vnímáte jako největší slabinu zvoleného řešení?

Grade proposed by reviewer: A

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