introduction to quartus ii - インテル® fpga & soc 次 altera corporation introduction to...

254
Introduction to Quartus ® II 日本語版 バージョン 4.2 Altera Corporation 101 Innovation Drive San Jose, CA 95134 (408) 544-7000 www.altera.com ® この資料は英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。 こちらの日本語版は参考用としてご利用ください。設計の際には、最新の英語版で内容 をご確認ください。

Upload: trinhdieu

Post on 11-Mar-2018

249 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

Introduction toQuartus®II

日本語版 バージョン 4.2

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

®®

この資料は英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。こちらの日本語版は参考用としてご利用ください。設計の際には、最新の英語版で内容をご確認ください。

Page 2: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

Introduction to Quartus IIVersion 4.2 Rev.12004年 12月 P25-09235-03/JP

Altera、Alteraロゴ、FastTrack、HardCopy、MAX、MAX+PLUS、MAX+PLUS II、MegaCore、MegaWizard、NativeLink、Nios、OpenCore、Quartus、Quartus II、Quartus IIロゴ、および SignalTapは、Altera Corporationの米国およびその他の国における登録商標です。Avalon、ByteBlaster、ByteBlasterMV、Excalibur、IP MegaStore、Jam、LogicLock、MasterBlaster、MegaLAB、PowerFit、SignalProbe、およびUSB-Blasterは、Altera Corporationの米国およびその他の国における商標またはサービス・マークです。Altera Corporationが使用する製品デザイン・エレメントおよびニーモニックは、著作権および商標法で保護されています。

Altera Corporation は、本資料で言及している他の企業とその関連製品名またはサービスの商標およびサービス・マークを承認しています: ARM は ARM, Limited の登録商標です。AMBA は ARM, Limited の商標です。Mentor Graphics および ModelSim は、MentorGraphics Corporationの登録商標です。ModelTechnologyは、Mentor Graphics Corporationの商標です。

Altera reserves the right to make changes, without notice, in the devices or the device specifications identified in this document. Alteraadvises its customers to obtain the latest version of device specifications to verify, before placing orders, that the information being reliedupon by the customer is current. Altera warrants performance of its semiconductor products to current specifications in accordance withAltera’s standard warranty. Testing and other quality control techniques are used to the extent Altera deems such testing necessary tosupport this warranty. Unless mandated by government requirements, specific testing of all parameters of each device is not necessarilyperformed. In the absence of written agreement to the contrary, Altera assumes no liability for Altera applications assistance, customer’sproduct design, or infringement of patents or copyrights of third parties by or arising from use of semiconductor devices described herein.Nor does Altera warrant or represent any patent right, copyright, or other intellectual property right of Altera covering or relating to anycombination, machine, or process in which such semiconductor devices might be or are used.

Altera products are not authorized for use as critical components in life support devices or systems without the express written approval ofthe president of Altera Corporation. As used herein: 1. Life support devices or systems are devices or systems that (a) are intended forsurgical implant into the body or (b) support or sustain life, and whose failure to perform, when properly used in accordance withinstructions for use provided in the labeling, can be reasonably expected to result in a significant injury to the user. 2. A critical componentis any component of a life support device or system whose failure to perform can be reasonably expected to cause the failure of the lifesupport device or system, or to affect its safety or effectiveness.

Products mentioned in this document are covered by one or more of the following U.S. patents: 4609986; 4617479; 4677318; 4713792; 4774421;4785423; 4831573; 4864161; 4871930; 4899067; 4899070; 4903223; 4912342; 4930097; 4930098; 4930107; 4969121; 5045772; 5066873; 5091661;5097208; 5111423; 5121006; 5128565; 5138576; 5144167; 5162680; 5166604; 5187392; 5200920; 5220214; 5220533; 5237219; 5241224; 5243233;5247477; 5247478; 5258668; 5260610; 5260611; 5266037; 5268598; 5272368; 5274581; 5280203; 5285153; 5294975; 5301416; 5309046; 5315172;5317210; 5329487; 5341044; 5341048; 5341308; 5349255; 5350954; 5352940; 5353248; 5359242; 5359243; 5369314; 5371422; 5376844; 5384499;5399922; 5414312; 5432467; 5434514; 5436574; 5436575; 5438295; 5444394; 5463328; 5473266; 5477474; 5483178; 5485102; 5485103; 5486775;5487143; 5488586; 5490266; 5493519; 5493526; 5495182; 5498975; 5517186; 5523247; 5523706; 5525827; 5525917; 5537057; 5537295; 5537341;5541530; 5543730; 5543732; 5548228; 5548552; 5550782; 5550842; 5557217; 5561757; 5563592; 5565793; 5567177; 5570040; 5572067; 5572148;5572717; 5574893; 5581501; 5583749; 5590305; 5592102; 5592106; 5598108; 5598109; 5604453; 5606266; 5606276; 5608337; 5612642; 5614840;5621312; 5631576; 5633830; 5642082; 5642262; 5649163; 5650734; 5659717; 5668771; 5670895; 5672985; 5680061; 5689195; 5691653; 5693540;5694058; 5696455; 5699020; 5699312; 5705939; 5717901; 5729495; 5732020; 5740110; 5744383; 5744991; 5757070; 5757207; 5760624; 5761099;5764079; 5764080; 5764569; 5764583; 5767734; 5768372; 5768562; 5771264; 5787009; 5790469; 5793246; 5796267; 5801541; 5802540; 5805516;5809034; 5809281; 5812450; 5812479; 5815003; 5815024; 5815726; 5821771; 5821773; 5821787; 5825197; 5828229; 5834849; 5835998; 5838584;5838628; 5844854; 5845385; 5847617; 5848005; 5850151; 5850152; 5850365; 5859542; 5859544; 5861760; 5869979; 5869980; 5870410; 5872463;5872529; 5873113; 5875112; 5878250; 5880596; 5880597; 5880725; 5883526; 5883850; 5892683; 5893088; 5894228; 5898318; 5898628; 5898630;5900743; 5904524; 5905675; 5909126; 5909375; 5909450; 5914509; 5914904; 5915017; 5915756; 5923567; 5925904; 5926036; 5936425; 5939790;5940852; 5942914; 5943267; 5945870; 5949239; 5949250; 5949710; 5949991; 5953537; 5959891; 5963049; 5963051; 5963069; 5963565; 5966597;5968161; 5969626; 5970255; 5977791; 5977793; 5978476; 5982195; 5983277; 5986465; 5986470; 5996039; 5998263; 5998295; 5999015; 5999016;6002182; 6005379; 6005806; 6011406; 6011730; 6011744; 6014334; 6018476; 6018490; 6020758; 6020759; 6020760; 6023439; 6025737; 6026226;6028787; 6028808; 6028809; 6029236; 6031391; 6031763; 6032159; 6034536; 6034540; 6034857; 6037829; 6038171; 6040712; 6043676; 6045252;6049223; 6049225; 6052309; 6052327; 6052755; 6057707; 6058452; 6060903; 6064599; 6066960; 6069487; 6072332; 6072358; 6075380; 6076179;6078521; 6080204; 6081449; 6084427; 6085317; 6091102; 6091258; 6094064; 6097211; 6102964; 6104208; 6107820; 6107822; 6107824; 6107825;6107854; 6108239; 6110223; 6112020; 6114915; 6115312; 6118302; 6118720; 6120550; 6121790; 6122209; 6122720; 6127217; 6127844; 6127846;6127865; 6128215; 6128692; 6130552; 6130555; 6134166; 6134173; 6134705; 6134707; 6137313; 6144573; 6147511; 6150840; 6151258; 6154055;6154059; 6157208; 6157210; 6157212; 6160419; 6161211; 6163166; 6163195; 6166559; 6167364; 6169417; 6172900; 6173245; 6175952; 6177844;6180425; 6181159; 6181160; 6181161; 6181162; 6182020; 6182247; 6184703; 6184705; 6184706; 6184707; 6184707; 6184710; 6185725; 6187634;6191608; 6191611; 6191998; 6192445; 6195772; 6195788; 6198303; 6201404; 6202185; 6204688; 6205579; 6208162; 6212668; 6215326; 6218859;6218860; 6218876; 6219284; 6219785; 6222382; 6225822; 6225823; 6226201; 6232893; 6236094; 6236231; 6236237; 6236260; 6236597; 6239612;6239613; 6239615; 6242941; 6242946; 6243296; 6243304; 6246260; 6246270; 6247147; 6247155; 6249143; 6249149; 6252419; 6252422; 6255846;6255850; 6259271; 6259272; 6259588; 6262595; 6262933; 6263400; 6263482; 6265746; 6265895; 6265926; 6268623; 6269020; 6271679; 6271680;6271681; 6271729; 6275065; 6278288; 6278291; 6279145; 6281704; 6282122; 6285211; 6286114; 6288970; 6292016; 6292017; 6292116; 6294928;6295230; 6297565; 6298319; 6300792; 6300794; 6301694; 6311309; 6314550; 6317367; 6317771; 6317860; 6320411; 6321367; 6321369; 6323677;6323680; 6326807; 6326812; 6335634; 6335635; 6335636; 6337578; 6340897; 6342792; 6342794; 6344755; 6344758; 6344989; 6346827; 6347061;6351144; 6351152; 6353551; 6353552; 6356108; 6356110; 6359468; 6359469; 6362646; 6363505; 6365929; 6366119; 6366120; 6366121; 6366224;6366498; 6367056; 6367058; 6369613; 6369624; 6373278; 6373280; 6377069; 6384625; 6384629; 6384630; 6389558; 6392438; 6392954; 6396304;6400290; 6400598; 6400635; 6401230; 6404225; 6407450; 6407576; 6408432; 6411124; 6414514; 6414518; 6417550; 6417692; 6417694; 6421812;6423572; 6429681; 6433579; 6433585; 6437650; 6442073; 6448820; 6453382; 6459303; 6460148; 6462414; 6462577; 6462597; 6467017; 6469553;6472272; 6472903; 6480025; 6480027; 6480028; 6480995; 6481000; 6483886; 6485843; 6486702; 6489817; 6490714; 6490717; 6492833; 6492834;6507216; 6515507; 6515508; 6525564; 6525678; 6526461; 6531889; 6532170; 6535031; 6538469; 6538470; 6549032; 6549045; 6556044; 6556500;6556502; 6563343; 6563367; 6566906; 6570404; 6573138; 6577157; 6577160; 6583646; 6586966; 6588004; 6590413; 6590419; 6593772; 6596618;6599764; 6600337; 6601221; 6604228; 6605960; 6605962; 6614259; 6614261; 6617884; 6621326; 6624467; 6624495; 6624524; 6625771; 6625796;6627517; 6628140; 6629311; 6630842; 6630844; 6631510; 6633185; 6634009; 6636070; 6636936; 6642064; 6642758; 6646467; 6646919; 6650140;6651155; 6653862; 6657456; 6658564; 6661253; 6661733; 6664846; 6667641; 6670825; 6680871; 6681378; 6686769; 6690195; 6691267; 6693455;6697773; 6704889; 6707315; 6707399; 6714042; 6714044; 6714050; 6715023; 6720796; 6724080; 6724222; 6724328; 6727727; RE35977; RE37060;and certain foreign patents. Additional patents are pending.

Altera products are protected under numerous U.S. and foreign patents and pending applications, maskwork rights,and copyrights.

Copyright © 2004 Altera Corporation. All rights reserved.

Page 3: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

目次

Altera Corporation Introduction to Quartus II ■ iii

はじめに ...........................................................................................................................viii表記規則 ............................................................................................................................ ix

第 1 章:デザイン・フロー.................................................................................................1はじめに ................................................................................................................2グラフィカル・ユーザ・インタフェースのデザイン・フロー..............................3EDAツールを用いた場合のデザイン・フロー ......................................................9コマンドライン・デザイン・フロー ...................................................................15

実行コマンド ..........................................................................................16標準コマンドライン用コマンドおよびスクリプト.................................20Tclコマンド ............................................................................................23Makefileスクリプトの作成 .....................................................................26

設計手法およびデザイン・プラン .......................................................................28トップダウン設計手法とボトムアップ設計手法 ....................................29ブロック・ベースのデザイン・フロー...................................................29デザインの分割.......................................................................................30

第 2 章:デザイン・エントリ ...........................................................................................31はじめに ..............................................................................................................32プロジェクトの作成 ............................................................................................33

リビジョン ..............................................................................................35バージョン互換のデータベース..............................................................39MAX+PLUS IIプロジェクトの変換 ........................................................40

デザインの作成....................................................................................................41Quartus IIブロック・エディタ ...............................................................42Quartus IIテキスト・エディタ ...............................................................43Quartus IIシンボル・エディタ ...............................................................44Verilog HDL、VHDLおよび AHDL .........................................................44

アルテラのメガファンクション ..........................................................................45IP(Intellectual Property)メガファンクション .....................................47MegaWizard Plug-In Manager ................................................................48Quartus II開発ソフトウェアでのメガファンクションのインスタンス ....................................................................................49

Verilog HDLおよび VHDLにおけるインスタンス ....................50ポートおよびパラメータ定義 ....................................................50メガファンクションの推定........................................................50

EDAツールでのメガファンクションのインスタンス ............................51ブラック・ボックス手法 ...........................................................51推定によるインスタンス ...........................................................51クリア・ボックス手法 ...............................................................52

Page 4: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

目次

iv ■ Introduction to Quartus II Altera Corporation

第 3 章:制約の入力......................................................................................................... 55はじめに .............................................................................................................. 56アサインメント・エディタ ................................................................................. 57Settingsダイアログ ............................................................................................ 59アサインメントのインポート.............................................................................. 60ピン・アサインメントの検証.............................................................................. 62

第 4 章:論理合成............................................................................................................. 63はじめに .............................................................................................................. 64Quartus IIの Verilog HDLおよび VHDL論理合成機能 ....................................... 65他の EDA合成ツール .......................................................................................... 69Analysis & Synthesisの制御 ............................................................................... 71

コンパイラのディレクティブおよびアトリビュート............................. 72Quartus IIロジック・オプション........................................................... 72Quartus II合成ネットリスト最適化オプション ..................................... 74

デザイン・アシスタントを使用したデザインの信頼性のチェック .................... 75RTL Viewerによる合成結果の解析..................................................................... 76Technology Map Viewerによる合成結果の解析 ................................................. 78インクリメンタル・シンセシス .......................................................................... 80

第 5 章:配置配線............................................................................................................. 83はじめに .............................................................................................................. 84フィッティング結果の解析 ................................................................................. 86

メッセージ・ウィンドウを使用したフィッティング結果の表示........... 86レポート・ウィンドウまたはレポート・ファイルを使用したフィッティング結果の表示.............................................................. 87

Timing Closure Floorplanを使用した結果の解析 .................................. 89デザイン・アシスタントを使用したデザインの信頼性のチェック ....... 91

フィッティングの最適化..................................................................................... 91ロケーション・アサインメント ............................................................. 91配置配線を制御するオプションの設定 .................................................. 92

フィッタ・オプションの設定.................................................... 92フィジカル・シンセシス最適化オプションの設定 ................... 93フィッティングに影響のあるロジック・オプション................ 94

Resource Optimization Advisor .............................................................. 94デザイン・スペース・エクスプローラ .................................................. 97

バック・アノテーションによるアサインメントの保存 .................................... 101

Page 5: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

目次

Altera Corporation Introduction to Quartus II ■ v

第 6 章:ブロック・ベース・デザイン ..........................................................................105はじめに ............................................................................................................106Quartus IIブロック・ベース・デザイン・フロー .............................................106LogicLock領域...................................................................................................108中間合成結果の保存 ..........................................................................................111

LogicLock領域アサインメントのバック・アノテーション .................112LogicLockアサインメントのエクスポートおよびインポート..............113

EDAツールと LogicLockの使い方 ....................................................................115

第 7 章:シミュレーション.............................................................................................117はじめに ............................................................................................................118EDAツールを使用したデザインのシミュレーション .......................................119

EDAシミュレーション・ツール設定の指定 ........................................120シミュレーション出力ファイルの生成.................................................121EDAシミュレーション・フロー ..........................................................123

機能シミュレーション・フロー...............................................123NativeLinkシミュレーション・フロー ....................................123手動タイミング・シミュレーション・フロー .........................124シミュレーション・ライブラリ...............................................125

Quartus IIシミュレータを使用したデザインのシミュレーション ....................126波形ファイルの作成..............................................................................129Simulator Tool.......................................................................................130

第 8 章:タイミング解析 ................................................................................................131はじめに ............................................................................................................132Quartus II開発ソフトウェアにおけるタイミング解析の実行 ...........................133

タイミング要求値の指定 ......................................................................133プロジェクト全体でのタイミング設定の指定 .........................135個々のタイミング・アサインメントの指定.............................136

タイミング解析の実行 ..........................................................................137Early Timing Estimateの実行 ............................................................................140タイミング解析結果の表示................................................................................142

レポート・ウィンドウ ..........................................................................142アサインメントの実行および遅延パスの表示 ......................................143Technology Map Viewer .......................................................................146

EDAツールを使用したタイミング解析の実行 ..................................................147PrimeTime.............................................................................................147Tau........................................................................................................148

Page 6: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

目次

vi ■ Introduction to Quartus II Altera Corporation

第 9 章:タイミング・クロージャ ................................................................................. 151はじめに ............................................................................................................ 152Timing Closure Floorplan .................................................................................. 152

アサインメントおよび配線の表示 ....................................................... 153アサインメントの作成 ......................................................................... 155

Timing Optimization Advisor.............................................................................. 156ネットリスト最適化オプションを使用したタイミング・クロージャの実現............................................................................................................. 157

LogicLock領域を使用したタイミング・クロージャの実現.............................. 160ソフト LogicLock領域 ......................................................................... 161パス・ベースのアサインメント ........................................................... 161

タイミング・クロージャを実現するデザイン・スペース・エクスプローラ........................................................................................... 163

第 10 章:消費電力の解析 .............................................................................................. 165はじめに ............................................................................................................ 166PowerPlayパワー・アナライザを使用した電力解析の実行............................. 166パワー・アナライザ・オプションの指定.......................................................... 168PowerPlay Early Power Estimator..................................................................... 170

第 11 章:プログラミングおよびコンフィギュレーション............................................ 173はじめに ............................................................................................................ 174Programmerを使用した 1つまたは複数のデバイスのプログラミング ........... 179二次プログラミング・ファイルの作成 ............................................................. 180

他のプログラミング・ファイル・フォーマットの作成 ....................... 180プログラミング・ファイルの変換 ....................................................... 182

Quartus II開発ソフトウェアを使用したリモート JTAGサーバ経由のプログラム .................................................................................................. 187

第 12 章:デバッグ......................................................................................................... 189はじめに ............................................................................................................ 190SignalTap IIロジック・アナライザ .................................................................. 191

SignalTap IIロジック・アナライザのセット・アップおよび実行....... 191SignalTap IIデータの解析.................................................................... 195

SignalProbe....................................................................................................... 198In-System Memory Content Editor .................................................................... 200RTL Viewerおよび Technology Map Viewer .................................................... 202Chip Editor......................................................................................................... 203

Page 7: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

目次

Altera Corporation Introduction to Quartus II ■ vii

第 13 章:ECO (設計変更管理 ) ....................................................................................205はじめに ............................................................................................................206Chip Editorにおける遅延およびクリティカル・パスの識別.............................207Chip Editorによる素子の編集 ...........................................................................208Resource Property Editorによるリソース・プロパティの変更 ........................209Change Managerにおける変更の表示および管理............................................211ECOによる影響の検証 .....................................................................................213

第 14 章:フォーマル検証 ..............................................................................................215はじめに ............................................................................................................216EDAベンダのフォーマル検証ツール ................................................................217追加設定の指定..................................................................................................219

第 15 章:システム・レベル・デザイン .........................................................................221はじめに ............................................................................................................222SOPC Builderを使用した SOPCデザインの作成 ............................................223

システムの作成.....................................................................................224システムの生成.....................................................................................225

DSP Builderを使用した DSPデザインの作成 ..................................................226インスタンス・ファンクション............................................................226シミュレーション・ファイルの生成 ....................................................227合成ファイルの生成..............................................................................227

第 16 章:ソフトウェア開発 ...........................................................................................229はじめに ............................................................................................................230Quartus II 開発ソフトウェアにおける Software Builderの使い方 ....................230ソフトウェア構築設定の指定 ............................................................................231ソフトウェア出力ファイルの生成 .....................................................................231

フラッシュ・プログラミング・ファイルの生成 ..................................233パッシブ・プログラミング・ファイルの生成 ......................................234メモリ初期設定データ・ファイルの生成 .............................................236

第 17 章:インストール、ライセンスおよびテクニカル・サポート..............................239Quartus II 開発ソフトウェアのインストール ....................................................240Quartus II 開発ソフトウェアのライセンス........................................................241テクニカル・サポート .......................................................................................243

第 18 章:資料およびその他のリソース .........................................................................245オンライン・ヘルプの参照................................................................................246Quartus IIオンライン・チュートリアル ...........................................................247その他の Quartus II 開発 ソフトウェアの資料 ..................................................248その他の資料 .....................................................................................................249

索引.................................................................................................................................251

Page 8: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

viii ■ Introduction to Quartus II Altera Corporation

はじめにアルテラ (Altera®) のQuartus® II開発ソフトウェアは、system-on-a-programmable-chip (SOPC) デザインに最適な最も包括的な環境を提供します。 これまでに、MAX+PLUS® IIソフトウェア、他のデザイン・ソフトウェア、または ASIC デザイン・ソフトウェアを使用した経験があり、Quartus II 開発ソフトウェアへの切り替えをお考えの方、またはすでにQuartus II開発ソフトウェアを使用中でその機能をより詳しく理解しようとお考えの方は、是非このマニュアルをご一読ください。

このマニュアルは、Quartus II 開発ソフトウェアに初めて触れる方を対象としており、プログラマブル・ロジック・デザインで発揮されるQuartus II開発ソフトウェアの機能の概要を説明しています。 ただし、Quartus II開発ソフトウェアの完全なリファレンス・マニュアルとして編集されているわけではありません。 むしろ、ソフトウェアの機能と、その機能がFPGAおよびCPLDデザインでどのように役立つかを説明しています。 このマニュアルは、プログラマブル・ロジック・デザイン・タスク特有の流れに沿って構成されています。 Quartus IIグラフィカル・ユーザ・インタフェース、他のEDAツール、またはQuartus IIコマンドライン・インタフェースを使用するとき、このマニュアルは、デザイン・フローに最適な機能をガイドします。

最初の章では、主なグラフィカル・ユーザ・インタフェース、EDAツール、コマンドライン・インタフェース・デザイン・フローの概要を説明しています。 それ以降の各章では、その章の特定の目的に対する説明から始まり、各タスク・フローの概要を説明しています。 各章では、Quartus II開発ソフトウェアと既存のEDAツールおよびコマンドライン・デザイン・フローを統合する方法が示されています。 さらに、アルテラのWebサイトのQuartus IIオンライン・ヘルプおよび Quartus IIオンライン・チュートリアル、アプリケーション・ノート、ホワイト・ペーパー、その他の資料およびリソースなど、Quartus II 開発ソフトウェアを使用するにあたって役立つ他のリソースも紹介しています。

このマニュアルに沿ってQuartus II開発ソフトウェアを一通りご利用いただければ、生産性が向上し、デザイン・サイクルを短縮できるほか、既存のプログラマブル・ロジック・デザイン・フローとうまく統合し、デザイン、パフォーマンスやタイミング要求をすばやくかつ効果的に達成することができます。

Page 9: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

Altera Corporation Introduction to Quartus II ■ ix

表記規則『Introduction to Quartus® II』マニュアルでは、情報の検索と解釈を簡単に行えるように、次の表記規則を使用しています。

書体規則

本マニュアルでは、以下の書体規則を使用しています。

書体 : 意味 :

太字かつ文頭が大文字 コマンド名、ダイアログ・ボックス、ページ、およびタブのタイトル、またボタン名は、太字かつ文頭が大文字で表記されています。 例:Find Textコマンド、Save Asダイアログ、および Startボタン。

太字 ディレクトリ名、プロジェクト名、ディスク・ドライブ名、ファイル名、ファイルの拡張子、ソフトウェア・ユーティリティ名、ソフトウェア実行コマンド名、およびダイアログ・ボックスのオプションは、太字で表記されています。 例:quartus ディレクトリ、d: ドライブ、license.dat ファイル。

文頭が大文字 キーボードのキー、ユーザが編集可能なアプリケーション・ウィンドウ・フィールド、およびメニュー名は、単語の文頭が大文字で表記されています。 例: Deleteキー、Optionsメニュー

「小見出しタイトル」 マニュアル・セクション内の小見出しは、引用符で囲んでいます。 ヘルプ・トピックのタイトルも引用符で囲んでいます。

斜体かつ文頭が大文字 ヘルプのカテゴリ、マニュアルの題名、マニュアルでのセクションの題名、およびアプリケーション・ノートとブリーフ名は、斜体かつ文頭が大文字で表記されています。 例:FLEXlm End Users Guide

斜体 変数は角括弧 (< >) で囲み、斜体で表記されています。 例: <ファイル名 >、<CD-ROMドライブ >

Courierフォント 表示されている通りに入力する必要のあるものは、Courier フォントで表記されています。 例: ¥quartus¥bin¥lmulti lmhostid

Enterキーまたは returnキー

■ 項目の順序が重要でないものについては、各項目の行頭に青い四角が付いています。

Page 10: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

表記規則

x ■ Introduction to Quartus II Altera Corporation

用語

本マニュアルでは、全編を通して次の用語が使用されています。

足跡のマークは、記載されている項目の詳細情報の参照箇所を示します。

✔ チェックマークは、1ステップしかない手順を表します。

☞ 指差しマークは要注意箇所を表しています。

書体 : 意味 :

用語 : 意味 :

「クリック」 左マウス・ボタンを短く押して離す動作を示します。

「ダブル・クリック」 クリックをすばやく 2回行うことを示します。

「選択 (choose)」 アクションを起こすために、マウスまたはキーの組み合わせを使用する必要があることを示します。

「選択 (select)」 テキストおよび (または ) オブジェクト、またはダイアログ・ボックスのオプションを、キーの組み合わせまたはマウスでハイライトする必要があることを示します。 選択だけでは、アクションは開始されません。 例: Chain Description File を選択し、OK をクリックします。

「オンにする」/「オフにする」 チェック・ボックスをクリックし、機能をオンまたはオフにする必要があることを示します。

Page 11: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

デザイン・フロー

第 1章の内容 :

はじめに 2

グラフィカル・ユーザ・インタフェースのデザイン・フロー 3

EDAツールを用いた場合のデザイン・フロー 9

コマンドライン・デザイン・フロー 15

設計手法およびデザイン・プラン 28 1

第 1章

Page 12: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローはじめに

2 ■ Introduction to Quartus II Altera Corporation

はじめにアルテラのQuartus® II開発ソフトウェアは、ユーザのデザイン・ニーズに簡単に適用できる完全なマルチプラットフォームのデザイン環境を提供します。 System-on-a-programmable-chip (SOPC) デザイン向けの包括的な環境を実現するQuartus II開発ソフトウェアは、FPGAおよびCPLDデザイン・フローの全段階に対するソリューションを提供します。図 1に、Quartus IIデザイン・フローを示します。

図 1. Quartus IIデザイン・フロー

Quartus II開発ソフトウェアでは、デザイン・フローの各段階においてQuartus IIグラフィカル・ユーザ・インタフェース、EDAツール・インタフェース、またはコマンドライン・インタフェースが使用可能です。これらのインタフェースの 1つをフロー全体で使用したり、デザイン・フローの各段階で機能の選択を行うことができます。 この章では、デザイン・フローの各段階で利用可能なオプションを説明しています。その他の章では、デザイン・フローの個々の段階について詳しく説明しています。

Page 13: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローグラフィカル・ユーザ・インタフェースの デザイン・フロー

Altera Corporation Introduction to Quartus II ■ 3

グラフィカル・ユーザ・インタフェースのデザイン・フロー

Quartus II 開発ソフトウェアは、デザイン・フローのすべての段階で使用することができる使いやすい完全なスタンドアロン・ソリューションです。図 2は、Quartus IIグラフィカル・ユーザ・インタフェースがデザイン・フローの各段階で提供している機能を示しています。

図 2. Quartus IIグラフィカル・ユーザ・インタフェースの機能

Page 14: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローグラフィカル・ユーザ・インタフェースの デザイン・フロー

4 ■ Introduction to Quartus II Altera Corporation

図 3は、初回起動時に (デフォルトで) 表示されるQuartus IIグラフィカル・ユーザ・インタフェースを示しています。

図 3. Quartus IIグラフィカル・ユーザ・インタフェース

Quartus II 開発ソフトウェアには、モジュラー・コンパイラが含まれます。コンパイラには次のモジュールが含まれます(アスタリスクの付いたモジュールはコンパイル時にはオプションですが、これは設定に依存します)。

■ Analysis & Synthesis■ フィッタ■ アセンブラ■ タイミング解析■ デザイン・アシスタント*■ EDA Netlist Writer*■ コンパイル・データベース・インタフェース*

Start Compilation (Processingメニュー ) を選択して、フル・コンパイルの一部として、すべてのコンパイル・モジュールを実行できます。また、Start (Processing メニュー ) を選択し、続けてStartサブメニューから起動するモジュールのコマンドを選択すると、各モジュールを個別に実行できます。

さらに、Compiler Tool (Toolsメニュー ) を選択し、Compiler Toolウィンドウでモジュールを実行してもコンパイル・モジュールを起動できます。Compiler Toolウィンドウでは、設定ファイルまたはレポート・ファイルを開いたり、他の関連ウィンドウを開くことができます。図 4を参照してください。

Page 15: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローグラフィカル・ユーザ・インタフェースの デザイン・フロー

Altera Corporation Introduction to Quartus II ■ 5

図 4. Compiler Toolウィンドウ

Quartus II開発ソフトウェアは、Processingメニューのコマンドを使用できる定義済みコンパイル・フローも提供しています。表 1に、一般的なコンパイル・フローでのコマンドを示します。

モジュールの起動

モジュール設定ページを開く

レポート・ファイルを開く

表 1. 一般的なコンパイル・フローでのコマンド

フロー 説明Quartus IIの Processingメニューのコマンド

フル・コンパイル デザインのフル・コンパイルを実行します。 Start Compilationコマンド

コンパイルおよびシミュレーション

タイミング・シミュレーション・モードの場合、フローはフル・コンパイルを実行し、現在のデザインをシミュレーションします。機能シミュレーション・モードの場合、フローはGenerateFunctional Simulation Netlist コマンドのみを実行し、現在のデザインをシミュレーションします。

Start Compilation

and Simulationコマンド

SignalProbe™

コンパイル既存のフィッティングに影響を与えずにユーザ指定の信号を出力ピンに送るため、デザインに対しフル・コンパイルを実行しなくても信号をデバッグすることができます。

Start > Start SignalProbe

Compilationコマンド

Early Timing Estimate 部分的なコンパイルを実行した後停止して、フィッタが完了する前にEarly Timing Estimateを行います。

Start > Start Early Timing

Estimateコマンド

Page 16: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローグラフィカル・ユーザ・インタフェースの デザイン・フロー

6 ■ Introduction to Quartus II Altera Corporation

Quartus II開発ソフトウェアのレイアウト、メニュー、コマンドおよびアイコンは、好みに応じてカスタマイズできます。 Quartus II 開発ソフトウェアを初めて使用する時には、標準のQuartus IIユーザ・インタフェースまたはMAX+PLUS® IIルック&フィールのどちらを使用するか選択することができます。または、ToolsメニューのCustomize ダイアログでルック&フィールを後から選択することも可能です。MAX+PLUS IIユーザは、MAX+PLUS IIルック&フィールにより、使い慣れているMAX+PLUS IIのレイアウト、コマンドおよびアイコンでQuartus II開発ソフトウェアの機能を使用することができます。図 5に、Customizeダイアログを示します。

図 5. Customizeダイアログ

関連情報 参照先

コンパイル・フロー Quartus II ヘルプの「Overview: Using CompilationFlows」

Page 17: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローグラフィカル・ユーザ・インタフェースの デザイン・フロー

Altera Corporation Introduction to Quartus II ■ 7

Customizeダイアログでは、オプションのQuartus IIまたはMAX+PLUS IIのクイック・メニューの表示の選択ができ、さらに表示をメニュー・バーの右側または左側にするかを選択できます。Quartus IIのクイック・メニューは、各Quartus IIアプリケーション用のメニュー・コマンドおよび通常使用されるコマンドを含んでいます。MAX+PLUS IIソフトウェアに類似したMAX+PLUS IIのクイック・メニューは、アプリケーション用のコマンドおよび一般的な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クイック・メニュー

Page 18: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローグラフィカル・ユーザ・インタフェースの デザイン・フロー

8 ■ Introduction to Quartus II Altera Corporation

Quatus IIグラフィカル・ユーザ・インタフェースを使用した基本的なデザイン・フローは次の通りです。

1. New Project Wizard (File メニュー ) を使用して新規プロジェクトを作成し、ターゲットとなるデバイスまたはデバイス・ファミリを指定します。

2. テキスト・エディタを使用して、Verilog HDL、VHDLまたはアルテラ・ハードウェア記述言語 (AHDL) デザイン・ファイルを作成します。必要に応じて、ブロック・エディタを使用して他のデザイン・ファイルを表す記号を使用したブロック図を作成したり、図表を作成できます。 MegaWizard® Plug-InManager (Toolsメニュー ) を使用して、メガファンクションとIPファンクションのカスタム・バリエーションを生成できます。

3. (オプション) アサインメント・エディタ、Settingsダイアログ (Assignmentsメニュー )、フロアプラン・エディタ、および/またはLogicLock™機能を使用して、初期デザイン制約を指定します。

4. (オプション) SOPC BuilderまたはDSP Builderを使用して、システム・レベルのデザインを作成します。

5. (オプション) Software Builderを使用して、Excalibur™デバイス・プロセッサまたはNios® IIエンベデッド・プロセッサのソフトウェアおよびプログラミング・ファイルを作成します。

6. Analysis & Synthesisを使用して、デザインを合成します。

7. (オプション ) シミュレータおよびGenerate Functional Simulation Netlistコマンドを使用して、デザインに対して機能シミュレーションを実行します。

8. フィッタを使用し、デザインに対して配置配線を実行します。

関連情報 参照先

MAX+PLUS IIユーザ用のデザイン・フロー アルテラWebサイトのQuartus II Handbook、Volume 1のChapter 2「Quartus II Design Flow for MAX+PLUS IIUsers」

Quartus IIチュートリアルの「MAX+PLUS II Conversionmodule」

ユーザ・インタフェースのカスタマイズ Quartus IIヘルプの「Overview: Working With the UserInterface」および「Customizing the User Interface」

MAX+PLUS IIルック&フィール Quartus IIヘルプの「MAX+PLUS II Quick Start Guide forthe Quartus II Software」および「List of MAX+PLUS IICommands」

Page 19: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローEDAツールを用いた場合のデザイン・フロー

Altera Corporation Introduction to Quartus II ■ 9

9. PowerPlay Power Analyzerを使用して、消費電力の見積りおよび解析を実行します。

10. タイミング・アナライザを実行し、デザインに対してタイミング解析を行います。

11. シミュレータを使用し、デザインに対してタイミング・シミュレーションを実行します。

12. (オプション) フィジカル・シンセシス、タイミング・クロージャ・フロアプラン、LogicLock、Settingsダイアログ、およびアサインメント・エディタを使用してタイミングの向上を図り、タイミング・クロージャを実現します。

13. アセンブラを使用して、デザインのプログラミング・ファイルを作成します。

14. プログラミング・ファイル、Programmer、およびアルテラのハードウェアを使用してデバイスをプログラムします。または、エンベデッド・プロセッサなど他のシステムで使用できるように、プログラミング・ファイルを別のファイル形式に変換します。

15. (オプション) SignalTap® IIロジック・アナライザ、SignalProbe™機能、またはChip Editorを使用して、デザインをデバッグします。

16. (オプション) Chip Editor、Resource Property Editor、Change Managerを使用して、変更内容を管理できます。

EDAツールを用いた場合のデザイン・フローQuartus II 開発ソフトウェアでは、デザイン・フローの様々な段階で、使い慣れたEDAツールを使用できます。これらのツールは、Quartus IIグラフィカル・ユーザ・インタフェース、またはQuartus IIのコマンドライン入力と共に使用できます。図7 に、EDAツールを用いた場合のデザイン・フローを示します。

Page 20: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローEDAツールを用いた場合のデザイン・フロー

10 ■ Introduction to Quartus II Altera Corporation

図 7. EDAツールのデザイン・フロー

表 2は、Quartus II開発ソフトウェアでサポートしているEDAツールと、NativeLink®

のサポートの有無を示しています。NativeLinkテクノロジは、Quartus II開発ソフトウェアと他のEDAツールの間でシームレスに情報転送ができ、Quartus II開発ソフトウェア内からのEDAツールの自動実行を可能にします。

Page 21: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローEDAツールを用いた場合のデザイン・フロー

Altera Corporation Introduction to Quartus II ■ 11

表 2. Quartus II開発ソフトウェアがサポートする EDAツール

内容 サポートされているEDAツールNativeLink

サポート

デザイン・エントリおよび論理合成

Mentor Graphics社 Design Architect

Mentor Graphics社 LeonardoSpectrum ✔

Mentor Graphics社 Precision RTL Synthesis ✔

Mentor Graphics社 ViewDraw

Synopsys社 Design Compiler

Synopsys社 Design Compiler FPGA

Synopsys社 FPGA Compiler II ✔

Synplicity社 Synplify ✔

Synplicity社 Synplify Pro ✔

シミュレーション Cadence社 NC-Verilog ✔

Cadence社 NC-VHDL ✔

Cadence社 Verilog-XL

Mentor Graphics®社 ModelSim® ✔

Mentor Graphics社 ModelSim-Altera ✔

Synopsys社 VCS MX

Synopsys社 VCS

Synopsys社 VSS

タイミング解析 Mentor Graphics社 Tau (Stamp全般)

Synopsys社 PrimeTime ✔

ボード・レベル検証 Hyperlynx (Signal Integrity IBIS全般)

XTK (Signal Integrity IBIS全般)

ICX (Signal Integrity IBIS全般)

SpectraQuest (Signal Integrity IBIS全般)

Mentor Graphics社 Symbol Generation (Viewdraw)

フォーマル検証 Cadence社 Incisive Conformal

Synopsys社 Formality

フィジカル・シンセシス Magma Design Automation社 PALACE ✔

Page 22: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローEDAツールを用いた場合のデザイン・フロー

12 ■ Introduction to Quartus II Altera Corporation

Settings ダイアログ (Assignments メニュー ) の EDA Tool Settings ページで、Quartus II開発ソフトウェアで使用するEDAツールを指定できます。図 8を参照してください。

図 8. Settingsダイアログの EDA Tool Settingsページ

EDA Tool Settingsの個々のページでは、EDAツール・タイプごとに追加のオプションを設定できます。

Quartus II開発ソフトウェアと共に他のEDAツールを使用した基本的なデザイン・フローは次の通りです。サポートされている EDAツールについては、11ページの表 2を参照してください。

1. 新規プロジェクトを作成し、ターゲット・デバイスまたはデバイス・ファミリを指定します。

Page 23: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローEDAツールを用いた場合のデザイン・フロー

Altera Corporation Introduction to Quartus II ■ 13

2. テキスト・エディタを使用して、Verilog HDLまたはVHDLデザイン・ファイルを作成します。必要であればライブラリからファンクションをインスタンスするか、MegaWizard Plug-In Manager (Toolsメニュー ) を使用して、IPメガファンクションをカスタマイズして組み込みます。

3. Quartus IIがサポートする EDA合成ツールのいずれかを使用してデザインを合成し、EDIFネットリスト・ファイル (.edf) またはVQMファイル (.vqm) を生成します。

4. (オプション) Quartus IIがサポートするシミュレーション・ツールのいずれかを使用して、デザインに対して機能シミュレーションを実行します。

5. Quartus IIのSettingsダイアログ (Assignmentsメニュー )では、Quartus II開発ソフトウェアと共に使用するデザイン・エントリ、シンセシス、シミュレーション、タイミング解析、ボード・レベル検証、フォーマル検証、およびフィジカル・シンセシスのツールを指定し、これらのツール用の追加のオプションを指定します。

6. Quartus II開発ソフトウェアを使用してデザインをコンパイルし、配置配線を実行します。フル・コンパイルを実行するか、コンパイル・モジュールを個別に実行できます。

a. Analysis & Synthesisを実行し、デザインを処理して、デザインの機能を適切なライブラリ・モジュールにマップします。

b. フィッタを実行し、デザインを配置配線します。

c. タイミング・アナライザを実行し、デザインに対してタイミング解析を行います。

d. EDA Netlist Writerを実行し、他の EDAツールで使用できるように出力ファイルを生成します。

e. アセンブラを実行し、デザインのプログラミング・ファイルを作成します。

7. (オプション) Quartus IIがサポートするEDAタイミング解析ツールのいずれかを使用して、デザインに対してタイミング解析を実行します。

8. (オプション) Quartus IIがサポートするEDAシミュレーション・ツールのいずれかを使用して、デザインに対してタイミング・シミュレーションを実行します。

9. (オプション) Quartus IIがサポートするEDAボード・レベル検証ツールのいずれかを使用して、ボード・レベルの検証を実行します。

10. (オプション) Quartus IIがサポートするEDAフォーマル検証ツールのいずれかを使用してフォーマル検証を実行し、Quartus IIのフィッティング後のネットリストが合成したネットリストと等価かどうかを確認します。

Page 24: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローEDAツールを用いた場合のデザイン・フロー

14 ■ Introduction to Quartus II Altera Corporation

11. (オプション) Quartus IIがサポートするEDAフィジカル・シンセシス・ツールのいずれかを使用して、フィジカル・シンセシスを実行します。

プログラミング・ファイル、Programmer、およびアルテラのハードウェアを使用してデバイスをプログラムします。または、エンベデッド・プロセッサなど他のシステムで使用できるように、プログラミング・ファイルを別のファイル形式に変換します。

関連情報 参照先

Synplicity社 Synplifyおよび Synplify ProソフトウェアとQuartus II開発ソフトウェアの使い方

アルテラWebサイトのQuartus II Handbook、Volume1 の Chapter 8「Synplicity Synplify and Synplify ProSupport」

Mentor Graphics 社 LeonardoSpectrum ソフトウェアとQuartus II開発ソフトウェアの使い方

アルテラWebサイトのQuartus II Handbook、Volume1 の Chapter 9「Mentor Graphics LeonardoSpectrumSupport」

Mentor Graphics社 Precision RTL SynthesisソフトウェアとQuartus II開発ソフトウェアの使い方

アルテラWebサイトのQuartus II Handbook、Volume1 の Chapter 10「Mentor Graphics Precision RTLSynthesis Support」

Synopsys社 FPGA Compiler II開発ソフトウェアとQuartus II開発ソフトウェアの使い方

アルテラWebサイトのQuartus II Handbook、Volume1のChapter 11「Synopsys FPGA Compiler II BLIS andthe Quartus II LogicLock Design Flow」

Synopsis社 DC FPGAソフトウェアとQuartus II開発ソフトウェアの使い方

アルテラWebサイトのQuartus II Handbook、Volume1 の Chapter 12「Synopsys Design Compiler FPGASupport」

Synplicity 社 Amplify Physical Synthesis ソフトウェアとQuartus II開発ソフトウェアの使い方

アルテラWebサイトのQuartus II Handbook、Volume2のChapter 11「Synplicity Amplify Physical SynthesisSupport」

Mentor Graphics 社 ModelSim ソフトウェアとQuartus II開発ソフトウェアの使い方

アルテラWebサイトのQuartus II Handbook、Volume3のChapter 1「Mentor Graphics ModelSim Support」

Synopsys社 VCSソフトウェアとQuartus II開発ソフトウェアの使い方

アルテラWebサイトのQuartus II Handbook、Volume3のChapter 2「Synopsys VCS Support」

Cadence社 NC-SimソフトウェアとQuartus II開発ソフトウェアの使い方

アルテラWebサイトのQuartus II Handbook、Volume3のChapter 3「Cadence NC-Sim Support」

Synopsys社 PrimeTimeソフトウェアとQuartusII開発ソフトウェアの使い方

アルテラWebサイトのQuartus II Handbook、Volume3のChapter 6「Synopsys PrimeTime Support」

Cadence社 IncisiveソフトウェアとQuartus II開発ソフトウェアの使い方

アルテラWebサイトのQuartus II Handbook、Volume3のChapter 13「Cadence Incisive Conformal Support」

Synopsys社 FormalityソフトウェアとQuartus II開発ソフトウェアの使い方

アルテラWebサイトのQuartus II Handbook、Volume3のChapter 14「Synopsys Formality Support」

Page 25: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローコマンドライン・デザイン・フロー

Altera Corporation Introduction to Quartus II ■ 15

コマンドライン・デザイン・フローQuartus II 開発ソフトウェアでは、完全なコマンドライン・インタフェース・ソリューションを提供しています。このソリューションは、デザイン・フローの各段階でコマンド入力およびオプションの実行を可能にします。コマンドライン・フローを使用すると、メモリの使用を低減できるだけでなく、Tclコマンドを含むスクリプトや標準的なコマンドライン・オプションやコマンドを使ってQuartus II開発ソフトウェアを制御したり、makefileを作成することができます。図 9に、コマンドライン・デザイン・フローを示します。

図 9. コマンドライン・デザイン・フロー

Page 26: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローコマンドライン・デザイン・フロー

16 ■ Introduction to Quartus II Altera Corporation

実行コマンド

Quartus II 開発ソフトウェアは、デザイン・フローの各段階でそれぞれ実行コマンドを用意しています。実行コマンドは実行されている間だけメモリを占有します。これらの実行コマンドは、標準的なコマンドライン用コマンド、スクリプトまたはTclスクリプトと一緒に使用したり、makefileスクリプトに含んで使用することができます。利用可能なすべての実行コマンドのリストは、表 3を参照してください。

[

☞ スタンドアロン・グラフィカル・ユーザ・インタフェース実行コマンド

Quartus II開発ソフトウェアは、スタンドアロン・グラフィカル・ユーザ・インタフェース (GUI) 実行コマンドを提供しています。qmegawiz実行コマンドには、スタンドアロンGUI のMegaWizard Plug-InManager のバージョン、quartus_pgmw 実行コマンドには、プログラマ用のスタンドアロン GUI、quartus_stpw実行コマンドには、SignalTap IIロジック・アナライザ用のスタンドアロンGUIが用意されています。

表 3. 実行コマンド (1 /2 )

コマンド名称 コマンド機能 内容

quartus_map Analysis & Synthesis プロジェクトがまだ作成されていない場合は作成し、プロジェクト・データベースを作成してデザインを合成し、プロジェクトのデザイン・ファイルに対してテクノロジ・マッピングを実行します。

quartus_fit フィッタ デザインの配置配線を行います。フィッタの実行前に、Analysis & Synthesisを実行しておく必要があります。

quartus_drc デザイン・アシスタント

一連のデザイン・ルールに基づき、デザインの信頼性をチェックします。デザイン・アシスタントは、HardCopyデバイスに変換する前のデザインの信頼性チェックに特に役立ちます。デザイン・アシスタントの実行前に、Analysis &Synthesis またはフィッタのいずれかを実行しておく必要があります。

quartus_tan タイミング解析 実装した回路の速度性能を解析します。タイミング解析の実行前に、フィッタを実行しておく必要があります。

quartus_asm アセンブラ ターゲット・デバイスのプログラミングまたはコンフィギュレーション用のプログラミング・ファイルを1つまたは複数作成します。アセンブラの実行前に、フィッタを実行しておく必要があります。

quartus_eda EDA Netlist Writer 他のEDAツールで使用できるネットリスト・ファイルおよび他の出力ファイルを生成します。EDA Netlist Writerの実行前に、使用したオプションに基づき、Analysis & Synthesis、フィッタ、またはタイミング・アナライザをそれぞれ実行しておく必要があります。

Page 27: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローコマンドライン・デザイン・フロー

Altera Corporation Introduction to Quartus II ■ 17

quartus_cdb コンパイル・データベース・インタフェース (VQM Writerを含む)

Quartus IIコンパイル・データベース用のVQMファイルを含めた内部用ネットリスト・ファイルを生成し、バック・アノテーションおよびLogicLock機能に使ったり、後で行うコンパイルのフィットを保持するために、バック・アノテーションされたデバイスおよびリソース・アサインメントに使用できるようにします。また、バージョン互換のデータベースをインポートおよびエクスポートします。コンパイル・データベース・インタフェースの実行前に、フィッタまたはAnalysis & Synthesisのいずれかを実行しておく必要があります。

quartus_sim シミュレータ デザインに対し機能シミュレーションまたはタイミング・シミュレーションを実行します。機能シミュレーションの実行前にAnalysis & Synthesisを、タイミング・シミュレーションの前にタイミング解析を実行しておく必要があります。

quartus_pow 電力解析 デザインのトータルなダイナミックおよびスタティック消費電力の解析および見積りを行います。 出力信号に対し、トグル・レートやスタティックな確率を計算します。 PowerPlay Power Analyzerの実行前に、フィッタを実行しておく必要があります。

quartus_pgm Programmer アルテラのデバイスをプログラムします。

quartus_cpf プログラミング・ファイルの変換

プログラミング・ファイルを二次プログラミング・ファイル形式に変換します。

quartus_stp SignalTap IIロジック・アナライザ

SignalTap IIファイル (.stp) を設定します。アセンブラの後に実行すると、SignalTap IIロジック・アナライザは、デバイスが高速で動作中でも内部デバイス・ノードから信号を取り込みます。

quartus_swb Software Builder Excaliburエンベデッド・プロセッサのデザインに必要なソフトウェアやプログラミング・ファイルを作成します。

quartus_sh Tclシェル Quartus II開発ソフトウェアのTclスクリプト・シェルを提供します。

表 3. 実行コマンド (2 /2 )

コマンド名称 コマンド機能 内容

Page 28: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローコマンドライン・デザイン・フロー

18 ■ Introduction to Quartus II Altera Corporation

各実行コマンドは個別に実行できますが、次のコマンドを使用してコンパイルに関するすべての実行コマンドを同時に実行することも可能です。

quartus_sh --flow compile <プロジェクト名 > [-c < リビジョン名 >]

このコマンドにより、quartus_map、quartus_fit、quartus_asm、およびquartus_tan実行コマンドが、フル・コンパイルの一部として実行されます。設定によっては、オプションのquartus_drc、quartus_eda、およびquartus_cdb実行コマンドが実行される場合もあります。

一部の実行コマンドは、テキスト・ベースのレポート・ファイルを個別に作成し、任意のテキスト・エディタを使用して表示することが可能です。各レポート・ファイルの名前には、次の形式が使用されます。

<リビジョン名>.<実行コマンド名の短縮形>.rpt

☞ Quartus II実行コマンドのヘルプの参照

各 Quartus II 実行コマンドで利用できるコマンドライン・オプションのヘルプを参照するには、コマンド・プロンプトで次のコマンドのいずれかを入力します。

<実行コマンド名> -h<実行コマンド名> --help<実行コマンド名> --help=<トピックまたはオプション名>

また、Quartus II実行コマンドおよびTcl APIヘルプ・ブラウザを使用してヘルプを参照できます。このブラウザは、コマンドラインおよびTcl APIヘルプを参照できるTclおよびTkベースのGUIです。このヘルプを使用するには、コマンド・プロンプトで次のコマンドを入力します。

quartus_sh --qhelp

☞ quartus_cmd実行コマンド

Quartus II開発ソフトウェアの以前のバージョンで、quartus_cmd実行コマンドを使用してプロジェクトのコンパイルを実行した場合、この実行コマンドは引き続き後方互換性をサポートしていますが、アルテラではquartus_cmd実行コマンドを使用するのではなく、16ページの表 3にある実行コマンドをすべての新規デザインに使用することを推奨します。デザインをコンパイルするためにquartus_cmd実行コマンドを使用していた場合、以下のオプションでquartus_sh実行コマンドを使用して、同じ機能を得ることができます。

quartus_sh --flow compile <プロジェクト名> [-c < リビジョン名> ]

Page 29: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローコマンドライン・デザイン・フロー

Altera Corporation Introduction to Quartus II ■ 19

例えば、chiptripプロジェクトでquartus_map実行コマンドを実行する場合、コマンド・プロンプトで次のコマンドを入力します。

quartus_map chiptrip

quartus_map実行コマンドはAnalysis & Compileを実行し、chiptrip.map.rptという名前のレポート・ファイルを作成します。

Quartus II開発ソフトウェアは、Quartus II実行コマンドを使用した定義済みコンパイル・フローを提供します。quartus_sh --flowコマンドまたはTcl execute_flowコマンドが設定されているこれらのコマンドを使用することができます。表 4に、標準的なコンパイル・フローを示します。

☞ Quartus II設計ファイルと Quartus II実行コマンドの使い方

Quartus II実行コマンドを使用している場合、Quartus II開発ソフトウェアはデフォルトでプロジェクト名と同じ名前のリビジョンを使用します。プロジェクト名と異なる名前のリビジョンを使用するには、Quartus II設定ファイル (.qsf)に対応したリビジョンの名前を指定する-cオプションを使用できます。例えば、speed_ch.qsfファイルに対応するspeed_chという名前のリビジョンを持つchiptripプロジェクトでquartus_map実行コマンドを実行する場合、コマンド・プロンプトで次のコマンドを入力します。

quartus_map chiptrip -c speed_ch

quartus_map 実行コマンドは、リビジョンおよび設定を使用して Analysis & Synthesis を実行し、speed_ch.map.rptという名前のレポート・ファイルを作成します。

表 4. コマンドライン・コンパイル・フロー (1 /2 )

フロー 説明quartus_sh --flowまたはexecute_flowのコマンドラインのオプション

フル・コンパイル デザインのフル・コンパイルを実行します。 compile

コンパイルおよびシミュレーション

タイミング・シミュレーション・モードの場合、フル・コンパイルを実行し、現在のデザインをシミュレーションします。ファンクショナル・シミュレーション・モードの場合、機能シミュレーション用ネットリストを生成し、現在のデザインをシミュレーションします。

compile_and_simulate

Page 30: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローコマンドライン・デザイン・フロー

20 ■ Introduction to Quartus II Altera Corporation

標準コマンドライン用コマンドおよびスクリプト

Quartus II実行コマンドは、Perlスクリプト、バッチ・ファイル、およびTclスクリプトといった任意のコマンドライン・スクリプト手法で使用できます。これらのスクリプトは、新規プロジェクトの作成または既存のプロジェクトのコンパイルに合わせてデザインできます。また、コマンド・プロンプトまたはコンソールから実行コマンドを実行できます。

AttemptSimilar Placement

現在のコンパイルにおけるネットリストと配置を前回の情報と比較した上で、前回のコンパイルに対してフル・コンパイルを実行します。 フィッタは、現在のコンパイルに対し、前回のコンパイルからできるだけ多くのノードを配置できるようにコンパイル内容を比較します。

attempt_similar_placement

SignalProbe

コンパイル既存のフィッティングに影響を与えずにユーザ指定の信号を出力ピンに送るため、デザインに対しフル・コンパイルを実行しなくても信号をデバッグすることができます。

signalprobe

表 4. コマンドライン・コンパイル・フロー (2 /2 )

フロー 説明quartus_sh --flowまたはexecute_flowのコマンドラインのオプション

関連情報 参照先

コンパイル・フロー Quartus II ヘルプの「Overview: Using CompilationFlows」

Page 31: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローコマンドライン・デザイン・フロー

Altera Corporation Introduction to Quartus II ■ 21

図 10は、標準コマンドライン・スクリプトの例を示しています。この例では、QuartusII開発ソフトウェアに含まれるfiltrefチュートリアル・デザイン用の、プロジェクトの作成方法、Analysis & Synthesisの実行方法、配置配線の実行方法、タイミング解析の実行方法、およびプログラミング・ファイルの生成方法を説明しています。チュートリアル・デザインをインストールした場合、 /altera/qdesigns<versionnumber>/tutorial ディレクトリにあります。アルテラでは、デザイン・フロー例をコンパイルするために、新規ディレクトリを作成し、すべてのデザイン・ファイル (*.v、*.bsf、*.bdf) を /altera/qdesigns<version number>/tutorial ディレクトリから、新規作成したディレクトリにコピーすることを推奨します。新規プロジェクト・ディレクトリでは、図 10にある4つのコマンドを実行するか、バッチ・ファイルまたはシェル・スクリプトに保存することもできます。 これらの例では、/<Quartus IIシステム・ディレクトリ >/bin ディレクトリ (UNIX または Linux ワークステーションでは /<Quartus IIシステム・ディレクトリ>/<プラットフォーム> ディレクトリ、ここで<プラットフォーム>にはsolaris、linux、hp_IIのいずれかが入ります) がPATH環境変数に含まれていると仮定しています。

図 10. コマンドライン・スクリプトの例

図 11は、サンプル・コマンドライン・スクリプトを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

デバイスのフィッティングを実行し、グローバル・タイミング要求を指定

タイミング解析を実行

プログラミング・ファイルを生成

Page 32: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローコマンドライン・デザイン・フロー

22 ■ Introduction to Quartus II Altera Corporation

図 11. UNIXコマンドライン・シェル・スクリプトの例

#!/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

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

関連情報 参照先

コマンドライン・スクリプト アルテラWebサイトのQuartus II Handbook、Volume2のChapter 2「Command-Line Scripting」

アルテラWebサイトのQuartus II Scripting ReferenceManual

Page 33: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローコマンドライン・デザイン・フロー

Altera Corporation Introduction to Quartus II ■ 23

Tclコマンド

Quartus II開発ソフトウェアでは、Quartus IIプロジェクトの次のタスクを実行するため、Tclコマンドの実行またはQuartus II実行コマンドを使用したTclスクリプトの作成および実行が可能です。Tcl APIのファンクションには、次のカテゴリが含まれます。

■ プロジェクトおよびアサインメント・ファンクション■ デバイス・ファンクション■ 拡張デバイス・ファンクション■ フロー・ファンクション■ タイミング・ファンクション■ 拡張タイミング・ファンクション■ シミュレータ・ファンクション■ レポート・ファンクション■ タイミング・レポート・ファンクション■ バック・アノテート・ファンクション■ LogicLockファンクション■ Chip Editorファンクション■ その他のファンクション

TclスクリプトをQuartus II開発ソフトウェアで使用するには、いくつかの方法があります。TclのQuartus II APIからコマンドを使用して、Tclスクリプトを作成できます。Tclスクリプトは、Tclスクリプト・ファイル (.tcl) として保存する必要があります。

Quartus IIテキスト・エディタのTemplatesコマンド (Editメニュー ) では、テキスト・ファイルにTclテンプレートおよびQuartus II Tclテンプレート (Quartus IIコマンド用) を挿入して、Tclスクリプトを作成できます。Quartus II Tclテンプレートで使用されるコマンドは、Tcl APIコマンドと同じ構文を使用します。別のプロジェクトの土台として既存のプロジェクトを使用する場合、Generate Tcl File for Projectコマンド (Projectメニュー ) でプロジェクトのTclスクリプト・ファイルを生成できます。

Tclスクリプトをコマンドライン・モードでquartus_sh実行コマンドと共に実行するには、Quartus II Tcl Consoleウィンドウで、またはTcl Scriptsダイアログ (Toolsメニュー ) から行うことができます。

Page 34: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローコマンドライン・デザイン・フロー

24 ■ Introduction to Quartus II Altera Corporation

図 12は、Tclスクリプトの例を示しています。

☞ Tclコマンドのヘルプの参照

Quartus II開発ソフトウェアには、Quartus IIコマンドラインおよびTcl APIヘルプ・ブラウザが含まれています。このブラウザは、TclおよびTkベースのGUIで、コマンドラインおよびTcl APIのヘルプを参照できます。このヘルプを使用するには、コマンド・プロンプトで次のコマンドを入力します。

quartus_sh --qhelp

また、グラフィカル・ユーザ・インタフェースのQuartus IIヘルプでTCL APIヘルプを参照することもできます。 詳しくは、Quartus IIヘルプの「Overview: Using Tcl Scripting」および「API Functions for Tcl」を参照してください。

図 12. Tclスクリプトの例 (1 /2 )

# 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}

Page 35: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローコマンドライン・デザイン・フロー

Altera Corporation Introduction to Quartus II ■ 25

#------ 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

}

#------ 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 "-----------------------------------------------------"

図 12. Tclスクリプトの例 (2 /2 )

Page 36: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローコマンドライン・デザイン・フロー

26 ■ Introduction to Quartus II Altera Corporation

Makefileスクリプトの作成

Quartus II開発ソフトウェアは、Quartus II実行コマンドを使用するmakefileスクリプトをサポートし、広範囲なスクリプト言語と統合することができます。図 13は、標準makefileスクリプトからの抜粋です。

関連情報 参照先

Tclスクリプティング アルテラWebサイトのQuartus II Handbook、Volume2のChapter 3「Tcl Scripting」

Quartus IIヘルプの「Overview: Using Tcl Scripting」および「API Functions for Tcl」

アルテラWebサイトのQuartus II Scripting ReferenceManual

図 13. Makefileスクリプトの抜粋 (1 /3 )

#################################################################### 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

Page 37: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フローコマンドライン・デザイン・フロー

Altera Corporation Introduction to Quartus II ■ 27

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 >

$(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)

図 13. Makefileスクリプトの抜粋 (2 /3 )

Page 38: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フロー設計手法およびデザイン・プラン

28 ■ Introduction to Quartus II Altera Corporation

設計手法およびデザイン・プラン新規デザインを作成する場合、Quartus II 開発ソフトウェアが提供する設計手法を考慮することが重要です。例えば、LogicLock 機能では、トップダウンまたはボトムアップ設計手法を使用したり、ブロック・ベースのデザイン・フローが提供されています。EDAデザイン・エントリおよび合成ツールの利用に関わらず、これらのデザイン・フローを使用することができます。

map.chg:$(STAMP) map.chg

fit.chg:$(STAMP) fit.chg

tan.chg:$(STAMP) tan.chg

asm.chg:$(STAMP) asm.chg

図 13. Makefileスクリプトの抜粋 (3 /3 )

関連情報 参照先

実行コマンド Quartus IIヘルプの「Overview: Using Command-LineExecutables」

アルテラWebサイトのQuartus II Handbook、Volume2のChapter 2「Command-Line Scripting」

TclコマンドおよびTclスクリプト Quartus IIヘルプの「Overview: Using Tcl from the UserInterface」、「Overview: Using Tcl Scripting」、および「API Functions for Tcl」

アルテラWebサイトのQuartus II Handbook、Volume2のChapter 3「Tcl Scripting」

アルテラWebサイトのQuartus II Scripting ReferenceManual

Page 39: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フロー設計手法およびデザイン・プラン

Altera Corporation Introduction to Quartus II ■ 29

トップダウン設計手法とボトムアップ設計手法

トップダウン・デザイン・フローでは、デザイン全体に対する出力ネットリスト・ファイルは1つだけです。これにより、境界や階層を超えて、デザイン全体としての最適化を実行することができ、多くの場合この手法の方が管理も簡単です。

ボトムアップ設計手法では、各デザイン・モジュールに対して個々にネットリストが存在します。この手法では、各モジュールを個別にコンパイルし、それぞれのモジュールに異なる最適化技法を適用できます。個々のモジュールを変更しても、他のモジュールの最適化には影響を与えません。また、ボトムアップ設計手法は、他のデザインでデザイン・モジュールを再利用できます。

ブロック・ベースのデザイン・フロー

ボトムアップに行う LogicLock機能を使ったブロック・ベースのデザイン・フローでは、個々のモジュールを別々にデザイン、最適化し、最適化したすべてのモジュールをトップレベル・デザインに統合して、デザイン全体を検証できます。各モジュールには個別のネットリストがあり、合成および最適化の後にトップレベル・デザインに組み込むことができます。トップレベル・デザインの各モジュールは、他のモジュールのパフォーマンスに影響を与えません。一般的にブロック・ベース・デザイン・フローの概念は、モジュール・ベース、階層構造、インクリメンタル、そしてチームベースのデザイン・フローで使用できます。

ブロック・ベースのデザイン・フローでは、EDA デザイン・エントリおよび合成ツールを使用して個々のモジュールをデザインおよび合成した後で、そのモジュールをQuartus II開発ソフトウェアのトップレベル・デザインに組み込むか、EDAデザイン・エントリおよび合成ツールにおいてブロック・ベース・デザインを完全にデザインおよび合成することができます。 ブロック・ベースのデザイン・フローについて詳しくは、105ページの「第6章: ブロック・ベース・デザイン」を参照してください。

Page 40: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 1 章 : デザイン・フロー設計手法およびデザイン・プラン

30 ■ Introduction to Quartus II Altera Corporation

デザインの分割

Quartus II開発ソフトウェアまたは他のEDAツールで階層構造デザインを作成するとき、デザインは別々のモジュールに分割されます。デザイン・プランの段階で、以下の項目を考慮に入れてデザインの分割を行ってください。

■ デザインを分割する場所■ パーティション間のクロック数とI/O接続の数■ ステート・マシンの配置■ タイミングのクリティカルな機能をそれ以外の機能から分離■ 階層構造モジュールにおけるクリティカル・パスの制限■ デザイン階層構造のみのトップレベルでのみトライ・ステート・ドライバを使

用するような個々のモジュールの入出力の決定

関連情報 参照先

デザイン・プランと分割 アルテラWebサイトのQuartus II Handbook、Volume1 の Chapter 5「Design Recommendations for AlteraDevices」

Page 41: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

デザイン・エントリ

第 2章の内容 :

はじめに 32

プロジェクトの作成 33

デザインの作成 41

アルテラのメガファンクション 452

第 2章

Page 42: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリはじめに

32 ■ Introduction to Quartus II Altera Corporation

はじめにQuartus® II プロジェクトは、デザインの動作の成功に必要なすべてのデザイン・ファイル、ソフトウェア・ソース・ファイル、およびその他の関連するファイルを含んでいます。リビジョン (Revisions) の使用により、ユーザのプロジェクトに対する設定およびアサインメントの複数のバージョンを比較し、デザイン要求をすばやく効果的に達成することができます。 Quartus IIブロック・エディタ、テキスト・エディタ、MegaWizard® Plug-In Manager (Toolsメニュー )、およびEDAデザイン・エントリ・ツールを使用して、アルテラのメガファンクション、LPM (Library ofParameterized Modules) ファンクション、およびIP (Intellectual Property) ファンクションを含むデザインを作成できます。図 1に、デザイン・エントリ・フローを示します。

図 1. デザイン・エントリ・フロー

Page 43: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリプロジェクトの作成

Altera Corporation Introduction to Quartus II ■ 33

プロジェクトの作成New Project Wizard (Fileメニュー) またはquartus_map実行コマンドを使用して、新規プロジェクトを作成できます。新規プロジェクトの作成時には、プロジェクトの作業ディレクトリを指定し、プロジェクト名をつけ、トップレベル・デザイン・エンティティを指定します。また、プロジェクトで使用するターゲット・デバイス・ファミリまたは単体のデバイスを指定すると同時に (または、Quartus II開発ソフトウェアが、自動的にデバイスを選択できるようにして)、使用するデザイン・ファイル、他のソース・ファイル、ユーザ・ライブラリ、EDAツールを指定できます。表 1に、Quartus IIプロジェクトのプロジェクトおよび設定ファイルの概要を示します。

プロジェクトを作成すると、Settingsダイアログ (Assignmentsメニュー ) を使用して、デザイン・ファイルおよび他のファイルのプロジェクトへの追加や削除が可能になります。Quartus IIのAnalysis & Synthesisのとき、Quartus II開発ソフトウェアは、Filesページに表示される順番でファイルを処理します。

また、Copy Projectコマンド (Projectメニュー ) を使用して、プロジェクト全体を新しいディレクトリにコピーすることができます。このコマンドにより、プロジェクト・デザイン・データベース・ファイル、デザイン・ファイル、設定ファイル、およびレポート・ファイルを新しいディレクトリにコピーすることができ、プロジェクトを新しいディレクトリで開けます。新しいディレクトリが存在しない場合は、Quartus II開発ソフトウェアが作成します。

表 1. Quartus IIプロジェクト・コンフィギュレーション・ファイル

ファイル・タイプ 説明

Quartus IIプロジェクト・ファイル (.qpf) プロジェクトおよびプロジェクトに関連するリビジョンを作成したQuartus II開発ソフトウェアのバージョンを指定します。

Quartus II設定ファイル (.qsf) アサインメント・エディタ、フロアプラン・エディタ、Settingsダイアログ (Assignmentsメニュー)、Tclスクリプト、またはQuartus II実行コマンドで作成したすべてのリビジョン全体または個々のアサインメントを含みます。プロジェクトの各リビジョンに 1 つのQSFがあります。

Quartus II Workspaceファイル (.qws) ウィンドウの位置、ウィンドウ内にオープンするファイルやその位置などのユーザの好みやその他の情報を含みます。

Quartus IIデフォルト設定ファイル (.qdf)

\<Quartus IIシステム・ディレクトリ>\binディレクトリに位置し、すべてのグローバルなデフォルト・プロジェクト設定を含みます。これらの設定はQSFの設定により上書きされます。

Page 44: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリプロジェクトの作成

34 ■ Introduction to Quartus II Altera Corporation

Project Navigatorは、現在のリビジョンに関連する情報を表示し、プロジェクト階層、ファイル、およびデザイン・ユニットをグラフィカルに提供し、様々なメニュー・コマンドへのショートカットとなります。また、Customize Columnsコマンド (右ボタンのポップアップ・メニュー ) でProject Navigatorを表示して、情報をカスタマイズすることもできます。

図 2. Project Navigatorウィンドウ

関連情報 参照先

Quartus IIプロジェクトの作成および実行 Quartus IIヘルプの「Overview: Using the New ProjectWizard」、「Overview: Using the Project Navigator」、および「Overview: Working with Quartus II Projects」

Quartus IIチュートリアルの「Design Entry module」

Quartus IIプロジェクトの管理 アルテラWebサイトのQuartus II Handbook、Volume2のChapter 4「Quartus II Project Management」

Page 45: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリプロジェクトの作成

Altera Corporation Introduction to Quartus II ■ 35

リビジョン

デザインにおけるデザイン・ファイルの設定およびアサインメントの異なるグループの指定、保存にリビジョン (Revisions) を使用することができます。リビジョンにより、デザインにおける同一のデザイン・ファイルの異なる設定およびアサインメントを使って結果を比較できます。

リビジョンを作成するとき、Quartus II 開発ソフトウェアはリビジョンに関連したすべての設定およびアサインメントを含む個別のQSFを作成し、それをデザインのトップレベル・ディレクトリに配置します。デザインにおけるあらゆるエンティティのリビジョンを作成することができます。 Revisions ダイアログで任意のリビジョンのトップレベル・エンティティを、または Settingsダイアログ (Assignmentsメニュー) のGeneralページで現在のトップレベル・エンティティを表示することができます。

Revisionsダイアログ (Projectメニュー ) では、現在のプロジェクトのすべてのリビジョンを表示、特定のデザイン・エンティティを作成したり、リビジョンの削除、またはコンパイル、シミュレーション、タイミング解析の現在のリビジョンとして特定のリビジョンを設定することができます。Revisionsダイアログの情報は、リビジョン名やリビジョンのために選択されたファミリのデバイス・トップレベル・デザイン・エンティティを表示します。チェック・マーク・アイコンは、現在のリビジョンを示します。Create Revisionダイアログを使用して、新しいリビジョン (既存のリビジョンをベース ) を作成することができ、リビジョンの説明を入力し、リビジョンの作成に使用されたデータベースをコピーして、そのリビジョンを現在のリビジョンとして設定することができます。 また、Revisionsダイアログの表示項目を選択して変更することができます。図 3を参照してください。

Page 46: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリプロジェクトの作成

36 ■ Introduction to Quartus II Altera Corporation

図 3. Revisionsダイアログ

Page 47: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリプロジェクトの作成

Altera Corporation Introduction to Quartus II ■ 37

リビジョンの作成は、プロジェクトのソース・デザイン・ファイルに影響を与えません。リビジョンを作成し、デザインに対する現在のリビジョンとして設定してから、エンティティに対するアサインメントと設定を作成することができます。この機能は、同一のデザイン・エンティティの異なる設定およびアサインメントを作成することができ、これらの設定を比較の異なるリビジョンとして保存できます。各リビジョンは対応するレポート・ファイルを持ち、ファイルの内容から他のリビジョンに対して設定やアサインメント変更による効果を比較することができます。また、RevisionsダイアログのCompare Revisionsダイアログを使用して、異なるリビジョンとのコンパイル結果を比較することもできます。 Compare Revisionsダイアログには、ResultsタブおよびAssignmentsタブがあります。 デフォルトでは、プロジェクトのすべてのリビジョンを表示しますが、表示したいリビジョンを選択または順番の調整などをカスタマイズすることができます。図 4に、各リビジョンの結果を比較するCompare RevisionsダイアログのResultsタブの内容を示します。

図 4. Compare Revisionsダイアログの Resultsタブ

Page 48: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリプロジェクトの作成

38 ■ Introduction to Quartus II Altera Corporation

図 5は、各リビジョンのアサインメント設定を比較する Compare Revisions のAssignmentsタブの内容です。

図 5. Compare Revisionsダイアログの Assignmentsタブ

関連情報 参照先

リビジョン アルテラWebサイトのQuartus II Handbook、Volume2のChapter 4「Quartus II Project Management」

Page 49: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリプロジェクトの作成

Altera Corporation Introduction to Quartus II ■ 39

バージョン互換のデータベース

Quartus II 開発ソフトウェアは、後のバージョンで使用可能なバージョン互換のデータベース・ファイルをエクスポートできるため、後のバージョンでデザインをフル・コンパイルする必要がありません。 Analysis & Synthesisまたはquartus_map実行コマンドの実行後は、デザイン・フローのどの段階でもデータベースをエクスポートすることができます。

この機能を使用してデザインの作成と最適化を行ってから、後のバージョンでのタイミング解析用データベースを保存しておけば、アップデートされたタイミング・モデルでもタイミング要求を満たすことができます。

Quartus II 開発ソフトウェアの後のバージョンで使用するデータベースをエクスポートするには、Export Databaseコマンド (Projectメニュー ) を使用して、データベースをエクスポートするディレクトリを選択します。 次に、Quartus II開発ソフトウェアがデザイン・データベースをエクスポートします。 その後、後のバージョンのImport Databaseコマンド (Projectメニュー )でプロジェクト・フォルダを指定してデザイン・データベースをインポートし、デザインのタイミング要求を検証するためにタイミング解析を実行できます。

また、quartus_cdb実行コマンドを使用して、デザイン・データベースをエクスポートまたはインポートすることもできます。バージョン互換のデータベースは、Quartus II開発ソフトウェアのバージョン4.1以降のバージョンで使用できます。

☞ quartus_cdb実行コマンドの使い方

quartus_cdb実行コマンドを使用して、バージョン互換のデータベースをインポートまたはエクスポートできます。

quartus_cdb実行コマンドを使用してデータベースをインポートまたはエクスポートするには、コマンド・プロンプトで以下のコマンドを入力します。

quartus_cdb <プロジェクト> -c <リビジョン> --import_database=<プロジェクト・ディレクトリ>quartus_cdb <プロジェクト> -c <リビジョン> --export_database=<プロジェクト・ディレクトリ>

quartus_cdb実行コマンドでヘルプを参照する場合は、コマンド・プロンプトで次のコマンドのいずれかを入力します。

quartus_cdb -hquartus_cdb --helpquartus_cdb --help=<トピック名>

Page 50: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリプロジェクトの作成

40 ■ Introduction to Quartus II Altera Corporation

MAX+PLUS IIプロジェクトの変換

Convert MAX+PLUS II Projectコマンド (Fileメニュー) は、既存のMAX+PLUS IIプロジェクトのアサインメント&コンフィギュレーション・ファイル (.acf) またはデザイン・ファイルを選択し、新しいQuartus IIプロジェクトに変換するコマンドです。この中にはオリジナルのMAX+PLUS IIプロジェクトでサポートされていたアサインメントや制約がすべて含まれています。つまり、Convert MAX+PLUS II Projectコマンドは、自動的にMAX+PLUS IIアサインメントや制約をインポートし、新しくプロジェクト・ファイルを作成し、そして新規のQuartus IIプロジェクトとしてオープンします。図 6 に、Convert MAX+PLUS II Projectダイアログを示します。

図 6. Convert MAX+PLUS II Projectダイアログ

関連情報 参照先

バージョン互換のデータベース アルテラWebサイトのQuartus II Handbook、Volume2のChapter 4「Quartus II Project Management」

関連情報 参照先

MAX+PLUS IIプロジェクトの変換 Quartus IIチュートリアルの「MAX+PLUS II Conversionmodule」

リビジョンの作成および使い方 Quartus IIヘルプの「Overview: Using Revisions」

Page 51: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリデザインの作成

Altera Corporation Introduction to Quartus II ■ 41

デザインの作成Quartus II開発ソフトウェアを使用して、Quartus IIブロック・エディタでデザインを作成するか、Quartus IIテキスト・エディタを使用して、AHDL、Verilog HDL、またはVHDLデザイン言語を使用するHDLデザインを作成できます。

また、Quartus II開発ソフトウェアは、EDIF入力ファイル (.edf) から作成されたデザイン、またはEDAデザイン・エントリおよび合成ツールで生成したVQMファイル (.vqm) もサポートしています。さらに、EDA デザイン・エントリ・ツールにVerilog HDLまたはVHDLデザインを作成し、EDIF入力ファイルおよびVQMファイルを生成するか、Quartus IIプロジェクトで直接Verilog HDLまたはVHDLデザイン・ファイルを使用できます。EDA合成ツールを使用したEDIF入力ファイルまたはVQMファイルの生成について詳しくは、 「第 4章: 論理合成」、69ページの「他のEDA合成ツール」を参照してください。

表 2に示すデザイン・ファイル・タイプを使用して、Quartus II開発ソフトウェアまたはEDAデザイン・エントリ・ツールでデザインを作成できます。

表 2. サポートされているデザイン・ファイル・タイプ

ファイル・タイプ 説明 拡張子

ブロック・デザイン・ファイル

Quartus II のブロック・エディタで作成されたブロック図のデザイン・ファイル

.bdf

EDIF入力ファイル 任意の標準EDIFネットリスト・ライタで生成されたEDIFバージョン2 0 0ネットリスト・ファイル

.edf

.edif

グラフィック・デザイン・ファイル

MAX+PLUS IIのグラフィック・エディタで作成された回路図デザイン・ファイル

.gdf

テキスト・デザイン・ファイル

アルテラ・ハードウェア記述言語(AHDL)で記述されたデザイン・ファイル

.tdf

Verilogデザイン・ファイル Verilog HDL で定義されたデザイン論理を含むデザイン・ファイル

.v

.vlg

.verilog

VHDLデザイン・ファイル VHDL で定義されたデザイン論理を含むデザイン・ファイル

.vh

.vhd

.vhdl

VQMファイル Synplicity社のSynplifyソフトウェアまたはQuartus II開発ソフトウェアが生成したVerilog HDLフォーマットのネットリスト・ファイル

.vqm

Page 52: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリデザインの作成

42 ■ Introduction to Quartus II Altera Corporation

Quartus IIブロック・エディタ

ブロック・エディタを使用すると、回路図またはブロック図を使ったグラフィック・デザイン情報の入力および編集を行うことができます。Quartus IIブロック・エディタは、ブロック・デザイン・ファイルおよびMAX+PLUS IIグラフィック・デザイン・ファイルを読み込みおよび編集します。 Quartus II 開発ソフトウェアのグラフィック・デザイン・ファイルを開き、ブロック・デザイン・ファイルとして保存できます。ブロック・エディタは、MAX+PLUS IIソフトウェアのグラフィック・エディタに類似しています。

各ブロック・デザイン・ファイルは、デザインにおいてロジックを示すブロックおよびシンボルを含みます。ブロック・エディタは、各ブロック図、回路図、またはシンボルで表されるデザイン・ロジックをプロジェクトに組み込みます。

ブロック・エディタは、ブロック・デザイン・ファイルのブロックから新規デザイン・ファイルを作成したり、ブロックおよび記号を変更したときにデザイン・ファイルを更新したり、ブロック・デザイン・ファイルからブロック・シンボル・ファイル (.bsf)、AHDLインクルード・ファイル (.inc)、およびHDLファイルを生成することができます。また、コンパイルの前にブロック・デザイン・ファイルのエラーを解析できます。さらに、ブロック・エディタには、バスおよびノード接続、信号名のマッピングをはじめとした、ブロック・デザイン・ファイルでのブロックとプリミティブを接続する一連のツールが用意されています。

ガイドラインやグリッド間隔、配線の結合、配色や画面要素、拡大 /縮小、および別のブロックやプリミティブ・プロパティといったブロック・エディタの表示オプションを好みに合わせて変更することができます。

ブロック・エディタの次の機能を使用することにより、Quartus II 開発ソフトウェアのブロック・デザイン・ファイルの作成に役立ちます。

■ アルテラのメガファンクションのインスタンス: MegaWizard Plug-In Manager(Toolsメニュー ) により、メガファンクションのカスタム・バリエーションを含むデザイン・ファイルを作成または変更できます。これらのカスタム・メガファンクション・バリエーションは、LPMファンクションを含むアルテラが提供するメガファンクションに基づいています。メガファンクションは、ブロック・デザイン・ファイルのブロックで表示されます。48ページの「MegaWizardPlug-In Manager」を参照してください。

Page 53: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリデザインの作成

Altera Corporation Introduction to Quartus II ■ 43

■ ブロックおよびプリミティブ記号の挿入: ブロック図では、ブロックと呼ばれる矩形の記号が使用され、デザイン・エンティティおよび対応する割り当てられた信号を表しており、トップダウン・デザインに有効です。ブロックは、対応する信号のフローを表すコンジットで接続されます。ブロック図を排他的に使用してデザインを表すか、回路図要素で結合できます。

Quartus II開発ソフトウェアは、ブロック・エディタで使用できるプリミティブ、LPMファンクション、および他のメガファンクションを含む様々なロジック・ファンクション用の記号を提供しています。

■ ブロックまたはブロック・デザイン・ファイルからのファイルの作成: 階層的なプロジェクトを容易に作成するために、ブロック・エディタのCreate/Updatecommand (Fileメニュー ) を使用して、他のブロック・デザイン・ファイル、AHDLインクルード・ファイル、Verilog HDLおよびVHDLデザイン・ファイルの作成、およびQuartus IIブロック・シンボル・ファイルをブロック・デザイン・ファイル内のブロックから作成することができます。また、Verilogデザイン・ファイル、VHDLデザイン・ファイル、およびブロック・シンボル・ファイルをブロック・デザイン・ファイルから作成できます。

Quartus IIテキスト・エディタ

Quartus IIテキスト・エディタは、AHDL、VHDL、Verilog HDL、およびTclスクリプト言語でテキスト・ベースのデザインを入力可能な、柔軟性のあるツールです。また、Quartus II 開発ソフトウェア用に作成したテキスト・ファイルや、このソフトウェアを使って作成したテキスト・ファイルを含めたASCIIテキスト・ファイルの入力、編集、表示を行うことができます。

さらに、テキスト・エディタにより、現在のファイルに任意のAHDL記述や文節のテンプレート、Tclコマンド、またはサポートされているVHDLまたはVerilog HDL記述を挿入できます。AHDL、VHDL、およびVerilog HDLテンプレートには、デザイン・エントリをすばやく正確に行うためのHDL構文を入力する簡単な方法が用意されています。また、メガファンクションやプリミティブだけでなく、すべてのAHDLエレメント、キーワード、および記述についてのヘルプを参照できます。

Page 54: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリデザインの作成

44 ■ Introduction to Quartus II Altera Corporation

Quartus IIシンボル・エディタ

シンボル・エディタにより、マクロファンクション、メガファンクション、プリミティブ、またはデザイン・ファイルを示すあらかじめ定義された記号を表示し、編集することができます。各シンボル・エディタ・ファイルは、1 つの記号を表します。各シンボル・ファイルは、アルテラのメガファンクションやLPMファンクションを含むライブラリから選択できます。これらのブロック・シンボル・ファイルをカスタマイズして、シンボルをブロック・エディタで作成した図に追加することができます。シンボル・エディタは、ブロック・シンボル・ファイルおよびMAX+PLUSIIシンボル・ファイル (.sym) を読み込んで編集し、両方のタイプのファイルをブロック・シンボル・ファイルとして保存します。

Verilog HDL、VHDLおよび AHDL

Quartus II テキスト・エディタまたは他のテキスト・エディタを使用して、テキスト・デザイン・ファイル、Verilog デザイン・ファイル、および VHDL デザイン・ファイルを作成し、階層構造デザインにある他のタイプのデザイン・ファイルと結合することができます。

Verilogデザイン・ファイルおよびVHDLデザイン・ファイルには、Quartus IIのサポートする構造体の様々な組み合わせを含むことができます。また、プリミティブおよびメガファンクションなどのアルテラの論理ファンクションや、ユーザ定義の論理ファンクションも含むことができます。

テキスト・エディタで、Create/Updateコマンド (Fileメニュー ) を使用して、ブロック・シンボル・ファイルを現在のVerilog HDLまたはVHDLデザイン・ファイルから作成し、ブロック・デザイン・ファイルに組み込むことができます。同様に、Verilog HDLまたはVHDLデザイン・ファイルを表すAHDLインクルード・ファイルを作成し、テキスト・デザイン・ファイルまたは他のVerilog HDLまたはVHDLデザイン・ファイルに組み込むことができます。

VHDLデザインでは、Settingsダイアログ (Assignmentsメニュー ) のFilesページのPropertiesダイアログまたはProject NavigatorのFilesタブでファイル名を選択後、右クリックして表示されるPropertiesメニューで開くダイアログにおいて、デザインに対するVHDLライブラリの名前を指定することができます。

Quartus II開発ソフトウェアでのVerilog HDLおよびVHDLの使用について詳しくは、 「第4章: 論理合成」、65ページの「Quartus IIのVerilog HDLおよび VHDL論理合成機能」を参照してください。

Page 55: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリアルテラのメガファンクション

Altera Corporation Introduction to Quartus II ■ 45

AHDLは、ハイレベルのハードウェア記述言語で、Quartus IIシステムに完全に統合されています。AHDLは、論理式、ステート・マシン、条件式およびデコード・ロジックをサポートしています。AHDLはまた、パラメータ化ファンクションの作成やその使用、LPMファンクションのフル・サポートを含んでいます。AHDLは、特に複雑な組み合わせロジック、グループ演算、ステート・マシン、真理値表、およびパラメータ化ロジックに適しています。

アルテラのメガファンクションアルテラのメガファンクションは、ゲートおよびフリップフロップ・プリミティブと共にQuartus IIデザイン・ファイルで使用可能な、複雑かつ高レベルなビルディング・ブロックです。アルテラが提供するパラメータ化が可能なメガファンクションおよびLPMファンクションは、アルテラのデバイス・アーキテクチャ用に最適化されています。メモリ、DSPブロック、LVDSドライバ、PLL、およびSERDES回路とDDIO回路という一部のアルテラ・デバイスに特有の機能にアクセスするには、メガファンクションを使用する必要があります。

MegaWizard Plug-In Manager (Toolsメニュー ) を使用して、Quartus II開発ソフトウェア、EDAデザイン・エントリおよび合成ツールでデザインに使用するためのアルテラ・メガファンクション、PMファンクション、およびIPファンクションを作成できます。表 3に、アルテラが提供するMegaWizard Plug-In Managerを使用して作成可能なメガファンクションおよびLPMファンクションを示します。

関連情報 参照先

Quartus II ブロック・エディタおよびシンボル・エディタ

Quartus II ヘルプの「Block Editor & Symbol EditorIntroduction」

Quartus IIテキスト・エディタ Quartus IIヘルプの「Text Editor Introduction」

Quartus II開発ソフトウェアでのデザインの作成 Quartus IIチュートリアルの「Design Entry module」

表 3. アルテラが提供するメガファンクションおよび LPMファンクション (1 /2 )

ファイル・タイプ 説明

演算コンポーネント 累算器、加算器、乗算器、およびLPM演算ファンクションを含みます。

ゲート マルチプレクサおよびLPMゲート・ファンクションを含みます。

Page 56: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリアルテラのメガファンクション

46 ■ Introduction to Quartus II Altera Corporation

デザインの作業時間を有効活用するために、アルテラでは独自のロジック・コード作成の代わりにメガファンクションを使用することを推奨します。さらに、これらのファンクションは、より効果的なロジックの合成およびデバイスの実装を提供します。単純にパラメータを設定して、簡単に様々なサイズにメガファンクションをスケーリングすることができます。また、アルテラは、アルテラが提供するメガファンクションとLPMファンクションの両方に、AHDLインクルード・ファイルおよびVHDLコンポーネント宣言ファイルを用意しています。

I/Oコンポーネント クロック・データ・リカバリ (CDR)、フェーズ・ロック・ループ (PLL)、ダブル・データ・レート (DDR)、ギガビット・トランシーバ・ブロック (GXB)、LVDSレシーバおよびトランスミッタ、PLLリコンフィギュレーション、およびリモート・アップデート・メガファンクションを含みます。

メモリ・コンパイラ FIFO Partitioner、RAM、およびROMメガファンクションを含みます。

ストレージ・コンポーネント メモリおよびシフト・レジスタ・メガファンクション、および LPMメモリ・ファンクションを含みます。

表 3. アルテラが提供するメガファンクションおよび LPMファンクション (2 /2 )

ファイル・タイプ 説明

関連情報 参照先

MegaWizard Plug-In Manager Quartus IIヘルプの「Overview: Using the MegaWizardPlug-In Manager」

Quartus IIチュートリアルの「Design Entry module」

Page 57: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリアルテラのメガファンクション

Altera Corporation Introduction to Quartus II ■ 47

IP(Intellectual Property)メガファンクション

アルテラは、厳密なテストが実施され、アルテラ・デバイス特有のアーキテクチャで最高のパフォーマンスを発揮するように最適化されたアルテラ・メガファンクション・パートナ・プログラム (AMPP™) およびMegaCore®ファンクションの両方を取得するための様々な手法を提供しています。これらのIPのパラメータ化されたブロックを使用して、デザインとテストにかかる時間を削減できます。MegaCoreおよびAMPPメガファンクションは、エンベデッド・プロセッサ、インタフェースおよびペリフェラル、デジタル信号処理 (DSP)、および通信アプリケーションのためのメガファンクションを含みます。

アルテラは、Quartus II開発ソフトウェアおよびEDAデザイン・エントリ・ツールでIPファンクションを使用するのに便利な以下のプログラム、機能、およびファンクションを提供しています。

■ AMPPプログラム: AMPPプログラムは、Quartus II開発ソフトウェアと共に使用するメガファンクションを作成、配信できるサードパーティ・ベンダへのサポートを提供します。AMPPパートナにより、アルテラ・デバイス用に最適化された既成のメガファンクションが多数用意され、選択できるようになっています。

AMPP ファンクションの評価期間は、個々のベンダによって異なります。AMPPファンクションのダウンロードと評価は、アルテラWebサイトwww.altera.co.jp/ipmegastoreにある IP MegaStore™から利用できます。x

■ MegaCoreファンクション: MefgaCoreファンクションは、複雑なシステムレベル・ファンクション用にデザインされ、最適化および検証済みのファンクションで、MegaWizard Plug-In Manager やIPツールベンチを使用して完全にパラメータ化が可能です。IP Toolbenchは、容易に資料を参照したり、パラメータを指定したり、その他のEDAツールの設定や、パラメータ化されたMegaCoreファンクションをデザインに統合するために必要なすべてのファイルを生成することができるツール・バーです。

Quartus II 開発ソフトウェアのインストール中またはインストール後に、MegaCore IPライブラリCD-ROMからMegaCoreファンクションをインストールすることができます。また、アルテラWebサイトの IP MegaStoreから個々に IP MegaCoreファンクションをダウンロードして、個別にインストールできます。さらに、MegaWizard Portal Extension を介して MegaWizard Plug-InManagerからMegaCoreファンクションにアクセスすることも可能です。

■ OpenCore評価機能: OpenCore® 評価機能により、AMPPファンクションを購入前に評価することができます。OpenCore機能を使用して、デザインをコンパイル、シミュレート、およびデザインの機能性とパフォーマンスを検証できますが、プログラミング・ファイルの生成はサポートされていません。

Page 58: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリアルテラのメガファンクション

48 ■ Introduction to Quartus II Altera Corporation

■ OpenCore Plusハードウェア評価機能: 無償のOpenCore Plusハードウェア評価機能では、システムでMegaCoreファンクションの動作をシミュレーション、デザインの動作を検証、そしてサイズおよびスピードを容易に検証することができます。さらに、Quartus II開発ソフトウェアは、MegaCoreファンクションを含むデザインに対して期限付きのプログラミング・ファイルを生成することができ、IPメガファンクションのライセンスを購入する前に、デバイスをプログラムおよびハードウェアでデザイン検証することができます。

OpenCore Plus ハードウェア機能が Settings ダイアログ (Assignments メニュー ) の Compilation Processページでオンになるとき、Quartus II開発ソフトウェアは少量のコントロール・ロジックをインサートします。このロジックは、特に小型のデバイスではフィッティングで悪影響を与えます。OpenCorePlusハードウェア評価機能をオフにして、Quartus II開発ソフトウェアでのロジックの追加を除外することができます。

MegaWizard Plug-In Manager

MegaWizard Plug-In Managerは、多様なカスタム・メガファンクションを含むデザイン・ファイルの作成または変更に役立ち、デザイン・ファイルにインスタンスすることができます。これらのカスタム・メガファンクションの種類は、LPM、MegaCore、および AMPPファンクションを含むアルテラのメガファンクションが基本となっています。MegaWizard Plug-In Managerは、多様なカスタム・メガファンクションのオプションを簡単に指定できるウィザードを実行します。ウィザードにより、パラメータおよびオプション・ポートの値を設定できます。MegaWizardPlug-In Managerは、Toolsメニューまたはブロック・デザイン・ファイルから開くことができ、さらにスタンドアロン・ユーティリティとしても実行できます。表 4に、ユーザが生成する各カスタム・メガファンクションの種類に対してMegaWizardPlug-In Managerで生成されたファイルを示します。

表 4. MegaWizard Plug-In Managerで生成されたファイル (1 /2 )

ファイル名 説明

<出力ファイル>.bsf ブロック・エディタで使用されるメガファンクションの記号

<出力ファイル>.cmp コンポーネント宣言ファイル (Component Declaration File)

<出力ファイル>.inc メガファンクション・ラッパ・ファイルにあるモジュールのAHDLインクルード・ファイル

<出力ファイル>.tdf AHDL デザインでインスタンスするためのメガファンクション・ラッパ・ファイル

<出力ファイル>.vhd VHDL デザインでインスタンスするためのメガファンクション・ラッパ・ファイル

Page 59: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリアルテラのメガファンクション

Altera Corporation Introduction to Quartus II ■ 49

Quartus II開発ソフトウェアでのメガファンクションのインスタンス

ブロック・エディタでのダイレクト・インスタンス、HDLコードでのインスタンス(ポートおよびパラメータ定義を介したインスタンス、またはMegaWizard Plug-InManagerを使用してメガファンクションをパラメータ化し、ラッパ・ファイルを作成するかのいずれか)、またはインタフェースを介して、Quartus II開発ソフトウェアのアルテラ・メガファンクションおよびLPMファンクションをインスタンスできます。

アルテラでは、MegaWizard Plug-In Managerを使用してメガファンクションをインスタンスし、カスタム・メガファンクションの種類を作成することを推奨します。ウィザードでは、メガファンクションのカスタマイズおよびパラメータ化のためのグラフィカル・インタフェースが提供され、すべてのメガファンクション・パラメータを正しく設定できるようになっています。

<出力ファイル>.v Verilog HDLデザインでインスタンスするためのメガファンクション・ラッパ・ファイル

<出力ファイル>_bb.v Verilog HDLデザインで使用され、EDA合成ツール使用時にポートの方向を指定する、メガファンクション・ラッパ・ファイルにあるモジュールのhollow-bodyまたはブラック・ボックス宣言 (Black Box Declaration)

<出力ファイル>_inst.tdf メガファンクション・ラッパ・ファイルにあるサブデザインのAHDLインスタンス・サンプル

<出力ファイル>_inst.vhd メガファンクション・ラッパ・ファイルにあるエンティティのVHDLインスタンス・サンプル

<出力ファイル>_inst.v メガファンクション・ラッパ・ファイルにあるモジュールのVerilog HDLインスタンス・サンプル

表 4. MegaWizard Plug-In Managerで生成されたファイル (2 /2 )

ファイル名 説明

☞ スタンドアロン MegaWizard Plug-In Managerの使い方

コマンド・プロンプトで以下のコマンドを入力して、Quartus II開発ソフトウェアの外部からMegaWizard Plug-In Managerを使用できます。

qmegawiz

Page 60: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリアルテラのメガファンクション

50 ■ Introduction to Quartus II Altera Corporation

Verilog HDLおよび VHDLにおけるインスタンス

MegaWizard Plug-In Managerを使用して、メガファンクションまたはカスタム・メガファンクションのバリエーションを作成できます。次に、MegaWizard Plug-In Managerは、デザインで使用できるメガファンクションのインスタンスを含んだVerilog HDLまたはVHDLラッパ・ファイルを作成します。VHDLメガファンクションでは、MegaWizard Plug-In Managerにより、コンポーネント宣言ファイルも作成されます。

ポートおよびパラメータ定義

他のモジュールまたはコンポーネントのようにファンクションを呼び出すことで、Verilog HDLまたはVHDLデザインでメガファンクションを直接インスタンスできます。VHDLでは、コンポーネント宣言を使用する必要もあります。

メガファンクションの推定

Quartus IIのAnalysis & Synthesisは、一定のHDLコードを自動的に認識し、適切なメガファンクションを推定します。この推定が使用されるのは、アルテラのメガファンクションがアルテラ・デバイス用に最適化されているためで、そのパフォーマンスは標準HDLコードよりも優れています。RAMおよびDSPブロックのような一部のアーキテクチャの特定の機能に対しては、アルテラ・メガファンクションを使用する必要があります。

Quartus II 開発ソフトウェアでは、合成時に以下のロジックがメガファンクションにマッピングされます。

■ カウンタ■ 加算器/減算器■ 乗算器■ 乗算累積器および乗算加算器■ RAM■ シフト・レジスタ

Page 61: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリアルテラのメガファンクション

Altera Corporation Introduction to Quartus II ■ 51

EDAツールでのメガファンクションのインスタンス

EDAデザイン・エントリおよび合成ツールで、アルテラのメガファンクション、LPMファンクション、およびIPファンクションを使用することができます。各ファンクションのブラック・ボックスを作成、推定したり、またはクリア・ボックス手法を使用してEDAツールでメガファンクションをインスタンスできます。

ブラック・ボックス手法

MegaWizard Plug-In Managerを使用して、メガファンクションのVerilog HDLまたは VHDL ラッパ・ファイルを生成できます。Verilog HDL デザインでは、MegaWizard Plug-In Managerにより、ポートの方向の指定に使用するモジュールのhollow-body宣言を含んだVerilogデザイン・ファイルも生成されます。

Verilog HDLまたはVHDLラッパ・ファイルには、メガファンクションのポートおよびパラメータが含まれます。これを使用すると、トップレベル・デザイン・ファイルのメガファンクションをサンプル・インスタンス・ファイルと同様にインスタンスし、合成時にはEDAツールがメガファンクションをブラック・ボックスとして扱うことができます。

MegaWizard Plug-In Manager を使用して、アルテラ・メガファンクションまたはEDAデザイン・エントリおよび合成ツールのLPMファンクションのブラック・ボックスを作成する際の基本的なフローを下記に示します。

1. MegaWizard Plug-In Managerを使用して、メガファンクションまたは LPMファンクションを作成およびパラメータ化します。

2. MegaWizard Plug-In Managerで生成したブラック・ボックス・ファイルまたはコンポーネント宣言 (サンプル・インスタンス・ファイルに加えて ) を使用して、EDA合成ツールでファンクションをインスタンスします。

3. EDA合成ツールでデザインの合成および最適化を実行します。EDA合成ツールは、合成時にメガファンクションをブラック・ボックスとして扱います。

推定によるインスタンス

EDA合成ツールは、一定のHDLコードを自動的に認識し、適切なメガファンクションを推定します。メモリ・ブロック (RAMおよびROM)、DSPブロック、シフト・レジスタ、およびVerilog HDLまたはVHDLコードの一部演算コンポーネントを直接インスタンスできます。次に、EDAツールは、合成時にロジックを適切なアルテラのメガファンクションにマッピングします。

Page 62: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリアルテラのメガファンクション

52 ■ Introduction to Quartus II Altera Corporation

クリア・ボックス手法

ブラック・ボックス・フローでは、EDA合成ツールがアルテラのメガファンクションおよびLPMファンクションをブラック・ボックスとして扱います。このため、EDA合成ツールはアルテラのメガファンクションを使用したデザイン合成および最適化を完全には行うことはできません。これは、ツールにファンクションのフル・モデルまたはタイミング情報がないためです。そこで、クリア・ボックス・フローを使用することにより、MegaWizard Plug-In Managerを使用して、EDA合成ツールと一緒に使用可能であり、完全に合成可能なアルテラのメガファンクションまたはLPMファンクションを作成できます。

EDA合成ツールとともにクリア・ボックス・メガファンクションを使用する際の基本的なフローを下記に示します。

1. MegaWizard Plug-In Managerを使用して、メガファンクションまたは LPMファンクションを作成およびパラメータ化します。MegaWizard Plug-InManagerでGenerate a Clearbox bodyがオンになっているかを確認します。

2. MegaWizard Plug-In Managerで生成したVerilogまたはVHDLデザイン・ファイルを使用して、EDA合成ツールでファンクションをインスタンスします。

3. EDA合成ツールでデザインの合成および最適化を実行します。

クリア・ボックス手法を使用すると、一般的には、クリア・ボックス・メガファンクションまたは LPMファンクションと共に詳細な情報が含まれる (タイミング情報および使用するデバイス・リソース) ため、(Quartus IIシミュレータではなく) EDAシミュレーション・ツールでのシミュレーション時間が遅くなります。さらに、デバイス特有の詳細な情報がクリア・ボックス・メガファンクションまたはLPMファンクションに含まれるため、デザインに様々なデバイスを使用するには、クリア・ボックス・ファンクションを新規デバイス用に再生成する必要があります。

Page 63: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 2 章 : デザイン・エントリアルテラのメガファンクション

Altera Corporation Introduction to Quartus II ■ 53

関連情報 参照先

メガファンクションのポートおよびパラメータのリスト

IPファンクションを使用している場合、IPの資料を参照してください。アルテラ・メガファンクションについては、Quartus IIヘルプを参照してください。

EDA ツールにあるアルテラのメガファンクションおよびLPMファンクション

Quartus IIヘルプの「Overview: Creating & InstantiatingAltera-Provided Functions in Other EDA Tools」

アルテラWebサイトのQuartus II Handbook、Volume1 の Chapter 8「Synplicity Synplify and Synplify ProSupport」

アルテラWebサイトのQuartus II Handbook、Volume1 の Chapter 9「Mentor Graphics LeonardoSpectrumSupport」

アルテラWebサイトのQuartus II Handbook、Volume1 の Chapter 10「Mentor Graphics Precision RTLSynthesis Support」

アルテラWebサイトのQuartus II Handbook、Volume1 の Chapter 12「Synopsys Design Compiler FPGASupport」

Quartus II 開発ソフトウェアに含まれるアルテラのメガファンクションおよびLPMファンクション

Quartus IIチュートリアルの「Design Entry module」

MegaWizard Plug-In Manager、アルテラのメガファンクションおよびLPMファンクション

Quartus IIヘルプの「Overview: Using the MegaWizardPlug-In Manager」

MegaCoreファンクションおよびOpenCore Plusハードウェア評価機能

アルテラWebサイトのApplication Note 343 (OpenCore Evaluation of AMPP Megafunctions)

アルテラWebサイトのApplication Note 320 (OpenCoreEvaluation of AMPP Megafunctions)

アルテラWebサイトのUsing IP Functional SimulationModels to Verify Your System Designホワイトペーパ

Page 64: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 3章の内容 :

はじめに 56

アサインメント・エディタ 57

Settingsダイアログ 59

アサインメントのインポート 60

ピン・アサインメントの検証 62

制約の入力

3

第 3章

Page 65: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 3 章 : 制約の入力はじめに

56 ■ Introduction to Quartus II Altera Corporation

はじめにプロジェクトおよびデザインを作成するとき、Quartus® II 開発ソフトウェアのSettingsダイアログ (Assignmentsメニュー )、アサインメント・エディタ、およびフロアプラン・エディタを使用して、ピンのアサインメント、デバイス・オプション、ロジック・オプション、およびタイミング制約などの初期デザイン制約を指定できます。Import Assignmentsコマンド (Assignmentsメニュー ) を使用してアサインメントをインポート、またはExport コマンド (Fileメニュー ) を使用してアサインメントをエクスポートすることができます。また、Tclコマンドまたはスクリプトを使用して、アサインメントを他のEDA合成ツールからインポートすることもできます。 Quartus II開発ソフトウェアは、初期デザイン制約の指定を支援するTimingウィザード (Assignmentsメニュー ) も提供しています。 MAX+PLUS® IIクイック・メニューのAssign コマンドから利用できる多くの設定は、アサインメント・エディタおよびSettingsダイアログで実行できます。図 1に、制約およびアサインメントの入力フローを示します。

図 1. 制約およびアサインメント入力フロー

Page 66: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 3 章 : 制約の入力アサインメント・エディタ

Altera Corporation Introduction to Quartus II ■ 57

アサインメント・エディタアサインメント・エディタは、Quartus II開発ソフトウェアでノードおよびエンティティ・レベル・アサインメントを作成および編集するためのインタフェースです。これにより、デザインのロジックに、ロケーション、標準入出力、タイミング、ロジック・オプション、パラメータ、シミュレーション、およびピンのアサインメントなど、様々なオプションおよび設定を指定できます。

アサインメント・エディタを使用して、アサインメント・カテゴリの選択、Quartus IIノード・ファインダを使用したアサインする特定ノードおよびエンティティの選択、特定アサインメントに関する情報の表示、選択したノードのアサインメントに対する追加、編集、または削除が可能です。また、アサインメントにコメントを追加したり、アサインメントが表示される設定ファイルおよびコンフィギュレーション・ファイルを見ることもできます。

アサインメント・エディタを使用してアサインメントを作成する際の基本的な流れは、次の通りです。

1. アサインメント・エディタを開きます。

2. Categoryバーにある適切なカテゴリを選択します。

3. Node Filterバーにある適切なノードまたはエンティティを指定するか、NodeFinderダイアログを使用して、特定ノードまたはエンティティを探します。

4. 現在のデザインのアサインメントを表示するスプレッドシートで、適切なアサインメント情報を追加します。

アサインメント・エディタのスプレッドシートでは、適切なドロップダウン・リストが用意されているか、などのアサインメント情報を入力できます。アサインメントを追加、編集、削除すると、対応するTclコマンドがMessagesウィンドウに表示されます。

Exportコマンド (Fileメニュー ) を使用して、アサインメント・エディタからTclスクリプト・ファイル (.tcl) またはカンマ区切り値ファイル (.csv)にデータをエクスポートできます。また、Import Assignmentsコマンド (Projectメニュー )を使用して、CSVまたはテキスト・ファイルからアサインメント・データをインポートすることも可能です。

Page 67: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 3 章 : 制約の入力アサインメント・エディタ

58 ■ Introduction to Quartus II Altera Corporation

アサインメントの作成および編集時に、Quartus II 開発ソフトウェアは可能な場所でアサインメント情報をダイナミックに検証します。アサインメントまたはその値が不正な場合、Quartus II 開発ソフトウェアは値を追加したり更新したりせず、現在値に戻すか値を受け入れないようにします。すべてを表示する場合、アサインメント・エディタは現在のプロジェクトに対して作成されたすべてのアサインメントを表示しますが、個々のカテゴリを表示する場合、アサインメント・エディタは選択した特定カテゴリに関連したアサインメントのみを表示します。

図 2. Quartus IIのアサインメント・エディタ

関連情報 参照先

アサインメント・エディタ アルテラWebサイトのQuartus II Handbook、Volume2のChapter 1「Assignment Editor」

Quartus IIヘルプの「Assignment Editor Introduction」および「Overview: Making Assignments」

Page 68: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 3 章 : 制約の入力Settingsダイアログ

Altera Corporation Introduction to Quartus II ■ 59

SettingsダイアログSettings ダイアログ (Assignmentsメニュー ) を使用して、プロジェクトのアサインメントおよびオプションを指定できます。プロジェクト全体のオプションおよび合成、フィッティング、シミュレーション、およびタイミング解析オプションを設定できます。

Settingsダイアログを使用して、次のようなタスクを実行できます。

■ プロジェクト設定の変更: プロジェクトおよびリビジョン情報のカレント・トップレベル・エンティティを指定および表示、プロジェクトからのファイルの追加および削除、カスタム・ユーザ・ライブラリの指定、パッケージ、ピン数、スピード・グレードなどデバイス・オプションの指定、および移行デバイスの指定を行います。

■ EDAツール設定の指定: デザイン・エントリ/合成、シミュレーション、タイミング解析、ボード・レベル検証、フォーマル検証、フィジカル・シンセシス、および関連するツール・オプションのEDAツールを指定します。

■ Analysis & Synthesis設定の指定: Analysis & Synthesis、Verilog HDLおよびVHDL入力設定、デフォルトのデザイン・パラメータ、および合成ネットリスト用最適化オプションのプロジェクト全体の設定を行います。

■ コンパイル・プロセス・オプションの指定: スマート・コンパイル、コンパイル時のノード名の保存、およびノード・レベル・ネットリストの保存のオプションです。

■ フィッティング設定の指定: タイミング・ドリブン・コンパイル・オプション、フィッタ・エフォート、プロジェクト全体のフィッタ・ロジック・オプション・アサインメント、およびフィジカル・シンセシスのネットリストの最適化を行います。

■ タイミング解析設定の指定: プロジェクトのデフォルト周波数または個別クロック設定の定義、遅延要求およびパス・カッティング・オプション、およびタイミング解析レポート・オプションです。

■ シミュレータ設定の指定: モード (機能またはタイミング)、ソース・ベクタ・ファイル、シミュレーション・ピリオド、およびシミュレーション検索オプションです。

■ PowerPlay Power Analyzer設定の指定: 入力および出力ファイルの種類やデフォルトのトグル率の他に接合部温度、要求される冷却ソリューションやデバイス特性という動作条件を指定します。

Page 69: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 3 章 : 制約の入力アサインメントのインポート

60 ■ Introduction to Quartus II Altera Corporation

■ ソフトウェア構築のための設定の指定: ツールセット・ディレクトリ、プロセッサ・アーキテクチャ、コンパイラ、アセンブラ、およびリンカ設定を行います。

■ デザイン・アシスタント、SignalTap II、SignalProbe、およびHardCopy 設定の指定: デザイン・アシスタントのオンおよびルールの選択、SignalTap® IIロジック・アナライザおよびSignalTap IIファイル (.stp) 名の指定、SignalProbe™

信号の自動配線およびSignalProbe機能のフィッティング結果の変更のオプション、HardCopy®タイミング・オプションの指定およびHardCopyファイルの生成を行います。

アサインメントのインポートImport Assignmentsコマンド (Assignmentsメニュー ) で、Quartus II開発ソフトウェアまたはMAX+PLUS IIソフトウェアで作成したプロジェクトからQuartus II開発ソフトウェアの新規または既存のプロジェクトにアサインメントをインポートできます。

Import Assignments ダイアログにより、インポートするアサインメントを含んだファイルとアサインメントの特定のタイプ ( アサインメント・カテゴリ ) を指定して、現在のプロジェクトのQSFにインポートできます。Import AssignmentsダイアログのAdvancedボタンをクリックして、インポートするアサインメントの種類、インポートするグローバルまたはインスタンス・レベル・アサインメント、現在のデザインにアサインメントがどのくらい影響するかを指定します。このダイアログを使用して、Exportコマンド (Fileメニュー ) で作成したCSVファイルをインポートすることができ、アサインメントをインポートする前のデザインの現在のQSFのバックアップを作成できます。図 3を参照してください。

関連情報 参照先

Settings ダイアログによるプロジェクト全体の設定の割り当て

Quartus IIヘルプの「Overview: Making Assignments」

Page 70: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 3 章 : 制約の入力アサインメントのインポート

Altera Corporation Introduction to Quartus II ■ 61

図 3. Import Assignmentsダイアログ

このコマンドを使用して、MAX+PLUS IIのプロジェクト・アサインメントおよび設定を含んだMAX+PLUS IIのアサインメントおよびコンフィギュレーション・ファイルを Quartus IIプロジェクトにインポートできます。また、Quartus II開発ソフトウェアで作成されたその他のプロジェクトから現在のプロジェクトに設定およびアサインメントをインポートすることもできます。例えば、このコマンドを使用して、前回のQuartus IIプロジェクトから現在のQuartus IIプロジェクトにピン・アサインメントをインポートできます。

Import Assignments コマンドを使用した LogicLock™ 領域アサインメントのインポートについて詳しくは、 「第 6章: ブロック・ベース・デザイン」、111ページの「中間合成結果の保存」を参照してください。

関連情報 参照先

アサインメントのインポート Quartus IIヘルプの「Importing Assignments」

Page 71: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 3 章 : 制約の入力ピン・アサインメントの検証

62 ■ Introduction to Quartus II Altera Corporation

ピン・アサインメントの検証Quartus II 開発ソフトウェアは、Start > Start I/O Assignment Analysis コマンド(Processingメニュー ) を使用して、ロケーション、I/Oバンク、I/Oスタンダード・アサインメントなど、ピンのアサインメントを検証できます。このコマンドをデザイン・プロセスのあらゆるステージで使用して、アサインメントが正しいかを確認して検証することで、最終のピン・アウトをすばやく作成できます。このコマンドではデザイン・ファイルを使用する必要はなく、デザインのコンパイル前にピン・アウトを検証できます。

関連情報 参照先

アサインメントのインポート アルテラWebサイトのQuartus II Handbook、Volume2のChapter 5「I/O Assignment Planning and Analysis」

Page 72: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

論理合成

第 4章の内容 :

はじめに 64

Quartus IIのVerilog HDLおよび VHDL論理合成機能65

他のEDA合成ツール 69

Analysis & Synthesisの制御 71

デザイン・アシスタントを使用したデザインの信頼性のチェック 75

RTL Viewerによる合成結果の解析 76

Technology Map Viewerによる合成結果の解析 78

インクリメンタル・シンセシス 80

第 4章

4

Page 73: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成はじめに

64 ■ Introduction to Quartus II Altera Corporation

はじめにQuartus® II Analysis & Synthesis モジュールを使用して、デザイン・ファイルを解析し、プロジェクト・データベ―スを作成できます。Analysis & Synthesis は、Quartus IIの論理合成機能を使用し、Verilogデザイン・ファイル (.v) またはVHDLデザイン・ファイル (.vhd) を合成します。 必要に応じて、他の EDA 合成ツールでVerilog HDLまたはVHDLデザイン・ファイルを合成して、Quartus II開発ソフトウェアで使用できる EDIF ネットリスト・ファイル (.edf) または VQM ファイル(.vqm) を生成します。図 1は、論理合成デザイン・フローを示しています。

図 1. 論理合成デザイン・フロー

Quartus II開発ソフトウェアでは、Analysis & Synthesisモジュールを含んだフル・コンパイルを実行したり、またはAnalysis & Synthesisを個別に実行することができます。さらに、Quartus II 開発ソフトウェアの合成機能を実行することなしに、Analysis & Elaborationを実行することもできます。

Page 74: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成Quartus IIの Verilog HDLおよび VHDL論理合成機能

Altera Corporation Introduction to Quartus II ■ 65

Quartus IIの Verilog HDLおよびVHDL論理合成機能

Analysis & Synthesis機能を使用して、Verilog HDLおよびVHDLデザインの解析と合成を行うことができます。Analysis & Synthesis 機能には、Verilog HDL およびVHDL 言語を完全にサポートし、論理合成プロセスの制御オプションを備えたQuartus IIの論理合成機能が含まれます。

Analysis & Synthesisでは、Verilog-1995標準 (IEEE Std. 1364-1995) およびVerilog-2001標準 (IEEE Std. 1364-2001) をサポートし、また、VHDL 1987標準 (IEEE Std. 1076-1987)および1993 (IEEE Std. 1076-1993) 標準もサポートしています。Analysis & Synthesisで使用する言語を選択できますが、デフォルトではVerilog-2001およびVHDL 1993が使用されます。 ほかの EDA ベンダの論理合成ツールを使用する場合には、非Quartus IIのファンクションにマッピングするのにライブラリ・マッピング・ファイル (.lmf) を使用します。これらとその他のオプションは、Settings ダイアログ(Assignmentsメニュー ) のAnalysis & Synthesis SettingsのVerilog HDL InputおよびVHDL Inputページで指定できます。図 2に、これらのページを示しています。

☞ quartus_map実行コマンドの使い方

また、quartus_map実行コマンドを使用して、各コマンド・プロンプトまたはスクリプトでAnalysis &Synthesisを個別に実行することができます。プロジェクトを未作成の場合、quartus_map実行コマンドは新規プロジェクトを作成します。

quartus_map 実行コマンドでは、任意のテキスト・エディタで表示できるテキスト・ベースのレポート・ファイルが個別に作成されます。

quartus_map実行コマンドでヘルプを参照する場合は、コマンド・プロンプトで次のコマンドのいずれかを入力します。

quartus_map -hquartus_map --helpquartus_map --help=<トピック名>

Page 75: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成Quartus IIの Verilog HDLおよび VHDL論理合成機能

66 ■ Introduction to Quartus II Altera Corporation

図 2. Settingsダイアログの Verilog HDL Inputおよび VHDL Inputページ

VHDL Input

ページ

Verilog HDL

Inputページ

Page 76: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成Quartus IIの Verilog HDLおよび VHDL論理合成機能

Altera Corporation Introduction to Quartus II ■ 67

ほとんどのVerilog HDLおよびVHDLデザインは、Quartus IIの論理合成機能および他のEDA論理合成ツールで問題なくコンパイルできます。デザインにアルテラ・メガファンクション、LPM (Library of parameterized modules) ファンクション、またはサード・パーティ EDAツールで IP (Intellectual Property) をインスタンスする場合、hollow-body またはブラック・ボックス・ファイルを使用する必要があります。ただし、QuartusII の論理合成機能を使用している場合は、ブラック・ボックス・ファイルを使用せずに、直接メガファンクションをインスタンスすることができます。メガファンクションのインスタンスについて詳しくは、49ページの「Quartus II開発ソフトウェアでの メガファンクションのインスタンス」および 「第2章: デザイン・エントリ」、51ページの「EDAツールでのメガファンクションの インスタンス」を参照してください。

Verilog HDLおよびVHDLデザインを作成するとき、これらのファイルをプロジェクトに追加する必要があります。プロジェクトの作成時に、New Project ウィザード (Fileメニュー ) を使用するか、SettingsダイアログのFilesページを使用してデザイン・ファイルを追加できます。または、Quartus II テキスト・エディタでファイルを編集する場合、保存するときに現在のプロジェクトにファイルを追加するよう指示が出ます。プロジェクトにファイルを追加するときは、Quartus II の論理合成の処理順で追加されているかを確認する必要があります。 VHDLデザインを使用している場合は、FilesページのPropertiesダイアログでデザインのVHDLライブラリを指定することができます。 VHDL ライブラリを指定しない場合、 Analysis &SynthesisはVHDLエンティティをworkライブラリにコンパイルします。プロジェクトへのファイルの追加について詳しくは、 「第2章: デザイン・エントリ」、41ページの「デザインの作成」を参照してください。

Analysis & Synthesisでは、すべてのデザイン・ファイルをデザイン・エンティティまたはプロジェクトの階層構造に統合し、単一プロジェクト・データベースが作成されます。Quartus II 開発ソフトウェアは、以降のプロジェクト処理に対してこのデータベースを使用します。他のコンパイラ・モジュールは、完全に最適化されたプロジェクトが生成されるまで、データベースを更新していきます。当初、データベースには元のネットリストだけが含まれていますが、最終的にはタイミング・シミュレーションやタイミング解析、デバイス・プログラミングなど、作成された1つ以上のファイルを含む完全に最適化およびフィッティングされたプロジェクトが含まれます。

データベースが作成される度に、Analysis & Synthesisの解析段階では、プロジェクトの論理的完成度および一貫性が検証され、境界連結性および構文エラーがチェックされます。

Page 77: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成Quartus IIの Verilog HDLおよび VHDL論理合成機能

68 ■ Introduction to Quartus II Altera Corporation

Analysis & Synthesisでは、デザイン・エントリまたはプロジェクトのファイルにあるロジックにテクノロジ・マッピングを実行します。さらに、Verilog HDLおよびVHDL記述からフリップフロップ、ラッチ、およびステート・マシンが推定されます。ステート・マシンのステート・アサインメントが作成され、使用するリソースの量を最小化するような選択が行われます。さらに、「+」または「-」などの演算子がアルテラ・デバイス用に最適化されたアルテラの LPM ファンクションからモジュールに置き換えられます。

Analysis & Synthesisは、いくつかのアルゴリズムを使用して、ゲート・カウントを最小化し、冗長ロジックを除き、デバイス・アーキテクチャを可能な限り効果的に利用します。ロジック・オプションを使用して、合成をカスタマイズできます。また、Analysis & Synthesisではロジック合成手法が適用され、プロジェクトのタイミング要求の実現に役立ち、デザインがこれらの要求に適合するよう最適化されます。

MessagesウィンドウおよびReportウィンドウのMessagesセクションには、Analysis& Synthesisで生成されたメッセージが表示されます。Statusウィンドウには、プロジェクトのコンパイルの際、Analysis & Synthesisでの処理にかかった時間が記録されます。

関連情報 参照先

Quartus II開発ソフトウェアでサポートされているVerilog HDL

Quartus IIヘルプの「Quartus II Verilog HDL Support」

Quartus II開発ソフトウェアでサポートされているVHDL

Quartus IIヘルプの「Quartus II VHDL Support」

Quartus II合成機能 アルテラWebサイトのQuartus II Handbook、Volume1のChapter 7「Quartus II Integrated Synthesis」

Page 78: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成他の EDA合成ツール

Altera Corporation Introduction to Quartus II ■ 69

他の EDA合成ツール他の EDA 合成ツールを使用して、Verilog HDL または VHDL デザインを合成し、Quartus II開発ソフトウェアで使用可能なEDIFネットリスト・ファイルまたはVQMファイルを生成できます。

アルテラは、多くのEDA合成ツールと共に使用するライブラリを提供しています。また、多くのツールに対してNativeLink®も提供しています。NativeLinkテクノロジは、Quartus II開発ソフトウェアと他のEDAツールの間のシームレスな情報転送を実現し、Quartus IIグラフィカル・ユーザ・インタフェースからEDAツールの自動実行を可能にします。

他のEDAツールを使用してアサインメントまたは制約を規定した場合、Tclコマンドまたはスクリプトを使用して、これらの制約をデザイン・ファイルと共にQuartus II開発ソフトウェアにインポートします。 多くのEDAツールは、アサインメントについてTclスクリプトを自動的に生成します。表 1は、Quartus IIがサポートするEDA合成ソフトウェアを示しています。

Settingsダイアログ (Assignmentsメニュー) のEDA Tool SettingsのDesign Entry &Synthesis ページで、使用する EDA 合成ツールを指定することができます。また、NativeLinkサポートを備えている EDAツールを Quartus II開発ソフトウェアでフル・コンパイルの一部として自動的に実行するかを指定することができます。また、EDA Tools Settingsページにより、EDAツールの他のオプションも指定できます。図 3を参照してください。

表 1. Quartus IIがサポートする EDA合成ツール

合成ツール名EDIFネットリスト・ファイル (.edf)

VQMファイル (.vqm)NativeLink

サポート

Mentor Graphics社 LeonardoSpectrum ✔ ✔

Mentor Graphics社Precision RTL Synthesis

✔ ✔

Synopsys社 Design Compiler ✔

Synopsys社 Design Compiler FPGA ✔

Synopsys社 FPGA Compiler II ✔ ✔

Synplicity社 Synplify ✔ ✔ ✔

Synplicity社 Synplify Pro ✔ ✔

Page 79: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成他の EDA合成ツール

70 ■ Introduction to Quartus II Altera Corporation

図 3. Settingsダイアログの Design Entry & Synthesisページ

Design Entry & Synthesisページで EDA合成ツールを指定している場合、Start >Start EDA Synthesis (Processingメニュー ) を選択して、Quartus II開発ソフトウェアでそのツールを実行できます。 また、多くのEDAツールは、自身のそのEDAツールのグラフィカル・ユーザ・インタフェースからもQuartus II開発ソフトウェアを実行できます。詳しくは、EDAツールの資料を参照してください。

Page 80: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成Analysis & Synthesisの制御

Altera Corporation Introduction to Quartus II ■ 71

Analysis & Synthesisの制御以下のオプションおよび機能を使用して、Quartus IIのAnalysis & Synthesisを制御できます。

■ コンパイラのディレクティブおよびアトリビュート■ Quartus IIロジック・オプション■ Quartus II合成ネットリスト最適化オプション

関連情報 参照先

Synplicity社のSynplifyソフトウェア アルテラWebサイトのQuartus II Handbook、Volume1 の Chapter 8「Synplicity Synplify and Synplify ProSupport」

Mentor Graphics社のLeonardoSpectrum アルテラWebサイトのQuartus II Handbook、Volume1 の Chapter 9「Mentor Graphics LeonardoSpectrumSupport」

Mentor Graphics社のPrecision RTL Synthesis アルテラWebサイトのQuartus II Handbook、Volume1 の Chapter 10「Mentor Graphics Precision RTLSynthesis Support」

Synopsys社のFPGA Compiler IIソフトウェア アルテラWebサイトのQuartus II Handbook、Volume1のChapter 11「Synopsys FPGA Compiler II BLIS andthe Quartus II LogicLock Design Flow」

Synopsys社のDesign Compiler FPGAソフトウェア

アルテラWebサイトのQuartus II Handbook、Volume1 の Chapter 12「Synopsys Design Compiler FPGASupport」

Page 81: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成Analysis & Synthesisの制御

72 ■ Introduction to Quartus II Altera Corporation

コンパイラのディレクティブおよびアトリビュート

Quartus II開発ソフトウェアでは、プラグマとも呼ばれるコンパイラ・ディレクティブがサポートされています。translate_onやtranslate_offといったコンパイラ・ディレクティブを、Verilog HDLまたはVHDLコードにコメントとして含めることができます。これらのディレクティブは、Verilog HDLまたはVHDLコマンドではありませんが、合成ツールはこれらのディレクティブを使用して、特定の方法で合成プロセスを実行します。シミュレータなど他のツールは、これらのディレクティブを無視しコメントとして扱います。

また、プラグマまたはディレクティブとされるアトリビュートを指定し、特定のデザイン・エレメントの合成プロセスを実行することができます。一部のアトリビュートは、Quartus IIロジック・オプションとしても利用できます。

Quartus IIロジック・オプション

Quartus IIロジック・オプションでは、ソース・コードを編集しなくてもアトリビュートを設定できます。アサインメント・エディタで個々のQuartus IIロジック・オプションを割り当てることができます。また、Settingsダイアログ (Assignmentsメニュー )の Analysis & Synthesis Settings ページでプロジェクトの全体的な Analysis &Synthesisロジック・オプションを指定できます。図 4を参照してください。

関連情報 参照先

コンパイラ・ディレクティブおよびアトリビュート

Quartus IIヘルプの「Verilog HDL Language Directives &Attributes」および「VHDL Language Directives & Attributes」

コンパイラ・ディレクティブおよびアトリビュートのQuartus II合成機能への使用

アルテラWebサイトのQuartus II Handbook、Volume1のChapter 7「Quartus II Integrated Synthesis」

Page 82: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成Analysis & Synthesisの制御

Altera Corporation Introduction to Quartus II ■ 73

図 4. Settingsダイアログの Analysis & Synthesis Settingsページ

Analysis & Synthesis SettingsページのQuartus IIロジック・オプションは、速度または面積の最適化、または速度と面積の最高の組み合わせを実現する「バランスのとれた」最適化を実行するコンパイル条件を指定することができます。また、性能を高めるためのロジック・レベルの制御、複製ロジックまたは冗長ロジックの削除、DSP ブロック、RAM、ROM、オープン・ドレイン・ピン、ステート・マシンのエンコード・スタイル、およびAnalysis & Synthesisに影響を与えるその他のオプションも提供します。

Page 83: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成Analysis & Synthesisの制御

74 ■ Introduction to Quartus II Altera Corporation

Quartus II合成ネットリスト最適化オプション

Quartus II 合成の最適化オプションにより、多くのアルテラ・デバイス・ファミリの合成時にネットリストを最適化するためのオプションを設定できます。これらの最適化オプションは、標準コンパイルの際に行う最適化やフル・コンパイルのAnalysis & Synthesisを行う最適化に追加されます。これらの最適化で、面積および速度条件を満たすように合成ネットリストを変更します。Settings ダイアログ(Assignmentsメニュー ) のSynthesis Netlist Optimizationsページを利用して、下記の合成最適化オプションを含むネットリスト最適化オプションを指定できます。

■ WYSIWYGプリミティブ再合成の実行■ ゲートレベル・レジスタのリタイミングの実行■ レジスタのリタイミングによるTsu/TcoとFmaxとのトレードオフの許可

合成ネットリスト最適化オプションについて詳しくは、 「第 9章: タイミング・ クロージャ」、157ページの「ネットリスト最適化オプションを使用したタイミング・クロージャの実現」を参照してください。

関連情報 参照先

合成を制御するQuartus IIロジック・オプション Quartus IIヘルプの「Logic Options」、「Creating, Editing,and Deleting Assignments」、および「Specifying Settingsfor Default Logic Options」

ロジック・オプション・アサインメントの作成 Quartus IIチュートリアルの「Compilation module」

合成に影響を与えるQuartus II合成オプションおよびロジック・オプション

アルテラWebサイトのQuartus II Handbook、Volume1のChapter 7「Quartus II Integrated Synthesis」

関連情報 参照先

Quartus II合成およびネットリスト最適化オプション

アルテラWebサイトのQuartus II Handbook、Volume2 の Chapter 8、「Netlist Optimizations & PhysicalSynthesis」およびChapter 6「Design Optimization forAltera Devices」

Page 84: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成デザイン・アシスタントを使用したデザインの信頼性のチェック

Altera Corporation Introduction to Quartus II ■ 75

デザイン・アシスタントを使用したデザインの信頼性のチェック

Quartus II デザイン・アシスタントにより、一連のデザイン・ルールに基づいてデザインの信頼性をチェックできます。 デザイン・アシスタントは、HardCopy®デバイスに変換する前のデザインの信頼性チェックに特に役立ちます。Settingsダイアログ (Assignmentsメニュー ) のDesign Assistantページから、デザインをチェックする際に使用するデザインの信頼性ガイドラインを指定できます。図 5を参照してください。

図 5. Settingsダイアログの Design Assistantページ

Page 85: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成RTL Viewerによる合成結果の解析

76 ■ Introduction to Quartus II Altera Corporation

また、下記の有効な同期デザイン手法およびQuartus IIコーディング・スタイル・ガイドラインに従うことで、デザインの最適化を改善できます。

RTL Viewerによる合成結果の解析Quartus IIのRTL Viewerは、デザインのゲート・レベルの回路図表示を提供します。Quartus II プロジェクトで RTL Viewer を実行するには、はじめに Start > StartAnalysis & Elaboration (Processingメニュー )を選択してデザインを解析する必要があります。または、Analysis & Synthesisかフル・コンパイルを実行します。これらのプロセスはコンパイル・フローのAnalysis & Elaborationステージを含んでいます。 Analysis & Elaborationが問題なく実行された後、RTL Viewer (Toolsメニュー )を選択して RTL Viewer ウィンドウを表示することができます。回路図表示に加えて、RTL Viewerはインスタンス、プリミティブ、ピン、および全体のネットリストのネットを階層リストで表示します。図 6を参照してください。

☞ quartus_drc実行コマンドの使い方

quartus_drc 実行コマンドを使用して、各コマンド・プロンプトまたはスクリプトでデザイン・アシスタントを個別に実行することができます。デザイン・アシスタントを実行する前に、Quartus IIフィッタのquartus_fit実行コマンドを実行しておく必要があります。

quartus_drc実行コマンドでは、任意のテキスト・エディタで表示できるテキスト・ベースのレポート・ファイルが個別に作成されます。

quartus_drc 実行コマンドでヘルプを参照する場合は、コマンド・プロンプトで次のコマンドのいずれかを入力します。

quartus_drc -hquartus_drc -helpquartus_drc --help=<トピック名>

関連情報 参照先

Quartus IIデザイン・アシスタント Quartus II ヘルプの「Analyzing Designs with the DesignAssistant」および「Overview: Using the Design Assistant」

同期デザイン手法やコーディング・スタイル・ガイドラインのQuartus II合成オプション

アルテラWebサイトの Quartus II Handbook、Volume1 の Chapter 5「Design Recommendations for AlteraDevices」、Chapter 6「Recommended HDL CodingStyles」、および Chapter 7「Quartus II IntegratedSynthesis」

Quartus II ヘルプの「AHDL, VHDL, and Verilog HDLStyle Guide」

Page 86: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成RTL Viewerによる合成結果の解析

Altera Corporation Introduction to Quartus II ■ 77

図 6. RTL Viewerウィンドウ

RTL Viewerは、Verilog HDLまたはVHDLデザイン、およびAHDLテキスト・デザイン・ファイル (.tdf)、ブロック・デザイン・ファイル (.bdf)、グラフィック・デザイン・ファイル (.gdf)、またはQuartus II開発ソフトウェアで合成されたファイルのAnalysis & Elaboration結果を表示します。他のEDA合成ツールで生成されたVQMファイルまたはEDIFネットリスト・ファイルについては、RTL ViewerはWYSWYGプリミティブの素子の階層を表示します。

階層リストから 1つまたは複数の項目を選択し回路図表示にハイライトすることが可能であり、逆もまた同様です。 RTL Viewerは、表示の調整または異なるレベルを見るためのズーム・インおよびズーム・アウト、要素の内部情報の表示、特定の名前の検索、階層の上下の移動、または選択されたネットを供給するソースへ移動しフォーカスすることができます。fan-inまたはfan-outの表示を調整する場合、表示を拡大、縮小することができます。 表示されている内容から個別のノードおよびソース情報を見ることができます。 また、RTL Viewerでノードを選択し、ノードの配置によってデザイン・ファイル、タイミング・クロージャ・フロアプラン、アサインメント・エディタ、Chip Editor、Resource Property Editor、またはTechnologyMap Viewerを位置付けることができます。

デザインが大きい場合、RTL Viewer は複数のページに分割して表示します。Optionsダイアログ (Toolsメニュー ) の RTL/Technology Map Viewerページは、RTL Viewer で各ページにどのくらい表示できるか制御するオプションを指定することができます。Next PageおよびPrevious PageボタンまたはGo Toコマンド (Editメニュー )を使用して、RTL Viewerでページを検索できます。

Page 87: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成Technology Map Viewerによる合成結果の解析

78 ■ Introduction to Quartus II Altera Corporation

Filterコマンド (右ボタンのポップアップ・メニュー ) で、選択されたノードまたはネットのソース、ディスティネーション、ソースとディスティネーションの両方、または選択された 2つのノード間のパスとノードをフィルタ操作して表示することができます。選択した各フィルタによってRTL Viewerは新しくフィルタリングされたページを作成し、ForwardおよびBackボタンでフィルタリングされたページとデザインのオリジナルのページを行き来することができます。

RTL 表示のコピーをエクスポートする場合には、JPEG または bitmap ファイル・フォーマットでコピーをエクスポートすることができます。また、他のグラフィックまたは描画プログラムに使用するためにクリップボードにコピーを保存することもできます。

RTL Viewerで解析した後にデザインを更新するときは、Analysis & Elaborationを再度実行してRTL Viewerで更新されたデザインを解析できます。

Technology Map Viewerによる合成結果の解析Quartus IIのTechnology Map Viewerは、ロー・レベル、または素子レベルにおいてテクノロジを特定したデザインの回路図表示を提供します。Quartus IIプロジェクトのTechnology Map Viewerを実行するには、はじめにAnalysis & Synthesisまたはフル・コンパイルを実行します。 Analysis & Synthesis が問題なく実行された後、Technology Map Viewer (Toolsメニュー) を選択してTechnology Map Viewerウィンドウを表示することができます。Technology Map Viewer は、ユーザのデザインのゲート・レベルの配線ビューとインスタンス、プリミティブ、ピン、および全体のネットリストのネットを表示する階層リストを含みます。図 7を参照してください。

関連情報 参照先

Quartus II RTL Viewer アルテラWebサイトのQuartus II Handbook、Volume1のChapter 13「Analyzing Designs with the Quartus IIRTL Viewer and Technology Map Viewer」

Quartus IIヘルプの「Overview: Viewing RTL Schematics」

Page 88: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成Technology Map Viewerによる合成結果の解析

Altera Corporation Introduction to Quartus II ■ 79

図 7. Technology Map Viewerウィンドウ

Technology Map Viewerでは、階層リストから1つまたは複数の項目を選択し回路図表示にハイライトすることが可能であり、逆もまた同様です。Technology MapViewerにより、RTL Viewerと同様に表示を検索することができます。76ページの「RTL Viewerによる合成結果の解析」を参照してください。 Technology Map Viewerは、等価性の情報をノードおよびソース情報と同様に表示します。

また、タイミング解析の実行後またはタイミング解析を含むフル・コンパイルの実行後、Technology Map Viewerを使用してトータル遅延および個別のノード遅延を含むタイミング・パスを作成するノードを表示することもできます。 「第8章: タイミング解析」、146ページの「Technology Map Viewer」 を参照してください。

関連情報 参照先

Quartus II Technology Map Viewer アルテラWebサイトのQuartus II Handbook、Volume1のChapter 13「Analyzing Designs with the Quartus IIRTL Viewer and Technology Map Viewer」

Quartus IIヘルプの「Overview: Viewing RTL Schematics」

Page 89: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成インクリメンタル・シンセシス

80 ■ Introduction to Quartus II Altera Corporation

インクリメンタル・シンセシスインクリメンタル・シンセシス機能は、追加変更を行うデザインに対し、そのデザイン階層を管理します。パーティションと呼ばれるデザインの独立した階層を指定し、プロジェクトの他の部分に影響を与えずに、Analysis & Synthesisをインクリメンタルに実行することができます。

インクリメンタル・シンセシスでは、デザイン・コンパイル時にデザインの変更部分のみを再合成するため、合成時間と実行時のメモリ使用量を削減することができます。つまり、デザインの他の部分に影響を与えずに、デザインの一部を変更して再合成することができ、未変更部分についてはすべての登録済みノードおよび組み合わせノードのノード名が維持されます。プロジェクトとそのすべてのパーティションにおいて正常にAnalysis & Synthesisを実行した後、個々のパーティションをまとめてマージすることで、再び1つの完全なプロジェクトとしてコンパイルすることができます。

デザイン・フローの各段階で、デザインのパーティションごとに作業する場合は、インクリメンタル・シンセシスが有効な場合があります。一方、インクリメンタル・シンセシスは、階層境界全域で最適化を行う必要がある場合には役立たないことがあります。

デザインに対しインクリメンタル・シンセシスを行う場合の基本的なフローは、次の通りです。

1. Analysis & Elaborationを実行します。

2. Project NavigatorのHierarchyタブのプロジェクトのエンティティの1つを選択します。

3. Set as Incremental Design Partitionコマンド (右ボタンのポップアップ・メニュー ) を使用して、選択したエンティティをインクリメンタル・シンセシス用にパーティションします。

最初のパーティションの設定時に、インクリメンタル・コンパイルを有効にするかどうかダイアログが表示されます。Yesをクリックすることで、EnableIncremental Synthesisオプションをオンにします。

4. Settingsダイアログ(Assignmentsメニュー)のCompilation Process SettingsタブでEnable incremental synthesisがオンになっていることを確認します。

Page 90: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 4 章 : 論理合成インクリメンタル・シンセシス

Altera Corporation Introduction to Quartus II ■ 81

5. 以下のとおりプロジェクトをコンパイルします。

✔ プロジェクトのフル・コンパイルを実行します。最初のコンパイル後に、プロジェクトに変更を加える場合は、プロジェクトを再コンパイルする必要があります。プロジェクトの再コンパイルでは、変更された各パーティションを個別に合成してから、それらのパーティションを自動的にマージして、平坦化されたネットリストを作成します。

✔ コンパイラ・モジュールを個々に実行している場合は、Analysis & Synthesisを実行して、各パーティションをインクリメンタルに合成します。パーティションをマージしてプロジェクトに戻せる状態になったら、Start > Start Partition Mergeコマンド(Processingメニュー)を使用して、フィッタおよびその他のコンパイラ・モジュールを実行する前に、完全なプロジェクト・データベースを作成します。

関連情報 参照先

Quartus IIインクリメンタル・シンセシス機能 アルテラWebサイトのQuartus II Handbook、Volume1のChapter 7「Quartus II Integrated Synthesis」

Quartus II ヘルプの「Overview: Using IncrementalSynthesis」

Page 91: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

配置配線

第 5章の内容 :

はじめに 84

フィッティング結果の解析 86

フィッティングの最適化 91

バック・アノテーションによるアサインメントの保存 101

第 5章

5

Page 92: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線はじめに

84 ■ Introduction to Quartus II Altera Corporation

はじめにPowerFit™フィッタとも呼ばれるQuartus® IIフィッタは、Quartus II開発ソフトウェアで「フィッティング」と呼ばれる配置配線を実行します。フィッタは、Analysis &Synthesisで作成されたデータベースを使用して、デバイスの可能なリソースにおいてプロジェクトのタイミング要求値を満たすようにロジックを適合させます。そして、それぞれのロジック・ファンクションを配線およびタイミングに関して最適となるロジック・セルのロケーションに割り当て、適切な配線パスとピン配置を選択します。図 1に、配置配線のデザイン・フローを示します。

図 1. 配置配線のデザイン・フロー

デザインにリソースの割り当てを行った場合、フィッタはそれらのリソースの割り当てとデバイスのリソースを適合させ、自動的に他の設定した制約条件を満たすように、デザイン内部にある残りのロジックの最適化を行います。デザインに制約を設定しなかった場合、フィッタは自動的にデザインを最適化します。フィットする先が見つからない場合、フィッタはコンパイルを終了し、エラー・メッセージを発します。

Settingsダイアログ (Assignmentsメニュー) のCompilation Process Settingsページでは、通常コンパイルあるいはスマート・コンパイルのいずれかを指定できます。「スマート」・コンパイルでは、コンパイラが詳細なコンパイルをより早く実行できるようにデータベースを作成しますが、ディスク・スペースを多めに使用します。スマート・コンパイルの後で再コンパイルを行うとき、コンパイラは最終コンパイル後に現在のデザインに行われた変更を評価し、その変更について必要なコンパイラ・モジュールだけを実行します。デザインのロジックに対し変更を行う場合は、コンパイラは処理を行うのにすべてのモジュールを使用します。 このオプションは、MAX+PLUS® IIのSmart Recompileコマンド (Processingメニュー ) と類似しています。

Page 93: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線はじめに

Altera Corporation Introduction to Quartus II ■ 85

Quartus II 開発ソフトウェアでは、フィッタ・モジュールを含むフル・コンパイラを起動することも、またフィッタを個別に起動することもできます。フィッタを個別に起動する前には、Analysis & Synthesisを実行しておく必要があります。

ステータス・ウィンドウには、フィッタでかかった処理時間だけでなく、プロジェクトのコンパイル時に実行していた他のモジュールの処理時間も記録されます。図2を参照してください。

図 2. ステータス・ウィンドウ

☞ quartus_fit実行コマンドの使い方

quartus_fit実行コマンドを使用して、フィッタをコマンド・プロンプトまたはスクリプトから個別に実行することができます。フィッタの実行前に、Analysis & Synthesisのquartus_map実行コマンドを完了しておく必要があります。

quartus_fit実行コマンドでは、任意のテキスト・エディタを使用して表示可能なテキスト・ベースのレポート・ファイルが個別に作成されます。

quartus_fit実行コマンドでヘルプを参照する場合は、コマンド・プロンプトで次のコマンドのいずれかを入力します。

quartus_fit -hquartus_fit -helpquartus_fit --help=<トピック名>

Page 94: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線フィッティング結果の解析

86 ■ Introduction to Quartus II Altera Corporation

フィッティング結果の解析Quartus II 開発ソフトウェアには、コンパイルとフィッティング結果の解析に役立ついくつかのツールがあります。メッセージ・ウィンドウおよびレポート・ウィンドウは、フィッティング結果の情報を表示します。 必要に応じて、Timing ClosurefloorplanおよびChip Editorでフィッティング結果を表示し、調整することができます。さらに、デザイン・アシスタントを使用して、一連のデザイン・ルールに基づき、デザインの信頼性をチェックできます。

メッセージ・ウィンドウを使用したフィッティング結果の表示

メッセージ・ウィンドウのProcessingタブおよびレポート・ウィンドウのMessagesセクション、またはレポート・ファイルでは、最新のコンパイルまたはシミュレーションから生成されたメッセージを表示します。図 3 に、メッセージ・ウィンドウを示します。

図 3. メッセージ・ウィンドウ

ロケーション・リストで、複数のロケーションを選択できます。

矢印ボタンで前後のメッセージを選択できます。

Locateボタンをクリックして選択したロケーションを表示します。

Page 95: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線フィッティング結果の解析

Altera Corporation Introduction to Quartus II ■ 87

メッセージ・ウィンドウでHelp (右ボタンのポップアップ・メニュー ) を選択して、特定メッセージのヘルプを参照できます。

メッセージ・ウィンドウに表示されるメッセージのフィルタリングを行う場合は、Optionsダイアログ (Toolsメニュー) のFilteringタブのオプションを設定します。これにより、情報およびワーニング・メッセージの表示を制御できます。メッセージ・ウィンドウで右ボタンのポップアップ・メニューを使用して、警告メッセージ、重要な警告メッセージ、情報メッセージ、およびその他の情報メッセージの表示を制御、またはタイプ別にメッセージをソートするコマンドを実行することができます。

OptionsダイアログのMessagesタブでは、メッセージの各タイプに対して個別にタブを表示するオプションを指定することができ、Colorsタブではメッセージの各タイプの色をカスタマイズできます。

メッセージを選択し、右ボタンのポップアップ・メニューからコマンドを選択して、メッセージに応じてアサインメント・エディタ、Chip Editor、デザイン・ファイル、Resource Property EditorまたはTiming Closure Floorplanを表示することができます。 また、メッセージを選択し、次にMessage Locationリストから移動先を選択して、Locateをクリックすることで特定のロケーションに移動することもできます。

レポート・ウィンドウまたはレポート・ファイルを使用したフィッティング結果の表示

レポート・ウィンドウには、フィッタがデザインに対し配置配線を行った結果を解析するのに役立つ数多くの項目があります。ここには、リソース使用率を表示する項目も数種類含まれています。また、フィッタで生成されたエラー・メッセージだけでなく、実行した他のモジュールのメッセージもリスト表示されます。

関連情報 参照先

メッセージの表示 Quartus IIヘルプの「Viewing Messages」

メッセージのソースの指定 Quartus IIチュートリアルの「Compilation module」

Quartus IIヘルプの「Locating the Source of a Message」

Page 96: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線フィッティング結果の解析

88 ■ Introduction to Quartus II Altera Corporation

デフォルトでは、フィッタか他のコンパイル、またはシミュレーション・モジュールを実行すると、レポート・ウィンドウが自動的に開きますが、Optionsダイアログ (Toolsメニュー ) のProcessingページでAutomatically open the Report windowbefore starting a processing task if the appropriate Tool window is not alreadyopenをオフにすれば、レポート・ウィンドウを自動的に開かないよう指定することができます。 また、Compiler Toolウィンドウが開いている場合、レポート・ウィンドウは自動的に開きませんが、各モジュールのReport Fileアイコンをクリックすると、そのモジュールのレポートが表示されます。 フィッタがデザインを処理しているときには、レポート・ウィンドウは絶えず新しい情報に更新されます。 フィッタを停止した場合、レポート・ウィンドウにはフィッタの停止前に作成された情報だけが表示されます。 図 4を参照してください。

図 4. レポート・ウィンドウのフィッタ・セクション

Quartus II開発ソフトウェアは、OptionsダイアログのProcessingページで指定したオプションに応じて、レポート・ウィンドウのテキスト版またはHTML版を自動的に生成することができます。

Page 97: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線フィッティング結果の解析

Altera Corporation Introduction to Quartus II ■ 89

Timing Closure Floorplanを使用した結果の解析

フィッタの実行後、Timing Closure Floorplanで配置配線の結果が表示されます。最終コンパイルで行われたリソースの割り当てを維持するため、フィッティング結果をバック・アノテートすることができます。 編集可能なTiming Closure floorplanを使用すれば、フィッタおよびユーザ・アサインメントによるロジック配置の表示、LogicLock™ 領域アサインメントの実行、および配線の輻輳の表示ができます。図5を参照してください。

図 5. Timing Closure Floorplan

関連情報 参照先

レポート・ウィンドウ内の項目 Quartus IIヘルプの「Report Window & File Format」

レポート・ウィンドウ Quartus IIヘルプの「Overview: Viewing the Results ofa Compilation or Simulation in the Report Window」

コンパイル・レポートの表示 Quartus IIチュートリアルの「Compilation module」

Timing Closure Floorplanを使用して、リソース使用率と配線を表示できます。

Page 98: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線フィッティング結果の解析

90 ■ Introduction to Quartus II Altera Corporation

Excalibur™デバイスをターゲットとするデザインをコンパイルする場合、Excaliburエンベデッド・プロセッサ・ストライプをTiming Closure Floorplanに表示することもできます。このストライプはロジック・セルとピンの間にあり、デュアル・ポートRAMと同様に、マイクロプロセッサのエンベデッド・ロジックへのインタフェースがあります。

Timing Closure Floorplanでは、リソース使用率を色分けして表示します。 割り当て前および割り当て済みのピンやロジック・セル、未配線のアイテム、MegaLAB™構造、列および行のFastTrack®ファン・アウトなど、リソースの種類により色を分けて表示します。 Timing Closure Floorplanには、ピンおよびデバイスの内部構造を表示する様々なフロアプラン表示もあります。

Timing Closure Floorplanでアサインメントを編集するには、リソースのアサインメントをクリックし、新しいロケーションにドラッグします。 リソースを TimingClosure Floorplanにドラッグしている間にラバーバンディングを使用すると、移動で影響を受けた配線中のリソース数を視覚的に表示できます。

デザイン内部での配線の輻輳、パスの配線遅延情報、特定ノードの接続数を表示できます。 Timinng Closure Floorplanを使用して、特定構造のノード・ファン・アウトおよびノード・ファン・インの表示、あるいは特定ノード間のパスの表示もできます。必要に応じて、リソースのアサインメントを変更または削除できます。 TimingClosure Floorplanの使用について詳しくは、 「第 9章: タイミング・ クロージャ」、152ページの「Timing Closure Floorplan」を参照してください。

フィッティングをさらに詳細に表示したり、フィッティングの追加調整を行う場合、Chip Editorを使用すると、Timing Closure Floorplanでは見えないデザインの配置配線を詳しく明示して、リソース・プロパティ・エディタおよびチェンジ・マネージャで変更を行うことができます。詳しくは、205ページの「第13章: ECO (設計変更管理)」を参照してください。

関連情報 参照先

Timing Closure floorplan でのアサインメントおよび配線情報の表示

Quartus IIヘルプの「Overview: Working with Assignmentsin the Floorplan Editor」および「Overview: Viewing RoutingInformation」

Timing Closure Floorplanにおけるフィッティングの表示

アルテラWebサイトのQuartus II Handbook、Volume2のChapter 7「Timing Closure Floorplan」

Quartus IIチュートリアルの「Compilation module」

Page 99: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線フィッティングの最適化

Altera Corporation Introduction to Quartus II ■ 91

デザイン・アシスタントを使用したデザインの信頼性のチェック

Quartus II デザイン・アシスタントでは、一連のデザイン・ルールに基づいてデザインの信頼性をチェックし、フィッティングまたはデザインの最適化に影響する問題点があるかどうか判断できます。Settingsダイアログ (Assignmentsメニュー ) のDesign Assistantページでは、デザインをチェックするときに使用するデザインの信頼性ガイドラインを指定できます。詳しくは、 「第4章: 論理合成」、75ページの「デザイン・アシスタントを使用したデザインの信頼性のチェック」を参照してください。

フィッティングの最適化一度フィッタを実行し結果を分析した後で、フィッティングを最適化するいくつかのオプションを試すことができます。

■ ロケーション・アサインメント■ 配置配線を制御するオプションの設定■ Resource Optimization Advisor■ デザイン・スペース・エクスプローラ

ロケーション・アサインメント

配置配線を制御するため、Timing Closure Floorplanまたはアサインメント・エディタを使用して、ピン、ロジック・セル、またはロジック・アレイ・ブロック (LAB)といったデバイス上の物理リソースにロジックを割り当てることができます。 アサインメントの編集の際にTiming Closure Floorplanを使用すると、デバイスとその機能がグラフィカルに表示されます。新しくアサインメントを作成する場合は、Assignment Editorコマンド (Toolsメニュー ) を使用して、同時にいくつかのノード特定アサインメントを作成することができます。 さらにTiming Closure Floorplanまたはアサインメント・エディタの使用に加え、Tclコマンドもアサインメントの作成に使用できます。プロジェクトに対してグローバルなアサインメントを指定する場合、Settingsダイアログ (Assignmentsメニュー ) を使用できます。 初期デザイン制約の指定について詳しくは、55ページの「第3章: 制約の入力」を参照してください。

Page 100: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線フィッティングの最適化

92 ■ Introduction to Quartus II Altera Corporation

アサインメントを作成したら、アサインメント・エディタまたは Timing ClosureFloorplanで編集することができます。 コンパイル後、Timing Closure Floorplanを使用して、既存のリソース・アサインメントのピン、ロジック・セル、ロウ、カラム、領域、MegaLAB 構造、および LAB を編集できます。 Timing Closure Floorplan、LogicLock Regionsウィンドウ、またはLogicLock Region Propertiesダイアログを使用して、ノードまたはエンティティをLogicLock領域に割り当てることができます。

Timing Closure Floorplan には、デバイスの様々な表示形式があり、特定のロケーションに正確なアサインメントを行うのに役立ちます。また、等式および配線情報を表示し、アサインメントを Regionsウィンドウにある様々な領域にドラッグ・アンド・ドロップすることができます。デザインにある制約が多すぎてデバイスへフィッティングができない場合は、一部のアサインメントを削除し、フィッタがロジックを配置できるようにして、フィッティングを最適化します。

配置配線を制御するオプションの設定

フィッタを制御し、配置配線に影響を与える可能性があるいくつかのオプションを設定できます。

■ フィッタ・オプション■ フィッティングの最適化とフィジカル・シンセシス・オプション■ フィッティングに影響を与える独立およびロジック・オプション

フィッタ・オプションの設定

Settings ダイアログ (Assignmentsメニュー ) の Fitter Settings ページを利用して、タイミング・ドリブン・コンパイルとコンパイル・スピードを制御するオプションを指定できます。I/Oピンに関連するタイミング要求値とアサインメントに適合するよう、ロジック・セルのレジスタではなく I/Oセルのレジスタをフィッタで使用するように指定できます。 フィッタは直接デザインの最適化に対しスロー・コーナーとなるタイミング遅延のみを指定したり、またはスロー・コーナーと同様にファースト・コーナー・タイミング遅延についてもデザインの最適化にあたり両方のコーナーでタイミング要求を満たすように指定することもできます。 フィッタが標準フィッティング (fMAXタイミング要求に最大限合うよう実行)、高速フィッティング機能 (コンパイル・スピードは速いがfMAXは減少)、または自動フィッティング機能 (タイミング要求を満たした後フィッタ・エフォートは減少し、 コンパイル時間が短縮) を使用するか指定できます。 Fitter Settingsページでは、フィッタ・エフォートを1回のみの試行に制限することが可能ですが、この場合fMAXは減少します。

Page 101: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線フィッティングの最適化

Altera Corporation Introduction to Quartus II ■ 93

フィジカル・シンセシス最適化オプションの設定

Quartus II 開発ソフトウェアでは、フィッティング中にネットリストを最適化するフィジカル・シンセシスを実行するオプションを設定できます。フィジカル・シンセシス最適化オプションは、Settingsダイアログ (Assignmentsメニュー ) の FitterSettingsにあるPhysical Synthesis Optimizationsページで指定できます。

フィジカル・シンセシス最適化オプションには、次のオプションが含まれます。

■ 組み合わせロジックのフィジカル・シンセシスの実行

■ レジスタのフィジカル・シンセシス:– レジスタ複製の実行– レジスタ・リタイミングの実行

■ フィジカル・シンセシス・エフォート:

– Normal (デフォルトのエフォート・レベル; 2~ 3回のコンパイル時間の平均 )

– Extra (コンパイル時間は Normal以上; 性能は向上 )– Fast (コンパイル時間はNormal以下; 性能は低下する場合あり)

フィジカル・シンセシス最適化オプションについて詳しくは、 「第 9 章: タイミング・ クロージャ」、157ページの「ネットリスト最適化オプションを使用したタイミング・クロージャの実現」を参照してください。

関連情報 参照先

Quartus IIフィジカル・シンセシス最適化 アルテラWebサイトのQuartus II Handbook、Volume2 の Chapter 8「Netlist Optimizations & PhysicalSynthesis」

Quartus IIフィッタ最適化オプション Quartus IIヘルプの「Using Physical Synthesis」

Page 102: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線フィッティングの最適化

94 ■ Introduction to Quartus II Altera Corporation

フィッティングに影響のあるロジック・オプション

Quartus II ロジック・オプションでは、ソース・コードを編集しなくてもアトリビュートを設定できます。 アサインメント・エディタ (Assignmentsメニュー ) の個別ノードおよびエンティテイに対して、Quartus II ロジック・オプションを指定でき、またSettingsダイアログのFitter SettingsページにあるMore Settingsをクリックすると表示されるMore Fitter Settingsダイアログでグローバルなデフォルト・ロジック・オプションを指定することができます。 例えば、ロジック・オプションを使用すれば、グローバル配線パスにあるデバイス全体で信号が利用できるように指定したり、フィッタが自動的にパラレル・エキスパンダ・チェインを作成するように指定できます。また、フィッタがあるレジスタとそれと同じロジック・セルにある組み合わせ論理とを自動的に結合するように指定 (「レジスタ・パッキング」とも呼ばれる ) したり、またはキャリー・チェイン、カスケード・チェイン、およびパラレル・エキスパンダ・チェインの長さを制限することも可能です。

.

Resource Optimization Advisor

Resource Optimization Advisorは、下記のリソース使用率の最適化情報を提供します。

■ ロジック・エレメント使用率■ メモリ・ブロック使用率■ DSPブロック使用率■ I/O使用率■ 配線使用率

プロジェクトを開いている時には、Resource Optimization Advisor (Toolsメニュー) を選択して、Resource Optimization Advisorを表示することができます。プロジェクトがまだコンパイルされていない場合は、Resource Optimization Advisorはリソース使用率を最適化する一般的な情報しか提供しません。プロジェクトがコンパイルされている場合は、Resource Optimization Advisorはプロジェクト情報と最新の設定をベースにした特定のプロジェクトの情報を提供します。図 6に、Resource Optimization Advisorを示します。

関連情報 参照先

配置配線を制御する Quartus II ロジック・オプション

Quartus IIヘルプの「Logic Options」、「Creating, Editing& Deleting Assignments」、および「Specifying Settingsfor Default Logic Options」

Page 103: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線フィッティングの最適化

Altera Corporation Introduction to Quartus II ■ 95

図 6. Resource Optimization Advisor Summaryページ

Resource Optimization Advisorの最初のページは、コンパイル後のリソース使用率を要約し、問題が起こりうる領域を指摘します。 Resource Optimization Advisorの左側は、問題と情報の階層リストを表示します。現在のデザインおよびターゲット・デバイス・ファミリに対して情報が適切かどうか、あるいは現在のデザインがすでに推奨設定になっているかどうかを示します。 階層リストのいずれかの情報をクリックすると、右側には詳細情報、サマリ、現在のグローバル設定、および1つまたは複数の推奨する対応内容が示されます (図 7参照)。

Page 104: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線フィッティングの最適化

96 ■ Introduction to Quartus II Altera Corporation

図 7. Resource Optimization Advisor Recommendationページ

推奨する対応内容にQuartus II設定の変更が含まれる場合は、Resource OptimizationAdvisorの右側にQuartus II開発ソフトウェアの適切なダイアログ、ページ、または機能へのリンクが示されることがあります。 また、Quartus IIヘルプやアルテラのWebサイトにあるその他のドキュメントへのリンクが示されることもあります。

現在の推奨内容を印刷する場合は、右のウィンドウ枠をクリックしてPrint Recommendation (右ボタンのポップアップ・メニュー ) を選択します。全ての推奨内容を印刷する場合は、左のウィンドウ枠をクリックしてPrint All Recommendations (右ボタンのポップアップ・メニュー ) を選択します。

タイミング結果を向上する情報を表示する場合は、Timing Optimization Advisorを使用できます。 「第9章: タイミング・ クロージャ」、156ページの「Timing OptimizationAdvisor」を参照してください。

Recommendationの階層リスト—アイコンが潜在的な問題領域を指摘

Recommendationページのリンクをクリックすると、適切なダイアログ、ページ、または機能が開きます。

Page 105: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線フィッティングの最適化

Altera Corporation Introduction to Quartus II ■ 97

デザイン・スペース・エクスプローラ

Quartus II フィッティングを制御する他の方法は、デザインの最適化を支援するデザイン・スペース・エクスプローラ (DSE) のTclスクリプトdse.tclを使用することです。DSEインタフェースでは、自動的にQuartus IIオプションおよび設定の範囲を検索し、プロジェクトで最善の結果が得られるためにはどの設定を使用すべきかを決定できます。 コマンド・プロンプトからquartus_sh実行コマンドでDSEを起動するか、Quartus II <version number> Design Space Explorer コマンド ( 例えば、Quartus II 4.2 Design Space Explorerコマンド)、またはQuartus II開発ソフトウェアのインタフェースのLaunch Design Space Explorerコマンド (Toolsメニュー ) からDSEを起動することができます。

現在のプロジェクトの最適化設定を決定するDSEのエフォート・レベルを指定することができます。 また、DSEインタフェースにより、最適化のゴールおよび許容コンパイル時間を指定することもできます。図 8に、デザイン・スペース・エクスプローラのSettingsタブを示します。

図 8. デザイン・スペース・エクスプローラの Settingsタブ

Page 106: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線フィッティングの最適化

98 ■ Introduction to Quartus II Altera Corporation

DSEにはいくつかの検索モードがあり、DSEウィンドウのExploration Settingの下に一覧で表示されています。

■ Search for Best Area■ Search for Best Performance (エフォート・レベルを指定できます)■ Advanced Search

Advanced Searchオプションを選択することで、Advanced タブで調査領域、最適化のゴール、および検索手法の追加オプションを指定できます。図 9に、Advancedタブを示します。

図 9. デザイン・スペース・エクスプローラの Advancedタブ

調査設定の指定後、Explore Spaceコマンド (Processingメニュー ) またはボタンを使用して調査を開始できます。 調査の結果をExploreタブで見ることができます。図10に、Explore タブを示します。 View Last DSE Report for Project コマンド(Processingメニュー ) またはボタンを使用して、テキスト・ファイルのフォームで調査結果を見ることもできます。

Page 107: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線フィッティングの最適化

Altera Corporation Introduction to Quartus II ■ 99

図 10. デザイン・スペース・エクスプローラの Explorerタブ

☞ デザイン・スペース・エクスプローラの実行

コマンド・プロンプトで次のコマンドを入力して、DSE をグラフィカル・ユーザ・インタフェース・モードで実行できます。

quartus_sh --dse

コマンド・プロンプトで次のコマンドを入力して、任意の追加DSEオプションと一緒にDSEをコマンドライン・モードで実行できます。

quartus_sh --dse -nogui <プロジェクト名> [-c <リビジョン名>]

DSEオプションのヘルプを参照する場合は、コマンド・プロンプトで quartus_sh --help=dseと入力するか、DSEウィンドウのShow Documentation (Helpメニュー ) を選択します。

Page 108: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線フィッティングの最適化

100 ■ Introduction to Quartus II Altera Corporation

調査領域モードの多くで、DSEがデザインのフィッティングに費やすエフォートの程度を指定できますが、エフォート・レベルを上げると通常コンパイル時間が長くなります。 カスタム調査モードでは、各種のパラメータ、オプション、およびモードを指定して、デザインへの影響を調べることができます。

シグネチャ・モードでは、単一パラメータがデザインへ及ぼす影響とfMAXのトレード・オフ、スラック、コンパイル時間、および領域を調べることができます。 シグネチャ・モードでは、DSEは複数のシードに対する単一パラメータの影響をテストして、平均値をレポートするので、デザイン領域におけるパラメータの作用を評価できます。

DSEはOptimization Goalオプションのリストも提供しており、それによってDSEが領域、スピード、または負のスラックや障害のあるパスに対する最適化を行うか否かを指定できます。

さらに、DSEが検索に費やす時間と処理を制御するSearch Methodオプションを指定することができます。

DSE でデザインの調査を完了した後、DSE から新しいリビジョンを作成できます。次にDSEを閉じて、Quartus II開発ソフトウェアから新しいリビジョンでプロジェクトを開くことができます。

関連情報 参照先

デザイン・スペース・エクスプローラ アルテラWebサイトのQuartus II Handbook、Volume2のChapter 9「Design Space Explorer」

最適化パフォーマンスのパラメータおよび設定 アルテラWebサイトのQuartus II Handbook、Volume2のChapter 6「Design Optimization for Altera Devices」

Page 109: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線バック・アノテーションによるアサインメントの保存

Altera Corporation Introduction to Quartus II ■ 101

バック・アノテーションによるアサインメントの保存

アサインメントを任意のデバイス・リソースにバック・アノテーションして、最終コンパイルのリソースのアサインメントを保存できます。プロジェクトにある全てのリソースのアサインメントをバック・アノテーションできます。また、LogicLock領域のサイズおよびロケーションもバック・アノテーションできます。アサインメントを指定して、Back-Annotate Assignmentsダイアログ (Assignmentsメニュー )でバック・アノテーションできます。

Back-Annotate Assignmentsダイアログでは、バック・アノテーションのタイプをデフォルト・タイプまたは拡張タイプから選択できます。図 11を参照してください。

Page 110: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線バック・アノテーションによるアサインメントの保存

102 ■ Introduction to Quartus II Altera Corporation

図 11. Back-Annotate Assignmentsダイアログ

Back-Annotate Assignments

ダイアログ (拡張タイプ)

Back-Annotate Assignmentsダイアログ (デフォルト・タイプ)

Page 111: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 5 章 : 配置配線バック・アノテーションによるアサインメントの保存

Altera Corporation Introduction to Quartus II ■ 103

Back-Annotate Assignments (デフォルト・タイプ) ダイアログでは、アサインメントの再配列でフィッタがさらに自由に動作できるように、ピンおよびロジック・セル・アサインメントをロケーション・アサインメントの制約が少ない状態に「降格」できます。Back-Annotate Assignments (拡張タイプ) ダイアログでは、デフォルトのバック・アノテーション・タイプでできることはすべて実行可能であり、さらにLogicLock 領域もバック・アノテーションでき、オプションでその領域内のノードおよび配線もバック・アノテーションできます。また、拡張バック・アノテーション・タイプには、領域、パス、リソース・タイプなどに基づいてフィルタリングを行ったり、ワイルドカードが使用できる様々なオプションがあります。バック・アノテーションのタイプは、1 つだけが使用可能で、両方を使用することはできません。どちらのタイプを使用すべきかが分からない方には、アルテラでは多くの場合、拡張バック・アノテーション・タイプを使用することを推奨します。これは、拡張タイプには特に LogicLock領域を使用している場合、多くのオプションがあるためです。LogicLock領域とバック・アノテーションの使用について詳しくは、 「第6章:ブロック・ベース・デザイン」、112ページの「LogicLock領域アサインメントのバック・アノテーション」を参照してください。

関連情報 参照先

ロケーション・アサインメントのバック・アノテーション

Quartus IIヘルプの「Back-Annotating Assignments fora Project」

LogicLock 領域アサインメントのバック・アノテーション

Quartus II ヘルプの「Back-Annotating a LogicLockRegion」

LogicLock配置のバック・アノテーション Quartus IIチュートリアルの「LogicLock module」

Page 112: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

ブロック・ベース・デザイン

第 6章の内容 :

はじめに 106

Quartus IIブロック・ベース・デザイン・フロー 106

LogicLock領域 108

中間合成結果の保存 111

EDAツールとLogicLockの使い方 115

第 6章

6

Page 113: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 6 章 : ブロック・ベース・デザインはじめに

106 ■ Introduction to Quartus II Altera Corporation

はじめにQuartus® II LogicLock™機能により、ブロック・ベースのデザイン・フローが可能になります。この機能を使うことにより、モジュール・ベースのデザインを作成し、モジュール毎にデザインおよび最適化を行い、トップレベル・デザインへ組み込みます。

LogicLock 領域は、柔軟性が高く、再利用可能な制約によってターゲット・デバイス上のロジック配置のガイド能力が向上します。ターゲット・デバイス上にある物理リソースの任意の矩形領域を LogicLock領域として定義できます。ノードまたはエンティティを LogicLock領域に割り当てることにより、フィッタはフィッティングの実行中にこれらのノードまたはエンティティを領域内に配置します。

LogicLock 領域では、ロジック・ブロックを個別に最適化できる上、その後ロジック・ブロックおよびその配置制約をより大きなデザインにインポートできるので、チームでのブロック・ベースのデザインに役立ちます。LogicLock手法は、モジュールの再利用を促します。これは、モジュールを別々に開発することが可能であり、また、パフォーマンスを低下させることなく他のデバイスで使用するためにLogicLock領域に制約を与えることができるので、リソースを活用してデザイン・サイクルを短縮することが可能になります。

Quartus IIブロック・ベース・デザイン・フロー

従来のトップ・ダウン・デザイン・フローでは、デザインに対してネットリストは1つだけです。トップダウン・デザイン・フローでは、デザインを実装するときに、デザインの個々のモジュールはデザイン全体の異なるパフォーマンスを持つことが可能です。ボトムアップ・ブロック・ベース・デザイン・フローでは、各モジュールに対して別々のネットリストが存在します。これにより設計者は、各モジュールを個別に最適化し、トップレベル・デザインに組み込むブロック・ベース・デザインを作成できます。ブロック・ベース・デザインは、次のデザイン・フローで使用できます。

■ モジュール・デザイン・フロー: このフローでは、トップレベル・デザインでデザインを分割し、個別のサブモジュールでインスタンスします。各モジュールは個々に開発可能で、各モジュールをトップレベル・デザインに組み込むことができます。配置は、手動またはQuartus II開発ソフトウェアにより決定されます。

Page 114: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 6 章 : ブロック・ベース・デザインQuartus IIブロック・ベース・デザイン・フロー

Altera Corporation Introduction to Quartus II ■ 107

■ インクリメンタル・デザイン・フロー: このフローでは、システムを作成し、最適化した後、オリジナルのシステムのパフォーマンスにほぼ影響しない将来的なモジュールを追加します。

■ チームベース・デザイン・フロー: このフローでは、デザインを個々のモジュールに分割し、モジュールをインスタンスしてトップレベル・デザインに接続します。他のチーム・メンバは、それより低いレベルのモジュールについて、各モジュールに別のプロジェクトを作成したり、トップレベル・デザイン用のアサインメントを使用します。低いレベルのモジュールが完成したら、これをトップレベル・デザインにインポートし、最終コンパイルおよび検証を行います。

3つのデザイン・フローのすべてにおいて、回路の物理構造に関して体系づけるか、またはクリティカル・パスによってデザインを機能ブロックに分割することで、すべての開発レベルでのパフォーマンスを維持することができます。図 1に、基本的なブロック・ベース・デザイン・フローを示します。

図 1. ブロック・ベース・デザイン・フロー

Page 115: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 6 章 : ブロック・ベース・デザインLogicLock領域

108 ■ Introduction to Quartus II Altera Corporation

LogicLock領域LogicLock領域は、デバイス上でのサイズ (高さと幅) およびロケーションで定義されます。領域のサイズおよびロケーションをマニュアルで指定するか、またはQuartus II開発ソフトウェアで自動的に作成することができます。表 1に、Quartus II開発ソフトウェアで指定可能なQuartus II LogicLock領域の主なプロパティを示します。

LogicLockデザイン・フローを使用して、親領域および子領域を宣言することで、領域のグループの階層構造を定義できます。Quartus II 開発ソフトウェアは、子領域を親領域の境界内に完全に配置します。親領域をデバイス上のロックされた場所に制約することなく、親領域に関連する子モジュールをロックできます。

Timing Closure Floorplan、 LogicLock Regions Window コマンド (Assignmentsメニュー )、Project NavigatorのHierarchyタブ、または Tclスクリプトを使用して、LogicLock領域を作成および変更できます。すべてのLogicLockアトリビュートおよび制約情報 ( クロック設定、ピン配置、および関連配置情報 ) は、プロジェクトのQuartus II Settings File (.qsf) に保存されます。

表 1. LogicLock領域のプロパティ

プロパティ 値 動作

状態 (State) フローティング (Floating) またはロック (Locked)

フローティング領域では、Quartus II開発ソフトウェアはデバイス上の領域のロケーションを決定します。ロック領域は、ユーザ定義のロケーションが使用されます。フロアプランでは、ロック領域は実線で、フローティング領域は破線で表示されます。ロック領域のサイズは固定する必要があります。

サイズ (Size) 自動 (Auto) または固定 (Fixed)

自動サイズ領域では、Quartus II開発ソフトウェアは、コンテンツが指定された領域の適切なサイズを決定します。固定領域は、ユーザ定義の形状およびサイズが使用されます。

リザーブ (Reserved)

オンまたはオフ リザーブ・プロパティにより、エンティティに対する領域内のリソースで当該領域に割り当てられていないものを、Quartus II開発ソフトウェアが使用できるかどうかを定義できます。リザーブ・プロパティがオンになっている場合、領域に割り当てられた項目だけが境界内に配置可能です。

施行 (Enforcement)

ハードまたはソフト

ソフト領域では、タイミング要求を重視し、デザイン全体の性能が向上するようであれば、一部のエンティティを領域外に置くことができます。ハード領域では、Quartus II 開発ソフトウェアは、領域の境界外にコンテンツを配置することはできません。

原点 (Origin) 任意のフロアプランのロケーション

原点は、フロアプランにおける LogicLock 領域の配置を定義します。

Page 116: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 6 章 : ブロック・ベース・デザインLogicLock領域

Altera Corporation Introduction to Quartus II ■ 109

Timing Closure Floorplanを使用して、LogicLock領域アサインメントを作成および編集できます。Create New Regionボタンを使用して、Timing Closure Floorplan上でフロアプラン・ビュー、NodeFinder、またはProject NavigatorのHierarchyタブからノードをドラッグ・アンド・ドロップすることで、LogicLock 領域を描画することができます。

LogicLock領域を作成した後は、LogicLock Regionsウィンドウを使用して、サイズ、状態、幅、高さ、および原点を含むデザインのすべての LogicLock領域を表示できます。また、新しいLogicLock領域も編集および追加できます。図 2を参照してください。

図 2. LogicLock Regionsウィンドウ

また、LogicLock Regions Propertiesダイアログを使用して既存のLogicLock領域を編集したり、Back-Annotate Assignmentsダイアログを使用してLogicLock領域にあるすべてのノードをバック・アノテーションしたり、デザインのLogicLock領域についての情報を表示したり、また不正なアサインメントを含む領域を特定できます。

さらに、LogicLock 領域に、ソース・ノードおよびディスティネーション・ノードをベースにしたパスベース・アサインメント、ワイルドカード代入、および両アサインメントのフィッタ・プロパティを追加できます。優先順位の設定により、Quartus II 開発ソフトウェアがパスベースおよびワイルドカード・アサインメントの重複を解決する順序を指定できます。LogicLock Region PropertiesダイアログからPriorityダイアログを開くことができます。図 3を参照してください。

Page 117: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 6 章 : ブロック・ベース・デザインLogicLock領域

110 ■ Introduction to Quartus II Altera Corporation

図 3. LogicLock Region Propertiesダイアログ

Analysis & Elaborationまたはフル・コンパイルを実行した後は、Quartus II開発ソフトウェアで、Project NavigatorのHierarchyタブにデザインの階層構造が表示されます。 この表示にある任意のデザイン・エンティティをクリックし、そこから新規LogicLock 領域を作成するか、Timing Closure Floorplan でエンティティを既存のLogicLock領域にドラッグします。

また、コマンド・ラインまたはQuartus II Tcl Consoleウィンドウで、LogigLock領域コンテンツを割り当てるLogicLock Tclコマンドを用意しています。このTclコマンドを使用して、フローティングおよび自動サイズ LogicLock 領域を作成したり、ノードまたは階層構造を領域に追加したり、階層構造境界を保持したり、配置結果をバック・アノテーションしたり、領域をインポートおよびエクスポートしたり、また中間合成結果を保存できます。

Page 118: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 6 章 : ブロック・ベース・デザイン中間合成結果の保存

Altera Corporation Introduction to Quartus II ■ 111

中間合成結果の保存エンティティのLogicLock制約情報を含む、対応するQSFを使用して、デザインにあるエンティティの VQM ファイル (.vqm) を作成することで、ブロック・ベースLogicLock デザイン・フローと関連する個々のエンティティの合成結果を保存できます。

カスタム・ロジックのブロックをデザインするか、検証済みのIPのブロックをインスタンスします。そして、そのブロックにアサインメントを行い、機能およびパフォーマンスを検証します。その後、ブロックをロックして配置およびパフォーマンスを固定し、さらに他のデザインにインポートできるようにブロックをエクスポートします。この方法では、ブロックは個別にデザイン、テスト、最適化され、より大きいデザインに統合されるときに、そのパフォーマンスを保持します。

さらに、中間合成結果をVQMファイルに保存し、アサインメントをインポートするプロジェクトのVQMファイルでエンティティを置き換えることで、新規プロジェクトで合成されたノード名がインポートされたアサインメントのノード名と対応していることを確認します。

VQM ファイルとしての中間合成結果の保存、アサインメントのバック・アノテーション、LogicLock領域を含むデザインのQSFのエクスポートおよびインポートの基本的な流れは次の通りです。

1. LogicLock領域を作成します。

2. デザインをコンパイルします。

3. Back-Annotate Assignments (拡張タイプ) ダイアログを使用して、LogicLock領域 (複数可) のロジック配置をロックします。

4. Export Assignmentsダイアログ (Assignmentsメニュー) を使用して、LogicLock領域アサインメントをQSFにエクスポートします。

関連情報 参照先

Quartus II開発ソフトウェアにおける LogicLockの使い方

アルテラWebサイトのQuartus II Handbook、Volume2のChapter 10「LogicLock Design Methodology」

Quartus II ヘルプの「Overview: Using LogicLockRegions」

Quartus IIチュートリアルの「LogicLock module」

Page 119: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 6 章 : ブロック・ベース・デザイン中間合成結果の保存

112 ■ Introduction to Quartus II Altera Corporation

5. Import Assignmentsコマンド (Assignmentsメニュー ) を使用して、VQMファイルのモジュールをトップレベル・デザインにインスタンスし、LogicLock領域アサインメントをインポートします。LogicLock Import File Assignmentsをクリックして、LogicLock領域アサインメント、インポートしたQSFのエンティティ名、およびアサインメントを適用したデザインのエンティティ名を含むQSFの名前を指定します。

LogicLock領域アサインメントのバック・アノテーション

Back-Annotate Assignments ( 拡張タイプ ) コマンドを使用すると、デザインのLogicLock領域にロジック配置をロックできます。バック・アノテーションにより、領域およびそのアサインメントをトップレベル領域にインポートする際、LogicLock領域のパフォーマンスを維持できます。

LogicLock 領域アサインメントをバック・アノテートするには、Back-AnnotateAssignments (拡張タイプ) コマンドを使用する必要があります。また、このコマンドを使用することで、LogicLock領域アサインメントを含まないデザインをバック・アノテーションできます。アサインメントのバック・アノテーションについて詳しくは、 「第5章: 配置配線」、101ページの「バック・アノテーションによるアサインメントの保存」を参照してください。

☞ quartus_cdb実行コマンドの使い方

quartus_cdb実行コマンドを使用して、中間合成結果をVQMファイルとして保存したり、アサインメントをバック・アノテーションしたり、コマンド・プロンプトまたはスクリプトでLogicLock領域を個別にエクスポートおよびインポートできます。

quartus_cdb 実行コマンドでヘルプを参照する場合は、コマンド・プロンプトで次のコマンドのいずれかを入力します。

quartus_cdb -hquartus_cdb --helpquartus_cdb --help=<トピック名>

Page 120: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 6 章 : ブロック・ベース・デザイン中間合成結果の保存

Altera Corporation Introduction to Quartus II ■ 113

LogicLockアサインメントのエクスポートおよびインポート

Export AssignmentsおよびImport Assignmentsダイアログ (Assignmentsメニュー )により、LogicLock 領域アサインメントを使用してエンティティを個別に最適化し、これらのエンティティをトップレベル・デザインでインスタンスする際に、最適化内容を保持できます。

LogicLock領域アサインメントをエクスポートするとき、Quartus II開発ソフトウェアは、すべてのLogicLock領域アサインメント、他のQSFアサインメント、および特定のエンティティ・インスタンスに適用される I/Oスタンダード・アサインメントを、Export Assignmentsダイアログで指定したQSFに書き込みます。デフォルトでは、Quartus II開発ソフトウェアは、デザイン全体のLogicLock領域アサインメントをエクスポートします。 Export assignments hierarchy pathボックスでは、エクスポートするサブデザイン・エンティティを指定できます。図 4を参照してください。

図 4. Export Assignmentsダイアログ

LogicLock領域アサインメントをインポートするとき、Quartus II開発ソフトウェアは現在のコンパイル対象を起点としてコンパイル階層構造をたどります。現在のプロジェクトに低レベル・エンティティのインスタンスが複数含まれている場合、Quartus II 開発ソフトウェアは、各インスタンスの低レベル・エンティティに一度インポートされたアサインメントをインスタンスします。

Page 121: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 6 章 : ブロック・ベース・デザイン中間合成結果の保存

114 ■ Introduction to Quartus II Altera Corporation

配置上の衝突を回避するため、Quartus II 開発ソフトウェアは、インポートされたトップレベル LogicLock領域をフローティング・ロケーションに割り当てます。ただし、親に関連したインポート済みの子領域のロケーションは保持されます。図 5に、Import Assignmentsダイアログを示します。

図 5. Import Assignmentsダイアログ

LogicLock領域をインポートするとき、Import AssignmentsダイアログのAdvancedボタンをクリックして、インポートするアサインメントの種類、インポートするグローバルまたはインスタンス・レベル・アサインメント、現在のデザインにアサインメントがどのくらい影響するかを指定します。また、アサインメントをインポートする前に、デザインの現在のQSFのバックアップを作成できます。

関連情報 参照先

中間合成結果をVQMファイルとして保存、アサインメントのバック・アノテーション、およびLogicLock 領域アサインメントのエクスポートとインポート

アルテラWebサイトのQuartus II Handbook、Volume2のChapter 10「LogicLock Design Methodology」

Quartus II ヘルプの「Overview: Saving IntermediateSynthesis Results」および「Overview: Using LogicLockRegions」

Quartus IIチュートリアルの「LogicLock module」

Page 122: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 6 章 : ブロック・ベース・デザインEDAツールと LogicLockの使い方

Altera Corporation Introduction to Quartus II ■ 115

EDAツールと LogicLockの使い方LogicLockブロック・ベース・デザイン・フローは、EDAデザイン・エントリおよび合成ツールで作成、最適化されたモジュールをサポートし、Quartus II 開発ソフトウェアには個々のモジュールとしてインポートされます。EDAデザイン・エントリおよび合成ツールを使用して、デザイン階層構造にあるモジュールのネットリスト・ファイル (EDIF入力ファイル (.edf)またはVQMファイル)を個別に作成するか、またはネットリスト・ファイル内にロジックのブロックを保持します。次に、Quartus II 開発ソフトウェアを使用して、トップレベル・デザインの個々のLogicLock 領域に、各ネットリスト・ファイルやネットリスト・ファイル内のモジュールを配置します。EDA ツールを使用したデザインにある特定モジュールをQuartus II 開発ソフトウェアで変更、最適化、再合成する際は、デザインにある他のモジュールに影響を与えずに、対応するデザインの一部を更新できます。

Mentor Graphics社のLeonardoSpectrum、Synplicity社のSynplify、Synopsys社のFPGA Compiler II、およびMentor Graphics社のPrecision RTL Synthesisソフトウェアでは、LogicLock ブロック・ベース・デザイン・フローでこれらのツールを使用するための、カスタマイズされた機能が提供されています。

関連情報 参照先

EDA合成ツールでのLogicLockの使用 アルテラWebサイトのQuartus II Handbook、Volume1 の Chapter 8「Synplicity Synplify and Synplify ProSupport」

アルテラWebサイトのQuartus II Handbook、Volume1 の Chapter 9「Mentor Graphics LeonardoSpectrumSupport」

アルテラWebサイトのQuartus II Handbook、Volume1 の Chapter 10「Mentor Graphics Precision RTLSynthesis Support」

アルテラWebサイトのQuartus II Handbook、Volume1のChapter 11「Synopsys FPGA Compiler II BLIS andthe Quartus II LogicLock Design Flow」

Page 123: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

シミュレーション

第 7章の内容 :

はじめに 118

EDAツールを使用したデザインのシミュレーション 119

Quartus IIシミュレータを使用したデザインのシミュレーション 126

第 7章

7

Page 124: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 7 章 : シミュレーションはじめに

118 ■ Introduction to Quartus II Altera Corporation

はじめにEDAシミュレーション・ツールまたはQuartus® IIシミュレータを使用して、デザインの機能およびタイミングのシミュレーションを実行できます。

Quartus II開発ソフトウェアは、EDAベンダのシミュレーション・ツールでデザインのシミュレーションを実行するための以下の機能を提供しています。

■ EDAシミュレーション・ツール用NativeLink®統合環境■ 出力ネットリスト・ファイルの生成■ 機能およびタイミングのシミュレーション・ライブラリ■ テスト・ベンチ・テンプレートおよびメモリの初期設定ファイルの生成■ VCDファイル (.saf) の生成

図 1は、EDAシミュレーション・ツールおよびQuartus IIシミュレータを使用したシミュレーション・フローを示しています。

図 1. シミュレーション・フロー

Page 125: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 7 章 : シミュレーションEDAツールを使用したデザインのシミュレーション

Altera Corporation Introduction to Quartus II ■ 119

EDAツールを使用したデザインのシミュレーション

Quartus II開発ソフトウェアのEDA Netlist Writerモジュールは、機能およびタイミング・シミュレーションを行うためのVHDL出力ファイル (.vho) およびVerilog出力ファイル (.vo)、および EDAシミュレーション・ツールを使用したタイミング・シミュレーションの実行に必要な標準遅延フォーマット (SDF) 出力ファイル (.sdo) を生成します。Quartus II 開発ソフトウェアは、標準遅延フォーマット・バージョン2.1のSDF出力ファイルを生成します。EDA Netlist Writerは、シミュレーション出力ファイルを、現在のプロジェクト・ディレクトリの下にあるツール特定のディレクトリに保存します。

さらに、Quartus II開発ソフトウェアでは、NativeLink機能を介して、EDAシミュレーション・ツールを使用したタイミング・シミュレーションに対し、シームレスな統合を実現します。Quartus II開発ソフトウェアは、NativeLink機能により、情報を EDA シミュレーション・ツールに渡すことができます。また、この機能にはQuartus II開発ソフトウェアからEDAシミュレーション・ツールを起動する機能が含まれます。

表 1は、Quartus II開発ソフトウェアでサポートしているEDAシミュレーション・ツールとNativeLinkのサポートの有無を示しています。

表 1. Quartus IIがサポートする EDAシミュレーション・ツール

シミュレーションツール名 NativeLinkサポート

Cadence社 Verilog-XL

Cadence社 NC-Verilog ✔

Cadence社 NC-VHDL ✔

Mentor Graphics®社 ModelSim® ✔

Mentor Graphics社 ModelSim-Altera ✔

Synopsys社 Scirocco ✔

Synopsys社 VCS MX

Synopsys社 VCS

Synopsys社 VSS

Page 126: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 7 章 : シミュレーションEDAツールを使用したデザインのシミュレーション

120 ■ Introduction to Quartus II Altera Corporation

EDAシミュレーション・ツール設定の指定

新規プロジェクトの作成時にNew Project Wizard (Fileメニュー) で、またはSettingsダイアログ (Assignmentsメニュー ) のEDA Tool Settingsの下の SimulationページでEDAシミュレーション・ツールを選択することができます。 Simulationページで、シミュレーション・ツールを選択したり、VerilogおよびVHDL出力ファイル、対応するSDF出力ファイル、消費電力見積り用のVCD (Value Change Dump) ファイルを生成するオプションを指定することができます。図 2に、Settings ダイアログのSimulationページを示します。

☞ ModelSim-Alteraソフトウェア

Mentor Graphics社のModelSim-Alteraソフトウェアは、動作シミュレーションおよびHDLテスト・ベンチをサポートしており、アルテラのデザイン・ソフトウェア・サブスクリプションに含まれています。

Page 127: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 7 章 : シミュレーションEDAツールを使用したデザインのシミュレーション

Altera Corporation Introduction to Quartus II ■ 121

図 2. Simulationページ

シミュレーション出力ファイルの生成

EDA Netlist Writerモジュールを実行し、EDAツール設定を指定してデザインをコンパイルすると、Verilog出力ファイルおよびVHDL出力ファイルを生成できます。Quartus II開発ソフトウェアでデザインをコンパイルしている場合には、Quartus II開発ソフトウェアで別のシミュレーション出力設定 ( 例えば、別のシミュレーション・ツール ) を指定し、Start > Start EDA Netlist Writer コマンド (Processing メニュー ) を使用して、Verilog出力ファイルまたはVHDL出力ファイルを再生成できます。NativeLink 機能を使用している場合は、初回コンパイル後に Run EDASimulation Toolコマンド (Toolsメニュー ) を使用して、シミュレーションを実行することができます。

Page 128: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 7 章 : シミュレーションEDAツールを使用したデザインのシミュレーション

122 ■ Introduction to Quartus II Altera Corporation

また、Quartus II開発ソフトウェアにより、EDAシミュレーション・ツールでの機能およびタイミング・シミュレーションの実行に使用する下記のタイプの出力ファイルを生成できます。

■ テスト・ベンチ・ファイル: Export コマンド (Fileメニュー ) を使用して、Quartus II Waveform Editorのベクタ波形ファイル (.vwf) からEDAシミュレーション・ツールで使用するVerilogテスト・ベンチ・ファイル (.vt) およびVHDLテスト・ベンチ・ファイル (.vht) を作成できます。Verilog HDLおよびVHDLテスト・ベンチ・ファイルは、トップレベル・デザイン・ファイルのインスタンスとベクタ波形ファイルからのテスト・ベクタを含むテスト・ベンチ用のテンプレート・ファイルです。また、ベクタ波形ファイルで期待値を指定した場合、セルフチェック・テスト・ベンチ・ファイルを生成できます。

■ メモリ初期設定ファイル: Quartus IIのメモリ・エディタ機能を使用して、例えば、CAM (Content-Addressable Memory)、RAM、またはROMなどのメモリ・ブロックの初期コンテンツをメモリ初期設定ファイル (.mif) または16進(Intelフォーマット) ファイル (.hex) に入力できます。次に、EDAシミュレーション・ツールを使用した機能シミュレーションで使用するため、メモリ・コンテンツをRAM初期設定ファイル (.rif) としてエクスポートできます。

■ VCDファイル: PowerPlay Power Analyzerで使用するVCD (Value ChangeDump) ファイルを作成することができます。 VCDファイルは、各信号のトグル・レートやスタティック確率データを含みます。 Power Analyzerで解析するときに使用するVCDファイルの期間の制限を指定したり、またグリッチ・フィルタリングの動作も指定することができます。

☞ quartus_eda実行コマンドの使い方

quartus_eda実行コマンドを使用して、EDA Netlist Writerをコマンド・プロンプトまたはスクリプトから個別に実行することができます。

quartus_eda実行コマンドでは、任意のテキスト・エディタで表示可能なテキスト・ベースのレポート・ファイルが個別に作成されます。

quartus_eda実行コマンドでヘルプを参照する場合は、コマンド・プロンプトで次のコマンドのいずれかを入力します。

quartus_eda -hquartus_eda --helpquartus_eda --help=<トピック名>

Page 129: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 7 章 : シミュレーションEDAツールを使用したデザインのシミュレーション

Altera Corporation Introduction to Quartus II ■ 123

EDAシミュレーション・フロー

NativeLink機能を使用することで、Quartus II開発ソフトウェアでデザインのコンパイル、適切な出力ファイルの生成、およびEDAシミュレーション・ツールを使用したシミュレーションの自動実行を行うことができます。また、コンパイル前 ( 機能シミュレーションの場合) またはコンパイル後 (タイミング・シミュレーションの場合) に Quartus II開発ソフトウェアでEDAシミュレーション・ツールを手動で実行することもできます。

機能シミュレーション・フロー

デザイン・フローの任意のポイントで、機能シミュレーションまたは動作シミュレーションを実行できます。EDAシミュレーション・ツールを使用したデザインの機能シミュレーションの実行に必要な基本的な流れを以下に示します。特定の EDA シミュレーション・ツールについて詳しくは、Quartus IIヘルプを参照してください。EDA シミュレーション・ツールを使用して機能シミュレーションを実行するには、以下の手順で行ってください。

1. EDAシミュレーション・ツールでプロジェクトを設定します。

2. 作業ライブラリを作成します。

3. EDAシミュレーション・ツールを使用して、適切な機能シミュレーション・ライブラリをコンパイルします。

4. EDA シミュレーション・ツールを使用して、デザイン・ファイルおよびテスト・ベンチ・ファイルをコンパイルします。

5. EDAシミュレーション・ツールを使用して、シミュレーションを実行します。

NativeLinkシミュレーション・フロー

NativeLink 機能を使用することで、Quartus II 開発ソフトウェアから EDA シミュレーション・ツールの自動セットアップおよび実行が可能です。EDA シミュレーション・ツールと共にNariveLink機能を使用する基本的な流れは、次の通りです。

1. Settings ダイアログ (Assignments メニュー )、またはプロジェクト・セットアップ時の New Project Wizard (File メニュー ) のいずれかを使用して、Quartus II開発ソフトウェアのEDAツール設定を指定します。

2. EDAツール設定の指定時に、Run this tool automatically after compilationをオンにします。

Page 130: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 7 章 : シミュレーションEDAツールを使用したデザインのシミュレーション

124 ■ Introduction to Quartus II Altera Corporation

3. Quartus II開発ソフトウェアでデザインをコンパイルします。Quartus II開発ソフトウェアにより、コンパイルが実行され、Verilog HDLまたはVHDL出力ファイル、および対応するSDF出力ファイル (タイミング・シミュレーションを実行している場合 ) が生成され、シミュレーション・ツールが起動します。Quartus II開発ソフトウェアは、シミュレーション・ツールに作業ライブラリを作成させたり、適切なライブラリ、デザイン・ファイル、テスト・ベンチ・ファイルをコンパイルまたはマッピングさせ、シミュレーション環境をセットアップして、シミュレーションを実行させます。

手動タイミング・シミュレーション・フロー

シミュレーションをさらに細かく制御したい場合は、Quartus II 開発ソフトウェアで Verilog HDLまたはVHDL出力ファイル、および対応するSDF出力ファイルを生成し、手動でシミュレーション・ツールを起動してシミュレーションを実行します。EDAシミュレーション・ツールを使用した、Quartus IIデザインのタイミング・シミュレーションの実行に必要な基本的な流れは次の通りです。特定の EDA シミュレーション・ツールについて詳しくは、Quartus IIヘルプを参照してください。

1. Settings ダイアログ (Assignments メニュー )、またはプロジェクト・セットアップ時の New Project Wizard (File メニュー ) のいずれかを使用して、Quartus II開発ソフトウェアのEDAツール設定を指定します。

2. Quartus II開発ソフトウェアのデザインをコンパイルし、出力ネットリスト・ファイルを生成します。Quartus II開発ソフトウェアにより、ファイルがツール特定のディレクトリに作成されます。

3. EDAシミュレーション・ツールを起動します。

4. EDA シミュレーション・ツールでプロジェクトおよび作業ディレクトリを設定します。

5. タイミング・シミュレーション・ライブラリをコンパイルまたはマッピングし、EDA シミュレーション・ツールでデザインおよびテスト・ベンチ・ファイルをコンパイルします。

6. EDAシミュレーション・ツールを使用して、シミュレーションを実行します。

Page 131: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 7 章 : シミュレーションEDAツールを使用したデザインのシミュレーション

Altera Corporation Introduction to Quartus II ■ 125

シミュレーション・ライブラリ

アルテラは、アルテラ特有のコンポーネントを含む機能シミュレーション・ライブラリ、およびQuartus II開発ソフトウェアでコンパイルされる素子ベースのタイミング・シミュレーション・ライブラリを提供しています。これらのライブラリを使用すれば、Quartus II開発ソフトウェアでサポートされているEDAシミュレーション・ツールで、アルテラ特有のコンポーネントを持つデザインのファンクションまたはタイミング・シミュレーションを実行できます。さらにアルテラは、ModelSim-Alteraソフトウェアでのシミュレーション用に、コンパイル済みの機能およびタイミング・シミュレーション・ライブラリを提供しています。

アルテラは、アルテラ・メガファンクションおよびLPMファンクションを使用するデザインに対して、機能シミュレーション・ライブラリを提供しています。さらに、ModelSimソフトウェアでのシミュレーション用に、altera_mfおよび220modelライブラリのコンパイル済みのバージョンも提供しています。表 2は、EDAシミュレーション・ツールで使用する機能シミュレーション・ライブラリを示しています。

Quartus II 開発ソフトウェアでは、特定デバイス・アーキテクチャ・エンティティとアルテラ特有のメガファンクションの情報は、ポストルーティング素子ベースのタイミング・シミュレーション・ライブラリに配置されています。タイミング・シミュレーション・ライブラリ・ファイルは、デバイス・ファミリおよびVerilog出力ファイルまたは VHDL出力ファイルを使用しているかどうかによって異なります。VHDLデザインに対して、アルテラでは、アルテラ特有のメガファンクションを使用したデザインのVHDLコンポーネント宣言ファイルを提供しています。

表 2. 機能シミュレーション・ライブラリ

ライブラリ名 説明

220model.v220model.vhd220model_87.vhd

LPMファンクションのシミュレーション・モデル (バージョン 2 2 0)

220pack.vhd 220model.vhdのVHDLコンポーネント宣言 (Component Declaration)

altera_mf.valtera_mf.vhdaltera_mf_87.vhdaltera_mf_components.vhd

アルテラ特有のメガファンクションのシミュレーション・モデルおよびVHDLコンポーネント宣言

sgate.v sgate.vhdsgate_pack.vhd

アルテラ特有のメガファンクションおよび IP ファンクションのシミュレーション・モデル

Page 132: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 7 章 : シミュレーションQuartus IIシミュレータを使用したデザインのシミュレーション

126 ■ Introduction to Quartus II Altera Corporation

Quartus IIシミュレータを使用したデザインのシミュレーション

Quartus II シミュレータを使用して、プロジェクトの任意のデザインをシミュレーションすることができます。必要な情報のタイプによって、機能シミュレーションを実行してデザインのロジック機能をテストするか、タイミング・シミュレーションを実行してターゲット・デバイスにあるデザインのロジック機能およびワースト・ケース・タイミングの両方をテストできます。

Quartus II開発ソフトウェアでは、デザイン全体でもデザインの一部でもシミュレーションできます。プロジェクトの任意のデザイン・エンティティをトップレベルのデザイン・エンティティとして指定することができ、トップレベルのエンティテイとすべての下位デザイン・エンティティをシミュレーションすることができます。

実行するシミュレーションの種類、シミュレーションを行う時間、スティミュラス、および Settings ダイアログ (Assignments メニュー ) の Simulator ページまたはSimulator Toolウィンドウ (Toolsメニュー) にある他のシミュレーション・オプションを指定することができます。128 ページの図 3に、Simulatorページを示します。

Quartus IIシミュレータを使用して、PowerPlay Power Analyzerで使用するSignalActivityファイルを作成することができます。Signal Activityファイルはデザインのトグル・レートおよびスタティック確率データを含みます。シグナル・アクティビティ・ピリオドの制限をしたり、またグリッチ・フィルタリングの動作も指示することができます。

関連情報 参照先

タイミング・シミュレーション・ライブラリ Quartus IIヘルプの「Altera Postrouting Libraries」

機能シミュレーション・ライブラリ Quartus II ヘルプの「Altera Functional SimulationLibraries」

ModelSimまたはModelSim-Alteraソフトウェアを使用したシミュレーションの実行

アルテラWebサイトのQuartus II Handbook、Volume3のChapter 1「Mentor Graphics ModelSim Support」

VCS ソフトウェアにおけるシミュレーションの実行

アルテラWebサイトのQuartus II Handbook、Volume3のChapter 2「Synopsys VCS Support」

NC-VerilogおよびNC-VHDLソフトウェアによるシミュレーションの実行

アルテラWebサイトのQuartus II Handbook、Volume3のChapter 3「Cadence NC-Sim Support」

Page 133: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 7 章 : シミュレーションQuartus IIシミュレータを使用したデザインのシミュレーション

Altera Corporation Introduction to Quartus II ■ 127

シミュレーションを開始する前に、タイミング・シミュレーションの場合はデザインをコンパイルし、機能シミュレーションの場合は Generate Functional SimulationNetlistコマンド (Processingメニュー ) を選択して、機能シミュレーション用ネットリストを生成します。 さらに、ベクタ・ソース・ファイルを作成して、シミュレーションの入力ベクタのソースとして指定しなければなりません。 Simulator は、ベクタ・ソース・ファイルに格納されている入力ベクタを使用して、シミュレーションの入力ベクタのソースとして指定しなければなりません。

Quartus II 開発ソフトウェアで機能シミュレーションまたはタイミング・シミュレーションを実行する基本的なフローを下記に示します。

1. シミュレータ設定を指定します。

2. 機能シミュレーションを実行する場合は、Generate Functional SimulationNetlist コマンドを選択します。タイミング・シミュレーションを実行する場合は、デザインをコンパイルします。

3. ベクタ・ソース・ファイルを作成および指定します。

4. Start > Start Simulationコマンド (Processingメニュー )、Simulator Toolウィンドウ、またはquartus_sim実行コマンドを使用して、シミュレーションを実行します。

Page 134: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 7 章 : シミュレーションQuartus IIシミュレータを使用したデザインのシミュレーション

128 ■ Introduction to Quartus II Altera Corporation

図 3. Simulatorページ

Status ウィンドウに、シミュレーションの進行状況および処理時間が表示されます。ReportウィンドウのSummaryセクションに、シミュレーション結果が表示されます。

Page 135: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 7 章 : シミュレーションQuartus IIシミュレータを使用したデザインのシミュレーション

Altera Corporation Introduction to Quartus II ■ 129

波形ファイルの作成

Quartus II Waveform Editorにより、波形フォーマットのシミュレーションの入力ベクタを作成および編集できます。Waveform Editorを使用して、デザインのロジックの動作を記述する波形ファイルに入力ベクタを追加できます。図 4を参照してください。

図 4. Quartus II Waveform Editor

☞ quartus_sim実行コマンドの使い方

quartus_sim実行コマンドを使用して、シミュレータをコマンド・プロンプトまたはスクリプトから個別に実行することができます。

quartus_sim実行コマンドでは、任意のテキスト・エディタを使用して表示可能なテキスト・ベースのレポート・ファイルが個別に作成されます。

quartus_sim実行コマンドのヘルプを参照する場合は、コマンド・プロンプトで次のいずれかを入力します。

quartus_sim -hquartus_sim --help

quartus_sim --help=<トピック名>

Page 136: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 7 章 : シミュレーションQuartus IIシミュレータを使用したデザインのシミュレーション

130 ■ Introduction to Quartus II Altera Corporation

Quartus II開発ソフトウェアは、ベクタ波形ファイル (.vwf)、ベクタ・テーブル出力ファイル (.tbl)、ベクタ・ファイル (.vec)、およびベクタ・テーブル・シミュレータ・チャネル・ファイル (.scf) フォーマットの波形ファイルをサポートしています。Waveform Editorでシミュレータ・チャネル・ファイルまたはベクタ・ファイルを編集することはできませんが、ベクタ波形ファイルとして保存することは可能です。

Simulator Tool

Simulator Toolコマンド (Toolsメニュー ) を使用して、シミュレータの設定を行ったり、シミュレータの開始と停止を指定したり、現行プロジェクトに対するシミュレーション波形を開いたりすることができます。 Simulator Tool ウィンドウは、MAX+PLUS IIシミュレータに類似しています。 シミュレーションを実行するには、機能シミュレーションの場合は最初に Simulator Tool の Generate FunctionalSimulation Netlistボタンを使用して、タイミング・シミュレーションを実行している場合にはデザインをコンパイルして、シミュレーション・ネットリストを生成する必要があります。図 5に、Simulator Toolウィンドウを示します。

図 5. Simulator Toolウィンドウ

Page 137: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

タイミング解析

第 8章の内容 :

はじめに 132

Quartus II開発ソフトウェアにおけるタイミング解析の実行 133

Early Timing Estimateの実行 140

タイミング解析結果の表示 142

EDAツールを使用したタイミング解析の実行 147

第 8章

8

Page 138: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析はじめに

132 ■ Introduction to Quartus II Altera Corporation

はじめにQuartus® IIのタイミング・アナライザは、デザインの全ロジックのパフォーマンスを解析することができ、デザインのタイミング要求値に合致するようフィッタを行うのに有効です。 タイミング・アナライザは、デフォルトでフル・コンパイルの中で自動的に実行され、デザインに関するセットアップ・タイム (tSU)、ホールド・タイム (tH)、Clock to Output遅延 (tCO) および最小tco、ピン間遅延 (tPD) および最小tpd、最大クロック周波数 (fMAX)、およびその他のタイミング特性などのタイミング情報を解析し、レポートします。 また、タイミング制約が与えられた時またはデフォルトが適用された時にタイミング・アナライザはスラック・タイムもレポートします。タイミング・アナライザで生成された情報を使用して、デザインのタイミング・パフォーマンスの妥当性を解析およびデバッグできます。 また、高速タイミング・モデルを使ってタイミング解析を実行することができ、オフチップでドライブする信号のClock to Pad遅延の検証に対しベスト・ケースのタイミング結果をレポートすることができます。図 1に、タイミング解析のフローを示します。

図 1. タイミング解析フロー

Page 139: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析Quartus II開発ソフトウェアにおけるタイミング解析の実行

Altera Corporation Introduction to Quartus II ■ 133

Quartus II開発ソフトウェアにおけるタイミング解析の実行

タイミング・アナライザは、フル・コンパイル時にデザイン上でタイミング解析を自動的に実行します。Quartus IIタイミング・アナライザで実行できるタスクは、次の通りです。

■ Timing Wizard (Assignmentsメニュー )、Settingsダイアログ (Assignmentsメニュー )、およびアサインメント・エディタを使用して、初期タイミング要求値をプロジェクト全体または個々に指定します。

■ フル・コンパイル時、または初回コンパイル後、個々にタイミング解析を実行します。

■ コンパイルを部分的に実行した後で、フィッティングが完了する前にEarly Timing Estimateを実行します。

■ レポート・ウィンドウ、タイミング・クロージャ・フロアプラン、およびlist_paths (Tclコマンド) を使用して、タイミング結果を表示します。

タイミング要求値の指定

タイミング要求値では、プロジェクト全体、特定のデザイン・エンティティ、または個々のエンティティ、ノード、ピンに関して、好みのスピード・パフォーマンスを指定できます。

Timing Wizard は、プロジェクト全体での初期タイミング設定の作成に有効です。一度タイミング設定の初期値を指定した後でも、Timing WizardまたはSettings ダイアログのTiming Requirements & Optionsページを使用して設定を変更することができます。図 2に、Timing Requirements & Optionsページを示します。

Page 140: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析Quartus II開発ソフトウェアにおけるタイミング解析の実行

134 ■ Introduction to Quartus II Altera Corporation

図 2. Settingsダイアログの Timing Requirements & Optionsページ

アサインメント・エディタ (Assignmentsメニュー ) を使用して、タイミング設定を個別に行うことができます。プロジェクト全体でのタイミング・アサインメント、または個別タイミング・アサインメント、あるいはその両方を行った後、デザインをコンパイルするか、初回コンパイル後に個別にタイミング・アナライザを実行することで、タイミング解析を実行できます。

タイミング要求値の設定またはオプションを指定しない場合、Quartus II タイミング・アナライザは、デフォルト設定を使用して解析を実行します。 デフォルトでは、現在のデザイン・エンティティに対する各レジスタ間遅延のfMAX、各入力レジスタのtSUおよびtH、各出力レジスタのtCO、ピン間パスの間のtPD、ホールド・タイム、最小tCO、および最小tPD を算出し、レポートします。 制約が与えられたときまたはデフォルトが適用されたとき、スラック・タイムをレポートします。

More Settingボタンをクリックすると、追加のオプションを含むMore Timing Settingsダイアログが表示されます。

Page 141: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析Quartus II開発ソフトウェアにおけるタイミング解析の実行

Altera Corporation Introduction to Quartus II ■ 135

従来のtSU requirement、tCO requirement、またはtH requirementタイミング・アサインメントを使用して、I/Oタイミング要求値を指定することができます。また、外部デバイスのタイミングをベースとした遅延を指定するInput Maximum Delay、Input Minimum Delay、Output Maximum Delay、またはOutput Minimum Delayアサインメントを使用して、クロック解析の一部としてこれらのパスを含むことができます。I/Oタイミング要求値の両方のタイプは、異なる手法を経由して最終的に類似した結果を出します。

SettingsダイアログまたはTiming Wizardを使用して、以下のタイミング要求値および他のオプションを指定できます。

■ プロジェクトの全体的な周波数要求、または個々のクロック信号の設定■ 遅延要求値、最小遅延要求値、およびパスカッティング・オプション■ ソースの数量およびディスティネーション・レジスタを含むレポート・オプ

ションや除外パス■ タイミング・ドリブン・コンパイル・オプション■ セットアップ (リカバリー) およびホールド (リムーバル) のオプションによる、

非同期クリア、プリセット、または負荷信号を含むタイミング・パスのチェック

プロジェクト全体でのタイミング設定の指定

プロジェクト全体でのタイミング設定には、最高周波数、セットアップ・タイム、ホールド・タイム、Clock to Output遅延およびピン間遅延、最小タイミング要求値が含まれます。また、プロジェクト規模のクロック設定と複数クロック・ドメイン、パスカッティング・オプション、およびデフォルトの外部遅延も設定できます。

表 1. プロジェクト全体でのタイミング設定 (1 /2 )

要求値 説明

fMAX (最高周波数) 内部セットアップ・タイム (tSU) およびホールド・タイム (tH) 要求値に違反しない最高のクロック周波数

tSU (クロック・セットアップ・タイム) レジスタをドライブするクロック信号がクロック・ピンに現れる前に、そのデータまたはイネーブル入力 (複数可) 経由でレジスタに供給されるデータが、入力ピンに到達していなければならない時間の長さ。

tH (クロック・ホールド・タイム) レジスタをドライブするクロック信号がクロック・ピンに現れた後に、そのデータまたはイネーブル入力 (複数可 ) 経由でレジスタに供給されているデータが、入力ピンに保持していなければならない時間の長さ。

tCO (Clock to Output遅延) レジスタをドライブする入力ピンでのクロック信号の変化後、レジスタからの有効な出力値が出力ピンに到達するのに必要な時間。

Page 142: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析Quartus II開発ソフトウェアにおけるタイミング解析の実行

136 ■ Introduction to Quartus II Altera Corporation

個々のタイミング・アサインメントの指定

アサインメント・エディタを使って、各エンティティ、ノード、およびピンにアサインメントすることができます。個々のタイミング・アサインメントは、プロジェクト全体での要求値より優先されます (厳密に指定されている場合 )。 アサインメント・エディタは、ポイント間のタイミング・アサインメント、アサインメントを作成する際に特定のノードを指定するためのワイルド・カード、およびノードのグループに個別のアサインメントを作成するためのtime groupアサインメントをサポートしています。

ピンおよびノードに対して入力したタイミング要求値は、現在の階層にあるトップレベル・エンティティに対応したQuartus II設定ファイル (.qsf) に保存されます。

タイミング・アナライザでは、次のタイプのタイミングを個別にアサインできます。

■ 個別クロック設定: タイミング要求値、およびデザインの全クロック信号の関係を定義することで、正確なマルチクロック・タイミング解析が実行できます。タイミング・アナライザは、シングル・クロックおよびマルチ・クロック周波数解析の両方をサポートしています。

■ Clock uncertaintyアサインメント: セットアップおよびホールドのチェックを行うときに使用されるクロックのセットアップとホールドに対するばらつきの期待値を特定することができます。 タイミング・アナライザは、セットアップ・チェックの計算時データの要求時間から指定されたSetup uncertaintyを差し引き、またホールド・チェックの計算時にはデータ要求時間に指定したHold uncertaintyを加えます。

■ マルチサイクル・パス: 安定のために複数のクロック・サイクルを必要とするレジスタ間のパスのこと。マルチサイクル・パスを設定すると、タイミング・アナライザでの測定を緩和し、不正なセットアップまたはホールド・タイム違反を回避できます。

tPD (ピン間遅延) 入力ピンからの信号が、組み合わせロジックを通って伝播し、外部出力ピンに現れるのに必要な時間。

最小tCO (Clock to Output遅延) レジスタをドライブする入力ピンでのクロック信号の変化後、レジスタからの有効な出力値が出力ピンに到達するのに必要な時間。この時間は、常に外部のピン間遅延を表します。

最小tPD (ピン間遅延) 受け入れ可能な最小のピン間遅延、つまり入力ピンからの信号が組み合わせロジックを通って伝播し、外部出力ピンに現れるのに必要な最小時間を指定します。

表 1. プロジェクト全体でのタイミング設定 (2 /2 )

要求値 説明

Page 143: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析Quartus II開発ソフトウェアにおけるタイミング解析の実行

Altera Corporation Introduction to Quartus II ■ 137

■ カット・パス: デフォルトでは、タイミング要求値が設定されていないか、またはデフォルトfMAX クロック設定だけが使用されている場合、Quartus II開発ソフトウェアは関連の無いクロック・ドメイン間のパスを切断します。また、Quartus II開発ソフトウェアは、個別クロック・アサインメントが設定されているが、クロック・アサインメント間に定義された関係が存在しない場合もパスを切断します。また、デザインの特定のパスに対し切断パスを指定することもできます。

■ 最大遅延要求値: デザインの特定ノードに対するtSU、 tH、tPD、およびtCOに対する最大タイミング要求値、および入力または出力の最大遅延の要求値のこと。 特定ノードまたはグループに行うこれらのアサインメントは、プロジェクト全体での最大タイミング要求値より優先させることができます。

■ 最小遅延要求値: 特定ノードまたはグループに対するtPDおよびtCO タイミング要求値、および入力および出力の最小遅延の要求値のこと。特定ノードまたはグループに行うこれらのアサインメントは、プロジェクト全体での最小タイミング要求値より優先させることができます。

■ 最大スキュー要求値: 特定のノードまたはグループに対する最大クロックおよびデータ到着スキューのタイミング要求値。

■ time groupアサインメント: Time Groupsダイアログ (Assignmentsメニュー)、Quartus IIのTclコンソール、またはTclをサポートするQuartus II実行コマンドで定義することができる拡張タイミング・アサインメントのこと。 定義されたtime groupの要素は、通常のノード名、ワイルドカード、または他のtiminggroup名を含むことができます。 反対に、特定のノード、ワイルドカード、または他のtiming groupからのtiming group名を排除することができます。

タイミング解析の実行

タイミング設定およびアサインメントを指定すると、フル・コンパイルを行うことでタイミング・アナライザを実行できます。

コンパイルが完了した後は、Start > Start Timing Analyzerコマンド (Processingメニュー ) を使用してタイミング解析を個別に再実行するか、Start > Start TimingAnalyzer (Fast Timing Model) (Processingメニュー ) を選択して高速タイミング・モデルでタイミング解析を実行するか、Timing Analyzer Tool command (Toolsメニュー ) を使用します。

Page 144: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析Quartus II開発ソフトウェアにおけるタイミング解析の実行

138 ■ Introduction to Quartus II Altera Corporation

Timing Analyzer Toolウィンドウは、タイミング・アナライザを操作するためのインタフェースを提供します。このインタフェースは、MAX+PLUS IIソフトウェアのタイミング・アナライザ・インタフェースと類似しています。Timing Analyzer Toolウィンドウを使用して、タイミング・アナライザを開始および停止させたり、タイミング解析結果の要約を瞬時に表示したり、Compilation Reportで詳細なタイミング解析結果にアクセスすることができます。List Pathsをクリックして、選択されたパスの伝播遅延を表示できます。図 3を参照してください。

図 3. タイミング解析ツール

Page 145: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析Quartus II開発ソフトウェアにおけるタイミング解析の実行

Altera Corporation Introduction to Quartus II ■ 139

☞ quartus_tan実行コマンドの使い方

quartus_tan 実行コマンドを使用して、タイミング・アナライザをコマンド・プロンプトまたはスクリプトで個別に実行することができます。タイミング・アナライザを実行する前に、Quartus IIフィッタのquartus_fit実行コマンドを実行する必要があります。

quartus_tan 実行コマンドでは、任意のテキスト・エディタを使用して表示可能なテキスト・ベースのレポート・ファイルが個別に作成されます。

また、quartus_tan Tclスクリプト・シェルを起動して、コマンド・プロンプトに次のコマンドを入力し、タイミング関連Tclコマンドを実行できます。

quartus_tan -s

quartus_tan 実行コマンドでヘルプを参照する場合は、コマンド・プロンプトで次のコマンドのいずれかを入力します。

quartus_tan --hquartus_tan --helpquartus_tan --help=<トピック名>

関連情報 参照先

特定のタイミング設定およびQuartus II開発ソフトウェアでのタイミング解析の実行

Quartus II ヘルプの「Overview: Using the TimingAnalyzer」

アルテラWebサイトのQuartus II Handbook、Volume3のChapter 5「Quartus II Timing Analysis」

Quartus IIチュートリアルの「Timing Analysis module」

Timing Analyzer Toolウィンドウ Quartus IIチュートリアルの「MAX+PLUS II Conversionmodule」

Page 146: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析Early Timing Estimateの実行

140 ■ Introduction to Quartus II Altera Corporation

Early Timing Estimateの実行初期のタイミング見積りに対するデータを生成する場合は、Start > Start EarlyTiming Estimateコマンド(Processingメニュー)を使用して、フィッテイングが完了する前に、フィッタを停止することができます。このタイミング見積りに関するオプションは、Settingsダイアログ(Assignmentsメニュー)のCompilation ProcessSettingsにあるEarly Timing Estimateページで指定できます。Early timing estimatemodeでは、以下のオプションの1つを選択可能です。

■ Realistic■ Optimistic■ Pessimistic

図 4に、Early Timing Estimateページを示します。

Page 147: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析Early Timing Estimateの実行

Altera Corporation Introduction to Quartus II ■ 141

図 4. Early Timing Estimateページ

Start> Start Early Timing Estimateコマンドを実行すると、コンパイラはAnalysis &Synthesisを含む部分コンパイルを実行しますが、フィッタが完了する前に停止します。次に、通常のタイミング解析結果を見るのと同様に、ReportウィンドウのTimingAnalyzer セクションでこのタイミング見積りの値を調べることができます。ただし、この見積りはすべて暫定的なものと考えることが必要です。Reportウィンドウでのタイミング結果の表示に関して詳しくは、次の「タイミング解析結果の表示」セクションを参照してください。

Page 148: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析タイミング解析結果の表示

142 ■ Introduction to Quartus II Altera Corporation

タイミング解析結果の表示タイミング解析の実行後、Compilation ReportのTiming Analyzerフォルダでタイミング解析結果またはEarly Timing Estimateの結果を表示できます。 次に、回路パフォーマンスを検証するタイミング・パスをリストにして、デザインのパフォーマンスを制限するクリティカル・スピード・パス (複数可) を決定して、タイミング・アサインメントの追加を行います。さらに、list_paths Tclコマンドを使用して、デザインの遅延パスに関する情報を検索、表示できます。

タイミング・クロージャ・フロアプラン (Projectメニュー ) を使用して、デザインのクリティカル・パスの情報や配線の輻輳を表示させることができます。タイミング・クロージャ・フロアプランを使用したクリティカル・パスおよび配線の輻輳の表示について詳しくは、 「第 9 章: タイミング・ クロージャ」、152 ページの「TimingClosure Floorplan」を参照してください。

MAX+PLUS® IIのタイミング・レポートを使い慣れたユーザでも、MAX+PLUS II遅延マトリックスからの遅延情報などのタイミング情報を Compilation Report のTiming Analyzer セクションおよび Timing Analyzer Tool ウィンドウの CustomDelays タブから簡単に検索できます。

レポート・ウィンドウ

レポート・ウィンドウのタイミング解析セクションでは、クロック・セットアップおよびクロック・ホールド; tSU、tH、tPD、およびtCO; 最小tPD最小およびtCOなどタイミング情報がリストアップされます。また、デフォルトでは、タイミング・アナライザは、ベスト・ケースの最小Clock to Output遅延およびベスト・ケースの最小ポイント間遅延も報告します。 タイミング解析のレポート・ウィンドウ・セクションは、最大クロック到着スキュー、最大データ到着スキュー、最小パルス幅要求、タイミング解析の間無視されるタイミング・アサインメント、およびタイミング・アナライザで生成されたメッセージもリストアップします。

Page 149: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析タイミング解析結果の表示

Altera Corporation Introduction to Quartus II ■ 143

レポート・ウィンドウでは、タイミング解析に関する以下の情報が表示されます。

■ タイミング要求値の設定■ スラックおよび最小スラック■ ソースおよびディスティネーション・クロック名■ ソースおよびディスティネーション・ノード名■ ポイント間の要求時間および実際の時間■ 実際のfMAX

図 5. レポート・ウィンドウのタイミング解析結果

アサインメントの実行および遅延パスの表示

レポート・ウィンドウのタイミング解析セクションから、 Locate in AssignmentEditor、List Paths、およびLocate in Timing Closure Floorplan コマンドに直接アクセスして、個別にタイミング・アサインメントを行い、遅延パス情報を表示できます。さらに、list_paths Tcl コマンドを使用すれば、遅延パス情報をリストにできます。

Page 150: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析タイミング解析結果の表示

144 ■ Introduction to Quartus II Altera Corporation

Locate in Assignment Editorコマンドを使用してAssignment Editorを開き、タイミング・アナライザ・レポートの任意のパス上で個別にタイミング・アサインメントを行うことができます。この機能により、パス上で簡単にポイント・ツー・ポイントのアサインメントを行うことができます。

Assignment Editorで個別にタイミング・アサインメントを行う基本的な流れは次の通りです。

1. Categoryバーで、Timingをクリックし、アサインメントを行うカテゴリを指示します。

2. スプレッド・シートのToセルをクリックし、Node Finderを使用してノードを検索するか、または割り当てを行うディスティネーション・ノードを識別するノード名、ワイルドカード、またはtime group文字を入力します。

3. スプレッド・シートのFromセルをクリックし、Node Finderを使用してノードを検索するか、または割り当てを行うソース・ノードを識別するノード名、ワイルドカード、またはtime group文字を入力します。

4. スプレッドシートで、Assignment Nameセルをダブル・クリックし、作成するタイミング・アサインメントを選択します。値が必要なアサインメントでは、Valueセルをダブル・クリックし、該当するアサインメント値を入力または選択します。

また、Locate in Timing Closure Floorplanコマンド (Projectメニュー ) を使用して、Timing Closure floorplanにあるパスを検索できます。これにより、Timing Closurefloorplan 機能の利点を使用して、特定パスに対しアサインメントを作成できます。Timing Closure floorplanの使い方について詳しくは、 「第9章: タイミング・ クロージャ」、152ページの「Timing Closure Floorplan」を参照してください。

List Paths コマンド ( マウス右ボタンのポップアップ・メニュー ) を使用して、Messagesウィンドウのタイミング・アナライザ・レポート・パネルにある任意のパスの中間遅延を表示できます。List Pathsにより、ピン間、レジスタ間、およびClockto Outputピン遅延パスを検索し、レポート・ウィンドウに表示されるデザインの遅延パスに関する情報を表示できます。図 6を参照してください。

Page 151: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析タイミング解析結果の表示

Altera Corporation Introduction to Quartus II ■ 145

図 6. List Pathsコマンドからの出力

quartus_tanモジュールおよびQuartus II Tcl Consoleで使用するlist_paths Tclコマンドにより、ポイント間のパスを指定して、遅延情報を表示できます。レポートするパスの数、パスのタイプ ( 最小タイミング・パスを含む ) を指定し、ワイルドカードを使用して、ソースおよびディスティネーション・ノードを識別します。このオプションでは、List Pathコマンドと同じ方法で情報が報告されます。図 7を参照してください。

図 7. list_pathsコマンドからのサンプル出力

Page 152: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析タイミング解析結果の表示

146 ■ Introduction to Quartus II Altera Corporation

Technology Map Viewer

Quartus II Technology Map Viewerは、ロー・レベル、または素子レベル、テクノロジを特定したデザインの回路図表示を提供します。Technology Map Viewer は、ユーザのデザインのゲート・レベルの配線ビューとインスタンス、プリミティブ、ピン、および全体のネットリストのネットを表示する階層リストを含みます。

タイミング解析の実行後またはタイミング解析を含むフル・コンパイルの実行後、Technology Map Viewerを使用してトータルの遅延および個別のノード遅延を含むタイミングパスを作成するノードを表示することもできます。図 8を参照してください。

以下の手法を使用してタイミング解析を実行した後、Technology Map Viewerを表示することができます。

■ Technology Map Viewerコマンド (Toolsメニュー ) の使用■ レポート・ウィンドウのタイミング・アナライザ・セクションのLocate in

Technology Map Viewerコマンド (右ボタンのポップアップ・メニュー ) の使用 ■ MessagesウィンドウのLocationリストの使用 (List Pathsコマンドの使用後)

図 8. Technology Map Viewウィンドウ—遅延情報

個別の遅延情報全体の遅延情報

関連情報 参照先

Quartus II Technology Map Viewer アルテラWebサイトのQuartus II Handbook、Volume1のChapter 13「Analyzing Designs with the Quartus IIRTL Viewer and Technology Map Viewer」

Page 153: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析EDAツールを使用したタイミング解析の実行

Altera Corporation Introduction to Quartus II ■ 147

EDAツールを使用したタイミング解析の実行Quartus II 開発ソフトウェアは、UNIX ワークステーション上で Synopsys 社のPrimeTime を使用したタイミング解析および最小タイミング解析、MentorGraphics®社のTau ボード・レベル検証ツールを使用したボード・レベル・タイミング解析をサポートしています。

プロジェクト作成時に、Settingsダイアログ (Assignmentsメニュー ) または NewProject Wizard (Fileメニュー ) のTiming AnalysisおよびBoard-Levelページにある適切なタイミング解析ツールを指定し、フル・コンパイルを実行することにより、EDA タイミング解析ツールでタイミング解析を実行するために必要な出力ファイルを生成できます。また、初回コンパイル後にStart>Start EDA Netlist Writerコマンド (Processing メニュー ) を使用して、ファイルを生成することもできます。NativeLink™機能を使用している場合、初回コンパイル後に Run EDA SimulationToolコマンド (Toolsメニュー ) を使用して、タイミング解析を実行することができます。

PrimeTime

Quartus II開発ソフトウェアでは、Verilog出力ファイルまたはVHDL出力ファイル、タイミング遅延情報を含む標準遅延フォーマット (SDF) 出力ファイル (.sdo)、PrimeTimeの環境を設定するTclスクリプト・ファイルを生成します。最小タイミング解析を実行している場合、Quartus II開発ソフトウェアは、デザインの SDF出力ファイルにあるタイミング・アナライザが生成した最小遅延情報を使用します。

☞ quartus_eda実行コマンドの使い方

EDA Netlist Writerを実行して、quartus_eda実行コマンドを使用し、コマンド・プロンプトまたはスクリプトで必要な出力ファイルを個別に生成することもできます。EDA Netlist Writer を実行する前に、Quartus IIフィッタのquartus_fit実行コマンドを実行する必要があります。

quartus_eda実行コマンドでは、任意のテキスト・エディタで表示可能なテキスト・ベースのレポート・ファイルが個別に作成されます。

quartus_eda実行コマンドでヘルプを参照する場合は、コマンド・プロンプトで次のコマンドのいずれかを入力します。

quartus_eda -hquartus_eda -helpquartus_eda --help=<トピック名>

Page 154: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析EDAツールを使用したタイミング解析の実行

148 ■ Introduction to Quartus II Altera Corporation

NativeLink 機能を使用して、コマンド・ラインまたは GUI モードのいずれかでQuartus II 開発ソフトウェアが PrimeTime を起動するように指定できます。また、PrimeTimeで使用するためのタイミング・アサインメントを含む Synopsys DesignConstraintsファイル (.sdc) も指定できます。

PrimeTimeを手動で使用して、Quartus II開発ソフトウェアでのコンパイル後にデザイン上でタイミング解析を実行する基本的な流れは次の通りです。

1. Settingsダイアログ (Assignmentsメニュー ) から、またはプロジェクト設定時にNew Project Wizard (Fileメニュー ) を使用して、EDAツール設定を指定します。

2. Quartus II開発ソフトウェアのデザインをコンパイルし、出力ネットリスト・ファイルを生成します。Quartus II開発ソフトウェアにより、ファイルがツール特定のディレクトリに作成されます。

3. PrimeTimeの環境をセットアップするために、Quartus IIが生成したTclスクリプト・ファイル (.tcl) のソースを読み込みます。

4. PrimeTimeでタイミング解析を実行します。

Tau

Quartus II開発ソフトウェアは、Tauにインポートしてボード・レベル・タイミング検証を実行するSTAMPモデル・ファイルを生成します。

STAMPモデル・ファイルを生成する基本的な流れは次の通りです。

1. Settingsダイアログ (Assignmentsメニュー ) から、またはプロジェクト設定時にNew Project Wizard (Fileメニュー ) を使用して、EDAツール設定を指定します。

2. Quartus II開発ソフトウェアのデザインをコンパイルし、出力ネットリスト・ファイルを生成します。Quartus II開発ソフトウェアにより、ファイルがツール特定のディレクトリに作成されます。

3. TauのSTAMPモデル・ファイルを使用して、ボード・レベル・タイミング検証を実行します。

Page 155: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 8 章 : タイミング解析EDAツールを使用したタイミング解析の実行

Altera Corporation Introduction to Quartus II ■ 149

関連情報 参照先

Quartus II 開発ソフトウェアと Synopsys 社PrimeTimeの使い方

アルテラWebサイトのQuartus II Handbook、Volume3のChapter 6「Synopsys PrimeTime Support」

Mentor Graphics社 TauとQuartus II開発ソフトウェアの使い方

Quartus IIヘルプの「Overview: Using the Tau Softwarewith the Quartus II Software」

Page 156: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

タイミング・クロージャ

第 9章の内容 :

はじめに 152

Timing Closure Floorplan 152

Timing Optimization Advisor 156

ネットリスト最適化オプションを使用したタイミング・クロージャの実現 157

LogicLock領域を使用したタイミング・クロージャの実現 160

タイミング・クロージャを実現するデザイン・スペース・エクスプローラ 163

第 9章

9

Page 157: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 9 章 : タイミング・ クロージャはじめに

152 ■ Introduction to Quartus II Altera Corporation

はじめにQuartus® II開発ソフトウェアは、論理合成および配置配線時に制約を与え、デザインのタイミング目標を達成するための完全なタイミング・クロージャ・フローを提供します。タイミング・クロージャ・フローの使用は、最適化の繰返しを低減し、複合的なデザイン制約に対し自動的にバランスをとり、複雑なデザインの迅速なタイミング・クロージャを実現します。

タイミング・クロージャ・フローでは、初期コンパイル、デザイン結果の表示、デザインのさらなる最適化を効率的に実行できます。 デザインの解析とアサインメントにTiming Closure Floorplan、タイミングに対してデザインを最適化する情報の表示にTiming Optimization Advisor、合成後および配置配線作業中のデザインにネットリストの最適化、LogicLock™領域アサインメント、デザインをさらに最適化するデザイン・スペース・エクスプローラ (DSE) を使用することが可能です。図 1に、タイミング・クロージャ・フローを示します。

図 1. タイミング・クロージャ・フロー

Timing Closure Floorplan

Timing Closure Floorplanを使用して、フィッタによるロジック配置、ユーザおよびLogicLock 領域のアサインメント、そしてデザインの配線情報を表示することができます。この情報によりデザインのクリティカル・パスを識別し、タイミング・アサインメント、ロケーション・アサインメント、および LogicLock領域のアサインメントを行い、タイミング・クロージャを実現します。

Page 158: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 9 章 : タイミング・ クロージャTiming Closure Floorplan

Altera Corporation Introduction to Quartus II ■ 153

Viewメニューにある選択肢から、 Timing Closure Floorplanが情報を表示する内容をカスタマイズできます。 内部のMegaLAB™構造やLABやセルの表示、選択した信号の名前や位置の表示など、デバイスのパッケージ・ピンやそれらの機能に関する表示が可能です。

また、Field Viewコマンド (Viewメニュー ) を使用して、Timing Closure Floorplanのハイレベル・アウトライン・ビューにデバイス・リソースの主な分類を表示することができます。 Field View においては、デバイス内の構造ごとにアサインメントについてユーザのアサインやフィッタによる配置や未アサイン・ロジックの割合を色分けして表示します。Field Viewの情報を使用することで、デザインのタイミング・クロージャを実現するアサインメントを得ることができます。

アサインメントおよび配線の表示

Timing Closure Floorplanは、ユーザ・アサインメントとフィッタ・ロケーション・アサインメントを同時に表示できます。ユーザ・アサインメントとは、デザインに対して行ったすべてのロケーションおよび LogicLock領域のアサインメントを指します。フィッタ・アサインメントとは、Quartus II 開発ソフトウェアが、最終コンパイル後に配置したすべてのノードのロケーションです。両方とも、Assignmentsコマンド (Viewメニュー ) で表示できます。

Timing Closure Floorplanでは、デバイス・リソースおよび対応するすべてのデザイン・ロジックの配線情報が表示できます。Routingコマンド(Viewメニュー)を使用して、デバイス・リソースを選択し、以下のタイプの配線情報を表示できます。

■ Paths between nodes: 相互に接続および選択されたロジック・セル、I/Oセル、エンベデッド・セル、およびピン間のパスを表示します。

■ Node fan-in and fan-out: 選択したエンベデッド・セル、ロジック・セル、I/Oセル、およびピンに関するノード・ファン・インおよびファン・アウト配線情報を表示します。

■ Routing delays: 特定ロジック・セル、I/Oセル、エンベデッド・セル、またはピンの起点または終点、選択されたノードの間、または複数のクリティカル・パスに沿った配線遅延を表示します。

■ Connection counts: 選択したオブジェクトを起終点とする接続、または選択したオブジェクトからの接続の数を表示または非表示にします。

■ Physical timing estimates: 1つのフィジカル・リソースからその他のフィジカル・リソースへのおおよその遅延を表示します。フィジカル・リソースを選択すると、遅延は終点の可能性のあるリソースの色の変化で表され (リソースの色が濃いほど、遅延が長い)、終点リソースに対する遅延は、その可能性のある終点フィジカル・リソースにマウスを置くと表示されます。

Page 159: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 9 章 : タイミング・ クロージャTiming Closure Floorplan

154 ■ Introduction to Quartus II Altera Corporation

■ Routing congestion: デザインにおける配線の輻輳をグラフィカルに表示します。色が濃いほど、配線リソースの利用率が高いことになります。配線リソースを選択し、リソースの輻輳(デバイスでは赤で表示)を指定できます。

■ Critical paths: パス・エッジや配線遅延を含め、デザインのクリティカル・パスを表示します。デフォルトでは、レジスタ間のパスを表示します。また、起点ノードと終点ノード間の、ワースト・ケースのパスの組み合わせをすべて表示することもできます。 クロック・ドメイン、ソースおよびディスティネーション・ノード名、クリティカル・パス数、およびスラックを指定することにより、クリティカル・パスを表示するフィルタリングの基準を指定することができます。

また、接続性および領域内遅延をはじめとした、デザイン内のLogicLock領域の配線情報を表示できます。LogicLock region connectivityでは、デザインのLogicLock領域に割り当てられたエンティティ間の接続性を表示し、intra-region delayでは、子領域を含むLogicLock領域のパスの起点と終点の間の最大時間遅延を表示します。

Equationsウィンドウには、ピン、I/Oセル、ロジック・セルやエンベデッド・セルのアサインメントに対し配線および論理情報が表示されます。 Equations (View メニュー ) をオンにすると、EquationsウィンドウがTiming Closure Floorplanウィンドウの最下部に表示されます。図 2を参照してください。

図 2. Equationsウィンドウ

フロアプランの 1つまたは複数のロジック・セル、エンベデッド・セル、またはピン・アサインメントを選択すると、その論理式、ファン・イン、ファン・アウトをEquations リストに表示できます。表示された項目は展開または格納が可能です。Fan-Inリストでは、選択したロジック・セル、エンベデッド・セル、およびピン・アサインメントを供給するすべてのノードがリストに表示されます。Fan-Outリストでは、選択したロジック・セル、エンベデッド・セル、およびピン・アサインメントによって供給されるすべてのノードがリストに表示されます。

Page 160: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 9 章 : タイミング・ クロージャTiming Closure Floorplan

Altera Corporation Introduction to Quartus II ■ 155

アサインメントの作成

タイミング・クロージャを容易に実現するため、 Timing Closure Floorplanでは、ロケーションおよびタイミング・アサインメントをフロアプランから直接作成できます。Timing Closure Floorplan内のカスタム領域やLogicLock領域にノードまたはエンティティを作成または割り当てを行うことができ、またピン、ロジック・セル、ロウ、カラム、領域、MegaLAB構造、そしてLABに対し既存のアサインメントを編集することもできます。

Timing Closure Floorplanのアサインメントは、次の方法で編集できます。

■ ノードおよびピン・アサインメントをカット、コピー、ペーストして編集する方法

■ アサインメント・エディタを起動して、アサインメントを作成する方法■ Node Finderを使用して、アサインメントを作成する方法■ LogicLock領域にロジックを作成し割り当てる方法■ Project Navigator、LogicLock領域、およびTiming Closure Floorplanの

Hierarchyタブから、他のフロアプランにノードおよびエンティティをドラッグ・アンド・ドロップする方法

アサインメントを作成する前に、バック・アノテート・アサインメントによる現在のコンパイル結果から、Back-Annotate Assignments コマンド (Assignments メニュー ) を使ったピン、ロジック・セル、ロウ、カラム、領域、LAB、MegaLAB構造に対し、リソースのアサインメントを保持することができます。Back-AnnotateAssignmentsコマンドの使用について詳しくは、 「第5章: 配置配線」、101ページの「バック・アノテーションによるアサインメントの保存」を参照してください。

関連情報 参照先

Timing Closure floorplan でのアサインメントおよび配線の表示

アルテラWebサイトのQuartus II Handbook、Volume2のChapter 7「Timing Closure Floorplan」

Quartus IIヘルプの「Overview: Viewing Routing Information」

フロアプラン・エディタでのアサインメントの実行

Quartus IIヘルプの「Overview: Working with Assignmentsin the Floorplan Editor」

Quartus IIチュートリアルの「LogicLock Module」

Page 161: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 9 章 : タイミング・ クロージャTiming Optimization Advisor

156 ■ Introduction to Quartus II Altera Corporation

Timing Optimization Advisor

Timing Optimization Advisorは、下記のタイミング・デザインの最適化情報を提供します。

■ 最高周波数 (fMAX)■ セットアップ・タイミング (tSU)■ Clock to Output (tCO)■ 伝播遅延 (tPD)

プロジェクトを開いている時には、Timing Optimization Advisor (Toolsメニュー )を選択してTiming Optimization Advisorを表示することができます。プロジェクトがまだコンパイルされていない場合は、Timing Optimization Advisorはタイミングを最適化する一般的な情報しか提供しません。プロジェクトがコンパイルされている場合は、Timing Optimization Advisorはプロジェクト情報と最新の設定をベースにした特定のプロジェクトのタイミング情報を提供します。図 3に、TimingOptimization Advisorを示します。

図 3. Timing Optimization Advisorのイニシャル・ページ

Timing Optimization Advisor機能は、Resource Optimization Advisorに類似しています。詳しくは、 「第5章: 配置配線」、94ページの「Resource Optimization Advisor」を参照してください。

Page 162: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 9 章 : タイミング・ クロージャネットリスト最適化オプションを使用したタイミング・クロージャの実現

Altera Corporation Introduction to Quartus II ■ 157

ネットリスト最適化オプションを使用したタイミング・クロージャの実現

Quartus II 開発ソフトウェアは、合成および配置配線の際に、デザインをさらに最適化するためのネットリスト最適化オプションを含んでいます。この機能はプッシュボタン型で、ネットリストを変更しパフォーマンスを向上させ、より良いfMAXを得ることができます。これらのオプションは、使用する合成ツールには関係なく適用できます。デザインによっては、他のオプションよりさらに効果的なオプションもあります。

シンセシスおよびフィジカル・シンセシス・ネットリスト最適化は、Settingsダイアログ (Assignmentsメニュー ) のSynthesis Netlist OptimizationsおよびPhysicalSynthesis Optimizationsページで指定できます。図 4を参照してください。

Page 163: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 9 章 : タイミング・ クロージャネットリスト最適化オプションを使用したタイミング・クロージャの実現

158 ■ Introduction to Quartus II Altera Corporation

図 4. ネットリスト最適化

合成ネットリスト最適化

フィジカル・シンセシス最適化

Page 164: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 9 章 : タイミング・ クロージャネットリスト最適化オプションを使用したタイミング・クロージャの実現

Altera Corporation Introduction to Quartus II ■ 159

ネットリストの最適化機能には、次のオプションが含まれます。

■ Perform WYSIWYG primitive resynthesis: 合成の際、Quartus II開発ソフトウェアでWYSIWYGプリミティブのマッピングを解除します。 このオプションがオンになっている場合、Quartus II開発ソフトウェアは素子レベルのネットリストにあるゲートへのロジック・エレメントのマッピングを解除し、アルテラのLCELLプリミティブにゲートをマッピングし直します。このオプションにより、Quartus II開発ソフトウェアはリマップ・プロセスの間デバイス・アーキテクチャに特定の異なるテクニックを使用することができ、SettingsダイアログのAnalysis & Synthesis Settingsページで指定する最適化テクニック(Area、Balanced、またはSpeed)を使用します。

■ Perform gate-level register retiming: タイミングを均衡させるため、組み合わせロジックを超えてレジスタを移動させることができますが、現在のデザインの機能を変更することはできません。 このオプションでは、組み合わせゲートをまたがるレジスタのみを移動することができ、ユーザがインスタンスしたロジック・セルやメモリ・ブロック、DSPブロック、またはキャリーもしくはカスケード・チェインにまたがるレジスタは移動できません。さらに、レジスタを組み合わせロジック・ブロックの入力からブロックの出力へと移動して、潜在的にレジスタを組み合わせる機能があります。そして、組み合わせロジック・ブロックの出力にあるレジスタから組み合わせロジック・ブロックの入力にマルチプル・レジスタが作成されます。

■ Allow register retiming to trade off Tsu/Tco with Fmax: Quartus II開発ソフトウェアにより、レジスタのリタイミング時にtCOおよびtSUとfMAXをトレードオフするため、I/Oピンに関連するレジスタをまたいでロジックを移動させます。このオプションをオンにすると、レジスタのリタイミングは、I/Oピンに供給するレジスタ、およびI/Oピンから供給されるレジスタに影響を与えます。このオプションをオンにしない場合、レジスタのリタイミングはI/Oピンに接続されたレジスタには触れません。

フィジカル・シンセシスおよびフィッティングのネットリスト最適化には、次のオプションが含まれます。

■ Perform physical synthesis for combinational logic: Quartus II開発ソフトウェアは、フィッティング時に組み合わせロジック上でフィジカル・シンセシスの最適化を実行し、パフォーマンスを向上させます。

■ Perform register duplication: Quartus II開発ソフトウェアは、レジスタ複製を使用して、フィッティング時にレジスタ上でフィジカル・シンセシスの最適化を実行し、パフォーマンスを向上させます。

■ Perform register retiming: Quartus II開発ソフトウェアは、レジスタ・リタイミングを使用して、フィッティング時にレジスタ上でフィジカル・シンセシスの最適化を実行し、パフォーマンスを向上させます。

Page 165: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 9 章 : タイミング・ クロージャLogicLock領域を使用したタイミング・クロージャの実現

160 ■ Introduction to Quartus II Altera Corporation

■ Physical synthesis effort: フィジカル・シンセシス (Normal、 Extra、およびFast) を実行するとき、Quartus II開発ソフトウェアを使用してフィジカル・シンセシスのレベルを指定します。

Quartus II 開発ソフトウェアは、バック・アノテートされたデザインのフィッティングやフィジカル・シンセシスに対し、これらのネットリスト最適化を行うことはできません。さらに、デザインに対し1つまたは複数回ネットリストの最適化を行ってからデザインのバック・アノテートを行うときは、結果を保存したい場合VerilogQuartus Mapping File (.vqm) を生成しなければなりません。後で行うコンパイルでは、元のデザイン・ソース・コードの場所で、VQMファイルを使用する必要があります。

LogicLock領域を使用したタイミング・クロージャの実現

LogicLock領域を使用し、Timing Closure Floorplanにおいてデザインの解析を行い、さらにLogicLock領域のクリティカル・ロジックに制約を与えることでタイミング・クロージャを達成することができます。LogicLock 領域は、一般的に階層構造を持ち、モジュールまたはモジュールのグループで配置とパフォーマンスをさらに細かく制御できます。例えば、ノードをクリティカル・パスに沿って LogicLock領域に割り当てれば、個々のノードでLogicLock機能を使用できます。

デザインの LogicLock領域を使用してパフォーマンスを向上させるには、デザインのクリティカル・パスを熟知している必要があります。LogicLock領域を実装し、希望するパフォーマンスを実現したら、領域のコンテンツをバック・アノテーションし、ロジックの配置をロックします。

関連情報 参照先

ネットリスト最適化を使用したタイミング・クロージャの実現

アルテラWebサイトのQuartus II Handbook、Volume2 の Chapter 8「Netlist Optimizations & PhysicalSynthesis」

Page 166: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 9 章 : タイミング・ クロージャLogicLock領域を使用したタイミング・クロージャの実現

Altera Corporation Introduction to Quartus II ■ 161

ソフト LogicLock領域

LogicLock領域には、あらかじめ定義された境界と、常に境界内またはLogicLock領域サイズ内にある特定領域に割り当てられたノードがあります。LogicLock 領域の固定された矩形境界を取り除くことで、ソフト LogicLock 領域はデザインのパフォーマンスを向上します。 ソフト領域プロパティが有効になっていれば、フィッタは領域内に多く割り当てられたノードをできるだけ密接に配置しようとし、ノードをソフト領域外に移動して柔軟性を高め、デザインのパフォーマンス要求を満たします。

パス・ベースのアサインメント

QuartusII開発ソフトウェアでは、特定パスの起終点をLogicLock領域に割り当てて、クリティカル・デザイン・ノードを LogicLock領域に簡単に集約することができます。パス・ベースのアサインメントをPathsダイアログでレポート・ウィンドウのタイミング・アナライザ・セクションからクリティカル・パスをドラッグ・アンド・ドロップし、LogicLock領域に Timing Closure Floorplanをドラッグ・アンド・ドロップします。

Pathダイアログは、ノードの起終点を識別してパスを指定したり、ノードの識別時にワイルドカードを使用します。List Nodesをクリックして、LogicLock領域に割り当てるノード数を決定することができます。 Add Path をクリックまたはLogicLock Region PropertiesダイアログのContentsタブをダブル・クリック、 もしくはTiming Closure Floorplanのパスをダブル・クリックして、このダイアログを開きます。図 5を参照してください。

Page 167: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 9 章 : タイミング・ クロージャLogicLock領域を使用したタイミング・クロージャの実現

162 ■ Introduction to Quartus II Altera Corporation

図 5. Pathsダイアログ

関連情報 参照先

LogicLock 手法を使用したタイミング・クロージャの実現

アルテラWebサイトのQuartus II Handbook、Volume2のChapter 7「Timing Closure Floorplan」

アルテラWebサイトのQuartus II Handbook、Volume2のChapter 10「LogicLock Design Methodology」

Quartus IIチュートリアルの「LogicLock module」

Page 168: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 9 章 : タイミング・ クロージャタイミング・クロージャを実現するデザイン・スペース・エクスプローラ

Altera Corporation Introduction to Quartus II ■ 163

タイミング・クロージャを実現するデザイン・スペース・エクスプローラ

デザイン・スペース・エクスプローラ (DSE) Tclスクリプト、dse.tclを使用して、 タイミングのデザインを最適化することができます。DSEインタフェースでは、自動的にQuartus IIオプションおよび設定の範囲を検索し、プロジェクトで最善の結果が得られるためにはどの設定を使用すべきかを決定できます。DSEが変更できるレベル、最適化の目標、ターゲット・デバイス、および許容できるコンパイル時間を指定できます。

コマンド・ラインから quartus_sh 実行コマンド、Quartus II 開発ソフトウェアのLaunch Design Space Explorerコマンド (Toolsメニュー)、またはWindowsのスタート・メニューからQuartus II <version number> Design Space Explorerコマンドを使用してDSEを実行できます。 DSEの使用方法について詳しくは、 「第5章: 配置配線」、97ページの「デザイン・スペース・エクスプローラ」を参照してください。

Page 169: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 10章の内容 :

はじめに 166

PowerPlayパワー・アナライザを使用した電力解析の実行 166

パワー・アナライザ・オプションの指定 168

PowerPlay Early Power Estimatorの使用 170

消費電力の解析

10

第 10章

Page 170: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 10 章 : 消費電力の解析はじめに

166 ■ Introduction to Quartus II Altera Corporation

はじめにQuartus® II PowerPlay電力解析ツールを使用して、デザイン・サイクル全体のスタティックおよびダイナミックな消費電力の見積りが可能です。 PowerPlayパワー・アナライザはポストフィッティング電力解析を実行し、消費電力をブロック・タイプおよびエンティティでハイライトすることのできる消費電力レポートを生成します。 アルテラのPowerPlay Early Power Estimatorは、Microsoft Excelベースのスプレッド・シートを使用してデザイン・プロセスの初期段階で消費電力を見積ります。

図 1. PowerPlay電力解析フロー

PowerPlayパワー・アナライザを使用した電力解析の実行

Analysis & Synthesisおよびフィッタを実行した後に、Quartus II PowerPlay PowerAnalyzer Tool (Toolsメニュー ) を使用することができます。 電力解析時にトグル・レートおよびスタティック確率を初期化するのに使用するQuartus IIシミュレータで生成されたSignal Activityファイル (.saf) またはその他のEDAシミュレーション・ツールで生成されたVCD (Value Change Dump) ファイル (.vcd) などの入力ファイルを指定できます。また、電力解析時にSignal Acrivityの出力ファイルへの書き込みも指定することができます。 さらに、Quartus IIのユーザ・インタフェースまたはQuartus II設定ファイルのユーザ・アサインメントを使用して、エンティティ・ベースのトグル・レートおよびスタティック確率を指定することもできます。 デバイス・ファミリによっては、Quartus II 開発ソフトウェアは、デザイン・トポロジーおよびファンクションを解析して不足したSignal Activity情報の入力が可能です。

Page 171: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 10 章 : 消費電力の解析PowerPlayパワー・アナライザを使用した電力解析の実行

Altera Corporation Introduction to Quartus II ■ 167

PowerPlay Analyzer ToolウィンドウのStartをクリックして、電力解析を開始することができます。ステータス・バーは処理時間を表示します。 電力解析の完了後、Reportをクリックしてレポート・ファイル (.rpt、.htm) を表示できます。図 2を参照してください。

図 2. PowerPlay Power Analyzer Tool

Stratボタンで電力解析を開始します。

再生バーはデザインの処理にかかる経過時間を表示します。

Reportボタンでレポート・ファイルの電力解析セクションを表示します。

Page 172: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 10 章 : 消費電力の解析パワー・アナライザ・オプションの指定

168 ■ Introduction to Quartus II Altera Corporation

パワー・アナライザ・オプションの指定Settingsダイアログ (Assignmentsメニュー )のPowerPlay Power Analyzer Settingsページで、電力解析のデフォルト設定を指定することができます。 使用する入力ファイルおよび書き込みする出力ファイルのタイプ、およびトグル・レートのデフォルト設定の指定が可能です。図 3を参照してください。

☞ quartus_pow utilityの使い方

quartus_pow実行コマンドを使用して、PowerPlay電力解析をコマンド・プロンプトまたはスクリプトで個別に実行することができます。 PowerPlayパワー・アナライザを実行する前に、Quartus IIフィッタのquartus_fitを問題なく実行する必要があります。

quartus_pow実行コマンドでは、任意のテキスト・エディタを使用して表示可能なテキスト・ベースのレポート・ファイルが個別に作成されます。

quartus_pow実行コマンドでヘルプを参照する場合は、コマンド・プロンプトで次のコマンドのいずれかを入力します。

quartus_pow -hquartus_pow -helpquartus_pow --help=<トピック名>

関連情報 参照先

Quartus II PowerPlayパワー・アナライザ アルテラWebサイトのQuartus II Handbook、Volume3のChapter 8「PowerPlay Power Analyzer」

Page 173: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 10 章 : 消費電力の解析パワー・アナライザ・オプションの指定

Altera Corporation Introduction to Quartus II ■ 169

図 3. PowerPlay Power Analyzer Settingsページ

ターゲットのデバイス・ファミリによって、電力解析の動作条件を指定することもできます。 SettingsダイアログのOperating Conditionsページで、接合部温度、冷却ソリューション、およびデバイス特性を指定できます。図 4を参照してください。

Page 174: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 10 章 : 消費電力の解析PowerPlay Early Power Estimator

170 ■ Introduction to Quartus II Altera Corporation

図 4. Operating Conditionsページ

PowerPlay Early Power Estimator

アルテラのWebサイト (http://www.altera.com/support/devices/dvs-timing_power.html) の Power Consumption セクションからダウンロード可能なAltera PowerPlay Early Power Estimator スプレッドシートを使用して、Stratix™、Stratix II、Stratix GX、Cyclone™、またはMAX® II デバイスの電力を計算することができます。 PowerPlay Early Power Estimatorスプレッドシートは、最新のデバイス・ファミリ向けのMicrosoft Excelベースのスプレッドシートです。 スプレッドシートのマクロは、消費電力を算出し、電流 (ICC) および電力 (P) の見積りを提供します。

Page 175: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 10 章 : 消費電力の解析PowerPlay Early Power Estimator

Altera Corporation Introduction to Quartus II ■ 171

PowerPlay Power Estimatorは、デザインの初期段階で電力を見積もるのに適しています。デザインが完了した後に、より正確な電力値を得るには、PowerPlayパワー・アナライザの使用を推奨します。

デザインの開始前にPowerPlay Early Power Estimatorを使用する場合は、デバイス・リソース、動作周波数、トグル・レート、およびPowerPlay Early Power Estimator向けのその他のパラメータを直接指定してください。 または、Quartus II開発ソフトウェアでデザインをコンパイルしてから、Generate Early Power Calculator Fileコマンド (Powerメニュー ) を使用して、既存のデバイスおよびデザインの消費電力情報を含む<revision name>_early_pwr.txtという名前のテキスト形式のファイルである消費電力見積りファイルを生成します。 その後に、この消費電力見積りファイルをPowerPlay Early Power Estimatorにインポートすることで電力値を見積もることができます。

☞ PowerPlay Early Power Estimatorの使用の注意

PowerPlay Early Power Estimatorによる消費電力算出値は、特定されたものとしてではなく、あくまでも見積りとしてのみ使用してください。 消費電力の計測は実際のデバイスのデザインや動作条件に影響を受けやすいので、デバイス動作時に実際のICCを必ず確認してください。

関連情報 参照先

PowerPlay Early Estimator アルテラWebサイトのPower Calculator User Guide

アルテラWebサイトのQuartus II Handbook、Volume3のChapter 7「PowerPlay Early Power Estimator」

アルテラWebサイトのApplication Note 74 (EvaluatingPower for Altera Devices)

デバイス要求に対する情報 アルテラ Web サイトの各ハンドブックまたはデータシート

Page 176: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

プログラミングおよび

第 11章の内容 :

はじめに 174

Programmerを使用した1つまたは複数のデバイスのプログラミング 179

二次プログラミング・ファイルの作成 180

Quartus II開発ソフトウェアを使用したリモートJTAGサーバ経由のプログラム 187

第 11章

11

コンフィギュレーション

Page 177: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 11 章 : プログラミングおよびコンフィギュレーションはじめに

174 ■ Introduction to Quartus II Altera Corporation

はじめにQuartus® II 開発ソフトウェアを使用してプロジェクトをコンパイルした後、アルテラのデバイスをプログラムまたはコンフィギュレーションします。 Quartus IIコンパイラのアセンブラ・モジュールは、アルテラ・プログラミング・ハードウェアでプログラムまたはコンフィギュレーションできるようなQuartus II Programmer用のプログラミング・ファイルを生成します。 また、Quartus II Programmerのスタンドアロン・バージョンを使用して、デバイスをプログラムおよびコンフィギュレーションできます。図 1はプログラミング・デザイン・フローを示しています。

図 1. プログラミング・デザイン・フロー

アセンブラは、フィッタのデバイス、ロジック・セル、およびピン・アサイメントを、ターゲット・デバイスに対する 1つまたは複数の Programmerオブジェクト・ファイル (.pof) またはSRAMオブジェクト・ファイル (.sof) の形式で、デバイスのプログラミング・イメージへ自動的に変換します。

アセンブラ・モジュールが含まれたQuartus II 開発ソフトウェアでフル・コンパイルを開始することも、アセンブラを個別に開始することもできます。

Page 178: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 11 章 : プログラミングおよびコンフィギュレーションはじめに

Altera Corporation Introduction to Quartus II ■ 175

また、アセンブラまたは Programmerを使って、以下のいずれかの方法で別の形式のプログラミング・ファイルを生成することもできます。

■ Settingsダイアログ (Assignmentsメニュー ) のDeviceページから利用可能なDevice & Pin Optionsダイアログでは、16進 (Intelフォーマット) 出力ファイル (.hexout)、表形式テキスト・ファイル (.ttf)、ロウ・バイナリ・ファイル (.rbf)、JamTMファイル (.jam)、Jamバイト・コード・ファイル (.jbc)、シリアル・ベクタ・フォーマット・ファイル (.svf)、およびイン・システム・コンフィギュレーション・ファイル (.isc) といったオプションのプログラミング・ファイル・フォーマットを指定できます。

■ Create/Update > Create JAM, SVF, or ISC Fileコマンド (Fileメニュー) では、Jamファイル、Jamバイト・コード・ファイル、シリアル・ベクタ・フォーマット・ファイル、またはイン・システム・コンフィギュレーション・ファイルが生成されます。

■ Create/Update > Create/Update IPS File コマンド(Fileメニュー )は、 プログラミング中にピン・ステートをコンフィギュレーションするのに使われる特定のデバイスの情報を含むI/Oピン・ステート・ファイル (.ips)を作成または更新できるISP CLAMP State Editorダイアログを表示します。

■ Convert Programming Filesコマンド (Fileメニュー ) では、1つまたは複数のデザインのSOFおよびPOFを、ロウ・プログラミング・データ・ファイル (.rpd)、EPC16またはSRAMのHEXOUTファイル、POF、ローカル・アップデートまたはリモート・アップデートのPOF、ロウ・バイナリ・ファイル、表形式テキスト・ファイルJTAGイン・ダイレクト・コンフィギュレーションファイル (.jic)、およびフラッシュ・ローダ16進ファイルといった別の二次プログラミング・ファイル形式に結合、変換します。

☞ quartus_asm実行コマンドの使い方

quartus_asm実行コマンドを使用して、アセンブラを、コマンド・プロンプトまたはスクリプト内で個別に実行することができます。 アセンブラを実行する前に、Quartus IIフィッタのquartus_fit実行コマンドを実行する必要があります。

quartus_asm実行コマンドでは、任意のテキスト・エディタを使用して表示可能なテキスト・ベースのレポート・ファイルが個別に作成されます。

quartus_asm実行コマンドでヘルプを参照する場合は、コマンド・プロンプトで次のコマンドのいずれかを入力します。

quartus_asm -hquartus_asm -helpquartus_asm --help=<トピック名>

Page 179: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 11 章 : プログラミングおよびコンフィギュレーションはじめに

176 ■ Introduction to Quartus II Altera Corporation

これらの二次プログラミング・ファイルは、他のプログラミング・ハードウェアにより、エンベデッド・プロセッサ・タイプのプログラミング環境で、一部のアルテラ・デバイスに対して使用可能です。

Programmerではアセンブラで生成されたQuartus II開発ソフトウェアでサポートされるすべてのアルテラ・デバイスのプログラムまたはコンフィギュレーションを行うPOFおよびSOFが使用されます。 Programmerは、MasterBlasterTM、ByteBlasterMVTM、ByteBlasterTM II、USB-BlasterTMの各ダウンロード・ケーブル、またはアルテラ・プログラミング・ユニット (APU) といったアルテラのプログラミング・ハードウェアと共に使用します。

Programmerでは、デザインに使用するデバイスの名前とオプションを含む、チェーン記述ファイル (.cdf)を作成できます。

また、MAX+PLUS II JTAGチェイン・ファイル (.jcf) またはFLEXチェイン・ファイル (.fcf) を開いて、CDFとしてQuartus II Programmerに保存することもできます。

複数デバイスのプログラミングまたはコンフィギュレーションが可能な一部のプログラミング・モードでは、CDF はチェーン内のデバイスの順番だけでなく、SOF、POF、Jamファイル、Jamバイト・コード・ファイル、およびデザインに使用されるデバイスの上から下への順番も指定します。図 2は、Programmer ウィンドウを示しています。

☞ スタンドアロン Programmerの使い方

Quartus II Programmerのみを使用する場合、Quartus II Programmerのスタンドアロン・バージョンであるquartus_pgmwをインストールします。

Page 180: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 11 章 : プログラミングおよびコンフィギュレーションはじめに

Altera Corporation Introduction to Quartus II ■ 177

図 2. Programmerウィンドウ

Programmerには、4つのプログラミング・モードがあります。

■ パッシブ・シリアル・モード■ JTAGモード■ アクティブ・シリアル・プログラミング・モード■ イン・ソケット・プログラミング・モード

☞ quartus_pgm実行コマンドの使い方

quartus_pgm実行コマンドを使用して、Programmerをコマンド・プロンプトまたはスクリプト内で個別に実行することができます。 Programmerを実行する前にプログラミング・ファイルを作成するため、quartus_asmアセンブラ実行コマンドの実行が必要になることがあります。

quartus_pgm実行コマンドでヘルプを参照する場合は、コマンド・プロンプトで次のコマンドのいずれかを入力します。

quartus_pgm -hquartus_pgm -helpquartus_pgm --help=<トピック名>

Page 181: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 11 章 : プログラミングおよびコンフィギュレーションはじめに

178 ■ Introduction to Quartus II Altera Corporation

パッシブ・シリアル・モードおよび JTAGプログラミング・モードでは、CDFおよびアルテラ・プログラミング・ハードウェアを使用して、単一または複数のデバイスをプログラムできます。 アクティブ・シリアル・プログラミング・モードとアルテラのプログラミング・ハードウェアを使用すれば、単一のEPCS1またはEPCS4シリアル・コンフィギュレーション・デバイスをプログラムできます。 イン・ソケット・プログラミング・モードでCDFおよびアルテラのプログラミング・ハードウェアを使用すると、単一のCPLDまたはコンフィギュレーション・デバイスをプログラムできます。

使用しているコンピュータでは利用できないが、JTAGサーバ経由で利用できるプログラミング・ハードウェアを使用したい場合は、Programmer を使用して、リモートJTAGサーバを指定して接続します。

関連情報 参照先

一般プログラミング情報 Quartus II ヘルプの「Programming Files」用語定義、「Overview: Working with Chain Description Files」、および「Overview: Converting Programming Files」

Programmer Quartus IIチュートリアルの「Programming Module」

アルテラのプログラミング・ハードウェア アルテラWebサイトのAltera Programming Unit User Guide、MasterBlaster Serial/USB Communication Cable User Guide、ByteBlaster II Download Cable User Guide、ByteBlasterMV Download Cable User Guide、USB-Blaster Download Cable User Guide、およびEthernetBlaster Download Cable User Guide

プログラミング・ハードウェアのインストール Quartus II Installation & Licensing for PCs およびQuartus II Installation & Licensing for UNIX and Linux

Workstationsマニュアル

各デバイスのプログラミング情報 アルテラWebサイトのConfiguration Handbook

Page 182: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 11 章 : プログラミングおよびコンフィギュレーションProgrammerを使用した 1つまたは複数のデバイスのプログラミング

Altera Corporation Introduction to Quartus II ■ 179

Programmerを使用した 1つまたは複数のデバイスのプログラミング

Quartus IIの Programmerでは、デバイス名、デバイス順、およびデザインのオプショナル・プログラミング・ファイル名等の情報が保存されたCDFを編集できます。CDFを使用することにより、1つまたは複数のSOF、POFで、または単一のJamファイルかJamバイト・コード・ファイルで、デバイスをプログラムまたはコンフィギュレーションできます。

Programmerを使用して 1つまたは複数のデバイスをプログラミングする基本的な流れは、次の通りです。

1. アルテラ・プログラミング・ハードウェアをシステムに接続し、必要なドライバをインストールします。

2. デザインをフル・コンパイルするか、少なくともAnalysis & Synthesis、フィッタ、コンパイラのアセンブラ・モジュールを実行します。 アセンブラにより、自動的にデザインのSOFおよびPOFが作成されます。

3. Programmerを開き、新規CDFを作成します。 開いた Programmerウィンドウ1つにつき1つのCDFを表します。複数のCDFを開くこともできますが、一度にプログラムできるのは、1つのCDFだけです。

4. プログラミング・ハードウェア・セットアップを選択します。 選択したプログラミング・ハードウェア・セットアップは、Programmerで利用できるプログラミング・モードのタイプに影響を与えます。

5. パッシブ・シリアル・モード、JTAGモード、アクティブ・シリアル・プログラミング・モード、イン・ソケット・プログラミング・モードのうち、適切なプログラミング・モードを選択します。

6. プログラミング・モードによって、CDFにあるプログラミング・ファイルおよびデバイスの順番を追加、削除、変更できます。 Programmerを使って、JTAGチェーンにある、アルテラがサポートするデバイスを自動的に検出し、これをCDFのデバイス・リストに追加します。 ユーザ定義のデバイスを追加することもできます。

7. コンフィギュレーション・デバイス、MAX 3000、およびMAX 7000デバイスといった、SRAM以外の不揮発性デバイスでは、Verify、Blank-Check、Examine、Security Bit、およびEraseなど、デバイスをチェックするプログラミング・オプションを指定できます。

8. デザインにISP CLAMP Stateアサインメントがある場合、またはI/O Pin StateFileがデザインにある場合は、ISP CLAMPをオンにします。

Page 183: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 11 章 : プログラミングおよびコンフィギュレーション二次プログラミング・ファイルの作成

180 ■ Introduction to Quartus II Altera Corporation

9. Programmerを起動します。

二次プログラミング・ファイルの作成エンベデッド・プロセッサなど別のシステムが使用できるように、Jamファイル、Jamバイト・コード・ファイル、シリアル・ベクタ・フォーマット・ファイル、イン・システム・コンフィギュレーション・ファイル、ロウ・バイナリ・ファイル、表形式テキスト・ファイル、またはI/Oピン・ステート・ファイルといった別形式の二次プログラミング・ファイルを作成できます。 さらに、SOFまたはPOFを、リモート・アップデートやローカル・アップデートのPOF、EPC16やSRAMのHEXOUTファイル、またはロウ・プログラミング・データ・ファイル表形式テキスト・ファイル、JICファイル、およびフラッシュ・ローダ16進ファイルといった他のプログラミング・ファイル・フォーマットに変換することもできます。 Create/Update > Create JAM,SVF, or ISC Fileコマンド (Fileメニュー)、Create/Update > Create/Update IPS Fileコマンド (Fileメニュー )、およびConvert Programming Filesコマンド (Fileメニュー )を使用すれば、これらの二次プログラミング・ファイルを作成できます。 また、SettingsダイアログのDeviceページから利用可能なDevice & Pin OptionsダイアログのProgramming Filesタブを使用すれば、コンパイル時に生成するアセンブラのオプション・プログラミング・ファイル・フォーマットを指定できます。

他のプログラミング・ファイル・フォーマットの作成

Create/Update > Create JAM, SVF, or ISC Fileコマンド (Fileメニュー ) を使用すれば、Jamファイル、Jamバイト・コード・ファイル、シリアル・ベクタ・フォーマット・ファイル、またはイン・システム・コンフィギュレーション・ファイルを作成できます。 これらのファイルは、アルテラ・プログラミング・ハードウェアまたはインテリジェント・ホストと連携して使用され、Quartus II 開発ソフトウェアでサポートされるあらゆるアルテラ・デバイスをコンフィギュレーションできます。 また、Jamファイルおよび Jamバイト・コード・ファイルをCDFに追加することもできます。 図 3を参照してください。

Page 184: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 11 章 : プログラミングおよびコンフィギュレーション二次プログラミング・ファイルの作成

Altera Corporation Introduction to Quartus II ■ 181

図 3. Create JAM, SVF, or ISC Fileダイアログ

プログラムの最初に使用されるデバイス・ピンのISP CLAMPステートを記述するI/Oピン・ステート・ファイルを生成するためにCreate/Update > Create/Update IPS Fileコマンド (Fileメニュー ) を使用することができます。 Create/Update > Create/UpdateIPS File コマンドは、図 4に示されているISP CLAMP State Editorダイアログを開きます。

図 4. ISP CLAMP State Editorダイアログ

Page 185: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 11 章 : プログラミングおよびコンフィギュレーション二次プログラミング・ファイルの作成

182 ■ Introduction to Quartus II Altera Corporation

Jamファイル、Jamバイト・コード・ファイル、シリアル・ベクタ・フォーマット・ファイル、イン・システム・コンフィギュレーション・ファイル、またはI/Oピン・ステート・ファイルを作成する基本的な流れは次の通りです。

1. デザインをフル・コンパイルするか、少なくともAnalysis & Synthesis、フィッタ、コンパイラのアセンブラ・モジュールを実行します。 アセンブラにより、自動的にデザインのSOFおよびPOFが作成されます。

2. Programmaerウィンドウを開き、新規CDFを作成します。

3. JTAGモードを指定します。

4. CDFにあるプログラミング・ファイルとデバイスの順番を、追加、削除、変更します。 Programmerを使って、JTAGチェーンにある、アルテラがサポートするデバイスを自動的に検出し、これをCDFのデバイス・リストに追加します。ユーザ定義のデバイスを追加することもできます。

5. Jamファイル、Jamバイト・コード・ファイル、シリアル・ベクタ・フォーマット、またはイン・システム・コンフィギュレーション・ファイルを作成する場合、Create/Update > Create Jam, SVF, or ISC File (Fileメニュー ) を選択し、作成するファイル名およびファイル・フォーマットを指定します。

6. I/Oピン・ステート・ファイルを作成する場合、Create/Update > Create/UpdateIPS File (Fileメニュー ) を選択して、ISP CLAMP State Editorダイアログ (Fileメニュー ) で、適切な ISP CLAMPステート・ピン設定とファイル名を指定します。

プログラミング・ファイルの変換

Convert Programming Filesダイアログ (Fileメニュー ) を使用することにより、1つまたは複数のデザインのSOFまたはPOFを、他のコンフィギュレーション方法で使用できるように、別のプログラミング・ファイル・フォーマットに結合および変換できます。 例えば、リモート・アップデート・イネーブル SOFを、リモート・アップデート・コンフィギュレーション・モードでコンフィギュレーション・デバイスをプログラムするのに使用されるリモート・アップデートのPOFに追加したり、外部ホストで使用できるように、Programmer オブジェクト・ファイルを EPC16 のHEXOUTファイルに変換したりできます。 また、一部のコンフィギュレーション・デバイスで使用できるように、POFをロウ・プログラミング・データ・ファイルに変換できます。 CycloneTMデバイスのコンフィギュレーション・データをEPCS1またはEPCS4シリアル・コンフィギュレーション・デバイスのプログラムに使用できるSOFまたはPOFをJTAGインダイレクト・コンフィギュレーション・ファイルに変換することもできます。

Page 186: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 11 章 : プログラミングおよびコンフィギュレーション二次プログラミング・ファイルの作成

Altera Corporation Introduction to Quartus II ■ 183

Convert Programming Files ダイアログを使用することにより、SRAM、POF、ロウ・バイナリ・ファイル、または表形式テキスト・ファイルのHEXOUTファイルに保存されたSOFのチェーンを配列させるか、EPC16のHEXOUTファイルに保存するPOFを指定して、出力プログラミング・ファイルをセットアップできます。 ConvertProgramming Filesダイアログで指定した設定は、デバイス名やファイル名、デバイス順、デバイスのプロパティ、およびファイル・オプションといった情報を含む変換セットアップ・ファイル (.cof) に保存されます。 図 5に、Convert ProgrammingFilesダイアログを示します。

図 5. Convert Programming Filesダイアログ

Page 187: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 11 章 : プログラミングおよびコンフィギュレーション二次プログラミング・ファイルの作成

184 ■ Introduction to Quartus II Altera Corporation

EPC4、EPC8、またはEPC16コンフィギュレーション・デバイスのPOFでは、次の情報も指定できます。

■ コンフィギュレーション・メモリ領域のページに保存される、別のコンフィギュレーション・ビットストリームの確立

■ 各ページ内でのSOFのパラレル・チェーンの作成■ フラッシュ・メモリに保存されるSOFおよび 16進 (Intelフォーマット) ファイ

ル (.hex)の順序の配列 ■ SOFデータ項目およびHEXファイルのプロパティの指定■ コンフィギュレーション・メモリ領域に対するSOFデータ項目の追加または削除 ■ 必要に応じたメモリ・マップ・ファイル (.map) の作成

ローカル・アップデートのPOFおよびリモート・アップデートのPOFでは、次の情報を指定できます。

■ コンフィギュレーション・メモリ領域に対するリモート・アップデート・イネーブルPOFおよびSOFの追加または削除

■ SOFデータ項目のプロパティの指定■ SOFデータ項目の追加または削除■ 必要に応じた、メモリ・マップ・ファイルの作成、リモートおよびローカル・

アップデート・ディファレンス・ファイルの生成

また、Convert Programming Filesダイアログを使用すれば、アクティブ・シリアル・コンフィギュレーション・モードで、複数のSOFを単一のPOFに配列、結合できます。 POFは、EPCS1またはEPCS4シリアル・コンフィギュレーション・デバイスのプログラムに使用できます。このデバイスは、Cyclone デバイスを通した複数のデバイスのコンフィギュレーションに使用されます。

☞ quartus_cpf実行コマンドの使い方

quartus_cpf実行コマンドを使用して、プログラミング・ファイルの変換機能を、コマンド・プロンプトまたはスクリプト内で個別に実行することができます。 Programmerを実行する前にプログラミング・ファイルを作成するため、quartus_asmアセンブラ実行コマンドの実行が必要になることがあります。

quartus_cpf 実行コマンドでヘルプを参照する場合は、コマンド・プロンプトで次のコマンドのいずれかを入力します。

quartus_cpf -hquartus_cpf -helpquartus_cpf --help=<トピック名>

Page 188: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 11 章 : プログラミングおよびコンフィギュレーション二次プログラミング・ファイルの作成

Altera Corporation Introduction to Quartus II ■ 185

プログラミング・ファイルを変換する基本的な流れは、以下の通りです。

1. コンパイラのアセンブラ・モジュールを実行します。 アセンブラにより、自動的にデザインのSOFおよびPOFが作成されます。

2. Convert Programming Filesダイアログを使用して、作成するプログラミング・ファイルのフォーマットおよび名前を指定します。

3. プログラミング・ファイルのコンフィギュレーション・メモリ領域と互換性のあるコンフィギュレーション・モードを指定します。

4. プログラミング・ファイル・タイプおよびターゲット・デバイスに、適切なプログラミング・オプションを指定します。

5. (オプション) ディファレンス・ファイルのタイプを指定して、リモートまたはローカル・アップデートのProgrammerオブジェクト・ファイルに対するリモートまたはローカル・アップデート・ディファレンス・ファイルを生成します。

6. SOFデータ項目を追加または削除して、ページに割り当てます。

7. (オプション) 1つまたは複数のSOFデータ項目またはPOFデータ項目用に変換するSOFおよびPOFの順序を追加、削除、変更します。

8. (オプション) EPC4、EPC8、または EPC16コンフィギュレーション・デバイスのPOFのBottom Boot DataまたはMain Block Data項目にHEXファイルを追加し、SOF Data項目、POF Data項目、およびHEXファイルの追加プロパティを指定します。

9. Input files to convertリストおよび変換セットアップ・ファイルの出力プログラミング・ファイル設定を保存します。

10. ファイルを変換します。 必要に応じて、作成するメモリ・マップ・ファイルも指定できます。

)

Page 189: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 11 章 : プログラミングおよびコンフィギュレーション二次プログラミング・ファイルの作成

186 ■ Introduction to Quartus II Altera Corporation

関連情報 参照先

イン・システム・プログラマビリティおよびイン・サーキット・リコンフィギュラビリティ

アルテラWebサイトのConfiguration Handbook

アルテラ Web サイトの Application Note 100 (In-System Programmability Guidelines)

アルテラWebサイトのApplication Note 95 (In-SystemProgrammability in MAX Devices)

アルテラWebサイトのApplication Note 122 (Using Jam STAPL for ISP & ICR via an Embedded Processor)

アルテラWebサイトのApplication Note 298 (Reconfiguring Excalibur Devices under Processor Control)

イン・システム・プログラミング Quartus IIチュートリアルの「Programming Module」

リモート・システム・コンフィギュレーション アルテラ Web サイトの Stratix Device Handbook、Volume 2 の Chapter 12「Using Remote SystemConfiguration with Stratix & Stratix GX Devices」およびStratix II Device Handbook、Volume 2のChapter 8「Using Remote System Configuration with Stratix &Stratix GX Devices」

Page 190: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 11 章 : プログラミングおよびコンフィギュレーションQuartus II開発ソフトウェアを使用したリモート JTAGサーバ経由のプログラム

Altera Corporation Introduction to Quartus II ■ 187

Quartus II開発ソフトウェアを使用したリモート JTAGサーバ経由のプログラム

ProgrammerウィンドウにあるHardwareボタンまたはEditメニューから利用できるHardware Setupダイアログで、例えばユーザのコンピュータ上で使用できないプログラミング・ハードウェアを使用するために接続先となるリモートJTAGサーバを追加し、リモート・ユーザがローカル JTAGサーバに接続できるように、ローカルJTAGサーバの設定をコンフィギュレーションすることができます。

Hardware SetupダイアログのJTAG Settingsタブから利用可能なConfigure LocalJTAG Serverダイアログで、リモート・クライアントがイネーブルされ、JTAGサーバに接続するように指定できます。

Hardware SetupダイアログのJTAG Settingsタブから利用可能なAdd Serverダイアログで、接続先とするリモート・サーバを指定できます。 リモート・サーバに接続するときは、リモート・サーバにアタッチされたプログラミング・ハードウェアが、Hardware Settingsタブに表示されます。

関連情報 参照先

ローカルJTAGサーバ Quartus II ヘルプの「Configuring Local JTAG ServerSettings」および「Adding a JTAG Server」

Page 191: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

デバッグ

第 12章の内容 :

はじめに 190

SignalTap IIロジック・アナライザ 191

SignalProbe 198

In-System Memory Content Editor 200

RTL ViewerおよびTechnology Map Viewer 202

Chip Editor 203

第 12章

12

Page 192: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 12 章 : デバッグはじめに

190 ■ Introduction to Quartus II Altera Corporation

はじめにQuartus® IIのSignalTap® IIロジック・アナライザおよびSignalProbeTM 機能は、デバイスを実際のシステム速度で動作させながら、システム内の内部デバイス・ノードやI/Oピンの解析を可能にします。 SignalTap IIロジック・アナライザは、エンベデッド・ロジック・アナライザです。ユーザが定義したトリガで取得した信号データは、JTAGポートを介して、SignalTap IIロジック・アナライザ自身または外部ロジック・アナライザやオシロスコープでの解析が可能です。 また、SignalTap IIロジック・アナライザのスタンドアロン・バージョンを使用して信号を取り込むことができます。SignalProbe機能では、未使用のデバイス配線リソース上のインクリメンタルな配線を使用して、選択された信号を外部ロジック・アナライザまたはオシロスコープで測定することができます。図 1および図 2に、SignalTap IIおよびSignalProbeのデバッグ・フローを示します。

図 1. SignalTap IIデバッグ・フロー

図 2. SignalProbeデバッグ・フロー

Page 193: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 12 章 : デバッグSignalTap IIロジック・アナライザ

Altera Corporation Introduction to Quartus II ■ 191

SignalTap IIロジック・アナライザSignalTap IIロジック・アナライザは、リアルタイムな信号のふるまいを取り込んで表示を行い、システム・デザインのハードウェアとソフトウェアの間の相互作用を観測可能な第二世代のシステム・レベル・デバッグ・ツールです。 Quartus II 開発ソフトウェアから、キャプチャする信号の種類、開始時期、サンプル量を選択できます。 また、データをデバイスのメモリ・ブロックから JTAG ポートを介してSignalTap IIロジック・アナライザで解析するか、またはI/Oピンから外部ロジック・アナライザまたはオシロスコープで解析するかを選択することもできます。

コンフィギュレーション・データをデバイスにダウンロードするときは、MasterBlasterTM、ByteBlasterMVTM、または ByteBlasterTM II通信ケーブルを使用します。 これらのケーブルは、キャプチャした信号のデータをデバイスのRAMメモリから Quartus II開発ソフトウェアにアップロードするときにも使用します。Quartus II 開発ソフトウェアでは、SignalTap IIロジック・アナライザで扱うデータを波形表示します。

SignalTap IIロジック・アナライザのセット・アップおよび実行

SignalTap IIロジック・アナライザを使用するには、すべてのコンフィギュレーション設定を含み、キャプチャした信号を波形表示するための SignalTap II ファイル (.stp)を作成する必要があります。 SignalTap IIファイルのセット・アップの完了後、プロジェクトのコンパイルとデバイスのプログラムを行うと、データのキャプチャおよび解析にロジック・アナライザを使用することができます。

ロジック・アナライザの各インスタンスは、デバイスのロジックに組み込まれています。 SignalTap IIロジック・アナライザは、1つのデバイスで最大1,024チャネルと128,000サンプリングが可能です。

コンパイル後、Run Analysis コマンド (Processing メニュー ) を使用して、SignalTap IIロジック・アナライザを実行できます。

Page 194: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 12 章 : デバッグSignalTap IIロジック・アナライザ

192 ■ Introduction to Quartus II Altera Corporation

SignalTap II ファイルのセット・アップおよびデータ・キャプチャの基本的な流れは、以下の通りです。

1. SignalTap IIファイルを新規に作成します。

2. SignalTap IIファイルにインスタンスを、また各インスタンスにはノードを追加します。 Node Finderの SignalTap IIフィルタ機能を使用すると、合成前やフィッティング後のすべてのSignalTap IIノードを検索できます。

3. 各インスタンスにクロックを割り当てます。

4. サンプル容量およびトリガ・レベルといった他のオプションを設定し、データ入力またはトリガ入力、デバッグ・ポートに信号を割り当てます。

5. 必要に応じて、拡張トリガ条件を指定します。

6. デザインをコンパイルします。

7. デバイスをプログラムします。

8. Quartus II 開発ソフトウェアまたは外部ロジック・アナライザやオシロスコープを使用して、信号データを取得し解析します。

図 3に、SignalTap IIロジック・アナライザを示します。

☞ quartus_stp実行コマンドの使い方

quartus_stp実行コマンドを使用して、コマンド・プロンプトまたはスクリプトで SignalTap II ロジック・アナライザを個別に実行することもできます。 SignalTap IIファイルを設定するには、quartus_stp実行コマンドをはじめに実行します。 コンパイルの後にSignalTap II ロジック・アナライザを実行して、信号をキャプチャすることができます。

quartus_stp実行コマンドのヘルプを参照する場合は、コマンド・プロンプトで次のいずれかを入力します。

quartus_stp -hquartus_stp --helpquartus_stp --help=<トピック名>

Page 195: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 12 章 : デバッグSignalTap IIロジック・アナライザ

Altera Corporation Introduction to Quartus II ■ 193

図 3. SignalTap IIロジック・アナライザ

SignalTap IIロジック・アナライザをセット・アップするには、次の機能を使用します。

■ 複数のロジック・アナライザ: SignalTap IIロジック・アナライザは、各デバイスに対しロジック・アナライザ機能を複数組み込むことが可能です(マルチ・インスタンス)。 この機能を使用すると、デバイスの各クロック・ドメインに独自のロジック・アナライザを個別に作成することや、複数のエンベデッド・ロジック・アナライザに異なる設定を適用することができます。

■ インスタンス・マネージャ: インスタンス・マネージャを使用して、マルチ・インスタンスでのSignalTap IIロジック解析が可能です。 また、SignalTap IIファイルのインスタンスの作成や削除、および名前の変更も可能です。 インスタンス・マネージャは、現在のSignalTap IIファイルにあるすべてのインスタンス、関連するインスタンスの現在の状態、関連するインスタンスで使用されるロジック・エレメントおよびメモリ・ビット数を表示します。 インスタンス・マネージャを使用すると、各ロジック・アナライザがデバイスで必要とするリソースの使用率をチェックするのに役立ちます。 複数のロジック・アナライザを選択してから、Run Analysis (Processingメニュー ) を選択すると、それらを同時に起動できます。

インスタンス・マネージャ

セットアップ・ビュー シグナル・コンフィギュレーション・パネル

JTAGチェーン・コンフィギュレーション

Page 196: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 12 章 : デバッグSignalTap IIロジック・アナライザ

194 ■ Introduction to Quartus II Altera Corporation

■ トリガ: ロジックのレベルやクロック・エッジ、論理式などのロジック・イベントのパターンをトリガといいます。 SignalTap IIロジック・アナライザは、マルチレベル・トリガ、複数のトリガ・ポイントやセグメント、外部トリガのイベントをサポートしています。 SignalTap II Logic AnalyzerウィンドウのSignal Configurationパネルを使用して、トリガ・オプションを設定し、SignalTap II Logic AnalyzerウィンドウのSetupタブのTrigger Levels列のAdvancedを選択して拡張トリガを指定します。

拡張トリガは、内部バスまたはノードのデータ値をベースにしたユーザ定義の

論理式や条件を柔軟に作ることができます。 Advanced Triggerタブを使用して、

Node List および Object Library から記号をドラッグ・アンド・ドロップして、

論理、比較、ビット単位、リダクション、シフト演算、およびイベント・カウ

ンタで構成される論理式を作成することができます。 図 4 は、SignalTap II ウィ

ンドウの Advanced Trigger タブを示しています。

図 4. SignalTap IIウィンドウの Advanced Triggersタブ

トリガ・レベルは、最大 10 レベルまで設定可能で、最重要データのみを表示

することができます。 pre、center、post、および continuous の 4 つのトリガ・ポ

イントを指定できます。 トリガ・ポイントでは、選択したインスタンスに対し

トリガ条件より前にキャプチャできるデータ量と、トリガ条件より後にキャプ

チャするデータ量を指定できます。

Page 197: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 12 章 : デバッグSignalTap IIロジック・アナライザ

Altera Corporation Introduction to Quartus II ■ 195

セグメント・モードでは、メモリを時間周期ごとにセグメント化することで、

大きなサンプル容量の領域確保を行うことなく、周期的イベントのデータを取

り込むことができます。

■ インクリメンタル配線: この機能により、再度フル・コンパイルを実行することなしにフィッティング後のノードを解析できるため、デバッグのプロセスを短縮できます。

SignalTap II インクリメンタル配線機能を使用する前に、Settings ダイアログ

(Assignments メニュー ) の SignalTap II Logic Analyzer ページの Automaticallyturn on smart compilation if conditions exist in which SignalTap II withincremental routing is used をオンにして、スマート・コンパイルを実行してお

く必要があります。 また、デザインをコンパイルする前に Trigger Nodesallocated および Data Nodes allocated ボックスを使用して、SignalTap II インク

リメンタル配線のトリガまたはデータ・ノードを予約しておく必要がありま

す。 Node Finder の Filter リストにある SignalTap II: post-fitting を選択して、

SignalTap II インクリメンタル配線ソースのノードを検索できます。

■ プログラミング・ファイルの付加: 複数のSignalTap IIコンフィギュレーション (トリガ設定) および対応するプログラミング・ファイルを1つのSignalTap IIファイルで実現します。 SOF Managerを使用して、SRAM Object Files (.sof)の追加、名前の変更、または削除、SignalTap IIファイルからSOFを抽出、またはデバイスをプログラムすることができます。

SignalTap IIデータの解析

SignalTap IIロジック・アナライザを使用してロジック解析の結果を表示する場合、デバイスの内部メモリに保管されたデータは、JTAGポートを介してロジック・アナライザの波形ビューに表示されます。

波形ビューでは、時間軸の挿入、ノード名の調整、ノードの複製、バスの作成 /名前の変更 /グループ化解除、バスの値のデータ形式の指定、および波形データの印刷ができます。 波形の作成に使用されるデータ・ログには、SignalTap IIロジック・アナライザでキャプチャしたデータの履歴が表示されます。 データは階層形式を持ち、同じトリガで取り込まれたデータ・ログはTrigger Setsでグループ化されます。図 5に、波形ビューを示します。

Page 198: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 12 章 : デバッグSignalTap IIロジック・アナライザ

196 ■ Introduction to Quartus II Altera Corporation

図 5. SignalTap II波形ビュー

Waveform Exportユーティリティでは、キャプチャしたデータを、EDAツールで使用する次のフォーマットにエクスポートできます。

■ カンマ区切り値ファイル (.csv)■ テーブル・ファイル (.tbl)■ Value Change Dumpファイル (.vcd)■ ベクタ波形ファイル (.vwf)■ JPEGファイル (.jpeg)■ ビットマップ・ファイル (.bmp)

SignalTap IIロジック・アナライザのコンフィギュレーションにより、信号グループのニーモニック・テーブルを作成することもできます。 ニーモニック・テーブル機能では、あるビット・パターンに対し、予め定義された名前を割り当て、キャプチャしたデータに意味を持たせることができます。 図 6を参照してください。

Page 199: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 12 章 : デバッグSignalTap IIロジック・アナライザ

Altera Corporation Introduction to Quartus II ■ 197

図 6. Mnemonic Table Setupダイアログ

☞ スタンドアロン SignalTap IIロジック・アナライザの使い方

SignalTap IIロジック・アナライザのみを使用する場合は、quartus_stpwコマンドを使用して、スタンドアロン版のSignalTap IIロジック・アナライザを使うことができます。

関連情報 参照先

SignalTap IIロジック・アナライザ アルテラWebサイトのQuartus II Handbook、Volume3のChapter 10「Design Debugging Using SignalTap IIEmbedded Logic Analyzer」

Quartus IIヘルプの「Overview: Using the SignalTap IILogic Analyzer」

Page 200: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 12 章 : デバッグSignalProbe

198 ■ Introduction to Quartus II Altera Corporation

SignalProbe

SignalProbe機能を使用することによって、既存フィッティングに影響を与えずにデザイン中のユーザ指定の信号を出力ピンから解析できるため、別途フル・コンパイルを実行することなしに信号をデバッグできます。 完全に配線された状態のデザインで、以前に予約した I/Oピンまたは現在未使用の I/Oピンのいずれかを使ってデバッグを行う信号を選択し、配線することができます。

SignalProbe機能は、デバッグするデザインの信号を指定し、これらの信号を未使用または予約された出力ピンに接続するSignalProbeコンパイルを実行して、信号を外部のロジック・アナライザで解析します。 ピンの割り当て時にNode Finderを使用すると、使用可能な SignalProbeソースを検索できます。 SignalProbeのコンパイルでは、通常コンパイルの約20%~30%の時間でコンパイルが可能です。

SignalProbe機能を使用してピンを予約し、デザイン上でSignalProbeのコンパイルを実行するには、下記を参照してください。

1. デザインのフル・コンパイルを実行します。

2. デバッグを行う信号および信号を送るI/Oピンを選択し、Settingsダイアログ(Assignmentsメニュー ) のSignalProbe Settingsページから使用可能なAssignSignalProbe PinsダイアログにあるSignalProbe機能をオンにします。 173ページの図 7を参照してください。

3. Start > Start Signal Probe Compilationコマンド (Processingメニュー) を使用して、SignalProbeのコンパイルを実行します。 SignalProbeのコンパイルは、デザインのフィッティングに影響を与えずにコンパイルすることができ、通常コンパイルより速くSignalProbe信号を配線します。 または、SettingsダイアログのModeページでAutomatically route SignalProbe signals during compilationをオンにしてからStart Compilation (Processingメニュー) を選択し、SignalProbe接続をフル・コンパイルに組み込みます。

4. デバイスを新しいプログラミング・データでコンフィギュレーションし、信号を解析します。

Page 201: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 12 章 : デバッグSignalProbe

Altera Corporation Introduction to Quartus II ■ 199

図 7. Assign SignalProbe Pinsダイアログ

SignalProbeピンを予約するとき、レジスタ・パイプライン機能を使用して、ジッタを無視したり、信号状態をクロック・エッジで出力させたり、または遅らせることができます。 また、バス信号からの複数のSignalProbe出力を同期させることや、fMAXの変更によりSignalProbe配線がクリティカル・パスになることを防ぐことも可能です。

デバッグ後に、SignalProbe 配線のすべてあるいは一部を保存または削除できます。SignalProbe配線をデザインに保存する場合、フル・コンパイルの実行時にSignalProbe配線を自動的に配線することができます。

SignalProbe 機能は、Tcl と共に使用することができます。 Tcl コマンドを使って、SignalProbeの割り当てなどの追加や削除、デザインへSignalProbeのコンパイルの実行、そしてフル・コンパイルでのSignalProbe信号配線のコンパイルが可能です。

Page 202: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 12 章 : デバッグIn-System Memory Content Editor

200 ■ Introduction to Quartus II Altera Corporation

In-System Memory Content Editor

In-System Memory Content Editorを使用すれば、デザインのシステム・クロックとは関係なく RAM、ROM、またはレジスタの内容をランタイムで表示することができます。デバッグ・ノードは、標準プログラミング・ハードウェアを使用し、JTAGインタフェースを介して In-System Memory Content Editorと通信します。

MegaWizard® Plug-In Manager(Toolsメニュー)からIn-System Memory ContentEditorを使用して、lpm_rom、lpm_ram_dq、altsyncram、およびlpm_constantメガファンクションの設定とインスタンスを行うか、またはlpm_hintメガファンクション・パラメータを使用して、これらのメガファンクションをデザイン内で直接インスタンスすることができます。

In-System Memory Content Editor (Toolsメニュー)は、デバイス内のデータのキャプチャとアップデートに使用されます。データは、メモリ初期設定ファイル(.mif)、16進(Intelフォーマット)ファイル(.hex)、およびRAM初期設定ファイル(.rif)フォーマットでエクスポートまたはインポートすることができます。In-SystemMemory Content Editorの特長は次のとおりです。

■ インスタンス・マネージャ:インデックス、インスタンス名、ステータス、データ幅、データの深さ、タイプ、モードなどのメモリ・インスタンスのリストが含まれます。Instance Managerは、表示、オフロード、またはアップデートの対象となるデータをどのメモリ・ブロックに格納するのかを制御します。Instance Managerからのコマンドは、選択されたメモリ・ブロック全体に影響を与えます。

■ JTAGチェイン・コンフィギュレーション:データを取得するまたはデータを読み込むプログラミング・ハードウェアやデバイスの選択、およびプログラミング用 SRAM オブジェクト・ファイル(.sof)の選択に使用されます。

関連情報 参照先

SignalProbe機能 アルテラWebサイトのQuartus II Handbook、Volume3 の Chapter 9「Quick Design Debugging UsingSignalProbe」

Quartus IIヘルプの「SignalProbe Introduction」

SignalProbe機能とTCLコマンドの使い方 アルテラWebサイトのQuartus II Handbook、Volume2のChapter 3「Tcl Scripting」

Page 203: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 12 章 : デバッグIn-System Memory Content Editor

Altera Corporation Introduction to Quartus II ■ 201

■ HEX エディタ:ランタイムでのイン・システム・メモリの編集と変更内容の保存、メモリ・ブロック内の現在のデータの表示、およびメモリ・ブロック内の選択セクションのアップデートまたはオフロードに使用します。Go Toコマンド(右ボタンのポップアップ・メニュー)を使用して、特定インスタンスにおける特定メモリ・ブロック内の特定データ・アドレスに自動的に移動します。ワードは各16進値をスペースで区切って表示されます。メモリ・アドレスが左カラム、ASCII値が(ワード幅が8の倍数の場合)右カラムに表示されます。各メモリ・インスタンスは、HEXエディタとは別に表示されます。図 8に、In-System Memory Content EditorウィンドウのHexエディタを示します。

図 8. In-System Memory Content Editorウィンドウ

Page 204: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 12 章 : デバッグRTL Viewerおよび Technology Map Viewer

202 ■ Introduction to Quartus II Altera Corporation

RTL Viewerおよび Technology Map ViewerRTL Viewerは、Analysis & Elaboration実行後のデザインの解析に使用します。 RTLViewerでは、デザインのゲート・レベルでの回路図と、ネットリストにあるインスタンスやプリミティブ、ピン、およびネットを階層表示します。 この機能を使って回路図に含まれる情報をフィルタリングしたり、複数のページにわたって表示されるデザインを検討し、どのように変更するべきかを決定することができます。

Technology Map Viewerは、ロー・レベル、または素子レベルにおいて技術を特定したデザインの回路図表示を提供します。 Technology Map Viewerは、ユーザのデザインのゲート・レベルの配線ビューとインスタンス、プリミティブ、ピン、および全体のネットリストのネットを表示する階層リストを含みます。

RTL ViewerおよびTechnology Map Viewerについて詳しくは、「第 4 章: 論理合成」、76ページおよび78ページの「RTL Viewerによる合成結果の解析」と「TechnologyMap Viewerによる合成結果の解析」を参照してください。

関連情報 参照先

In-System Memory Content Editor アルテラWebサイトのQuartus II Handbook、Volume3 の Chapter 12「In-System Editing of Memory andConstants」

Quartus II ヘルプの「Overview: Using the In-SystemMemory Content Editor」

Page 205: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 12 章 : デバッグChip Editor

Altera Corporation Introduction to Quartus II ■ 203

Chip Editor

SignalTap IIと連携してChip EditorやSignalProbeデバッグ・ツールを使用すると、デザインの検証スピードを上げ、検証中に発見されたバグをインクリメンタルに修正できます。 SignalTap IIロジック・アナライザの実行後、またはSignalProbe機能を使用して信号を検証後、Chip Editorでコンパイル後の配置配線を詳細に表示できます。 また、Resource Property Editorを使用すると、コンパイル後にロジック・セルのプロパティやパラメータ、I/Oエレメント、PLL部の素子を編集しても再度フル・コンパイルする必要がありません。 Chip Editor の使用について詳しくは、次章「第 13 章: ECO (設計変更管理)」を参照してください。

Page 206: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

ECO (設計変更管理 )

第 13章の内容 :

はじめに 206

Chip Editorにおける遅延およびクリティカル・パスの識別 207

Chip Editorによる素子の編集 208

Resource Property Editorによるリソース・プロパティの変更 209

Change Managerにおける変更の表示および管理 211

ECOによる影響の検証 213

第 13章

13

Page 207: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 13 章 : ECO (設計変更管理 )はじめに

206 ■ Introduction to Quartus II Altera Corporation

はじめにQuartus® II 開発ソフトウェアでは、フル・コンパイル後にデザインに対して ECO(Engineering Change Order:設計変更管理) と呼ばれる小規模な変更を行うことができます。ECOは、ソース・コードまたはQuartus IIの設定ファイルおよびコンフィギュレーション・ファイル (.qsf) に対してではなく、デザイン・データベースに対して直接行われます。デザイン・データベースに対して変更をかけるので、フル・コンパイラを実行する必要はありません。図 1に、ECOのデザイン・フローを示します。

図 1. ECOのデザイン・フロー

Quartus II開発ソフトウェアでECOを行うデザイン・フローの概要は次の通りです。

1. フル・コンパイル後、Chip Editor でデザインの配置配線を詳細表示し、変更を行うリソースを識別します。

2. Chip Editorで素子の作成や移動を行います。

3. Resource Property Editorを使用して、リソースの内部プロパティの編集や、接続の編集または削除を行います。

4. Check Resource Propertiesコマンド (Editメニュー ) を使用して、リソースの変更内容をチェックします。

5. Change Managerを使用して実行した変更の要約とその状態を表示し、リソースのプロパティに対してどの変更を実装するか、または保存するかを制御します。コメントを追加すると、各変更点の参照に役立ちます。

6. Check and Save All Netlist Changesコマンド (Editメニュー) を使用して、ネットリストにあるその他のリソースすべてに対して行われた変更内容をチェックします。

Page 208: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 13 章 : ECO (設計変更管理 )Chip Editorにおける遅延およびクリティカル・パスの識別

Altera Corporation Introduction to Quartus II ■ 207

7. Assemblerを実行して新規にプログラミング・ファイルを生成するか、またはEDA Netlist Writerを再度実行して、新しいネットリストを生成します。タイミング変更の検証を行う場合は、Timing Analyzerを実行します。

Chip Editorにおける遅延およびクリティカル・パスの識別

Chip Editorを使用して、配置配線の詳細を表示できます。 Chip Editorは、Quartus IITiming Closure Floorplan では表示されないデザインの配置配線に追加された内容を明示することができます。各デバイス・リソース間の完全な配線情報を表示できるため、可能な配線パスや使用された配線パスのすべてを示すことができます。図2を参照してください。

図 2. Chip Editor

Chip Editorは、内部接続と配線、ロジック・アレイ・ブロック (LAB)、RAMブロック、DSP ブロック、I/O、ロウ、カラム、ブロックや内部接続とその他の配線間のインタフェース等、デバイスの全リソースの表示が可能です。

選択したリソースのファン・インおよびファン・アウト接続を表示

配線遅延の表示リソース使用率の表示

Page 209: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 13 章 : ECO (設計変更管理 )Chip Editorによる素子の編集

208 ■ Introduction to Quartus II Altera Corporation

拡大/縮小、表示したい特定パスの選択、デバイス・ビューを拡大表示する鳥瞰 (ちょうかん) 図 (Bird’s Eye View) ウィンドウを別に開くなど、Chip Editor表示を細かく制御できます。ファン・インおよびファン・アウト、クリティカル・パス、信号遅延の見積りだけでなく、異なったリソースの表示を制御するオプションも設定できます。この情報を使用することで、Resource Property Editorで編集するプロパティと設定を決定できます。 Chip Editor の 1 つまたは複数のリソースを選択し、Locate in Resource Property Editor (右ボタンのポップアップ・メニュー ) を選択してResource Property Editorを開き、リソースを編集することが可能です。詳しくは、209ページの「Resource Property Editorによるリソース・プロパティの変更」 を参照してください。

複数のエレメントを選択する場合、必要に応じてSelected Elements Windowコマンド (右ボタンのポップアップ・メニュー ) でResource Property Editorまたは他のエディタを位置付け、選択肢からエレメントを削除することができます。

Chip Editorによる素子の編集Chip Editorでは、新しい素子を作成したり、現在ある素子を他の位置に移動することもできます。 素子の名前を変更または削除することも可能です .これらの変更は、Change Managerに反映されます。

Chip Editorウィンドウで使用している素子を選択し、Create Atom (右ボタンのポップアップ・メニュー ) を選択し、素子に対して新しい名前をつけることで、新しい素子を作成することができます。また、新しい素子に対しての接続やプロパティの変更をするには、Locate in Resource Propertyコマンド (右ボタンのポップアップ・メニュー ) を使用します。 詳細については、次章「Resource Property Editorによるリソース・プロパティの変更」を参照してください。

関連情報 参照先

Chip Editorを使用したECO アルテラWebサイトのQuartus II Handbook、Volume1のChapter 4「Engineering Change Management」

アルテラWebサイトのQuartus II Handbook、Volume3 の Chapter 11「Design Analysis and EngineeringChange Management with the Chip Editor」

Chip Editor Quartus IIヘルプの「Overview: Using the Chip Editor」および「Making Post-Compilation Changes Introduction」

Page 210: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 13 章 : ECO (設計変更管理 )Resource Property Editorによるリソース・プロパティの変更

Altera Corporation Introduction to Quartus II ■ 209

素子を選択し、新しい位置にドラッグすることで、簡単に移動することができます。素子を削除する場合は、Deleteコマンド (右ボタンのポップアップ・メニュー ) を使用できます。Check and Save All Netlist Changesコマンド (Editメニュー ) を使って、素子に対して行ったすべての変更を保存することができます。

Resource Property Editorによるリソース・プロパティの変更

Resource Property Editorでは、ロジック・セルのプロパティおよびパラメータ、I/Oエレメント、またはPLLリソースをコンパイル後に編集できます。ツールバー・ボタンを使用して前後のリソースを操作できます。また、同時に複数のリソースを選択し変更できます。 さらに、リソース・ポートをマウスでポイントすると、そのポートのファン・インおよびファン・アウトをResource Property Editorがハイライトします。

Resource Property Editorには、変更中のリソースの回路図を表示するビューワ、すべての入力および出力ポートと接続信号を一覧表示するポート接続テーブル、そのリソースに使用可能なプロパティおよびパラメータを表示するプロパティ・テーブルを含んでいます。 ポート接続テーブルまたはプロパティ・テーブルが表示されていない場合には、View Port ConnectionsコマンドおよびView Propertiesコマンド(Viewメニュー ) で表示することができます。図 3に、Resource Property Editorを示します。

Page 211: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 13 章 : ECO (設計変更管理 )Resource Property Editorによるリソース・プロパティの変更

210 ■ Introduction to Quartus II Altera Corporation

図 3. Resource Property Editor

回路図またはプロパティ・テーブルのいずれを使用しても、リソースに変更を加えることができます。プロパティ・テーブルを変更した場合、その変更は自動的に回路図に反映されます。

また、Resource Property Editorにより、回路図またはポート接続テーブルのノードを選択することができ、Edit Connection (右ボタンのポップアップ・メニュー ) を選択して接続の新しい信号を指定できます。接続を削除する場合には、ノードを選択して、Remove Connection (右ボタンのポップアップ・メニュー ) を選択します。ポート接続テーブルでは、Create (右ボタンのポップアップ・メニュー ) を選択して新しい出力ポートを作成することができます。

変更後、Check Resource Propertiesコマンド (Editメニュー ) を使用して、リソース上で簡単なデザインルールのチェックができます。Change Manager で変更の要約を表示することもできます。 詳しくは、次項の「Change Managerにおける変更の表示および管理」を参照してください。

リソースの回路図を表示するビューワ

選択されたリソースのプロパティおよび値が表示される変更可能なプロパティ・テーブル

入力および出力ポートを表示するポート接続テーブル

Page 212: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 13 章 : ECO (設計変更管理 )Change Managerにおける変更の表示および管理

Altera Corporation Introduction to Quartus II ■ 211

Change Managerにおける変更の表示および管理

Change Managerウィンドウでは、ユーザによるすべてのECOがリスト表示されます。リストでは各ECOを選択し、その変更の適用または削除を指定できます。また、参照するコメントを追加することもできます。Utility Windows > Change Manager(Viewメニュー ) を選択して、 Change Managerを開くことができます。図 4を参照してください。

図 4. Change Manager

関連情報 参照先

Resource Property Editorを使用したECO アルテラWebサイトのQuartus II Handbook、Volume1のChapter 4「Engineering Change Management」

アルテラWebサイトのQuartus II Handbook、Volume3 の Chapter 11「Design Analysis and EngineeringChange Management with the Chip Editor」

Resource Property Editor Quartus II ヘルプの「Overview: Using the ResourceProperty Editor」および「Making Post-CompilationChanges Introduction」

Page 213: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 13 章 : ECO (設計変更管理 )Change Managerにおける変更の表示および管理

212 ■ Introduction to Quartus II Altera Corporation

Change Managerのログ・ビュ―では、各ECOに対して次の情報が表示されます。

■ Index■ Node Name■ Change Type■ Old Value■ Target Value■ Current Value■ Disk Value■ ECOについて追加したComments

Current Value カラムの緑のシェーディングは、現在値に変更が適用されたことを示します。 Disk Valueカラムのシェーディングは、変更がディスクに問題なく保存されたことを示します。

必要な変更を行った後、Check and Save All Netlist Changes コマンド (Edit メニュー ) を選択し、ネットリストにあるその他の全リソースについて変更内容をチェックします。マウス右ボタンのポップアップ・メニューの以下のコマンドを使用し、リストにある「ECO」を実行できます。

■ Apply Target Value to Preceding and Current Changes■ Restore Old Value to Current and Subsequent Changes■ Delete Current and Subsequent Changes■ Export Preceding and Current Changes to Tcl■ Export All Changes to Tcl

関連情報 参照先

Change Managerを使用したECO アルテラWebサイトのQuartus II Handbook、Volume1のChapter 4「Engineering Change Management」

アルテラWebサイトのQuartus II Handbook、Volume3 の Chapter 11「Design Analysis and EngineeringChange Management with the Chip Editor」

Change Manager Quartus II ヘルプの「Overview: Using the ChangeManager」および「Making Post-Compilation ChangesIntroduction」

Page 214: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 13 章 : ECO (設計変更管理 )ECOによる影響の検証

Altera Corporation Introduction to Quartus II ■ 213

ECOによる影響の検証ECOを行った後、新規POFを作成するためにコンパイラのアセンブラ・モジュールを実行します。新しいネットリストを作成するために EDA Netlist Writerを再度実行するか、またはタイミング向上の変更結果を検証するために Timing AnalyzerまたはSimulatorを再度実行します。Compiler Toolウィンドウを使用するか、コマンド・ラインまたはスクリプトでquartus_asmまたはquartus_eda、およびquartus_tan実行コマンドを使用して、これらのモジュールを個別に実行できます。また、フル・コンパイルを実行しても、ECOは変更されます。

Page 215: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

フォーマル検証

第 14章の内容 :

はじめに 216

EDAベンダのフォーマル検証ツール 217

追加設定の指定 219 14

第 14章

Page 216: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 14 章 : フォーマル検証はじめに

216 ■ Introduction to Quartus II Altera Corporation

はじめにQuartus II開発ソフトウェアでは、ソース・デザイン・ファイルと Quartus II出力ファイルとのロジックの等価性を検証する EDA ベンダのフォーマル検証ツールを使用することができます。図 1に、フォーマル検証フローを示します。

図 1. フォーマル検証フロー

Page 217: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 14 章 : フォーマル検証EDAベンダのフォーマル検証ツール

Altera Corporation Introduction to Quartus II ■ 217

Quartus IIでサポートされるフォーマル検証とは、等価性チェックのことであり、ここでは、ソース・デザインと修正されたデザイン間の機能的な等価性をテスト・ベクタを使用したシミュレーションではなく、数学的な手法を用いて比較します。等価性チェックは、デザインの検証に要する時間を大幅に短縮します。Quartus II により、EDA合成ツールで生成されたゲートレベルのVQMファイル(.vqm)とQuartusIIで生成されるVerilog出力ファイル(.vo)間の論理的等価性を検証することができます。Cadence Incisive Conformalを使用する場合、Quartus IIでは、RTLのVHDLデザイン・ファイル(.vhd)またはVerilog HDLデザイン・ファイル(.v)と、Quartus IIで生成されたVerilog出力ファイルの間の論理的等価性も検証することができます。図2は、フォーマル検証でどのファイル・タイプを比較するかかを示しています。

図 2. フォーマル検証で比較されるファイル・タイプ

EDAベンダのフォーマル検証ツールQuartus IIデザインでEDAベンダのフォーマル検証ツールを使用して、フォーマル検証を行うことができます。 フォーマル検証ツールは、Quartus II開発ソフトウェアが合成およびフィッティングのVQMファイル、ソースVHDLまたはVerilog HDLデザイン・ファイルのロジックを正確に読み取っているかどうか比較します。

表 1に、Quartus IIソフトウェアでサポートされているEDAベンダのフォーマル検証ツールを示します。

Page 218: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 14 章 : フォーマル検証EDAベンダのフォーマル検証ツール

218 ■ Introduction to Quartus II Altera Corporation

Settings ダイアログ (Assignments メニュー ) の EDA Tool Settings の FormalVerification ページで、使用するEDAベンダのフォーマル検証ツールを指定することができます。図 3を参照してください。

図 3. Settingsダイアログの Formal Verificationページ

表 1. Quartus IIがサポートする EDAベンダのフォーマル検証ツール

フォーマル検証ツール名 VQMファイル (.vqm) のサポートRTL Verilog HDLまたは

VHDLデザイン・ファイルのサポート

Cadence社 Incisive Conformal ✔ ✔

Synopsys社 Formality ✔

Page 219: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 14 章 : フォーマル検証追加設定の指定

Altera Corporation Introduction to Quartus II ■ 219

追加設定の指定フォーマル検証ツールを使用してファイルを生成するためにプロジェクトをコンパイルする場合、Quartus IIで以下のオプションをオフにすることを強く推奨します。

■ Settingsダイアログ (Assignmentsメニュー ) のAnalysis & Synthesis SettingsのSynthesis Netlist OptimizationsページにあるPerform gate-level registerretimingオプションをオフにする必要があります。

■ SettingsダイアログのFitter SettingsのPhysical Synthesis OptimizationsページにあるPerform register retimingオプションをオフにする必要があります。

Quartus II では、フォーマル検証ツールが比較ポイントとして使用するロジックのコーンでレジスタに影響を与える可能性があるクリティカル・パス間で移動およびをマージするレジスタをもたらすことがあるので、これらのオプションをオフにすることを推奨します。

関連情報 参照先

Cadence社 Incisive Conformal アルテラWebサイトのQuartus II Handbook、Volume3のChapter 13「Cadence Incisive Conformal Support」

Quartus II ヘルプの「Overview: Using the IncisiveConformal Software with the Quartus II Software」

関連情報 参照先

Cadence社 Incisive Conformalの追加のガイドラインおよびオプション

アルテラWebサイトのQuartus II Handbook、Volume3のChapter 13「Cadence Incisive Conformal Support」

Quartus II ヘルプの「Overview: Using the IncisiveConformal Software with the Quartus II Software」

Page 220: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

システム・レベル・デザイン

第 15章の内容 :

はじめに 222

SOPC Builderを使用したSOPCデザインの作成 223

DSP Builderを使用したDSPデザインの作成 226 15

第 15章

Page 221: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 15 章 : システム・レベル・デザインはじめに

222 ■ Introduction to Quartus II Altera Corporation

はじめにQuartus® II 開発ソフトウェアは、システム・レベル・デザイン・フローに対しSOPCBuiderとDSP Builderをサポートしています。 システム・レベル・デザイン・フローを使用することで、より高い抽象化レベルでSOPC (system-on-a-programable-chip)のアーキテクチャやデザインを短時間で設計および評価が可能になります。

SOPC Builderは、高性能SOPCデザインに必要な作業を大幅に簡略化する自動システム開発ツールです。 このツールを使用することで、SOPCシステム構築と統合段階がQuartus II開発ソフトウェアの内部で完全に自動化されます。 SOPC Builderの使用により、システム・コンポーネントの選択、システムの定義やカスタマイズが可能になり、統合前にシステムの生成と検証が可能です。図 1に、SOPC Builderのデザイン・フローを示します。

図 1. SOPC Builderのデザイン・フロー

アルテラの DSP Builderは、アルゴリズム開発やシミュレーション、検証の機能を持ったMathWorks社のMATLAB/Simulinkシステム・デザイン・ツールとVHDL論理合成やシミュレーション・ツールやQuartus II開発ソフトウェアと組み合わせることで、ハイレベルなアルゴリズムとHDL開発ツールを統合しています。223 ページの図 2に、DSP Builderのデザイン・フローを示します。

Page 222: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 15 章 : システム・レベル・デザインSOPC Builderを使用した SOPCデザインの作成

Altera Corporation Introduction to Quartus II ■ 223

図 2. DSP Builderのデザイン・フロー

SOPC Builderを使用した SOPCデザインの作成

Quartus II開発ソフトウェアに組み込まれているSOPC Builderは、CPU、メモリ・インタフェース、標準周辺機器、ユーザ定義の周辺機器といったコンポーネントで構成する SOPC デザインの作成に統一されたグラフィカルな環境を提供します。SOPC Builderは、システム・モジュールのコンポーネントおよびインタフェースを個々に選択し、カスタマイズすることができます。 SOPC Builderは、これらのコンポーネントを結合、インスタンスして単一システム・モジュールを生成し、コンポーネントの相互接続に必要なバス・ロジックを自動的に生成します。

SOPC Builderのライブラリは、以下のコンポーネントが含まれています。

■ プロセッサ■ IP (Intellectual Property) および周辺機器

Page 223: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 15 章 : システム・レベル・デザインSOPC Builderを使用した SOPCデザインの作成

224 ■ Introduction to Quartus II Altera Corporation

■ メモリ・インタフェース■ 通信用周辺機器■ AvalonTMインタフェースとAMBATM高性能バス (AHB) を含むバスおよびイン

タフェース■ デジタル信号処理 (DSP) コア■ ソフトウェア■ ヘッダ・ファイル■ 汎用Cドライバ■ オペレーティング・システム (OS) カーネル

SOPC Builderを使用して、CPU、メモリ・インタフェース、I/O周辺機器を含むエンベデッド・マイクロプロセッサ・システムを構築できる一方、CPU を含まないデータフロー・システムも生成できます。 また、複数のマスタおよびスレーブを使用したシステム・トポロジを指定できます。 SOPC Builderは、また、カスタム周辺機器としてシステムに接続されているユーザ定義ロジック・ブロックへのインタフェースをインポートまたは提供することができます。

システムの作成

SOPC Builder でシステムを構築するときは、ユーザ定義のモジュール、またはモジュール・プール・コンポーネント・ライブラリから利用可能なモジュールのいずれかを選択できます。

SOPC Builder では、ユーザ定義のロジック・ブロックへのインタフェースをインポートまたは提供できます。 ユーザ定義のロジックをSOPC Builderシステムで使用するには、簡単なPIO接続、システム・モジュール内でのインスタンス、外部ロジックへのバス・インタフェース、ローカルSOPC Builderコンポーネントの発行の4つの方法があります。

SOPC Builderは、Excaliburエンベデッド・プロセッサ・ストライプやNios®IIプロセッサのようなプロセッサ、UART、タイマ、PIO、Avalon Tri-State Bridge、いくつかの単純なメモリ・インタフェース、OS/RTOS カーネルといったダウンロード用のライブラリ・コンポーネント (モジュール) を提供します。 さらに、OpenCore®

Plusハードウェア評価機能をサポートするMegaCore®ファンクションを選択することもできます。

SOPC BuilderのSystem Contentsページを使用して、システムを定義できます。 モジュール・プールからライブラリ・コンポーネントを選択し、モジュール・テーブルに追加したコンポーネントを表示します。

Page 224: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 15 章 : システム・レベル・デザインSOPC Builderを使用した SOPCデザインの作成

Altera Corporation Introduction to Quartus II ■ 225

下記のコンポーネント・オプションを選択するときは、モジュール・テーブルまたは個々のウィザードにある情報を使用します。

■ システム・コンポーネントおよびインタフェース■ マスタおよびスレーブ接続■ システム・アドレス・マップ■ システムIRQの割り当て■ 共有スレーブのアービトレーション・プライオリティ■ 複数のマスタおよびスレーブ・クロック・ドメイン

システムの生成

SOPC Builderの各プロジェクトには、SOPC Builderに入力されたすべての設定、オプション・パラメータを含むシステム記述ファイル (PTFファイル) があります。 さらに、各モジュールには対応する PTF ファイルがあります。 システムの生成時、SOPC Builder はこれらのファイルを使ってソース・コード、ソフトウェア・コンポーネント、システムのシミュレーション・ファイルを生成します。

システム・デザインが完了すると、SOPC BuilderのSystem Generationページ、またはコマンド・ラインを使用してシステムを生成できます。

SOPC Builderは、プロセッサ、周辺機器、メモリ、バス、アービター、IP機能を統合するのに必要なすべてのロジックや、複数のクロック・ドメインにわたる外部システムのメモリやロジックとのインタフェースを自動的に生成し、コンポーネントを結合するHDLソース・コードを作成します。

また、ヘッダ・ファイル、汎用周辺機器、ドライバ、カスタム・ソフトウェア・ライブラリ、OS/リアルタイム・オペレーティング・システム (RTOSカーネル) といったソフトウェア開発キット (SDK) 用ソフトウェア・コンポーネントも作成され、システム生成時に完全なデザイン環境を提供します。

シミュレーションでは、SOPC Builderにより、ModelSimプロジェクト・ファイル、すべてのメモリ・コンポーネントのシミュレーション・データ・ファイル、セットアップ情報を提供するマクロ・ファイル、エイリアス、バス・インタフェース波形の初期設定を含む、Mentor Graphics®社のModelSim®シミュレーション・ディレクトリが作成されます。 また、システム・モジュール、ドライブ・クロック、およびリセット入力をインスタンスするシミュレーション・テスト・ベンチが作成され、シミュレーション・モデルのインスタンスと接続が行われます。

Quartus II 開発ソフトウェアでのシステムのコンパイルに必要なすべてのファイルを設定するTclスクリプトも生成されます。

Page 225: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 15 章 : システム・レベル・デザインDSP Builderを使用した DSPデザインの作成

226 ■ Introduction to Quartus II Altera Corporation

DSP Builderを使用した DSPデザインの作成DSP Builderは、アルゴリズムと親和性のある開発環境で、ハードウェアで実現するDSPデザインの生成を支援し、DSPの設計サイクルを短縮します。 DSP Builderを使用することで、システム、アルゴリズム、ハードウェアの各設計者は、共通の開発プラットフォームを共有できます。 DSP Builder は、アルテラから入手可能なオプションのソフトウェア・パッケージであり、DSP開発キットも含まれています。

DSP Builderでは、SignalTap® IIロジック・アナライザを使用するシステム・レベルのデバッグもサポートされています。 MATLABまたは Simulinkインタフェースを介して、デザインの合成、コンパイル、プログラムのダウンロードを行い、次にデバッグを実行できます。

インスタンス・ファンクション

既存のMATLABファンクションおよびSimulinkブロックをアルテラのDSP Builderブロックおよび OpenCore Plus ハードウェア評価機能をサポートする MegaCoreファンクションに結合することで、システム・レベルのデザインと実装をDSPアルゴリズム開発にリンクできます。

OpenCore Plusハードウェア評価機能をサポートするMegaCoreファンクションをデザインに使用するには、MATLAB/Simulink環境を実行する前に、MegaCoreやOpenCore、またはOpenCore Plusファンクションをダウンロードする必要があります。

関連情報 参照先

SOPC Builder アルテラWebサイトのSOPC Builder Data Sheet

アルテラWebサイトのQuartus II Handbook、Volume1のChapter 2「System Design Using SOPC Builder」

Quartus IIヘルプの「Overview: Using SOPC Builder」

アルテラWebサイトのApplication Note 333 (Developing Peripherals for SOPC Builder)

アルテラWebサイトのAvalon Specification ReferenceManual

Page 226: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 15 章 : システム・レベル・デザインDSP Builderを使用した DSPデザインの作成

Altera Corporation Introduction to Quartus II ■ 227

シミュレーション・ファイルの生成

Simulinkのデザインの検証後、SignalCompilerブロックを使用して、EDAシミュレーション・ツールのデザインをシミュレーションするためのファイルを生成することができます。

SignalCompilerを使用すると、ModelSimでのRTLシミュレーションのためのTclスクリプト、およびSimulink入力をインポートするVerilog HDLまたはVHDLテスト・ベンチ・ファイルが生成されます。 ModelSimでの自動シミュレーションにTclスクリプトを使用したり、Verilog HDLまたはVHDLテスト・ベンチ・ファイルを使用して他のEDAシミュレーション・ツールでシミュレーションを行うことができます。

合成ファイルの生成

DSP Builderは、自動と手動の 2つの合成およびコンパイル・フローを提供します。SignalCompilerで生成されたTclスクリプトを使用して、Quartus II開発ソフトウェア、Mentor Graphics社のLeonardoSpectrumソフトウェア、またはSynplicity社のSynplifyソフトウェアでデザインを合成することができます。 DSP Builderデザインがトップレベル・デザインである場合、自動合成フロー、手動合成フローのいずれも使用できます。 DSP Builderデザインがトップレベル・デザインでない場合は、手動合成フローを使用する必要があります。

MATLAB/Simulinkデザイン環境内から合成および編集のフロー全体を制御するときは、自動フローを使用します。 SignalCompilerブロックは、VHDLデザイン・ファイルおよびTclスクリプトの作成や、Quartus II、LeonardoSpectrumまたはSynplifyソフトウェアにおける合成、Quartus II 開発ソフトウェアにおけるデザインのコンパイルを実行します。また、オプションでDSP開発ボードにデザインをダウンロードすることもできます。 ユーザは、Simulinkでのデザインに使用する合成ツールを指定できます。

手動フローでは、SignalCompilerでVHDLデザイン・ファイルとTclスクリプトが生成されると、EDA合成ツールまたはQuartus II開発ソフトウェアで手動の合成を行うことができ、ユーザ独自の合成、またはコンパイル設定の指定が可能になります。出力ファイルが生成されると、SignalCompilerにより、各アルテラのDSP BuilderブロックがVHDLライブラリにマップされます。 MegaCoreファンクションは、ブラック・ボックスとして扱われます。

関連情報 参照先

DSP Builder アルテラWebサイトのDSP Builder User Guide

Page 227: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

ソフトウェア開発

第 16章の内容 :

はじめに 230

Quartus II 開発ソフトウェアにおけるSoftware Builderの使い方 230

ソフトウェア構築設定の指定 231

ソフトウェア出力ファイルの生成 231

第 16章

16

Page 228: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 16 章 : ソフトウェア開発はじめに

230 ■ Introduction to Quartus II Altera Corporation

はじめにQuartus® II Software Builder は、ソフトウェア・ソース・ファイルをフラッシュ・プログラミング・ファイルやExcaliburTMデバイスのコンフィギュレーションを行うパッシブ・プログラミング・ファイルに変換したり、Excalibur デバイスのエンベデッド・プロセッサ・ストライプの用メモリ初期設定データを含むファイルに変換する統合プログラミング・ツールです。 システム・レベル・デザイン・ツールのSOPC BuilderおよびDSP Builderで作成したデザインを含むExcaliburデザインのソフトウェア・ソース・ファイルをSoftware Builderを使用して作成します。

Quartus II 開発ソフトウェアにおけるSoftware Builderの使い方

Software Builderは、ADS標準ツールまたはGNUPro for ARM®ソフトウェア・ツールセットを使用して、Quartus IIテキスト・エディタや他のアセンブラ、C/C++言語開発ツールで作成されたソフトウェア・ソース・ファイルを作成します。 次のソフトウェア・ソース・ファイルを作成するには、Software Builderを使用します。

■ アセンブラ・ファイル (.s, .asm)■ C/C++インクルード・ファイル (.h) ■ C言語ソース・ファイル (.c)■ C++ソース・ファイル (.cpp)■ ライブラリ・ファイル (.a)

Software Builderは、ソフトウェア・ソース・ファイルの構築を最小限の操作で実行でき、特定デザインをカスタマイズ操作可能にします。 ソフトウェア構築の設定を指定すると、Start Software Build コマンド (Processing メニュー ) を使用してSoftware Builderを実行することができます。

また、ソフトウェアの構築中または構築後にコマンドライン・コマンドを実行して、Software Builderを使ってQuartus IIからExcalburデバイスのプログラミングや作成も行うこともできます。

Page 229: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 16 章 : ソフトウェア開発ソフトウェア構築設定の指定

Altera Corporation Introduction to Quartus II ■ 231

ソフトウェア構築設定の指定ソフトウェア構築を実行する前に、Settingsダイアログ (Assignmentsメニュー ) のSoftware Build Settingsページを使用して、ソフトウェア構築の設定を指定します。

Settingsダイアログを使用して、次の設定を指定できます。

■ プロジェクトのソフトウェア構築の設定名、ツールセット・ディレクトリ、アーキテクチャおよびソフトウェア・ツールセット、バイト順、出力ファイル名、カスタム・ビルドおよびポスト・ビルドのコマンドライン・コマンド、プログラム・ファイル生成オプション

■ C/C++コンパイラ・オプション: 最適化レベル、プリプロセッサ定義およびインクルード・ディレクトリ、コマンドライン・コマンド

■ アセンブラ・オプション: プリプロセッサ定義、追加インクルード・ディレクトリ、コマンドライン・コマンド

■ リンカ・オプション: オブジェクト・ファイル、ライブラリ・ファイル、ライブラリ・ディレクトリ、リンク・タイプ、コマンドライン・コマンド

ソフトウェア出力ファイルの生成Quartus II 開発ソフトウェアでソフトウェア構築を実行することで、デザインを処理し、メモリ初期設定データ、パッシブ・プログラミング・ファイル、フラッシュ・プログラミング・ファイルを含むファイルを生成できます。 また、makeprogfileユーティリティ (Quartus II 開発ソフトウェアでのソフトウェア構築の設定にも使用) およびスタンドアロンMegaWizard® Plug-In Managerを使用して、Quartus開発IIソフトウェアの外部にパッシブ・プログラミング・ファイルおよびフラッシュ・プログラミング・ファイルを生成できます。

☞ quartus_swb実行コマンドの使い方

quartus_swb実行コマンドを使用して、コマンド・プロンプトまたはスクリプトでSoftware Builderを個別に実行することもできます。

quartus_swb実行コマンドのヘルプを参照する場合は、コマンド・プロンプトで次のいずれかを入力します。

quartus_swb -hquartus_swb --helpquartus_swb --help=<トピック名>

Page 230: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 16 章 : ソフトウェア開発ソフトウェア出力ファイルの生成

232 ■ Introduction to Quartus II Altera Corporation

makeprogfile ユーティリティの使用についての詳細は、コマンド・プロンプトでmakeprogfile -h と入力します。

Software Builderを使用してフラッシュ・プログラミング・ファイルを生成するか、コンパイラまたはSoftware Builderを使用してパッシブ・プログラミング・ファイルを生成するたびに、Software Builderは自動的にシミュレータ初期設定ファイルを作成します。 シミュレータの初期設定ファイルにより、Excaliburエンベデッド・プロセッサ・ストライプのメモリ領域の各アドレスに初期設定データが指定されます。表 1に、Software Builderで生成されたシミュレータ初期設定ファイルを示します。

☞ スタンドアロン MegaWizard Plug-In Managerの使い方

コマンド・プロンプトで以下のコマンドを入力して、Quartus II開発ソフトウェアの外部からMegaWizardPlug-In Managerを使用できます。

qmegawiz

表 1. シミュレータ初期設定ファイル

ファイル名 ファイル・コンテンツ

memory.regs レジスタ初期設定データ

memory.sram0 SRAM0 初期設定データ

memory.sram1 SRAM1 初期設定データ

memory.dpram0 DPRAM0 初期設定データ

memory.dpram1 DPRAM1 初期設定データ

Page 231: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 16 章 : ソフトウェア開発ソフトウェア出力ファイルの生成

Altera Corporation Introduction to Quartus II ■ 233

フラッシュ・プログラミング・ファイルの生成

フラッシュ・プログラミング・ファイルは、Excaliburデバイスがコンフィギュレーションおよびメモリ初期設定データをロードするフラッシュ・メモリをプログラムする16進 (Intelフォーマット) ファイル (.hex) です。 Software Builderでフラッシュ・プログラミング・ファイルを作成する際の基本的な流れは次の通りです。

1. ソフトウェア・ソース・ファイルを作成し、プロジェクトに追加します。

2. ARM-based Excalibur MegaWizard Plug-Inを実行し、システム・ビルド記述子ファイル (.sbd) を生成します。

3. Excaliburデバイスのプログラマブル・ロジック・デバイス (PLD) の部分のコンフィギュレーション・データを、フラッシュ・プログラミング・ファイルに組み込む場合は、デザインをコンパイルしてスレーブ・バイナリ・イメージ・ファイル (.sbi) を生成します。

4. ツールセット・ディレクトリおよびソフトウェア構築の設定を指定します。 フラッシュ・プログラミング・ファイルを生成するには、出力ファイルのタイプおよびファイル名を指定してFlash memory configurationをオンにします。スレーブ・バイナリ・イメージ・ファイルを使用している場合は、Settingsダイアログ (Assignmentsメニュー ) のSoftware Build Settingsページで、オプションのSlave Binary Image Fileを指定します。

5. ソフトウェアの構築を開始します。

図 1は、Software Builderを使用したフラッシュ・プログラミング・ファイル生成のフローです。

図 1. フラッシュ・プログラミング・ファイル・フロー

Page 232: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 16 章 : ソフトウェア開発ソフトウェア出力ファイルの生成

234 ■ Introduction to Quartus II Altera Corporation

フラッシュ・プログラミング・ファイルを生成するには、Software Builderで次のステップを実行します。

1. アセンブラ、C/C++ コンパイラ、リンカ、およびコード・コンバータで、ソフトウェアをExcalibur デバイスのExcaliburエンベデッド・プロセッサ・ストライプ・メモリ初期設定データを含むHEX ファイルに変換します。

2. HEX ファイル、システム・ビルド記述子ファイル、およびスレーブ・バイナリ・イメージ・ファイルから、ブート・データ・オブジェクト・ファイルが生成されます。

3. リンカによりブート・データ・ファイルがバイナリ・ブートローダ・ファイルにリンクされ、実行およびリンク可能形式 (Executive and Linkable Format)ファイル (.elf) が作成されます。

4. コード・コンバータにより、実行およびリンク可能形式ファイルが、<プロジェクト名>_flash.hexという名前のフラッシュ・プログラミング・ファイルに変換されます。

その後、exc_flash_programmerユーティリティを使用して、拡張バス・インタフェース・ゼロ (EBI0) 経由でExcaliburデバイスのフラッシュ・メモリにフラッシュ・プログラミング・ファイルの情報をプログラムできます。

パッシブ・プログラミング・ファイルの生成

パッシブ・プログラミング・ファイルは、パッシブ・パラレル非同期 (PPA)、パッシブ・パラレル同期 (PPS)、またはパッシブ・シリアル (PS) のコンフィギュレーション・スキームを使用するExcaliburデバイスのコンフィギュレーションに使用されます。 Software Buider、makeprogfileユーティリティ、またはコンパイラを使用して、次のパッシブ・プログラミング・ファイルを生成します。

■ 16進 (Intelフォーマット) 出力ファイル (.hexout)■ プログラマ・オブジェクト・ファイル (.pof)■ ロウ・バイナリ・ファイル (.rbf)■ SRAMオブジェクト・ファイル (.sof)■ 表形式テキスト・ファイル (.ttf)

Page 233: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 16 章 : ソフトウェア開発ソフトウェア出力ファイルの生成

Altera Corporation Introduction to Quartus II ■ 235

Software Builderでパッシブ・プログラミング・ファイルを作成する際の基本的な流れは、次の通りです。

1. ソフトウェア・ソース・ファイルを作成し、プロジェクトに追加します。

2. ARM-base Excalibur MegaWizard Plug-Inを実行し、システム・ビルド記述子ファイルを生成します。

3. デザインをコンパイルし、プログラマブル・ロジックの部分SRAMオブジェクト・ファイル (.psof) を生成します。

4. ツールセット・ディレクトリおよびソフトウェア構築の設定を指定します。パッシブ・プログラミング・ファイルを生成するには、出力ファイルのタイプおよびファイル名を指定し、Passive Configurationをオンにして、Settings ダイアログ (Assignmentsメニュー ) のSoftware Build Settingsページで、PSOFを指定します。

5. Software Builderを起動します。

図 2は、Software Builderを使用したパッシブ・プログラミング・ファイル生成のフローです。

図 2. パッシブ・プログラミング・ファイル・フロー

パッシブ・プログラミング・ファイルを生成するには、Software Builder で次のステップを実行します。

Page 234: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 16 章 : ソフトウェア開発ソフトウェア出力ファイルの生成

236 ■ Introduction to Quartus II Altera Corporation

1. アセンブラ、C/C++ コンパイラ、リンカ、およびコード・コンバータで、ソフトウェア・ソース・ファイルをExcaliburデバイスのExcaliburエンベデッド・プロセッサ・ストライプ・メモリ初期設定データを含むHEXファイルに変換します。

2. makeprogfileユーティリティによりHEXファイル、システム・ビルド記述子ファイル、PSOFが処理され、複数のパッシブ・プログラミング・ファイルが作成されます。

メモリ初期設定データ・ファイルの生成

バイナリ・ファイル (.bin)、HEXファイル、ライブラリ・ファイル (.a) には、Excaliburエンベデッド・プロセッサ・ストライプのメモリ初期設定データが含まれます。Software BuilderでBINファイル、HEXファイル、ライブラリ・ファイルを作成する際の基本的な流れは次の通りです。

1. ソフトウェア・ソース・ファイルを作成し、プロジェクトに追加します。

2. ツールセット・ディレクトリおよびソフトウェア構築の設定を指定します。Settingsダイアログ (Assignmentsメニュー ) のSoftware Build Settingsページを使用して、出力ファイルのタイプおよびファイル名を指定します。 出力ファイル・フォーマットのリストでHEXファイルを選択し、フラッシュ・プログラミング・ファイルまたはパッシブ・プログラミング・ファイルを生成しない場合は、Programming file generationの下のNoneを選択します。

3. ソフトウェアの構築を開始します。

図 3は、Software Builderを使用したメモリ初期設定データ・ファイル生成のフローです。

Page 235: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 16 章 : ソフトウェア開発ソフトウェア出力ファイルの生成

Altera Corporation Introduction to Quartus II ■ 237

図 3. メモリ初期設定データ・ファイル・フロー

メモリ初期設定ファイルを生成するには、Software Builderで次のステップを実行します。

1. アセンブラおよび C/C++ コンパイラで、デザインのソフトウェア・ソース・ファイルから中間オブジェクト・ファイルを生成します。

2. BINファイルまたはHEXファイルを生成している場合、リンカはオブジェクト・ファイルをリンクし、中間ELFファイルを生成します。また、コード・コンバータはELFファイルをBINファイルまたはHEXファイルに変換します。

3. ライブラリ・ファイルを生成している場合、Software Builder は、SoftwareBuilder アーカイバを使用してオブジェクト・ファイルをライブラリ・ファイルの中に処理します。

関連情報 参照先

ソフトウェア構築の実行 Quartus II ヘルプの「Overview: Using the SoftwareBuilder」

アルテラWebサイトの Application Note 299 (SystemDevelopment Tools for Excalibur Devices)

パッシブ・プログラミング・ファイル、POF および SOFのオプション・プログラミング・ファイルの生成

Quartus IIヘルプの「Generating Passive ProgrammingFiles」

BINファイル、HEXファイル、ライブラリ・ファイルの生成、およびデバッグ情報の生成

Quartus II ヘルプの「Generating Binary Files,Hexadecimal (Intel-Format) Files, Library Files &

Motorola S-Record Files」

Quartus II ヘルプの「Overview: Checking SoftwareSource Files and Output Files」

Page 236: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

インストール、ライセンスおよびテクニカル・サポート

第 17章の内容 :

Quartus II 開発ソフトウェアのインストール 240

Quartus II 開発ソフトウェアのライセンス 241

テクニカル・サポート 243

第 17章

17

Page 237: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 17 章 : インストール、ライセンス およびテクニカル・サポートQuartus II 開発ソフトウェアのインストール

240 ■ Introduction to Quartus II Altera Corporation

Quartus II 開発ソフトウェアのインストールQuartus® II開発ソフトウェアは、次のプラットフォームにインストールできます。

■ 以下のOSをサポートする400MHz以上のPentium搭載のPC:

– Microsoft Windows NT バージョン 4.0 (Service Pack 4以降 )– Microsoft Windows 2000– Microsoft Windows XP

■ Red Hat Linux バージョン7.3または8.0、Red Hat Linux Enterprise3をサポートする400MHz以上のPentium IIIまたはPentium 4搭載のPC

■ Solaris バージョン8または9をサポートするSun Ultraワークステーション

■ HP-UX バージョン11.0 ACE (1999年11月、またはそれ以降にリリース) をサポートするHP 9000 Series 700/800ワークステーション

関連情報 参照先

システム要件およびインストール手順 アルテラ Web サイトの Quartus II Installation &Licensing for PCsマニュアル

アルテラ Web サイトの Quartus II Installation &Licensing for UNIX and Linux Workstationsマニュアル

ディスク・スペースおよびメモリの仕様について

Quartus II readme.txtファイル

新機能、デバイス・サポート、EDAインタフェース・サポートに関する最新情報

アルテラ Web サイトの Quartus II Software ReleaseNotes

Page 238: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 17 章 : インストール、ライセンス およびテクニカル・サポートQuartus II 開発ソフトウェアのライセンス

Altera Corporation Introduction to Quartus II ■ 241

Quartus II 開発ソフトウェアのライセンスアルテラのソフトウェアを使用するには、アルテラのライセンスを入手し、セット・アップする必要があります。 また、アルテラのサブスクリプションを購入すると、次のソフトウェアを使用できます。

■ アルテラQuartus II 開発ソフトウェア全機能■ Mentor Graphics®社 ModelSim®-Alteraソフトウェア

アルテラが提供する数種類のサブスクリプション・ライセンスを表 1に示します。

表 1. アルテラのサブスクリプション・ライセンス

ライセンス名 説明

FIXEDPC USBソフトウェア・ガードまたはパラレル・ポート・ソフトウェア・ガード (T-guardまたは“ドングル”) を装着して使用するスタンドアロンPC用ライセンス

FLOATPC PCまたはUNIXマシンをライセンス・サーバとして使用するPCユーザ用のフローティング・ネットワーク・ライセンス

FLOATNET PCまたは Solaris、HP-UXワークステーションをライセンス・サーバとして利用するPC、Solaris、HP-UXユーザ用のフローティング・ネットワーク・ライセンス

FLOATLNX PC、UNIX、またはLinuxマシンをライセンス・サーバとして使用するRed Hat Linuxが動作しているPCユーザ用のフローティング・ネットワーク・ライセンス

Quartus II Web Edition 特定のデバイスをサポートしている無償のPC版Quartus II開発ソフトウェア。 Quartus II Web Editionは、アルテラWebサイト (www.altera.co.jp) からダウンロードできます。

Page 239: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 17 章 : インストール、ライセンス およびテクニカル・サポートQuartus II 開発ソフトウェアのライセンス

242 ■ Introduction to Quartus II Altera Corporation

開発キットの購入者には、開発キット用のQuartus II開発ソフトウェアと、そのソフトウェアに対するライセンスの取得手順を提供します。

ソフトウェアのライセンスを発行する基本的な流れは、以下の通りです。

1. Quartus II 開発ソフトウェアの起動時に、ライセンス・ファイルlicense.datが検出されない場合、以下のメッセージが表示されます。

– Enable 30-day evaluation period with no license file (no programmingfile support) — このオプションにより、Quartus II 開発ソフトウェアをプログラミング・ファイルのサポートなしで 30日間評価することができます。 30日の評価期間が過ぎた場合は、アルテラのWebサイトwww.altera.co.jp/licensing のライセンスのページで、次の手順に従って有効なライセンスを入手してください。

– Perform automatic web license retrieval — このオプションを選択すると、アルテラのWebサイトから有効なライセンス・ファイルを自動的に要求します。ノードロック(FIXEDPC)ライセンスを使用していて、Quartus II開発ソフトウェアでWebサイトから正常にライセンス・ファイルを入手できる場合は、この手順の残りの操作を省略することができます。ネットワーク(マルチユーザ)ライセンスを使用している場合、または Quartus II 開発ソフトウェアでライセンス・ファイルを入手できない場合は、ライセンスの取得手順が示されます。

– Specify valid license file — 有効なライセンス・ファイルを持っているものの、ライセンス・ファイルの場所をまだ指定していない場合、このオプションを選択すると、Optionsダイアログ(Toolsメニュー)のLicenseSetupメニューが表示されます。有効なライセンス・ファイルを指定するかLM_LICENSE_FILE変数を使用するかを選択できます。Windows NT、Windows 2000、Windows XPではシステム・コントロール・パネルでライセンス・ファイルまたはLM_LICENSE_FILE変数を指定することができ、UNIXおよびLinuxワークステーションでは.cshrc ファイルに指定することもできます。このオプションを選択した場合は、手順の残りの操作を省略することができます。

2. アルテラWebサイトのライセンスのセクションで新しいライセンス・ファイルを要求する場合は、適切なライセンス・タイプのリンクを選択してください。241ページの表 1を参照してください。

3. 必要な情報を入力し送信します。

4. 電子メールでライセンス・ファイルを入手したら、システムのディレクトリに保存します。

5. 必要に応じて、入手したライセンス・ファイルを修正します。

Page 240: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 17 章 : インストール、ライセンス およびテクニカル・サポートテクニカル・サポート

Altera Corporation Introduction to Quartus II ■ 243

6. システムのFLEXlmライセンス・マネージャ・サーバのセット・アップとコンフィギュレーションを行います。

テクニカル・サポートテクニカル・サポートを利用するには、Web サイトにある mySupport の利用とAltera.com アカウントへの登録が最も簡単です。 Quartus II 開発ソフトウェア製品の購入時にユーザ登録はされていますが、mySupportでサービス・リクエストの表示および依頼を行うには、Altera.com アカウントに登録する必要があります。Altera.comアカウントはmySupportの利用時のみ必須ですが、Altera.comアカウントを取得することで、ダウンロード・センタ、ライセンス・センタ、Altera TechnicalTrainingオンライン・クラスの登録、Buy On-Line-Altera eStoreなど、Altera.comの豊富な機能をより簡単に利用することができます。

Altera.comアカウントのユーザ名およびパスワードを登録するには、次のステップに従います。

1. WebサイトにあるmySupportに移動します。

✔ Quartus II開発ソフトウェアの実行時にWebブラウザを起動してmySupportに接続するには、Altera on the Web > Quartus II Home Page (Helpメニュー ) を選択します。

または

✔ ブラウザ上で次のmySupportのリンクを指定します。www.altera.co.jp/mysupport

関連情報 参照先

Quartus II開発ソフトウェアのライセンス、ライセンス・ファイルの変更、ライセンス・ファイルの指定に関する詳細情報

アルテラWebサイトのQuartus II Installation & Licensingfor PCsマニュアル

アルテラWebサイトのQuartus II Installation & Licensing for UNIX and Linux Workstationsマニュアル

Quartus IIライセンスについての一般情報 Quartus II ヘルプの「Overview: Obtaining a LicenseFile」および「Specifying a License File」

アルテラのソフトウェア・ライセンス アルテラ Web サイトの Application Note 340 (AlteraSoftware Licensing)

Page 241: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 17 章 : インストール、ライセンス およびテクニカル・サポートテクニカル・サポート

244 ■ Introduction to Quartus II Altera Corporation

2. mySupportの指示に従い、Altera.comアカウントの登録を行います。

現在、アルテラ・サブスクリプション・ユーザでない方も、Altera.comアカウントに登録できます。

その他のテクニカル・サポート・リソースについての詳細は、表 2を参照してください。

表 2. Quartus IIテクニカル・サポート・リソース

リソース 説明

アルテラWebサイト www.altera.co.jp

アルテラWebサイトでは、アルテラおよびその全製品についての情報を提供しています。

サポート・センター www.altera.co.jp/support

アルテラWebサイトのサポート・センターは、mySupportへのアクセスとAltera Find Answersを提供しています。 さらに、ソフトウェアとデバイス情報、デザインに組み込み可能なデザイン・サンプルも提供しています。

mySupport www.altera.co.jp/mysupport、または Quartus II 開発ソフトウェアにあるAltera on the Web > Quartus II Home Page (Helpメニュー) を選択します。

mySupportでは、テクニカル・サポート・サービス・リクエストの依頼、表示、および更新ができます。

Altera Find Answers www.altera.com/answers

Altera Find Answersは、自然言語処理 (NLP:natural language processing)テクノロジを使用して質問の意味および内容を解析し、回答を提供します。 つまり、キーワードに対応しドキュメントのリストを返答する簡単なサーチ・エンジンと異なり、Altera Find Answersは現実的な回答を提供します。

電話番号 日本アルテラ株式会社 03-3340-9480株式会社アルティマ 045-476-2155 06-6307-7670株式会社PALTEK 045-477-2009 06-6369-4070E-mail (日本アルテラ) [email protected]

Page 242: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

資料およびその他のリソース

第 18章の内容 :

オンライン・ヘルプの参照 246

Quartus IIオンライン・チュートリアル 247

その他の Quartus II 開発 ソフトウェアの資料 248

その他の資料 249

第 18章

18

Page 243: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 18 章 : 資料およびその他のリソースオンライン・ヘルプの参照

246 ■ Introduction to Quartus II Altera Corporation

オンライン・ヘルプの参照Quartus® II開発ソフトウェアには、Quartus II 開発ソフトウェアに関する総合的な資料、およびQuartus II 開発ソフトウェアからの特定のメッセージについて詳しい情報を提供するプラットフォーム独立型のヘルプ・システムが含まれています。 次のいずれかの方法で、ヘルプを表示できます。

ヘルプ・トピックのリストを検索するには、 Index (Help メニュー ) を選択し、Index (目次) タブを使用して検索を実行します。

ヘルプ・システムの全文を検索するには、 Search (Helpメニュー) を選択し、Search(検索) タブを使用して検索を実行します。

ヘルプ・トピック・カテゴリの概略を検索するには、 Contents (Help メニュー ) を選択し、Contents内容を表示します。

メッセージのヘルプを表示するには、 ヘルプ表示したいメッセージを選択し、Help(右ボタンのポップアップ・メニュー ) を選択します。 Messages (Helpメニュー ) を選択し、全メッセージのリストをスクロールして検索することもできます。

メニュー・コマンドまたはダイアログ・ボックスのヘルプを参照するには、 ハ イライトされたメニュー・コマンドまたはアクティブなダイアログから F1キー押し、その項目に関するHelpを表示できます。

用語の定義を検索するには、 Glossary (Helpメニュー ) を選択し、Glossaryリストを表示します。

☞ ヘルプ・トピックの使い方

Contents タブからヘルプ・トピックを印刷するには、Help フォルダまたは印刷する個々のヘルプ・トピックを選択し、Print (印刷) (右ボタンのポップアップ・メニュー ) をクリックするか、ツールバーのPrint (印刷) ボタンをクリックします。 印刷するHelpフォルダを選択した場合、フォルダ内のすべてのトピックから印刷するトピックを選択することができます。 また、Printコマンド、またはPrint (印刷) ボタンを使用して、表示されている個々のヘルプ・トピックを印刷することもできます。

開いているQuartus II ヘルプ・トピック内でキーワード検索を行うには、[Ctrl] + [F] キーを押してFind (検索) ダイアログを開き、検索テキストを入力してFind Next (次を検索) をクリックします。

Page 244: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 18 章 : 資料およびその他のリソースQuartus IIオンライン・チュートリアル

Altera Corporation Introduction to Quartus II ■ 247

Quartus IIオンライン・チュートリアルオンライン・チュートリアルでは、Quartus II 開発ソフトウェアの機能について説明しています。 チュートリアルでは、ユーザ独自のロジック・デザインをすばやく簡単に作成する方法を解説しています。 ベーシック・チュートリアル・モジュールおよびアドバンス・チュートリアル・モジュールのモジュラー・デザインにより、Quartus II 開発ソフトウェアについて学習する範囲を選択できます。

■ ベーシック・チュートリアル・モジュールでは、fir_filterと呼ばれるFIR (FiniteImpulse Response) フィルタ・デザインのサンプルの作成、タイミング解析の実行、シミュレーション、およびプログラムに必要なステップを段階的に学びます。

■ オプションのチュートリアル・モジュールは、 MAX+PLUS® IIソフトウェアからの移行、LogicLockTM機能の使用、およびStratix® デバイスの機能の使用について重点をおいています。 オプションのチュートリアル・モジュールを始めるために、ベーシック・チュートリアルを完了する必要はありません。

Quartus II開発ソフトウェアのインストール完了後に Quartus IIチュートリアルを起動するには、

✔ Tutorial (Helpメニュー ) を選択します。

チュートリアルの起動後、Quartus II ウィンドウのサイズを変更し、TutorialウィンドウとQuartus II 開発ソフトウェアとを同時に表示できるようにします。

関連情報 参照先

Quartus IIヘルプ Quartus IIヘルプの「Using Quartus II Help Effectively」および「Help Menu Commands」

Quartus II Installation & Licensing for PCs マニュアルの「Using Quartus II Help」、および Quartus II Installation &Licensing for UNIX and Linux Workstationsマニュアル

Page 245: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 18 章 : 資料およびその他のリソースその他の Quartus II 開発 ソフトウェアの資料

248 ■ Introduction to Quartus II Altera Corporation

その他の Quartus II 開発 ソフトウェアの資料表 1に、Quartus II開発ソフトウェアのその他の資料を示します。

☞ Quartus IIチュートリアルの使い方

ベーシック・チュートリアルまたは LogicLock チュートリアルを最後まで完了するには、Cyclone™EP1C6デバイスのサポートをインストールする必要があります。 さらに、オプションのMAX PLUS II変換およびStratixチュートリアル・モジュールを完了するには、MAX® EPM570デバイスとStratix EP1S25デバイスのサポートをインストールする必要があります。

チュートリアルは、オンラインで表示されるように設計されています。 ただし、複数のチュートリアルを印刷する場合は、各モジュールの起動時に表示されるPrinting Optionsボタンをクリックし、該当する印刷可能バージョンのリンクをクリックします。

表 1. その他の Quartus II関連資料

資料名 説明 掲載場所

Quartus II Software Release Notes

新機能、デバイス・サポート、EDAインタフェース・サポートに関する最新情報、既知の問題とその対応措置を提供します。

アルテラのWebサイト

Quartus II Installation & Licensing

for PCsマニュアルPC のソフトウェア要求、インストール、ライセンスに関する詳細情報を提供します。

Quartus II サブスクリプション・パッケージおよびアルテラのWebサイト

Quartus II Installation & Licensingfor UNIX and Linux Workstations

マニュアル

UNIX および Linux ワークステーションのソフトウェア要求、インストール、ライセンスに関する詳細情報を提供します。

Quartus II サブスクリプション・パッケージおよびアルテラのWebサイト

Quartus II readme.txtファイル メモリ、ディスク・スペース、システム要求に関する情報を提供します。

Quartus IIと共にインストールされたQuartus IIソフトウェアCD-ROM

Quartus II Software Quick StartGuide

プロジェクトのセット・アップ、タイミング要求値の設定、ターゲット・デバイスのプロジェクトをコンパイルする方法について説明します。

Quartus II サブスクリプション・パッケージおよびアルテラのWebサイト

Page 246: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

第 18 章 : 資料およびその他のリソースその他の資料

Altera Corporation Introduction to Quartus II ■ 249

その他の資料アルテラのWebサイト (www.altera.co.jp) の資料セクションでは、Quartus II 開発ソフトウェアに関連した多くの資料を提供しています。 これらの資料の多くは、Altera Documentation Library CD、またはLiterature Servicesからも入手可能です。製本された資料をShopAlteraのWebサイト (www.shopaltera.com) で購入することもできます。

アルテラでは、次のトピックに関連する資料を提供しています。

■ デザイン・フローに使用するQuartus IIの機能とガイドライン■ アルテラ・デバイスの機能、ファンクション、構造、仕様、コンフィギュレー

ション、およびピン配置■ デザイン・ソリューションおよびデザイン手法■ デバイス機能の実装■ アルテラ・プログラミング・ハードウェアの機能、使用、およびインストール■ EDAツールを利用したQuartus II 開発ソフトウェアの使用■ その他のアルテラ・ソフトウェア・ツールの使用■ IP MegaCore®ファンクションおよびアルテラのメガファンクションの実装■ デザインの最適化またはパフォーマンスの向上■ 合成、シミュレーション、および検証のためのガイドライン■ 製品のアップデートおよびその通知

アルテラのWebサイトから入手可能な資料は、アルテラ製品と機能についての最新情報であり、製品のリリース後でも頻繁に更新されています。 アルテラのツールとデバイスの最新機能についてより多くの情報を提供し、ユーザから要望のあった追加情報を提供するため、順次新しい資料を追加しています。

☞ Altera Find Answersを使用した資料の検索

アルテラ Web サイトの Support Center セクション www.altera.com/kdb から利用可能な Altera FindAnswersを使用して、アルテラのWebサイトに掲載されているすべての資料を検索できます。 Altera FindAnswersは、自然言語処理 (NLP:natural language processing) テクノロジを使用して質問の意味および内容を解析し、回答を提供します。 つまり、キーワードに対応しドキュメントのリストを返答する簡単なサーチ・エンジンと異なり、Altera Find Answersは現実的な回答を提供します。

Page 247: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

Altera Corporation Introduction to Quartus II ■ 251

数字

16進 (Intelフォーマット ) 出力ファイル (.hexout) 175、180、182、234

16進 (Intelフォーマット ) ファイル (.hex) 184、233

A

ADS標準ツールのソフトウェア・ツールセット 230

AHDL 45AHDLインクルード・ファイル (.inc) 42Altera Find Answers 244Altera on the Webコマンド 243Altera.comアカウント 244AMBA高性能バス (AHB) 224AMPP 47Analysis & Elaboration 64、76Analysis & Synthesis 4

EDAツールの使用 69Incremental Synthesis 80VHDLおよび Verilog HDLサポート 65デザイン・フロー 64ネットリスト最適化 71論理合成機能 65

Analysis & Synthesis Settingsページ 72、159APU 176ARM-based Excalibur MegaWizard

Plug-In 233、235Assign SignalProbe Pinsダイアログ 198Assignment Editorコマンド 91assignmentsロケーション 91

Avalonインタフェース 224

B

Back-Annotate Assignments コマンド 111、155

Board-Levelページ 147ByteBlaster IIダウンロード・ケーブル 176、

191

ByteBlasterMVダウンロード・ケーブル 176、191

C

C++ソース・ファイル (.cpp) 230Check Resource Propertiesコマンド 210Chip Editor 90、203、207、208Convert MAX+PLUS II Projectコマンド 40Convert Programming Filesコマンド 175、

180Copy Projectコマンド 33Create/Update > Create Jam, SVF, or ISC File

コマンド 175、180Create/Update > Create/Update IPS File

コマンド 175、180Create/Updateコマンド 43、44Createコマンド 210Customizeダイアログ 6、7C言語ソース・ファイル (.c) 230

D

Design Assistantページ 75documentation conventions ixDSE 97、163dse.tcl Tclスクリプト 97、163DSP Builder 222、226

SignalCompiler 227インスタンス・ファンクション 226合成ファイルの生成 227シミュレーション・ファイルの生成 227デザイン・フロー 223デザインの作成 226他の EDAツールにおける使用 227

E

early timing estimate, performing 140Early Timing Estimateページ 140ECO 206検証 213作成 209

索引

Page 248: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

索引

252 ■ Introduction to Quartus II Altera Corporation

ECOのデザイン •フロー 206EDA Netlist Writer 4、119、121、147EDA Tool Settingsページ 12、69、218EDAインタフェース 9、23EDAツール

LogicLockの使用 115機能シミュレーション 123合成 69合成ツールの実行 70最小タイミング解析 147サポートされたツール 11、69、119、147、

218シミュレーション 119設定の指定 12、59、69、120、218タイミング解析 147タイミング・シミュレーション 123、124フォーマル検証 217

EDIF入力ファイル (.edf) 41EDIFネットリスト・ファイル (.edf) 64、69Edit Connectionコマンド 210Equationsウィンドウ 154exc_flash_programmerユーティリティ 234Export Assignmentsダイアログ 113Export Databaseコマンド 39Exportコマンド 57

F

Field View コマンド 153Filesページ 33Fitter Settingsページ 92

G

GNUPro for ARMソフトウェア・ツールセット 230

I

I/Oピン・ステート・ファイル (.ips) 175、180、181

Import Assignmentsコマンド 60、113Import Databaseコマンド 39Incremental Synthesis 80IP (Intellectual Property) ライセンス 47

ISP CLAMP State Editorダイアログ 175、180、181

J

Jam Byte-Code Files (.jbc)Jam STAPLバイト・コード・フォーマット・

ファイル (.jbc); Jamバイト・コード・ファイル (.jbc) を参照

Jamバイト・コード・ファイル (.jbc) 175、176、179、180

Jamファイル (.jam) 175、176、179、180JEDEC STAPLフォーマット・ファイル (.jam);

Jamファイル (.jam) を参照JTAGインダイレクト・

コンフィギュレーション・ファイル (.jic) 175

JTAGポート 190

L

Launch Design Space Explorerコマンド 97、163

List Pathsコマンド 144list_paths Tclコマンド 145LMF 65Locate in Timing Closure Floorplan

コマンド 144LogicLock 106、108

Tclにおける使用 110中間合成結果の保存 111ブロック・ベース・デザイン・フロー 106他の EDAツールでの使用 115

LogicLock Region Propertiesダイアログ 92LogicLock Regions Windowコマンド 108LogicLock Regionsウィンドウ 109LogicLock領域 108

intra-region delayの表示 154インポート 113エクスポート 113接続性の表示 154ソフト LogicLock領域 161タイミング・クロージャの実現 160パス・ベースのアサインメント 161プロパティ 108

Page 249: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

索引

Altera Corporation Introduction to Quartus II ■ 253

LPMファンクション 45

M

makefileサポート 26makeprogfileユーティリティ 231MasterBlasterダウンロード・ケーブル 176、

191MATLAB/Simulink環境 226MAX+PLUS IIアサインメント&

コンフィギュレーション・ファイル (.acf) 61

MAX+PLUS IIシミュレータ・チャネル・ファイル (.scf) 130

MAX+PLUS IIシンボル・ファイル (.sym) 44MAX+PLUS II look and feel 6MAX+PLUS IIクイック・メニュー 7MegaCoreファンクション 47MegaWizard Plug-In Manager 45、231

qmegawiz実行コマンド 16クリア・ボックス手法の使用 52スタンドアロン・バージョン 16ブラック・ボックス手法の使用 51

mySupport 243、244

N

NativeLink 123、148New Project Wizard 33

O

OpenCore Plusハードウェア評価機能 48OpenCoreハードウェア評価機能 47Operating Conditionsページ 169

P

partitions, Incremental Synthesis 80Pathダイアログ 161Perlスクリプト 20Physical Synthesis Optimizationsページ 157physical timing estimates 153POF 174、179、180PowerFitフィッタ 84

PowerPlay Early Power Estimator 166、170PowerPlay Power Analyzer Settings

ページ 168PowerPlay Power Analyzer Tool 166、168PowerPlay Power Analyzer Toolコマンド 166Print All Recommendationsコマンド 96Print Recommendationコマンド 96Priorityダイアログ 109Programmer 174

quartus_pgmw実行コマンド 16quartus_pgm実行コマンド 177スタンドアロン・バージョン 176、16

Programmerオブジェクト・ファイル (.pof) 174、179、180、234

Programming Filesタブ 180Project Navigatorウィンドウ 34

Q

qmegawiz実行コマンド 16QSF 33、108、136Quartus II Tutorial 247Quartus II Workspaceファイル (.qws) 33Quartus II開発ソフトウェア

EDAツールのデザイン・フロー 9、23GUIデザイン・フロー 3コマンドライン・デザイン・フロー 15

Quartus II設定ファイル (.qsf) 33、108、136Quartus IIデフォルト設定ファイル (.qdf) 33quartus_asm実行コマンド 16、175quartus_cdb実行コマンド 17、39、112quartus_cpf実行コマンド 17、184quartus_drc実行コマンド 16、76quartus_eda実行コマンド 16、122、147quartus_fit実行コマンド 16、85quartus_map実行コマンド 16、65quartus_pgmw実行コマンド 16、176quartus_pgm実行コマンド 17、177quartus_pow実行コマンド 17、168quartus_sh実行コマンド 17quartus_sim実行コマンド 17、129quartus_stpw実行コマンド 16、197quartus_stp実行コマンド 17、192quartus_swb実行コマンド 17、231quartus_tan実行コマンド 16、139

Page 250: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

索引

254 ■ Introduction to Quartus II Altera Corporation

Quartus II開発ソフトウェア概要 2

Quartus IIクイック・メニュー 7Quartus IIプロジェクト・ファイル (.qpf) 33Quartus IIルック&フィール 6

R

RAM初期設定ファイル (.rif) 122Regionsウィンドウ 92Remove Connectionコマンド 210Resource Optimization Advisor 94Resource Property Editor 209Revisionsダイアログ 35RTL Viewer 76、202Run EDA Simulation Toolコマンド 121Run EDA Timing Analysis Toolコマンド 147

S

Selected Elements Windowコマンド 208Set as Incremental Design Partition

コマンド 80Settingsダイアログ 59、91、133ShopAltera 249Signal Activityファイル (.saf) 118、166SignalProbe Settingsページ 198SignalProbe機能 190、198コンパイル 198使用 198デザイン・フロー 190ピンの予約 199

SignalTap II Logic Analyzerページ 195SignalTap IIファイル (.stp) 191SignalTap IIロジック・アナライザ 190、191インクリメンタル配線 195インスタンス・マネージャ 193スタンドアロン・バージョン 197、16セット・アップおよび実行 191データの解析 195デザイン・フロー 190トリガ 194ニーモニック・テーブル 196複数のアナライザ 193quartus_stpw実行コマンド 16

Simulationページ 120Simulator使用 126

Simulator Tool 130Simulatorページ 126SOF 174、179、180Software Build Settings ウィザード 231Software Build Settingsページ 231、233、

235、236Software Builder 230

makeprogfileユーティリティ 231シミュレータ初期設定ファイル 232出力ファイルの生成 231設定の指定 59、231パッシブ・プログラミング・ファイル 234フラッシュ・プログラミング・

ファイル 233メモリ初期設定データ・ファイル 236

SOPC (system-on-a-programmable-chip) 222SOPC Builder 222

System Contentsページ 224System Generationページ 225システムの作成 224システムの生成 225使用 223デザイン・フロー 222デザインの作成 223

SRAMオブジェクト・ファイル (.sof) 174、179、180、234

STAPL; Jamファイル (.sof)を参照Start Early Timing Estimateコマンド 140Start EDA Netlist Writerコマンド 121、147Start EDA Synthesisコマンド 70Start I/O Assignment Analysisコマンド 62Start Partition Mergeコマンド 81Start Software Buildコマンド 230Start Timing Analyzer (Fast Timing Model)

コマンド 137Start Timing Analyzerコマンド 137Synopsys Design Constraintsファイル

(.sdc) 148synthesis

Incremental Synthesis 80Synthesis Netlist Optimizationsページ 74、

93、157

Page 251: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

索引

Altera Corporation Introduction to Quartus II ■ 255

T

Tcl 17、20、23Technology Map Viewer 78、146、202Technology Map Viewer コマンド 146Time Groupsダイアログ 137time group アサインメント 136Timing Analysisページ 147Timing Closure Floorplan 152Timing Closure floorplan 89Timing Optimization Advisor 156Timing Requirements & Optionsページ 133Timingウィザード 56、133

U

USB-Blasterダウンロード・ケーブル 176、191

V

Value Change Dumpファイル (.vcd) 166VCDファイル 122Verilog HDL 44、65Verilog HDL Inputページ 65Verilog出力ファイル (.vo) 119Verilogテスト・ベンチ・ファイル (.vt) 122Verilogデザイン・ファイル (.v) 41、64、69VHDL 44、65VHDL Inputページ 65VHDL出力ファイル (.vho) 119VHDLテスト・ベンチ・ファイル (.vht) 122VHDLデザイン・ファイル (.vhd) 41、64、69View Port Connectionsコマンド 209View Propertiesコマンド 209VQM Files 64、69、111VQMファイル 160VQMファイル (.vqm) 41、64、69、111、160

W

Waveform Editor 122、129Waveform Exportユーティリティ 196

アサインメントインポート 60検証 62作成 56、155パス・ベース 161表示 153

アサインメント・エディタ 57、92、133アセンブラ 4、174、176アセンブラ・ファイル (.s, .asm) 230値変更ダンプ・ファイル (.vcd) 196アトリビュート 72アルテラWebサイト 244アルテラ・プログラミング・ユニット

(APU) 176アルテラ・ハードウェア記述言語 (AHDL) 45アルテラ・メガファンクション・パートナ

(AMPP) 47

イン・システム・コンフィギュレーション・ファイル (.isc) 175、176、180

階層表示 Project Navigatorを参照カンマ区切り値ファイル (.csv) 57、196

機能シミュレーションEDAツール 123Quartus IIシミュレータ 126

クイック・メニュー 7クリア・ボックス手法 52クリティカル・パス 154グラフィカル・ユーザ・インタフェース 3グラフィック・エディタ ブロック・エディタ

を参照

Page 252: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

索引

256 ■ Introduction to Quartus II Altera Corporation

グラフィック・デザイン・ファイル (.gdf) 41、42

コンパイラ・ディレクティブ 72コンパイル起動 4コンパイル・フロー 5、19ステータス 85設定の指定 59モジュール 4

コンパイル・データベース・インタフェース 4コンパイル・フロー 5、19コンパイル・モジュール 4コンフィギュレーション 174合成

EDAツールの使用 69VHDLおよび Verilog HDLサポート 65デザイン・フロー 64ネットリスト最適化 71、74、159論理合成機能 65

最小タイミング解析 132、137サポート・センター 244

シェル、Tclスクリプト 17システム・デバッグ ; SignalProbe機能を参照システム・ビルド記述子ファイル (.sbd) 233シミュレーションシミュレーション・フロー 118ライブラリ 125

シミュレータ 126設定の指定 59

シミュレータ初期設定ファイル 232消費電力の見積り 166

PowerPlay Early Power Estimator 170PowerPlay Power Analyzer Tool 168PowerPlayパワー・アナライザ 166

シリアル・ベクタ・フォーマット・ファイル (.svf) 175、176、180

シンボル・エディタ 44実行 15実行およびリンク可能形式ファイル (.elf) 234実行コマンド 15

スタンドアロン Programmer 174スレーブ・バイナリ・イメージ・ファイル

(.sbi) 233

設計変更管理 ECOを参照設定

Analysis & Synthesis 72EDAツール 12、69、120、218HardCopy 59PowerPlayパワー・アナライザ 168Quartus II設定ファイル (.qsf) 33Quartus IIプロジェクト・ファイル

(.qpf) 33SignalProbe 198SignalTap IIロジック・アナライザ 192、

195Software Builder 59、231、233、235、236Verilog HDL input 65VHDL input 65コンパイル 59合成最適化 74、159シミュレータ 59、127タイミング解析 59デザイン・アシスタント 75フィジカル・シンセシス最適化 93フィッタ 92フィッタ最適化 159フォーマル検証 219

ソフトウェア開発 ; Software Builderを参照

Page 253: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

索引

Altera Corporation Introduction to Quartus II ■ 257

タイミング・アナライザ 4タイミング解析 132

EDAツールの使用 147performing an early timing estimate 140結果の表示 142高速タイミング・モデルの使用 137実行 133、137設定の指定 59遅延パスの表示 143デザイン・フロー 132

タイミング・クロージャ 152LogicLock領域の使用 160アサインメントの作成 155アサインメントの表示 153デザイン・フロー 152ネットリスト最適化 157配線の表示 153

タイミング・シミュレーションEDAツール 123、124Quartus IIシミュレータ 126

タイミング要求値 133個別 136指定 133プロジェクト全体 135

チェーン記述ファイル (.cdf) 176、179中間合成結果の保存 111チュートリアル 247

テーブル・ファイル (.tbl) 196テキスト・エディタ 43テキスト・デザイン・ファイル (.tdf) 41テクニカル・サポート 243、244テスト・ベンチ・ファイル 122デザイン・アシスタント 4、75、91デザイン・エントリ 32デザイン・スペース・エクスプローラ 97、163デザイン制約 56デザインの分割 30

デバイス、プログラミングおよびコンフィギュレーション 174

デバッグ ; SignalProbe機能を参照

ネットリスト最適化合成 71、74、159タイミング・クロージャの実現 157フィジカル・シンセシス 159フィッティング 159

配線 84connection counts 153クリティカル・パス 154遅延 153輻輳 154

配置配線デザイン・フロー 84フィッティングも参照

バイナリ・ファイル (.bin) 236バック・アノテーション 101、112、155バッチ・ファイル 20パッシブ・プログラミング・ファイル 234、

235パス・ベースのアサインメント 161

表形式テキスト・ファイル (.ttf) 175、180、234

標準遅延フォーマット出力ファイル (.sdo) 119

フィジカル・シンセシス、最適化 93、159フィッタ 4、84フィッティング

performing an early timing estimate 140解析 86最適化 91、159デザイン・フロー 84

Page 254: Introduction to Quartus II - インテル® FPGA & SoC 次 Altera Corporation Introduction to Quartus II iii はじめに viii 表記規則

索引

258 ■ Introduction to Quartus II Altera Corporation

フォーマル検証EDAツールの使用 217設定の指定 219デザイン・フロー 216

フラッシュ・プログラミング・ファイル 233フル・コンパイル 4フロアプラン・エディタ Timing Closure

floorplanを参照ブラック・ボックス手法 51ブロック・エディタ 42ブロック・シンボル・ファイル (.bsf) 42、44ブロック・デザイン・ファイル (.bdf) 41、42ブロック・ベース・デザイン 29、107分割 30プログラマブル・ロジックの部分 SRAM

オブジェクト・ファイル (.psof) 235プログラミング 174デザイン・フロー 174プログラミング・ハードウェア 176

プログラミング・ファイル二次の作成 180変換 175、180

ベクタ・テーブル出力ファイル (.tbl) 130ベクタ波形ファイル (.vwf) 130、196ベクタ・ファイル (.vec) 130ヘルプ、参照 246

メガファンクション 45インスタンス 45、49、67推定 50、51他の EDAツールのインスタンス 51、67

メッセージ・ウィンドウ 86メモリ・エディタ 122メモリ初期設定データ・ファイル 236、237メモリ初期設定ファイル (.mif) 122

ライブラリ・ファイル (.a) 230、236ライブラリ・マッピング・ファイル (.lmf) 65

リビジョン 35

ルック&フィール、カスタマイズ 6ルック&フィールのカスタマイズ 6

レイアウト、カスタマイズ 6レポート・ウィンドウ 87、142

ロウ・バイナリ・ファイル (.rbf) 175、180、234

ロケーション・アサインメント 91ロジック・オプション 72、94論理合成機能 65