Tại sao dép xỏ ngón thường được kích hoạt trên cạnh tăng của đồng hồ?


14

Thông thường trong thiết kế kỹ thuật số, chúng tôi xử lý các flip-flop được kích hoạt khi chuyển đổi tín hiệu xung nhịp 0 thành 1 (kích hoạt cạnh dương) so với chuyển đổi 1 thành 0 (kích hoạt cạnh âm). Tôi đã nhận thức được quy ước này kể từ những nghiên cứu đầu tiên của tôi về các mạch tuần tự, nhưng đến nay vẫn chưa đặt câu hỏi về nó.

Là sự lựa chọn giữa kích hoạt cạnh tích cực và kích hoạt cạnh tiêu cực tùy ý? Hoặc có một lý do thực tế tại sao dép xỏ ngón kích hoạt tích cực đã trở nên chiếm ưu thế?


2
Cách mà hầu hết những điều này xảy ra là ai đó làm theo cách này, người khác cần làm cho phần cứng tương thích và làm tương tự, và vài năm sau bạn có một tiêu chuẩn tình cờ.
Sói Connor

1
Tôi làm việc với Flip-flops, phần lớn được kích hoạt Falling Edge. Tôi đã có câu hỏi hoàn toàn ngược lại!
Swanand

Câu trả lời:


10

Dự đoán tốt nhất: xu hướng cạnh tích cực là sản phẩm phụ của các thiết kế đang cố gắng sử dụng một ít diện tích / bộ phận nhất có thể trước những năm 1970 . Một biện pháp tiết kiệm chi phí cho sản xuất bằng cách tăng số lượng chip trên mỗi wafer. Các DFF pos / neg-edge hiện đại thường có tổng diện tích bằng nhau, do đó xu hướng cạnh tích cực hiện nay là thông lệ kế thừa.

Tiết kiệm diện tích hình thành các thiết kế D-flip-flop "Cổ điển". Các thành phần chủ / nô lệ hiện đại của D-flip-flop có thể sử dụng hai chốt 5 bóng bán dẫn; Bằng sáng chế WO1984003806 A1US4484087 Cả hai đã nộp vào ngày 23 tháng 3 năm 1984. Một D-chốt 8 transitor đã được cấp bằng sáng chế được nộp ngày 6 tháng 2 năm 1970; US3641511 Một . Vì mục đích đơn giản, các thiết kế dựa trên chốt SR / SnRn sẽ được coi là "Cổ điển" và "Hiện đại" cho các thiết kế sử dụng bằng sáng chế D-latch / S-cell đã đề cập.

Trong thiết kế vi mạch, cổng NAND sử dụng ít diện tích hơn cổng NOR vì các đặc tính đặc trưng của NMOS và PMOS. Hình thành ở đó, các tầng xu hướng tiết kiệm kích thước khu vực. D-chốt hình thức chốt SnRn nhỏ hơn sau đó từ chốt SR. Các thiết kế D-flip-flop cổ điển dựa trên các cổng logic này. Sau khi tìm kiếm một số thiết kế Các thiết kế cạnh tích cực cổ điển luôn nhỏ hơn các thiết kế cạnh tiêu cực Cổ điển. Di cư đến hiện đại xảy ra khi chi phí chip trở nên thuận lợi: tiết kiệm diện tích so với phí bản quyền.


Đào sâu hơn một chút để chứng minh sự khác biệt của khu vực:

D-flip-flop edge edge cổ điển: Sơ đồ mô tả và sơ đồ D flip-flop được kích hoạt cạnh dương tính cổ điển sử dụng năm NAND2 và một NAND3. Điều này sử dụng tổng cộng mười ba NMOS và mười ba PMOS.

sơ đồ

mô phỏng mạch này - Sơ đồ được tạo bằng CircuitLab

