Intel Mailbox Client cù Avalon Streaming Interface FPGA IP User Guide
Intel Mailbox Client cù Avalon Streaming Interface FPGA IP

Mailbox Client cù Avalon® Streaming Interface Intel FPGA IP Overview

U Mailbox Client cù l'interfaccia di streaming Avalon® Intel® FPGA IP (Mailbox Client with Avalon ST Client IP) furnisce un canale di cumunicazione trà a vostra logica persunalizata è u gestore di dispositivi sicuru (SDM). Pudete aduprà u Mailbox Client cù Avalon ST IP per mandà pacchetti di cumandamenti è riceve pacchetti di risposta da i moduli periferici SDM. U Mailbox Client cù Avalon ST IP definisce e funzioni chì u SDM eseguisce.

A vostra logica persunalizata pò aduprà stu canali di cumunicazione per riceve infurmazioni è accede à a memoria flash da i seguenti moduli periferichi:

  • U Chip ID
  • U sensoru di temperatura
  • U Voltage Sensore
  • Memoria flash Quad Serial Peripheral Interface (SPI).

Nota: In tutta sta guida d'utilizatore, u terminu Avalon ST abbrevia l'interfaccia di streaming Avalon o IP.

Figura 1. Mailbox Client cù Avalon ST IP System Design
Mailbox Client cù Avalon ST IP System Design

A figura seguente mostra una applicazione in quale u Mailbox Client cù Avalon ST IP leghje u Chip ID.

Figura 2. Mailbox Client cù Avalon ST IP Reads Chip ID
Mailbox Client cù Avalon ST IP Reads Chip ID

Supportu Famiglia Dispositivu

I seguenti lista di e definizioni di u nivellu di supportu di u dispositivu per l'IP Intel FPGA:

  • Supportu avanzatu - L'IP hè dispunibule per a simulazione è a compilazione per questa famiglia di dispositivi. I mudelli di timing includenu stimi iniziali di l'ingegneria di ritardi basati nantu à l'infurmazioni prima di post-layout. I mudelli di timing sò sughjetti à cambià cum'è a prova di silicu mellora a correlazione trà u siliciu attuale è i mudelli di timing. Pudete aduprà sta IP per l'architettura di u sistema è studii di l'utilizazione di risorse, simulazione, pin out, valutazioni di latenza di u sistema, valutazioni di basa di tempu (budget di pipeline), è strategia di trasferimentu I / O (larghezza di u percorsu di dati, prufundità di burst, cummerciu di standard I / O). offs).
  • Supportu preliminariu - L'IP hè verificatu cù mudelli di timing preliminari per questa famiglia di dispositivi. L'IP risponde à tutti i requisiti funziunali, ma puderia ancu esse sottumessi à l'analisi di u timing per a famiglia di u dispusitivu. Pò esse usatu in disinni di produzzione cun prudenza.
  • Support finale - L'IP hè verificatu cù mudelli di timing finali per questa famiglia di dispositivi. L'IP risponde à tutti i requisiti funziunali è di timing per a famiglia di u dispositivu è pò esse usatu in disinni di produzzione.

Tabella 1. Supportu Famiglia Dispositivu

Famiglia di Dispositivi Supportu
Intel Agilex™ Avanzate

Nota: Ùn pudete micca simule u Mailbox Client cù Avalon Streaming Interface Intel FPGA IP perchè l'IP riceve e risposte da u SDM. Per cunvalidà sta IP, Intel ricumanda di fà una valutazione di hardware.

Information Related
Mailbox Client cù Avalon Streaming Interface Intel FPGA IP Release Notes

Parametri

Nome di u paràmetru Valore Descrizzione
Habilita l'interfaccia di statutu On Off Quandu attivate sta interfaccia, u Mailbox Client cù l'interfaccia di streaming Avalon Intel FPGA IP include u signale command_status_invalid. Quandu command_status_invalid affirmeghja, duvete resettate l'IP.

Interfacce
A figura seguente illustra u Client Mailbox cù l'interfaccia di streaming Avalon Interfacce IP Intel FPGA:

Figura 3. Mailbox Client cù Avalon Streaming Interface Interfacce IP Intel FPGA
Mailbox Client cù Avalon Streaming Interface Interfacce IP Intel FPGA

Per più infurmazione nantu à l'interfaccia di streaming Avalon, fate riferimentu à l'Avalon Interface Specifications.
Information Related
Specifiche di l'interfaccia Avalon

Clock è Reset Interfacce

Table 2. Clock è Reset Interfacce

Signal Name Direzzione Descrizzione
in_clk Input Questu hè u clock per l'interfaccia di streaming Avalon. A frequenza massima in 250 MHz.
in_reset Input Questu hè un reset attivu altu. Assert in_reset per resettà u Mailbox Client cù l'interfaccia di streaming Avalon Intel FPGA IP (Mailbox Client with Avalon ST IP). Quandu u signale in_reset affirmeghja, u SDM deve sguassate ogni attività pendente da u Mailbox Client cù Avalon ST IP. U SDM cuntinueghja à processà cumandamenti da altri clienti.

Per assicurà chì u Mailbox Client cù Avalon ST IP funziona currettamente quandu u dispusitivu entra in u modu d'utilizatore, u vostru disignu deve include u Reset Release Intel FPGA IP per mantene a reset finu à chì a tela FPGA entra in u modu d'utilizatore. Intel ricumanda di utilizà un sincronizzatore di reset quandu cunnessu u reset di l'utilizatori o l'output di l'IP Reset Release à

u portu di reset di u Mailbox Client cù Avalon ST IP. Per implementà u sincronizatore di reset, utilizate l'IP Reset Bridge Intel FPGA dispunibule in u Platform Designer.

Nota: Per l'istanziazione IP è e linee guida di cunnessione in u Platform Designer, riferite à i Cumpunenti di cumunicazione è di l'ospiti necessarii per u Disegnu Remote System Update Ex.ample figure in a Guida di l'Usuariu di Configurazione Intel Agilex.

Interfaccia di cumandamentu
Aduprate l'interfaccia Avalon Streaming (Avalon ST) per mandà cumandamenti à u SDM.

Table 3. Command Interface

