国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

FPGA設(shè)計(jì)開(kāi)發(fā)軟件ISE使用技巧之:典型實(shí)例-增量式設(shè)計(jì)演示

發(fā)布時(shí)間:2015-11-24 09:18    發(fā)布者:designapp
關(guān)鍵詞: FPGA , ISE
  6.9 典型實(shí)例12:增量式設(shè)計(jì)(Incremental Design)演示
  6.9.1 實(shí)例的內(nèi)容及目標(biāo)
  1.實(shí)例的主要內(nèi)容
  6.7節(jié)對(duì)增量式設(shè)計(jì)這一方法的基本概念和流程做了全面的介紹。本節(jié)將以一個(gè)具體的實(shí)例幫助讀者熟悉增量式設(shè)計(jì)的操作流程。
  本實(shí)例的源代碼參見(jiàn)隨書(shū)光盤(pán)Example6.9。此程序?yàn)镻C機(jī)通過(guò)串口向SRAM寫(xiě)入數(shù)據(jù),再由FPGA從SRAM中讀取數(shù)據(jù)通過(guò)串口將其送到PC機(jī)。
  本實(shí)例的重點(diǎn)在于設(shè)計(jì)過(guò)程中是如何應(yīng)用增量式設(shè)計(jì)的,而不是如何實(shí)現(xiàn)程序本身的功能。
  2.實(shí)例目標(biāo)
  通過(guò)本訓(xùn)練,讀者應(yīng)達(dá)到下面的目標(biāo)。
  · 掌握增量式設(shè)計(jì)與一般設(shè)計(jì)的區(qū)別。
  · 掌握增量式設(shè)計(jì)的設(shè)計(jì)流程。
  6.9.2 實(shí)例詳解
  增量式設(shè)計(jì)的具體實(shí)現(xiàn)步驟如下。
  (1)打開(kāi)ISE工程。
  設(shè)計(jì)的第一步為創(chuàng)建邏輯分組。
  在本設(shè)計(jì)中,top.v為頂層模塊。頂層模塊中包含兩個(gè)功能模塊,分別為:uart_rs232.v和sram.v。uart_rs232.v用于完成串口數(shù)據(jù)傳輸,sram.v用于對(duì)于SRAM的基本讀寫(xiě)操作。
  top.v頂層模塊中,僅包含這兩個(gè)模塊,沒(méi)有其他復(fù)雜邏輯。并且每個(gè)邏輯分組均以寄存器輸出,可將這3個(gè)模塊看作3個(gè)邏輯分組,滿(mǎn)足創(chuàng)建邏輯分組所必須遵循的原則。
  (2)綜合。
  為了保證在后面的實(shí)現(xiàn)中能夠準(zhǔn)確地完成分組區(qū)域約束,這里需要對(duì)綜合的屬性進(jìn)行設(shè)置,在“Processes for Source”中選擇“Synthesize-XST”,單擊鼠標(biāo)右鍵,設(shè)置綜合屬性如圖6.86所示。
  


  圖6.86 設(shè)置綜合屬性對(duì)話(huà)框
  選擇“Synthesis Options”/“Keep Hierarchy”,設(shè)置綜合屬性為保留結(jié)構(gòu)層次模式。
  綜合完畢要查看綜合報(bào)告,為了和下面流程中的增量綜合結(jié)果作對(duì)比,請(qǐng)?zhí)貏e注意綜合報(bào)告中如圖6.87所示的部分。在沒(méi)有進(jìn)行增量綜合時(shí),要對(duì)每個(gè)模塊都進(jìn)行綜合和優(yōu)化。
  


  圖6.87 未設(shè)置綜合約束條件時(shí)的綜合報(bào)告
  (3)設(shè)置管腳約束。
  在“Processes for Source”中選擇“Assign Package Pins”啟動(dòng)設(shè)置管腳約束的工具PACE,如圖6.88所示,在Loc處設(shè)置各信號(hào)對(duì)應(yīng)的FPGA管腳。具體設(shè)置可參見(jiàn)例程代碼Source文件夾下的top.ucf文件。
  


  圖6.88 設(shè)置管腳約束界面
                               
                  設(shè)置好管腳約束后,保存退出PACE。在“Processes for Source”中選擇“Edit Constraints Text”,即在Text模式下編輯約束文件?梢钥吹较到y(tǒng)自動(dòng)生成的管腳約束文件內(nèi)容,如圖6.89所示。
  


  圖6.89 系統(tǒng)生成的管腳約束文件
  (4)設(shè)置分組區(qū)域約束。
  在“Processes for Source”中選擇“Create Area Constraints”,啟動(dòng)設(shè)置分組區(qū)域約束工具PACE。分別選中sram和rs232,單擊左上角的

