Indholdsfortegnelse:

Design af SPI Master i VHDL: 6 trin
Design af SPI Master i VHDL: 6 trin

Video: Design af SPI Master i VHDL: 6 trin

Video: Design af SPI Master i VHDL: 6 trin
Video: Тест каравана в -25° . Ночёвка зимой. Как не замёрзнуть? 2024, Juli
Anonim
Design af SPI Master i VHDL
Design af SPI Master i VHDL

I denne instruktive vil vi designe en SPI Bus Master fra bunden i VHDL.

Trin 1: Oversigt over SPI

  • SPI er en synkron seriel bus
  • Dens popularitet og enkelhed gjorde den til en de facto standard inden for seriel kommunikation
  • Fuld dupleks bus
  • Enkel protokol og blandt de hurtigste serielle bus

Trin 2: Designspecifikationer

Disse er specifikationerne for SPI Master, vi skal designe:

  • Understøtter alle fire driftsformer; dynamisk konfigurerbar
  • Ur aktiverer kontrol for strømbesparelse
  • Statisk konfigurerbar ordlængde og -hastighed
  • Enkelt afbrydelse til både transmission og modtagelse

Trin 3: Start fra

Først og fremmest skal vores IP have to grænseflader. Den ene er seriel grænseflade, og den anden er parallel grænseflade. Serielt interface består af de-facto standardsignaler fra SPI: MOSI, MISO, SS, SCLK.

MOSI kaldes undertiden SDO, og MISO kaldes undertiden SDI.

Seriel grænseflade bruges til at kommunikere med eksterne perifere enheder, dvs. SPI -slaver.

Parallel grænseflade bruges til at kommunikere med vores vært, dvs. en mikrokontroller eller mikroprocessor, som faktisk fortæller masteren, hvilke data der skal sendes serielt og modtages gennem serielinjerne. dvs. Alle databusser tilhører parallel interface.

Vi har et globalt ur, der driver intern SPI -logik, samt SCLK, som vi genererer internt.

Vi har også nogle kontrolsignaler som skrive -aktivering, uraktivering. Og afbrydelse og andre statussignaler.

Da vi skal håndtere komplekse kontrolbetingelser, er det enklere at designe sådanne serielle kommunikations -IP'er som en FSM. Vi vil også designe SPI master som en FSM. FSM vil blive drevet af et andet internt ur, som er to gange SCLK. Det interne ur genereres ved hjælp af synkrone tællere fra det globale ur.

Alle styresignaler, der krydser ur -domæner, har synkroniseringer til at være på den sikrere side.

Trin 4: RTL -visning af SPI Master Core og simuleringsbølgeformer

RTL -visning af SPI Master Core og simuleringsbølgeformer
RTL -visning af SPI Master Core og simuleringsbølgeformer
RTL -visning af SPI Master Core og simuleringsbølgeformer
RTL -visning af SPI Master Core og simuleringsbølgeformer

Det er et rent RTL -design uden brug af dedikerede FPGA -IP'er. Derfor er det en fuldt bærbar kode til enhver FPGA.

Anbefalede: