Innehållsförteckning:

Design av SPI Master i VHDL: 6 steg
Design av SPI Master i VHDL: 6 steg

Video: Design av SPI Master i VHDL: 6 steg

Video: Design av SPI Master i VHDL: 6 steg
Video: 3. SPI-интерфейс (Master) на VHDL 2024, Juli
Anonim
Design av SPI Master i VHDL
Design av SPI Master i VHDL

I det här instruerbara kommer vi att designa en SPI Bus Master från grunden i VHDL.

Steg 1: Översikt över SPI

  • SPI är en synkron seriell buss
  • Dess popularitet och enkelhet gjorde den till en de facto standard för seriell kommunikation
  • Buss i full duplex
  • Enkelt protokoll och bland de snabbaste seriella bussen

Steg 2: Designspecifikationer

Det här är specifikationerna för SPI Master vi ska designa:

  • Stöder alla fyra driftsätt; dynamiskt konfigurerbar
  • Klocka möjliggör kontroll för energibesparing
  • Statiskt konfigurerbar ordlängd och hastighet
  • Enstaka avbrott för både överföring och mottagning

Steg 3: Börja

Först och främst bör vår IP ha två gränssnitt. Det ena är ett seriellt gränssnitt och det andra är ett parallellt gränssnitt. Seriellt gränssnitt består av de-facto standardsignaler från SPI: MOSI, MISO, SS, SCLK.

MOSI kallas ibland SDO och MISO kallas ibland SDI.

Seriellt gränssnitt används för att kommunicera med externa kringutrustning, dvs SPI -slavar.

Parallellt gränssnitt används för att kommunicera med vår värd, dvs en mikrokontroller eller mikroprocessor, som faktiskt berättar för mästaren vilken data som måste överföras i serie och mottas genom serielinjerna. dvs. Alla databussar tillhör ett parallellt gränssnitt.

Vi har en global klocka som driver intern SPI -logik, liksom SCLK, som vi genererar internt.

Vi har också några styrsignaler som skrivaktivering, klockaktivering. Och avbrott och andra statussignaler.

Eftersom vi måste hantera komplexa kontrollförhållanden är det enklare att utforma sådana seriella kommunikations -IP: er som en FSM. Vi kommer också att utforma SPI master som en FSM. FSM kommer att drivas av en annan intern klocka som är två gånger SCLK. Den interna klockan genereras med hjälp av synkronräknare från den globala klockan.

Alla styrsignaler som korsar klockdomäner har synkroniserare för att vara på den säkrare sidan.

Steg 4: RTL -vy över SPI Master Core och Simulation Waveforms

RTL -vy över SPI Master Core och simuleringsvågformer
RTL -vy över SPI Master Core och simuleringsvågformer
RTL -vy över SPI Master Core och simuleringsvågformer
RTL -vy över SPI Master Core och simuleringsvågformer

Det är en ren RTL -design utan några dedikerade FPGA -IP: er. Därför är det en helt bärbar kod till alla FPGA.

Rekommenderad: