嵌入式軟件項目開發_第1頁
嵌入式軟件項目開發_第2頁
嵌入式軟件項目開發_第3頁
嵌入式軟件項目開發_第4頁
嵌入式軟件項目開發_第5頁
已閱讀5頁,還剩10頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

XXXX軟件設計文檔模塊:XXXX模塊版本:V1.0編者:XX時間:XX年XX月XX日本模板僅針對嵌入式軟件組,編寫時請刪除此行)修訂記錄版本號制定/修改人時間修訂內容V1.0XXXXX新建文檔V1.1XXXXX【要求】修訂內容直接對應章節及功能需求,如修改功能1,對應4.1節目錄TOC\o"1-5"\h\z一、引言 41.1編寫目的 41.2預期讀者和閱讀建議 41.3術語定義 4參考資料 4\o"CurrentDocument"二、 FPGA功能需求概述 5\o"CurrentDocument"三、 XXXX軟件系統介紹 6系統外部接口框圖 6\o"CurrentDocument"3.1.1EEPROM通信接口說明 6\o"CurrentDocument"W5300通信接口說明 6FPGA軟件系統模塊 63?3XXX系統通信鏈路框圖 7\o"CurrentDocument"四、 系統子模塊代碼實現說明 84.1遠程更新模塊 8\o"CurrentDocument"4.1.1spi_control模塊 9spi_driver模塊 錯誤!未定義書簽。remote_data_rx模塊 錯誤!未定義書簽。\o"CurrentDocument"icape2_ctrl模塊 10遠程更新保護設計 11\o"CurrentDocument"五、 測試須知 12\o"CurrentDocument"六、軟件非功能需求總結 13軟件性能瓶頸總結 13性能可提升性總結 13失效性分析 14引言引言1.1編寫目的基于當前風機葉片在極限情況下,可能會打到風機塔筒的情況,設計凈空雷達,測量并上報當前實時的凈空數據,風機主機可以根據上報凈空數據來判斷風機運轉情況并作出相應的決策。1.2預期讀者和閱讀建議預期參考人員包括測試人員、開發人員、項目管理人員、研發部門經理和需要閱讀本報告的高層經理。1.3術語定義詞匯詳細描述FPGA現場可編程邏輯門陣列1.4參考資料XXXX任務書XXXX需求分析XXXX通信協議【如涉及需求變更,需要在功能變更后在功能后面加上變更日期,如:DA第四通道輸出電壓分4段區間線性變化功能,變更日期:2020年11月20日】2.1FPGA功能需求概述單片TDC初始化配置及實現4個stop信號測量功能;TDC測量距離校正功能;TDC內部測量時間自動換算為測量距離;TDC距離預處理開關,控制是否打開預處理去除無效數據;實現2片TDC共使用三通道測量距離功能,其中一片TDC需要實現單片TDC時分復用,實現3通道串行初始化配置,及串行測量距離時序控制;實現FPGA與stm32串口通信功能;網口參數下發、FPGA狀態及參數由網口定時上傳、FPGA原始數據包(包括所有4個stop的測量距離、3路AD采集數據、當前算法最終輸出的3路凈空數據;以1ms周期上傳);其中FPGA原始數據包由上位機參數下發中定義固定通信協議幀來控制FPGA是否需要上傳原始數據包。2.2FPGA性能需求概述1.與單片機之間串口通信頻率為50Hz;2?網口能夠以1Hz頻率輸出FFT數據及原始數據;3.熱敏電阻值讀取速率能夠達到1KHz;三、XXXX軟件系統介紹系統外部接口框圖【要求】本節需要說明本軟件系統出核心處理器所涉及的外設名稱、型號,及此外設使用目的說明;【示例】此系統外部設備包含一個EEPROM,型號為XXXXX,此外設主要解決系統參數存儲功能,設備上電后讀取EEPROM中的參數并解析。板卡外部通信框圖如圖1:圖1系統硬件通信接口圖EEPROM通信接口說明【要求】說明接口使用的協議及涉及的通信對象W5300通信接口說明【要求】說明接口使用的協議及涉及的通信對象3.2FPGA軟件系統模塊【要求】本節需要說明本軟件系統針對《XXXX需求分析》中,所涉及的功能需求,所進行的模塊設計。【示例】1?根據XXX需求設計XXXX模塊;2?根據XXX需求設計XXXX模塊;圖2XXXX系統子模塊連接框圖3.3XXX系統通信鏈路框圖【要求】本節需要描述本軟件系統中主體通信鏈路(數據流),簡述系統正常工作與初始化配置時的一些數據通信流程;【示例】網口通信只要包括:配置參數下發、遠程更新數據下發、原始數據包上傳、系統工作狀態包上傳、遠程更新狀態上傳。網口通信硬件采用W5300芯片,芯片上集成TCP與UDP通信協議。用戶只需要在嵌入式端根據W5300手冊,根據需求進行寄存器配置后,即可完成與IPC網口連接,進而根據W5300數據收發機制完成數據通信。此工程中FPGA工程內部網口數據通信模塊數據鏈路如圖3所示。圖3網口數據通信模塊數據鏈路FPGA系統工程中,網口驅動模塊為w5300_top,完成與工控機之間的數據收發。其他具體模塊功能說明參見第四章。四、系統子模塊代碼實現說明4.1遠程更新模塊【要求】本章主要是用于研發內部查看、需要根據設計進行詳細邏輯說明,說明模式包括功能說明、性能評估、輸入輸出、流程框圖、接口說明、文字說明。【示例】遠程更新模塊共包含 3個模塊分別為:spi_top、remote_data_rx和icape2_ctrl模塊。遠程更新原理參考xilinx官方文檔xapp1247-multiboot-spi和ug470_7Series_Config;為了保證遠程更新過程中程序中斷或者設備斷電導致設備成磚,參考xilinx官方提供的multiboot功能。分別準備golden和update兩個燒寫文件。簡而言之,就是你的?mcs文件里包含有兩個或更多的下載文件,然后地址0的位置開始存放一個可用的下載文件(多數是升級前那個舊的文件),后面的地址(ADDR_1)存放你將要更新的文件。當下載時,FPGA會先從ADDR_1讀取更新的文件,若這個過程發生錯誤的話就會回到地址0,讀取之前的文件,確保設備仍能正常工作。途中fallback和Jumptoupdateregion功能都能軟件編譯bit文件配置選項可選配置。當前工程編譯軟件為ISE,網上給出vivado版本XDC約束文件參考設置。riag?的內雖這些配餐歪姜在主勵old約bitfi勺時勵喲朿常敘0下:afiE._propo!ft^EI!l£^KEJiM..SE^EPAL.C>DMP:RE£2<!HUE[>urron^daaign] //可選的.壓堀疝set_prcji?rt^EIISIHEBK.CCTTIG.COTTIijrALLBACF.EWM1E[匚口rrei:t_de=:ign] 和厘(總回浜聯I鶴aet_pi:ope!LtyBriSIKES2rr?CONFId. 32'hDOS0^00D[curEent_M±ign|//u.pdzi-eimage&:!mS^DffiupdateImage出費時■又要能舉返U列3恫即Imfi-geE,逵需要在生成叩禹teInwge時潘加如下鯊]車?setjpropertyELIBI£EA£4uGEKEHAZi.C^DHFREESIKUE[curTenz_design]sec_jfropertii,BII5TJP.EM,C&N?IG,CONTIGFALLBACF;ENAS1E[curraiiT;_de3ian]當前根據XDC參考設置在ISE的generateprogrammingfile設定項中進行對應設置后即可實現。遠程更新總體實現功能需求總結后可分3個步驟進行:1、 將遠程更新文件正確(需要校驗)寫入falsh對應位置;2、 完成更新文件寫入后,利用IPROG命令重新加載FPGA;3、 生成goldenimage和updateimage,組合燒寫進flash。4.1.1spi_control模塊spi_control模塊主要負責flash文件更新的控制命令產生,根據當前更新進度生成cmd、addr、和program_over等信號,并根據當前狀態產生跟新狀態寄存器update_sts上報IPC。內部主要包含一個狀態機來完成整個更新過程的控制。狀態機運行邏輯如下圖所示。

