日韩欧美自拍在线观看-欧美精品在线看片一区二区-高清性视频一区二区播放-欧美日韩女优制服另类-国产精品久久久久久av蜜臀-成人在线黄色av网站-肥臀熟妇一区二区三区-亚洲视频在线播放老色-在线成人激情自拍视频

FPGA在mif文件創(chuàng)建與使用中的應(yīng)用

出處:中電網(wǎng)    發(fā)布于:2011-07-02 17:23:06

 

  1 引言

  在一些需要特殊運(yùn)算的應(yīng)用電路中,只讀存儲(chǔ)器ROM是關(guān)鍵元件,設(shè)計(jì)人員通常利用ROM創(chuàng)建各種查找表,從而簡(jiǎn)化電路設(shè)計(jì),提高電路的處理速度和穩(wěn)定性。FPGA是基于SRAM的可編程器件。掉電后FPGA上的配置信息將全部丟失,所以由FPGA構(gòu)造的數(shù)字系統(tǒng)在每次上電后要依賴于外部存儲(chǔ)器來(lái)主動(dòng)配置或在線被動(dòng)配置。真正意義上的ROM應(yīng)具有掉電后信息不丟失的特性,因此利用FPGA實(shí)現(xiàn)的ROM只能認(rèn)為器件處于用戶狀態(tài)時(shí)具備ROM功能。使用時(shí)不必要刻意劃分,而ROM單元的初始化則是設(shè)計(jì)人員必須面對(duì)的問(wèn)題。本文討論FPGA的ROM初始化問(wèn)題,詳細(xì)介紹mit文件的創(chuàng)建與使用。

  MIF文件是MapInfo通用數(shù)據(jù)交換格式,這種格式是ASCⅡ碼,可以編輯,容易生成,且可以工作在MapInfo支持的所有平臺(tái)上。它將MapInfo數(shù)據(jù)保存在兩個(gè)文件中:圖形數(shù)據(jù)保存在。MIF文件中,而文本(屬性)數(shù)據(jù)保存在。MID文件中。其中,.MIF文件有兩個(gè)區(qū)域:文件頭區(qū)域和數(shù)據(jù)節(jié),文件頭中保存了如何創(chuàng)建MapInfo表的信息,數(shù)據(jù)節(jié)中則是所有圖形對(duì)象的定義。故MIF應(yīng)是保存圖形的一種文件格式。 

  2 基于FPGA的ROM的實(shí)現(xiàn)

  FPGA(Field-Programmable Gate Array),即現(xiàn)場(chǎng)可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。FPGA一般來(lái)說(shuō)比ASIC(專用集成芯片)的速度要慢,無(wú)法完成復(fù)雜的設(shè)計(jì),而且消耗更多的電能。但是他們也有很多的優(yōu)點(diǎn)比如可以快速成品,可以被修改來(lái)改正程序中的錯(cuò)誤和更便宜的造價(jià)。廠商也可能會(huì)提供便宜的但是編輯能力差的FPGA.因?yàn)檫@些芯片有比較差的可編輯能力,所以這些設(shè)計(jì)的開(kāi)發(fā)是在普通的FPGA上完成的,然后將設(shè)計(jì)轉(zhuǎn)移到一個(gè)類似于ASIC的芯片上。另外一種方法是用CPLD(復(fù)雜可編程邏輯器件備)。

  基于MAX+PLUSⅡ軟件平臺(tái),F(xiàn)PGA可編程器件實(shí)現(xiàn)ROM功能比較簡(jiǎn)單。只需運(yùn)行MAX+PLUSⅡ,選擇圖形輸入,在新建頁(yè)的空白處雙擊并在彈出的對(duì)話框中選擇d:\maxplus2\max2lib\mega_lpm,調(diào)用軟件提供的參數(shù)可調(diào)庫(kù)(mega_lpm),找出參數(shù)化ROM宏模塊(lpm_rom),如圖1所示。表1列出lpm_ROM宏模塊的端口及參數(shù)設(shè)置。

 

 

  根據(jù)需要選擇必要的Address[]、q[]兩個(gè)端口創(chuàng)建加法運(yùn)算的查找表。引入lpm_ROM宏模塊后,一定要把LPM_ADDRESS_CONTROL設(shè)置為″UNREGISTERED″,否則編譯報(bào)錯(cuò)。本系統(tǒng)設(shè)計(jì)選用了Altera公司的FLEX10K系列的FPGA(EPF10K10LC84-4),其模塊結(jié)構(gòu)如圖2所示。

 
 
 
  3 lpm_ROM初始化及mif文件
 
  引入lpm_ROM宏模塊后,開(kāi)始ROM的初始化,這是運(yùn)用lpm_ROM宏模塊做為系統(tǒng)開(kāi)發(fā)的關(guān)鍵。ROM初始化就是要在對(duì)應(yīng)的地址賦初始值以實(shí)現(xiàn)查找表的功能。在系統(tǒng)編譯之前一定要先設(shè)置LPM_FILE參數(shù)。實(shí)際上就是要加入一個(gè)mif文件或hex文件。以下詳細(xì)討論在MAX+PLUSⅡ環(huán)境下mif文件的創(chuàng)建和使用。
 
  3.1 mif文件的格式及創(chuàng)建
 
  MIF是Mapinfo用來(lái)向外交換數(shù)據(jù)的一種中間交換文件。當(dāng)用戶在Mapinfo中將一張Mapinfo地圖表以MIF格式轉(zhuǎn)出來(lái)MIF文件中后,Mapinfo會(huì)同時(shí)在用戶指定的保存目錄下生成兩個(gè)文件(*.mif,*.mid)。其中*.mif文件保存了該Mapinfo表的表結(jié)構(gòu)及表中所有空間對(duì)象的空間信息(如:每個(gè)點(diǎn)對(duì)象的符號(hào)樣式、點(diǎn)位坐標(biāo);每個(gè)線對(duì)象的線樣式、節(jié)點(diǎn)數(shù)據(jù)、節(jié)點(diǎn)坐標(biāo);區(qū)域?qū)ο蟮奶畛淠J?、每個(gè)區(qū)域包含的子區(qū)域個(gè)數(shù)及每個(gè)區(qū)域的節(jié)點(diǎn)數(shù)、節(jié)點(diǎn)數(shù)等)。而*.mid文件則按記錄順序保存了每個(gè)空間對(duì)象的所有屬性信息。這兩個(gè)文件都為文本性質(zhì)的文件,用戶可以通過(guò)相應(yīng)的文件讀寫方法實(shí)現(xiàn)對(duì)文件內(nèi)容的讀寫。
 
  3.1.1 mif文件格式
 
  mif文件是在編譯和仿真過(guò)程中作為存儲(chǔ)器(ROM或RAM)初始化輸入的文件,即memory initialization file.mif文件格式為:

