新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于MicroBlaze軟核的FPGA片上系統設計

        基于MicroBlaze軟核的FPGA片上系統設計

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

          (1)片上外設總線(OPB)

        本文引用地址:http://www.104case.com/article/267948.htm

          內核通過片上外設總線(OPB)來訪問低速和低性能的系統資源。OPB是一種完全同步總線,它的功能處于一個單獨的總線層級。它不是直接連接到處理器內核的。OPB接口提供分離的32位地址總線和32位數據總線。處理器內核可以借助“PLB to OPB”橋,通過OPB訪問從外設。作為OPB總線控制器的外設可以借助“OPB to PLB”橋,通過PLB訪問存儲器。

          

         

          (2)處理器本機總線(PLB)

          PLB接口為指令和數據一側提供獨立的32位地址和64位數據總線。PLB支持具有PLB總線接口的主機和從機通過PLB信號連接來進行讀寫數據的傳輸。總線架構支持多主從設備。每一個PLB主機通過獨立的地址總線、讀數據總線和寫數據總線與PLB連接。PLB從機通過共享但分離的地址總線、讀數據總線和寫數據總線與PLB連接,對于每一個數據總線都有一個復雜的傳輸控制和狀態信號。為了允許主機通過競爭來獲得總線的所有權,有一個中央判決機構來授權對PLB的訪問。

          (3)設備控制寄存器總線(DCR)

          設備控制寄存器總線(DCR)是為在CPU通用寄存器(GPRs)和DCR的從邏輯設備控制寄存器(DCRs)之間傳輸數據而設計的。

          

         

          3 的開發

          應用EDK(嵌入式開發套件)可以進行 IP核的開發。工具包中集成了硬件平臺生產器、軟件平臺產生器、仿真模型生成器、軟件編譯器和軟件調試工具等。EDK中提供一個集成開發環境XPS(平臺工作室),以便使用系統提供的所有工具,完成嵌入式系統開發的整個流程。EDK中還帶有一些外設接口的IP核,如LMB、OPB總線接口、外部存儲控制器、SDRAM控制器、UART、中斷控制器、定時器等。利用這些資源,可以構建一個較為完善的嵌入式微處理器系統。

          在上設計的嵌入式系統層次結構為5級。可在最低層硬件資源上開發IP核,或或已開發的IP核搭建嵌入式系統,這是硬件開發部件;開發IP核的設備驅動、應用接口(API)和應用層(算法),屬軟件開發內容。

          利用構建基本的嵌入式系統如圖5所示。通過標準總線接口—LMB總線和OPB總線的IP核,MicroBlaze就可以和各種外設IP核相連。

          EDK中提供的IP核均有相應的設備驅動和應用接口,使用者只需利用相應的函數庫,就可以編寫自己的應用軟件和算法程序。對于用戶自己開發的IP核,需要自己編寫相應的驅動和接口函數。軟件設計流程如圖6所示。

          

         

          4 MicroBlaze的應用

          在軟件無線電系統中,一般采用“微處理器+協處理器”結構。微處理器一般使用通用DSP,主要完成系統通信和基帶處理等工作;協處理器用實現,主要完成同步和預處理等底層算法的運算任務。在本課題中,采用的基帶處理算法比較簡單,應用軟處理器IP核代替DSP,在一片內就能實現整個系統的設計。這樣可以簡化系統的結構,提高系統的整體性能。

          本課題的系統設計如圖7和圖8所示,FPGA片上系統主要完成兩個任務—發送和接收數據。對于發送任務,FPGA完成硬件算法的初始化,接收串口數據,并將數據存儲在雙口SRAM中,系統硬件算法部分對雙口SRAM中數據進行基帶處理,并將結果送給D/A轉換器。對于接收任務,FPGA接收A/D轉換器送來的數據,進行基帶處理,并將數據存儲在雙口SRAM中,把存儲在雙口SRAM中的數據通過串口發送回主機。

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




        關鍵詞: MicroBlaze Xilinx FPGA

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 清新县| 达州市| 邓州市| 犍为县| 新化县| 琼海市| 绥滨县| 兴义市| 正宁县| 新宾| 龙川县| 大兴区| 乌拉特中旗| 佛山市| 舒兰市| 兰西县| 衡东县| 定日县| 澄江县| 新丰县| 苗栗县| 密云县| 永德县| 清远市| 呼玛县| 石屏县| 桂平市| 隆尧县| 宜章县| 临海市| 攀枝花市| 肥城市| 关岭| 肥东县| 衡山县| 万山特区| 彩票| 玉山县| 余江县| 许昌市| 县级市|