• 検索結果がありません。

出力データの場合

ドキュメント内 thesis_main3.dvi (ページ 79-84)

A.2 入出力データと I/O ウィンド ウとの関係

A.2.3 出力データの場合

アドレス0hの2ビット目にユニット0のcarry0信号のデータが格納される.

アドレス0hの3ビット目にユニット1のend unit1信号のデータが格納される.

アドレス0hの4ビット目にユニット1のfound1信号のデータが格納される.

アドレス0hの5ビット目にユニット1のcarry1信号のデータが格納される.

アドレス0hの6〜18ビット目にユニット0のcount unit0信号のデータが格納される.

アドレス0hの19〜31ビット目にユニット1のcount unit1信号のデータが格納される.

上記に述べたところ以外は要約として,扱わないとする.

31

00 h

FF h 0

found0 end_unit0

1 2 6

RESERVED = 0s

carry0 count_unit1

3 4 5 18

19

count_unit0

end_unit1 found1 carry1

図62: I/Oウィンド ウと2ユニットの出力データの関係図

3または4ユニットの場合(図63を参照) ユニット0の出力

アドレス0hの0ビット目にend main信号のデータが格納される.

アドレス0hの1ビット目にfound信号のデータが格納される.

アドレス0hの2ビット目にover flow信号のデータが格納される.

アドレス0hの16〜31ビット目にcount found信号のデータが格納される.

ユニット1の出力は,基本的にユニット0と同じ配置であるが,使用されているアドレスは1hである.

ユニット2の出力は,基本的にユニット0と同じ配置であるが,使用されているアドレスは2hである.

ユニット3の出力は,基本的にユニット0と同じ配置であるが,使用されているアドレスは3hである.

FF h

RESERVED = 0s

04 h

0C h 08 h

RESERVED = 0s

RESERVED = 0s

RESERVED = 0s

図63: I/Oウィンド ウと4ユニットの出力データの関係図

65に示す.図中で黒太い縦線の左側にある全ての論理は,雛方ファイルに記述している基本の論理である.但し , datvldRRのフリップフロップ,datvldRRとつながっている和論理,clk d2を出力フリップフロップ,sel unit en とつながっているフリップフロップが書き加えられたものである.この分部の論理回路(左側の論理回路)は,PCI バスと同じ クロックで動作している(33MHz).一方,黒太い縦線の右側にある全ての論理はバスの倍周期で動作

している(16.5MHz). 以下,黒太い縦線の右側にある論理回路について説明する.

XXX c2のフリップフロップ(XXXは文字列である)

PCIバスクロックで動作している回路(黒太い縦線の左側)から出力されたデータをラッチする.以下それ ぞれの信号線についての意味を説明する.

ldiRR c2

PCI FPGAから出力された32ビットの入力データ・バスである.

rdwrRR c2

メモリの書き込みまたは呼び出し信号である.信号レベル H の時に書き込み,レベル L の時に 呼び出しである.

ldaRR c2

PCI FPGAから出力された32ビットのアドレス・バスである.本研究では,0〜7ビット目までをデ

コード することで,ブロック1〜4を選択する.

datvldRRR c2

ライト・サイクルでは,Pldio上の有効データを示す信号線である.この信号レベル H の時にPldio

2 to 4 DeMUX with Enable(破線枠の外)

得られたアドレスをデコードし ,どのメモリを初期化するかを振り分ける.このデマルチプレクサからの出 力信号の意味を以下に説明する.

ctrle

メモリETSA,Pα,回路のリセットのうち初期化を行うイネーブル信号である.

MBwe

メモリM,Bを初期化するイネーブル信号である.

ETS awe

メモリETS(A)を初期化するイネーブル信号である.

ETS bwe

メモリETS(B)を初期化するイネーブル信号である.

2 to 4 DeMUX with Enable(破線枠の中)

得られた入力データをデコードし ,回路のリセット,回路の実行開始,レジスタPαの書き込みイネーブル のうち選択する.このデマルチプレクサからの出力信号の意味を以下に説明する.

Resete

回路のリセット・イネーブル信号である.

Starte

回路の実行開始のイネーブル信号である.

Pawe

レジスタPαの書き込みイネーブル信号である.

memSel

初期化を行うメモリを選択する.

ldiRwe

D Q

Q SPFD1P3AX

OBZ12 D QQ SPFD1P3AX

ldoeN ldiR

ldoRwe

ldo ldaRwe datavld clk

rdwrN D QQ FD1S3AX

D Q

Q SPFD1P3AX D QQ SPFD1P3AX

ldaR memioNmemioR

32 32 E

ldaRR_c2[7:6]

32

3232 D QQ FD1S3AX

ldaRR_c2 32

ldoR ldi rdwrRD QQ SPFD1P3AX Dec1e D QQ FD1S3AXdatvldR

datvldRRR_c2

rdwr D QQ FD1S3AX

datvldRR memioRR_c2

rdwrRR_c2

D Q

Q FD1S3AX D QQ FD1S3AX

32

ldiRR_c2 D QQ FD1S3AX ’1

clk_d2 D QQ FD1S3AX

temp_resetN

clk use13_8 line_three datvldRrdwrR memioR

sel_unit_en

D Q

Q FD1S3AX

unit_enRR_c2unit_enR 4D QQ SPFD1P3AX

X4

use13_8 reset_system line_three datvldRrdwrR memioR

reset_allN 32

unit0_out unit1_out

ldaR[3:2] 32

0 1 2 3

unit2_out unit3_out end_unit

over_flow count_found(unit_out[2]) (unit_out[31:16]) found (unit_out[0])(unit_out[1]) clk

D SPFD1P3DX CD 図64:I/Oウィンドウを用いたインタフェース回路

ドキュメント内 thesis_main3.dvi (ページ 79-84)

関連したドキュメント