シリアルバス解析アプリケーションノート

ミックスドシグナルオシロスコープ DLM2000 Series
シリアルバス解析アプリケーションノート
2. Yokogawa’s Serial Bus Analysis
1.Introduction
デジタル家電を中心に、ゲーム機、カーナビゲーション、携帯電話、複写機、ATMな
どの情報機器や産業機器を含め、さまざまな分野で組み込みシステムが利用されて
横河のディジタルオシロスコープは、機種に応じて最大6種類の車載バスや汎用
シリアルバスのトリガ・解析機能が塔載できます(表1参照)。
います(図1)。また、自動車分野においても、安全・環境がキーワードとなり、エンジン
制御の電子化によるECUファームウェアがより複雑化し、開発工数が増大しています
(図2参照)。このような組み込み機器の内部で使われる通信バスは、配線数、低電
力、標準部品によるコストダウンなどの理由から、パラレルバスだけでなくシリアルバスも
ディジタルオシロスコープ
DL7400
採用されるようになってきました。
シリアルバスアナライザ
SB5000
ミックスドシグナルオシロスコープ
DLM2000
また、組み込み機器の開発現場では、ソフトウェア規模の拡大やブラックボックス化、
短期開発などが迫られています。このような状況下で製品の動作検証やトラブル
シュートが開発者に要求され、そこに使用される測定器もユーザ用途に応じた専用の
解析機能が必要とされます。
横河のディジタルオシロスコープはシリアルバス解析機能が搭載可能で、組み込み
機器内のデバイス間の通信データを条件にトリガ、解析、データサーチが可能です。シ
リアルバスのID/Data/Errorなどを条件にした信号観測やデバッグを行うことで、解析
の条件を限定し、開発効率を向上できます。
I2 C
SPI
CAN
LIN
UART
FlexRay
DLM2000
SB5000
DL9710L
DL7400
DL1600
DL1700
○
○
○
○
○
×
○
○
○
○
○
○
○
○
○
○
○
×
○
○
○
×
×
○
○
×
○
×
×
×
○
○
×
×
×
×
表1 横河ディジタルオシロスコープのシリアルバス解析機能対応表
zDL9700/SB5000/DLM2000シリーズのシリアルバス解析の特長
•2種類のバスを同時解析
本稿では、各種シリアルバスの概要と、DLM2000シリーズのシリアルバス解析機能に
ついて紹介いたします。
−2つのZoom画面にTimeスケールを変えて、個別に表示可能
•シリアルバス設定用のオートセットアップ機能
•ロジック入力によるシリアルバス解析(表2参照)
•高速リアルタイムな画面更新
•2つのシリアルバスの複合条件でトリガ
•CANデータベースファイル対応(SB5000/DLM2000)
Embedded devices
SPI UART
LIN
CAN
I2 C
アナログ入力
○
○
○
○
○
ロジック入力
○
○
○
-
-
表2 シリアルバス解析対応の入力(DL9700/SB5000/DLM2000)
図1 シリアルバスを用いた組込み機器の例
アナログ入力
Logic入力 I2C/SPIバス
I2C/SPIバス解析表示
Information Quarterly誌より
図3 ロジック入力によるI2C,SPIの2バス同時解析例
図2 車載電子システムのソフトウエア量の推移
Serial Bus Analysis Application Note
1
125kポイント
1.25Mポイント
12.5Mポイント
IC
19.6回/秒 (51ms)
5.6回/秒 (178ms)
(10ms捕捉期間含む) (100ms捕捉期間含む)
0.7回/秒 (1.43s)
(1s捕捉期間含む)
CAN
16回/秒 (62ms)
4.5回/秒 (220ms)
(10ms捕捉期間含む) (100ms捕捉期間含む)
0.6回/秒 (1.6s)
(1s捕捉期間含む)
2
サンプルレート:12.5MS/s
参考: 12.5Mポイントでの解析データ数
(I2Cデータ:約3000byte、 CANデータ:約1900フレームを測定)
•High speed CAN と Low speed CAN
CAN の物理層の代表的な規格として、High speed CAN (ISO11898) とLow
speed CAN(ISO11519-2) があります。
図5、図6のように、High speed CAN/Low speed CAN のどちらの場合でも、2 本
のバス(CAN_High とCAN_Low) の電位差によってバスのレベルを判断します。High
speed/Low Speed CANは、信号レベルの違いはありますが、どちらも差動信号で、
“0”、”1”を判断しています。
表3 DLM2000のシリアルバス解析測定周期(参考データ)
3. CANバス信号と、ノイズ重畳信号の解析
● CANバスとは
CANとは、Controller Area Networkの略称で、ボッシュ社が1985年に車載ネット
ワーク用に開発したものです。現在では車載ネットワークの標準となっており、自動
車業界は積極的に CAN を採用し、1993年には ISO 11898 という国際規格とし
て標準化されました。1994年以降、CANopen、DeviceNet など、CAN の上位プ
ロトコルがいくつか標準化されています。
自動車以外の市場でもその信頼性や洗練された故障検出機能などが認められ、
幅広い分野で注目されているネットワークです。
<CANアプリケーション例>
• 自動車、トラック、バス、オフロード車
• 医療機器
• FA、センサー、機械制御、スイッチギア、コントロールギア
• 船舶制御、ナビゲーションシステム
• 農耕機器、林業機器
図5 CANの物理信号
CAN_High
CAN_Low
差動波形
図6 High speed CANの波形例
Motor
Motor
● ● ●
Motor
Switch
Safety
Switch
Sensor
Occupant
Classification
● ● ●
Air
Conditioner
CAN
- 125kbps
Sub-Network
LIN 2.4 to 19.2kbps
Inner Keyless
panels,
meters Entry
AFS
Head
Lamp
Levelizer
Combination
Lamp
● ● ●
Automotive
Body Air-bag
System Control
Gateway
CAN
- 500kbps
Information
CAN
-125kbps
Door
Sub-Network
Safe-by-Wire
(150kbps)
Engine/
Power Train
Engine
MD/CD
A/V
Changer Component
VICS
Navi
Steering
Tire Inflation
Pressure
Brake
TVSS
Sub-Network
FlexRay *2
(5Mbps)
AT
MOST
1394
CAN
- 500kbps
差動プローブPBDH1000(701924)
1.0GHz帯域、1MΩ入力
差動プローブ (701920)
DC~500MHz帯域、100kΩ
Chassis
図3 車載LANの種類と構成
ボディ系バス
バス種類
データ伝送速度(
ビット
規格例
•差動信号の測定
CANのような差動信号の測定には、差動プローブを使うと便利です。ノイズ評価の
ためには、信号に必要な帯域以上の広帯域入力が必要になります。また、プローブ
の入力抵抗が低いと、信号レベルが低下することがありますので、入力インピーダン
スは高い方が望まれます。
イベントバス
リアルタイムバス
光通信
MOST,
IDB-1394
100M
10M
1M
秒
/)
100k
10k
CAN
LIN
ボディ系
アプリケーション例
求められる要素
ドア、
エアバック
シート
低速、低コスト
走行制御系
情報系
エンジン、ブレーキ、 カーナビ、
トランスミッション
カーオーディオ
高速、高信頼性
図4 車載LANの分類と規格例
・CANのデータベースファイルの利用
DLM2000、SB5000シリーズは、CANのDBCデータベースファイル(.dbc)を読み込み、
物理値(Message, Signal)によるトリガ設定や、解析結果(デコード)を表示できます。
波形から物理値を直読できるので、CANの不良解析やトラブルシュートの効率がアッ
プします。
DBCデータベースファイルは、CAN メッセージ(フレームID/Data)と物理値(Message、
Signal)の定義情報やスケーリング情報が含まれたテキストファイルです。DBCデータ
ファイルは、専用ソフトウェアで測定器に読み込める形式(*.sbl)に変換する必要があ
ります。このため、PC上でフリーソフトウェア「Symbol Editor」ソフトウェアを使って、
DBCデータファイル(.dbc)からSB5000で読み込める物理値定義(Message, Signal)
ファイルを作成します。「Symbol Editor」は、横河電機(株)の以下のホームページか
らダウンロードできます。
http://www.yokogawa.co.jp/tm/F-SOFT/DLsoft/symbol.htm
Serial Bus Analysis Application Note
2
CANdb
データベース
ファイル(*.dbc)
シンボル定義
ファイル(*.sbl)
DLM2000)シリーズ
Symbol Editorフリーソフト
(*.dbc→*.sbl変換、編集)
図8 CANバストリガ条件の設定ダイアログ
図6 CANのデータベースファイルの流れ
図9 CANバストリガの動作例
通常のCANデコード表示
Messageへ
変換
図7 CANデータベースファイルを使ったデコード結果(メッセージに変換)例
● CANバス用トリガ機能
CAN バスのID のビットパターン、DLC、Data、ACK スロットの状態を設定して、特
定のデータフレーム/ リモートフレームをトリガ条件としてトリガをかけることができます。
最大4 種類のID/Data の条件を設定できるので、これらのOR 条件でトリガをかける
こともできます。また、SOF(Start of Frame) やエラーフレームをトリガ条件にすること
も可能です。
・トリガモード
SOF : SOF (Start of Frame)でトリガをかける。
Error Frame : エラーフレームでトリガをかける。
ID Std/Data : 設定条件と一致したデータフレーム/リモートフレーム(ID:標準
フォーマット)でトリガをかける。
ID Ext/Data : 設定した条件と一致したデータフレーム/リモートフレーム(ID:拡
張フォーマット)でトリガをかける。
ID/Data OR : 4種類のデータデータフレーム/リモートフレームのOR条件でトリ
ガをかける。IDごとに標準フォーマットまたは拡張フォーマットを設定できます。
Msg/Signal : CAN Message (ID)とSignal (ID/Data)でトリガをかける。
・ビットレート
1Mbps, 500kbps, 250kbps, 125kbps, 83.8kbps, 33.3kbps, User.(Userを選
択した場合は、10k~1M[bps]の任意の値を設定)
● CANバス用解析機能
CANバス信号のデータを解析し、解析結果をリスト表示します。解析結果リス
トには、解析番号、解析したフレームの種類、ID、Data、ACK、スロットの状態、
トリガポジションからの時間、DLC、CRC シーケンスを表示します。また、解析
結果リスト上の任意のフレームを選択し、そのフレームに対応したCAN バス信
号を自動的に表示させることができます(ズームリンク)。さらに、フレームの指定し
たフィールドの先頭にズーム位置(ズームボックスの中央) をジャンプさせることも
できます(フィールドジャンプ)。
Zoom1
Zoom2
Low Speed CAN
10μs/div
High Speed CAN
50μs/div
図10 ハイスピード/ロースピードCANの2バス同時解析画面例
Serial Bus Analysis Application Note
3
<スタッフビット表示>
CANバス信号では、5ビット以上の連続した同一レベルがあった場合に、補間的な
●バス信号に埋れたノイズの抽出
逆ロジックのビットがそのビット列に挿入されます(スタッフビット)。
定められた個所(SOF~CRC Seq)でのみ行われ、ビットスタッフィングにより、
ズとデータパルスを区別するのが困難です。DLM2000シリーズは、最大62.5Mポイ
ントのロングメモリに捕捉したデータから、演算によるフィルタ処理によって、ノイズ信
再同期やエラー検出が可能となります。CAN バス信号の中からスタッフビットを検出
号のみを抽出することが可能です。下の例は125kbpsのCANバス信号にノイズが
し、スタッフビット部を表示することができます。
重畳していますが、500kHzのハイパスフィルタで高域のノイズ波形のみを抽出して
います(波形下側)。ディジタルフィルタの機能概要は以下のとおりです。
バス信号に重畳した信号は、信号に重畳する部位が特定できない場合に、ノイ
・DLM2000のディジタルフィルタ仕様
送信前
ビットシーケンス
演算可能メモリ長: 62.5Mポイント(/M2メモリ拡張オプション搭載時)
フィルタタイプ:IIR Highpass/ IIR Lowpass
フィルタ特性: 1次/2次から選択
カットオフ周波数: 0.01Hz~500MHz
バス上の
ビットシーケンス
CANバス信号
Stuff Bit
Stuff Bit Stuff Bit
Stuff Bit
図11 DLM2000のスタッフビット表示
● CANバス用サーチ機能
CAN バス信号のデータに対して、トリガ条件と同様に、SOF、ID、Data Frame
などを条件として検索できます。検索を実行すると、条件と一致したデータにズー
ムボックスが移動し、ズーム波形表示枠(Zoom またはZoom2) にデータを拡大し
て表示します。
図12はエラーフレームのサーチ例です。Error Frame/CRC Error/Stuff Errorの
以下の3種類のエラータイプを選択して、CANのフレームを検索できます。
・Error Frame
他のノードに対しエラーを通知します。エラー検出後、連続したドミナントを出力し
ます。
・CRC ERROR
送信データと受信データを比較し、不一致の場合にエラーが発生します。
・STUFF ERROR
スタッフビットのルールが守られず、連続で6 ビット以上の同一レベルを受信した時
に発生します。
フィルタ処理後
の演算波形
図13 ディジタルフィルタによるノイズ波形の抽出
検出箇所には
マーカーが現れる
図14 ディジタルフィルタによるノイズ波形の抽出
図14で、バス上の信号をロングメモリで捕捉しています。ノイズは周期的に約
16msの間隔で重畳していることが分かります。波形の検索機能は、演算波形
を対象にすることもできますので、フィルタ処理後の抽出したノイズ波形を条
件に波形を検索できます。
ノイズ波形と同時に、バスの波形、デコード解析結果も同時に表示されますの
で、トラブルシュートも容易になります。
図12 エラーフレームの検索結果画面例
Serial Bus Analysis Application Note
4
4. LIN バス信号と、レベル異常のLINバス信号の解析
● LINバスとは
● LINバス用トリガ機能
LINとは、Local Interconnect Networkの略称で、車載LANのコストダウンを目的と
ビットレートは19200bps、9600bps、4800bps、2400bps、1200bps、またはUser から
したシングルマスタのシリアル通信プロトコルです。通信速度や情報量でCANを必要
としないボディ系のサブネットワークに広く使用されています(図15参照)。CANノード
選択できます。LIN バス信号のトリガ条件とCAN バス信号のトリガ条件を組み合わ
せたり、LIN バス信号のトリガ条件とアナログ信号のトリガ条件を組み合わせて、トリガ
がLINのマスタノードになることが多いです。
をかけることもできます。
<LINの特徴>
1.ネットワーク構成は単一マスタと複数のスレーブ
・トリガモード(図17,18参照)
Break Synch : Breakフィールドに続いてSynchフィールドを検出したときにトリガ
2.スレーブノードは水晶発振子等なしで同期可能(マスタからの通信データ内
ID/Data
に基準クロック)
ID/Data OR : 設定した複数のIDとDataのOR条件でトリガをかけます。
3.通信方式として、すでに普及しているUART/SCIインターフェイスを利用
4.信号の伝播時間を計算できる信号伝送(タイムトリガ方式)
5.単一ワイヤーで動作可能(コスト削減)
6.通信速度は最大20kbps
7.フレームをベースとしたアプリケーション間の相互利用
Motor
Motor
Air
Conditioner
CAN
up to 125 kbps
AFS
Head
Lamp
Levelizer
● ● ●
Motor
Sub-Network
Switch
をかけます。
: 設定したIDとDataのAND条件でトリガをかけます。
Switch
Error
: エラーの発生を検出してトリガをかけます。
・ビットレート
19200bps, 9600bps, 4800bps, 2400bps, 1200bps, User(Userを選択した場
合は、1,000~20,000[bps]の範囲で設定)
・レビジョン設定
LINのレビジョンをLIN2.0またはLIN1.3から選択します。LIN2.0とLIN1.3ではエラー
定義が異なります。
LIN2.0 : 保護IDを含むEnhanced Checksumのエラーを検出します。
LIN1.3 : DataフィールドだけのClassic Checksumのエラーを検出します。
Door
LIN 2.4 to 19.2kbps
Inner
panels,
meters
Keyless
Entry
Combination
Lamp
図17 LINフレームの構成
図15 ボディ系周辺の車載LANのサブネットワーク
<LIN通信>
LINは1つのマスタタスクといくつかのスレーブタスクで構成されます(シ
ングルマスタ方式)。マスタタスクはいつ、どのようなフレームをバスに転
送するか指示を出し、スレーブタスクはそれぞれのフレームごとに転送
するデータを準備します。
マスタノードはマスタタスクとスレーブタスクを持ち、スレーブノードはス
レーブタスクのみを持ちます(図16参照) 。つまり、マスターノードの指
示がない限りスレーブノードはデータを送信しません。
スレーブノード : Max15ノード
図18 LINバスのID/Dataでのトリガ条件設定ダイアログ画面
図16 LIN通信の構成
Serial Bus Analysis Application Note
5
● LINバス用解析機能
● 異常信号(ラントパルス)の信号捕捉
LIN バス信号のデータを解析し、解析結果をリスト表示します(図19参照)。
接続されたノードの負荷やノイズ、データシーケンスなどの条件により、振幅レベ
解析結果リストには、Simple( 簡易表示) とDetail( 詳細表示) の2 種類があ
ります。Simple では、解析番号、ID、Data、Checksum の状態をリスト表示
ルが不十分なパルス(ラントパルス)が発生することがあります(図21参照)。こ
のラントパルスのような波形は、プロトコル上、デコード結果からエラーとして現れ
します。Detail では、Simple の項目に加えて、トリガポジションからの時間、ID
ないこともあり、原因が特定しにくい場合があります。
Field、ID Parity エラーとChecksum エラーをリスト表示します。解析結果の
このような信号の捕捉には、DLM2000シリーズの“Windowコンパレータ”と“パル
データは、任意のストレージメディアにCSV 形式で保存できます。
また、解析結果リスト上の任意のフィールドを選択し、そのフィールドに対応した
ス幅トリガ“が有用で、ラント波形のような捕らえにくい異常波形を捕捉すること
ができます。
LINバス信号を自動的に表示させることができます(ズームリンク)。
Windowコンパ
レータの幅
Runt Pulse
図21 ラントパルスの捕捉例
図19 LINバス解析画面
● LINバス用サーチ機能
LIN バス信号のデータに対して、特定のフィールドを検索できます。検索を
実行すると、条件と一致したデータにズームボックスが移動し、ズーム波形
表示エリア(Zoom1 またはZoom2) にデータを拡大表示します。
Windowコンパレータの
“IN”の電圧範囲で “True”
True
False
パルス幅
Trigger
振幅が小さいと、Windowコンパレータでの滞在期間
が長くなります。これを、パルス幅トリガを用いて、期
間が長いパルスでトリガをかければ、ラントパルスのみ
を捕捉できます。
図22 Windowコンパレータを用いたラントパルスの捕捉
図22は、Windowコンパレータを用いたラントパルスの捕捉方法について説明していま
す。通常のトリガレベル設定ではスレッショルドレベルのみが設定されます。Windowコ
ンパレータを設定した場合、設定した上限下限のレベルに入ったタイミングや下限か
ら上限までの通過する時間でトリガを設定できます。図22では、コンパレータの“IN”
の電圧範囲に入ったときに“True:1”、範囲外で“False:0”になります。振幅の小さ
いパルスのときには、このコンパレータの”IN”の期間に滞在する時間が長くなります。
この、True/Falseの値を用いてパルス幅でトリガをかければ、ラントパルスでのトリガを
かけることができます。
本機能はLINバスに限らず、CANバスや一般的なデータ通信の異常波形の検出に
も応用できます。
図20 LINバスのサーチ条件設定画面
Serial Bus Analysis Application Note
6
5. UART信号
●UART概要
UARTとは、Universal Asynchronous Receiver Transmitter の略称で、シリアル
信号をパラレル信号に変換したり、その逆方向の変換を行うための通信回路です。
特定の信号レベル(規格)に準拠する信号レベルに変換するICと組み合わせて、
外部機器とのインタフェースとして利用されるのが一般的で、“特定の信号レベル
“として、代表的なものにRS-232規格があります。
データラインは2本(送信ライン、受信ライン)。規格によって、通信速度、信号形態
(差動、シングルエンド)が異なります。
例)
RS-232(シングルエンド):
ビットレート:115.2kbps max
RS-422(差動):
ビットレート:10Mbps max
RS-485(差動):
ビットレート:10Mbps max
<UART アプリケーション事例>
UARTアプリケーションとして、次のようなところで使用されています。
■ ECU基板上のCPU通信(I/O)
(ECUマイコンとROMとの通信、マイコン同士のローカル通信等)
■ 組み込みマイコン評価ボードとPCとの通信
■ 車載センサー(ミリ波(画像)センサー、衝突防止センサー、前車との距離測定
センサー等)とDSS(ECU)の通信
■ ワイヤレスロックの信号受信(チューナー)部と対象ECUとの間の通信
■ 農建機内の制御通信
(自動車に関係なく、広く)、製造設備(生産ライン)の制御信号
Solar Panel
図25 UART トリガ条件設定ダイアログ
● UART用解析機能
UART信号のデータを解析し、解析結果をリスト表示します。解析結果リスト
には、解析番号、トリガポジションからの時間、Data、エラー(Framing,
Parity)を表示します。DataはHex/BIN表示だけでなく、ASCIIコード表に準じ
て変換して表示できます。これらの解析結果のデータは、内蔵メディアやUSB
メモリメディアにCSV 形式で保存できます。
また、解析結果リスト上の任意のデータをリストから選択すると、その解析デー
タに対応したUART信号の生波形を、自動的にZoom画面に表示することが
できます(ズームリンク)。
Hex表示
ASCII表示
リスト表示画面
Storage
Batteries
Charge
Control
System
Communication
Interfaces
Battery
Control
波形表示画面(Zoom画面)
CAN
DC/DC
PWM
I/V
Sense
DC/AC
RS232/
485
MOSFET
Drivers
I/V
Sense
MCU
Protection
Loads
Hex表示
ASCII表示
PWM
Relay
Driver
Relays
図26 UART解析結果画面例
Isolation
● UART用サーチ機能
図23 太陽光発電システムにおけるシリアルバスの使用例
スタートビット
パリティビット
UART 信号のデータに対して、特定のデータパターン(最大4byte)やエラーで
データを検索できます。検索を実行すると、条件と一致したデータにズーム
ボックスが移動し、ズーム波形表示エリアにデータを拡大表示します。
注)
B0 B1 B2 B3 B4 B5 B6 B7
スタートビットの立下りで
通信開始を検出
ストップビット”H”を検出して
正常終了。
注):パリティビットは有る場合と無い場合があります。
図24 UART フォーマット(8-bit Data、Polarity: Posの例)
● UART用トリガ機能
すべてのデータのStop Bit の位置でトリガがかかります。ビットレートは115200bps、
57600bps、 38400bps、 19200bps、9600bps、4800bps、2400bps、1200bps、ま
たはユーザ設定 から選択できます。
データ形式は、8bit(Parity有)、8bit(Parity無)、7bit (Parity有)から選択できます。
図27 UARTデータサーチ画面例
Serial Bus Analysis Application Note
7
6. I2C バス信号
● I2Cバス概要
I2CバスとはSCL(シリアル・クロック)と、双方向のSDA(シリアル・データ)の2本の信
号線(GNDは含まず)で通信する同期式のシリアル通信です。バスには複数のス
Start Address(7bit) +
Data8bit + Ack
… Data8bit + Ack
R/W(1bit) +Ack(1bit)
Stop
レーブを接続でき、マスタは個別に決められたスレーブのアドレスを指定してスレーブ
を選択してからそのスレーブと通信します。ビットレートにより、標準モード、ファース
ト・モード、ハイスピード・モードがあります。
Logic A1
CH1
Logic A0
図30 データフォーマット例 (7-bit address)
I2C-BUS
SDA
CH2
SCL
Device
#1
Device
#2
図28 I2Cバス構成と、信号観測例
● DLM2000シリーズのI2Cバス用トリガ機能
以下の条件でトリガをかけることができます。
◇Every-Startトリガ :全てのスタートコンディションでトリガ
◇アドレス・データトリガ :設定されたアドレスかデータでトリガ
◇Non-Ackトリガ
:アクノリッジが無い場合にトリガ
◇ジェネラルコールトリガ:ジェネラルコール発行時にトリガ
Don’t care, 0000 0100 / 0000 0110 / Master Adr設定 より選択
◇スタートバイト
:スタートバイトでトリガ
◇HSモードトリガ
:HSモードでトリガ
<アドレス&データでのトリガ設定>
1) ICアドレス + R/W bit を設定
2) 7Bitアドレス、7Bit+Subアドレス、10Bitアドレス指定可能
3) データ指定にTrue/Falseを選択可能
4) バイトカウントで設定したバイト後にトリガが有効
Address, Data, byte-count の組み合わせ
Address :
A4
Data 1 :
27
Byte Count :
3
3) Data pattern “27”を比較.
Address + R/W bit
Start
図29 I2Cバス信号観測例
•I2C busのフォーマット概要
Start Condition
マスターデバイスによる新しいデータ伝送のスタートコンディションです。SCLが“Hi”の
間に、SDAデータラインが“Hi”から“Lo”へ遷移した時にスタートコンディションとなり
ます。
Address (7Bit, 7Bit + Sub= 10Bit)
アクセス先のスレーブデバイスアドレス。マスタがこのデータを送ります。
R/W (1bit)
伝送方向 (Read/Write)。マスターから発行されます。アドレスブロックの後に続きま
す。(H:Read L:Write)
ACK (Acknowledge:1bit)
各アドレス、データバイトの後にアクノリッジメントを受信側から返します。最後の
byteデータを読んでいる時は、ACKのビットは発行されません。
Data (8bit)
データバイトの数は制限が無いので、データは連続的に送ることができます。
Stop
データ転送が終了するときに、マスターデバイスはストップコンディションを送出してバ
スを開放します。SCLクロックが“Hi”の間に、SDAデータラインが”Lo”から“Hi”に遷
移した時にストップコンディションとなります。
A4
25
AE
57
27
98
99
4) トリガ点
2) 3バイトのデータをスキップ
1) Address pattern (A4)を比較.
図31 I2Cバストリガ設定例
Serial Bus Analysis Application Note
8
7. SPI バス信号
● SPIバス概要
SPIバスとはSCK(シリアル・クロック)と単方向のSDI、SDOの3本の信号線
(GNDは含まず)で通信する同期式のシリアル通信です。バスには複数のスレー
ブを接続できますが、それらを特定するためにマスタはCS(チップ・セレクト)信号
でスレーブを選択しなければなりません。信号線が増えますが、データのフォーマッ
トや原理が単純なため高速で通信できます。
図32 I2Cバスアドレス・データ条件の設定ダイアログ
CS1
CS2
CS3
SCLK
MOSI
MISO
I/O 1
I/O 2
I/O 3
SCK
SDO
SDI
● I2Cバス用解析機能
波形表示の下に、デコード結果を同時に表示できます。また、リスト表示内では、
解析番号、トリガポジションからの時間、第1バイト、第2バイト、Read/Write、データ、
Acknowledgeの有無、Information(7bit/10bitアドレス)を表示します。リスト内の
選択行を移動すると、連動してZoom位置も移動します。
デコード結果は、CSV形式でファイルに保存できます。
Master
各ラインは全ての
Slaveと接続
1本のラインが個々に
Slaveに接続
図34 SPIバス構成例
I2Cバス解析結果
リスト表示エリア
解析結果行と波形のZoom位置は連動
Zoom画面内のバス
波形表示。
リスト表示に連動。
波形にリンクした
デコード表示
● SPIバス用トリガ機能
最大4バイトのデータパターンでトリガを設定できます。データの位置はチップセレクト
(CS)がアサートされてから指定バイト分をスキップさせてトリガをかけることができます。
◇3線式シリアル、4線式シリアル選択可能
◇指定のデータサイズでトリガ可能(1~4Byte)
◇一致不一致(True、False)選択可能
◇データの指定にMSB、LSBの選択可能
◇Byteスキップ可能
SPI データトリガ(複合トリガ) 例
図33 I2Cバス 解析画面例 (画面上側:リスト表示)
•Data, byte-count の組み合わせ
CS
:Lowでアクティブ
Data 1 Condition:True
Data Size:3
Pattern:3B D7 FF
DataPosition:4
Data2 Condition:True
Data Size:4
Pattern:FF FF 00 00
DataPosition:10
● I2Cバス用波形サーチ機能
I2C バス信号のデータに対して、特定のアドレスパターン/ データパターン/アクノリッジ
ビットの状態と一致するデータを検索できます。検索を実行すると、条件と一致した
データにズームボックスが移動し、ズーム波形表示枠(Zoom1 またはZoom2) にデータ
を拡大表示します。
・データ検索条件
◇Every-Start :全てのスタートコンディションを検索
◇アドレス・データ :設定されたアドレスかデータを検索
◇Non-Ack
:アクノリッジが無い場合を検索
◇ジェネラルコール:ジェネラルコールを検索
Don’t care, 00000100/ 00000110/ マスターアドレス(任意設定)より選択
◇スタートバイト :スタートバイトを検索
◇HSモード
:HSモードを検索
CS
4バイト
比較データ
Data1
10バイト
比較データ
Data2
ここでトリガ
図35 SPIバストリガ条件例
Serial Bus Analysis Application Note
9
● SPIバスの応用例
デジタルカメラに搭載されたIC間通信のデータ通信にSPIが使用されています。
DLM2000のバス解析機能を使用すると、IC間のデータ通信が正常に行われてい
るかどうかを波形で観測しながら、データも確認することができます。
SDRAM
図36 SPIバス トリガ設定画面例 (4wireの場合)
シグナル
シグナル
ジェネレータ
ジェネレータ
DSP
DSP
メモリコントローラ
メモリコントローラ
VRAM
JPEG
画像処理
● SPIバス用解析機能
•SPIバス信号波形とデコード解析結果を同時にリアルタイム表示
•解析結果にはトリガ点からの時間や、データ1、データ2を表示。
•高速解析&波形表示
•解析結果(リスト)はCSV形式のテキストファイルに保存可能。
D/A
D/A
コンバータ
コンバータ
ROM
DMAC
CPU
SPI
バス
RAM
BSC
I/OPORT
LSI-1 画像処理
SCI
LSI-2 CPU
図39 ディジタルカメラにおけるSPIバスの応用例
8. 最後に
車載LANやディジタル家電などの組み込みシステムにおいて、シリアルバスのイベ
ントに応じた波形を観測できることは非常に有用です。横河のDLM2000シリー
ズは、CAN/LIN/UART/I2C/SPI各種のバスに対応し、トリガ、解析、データ
サーチ機能を搭載しています。物理層信号の波形測定・解析、プロトコル解析
機能を併せ持つ波形測定器により、迅速かつ簡単にシステム評価が可能になり
ます。
横河オシロスコープのシリアルバス解析についての更なる情報は、以下のウェブサ
イトをご覧ください。
図37 SPIバス 解析画面例 (画面上側:リスト表示)
http://www.yokogawa.co.jp/tm/Bu/serial/
http://www.yokogawa.co.jp/tm/Bu/SB5000/
● SPIバス用サーチ機能
大容量に捕捉したデータの中から、SPIバスの条件で、希望のデータを抽出でき
ます。
・抽出条件
◇指定のデータサイズでサーチ可能(1~4Byte)
◇一致不一致(True、False)選択可能
◇データの指定にMSB、LSBの選択可能
◇Byteスキップ可能
http://www.yokogawa.co.jp/tm/Bu/dl7400fr/
図38 SPIバス サーチ画面例
Serial Bus Analysis Application Note
10