fabric lab guide v1.3j...smartfusion2ファブリック実習ガイド page 6 of 34 v1.3...

34
SmartFusion2 ファブリック実習ガイド

Upload: others

Post on 26-Apr-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

     

SmartFusion2 ファブリック実習ガイド 

Page 2: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 2 of 34    v1.3  

 Microsemi SoC Products Group, San Jose, CA 95134 

© 2013 Microsemi Corporation. All rights reserved. 

Printed in the United States of America 

Release: April 2013 

Microsemi makes no warranties with respect to this documentation and disclaims any implied warranties of merchantability or fitness for a particular purpose. Information in this document is subject to change without notice. Microsemi assumes no responsibility for any errors that may appear in this document. 

This document contains confidential proprietary information that is not to be disclosed to any unauthorized person without prior written consent of Microsemi Corporation. 

Trademarks 

Microsemi, Microsemi Fusion, IGLOO, Libero, ProASIC, SmartFusion, SmartFusion2 and the associated logos are trademarks or registered trademarks of Microsemi Corporation. All other trademarks and service marks are the property of their respective owners.  

Page 3: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 3 of 34    v1.3  

 

目次  

はじめに ........................................................................................................................................................ 4

使用される SmartFusion2 デバイス内蔵機能 ......................................................................................................... 4

実習の必要条件 ...................................................................................................................................................... 5

ソース・ファイルの解凍 ....................................................................................................................................... 5

ステップ 1 - デザインの作成 ..................................................................................................................... 6

Libero SoC の立ち上げ ............................................................................................................................................. 6

ステップ 2 ‐デザインのシミュレーション ................................................................................................ 15

ステップ 3 –フィジカル・コンストレイント・ファイルのインポート .................................................. 21

ステップ 4 – 論理合成とレイアウト .......................................................................................................... 24

ステップ 5 –プログラミング ...................................................................................................................... 27

アプリケーションの実行 ..................................................................................................................................... 31

質問の答え .................................................................................................................................................. 32

図のリスト .................................................................................................................................................. 33

  

Page 4: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 4 of 34    v1.3  

 

はじめに この実習ではSmartDesign を使用して基本的なSmartFusion2 FPGA ファブリック・デザインのインプリメント方法を

説明します。デザインは以下の表に示すスイッチS2 の状態により、異なるパターンでSmartFusion2 スタータ・キッ

トのLED をドライブします。 LED DS3, DS4 の振る舞い   リセット・スイッチ (S1)  ユーザー・スイッチ(S2)  LED 消灯  押す  無効 LED 交互点滅  放す  放す LED 同時点滅  放す  押す 

 

この実習を通じて下記の項目を学習することができます: 

• Libero SoC プロジェクト生成 

• SmartDesign SmartDesign を使用した SmartFusion2 ファブリック・デザインのインプリメント 

• デザインのシミュレーション 

• PDC ファイルのインポート、レイアウトと SmartFusion2 へのプログラミング 

使用される SmartFusion2 デバイス内蔵機能 この実習ではSmartFusion2 FPGA ファブリック、オンチップ25/50 MHz RC オシレータ、ファブリックCCC を使用し

ます。 

Page 5: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 5 of 34    v1.3  

 

実習の必要条件 

ソフトウェア必要条件 この実習では下記のソフトウェアをインストールする必要があります。 

• Microsemi Libero SoC v11.0 

• ModelSim 10.1c 

• Synplify Pro ME G‐2012.09MSP1 

• FlashPro v11.0 

• FT232R USB to UART IC の USB ドライバー: 

http://www.actel.com/documents/CDM_2.08.24_WHQL_Certified.zip  

ソース・ファイルの解凍 SF2_Fabric_tutorial.zip ファイルをPC 上のC:\Actelprj フォルダに展開してください。展開されたソース・ファイ

ル名のサブフォルダを含んだ”SF2_Fabric_tutorial”という名前のフォルダが作成されたことを確認してください。  

Page 6: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 6 of 34    v1.3  

 

ステップ 1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

ルはソース・ファイル・フォルダーで提供されます。 

Libero SoC の立ち上げ 1. Start > Programs > Microsemi Libero SoC v11.0 > Libero SoC v11.0 とクリックするか、デスクトップのショート

カットをクリックしてください。Libero SoC プロジェクト・マネージャが立ち上がります。

 

