1. Trang chủ
  2. » Luận Văn - Báo Cáo

Sử dụng bộ MUX thiết kế mạch tạo và kiểm tra lẻ cho chuỗi dữ liệu 4 bit

21 36 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Sử dụng bộ MUX thiết kế mạch tạo và kiểm tra lẻ cho chuỗi dữ liệu 4 bit
Trường học Trường Đại Học Công Nghệ Thông Tin - Đại Học Quốc Gia Hà Nội
Chuyên ngành Kỹ Thuật Hệ Thống Điện Tử
Thể loại Đề tài nghiên cứu
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 21
Dung lượng 1,8 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

MỤC LỤC CHƯƠNG I TỔNG QUAN 1 1 1 Khái niệm 1 1 2 Ứng dụng 4 CHƯƠNG II Bài TOÁN THIẾT KẾ 5 2 1 Yêu cầu bài toán 5 2 1 1 Bảng chân lý 5 2 1 2 Bảng Karnaugh 6 2 1 3 Thiết kế MUX 8 1 7 2 1 4 Mạch MUX 8 1 trong proteus 8 2 1 5 Mô phỏng mạch tạo MUX 8 1 trên Proteus 9 2 1 6 Kiểm tra chuỗi dữ liệu 4 bit 9 CHƯƠNG III LỰA CHỌN THIẾT BỊ 11 CHƯƠNG IV TRIỂN KHAI MẠCH THỰC TẾ 13 4 1 Thiết kế mạch in 13 4 2 Mạch thực tế 13 4 3 Chạy thử nghiệm 14 CHƯƠNG V Liên hệ thực tế 15 DANH MỤC HÌNH ẢNH Hình 1 Quy luật ch.

Trang 1

MỤC LỤC

CHƯƠNG I TỔNG QUAN 1

1.1 Khái niệm 1

1.2 Ứng dụng: 4

CHƯƠNG II Bài TOÁN THIẾT KẾ 5

2.1 Yêu cầu bài toán 5

2.1.1 Bảng chân lý 5

2.1.2 Bảng Karnaugh 6

2.1.3 Thiết kế MUX 8-1 7

2.1.4 Mạch MUX 8-1 trong proteus 8

2.1.5 Mô phỏng mạch tạo MUX 8-1 trên Proteus 9

2.1.6 Kiểm tra chuỗi dữ liệu 4 bit 9

CHƯƠNG III LỰA CHỌN THIẾT BỊ 11

CHƯƠNG IV TRIỂN KHAI MẠCH THỰC TẾ 13

4.1 Thiết kế mạch in 13

4.2 Mạch thực tế 13

4.3 Chạy thử nghiệm 14

CHƯƠNG V Liên hệ thực tế 15

Trang 2

DANH MỤC HÌNH ẢNH

Hình 1 Quy luật chẵn lẻ 1

Hình 2 Truyền dữ liệu và kiểm tra 3

Hình 3 phát hiện sai số 3

Hình 4 Bộ MUX 4 8-1 8

Hình 5 Bộ MUX 8-1 9

Hình 6 kiểm tra chuỗi 9

Hình 7 kiểm tra chuỗi 10

Hình 8 IC 74151 11

Hình 9 Mô phỏng trong Proteus 11

Hình 10 chạy mô phỏng 12

Hình 11 mạch PCB trong altium 13

Hình 12 mạch thực tế 13

Hình 13 Bit 1 chẵn 14

Hình 14 Bit 1 lẻ 14

Hình 15 IC 74180 15

Hình 16 Mô phỏng IC 74180 16

Hình 17 Mô phỏng IC 74180 16

Hình 18 IC 74280 17

Hình 19 Mô phỏng IC 74280 18

Trang 3

CHƯƠNG I TỔNG QUAN

I.1 Khái niệm

Bit chẵn lẻ (tiếng Anh: parity bit), hoặc bit kiểm tra (tiếng Anh: check bit), là

một bit được thêm vào một chuỗi mã nhị phân, để kiểm tra phát hiện lỗi trong dữ liệukhi truyền đưa hoặc đọc/ghi trên phương tiện lưu trữ Nó là dạng mã phát hiện lỗi đơngiản nhất Các bit chẵn lẻ thường được áp dụng cho các đơn vị nhỏ nhất của giao thứctruyền thông, phổ biến nhất hiện nay là các octet (byte) 8 bit, mặc dù về nguyên tắcchúng áp dụng tổng quát cho tất cả các dạng chuỗi có số bit khác.[1]

Với chuỗi octet thì khung truyền đưa chuỗi có 9 bit, trong đó có 8 bit dữ liệu vàbit thứ 9 là bit chẵn lẻ Nội dung bit chẵn lẻ có giá trị bằng số bù nhị phân cho tổng các

bit của octet để tổ hợp octet + parity luôn luôn hoặc là một số chẵn hoặc là một số lẻ,tùy theo lựa chọn của nhà thiết kế hệ thống truyền đưa