Signal Name Direzzione Descrizzione
cumanda_pronta Output U Mailbox Client cù Avalon ST Intel FPGA IP affirmeghja command_ready quandu hè pronta per riceve cumandamenti da l'applicazione. A ready_latency hè 0 cicli. U Cliente Mailbox cù Avalon ST pò accettà command_data [31: 0] in u stessu ciculu chì command_ready afferma.
cumanda_validu Input U signale command_valid affirmeghja per indicà chì command_data hè validu.
cumanda_data[31:0] Input U bus command_data conduce cumandamenti à u SDM. Vede a Lista di cumandamenti è a Descrizzione per e definizione di i cumandamenti.
command_startofpacket Input Command_startofpacket affirmeghja in u primu ciclu di un pacchettu di cumanda.
command_endofpacket Input Command_endofpacket affirmeghja in l'ultimu ciclu di cumanda un pacchettu.

Figura 4. Timing per Avalon ST Command Packet
fig:m ST Command Packet

Interfaccia di risposta
U SDM Avalon ST Client IP manda risposti à a vostra applicazione utilizendu l'interfaccia di risposta.

Table 4. Interfaccia di Risposta

Signal 5 Direzzione Descrizzione
risposta_pronta Input A logica di l'applicazione pò affirmà u signale response_ready ogni volta chì hè capace di riceve una risposta.
risposta_valida Output L'SDM afferma response_valid per indicà chì response_data hè validu.
risposta_dati[31:0] Output U SDM conduce response_data per furnisce l'infurmazioni dumandate. A prima parola di a risposta hè un capu chì identifica u cumandamentu chì u SDM furnisce. Riferite à Lista di cumandamenti è descrizzione per definizioni di i cumandamenti.
risposta_startofpacket Output U response_startofpacket affirmeghja in u primu ciclu di un pacchettu di risposta.
risposta_endofpacket Output Response_endofpacket afferma in l'ultimu ciclu di un pacchettu di risposta.

Figura 5. Timing for Avalon ST Response Packet
Pacchettu di risposta Avalon ST

Interfaccia di Status di Command

Tabella 5. Interfaccia di Status di Command

Signal Name Direzzione Descrizzione
command_status_invalid Output Command_status_invalid affirmeghja per indicà un errore. Stu signalu tipicamente affirmeghja per indicà chì a durata di u cumandamentu specificata in l'intestazione di u cumandamentu ùn currisponde à a durata di u cumandamentu mandatu. Quandu command_status_invalid affirmeghja, a vostra logica di l'applicazione deve affirmà in_reset per riavvia u Mailbox Client cù l'interfaccia di streaming Avalon Intel FPGA IP.

Figura 6. Reset After Command_status_invalid Asserts
fig: command_status_invalid Asserts

Cumandamenti è Risposte

U controller di l'ospitu cumunicà cù u SDM usendu pacchetti di cumanda è risposta via u Mailbox Client Intel FPGA IP.

A prima parolla di i pacchetti di cumandamentu è di risposta hè un capu chì furnisce infurmazioni basi nantu à u cumandamentu o risposta.

Figura 7. Format d'intestazione di cumandamentu è risposta
fig: Formatu di l'intestazione di cumandamentu è risposta

Nota: U campu LENGTH in l'intestazione di u cumandamentu deve currisponde à a lunghezza di u cumandamentu di u cumandamentu currispundente.
A tavula seguente descrive i campi di u cumandamentu di l'intestazione.

Tabella 6. Descrizzione di l'intestazione di cumandamentu è risposta

Intestazione Bit Descrizzione
Riservatu [31:28] Riservatu.
ID [27:24] L'ID di cumanda. L'intestazione di risposta torna l'ID specificata in l'intestazione di cumanda. Consultate i cumandamenti di l'operazione per e descrizzioni di cumandamenti.
0 [23] Riservatu.
LUNGHEZZA [22:12] Numeru di parolle di argumenti dopu à l'intestazione. L'IP risponde cù un errore se un numeru sbagliatu di parolle d'argumenti hè inseritu per un cumandamentu datu.
Se ci hè una discrepanza trà a lunghezza di cumanda specificata in l'intestazione di u cumandamentu è u numeru di parolle mandate. L'IP eleva u bit 3 di u Registru di Statu di Interruzzione (COMMAND_INVALID) è u Cliente di Mailbox deve esse resettatu.
Riservatu [11] Riservatu. Deve esse stabilitu à 0.
Codice di cumanda / Codice di errore [10:0] Command Code specifica u cumandamentu. U codice d'errore indica se u cumandimu hà successu o fallutu.
In l'intestazione di u cumandamentu, questi bit rapprisentanu u codice di cumanda. In l'intestazione di risposta, sti bits rapprisentanu codice d'errore. Se u cumandamentu riesce, u codice d'errore hè 0. Se u cumandimu falla, fate riferimentu à i codici d'errore definiti in u Error Code Risposte.

Cumandamenti di Operazione

Reset Quad SPI Flash
Impurtante:
Per i dispositi Intel Agilex, duvete cunnette u pin di reset flash seriale o quad SPI à u pin AS_nRST. U SDM deve cuntrullà cumplettamente u reset QSPI. Ùn cunnette micca u quad SPI reset pin à qualsiasi host esternu.

Table 7. Lista di cumandamenti è Descrizzione

Cumanda Codice (hexadecimale) Lunghezza di cumanda (1) Lunghezza di risposta (1) Descrizzione
NOOP 0 0 0 Invia una risposta di status OK.
GET_IDCODE 10 0 1 A risposta cuntene un argumentu chì hè u JTAG IDCODE per u dispusitivu
GET_CHIPID 12 0 2 A risposta cuntene un valore CHIPID di 64 bit cù a prima parolla menu significativa.
GET_USERCODE 13 0 1 A risposta cuntene un argumentu chì hè a 32-bit JTAG USERCODE chì u bitstream di cunfigurazione scrive à u dispusitivu.
GET_VOLTAGE 18 1 n (2) U GET_VOLTAGU cumandamentu E hà un argumentu unicu chì hè una maschera di bit chì specifica i canali à leghje. U bit 0 specifica u canale 0, u bit 1 specifica u canale 1, è cusì.
A risposta include un argumentu di una sola parola per ogni bit set in a bitmask. U voltagE riturnatu hè un numeru di puntu fissu senza signu cù 16 bit sottu à u puntu binariu. Per esample, a voltage di 0.75V torna 0x0000C000. (3)
I dispositi Intel Agilex anu un solu voltage sensore. In cunseguenza, a risposta hè sempre una parolla.
GET_ TEMPERATURE 19 1 n(4) U cumandimu GET_TEMPERATURE ritorna a temperatura o a temperatura di u tissutu core o i lochi di u canali di transceiver chì specificate.