図 1 ‐ Libero SoC プロジェクト・マネージャ 

Page 7: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 7 of 34    v1.3  

2. スタートページ・タブの New(図1の丸印)をクリックし新規プロジェクトを作成します。または、LiberoSoC メ

ニューから Project > New Project をクリックします。New Project ダイアログ・ボックスが開きます。  

3. New Project ダイアログ・ボックスに下記のように入力します。  

• Project Name: SmartFusion2_Fabric • Project Location: C:\Actelprj\SF2_Fabric_tutorial  • Preferred HDL type: VHDL または Verilog • Family: SmartFusion2 • Die: M2S050T_ES • Package: 896 FBGA • Speed: STD • Core Voltage(V): 1.2 • Ramp rate:  100ms Minimum • Operating conditions: COM • Use Design Tool: チェック外す(このデザインでは SmartFusion2 MSS は使用しません) 

        図 2 ‐ Libero SoC の New Project パラメータ 

Page 8: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 8 of 34    v1.3  

4. OK を押して”New Project”ダイアログ・ボックスを閉じます。  

5. VHDL と Verilog のソース・ファイルは、ソース・ファイル・フォルダーで供給されています。”Design 

Flow”タブの”Create Design”の下の”Create HDL”を選択し、右クリックし Import Files を選択しプロジェクト

にファイルをインポートします。 

   

図 3 ‐ HDL ソース・ファイルをインポート 

6. “Import Files”ダイアログ・ボックスに下記を入力し、Open を押します。 

• Look in:    C:\Actelprj\SF2_Fabric_tutorial\Source_files 

• Files of type:  HDL Source Files (*.vhd *.v *.h) 

• File name:  LED_ctrl.vhd (VHDL プロジェクト用) または LED_ctrl.v (Verilog プロジェクト用) 

 

7. ファイルは”Design Hierarchy”タブで確認できます。 

   図 4 ‐ “Design Hierarchy”タブでのインポート・ファイル (Verilog での例) 

8. メニューより File > New > SmartDesign を選択し SmartDesign キャンバスを開きます。または、”Design Flow”

タブの”Create Design”の下の”Create SmartDesign”をクリックします。  

Page 9: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 9 of 34    v1.3  

 

図 5 ‐ SmartDesign キャンバスのオープン 

9. “Create New SmartDesign”ダイアログ・ボックスに Fabric_Top と入力し、OK を押します。Verilog の場合は

大文字と小文字を区別するので注意してください。 

 

   

図 6 ‐ SmartDesign 名の入力 

10.  SmartDesign キャンバスに、”Design Hierarchy”タブより LED_ctrl コンポーネントをドラッグします。 

このデザインではファブリックCCC を使って500 kHz の内部クロックを生成します。CCC のリファレンス・クロック

は25/50 MHz RC オシレータです。次のステップではCCC を500 kHz クロック出力にし、オンチップ・オシレータを設

定します。 11. IP catalog の Clock & Management を展開します。 

Page 10: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 10 of 34    v1.3  

   図 7 ‐ IP Catalog の Clock & Management カテゴリ 

12. SmartDesign キャンバスに”Clock Conditioning Circuitry (CCC) v2.0.100” コンポーネントをドラッグします。 13. SmartDesign キャンバスの FCCC_0 コンポーネントをダブル・クリックし、”FAB CCC Configurator”を開きます。 14. “FAB CCC configurator”の”Basic”タブを選択し、下記のように入力します。 

• Reference clock:      プルダウン・メニューから”25/50 MHz Oscillator”を選択 

• PLL Analog Supply voltage:  3.3V 

•  GL0:        チェックする; Frequency = 0.500 MHz 

 図 8 ‐ ファブリック CCC の設定 

Page 11: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 11 of 34    v1.3  

PLL アナログ供給電圧は2.5V か3.3V のどちらかにすることができます。電圧設定はPLL が正しく動作するように、

ボード上のPLL のアナログ電圧と同じにしなければなりません。SmartFusion2 スタータ・キットではPLL のアナログ

電圧は3.3V 固定のため、上記のように”FAB CCC configurator”で変更しなければなりません。  15. OK を押して、”FAB CCC Configurator”を閉じます。 16. IP catalog から SmartDesign キャンバスへ”Chip Oscillators v1.0.100” コンポーネントをドラッグします。 