Bit chẵn lẻ dùng quy tắc số chẵn (even parity bit), thì bit chẵn lẻ có giá trị bằng

1(2) khi số lượng các bit 1 trong octet là một số lẻ Khi cộng thêm bit chẵn lẻ vào, tổng

số lượng bit có giá trị bằng 1(2) là một số chẵn

Bit chẵn lẻ dùng quy tắc số lẻ (odd parity bit) thì bit chẵn lẻ có giá trị bằng

1(2) nếu số lượng các bit 1 trong octet là một số chẵn Khi cộng thêm bit chẵn lẻ vào,tổng số bit có giá trị bằng 1(2) là một số lẻ

Hình 1 Quy luật chẵn lẻ

Trang 4

Nếu một số lẻ lượng các bit (bao gồm cả bit chẵn lẻ), bị đảo lộn trong khi truyềnthông một nhóm bit, thì bit chẵn lẻ sẽ có giá trị không đúng, và do đó báo hiệu rằng lỗitrong truyền thông đã xảy ra Với lý do này, bit chẵn lẻ còn được gọi là một mã pháthiện lỗi, song nó không phải là một mã sửa lỗi, vì nó chẳng có cách nào xác định được

vị trí của bit bị lỗi cả Khi lỗi bị phát hiện, dữ liệu thu được phải bị bỏ đi và phải đượctruyền thông lại từ đầu Trên kênh truyền có độ nhiễu cao, việc truyền tải dữ liệu thànhcông là một việc rất hao tốn thời gian, và đôi khi, việc truyền thông còn hầu nhưkhông thể thực hiện được nữa Bit chẵn lẻ có một ưu điểm: nó là một mã tốt nhấtchiếm chỉ một bit và chỉ dùng vài cồng XOR (XOR gate) để tạo giá trị mà thôi.

Dữ liệu dạng số khi được lưu trữ, xử lí hay truyền từ máy này qua máy khác cóthể bị lỗi Như khi truyền dữ liệu đi xa qua môi trường điện thoại, dây cáp, không gian

có thể bị ảnh hưởng bởi nhiệt độ, nhiễu đường dây, điện từ… hay do lâu ngày các bộ

xử lí, bộ chuyển đổi có một sai sót nhỏ sẽ làm thay đổi dữ liệu

Ví dụ : trong 1 khối dữ liệu có chữ A mã ASCII là 1000001 sẽ bị sai thành

100000 ,bit sai có thể là bất cứ 1 bít nào khác Mặc dù xác suất làm sai chỉ 1 bít trong

cả khối dữ liệu là rất nhỏ ( trung bình khoảng 100000 bit mới có 1 bit sai) nhưng trongnhiều trường hợp đòi hỏi phải thật chính xác hay giảm hết mức những sai 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 trongmô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

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

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

Trang 5

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ònbên nhận mạch kiểm parity dùng 4 cổng XNOR để rò sai, nếu dữ liệu truyền đúng thì

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áotruyề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

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 Truyền dữ liệu và kiểm tra

Trang 6

Hình 3 phát hiện sai số

Trang 7

I.2 Ứng dụng:

Do đặc tính đơn giản của nó, bit chẵn lẻ được dùng trong rất nhiều ứngdụng phần cứng, những nơi mà việc tái diễn các thao tác khi có trục trặc xảy ra là mộtviệc có thể thực hiện được, hoặc những nơi mà việc phát hiện lỗi đơn thuần là mộtviệc có lợi Lấy ví dụ, mạch nối SCSI (SCSI bus) dùng bit chẵn lẻ để phát hiện lỗi

trong truyền thông, và rất nhiều các phần lưu trữ trong bộ nhớ các lệnh vi xử

(microprocessor instruction cache) cũng dùng bit chẵn lẻ để bảo trợ hoạt động của

nó nữa Do các dữ liệu trong I-cache[2] chỉ là một bản sao của bộ nhớ chính (main memory), nội dung của nó có thể được xóa đi, nạp lại nếu dữ liệu ở trong chẳng may bị thoái hóa (corrupted).

Trong truyền dữ liệunối tiếp (serial data transmission), dạng thức dữ liệu được

dùng phổ thông nhất là dạng thức 7 bit, với một bit chẵn lẻ dùng quy tắc số chẵn, mộtStart bit và một hoặc hai Stop bit để đánh dấu/đồng bộ điểm bắt đầu cũng như kết thúcmột byte dữ liệu trong chuỗi bit trên đường truyền Dạng thức này thích ứng hầu hếtcác dạng thức 7-bit ký tự ASCII dưới hình thức byte 8-bit Một byte dữ liệu trênđường truyền nối tiếp sẽ gồm 01 Start bit (bắt đầu), 7 bit dữ liệu, một parity bit và 01Stop bit (kết thúc) Byte là một hình thức tiện lợi để biểu đạt dữ liệu Những dạng thứckhác cũng có thể thực hiện được, như dạng thức 8 bit dữ liệu cộng với một bit chẵn lẻ

