インテルのみ表示可能 — GUID: wwp1667813281693
Ixiasoft
インテルのみ表示可能 — GUID: wwp1667813281693
Ixiasoft
23.5. Genlock Controller IPレジスター
オフセット | レジスター | アクセス | 説明 |
---|---|---|---|
Parameterizationレジスター | |||
0x000 | VID PID | RO | このレジスターを読み出して、クロックビデオ入力の製品IDを取得します。このレジスターは常に 0x6FA7_0170 を返します。 |
0x004 | Version number | RO | このレジスターを読み出して、インテルがこのIPを構築するために使用するインテルQuartusリリースのバージョン情報を取得します。 |
0x008~ 0x00C |
Reserved | - | 予約済みのレジスター領域 |
0x010 | CPU clock frequency | RO | このレジスターを読み出して、CPUクロック周波数の値をHzで取得します。 |
0x014 | Number of reference clock | RO | このレジスターを読み出して、このIPで使用される入力リファレンス・クロックの数の値を取得します。 |
0x018 | Difference value delta size | RO | この値を読み出して、このIPが2つのサンプル間の位相誤差または周波数誤差を計算するために使用するビット数の値を取得します。 |
0x01C | Difference value size | RO | この値を読み出して、このIPが位相誤差または周波数誤差の計算に使用するビット数の値を取得します。 |
0x020 | Sample period counter size | RO | このレジスターを読み出して、このIPがサンプル周期カウンターの生成に使用するビット数を取得します。 |
0x024 | LPF to DAC LSB position | RO | このレジスターを読み出して、IPが誤差を計算するために無視するLSBの位置を取得します。 |
0x028 | DAC resolution | RO | このレジスターを読み出して、このIPがDAC分解能ロジックの設定に使用するビット数を取得します。 |
0x02C | PWM Output Clock Divider Value | RO | このレジスターを読み出して、PWM出力パルスを生成するクロックの分周に使用される正確な値を取得します。 |
0x030 | Derivative enable | RO | このレジスターを読み出して、このIPの派生ロジックがオンになっているかどうかを確認します。 |
0x034 | LPF Mode | RO | このレジスターを読み出して、ローパスフィルターの正確な動作モードを取得します。 |
0x038 | Proportional gain mode | RO | このレジスターを読み出して、比例ゲインの正確な動作モードを取得します。 |
0x03C | Integral gain mode | RO | このレジスターを読み出して、積分ゲインの正確な動作モードを取得します。 |
0x040 | Derivative gain mode | RO | このレジスターを読み出して、微分ゲインの正確な動作モードを取得します。 |
0x044 | VCXO Lock Confidence Counter Size | RO | このレジスターを読み出して、このIPがコンフィデンス・ロック・カウンターの生成に使用するビット数を取得します。 |
0x048 | Enable Debug | RO | このレジスターを読み出して、このIPのデバッグロジックがオンになっているかどうかを確認します。 |
コア固有のレジスター | |||
0x148 | PFD Control | RW | このレジスターは、位相および周波数検出器ロジックをコンフィグレーションします。 |
0x14C | PFD Status | RO | このレジスターは、位相および周波数検出器ロジックに関するデバッグ情報を提供します。 |
0x150 | LPF Control 1 | RW | このレジスターは、LPFロジックをコンフィグレーションします。 |
0x154 | LPF Control 2 | RW | このレジスターは、LPFロジックをコンフィグレーションします。 |
0x158 | LPF Status | RO | このレジスターは、LPFロジックに関するデバッグ情報を提供します。 |
0x15C | DAC Control | RW | このレジスターは、DACコントロール・ロジックをコンフィグレーションします。 |
0x160 | DAC Status | RO | このレジスターは、DACコントロール・ロジックに関するデバッグ情報を提供します。 |
0x164 | LPF Control 3 | RW | このレジスターは、LPFロジックをコンフィグレーションします。 |
0x168 | Clock Debug Status 1 | RO | このレジスターは、VCXOクロック周波数に関するデバッグ情報を提供します。 |
0x16C | Clock Debug Status 2 | RO | このレジスターは、Ref0クロック周波数に関するデバッグ情報を提供します。 |
0x170 | Clock Debug Status 3 | RO | このレジスターは、Ref1クロック周波数に関するデバッグ情報を提供します。 |
0x174 | Clock Debug Status 4 | RO | このレジスターは、Ref2クロック周波数に関するデバッグ情報を提供します。 |
0x178 | Clock Debug Status 5 | RO | このレジスターは、Ref3クロック周波数に関するデバッグ情報を提供します。 |
0x17C | PFD Debug Status | RO | このレジスターは、PFD蓄積エラーに関するデバッグ情報を提供します。 |
0x180 | Profiler Control | RW | このレジスターは、ゲンロック・プロファイラーをコンフィグレーションします。 |
0x184 | Profiler Error Mapping 1 | RW | このレジスターを使用すると、ゲンロック・プロファイルのエラー領域を定義できます。 |
0x188 | Profiler Error Mapping 2 | RW | このレジスターを使用すると、ゲンロック・プロファイルのエラー領域を定義できます。 |
0x18C | Profiler Pixel Counter | RO | このレジスターは、ゲンロック・プロファイラー・モジュールによって収集されたピクセルカウント情報を提供します。 |
0x190 | Profiler Jitter Sample | RO | このレジスターは、ゲンロック・プロファイラー・モジュールによって収集されたジッター情報を提供します。 |
0x194 | Profiler Statistics | RO | このレジスターは、ゲンロック・プロファイラー・モジュールによって収集された統計情報を提供します。 |
0x198 から 0x1A0 | Reserved | - | 予約済みのレジスター領域 |
0x1A4 | Tx Rx Ref0 Clock Ratio | RW | Ref0クロック周波数がVCXOクロック周波数より大きい場合、このレジスターは2つのクロック間の比率を設定します。それ以外の場合は、このレジスターを1.0に設定します。 |
0x1A8 | Tx Rx Ref1 Clock Ratio | RW | Ref1クロック周波数がVCXOクロック周波数より大きい場合、このレジスターは2つのクロック間の比率を設定します。それ以外の場合は、このレジスターを1.0に設定します。 |
0x1AC | Tx Rx Ref2 Clock Ratio | RW | Ref2クロック周波数がVCXOクロック周波数より大きい場合、このレジスターは2つのクロック間の比率を設定します。それ以外の場合は、このレジスターを1.0に設定します。 |
0x1B0 | Tx Rx Ref3 Clock Ratio | RW | Ref3クロック周波数がVCXOクロック周波数より大きい場合、このレジスターは2つのクロック間の比率を設定します。それ以外の場合は、このレジスターを1.0に設定します。 |
0x1B4 | Tx Rx VCXO Clock Ratio | RW | VCXOクロック周波数がリファレンス・クロック周波数より大きい場合、このレジスターは2つのクロック間の比率を設定します。それ以外の場合は、このレジスターを1.0に設定します。 |
レジスタービットの説明
ビット | 名前 | 説明 |
---|---|---|
0 | Enable |
|
3:2 | Ref Clock Switch Selection | VCXOトラッキングのリファレンス・クロックを決定します。
クロックの選択では、デザイン内に存在し、理想的には実行されているクロックのみを選択する必要があります。 |
7:4 | Ref Clock Reset | 各ビットが入力リファレンス・クロック (ビット4 = ref0_clk およびビッ7 = ref3_clk) に対応する4ビット幅のベクトル。1を設定すると、PFDをイネーブルする前にビット12を使用して、書き込み時にリファレンスがクロックカウンターをリセット状態およびリセット状態から解除します。 |
12 | VCXO Clock Reset | 「1」を入力するとVCXOクロックカウンターがリセットされ、「0」を書き込むとリセットが解除されます。トラッキングに必要な対応する Ref Clock Reset をリセットするときに、このビットをセットします。 |
31:16 | Output Update Period MSBS | 出力更新周期カウンターの上位16 MSBを定義します。LSBはビルド時に C_ERR_UPDATE_BITS によって定義され、PFDからLPF (その後DAC) へのエラー更新の期間です。 Enable ビットを使用する前に、この値を設定してください。 |
ビット | 名前 | 説明 |
---|---|---|
3:0 | Ref Clock Running | 4ビットのベクトル。各ビットは入力リファレンス・クロック (ビット0 = ref0_clk およびビット3 = ref3_clk) に対応し、リファレンス・クロックが実行中であることを示します。実行は、IPがVCXOクロックに対して取得するサンプルに基づいています。C_ENABLE_DEBUG>0の場合、さらにクロック測定レジスターを使用できます。 |
7:4 | Ref Clock Stopped | 4ビットのベクトル。各ビットは入力リファレンス・クロック (ビット0 = ref0_clk およびビット3 = ref3_clk) に対応し、リファレンス・クロックがサンプリング期間中に変化を停止することを示します。これらのビットはスティッキーであり、アルゴリズムの再起動シーケンスに続いてのみリセットされます。 停止したクロックが現在選択されているリファレンス・クロックである場合、PFDはそれ以上のエラー変更をLPFに更新しません。IPは、別のリファレンス・クロックを使用するか、復帰する場合は同じリファレンス・クロックを使用して再起動シーケンスを必要とします。出力ディスエーブル・ステータスはビット9で示されます。 |
8 | Overflow | 内部追跡カウンター間の差のオーバーフローを示します。オーバーフローは重大なエラーであり、VCXOはどこでも追跡できる可能性があります。このビットは再起動後にのみリセットされます。 |
9 | Output Disabled | リファレンス・クロックが停止しているため、出力が現在ディスエーブルになっていることを示します。IPは、LPFをそれ以上更新しません。このビットは、アルゴリズムの再起動シーケンスに続いてのみクリアされます。 |
10 | diff_diff_value Output Overflow | この出力値は、使用する内部値よりも小さくなります。小さい値が飽和した場合はオーバーフローを示します。C_ERR_VAL_BITS を増やすことを検討してください。このビットはアルゴリズムの再起動後にのみリセットされます。 |
11 | (diff_diff_value – last diff_diff_value) Output Overflow | この出力値は内部値よりも小さくなります。小さい値が飽和した場合はオーバーフローを示します。C_ERR_VAL_BITS を増やすことを検討してください。このビットは再起動後にのみリセットされます。 |
ビット | 名前 | 説明 |
---|---|---|
15:8 | Reference Jitter Value |
この値は、+/- ピクセル数に等しいゲンロック領域を定義します。フレームがゲンロック領域の外に出る前に、SOF信号のジッターが許可されます。 |
6:4 | GPO Clock Divider | このレジスターは、IPが新しい値でGPOを更新するサンプルレートを定義します。
|
0 | Reset Frame Counter | フレーム・カウンター・レジスターをリセットします。 |
ビット | 名前 | 説明 |
---|---|---|
31:16 | GPO Error Region 2 |
この値は、最初のGPOエラーマッピング領域の上限を定義します。 この値は、2番目のGPOエラーマッピング領域の下限も定義します。 |
15:0 | GPO Error Region 1 | この値は、最初のGPOエラーマッピング領域の下限を定義します。 この値は、GPOゲンロックマッピング領域の上限を定義します。 |
ビット | 名前 | 説明 |
---|---|---|
31:16 | GPO Error Region 4 |
この値は、3番目のGPOエラーマッピング領域の上限を定義します。 この値は、4番目のGPOエラーマッピング領域の下限を定義します。 |
15:0 | GPO Error Region 3 | この値は、3番目のGPOエラーマッピング領域の下限を定義します。 この値は、2番目のGPOエラーマッピング領域の上限を定義します |
ビット | 名前 | 説明 |
---|---|---|
31:0 | Total Pixels per Frame | 入力フレームあたりのピクセル数のカウント |
ビット | 名前 | 説明 |
---|---|---|
31:16 | SOF Delay |
受信SOF信号と送信SOF信号の間のピクセル数のカウント |
15:0 | Jitter Counter | 2つの連続するSOFパルス間のピクセル数のカウント |
ビット | 名前 | 説明 |
---|---|---|
31:0 | Bad Frames Counter | Reference Jitter Value を使用して設定された定義済みのゲンロック領域外にあるフレーム数 |
ビット | 名前 | 説明 |
---|---|---|
0 | Enable |
LPFには入力値が入力されないため、PFDがイネーブルになっていない場合でも、いつでもLPFをイネーブルすることができます。 |
1 | Integral Accumulator Reset Disable | DAC出力が (正または負の方向のいずれかの) 最大値に達すると、LPF Control 2 レジスターで定義されているリセット値に積分値が自動的にリセットされます。このビットに1を書き込むと自動リセットが停止され、デバッグに役立つ場合があります。 |
2 | Lock Loss Confidence Count Enable | このビットは、ロックの喪失を検出するための信頼カウンターをオンにします。ロック信頼カウンターがその最大値 (C_LOCK_CNT_SIZE) に達し、IPが連続してエラーを検出しないと、IPはロックを取得します。ただし、単一のエラーが発生すると、すぐにロックが失われます。このビットをイネーブルすると、ロックの喪失を示すために同じ信頼度カウンターを使用できるようになります。IPは、損失ゼロの最小値に達したかどうかのみを示します。したがって、ロックステータスは、信頼度カウンターの極値に達した場合にのみ変更されます。 |
7:3 | Lock Status LSB Position | デフォルトでは、IPはロックステータスを変更しない1 LSBビットの変更を許可します。これらのレジスタービットを使用して、LSBビット数を最大31 (LSB 32) まで増やすことができます。LSB位置がエラー値 (Phase modeモードのdiff_valの場合は C_CLK_DIV_BITS、Frequency modeのdiff_diff_valの場合は C_ERR_VAL_BITS) のサイズを超える場合、いくらエラーが発生してもIPはロックを失いません。 |
17:16 | Locked Status Control | IPが、LPF Status Register の Locked Status を取得する方法を制御します。 00 = Frequency mode。Diff_Diff_Val 入力は非常に小さいです。IPは1 LSBの変更を許可しますが、依然としてロックを示します。ビット31:30を使用して、LSB位置をさらに3桁 (4桁) 増やすことができます。サンプリング・ウィンドウが大きい場合や入力のジッターが原因でエラー値が大きくなる場合は、値を増やします。 01 = Phase mode。Diff_Val Input 入力は非常に小さいです。IPは1 LSBの変更を許可しますが、依然としてロックを示します。ビット31:30を使用して、LSB位置をさらに3桁 (4桁) 増やすことができます。
|
18 | I Mode | 積分モードを定義します。
|
19 | P Mode | 比例モードを定義します。
|
24 | D Mode | 差動モードを定義します。
|
25 | Negative I Gain | 2の補数入力誤差の符号を反転します。積分ゲインでは、正の入力は負に変わり、その逆も同様です。I Mode選択後に、この値を選択してください。 |
26 | Negative P Gain | 2の補数入力誤差の符号を反転します。比例ゲインでは、正の入力は負になり、その逆も同様です。P Modeを選択した後に、この値を選択してください。 |
27 | Negative D Gain | 2の補数入力誤差の符号を反転します。差動ゲインについては、正の入力が負に変化し、その逆も同様です。D Modeを選択した後に、この値を選択してください。 |
28 | I Gain Fraction | このビットは、I Gain の2乗シフトの方向を反転させ、整数ゲインではなく分数のゲインを生成します。 |
29 | Reset DAC Saturation Status | Highに設定すると、LPF Status レジスターに示されているラッチされたDAC Saturationステータスがクリアされます。このビットはLowに戻す必要があります。 |
ビット | 名前 | 説明 |
---|---|---|
31:0 | Integral Accumulator Reset Value | リセット時、または飽和によってリセットされた場合 (オンの場合)、積分アキュムレーターの32 LSBにIPがロードされる値。 内部整数サイズが31ビットより大きい場合、IPはこのレジスターのMSBを符号拡張として使用します。 |
ビット | 名前 | 説明 |
---|---|---|
0 | Locked | PFDからのエラーがロック状態を示す非常に小さな量に減少したことを示します。 |
1 | Integral Overflow | 積分アキュムレーターでオーバーフローが発生しており、正または負の最大値に達していることを示します。再起動の一部としてリセットされるまで、その値が維持されます (ソフトウェアの使用法を参照)。このビットは重大なエラーを示し、VCXOはどこでも追跡できる可能性があります。 |
2 | DAC Saturated | フィルターから出力されるDAC値が正または負の最大値に達したことを示します。LPF Control 1 レジスターのビット1を使用してディスエーブルしない限り、積分アキュムレーターはリセット値に自動的にリセットされます。このビットは、LPF Control 1レジスターのビット29を使用してクリアするまでセットされたままになります。 |
ビット | 名前 | 説明 |
---|---|---|
0 | Output Enable | 「0」は、VCXOドライバーピンでハイ・インピーダンスを出力します。「1」は、DACがピンを駆動できるようにします。DACおよびHW I2C書き込みをイネーブルする前に、競合を事前回避してください。 |
3:1 | DAC Output Data Select | バイナリーオフセット入力値を介してPWM出力を制御します。
|
4 | Hold | 値を保持し、それ以上更新しません。DAC Output Data Select = 001の場合にのみ有効です。 |
5 | Output Force Low | 設定すると、IPはPWM出力を強制的にLowにし、出力モードを無視します。Output Force High の方が優先されます。 |
6 | Output Force High | 設定すると、IPはPWM出力を強制的にHighにし、出力モードを無視します。このビットは Output Force Low よりも優先されます。 |
7 | Output Clock Divide Disable | デフォルトでは、IPはビルド時パラメーター C_DAC_CLK_DIV を使用してDACコントロール・ピンの出力クロックレートを設定します。 このビットが1の場合、ビルド時間分周はディスエーブルになり、出力クロックレートはフルスピード (VCXO周波数の半分) で動作します。 |
31:8 | CPU DAC Output Data Value | DAC Output Data Select = 100の場合にのみ使用可能です。値は、DAC Status Registerと同様に、DAC出力のサイズまでオフセットされたバイナリー範囲である必要があります。2の補数からオフセットバイナリーへ変換するには、MSBを反転させます。 例 (24ビットDACサイズを想定):
|
ビット | 名前 | 説明 |
---|---|---|
23:0 | Current DAC Output Data Value | DACが生成する現在のオフセットバイナリー範囲番号 |
ビット | 名前 | 説明 |
---|---|---|
7:0 | I Gain | 積分ゲイン。入力誤差値e(t) (2の補数の正または負の数) に 2の累乗シフトを提供します。IPは、この値を最終的な出力合計に加算する前に、Integratorに加算または減算します。有効な値は0~15です。0は、IPがDACへの制御値に積分を使用しないことを意味します。 例: ゲインを7に設定すると、2^(7-1) = 64となり、入力e(t) は64倍になります。 IPが使用する入力エラー値は I Modeに依存しており、Phase Modeの場合は Diff_Val、Frequency Modeの場合は Diff_Diff_Val になります。 ゲインを反転して、上の例では入力を-64倍にすることができます。Negative I Gain Mode ビットを使用してゲインを反転させます。 このコントロール・レジスター内でビットが永続化されたままであっても、ビルド時のパラメーターが原因でモードが使用できない場合があります。LPF Status レジスターを使用して、ビルド時のパラメーターを特定します。 |
15:8 | P Gain | 比例ゲイン。入力誤差値e(t) (2の補数の正または負の数) に2の累乗シフトを提供します。IPは、この値を最終出力合計に加算または減算します。有効な値は0~15です。0は、IPがDACへの制御値に を使用しないことを意味します。 例: ゲインを7に設定すると、2^(7-1) = 64となり、入力e(t) は64倍になります。 入力誤差値はP Modeビットに依存しており、Phase Modeの場合は Diff_Val、Frequency Modeの場合は Diff_Diff_Val になります。 ゲインを反転して、上の例では入力を-64倍にすることができます。Negative P Gain Modeビットを使用してゲインを設定します。 さらに、I Gain Fractionビットを使用してゲインシフト (左または右) を変更します。右シフトは2の小数乗を生成します。これは、ロック後に入力誤差の変化によって引き起こされるジッターを軽減するのに役立ちます。 ビットがこのコントロール・レジスターに永続化されたままであっても、ビルド時のパラメーターが原因でモードが使用できない場合があります。LPF Status レジスターを使用して、ビルド時のパラメーターを識別します。 |
23:16 | D Gain | 微分ゲイン。入力誤差値e(t) (2の補数の正または負の数) に2の累乗シフトを提供します。IPは、この値を最終出力合計に加算または減算します。有効な値は0~15です。0は、DACへの制御値に導関数が使用されないことを意味します。 例: ゲインを7に設定すると、2^(7-1) = 64となり、入力e(t) は64倍になります。 入力誤差値は D Mode ビットに依存しており、Phase Modeの場合は Diff_Diff_Val、Frequency Modeの場合は (Diff_Diff_Val – last Diff_Diff_Val) になります。 ゲインを反転して、上の例では入力を-64倍にすることができます。このゲインは、Negative D Gain Modeビットを使用して設定します。 このコントロール・レジスター内でビットが永続化されたままであっても、ビルド時のパラメーターが原因でモードが使用できない場合があります。LPF Status レジスターを使用して、ビルド時のパラメーターを識別します。 |
ビット | 名前 | 説明 |
---|---|---|
31:0 | VCXO Clock Measure | 1秒間のクロックティックの数。ゼロはクロックが動作していないことを示します。スプリアスカウントはクロックが不安定であることを示します。安定したクロックは、準安定性の測定に使用されるCPUクロックの周波数により、数カウントずれる場合があります。 |
ビット | 名前 | 説明 |
---|---|---|
31:0 | Ref 0-3 Clock Measure | 1秒間のクロックティックの数。ゼロはクロックが動作していないことを示します。誤ったカウントはクロックが不安定であることを示している可能性があります。安定したクロックは、IPが測定に使用するCPUクロックの周波数とメタ安定性により、数カウントずれる場合があります。 |
ビット | 名前 | 説明 |
---|---|---|
31:0 | Current e(t) | この値は、連続誤差差分値を表す現在の内部e(t) 値 (PFDカウンター差分値 Diff_Val) を示します。これは、どちらのカウンター (リファレンス・クロックまたはVCXOクロック) が進んでいるかを示す、正負の数値を表す2の補数値です。 Frequency Modeの場合、誤差値はある値に向かい、そこに留まる傾向があります。ただし、トレンド値を中心に変動し、時間の経過とともにゆっくりと変動する可能性があります。 Phase Modeの場合、エラー値はゼロに減少して、そこに留まる傾向があります。+/- 1で変動する可能性がありますが、時間の経過とともに変動することはありません。 |
ビット | 名前 | 説明 |
---|---|---|
26:22 | VCXO Integer number part | クロック比率値の整数部分を設定します。例えば、クロック比の値が8.750の場合、このフィールドは8に設定する必要があります。 |
21:0 | VCXO Fractional number part | クロック比率値の小数部を設定します。例えば、クロック比の値が8.750の場合、このフィールドは (2^22) * (0.750) に設定する必要があります。乗率が2^22なのは、このIPが固定小数点形式の小数部を表すために22ビットを使用しているためです。 |
ビット | 名前 | 説明 |
---|---|---|
26:22 | Ref 0-3 Integer number part | クロック比率値の整数部分を設定します。例えば、クロック比の値が8.750の場合、このフィールドは8に設定する必要があります。 |
21:0 | Ref 0-3 Fractional number part | クロック比率値の小数部を設定します。例えば、クロック比の値が8.750の場合、このフィールドは (2^22) * (0.750) に設定する必要があります。乗率が2^22なのは、このIPが固定小数点形式の小数部を表すために22ビットを使用しているためです。 |