www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]一種遠(yuǎn)程在線更新FPGA程序的方法

1 概述
    現(xiàn)場可編程門陣列(Field Programmable Gate Array,FPGA)器件具有高密度、低功耗、高速、高可靠性等優(yōu)點(diǎn),在航空航天、通信、工業(yè)控制等方面得到了大量應(yīng)用。FPGA的處理器分為軟核和硬核,并且軟核處理器具有高度的靈活性和可配置性。
    由于FPGA器件采用的是SRAM工藝,在斷電的情況下FPGA內(nèi)的配置數(shù)據(jù)將丟失,所以需要非易失的存儲器來結(jié)合FPGA完成嵌入式系統(tǒng)的設(shè)計(jì)。EPCS(Erasable Programmable Configurable Serial)Flash屬于串行接口Flash,具有接口簡單、體積小、配置方便的特點(diǎn),通常用來存儲FPGA的配置文件和NiosII的軟件可執(zhí)行代碼。在經(jīng)過合理的配置后,系統(tǒng)在上電后就可以從EPCSFlash中讀取這些文件來啟動整個(gè)系統(tǒng)。
    為了能使系統(tǒng)得到更靈活的應(yīng)用,充分發(fā)揮FPGA的靈活性、高效性,F(xiàn)PGA的軟硬件程序都需要方便的更新和升級功能;而當(dāng)形成產(chǎn)品后,通過JTAG和NiosII IDE工具來聯(lián)合完成對EPCS Flash的更新燒寫很不方便。為此,本文結(jié)合Altera公司提供的工具,提出了一種遠(yuǎn)程在線更新FPGA配置文件和NiosII程序文件的方法。

2 系統(tǒng)硬件結(jié)構(gòu)
    系統(tǒng)硬件結(jié)構(gòu)如圖1所示。系統(tǒng)主要有上位機(jī)系統(tǒng)、FPGA系統(tǒng)、EPCS Flash三個(gè)主體部分。上位機(jī)系統(tǒng)提供人機(jī)交互的部分,F(xiàn)PGA系統(tǒng)包括NiosII處理器、EPCS控制器、網(wǎng)絡(luò)及串行接口和其他外部接口,EPCSFlash主要用于存儲FPGA的配置文件和Nios程序映像文件。上位機(jī)系統(tǒng)通過FPGA集成的網(wǎng)絡(luò)及串行接口來完成通信工作。


    FPGA采用Altera公司的CycloneIII系統(tǒng)的EP3C40F48417N芯片。它具有低功耗、高集成度、易于使用的特性。EPCS Flash采用Altera公司的EPCS16SI16N芯片,它支持多種可配置的時(shí)鐘源,最高支持100 MHz的外部時(shí)鐘源,具有16 Mb的存儲空間,足夠滿足一般的FPGA配置文件和Nios程序文件的存儲需要。

3 更新程序處理流程
    更新FPGA的配置文件和NiosII的應(yīng)用程序的流程如圖2所示。


    本方法把由NiosII IDE生成的FPGA配置文件和NiosII程序文件合并,并編程為一個(gè)可以直接執(zhí)行的、包含F(xiàn)PGA配置文件和NiosII程序文件的二進(jìn)制BIN文件。然后把該文件通過X-modem協(xié)議由上位機(jī)系統(tǒng)傳輸給NiosII的應(yīng)用程序。NiosII的應(yīng)用程序接收到完整的BIN文件后,把該BIN文件寫入到EPCS Flash中。最后,Nios II的應(yīng)用程序停止看門狗,程序重新啟動,即完成了FPGA的遠(yuǎn)程在線更新程序的過程。