17. SmartDesign キャンバス上の OSC_0 コンポーネントをダブル・クリックし、”Chip Oscillators configurator”を

開きます。 18. 25/50 MHz RC oscillator を設定し、図 9 のようにファブリック CCC をドライブします。 

• “On‐chip 25/50 MHz RC Oscillator” をチェックしてイネーブル 

• “Drives Fabric CCC(s)” をチェックして選択 

    図 9 ‐ Chip Oscillators の設定 

19. OK を押し、”Chip Oscillators configurator”を閉じます。 

20. キャンバスで右クリックし、Auto Connect を選択します。”Chip Oscillator”コンポーネントの出力が自動的

に”Fabric CCC”コンポーネントの入力に接続されることを確認してください。 

Page 12: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 12 of 34    v1.3  

    図 10 ‐ Chip Oscillators と Fabric CCC の自動接続 

21. Libero SoC IP catalogで”Actel Macros”を展開します。 

   図 11 ‐ Libero SoC  IP Catalog の Actel Macros カテゴリ 

22. SmartDesign キャンバスに AND2 と SYSRESET をドラッグします。 

Tip: マクロ名のいくつかの文字列の後に*(アスタリスク)をIP Catalog サーチ・フィールドに入力すると、上記

のリストよりマクロを簡単に見つけることが出来ます。マクロの検索が終了したら、全体のカタログを表示する

ために、サーチ・フィールドを*(アスタリスク)に変更します。 

 図 12 ‐ IP Catalog のサーチ・フィールド 

23. コンポーネントの追加の後、SmartDesign は図 13 のようになっていることを確認します。必要ならコンポーネ

ントをドラッグしキャンバスの見栄えを良くします。 

Page 13: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 13 of 34    v1.3  

Tip:  View > Maximize Work Area を選択するか、ツール・バー上の ( )アイコンをクリックすると、キャンバ

ス・エリアが拡張します。 

   図 13 ‐ コンポーネント追加後の SmartDesign キャンバス 

キャンバスでの接続 次に、SmartDesign キャンバスでコンポーネントを接続し、デザインを完成させます。SmartDesign は接続す るためのクリック、ドラッグそしてリリース動作をサポートする接続モードを持っています。 

24. メニューより SmartDesign > Connection Mode を選択します。 25.  FCCC_0コンポーネントのGL0ポートを、LED_ctrl_0コンポーネントのCLKポートへ次のように接続します。 

• FCCC_0コンポーネントのGL0ポートをクリックし、左マウス・ボタンを押す 

• 左マウス・ボタンを押したまま、LED_ctrl_0コンポーネントのCLKポートへドラッグ. 

• マウス・ボタンをリリースし、接続を完了する 

26. 前の操作を繰り返し、下記表に示す接続を行います。 

From  To 

FCCC_0:LOCK  AND2_0:A SYSRESET_0:POWER_ON_RESET_N  AND2_0:B AND2_0:Y  LED_ctrl_0:RESETn 

 

Page 14: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 14 of 34    v1.3  

 

27. ポートをクリックし、右クリックで”Promote to Top Level”コマンドを選択し、下記ポートをトップへ引き

出します。 

• LED_ctrl:PB_SW 

• LED_ctrl:LED[1:0] 

28. 接続の後、SmartDesign キャンバスは図 14 のようになっていることを確認します。コンポーネントをドラ

ッグ、またはキャンバスの見栄えを良くするために SmartDesign の”Auto Arrange Instances”機能が使用でき

ます。 

 図 14 ‐ 接続後の SmartDesign キャンバス 

29. デザインをセーブします。(File > Save Fabric_Top) 

30.  SmartDesign > Generate Component をクリックするか、SmartDesign ツール・バー上の Generate Component ア

イコン( )をクリックし、デザインを生成します。   

31. 以前のワークエリアにしたいのであれば 、(View > Restore Work Area) でワークエリアを戻してください。 

32. ログ・ウインドウに“'Fabric_Top' was successfully generated.” が表示されることを確認します。 

33. デザインを閉じます。(File > Close Fabric_Top). 

Page 15: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 15 of 34    v1.3  

 

ステップ 2 ­デザインのシミュレーション 次のステップはデザインのシミュレートです。低速クロック・レート(500kHz)でのシミュレーションは時間がか

