intel Mailbox Client with Avalon Streaming Interface FPGA IP 用戶指南
具有 Avalon 串流媒體介面 FPGA IP 的英特爾郵箱用戶端

具有 Avalon® 串流媒體介面的郵箱用戶端 Intel FPGA IP Overview

具有 Avalon® 流介面英特爾® FPGA IP 的郵箱用戶端(具有 Avalon ST 用戶端 IP 的郵箱用戶端)可在您的自訂邏輯和安全設備管理器 (SDM) 之間提供通訊通道。您可以使用具有 Avalon ST IP 的郵箱用戶端來傳送命令封包並從 SDM 週邊模組接收回應封包。具有 Avalon ST IP 的郵箱用戶端定義了 SDM 運作的功能。

您的自訂邏輯可以使用此通訊通道從以下外圍模組接收資訊並存取快閃記憶體:

  • 晶片ID
  • 溫度感測器
  • 卷tag電子傳感器
  • 四路串列週邊介面 (SPI) 快閃記憶體

筆記: 在本使用者指南中,術語 Avalon ST 是 Avalon 流介面或 IP 的縮寫。

圖1。採用 Avalon ST IP 系統設計的郵件信箱用戶端
採用 Avalon ST IP 系統設計的郵件信箱用戶端

下圖顯示了具有 Avalon ST IP 的郵箱用戶端讀取晶片 ID 的應用程式。

數位 2。使用 Avalon ST IP 的郵件信箱用戶端讀取晶片 ID
使用 Avalon ST IP 的郵件信箱用戶端讀取晶片 ID

設備系列支持

下面列出了 Intel FPGA IP 的設備支援等級定義:

  • 預先支援 — IP 可用於此元件系列的模擬和編譯。時序模型包括基於早期佈局後資訊的延遲的初始工程估計。隨著晶片測試改善實際晶片和時序模型之間的相關性,時序模型可能會改變。您可以使用此IP 進行系統架構和資源利用研究、模擬、引腳輸出、系統延遲評估、基本時序評估(管道預算)和I/O 傳輸策略(資料路徑寬度、突發深度、I/O 標準交易)關閉)。
  • 初步支持 — 此 IP 已通過此裝置系列的初步時序模型進行驗證。此 IP 符合所有功能要求,但可能仍在對裝置系列進行時序分析。它可以謹慎地用於生產設計。
  • 最後支持 — 此 IP 已通過此裝置系列的最終時序模型進行驗證。此 IP 滿足此裝置系列的所有功能和時序要求,可用於生產設計。

表1。設備系列支持

設備系列 支援
英特爾Agilex™ 進步

筆記: 您無法使用 Avalon Streaming Interface Intel FPGA IP 來模擬郵件用戶端,因為該 IP 接收來自 SDM 的回應。為了驗證此 IP,英特爾建議您執行硬體評估。

相關資訊
具有 Avalon 流介面的郵件信箱用戶端 Intel FPGA IP 發行說明

參數

參數名稱 價值 描述
啟用狀態介面 開關 當您啟用此介面時,具有 Avalon 流介面 Intel FPGA IP 的郵箱用戶端將包含 command_status_invalid 訊號。當 command_status_invalid 置位時,您必須重設 IP。

介面
下圖說明了具有 Avalon Streaming Interface Intel FPGA IP 介面的郵箱用戶端:

圖3。具有 Avalon Streaming Interface Intel FPGA IP 介面的郵箱用戶端
具有 Avalon Streaming Interface Intel FPGA IP 介面的郵箱用戶端

有關 Avalon 流介面的更多信息,請參閱 Avalon 介面規範。
相關資訊
Avalon 接口規範

時鐘和重設介面

桌子 2。時鐘和重設介面

訊號名稱 方向 描述
輸入時鐘 輸入 這是 Avalon 流介面的時脈。最大頻率為 250 MHz。
重置中 輸入 這是高電平有效重設。置位 in_reset 以重設具有 Avalon 流介面 Intel FPGA IP 的郵件信箱用戶端(具有 Avalon ST IP 的郵件匣用戶端)。當 in_reset 訊號置位時,SDM 必須使用 Avalon ST IP 來刷新來自郵件信箱用戶端的所有待處理活動。 SDM繼續處理來自其他客戶端的命令。

為了確保具有 Avalon ST IP 的郵件匣用戶端在裝置進入使用者模式時正常運作,您的設計必須包含 Reset Release Intel FPGA IP 以保持重設,直到 FPGA 結構進入使用者模式。英特爾建議在將使用者重置或重置發布 IP 的輸出連接到

具有 Avalon ST IP 的郵箱用戶端的重置連接埠。若要實現重設同步器,請使用 Platform Designer 中提供的 Reset Bridge Intel FPGA IP。

筆記: 有關 Platform Designer 中的 IP 實例化和連接指南,請參閱遠端系統更新設計 Ex 所需的通訊和主機元件ampIntel Agilex 配置使用者指南中的該圖。

命令界面
使用 Avalon Streaming (Avalon ST) 介面向 SDM 發送指令。

表 3. 命令介面

訊號名稱 方向 描述
命令就緒 輸出 採用 Avalon ST Intel FPGA IP 的郵箱用戶端在準備好接收來自應用程式的命令時會斷言 command_ready。 Ready_latency 為 0 個週期。採用 Avalon ST 的郵件信箱用戶端可以在 command_ready 置位的相同週期內接受 command_data[31:0]。
命令有效 輸入 command_valid 訊號置位以指示command_data 有效。
命令資料[31:0] 輸入 command_data匯流排將命令驅動至SDM。命令的定義請參閱命令清單和說明。
命令包開始 輸入 command_startofpacket 在命令包的第一個週期中置位。
命令封包結束 輸入 command_endofpacket 在命令資料包的最後一個週期中斷言。

數位 4. Avalon ST 指令封包的時序
圖:m ST指令包

響應接口
SDM Avalon ST 用戶端 IP 使用回應介面向您的應用程式傳送回應。

表 4. 響應介面

信號5 方向 描述
回應就緒 輸入 只要應用邏輯能夠接收回應,它就可以斷言response_ready訊號。
響應有效 輸出 SDM斷言response_valid以指示response_data有效。
回應數據[31:0] 輸出 SDM驅動response_data以提供所請求的資訊。回應的第一個字是標識 SDM 提供的命令的標頭。參考 命令列表及說明 命令的定義。
響應資料包的開始 輸出 response_startofpacket 在回應資料包的第一個週期中置位。
回應資料包結束 輸出 response_endofpacket 在回應資料包的最後一個週期中置位。

圖 5. Avalon ST 回應資料包的時序
Avalon ST 回應資料包

命令狀態介面

表5。命令狀態介面

訊號名稱 方向 描述
命令狀態無效 輸出 command_status_invalid 斷言以指示錯誤。此訊號通常斷言以指示命令標頭中指定的命令的長度與發送的命令的長度不符。當 command_status_invalid 置位時,您的應用程式邏輯必須置位 in_reset 以重新啟動具有 Avalon 流介面 Intel FPGA IP 的郵箱用戶端。

圖 6. command_status_invalid 斷言後重置
圖:command_status_invalid 斷言

命令和回應

主機控制器透過郵箱客戶端 Intel FPGA IP 使用命令和回應資料包與 SDM 進行通訊。

命令和回應資料包的第一個字是提供有關命令或回應的基本資訊的標頭。

圖 7. 命令和響應頭格式
圖:命令和回應頭格式

筆記: 命令頭中的LENGTH欄位必須與對應命令的命令長度相符。
下表描述了標頭命令的欄位。

表 6. 命令和回應標頭說明

標頭 位元 描述
預訂的 [31:28] 預訂的。
ID [27:24] 命令 ID。回應標頭傳回命令標頭中指定的 ID。命令說明請參閱操作命令。
0 [23] 預訂的。
長度 [22:12] 標題後面的參數字數。如果為給定命令輸入了錯誤的參數字數,則 IP 會傳回錯誤。
如果命令頭中指定的命令長度與發送的字數不符。 IP 升高中斷狀態暫存器 (COMMAND_INVALID) 的位元 3,且必須重設郵件信箱用戶端。
預訂的 [11] 預訂的。必須設定為 0。
命令代碼/錯誤代碼 [10:0] 命令代碼指定命令。錯誤代碼指示命令是成功還是失敗。
在命令頭中,這些位元代表命令代碼。在回應頭中,這些位元代表錯誤代碼。如果指令成功,則錯誤碼為0。 錯誤代碼回應.

操作指令

重置四路 SPI 快閃記憶體
重要的:
對於 Intel Agilex 元件,您必須將串列快閃記憶體或四路 SPI 快閃記憶體複位接腳連接到 AS_nRST 引腳。 SDM 必須完全控制 QSPI 重設。請勿將 Quad SPI 重設引腳連接到任何外部主機.

表 7. 命令列表和說明

命令 代碼(十六進制) 命令長度 (1) 響應長度 (1) 描述
諾普 0 0 0 傳送 OK 狀態回應。
取得ID碼 10 0 1 回應包含一個參數,即 JTAG 設備的 IDCODE
取得_CHIPID 12 0 2 回應包含 64 位元 CHIPID 值,最低有效字在前。
取得使用者代碼 13 0 1 回應包含一個參數,即 32 位元 JTAG 配置位元流寫入設備的 USERCODE。
取得音量TAGE 18 1 n(2) GET_VOLTAGE 指令有一個參數,它是指定要讀取的通道的位元遮罩。位元 0 指定通道 0,位元 1 指定通道 1,依此類推。
此回應包括位元遮罩中設定的每個位元的單字參數。卷tag傳回的 e 是無符號定點數,二進位小數點以下 16 位元。對於前amp勒一卷tag0.75V 的 e 回傳 0x0000C000。 (3)
Intel Agilex 裝置具有單一磁碟區tag電子感測器。因此,回應總是一個字。
獲取_溫度 19 1 n(4) GET_TEMPERATURE 指令傳回您指定的核心結構或收發器通道位置的溫度。

