Digital Transmission
ข้อมูลจะเดินทางในสายไม่ได้ ถ้าไม่แปลงเป็น “สัญญาณ” ก่อน — บทนี้ตอบว่าแปลงยังไง (sampling, modulation, line coding) ช่องสัญญาณทำร้ายสัญญาณยังไง (attenuation, distortion, noise) และสุดท้ายส่งได้เร็วสุดเท่าไร (Nyquist, Shannon)
หัวข้อ 7.10 Channel Capacity คือข้อที่คุ้มที่สุดในฉบับ — แทนสูตรสองสูตรก็จบ ไม่ต้องวาดอะไร ข้อสอบเก่าให้ B = 2 MHz, 16 ระดับสัญญาณ, SNR = 20 dB และ 40 dB แล้วถามอัตราการส่งสูงสุดตาม Nyquist และ Shannon
→ ฝึกจริงที่ ข้อสอบเก่า Q1 · Nyquist & Shannon Capacity และเล่นเครื่องคิดเลขในหัวข้อ 7.10 ของหน้านี้
การสื่อสารไม่ว่าจะเป็นภาพ เสียง หรือข้อความ เราเรียกรวม ๆ ว่า ข้อมูล (data) เมื่อต้องการส่งไปในช่องทางสื่อสาร ข้อมูลจะถูกแปลงให้อยู่ในรูปของ สัญญาณ (signals) ซึ่งอาจเป็นสัญญาณไฟฟ้าเพื่อส่งผ่านตัวนำ หรือเป็นแสงในเส้นใยแก้วนำแสง
ภาคส่งทำหน้าที่แปลงข้อมูลให้เหมาะกับช่องสัญญาณ ขั้นตอนนี้เรียกว่า การเข้ารหัส (encoding) เมื่อสัญญาณถูกส่งเข้าช่องสัญญาณ คุณสมบัติของช่องสัญญาณอาจทำให้เกิดการลดทอนหรือผิดเพี้ยน ภาครับเมื่อได้รับสัญญาณจะทำงานตรงข้ามคือ ถอดรหัส (decoding) เพื่อส่งข้อมูลไปยังปลายทางต่อไป
บทนี้จริง ๆ คือ 4 ก้อน เท่านั้น — ก้อนที่ 1 การแปลงสัญญาณ 4 ทิศทาง (7.1–7.5: แอนะล็อก→ดิจิทัล, ดิจิทัล→แอนะล็อก, ดิจิทัล→ดิจิทัล และตัวอย่างจริงบนอีเทอร์เน็ต) · ก้อนที่ 2 ช่องสัญญาณทำร้ายสัญญาณยังไง (7.6–7.8) · ก้อนที่ 3 เพดานความเร็ว (7.9–7.10 = ข้อสอบ) · ก้อนที่ 4 คำศัพท์ baud vs bps (7.11)
7.1คุณลักษณะพื้นฐานของสัญญาณ
ข้อมูลที่ผู้ใช้ต้องการส่งอาจอยู่ในรูปของแอนะล็อกหรือดิจิทัล
ข้อมูลแอนะล็อก
ข้อมูลที่เปลี่ยนแปลงอย่างต่อเนื่อง เช่น สัญญาณภาพหรือเสียง
ข้อมูลดิจิทัล
ข้อมูลที่เป็นระดับของสัญญาณ เช่น ข้อมูลจากคอมพิวเตอร์ (ลอจิก 0 ที่ 0 โวลต์ และลอจิก 1 ที่ 5 โวลต์) หรือข้อมูลที่ได้จากการแปลงสัญญาณแอนะล็อก
ไม่ว่าจะเป็นรูปแบบใด ข้อมูลเหล่านั้นต้องถูกแปลงให้อยู่ในลักษณะสัญญาณไฟฟ้าหรือสัญญาณแสงตามความเหมาะสมของช่องสัญญาณเสมอ
สัญญาณแอนะล็อก — คลื่นซายน์ (Sine wave)
สัญญาณแอนะล็อกพื้นฐานที่สุดคือ คลื่นซายน์ มีคุณลักษณะพื้นฐาน 3 อย่าง:
| คุณลักษณะ | ความหมาย | หน่วย |
|---|---|---|
| แอมพลิจูด (amplitude) | ขนาดของสัญญาณ | โวลต์ (Volt) · แอมแปร์ (Ampere) · วัตต์ (Watt) — ขึ้นกับประเภทของสัญญาณ |
| ความถี่ (frequency) | จำนวนรอบใน 1 วินาที · ส่วนกลับของความถี่คือ คาบ (period) | เฮิรตซ์ (Hertz) |
| เฟส (phase) | ตำแหน่งของสัญญาณเทียบกับตำแหน่งศูนย์ (เช่น 0, 90, 180, 270 องศา) | องศา หรือ เรเดียน (radians) |
เฟส — ดูจากจุดที่คลื่น “เริ่มต้น”
เฟสบอกว่าคลื่นเลื่อนไปจากตำแหน่งศูนย์เท่าไร วิธีอ่านที่เร็วที่สุดคือดูว่า ณ เวลา 0 คลื่นอยู่ตรงไหนของรอบ:
หนึ่งรอบเต็ม = 360° = 2π เรเดียน ดังนั้น 90° = ¼ รอบ · 180° = ½ รอบ = π · 270° = ¾ รอบ — จำสามค่านี้ไว้จะอ่านรูป (b)(c)(d) ออกทันที และใช้ต่อได้เลยตอนอ่าน constellation ของ QPSK ในหัวข้อ 7.3 ที่ใช้เฟสเป็น π/4, 3π/4, −π/4, −3π/4
สัญญาณดิจิทัล
สัญญาณดิจิทัลเป็นสัญญาณที่มีระดับไม่ต่อเนื่องกัน อาจเป็นสองระดับหรือมากกว่า สัญญาณดิจิทัลสองระดับเรียกว่า สัญญาณไบนารี (binary signal) โดยลอจิก 1 แทนด้วยรูปสัญญาณที่เกิดขึ้น ส่วนลอจิก 0 เป็นส่วนที่ไม่มีสัญญาณใด ๆ
1 0 0 1 1 0 1 0 · สังเกตว่าช่องของบิต 0 กว้างเท่ากับช่องของบิต 1 แค่ไม่มีสัญญาณเท่านั้น)ถ้าให้ช่วงเวลาที่เกิดบิต 0 หรือบิต 1 เป็น T เราเรียกค่านี้ว่า ช่วงเวลาของบิต (bit interval) ได้ว่า:
| สัญลักษณ์ | ความหมาย | ตัวอย่าง |
|---|---|---|
T | ช่วงเวลาของบิต (bit interval) — เวลาที่ใช้ต่อ 1 บิต | 1 µs |
R | บิตเรท / data rate — จำนวนบิตต่อวินาที | 1/(1×10−6) = 1 Mbps |
7.2การแทนสัญญาณแอนะล็อกในรูปของสัญญาณดิจิทัล
ข้อมูลประเภทวิดีโอ คลิปภาพและคลิปเสียง (โปรแกรมประยุกต์แบบมัลติมีเดีย) อยู่ในรูปแบบของสัญญาณแอนะล็อก ไม่สามารถส่งในช่องสัญญาณดิจิทัลได้โดยตรง หากต้องการส่งในรูปของดิจิทัลต้องผ่านขบวนการที่เรียกว่า ดิจิไตเซชัน (digitization)
อุปกรณ์ที่ทำขบวนการนี้ พร้อมทั้งแปลงข้อมูลจากสัญญาณดิจิทัลกลับอยู่ในรูปเดิม เรียกว่า coder-decoder หรือเรียกสั้น ๆ ว่า โคเดก (codec)
- Sampling — สุ่มค่าสัญญาณที่เวลาต่าง ๆ
- Quantization (ควานไตเซชัน) — แบ่งแอมพลิจูดของสัญญาณออกเป็นช่องเท่า ๆ กันตามระดับของสัญญาณ แล้วกำหนดค่าให้แต่ละระดับเป็นจำนวนเต็ม
- Encoding — แปลงจำนวนเต็มแต่ละค่าให้อยู่ในเลขฐานสอง (ไบนารี)
ผลลัพธ์คือเราได้ค่าดิจิทัลชุดหนึ่งแทนสัญญาณแอนะล็อกที่เกิดขึ้น
ตัวอย่าง 7.1 (จากตำรา) — สัญญาณแอนะล็อกที่เวลา 0 ถึง 14 วินาที สมมุติแรงดันสูงสุดอยู่ที่ 7 โวลต์
- แบ่งเป็น 4 ระดับ → ใช้ไบนารีขนาด 2 บิต (22 = 4)
- แบ่งเป็น 8 ระดับ → ใช้ไบนารีขนาด 3 บิต (23 = 8)
- อยากละเอียดขึ้น แบ่งเป็น 16 ระดับ → ใช้ 4 บิต
ความถี่ของการสุ่มต้องไม่น้อยกว่าสองเท่า
สิ่งที่ต้องเน้นคือ ความถี่ของการสุ่มสัญญาณ เพื่อให้สามารถแปลงข้อมูลดิจิทัลกลับเป็นสัญญาณแอนะล็อกเดิมได้อย่างถูกต้อง การสุ่มของสัญญาณจะต้องไม่น้อยกว่าสองเท่าของความถี่สูงสุดของสัญญาณ หรือเป็นไปตาม Nyquist theorem (รายละเอียดในหัวข้อ 7.10.1)
n บิต ≠ n ระดับ — 3 บิตให้ 8 ระดับ ไม่ใช่ 3 ระดับ และ 16 ระดับใช้ 4 บิต ไม่ใช่ 16 บิต ความสัมพันธ์คือ L = 2n เสมอ · อีกจุดคือสับสนระหว่าง จำนวนบิต (ความละเอียดของแกนตั้ง = แอมพลิจูด) กับ อัตราการสุ่ม (ความละเอียดของแกนนอน = เวลา) — เพิ่มบิตแก้ quantization error, เพิ่มอัตราสุ่มแก้การกู้รูปคลื่นไม่ได้ คนละเรื่องกัน
7.3การแทนสัญญาณดิจิทัลด้วยสัญญาณแอนะล็อก
เมื่อแปลงสัญญาณแอนะล็อกเป็นดิจิทัลได้แล้ว จะส่งไปในช่องสัญญาณอย่างไร? วิธีที่ง่ายที่สุดคือนำสัญญาณที่ต้องการส่งไปมอดูเลตด้วยคลื่นซายน์ เพื่อให้เกิดการเปลี่ยนแปลงเชิงแอมพลิจูด เฟส หรือความถี่ ตามรูปแบบของสัญญาณที่ต้องการส่ง สมมุติให้สัญญาณซายน์เป็นคลื่นพาห์ (carrier) จะได้
| สัญลักษณ์ | ความหมาย | ถ้าเปลี่ยนตัวนี้จะได้ |
|---|---|---|
Ac(t) | แอมพลิจูดของคลื่นพาห์ ณ เวลา t | AM · ASK |
fc = ωc/2π | ความถี่ของคลื่นพาห์ | FM · FSK |
φ(t) | เฟสของสัญญาณคลื่นพาห์ | PM · PSK |
กรณีข้อมูลเป็นแอนะล็อก — AM / FM / PM
- Amplitude Modulation (AM) — เปลี่ยนตามขนาดของข้อมูล ถ้าข้อมูลมีแอมพลิจูดสูงขึ้น สัญญาณที่ส่งจะมีแอมพลิจูดสูงตามไปด้วย
- Frequency Modulation (FM) — เปลี่ยนเชิงความถี่ตามข้อมูล แอมพลิจูดข้อมูลสูงขึ้น ความถี่สูงขึ้น แอมพลิจูดลดลง ความถี่ต่ำลง
- Phase Modulation (PM) — อาศัยการเปลี่ยนเฟสของสัญญาณที่ส่ง
กรณีข้อมูลเป็นดิจิทัล — ASK / FSK / PSK
เนื่องจากสัญญาณจะอยู่ในรูปของลอจิก 0 หรือ 1 เท่านั้น การมอดูเลตจึงกลายเป็นการ “เลือกค่า” แค่ไม่กี่ค่า
| วิธี | เปลี่ยนอะไร | ข้อดี | ข้อเสีย |
|---|---|---|---|
| ASK (Amplitude Shift Keying) = On-Off keying (OOK) |
แอมพลิจูดอย่างเดียว — เสมือนเปิด-ปิดให้สัญญาณผ่านเมื่อลอจิกเป็น 1 และไม่ให้ผ่านเมื่อเป็น 0 (ความถี่และเฟสคงที่) | ค่อนข้างง่าย | เสี่ยงต่อสัญญาณรบกวนขณะที่ลอจิกเป็น 0 เนื่องจากผลของสนามแม่เหล็กไฟฟ้า |
| FSK (Frequency Shift Keying) | ส่งที่สองความถี่ ขึ้นกับว่าขณะนั้นเป็นลอจิก 1 หรือ 0 (แอมพลิจูดและเฟสไม่เปลี่ยน) | กำจัดปัญหาสัญญาณรบกวนที่เกิดกับ ASK ได้ | มีผลต่อการใช้แบนด์วิดท์ของช่องสัญญาณ |
| PSK (Phase Shift Keying) | เปลี่ยนเฟสของสัญญาณ | ไม่มีผลของสัญญาณรบกวนเหมือน ASK และไม่สิ้นเปลืองแบนด์วิดท์เหมือน FSK | ซับซ้อนกว่าสองวิธีแรก |
ภาพเคลื่อนไหวด้านบนให้เราเปลี่ยนสตริงบิตเองเพื่อดูว่ากฎแต่ละแบบทำงานอย่างไร ส่วนรูปข้างล่างนี้คือรูปเดียวกันในตำรา ที่ใช้ข้อมูลไบนารี 101 เป็นตัวอย่างมาตรฐาน — ถ้าข้อสอบให้วาด ให้วาดหน้าตาแบบนี้
101) · จุดที่ต้องสังเกต: ASK ช่วงบิต 0 “เงียบ” จึงเป็นช่วงที่ noise เข้าแทรกได้ง่ายที่สุด · FSK มีคลื่นตลอดแต่เปลี่ยนความถี่ · PSK แอมพลิจูดกับความถี่เท่าเดิมทั้งเส้น เปลี่ยนแค่ “จังหวะเริ่ม” ของคลื่นตรงรอยต่อส่งทีละหลายบิต — BPSK, QPSK, 8-PSK
เพื่อให้การส่งข้อมูลมีประสิทธิภาพมากขึ้น แทนที่จะส่งทีละสองเฟส เรายังสามารถส่งในลักษณะที่เป็น 4 หรือ 8 เฟส ทำให้ส่งข้อมูลทีละ 2 บิต หรือ 3 บิตตามลำดับ เรียกว่าเป็นการส่งทีละ symbol
- BPSK (Binary PSK) — 2 เฟส · 1 บิต/symbol · เฟส 0 = ลอจิก 1, เฟส 180° (π) = ลอจิก 0 (สมมุติแอมพลิจูดเป็นหนึ่ง)
- QPSK (Quadrature PSK) = 4-PSK — 4 เฟส · 2 บิต/symbol
- 8-PSK — 8 เฟส · 3 บิต/symbol
แผนภาพที่แสดงตำแหน่งเฟสของแต่ละ symbol เรียกว่า phase-state diagram หรือ Constellation
| ข้อมูล | เฟส |
|---|---|
00 | −3π/4 |
01 | −π/4 |
10 | 3π/4 |
11 | π/4 |
ตารางที่ 7.1 — ความสัมพันธ์ของข้อมูลที่ส่งกับเฟสของ QPSK
QAM — เอา ASK กับ PSK มารวมกัน
เราสามารถส่งข้อมูลด้วยการใช้การมอดูเลต ASK และ PSK ร่วมกัน ทำให้เกิดการมอดูเลชันที่เรียกว่า Quadrature Amplitude Modulation (QAM) เทคนิคนี้ทำให้เกิดการใช้งานในเชิงเฟสอีกหลายรูปแบบ เช่น 2, 4, 8, 16 หรือ 64 — เช่น 16-QAM หรือ 64-QAM ซึ่งนิยมใช้ในการส่งข้อมูลของ WLAN
เพราะการใช้แอมพลิจูดมีความเสี่ยงต่อสัญญาณรบกวนมากกว่าการใช้เฟส ดังนั้นการใช้เฟสเพื่อเปลี่ยนข้อมูลที่ส่งจึงนิยมมากกว่าการใช้ระดับแอมพลิจูด
ตารางที่ 7.2 — bits/symbol กับ bit rate
| รูปแบบการมอดูเลชัน | bits/symbol | symbol rate (baud) | bit rate (bps) |
|---|---|---|---|
| ASK, FSK, PSK | 1 | N | N |
| 4-PSK, 4-QAM | 2 | N | 2N |
| 8-PSK, 8-QAM | 3 | N | 3N |
| 16-QAM | 4 | N | 4N |
| 32-QAM | 5 | N | 5N |
| 64-QAM | 6 | N | 6N |
| 128-QAM | 7 | N | 7N |
| 256-QAM | 8 | N | 8N |
ตารางที่ 7.2 — เปรียบเทียบอัตราการส่งข้อมูลของ QAM กับวิธีการอื่น
ตัวอย่างจากตำรา
- ส่งด้วย ASK ที่ baud rate (N) =
1200 Hz→ ส่งได้ที่ความเร็ว 1200 bps - ส่งด้วย 16-QAM (4 bits/symbol) ที่ baud rate เดิม → ส่งได้ที่ความเร็ว 4800 bps (4N)
แม้ดูเหมือนว่าเราส่งข้อมูลได้สูงขึ้นเรื่อย ๆ ด้วยการเพิ่ม bits/symbol แต่ด้วยข้อจำกัดของสัญญาณรบกวน อัตราความผิดพลาดที่อาจสูงขึ้น พลังงานที่ใช้ และความสามารถของเครื่องรับ-เครื่องส่ง ทำให้เราไม่สามารถเพิ่ม bits/symbol เท่าที่ต้องการได้เสมอไป
7.4การแทนข้อมูลดิจิทัลด้วยสัญญาณดิจิทัล
นอกเหนือจากการแทนข้อมูลด้วยแอนะล็อกเพื่อส่งในช่องสัญญาณแล้ว การแทนข้อมูลดิจิทัลด้วยสัญญาณดิจิทัลเป็นการเข้ารหัสบิตข้อมูลขนาด 1, 2 หรือ n บิต ให้อยู่ในสัญญาณดิจิทัลที่เหมาะสมเพื่อส่งในช่องสัญญาณ
ข้อดีข้อที่ 1
สามารถแทรกข้อมูลที่เกี่ยวกับการประสานเวลา (timing information) ได้ระหว่างการสื่อสาร
ข้อดีข้อที่ 2
การเข้ารหัสบางแบบสามารถป้องกันสัญญาณรบกวนต่าง ๆ ได้ดีขึ้น
ในที่นี้พิจารณาการเข้ารหัสสัญญาณดิจิทัลสองแบบคือ line coding และ block coding
7.4.1Line Coding
Line Coding เป็นการเข้ารหัสบิตข้อมูลขนาด 1 บิตหรือมากกว่า เป็นสัญญาณดิจิทัลก่อนที่จะส่งไปในช่องสัญญาณ
| วิธี | กฎการเข้ารหัส | จุดเด่น / จุดอ่อน |
|---|---|---|
| Nonreturn-to-Zero (NRZ) Unipolar |
ลอจิก 1 = ระดับแรงดัน V · ลอจิก 0 = ระดับ 0 ดังเดิม |
ง่ายที่สุด · มีแต่แรงดันบวกจึงเรียกว่า Unipolar · กำลังเฉลี่ย = (1/2)V² + (1/2)0² = V²/2 |
| Polar NRZ | ลอจิก 1 = +V/2 · ลอจิก 0 = −V/2 |
มีประสิทธิภาพมากกว่า NRZ · กำลังเฉลี่ย = (1/2)(+V/2)² + (1/2)(−V/2)² = V²/4 (ครึ่งเดียวของ unipolar) |
| NRZ inverted (NRZ-I) | ลอจิก 1 = เปลี่ยนระดับสัญญาณ (transition) ณ จุดเริ่มต้นของแต่ละช่วงเวลา · ลอจิก 0 = ไม่เปลี่ยนระดับ |
พัฒนาขึ้นเพื่อแก้ปัญหาการซิงโครไนเซชันกรณีมีลอจิกเดียวกันติดกันจำนวนมาก |
| แมนเชสเตอร์ (Manchester) | ลอจิก 1 = เปลี่ยนระดับจาก A/2 ไป −A/2 ในทุกช่วงเวลาของแต่ละบิต · ลอจิก 0 = เปลี่ยนระดับจาก −A/2 ไป A/2 |
ทำ synchronization ง่ายขึ้น (มีการเปลี่ยนระดับกลางบิตทุกบิต) · ผลเสีย: ความเร็วของช่องสัญญาณต้องเป็นสองเท่าของข้อมูลเดิม ต้องการแบนด์วิดท์สูงขึ้น |
| ดิฟเฟอเรนเชียลแมนเชสเตอร์ Differential Manchester |
รวมวิธีของ Return-to-Zero (RZ) และ NRZ-I — จะเปลี่ยนระดับสัญญาณหากข้อมูลที่ตามมาเป็นลอจิก 0 แต่หากบิตถัดมาเป็นลอจิก 1 จะไม่เกิดการเปลี่ยนระดับ | มีการเปลี่ยนระดับกลางบิตเสมอ (ใช้เป็นนาฬิกา) และการตัดสินใจดูที่ “มี/ไม่มีการเปลี่ยนที่ขอบบิต” |
| mBnL | m = จำนวนบิตที่ใช้ · B = ข้อมูลเป็นแบบไบนารี · n = รูปแบบของสัญญาณ · L = จำนวนระดับของสัญญาณอักษรสองตัวแรกบอกรูปแบบของข้อมูล ส่วนที่เหลือบอกรูปแบบของสัญญาณ |
เช่น 2B1Q (two binary, one quaternary), 8B6T (eight binary, six ternary), 4D-PAM5 (four dimensional five-level pulse amplitude modulation), MLT-3 (multiline transmission, three level) |
รูปจากตำรา — ข้อมูลชุดเดียวกัน 010011101 เข้ารหัสได้ 4 หน้าตา
ตำราใช้สตริงบิตชุดเดียวกันคือ 010011101 วาดทุกวิธี เพื่อให้เทียบกันได้ตรง ๆ (ห้องทดลองด้านบนก็ตั้งค่าเริ่มต้นเป็นชุดนี้ กดปุ่ม “010011101 (ตำรา)” แล้วไล่ดูทีละแบบจะได้รูปเดียวกันเป๊ะ) วิธีอ่านรูปให้เร็ว: ดูที่กรอบสี่เหลี่ยมด้านบนซึ่งเขียนค่าบิตไว้ แล้วดูว่าเส้นสัญญาณในกรอบนั้นอยู่ระดับไหน / พลิกตรงไหน
1 = ระดับ +V · บิต 0 = ระดับศูนย์ ไม่ใช่ค่าลบ — นี่คือจุดที่ต่างจาก Polar NRZ ในรูปถัดไป และเป็นเหตุผลที่ Unipolar มีปัญหา DC component)
1 = +V/2 อยู่เหนือเส้นศูนย์ · บิต 0 = −V/2 อยู่ใต้เส้นศูนย์ · ไม่มีการพลิกกลางบิตเลย)
ตรวจรูปทีละขอบแล้วพบว่า ขอบระหว่างบิตตัวที่ 6 กับตัวที่ 7 (คือ 1 ตัวที่สองกับตัวที่สามของ 1 สามตัวติดกัน) มีการพลิกระดับที่ขอบ ทั้งที่บิตนั้นเป็น 1 จึงไม่ควรพลิก อีก 7 ขอบที่เหลือถูกต้องตามกฎทั้งหมด
ในข้อสอบให้ยึดกฎที่ตำราเขียนไว้เป็นตัวอักษร คือ “จะเปลี่ยนระดับของสัญญาณหากข้อมูลที่ตามมาเป็นลอจิก 0 แต่หากบิตถัดมาเป็นลอจิก 1 จะไม่เกิดการเปลี่ยนระดับ” — วาดตามกฎนี้ ผลที่ถูกของ 010011101 คือขอบที่พลิกมีแค่ 3 จุด ได้แก่ขอบหน้าบิตที่ 3, บิตที่ 4 และบิตที่ 8 (ทั้งสามตัวเป็น 0) เท่านั้น — บิตที่ 1 เป็น 0 ก็จริงแต่เป็นบิตแรกจึงไม่มีขอบก่อนหน้าให้พลิก · ส่วนกลางบิตนั้นพลิกครบทั้ง 9 บิต
ห้องทดลองด้านบน (กดไปสเต็ป “ดิฟเฟอเรนเชียลแมนเชสเตอร์”) วาดตามกฎที่ถูก ดังนั้นตั้งแต่บิตที่ 7 เป็นต้นไปรูปจะกลับหัวจากรูปในตำรา — ไม่ใช่บั๊ก แต่เป็นเพราะรูปในตำราพลิกเกินมาหนึ่งครั้งนั่นเอง
- Polar NRZ — อ่านที่ ระดับ · หนึ่งบิต = หนึ่งระดับคงที่
- NRZ-I — อ่านที่ การพลิกที่ขอบบิต · พลิก = 1, ไม่พลิก = 0
- แมนเชสเตอร์ — อ่านที่ ทิศของการพลิกกลางบิต · ลง = 1, ขึ้น = 0
- ดิฟเฟอเรนเชียลแมนเชสเตอร์ — กลางบิตพลิกเสมอ (ไม่ใช่ข้อมูล) แล้วอ่านที่ ขอบบิต · พลิก = 0, ไม่พลิก = 1
ตำราให้เหตุผลไว้ตรง ๆ ว่า — การใช้ bipolar มีจุดประสงค์เพื่อส่งข้อมูลในระยะไกล ให้ใช้แบนด์วิดท์คุ้มค่าที่สุด แต่ LAN เป็นการส่งข้อมูลในระยะทางที่สั้น การคำนึงถึงราคาของเครื่องลูกข่ายจึงสำคัญกว่าประสิทธิภาพของเน็ตเวิร์ก → เลือกวงจรที่ถูกและง่าย (แมนเชสเตอร์) แล้วยอมจ่ายด้วยแบนด์วิดท์แทน · สังเกตว่าพอขึ้นไปถึง Gigabit การจ่ายด้วยแบนด์วิดท์แพงเกินไป (ต้องใช้สาย 2 Gbps) ตำราจึงเปลี่ยนไปใช้ NRZ + 8B/10B ในหัวข้อ 7.5.3 — เหตุผลเดียวกัน แต่คนละสเกลก็ให้คำตอบคนละอย่าง
Manchester มีสองสำนัก — ตำราเล่มนี้ (และ IEEE 802.3) กำหนดว่า ลอจิก 1 = สูงลงต่ำ และ ลอจิก 0 = ต่ำขึ้นสูง แต่บางตำรา (G. E. Thomas) กลับด้านกันเป๊ะ ๆ ในข้อสอบวิชานี้ให้ยึดตามตำราเล่มนี้ — ถ้าไม่แน่ใจ ให้เขียนกำกับข้างรูปว่าใช้กฎอะไร มักได้คะแนน
อีกจุด: NRZ-I ดูที่ “มีการเปลี่ยน” ไม่ใช่ “ระดับสูง/ต่ำ” — เห็นบิต 1 แล้วต้องพลิกระดับ ไม่ใช่วาดให้สูงเสมอ และรูปจะกลับหัวได้ทั้งรูปถ้าเริ่มที่คนละระดับ ซึ่งถือว่าถูกทั้งคู่ ขอแค่กฎถูก
ในภาพเคลื่อนไหวด้านบนมีปุ่ม AMI (Bipolar) และ MLT-3 เพิ่มมาให้ลอง — ตำราเอ่ยชื่อ MLT-3 ไว้ในรายการ mBnL และในหัวข้อ 7.5.2 แต่ไม่ได้ให้กฎการวาดไว้ กฎที่ใช้ในภาพเคลื่อนไหวคือกฎมาตรฐานทั่วไป: AMI — บิต 0 อยู่ที่ระดับ 0 ส่วนบิต 1 สลับ +V, −V, +V, … · MLT-3 — บิต 0 ไม่เปลี่ยนระดับ ส่วนบิต 1 เลื่อนไปตามวง 0 → +V → 0 → −V → 0 ทำให้ต้องใช้บิต 1 ถึง 4 ตัว จึงจะครบหนึ่งรอบคลื่น ความถี่สัญญาณจึงเหลือเพียง 1/4 ของบิตเรท — นี่คือเหตุผลที่ตำราบอกว่า “MLT-3 มีการใช้แบนด์วิดท์ที่มีประสิทธิภาพ” ใน 100Base-TX
8B6T — เข้ารหัสเพื่อให้สาย Cat-3 วิ่ง 100 Mbps ได้
การเข้ารหัส 8B6T เป็นการเข้ารหัสที่น่าสนใจ เพราะทำให้สายสัญญาณ Cat-3 หรือดีกว่า รองรับการทำงานที่ 100 Mbps ได้
- ใช้ สามระดับแรงดัน (
+V,−Vหรือ0) ในการส่งข้อมูล - แปลงข้อมูลชุดละ 8 บิต (หนึ่งไบต์) เป็นชุดละ 6 บิตที่สามระดับของสัญญาณ (six ternary)
- มีข้อมูลอยู่
28 = 256รูปแบบ ในขณะที่มี36 = 729ลักษณะของสัญญาณ → มีสัญญาณที่ไม่ได้ใช้จำนวนมาก - ส่วนที่เหลือถูกใช้เพื่อทำซิงโครไนเซชัน การตรวจสอบข้อผิดพลาด และการทำ DC balance
| ข้อมูล (บิต) | ข้อมูลที่ถูกเข้ารหัส | ข้อมูล (บิต) | ข้อมูลที่เข้ารหัส |
|---|---|---|---|
0000 0000 | − + 0 0 − + | 1111 0000 | + 0 0 0 − + |
0000 0001 | 0 − + − + 0 | 1111 0001 | 0 + 0 − + 0 |
0000 0010 | 0 − + 0 − + | 1111 0010 | 0 + 0 0 − + |
| … | |||
1011 1010 | 0 + 0 − + − | ← ตัวอย่างในรูปที่ 7.15 | |
| … | |||
0000 1110 | + 0 − 0 + − | 1111 1110 | 0 0 + 0 + − |
0000 1111 | + 0 − − 0 + | 1111 1111 | 0 0 + − 0 + |
ตารางที่ 7.3 — ตารางตัวอย่างการเข้ารหัสแบบ 8B6T (บางส่วน)
ตำรายกแถว 1011 1010 มาวาดให้ดูเต็ม ๆ — รูปบน (a) คือข้อมูลต้นทาง 8 บิต ที่ยังเป็นสองระดับ (+ กับ −) ส่วนรูปล่าง (b) คือสิ่งที่ออกไปในสายจริง ๆ ซึ่งเหลือแค่ 6 ช่วงสัญญาณ แต่ใช้ สามระดับ (+V, 0, −V):
10111010) (b) ข้อมูลแบบ 6T (0 + 0 − + −) · จุดที่ต้องสังเกต: รูป (b) มีแค่ 6 ช่อง แต่ (a) มี 8 ช่อง — ข้อมูลเท่าเดิมแต่ใช้ช่วงสัญญาณน้อยลงนับจากรูป: ข้อมูล 8 บิต ถูกยัดลงใน 6 ช่วงสัญญาณ ดังนั้นบอดเรทที่ต้องใช้จริงคือ 100 Mbps × 6/8 = 75 Mbaud ซึ่งพอดีกับตัวเลขที่ตำราให้ไว้ในหัวข้อ 7.5.2 เรื่อง 100Base-T4 — และต่ำกว่าเพดาน 25 Mbaud ของ Cat-3 เมื่อกระจายลงหลายเส้น จึงส่งได้ · ถ้าใช้ NRZ ธรรมดา บอดเรทจะเท่ากับ 100 Mbaud ซึ่ง Cat-3 รับไม่ไหว
7.4.2Block Coding
แทนที่จะเข้ารหัสข้อมูลทีละหนึ่งบิต Block coding เป็นการนำข้อมูลเป็นกลุ่มหรือบล็อก (block) ขนาด m บิต เพื่อแทนด้วยการเข้ารหัสจำนวน n บิต ในรูปแบบ mB/nB
ข้อดี
- ขจัดปัญหาในการประสานเวลา
- ใช้เพื่อตรวจสอบข้อผิดพลาดของข้อมูลได้
ข้อจำกัด
แม้ 4B/5B ช่วยแก้ปัญหาการประสานเวลาได้ แต่ไม่สามารถแก้ปัญหาการเกิด DC component ได้
4B/5B (Four binary / Five binary)
4B/5B เป็นการแทนข้อมูลขนาด 4 บิต ด้วยข้อมูลดิจิทัลขนาด 5 บิต ถูกพัฒนาเพื่อใช้งานร่วมกับการเข้ารหัสของ NRZ-I
เหตุผล: ข้อดีของ NRZ-I คือมีอัตราการส่งสัญญาณ (signal rate) ที่ดี แต่มีปัญหาในการประสานเวลา จึงต้องใช้งานร่วมกับ 4B/5B เพื่อให้แน่ใจว่ามีการเปลี่ยนแปลงของระดับสัญญาณ
เราต้องการเพียง 16 รูปของการเข้ารหัส เท่านั้น (จาก 32 รูปที่เป็นไปได้) ทำให้เลือกใช้เฉพาะข้อมูลดิจิทัลที่มีการเปลี่ยนระดับสัญญาณอย่างน้อยสองครั้ง ส่วนที่เหลือถูกใช้เพื่อระบุจุดเริ่มต้น จุดสิ้นสุด ความผิดพลาดของข้อมูล และบางส่วนไม่ได้นำมาใช้ — หากมีการส่งข้อมูลที่ตรงกับส่วนที่ไม่ควรใช้งาน แสดงว่ามีความผิดพลาดในการส่งข้อมูลขึ้น
| ข้อมูล 4 บิต | ข้อมูลที่ถูกเข้ารหัส | ข้อมูล 4 บิต | ข้อมูลที่เข้ารหัส |
|---|---|---|---|
0000 | 11110 | 1000 | 10010 |
0001 | 01001 | 1001 | 10011 |
0010 | 10100 | 1010 | 10110 |
0011 | 10101 | 1011 | 10111 |
0100 | 01010 | 1100 | 11010 |
0101 | 01011 | 1101 | 11011 |
0110 | 01110 | 1110 | 11100 |
0111 | 01111 | 1111 | 11101 |
ตารางที่ 7.4 — ตารางการเข้ารหัสแบบ 4B/5B
การส่งข้อมูลที่ความเร็ว 100 Mbps ด้วย 4B/5B จะต้องส่งที่ช่องความถี่ 125 MHz (เพราะ 4 บิตกลายเป็น 5 บิต → ×5/4) การส่งที่ความเร็วนี้บนสาย UTP จะทำให้เกิดการรบกวนทางแม่เหล็กไฟฟ้า (EMI) รวมถึงการรบกวนของคลื่นวิทยุ (RFI) รบกวนการทำงานของสายสัญญาณและอุปกรณ์อิเล็กทรอนิกส์ข้างเคียงได้ — บนใยแก้วนำแสงไม่มีปัญหานี้
7.5ตัวอย่างการใช้งานในการเข้ารหัสแบบต่าง ๆ
ในส่วนนี้กล่าวถึงการนำการเข้ารหัสแบบต่าง ๆ มาใช้จริงและเหตุผลของการเลือกใช้แต่ละวิธี โดยพิจารณากรณีของการใช้งานในแลนแบบต่าง ๆ
7.5.1อีเทอร์เน็ต (Ethernet)
ในการทำงานของอีเทอร์เน็ตที่ความเร็ว 10 Mbps ด้านส่งจะเข้ารหัสข้อมูลเป็นสัญญาณดิจิทัลโดยใช้รูปแบบการเข้ารหัสแบบแมนเชสเตอร์ และด้านรับทำในทางตรงข้ามคือแปลงการเข้ารหัสแบบแมนเชสเตอร์กลับเป็นข้อมูลดิจิทัล
ทำให้สามารถช่วยในการทำซิงโครไนเซชัน เนื่องจากการเข้ารหัสแบบแมนเชสเตอร์มีการเปลี่ยนระดับของสัญญาณที่ทุกบิตของข้อมูล
7.5.2Fast-Ethernet
100Base-TX
ทำงานบนสาย Category 5 UTP หรือ STP ใช้การเข้ารหัสแบบ MLT-3 เพราะ MLT-3 มีการใช้แบนด์วิดท์ที่มีประสิทธิภาพ
แต่ MLT-3 มีปัญหาการประสานเวลา จึงใช้ 4B/5B เพื่อป้องกันการเกิดลอจิก 0 หรือ 1 ต่อเนื่องกันจำนวนมาก → ทำให้ความเร็วของข้อมูลอยู่ที่ 125 Mbps
100Base-FX
ใช้เส้นใยแก้วนำแสงจำนวนสองเส้น ใยแก้วมีแบนด์วิดท์สูงจึงใช้การเข้ารหัสแบบง่าย ๆ ได้ — ใช้ NRZ-I
NRZ-I มีปัญหาการประสานเวลาเมื่อมีลอจิก 0 หรือ 1 ต่อเนื่องกัน จึงใช้ 4B/5B เช่นเดียวกับ 100Base-TX ทำให้ความเร็วเพิ่มจาก 100 → 125 Mbps แต่ไม่มีผลใด ๆ ในกรณีของใยแก้วนำแสง
100Base-T4
รองรับ Cat-3 UTP ซึ่งเดิมติดตั้งในอาคารจำนวนมาก ตามข้อกำหนด Cat-3 รองรับการสื่อสารสูงสุดได้เพียง 25 Mbaud เท่านั้น
จึงต้องใช้ 8B/6T เพื่อส่งข้อมูลที่ความเร็ว 100 Mbps ที่ 75 Mbaud โดยอาศัยสายสัญญาณจำนวน 4 เส้น
สามรูปข้างล่างนี้คือไดอะแกรมของทั้งสามแบบในตำรา อ่านเหมือนกันหมด คือไล่จากข้อมูลด้านบน → ลงมาผ่านกล่องเข้ารหัส → ออกไปที่สายด้านล่าง แล้วฝั่งรับย้อนกลับขึ้นไป ให้ดู 2 อย่าง ในทุกรูป: (1) ตัวเลขบนลูกศร ว่าความเร็วเปลี่ยนไปเท่าไรหลังผ่านแต่ละกล่อง และ (2) ชนิดสายที่เขียนไว้ตรงกลาง
7.5.3Gigabit-Ethernet
การใช้การเข้ารหัสแบบแมนเชสเตอร์ใน Gigabit Ethernet ทำให้มีความจำเป็นต้องใช้สายสัญญาณที่ความเร็ว 2 Gbps ซึ่งถือว่าสูงมาก (เพราะแมนเชสเตอร์ต้องการความเร็วช่องสัญญาณเป็นสองเท่าของข้อมูล)
บนใยแก้ว — 1000Base-SX / 1000Base-LX
กรณีส่งที่ใช้สายเพียงสองเส้น การใช้ NRZ จะดีกว่า แต่เพื่อลดปัญหาการประสานเวลาจึงใช้ร่วมกับ 8B/10B ทำให้บิตเรทเหลือเพียง 1.25 Gbps (SX = short-wave, LX = long-wave)
บนสาย Cat-5 UTP — 1000Base-T
เพื่อรองรับสาย Category 5 UTP ที่ติดตั้งไว้เรียบร้อยแล้ว จะใช้ 4D-PAM5 แทน เพื่อลดความเร็วบนสายสัญญาณลง — 4D-PAM5 ใช้สายสัญญาณ 4 เส้น ที่ความเร็ว 250 Mbps ต่อเส้น จึงทำงานบนสาย UTP ได้
คำบรรยายของรูปที่ 7.20 ในตำราครอบคลุม สามมาตรฐาน คือ 1000Base-SX, 1000Base-LX และ 1000Base-CX ทั้งที่เนื้อความเอ่ยถึงแต่ SX (short-wave) กับ LX (long-wave) — ดูในรูปจะเห็นว่าสายที่เขียนไว้คือ “สาย STP หรือ เส้นใยแก้วนำแสง” นั่นคือ CX คือตัวที่วิ่งบน STP ส่วน SX/LX วิ่งบนใยแก้ว — ทั้งสามใช้ชุดเข้ารหัสเดียวกันคือ 8B/10B + NRZ ที่ 1.25 Gbps จึงวาดรวมรูปเดียวได้
| มาตรฐาน | สื่อ | Line coding | Block coding | ความเร็วบนสาย |
|---|---|---|---|---|
| Ethernet 10 Mbps | UTP หรือใยแก้ว | แมนเชสเตอร์ | — | (สองเท่าของข้อมูล) |
| 100Base-TX | Cat-5 UTP / STP | MLT-3 | 4B/5B | 125 Mbps |
| 100Base-FX | ใยแก้ว 2 เส้น | NRZ-I | 4B/5B | 125 Mbps |
| 100Base-T4 | Cat-3 UTP 4 เส้น | 8B/6T | — | 75 Mbaud |
| 1000Base-SX / LX / CX | ใยแก้ว (SX, LX) · STP (CX) | NRZ | 8B/10B | 1.25 Gbps |
| 1000Base-T | Cat-5 UTP 4 เส้น | 4D-PAM5 | — | 250 Mbps ต่อเส้น |
สรุปหัวข้อ 7.5 — ท่องตารางนี้ตารางเดียวก็ตอบข้อ “Fast Ethernet ใช้การเข้ารหัสอะไร” ได้
ทุกบรรทัดในตารางมาจากคำถามเดียวกัน: “สายที่มีอยู่วิ่งได้เร็วแค่ไหน แล้วต้องบีบสัญญาณลงเท่าไรถึงจะพอ?” — สายใยแก้วเร็วเหลือเฟือ → ใช้โค้ดง่าย ๆ (NRZ / NRZ-I) · สาย Cat-5 ตึง ๆ → ใช้ MLT-3 ที่กินแบนด์วิดท์น้อย · สาย Cat-3 เก่าจำกัดที่ 25 Mbaud → ต้องยัด 3 ระดับ 4 เส้น (8B/6T) · Gigabit บน Cat-5 → ต้องซอย 4 เส้น เส้นละ 250 Mbps (4D-PAM5) · และเมื่อไรที่ใช้โค้ดที่ “ไม่มีนาฬิกาในตัว” (NRZ, NRZ-I, MLT-3) ก็ต้องแปะ block coding (4B/5B, 8B/10B) ไปด้วยเสมอ
7.6สัญญาณรบกวน
ด้วยความเป็นเด็กเรียน แต่บังเอิญวันนี้ตื่นสาย จำเป็นต้องนั่งหลังห้อง อาจารย์ไม่ได้ใช้ไมค์ ทำให้ไม่ค่อยได้ยินเสียงอยู่แล้ว เพื่อนที่อยู่ข้าง ๆ ยังคุยกันอีก ข้างหลังก็มีการเคาะโต๊ะเป็นช่วง ๆ ทำให้ได้ยินไม่ชัดเจน และบางคำผิดเพี้ยนจากที่อาจารย์สอนอยู่
ทั้งหมดไม่ต่างจากสัญญาณรบกวนที่เกิดขึ้นในช่องสัญญาณการสื่อสาร ซึ่งทำให้เกิด:
การลดทอนของสัญญาณ
เสียงอาจารย์เบาลงเพราะเรานั่งไกล → Attenuation (7.7.1)
สัญญาณรบกวน
เพื่อนคุยกัน + เคาะโต๊ะเป็นช่วง ๆ → Noise (7.7.3)
การเกิดครอสทอล์ก
เสียงจากอีกช่องทางเล็ดลอดเข้ามาปน → Crosstalk (7.8)
7.7ความบกพร่องจากการสื่อสาร (Transmission Impairment)
แม้ปัจจุบันมีการพัฒนาสายสัญญาณให้ส่งข้อมูลได้สูงขึ้น แต่ด้วยข้อจำกัดของวัสดุที่ใช้ พฤติกรรมของสัญญาณที่เกิดขึ้นในช่องสัญญาณ และความจำเป็นในการตัดต่อสายสัญญาณ จึงหลีกเลี่ยงไม่ได้ที่จะเกิดผลกับการสื่อสาร ประกอบด้วย 3 สาเหตุสำคัญ:
7.7.1การลดทอนของสัญญาณ (Attenuation)
การลดทอนของสัญญาณ หมายถึงการที่สัญญาณมีขนาดของแอมพลิจูดลดลงเมื่อมาถึงยังภาครับ เนื่องจากคุณสมบัติของตัวนำ เช่น ค่าความต้านทานที่มีอยู่ภายในตัวนำสัญญาณ
การลดทอนของสัญญาณจะทำให้การสื่อสารได้ในระยะทางจำกัด ทำให้จำเป็นต้องมีการใช้เครื่องทวนสัญญาณ (repeater) ขยายสัญญาณให้มีขนาดสูงขึ้น ให้ภาครับสามารถทำงานได้อย่างถูกต้อง
วัดกันด้วยเดซิเบล (dB)
โดยทั่วไปการวัดค่าของการลดทอนหรือการขยายสัญญาณจะกำหนดอยู่ในรูปของ เดซิเบล (decibel) คล้ายการวัดความแรงของสัญญาณเสียง โดยสมมติให้สัญญาณที่ส่งมีค่าเป็น P1 และสัญญาณที่รับมีค่าเป็น P2 (หน่วยเป็นวัตต์)
เดซิเบล (dB) เป็นหน่วยเปรียบเทียบแบบลอการิทึม ใช้ในวงกว้าง ไม่ว่าจะเป็นศาสตร์ด้านเสียง กำลังไฟฟ้า หรือการสื่อสาร ข้อดีคือ:
- แทนตัวเลขขนาดเล็กหรือขนาดใหญ่ด้วยค่าที่เข้าใจง่ายขึ้น
- ใช้การบวกหรือลบเลขแทนการคูณหรือหาร
| กำลังไฟฟ้า | เขียนเป็น dB | ทำไม |
|---|---|---|
| 100 วัตต์ | 20 dB | 10 log10(100/1) = 10 × 2 |
| 0.1 มิลลิวัตต์ | −40 dB | 10 log10(0.0001/1) = 10 × (−4) |
dBm — เทียบกับมิลลิวัตต์
เนื่องจากการสื่อสารแบบไร้สาย เช่น ไวไฟ (Wi-Fi) บลูทูธ และอุปกรณ์ IoT ใช้พลังงานที่ต่ำ (เช่น ไวไฟที่สูงสุด 100 มิลลิวัตต์) จึงมีการกำหนดหน่วยในรูปแบบที่เทียบในหน่วยมิลลิวัตต์ (dBm) แทน
- 100 มิลลิวัตต์ → 20 dBm
- 0.1 มิลลิวัตต์ → −10 dBm
7.7.2ความบิดเบือนของสัญญาณ (Distortion)
โดยทั่วไปสัญญาณแต่ละประเภทจะประกอบด้วยสัญญาณพื้นฐานคือ Sine Wave จำนวนมากที่ความถี่ที่แตกต่างกัน ก่อนที่จะเกิดการรวมกันเป็นสัญญาณ Square Wave หรืออื่น ๆ ที่จะถูกส่งเข้าไปในช่องสัญญาณ
เนื่องด้วยความเร็วของการเคลื่อนที่ของคลื่นที่ความถี่แตกต่างกัน เมื่อคลื่นเคลื่อนที่มายังภาครับ รวมถึงข้อจำกัดของตัวนำที่รองรับความถี่ได้ในบางช่วงเท่านั้น ทำให้ตัวนำทำหน้าที่เสมือน Bandpass filter สัญญาณที่เกิดขึ้นที่ภาครับจึงเกิดการบิดเบือนไป เราเรียกว่า ความบิดเบือนของสัญญาณ (distortion)
สัญญาณซายน์ที่มีความถี่ไม่เท่ากันหลาย ๆ ความถี่รวมกันเรียกว่า Composite signal
7.7.3สัญญาณรบกวน (Noise)
สัญญาณรบกวนหรือ นอยส์ เป็นอีกหนึ่งปัจจัยสำคัญที่มีผลต่อการสื่อสารอย่างมาก ตัวอย่างของสัญญาณรบกวนได้แก่:
| ชนิด | เกิดจากอะไร |
|---|---|
| เทอร์มัลนอยส์ (Thermal Noise) | เกิดจากการเคลื่อนที่ของอิเล็กตรอนภายใน เนื่องจากส่งสัญญาณไปในช่องสัญญาณ |
| อินดิวซ์นอยส์ (Induced Noise) | สัญญาณรบกวนที่เกิดขึ้นจากอุปกรณ์ไฟฟ้า เช่น การใช้เครื่องไมโครเวฟ |
| อิมพัลส์นอยส์ (Impulse Noise) | สัญญาณรบกวนช่วงสั้น ๆ ที่เกิดจากการเกิดฟ้าผ่า หรือจากการเริ่มต้นการทำงานของมอเตอร์ |
| ครอสทอล์ก (Crosstalk) | เกิดจากการเคลื่อนที่ของสัญญาณไฟฟ้าบนสายเส้นหนึ่งเหนี่ยวนำไปบนอีกเส้น ทำให้เปรียบเสมือนเส้นหนึ่งเป็นเครื่องส่ง ส่วนอีกเส้นเป็นเครื่องรับ (รายละเอียดในหัวข้อ 7.8) |
สมการของ Thermal Noise
| สัญลักษณ์ | ความหมาย | ค่า / หน่วย |
|---|---|---|
Pn | Maximum noise power output of a resistor | วัตต์ |
k | Boltzmann's constant | 1.38 × 10−23 Joules / Kelvin |
T | Absolute temperature | K = 273 + °C |
B | แบนด์วิดท์ | เฮิรตซ์ |
ใน Pn = kTB ค่า T ต้องเป็น เคลวิน ไม่ใช่องศาเซลเซียส — ถ้าโจทย์ให้ 20 °C ต้องแปลงเป็น 273 + 20 = 293 K ก่อนเสมอ · และสังเกตว่า B ยิ่งกว้าง noise ยิ่งมาก — นี่คือเหตุผลที่ตำราบอกใน 7.10.2 ว่า “แบนด์วิดท์เป็นอนันต์ไม่ได้ทำให้ส่งข้อมูลเป็นอนันต์ เพราะขนาดของสัญญาณรบกวนจะเพิ่มขึ้นเช่นกัน”
SNR — อัตราส่วนของสัญญาณต่อสัญญาณรบกวน
Signal-to-Noise Ratio (SNR) เป็นการวัดอัตราส่วนของสัญญาณ S เทียบกับสัญญาณรบกวน N
SNR แสดงถึงระดับความแรงของสัญญาณเทียบกับสัญญาณรบกวนที่เกิดขึ้น จากสมการจะเห็นว่ายิ่งสัญญาณรบกวนต่ำเท่าใด ค่า SNR ก็จะสูงขึ้นเป็นสัดส่วนผกผัน
7.8ครอสทอล์ก (Crosstalk)
ครอสทอล์กเป็นสัญญาณรบกวนประเภทหนึ่งที่กล่าวไปแล้วในหัวข้อ 7.7.3 แต่เนื่องด้วยครอสทอล์กมีความสำคัญอย่างมากต่อการสื่อสาร อันเป็นผลเนื่องจากการสื่อสารเอง จากการเหนี่ยวนำของสนามแม่เหล็กจากสายสัญญาณข้างเคียง จึงแยกมาอธิบายเป็นหัวข้อของตัวเอง
NEXT — near-end crosstalk
near-end crosstalk (NEXT) หรืออาจเรียกอีกชื่อว่า self-crosstalk เกิดขึ้นเพราะ:
- การสื่อสารปัจจุบันเป็นแบบ full-duplex — การส่งและรับจะเกิดขึ้นพร้อมกัน
- ภาคส่งต้องส่งในระดับสัญญาณที่สูง เพื่อให้สัญญาณที่ภาครับ (ปลายทางไกล ๆ) อยู่ในระดับที่ยอมรับได้
- ในขณะเดียวกัน สัญญาณที่รับเข้ามาถูกลดทอนระหว่างทาง ทำให้อยู่ในระดับต่ำ
- สัญญาณส่งที่แรงมากจึงเหนี่ยวนำไปยังภาครับที่อ่อนแอ ทำให้ภาครับไม่ได้รับสัญญาณตามที่ควรจะเป็น
สมมติให้มีการส่งข้อมูลที่ภาคส่ง เกิดการเหนี่ยวนำที่จุด (A) ไปยังจุด (C) แต่ไม่กระทบที่จุด (B) — ผลที่ได้คือสัญญาณที่จุด (C) เปลี่ยนแปลงค่อนข้างมากเนื่องจากสัญญาณครอสทอล์กที่เกิดขึ้น ในขณะที่สัญญาณที่จุด (B) ไม่มีการเกิดครอสทอล์ก
รูปที่ 7.26 บอกว่า “เหนี่ยวนำจากไหนไปไหน” ส่วนรูปที่ 7.27 บอกว่า “แล้วสัญญาณจริงหน้าตาเป็นยังไง” — เอาสามจุดมาวางซ้อนกันบนแกนเวลาเดียวกันเพื่อเทียบ:
คำว่า self-crosstalk ในตำราหมายความตรงตัวว่า เรากวนตัวเอง — ภาคส่งของเราเองที่แรงมาก เหนี่ยวนำเข้าภาครับของเราเองที่อ่อนแรง (เพราะสัญญาณขามาถูกลดทอนมาทั้งเส้นแล้ว) ที่ปลายเดียวกันของสาย จึงเรียกว่า near-end · ข้อสอบชอบถามว่า “ทำไม NEXT ถึงรุนแรงกว่าตอนสายว่าง ๆ” คำตอบคือ full-duplex ทำให้ส่งกับรับเกิดพร้อมกันบนสายเดียวกันนั่นเอง
การตีเกลียว (twisted pair) มีไว้เพื่อลดครอสทอล์กโดยตรง — เมื่อสองเส้นพันกัน สนามแม่เหล็กที่เหนี่ยวนำเข้าสองเส้นจะใกล้เคียงกัน แล้วหักล้างกันเมื่อภาครับอ่านค่าผลต่างของสองเส้น ยิ่งเกลียวถี่ (Cat-6 ถี่กว่า Cat-5) ยิ่งกันครอสทอล์กที่ความถี่สูงได้ดี — และเป็นเหตุผลที่ห้ามคลายเกลียวยาวเกิน ~13 มม. ตอนเข้าหัว RJ-45
7.9ความสามารถของการสื่อสาร
การสื่อสารในช่องสัญญาณ เหตุใดจึงไม่ส่งให้เร็วที่สุด? อะไรคือข้อจำกัดที่สำคัญของการสื่อสาร? ในที่นี้จะกล่าวถึงทฤษฎีและข้อจำกัดเบื้องต้นของการสื่อสารในช่องสัญญาณ โดย:
เริ่มจาก “โลกสวย” — ไม่มีสัญญาณรบกวน
Nyquist's Sampling Theorem — บอกเพดานความเร็วเมื่อช่องสัญญาณปราศจากสัญญาณรบกวน ตัวแปรที่ควบคุมคือ แบนด์วิดท์ กับ จำนวนระดับสัญญาณ
แล้วค่อยเข้าโลกจริง — มีสัญญาณรบกวน
Shannon's Law — บอกเพดานความเร็วเมื่อช่องสัญญาณมีสัญญาณรบกวนเกิดขึ้น ตัวแปรที่ควบคุมคือ แบนด์วิดท์ กับ S/N
7.10ความจุของช่องสัญญาณ (Channel Capacity)
การสื่อสารในปัจจุบัน ตัวกลางที่ใช้ไม่ว่าจะเป็น สายทองแดง สายใยแก้วนำแสง หรือการสื่อสารแบบไร้สาย ต่างมีข้อจำกัดที่เกิดจาก:
- ความสามารถของคลื่นที่สามารถส่งได้ของตัวกลางประเภทนั้น ๆ หรือ แบนด์วิดท์ ในคำจำกัดความของการสื่อสาร
- การถูกรบกวนของช่องสัญญาณ
โดยทั่วไปอธิบายได้ด้วย Nyquist's Sampling Theorem และ Shannon's Law
ทั้งหัวข้อ 7.10 มีแค่ สองสูตรกับหนึ่งการแปลงหน่วย เท่านั้น ถ้าจำสามอย่างนี้ได้ก็ได้คะแนนเต็มข้อ — และเป็นข้อที่ทำเสร็จได้ในเวลาไม่ถึง 3 นาที ควรเก็บก่อนข้ออื่นเสมอ
7.10.1Nyquist's Sampling Theorem
เพื่อส่งข้อมูลในรูปของดิจิทัล สัญญาณแอนะล็อกจำเป็นต้องผ่านการสุ่มด้วยความถี่ที่เหมาะสม ในปี 1924 Harry Nyquist ได้แสดงให้เห็นว่า:
หากสัญญาณถูกส่งด้วยแบนด์วิดท์เป็น W เฮิรตซ์ และไม่มีความถี่อื่นที่สูงกว่า W ข้อมูลที่ได้รับสามารถแปลงกลับได้อย่างถูกต้อง หากสัญญาณนั้นถูกสุ่มค่าที่ความเร็วอย่างน้อยเป็นสองเท่าของความเร็วของสัญญาณ (2W) เรียกว่า Nyquist's Sampling Rate
| สัญลักษณ์ | ความหมาย | หน่วย | ระวัง |
|---|---|---|---|
C | อัตราการส่งข้อมูลสูงสุด (channel capacity) | bps | — |
W | แบนด์วิดท์ของช่องสัญญาณ (บางโจทย์เขียนเป็น B) | Hz | 2 MHz = 2×106 Hz ไม่ใช่ 2 |
L | จำนวนระดับของสัญญาณที่ใช้ | ระดับ | ใส่ จำนวนระดับ ลงใน log2 ไม่ใช่จำนวนบิต |
log2L | = m = จำนวนบิตต่อหนึ่งระดับสัญญาณ | บิต/symbol | L=16 → log216 = 4 |
ตัวอย่าง 7.2 (จากตำรา) — ช่องสัญญาณในระบบโทรศัพท์มีแบนด์วิดท์ 3000 เฮิรตซ์ หากสื่อสารโดยใช้ 16 ระดับของสัญญาณ จงหาอัตราเร็วสูงสุดในการส่งข้อมูลโดยใช้ Nyquist's Theorem
= 2 × 3000 × log216
= 2 × 3000 × 4
= 24,000 bps
7.10.2Shannon's Law
การศึกษาของ Nyquist สมมติว่าช่องสัญญาณไม่มีสัญญาณรบกวนใด ๆ ในปี ค.ศ. 1948 Claude E. Shannon ศึกษาถึงผลของสัญญาณรบกวนที่มีต่อช่องสัญญาณ โดยพิจารณาความสามารถของช่องสัญญาณในการที่จะส่งข้อมูลมากที่สุดที่แบนด์วิดท์ B เฮิรตซ์ โดยไม่เกิดความผิดพลาดแม้มีสัญญาณรบกวนในช่องสัญญาณ
Shannon แสดงถึงความสัมพันธ์ของแบนด์วิดท์ (B) กำลังส่ง (S) และสัญญาณรบกวน (N) เป็น Shannon's Channel Capacity:
โจทย์เกือบทุกข้อจะให้ SNR มาเป็น dB แต่สูตร Shannon ต้องการ อัตราส่วนเปล่า ๆ ห้ามเอา 20 หรือ 40 ยัดลงในสูตรตรง ๆ เด็ดขาด ต้องแปลงก่อนเสมอ:
| SNR (dB) | ยกกำลัง | S/N (อัตราส่วน) | 1 + S/N |
|---|---|---|---|
| 10 dB | 101 | 10 | 11 |
| 20 dB | 102 | 100 | 101 |
| 30 dB | 103 | 1,000 | 1,001 |
| 40 dB | 104 | 10,000 | 10,001 |
จากสมการจะเห็นว่าเราเพิ่มอัตราการส่งข้อมูลได้ด้วยการเพิ่มค่า S/N และขยายขนาดของแบนด์วิดท์ให้สูงขึ้น นอกจากนี้:
- หากมีช่องสัญญาณที่ไม่มีสัญญาณรบกวนเลย (noiseless) หรือต่ำมาก → อัตราการส่งข้อมูลจะเป็นอนันต์
- แต่ไม่อาจกล่าวได้ว่า หากมีแบนด์วิดท์เป็นอนันต์จะส่งข้อมูลได้เป็นอนันต์เช่นกัน เนื่องจากขนาดของสัญญาณรบกวนจะเพิ่มขึ้นเช่นกัน (สอดคล้องกับ Pn = kTB ในหัวข้อ 7.7.3)
ตัวอย่างเต็มรูปแบบจากข้อสอบเก่า
โจทย์ — ช่องสัญญาณมีแบนด์วิดท์ B = 2 MHz ใช้ 16 ระดับสัญญาณ
(ก) จงหาอัตราการส่งข้อมูลสูงสุดตาม Nyquist
(ข) ถ้าช่องสัญญาณมี SNR = 20 dB จงหาความจุตาม Shannon
(ค) ถ้าปรับปรุงจนได้ SNR = 40 dB จะได้เท่าไร
ลองทำเองก่อน แล้วค่อยกดดูเฉลย
(ก) Nyquist — ไม่สนใจ noise ใช้แค่ B กับ L
= 2 × (2 × 106) × log216
= 2 × (2 × 106) × 4
= 16 × 106 bps = 16 Mbps
(ข) Shannon ที่ SNR = 20 dB — ขั้นแรกต้องแปลง dB เป็นอัตราส่วนก่อน
C = B log2(1 + S/N)
= (2 × 106) × log2(1 + 100)
= (2 × 106) × log2(101)
= (2 × 106) × 6.658
≈ 1.33 × 107 bps (13.32 Mbps)
(ค) Shannon ที่ SNR = 40 dB
C = (2 × 106) × log2(1 + 10,000)
= (2 × 106) × log2(10,001)
= (2 × 106) × 13.288
≈ 2.66 × 107 bps (26.58 Mbps)
SNR เพิ่มจาก 20 → 40 dB (กำลังสัญญาณต่อ noise เพิ่ม 100 เท่า) แต่ความจุเพิ่มแค่ประมาณ 2 เท่า (1.33×107 → 2.66×107) — เพราะ S/N อยู่ใน log2 ผลตอบแทนจึงลดหลั่น นี่คือเหตุผลว่าทำไมการ “เพิ่มกำลังส่ง” ถึงไม่ใช่ทางออกที่ดีเท่ากับ “เพิ่มแบนด์วิดท์” (B คูณอยู่ข้างนอก log จึงเพิ่มแบบเชิงเส้น)
| คำตอบที่เห็น | มาจากการทำอะไรผิด | ที่ถูกคือ |
|---|---|---|
2,000,006.658(หรือเขียน 2000006.658 bps) |
บวกแทนที่จะคูณ — เขียน 2×106 + log2(101) = 2,000,000 + 6.658 แทนที่จะเป็น 2×106 × 6.658 | 1.33 × 107 bps |
4.01 × 106 |
ใช้ log ผิดฐาน — กด log บนเครื่องคิดเลขซึ่งเป็น log10 ได้ log10(101) = 2.004 แทนที่จะเป็น log2(101) = 6.658 | |
4.32 × 107 |
ลืมแปลง dB — ยัด 20 ลงในสูตรตรง ๆ ได้ log2(1+20) = log221 แทนที่จะเป็น log2(1+100) |
ทั้งสามข้อป้องกันได้ด้วยการเขียนบรรทัดแทนค่าออกมาให้ครบทุกบรรทัดอย่างในเฉลยข้างบน อย่ากดเครื่องคิดเลขรวดเดียวแล้วเขียนแต่คำตอบ — เขียนขั้นตอนไว้ยังได้คะแนนบางส่วนถ้าเลขท้าย ๆ ผิด
ตรวจสอบเร็ว ๆ: log2(101) = 2.0043 ÷ 0.3010 = 6.658 ✓ · และค่าที่ควรจำไว้เลยเพราะออกซ้ำ ๆ: log2(101) ≈ 6.658 · log2(10001) ≈ 13.288 · log2(1025) ≈ 10.0 · log216 = 4
ตำราไม่ได้ระบุไว้ แต่ตามหลักการทั่วไป: Nyquist บอกเพดานจากอุปกรณ์ (เราออกแบบให้มีกี่ระดับ) ส่วน Shannon บอกเพดานจากธรรมชาติของช่องสัญญาณ (noise) ความเร็วที่ใช้ได้จริงจึงเป็นค่าที่น้อยกว่าในสองค่านั้น — ในตัวอย่างข้างบน Nyquist ได้ 16 Mbps แต่ Shannon ที่ 20 dB ได้แค่ 13.32 Mbps แปลว่า noise เป็นตัวจำกัด การเพิ่มระดับสัญญาณให้มากกว่า 16 จะไม่ช่วยอะไร ถ้าไม่แก้ noise ก่อน — ในข้อสอบให้ตอบทั้งสองค่าตามที่โจทย์ถาม ไม่ต้องเลือกเอง เว้นแต่โจทย์ถามว่า “ใช้ได้จริงเท่าไร”
7.11อัตราการส่งสัญญาณ อัตราการส่งข้อมูล และบิตเรท
ในทางปฏิบัติ เนื่องจากการสื่อสารไม่ว่าจะเป็นแบบประสานเวลาหรือไม่ จะมีการเพิ่มบิตพิเศษเพื่อช่วยในการสื่อสาร ทำให้อัตราการส่งข้อมูลจริงจะน้อยกว่าบิตเรทที่เกิดขึ้น
ฉะนั้นกล่าวได้ว่าการสื่อสารข้อมูลบนช่องสัญญาณจะเกี่ยวข้องกับอัตราเร็วสามประเภทเสมอ โดยทั้งหมดอาจเป็นค่าเดียวกันหรือคนละค่า:
1. อัตราการส่งสัญญาณ
signal rate (Rs) — หน่วย บอด (baud) · จำนวนครั้งที่ระดับสัญญาณเปลี่ยนต่อวินาที
2. อัตราการส่งข้อมูล
data rate — หน่วย bps · ข้อมูลจริงที่ส่งได้ หลังหักบิตพิเศษออกแล้ว
3. บิตเรท
bit rate (R) — หน่วย bps · จำนวนบิตทั้งหมด (รวมบิตพิเศษ) ต่อวินาที
7.11.1อัตราการส่งสัญญาณ (Signal Rate)
การสื่อสารข้อมูลในช่องสัญญาณที่มีแบนด์วิดท์จำกัด การกำหนดให้หนึ่งระดับสัญญาณสามารถแทนข้อมูลมากกว่าหนึ่งบิต ทำให้การใช้แบนด์วิดท์เป็นไปอย่างมีประสิทธิภาพ พบว่าที่จำนวนระดับสัญญาณเป็น L จะมีจำนวนบิตต่อสัญญาณเป็น m หรือ
อัตราของการเปลี่ยนระดับสัญญาณนี้เรียกว่า signal rate (Rs) มีหน่วยเป็น บอด (baud) หรือ บอดเรท (baud rate) โดยมีความสัมพันธ์ระหว่างบอดเรทและบิตเรท (R) เป็น
สมมติให้ Tb เป็นเวลาของการส่งหนึ่งบิต ส่วนกลับของ Tb ก็คือบิตเรท R ดังนั้น R จะสัมพันธ์กับช่วงเวลาของสัญญาณ (Ts) เป็น
เนื่องจาก Tb เป็นส่วนกลับของ R ทำให้ได้ค่าประสิทธิภาพเชิงเวลา (effective time) ของแต่ละบิตเป็น
จากทั้งสองสมการเราจะได้ประสิทธิภาพของแบนด์วิดท์ (bandwidth efficiency) ของช่องสัญญาณเป็น
| สัญลักษณ์ | ความหมาย | หน่วย |
|---|---|---|
L | จำนวนระดับสัญญาณ | ระดับ |
m | จำนวนบิตต่อหนึ่งสัญญาณ = log2L | บิต/symbol |
Rs | signal rate / baud rate | baud |
R | bit rate | bps |
Ts | ช่วงเวลาของหนึ่งสัญญาณ (symbol) | วินาที |
Tb | ช่วงเวลาของหนึ่งบิต | วินาที |
W | แบนด์วิดท์ | Hz |
baud นับ “จำนวนสัญญาณ” ส่วน bps นับ “จำนวนบิต” ทั้งสองจะเท่ากันก็ต่อเมื่อ m = 1 เท่านั้น (คือ ASK, FSK, BPSK ที่ 1 บิต/symbol ตามตารางที่ 7.2) · ถ้าโจทย์บอก 16-QAM ที่ 1200 baud คำตอบคือ 4800 bps ไม่ใช่ 1200 · และเวลาโจทย์เขียน “25 Mbaud” (เช่น Cat-3 ใน 100Base-T4) นั่นคือข้อจำกัดของสายในหน่วยบอด ไม่ใช่บิตเรท — จึงยัด 100 Mbps ลงไปได้ด้วย 8B/6T ที่ 75 Mbaud
ตัวอย่าง 7.3 (จากตำรา) — ช่องสัญญาณในระบบโทรศัพท์มีแบนด์วิดท์ 3000 เฮิรตซ์ มีค่า SNR เป็น 20 dB จงหาอัตราเร็วสูงสุดในการส่งข้อมูล
SNR = 10 log10(S/N)
20 = 10 log10(S/N)
S/N = 100
ขั้นที่ 2 — แทนใน Shannon's Channel Capacity
C = W log2(1 + S/N)
= 3000 × log2(1 + 100)
= 19,963 bps (ค่าที่พิมพ์ไว้ในตำรา)
หมายเหตุ: ถ้ากดเครื่องคิดเลขเต็ม ๆ จะได้ 3000 × 6.6582 = 19,974.6 bps ต่างจากในตำราเล็กน้อยจากการปัดเศษระหว่างทาง — ในข้อสอบตอบราว ๆ 2 × 104 bps ถือว่าถูก ขอให้ขั้นตอนถูกเป็นหลัก
โจทย์ทั้งสองข้อคือ ช่องสัญญาณโทรศัพท์ 3000 Hz อันเดียวกัน — แต่ 7.2 (Nyquist, 16 ระดับ) ได้ 24,000 bps ส่วน 7.3 (Shannon, 20 dB) ได้ ~20,000 bps แปลว่าในโลกจริงที่มี noise เราไปไม่ถึง 24 kbps ที่ Nyquist สัญญาไว้ นี่คือใจความของทั้งหัวข้อ 7.9–7.10 ในหนึ่งบรรทัด
เช็คความเข้าใจ
ตัวเลือกอื่นคือคำตอบผิดที่เจอจริงในกระดาษคำตอบ — 2,000,006.658 มาจากบวกแทนคูณ · 4.01×106 มาจากใช้ log10 แทน log2 · 8.78×106 มาจากลืมแปลง dB (ใช้ log2(1+20))
- Nyquist:
C = 2 × B × log2(L)— L คือจำนวนระดับสัญญาณ · ไม่มี noise ในสูตร - Shannon:
C = B × log2(1 + S/N)— S/N เป็นอัตราส่วน ไม่ใช่ dB - แปลง dB:
S/N = 10(dB/10)→ 10 dB = 10, 20 dB = 100, 30 dB = 1000, 40 dB = 10000 - log ฐาน 2:
log2x = log10x ÷ 0.3010· จำ log2101 ≈ 6.658 และ log210001 ≈ 13.288 - baud vs bps:
R = Rs × mโดยm = log2L· 16-QAM → m = 4 - L = 2n ใช้ได้ทั้งเรื่อง quantization (7.2) และระดับสัญญาณ (7.10, 7.11)
- Line coding: NRZ (1=V, 0=0) · NRZ-I (1=เปลี่ยนระดับ) · แมนเชสเตอร์ (1=สูง→ต่ำ, 0=ต่ำ→สูง) · Diff-Manchester (0=เปลี่ยนที่ขอบบิต)
- อีเทอร์เน็ต: 10M=แมนเชสเตอร์ · 100Base-TX=MLT-3+4B/5B · 100Base-FX=NRZ-I+4B/5B · 100Base-T4=8B/6T · Gigabit ใยแก้ว=NRZ+8B/10B · 1000Base-T=4D-PAM5
- Impairment 3 ตัว: Attenuation (แอมพลิจูดลด → repeater) · Distortion (bandpass filter ตัดฮาร์มอนิก) · Noise (thermal
Pn=kTB, induced, impulse, crosstalk) - ฝึกโจทย์จริงต่อที่ ข้อสอบเก่า Q1 · Nyquist & Shannon Capacity