4 合并程序文件
    Nios II的啟動要經(jīng)歷兩個(gè)過程:
    ①FPGA器件本身的配置過程。如果內(nèi)部邏輯中使用了NiosII,則配置完成的FPGA中包含有NiosII軟核CPU。
    ②NiosII本身的應(yīng)用過程。一旦FPGA配置成功后,NiosII就被邏輯中的復(fù)位電路復(fù)位,從reset地址開始執(zhí)行代碼。
    Nios II IDE將FPGA的配置文件(.sof文件)和應(yīng)用程序(.elf文件)轉(zhuǎn)成flash格式文件,轉(zhuǎn)換后的flash格式文件是一種S-Record格式數(shù)據(jù),包含如下區(qū)域:<type><length><address><data><checksum>。各字段的意思分別如下:<type>表示記錄的類型;<length>表示數(shù)據(jù)的長度;<address>表示數(shù)據(jù)寫入的起始地址,該字段的長度取決于<type>的取值;<data>表示存儲的數(shù)據(jù);<checknum>表示校驗(yàn)位。[!--empirenews.page--]
    配置文件和應(yīng)用程序可能有多個(gè)段,每個(gè)段前面都插有一個(gè)“程序記錄”。一個(gè)“程序記錄”由2個(gè)32位的數(shù)據(jù)構(gòu)成,一個(gè)是32位的整數(shù),另一個(gè)是32位的地址,分別表示程序段本身的長度和程序段的運(yùn)行時(shí)地址。其存儲布局如圖3所示。


    為了在更新程序時(shí)把FPGA配置文件和Nios II應(yīng)用程序一起更新,把FPGA配置文件和Nios II應(yīng)用程序合并成一個(gè)文件,并且把合并后的Flash格式的文件轉(zhuǎn)換成不需要地址解碼就能直接執(zhí)行的二進(jìn)制BIN文件。具體處理流程如圖4所示。

[!--empirenews.page--]
    在合并程序的過程中,去掉了flash文件中的長度、目的地址等用于解析程序的信息,并且把程序映像由字符格式轉(zhuǎn)換為二進(jìn)制格式。合并后的BIN文件包含F(xiàn)PGA配置文件和Nios II應(yīng)用程序,并且Nios II應(yīng)用程序緊挨在FPGA配置文件的后面,其存儲布局如圖5所示。



5 Nios II更新程序模塊處理
    Nios II程序中的更新程序模塊主要負(fù)責(zé)從上位機(jī)接收合并后的可執(zhí)行BIN文件,并把該BIN文件寫入EPCSFlash,處理流程如圖6所示。


5.1 程序文件的傳輸
    Nios II應(yīng)用程序中的更新程序模塊和上位機(jī)系統(tǒng)采用X-modem協(xié)議傳輸程序文件,X-modem協(xié)議是一種網(wǎng)口和串口通信中廣泛用到的異步傳輸協(xié)議。
    如果在程序傳輸過程中出現(xiàn)錯(cuò)誤,更新程序模塊能夠通過設(shè)置超時(shí)來退出更新程序的狀態(tài)。
5.2 對EPCS Flash的讀寫
    由于EPCS Flash的串行配置器件定義了特殊的讀寫協(xié)議,所以Nios II程序只能通過Altera提供的HAL API(Application Program Inter face,應(yīng)用程序接口)來完成讀寫Flash。打開、關(guān)閉Flash設(shè)備的API為:alt flash open_dev()和alt_flash_close_dev()。操作Flash讀寫
的API為:alt_read_flash()和alt_write_flash_block()。清除Flash的API為alt_erase_falsh_block()。

結(jié)語
    本文以提高FPGA遠(yuǎn)程更新程序的方便性為目標(biāo),提出了一種基于EPCS Flash的遠(yuǎn)程在線更新FPGA程序的方法,從而在應(yīng)用中能夠使基于FPGA的產(chǎn)品更加方便地維護(hù)升級。

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

柏林2025年9月9日 /美通社/ -- 2025年9月5日,納斯達(dá)克上市公司優(yōu)克聯(lián)集團(tuán)(NASDAQ: UCL)旗下全球互聯(lián)品牌GlocalMe,正式亮相柏林國際消費(fèi)電子展(IFA 2025),重磅推出融合企...

