Altifigence Academy
數位設計免費 · 中階

RTL 設計:資料路徑與管線

先訂定數值與週期契約,再設計 ALU、控制器、管線,以及 ready-valid 緩衝。四個可執行的參考模型實作,會在串流運算總整實作之前,檢查算術邊界、停頓、FIFO 與順序。

資料路徑管線Ready-validFIFO功能驗證
我的學習

您將學到什麼

  • 區分位元寬度、正負號解讀、進位與溢位契約
  • 安排暫存器傳輸、FSM 控制與同步記憶體的時序
  • 計算延遲、吞吐量與啟動間隔
  • 處理 ready-valid 停頓與 FIFO 邊界,避免資料遺失
  • 建立涵蓋相依危障與重設的計分板檢查
  • 以獨立模型驗證串流運算總整實作

開始之前

瀏覽器練習使用教學模型,不會編譯或執行 HDL。如需另外執行提供的原始碼,請依照適用於您作業系統的 Digital Design Studio 指南,並在操作要求時登入。

安裝與首次啟動 ↗ · 下載 ↗

課程大綱

  1. 數值與算術契約
    • 將方程式轉成資料路徑契約概念

      在算術規則之外,同時訂定位元寬度、接受事件與有效結果。

    • 位元寬度、符號延伸與溢位概念

      使用數值範例區分解讀方式、延伸與縮窄。

    • 實作:八位元 ALU 參考模型實作

      以獨立可執行程式檢查 ADD、SUB、AND、XOR、進位與借位。

    • 檢核:進位與有號溢位理解測驗

      區分無號與有號解讀下的數值邊界。

  2. 暫存器傳輸與控制
    • 在時脈邊緣解讀暫存器傳輸概念

      區分舊狀態與下一個狀態,並追蹤致能訊號如何保留儲存值。

    • 使用 FSM 安排共用資源概念

      以一個加法器累加四個數值,同時訂定狀態轉移與擷取時機。

    • 記憶體請求與回應的時序契約概念

      區分同步讀取、延遲標籤與同位址衝突。

    • 檢核:保留已完成的結果理解測驗

      區分 DONE 狀態的交付與下一筆請求的接受。

  3. 管線時序與吞吐量
    • 在管線分界儲存完整交易概念

      將加總與縮放算術拆開,同時對齊 valid、標籤與位元寬度。

    • 延遲、吞吐量與啟動間隔概念

      分開計算單筆交易的延遲與持續完成速率。

    • 實作:追蹤兩級管線與空泡實作

      由舊狀態計算下一個狀態,並比較輸出標籤、數值與邊緣。

    • 檢核:II=1 的意義理解測驗

      避免混淆級數與持續吞吐量。

  4. Ready-valid 流量控制
    • 接受事件與停頓期間的穩定性概念

      分配來源端與接收端責任,並保留停頓的負載內容。

    • 設計單槽彈性暫存器概念

      在空槽接受資料,或替換同時被消費的項目。

    • 實作:檢查 1024 種停頓樣式實作

      以所有十週期 ready 樣式測試保持、替換與清空。

    • 檢核:計算停頓交易理解測驗

      區分 valid 持續時間與實際交握次數。

  5. FIFO 與相依危障邊界
    • FIFO 空、滿與同時傳輸概念

      區分占用量與指標,並訂定邊界的推入與取出行為。

    • 相依性、資源危障與轉送概念

      操作需要先前結果時,比較停頓與轉送。

    • 在清除與重設中維持交易計數概念

      區分取消與交付,並將有效狀態與預期佇列對齊。

    • 檢核:滿 FIFO 中的替換理解測驗

      計算同時推入與取出時的占用量及順序。

  6. 驗證與串流計算器
    • 結合計分板與局部不變條件概念

      依被接受交易檢查數值、順序、占用量與停頓穩定性。

    • 總整實作:FIFO 與兩級串流計算器實作

      連接深度二的輸入 FIFO、兩個彈性級與計分板。

    • 量測效能並審查設計概念

      指定觀測時間窗、診斷停頓,並界定模型證據範圍。

    • 最終檢核:無遺失停頓與排空理解測驗

      結合算術、尚未完成工作計數與完成條件。

此選擇適用於本瀏覽器,隨時可從頁尾變更。