2010年9月27日月曜日

SMM(Simple MicroBlaze Micro controler) のコンセプト

<概要>
  • MicroBlaze は 70 以上のパラメータが設定可能で、高度なエンベデッド ツールを使用するため、シンプルなマイクロコントローラで十分なアプリケーションの場合はシステム設計が面倒となることもあります。→SMMの出番!
  • HDLに直接インスタンシエート。
  • これは 2 つのハードウェア インプリメンテーション ファイルと 1 つのソフトウェア定義ファイルがあればよい。
  • 11.1 以降のツールには、MicroBlaze のソフトウェア開発向けにスタンドアロンのソフトウェア開発キット (SDK) が付属され、フル機能のエンベデッド開発キット (EDK) がなくても C および C++ アプリケーションの作成とデバッグが行える。
<FPGAデザインフロー>
  • ISE を使用した一般的な FPGA インプリメンテーション フローと同様。任意の階層にHDLでインスタンシエートできる。
  • マイクロコントローラのネットリスト (smm.ngc) とブロック RAM メモリのマップ ファイル (smm.bmm) の 2 つ。

<ソフトウェアアプリケーションフロー>
  • マイクロコントローラ アプリケーションの開発を始めるために必要な情報すべてが 1 つのソフトウェア記述ファイル (smm.xml) に含まれています。
  • アプリケーションの開発は、FPGA デザイン フローと切り離して開始できる。
  • ISE 11.1 以降では、SDK がスタンドアロンのオプションとして提供されている。
  • SDK には、ソフトウェア アプリケーションの開発に必要なツール、ドライバ、ライブラリ、ユーティリティすべてが含まれている。
  • ソフトウェア アプリケーションは、C または C++ で作成したものをマイクロコントローラのブロック RAM に格納できます。
  • デ バ ッ グ オ プションを使用すると、アプリケーションをソース レベルで完全にデバッグでき、メモリ、レジスタ、変数の内容が確認できます。
  • デバッグを容易にするためにアプリケーション内にブレークポイントを設定することも可能。
  • デバッグには、FPGA のコンフィギュレーションと同じケーブルが使用できます。
  • SMMの詳細は、アプリケーション ノート XAPP1141 を参照してください。

2010年9月24日金曜日

XC6SLX16

XILINX Spartan6 XC6SL16
PowerPCのハードコアが入っているらしいが、データシートから読み取れない。そもそもハードコアなの?
    => ハードコアのラインナップは無い!

■その1■
Xcell Journal 69-70 より(page26)
「ザイリンクスは 2000 年以来、ハード (PowerPC®405、PowerPC 440) およびファブリック ベースの(MicroBlaze™) エンベデッドマイクロプロセッサを提供してきました。」

XILINXがハードコア入りのFPGAを供給していることは間違いない。


■その2■
2009年1月29日XILINXの記者発表会の翌日のSenior Director, Product Marketing, Advanced Products GroupのCharles Tralka氏のインタビュー内容

【進化したFPGA - Virtex/Spartan-6にXilinxの考えるFPGAの未来を見る】 
(マイコミジャーナル  2009/04/07)
http://journal.mycom.co.jp/articles/2009/04/07/xilinx_tralka/index.html

  • Q:Virtex-5では「PowerPC 405」と「PowerPC 440」がHard Coreとしてラインナップされていました。ただ昨日の話では、Virtex-6とSpartan-6向けにHard CoreのCPUは計画が無いという事でしたが、本当のところどうなんでしょう?
  • X:1つ言えることは、我々は引き続き将来製品に統合するCPUについての評価を行っているという事だ。なので、将来は何かしらのアナウンスをすることができるかもしれない。
  • Q:ただ将来にそうしたHard Coreを提供する事は可能なわけですよね?
  • X:現在提供しているPowerPCに関しては、今後も引き続きサポートしてゆく。もちろん、それはVirtex-5で、という意味で、Virtex-6ではない。

