為FPGA軟處理器選擇操作系統(tǒng)
一個簡單的便攜式媒體播放器示范了操作系統(tǒng)如何控制硬件,以及如何使用一個FPGA提供一系列改善硬件/軟件的權(quán)衡選擇。圖2從硬件的角度展示了播放器的功能。所需硬件的數(shù)量在很大程度上取決于所期望的系統(tǒng)響應(yīng)。有了RTOS,許多硬件模塊可以比在Linux應(yīng)用中簡單得多??偠灾?,FPGA的可編程邏輯為任何操作系統(tǒng)提供硬件權(quán)衡選擇。
圖2 從硬件角度觀察便攜式媒體播放器
設(shè)計者在系統(tǒng)中用什么附加硬件,和如何用附加硬件有更多的靈活性,這可以從軟件的角度來觀察,如圖3所示。
一個鍵盤掃描器或許可以作為RTOS任務(wù)來執(zhí)行,也作為硬件通過Linux任務(wù)來訪問。事實(shí)上,用硬件實(shí)現(xiàn)的鍵盤掃描器在系統(tǒng)中是隱藏的,因?yàn)樗话b在一個任務(wù)中。其優(yōu)點(diǎn)是大大減少了對操作系統(tǒng)的中斷。輕松地權(quán)衡添加硬件或者使用軟件為系統(tǒng)設(shè)計師帶來了一種新的靈活性。
圖3 從軟件角度觀察相同的便攜式媒體播放器
與FPGA相關(guān)的操作系統(tǒng)選擇
基于FPGA的應(yīng)用引入了一個將時間緊迫任務(wù)用硬件實(shí)現(xiàn)的重要方法,使選擇操作系統(tǒng)在時間約束方面得到緩解,參見圖4。這張圖顯示了本文中討論過的各種選擇的響應(yīng)范圍。因?yàn)樗强删幊踢壿嫞現(xiàn)PGA為設(shè)計者提供了精細(xì)的增量控制執(zhí)行。因?yàn)樗怯布?,它對?shí)時事件的響應(yīng)極快。如圖所示,該響應(yīng)可用于擴(kuò)大服務(wù)范圍,甚至更大的操作系統(tǒng)。
圖4 響應(yīng)范圍
結(jié)論
用可編程邏輯的SoC平臺的設(shè)計,如FPGA芯片里的LatticeMico32,給系統(tǒng)設(shè)計師提供了難得的機(jī)會,因?yàn)樗麄兛梢赃x擇自己喜歡的硬件支持和輕載功能。這使得系統(tǒng)設(shè)計師通過轉(zhuǎn)移軟件到FPGA中執(zhí)行數(shù)據(jù)路徑,來滿足時間上的限制。這一做法改變了對操作系統(tǒng)的標(biāo)準(zhǔn)選擇判據(jù),使得在實(shí)時操作系統(tǒng)和通用操作系統(tǒng)解決方案之間有更靈活的選擇。雖然商業(yè)實(shí)時操作系統(tǒng)在確定中斷響應(yīng)方面仍然有其優(yōu)勢,但通過使用FPGA中實(shí)現(xiàn)的減負(fù)引擎后,通用操作系統(tǒng)的解決方案(如Linux )可能成為適合于較大的應(yīng)用領(lǐng)域。“軟實(shí)時”的解決方案,如RT Linux或Xenomai,這時就顯得不那么理想了,因?yàn)槭褂脺p負(fù)引擎可以提供更好的響應(yīng)而沒有額外的工程費(fèi)用。
fpga相關(guān)文章:fpga是什么
linux相關(guān)文章:linux教程
p2p機(jī)相關(guān)文章:p2p原理
評論