Synplify綜合_第1頁
Synplify綜合_第2頁
Synplify綜合_第3頁
Synplify綜合_第4頁
Synplify綜合_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、.,Synplify教程,.,內(nèi)容,一 、什么是綜合 二、Synplify pro綜合 三、基本概念 四、用戶界面 五、基本工程流程,.,什么是綜合?,設(shè)計(jì)描述 高層次描述:對(duì)整個(gè)系統(tǒng)的數(shù)學(xué)模型描述,它試圖在系統(tǒng)設(shè)計(jì)的初始階段,通過對(duì)系統(tǒng)行為描述的仿真來發(fā)現(xiàn)系統(tǒng)設(shè)計(jì)中存在的問題,此時(shí)考慮更多的是系統(tǒng)結(jié)構(gòu)和工作過程能夠達(dá)到設(shè)計(jì)規(guī)格的要求,而與具體的工藝和器件無關(guān) 邏輯描述:對(duì)設(shè)計(jì)進(jìn)行RTL級(jí)描述,導(dǎo)出邏輯表達(dá)式,并用功能仿真工具進(jìn)行仿真 門級(jí)描述:設(shè)計(jì)的門級(jí)實(shí)現(xiàn),相當(dāng)于系統(tǒng)的邏輯原理圖 物理描述:或稱版圖描述,ASIC設(shè)計(jì)中表現(xiàn)為GDSII 文件 綜合指不同設(shè)計(jì)描述之間的轉(zhuǎn)換,.,IC設(shè)計(jì)中的綜

2、合,.,IC設(shè)計(jì)中的綜合,高層次綜合:將系統(tǒng)算法層的行為描述轉(zhuǎn)化為寄存器傳輸層的結(jié)構(gòu)描述 邏輯綜合:將寄存器傳輸層的的結(jié)構(gòu)描述轉(zhuǎn)化為邏輯層的結(jié)構(gòu)描述,以及將邏輯層的結(jié)構(gòu)描述轉(zhuǎn)化為電路的結(jié)構(gòu)描述 物理綜合:將系統(tǒng)電路層的結(jié)構(gòu)描述轉(zhuǎn)化為版圖層的物理描述,.,綜合約束,綜合約束 設(shè)計(jì)所期望達(dá)到的性能和面積的目標(biāo),在綜合實(shí)現(xiàn)階段附加約束,是為了便于控制綜合實(shí)現(xiàn)過程,使設(shè)計(jì)滿足運(yùn)行速度,引腳位置等方面的要求 附加合理的約束 達(dá)到面積,速度,性能的良好折中 約束原則 面積和速度是設(shè)計(jì)效果最終的評(píng)定標(biāo)準(zhǔn),在兩者沖突時(shí),采用速度優(yōu)先,.,二 Synplify pro綜合,FPGA的綜合 針對(duì)具體的FPGA器件

3、,將RTL級(jí)的設(shè)計(jì)描述轉(zhuǎn)化成門級(jí)描述 -Synthesis=Translation+Optimization+Mapping 對(duì) HDL源代碼進(jìn)行編譯與邏輯層次上的優(yōu)化,消除冗余邏輯對(duì)編譯的結(jié)果進(jìn)行邏輯映射與結(jié)構(gòu)層次上的優(yōu)化,生成邏輯網(wǎng)表 特點(diǎn) 綜合速度快 綜合效果比較好 Synplify與Synplifypro Synplify簡裝版,后者包含了前者所有功能 綜合原理和機(jī)制完全相同,.,三、 基本概念,1 綜合 2 工程文件 3 腳本 4 約束文件 5 宏庫 6 屬性包,.,綜合,綜合Synthesis ,簡單地說就是將HDL代碼轉(zhuǎn)化為門級(jí)網(wǎng)表的過程,Synplify 對(duì)電路的綜合包括三個(gè)步

4、驟表示如下: 1 HDL compilation: 把HDL的描述編譯成已知的結(jié)構(gòu)元素 2 Optimization :運(yùn)用一些算法進(jìn)行面積優(yōu)化和性能優(yōu)化,使設(shè)計(jì)在滿足給定性能約束的前提下,面積盡可能的小。這里Synplify進(jìn)行的是基本的優(yōu)化與具體的目標(biāo)器件技術(shù)無關(guān) 3 Technology mapping :將設(shè)計(jì)映射到指定廠家的特定器件上,針對(duì)目標(biāo)器件結(jié)構(gòu)優(yōu)化,生成作為布局布線工具輸入的網(wǎng)表,.,工程文件 工程文件*.prj 以tcl 的格式保存以下信息設(shè)計(jì)文件約束文件綜合選項(xiàng)的設(shè)置情況等 Tcl 腳本 Tcl Tool Command Language 是一種非常流行的工業(yè)標(biāo)準(zhǔn)批處理描

5、述語言常用作軟件應(yīng)用的控制 應(yīng)用Synplify 的Tcl script 文件設(shè)計(jì)者可以用批處理命令的形式執(zhí)行一個(gè)綜合也可以一次執(zhí)行同一設(shè)計(jì)多個(gè)綜合嘗試不同的器件不同的時(shí)延目標(biāo)不同的約束條件Synplify 的script 文件以*.tcl 保存,.,約束文件 約束文件采用Tcl ,以(*.sdc )保存用來提供設(shè)計(jì)者定義的時(shí)間約束、綜合屬性、供應(yīng)商定義的屬性等。 約束文件既可以通過SCOPE創(chuàng)建編輯,也可以使用文正編輯器創(chuàng)建編輯??杀惶砑拥皆诠こ檀翱诘拇a菜單中,也可以被Tcl script 文件調(diào)用。 宏庫 Synplify 在它內(nèi)建的宏庫中提供了由供應(yīng)商給出的宏模塊比如一些門電路計(jì)數(shù)器寄

6、存器I/O模塊等你可以把這些宏模塊直接例化到你的設(shè)計(jì)中去,.,屬性包 Synplify為VHDL提供了一個(gè)屬性包,在Synplify_install_dir/lib/vhd/synattr.vhd 。內(nèi)容有時(shí)間約束,如對(duì)黑匣子的時(shí)間約束,供應(yīng)商提供的一些屬性,還有一些綜合屬性以幫助你實(shí)現(xiàn)你的綜合目的。使用時(shí)只需在VHDL源文件的開頭加入以下屬性包調(diào)用語句 library synplify; use synplify.attributes.all;,.,四、用戶界面,.,五、工程流程,1)Create Project 2)Add Input Files 3)Create or Edit Impl

7、ementation Pick Device Global Clock Frequency 4) Souce check 5) Set Constaint file and optimization 6)Click on the Button 7)View/Analyze Results and export files,.,1 創(chuàng)建工程使用project wizard,工程向?qū)?1)啟用工程向?qū)?.,工程名,2)指定工程名稱和路徑,.,3)添加工程文件,.,1 創(chuàng)建工程-使用工具欄快捷按鈕,1)方法一、點(diǎn)擊File-New,.,方法二,.,方法三,.,2)添加文件,.,2 源代碼錯(cuò)誤檢查,包

8、括兩個(gè)層次 語法錯(cuò)誤檢查 綜合錯(cuò)誤檢查 推薦在代碼調(diào)試階段使用代碼錯(cuò)誤檢查工具,及時(shí)發(fā)現(xiàn)問題,.,綜合檢查,.,3 使用rtl觀察編譯結(jié)果 執(zhí)行 run/compile only命令,.,4 使用scope設(shè)計(jì)綜合約束文件,或單擊 按鈕,.,SCOPE窗口,.,1)Clock 定義一個(gè)信號(hào)作為時(shí)鐘 Enable 標(biāo)志約束是否生效 Clock 說明時(shí)鐘信號(hào)名 Value 說明時(shí)鐘的數(shù)值單位為Mhz或ns Units 說明Value一欄的單位Mhz或ns Duty cycle 說明時(shí)鐘的占空比單位是ns或% Units 說明時(shí)鐘的占空比的單位ns或% Improve 希望改善由這個(gè)時(shí)鐘控制的寄存器