có thể dùng để chuyên chở tất cả các giá trị byte 8-bit

Trong ngữ cảnh của truyền thông nối tiếp (serial communication), bit chẵn lẻ

thường được phát sinh và kiểm tra bởi phần cứng giao thức - chẳng hạn như UART

-và khi thu nhận, CPU có thể sử dụng kết quả nhận được (-và hệ điều hành nữa) thông

qua bit báo tình hình (status bit) trong thanh ghi của phần cứng giao thức Việc khôiphục lại sau khi tình trạng lỗi xảy ra thường được thi hành bằng cách tái truyền dữliệu, và chi tiết của việc này thường là do phần mềm phụ trách (ví dụ dùng các thường

trình nhập/xuất (I/O routine) của hệ điều hành).

Trang 8

CHƯƠNG II Bài TOÁN THIẾT KẾ

II.1 Yêu cầu bài toán

Thiết kế mạch tạo, kiểm tra lẻ sử dụng MUX cho chuỗi dữ liệu 4 bit

Trang 9

Chọn A,B,C làm phần tử điều khiển, từ bảng chân lý ta được mạch MUX:

CB

A

D7

D6

D5

D4

D3

D2

D1

D0

MUX 8-1

Trang 10

II.1.3 Thiết kế MUX 8-1

E

S0

S1

S2

fINP

Trang 11

II.1.4 Mạch MUX 8-1 trong proteus

Hình 4 Bộ MUX 4 8-1

Trang 12

II.1.5 Mô phỏng mạch tạo MUX 8-1 trên Proteus

Hình 5 Bộ MUX 8-1

II.1.6 Kiểm tra chuỗi dữ liệu 4 bit

Hình 6 kiểm tra chuỗi

Trang 13

Hình 7 kiểm tra chuỗi

Trang 14

CHƯƠNG III LỰA CHỌN THIẾT BỊ

Để phù hợp với mục đích tạo và kiểm tra lẻ chuỗi dữ liệu 4 bit, ta chọn sử dụng

IC MUX 8-1 74LS151

Hình 8 IC 74151

Mô phỏng mạch trên Proteus

Với sốbít làchẵn(3) =>đầu ra

đầu kiểm tra = 0 Hình 9 Mô phỏng trong Proteus

Hình 10 chạy mô phỏng

Trang 16

CHƯƠNG IV TRIỂN KHAI MẠCH THỰC TẾ

IV.1 Thiết kế mạch in

Mạch PCB được thiết kế trên phần mềm Altium

thực tế.

Trang 17

Hình 14 Bit 1 lẻ

Trang 18

CHƯƠNG V Liên hệ thực tế

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

Đây là IC tạo kiểm 8 bit từ D0 đến D7, bit parity có thể dùng là chẵn hay lẻ 2ngõ ra là EVEN (chẵn ra) và ODD (lẻ ra) 2 ngõ PE (chẵn vào) và PO (lẻ vào) dùngtrong 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àochẵn cũng như 2 ngõ ra lẻ và ra chẵn phải không được bằng nhau khi kiểm parity Khingõ 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ệuvào (gồm cả bit parity)

Hình 15 IC 74180

Mô phỏng IC74LS180 trên proteus thực hiện kiểm tra lẻ:

Đầu tiên ta đặt Mức logic đầu vào PE = 0, PO = 1 để set chế độ kiểm tra lẻ

Trang 19

Hình 16 Mô phỏng IC 74180

Với đầu vào logic 1000 có số lượng bit 1 là lẻ thì mức logic đầu ra chân ODD

= 0, và mức logic lại chân EVEN = 1 chứng tỏ 4 bit đầu vào lẻ

Hình 17Mô phỏng IC 74180

Với đầu vào logic 1001 có số lượng bit 1 là chẵn thì mức logic đầu ra chân ODD = 1, và mức logic lại chân EVEN = 0 chứng tỏ 4 bit đầu vào chẵn

Trang 20

Ngoài ra, trong thực tế, người ta cũng hay sử dụng IC74280 để thực hiện kiểm tra chẵn lẻ

Mô phỏng IC74LS280 trên proteus thực hiện kiểm tra lẻ:

Hình 18 IC 74280

Với đầu vào logic 0010 có số lượng bit 1 là lẻ thì mức logic đầu ra chân ODD

= 0, và mức logic lại chân EVEN = 1 chứng tỏ 4 bit đầu vào lẻ

Trang 21

Hình 19 Mô phỏng IC 74280

Với đầu vào logic 0011 có số lượng bit 1 là chẵn thì mức logic đầu ra chân ODD = 1, và mức logic lại chân EVEN = 0 chứng tỏ 4 bit đầu vào chẵn

Ngày đăng: 15/06/2022, 21:37

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w