Article header library fpga  11

USB-Blaster™ II の TCK 周波数を変更してみよう

Article header hanako 25x25  67

こんにちは。
マクニカでインテル® FPGA 製品の技術サポートをしている インテル・アルテラ・ハナコ です。
Can't recognize silicon ID for device

インテル FPGA ダウンロード・ケーブル II(通称 USB-Blaster™ II)を使用して FPGA にデータ転送したり、インテル製のコンフィギュレーション・デバイスにプログラミングをする際に、このエラー・メッセージが出た場合は、まず以下の FAQ を確認しましょう。

Can’t recognize silicon ID for device というエラーが表示され、プログラミングができません。

この要因の5番目にある "ノイズの影響" だった場合に試してもらいたいことがあります。
それは USB-Blaster II の TCK 周波数を変える!!

USB-Blaster II の TCK 周波数は、デフォルト 24MHz です。
信号品質(シグナル・インテグリティ)低下の度合いにもよりますが、TCK の周波数を下げることで回避できるかもしれません。 また、FPGA へのダウンロードのタイミングが 24MHz 動作を許容しないときにも、有効な方法です。

Notes :
・ USB-Blaster は TCK 周波数を変更できません。TCK 周波数は 6MHz (typ) です。

TCK 周波数はいくつに変更できる?

TCK の周波数に指定できるラインナップは、下記のとおりです。
  • 24 MHz
  • 16 MHz
  • 6 MHz
  • 24/n MHz (10 KHz ~ 6 MHz;n は整数)

TCK 周波数を変更する方法

USB-Blaster II の TCK 周波数を変更する方法は、Quartus® Prime のエディションによって異なります。

Notes :
事前にパソコンと USB-Blaster II を接続してから変更作業を行ってください。
変更した TCK 周波数は、パソコンからケーブルを外すと初期化されます。その都度変更作業を行ってください。

Quartus Prime Pro Edition における TCK 変更方法

  1. Quartus Prime Pro Edition の Programmer を起動します。

  1. Programmer の Hardware Setup ボタンをクリックし、Currently selected hardware のプルダウン・リストから USB-Blaster II を選択します。
    Hardware frequency 欄に、24000000 (Hz) が表示されます。

Article header 20190130 img1  1

Hardware Setup 画面

  1. 設定したい TCK の周波数の値を、Hardware frequency 欄に入力します。
    例えば、16MHz に変更したい場合はこのように設定します。

Article header 20190130 img2  1

TCK 周波数を 16MHz に設定

  1. [Close] ボタンをクリックします。

以上で TCK 周波数の変更作業は完了です!

  1. (オプション作業) 現在設定されている TCK 周波数は、再び Programmer の Hardware Setup 画面を起動して確認できます。



Quartus Prime Standard および Lite Edition における TCK 変更方法

  1. Quartus Prime Standard (Lite) Edition の Programmer を起動します。

  1. Programmer の Hardware Setup ボタンをクリックし、Currently selected hardware のプルダウン・リストから USB-Blaster II を選択します。

  1. コマンドプロンプトを起動します。(Nios® II Command Shell でもOK。)

  1. cd コマンドで Quartus Prime のインストール・フォルダ下の bin64 フォルダ へ移動します。

  1. jtagconfig コマンドで “cable number” を確認します。
jtagconfig
パソコンに装着されている USB-Blaster 系のダウンロード・ケーブルの本数分が表示されます。下記は、ダウンロード・ケーブル1つだけが装着されている状態です。
この、USB-Blaster II の先頭に表示された番号(cable number)を覚えておきます。

Article header mos 20190206 img1  1

jtagconfig コマンド

  1. 以下のコマンドにより、TCK の周波数を設定します。
jtagconfig --setparam <cable number> JtagClock <frequency><unit prefix>
表1. パラメータの説明
cable number 操作3で確認した番号
frequency 設定した TCK 周波数の数値
unit prefix 周波数の単位 (Hz を除く)。MHz の場合は M、KHz の場合は K を入力する。Hz の場合は未入力。

例えば、16MHz に変更したい場合はこのように設定します。

Article header mos 20190206 img2  2

TCK = 16MHz に設定

TCK = 150KHz に変更したい場合は、"24/160" ではなく "150K" または "150000" を入力します。

Article header mos 20190206 img3  1

TCK = 150KHz に設定

以上で TCK 周波数の変更作業は完了です!

  1. (オプション作業) 現在設定されている TCK 周波数は、以下のコマンドで確認できます。
jtagconfig --getparam <cable number> JtagClock
以下のように、現在の設定値が表示されます。

Article header mos 20190206 img4  1

TCK = 16MHz を確認



私が検証したときに確認できたエラー・メッセージの一部を以下に書いておきます。これらは、TCK の周波数を下げることでエラーを回避することができました。

[エラー・メッセージの一例]
・ Can't recognize silicon ID for device 1
・ Connected stsyem ID hash not found on target at expected base address.
・ Flash Loader IP not loaded on device 1
・ No Nios II target connection paths were located. Check connections and that a Nios II .sof is downloaded.

参考にしてください。


おすすめ記事/資料はこちら

おすすめ FAQ はこちら

関連タグ