日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 嵌入式 > 嵌入式軟件
[導讀]FPGA程序遠程在線更新設計

1 概述

現(xiàn)場可編程門陣列(Field Programmable Gate Array,FPGA)器件具有高密度、低功耗、高速、高可靠性等優(yōu)點,在航空航天、通信、工業(yè)控制等方面得到了大量應用。FPGA的處理器分為軟核和硬核,并且軟核處理器具有高度的靈活性和可配置性。

由于FPGA器件采用的是SRAM工藝,在斷電的情況下FPGA內的配置數(shù)據(jù)將丟失,所以需要非易失的存儲器來結合FPGA完成嵌入式系統(tǒng)的設計。EPCS(Erasable Programmable Configurable Serial)Flash屬于串行接口Flash,具有接口簡單、體積小、配置方便的特點,通常用來存儲FPGA的配置文件和Nios II的軟件可執(zhí)行代碼。在經過合理的配置后,系統(tǒng)在上電后就可以從EPCS Flash中讀取這些文件來啟動整個系統(tǒng)。

為了能使系統(tǒng)得到更靈活的應用,充分發(fā)揮FPGA的靈活性、高效性,F(xiàn)PGA的軟硬件程序都需要方便的更新和升級功能;而當形成產品后,通過JTAG和Nios II IDE工具來聯(lián)合完成對EPCS Flash的更新燒寫很不方便。為此,本文結合Altera公司提供的工具,提出了一種遠程在線更新FPGA配置文件和Nios II程序文件的方法。

2 系統(tǒng)硬件結構

系統(tǒng)硬件結構如圖1所示。

 

 

圖1 系統(tǒng)硬件結構圖

系統(tǒng)主要有上位機系統(tǒng)、FPGA系統(tǒng)、EPCS Flash三個主體部分。上位機系統(tǒng)提供人機交互的部分,F(xiàn)PGA系統(tǒng)包括Nios II處理器、EPCS控制器、網(wǎng)絡及串行接口和其他外部接口,EPCS Flash主要用于存儲FPGA的配置文件和Nios程序映像文件。上位機系統(tǒng)通過FPGA集成的網(wǎng)絡及串行接口來完成通信工作。

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

3 更新程序處理流程

更新FPGA的配置文件和Nios II的應用程序的流程如圖2所示。

 

 

圖2 更新程序處理流程

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

[!--empirenews.page--]

4 合并程序文件

Nios II的啟動要經歷兩個過程:

① FPGA器件本身的配置過程。如果內部邏輯中使用了Nios II,則配置完成的FPGA中包含有Nios II軟核CPU。

② Nios II本身的應用過程。一旦FPGA配置成功后,Nios II就被邏輯中的復位電路復位,從reset地址開始執(zhí)行代碼。

Nios II IDE將FPGA的配置文件(.sof文件)和應用程序(.elf文件)轉成flash格式文件,轉換后的flash格式文件是一種SRecord格式數(shù)據(jù),包含如下區(qū)域:

[6]。各字段的意思分別如下:表示記錄的類型;表示數(shù)據(jù)的長度;

表示數(shù)據(jù)寫入的起始地址,該字段的長度取決于的取值;表示存儲的數(shù)據(jù);表示校驗位。

配置文件和應用程序可能有多個段,每個段前面都插有一個“程序記錄”。一個“程序記錄”由2個32位的數(shù)據(jù)構成,一個是32位的整數(shù),另一個是32位的地址,分別表示程序段本身的長度和程序段的運行時地址。其存儲布局如圖3所示。

 

 

圖3 Flash文件存儲布局

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

 

 

圖4 合并程序文件流程

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

程序文件第n個程序段映像

Len1~Len1+L2程序文件第1個程序段映像

配置文件第n個程序段映像

0~L1配置文件第1個程序段映像

 

 

圖5 BIN文件存儲布局

[!--empirenews.page--]

5 Nios II更新程序模塊處理

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

5.1 程序文件的傳輸

Nios II應用程序中的更新程序模塊和上位機系統(tǒng)采用Xmodem協(xié)議傳輸程序文件,Xmodem協(xié)議是一種網(wǎng)口和串口通信中廣泛用到的異步傳輸協(xié)議。

如果在程序傳輸過程中出現(xiàn)錯誤,更新程序模塊能夠通過設置超時來退出更新程序的狀態(tài)。