かります。テストベンチ、modelsim マクロ・ファイルとウェーブ・フォーマット・ファイルはソース・ファイルで

供給されます。LED_ctrl 部はシミュレーションするには時間のかかる17bit のカウンターを含みます。デザインのシ

ミュレーションを加速させるために、いくつかのカウンタ・ビットはModelSim マクロ・ファイルでHigh に強制固定

されています。  1. Design  Hierarchy ウィンドウで、Fabric_Top がボールド・フォント(太字)で表示されていることを確認します。

そうでない場合、Fabric_Top を選択し右クリックして Set As Root を選択します。 

 図 15 ‐ Fabric_Top をルート(トップ)レベルに設定 

2. “Design Flow”ウィンドウ中の”Verify Pre‐Synthesized Design"を展開します。右クリックで Simulate そして  

Import Files.. を選択します。 

    図 16 ‐ テストベンチのインポート 

3. “Import Files” ダイアログ・ボックスに下記を入力し Open を押します。 

• Look in:   C:\Actelprj\SF2_Fabric_tutorial\Source_files 

Page 16: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 16 of 34    v1.3  

• Files of type:  HDL Stimulus Files (*.vhd *.v ) 

• File name:   user_testbench.vhd (VHDL プロジェクト用) または user_testbench.v (Verilog プロジェクト

用) 

    図 17 ‐ テストベンチのインポート 

4. “Stimulus Hierarchy” タブを選択します。2つのテストベンチが表示されていることを確認します。 

注意: ”Stimulus Hierarchy”タブにuser_testbench.v(hd)がない場合、ファイルはテストベンチとしてインポートされ

ていません。前述の手順で再インポートして下さい。 

 図 18 ‐ SmartFusion2_Fabric プロジェクト内のテストベンチ群 

5. インポートしたテストベンチを使用するため、user_testbench.v(hd) を選択し右クリックして”Set as active 

stimulus” を選択します。波形シンボル(図 19 の丸印)は有効なテストベンチを示しています。同じ手順で有効な

テストベンチは変更することが出来ます。 

Page 17: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 17 of 34    v1.3  

 図 19 ‐ シミュレーションのため user_testbench を選択 

6. ModelSim マクロ・ファイルとウェーブ・フォーマット・ファイルをインポートします。 (File > Import > Others).  “Import Files” ダイアログ・ボックスに下記を入力し Open を押します。: 

• Look in:   C:\Actelprj\SF2_Fabric_tutorial\Source_files 

• File name:  Shift キーを押したまま vhdl_run.do と vhdl_wave.do もしくは 

vlog_run.do と vlog_wave.do を選択 

• Files of type:  Simulation Files (*.mem *.bfm *.dat *.txt *.do) 

   図 20 ‐ シミュレーション・ファイルのインポート 

テストベンチとシミュレーション・ファイルが”Files”タブの”Stimulus”と”Simulation”下にあることを確認します。 

Page 18: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 18 of 34    v1.3  

     図 21 ‐ テストベンチとシミュレーションファイル (Verilog の場合) 

7. ModelSim マクロ・ファイル(vhdl_run.do または vlog_run.do)を”Files”タブ内のファイル名をダブル・クリックす

ることにより、Libero SoC エディターで開きます。  

8. vhdl_run.do または vlog_run.do の 2 行目 PROJECT_DIR 変数が配置されています。それがあなたのファブリッ

ク実習の場所と一致することを確認します。場所は Libero SoC GUIの一番上に表示されます。 

( “SmartFusion2_Fabric.prjx”は含まれません)  必要ならパスを編集します。 

 図 22 ‐ プロジェクトの場所 

9. vhdl_run.do または vlog_run.do の 3 行目に INSTALL_DIR変数が配置されています。それがあなたの Libero SoC 

インストールの場所と一致することを確認します。必要ならパスを編集します。Libero SoC インストールパス

がわからない場合はインストラクターに訪ねて下さい。 10. 編集したらファイルをセーブします。(File > Save vhdl_run.do または File > Save vlog_run.do). 11. コマンドが見えやすくなるよう、ファイルをスクロールさせます。force –freeze コマンドはシミュレーション

をスピードアップさせるため、LED_ctrl(コンポーネント)のいくつかのカウンタ・ビットを Highに強制固定し

ています。 

