<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統 > 設計應用 > Leon2微處理器IP核原理及應用

          Leon2微處理器IP核原理及應用

          作者: 時間:2015-05-09 來源:網絡 收藏

            引 言

          本文引用地址:http://www.ex-cimer.com/article/273879.htm

            是GaislerResearch公司于2003年研制完成的一款32位、符合IEEE-1754(SPARCVS)結構的處理器。它的前身是歐空局研制的Leon以及ERC32。的目標主要是權衡性能和價格、高的可靠性、可移植性、可擴展性、軟件兼容性等.其內部硬件資源可裁剪(可配置)、主要面向嵌入式系統,可以用FPGA/CPLD和ASIC等技術實現。處理器的片上資源如下:分離的指令和數據Cache、硬件乘法器和除法器、中斷控制器、具有跟蹤緩沖器的調試支持單元(DSU)、2個24位定時器、2個通用異步串口(UART)、低功耗模式、看門狗電路、16位I/O端口、靈活的存儲控制器、以太網MAC和PCI接口。Leon2的VHDL模塊可以在大多數綜合工具上進行綜合,可以在任何符合VHDL-87標準的仿真器上進行仿真;采用AMBA AHB/APB總線結構的用戶設計新模塊,可以很容易加入到Leon2中,完成用戶的定制應用。

            Leon2在歐洲和美國都有眾多的應用者;國內航天部77l所和中科院國家天文臺等單位正在研制基于Leon2的應用系統。為了使Leon2得到國內業(yè)界的了解和進一步的應用,本文將從Leon2的結構、技術特點、軟硬件的開發(fā)過程和應用實例等四個方面進行介紹。在技術特點中,主要介紹了它所遵循的SPARCV8規(guī)范、采用的AMBH2.0內部系統總線協議、容錯設計方法和VHDL編程風格等。

            1 Leon2的結構

            圖1是Leon2的片上結構框圖。整個系統結構由AMBA AHB和APB支撐,連接著SPARC處理器、Cache系統及片上外設等設備。

            

           

            (1)處理器單元

            處理器單元由整數單元IU、浮點單元FPU、協處理器單元CP構成。整數單元的特點有:5級指令流水、分離的數據和指令Cache、支持2~32個寄存器窗口、可選的4個觀察口寄存器、可配置乘法器、可選的16×16位MAC(40位累加器)、基2除法器??芍С值母↑c處理器有GaislerResearch的GRFPU,Sun Microsystems的Meiko FPU或其他通用浮點處理單元。Leon2提供了一個通用的用戶可定義的協處理器,同IU并行運行增強了系統功能。

            (2)Cache子系統

            可配置的模式有直接映射模式和2~4組相聯的多組相聯模式;可選的三種替換算法是LRU、LRR和偽隨機。

            (3)片上外設

            片上外設包括:2個中斷控制器、2個UART、2個Timer和1個Watchdog、16位的I/O口、存儲器控制器(PROM、SRAM、S13RAM)、PCI橋接器、Ethernet接口、高級片上調試支持單元(DSU)和跟蹤緩沖器等.中斷控制器可以最大處理46個內部和外部中斷。2個串行通信口 (UART),支持8位數據幀、1位校驗位、1位停止位,支持硬件流控功能。調試支持單元(DSU)能夠把處理器設置到調試模式,通過它可以讀寫處理器的所有寄存器和Cache。DSU還包括一個跟蹤緩存,可以保存已執(zhí)行了的指令和AHB上傳輸的數據。

            2 Leon2的技術特點

            Leon2的技術特點主要有:采用SPARCV8結構、采用內部AMBA總線結構、容錯設計和VHDL編程風格。

            2.1 SPARC V8

            SPARC是可擴展處理器體系架構的首字母縮略詞,是一個從RISC派生出的CPU指令集結構(ISA)。指令集結構是指:定義了指令、寄存器、指令和數據存儲器、指令執(zhí)行對寄存器和存儲器的影響、控制指令執(zhí)行的算法等內容,但不定義時鐘周期、每條指令的執(zhí)行時鐘周期數(CPI)、數據通路等內容。作為一個結構,SPARC允許在具有不同性能價格比的廣泛應用中,實現不同系列的芯片和系統,包括科學、工程、編程、實時和商業(yè)應用等。SPARC的設計目標是優(yōu)化編譯器和易于硬件流水線實現。

            SPARC處理器由整數單元(IU)、浮點和協處理器單元(FPU和CP)構成。它們各自都有自己的寄存器,其中IU有8個全局寄存器、2~3N個寄存器窗口(由用戶設定),浮點和協處理器單元的選擇依賴于具體應用。

            (1)寄存器窗口

            它是SPARC的最大技術特點。SPARC處理器包括兩種寄存器:一種是通用寄存器,另一種是控制/狀態(tài)寄存器。IU的通用寄存器叫r寄存器。一個IU的實現可能包括40~520個32位r寄存器。這些寄存器又被分成8個全局寄存器,再加上2~32個與實現有關的16位寄存器組,每一個寄存器組又進一步分為8個輸入寄存器和8個輸出寄存器。圖2是一個8窗口寄存器結構示意圖。在任何一個時刻,一條指令只能訪問8個全局寄存器和由當前窗口指針(CWP)指定的當前窗口。這個窗口是由8個輸入寄存器、8個局部寄存器和8個輸入寄存器構成。從圖2中可以看出,兩個相鄰窗口的入和出寄存器是共享的。當前是按窗口號順序(或前或后)轉換的,正好上一次的輸出寄存器成為當前窗口的輸入寄存器,這樣可以減少存儲器讀寫和運行時的現場保護。

            

           

            (2)支持的數據格式

            基本有三種:8/16/32/64位有符號整數、8/16/32/64位無符號整數、32/64/128位浮點數。浮點數格式符合ANSI/IEEE Standard 754-1985。

            (3)Traps

            它是一種矢量化的、通過一個包含每個陷阱句柄的前4條指令的特殊陷阱表,將控制轉向監(jiān)視軟件。陷阱種類有精確陷阱、延遲陷阱和中斷陷阱。

            (4)指令集有

            所有指令都編碼成32位格式,可以分成六個基本的類型,一共有72條指令。六種基本的指令分別是:①Load/store;②Arthmetic/logical/shift;③Control transfer;④Read/write control register;⑤Floating-point operate;⑥

            Coprocessor operate。

            (5)存儲器模式

            SPARC的存儲器模型定義了存儲器操作的語義,指定了處理器發(fā)射出這些操作的順序與這些指令被存儲器執(zhí)行的順序是如何進行關聯的。標準的存儲器模型叫作TSO(Total Store Ordering),所有的SPARC實現必須提供這個模型;另一個模型叫作PSO,它可以提供更高性能的存儲系統。

          c++相關文章:c++教程


          存儲器相關文章:存儲器原理


          矢量控制相關文章:矢量控制原理

          上一頁 1 2 下一頁

          關鍵詞: Leon2 IP核

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();