D-flip-flop cạnh âm tính cổ điển tốt nhất mà tôi có thể tìm thấy là sử dụng hai D-Latches và hai bộ biến tần. Biểu mẫu tham chiếu sơ đồ http://students.cs.byu.edu/~cs124ta/labs/L02-FSM/HowToUseMasterSlave.html . Điều này sử dụng tổng cộng mười tám NMOS và mười tám PMOS. Đặt một biến tần trên vị trí cổ điển ở trên sẽ làm giảm số lượng bóng bán dẫn của thiết kế này. Hoặc là trường hợp, cạnh âm cổ điển lớn hơn thiết kế cạnh dương.

sơ đồ

mô phỏng mạch này

Một thiết kế D-flip-flop hiện đại có thể trông như sau dựa trên các bằng sáng chế WO1984003806 A1US4484087 Một mô tả D-chốt năm bóng bán dẫn. Điều này sử dụng tổng cộng năm NMOS và PMOS fice; tiết kiệm diện tích lớn so với Cổ điển. Đảo ngược thứ tự chủ / nô lệ sẽ tạo ra một flip-flop cạnh âm có kích thước bằng nhau.

sơ đồ

mô phỏng mạch này

Tôi chỉ thể hiện những thiết kế nhỏ nhất có thể. Các thiết kế có thể rất dựa trên các yêu cầu thiết kế, cho phép các thư viện ô tiêu chuẩn, các tính năng đặt lại / đặt trước hoặc các lý do khác.


Đó là một điểm hay. Tôi đã tiếp cận vấn đề từ phân phối đồng hồ, nhưng tôi có thể thấy kiến ​​trúc DFF có thể khác biệt như thế nào. Tuy nhiên, tôi nghĩ rằng flop kích hoạt cạnh âm cũng có thể có kiến ​​trúc dựa trên NAND. Bạn có thể thêm một sơ đồ của (các) kiến ​​trúc mà bạn đang nói đến không?
travisbartley

1
@ trav1s, tôi đã cập nhật câu trả lời của mình với các ví dụ và một số nghiên cứu bằng sáng chế.
Greg

Tôi tự hỏi đến mức độ nào các chip sử dụng các kỹ thuật khác cho các chốt cần hoạt động dựa trên các cạnh của đồng hồ được áp dụng bên ngoài? Ví dụ, sử dụng xung nhịp hai pha và logic bán động, người ta có thể giảm số lượng bóng bán dẫn cần thiết trên mỗi flop xuống còn bảy [một cách tiếp cận hoàn toàn động sẽ là sáu, nhưng thêm một bóng bán dẫn thứ bảy cho phép người ta thêm trạng thái "giữ" hoàn toàn tĩnh ].
supercat

@Greg, công việc tuyệt vời. Phát hiện của bạn chỉ là về những gì tôi mong đợi. Cái bóng bán dẫn 10T đó ở cuối là một điều tuyệt vời.
travisbartley

Câu trả lời thú vị và rất sâu sắc. Bạn đang nói rằng xu hướng tích cực xuất hiện trước 70, nhưng điều này không phù hợp với những phát hiện của tôi (xem câu trả lời của tôi). Điều gì khiến bạn đến với ngày này? Chỉ là một phỏng đoán, hoặc bạn có một số thông tin bổ sung? Nếu đó là câu hỏi sau, tôi sẽ rất vui khi nhận được tài liệu tham khảo (để cải thiện câu trả lời của riêng tôi :))
Vasiliy

3

Có một số giả định cơ bản ở đây đã được đề cập trong một bài đăng khác (mà bây giờ tôi không thể tìm thấy).

Nếu bạn đếm tổng số phần tử logic được đặt và logic có xung nhịp (tổng số FF được vận chuyển), chúng có thể sẽ nằm trong bộ xử lý và bộ vi xử lý, Intel, DEC, v.v. Biểu hiện của điều này là bạn kết thúc với một nhóm nhỏ những người / nhóm chịu trách nhiệm thiết kế trong nhiều thập kỷ, không có nhiều chi tiết về hoạt động nội bộ.