12. エディターを閉じます。(File > Close vhdl_run.do または  File > Close vlog_run.do) 

13. “Project settings”を開きます。(Project > Project Settings)  

Page 19: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 19 of 34    v1.3  

    図 23 ‐ “Project Settings”ダイアログ・ボックス 

14. “Project Settings”ダイアログ・ボックス中の Simulation Options の下の Do File を選択します。   

15. “Use automatic DO file”のチェックを外します。   

16. “User defined DO file” の横のブラウズボタン ( )をクリックし、下記を入力し Open を押します。 

• Look in:   C:\Actelprj\SF2_Fabric_tutorial\SmartFusion2_Fabric\simulation 

• File name:  vhdl_run.do (VHDL プロジェクト) または vlog_run.do (Verilog プロジェクト) 

• Files of type:  *.do 

ModelSim マクロ・ファイル(vhdl_run.do または vlog_run.do) はウェーブ・フォーマット・ファイル

(vhdl_wave.do または vlog_wave.do)を呼び出しています。よって、ウェーブ・フォーマット・ファイルの設

定は必要ありません。 

Page 20: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 20 of 34    v1.3  

      図 24 ‐ シミュレーション・オプション 

17. Save 、Close を押し、”Project settings” ダイアログ・ボックスを閉じます。 

18. “Design Flow”ウインドウの”Verify Pre‐Synthesized Design”を展開します。そして Simulate を右クリックし”Open 

Interactively”を選択してModelSim を GUIモードで立ち上げます。 

   図 25 ‐ プリシンセシス・シミュレーションを起動 

19. シミュレーションは1.5ms実行されます。終了後、”wave”ウィンドウに図26のように表示されることを確認しま

す。 

Page 21: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 21 of 34    v1.3  

      図 26 ‐ ModelSim Wave ウインドウ (Verilog の結果) 

20. “wave”ウィンドウをスクロールしてください。LED 信号は LED のドライブ (0 = LED オフ; 1 = LED オン)を表しま

す。PB_SW 信号はスイッチ入力(0 = スイッチオン; 1 = スイッチオフ)を表します。 

21. LED 信号(LED)が 4 ページの表の記述に合っているか確認します。結果が図 26 の波形と異なる場合はインストラ

クターに問い合わせください。 

22. ModelSim を閉じます。(File > Quit) メッセージに対し、終了したければ Yes を押します。 

ステップ 3 –フィジカル・コンストレイント・ファイルのインポート このステップでは、レイアウトのためのピン・アサインおよびI/O 属性を割り当てるために、フィジカル・コンス

トレイント・ファイルを使用します。ピン・アサインを行うには複数の方法があります。このセクションでは、I/O 属性とピン・アサインとを行うために用意されたフィジカル・デザイン・コンストレイント (PDC)ファイルをイン

ポートします。 1. “Design Flow” ウィンドウ内の“Create Constraints” を展開します。右クリックで I/O Constraints そして Import 

Files.. を選択します。 

Page 22: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 22 of 34    v1.3  

   図 27 ‐ PDC コンストレント・ファイルのインポート 

2. “Import Files” ダイアログ・ボックスで下記のように入力し、Open を押します。 

• Look in:   C:\Actelprj\SF2_Fabric_tutorial\Source_files 

• Files of type:  I/O Constraint Files  (*.pdc) 

• File name:  Fabric_Top.pdc 

3. “Information” ダイアログ・ボックスで No を選択します。 

 図 28 ‐ PDC ファイルのインポート後のダイアログ・ボックス 

4. ファイルが”Files”タブの”constraint”の”io"下にあることを確認します。 

Page 23: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 23 of 34    v1.3  

   図 29 ‐ プロジェクト内の PDC ファイル 

5. “Files”タブの PDC ファイルをダブル・クリックし、ファイルを開きます。ファイルをスクロールして書式に慣

れてください。 

set_iobank 制約はバンクの入力電圧を設定し、適用できるIO スタンダードを決定します。set_io 制約はピン番号

と、I/O 属性を設定します。#印はコメントになります。  

6. PDC ファイルは Libero SoC プロジェクトの HDL 言語設定と合わさなければなりません。 

• VHDL デザインの場合、25 – 27 行目の#印を消します。 

• Verilog デザインの場合、30 ‐ 32 行目の#印を消します。 

