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

FPGA設計開發軟件ISE使用技巧之:典型實例-增量式設計演示

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


  圖6.86 設置綜合屬性對話框
  選擇“Synthesis Options”/“Keep Hierarchy”,設置綜合屬性為保留結構層次模式。
  綜合完畢要查看綜合報告,為了和下面流程中的增量綜合結果作對比,請特別注意綜合報告中如圖6.87所示的部分。在沒有進行增量綜合時,要對每個模塊都進行綜合和優化。
  


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


  圖6.88 設置管腳約束界面
                               
                  設置好管腳約束后,保存退出PACE。在“Processes for Source”中選擇“Edit Constraints Text”,即在Text模式下編輯約束文件。可以看到系統自動生成的管腳約束文件內容,如圖6.89所示。
  


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

圖標,為每一個邏輯分組設置區域約束,如圖6.90所示。

  


  圖6.90 進入分組區域約束模式
  設置區域約束結果如圖6.91所示。
  


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

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

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



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



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


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


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

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • dsPIC® DSC集成電機驅動器:非常適合在緊湊空間內進行實時控制
  • dsPIC® DSC:攻克各種觸摸傳感挑戰的電容式觸摸解決方案
  • PIC32CM LS60 Curiosity Pro評估工具包
  • PIC32CK SG單片機——輕松滿足新型網絡安全要求
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩综合在线视频| 欧美日b视频| 亚洲国产欧美目韩成人综合| 亚洲国产精品成人午夜在线观看| 性感美女视频免费网站午夜| 日本三片在在线播放| 亚洲一区二区三区免费在线观看| 一级片播放| 天堂在线观看中文字幕| 亚洲天堂最新网址| 亚洲国产精品嫩草影院久久| 亚洲综合一区二区| 亚洲欧美综合人成野草| 日本视频在线免费| 日产精品一区二区| 亚洲欧美日韩不卡一区二区三区| 亚洲狠狠婷婷综合久久蜜桃| 一级毛片免费不卡直观看| 色综合久久久久| 欧美日韩国产另类一区二区三区| 性视频福利在线看| 一级毛片在线免费观看| 人人插人人艹| 亚洲伊人久久在| 色综合合久久天天给综看| 日本免费人成黄页在线观看视频| 欧美精品九九99久久在观看| 欧美日韩国产一区二区三区| 一级毛片一级毛片免费毛片| 青青视频免费| 色小姐网站| 日韩视频免费在线观看| 一级啪啪| 日本不卡一二三| 日韩视频在线免费| 日日干天天操| 一个色综合久久| 日本看片网址| 一级毛片免费观看不收费| 手机看片福利久久| 日本亚洲国产精品久久|