當(dāng)前位置:首頁 > 工業(yè)控制 > 電子設(shè)計自動化
[導(dǎo)讀] 引言DSP+FPGA廣泛地應(yīng)用于各種數(shù)字信息處理系統(tǒng)中。在某些特殊的應(yīng)用場合中,往往需要系統(tǒng)在高溫的環(huán)境下工作,而系統(tǒng)功耗又不明顯增加。雖然一般基于SRAM工藝的FPGA的顯現(xiàn)配置方法已經(jīng)多種多樣,但使用的基于SRAM工

 引言

DSP+FPGA廣泛地應(yīng)用于各種數(shù)字信息處理系統(tǒng)中。在某些特殊的應(yīng)用場合中,往往需要系統(tǒng)在高溫的環(huán)境下工作,而系統(tǒng)功耗又不明顯增加。雖然一般基于SRAM工藝的FPGA的顯現(xiàn)配置方法已經(jīng)多種多樣,但使用的基于SRAM工藝的FPGA高溫性能較差,難以滿足高溫、低功耗系統(tǒng)的需要。Actel公司基于Flash工藝的FPGA是為軍工以及宇航設(shè)計的器件,完全能夠勝任高溫的需要。一般的FPGA都具有上電功耗、配置功耗、靜態(tài)功耗和動態(tài)功耗4種,而Actel基于Flash的FPGA由于上電不需要一個很大的啟動電流,并且掉電非易失,不需要配置過程,所以只有靜態(tài)功耗和動態(tài)功耗,沒有上電功耗和配置功耗。FPGA在高溫下具有更低功耗的優(yōu)勢。

本文根據(jù)Actel公司的產(chǎn)品手冊及相關(guān)文件,設(shè)計了一種由DSP控制實現(xiàn)FPGA在線編程的方案,使Actel的FPGA能應(yīng)用于需要在線升級的應(yīng)用場合中,充分發(fā)揮其高溫高可靠性、低功耗的優(yōu)勢。當(dāng)FPGA需要在線編程時,只需通過PC下傳FPGA配置命令給DSP,DSP即可把PC下傳的FPGA的配置數(shù)據(jù)通過JTAG寫入FPGA完成在線升級。該方法的優(yōu)點在于:無需額外配置芯片(DSP在不需要給FPGA進(jìn)行在線升級時,可進(jìn)行其他工作),簡單可靠,在低功耗和高溫的應(yīng)用中顯得更為重要。

1 方案設(shè)計

圖1所示為整體結(jié)構(gòu)設(shè)計方案,由PC、UART接口、DSP、RAM存儲器、FPGA以及相應(yīng)的外圍輔助電路構(gòu)成。其中TMS320F28335芯片是TI公司2000系列的DSP芯片,A3P250為Actel公司ProASIC3系列的FPGA芯片,RAM芯片為IS61LV51216。DSP的4個GPIO與FPGA的JTAG接口相連,而DSP通過串口轉(zhuǎn)USB與PC通信。這些芯片都能在125℃環(huán)境下正常穩(wěn)定地工作。其中A3P250一般的靜態(tài)待機電流僅幾mA。

系統(tǒng)基本實現(xiàn)步驟為:

①基于VC編寫文件轉(zhuǎn)換軟件,實現(xiàn)FPGA的程序代碼(.dat文件)轉(zhuǎn)換成2位十六進(jìn)制的數(shù)據(jù),并存儲在txt文檔中。

②PC發(fā)送下載代碼指令至DSP,通知DSP有代碼需要下傳。之后就可以把FPGA程序代碼(txt文檔)以十六進(jìn)制數(shù)據(jù)發(fā)送給DSP,DSP將收到2位十六進(jìn)制數(shù)據(jù)存至外部RAM中。每個地址存兩個2位十六進(jìn)制數(shù)據(jù),先存低位,再存高位(存入RAM是由于FPGA的程序代碼量比較大)。

③DSP對下載的代碼進(jìn)行CRC校驗,回傳調(diào)試信息。若代碼CRC校驗成功,PC就可以發(fā)送編程指令通知DSP給FPGA編程。

④DSP控制FPGA JTAG實現(xiàn)讀取FPGA設(shè)備的ID,驗證是否與配置數(shù)據(jù)中的ID一致。成功,則開始FPGA編程。DSP實時回傳編程的調(diào)試信息給PC,方便觀察調(diào)試。編程成功之后,F(xiàn)PGA即可正常運行。