對於 Intel Agilex 設備,使用sensor_req 參數指定位置。 Sensor_req 包括以下欄位:

  • 位[31:28]:保留。
  • 位[27:16]:感測器位置。指定 TSD 位置。
  • 位元[15:0]:感測器遮罩。指定要讀取指定感測器位置的感測器。回應針對每個請求的溫度包含一個單字。如果省略,此指令讀取通道 0。

傳回的溫度是一個有符號的固定值,二進位小數點以下 8 位。對於前amp例如,10°C 的溫度會回到 0x00000A00。溫度 -1.5°C 的 A 返回 0xFFFFFE80。
如果位元遮罩指定了無效位置,則該指令將傳回錯誤代碼,該代碼是 0x80000000 -0x800000FF 範圍內的任何值。
有關 Intel Agilex 設備,請參閱 Intel Agilex 電源管理使用者指南,以了解有關本地內建溫度感測器的更多資訊。

RSU_IMAGE_更新 5C 2 0 從資料來源(可以是工廠或應用程式映像)觸發重新配置。
持續…
  1. 該數字不包括命令或回應標頭。
  2. 對於支援讀取多個裝置的 Intel Agilex 設備,索引 n 與您在裝置上啟用的頻道數相符。
  3. 請參閱 英特爾 Agilex 電源管理使用者指南 有關溫度感測器通道和位置的詳細資訊。
  4. 索引 n 取決於感測器遮罩的數量。
命令 代碼(十六進制) 命令長度 (1) 響應長度 (1) 描述
此指令採用一個可選的 64 位元參數,用於指定快閃記憶體中的重配置資料位址。將參數傳送到 IP 時,首先傳送位元 [31:0],然後傳送位元 [63:32]。如果您不提供此參數,則其值假定為 0。
  • 位元[31:0]:應用程式映像的起始位址。
  • 位[63:32]:保留(寫為0)。

一旦設備處理該命令,它就會將回應標頭返回到回應 FIFO,然後再繼續重新配置設備。確保主機 PC 或主機控制器停止服務其他中斷,並專注於讀取回應標頭資料以指示命令成功完成。否則,一旦重新配置程序開始,主機 PC 或主機控制器可能無法接收回應。
一旦裝置繼續重新配置,外部主機和 FPGA 之間的連結就會遺失。如果您在設計中使用 PCIe,則需要重新列舉 PCIe 連結。
重要的: 重置四路 SPI 時,必須遵循中指定的說明 重置四路 SPI 快閃記憶體 第 9 頁。

RSU_GET_SPT 5A 0 4 RSU_GET_SPT 檢索 RSU 使用的兩個子分區表的四路 SPI 快閃記憶體位置:SPT0 和 SPT1。
4 個字的回應包含以下訊息:
單字 姓名 描述
0 SPT0[63:32] 四路 SPI 快閃記憶體中的 SPT0 位址。
1 SPT0[31:0]
2 SPT1[63:32] 四路 SPI 快閃記憶體中的 SPT1 位址。
3 SPT1[31:0]
配置_狀態 4 0 6 報告上次重新配置的狀態。配置過程中和配置後可以使用該指令查看配置狀態。回應包含以下資訊:
單字 概括 描述
0 狀態 描述最近的配置相關錯誤。當沒有配置錯誤時傳回 0。
錯誤欄位有 2 個欄位:
  • 高16位:主要錯誤代碼。
  • 低16位:次要錯誤代碼。

參見附錄: 配置狀態 郵箱客戶端 Intel 中的 RSU_STATUS 和 RSU_STATUS 錯誤代碼說明 FPGA知識產權  用戶指南了解更多信息。

1 Quartus版本 在 19.4 和 21.2 之間的 Intel Quartus® Prime 軟體版本中可用,此欄位顯示:
  • 位元[31:28]:最近使用的韌體或決策韌體副本的索引。可能的值為 0、1、2 和 3。
  • 位元[27:24]:保留
  • 位元[23:16]:值為“0”
在 Intel Quartus Prime 軟體版本 21.3 或更高版本中可用,Quartus 版本顯示:
  • 位元[31:28]:最近使用的韌體或決策韌體副本的索引。可能的值為 0、1、2 和 3。
  • 位元[27:24]:保留
  • 位元 [23:16]:Quartus 主要版本號
  • 位元[15:8]:Quartus 次要版本號
  • Bit [7:0]:Quartus 更新號

