0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于嵌入式微控制器與FPGA通過配置的效率和靈活性

電子設(shè)計 ? 來源:電子技術(shù)應(yīng)用 ? 作者:常青,李大軍,喬 ? 2021-06-19 17:32 ? 次閱讀

作者:常青,李大軍,喬紅宇,梅順良

在現(xiàn)今的數(shù)字系統(tǒng)設(shè)計中,以“嵌入式微控制器+FPGA”為核心的體系結(jié)構(gòu)因其強(qiáng)大的處理能力和靈活的工作方式而被廣泛采用。嵌入式微控制器的優(yōu)勢在于將微處理器內(nèi)核與豐富多樣的外圍接口設(shè)備緊密結(jié)合,在提供強(qiáng)大的運(yùn)算、控制功能的同時,降低了系統(tǒng)成本和功耗,因而適合作為數(shù)字系統(tǒng)的控制核心;FPGA的優(yōu)勢在于超高速、豐富的邏輯資源以及用戶可靈活配置的邏輯功能,適用于邏輯接口功能多種多樣、靈活可變的場合。將二者結(jié)合形成優(yōu)勢互補(bǔ),如有需要,再配以適當(dāng)?shù)膶S?a target="_blank">芯片(例如音視頻編解碼器、數(shù)字調(diào)制解調(diào)器等)。這種體系結(jié)構(gòu)適用于大多數(shù)復(fù)雜數(shù)字系統(tǒng)的設(shè)計。

如系統(tǒng)中包含可編程器件,就必須考慮其功能配置的問題。然而,傳統(tǒng)的FPGA配置方案(例如調(diào)試階段的專用下載電費(fèi)方式、成品階段的專用存儲器方式)在成本、效率、靈活性等方面都存在著明顯的不足。針對這樣的實(shí)際問題,基于嵌入式微控制器與FPGA廣泛共存于復(fù)雜數(shù)字系統(tǒng)的背景,考慮到大量數(shù)字系統(tǒng)要求接入internet的現(xiàn)狀,借鑒軟件無線電“一機(jī)多能”的思想,提出了一種基于嵌入式系統(tǒng)和Internet的FPGA動態(tài)配置方案。該方案的提出,旨在基于系統(tǒng)現(xiàn)有的、通用的軟硬件資源,盡可能地提高FPGA配置的效率和靈活性。實(shí)踐證明,該方案可行、實(shí)用,達(dá)到了設(shè)計目的。

1 FPGA配置的期基本問題及現(xiàn)有的解決方案

為輪述方便,將基于SRAM工藝的FPGA的配置流程用圖1所示的模型表示。從圖1中可以看到,F(xiàn)PGA的配置過程實(shí)質(zhì)上是兩次數(shù)據(jù)的傳輸過程(分別由配置數(shù)據(jù)源到時序控制器和時序控制器到目標(biāo)FPGA)。因此,將這兩次關(guān)鍵的數(shù)據(jù)傳輸作為FPGA配置的兩個基本問題,并在下文中針對不同的傳輸方式討論各自的優(yōu)缺點(diǎn),從而尋求合理的解決方案。

傳統(tǒng)的配置方式包括應(yīng)用于調(diào)試階段的專用下載電費(fèi)方式和應(yīng)用于成員階段的專用 非易失性存儲器方式。在這兩種方式中,上文所提到的兩次數(shù)據(jù)傳輸完全由FPGA廠商所提供的軟硬件完成。這樣的解決方案確實(shí)方便了一般的FPGA用戶,因為他們不必花費(fèi)精力關(guān)心配置的細(xì)節(jié),但同時也不得不面對不少的缺陷:首先,專用下載電費(fèi)和專用非易失性存儲器的成本非常高,雖然用戶可以根據(jù)FPGA廠商提供的原理圖自制下載電纜,但專用非易失性存儲器是肯定無法自制的,而且有些不支持ISP(在系統(tǒng)可編程)的器件不定期必須配以合適的編程器,進(jìn)一步增加了開發(fā)的成本;第二,常見的專用下載電費(fèi)都是使用計算機(jī)并口產(chǎn)生串行的配置信號,而以并口線作為傳輸媒介,注定其有效傳輸距離非常有限;第三,專用非易失性存儲器的配置方式?jīng)Q定了目標(biāo)FPGA只能接收單一配置文件,即在系統(tǒng)運(yùn)行過程中,F(xiàn)PGA不可能根據(jù)不同情況動態(tài)調(diào)整邏輯功能,這樣的設(shè)計無法滿足某些應(yīng)用中對于系統(tǒng)靈活性的要求。

首先,專用下載電纜和專用非易失性存儲器的成本非常高,雖然用戶可以根據(jù)FPGA廠商提供的原理圖自制下載電費(fèi),但專用非易失性存儲器是肯定無法自制的,而且有些不支持ISP(在系統(tǒng)可編程)的器件還必須配以合適的編程器,進(jìn)一步增加了開發(fā)的成本;第二,常見的專用下載電纜都是使用計算機(jī)并口產(chǎn)生串行的配置信號,而以并口線作為傳輸媒介,注定其有效傳輸距離信號,而以并口線作為傳輸媒介,注定其有效傳輸距離非常有限;第三,專用非易失性存儲器的配置方式?jīng)Q定了目標(biāo)FPGA只能接收單一配置文件,即在系統(tǒng)運(yùn)行過程中,F(xiàn)PGA不可能根據(jù)不同情況動態(tài)調(diào)整邏輯功能,這樣的設(shè)計無法滿足某些應(yīng)用中對于系統(tǒng)靈活性的要求。

針對上述各種缺陷,有人提出了改進(jìn)方案,例如在系統(tǒng)中存在微控制器的前提下,用通用異步串口RS232替代專用的配置電纜、用通用的非易失性存儲器替代專用的非易失性存儲器。這些改進(jìn)方案在一定程度上彌補(bǔ)了傳統(tǒng)配置方案的不足,但也存在一些新的缺陷:通用異步串口的傳輸速率很有限,無法滿足目前一些新的缺陷:通用異步串口的傳輸速率很有限,無法滿足目前一些大規(guī)模FPGA的配置要求;傳輸距離雖有明顯提高,但仍然無法滿足某些用戶對于遠(yuǎn)程、跨區(qū)域的測試、維護(hù)和更新的需要。

2 基于嵌入式微控制器和internet的解決方案

2.1 方案綜述

本設(shè)計的目標(biāo)是基于系統(tǒng)中已有的軟硬件資源,盡可能提高FPGA配置的效率和靈活性??紤]到相當(dāng)多的復(fù)雜數(shù)字系統(tǒng):(1)包含微控制器(具有多個通用I/O)及其程序存儲器; (2)具有接入Internet的能力(例如系統(tǒng)硬件中包含以太網(wǎng)接口,軟件中移植了TCP/IP協(xié)議),提出一種新的FPGA配置方案,如圖2所示。從圖2中可以看出,這種方案的實(shí)質(zhì)是將Internet作為傳輸配置數(shù)據(jù)的媒體,并用嵌入式微控制器的程序存儲器存儲這些數(shù)據(jù),從而完成第一節(jié)中提到的第一次數(shù)據(jù)傳輸;在嵌入式微控制器的通用I/O上實(shí)現(xiàn)FPGA配置時序,從而完成第二次數(shù)據(jù)傳輸。

為驗證這種方案的可行性和有效性,在船載自動識別系統(tǒng)(AIS)的設(shè)計中實(shí)現(xiàn)了該方案。相關(guān)的主要器件包括:CPU采用SAMSUNG公司的S3C44B0X;程序存儲器采用MACRONIX公司的MX29LV160ABTC;FPGA采用XILINX公司的XC2S200PQ208;以太網(wǎng)控制器采用REALTEK公司的RTL8019AS。上述器件均具有同類產(chǎn)品的一般特性,因而這一設(shè)計實(shí)例并不驗證的一般性。

2.2 配置文件的傳輸協(xié)議TFTP

[table][/table]

在方案的驗證實(shí)例中,使用基于UDP的TFTP協(xié)議在以太網(wǎng)內(nèi)傳輸配置文件,協(xié)議棧如圖3所示。由于UDP屬于不可靠的面向無連接的傳輸協(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)境、簡化性能測試的考慮,而且在應(yīng)用層實(shí)現(xiàn)了部分TCP的功能(例如偽連接、簡單的應(yīng)答和重發(fā)、數(shù)據(jù)包排序等功能),可以保證數(shù)據(jù)傳輸?shù)馁|(zhì)量。

標(biāo)準(zhǔn)的TFTP(Trivial File Transfer Protocol)是一種基于UDP的、簡單的文件傳輸協(xié)議。TFTP的設(shè)計目標(biāo)是簡單小巧且易于實(shí)現(xiàn),因此遠(yuǎn)不如采用多重并發(fā)TCP連接的FTP功能強(qiáng)大(例如TFTP不支持目錄列表和用戶權(quán)限驗證,而且傳輸效率比較低)。

