iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法...

39
1/3/2009 アイウェーブ・ジャパン株式会社 1 i W W - - 186 186 コアプレゼンテーション コアプレゼンテーション プレゼンテーションへようこそ アイウェーブ・ジャパン株式会社 菅野 [email protected] Copyright 2007-2009

Transcript of iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法...

Page 1: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 1

iWW--186186コアプレゼンテーションコアプレゼンテーション

プレゼンテーションへようこそ

アイウェーブ・ジャパン株式会社

菅野 治

[email protected] 2007-2009

プレゼンテーションへようこそ

アイウェーブ・ジャパン株式会社

菅野 治

[email protected] 2007-2009

Page 2: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 2

目次

• iW-186SOC

• コアの比較

• デモ環境の説明

• iW-186コアのデバック方法

• ケーススタディ

• チップスコープに使用方法

Page 3: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 3

iW-186SOC

Page 4: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

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

Page 5: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 5

iiWW--186186の特徴の特徴

iW-186 CPUコア及び

バスインターフェイスユニット

バス調停ユニット

ウェイト制御ユニット

CPUオンチップ周辺機器

タイマー制御ユニット

シリアル制御ユニット

割込制御ユニット

DMA制御ユニット

Page 6: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

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

Page 7: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 7

CPUCPUコアの確認方法コアの確認方法

ベリログで自動テスト環境を作成

アセンブラで記述された、約10,000のテストケースを実行

プロセッサコアと全ての周辺機器のタイミングと機能を検証

包括的なテスト計画/テスト方法を文書化

Page 8: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 8

組込用のDOSが走行する市販のインテル186プロセッサボードに、iW-186ドーターボードを差し込み、開発した186コアを検証。

検証の機能を組込DOSデモボードに移植し、全ての機能を検証。

CPUCPUコアの確認方法コアの確認方法

Page 9: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 9

インテル186プロセッサ搭載、組込DOSが走るの市販のボード

Intel 80188 Processor

CPUCPUコアの確認方法コアの確認方法

Page 10: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 10

市販のボードにiW-186ドータボードを実装し、組込DOSを実行

iW-186ドータボード

CPUCPUコアの確認方法コアの確認方法

Page 11: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 11

インテルとiWaveのコア比較

Page 12: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 12

iW-188コア機能と外部I/Oタイミングは、インテル188プロセッサと同一。

iW-188コアの命令デコードと実行タイミングは、インテル188プロセッサと異なる。

プロセッサの全てのI/O信号を計測比較(インテル188プロセッサとiW-186/188ドータボード上で組込DOS走行状態)

参考のために計測した波形を示す。

インテルとiWaveのコア比較

Page 13: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 13

インテル188プロセッサ命令フェッチサイクル

Page 14: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 14

iW-188プロセッサ命令フェッチサイクル

Page 15: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 15

インテル188プロセッサメモリリードサイクル

Page 16: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 16

iW-188プロセッサメモリリードサイクル

Page 17: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 17

インテル188プロセッサメモリライトサイクル

Page 18: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 18

iW-188プロセッサメモリライトサイクル

Page 19: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 19

インテル188プロセッサI/Oリードサイクル

Page 20: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 20

iW-188プロセッサI/Oリードサイクル

Page 21: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 21

インテル188プロセッサI/Oライトサイクル

Page 22: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 22

iW-188プロセッサI/Oライトサイクル

Page 23: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 23

デモ評価環境

Page 24: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 24

iiWW--186186評価ボード評価ボード

Page 25: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 25

デモ評価機能デモ評価機能

デモ評価環境は、ザイリンクス Spartan-3AN FPGA,16 MBフラッシュ, 1MB SRAMからなります。

自己診断テストはiW-186プロセッサコアをテストします。

ブートコードは、フラッシュにあり、電源投入後、FPGAロジックが、フラッシュからSRAMにブートコードをコピーし、プロセッサをリセットします。

