雑誌無償購読申込み 最新号 バックナンバー 広告資料請求 EDN Japanについて お問合せ
雑誌無償購読申し込み
メールニュースレター登録
登録内容変更
アナログ IC/ディスクリート
電源/電池/コントローラー
PLD / メモリー
組み込みシステム
コンピュータ&ボード
EDA/IP/CAE/ソフトウェア
電子部品
計測器
ディスプレイ
デジタル家電
通信・ネットワーク
カーエレクトロニクス/産業機器
EDN Japan 記事検索
検索方法の詳細
雑誌無償購読申込み ニュースレター登録 この記事に対する感想/ご意見
designideas
2004年1月号
ボード・テストに使える簡単なバス・エミュレーター

ナブディッシュ・グプタ 米イリノイ州在住
Navdhish Gupta  
 組み込み機器を開発する際、ハードウエアのテストにファームウエアの開発が必要になることがある。このとき、ファームウエアの開発が間に合わないことがしばしば起こる。対応策としては、マイクロプロセッサー・エミュレーターで代用する方法がある。ただしマイクロプロセッサー・エミュレーターは高価で、使いこなすのが難しい。このため、開発したハードウエアに搭載してあるデバイスのレジスター内容を読み出したり、コンフィギュレーションの内容を変更したりといった簡単な機能だけを利用したいハードウエア開発者には、マイクロプロセッサー・エミュレーターは向かない。
 図1に示したのは、簡単なバス・エミュレーターである。高性能のプロセッサー・バスが不要な場合、つまり開発したボードに搭載したデバイスの内部レジスターに読み出し/書き込みアクセスさえできればよいという場合に、このエミュレーターが使える。ハードウエアのコンフィギュレーションやテストには十分である。
 米パララックス(Parallax)社のワンチップ・マイコンを搭載したモジュール「BASIC Stamp 2」と、回路規模が小さいCPLD*で構成した。ISA*バスに似た16ビット入出力バスをエミュレーションする機能を備えている。図2に、バスのタイミング・パラメーターを示した。図2(a)が書き込みサイクルのタイミング、図2(b)が読み出しサイクルのタイミングである。
 このバス・エミュレーターは通常のプロセッサー・バス・エミュレーターに比べると動作速度がはるかに低い。ただしハードウエア・テスト時に必要になる、レジスターの読み出しやコンフィギュレーションには十分だ。さらに、図1と同様の構成でほとんどのプロセッサー・バスをエミュレーション可能である。今回は簡単に説明するために、ISAバスに似た16ビット・バスをエミュレーションする場合の設計例を示した。
 このバス・エミュレーターは、図1に示したハードウエアと、BASIC Stamp 2用ソフトウエア*1)を組み合わせて使う。使用時には、エミュレーターを5Vの電源に接続する。ホスト・システムはパソコンを使う。キーボードとモニター、シリアル・ポートを備えたパソコンを用意する。パソコンには、「HyperTerm」のような簡単なターミナル・ソフトウエアをインストールしておく。パソコンとBASIC Stamp 2は、BASIC Stamp 2のプログラム用シリアル・ケーブルで接続する。
Advertisement
 このシリアル・ケーブルを使って2つの機能を利用できる。1つはBASIC Stamp 2に搭載したマイコンにプログラムを書き込む機能で、もう1つはターミナル・ソフトウエア経由でマイコンと交信する機能である。2つの機能は、DTR端子とATN端子を接続/切断するスイッチS1を使って切り替える。スイッチをオンしてDTR端子とATN端子を接続すると、マイコンにプログラムを書き込める。オフにすると、ターミナル・ソフトウエア経由でBASIC Stamp 2のマイコンと交信可能になる。パソコンのキーボードに命令を入力すると、結果がモニターに表示される。
 エミュレーターは、開発したハードウエア(ボード)の正規のプロセッサー・バス経由で、テストやコンフィギュレーションが必要なデバイスに接続する。例えば、ユーザー論理を実装したFPGAなどに接続する。このとき、本来のプロセッサーはトライステート状態に設定しておくか、ボードから取り外しておく。従って、ハードウエアを設計する段階で、プロセッサーの挿抜が可能なソケットをボードに載せておくか、あるいはボード上にテスト用のポートを設けておく。
BASIC Stamp 2用のファームウエアは、エミュレーターのヘッダーへの制御信号であるIOWとIOR、BALE、ENDIRを変化させることで、プロセッサー・バスの信号サイクルをエミュレーションする。より厳しいバス・タイミングを必要とする用途では、CPLDの中に簡単な有限ステート・マシンを組み込んで、制御信号を直接生成すればよい。
 CPLDにはシフト・レジスターなどを収めた*2)。このシフト・レジスターを使って、BASIC Stamp 2のシリアル・アドレス/データ入出力と、エミュレーションした16ビットのパラレル・アドレス/データ・バスを接続する。このほかCPLDには入出力バッファーが内蔵されており、これを使って制御信号の電圧レベルをエミュレーターのヘッダーに接続可能な電圧レベルに変換する。
 今回は、CPLDに米ラティスセミコンダクター(Lattice Semiconductor)社の「ispMACH 4128V」を使った。このCPLDは最大5.5V入力が可能である。また、入出力端子を64個も備えている。ボードに搭載した状態でプログラムを書き換えることも可能だ。そのために、「IEEE1532」準拠のISP*インターフェースを備えた。これらの機能を利用できるため、このCPLDはエミュレーターに必要な論理回路を実装するのに都合がよい。

用語解説 / 会社情報
【CPLD】
complex programmable logic device
▲本文へ戻る
【ISA】
industry standard architecture
▲本文へ戻る
*1)
ソース・コードは米EDN誌のホームページで入手できる。アドレスは下記の通り。
http://www.reed-electronics.com/ednmag/contents/images/di3245l1.txt
▲本文へ戻る
*2)
Verilogのコードは米EDN誌のホームページで入手できる。アドレスは下記の通り。
http://www.reed-electronics.com/ednmag/contents/images/di3245l2.txt
▲本文へ戻る
【ISP】
In System Programmable
▲本文へ戻る
「design ideas」への寄稿のお願い
米国EDN誌の日本語版「EDN Japan」は、米EDN誌と同様に「電子技術者の仕事に役立つ」誌面作りをモットーに掲げ、米EDN誌で注目を集めた記事の翻訳のほか、日本国内で独自に取材し執筆した記事を掲載して行く予定です。
弊誌「EDN Japan」では、「design ideas」と呼ぶ1ページ前後のコラムを毎号6ページ〜8ページ掲載しています。これは、米EDN誌の「名物コラム」で、電子回路設計などの現場で働く電子技術者の皆様からのご寄稿により成り立っています。そこで半導体メーカーや電子機器メーカーの電子技術者のほか、大学などの研究者、一般の方(コンサルタント業務に携わる方など)の皆様からの「design ideas」へのご寄稿を募集します。
【記事内容】
電気/電子回路の新たな提案とその説明。
半導体製品に組み込まれた新たな回路の紹介。
半導体/電子部品の面白い使い方。
半導体/電子回路の性能を引き出す、あるいは部品の弱点を補う回路の提案。など。
上記以外のテーマについては、別途ご相談ください。
【原稿の長さ】
原則として1〜2ページ。文字数は約1000〜1500、図版は1〜3点程度です。
【原稿料】
採用原稿に対して、400字当たり3000円(税込み)。
【注意点など】
未発表のものに限定します。
ご寄稿いただいた原稿は、EDN Japan誌で選考させていただき、採用/不採用を決めさせていただきます。
掲載した原稿の著作権はEDN Japan誌に帰属します。
ご寄稿いただいた原稿は、EDN Japan誌のほか、米国EDN誌やEDN Asia誌、EDN China誌、EDN Europe誌に掲載される可能性があります。
原稿のご寄稿ほか、ご質問・ご要望などは こちらまで。
雑誌無償購読申込み ニュースレター登録 この記事に対する感想/ご意見
Reed Electronics Group
Electronic BUSINESS Japan | Design News Japan | Semiconductor INTERNATIONAL | DETAIL JAPAN
EDN Japanについて | 広告掲載について | サイトマップ | お問合せ
 Copyright (C) 2000-2007 Reed Business Information Japan K.K. 
個人情報に関する方針 | 著作権・リンクについて | 会社情報