■その3■
プレスリリース 2009/02/03
http://www.eis-japan.com/wl-news/wlnews.cgi?id=release&no=1015
  • ザイリンクス社とアルテラ社がくしくも同じ日に40nm/45nmプロセスを使用した新製品を発表。
  • 従来のVirtex-5の後継にあたるVirtex-6ファミリと、Spartan-3の後継にあたる、Spartan-6ファミリ。
  • Virtex-6には40nmプロセス(12層配線)を、Spartan-6には45nm(9層配線)の最先端プロセス。
  • ファンダリ・パートナは、台湾のUMC、それに今回から韓国のサムソンが新たに加わり、東芝の名前はない。

  • しかし、Vitex-5で提供されていたPowerPCコア内蔵のプラットフォーム(FXT)は、Virtec-6で提供されない。これは、あまり需要が見込めないと判断されたためであろう。PowerPCのヘビー・ユーザには少し残念な知らせだ。

  • Virtex-6 LXT FPGA - 高性能なロジック、DSP、低消費電力の GTX 6.5 Gbps シリアル トランシーバを必要とするアプリケーション向けに最適化されたプラットフォーム
  • Virtex-6 SXT FPGA - 超高性能 DSP と低消費電力の GTX 6.5 Gbps シリアル トランシーバを必要とするアプリケーション向けに最適化されたプラットフォーム
  • Virtex-6 HXT FPGA- 最高 11.2 Gbps までサポートする 64 GTH による最高速のシリアル接続を必要とする通信用アプリケーションに最適化されたプラットフォーム
  • Spartan-6 LX FPGA : 低コスト性が絶対的に要求されるアプリケーション用に最適化されたプラットフォーム
  • Spartan-6 LXT FPGA : LX プラットフォームを拡張して最大 8 個の 3.125 Gbps GTP トランシーバと PCI Express 対応コアを搭載したプラットフォーム

2010年9月7日火曜日

XILINX Foundation ISE5.1i 簡単操作ガイド

<Simulation>
  • Modelsim Xilinx版を付属
  • VHDL/Verilogのいずれもサポート ミックス言語はサポートしない
  • ISEとは別途インストール

XSTの設定

2010年9月2日木曜日

SIMetrix/SIMPLIS スケール

<使用できるスケール>

<ユニバーサル電圧源>
  • AC電圧
  • DC電圧
  • パルス波
  • 正弦波
  • ランダム雑音波
  • テキスト記述の電圧              の種類がある。

2010年9月1日水曜日

PIC USB Framework

<準備>
  • MicrochipのホームページからUSB Framework を入手
         - MAL:Microchip Application Libraries (インストーラー)をダウンロード
         - v2010-08-04 をダウンロードした
  • インストール
         - Microchip Solution v2010-08-04 が作成され、そこにインストールされた
  • workディレクトリ作成
  • workディレクトリに次のディレクトリをコピー
         - Microchip
         - USB Device -CDC -Basic Demo
  • CDC -Basic Demo -Firmware \ USB Device -CDC -Basic Demo -C18 PICDEM FSUSB.mcp を実行
  • 何も変更せずにビルド -> BUILD SUCCEEDED

<PIC18F2550用に変更>
  • デバイスを変更 Configure>SelectDevice デバイスをPIC18F2550に設定
  • ビルドするとエラーになる HardwareProfile が定義できないので
  • PIC4550用HardwareProfileをコピーして別名定義、それをPI24550用HardwareProfileとし読み込むことにする
  • PIC2550用HardwareProfileはコピーしたものからLEDポートの定義を変更
  • PIC4550用LinkerScriptをコピーして別名定義、それをPI24550用LinkerScriptとし読み込むことにする
  • PIC2550用LinkerScriptはコピーしたものから FILES p18f2550.lib と変更
  • ビルド -> BUILD SUCCEEDED

<プログラム>
  • デバイスにプログラム
  • LEDが点滅する
  • IDEとの接続を切り、USBでPCと接続するとLED点滅している -> プログラム成功

<PCのデバイス認識>
  • USBケーブルでPCに接続
  • デバイスドライバインストールを促すダイヤログをキャンセル
  • デバイスマネージャを開く
  • デバイス認識ができていないデバイスを右クリック指定してドライバ更新を選択
  • ファイルを指定して.. を選択
  • 同プロジェクトのinfを選択し、デバイスドライバのインストール完了

