บทที่ 4 การเข้ารหัสและถอดรหัส (Encodes and Decoder)

การเข้ารหัส (Encoder)  ในเรื่องของวงจร Logic  หมายความว่า การเปลี่ยนระดับของ Logic จากสวิทช์มาเป็นสัญญาณ Logic  ตามรหัสที่ต้องการ  เช่น มีสวิทช์  10  ตัว กดสวิทช์เลขหมายใด ก็ให้ Output  ของวงจรเป็นสัญญาณ  Logic  ของรหัส Binary เป็นต้น

ซึ่ง  Output ของวงจรเป็นรหัสอะไรก็ขึ้นอยู่กับการออกแบบ ในทำนองเดียวกันการถอดรหัส (Decoder) หมายถึง วงจรเปลี่ยนรหัสทาง Input  เพื่อเป็นรหัสอื่นตามต้องการ เช่น เปลี่ยนรหัส BCD เป็นแรงดันของเลขฐานสิบเป็นต้น   วงจรเข้า-ถอดรหัสสามารถสร้างขึ้นมาจาก Diode  ซึ่งต่อกันแบบ Matrix หรือ จากวงจร         Gate Combination ก็ได้ ซึ่งทั้งสองชนิดขึ้นอยู่กับความเหมาะสมของผู้ใช้ในแง่ของขนาด ความยุ่งยาก ราคา ฯลฯ

5.2  การออกแบบวงจรเข้ารหัส

เราอาจสร้างจรเข้ารหัสได้ Diode  Matrix  หรือวงจร Gate Combination ในตัวอย่างนี้จะแสดงวิธีการสร้างวงจรเข้ารหัสจากสวิทช์ เพื่อให้ได้ Output เป็น Octal Code

1
 วงจรเข้ารหัส (Encoder)
 วงจรถอดรหัส (Decoder)
 การประยุกต์ใช้งานวงจรเข้ารหัส และวงจรถอดรหัส
วงจรเข้ารหัสและถอดรหัส
(Encoder and Decoder)2
Basic Encoder
 วงจรเข้ารหัสท าหน้าที่เข้ารหัสสัญญาณอินพุตที่เข้ามา อินพุตให้เหลือ
สัญญาณเอาต์พุตที่ออกไป n เอาต์พุต
2
n
Encoder .
.
.
I0
I1
I2
input
.
.
.
O0
O1
O2
On-1
2 1
I n

2
n
n output
วงจรเข้ารหัส (Encoder)
LSB LSB
MSB MSB3
วงจรเข้ารหัสแบบ 4 ออก 2 (4 line to 2 line encoder)
วงจรเข้ารหัส (Encoder)
Input Output
I3 I2 I1 I0 O1 O0
0 0 0 1 0 0
0 0 1 0 0 1
0 1 0 0 1 0
1 0 0 0 1 1
I0
I1
I2
I3
O0
O1
4 to 2
Encoder
I0
I1
I2
I3
O0
O1
LSB
MSB4
วงจรเข้ารหัสแบบ 4 ออก 2 (4 line to 2 line encoder)(ต่อ)
 วงจรเข้ารหัสแบบ 4 ออก 2 (4 line to 2 line encoder) ที่ใช้ขาควบคุมการ
ท างาน (Enable Input)ของวงจร
วงจรเข้ารหัส (Encoder)
Input Output
EI I3 I2 I1 I0 O1 O0
0 X X X X 0 0
1 0 0 0 1 0 0
1 0 0 1 0 0 1
1 0 1 0 0 1 0
1 1 0 0 0 1 1
I0
I1
I2
I3
EI
O0
O1
4 to 2
Encoder
น าไปเขียนเป็นวงจรดิจิตอล
ได้ดังรูปที่ 15
วงจรเข้ารหัสแบบ 4 ออก 2 (4 line to 2 line encoder)(ต่อ)
วงจรเข้ารหัส (Encoder)
I0
I1
I2
I3
EI
O0
O1
4 to 2
Encoder
I0
I1
I2
I3
EI
O0
O1
รูปที่ 1 วงจรดิจิตอลของ 4 line to 2 line encoder6
วงจรเข้ารหัสแบบ 8 ออก 3 (8 line to 3 line encoder)
วงจรเข้ารหัส (Encoder)
Input Output
I7 I6 I5 I4 I3 I2 I1 I0 O2 O1 O0
1 1 1 1 1 1 1 0 0 0 0
1 1 1 1 1 1 0 1 0 0 1
1 1 1 1 1 0 1 1 0 1 0
1 1 1 1 0 1 1 1 0 1 1
1 1 1 0 1 1 1 1 1 0 0
1 1 0 1 1 1 1 1 1 0 1
1 0 1 1 1 1 1 1 1 1 0
0 1 1 1 1 1 1 1 1 1 1
 วงจรเข้ารหัสแบบนี้อาจเรียกอีกอย่างว่า Octal to binary encoderโดยมีInput