Ngược lại, bạn có nhiều nhóm khác nhau làm việc trên các luồng ASIC, với nhiều dự án hơn nhưng khối lượng tương ứng ít hơn.

Hầu hết các thiết kế bộ xử lý thực sự không có cạnh dương hoặc âm, nhưng được thiết kế bằng cách sử dụng sơ đồ đồng hồ đôi miễn phí NOC (Non Overlaps Clock).

Vì vậy, bạn kết thúc với một đầu vào -> (đám mây logic) -> chốt từ đồng hồ -> đám mây logic -> chốt từ! Sơ đồ đồng hồ. Đó là hình thức kinh điển của một nô lệ chủ FF với logic được nhồi bên trong.

Kiểu phương pháp thiết kế này có một số ưu điểm nhưng cũng có độ phức tạp bổ sung.

Một điều đáng tiếc khác là phương pháp thiết kế này không được dạy ở hầu hết các trường đại học. Tất cả các thiết kế Intel x86 đều thuộc loại này (người ta không được nhầm lẫn giữa hoạt động bên ngoài của giao diện với hoạt động bên trong) với các lõi SOC tổng hợp đáng chú ý mà chúng đã thiết kế cho thiết bị cầm tay di động.

Một bài diễn thuyết tuyệt vời về điều này có thể được tìm thấy trong "Dally, William J. và John W. Poulton". Kỹ thuật hệ thống kỹ thuật số. Cambridge University Press, 1998. phần 9.5 thảo luận về "thời gian đồng bộ vòng mở" <-chủ đề. Nhưng để trích dẫn "Tuy nhiên, thời gian kích hoạt cạnh hiếm khi được sử dụng trong các bộ vi xử lý cao cấp và thiết kế hệ thống phần lớn vì nó dẫn đến thời gian chu kỳ tối thiểu phụ thuộc vào độ lệch của đồng hồ".

Vâng, một câu trả lời hoàn toàn mang tính mô phạm. nhưng một phương pháp quan trọng ít được biết đến, xem xét có bao nhiêu bóng bán dẫn ngoài kia trong các thiết kế này (rất nhiều và rất nhiều).


Tôi đã đọc điều này ba lần, nhưng tôi vẫn không thể thấy nó liên quan đến câu hỏi của OP như thế nào ...
Vasiliy

1
Ngoài ra, nói rằng CPU được xây dựng từ các chốt chỉ là một chút cường điệu (thậm chí có thể không phải là "một chút"). Chốt được sử dụng trong logic quan trọng hiệu suất cao (chủ yếu là đường dẫn dữ liệu), nhưng vẫn còn nhiều flip-flop. Nhược điểm chính của chốt là khó phân tích thời gian - do khả năng "mượn thời gian" của thiết kế dựa trên chốt (cùng khả năng làm cho thiết kế này "nhanh hơn"), rất khó kiểm tra thiết kế dựa trên chốt để đóng thời gian. Trong các phần không quan trọng của CPU, chủ yếu là FF được sử dụng.
Vasiliy

Từ khóa trong tiêu đề là "thường" - 1) trong tổng số # loại chip khác nhau được thiết kế - thì dòng ASIC và trình kích hoạt cạnh sẽ được sử dụng thông thường. 2) nếu tổng số # phần tử logic / bóng bán dẫn được thiết kế CPU giành chiến thắng và sau đó chốt đồng hồ đôi dựa trên chiến thắng và sau đó tuyên bố không hợp lệ.
giữ chỗ

1
Bạn không thể nhìn vào giao diện của những con chip này để xác định hoạt động bên trong là gì. Như tôi đã nói, một nô lệ chủ Flip Flop chỉ là một phiên bản đơn giản hóa của thiết kế dựa trên chốt đám mây logic hai pha đồng hồ hai pha. Phân tích thời gian không khó, thực tế nó đơn giản hóa. Bạn tốt hơn là chắc chắn về miền đồng hồ của bạn.
giữ chỗ

