//RAM Model
`define RAM_W (256+8-1)
module SDP_RAM (
clock,
data,
rdaddress,
wraddress,
wren,
q);
input clock;
wire clock;
input [7:0] data;
wire [7:0] data;
input [8:0] rdaddress;
wire [8:0] rdaddress;
input [8:0] wraddress;
wire [8:0] wraddress;
input wren;
wire wren;
output [7:0] q;
wire [7:0] q;
reg [7:0] mem[`RAM_W:0];
reg [7:0] sft_1;
reg [7:0] sft_0;
// RAMライト
always
@( posedge clock )
begin :PR_MEM_W
if (wren == 1'b1)
begin
mem[wraddress] <=data[7:0];
end
end
// RAMリード
always
@( posedge clock )
begin :PR_MEM_R
begin
sft_1 <= sft_0;
sft_0 <= mem[rdaddress];
end
end
assign q = sft_1;
endmodule
2010年11月24日水曜日
2010年9月27日月曜日
SMM(Simple MicroBlaze Micro controler) のコンセプト
<概要>
<ソフトウェアアプリケーションフロー>
- MicroBlaze は 70 以上のパラメータが設定可能で、高度なエンベデッド ツールを使用するため、シンプルなマイクロコントローラで十分なアプリケーションの場合はシステム設計が面倒となることもあります。→SMMの出番!
- HDLに直接インスタンシエート。
- これは 2 つのハードウェア インプリメンテーション ファイルと 1 つのソフトウェア定義ファイルがあればよい。
- 11.1 以降のツールには、MicroBlaze のソフトウェア開発向けにスタンドアロンのソフトウェア開発キット (SDK) が付属され、フル機能のエンベデッド開発キット (EDK) がなくても C および C++ アプリケーションの作成とデバッグが行える。
- 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
■その3■
プレスリリース 2009/02/03
http://www.eis-japan.com/wl-news/wlnews.cgi?id=release&no=1015
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>
XSTの設定
- Modelsim Xilinx版を付属
- VHDL/Verilogのいずれもサポート ミックス言語はサポートしない
- ISEとは別途インストール
XSTの設定
2010年9月2日木曜日
2010年9月1日水曜日
PIC USB Framework
<準備>
- v2010-08-04 をダウンロードした
- USB Device -CDC -Basic Demo
<PIC18F2550用に変更>
<プログラム>
<PCのデバイス認識>
<動作確認>
- MicrochipのホームページからUSB Framework を入手
- v2010-08-04 をダウンロードした
- インストール
- workディレクトリ作成
- workディレクトリに次のディレクトリをコピー
- 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
<概要>
- Vpp、PGC、PGD、VSS、VDD が接続されている
- ターゲットデバイスが通電しファンクションが動作している、オシレータが動いている
- コンフィグレーションレジスタが正しく設定されている
オシレータが内部、外部、etc
WDTがディセーブルにすること
コードプロテクションはディセーブルにすること
テーブルリ-ドプロテクションはディセーブルにすること
- LVPはディセーブルにすること
- アプリケーションコードはデバッガ用にコンパイル : Project>Build>Configuration>Debug
- プログラム書き込み : Debugger>Program
- ”debug executive” program がメモリ後半エリアに書き込まれる
デバイスによっては専用エリアに書き込まれるものもある
ユーザープログラムは”debug executive” program のエリアを使用することはできない
- “in-circuit debug” registers がイネーブルになる
- VPP/MCLR をLowにしてターゲットデバイスをリセット
- デバッガスタートDebugger>Run
- プログラマをPICkit3に設定 : Programmer>Select Programmer
- プログラムはリリース用にする : Project>Build Configuration>Release.
- Programmer>Program は Debugger>Program と異なりin-circuit debug registersをディセーブルにする
- プログラム後に#MCLRをトグルする
- ICPSを用いてプログラムするのでVpp、PGC、PGDの接続が必要
- プログラムにクロックは不要
- コードプロテクション、WDT、テーブルリードプロテクション等の全てのモードのプログラムが可能
-
-
PICkit3ポスター
PICkit3ユーザーズガイド
PICkit3 Debug Express C Lesson
<概要>
- PICのプログラマー/デバッガでありMPLab8.2以降で操作できる
- プログラマコネクタの端子機能
- LED表示
サポート内容
<操作手順>
ターゲットとの接続
![]() |
|
![]() |
|
- デバッギング要件
- Vpp、PGC、PGD、VSS、VDD が接続されている
- ターゲットデバイスが通電しファンクションが動作している、オシレータが動いている
- コンフィグレーションレジスタが正しく設定されている
オシレータが内部、外部、etc
WDTがディセーブルにすること
コードプロテクションはディセーブルにすること
テーブルリ-ドプロテクションはディセーブルにすること
- LVPはディセーブルにすること
- デバッガの導入シーケンス→デバッグ詳細
- アプリケーションコードはデバッガ用にコンパイル : Project>Build>Configuration>Debug
- プログラム書き込み : Debugger>Program
- ”debug executive” program がメモリ後半エリアに書き込まれる
デバイスによっては専用エリアに書き込まれるものもある
ユーザープログラムは”debug executive” program のエリアを使用することはできない
- “in-circuit debug” registers がイネーブルになる
- VPP/MCLR をLowにしてターゲットデバイスをリセット
- デバッガスタートDebugger>Run
![]() |
|
- プログラミング
- プログラマをPICkit3に設定 : Programmer>Select Programmer
- プログラムはリリース用にする : Project>Build Configuration>Release.
- Programmer>Program は Debugger>Program と異なりin-circuit debug registersをディセーブルにする
- プログラム後に#MCLRをトグルする
- ICPSを用いてプログラムするのでVpp、PGC、PGDの接続が必要
- プログラムにクロックは不要
- コードプロテクション、WDT、テーブルリードプロテクション等の全てのモードのプログラムが可能
-
-
登録:
投稿 (Atom)








