12.1 การออกแบบวงจร Multiplexer
วงจรมัลติเพล็กซ์ (Multiplexer) หรือมักซ์ (MUX) หรือวงจรเลือกข้อมูล (Data Selector) เป็นวงจรที่มีเอาต์พุตเพียง 1 เอาต์พุตแต่
มีอินพุตหลายอินพุต ทำหน้าที่เลือกข้อมูลจากอินพุตมาใช้เพียงครั้งละข้อมูลเดียว ลักษณะของ MUX แสดงดังรูปที่ 12.1 (ก) ส่วนรูปที่ 12.1
(ข) แสดงการทำงานของ MUX ซึ่งเปรียบเสมือนสวิตซ์แบบหมุน (Rotary switch)
|
รูปที่ 12.1 แสดงโครงสร้างและการทำงานของ MUX
|
เอาต์พุตของ MUX มี l เอาต์พุต (Y) อาจจะเป็นแบบ Active High หรือ Active Low ก็ได้แต่บางตัวอาจจะมีเอาต์พุตทั้ง 2 แบบ ซึ่งเรียกว่า
เป็นแบบ Complement Output อินพุตของ MUX แบ่งเป็น 3 กลุ่ม คือ
1. ขา Enable หรือ Strobe (E, EN หรือ G) ทำหน้าที่ควบคุมให้ MUX ทำงานหรือไม่ทำงานเป็นอินพุตแบบ Active Low
ถ้าขา Enable ได้รับลอจิก 0 MUX ทำงานตามปกติ
ถ้าขา Enable ได้รับลอจิก 1 MUX ไม่ทำงาน (เอาต์พุตไม่ Active)
2. Data Input เป็นอินพุตที่รับสัญญาณข้อมูล (Data) เข้ามา
3. Select Input เป็นขาที่ทำหน้าที่เลือกข้อมูล (Data) จากขา Data Input ไปใช้งาน
ถ้า Data Input = n, Select Input = m จะได้ความสัมพันธ์ระหว่างจำนวน Data Inputกับจำนวน Select Input เป็น n = 2m
การกำหนดขนาดของ MUX กำหนดในรูป “จำนวน Data Input : 1” หรือ “จำนวน Data Input-to-1”
|
12.1.1 MUX ขนาด 2 : 1 (2-to-1ine MUX)
เนื่องจาก n = 2 ดังนั้น m = 1 (ขา Select มี 1 ขา)
|
รูปที่ 12.2 แสดง MUX ขนาด 2 : 1
|
ข้อมูลที่ขา Data Input D0, D1 จะถูกเลือกไปใช้ที่เอาต์พุตเพียงครั้งละ 1 ข้อมูลเท่านั้น โดยการควบคุมที่ขา S การทำงานเป็นไปตามตารางความจริง
|
Select
Input S
|
OutPut
Y
|
0
|
D0
|
1
|
D1
|
จากตารางความจริงเขียนสมการลอจิกได้เป็น รูปที่ 12.3 แสดงวงจรภายในของ MUX ขนาด 2 :1
จากสมการนำไปเขียนเป็นวงจรได้ดังรูปที่ 12.3
|
สำหรับวงจรมัลติเพล็กซ์ขนาดเข้า 2 ออก 1 หรือ 2 -line-to-1-line Data\Selector Multiplexer ที่นิยมใช้กัน คือ วงจรรวมทีทีแอลเบอร์ 74157
ซึ่งภายในประกอบด้วยมัลติเพล็กซ์ขนาด เข้า 2 ออก 1 จำนวน 4 วงจรคือ มีอินพุต 2 อินพุต A และ B เอาต์พุตคือ Y มีขาสโตรบ (Strobe) ทำหน้าที่ควบคุมการ
ทำงาน และขาซีเล็ค (Select) สำหรับป้อนลอจิกควบคุมเพื่อเลือกอินพุตใดอินพุตหนึ่งให้ส่งข้อมูลไปยังเอาต์พุต ตารางความจริงแสดงการทำงานแสดงในรูปที่
12.4 (ข) และวงจรเกตภายในของมัลติเพล็กซ์เบอร์ 74157 แสดงในรูปที่ 12.4 (ก) เมื่อพิจารณาการการทำงานจากตารางความจริงจะพบว่าเมื่อให้ขาสโตรบเป็น
“H” วงจรไม่ทำงาน ที่เอาต์พุต Y จะให้ลอจิก “L” เมื่อให้ขาสโตรบเป็น “L” วงจรจะทำงานได้ กล่าวคือ เมื่อเลือกขาซีเล็คให้เป็น “L” เอาต์พุต Y จะเท่ากับอินพุต
A และเมื่อขาซีเล็คเป็น “H” เอาต์พุต Y จะเท่ากับอินพุต B
|
รูปที่ 12.4 แสดงวงจรลอจิกและตารางความจริงของ 2-line-to-1-line multiplexer เบอร์ 74157
|
12.1.2 MUX ขนาด 4 : 1 (4-to-1ine MUX)
เนื่องจาก n = 4 ดังนั้น m = 2 (จำนวน Select Input 2 ขา)
|
รูปที่ 12.5 แสดง MUX ขนาด 4 : 1
|
ตารางความจริง
จากตารางความจริงเขียนสมการลอจิกได้เป็น
เขียนเป็นวงจรลอจิกได้ดังรูปที่ 12.6
รูปที่ 12.6 แสดงวงจรภายในของ MUX ขนาด 4 : 1
|
วงจรมัลติเพล็กซ์ที่มีขนาดเข้า 4 ออก 1 สามารถเรียกข้อมูลอินพุต 4 ออก 1 เอาต์พุตได้คือเบอร์ 74153 (Dual-4-line-to-1-line Data
Selector Multiplexers) ภายในของวงจรรวมทีทีแอลเบอร์ 74153 ประกอบไปด้วยมัลติเพล็กซ์ขนาดเข้า 4 ออก 1 จำนวน 2 วงจร ดังรูปที่
12.7 (ก) วงจรที่ 1 มีอินพุต 1C0, 1C1, 1C2, 1C3 มีเอาต์พุต 1Y มีขาควบคุมคือสโตรบ (Strobe / Enable, 1G) และใช้ขาซีเล็คเพื่อเลือก
ช่องของข้อมูลอินพุต 2 ขาคือ ขา A และ B สำหรับตัวที่ 2 มีขาอินพุต 4 บิต คือ 2C0, 2C1, 2C2, 2C3 มีเอาต์พุต 2Y มีขาควบคุมคือสโตรบ
(2G) และใช้ขาซีเล็ค A และ B ร่วมกับมัลติเพล็กซ์ตัวแรก
ตารางความจริงแสดงการทำงานของมัลติเพล็กซ์เบอร์ 74153 แสดงในรูปที่ 12.7 (ข) จะพบ ว่าเมื่อต้องการให้วงจรมัลติเพล็กซ์ทำงานได้ต้อง
ควบคุมขาสโตรบ (G) ให้ได้รับลอจิก “L” เมื่อทำการเลือกข้อมูลด้วยขาซีเล็ค A และ B เป็น “L” ทั้ง 2 ขา อินพุต ที่ C0 จะปรากฏที่ Y และถ้าเลือก A
และ B เป็น “L” และ “H” ที่เอาต์พุต Y จะเท่ากับ C1 ถ้าเลือก A และ B เป็น “H” และ “L” เอาต์พุต Y จะเข้ากับ C2 ในทำนองเดียวกัน เมื่อเลือก A
และ B เป็น “H” ทั้ง 2 ขา เอาต์พุต Y จะเท่ากับ C3
|
รูปที่ 12.7 แสดงวงจรลอจิกและตารางความจริงของ 4-line-to-1-line
Data Selector Multiplexer เบอร์ 74153
|
12.1.3 MUX ขนาด 8 : 1 มีสมการเอาต์พุตเป็น
วงจรมัลติเพล็กซ์ขนาดเข้า 8 ออก 1 หรือ 8-line-to-1-line Data Selector/Multiplexers ชนิด วงจรรวมทีทีแอล มีใช้กัน
2 เบอร์คือ เบอร์ 74151 และ 74152 ถ้าเป็นเบอร์ 74151 จะมีอินพุตรับขอมูลจำนวน 8 อินพุต (คือ D6 ถึง D7) และมีขาซีเล็ค 3 ขา (A, B, C)
มีขาควบคุมคือขาสโตรบ (S) และมีเอาต์พุต 2 เอาต์พุต คือเอาต์พุต Y (ปกติ) และเอาต์พุต W (เป็นอินเวิร์สของ Y) ดังวงจรในรูปที่ 12.8 (ก)
ตารางความจริงของมัลติเพล็กซ์เบอร์ 74151 แสดงในรูปที่ 12.8 (ข) เมื่อต้องการให้มัลติเพล็กเซอร์ ทำงานได้ต้องควบคุมขาสโตรบให้เป็น “L”
|
(ก) วงจรภายใน 74151
รูปที่ 12.8 แสดงวงจรภายในของ 8-line-to-1-line Data Selector Multiplexer เบอร์ 74151
และตารางความจริง
|
รูปที่ 12.8 (ต่อ)
|
สำหรับเบอร์ 74152 เป็นชนิด 8-1ine-to-1-1ine เช่นกัน แต่ไม่มีขาสโตรบเป็นขาควบคุม ดังนั้นข้อมูลทางอินพุตจะเรียงลำดับออกไป
ที่เอาต์พุตครั้งละ 1 บิตได้เมื่อควบคุมลอจิกของซีเล็คให้เป็นไปตามตารางความจริงดังแสดงในรูปที่ 12.9 (ข) วงจรภายในของ 74152
แสดงในรูปที่ 12.9 (ก)
|
รูปที่ 12.9 แสดงวงจรภายในและตารางความจริงของ 8-line-to-1-line
Data Selector/Multiplexer เบอร์ 74152
|
รูปที่ 12.9 (ต่อ)
|
12.1.4 MUX ขนาด 16 : 1 มีสมการเอาต์พุตเป็น
วงจรมัลติเพล็กซ์ที่มีอินพุตเข้า 16 ออก 1 หรือ 16-line-to-1-line Multiplexer ชนิดวงจรรวมทีทีแอล ที่นิยมใช้กันคือเบอร์ 74150
(มีทั้งชนิด Standard, LS, S) วงจรมัลติเพล็กซ์นี้มีอินพุตรับข้อมูลเข้า 16 อินพุต คือ E0 ถึง E15 และมีอินพุตซีเล็คที่ทำหน้าที่เลือกข้อมูลจาก
อินพุต 1 บิตไปสู่เอาต์พุต ขาซีเล็คมีจำนวน 4 ขา คือ A, B, C และ D (Data Select) มีขาควบคุมการทำงานของมัลติเพล็กซ์คือ
ขาสโตรบ (อีนาเบิล) เมื่อต้องการให้วงจรมัลติเพล็กซ์ทำงานได้จะต้องเลือกให้ขา สโตรบเป็น “L” แต่ที่เอาต์พุตจะให้ข้อมูลตรงกันข้ามกับลอจิก
ข้อมูลอินพุต เช่น เมื่อให้สโตรบเป็น “L” และเลือกซีเล็ค A, B, C, D เป็น “L” ทั้งหมด ถ้าป้อนข้อมูล “H” ที่ขา E0 ที่เอาต์พุตจะได้ E0 หรือ “L”
เมื่อต้องการให้เอาต์พุตมีค่าเป็น “H” จะต้องต่ออินเวอร์เตอร์เกตที่เอาต์พุตเพิ่มอีก 1 เกตลักษณะของวงจรภายในของมัลติเพล็กซ์เบอร์ 74150
แสดงในรูป 12.10 (ก) และตารางความจริงแสดงการทำงานแสดงในรูป 12.10 (ข)
|
รูปที่ 12.10 แสดงวงจรภายในและตารางความจริงของ 16-line-to-1-line
Data Selector/Multiplexer เบอร์ 74150
|
12.1.5 MUX ขนาด n : 1 มีสมการเอาต์พุตเป็น
<< Go To Top
|
12.2 การเพิ่มจำนวนอินพุตของ Multiplexer
การเพิ่มจำนวนอินพุตของ Multiplexer คือการนำมัลติเพล็กซ์หลายๆ ตัวมาต่อร่วมกัน เพื่อให้สามารถรับข้อมูลเข้าได้มากกว่า เช่น
กรณีที่ต้องการรับข้อมูลมากกว่า 16 บิต (16 บิตสามารถใช้เบอร์ 74150 ได้) สามารถสร้างได้โดยใช้ 74150 หลาย ๆ ตัวการนำ MUX
หลายๆ ตัวมาต่อรวมกันเพื่อเพิ่มจำนวนอินพุตของ MUX เรียกว่า Multiplexer Tree มีตัวอย่างการต่อวงจรดังรูปที่ 12.11
|
รูปที่ 12.11 แสดงการต่อวงจรไอซีเบอร์ 74151 เพื่อใช้งานเป็น 16 : 1 MUX
|
วงจรรูปที่ 12.11 เป็นการนำ 74151 8 : 1 MUX 2 ตัว มาต่อเป็น 16 : 1 MUX ซึ่งมีคุณสมบัติการทำงานเหมือนกับ 74150 16 : 1 MUX ในรูปที่ 12.12
|
รูปที่ 12.12 แสดงการต่อไอซีเบอร์ 74150 เพื่อใช้งานเป็นแบบ Complement Output
รูปที่ 12.13 แสดงการต่อไอซีเบอร์ 74150 เพื่อใช้งานเป็น 32 : 1 MUX แบบ Complement Output
|
แนนด์เกตทางด้านเอาต์พุตของวงจรรูปที่ 12.13 อาจจะเปลี่ยนไปใช้ 2 : 1 MUX แทนก็ได้ โดยใช้ขา S ของ 2 : 1 MUX ไปเป็นขา S4 ส่วนขา EN ของ
74150 ทั้ง 2 ตัวต่อไว้ที่ลอจิก 0
|
รูปที่ 12.14 แสดงการต่อวงจร 4 : 1 MUX 5 ตัวเพื่อใช้งานเป็น 16 : 1
|
การสร้างวงจรมัลติเพล็กซ์ขนาดเข้า 64 ออก 1 (64-line-to-1-1ine Multiplexers) จะเห็นว่าต้องออกแบบให้ขาซีเล็คเลือกข้อมูลได้ 64 บิต (26 = 64)
แสดงว่าต้องมีขาซีเล็ค 6 ขา (A, B, C, D, E และ F) ขาข้อมูลเข้าต้อง มี 64 ขา ใช้วงจรรวมเบอร์ 74150 จำนวน 4 ตัว ตัวที่ (1) รับข้อมูลบิตที่ 0-15
ตัวที่ (2) รับข้อมูลบิตที่ 16-31 ตัวที่ (3) รับข้อมูลบิตที่ 32-47 และตัวที่ (4) รับข้อมูลบิตที่ 48-63 สำหรับขาซีเล็ค (A, B, C, D) ของทั้ง 4 ตัวน
ี้ (74150) ต่อขนานกันดังรูปที่ 12.15 จากนั้นนำเอาต์พุต (W) ของ 74150 ทั้ง 4 ตัวต่อเข้ากับมัลติเพล็กซ์ขนาด 4 ออก 1 เช่น เบอร์ 74153 และนำซีเลค
อินพุตของ 74153 มาเป็นแอดเดรสของซีเล็คอินพุตรวมของระบบ ทำให้ชีเล็คอินพุตรวมมี 6 ขา (A, B, C, D, E, F) จึงออกแบวงจรมัลติเพล็กซ์แบบ
64-line-to-1-line ได้อย่างสมบูรณ์ ดังรูปที่ 12.15
|
รูปที่ 12.15 64-line-to-1-line Multiplexer ที่สร้างจากเบอร์ 74150 (16-line-to-1-line)
|
ตัวอย่างที่ 12.1 จงออกแบบวงจร
(ก) โดยใช้ไอซีเบอร์ 74153 4 : 1 MUX 1ตัว (ใช้ MUX ขนาด 4 : 1 จำนวน 1 ตัว)
(ข) โดยใช้ไอซีเบอร์ 74153 4 : 1 MUX 2 ตัว มาต่อเป็น 8 :1 MUX
วิธีทำ
(ก) ใช้ไอซีเบอร์ 74153 4 : 1 MUX 1ตัว
เขียนวงจร 74153 ดังรูป นำเอาต์พุต Y ไปใช้เป็นเอาต์พุตของวงจร จะได้ ส่วนขา Enable
ต้องต่อที่สถานะ active เสมอ (ต่อไว้ที่ลอจิก 0)
|
สมการลอจิกที่โจทย์กำหนดมี 3 อินพุต คือ และ ให้ต่ออินพุต กับขา ต่ออินพุต กับขา ส่วนอินพุตที่เหลือคือ
นำไปออกแบบเพื่อต่อกับขา Data Input ถึง ซึ่งมีวิธีการออกแบบ 3 วิธีดังนี้
วิธีที่ 1 ใช้ตารางความจริง
จากสมการลอจิกที่โจทย์กำหนดนำไปเขียนเป็นตารางความจริง แบ่งกลุ่มอินพุต (ตัวแปร) ในตารางความจริงออกเป็น 2 กลุ่ม คือกลุ่มที่ต่อ
อยู่กับขา Select Input ได้แก่ และกลุ่มที่เหลือได้แก่
|
|
ตารางความจริงมี 8 สถานะ คือ 0 ถึง 7 ส่วน MUX มี 4 สถานะ คือ 0 ถึง 3 จัดกลุ่มตารางความจริงให้มีสถานะตรงกับ MUX คือ 4 กลุ่มได้แก่ = 00,
= 10 และ = 11 หาสมการเอาต์พุต Y ของแต่ละกลุ่ม โดยพิจารณาเฉพาะตัวแปรที่ไม่ได้ต่อกับขา Select Input ได้แก่ เมื่อได้สมการ
ของแต่ละกลุ่ม นำไปเปรียบเทียบกับคุณสมบัติของ MUX เพื่อหาสมการ และ ดังนี้
|
นำค่าที่ได้คือ ไปเขียนเพิ่มลงในวงจร MUX จะได้วงจรดังรูป
|
วิธีที่ 2 ใช้สมการลอจิก
โดยการจัดรูปฟอร์มสมการลอจิกที่โจทย์กำหนดให้ตรงกับสมการของ MUX
|
จัดรูปสมการ (2) ให้ตรงกับรูปฟอร์มสมการ MUX (สมการ (1))
เปรียบเทียบสมการ (1) กับ (3) จะได้ คำตอบจะได้เหมือนกับกรณีใช้ตารางความจริงวิธีที่ 1
|
วิธีที่ 3 โดยใช้ KM
จาก f ( เขียนลงใน KM ได้ดังนี้
แบ่งพื้นที่ KM ให้ตรงกับคุณสมบัติของ MUX หาสมการลอจิกของพื้นที่แต่ละส่วน โดยพิจารณาเฉพาะตัวแปรที่ไม่ได้ต่อกับขา Select Input
ในที่นี้คือตัวแปร เนื่องจาก MUX มี 4 สถานะ ดังนั้นจึงแบ่งพื้นที่ KM เป็น 4 ส่วน (2 ช่อง ต่อ 1 ส่วน) ตามคุณสมบัติของ MUX ดังนี้
|
|
คำตอบที่ได้จะเหมือนกับวิธีที่ 1 และ2 วิธี KM เป็นวิธีที่นิยมนำมาใช้งานมากกว่าวิธีอื่น เพราะหาคำตอบได้เร็วกว่าวิธีอื่น การใช้วิธี KM สามารถ
ดัดแปลงให้ง่ายขึ้น โดยการแบ่งพื้นที่ KM ออกเป็นส่วนๆ เท่ากับจำนวนขา Data Input ของ MUX (จำนวนขา Data Input เท่ากับจำนวนสถานะ
ของ MUX) จะได้ว่า
|
|
นำพื้นที่แต่ละส่วนของ KM ไปหาสมการลอจิก โดยพิจารณาเฉพาะตัวแปรที่ไม่ได้ต่อกับขา Select Input ของ MUX เท่านั้น จะได้เป็นสมการลอจิก
ของขา Data Input แต่ละขาซึ่งมีการนับลำดับเช่นเดียวกับ KM
(ข) ใช้ไอซีเบอร์ 74153 4 : 1 MUX 2 ตัว ต่อเป็น 8 : 1 MUX ดังรูปวงจร
อินพุต ต่อกับขา , ต่อกับขา , ต่อกับขา ใช้วิธี KM หาสมการลอจิกที่จะจ่ายให้ขา Data Input ของ MUX
|
|
นำพื้นที่แต่ละช่องไปหาสมการลอจิก จะได้สมการขา ถึง เรียงลำดับเหมือนการเรียงลำดับช่องของ KM
<< Go To Top
|
12.3 การออกแบบวงจร Multiplexer ด้วย VHDL
เราสามารถออกแบบวงจร Multiplexer ด้วยภาษา VHDL ได้จากโครงสร้างของวงจร โดยตัวอย่างต่อไปนี้ออกแบบวงจร
4-line-to-1-line Multiplexer
|
-------------------------------------------------
-- VHDL code for 4:1 multiplexer
--
-- Multiplexer is a device to select different
-- inputs to outputs. we use 3 bits vector to
-- describe its I/O ports
-------------------------------------------------
library ieee;
Use ieee.std_logic_1164.all;
-------------------------------------------------
Entity Mux is
Port( I3: in std_logic_vector(2 downto 0);
I2: in std_logic_vector(2 downto 0);
I1: in std_logic_vector(2 downto 0);
I0: in std_logic_vector(2 downto 0);
S: in std_logic_vector(1 downto 0);
O: out std_logic_vector(2 downto 0));
End Mux;
------------------------------------------------
Architecture behv1 of Mux is
Begin
Process(I3,I2,I1,I0,S)
Begin
-- use case statement
Case S is
when "00" => O <= I0;
when "01" => O <= I1;
when "10" => O <= I2;
when "11" => O <= I3;
when others => O <= "ZZZ";
End Case;
End Process;
End behv1;
Architecture behv2 of Mux is
Begin
-- use when.. else statement
O <= I0 when S="00" else
I1 when S="01" else
I2 when S="10" else
I3 when S="11" else
"ZZZ";
End behv2;
-------------------------------------------------
|
รูปที่ 12.16 แสดงการออกแบบวงจร 4-line-to-1-line Multiplexer ด้วยภาษา VHDL
<< Go To Top
|
12.4 การออกแบบวงจร Demultiplexer
วงจรดีมัลติเพล็กซ์ (Demultiplexer) หรือ ดีมักซ์ (DMUX) หรือวงจรกระจายข้อมูล (DataDistributor) เป็นวงจรที่มี
คุณสมบัติตรงข้ามกับ MUXทำหน้าที่กระจายข้อมูล (ขณะที่ MUX ทำหน้าที่เลือกข้อมูล) มี Data Input เพียง 1 อินพุตข้อมูล
จาก Data Input จะส่งไปออกที่เอาต์พุตใดเอาต์พุตหนึ่งโดยการควบคุมที่ Select Input ไอซีชนิดนี้นอกจากจะทำหน้าที่เป็น
DMUX แล้วยังใช้เป็นวงจรถอดรหัส (Decoder) ได้อีกด้วย บางครั้งจึงเรียกไอซีชนิดนี้ว่า Decoder/Demultiplexer
|
รูปที่ 12.17 แสดงโครงสร้างและการทำงานของ DMUX
|
จากลักษณะของ DMUX รูปที่ 12.17 ประกอบด้วย n เอาต์พุต ซึ่งโดยปกติเอาต์พุตจะเป็นแบบ Active Low จำนวน Select Input เท่ากับ
m อินพุต และจำนวน Data Input มี เพียง 1 อินพุตความสัมพันธ์ระหว่างจำนวนเอาต์พุตกับจำนวน Select Input คือ
ขนาดของ DMUX กำหนดเป็น “1 : จำนวนเอาต์พุต” หรือ “1-to-จำนานเอาต์พุต” หรือ“1-line-to-จำนวนเอาต์พุต-line”
|
12.4.1 วงจรดีมัลติเพล็กซ์ เข้า 1 ออก 4
การควบคุมให้ข้อมูลอินพุตเพียงอินพุตเดียวออกไปทางเอาต์พุตตำแหน่งใดๆ สามารถทำได้โดยการควบคุมตำแหน่งข้อมูล (Address)
ด้วยขาซีเล็ค (select) ดังแสดงในแผนภาพในรูปที่ 12.18
|
รูปที่ 12.18 แสดงแผนภาพกรอบและสวิตซ์เปรียบเทียบดีมัลติเพล็กซ์ ขนาดเข้า 1 ออก 4
|
วงจรดีมัลติเพล็กซ์ที่ใช้งานจริง สำหรับดีมัลติเพล็กซ์ขนาดเข้า 1 ออก 4 คือ 1-1ine-to-4-line Demultiplexer เบอร์ 74155 และ 74156
หรือเรียกอีกชื่อหนึ่งว่า 2-1ine-to-4-line Decoder เมื่อเป็นดีมัลติเพล็กซ์จะมีขนาดเข้า 1 ออก 4 จำนวน 2 ชุด แต่ละชุดประกอบไปด้วย อินพุต
1 อินพุต (Data, C) และมีขาชีเล็ค (A และ B) ใช้ร่วมกัน เอาต์พุตของแต่ละชุดมี 4 เอาต์พุต คือ Y0, Y1, Y2, Y3 มีขาควบคุมคือขาสโตรบ
(Strobe, G) เมื่อต้องการให้วงจรดีมัลติเพล็กซ์ทำงานได้ต้องควบคุมขาสโตรบ (G) ให้ได้รับลอจิก “L” เมื่อเลือกอินพุตซีเล็ค A และ B ให้มีลอจิก “L”
ทั้งคู่ เอาต์พุตจะออกที่ Y0เมื่อเลือกอินพุตซีเล็ค A และ B ให้เป็น “L” และ “H” เอาต์พุตจะออกที่ Y1 เมื่อเลือก A และ B ให้เป็น “H” และ “L” เอาต์พุต
จะออกที่ Y2 และเมื่อให้ A และ B เป็น “H” ทั้งสองอินพุต เอาต์พุตจะออกที่ Y3 โดยที่ลอจิกเอาต์พุตจะมีสภาวะตรงกันข้ามกับอินพุต (ถ้าอินพุตเป็น “H”
เอาต์พุตได้ “L”) แต่ถ้าใช้ดีมัลติเพล็กซ์ชุดที่ 2 จะได้ลอจิกเอาต์พุตตรงกันกับอินพุต (อินพุตเป็น “H” เอาต์พุตได้ “H”) โดยการทำงานเหมือนกัน ลักษณะ
ของวงจรภายในของ 74155 แสดงในรูปที่ 12.19 (ก) และตารางความจริงแสดงการทำงาน แสดงในรูปที่ 12.19 (ข)
|
รูปที่ 12.19 แสดงวงจรภายในและตารางความจริงของ 1-line-to-4-line Demultiplexer เบอร์ 74155
|
12.4.2 วงจรดีมัลติเพล็กซ์ เข้า 1 ออก 8
เป็น DMUX ที่มีจำนวน Data Input เท่ากับ 1 อินพุต จำนวนเอาต์พุต 8 เอาต์พุต และจำนวนSelect Input เท่ากับ 3 อินพุต
แสดงดังรูปที่ 12.20
|
รูปที่ 12.20 แสดง DMUX ขนาด 1 : 8
|
จากตารางความจริงเขียนสมการลอจิกได้ดังนี้
กรณีมีเอาต์พุต n เอาต์พุตเขียนสมการลอจิกได้เป็น
จากสมการลอจิกนำไปเขียนวงจรลอจิกได้ดังรูปที่ 12.21
|
รูปที่ 12.21 แสดงวงจรลอจิกของ DMUX ขนาด 1 : 8
|
วงจรดีมัลติเพล็กซ์ที่มีขนาดใหญ่ ขนาดเข้า 1 ออก 8 (1-1ine-to-8-line Demultiplexer) สามารถใช้ดีมัลติเพล็กซ์เบอร์ 74155
(1-1ine-to-4-1ine) สร้างแทนได้ดังวงจรในรูปที่ 12.22 โดยต้องให้มีขาอินพุตซีเล็ค 3 ขา ในรูปคือ A, B และขา C มาจากขาสโตรบ
ของ 1G และ 2G โดยต่ออินเวอร์เตอร์ไห้กับขา 2G และต้องทำให้ขาข้อมูลเข้า (Data Input) มีเพียงขาเดียวโดยต่อ Data 1C และ 2C
เข้าด้วยกัน มีอินเวอร์เตอร์ต่อเข้าขา 2C และมีเอาต์พุต 8 เอาต์พุต คือ 1Y0-1Y3 และ 2Y0-2Y3 ดังแสดงในรูปที่ 12.22
|
รูปที่ 12.22 การสร้าง 1-line-to-8-line ดีมัลติเพล็กซ์ด้วย 74155 (Dual 1-line-to-4-line)
|
รูปที่ 12.23 แสดงสัญลักษณ์ไอซีเบอร์ 74138 1 : 8 MUX
|
74138 เป็น DMUX ที่มีเอาต์พุตเป็นแบบ Active Low มี Data Input 3 ขา เป็นแบบ Active High 1 ขา คือ G1 และเป็นแบบ Active Low
2 ขา คือ G2A, G2B ถ้าใช้ขา G1 เป็น Data Input (G2A, G2B ต่อกับลอจิก 0) จะได้เอาต์พุต Y ตรงข้ามกับ Data Input ถ้านำขา G2A หรือ G2B
เพียงขาใ ดขาหนึ่งไปใช้เป็น Data Input อีกขาต้องต่อกับลอจิก 0 (G1 ต่อกับลอจิก 1) จะได้เอาต์พุตเหมือนกับData Input
สมการลอจิกของ 74138 คือ เมื่อ i = 0 ,
|
รูปที่ 12.24 แสดงการนำไอซี เบอร์ 74138 1 : 8 DMUX มาต่อเป็น 1 : 16 DMUX
|
12.4.3 วงจรดีมัลติเพล็กซ์ เข้า 1 ออก 16
สำหรับดีมัลติเพล็กซ์ขนาดเข้า 1 ออก 16 (1-1ine-to-16-1ine Demultiplexer) เช่น วงจรรวมทีทีแอลเบอร์ 74154 มีขาข้อมูลเข้า
(Data Input) คือขา G2 และขาควบคุมคือขาอีนาเบิล คือขา G1 มีขากำหนดตำแหน่งของข้อมูลเอาต์พุตที่จะแสดงผล 4 ขา คือ (A, B, C
และ D) เพื่อกำหนดแอดเดรส 16 ตำแหน่ง วงจรจะทำงานได้เมื่ออีนาเบิล (G1) ได้รับลอจิก “L” เท่านั้น ข้อมูลอินพุตที่ป้อนเข้า G2 จะปรากฏ
ที่เอาต์พุตครั้งละ 1 ตำแหน่ง จากการเลือกแอดเดรสที่ซีเล็คอินพุต (A, B, C และ D) เช่น เมื่อให้ A, B, C และ D เป็น (L L L L) ข้อมูลที่ G2
จะไปปรากฏที่เอาต์พุต 0 (เอาต์พุตทั้งหมดมี 16 ขา คือ 0-15) เป็นต้นสำหรับวงจรภายในของดีมัลติเพล็กซ์เบอร์ 74154 แสดงในรูปที่ 12.25
(ก) และตารางความจริงแสดงการทำงานในรูปที่ 12.25 (ข)
|
รูปที่ 12.25 แสดงวงจรภายในและตารางความจรองของดีมัลติเพล็กซ์เบอร์ 74154
|
รูปที่ 12.25 (ต่อ)
<< Go To Top
|
12.5 การขยายเอาต์พุตของดีมัลติเพล็กซ์
การขยายเอาต์พุตทำได้โดยใช้ดีมัลติเพล็กซ์มากกว่า 1 ตัวมาตอร่วมกัน เช่น ต้องการสร้างวงจรดีมัลติเพล็กซ์ขนาดเข้า 1 ออก 32
(1-line-to-32-line Demultiplexer) สามารถทำได้โดยใช้ดีมัลติเพล็กซ์ขนาดเข้า 1 ออก 16 จำนวน 2 ตัวต่อร่วมกัน เช่น เบอร์
74154 ดังรูปที่ 12.26 โดยตัวที่ 1 แสดงเอาต์พุตที่ 0-15 และตัวที่ 2 แสดงเอาต์พุตที่ 16-31 (จะได้เอาต์พุต 32 บิต) เมื่อเอาต์พุตมี
32 บิต จะต้องกำหนดขาอินพุตซีเล็คให้ได้ 5 อินพุต (25 = 32) ทำได้โดยใช้ขาซีเล็คเดิมที่มีอยู่แล้ว 4 ขาคือ A, B, C และ D ต่อขนานกัน
ทั้งสองตัว และใช้ขาอีนาเบิล G1 ของทั้ง 2 ตัวต่อร่วมกันเป็นขาซีเล็คขาที่ 5 คือขา E โดยที่ G1 ของตัวที่ 2 ต้องต่ออินเวอร์เตอร์
สำหรับขาข้อมูลเข้าต้องมีขาเดียว ทำได้โดยต่อร่วมกันระหว่างขา G2 ของทั้ง 2 ตัว ดังรูปที่ 12.26
|
รูปที่ 12.26 การขยายเอาต์พุตของดีมัลติเพล็กซ์ให้มีขนาด 1-line-to-32-line โดยใช้ 747154
<< Go To Top
|
12.6 การออกแบบวงจร Demultiplexer ด้วย VHDL
-------------------------------------------------
-- VHDL code for 1:4 Demultiplexer
--
-- Demultiplexer is a device to select different
-- inputs to outputs. we use 3 bits vector to
-- describe its I/O ports
-------------------------------------------------
library ieee;
Use ieee.std_logic_1164.all;
-------------------------------------------------
Entity Demux is
Port( I: in std_logic_vector(2 downto 0);
S: in std_logic_vector(1 downto 0);
O0: out std_logic_vector(2 downto 0);
O1: out std_logic_vector(2 downto 0);
O2: out std_logic_vector(2 downto 0);
O3: out std_logic_vector(2 downto 0));
End Demux;
------------------------------------------------
Architecture behv1 of Demux is
Begin
Process(I,S)
Begin
-- use case statement
Case S is
when "00" => O0 <= I;
when "01" => O1 <= I;
when "10" => O2 <= I;
when "11" => O3 <= I;
End Case;
End Process;
End behv1;
Architecture behv2 of Demux is
Begin
-- use when.. else statement
when S="00" I => O0 else
S="01" I => O1 else
S="10" I => O2 else
S="11" I => O3 else
"ZZZ";
End behv2;
-------------------------------------------------
|
รูปที่ 12.27 แสดงการออกแบบวงจร 1-line-to-4-line Demultiplexr ด้วยภาษา VHDL
|
ไม่มีความคิดเห็น:
แสดงความคิดเห็น