Per i dispositi Intel Agilex, utilizate l'argumentu sensor_req per specificà e locu. U sensor_req include i seguenti campi:

  • Bits[31:28]: Riservatu.
  • Bits[27:16]: Posizione di u sensoru. Specifica u locu TSD.
  • Bits[15:0]: Mascara di sensor. Specifica i sensori da leghje per u locu di u sensoru specificatu. A risposta cuntene una parolla per ogni temperatura dumandata. Se omessi, u cumandimu leghje u canali 0. U pocu più significativu (lsb) currisponde à u sensor 0. U bit più significativu (msb) currisponde à u canale 15.

A temperatura restituita hè un valore fissu firmatu cù 8 bits sottu à u puntu binariu. Per esample, una temperatura di 10 ° C torna 0x00000A00. A di temperatura -1.5 ° C torna 0xFFFFFE80.
Se u bitmask specifica una Locazione invalida, u cumandimu torna un codice d'errore chì hè qualsiasi valore in u range 0x80000000 -0x800000FF.
Per i dispositi Intel Agilex, riferite à a Intel Agilex Power Management User Guide per più infurmazione nantu à i sensori di temperatura integrati lucali.

RSU_IMAGE_ UPDATE 5C 2 0 Triggers a reconfigurazione da a fonte di dati chì pò esse sia a fabbrica sia una maghjina di l'applicazione.
cuntinuò…
  1. Stu numeru ùn include micca u cumandamentu o l'intestazione di risposta.
  2. Per i dispositi Intel Agilex chì supportanu a lettura di parechji dispositi, l'indice n currisponde à u numeru di canali chì attivate in u vostru dispositivu.
  3. Riferite à u Intel Agilex Power Management User Guide per più infurmazione nantu à i canali è i lochi di i sensori di temperatura.
  4. L'indice n dipende da u numeru di maschere di sensori.
