<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 為什么嵌入式開(kāi)發(fā)人員要使用FPGA?

為什么嵌入式開(kāi)發(fā)人員要使用FPGA?

作者: 時(shí)間:2011-05-10 來(lái)源:電子產(chǎn)品世界 收藏

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

本文引用地址:http://dyxdggzs.com/article/119375.htm

  這個(gè)變化意味著(zhù)軟件開(kāi)發(fā)人員是當今定義電子產(chǎn)品功能和特性的主要推動(dòng)者,并且最終將把硬件生產(chǎn)出來(lái)。該方法的成功因素在于減少硬件復雜度和把設計的控制元素轉變到可編程領(lǐng)域帶來(lái)的開(kāi)放靈活性。

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

  雖然它具有對電子產(chǎn)品開(kāi)發(fā)過(guò)程起到革命性作用的潛力,但多數軟件開(kāi)發(fā)人員仍像以前一樣工作——在設計流程的開(kāi)始階段選擇分立的硬件處理器、創(chuàng )建物理平臺,然后寫(xiě)軟件使用該平臺。人們在系統開(kāi)發(fā)的“軟”硬件領(lǐng)域缺乏探索,主要原因在于缺少讓C程序員在可編程硬件級發(fā)揮技巧的工具。確實(shí),當前多數設計流主要都來(lái)自芯片設計領(lǐng)域,需要非常專(zhuān)業(yè)的技巧。

  把軟設計提升一個(gè)水平

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

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

  這種系統的優(yōu)點(diǎn)是不需要“事先”對處理器做出選擇。系統可能是使用某種處理器開(kāi)發(fā)的,但是開(kāi)發(fā)階段發(fā)現需要更高的性能,又采用了更快的器件。由于包裹層的原因,處理器可以是軟的、硬的、甚至是FPGA內部的硬件處理器內核,而不會(huì )影響周?chē)挠布?,因為轉換層僅僅創(chuàng )建出連接外設的標準接口。實(shí)際上外設器件本身的連接可以相同方式抽象。在這個(gè)方案中,FPGA為嵌入式系統的所有部件提供通用的連接性,而有效地成為系統互連結構。換言之,它有效地成為標準接口“骨干”,硬件和軟件都可以輕松與處理器和外設交流。

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

  軟件和硬件間進(jìn)行轉換

  在可配置硬件中創(chuàng )建處理器和外設包裹層的想法的擴展就是自動(dòng)生成應用專(zhuān)用的系統硬件,在硬件中執行軟件算法——一種‘自己的’硬件協(xié)處理器。

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

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

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



上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: Xilinx 嵌入式 FPGA

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>