Upload
hoadktd
View
9.810
Download
6
Embed Size (px)
DESCRIPTION
Điện Tử Số - Thầy Lê Hải Sâm - Chương 1 - 4
Citation preview
ĐIỆN TỬ SỐ
Chương 1
Biểu diễn thông tin trong các thiết bị điện tử
Một hệ thống điển hình
• Trong các hệ thống xử lý thông tin hiện đại, ví dụ các hệ thống đo lường - điều khiển công nghiệp, việc áp dụng kỹ thuật xử lý tín hiệu số ngày càng trở nên phổ biến
• Tín hiệu cần phải được biểu diễn ở dạng số để phù hợp với trào lưu này
Tín hiệu số• Bản chất của các tín hiệu trong tự nhiên là
tương tự (analog), tức là:– Liên tục theo thời gian– Liên tục về giá trị
Tín hiệu tương tự được biểu diễn dưới dạng s(t)• Khi thực hiện xử lý tín hiệu trong các hệ thống:
– Lấy mẫu - gián đoạn theo thời gian– Lượng tử - gián đoạn theo các mức giá trị– Mã hoá - để phù hợp với tính chất của thiết bị
Tín hiệu được tạo ra sau sau ba bước trên đây được gọi là tín hiệu số (digital)
• Trong các thiết bị điện tử, tín hiệu số được mã hoá theo hệ nhị phân
Biểu diễn số tự nhiên• Hệ thập phân: là hệ đếm sử dụng các chữ số
thập phân để biểu diễn giá trị của số đếm
• Mỗi chữ số thập phân (digit) có thể nhận một trong mười giá trị khác nhau:
di= {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
• Số thập phân lớn hơn 9 được biểu diễn bởi nhiều chữ số, một số thập phân tự nhiên có n chữ số được viết và tính như sau:N = dn-1dn-2...d0 = dn-110n-1 + dn-210n-2 +...+ d0100
Ví dụ: 1978 = 1×103+9×102+7×101+8×100
= 1000 + 900 + 70 + 8
Số nhị phân tự nhiên
• Trong các thiết bị điện tử thường sử dụng các phần tử có hai trạng thái → hệ nhị phân
• Hệ nhị phân sử dụng các chữ số có thể nhận một trong hai giá trị: bi= {0, 1}
• Để biểu diễn số có giá trị lớn hơn 1 cần phải dùng nhiều chữ số nhị phân
• Một số nhị phân tự nhiên có n chữ số:N = bn-1bn-2...b0 = bn-12n-1 + bn-22n-2 + ... + b020
Ví dụ: số nhị phân 101101 được tính bằng:
1×25+0×24+1×23+1×22+0×21+1×20 = 45
Một số khái niệm
• Bit (binary digit): chữ số nhị phân, có thể nhận một trong hai giá trị 0 và 1.– MSB (Most Significant Bit): Bit ở rìa bên trái
có trọng số lớn nhất 2n-1.– LSB (Least Significant Bit): Bit ở rìa bên phải
có trọng số nhỏ nhất 20.
• Word: tập hợp các bit tạo nên một từ mã• Byte: một nhóm gồm 8 bit
– Nipple: một nửa byte (4 bit)
Biến đổi số thập phân - nhị phân• Thực hiện phép chia 2 liên tục số thập phân cần biến đổi
và sắp xếp các số dư từ phải sang trái. Ví dụ, biến đổi số thập phân 45 thành nhị phân:
Biểu diễn số nguyên (1)• Dấu và trị tuyệt đối (sign-magnitude)
– MSB là bit dấu (MSB=0: số dương, MSB=1: số âm)– n-1 bit còn lại biểu diễn giá trị tuyệt đối
Ví dụ: 0011 0110 = 54, 1011 0110 = -54
• Bù 1 (1’s complement)– số dương biểu diễn theo cách thông thường (MSB=0) – mã nhị phân của số âm có được bằng cách đảo giá trị
tất cả các bit (bù 1) của mã số dương– số đối của A chính là bù 1 của A
Ví dụ: 0011 0110 = 54, 1100 1001 = -54
Biểu diễn số nguyên (2)• Bù 2 (2’s complement)
– số dương biểu diễn theo cách thông thường– số âm đảo giá trị tất cả các bit sau đó cộng thêm 1Ví dụ: 0011 0110 = 54, 1100 1010 = -54
• Offset – dịch gốc của trục số một khoảng bằng ½ giải giá trị– giá trị thực của số nguyên n bit: I = N – 2n-1 Ví dụ: 1011 0110 = 54, 0100 1010 = -54– mã bù 2 và mã offset của một số chỉ khác nhau phần
dấu (giá trị của MSB)
So sánh các dạng số nguyên
Tính giá trị của số nguyên• Dấu và trị tuyệt đối:
I = (-1)bn-1×(bn-2×2n-2 + … + b0×20)• Bù 1:
bn-1 = 0: I = (bn-2×2n-2 + … + b0×20) = N
bn-1 = 1: I = – [(1-bn-2)×2n-2 +…+ (1-b0)×20] = N – (2n-1–1)
I = (bn-2×2n-2+ … +b0×20) – (bn-1×2n-1–bn-1)• Bù 2:
bn-1 = 0: I = (bn-2×2n-2 + … + b0×20) = N
bn-1 = 1: I = – [(1-bn-2)×2n-2 + … + (1-b0)×20 +1] = N – 2n-1
I = (bn-2×2n-2+ … +b0×20) – bn-1×2n-1
• Offset:
I = (bn-1×2n-1 + bn-2×2n-2 + … + b0×20) - 2n-1
= (bn-2×2n-2 + … + b0×20) – (1 - bn-1)×2n-1
Phép tính số học
Điều kiện tràn• Khi thực hiện cộng/trừ các số tự nhiên thì giá trị của bit carry cho
biết tính đúng đắn của kết quả• Khi cộng/trừ các số nguyên (thường mã theo quy tắc bù 2), trạng
thái tràn (overflow) cho biết tính đúng đắn của kết quả• Trạng thái tràn xảy ra nếu giá trị của carry tới và ra khỏi bit dấu của
kết quả không giống nhau
Phép nhân số nhị phân
Phép chia số nhị phân
Hệ đếm 16 (Hexadecimal)• Hệ Hexadecimal sử dụng các ký hiệu (chữ
số hexa) để biểu diễn số, mỗi chữ số có thể nhận một trong 16 giá trị khác nhauhi= {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F}
• Số lớn hơn 15 được biểu diễn bởi nhiều chữ số hexa, một số tự nhiên hexadecimal có thể được viết và tính giá trị như sau:N = hn-1hn-2…h0 = hn-1×16n-1 +hn-2×16n-2…+h0×160
Ví dụ: 1A3 = 1×162 + A×161 + 3×160 = 419
Chữ số hexadecimal
Biến đổi thập phân - hexadecimal
• Thực hiện liên tục phép chia số thập phân cần biến đổi cho 16 và sắp xếp các số dư từ phải sang trái. Ví dụ, biến đổi số thập phân 419 thành hexa
• Có thể thực hiện biến đổi:– Thập phân → nhị phân → hexadecimal– Thập phân → hexadecimal → nhị phân
Mã BCD – Binary Coded Decimal• Mỗi chữ số thập phân được mã hoá bằng 4 bit nhị phân
(0 = 0000, …, 9 = 1001)Ví dụ: 1978 →BCD: 0001 1001 0111 1000, Binary: ??
• Trong số 16 tổ hợp có thể có từ 4 bit, chỉ dùng 10 tổ hợp cho 10 giá trị thập phân, 6 tổ hợp còn lại (từ 1010 đến 1111) là không hợp lệ đối với BCD
Thập phân BCD Thập phân BCD
0 0000 8 1000
1 0001 9 1001
2 0010 10 0001 0000
3 0011 11 0001 0001
4 0100 12 0001 0010
5 0101 13 0001 0011
6 0110 14 0001 0100
7 0111 15 0001 0101
Phép tính số học với BCD• Phép tính số học được thực hiện với quy ước mặc định:
các toán hạng tham gia phép tính được mã hoá theo quy tắc nhị phân thông thường
• Nếu các toán hạng được mã hoá theo luật BCD thì có thể xuất hiện sai lệch trong kết quả
Mã Gray• Kiểu mã nhị phân mà hai giá trị cạnh nhau chỉ
sai khác nhau ở 1 bit (xem bảng mã Gray)• Mã Gray thường dùng trong các cảm biến đo di
chuyển cơ học để tránh sai số thô
Ví dụ sử dụng mã Gray
ASCII – American Standard Code for Information Interchange
ĐIỆN TỬ SỐChương 2
Đại số Boole -Các cổng logic
Quan hệ hàm trong hệ nhị phân
Các hàm logic cơ bản• Trong số 16 hàm trên thì các hàm:
Z12 = X hoặc X’ (NOT X)
Z1 = X * Y (X AND Y)
Z7 = X + Y (X OR Y)
được coi là hàm logic cơ bản• Từ ba hàm logic cơ bản này có thể tạo ra được
tất cả các mối quan hệ hàm trong hệ nhị phân• Ngoài ba hàm logic cơ bản trên đây, thì một số
hàm logic khác là NAND, NOR, XOR, XNOR cũng thường hay được sử dụng để mô tả các quan hệ logic trong thiết bị điện tử số
Các cổng logic cơ bản• Mạch điện tử thực hiện một hàm logic được gọi là cổng
logic (Logic Gate)• Tên của cổng được gọi theo tên hàm mà nó thực hiện
Các cổng thường gặp khác
Các quy tắc cơ bản
Các quy tắc áp dụng cho hàm XOR (Exclusive OR)
Phép logic với các biến có nhiều thành phần
Biểu diễn các hàm logic• Mọi hàm logic đều có thể được biểu diễn thông
qua bảng trạng thái (truth table), biểu thức logic hoặc bìa Karnaugh
• Xét hàm Y(A, B, C) lấy theo đa số của ba biến
Biểu diễn bằng biểu thức logic
Viết các biểu thức logic
• Dạng SOP được viết bằng cách liệt kê các tích (minterm) ứng với các hàng có giá trị 1 của bảng
• Dạng POS viết bằng cách liệt kê các tổng (Maxterm) ứng với các hàng có giá trị 0 của bảng
Biểu diễn bằng bìa Karnaugh
Biểu diễn hàm logic 4 biến
A B C D F(a, b, c, d)
0 0 0 0 0 0
0 0 0 1 1 1
0 0 1 0 2 0
0 0 1 1 3 1
0 1 0 0 4 0
0 1 0 1 5 1
0 1 1 0 6 0
0 1 1 1 7 1
1 0 0 0 8 0
1 0 0 1 9 1
1 0 1 0 10 0
1 0 1 1 11 0
1 1 0 0 12 1
1 1 0 1 13 0
1 1 1 0 14 0
1 1 1 1 15 0
Một số ví dụ dùng bìa K
Rút gọn hàm logic bằng bìa K• Do tính chất hai ô cạnh nhau ở một bìa K chỉ khác nhau
ở một biến, ta có thể nhóm hai ô cạnh nhau có giá trị ‘1’ trên bìa K để loại bỏ biến khác nhau đó trong số hạng tích
• Tương tự như vậy, có thể nhóm bốn ô có giá trị ‘1’ cạnh nhau để loại bỏ được hai biến
• Nhóm tám ô có giá trị ‘1’ cạnh nhau để loại bỏ được ba biến, và …
Trạng thái “don’t care”
Sử dụng trạng thái “don’t care”
Thực hiện hàm logic• Biểu diễn hàm cần thực hiện ở dạng biểu thức logic• Có thể rút gọn hàm trước khi thực hiện bằng mạch• Sử dụng các cổng logic cơ bản để thực hiện các phép
logic tương ứng (NOT, AND, OR)
ĐIỆN TỬ SỐ
Chương 3
Các họ mạch logic
Biến logic trong mạch điện tử
• Sử dụng mức điện áp tại các điểm đo làm giá trị logic
• Phần lớn các họ mạch áp dụng quy ước logic thuận:– Điện áp thấp (≈0V) biểu diễn giá trị logic ‘0’
– Điện áp cao (≈VCC) biểu diễn giá trị logic ‘1’
• Một số họ mạch sử dụng quy ước logic nghịch– Điện áp thấp (≈0V) biểu diễn giá trị logic ‘1’
– Điện áp cao (≈VCC) biểu diễn giá trị logic ‘0’
Biến logic trong mạch TTL
• Mạch logic TTL sử dụng nguồn cung cấp VCC=5V, và áp dụng quy ước logic thuận:– Ngưỡng Logic ‘1’:
VIH 2.0 V
– Ngưỡng Logic ‘0’:
VIL 0.8 V
– Giữa hai ngưỡng đó là một vùng không xác định (Undefined)
0.8 V < VU < 2.0 V
Các mức ngưỡng logic• Mức ngưỡng logic ‘1’ là VH (gồm VIH và VOH). Mức ngưỡng
logic ‘0’ là VL (gồm VIL và VOL).
• Ngưỡng logic của các họ mạch logic khác nhau thì khác nhau (ví dụ, của TTL khác của CMOS)
• Ngưỡng logic ở cửa vào và cửa ra của cùng một họ mạch logic cũng khác nhau (VIH ≠ VOH, VIL ≠ VOL).
Đặc tính truyền đạt
• Nếu điện áp vào ở vùng ngưỡng logic xác định (mức ‘0’ hoặc ‘1’) thì điện áp ra cũng sẽ ở mức ngưõng xác định
• Nếu điện áp vào ở mức không xác định (VIL<VI<VIH) thì điện áp ra cũng nằm ở vùng không xác định (VOL<VO<VOH)
Đặc trưng của cổng logic (1)• Nguồn cung cấp:
– điện áp nguồn cung cấp VCC, – dòng điện tiêu thụ từ nguồn cung cấp ICC, – công suất tiêu thụ Pd = (PL+PH)/2
• Mức ngưỡng logic: – mức cao (logic ‘1’): VIH, VOH
– mức thấp (logic ‘0’): VIL, VOL
• Dòng tín hiệu: – dòng tiêu thụ ở cửa vào IIH, IIL
– dòng cung cấp ở cửa ra IOH (source current), IOL(sink current)
• Hệ số fan-in (n)• Hệ số fan-out (N), còn gọi là khả năng tải
Đặc trưng của cổng logic (2)• Mức độ chống nhiễu
– Độ chống nhiễu ở mức thấp: ΔVL = VIL – VOL
– Độ chống nhiễu ở mức cao: ΔVH = VOH – VIH
• Tốc độ hoạt động - thể hiện qua thời gian truyền của cổng: tp = (tpHL+tpLH)/2
Họ mạch logic TTL
Một số mạch TTL khác
• Mạch TTL tiêu chuẩn thường có ký hiệu là 74xx hoặc 54xx, trong đó xx là số chỉ chức năng của mạch
• Một cổng TTL tiêu chuẩn tiêu thụ một công suất cỡ 10mW và có thời gian trễ tín hiệu cỡ 10ns.
Ký hiệu vi mạch logic
Các nhóm mạch logic TTL
Transistor MOSFET
• Transistor n-MOS dẫn dòng khi VGS>0, còn p-MOS dẫn dòng khi VGS<0.
• Các mạch logic MOS sử dụng cặp gồm một n-MOS và một p-MOS, gọi là CMOS
Mạch logic CMOS (1)
• Ở trạng thái tĩnh, mạch logic CMOS hầu như không tiêu thụ công suất, công suất tiêu thụ của mạch logic CMOS phụ thuộc tần số tín hiệu.
• Do quá trình phóng nạp điện tích ở cực GATE, các mạch logic CMOS có tốc độ chậm hơn so với mạch TTL (mỗi cổng logic CMOS có thời gian trễ tp = 20÷200ns)
Mạch logic CMOS (2)
Các thông số mạch logicMạch Pd tp Pd × tp
74xxx
74Hxxx
74Lxxx
74Sxxx
74LSxxx
74ASxxx
74ALSxx
10 mW22 -
1 -
20 -
2 -
8 -
1,2 -
10 ns 6 -
35 -
3 -
9 -
1,7 -
4 -
100 pJ
132 -
35 -
60 -
18 -
14 -
5 -
Mức ngưỡng logic (V)VIL VIH VOL VOH
74xx
74Sxx
_4xxxB
74Cxx
74HCxx
74HCTxx
0,8
0,8
1,5
1,5
1,0
0,8
2,0
2,0
3,5
3,5
3,5
2,0
0,4
0,4
0,05
0,5
0,1
0,1
2,4
2,7
4,95
4,5
4,9
4,9
Dòng tín hiệu (mA)IIL IIH IOL IOH
74xxx
74Hxxx
74Lxxx
74Sxxx
74LSxxx
_4xxxB
74Cxx
74HCxx
74HCTxx
1,6
2
0,18
2
0,36
0,001
0,001
0,001
0,001
0,04
0,05
0,01
0,05
0,02
0,001
0,001
0,001
0,001
16
20
3,6
20
8
0,5
0,4
4,0
4,0
0,4
0,5
0,2
1,0
0,4
0,5
0,4
4,0
4,0
Nối cửa ra của các mạch logic• Cửa ra của các mạch logic
có hai transistor nối theo kiểu đẩy kéo thường được gọi là cửa ra totem-pole
• Mạch logic có cửa ra kiểu totem-pole không thể nối trực tiếp với nhau được vì có thể gây xung đột
• Để có thể nối trực tiếp cửa ra của các mạch logic với nhau có thể sử dụng mạch open-collector (cực góp hở) hoặc mạch tri-state (ba trạng thái
Mạch open-collector
Mạch tri-state (ba trạng thái)
• Mạch logic ba trạng thái là mạch mà ngoài hai trạng thái logic thông thường (‘0’ và ‘1’) còn có thêm trạng thái thứ ba là trạng thái “cao trở”.
• Ở trạng thái “cao trở” cửa ra của mạch logic được thả nổi, khi đó có thể nối trực tiếp cửa ra của nhiều mạch logic với nhau mà không sợ bị xung đột.
Các loại cổng NOT
Mạch buffer (đệm) ba trạng thái• Có bốn dạng mạch buffer ba trạng thái
– E là tín hiệu điều khiển (ENABLE) để cho phép hoặc cấm cửa ra của mạch
– Tín hiệu E ở các mạch (a) và (b) có tác dụng cho phép mở cửa ra khi nó ở mức cao nên được gọi là tín hiệu vào điều khiển có mức tích cực cao (active HIGH input)
– Tương tự, tín hiệu E ở các mạch (c) và (d) được gọi là tín hiệu vào điều khiển tích cực thấp (active LOW input)
Sử dụng mạch ba trạng thái
• Có thể sử dụng cổng logic ba trạng thái để tạo các bộ đệm ba trạng thái (Bus driver) hoặc cổng truyền hai chiều ba trạng thái (Bus tranceiver). Ví dụ, các vi mạch 74244 hoặc 74245
Trigger Schmitt
• Có thể tạo đặc tính trễ (hysteresis) kiểu trigger Schmitt cho các cổng logic để lọc nhiễu
Ghép nối các mạch logic
Sử dụng Buffer và Level shifter
• Sử dụng mạch đệm (Buffer), ví dụ 4049 trong trường hợp dùng mạch CMOS để điều khiển mạch TTL
• Nếu dùng mạch TTL điều khiển mạch CMOS thì có thể sử dụng mạch dịch mức (Level Shifter), ví dụ mạch 4504
Các vi mạch số
• Mức độ tích hợp của các IC:– SSI: mạch cỡ nhỏ, <10 cổng/chip– MSI: mạch cỡ vừa, 10 ÷ 100 cổng/chip– LSI: mạch cỡ lớn, 100 ÷ 100.000 cổng/chip– VLSI: mạch cỡ rất lớn > 100.000 cổng/chip
Một số vi mạch logic TTL
ĐIỆN TỬ SỐ
Chương 4
Mạch logic tổ hợp
Mô hình mạch logic tổ hợp
• Mạch logic tổ hợp là loại mạch mà giá trị của tập biến ra ở mỗi thời điểm chỉ phụ thuộc giá trị của tập biến vào ở thời điểm đó: Y = F(X),
trong đó X = {X0, X1, …, XN-1}
Y = {Y0, Y1, …, YM-1}
• Mạch logic tổ hợp không có nhớ, không có phản hồi• Có thể tạo mạch logic tổ hợp từ các cổng cơ bản
Thiết kế mạch logic tổ hợp• Biểu thức truyền đạt của mạch logic tổ hợp có
thể viết lại như sau:y0 = f0(x0, x1, ..., xN-1)y1 = f1(x0, x1, ..., xN-1)
...yM-1 = fM-1(x0, x1, ..., xN-1)
• Thiết kế mạch logic tổ hợp:– Theo quy tắc kinh điển:
• Mô tả hàm truyền đạt• Biểu diễn và rút gọn các hàm thành phần• Tổng hợp mạch bằng các cổng logic cơ bản
– Sử dụng các mạch logic tổ hợp chế sẵn– Thiết kế bằng máy tính và các vi mạch khả trình PLD
ENCODER• Tạo mã nhị phân ở cửa ra từ những tổ hợp tín
hiệu nhất định ở cửa vào• Encoder thường có 2n lối vào và n lối ra, giá trị
mã nhị phân của n bit ra phản ánh trạng thái tín hiệu ở 2n lối vào của mạch.
Tổng hợp ENCODER
Priority Encoder • ENCODER thực tế cần có:
– Tín hiệu ra báo có hay không sự thay đổi trạng thái vào (ví dụ, READY)
– Phân cấp ưu tiên cho các lối vào
• Ví dụ Priority Encoder 74148
Vi mạch ENCODER 74148
DECODER• Mạch giải mã (Decoder)
dùng để:– Đưa dữ liệu số tới một lối ra
nhất định.– Lựa chọn thiết bị hoặc nguồn
tín hiệu cụ thể từ một tổ hợp mã vào.
• Decoder thường gồm n lối vào và 2n lối ra– Tại một thời điểm chỉ có thể có
nhiều nhất là một lối ra được chọn (activated)
– Gọi là Decoder n→2n hoặc Decoder/Selector 1 of 2n
– Ngoài n lối vào chọn, Decoder còn có một vài lối vào cho phép (Enable Input)
Tổng hợp DECODER• Phương pháp truyền thống:
– Mô tả logic hoạt động của mạch– Viết biểu thức logic của các biến ra– Tổng hợp DECODER bằng các cổng cơ bản
• Sử dụng các vi mạch DECODER chế sẵn
Vi mạch Decoder• Có nhiều vi mạch DECODER chế sẵn, ví dụ:
– 74138 (DEC 3 → 8), – 74139 (2×DEC 2 → 4), – 74154 (DEC 4 → 16), 74155, 74156 …
• Ví dụ, vi mạch DECODER 74138
Vi mạch Decoder 74138
Sử dụng Decoder (1)
Sử dụng Decoder (2)• Có thể sử dụng DECODER để tổng hợp mạch
logic tổ hợp. Ví dụ, thực hiện mạch tạo hàm:
Giải mã điều khiển hiển thị• Các phần tử hiển thị số thường dùng là LED 7 thanh, ký
hiệu là a, b, c, d, e, f, g• Hiển thị LED 7 thanh có thể sắp xếp kiểu Cathode chung
hoặc Anode chung
Logic giải mã• Mạch giải mã điều khiển hiển thị
biến đổi 4 bit mã nhị phân (hoặc BCD) ở lối vào thành cấu trúc điều khiển LED 7 thanh
• Ngoài các tín hiệu vào là mã nhị phân, mạch giải mã hiển thị còn có các lối vào điều khiển như LT (Lamp Test) bật sáng tất cả các thanh và BI (Blank Input) tắt hết tất cả các thanh
• Tuỳ theo tính chất của LED 7 thanh (AC hay CC) mà tín hiệu ra của mạch giải mã có thể tích cực ở mức cao hoặc thấp
Giải mã hiển thị 7 thanhMã số
vàoInputs BI/
RBOOutputs
LT RBI D C B A a b c d e f g
0123456789
HHHHHHHHHH
HXXXXXXXXX
0000000011
0000111100
0011001100
0101010101
HHHHHHHHHH
ONOFFONONOFFONOFFONONON
ONONONONONOFFOFFONONON
ONONOFFONONONONONONON
ONOFFONONOFFONONOFFONOFF
ONOFONOFOFOFONOFONOF
ONOFFOFFOFFONONONOFFONON
OFFOFFONONONONONOFFONON
10 (A)11 (B)12 (C)13 (D)14 (E)15 (F)
HHHHHH
XXXXXX
111111
001111
110011
010101
HHHHHH
ONOFFONOFFONON
ONOFFOFFONOFFOFF
ONONOFFONOFFOFF
OFF ONONONONOFF
ONONONONONON
ONONONOFFONON
ONONOFFONONON
BIRBILT
XHL
XLX
X0X
X0X
X0X
X0X
LLH
OFFOFFON
OFFOFFON
OFFOFFON
OFFOFFON
OFFOFFON
OFFOFFON
OFFOFFON
Ví dụ mạch giải mã điều khiển hiển thị LED 7 thanh
Giải mã hiển thị cho đèn phóng điện nhiều cathode
• Một số bộ hiển thị được chế tạo ở dạng đèn phóng điện nhiều (10) cathode
• Mạch giải mã điều khiển hiển thị loại này biến đổi 4 bit mã BCD thành 10 đường ứng với 10 chữ số của đèn
• Cửa ra của mạch giải mã loại này thường là open-collector
MUX và DEMUX
• MUX (Multiplexer) chọn 1 trong nhiều tín hiệu ở 2n lối vào để đưa tới 1 lối ra duy nhất.
• DEMUX (De-Multiplexer) đưa tín hiệu từ 1 lối vào duy nhất tới 1 trong 2n lối ra.
• Việc lựa chọn được thực hiện nhờ n bit chọn thông qua một mạch giải mã DECODER.
Tổng hợp MUX/DEMUX• Các mạch MUX/DEMUX có thể được tổng hợp theo
cách thông thường:– mô tả, – viết biểu thức logic, – thực hiện bằng các cổng cơ bản
• Có thể sử dụng các vi mạch MUX/DEMUX chế sẵn
Vi mạch MUX/DEMUX• Các MUX/DEMUX TTL chỉ dùng cho tín hiệu
digital– MUX: 74151, 74153, 74157, 74158 …– DEMUX: sử dụng DECODER, ví dụ: 74138, 74139,
74154, 74155, 74156 …
• Các MUX/DEMUX CMOS có thể dùng cho cả tín hiệu analog– Các analog switch công nghệ CMOS có thể dẫn dòng
theo hai chiều do vậy mạch MUX và DEMUX có thể dùng chung
– Các vi mạch MUX/DEMUX CMOS: 4051 (MUX 1/8), 4052 (2×MUX 1/4), 4053 (3×MUX 1/2)…
Ứng dụng của MUX/DEMUX
• Sử dụng MUX để tổng hợp hàm logic, tạo bảng tra LUT thường hay gặp trong các hệ thống vi mạch logic khả trình
Mạch so sánh (COMPARATOR)
Mạch so sánh 7485
Sử dụng vi mạch 7485
Tạo và kiểm tra Parity• Phần tử cơ bản dùng trong các mạch tạo và kiểm tra
parity (tính chẵn lẻ) của các tập hợp mã nhị phân là các cổng XOR.– Ví dụ, mạch tạo và kiểm tra parity 9 bit dùng các cổng XOR. Các
tín hiệu ra E (=1 khi số bit ‘1’ ở lối vào là chẵn) và O (=1 khi số bit ‘1’ ở lối vào là lẻ).
Vi mạch 74280
Bộ cộng số học (ADDER)• Có thể tổng hợp bộ cộng số học hai số A và B như sau:
– lập bảng mô tả logic thực hiện phép cộng, – viết biểu thức logic cho các biến ra S (tổng) và C (nhớ), – thực hiện mạch cộng số học bằng các cổng logic cơ bản
• Bộ cộng dưới đây được gọi là HALF ADDER
FULL ADDER• Một bộ cộng số học đầy đủ (FULL ADDER) phải thực
hiện được phép cộng ba số nhị phân x, y, và Cin.• Việc tổng hợp Full Adder cũng được thực hiện tương tự
như việc tổng hợp Half Adder
Tổng hợp FULL ADDER
Cộng/trừ số nhiều bit
Tăng tốc độ phép tính số học• Giảm thời gian truyền tín hiệu Carry • Viết lại biểu thức cho CO và S như sau:
Look-ahead Carry• Xét phần tử Full Adder thứ i, ta có:
CO,i = CI,i+1 = Gi + Pi CI,i
Si = Pi (XOR) CI,i
• Với Adder n bit, ta có biểu thức tính các giá trị C như sau: C1 = G0 + P0 C0 C2 = G1 + P1 C1 = G1 + P1 G0 + P1 P0 C0 C3 = G2 + P2 C2 = G2 + P2 G1 + P2 P1 G0 + P2 P1 P0 C0 C4 = G3 + P3 C3 = G3 + P3 G2 + P3 P2 G1 + P3 P2 P1 G0 + P3 P2 P1 P0 C0
…• Mỗi biểu thức tính Carry trên đây đều có thể được thực hiện bằng
một mạch logic hai mức mạch tạo carry nhanh (Look-ahead Carry Generator) gồm các công cơ bản AND-OR.
• Với mạch kiểu này, hiệu ứng trễ do việc truyền Carry bị loại bỏ• Có thể sử dụng thêm các mạch half-adder và XOR để thực hiện bộ
cộng có carry nhanh• Thời gian thực hiện phép cộng n bit bây giờ chỉ còn bằng thời gian
thực hiện phép cộng một bit
Bộ cộng số học có carry nhanh
Vi mạch 74283 (Fast Adder)
Cộng nhanh số nhiều bit• Có thể sử dụng các bộ cộng có Look-ahead Carry để
tổng hợp bộ cộng số nhị phân nhiều bit• Mạch dưới đây là một ví dụ tổng hợp bộ cộng các số nhị
phân 16 bit từ các Adder 74xx283Thời gian thực hiện phép cộng:
tp = 3×tc + ts = 3×(10÷15 ns) + (13÷21 ns) = 43 ÷ 66 ns
ALU• Mạch ALU (Arithmetic Logical Unit) có thể thực
hiện phép tính số học hoặc logic lên (các) toán hạng tuỳ theo giá trị của mã chọn.
• Ví dụ:
Vi mạch ALU 74181
Bộ nhân hai số nhị phân
Hazard trong mạch logic tổ hợp• Xét mạch logic tổ hợp
thực hiện hàm: F = AB’ + BC
• Theo lý thuyết: – Giả sử ở thời điểm hiện tại
nếu (A, B, C) = (1, 1, 1) thì F =‘1’.
– Nếu B chuyển từ ‘1’ sang ‘0’ thì F vẫn giữ nguyên trạng thái ‘1’.
• Tuy nhiên do đặc tính trễ của cổng nên ở cửa ra F có xuất hiện xung nhiễu , gọi là HAZARD
Các tính chất của Hazard• Hazard xuất hiện trong mạch logic tổ hợp do có
sự khác nhau về thời gian truyền từ lối vào tới lối ra theo các đường dẫn khác nhau của mạch.
• Hazard tĩnh (Static Hazard)– Hazard tĩnh mức ‘0’: ở lối ra xuất hiện một nhiễu xung
ngắn mức ‘1’, trong khi lẽ ra nó vẫn phải duy trì nguyên ở mức ‘0’.
– Hazard tĩnh mức ‘1’: ở lối ra xuất hiện một nhiễu xung ngắn mức ‘0’, trong khi lẽ ra nó vẫn phải duy trì nguyên ở mức ‘1’ (như ở ví dụ trên)
• Hazard động (Dynamic Hazard): lối ra thay đổi trạng thái vài ba lần, trong khi lẽ ra nó chỉ có một sự thay đổi từ ‘0’ sang ‘1’ (hoặc từ ‘1’ sang ‘0’)
Ví dụ về Hazard động
• Xét mạch ở hình bên:– Giả sử ban đầu:
(A,B,C,D) = (0,0,0,1) thì F = ‘1’
– Nếu B = ‘0’ ‘1’ thì, theo lý thuyết, lẽ ra F = ‘1’ ‘0’
– Tuy nhiên, trên thực tế thì:
F=‘1’‘0’‘1’‘0’
Biện pháp khắc phục• Khi biến B thay đổi giá trị thì cả hai số hạng tích AB’ và BC đều có
phản ứng. Nếu thời gian trễ của hai số hạng tích này không giống nhau thì sẽ xuất hiện Hazard
• Biện pháp: tạo số hạng tích cho hai ô cạnh nhau: AC• Mạch không có Hazard tĩnh cũng sẽ không có Hazard động