หัวข้อในบทความนี้ - การทำงานของคอมพิวเตอร์ - Microprocessor - Microcontroller - สรุปความแตกต่าง ในตอนที่เราทำโปรเจคก็มักจะมีคำพูดในขั้นตอนการเลือกอุปกรณ์ว่าตัวนี้ใช้ "ไมโครคอนโทรลเลอร์ : Microcontroller" เบอร์อะไร คุณสมบัติบลา ๆ ๆ ซึ่งตรงนี้ก็จะมีอีกหนึ่งคำที่ใกล้เคียงกัน และได้ยินบ่อยคุ้นหูพอ ๆ กัน คือ "ไมโครโปรเซสเซอร์ : Microprocessor" แล้วทั้งสองอย่างนี้ต่างกันตรงไหน วันนี้มาคุยกันครับการทำงานของคอมพิวเตอร์ ก่อนที่จะไปรู้ถึงความแตกต่างของทั้งสองตามหัวข้อ เรามาพูดถึงการทำงานของคอมพิวเตอร์กันแบบสั้น ๆ เพื่อให้เข้าใจง่ายขึ้น ซึ่งก็มีในบทเรียนตอนมัธยมแล้ว มาทบทวนกันแบบเร็ว ๆ ครับ คอมพิวเตอร์ จำเป็นต้องมีส่วนประกอบ 4 อย่าง คือ หน่วยประมวลผลกลาง(Central Processor Unit) หน่วยความจำ(Memory Unit) หน่วยรับข้อมูล(Input Unit) และหน่วยแสดงผล(Output Unit) บางตำราจะจับหน่วยนำเข้าและส่งออกมารวมกันก็ได้ หรืออาจแยกหน่วยความจำหลัก-รองออกจากกันก็ได้ บทความนี้ไม่ได้ให้นำไปอ้างอิงเพื่อสอบ อ่านกันสบาย ๆ อย่าคิดมาก หน่วยประมวลผลกลาง(Central Processor Unit) ที่เราย่อว่า CPU คุ้นกันมั๊ยครับ มีหน้าที่ควบคุมลำดับการทำงาน ประมวลผลข้อมูลต่าง ๆ และประสานการทำงานระหว่างหน่วยต่าง ๆ ในระบบ หน่วยความจำ(Memory Unit) ทำหน้าที่จัดเก็บชุดคำสั่งและข้อมูลต่าง ๆ ที่ต้องใช้ในการทำงาน มีทั้งหน่วยความจำหลัก และหน่ายความจำรอง หน่วยรับข้อมูล(Input Unit) ทำหน้าที่รับข้อมูลหรือคำสั่งจากภายนอก เพื่อนำมาประมวลผลแล้วจัดเก็บในหน่วยความจำ หน่วยแสดงผล(Output Unit) มีหน้าที่แสดงข้อมูลที่เป็นผลลัพธ์หลังจากการประมวลผลออกมา การทำงานจะเป็นขั้นตอนคือหน่วยรับข้อมูลมีหน้าที่รับข้อมูลหรือคำสั่งเข้ามา จากนั้นจึงนำไปประมวลผลและ/หรือจัดเก็บในหน่วยความจำ แล้วส่งต่อให้หน่วยแสดงผลทำหน้าที่แสดงผลลัพธ์ออกมา ตัวอย่างเช่นเครื่องคอมพิวเตอร์ของเรา เวลาเราเปิดหน้าเว็บนี้มาได้ก็ต้องเริ่มจากหน่วยรับข้อมูล เม้าส์คลิกและใช้คีย์บอร์ดพิมพ์ ข้อมูลก็จะถูกส่งไปที่ CPU จึงทำการประมวลผลว่าข้อมูลที่เราใส่เข้ามานั้นหมายความว่าอะไร ต้องทำงานแบบไหน เมื่อประมวลเรียบร้อยแล้วก็จะส่งให้หน้าจอทำหน้าที่เป็นหน่วยแสดงผล แสดงผลลัพธ์คือหน้าเว็บนี้ออกมานั่นเอง ซึ่งระหว่างการทำงานแต่ละขั้นตอนก็จะมีการทำงานกับหน่วยความจำตลอดเวลา ทั้งการทดข้อมูลไว้ใน RAM เพื่อเรียกใช้ การเขียนไฟล์ลง Harddisk เพื่อเก็บเป็นประวัติการเข้าดู เวลามาเปิดใหม่ประวัติก็จะได้ไม่หายไป เป็นต้นMicroprocessor ไมโครโปรเซสเซอร์ จะเป็นหน่วยควบคุมหลัก ทำหน้าที่ควบคุมการทำงาน ประมวลผล และคำนวณข้อมูลเพียงเท่านั้น ซึ่งทำงานด้วยวิธีใช้ตรรกะทางคณิตศาสตร์ โดยตัวของมันเองจะไม่สามารถทำงานโดยลำพังได้ จะต้องมีส่วนประกอบอื่น ๆ ที่เหลือมาประกอบด้วย ไมโครโปรเซสเซอร์ที่คุ้นเคยกันคือ CPU ในคอมพิวเตอร์ของเรานั่นเอง ต่อให้เราซื้อ Core i9-12900K มา มันก็ไม่สามารถทำงานได้ เพราะมันคือไมโครโปรเซสเซอร์ มันจะต้องมี RAM Harddisk GPU เม้าส์ คีย์บอร์ด หน้าจอ มาประกอบเพื่อให้มันทำงานได้Microcontroller ไมโครคอนโทรลเลอร์ คือวงจรรวม (Integrated Circuit : IC) ที่ถูกออกแบบมาเพื่อใช้งานในอุปกรณ์ที่ต้องการให้ทำงานโดยอัตโนมัติ และไม่ซับซ้อนมากนัก ตามคำสั่งที่ได้กำหนดไว้แล้ว ซึ่งไมโครคอนโทรลเลอร์ถูกออกแบบให้ทำงานที่ความเร็วต่ำ(โดยทั่วไปคือ 1-200 MHz) และใช้พลังงานต่ำเนื่องจากต้องทำงานร่วมกับอุปกรณ์อื่น ๆ ที่ต่อพ่วงด้วย และด้วยความที่ไมโครคอนโทรลเลอร์นี้เป็นวงจรรวม ภายใน IC ก็จะประกอบด้วย CPU, RAM, ROM, Flash Memory และอาจรวมถึงอื่น ๆ เช่น EEPROM, EPROM ทำให้ภายในไมโครคอนโทรลเลอร์นี้มีส่วนประกอบของคอมพิวเตอร์ครบทั้งหมด มันจึงสามารถทำงานด้วยตัวมันเองเพียงตัวเดียวได้เลยทันที เรามักพบไมโครคอนโทรลเลอร์แผงอยู่ในชีวิตประจำวันของเรามากมาย อาทิ ในอุปกรณ์ไฟฟ้าต่าง ๆ เช่น เครื่องซักผ้า ไมโครเวฟ พบได้ในรถยนต์-รถจักรยานยนต์ในรูปของกล่อง ECU ที่ควบคุมการจ่ายน้ำมัน ควบคุมระบบต่าง ๆ ของรถ ในอุปกรณ์คอมพิวเตอร์ต่าง ๆ และในของใช้อีกมากมายสรุปความแตกต่าง
Microprocessor |
Microcontroller |
เป็นส่วนประกอบหลักของ "คอมพิวเตอร์" |
เป็นส่วนประกอบหลักของ "ระบบสมองกลฝังตัว" |
ต้องมีส่วนประกอบอื่น ๆ ต่อพ่วงภายนอก |
มีส่วนประกอบทั้งหมดรวมอยู่ในตัว |
วงจรมีความซับซ้อน เนื่องจากต้องเชื่อมต่อส่วนประกอบมากมาย |
วงจรไม่ซับซ้อน เนื่องจากมีส่วนประกอบอยู่ในตัว ไม่จำเป็นต้องเชื่อมอุปกรณ์ภายนอก |
มักใช้งานอยู่ในเครื่องคอมพิวเตอร์ที่เราคุ้นชิน |
ใช้งานในอุปกรณ์ต่าง ๆ ที่เราใช้งานกัน |
คีย์หลักของความแตกต่าง 3 ประการ ในการเลือกใช้งาน ราคา ไมโครคอนโทรลเลอร์ มีราคาถูกกว่า ไมโครโปรเซสเซอร์ ไมโครโปรเซสเซอร์มักถูกออกแบบมาสำหรับทำงานในระบบที่มีราคาสูง สามารถทำงานที่ซับซ้อนได้ ในขณะที่ไมโครคอนโทรลเลอร์ ถูกออกแบบมาให้ทำงานเฉพาะตามที่ได้ทำการเขียนโปรแกรมไว้แล้ว ความเร็ว ไมโครคอนโทรลเลอร์ มีความเร็วต่ำกว่า ไมโครโปรเซสเซอร์ ไมโครโปรเซสเซอร์ถูกออกแบบมาให้ทำงานในระบบคอมพิวเตอร์ที่ซับซ้อน มีคำสั่งที่ไม่สามารถคาดเดาได้ จึงต้องการความเร็วสูงเพื่อการประมวลผลให้มีประสิทธิภาพ ในขณะที่ไมโครคอนโทรลเลอร์จะทำงานไม่ซับซ้อนตามคำสั่งที่ได้เขียนไว้ล่วงหน้าแล้ว จึงไม่จำเป็นต้องใช้ความเร็วสูงในการประมวลผล การใช้พลังงาน ไมโครคอนโทรลเลอร์ ใช้พลังงานต่ำกว่า ไมโครโปรเซสเซอร์ แม้ว่าไมโครคอนโทรลเลอร์จะทำงานได้ไม่ซับซ้อนและมีความเร็วต่ำ แต่ก็มีข้อดีคือใช้พลังงานต่ำ เนื่องจากมักถูกออกแบบให้ใช้ในอุปกรณ์ขนาดเล็ก-อุปกรณ์พกพา ไมโครโปรเซสเซอร์มักใช้พลังงานสูงเพื่อรองรับการประมวลผลคำสั่งหนัก ๆ นั่นเอง
สำหรับวันนี้หวังว่าคงพอเข้าใจความแตกต่างกันบ้างนะครับ จริง ๆ แล้วจะมาพิมพ์ให้เข้าใจได้ง่ายนั้นค่อนข้างยากพอสมควร เนื่องจากมีเรื่องทางเทคนิคมากมาย มีศัพท์ต่าง ๆ เยอะ และเนื้อหาซับซ้อน ค่อย ๆ ทำความเข้าใจกันนะครับ
อ้างอิง :
Microprocessor vs Microcontroller: What is the difference?
(ทั้งหมดเข้าถึงเมื่อ 8 มีนาคม 2022)