<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è) > 嵌入式系統 > 設計應用 > ASIC與ARM的“強手聯(lián)合”

ASIC與ARM的“強手聯(lián)合”

作者: 時(shí)間:2012-03-12 來(lái)源:網(wǎng)絡(luò ) 收藏

引言

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

嵌入式世界的范圍和概念極其廣泛,可以從到MCU,而是有著(zhù)巨大的潛力和創(chuàng )新力的一種技術(shù),盡管它的設計非常昂貴,并且所需世界要花費數年,但這依然不影響它的巨大市場(chǎng)潛力。相比而言,單片機方案就便宜得多,時(shí)間花費也短,只需幾個(gè)月甚至幾周就可以了。但是不論還是單片機,他們都收到第三方芯片的限制。在最終產(chǎn)品上來(lái)說(shuō),他們還是有很多相似點(diǎn)和共同點(diǎn)的,都主要使用 CPU核,包含標準的通信接口,片內整合了大量的模擬功能,支持低功耗工作和快速喚醒。

圖1 嵌入式設計SoC和MCU對照圖

這個(gè)對照圖中間的是可編程平臺,它的設計不發(fā)生在硅級別,但能從功能上提供巨大的靈活性,可以集成到一個(gè)器件上。這種類(lèi)型最明顯的例子就是FPGA和CPLD,他們功能強大,容量巨大。然而,這些器件并不能稱(chēng)之為可編程平臺,因為他們都是集中在數字領(lǐng)域的。

為了在A(yíng)SIC和MCU之間架起真正的橋梁,那就需要一個(gè)可編程平臺,這個(gè)平臺能夠提供模擬和數字功能的靈活性,不需要設計者是這兩方面的專(zhuān)家就能做好設計。設計者想要這樣的平臺,在標準的MCU上加上可編程功能,利用他們現成的工具和系統。那么,理想的系統是這樣的,完全適合一種應用,片上提供所有所需的外圍器件和接口,性能表現恰如其分,并沒(méi)有不需要的還要付錢(qián)的功能。

要實(shí)現這樣的靈活性需要一個(gè)平臺,這個(gè)平臺可以支持在SoC里實(shí)現可定制配置的高性能模擬功能和可編程數字邏輯,而不需要開(kāi)發(fā)人員成為HDL或模擬設計的專(zhuān)家。微控制器有一些工具和模擬功能,但缺少配置性。FPGA有可配置的邏輯,也可以提供比較好的軟件,但是他們的缺點(diǎn)仍在于模擬方面和不能真正的低功率運作。

1 是實(shí)際應用中的嵌入式標準

許多年來(lái),構架一直是ASIC設計事實(shí)上的標準,在很多高端嵌入式市場(chǎng)占統治地位,英特爾公司一直致力于個(gè)人電腦的使用推廣(沒(méi)有反編程克隆的問(wèn)題)。在幾年前,Cortex M系列處理器核發(fā)布之后,人們很難找到一個(gè)沒(méi)有ARM核的現代單片機。

這種說(shuō)法的真實(shí)性可以從遍布嵌入式工業(yè)的ARM支持者看出。跟SoC IP供應商談及他們的目標新產(chǎn)品使用的第一個(gè)總線(xiàn)體系結構時(shí),結果永遠是ARM的AMBA。和實(shí)時(shí)操作系統(RTOS)公司(那些還沒(méi)有被半導體公司購買(mǎi))交談時(shí),他們會(huì )告訴你,支持ARM是他們新產(chǎn)品的最高優(yōu)先級。

實(shí)際上,任何平臺希望在可編程部分尋求成功都必須使用ARM CPU。其結果是連續性的。工程師們不害怕變化。但是,他們經(jīng)常因變化而浪費時(shí)間。在SoC的設計中,如果你不提供相同的CPU結構,同樣的編譯器,同樣的IDE和調試器,同樣的實(shí)時(shí)操作系統和相同的中間軟件包,就想吸引工程師不用他們的傳統的平臺轉向新的設計, 這是非常困難的。簡(jiǎn)而言之,軟件規則就是沒(méi)有人愿意離開(kāi)原來(lái)的設計。除了真正的低端產(chǎn)品,他們能夠在8位設備上如8051上完成特定的嵌入式功能,任何不是ARM CPU的可編程平臺都很快歸類(lèi)于少數領(lǐng)域,成為不占主導地位的架構。

2 在可編程器件中添加模擬功能

不斷有可編程器件失敗,當然,是指模擬功能。雖然有很多平臺可以整合重要的模擬功能,如高速通信接口,但真正的難點(diǎn)是要解決整合的傳統片外部件的低級電路問(wèn)題。畢竟,現在的FPGA的物理層(PHY)的實(shí)現是完全把模擬部分的問(wèn)題和設計者隔離的,只留標準數字接口,就像其他的IP模塊。

