software

KEKのテストベンチで使用しているマシンは3台(2013.7.24現在)

elec20 : windowsXP(ISE9.2iでHDLの編集をする際に使用)
elec21 : linux(SL, SSWの操作をする)
elec22 : linux(PPG, Interrupt Register, PT5, TTCの操作をする)

command

基本のコマンドは最上位の“command”というディレクトリにあり,各自,ここからコピー点編集して使用するのが良い.

elec21:/command/
elec22:/command/

PPG

Directory : elec22:/command/PPG/

$ ppg2 [address] [dl,ro] [out_filename]
 dl ... [out_filename]で指定したfileをPPGに書き込む  
 ro ... [out_filename]で指定したfileを読み出す 
$ ppg2 [address] [option]
 [option] : reset,trigger,single,repeat,int,ext,depth,read_csr
  reset   ... PPG reset
  trigger ...
  single  ... PPGに書き込む信号を一度だけ出力
  repeat  ... PPG入力信号を繰り返し出力
  int     ... 内部clock
  ext     ... 外部clock
  depth   ... PPGに書き込むdataの深さ
  read_csr

Pulse Patternを設定 → Interrupt Registerからトリガー信号を出す

$ ./setppg.sh
テストするパターンに応じて,適宜,編集して使うこと.

Sector-Logic

Directory : elec21:/command/sl_command/

$ sl <sl address> <operation> [arguments]
$ sl <sl address> c <chip> <filename>           : configure
$ sl <sl address> e <chip>                      : erase
$ sl <sl address> ea                            : erase_all
$ sl <sl address> r <chip> <address>            : read
$ sl <sl address> w <chip> <address> <value>    : write
$ sl <sl address> p2f <chip>                    : download      PROM to FPGA (※1)
$ sl <sl address> p2fa                          : download_all  PROM to ALL FPGA (※1)
$ sl address  : SL's 32bit address '0x'+(3char)
chip        : 0( fpga0 ) , 1( fpga1 ) , 2( fpga2 ), cpld
value       : CPLD test registor is 8 bit
value       : FPGA delay register is 32bit [16'b0,4bit,0,3bit,0,3bit,0,3bit]
value       : GlinkMonitor test register is 32bit

PROMは現在使用していない.configurationする時は<operation>“c”を使い、bit fileから直接FPGAに書きこむ.

Configuration

$ ./conf.sh
3つのchip ( FPGA0, FPGA1, G-link Monitor ) をeraseし,まとめてconfigurationする.

SLへの入力信号を確認する

$ ./glinkmonitor.sh
ここで読み出される信号は,SLへのOptical入力に対して,HDLで指定されたdelayをかけただけのもの.
SLへの入力が正しいパターンが送られているかどうか,確認するのに便利.

TTC

Directory : elec22:/command/ttc/

$ ./ttc_write : TTCに書き込む
TTCに書き込む値を変更するには,ttc_write.cc を編集してmakeして$ ./ttc_write 

TTCの設定に関して

  • L1A信号のsourceをランダムモード、外部からのNIM入力、ECL入力から選択できる.
  • ランダムモードの場合は平均出力周波数を選択できる。
  • これらはレジスタによって設定できる。詳しくはTTCviのDocumentを参照。

SSW

Directory : elec21:/command/ssw_command/

$ ./sswmaskcci.sh
デフォルトではマスクがかかっている(データが入力できない)のでマスクを外す

$ ./setdepth 
SLB ASICのFIFOの深さ設定 (※編集中)

PT5

directory: elec22:/command/pt5/

$ ./pt5 <pt5 address> <operation> [arguments]
$ ./pt5 <pt5 address> c <chip> <filename>           : configure
$ ./pt5 <pt5 address> e <chip>                      : erase
$ ./pt5 <pt5 address> r <chip> <address>            : read
$ ./pt5 <pt5 address> w <chip> <address> <value>    : write
$ ./pt5 address : PT5's 32bit address '0x'+(3char)
chip        : 0( fpga0 ), 1( fpga1 ), cpld
address     : [0-15]
value       : 32bit

configuration

./pt5 0xf91 c 0 glfifo2.bit
glfifo2.bitはテストベンチ用のbit file

読み出し → 翻訳

./doglfifo.sh
testbench/software_kek.txt · 最終更新: 2019/02/15 09:07 (外部編集)
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0