999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種遠程在線更新FPGA程序的方法

2012-09-25 02:59:28劉金福武宏偉楊勝姚
單片機與嵌入式系統應用 2012年2期
關鍵詞:程序系統

劉金福,武宏偉,楊勝姚

(北京萬集科技股份有限公司,北京 100085)

1 概 述

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

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

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

2 系統硬件結構

系統硬件結構如圖1所示。系統主要有上位機系統、FPGA系統、EPCS Flash三個主體部分。上位機系統提供人機交互的部分,FPGA系統包括Nios II處理器、EPCS控制器、網絡及串行接口和其他外部接口,EPCS Flash主要用于存儲FPGA的配置文件和Nios程序映像文件。上位機系統通過FPGA集成的網絡及串行接口來完成通信工作。

圖1 系統硬件結構圖

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

3 更新程序處理流程

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

圖2 更新程序處理流程

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

4 合并程序文件

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

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

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

Nios II IDE將FPGA的配置文件(.sof文件)和應用程序(.elf文件)轉成flash格式文件,轉換后的flash格式文件是一種S-Record格式數據,包含如下區域:<type><length> <address> <data> <checksum>[6]。各字段的意思分別如下:<type>表示記錄的類型;<length>表示數據的長度;<address>表示數據寫入的起始地址,該字段的長度取決于<type>的取值;<data>表示存儲的數據;<checknum>表示校驗位。

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

圖3 Flash文件存儲布局

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

圖4 合并程序文件流程

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

圖5 BIN文件存儲布局

5 Nios II更新程序模塊處理

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

圖6 更新程序模塊處理流程

5.1 程序文件的傳輸

Nios II應用程序中的更新程序模塊和上位機系統采用X-modem協議傳輸程序文件,X-modem協議是一種網口和串口通信中廣泛用到的異步傳輸協議。

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

5.2 對EPCS Flash的讀寫

由于EPCS Flash的串行配置器件定義了特殊的讀寫協議,所以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的產品更加方便地維護升級。

[1]蔡偉綱.Nios II軟件架構解析[M].西安:西安電子科技大學出版社,2007.

[2]楊釗,顏浩洋.基于EPCS Flash配置的Altera SOPC啟動及更新研究[J].中國西部科技,2009(1).

[3]潘松,黃繼業,曾毓.SOPC技術實用教程[M].北京:清華出版社,2005.

[4]李蘭英,等.Nios II嵌入式軟核SOPC設計原理及應用[M].北京航空航天大學出版社,2006.

[5]Altera.Cyclone III Device Handbook.

[6]S-Record格式詳解[OL].(2008-04-25)[2011-10].http://blog.csdn.net/norains/article/details/2326306.

猜你喜歡
程序系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
半沸制皂系統(下)
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
主站蜘蛛池模板: 成人免费黄色小视频| 国产精品亚欧美一区二区三区 | 欧美性天天| 亚洲欧美一区二区三区麻豆| 久久中文字幕不卡一二区| 思思热精品在线8| igao国产精品| 亚洲人成高清| 中文字幕在线日本| 国产91小视频| 国产精品成人AⅤ在线一二三四| 国产成人精品第一区二区| 毛片基地视频| 美女无遮挡免费网站| 狠狠色噜噜狠狠狠狠色综合久| 久久亚洲高清国产| 免费看黄片一区二区三区| 在线国产91| 亚洲高清无码久久久| 久久久亚洲国产美女国产盗摄| 97人人做人人爽香蕉精品| 国产91麻豆免费观看| 免费高清a毛片| 国产精品私拍在线爆乳| 欧美激情第一区| 在线观看网站国产| 99久久精彩视频| 国产91麻豆视频| 日本日韩欧美| 99九九成人免费视频精品| 国产jizz| 91综合色区亚洲熟妇p| 日韩 欧美 小说 综合网 另类| 5555国产在线观看| 日本尹人综合香蕉在线观看 | 亚洲国产精品成人久久综合影院| 精品人妻一区二区三区蜜桃AⅤ| 免费中文字幕在在线不卡| 久久黄色免费电影| 亚洲第一成年网| 蜜臀av性久久久久蜜臀aⅴ麻豆 | 亚洲欧美成人综合| 国产综合精品日本亚洲777| 啪啪国产视频| 日本免费福利视频| 久久国产精品嫖妓| 亚洲精品成人7777在线观看| 欧美精品1区| 亚洲欧洲日韩国产综合在线二区| 黄色三级毛片网站| 国产区网址| 性色一区| 日本亚洲成高清一区二区三区| 91亚瑟视频| 亚洲最大福利网站| 精品人妻AV区| 欧美在线天堂| 成人a免费α片在线视频网站| 狠狠久久综合伊人不卡| 国产大全韩国亚洲一区二区三区| AV在线天堂进入| 国产一级无码不卡视频| 欧美亚洲国产视频| 久热99这里只有精品视频6| 国产人前露出系列视频| 91久久偷偷做嫩草影院电| 国产jizzjizz视频| 毛片网站观看| 国产精品自在在线午夜| 97成人在线观看| 亚洲AV电影不卡在线观看| 亚欧成人无码AV在线播放| 日韩高清一区 | 日本a级免费| 97se综合| 97久久精品人人| 人妻少妇乱子伦精品无码专区毛片| 亚洲无码91视频| 国产特级毛片aaaaaaa高清| 国产91丝袜在线播放动漫| 视频二区国产精品职场同事| 亚洲欧美精品在线|