ท างานแบบ Active Low สัญลักษณ์และวงจรดิจิตอลได้ดังรูปที่ 27
วงจรเข้ารหัสแบบ 8 ออก 3 (8 line to 3 line encoder)(ต่อ)
วงจรเข้ารหัส (Encoder)
I0
I1
I2
I3
O0
O1
8 to 3
Encoder
O2
I4
I5
I6
I7
I0
I1
I2
I3
I4
I5
I6
I7
O0
O1
O2
8 to 3 Encoder
รูปที่ 2 สัญลักษณ์และวงจรดิจิตอลของ 8 line to 3 line encoder ที่มี
input แบบ active low8
ปัญหาของที่พบใน Encoder
ท่านคิดว่า Encode จะมีปัญหาในกรณีใดได้บ้าง ?
วิธีแก้ปัญหาคืออะไร ?
วงจรเข้ารหัส (Encoder)9
Priority Encoder
Input Output
I3 I2 I1 I0 O1 O0 C
0 0 0 0 X X 0
0 0 0 1 0 0 1
0 0 1 X 0 1 1
0 1 X X 1 0 1
1 X X X 1 1 1
วงจรเข้ารหัส (Encoder)10
Priority Encoder (ต่อ)
X 0 0 0
1 1 1 1
1 1 1 1
1 1 1 1
I3I2
00
00 01 11 10
01
11
10
I1I0
I
3
I
2
O I I 1 2 3  
X 0 1 1
0 0 0 0
1 1 1 1
1 1 1 1
I3I2
00
00 01 11 10
01
11
10
I1I0
I
3
I I1 2 O I I I 0 3 2 1  O0
O1
วงจรเข้ารหัส (Encoder)11
Priority Encoder (ต่อ)
0 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
I3I2
00
00 01 11 10
01
11
10
I1I0
I
3
C I I I I     0 1 2 3 C
I
2
I
0
I
1
วงจรเข้ารหัส (Encoder)12
Priority Encoder (ต่อ)
C I I I I     0 1 2 3
I0
I1
I2
I3
O0
O1
C
O I I I 0 3 2 1   O I I 1 2 3  
I0
I1
I2
I3
C
O0
O1
4 to 2
Encoder
Priority
วงจรเข้ารหัส (Encoder)13
 วงจรเข้ารหัส (Encoder)
 วงจรถอดรหัส (Decoder)
 การประยุกต์ใช้งานวงจรเข้ารหัส และวงจรถอดรหัส
วงจรเข้ารหัสและถอดรหัส
(Encoder and Decoder)14
Basic Decoder
 วงจรถอดรหัสท าหน้าที่ถอดรหัสสัญญาณอินพุตที่เข้ามา n อินพุต
เพื่อให้มีสัญญาณเอาต์พุตที่ออกไป 2 เอาต์พุต
n
วงจรถอดรหัส (Decoder)
Decoder .
.
.
I0
I1
I2
n input
.
.
.
O0
O1
O2
2 1
O n

2
n
output
In-1
LSB LSB
MSB MSB15
วงจรถอดรหัสแบบ 2 ออก 4 (2 line to 4 line decoder)
Input Output
I1 I0 O3 O2 O1 O0
0 0 0 0 0 1
0 1 0 0 1 0
1 0 0 1 0 0
1 1 1 0 0 0
วงจรถอดรหัส (Decoder)16
วงจรถอดรหัสแบบ 2 ออก 4 (2 line to 4 line decoder)(ต่อ)
LSB
MSB
I0
I1
O0
2 to 4 O1
Decoder O2
O3
O I I 0 1 0 
O I I 1 1 0 
O I I 2 1 0 
O I I 3 1 0 
I0
I1
O0
O1
O2
O3
วงจรถอดรหัส (Decoder)17
วงจรถอดรหัสแบบ 2 ออก 4 (2 line to 4 line decoder)(ต่อ)
Input Output
EI I1 I0 O3 O2 O1 O0
0 X X 0 0 0 0
1 0 0 0 0 0 1
1 0 1 0 0 1 0
1 1 0 0 1 0 0
1 1 1 1 0 0 0
วงจรถอดรหัส (Decoder)
 วงจรถอดรหัสแบบ 2 ออก 4 (2 line to 4 line decoder) ที่ใช้ขาควบคุม