9、的路徑延遲的數(shù)量 這個(gè)數(shù)值可以根據(jù)Synplify的時(shí)間報(bào)告中關(guān)于相關(guān)寄存器的路徑延遲的負(fù)裕量給出這是一個(gè)高級(jí)用戶選項(xiàng) Route 希望改善由這個(gè)時(shí)鐘控制的寄存器的路徑延遲的數(shù)量 與Improve有所不同的是這一欄的數(shù)值應(yīng)填入布局布線工具的時(shí)間報(bào)告與Synplify的時(shí)間報(bào)告相差的數(shù)值這也是高級(jí)用戶選項(xiàng)Improve和Route可以同時(shí)使用 Units 說明Improve和Route選項(xiàng)的單位只能是ns Comments 允許你加入一些注釋,.,2) Clock to Clock 說明不同時(shí)鐘間沿到沿的延遲,可以用來定義不同時(shí)鐘 控制的觸發(fā)器之間的最大允許延遲說明一條時(shí)鐘間的 False Pa

10、th 或是描述一個(gè)不對(duì)稱占空情況的時(shí)鐘 Clock1 說明第一個(gè)時(shí)鐘的名字 Edge1 說明是第一個(gè)時(shí)鐘的上升或下降沿 Clock2 說明第二個(gè)時(shí)鐘的名字 Edge2 說明是第二個(gè)時(shí)鐘的上升或下降沿 Value 說明兩個(gè)沿之間的延遲值或false false選項(xiàng)指定兩個(gè)沿之間的路徑將被被忽略,.,3 ) Input/Output 建立FPGA的I/O端口與外部環(huán)境界面的模型,缺省的FPGA外部延遲為0 Port 說明端口名 Type 說明端口類型Input 或 Output Value Improve Route等與前面的相同或類似 4) Registers 這個(gè)約束的目的是按照給定的時(shí)間縮短

11、進(jìn)入一個(gè)寄存器或由其輸出的路徑延遲 Type 說明是輸入路徑還是輸出路徑 Object 說明指定寄存器的名字 其他如Improve Route Units等與前相同或類似,.,5 Multicycle Paths 說明通過寄存器的多時(shí)鐘周期路徑通過這項(xiàng)約束你可 以為輸入或由一個(gè)寄存器輸出的或是通過一條連線net 的所有路徑添加額外的時(shí)鐘周期以放寬時(shí)間約束 Type 說明路徑是輸入或輸出指定的端口或寄存器或連線 Port/Register/Net 說明指定路徑時(shí)依據(jù)的端口或寄存器名 Value 說明為該路徑提供的全部時(shí)鐘周期的總數(shù)必須是整數(shù) Units 說明Value的單位只能是個(gè)周期 其他與前

12、相同或類似 6. False Path 定義在時(shí)間分析或優(yōu)化忽略的路徑其中Port/Register/Net Type等與前相同或類似,.,8. Attribute 在這里你可以說明設(shè)計(jì)屬性其中Object欄和Attribute欄的下拉式菜單是同步的如果你在Object欄的下拉式菜單里選定一個(gè)對(duì)象則Attribute欄的下拉式菜單中只顯示可以施加于該對(duì)象的屬性反之亦然 Object Filter 說明屬性施加對(duì)象的類型你可以用這一欄篩選和選擇對(duì)象 Object 說明施加屬性的對(duì)象名 Attribute 說明施加的屬性 Value 說明所施加屬性的值 Val Type 說明屬性值的正確類型 De

