Đa số các mạch giải mã bán trên thị trường hiện nay được thiết kế với đầu ra tác động ở mức logic thấp active - low output.. Kích chuột vào các logic switch để lần lượt thay đổi các mức
Trang 1Bài 4 : chuyển đổi mã và giải mã
(Code Conversion and Decoder)
A Phần tóm tắt lý thuyết
1 Mã và chuyển đổi mã
ở mã BCD ta đã sử dụng 1 nhóm mã hệ 2 gồm 4 bit để biểu diễn các số ở hệ
10 từ 1 đến 9 Quá trình này được gọi là sự mã hoá Tương tự như vậy ta có thể dùng 1 nhóm mã hệ 2 nhiều bit hơn để mã hoá các chữ cái, các ký hiệu khác (+, -,
&, %, $ ) hoặc cả một tập hợp lệnh cho trước của máy tính số
Với một dãy n chữ số hệ 2 (n bit) ta có 2n bộ giá trị khác nhau đại diện cho 2n các ký hiệu hoặc các lệnh cần mã hoá Nếu số ký hiệu và lệnh cần mã hoá là N:
n
N ≤ 2
Nếu N = 2n
thì số nhóm mã n bit vừa đủ để mã hoá N ký hiệu
Nếu N < 2n
thì sẽ còn 1 số nhóm mã n bit thừa và được dùng vào mục đích khác như phát hiện lỗi hoặc sửa sai trong quá trình truyền thông tin
Trong giáo trình lý thuyết ta đã tìm hiểu mã hoá số của hệ 10 bằng mã BCD
8421, việc chuyển mã hệ 2 sang mã Gray, mã hệ 2 sang mã bù 2
2 Giải mã
Là quá trình ngược lại với mã hoá Nghĩa là từ 1 bộ giá trị của nhóm mã n bit
ta tìm lại được 1 trong N ký hiệu hoặc lệnh tương ứng
a) Giải mã nhị phân (Binary decoder)
Mạch giải mã là một mạch logic tổ hợp thực hiện việc chuyển đổi từ mã này sang mã khác Trong giải mã nhị phân , nếu mã vào có n bit thì mã ra có 2n bit
Đó là giải mã vào n ra 2n
Về nguyên tắc hoạt động và kết cấu của sơ đồ logic thì giải mã giống như phân kênh Tuy nhiên, việc sử dụng chúng thì khác nhau Theo lý thuyết toán học, muốn mã hoá 4 số thấp phân (0, 1, 2, 3) ta cần 4 tổ hợp mã nhị phân với hai
ký hiệu A1, A0 Muốn mã hoá 8 số thập phân (0, 1, 2, 3, 4, 5, 6, 7) ta cần 8 tổ hợp mã nhị phân với 3 ký hiệu A2, A1, A0 Muốn mã hoá 16 số thập phân (0, 1, , 15) ta cần 16 tổ hợp mã nhị phân bốn ký hiệu A3, A2, A1, A0
Trang 2Hình vẽ dưới đây giúp ta có khái niệm về cách thiết kế logic cho giải mã từ
nhị phân ra mã 8 (Binary - to - Octal decoder)
Đa số các mạch giải mã bán trên thị trường hiện nay được thiết kế với đầu ra
tác động ở mức logic thấp (active - low output) Sở dĩ như vậy vì cửa đảo nói
chung tác động nhanh hơn không đảo Như vậy, ta chỉ cần thay đổi cửa và bằng cửa không và, thay thế ký hiệu đầu ra :
2 bằng 2
7 6 5 4 3 2 1 0 A2A2 A1A1 A0 A0
Trang 3§Çu vµo §Çu ra
A2 A1 A0 Octal Hµm logic
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
0
1
2
3
4
5
6
7
0 1
2 A A A
A2 A1 A0
A2 A2 A0
A2 A1 A0
0 1
2 A A
0 1
2 A A A
0 1
2 A A A
0 1
2 A A A
Trong c¸c s¸ch “cÈm nang vi m¹ch sè” cã giíi thiÖu mét sè gi¶i m· VÝ dô, c¸c gi¶i m· vµo 2 ra 4 lµ 74LS139, 74LS155 74LS156 Gi¶i m· vµo 4 ra 16 lµ 74LS154
Muèn cã gi¶i m· nhÞ ph©n ra thËp ph©n nghÜa lµ muèn m· ho¸ 10 sè thËp ph©n th× gi¶i quyÕt nh− thÕ nµo ? DÜ nhiªn r»ng ta chØ cÇn 10 tæ hîp m· nhÞ ph©n
4 ký hiÖu (D, C, B, A) Nh− vËy, 6 tæ hîp bÞ lo¹i trõ lµ 1010, 1011, 1100, 1101,
1110 vµ 1111
74LS42
A3 A2 A1 A0
9 8 7 6 5 4 3 2 1 0
Trang 4b) Giải mã 7 đoạn (7 - segment display)
Đèn chỉ thị 7 đoạn (7 - segment display)
Đèn chỉ thị 7 đoạn gồm 7 diot phát quang (LED: Light Emission Diode) hay 7 chỉ thị tinh thể lỏng (LCD: Liquid Crystal Display) Mỗi bit đ−ợc thể hiện bằng
một đoạn sáng a hoặc b hoặc c đến g
Có hai loại chỉ thị 7 đoạn:
- A nốt chung
- Catốt chung
a
b
c
d
e
f
g
.
V+
REDCA
a
b
c
d
e
f
g
.
Gnd
REDCC
Trang 5Giải mã nhị phân ra mã 7 đoạn (loại 7447)
Vi mạch 7447 là giải mã nhị phân ra mã 7 đoạn Số nhị phân được mã hoá
để chuyển thành mã 7 đoạn Giải mã 7447 có các đầu ra “tác động thấp” nên đèn chỉ thị 7 đoạn có anốt chung Sơ đồ nối mạch giữa 7447 và chỉ thị 7 đoạn được diễn tả hình dưới đây Điện trở R làm nhiệm vụ bảo vệ cho các LED (R = 300 Ω)
Dưới đây là bảng chân lý cho giải mã 7447A, 74L47, 74LS47
Thập phân
toàn
Số nhị
phân
4 bit
+5V
300ohm 74LS47
A3 A2 A1 A0
test RBI
g f e d c b a
RBO
9
REDCA
Trang 6Giải mã nhị phân ra mã 7 đoạn (loại MC 14495)
Vi mạch MC 14495 cũng là giải mã nhị phân ra mã 7 đoạn Giải mã này có các đầu ra “tác động cao” nên ta phải dùng đèn chỉ thị 7 đoạn có catốt chung Để bảo vệ cho các LED, người ta đã lắp ráp sẵn các điện trở cùng loại 290Ω ngay trong vi mạch Do vậy, khi dùng nguồn +5v ta không cần lắp thêm các điện trở R như khi dùng vi mạch 7447
Đặc biệt, các số từ 10 đến 15 được hiện thị tương ứng là A, b, C, d, E, F
Trang 7B Phần thực nghiệm
1 Nghiên cứu sự hoạt động của giải mã vào 2 ra 4 loại 74LS139
(2 to 4 line Decoder)
Các loại giải mã vào 2 ra 4 74LS139, 74F139…
Sơ đồ thí nghiệm:
Các bước tiến hành thí nghiệm:
Bước1:
Thực hiện vẽ mạch như hình trên bằng cách sử dụng:
01 Giải mã 74LS139 vào 2 ra 4 [Digital by Function/Decode,Demux/74139]
03 Logic switch [Switches/Digital/Logic Switch] (s)
04 Logic Display [Displays/Digital/Logic Display] (9) Chú ý:
[ ] Đường dẫn để lấy linh kiện trong thư viện ( ) Ký hiệu phím tắt
Bước 2:
Sau khi vẽ xong mạch, bạn nhấp lên nút “Run” trên thanh công cụ Kích
chuột vào các logic switch để lần lượt thay đổi các mức logic của các logic switch Hãy quan sát sự thay đổi các trạng thái ở lối ra L0,L1,L2,L3
Bước 3:
- Thay đổi các giá trị logic lối vào S0, S1 thông qua các logic switch, G là
đầu vào cho phép Điền đầy đủ vào bảng chân lý các kết quả thực nghiệm quan sát các giá trị logic lối ra L0,L1,L2,L3
S1
5V
S0
5V
G
0V
L3 L2 L1 L0
74LS139
A1a A0a Ea A1b A0b Eb
Q3a Q2a Q1a Q0a Q3b Q2b Q1b Q0b
Trang 8- So sánh với bảng chân lý ở phần lý thuyết
Vi mạch 74LS139 được gọi là giải mã/ phân kênh Giải thích tại sao có hai tên như vậy?
2 Thiết kế, xây dựng và đo đạc thực nghiệm giải mã vào 3 ra 8 bằng giải mã 74LS139 và các cửa không và 74LS00
Sơ đồ thí nghiệm:
Các bước tiến hành:
Bước1
Thực hiện vẽ mạch như hình trên bằng cách sử dụng:
01 Giải mã 74LS139 vào 2 ra 4 [Digital by Function/Decode,Demux/74139]
Đầu vào Đầu ra
G S1 S0 L3 L2 L1 L0
G
Trang 9Sau khi vẽ xong mạch, bạn nhấp lên nút “Run” trên thanh công cụ Kích
chuột vào các logic switch để lần lượt thay đổi các mức logic của các logic switch Hãy quan sát sự thay đổi các trạng thái ở lối ra
Q0,Q1,Q2,Q3.,Q4,Q5,Q6,Q7
Bước 3
- Thay đổi các giá trị logic lối vào S0, S1, S2 thông qua các logic switch, G
là đầu vào cho phép Điền đầy đủ vào bảng chân lý các kết quả thực nghiệm quan sát các giá trị logic lối ra Q0,Q1,Q2,Q3.,Q4,Q5,Q6,Q7
3 Nghiên cứu giải mã nhị phân ra 7 đoạn (loại 7447 hoặc 74LS247)
Sơ đồ thí nghiệm:
Các bước tiến hành:
Bước1
G S2 S1 S0 Y7 Y6
5
Y Y4 Y3 Y2 Y1 Y0
0 1 1 1
Trang 10Thực hiện vẽ mạch như hình trên bằng cách sử dụng:
01 Giải mã 74LS247 giải mã nhị phân ra 7 đoạn [Digital by Function/Decode,Demux/74247]
04 Logic switch [Switches/Digital/Logic Switch] (s)
01 7 Segment LED [Displays/7 Segment LED/ CA 7 Seg ] Bước 2
Sau khi vẽ xong mạch, bạn nhấp lên nút “Run” trên thanh công cụ Kích chuột vào các logic switch để lần lượt thay đổi các mức logic của các logic switch Hãy quan sát sự thay đổi các trạng thái ở lối ra
Bước 3
- Thay đổi các giá trị logic lối vào A,B,C,D thông qua các logic switch
Điền đầy đủ vào bảng chân lý các kết quả thực nghiệm quan sát các giá trị logic lối ra
- So sánh thực nghiệm với lý thuyết, nhận xét ?
Thập
phân
Đầu vào
D C B A
Đầu ra
g f e d c b a
0
1
2
3
4
5
6
7
8
9
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
0 0 0 0 0 0 1
- - - - - - -
- - - - - - -
- - - - - - -
- - - - - - -
- - - - - - -
- - - - - - -
- - - - - - -
- - - - - - -
- - - - - - -
4 Kiểm tra kiến thức : ENCODER
Số bit mã vào và số bit mã ra của giải mã nói chung khác nhau Trong các tài liệu kỹ thuật, nếu số bit mã vào ít hơn số bit mã ra thì giải mã có tên là
Trang 11Giải mã (ENCODER) vào 6 ra 3
Khi ấn nút số 5 nghĩa là đường dẫn 5 nối đất Đường dẫn này liên quan tới hai cửa hoặc Qua phân tích mạch thấy rằng A0 = 1, A1 = 0, A2 = 1 Như vậy số 5 thập phân ứng với 101 nhị phân Hãy điền đầy đủ vào chỗ trống của bảng chân lý ứng với mạch này
+5v
Đầu vào
6 5 4 3 2 1
Đầu ra
A2 A1 A0
1 1 1 1 1 1
0 1 1 1 1 1
1 0 1 1 1 1
1 1 0 1 1 1
1 1 1 0 1 1
1 1 1 1 0 1
1 1 1 1 1 0
- - -
- - -
- - -
- - -
- - -
- - -
- - -
Mã và biến đổi mã
- Điền vào chỗ trống các biểu diễn mã tương đương :
A2
A1
A0
6 5 4 3 2 1
6 5 4 3 2 1
Trang 12Thập phân Nhị phân Thập lục phân
56 - -
- 10.0101 -
- - 7E
- Bộ nhớ trong một máy vi tính được phân ra nhiều lô và được đánh dấu
từ 0000 đến 3FFF Mỗi lô lưu trữ 1 byte Hỏi bộ nhớ này đã lưu trữ bao nhiêu bit, bao nhiêu byte và kilobyte ?
- Trong kỹ thuật số thì dấu chấm ( ) được quy ước thay cho dấu phảy ( , )
mà ta thường dùng
Ví dụ : 14.23 = 14,23
0.5 = 0,5
Giải thích tại sao có sự tương đương này :
(10001010.101)2 = (138,625)10
Trang 13C Phô lôc
Giíi thiÖu DataSheet c¸c h·ng s¶n xuÊt IC trªn thÕ giíi cña mét sè IC th«ng dông sö dông trong bµi thùc hµnh
1 Gi¶i m· nhÞ ph©n ra octal (Binary to Octal Encoder)
Tªn IC: 74x138 (TTL)
2 Gi¶i m· nhÞ ph©n vµo 2 ra 4
Tªn IC: 74x139, 74x155, 74x156 (TTL)
Trang 143 Gi¶i m· nhÞ ph©n vµo 4 ra 16
Tªn IC: 74x154 (TTL)
Trang 15Gi¶i m· nhÞ ph©n ra thËp ph©n Lo¹i 7442
4 Gi¶i m· BCD sang thËp ph©n
Tªn IC: 74x42 (TTL)
Trang 165 Gi¶i m· BCD sang m· 7 ®o¹n
Tªn IC: 74x47 (TTL)