T_hold và T_setup giúp tôi hiểu không?

Dec 22 2020

Ngày mai em thi và có điều gì không hiểu trong tài liệu nên rất mong được các anh chị giải đáp giúp.

Cho đoạn mạch sau:

Và cho rằng cả hai FF được kết nối với cùng một đồng hồ nhưng FF2 nhận được nó sau một thời gian trễ tích cực (t_skew sau khi đồng hồ tăng lên) giáo sư của tôi nói rằng điều này giúp chúng tôi trong T_setup.

Tôi hiểu điểm này vì FF2 có nhiều thời gian hơn để chuẩn bị cho một đầu vào mới được xử lý, nhưng điều tôi không hiểu là tại sao t_skew sẽ "có hại" khi nói về T_hold?

Trả lời

1 MituRaj Dec 23 2020 at 03:19

Điều tôi không hiểu là tại sao t_skew sẽ "có hại" khi nói về T_hold?

Vi phạm giữ xảy ra khi dữ liệu được khởi chạy bởi FF1 đến FF2 "quá sớm" so với dự kiến.

Giả sử một dữ liệu được khởi chạy bởi FF1 trên cạnh đồng hồ tại một thời điểm \$t\$. Sau một hồi đồng hồ nói \$\Delta t\$, cùng một cạnh đồng hồ đạt FF2 lúc \$t+\Delta t\$. Trong cạnh đồng hồ này, FF2 phải nắm bắt dữ liệu được khởi chạy bởi FF1 trên cạnh trước đó (tức là, cạnh đồng hồ ngay trước đó \$t\$, không phải là tại \$t\$). Cũng giống như bất kỳ flip-flop nào, FF2 cũng có thời gian chờ \$t_{hold}\$. Vậy thì sao \$t_{hold}\$có nghĩa là, để một dữ liệu được FF2 ghi lại đúng cách, dữ liệu đó phải duy trì giá trị cho \$t_{hold}\$thời gian sau khi cạnh đồng hồ xuất hiện tại FF2 (giả sử thiết lập đã đáp ứng). Bây giờ hãy tưởng tượng, nếu dữ liệu được khởi chạy bởi FF1 tại \$t \$đã 'đi' qua con đường tổ hợp và đến FF2 trong khoảng thời gian này . Thao tác này bây giờ sẽ làm hỏng dữ liệu "trước đó" được cho là dữ liệu được FF2 ghi lại trong cạnh đồng hồ này tại \$t+\Delta t\$. FF2 bây giờ là nói được thúc đẩy để metastability này được gọi là vi phạm Giữ.

Về mặt trực quan, trong trường hợp trên, xác suất vi phạm Giữ có thể giảm:

  • Nếu độ trễ tổ hợp giữa FF1 và FF2 cao hơn , vì dữ liệu được khởi chạy bởi FF1 bây giờ đến FF2 hơi muộn.
  • Nếu đồng hồ lệch \$\Delta t\$thấp , bởi vì đồng hồ cạnh xuất hiện một chút sớm tại FF2.

Ý tưởng tương tự có thể được phân tích bằng toán học nếu bạn viết ra phương trình để thỏa mãn Hold ở 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$$

Như bạn có thể thấy, đối với một giá trị không đổi ở LHS, nếu RHS tăng, thì khả năng vi phạm điều kiện bình đẳng này sẽ tăng lên. Do đó, kết luận - nếu độ lệch của đồng hồ tăng lên, thì điều đó là 'không tốt' cho việc giữ thời gian .