7. 編集後、ファイルをセーブ (File > Save Fabric_Top.pdc)し、エディターを閉じます。 (File > Close 

Fabric_Top.pdc). 

スタータ・キットのピン・アサインに関するより詳細な情報は、SmartFusion2 スタータ・キット・ウェブ・ペ

ージから利用可能なスタータ・キット・スケマティック(som‐bsb‐ext‐1a‐schem.pdf)を参照してください。  Designer の PDC コンストレイント記述については、Libero のヘルプが利用できます。 (Help > Implement Design >  Constrain Place and Route > Assigning Design Constraints > Design Constraints Guide > Constraints by File Format > PDC Command Reference). 

Page 24: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 24 of 34    v1.3  

 

ステップ 4 – 論理合成とレイアウト このステップではプッシュ・ボタン・フローを使って、Synplify Pro でのデザインの論理合成、レイアウトの実行、

プログラミング・ファイルの生成を行います。  1. “Design Flow”ウインドウで Create Constraints > I/O Constraints を展開します。 “Constraints “の下の

Fabric_Top.pdc を右クリックし、”Use for Compile” を選択します。ファイルが適用されることを示すため、緑

のチェック・マークが制約ファイルの横に表示されます。 

   図 30 ‐ Design Flow ウインドウで I/O  PDC ファイルを選択 

2. “Design Flow” タブで”Compile”を右クリックし、”Configure Options”を選択します。. 

Page 25: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 25 of 34    v1.3  

    図 31 ‐ コンパイル・オプションのオープン 

3. “Configuring” ダイアログ・ボックスが開きます。“Abort Compile if errors are found in the physical design   constraints” のチェックを外し、OK を押します。 

   図 32 ‐ コンパイル・オプションの設定 

4.  “Design Flow” ウィンドウの”Generate Programming Data”アイコン(図 33の丸印) をクリックします。または、デ

ザインの論理合成、作成した I/O制約を使ったレイアウト、プログラミング・ファイルの生成を行うため Design > Generate Fabric Programming Data を選択します。 

   図 33 ‐ Generate Programming Data アイコン 

デザイン・インプリメンテーション・ツールがバッチ・モードで実行されます。”Design Flow” ウインドウの、

インプリメント・デザインの横の緑のチェックマークは、ステップの正常終了を示します。 

Page 26: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 26 of 34    v1.3  

    図 34 ‐ デザイン・インプリメンテーションの正常終了 

5. “Reports”タブには、デザインをインプリメントするために使用したツールのレポートが表示されています。 

    図 35 ‐ デザイン・インプリメンテーション後の”Reports”タブ 

6. “Reports” タブの”Compile” の下のコンパイル・レポート(Fabric_Top_compile.xml)を選択し、リソース使用率を確

認して下さい。デザインで使用されたシーケンシャル・セル数とコンビナトリアル・セル数を記録して下さい。 

Combinatorial cells (COMB)   ___________________________ 

Sequential cells (SEQ)    ___________________________ 

7. “Reports” タブの”Verify Timing”の下のタイミング・レポート (Fabric_Top_maxdelay_timing_report.xml) を選択し

て下さい。レポート・ウインドウの Summary へスクロールし、クロックの最大動作周波数を記録して下さい。: 

Page 27: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 27 of 34    v1.3  

FCCC_0/CCC_INST/INST_CCC_IP:GL0:    ________________________ 

8. Synplify Pro と Designer の出力ファイルが”Files”タブにあることを確認します。

      

図 36 ‐ Files タブでの Synthesis と Designer ファイル 

ステップ 5 –プログラミング このステップでは、バッチ・モードで FlashPro を実行し、SmartFusion2 スタータ・キット上の SmartFusion2 M2S050T をプログラミングします。 

Page 28: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 28 of 34    v1.3  

 図 37 ‐ SmartFusion2 スタータ・キット 

1. SmartFusion2 スタータ・キットのプログラミング(かつ電源投入) の前に、ジャンパーが下記表の位置になってい

ることを確認します。 

ジャンパー   位置  目的  設定 

JP1  上図の USB OTG コネクタの下 SmartFusion2 SOM (VCC3)の電源

を有効にする 1‐2 短絡 3‐4 開放 

JP2 上図の RJ‐45 イーサネット・ジャッ

クの右 

