หลายคนคงจะสงสัยว่า MCU กับ MPU ต่างกันอย่างไรแล้ว มันคืออะไรแล้วก็มันใช้แทนกันได้ไหมนะ เรามาทำความรู้จักถึงรายละเอียดและข้อดีข้อเสียของ MCU กับ MPU กัน
MCU (Microcontroller Unit, uC, ไมโครคอนโทรลเลอร์)
เราสามารถแยกได้เป็น 2 คำ คือ ไมโคร และ คอนโทรลเลอร์ เมื่อนำทั้งสองคำมารวมกันก็กลายเป็น การคอนโทรลขนาดเล็ก เป็นคอมพิวเตอร์ขนาดเล็กบน IC เดียวกัน ซึงภายในประกอบไปด้วย หน่วยประมวณผล (Processor), หน่วยความจำ (Memory), Peripheral ต่างๆเช่น ADC, Timer USART, USRAT หรือแม้กระทั้ง AES modules
ข้อดีของ MCU
- ราคาถูก
- MCU ใช้ Flash memory แบบ Embedded On chip จึงทำให้รันโปรแกรมที่เขียนไว้ได้อย่างรวดเร็ว ใช้เวลาในการ Start up น้อยมาก MCU บางเจ้าเริ่มมาใช้ FRAM แทน Flash ทำให้ทำงานเร็วขึ้นกว่าเดิมมาก
- สามารถใช้ได้กับงาน Real Time เนื่องจากมี Interrupt latency ที่น้อยกว่า MPU
- Low power ประหยัดไฟ
ข้อเสียของ MCU
- ขนาดของ Flash MCU น้อย เนื่องจาก Flash memory แบบ Embedded On chip ณ ขณะนี้ (ปี2015) ขนาด Flash ใหญ่ที่สุดอยู่ที่ 2Mbytes
- ไม่เหมาะกับการใช้งานกับ OS เพราะ มี memory ขนาดเล็ก และ มีหน่วย ประมวณผลที่ช้า ตัวอย่างเช่น การใช้งาน Linux, Windows CE หรือ Android OS ต้องการความเร็วของการประมวลผลที่ 300-400 DMIPS แต่ MCU ARM Cortex M4 (Atmel SAMA5D3) มีความเร็ว 150 DMIPS
MPU (Microprocessor Unit, ไมโครโพเซสเซอร์, uP)
![MPU (ARM Sitara MPU)](https://i0.wp.com/i.imgur.com/ZSIelJO.jpg?resize=889%2C649)
เป็นหน่วยประมวณผล ที่รวบรวมคำสั่งต่างๆ ไว้บน IC ตัวเดียว หากเราจะนำ MPU ไปใช้งานจะต้องนำไปเชื่อมต่อกับ Module อื่นๆ เช่น External memory ไม่สามารถทำงานเดี่ยวแบบ MCU ได้
ข้อดีของ MPU
- หน่วยประมวณผลมีประสิทธิภาพสูง ตัวอย่างเช่น ARM Cortex-A5 MPU มีความเร็วถึง 850 DMIPSในขณะที่ ARM Cortex-M4 มีความเร็วที่ 150 DMIPS
- สามารถเพิ่มหน่วยความจำ เพิ่มเติมที่มีขนาดใหญ่ ตั้งแต่ไม่กี่ Mbytes ไปจนถึง Gbytes
ข้อเสียของ MPU
- ทำให้การรันโปรแกรมนั้นช้ากว่า MCU เนื่องจากใช้ External memory ต้องติดต่อกับอุปกรณ์ภายนอก
- ต้องต่อ อุปกรณ์ภายนอกเพิ่มเติมทำให้บอร์ดมีขนาดใหญ่ซับซ้อน ใช้อุปกรณ์มากกกว่า MCU
การเลือกใช้งาน MCU และ MPU
การเลือกใช้งาน MCU และ MPU ต่างก็มีข้อดีข้อเสียกันคนละด้าน ซึ่งเราควรมองที่ Application ที่เราจะเอาไปใช้งานเป็นสำคัญ
ตัวอย่างการเลือกใช้ MCU ถ้าเป็นงานที่เป็น Time-sensitive applications เช่น Motor control, Safety critical, Robot, pick-and-place เป็นต้น
ตัวอย่างการเลือกใช้ MPU ถ้าเป็นงานที่เป็น Full OS Application ใช้ memory ขนาดใหญ่ เช่น GUI interface, touch-screen HMIs, High speed communication Gigabit Ethernet, Plug and play hardware เป็นต้น
MPU และ MCU นั้นมีข้อดีข้อเสียแตกต่างกัน รวมถึงการเลือกการใช้งานควรจะใช้งานให้ถูกประเภทเพื่อให้งาน Application ทำงานได้อย่างถูกต้องและมีประสิทธิภาพ