244
Quartus ® II 簡介 6.0 Altera Corporation 101 Innovation Drive San Jose, CA 95134 (408) 544-7000 www.altera.com ®

Quartus II 簡介 - IntelQuartus II 簡介 6.0 版 2006 年3 月 P25-09235-05 Altera、Altera 標誌、FastTrack、HardCopy、MAX、MAX+PLUS、MAX+PLUS II、MegaCore、MegaWizard、

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

  • Quartus® II 簡介

    6.0版

    Altera Corporation101 Innovation DriveSan Jose, CA 95134(408) 544-7000www.altera.com

    ®®

  • Quartus II 簡介6.0 版 2006 年 3 月 P25-09235-05

    Altera、Altera 標誌、FastTrack、HardCopy、MAX、MAX+PLUS、MAX+PLUS II、MegaCore、MegaWizard、NativeLink、Nios、OpenCore、Quartus、Quartus II、Quartus II 標誌和 SignalTap 是 Altera 公司在美國和其他國家的註冊商標。Avalon、ByteBlaster、ByteBlasterMV、Cyclone、Excalibur、IP MegaStore、Jam、LogicLock、Master Blaster、MegaLAB、PowerFit、SignalProbe、Stratix 和 USB-Blaster 是 Altera 公司在美國和其他國家的商標以及服務標誌。Altera 公司使用的產品設計單元和助記符號受版權法以及商標法的保護。

    Altera 公司承認本文件檔提及的其他組織的產品或商標以及服務標誌,特別是:ARM 是註冊商標,AMBA 是 ARM公司的商標。Mentor Graphics 和 ModelSim 是 Mentor Graphics 公司的註冊商標。

    Altera 保留更改本文件檔中所述元件或元件規範的權利,恕不另行通知。Altera 建議客戶在下訂單之前取得元件規範的最新版本,以確認您所獲得的資訊是最新的。Altera 保證自己的半導體產品性能符合目前規範,與 Altera的標準擔保一致。Altera 使用了必要的測試和其他品質控制技術,足以支援此擔保。除非政府管制要求,否則沒有必要對每個設備的所有參數都進行具體測試。如果沒有書面協議另做規定,Altera 對於使用本文件檔所述半導體元件而引起有關的 Altera 應用協助、客戶產品設計或對第三方專利或版權的侵權均不承擔任何責任。Altera 不保證或代表 Altera 涵蓋或相關的可能使用或正在使用此類半導體元件在內的任何組合、機械或過程的任何專利權、版權或其他智慧財產。

    沒有Altera Corporation總裁以書面形式明確同意, Altera產品不得用作生命支援設備或系統中的關鍵元件。其中:

    1. 生命支援設備或系統是指這類設備或系統:(a) 用於外科手術植入人體內;(b) 支援或維持生命,而且當這種設備或系統在按照標籤上提供的使用說明正確使用時,卻無法發揮正常功效時,可能會對使用者造成嚴重傷害。

    2. 關鍵元件是指生命支援設備或系統的任何元件,如果不能正常發揮功效,可能會導致生命支援設備或系統出現故障,或影響它的安全性或有效性。

    Altera 產品受許多美國和國外專利及正在申請的專利、外觀權和版權的保護。

    版權所有 © 2004 Altera Corporation。保留所有權利。

  • ALTERA 公司 QUARTUS II 簡介 ■ 1

    前言.....................................................................................................................................6文件檔編制約定 ............................................................... 7

    第 1 章: 設計流程...............................................................................................................9引言......................................................................................................................10圖形使用者介面設計流程 ..................................................................................... 11EDA 工具設計流程 ...............................................................................................17命令行設計流程....................................................................................................22

    命令行可執行檔.......................................................................................23使用標準命令行命令和腳本.....................................................................27使用 Tcl 命令 ...........................................................................................30建立 Makefile 腳本 ..................................................................................32

    設計方法和設計規劃 ............................................................................................35自上而下與自下而上的設計方法比較 ......................................................35自上而下漸進式編譯設計流程 .................................................................36自下而上的漸進式編譯流程.....................................................................37

    第 2 章: 設計輸入.............................................................................................................39引言......................................................................................................................40建立專案 ..............................................................................................................41

    使用修訂 (Revision) ................................................................................42使用版本相容的資料庫 ............................................................................45轉換 MAX+PLUS II 專案 .........................................................................46

    建立設計 ..............................................................................................................47使用 Quartus II 模組編輯器 .....................................................................48使用 Quartus II 純文字編輯器..................................................................49使用 Quartus II 符號編輯器 .....................................................................49使用 Verilog HDL、VHDL 以及 AHDL.....................................................50

    使用 Altera 巨集功能 ............................................................................................51使用矽智財 (IP) 巨集功能 ........................................................................52使用 MegaWizard 外掛程式管理器..........................................................53在 Quartus II 軟體中例化巨集功能................................ 54

    在 Verilog HDL 和 VHDL 中例化.................................................54使用埠和參數定義 ......................................................................54推斷巨集功能 .......................................... 54

    在 EDA 工具中例化巨集功能...................................................................55使用 Black-Box 方法 .................................... 55

    按推斷進行例化.......................................................................................55使用 Clear-Box 方法................................................................................56

    第 3 章: 約束輸入.............................................................................................................59引言......................................................................................................................60使用分配編輯器....................................................... 61使用接腳規劃器....................................................................................................62Settings 對話框 ....................................................................................................64分配設計分區 .......................................................................................................65

    在 Project Navigator 中分配設計分區......................................................65

    目錄

  • 目錄

    2 ■ QUARTUS II 簡介 ALTERA 公司

    採用 Design Partitions 視窗分配設計分區 .............................................. 65導入分配 .............................................................................................................. 67驗證接腳分配....................................................................................................... 68

    第 4 章: 合成 ................................................................................................................... 69引言 ..................................................................................................................... 70Quartus II Verilog HDL 和 VHDL 整合合成 .......................................................... 71使用其他 EDA 合成工具 ...................................................................................... 73控制 Analysis & Synthesis................................................................................... 76

    使用 Compiler 指令和屬性 ...................................................................... 76使用 Quartus II 邏輯選項 ........................................................................ 77使用 Quartus II 合成網表最佳化選項 ...................................................... 79

    使用設計助手檢查設計可靠性.............................................................................. 79使用 RTL 查看器和狀態機查看器分析合成結果 ................................................... 81

    RTL 查看器 ............................................................................................. 81狀態機查看器 .......................................................................................... 83

    採用技術映射查看器分析合成結果 ...................................................................... 85進行漸進式合成 ................................................................................................... 87

    第 5 章: 佈局佈線 ............................................................................................................ 89引言 ..................................................................................................................... 90進行完整的漸進式編譯 ........................................................................................ 91分析除錯結果....................................................................................................... 92

    使用 Messages 視窗查看除錯結果 ......................................................... 92使用 Report 視窗或 Report 檔查看除錯結果 ........................................... 94使用時序逼近平面佈局圖來分析結果 ...................................................... 96使用設計助手檢查設計的可靠性 ............................................................. 98

    最佳化除錯 .......................................................................................................... 98使用位置分配 .......................................................................................... 98設置用於控制佈局佈線的選項................................................................. 99

    設置 Fitter 選項 .......................................................................... 99設置實體合成最佳化選項 ........................................................... 99置影響除錯的不同邏輯選項 ..................................................... 100

    使用資源最佳化精靈程式 ...................................................................... 100使用設計空間管理器 ............................................................................. 103

    透過反標保留分配.............................................................................................. 107

    第 6 章: 採用模組式設計 ................................................................................................111引言 ................................................................................................................... 112Quartus II 採用模組式的設計流程...................................................................... 112使用 LogicLock 區域 .......................................................................................... 113在自上而下漸進式編譯流程中使用 LogicLock 區域 ........................................... 116自下而上設計流程中導入導出分區 .................................................................... 117

    為自下而上的漸進式編譯編譯方法準備頂層設計 .................................. 117導出分區,在頂層專案中使用............................................................... 118將底層分區導入到頂層專案中............................................................... 118

  • 目錄

    ALTERA 公司 QUARTUS II 簡介 ■ 3

    第 7 章: 模擬 .................................................................................................................. 119引言....................................................................................................................120使用 EDA 工具進行設計模擬..............................................................................121

    進行 EDA 模擬工具設置 ........................................................................122產生模擬輸出檔.....................................................................................123EDA 模擬流程 .......................................................................................124

    EDA 工具功能模擬流程 ............................................................124NativeLink 模擬流程 .................................................................124手動時序模擬流程 ....................................................................125模擬函式庫 ...............................................................................125

    使用 Quartus II 模擬器進行模擬設計..................................................................127建立波形檔 ............................................................................................129使用模擬器工具.....................................................................................130

    第 8 章: 時序分析...........................................................................................................131引言....................................................................................................................132選擇 TimeQuest 或者標準時序分析器 ................................................................132TimeQuest 時序分析 ..........................................................................................133

    運行 TimeQuest 時序分析器 .................................................................133使用 TimeQuest GUI ................................................................133Tasks 介面................................................................................134Console 介面............................................................................134Report 介面 ..............................................................................135View 介面 .................................................................................135

    標準時序分析器.....................................................................................135指定標準時序要求 .................................................................................136

    進行專案全局範圍的時序設置 ........................................................ 137進行個別時序分配 ............................................................................ 138

    進行標準時序分析 .................................................................................139進行早期時序估算 .................................................................................141標準時序分析報告 .................................................................................142進行分配和查看延時路徑 ......................................................................144使用技術映射查看器查看時序延時 ........................................................146

    使用 EDA 工具進行時序分析..............................................................................147使用 PrimeTime 軟體 ............................................................................149使用 Tau 軟體 ........................................................................................149

    第 9 章: 時序逼近...........................................................................................................151引言....................................................................................................................152使用時序逼進平面佈局圖 ...................................................................................152

    查看分配與佈線.....................................................................................153進行分配................................................................................................154

    使用時序最佳化精靈程式 ...................................................................................155使用網表最佳化實現時序逼近 ............................................................................156使用 LogicLock 區域達到時序逼近 .....................................................................158

    軟式 LogicLock 區域..............................................................................159採用路徑式分配.....................................................................................159

  • 目錄

    4 ■ QUARTUS II 簡介 ALTERA 公司

    使用設計空間管理器達到時序逼近 .................................................................... 160使用漸進式編譯達到時序逼近............................................................................ 161

    第 10 章: 功率消耗分析 ................................................................................................. 163引言 ................................................................................................................... 164使用 PowerPlay 功率消耗分析器分析功率消耗 ................................................. 164設置功率消耗分析器選項................................................................................... 166使用 PowerPlay 早期功率消耗估算器................................................................ 168

    第 11 章: 編程與配置 ..................................................................................................... 171引言 ................................................................................................................... 172使用 Programmer 對一個或多個元件編程 ......................................................... 176建立輔助編程檔 ................................................................................................. 177

    建立其他編程檔格式 ............................................................................. 177轉換編程檔 ........................................................................................... 179

    Quartus II 透過遠端 JTAG 伺服器進行編程 ....................................................... 182

    第 12 章: 除錯 ............................................................................................................... 185引言 ................................................................................................................... 186使用 SignalTap II 邏輯分析儀............................................................................. 187

    設置和運行 SignalTap II Logic Analyzer ............................................... 187漸進式編譯使用 SignalTap II 邏輯分析儀.............................................. 191分析 SignalTap II 資料 .......................................................................... 192

    使用外部邏輯分析儀 .......................................................................................... 194使用 SignalProbe............................................................................................... 196使用 在系統記憶體內容編輯器........................................................................... 198使用 RTL 查看器和技術映射查看器 ................................................................... 199使用晶片編輯器 ................................................................................................. 200

    第 13 章: 專案更改管理 ................................................................................................. 201引言 ................................................................................................................... 202使用晶片編輯器確定延時和關鍵路徑................................................................. 203在晶片編輯器中編輯基元................................................................................... 204使用資源屬性編輯器修改資源屬性 .................................................................... 205使用更改管理器查看和管理更改 ........................................................................ 207驗證 ECO 更改的效果........................................................................................ 208

    第 14 章: 形式驗證 ........................................................................................................ 209引言 ................................................................................................................... 210使用 EDA 形式驗證工具 .................................................................................... 211進行其他設置..................................................................................................... 213

    第 15 章: 系統級設計..................................................................................................... 215引言 ................................................................................................................... 216使用 SOPC Builder 建立 SOPC 設計................................................................. 218

    建立系統 ............................................................................................... 218產生系統 ............................................................................................... 219

    使用 DSP Builder 建立 DSP 設計 ...................................................................... 220例化功能 ............................................................................................... 220產生模擬檔 ........................................................................................... 220

  • 目錄

    ALTERA 公司 QUARTUS II 簡介 ■ 5

    產生合成檔 ............................................................................................221

    第 16 章: 安裝、授權與技術支援 ...................................................................................223安裝 Quartus II 軟體 ...........................................................................................224授權 Quartus II 軟體 ...........................................................................................224獲取技術支援 .....................................................................................................226

    第 17 章: 文件檔與其他資源 ..........................................................................................229獲取線上說明 .....................................................................................................230使用 Quartus II 線上教程....................................................................................231其他 Quartus II 軟體文件檔 ................................................................................232其他 Altera 文獻 .................................................................................................233

    索引.................................................................................................................................235

  • ALTERA 公司 QUARTUS II 簡介 ■ 6

    前言

    Altera® Quartus® II 設計軟體為可編程單晶片系統 (SOPC) 提供最全面的設計環境。本手冊針對的讀者是 Quartus II 軟體初學者,它概述了可編程邏輯設計中 Quartus II 軟體的功能。不過,本手冊並不是 Quartus II 軟體詳盡的參考手冊。相反的,本手冊只是一本指導書,它解釋軟體的功能以及這些功能如何幫助您進行 FPGA 和 CPLD 設計。本手冊按一系列特定的可編程邏輯設計任務來組織內容。無論是使用 Quartus II 圖形使用者介面、其他 EDA工具還是 Quartus II 命令行介面,本手冊都將為您介紹最適合您設計流程的功能。

    第一章概述主要的圖形使用者介面、EDA 工具和命令行介面設計流程。接下來每一章開頭都介紹該章具體目的,並對每個任務流程加以概述,描述如何將 Quartus II 軟體與現有 EDA 工具和命令行設計流程整合在一起。另外,手冊還推薦了能夠幫助您使用 Quartus II 軟體的其他資源,如 Quartus II 線上說明和 Quartus II 線上教程、應用筆記、白皮書以及 Altera 網站提供的其他文件檔和資源。

    跟隨本手冊學習 Quartus II 軟體,您可以瞭解此軟體如何幫助您提高效率並縮短設計週期,如何與現有可編程邏輯設計流程整合,以及如何快速有效地達到設計、性能和時序要求。

  • ALTERA 公司 QUARTUS II 簡介 ■ 7

    文件檔編制約定

    Quartus® II 簡介手冊採用以下約定,方便您尋找和理解資訊。

    印刷約定

    Quartus II 文件檔使用下表所示的印刷約定:

    視覺提示 涵義

    粗體首字母大寫 命令名稱;對話框、頁面和選項標籤標題;按鈕名稱以粗體顯示,且首字母大寫。例如:Find Text 命令 , Save As對話框以及 Start 按鈕。

    粗體 目錄名稱、專案名稱、磁碟機名稱、檔案名稱、檔案延伸名、軟體應用程式名稱、軟體可執行檔案名稱以及對話框中的選項以粗體顯示。例如 :quartus目錄, d: 磁碟機, llicense.dat 檔案。

    首字母大寫 鍵盤鍵、使用者可編輯的應用程式視窗區域和功能表名稱以首字母大寫。例如 : Delete鍵, Options功能表。

    “副標題” 手冊章節中的副標題加有引號。在手冊中,說明主題的標題也加有引號。

    斜體首字母大寫 說明類別、手冊標題、手冊中的章節標題、應用筆記和簡短名稱以斜體顯示,且首字母大寫。例如 : FLEXlm End Users Guide。

    斜體 變數放在尖括弧 (< >) 內且以斜體顯示。例如 : < 檔案名稱 > ,。

    Courier字體 必須和顯示內容完全一樣的輸入內容以 Courier字體顯示。例如 :\quartus\bin\lmulti lmhostid。

    r Enter 或 Return 鍵。

    ■ 當條目的順序不重要時,在條目列表中使用該符號。

    f腳印符號指示去哪里獲取某特定主題的詳細資訊。

    v 對號標記指示僅由一個步驟構成的過程。

    ! 手形表示需要特別注意的資訊。

  • 文件檔編制約定

    8 ■ QUARTUS II 簡介 ALTERA 公司

    術語

    在 Quartus II 簡介手冊中使用下表所示術語:

    術語 涵義

    “單擊” 表示快速按下並釋放滑鼠左鍵。

    “雙擊” 表示連續兩次快速的單擊。

    “選擇” 表示需要使用滑鼠或按鍵組合啟動一個操作。

    “選定” 表示需要使用按鍵組合或滑鼠反白顯示純文字以及物件或對話框中的選項。選定不會啟動操作。例如 : 選定 Chain Description File,然後單擊OK。

    “打開” / “關閉” 表示必須單擊核取方塊以打開或關閉一個功能。

  • 設計流程

    第 1 章內容:

    引言 10

    圖形使用者介面設計流程 11EDA 工具設計流程 17

    命令行設計流程 22

    設計方法和設計規劃 35

    第一章

  • 第 1 章: 設計流程引言

    10 ■ QUARTUS II 簡介 ALTERA 公司

    引言

    Altera® Quartus® II 設計軟體提供完整的多平臺設計環境,能夠直接滿足特定設計需要,為可編程單晶片系統 (SOPC) 提供全面的設計環境。Quartus II 軟體含有 FPGA 和 CPLD 設計所有階段的解決方案 ( 圖 1)。

    圖 1. Quartus II 設計流程

    此外,Quartus II 軟體為設計流程的每個階段提供 Quartus II 圖形使用者介面、EDA 工具介面以及命令行介面。可以在整個流程中只使用這些介面中的一個,也可以在設計流程的不同階段使用不同介面。本章介紹適用於每個設計流程的選項。本手冊其餘章節詳細說明設計流程的各個階段。

  • 第 1章: 設計流程圖形使用者介面設計流程

    ALTERA 公司 QUARTUS II 簡介 ■ 11

    圖形使用者介面設計流程

    您可以使用 Quartus II 軟體完成設計流程的所有階段;它是一個全面易用的獨立解決方案。 圖 2 顯示 Quartus II 圖形使用者介面在設計流程每個階段中所提供的功能。

    圖 2. Quartus II 圖形使用者介面的功能

    圖 3 顯示首次啟動 Quartus II 軟體時出現的 Quartus II 圖形使用者介面。

    VHDL Verilog HD AHDL

    RTL

    MegaWizard

    TimeQuest

    SignalTap IISignalProbe

    RTL

    SOPC BuilderDSP Builder

    LogicLock

    VQM

    EDAEDA

    LogicLock

    PowerPlayPowerPlay

  • 第 1 章: 設計流程圖形使用者介面設計流程

    12 ■ QUARTUS II 簡介 ALTERA 公司

    圖 3. Quartus II 圖形使用者介面

    Quartus II 軟體包括一個模組化編譯器。編譯器包括以下模組 ( 標有星號的模組表示在完整編譯時,可根據設置選擇使用 ):

    ■ 分析和合成■ 分區合併 *■ 除錯器■ 匯編器 *■ 標準時序分析器和 TimeQuest 時序分析器 *■ 設計助手 *■ EDA 網表寫入器 *■ HardCopy® 網表寫入器 *

    要將所有的編譯器模組做為完整編譯的一部分來運行,在 processing 功能表中單擊 Start Compilation。也可以單獨運行每個模組,從 Processing 功能表的 Start 子功能表中單擊您希望啟動的命令。您還可以逐步運行一些編譯模組。參見第 36 頁 「自上而下漸進式編譯設計流程」,瞭解更詳細的資訊。

  • 第 1章: 設計流程圖形使用者介面設計流程

    ALTERA 公司 QUARTUS II 簡介 ■ 13

    此外,還可以透過選擇 Compiler Tool (Tools 功能表 ),在 Compiler Tool 視窗 ( 圖 4) 中運行該模組來分別啟動編譯模組。在 Compiler Tool 視窗中,可以打開該模組的設置檔或報告檔,還可以打開其他相關視窗。

    圖 4. Compiler Tool 視窗

    Quartus II 軟體也提供一些預定義的編譯流程,您可以利用 Processing 功能表中的命令來使用這些流程。表 1 列出一些最常用編譯流程的命令。

    啟動模組

    打開模組設置頁面

    打開報告檔

    表 1. 常用編譯流程命令

    流程 說明Processing 功能表的Quartus II 命令

    完整編譯流程 進行目前設計的完整編譯。 Start Compilation 命令

    編譯和模擬流程 如果模擬模式為時序模擬,流程執行完整編譯,然後模擬目前設計。如果模擬模式為功能模擬,則流程只執行 Generate Functional Simulation Netlist 命令,然後對目前設計進行模擬。

    Start Compilation and Simulation 命令

    SignalProbe™ 流程

    在不影響設計中現有除錯的情況下,將使用者指定的訊號引至輸出接腳,無需進行完整編譯,就可以進行訊號除錯。

    Start SignalProbe Compilation 命令

    早期時序估算 進行部分編譯,但是在除錯器工作完成之前,標準時序分析器停止並產生時序估算。

    Start Early Timing Estimate 命令

  • 第 1 章: 設計流程圖形使用者介面設計流程

    14 ■ QUARTUS II 簡介 ALTERA 公司

    您可以按照個人偏好,自定義 Quartus II 軟體的佈局、功能表、命令和圖示。您第一次打開 Quartus II 軟體時,可以在標準 Quartus II 使用者介面和MAX+PLUS®II 介面之間選擇外觀和操作習慣,或者稍候使用 Customize 對話框 (Tools 功能表 ) 選擇外觀和操作習慣。如果您先前使用 MAX+PLUS II軟體,MAX+PLUS II 的外觀和操作習慣設置允許您使用熟悉的 MAX+PLUS II 佈局、命令和圖示以便控制 Quartus II 軟體的功能。圖 5 顯示了Customize 對話框。

    圖 5. Customize 對話框

    Customize 對話框也允許您設置是否顯示 Quartus II 或者 MAX+PLUS II 快顯功能表,是設置在功能表欄的左邊還是右邊。Quartus II 快顯功能表包含的功能表命令用於每個 Quartus II 應用程式,是常用處理命令。MAX+PLUS II 快顯功能表與 MAX+PLUS II 軟體的 MAX+PLUS II 功能表類似,提供用於

    f 有關資訊 請參閱

    使用編譯流程 Quartus II 說明中的 “About Compilation Flows”

  • 第 1章: 設計流程圖形使用者介面設計流程

    ALTERA 公司 QUARTUS II 簡介 ■ 15

    應用程式的命令,也是常用的 MAX+PLUS II 功能表命令。MAX+PLUS II 功能表上的命令與相應的 Quartus II 命令功能相同。圖 6 顯示了 Quartus II 和MAX+PLUS II 快顯功能表。

    圖 6. Quartus II 和 MAX+PLUS II 快顯功能表

    MAX+PLUS II 快顯功能表

    Quartus II快顯功能表

  • 第 1 章: 設計流程圖形使用者介面設計流程

    16 ■ QUARTUS II 簡介 ALTERA 公司

    以下步驟描述了使用 Quartus II 圖形使用者介面的基本設計流程:

    1. 在 File 功能表中,單擊 New Project Wizard,建立新專案並指定目標元件或元件系列。

    2. 使用純文字編輯器建立 Verilog HDL、VHDL 或者 Altera 硬體描述語言(AHDL) 設計。使用模組編輯器建立以符號表示的方框圖,表徵其他設計檔,也可以建立原理圖。

    3. 使用 MegaWizard® 外掛程式管理器產生巨集功能和 IP 功能的自定義變數,在設計中將它們例化,也可以使用 SOPC Builder 或者 DSP Builder 建立一個系統級設計。

    4. 利用分配編輯器、接腳規劃器、Settings 對話框、佈局編輯器以及設計分區視窗指定初始設計約束。

    5. ( 可選 ) 進行早期時序估算,在除錯之前產生時序結果的早期估算。

    6. 利用分析和合成對設計進行合成。

    7. ( 可選 ) 如果您的設計含有分區,還沒有進行完整編譯,則需要透過Partition Merge 將分區合併。

    8. ( 可選 ) 透過模擬器為設計產生一個功能模擬網表,進行功能模擬。

    9. 使用除錯器對設計進行佈局佈線。

    10. 使用 PowerPlay 功率消耗分析器進行功率消耗估算和分析。

    11. 使用模擬器對設計進行時序模擬。使用 TimeQuest 時序分析器或者標準時序分析器對設計進行時序分析。

    f 有關資訊 請參閱

    MAX+PLUS II 使用者使用 Quartus II 設計流程

    Quartus II Handbook 第 1 卷 Quartus II Design Flow for MAX+PLUS II Users 一章

    訂製使用者介面 Quartus II 說明中的“About Customizing the User Interface”

    MAX+PLUS II 外觀和操作習慣 Quartus II 說明中的 “MAX+PLUS II Quick Start Guide for the Quartus II Software”和

    “List of MAX+PLUS II Commands”

  • 第 1章: 設計流程EDA 工具設計流程

    ALTERA 公司 QUARTUS II 簡介 ■ 17

    12. ( 可選 ) 使用實體合成、時序逼進佈局、LogicLock 功能和分配編輯器糾正時序問題。

    13. 使用匯編器建立設計編程檔,透過編程器和 Altera 編程硬體對元件進行編程。

    14. ( 可選 ) 採用 SignalTap® II 邏輯分析儀、外部邏輯分析儀、SignalProbe™功能或者晶片編輯器對設計進行除錯。

    15. ( 可選 ) 採用晶片編輯器、資源屬性編輯器和更改管理器來管理專案改動。

    EDA 工具設計流程Quartus II 軟體允許在設計流程的不同階段使用您熟悉的 EDA 工具。可以與Quartus II 圖形使用者介面或者 Quartus II 命令行可執行檔一起使用這些工具。圖顯示了 EDA 工具設計流程。EDA 工具設計流程

  • 第 1 章: 設計流程EDA 工具設計流程

    18 ■ QUARTUS II 簡介 ALTERA 公司

    表 2 是 Quartus II 軟體支援的 EDA 工具,並指出哪個 EDA 工具支援NativeLink®。NativeLink 技術在 Quartus II 軟體和其他 EDA 工具之間實現資訊的無縫傳送,您可以在 Quartus II 軟體中自動執行 EDA 工具。

    Quartus II

    Quartus II

    Quartus IIEDA

    EDA Verilog(.vo) VHDL (.vho)

    VQM (.sdo) Tcl

    (.tcl) IBIS (.ibs)HSPICE (.sp) STAMP

    (.data .mod)

    Quartus II EDA

    EDA

    VHDL (.vhd)Verilog (.v)

    EDIF (.edf) Verilog Quartus (.vqm)

    Quartus II EDA

    EDA

    EDA

    Quartus II Quartus II

  • 第 1章: 設計流程EDA 工具設計流程

    ALTERA 公司 QUARTUS II 簡介 ■ 19

    表 2. Quartus II 軟體支援的 EDA 工具 ( 共 2 部份,第 1 部份 )

    功能 支援的 EDA 工具 NativeLink 支援

    設計輸入和合成 Mentor Graphics Design Architect

    Mentor Graphics LeonardoSpectrum v

    Mentor Graphics Precision RTL Synthesis v

    Mentor Graphics ViewDraw

    Synopsys Design Compiler

    Synopsys Design Compiler FPGA

    Synopsys FPGA Compiler II v

    Synplicity Synplify v

    Synplicity Synplify Pro v

    模擬 Cadence NC-Verilog v

    Cadence NC-VHDL v

    Cadence Verilog-XL

    Mentor Graphics® ModelSim® v

    Mentor Graphics ModelSim-Altera v

    Synopsys VCS MX v

    Synopsys VCS v

    Synopsys VSS

    時序分析 Mentor Graphics Tau (through Stamp)

    Synopsys PrimeTime v

    板級設計 Hyperlynx (through Signal Integrity IBIS)

    XTK (through Signal Integrity IBIS)

    ICX (through Signal Integrity IBIS)

    SpectraQuest (through Signal Integrity IBIS)

    Mentor Graphics Symbol Generation (Viewdraw)

    形式驗證 Cadence Encounter Conformal

    Synopsys Formality

  • 第 1 章: 設計流程EDA 工具設計流程

    20 ■ QUARTUS II 簡介 ALTERA 公司

    在 Assignments 功能表中,單擊 Settings,指定您希望在 Settings 對話框的 EDA Tool Settings 頁面中使用哪一 EDA 工具 ( 圖 7)。

    圖 7. Settings 對話框的 EDA 工具設置頁面

    EDA Tool Settings 下的幾個頁面為每種類型的 EDA 工具提供其他選項。

    實體合成 Magma Design Automation PALACE v

    Synplicity Amplify

    表 2. Quartus II 軟體支援的 EDA 工具 ( 共 2 部份,第 2 部份 )

    功能 支援的 EDA 工具 NativeLink 支援

  • 第 1章: 設計流程EDA 工具設計流程

    ALTERA 公司 QUARTUS II 簡介 ■ 21

    以下步驟說明其他 EDA 工具與 Quartus II 軟體配合使用時的基本設計流程。有關所支持的 EDA 工具列表,請第 19 頁上的表 2 。

    1. 建立新專案並指定目標元件或元件系列。

    2. 指定與 Quartus II 軟體一同使用的 EDA 設計輸入、合成、模擬、時序分析、板級驗證、形式驗證以及實體合成工具,為這些工具指定其他選項。

    3. 使用標準純文字編輯器建立Verilog HDL或者VHDL設計檔,也可以使用MegaWizard 外掛程式管理器建立巨集功能模組的自定義變數。

    4. 使用Quartus II支援的EDA合成工具之一合成您的設計,並產生EDIF網表檔 (.edf) 或 Verilog Quartus 映射檔 (.vqm)。

    5. ( 可選 ) 使用 Quartus II 支援的模擬工具之一對您的設計進行功能模擬。

    6. 在 Quartus II 軟體中對設計進行編譯。執行 EDA 網表寫入器,產生輸出檔,供其他 EDA 工具使用。

    7. (可選)使用Quartus II支援的EDA時序分析或者模擬工具之一對設計進行時序分析和模擬。

    8. (可選)使用Quartus II支援的EDA形式驗證工具之一進行形式驗證,確保Quartus 佈線後網表與合成網表一致。

    9. ( 可選 ) 使用 Quartus II 支援的 EDA 板級驗證工具之一進行板級驗證。

    10. ( 可選 ) 使用 Quartus II 支援的 EDA 實體合成工具之一進行實體合成。

    11. 使用編程器和 Altera 硬體對元件進行編程。

  • 第 1 章: 設計流程命令行設計流程

    22 ■ QUARTUS II 簡介 ALTERA 公司

    命令行設計流程

    Quartus II 軟體提供全面的命令行介面解決方案。它允許您使用命令行可執行檔和選項完成設計流程的每個階段。使用命令行流程可以降低記憶體要求,並能夠使用腳本或 Tcl 命令控制 Quartus II 軟體;建立 Makefile( 圖 8)。

    f 有關資訊 請參閱

    結合 Synplicity Synplify 和 Synplify Pro 軟體來使用 Quartus II 軟體

    Quartus II Handbook 第 1 卷的 Synplicity Synplify and Synplify Pro Support 一章

    結合 Mentor Graphics Leonardo Spectrum軟體使用 Quartus II 軟體

    Quartus II Handbook 第 1 卷的 Mentor Graphics LeonardoSpectrum Support 一章

    結合 Mentor Graphics Precision RTL Synthesis 軟體使用 Quartus II 軟體

    Quartus II Handbook 第 1 卷的 Mentor Graphics Precision RTL Synthesis Support 一章

    結合 Synopsis DC FPGA 軟體使用Quartus II 軟體

    Quartus II Handbook 第 1 卷的 Synopsys Design Compiler FPGA Support 一章

    結合 Synplicity Amplify 軟體使用 Quartus II 軟體

    Quartus II Handbook 第 2 卷的 Synplicity Amplify Physical Synthesis Support

    結合 Mentor Graphics ModelSim 軟體使用Quartus II 軟體

    Quartus II Handbook 第 3 卷的 Mentor Graphics ModelSim Support 一章

    結合 Synopsys VCS 軟體使用 Quartus II軟體

    Quartus II Handbook 第 3 卷的 Synopsys VCS Support 一章

    結合 Cadence NC-Sim 軟體使用 Quartus II 軟體

    Quartus II Handbook第 3卷的Cadence NC- Sim Support 一章

    結合 Synopsis PrimeTime 軟體使用Quartus II 軟體

    Quartus II Handbook 第 3 卷的 Synopsys PrimeTime Support 一章

    結合 Cadence Encounter Conformal 軟體使用 Quartus II 軟體

    Quartus II Handbook 第 3 卷的 Cadence Encounter Conformal Equivalency Checker Support

    結合 Synopsys Formality 軟體使用Quartus II 軟體

    Quartus II Handbook 第 3 卷的 Synopsys Formality Support

  • 第 1章: 設計流程命令行設計流程

    ALTERA 公司 QUARTUS II 簡介 ■ 23

    圖 8. 命令行設計流程

    命令行可執行檔

    Quartus II 軟體包括用於設計流程每個階段的可執行檔。每個可執行檔僅在開始運行時才佔用記憶體。這些可執行檔能夠與標準命令行命令和腳本、Tcl腳本以及 Makefile 腳本一起使用。有關所有命令行可執行檔的列表,請參閱表 3。

    quartus_pgm

    quartus_tanquartus_sta

    quartus_map

    quartus_drc

    Quartus II Shellquartus_sh

    quartus_cpf

    EDAquartus_eda

    quartus_cdb

    quartus_sim

    Verilog (.v) VHDL (.vhd) Verilog Quartus(.vqm) (.tdf) (.bdf) EDIF

    (.edf)

    EDA Verilog(.vo) VHDL

    (.vho) VQM (.sdo)

    SignalTap II

    quartus_stp

    PowerPlay

    quartus_pow

    quartus_fit

    quartus_asm

  • 第 1 章: 設計流程命令行設計流程

    24 ■ QUARTUS II 簡介 ALTERA 公司

    [

    ! 獨立的圖形使用者介面可執行檔

    Quartus II 軟體還提供一些獨立的圖形使用者介面 (GUI) 可執行檔。qmegawiz 可執行檔提供獨立的 MegaWizard 外掛程式管理器 GUI 版本。quartus_pgmw 可執行檔為編程器提供獨立的 GUI。quartus_stpw 可執行檔為 SignalTap II 邏輯分析儀提供獨立的 GUI。

    表 3. 命令行可執行檔 ( 共 2 部份,第 1 部份 )

    可執行檔案名稱 標題 功能

    quartus_map 分析和合成 建立專案 ( 如果尚未建立 ),然後建立專案資料庫、合成設計並對專案設計檔進行技術映射。

    quartus_fit 除錯器 對設計進行佈局佈線。在執行除錯器之前必須成功運行分析和合成。

    quartus_drc 設計助手 根據一組設計規則檢查設計的可靠性。在為HardCopy 元件轉換設計之前,設計助手非常有助於檢查可靠性。在運行設計助手之前必須成功執行分析和合成或者除錯器。

    quartus_sta TimeQuest 時序分析器

    以 Synopsys 設計約束格式輸入的約束對電路進行ASIC 型時序分析。

    quartus_tan 標準時序分析器 使用 Quartus II 型約束來分析電路的速率性能。

    quartus_asm 匯編器 為目標元件編程或配置建立一個或多個編程檔。在運行匯編器之前必須成功執行除錯器。

    quartus_eda EDA 網表寫入器 產生與其他 EDA 工具配合使用的網表檔和其他輸出檔。根據使用的選項,在運行 EDA 網表寫入器之前,必須成功執行分析和合成、除錯器以及時序分析器。

    quartus_cdb 編譯器資料庫介面 (包括 VQM 寫入器 )

    導入和導出版本相容的資料庫,合併分區。產生內部網表檔,包括用於 Quartus II 編譯器資料庫的 VQM檔,使它們可以用於反標和 LogicLock 功能,反標元件和資源分配以保持除錯不變,方便今後的編譯。在運行編譯器資料庫介面之前必須成功執行除錯器或者分析和合成。

    quartus_sim 模擬器 對設計進行功能或時序模擬。在進行功能模擬之前必須運行分析和合成。在進行時序模擬之前,必須執行時序分析器。

    quartus_pow 功率消耗分析器 分析器分析並估算設計所消耗的全部動態和靜態功率消耗。計算輸出訊號的觸發速率和靜態概率。在運行PowerPlay 功率消耗分析器之前,必須成功執行除錯器。

    quartus_pgm 編程器 對 Altera 元件進行編程。

    quartus_cpf 轉換編程檔 將編程檔轉換為輔助編程檔格式。

  • 第 1章: 設計流程命令行設計流程

    ALTERA 公司 QUARTUS II 簡介 ■ 25

    可以單獨執行每個可執行檔,也可以使用以下命令一次運行所有編譯器可執行檔:

    quartus_sh - - flow compile [- c ] r

    此命令將在完整編譯過程中運行 quartus_map、quartus_fit、quartus_asm和 quartus_tan 可執行檔。根據不同的設置,它還可以運行可選的quartus_drc、quartus_eda 和 quartus_cdb 和 quartus_sta 可執行檔。

    有些可執行檔建立單獨的純文字型報告檔,您可以使用任何純文字編輯器查看這個檔案。每個報告檔的名稱使用以下格式:

    quartus_stp SignalTap II 邏輯分析儀

    建立 SignalTap II 檔 (.stp)。在匯編器之後運行時,元件全速運行的情況下,SignalTap II 邏輯分析儀捕獲內部元件節點訊號。

    quartus_sh Tcl Shell 為 Quartus II 軟體提供 Tcl 腳本 shell。

    表 3. 命令行可執行檔 ( 共 2 部份,第 2 部份 )

    可執行檔案名稱 標題 功能

    ! 獲取有關 Quartus II 可執行檔的說明資訊

    若要獲取 Quartus II 每個可執行檔命令行選項的說明資訊,請在命令提示符號下輸入以下命令之一 :

    -h r --help r --help= r

    還可以使用 Quartus II Command-Line Executable 和 Tcl API Help Browser 獲取有關命令行可執行檔的說明資訊,Help Browser 是採用 Tcl 和 Tk 的 GUI,可以用它瀏覽命令行和 Tcl API 說明資訊。若要使用此說明,請在命令提示符號下輸入以下命令:

    quartus_sh --qhelp r

    ! quartus_cmd 可執行檔

    如果在以前版本的 Quartus II 軟體中使用過 quartus_cmd 可執行檔進行專案編譯,由於後向相容性,因此仍可支援該可執行檔;但是, Altera建議在所有新設計中,不要使用quartus_cmd可執行檔,而使用第 24 頁上的表 3 中列出的可執行檔。如果您習慣使用 quartus_cmd 可執行檔來編譯設計,您可以透過使用具有 --flow compile 選項的 quartus_sh 可執行檔來實現同樣的功能:

  • 第 1 章: 設計流程命令行設計流程

    26 ■ QUARTUS II 簡介 ALTERA 公司

    ..rpt

    例如,如果要為 chiptrip 專案運行 quartus_map 可執行檔,您可以在命令提示符號下輸入以下命令 :

    quartus_map chiptrip r

    quartus_map 可執行檔對設計進行分析和合成,產生名為 chiptrip.map.rpt的報告檔。

    Quartus II 軟體還提供幾種使用 Quartus II 可執行檔的預定義編譯流程。您可以使用帶有 quartus_sh --flow,或者 Tcl execute_flow 的命令。 表 4 顯示了一些最常用的編譯流程。

    ! 結合 Quartus II 可執行檔使用 Quartus II 設置檔

    您在使用 Quartus II 可執行檔時,Quartus II 軟體預設使用和專案名稱相同的修訂。如果您想要使用與專案名稱不同的修訂,則可以使用 -c 選項來指定修訂的名稱,以及與此相關聯的Quartus II 設置檔 (.qsf)。例如,如果您想要為修訂名稱為 speed_ch、關聯檔為speed_ch.qsf 的 chiptrip 專案運行 quartus_map 可執行檔,可在命令提示符號狀態下輸入如下命令:

    quartus_map chiptrip -c speed_ch r

    quartus_map 可執行檔使用此修訂和設置執行分析與合成,並產生名稱為speed_ch.map.rpt 的報告檔。

    表 4. 命令行編譯流程 ( 共 2 部份,第 1 部份 )

    流程 說明用於 quartus_sh --flow 或者execute_flow 的命令行選項

    完整的編譯流程 進行目前設計的完整編譯。 compile

    編譯和模擬流程 如果是時序模擬模式,則執行完整編譯,然後模擬目前設計。如果是功能模擬模式,則產生功能模擬網表,然後對目前設計進行模擬。

    compile_and_simulate

  • 第 1章: 設計流程命令行設計流程

    ALTERA 公司 QUARTUS II 簡介 ■ 27

    使用標準命令行命令和腳本

    可以將 Quartus II 可執行檔與任何命令行腳本方法 ( 例如,Perl 腳本、批次檔案和 Tcl 腳本 ) 配合使用。可以設計這些腳本,用以建立新專案或編譯現有專案。還可以在命令提示符號下或者控制台中運行可執行檔。

    圖 9 是一個標準命令行腳本的範例。該範例說明了建立專案、進行分析和合成、進行佈局佈線、時序分析以及為 Quartus II 軟體 filtref 教程設計產生編程檔的方法。如果已安裝教程設計,它位於/altera/qdesigns/tutorial 目錄中。 您應建立新目錄,並將所有設計檔 (*.v, *.bsf, *.bdf) 從 /altera/qdesigns/tutorial 目錄複製到新目錄下,以便編譯設計流程範例。您可以從新專案目錄中的命令提示符號下運行圖 9 中的四個命令,也可以將這些命令儲存在批次檔案或 shell 腳本中。 這些範例假定在您的 PATH 環境變數中包括 //win 目錄 ( 或者 UNIX 以及 Linux 工作站的 // 目錄,其中, 可以是 solaris、linux 以及 hp_II)。

    SignalProbe 流程 在不影響設計中現有除錯的情況下,將使用者指定訊號引至輸出接腳,這樣,不用進行完整的編譯,便可以進行訊號除錯。

    signalprobe

    早期時序估算 進行部分編譯,在除錯完成前停止,利用標準時序分析器產生早期時序估算資料。

    early_timing_estimate

    表 4. 命令行編譯流程 ( 共 2 部份,第 2 部份 )

    流程 說明用於 quartus_sh --flow 或者execute_flow 的命令行選項

    f 有關資訊 請參閱

    使用編譯流程 Quartus II 說明中的 “About Compilation Flows”

  • 第 1 章: 設計流程命令行設計流程

    28 ■ QUARTUS II 簡介 ALTERA 公司

    圖 9. 命令行腳本範例

    圖 10 是一個用於 UNIX 工作站命令行腳本範例的摘錄。此腳本假定目前目錄中存在名為 fir_filter 的 Quartus II 教程專案。此腳本分析 fir_filter 專案中的每個設計檔,並報告任何含語法錯誤的檔案。

    quartus_map filtref --family=Stratix

    quartus_fit filtref --part=EP1S10F780C5 --fmax=80MHz --tsu=8ns

    quartus_tan filtref

    quartus_asm filtref

    建立針對 Stratix元件系列的Quartus II 新專案

    對 EP1S10F780C5元件進行佈局佈線並指定全局時序要求

    進行標準時序分析

    產生編程檔

    圖 10. UNIX 命令行 Shell 腳本範例 ( 共 2 部份,第 1 部份 )

    #!/bin/sh

    FILES_WITH_ERRORS=""

    for filename in `ls *.bdf *.v`do quartus_map fir_filter --analyze_file=$filename

    if [ $? -ne 0 ] then FILES_WITH_ERRORS="$FILES_WITH_ERRORS $filename" fidone

  • 第 1章: 設計流程命令行設計流程

    ALTERA 公司 QUARTUS II 簡介 ■ 29

    if [ -z "$FILES_WITH_ERRORS" ]then echo "All files passed the syntax check" exit 0else echo "There were syntax errors in the following file(s)" echo $FILES_WITH_ERRORS exit 1fi

    圖 10. UNIX 命令行 Shell 腳本範例 ( 共 2 部份,第 2 部份 )

    f 有關資訊 請參閱

    命令行腳本 Quartus II Handbook 第 2 卷的 Command- Line Scripting 一章

    Quartus II Scripting Reference Manual

  • 第 1 章: 設計流程命令行設計流程

    30 ■ QUARTUS II 簡介 ALTERA 公司

    使用 Tcl 命令在 Quartus II 軟體中,可以使用 Quartus II 可執行檔執行 Tcl 命令或者建立並運行 Tcl 腳本,執行 Quartus II 專案中的以下任務。Tcl API 功能包括以下類別:

    ■ 專案與分配功能■ 元件功能■ 進階元件功能■ 流程功能■ 時序功能■ 進階時序功能■ 模擬器功能■ 報告功能■ 時序報告功能■ 反標功能■ LogicLock 功能■ 晶片編輯器功能■ 其他功能

    可以採用多種方法在 Quartus II 軟體中使用 Tcl 腳本。可以使用針對 Tcl 的Quartus II API 命令建立 Tcl 腳本。應將 Tcl 腳本另存為 Tcl 腳本檔 (.tcl)。

    在 Edit 功能表中,Quartus II 純文字編輯器的 Templates 命令在文字檔案中插入 Tcl 範本和 Quartus II Tcl 範本 ( 對於 Quartus II 命令 ),建立 Tcl 腳本。Quartus II Tcl 範本中使用的命令與 Tcl API 命令語法相同。

    若要將現有專案做為另一個專案的基準,單擊 Project 功能表中的 Generate Tcl File for Project,為該專案產生 Tcl 腳本檔。為新專案編輯產生的腳本後,執行該腳本,將前一專案的所有分配應用到新專案中。

    您可以在 Quartus II Tcl Console 視窗中,或在 Tools 功能表中單擊 Tcl Scripts,在 Tcl Scripts 對話框 (Tools 功能表 ) 中使用 quartus_sh 可執行檔,在系統命令行模式下運行 Tcl 腳本。

    ! 獲取有關 Tcl 命令的說明

    Quartus II 軟體包括 Quartus II 命令行和 Tcl API Help 瀏覽器,此瀏覽器是採用 Tcl 和 Tk 的GUI,用於瀏覽命令行和 Tcl API 說明。若要使用此說明,請在命令提示符號下輸入以下命令:

    quartus_sh --qhelp r

    也可以在 Quartus II 說明中查看 TCL API Help,該說明為圖形使用者介面。更詳細的資訊,請參閱 Quartus II Help 中的 “About Tcl Scripting”和 “API Functions for Tcl”。

  • 第 1章: 設計流程命令行設計流程

    ALTERA 公司 QUARTUS II 簡介 ■ 31

    圖 11 是一個 Tcl 腳本範例。

    圖 11. Tcl 腳本範例 ( 共 2 部份,第 1 部份 )

    # Since ::quartus::report is not pre-loaded# by quartus_sh, load this package now # before using the report Tcl APIload_package report

    # Since ::quartus::flow is not pre-loaded# by quartus_sh, load this package now # before using the flow Tcl API# Type "help -pkg flow" to view information # about the packageload_package flow

    #------ Get Actual Fmax data from the Report File ------#proc get_fmax_from_report {} {#-------------------------------------------------------#

    global project_name

    # Load the project report databaseload_report $project_name

    # Get the actual Fmaxset actual_fmax [get_timing_analysis_summary_results -clock_setup

    clock -actual]

    # Now unload the project report databaseunload_report

    return $actual_fmax}

    #------ Set the project name to chiptrip ------#set project_name chiptrip

    #------ Create or open project ------#if {project_exists $project_name} {

    #------ Project already exists -- open project -------#project_open $project_name

    } else {

    #------ Project does not exist -- create new project ------#project_new $project_name

    }

  • 第 1 章: 設計流程命令行設計流程

    32 ■ QUARTUS II 簡介 ALTERA 公司

    建立 Makefile 腳本Quartus II 軟體支援使用 Quartus II 可執行檔的 Makefile 腳本,將您的腳本與各種腳本語言整合在一起。圖 12 是標準 Makefile 腳本的摘錄。

    #------ Fmax requirement: 155.55MHz ------#set required_fmax 155.55MHz

    #------ Make a clock assignment with the Fmax requirement ------#create_base_clock clock -fmax $required_fmax

    #------ Make global assignments ------#set_global_assignment -name family STRATIXset_global_assignment -name device EP1S10F484C5set_global_assignment -name tsu_requirement 7.55ns

    #------ Make instance assignments ------## The following is the same as doing:# "set_instance_assignment -name location -to clock Pin_M20"set_location_assignment -to clock Pin_M20

    #------ Compile using ::quartus::flow ------#execute_flow -compile

    #------ Report Fmax from report ------#set actual_fmax [get_fmax_from_report]puts ""puts "-----------------------------------------------------"puts "Required Fmax: $required_fmax Actual Fmax: $actual_fmax"puts "-----------------------------------------------------"

    圖 11. Tcl 腳本範例 ( 共 2 部份,第 2 部份 )

    f 有關資訊 請參閱

    Tcl 腳本 Quartus II Handbook 第 2 卷的 Tcl Scripting一章

    Quartus II 說明中的 “About Tcl Scripting”和 “API Functions for Tcl”

    Quartus II Scripting Reference Manual

  • 第 1章: 設計流程命令行設計流程

    ALTERA 公司 QUARTUS II 簡介 ■ 33

    圖 12. Makefile 褐掛晡翹 ( 共 2 部份,第 1 部份 )

    #################################################################### Project Configuration: # # Specify the name of the design (project) and Quartus II Settings # File (.qsf) and the list of source files used.###################################################################

    PROJECT = chiptripSOURCE_FILES = auto_max.v chiptrip.v speed_ch.v tick_cnt.v time_cnt.vASSIGNMENT_FILES = chiptrip.qpf chiptrip.qsf

    #################################################################### Main Targets## all: build everything# clean: remove output files and database###################################################################

    all: smart.log $(PROJECT).asm.rpt $(PROJECT).tan.rpt

    clean:rm -rf *.rpt *.chg smart.log *.htm *.eqn *.pin *.sof *.pof db

    map: smart.log $(PROJECT).map.rptfit: smart.log $(PROJECT).fit.rptasm: smart.log $(PROJECT).asm.rpttan: smart.log $(PROJECT).tan.rptsmart: smart.log

    #################################################################### Executable Configuration###################################################################

    MAP_ARGS = --family=StratixFIT_ARGS = --part=EP1S20F484C6ASM_ARGS =TAN_ARGS =

    #################################################################### Target implementations###################################################################

    STAMP = echo done >

  • 第 1 章: 設計流程命令行設計流程

    34 ■ QUARTUS II 簡介 ALTERA 公司

    $(PROJECT).map.rpt: map.chg $(SOURCE_FILES) quartus_map $(MAP_ARGS) $(PROJECT)$(STAMP) fit.chg

    $(PROJECT).fit.rpt: fit.chg $(PROJECT).map.rptquartus_fit $(FIT_ARGS) $(PROJECT)$(STAMP) asm.chg$(STAMP) tan.chg

    $(PROJECT).asm.rpt: asm.chg $(PROJECT).fit.rptquartus_asm $(ASM_ARGS) $(PROJECT)

    $(PROJECT).tan.rpt: tan.chg $(PROJECT).fit.rptquartus_tan $(TAN_ARGS) $(PROJECT)

    smart.log: $(ASSIGNMENT_FILES)quartus_sh --determine_smart_action $(PROJECT) > smart.log

    #################################################################### Project initialization###################################################################

    $(ASSIGNMENT_FILES):quartus_sh --prepare $(PROJECT)

    map.chg:$(STAMP) map.chg

    fit.chg:$(STAMP) fit.chg

    tan.chg:$(STAMP) tan.chg

    asm.chg:$(STAMP) asm.chg

    圖 12. Makefile 褐掛晡翹 ( 共 2 部份,第 2 部份 )

  • 第 1章: 設計流程設計方法和設計規劃

    ALTERA 公司 QUARTUS II 簡介 ■ 35

    設計方法和設計規劃

    在建立新設計時,應重視考慮 Quartus II 軟體提供的設計方法,包括自上而下或自下而上的漸進式設計流程以及採用模組式的設計流程。不管是否使用EDA 設計輸入和合成工具,都可以使用這些設計流程。

    自上而下與自下而上的設計方法比較

    Quartus II 軟體同時支援自上而下和自下而上的編譯流程。在自上而下的編譯過程中,一個設計人員或者專案負責人在軟體中對整個設計進行編譯。不同的設計人員或者 IP 提供者設計並驗證設計的不同部分,專案負責人在設計實體完成後將其加入到專案中。專案負責人從整體上編譯並最佳化頂層專案。設計中完成的部分得到除錯結果,當設計的其他部分改動時,其性能保持不變。

    自下而上的設計流程中,每個設計人員在各自的專案中對其設計進行最佳化後,將每一個底層專案整合到一個頂層專案中。漸進式編譯提供導出和導入功能來實現這種設計方法。

    做為底層模組設計人員,您可以針對他們的設計,導出最佳化後的網表和一組分配 ( 例如 LogicLock 區域 )。然後,專案負責人將每一個設計模組作為設計分區導入到頂層專案中。在這種情況下,專案負責人必須指導底層模組設計人員,保證每一分區使用適當的元件資源。

    f 有關資訊 請參閱

    使用命令行可執行檔 Quartus II 說明中的 “About Command- Line Executables”

    Quartus II Handbook 第 2 卷的 Command- Line Scripting 一章

    Tcl 命令和 Tcl 腳本 Quartus II 說明中的“Using Tcl Commands and Scripts”、“About Tcl Scripting”和

    “API Functions for Tcl”

    Quartus II Handbook 第 2 卷的 Tcl Scripting 一章

    Quartus II Scripting Reference Manual

  • 第 1 章: 設計流程設計方法和設計規劃

    36 ■ QUARTUS II 簡介 ALTERA 公司

    在完整的漸進式編譯流程中,您應該認識到,如果以前出於保持性能不變的原因而採用自下而上的方法,那麼現在可以採用自上而下方法來達到同樣的目的。這一功能之所以重要是出於兩方面的原因。第一,自上而下流程要比對應的自下而上流程執行起來簡單一些。例如,不需要導入和導出底層設計。第二,自上而下的方法為設計軟體提供整個設計的資訊,因此,可以進行全局最佳化。在自下而上的設計方法中,軟體在編譯每一個底層分區時,並不知道頂層設計其他分區的情況,因此,必須進行資源均衡和時序預算。

    自上而下漸進式編譯設計流程

    自上而下漸進式編譯設計流程重新使用以前的編譯結果,確保只對修改過的設計重新編譯,因此能夠保持設計性能不變,節省編譯時間。自上而下的漸進式編譯流程在處理其他設計分區時,可以只修改設計中關鍵單元的佈局,也可以只對設計的指定部分限定佈局,使編譯器能夠自動最佳化設計的其餘部分,從而改進了時序。

    在漸進式編譯流程中,您可以為設計分區分配一個設計實體實例,然後使用時序逼近佈局圖和 LogicLock 功能為分區分配一個元件實體位置,進行完整的設計編譯。在編譯過程中,編譯器將合成和除錯結果保存在專案資料庫中。第一次編譯之後,如果對設計做進一步的修改,只有改動過的分區需要重新編譯。

    完成設計修改後,您可以只進行漸進式合成,節省編譯時間,也可以進行完整的漸進式編譯,不但能夠顯著節省編譯時間,而且還可以保持性能不變。在這兩種情況中,Quartus II 軟體為所選的任務合併所有的分區。

    由於漸進式編譯流程能夠防止編譯器跨分區邊界進行最佳化,因此編譯器不會像常規編譯那樣對面積和時序進行大量最佳化。為獲得最佳的面積和時序結果,建議您記錄設計分區的輸入和輸出,儘量將設計分區數量控制在合理範圍內,避免跨分區邊界建立過多的關鍵路徑,不要建立太小的分區,如數量少於 1000 的邏輯單元和自適應邏輯模組 (ALM) 分區。

    關於分區分配和漸進式編譯流程其他步驟的詳細資訊,請參閱以下章節:

    ■ 第 3 章 「約束輸入」第 65 頁 「分配設計分區」 ■ 第 4 章 「合成」,第 87 頁 「進行漸進式合成」■ 第 5 章 「佈局佈線」,第 91 頁 「進行完整的漸進式編譯」■ 第 6 章「採用模組式設計」,第 116 頁「在自上而下漸進式編譯流程中

    使用 LogicLock 區域」■ 第 9 章 「時序逼近」,第 161 頁 「使用漸進式編譯達到時序逼近」■ 第 12 章「除錯」,第 191 頁「漸進式編譯使用 SignalTap II 邏輯分析儀」

  • 第 1章: 設計流程設計方法和設計規劃

    ALTERA 公司 QUARTUS II 簡介 ■ 37

    自下而上的漸進式編譯流程

    在自下而上的漸進式編譯設計流程中,可以獨立設計和最佳化每個模組,在頂層設計中整合所有已最佳化的模組,然後驗證總體設計。每個模組具有單獨的網表,在合成和最佳化之後可以將它們整合在頂層設計中。在頂層設計中,每個模組都不影響其他模組的性能。一般採用模組式的設計流程可以在模組化、分層、漸進式和團隊設計流程中使用。

    可以在採用模組式的設計流程中使用 EDA 設計輸入和合成工具,設計和合成各個模組,然後將各模組整合到 Quartus II 軟體的頂層設計中,也可以在EDA 設計輸入和合成工具中完整地進行設計,合成採用模組式的設計。關於採用模組式設計流程的詳細資訊,請參考第 111 頁,第 6 章:採用模組式設計。

    f 有關資訊 請參閱

    使用 Quartus II 漸進式編譯、漸進式合成以及漸進式編譯流程

    Quartus II Handbook 第 1 卷 Quartus II Incremental Compilation 一章

    Quartus II 說明中的 “About Incremental Compilation”和 “About Incremental Synthesis”

    f 有關資訊 請參閱

    使用 Quartus II 漸進式編譯和漸進式合成 Quartus II Handbook 第 1 卷 Quartus II Incremental Compilation 一章

    Quartus II 說明中的 “About Incremental Compilation”和 “About Incremental Synthesis”

  • 第 1 章: 設計流程設計方法和設計規劃

    38 ■ QUARTUS II 簡介 ALTERA 公司

  • 設計輸入

    第 2 章內容:

    引言 40

    建立專案 41

    建立設計 47

    使用 Altera 巨集功能 51

    第二章

  • 第 2 章: 設計輸入引言

    40 ■ QUARTUS II 簡介 ALTERA 公司

    引言

    Quartus® II 專案包括在可編程元件中最終實現設計需要的所有設計檔,軟體原始檔案和其他相關檔。使用修訂,可以比較專案多個版本的設置和分配,更快、更有效地滿足設計要求。使用 Quartus II 模組編輯器、純文字編輯器、MegaWizard® 外掛程式管理器和EDA 設計輸入工具可以建立包括Altera® 巨集功能模組、參數化模組函式庫 (LPM) 功能和矽智財 (IP) 功能在內的設計。圖 1 所示為設計輸入流程。

    圖 1. 設計輸入流程

    Quartus II 的 Altera SOPC Builder 和 DSP Builder 軟體支援系統級設計輸入流程。關於這些方法的詳細資訊, 請參閱第 215 頁,第 15 章:系統級設計。

    MegaWizard EDIF (.edf) Verilog Quartus(.vqm)

    Quartus II

    Quartus II

    Quartus II

    (.bsf) MAX+PLUS II (.sym)

    EDA

    MegaWizard

    (.bdf)

    (.tdf) Verilog HDL VHDL

    (.v, .vhd)

    Verilog HDL VHDL

    Quartus II

  • 第 2章: 設計輸入建立專案

    ALTERA 公司 QUARTUS II 簡介 ■ 41

    建立專案

    單擊 File 功能表中的 New Project Wizard 或者執行 quartus_map 可執行檔來建立新專案。建立新專案時,指定專案工作目錄,分配專案名稱,指定頂層設計實體的名稱。還可以指定在專案中使用的設計檔、其他原始檔案、使用者函式庫和 EDA 工具,以及目標元件。表 1 列出了一個 Quartus II 專案的設置檔和專案檔。

    一旦建立了專案,可以在 Settings 對話框的 Files 頁面中,從專案中增加和刪除設計檔以及其他檔案。在執行分析和合成過程期間,Quartus II 軟體將按檔案在 Files 頁面中顯示的順序來處理檔案。

    單擊 Project 功能表中的 Copy Project 命令,將整個專案複製到新的目錄下,包括專案設計資料庫檔、設計檔、設置檔和報告檔,然後在新目錄下,打開該專案。如果還沒有建立新目錄,Quartus II 將產生該目錄。

    Project Navigator 顯示與目前修訂相關的資訊並且以圖形表示專案層次、檔案和設計單元,以及各種功能表命令的捷徑鍵。您也可以右鍵單擊資訊,點擊 Customize Columns 命令,自定義 Project Navigator 所顯示的資訊。

    表 1. Quartus II 專案檔

    檔案類型 說明

    Quartus II 專案檔 (.qpf) 指定用來建立專案和與專案相關修訂的 Quartus II 軟體版本。

    Quartus II 設置檔 (.qsf) 包括分配編輯器、平面佈局編輯器、Settings 對話框、Tcl 腳本或者 Quartus II 可執行檔產生的所有修訂範圍內或者獨立的分配。專案中每個修訂有一個 QSF。

    Synopsys 設計約束檔 (.sdc) 含有以業界標準 Synopsys 設計約束格式表示的設計約束和時序分配。Synopsys 設計約束檔中的約束採用 Tcl 工具命令語言進行描述,符合 Tcl 語法規則。

    Quartus II 工作空間檔 (.qws) 包含使用者偏好和其他資訊,例如視窗位置,視窗中打開檔案及其位置。

    Quartus II 預設設置檔 (.qdf) 位於 \\win 目錄下,包括所有全局預設設置。QSF 中的設置將替代這些設置。

  • 第 2 章: 設計輸入建立專案

    42 ■ QUARTUS II 簡介 ALTERA 公司

    圖 2. Project Navigator 視窗

    Project Navigator 也可以分配設計分區。更詳細的資訊,請參考第 65 頁「分配設計分區」。

    使用修訂 (Revision)您可以使用修訂為設計中的設計檔指定、保存、使用不同的設置和分配組。對於設計中的相同設計檔,修訂可以採用不同的設置和分配來比較結果。建立修訂時,Quartus II 軟體建立一個單獨的 QSF,包括所有與修訂相關的設置和分配,並將其放置在設計的頂層目錄下。可對設計的任何實體建立修訂。在 Revisions 對話框中可以查看所有修訂的頂層實體,或者在Settings 對話框 (Assignments 功能表 )General 頁面中,查看目前頂層設計實體。

    f 有關資訊 請參閱

    建立並運行 Quartus II 專案 Quartus II 說明中的 “About the Project Navigator”

    Quartus II 教程中的設計輸入部分

    管理 Quartus II 專案 Quartus II Handbook 第 2 卷的 Quartus II Project Management 一章

  • 第 2章: 設計輸入建立專案

    ALTERA 公司 QUARTUS II 簡介 ■ 43

    使用 Revisions 對話框 (Project 功能表 ) 可以查看目前專案的所有修訂,為特定設計實體建立一個修訂,刪除修訂,或者設置一個特殊修訂做為目前修訂,以便編譯、模擬和進行時序分析。 Revision 對話框中的資訊顯示了某個修訂的頂層設計實體以及修訂的元件系列。選中標記圖示顯示目前修訂。使用 Create Revision 對話框,可建立新的修訂 ( 基於已有修訂 )、輸入修訂的說明,複製用於建立修訂的資料庫,並設置某個修訂為目前修訂。還可以選定哪個欄目出現在 Revision 對話框中 ( 圖 3)。

    圖 3. 修訂對話框

    建立修訂並不影響專案的原始設計檔。可以建立修訂,將其設置為設計的目前修訂,然後為實體建立分配和設置。此功能可以讓您為同一個設計實體建立不同的設置和分配,並將這些設置保存為不同的修訂,以便進行比較。每一個修訂都有相應的報告檔,可以打開它,查看並且對照其他修訂,比較設置效果和分配更改的結果。還可以使用 Revisions 對話框下的 CompareRevisions 對話框來比較不同修訂的編譯結果。Compare Revisions 對話框具有 Results 標籤和 Assignments 標籤選項。 預設情況下,將顯示專案所有修訂的比較結果,也可以選擇希望顯示的修訂並調整顯示順序來自定義比較。還可以從比較中輸出一個逗號分割值檔 (.csv)。圖 4 顯示了 CompareRevisions 對話框的 Results 標籤選項,以比較每個修訂結果。

  • 第 2 章: 設計輸入建立專案

    44 ■ QUARTUS II 簡介 ALTERA 公司

    圖 4. Compare Revisions 對話框的 Results 標籤選項

    圖 5 所示為 Compare Revisions 對話框的 Assignments 標籤選項,對每個修訂的分配設置進行比較。

  • 第 2章: 設計輸入建立專案

    ALTERA 公司 QUARTUS II 簡介 ■ 45

    圖 5. Compare Revisions 對話框的 Assignments 標籤選項

    使用版本相容的資料庫

    Quartus II 軟體能夠導出版本相容的資料庫檔,不必再對設計進行完整編譯,便可在 Quartus II 軟體後續版本中繼續使用。在執行分析和合成或者quartus_map 可執行檔之後,便可以在設計流程的任一階段導出資料庫。

    f 有關資訊 請參閱

    使用修訂 Quartus II Handbook 第 2 卷的 Quartus II Project Management 一章

    建立並使用修訂 Quartus II 說明中的 “About Revisions” 和“About Project Managment”

  • 第 2 章: 設計輸入建立專案

    46 ■ QUARTUS II 簡介 ALTERA 公司

    該功能可以建立和最佳化設計,為 Quartus II 軟體後續版本保留時序分析資料庫,確保時序模型更新後,設計仍能符合時序要求。

    為了在 Quartus II 軟體後續版本中使用導出的資料庫,可以使用 Project 功能表下的 Export Database 命令選擇目錄,導出資料庫。Quartus II 軟體導出設計資料庫。然後,在 Quartus II 軟體後續版本中使用 Project 功能表中的 Import Database 命令,選擇專案檔資料夾,導入設計資料庫,分析時序,驗證設計的時序要求。

    也可以使用 quartus_cdb 命令行可執行檔來導出或導入設計資料庫。版本相容資料庫由 Quartus II 軟體 4.1 及其後續版本提供支援。

    轉換 MAX+PLUS II 專案File 功能表中的 Convert MAX+PLUS II Project 命令使您能夠從原有MAX+PLUS II專案中選定一個現有MAX+PLUS II專案的分配和配置檔(.acf),或者設計檔,將其轉換為一個新的 Quartus II 專案,包含所有支援的分配和約束條件。Convert MAX+PLUS II Project 命令會自動導入 MAX+PLUS II

    ! 使用 quartus_cdb 可執行檔

    您可以使用 quartus_cdb 可執行檔來導出或導入版本相容的資料庫。

    使用 quartus_cdb 可執行檔導入或導出資料庫,請在命令提示符號下,輸入以下命令之一:

    quartus_cdb -c --import_database= rquartus_cdb -c --export_database= r

    如果您希望得到 quartus_cdb 可執行檔的說明,請在命令提示符號下,輸入以下命令之一:

    quartus_cdb -h rquartus_cdb --help rquartus_cdb --help= r

    f 有關資訊 請參閱

    使用版本相容的資料庫 Quartus II Handbook 第 2 卷的 Quartus II Project Management 一章

    Quartus II 說明中的 “About Project Managment”

  • 第 2章: 設計輸入建立設計

    ALTERA 公司 QUARTUS II 簡介 ■ 47

    分配和約束條件、建立新的專案檔,並打開新的 Quartus II 專案。圖 6 所示為 Convert MAX+PLUS II Project 對話框。

    圖 6. 轉換 MAX+PLUS II 專案對話框

    建立設計

    您可以在 Quartus II 模組編輯器中建立 HDL 設計。也可以在 Quartus II 純文字編輯器中,利用 AHDL、Verilog HDL 或者 VHDL 設計語言,建立設計。

    Quartus II 軟體還支援採用 EDA 設計輸入和合成工具產生的 EDIF 輸入檔(.edf) 或 Verilog Quartus 映射檔 (.vqm) 建立的設計。還可以在 EDA 設計輸入工具中建立 Verilog HDL 或 VHDL 設計,產生 EDIF 輸入檔和 VQM 檔,或在 Quartus II 專案中直接使用 Verilog HDL 或 VHDL 設計檔。有關使用EDA 合成工具產生 EDIF 輸入檔或 VQM 檔的詳細資訊,請參閱第 4 章 「合成」,第 73 頁 「使用其他 EDA 合成工具」。

    可以使用表 2 列出的設計檔類型在 Quartus II 軟體或 EDA 設計輸入工具中建立設計。

    f 有關資訊 請參閱

    轉換 MAX+PLUS II 專案 Quartus II Handbook 第 1 卷中的 Quartus II Design Flow for MAX+PLUS II Users 一章

  • 第 2 章: 設計輸入建立設計

    48 ■ QUARTUS II 簡介 ALTERA 公司

    使用 Quartus II 模組編輯器模組編輯器用於以原理圖和方塊圖形式輸入和編輯圖形設計資訊。Quartus II 模組編輯器讀取並編輯模組設計檔和 MAX+PLUS II 圖形設計檔。可以在Quartus II 軟體中打開圖形設計檔,將其另存為模組設計檔。模組編輯器與MAX+PLUS II 軟體的圖形編輯器類似。

    每一個模組設計檔包含設計中代表邏輯的方塊圖和符號。模組編輯器將每一個方塊圖、原理圖或者符號代表的設計邏輯合併到專案中。

    可以利用模組設計檔中的方塊圖建立新設計檔,在修改方塊圖和符號時更新設計檔,也可以在模組設計檔的基礎上產生模組符號檔 (.bsf)、AHDL Include 檔 (.inc) 和 HDL 檔。 還可以在編譯之前分析模組設計檔是否出錯。模組編輯器提供有助於您在方塊圖設計檔中連接方塊圖和基本單元 ( 包括匯流排和節點連接以及訊號名稱映射 ) 的一組工具。

    可以更改模組編輯器的顯示選項,例如根據您的習慣更改導向線和網格間距、橡皮帶式產生線、顏色和圖元、縮放以及不同的方塊圖和基本單元屬性。

    表 2. 支援的設計檔類型

    類型 說明 副檔名

    模組設計檔 使用 Quartus II 模組編輯器建立的原理圖設計檔。

    .bdf

    EDIF 輸入檔 使用任何標準 EDIF 網表編寫程式產生的EDIF 200 版網表檔。

    .edf

    .edif

    圖形設計檔 使用 MAX+PLUS II 圖形編輯器建立的原理圖設計檔。

    .gdf

    純文字設計檔 以 Altera 硬體描述語言 (AHDL) 編寫的設計檔。

    .tdf

    Verilog 設計檔 含有 Verilog HDL 定義的設計邏輯的設計檔。 .v.vlg.verilog

    HDL 設計檔 有 VHDL 定義的設計邏輯的設計檔。 .vh.vhd.vhdl

    Verilog Quartus 映射檔 Synplicity Synplify 軟體或 Quartus II 軟體產生的 Verilog HDL 格式網表檔。

    .vqm

  • 第 2章: 設計輸入建立設計

    ALTERA 公司 QUARTUS II 簡介 ■ 49

    模組編輯器的以下功能可以幫助您在 Quartus II 軟體中建立模組設計檔:

    ■ 對Altera提供的巨集功能模組進行例化:Tools功能表中的MegaWizard Plug-In Manager 用於建立或修改包含巨集功能模組自定義變數的設計檔。這些自定義巨集功能模組變數是採用 Altera 提供的包括 LPM 功能在內的巨集功能模組。巨集功能模組以模組設計檔中的方塊圖表示。請參閱第 53 頁 「使用 MegaWizard 外掛程式管理器」。

    ■ 插入方塊圖和基本單元符號:模組結構圖使用稱為模組的矩形符號代表設計實體以及相應的分配訊號,在自上而下的設計中很有用。模組由代表相應訊號流程的管道連接起來。可以將結構圖專用於代表您的設計,也可以將其與原理單元結合使用。

    Quartus II 軟體提供可在模組編輯器中使用的各種邏輯功能符號,包括基本單元、參數化模組函式庫 (LPM) 功能和其他巨集功能模組。

    ■ 從模組或模組設計檔中建立檔:為方便設計層次化專案,可以在模組編輯器中使用 Create/Update 命令 (File 功能表 ) 從模組設計檔中的模組開始建立其他模組設計檔、AHDL Include 檔、Verilog HDL 和 VHDL 設計檔以及 Quartus II 模組符號檔。還可以從模組設計檔本身建立 Verilog設計檔、VHDL 設計檔和模組符號檔。

    使用 Quartus II 純文字編輯器Quartus II 純文字編輯器是一個靈活的工具,用於以 AHDL、VHDL 和 VerilogHDL 語言以及 Tcl 腳本語言輸入純文字型設計。還可以使用純文字編輯器輸入、編輯和查看其他 ASCII 文字檔案,包括為 Quartus II 軟體或由 Quartus II軟體建立的文字檔案。還可以用 Text Editor 將任何 AHDL 聲明或節段範本、Tcl 命令或所支持的VHDL 以及Verilog HDL構造範本插入到目前檔案中。AHDL、VHDL和VerilogHDL 範本為您輸入 HDL 語法提供了簡便方法,提高了設計輸入的速度和準確度。還可獲取有關所有 AHDL 單元、關鍵字和聲明以及巨集功能模組和基本單元的上下文敏感詞說明。

    使用 Quartus II 符號編輯器符號編輯器用於查看和編輯代表巨集功能、巨集功能模組、基本單元或設計檔的預定義符號。每個符號編輯器檔代表一個符號。對於每個符號檔,均可以從包含 Altera 巨集功能模組和 LPM 功能的函式庫中選擇。可以自定義這些模組符號檔,然後將這些符號增加到使用模組編輯器建立的原理圖中。符號

  • 第 2 章: 設計輸入建立設計

    50 ■ QUARTUS II 簡介 ALTERA 公司

    編輯器讀取並編輯模組符號檔和 MAX+PLUS II 符號檔 (.sym),並將這兩種類型的檔儲存為模組符號檔。

    使用 Verilog HDL、VHDL 以及 AHDL可以使用 Quartus II 純文字編輯器或其他純文字編輯器建立純文字設計檔、Verilog 和 VHDL 設計檔,並在層次化設計中將這些檔案與其他類型設計檔相組合。

    Verilog 和 VHDL 設計檔可以包含 Quartus II 所支援構造的任意組合。還可以包含 Altera 提供的邏輯功能,如基本單元和巨集功能模組以及使用者自定義的邏輯功能。

    在純文字編輯器中,使用 Create/Update 命令 (File 功能表 ) 從目前的Verilog HDL 或 VHDL 設計檔中建立模組符號檔,然後將其合併到模組設計檔中。同樣,可以建立代表 Verilog HDL 或 VHDL 設計檔的 AHDL Include檔,並將其合併到純文字設計檔中或另一個 Verilog HDL 或 VHDL 設計檔中。

    對於 VHDL 設計,可以在 Settings 對話框 (Assignments 功能表 ) Files 頁面的 Properties 對話框,或者 Project Navigator 的 Files 標籤選項中指定VHDL 函式庫的名稱。

    有關在 Quartus II 軟體中使用 Verilog HDL 和 VHDL 語言的詳細資訊,請參閱第 4 章 「合成」,第 71 頁 「Quartus II Verilog HDL 和 VHDL 整合合成」。

    AHDL 是一種完全整合到 Quartus II 系統中的高級模組化語言。AHDL 支援布林等式、狀態機、條件邏輯和解碼邏輯。AHDL 還可用於建立和使用參數化功能,並全面支援 LPM 功能。AHDL 特別適合設計複雜的組合邏輯、批次處理、狀態機、真值表和參數化邏輯。

    f 有關資訊 請參閱

    使用 Quartus II 模組編輯器和符號編輯器 Quartus II 說明中的“About Design Entry”

    使用 Quartus II 純文字編輯器 Quartus II 說明中的 “About the Text Editor”

    在 Quartus II 軟體中建立設計 Quartus II Tutorial 中的 Design Entry部分

  • 第 2章: 設計輸入使用 ALTERA 巨集功能

    ALTERA 公司 QUARTUS II 簡介 ■ 51

    使用 Altera 巨集功能Altera 巨集功能模組是複雜的高級建構模組,可以在 Quartus II 設計檔中與邏輯門和觸發器基本單元一起使用。Altera 提供的參數化巨集功能模組和LPM 功能均為 Altera 元件結構做了最佳化。必須使用巨集功能模組才可以使用一些 Altera 專用元件的功能,例如,記憶體、DSP 模塊、LVDS 驅動器、PLL 以及 SERDES 和 DDIO 電路。

    可以使用 MegaWizard 外掛程式管理器 (Tools 功能表 ) 建立 Altera 巨集功能、LPM 功能和 IP 功能,用於 Quartus II 軟體和 EDA 設計輸入與合成工具中的設計。表 3 列出了能夠由 MegaWizard 外掛程式管理器建立的 Altera提供的巨集功能模組和 LPM 功能類型。

    為節省寶貴的設計時間, Altera 建議使用巨集功能模組,而不是對您自己的邏輯進行原始碼編寫。此外,這些功能可以提供更有效的邏輯合成和元件實現。只需透過設置參數便可方便地將巨集功能模組訂製為不同的大小。Altera還為巨集功能模組和 LPM 功能提供 AHDL Include 檔和 VHDL 元件聲明。

    表 3. Altera 提供的巨集功能和 LPM 功能

    類型 說明

    算術組件 包括累加器、加法器、乘法器和 LPM 算術功能。

    邏輯門 包括多路多工器和 LPM 門功能。

    I/O 元件 包括時鐘資料恢復 (CDR)、鎖相迴路 (PLL)、雙倍數據率 (DDR)、Gigabit 收發器模塊 (GXB)、LVDS 接收器和發送器、PLL 重新配置和遠端更新巨集功能模組。

    記憶體編譯器 包括 FIFO 劃分器、RAM 和 ROM 巨集功能。

    儲存元件 記憶體、移位暫存器巨集功能和 LPM 記憶體功能。

    f 有關資訊 請參閱

    使用 MegaWizard 外掛程式管理器 Quartus II 說明中的“About the MegaWizard Plug-In Manager”

    Quartus II Tutorial 中的 Design Entry部分

  • 第 2 章: 設計輸入使用 ALTERA 巨集功能

    52 ■ QUARTUS II 簡介 ALTERA 公司

    使用矽智財 (IP) 巨集功能Altera 提供多種方法來獲取 Altera 巨集功能合作夥伴計畫 (AMPP™) 和MegaCore® 巨集功能,這些功能經嚴格的測試和最佳化,可以在 Altera 專用元件結構中發揮出最佳性能。使用這些矽智財參數化模組能夠減少設計和測試時間。MegaCore 和 AMPP 巨集功能包括應用於嵌入式處理器、介面和週邊、數位訊號處理 (DSP) 以及通訊領域的巨集功能。

    Altera 提供以下程式、特性和功能,協助您在 Quartus II 軟體和 EDA 設計輸入工具中使用 IP 功能。

    ■ AMPP 計畫 :AMPP 計畫支持第三方供應商,以便建立和發佈與 Quartus II 軟體一起使用的巨集功能模組。AMPP 合作夥伴提供一系列為 Altera元件最佳化過的現成巨集功能模組。AMPP 功能的評估期由各供應商決定。可以從 Altera 網站 www.altera.com/ipmegast