« 2020年9月 | トップページ | 2020年11月 »

2020.10.16

ZYNQでECCメモリ使う方法(1)

データシートDS190によれば、ZYNQのメインメモリであるDDR3 SDRAMはECCをサポートしているそうです。

Ds190_ecc

ECCというのは、メモリに書き込むデータに冗長な符号を追加で書き込んでおいて、エラー検出や訂正ができるというもので、サーバ用のDIMMに搭載されているあの機能です。

ZYNQにもそういう機能があるということなので検証してみることにしました。

下の写真は、Cosmo-Z Mini(カスタム版)のDRAMをECC付きのRAMに貼り換えたものです。128MバイトのRAMしか手に入らなかったので、2つ合わせて256Mバイトしかありません。通常のCosmo-Z Miniの4分の1のサイズですが、Linuxが起動したのでよしとしましょう。

Eccdram

さて、ZYNQでECCを有効にする方法をざっと調べてみたのですが、Vivadoの中でZYNQのPSのモジュールを開いて、DDR Configurationを開きます。

Ecc_setting

この中にECCがあるのですが、初期状態ではDisabledになっていて選択できません。これをEnabledにするにはデータバス幅を16bitにする必要があります。

Ecc_setting2_20201020230401

これでECCが有効になります。

PSの設定を変えたのでFSBLを作り直す必要があるのですが、Vitisが出てから(Vivado 2019.2くらいから)はSDK用のhwdefファイルを出力してくれなくなったので、TCLコンソールから write_hedef -force ./sdk/cosmoz_mini_wrapper.hdf と打ち込んで手動で出力するようにします。

これで旧来のXSDKでもFSBLが作れるようになります。

さて、ZYNQはECCを有効にするとDRAMは16bit幅しかサポートしないので、使える容量が半分になってしまうことに注意してください。つまり256MバイトのDRAMを積んでいても使えるのは128Mバイトです。

そのため、通常はU-Bootから作り直すことになるでしょう。U-bootでメモリサイズを決めるのはU-bootのDeviceTreeですね。

U-bootからECC Enabledと表示されて、ECCメモリが認識されたことがわかります。

Ubootecc

ECC有効化のための第一歩です。

| | コメント (0)

2020.10.09

M社で電子部品を買った結果

普段はDigikeyから電子部品を購入しているのですが、今回はDigikeyにない部品だったのでM社から購入しました。

国際輸送はUPSなのですが、日本には木曜日に届いていたのに、通関検査が入ったということで木曜日には配達されませんでした。まぁ、それはよくあること。

それならば金曜日には配達されるだろうと思っていたのですが、甘かった!

M

金曜日になっても届かないのです。UPSに電話して荷物がどうなっているかを問い合わせたら、

「通関待ちの状態のようで、M社が一括で処理することになっています」

「はい?UPSの運送拠点にあるのですよね?」

「これはM社の荷物だからUPSではどうにもできません」

というやり取りでした。

つまり、UPSの流通網は使っているけど、UPSは一切関わることができないようでした。Digikeyみたいに運送を全部するのではなく、国際輸送の最初と最後をM社がやって飛行機の部分をUPSにアウトソーシングしているということなのでしょうか。

そういえば、Digikeyの配達ってUPSの職員が「UPSでーす」って来るけど、M社の場合はどうだったかな・・

 

いままで何百回も電子部品を輸入してきましたが、こんなことは初めてです。

Digikeyからの荷物なら通関で検査が入ってもUPSが処理してくれるから、必ず翌日の朝までにはパスして昼から配送してくれていました。

M社の場合はM社が通関処理をするようで、たくさんの荷物をまとめて処理するらしく、今回は2日も待たされました。土曜日は配達がないので、結局のところ月曜日まで待つ羽目になりました。

結論を言えば、Digikeyから購入するほうが通関リスクが圧倒的にリスクが低いといえます。よほど入手に困っていなければDigikeyから購入するべきだといえるでしょう。

 

| | コメント (1)

2020.10.08

特電のメールマガジンのバックナンバーを閲覧できるようにしました

特電のメールマガジンのバックナンバーが閲覧できるようになりました。

こちらのURLにございます。

https://www.tokudenkairo.co.jp/login2/newsletter.php

Melmaga

