Sommario:
- Passaggio 1: panoramica di SPI
- Passaggio 2: specifiche di progettazione
- Passaggio 3: iniziare
- Passaggio 4: visualizzazione RTL del core principale SPI e delle forme d'onda di simulazione
Video: Progettazione del Master SPI in VHDL: 6 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
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
È un design RTL nudo senza IP FPGA dedicati utilizzati. Quindi è un codice completamente portabile su qualsiasi FPGA.
Consigliato:
Progettazione di un semplice controller di cache associativa a quattro vie in VHDL: 4 passaggi
Progettazione di un semplice controller di cache associativo a quattro vie in VHDL: nel mio precedente tutorial, abbiamo visto come progettare un semplice controller di cache a mappatura diretta. Questa volta facciamo un passo avanti. Progetteremo un semplice controller di cache associativo a quattro vie. vantaggio? Meno miss rate, ma a scapito delle prestazioni
Progettazione di un controller di interrupt programmabile in VHDL: 4 passaggi
Progettazione di un controller di interrupt programmabile in VHDL: sono sopraffatto dal tipo di risposte che ricevo in questo blog. Grazie ragazzi per aver visitato il mio blog e avermi motivato a condividere le mie conoscenze con voi. Questa volta presenterò il design di un altro modulo interessante che vediamo in tutti i SOC: Interrupt C
Progettazione di un semplice controller di cache in VHDL: 4 passaggi
Progettazione di un controller di cache semplice in VHDL: Sto scrivendo questo istruibile, perché ho trovato un po' difficile ottenere del codice VHDL di riferimento per imparare e iniziare a progettare un controller di cache. Quindi ho progettato da zero un controller della cache e l'ho testato con successo su FPGA. ho p
Progettazione del Master I2C in VHDL: 5 passaggi
Progettazione di I2C Master in VHDL: in questo tutorial, viene discussa la progettazione di un semplice master I2C in VHDL. NOTA: fare clic su ciascuna immagine per visualizzare l'immagine completa
Progettazione di un semplice controller VGA in VHDL e Verilog: 5 passaggi
Progettazione di un semplice controller VGA in VHDL e Verilog: in questo tutorial, progetteremo un semplice controller VGA in RTL. VGA Controller è il circuito digitale progettato per pilotare i display VGA. Legge dal Frame Buffer (VGA Memory) che rappresenta il frame da visualizzare e genera neces