iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法...
Transcript of iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法...
1/3/2009 アイウェーブ・ジャパン株式会社 1
iWW--186186コアプレゼンテーションコアプレゼンテーション
プレゼンテーションへようこそ
アイウェーブ・ジャパン株式会社
菅野 治
[email protected] 2007-2009
プレゼンテーションへようこそ
アイウェーブ・ジャパン株式会社
菅野 治
[email protected] 2007-2009
1/3/2009 アイウェーブ・ジャパン株式会社 2
目次
• iW-186SOC
• コアの比較
• デモ環境の説明
• iW-186コアのデバック方法
• ケーススタディ
• チップスコープに使用方法
1/3/2009 アイウェーブ・ジャパン株式会社 3
iW-186SOC
1/3/2009 アイウェーブ・ジャパン株式会社 4
iiWW--186SOC [186186SOC [186プロセッサプラットフォームプロセッサプラットフォーム]]
産業、交通、通信のインフラで使用した80186組込装置の後継、SOCソリューション
80186プロセッサ命令互換
ペリフェラル:シリアル通信コントローラ
HDLC, タイマー, I/OPCI コントローラASICの置き換え
80186/CPU Core
8254 Programmable
Timer
8259 Interrupt Controller
8237
DMA Controller8251
Serial Controller
8254 Programmable
Timer
8530 Multi Protocol
Serial Controller
PCI Host / Master / Target
PCI Peripheral / Memory Bus
USART
RS232
1/3/2009 アイウェーブ・ジャパン株式会社 5
iiWW--186186の特徴の特徴
iW-186 CPUコア及び
バスインターフェイスユニット
バス調停ユニット
ウェイト制御ユニット
CPUオンチップ周辺機器
タイマー制御ユニット
シリアル制御ユニット
割込制御ユニット
DMA制御ユニット
1/3/2009 アイウェーブ・ジャパン株式会社 6
CPUCPUコアの確認方法コアの確認方法
CPU CORE
ICU
TCU
CG BIU
ICU BFM
INTP4INTP5INTP6INTP7INTAK_N
NMI
CP_BUSY_N
INTP3INTP2INTP1INTP0
TCU BFM
TOUT2TCTL2
TCTL1TOUT1TCTL0TOUT0
SCUSCU BFM
DMAU
BAU
CLKO
UT
PCLK
OUT
IO BFM
MEMORY BFM
BUSL
OCK_
N
DSTB
_N
BUSS
T[2:0
]
RESE
T_N
BS8/B
S16
CLK_IN
INTER-RUPTS
TCLKTxDRxDRxRDYSINTCTS_N
RTS_NDTR_N
DSR_N
DMARQ0DMAAK0_NDMARQ1DMAAK1_NDMARQ2
DMAAK2_N
DMARQ3
DMAAK3_N
END/TC_N
HLDAK
HLDRQ
IORD_NIOWR_N
AEX
UBE_
N
BCYS
T_N
READ
Y_N
A[23
:0]
D[15
:0]
MW
R_N
MRD
_N
M/IO
_N
R/W
_N
CLK GENERAT
OR
1/3/2009 アイウェーブ・ジャパン株式会社 7
CPUCPUコアの確認方法コアの確認方法
ベリログで自動テスト環境を作成
アセンブラで記述された、約10,000のテストケースを実行
プロセッサコアと全ての周辺機器のタイミングと機能を検証
包括的なテスト計画/テスト方法を文書化
1/3/2009 アイウェーブ・ジャパン株式会社 8
組込用のDOSが走行する市販のインテル186プロセッサボードに、iW-186ドーターボードを差し込み、開発した186コアを検証。
検証の機能を組込DOSデモボードに移植し、全ての機能を検証。
CPUCPUコアの確認方法コアの確認方法
1/3/2009 アイウェーブ・ジャパン株式会社 9
インテル186プロセッサ搭載、組込DOSが走るの市販のボード
Intel 80188 Processor
CPUCPUコアの確認方法コアの確認方法
1/3/2009 アイウェーブ・ジャパン株式会社 10
市販のボードにiW-186ドータボードを実装し、組込DOSを実行
iW-186ドータボード
CPUCPUコアの確認方法コアの確認方法
1/3/2009 アイウェーブ・ジャパン株式会社 11
インテルとiWaveのコア比較
1/3/2009 アイウェーブ・ジャパン株式会社 12
iW-188コア機能と外部I/Oタイミングは、インテル188プロセッサと同一。
iW-188コアの命令デコードと実行タイミングは、インテル188プロセッサと異なる。
プロセッサの全てのI/O信号を計測比較(インテル188プロセッサとiW-186/188ドータボード上で組込DOS走行状態)
参考のために計測した波形を示す。
インテルとiWaveのコア比較
1/3/2009 アイウェーブ・ジャパン株式会社 13
インテル188プロセッサ命令フェッチサイクル
1/3/2009 アイウェーブ・ジャパン株式会社 14
iW-188プロセッサ命令フェッチサイクル
1/3/2009 アイウェーブ・ジャパン株式会社 15
インテル188プロセッサメモリリードサイクル
1/3/2009 アイウェーブ・ジャパン株式会社 16
iW-188プロセッサメモリリードサイクル
1/3/2009 アイウェーブ・ジャパン株式会社 17
インテル188プロセッサメモリライトサイクル
1/3/2009 アイウェーブ・ジャパン株式会社 18
iW-188プロセッサメモリライトサイクル
1/3/2009 アイウェーブ・ジャパン株式会社 19
インテル188プロセッサI/Oリードサイクル
1/3/2009 アイウェーブ・ジャパン株式会社 20
iW-188プロセッサI/Oリードサイクル
1/3/2009 アイウェーブ・ジャパン株式会社 21
インテル188プロセッサI/Oライトサイクル
1/3/2009 アイウェーブ・ジャパン株式会社 22
iW-188プロセッサI/Oライトサイクル
1/3/2009 アイウェーブ・ジャパン株式会社 23
デモ評価環境
1/3/2009 アイウェーブ・ジャパン株式会社 24
iiWW--186186評価ボード評価ボード
1/3/2009 アイウェーブ・ジャパン株式会社 25
デモ評価機能デモ評価機能
デモ評価環境は、ザイリンクス Spartan-3AN FPGA,16 MBフラッシュ, 1MB SRAMからなります。
自己診断テストはiW-186プロセッサコアをテストします。
ブートコードは、フラッシュにあり、電源投入後、FPGAロジックが、フラッシュからSRAMにブートコードをコピーし、プロセッサをリセットします。
プロセッサは、SRAMからコードを読込実行します。
1/3/2009 アイウェーブ・ジャパン株式会社 26
デバック機能デバック機能
ユーザは、アプリケーションをSRAMにテストのためにダウンロードし、iWaveデバックモニター機能を使用して、デバックすることができます。
•セットブレークポイント•ブレークポイントからの実行•ブレークポイントのクリア•ステップ実行の終了•ブレークポイントの表示•ステップ実行
1/3/2009 アイウェーブ・ジャパン株式会社 27
iW-186コアのデバック方法
1/3/2009 アイウェーブ・ジャパン株式会社 28
iiWW--186186コアのデバック方法コアのデバック方法
システムの速度を落とすことなく、チップのデバックができる機能をザイリンクスがオプション製品として提供。
ザイリンクスのチップスコープにより、ロジックアナライザ、バスアナライザ、単純化された仮想I/Oを組み込み、全ての内部信号を観測可能。
ザイリンクス チップスコープを使用したデバック。
1/3/2009 アイウェーブ・ジャパン株式会社 29
テストアプリケーションで主要な複数のトリガポイントの決定
テストアプリケーションの解析
ザイリンクスチップスコープトリガ ウィンドウ上から、主要なトリガの
設定
テストアプリケーションの実行
主要なトリガポイント?
ザイリンクスチップスコープトリガウィンドウで次の主要な
トリガ設定に変更
最後の主要なトリガポイントか?
Passed
A
A
B
Failed
No
全てのトリガポイントを通過
テストアプリケーションの正常終了
Yes
iiWW--186186コアのデバック方法コアのデバック方法
1/3/2009 アイウェーブ・ジャパン株式会社 30
テストアプリケーションの実行
次に可能性のあるトリガポイントか?
ザイリンクスチップスコープトリガ
ウィンドウで、次に可能性のある複数のトリガポイントを設定
B
Passed
FailedC
失敗した主要なトリガポイントから、次に可能性のある複数のトリガポイントを決定
次に可能性のあるトリガ設定をザイリンクスチップスコープトリガ
ウィンドウで変更
C
テストアプリケーションの次に可能性のあるトリガに引っかからない
原因を解析
チップスコープで命令制御信号の次に可能性のあるトリガポイントを追加
実行命令の検証
Failed
実行命令の解析と、バグの修正
テストアプリケーションの実行
iiWW--186186コアのデバック方法コアのデバック方法
1/3/2009 アイウェーブ・ジャパン株式会社 31
デバック事例
1/3/2009 アイウェーブ・ジャパン株式会社 32
186コアに問題がある場合のアプリケーションの実行例
;=== Sub trigger point start ===mov ax,9000h ; ds=9000mov ds,axmov bx,0 ; bx=0mov ds:[bx],1234h ; ds:[0000] = 1234hmov ss:[bx],5678h ; ss:[0000] = 5678hmov ax,[bp] ; ax = SS:[bp]shr ax,1mov dx,[bx] ; cx = DS:[bx] (9000:0000 = 1234)mov cx,[bx] ; bx = DS:[bx] (9000:0000 = 1234);=== Sub trigger point end ===
デバッグ事例デバッグ事例
実行結果は、DX = CX = 1234
1/3/2009 アイウェーブ・ジャパン株式会社 33
デバック事例デバック事例
しかし、正しくはDX = 5678, CX = 1234
問題は、アドレス生成にあり、境界線上の問題でした。
チップスコープを使用して解析デバックします。
ステップ実行をいくつかのスライドで示します。
1/3/2009 アイウェーブ・ジャパン株式会社 34
90000hメモリリードポイントにトリガポイントを設定
デバック事例デバック事例
1/3/2009 アイウェーブ・ジャパン株式会社 35
アプリケーションの実行。 トリガ待ちの状態
デバック事例デバック事例
1/3/2009 アイウェーブ・ジャパン株式会社 36
トリガ検出
デバック事例デバック事例
1/3/2009 アイウェーブ・ジャパン株式会社 37
波形の解析
アドレス生成に誤りがある箇所;
正しいアドレスは90000h,
しかし、生成されたアドレスは27DC0h.
デバック事例デバック事例
1/3/2009 アイウェーブ・ジャパン株式会社 38
チップスコープの使用方法チップスコープの使用方法
ザイリンクスのチップスコープツールについては、ザイリンクスのウェブサイトをご参照ください。http://www.xilinx.com/products/software/chipscope/chipscope_ila_tut.pdf
1/3/2009 アイウェーブ・ジャパン株式会社 39
ありがとうございました。
• お問い合せは、アイウェーブ・ジャパン株式会社
神奈川県横浜市中区住吉町3丁目29番関内住吉ビル8階B 〒231-0013TEL 045-227-7626 FAX [email protected]
• その他製品情報は、http://www.iwavejapan.co.jp