Sommario:

Progettazione del Master SPI in VHDL: 6 passaggi
Progettazione del Master SPI in VHDL: 6 passaggi

Video: Progettazione del Master SPI in VHDL: 6 passaggi

Video: Progettazione del Master SPI in VHDL: 6 passaggi
Video: Tesi di laurea online - figuracce 1 2024, Dicembre
Anonim
Progettazione del Master SPI in VHDL
Progettazione del Master SPI in VHDL

In questo tutorial, progetteremo un SPI Bus Master da zero in VHDL.

Passaggio 1: panoramica di SPI

  • SPI è un bus seriale sincrono
  • La sua popolarità e semplicità lo hanno reso uno standard de facto nella comunicazione seriale
  • Bus full duplex
  • Protocollo semplice e tra i bus seriali più veloci

Passaggio 2: specifiche di progettazione

Queste sono le specifiche del Master SPI che progetteremo:

  • Supporta tutte e quattro le modalità di funzionamento; configurabile dinamicamente
  • Controllo di abilitazione dell'orologio per il risparmio energetico
  • Lunghezza e velocità delle parole configurabili staticamente
  • Interruzione singola sia per la trasmissione che per la ricezione

Passaggio 3: iniziare

Prima di tutto, il nostro IP dovrebbe avere due interfacce. Uno è l'interfaccia seriale e l'altro è l'interfaccia parallela. L'interfaccia seriale è costituita dai segnali standard di fatto di SPI: MOSI, MISO, SS, SCLK.

MOSI è talvolta chiamato SDO e MISO è talvolta chiamato SDI.

L'interfaccia seriale viene utilizzata per comunicare con periferiche esterne, ad esempio slave SPI.

L'interfaccia parallela viene utilizzata per comunicare con il nostro host, ad esempio un microcontrollore o un microprocessore, che in realtà dice al Master quali dati devono essere trasmessi e ricevuti in serie attraverso le linee seriali. vale a dire, tutti i bus dati appartengono all'interfaccia parallela.

Abbiamo un orologio globale che guida la logica SPI interna, così come SCLK, che generiamo internamente.

Abbiamo anche alcuni segnali di controllo come l'abilitazione della scrittura, l'abilitazione del clock. E interrupt e altri segnali di stato.

Poiché abbiamo a che fare con condizioni di controllo complesse, è più semplice progettare IP di comunicazione seriale come un FSM. Progetteremo anche il master SPI come FSM. L'FSM sarà pilotato da un altro orologio interno che è due volte SCLK. Quell'orologio interno viene generato utilizzando contatori sincroni dall'orologio globale.

Tutti i segnali di controllo che attraversano i domini di clock hanno sincronizzatori per essere più sicuri.

Passaggio 4: visualizzazione RTL del core principale SPI e delle forme d'onda di simulazione

Vista RTL del nucleo principale SPI e delle forme d'onda di simulazione
Vista RTL del nucleo principale SPI e delle forme d'onda di simulazione
Vista RTL del nucleo principale SPI e delle forme d'onda di simulazione
Vista RTL del nucleo principale SPI e delle forme d'onda di simulazione

È un design RTL nudo senza IP FPGA dedicati utilizzati. Quindi è un codice completamente portabile su qualsiasi FPGA.

Consigliato: