Obsah:

Návrh SPI Master vo VHDL: 6 krokov
Návrh SPI Master vo VHDL: 6 krokov

Video: Návrh SPI Master vo VHDL: 6 krokov

Video: Návrh SPI Master vo VHDL: 6 krokov
Video: Программирование МК STM32. Урок 175. CMSIS. STM32F1. SPI. Соединяем два контроллера 2024, November
Anonim
Návrh SPI Master vo VHDL
Návrh SPI Master vo VHDL

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

RTL pohľad na SPI hlavné jadro a simulačné krivky
RTL pohľad na SPI hlavné jadro a simulačné krivky
RTL pohľad na SPI hlavné jadro a simulačné krivky
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: