新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 嵌入式開發人員要使用FPGA的原因

        嵌入式開發人員要使用FPGA的原因

        作者: 時間:2011-05-28 來源:網絡 收藏

        在一個領域中,如果唯一不變的是變化,那么不需要對電子技術和設計方法的發展變化做多少回顧,就能見證到變化是如何使設計工程師能夠創建出下一代創新產品。微處理器得到大規模應用后,價廉物美的新技術為基于軟件的革新性電子產品設計打開了大門,這就是一個很好的例子。簡言之,把設計的主要元素——在這兒是控制“智能”——轉入到軟領域后,設計工程師就可以在更短時間內創建出更好、更智能、更廉價的產品。

          這個變化意味著軟件是當今定義電子產品功能和特性的主要推動者,并且最終將把硬件生產出來。該方法的成功因素在于減少硬件復雜度和把設計的控制元素轉變到可編程領域帶來的開放靈活性。

          今天,大容量、低成本可編程器件的到來給電子產品設計的發展帶來了同樣的希望,因為在軟領域定義系統硬件本身已經成為可能。諸如大容量這樣的大規模器件對滿足這一需求十分理想。這些期間一般可用于構建系統外設邏輯功能塊的大件部分,包括總線接口、I/O塊、甚至內存。把大量邏輯引入領域對硬件具有深遠影響,并為‘軟’設計的新時代打開了一扇大門,這為設計提供了前所未有的靈活性,同時具有減少板級尺寸和復雜性的無窮潛力。

          雖然它具有對電子產品過程起到革命性作用的潛力,但多數軟件開發仍像以前一樣工作——在設計流程的開始階段選擇分立的硬件處理器、創建物理平臺,然后寫軟件該平臺。人們在系統開發的“軟”硬件領域缺乏探索,主要在于缺少讓C程序員在可編程硬件級發揮技巧的工具。確實,當前多數設計流主要都來自芯片設計領域,需要非常專業的技巧。

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

          把軟設計提升一個水平

          要超越FPGA膠合邏輯應用需要更廣闊的視野,包括充分利用可編程器件,把盡可能多的硬件引入到軟領域中。這包括引入處理器功能本身,今天,FPGA內的軟處理器正越來越多地轉變成嵌入式平臺。從根本上說,改用帶FPGA的軟處理器會帶來結構靈活性、板卡尺寸更小、更簡單的優點。但深層次的應用會帶來更吸引人的優點。

          當利用了FPGA的可編程特性獲得處理器頂層的抽象層時,就為嵌入式開發打開了無限可能,——不僅在軟件中實現抽象級設計,而且在硬件中也實現了。試想這樣一個系統:處理器通過可配置硬件(本質上是一個硬件包裹)與其內存和外設連接——這就抽象了處理器的接口。簡單地對FPGA重新編程就改變了硬件包裹,系統設計師可以輕易地改變處理器內核,甚至在硬的或軟的處理器之間轉換,無需修改其他系統硬件。從系統的角度來看,所有處理器都是相似的,這就簡化了硬件設計流程。當然,把這延伸到應用軟件領域也需要可以在處理器之間提供C級別兼容性的編譯器。

          這種系統的優點是不需要“事先”對處理器做出選擇。系統可能是某種處理器開發的,但是開發階段發現需要更高的性能,又采用了更快的器件。由于包裹層的,處理器可以是軟的、硬的、甚至是FPGA內部的硬件處理器內核,而不會影響周圍的硬件,因為轉換層僅僅創建出連接外設的標準接口。實際上外設器件本身的連接可以相同方式抽象。在這個方案中,FPGA為嵌入式系統的所有部件提供通用的連接性,而有效地成為系統互連結構。換言之,它有效地成為標準接口“骨干”,硬件和軟件都可以輕松與處理器和外設交流。

          最后,在處理器之上引入透明的包裹層會創建出基于FPGA的開發環境,提供真正的處理器獨立性。軟件和硬件開發速度都提高了,處理器選擇可以放到設計流程的后期進行,有效的軟件/硬件協同設計成為可能。

          軟件和硬件間進行轉換

          在可配置硬件中創建處理器和外設包裹層的想法的擴展就是自動生成應用專用的系統硬件,在硬件中執行軟件算法——一種‘自己的’硬件協處理器。

          從C代碼中直接生成硬件的想法并不新鮮,有幾個系統已經實現,到現在為止的想法是希望通過C類語言創建完整的系統硬件。在本質上,這與HDL(如VHDL 或Verilog)設計FPGA沒有什么不同,需要軟件開發人員學習和采用新的設計方法。真正對嵌入式開發人員有用的是使流程透明。設計工具必須要能夠處理標準 ANSI C代碼的輸入,把程序員選擇的功能轉換為硬件。不僅如此,系統必須要能夠生成使用生成硬件所需的所有代碼。嵌入式程序員以這種方式把專用算法從處理器卸載到專用硬件上,無需了解底層硬件的任何設計細節。

          利用FPGA的全部潛力

          很明顯,從工具角度來說充分利用可編程器件(如FPGA)帶來的機會需要一個提高開發流程抽象級別的系統,這樣設計的核心元素可通過類似的設計技術和流程輕松改變。這樣的系統必須能夠統一整個電子產品開發過程,在單一、一致的環境中將硬件、軟件和可編程硬件開發綜合在一起。

        圖1充分利用FPGA的潛能意味著把設計的所有元素帶到可重新編程的領域

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

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 九龙坡区| 淮南市| 中方县| 沙河市| 汪清县| 昭苏县| 桓台县| 白玉县| 慈溪市| 永泰县| 峨眉山市| 清徐县| 建德市| 来安县| 双桥区| 来宾市| 射洪县| 泰安市| 凤阳县| 北宁市| 金门县| 萝北县| 凌源市| 墨玉县| 汨罗市| 铁力市| 资中县| 阳原县| 蓬溪县| 西青区| 正阳县| 麻栗坡县| 阜宁县| 新宁县| 民乐县| 天津市| 正蓝旗| 南通市| 佛冈县| 龙门县| 三亚市|