MTPEXーDX 1 PEXDX_DX仕様 PCI Express PCI Expressチップは PLX PEX 8311 PEX8311は PCI Express <-> PCI-Xブリッジである PEX8111 と PCI <-> ローカル PCI 9056を組み合わせた回路構成になっています 8111 ブリッジ部分は基本的にデフォルト設定で動作します 8111 ブリッジ部の コンフィグレーションレジスタは 8111 10B5 とPLXのID情報として読み出されます 無視して問題有りません 従って ソフト的には 8111 ブリッジ部は無視し PCI 9056の普通のPCIバスボードとして動作します I/Oポートと DMAチャンネル 0 機能のみ使用します DMAチャンネルの使用には PCIチップ 内部ローカルレジスタの設定が必要となります PCI コンフィグレーションレジスタ 読み出し手順に従って読み出された値は 次の様になります 00h 04h 08h 0Ch 10h 14h 18h 1Ch 20h 24h 28h 2Ch 30h 34h 38h 3Ch Device ID/Vender ID Status/Command ClassCode/Revision ID BIST/H Type/PCI Latency/C L Size PCIBAR0 PCIベースアドレス 内部レジスタ メモリマップ PCIBAR1 PCIベースアドレス 内部レジスタ I/Oマップ PCIBAR2 PCIベースアドレス I/Oポート Subsystem ID/Subsystem Vender ID Max_Lat/Min_Gnt/Int Pin/Int Line [4458 4D54]*1 [0680 0000] *2 *2 *3 [4458 4D54]*1 *1 4D54h(MT)は マイクロテクニカ PCI VenderID 登録コードです 4458h(DX)は 弊社基板コードです *2 PCIチップ 内部ローカルレジスタをアクセスする ベースアドレスになります メモリマップでアクセスする場合は PCIBAR0 I/Oマップでアクセスする場合は PCIBAR1 を使用します *3 ボードのI/Oポートをアクセスする ベースアドレスです I/Oマップです ** ベースアドレスの最下位ビットは メモリ(0)かI/O(1)かを示していますので 実際のアドレスは 0とします PCIチップ 内部ローカルレジスタは DMAチャンネル0 関係のみの設定が必要となります 他レジスタは 設定しないで下さい 80h 84h 88h 8Ch 90h A8h DMA DMA DMA DMA DMA DMA Ch Ch Ch Ch Ch Ch 0 0 0 0 0 Mode PCI Address Local Address Transfer Byte Count Descriptor Pointer Command/Status Register CONFIGURATION EEPROM DATA 00h 10h 20h 30h 40h 50h 60h 4458 0000 0060 0000 0000 0000 0000 4D54 0000 0500 0000 0000 0000 0000 0680 FFFF 0000 0000 4458 0000 (参考値 0000 FF01 0000 0000 4D54 4C06 変更の可能性があります) 0000 0000 0000 0000 0000 0000 I/Oポートは xx00~xxFFh 256ポート占有します 0100 0001 0000 0000 0000 0000 0000 0020 4203 0000 0000 0000 0000 0000 0043 0000 0000 0002 [PCIBAR2] - 1 - ワード単位 2 コネクター表 RGBカメラコネクタ ピンNO 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 カメラコネクタ ピンNO 1 2 3 4 5 6 7 8 9 10 11 12 DSUB15Pメス 信号名 RIN G/VIN BIN RXD GND GND GND WEN-B +12V GND TXD TRG-B HD-B VD-B WEN-A ヒロセ12Pメス 信号名 GND +12V GND G/VIN GND HD-A VD-A GND RIN WEN-A TRG-A GND シュリンクタイプ 用途 映像信号入力 〃 〃 TTL入力信号 コモン 〃 〃 TTL入力信号 カメラ電源 コモン TTL出力信号 TTL出力信号 TTL入出力信号 TTL入出力信号 TTL入力信号 映像 R 〃 G (カメラ A) 〃 B (カメラ B) シリアル受信データ 画像インデックス-B (SYNC入力) +12V MAX 0.5A シリアル送信データ シャッタートリガ-B 水平同期 -B 垂直同期 -B 画像インデックス-A HR10A-10R-12S 用途 コモン カメラ電源 コモン 映像信号入力 コモン TTL入出力信号 〃 コモン 映像信号入力 TTL入力信号 TTL出力信号 コモン 映像 +12V MAX 0.5A 映像 モノクロ 水平同期 -A 垂直同期 -A 映像 R 画像インデックス-A シャッタートリガ ーA *1 12V電源は パソコン電源の +12Vが出力されています 消費電流に注意して下さい カメラの消費電力が10W以上の場合は別電源を用意して下さい *2 映像系信号は全て 75Ω終端されています DIOコネクタ ピンNO 1 2 3 4 5 6 7 8 9 DSUB 9Pメス 信号名 DIO4 DIO5 DIO6 DIO7 TTL7 +12V ICOM OCOM GND 用途 DIO 入出力信号 〃 〃 〃 TTL 入出力信号 電源 DIO 入力コモン DIO 出力コモン コモン アイソレーション信号 -4 〃 -5 〃 -6 〃 -7 ノンアイソレーション信号 -7 ノンアイソレーション電源 MAX 0.1A アイソレーション入力コモン + 5~24V アイソレーション出力コモン ノンアイソレーション * DIO4~7は フォトカプラによるアイソレーション入出力信号 アイソレーション信号として使用する場合は 外部(相手)電源を ICOM/OCOMに接続して下さい - 2 - 3 構成 3.1 I/Oポート コマンド/スティタスレジスタ TTL入出力ビット モードレジスタセット DMA転送ラインカウンタ GTRG経過カウンタ ボード情報 レジスタ指定 画像入力ラインカウンタ セット/クリアビット 取り込みカウンタ DIO入出力ビット 割り込み シリアル送受信データ シリアルスティタス パネル信号 ポート0 ポート 0 ポート 4 ポート 8 ポート 8 ポート 8 ポート 8 ポート C ポート C ポート14 ポート14 ポート18 ポート1C ポート20 ポート24 ポート48 コマンド,スティタスレジスタ [xx00h] OUT バイト [xx04h] IN/OUT バイト [xx08h] OUT バイト/ワード [xx08h SR:00h] IN 32ビット [xx08h SR:24h] IN 16ビット [xx08h SR:FFh] IN 32ビット [xx0Ch] OUT バイト [xx0Ch] IN 32ビット [xx14h] OUT バイト [xx14h] IN バイト [xx18h] IN/OUT バイト [xx1CH] IN/OUT バイト [xx20H] IN/OUT バイト [xx24H] IN バイト [xx48H] IN/OUT バイト IN/OUT 画像入出力コマンド(OUT) 及び スティタスレジスタ(IN) です ポート4 TTL入出力ビット IN/OUT TTL汎用入出力ビットのIN/OUTです ポート8 モードレジスタセット 入出力ビットは8ビットです OUT モードレジスタ類,カウンタ等のセットポートです OUTのみです レジスタにより バイト/ワードになりますが 基本的にワードにてセットします バイトレジスタのセットにワードでアクセスした場合 上位バイトは無視されます ポート8 [SR:0] DMA転送バイトカウンタ IN DMA開始時からのバイトカウンタ値が読み出されます SRコード0にてINして下さい カウンタは32ビットです GETコマンド発行時に 0クリアされます ポート8 [SR:24H] GTRG経過カウンタ IN GTRG入力からの経過時間の目安となるカウンタです SRコード24hにてINして下さい カウンタは16ビットで GTRG信号入力にて0クリアされ 常時インクリメントし FFFFhにてストップします 循環しません カウンタクロックは 15.734KHz(63.55μS)です PCIバスのクロックとは非同期に変化するカウンタですので 誤読みの可能性があります 2度読みして下さい ポート8 [SR:FFH] ボード情報 IN ボード情報が入力できます SRコードFFhにて 32ビット INして下さい 32ビットデータは 以下になります D7~0 : スィッチ 8ビット 0:OFF 1:ON (SIP SW) D15~8 : ロジックバージョン 8ビット 0~FFh D31~16: ロジックコード 16ビット 4458h (DX標準仕様 DC2+α) * ロジックバージョンは 大きなロジック変更(ソフトに影響を与える)を行った時に +1します ロジックコードは 基本的な仕様が違う場合 それに合わせたコードにします ポートC レジスタ指定 SRコード OUT ポート8の対象レジスタの指定を行います SR0~6 7ビット を D0~6にて セットします ポートC 画像入力バイトカウンタ IN 画像入力中のバイトカウンタ値が読み出されます カウンタは 32ビットです GETコマンド発行時に 0クリアされます ポート14 セット/クリアビット OUT 各ビット単位で補助コマンドが発行されます ビット1セットにて下記になります D4: DIO OUT用フォトカプラをディセーブル状態(ALL OFF)にします D3: 取り込みカウンタを0クリアします D0: パルス出力 D8~12: 割り込み要因クリア (INTMD:1) * 単発動作です ラッチしませんので0クリアは不要です - 3 - ポート14 取り込みカウンタ IN 取り込みカウンタ値が読み出されます カウンタは8ビットで 画像取り込み毎に+1されます ポート18 DIO入出力ビット 取り込んだ画面数となります IN/OUT DIOビットの入出力ポートです ポート1C 割り込み IN/OUT 割り込みを制御できます OUTにて割り込みのディセーブル/イネーブル制御 ポート20,24 シリアル送受信 ポート20で送受信データのIN/OUT ポート48 INにて割り込み要因のチェックができます パネル信号 ポート24でシリアルスティタスビットのINを行います OUT パネルLEDの点灯制御を行います 3.2 コマンドレジスタ コマンドレジスタは ポート0 OUTにてセットします D7 GETC D7 GETC D6 GMOD D5 DDMD D4 - D3 - D2 - D1 - D0 - 画像取り込み このビットを 1にセットするとカメラ等からの画像取り込みが開始されます 取り込みビットは内部で垂直同期信号に同期されます DMA転送バイト量設定値分のデータ入力で自動的に取り込み終了となります D6 GMOD 取り込みモード 0の場合 1画面取り込みとなります 1の場合 複数画像取り込みとなります 画像取り込み量は DMA転送バイト量に依存します 1画面取り込みの場合は 1画面のデータ量とDMA転送バイト量を一致させ このビットを0として下さい 複数画面取り込みの場合は 画面数量のDMA転送バイト量を設定し このビットを1にします D5 DDMD GMODが1に設定され複数枚処理となった時 1画面取り込み時点で DMA転送できないデータがバッファメモリに残ります これは バッファメモリが ある程度のデータが入力されないと先のデータを読み出す事ができないと言う性質によるものです また PCIバスの占有率が低い場合には DMA転送が間に合わず かなりのデータがバッファメモリに残っている場合もあります この残ったデータの処理を DDMDビットにて設定します DDMDが0の時は残データは そのままにします この残データは次の画面入力にて DMA転送されます 最終画面の残データのみ強制的にDMA転送させます DDMDが1の時は 各画面単位に残データを強制的にDMA転送させます 但しこの場合 強制的にDMA転送させますので このDMA転送 が終了しないうちに 次の画面入力が始まりますと 画像入力が乱れ正しいデータが得られなくなります PCIバスの占有率に十分な余裕がある時のみこのモードにして下さい DMA転送に余裕が有る場合なら 強制的DMA転送は100μS程度 で終了します GMODが0で 1画面取り込みの場合は このビットに関係無く強制DMA転送が行われます * 画像GET中 GMOD,DDMD,他モードビット等は変更しないで下さい インターレス画像の取り込み GETコマンドは基本的にVDに同期されますが 2:1インターレスモード時は フィールド信号に同期されます これによりメモリに転送される画像データのフィールドが確定され 第1フィールド,第2フィールドの順に転送されます しかしフィールド信号に同期させる為 画像取り込みが 最大1/30秒遅れる事になります ITRGMビットを1にセットすれば 2:1インターレスモード時もVD同期になり先フィールドから画像取り込みを開始します 但し先にきたデータから順にメモリ転送が行われますので システムメモリ 画像データのフィールド関係が不定になります この場合 スティタスビットのFLDGビットにてフィールド関係をチェックして下さい このスティタスビットは 画像データの先(前半)データのフィールドを示しています 0の場合 第1,第2の順になり 1の場合 第2,第1の順となった事を示します - 4 - 3.3 スティタスレジスタ スティタスレジスタは ポート0 INにて読み出されます D7 GETG D6 GETS D5 GETX D4 NSVD D3 FLDG D2 DMAG D1 DMAER D0 SRBSY D7 GETG 画像入力中を示します GETコマンドセットにて 1になり GET終了にて 0になります D6 GETS コマンドレジスタで画像取り込みコマンドを実行しても すぐに入力中になるわけではありません 垂直同期信号と同期されて入力が始まります このビットは実際の入力中タイミングが反映されます D5 GETX GETコマンド実行にて 1画像取り込まれたら 1になります 次のGETコマンド実行迄保持されます D4 NSVD NSVDはカメラ等入力ソースの垂直同期信号 1の時 同期信号期間を示しています D3 FLDG 2:1インターレスカメラの画像取り込み 先フィールドモード時の画像データ前半のフィールドを示します 1の時 第1フィールドから画像が取り込まれた事を示します 0の時 第2フィールドから画像が取り込まれた事を示します D2 DMAG DMA転送中 1です 実際の転送終了に対して 50~100μS程度遅れて 0になります 転送終了を早く知りたい場合は PCIチップ スティタスレジスタをチェックして下さい D1 DMAER DMA転送が間に合わず 入力バッファメモリが満杯になった場合 1になります 次のGETコマンド実行迄保持されます D0 SRBSY 回路の一部に モード設定等にシリアルバスを使用している物があります このビットはそのシリアルバスの使用状態を反映しています 0:READY 1:BUSY BUSY時 次の設定ができない設定項目がありますので注意して下さい - 5 - 3.4 モードレジスタ,カウンタのセット OUTポート8にて 各モードレジスタ類をセットします OUTポートCにて ポート8セットの対象レジスタを指定する SRコードをセットします ポートC にて SRコードをセットして ポート8にて モード等をセットします ポート Cはバイトです ポート 8はダブル/バイト/ワードですが 全てダブルワードでOUTしてかまいません OUTポート C D7 SR7 D6 SR6 D5 SR5 D4 SR4 D3 SR3 D2 SR2 D1 SR1 D0 SR0 D14/6 D13/5 D12/4 D11/3 D10/2 D9/1 CLKDV1 STRMD2 VCKPOL CLKDV0 INP1 AGSTP STRMD1 VCOFS CCKDV1 D8/0 SYCOG INP0 WENMD SMPSL OUTポート 8 モードレジスタ SR:xxh D15/7 U 00 L LINMD U 01 L RNDST U VCKDL3 02 L ITRSM U CHKPS3 03 L EHCKS1 U 04 L U 05 L SDIR7 U 06 L SPOL7 U 07 L SMOD7 U INTMD 08 L U 0A L U 0B L RXPOL SYCOG LINMD BMMD COL3D INP1,0 AGSTP RNDST SYTRM SYCMD1,0 EXGTM STRMD2-0 BMMD SYTRM VCKDL2 ITRGM CHKPS2 EHCKS0 COL3D SYCMD1 VCKDL1 MQCKS CHKPS1 SHTCKS PLSSL1 WENSL1 SYCMD0 VCKDL0 CLKSEL CHKPS0 SDIR6 SDIR5 SDIR4 SPOL6 SPOL5 SMOD6 SMOD5 EXGTM GTGSL2 STCKS1 SRBSL1 GTGSL1 STRMD0 VCOPH CCKDV0 FLDPL STCKS0 SRBSL0 GTGSL0 SDIR3 SDIR2 SDIR1 SDIR0 SPOL4 SPOL3 SPOL2 SPOL1 SPOL0 SMOD4 SMOD3 SMOD2 SMOD1 SMOD0 TXDPOL TXSTTB TXOE TXPAR PLSSL0 WENSL0 GCTEN RXDPOL RXSTTB RXIE RXPAR TXPOL RGB同期信号 カメラ選択 バッファメモリ カラーデータ選択 入力選択 取込自動終了 シャッター制御 SYNC終端 カメラ同期モード 外部取込禁止 シャッタトリガモード 0:SYNC 1:VIN 0:エリア 1:ライン 0:1系統 1:3分割 0:RGB1:RGB 0:モノ 1:2:3:RGB 0:OFF 1:カウンタ 0:フリー 1:ランダム 0:OFF 1:ON 0:外部HV 1:外部H 2:内部C 3:内部HV 0:フリー 1:VDSC 0:NRM 1:TRG 2:TRG-VD 3:VD-TRG 4:TRG-TRG 5:TRG-TSG 6:TRGVC VCKDL3-0 VCLK位相調整 16段階 VCKPOL VCLK極性 0:ノーマル 1:反転 VCOFS VCO基準クロック 0:63kHz 1:HD VCOPH VCOクロック極性 0:ノーマル 1:反転 ITRSM 走査モード 0:NI 1:I ITRGM GET走査モード 0:第1F 1:先F MQCKS 入力原クロック 0:49M 1:VCO CLKSEL 入力クロック 0:VCO 1:原クロック/2 CLKDV1,0 クロック分周 0:1/1 1:1/2 2:1/3 3:1/4 CCKDV1,0 カメラクロック 0:1/1 1:1/2 2:1/3 3:1/4 FLDPL FLD極性 0:NRM 1:反転 EHCKS1,0 HD/VD検出クロック 0:12M 1:6M 2:3M(NRM) 3:1.5M SHTCKS パルス出力クロック 0:HD 1:VD WENMD WENモード 0:VD 1:GTRG_S SMPSL クランプパルス 0:カメラHD 1:外部同期HD STCKS1,0 シャッタ-制御クロック 0:HD 1:VD 2:4μS(252KHz) 3:PLSSL1,0 パルス出力 0:1:- 2:- 3:DIO5 SRBSL1,0 ストロボ出力 0:1:- 2:- 3:DIO4 WENSL1,0 インデックス入力 0:WEN-A 1:TTL7 2:- 3:DIO6 GTGSL1-0 GTRG選択 0:TTL7 1:- 2:- 3:DIO7 4:PNLSW 5:自動HD 6:自動VD SDIR7-0 信号方向 0:入力 1:出力 SPOL7-0 信号極性 0:正 1:負 SMOD7-0 信号モード 0:汎用 1:カメラ GCTEN 取込カウンタ 0:OFF 1:ON INTMD 割込要因クリア 0:IN 1Ch 1:OUT 14h RXIE,TXOE,RXPOL,RXDPOL,RXSTTB,RXPAR,TXPOL,TXDPOL,TXSTTB,TXPAR シリアルモードビット - 6 - カウンタ SR:xxh 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3D 3E 3F 40~47 カウンタ VCA 入力クロック PLL VCO 12ビット 11~0 SRCK シリアルボーレートクロック 12ビット 11~0 UNBP UNBW VUBP VUBW HDSC HDPW VDSC VDPW TRGW SRBW GSRB カメラ画像水平有効位置 〃 幅 カメラ画像垂直有効位置 〃 幅 HD/LINE繰返レート HD/LINEパルス幅 VD繰返レート VDパルス幅 TRGパルス幅 SRBパルス幅 SRB位置 GEXD GEXF SHOT GTRG遅延 GTRGフィルタ パルス幅 AGSP VLBV 10ビット 12(16)ビット 8ビット 16ビット 16ビット 8ビット 16ビット 5ビット 16ビット 8ビット 8ビット 9~0 15~4(0) 7~0 15~0 15~0 7~0 15~0 4~0 15~0 7~0 7~0 14ビット 8ビット 8ビット 13~0 7~0 7~0 自動取り込み終了 8ビット 7~0 ゲイン制御 8ビット 7~0 - 7 - 3.5 カメラの接続 モノクロカメラは ヒロセ12P カラーカメラは DSUB15Pコネクタに接続します ヒロセ12Pコネクタは一般的なEIAJ規格準処です DSUB15Pコネクタは東芝RGBカラーカメラのマップに合わせてあります カメラ電源出力 パソコン電源の12Vが出力されています 負荷10W以下で使用してください G/VIN,RIN,BIN 映像信号入力です モノクロ信号は G/VIN 0.7Vpp 75Ω終端されています カラーRGB信号は RIN,G/VIN,BINに接続します HD,VD,WEN,TRG 各A,B用意されていますが 出力は DX仕様ではA,B同信号が出力されます 入出力信号は 基本的にTTLレベルですが HD/VD出力は75Ω負荷でも2Vpp以上の振幅が確保されています 信号モード HD,VD,WEN,TRG 各信号モードは SDIR,SMOD,SMODビットで設定されます SDIR:信号の入出力 SPOL:信号極性 SMOD:信号モード 0:入力 0:正 0:汎用 1:出力 1:負 1:カメラ ビット対応は 0:HD 1:VD 2:TRG 3:TSG 6:WEN 水平同期信号 入出力 垂直同期信号 入出力 シャッタートリガ信号 出力 シャッタートリガW信号 出力 映像インデックス 入力 TRG-A TRG-B WEN-A (LINMD:0 エリアモード時のみ) 各信号をカメラ用信号として使用する場合は 各SMODビットを1にセットします SMODビットを0に設定された場合は ポート4にて制御される汎用TTLビットになります HD,VDはペアになっており入出力は一致されます HD出力 VD入力といった設定はできません SDIR0,1ビットのどちらかが1にセットされれば HD,VD両方とも出力になります 信号極性は ロジックレベルとコネクタ端での信号レベルが 0:L 1:H となる場合が正 逆の場合が負です HD,VD信号は出力の場合 A,B 同信号が出力されます 入力の場合は Aに接続します ラインセンサーカメラの場合は HD-A/VD-Aがライン信号 HD-B/VD-Bがクロックになります RS-422 HD:+ VD:- です TRG信号出力は シャッターモードが 5:TRG-TSGの時のみ A:TRG B:TSGが出力されます 他モードの時は BもTRGとなります WEN入力はAに接続して下さい ラインセンサーカメラの場合のWEN(エンコーダ信号)はDIOコネクタのTTL入力になります RGB入力時のSYNC信号は WEN-Bに接続して下さい RGB入力時 同期信号入力の選択が SYCOGビットにて設定できます 0:SYNC 1:VIN WEN-B入力 V/GIN入力 S_O_Gに対応できます SYNC時 75Ω終端するかどうかはSYTRMビットで設定できます - 8 - 0:終端無 1:終端有 3.6 カメラの設定 INP0,1 2ビットにて 入力信号を選択します 0: モノクロビデオ 1: 2: 3: カラー RGB ITRSMビットにて 走査モードが設定されます 0:ノンインターレス(プログレス) 1:インターレス(2:1) 2:1インターレスカメラの場合も ノンインターレス設定にすれば フィールド処理になります ITRGMビットは 2:1インターレスモード時 画像GETを フィールド信号に同期させるか VD信号に同期させるかの設定です 0:フィールド信号 1:VD信号 フィールド信号に同期させれば 必ず 第1フィールドから 画像取り込みを行います しかし 画像取り込み開始は 最大1フレーム遅れます VD信号同期の場合は 先にきたフィールドから取り込みを開始します メモリ前半のデータは どちらのフィールドデータか不定になりますが スティタス FLDGビットにて判断できます 画像取り込み開始の遅れは 1フィールドになります 同期モードは SYCMD1,0 2ビットにて設定します 0:外部同期 HD/VD ボードから HD/VD同期信号を出力し カメラ側を同期させます 1:外部同期 HD ボードからは HD信号のみ出力し カメラ側を同期させます VDは カメラのコンポジットビデオ出力信号から抽出された同期信号を使用します 2:カメラ同期 コンポジット カメラの出力信号にて ボードを動作させます コンポジットビデオ信号から HD/VD信号を抽出します 3:カメラ同期 HD/VD カメラの出力信号にて ボードを動作させます カメラコネクタ INB0,1信号を HD/VD信号とします 同期信号抽出クロックの設定 同期モードが1,2の場合 カメラの同期信号成分から VD信号やフィールド信号を抽出する必要があります EHCKS1,0 2ビットにて 設定します 0:12M 1:6M 2:3M 3:1.5M 高速カメラ等 倍速カメラ等 一般的カメラ 低速カメラ等 水平同期周波数 〃 〃 〃 40~60KHz 20~40KHz 10~20KHz 5~10KHz 水平同期周波数は目安です 同期信号のパルス幅等も関係します クランプパルスモードの設定 カメラの映像信号は一般的にAC結合信号です 従ってA/D変換の為にはDCクランプの必要があります このクランプパルスをどの信号から作るかを SMPSLビットにて設定します 0:カメラの映像信号から抽出された水平同期信号から作成します 1:外部同期用 HD出力信号から作成します 一般的には 0設定 カメラの水平同期信号からの作成で問題有りません 高解像度カメラ等を外部同期で使用し カメラの同期信号がうまく抽出できない時のみ 1に設定します FLDPLビットにて 2:1インターレス信号のフィールドを示すFLD信号があわない場合は極性を逆にできます - 9 - 0:NRM 1:反転 3.7 入出力クロックの設定 ボードの原クロックは 49.0909MHzです この原クロックから 入出力用クロックを生成します 入力クロックの設定 5M~80MHzの範囲で 入力クロックが設定できます 入力クロック生成は 分周カウンタとPLL+VCO回路にて構成されています カウンタの分周値は 出力ポートにて設定します 設定値はバイナリ値です カウンタ VCA : 12ビット D0~11 PLL回路の基準信号は 62.937KHzです (49.0909MHz/780) カウンタは VCO出力クロックを分周し PLL回路の比較信号を作成します PLL回路は 基準信号と比較信号が同位相になる様 VCO回路を制御します つまり VCO出力の周波数は 次の式にて計算できます クロック周波数 = 62.937KHz x カウンタの分周値 VCO回路の出力周波数には制限があり 10M~80MHzです 従ってカウンタ VCAの設定値は 160~1300程度で使用して下さい MQCKSビットにて 入力原クロックを選択します 0:49M 1:VCO 原クロックの49.0909MHzです 上記で作成された VCO出力です CLKSELビットにて 入力クロックを選択します 0:VCO 1:原クロック/2 上記で作成された VCO出力です MQCKSビットにて選択された クロックの1/2周波数になります 入力クロックが 49Mの分周周波数で良い場合は MQCKS:0 CLKSEL:1 にて 49Mの1/2 24.545MHzを選択します 原クロックの分周ですので安定度が一番良くなります 49Mの分周では無い場合は VCOを選択します カメラが 外部同期で使用する場合は CLKSEL:0 にて直接 VCOを選択します カメラが 外部同期で使用できない場合は MQCKS:1 CLKSEL:1 にて VCO出力の1/2を選択します この場合クロックは カメラのHD信号にデジタル的に位相合わせされますが 安定度は低くなります(ジッターが多くなります) CLKDV1,0 2ビットにて クロックを 更に分周できます 0:1/1 1:1/2 2:1/3 3:1/4 カメラ等からのHD信号を基準として画像クロックを作成する場合は VCOFSビットを1にセットします VCOFSビットは 上記VCO回路の基準クロックを選択します 0:62.937kHz 1:カメラ等からのHD信号 HD信号を基準としますので VCAの設定値は 水平1ラインの総クロック数(またはその倍数)となります VCOPHビットは VCO出力クロックを反転(180度位相回転)させます 反転させた方が水平系の信号が安定する様なら セットして下さい VCOで作成されたクロックは位相調整が可能です VCKDL0~3 4ビットで設定します 設定値 x クロック/32 (11度単位) 設定例 1) 12.2727MHz 一般的なエリアカメラ出力を 水平 640ドット アスペクト比 1:1 で取り込む場合に適した周波数です MQCKS:0 CLKSEL:1にて 24.5Mを選択し CLKDV:1 と設定します 2) 14.318MHz 一般的な 4fsc周波数です 一般的なエリアカメラをこの周波数で取り込んだ場合 水平 768ドット程度になります CLKSEL:0 VCO出力とし カウンタ VCA:455 CLKDV:1 を設定します 3) 20MHz (19.9825MHz) 一般的な周波数です CLKSEL:0 VCO出力とし カウンタ VCA:635 CLKDV:1 を設定します VCKPOLビットにてロジックで使用するVCLK(ビデオクロック)の極性を設定できます 0:ノーマル 取り込み画像が不安定な場合 反転させる事により改善される場合があります 1:反転 カメラクロックの設定 カメラクロックは CCKDV0,1 2ビットで分周できます 0:1/1 カメラクロックは HD信号等作成用クロック等として使用されます 1:1/2 - 10 - 2:1/3 3:1/4 3.8 カメラ信号の設定 カメラを外部同期で使用する場合の HD/VD信号を作成します HDSC HDPW VDSC VDPW 16ビット 8ビット 16ビット 5ビット D0~15 D0~7 D0~15 D0~4 HD信号繰り返しレート HD信号幅 VD信号繰り返しレート VD信号幅 水平カウンタクロックはカメラクロック CCLKです エリアカメラで走査が インターレスモード時は HD繰り返しレート設定値を半分に設定します この場合出力は2発に1発(1つ置き)になります 垂直カウンタクロックは HD信号です シャッタ-制御無しの場合は 作成されたVD信号が定期的に出力されます シャッタ-制御を行うモード時は シャッタ-シーケンス VDトリガにてVD信号を出力します パルス幅は VDPW設定幅です カメラ画像 有効位置,幅のカウンタ設定を行います UNBP UNBW VUBP VUBW 10ビット 16ビット 8ビット 16ビット D0~9 D0~15 D0~7 D0~15 カメラ画像水平有効位置 〃 幅 カメラ画像垂直有効位置 〃 幅 カウンタクロックは 水平用は ビデオクロック VCLK 垂直用は HDです 水平有効位置は HD信号の後エッジからのクロック数を設定します 幅はその位置からのドット数になります 垂直有効位置は VD信号の後エッジからのライン数を設定します 幅はその位置からのライン数になります 2:1インターレスの場合 垂直有効幅は片フィールド分になります フレームで480ラインの場合 片フィールド240本の設定になります 水平幅は 16クロック単位の設定となり 下位4ビットは無視され 0になります シャッター制御を行った時等 有効画像を正確に取り込む場合はWEN信号(画像インデックス)を利用します WENMDビットにてモードが設定できます 0:VD 1:GTRG_S VD信号の代わりとして画像を取り込みます WEN信号の入力検出後のVD信号から画像取り込みを行います WEN信号は エッジのみを利用し取り込みトリガになります 立ち上がり/立ち下がり どちらのエッジを利用するかは SPOL6ビットの 設定によります WEN信号は WENSL0,1 2ビットで選択します 0: 1: 2: 3: CMRコネクタ WEN-A DIOコネクタ DIO6 - 11 - 3.9 シャッターシーケンスの設定 シャッターシーケンスは 設定により TRG,TSG,SRB,VD信号を自動的に発生させ 画像取り込みを行います シャッター制御はカウンタにて設定されます TRGW 16ビット D0~15 TRG信号幅等 カウンタクロックは STCKS1,0 2ビットにて選択します 0:HD 1:VD 2:252KHz 3:- このカウンタの設定値 0は 1024ととして扱われます 但しSTRMDが3の場合のみ 0として扱われます STRMD2-0 3ビットにて シャッターモードを設定します 0:NRM 1:TRG 2:TRG-VD 3:VD-TRG 4:TRG-TRG 5:TRG-TSG 6:TRGVC 7:- シャッタ-制御無し TRG信号のみでシャッター制御 TRG信号とVD信号間にてシャッター制御 VD信号とTRG信号間にてシャッター制御 2発のTRG信号間にてシャッター制御 TRG信号とTSG信号間にてシャッター制御 TRG信号のみでシャッター制御 VD定期出力 0:NRM シャッター制御を行わないモードです シャッター制御が カメラ側でかってに行われる場合もこのモードにします 1:TRG TRG信号のパルス幅にて シャッター時間が決定される または TRG信号は単にトリガ信号になるカメラに対応します シーケンス起動にてすぐに カウンタ TRGW設定幅のTRG信号を発生します TRG信号終了後 3~4H(HD時間)にVD信号を発生し 画像取り込みを行います 2:TRG-VD TRG信号とVD信号間にて シャッター時間が決定されるカメラに対応します シーケンス起動にてすぐに TRG信号が発生され カウンタ TRGW設定幅後にVD信号を発生します TRG信号幅は TRGW カウンタクロック の1クロック分になります 3:VD-TRG VD信号とTRG信号間にて シャッター時間が決定されるカメラに対応します シーケンス起動にてすぐに VD信号が発生され カウンタ TRGW設定幅後にTRG信号を発生します TRG信号幅は TRGW カウンタクロック の1クロック分になります 4:TRG-TRG 2発のTRG信号間にて シャッター時間が決定されるカメラに対応します シーケンス起動にてすぐに TRG信号が発生され カウンタ TRGW設定幅後に2発目のTRG信号を発生します TRG信号幅は TRGW カウンタクロック の1クロック分になります 2発目のTRG信号終了後 3~4H(HD時間)にVD信号を発生し 画像取り込みを行います 5:TRG-TSG TRG信号とTSG信号間にて シャッター時間が決定されるカメラに対応します 4:TRG-TRGモードの2発目が TSG信号になります 6:TRGVC 1のTRGと同じですが VDは制御しません ノンリセットモードになります RNDSTビットは シャッターシーケンスを一定的(VD毎)に発生させるか GETコマンドが発生された時のみ起動するかの設定になります 0:VD毎に起動 フリーラン 1:画像取り込み時のみ起動 ランダムトリガ ドンピシャモード ストロボトリガ信号 SRB シャッターシーケンスの起動から 一定時間後にパルスを出力します SRBはDIOコネクタ TTL出力です 2本のカウンタにて SRB信号を作成します カウンタクロックは HD信号です SRBW GSRB 8ビット 8ビット D0~7 D0~7 SRB信号幅 起動からの遅延時間 - 12 - 3.10 入力レベル設定 入力信号のレベル調整はソフト設定となっています 設定は 8チャンネルの8ビット D/Aコンバータにて行います SRコード 40~47h OUTポート8 D0~7 8ビットにてセットします D/Aコンバータは 設定値00~FFhにて 0~3.3V 約13mVステップの電圧出力になります SR:40h SR:41h SR:42h SR:43h SR:44h SR:45h SR:46h SR:47h (3.3V/255 12.94mV) R A/Dコンバータ TOP(白) リファレンス電圧 G A/Dコンバータ TOP(白) リファレンス電圧 B A/Dコンバータ TOP(白) リファレンス電圧 R 黒レベルクランプ電圧 G 黒レベルクランプ電圧 B 黒レベルクランプ電圧 RGB A/Dコンバータ BOT(黒) リファレンス電圧 入力信号は アンプにより 1.9倍された後 SR:43~45hの黒電圧にDCクランプされA/Dコンバータ入力になります A/Dコンバータは SR:40~42h,46hのリファレンス電圧 BOTOM~TOP電圧間を 00(黒)~FFh(白) 256階調に変換します 標準設定値は TOPリファレンス電圧 2.2V BOTリファレンス電圧 0.7V 黒クランプ電圧 0.7V 設定値 AAh (170) 設定値 36h (54) 設定値 36h (54) この設定値ですと A/Dコンバータの入力範囲は 2.2-0.7 1.5Vとなり 適正入力信号の映像電圧は 0.79V(1.5/1.9)となります 基準的に1Vppの映像信号の映像信号レベルは約0.7Vですが 一般的なカメラは少し高めの0.8V程度出力されています 例えば入力映像電圧0.7Vに合わせる場合は TOP電圧を 2.03V 設定値 157 とします 各電圧の設定範囲は TOP,BOT:0.6~2.7V クランプ:0.6~1.7V TOP-BOT:1.0~1.8V 程度にして下さい この範囲外への設定は誤動作の要因になります モノクロ入力は SR:41,44,46hの設定が有効になります D/Aコンバータの設定には スティタス D0 SRBSYビットをチェックしながら設定する必要があります 1) 2) 3) 4) 5) SRコード 40~47hセット SRBSYビットチェック 1なら 0になる迄待つ D/Aデータセット 設定チャンネル分 1)~3) 繰り返す SRBSYビットチェック 1なら 0になる迄待つ と設定して下さい 1チャンネル当たりの設定時間(BUSY時間)は数百μSです 電源ON時は 上記標準設定値にセットされています - 13 - 3.11 画像取り込み 画像取込は コマンドポート(OUT 0)にて GETコマンドを発行します センサー入力等により自動的に画像を取り込む場合は GTRG入力を利用します SMOD7ビット 1にて GTRG入力にて画像を取り込むモードになります GTGSL0~2 3ビットにて GTRG入力が選択できます 0: 1: 2: 3: 4: 5: 6: DIOコネクタ TTL7 DIOコネクタ DIO7 パネルスィッチ 自動 HD 自動 VD TTL,DIO信号は SPOL7ビットにて入力信号論理が設定できます 0:正 1:負 2本のカウンタにて GTRG信号を整形できます GEXF GEXD 8ビット 14ビット D0~7 D0~13 GTRG信号フィルタ 〃 遅延 カウンタクロック HD信号 〃 HD/16信号 GEXFは 設定値幅以上の入力にて信号を有効とします ノイズ除去用フィルタになります GEXDは 有効信号検出から 設定値幅遅延し 1クロックの信号を生成します センサー等の位置補正になります 各設定値 0の場合 フィルタ無し 遅延無しになります カウンタ GEXDのカウンタクロックは HD信号の1/16周波数になります ランダムシャッター等で外部取り込みを行う場合 前画像のGET中に入力されたGTRG信号は無効としています それでも GTRG信号間隔が微妙になった場合は カメラ規定を満たさない誤トリガになる場合があります EXGTMビットを1にセットすれば GTRG入力から次ぎのGTRG入力を無効とする時間を設定できます VDSC 16ビット D0~15 GTRG無効時間 カウンタクロック HD信号 GTGSL:4の場合 フロントパネルのスィッチ ONが 疑似GTRB信号になります GTGSL:5,6の場合 自動的に疑似GTRG信号を発生できます 発生レートカウンタは GEXD値を使用します カウンタのクロックは 5:HD 6:VD になります 例えば GTGSL:6 GEXD:1000 と設定すれば VD信号1000パルス毎に疑似GTRG信号が発生されます 複数画面取り込みの場合の自動終了 GETコマンドでGMODビットがセットされた場合 複数画面取り込みとなります 複数画面取り込みの場合 GET終了はDMA転送の終了を検出してとなります しかしシャッターやストロボ制御を行いながらの画像取り込みの場合 DMA転送の終了を検出する前に既に次のシャッターシーケンスは 起動してしまいます よって最後に余計なシャッター等が切られてしまいます これを防ぐには AGSTPビットをセットし自動終了モードにしてください 自動終了モードの場合 AGSPカウンタ設定値分の画像取り込みで自動終了します AGSP 8ビット D0~7 自動取り込み面数 (0設定 256面) 取り込みカウンタ 8ビットカウンタです 画像取り込み1面毎に+1されます INポート 14h にて読み出されます OUTポート 14h 08h 実行にて 0クリアされます - 14 - 3.12 DMA転送 画像取込されたデータは PCIバスを介して直接 システムメモリにDMA転送されます DMA転送は PLX 9056 PCIチップに依存しています DMAチャンネル 0を使用します PCIチップ 内部ローカルレジスタ DMAチャンネル 0の設定が必要になります オフセット 80h 84h 88h 8Ch 90h A8h DMA DMA DMA DMA DMA DMA Ch Ch Ch Ch Ch Ch 0 0 0 0 0 用途 Mode PCI Address Local Address Transfer Byte Count Descriptor Pointer Command/Status Register 設定値 DWORD(32ビット) 0000 1943 xxxx xxxx 0000 0000 xxxx xxxx 0000 0008 01/03 DMAモード 転送先 システムメモリ先頭アドレス 転送元 ローカルアドレス 転送バイト量 機能 コマンド/スティタス PCIチップのレジスタは32ビット単位ですが メモリと同じで バイト単位,ワード単位のアクセス可能です DMA転送前段に RGB 各1.2Mバイト分のバッファメモリが用意されています GETコマンドにて入力されたデータは 一旦このバッファメモリにはいります DMA転送はこのバッファメモリに入力されたデータに対して行われます 容量迄は蓄積可能ですので 転送落ちを防いでいます DMA転送は32ビット 4バイト単位に行われます 1データ 各データは8ビット 1バイトであり4バイト単位にて扱われます 31 24 23 0 N+3データ 16 15 Rデータ N+2データ 8 7 Gデータ N+1データ 0 Bデータ Nデータ カラー モノクロ カラーデータの場合は 1ピクセル分のデータが 32ビット 1データになります モノクロデータの場合は 4ピクセル分のデータが 32ビット 1データになります PCIバスは リトルエンディアンですので システムメモリアドレスとの対応は 0:7~0 1:15~8 2:23~16 3:31~24 になります COL3Dビットを1にセットした場合 カラーデータはRGBのみになり3バイト単位のデータになります データも詰まりますので 4ピクセル分のデータが 3DWORDになります 31 N+1 N+2 N+3 Bデータ Gデータ Rデータ 24 23 N N+2 N+3 Rデータ Bデータ Gデータ 16 15 N N+1 N+3 8 7 Gデータ Rデータ Bデータ 0 N N+1 N+2 Bデータ Gデータ Rデータ M M+4 M+8 GET中の 入力,DMA転送量は INポート 8,CH にて読み出す事ができます ポート8: DMA転送バイトカウンタ ポートC: 画像入力バイトカウンタ 各カウンタ 32ビット(下位4ビット 0)で GETコマンド発行時 0クリアされます DMA画像転送データ量は PCIチップのDMA転送バイトレジスタ(オフセット 8Ch)の設定によります 画像入力 UNBW,VUBW 有効幅の設定が 画像入力データ量になります この設定値は合わせて下さい 特に画像入力量よりDMA転送量が多い場合は不定データが転送される事になりますので注意して下さい あくまで DMA転送は PCIチップのDMA転送バイトレジスタの設定値分行われます DMA転送中は システムメモリにどれだけのデータ量が転送されたかは DMA転送バイトカウンタ値で判断して下さい DMA転送終了は PCIチップ スティタスレジスタ (オフセット A8H) DONE D4ビットにて 判定します 転送中は 0です 終了にて 1になります PCIチップのDMA転送バイトレジスタは読み出し可能ですが ダウンカウントされませんので 転送量の確認には使用できません DMA転送バイトレジスタの設定値は バイト単位です 転送は 4ダブル゙ワード単位に行っていますので 16バイト単位に設定して下さい(下位4ビット '0') 例として 640x480の画像データのバイト量は モノクロの場合 4B000h(307200) カラーの場合 12C000h(1228800)となります DMAチャンネル 0 PCIチップ内部ローカルレジスタ設定例 例として システムメモリ転送先アドレス 01800000h 1) 2) DMAチャンネル 0をイネーブルにする DMAモード,転送先他 各レジスタをセットする 3) DMAスタートとする 転送データ量 0004B000h (モノクロ 640x480 307Kバイト) とします A8h 80h 84h 88h 8Ch 90h A8h コマンドレジスタ DMAモードレジスタ PCIアドレスレジスタ Localアドレスレジスタ 転送バイト量レジスタ 機能レジスタ コマンドレジスタ 01h 00001943h 01800000h 00000000h 0004B000h 00000008h 03h 以上設定後 GETコマンドを発行します OUTポート0 80h または C0h,E0h 出力 DMA転送過程は INポート8 DMA転送バイトカウンタ値でチェックします 転送できたデータ分は自由にアクセスできます DMA転送終了は PCIチップ ステイタスレジスタ(A8h) D4ビットでチェックします 1で終了です 但し あまり頻度高くスティタスやラインカウンタをチェックしますと 結果として PCIバスを占有する事になり DMA転送の邪魔をする事になります せいぜい100μS毎程度のチェックにして下さい - 15 - DMA転送終了検出後 OUTポート0 に 00h を出力します このコマンド発行は DMA転送が終了しても画像入力等が完結していない場合がありますので強制完結させます 画像入力等が完結されていない状態で次のGETコマンドを発行しますと誤動作になる場合がありますので注意して下さい 入力されたデータが順にそのままDMA転送されます 従ってカメラ入力が2:1インターレスの場合 メモリの前半に第1フィールド 後半に第2フィールドが転送されます(ITRGMビット 0の場合) DMAモードをチェーンモードに設定する事により 連続取り込みも可能になります 80h 00001B43h 機能レジスタに次の DMAパラメータデータの格納されているメモリアドレスを設定しておきます 90h xxxxxxx9h 例えば 一面分のシステムメモリに 連続取り込みにて 新データを次々に上書きさせる場合の設定例を示します システムメモリは 一面分のメモリエリア 及びテーブルエリアを確保します テーブルは PCIアドレス,Localアドレス,転送バイト量,機能レジスタ 4ダブルワード分です 例として システムメモリ転送先アドレス 01800000h 1) 2) DMAチャンネル 0をイネーブルにする DMAモード,転送先他 各レジスタをセットする 3) DMAスタートとする 転送データ量 0004B000h A8h 80h 84h 88h 8Ch 90h A8h テーブル格納メモリアドレス 01234000h とします コマンドレジスタ DMAモードレジスタ PCIアドレスレジスタ Localアドレスレジスタ 転送バイト量レジスタ 機能レジスタ コマンドレジスタ 01h 00001B43h 00000000h 00000000h 00000000h 01234009h 03h DMAスタート前に システムメモリ 01234000hには 次のDMAパラメータデータをセットしておきます 01234000h 01234004h 01234008h 0123400Ch PCIアドレスレジスタ Localアドレスレジスタ 転送バイト量レジスタ 機能レジスタ 01800000h 00000000h 0004B000h 01234009h 以上設定後 GETコマンドを発行します OUTポート0 C0h 出力 PCIアドレスや 転送バイト量を変える事も可能ですし パラメータデータを幾つもセットしておき つなぐ事も可能です 機能レジスタ値のD1ビットを1にセットすればチェーンは終了し DMA転送も終了します (最終機能レジスタ値 00000002h) DMA転送終了検出後 OUTポート0 に 00h を出力します - 16 - RGB個別転送 カラーRGBデータをDMA転送の段階で別メモリ領域に分けて転送できます BMMDビット(SR:0 D6)を 1にセットします バッファメモリがRGB別々にデータをバッファリングするモードになります DMAの Localアドレスレジスタに次の3種類を指定できます 00000000h: Rバッファメモリ 00000010h: Gバッファメモリ 00000020h: Bバッファメモリ チェーンモードにて適度なブロック単位に PCIアドレス,LocalアドレスをRGB毎に各変更しながらDMA転送する事によりRGBデータを別領域に転送で きる事になります 1ブロックのDMA転送容量の基本は水平1~2ライン程度が適当です 小さくすると それだけチェーンデータ量が増えますしまた切換のオーバーヘッド も無視できません 大きくすると 画像取り込みの終了に対する DMA転送の終了が遅くなります 例えば 入力が2:1インターレースの640x480 RGBデータを システムメモリ R:10000000h G:20000000h B:30000000h に転送する場合を示します チェーンテーブルデータ領域としてシステムメモリに 480x3x16 約23Kバイト確保します DMAレジスタ 80h DMAモードレジスタ 00001B43h 90h 機能レジスタ 01200009h(テーブル領域 01200000hとする)に設定します チェーンデータ領域には 下記データをセットしておきます 01200000h 4h 8h Ch 10h 4h 8h Ch 20h 4h 8h Ch 30h 4h 8h Ch 40h 4h 8h Ch 50h 4h 8h Ch 60h 4h xCh PCIアドレス Localアドレス 転送バイト量 次テーブル領域 PCIアドレス Localアドレス 転送バイト量 次テーブル領域 PCIアドレス Localアドレス 転送バイト量 次テーブル領域 PCIアドレス Localアドレス 転送バイト量 次テーブル領域 PCIアドレス Localアドレス 転送バイト量 次テーブル領域 PCIアドレス Localアドレス 転送バイト量 次テーブル領域 PCIアドレス Localアドレス | | 次テーブル領域 10000000h 00000000h 00000280h 01200019h 20000000h 00000010h 00000280h 01200029h 30000000h 00000020h 00000280h 01200039h 10000500h 00000000h 00000280h 01200049h 20000500h 00000010h 00000280h 01200059h 30000500h 00000010h 00000280h 01200069h 10000A00h 00000000h 00000002h システムメモリ R領域 1本目 画像バッファメモリ R 水平 1ライン分 640 システムメモリ G領域 1本目 画像バッファメモリ G システムメモリ B領域 1本目 画像バッファメモリ B システムメモリ R領域 3本目(第1フィールド 2本目) 画像バッファメモリ R システムメモリ G領域 3本目(第1フィールド 2本目) 画像バッファメモリ G システムメモリ B領域 3本目(第1フィールド 2本目) 画像バッファメモリ B システムメモリ R領域 5本目(第1フィールド 3本目) 画像バッファメモリ R チェーン終了 RGBRGB....と順に1ライン単位に転送します 第1フィールド 240本分をセットします 次に 第2フィールド 240本分を同じ様にセットします 第1フィールドの間を埋める様にPCIアドレスをセットします 例えば Rの第2フィールド 1本目の PCIアドレスは 10000280hになります このDMA転送で RGBデータ領域が分離されると同時にノンインターレースデータに変換されています - 17 - DMA転送によるGETコマンド 画像取り込みをGMODビット 1にて連続取り込みとした時 途中 何らかの要因にて 取り込みデータ量に狂いが生じた場合 その後の 取り込みは全てその影響をうけてしまいます GMODビット 0にて1フレーム単位に取り込みを行った場合は その都度イニシャライズされますので 前の取り込みの影響を受けなくなります 画像取り込みは 垂直有効領域の終了で終了します PCIバスの転送に余裕が有れば それ程遅れずにDMA転送も終了します 次の取り込みの受付は垂直信号の終エッジです 例えば EIA,NTSC規格の入力信号であれば この取り込み終了から次の取り込み受付 迄の時間は約1mS程度あります 従って この間に次のGETコマンドを発行できれば連続取り込みが可能となります これを利用すれば 1フレーム取り込みを繰り返す事により連続取り込みとする事ができます しかしソフトが他の処理に忙しく このコマンド発行が間に合わない場合が生じます DMAのチェーンモードを利用しGETコマンドをDMA転送にて発行できます Localアドレス 00000030h: GETCビット 0 00000034h: GETCビット 1 OUTポート0 00h と同等 OUTポート0 00h 80h と同等 GET終了処理 再GET発行 34hの場合 一旦 GETCビットを0クリアした後 再セットします チェーンデータの 1フレームの取り込みデータの次に この転送データを埋め込む事により自動的に次GETコマンドを発行し つなぐ事ができます xxxxxxx0h 4h 8h Ch xxxxxxx0h 4h 8h Ch xxxxxxx0h 4h 8h Ch PCIアドレス Localアドレス 転送バイト量 次テーブルタ領域 | | PCIアドレス Localアドレス 転送バイト量 次テーブルタ領域 PCIアドレス Localアドレス 転送バイト量 次テーブルタ領域 xxxxxxxxh 00000034h 00000001h xxxxxx19h 実在システムメモリ領域 再GET 1~4バイト xxxxxxxxh 00000030h 00000001h xxxxxxx9h 00000000h 00000000h 00000000h 00000002h 実在システムメモリ領域 GET終了 1~4バイト チェーン終了(DMA終了) あくまでDMA転送ですので 転送バイト量分のシステムメモリへのデータ転送は行われます(不定データ) 従ってPCIアドレスは壊されて良い領域を指定します 取り込みの開始は必ず OUTポート0 80h でGETコマンドを発行して下さい GMOD:1としますと誤動作になる可能性があります この方法は 1フレームのDMA転送終了後に 次のGETコマンドの発行となります 従って DMA転送が次の垂直信号の終エッジ前に終了しなければ 連続取り込みには ならない事に注意が必要です 取り込みカウンタ値の付加 GCTENビットを1にセットすれば 画像データの先頭データを取り込みカウンタ値と置き換えます 先頭1バイトのみの置き換えです カラーの場合は Gの先頭データとなります メモリに上書きで転送している等の場合 画像GETと転送データの相関をチェックするコードとして利用できます - 18 - 3.13 ラインセンサカメラの接続 LINMDビットを1に設定すれば ラインセンサカメラモードとなります 想定されているカメラは NED,エクセル製ですが 同等のカメラであれば他メーカ製カメラも接続可能です 接続にはRGBコネクタ,カメラコネクタ 両方のコネクタの信号が必要となります HD-A: RS-422出力信号 VD-A: 〃 HD-B: 〃 VD-B: 〃 LT+ LTCLK+ CLK- 映像信号はモノクロの場合 G/VIN ライン信号+ 〃 クロック信号+ 〃 - カラーの場合はRGBINに接続します ビデオクロックの設定はエリアの場合と変わりません 原クロック作成選択後 CLKDV,CCKDVビットにて ビデオクロックとカメラクロックを設定します CLKDVビットでビデオクロック CCKDVビットでカメラクロックの設定になります 例えば 2:1クロックのカメラで ビデオクロック 20MHz カメラクロック 10MHz 原クロック 40MHz であれば CLKDV:1/2 CCKDV:1/4 に設定します LT(ライン)信号は HDSC HDPW 16ビット 8ビット D0~15 D0~7 ライン信号繰り返しレート ライン信号幅 に設定します カウンタクロックは CCLK(カメラクロック)です ラインの 画像有効位置,幅は エリアカメラと同じ UNBP UNBW 10ビット 16ビット に設定します D0~9 D0~15 カメラ画像水平有効位置 〃 幅 カウンタクロックは VCLK(ビデオクロック)です 幅の設定値は下位4ビット0で16ドット単位の設定となります 取り込みはGETCビットで行いますがGMODビットの設定により取り込みモードが変わります GMOD:0 GMOD:1 VUBW 垂直幅 VUBW カウンタ設定値分のライン取り込み後自動終了となります GETCビットがセットされている間取り込みを続けます 16ビット D0~15 カメラ画像垂直有効幅 どちらの場合もGETCビットを落とせばその時点で終了しますし DMAコントローラが転送終了となれば取り込みも終了します GTRG入力を取り込みトリガとする事ができます [SMOD7:1] この場合 GETCビットをセットしてもすぐに取り込まず GTRG入力を待って取り込み開始となります WEN入力を 取り込みラインインデックス信号とする事ができます [SMOD6:1] WEN入力があった次のラインを有効ラインとして取り込みます WEN入力の無いラインは無効ラインとして取り込みません エンコーダ等の信号にて同期取り込みを行う場合等に利用できます WEN 1 LT(ライン) 1 2 2 3 3 4 4 5 5 6 6 取り込み 上記でWEN入力の1で 2のラインが取り込まれます 以下 2-3 3-5 4-6 6-8 の関係になります WENの5は 4の2重入力として無視されます ライン4,7はWENが無いため無効ラインとなります WENの検出は信号立ち上がりエッジです 極性はSPOL6ビットで設定できます - 19 - 7 8 3.14 DIO DIOコネクタ DSUB 9Pメス ピンNO 1 2 3 4 5 6 7 8 9 信号名 DIO4 DIO5 DIO6 DIO7 TTL7 +12V ICOM OCOM GND 用途 DIO 入出力信号 〃 〃 〃 TTL 入出力信号 電源 DIO 入力コモン DIO 出力コモン コモン アイソレーション信号 -4 〃 -5 〃 -6 〃 -7 ノンアイソレーション信号 -7 ノンアイソレーション電源 MAX 0.1A アイソレーション入力コモン + 5~24V アイソレーション出力コモン ノンアイソレーション DIOビットはフォトカプラによる アイソレーション入力信号です VCCプルアップ IN4 ICOM (MAX 30V) 電源+ 2kΩ R DIO4 IN5 | DIO5 | DIO6 IN6 IN7 GND R DIO7 PCON OUT4 R OUT5 | OUT6 | OUT7 R OCOM 電源- 4回路 1ブロックの構成です コモンはブロック単位になります 入力LED電流制限抵抗は2kΩ ICOMに24Vを接続した場合 約10mA 出力負荷 MAX 30V 30mA TTLビット 5V プルアップ INB TTL7 LV14 D OUTB * プルアップ抵抗 4.7kΩ LS06 出力 74LS06 入力 74LV14 を使用し やはり双方向構成です 基本的にTTLレベルですが MAX 30V迄の信号電圧が接続可能です 入力 H:2.4~30V L:0~0.4V 出力 MAX 30V 30mA です * DIO/TTL共 双方向構成です 入力として使用するビットは OUTビットを0に設定し出力OFFにして置きます DIO DIOビットは 入出力ポート 18hにて制御します 18h D7 DIO7 D6 DIO6 D5 DIO5 D4 DIO4 D3 D2 D1 D0 入出力共 コネクタ端の信号レベルは負論理です 0:H 1:L 従って OUTビット 1にて フォトカプラ ONです 入力もフォトカプラONで入力ビット 1になります 電源ON時 出力フォトカプラはオールOFFです PCON:0 双方向ですので 初期設定時 入力ビットとして使用する DIOビットは 出力ビットを0に設定して下さい OUTポート 18h 実行にて 出力フォトカプラもイネーブルになります PCON:1 OUTポート 14h 10h 実行にて 出力フォトカプラをディセーブルにできます PCON:0 - 20 - TTL TTLビットは 入出力ポート 04hにて制御します D7 TTL7 04h D6 D5 D4 D3 入出力共 コネクタ端の信号レベルは負論理です D2 0:H D1 D0 1:L DIO/TTL信号はSMODビットの設定により 制御信号になります 制御ビット時のみ SDIR,SPOLビットにて 各信号の入出力,信号極性の設定ができます 制御ビット (SMODx:1) 7: 6: 5: 4: GTRG LWEN PLS SRB 外部取り込みトリガ入力 ラインセンサーモード時のエンコーダ入力 (LINMD:1のみ) パルス出力 ストロボトリガ出力 ストロボトリガ出力は SRBSL0,1 2ビットにて出力信号が選択されます 0:- 1:- 2:- 3:DIO4 パルス出力は PLSSL0,1 2ビットにて出力信号が選択されます 0:- 1:- 2:- 3:DIO5 パルス出力 パルスセットは OUTポート 14 01hにて行います クリアは カウンタ値です SHOT 8ビット D0~7 パルス信号幅 カウンタクロックは SHTCKSにて選択します 3.15 0:HD 1:VD シリアル制御 シリアル機能を持ったカメラを使用する場合のシリアル制御です 送受信データは ポート20にて IN/OUTします ポート24にて シリアルスティタスビットがINできます D0:RXRDY D1:TXRDY 受信データ 送信データ 0:無 0:送信不可 1:有 1:送信可 受信データには数十バイト分の入力バッファが有りますので ある程度の貯め込みが可能です ボーレートは SRCK SRCKカウンタにて設定します D0~11 12ビット カウンタ値にて 49MHzを分周し ボーレートの16倍のクロックを作成します ボーレート 4.8k 9.6k 19.2k クロック 76.8kHz 153.6kHz 307.2kHz カウンタ値 639 (27Fh) 320 (140h) 160 (A0h) シリアルの各モードを設定します RXIE: TXOE: RXPOL: RXDPOL: RXSTTB: RXPAR: TXPOL: TXDPOL: TXSTTB: TXPAR: 受信イネーブル 送信イネーブル 受信ライン信号極性 受信データ極性 受信スタートビット極性 受信データパリティ 送信ライン信号極性 送信データ極性 送信スタートビット極性 送信パリティ 0:ディセーブル 0:ディセーブル 0:正 1:負 0:正 1:負 0:正 1:負 0:無 1:有 0:正 1:負 0:正 1:負 0:正 1:負 0:無 1:有 1:イネーブル 1:イネーブル RXIE,TXOEを1にセットすれば送受信可になります 一般的RS-232仕様であれば 各極性ビットの設定は0です パリティビット有りの場合 受信パリティは無視しています(チェック無) 送信の場合も自動付加はしません 送信データのD8ビットにソフトでセットして下さい - 21 - 3.16 割り込み PCIバスを介してCPUに割り込みをかける事ができます 割り込み要因は I/Oポート 1Ch 下位5ビットにて制御できます D0:VD D1:GTRG D2:DMAERR D3:DMAEND D4:GETF 垂直同期信号の前縁にて割り込みます 画像取り込み要因にて割り込みます DMA転送にてエラーになると割り込みます DMA転送終了にて割り込みます 入力終了(1画面)にて割り込みます OUTポート 1Ch にて各要因をビット単位にイネーブル/ディセーブルできます 割り込み信号は 1本ですので OR になります 0:ディセーブル 1:イネーブル INポート 1CH にて 割り込み要因がビットに反映されます (要因ビット 1) 割り込み要因が重なった場合は 複数ビット セットされます INTMD:0時 INポート 1CH 実行にて読み出されたビットは自動的にクリアされます INTMD:1時 OUT 14h D8~12 にて要因ビットクリアできます ビット配列は8ビットシフトされます (0:8~4:12) 1にセットされたビットのみクリアされます 割り込み処理ルーチン内で対応ビットのクリアを行って下さい PCIのコンフィグデータは INTAにセットされています 割り込み機能を使用するには PCI チップの内部ローカルレジスタ設定が必要になります PCIチップ レジスタ INTCSR:68h Interrupt Control/Status 上記割り込みをイネーブルにするには D11 Local Interrupt Input Enable ビットを 1にセットする必要があります 詳細は PCIチップ(PLX PCI9056)の マニュアルを参照して下さい PCIチップのレジスタ設定により DMAの転送終了による割り込みを チップ自身から発生させる事ができます 上記 DMAENDは PCIチップの転送終了を外部回路にて検出していますので 100μS程度遅れます 従って PCIチップ自身にて発生させた方が早く検出されます - 22 - - 23 -
© Copyright 2024 ExpyDoc