ลองจินตนาการถึงหนังเรื่อง The Matrix หรือแนวคิด "สมองในโหลแก้ว (Brain in a jar)" ที่ถูกกระตุ้นด้วยกระแสไฟฟ้าจนคิดว่าตัวเองกำลังใช้ชีวิตอยู่ในโลกจริงๆ ดูสิครับ... วันนี้มีเมกเกอร์สายเรโทรคนนึงทำแบบนั้นกับซีพียูคอมพิวเตอร์!
เรื่องเริ่มจากคุณ Nagy Krisztián มีซีพียู Intel 286 รุ่นเดอะอยู่ตัวนึง แต่ปัญหาคือเขาไม่มีเมนบอร์ดสำหรับติดตั้งมัน ด้วยความที่ไม่อยากปล่อยให้ซีพียูตัวนี้ต้องอยู่อย่างโดดเดี่ยว เขาจึงตัดสินใจ [Nagy] built a simulated system to bring the chip back to life. (สร้างระบบจำลองเพื่อปลุกชีพชิปตัวนี้ขึ้นมาอีกครั้ง)

ฮาร์ดแวร์: หลอกซีพียูด้วยไมโครคอนโทรลเลอร์
คอนเซปต์ของโปรเจกต์นี้เรียบง่ายมาก คือการเอา Raspberry Pi Pico มาทำหน้าที่จำลอง (Emulate) ชิ้นส่วนต่างๆ ของคอมพิวเตอร์ที่ CPU 286 คาดหวังว่าจะต้องสื่อสารด้วย
การทำแบบนี้กับซีพียูโบราณถือว่าไม่ยากเกินไปนัก เพราะ Intel 286 มีขาเชื่อมต่อเพียง 68 Pins (ซึ่งดูเหมือนจะเยอะเมื่อเอามาเรียงกันบนบอร์ด แต่ก็น้อยกว่าซีพียูยุคปัจจุบันที่มีมากกว่า 1,000+ Pins เยอะมาก) อุปกรณ์ที่เขาใช้ประกอบด้วย:
- บอร์ดไมโครคอนโทรลเลอร์ Raspberry Pi Pico
- ซ็อกเก็ตแบบ PLCC-68 และแผ่น Adapter PCB
- เบรดบอร์ด (Breadboard) สำหรับต่อวงจร
- ไอซีขยายพอร์ต MCP23s17 logic expanders (เพื่อให้ Pico มีขา I/O มากพอที่จะไปคุยกับ 286)
การทำงานใน "โลกจำลอง"
หลังจากลงแรงเขียนโค้ดและต่อวงจร Nagy ก็สามารถทำให้ Pi Pico สั่งรัน CPU 286 ได้สำเร็จ! โดยให้มันประมวลผลโปรแกรมง่ายๆ อย่างการดึงตัวเลขออกจาก "หน่วยความจำ (ที่จำลองขึ้นมา)" แล้วเขียนค่ากลับลงไปตามลำดับ
ข้อจำกัด: แน่นอนว่าระบบนี้ไม่ได้ทำงานเต็มสปีดที่ 12 MHz และยังห่างไกลจากการบูตระบบปฏิบัติการ (OS) หรือสื่อสารกับอุปกรณ์ต่อพ่วงอื่นๆ แต่ความเจ๋งคือ มุมมองของตัวซีพียู 286 ตัวนี้ไม่ได้อยู่ในคอมพิวเตอร์จริงๆ มันแค่ถูกต่อเข้ากับไมโครคอนโทรลเลอร์ที่คอยกระตุ้นสัญญาณไฟฟ้าตามขาต่างๆ อย่างถูกต้อง จนตัวมันเองแยกไม่ออกเลยว่านี่คือความจริงหรือภาพลวงตา (The Matrix ชัดๆ!)
โปรเจกต์สาย Retro อื่นๆ ที่น่าสนใจ
นี่ไม่ใช่ครั้งแรกที่เราได้เห็นการคืนชีพชิปเก่าๆ ก่อนหน้านี้เคยมี โปรเจกต์ที่ใช้บอร์ด FPGA ช่วยชุบชีวิตโปรเซสเซอร์โบราณอย่าง NEC V20 มาแล้วเช่นกัน
ถ้าคุณเป็นสาย Maker ที่กำลังรื้อฟื้นเทคโนโลยีในยุคอดีตแบบนี้อยู่ ลองส่งไอเดียของคุณไปบอกเล่าได้ที่ Tips Line ของ Hackaday ได้เลยครับ!
สนใจเริ่มทำโปรเจกต์บอร์ดไมโครคอนโทรลเลอร์ใช่ไหม?
คำเตือน: เนื้อหานี้เป็นการสรุปและเรียบเรียงจากบทความต้นฉบับภาษาอังกฤษ ข้อมูลฉบับภาษาไทยอาจมีความคลาดเคลื่อนบางประการจากการตีความหรือย่อเนื้อหา