使用者工具

網站工具


ddr5_spd_i3c_study

差異處

這裏顯示兩個版本的差異處。

連向這個比對檢視

ddr5_spd_i3c_study [2024/06/26 09:38] (目前版本)
don 建立
行 1: 行 1:
 +====== DDR5 SPD I3C 研究 ======
  
 +DDR5 SPD 採用 I3C 介面進行定址,而非 DDR4 的 SPD 介面。I3C 介面是一種雙向、兩線式匯流排,\\
 +可同時傳輸資料和時鐘訊號。DDR5 SPD 晶片具有兩個 I3C 埠,分別用於與記憶體控制器和 PMIC 晶片進行通訊。\\
 +
 +DDR5 SPD 晶片的 I3C 地址為 7 位元,範圍為 0x00 到 0x7F。\\
 +記憶體控制器可透過 I3C 介面對 SPD 晶片進行讀寫操作,以獲取或設定 SPD 數據。\\
 +
 +以下是 DDR5 SPD 晶片的 I3C 地址分配:\\
 +
 +  * 無序列表項目0x00-0x3F:保留供記憶體控制器使用
 +  * 無序列表項目0x40-0x7F:供 PMIC 晶片使用
 +
 +記憶體控制器可透過 I3C 介面向 SPD 晶片發送以下命令:
 +
 +讀命令:讀取 SPD 數據
 +寫命令:設定 SPD 數據
 +設備 ID 命令:獲取 SPD 晶片的設備 ID
 +
 +以下是 DDR5 SPD 晶片的 I3C 命令格式:
 +<code>
 +讀命令:
 +[Start Bit] [Slave Address] [Command Code] [Address] [Data Length] [Stop Bit]
 +寫命令:
 +[Start Bit] [Slave Address] [Command Code] [Address] [Data] [Stop Bit]
 +設備 ID 命令:
 +[Start Bit] [Slave Address] [Command Code] [Stop Bit]
 +</code>
 +其中:
 +Start Bit:表示命令的開始
 +Slave Address:SPD 晶片的 I3C 地址
 +Command Code:命令代碼
 +Address:要讀取或設定的 SPD 數據的地址
 +Data:要寫入 SPD 數據的資料
 +Data Length:要讀取的 SPD 數據的長度
 +Stop Bit:表示命令的結束
 +記憶體控制器可根據需要向 SPD 晶片發送上述命令,以獲取或設定所需的 SPD 數據。
 +
 +以下是一些 DDR5 SPD 晶片的 I3C 命令範例:
 +
 +讀取 SPD 數據:
 +[Start Bit] 0x40 0x00 0x00 0x10 [Stop Bit]
 +此命令將讀取 SPD 晶片中第 0x00 到第 0x0F 位元的數據,共 16 位元組。
 +
 +寫入 SPD 數據:
 +[Start Bit] 0x40 0x01 0x10 0x0A 0x00 0x00 0x00 0x00 0x00 0x00 [Stop Bit]
 +此命令將向 SPD 晶片中第 0x10 位元寫入值 0x0A,第 0x11 位元寫入值 0x00,第 0x12 位元寫入值 0x00,第 0x13 位元寫入值 0x00。
 +
 +獲取 SPD 晶片的設備 ID:
 +[Start Bit] 0x40 0x02 [Stop Bit]
 +此命令將獲取 SPD 晶片的設備 ID。
 +
 +記憶體控制器可透過上述命令獲取或設定所需的 SPD 數據,以正確初始化和優化系統記憶體通道。
 +
 +===== 每一根 DDR5 SPD 的位址如何決定 =====
 +
 +edit
 +顯示草稿
 +volume_up
 +
 +每一根 DDR5 SPD 的位址由以下因素決定:
 +
 +I3C 匯流排上的位置:DDR5 SPD 晶片具有兩個 I3C 埠,分別用於與記憶體控制器和 PMIC 晶片進行通訊。\\
 +每個 I3C 埠具有 0x00 到 0x7F 的 7 位元地址範圍。\\
 +SPD 晶片上的設備 ID:每個 SPD 晶片都具有唯一的設備 ID。設備 ID 用於區分不同的 SPD 晶片。\\
 +具體來說,DDR5 SPD 的位址由以下公式計算得出:\\
 +
 +位址 = I3C 埠地址 + 設備 ID \\
 +例如,如果一個 SPD 晶片位於 I3C 埠 1(地址為 0x40)上,其設備 ID 為 0x20,則該 SPD 晶片的位址為:\\
 +
 +  * 無序列表項目位址 = 0x40 + 0x20 = 0x60
 +記憶體控制器可透過 I3C 介面使用上述公式計算每個 SPD 晶片的位址,然後向該 SPD 晶片發送命令以獲取或設定所需的 SPD 數據。\\
 +
 +以下是一些 DDR5 SPD 位址的範例:\\
 +<code>
 +位於 I3C 埠 1(地址為 0x40)上的 SPD 晶片,其設備 ID 為 0x20:
 +位址 = 0x40 + 0x20 = 0x60
 +位於 I3C 埠 1(地址為 0x40)上的 SPD 晶片,其設備 ID 為 0x30:
 +位址 = 0x40 + 0x30 = 0x70
 +位於 I3C 埠 2(地址為 0x41)上的 SPD 晶片,其設備 ID 為 0x20:
 +位址 = 0x41 + 0x20 = 0x61
 +</code>
 +記憶體控制器可根據需要計算每個 SPD 晶片的位址,然後向該 SPD 晶片發送命令,以獲取或設定所需的 SPD 數據。\\
 +
 +
 +
 +
 +
 + 
ddr5_spd_i3c_study.txt · 上一次變更: 2024/06/26 09:38 由 don