TFTP的基本通信過程為:客戶端向服務(wù)器發(fā)出讀或?qū)懻埱?;如果服?wù)器接收讀寫請求,正式的數(shù)據(jù)傳輸開始,每段數(shù)據(jù)長度固定為512字節(jié);長度小于512字節(jié)的數(shù)據(jù)段標(biāo)志傳輸結(jié)束。此外,協(xié)議中還規(guī)定了超時、重發(fā)等異常處理機(jī)制。

在具體實(shí)現(xiàn)中,將TFTP服務(wù)器(待配置FPGA所在的目標(biāo)系統(tǒng))設(shè)計成具有三個狀態(tài)的狀態(tài)機(jī),其邏輯狀態(tài)轉(zhuǎn)移圖如圖4所示。PC機(jī)一端直接使用DOS下的TFTP命令。

2.3 FPGA配置文件及配置流程

用微控制器的通用I/O實(shí)現(xiàn)FPGA配置必須準(zhǔn)確掌握:(1)配置文件的格式;(2)配置信號的時序。

一般來說,F(xiàn)PGA開發(fā)軟件可以生成多種不同類型的配置文件,用戶可以根據(jù)不同的應(yīng)用環(huán)境選用這些配置文件。本設(shè)計采用.bin文件。值得注意的是,對于某一特定的芯片,無論設(shè)計簡單或是復(fù)雜,其配置的數(shù)據(jù)的長度是固定的,但配置文件大小卻因類型的不同而有所差異。

常見的FPGA配置模式包括主動串行模式、被動串行模式、被動并行模式和邊界掃描模式等。為與常見的下載電費(fèi)兼容并節(jié)約微控制器的I/O口線,本實(shí)現(xiàn)采用被動串行模式。圖5為配置子程序的流程圖。

基于微控制器和互聯(lián)網(wǎng)的配置方案在傳輸速率、傳輸距離上較其他方案均有明顯優(yōu)勢,同時又符合軟件無線“一機(jī)多能”的設(shè)計思想,并能滿足某些用戶對于在線調(diào)試、更新和維護(hù)的需求。此外,必須看到,新方案在具備種種優(yōu)勢的同時,對用戶設(shè)計的軟件提出了一定的要求。事實(shí)上,完全具備這些軟硬件條件(例如移植TCP/IP協(xié)議、使用嵌入式微控制器)符合現(xiàn)今數(shù)字系統(tǒng)設(shè)計的趨勢,設(shè)計該配置方案的初衷正是基于這種設(shè)計理念,具有相當(dāng)?shù)膶?shí)用性。

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 微控制器
    +關(guān)注

    關(guān)注

    48

    文章

    7552

    瀏覽量

    151423
  • 嵌入式
    +關(guān)注

    關(guān)注

    5082

    文章

    19126

    瀏覽量

    305198
  • FPG
    FPG
    +關(guān)注

    關(guān)注

    1

    文章

    54

    瀏覽量

    79974
