Visual Basic マクロの利用 - 2022.1 日本語

Xilinx Power Estimator ユーザー ガイド (UG440)

Document ID
UG440
Release Date
2022-04-26
Version
2022.1 日本語

次は、自動化フローをサポートするザイリンクス 7 シリーズ の XPE スプレッドシートで定義されている、Visual Basic ファンクションの例です。これらは、Excel シートやその他のプログラムから、ファイルのロード、消費電力レポートの作成、およびデバイス/パッケージ/環境の設定変更を実行する際に有効です。

  • テキスト形式の消費電力レポートを作成し、引数で指定した名前で保存します。
    Public Sub GeneratePowerReportFile(FileName As String)
  • 設定ファイルを作成し、引数で指定した名前で保存します。このファイルは、後に XPower Analyzer で使用できます。
    Public Sub GenerateXPAFile(FileName As String)
  • XPE ファイルを作成し、引数で指定した名前で保存します。このファイルは、後で XPE の現在の設定を復元するのに使用できます。
    Public Sub GenerateXPEFile(FileName As String)
  • 既存の XPE スプレッドシート (引数で指定した .xls* パス/ファイル) をインポートします。
    Public Sub ImportXPEFile(path As String)
  • 配置配線マップ レポートをインポートします (引数で指定した .mrp パス/ファイル)。
    Public Sub ImportMapReportFile(FileName As String)
  • インプリメンテーション結果を .xpe 形式でインポートします。インポート ダイアログ ボックス オプションを再考して、異なる引数の詳細および形式を確認します。
    Public Sub ImportXmlFile(FileName As String, Append As Boolean,DevSettings As
    Boolean, EnvSettings As Boolean, VoltSettings As Boolean, IOSettings As Boolean)
  • 現在読み込まれている消費電力情報のスナップショットを取るか、またはほかの XPE スプレッドシートのスナップショットをロードします。
    Public Sub TakeSnapshot( FileName As String)

    使用方法: FileName として空の文字列を渡してアクティブなワークブックのスナップショットを取るか、またはスナップショットとしてインポートされるほかのワークブックのファイル名を渡します。

    例:

    TakeSnapshot("")
  • デバイス情報を設定し、デバイスが有効であるかどうか確認します。有効なデバイスの場合は True を返し、有効でない場合は False を返します。
    Public Function SetDeviceInfo(Device As String, Package As String, TempGrade As
    String, SpeedGrade As String) As Boolean

    例:

    SetDeviceInfo("XC7K325T", "FBG900", "Industrial", "-1")
  • ResourceName として渡される定義済みの名前によって、特定のリソースのリソース使用率 (%) を読み出します。
    Public Function GetUtilization(ResourceName As String) As Double

    ResourceName の値の例:

    CLOCK_GLOBAL、CLOCK_REGIONAL、LOGIC_LUTS、IO_TOTAL、IO_HP、BRAM_RAMB18

    例:

    my $util = $Book->GetUtilization("BRAM_RAMB18");

    [block RAM] シートの RAMB18 の使用率の値 (たとえば、75% の場合は 75) を返します。

  • すべての電源電圧のデフォルト値を設定します。公称電圧の場合は引数を False に設定し、最大電圧レベルの場合は True に設定します。
    Public Sub SetDefaultVoltages(Maximum As Boolean)
  • [Summary] シートの Device 欄を設定します。このとき、必要に応じて Family 欄が自動的に変更されます。
    Public Function SetDevice(Device As String) As Boolean
  • [Summary] シートの Package 欄を設定します。
    Public Function SetPackage(Package As String) As Boolean
  • [Summary] シートの [Process] 欄を設定します。標準プロセスの場合は、引数を False に設定し、最大プロセスの場合は True に設定します。
    Public Sub SetProcess (Maximum As Boolean)
  • [Summary] シートの Temp Grade 欄を設定します。選択肢には、「Commercial」、「Industrial」、「Q-Grade」、「Extended」などがあります。
    Public Function SetTemperatureGrade (Grade as String) as Boolean
  • [Summary] シートの Speed Grade 欄を設定します。選択肢には、「-1」、「-1L」などがあります。
    Public Function SetSpeedGrade (Grade as String) as Boolean
  • [Summary] シートの Heat Sink 欄を設定します。選択肢には、「Custom」、「None」、「Low Profile」があります。
    Public Function SetHeatSink (Sink as String) as Boolean
  • [Summary] シートの Board Selection 欄を設定します。選択肢には、「Custom」、「JEDEC」、「Small」、「Medium」、「Large」があります。
    Public Function SetBoard (BoardSize as String, BoardLayers as Integer) as Boolean
  • User OverrideJunction Temperature にして値を設定します。
    Public Function SetJunctionTemperature(Temperature As Double, OverRide As
    Boolean) As Boolean
  • User OverrideEffective ThetaJA にして値を設定します。
    Public Function SetEffectiveThetaJA(ThetaJA As Double, OverRide As Boolean) As
    Boolean