Cumanda Codice (hexadecimale) Lunghezza di cumanda (1) Lunghezza di risposta (1) Descrizzione
Stu cumandimu pigghia un argumentu facultativu 64-bit chì specifica l'indirizzu di dati di ricunfigurazione in u lampu. Quandu invià l'argumentu à l'IP, prima mandate bits [31:0] seguiti da bits [63:32]. Se ùn furnite micca questu argumentu, u so valore hè presu 0.
  • Bit [31:0]: L'indirizzu iniziale di una maghjina di l'applicazione.
  • Bit [63:32]: Riservatu (scrivite cum'è 0).

Una volta chì u dispusitivu processa stu cumandamentu, torna l'intestazione di risposta à a risposta FIFO prima di procederà à ricunfigurazione di u dispusitivu. Assicuratevi chì u PC di l'ospite o u controller di l'ospitu ferma u serviziu di altre interruzioni è si cuncentra nantu à leghje i dati di l'intestazione di risposta per indicà u cumandamentu cumpletu cù successu. Altrimenti, u PC di l'ospite o u controller di l'ospite ùn pò micca esse capace di riceve a risposta una volta chì u prucessu di ricunfigurazione hà iniziatu.
Una volta chì u dispusitivu procede cù a ricunfigurazione, u ligame trà l'ospite esternu è FPGA hè persu. Se aduprate PCIe in u vostru disignu, avete bisognu di re-enumerà u ligame PCIe.
Impurtante: Quandu resette quad SPI, duvete seguità l'istruzzioni specificate in Reset Quad SPI Flash a pagina 9.

RSU_GET_SPT 5A 0 4 RSU_GET_SPT recupera l'ubicazione flash quad SPI per e duie tabelle di subpartizione chì a RSU usa: SPT0 è SPT1.
A risposta di 4 parole cuntene l'infurmazioni seguenti:
Parola Nome Descrizzione
0 SPT0[63:32] Indirizzu SPT0 in quad SPI flash.
1 SPT0[31:0]
2 SPT1[63:32] Indirizzu SPT1 in quad SPI flash.
3 SPT1[31:0]
CONFIG_ STATUS 4 0 6 Riporta u statutu di l'ultima ricunfigurazione. Pudete aduprà stu cumandamentu per verificà u statutu di cunfigurazione durante è dopu a cunfigurazione. A risposta cuntene l'infurmazioni seguenti:
Parola Riassuntu Descrizzione
0 Statu Descrive l'errore di cunfigurazione più recente. Ritorna 0 quandu ùn ci sò micca errori di cunfigurazione.
U campu d'errore hà 2 campi:
  • Upper 16 bits: codice d'errore maiò.
  • Lower 16 bits: codice d'errore minore.

Vede l'Appendice: CONFIG_STATUS è RSU_STATUS Error Code Descriptions in Mailbox Client Intel FPGA IP  User Guide per più infurmazione.

1 Version Quartus Disponibile in e versioni di u software Intel Quartus® Prime trà 19.4 è 21.2, u campu mostra:
  • Bit [31:28]: Indice di u firmware o copia di firmware di decisione chì hè stata utilizata a più recente. I valori pussibuli sò 0, 1, 2 è 3.
  • Bit [27:24]: Riservatu
  • Bit [23:16]: U valore hè '0'
Disponibile in a versione di u software Intel Quartus Prime 21.3 o più tardi, a versione Quartus mostra:
  • Bit [31:28]: Indice di u firmware o copia di firmware di decisione chì hè stata utilizata a più recente. I valori pussibuli sò 0, 1, 2 è 3.
  • Bit [27:24]: Riservatu
  • Bit [23:16]: Major Quartus numero di liberazione
  • Bit [15:8]: Minor Quartus numero di liberazione
  • Bit [7: 0]: numeru di aghjurnamentu Quartus

Per esample, in a versione di u software Intel Quartus Prime 21.3.1, i valori seguenti rapprisentanu i numeri di liberazione di Quartus maiò è minori, è u numeru di l'aghjurnamentu di Quartus:

  • Bit [23:16] = 8'd21 = 8'h15
  • Bit [15:8] = 8'd3 = 8'h3
  • Bit [7:0] = 8'd1 = 8'h1
2 Statu di pin
  • Bit [31]: Valore di output nSTATUS attuale (attivo basso)
  • Bit [30]: u valore di input nCONFIG rilevatu (attivu bassu)
  • Bit [29:8]: Riservatu
  • Bit [7:6]: Fonte di clock di cunfigurazione
    • 01 = Oscillatore internu
    • 10 = OSC_CLK_1
  • Bit [5:3]: Riservatu
  • Bit [2:0]: U valore MSEL à l'accensione
3 Statu di funzione soft Contene u valore di ognuna di e funzioni soft, ancu s'ellu ùn avete micca assignatu a funzione à un pin SDM.
  • Bit [31:6]: Riservatu
  • Bit [5]: HPS_WARMRESET
  • Bit [4]: ​​HPS_COLDRESET
  • Bit [3]: SEU_ERROR
  • Bit [2]: CVP_DONE
  • Bit [1]: INIT_DONE
  • Bit [0]: CONF_DONE
4 Locu di errore Contene u locu di errore. Ritorna 0 se ùn ci sò micca errori.
5 Dettagli di errore Contene i dettagli di l'errore. Ritorna 0 se ùn ci sò micca errori.
RSU_STATUS 5B 0 9 Riporta u statu di l'aghjurnamentu di u sistema remoto attuale. Pudete aduprà stu cumandamentu per verificà u statutu di cunfigurazione durante a cunfigurazione è dopu avè finitu. Stu cumandamentu torna e seguenti risposte:
Parola Riassuntu Descrizzione

(Cuntinuà….)

  1. Stu numeru ùn include micca u cumandamentu o l'intestazione di risposta
0-1 Immagine attuale Offset flash di l'imaghjini di l'applicazione attualmente in esecuzione.
2-3 L'imagine falluta Offset flash di l'imaghjini di l'applicazione falluta di priorità più alta. Se parechje imagine sò dispunibili in memoria flash, guarda u valore di a prima maghjina chì hà fallutu. Un valore di tutti i 0 indica chì l'imaghjini ùn anu micca difettu. Se ùn ci sò micca imagine fallimentu, u restu di e parolle rimanenti di l'infurmazioni di statutu ùn guardanu micca infurmazione valida.
Nota:Un rising edge in nCONFIG per ricunfigurazione da ASx4, ùn sguassate micca stu campu. L'infurmazioni nantu à l'imagine fallimentu sò solu aghjurnate quandu u Cliente di Mailbox riceve un novu cumandamentu RSU_IMAGE_UPDATE è cunfigurà bè da l'imagine di l'aghjurnamentu.
4 Statu Codice di fallimentu di l'imagine falluta. U campu d'errore hà duie parte:
  • Bit [31:16]: codice d'errore maiò
  • Bit [15:0]: Codice d'errore minore Ritorna 0 per nisun fallimentu. Riferite à

Appendice: Descrizioni di codice d'errore CONFIG_STATUS è RSU_STATUS in u Mailbox Client Intel FPGA IP User Guide per più infurmazione.

5 Versione Versione di l'interfaccia RSU è fonte di errore.
Per più infurmazione, fate riferimentu à a sezione Status è Error Codes RSU in u Hard Processor System Remote System Update User Guide.
6 Locu di errore Memorizza u locu d'errore di l'imagine falluta. Ritorna 0 senza errore.
7 Dettagli di errore Memorizza i dettagli di l'errore per l'imagine falluta. Ritorna 0 se ùn ci sò micca errori.
8 Contatore di riprova di l'imagine attuale Conte di u numeru di tentativi chì sò stati pruvati per l'imagine attuale. U cuntatore hè inizialmente 0. U cuntatore hè stabilitu à 1 dopu a prima prova, dopu à 2 dopu à una seconda prova.
Specificate u numeru massimu di tentativi in ​​i vostri paràmetri Intel Quartus Prime File (.qsf). U cumandimu hè: set_global_assignment -name RSU_MAX_RETRY_COUNT 3. I valori validi per u contatore MAX_RETRY sò 1-3. U numeru attuale di tentativi dispunibuli hè MAX_RETRY -1
Stu campu hè statu aghjuntu in a versione 19.3 di u software Intel Quartus Prime Pro Edition.
cuntinuò…
  1. Stu numeru ùn include micca u cumandamentu o l'intestazione di risposta.
RSU_NOTIFY 5D 1 0 Cancella tutte l'infurmazioni d'errore in a risposta RSU_STATUS è resetta u contatore di retry. L'argumentu di una sola parolla hà i seguenti campi:
  • 0x00050000: Sguassà u contatore di ricuperazione di reset attuale. Resetting the current retry counter sets the counter back to zero, as if the current image was successfully loaded for the first time.
  • 0x00060000: sguassate l'infurmazioni di statutu di errore.
  • Tutti l'altri valori sò riservati.

Stu cumandamentu ùn hè micca dispunibule prima di a versione 19.3 di u software Intel Quartus Prime Pro Edition.

QSPI_OPEN 32 0 0 Richiede un accessu esclusivu à u quad SPI. Emette sta dumanda prima di qualsiasi altre dumande QSPI. U SDM accetta a dumanda se u quad SPI ùn hè micca in usu è u SDM ùn cunfigurà micca u dispusitivu.
Ritorna OK se u SDM cuncede l'accessu.
U SDM cuncede l'accessu esclusivu à u cliente utilizendu sta mailbox. L'altri clienti ùn ponu micca accede à u quad SPI finu à chì u cliente attivu rinunce l'accessu cù u cumandimu QSPI_CLOSE.
L'accessu à i dispositi di memoria flash quad SPI via qualsiasi IP client di mailbox ùn hè micca dispunibule per difettu in i disinni chì includenu l'HPS, salvu chì ùn disattiveghjanu u QSPI in a cunfigurazione di u software HPS.
Impurtante: Quandu resette quad SPI, duvete seguità l'istruzzioni specificate in Reset Quad SPI Flash a pagina 9.
QSPI_CLOSE 33 0 0 Chiude l'accessu esclusivu à l'interfaccia quad SPI.
Impurtante:Quandu resette quad SPI, duvete seguità l'istruzzioni specificate in Reset Quad SPI Flash a pagina 9.
QSPI_SET_CS 34 1 0 Specifica unu di i dispositi quad SPI attaccati attraversu e linee di selezzione di chip. Piglia un argumentu di una sola parolla cum'è descrittu quì sottu
  • Bits[31:28]: Dispositivu Flash per selezziunà. Riferite à l'infurmazioni sottu per u valore chì currisponde à i pins nCSO[0:3].
    • U valore 4'h0000 sceglie u lampu chì currisponde à nCSO[0].
    • U valore 4'h0001 sceglie u lampu chì currisponde à nCSO[1].
    • U valore 4'h0002 sceglie u lampu chì currisponde à nCSO[2].
    • Valore 4'h0003 selezziunà u lampu chì currisponde à nCSO[3].
  • Bits [27: 0]: Riservatu (scrivite cum'è 0).

Nota: I dispositivi Intel Agilex o Intel Stratix® 10 supportanu un dispositivu di memoria flash AS x4 per a cunfigurazione AS da un dispositivu quad SPI cunnessu à nCSO[0]. Una volta chì u dispusitivu hè intrutu in u modu d'utilizatore, pudete aduprà finu à quattru memorie flash AS x4 per l'usu cù Mailbox Client IP o HPS cum'è almacenamiento di dati. TheMailbox Client IP o HPS ponu utilizà nCSO[3:0] per accede à i dispositi quad SPI.
Stu cumandamentu hè facultativu per u schema di cunfigurazione AS x4, a linea di selezzione di chip seguita l'ultimu cumandamentu QSPI_SET_CS eseguitu o predeterminatu à nCSO [0] dopu a cunfigurazione AS x4. U JTAG schema di cunfigurazione richiede eseguisce stu cumandamentu per accede à u flash QSPI chì cunnetta i pin SDM_IO.
L'accessu à i dispositi di memoria flash QSPI chì utilizanu pin SDM_IO hè dispunibule solu per u schema di cunfigurazione AS x4, JTAG cunfigurazione, è un disignu compilatu per a cunfigurazione AS x4. Per u schema di cunfigurazione di l'interfaccia di streaming Avalon (Avalon ST), devi cunnette i ricordi flash QSPI à i pin GPIO.

cuntinuò…
  1. Stu numeru ùn include micca u cumandamentu o l'intestazione di risposta
Impurtante: Quandu resette quad SPI, duvete seguità l'istruzzioni specificate in Reset Quad SPI Flash a pagina 9.
QSPI_READ 3A 2 N Leghje u dispusitivu quad SPI attaccatu. A dimensione massima di trasferimentu hè 4 kilobytes (KB) o 1024 parole.
Piglia dui argumenti:
  • L'indirizzu flash quad SPI (una parola). L'indirizzu deve esse allinatu cù a parolla. U dispusitivu torna u codice d'errore 0x1 per l'indirizzi non allineati.
  • Numero di parolle da leghje (una parolla).

Quandu u successu, torna OK seguitu da i dati di lettura da u dispusitivu quad SPI. Una risposta di fallimentu torna un codice d'errore.
Per una lettura parzialmente riescita, QSPI_READ pò vultà erroneamente u statu OK.
Nota: Ùn pudete micca eseguisce u cumandimu QSPI_READ mentre a cunfigurazione di u dispositivu hè in corso.
Impurtante:Quandu resette quad SPI, duvete seguità l'istruzzioni specificate in Reset Quad SPI Flash a pagina 9.

QSPI_WRITE 39 2 + N 0 Scrive dati à u dispusitivu quad SPI. A dimensione massima di trasferimentu hè 4 kilobytes (KB) o 1024 parole.
Piglia trè argumenti:
  • L'indirizzu flash offset (una parola). L'indirizzu di scrittura deve esse allinatu cù e parolle.
  • U numeru di parolle da scrive (una parolla).
  • I dati da scrive (una o più parolle). Una scrittura riescita torna u codice di risposta OK.

Per preparà a memoria per i scritti, aduprate u cumandimu QSPI_ERASE prima di emette stu cumandamentu.
Nota: Ùn pudete micca eseguisce u cumandimu QSPI_WRITE mentre a cunfigurazione di u dispositivu hè in corso.
Impurtante:Quandu resette quad SPI, duvete seguità l'istruzzioni specificate in Reset Quad SPI Flash a pagina 9.

QSPI_ERASE 38 2 0 Cancella un settore 4/32/64 KB di u dispositivu quad SPI. Piglia dui argumenti:
  • L'indirizzu flash offset per inizià a cancellazione (una parola). Sicondu u numeru di parolle da sguassà, l'indirizzu iniziale deve esse:
    • 4 KB allineati se e parolle numeriche da sguassà hè 0x400
    • 32 KB allineati se e parolle numeriche da sguassà hè 0x2000
    • 64 KB allineati se e parolle numeriche da sguassà hè 0x4000 Ritorna un errore per l'indirizzi non-4/32/64 KB allineati.
  • U numeru di parolle da sguassà hè specificatu in multiplici di:
    • 0x400 per sguassà 4 KB (100 parole) di dati. Questa opzione hè a dimensione minima di sguassà.
    • 0x2000 per sguassà 32 KB (500 parole) di dati
    • 0x4000 per sguassà 64 KB (1000 parole) di dati Un cancellu successu torna u codice di risposta OK.

Impurtante:Quandu resette quad SPI, duvete seguità l'istruzzioni specificate in Reset Quad SPI Flash a pagina 9.

QSPI_READ_ DEVICE_REG 35 2 N Leghjite i registri da u dispositivu quad SPI. A lettura massima hè di 8 bytes. Piglia dui argumenti:
  • L'opcode per u cumandamentu di lettura.
  • U numeru di bytes à leghje.
cuntinuò…
  1. Stu numeru ùn include micca u cumandamentu o l'intestazione di risposta.
Una lettura riescita torna u codice di risposta OK seguita da i dati letti da u dispusitivu. U ritornu di dati letti hè in multiplicità di 4 byte. Se i byte à leghje ùn sò micca un multiplu esatta di 4 bytes, hè padded cun multiplu di 4 bytes finu à u prossimu limitu di a parolla è u valore di bit padded hè zero.
Impurtante: Quandu resette quad SPI, duvete seguità l'istruzzioni specificate in Reset Quad SPI Flash a pagina 9.
QSPI_WRITE_ DEVICE_REG 36 2 + N 0 Scrive à i registri di u quad SPI. A scrittura massima hè 8 byte. Piglia trè argumenti:
  • L'opcode per u cumandamentu di scrittura.
  • U numeru di bytes da scrive.
  • I dati à scrive.

Per eseguisce una cancellazione di settore o di cancellazione di sottosettore, deve specificà l'indirizzu flash seriale in l'ordine di byte più significativu (MSB) à byte minimu significativu (LSB) cum'è l'esempiu seguente.ample illustra.
Per sguassà un settore di un Micron 2 gigabit (Gb) flash à l'indirizzu 0x04FF0000 utilizendu u cumandimu QSPI_WRITE_DEVICE_REG, scrivite l'indirizzu flash in MSB à LSB ordine cum'è mostra quì:
Header: 0x00003036 Opcode: 0x000000DC
Numeru di bytes à scrive: 0x00000004 Indirizzu Flash: 0x0000FF04
Una scrittura riescita torna u codice di risposta OK. Stu cumandamentu pads dati chì ùn hè micca un multiplu di 4 bytes à u cunfini di a parolla dopu. U cumandimu pads i dati cù zero.
Impurtante:Quandu resette quad SPI, duvete seguità l'istruzzioni specificate in Reset Quad SPI Flash a pagina 9.

QSPI_SEND_ DEVICE_OP 37 1 0 Manda un opcode di cumanda à u quad SPI. Piglia un argumentu:
  • L'opcode per mandà u dispositivu quad SPI.

Un cumandamentu successu torna u codice di risposta OK.
Impurtante:Quandu resette quad SPI, duvete seguità l'istruzzioni specificate in Reset Quad SPI Flash a pagina 9.

Per e descrizioni di codice d'errore maiò è minore di CONFIG_STATUS è RSU_STATUS, fate riferimentu à l'Appendice: Descrizioni di codice d'errore CONFIG_STATUS è RSU_STATUS in a Guida di l'Usuariu di l'IP Intel FPGA di Mailbox Client.
Information Related

Error Code Risposte

Table 8. Error Codes

Valeur (hexadecimale) Error Code Risposta Descrizzione
0 OK Indica chì u cumandamentu hè cumpletu cù successu.
Un cumandamentu pò vultà erroneamente u status OK se un cumandamentu, cum'è
QSPI_READ hè parzialmente successu.
1 INVALID_COMMAND Indica chì a ROM di boot attualmente caricata ùn pò micca decodificà o ricunnosce u codice di cumandamentu.
3 UNKNOWN_COMMAND Indica chì u firmware attualmente caricatu ùn pò micca decodificà u codice di cumanda.
4 INVALID_COMMAND_ PARAMETERS Indica chì u cumandimu hè furmatu incorrectamente. Per esample, l'impostazione di u campu di lunghezza in header ùn hè micca validu.
6 COMMAND_INVALID_ON_ SOURCE Indica chì u cumandamentu hè da una fonte per quale ùn hè micca attivatu.
8 CLIENT_ID_NO_MATCH Indica chì l'ID di Cliente ùn pò micca cumpletà a dumanda di chjude l'accessu esclusivu à quad SPI. L'ID di Cliente ùn currisponde micca à u cliente esistente cù l'accessu exclusivu attuale à quad SPI.
9 INVALID_ADDRESS L'indirizzu hè invalidu. Stu errore indica una di e seguenti cundizioni:
  • Un indirizzu unaligned
  • Un prublema di intervallu di indirizzu
  • Un prublema di permessu di lettura
  • Un valore di selezzione di chip invalidu, chì mostra un valore di più di 3
  • Un indirizzu invalidu in casu RSU
  • Un valore di maschera di bit invalidu per GET_VOLTAGE cumandamentu
  • Una selezzione di pagina invalida per u cumandimu GET_TEMPERATURE
A AUTHENTICATION_FAIL Indica l'errore di autenticazione di firma bitstream di configurazione.
B PAUSA Stu errore indica u tempu fora per via di e seguenti cundizioni:
  • Cumanda
  • Aspittendu chì l'operazione QSPI_READ finisci
  • Aspetta a lettura di a temperatura dumandata da unu di i sensori di temperatura. Pò indicà un errore hardware potenziale in u sensoru di temperatura.
C HW_NOT_READY Indica una di e seguenti cundizioni:
  • U hardware ùn hè micca prontu. Pò indicà un prublema d'inizializazione o di cunfigurazione. U hardware pò riferisce à quad SPI.
  • L'immagine RSU ùn hè micca utilizata per cunfigurà l'FPGA.
D HW_ERROR Indica chì u cumandamentu hè finitu senza successu per via di un errore hardware irrecuperable.
80-8F COMMAND_SPECIFIC_ ERROR Indica un errore specificu di cumandamentu per un cumandamentu SDM chì avete utilizatu.
SDM

Cumanda

Error Name Codice di errore Descrizzione
GET_CHIPID EFUSE_SYSTEM_ FAILURE 0x82 Indica chì u puntatore di cache eFuse ùn hè micca validu.
QSPI_OPEN/ QSPI_CLOSE/ QSPI_SET_CS/

QSPI_READ_D EVICE_REG/

QSPI_HW_ERROR 0x80 Indica un errore di memoria flash QSPI. Stu errore indica una di e seguenti cundizioni:
QSPI_WRITE_ DEVICE_REG/

QSPI_SEND_D EVICE_OP/

QSPI_READ

  • Un prublema di impostazione di selezzione di chip flash QSPI
  • Un prublema di inizializazione flash QSPI
  • Un prublema di resetting flash QSPI
  • Un prublema di aghjurnamentu di i paràmetri flash QSPI
QSPI_ALREADY_ OPEN 0x81 Indica chì l'accessu esclusivu di u cliente à QSPI flash via u cumandimu QSPI_OPEN hè digià apertu.
100 NOT_CONFIGURED Indica chì u dispusitivu ùn hè micca cunfiguratu.
1FF ALT_SDM_MBOX_RESP_ DEVICE_ BUSY Indica chì u dispusitivu hè occupatu per via di i seguenti casi di usu:
  • RSU: U firmware ùn hè micca capaci di passà à una versione diversa per un errore internu.
  • HPS: HPS hè occupatu in u prucessu di ricunfigurazione HPS o reset à freddo HPS.
2FF ALT_SDM_MBOX_RESP_NO _ VALID_RESP_AVAILABLE Indica chì ùn ci hè micca una risposta valida dispunibule.
3FF ALT_SDM_MBOX_RESP_ ERRORE Errore generale.

Error Code Recovery
A tavula sottu descrive i passi pussibuli per ricuperà da un codice d'errore. A ricuperazione di l'errore dipende da u casu d'usu specificu.
Table 9. Error Code Recovery per Codici Errore cunnisciutu

Valore Error Code Risposta Error Code Recovery
4 INVALID_COMMAND_ PARAMETERS Rienviate l'intestazione di cumandamentu o l'intestazione cù argumenti cù paràmetri curretti.
Per esample, assicuratevi chì l'impostazione di u campu di lunghezza in header hè mandatu cù u valore currettu.
6 COMMAND_INVALID_ ON_SOURCE Rienviate u cumandimu da una fonte valida cum'è JTAG, HPS, o tissu core.
8 CLIENT_ID_NO_MATCH Aspettate chì u cliente chì hà apertu l'accessu à quad SPI per compie u so accessu è poi chjude l'accessu esclusivu à quad SPI.
9 INVALID_ADDRESS Possibili passi di ricuperazione di errore:
Per GET_VOLTAGE cumanda: Mandate cumanda cù una maschera di bit valida.
Per u cumandamentu GET_TEMPERATURE: Mandate u cumandamentu cù u locu validu di u sensoru è a maschera di u sensoru.
Per l'operazione QSPI:
  • Mandate u cumandamentu cù una selezzione di chip validu.
  • Mandate u cumandamentu cù un indirizzu flash QSPI validu.

Per RSU: Mandate u cumandamentu cù un indirizzu iniziale validu di l'imaghjini di fabbrica o di l'applicazione.

B PAUSA Possibili passi di ricuperazione:

Per u cumandamentu GET_TEMPERATURE: Riprova à mandà u cumandimu di novu. Se u prublema persiste, cunfigurà o ciculu di u dispusitivu.

Per l'operazione QSPI: Verificate l'integrità di u signale di l'interfacce QSPI è pruvate à cumanda di novu.

Per l'operazione di riavvia HPS: Riprova à mandà u cumandamentu di novu.

C HW_NOT_READY Possibili passi di ricuperazione:

Per l'operazione QSPI: Reconfigurate u dispusitivu via fonte. Assicuratevi chì l'IP utilizata per custruisce u vostru disignu permette l'accessu à u flash QSPI.

Per RSU: Configurate u dispusitivu cù l'imaghjini RSU.

80 QSPI_HW_ERROR Verificate l'integrità di u signale di l'interfaccia QSPI è assicuratevi chì u dispositivu QSPI ùn hè micca dannatu.
81 QSPI_ALREADY_OPEN U cliente hà digià apertu QSPI. Cuntinuà cù a prossima operazione.
82 EFUSE_SYSTEM_FAILURE Pruvate di ricunfigurazione o ciculu di putenza. Se l'errore persiste dopu a ricunfigurazione o u ciclu di putenza, u dispusitivu pò esse dannatu è irrecuperabile.
100 NOT_CONFIGURED Mandate un bitstream chì cunfigura l'HPS.
1FF ALT_SDM_MBOX_RESP_ DEVICE_ BUSY Possibili passi di ricuperazione di errore:

Per l'operazione QSPI: Aspettate a cunfigurazione in corso o un altru cliente per compie l'operazione.

Per RSU: Reconfigurate u dispusitivu per ricuperà da l'errore internu.

Per l'operazione di riavviu HPS: Aspettate a ricunfigurazione via HPS o HPS Cold Reset per compie.

Mailbox Client cù Avalon Streaming Interface Intel FPGA IP User Guide Document Archives

Per l'ultime versioni è precedenti di sta guida d'utilizatore, fate riferimentu à Mailbox Client cù Avalon Streaming Interface Intel FPGA IP User Guide. Se una versione IP o software ùn hè micca listata, a guida d'utilizatore per l'IP precedente o a versione di software s'applica.

E versioni IP sò listessi cù e versioni di u software Intel Quartus Prime Design Suite finu à v19.1. Da a versione di u software Intel Quartus Prime Design Suite 19.2 o più tardi, i core IP anu un novu schema di versione IP.

Storia di Revisione di Documenti per u Cliente Mailbox cù Avalon Streaming Interface Intel FPGA IP User Guide

Versione di documentu Version Intel Quartus Prime Versione IP Cambiamenti
2022.09.26 22.3 1.0.1 Hà fattu i seguenti cambiamenti:
  • Aghjurnatu u GET_VOLTAGE fila di cumanda in u

Lista di cumandamenti è tabella di descrizzione.

  • Nota aghjuntu à u Supportu di Famiglia di Dispositivi Table.
  • Rivisatu QSPI_SET_CS descrizzione di cumanda in a lista di cummandu è a tavola di descrizzione.
2022.04.04 22.1 1.0.1 Aghjurnatu a lista di cumandamenti è a tabella di descrizzione.
  • A descrizzione di u statu di pin aghjurnata per u cumandimu CONFIG_STATUS.
  • Eliminatu u cumandimu REBOOT_HPS.
2021.10.04 21.3 1.0.1 Hà fattu u cambiamentu seguente:
  • Rivisatu Lista di cumandamenti è descrizzione tavula. Descrizzione aghjurnata per:
    • CONFIG_STATUS
    • RSU_STATUS
2021.06.21 21.2 1.0.1 Hà fattu i seguenti cambiamenti:
  • Rivisatu Lista di cumandamenti è descrizzione tavula. Descrizzione aghjurnata per:
    • RSU_STATUS
    • QSPI_OPEN
    • QSPI_SET_CS
    • QSPI_ERASE
2021.03.29 21.1 1.0.1 Hà fattu i seguenti cambiamenti:
  • Descrizzione RSU_IMAGE_UPDATE riveduta in u Lista di cumandamenti è descrizzione tavula.
  • Ristrutturatu Cumandamenti di Operazione. Eliminate e descrizzioni di codice d'errore maiò è minore per i cumandamenti CONFIG_STATUS è RSU_STATUS. I codici di errore maiò è minori sò avà documentati cum'è un appendice in u Mailbox Client Intel FPGA IP User Guide.
2020.12.14 20.4 1.0.1 Hà fattu i seguenti cambiamenti:
  • Aggiunta una nota impurtante nantu à u resetting QSPI flash in u Cumandamenti di Operazione tema.
  • Aghjurnatu u Lista di cumandamenti è descrizzione tavulinu:
    • Descrizzione di cumandamentu GET_TEMPERATURE rivisita.
    • Descrizzione di cumandamentu RSU_IMAGE_UPDATE rivisita.
  • Testu aghjustatu nantu à resetting QSPI flash.
  • Testu aghjuntu chì descrive u cumpurtamentu trà l'ospite esternu è FPGA.
  • Testu eliminatu: Ritorna una risposta non-zero se u dispusitivu hè digià trattatu un cumandamentu di cunfigurazione.
    • Descrizzione QSPI_WRITE è QSPI_READ aghjurnata per specificà chì a dimensione massima di trasferimentu hè 4 kilobytes o 1024 parole.
    • Lunghezza di risposta corretta da 1 à 0 per i QSPI_OPEN, QSPI_CLOSE è QSPI_SET_CS cumanda.
    • Descrizioni QSPI_OPEN, QSPI_WRITE, QSPI_READ_DEVICE_REG è QSPI_WRITE_DEVICE_REG riveduti.
    • Aggiuntu un novu cumandamentu: REBOOT_HPS.
  • Aggiuntu novu tema: Error Code Recovery.
2020.10.05 20.3 1.0.1
  • Cambiatu u titulu di sta guida d'utilizatore da Mailbox Avalon Streaming Interface Client Intel FPGA IP User Guide à Mailbox Client cù Avalon Streaming Interface Intel FPGA IP User Guide per via di u cambiamentu di nome IP in u Catalogu IP Intel Quartus Prime.
  • Aghjurnatu globalmente tutte e istanze di nome IP.
  • Descrizzione di cumandamentu GET TEMPERATURE rivisita per i dispositi Intel Agilex in u Lista di cumandamenti è descrizzione tavula.
  • Raccomandazione aghjunta nantu à u resettore synchronizer in u Clock è Reset Interfacce tavula.
  • Aghjurnatu u Codici d'errore tavula. Aghjunghjite novi risposte di codice d'errore:
    • HW_ERROR
    • COMMAND_SPECIFIC_ERROR
  • Eliminatu u Locazioni di sensori di temperatura tema. L'infurmazione di u sensoru di temperatura hè dispunibule in u Intel Agilex Power Management User Guide.
2020.06.30 20.2 1.0.0
  • Cambiatu u titulu di sta guida d'utilizatore da Mailbox Avalon ST Client Intel FPGA IP User Guide à Mailbox Avalon Streaming Interface Client Intel FPGA IP User Guide.
  • Titulu di tema rinominatu Cumandamentu è Risposta Header à Cumandamenti è Risposte.
  • Rivisu ID, LUNGHEZZA, è u codice di cumandamentu / codice d'errore descrizzioni in u Descrizzione di l'intestazione di cumandamentu è risposta tavula.
  • Titulu di tema rinominatu Comandamenti supportati à Cumandamenti di Operazione.
  • Revised the following commands description in the Lista di cumandamenti è descrizzione tavulinu:
    • GET_TEMPERATURE
    • RSU_STATUS
    • QSPI_SET_CS
  • Titulu di tema rinominatu Codici d'errore à Error Code Risposte.
  • Eliminatu u cumandamentu UNKNOWN_BR da u Codice di errore tavula.
2020.04.13 20.1 1.0.0 Hà fattu i seguenti cambiamenti:
  • Aghjunghjite infurmazione nantu à i sensori di temperatura per u cumandamentu GET_TEMPERATURE, cumprese figuri chì illustranu i lochi TSD.
  • Aggiuntu cumandamentu RSU_NOTIFY in u Lista di codici di cumanda è descrizzione tavula.
  • Aghjurnatu u Codici d'errore tavulinu:
    • Rinominatu INVALID_COMMAND_PARAMETERS à INVALID_LENGTH.
    • U valore hex COMMAND_INVALID_ON_SOURCE cambiatu da 5 à 6.
    • Cambiatu u valore hex CLIENT_ID_NO_MATCH da 6 à 8.
    • U valore hex INVALID_ADDRESS hà cambiatu da 7 à 9.
    • Aggiuntu cumandamentu AUTHENTICATION_FAIL.
    • U valore hex TIMEOUT cambiatu da 8 à B.
    • Cambiatu u valore hex HW_NOT_READY da 9 à C.
2019.09.30 19.3 1.0.0 Liberazione iniziale.

 Per feedback, visitate:  FPGAtechdocfeedback@intel.com

 

Documenti / Risorse

Intel Mailbox Client cù Avalon Streaming Interface FPGA IP [pdfGuida di l'utente
Mailbox Client cù Avalon Streaming Interface FPGA IP, Mailbox Client, Avalon Streaming Interface FPGA IP

Referenze

Lascia un cumentu

U vostru indirizzu email ùn serà micca publicatu. I campi obbligatori sò marcati *