Digital System Engineering บทที่ 1

Download Report

Transcript Digital System Engineering บทที่ 1

Digital System Engineering
บทที่ 1.
บทนำ
จำกศูนย์ถงึ หนึง่
ิ ปะของกำรบริหำรควำม
บทที่ 1.2 ศล
ั ซอน
้
ซบ
• กำรออกแบบวงจรหรือระบบขนำดใหญ่ๆ มนุษย์ไม่ม ี
ิ ธิภำพมำก
ควำมสำมำรถหรือมีเครือ
่ งมือทีม
่ ป
ี ระสท
พอทีจ
่ ะมำใชค้ ำนวณหรือพิจำรณำรำยละเอียดได ้ทุก
อย่ำงได ้
่ จำนวนทรำนซส
ิ เตอร์ใน CPU Core i7
• ตัวอย่ำงเชน
ของบริษัท Intel มีทงั ้ หมด 731 ล ้ำนตัว ในกำรออกแบบ
CPU วิศวกรไม่สำมำรถทีจ
่ ะคำนวณหำขนำดของ
กระแส หรือผลตอบสนองควำมถีข
่ องวงจร
ิ เตอร์ทก
ทรำนซส
ุ ตัวใน Core i7 พร ้อมกันได ้ เนือ
่ งจำก
ั ซอนมำกเกิ
้
มีควำมยุง่ ยำกและซบ
นไป
• ดังนัน
้ ในกำรออกแบบวงจรหรือระบบขนำดใหญ่ เรำ
้
จำเป็ นจะต ้องพัฒนำวิธห
ี รือเทคนิคทีใ่ ชลดควำม
ิ ปะของกำรบริหำรควำม
บทที่ 1.2 ศล
ั ซอน
้
ซบ
• เทคนิคทีน
่ ย
ิ มใชกั้ น คือกำรแบ่งระดับกำรคำนวณหรือ
ั ้ โดยทีช
ั ้ ทีอ
กำรวิเครำะห์ออกเป็ นลำดับชน
่ น
่ ยูด
่ ้ำนล่ำง
ั ้ ของกำรคำนวณหรือวิเครำะห์ในรำยละเอียด
จะเป็ นชน
ั ้ ทีอ
สว่ นชน
่ ยูด
่ ้ำนบนก็จะเป็ นกำรนำเอำผลลัพธ์ของกำร
้
คำนวณหรือกำรวิเครำะห์ไปใชงำน
ั้
• กำรแบ่งกำรวิเครำะห์หรือกำรคำนวณเป็ นลำดับชน
่ นรำยละเอียดทีย
ลักษณะนีม
้ ข
ี ้อดีคอ
ื เป็ นกำรซอ
่ งุ่ ยำก
ั ซอนไว
้
ั ้ ระดับล่ำง ทำให ้กำรออกแบบวงจรหรือ
ซบ
้ในชน
ั ซอนน
้
ระบบในระดับทีส
่ งู ขึน
้ มีควำมซบ
้อยลง
่ นรำยละเอียดทีย
ั ซอนไว
้
ั ้ ระดับ
• กำรซอ
่ งุ่ ยำกซบ
้ในชน
ั ้ นำมธรรม (Abstraction)
ล่ำงนีเ้ รำเรียกว่ำ ระดับชน
ิ ปะของกำรบริหำรควำม
บทที่ 1.2 ศล
ั ซอน
้
ซบ
ั ้ นำมธรรมในกำรออกแบบระบบ
• ระดับชน
Digital สำมำรถแบ่งออกเป็ นทัง้ หมด 9
ั้
ระดับชน
ั ้ ล่ำงสุดคือชน
ั ้ ฟิ สก
ิ สซ
์ งึ่
• โดยเริม
่ จำกชน
เป็ นกำรวิเครำะห์พฤติกรรมต่ำงๆของโฮล
และอิเล็กตรอน ในสำรกึง่ ตัวนำ ไปจนถึง
ั ้ บนสุดคือกำรเขียนโปรแกรมประยุกต์
ชน
ในคอมพิวเตอร์
ั ้ นำมธรรมทำให ้
• กำรแบ่งเป็ นระดับชน
โปรแกรมเมอร์สำมำรถทีจ
่ ะเขียน
โปรแกรมประยุกต์ได ้โดยทีไ่ ม่จำเป็ นต ้อง
มีควำมรู ้เกีย
่ วกับทฤษฎีสำรกึง่ ตัวนำแม ้แต่
Application
Software
Operating
Systems
Programs
Device
Drivers
Instructions
Architecture
Registers
MicroDatapaths
architecture Controllers
Adders
Logic
Memories
Digital
AND gates
Circuits
Not gates
Analog
Amplifiers
Circuits
Filters
Transistors
Devices
Diodes
Physics
Electrons
ิ ปะของกำรบริหำรควำม
บทที่ 1.2 ศล
ั ซอน
้
ซบ
ิ สก
์ ส
• ในทำงกลับกันวิศวกรหรือนั กฟิ สก
็ ำมำรถทีจ
่ ะ
ิ เตอร์หรือ MOSFET ตัวใหม่ทท
ออกแบบทรำนซส
ี่ ำงำน
้ งงำนน ้อยลง โดยไม่ต ้องไป
ได ้เร็วมำกขึน
้ หรือใชพลั
ิ เตอร์หรือ MOSFET ทีอ
สนใจว่ำจะทรำนซส
่ อกแบบจะ
้
ถูกนำไปใชกั้ บคอมพิวเตอร์ทใี่ ชระบบปฏิ
บต
ั ก
ิ ำร
Windows หรือ Mac OS X
ั ซอน
้
ซบ
Physics Abstraction
ิ ส ์ เรำสำมำรถอธิบำยพฤติกรรมต่ำงๆของ
• ในระดับฟิ สก
้
โฮลและอิเล็กตรอนโดยใชทฤษฎี
ของ Quantum และ
สมกำรของ Maxwell
ั ซอน
้
ซบ
Device Abstraction
่
• เรำสำมำรถอธิบำยกำรทำงำนของอุปกรณ์ตำ่ งๆเชน
ั พันธ์ระหว่ำงแรงดัน
Diode หรือ Transistor จำกควำมสม
และกระแสทีข
่ ำต่ำงๆของอุปกรณ์
ั ซอน
้
ซบ
Analog Circuit Abstraction
ื่ มต่อเข ้ำด ้วยกัน
• เรำสำมำรถนำเอำอุปกรณ์ตำ่ งๆมำเชอ
ให ้กลำยเป็ นวงจร
• กำรทำงำนของวงจรอนำลอกสำมำรถดูได ้จำก
ั พันธ์ระหว่ำงสญ
ั ญำณ Input และ Output เชน
่
ควำมสม
ค่ำอัตรำขยำยแรงดัน
vo
Av 
vi
ั ซอน
้
ซบ
Digital Circuit Abstraction
• เรำสำมำรถนำวงจรอนำลอกมำสร ้ำงเป็ นโลจิกเกตต่ำงๆ
่ NOT, AND, และ OR gate
เชน
• กำรทำงำนของโลจิกเกตต่ำงๆสำมำรถดูได ้จำกตำรำง
Truth Table
A
/A
0
1
1
0
ั ญำณ Analog และ
ควำมแตกต่ำงระหว่ำงสญ
Digital
ั ญำณ Analog เป็ น
สญ
ั ญำณทีม
สญ
่ ค
ี วำมต่อเนือ
่ ง
(Continuous) ทัง้ ในแกน
เวลำและแอมปลิจด
ู
ั ญำณ Digital เป็ น
สญ
ั ญำณทีม
สญ
่ ค
ี วำมไม่
ต่อเนือ
่ ง (Discrete) ทัง้ ใน
แกนเวลำและแอมปลิจด
ู
ั ซอน
้
ซบ
Logic Abstraction
• ในระดับโลจิก เป็ นกำรนำเอำโลจิกเกตต่ำงๆมำต่อ
่ วงจร
รวมกันให ้กลำยเป็ นวงจรโลจิกแบบง่ำยๆเชน
Adder, ALU, หรือ Memory
ึ ษำกำรทำงำนของวงจรโลจิกได ้จำก
• เรำสำมำรถศก
Timing Diagram หรือ Truth Table
ั ซอน
้
ซบ
Microarchitecture Abstraction
• ในระดับ Microarchitecture เป็ น
กำรนำเอำวงจรโลจิกมำต่อรวมกัน
เพือ
่ ให ้สำมำรถทำงำนตำมคำสงั่
Assembly ได ้
• วงจรโลจิกพืน
้ ฐำนทีอ
่ ยูใ่ น
Microarchitecture มีดงั นี้
• Register ทำหน ้ำทีเ่ ก็บข ้อมูล
ชวั่ ครำว Register สำคัญที่
จำเป็ นต ้องมีคอ
ื
• Accumulator ทำหน ้ำทีเ่ ก็บ
ข ้อมูลชวั่ ครำวในระหว่ำงกำร
ประมวลผล
ั ซอน
้
ซบ
Microarchitecture Abstraction
• Program Counter เป็ น Register
ี้ ำแหน่งของหน่วยควำมจำที่
ทีช
่ ต
้ บคำสงั่ ถัดไป
ใชเก็
• Arithmetic Logic Unit ทำหน ้ำที่
่ กำรบวก,
คำนวณแบบง่ำยๆเชน
ลบ. OR หรือ AND
• นอกจากวงจรโลจิกต่างๆแล ้ว ยัง
จาเป็ นต ้องมี Data Path หรือ
่ าหน้าทีเป็
่ นเส ้นทาง
Bus เพือท
การส่งข ้อมูล
ั ซอน
้
ซบ
Architecture Abstraction
• ระดับ Architecture เป็ นกำรอธิบำยระบบคอมพิวเตอร์
ในมุมมองของ Programmer
่ สถำปั ตยกรรม IA-32 ของบริษัท Intel มี
• ตัวอย่ำงเชน
ดังต่อไปนี้
• สำมำรถทำงำนได ้ทัง้ หมด 4 โหมดคือ
•
•
•
•
Protected Mode
Virtual-8086 Mode
Real Address Mode
System Management Mode
ั ซอน
้
ซบ
Architecture Abstraction
• สำมำรถอ ้ำงหน่วยควำมจำได ้ถึง 4 GB
• Register
•
•
•
•
•
General-Purpose Registers
Specialized Uses
Segment Registers
Instruction Pointer
EFLAGS Register
ั ซอน
้
ซบ
Architecture Abstraction
• Control Flag
• Status Flag
• Floating Point Unit (FPU) เป็ นData Register พิเศษทีท
่ ำ
ให ้สำมำรถคำนวณแบบ Floating Point ทีร่ วดเร็ว
ั ซอน
้
ซบ
Architecture Abstraction
่
• Register อืน
่ ๆ เชน
้
• 64 bits Registers ทีใ่ ชงำนกั
บคำสงั่ กลุม
่ MMX
• 128 bits XMM Registers เพือ
่ ใชกั้ บคำสงั่ ชนิด SingleInstruction, Multiple-Data (SIMD)
ั ซอน
้
ซบ
Architecture vs Microarchitecture
ั ้ Architecture วิศวกร
• จำกข ้อกำหนดต่ำงๆในระดับชน
สำมำรถนำไปออกแบบ Microarchitecture ได ้อย่ำง
หลำกหลำย
่ วิศวกรของบริษัท Intel สำมำรถออกแบบ
• ตัวอย่ำงเชน
Micro-architecture จำกสถำปั ตยกรรม IA-32
กลำยเป็ น CPU ตระกูล Pentium ต่ำงๆ
Operating System และ Application
Abstraction
• สำหรับระบบคอมพิวเตอร์ นอกจำกวงจรดิจต
ิ อลหรือ
Hardware แล ้ว สงิ่ ทีข
่ ำดไม่ได ้คือ Software ทีใ่ ช ้
ควบคุมกำรทำงำน
ั ้ ทีอ
• ในมุมมองของ Software ระดับชน
่ ยูด
่ ้ำนล่ำงสุดคือ
โปรแกรมปฏิบต
ั ก
ิ ำร (OS)
• หน ้ำทีข
่ อง OS คือบริหำร, จัดกำร และควบคุมกำร
ติดต่อกับ Hardware ทำให ้โปรแกรมเมอร์ทเี่ ขียน
โปรแกรมประยุกต์ สำมำรถทีจ
่ ะเขียนหรืออ่ำนข ้อมูล
จำกฮำร์ดดิส หรือพิมพ์ภำพออกไปทีพ
่ รินเตอร์ ได ้โดย
ไม่จำเป็ นต ้องเข ้ำใจกำรทำงำนของฮำร์ดดิสหรือ
พรินเตอร์เลยแม ้แต่น ้อย
ั ซอน
้
ซบ
Discipline
• Discipline หมำยถึงข ้อบังคับของกำรออกแบบระดับ
ั ้ ล่ำงเพือ
ั ้ บน
นำมธรรมในชน
่ ให ้ระดับนำมธรรมในชน
่
สำมำรถทำงำนหรือมีผลผลิตทีด
่ ย
ี งิ่ ขึน
้ เชน
• Digital Discipline (ข ้อบังคับดิจต
ิ อล)
ั ญำณแบบไม่ตอ
• วงจรดิจต
ิ อลทำงำนกับสญ
่ เนือ
่ งทำให ้
สำมำรถออกแบบได ้ง่ำยกว่ำวงจรอนำลอก
ื่ มต่อกันให ้กลำยเป็ น
• ดังนัน
้ กำรนำเอำวงจรดิจต
ิ อลมำเชอ
ั ซอนสู
้
ระบบใหญ่ทม
ี่ ค
ี วำมซบ
งทำได ้ง่ำยกว่ำ
ั ซอน
้
ซบ
Three – Y’s
ั ซอนมำกๆ
้
• กำรออกแบบระบบทีม
่ ค
ี วำมซบ
นอกจำก
้ กกำรของกำรแบ่งระดับนำมธรรม และ
จะต ้องใชหลั
้ กกำรอีก 3 อย่ำงคือ
ข ้อบังคับแล ้วยังต ้องใชหลั
• Hierarchy คือกำรแบ่งระบบออกเป็ นโมดูลต่ำงๆ จำกนัน
้
จึงแบ่งแต่ละโมดูลให ้เป็ นโมดูลย่อยต่อไปอีก เพือ
่ ให ้ได ้
โมดูลย่อยทีม
่ ค
ี วำมเรียบง่ำยมำกยิง่ ขึน
้
• Modularity แต่ละโมดูลจะต ้องถูกออกแบบอย่ำงดีทส
ี่ ด
ุ
เพือ
่ ให ้สำมำรถทำงำนได ้อย่ำงถูกต ้องเพือ
่ ลดปั ญหำของ
้
ื่ มต่อกับโมดูล
กำรนำไปใชงำน
และออกแบบวิธก
ี ำรเชอ
ื่ มต่อกัน
อืน
่ ๆเพือ
่ ให ้สำมำรถนำเอำโมดูลทัง้ หมดมำเชอ
เป็ นระบบใหญ่
• Regularity ในระบบใหญ่ๆมักจะประกอบด ้วยโมดูล
จำนวนมำกทีม
่ ก
ี ำรทำงำนคล ้ำยๆกัน และโมดูลเหล่ำนี้
บทที่ 1.3 นำมธรรมเชงิ ดิจต
ิ อล
ิ สส
์ ว่ นใหญ่เชน
่ ควำมดัน, ควำมร ้อน มัก
• ตัวแปรทำงฟิ สก
มีคำ่ ทีต
่ อ
่ เนือ
่ ง
• ในทำงตรงกันข ้ำมระบบ Digital เป็ นระบบทีแ
่ สดง
ข่ำวสำรโดยใชตั้ วแปรค่ำไม่ตอ
่ เนือ
่ ง (Discrete Valued
Variable)
• ตัวแปรชนิดค่ำไม่ตอ
่ เนือ
่ งสำมำรถแสดงค่ำหรือข ้อมูล
่
ได ้ในจำนวนจำกัดเชน
• ตัวแปรค่ำไม่ตอ
่ เนือ
่ งขนำด 1 bit สำมำรถแสดงค่ำหรือ
ข ้อมูลได ้เพียง 2 ค่ำเท่ำนัน
้ คือ 0 หรือ 1, ถูก หรือ ผิด,
้ หรือ ขวำ
ซำย
บทที่ 1.3 นำมธรรมเชงิ ดิจต
ิ อล
ี ะต ้อง
• ถ ้ำต ้องกำรแสดงสรี ุ ้งทีม
่ ี 7 สจ
ใชตั้ วแปรค่ำไม่ตอ
่ เนือ
่ งขนำดอย่ำง
น ้อย 3 bit
• ถ ้ำต ้องกำรแสดงตัวเลข 0 ถึง 9
จะต ้องใชตั้ วแปรค่ำไม่ตอ
่ เนือ
่ งขนำด
อย่ำงน ้อย 4 bit คือ
0000 = 0, 0001 = 1, 0010 = 2,
0011 = 3, 0100 = 4, 0101 = 5,
0110 = 6, 0111 = 7, 1000 = 8,
1001 = 9
บทที่ 1.3 นำมธรรมเชงิ ดิจต
ิ อล
• จำกตัวอย่ำงจะเห็นว่ำถ ้ำต ้องกำรแสดงค่ำ N ค่ำ จะต ้อง
ใชตั้ วแปรค่ำไม่ตอ
่ เนือ
่ งทีม
่ จ
ี ำนวนบิทมำกกว่ำหรือ
้
่ กำรแสดง
เท่ำกับทีจ
่ ำเป็ นต ้องใชเสมอ
ตัวอย่ำงเชน
ตัวเลข 0-9 จำนวน 10 ค่ำ แต่ต ้องใชตั้ วแปรค่ำไม่
ต่อเนือ
่ งขนำด 4 บิทซงึ่ สำมำรถแสดงค่ำได ้ทัง้ หมด 16
ค่ำ
• จำนวนบิททีแ
่ ท ้จริงทีใ่ ชส้ ำหรับแสดงค่ำ N ค่ำเรำจะ
เรียกว่ำปริมำณข่ำวสำร (information) สำมำรถคำนวณ
D  log 2 10  3.32
 log 2 N
ไดD้จำก
บทที่ 1.3 นำมธรรมเชงิ ดิจต
ิ อล
้
• ตัวอย่ำงด ้ำนบนแสดงข ้อดีของกำรใชนำมธรรมดิ
จต
ิ อล
้
นั่ นคือตัวแปรค่ำไม่ตอ
่ เนือ
่ งสำมำรถนำไปใชแสดงค่
ำ
ิ สต
์ ำ่ งๆเชน
่ ควำมร ้อนหรือส ี หรือข่ำวสำรต่ำงๆ
ทำงฟิ สก
่ ตัวเลข 0-9
เชน
• และเนือ
่ งจำกตัวแปรค่ำไม่ตอ
่ เนือ
่ งสำมำรถแสดงในรูป
ของเลขฐำน 2 หรือโลจิก 0 และ 1 จำนวนหลำยๆบิท
เรียงต่อกัน
• จำกเหตุผลทัง้ 2 ข ้อ เรำจึงสำมำรถออกแบบระบบ
คอมพิวเตอร์เพือ
่ ใชค้ ำนวณตัวเลข, เก็บข ้อมูลอุณหภูม ิ
ี องรถทีผ
ของผู ้ป่ วยในโรงพยำบำล หรือสข
่ ลิตจำก
โรงงำน
บทที่ 1.4 ระบบตัวเลข
ระบบเลขฐำน 10
• เลขฐำน 10 แต่ละหลักมีคำ่ ได ้ตัง้ แต่ 0 ถึง 9
• เลขฐำน 10 N หลัก สำมำรถแสดงค่ำได ้ตัง้ แต่
0 ถึง 10N-1
บทที่ 1.4 ระบบตัวเลข
ระบบเลขฐำน 2
• เลขฐำน 2 เป็ นระบบทีแ
่ ต่ละหลักมีคำ่ 0 หรือ 1
• เลขฐำน 2 N หลักสำมำรถแสดงค่ำได ้ตัง้ แต่ 0 ถึง 2N-1
บทที่ 1.4 ระบบตัวเลข
ระบบเลขฐำน 2
บทที่ 1.4 ระบบตัวเลข
ระบบเลขฐำน 16
• เลขฐำน 16 แต่ละหลัก
้
ใชแสดงเลขฐำน
2
จำนวน 4 bit ดังนัน
้ เลข
ฐำน 16 แต่ละหลักจะ
สำมำรถแสดงค่ำได ้
2EDตั16ง้ แต่
 0010
0 ถึง1110
15 11012
 2 162  14 16  13
 74910
บทที่ 1.4 ระบบตัวเลข
Bytes, Nibbles, และอืน
่ ๆ
• ตัวเลขในระบบดิจต
ิ อลมักประกอบด ้วยเลขฐำน 2
่ ตัวเลขขนำด 8 bit, 16 bit หรือ
จำนวนหลำยบิท เชน
32 bit
ื่ ทีใ่ ชเรี
้ ยกเลขฐำน 2 ขนำดต่ำงๆมีดงั นี้
• ชอ
• 4 bit – Nibble
• 8 bit – Byte
• word หมำยถึงขนำดของเลขฐำน 2 ที่ Microprocessor
่
ถูกออกแบบมำให ้ประมวลผลในแต่ละคำสงั่ ตัวอย่ำงเชน
MCS51 ถูกออกแบบมำให ้แต่ละคำสงั่ สำมำรถ
ประมวลผลเลขฐำน 2 ขนำด 8 bit สว่ น Pentium ถูกออ
อกแบบมำให ้ประมวลผลเลขฐำน 2 ขนำด 32 bit
บทที่ 1.4 ระบบตัวเลข
Bytes, Nibbles, และอืน
่ ๆ
• ในระบบตัวเลขทุกระบบ หลักทีอ
่ ยูด
่ ้ำนขวำมือสุดจะเป็ น
หลักทีม
่ ค
ี วำมสำคัญน ้อยทีส
่ ด
ุ (Least Significant)
เนือ
่ งจำกถ ้ำกำรบันทึกหรือประมวลผลค่ำในหลักนี้เกิด
กำรผิดพลำด จะสง่ ผลให ้ค่ำทัง้ หมดเกิดกำรผิดพลำด
่
ไม่มำก เชน
ค่ำ 103910 บันทึกเป็ น 103710 ค่ำควำมผิดพลำดคือ 210
้ อสุดจะเป็ นหลักทีม
• สว่ นหลักทีอ
่ ยูด
่ ้ำนซำยมื
่ ี
ควำมสำคัญมำกทีส
่ ด
ุ เนือ
่ งจำกถ ้ำมีกำรผิดพลำดทีห
่ ลัก
่
นีจ
้ ะทำให ้เกิดควำมผิดพลำดมำกทีส
่ ด
ุ เชน
ค่ำ 103910 บันทึกเป็ น 303910 ค่ำควำมผิดพลำดคือ
200010
บทที่ 1.4 ระบบตัวเลข
กำรบวกเลขฐำน 2
• กำรบวกเลขฐำน 2 คล ้ำยกับกำรบวกเลขฐำน 10 แต่
ง่ำยกว่ำเนือ
่ งจำกแต่ละหลักมีคำ่ ได ้เพียง 0 หรือ 1
เท่ำนัน
้
• เนือ
่ งจำกระบบดิจต
ิ อลทุกระบบถูกออกแบบมำให ้
สำมำรถประมวลผลเลขฐำน 2 ทีข
่ นำดตำยตัว
่ MCS51 ถูกออกแบบมำให ้ประมวผล
ยกตัวอย่ำงเชน
เลขฐำน 2 ขนำด 8 bit แต่ในบำงครัง้ กำรบวกเลขฐำน 2
อำจจะทำให ้ได ้ค่ำผลลัพธ์ทม
ี่ จ
ี ำนวนบิทมำกกว่ำที่
ระบบดิจต
ิ 1011
อลสำมำรถรั
บได
้ เรำจะเรี
ยกว่
1 0010
2  0111
2 
2 ำกำรเกิด Over
Flow เรำสำมำรถตรวจสอบกำรเกิด Over Flow ได ้โดย
บทที่ 1.4 ระบบตัวเลข
เลขฐำน 2 แบบคิดเครือ
่ งหมำย
• เลขฐำน 2 แบบคิดเครือ
่ งหมำย หมำยถึงเลขฐำน 2 ที่
้
สำมำรถใชแสดงเลขจ
ำนวนเต็มบวก และเลขจำนวน
เต็มลบ
• เลขฐำน 2 แบบคิดเครือ
่ งหมำยทีน
่ ย
ิ มใชกั้ นมีอยู่ 2 แบบ
คือ
1101
01012  510
• Sign/Magnitude
Number
เป็ นระบบทีใ่ ช ้ MSB เป็ น
2  510
เครือ
่ งหมำย และใช ้ N-1 bit ทีเ่ หลือเป็ นค่ำปกติ
่
ตัวอย่ำงเชน
และ 0
01012  11012  1 0010
2
10
ี ของระบบนีค
• ข ้อเสย
้ อ
ื มี 0 อยู่ 2 ค่ำคือ 00002=+010 และ
้
10002=-010 และไม่สำมำรถนำมำใชในกำรบวกลบเลข
่
ฐำน 2 แบบปกติได ้เชน
บทที่ 1.4 ระบบตัวเลข
เลขฐำน 2 แบบคิดเครือ
่ งหมำย
• 2’s Complement Number เป็ นมีกำรคิดค่ำคล ้ำยกับ
ระบบเลขฐำน 2 แบบไม่คด
ิ เครือ
่ งหมำย เพียงแต่คำ่ ของ
MSB จะต ้องคูณด ้วย -2N-1
1 น
่ 8  0  4  1 2  1
• 1011
ตัวอย่
ำงเช
2 
 8  3
 5
