嵌入式軟件和FPGA:為黃金時(shí)間做好準(zhǔn)備的搭檔
發(fā)布時(shí)間:2007/8/15 0:00:00 訪問(wèn)次數(shù):1271
作者:David Stewart,CriticalBlue 公司
如果 FPGA 容易編程,F(xiàn)PGA就應(yīng)該成為嵌入式軟件開(kāi)發(fā)人員的天然硬件平臺(tái)。然而,F(xiàn)PGA 一直主要用于硬件工程領(lǐng)域。
目前,嵌入式軟件開(kāi)發(fā)人員依靠對(duì)自己開(kāi)發(fā)的系統(tǒng)重新迅速編程的能力。嵌入式軟件工程師需要處理產(chǎn)品錯(cuò)誤,并對(duì)迅速變化的市場(chǎng)要求做出反應(yīng),這已使可重新編程的微處理器成為他們的天然硬件平臺(tái)。重新編程能力很強(qiáng)的微處理器也可在成熟的工具鏈內(nèi)工作,因?yàn)檫@些工具鏈?zhǔn)骨度胧杰浖こ處熌茏詣?dòng)而又高效率地把源代碼映射到選定的微處理器體系結(jié)構(gòu)上。
這個(gè)模型很適用,直到微處理器不再能夠提供應(yīng)用系統(tǒng)所需要的數(shù)據(jù)處理功能為止。這時(shí),一般有必要開(kāi)發(fā)一種安裝于微處理器旁邊的硬件“助手”,它使用并行計(jì)算資源來(lái)加快關(guān)鍵的應(yīng)用瓶頸的速度。一種提供硬件重新編程能力甚至可能提供片上微處理器的 FPGA 結(jié)構(gòu),理應(yīng)是嵌入式軟件開(kāi)發(fā)人員在上述這些情況下的完美平臺(tái)。
糟糕的是,微處理器和 FPGA 之間的相似在這里起了壞作用。從嵌入式軟件到微處理器存在一條通暢的路線,而通往 FPGA 的通暢路線直到最近才出現(xiàn)。多個(gè)選擇都能使設(shè)計(jì)師從 RTL(寄存器傳輸級(jí))到達(dá) FPGA 結(jié)構(gòu),但從嵌入式軟件到 RTL 的路線則涉及若干資源密集型的人工活動(dòng)。需要加速的各種功能必須作為硬件模型用 C、SystemC 或 RTL 記錄下來(lái),然后,你需要定義和驗(yàn)證硬件加速器和主處理器之間的通信接口,這樣才能在項(xiàng)目的后期避免硬件集成問(wèn)題和軟件集成問(wèn)題。這種方法的復(fù)雜性令人望而生畏,足以阻止設(shè)計(jì)師在一些應(yīng)用系統(tǒng)中使用 FPGA,而FPGA在這些應(yīng)用系統(tǒng)中本來(lái)就是主處理器的天然硬件助手。
要想提供一條從嵌入式軟件到 RTL 的暢通路線,設(shè)計(jì)必須滿足兩個(gè)明顯的要求。首先,硬件助手的基礎(chǔ)體系結(jié)構(gòu)必須是真正的協(xié)處理器,換句話說(shuō),必須是一個(gè)處于主處理器控制下的可編程體系結(jié)構(gòu)。這項(xiàng)要求確保開(kāi)發(fā)人員在需要時(shí)能把豐富的嵌入式軟件語(yǔ)言移植到協(xié)處理器上,而且不必在他們選擇的編程語(yǔ)言中采用任何新的編碼風(fēng)格。其次,必不可少的是,嵌入式軟件開(kāi)發(fā)環(huán)境的輸出,也就是可執(zhí)行代碼,應(yīng)把移植路線推向 RTL。這項(xiàng)要求確保了系統(tǒng)公司的投資在開(kāi)發(fā)人員桌面環(huán)境中得到保護(hù),并允許自動(dòng)處理主處理器和協(xié)處理器之間的接口。
既然有一種方法能滿足上述要求,嵌入式軟件開(kāi)發(fā)人員終于可以把 FPGA 作為其產(chǎn)品的天然硬件平臺(tái)。
作者:David Stewart,CriticalBlue 公司
如果 FPGA 容易編程,F(xiàn)PGA就應(yīng)該成為嵌入式軟件開(kāi)發(fā)人員的天然硬件平臺(tái)。然而,F(xiàn)PGA 一直主要用于硬件工程領(lǐng)域。
目前,嵌入式軟件開(kāi)發(fā)人員依靠對(duì)自己開(kāi)發(fā)的系統(tǒng)重新迅速編程的能力。嵌入式軟件工程師需要處理產(chǎn)品錯(cuò)誤,并對(duì)迅速變化的市場(chǎng)要求做出反應(yīng),這已使可重新編程的微處理器成為他們的天然硬件平臺(tái)。重新編程能力很強(qiáng)的微處理器也可在成熟的工具鏈內(nèi)工作,因?yàn)檫@些工具鏈?zhǔn)骨度胧杰浖こ處熌茏詣?dòng)而又高效率地把源代碼映射到選定的微處理器體系結(jié)構(gòu)上。
這個(gè)模型很適用,直到微處理器不再能夠提供應(yīng)用系統(tǒng)所需要的數(shù)據(jù)處理功能為止。這時(shí),一般有必要開(kāi)發(fā)一種安裝于微處理器旁邊的硬件“助手”,它使用并行計(jì)算資源來(lái)加快關(guān)鍵的應(yīng)用瓶頸的速度。一種提供硬件重新編程能力甚至可能提供片上微處理器的 FPGA 結(jié)構(gòu),理應(yīng)是嵌入式軟件開(kāi)發(fā)人員在上述這些情況下的完美平臺(tái)。
糟糕的是,微處理器和 FPGA 之間的相似在這里起了壞作用。從嵌入式軟件到微處理器存在一條通暢的路線,而通往 FPGA 的通暢路線直到最近才出現(xiàn)。多個(gè)選擇都能使設(shè)計(jì)師從 RTL(寄存器傳輸級(jí))到達(dá) FPGA 結(jié)構(gòu),但從嵌入式軟件到 RTL 的路線則涉及若干資源密集型的人工活動(dòng)。需要加速的各種功能必須作為硬件模型用 C、SystemC 或 RTL 記錄下來(lái),然后,你需要定義和驗(yàn)證硬件加速器和主處理器之間的通信接口,這樣才能在項(xiàng)目的后期避免硬件集成問(wèn)題和軟件集成問(wèn)題。這種方法的復(fù)雜性令人望而生畏,足以阻止設(shè)計(jì)師在一些應(yīng)用系統(tǒng)中使用 FPGA,而FPGA在這些應(yīng)用系統(tǒng)中本來(lái)就是主處理器的天然硬件助手。
要想提供一條從嵌入式軟件到 RTL 的暢通路線,設(shè)計(jì)必須滿足兩個(gè)明顯的要求。首先,硬件助手的基礎(chǔ)體系結(jié)構(gòu)必須是真正的協(xié)處理器,換句話說(shuō),必須是一個(gè)處于主處理器控制下的可編程體系結(jié)構(gòu)。這項(xiàng)要求確保開(kāi)發(fā)人員在需要時(shí)能把豐富的嵌入式軟件語(yǔ)言移植到協(xié)處理器上,而且不必在他們選擇的編程語(yǔ)言中采用任何新的編碼風(fēng)格。其次,必不可少的是,嵌入式軟件開(kāi)發(fā)環(huán)境的輸出,也就是可執(zhí)行代碼,應(yīng)把移植路線推向 RTL。這項(xiàng)要求確保了系統(tǒng)公司的投資在開(kāi)發(fā)人員桌面環(huán)境中得到保護(hù),并允許自動(dòng)處理主處理器和協(xié)處理器之間的接口。
既然有一種方法能滿足上述要求,嵌入式軟件開(kāi)發(fā)人員終于可以把 FPGA 作為其產(chǎn)品的天然硬件平臺(tái)。
熱門(mén)點(diǎn)擊
- 24位模數(shù)轉(zhuǎn)換器AD7713及其應(yīng)用
- 電壓/頻率和頻率/電壓轉(zhuǎn)換器VF320
- 12位并行模/數(shù)轉(zhuǎn)換芯片AD1674及其應(yīng)用
- XILINX新推出的SPARTAN-3E系列
- 廉價(jià)隔離型高精度D/A轉(zhuǎn)換器
- Straix器件在DVB-T調(diào)制器中的應(yīng)用
- 八通道24位微功耗無(wú)延時(shí)△-∑模數(shù)轉(zhuǎn)換LTC
- 一種基于AT89C1051/2051的低成本
- 高性能∑-Δ ADC的原理及應(yīng)用
- 高速A/D轉(zhuǎn)換器TLC5540及其應(yīng)用
推薦技術(shù)資料
- 電動(dòng)吸錫烙鐵
- 用12V/2A的電源為電磁閥和泵供電,F(xiàn)QPF9N50... [詳細(xì)]
- CV/CC InnoSwitch3-AQ 開(kāi)
- URF1DxxM-60WR3系
- 1-6W URA24xxN-x
- 閉環(huán)磁通門(mén)信號(hào)調(diào)節(jié)芯片NSDRV401
- SK-RiSC-SOM-H27X-V1.1應(yīng)
- RISC技術(shù)8位微控制器參數(shù)設(shè)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究