對於前amp在 Intel Quartus Prime 軟體版本 21.3.1 中,下列數值代表主要和次要 Quartus 版本號碼以及 Quartus 更新號碼:

  • 位[23:16] = 8'd21 = 8'h15
  • 位[15:8] = 8'd3 = 8'h3
  • 位[7:0] = 8'd1 = 8'h1
2 引腳狀態
  • 位元[31]:目前nSTATUS輸出值(低電位有效)
  • 位元[30]:偵測到的 nCONFIG 輸入值(低電位有效)
  • 位元[29:8]:保留
  • 位元[7:6]:配置時脈來源
    • 01 = 內部振盪器
    • 10 = OSC_CLK_1
  • 位元[5:3]:保留
  • 位元[2:0]:上電時的MSEL值
3 軟功能狀態 包含每個軟功能的值,即使您尚未將該功能指派給 SDM 引腳。
  • 位元[31:6]:保留
  • 位[5]:HPS_WARMRESET
  • 位[4]:HPS_COLDRESET
  • 位[3]:SEU_ERROR
  • 位元 [2]:CVP_DONE
  • 位元[1]:INIT_DONE
  • 位[0]:CONF_DONE
4 錯誤位置 包含錯誤位置。如果沒有錯誤則傳回 0。
5 錯誤詳情 包含錯誤詳細資訊。如果沒有錯誤則傳回 0。
RSU_狀態 5B 0 9 報告目前遠端系統升級狀態。配置過程中和配置完成後,可以使用該指令查看配置狀態。該命令返回以下回應:
單字 概括 描述

(繼續…。)

  1. 該數字不包括命令或回應標頭
0-1 當前圖像 目前運行的應用程式映像的閃存偏移量。
2-3 失敗的形象 最高優先權失敗應用程式映像的快閃記憶體偏移。如果快閃記憶體中有多個可用影像,則儲存第一個失敗影像的值。全 0 值表示沒有失敗的影像。如果沒有失敗的影像,則狀態資訊的剩餘字的剩餘部分不會儲存有效資訊。
筆記:nCONFIG 上的上升沿從 ASx4 重新配置,不會清除該欄位。只有當郵件信箱用戶端收到新的 RSU_IMAGE_UPDATE 指令並從更新映像成功設定時,才會更新有關失敗映像的資訊。
4 狀態 失敗圖像的失敗代碼。錯誤欄位有兩個部分:
  • 位元[31:16]:主要錯誤代碼
  • 位元[15:0]:次要錯誤代碼 如果沒有失敗,則傳回 0。參考

附錄:郵件信箱客戶端 Intel FPGA IP 使用者指南中的 CONFIG_STATUS 和 RSU_STATUS 錯誤代碼說明,以了解更多資訊。

5 版本 RSU介面版本和錯誤來源。
有關詳細信息,請參閱硬處理器系統遠端系統更新使用者指南中的 RSU 狀態和錯誤代碼部分。
6 錯誤位置 儲存失敗影像的錯誤位置。如果沒有錯誤則傳回 0。
7 錯誤詳情 儲存失敗影像的錯誤詳細資訊。如果沒有錯誤則傳回 0。
8 目前影像重試計數器 目前影像已嘗試重試的次數計數。計數器最初為 0。第一次重試後計數器設定為 1,第二次重試後計數器設定為 2。
在 Intel Quartus Prime Settings 中指定最大重試次數 File (.qsf)。指令為: set_global_assignment -name RSU_MAX_RETRY_COUNT 3. MAX_RETRY 計數器的有效值為 1-3。實際可用重試次數為 MAX_RETRY -1
此欄位是在 Intel Quartus Prime Pro Edition 軟體版本 19.3 中新增的。
持續…
  1. 該數字不包括命令或回應標頭。
RSU_NOTIFY 5D 1 0 清除 RSU_STATUS 回應中的所有錯誤訊息並重試計數器。單字參數具有以下欄位:
  • 0x00050000:清除目前重試計數器。重置目前重試計數器會將計數器重置為零,就像當前映像第一次成功載入一樣。
  • 0x00060000:清除錯誤狀態訊息。
  • 保留所有其他值。

此指令在 Intel Quartus Prime Pro Edition 軟體版本 19.3 之前不可用。

