1 / 23

MAXI-GSC  地上試験用    アナログ・デジタル処理ボード

MAXI-GSC  地上試験用    アナログ・デジタル処理ボード. GNV-190 ( 東工大 VME-UIO). 2002.04.29 release. 東工大       片岡、 河合 大阪大学     能町 (核物理センター) 理研        三原、 小浜 青山学院大学  吉田. 開発目的. MAXI –GSC フライト品の地上試験を円滑に行う。 特に、センサ+アナログ部 ( AE ) 、デジタル処理部 ( DP ) の性能を、 独立な環境で 試験. 電気消去可能な FPGA を利用

keziah
Download Presentation

MAXI-GSC  地上試験用    アナログ・デジタル処理ボード

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MAXI-GSC 地上試験用   アナログ・デジタル処理ボード GNV-190 (東工大 VME-UIO) 2002.04.29 release 東工大       片岡、 河合 大阪大学     能町 (核物理センター) 理研        三原、 小浜 青山学院大学  吉田

  2. 開発目的 MAXI –GSCフライト品の地上試験を円滑に行う。 特に、センサ+アナログ部(AE)、デジタル処理部(DP) の性能を、独立な環境で試験 電気消去可能なFPGAを利用 同じハードウェアで両方を実現 汎用のシステム(VMEバス+Linux)を用いて簡便で 機能性の高いデータ処理系を構築

  3. ボードの使用形態 (1)擬似DPとして AE データ QL linux GSC カウンタ エレキ (MDP) TIT ボード コマンド μ-D sub RS422 VME-bus GSC・エレキに任意のコマンドを送信 AE からデータを取得し、メモリに詰める QLはメモリデータを画面表示する カウンタ・フライトエレキの試験

  4. (2) 擬似AE として AE データ VME linux TIT ボード 地上系 QL DP コマンド VME-bus RS422 TCP/IP DPからのコマンドを受け取り、識別 メモリをダンプし、擬似AEデータを送る メモリを書き換えれば、あらゆるパターンが可能 DPの詳細試験とバグ出し 地上QL系の作成補助

  5. ボードのハードウェア構成 - front panel - LED インジケータ トリガ入出力 (信号の確認) USB (not used) RS422 (擬似 AE 専用) 外部クロック入力 (not used) JTAG (FLEXへの ダウンロード) RS422 (擬似 DP 専用)

  6. ボードのハードウェア構成 - side view – DIPスイッチ (VME  アドレス) RS422 インター ェース EEROM (MAX7000) Altera- FPGA (100,000 Gate) 高速SD-RAM (16 Mbyte)

  7. ボード全体の機能構成 Miscellaneous (LED/JTAGなど) E2-ROM MAX7000 VME インターフェース FPGA FLEX (10万ゲート) External I/O (バストランシーバ) フロントパネルI/O (Dサブ, レモ出力) メモリー (16MB) Flex/MAXは3.3 V デバイスを用いる FLEX … EPF10K100ARC240-3 MAX … EPM7128AETC100-5 SDRAM … μPD45128441

  8. FPGA構成 (擬似DP) HDL (Hardware Description Language)でプログラミング (http://www.hp.phys.titech.ac.jp/kataoka/FTP.html) pde_final io_ctr in_ctr AEデータ 制御 コマンド・データ 入出力の制御 外部のROMや メモリとの接続定義。 内部モジュールの信号 接続定義。 AE宛コマンド 制御 out_ctr mem_ctr ptr_ctr メモリ制御 メモリーへの アクセス制御 vme_ctr VMEバスの アクセス制御 usb_ctr USBのアクセス制御 (現在対応せず)

  9. メモリ構成(ダブルバッファ: 擬似DP) - 「データ数格納領域」「ポインタ・ビット数格納領域」 ×2 に分ける - データの書き込みをしていないバッファでQL 側へ。 終了後、Buffer A/B を切り替える。 AF000000 AF200000 Bit count 1 Bit count 1 Buffer A Packet pointer 1 Packet pointer 1 Buffer B Bit count 2 Bit count 2 Packet pointer 2 Packet pointer 2 RING BUFFER Buffer A 1Mbyte 1Mbyte Buffer B AF100000 AF300000 Data packet1 Data packet1 Data packet2 Data packet2 Data packet3 Data packet3 仮想的なリングバッファを構成 1Mbyte 1Mbyte

  10. FPGA構成(擬似AE) (http://www.hp.phys.titech.ac.jp/kataoka/FTP.html) AE宛コマンド 制御 pae_final io_ctr in_ctr コマンド・データ 入出力の制御 外部のROMや メモリとの接続定義。 内部モジュールの信号 接続定義。 AEデータ 制御 out_ctr mem_ctr メモリーへの アクセス制御 vme_ctr VMEバスの アクセス制御 の部分が擬似DP と異なる usb_ctr USBのアクセス制御 (現在対応せず)

  11. メモリ構成(擬似AE) あらゆる擬似データパターン・出力レートが実現可能 BC000000 flg 出力タイミング • メモリーの内部に、異なる種類の •  データをダウンロードしておく GSC-data 上位 32bit GSC-data 下位 32bit flg 出力タイミング VME側 で指定 GSC-data 上位 32bit GSC-data 下位 32bit • 受け取ったコマンドにより、参照する •  メモリーアドレスを指定 flg 出力タイミング GSC-data 上位 32bit GSC-data 下位 32bit - 出力タイミング31bit を調整し、 0.01~2000 evt/sの任意のレート 4Mbyte 0 0

  12. まとめ MAXI-GSC 地上試験用のボードを開発した • - ハードウェアは完成 • プログラムのバグ出しも終了した(と思う) • - 9月中に、受け側のQL ソフトを立ち上げる R2 から本ボードを活用する機会が増えると思うので、 特に若い人の修行を歓迎 ^^; (とりあえずはQLのお仕事)

  13. VMEアドレス設定 (擬似DP register) Don’t Care (メモリ側の指定) A31 A30 A29 A28 A27 A26 A25 A24 DIPスイッチでハード指定 (デフォルトは “1100110111001100” = CDCC) A23 A22 A21 A20 A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 ユーザー がソフト的に 配分 A7 A6 A5 A4 A3 A2 A1 A0 レジスタにアクセスする場合は、24bit アクセスでA23-A8 の値を参照。 A7 以下は次ページのように配分する (最大 256通りのレジスタが定義可)。

  14. VMEアドレス設定 (memory アクセス) DIPスイッチでハード指定 (デフォルトは “101011”) base[] の値で指定 (デフォルトは“11”) メモリのアドレス “AF******” A31 A30 A29 A28 A27 A26 A25 A24 A23 A22 A21 A20 A19 A18 A17 A16 Don’t Care (レジスタ 側の設定) A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 メモリーにアクセスする場合は、32bitアクセス で A31-A24 の値のみ参照 (A23 以下のDIPスイッチの設定によらない) メモリサイズは 224 byte = 16 Mbyteまで可能。ただし、現状ではA23, A22 を “00” として4Mbyte のみを使用。つまり AF000000~AF3FFFFFF。

  15. メモリ制御シーケンス(mem_ctr) 160 us idle wait Mode- set 10 usに1度 refresh refresh0 v1 v0 ref1 base[] = v_address[] v_mem_ws v_mem_rs v_mem_ws v_mem_rs ref2 vwite1 vread0 ref4 base[] = v_address[] vwrite 2..13 vread 1..13 ref3 v_mem_ws refresh シーケンス メモリread シーケンス (VME 経由) メモリwrite シーケンス (VME 経由) vwrite14 vread14

  16. FPGA内部バス構成(擬似AE) V_A v_address io_address V_D v_data io_data vme_ctr mem_ctr SDRAM (16 Mbyte DBL buff) M_D io_ctr M_A usb_ctr out_ctr in_ctr AE宛 コマンド AE データ VME/USB コントロール Serial I/O

  17. VMEアドレス設定 (擬似AE register) Don’t Care (メモリ側の指定) A31 A30 A29 A28 A27 A26 A25 A24 DIPスイッチでハード指定 (デフォルトは “1100110011001100” = CCCC) A23 A22 A21 A20 A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 ユーザー がソフト的に 配分 A7 A6 A5 A4 A3 A2 A1 A0 レジスタにアクセスする場合は、24bit アクセスでA23-A8 の値を参照。 A7 以下は次ページのように配分する (最大 256通りのレジスタが定義可)。

  18. レジスタの配分( A7~A0:擬似DP) A7~A0 レジスタの種類 操作の内容 00 outctr_reg AEへのコマンドを書き込む 04 inctr_reg 入力AEデータの確認(debug 用) 08 buffer_reg dbl-buffer の切り替え (0x00… bufferA/ 0x100 bufferB) 0C wrd_ptr_A buffer A のデータ格納領域指定 10 wrd_ptr_B buffer B のデータ格納領域指定 14 pkt_ptr_A buffer A のポインタ格納領域指定 18 pkt_ptr_B buffer B のポインタ格納領域指定 20 p_ptr 現在のデータ格納領域(debug用) 24 w_ptr 現在ポインタ格納領域(debug用) 50 memctr_reg メモリアドレスA25-24の指定 たとえば、AE宛のコマンドを送信する場合は “CDCC00”に コマンドデータを書き込む。

  19. レジスタの配分( A7~A0:擬似AE) A7~A0 レジスタの種類 操作の内容 00 mem_addset 出力の入ったメモリアドレスを指定 04 memout_go AE出力のGO 08 cmddat_reg 入力コマンドの確認 0C cmdbit_reg コマンドビット数の確認(debug用) 10 cmdflg_reg コマンド入力のフラグ 14 cmdack_reg コマンド処理後の確認フラグ 50 memctr_reg メモリアドレスA25-24の指定 • たとえば、AE宛のコマンドを受け取った場合  • CCCC10 によりコマンド受信を知り、 • CCCC08でコマンドの内容を照合。正しいコマンドであった場合 • CCCC14にACK を返す。 • CCCC00 に、対応するAEデータの入っているメモリアドレスを指定し • CCCC04でAEデータの出力をスタートする

  20. VMEアドレス設定 (memory アクセス) DIPスイッチでハード指定 (デフォルトは “101111”) base[] の値で指定 (デフォルトは“00”) メモリのアドレス “BC******” A31 A30 A29 A28 A27 A26 A25 A24 A23 A22 A21 A20 A19 A18 A17 A16 Don’t Care (レジスタ 側の設定) A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 メモリーにアクセスする場合は、32bitアクセス で A31-A24 の値のみ参照 (A23 以下のDIPスイッチの設定によらない) メモリサイズは 224 byte = 16 Mbyteまで可能。ただし、現状ではA23, A22 を “00” として4Mbyte のみを使用。つまり BC000000~BC3FFFFFF。

  21. FPGA内部バス構成(擬似DP) V_A v_address io_address V_D v_data io_data vme_ctr mem_ctr SDRAM (16 Mbyte DBL buff) io_ctr M_D ptr_ctr M_A usb_ctr in_ctr out _ctr AE宛 コマンド AE データ VME/USB コントロール Serial I/O

  22. メモリ制御シーケンス(mem_ctr) 160 us idle wait Mode- set 10 usに1度 refresh refresh0 v1 i0 ref1 base[] = v_address[] v_mem_ws io_mem_rs v_mem_ws io_mem_rs ref2 vwite1 iread0 ref4 base[] = v_address[] vwrite 2..13 iread 1..13 ref3 v_mem_ws refresh シーケンス メモリwrite シーケンス (VME経由) メモリread シーケンス (I/O経由) vwrite14 iread14

  23. I/O制御シーケンス(io_ctr:擬似AE) idle fetch_ first fetch_ data int_cmd (メモリ読み出しの インターラプト。 新しいメモリ アドレスをセット) inc_ ptr1 ptr++ newptr_ set flg !flg !int_cmd wait chk_ csr end_ data csr[31..0] == 0 exec_ send send read_ hdata send_ ldata AEデータ 下位4byte出力 inc_ ptr2 inc_ ptr3 ptr++ ptr++ AEデータ 上位4byte出力 read_ ldata send_ hdata

More Related