Obsah:
- Krok 1: Prehľad SPI
- Krok 2: Špecifikácia dizajnu
- Krok 3: Začíname
- Krok 4: RTL pohľad na SPI hlavné jadro a simulačné krivky
Video: Návrh SPI Master vo VHDL: 6 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:58
V tomto návode sa chystáme navrhnúť SPI Bus Master od začiatku vo VHDL.
Krok 1: Prehľad SPI
- SPI je synchrónna sériová zbernica
- Jeho popularita a jednoduchosť z neho urobili de facto štandard v sériovej komunikácii
- Plne duplexný autobus
- Jednoduchý protokol a patrí medzi najrýchlejšie sériové zbernice
Krok 2: Špecifikácia dizajnu
Toto sú špecifikácie SPI Master, ktoré navrhneme:
- Podporuje všetky štyri režimy prevádzky; dynamicky konfigurovateľné
- Hodiny umožňujú ovládanie pre úsporu energie
- Štatisticky konfigurovateľná dĺžka a rýchlosť slova
- Jednoduché prerušenie prenosu aj príjmu
Krok 3: Začíname
V prvom rade by naša IP mala mať dve rozhrania. Jeden je sériové a druhý je paralelný. Sériové rozhranie pozostáva z de facto štandardných signálov SPI: MOSI, MISO, SS, SCLK.
MOSI sa niekedy nazýva SDO a MISO sa niekedy nazýva SDI.
Sériové rozhranie sa používa na komunikáciu s externými perifériami, napr. SPI slave.
Na komunikáciu s naším hostiteľom, tj. Mikrokontrolérom alebo mikroprocesorom, sa používa paralelné rozhranie, ktoré v skutočnosti informuje majstra, aké údaje sa majú sériovo prenášať a prijímať prostredníctvom sériových liniek. tj. Všetky dátové zbernice patria do paralelného rozhrania.
Máme globálne hodiny, ktoré riadia internú logiku SPI, ako aj SCLK, ktoré generujeme interne.
Máme tiež niekoľko riadiacich signálov, ako je povolenie zápisu, zapnutie hodín. A prerušenie a ďalšie stavové signály.
Pretože sa musíme vysporiadať s komplexnými podmienkami riadenia, je jednoduchšie navrhnúť také sériové komunikačné IP ako FSM. SPI master navrhneme aj ako FSM. FSM bude poháňaný inými vnútornými hodinami, ktoré sú dvakrát SCLK. Tieto vnútorné hodiny sa generujú pomocou synchrónnych počítadiel z globálnych hodín.
Všetky riadiace signály, ktoré prechádzajú hodinovými doménami, majú synchronizátory, aby boli na bezpečnejšej strane.
Krok 4: RTL pohľad na SPI hlavné jadro a simulačné krivky
Jedná sa o holý RTL dizajn bez použitia vyhradených FPGA IP. Preto je to plne prenosný kód do akéhokoľvek FPGA.
Odporúča:
Návrh jednoduchého štvorsmerového radiča asociatívnej vyrovnávacej pamäte vo VHDL: 4 kroky
Návrh jednoduchého štvorsmerového radiča asociatívnej vyrovnávacej pamäte vo VHDL: V mojom predchádzajúcom návode sme videli, ako navrhnúť jednoduchý radič vyrovnávacej pamäte s priamym mapovaním. Tentokrát sa posunieme o krok vpred. Navrhneme jednoduchý štvorsmerový radič asociatívnej vyrovnávacej pamäte. Výhoda? Menšia miera zmeškania, ale za cenu perfo
Návrh programovateľného regulátora prerušenia vo VHDL: 4 kroky
Dizajn programovateľného prerušovača vo VHDL: Som ohromený typom odpovedí, ktoré dostávam v tomto blogu. Ďakujem, chlapci, že ste navštívili môj blog a motivovali ma, aby som sa s vami podelil o svoje znalosti. Dnes predstavím návrh ďalšieho zaujímavého modulu, ktorý vidíme vo všetkých SOC - Interrupt C
Návrh jednoduchého radiča vyrovnávacej pamäte vo VHDL: 4 kroky
Návrh jednoduchého ovládača vyrovnávacej pamäte vo VHDL: píšem tento návod, pretože bolo pre mňa trochu ťažké získať nejaký referenčný kód VHDL, aby som sa ho naučil a začal navrhovať radič vyrovnávacej pamäte. A tak som sám navrhol radič vyrovnávacej pamäte od začiatku a úspešne som ho otestoval na FPGA. Mám p
Návrh I2C Master vo VHDL: 5 krokov
Dizajn I2C Master vo VHDL: V tomto návode sa diskutuje o návrhu jednoduchého I2C predlohy vo VHDL. UPOZORNENIE: kliknutím na každý obrázok zobrazíte celý obrázok
Návrh UART vo VHDL: 5 krokov
Dizajn UART vo VHDL: UART je skratka pre univerzálny vysielač asynchrónneho prijímača. Je to najpopulárnejší a najjednoduchší sériový komunikačný protokol. V tomto návode sa naučíte, ako navrhnúť modul UART vo VHDL