การท างาน (Enable Input)ของวงจร
I0
I1
O0
O1
O2
O318
วงจรถอดรหัสแบบ 3 ออก 8 (3 line to 8 line decoder)
Input Output
I2 I1 I0 O7 O6 O5 O4 O3 O2 O1 O0
0 0 0 1 1 1 1 1 1 1 0
0 0 1 1 1 1 1 1 1 0 1
0 1 0 1 1 1 1 1 0 1 1
0 1 1 1 1 1 1 0 1 1 1
1 0 0 1 1 1 0 1 1 1 1
1 0 1 1 1 0 1 1 1 1 1
1 1 0 1 0 1 1 1 1 1 1
1 1 1 0 1 1 1 1 1 1 1
 วงจรถอดรหัสแบบ 3 ออก 8 ที่มีOutput ท างานแบบ Active Low สัญลักษณ์
และวงจรดิจิตอลได้ดังรูปที่ 3
วงจรถอดรหัส (Decoder)19
วงจรถอดรหัสแบบ 3 ออก 8 (3 line to 8 line decoder) (ต่อ)
วงจรถอดรหัส (Decoder)
O3
O0
O1
3 to 8
Decoder
O2
O4
O5
O6
O7
I0
I1
I2
O3
O0
O1
O2
O4
O5
O6
O7
I0
I1
I2
รูปที่ 3 สัญลักษณ์และวงจรดิจิตอลของ 3 line to 8 line Decoder
ที่มี output แบบ active low20
 วงจรเข้ารหัส (Encoder)
 วงจรถอดรหัส (Decoder)
 การประยุกต์ใช้งานวงจรเข้ารหัส และวงจรถอดรหัส
วงจรเข้ารหัสและถอดรหัส
(Encoder and Decoder)21
Decimal to BCD Encoder
การประยุกต์ใช้งานวงจรเข้ารหัส และวงจรถอดรหัส
A
C
B
D
B
A+BD+BC
1 2 3
4 5 6
7 8 9
0
Encoder
2
0 0 1 0
0
ไม่ผ่าน
ตัวอย่างจากเรื่องวงจรคอมบิเนชั่น22
Decimal to BCD Encoder (ต่อ)
การประยุกต์ใช้งานวงจรเข้ารหัส และวงจรถอดรหัส
1 2 3
4 5 6
7 8 9
0
LSB
MSB
BCD Code
truth table ของไอซี 74147 (10 to 4 line encode) ดูได้ในตารางที่ 1
U1
A
9
B
7
C
6
D
14
3
13
4
1
5
2
2
12 1
11
8
5
7
4
6
3
9
10
74147N23
Decimal to BCD Encoder (ต่อ)
การประยุกต์ใช้งานวงจรเข้ารหัส และวงจรถอดรหัส
ตารางที่ 1truth table ของไอซี 74147
Input (Decimal) Output (BCD)
9 8 7 6 5 4 3 2 1 D C B A
1 1 1 1 1 1 1 1 0 1 1 1 0
1 1 1 1 1 1 1 0 1 1 1 0 1
1 1 1 1 1 1 0 1 1 1 1 0 0
1 1 1 1 1 0 1 1 1 1 0 1 1
1 1 1 1 0 1 1 1 1 1 0 1 0
1 1 1 0 1 1 1 1 1 1 0 0 1
1 1 0 1 1 1 1 1 1 1 0 0 0
1 0 1 1 1 1 1 1 1 0 1 1 1
0 1 1 1 1 1 1 1 1 0 1 1 024
BCD to Seven Segment Decoder (ต่อ)
การประยุกต์ใช้งานวงจรเข้ารหัส และวงจรถอดรหัส
7
1
2
6
13
10
9
15
11
12
14
3
5
4
A
B
C
D
LT
RBI
BI/RBO
OA
OB
OC
OD
OE
OF
OG
7447N
U2
LCD Display
การใช้ไอซี 7447 (BCD to Seven Segment Decoder) แปลงจากรหัส
BCD เพื่อน าไปแสดงผลยัง LCD Display
a
b
c
d
e
f
g
LSB
MSB
รหัส BCD
ขนาด 4 บิต25
การประยุกต์ใช้ Encoder ร่วมกับ Decoder
การประยุกต์ใช้งานวงจรเข้ารหัส และวงจรถอดรหัส
1 2 3
4 5 6
7 8 9
0
การน า encoder และ decoder มาต่อร่วมกันเพื่อใช้แสดงผลการกด
ตัวเลข ออกทาง LCD Display
Encoder Decoder
a
b
c
d
e
f
g

About these ads

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: