新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 滿足嵌入式系統應用的多核處理器SoC設計

        滿足嵌入式系統應用的多核處理器SoC設計

        作者: 時間:2010-05-11 來源:網絡 收藏

          1. 這個架構是兩套完全獨立的單處理器系統的簡單擴展,是通過將系統與通信元件連接在一起實現的。

          2. 共享元件全部采用多端口(或者雙端口)結構。這些元件的多端口特性使得每個處理器的系統總線在靜態和動態負載方面都獨立于其他總線。通過隔離各個處理子系統,您可以確保系統總線不會因為一個處理器的事務執行而不能給另一個處理器或者外設使用。所有的多端口外設都在內部完成不同端口上的訪問仲裁。

          3. 關鍵共享外設是多端口存儲器控制器(MPMC)。MPMC通過不同的端口接口訪問外部存儲器。多個處理器可以通過獨立端口連接到MPMC上。這種拓撲使得PowerPC和處理器能夠以最小的延遲和高帶寬同時訪問外部存儲器。MPMC目前最多可以提供8個端口,這樣就可以將三到四個處理器連接到一個外部存儲器上。

          4. 這個架構還可以在處理器之間共享內部塊RAM存儲器。片上塊RAM共享是一種在處理器之間傳輸KB尺寸數據的高速方式。塊RAM的訪問也可以是確定性的,這對于某些應用而言是一個重要要求。

          5. 除了共享存儲器外,還有另外2個內核 - XPS Mailbox和XPS Mutex,它們可以提供形式簡單的處理器間通信。XPS Mailbox內核以同步或異步方式為兩個處理器提供低延遲、FIFO風格的消息傳遞接口。它可用于直接傳送消息或者用于傳送共享存儲器中存儲的消息指針。您可以使用XPS Mutex內核在2個處理器上為軟件共享資源(無論它們是片上資源還是片外資源)的訪問進行仲裁。總的來說,這些內核可幫助您在每個處理器上創建協作軟件程序。

          6. 一些系統可能期望共享非多端口外設(比如UART、SPI或I2C)。這種情況需要在沒有連至外設的總線和連至外設的總線之間提供一個系統總線橋。圖1給出了一個在兩個處理器之間共享UART的總線橋的應用情況。

          7. 圖1特意指出PowerPC405是第一處理器,是第二處理器,以說明每個處理器的某些特性。然而,經過很小的改動就可以將任何一個處理器替換成其他的處理器。因此這個架構可以在不同的處理器之間實現無縫轉換。

          雖然圖1給出了推薦的整體多處理架構,但是不同的約束可能需要您進一步改善該架構。例如,在邏輯面積和資源使用是關鍵考慮因素的系統中,所有處理器都可以連接到相同的系統總線上。雖然這降低了系統的確定性,增加了總線的運行負載,但是它通過消除新的系統總線以及消除IP的多端口需求而節省了面積。

          還可實現其他衍生架構,例如在獨立系統總線上連接一個高性能處理器,或在共享系統總線上連接多個低性能處理器。您還可以通過利用多級橋連接處理子系統來創建層次化拓撲。EDK所提供的各種工具和IP可以幫助你進一步優化這個基本拓撲,直到其滿足您的需要為止。

          其他考慮因素

          通常情況下,多處理器架構還需要考慮其他一些因素。例如,您需要在兩個處理器之間以非沖突方式定義存儲器映射。EDK提供的自動地址生成工具將這一任務簡化成簡單的按鈕操作。

          您也需要考慮您的時鐘和復位網絡。您可以選擇給所有處理器提供相同速率的時鐘,或者讓每個處理器使用不同的時鐘域。同樣,您也可以將復位域定義在不同層次上,例如僅處理器復位、處理器子系統復位和系統復位。處理器必須獨立連至調試端口,從而能為每個處理器創建一個獨立的調試進程。

          除了硬件因素,還需要設計軟件系統,以便它們能夠協同運轉。這包括使用共享存儲器、消息傳遞以及一些常見的同步概念,例如屏障(barrier)和會合(rendezvous)等,從而使系統以可預測性和同步的方式運行。市場上也有商用軟件棧可以提供更高級的通信范例。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 乌苏市| 东丽区| 汝阳县| 清河县| 府谷县| 溧阳市| 进贤县| 黑河市| 新沂市| 漾濞| 镇坪县| 青神县| 浦城县| 剑河县| 西充县| 黑龙江省| 客服| 沅江市| 北安市| 宜州市| 唐海县| 民县| 定兴县| 肥城市| 萨嘎县| 鸡泽县| 伊金霍洛旗| 柏乡县| 吉林省| 长岛县| 德庆县| 西林县| 伊宁市| 高台县| 延寿县| 堆龙德庆县| 洛宁县| 桃园市| 罗甸县| 漳州市| 和田市|