?
???? 引言
?
微控制器在汽車和消費類市場上得到了廣泛應(yīng)用,能夠以相對較低的成本實現(xiàn)系統(tǒng)高度集成,。然而,,這類產(chǎn)品也有潛在的成本問題,。例如,,如果元件功能不符合要求,就必須采用外部邏輯、軟件或者其他集成器件來進(jìn)行擴展,。而且,隨著最終市場需求的迅速變化,,微控制器會很快過時,。許多具有一定數(shù)量專用接口的特殊功能微控制器在經(jīng)過短期試用后,,并不能完全滿足市場需求。因此,,系統(tǒng)供應(yīng)商不得不重新設(shè)計硬件和軟件,,甚至在某些情況下對處理器內(nèi)核進(jìn)行改動。
?
ASSP微控制器面臨的兩難
?
傳統(tǒng)微控制器生產(chǎn)商面臨影響整個市場的兩難問題,。微控制器是專用產(chǎn)品,,因此,對每一種應(yīng)用,,必須采用新的,、不同特性的微控制器。為了能夠以一種微控制器內(nèi)核結(jié)構(gòu)來應(yīng)對更廣闊的市場,,生產(chǎn)商提供系列微控制器,,其型號接口和功能各不相同。這些混合特性在很多時候并不能完全滿足用戶需求,,因此,,為了擴大客戶群,必須圍繞具體內(nèi)核結(jié)構(gòu)開發(fā)新的接口和功能,。
?
采用老技術(shù)以較低的生產(chǎn)成本來實現(xiàn)微控制器時,,這種策略非常成功。然而,,現(xiàn)在為提高系統(tǒng)集成而采用了最新的工藝技術(shù),,這樣,開發(fā)新型微控制器的成本大大增加了,。只有很少的客戶有很大的產(chǎn)量需求,,這表明專門針對一個客戶來生產(chǎn)這類專用器件并不是可行的商業(yè)行為。為此,,新型微控制器趨向于標(biāo)準(zhǔn)產(chǎn)品而不是專用器件,,以越來越多的功能,吸引整個市場,。雖然這些附加特性使微控制器功能更強,,但也大大提高了成本,使其更難應(yīng)用于對成本敏感的市場,,例如汽車和消費類行業(yè),。如果不從根本上著眼芯片功能,則很難解決這個問題,。
?
靈活的微控制器解決方案
?
對該問題的解決方案之一是采用FPGA來靈活地實現(xiàn)芯片功能,。這些器件大大縮短了工程開發(fā)時間,降低了芯片多次試制的成本,,是微控制器有力的替代方案,。在設(shè)計過程中,,F(xiàn)PGA不像微控制器那樣會漏掉某些特性,它可以編程,,并能根據(jù)需要進(jìn)行改寫,,快速完成原型開發(fā),更迅速地將產(chǎn)品推向市場,。如果需求變化,,即使器件已經(jīng)應(yīng)用到產(chǎn)品中,還可以在現(xiàn)場對其進(jìn)行更新,。
?
汽車系統(tǒng)圖像控制器應(yīng)用就是FPGA優(yōu)于傳統(tǒng)控制器的一個例子,。盡管汽車市場需要低成本FPGA來實現(xiàn)圖像等各種功能,但要采用大量的芯片,,因此,,在可編程器件中實現(xiàn)復(fù)雜功能的成本太高。
?
靈活的微控制器不但性價比好,,而且非常切合用戶需求,。其性價比之所以好,是因為采用了90nm結(jié)構(gòu)化ASIC——如Altera HardCopy器件作為基本芯片,,其功能在大量經(jīng)過預(yù)定義和靈活的構(gòu)建模塊庫中進(jìn)行選擇,,可以針對客戶需求進(jìn)行定制。在開發(fā)過程中,,HardCopy結(jié)構(gòu)化ASIC與傳統(tǒng)的微控制器不同,,它支持從原型FPGA到微控制器的無縫移植。CPU和總線體系結(jié)構(gòu)都是靈活的微控制器方案所獨有的,,可以針對專門的客戶應(yīng)用,,以合適的功能和特性映射到設(shè)計中。HardCopy系列的優(yōu)點包括:
?
芯片
?
* 比FPGA快50%
* 內(nèi)核功耗比FPGA低70%
* 管芯小60%至85%軟件
* 統(tǒng)一的FPGA和HardCopy設(shè)計環(huán)境
* 功耗和性能管理工具
* 價格低廉,,使用方便封裝
* 與FPGA引腳至引腳兼容
* 低成本產(chǎn)品封裝
* 不需要重制電路板
?
RISC CPU
?
這一方案中使用的CPU是Altera Nios II嵌入式處理器,,與一般情況不同,它并不固定在預(yù)定的芯片中,,而是利用實際工具,,根據(jù)系統(tǒng)體系結(jié)構(gòu)的要求而自動生成,和整個電路需要的其他邏輯一起裝入FPGA中,。這樣,,可以根據(jù)專門應(yīng)用,使用Altera的SOPC Builder工具對處理器內(nèi) 核進(jìn)行參數(shù)化設(shè)置,,以占用最少的邏輯,,實現(xiàn)最合適的功能。
?
N ios II處理器采用標(biāo)準(zhǔn)RISC體系結(jié)構(gòu),,具有單獨的地址總線和數(shù)據(jù)總線,,都是32位寬。兩種總線通過單獨的緩沖進(jìn)行工作,,還可以在總線系統(tǒng)中進(jìn)一步分開,。最后,由系統(tǒng)設(shè)計人員確定代碼和數(shù)據(jù)是使用不同的存儲器,,還是放在共享存儲器中,。Nios II處理器含有每一處理器的大部分功能單元,設(shè)置決定其特性,。例如,,可以根據(jù)要求來選擇硬件乘法器、桶形移位寄存器和硬件除法器,。指令和數(shù)據(jù)緩沖也是如此,,其容量大小可以調(diào)整,也可以完全不用,。
?
總線體系結(jié)構(gòu)
?
傳統(tǒng)上,,微控制器一直采用單總線,由仲裁器對總線監(jiān)控,,分配資源,。這對總線而言非常不利,作為系統(tǒng)的中心資源,,很快就成為瓶頸,。因此,較新的系統(tǒng)采用了多層總線,,特別是多條總線并行工作的SoC,。Altera的Avalon總線結(jié)構(gòu)工作原理相似,不同之處在于——其他多層總線中,,層數(shù)都是固定不變的,,而Avalon可以自由選擇所需要的層數(shù)。
?
考慮到EMC和功耗問題,,有時可以采用與系統(tǒng)其他部分運行速率不同的外圍模塊,。當(dāng)以更高的速率運行存儲器接口,訪問時間相對較短,,而系統(tǒng)其他部分運行在較低時鐘速率時,,這種方法比較適用。還可以將許多低時鐘速率模塊整合到一起,。為滿足EMC或者功耗要求,,使用SOPC Builder能夠輕松地將這些單元與其他運行速率很高的系統(tǒng)分開。這樣可以自動生成同步不同時鐘域所需的邏輯,,而設(shè)計人員只需指定哪些模塊運行在給定的時鐘域上即可,。
圖1 汽車信息娛樂平臺
?
???? 在FPGA中實現(xiàn)微控制器
?
?? 由于這類系統(tǒng)要比簡單的圖像控制器復(fù)雜得多,,在大多數(shù)情況下,
FPGA被用作原型開發(fā)工具,。采用FPGA作為原型大大降低了開發(fā)風(fēng)險,,它可以進(jìn)行全面的驗證、固件開發(fā)和現(xiàn)場測試,。
?
? 使用FPGA進(jìn)行原型開發(fā)意味著工程師可以在系統(tǒng)運行器件,,在真實的環(huán)境中進(jìn)行測試。這樣,,工程師能夠確定仿真過程中難以發(fā)現(xiàn)的潛在設(shè)計缺陷,。
?
軟件開發(fā)已經(jīng)是整個開發(fā)周期中的主要部分。軟件開 發(fā)需要大量的時間和資源,,因此,,原型系統(tǒng)能夠縮減整個開 發(fā)周期,發(fā)現(xiàn)瑕疵和兼容性問題,。
?
對系統(tǒng)進(jìn)行現(xiàn)場測試有利于發(fā)現(xiàn)系統(tǒng)和器件缺陷,,而這在實驗室中卻難以實現(xiàn)。在很多情況下,,銷售人員為獲得訂單而有必要進(jìn)行系統(tǒng)演示,。對于最初的規(guī)范,還需要加入某些新特性和功能,。不論是以前沒有發(fā)現(xiàn)的問題還是新加入的特性,,F(xiàn)PGA原型開發(fā)都可以迅速進(jìn)行修改,降低較大的一次性工程成本,,令生產(chǎn)周期縮短,。
?
圖2 靈活的汽車微控制器解決方案
????
??? 靈活的微控制器解決方案中的最終單元是進(jìn)行ASIC的開發(fā)。建立并測試原型系統(tǒng)后,,將設(shè)計交給Altera,,轉(zhuǎn)為HardCopy結(jié)構(gòu)化ASIC。與其他的結(jié)構(gòu)化ASIC不同,,HardCopy器件使用和FPGA原型相同的 構(gòu)建模塊,,因此,不必重新對設(shè)計進(jìn)行綜合,,或者進(jìn)行更多的驗證,。使用HardCopy器件的周轉(zhuǎn)時間較短,設(shè)計人員可以很快地完成FPGA邏輯,,盡可能地降低成本,。
?
????結(jié)論
?
下一代汽車電子系統(tǒng)需要采用非常專業(yè)的低成本器件,以滿足市場需求??紤]到目前工藝技術(shù)開發(fā)成本的攀升,,采用傳統(tǒng)微控制器有些不切實際,而針對較大市場范圍的多功能器件價格昂貴,,也不適合,。相反,靈活的微控制器方案針對具體應(yīng)用開發(fā)合適的微控制器,,在FPGA中實現(xiàn)原型開發(fā)。設(shè)計完成后,,甚至是在設(shè)計過程中就可以立即進(jìn)行驗證,、軟件開發(fā)和現(xiàn)場測試。對于批量生產(chǎn),,F(xiàn)PGA設(shè)計直接映射到HardCopy結(jié)構(gòu)化ASIC,,而不用重新綜合或再次驗證。
?
?