由于串口傳輸過程只需要兩根信號線,即傳輸線TX以及接收線RX,故傳輸協(xié)議簡單,且較好地避免了JTAG距離的限制。同時,系統(tǒng)在需要對DSP的配置控制功能進(jìn)行升級時,也可以通過串口實現(xiàn)。

2 方案實現(xiàn)

2.1 系統(tǒng)硬件設(shè)計和實現(xiàn)

根據(jù)方案設(shè)計,配置控制電路如圖2所示。在本系統(tǒng)中FPGA的JTAG口與DSP的GPIO相連,DSP的SCIA接口經(jīng)RS485收發(fā)器和串口轉(zhuǎn)USB芯片連接至PC,實現(xiàn)指令下傳至DSP和調(diào)試信息上傳至PC。DSP在外部接口(XINTF)的ZONE7區(qū)(共3個區(qū)域,另兩個為ZONE0、ZONE6)外部擴展1片512 KB×16的外部RAM,用以存儲FPGA的配置碼流。F28335的XINTF區(qū)域可以通過編程來配置特定的等待狀態(tài)數(shù),選通信號的建立和保持時間,而且讀寫訪問可以獨立配置。當(dāng)片選信號被拉低時,用戶可以訪問該區(qū)域。如當(dāng)程序訪問0x00300000時,就會產(chǎn)生外部地址0x00000和ZONE7區(qū)片選信號(

)。另外,需特別注意的是,在編程電壓VPUMP和地之間需接0.01μF和0.33%20%20μF濾波電容。不接,可能會導(dǎo)致JTAG邊界掃描接入失敗等問題。通過PC下傳下載代碼指令,DSP接收FPGA的配置碼流并保存在外部RAM,之后PC就可以下傳指令,命令DSP給FPGA再編程。

2.2 系統(tǒng)軟件設(shè)計和實現(xiàn)

2.2.1 DerectC介紹和移植

Actel公司基于Flash的FPGA只能通過JTAG接口,而JTAG使用的距離較近,程序升級必須拆卸系統(tǒng)封裝,較為麻煩,且容易造成零部件損壞。Derectc3.0是Actel提供的一系列C源程序代碼,通過移植它到不同的微處理器,將微處理器通用I/O(需支持LVTTL電平)連接至FPGA的JTAG接口,實現(xiàn)FPGA的擦除或再編程。DerectC不包含任何與應(yīng)用或者設(shè)備相關(guān)的信息,它只負(fù)責(zé)解析配置文件中的內(nèi)容,在JTAG接口上產(chǎn)生用于配置的二進(jìn)制數(shù)據(jù)流并讀取反饋數(shù)據(jù),適用于IGL002、SmartFusion2、ProASIC3、IGLOO、Smart Fusion和Fusion系列。DerectC程序框圖如圖3所示,DerectC需使用Libero生成的.dat格式的FPGA配置文件,文件需要LiberoV8.5以上才能獲得。在Libero SoC v11.1中,只需點擊gene rate programming data選項即可獲得。在使用DerectC時,只需對它作一些修改,增加一些必要的API函數(shù),然后添加至C工程中即可。

把DerectC移植到DSP中,主要經(jīng)過以下步驟:

①針對使用的FPGA系列,添加和去除預(yù)處理語句,去除不必要的代碼;

②將JTAG信號映射到具體的DSP硬件引腳;

③添加JTAG輸入輸出函數(shù)和配置文件數(shù)據(jù)塊讀取函數(shù)等必要的API函數(shù)。

對于IGLOO2、SmartFusion2、IGLOO、Smart Fusion和Fusion系列的FPGA,移植過程是完全一樣的。移植完成后,對于以上提到的所有Actel的FPGA芯片都可以實現(xiàn)在線編程,只是FPGA的配置電路中濾波電容的個數(shù)可能稍有差異。

另外,DerectC還支持FPGA的菊花鏈編程。在移植DerectC時,只需設(shè)置好在邊界掃描鏈中IR和DR的長度和額外支持菊花鏈的預(yù)編譯指令。此時只需一塊DSP就可以依次完成多塊FPGA的在線升級,大大節(jié)省了硬件開支。

2.2.2 配置文件格式及轉(zhuǎn)換

A3P系列Libero產(chǎn)生的配置文件包含3個方面的內(nèi)容:

①頭塊:包含二進(jìn)制文件的識別信息(軟件版本號等)、數(shù)據(jù)塊的數(shù)目、總的字節(jié)長度、目標(biāo)設(shè)備ID和DerectC識別所支持的塊所需的標(biāo)志位等,共69字節(jié)。

