關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > KeyStone存儲器架構

        KeyStone存儲器架構

        作者: 時間:2011-08-16 來源:網絡 收藏

        對于內部和外部,所有的數據 I/O 流量都可通過多條直接通道進入 MSMC 到達芯片,而不是通過 CorePac 控制器,從而在當數據 I/O 要訪問 CorePacs 當前沒有訪問(例如,當 CorePac 從 SL2 執行,而數據 I/O往返于 DDR3 時)的端點時,能使兩者處于完全正交的狀態;而且在 XMC 預取緩沖器后可提供判優以對 CorePacs 隱藏存儲器組之間的沖突。

        此外,XMC 還為數據和程序預取嵌入了多流預取緩沖器。程序預取緩沖器可為來自 L1P 和 L2 的讀取請求提供服務,從而使其能夠在 CPU 需要之前預取高達 128 字節的程序數據。數據預取緩沖器可為來自 L1D 和 L2 的讀取請求提供服務。數據預取單元能夠支持 8 個預取流,且每個流都能獨立地從地址增加方向或地址減少方向預取數據。針對進入 DSP 內核的數據流,預取功能能夠有助于減少強制失效損失。在多內核環境中,預取功能還能通過分散帶寬峰值來提升性能。為在不增加負面影響的情況下利用預取實現性能提升,可在 16MB 范圍內將存儲器配置為啟用或禁用預取屬性。
        外部存儲器效率——除了將外部存儲器連接到 MSMC 所帶來的優勢, 外部存儲器還包含了對外部存儲器控制器 (EMIF) 的顯著改進。 能夠以 1333MT/s以上的速率支持高性能 DDR3 SDRAM 存儲器。雖然總線能配置成 16 或 32 位(為節省面板空間和功耗),但其實際支持的總線寬高達 64 位數據寬度。該相對于之前的具有更大的寬度以及更快的速度,從而允許集成多個更高性能的內核、加速器和數據 I/O。

        高速緩存一致性控制——通常在多內核器件以及多器件系統內,數據作為處理的一部分在內核之間共享。 架構可提供一些改進措施,以簡化共享內部與外部存儲器的一致性管理操作。

        在 KeyStone 架構中,LL2 存儲器始終與 L1D 高速緩存保持一致,所以不需要對一致性管理進行特殊的配置(雖然利用 L1D 一致性命令可實現一些性能優化)。SL2 和 SL3 這兩種共享存儲器不能由硬件來保障與 L1 和 L2 高速緩存的同步。因此需要軟件控制往返于數據 I/O 頁面的傳輸,以及對多內核之間共享緩沖器的訪問。

        為簡化該過程,已將 fence 操作作為新的 MFENCE 指令添加到 CorePac 中。當與簡單的 CPU 環路組合使用時,能將 MFENCE 用于實施 fence 操作,以保障讀/寫訪問群組之間的序列一致性。能將其用于對可能從不同路徑到達的特定端點的存儲器請求進行同步。此外,對于多處理器算法,還可將其用于以特定順序實現對存儲器的存取,而這-順序從所有 CPU 角度來看都一樣。這可大幅簡化共享數據段所需的一致性協議。

        共享存儲器保護與地址擴展 — C64x+ 和 C67x DSP 架構均將存儲器保護作為內部存儲器設計(L1、L2、SL2)的一部分。KeyStone 架構將存儲器保護擴展至外部存儲器,同時還增強了對內部存儲器進行保護的靈活性。另外,MSMC 允許將外部存儲器的地址空間從 32 位擴展至 36 位。

        可為每個 C66x DSP 分配唯一的權限 ID (PrivlD) 值。可為數據 I/O 主系統分配一個 PrivID,EDMA 則例外,但它可以繼承為每次傳輸進行配置的主系統的 PrivID 值。KeyStone 器件總共可支持 16 個 PrivID 值。存儲器保護屬性分別為管理員用戶和普通用戶分配了讀/寫/執行訪問權限。

        局域存儲器的存儲保護 —— C66x CorePac可提供由軟件控制的請求者到存儲器映射的靈活性,從而進一步擴展了此前 C6000 架構的存儲器保護協議。所有存儲器請求者(C66x CPU、EDMA、導航器、PCIe、SRIO 等)均擁有相關聯的特權 ID。內部存儲器控制器可以區分多達 6 個不同的請求者,并配置所有其他請求者。由于 KeyStone 器件集成了更多的內核以及更多的 DMA 主系統(I/O 和加速器),這一數目已不夠用。KeyStone CorePac 允許將系統主控器的 ID 映射到保護邏輯中使用的 ID,以使應用能夠獲得量身打造的強大保護功能。

        QQ截圖未命名4.jpg

        圖 4 - 存儲器保護屬性

        共享存儲器的存儲器保護 —— 共享存儲器擁有多個存儲器保護和地址擴展 (MPAX) 單元。C66x DSP 可通過 XMC 中的局域 MPAX 訪問 MSMC 通道,而數據 I/O 則通過 MSMC 中的MPAX 邏輯訪問 MSMC,并分別對內部共享存儲器和外部存儲器進行控制。

        MPAX 單元將存儲器保護和地址擴展結合成一步完成。正如對局域存儲器的訪問一樣,MPAX 的運行基礎為每個交易事務承載的特權 ID,用以代表存儲器的請求者。對于每個 PrivID,相關聯的 MPAX 單元在內部共享存儲器和外部存儲器中均支持最多 16 個存儲段的定義。每個存儲段均獨立配置,并提供各自的存儲器保護地址擴展屬性。每個存儲段的大小可以是2 的任意次方,范圍介于 4KB 到 4GB 之間。地址擴展功能可將外部存儲空間從 32 位地址擴展至 36 位。

        QQ截圖未命名5.jpg
        圖 5 – MSMC 地址擴展

        存儲器段的地址區間定義非常靈活,而且能夠重疊以創建尺寸為非 2 的指數次方大小的段以及附加的存儲器區域。



        關鍵詞: KeyStone 存儲器 架構

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 遂昌县| 皋兰县| 花莲县| 西安市| 驻马店市| 元氏县| 连平县| 桓台县| 曲松县| 和顺县| 大同县| 霍山县| 郓城县| 旺苍县| 钟山县| 天水市| 黄浦区| 宣城市| 固阳县| 三门县| 右玉县| 镇康县| 汶川县| 林口县| 清徐县| 扎囊县| 江西省| 平遥县| 万年县| 观塘区| 休宁县| 修文县| 岳西县| 新津县| 宜兰县| 盐山县| 望奎县| 荆门市| 茶陵县| 儋州市| 海口市|