เว็บนี้ไล่เนื้อหาตามข้อสอบทั้ง 6 ข้อ ทีละข้อ ว่าต้องรู้อะไรบ้าง มี animation ให้เห็นภาพ แล้วปิดท้ายด้วยโจทย์หลักตามที่อาจารย์ประกาศ พร้อมตัวอย่างเพิ่มอีกข้อละ 5 ตัวอย่างและเฉลยเต็ม
ปล. มีชีท Instruction Set ให้
ปีที่แล้วสอบ 3 ข้อ 80 คะแนน: Assembly (30) · Delay (20) · Timing Diagram (30)
โดยข้อ Delay มาจาก Lab 3 ตรง ๆ และห้องสอบ ห้ามใช้เครื่องคิดเลข
ปีนี้ 6 ข้อ 120 คะแนน และข้อ 3 เขียนว่า “จงเขียนโค้ด Z80 Assembly ……….”
— จุดไข่ปลานั้นยังไม่บอก จึงควรเตรียมโจทย์หน่วงเวลาไว้ด้วย
ข้อ 1 → 2 → 6 คือ โจทย์ฮาร์ดแวร์ชุดเดียวกัน (วาดวงจร → วิเคราะห์ → สลับ RAM/ROM) ส่วนข้อ 3 → 4 → 5 คือ โจทย์ซอฟต์แวร์ชุดเดียวกัน (เขียนโค้ด → หา opcode → วาด timing) แปลว่าถ้าออกแบบวงจรในข้อ 1 ให้ดี ๆ และเขียนโค้ดในข้อ 3 ให้ “แตะทั้ง memory และ I/O” อีก 4 ข้อจะไหลตามมาเอง รวม 120 คะแนน แต่จริง ๆ คิดแค่ 2 เรื่อง
ขา Z80 ทุกกลุ่ม, โครงสร้างชิปหน่วยความจำ, การสร้าง MEMRD/MEMWR/IORD/IOWR, วิธี decode ด้วย logic gate และ 74LS138, latch/buffer สำหรับพอร์ต I/O
ไล่ address จาก Z80 ไปถึงชิปทีละบิต, สูตรนับภาพซ้ำ 2^(16−n−k),
full vs partial decoding และเครื่องมือให้ลองพิมพ์ address ดูว่าชิปไหนตอบ
Register set, flag, addressing mode, กลุ่มคำสั่งที่ออกสอบบ่อย และแพตเทิร์นสำเร็จรูป: อ่านพอร์ต → เก็บ RAM → ส่งออกพอร์ต, ลูปหน่วงเวลา, บวก/ลบเลข
อ่านชีท Instruction Set ให้เป็น (คอลัมน์ 76 543 210), ตารางรหัส r/dd/qq/cc, prefix DD FD ED CB, การนับ address และคิด displacement ของ JR/DJNZ
M1 / Memory Read / Memory Write / I/O Read / I/O Write ครบทุกแบบ พร้อมไดอะแกรมที่กดเล่นได้ ไล่ทีละขอบสัญญาณว่าเกิดอะไรตอนไหน
ทำซ้ำข้อ 2 กับผังใหม่ + ประเด็นสำคัญที่คนพลาดกันหมด:
Z80 reset แล้วเริ่มที่ 0000H เสมอ ถ้าเอา RAM ไปวางตรงนั้นจะเกิดอะไรขึ้น
ปีที่แล้วออกเป็นข้อ 2 เต็ม ๆ และมาจาก Lab 3 ตรง ๆ — จุดไข่ปลาใน “จงเขียนโค้ด Z80 Assembly ……….” ของปีนี้มีโอกาสสูงที่จะเป็นข้อนี้ มีเฉลย 1 ms @ 2 MHz ทีละขั้น พร้อมเครื่องมือออกแบบลูปให้ได้ T-state ตรงเป๊ะ
กระดาษข้อสอบจริงปีที่แล้ว (3 ข้อ 80 คะแนน), กติกาห้องสอบที่กระทบการเตรียมตัว (ห้ามใช้เครื่องคิดเลข), คำบอกเล่าจากรุ่นพี่ 2 คนพร้อมระดับความน่าเชื่อถือ และแผนบริหารเวลาในห้องสอบ
รวบรวมจุดที่เอกสารในคอร์สคลาดเคลื่อน เทียบกับ Zilog Z80 CPU User Manual (UM0080) และ datasheet ตัวจริง พร้อมลิงก์อ้างอิงทุกข้อ — อ่านก่อนสอบจะได้ไม่ตอบตามที่ผิด
ตารางสัญญาณ machine cycle, T-state ของคำสั่งที่ใช้บ่อย, รหัส register, สูตร foldback, ขนาดชิป ↔ จำนวนสาย address, ลำดับขั้นตอบข้อสอบ
Active LOW ทุกตัว — M1 MREQ IORQ RD WR RFSH ตอบข้อสอบต้องขีดเส้นบนเสมอ
M1 = 4 T · Memory R/W = 3 T · I/O R/W = 4 T (Z80 แทรก Tw ให้เองเสมอ)
จำนวนภาพ = 216 − n − k
n = สาย address ที่เข้าชิป, k = สายที่ใช้ decode
ทุกเกตเป็น NAND ที่มีวงกลมขาเข้า ไม่ใช่ AND เปล่า — MEMRD = NAND(MREQ⚬, RD⚬)
decode ที่ A0–A7 (256 พอร์ต) แต่ A8–A15 ไม่ว่าง — มีค่า A หรือ B อยู่
RESET → PC = 0000H เสมอ ⇒ ตำแหน่งนั้นต้องเป็น ROM (คือหัวใจของข้อ 6)