1. Thiết kếmạch cảnh báo nhiệt độcho bồn Xửlý hóa chất. Nhiệt độcủa bồn được theo
dõi và kiểm tra bằng 3 cảm biến đặt ở3 vịtrí khác nhau trên bồn. Nhiệt độcủa bồn được
cảnh báo bằng 2 đèn led: led xanh và led đỏ.
- Khi không có quá nhiệt hoặc chỉcó 1 vịtrí quá nhiệt thì led xanh sáng, led đỏtắt.
- Khi có 2 vịtrí trởlên quá nhiệt thì led xanh tắt, led đỏsáng và nhấp nháy 10Hz.
2. Thiết kếmạch logic điều khiển một bồn chứa nước với sơđồcông nghệvà yêu cầu
nhưsau
32 trang |
Chia sẻ: chaien | Lượt xem: 1681 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Bài giảng Phần 1: Thiết kế hệ logic tổ hợp, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 1
Phần 1: Thiết kế hệ logic tổ hợp
I. Giới thiệu chung
Về cơ bản hệ điều khiển logic được chia làm 2 loại lớn:
- Hệ tổ hợp.
- Hệ tuần tư.
Trong hệ tổ hợp đầu ra tại một thời điểm bất kỳ chỉ phụ thuộc vào trạng thái các đầu
vào tại thời điểm đó, nghĩa là không có phần tử nhớ trong mạch, đối với hệ tuần tự thì
khác: Trạng thái ngỏ ra tại thời điểm đang xét không những phụ thuộc trạng thái vào tại
cùng thời điểm mà còn phụ thuộc vào trạng thái vào trong quá khứ có nghĩa là phải có
phần tử nhớ trong mạch.
Một hệ logic tuần tự có thể chứa các hệ logic tổ hợp con, những dử liệu thiết kế hệ tổ
hợp có thể được cho dưới dạng:
- Một tập hợp các mệnh đề.
- Biểu thức Boole.
- Bảng sự thật.
Nếu biết một cách biểu diễn có thể suy ra cách biểu diễn khác, như trong các lĩnh vực
thiết kế kỹ thuật khác số lượng thiết bị xử dụng cần phải nhỏ nhất để giãm chi phí, kích
thước, tiết kiệm năng lượng và tăng độ tin cậy. Các phương pháp để đạt được sự thực hiện
hàm Boole một cách đơn giản nhất còn phụ thuộc vào nhiều yếu tố.
Một cách đo độ phức tạp của hàm Boole là đếm số lượng "literal" tức số lượng chữ
có trong biểu thức Boole, literal sẻ xác định lượng dây nối và số lượng đầu vào của mạch
vì vậy cần phải giãm số lượng literal.
Một vấn đề khác là số lượng cổng cần thiết chính điều này quyết định kích thước của
mạch, một thiết kế đơn giản nhất là dùng ít cổng nhất chứ không phải ít literal.
Yếu tố thứ ba là số mức logic, giãm số mức logic sẻ làm giãm thời gian trể vì tín
hiệu đi qua ít cổng hơn nhưng nếu chỉ chú ý đến thời gian thì có thể lại làm cho số lượng
cổng tăng lên.
Trong phần này trình bày cách thiết kế một hệ tổ hợp để thực hiện mạch logic hai
mức, cách dùng các vi mạch có trong thực tế cho đến cách tổng hợp logic nhiều mức để
đạt được số lượng cổng cần dùng là ít nhất.
II. Quy trình thiết kế
Quy trình thiết kế thường được thực hiện theo một số bước sau đây:
- Phân tích yêu cầu và xác định tín hiệu vào - ra.
- Xác định bảng trạng thái và bảng sự thật.
- Đơn giản hóa.
- Viết phương trình tổng của tích hoặc tích của tổng.
- Vẽ sơ đồ AND - OR hoặc OR - AND.
- Biến đổi sang sơ đồ vi mạch thông dụng.
- Chọn linh kiện và ráp mạch.
Ví dụ:
Thiết kế mạch logic điều khiển một bồn chứa nước với sơ đồ công nghệ và yêu cầu
như sau:
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 2
- Bơm P chỉ chạy khi giếng đầy nước ( cãm biến D tác động) và bồn chưa đầy (cãm
biến A không tác động).
- Van V bình thường luôn luôn mở để sẳn sàng cung cấp nước và chỉ đóng lại khi
giếng hết nước và đồng thời bồn cũng cạn nước (cãm biến C không tác động) để giử lại
một lượng nước an toàn.
- Còi hoặc đèn báo động sáng khi hệ thống bị sự cố (A tác động nhưng C lại không
tác động).
Giải
1. Phân tích yêu cầu và xác định tín hiệu vào - ra
Từ sơ đồ công nghệ và yêu cầu điều khiển suy ra tín hiệu vào là: cãm biến A, C và
D (để đơn giản xem như không có cãm biến B) và tín hiệu ra gồm: bơm P, van V và đèn
BD
2. Xác định bảng trạng thái và bảng sự thật.
Bảng trạng thái là một dạng diển tả khác của yêu cầu điều khiển nội dung của bảng
sẽ cho biết quan hệ giữa tín hiệu ra với tín hiệu vào.
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 3
A C D P V BD
K.taùc ñoäng K.taùc ñoäng K.taùc ñoäng Döøng Ñoùng Toái
K.taùc ñoäng K.taùc ñoäng Taùc ñoäng Chaïy Môû Toái
K.taùc ñoäng Taùc ñoäng K.taùc ñoäng Döøng Môû Toái
K.taùc ñoäng Taùc ñoäng Taùc ñoäng Chaïy Môû Toái
Taùc ñoäng K.taùc ñoäng K.taùc ñoäng Döøng Môû Saùng
Taùc ñoäng K.taùc ñoäng Taùc ñoäng Döøng Môû Saùng
Taùc ñoäng Taùc ñoäng K.taùc ñoäng Döøng Môû Toái
Taùc ñoäng Taùc ñoäng Taùc ñoäng Döøng Môû Toái
Bảng sự thật là bảng trạng thái khi thay vào đó các giá trị logic tương ứng 0 và 1. Do
đó từ một bảng trạng thái có thể dẫn đến nhiếu bảng sự thật khác nhau tùy theo hệ thống
thực tế. Trong trường hợp này có thể quy định như sau:
Với các cãm biến: Tác động tương đương với 1 và không tác động là 0
Bơm P chạy là 1 và dừng là 0.
Van đóng là 1 và mở là 0.
Đèn BD sáng là 1 và tối l.à 0.
Suy ra bảng sự thật như sau.
Hình 1.3 Bảng sự thật
3. Đơn giản hóa
Quá trình đơn giản có thể thực hiện bằng bảng Karnaugh hoặc đại số logic, bảng
Karnaugh là một phương pháp đồ thị, trực quan , dể hiểu và thường được áp dụng trong
trường hợp số lượng ngỏ vào không nhiều lắm.
Hình 1.4 Bảng Karnaugh của hàm P
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 4
4/ Viết phương trình tổng của tích hoặc tích của tổng
Phương trình đơn giản của hàm P: P = D A ABC ABC ABC ABC
Phương trình đơn giản của hàm BD: BD = AC
Riêng hàm V chỉ có một trường hợp bằng 1 nên không cần đơn giản
V = D AC
5/ Vẽ sơ đồ AND - OR hoặc OR - AND
Hình 1.6 Sơ đồ mạch dạng AND - OR
Số vi mạch cần dùng để thực hiện sơ đồ AND - OR
7404 - 6 đảo
7408 - 4 AND 2 input
7411 - 3 AND 3 input
6/ Biến đổi sang sơ đồ vi mạch thông dụng
Trong công nghệ vi mạch việc thực hiện bằng các cổng NAND và NOR là hiệu
quả hơn. Trong thực tế, các cổng AND và OR được thay thế bằng các cổng NAND và
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 5
NOR với một bộ đảo được đặt thêm ở phía sau. Ngoài ra một hàm logic bất kỳ gồm có
AND, OR và NOT có thể được thực hiện bằng cách chỉ dùng các cổng NAND hoăc NOR.
Sự chuyển đổi này dựa trên định lý De Morgan
AB A B .A B AB
Hình 1.7 Kết quả của định lý De Morgan
Một cổng AND tương đương một cổng NOR với tất cả các ngỏ vào đảo, và một
cổng OR tương đương một cổng NAND với tất cả các ngỏ vào đảo. Từ những nguyên tắc
vừa trình bày sơ đồ hai mức logic AND - OR được chuyển thành dạng NOR - NOR như
sau:
Hình 1.8 Sơ đồ mạch dạng NOR
Số vi mạch cần dùng
7402 - 4 NOR 2 input
7427 - 3 NOR 3 input
III. Vi mạch phức hợp
Như đã biết, mạch logic nhiều mức có thể được thực hiện bằng cách ghép các cổng
rời, trong công nghệ TTL cũng như CMOS có chế tạo sẳn một số vi mạch nhiều mức logic
đơn giản , đó là các cổng phức hợp AOI (AND - OR - INVERT) hoặc OAI (OR - AND -
INVERT) nhiều đầu vào
Một khối AOI là một mạch logic ba mức bao gồm các cổng AND ở mức thứ nhất,
một cổng OR ở mức thứ hai và một cổng đảo ở đầu ra. Tương tự một khối OAI gồm các
cổng OR ở mức thứ nhất, một cổng AND ở mức thứ hai và một cổng đảo ở đầu ra. Tóm lại
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 6
nhiều cổng rời rạc được tích hợp lại thành một cổng phức hợp được nối dây sẳn ở bên
trong
Hình 1.9 Khối AOI 2 ngăn 2 đầu vào
Trong hình 1.9 trình bày một cổng AOI hai ngăn (một cổng AND gọi là một ngăn)
hai đầu vào (mỗi cổng AND có 2 ngỏ vào). Sớ lượng năn bằng với số lượng đầu vào của
cổng OR
Ví dụ:
Thực hiện hàm XOR bằng khối AOI
Phương trình cùa hàm XOR: A B AB AB
Nếu dùng các cổng rời thì phải cần 2 cổng AND 2 đầu vào, một cổng OR 2 đầu vào
và 2 cổng đảo. Để thực hiện bằng cổng AOI chỉ cần tìm bù của hàm XOR dưới dâng tổng
các tích
A B AB AB
Sau đó đưa A và B vào một ngăn của AOI, A, B vào ngăn thứ hai, cổng đảo ở ngỏ
ra của AOI sẽ trả về giá trị đúng của hàm XOR
Tín hiệu ra
- Z: Tín hiệu điều khiển thang chạy lên
- Y: Tín hiệu điều khiển thanh chạy xuống
Tín hiệu trung gian
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 7
Với mục đích giãm bớt số biến số trong khi xây dựng và biến đổi các hàm logic cần
thiết phải tạo ra thêm các biến trung gian, các biến này là kết quả tổ hợp từ các tín hiệu vào
ban đầu thỏa mản được yêu cầu hoạt động của thang máy.
- c: Tín hiệu cho phép thang máy hoạt động
c = b1.b2.b3...b6.b7.b8.b9
- e: Lệnh cho thang máy đi lên.
e = a3 + a2.d1
- f: Lệnh cho thang máy đi xuống.
f = a1 + a2.d3
- g: Tín hiệu báo hoàn thành mệnh lệnh.
g = a1,d1 + a2.d2 + a3.d3
Như vậy từ 15 biến ban đầu nay thu gọn lại chỉ còn 4 biến mới tạo thành 16 tồ hợp
biến (2n), ngoài ra thang máy còn có 3 trạng thái: Dừng, lên và xuống.
Bước tiếp theo là lập bảng quan hệ biến số - trạng thái.
Nhận xét:
- Thang máy luôn dừng khi không có c và có g.
- Thang máy không thay đổi trạng thái khi có c, không g và đồng thời có e và f hoặc
không có cả e và f.
Trong các thiết bị logic nhiều đầu ra đôi khi không cho phép nhiều đầu ra cùng tồn tại
song song mà chỉ một mà thôi. Do đó, cần phải dùng tín hiệu ra hồi tiếp trở về ngỏ vào,
trong trường hợp thang máy để tránh trường hợp này có thể chọn 2 ngỏ ra z và y làm tín
hiệu hồi tiếp hình vẽ sau trình bày quan hệ giữa các tín hiệu này với trạng thái của thang
máy.
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 8
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 9
IV. Sử dụng hàm XOR và XNOR
Trong nhiều tình huống thiết kế có thể xử dụng phương pháp đơn giản hóa các hàm
logic bàng toán tữ XOR và XNOR vì các hàm này được xủ dụng rộng rải nên chúng được
chế tạo sẳn trong công nghệ vi mạch, phần dưới đây sẽ trình bày phương pháp nhận dạng
hàm XOR và XNOR trên bìa Karnaugh.
Trong phương pháp tối thiểu hóa AND-OR và OR-AND, các số 0 hoặc 1 cạnh nhau
theo chiều dọc và chiều ngang được dán lại với nhau, trong trường hợp tối thiểu XOR và
XNOR các ô đối diện nhau theo phương chéo hoặc các nhóm ô đối xứng nhau qua một
giao điễm của các đường kẻ trong bãng được gọi là Diagonal và các ô hay nhóm ô đối
xứng nhau qua một hàng hoặc cột được gọi là Offset như trình bày ở hình sau đây:
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 10
Hình 1.16 Bảng Karnaugh với diagonal và offset
Hình 1.16a là một bảng Karnaugh 3 biến A, B, C trong đó diagonal 1 có điểm đối xứng là
M, diagonal 2 có điểm đối xứng là N, offset 1 có cột đối xứng là AB, suy ra các biểu thức
rút gọn XOR và XNOR như sau:
offset 1 = ( ) ( )CAB CAB C AB AB C A B
offset 2 = ( ) ( )CAB CAB C AB AB C A B
diagonal 1 = ( ) ( )CAB CAB A CB CB A C B
diagonal 2 = ( ) ( )CAB CAB A CB CB A C B
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 11
Hình 1.16b là bảng Karnaugh 4 biến A, B, C, D trong đó diagonal 1 tạo nên bởi 2 nhóm
đối xứng nhau qua điểm I và offset 1 tạo bởi hai nhóm đối xứng nhau qua hàng CD, kết
quả đơn giản như sau:
Diagonal 1 = ( ) ( )CAB CAB A CB CB A C B
Offset 1 = ( ) ( )CDA CDA A CD CD A C D
Ví dụ:
Dùng hàm XOR và XNOR đơn giản hóa hàm Y cho trong bảng Karnaugh sau đây
Theo cách đơn giản thông thường ta có kết quả
Y1 = C AB CDA CDA CAB CDAB CDAB
Theo phương pháp XOR và XNOR ta có
Diagonal 1 = ( ) ( )CAB CAB B CA CA B C A
Diagonal 2 = ( ) ( )CDA CDA D CA CA D C A
Offset 1 = ( ) ( )CDAB CDAB DB CA CA DB C A
Suy ra: Y2 = Diagonal 1+ Diagonal 2 + Offset
Hình 1.18 Hai cách thực hiện hàm Y
V. Hazard - Glitch trong mạch tổ hợp
Glitch là một xung không mong muốn xuất hiện tại ngỏ ra của mạch tổ hợp, mạch
có thể tạo ra glitch gọi là mạch có hiện tượng hazard (may rủi), cũng có trường hợp mạch
có khả năng hazard nhưng lại không tạo ra glitch, trong phần dưới đây sẽ trình bày phương
pháp thiết kế mạch không có hazard (hazard-free circuit)
1. Khái niệm về Hazard
Các Hazard gây rắc rối cho hệ thống trong 2 trường hợp
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 12
- Trạng thái kugic ngỏ ra không ổn định, có thể khắc phục bằng cách kéo dài thời
gian đáp ứng của hệ V.D: Giãm tần số xung đồng hồ
- Ngỏ ra của mạch có hazard được nối đến các ngỏ vào không đồng bộ của mạch tiếp
theo sau và sẻ làm các mạch này hoạt động không chính xác
Các phương pháp loại bỏ khả năng hazard đều giả thiết rằng các xung glitch ở ngỏ ra
là do sự thay đổi của 1 bít ở đầu vào
Các loại hazard khác nhau được trình bài trong hình. Một hazard tĩnh xuất hiện khi
đầu ra trải qua một sự chuyển tiếp nhất thời mặc đáng lẽ ra nó không được thay đổi:
Hazard tĩnh loại 1 làm đầu ra giãm xuống 0 trong một thời gian ngắn (xung âm) và ngược
lại hazard tĩnh loại 0 làm xuất hiện xung dương ở ngỏ ra.
Hazard động làm ngỏ ra thay đổi nhiều lần trong khi đúng ra nó chỉ được phép
chuyển một lần từ 0 lên 1 hoặc từ 1 xuống 0, và sẻ tạo ra các xung glitch trong mạch logic
đa mức là loại mạch có nhiều đường dẫn từ đầu vào đến đầu ra vối các thời gian truyền
khác nhau, rất khó loại trừ hazard động, phương pháp giải quyết tốt nhất là chuyển mạch
đa mức có hazard động thành mạch logic 2 mức không có hazard.
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 13
Hình 1.19 Các loại Hazard
2. Phát hiện và loại trừ hazard trong mạch logic 2 mức
Khảo sát hàm sau đây
F (A,B,C,D) = ∑ (1,3,5,7,8,9,12,13)
Hình 1.20 Bảng Karnaugh của hàm F
Xét trường hợp khi đầu vào ABCD = 1100 chuyển sang 1101. Từ sơ đồ cho thấy
khi đầu vào bằng 1100, đầu ra của cổng G1 bằng 1 trong khi đầu ra của cổng G2 bằng 0.
Do đó, đầu ra của G3 bằng 1.
Khi đầu vào chuyển sang 1101 thì đầu ra của các cổng vẩn giữ nguyên. Bây giờ
xem sự thay đổi của ngỏ vào từ 1101 sang 0101 lúc này A chuyển xuống 0 và A chuyển
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 14
lên 1 (nhưng phải qua một thời gian trể của cổng đảo) do đó sẽ có một khoảng thời gian
ngắn cả A và A cùng bằng 0, ngỏ ra của G1 và G3 cùng bằng 0 và F cũng bằng 0, sau đó
khi A lên đến mức 1 thì F bằng 1 trở lại, một xung glitch đã xuất hiện ở ngỏ ra.
Từ bảng Karnaugh cho thấy khi các giá trị đầu vào thay đổi nhưng cùng nằm trong
một biểu thức đơn giản thì không thể xảy ra glitch, nhưng nếu chuyển từ biểu thức đơn
giản này sang biểu thức đơn giản khác thì có thể xảy ra glitch. Tuy nhiên, tốc độ G1 chậm
hơn G3 nhiều thì sẽ không xảy ra glitch ở ngỏ ra F nhưng hazard thì luôn luôn tồn tại.
Phương pháp khắc phục là thêm vào các biểu thức đơn giản sao cho bao phủ mọi thay
đổi đơn bít ở đầu vào, trong ví dụ trên nếu thêm vào phương trình hàm F biểu thức CDB
thì F sẽ luôn bằng 1 bất chấp sự thay đổi của A như đã nói ở trên.
Từ bảng Karnaugh ở hình 1.20 viết lại phương trình của hàm F dưới dạng tích các
tổng.
F = ( )( )D A C A
Dể dàng nhận thấy rằng trong mạch tồn tại hazard tĩnh loại 0 khi đầu vào thay đổi từ
1110 sang 0110, để loại trừ hazard này phải thêm vào số hạng (C + D)B và phương trình F
trở thành.
F = ( )( )D A C A (C + D)B
Như vậy, sự tồn tại Hazard 1 của hàm F sẻ tương ứng với sự tồn tại hazard 0 của hàm
F.
3. Hazard động
Là các biến thiên xảy ra nhiều lần ở ngỏ ra trong một quá trình thay đổi đầu vào,
nguyên nhân là do tồn tại nhiều đường tìn hiệu trong mạng đa mức mà mỗi đường có độ
trể khác nhau
Hình 1.22 Mạch có Hazard động
Từ mạch điện kế bên cho thấy có 3 đường khác nhau từ B và B đến đầu ra. Giả sử
ABC = 000 thì F =1 và sau đó ABC = 010 tương ứng F = 0, khi ABC = 000 lúc này G1 =
0, G2 = 1và G3 = 1, G4 = 1. Bây giờ B chuyển từ 0 lên 1 với tốc độ các cổng như trong
hình vẽ, quá trình biến đổi trong mạch được mô tả như sau:
G2 chuyển từ 1 sang 0, tiếp theo G3 xuống 0 và G5 cũng xuống 0.
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 15
Tiếp theo đó G1 lên 1 làm G3 lên 1 và G5 cũng lên 1, lúc này đầu ra đã chuyển từ 1
xuống 0 rồi lên 1. Cuối cùng G4 chuyển từ 1 xuống 0 làm G5 xuống giá trị cuối cùng là 0.
Như vậy đầu ra đã biến đổi từ 1 xuống 0, lên 1 rồi lại xuống 0.
VI. Các vi mạch thường dùng trong hệ tổ hợp
1. Bộ dồn kênh (multiplex)
Còn gọi là bộ đa hợp hoặc chọn tín hiệu (selector) có nhiệm vụ chọn một trong số các
tín hiệu đầu vào để đưa tới một đầu ra duy nhất dưới sự điều khiển của các ngỏ vào điều
khiển. Ngược lại bộ phân kênh (distributor) hoặc giải đa hợp (demultiplex) sẽ dẫn tín hiệu
từ một đầu vào duy nhất đến một trong các ngỏ ra dưới sự điều khiển của các ngỏ vào điều
khiển.
Như vậy, bộ dồn kênh là một mạch logic tổ hợp bao gồm 2n đầu vào dữ liệu, n ngỏ
vào điều khiển và một đầu ra dữ liệu, giá trị nhị phân của đầu vào điều khiển là địa chỉ của
đầu vào dữ liệu.
Từ bảng sự thật suy ra phương trình Boole tương ứng:
Z = 1 2AI AI
Nếu A = 0 thì I0 được chọn và A = 1 thì I1 được chọn, bộ dồn kênh như trên gọi là
bộ dồn kênh 2:1
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 16
các bộ dồn kênh được mô tả bằng số lượng đầu vào dữ liệu vì từ đó có thể suy ra số
lượng tín hiệu điều khiển, từ bộ dồn kênh 2 đầu vào suy ra phương trình các bộ dồn 4:1 và
8:1 như sau:
Z = 1 2 3 4BAI BAI BAI BAI
Z =
1 2 3 4 5 6 7 8CBAI CBAI CBAI CBAI CBAI CBAI CBAI CBAI
Dạng tổng quát minterm của bộ dồn kênh
Thiết kế bộ dồn kênh
Sơ đồ bộ dồn kênh dùng các cổng logic được suy ra từ các phương trình ở phần trên,
sau đây là sơ đồ bộ dồn kênh 4 đầu vào
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 17
Hình 1.25 Bộ dồn kênh dùng cổng logic
Mạch dùng 4 cổng AND 3 đầu vào, một cổng OR 2 đầu vào và 2 cổng đảo, tổng cộng
là 7 cổng.
Có thể xây dựng một bộ dồn N:1 từ nhiều bộ dồn với số đầu vào ít hơn N, hình vẽ
sau đây trình bày bộ dồn 8:1 từ hai bộ 4:1 và một bộ 2:1. Lớp thứ nhất chọn một đầu vào
trong số các đầu vào từ I0 ...I3 và mộ đầu từ I4...I7 dùng 2 tín hiệu điều khiển B, C, lớp
thứ hai chọn một trong hai nhóm dựa trên tín hiệu A. Nhưng cũng có thể thực hiện bộ dồn
8:1 từ 4 bộ dồn 2:1 và mộ bộ dồn 4:1
Xử dụng bộ dồn kênh như một khối logic
Ngoài chức năng chọn tín hiệu như đã biết, thực tế một bộ dồn là một kiểu thực hiện
bảng sự thật trực tiếp bằng phần cứng.
Xét hàm F (A, B, C) = m0 + m2 + m6 + m7 có thể thực hiện hàm này bằng bộ dồn
8:1 như hình vẻ sau đây.
Các biến vào A, B, C được nối đến các đầu vào điều khiển của bộ chọn, ngỏ vào Ii
được đặt 1 tương ứng với minterm của hàm F, tất cả các đầu vào dữ liệu khác được gán
mức 0. Trong ví dụ này I0, I2, I6 và I7 được gán mức 1 còn I1, I3, I4, I5 được gán mức 0.
Tuy nhiên, có thể xử dụng bộ dồn đơn giản hơn để thực hiện hàm này, hai biến A, B
đưa vào các đầu vào điều khiển và các đầu vào dữ liệu của bộ dồn nối với 0, 1, C và C
Xem bảng sự thật sau đây:
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 18
Hình 1.26 Biểu diễn F như hàm của 0, 1 và C
F = ABC ABC ABC ABC
Và cuối cùng là sơ đồ dùng bộ dồn 4:1
Hình 1. 28 Các giá trị có thể của hàm F
Trong trường hợp tổng quát, một hàm bất kỳ có thể được thực hiện bằng cách chọn (n
- 1) biến vào làm tín hiệu điều khiển cho một bộ dồn kênh có 2 n-1 đầu vào dữ liệu, mỗi
giá trị tổ hợp của (n - 1) biến ứng với hai hàng trong bảng sự thật, giá trị của hàm trong hai
hàng này có thể là các trị số cho trong hình 1...Nếu giá trị hàm trong hai hàng đều bằng 0
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 19
hoặc 1 thì đầu vào tương ứng sẽ là 0 hoặc 1 nếu không thì đầu vào sẽ được nối với biến n
hoặc đảo của n.
Các bộ dồn kênh họ TTL
Cấu tạo các bộ dồn kênh trong thực tế có thêm một hay nhiều tín hiệu điều khiển khác mục
đích cho phép thiết bị hoạt động. Trong hình vẽ sau đây trình bày bộ dồn TTL 74157 gồm
4 bộ 2:1 ngỏ ra tác động mức cao và 74158 gồm 4 bộ 2:1 ngỏ ra tác động mức thấp.
Hình 1.29 Sơ đồ và bảng sự thật bộ dồn kênh TTL 157 và 158
2.. Bộ phân kênh (demultiplex)
Bộ phân kênh cho phép tín hiệu đầu vào của nó dẫn đến một trong các ngỏ ra, mỗi
ngỏ ra được phân biệt bởi một mã nhị phân duy nhất, do đó bộ phân kênh còn có chức
năng giải mã. VD: Một bộ giải mả 1:2 gồm 2 đầu vào: Đầu vào
dữ ABC D ABC D ABCD liệu G và đầu vào điều khiển S và 2 đầu ra Q0 và Q1, phương
trình các đầu ra như sau;
Q0 = GS Q1 = G.S
Nếu G = 0 thì 2 đầu ra bằng 0, nếu G = 1 thì thì 1 trong 2 đầu ra sẽ bằng 1 tùy thuộc
vào giá trị của S, một bộ phân kênh hay giải mã thường được gọi theo số lượng đầu vào
điều khiển và số lượng đầu ra V.D: 1:2; 2:4; hoặc 3:8
Cách thực hiện
Hình vẽ sau trình bày mạch giải mã 1:2 bằng các cổng logic, hai tín hiệu vào là tín
hiệu cho phép G và tín hiệu chọn. Khi tín hiệu chọn là 0 thì tín hiệu tại G sẻ được dẫn đến
ngỏ ra 1và lúc này ngỏ ra 2 ở mức 0, ngược lại. khi ngỏ chọn ở mức 1 thì G được dẫn đến
ngỏ ra 2 và lúc này ngỏ ra 1 ở mức 0, nếu G = 0 thỉ cả 2 ngỏ ra đều bằng 0, bộ giải mã này
có tín hiệu cho phép tác động ở mức 1, hình 1.30 trình bày mạch giải mã có tín hiệu cho
phép G tác động ở mức 0.
Hình 1.30 Mạch giải mả 1:2
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 20
Hình 1.31 Mạch giải mả 2:4 dùng cổng AND và NOR
Xử dụng bộ phân kênh như một khối logic
Một bộ phân kênh có thể xem như một bộ tạo các tích đầy đủ (minterm), hình 1.32
vẽ sơ đồ khối của một bộ giải mã 3:8 có 3 tín hiệu điều khiển là A, B, C, khi đó mỗi đầu ra
của bộ giải mã sẽ tương ứng với một minterm của 3 biến A, B, C. Do đó, một bộ giải mã
có thể thực hiện một hàm logic bất kỳ dưới dạng tổng các tích, ví dụ hàm sau đây:
F1 = ABC D ABC D ABCD
F2 = ABCD ABC
F3 = ABC D
Chuyển các hàm về dạng tích các tổng chuẩn
F1 =
( )( )( )ABCD ABCD ABCD A B C D A B C D A B C D
F2 = ( )( )ABCD ABC A B C D A B C
F3 = ( )ABCD A B C D
Hình 1.33 là sơ đồ thực hiện dùng bộ giải mã
Hình 1.32 Bộ giải mả 3:8
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 21
Hình 1.33 Thực hiện hàm logic 4 biến
Các bộ phân kênh họ TTL
Hình 1.34 giới thiệu hai bộ giải mã họ TTL đó là 74139 gồm 2 bộ giải mã 2:4 và
74138 là bộ giải mã 3:8, trong 74139 ngỏ vào G và các ngỏ ra tác động mức thấp.
74138 có 3 đầu vào cho phép G1, G2A và G2B và 3 ngỏ chọn tín hiệu A, B, C, bảng
sự thật của 2 vi mạch này được trình bày trong hình 1.34.
Trong thực tế có thể kết hợp các bộ phân kênh chuẩn để tạo nên các bộ phân kênh lớn
hơn và kể cả bộ dồn kênh như trong hình 1.35 cho thấy hai cách tạo nên bộ dồn kênh 32:1
và trong hình 1.36 là bộ giải mã 5:32 được tạo nên từ một bộ giải mã 2:4 và 4 bộ giải mã
3:8:
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 22
Hình 1.34 Bộ giải mã TTL 138 và 139
VII. Vi mạch số lập trình - PLD (programmable logic device)
Để giãm được đến mức tối thiểu số lượng linh kiện cần dùng, một yêu cầu đặt ra là
phải tìm được một khối logic có thể xử dụng cho nhiều thiết kế khác nhau, ví dụ các khối
AOI nhưng cũng không giãm đáng kể số lượng thiết bị trừ khi có được một khối logic
chứa hàng trăm cổng nhưng cấu tạo của khối này phải như thế nào ?
Một giải pháp hợp lý là sắp xếp các cổng AND và OR theo một cấu trúc mảng được
tổng quát hóa mà các điểm nối giữa chúng với nhau có thể lập trình để thực hiện một hàm
xác định. Những khối logic đa năng như vậy là một trong các họ vi mạch số lập trình có
tên gọi riêng là PLA (programmable logic array) - mảng logic lập trình.
1. PLA
Hình 1.37 trình bày sơ đồ khối của một mảng PLA gồm có nhiều đầu vào và nhiều
đầu ra, được tổ chức thành các mảng con AND và mảng con OR. Mảng con AND sẻ
chuyển các đầu vào thành các tích số tương ứng với các điểm nối được lập trình, mảng con
OR sẻ cộng các tích số này với nhau để tạo ra biểu thức dạng tổng các tích của hàm.
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 23
Một khối PLA có thể thực hiện một tập hợp các hàm khá phức tạp. Độ phức tạp phụ
thuộc vào số lượng đầu vào, số lượng các tích số (số lượng các cổng AND) và số lượng
đầu ra (số lượng các cổng OR) mà PLA có thể cung cấp.
Ví dụ một FPLA công nghệ TTL có thể có 16 đầu vào, 48 tích số và 8 đầu ra được
chế tạo gọn trong một vỏ 24 chân dữ liệu. Nó tương đương với 48 cổng AND 16 đầu vào
và 8 cổng OR 48 đầu vào.
Ví dụ thưc hiện hàm Boole sau đây: ,C A CA
F0 = A BC F2 = AB BC
F1 = A.C + A.B F3 = A BC
Có thể mô tả bằng tập hợp các biến A, B, C những chữ này tương đương với số đầu
vào của mảng AND, các tích số , , , ,AC A BC BC AB và các hàm F0, F1, F2 và F3. Các
đầu ra của mảng AND là đầu vào của mảng OR và các đầu ra của mảng OR kà các hàm,
để thực hiện các hàm này phải cần một PLA có ít nhất 3 đầu vào, 5 tích số và 4 đầu ra.
Một cách tiện lợi để mô tả các hàm là dùng ma trận đặc tính, một biến hóa của bảng
sự thật được vẽ trong hình 1.38, bảng mô tả các đầu vào nào phải nối với cổng AND để tạo
nên tích số tương ứng, (1 = biến không bù; 0 = biến bù; - = không nối) và những tích số
nào phải được OR với nhau để tảo thành các đầu ra cuối cùng (1 = nối; 0 = không nối).
Các hàng xác định các tích số, các cột biểu diễn các đầu vào và đầu ra. Một tích số có thể
tham gia trong nhiều hàm nếu trong hàng của nó có nhiều số 1. Trong hình 1.38 dể dàng
nhận thấy các tích số , ,A BC AB được dùng chung cho nhiều hàm.
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 24
Hình 1.38 Ma trận đặc tính PLA
Hình 1.39 Mảng PLA trước khi lập trình
Về mặt cấu tạo phần cứng của mảng PLA thì ở giữa cổng và các đầu vào có đặt các
cầu chì có thể làm đứt bằng cách cho dòng điện lớn chạy qua, phần mềm lập trình sẽ phân
tích hàm Boole để xác định cầu chì nào phải phá hỏng và cầu chì nào cần để lại.
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 25
Hình 1.40 Mảng PLA sau khi lập trình
Hình 1.41 trình bày ký hiệu thường dùng để biểu diễn mạng PLA, các dây nối đơn đi
vào AND và OR tượng trưng cho các đầu vào, các dấu X cho biết các cầu chì đang ở trạng
thái nối
Hình 1.41 Ký hiệu PLA 4 đầu vào, 4 tích số và 4 đầu ra
2.. PAL (programmable array logic)
Trong hình 1.41 cho thấy cả 2 mảng AND và OR đều có thể thay đổi theo yêu cầu
của người xử dụng. Nhưng không phải tất cả các mảng logic lập trình đều cho phép lập
trình đầy đủ như PLA ví dụ họ PAL gồm các mảng AND lập trình còn các điểm nối giữa
các tích số với ngỏ vào cổng OR đã được xác định trước, số lượng các tích số vào một
cổng OR thường là 2, 4, 8, 16...
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 26
Có một sự bù trừ trong các mảng PAL giữa độ phức tạp của các hàm về số lượng
tíchsố trên một cổng OR với số lượng các hàm độc lập mà mảng có thể thực hiện> Cổng
OR có fan - in càng cao thì PAL càng ít đầu ra.
Ví dụ một họ PAL có thể có 3 dạng: Mỗi dạng đều có 16 đầu vào, 16 tích số nhưng
khác nhau về tổ chức của mảng OR: 4 cổng OR mỗi cổng 4 đầu vào, 2 cổng OR mỗi cổng
8 đầu vào và 1 cổng OR 16 đầu vào còn mảng AND thì vẩn hoàn toàn có thể lập trình.
Hình 1.42 trình bày sơ đồ mảng PAL có 4 đầu vào, 4 tích số và 2 đầu ra và mảng OR đã
được định vị 2 tích số mỗi cổng.
Hình 1.42 Mảng PAL 4 đầu vào, 4 tích số và 2 đầu ra
Điểm khác nhau cơ bản giữa PLA với PAL là PLA có thể chia xẻ các tích số chung
cho nhiều đầu ra còn PAL thì không thể được. Vì vậy nên dùng PLA khi cần thực hiện các
hàm có xử dụng chung tích số.
Mặt khác về mặt tốc độ PLA chậm hơn PAL do có nhiều tiếp gíáp lập trình, các tiếp
giáp này được cấu tạo từ các cầu chì có trở kháng cao hơn các tiếp giáp đã được định vị
Do đó, tín hiệu đi qua hai mảng tiếp giáp lập trình sẽ bị trể nhiều hơn so với khi đi qua một
tiếp giáp lập trình như trong PAL.
3. Ví dụ
Thiết kế bộ chuyển đổi mã BCD bít sang mã Gray 4 bít
Mạch có 4 bít BCD ở ngỏ vào là ABCD và 4 bít gray ở ngỏ ra WXYZ
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 27
Hình 1.43 Bảng sự thật bộ chuyển mã BCD – Gray
Hình 1.44 bảng Karnaugh các hàm W, X, Y, Z
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 28
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 29
Hình 1.45 Thực hiện bộ chuyển mả bằng PAL
Vì tập hợp các hàm không có tích số nào chung để chia xẻ nên thích hợp thực hiện
bằng mảng PAL như trình bày trong hình 1.24 gồm 4 cổng OR 4 đầu vào, trong hình còn
cho thấy có nhiều cổng AND không dùng nếu dùng PLA thì sẻ đơn giản hơn nhưng chậm
hơn.
Với công nghệ PLD cho phép thực hiện các hàm chỉ cần một vi mạch duy nhất, với ví
dụ trên nếu dùng các cổng vi mạch rời thì kết quả như trình bày ở hình 1.46 sau đây
Hình 1.46 Bộ chuyển mã dùng vi mạch rời
Trong hình 1.46 cho thấy phải cần đến 15 cổng lấy từ 5 IC khác nhau. Như vậy là
PLD đã rất hiệu quả trong yêu cầu giãm số lượng linh kiện.
Ví dụ 2: Thiết kế bộ so sánh 2 số nhị phân 2 bít
Đầu vào là 2 số nhị phân 2 bít AB và CD, đầu ra là 4 hàm logic được định nghĩa như
sau:
AB = CD (EQ =1) AB = CD (NE = 1)
AB CD (GT = 1)
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 30
Hình 1.47 Bảng Karnaugh của bộ so sánh 2 bít
Từ bảng Karnaugh suy ra các hàm đã được tối thiểu hóa
EQ = ABC D ABCD ABC D ABCD
NE = CA DB DB AC
LT = C A ABD DC B
GT = CA CDB DB DAB
Các hàm xử dụng 14 tích số trong đó có 2 tích số ,C A CA được dùng 2 lần nên thực
hiện sơ đồ này bằng mảng PLA là thích hợp. Một PLA hay PAL có thể thay thế đến hàng
vài chục cổng logic rời là rất bình thường, đây là cách giãm linh kiện rất hiệu quả. Do đó,
các nhà thiết kế hiện nay rất thường áp dụng khi thiết kế các hệ tổ hợp.
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 31
Hình 1.48 Sơ đồ bộ so sánh 2 bít dùng PLA
Bài giảng Vi mạch số
Biên soạn Ngô Văn Bình
Trang 32
8. Bài tập
1. Thiết kế mạch cảnh báo nhiệt độ cho bồn Xử lý hóa chất. Nhiệt độ của bồn được theo
dõi và kiểm tra bằng 3 cảm biến đặt ở 3 vị trí khác nhau trên bồn. Nhiệt độ của bồn được
cảnh báo bằng 2 đèn led: led xanh và led đỏ.
- Khi không có quá nhiệt hoặc chỉ có 1 vị trí quá nhiệt thì led xanh sáng, led đỏ tắt.
- Khi có 2 vị trí trở lên quá nhiệt thì led xanh tắt, led đỏ sáng và nhấp nháy 10Hz.
2. Thiết kế mạch logic điều khiển một bồn chứa nước với sơ đồ công nghệ và yêu cầu
như sau:
- Bơm P chỉ chạy khi giếng đầy nước ( cãm biến D tác động) và bồn chưa đầy (cãm
biến A không tác động).
- Van V bình thường luôn luôn mở để sẳn sàng cung cấp nước và chỉ đóng lại khi
giếng hết nước và đồng thời bồn cũng cạn nước (cãm biến C không tác động) để giữ lại
một lượng nước an toàn.
- Còi hoặc đèn báo động sáng khi hệ thống bị sự cố (A tác động nhưng C lại không
tác động).
3. Xử dụng hàm XOR và XNOR đơn giản biểu thức sau:
a. F = (2,3,5,6,8,9)
b. F = (2,3,5,6,8,9,12,15)
4. Xử dụng hàm XOR và XNOR đơn giản biểu thức sau:
a. F = (0,3,5,6,11,12,15) N = 4,7,8
b. F = (1,7,9,10,12,13,15) N = 3,5,8,11
5. Thế nào là hiện tượng chu kỳ và chạy đua trong mạch tuần tự không đồng bộ? hãy nêu
các trường hợp chạy đua trong mạch tuần tự không đồng bộ?
6. Thế nào là Hazard và Glitch trong mạch tổ hợp? Có mấy loại Hazard? Khi trong mạch
có Hazard sẽ xảy ra hiện tượng gì?
7. FPGA là gì? Hãy nêu cấu trúc chung của một FPGA?
8. FPGA có bao nhiêu loại? Các loại FPGA có trên thị trường thông dụng hiện nay?
9. Hãy nêu cấu trúc và các đặc tính kỹ thuật của họ vi mạch lập trình GAL16V8?
10. Hãy nêu cấu trúc và các đặc tính kỹ thuật của họ vi mạch lập trình GAL20V8?
11. Vi mạch lập trình PLA là gì? Hãy vẽ một mô hình của PLA với 3 ngõ vào, 3 ngõ ra và
3 tích số?
12. Cho biết sơ đồ khối của vi mạch lập trình PLA ? Hãy vẽ một mô hình của PLA với 2
ngõ vào, 3 ngõ ra và 4 tích số?
13. Cho biết sơ đồ khối của vi mạch lập trình PLA ? Hãy vẽ một mô hình của PLA với 2
ngõ vào, 2 ngõ ra và 5 tích số?
14. So sánh sự giống và khác nhau của 2 vi mạch lập trình PLA và PAL?
Giống nhau: PLA và PAL đều được cấu tạo từ 2 mãng AND và OR.
Các file đính kèm theo tài liệu này:
- ha_duy_hung_06_10_14_02_46_59_phan_1_6167.pdf