13、scription 包含關(guān)于該屬性的一個(gè)簡短描述 其他與前相同或類似,.,9. Other 這一欄是為了讓高級(jí)用戶輸入新近支持的約束文件命令這些命令優(yōu)化和時(shí)間分析并不支 持的但是他們會(huì)被作為約束傳遞給布局布線工具,.,.,.,4 設(shè)置綜合優(yōu)化參數(shù),(1)器件選型,.,(2) 優(yōu)化參數(shù)選項(xiàng),.,Pipelining 將較大的組合邏輯用寄存器分割成若干較小的邏輯,減少從輸入到輸出的時(shí)延 自動(dòng)優(yōu)化乘法器,ROM等結(jié)構(gòu),提高工作頻率 Retiming 在不改變邏輯功能的前提下,自動(dòng)用寄存器分割組合邏輯,在組合電路中插入平衡時(shí)延,提高芯片工作頻率 本質(zhì)是寄存器在宏觀上的移動(dòng),不影響整體的寄存器級(jí)數(shù) Re

14、timing的功能比Pipelining更強(qiáng)大,選定了Retiming就一定會(huì)自動(dòng)選上Pipelining,時(shí)序優(yōu)化工具,.,Retiming和Pipelining,.,(3)綜合約束文件選項(xiàng),.,(4)綜合結(jié)果存儲(chǔ),必須選中此項(xiàng),.,(5)時(shí)序報(bào)告選項(xiàng),.,(6)語言參數(shù)選項(xiàng) Synplify把最后編譯的module作為頂層設(shè)計(jì)故把你所 要的頂層設(shè)計(jì)文件用左鍵拖拉到源文件菜單的末尾處 或者點(diǎn)擊Impl Options”按鈕在verilog 屬性頁中設(shè)置頂 層模塊的名稱,.,5 點(diǎn)擊run 進(jìn)行綜合 6 分析綜合結(jié)果,.,.,.,HDL Analyst是synplify提供給設(shè)計(jì)者查看結(jié)果提高

15、設(shè)計(jì)速度特性和優(yōu)化面積的強(qiáng)有力的層次結(jié)構(gòu)可視化圖形工具。HDL Analyst包含兩個(gè)原理圖視窗RTL視窗RTL View 和目標(biāo)技術(shù)視窗Technology View RTL視窗顯示的是高層的與目標(biāo)技術(shù)無關(guān)的原理圖是對(duì)編譯結(jié)果的可視化顯示。 Technology View目標(biāo)技術(shù)視窗提供的是相對(duì)低層的、特定廠家器件實(shí)現(xiàn)的原理圖,是對(duì)映射結(jié)果的可視化顯示,它顯示的基本元是與特定廠家器件技術(shù)有關(guān)的,諸如查找表、級(jí)聯(lián)和進(jìn)位鏈、多路器、觸發(fā)器等等。 在設(shè)計(jì)者把他的設(shè)計(jì)映射到一個(gè)器件后HDL Analyst自動(dòng)生成層次化的RTL級(jí)和基本門級(jí)網(wǎng)表用HDL Analyst 打開你的設(shè)計(jì)后你就可以在你的源代

16、碼與你的邏輯圖之間進(jìn)行交叉索引 cross_probe 了你可以查看源代碼中一段代碼編譯或映射后產(chǎn) 生的結(jié)果是否和預(yù)期相符,也可以查看圖中關(guān)鍵路徑對(duì)應(yīng)的是那 一段源代碼以做修改,.,.,正確理解關(guān)鍵路徑上的時(shí)間延遲顯示信息如 out0 (dfm7a), delay : 12.9 ns, slack:-10.5ns 表示路徑延遲累積到此寄存器dfm7a 對(duì)應(yīng)設(shè)計(jì)中的out0 為12.9ns 到此已超出時(shí)間要求10.5ns 關(guān)鍵路徑是指設(shè)計(jì)中從輸入到輸出經(jīng)過的延時(shí)最長的邏輯路徑。,.,查看綜合報(bào)表,綜合報(bào)表所含的信息 基本編譯信息 有限狀態(tài)機(jī)編譯信息 時(shí)序約束信息 總體性能概括(Performance Summary) 時(shí)鐘參數(shù)信息(Clock Relationships) 輸入輸出引腳信息(Input Ports and Output Ports) 較差時(shí)鐘路徑的起

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論