「お客様専用サイト」にログインしないと読めないので、登録してくれて、ログインしてくれるメリットになるかな・・・

 

ただ、こうして過去のメールを発掘して読み返してみると、もっと技術情報を書きたかったなあと反省が出てきます。

あまり古いのは載せていません。せいぜい3年弱くらいです。うーん、データベースってすごい。

 

今までのメルマガはテキストベースのメールだったので、文字の配置とか、★とか■の装飾とか、そういう些細なことにこだわってしまって、肝心の技術的な文章が書きにくかったのですが、今後はHTMLメールが出せるようにシステムを改良していくので、もう少し中身の濃いメルマガになるように心がけていきたいと思います。

でも、どうしてメルマガってなかなか書けないんだろう。書き出しの時候のあいさつや季節の話題も苦手だからかな。そういうのを省いて内容だけを淡々と書いていけばいいのかな。

| | コメント (0)

2020.10.06

特電お客様サイトへの新規登録を抜本的に改革しました

特電お客様サイトの新規登録を一新しました。

Loginpage

いままでは、新規のご登録が来たら、私(なひたふ)が過去のメールのやりとりや購入履歴などを確認して、IDが重複しないように新規の番号を割り当てて、それをMicrosoft Accessで作った顧客管理システムに入力し、サーバ上にあるMySQLのデータベースと同期し、手作業で「登録完了メール」を出す・・・という気の遠くなるような作業をしていました。

かなり大変なので、つい登録作業を忘れてしまうこともあり、ユーザ登録に最長で1週間とか10日とかかかってしまうこともありました。お客様から「まだですか⚡」ってクレームが来ることもありました。

大変ご不便をおかけしました。

今日の改良により、新規ユーザがメールアドレスを入れる→ボタンを押す→URLがかかれたメールが送られる→メールに書かれたURLをクリックする→登録完了!というごくあたりまえの「新規ユーザ登録」になりました。

登録申請から登録完了まで5分もかかりません。

本当にご不便をおかけし、お待たせして申し訳ございませでした💦

 

新規ユーザ登録を簡単にした理由は、それだけではありません。

今までは、特電の製品をお買い上げいただいた方しか新規登録を受け付けていなかった(シリアル番号が必須)のですが、本日からは

まだ製品を買っていただいていないお客様、つまり特電にご興味をお持ちの段階の方でもユーザ登録ができる

ようにしました。

 

そんな登録をしてメリットがあるのか・・と思うかもしれません。

今更ですが、メーリングリスト・・いまはメーリングリストって言い方は古いですね。

ニュースレター」といいましょうか。

特電の新製品情報や、ブログには書いていない技術情報、Twitterで書いた散文をちゃんとまとめて検証した情報、バグフィックス情報などを、「お客様ページ」に書くためです。

今後は核心の技術情報や新製品情報をニュースレターに書いて、登録していただいたお客様にメールで送るとともに、「お客様サイト」でバックナンバーを見られるようにします。

そのために、今、Webメールの作り方や、レスポンシブデザインを勉強しなおしています。

表のブログと裏サイトという二刀流。今後は裏のニュースレターを頑張っていきますよ~。

といってもレスポンシブデザインの勉強から入るのでスタートするまでには、あと2週間くらい必要かな。

 

ユーザ登録URLはこちらです。↓

https://www.tokudenkairo.co.jp/login2/login.php

 

誰でも登録できますので、どうぞよろしくお願いします

 

| | コメント (0)

2020.10.03

Windows10でMITOUJTAGからXILINX Platform Cable USBを認識させる方法

Windows 10の環境で、MITOUJTAGがXILINXのPlatform Cable USBを認識しないという報告をいただきましたので、検証してみました。

Xil15

MITOUJTAGでXILINXのPlatform Cable USBを使うには、ISE 14.7か、ISEに含まれれるLabToolsが必要です。

まずはISE 14.7 LabToolsをダウンロードしてインストールします。

ISEのダウンロード先はこちらのURLにあります。

下の画面のようなページが出ますが、必要なのはLabToolsだけなので14.7(Windows10ではないほう)を選んでも同じです。

Xil8

ページの中ほどにLab Toolsがあるので、これをダウンロードし、インストールします。

Xil7

LabTools自体のインストールは問題なく進むと思います。

