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

基于FPGA片內Flash實現數據的動態加載和讀取*

2019-05-31 03:19:40曹健輝
通信技術 2019年3期
關鍵詞:系統

周 剛,曹健輝,彭 勃

(中國電子科技集團公司第三十研究所,四川 成都 610041)

0 引 言

本項目中涉及到4個通道的射頻發射電路,頻段覆蓋225~400 MHz,射頻輸出幅度會隨著頻率的變化而變化。由于DA輸出屬于模擬電路,加之元器件的個體差異,常會導致相同電路、不同頻率射頻輸出幅度不一致。每個通道的輸出功率均有平坦度要求,因此每臺設備的4個通道均需根據實際輸出功率調整射頻輸出的衰減量,確定4個通道的衰減量后,編譯生成本臺設備的下載文件。根據經驗,一般1 MHz頻率內對應一個校正值。例如,175 MHz范圍只需175個矯正值即可。此種方式導致每臺設備的調試測試均需要重新編譯FPGA工程文件,工作量大且不利于FPGA程序的歸檔和使用。

考慮兩種改進方案。

方案一為傳統的FPGA+SPI Flash或者FPGA+CPLD+Flash設計方案。由于硬件已經開發完成,此方案的缺點在于需要修改硬件電路,增加單獨的Flash芯片或者CPLD芯片,因此實現難度較大,不建議采用。

方案二為直接利用Xilinx公司Spartan-3AN系列FPGA內含Flash進行設計改進。此FPGA內含16 MB內存的Flash,在PC中開發參數配置軟件,通過串口下載配置文件至FPGA中的片內Flash。因為FPGA自帶串行外圍設備接口(Serial Peripheral Interface,SPI),FPGA每次開機后自動讀取片內Flash的配置文件,也可以根據需要從FPGA的片內Flash中讀取配置文件。

1 Spartan-3AN

1.1 Spartan-3AN主要特點

Spartan-3AN FPGA平臺是Xilinx公司于2007年推出的非易失性FPGA解決方案,基于成熟的90 nm工藝的低成本FPGA構架,融合了SRAM技術和可靠的非易失性閃存技術。

以XC3S1400AN-4FGG676I為例,Spartan-3AN FPGA平臺的主要特點如下[1]:

(1)工作溫度范圍:-40~100 ℃(結溫);

(2)門數/乘積項:1 400 000門;

(3)最高工作頻率:250 MHz;

(4)傳輸延遲時間≤1.21 ns;

(5)最大用戶I/O數:502個;

(6)電源電壓:1.2 V;

(7)I/O端電壓:1.1~3.6 V;

(8)邏輯單元:25 344個;

(9)片內Flash容量:16 MB。

1.2 Spartan-3AN片內Flash特點

Flash又稱為閃存,具有可電擦寫、掉電后數據不丟失的特性,且容量大、功耗低、速度快,在現代電子產品中應用廣泛[2]。

以XC3S1400AN-4FGG676I為例,Spartan-3AN系列FPGA中片內Flash的主要特點如下[1]:

(1)片內Flash容量:16 MB;

(2)SRAM頁面緩沖區:2個;

(3)較小的空間(264 B或528 B)存儲非易失性數據;

(4)隨機存取,二進制地址可設置;

(5)最大66 MHz連續數據傳輸;

(6)支持全部擦除、塊擦除和扇區擦除;

(7)重點區域數據具備保護功能和防護措施;

(8)128 B安全存儲空間;

(9)支持100 000次擦寫;

(10)Flash數據可保存20年;

(11)支持多種Flash使用方式。

Spartan-3AN系列FPGA內部結構,如圖1所示[3]。

圖1 Spartan-3AN系列FPGA內部結構

Spartan-3AN系列FPGA中片內Flash的配置接口,如圖2所示。

圖2 Spartan-3AN系列FPGA中片內Flash的配置接口

1.3 SPI接口

SPI是由Motorola公司推出的一種高速、全雙工的同步串行通信總線,可以使MCU與各種外圍設備以串行方式進行通信并交換信息。SPI接口主要有4根信號線:時鐘信號線(CLK)、主輸出/從機輸入數據線(MISI)、主輸入/從機輸出數據線(MISO)和片選信號線(CSB)[4]。SPI接口框圖如圖3所示[5]。

