新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 為FPGA軟處理器選擇操作系統(tǒng)

為FPGA軟處理器選擇操作系統(tǒng)

作者: 時間:2011-05-29 來源:網(wǎng)絡(luò) 收藏
UNIX

本文引用地址:http://m.butianyuan.cn/article/150683.htm

  在過去幾年中,嵌入式應(yīng)用中采用的32位平臺的性能和功能得到了極大增強(qiáng)。今天,即使軟,如LatticeMico32提供達(dá)到50至100 DMIPS的計算能力。隨著可用資源的性能和功能的增強(qiáng),提供豐富的功能集和抽象層的已成為一種可行的可選嵌入式解決方案。UNIX提供了非常豐富的編程環(huán)境,對多的應(yīng)用有相當(dāng)?shù)囊?guī)模,以及在網(wǎng)絡(luò)的應(yīng)用方面擁有豐富的歷史。通過文件操作,它提供了一個統(tǒng)一的設(shè)備抽象層,使平臺之間的應(yīng)用可以快速移植。一些UNIX版本也可獲取開放源代碼授權(quán):Linux是最著名的變種,有非常龐大的用戶群體和許多嵌入式應(yīng)用(如WLAN路由器,打印機(jī),VoIP電話)。Linux系統(tǒng)甚至對不包括MMU (內(nèi)存管理單元)的處理器提供了有限的支持。各種BSD (伯克利軟件分發(fā))版本可能不太為人所知,但它們在許可證上限制較少。

  一些實時擴(kuò)展為Linux提供了在Linux執(zhí)行層的頂部(或者說,下面)的最佳的軟實時層。RT/ Linux、 RTAI和Xenomai是實時擴(kuò)展的例子。通過多種已知的API從其他的RTOS (在Xenomai,此功能被稱為“skins”),一些實時層輸出其功能 。

  Linux系統(tǒng)提供了豐富的應(yīng)用,可以很容易地集成到一個嵌入式應(yīng)用程序,如Web服務(wù)器,協(xié)議棧,數(shù)據(jù)庫引擎,圖形庫和網(wǎng)絡(luò)管理。這些功能可以添加到任何嵌入式應(yīng)用,而不需要“從草圖”開發(fā)。隨著Linux的先進(jìn)I/O子系統(tǒng)的出現(xiàn),和全面支持的非易失存儲技術(shù)(從閃存到SATA硬盤) ,甚至可以集成“大”的應(yīng)用(如在NAS應(yīng)用中,跟蹤照片的數(shù)據(jù)庫應(yīng)用)。

  廣泛使用的技術(shù),例如Linux,其中一個最大的好處是在互聯(lián)網(wǎng)上可獲取大量的可用信息,有許多專業(yè)設(shè)計公司可以提供專業(yè)服務(wù)。雖然源代碼的許可證是免費的,Linux的復(fù)雜性和大小會壓垮許多用戶。在這種情況下,專門設(shè)計公司,如Theobroma Systems可提供專業(yè)支持,培訓(xùn)和總承包設(shè)計服務(wù)。重要的是要記住,“開放源代碼組織”并不能給你提供工業(yè)質(zhì)量的支持,只有有經(jīng)驗的工程人員才行。

  使用解決方案時,有與大型操作系統(tǒng)如Linux相關(guān)的性能和響應(yīng)時間方面的問題,可以用硬件實現(xiàn)。在這種情況下,操作系統(tǒng)功能作為一種資源監(jiān)管,大部分關(guān)鍵時間工作用硬件來完成。這個方法的一個例子是在UART內(nèi)利用一個大的FIFO,以減少至操作系統(tǒng) 的中斷次數(shù)。當(dāng)然,此方法有一定的局限性和復(fù)雜性,但與一個專用的CPU芯片相比,有更多的靈活性。

  另一方案:使用可編程邏輯

  為系統(tǒng)設(shè)計者提供了一系列的權(quán)衡,這是現(xiàn)有的ASIC/ASSP解決方案無法提供的。正如圖1所示 ,當(dāng)一個處理器集成至時,設(shè)計者可以各種方式實現(xiàn)功能例如:

  * 軟件控制硬件

  * 僅軟件

  * 軟件功能,控制或數(shù)據(jù)流,通過硬件加速(SW/HW)

* 僅硬件,與CPU沒有直接的互動,但是硬件可與任何功能進(jìn)行交互。

  圖1 FPGA中的多種

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

fpga相關(guān)文章:fpga是什么


linux相關(guān)文章:linux教程


p2p機(jī)相關(guān)文章:p2p原理




評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