基于嵌入式系統(tǒng)和Internet的FPGA動(dòng)態(tài)配置方案
出處:bear118 發(fā)布于:2007-04-17 13:15:10
在現(xiàn)今的數(shù)字系統(tǒng)設(shè)計(jì)中,以“嵌入式微控制器+FPGA”為的體系結(jié)構(gòu)因其強(qiáng)大的處理能力和靈活的工作方式而被廣泛采用。嵌入式微控制器的優(yōu)勢(shì)在于將微處理器內(nèi)核與豐富多樣的外圍接口設(shè)備緊密結(jié)合,在提供強(qiáng)大的運(yùn)算、控制功能的同時(shí),降低了系統(tǒng)成本和功耗,因而適合作為數(shù)字系統(tǒng)的控制;FPGA的優(yōu)勢(shì)在于超高速、豐富的邏輯資源以及用戶可靈活配置的邏輯功能,適用于邏輯接口功能多種多樣、靈活可變的場(chǎng)合。將二者結(jié)合形成優(yōu)勢(shì)互補(bǔ),如有需要,再配以適當(dāng)?shù)膶S眯酒ɡ缫粢曨l編解碼器、數(shù)字調(diào)制解調(diào)器等)。這種體系結(jié)構(gòu)適用于大多數(shù)復(fù)雜數(shù)字系統(tǒng)的設(shè)計(jì)。
如系統(tǒng)中包含可編程器件,就必須考慮其功能配置的問(wèn)題。然而,傳統(tǒng)的FPGA配置方案(例如調(diào)試階段的專用電費(fèi)方式、成品階段的專用存儲(chǔ)器方式)在成本、效率、靈活性等方面都存在著明顯的不足。針對(duì)這樣的實(shí)際問(wèn)題,基于嵌入式微控制器與FPGA廣泛共存于復(fù)雜數(shù)字系統(tǒng)的背景,考慮到大量數(shù)字系統(tǒng)要求接入Internet的現(xiàn)狀,借鑒軟件無(wú)線電“一機(jī)多能”的思想,提出了一種基于嵌入式系統(tǒng)和Internet的FPGA動(dòng)態(tài)配置方案。該方案的提出,旨在基于系統(tǒng)現(xiàn)有的、通用的軟硬件資源,盡可能地提高FPGA配置的效率和靈活性。實(shí)踐證明,該方案可行、實(shí)用,達(dá)到了設(shè)計(jì)目的。
為輪述方便,將基于SRAM工藝的FPGA的配置流程用所示的模型表示。從中可以看到,F(xiàn)PGA的配置過(guò)程實(shí)質(zhì)上是兩次數(shù)據(jù)的傳輸過(guò)程(分別由配置數(shù)據(jù)源到時(shí)序控制器和時(shí)序控制器到目標(biāo)FPGA)。因此,將這兩次關(guān)鍵的數(shù)據(jù)傳輸作為FPGA配置的兩個(gè)基本問(wèn)題,并在下文中針對(duì)不同的傳輸方式討論各自的優(yōu)缺點(diǎn),從而尋求合理的解決方案。
傳統(tǒng)的配置方式包括應(yīng)用于調(diào)試階段的專用電費(fèi)方式和應(yīng)用于成員階段的專用 非易失性存儲(chǔ)器方式。在這兩種方式中,上文所提到的兩次數(shù)據(jù)傳輸完全由FPGA廠商所提供的軟硬件完成。這樣的解決方案確實(shí)方便了一般的FPGA用戶,因?yàn)樗麄儾槐鼗ㄙM(fèi)精力關(guān)心配置的細(xì)節(jié),但同時(shí)也不得不面對(duì)不少的缺陷:首先,專用電費(fèi)和專用非易失性存儲(chǔ)器的成本非常高,雖然用戶可以根據(jù)FPGA廠商提供的原理圖自制電纜,但專用非易失性存儲(chǔ)器是肯定無(wú)法自制的,而且有些不支持ISP(在系統(tǒng)可編程)的器件不定期必須配以合適的編程器,進(jìn)一步增加了開(kāi)發(fā)的成本;第二,常見(jiàn)的專用電費(fèi)都是使用計(jì)算機(jī)并口產(chǎn)生串行的配置信號(hào),而以并口線作為傳輸媒介,注定其有效傳輸距離非常有限;第三,專用非易失性存儲(chǔ)器的配置方式?jīng)Q定了目標(biāo)FPGA只能接收單一配置文件,即在系統(tǒng)運(yùn)行過(guò)程中,F(xiàn)PGA不可能根據(jù)不同情況動(dòng)態(tài)調(diào)整邏輯功能,這樣的設(shè)計(jì)無(wú)法滿足某些應(yīng)用中對(duì)于系統(tǒng)靈活性的要求。
首先,專用電纜和專用非易失性存儲(chǔ)器的成本非常高,雖然用戶可以根據(jù)FPGA廠商提供的原理圖自制電費(fèi),但專用非易失性存儲(chǔ)器是肯定無(wú)法自制的,而且有些不支持ISP(在系統(tǒng)可編程)的器件還必須配以合適的編程器,進(jìn)一步增加了開(kāi)發(fā)的成本;第二,常見(jiàn)的專用電纜都是使用計(jì)算機(jī)并口產(chǎn)生串行的配置信號(hào),而以并口線作為傳輸媒介,注定其有效傳輸距離信號(hào),而以并口線作為傳輸媒介,注定其有效傳輸距離非常有限;第三,專用非易失性存儲(chǔ)器的配置方式?jīng)Q定了目標(biāo)FPGA只能接收單一配置文件,即在系統(tǒng)運(yùn)行過(guò)程中,F(xiàn)PGA不可能根據(jù)不同情況動(dòng)態(tài)調(diào)整邏輯功能,這樣的設(shè)計(jì)無(wú)法滿足某些應(yīng)用中對(duì)于系統(tǒng)靈活性的要求。
2 基于嵌入式微控制器和Internet的解決方案
2.1 方案綜述
本設(shè)計(jì)的目標(biāo)是基于系統(tǒng)中已有的軟硬件資源,盡可能提高FPGA配置的效率和靈活性。考慮到相當(dāng)多的復(fù)雜數(shù)字系統(tǒng):(1)包含微控制器(具有多個(gè)通用I/O)及其程序存儲(chǔ)器; (2)具有接入Internet的能力(例如系統(tǒng)硬件中包含以太網(wǎng)接口,軟件中移植了TCP/IP協(xié)議),提出一種新的FPGA配置方案,如所示。從中可以看出,這種方案的實(shí)質(zhì)是將Internet作為傳輸配置數(shù)據(jù)的媒體,并用嵌入式微控制器的程序存儲(chǔ)器存儲(chǔ)這些數(shù)據(jù),從而完成節(jié)中提到的次數(shù)據(jù)傳輸;在嵌入式微控制器的通用I/O上實(shí)現(xiàn)FPGA配置時(shí)序,從而完成第二次數(shù)據(jù)傳輸。
2.2 配置文件的傳輸協(xié)議TFTP
在方案的驗(yàn)證實(shí)例中,使用基于UDP的TFTP協(xié)議在以太網(wǎng)內(nèi)傳輸配置文件,協(xié)議棧如所示。由于UDP屬于不可靠的面向無(wú)連接的傳輸協(xié)議,因此在網(wǎng)絡(luò)結(jié)構(gòu)復(fù)雜的廣域網(wǎng)上傳輸FPGA配置數(shù)據(jù)并不適合采用TFTP協(xié)議,而必須采用可靠的、基于TCP的應(yīng)用層協(xié)議(例如FTP協(xié)議)。此處采用TFTP,完全是由于適應(yīng)AIS的運(yùn)行環(huán)境、簡(jiǎn)化性能測(cè)試的考慮,而且在應(yīng)用層實(shí)現(xiàn)了部分TCP的功能(例如偽連接、簡(jiǎn)單的應(yīng)答和重發(fā)、數(shù)據(jù)包排序等功能),可以保證數(shù)據(jù)傳輸?shù)馁|(zhì)量。
標(biāo)準(zhǔn)的TFTP(Trivial File Transfer Protocol)是一種基于UDP的、簡(jiǎn)單的文件傳輸協(xié)議。TFTP的設(shè)計(jì)目標(biāo)是簡(jiǎn)單小巧且易于實(shí)現(xiàn),因此遠(yuǎn)不如采用多重并發(fā)TCP連接的FTP功能強(qiáng)大(例如TFTP不支持目錄列表和用戶權(quán)限驗(yàn)證,而且傳輸效率比較低)。
TFTP的基本通信過(guò)程為:客戶端向服務(wù)器發(fā)出讀或?qū)懻?qǐng)求;如果服務(wù)器接收讀寫請(qǐng)求,正式的數(shù)據(jù)傳輸開(kāi)始,每段數(shù)據(jù)長(zhǎng)度固定為512字節(jié);長(zhǎng)度小于512字節(jié)的數(shù)據(jù)段標(biāo)志傳輸結(jié)束。此外,協(xié)議中還規(guī)定了超時(shí)、重發(fā)等異常處理機(jī)制。
2.3 FPGA配置文件及配置流程
用微控制器的通用I/O實(shí)現(xiàn)FPGA配置必須準(zhǔn)確掌握:(1)配置文件的格式;(2)配置信號(hào)的時(shí)序。
一般來(lái)說(shuō),F(xiàn)PGA開(kāi)發(fā)軟件可以生成多種不同類型的配置文件,用戶可以根據(jù)不同的應(yīng)用環(huán)境選用這些配置文件。本設(shè)計(jì)采用.bin文件。值得注意的是,對(duì)于某一特定的芯片,無(wú)論設(shè)計(jì)簡(jiǎn)單或是復(fù)雜,其配置的數(shù)據(jù)的長(zhǎng)度是固定的,但配置文件大小卻因類型的不同而有所差異。
常見(jiàn)的FPGA配置模式包括主動(dòng)串行模式、被動(dòng)串行模式、被動(dòng)并行模式和邊界掃描模式等。為與常見(jiàn)的電費(fèi)兼容并節(jié)約微控制器的I/O口線,本實(shí)現(xiàn)采用被動(dòng)串行模式。為配置子程序的流程圖。
參考文獻(xiàn):
[1]. RS232 datasheet http://m.58mhw.cn/datasheet/RS232_585128.html.
[2]. S3C44B0X datasheet http://m.58mhw.cn/datasheet/S3C44B0X_589522.html.
[3]. RTL8019AS datasheet http://m.58mhw.cn/datasheet/RTL8019AS_1096173.html.
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- ARM技術(shù)架構(gòu)與應(yīng)用開(kāi)發(fā)實(shí)踐指南2026/1/6 10:40:19
- 嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS)選型與移植技術(shù)指南2025/12/31 10:42:31
- 工業(yè)嵌入式系統(tǒng):通信接口技術(shù)選型與抗干擾設(shè)計(jì)實(shí)踐2025/12/15 14:36:53
- 深入解析嵌入式 OPENAMP 框架:開(kāi)啟異核通信新時(shí)代2025/7/22 16:27:29
- 一文快速了解OPENWRT基礎(chǔ)知識(shí)2025/7/14 16:59:04
- PCB防靜電(ESD)設(shè)計(jì)核心規(guī)范
- 通信系統(tǒng)基石:信道化濾波器組原理與多速率信號(hào)處理
- 接觸不良對(duì)連接器性能的影響
- 開(kāi)關(guān)電源PCB設(shè)計(jì)常見(jiàn)問(wèn)題
- 多顆MOSFET并聯(lián)的散熱設(shè)計(jì)要點(diǎn)
- PCB多層板疊層設(shè)計(jì)核心規(guī)范
- 常見(jiàn)IC芯片分類及功能介紹
- 應(yīng)對(duì)信號(hào)采集難題:抗混疊濾波器的選型與設(shè)計(jì)關(guān)鍵
- 高速連接器在通信設(shè)備中的應(yīng)用
- 電源IC過(guò)熱損壞原因分析









