wbOutputData
が含まれています。ここでは、このバスのネットを手動で配線し、タイミング スキューを厳密に制御します。[Report Datasheet] コマンドを使用すると、出力バス wbOutputData
の各ビットの現在のタイミングを解析できます。[Report Datasheet] コマンドは、ポートのグループのタイミングを特定の基準ポートに対して解析するのに使用できます。
- メイン メニューから をクリックします。
- [Report Datasheet] ダイアログ ボックスで Groups タブを選択し、次のように入力します。
-
Reference:
[get_ports {wbOutputData[0]}]
-
Ports:
[get_ports {wbOutputData[*]}]
-
Reference:
-
OK をクリックします。
この場合、
wbOutputData
バスの信号を転送するポートでのタイミングを、バスの最初のビットwbOutputData[0]
と比較します。これにより、バスのビット間の相対的なタイミングの差をすばやく知ることができます。 - [Maximize] ボタン をクリックして [Timing] ウィンドウの [Datasheet] タブを最大表示にします。
- 次の図に示すように、
このレポートから、
wbOutputData
バスの各ビットのタイミング スキューに約 660 ps のばらつきがあることがわかります。ここでの目標は、バス ビット間のスキューのばらつきを 100 ps 未満にすることです。
セクションを選択します。 - [Restore] ボタン をクリックし、[Device] ウィンドウと [Timing] ウィンドウの [Datasheet] タブの両方を表示します。
- ソース
wbOutputData[28]
の [Max Delay] のハイパーリンクをクリックします。[Device] ウィンドウでパスがハイライトされます。
注記: [Device] ウィンドウで [Autfit Selection] がイネーブルになっていることを確認し、パス全体が表示されるようにします。
- [Device] ウィンドウでハイライトされているパスを右クリックし、[Schematic] をクリックします。
選択した出力データ バスの回路図が表示されます。この回路図から、出力ポートが出力バッファー (
OBUF
) を介するレジスタで直接駆動されているのがわかります。バスの出力ピンに対するレジスタの配置が一貫したものになるようにし、レジスタと出力の間の配線を制御できれば、出力バスの各ビット間のスキューのばらつきを最小限に抑えることができます。
- [Device] ウィンドウに移動します。
レジスタと出力の配置を見やすくするには、
mark_objects
コマンドを使用して [Device] ウィンドウでこれらをマークします。 - [Tcl Console] ウィンドウに次のコマンドを入力します。
mark_objects -color blue [get_ports wbOutputData[*]] mark_objects -color red [get_cells wbOutputData_reg[*]]
出力ポートに青のひし形マーカー、出力を駆動するレジスタに赤のひし形マーカーが表示されます。
青のひし形でマークされている出力は、
wbOutputData[0]
(一番下) からwbOutputData[31]
(一番上) まで、左側の 2 つのバンクに渡って配置されており、赤のひし形でマークされている出力レジスタは右側の 1 箇所にまとまっています。レジスタから出力までの配線をすべて表示するため、
highlight_objects
Tcl コマンドを使用してネットをハイライトします。 - Tcl プロンプトに次のコマンドを入力します。
highlight_objects -color yellow [get_nets -of [get_pins -of [get_cells \ wbOutputData_reg[*]] -filter DIRECTION==OUT]]
wbOutputData_reg[*]
レジスタの出力ピンに接続されているネットがハイライトされます。[Device] ウィンドウを見ると、ひとかたまりになっている出力レジスタと分散されているバスの出力パッドとの距離にばらつきがあることがわかります。出力レジスタを各出力ポートの右側にあるスライスに一貫して配置するようにすれば、
wbOutputData
バスの clock-to-out 遅延の大部分のばらつきをなくすことができます。
- メイン ツールバーの [Unhighlight All] ボタン および [Unmark All] ボタン をクリックします。