CUB-43PCIEXP ユーザーズマニュアル

STD-CUB43PCIEXP-V1.3J
CUnet(MKY43) 搭載 PCIexpress ボード
CUB-43PCIEXP
ユーザーズマニュアル
ご注意
1. 本書に記載された内容は、将来予告なしに変更する場合があります。本製品をご使用になる際に
は、本書が最新の版数であるかをご確認ください。
2. 本書において記載されている説明や回路例などの技術情報は、お客様が用途に応じて本製品を適
切にご利用をいただくための参考資料です。実際に本製品をご使用になる際には、基板上におけ
る本製品の周辺回路条件や環境を考慮の上、お客様の責任においてシステム全体を十分に評価し、
お客様の目的に適合するようシステムを設計してください。当社は、お客様のシステムと本製品
との適合可否に対する責任を負いません。
3. 本書に記載された情報、製品および回路等の使用に起因する損害または特許権その他権利の侵害
に関して、当社は一切その責任を負いません。
4. 本製品および本書の情報や回路などをご使用になる際、当社は第三者の工業所有権、知的所有権
およびその他権利に対する保証または実施権を許諾致しません。
5. 本製品は、人命に関わる装置用としては開発されておりません。人命に関わる用途への採用をご
検討の際は、当社までご相談ください。
6. 本書の一部または全部を、当社に無断で転載および複製することを禁じます。
CUB-43PCIEXP ユーザーズマニュアル
はじめに
本マニュアルは、CUnet 専用 IC の一品種である MKY43 を搭載した PCI ボードの CUB-43PCIEXP について記
述します。
CUB-43PCIEXP の利用および本マニュアルの理解に先駆けて、“CUnet 導入ガイド ” を必ずお読みください。
●対象読者
・CUnet を初めて構築する方
・CUnet を構築するために、弊社の CUB-43PCIEXP を初めてご利用になる方
●読者が必要とする知識
・ネットワーク技術に関する標準的な知識
・半導体製品(特にマイクロコントローラおよびメモリ)に関する標準的な知識
●関連マニュアル
・CUnet 導入ガイド
・CUnet テクニカルガイド
・CUnet MKY43 ユーザーズマニュアル
【注意事項】
本書において記載されている一部の用語は、弊社の Web および営業用ツール(総合カタログ等)において記載され
ている用語とは異なっています。営業用ツールにおいては、様々な業界において弊社製品をご理解いただけるよう、
一般的用語を用いています。
CUnet ファミリに関する専門知識は、技術ドキュメント(マニュアル等)を基にご理解ください。
-Ⅲ-
CUB-43PCIEXP ユーザーズマニュアル
目 次
第 1 章 ハードウェア
1.1 特徴 ....................................................................................................................................................................... 1-3
1.2 仕様 ....................................................................................................................................................................... 1-3
1.3 コネクタ仕様 ....................................................................................................................................................... 1-4
1.4 ディップスイッチ ............................................................................................................................................... 1-5
1.5 メモリマップ ....................................................................................................................................................... 1-6
1.5.1 MKY43 へのアクセス ............................................................................................................................... 1-6
1.5.2 CUB-43PCIEXP 独自のレジスタ ........................................................................................................... 1-7
1.6 添付ドライバを使用しない場合のアクセスについて .................................................................................... 1-7
第 2 章 添付ソフトウェア
2.1 概要 ....................................................................................................................................................................... 2-3
2.2 著作権・免責 ....................................................................................................................................................... 2-3
2.3 ファイルの種類 ................................................................................................................................................... 2-4
2.4 使用方法 ............................................................................................................................................................... 2-4
2.5 制限事項 ............................................................................................................................................................... 2-5
2.6 API 仕様 ............................................................................................................................................................... 2-5
2.6.1 CubGetVersion ....................................................................................................................................... 2-5
2.6.2 CubCountDevice .................................................................................................................................... 2-6
2.6.3 CubGetLastError .................................................................................................................................... 2-6
2.6.4 CubOpneHandle ..................................................................................................................................... 2-7
2.6.5 CubCloseHandle .................................................................................................................................... 2-7
2.6.6 CubReadByte, CubReadWord ............................................................................................................ 2-8
2.6.7 CubWriteByte, CubWriteWord ........................................................................................................... 2-8
-Ⅴ-
CUB-43PCIEXP ユーザーズマニュアル
図 目 次
図 1-1 パネル概観 ..................................................................................................................................................... 1-4
図 1-2 コネクタ周辺回路 ......................................................................................................................................... 1-4
図 1-3 CUB-43PCIEXP ボードの設定 ................................................................................................................ 1-5
表 目 次
表 1-1 ボード仕様 ..................................................................................................................................................... 1-3
表 1-2 メモリマップ ................................................................................................................................................. 1-6
表 2-1 API 関数 ........................................................................................................................................................ 2-5
-Ⅵ-
第 1 章 ハードウェア
本章は、CUB-43PCIEXP のハードウェアについて記述します。
1.1 特徴 ..................................................................................................................................................................... 1-3
1.2 仕様 ....................................................................................................................................................................... 1-3
1.3 コネクタ仕様 ....................................................................................................................................................... 1-4
1.4 ディップスイッチ ............................................................................................................................................... 1-5
1.5 メモリマップ ....................................................................................................................................................... 1-6
1.6 添付ドライバを使用しない場合のアクセスについて ..................................................................................... 1-7
CUB-43PCIEXP ユーザーズマニュアル
第 1 章 ハードウェア
本章は、CUB-43PCIEXP のハードウェアについて記述します。
1.1 特徴
CUB-43PCIEXP は、
ステップテクニカ製 MKY43 チップを搭載した PCIexpress 拡張バス対応の CUnet 通信ボードです。
付属の Windows 用のライブラリと併せて利用することにより、MKY43 の機能を簡単に利用しやすいように設計さ
れています。CUB-43PCIEXP は、MKY43 の評価および学習にご利用ください。
CUB-43PCIEXP には 8pin のモジュラコネクタを採用しており、100BASE-TX 用市販の CAT-5 以上のストレートケー
ブルで動作を評価することができます。CUB-43PCIEXP の利用経験は、MKY43 を搭載したマイコンシステムにも活
かす事ができます。
1.2 仕様
CUB-43PCIEXP の仕様を、表 1-1 に示します。
表 1-1 ボード仕様
名 称
CUB-43PCIEXP
搭載チップ
MKY43 × 1 基
通信方式
CUnet 通信方式
転送レート
対応バス
占有リソース
3M / 6M / 12M bps
PCI Express x1 Gen1 準拠した拡張バス
(Low Profile 対応)
16KB の連続したメモリエリア(PnP にて自動割当)
割り込み
1 ライン使用(PnP にて自動割当)
コネクタ
RJ-45 モジュラコネクタ:TM11R-5L-88(50)
電 源
DC +3.3V
消費電流
500mA 以下
使用条件
温度 0 ~ 50 ℃ 湿度 20 ~ 90%(非結露)
サイズ
120mm(W) × 64mm(H) ※パネル部含まず
1-3
第 1 章 ハードウェア
1.3 コネクタ仕様
CUB-43PCIEXP のパネル面とその詳細を図 1-1 に示します。
図 1-1 パネル概観
CN1,CN2 コネクタ周辺回路を図 1-2 に示します。
図 1-2 コネクタ周辺回路
1-4
CUB-43PCIEXP ユーザーズマニュアル
1.4 ディップスイッチ
CUB-43PCIEXP のディップスイッチの設定を、図 1-3 に示します。
複数の CUB-43PCIEXP を同一の機器に搭載する場合には、SW5 のボード ID を設定してください。このボード ID によっ
て、ソフトウェアから特定の CUB-43PCIEXP デバイスを見つけることが出来ます。SW6 は、全て OFF の状態で使用
して下さい。
CUB-43PCIEXP が、マルチドロップ接続の中間位置(通信ケーブルにおける途中の位置)に存在する接続の場合は、
SW4 によるターミネーション設定は、無し(2-3)にしてください。
CUB-43PCIEXP が、マルチドロップ接続の終端位置(通信ケーブルの端)に存在する場合は、SW4 によるターミネー
ション設定を有り(1-2)にしてください。
図 1-3 CUB-43PCIEXP ボードの設定
1-5
第 1 章 ハードウェア
1.5 メモリマップ
CUB-43PCIEXP のメモリマップを表 1-2 に示します。メモリマップ中のアドレスは CUB-43PCIEXP の先頭アドレス
からの相対値であり、実際のアドレスはボードの先頭アドレス値を加算したアドレスになります。
表 1-2 メモリマップ
アドレス
機 能
000H ~ 1FFH
グローバルメモリ(GM:Global Memory)
200H ~ 2FFH
メール送信バッファ(MSB:Mail Send Buffer)
300H ~ 3FFH
レジスタおよびメーカリザーブ(390H ~ 3FFH)
400H ~ 4FFH
メール受信バッファ 0(MRB0:Mail Receive Buffer 0)
500H ~ 5FFH
メール受信バッファ 1(MRB1:Mail Receive Buffer 1)
600H ~ 7FFH
メーカリザーブ領域
C00H
Chip Reset Register
E00H
Board ID Register
1.5.1 MKY43 へのアクセス
表 1-2 のメモリマップに示される “000H ~ 5FFH” アドレスに対してアクセスすることによって、CUB-43PCIEXP に
搭載されている MKY43 へアクセスすることができます。各エリアの詳細は、“MKY43 ユーザーズマニュアル”を
ご参照ください。
“600H ~ 7FFH” アドレスのメーカリザーブ領域はアクセスしないでください。システムを不安
定にする可能性があります。
1-6
CUB-43PCIEXP ユーザーズマニュアル
1.5.2 CUB-43PCIEXP 独自のレジスタ
表 1-2 のメモリマップに示される C00H および E00H アドレスのレジスタは、CUB-43PCIEXP 独自のレジスタです。
以下に、そのレジスタの詳細を示します。
Chip Reset Register アドレス:C00H
ビット:
R/W:
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
0
CRST
W
[ 機能説明 ] CRST(Chip ReSeT )ビット(ビット 0)に “1” をライトすることで、MKY43 の RST 端子へリセット
信号を印加する事ができます。MKY43 の RST 端子へのリセット期間は 280nS です。
また、本レジスタは書込み専用レジスタですので、読み込みを行なった場合のデータは不定です。
BoardID Register アドレス:E00H
ビット:
R/W:
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
---
---
---
---
---
---
---
---
---
---
---
---
---
---
BID1
BID0
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
[ 機能説明 ] BID0,1(BoardID 0,1 )ビット(ビット 0,1)をリードすることによって、SW5 によって設定さ
れているボード ID(BoardID )の値(“0 ~ 3” )を取得することができます(
“1.4 ディップス
イッチ”を参照)
。
1.6 添付ドライバを使用しない場合のアクセスについて
ステップテクニカ社製添付ドライバを使用せずに CUB-43PCIEXP へ直接アクセスする場合には、以下の点について
注意が必要です。
CUB-43PCIEXP には常に 32bit でアクセスを行ってください。そのとき、下位 16bit のデータが有効となり、上位
16bit は使用されません。そのためアクセスするアドレスは MKY43 の実アドレスの 2 倍を指定する必要がありま
す。例えば、アドレス 200H を Read する場合、PCI の 400H を 32bitRead することで、その下位 16bit に MKY43
の 200H の WordData が取得できます。また、アドレス 180H に Write する場合には、CUB-43PCIEXP の 300H に
32bitWrite することで、Write した 32bit データのうち下位 16bit が MKY43 のアドレス 180H に書き込まれます。
CUB-43PCIEXP 独自レジスタに関しましても、同様のアクセスが必要です。
1-7
第 2 章 添付ソフトウェア
本章は、添付ソフトウェアについて記述します。
2.1 概要 ..................................................................................................................................................................... 2-3
2.2 著作権・免責 ...................................................................................................................................................... 2-3
2.3 ファイルの種類 ................................................................................................................................................... 2-4
2.4
使用方法 .............................................................................................................................................................. 2-4
2.5 制限事項 .............................................................................................................................................................. 2-5
2.6 API 仕様 ............................................................................................................................................................. 2-5
CUB-43PCIEXP ユーザーズマニュアル
第 2 章 添付ソフトウェア
本章は、添付ソフトウェアについて記述します。
2.1 概要
CUB-43PCIEXP 添付ディスク内の “DLL” フォルダには、Microsoft Windows XP / 7 に対応したドライバおよび DLL
が含まれております。
初めて CUB-43PCIEXP を搭載して PC を立ち上げる時、Windows のハードウェア追加ウィザードに従い、添付ディ
スクより WDF ドライバをインストールしてください。デバイスドライバのインストールにはアドミニストレータ権
限が必要になりますので、ログインの際にご注意ください。
Windows の仕様上、ユーザアプリケーションから CUB-43PCIEXP へのアクセスは、CUB43PCILP.DLL に含まれる
API を通して行なわれます 。Microsoft Windows XP /7 をホスト OS として利用される場合は、これらの添付ソフ
トウェアを利用することで、Microsoft Visual Studio をはじめ、多数のプログラミングツールを使って簡単に CUB43PCIEXP をコントロールすることができます。
CUB-43PCI-LP、 お よ び、CUB-43PCIEXP は 共 通 の ラ イ ブ ラ リ を 使 用 し ま す。 以 下、CUB43PCIEXP について説明しますが、CUB-43PCI-LP についても同様にご使用いただけます。
CUB-43PCI-LP、および、CUB-43PCIEXP はスリープ機能には対応しておりません。OS のスリー
プ機能を停止した上でご使用ください。スリープに入った場合には、搭載されている MKY43
への電源供給が遮断され、通信が停止します。また、スリープからの復帰時にはリセットがか
かる為、各レジスタは初期化され、GlobalMemory(GM)、及び、MailSendBuffer(MSB)等は
不定の状態になりますので、ご注意ください。
対応 OS や、最新のソフトウェア情報は、弊社 web サイト(http://www.steptechnica.com)をご
確認ください。
2.2 著作権・免責
本製品添付ディスクに収められた、全てのドキュメント・プログラム・プログラムソースの著作権は、株式会社ステ
ップテクニカが所有しています。株式会社ステップテクニカは、以下の注意事項を了承された個人・法人、または、
その他の団体が弊社製品 CUB-43PCIEXP を利用する場合に限り、これら著作物の複製・利用をする権利をライセン
スするものであり、株式会社ステップテクニカに断り無く、これら著作物の一部または全部を改訂・再配布したり、
上記以外の目的のために複製・利用することはできません。
① 本製品添付ディスク内のソフトウェア及び、弊社 web ページより入手した全てのソフトウェ
アの使用による、いかなる結果に対しても弊社は一切責任を負いません。
② ライブラリは、説明に従って正しくお使いください。
③ 仕様・内容は、将来予告無く変更になる場合があります。弊社は、将来への互換性について、
一切保証いたしません。
④ 弊社製品以外の OS や開発環境等に関するお問い合わせはサポートいたしかねます。
⑤ バグ・不具合などを発見された方は、弊社技術部までご連絡ください。
2-3
第 2 章 添付ソフトウェア
2.3 ファイルの種類
添付ディスクの “DLL” フォルダに収められたファイルは以下のとおりです。
【cub43pcilp.dll】
DLL 本体です。Windows のシステムフォルダか、本 DLL を使用するユーザプログラムと同じディレ
クトリにコピーしてお使いください。
【cub43pcilp.lib】
Microsoft Visual C++ 用のインポートライブラリです。VC6.0 によって作成されています。
【cub43pcilp.h】
DLL のヘッダファイルです。ご使用の際は、Windows.h より後ろにインクルードしてください。
2.4 使用方法
添付ディスクの “DLL” フォルダに収められたファイルは以下のとおりです。
cub43pcilp.dll を使いコンピュータに搭載された CUB-43PCIEXP デバイスをコントロールするためには、必要な初期
化処理と終了処理があります。その際の手順を以下に示します。
// DLL バージョン 1.xx 用に作ったアプリケーションの場合
int Version = CubGetVersion();
if( Version < 0x100 || Version > 0x1FF ) {
printf(" 互換性の無いバージョンの cub43pcilp.dll です。\n");
exit(1);
}
//1. コンピュータに搭載された CUB-43PCIEXP デバイスの数を取得します。
//(1 枚しか搭載されていないことが分かっている場合は、省略しても構いません。)
const int Count = CubCountDevice();
if( Count < 1 ) {
printf("CUB-43PCIEXP が存在しません。\n");
exit(1);
}
//2.CUB-43PCIEXP デバイスへのハンドルを取得します。
//(1 枚しか搭載されていないことが分かっている場合は、引数を 0 でオープンします。)
HANDLE CubHandle[Count];
for( int i = 0; i < Count; i++ ) {
CubHandle[i] = CubOpenHandle( i );
if( CubHandle[i] == INVALID_HANDLE_VALUE ) exit(1);
}
//
// この位置で CUB-43PCIEXP へのアクセスが行えます。
//
//3. コントロールの終了したハンドルをクローズします。
for( int i = 0; i < Count; i++ ) {
CubCloseHandle( i );
}
2-4
CUB-43PCIEXP ユーザーズマニュアル
2.5 制限事項
本ライブラリ内の API は複数スレッドから同時に使用することはできません。アプリケーションをマルチスレッド構
成にする場合、同時呼び出しが起こらないよう配慮してください。
2.6 API 仕様
本セクションは、添付ディスクの “DLL” フォルダ内の以下の API 関数仕様を記述します。
表 2-1 API 関数
関 数
CubGetVersion
機 能 概 要
ライブラリのバージョン取得
CubCountDevice
CUB-43PCIEXP デバイスの数を取得
CubGetLastError
CUB API 関数の終了状態を取得
CubOpenHandle
CUB-43PCIEXP ボードへのハンドル・オープン
CubCloseHandle
CUB-43PCIEXP ボードへのハンドル・クローズ
CubReadByte, CubReadWord
CUB-43PCIEXP ボードへのリード・アクセス
CubWriteByte, CubWriteWord
CUB-43PCIEXP ボードへのライト・アクセス
2.6.1 CubGetVersion
書式
UINT CUBAPI CubGetVersion( void );
説明
ライブラリのバージョンを調べます。
パラメータ
なし
戻り値
ライブラリのバージョンを表す符合なし整数値
備考
必須ではありませんが、cub43pcilp.dll を利用するユーザアプリケーションで、DLL に対する互換性チェッ
クを行うことで安全性を高めることが出来ます。ここでいう安全性とは、互換性の無い関数コールをあら
かじめ避けることでプログラムの強制終了などを避けることを意味します。
CubGetVersion() は DLL のバージョンを取得する API です。この API の返す 16 進数のバージョン番号に
は以下の意味があります。16 進 2 桁目以下の数字は互換上無視して構いませんが、3 桁目より上位の値
が変わっている場合、cub43pcilp.dll の API をコールしないことをお奨めします。この互換性チェックは、
初期化処理よりも先に行う必要があります。
2-5
第 2 章 添付ソフトウェア
2.6.2 CubCountDevice
書式
UINT CUBAPI CubCountDevice( void );
説明
存在する CUB-43PCIEXP デバイスの数を調べます。CUB-43PCIEXP の枚数が既に分かっている場合は、呼
び出す必要はありません。この関数で 1 以上の戻り値が得られない場合は、CubOpenHandle() も必ず失敗
します。
パラメータ
なし
戻り値
-1 10 枚以上。
0 1 枚も存在しない。
1 ~ 9 1 ~ 9 枚。
2.6.3 CubGetLastError
書式
UINT CUBAPI CubGetLastError( void )
説明
プロセスが最後に呼び出した API 関数 の終了状態を調べます。
パラメータ
なし
戻り値
cub43pcilp.h に以下のように定義されています。
文字定数 値
CUB_SUCCESS 0 /* 正常終了。 */
CUB_ERR_DEVICENOTEXIST 1 /* デバイスが存在しない。 */
CUB_ERR_ALREADYOPENED 2 /* すでにオープンされている。*/
CUB_ERR_CLOSED 3 /* CubOpenHandle() が一度もコールされていない。 */
CUB_ERR_INVALIDPARAM 4 /* 無効なパラメータでコールされた。 */
CUB_ERR_NORESOUCE 5 /* 実行に必要なリソースが足りない。 */
CUB_ERR_FAILED 6 /* 原因不明により処理が遂行されなかった。 */
CUB_NOTCALLYET 99 /* まだ 1 度も API がコールされていない。 */
2-6
CUB-43PCIEXP ユーザーズマニュアル
2.6.4 CubOpenHandle
書式
HANDLE CUBAPI CubOpenHandle( int Instance );
説明
指定したインスタンスの CUB-43PCIEXP ボードへのハンドルを返します。同じインスタンスから複数のハ
ンドルを得ることも可能です。現バージョンは CUB_ERR_ALREADYOPENED による失敗はありません。こ
れ以降に解説する API はすべて、CubOpenHandle() で取得したハンドルを使って呼び出します。
また、全ての処理が終わったあとは、CubCloseHandle() を呼び出してハンドルを閉じてください。
パラメータ
Instance “0 ” 基点のボードの通し番号。
複数ボードが存在する時に、各ボードのハンドルを個別に得るためのボード番号であり、搭載
されているボードが 1 枚のみであれば、“0 ” を引数にしてオープンします。
戻り値
成功時には、HANDLE 型のハンドルが返されます。
失敗時には、INVALID_HANDLE_VALUE が返されます。原因は、CubGetLastError() によって確認してく
ださい。
INVALID_HANDLE_VALUE 文字定数は、windows.h をインクルードすることにより使用可能です。
2.6.5 CubCloseHandle
書式
BOOL CUBAPI CubCloseHandle( HANDLE CUBHandle );
説明
CubOpenHandle() によって取得したハンドルを閉じます。
パラメータ
CUBHandle 閉じるハンドル。
戻り値
成功時には TRUE、失敗時には FALSE を返します。
2-7
第 2 章 添付ソフトウェア
2.6.6 CubReadByte , CubReadWord
書式
BOOL CUBAPI CubReadByte( HANDLE CUBHandle, ULONG Adr, BYTE* Dat );
BOOL CUBAPI CubReadWord( HANDLE CUBHandle, ULONG Adr, WORD* Dat );
説明
CUB-43PCIEXP の指定アドレスからバイト / ワードデータを取得します。
パラメータ
CUBHandle 対象となる CUB-43PCIEXP へのハンドル。
Adr
ボード先頭からのオフセットアドレス。ワードアクセスでは 2 の倍数でなくてはいけません。
Dat
取得した値を格納するバイト / ワード領域へのポインタ。
戻り値
成功時には TRUE、失敗時には FALSE を返します。
2.6.7 CubWriteByte , CubWriteWord
書式
BOOL CUBAPI CubWriteByte( HANDLE CUBHandle, ULONG Adr, BYTE Dat );
BOOL CUBAPI CubWriteWord( HANDLE CUBHandle, ULONG Adr, WORD Dat );
説明
CUB-43PCIEXP の指定アドレスへ、バイト / ワードデータを書き込みます。
パラメータ
CUBHandle 対象となる CUB-43PCIEXP へのハンドル。
Adr
ボード先頭からのオフセットアドレス。ワードアクセスでは 2 の倍数でなくてはいけません。
Dat
書き込むバイトデータ / ワードデータ。
戻り値
成功時には TRUE、失敗時には FALSE を返します。
2-8
■開発・製造
株式会社ステップテクニカ
〒 358-0011 埼玉県入間市下藤沢 757-3
TEL: 04-2964-8804
http://www.steptechnica.com/
info@steptechnica.com
CUnet(MKY43) 搭載 PCIexpress ボード
CUB-43PCIEXP
ユーザーズマニュアル
ドキュメント No.:STD-CUB43PCIEXP-V1.3J
発行年月日:2014 年 6 月