QSPI_OPEN 32 0 0 請求對四路 SPI 的獨佔存取。您可以在任何其他 QSPI 請求之前發出此請求。如果未使用四路 SPI 且 SDM 未配置元件,則 SDM 接受請求。
如果 SDM 授予存取權限,則傳回 OK。
SDM 向使用該信箱的用戶端授予獨佔存取權限。在活動用戶端使用 QSPI_CLOSE 指令放棄存取權之前,其他用戶端無法存取 Quad SPI。
預設情況下,在包含 HPS 的設計中,無法透過任何郵件信箱用戶端 IP 存取四路 SPI 快閃記憶體元件,除非您在 HPS 軟體設定中停用 QSPI。
重要的: 重置四路 SPI 時,必須遵循中指定的說明 重置四路 SPI 快閃記憶體 第 9 頁。
QSPI_關閉 33 0 0 關閉對四路 SPI 介面的獨佔存取。
重要的:重置四路 SPI 時,必須遵循中指定的說明 重置四路 SPI 快閃記憶體 第 9 頁。
QSPI_SET_CS 34 1 0 透過片選線指定連接的四路 SPI 設備之一。採用如下所述的單字參數
  • 位元[31:28]:要選擇的閃存設備。有關 nCSO[0:3] 引腳對應的值,請參閱以下資訊
    • 值 4'h0000 選擇對應於 nCSO[0] 的快閃記憶體。
    • 值 4'h0001 選擇對應於 nCSO[1] 的快閃記憶體。
    • 值 4'h0002 選擇對應於 nCSO[2] 的快閃記憶體。
    • 值 4'h0003 選擇對應的快閃記憶體 nCSO[3]。
  • 位[27:0]:保留(寫為0)。

筆記: Intel Agilex 或 Intel Stratix® 10 裝置支援一個 AS x4 快閃記憶體元件,用於透過連接到 nCSO[0] 的四路 SPI 裝置進行 AS 配置。裝置進入使用者模式後,您可以使用最多四個 AS x4 快閃記憶體與郵箱用戶端 IP 或 HPS 一起用作資料儲存。郵箱客戶端 IP 或 HPS 可以使用 nCSO[3:0] 存取四路 SPI 設備。
此指令對於 AS x4 設定方案是可選的,片選線遵循最後執行的 QSPI_SET_CS 指令或在 AS x0 設定後預設為 nCSO[4]。 JTAG 配置方案需要執行此命令來存取連接 SDM_IO 引腳的 QSPI 快閃記憶體。
使用 SDM_IO 引腳存取 QSPI 快閃記憶體元件僅適用於 AS x4 設定方案 JTAG 配置,以及針對 AS x4 配置編譯的設計。對於 Avalon 流介面 (Avalon ST) 設定方案,您必須將 QSPI 快閃記憶體連接到 GPIO 接腳。

持續…
  1. 該數字不包括命令或回應標頭
重要的: 重置四路 SPI 時,必須遵循中指定的說明 重置四路 SPI 快閃記憶體 第 9 頁。
QSPI_READ 3A 2 N 讀取連接的四路 SPI 設備。最大傳輸大小為 4 KB 或 1024 個字。
有兩個參數:
  • 四路 SPI 快閃記憶體位址(一個字)。位址必須是字對齊的。對於未對齊的位址,裝置傳回 0x1 錯誤代碼。
  • 要閱讀的字數(一個字)。

成功後,返回 OK,然後從四路 SPI 設備讀取資料。失敗回應傳回錯誤代碼。
對於部分成功的讀取,QSPI_READ 可能會錯誤地傳回 OK 狀態。
筆記: 當設備配置正在進行時,您無法執行 QSPI_READ 命令。
重要的:重置四路 SPI 時,必須遵循中指定的說明 重置四路 SPI 快閃記憶體 第 9 頁。

QSPI_寫 39 2+N 0 將資料寫入 Quad SPI 設備。最大傳輸大小為 4 KB 或 1024 個字。
採用三個參數:
  • 快閃記憶體位址偏移量(一個字)。寫入位址必須字對齊。
  • 要寫入的字數(一個字)。
  • 要寫入的資料(一個或多個字)。成功寫入會傳回 OK 回應碼。

若要準備記憶體進行寫入,請在發出此命令之前使用 QSPI_ERASE 命令。
筆記: 當設備配置正在進行時,您無法執行 QSPI_WRITE 命令。
重要的:重置四路 SPI 時,必須遵循中指定的說明 重置四路 SPI 快閃記憶體 第 9 頁。

QSPI_擦除 38 2 0 擦除四路 SPI 設備的 4/32/64 KB 扇區。有兩個參數:
  • 開始擦除的快閃記憶體位址偏移量(一個字)。根據要擦除的字數,起始位址必須是:
    • 如果要擦除的字數為 4x0,則 400 KB 對齊
    • 如果要擦除的字數為 32x0,則 2000 KB 對齊
    • 如果要擦除的字數為 64x0,則為 4000 KB 對齊 對於非 4/32/64 KB 對齊的位址傳回錯誤。
  • 要擦除的字數以以下倍數指定:
    • 0x400 擦除 4 KB(100 個字)的資料。該選項是最小擦除大小。
    • 0x2000 擦除 32 KB(500 個字)的數據
    • 0x4000 用於擦除 64 KB(1000 個字)的資料 成功擦除將傳回 OK 回應代碼。

重要的:重置四路 SPI 時,必須遵循中指定的說明 重置四路 SPI 快閃記憶體 第 9 頁。

QSPI_READ_DEVICE_REG 35 2 N 從四路 SPI 裝置讀取暫存器。最大讀取8位元組。有兩個參數:
  • 讀取命令的操作碼。
  • 要讀取的位元組數。