收藏 人收藏

    評論

    相關(guān)推薦

    STM32嵌入式微控制器快速上手

    STM32嵌入式微控制器快速上手 經(jīng)典教材
    發(fā)表于 08-15 19:57

    STM32嵌入式微控制器快速上手

    STM32嵌入式微控制器快速上手
    發(fā)表于 06-01 12:21

    IoT設(shè)備中嵌入式微控制器的安全機(jī)制介紹

    IoT設(shè)備中嵌入式微控制器的安全機(jī)制
    發(fā)表于 02-22 06:19

    嵌入式Linux的靈活性

    嵌入式Linux的靈活性,為嵌入式計算而設(shè)計的高效、節(jié)能的處理的可用性,以及新處理的低成本,使許多工業(yè)公司在
    發(fā)表于 11-04 08:51

    嵌入式微控制器和微處理

    嵌入式微控制器(通常稱作單片機(jī))和微處理作為各種電子產(chǎn)品的核心器件,不僅應(yīng)用在航空、航天、工業(yè)和汽車領(lǐng)域,還廣泛應(yīng)用在各種民用產(chǎn)品中。力源為您提供多家國際知名品牌公司的嵌入式微控制器和微處理
    發(fā)表于 03-02 01:19 ?115次下載

    基于嵌入式系統(tǒng)和Internet提高FPGA配置效率靈活性

    在現(xiàn)今的數(shù)字系統(tǒng)設(shè)計中,以“嵌入式微控制器+FPGA”為核心的體系結(jié)構(gòu)因其強(qiáng)大的處理能力和靈活的工作方式而被廣泛采用。
    的頭像 發(fā)表于 05-16 08:15 ?1557次閱讀
    基于<b class='flag-5'>嵌入式</b>系統(tǒng)和Internet提高<b class='flag-5'>FPGA</b><b class='flag-5'>配置</b>的<b class='flag-5'>效率</b>和<b class='flag-5'>靈活性</b>

    嵌入式微控制器實(shí)驗任務(wù)書

    嵌入式微控制器實(shí)驗任務(wù)書。
    發(fā)表于 03-25 11:14 ?2次下載

    嵌入式微控制器技術(shù)實(shí)驗任務(wù)書(附程序和仿真圖)

    嵌入式微控制器技術(shù)實(shí)驗任務(wù)書(附程序和仿真圖)(嵌入式開發(fā)需要用什么語言)-該文檔為嵌入式微控制器技術(shù)實(shí)驗任務(wù)書(附程序和仿真圖)講解文檔,是一份很不錯的參考資料,具有較高參考價值,感興趣的可以下載看看………………
    發(fā)表于 07-30 15:16 ?7次下載
    <b class='flag-5'>嵌入式微控制器</b>技術(shù)實(shí)驗任務(wù)書(附程序和仿真圖)

    嵌入式微控制器應(yīng)用中的無線(OTA)更新方案

    電子發(fā)燒友網(wǎng)站提供《嵌入式微控制器應(yīng)用中的無線(OTA)更新方案.pdf》資料免費(fèi)下載
    發(fā)表于 11-22 16:18 ?0次下載
    <b class='flag-5'>嵌入式微控制器</b>應(yīng)用中的無線(OTA)更新方案

    嵌入式微控制器應(yīng)用中的無線(OTA)更新:設(shè)計權(quán)衡與經(jīng)驗教訓(xùn)

    電子發(fā)燒友網(wǎng)站提供《嵌入式微控制器應(yīng)用中的無線(OTA)更新:設(shè)計權(quán)衡與經(jīng)驗教訓(xùn).pdf》資料免費(fèi)下載
    發(fā)表于 11-23 16:01 ?0次下載
    <b class='flag-5'>嵌入式微控制器</b>應(yīng)用中的無線(OTA)更新:設(shè)計權(quán)衡與經(jīng)驗教訓(xùn)

    FPGA嵌入式設(shè)計帶來了強(qiáng)大的功能與靈活性

    解決之道。 隨著 FPGA 技術(shù)逐步延伸至軍事電子系統(tǒng)以及嵌入式電子產(chǎn)業(yè)的幾乎全部領(lǐng)域,能發(fā)揮可編程邏輯優(yōu)勢的應(yīng)用已經(jīng)占據(jù)主流地位。通信、機(jī)載和控制系統(tǒng)尤其受益于 FPGA 的設(shè)計
    的頭像 發(fā)表于 12-07 09:35 ?541次閱讀

    嵌入式微處理器嵌入式微控制器的區(qū)別

    嵌入式微處理器嵌入式微控制器在多個方面存在顯著的區(qū)別。
    的頭像 發(fā)表于 03-29 11:44 ?1578次閱讀

    嵌入式微控制器的自動代碼生成

    然而,在工作中,電氣工程師經(jīng)常被分配對嵌入式微控制器進(jìn)行編程的任務(wù),這是有充分理由的:他們在如何控制電力電子電路方面擁有經(jīng)驗,并且了解整個系統(tǒng)的要求。此外,他們對微控制器的片上外設(shè)(例如 PWM 發(fā)生
    發(fā)表于 05-03 17:33 ?449次閱讀
    <b class='flag-5'>嵌入式微控制器</b>的自動代碼生成

    嵌入式微控制器嵌入式微處理器的聯(lián)系

    嵌入式微控制器嵌入式微處理器嵌入式系統(tǒng)領(lǐng)域中都扮演著至關(guān)重要的角色,它們之間存在著緊密的聯(lián)系,同時也各具特色。以下是對兩者聯(lián)系及特點(diǎn)的詳細(xì)探討。
    的頭像 發(fā)表于 08-22 10:50 ?707次閱讀

    嵌入式系統(tǒng)中微控制器與微處理的區(qū)別

    嵌入式微控制器已成為我們?nèi)粘=佑|的眾多設(shè)備背后的無聲指揮者。從用于烹飪食物的微波爐到監(jiān)測健康的智能手表,微控制器確保這些設(shè)備能夠精準(zhǔn)、可靠地運(yùn)作。本文的目的是揭示嵌入式微控制器的世界,幫助讀者理解
    的頭像 發(fā)表于 10-14 11:02 ?445次閱讀
    <b class='flag-5'>嵌入式</b>系統(tǒng)中<b class='flag-5'>微控制器</b>與微處理<b class='flag-5'>器</b>的區(qū)別