真正的模擬挑戰是實(shí)現通用功能,如模擬數字和數字模擬轉換器、放大器和電壓比較器。這不僅僅是因為模擬電路是一個(gè)棘手的設計問(wèn)題,更是因為一些困難被轉交給了最終用戶(hù)。對于數字功能,例如,它可以把實(shí)現方式融入設計,路由到適當的I/O,運行靜態(tài)時(shí)序檢查,以及計劃中的所有工作。當然,時(shí)序扮演了設計中的重要角色,但時(shí)序問(wèn)題并不是IP整合的本質(zhì)的問(wèn)題,而是器件運行時(shí)的速度問(wèn)題,整體設計的復雜程度,器件的利用率,以上這些都會(huì )影響到路由資源。然而,對于任何模擬設計,甚至簡(jiǎn)單的電路都很難設計,配置選項、片上路由和外部板設計,這些都很難做到最優(yōu)。

舉例來(lái)說(shuō),開(kāi)關(guān)電容模塊是重要的模擬部件,因為他們可以配置成許多方式,如可編程增益放大器(PGA),跨阻放大器(TIA),模擬過(guò)濾器,甚至是混頻器。然而,他們也給設計者帶來(lái)了問(wèn)題,因為他們的行為依賴(lài)于模塊的配置與電容的開(kāi)關(guān)頻率。把這個(gè)功能放到一個(gè)芯片里固然很好,但是要從datasheet和一堆配置寄存器里明白如何使它工作就不容易了。

要解決這個(gè)問(wèn)題當然可以通過(guò)軟件實(shí)現。把高性能模擬功能放到一顆器件里是一個(gè)解決方案。但是如果沒(méi)有一個(gè)開(kāi)發(fā)工具來(lái)揭開(kāi)配置過(guò)程的神秘面紗,那么當最初選定可編程器件后,由于需要快速設計進(jìn)入市場(chǎng),在設計中很可能要引進(jìn)很多最開(kāi)始計劃時(shí)沒(méi)有的片外器件。

要解決這些模擬問(wèn)題的方法是一個(gè)軟件工具,它通過(guò)包括可編程模擬模塊和實(shí)現細則的器件提供了模塊和參數,使設計者不需了解功能如何實(shí)現。換句話(huà)說(shuō),設計者不需要了解傳統ADC芯片的工作原理,也不需要學(xué)習該集成器件的寄存器名稱(chēng)和位域,只需要建立一個(gè)ADC就可以了。設計者不需要陷入計算時(shí)鐘頻率和匹配R和C值的困境,只需要根據其特征,特性(如可分辨率,最大采樣率,工作電壓范圍,等等)配置ADC即可。

一旦設計里確定了ADC,下一步就是裁剪它適合應用的需求。最理想的情況是,這個(gè)過(guò)程通過(guò)設置參數實(shí)現。如果一個(gè)ADC支持一個(gè)范圍或固定的設置值,可以叫輸入范圍(群電壓不會(huì )給ADC供電),那么這些選擇應該直觀(guān)地體現出來(lái),通過(guò)一個(gè)操作來(lái)實(shí)現對理想參數值的選擇。

一些工具,例如賽普拉斯的PSoC Creator可以通過(guò)選擇你所需要的功能實(shí)現可編程模擬電路設計,可以無(wú)需考慮實(shí)現細節

圖2 一些工具,例如賽普拉斯的PSoC Creator可以通過(guò)選擇你所需要的功能實(shí)現可編程模擬電路設計,可以無(wú)需考慮實(shí)現細節

這種可編程平臺的工具中典型的例子就是賽普拉斯半導體的PSoC Creator。PSoC Creator支持PSoC 3和PSoC 5器件設計,它提供原理圖設計接口,用戶(hù)可以根據需要繪制,可以通過(guò)用戶(hù)參數編輯器來(lái)配置所選器件。在目錄里用戶(hù)可以預創(chuàng )建模擬(和數字)器件,在那里可以看到工程實(shí)例和數據手冊,就像是片外的ADC。當在設計中使用一個(gè)器件時(shí), 工具會(huì )自動(dòng)生成API接口,使用者不需要進(jìn)行寄存器設置,或者擔心ADC的次序或時(shí)序。

3 具備軟件開(kāi)發(fā)環(huán)境的整合模擬數字功能的設計

使用模擬器件原理圖設計解決可編程模擬問(wèn)題是很有效的,它并不是整個(gè)的解決方案。開(kāi)發(fā)人員也需要一個(gè)工具支持數字設計,更重要的是,還要支持應用軟件設計。

在數字設計里原理圖設計絕不是新鮮事物,支持數字和模擬電路設計整合成一個(gè)單一的器件的平臺越來(lái)越受歡迎。然而,使用多個(gè)工具來(lái)完成一個(gè)設計,這也不能吸引開(kāi)發(fā)人員。開(kāi)發(fā)人員更希望在一個(gè)編輯器里進(jìn)行數字和模擬設計,用相同的環(huán)境創(chuàng )建,調試和測試上述設計。

可編程平臺的供應商需要記住,在MCU的世界,設計者的設計離不開(kāi)軟件中心的集成開(kāi)發(fā)環(huán)境(IDE),需要它進(jìn)行源碼編輯、項目管理、工具編譯,在一個(gè)單一構架下一起調試。在A(yíng)SIC世界里,對于應用開(kāi)發(fā),他們是相同的,芯片設計人員和軟件開(kāi)發(fā)人員很少是一個(gè)團隊。兩組中的任何一組都不希望丟棄他們方便的IDE增加新的工具來(lái)解決它們之前不關(guān)心的問(wèn)題。這兩個(gè)團隊都需要一個(gè)現代的IDE,這個(gè)IDE看起來(lái)和用起來(lái)就像他們以前用過(guò)的那樣,甚至需要更引人注目的特點(diǎn)來(lái)證明IDE已經(jīng)變化了。

整合了模擬比較器和數字計數器的過(guò)電壓定時(shí)器電路

圖3 整合了模擬比較器和數字計數器的過(guò)電壓定時(shí)器電路

我們通過(guò)過(guò)電壓定時(shí)器舉例說(shuō)明一下這些想法,它使用一個(gè)模擬比較器和一個(gè)數字計數器來(lái)監控輸入電壓。如果引腳電壓超過(guò)參考值,比較器開(kāi)啟計數器,一段特定的時(shí)間后 (當然,這個(gè)時(shí)間可以通過(guò)設置一個(gè)參數來(lái)實(shí)現),在引腳發(fā)出一個(gè)錯誤信號并觸發(fā)中斷服務(wù)程序(ISR)。這個(gè)簡(jiǎn)單的例子很容易地整合了數字和模擬電路設計,開(kāi)發(fā)人員可以從草圖開(kāi)始設計,只需考慮MCU的工作,也就是說(shuō),連接了引腳,時(shí)鐘,參考電壓和中斷,那么就可以設計很難實(shí)現的功能了。

當這個(gè)設計創(chuàng )建后,開(kāi)發(fā)環(huán)境為器件生成API。這使得開(kāi)發(fā)人員可以不需了解它的實(shí)現方式,直接使用這些器件。例如,開(kāi)發(fā)人員可以通過(guò)API改變計數器的timeout周期或得到其值,關(guān)閉中斷,關(guān)閉時(shí)鐘等等,不需要研究器件的參考手冊或示例代碼。通過(guò)從原理圖里建立硬件,可編程器件提供了固定功能芯片所不能比擬的優(yōu)勢,因為工具自動(dòng)提供了所有的設置代碼,使接口到所有片上功能的設計成為一個(gè)很簡(jiǎn)單的過(guò)程。

PSoC Creator創(chuàng  )造者的工作瀏覽器窗口顯示了為比較器,計數器,時(shí)鐘和中斷服務(wù)程序生成的源文件

圖4 PSoC Creator創(chuàng )造者的工作瀏覽器窗口顯示了為比較器,計數器,時(shí)鐘和中斷服務(wù)程序生成的源文件

API的生成其實(shí)是把硬件設置參數映射到軟件抽象概念的延伸。例如,要建立一個(gè)時(shí)鐘,開(kāi)發(fā)人員只需要把它放到設計里然后設置所需的頻率。開(kāi)發(fā)工具會(huì )負責如何從片內或片外已知的時(shí)鐘源獲得在公差范圍內的適當的頻率。啟動(dòng)和關(guān)閉時(shí)鐘只需要簡(jiǎn)單的調用API即可,例如ctr_clock_STart()或ctr_clock_Stop()。根本不需要修改寄存器來(lái)選擇時(shí)鐘源,設置分頻,選擇它就象是片上功能的輸入一樣,或者可以通過(guò)位操作實(shí)現開(kāi)啟/關(guān)閉。

開(kāi)發(fā)工具可以為系統資源(例如時(shí)鐘,中斷,DMA,或引腳)生成API,可以節省時(shí)間,同時(shí),片上模擬、數字和通信外設API也使得開(kāi)發(fā)可編程器件比MCUs 或 ASIC變得更容易。當使用了最流行的嵌入式ARM核后,相對于文章開(kāi)始所看到的對照圖,集成的原理圖設計工具比對照圖兩端的設計表現出強大的優(yōu)勢。隨著(zhù)可編程芯片越做越好,性能越做越強,ARM核越來(lái)越強大,模擬功能越來(lái)越強,成本越來(lái)越低,這一切似乎越來(lái)越清楚地表明,平臺支持的軟件將確定它在市場(chǎng)上是否會(huì )成功。日常開(kāi)發(fā)工具是開(kāi)啟芯片潛能和擴大設計范圍的鑰匙,最重要的是,它會(huì )贏(yíng)得嵌入式工程師的喜愛(ài),因為他們一直在做一件事情:找一個(gè)更好的方法來(lái)解決所有難題。



關(guān)鍵詞: 聯(lián)合 強手 ARM ASIC

評論


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