②數(shù)據(jù)查找表:在DerectC中使用到的各數(shù)據(jù)塊在文件的相對起始地址以及長度,每個數(shù)據(jù)占5字節(jié)。

③數(shù)據(jù)塊:二進(jìn)制數(shù)據(jù)碼流,用于給FPGA在線編程的主要數(shù)據(jù),總長度以字節(jié)為單位,最后包含總的data文件的CRC校驗碼。

方便下傳數(shù)據(jù),基于VC把整個二進(jìn)制data文件轉(zhuǎn)換成2位十六進(jìn)制的數(shù)據(jù)流并存儲在TXT文檔中,同時在文件的頭部加入表明整個data文件長度的4字節(jié),以方便PC指示DSP下傳的數(shù)據(jù)長度。具體為VC以二進(jìn)制的形式打開配置文件,讀取其長度寫入TXT文檔,并每次讀取8位二進(jìn)制數(shù)據(jù)轉(zhuǎn)換為2位十六進(jìn)制數(shù)據(jù)。DSP把收到的數(shù)據(jù)依次存在DSP的外部RAM(每個地址存兩個字節(jié)),先存低位,再存高位。

2.2.3 配置程序數(shù)據(jù)的下載實現(xiàn)

本設(shè)計PC通過USB轉(zhuǎn)串口向DSP發(fā)送指令,以指示DSP需要進(jìn)行什么樣的操作。表1為常用的幾個串口指令,指令長度都為2字節(jié)。

DSP的主程序流程圖如圖4所示。DSP串口中斷等待PC下傳FPGA在線編程指令,對收到的FPGA配置數(shù)據(jù)流進(jìn)行CRC校驗,保證程序的完整性。之后DSP接入FPGA邊界掃描鏈,在JTAG每個TCK上升沿讀取TDI的數(shù)據(jù)或向TD0輸出1位數(shù)據(jù),在DSP把IR操作數(shù)內(nèi)容寫入IR,F(xiàn)PGA會自動把DR放入邊界掃描鏈,進(jìn)行FPGA的數(shù)據(jù)讀出與寫入,從而實現(xiàn)讀取FPGA設(shè)備ID與配置數(shù)據(jù)流中的設(shè)備ID匹配、FPGA的擦除、配置文件中的數(shù)據(jù)塊寫入FPGA等操作,完成在線升級。

3 試驗結(jié)果分析

為了確保配置控制方法的可靠性,通過串口往DSP下傳經(jīng)過VC轉(zhuǎn)換的FPGA配置文件,DSP接收到全部配置文件后會進(jìn)行CRC校驗。檢驗的結(jié)果通過串口實時回傳至PC,保證了配置文件的完整性。之后DSP讀取FPGA的設(shè)備ID,與配置文件的ID進(jìn)行對比,確保目標(biāo)設(shè)備的正確性,結(jié)果同樣通過PC顯示出來。

在上述驗證通過的情況下,DSP開始對FPGA進(jìn)行擦除操作,之后向FPGA中燒寫跑馬燈配置碼流數(shù)據(jù)。和Actel的FlashPRO3編程器一樣,燒寫完成之后會對編程結(jié)果進(jìn)行驗證,確保燒寫的正確性。以上過程中,DSP串口會返回調(diào)試過程信息給PC,以表明程序燒寫進(jìn)程。整個過程完成后,LED燈按預(yù)期程序設(shè)計有規(guī)律地閃爍,無需重新啟動。在實驗系統(tǒng)環(huán)境中,一次配置的時間約為97 s,與使用Actel的FlashPRO3編程器的時間相差無幾,配置時間很短。

結(jié)語

本設(shè)計實現(xiàn)了一種基于DSP GPIO口驅(qū)動FPGA的JTAG接口,以及串口對Actel FPGA進(jìn)行系統(tǒng)的在線編程。不僅適用于某一型號的Actel的FPGA,而且適用于IGLOO2、Smart Fus ion2、ProASIC3、IGLOO、Smart Fusion和Fusion系列,適用范圍很廣。另外,該設(shè)計簡單,只需將DSP的GPIO與FPGA的JTAG中4個必要的引腳相連,串口下傳指令和FPGA配置數(shù)據(jù),無需額外的配置芯片,避免了JTAG距離的限制,且采用的芯片完全滿足高溫、低功耗的要求,具有高速高、可靠性等優(yōu)點,方便多任務(wù)的切換。使用本系統(tǒng)無需重啟就可以動態(tài)地更新FPGA應(yīng)用,使得Actel的FPGA應(yīng)用能不受在線升級的距離困擾。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