圖標(biāo),為每一個(gè)邏輯分組設(shè)置區(qū)域約束,如圖6.90所示。

  


  圖6.90 進(jìn)入分組區(qū)域約束模式
  設(shè)置區(qū)域約束結(jié)果如圖6.91所示。
  


  圖6.91 區(qū)域約束設(shè)置結(jié)果
  如圖6.91所示,圖中左上角的區(qū)域?qū)?yīng)的是SRAM邏輯分組的約束區(qū)域,右下角的區(qū)域?yàn)閞s232邏輯分組的約束區(qū)域。采用如上的約束是綜合兩個(gè)邏輯分組內(nèi)部邏輯的復(fù)雜性以及I/O位置來(lái)確定的。這里的約束并不惟一,讀者可根據(jù)需要進(jìn)行修改。
  設(shè)置完畢后,保存設(shè)置。在“Processes for Source”中選擇“Edit Constraints Text”,即在text模式下編輯約束文件,可看到在約束文件中新添了如下內(nèi)容:
  #PACE: Start of PACE Area Constraints
  AREA_GROUP "AG_rs232" RANGE = SLICE_X0Y55:SLICE_X19Y38 ;//設(shè)置rs232邏輯分組區(qū)域
  INST "rs232" AREA_GROUP = "AG_rs232" ;
  AREA_GROUP "AG_sram" RANGE = SLICE_X34Y41:SLICE_X55Y18 ;//設(shè)置SRAM邏輯分組區(qū)域
  INST "sram" AREA_GROUP = "AG_sram" ;
                               
                  (5)在普通模式下對(duì)工程進(jìn)行映射和布局布線(xiàn)。
  在普通模式下(采用ISE下默認(rèn)的實(shí)現(xiàn)屬性)對(duì)工程進(jìn)行映射和布局布線(xiàn)是為了得到初始的指引文件,用于在后面的增量設(shè)計(jì)中指引映射和布局布線(xiàn)。
  首先在“Processes for Source”中選擇“Implement Design”/“Map”,對(duì)工程進(jìn)行映射。實(shí)現(xiàn)后系統(tǒng)會(huì)生成:top_map.ncd和top_map.ngm文件,需要用這些文件來(lái)指引后面的增量設(shè)計(jì)的映射。為了避免系統(tǒng)將此文件覆蓋,將其改名為:top_map_guide.ncd和top_map_guide.ngm文件。
  接著在“Processes for Source”中選擇“Implement Design”/“Place&Route”,對(duì)工程進(jìn)行布局布線(xiàn),會(huì)得到top.ncd文件。也將其改名為:top_guide.ncd,將其作為后面增量設(shè)計(jì)時(shí)布局布線(xiàn)的指引文件。