<動作確認>
  • デバイスマネージャでCOM5に認識を確認
  • TeraTermを開く
  • COM5,8,n,1 の設定
  • 文字を送信すると+1のコードが返信される

2010年8月27日金曜日

PIC PICKit3

<Microchip リンク>

PICkit3ポスター
PICkit3ユーザーズガイド
PICkit3 Debug Express C Lesson

<概要>
  • PICのプログラマー/デバッガでありMPLab8.2以降で操作できる
  • プログラマコネクタの端子機能

  • LED表示



  • サポート内容


<操作手順>

  • ターゲットとの接続

  • プログラムとデバッグに必要な3ピン(Vpp/PGC/PGD)を接続しVDD/GNDを接続たら完了

  • PICkitからの給電と、外部電源の2種の電源供給に対応

  • 外部供給を推奨

  • PICkitからの給電は30mAまで



  • PGC/PGDはPULL-UPしないこと:PICkit内に4.7kΩのPull-Downが入っている

  • PGC/PGDにコンデンサをつけないこと:プログラム/デバッグの高速動作を阻害する

  • Vppにコンデンサをつけないこと:Vppの高速動作を阻害する、Pull-Upだけで十分

  • PGC/PGDにダイオードをつけないこと:双方向通信
  • デバッギング要件
   - PICkit3がMPLabIDEと通信する
   - Vpp、PGC、PGD、VSS、VDD が接続されている

   - ターゲットデバイスが通電しファンクションが動作している、オシレータが動いている

   - コンフィグレーションレジスタが正しく設定されている
     オシレータが内部、外部、etc
     WDTがディセーブルにすること
     コードプロテクションはディセーブルにすること
     テーブルリ-ドプロテクションはディセーブルにすること

   - LVPはディセーブルにすること

  • デバッガの導入シーケンス→デバッグ詳細
   - デバッガをPICkit3に設定 : Debugger>Select Tool>PICkit 3
   - アプリケーションコードはデバッガ用にコンパイル : Project>Build>Configuration>Debug
   - プログラム書き込み : Debugger>Program
   - ”debug executive” program がメモリ後半エリアに書き込まれる
     デバイスによっては専用エリアに書き込まれるものもある
     ユーザープログラムは”debug executive” program のエリアを使用することはできない
   - “in-circuit debug” registers がイネーブルになる
   - VPP/MCLR をLowにしてターゲットデバイスをリセット
   - デバッガスタートDebugger>Run

  • デバッガスタートでリセットベクタからプログラムがスタート

  • ブレークポイントのアドレスまでプログラムが動作するとプログラムがhaltする
  • プログラミング
   - ヘッダボードなしでプログラムできる
   - プログラマをPICkit3に設定 : Programmer>Select Programmer
   - プログラムはリリース用にする : Project>Build Configuration>Release.
   - Programmer>Program は Debugger>Program と異なりin-circuit debug registersをディセーブルにする
   - プログラム後に#MCLRをトグルする
   - ICPSを用いてプログラムするのでVpp、PGC、PGDの接続が必要
   - プログラムにクロックは不要
   - コードプロテクション、WDT、テーブルリードプロテクション等の全てのモードのプログラムが可能
   - 
   - 


SIMetrix/SIMPLIS 特徴

<デバイスモデルの組み込み>
  • デバイスモデルは電気的特性を規定するテキストファイル
  • .MODEL、.SUBCKTで始まる文
  • 主要半導体メーカーが自社製品のデバイスモデルをウェブサイトで公開
  • SIMetrixは2300種類の市販デバイスのシンボル情報を書き込んだデータベース(all.cat)があり、シンボルとの紐付けは自動
<充実したグラフ表示機能>
  • 拡大/縮小
  • 座標軸の追加/削除
  • グラフ画面の追加/削除
  • カーソルによる値の読み取り
  • 測定値の表示(電圧/電流/消費電力/-3dBカットオフ周波数/高調波ひずみ率)
  • 解析終了後に任意のポイントの電圧/電流を表示できる
<その他>
  • ビヘイビアモデルで大規模システムを高速にシミュレーション