圖3 SPI接口

目前,Spartan-3AN等FPGA內含Flash模塊,支持SPI接口。對于Spartan-3AN,FPGA是SPI主器件,SPI Flash PROM是從器件。

2 系統架構

本文構建了一個通過SPI接口實現FPGA片內Flash數據動態加載和讀取的系統,系統架構如圖4所示。

圖4 系統架構

系統校正值寫入流程,如圖5所示。

圖5 校正值寫入流程

系統校正值讀取流程,如圖6所示。

圖6 校正值讀取流程

2.1 ISF Flash控制

SPI_ACCESS原語用來連接FPGA應用層和系統Flash。使用中,FPGA應用層是主,系統Flash是從。該原語包括MISO、MOSI、CSB和CLK四個管腳。

MISO:主入從出,串行數據從系統Flash存儲空間中輸出至FPGA應用層邏輯;

MOSI:主出從入,串行數據從FPGA應用層邏輯中輸出至系統Flash存儲空間;

CSB:系統Flash片選使能信號,低電平有效;

CLK:系統Flash操作時鐘,由FPGA應用層邏輯給出。

SPI_ACCESS原語屬性定義包括以下內容:

(1)SIM_DVICE:用來定義目標芯片類型,type為String,本實現中賦值“3S1400AN”;

(2)SIM_USE_ID:用來定義SPI存儲器安全寄存器中的編程用戶ID,type為16進制數據,本實現中賦值“0XFF”;

(3)SIM_MEM_FILE:用來指定存儲初始化值的文件,type為String,本實現中賦值“NONE”;

(4)SIM_FACTORY_ID:用來指定安全寄存器中的用戶識別號,type為16進制數據,本實現中賦值“0X00”;

(5)SIM_DELAY_TYPE:用來指定仿真延時類型,type為String,本實現中賦值“SCALED”。

2.2 ISF Flash地址分配策略

XC3S1400AN內部SPI FLASH基礎構成是page。page是系統FPGA中的最小可擦除單元,每個page包含528個字節,8個page可組成一個block,32個block組成一個sector。

應用層可針對page、block和sector單獨進行擦除操作,并且可對sector單獨進行鎖住和保護。內部SPI Flash存儲結構如圖7所示。

圖7 內部SPI Flash存儲結構

XC3S1400AN系列FPGA的默認尋址方式,如圖8所示[5],本文即采用這種默認地址分配模式。

2.3 ISF Flash讀寄存器

狀態寄存器讀取命令時序,如圖9所示[5]。

圖8 XC3S1400AN FPGA默認尋址方式

圖9 狀態寄存器讀取命令時序

(1)在開始發送讀取命令前,CSB必須開始拉低,并在整個讀取過程中一直保持低電平;

(2)讀取狀態寄存器命令為0XD7,并伴隨時鐘下降沿以二進制形式“11010111”傳至MOSI;

(3)系統Flash伴隨時鐘上升沿捕捉傳來的數據;

(4)在狀態結果輸出之前,MISO一直保持高電平;

(5)在讀取命令傳輸完畢后,系統存儲器伴隨時鐘下降沿將狀態寄存器內的內容一一輸出,高位在前,低位在后;

(6)FPGA應用層伴隨時鐘上升沿捕捉系統存儲器的狀態信息;

(7)在系統存儲器狀態信息讀取完畢后,將CSB拉高,結束讀取過程。

2.4 ISF Flash讀數據命令

系統Flash讀取命令有多種讀取方式,包括快速讀取、自由讀取、頁緩存至Buffer讀取和Buffer讀取等。本應用采取自由讀取,原因是快速讀取適合小數據量、自由讀取;讀取數據無延時,讀取時鐘可達33 MHz,滿足本系統的使用需求。

讀取命令格式及要求如表1所示。

表1 讀取命令格式及要求

注意事項:

(1)讀取輸出數據無延時;

(2)當CSB保持低電平時,MISO數據隨時鐘下降沿串行輸出,高位先出,地址會自動增加,無需人為控制;

(3)當CSB拉高時,結束數據讀取操作。

讀取命令的Chipscope截圖,如圖10所示。

2.5 ISF Flash寫數據命令