持續…
  1. 該數字不包括命令或回應標頭。
成功讀取將傳回 OK 回應碼,後面跟著從裝置讀取的資料。讀取的資料傳回為4位元組的倍數。如果要讀取的位元組不是 4 位元組的精確倍數,則用 4 位元組的倍數填充,直到下一個字邊界且填充的位元值為零。
重要的: 重置四路 SPI 時,必須遵循中指定的說明 重置四路 SPI 快閃記憶體 第 9 頁。
QSPI_WRITE_DEVICE_REG 36 2+N 0 寫入 Quad SPI 的暫存器。最大寫入8位元組。採用三個參數:
  • 寫入命令的操作碼。
  • 要寫入的位元組數。
  • 要寫入的資料。

若要執行磁區擦除或子磁區擦除,必須依照最高有效位元組 (MSB) 到最低有效位元組 (LSB) 的順序指定串列快閃記憶體位址,如下所示amp勒說明。
若要使用 QSPI_WRITE_DEVICE_REG 指令擦除位址 2x0FF04 處的 Micron 0000 Gb 快閃記憶體的磁區,請依 MSB 到 LSB 的順序寫入快閃位址,如下所示:
標題: 0x00003036 操作碼:0x000000DC
要寫入的位元組數: 0x00000004 快閃記憶體位址:0x0000FF04
成功寫入會傳回 OK 回應碼。該命令將不是 4 位元組倍數的資料填入下一個字邊界。該命令用零填充資料。
重要的:重置四路 SPI 時,必須遵循中指定的說明 重置四路 SPI 快閃記憶體 第 9 頁。

QSPI_SEND_DEVICE_OP 37 1 0 向四路 SPI 發送命令操作碼。採用一個參數:
  • 發送四路 SPI 設備的操作碼。

成功的命令會傳回 OK 回應代碼。
重要的:重置四路 SPI 時,必須遵循中指定的說明 重置四路 SPI 快閃記憶體 第 9 頁。

有關 CONFIG_STATUS 和 RSU_STATUS 主要和次要錯誤代碼說明,請參閱《郵箱客戶端 Intel FPGA IP 使用者指南》中的附錄:CONFIG_STATUS 和 RSU_STATUS 錯誤代碼說明。
相關資訊

錯誤代碼回應

表 8. 錯誤代碼

值(十六進制) 錯誤代碼回應 描述
0 OK 表明命令成功完成。
如果命令,例如
QSPI_READ 部分成功。
1 無效命令 表示目前載入的引導ROM無法解碼或識別命令代碼。
3 未知命令 表示目前載入的韌體無法解碼命令代碼。
4 INVALID_COMMAND_參數 表示命令格式不正確。對於前ample,標頭中的長度欄位設定無效。
6 COMMAND_INVALID_ON_ SOURCE 指示該指令來自未啟用該指令的來源。
8 CLIENT_ID_NO_MATCH 表示客戶端ID無法完成關閉quad SPI獨佔存取的請求。客戶端 ID 與目前獨佔存取四路 SPI 的現有客戶端不符。
9 無效地址 地址無效。此錯誤表示存在以下情況之一:
  • 未對齊的地址
  • 地址範圍問題
  • 讀取權限問題
  • 片選值無效,顯示值大於 3
  • RSU 情況下的地址無效
  • GET_VOL 的位元遮罩值無效TAGE指令
  • GET_TEMPERATURE 指令的頁面選擇無效
A AUTHENTICATION_FAIL 配置碼流簽章認證失敗。
B 暫停 此錯誤表示由於以下條件而逾時:
  • 命令
  • 等待 QSPI_READ 操作完成
  • 等待溫度感測器之一請求的溫度讀數。可能表示溫度感測器中存在潛在的硬體錯誤。
C HW_NOT_READY 表示有下列情況之一:
  • 硬體還沒準備好。可以指示初始化或配置問題。硬體可以參考quad SPI。
  • RSU 映像不用於設定 FPGA。
D 硬件錯誤 表示由於不可恢復的硬體錯誤,命令未成功完成。
80 – 8F 命令特定錯誤 指示由於您使用的 SDM 命令而導致的命令特定錯誤。
SDM

命令

錯誤名稱 錯誤代碼 描述
取得_CHIPID EFUSE_SYSTEM_FAILURE 0x82 指示 eFuse 快取指標無效。
QSPI_OPEN/ QSPI_CLOSE/ QSPI_SET_CS/

QSPI_READ_DEVICE_REG/

QSPI_HW_錯誤 0x80 指示 QSPI 快閃記憶體錯誤。此錯誤表示存在以下情況之一:
QSPI_WRITE_DEVICE_REG/

QSPI_SEND_DEVICE_OP/

QSPI_READ

  • QSPI flash片選設定問題
  • QSPI flash初始化問題
  • QSPI flash重置問題
  • QSPI 快閃記憶體設定更新問題