關(guān)鍵字: LOCAL LM BSP 移動網(wǎng)絡(luò)

深圳2025年9月9日 /美通社/ -- PART 01活動背景 當(dāng)技術(shù)的鋒芒刺穿行業(yè)壁壘,萬物互聯(lián)的生態(tài)正重塑產(chǎn)業(yè)疆域。2025年,物聯(lián)網(wǎng)產(chǎn)業(yè)邁入?"破界創(chuàng)造"與"共生進(jìn)化"?的裂變時(shí)代——AI大模型消融感知邊界,...

關(guān)鍵字: BSP 模型 微信 AIOT

"出海無界 商機(jī)無限"助力企業(yè)構(gòu)建全球競爭力 深圳2025年9月9日 /美通社/ -- 2025年8月28日, 由領(lǐng)先商業(yè)管理媒體世界經(jīng)理人攜手環(huán)球資源聯(lián)合主辦、深圳?前海出海e站通協(xié)辦的...

關(guān)鍵字: 解碼 供應(yīng)鏈 AI BSP

柏林2025年9月9日 /美通社/ -- 柏林當(dāng)?shù)貢r(shí)間9月6日,在2025德國柏林國際電子消費(fèi)品展覽會(International Funkausstellung...

關(guān)鍵字: 掃地機(jī)器人 耳機(jī) PEN BSP

武漢2025年9月9日 /美通社/ -- 7月24日,2025慧聰跨業(yè)品牌巡展——湖北?武漢站在武漢中南花園酒店隆重舉辦!本次巡展由慧聰安防網(wǎng)、慧聰物聯(lián)網(wǎng)、慧聰音響燈光網(wǎng)、慧聰LED屏網(wǎng)、慧聰教育網(wǎng)聯(lián)合主辦,吸引了安防、...

關(guān)鍵字: AI 希捷 BSP 平板

上海2025年9月9日 /美通社/ -- 9月8日,移遠(yuǎn)通信宣布,其自研藍(lán)牙協(xié)議棧DynaBlue率先通過藍(lán)牙技術(shù)聯(lián)盟(SIG)BQB 6.1標(biāo)準(zhǔn)認(rèn)證。作為移遠(yuǎn)深耕短距離通信...

關(guān)鍵字: 藍(lán)牙協(xié)議棧 移遠(yuǎn)通信 COM BSP

上海2025年9月9日 /美通社/ -- 為全面落實(shí)黨中央、國務(wù)院和上海市委、市政府關(guān)于加快發(fā)展人力資源服務(wù)業(yè)的決策部署,更好發(fā)揮人力資源服務(wù)業(yè)賦能百業(yè)作用,8月29日,以"AI智領(lǐng) HR智鏈 靜候你來&quo...

關(guān)鍵字: 智能體 AI BSP 人工智能

北京2025年9月8日 /美通社/ -- 近日,易生支付與一汽出行達(dá)成合作,為其自主研發(fā)的"旗馭車管"車輛運(yùn)營管理平臺提供全流程支付通道及技術(shù)支持。此次合作不僅提升了平臺對百余家企業(yè)客戶的運(yùn)營管理效率...

關(guān)鍵字: 一汽 智能化 BSP SAAS

深圳2025年9月8日 /美通社/ -- 晶泰科技(2228.HK)今日宣布,由其助力智擎生技制藥(PharmaEngine, Inc.)發(fā)現(xiàn)的新一代PRMT5抑制劑PEP0...

關(guān)鍵字: 泰科 AI MT BSP

上海2025年9月5日 /美通社/ -- 由上海市經(jīng)濟(jì)和信息化委員會、上海市發(fā)展和改革委員會、上海市商務(wù)委員會、上海市教育委員會、上海市科學(xué)技術(shù)委員會指導(dǎo),東浩蘭生(集團(tuán))有限公司主辦,東浩蘭生會展集團(tuán)上海工業(yè)商務(wù)展覽有...

關(guān)鍵字: 電子 BSP 芯片 自動駕駛
關(guān)閉