SmartFusion2 USB 実習ガイド SmartFusion2 USB 実習ガイド Microsemi SoC Products Group, San Jose, CA 95134 © 2013 Microsemi Corporation. All rights reserved. Printed in the United States of America Release: January 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 2 of 56 v1.6 SmartFusion2 USB 実習ガイド 目次 SmartFusion2 USB 実習ガイド ....................................................................................................................... 1 目次 ................................................................................................................................................................ 3 はじめに ........................................................................................................................................................ 4 使用される SmartFusion2 デバイスのコンポーネント ......................................................................................... 5 実習での必要事項 .................................................................................................................................................. 5 ソース・ファイルの解凍 ....................................................................................................................................... 6 ステップ 1-Libero SoC プロジェクト作成と SmartFusion2 MSS の設定 .................................................... 7 Libero SoC を起動 .................................................................................................................................................... 8 SmartFusion2 MSS の設定 ..................................................................................................................................... 11 ステップ 2 – SmartDesign 内でデザインを開く ........................................................................................ 22 ステップ 3 – フィジカル・コンストレイント・ファイルをインポート ..................................................... 28 ステップ 4 – 論理合成と配置配線 ............................................................................................................. 30 ステップ 5 – プログラミング ..................................................................................................................... 35 ステップ 6 – ファームウェア・アプリケーションを走らせる ................................................................ 39 プロジェクト内へのファイルのインポート ....................................................................................................... 40 ビルドを実行し、デバッグ・ターゲットを生成し、デバッガを起動 .............................................................. 44 ターミナル・エミュレータ・プログラムを構成 ................................................................................................ 47 アプリケーションを走らせる .............................................................................................................................. 49 質問の答え .................................................................................................................................................. 54 図目次 .......................................................................................................................................................... 55 Page 3 of 56 v1.6 SmartFusion2 USB 実習ガイド はじめに この実習では、SmartFusion2 デバイスにビルトインで備わった 2 つの役割を持つ(デュアル・ロール)・ユニバ ーサル・シリアル・バス On‐The‐Go (USB OTG) コントローラの機能をデモします。このデュアル・ロール USB OTG コントローラは USB ホスト・モードか USB デバイス・モード、あるいは OTG モードに構成することがで きます。OTG モードでは USB を介して接続された外部デバイスのタイプに基づいて動的に役割 (ホスト / デバ イス) を変更できます。 この実習では、Libero SoC プロジェクトを作成し、SmartFusion2 MSS、USB ULPI インターフェイス、USB コント ローラ・リセットを設定する手順について説明します。生成したデザインを SmartFusion2 スタータ・キットに プログラムして機能を検証します。SmartFusion2 スタータ・キットを使い、それがマス・ストレージ・クラ ス・デバイスとしての動作する例として、提供するファームウェア・ドライバとアプリケーション・コードを 使用して様々な USB デバイス・モード・ディスクリプタとエンド・ポイント構成のデモを行います。 SmartFusion2 USB OTG インターフェイスはその構成に基づいて、以下とのインターフェイスをとることができ ます。 1. PC/ラップトップのような外部 USB ホスト、もしくはホスト・モードで動作している他の USB OTG デバイス 2. フラッシュ・ドライブ / プリンタのような外部 USB デバイス、もしくはデバイス・モードで動作している他 の USB OTG デバイス。このデザインは、以下の USB フラッシュ・ドライブでのみ動作します。 • PNY 4GB flash drive • SanDisk 4GB Cruzer Blade • SanDisk 2GB Cruzer Blade この実習を通して、下記の項目を学ぶことになります。 • • • • • • • • Libero SoC v11.0 プロジェクトの作成 System Builder を使って SmartFusion2 MSS, USB インターフェイスや USB リセット用に GPIO を設定 PDC 制約ファイルをインポートして I/O バンクやピン・アサイン設定を行う Libero SoC プッシュ・ボタン・フローを使用して論理合成、配置配線そして書込みファイルを生成 デバイスへの書込み ソフトウェア・アプリケーション・プロジェクトの作成 eSRAM 内へのソフトウェア・アプリケーションのロード SmartFusion2 スタータ・キット基板上でのデザインの検証 Page 4 of 56 v1.6 SmartFusion2 USB 実習ガイド 図 1 ‐ USB ホスト・モードのブロック図 USB OTG ARM Cortex-M3 eSRAM SmartFusion2 Host PC 図 2 ‐ USB デバイス・モードのブロック図 使用される SmartFusion2 デバイスのコンポーネント この実習では、SmartFusion2 Cortex‐M3, eSRAM, USB OTG コア, GPIO, MMUART_0, ファブリック CCC, 25/50MHz RC オシレータを使用します。 実習での必要事項 ソフトウェアの要件 この実習で必要なソフトウェアを以下に示します。 • • • • • • Microsemi Libero SoC v11.0 ModelSim 10.1c Synplify Pro ME G‐2012.09MSP1 FlashPro v11.0 SoftConsole v3.4 ハイパーターミナル(通常、PC の ” Start > Programs > Accessories > Communications > HyperTerminal” よ り起動可能です)もしくは類似のソフトウェア Page 5 of 56 v1.6 SmartFusion2 USB 実習ガイド 注意:新しいバージョンの Windows OS ではハイパーターミナルは標準でインストールされていません。 ハイパーターミナルの代替品に関しては、以下の URL をご確認下さい。 http://www.windowsreference.com/windows‐7/alternatives‐to‐hyperterminal‐in‐windows‐7/ • FT232R USB – UART IC 用の USB ドライバ http://www.actel.com/documents/CDM_2.08.24_WHQL_Certified.zip SmartFusion2 MSS コンポーネントのバージョン 以下の表に使用すべき SmartFusion2 MSS の使用するバージョンを示します。 Libero SoC バージョン 11.0 SmartFusion2 MSS バージョン 1.0.100 SystemBuilder 1.0 ハードウェアの要件 この実習ではデザインを検証するため以下のハードウェアが必要です。 • • • • SmartFusion2 スタータ・キット FlashPro4 プログラマ 3 本の USB 2.0 A to mini‐B ケーブル 1 本の USB mini‐B to USB 2.0 A メスケーブル ソース・ファイルの解凍 SF2_USB_tutorial.zip ファイルを PC 上の C:\Actelprj フォルダに展開して下さい。”Source_files”というサブフォル ダを含む”SF2_USB_tutorial”という名称のフォルダが生成されたことを確認して下さい。 Page 6 of 56 v1.6 Sma artFusion2 USB 実習 ガイド ステ テップ 1- -ファーム ムウェアド ドライバをダウンロード SmarrtFusion2 デバ バイスのため めのファーム ムウェアドライバやサンプルプロジェ ェクトを使用 用するため、PC 上の IP ボー ールト内でネットワーク上 上のファーム ムウェアドラ ライバをダウンロードする必要があり ります。 1. Mirosemi SoC M C ファームウ ウェアカタログを開いてください(Staart > Program ms > Microsem mi Libero SoC C v11.0 > F Firmware Cat talog v11.0 > Firmware Caatalog) 2. ファームウェ フ ェアカタログ グの下部に New cores are available forr download のメッセージ の ジを探してください。 図 3 ‐ ファ ァームウェアカタログ内の Ne ew cores メッセ セージ 3. サ サンプルコー ードや CMSISS compliant HAL などを含 含んだペリフェラルの最新 新ドライバを をダウンロー ードするため め に Download them now をクリックし を します。ダウンロードを行 行うと以下の のようになり ります。 図 4 ‐‐ ダウンロード後のファームウ ウェアカタログ グ 4. ファームウェ フ ェアカタログ グを閉じます す。(File > Exitt) Page 7 of 56 v1.6 Sma artFusion2 USB 実習 ガイド ステ テップ 2- -Libero So oC プロジ ジェクト作 作成と Sma artFusion n2 MSS の設定 このステップでは、Libero So oC v11.0 プロ ロジェクトを を作成し、Sm martFusion2 M MSS の設定を を行います。 Libe ero SoC を起動 を 1 Start > Programs > Miccrosemi Libero SoC v11.0 > Libero SoC v11.0 をクリ 1. リック、もし しくはデスクトップ上の 下さい。Libeero SoC プロジェクト・マ マネージャが が開きます。 ショートカットをクリックして下 図 5 ‐‐ Libero SoC v11.0 プロジェクト・マネージャ ャ Project > Ne 2. ““StartPage”タ タブの”New…” (図 5 赤枠))をクリック、 、もしくは Libero SoC メニューから メ ew Project を 新規プロジ ク クリックし、 ジェクトを作 作成して下さい。次の図で で示すような な新規プロジ ジェクトのダ ダイアログ・ ボ ボックスが開 開きます。 Page 8 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 図 6 ‐ Lib bero SoC v11.0 新規プロジェク クトのダイアロ ログ 3. ““Edit Tool Pro ofiles”ボタンをクリックし、”Tool P Profiles”のダイ イアログ・ボ ボックスを開 開きます。以 以下のツー ル ル・プロファ ァイルが設定 定されているか確認します す。 • Software IDE: SoftCo onsole v3.4 が次のパスに が にあること <Libero_v11.0_insttallation>\SofftConsole\Eclipse\eclipse.eexe • Synthesis: • Simulation: • Synpliffy Pro ME G‐2 2012.09M‐SP P1 が次のパス スにあること と <Libero_v11.0_insttallation>\Syn nopsys\synplify_G201209M MSP1\bin\syn nplify_pro.exee 1c が次のパス スにあること と ModellSim AE v10.1 < Liberro_v11.0_insttallation>\Mo odel\win32accoem\modelssim.exe Programm ming: FlashPro o v11.0 が次のパスにある ること <Libero_v11.0_insttallation>\dessigner\bin\flaashpro.exe 4. “Tool Profiles” “ ”ダイアログ グ・ボックスを閉じるため め、OK を押 押します。 Page 9 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 5. “New Project” “ ”ダイアログ グ・ボックスで以下の情報 報を入力しま ます。 • • • • • • • • • • • • Project Naame: SmartFu usion2_USB__ULPI Project Lo ocation: C:\Acctelprj\SF2_U USB_tutorial Preferred HDL type: VH HDL か Verilo og の好きな方 方を選択して てください Family: Sm martFusion2 Die: M2S0 050T_ES Package: 896 FBGA Speed: STTD Die Voltagge (V): 1.2 Ramp Ratte: 100ms Min nimum Operatingg conditions: COM Use Desiggn Tool: チェックする Core: Seleect Use System m Builder v1.0 6. も もし、”Use SSystem Builde er”や”SmartFFusion2 Micro ocontroller su ubsystem”の表 表示が斜字体 体になってい いる場合、IP v vault 内にコア アがありませ せん。コアの の名称を右クリックし、ダウンロードします。 図 7 ‐ Libero SoC プ プロジェクトの のパラメータ 7. N New Project ダイアログ・ ダ ・ボックスを を閉じるため め、OK をクリ リックします す。 8. “Enter a name “ e for your sysstem”ダイアログ・ボック クスが開きま ます。USB_U ULPI と入力し し、OK をクリ リックしま す す。 Page 10 of 56 v1.6 Sma artFusion2 USB 実習 ガイド Sma artFusion2 2 MSS の設 設定 9. 以下に示すよ 以 ように”System m Builder ‐ Device Featurees”ページが開 開かれます。 図 8 ‐ SmartFFusion2 System Builder 10. “Device Featu “ ures”のページ ジで以下の内 内容を入力し し、Next を押 押します。 • • • • Will you b be accessing e external mem mory from thee Cortex‐M3? Will you b be accessing D DDR memory through the Fabric? Will you b be adding datta storage clieents to the on n‐chip Flash M Memory? How many high‐speed serial interfaaces will you u use? Which Microcontrollerr Options will you be usingg? No N N No N No 両 両方のチェッ ックを外す 全 全てのチェッ ックを外す 11. 次に”System 次 Builder ‐ Periipherals”ペー ージで以下の の変更を行います。 • Fabric Slave Cores 欄か から MSS_FIC C_0 – MSS Maaster Subsysteem に GPIO b bit をドラッグします。 • 以下のペ ペリフェラルの Enable 列をクリックし無効にしま ます。 o MM_UART_1, M MSS_SPI_0, M MSS_SPI_1 MSS_I2C_0, MSS_I2C_1, M • MSS_USB B ペリフェラルの Enable 列をクリックし有効にします。 12. “Select Peripherals”ページ ジは以下に示 示すように見 見えます。 Page 11 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 図 9 ‐ 変更後の””Select Peripherrals”の構成 ペリフェラル ペ ルは、レンチ チ・シンボル ル ( ) をクリ リックして構 構成できます す。CoreGPIO O bits 数は、Q Quantity c column 内で数 数値の変更が ができます。このデザインは CoreGP PIO を 1 ビッ ットだけ使用します。 13. MSS_FIC_0 M M MSS Master Su ubsystem にあ ある CoreGPIO_0 の隣にあ あるレンチ・ ・シンボルを をクリックし しま す す。”Configu ring GPIO_0_ _0”ダイアログ・ボックス スが開きます す。 図 10 ‐ Co onfiguring GPIO__0_0 Page 12 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 14. 以 以下のように に入力し、OK をクリック クします。 • Global Co onfiguration: o APB Data Widtth: フォルト) 32(デフ Os: 1 o Number of I/O デフォルト) 無効(デ o Siingle‐bit interrrupt port: o Output enable O e: External(デフォルト ト) • 他のすべ べては、デフォルトのまま ま 図 11 ‐ CoreGPIO の構 構成 15. 次 次に MM_UA ART_0 ペリフ フェラル隣のレンチ・シンボルをクリ リックします す。”Configurring MM_UAR RT_0”ダイア ア ロ ログ・ボック スが開き、M MM_UART の構成ができ の ます。以下のように変更 更します。 • Duplex Mode: Full Duplexx • Transmisssion Mode: Asynchrono ous • Connect TTo: IO チェック外 • Use Modeem: 外す Page 13 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 図 12 ‐ Co onfiguring MM__UART_0_0 ダイ イアログ・ボックス 16. O OK をクリックして MM_ _UART_0_0 ダイアログ・ ダ ボックスを を閉じます。 17. 次に 次 MSS_USSB ペリフェラ ラルのレンチ チをクリック クします。”C Configuring M MSS_USB_0”ダ ダイアログ・ボ ボックスが 開 MSS_USSB が構成でき 開き きます。ULP PI インターフ フェイスにな なっていることを確認し OK を押しま ます。 図 13 ‐ C Configuring MSSS_USB_0 ダイア アログ・ボックス 18. SSystem Buildeer 内で Next をクリックします。” Syystem Builderr ‐ Clock”ペー ージが開きま ます。 19. “System Build “ der ‐ Clock”ペ ページで以下のように入力 力します。 • System Clock: ン・メニュー ーから”On‐chip 25/50 MHzz RC Oscillato or”を選択 プルダウン • M3_CLK: 32 MHz M3_CLK/1 (32.000 MHz) • APB_0 CLK: M3_CLK/1 (32.000 MHz) • APB_1 CLK: • FIC_0 CLK K: M3_CLK/1 (32.000 MHz) Page 14 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 図 14 ‐ M MSS クロックの構 構成 20. N Next をクリッ ックします。” System Bu uilder ‐ Microcontroller”ペ ページが開きます。このペ ページは”Co ortex‐M3 er”や“Cache Controller” “AHB Bus Matrix”のよう な複数のペリフェラルの m microcontroll M のタブからな なっています す。 今 今回のデザイ インでは変更 更はありませ せんが、設定内容を理解す する時間を取 取って下さい い。 Page 15 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 図 15 ‐ マイク クロコントローラの構成 21. ““System Build der ‐ Microcon ntroller”ペー ージの設定を受 受け入れるた ため、Next をクリックし を します。 22. “System Build “ der ‐ SECDED””ページが開きます。SmartFusion2 内の様々なメ 内 モリブロックの SECDED D を有効にす す る るために使用 用します。 Page 16 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 図 16 ‐‐ SECDED の構成 成 23. この実習では こ は、どの RAM M ブロックの の SECDED も有効にしませ せん。SECDEED ページをデフォルト設 設定のまま 受 受け入れ、N Next をクリッ ックしてくだ ださい。 24. “System Build “ der ‐ Interruptts”ページが開 開きます。こ このページは は、接続され れているペリフェラルからの割り込 み み接続が表示 示されます。CoreGPIO の割り込みが の が有効ではないため、割り込み信号は は表示されま ません。 25. Next N をクリッ ックしてくだ ださい。” Sysstem Builder ‐ Memory maap”ページが開きます。 Page 17 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 図 17 ‐ メモリマップの構 構成 26. “System Build “ der ‐ Memoryy map”ページ ジで Finish をクリックして てください。 27. Libero SoC log L g ウィンドウ ウ内に“‘USB_ULPI_MSS’ was successfully generated..”, “’USB_ULP PI’ was successsfully g generated.”, “ “System Build der successfully generated d ‘USB_ULPI’”メッセージが が表示される ることを確認 認します。 28. SmartDesign S キャンバス内に USB_ULPI_0 という う名前のコン ンポーネントが次のページ ジのように表 表示されます す。 Page 18 of 56 v1.6 SmartFusion2 USB 実習ガイド 図 18 ‐ SmartDesign キャンバス内の USB_ULPI_0 コンポーネント 29. CoreGPIO_0_0_PINS ポートのグループを展開するために”+サイン”をクリックします。 30. GPIO_OUT[0]ポートをトップ・レベルに設定するため、このポートを右クリックし”Promote to Top Level”を 選択します。 図 19 ‐ GPIO_OUT[0]ポートをトップ・レベルに設定 Page 19 of 56 v1.6 SmartFusion2 USB 実習ガイド 31. GPIO_OE[0]ポートを未使用設定にするため、右クリックし”Mark Unused”を選択します。 図 20 ‐ GPIO_OE[0]を未使用にマーク 32. 前の手順と同じように INT[0]ポートに”Mark Unused”をマークします。 33. GPIO_IN[0]ポートを Low に固定します。右クリックして”Tie Low”を選択します。 図 21 ‐ INT[0]を Low 固定 34. Canvas 画面上で CoreGPIO ポート接続を修正した後は以下の図に示すようになります。 図 22 ‐ CoreGPIO ポート接続修正後の USB_ULPI コンポーネント Page 20 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 35. デ デザインを保 保存します。(File > Save USB_ULPI_to op). 36. SmartDesign S タ の DESIGN_FIRMWARE タブを開きま す。(Design > Configure FFirmware). 図 23 ‐ DESIGN_FIRMWARE タブ 37. イ イタリック表 表示のドライ イバがないことを確認します。もしイ イタリック表 表示のドライ イバがあった たら、右クリ ッ ックし”Down nload All Firm mware”ボタン ンを押します す (図内の赤枠 枠)。コアのダ ダウンロード ドに関するメ メッセージが が 出 出たら Yes をクリックし を します。 38. IP ボールトで で不足してい いる全てのフ ファームウェアをダウンロ ロードするた ため、Download Required d ダイアログ グ ボ ボックスで Y をクリッ Yes ックします。 図 24 ‐ ファーム ムウェアダウンロード警告 39. U USB ドライバ バは、この実 実習のためのソースファイ イルで提供さ されます。Sm martFusion2__MSS_USB_D Driver_0 の G Generate 列の のチェックを を外し、USB ドライバの生 生成を無効に にします。以 以下に示すよ ように他のド ドライバが有 効 効になってい いることを確 確認します。 図 25 ‐ USB ドライバ生成無効の の設定後のデザ ザインファームウェアタブ 40. D DESIGN_FIRM MWARE タブを を閉じます ((File > Close D DESIGN_FIRM MWARE) 。変 変更を保存す するか尋ねられ れたら Yes を をクリックし します。 Page 21 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 41. もし も SmartDeesign キャンバスが表示さ されない場合 合 USB_ULPI__top タブをク クリックしま ます。SmartD Design > Generate Com G mponent をク クリックもし しくは SmartD Design ツール ル・バーの( )をクリックしデザイ インを生成 し します。Libe ero の Log ウィンドウ内に に”SoftConso ole workspacee was successsfully generatted.”, ”’USB_U ULPI_top’ w was generate ることを確認 認下さい。 d.”のメッセージが現れる 42. デザインを閉 デ 閉じます。(FFile > Close USSB_ULPI_top p). 43. Reports R タブ内の USB_ULLPI_top_DataSheet.xml をクリックし を 、USB_ULPI データシートを開きます す。(もし必 要 要があれば、 Design > Reports を選択 択しレポート・タブを開き きます) 44. ペリフェラル ペ ルの場所を確 確認するため め、ウィンドウをスクロー ールします。 C CoreGPIO_0_ 0 のアドレス スは何ですか か? _________________ 45. レ レポートはシ システムビル ルダログ(USB B_ULPI_SYS_B BLD.xml と SU UB_ULPI_CCC C_0_configuraation.xml)にも も表示され ま ます。レポー ートを開いて て内容をよく理解します。 。 46. 終了したらデ 終 データシート ト・レポートを閉じます。 。(File > Closse Reports). ステ テップ 3 – I/O 設定を修正 1. LLibero SoC pro oject settingss を開きます す。(Project > Project Settin ngs) 2. Project Settin P g ダイアログ グボックス内 内の Device I/O Settings を選択します。 を 。 3. Default I/O Te D echnology field で LVCMOS 3.3V を選択 択します。こ これは、デフ フォルトの I/O O の属性を LVCMOS 3.3V L V に に設定します す。 I/O の属 属性は、フィジカル・コン ンストレイント・ファイル ル (PDC)や I/O O Attribute Ed ditor で修正 す することがで できます。 図 26 ‐ デフォ ォルト I/O 属性 性の設定 Page 22 of 56 v1.6 SmartFusion2 USB 実習ガイド 4. Save をクリックします。Warning ダイアログボックス内で Yes をクリックします。 5. Project setting ダイアログボックスを閉じるため、Close をクリックします。 Page 23 of 56 v1.6 SmartFusion2 USB 実習ガイド ステップ 4 – SmartDesign 内でデザインを開く 前のステップで生成したシステムを理解するため、SmartDesign でデザインを開くことができます。 1. “Design Hierarchy”を展開するため、Libero SoC “Design Hierarchy”タブ内の USB_ULPI_top の+サイン( クリックします。 図 27 ‐ Design Hierarchy を展開 2. USB_ULPI を右クリックし、”Open as SmartDesign”を選択します。 図 28 ‐ SmartDesign 内の USB_ULPI を開く 3. Information ダイアログ・ボックス内で OK をクリックします。 Page 24 of 56 v1.6 )を SmartFusion2 USB 実習ガイド 4. デザインは、SmartDesign キャンバス内で次ページのように表示されます。”On‐chip 25/50 MHz RC Oscillator” (FABOSC_0), “Fabric CCC” (CCC_0), “CoreGPIO” (GPIO_0_0), “CoreAPB3” (CoreAPB3_0) がインスタンスされ System Builder によって自動的に接続されることに注目して下さい。 図 29 ‐ SmartDesign キャンバス内の USB_ULPI デザイン 5. “Fabric CCC configurator"を開くため、CCC_0 をダブル・クリックして下さい。”Basic”タブを選択しま す。”PLL Analog Supply Voltage” を 3.3V に変更するためプルダウン・メニューを使用します。 PLL Analog Supply Voltage は、2.5V か 3.3V を選択できます。configurator 内の電圧設定は、PLL を確実に動作 させるためボード上の PLL Analog Supply Voltage とあわせる必要があります。 Page 25 of 56 v1.6 SmartFusion2 USB 実習ガイド 図 30 ‐ PLL アナログ供給電圧を変更 6. Fablic CCC configurator を閉じるため、OK をクリックします。 7. デザインの変更を保存します。(File > Save USB_ULPI). 8. SmartDesign > Generate Component をクリックもしくは”Generate Component” アイコンをクリックしデザイ ンを生成します。Libero SoC の Log ウィンドウ内で”USB_ULPI_top was successfully generated”と表示されるこ とを確認します。 9. SmartDesign を閉じます(File > Close USB_ULPI). もし今後 System Builder 内のデザインを開く場合、”Design Hierarchy”タブを右クリックするか”Re‐open as Syatem Builder”を選択します。 10. USB_ULPI_top がルート・レベルとなっていることを確認するため”Design Hierarchy”タブ内でこれが太字で表 示されていることを確認します。太字になっていない場合、USB_ULPI_top を選択し、右クリックして Set As Root を選択します。 11. Design Hierarchy タブの”USB_ULPI_top”を右クリックし、”Generate Component”アイコンをクリックしてデ ザインを生成します。 “USB_ULPI_top was generated.”のメッセージが Libero SoC の”Log”ウィンドウに現れる ことを確認してください。 Page 26 of 56 v1.6 SmartFusion2 USB 実習ガイド 図 31 ‐ USB_ULPI_top コンポーネントを生成 12. SmartDesign を閉じます (File > Close USB_ULPI_top)。 Page 27 of 56 v1.6 Sma artFusion2 USB 実習 ガイド ステ テップ 5 – フィジカル・コンス ストレイン ント・ファイルをインポート このステップではレイアウトのためのピ ピン指定と I//O 属性指定をするために にフィジカル ル・ コンスト トレイント・ ます。I/O 指 指定を行うには多数の方法 法があります す。このセク クションでは は I/O 属性とピ ピン指定を ファイルを使いま 供されたフィ ィジカル・デザイン・コン ンストレント ト( PDC )フ ファイルをイ インポート( (読み込み) 行うために、提供 します。 1. ““Design Flow””ウィンドウ内の”Constraain Design”を を展開します す。Libero SoC C メニューで で File > Imporrt I/O C Constraints を を右クリック クし Import Fiiles …を選択します。 図 32 ‐ P PDC コンストレ レイント・ファイ イルのインポー ート 2. ”” Import Files”ダイアログ グ・ボックスの中で次を入 入力し、それ れから” 開く”をクリック クします。 • Look in: C:\Actelprj\SF2_USSB_tutorial\So ource_files • Files of tyype: I/O Co onstraint Filess (*.pdc) • File namee: USB_U ULPI_top_IO.p pdc 3. “Information” “ ”ダイアログ・ボックスで で” No”を選択 択してくださ さい。 図 33 ‐ PDC コンストレ レイント・ファイ イルをインポート後の”Informaation”ダイアログ・ボックス 4. ファイルは フ L Libero SoC “F iles”タブ内の の”constraint > io”の下に見 見えます。 Page 28 of 56 v1.6 SmartFusion2 USB 実習ガイド 図 34 ‐ Libero SoC プロジェクト内の PDC コンストレイント・ファイル 5. Files”タブ上で PDC ファイル名をダブル・クリックして Libero SoC エディターで開いてください。ファイ ル内でスクロールし、書式に慣れてください。 set_iobank 制約はバンクの入力電圧を設定し、適用できる IO スタンダードを決定します。set_io 制約はピ ン番号と、I/O 属性を設定します。#印はコメントになります。 スタータ・キットのピン・アサインの詳細に関しては、SmartFusion2 スタータ・キットの WEB ページから 入手可能な Starter Kit schematic (som‐bsb‐ext‐1a‐schem.pdf)を参照して下さい。 Designer PDC constraints の記述は、Libero Help にて参照できます。(Help > Help Topics > Implement Design > Constrain Place and Route > Assigning Design Constraints > Design Constraints Guide > Reference > Constraints by File Format > PDC Command Reference) 6. エディターを閉じてください (File > Close USB_ULPI_top_IO.pdc). Page 29 of 56 v1.6 SmartFusion2 USB 実習ガイド ステップ 6 – 論理合成と配置配線 このステップでは、Synplify Pro を使用したデザインの論理合成、及び配置配線そしてプログラミング・ファイ ルの生成をプッシュボタン・フローを用いて行います。 1. Libero SoC “Design Flow”ウィンドウで Create Constraints > I/O Constraints を展開します。”Constraints”の下 の USB_ULPI_top_IO.pdc を右クリックし、”Use for Compile”を選択します。そのファイルが使用されること を示す緑色のチェック・マークが制約ファイルの横に表示されます。 図 35 ‐ デザインファイルウィンドウ内 PDC ファイル選択 2. “Design Flow”タブ内の”Compile”を右クリックし、”Configure Options”を選択します。 図 36 ‐ “Configure Options”を開く Page 30 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 3. ““Configuring““ダイアログ・ボックスを を開きます。”Abort Compile if errors are found in the physical d design c constraints”の のチェックを を外し OK をク クリックしま ます。 図 37 ‐ コンパイル 3 ル・オプションの の”Configuring”設 設定 4. TTiming Driven n レイアウト トの選択を外すため、Libero の”Desiggn Flow”ウィンドウ内で””Place and Ro oute”を右ク リ リックし”Co nfigure Optio on…”を選択します。 図 38 8 ‐ Designer のレ レイアウト・オプ プションを設定 定 5. “Configuring” “ ダイアログ・ボックスが が開きます。Timing‐driveen のチェックを外し、O OK を押します。 Page 31 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 図 39 ‐ 標準 準レイアウトを を設定 6. ””Design Flow”” ウィンドウ ウ内で”Generrate Programming Data”ア アイコン (以下 下の図の赤枠 枠)をクリック ク、もしく は Design > G Generate Proggramming Daata を選択し して、デザインの論理合成 成、I/O コンストレイントを使用し た た配置配線、 そしてプロ ログラミング グ・ファイルを生成します す。 図 40 ‐ “Generate P 4 Programming Data”アイコン 7. デザイン・イ デ インプリメン ンテーション ン・ツールがバ バッチ・モー ードで動作し します。”Yess”を押します す。 図 41 ‐ Warningg ダイアログ・ボックス デザインステ デ テップが正常 常に終了するとデザインフローウィン ンドウ内の Implement Deesign の論理 理合成、コン パ パイル、配置 置配線、タイ イミング検証 証、書込みデー ータの生成の の横に緑色の のチェックマ マークで示されます。 Page 32 of 56 v1.6 SmartFusion2 USB 実習ガイド 図 42 ‐ 書込みファイル生成 8. レポートタブは、デザイン実行に使用したツールのレポートを表示します。 図 43 ‐ 書込みファイル生成後のログ一覧 Page 33 of 56 v1.6 SmartFusion2 USB 実習ガイド 9. リソースの使用状況を見るため、”Reports”タブの”Compile”にあるコンパイル・レポート (USB_ULPI_top_compile.xml)を選択します。デザイン内で使用されるシーケンシャル・セル、コンビナトリ アル・セルの数を記録してください。 Combinatorial cells (COMB) ___________________________ Sequential cells (SEQ) ___________________________ 10. “Reports”タブの”Verify Timing”にあるタイミング・レポート (USB_ULPI_top_maxdelay_timing_report.xml) を選 択します。Report ウィンドウ内の timing summary をスクロールします。次のクロックの最大周波数を記録 してください。 USB_ULPI_0/CCC_0/CCC_INST/INST_CCC_IP:GL0 ________________________ 11. Synplify Pro 及び Designer ツールで生成された出力フィルは、Libero SoC の”Files”タブに表示されます。 図 44 ‐ Libero SoC ファイルタブの論理合成、配置配線レポート Page 34 of 56 v1.6 SmartFusion2 USB 実習ガイド ステップ 7 – プログラミング このステップでは、バッチモードで FlashPro を実行し SmartFusioin2 スタータ・キット上の SmartFusion2 M2S050T デバイスにプログラミングをおこないます。 図 45 ‐ SmartFusion2 スタータ・キット 1. SmartFusion2 スタータ・キットのプログラミング (かつ電源投入) の前に、ジャンパーが下記表の位置にな っていることを確認します。 ジャンパー 位置 JP1 上図の USB OTG コネクタの下 JP2 上図の RJ‐45 イーサネット・ジャ ックの右 JP3 上図の USB power and UART I/F コ ネクタの上 目的 SmartFusion2 SOM(VCC3)の電源を 有効にする 適切な JTAG モードを選択し SmartFusion2 の JTAG コネクタに 電源を供給可能 電源の供給元としてミニ USB ポ ートを選択 設定 1‐2 短絡 3‐4 解放 1‐2 解放 3‐4 短絡 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 リボン・ケーブルを接続します。 Page 35 of 56 v1.6 SmartFusion2 USB 実習ガイド 4. FlashPro4 と PC の USB ポート間にミニ USB ケーブルを接続します。 5. もしプロンプトが表示された場合、FlashPro4 ドライバーをインストールします。ドライバー・ファイルは、 <FlashPro Installation Directory>\Drivers folder にあります。 6. Design Flow ウインドウの Program Design を展開します。Program Device を右クリックし Run を選択し、プ ログラミングします。 図 46 ‐ “Design Flow”ウィンドウからプログラミング・ソフトウェアを起動 7. FlashProはバッチ・モードで動作し、デバイスにプログラミングを行います。メッセージはログ・ウイン ドウに表示されます。(プログラマの番号は異なります) 注意:プログラミングは数分間かかります。プログラミング中は中断しないでください。デバイスおよび プログラマを破損させる可能性があります。 Page 36 of 56 v1.6 SmartFusion2 USB 実習ガイド 8. デバイスが正常にプログラミング出来た場合、以下のメッセージがレポート・ビューに表示されます。 programmer '81316' : device 'M2S050T_ES' : Executing action PROGRAM PASSED. 9. もし、ESシリコンを使用している場合、書込み終了後にスタータキットボードの電源の再起動を促すダイ アログ・ボックスが表示されます。USB電源とUSB UARTインターフェース(P1)のmini‐USBコネクタを一度外 し再接続を行ってください。 図 47 ‐ ボードの再起動を警告 10. Program Deviceダイアログボックスを閉じるため、OKをクリックします。 図 48 ‐ Libero SoC ”Reports”ウィンドウ内のプログラミング・メッセージ 11. プログラミングが正常に終了したことを示すため、”Design Flow”ウィンドウの”Program Design”と”Program Device”に緑色のチェック・マークが表示されます。 Page 37 of 56 v1.6 SmartFusion2 USB 実習ガイド 図 49 ‐ プログラミング後の”Design Flow”ウィンドウ Page 38 of 56 v1.6 SmartFusion2 USB 実習ガイド ステップ 8 – ファームウェア・アプリケーションを走らせる このステップでは、USB OTG 機能のためにソフトウェア・アプリケーションをビルドし、デバッグ・ターゲッ トを作成し、デバッガを起動して SmartFusion2 eSRAM へソフトウェア・アプリケーション・イメージのロー ドと実行をおこない、USB ホストとして、および USB デバイスとしての USB OTG コア機能を観察します。 1. “Design Flow”タブの”Develop Firmware”カテゴリにある”Write Application Code”オプションをダブル・クリッ クし、Libero SoC から SoftConsole ワークスペースを起動します。 図 50 ‐ SoftConsole Workspace を起動 2. SoftConsole は 2 つのプロジェクト(USB_ULPI_MSS_CM3_app と USB_ULPI_MSS_CM3_hw_platfrom)を”Project Explorer”ビュー中でオープンし表示します。 “USB_ULPI_MSS_CM3_app”プロジェクトはユーザー・アプリケーションのためのスタート・ポイントで す;ファイル”main.c”はそれを使用してファームウエア・アプリケーションを作成するためのテンプレー トです。 “USB_ULPI_MSS_CM3_hw_platfrom”プロジェクトは SmartDesign によって作られたファームウエア・ドライ バ、およびファブリック・ペリフェラルのアドレスを含むプラットフォーム・ヘッダ・ファイル (USB_ULPI_top_hw_platform.h) とを含んでいます 3. 各プロジェクトの内容を理解するためフォルダを展開します。 Page 39 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 図 51 ‐‐ SoftConsole プ プロジェクト・ワークスペース ス プロ ロジェクト内へのファ ァイルのイ インポート 次に にソース・ファイルで提供 供されている るアプリケー ーションコー ード(main.c)と SmartFusion n2 MSS USB コアのファ コ ームウェア・ドライバを USB_ULPI_MSS__CM3_app アプリケーシ ア ション・プロジェクト内に にインポートします。 ソー ース・ファイル ルでは、USB B ドライバを を生成してい いないため、ご提供したチ チュートリア アルフォルダ ダから USB ド ライバをインポー ートします。 の plorer”ビュー ー内の USB_U ULPI_MSS_CM M3_app を選 選択し、右クリック後に Import を選 4. SSoftConsole の”Project Exp 択 択してプロジ ジェクト内に にアプリケー ーション・ファイルをイン ンポートしま ます。 Page 40 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 図 52 ‐ SoftConsole プロジェクト内 内にアプリケシ ション・コード ドをインポート 5. “Import”ダイ “ アログ・ボックス内で””General > File System”を選 選択し、Nexxt をクリック クします。 図 53 ‐ “File SSystem”からイン ンポート Page 41 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 6. ““Import”ダイアログ・ボックス内に以 以下の内容を を入力し、Fiinish をクリックします。 • From direectory: C:\Actelprj\\SF2_USB_tutorial\Sourcee_files • “Source fiile”フォルダ ダを展開し、m mss_usb と main.c m を選択 択 • Into Foldeer: USB_ULPI__MSS_CM3_app 図 54 ‐ SmarrtFusion_FIC_MSSS_CM3_0_app プロジェクト内にインポート トするファイル ルを選択 7. USB_ULPI_MS U SS_CM3_app フォルダ内の main.c を上書きするプ プロンプトが が表示された たら Yes を選 選択します。 図 55 ‐ USB_ULPI_MSSS_CM3_app プロ ロジェクト内の の main.c ファイ イルの上書き確認 認 8. インポートさ イ されたファイ イルは、SoftC Console の”Project Exploreer”ビュー内に表示されま ます。 Page 42 of 56 v1.6 SmartFusion2 USB 実習ガイド 図 56 ‐ アプリケーション・プロジェクト下のインポートされたファイル 9. USB_ULPI_MSS_hw_platform 下の CMSIS フォルダに含まれる m2sxxx.h ファイルは、前のステップでインポ ートした USB ドライバのタイプ定義と矛盾する定義を含んでいます。 10. SoftConsole “Project Explorer”ビュー内で USB_ULPI_MSS_hw_platform 下の CMSIS フォルダを展開します。 m2sxxx.h をダブル・クリックし SoftConsole エディタでファイルを開きます。 Page 43 of 56 v1.6 SmartFusion2 USB 実習ガイド 図 57 ‐ SoftConsole “Project Explorer”内の m2sxxx.h ファイル 11. エディタで行を選択し、右クリックし Source > Comment/Uncomment を選択することで m2sxxx.h ファイ ルの 714 行から 917 行をコメント・アウトします。 12. ファイルを保存 (File > Save) し、ファイルを閉じます。(File > Close) ビルドを実行し、デバッグ・ターゲットを生成し、デバッガを起動 13. SoftConsole “Project Explorer”内の USB_ULPI_MSS_CM3_app を選択します。Project > Build All を選択して、ビ ルドを実行します。”Problems”ビュー内にエラーが生じていないことを確認します。(warning メッセージ は無視できます) 図 58 ‐ ビルド実行後の”Problems”ビュー On‐chip Debugger(OCD)を使用する前に、デバッグターゲットを構成する必要があります。 14. SoftConsole “Project Explorer”ビュー内で USB_ULPI_MSS_CM3_app を選択します。 15. SoftConsole メニューから Run > Debug Configuration…を選択します。”Debug Configuration”ダイアログが開 きます。 Page 44 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 図 59 ‐ SoftConsole “De ebug Configurattions”ダイアログ 16. M Microsemi Co ortex‐M3 Targget を選択し し、右クリックして New w を選択します。USB_ULLPI_MSS_CM3 3_app とい う う名称のデバ バッグ・ター ーゲットが表 表示されます。 。 Page 45 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 17. D Debug ウィン ンドウ内の”M Main”タブで以 以下のように に表示されて ているか確認 認します。 • Name: USB_ULPI__MSS_CM3_app Debug • Project: USB_ULPI__MSS_CM3_app • C/C++ app plication: Debug\ USB B_ULPI_MSS__CM3_app 図 60 ‐ USB_ULPII_MSS_CM3_app プロジェクト トのデバッグ・ターゲット 18. “Common”タ “ ブを選択しま ます。”Displlay in favoritees menu”内の の”Debug”をチ チェックし、Apply をクリックしま す。これで SmartFusion ツ す S ツール・バー ーの Debug アイコン ( ア 動 動できます。 ) をクリックすることによりデバ バッガを起 図 61 ‐ “Display in favvorites”内で De ebug をチェック ク 19. D Debug をクリ リックしてデ デバッガを起 起動し、Confirm Perspectiive Switch ダイアログ・ボ ダ ボックス内で で Yes をク リ リックします す。SoftConso ole の Debugg パスペクテ ティブが開き、次ページの の図のように に表示されま ます。 20. スタータ・キ ス キット基板に に自動的にコードがダウンロードされ れます。プロ ログラムは main.c m の 1 行目で停止し 行 し ま ます。 Page 46 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 図 62 ‐ SoftConsole の Debug パス スペクティブ ター ーミナル・エミュレー ータ・プロ ログラムを構 構成 このアプリケーシ ションは、M MM_UART_0 経由でターミナル・エミュレータへ へメッセージ ジを送ります す。次のステ プでは、ターミナル・エミ ミュレータ・ ・プログラム ムを構成します。 ップ 21. SStart > Settinggs > Control P Panel > Syste em > Hardware > Device M Manager を選 選択して、W Windows の Deevice M Manager を開 開きます。 P Ports (COM & & LPT)セクションを展開し、USB seriaal port の CO OM ポート・アサインを 記 記録してくだ ださい。 (以下 下の例では、COM9 にア アサインされ れています) U USB Serial Por rt: Page 47 of 56 COM________ v1.6 Sma artFusion2 USB 実習 ガイド 図 63 ‐ Windo ows の Device M Manager 22. コ コンピュータ タ上でハイパ パーターミナ ナルのようなターミナル・エミュレー ータ・プログ グラムを開きます。 23. “Connect To” “ ダイアログ・ボックス内 内の”Connectt using”ドロッ ップダウン・ ・リストから ら上記で特定 定した COM ポ ポートを選択 択し、OK を押 押します。 図 64 ‐ ハイパーター ーミナルで COM M ポートを指定 定 24. タ ターミナルエ エミュレータ タプログラム内で以下の設 設定を入力し します。 • ボー・レ レート: 57600 0 • データ・ビット: 8 • パリティ: 無 • ストップ プ・ビット: 1 • フロー制 制御: 無 Page 48 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 図 65 ‐ ハイパー ーターミナルのプロパティ 注意 意: Windows の新しいバー の ージョンでは、ハイパータ ターミナルが が含まれてお おりません。ハイパーターミナルの 代替 替のリンクにつ ついては、6 6 ページを参 参照ください。 アプ プリケーションを走ら らせる 25. SSoftConsole メニューから メ ら Run > Resu ume をクリッ ックしてアプ プリケーションを動作させ せます。下の の図に示す よ ようにアプリ リケーション ンを介したユ ユーザ・イン ンターフェースが、ハイパ パーターミナ ナル画面に表 表示されます す。 S SmartFusion2 2 USB OTG コントローラは は OTG 機能の準備ができ きています。 図 66 ‐ ハイパー ーターミナルのメッセージ 26. 3 本目のミニ ニ USB ケーブ ブルで USB OTTG コネクタと PC 上の USB U ポートを を接続します す。コネクタの の位置は、 3 ページの図 35 図を参照して て下さい。 デバ バイスが正しく接続されて ていれば、新 新しいドライ イブ/ボリュー ームが PC 上に に表示されま ます。 Page 49 of 56 v1.6 Sma artFusion2 USB 実習 ガイド 27. 新しいドライ 新 イブを観測す するため Windows Exploreer を開きます す。 図 67 ‐ Windows Ex 6 xplorer 内の新しいドライブ 28. W Windows の Device Manag D ger を開き (SStart > Settings > Control Panel > Syste em > Hardware > Device M Manager)、 U Universal Ser ial Bus contro ollers セクシ ションを展開します。ストレージ・デ デバイスが下 下図のように に表示されま す す。 図 68 ‐ Wind dows Device Maanager 内の USSB Mass storage device Page 50 of 56 v1.6 SmartFusion2 USB 実習ガイド 29. Hardware Manager 内の USB Mass Storage Device を選択し、右クリックして Properties を選択します。USB Mass Storage Device Properties ダイアログ・ボックスの Detail タブを開き、デバイスは SmartFusion2 である ことが表示されます。 図 69 ‐ Mass Storage Device のプロパティ 30. PC から USB ケーブルを抜きます。スタータ・キットで提供された USB mini‐B to USB 2.0A female ケーブル を USB OTG コネクタに挿入して下さい。 図 70 ‐ USB フラッシュ・ドライブを差した USB mini‐B to USB 2.0 A female ケーブル 31. ケーブルのメス側に USB フラッシュ・ドライブを挿します。この設計は以下の USB ドライブで動作します。 • PNY 4GB flash drive • Sandisk 4GB Cruzer Blade • Sandisk 2GB Cruzer Blade 32. いったん接続に成功すると SmartFusion2 USB OTG コアは USB ホスト・モードに切り替わり、USB ホストと して処理を実行します。それは USB マス・ストレージ・デバイスを列挙し USB ドライブ内の全てのファイル Page 51 of 56 v1.6 SmartFusion2 USB 実習ガイド 名を読みます。ファイル名は、ターミナル・エミュレータに表示されます。次ページの図では、Tera Term を使用しております。 図 71 ‐ USB ホスト・モード動作 33. USB フラッシュ・ドライブを外し、再び挿入(もしくは他のフラッシュ・ドライブを挿入)。新しいイタレ ーションとして内容がターミナル・エミュレータに表示されます。 図 72 ‐ ホスト・モードでの 新しいイタレーション Page 52 of 56 v1.6 SmartFusion2 USB 実習ガイド これは、SmartFusion2 USB OTGコアがUSBホストだけでなくUSBデバイスとして動作することを示しています。 34. SoftConsoleの左上角の”Debug”タブ内の”Embedded GDB”を選択し、右クリックして”Terminate and Remove” を選択してアプリケーションを終了します。 図 73 ‐ アプリケーションを終了 35. SoftConsole のデバッグ・パスペクティブを閉じます。 (Window > Close Perspective). 36. SoftConsole (File > Exit) と Libero SoC (Project > Exit) を閉じます。 37. ハイパーターミナルを閉じます。 (File >Exit) もし、切断に関するプロンプトが表示されたら Yes を選択し て下さい。 SmartFusion2 USB 実習の終了 Page 53 of 56 v1.6 SmartFusion2 USB 実習ガイド 質問の答え Page 14 GPIO_0 のアドレスは? 0x30000000 ‐ 0x30000FFF Page 23 デザインで使用されているシーケンシャルおよびコンビナトリアル・セル数を以下に記録してください。 Combinatorial cells (COMB) 28 (Verilog) Sequential cells (SEQ) 11 26(VHDL) 次のクロックの最大周波数を記録してください。 USB_ULPI_0/CCC_0/CCC_INST/INST_CCC_IP:GL0: 146.242 MHz (Verilog) Page 54 of 56 137.325 MHz (VHDL) v1.6 SmartFusion2 USB 実習ガイド 図目次 図 1 ‐ USB ホスト・モードのブロック図 ............................................................................................................................. 5 図 2 ‐ USB デバイス・モードのブロック図 ......................................................................................................................... 5 図 3 ‐ ファームウェアカタログ内の New cores メッセージ ............................................................................................ 7 図 4 ‐ ダウンロード後のファームウェアカタログ ........................................................................................................... 7 図 5 ‐ Libero SoC v11.0 プロジェクト・マネージャ ........................................................................................................... 8 図 6 ‐ Libero SoC v11.0 新規プロジェクトのダイアログ ................................................................................................... 9 図 7 ‐ Libero SoC プロジェクトのパラメータ ................................................................................................................... 10 図 8 ‐ SmartFusion2 System Builder ..................................................................................................................................... 11 図 9 ‐ 変更後の”Select Peripherals”の構成 ........................................................................................................................ 12 図 10 ‐ Configuring GPIO_0_0 ............................................................................................................................................... 12 図 11 ‐ CoreGPIO の構成 ...................................................................................................................................................... 13 図 12 ‐ Configuring MM_UART_0_0 ダイアログ・ボックス ............................................................................................ 14 図 13 ‐ Configuring MSS_USB_0 ダイアログ・ボックス .................................................................................................. 14 図 14 ‐ MSS クロックの構成 .............................................................................................................................................. 15 図 15 ‐ マイクロコントローラの構成 ............................................................................................................................... 16 図 16 ‐ SECDED の構成 ......................................................................................................................................................... 17 図 17 ‐ メモリマップの構成 ............................................................................................................................................... 18 図 18 ‐ SmartDesign キャンバス内の USB_ULPI_0 コンポーネント ............................................................................... 19 図 19 ‐ GPIO_OUT[0]ポートをトップ・レベルに設定 ....................................................................................................... 19 図 20 ‐ GPIO_OE[0]を未使用にマーク ............................................................................................................................... 20 図 21 ‐ INT[0]を Low 固定 .................................................................................................................................................... 20 図 22 ‐ CoreGPIO ポート接続修正後の USB_ULPI コンポーネント ................................................................................ 20 図 23 ‐ DESIGN_FIRMWARE タブ ......................................................................................................................................... 21 図 24 ‐ ファームウェアダウンロード警告 ....................................................................................................................... 21 図 25 ‐ USB ドライバ生成無効の設定後のデザインファームウェアタブ ................................................................... 21 図 26 ‐ デフォルト I/O 属性の設定 ................................................................................................................................... 22 図 27 ‐ Design Hierarchy を展開 .......................................................................................................................................... 24 図 28 ‐ SmartDesign 内の USB_ULPI を開く ....................................................................................................................... 24 図 29 ‐ SmartDesign キャンバス内の USB_ULPI デザイン ............................................................................................... 25 図 30 ‐ PLL アナログ供給電圧を変更 ................................................................................................................................ 26 図 31 ‐ USB_ULPI_top コンポーネントを生成 .................................................................................................................. 27 図 32 ‐ PDC コンストレイント・ファイルのインポート ................................................................................................. 28 図 33 ‐ PDC コンストレイント・ファイルをインポート後の”Information”ダイアログ・ボックス ............................. 28 図 34 ‐ Libero SoC プロジェクト内の PDC コンストレイント・ファイル ...................................................................... 29 図 35 ‐ デザインファイルウィンドウ内 PDC ファイル選択 .......................................................................................... 30 図 36 ‐ “Configure Options”を開く ...................................................................................................................................... 30 図 37 ‐ コンパイル・オプションの”Configuring”設定 ....................................................................................................... 31 図 38 ‐ Designer のレイアウト・オプションを設定 ......................................................................................................... 31 図 39 ‐ 標準レイアウトを設定 ........................................................................................................................................... 32 図 40 ‐ “Generate Programming Data”アイコン ................................................................................................................. 32 Page 55 of 56 v1.6 SmartFusion2 USB 実習ガイド 図 41 ‐ Warning ダイアログ・ボックス ............................................................................................................................ 32 図 42 ‐ 書込みファイル生成 ............................................................................................................................................... 33 図 43 ‐ 書込みファイル生成後のログ一覧 ....................................................................................................................... 33 図 44 ‐ Libero SoC ファイルタブの論理合成、配置配線レポート ................................................................................. 34 図 45 ‐ SmartFusion2 スタータ・キット ........................................................................................................................... 35 図 46 ‐ “Design Flow”ウィンドウからプログラミング・ソフトウェアを起動 ............................................................ 36 図 47 ‐ ボードの再起動を警告 ........................................................................................................................................... 37 図 48 ‐ Libero SoC ”Reports”ウィンドウ内のプログラミング・メッセージ ................................................................. 37 図 49 ‐ プログラミング後の”Design Flow”ウィンドウ .................................................................................................... 38 図 50 ‐ SoftConsole Workspace を起動 ............................................................................................................................... 39 図 51 ‐ SoftConsole プロジェクト・ワークスペース ...................................................................................................... 40 図 52 ‐ SoftConsole プロジェクト内にアプリケション・コードをインポート .......................................................... 41 図 53 ‐ “File System”からインポート ................................................................................................................................. 41 図 54 ‐ SmartFusion_FIC_MSS_CM3_0_app プロジェクト内にインポートするファイルを選択 ................................ 42 図 55 ‐ USB_ULPI_MSS_CM3_app プロジェクト内の main.c ファイルの上書き確認 .................................................. 42 図 56 ‐ アプリケーション・プロジェクト下のインポートされたファイル ............................................................... 43 図 57 ‐ SoftConsole “Project Explorer”内の m2sxxx.h ファイル ........................................................................................ 44 図 58 ‐ ビルド実行後の”Problems”ビュー ........................................................................................................................ 44 図 59 ‐ SoftConsole “Debug Configurations”ダイアログ .................................................................................................... 45 図 60 ‐ USB_ULPI_MSS_CM3_app プロジェクトのデバッグ・ターゲット ................................................................... 46 図 61 ‐ “Display in favorites”内で Debug をチェック ........................................................................................................ 46 図 62 ‐ SoftConsole の Debug パスペクティブ .................................................................................................................. 47 図 63 ‐ Windows の Device Manager ................................................................................................................................... 48 図 64 ‐ ハイパーターミナルで COM ポートを指定 ........................................................................................................ 48 図 65 ‐ ハイパーターミナルのプロパティ ....................................................................................................................... 49 図 66 ‐ ハイパーターミナルのメッセージ ....................................................................................................................... 49 図 67 ‐ Windows Explorer 内の新しいドライブ ................................................................................................................ 50 図 68 ‐ Windows Device Manager 内の USB Mass storage device ...................................................................................... 50 図 69 ‐ Mass Storage Device のプロパティ ........................................................................................................................ 51 図 70 ‐ USB フラッシュ・ドライブを差した USB mini‐B to USB 2.0 A female ケーブル .............................................. 51 図 71 ‐ USB ホスト・モード動作 ....................................................................................................................................... 52 図 72 ‐ ホスト・モードでの 新しいイタレーション ...................................................................................................... 52 図 73 ‐ アプリケーションを終了 ....................................................................................................................................... 53 Page 56 of 56 v1.6
© Copyright 2026 Paperzz