picoZ80 ออกแบบมาเพื่อใช้แทนไมโครโปรเซสเซอร์ Z80 โดยใช้ Raspberry Pi RP2350B และ ESP32

บอร์ด picoZ80 เป็นอุปกรณ์ที่ออกแบบมาเพื่อใช้แทนไมโครโปรเซสเซอร์ Z80 ได้โดยตรง (drop-in replacement) โดยใช้ไมโครคอนโทรลเลอร์ Raspberry Pi RP2350B แบบ dual-core Cortex-M33 และมีชิป SoC ไร้สาย ESP32 สำหรับการเชื่อมต่อ WiFi และ Bluetooth

คอมพิวเตอร์เครื่องแรกของเราเป็น ZX81 ซึ่งใช้ไมโครโปรเซสเซอร์ Zilog Z80 โดย Z80 นี้ได้ยุติการผลิตไปในปี 2024 หลังจากมีการใช้งานมายาวนานเกือบ 50 ปี แต่กลุ่มผู้สนใจคอมพิวเตอร์ย้อนยุค (retro computing) ยังคงทำให้แพลตฟอร์มนี้มีชีวิตอยู่ต่อไป โดยมักใช้การจำลองแบบ softcore บน FPGA เช่น MiSTer แต่ picoZ80 มีความแตกต่างออกไป เนื่องจากมันอาศัยระบบ Programmable I/O (PIO) state machines จาก MCU RP2350B เพื่อจำลองสัญญาณบัส address, data และ control ของ Z80 MPU ได้อย่างแม่นยำในระดับ cycle-accurate

picoZ80
picoZ80 v2.5

สเปคของ picoZ80 specifications:

  • ไมโครคอนโทรลเลอร์ – Raspberry Pi RP2350B
    • CPU – Dual-core Arm Cortex-M33 CPU @ สูงสุด 150/300 MHz  (คอร์ RISC-V จำนวน 2 คอร์ไม่ได้ถูกใช้งานในโปรเจกต์นี้))
    • หน่วยความจำ  – SRAM ขนาด 520KB
    • สตอเรจ – OTP Flash ขนาด 8KB
    • แพ็กเกจ  – QFN-80
  • หน่วยความจำ – PSRAM ขนาด 8MB
  • สตอเรจ
    • Flash ขนาด 16MB
    • รองรับการ์ด MicroSD (ผ่านชิป ESP32)
  • การเชื่อมต่อไร้สาย (Wireless) – WiFi และ Bluetooth ผ่านชิป ESP32 พร้อมสายอากาศแบบเซรามิก
  • USB – พอร์ต Micro USB สำหรับแฟลชเฟิร์มแวร์ของ RP2350 และ ESP32
  • อินเทอร์เฟซโฮสต์ – ซ็อกเก็ต CPU แบบ Z80 DIP-40 สำหรับคอมพิวเตอร์ Z80 รุ่นเก่า รองรับการทดสอบกับเครื่อง Sharp MZ หลายรุ่น

Zilog Z80 Raspberry Pi RP2350B drop in replacement

ไฟล์ตั้งค่า config.json แบบอ่านเข้าใจได้ (human-readable) เพียงไฟล์เดียวที่จัดเก็บอยู่ในการ์ด microSD ช่วยให้ผู้ใช้สามารถปรับเปลี่ยนการตั้งค่าต่าง ๆ ของบอร์ดได้ เช่น memory map, ไฟล์ ROM หรือการเลือกไดรเวอร์ โดยไม่จำเป็นต้องคอมไพล์เฟิร์มแวร์ใหม่อีกครั้ง นั่นหมายความว่าคุณสามารถสลับการใช้งานบอร์ดให้รองรับเครื่องรุ่นอื่นได้ เพียงแค่แก้ไขไฟล์ JSON เท่านั้น

นอกจากนี้ Philip Smart ยังอธิบายว่ากำลังพัฒนาชุด “personas” เพื่อเพิ่มความสามารถต่าง ๆ เช่น banked RAM/ROM, floppy disk emulation (WD1773), QuickDisk emulation, ROM Filing System และ TranZPUter Filing System ตัวอย่างของ personas ได้แก่ MZ-700, MZ-80A, MZ-80B, MZ-800, เครื่องคอมพิวเตอร์ตระกูล Sharp รุ่นอื่น ๆ และ Amstrad PCW

picoZ80 dahboard
แดชบอร์ดการตั้งค่าผ่านเว็บ

ชิป ESP32 ช่วยให้สามารถเชื่อมต่อ WiFi เพื่อเข้าถึงเว็บอินเทอร์เฟซสำหรับตั้งค่าระบบได้ โดยผู้ใช้สามารถปรับแต่งการตั้งค่าต่าง ๆ ของระบบ, จัดการไฟล์, อัปเดตเฟิร์มแวร์แบบ OTA และเลือก persona ให้ตรงกับฮาร์ดแวร์ที่ใช้งาน

เอกสารด้านฮาร์ดแวร์และเฟิร์มแวร์ของ picoZ80 ให้รายละเอียดเกี่ยวกับโปรเจกต์นี้ได้อย่างครบถ้วน ซึ่งในขณะนี้ดูเหมือนว่ายังไม่ได้เปิดเป็นโอเพ่นซอร์ส แต่มีโพสต์บน X ระบุว่า “โค้ดและแผนผังวงจร (schematics) จะถูกเปิดเป็นโอเพ่นซอร์สบน GitHub ในเร็ว ๆ นี้”

PicoZ80 2.0 tested on RC2014 Mini board
PicoZ80 v2.0 ทดสอบบนบอร์ด RC2014 Mini

ขณะนี้ยังไม่มีการวางจำหน่ายเชิงพาณิชย์ แต่ในอนาคตอันใกล้คุณจะสามารถสร้างใช้งานเองได้ เนื่องจากดีไซน์ฮาร์ดแวร์ของ picoZ80 (เช่น schematics, PCB layout, ไฟล์ KiCad), เฟิร์มแวร์ และซอฟต์แวร์ที่เกี่ยวข้องทั้งหมดจะถูกเปิดให้ใช้งานสำหรับวัตถุประสงค์ส่วนตัว การศึกษา และไม่ใช่เชิงพาณิชย์ แต่ต้องการนำดีไซน์นี้ไปพัฒนาเป็นผลิตภัณฑ์เชิงพาณิชย์ จะต้องได้รับอนุญาตเป็นลายลักษณ์อักษรจาก Philip Smart ก่อน

แปลภาษาไทย : picoZ80 – A Z80 microprocessor drop-in replacement based on Raspberry Pi RP2350B and ESP32

Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
โฆษณา