Các mạch số xét trước đây là các mạch tổ hợp, các ngõ ra tại một thời điểm độc lập với ngõ vào tại thời điểm đó.
Tuy mọi hệ thống đều có mạch tổ hợp nhưng thực tế là hầu hết đều có thành phần lưu trữ, do đó chúng ta cần đề cập đến mạch tuần tự.
Kiểu mạch tuần tự thông dụng nhất thuộc loại đồng bộ.
31 trang |
Chia sẻ: lylyngoc | Lượt xem: 1902 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Bài giảng môn Cấu trúc máy tính - Mạch tuần tự. Mạch lật, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
MẠCH TUẦN TỰ MẠCH LẬT MẠCH TUẦN TỰ Các mạch số xét trước đây là các mạch tổ hợp, các ngõ ra tại một thời điểm độc lập với ngõ vào tại thời điểm đó. Tuy mọi hệ thống đều có mạch tổ hợp nhưng thực tế là hầu hết đều có thành phần lưu trữ, do đó chúng ta cần đề cập đến mạch tuần tự. Kiểu mạch tuần tự thông dụng nhất thuộc loại đồng bộ. MẠCH TUẦN TỰ Mạch tuần tự đồng bộ sử dụng các tín hiệu ảnh hưởng đến các thành phần lưu trữ chỉ tại các khoảng thời gian rời rạc. Việc đồng bộ hóa được thực hiện qua một thiết bị định thời gọi là mạch tạo xung đồng hồ, tạo ra một dãy xung đồng hồ tuần hoàn. Các xung đồng hồ này phát qua hệ thống theo một cách nào đó làm cho các thành phần chỉ bị ảnh hưởng bởi sự xuất hiện của xung đồng bộ. MẠCH TUẦN TỰ Trong thực tế, các mạch tuần tự đồng bộ theo đồng hồ được dùng nhiều nhất. Nó có tính ổn định và có thể dễ dàng ngắt thời gian của chúng thành các bước rời rạc độc lập và có thể xem xét các bước đó một cách riêng lẻ. Mạch lật là dạng mạch đơn giản nhất có chức năng lưu trữ 1bit nhị phân. - Có hai ngõ ra: 1 cho trị bình thường và 1 cho trị bù. Mạch lật duy trì trạng thái nhị phân cho đến khi có xung đồng hồ điều khiển làm thay đổi trạng thái. Sự khác nhau của các mạch lật là số ngõ vào và cách thức các ngõ vào tác động đến trạng thái nhị phân. MẠCH LẬT Có 3 ngõ vào: S (set-đặt); R (reset-khởi động; C (clock- đồng hồ) Có 1 ngõ ra Q, đôi khi có ngõ ra bù (ký hiệu bằng 1 vòng tròn nhỏ) Một ký hiệu mũi tên trước chữ C biểu thị một ngõ nhập động. chỉ báo động cho biết mạch lật đáp ứng với một chuyển tiếp dương (từ 0 sang 1) của tín hiệu đồng hồ ở ngõ nhập. Mạch lật SR: Mạch lật SR: (tt) Hoạt động: Nếu không có tín hiệu nhập đồng hồ C, ngõ ra cũng không thay đổi bất chấp trị của R và S. Chỉ khi tín hiệu đồng hồ thay đổi từ 0 sang 1, ngõ ra mới bị ảnh hưởng theo trị của ngõ vào S và R. Nếu S = 1; R = 0 thì Q chuyển sang 1 Nếu S = 0; R = 1 thì Q chuyển sang 0 Nếu S= 0; R = 0 thì đồng hồ chuyển, ngõ ra không đổi. Nếu S và R =1 ngõ ra không xác định, có thể là 0 hoặc 1 tuỳ thuộc vào thời giaan trì hoãn trong mạch Mạch lật SR: (tt) - Cột S và R cho các giá trị nhập. - Q(t) là trạng thái nhị phân của ngõ ra Q tại một thời điểm (trạng thái hiện tại) - Q(t+1) là trạng thái nhị phân ngõ ra Q sau khi xuất hiện một chuyển tiếp đồng hồ. (trạng thái kế tiếp) Mạch lật SR: (tt) - Nếu S = R = 0, một chuyển tiếp đồng hồ không thay đổi trạng thái, nghĩa là: Q(t+1) = Q(t). - Nếu S = 0; R = 1 mạch lật qua trạng thái 0 - Nếu S = 1; R = 0 mạch lật qua trạng thái 1 - Khi S = R = 1 trạng thái mạch lật không xác định nên ít khi được dùng trong thực tế Mạch lật D: (Data) Mạch lật SR được đổi sang mạch lật D bằng cách đưa vào một cổng đảo giữa S và R và cũng dùng ký hiệu D cho ngõ vào duy nhất. Khi D = 1, ngõ ra là 1; khi D = 0, ngõ ra là 0 Mạch lật D: (Data) (tt) Trạng thái kế Q(t+1) được xác định từ ngõ vào D. Mối quan hệ có thể biểu diễn bằng phương trình đặc tính: Q(t+1) = D - Nghĩa là ngõ ra Q nhận trị từ ngõ vào D khi tín hiệu đồng hồ chuyển từ 0 sang 1. - Lưu ý là không có điều kiện nhập để giữ trạng thái của mạch lật D. Mạch lật D: (Data) (tt) Mạch lật D thuận tiện là chỉ có một ngõ vào nhưng bất tiện là không có điều kiện không đổi Q(t+1) = Q(t) - Điều kiện không đổi có thể lấy bằng cách vô hiệu tín hiệu đồng hồ hoặc cho ngõ ra trở lại ngõ vào, khi đó thì xung đồng hồ sẽ giữ trạng thái mạch lật không đổi. Mạch lật JK: Là một cải tiến của mạch lật SR trong đó điều kiện không xác định của SR được định nghĩa trong JK. Ngõ vào J, K hoạt động giống như S, R để đặt và xóa mạch lật. Khi J, K đều bằng 1, một chuyển tiếp đồng hồ sẽ chuyển ngõ ra mạch lật sang trạng thái bù. Mạch lật JK: Tương đương với mạch SR. Thay vì không xác định, mạch lật JK có điều kiện bù Q(t + 1) = Q’(t) khi J = K = 1 Mạch lật T: Mạch lật T là mạch xuất phát từ mạch lật JK với 2 ngõ vào được kết nối thành một ngõ vào T. Vì vậy mạch lật T chỉ có hai điều kiện: - Khi T = 0 (J=K=0), một chuyển tiếp đồng hồ không thay đổi trạng thái của mạch lật.. - Khi T = 1 (J=K=1), một chuyển tiếp đồng hồ làm bù trạng thái mạch lật. Các điều kiện này có thể biểu diễn bằng phương trình thuộc tính: Q(t+1) = Q(t) T Mạch lật T: Mạch lật lề: Các mạch lật nói trên chỉ là một trong hai loại mạch lật lề. Đây là loại mạch thông dụng nhất để đồng bộ việc thay đổi trạng thái trong một chuyển tiếp xung đồng hồ. Trong loại mạch này, các chuyển tiếp xuất xảy ra tại một mức xung đồng hồ xác định. Khi mức nhập xung quá ngưỡng này, các ngõ nhập bị khoá lại sao cho mạch lật không đáp ứng với các thay đổi ở ngõ nhập sau đó, cho đến khi xung đồng hồ trở về 0 và một xung khác đến. Mạch lật lề: Một số mạch lật lề tạo chuyển tiếp ở lề lên của tín hiệu đồng hồ (chuyển tiếp lề dương – Postive edge transition) Và một số khác tạo chuyển tiếp ở lề xuống của tín hiệu đồng hồ (chuyển tiếp lề âm – Negative edge transition) Mạch lật lề: Tín hiệu xung trong mạch lật D lề dương. Trị ngõ nhập D chuyển sang ngõ xuất Q khi đồng hồ tạo chuyển tiếp dương. Ngõ xuất không thể thay đổi khi đồng hồ ở mức 1, mức 0 hoặc chuyển tiếp từ mức 1 xuống 0. Mạch lật lề: Chuyển tiếp đồng hồ dương bao gồm: - Thời gian tối thiểu gọi là thời định (setup time) - Trong đó ngõ nhập D phải duy trì một hằng trị trước khi chuyển và một thời gian hưu hạn gọi là thời lưu (hold time) - Trong đó ngõ nhập D không thay đổi chuyển tiếp dương. - Chuyển tiếp dương có hiệu lực thường là một phần rất nhỏ trong tổng chu kỳ xung đồng hồ. Mạch lật lề: Mạch lật lề MẠCH TUẦN TỰ Mạch tuần tự là một kết nối các mạch lật với các cổng. Bản thân các cổng tạo thành mạch tổ hợp, nhưng khi gộp vào với các mạch lật, toàn bộ mạch được sắp vào loại mạch tuần tự. Khối mạch tổ hợp nhận tín hiệu nhị phân từ các ngõ nhập ngoài và đi vào mạch lật. Các cổng trong mạch tổ hợp xác định trị nhị phân lưu vào mạch lật sau mỗi chuyển tiếp đồng hồ. MẠCH TUẦN TỰ (tt) Phương trình nhập mạch lật: Một biến nhập ngoài x Một biến xuất ngoài y Hai mạch lật D có đồng hồ Các cổng AND, OR, và NOT tạo thành phần tổ hợp của mạch. Các kết nối giữa các cổng trong mạch tổ hợp có thể xác định qua các biểu thức boolean. Phần mạch tổ hợp tạo ngõ nhập cho các mạch lật được mô tả qua các biểu thức boolean gọi là phương trình mạch lật. MẠCH TUẦN TỰ (tt) Bảng trạng thái mạch lật: - Hoạt động của mạch tuần tự được xác định từ các ngõ nhập, xuất và trạng thái của các mạch lật. - Ngõ ra và trạng thái kế là hàm của các ngõ nhập và trạng thái hiện tại. - Mạch tuần tự được xác định qua bảng trạng thái liên kết các ngõ ra và trạng thái kế như là một hàm của các ngõ nhập và trạng thái hiện hành. - Mạch tuần tự có đồng hồ, chuyển tiếp từ trạng thái hiện hành sang trạng thái kế được kích hoạt bởi một tín hiệu đồng hồ MẠCH TUẦN TỰ (tt) Lược đồ trạng thái: - Thông tin trong bảng trạng thái có thể biểu diễn dưới dạng hình ảnh trong lược đồ trạng thái. - Trạng thái được biểu diễn bằng một vòng tròn và chuyển tiếp giữa các trạng thái được ghi nhận bằng các đường nối các vòng. - Các đường nối được ghi bằng hai số nhị phân được ghi cách nhau bằng dấu (/). - Số phía trước là trị hiện tại; số sau là trị xuất trong trạng thái hiện hành. MẠCH TUẦN TỰ (tt) Ví dụ: Đường nối từ trạng thái 00 đến 01, ghi 1/0 nghĩa là: Khi mạch tuần tự ở trạng thái hiện hành 00, nhập là 1, xuất là 0. Sau một chuyển tiếp đồng hồ, mạch đến trạng thái kế 01. Nếu nhập đổi sang 0, xuất thành 1, nhưng nếu nhập giữ lại 1, xuất ở 0. Thông tin nhận được từ lược đồ trạng thái cùng với hai đường phát ra từ vòng biểu diễn trạng thái 01. Một đường nối vòng tròn với chính nó cho biết không có đổi trạng thái. MẠCH TUẦN TỰ (tt) MẠCH TUẦN TỰ (tt) Qui trình thiết kế: - Chuyển đặc tả sang lược đồ trạng thái. - Chuyển lược đồ trạng thái sang bảng trạng thái. - Từ bảng trạng thái ta nhận được thông tin cho việc xây dựng lược đồ mạch luận lý. MẠCH TUẦN TỰ (tt) Ví dụ: Thiết kế mạch tuần tự có đồng hồ đi qua một dãy trạng thái nhị phân 00, 01, 10, 11. Khi ngõ nhập ngoài x có giá trị 1. Trạng thái mạch không đổi khi x = 0. Loại mạch này là mạch đếm nhị phân 2bit. Vì dãy trạng thái đồng nhất với dãy số đếm hai ký số nhị phân. Ngõ nhập x là biến điều khiển thao tác đếm MẠCH TUẦN TỰ (tt) Lược đồ trạng thái mạch đếm nhị phân