プロセッサは、SRAMからコードを読込実行します。

Page 26: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 26

デバック機能デバック機能

ユーザは、アプリケーションをSRAMにテストのためにダウンロードし、iWaveデバックモニター機能を使用して、デバックすることができます。

•セットブレークポイント•ブレークポイントからの実行•ブレークポイントのクリア•ステップ実行の終了•ブレークポイントの表示•ステップ実行

Page 27: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 27

iW-186コアのデバック方法

Page 28: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 28

iiWW--186186コアのデバック方法コアのデバック方法

システムの速度を落とすことなく、チップのデバックができる機能をザイリンクスがオプション製品として提供。

ザイリンクスのチップスコープにより、ロジックアナライザ、バスアナライザ、単純化された仮想I/Oを組み込み、全ての内部信号を観測可能。

ザイリンクス チップスコープを使用したデバック。

Page 29: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 29

テストアプリケーションで主要な複数のトリガポイントの決定

テストアプリケーションの解析

ザイリンクスチップスコープトリガ ウィンドウ上から、主要なトリガの

設定

テストアプリケーションの実行

主要なトリガポイント?

ザイリンクスチップスコープトリガウィンドウで次の主要な

トリガ設定に変更

最後の主要なトリガポイントか?

Passed

A

A

B

Failed

No

全てのトリガポイントを通過

テストアプリケーションの正常終了

Yes

iiWW--186186コアのデバック方法コアのデバック方法

Page 30: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 30

テストアプリケーションの実行

次に可能性のあるトリガポイントか?

ザイリンクスチップスコープトリガ

ウィンドウで、次に可能性のある複数のトリガポイントを設定

B

Passed

FailedC

失敗した主要なトリガポイントから、次に可能性のある複数のトリガポイントを決定

次に可能性のあるトリガ設定をザイリンクスチップスコープトリガ

ウィンドウで変更

C

テストアプリケーションの次に可能性のあるトリガに引っかからない

原因を解析

チップスコープで命令制御信号の次に可能性のあるトリガポイントを追加

実行命令の検証

Failed

実行命令の解析と、バグの修正

テストアプリケーションの実行

iiWW--186186コアのデバック方法コアのデバック方法

Page 31: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 31

デバック事例

Page 32: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

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

Page 33: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 33

デバック事例デバック事例

しかし、正しくはDX = 5678, CX = 1234

問題は、アドレス生成にあり、境界線上の問題でした。

チップスコープを使用して解析デバックします。

ステップ実行をいくつかのスライドで示します。

Page 34: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 34

90000hメモリリードポイントにトリガポイントを設定

デバック事例デバック事例

Page 35: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 35

アプリケーションの実行。 トリガ待ちの状態

デバック事例デバック事例

Page 36: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 36

トリガ検出

デバック事例デバック事例

Page 37: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 37

波形の解析

アドレス生成に誤りがある箇所;

正しいアドレスは90000h,

しかし、生成されたアドレスは27DC0h.

デバック事例デバック事例

Page 38: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 38

チップスコープの使用方法チップスコープの使用方法

ザイリンクスのチップスコープツールについては、ザイリンクスのウェブサイトをご参照ください。http://www.xilinx.com/products/software/chipscope/chipscope_ila_tut.pdf

Page 39: iW-186コアプレゼンテーション s/iW...Intel 80188 Processor CPU コアの確認方法 1/3/2009 アイウェーブ・ジャパン株式会社 10 市販のボードにiW-186ドータボードを実装し、組込DOSを実行

1/3/2009 アイウェーブ・ジャパン株式会社 39

ありがとうございました。

• お問い合せは、アイウェーブ・ジャパン株式会社

神奈川県横浜市中区住吉町3丁目29番関内住吉ビル8階B 〒231-0013TEL 045-227-7626 FAX [email protected]

• その他製品情報は、http://www.iwavejapan.co.jp