注意如果在此步驟中無(wú)法順利地完成映射和布局布線(xiàn)等步驟,很可能是區(qū)域分組約束做得不合適。需要重新做區(qū)域分組約束,直到能夠順利完成映射和布局布線(xiàn)為止。映射完成后要查看映射報(bào)告看各邏輯分組的資源利用率。如果不合適,需要修改區(qū)域約束后重新進(jìn)行映射和布局布線(xiàn)。映射報(bào)告需要注意的內(nèi)容如圖6.96所示。

  完成映射和布局布線(xiàn)后的結(jié)果如圖6.92所示:
  (6)對(duì)工程進(jìn)行增量綜合。
  如果在設(shè)計(jì)調(diào)試中發(fā)現(xiàn)了某個(gè)Logic Group需要修改,對(duì)其做微小的改動(dòng)后,要對(duì)工程進(jìn)行增量綜合。例如可以修改uart_rs232.v的代碼,然后進(jìn)行增量綜合。
  本實(shí)例中的增量綜合采用ISE自帶的工具XST。采用XST進(jìn)行增量綜合時(shí),必須為其添加約束文件(擴(kuò)展名為xcf)。添加的約束文件可先在記事本中編輯,然后保存為擴(kuò)展名為xcf的文件。在本實(shí)例中綜合約束文件為syn_constraint.xcf文件,其內(nèi)容如下:
  MODEL "top" incremental_synthesis=yes; //使用增量綜合
  MODEL "sram" incremental_synthesis=yes; //使用增量綜合
  MODEL "uart_rs232" incremental_synthesis=yes; //使用增量綜合
  MODEL "top" resynthesize=yes; //啟動(dòng)增量綜合
  MODEL "sram" resynthesize=no; //不啟動(dòng)增量綜合
  MODEL "uart_rs232" resynthesize=yes; //啟動(dòng)增量綜合
  前3句設(shè)置各邏輯分組均采用增量綜合,后3句通知哪個(gè)邏輯分組內(nèi)容發(fā)生改變,需要重新綜合,哪個(gè)邏輯分組內(nèi)容未發(fā)生改變,無(wú)需重新綜合。編輯完畢,將該文件添加到當(dāng)前的工程當(dāng)中,如圖6.92所示,上面syn_constranit.xcf文件即為添加結(jié)果。
  添加完畢后,要使這一約束文件有效,還要對(duì)綜合屬性進(jìn)行設(shè)置,如圖6.93所示。
  



  圖6.92 對(duì)工程進(jìn)行映射和布局布線(xiàn)結(jié)果 圖6.93 增量綜合屬性設(shè)置對(duì)話(huà)框
  選擇“Synthesis Options”/“Synthesis Constraints File”,根據(jù)約束文件所在位置,設(shè)置約束文件的路徑。設(shè)置完畢后,對(duì)工程進(jìn)行增量綜合。綜合完畢后,查看綜合報(bào)告,注意如下內(nèi)容。
  將圖6.94與圖6.87進(jìn)行比較,可以看出綜合中僅對(duì)top和rart_rs232兩個(gè)邏輯分組重新進(jìn)行了綜合和優(yōu)化。SRAM邏輯分組保持不變(Unit is up to date),表明增量綜合實(shí)現(xiàn)了。
  



  圖6.94 增量綜合的綜合報(bào)告圖 6.95 增量實(shí)現(xiàn)屬性設(shè)置對(duì)話(huà)框
  (7)對(duì)工程進(jìn)行增量實(shí)現(xiàn)(Implement)。
  完成增量綜合后,就可以利用前面得到的初始的指引文件:top_map_guide.ncd和top_guide.ncd文件來(lái)指引增量實(shí)現(xiàn)。
                               
                  首先對(duì)工程實(shí)現(xiàn)的屬性進(jìn)行設(shè)置,具體設(shè)置如下。
  單擊右鍵,選擇進(jìn)程瀏覽器中的“Implement Design”的“Property”選項(xiàng),彈出工程實(shí)現(xiàn)屬性對(duì)話(huà)框,如圖6.95所示。在增量設(shè)計(jì)屬性頁(yè)中做如下設(shè)置。
  · 為“Enable Incremental Design Flow”使能增量實(shí)現(xiàn)。
  · 為“Run Guided Incremental Design Flow”設(shè)置用指引文件來(lái)引導(dǎo)增量實(shí)現(xiàn)。
  · 為“MAP Guide Design File(.ncd)”設(shè)置指引映射的指引文件top_map_guide.ncd路徑。
  · 為“PAR Guide Design File(.ncd)”設(shè)置指引布局布線(xiàn)的指引文件top_guide.ncd路徑。
  按上述方式設(shè)置完畢后,對(duì)工程進(jìn)行映射和布局布線(xiàn)后,查看映射和布局布線(xiàn)報(bào)告,對(duì)于映射報(bào)告注意以下內(nèi)容。
  如圖6.96所示,在映射報(bào)告中會(huì)對(duì)每個(gè)邏輯分組在各自約束的區(qū)域內(nèi)的資源利用情況作一個(gè)總結(jié)報(bào)告。可以看到各分組所用的LUT和Slices占其約束區(qū)域總量的百分比。如果出現(xiàn)某一邏輯分組的使用率達(dá)90%以上,而有些邏輯分組還不到1%,則需要重新進(jìn)行區(qū)域約束。
  


  圖6.96 映射報(bào)告(Map Report)
  區(qū)域約束最好在生成初始指引文件時(shí)就確認(rèn)。在普通模式下完成映射后查看映射報(bào)告,查看每個(gè)邏輯分組的資源利用率。如是不合適,則更改區(qū)域約束,重新進(jìn)行映射。
  對(duì)于布局布線(xiàn)報(bào)告注意以下內(nèi)容。
  如圖6.97所示,布局布線(xiàn)時(shí)讀取了top_guide.ncd作為指引文件,僅有rs_232邏輯分組重新進(jìn)行了布局布線(xiàn)(AG_rs232 was re-implemented)。SRAM邏輯分組完全繼承了前面已有的結(jié)果(AG_sram was fully guided),說(shuō)明增量實(shí)現(xiàn)完成了。
  


  圖6.97 布局布線(xiàn)報(bào)告(Place&Route Report)
  完成了布局布線(xiàn)后就可以下載調(diào)試了。如果仍需要改動(dòng),重復(fù)步驟(6)和步驟(7),直到設(shè)計(jì)符合要求為止。
  6.9.3 小結(jié)
  本節(jié)以一個(gè)具體的實(shí)例介紹了ISE下增量設(shè)計(jì)流程。希望讀者能夠按照上述步驟進(jìn)一步熟悉ISE的增量設(shè)計(jì)流程,對(duì)增量設(shè)計(jì)有個(gè)比較全面的認(rèn)識(shí),最終將這種設(shè)計(jì)方法應(yīng)用到自己的設(shè)計(jì)當(dāng)中。
                               
               
