Obsah:

Design SPI Master ve VHDL: 6 kroků
Design SPI Master ve VHDL: 6 kroků

Video: Design SPI Master ve VHDL: 6 kroků

Video: Design SPI Master ve VHDL: 6 kroků
Video: Design in Verilog - SPI 2024, Červenec
Anonim
Návrh SPI Master ve VHDL
Návrh SPI Master ve VHDL

V tomto pokynu se chystáme navrhnout SPI Bus Master od nuly ve VHDL.

Krok 1: Přehled SPI

  • SPI je synchronní sériová sběrnice
  • Jeho popularita a jednoduchost z něj dělaly de facto standard v sériové komunikaci
  • Plně duplexní autobus
  • Jednoduchý protokol a patří mezi nejrychlejší sériovou sběrnici

Krok 2: Specifikace návrhu

Toto jsou specifikace SPI Master, které navrhneme:

  • Podporuje všechny čtyři režimy provozu; dynamicky konfigurovatelné
  • Hodiny umožňují ovládání pro úsporu energie
  • Staticky konfigurovatelná délka a rychlost slova
  • Jedno přerušení pro vysílání i příjem

Krok 3: Rozjezd

Za prvé, naše IP by měla mít dvě rozhraní. Jedním z nich je sériové rozhraní a druhým je paralelní rozhraní. Sériové rozhraní se skládá z de facto standardních signálů SPI: MOSI, MISO, SS, SCLK.

MOSI se někdy nazývá SDO a MISO se někdy nazývá SDI.

Sériové rozhraní se používá ke komunikaci s externími periferiemi, tj. SPI slave.

Paralelní rozhraní se používá ke komunikaci s naším hostitelem, tj. Mikrokontrolérem nebo mikroprocesorem, který ve skutečnosti říká Masterovi, jaká data musí být sériově přenášena a přijímána prostřednictvím sériových linek. tj. všechny datové sběrnice patří do paralelního rozhraní.

Máme globální hodiny, které řídí interní logiku SPI, stejně jako SCLK, které generujeme interně.

Máme také některé řídicí signály, jako je povolení zápisu, povolení hodin. A přerušení a další stavové signály.

Protože se musíme vypořádat se složitými podmínkami řízení, je jednodušší navrhnout takové IP sériové komunikace jako FSM. SPI master navrhneme také jako FSM. FSM bude poháněno jinými interními hodinami, což je dvakrát SCLK. Že vnitřní hodiny jsou generovány pomocí synchronních čítačů z globálních hodin.

Všechny řídicí signály, které procházejí hodinovými doménami, mají synchronizátory, aby byly na bezpečnější straně.

Krok 4: RTL pohled na SPI hlavní jádro a průběhy simulace

RTL pohled na SPI hlavní jádro a simulační průběhy
RTL pohled na SPI hlavní jádro a simulační průběhy
RTL pohled na SPI hlavní jádro a simulační průběhy
RTL pohled na SPI hlavní jádro a simulační průběhy

Jedná se o čistý RTL design bez použití vyhrazených IP adres FPGA. Jedná se tedy o plně přenosný kód do jakéhokoli FPGA.

Doporučuje: