《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > 基于龍芯2E的AMC處理器模塊設計
基于龍芯2E的AMC處理器模塊設計
岑 凡,邢 韜
摘要: 介紹基于國產通用處理器的嵌入式高級夾層卡(AMC)處理器模塊的設計和實現。該模塊以龍芯2E CPU為核心,板卡設計符合AMC規范,可以直接應用于符合新型先進電信計算構架規范的計算機系統。模塊配有適用于嵌入式系統互聯的串行RapidIO接口,可以提供充足的有效帶寬用于數據通信和系統配置。給出模塊的芯片組設計和軟件配置。
Abstract:
Key words :

1、概述

    龍芯系列CPU是中國科學院計算技術研究所自主研發的高性能通用CPU。龍芯2號超標量處理器及其IP系列主要面向桌面應用和部分高端嵌入式應用。其中,龍芯2E微處理器是一款實現64位MIPS III指令集的通用RISC處理器。其綜合性能已經達到高端奔騰III處理器以及中、低端奔騰4處理器的水平。目前,采用龍芯系列處理器的個人計算機、便攜式計算機和嵌入式計算機已經得到推廣。

    先進電信計算構架(Advanced Telecom ComputingArchitecture, ATCA)作為開放式、可互操作的電信行業標準,正在成長為新一代電信級模塊化通信平臺構架。目前,多種構架的主流處理器在此平臺上都有應用,如Intel公司的Xeon系列x86處理器,Freescale公司的MPC8xxx系列PowerPC處理器。本文介紹的采用龍芯2E處理器的高級夾層卡(Advanced Mezzanine Card, AMC)計算模塊是ATCA規范定義的標準模塊,可以直接應用于符合該規范的系統。基于ATCA的廣泛用途和良好的發展前景,這種模塊必將大大擴展龍芯系列處理器在電信服務、信號處理等高端領域的應用。

2、ATCA 系統

    2.1 ATCA平臺

    ATCA標準即先進的電信計算平臺,是為下一代融合通信及數據網絡的應用提供一個高性價比的、兼容的、可擴展的硬件構架,同時以模塊化結構的形式呈現,以支持符合現代傳輸需求的技術或應用。ATCA標準由一個核心規范PICMG3.0和一系列輔助規范組成。在核心規范中定義了機械結構、散熱管理、電源分配和系統管理,而輔助規范定義了多種交換互聯的構架。與同是PICMG(PCI Industrial Computer Manufacturers Group) 組織制定的前一代標準CompactPCI相比,ATCA提供了更大的帶寬、功率與更好的冷卻能力,節省了更多電路板面積,整合了基底層系統管理功能,同時也移除了可能導致單點失效的并行總線。表1列出了2代標準部分內容的比較。

    2.2 AMC模塊

    AMC適用于但不僅限于ATCA載板。其基本規范定義了機械結構、管理、供電、散熱和交換互聯。AMC通過GbE, PCI Express和Serial RapidIO等高性能串行通道互聯,支持熱插拔,不丟失數據。AMC模塊采用前操作方式,插拔過程不會對背板或其他板卡產生影響,擁有智能平臺管理接口(Intelligent Platform Management Interface, IPMI),保證ATCA載板與模塊之間的兼容。通過AMC可以實現模塊化設計并提高系統靈活性。又由于其性價比及其他優點,因此AMC越來越多地被看作設備中的現場可更換單元(Field Replaceable Units, FRU)。種類豐富的AMC以多樣的功能適用于廣泛的市場,尤其能夠滿足小型化和低成本的需求。AMC夾層卡的典型功能包括電信接口、處理器(CPU, DSP, FPGA)與存儲。

3、模塊整體框架

    該模塊是一個功能完整、可以獨立工作的小型化計算機系統。該系統主要由龍芯2E處理器、內存模塊、北橋和相應的外圍接口組成,其結構如圖1所示。

    龍芯2E處理器的外圍接口主要包括64位SYSAD 總線和DDR SDRAM控制器總線,系統其他接口均需要由橋片提供。為了使系統具備更加先進的通信接口和靈活配置的能力,采用FPGA作為北橋芯片的方案。利用FPGA具有豐富I/O資源的特點,通過對FPGA的開發,系統具有可以用于配置、監測和調試的RS232串口、以太網和JTAG-UART接口,同時還具備高帶寬、低延遲的高速RapidIO接口。其中,FPGA融合了傳統意義的北橋、南橋的部分功能,形成適合本模塊應用的接口芯片組。板載的Flash ROM用于存儲啟動程序、操作系統和其他用戶需要存放的代碼。

4、關鍵技術特點

    4.1 芯片組

    芯片組設計是實現模塊功能的重點和難點。由于本模塊中沒有分離的北橋和南橋,因此后文將其更準確地表示為“芯片組”。盡管處理器一直是研究和市場的熱點,但芯片組會直接影響最終系統的功能和性能,在系統中同樣具有十分重要的地位。

    龍芯2E處理器采用64位SYSAD總線,而ATCA和AMC規范定義了系統內互聯的標準是RapidIO、PCI Express、InfiniBand和交換式以太網等基于串行通信和包交換的通信協議。目前,實驗室已有的ATCA構架的實驗平臺是基于RapidIO協議構建的。因此,模塊設計規范化的要求和實際條件決定芯片組必須具備以下特征:
    (1)為處理器提供SYSAD總線接口;
    (2)為模塊提供串行RapidIO接口;
    (3)可以修改通信協議,以方便接入其他ATCA系統。

    市場上并沒有同時滿足前2條要求的ASIC產品,而第(3)條要求更需要芯片組有可重構的能力。基于此考慮,最終確定了FPGA的實現方案。

    對于大規模數字系統的設計,模塊化思想已經被公認為行之有效的設計方法。Altera公司的SOPC工具可以方便地幫助設計者實現模塊化設計。它提供了大量成熟的IP和公開的、可裁剪的Avalon總線。用戶只需將自己的獨特需求封裝成帶有Avalon接口的模塊,就可以集成到FPGA系統中,與其他通用部件協同工作。根據對芯片組功能的分析,利用SOPC工具,采用模塊化的方法設計并實現了基于FPGA的芯片組,其結構如圖2所示。其中,SYSAD2Avalon模塊實現了SYSAD總線到Avalon總線的轉換。龍芯2E處理器可以通過此模塊主動地訪問芯片組內的寄存器等資源,也可以連接到RapidIO, ETH等模塊,實現對外I/O通信。同時,由于龍芯2E處理器的2個特點:(1)集成了內存控制器;(2)系統總線(SYSAD)分為Master和Slave狀態,支持外部設備和DDRSDRAM的直接通信,因此SYSAD2Avalon模塊又可以將處理器掛載的內存在Avalon總線一側映射為一段地址空間,允許其他模塊主動訪問龍芯2E 的存儲空間。這種互易的主從關系決定了該模塊在Avalon總線一側同時具有一個主接口和一個從接口。在這種結構下需要注意的是,在系統設計時必須采取一定的保護措施,保證龍芯2E的內存免于錯誤或惡意的外部訪問。

    圖中陰影部分的NiosII處理器和片內存儲器可以方便地測試、驗證其他部分,而在AMC模塊接入ATCA系統后,可以將其移除,不會影響芯片組的功能。

    4.2 RapidIO

    RapidIO是一種高性能、低引腳數、基于包交換的系統級互聯協議。面向多種嵌入式互聯應用,其目標是建立緊耦合系統內的一種開放式互聯標準,主要是指芯片到芯片和電路板到電路板之間。主要針對的應用目標包括單片機、DSP、存儲器、網絡/通信處理器等。RapidIO目前支持存儲器映射I/O、端口訪問、系統維護和Cache一致性等6類十余種通信事務,可以支持的編程模式包括存儲器映射、基于端口的消息傳遞和全局共享存儲器。各種通信事務的絕大部分功能由硬件完成,對軟件是透明的。

    RapidIO協議共有3層層次結構,從高到低依次為:

    (1)邏輯層

    定義數據包格式及端點設備發起并完成1 次事務的必要信息。RapidIO交換機無須解釋流經的數據包,采用這種結構設計很容易實現未來擴展協議的兼容性。

    (2)傳輸層

    定義RapidIO的地址空間并為數據包在端點設備間傳輸提供必要的路由信息。

    (3)物理層

    描述設備級接口,明確說明數據包傳輸機制、流控機制、電氣特性和底層錯誤處理。物理層包括8位/16位并行接口標準和1×/4×串行接口標準。

    ATCA規范中支持的物理層接口為串行RapidIO。FPGA實現串行RapidIO接口有2種方式:(1)在內部實現完整的3 層協議的功能;(2)FPGA 實現上面2層,由外置的串行收發器實現物理層的功能。選用何種方式取決于FPGA是否內置了串行收發器。為了使電路設計簡潔,選用了內置串行收發器的Stratix II GX型FPGA。這種器件專為高速串行通信設計,內置的收發器可以支持高達6.375 Gb/s的速率。在高頻率的條件下,收發器的性能、設置和電路設計都會影響性能表現甚至功能實現。因此, 在接收端測量了模塊進行3.125 Gb/s串行RapidIO通信時的眼圖,見圖3。

    可以看出,收發器被設置為引入一定幅度的波形預加重,這樣可以更好地抵抗高頻衰減。眼圖張開的幅度滿足RapidIO規范要求的接收端200 mV的差分信號幅度。

    最終設計的模塊如圖4 所示。


圖4 龍芯2E處理器AMC模塊

    4.3 軟件部分

    為了支持功能應用的實現, 該處理器模塊配備了由BIOS(Basic I/O System)和Linux操作系統組成的軟件平臺。

    龍芯2號系列處理器的各種開發系統一直采用PMON作為BIOS,它具有功能強大、可擴展性好的優點。PMON作為最常用的MIPS處理器的BIOS,只要一個串口、512 KB ROM、128 KB RAM就能實現全部特性。它不僅支持BIOS啟動配置、內核加載,還支持程序調試、內存寄存器顯示和設置、內存反匯編等。在實際工作過程中,PMON首先對處理器和芯片組進行初始化,通過設置板級相關的寄存器對系統中的設備進行配置,然后從Flash存儲器中加載操作系統。由于PMON是與硬件結合最緊密的軟件,因此同時可以作為硬件調試的有力工具。

    操作系統采用了經過裁剪的2.6.18版Linux內核。由于RapidIO系統在啟動時會對所有節點進行枚舉,因此采取在內核中集成RapidIO驅動程序的方式。目前,Linux開發者已經設計了針對RapidIO網絡的驅動程序,沿用已有的構架,并針對自己的設備進行了移植。RapidIO互聯網絡上的Linux系統主要由4 個部分組成:

    (1)主端口(Master Port)

    Linux通過主端口向RapidIO 網絡進行各種通信事務。

    (2)設備(Device)

    設備是RapidIO網絡中定義的網絡節點。

    (3)交換機(Switch)

    交換機是一種特殊的設備,用于轉發節點間通信的數據。

    (4)網絡(Network)

    網絡是指由節點和交換機組成的互聯系統。

    每個部分分別被定義成一種數據結構,用于對硬件的抽象。RapidIO規范規定了系統初始化時發現和枚舉的算法和過程,這些數據結構在此過程中進行初始化,完備描述了整個網絡的情況。

    RapidIO子系統同樣基于2.6版的Linux內核設備模型(Lniux Device Model)。在實現過程中,需要將一條RapidIO總線注冊到子系統中,然后每一個設備再注冊為該總線的一個子節點。這一點與傳統的PCI總線設備相同。而特有的match和dev attrs函數分別實現了設備識別和寄存器數據結構映射的功能。

5、結束語

    本文所述的模塊在主頻759MHz的龍芯2E處理器條件下運行穩定,軟硬件協同工作正常。在ATCA系統中,與其他具有RapidIO接口的設備,包括Freescale公司的多款PowerPC處理器、FPGA和RapidIO交換芯片通信正常。實際應用表明,該模塊擴展了龍芯系列處理器的用途,是對高性能計算系統國產化進行的有益嘗試。

    為了使設計更加實用,今后將在以下2個方面進行深入的研究:

    (1)適當調整任務負載、工作頻率,對模塊在各種條件下的功耗、可靠性等指標進行完備的測試。

    (2)目前FPGA作為芯片組只應用了其I/O接口的功能,其邏輯資源還有較大余量。完全可以針對特定任務進行開發,使FPGA同時成為協處理器,分擔處理器的工作,這將大幅度提高模塊的整體性能。

    致謝 中國科學院計算技術研究所龍芯技術服務中心提供的技術支持和資料對本項目有很大的幫助,在此向他們表示衷心感謝。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 亚洲国产va| 免费人成激情视频在线观看冫 | 亚洲日本天堂在线 | 97超级碰碰碰 | 久久天天躁狠狠躁夜夜爽 | 一级特黄a 大片免费 | yellow网站在线观看 | 精品综合久久久久久8888 | 成人免费一区二区三区 | 免费国产一级特黄久久 | 日日摸人人拍人人澡 | 嫩模被xxxx视频在线观看 | 日本宅男午夜免费永久网站 | 一级在线播放 | 黄色在线看网站 | 三级黄色视屏 | 免费国产午夜在线观看 | 黄色片一级黄色片 | 国产精品天干天干在线观看澳门 | 天天操天天操天天操香蕉 | 波多野一区二区 | 黄色片免费在线观看 | 亚洲国产系列一区二区三区 | 香蕉视频免费版 | 成 人 黄 色 大 片全部 | 欧美又粗又硬又大久久久 | 国产欧美国产精品第一区 | 午夜剧场官网 | 午夜刺激视频 | 狠狠搞视频 | 伊人网站视频 | 色黄啪啪18周岁以下禁止观看 | 爆操在线 | 日韩精品视频网站 | 亚洲成人免费观看 | 国产小视频在线观看www | 天堂网一区二区 | 视频福利一区 | 国产精品1区 2区 3区 | 免费一级a毛片在线播 | 成人爽爽激情在线观看 |