系統Flash讀取命令有多種讀取方式,包括Buffer寫、頁擦除Buffer寫、頁不擦除Buffer寫、頁Buffer寫、頁Buffer比對和自動頁寫。本應用采取頁Buffer寫,原因是頁Buffer寫是將Buffer寫和Buffer頁擦除合二為一,用一條指令就完成了兩個操作,減少了命令條數,簡化了操作步驟,降低了出錯概率,提高了寫數據的效率。

寫數命令格式及要求如表2所示。

表2 寫數命令格式及要求

寫數命令的Chipscope截圖,如圖11所示。

圖11 寫數命令的Chipscope截圖

2.6 ISF Flash擦除命令

擦除有三種擦除模式:頁擦除、block擦除和sector擦除。為防止sector誤擦除和非授權的擦除,可實現sector保護和sector鎖住。

頁擦除、block擦除和sector擦除命令格式及要求如表3所示。

表3 擦除命令格式及要求

擦除完畢后,相應擦除存儲空間里的數據為0XFF。

2.7 ISF Flash Sector保護命令

Sector保護寄存器狀態讀取:相應的命令控制字為0X32。

Sector保護寄存器擦除:相應的命令控制字為0X3D+0X2A+0X7F+0XCF。

Sector保護寄存器擦除格式如表4所示。

表4 Sector保護寄存器擦除格式

擦除Sector保護寄存器后,Sector保護寄存器每個字節的值變為0XFF,代表所有的Sector均被保護。

Sector保護寄存器寫入:相應的命令控制字為0X3D+0X2A+0X7F+0XFC。

Sector保護寄存器寫入格式如表5所示。

表5 Sector保護寄存器寫入格式

Sector保護寄存器讀出:相應的命令控制字為0X32。

Sector保護寄存器讀取格式如表6所示。

表6 Sector保護寄存器讀取格式

Sector保護寄存器使能:相應的命令控制字為0X3D+0X2A+0X7F+0XA9。

Sector保護寄存器寄存器使能格式如表7所示。

表7 Sector保護寄存器使能格式

Sector保護寄存器禁用:相應的命令控制字為0X3D+0X2A+0X7F+0X9A。

Sector保護寄存器禁用格式如表8所示。

表8 Sector保護寄存器禁用格式

2.8 參數配置軟件

參數配置軟件布置于一臺普通PC中,通過串口與射頻控制模塊的FPGA相連,實現COM選擇、通道選擇、參數文件的讀取和存儲。參數配置軟件截圖如圖12所示。

圖12 參數配置軟件截圖

3 實現過程

制備顯控小軟件一個,該軟件具備以下功能:能通過RS232協議與FPGA應用層進行通信;可下發系統Flash擦除、寫入、回讀和sector保護功能等;可將要寫入的數據和地址一一對應保存在文本文件中;待寫入完畢后,進行寫入數據回讀并一一比對,判定是否寫入成功。若寫入成功,則結束燒寫;失敗則再重寫,直到燒寫成功。

系統FPGA應用軟件一套,該軟件具備以下功能:能通過RS232協議與FPGA應用層進行通信,能正確接收顯控下發的命令信息,執行相應的系統Flash擦除、寫入、回讀和sector保護等操作。在系統上電后,該系統運行后稍做延時,會執行從Flash讀數據的操作,根據系統需要將讀取到的數據保存至雙口RAM,待程序需要該數據時會根據索引從相應的RAM地址中讀取數據并使用,增加了系統應用的靈活性。

當系統程序控制DA發射射頻時,系統會根據發射頻率計算應該取雙口RAM哪個地址中的矯正值。例如,發射頻率范圍為200~400 MHz,則200~201 MHz對應的矯正值保存在第1個地址中,201~202 MHz對應的矯正值保存在第2個地址中;以此類推,399~400 MHz對應的矯正值保存在第200個地址中,400 MHz對應的矯正值保存在第201個地址中。具體實現中,讀校正值地址可通過addr=(Freqence-200 000 000)/1 000 000計算,即對結果取整獲取所需的地址值;其他的讀操作邏輯控制相應的給出,即可正確讀出校正值。然后,矯正值被提出并轉化為對應頻率的功率補償,進而實現DA輸出幅度的平坦性。

4 試驗驗證

參數配置軟件寫入截圖,如圖13所示。

參數配置軟件讀取截圖,如圖14所示。

5 結 語

