《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 業(yè)界動態(tài) > 用FPGA避免微處理器過時

用FPGA避免微處理器過時

2009-03-16
作者:萊迪思半導(dǎo)體公司 IP產(chǎn)品市場經(jīng)

?

??? 器件供應(yīng)商降低制造成本的一個方法是中止老產(chǎn)品,這樣做就導(dǎo)致微處理器過時。那些微處理器核的多個版本與集成外圍器件的混合使情況更加復(fù)雜,對于特殊處理器的結(jié)構(gòu)引起器件過剩。通過把外圍設(shè)備整合至有微處理器的裸片,供應(yīng)商可以把微處理器用于大批量的專門應(yīng)用。(文中提到的“微處理器”指整個元件,包括處理器核與集成的外圍設(shè)備)。由于應(yīng)用和標(biāo)準(zhǔn)隨著時間的推移而發(fā)展,微處理器設(shè)計的狹窄市場使得微處理器更加容易過時。本文闡述設(shè)計者面對微處理器(微控制器)過時的情況,采用FPGA的可選方案。

?

??? 考慮這個選擇之前,首先考慮FPGA作為應(yīng)對微處理器過時的挑戰(zhàn)是很有用的。例如LatticeXP2 FPGA,可以實現(xiàn)68HC11兼容的CPU核,完全可綜合的代碼只要2600 個slice。如圖1所示的68HC11兼容的微處理器,把所有外設(shè)集成到這個器件將增加幾百個slice。此外,容易適配至當(dāng)今的FPGA,這個實現(xiàn)方案可以比原來的8-12 MHz 運行快5倍。

?圖1? 實現(xiàn)D68HC11微處理器?

技術(shù)曲線

?

??? FPGA使設(shè)計者利用技術(shù)曲線,以防止微處理器的過時。外圍設(shè)備,或者把它們組合在一起或許也會過時。除了處理過時的微處理器,針對把周圍的功能整合到FPGA,F(xiàn)PGA技術(shù)曲線提供了選擇。因此降低了整個系統(tǒng)的成本,并解除了對其它元件不能繼續(xù)供應(yīng)的擔(dān)憂?;赟oC的微處理器和FPGA遵從的技術(shù)曲線如圖2所示,用可綜合的RTL,F(xiàn)PGA設(shè)計者免于受到將來器件過時的影響,在大批量ASIC的NRE里未提及。

???????????????????????????????????

圖2?? 技術(shù)曲線增加了整合空間?

?

??? 圖2中的技術(shù)曲線展示了微處理器和微控制器的相關(guān)等效邏輯復(fù)雜性與FPGA里軟實現(xiàn)的比較。原來的微控制器過時的時候,可用的FPGA邏輯密度遠(yuǎn)多于實現(xiàn)微處理器和外設(shè)所需的邏輯。這個額外的邏輯稱為外設(shè)整合空間,將隨著FPGA密度繼續(xù)增加而增長。圖1中的D86HC11包括了DoCD塊,提供了實時,非插入系統(tǒng)調(diào)試,以及沒有整合到原來微控制器的功能。

?

??? FPGA提供了對設(shè)計的折衷方法,因此實現(xiàn)解決方案時設(shè)計者有多種選擇。各種選擇方案如下:

?

選擇方案1:完成再設(shè)計(將來驗證設(shè)計)

?

??? 在此方案中,器件供應(yīng)商也許提供替代元件,或許不是相同的指令集結(jié)構(gòu)(ISA)。這個選擇需要完成硬件和軟件的再設(shè)計,使用另外的基于元件的微處理器解決方案,或者基于FPGA的解決方案。如果選擇這個方案,將來驗證這個設(shè)計是理想的,采用開放源代碼軟處理器Harvard結(jié)構(gòu)的32位LatticeMico32。不像GNU公用許可證(GPL),軟件團(tuán)體是相同的,用于LatticeMico32的創(chuàng)新開放源代碼許可證是用硬件實現(xiàn)的。它可以移植到任何FPGA或者免費的ASIC。

選擇方案2:相同的ISA,較高的整合

??? 原來微處理器元件的軟實現(xiàn)(μP核和集成外設(shè))編程至FPGA。軟處理器實現(xiàn)和外圍設(shè)備比原來的元件運行速度高。采用這個選擇,外設(shè)或者時序環(huán)有任何變化,軟件只要做較小的改動。這個選擇的優(yōu)點是軟件變化最小,降低了電路板的成本,因為電路板的其它功能都整合至FPGA。

?

選擇方案3:二進(jìn)制兼容,較高的整合

?