基于FPGA的mif文件創(chuàng)建與使用

  3.1.2 mif文件創(chuàng)建
 
  mif文件的創(chuàng)建很簡(jiǎn)單,主要有兩種方法,一種是在MAX+PLUSⅡ環(huán)境下,新建文件,選文本輸入,保存為mif文件。另一種方法是建立一個(gè)txt文件,然后將擴(kuò)展名改成mif即可。
 
  3.2 mif文件的使用
 
  依上述方法創(chuàng)建的mif文件只是一個(gè)空文件,在lpm_ROM宏模塊的LPM_FILE中引入這樣的文件,僅僅能幫助lpm_ROM宏模塊通過(guò)編譯并把所有的存儲(chǔ)單元初始化為零。且在編譯出現(xiàn):Warning:Can't find data in initial memory content[MIF/HEX]file.
 
  mif文件的格式是固定的,對(duì)于前4行(DEPTH,WIDTH,ADDRESS_RADIX,DATA_RADIX),前2個(gè)參數(shù)應(yīng)與lpm_ROM宏模塊LPM_WIDTHAD和LPM_WIDTH相關(guān)聯(lián),后2個(gè)參數(shù)為了方便一般設(shè)置為DEC(十進(jìn)制)。關(guān)鍵是文件內(nèi)容的begin與end之間的部分。mif文件的使用就是修改begin與end之間的內(nèi)容。主要有兩種修改方法。
 
  3.2.1 mif文件的修改方法1
 
  mif文件的使用,即修改begin與end之間的內(nèi)容,常用的就是語(yǔ)言法。本文借助實(shí)例給以說(shuō)明,并給出相應(yīng)的m(Matlab)語(yǔ)言程序。
 
  設(shè)計(jì)要求:8位地址輸入,8位數(shù)據(jù)輸出,輸出數(shù)等于地址高4位對(duì)應(yīng)的數(shù)加低4位對(duì)應(yīng)的數(shù),即實(shí)現(xiàn)1個(gè)4位二進(jìn)制加法的查找表。這里只用到lpm_ROM宏模塊的Address[]、q []兩個(gè)端口。lpm_ROM宏模塊及mif文件格式如圖3所示。

 


  

 
  采用MATLAB語(yǔ)言產(chǎn)生含有begin與end之間內(nèi)容的txt文件,M文件的內(nèi)容為:
 