本文設計并實現了一種基于FPGA片內Flash進行數據加載和讀取的方法:以裝在普通PC中的參數配置軟件作為配置主控制器,通過串口對FPGA片內的Flash進行控制,成功實現了對FPGA的數據動態加載和讀取。

在應用該系統前,需根據每個頻率測量求得一個校正值,并將校正值寫入系統應用程序中。這樣做的缺點是:針對每臺設備校正值不同,需要重新修改源代碼中相應的校正值,并對源代碼進行編譯燒寫。這樣不便于程序的版本控制,需對每臺設備準備一套與之對應的版本程序,給設備后期維護帶來了較大不便,尤其當設備大批量生產時。

圖13 寫入截圖

圖14 讀取截圖

應用該系統后,程序版本只需要一個版本,矯正值會存入Flash中,并可以根據DA發射頻率將校正值讀取出使用。后期設備維修維護時只需讀出Flash中的校正值并保存至文本文件。硬件更換后,根據需要修改更換后硬件部分對應的校正值,并再次保存歸檔。當新的矯正數據寫入完畢后,還可通過回讀命令自動進行校正值的回讀和比對,確保矯正值完全讀寫正確,提高了設備的穩定性,簡化了操作的復雜性,節省了大量人力,尤其在設備大批量生產時。

猜你喜歡
系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
基于UG的發射箱自動化虛擬裝配系統開發
半沸制皂系統(下)
FAO系統特有功能分析及互聯互通探討
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統 德行天下
PLC在多段調速系統中的應用
主站蜘蛛池模板: 人妻中文字幕无码久久一区| 黄色网址手机国内免费在线观看| 亚洲αv毛片| 国产另类乱子伦精品免费女| 女人av社区男人的天堂| 爽爽影院十八禁在线观看| 超碰91免费人妻| 综1合AV在线播放| 久99久热只有精品国产15| 国产亚洲精| 中文字幕亚洲乱码熟女1区2区| 免费毛片在线| 久久久久无码精品| 国产成人a毛片在线| 婷婷午夜影院| 国产97色在线| 99国产精品免费观看视频| 午夜人性色福利无码视频在线观看| 国产精品久久久久久搜索| 亚洲 欧美 偷自乱 图片| 啪啪啪亚洲无码| 青青青草国产| 米奇精品一区二区三区| 朝桐光一区二区| 国产成人高清精品免费5388| 九九热免费在线视频| 中文字幕第4页| 色视频国产| 日本黄色不卡视频| 67194在线午夜亚洲| 国产玖玖视频| 亚洲欧美日韩另类在线一| 亚洲综合国产一区二区三区| 亚洲欧美日韩天堂| 亚洲欧洲日产国码无码av喷潮| 99视频全部免费| 国产日韩欧美在线播放| 伊人久久婷婷| 亚洲男人的天堂在线观看| 国产自产视频一区二区三区| 久久免费看片| 亚洲精品午夜无码电影网| 亚洲人成网18禁| 日韩在线永久免费播放| 亚洲成aⅴ人片在线影院八| 伊人福利视频| 亚洲第一精品福利| 国产一区免费在线观看| 亚洲精品在线观看91| 波多野结衣中文字幕一区| 国产主播在线一区| 亚洲人成亚洲精品| 亚洲网综合| 国产美女丝袜高潮| 亚洲日韩Av中文字幕无码| 99成人在线观看| 久久 午夜福利 张柏芝| 国产主播一区二区三区| 91国内在线观看| 99精品国产自在现线观看| 永久在线精品免费视频观看| 91亚洲精选| 99在线视频免费观看| 狠狠v日韩v欧美v| 午夜福利在线观看成人| 免费无码又爽又刺激高| 国产女人18水真多毛片18精品| 狠狠色丁香婷婷| 国产女人18水真多毛片18精品| 麻豆精品在线视频| 9久久伊人精品综合| 强乱中文字幕在线播放不卡| 国产精品欧美激情| a级毛片免费网站| 国产精品欧美亚洲韩国日本不卡| 亚洲欧洲日产国产无码AV| 91久久偷偷做嫩草影院精品| 99九九成人免费视频精品| 免费 国产 无码久久久| www.youjizz.com久久| 国产亚卅精品无码| 特黄日韩免费一区二区三区|