電能質(zhì)量監(jiān)測(cè)系統(tǒng)信號(hào)采集模塊控制器IP核設(shè)計(jì)
頂層文件的Verilog描述如下:
本文引用地址:http://cafeforensic.com/article/270754.htm
如圖3所示,時(shí)鐘分頻部分的輸出與FIFO的數(shù)據(jù)寫入時(shí)鐘、AD_Ctrl的時(shí)鐘和A/D轉(zhuǎn)換芯片的時(shí)鐘相連接。AD_Ctrl部分主要對(duì)ADS8364 芯片進(jìn)行控制,其中輸出RD也連接到FIFO的寫使能端,對(duì)FIFO的數(shù)據(jù)寫入進(jìn)行控制。FIFO的讀時(shí)鐘接到系統(tǒng)時(shí)鐘,讀使能由CPU控制。當(dāng)FIFO 寫入一個(gè)周期的數(shù)據(jù)后,由prog_full產(chǎn)生中斷信號(hào),CPU響應(yīng)并對(duì)FIFO進(jìn)行讀取。
2.4 仿 真
對(duì)頂層文件進(jìn)行綜合,并在Mode-lsim中對(duì)其進(jìn)行仿真。數(shù)據(jù)采集控制器的仿真結(jié)果如圖4所示。當(dāng)holdx_n為低電平時(shí),啟動(dòng)A/D轉(zhuǎn)換,完成后根據(jù)EOC_n的低電平信號(hào)產(chǎn)生6個(gè)RD_n的低電平信號(hào),循環(huán)讀取數(shù)據(jù)。當(dāng)FIFO存儲(chǔ)了一個(gè)周期的數(shù)據(jù)后,CPU置FIFO的讀使能端口為高電平,對(duì) FIFO中的數(shù)據(jù)進(jìn)行高速讀取。若FIFO中數(shù)據(jù)為空,empty為高電平。
3 使用Xilinx嵌入式開發(fā)工具EDK設(shè)計(jì)IP核
嵌入式開發(fā)軟件EDK為設(shè)計(jì)人員提供了自動(dòng)化設(shè)計(jì)向?qū)?mdash;— Base System Builder(BSB),可以指引工程師快速完成整個(gè)設(shè)計(jì)過(guò)程。使用BSB創(chuàng)建工程,在創(chuàng)建完成之后使用EDK自帶的CIP(Create and Import Peripheral Wizard)添加用戶自定義IP核,生成的用戶IP核保存在EDK工程目錄下的pcore文件夾。用戶IP核目錄如圖5所示。
其中文件夾data用于存放用戶IP的配置文件,如.prj文件、.mpd文件和.pao文件等;文件夾hdl用于存放用戶IP的HDL代碼,即.v或者.vhd文件;而devl(simmodels)文件夾中的工程可以使用戶在ISE平臺(tái)對(duì)工程進(jìn)行設(shè)計(jì)、綜合與仿真,如果設(shè)計(jì)需要加入網(wǎng)表,可以放在 netlist文件夾。CIP在建立用戶IP核時(shí),使用了一種專用接口規(guī)范(IPIF)。IPIF是一個(gè)驗(yàn)證并優(yōu)化的高度參數(shù)化的定制接口,它提供了一個(gè)簡(jiǎn)化的總線協(xié)議IPIC(IP Intercon-nect),操作這個(gè)總線與直接操作PLB及OPB這些總線相比要簡(jiǎn)單很多。通過(guò)IPIF模塊,對(duì)其進(jìn)行參數(shù)化定制來(lái)滿足設(shè)計(jì)需求,將降低設(shè)計(jì)與測(cè)試的工作量。
將設(shè)計(jì)的Verilog文件復(fù)制到IP核目錄下相對(duì)應(yīng)的hdl文件夾下,啟動(dòng)ISE開發(fā)平臺(tái)并打開devl文件夾中的工程文件,在 Sources for Implementation中顯示的結(jié)構(gòu)如圖6所示。圖中,adsfifo.vhd是IPIC的描述文件,user-logic.v(或 user_logic.vhd)可以實(shí)現(xiàn)用戶IP核功能設(shè)計(jì)。需要在adsfifo.vhd中加入必要的端口聲明與邏輯設(shè)計(jì),使PLB控制器與用戶IP設(shè)計(jì)端口進(jìn)行相應(yīng)的連接。設(shè)計(jì)完成后在ISE平臺(tái)中對(duì)該IP核進(jìn)行綜合并仿真。綜合后查看FPGA器件的資源使用情況,如表1所列。
根據(jù)需要修改user_logic.v(或user—logic.vhd),向其中添加端口聲明與邏輯設(shè)計(jì):
注意:在綜合后需要使用EDK中的CIP工具重新導(dǎo)入用戶IP核,在導(dǎo)入的過(guò)程中要指定MPD配置文件和XST project file(*.pfj)文件,這樣CIP可以自動(dòng)加入相關(guān)聯(lián)的.v或.vhd文件。導(dǎo)入完成后在EDK的IPCatalog的Project Local pcores分類中可以看到用戶IP核,可以向EDK工程中加入該IP核,并設(shè)置其Bus Inter-face、Port和Addresses后生成位流文件,下載到開發(fā)板進(jìn)行調(diào)試。
4 總結(jié)
利用FPGA和ADS8364設(shè)計(jì)的數(shù)據(jù)采集的IP核,其接口簡(jiǎn)單,采集精度高,可同時(shí)采集多路信號(hào),而且能減輕FPGA嵌入式系統(tǒng)中CPU的負(fù)擔(dān),節(jié)省CPU的運(yùn)算資源。經(jīng)過(guò)仿真和下載到開發(fā)板驗(yàn)證,該設(shè)計(jì)能滿足高速交變電壓信號(hào)采集的高精度和高實(shí)時(shí)性的要求。
模數(shù)轉(zhuǎn)換器相關(guān)文章:模數(shù)轉(zhuǎn)換器工作原理
評(píng)論