基于FPGA的mif文件創(chuàng)建與使用

  保存并運(yùn)行,然后打開(kāi)aaa.txt文件(默認(rèn)路徑C:\MATLAB701\aaa.txt),拷貝到mif文件的begin與end之間,即完成了對(duì)該文件的修改。使用語(yǔ)言修改mif文件速度快,準(zhǔn)確度高且能實(shí)現(xiàn)復(fù)雜運(yùn)算。適用于數(shù)據(jù)較多的場(chǎng)合。
 
  3.2.2 mif文件的修改方法2
 
  mif文件的修改方法2是在MAX+PLUSⅡ環(huán)境下,直接修改lpm_ROM存儲(chǔ)器的各存儲(chǔ)單元的內(nèi)容。步驟如下:先引入lpm_ROM宏模塊,新建aa.mif文件并加載到LPM_FILE中,編譯完成后,波形編輯,然后仿真。此時(shí)MAX+PLUSⅡ會(huì)增加一個(gè)initialize菜單,點(diǎn)擊initialize->initialize memory…,即可在彈出的對(duì)話框中編輯存儲(chǔ)器各單元內(nèi)容,如圖4所示。

  

 
 

  各存儲(chǔ)單元輸入后,點(diǎn)擊Export File…,在彈出的對(duì)話框中確定要輸出的mif文件名,即完成了對(duì)mif文件的修改。這種方法適合數(shù)據(jù)量較小的場(chǎng)合,比較簡(jiǎn)單直觀。

  以四位二進(jìn)制加法查找表為例,分別采用以上兩種方法對(duì)mif文件進(jìn)行修改,仿真如下圖5所示。

 

  仿真顯示,兩種方式下均正確實(shí)現(xiàn)了四位二進(jìn)制加法查找表。

  4 結(jié)束語(yǔ)

  本文詳細(xì)討論了基于FPGA的mif文件創(chuàng)建與使用,對(duì)于mif文件創(chuàng)建與使用均給出了兩種可行性的方法。mif文件具有固定格式,而對(duì)mif文件使用主要就是對(duì)mif。文件begin與end之間的內(nèi)容進(jìn)行修改。本文以四位二進(jìn)制加法查找表的實(shí)現(xiàn)為例,給出了m(Matlab)語(yǔ)言源程序。



  
關(guān)鍵詞:FPGA在mif文件創(chuàng)建與使用中的應(yīng)用

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機(jī)號(hào)碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時(shí)間周一至周五
9:00-17:30

關(guān)注官方微信號(hào),
第一時(shí)間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫(kù)提出的寶貴意見(jiàn),您的參與是維庫(kù)提升服務(wù)的動(dòng)力!意見(jiàn)一經(jīng)采納,將有感恩紅包奉上哦!