適切な JTAGモードを選択し SmartFusion2 の JTAGコネクタに

電源を供給 

1‐2 開放 3‐4 短絡 

JP3 上図の USB power and UART I/F コネ

クタの上 電源の供給元としてミニ USB ポ

ートを選択 1‐3 開放 2‐4 短絡 

2. mini‐USB Yケーブルを、SOM‐BSB‐EXT ボード(上図参照)上の、USB Power & USB UART I/F (P1)と記されている

mini‐USBコネクタに接続し、もう一方をPCのUSBポートに接続します。すると電源が供給されたことを示すLEDのDS2が点灯します。  

一本のUSB接続では、スタータ・キットの基本的な機能評価に十分な500mAを供給できますが、USB WiFiモジュ

ールを使ったWiFi接続のようないくつかの高度な機能では、500mA以上必要になる可能性があります。そのよう

な構成には二本目も使用します。 

もしプロンプトが表示されたら FT232Rドライバーをインストールします。ドライバーは

http://www.actel.com/documents/CDM_2.08.24_WHQL_Certified.zip よりダウンロードできます。 

3. スタータ・キット上の P5 コネクタに FlashPro4 リボン・ケーブルを接続します。 4. FlashPro4 と PC の USB ポート間にミニ USB ケーブルを接続します。 5. もしプロンプトが表示された場合、FlashPro4 ドライバーをインストールします。ドライバー・ファイルは、 

<FlashPro Installation Directory>\Drivers フォルダにあります。 

6. “Design Flow” ウインドウの”Program Design”を展開します。”Program Device”を右クリックし Run を選択し、プ

ログラミングします。 

JP3 

JP1 

JP2 

Page 29: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 29 of 34    v1.3  

    図 38 ‐ “Design Flow”ウィンドウからのプログラミング・ソフトウェアの立ち上げ 

7. FlashProはバッチ・モードで動作し、デバイスにプログラミングを行います。メッセージはログ・ウインドウに

表示されます。(プログラマの番号は異なります) 注意:プログラミングは数分間かかります。プログラミング中は中断しないでください。デバイスおよび 

プログラマを破損させる可能性があります。 8. デバイスが正常にプログラミング出来た場合、以下のメッセージがレポート・ビューに表示されます。(プログ

ラマの番号は異なります) 

programmer '81316' : device 'M2S050T_ES' : Executing action PROGRAM PASSED. 

 図 39 ‐ ログ・ウインドウでのプログラミング・メッセージ 

9. ESシリコンを使用している場合、プログラミング完了時にボードの電源再投入を要求するダイアログ・ボ

ックスが表示されます。 USB Power & USB UART I/F (P1)と記されている mini‐USBコネクタの USBケーブルを抜

き差しし、ボードの電源を再投入します。 

Page 30: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 30 of 34    v1.3  

 図 40 ‐ ボードへの電源再投入の要求 

10. OK を押して”Program Device“ダイアログ・ボックスを閉じます。 

 

11.  “Design Flow”ウィンドウの、”Program Design”と”Program Device”の横の緑のチェック・マークは、プログラミン

グの正常終了を示します。 

     図 41 ‐ プログラミング後の”Design Flow”ウインドウ 

12. Libero SoC を閉じます。(Project > Exit). 

Page 31: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 31 of 34    v1.3  

 

アプリケーションの実行 13. リセット・ボタン (S1)を押し、ボードをリセットします。 14. ボード・リセット後、LED の DS3 と DS4 の点灯パターンを観察します。ユーザー・ボタン (S2)を押したまま、

LED の点灯パターンを観察します。4 ページの表の記述と合っていることを確認してください。 15. ボードの電源を切り、終了します。 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SmartFusion2 ファブリック実習の終了  

Page 32: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 32 of 34    v1.3  

 

質問の答え 

26ページ デザイン中の Sequential セルと combinatorial セルの数は下記となります。 

Combinatorial cells    41 (Verilog)  44 (VHDL) 

Sequential cells    23 (Verilog)  23 (VHDL) 

27ページ CCC_0/CCC_INST/INST_CCC_IP:GL0 の最高動作周波数は下記となります。 

FCCC_0/CCC_INST/INST_CCC_IP:GL0:  354.862 MHz (Verilog)  356.125 MHz (VHDL) 

 

 