單次擦除完成廠IDLEJrL FWR_CMD1單次擦除完成廠IDLEJrL FWR_CMD11h-. JERASECTRL—WRCMD2-WAITDONE11rL F>ROGRAPsr[WRASE_ONCEr(B_CMD)】 J4.1.4icape2_ctrl模塊此模塊功能是在遠程更新完成后,通過給ICAPE2原語發送指定命令來控制FPGA自動重新加載工作。命令詳細參考如下:Table7-1:ExampleBitstreamfarIPROGthroughICAPE2ConllgurationData(hex)^1)ExplanationFFFFFFFFDummyWordAA995566SyncWord20000000Type1NOOP30020001Type1Write1WordstoWBSTAR00000000WiinTLBo(itStartAddress(LoadtheDistredAddress)30008001Type1Write1WordstnCMDDOOOOOOz'IPROGConunand20000000Type1NOOF需要注意的是1?原語中涉及DEVICE_ID,參考原語給的是仿真用的參考ID,并不是實際使用過程中的DEVICE」D;DEVICE_ID可以通過impact中檢測芯片后,可以右擊空白處選項內可直接獲取DEVICE_ID。2?寫入的命令需要改變每個字節的bit順序;詳細參考如下:4.1.5遠程更新保護設計XXXXXX五、測試須知【要求】本章節主要針對測試人員進行測試用例編寫,針對系統功能編寫測試方向說明(通信、邊緣測試、單模測試);并針對某些特殊測試進行特殊說明;說明覆蓋面需求覆蓋到每一條具體功能需求。測試人員編寫測試用例主要參考軟件功能需求及本章特殊測試說明。六、軟件非功能需求總結軟件性能瓶頸總結【示例】以3D性能評估及總結為例參數以200MHz時鐘作為系統時鐘,每次FFT耗時1024個系統時鐘周期,假設FFT可以不間斷的進行工作。1024*200MHz>Sus即每次計算需要至少脈沖頻率:LOKHe(1/1OKHz)/5us=20即每次脈沖周期內最多計算2嗽總門數moo300/20=15300/15=20即門的數量保守估計至少需要20個。加上DDR讀寫耗時可能需要以和個門計算300/30=10叩毎個門只需耍計算[0次FFT10次FFT耗時6*10=60us每次脈沖周期型余下30陰左右的時間處理別的計算°性能可提升性總結【示例】以B300海上版雷達初版FPGA設計文檔總結為例鬥前24牛門.MA8次FFT傳輸消耗宦源如下匚*VtLlLElti?lSWiVVSljetLdEi?UtilliK?i:i?DdAiftIttkHeriIB-14]■■■AM^btrof51i?UJTs劇Mflaim嘰| 肘 s?>rcfeba:-dEE/rEd&Eli'Mroj&ILi.4ITB90IijsWt北BlFG-mnTTllt3Z43Bihrb斫/lEF^Ilx&7T從當前占用資源吃例來S-JihBlnckRAM資源最為緊張,I片用36KElockBLAM232個,占用]ffKEkckRAM曲417艾,合算占用36KBloclJLAM440.5">;l_i達到總卅445■ 1 w^^wv^wwwww^ww"個[忙99%以二想要血接以復制的刀式擴展林離JU感量是eJi壷的=■如要進疔1邂擴展.則需要考慮頻譜計鄴模塊的番源復用『節省出FTT所占用的RiskRAM資源*以目前3臨的融愛重頻?和目前2048點的FFT來右.復川決數最哆為3窩也就是一亍頻譜計算模塊可以負靑3個距離門的緞據處理;在審頻丕鑾得情況下,如此設計就;需要像dD—樣.在加窗模塊Z前加一層緩存原始數據的FIFO;并目累加1后的FIFO深度也需要同樣増加.屮6.3失效性分析示例】信

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論