T_holdとT_setupは私が理解するのに役立ちますか?
私の試験は明日で、資料にわからないことがあるので、ぜひ助けてもらいたいです。
次の回路を与える:
そして、両方のFFが同じクロックに接続されているが、FF2は正の遅延(クロックが上がった後のt_skew)の後にそれを取得することを考えると、私の教授はこれがT_setupで役立つと言いました。
FF2には新しい入力を処理する準備をする時間が長いので、この点は理解していますが、理解できないのは、T_holdについて話すときにt_skewが「有害」になる理由です。
回答
私が理解していないのは、T_holdについて話すときにt_skewが「有害」になる理由です。
ホールド違反は、FF1によって起動されたデータが想定よりも「早すぎて」FF2に到達したときに発生します。
データがFF1によってクロックエッジで一度に起動されたと仮定します\$t\$。たとえば\のクロックスキューの後$\Delta t\$、同じクロックエッジが\でFF2に到達しました$t+\Delta t\$。このクロックエッジでは、FF2は前のエッジ(つまり、\の直前のクロックエッジ)でFF1によって起動されたデータをキャプチャする必要があります。$t\$、\にあるものではありません$t\$)。他のフリップフロップと同じように、FF2にもホールドタイムがあります\$t_{hold}\$。だから何\$t_{hold}\$FF2によってデータが適切にキャプチャされるためには、データが\に対して有効であり続ける必要があるということです。$t_{hold}\$クロックエッジがFF2に現れてからの時間(セットアップがすでに満たされていると仮定)。ここで、FF1によって\で起動されたデータがあると想像してください$t \$すでに組み合わせパスを「移動」し、この時間枠内にFF2に到達しました。これにより、「前の」データが破損します。これは、\のこのクロックエッジでFF2によってキャプチャされたデータであると想定されています。$t+\Delta t\$。FF2は準安定状態に駆動されると言われていますこれはホールド違反と呼ばれます。
直感的には、上記のシナリオでは、ホールド違反の可能性が減少した可能性があります。
- FF1とFF2との組み合わせの遅延がいた場合、より高いFF1が立ち上げたデータは今少し遅くFF2に到着したので、。
- クロックスキューの場合\$\Delta t\$クロックエッジがFF2で少し早く表示されるため、は低くなりました。
FF2でホールドを満たすための方程式を書き留めれば、同じ考えを数学的に分析することができます- $$t_{Clk-Q-FF1}+t_{combi}\ge t_{hold}+\Delta t$$ $$\implies (t_{Clk-Q-FF1}+t_{combi}-t_{hold})\ge \Delta t \tag 1$$
ご覧のとおり、LHSの値が一定の場合、RHSが増加すると、この等式条件に違反する可能性が高くなります。したがって、結論-クロックスキューが増加すると、ホールドタイミングにとって「悪い」ことになります。