Page 33: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 33 of 34    v1.3  

 

図のリスト 図 1 ‐ Libero SoC プロジェクト・マネージャ .................................................................................................................. 6 図 2 ‐ Libero SoC の New Project パラメータ .................................................................................................................... 7 図 3 ‐ HDL ソース・ファイルをインポート ...................................................................................................................... 8 図 4 ‐ “Design Hierarchy”タブでのインポート・ファイル (Verilog での例) .................................................................. 8 図 5 ‐ SmartDesign キャンバスのオープン ...................................................................................................................... 9 図 6 ‐ SmartDesign 名の入力 .............................................................................................................................................. 9 図 7 ‐ IP Catalog の Clock & Management カテゴリ ........................................................................................................ 10 図 8 ‐ ファブリック CCC の設定 ...................................................................................................................................... 10 図 9 ‐ Chip Oscillators の設定 ............................................................................................................................................ 11 図 10 ‐ Chip Oscillators と Fabric CCC の自動接続 ........................................................................................................... 12 図 11 ‐ Libero SoC  IP Catalog の Actel Macros カテゴリ ................................................................................................. 12 図 12 ‐ IP Catalog のサーチ・フィールド ....................................................................................................................... 12 図 13 ‐ コンポーネント追加後の SmartDesign キャンバス .......................................................................................... 13 図 14 ‐ 接続後の SmartDesign キャンバス ..................................................................................................................... 14 図 15 ‐ Fabric_Top をルート(トップ)レベルに設定 ....................................................................................................... 15 図 16 ‐ テストベンチのインポート ................................................................................................................................ 15 図 17 ‐ テストベンチのインポート ................................................................................................................................ 16 図 18 ‐ SmartFusion2_Fabric プロジェクト内のテストベンチ群 ................................................................................. 16 図 19 ‐ シミュレーションのため user_testbench を選択 ............................................................................................. 17 図 20 ‐ シミュレーション・ファイルのインポート .................................................................................................... 17 図 21 ‐ テストベンチとシミュレーションファイル (Verilog の場合) ........................................................................ 18 図 22 ‐ プロジェクトの場所 ............................................................................................................................................ 18 図 23 ‐ “Project Settings”ダイアログ・ボックス ........................................................................................................... 19 図 24 ‐ シミュレーション・オプション ........................................................................................................................ 20 図 25 ‐ プリシンセシス・シミュレーションを起動 ...................................................................................................... 20 図 26 ‐ ModelSim Wave ウインドウ (Verilog の結果) ..................................................................................................... 21 図 27 ‐ PDC コンストレント・ファイルのインポート .................................................................................................. 22 図 28 ‐ PDC ファイルのインポート後のダイアログ・ボックス................................................................................. 22 図 29 ‐ プロジェクト内の PDC ファイル ....................................................................................................................... 23 図 30 ‐ Design Flow ウインドウで I/O  PDC ファイルを選択 ........................................................................................ 24 図 31 ‐ コンパイル・オプションのオープン ................................................................................................................ 25 図 32 ‐ コンパイル・オプションの設定 ........................................................................................................................ 25 図 33 ‐ Generate Programming Data アイコン ................................................................................................................ 25 図 34 ‐ デザイン・インプリメンテーションの正常終了 ............................................................................................ 26 図 35 ‐ デザイン・インプリメンテーション後の”Reports”タブ ................................................................................ 26 図 36 ‐ Files タブでの Synthesis と Designer ファイル ................................................................................................... 27 図 37 ‐ SmartFusion2 スタータ・キット ......................................................................................................................... 28 図 38 ‐ “Design Flow”ウィンドウからのプログラミング・ソフトウェアの立ち上げ ............................................. 29

Page 34: Fabric lab guide v1.3J...SmartFusion2ファブリック実習ガイド Page 6 of 34 v1.3 ステップ1 - デザインの作成 このステップではSmartDesign を使用してファブリック・デザインを作成します。いくつかのソース・ファイ

SmartFusion2 ファブリック実習ガイド    

Page 34 of 34    v1.3  

図 39 ‐ ログ・ウインドウでのプログラミング・メッセージ .................................................................................... 29 図 40 ‐ ボードへの電源再投入の要求 ............................................................................................................................ 30 図 41 ‐ プログラミング後の”Design Flow”ウインドウ ................................................................................................. 30