5.2 對EPCS Flash的讀寫

由于EPCS Flash的串行配置器件定義了特殊的讀寫協(xié)議,所以Nios II程序只能通過Altera提供的HAL API(Application Program Interface,應用程序接口)來完成讀寫Flash。打開、關閉Flash設備的API為:alt_flash_open_dev()和alt_flash_close_dev()。操作Flash讀寫的API為:alt_read_flash()和alt_write_flash_block()。清除Flash的API為alt_erase_falsh_block()。

結語

本文以提高FPGA遠程更新程序的方便性為目標,提出了一種基于EPCS Flash的遠程在線更新FPGA程序的方法,從而在應用中能夠使基于FPGA的產品更加方便地維護升級。

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

多數(shù)受訪粉絲認為,AI驅動的功能會對他們觀看體育賽事的方式產生重大影響 超過半數(shù)的受訪者希望通過AI技術獲得對過去、現(xiàn)在和未來體育賽事的評論和分析 移動體育應用...

關鍵字: IBM AI 應用程序 移動

在數(shù)字化浪潮席卷全球的今天,F(xiàn)PGA技術正成為驅動創(chuàng)新的核心引擎。2025年8月21日,深圳將迎來一場聚焦FPGA技術與產業(yè)應用的盛會——2025安路科技FPGA技術沙龍。本次沙龍以“定制未來 共建生態(tài)”為主題,匯聚行業(yè)...

關鍵字: FPGA 核心板 開發(fā)板

在現(xiàn)代電子系統(tǒng)中,現(xiàn)場可編程門陣列(FPGA)憑借其開發(fā)時間短、成本效益高以及靈活的現(xiàn)場重配置與升級等諸多優(yōu)點,被廣泛應用于各種產品領域。從通信設備到工業(yè)控制,從汽車電子到航空航天,F(xiàn)PGA 的身影無處不在。為了充分發(fā)揮...

關鍵字: 可編程門陣列 FPGA 數(shù)字電源

2025年8月4日 – 提供超豐富半導體和電子元器件?的業(yè)界知名新品引入 (NPI) 代理商貿澤電子 (Mouser Electronics) 即日起開售Altera?的Agilex? 3 FPGA C系列開發(fā)套件。此開...

關鍵字: FPGA 邊緣計算 嵌入式應用

內窺鏡泛指經自然腔道或人工孔道進入體內,并對體內器官或結構進行直接觀察和對疾病進行診斷的醫(yī)療設備,一般由光學鏡頭、冷光源、光導纖維、圖像傳感器以及機械裝置等構成。文章介紹了一款基于兩片圖像傳感器和FPGA組成的微型3D內...

關鍵字: 微創(chuàng) 3D內窺鏡 OV6946 FPGA

運用單片機和FPGA芯片作為主控制器件 , 單片機接收從PC機上傳過來的顯示內容和顯示控制命令 , 通過命令解釋和數(shù)據(jù)轉換 , 生成LED顯示屏所需要的數(shù)據(jù)信號和同步的控制信號— 數(shù)據(jù)、時鐘、行同步和面同步 。FPGA芯...

關鍵字: 單片機 FPGA LED顯示屏

在異構計算系統(tǒng)中,ARM與FPGA的協(xié)同工作已成為高性能計算的關鍵架構。本文基于FSPI(Fast Serial Peripheral Interface)四線模式,在150MHz時鐘頻率下實現(xiàn)10.5MB/s的可靠數(shù)據(jù)...

關鍵字: ARM FPGA FSPI

在全球FPGA市場被Xilinx(AMD)與Intel壟斷的格局下,國產FPGA廠商高云半導體通過構建自主IP核生態(tài)與智能時序約束引擎,走出差異化高端化路徑。本文深入解析高云半導體FPGA工具鏈的兩大核心技術——全棧IP...

關鍵字: FPGA 高云半導體

2025年6月12日,由安路科技主辦的2025 FPGA技術沙龍在南京正式召開,深圳市米爾電子有限公司(簡稱:米爾電子)作為國產FPGA的代表企業(yè)出席此次活動。米爾電子發(fā)表演講,并展出米爾基于安路飛龍派的核心板和解決方案...

關鍵字: FPGA 核心板 開發(fā)板

高 I/O、低功耗及先進的安全功能,適用于成本敏感型邊緣應用

關鍵字: FPGA I/O 機器視覺
關閉