QSPI_ALREADY_OPEN 0x81 表示客戶端透過 QSPI_OPEN 指令對 QSPI flash 的獨佔存取已經開啟。
100 未配置 表明設備未配置。
1FF ALT_SDM_MBOX_RESP_DEVICE_BUSY 指示設備因以下用例而繁忙:
  • RSU:由於內部錯誤,韌體無法轉換到不同版本。
  • HPS:在 HPS 重新配置流程或 HPS 冷重置過程中,HPS 繁忙。
2FF ALT_SDM_MBOX_RESP_NO _ VALID_RESP_AVAILABLE 表示沒有可用的有效響應。
3FF ALT_SDM_MBOX_RESP_錯誤 一般錯誤。

錯誤代碼恢復
下表描述了從錯誤代碼中恢復的可能步驟。錯誤恢復取決於具體的用例。
表 9. 已知錯誤代碼的錯誤代碼恢復

價值 錯誤代碼回應 錯誤代碼恢復
4 INVALID_COMMAND_參數 重新發送命令標頭或帶有更正參數的參數標頭。
對於前amp文件中,確保標頭中的長度欄位設定以正確的值傳送。
6 COMMAND_INVALID_ON_SOURCE 從有效來源(例如 J)重新發送命令TAG、HPS 或芯織物。
8 CLIENT_ID_NO_MATCH 等待開啟quad SPI存取的用戶端完成其訪問,然後關閉對quad SPI的獨佔存取。
9 無效地址 可能的錯誤恢復步驟:
對於 GET_VOLTAGE 指令:傳送具有有效位元遮罩的指令。
對於 GET_TEMPERATURE 命令:發送帶有有效感測器位置和感測器遮罩的命令。
對於 QSPI 操作:
  • 發送具有有效片選的指令。
  • 使用有效的 QSPI 快閃記憶體位址發送命令。

對於 RSU:發送帶有工廠映像或應用程式的有效起始位址的命令。

B 暫停 可能的恢復步驟:

對於 GET_TEMPERATURE 命令:重試再次發送該命令。如果問題仍然存在,請重新配置或重新啟動裝置。

對於 QSPI 操作:檢查 QSPI 介面的訊號完整性並再次嘗試命令。

對於 HPS 重新啟動操作:重試再次發送命令。

C HW_NOT_READY 可能的恢復步驟:

對於 QSPI 操作:透過來源重新配置設備。確保用於建置設計的 IP 允許存取 QSPI 快閃記憶體。

對於 RSU:使用 RSU 映像配置設備。

80 QSPI_HW_錯誤 檢查QSPI介面訊號完整性,確保QSPI設備沒有損壞。
81 QSPI_ALREADY_OPEN 客戶端已經開啟了QSPI。繼續下一步操作。
82 EFUSE_SYSTEM_FAILURE 嘗試重新配置或重新啟動。如果重新配置或重新啟動後錯誤仍然存在,則裝置可能已損壞且無法復原。
100 未配置 發送配置 HPS 的位元流。
1FF ALT_SDM_MBOX_RESP_DEVICE_BUSY 可能的錯誤恢復步驟:

對於 QSPI 操作:等待正在進行的配置或其他客戶端完成操作。

對於 RSU:重新配置設備以從內部錯誤中恢復。

對於 HPS 重新啟動操作:等待透過 HPS 或 HPS 冷重置完成重新配置。

具有 Avalon 流介面的郵件信箱用戶端 Intel FPGA IP 使用者指南文件檔案

有關本用戶指南的最新版本和以前版本,請參閱 具有 Avalon 流介面的郵件信箱用戶端 Intel FPGA IP 使用者指南. 如果未列出 IP 或軟件版本,則適用先前 IP 或軟件版本的用戶指南。

IP 版本與最高 v19.1 的英特爾 Quartus Prime 設計套件軟件版本相同。 從 Intel Quartus Prime Design Suite 軟件版本 19.2 或更高版本開始,IP 核具有新的 IP 版本控制方案。

帶有 Avalon Streaming Interface 的郵箱用戶端 Intel FPGA IP 使用者指南的文件修訂歷史記錄

檔案版本 英特爾 Quartus Prime 版本 IP版本 變化
2022.09.26 22.3 1.0.1 進行了以下更改:
  • 更新了 GET_VOLTAGE 指令列中

命令列表和描述表。

  • 新增了對錶設備系列支援的註解。
  • 修改 QSPI_SET_CS 命令列表和描述表中的命令描述。
2022.04.04 22.1 1.0.1 更新了命令列表和描述表。
  • 更新了 CONFIG_STATUS 命令的引腳狀態描述。
  • 刪除了 REBOOT_HPS 指令。
2021.10.04 21.3 1.0.1 做了以下更改:
  • 修改 命令列表及說明 桌子。更新了描述:
    • 配置狀態
    • RSU_狀態
2021.06.21 21.2 1.0.1 進行了以下更改:
  • 修改 命令列表及說明 桌子。更新了描述:
    • RSU_狀態
    • QSPI_OPEN
    • QSPI_SET_CS
    • QSPI_擦除
2021.03.29 21.1 1.0.1 進行了以下更改:
  • 修改了 RSU_IMAGE_UPDATE 中的描述 命令列表及說明 桌子。
  • 重組 操作指令。刪除了 CONFIG_STATUS 和 RSU_STATUS 命令的主要和次要錯誤代碼描述。主要錯誤代碼和次要錯誤代碼現已記錄為附錄中 郵箱客戶端 Intel FPGA IP 使用者指南。
2020.12.14 20.4 1.0.1 進行了以下更改:
  • 新增了有關重置 QSPI 快閃記憶體的重要說明 操作指令 話題。
  • 更新了 命令列表及說明 表:
    • 修訂了 GET_TEMPERATURE 命令描述。
    • 修訂了 RSU_IMAGE_UPDATE 指令描述。
  • 新增了有關重置 QSPI 快閃記憶體的文字。
  • 新增了描述外部主機和 FPGA 之間行為的文字。
  • 刪除的文字: 如果裝置已經在處理設定指令,則傳回非零回應。
    • 更新了 QSPI_WRITE 和 QSPI_READ 描述,指定最大傳輸大小為 4 KB 或 1024 個字。
    • 將 QSPI_OPEN、QSPI_CLOSE 和 QSPI_SET_CS 的回應長度從 1 修正為 0 命令。
    • 修訂了 QSPI_OPEN、QSPI_WRITE、QSPI_READ_DEVICE_REG 和 QSPI_WRITE_DEVICE_REG 描述。
    • 新增了新指令:REBOOT_HPS。
  • 新增了新主題:錯誤代碼恢復。
2020.10.05 20.3 1.0.1
  • 更改了本使用者指南的標題 郵箱 Avalon 流介面用戶端 Intel FPGA IP 使用者指南 具有 Avalon 流介面的郵件信箱用戶端 Intel FPGA IP 使用者指南 由於 Intel Quartus Prime IP Catalog 中的 IP 名稱發生變更。
  • 全域更新所有 IP 名稱實例。
  • 修訂了 Intel Agilex 設備的 GET TEMPERATURE 命令描述 命令列表及說明 桌子。
  • 新增了有關重置同步器的建議 時鐘和重設介面 桌子。
  • 更新了 錯誤代碼 桌子。新增了新的錯誤代碼回應:
    • 硬件錯誤
    • 命令特定錯誤
  • 刪除了 溫度傳感器位置 話題。溫度感測器資訊可在 英特爾 Agilex 電源管理使用者指南.
2020.06.30 20.2 1.0.0
  • 更改了本使用者指南的標題 信箱 Avalon ST 用戶端 Intel FPGA IP 使用者指南 郵箱 Avalon 流介面用戶端 Intel FPGA IP 使用者指南.
  • 已重新命名主題標題 命令和響應頭 命令和回應.
  • 修訂了 ID、長度和命令代碼/錯誤代碼描述 命令和回應標頭說明 桌子。
  • 已重新命名主題標題 支持的命令 操作指令.
  • 修改了以下命令描述 命令列表及說明 表:
    • 獲取溫度
    • RSU_狀態
    • QSPI_SET_CS
  • 已重新命名主題標題 錯誤代碼 錯誤代碼回應.
  • 從中刪除了 UNKNOWN_BR 指令 錯誤代碼 桌子。
2020.04.13 20.1 1.0.0 進行了以下更改:
  • 添加了有關 GET_TEMPERATURE 命令的溫度感測器的信息,包括說明 TSD 位置的圖。
  • 新增了 RSU_NOTIFY 命令 命令代碼列表及說明 桌子。
  • 更新了 錯誤代碼 表:
    • 已將 INVALID_COMMAND_PARAMETERS 重新命名為 INVALID_LENGTH。
    • 將 COMMAND_INVALID_ON_SOURCE 十六進位值從 5 改為 6。
    • 將 CLIENT_ID_NO_MATCH 十六進位值從 6 改為 8。
    • 將 INVALID_ADDRESS 十六進位值從 7 變更為 9。
    • 新增了 AUTHENTICATION_FAIL 指令。
    • 將 TIMEOUT 十六進位值從 8 更改為 B。
    • 將 HW_NOT_READY 十六進位值從 9 改為 C。
2019.09.30 19.3 1.0.0 初次發布。

 如需回饋,請造訪:  FPGAtechdocfeedback@intel.com

 

文件/資源

具有 Avalon 串流媒體介面 FPGA IP 的英特爾郵箱用戶端 [pdf] 使用者指南
具有 Avalon 流介面 FPGA IP 的郵件匣客戶端, 郵件匣客戶端, Avalon 流介面 FPGA IP

參考

發表評論

您的電子郵件地址不會被公開。 必填欄位已標記 *