1
Không, các từ khóa là "flip-flop" và "edge of the clock". Chốt là thiết bị nhạy cảm cấp độ không nhạy cảm cạnh. Táo và cam người đàn ông - nếu tôi muốn biết tại sao cam là cam, thực tế là có nhiều người thích táo là hoàn toàn không liên quan.
Vasiliy

2

Hiệu suất của công nghệ CMOS hiện tại (về công suất / diện tích / tốc độ / chi phí) dường như không nhạy cảm với sơ đồ kích hoạt được sử dụng.

Tôi không thể chứng minh tuyên bố trên một cách chặt chẽ bởi vì nó đòi hỏi nhiều kiến ​​thức và nghiên cứu sơ bộ, và thậm chí tóm tắt bằng chứng có lẽ sẽ quá dài để trả lời. Theo hiểu biết tốt nhất của tôi không có sự khác biệt, vì vậy hãy để tôi giả sử rằng đây là trường hợp.

Tôi cũng không biết liệu tuyên bố của bạn về dép xỏ ngón thường được kích hoạt ở cạnh tích cực của đồng hồ có đúng không (tôi tin là như vậy). Hãy để tôi cho rằng điều này cũng đúng cho mục đích thảo luận sau đây.

Theo tất cả các giả định ở trên, tôi chỉ thấy hai khả năng:

  • Kích hoạt cạnh tích cực đã trở thành một tiêu chuẩn bởi vì nó có một số lợi thế rõ ràng tại một thời điểm trong quá khứ. Sau khi công nghệ khai thác lợi thế này trở nên lỗi thời, kích hoạt cạnh tích cực vẫn là tiêu chuẩn thực tế.
  • Kích hoạt cạnh tích cực đã trở thành một tiêu chuẩn mà không có bất kỳ tính hợp pháp kỹ thuật nào, nghĩa là nó không cung cấp bất kỳ lợi thế nào trong bất kỳ họ logic và bất kỳ nút công nghệ nào trong quá khứ.

Để xem khi nào kích hoạt cạnh tích cực đã trở thành một tiêu chuẩn, tôi quyết định theo dõi sự phát triển của các sơ đồ xung nhịp CPU của Intel :

  1. φ2
  2. 8086 : Việc chốt dữ liệu đã được thực hiện trên cạnh âm của CLK.
  3. 80386 : Được sử dụng cạnh dương của CLK2.
  4. 80486 : Được sử dụng cạnh dương của CLK.
  5. Pentium : Được sử dụng cạnh tích cực của CLK ...

Có vẻ như Intel đã bắt đầu với việc kích hoạt cạnh âm (nếu thuật ngữ này hoàn toàn có thể được áp dụng cho các CPU đầu tiên), nhưng đã chuyển sang kích hoạt cạnh tích cực bắt đầu từ 386.

8086 đã sử dụng công nghệ HMOS (một số loại logic NMOS tải suy giảm ) trong khi 80386 là CHMOS (nó là một loại CMOS). Có vẻ như việc áp dụng kích hoạt cạnh tích cực đã xảy ra song song với việc áp dụng công nghệ CMOS. Chúng tôi giả định rằng CMOS không cung cấp bất kỳ lợi thế nào cho việc kích hoạt cạnh tích cực, do đó có vẻ như quy ước này là tùy ý.

Tuy nhiên, chúng ta phải ghi nhớ ba điểm:

  • Chúng tôi giả định rằng các công nghệ CMOS hiện tại không cung cấp bất kỳ lợi thế nào.
  • Giả định trên không được chứng minh hoặc tranh luận dưới mọi hình thức.
  • Từ datasheets, rõ ràng Data Out được chốt ở cạnh nào, tuy nhiên điều này có thể không đại diện cho việc thực hiện bên trong.

Rõ ràng, có chỗ cho nghiên cứu bổ sung. Còn tiếp...

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.