Với parity chẵn : dữ liệu trước khi truyền đi sẽ được đếm tổng số bit o Nếu tổng chẵn, bit parity 0 được thêm vào trước mỗi khối dữ liệu truyền.. o Nếu tổng lẻ thì bit parity 1 được
Trang 1sai sót nhỏ này Có nhiều mạch có thể phát hiện sai và sửa lỗi, bạn sẽ gặp lại nội dung này kĩ hơn trong môn “Truyền số liệu”, ở đây xin nói tới mạch tạo kiểm parity
Có 2 dạng mạch chính là parity chẵn và parity lẻ Cả 2 đều được sử dụng
Với parity chẵn : dữ liệu trước khi truyền đi sẽ được đếm tổng số bit
o Nếu tổng chẵn, bit parity 0 được thêm vào trước mỗi khối dữ liệu truyền
o Nếu tổng lẻ thì bit parity 1 được thêm vào (để nó chẵn)
Ở đầu nhận dữ liệu, mạch sẽ kiểm tra từng khối dữ liệu nhận được xem có tổng số bit là chẵn hay không Nếu không thì tức là đã có 1 bit nào đó trong khối dữ liệu bị sai Ngược lại là mạch truyền đúng
Với parity lẻ thì ngược lại khối dữ liệu phải được làm lẻ trước khi truyền
Ví dụ : Truyền 1 khối dữ liệu 4 bit 1101 có sử dụng mạch tạo kiểm parity để rò sai được minh hoạ như hình dưới đây :
Hình 2.3.28 Mạch tạo kiểm Parity
Giả sử mạch parity chẵn được dùng Nhận thấy rằng tổng số bit truyền là 3 (lẻ) nên bit parity 1 được thêm vào cho chẵn Như vậy, dữ liệu truyền đi sẽ có 5 bit là
11101
Mạch tạo parity trên sử dụng 3 cổng XNOR để kiểm tra số bit chẵn hay lẻ, còn bên nhận mạch kiểm parity dùng 4 cổng XNOR để rò sai, nếu dữ liệu truyền đúng
Trang 2thì ra Q = 0, nếu truyền sai thì ra Q = 1 Khi này, mạch nhận có thể truyền về tín hiệu báo truyền sai cho máy gửi để nó truyền lại khối dữ liệu bị lỗi này
Nhận thấy rằng nếu khối dữ liệu truyền bị sai tới 2 bit (xác suất này là rất rất nhỏ) hay bit parity truyền sai thì mạch parity mất tác dụng
Các mạch xử lí điều khiển hay truyền dữ liệu thường có sẵn khối tạo kiểm và thậm chỉ có thể sửa lỗi luôn Còn khi dùng mạch rời thì IC 74180 và họ của nó là thông dụng nhất
Hình 2.3.29 Kí hiệu khối 74180 và bảng hoạt động
Đây là IC tạo kiểm 8 bit từ D0 đến D7, bit parity có thể dùng là chẵn hay lẻ 2 ngõ
ra là EVEN (lẻ ra) và ODD (chẵn ra) 2 ngõ PE (lẻ vào) và PO (chẵn vào) dùng trong trường hợp cần nối chồng nhiều IC để có mạch tạo kiểm nhiều bit hơn Cách nối sẽ là đưa từ ngõ ra chẵn và ngõ ra lẻ tới ngõ vào chẵn và vào lẻ 2 ngõ vào lẻ
và vào chẵn cũng như 2 ngõ ra lẻ và ra chẵn phải không được bằng nhau khi kiểm parity Khi ngõ vào parity nào không dùng thì phải nối mức thấp
Hình dưới đây là cách sử dụng 74180 làm mạch kiểm parity lẻ cho 9 bit dữ liệu vào (gồm cả bit parity)
Hình 2.3.30 Mạch kiểm Parity 9 bit dùng 74180
1 IC phát kiểm 8 bit chẵn lẻ khác cũng hay được dùng là 74LS280
Trang 3K ỹ T huật S ố
Blogthongtin info Biên tập: Nguyễn Trọng Hòa
Chương 3: Mạch tuần tự
Trong hệ thống số không chỉ có những mạch mà các trạng thái ngõ ra chỉ lệ thuộc vào trạng thái ngõ vào (như chương 2), còn có các mạch với trạng thái của nó tuỳ thuộc vào trạng thái trước đó của hệ thống: đó là mạch tuần tự (Sequency Circuits) Dạng mạch này được trình bày trong chương 3 dưới các mục sau:
Bài 1: Các khái niệm cơ bản
Bài 2: Flip-flop và các vi mạch điển hình
Bài 3: Thanh ghi
Bài 4: Mạch đếm không đồng bộ
Bài 5: Mạch đếm đồng bộ
Bài 6: Mạch đếm vòng
Bài 7: Thiết kế mạch đếm
Bài 8: Ứng dụng mạch đếm
K ỹ T huật S ố
Blogthongtin info Biên tập: Nguyễn Trọng Hòa
Bài 1: Các khái niệm cơ bản
Chương trước đã đề cập đến các mạch tổ hợp từ các cổng logic đơn giản đến các mạch tích hợp MSI phức tạp hơn như mạch chuyển đổi mã, dồn kênh, tách kênh Chúng có một đặc điểm là ngõ ra sẽ thay đổi trạng thái theo trạng thái ngõ vào mà không kể tới các trạng thái trước đó của nó, nghĩa là chúng không có tính nhớ Đơn giản như mạch trên hình 3.1.1, nếu A = 1 thì Y = 0
Trang 4Hình 3.1.1 Cổng NOT
Ở chương này, ta sẽ nói đến một loại lớn khác của mạch số, đó là mạch tuần tự Khác với mạch tổ hợp, trạng thái ngõ ra của mạch tuần tự tuỳ thuộc không những vào các trạng thái ngõ vào mà còn vào cả 2 trạng thái trước đó của ngõ ra Không những thế, trạng thái ngõ ra sẽ không thay đổi ngay khi ngõ vào thay đổi mà lại còn phải đợi đến khi có xung lệnh gọi là xung đồng hồ (clock) Như vậy mạch tuần
tự vừa có tính nhớ vừa có tính đồng bộ
Cả mạch tổ hợp và tuần tự đều được sử dụng nhiều trong các hệ thống số Một hệ tuần tự có thể biểu diễn một cách tổng quát như sau:
Hình 3.1.2 Hệ tuần tự Phần tổ hợp sẽ nhận tín hiệu logic từ đầu vào bên ngoài và từ đầu ra của các phần
tử nhớ, nó tính toán dựa vào các đầu vào này để cho ra các đầu ra khác nhau, trong
đó một phần được đem sang khối các phần tử nhớ để cất giữ đi; đầu ra của phần tử nhớ có thể đưa ra ngoài hay đưa điều khiển phần tổ hợp Phần điều khiển sẽ cho phép phần nhớ và tổ hợp hoạt động theo một số yêu cầu đề ra
Như vậy, các đầu ra của hệ thống số vừa phụ thuộc vào các đầu vào vừa liên quan đến thông tin đã lưu trữ bên trong của phần tử nhớ Phần tử nhớ có thể là một mạch logic nhưng có khi chỉ là một đường nối phản hồi từ ngõ ra về ngõ vào
1.1 Mạch chốt cổng Nand
Hãy xem cấu tạo của mạch dưới đây :
Trang 5Hình 3.1.3 Mạch chốt cổng Nand
Mạch gồm 2 cổng logic Nand mắc chéo nhau, có 2 ngõ vào là S (set : có nghĩa
là đặt) và R (reset : có nghĩa là đặt lại) 2 ngõ ra kí hiệu là Q (đầu ra bình thường) và Q (đầu ra đảo, tức là có trạng thái logic ngược lại với Q)
o Hoạt động của mạch như thế nào?
o Khi thiết lập mạch chốt đặt S = 0, R = 1
Do S = 0 nên Q = 1 bất chấp ngõ còn lại
Vậy ngõ ra ổn định sẽ là Q = 1 và Q = 0
o Khi xoá mạch chốt S = 1 và R = 0
Do R = 0 nên Q = 1 bất chấp ngõ còn lại
Vậy ngõ ra ổn định sẽ là Q = 0 và Q = 1
Vì lí do đối xứng nên hoạt động thiết lập và xoá mạch chốt ngược nhau
o Khi để ngõ vào thường nghỉ S= 1 R=1
Rõ ràng chưa thể biết ngõ ra Q và Q như thế nào
Hãy xét đến trạng thái trước đó:
Vì vậy khi S=1 R=1 trạng thái ra không thay đổi tức là trước đó như thế nào thì sau vẫn vậy (Qo và Qo)
o Khi thiết lập và xoá cùng lúc S=0, R=0