<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è) > 嵌入式系統 > 市場(chǎng)分析 > 嵌入式系統與FPGA的最新動(dòng)向

嵌入式系統與FPGA的最新動(dòng)向

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

  可見(jiàn),不會(huì )脫離數字設計的核心。在集成模擬/數?;旌掀骷r(shí),會(huì )對性能和制程帶來(lái)一些挑戰。在一些高性能或獨特應用場(chǎng)合,獨立的模擬器件仍舉足輕重。獨立的模擬器件的發(fā)展趨勢是集成度更高,精度更高,可編程性更強,并有自家的開(kāi)發(fā)工具支持,簡(jiǎn)單易用等。

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

  MIPS架構尋機突破

  如今,ARM是32位架構中增長(cháng)最快的部分,有專(zhuān)門(mén)為不同嵌入式處理器準備的10種左右的Cortex授權。一般公認ARM陣營(yíng)的優(yōu)勢是可利用的豐富的生態(tài)環(huán)境。

  不過(guò),MIPS科技公司這幾年也在尋求突破。Microchip是MIPS架構的積極擁躉者之一,最近,Microchip的Erlendur Kristjansson對ARM公司聲稱(chēng)的32位單片機()應用的可移植性產(chǎn)生了疑問(wèn)。

  32位單片機的應用可移植性:現實(shí)還是神話(huà)?

  Erlendur首先介紹了事情的原委:2008 年11 月,ARM公司宣布推出Cortex微控制器軟件接口標準(Microcontroller Software Interface Standard,CMSIS)。ARM聲稱(chēng),對于新器件的軟件開(kāi)發(fā)項目或將現有軟件在不同芯片廠(chǎng)商的基于Cortex-M 的單片機之間移植時(shí),這項標準可降低軟件設計成本。這聽(tīng)起來(lái)很不錯,但事實(shí)確實(shí)如此嗎?

  Erlendur分析道,根據ARM 所言,CMSIS 是“適用于Cortex-M 處理器系列的與廠(chǎng)商無(wú)關(guān)的硬件抽象層。CMSIS為不同芯片廠(chǎng)商和中間件提供商的處理器提供了簡(jiǎn)單一致的軟件接口,這簡(jiǎn)化了軟件重用,縮短了開(kāi)發(fā)人員對于新單片機(MCU)的學(xué)習過(guò)程以及新器件的上市時(shí)間。CMSIS的問(wèn)世使芯片廠(chǎng)商可將資源集中在突出其產(chǎn)品的外設功能上,無(wú)需在對單片機進(jìn)行編程時(shí)保持各自不兼容的標準[10]。”

  可移植性的可能性探討

  我們已了解各個(gè)單片機制造商都能提供什么,現在可以看一下抽象層能為設計人員做些什么(如果有的話(huà))。首先,我們來(lái)看CMSIS 聲稱(chēng)所能提供的功能,同時(shí)應記住前文所述的系統架構、外設和固件庫。

  CMSIS 版本1.3

  1.內核外設訪(fǎng)問(wèn)層:包含用于訪(fǎng)問(wèn)內核寄存器和外設的名稱(chēng)定義、地址定義和輔助函數。它還定義了一個(gè)用于RTOS 內核的器件無(wú)關(guān)接口,其中包含調試通道定義[11]。

  2. 這些軟件層由芯片合作伙伴通過(guò)以下方式進(jìn)行擴展:

  a) 器件外設訪(fǎng)問(wèn)層,提供所有器件外設的定義;

  b) 用于外設的訪(fǎng)問(wèn)函數(可選):提供用于外設的附加輔助函數[11]。

  仔細閱讀此說(shuō)明后,我們可以看到CMSIS 提供了一種通用語(yǔ)言,通過(guò)它可描述MCU 的不同元件。

  接下來(lái),我們看一下兩個(gè)不同的“芯片合作伙伴(使用ARM Cortex-M 處理器內核的MCU 制造商)”所生產(chǎn)的MCU 中包含的部分功能。

  顯而易見(jiàn)的是,盡管這兩個(gè)32 位MCU制造商都使用Cortex-M3 內核,但主要功能仍有區別。表1中列出的功能是單片機最標準的功能,即便如此它們仍有不同。這意味著(zhù),即使這兩個(gè)制造商使用相同的內核,也需要對軟件進(jìn)行調整才能運行最基本的程序,例如翻轉I/O 或使用UART。如果不進(jìn)行一定程度的代碼重寫(xiě),而只是對基本參數進(jìn)行調整,則無(wú)法在A(yíng)和B之間移植軟件。

  另外,在表1的示例中,廠(chǎng)商A和B的單片機都使用了ARM Cortex-M3 內核,并且都具有符合CMSIS 標準的固件庫。這是否意味著(zhù)他們的庫(例如電機控制庫)可以互相移植?

  其實(shí)不見(jiàn)得。這兩個(gè)制造商對外設和固件采用了完全不同的方法。廠(chǎng)商A 使用專(zhuān)用算法庫(可能由多人經(jīng)過(guò)數年開(kāi)發(fā)而成)來(lái)最高效地利用其單片機上的專(zhuān)用外設。而廠(chǎng)商B 則專(zhuān)注于使用更通用的外設并構建通用外設庫,對于特定應用則使用示例代碼和應用筆記進(jìn)行說(shuō)明。

  這兩種完全不同的方法使得在這兩個(gè)制造商的MCU 之間移植程序(例如電機控制子程序)非常困難,盡管它們使用了相同的內核。此外,庫函數的命名也不相同,這意味著(zhù)用戶(hù)必須重寫(xiě)代碼中的所有庫函數調用,并且要弄清將哪些變量和值提交給函數。這完全不是所謂的可移植性。

  再有,設計人員關(guān)注的重點(diǎn)是開(kāi)發(fā)特定最終用途代碼時(shí)的速度、效率和可靠性。廠(chǎng)商A和B采用不同的方法來(lái)達到這些目標。廠(chǎng)商A使用基于專(zhuān)用硬件的方法,而廠(chǎng)商B的法更加專(zhuān)注于通用硬件。廠(chǎng)商A 針對特定應用提供了經(jīng)過(guò)潛心開(kāi)發(fā)的專(zhuān)用庫,以最大限度地利用其單片機的功能。而廠(chǎng)商B 只提供基本構件,讓開(kāi)發(fā)人員構建自己的解決方案。



關(guān)鍵詞: MCU FPGA 201103

評論


相關(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>