なお、Windows 7以降でISE14.7を使う際にはlibPortability.dllの差し替えをしないといけないのですが、今回の用途では特にしなくても大丈夫です。

 

インストールが終わって、Platform Cable USBをパソコンに挿すと、下の図のように「Xilinx Platform Cable USB Firmware Loader」というデバイスとして認識されるはずです。

Xil2

Firmware Loaderとは何かというと説明が大変なのですが、Platform Cable USBの中に入っているUSBインタフェースのチップはCypressのEZ-USB FX2というデバイスでReNumerationという機能によってUSBを経由してファームウェアをダウンロードして再起動することができるものです。Firmware Loaderは本番のファームウェアがダウンロードされる前のローダーが動いている状態です。

したがって、Firmware LoaderとなっているときにはPlatform Cable USBとしては動作しません。ただひたすらファームウェアを待ち受けるだけになっています。

問題なのは、Windows10環境下では普通にインストールしてもここまでしかたどり着けないようでした。

 

ここからどうすればよいのかというと、まず、LabToolsをインストールしたディレクトリのbin\nt64を開きます。私はXILINXのツールはHDDに余裕のあるDドライブにインストールすることにしているので、

D:\Xilinx\14.7\LabTools\LabTools\bin\nt64

になります。そして、install_drivers.exeを管理者権限で実行します。

Xil9_20201003175401

必ず管理者権限が必要です。

すると、ケーブルドライバインストーラというダイアログが出て、「Platform Cable USBをいったん切断しろ」と言ってきます。

Xil11

しかし、ここで切断してはいけません。Firmware Loaderの状態でOKボタンを押さないとFirmware Loader用のデバイスドライバがインストールされないようです。

JungoドライバとXilinx Programming Cablesドライバがインストールされるので、両方とも「インストール」を押します。

Xil6

このとき、Jungoドライバも必要です。

インストールが始まるとDOSプロンプトが出て一瞬で消えますが、下の図のようなことをしていました。

Xil10_20201003180701

インストールが完了し、下の図のように、JungoとXilinx USB Cableというドライバが認識されるようになれば成功です。

Xil1

このとき、iMPACTを起動してみてPlatform Cable USBがiMPACTで認識されるかどうかは確認してみてください。

Xil16

iMPACTで認識されないようであれば、MITOUJTAGからも認識されません。

 

 

MITOUJTAGを起動したら、オプション→XILINX Cable Serverの設定を開きます。

Xil12

XILINX Cable Server設定というダイアログが出るので、以下のように設定します。

Xil13

  • ケーブル自動認識でこのケーブルを検出する→オンにする
  • CSEサーバの実行ファイルの検索パス
    • EXEファイルを自動的に検索→オフにする
    • パス→D:\Xilinx\14.7\LabTools\LabTools\bin\nt64\cse_server.exe
    • CSEサーバのバージョン 14.5
  • ケーブルタイプ→xilinx_platformusb

とします。

CSEサーバのバージョンを14.7にすると接続できません。ISE14.7のLabtoolsなのに14.5にするのは、Labtoolsが14.5以降実質変わっていないからです。

これでMITOUJTAGでケーブル自動認識を行うと、Windowsセキュリティの重要な警告というのが出ます。XILINXのcse_server.exeを起動するためなのですが、このプログラムはTCP/IPでの待ち受けをするためです。「アクセスを許可する」を押してください。

Xil5

これでPlatform Cable USBがMITOUJTAGから無事に認識されるようになり、バウンダリスキャンで最新のFPGAの端子を見ることができるようになるはずです。

Xil14

どうしてもうまくいかない場合は以下の点を再点検してみてください。

  • ターゲットボードの電源がONになっていて、Platform Cable USBにVREFが来ているか?(VREFがないとPlatform Cable USBは接続できません)
  • iMPACTから認識できるか?
  • デバイスドライバがFirmware Loaderになっていないか?
  • ISE 14.7のLabToolsは入れたか?
  • Vivadoに付属のドライバが入っているとiMPACTでは使えなくなる。ISE 14.7 LabToolsのinstall_driver.exeを実行するように。ISE 14.7 LabToolsはVivadoでも使える。

これで、XILINXのケーブルを使いながら、バウンダリスキャンによってデバッグが一層はかどることと思います。

| | コメント (0)

« 2020年9月 | トップページ | 2020年11月 »