• 0101
กำรแปลง
2’s complement มี 2 ขัน
้ ตอนคือ กำรกลับบิท
2  1010 2  12
และกำรบวก
 1011 1
2
01012  10112  1 00002
• กำรบวกเลข 2’s complement สำมำรถบวกได ้แบบปกติ
บทที่ 1.4 ระบบตัวเลข
เลขฐำน 2 แบบคิดเครือ
่ งหมำย
• ในกรณีของกำรบวกเลข 2’s complement ตัวทดจำก
MSB ไม่ได ้เกีย
่ วข ้องกับกำรเกิด Over Flow
• ระบบเลข 2’s Complement ขนำด N bit สำมำรถแสดง
ค่ำได ้ระหว่ำง
-2N-1 ถึง 2N-1-1
• ระบบเลข 2’s
สำมำรถเกิด Over Flow ได ้
1 complement
0 0
่ กันเชน
่
เชน
0 1 1 0
6
 0 1 0 1  5
1 0 1 1  5
• เรำสำมำรถตรวจสอบกำรเกิด Over Flow ของ 2’s
บทที่ 1.5 โลจิกเกต
• คุณสมบัตท
ิ ำงอนำลอกของ
Buffer คือทำหน ้ำทีเ่ ป็ นตัวขับ
กระแสให ้กับภำค Output ไปยัง
มอเตอร์หรือ รีเลย์ เป็ นต ้น หรือ
ทำหน ้ำทีเ่ ป็ นตัวจ่ำยโลจิกให ้กับ
Input ของโลจิกเกตหลำยๆตัว
จุดประสงค์เพือ
่ ให ้ค่ำโลจิก
สำมำรถเปลีย
่ นได ้รวดเร็วขึน
้
บทที่ 1.5 โลจิกเกต
ดิจต
ิ อล
Supply Voltage
• ทิศทำงกำรพัฒนำระบบดิจต
ิ อลจะพยำยำมลดแรงดัน
ไฟเลีย
้ ง VDD ให ้น ้อยลงเรือ
่ ยๆ เพือ
่ ลดอัตรำกำรใช ้
่ ถ ้ำลดแรงดันไฟเลีย
พลังงำน ตัวอย่ำงเชน
้ งจำก 5V ลง
้ งงำนลดลง 60%
เหลือ 3.3V จะทำให ้อัตรำกำรใชพลั
้ งงำนแปรผันตรงกับกำลัง 2 ของ
(อัตรำกำรใชพลั
ไฟเลีย
้ ง)
ดิจต
ิ อล
Logic Level
• ระดับแรงดันของโลจิก 0 และ 1 จะขึน
้ กับแรงดันไฟเลีย
้ ง
โดยมีรำยละเอียดดังต่อไปนี้
• VOL หมำยถึงระดับแรงดันไฟสูงสุดทำงด ้ำน Output
สำหรับโลจิก 0
• VOH หมำยถงระดับแรงดันไฟตำ่ สุดทำงด ้ำน Output
สำหรับโลจิก 1
•• VIL
หมำยถึ
ง
ระดั
บ
แรงดั
น
ไฟสู
ง
สุ
ด
ทำงด
้ำน
Input
ส
ำหรั
บ
Forbidden Zone
โลจิก 0 ่
หมำยถึงชวงของ
• VIH
งระดัไบดแรงดั
นไฟตำ่ สุดทำงด ้ำน Input สำหรับ
แรงดัหมำยถึ
นทีบ
่ อกไม่
้
โลจิ
1 ก 0 หรือ
ว่ำเป็กนโลจิ
1 เป็ นชว่ งต ้องห ้ำม
ของระบบดิจต
ิ อล
ดิจต
ิ อล
Noise Margin
ั ญำณรบกวนได ้สูง
• วงจรดิจต
ิ อลจะมีควำมทนทำนต่อสญ
่ ถ ้ำสญ
ั ญำณโลจิก 0 ที่
กว่ำวงจรอนำลอก ตัวอย่ำงเชน
ป้ อนให ้กับโลจิกเกตถูกรบกวนทำให ้ระดับแรงดันเกิด
กำรเปลีย
่ นแปลง แต่ถ ้ำกำรเปลีย
่ นแปลงของแรงดันมี
ั ญำณโลจิกยังคงถูกมองว่ำเป็ น
ค่ำไม่เกินค่ำ VIL สญ
โลจิก 0
ั ญำณรบกวนทีส
• ดังนั น
้ สญ
่ ำมำรถรบกวนวงจรดิจต
ิ อลได ้
จะต ้องมีขนำดใหญ่มำก
ั ญำณรบกวนทีส
• ขนำดสญ
่ ำมำรถรบกวนวงจรดิจต
ิ อลได ้
ในกรณีทแ
ี่ ย่ทส
ี่ ด
ุ เรำเรียกว่ำ Noise Margin
• NML=VIL-VOL
• NMH=VOH-VIH
ดิจต
ิ อล
DC Transfer Characteristics
• DC Transfer Characteristics หมำยถึง
ั พันธ์ระหว่ำงแรงดันทำงด ้ำน
ควำมสม
Input (V(A)) และ Output (V(Y))
่ แรงดัน Output ของ NOT
• ตัวอย่ำงเชน
gate ในอุดมคติจะมีกำรเปลีย
่ นแปลงค่ำ
เมือ
่ แรงดัน Input มีคำ่ เท่ำกับ VDD/2
• โดยที่ V(Y) = 0 ถ ้ำ V(A) มีคำ่ มำกกว่ำ
VDD/2
• และ V(Y) = VDD ถ ้ำ V(A) มีคำ่ น ้อยกว่ำ
VDD/2
ดิจต
ิ อล
DC Transfer Characteristics
• แต่ในทำงปฏิบต
ั แ
ิ รงดันด ้ำน Output มีกำร
เปลีย
่ นแปลงแบบไม่ทันทีทันใด
• ถ ้ำ V(A)=0 จะทำให ้ V(Y) = VDD
• และเมือ
่ V(A) มีคำ่ เพิม
่ ขึน
้ จะทำให ้ V(Y) มี
ค่ำค่อยๆลดลง
• V(Y) จะลดลงเหลือ 0 เมือ
่ V(A) เท่ำกับ
VDD
• นอกจำกนีจ
้ ด
ุ ศูนย์กลำงของกำร
เปลีย
่ นแปลงอำจจะไม่ได ้อยูท
่ ี่ V(A) =
VDD/2 ดังนัน
้ จึงเป็ นเรือ
่ งยำกทีจ
่ ะกำหนด
แรงดันของโลจิก
ดิจต
ิ อล
DC Transfer Characteristics
• จุดทีด
่ ท
ี ส
ี่ ด
ุ ในกำรกำหนดค่ำโลจิกคือจุดที่
ั ของ DC Transfer
ควำมชน
Characteristics dV(Y)/dV(A) มีคำ่ เท่ำกับ
-1
• เรำเรียก 2 จุดนีว้ ำ่ จุด Unity Gain กำร
เลือก 2 จุดนีจ
้ ะทำให ้ได ้ค่ำ Noise Margin
สูงสุด
• โดยทีจ
่ ด
ุ แรกเป็ นจุดทีใ่ ชก้ ำหนดค่ำ VIL
และ VOH
• สว่ นจุดที่ 2 คือจุดทีใ่ ชก้ ำหนดค่ำ VIH และ
VOL
ดิจต
ิ อล
Static Discipline
• Static Discipline หมำยถึงกฎเกณฑ์ทป
ี่ ้ องกันไม่ให ้
ั ญำณ Input ตกอยูใ่ น Forbidden Zone
สญ
ั ญำณ Input ทีถ
• หรือหมำยควำมว่ำถ ้ำเรำป้ อนสญ
่ ก
ู ต ้อง
ั ญำณ Input ไม่อยูใ่ น Forbidden Zone)
แล ้ว (สญ
ั ญำณ Output ที่
อุปกรณ์ทก
ุ ตัวในวงจรจะต ้องให ้สญ
่ กัน (สญ
ั ญำณ Output ต ้องไม่อยูใ่ น
ถูกต ้องด ้วยเชน
Forbidden Zone)
• ข ้อดีของกฎเกณฑ์นค
ี้ อ
ื ทำให ้กำรออกแบบระบบ
ดิจต
ิ อลทำได ้ง่ำยและมีควำมทนทำนสูง
ดิจต
ิ อล
Static Discipline
• เพือ
่ ป้ องกันควำมผิดพลำด โลจิกเกตจะถูกแบ่ง
ออกเป็ น Logic Family ต่ำงๆ โดยทีโ่ ลจิกเกตทีอ
่ ยูใ่ น
Logic Family เดียวกันจะถูกออกแบบมำให ้เป็ นไปตำม
กฎเกณฑ์ของ Static Discipline
้ ก
• ในกำรออกแบบระบบดิจต
ิ อลเรำควรจะเลือกใชโลจิ
เกตทีอ
่ ยูใ่ น Logic Family เดียวกัน
ดิจต
ิ อล
Static Discipline
้ กเกตทีอ
• ในกรณีทจ
ี่ ำเป็ นจะต ้องเลือกใชโลจิ
่ ยูต
่ ำ่ ง
Logic Family กันจำเป็ นจะต ้องทำกำรตรวจสอบว่ำ
โลจิกเกตทีอ
่ ยูต
่ ำ่ ง Family กันนัน
้ มีควำมเข ้ำกันได ้
(Compatibility) หรือไม่
บทที่ 1.7 CMOS Transistor
• ระบบคอมพิวเตอร์สมัยใหม่ม ี Transistor เป็ นอุปกรณ์
พืน
้ ฐำน
์ เิ ล็กทรอนิกสใ์ นกำร
• Transistor ทำหน ้ำทีเ่ ป็ นสวิทชอ
เปิ ดหรือปิ ด แรงดันหรือกระแส ของวงจรภำยใน
้
• Transistor ทีน
่ ย
ิ มใชในปั
จจุบน
ั มีอยู่ 2 ชนิดคือ Bipolar
Transistor และ Metal-Oxide-Semiconductor Field
Effect Transistor (MOSFET)
บทที่ 1.7 CMOS Transistor
n-MOS และ p-MOS Transistors
์ ถ
• MOSFET เปรียบเสมือนกับสวิทซท
ี่ ก
ู ควบคุมโดย
แรงดันของขำ Gate
• แรงดันของขำ Gate จะสร ้ำงสนำมไฟฟ้ ำเพือ
่ ไป เปิ ด/
ื่ มต่อระหว่ำงขำ Source และ Drain
ปิ ด กำรเชอ
บทที่ 1.7 CMOS Transistor
n-MOS และ p-MOS Transistors
พิจำรณำกำรทำงำนของ n-MOS
ั ้ Substrate ของ n-MOS
• โดยปกติชน
จะต่ออยูก
่ บ
ั กรำวด์
• จำกนัน
้ จึงต่อขำ Gate กับกรำวด์
่ กัน
เชน
• เนือ
่ งจำกแรงดันของขำ Source
และ Drain มีคำ่ เป็ นบวก ดังนัน
้ จึง
ทำให ้ Diode ทีอ
่ ยูร่ ะหว่ำง Source
กับ Substrate หรือ Drain กับ
Substrate เป็ น Reverse Bias ดังนัน
้
จึงไม่มก
ี ระแสไหลผ่ำน Source และ
Drain จึงเปรียบเสมือนกับเป็ นกำร
ปิ ดสวิทซ ์
บทที่ 1.7 CMOS Transistor
n-MOS และ p-MOS Transistors
จำกนัน
้ จึงพิจำรณำในกรณีทข
ี่ ำ Gate
ต่อกับ VDD
• เมือ
่ แรงดันขำ Gate เป็ นบวกเทียบ
ั ้ Substrate จะทำให ้เกิด
กับชน
สนำมไฟฟ้ ำขึน
้ โดยทีป
่ ระจุบวกจะ
ั ้ ของ Gate และประจุลบจะ
อยูท
่ ช
ี่ น
ั ้ ของ Substrate
อยูท
่ ช
ี่ น
• ถ ้ำแรงดันทีป
่ ้ อนให ้กับ Gate มีคำ่
มำกพอจะทำให ้เกิดประจุลบจำนวน
ั ้ ของ Gate ทำให ้
มำกอยูใ่ ต ้ชน
บริเวณของ Substrate ทีอ
่ ยูใ่ ต ้ Gate
เกิดเป็ น n-type เรำจะเรียกบริเวณ
ดังกล่ำวว่ำ Channel
บทที่ 1.7 CMOS Transistor
n-MOS และ p-MOS Transistors
• Channel ทีเ่ กิดขึน
้ จะทำให ้เกิดกำร
ื่ ม n-type จำก Source ไปยัง
เชอ
Drain ทำให ้เกิดกระแสไหลผ่ำนได ้
• แรงดันของ Gate ทีท
่ ำให ้
Transistor ON เรำจะเรียกว่ำ
Threshold Voltage
• โดยทัว่ ไปจะมีคำ่ ระหว่ำง 0.3 ถึง 0.7
V
บทที่ 1.7 CMOS Transistor
n-MOS และ p-MOS Transistors
ั้
• p-MOS มีกำรทำงำนทีต
่ รงข ้ำมกับ n-MOS โดยทีช
่ น
Substrate จะต ้องต่อกับ VDD และ Transistor จะเปิ ด
เมือ
่ แรงดันขำ Gate เป็ น 0 และปิ ดเมือ
่ แรงดันขำ Gate
เป็ น VDD
บทที่ 1.7 CMOS Transistor
CMOS Logic Gate
บทที่ 1.7 CMOS Transistor
CMOS Logic Gate
บทที่ 1.7 CMOS Transistor
Pseudo-nMOS Logic
• NOR Gate ชนิด N Input ใช ้ n-MOS
ต่อขนำนกัน N ตัวและ p-MOS ต่อ
อนุกรมกัน N ตัว
• กำรต่อ Transistor อนุกรมกันจะ
้ ำต่อขนำนกัน
ทำงำนชำกว่
• นอกจำกนี้ p-MOS ยังทำงำนได ้ชำ้
กว่ำ n-MOS
• ดังนัน
้ n-MOS ต่อขนำนกันจึงทำงำน
ได ้เร็ว และกำรต่อ p-MOS อนุกรมกัน
จึงทำงำนได ้ชำ้ โดยเฉพำะอย่ำงยิง่
ถ ้ำมีกำรต่ออนุกรมกันจำนวนมำก
บทที่ 1.7 CMOS Transistor
Pseudo-nMOS Logic
้
• เรำสำมำรถแก ้ปั ญหำควำมชำของกำรต่
อ
อนุกรม p-MOS โดยใช ้ Weak p-MOS
• Gate ของ Weak p-MOS ต่อกับกรำวด์
ทำให ้ Weak p-MOS เปิ ดตลอดเวลำ เรำ
จะเรียกกำรต่อแบบ Weak Pull-UP
• โครงสร ้ำงของ Weak p-MOS ถูก
ออกแบบมำให ้ Pull Output Y ให ้เป็ น
High แบบ Weak นั่นคือ
• Y = High ถ ้ำ n-MOS ทุกตัว OFF
• Y มีคำ่ เกือบเป็ น Low ถ ้ำ n-MOS ตัวใด
ตัวหนึง่ ON
บทที่ 1.7 CMOS Transistor
Pseudo-nMOS Logic
• ข ้อดีของกำรใช ้ Pseudo n-MOS คือทำให ้โลจิกเกตทีม
่ ี
หลำย Input ทำงำนได ้รวดเร็ว
ี ของกำรใช ้ Pseudo n-MOS คือ ถึงแม ้ว่ำ Output
• ข ้อเสย
จะมีโลจิกเกือบเป็ น 0 ถ ้ำมี n-MOS ตัวใดตัวหนึง่ ON
แต่เนือ
่ งจำก Weak p-MOS ON ตลอดเวลำ ทำให ้เมือ
่
ต ้องกำรให ้ Output เป็ นโลจิก 0 จะมีกระแสไหลจำก
ิ้ เปลือง
ไฟเลีย
้ งลงกรำวด์ตลอดเวลำ ซงึ่ ทำให ้สน
พลังงำน
้
• Pseudo n-MOS ควรใชในกรณี
ทจ
ี่ ำเป็ นต ้องกำรให ้
ทำงำนอย่ำงรวดเร็วเท่ำนัน
้
้ งงำน
บทที่ 1.8 กำรใชพลั
้ งงำนในระบบดิจต
• กำรใชพลั
ิ อลมีอยู่ 2 แบบคือ
้ งงำนเพือ
• Dynamic Power เป็ นกำรใชพลั
่ ชำร์จตัวเก็บ
ั ญำณมีกำรเปลีย
ประจุภำยในวงจรเมือ
่ สญ
่ นโลจิก เรำ
สำมำรถคำนวณหำค่ำ Dynamic Power ได ้จำก
PDynamic
1
2
 CVDD
f
2
้ งงำนของระบบดิจต
• Static Power เป็ นกำรใชพลั
ิ อล
ั ญำณมีโลจิกคงที่ เชน
่ กระแสรั่วไหลใน
ในชว่ งเวลำทีส
่ ญ
วงจรทีใ่ ช ้ Pseudo n-MOS เป็ นต ้น