??? 原來微處理器元件的軟實現(xiàn)(μP核和集成外設(shè))及精確的時序編程至FPGA。目標(biāo)是用原始的二進(jìn)制代碼而不需要修改。通過整合其它電路板的功能至FPGA,這個選擇降低了電路板的成本。

?

選擇方案4:二進(jìn)制兼容,插座兼容(典型方案)

?

??? 這個選擇使用中間層電路板實現(xiàn)FPGA,針對原來的微控制器,最小化相關(guān)的邏輯有準(zhǔn)確的引腳對引腳的替換。除了中間層電路板之外,這個方法不用改變軟件和硬件。

例如,供應(yīng)商停止68HC11 MCU生產(chǎn)。對這個問題評估可能的方法,客戶也許會規(guī)定替代的部件必須與原來的功能和時序一樣,運行相同的二進(jìn)制程序而無需修改??蛻魶Q定將DCD的 D68HC11 IP核用在LatticeXP2 FPGA中。LatticeXP2的片上Flash能用于較少部件的簡單設(shè)計,見圖3,因為非易失LatticeXP2不需要外部的Flash存儲器,或者其它的電路下載FPGA配置。

圖3? 針對選擇方案4的實現(xiàn)方案?

?

??? 最初客戶考慮用完全不同的處理器代替68HC11,但是這個方法要求取代應(yīng)用軟件。這是一個很困難的任務(wù),因為軟件與68HC11指令和內(nèi)部的外設(shè)緊密相關(guān)。因此轉(zhuǎn)到新的處理器需要為軟件的再設(shè)計付出大量的時間和精力。結(jié)果大多數(shù)解決方案是用FPGA取代68HC11。這個選擇將專注FPGA里D68HC11 IP核的確認(rèn),避免改變系統(tǒng)的任何部分(軟件應(yīng)用,外部電路板元件),系統(tǒng)已完好地運行了15年多。

?

??? 最重要的要求是能夠得到與原來的微處理器完全兼容的軟件。必須是運行在D68HC11上相同的二進(jìn)制代碼,對二進(jìn)制代碼的任何改變都是不可接受的。在這樣的情況下,另外的限制是保持指令周期的精確性。這是很關(guān)鍵的,因為軟件會使用指令循環(huán)構(gòu)成的時序延時。此外,有些功能或外圍接口也許會依賴精確根據(jù)指令和時鐘周期確定的執(zhí)行時間。

?

??? 使用這個方法時,很難達(dá)到外設(shè)兼容。然而在此情況,所有的數(shù)字部分都容易實現(xiàn),并具有相同的功能和時序。大多數(shù)現(xiàn)成的IP核都是設(shè)計好的,并在DCD核庫中驗證過。

?

??? 通常的問題是替代微控制器的模擬元件,例如模數(shù)轉(zhuǎn)換器(ADC),上電/電源故障復(fù)位產(chǎn)生和時鐘振蕩器。數(shù)字可編程器件FPGA可以實現(xiàn)與這些功能相關(guān)的任何數(shù)字接口邏輯,但不是模擬電路。

?

??? 用FPGA取代先前整合的ADC數(shù)字功能是可能的。采用外部ADC轉(zhuǎn)換器和設(shè)計D68HC11接口是必須的。因為目前沒有ADC具有和原來的元件有相同的精度,要選擇性能好的。要求是有寄存器功能,與原來的ADC接口相同,包括ADC和CPU之間控制和狀態(tài)信號的翻譯。轉(zhuǎn)換時序必須是相同的。這是ADC接口的主要功能,D68HC11的附加模塊在FPGA中實現(xiàn)。

?

??? 因此,用FPGA、ADC、時鐘發(fā)生器和PLCC插座取代了老的器件,構(gòu)成了小的印刷電路板并直接與客戶的系統(tǒng)相連。對原來的電路板無需開發(fā)軟件或改變。

?

??? 用這個FPGA實現(xiàn)的大多數(shù)IP核源于DCD庫,且已完全經(jīng)過驗證。任何新的外設(shè)都要設(shè)計成與68HC11的要求相匹配。對照舊的外設(shè)時序和功能,要仔細(xì)地驗證新的外設(shè)。對驗證來說FPGA是理想的,可以在FPGA中立即驗證改變的HDL。

?

結(jié)論?

?

??? 本文中我們強調(diào)了微處理器的過時問題。提出了基于FPGA的選擇方案,向涉及到過時微處理器問題的設(shè)計者提出了基于FPGA的選擇,提供了將來驗證需要微處理器的新設(shè)計方法。說明了FPGA如何針對過時問題的解決方案,以及整合功能、降低電路板成本的一些選擇,并提高了調(diào)試設(shè)計的可見性。

?

?

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。