本文地址:http://www.qingdxww.cn/thread-157352-1-1.html     【打印本頁(yè)】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠(chǎng)商推薦

  • Microchip視頻專(zhuān)區(qū)
  • Chiptorials——如何使用ATECC608 TrustFLEX實(shí)現(xiàn)公鑰輪換
  • FPGA設(shè)計(jì)流程培訓(xùn)教程
  • Chiptorials ——使用ATECC608 TrustFLEX實(shí)現(xiàn)基本非對(duì)稱(chēng)身份驗(yàn)證
  • 無(wú)線(xiàn)充電基礎(chǔ)知識(shí)及應(yīng)用培訓(xùn)教程
  • 貿(mào)澤電子(Mouser)專(zhuān)區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 99热这里只有精品免费 | 99热成人精品热久久669 | 欧美午夜网 | 美国毛片免费观看 | 窝窝影院午夜看片 | 天美传媒无忧传媒果冻传媒 | 中文字幕欧美日韩高清 | 国产精品福利社 | 精品国产免费一区二区三区五区 | 男人的天堂在线免费视频 | 婷婷综合久久中文字幕蜜桃三 | 九九九九热精品免费视频 | 国产成人免费片在线观看 | 亚洲欧美一区二区三区不卡 | 国产91av视频 | 国产亚洲精品网站 | 欧美高清在线观看 | 国产精品3 | 五月天中文字幕 | 国产成人亚洲精品乱码在线观看 | 一级做a级爰片性色毛片视频 | 欧美在线观看一区二区 | 国产国拍亚洲精品永久不卡 | 国产免费播放一区二区三区 | 毛片国产 | 欧美在线网站 | 国产一区二区三区视频在线观看 | 日本欧美小视频 | 成年女人毛片免费观看不卡 | 一区二三区国产 | 一级特黄视频 | 国产日韩欧美在线一区二区三区 | 第一福利在线观看永久视频 | 亚洲天堂成人在线 | 四虎最新紧急入口4hu | 91免费版在线观看 | 成年人在线观看网站 | 国产三级短视频 | 99视频国产热精品视频 | 一级特级女人18毛片免费视频 | 免费视频日韩 |