รอม (ROM: Read-only Memory หน่วยความจำอ่านอย่างเดียว) เป็นหน่วยความจำแบบสารกึ่งตัวนำชั่วคราวชนิดอ่านได้อย่างเดียว ใช้เป็นสื่อบันทึกในคอมพิวเตอร์ เพราะไม่สามารถบันทึกซ้ำได้ (อย่างง่ายๆ) เป็นหน่วยความจำที่มีซอฟต์แวร์หรือข้อมูลอยู่แล้ว และพร้อมที่จะนำมาต่อกับไมโครโพรเซสเซอร์ได้โดยตรง หน่วยความจำประเภทนี้แม้ไม่มีไฟเลี้ยงต่ออยู่ ข้อมูลก็จะไม่หายไปจากหน่วยความจำ (nonvolatile) โดยทั่วไปจะใช้เก็บข้อมูลที่ไม่ต้องมีการแก้ไขอีกแล้วเช่น
- เก็บโปรแกรมไบออส (Basic Input output System : BIOS) หรือเฟิร์มแวร์ ที่ควบคุมการทำงานของคอมพิวเตอร์
- ใช้เก็บโปรแกรมการทำงานสำหรับเครื่องคิดเลข
- ใช้เก็บโปรแกรมของคอมพิวเตอร์ที่ทำงานเฉพาะด้าน เช่น ในรถยนต์ที่ใช้ระบบคอมพิวเตอร์ควบคุมวงจร ควบคุมในเครื่องซักผ้า เป็นต้น
หน่วยความจำประเภท ROM นี้ยังแบ่งออกเป็นประเภทย่อยๆ ตามลักษณะการใช้งานได้หลายประเภท สำหรับเทคโนโลยีในการผลิตตัวไอซีที่ทำหน้าที่เป็น ROM มีทั้งแบบ MOS และแบบไบโพลาร์
ชนิด ของ ROM
- Manual ROM
- PROM (Programmable ROM)
- EPROM (Erasable Programmable ROM)
- EAROM (Electrically Alterable ROM)
- ROM (READ-ONLY MEMORY)
- ข้อมูลทั้งหมดที่อยู่ใน ROM จะถูกโปรแกรม โดยผู้ผลิต (โปรแกรม มาจากโรงงาน) เราจะใช้ ROM ชนิดนี้ เมื่อข้อมูลนั้น ไม่มีการเปลี่ยนแปลง และมีความต้องการใช้งาน เป็นจำนวนมาก ผู้ใช้ไม่สามารถ เปลี่ยนแปลงข้อมูลภายใน ROM ได้
- โดย ROM จะมีการใช้ technology ที่แตกต่างกันตัวอย่างเช่น BIPOLAR, CMOS, NMOS, PMOS
- PROM (PROGRAMMABLE READ-ONLY MEMORY)
- ข้อมูลที่ต้องการโปรแกรมจะถูกโปรแกรมโดยผู้ใช้เอง โดยป้อนพัลส์แรงดันสูง (HIGH VOLTAGE PULSED) ทำให้ METAL STRIPS หรือ POLYCRYSTALINE SILICON ที่อยู่ในตัว IC ขาดออกจากกัน ทำให้เกิดเป็นลอจิก “1” หรือ “0” ตามตำแหน่ง ที่กำหนดในหน่วยความจำนั้นๆ เมื่อ PROM ถูกโปรแกรมแล้ว ข้อมูลภายใน จะไม่สามารถเปลี่ยนแปลงได้อีก หน่วยความจำชนิดนี้ จะใช้ในงานที่ใช้ความเร็วสูง ซึ่งความเร็วสูงกว่า หน่วยความจำ ที่โปรแกรมได้ชนิดอื่นๆ
- EPROM (ERASABLE PROGRAMMABLE READ-ONLY MEMORY)
- ข้อมูลจะถูกโปรแกรม โดยผู้ใช้โดยการให้สัญญาณ ที่มีแรงดันสูง (HIGH VOLTAGE SIGNAL) ผ่านเข้าไปในตัว EPROM ซึ่งเป็นวิธีเดียวกับที่ใช้ใน PROM แต่ข้อมูลที่อยู่ใน EPROM เปลี่ยนแปลงได้ โดยการลบข้อมูลเดิมที่อยู่ใน EPROM ออกก่อน แล้วค่อยโปรแกรมเข้าไปใหม่ การลบข้อมูลนี้ทำได้ด้วย การฉายแสง อุลตร้าไวโอเลตเข้าไปในตัว IC โดยผ่าน ทางกระจกใส ที่อยู่บนตัว IC เมื่อฉายแสง ครู่หนึ่ง (ประมาณ 5-10 นาที) ข้อมูลที่อยู่ภายใน ก็จะถูกลบทิ้ง ซึ่งช่วงเวลา ที่ฉายแสงนี้ สามารถดูได้จากข้อมูล ที่กำหนด (DATA SHEET) มากับตัว EPROM และ มีความเหมาะสม ที่จะใช้ เมื่องานของระบบ มีโอกาส ที่จะปรับปรุงแก้ไขข้อมูลใหม่
- EAROM (ELECTRICALLY ALTERABLE READ-ONLY MEMORY)
- EAROM หรืออีกชื่อหนึ่งว่า EEPROM (ELECTRICAL ERASABLE EPROM) เนื่องจากมีการใช้ไฟฟ้าในการลบข้อมูลใน ROM เพื่อเขียนใหม่ ซึ่งใช้เวลาสั้นกว่าของ EPROM
- การลบขึ้นอยู่กับพื้นฐานการใช้เทคโนโลยีที่แตกต่างกัน ดังนั้น EAROM (ELECTRICAL ALTERABLE ROM) จะอยู่บนพื้นฐานของเทคโนโลยีแบบ NMOS ข้อมูลจะถูกโปรแกรมโดยผู้ใช้เหมือนใน EPROM แต่สิ่งที่แตกต่างก็คือ ข้อมูลของ EAROM สามารถลบได้โดยทางไฟฟ้าไม่ใช่โดยการฉายแสงแบบ EPROM
1. CPU จะ ส่ง แอดเดรส ไป ให้ ROM แอดเดรส ดัง กล่าว จะปราก ฏ เป็น แอดเดรส ที่ ต้อง การ อ่าน ใน ROM โดย ข้อ มูล จะ ถูก อ่าน ออก มา เพียง ครั้ง ละ 1 ไบต์เท่า นั้น
2. CPU จะ ต้อง ให้ ช่วง เวลา ของ การ ส่ง แอดเดรส ยาว นาน พอ ประมาณ (Wait State) เรียก ว่า Access Time โดย ปกติ ต้อง ประมาณ 100-300 นา โน วินาที ขึ้นกับชนิด ของ ROM ซึ่ง ROM จะ ใช้ เวลา นั้น ใน การ ถอด รหัส แอดเดรส ของ ข้อ มูล ที่ ต้อง การ จะ อ่าน ออก มา ที่ เอาท์พุทของ ROM ซึ่ง ถ้า ใช้ เวลา เร็ว กว่า นั้น ROM จะ ตอบ สนอง ไม่ ทัน
3. CPU จะ ส่ง สัญญาณ ไป ทำ การ เลือก ROM เรียก ว่า สัญญาณ /CS (Chip Select) เพื่อ บอก ว่า ต้อง การ เลือก ROM ซึ่ง เป็น การ ส่ง สัญญาณ เพื่อ ยืน ยัน การ เลือก ชิปนั่น เอง
4. ข้อ มูล จะ ผ่าน ออก ทางขา ข้อ มูล ชั่ว ขณะ จังหวะ การ เลือก ชิ ป และ เมื่อ ขา การ เลือก ชิปไม่ แอคตีฟ ข้อ มูล ก็ จะ เข้า สู่ ภาวะ ที่ มีอิมพี แดนซ์สูง
ลักษณะ ดัง กล่าว สามารถ เขียน เป็น แผน ผัง เวลา ออก มา ได้ ดัง แสดง ใน รูป
2. CPU จะ
3. CPU จะ
4. ข้อ
ลักษณะ
การ ต่อกับบัสของ Z-80
ใน การ ต่อกับบัสของ Z-80 นั้น สามารถ เชื่อม โยง กัน โดย ตรง ได้ เพราะ Z-80 แยกบัสข้อ มูล และบัสแอดเดรส ออก จาก กัน ดัง แสดง ใน รูป
ใน
จาก รูป เป็น การ นำ เอา ROM เบอร์ 2716 มา ต่อกับ Z-80 โดย ใช้ แอดเดรส จาก CPU ต่อกั บ ROM โดย ตรง และบัสข้อ มูล ก็ ต่อ ถึง กัน โดย ตรง ใน ที่ นี้ จะ ยัง ไม่ มี การ ถอด รหัส แอดเดรส สังเกต ว่า ใน ขณะ นี้ ยัง ไม่ มี การ ต่อ สาย สัญญาณ /CE ซึ่ง ปกติ ต้อง มา จาก CPU แต่ จะ กล่าว ถึง เฉพาะ วิธี การ ถอด รหัส เพื่อ ต่อกั บ สัญญาณ /CE นี้ เท่า นั้น
การ กำหนด แอดเดรส
ปกติ Z-80 จะ มี สัญญาณ แอดเดรส จำนวน 16 สาย โดย ใช้ ชื่อ สัญญาณ เป็น แอดเดรส A0-A15 ซึ่ง หมาย ถึง การ อ้าง แอดเดรส ได้ 216 หรือ 65536 ตำแหน่ง แต่ ROM เบอร์ 2716 มี แอดเดรส เพียง 11 สาย นั่น หมาย ถึง ความ จุ ของ หน่วย ความ จำ มี เพียง 2 กิโลไบต ์ หรือ 2048 ตำแหน่ง เท่า นั้น ดัง นั้น การ ต่อ 2 กิโลไบต์ ลง ใน 64 กิโลไบต์จะ ต้อง กำหนด ว่า 2 กิโลไบต์ที่ ต่อ นี้ อยู่ ณ ที่ ใด ใน ส่วน ของ พื้น ที่ ทั้ง หมด 64 กิโลไบต์ของ Z-80 ซึ่ง ถ้า จะ ต่อ ให้ ครบ ทั้ง 64 กิโลไบต์ ต้อง ใช้ ROM ถึง 32 ตัว
ใน การ ต่อ ROM นั้น เรา มัก ให้ ROM เริ่ม ที่ แอดเดรส 0000H ทั้ง นี้ เพราะ เมื่อ เริ่ม ทำ การ รี เซต Z-80จะ เริ่ม ทำ งาน ที่ แอดเดรส นี้ ดัง นั้น เมื่อ เปิดเครื่องจะ ทำ ให้ Z-80 มี โปรแกรม และ พร้อม ที่ จะ รัน (run) จึง ต้อง นำ ROM มา ใส่ ที่ แอดเดรส กลุ่ม ล่าง สุด นี้ สำหรับ การ กำหนด พื้น ที่ ของ หน่วย ความ จำ เพื่อ การ ใช้ งาน นั้น สามารถ แสดง ได้ ดัง รูป
ปกติ Z-80 จะ
ใน
จาก รูป เป็น การ กำหนด พื้น ที่ ของ หน่วย ความ จำ RAM และ ROM เพื่อ การ ใช้ งาน โดย สมมติ ให้ ROM ที่ จะ ต่อ นี้ มี ทั้ง สิ้น 4 ตัว คือ ROMA, ROMB, ROMC และ ROMD โดย ใน ขั้น แรก จะ ต่อ เฉพาะ ROMA และ ROMB ส่วน RAM ที่ ใช้ จะ ต่อ เป็น RAMA และ RAMB
การ เลือก ชิปของ ROM
เมื่อ ต่อ ROM เข้า สู่ ระบบ เรา จะ ต้อง หา วิธี ใน การ เลือก ชิปของ ROM ให้ ถูก ต้อง ตาม แอดเดรส ที่ เรา กำหนด ไว้ เช่น ROMA เรา กำหนด แอดเดรส ไว้ ที่ แอดเดรส 0000H - 07FFH ดัง นั้น เรา จำ เป็น ต้อง มี ตัว ถอด รหัส เพื่อ เลือก แอดเดรส ให้ ถูก ต้อง การ ถอด รหัส นี้ เรา จะ ใช้ แอดเดรส ส่วน บน ที่ เหลือ มา ทำ การ ถอด รหัส ใน ที่ นี้ เรา จะ ใช้ 74LS138 และ ทำ การ เลือก โดย ใช้ A11, A12, A13, A14 และ A15 การ ถอด รหัส ของ 74LS138 นี้ เป็น การ เลือก จาก 3 บิตไป เป็น 8 บิตโดย ใช้อินพุต A, B, C วง จร การ ถอด รหัส นี้ แสดง ได้ ดัง รูป
เมื่อ
ด้วย วิธี นี้ จะ เห็น ว่า ถ้า เรา เลือก แอดเดรส จาก A10 - A15 จะ มี สัญญาณ จาก A0 - A10 ส่ง ไป ยัง แอดเดรส ของ ROM โดย ตรง ส่วน A11 - A 15 จะ ผ่าน การ ถอด รหัส ก่อน แล้ว จึง ไป ทำ การ เลือก ชิปใน ROM ตาม ที่ เรา ต้อง การ เพื่อ ให้ เห็น ขั้น ตอน การ ถอด รหัส ชัด เจน ขึ้น เรา ควร พิจารณา ขั้น ตอน การ ทำ งาน ของ 74LS138 โดย เขียน ออก มา เป็น ตา ราง แอดเดรส ดัง แสดง ใน ตา ราง
จาก ตา ราง นี้ เรา จะ เน้น เฉพาะ ส่วน ของ แอดเดรส A11 - A15 ซึ่ง จะ ส่ง ค่า รวม ของ แอดเดรส เพื่อ ออก ไป ยัง ขา เอาต์พุตขา ที่ 10-15 เช่น ถ้า แอดเดรส A11 - A15 เป็นลอจิก ‘ 0 ‘ หมด ขา ที่ 15 ซึ่ง เป็น เอาต์พุตจะ แอคตี ฟ เพิ่อทำ การ เลือก ชิป และ จาก ตา ราง จะ พบ ว่า ใน ช่วง ระหว่าง แอดเดรส 0000H-07FFH ขา ที่ 15 ของ 74LS138 จะ แอคตีฟ ดัง นั้น 74LS138 จึง เป็น วง จร ถอด รหัส ที่ ใช้ ใน การ เลือก ชิ ป ROM ได้ อย่าง ถูก ต้อง
สัญญาณ การ อ่าน ข้อ มูล
สำหรับ การ อ่าน ข้อ มูล จาก หน่วย ความ จำ นั้น Z-80 จะ ต้อง ใช้ สัญญาณ ที เกี่ยว ข้อง หลาย สัญญาณ เช่น สัญญาณ /MREQ กับสัญญาณ /RD สัญญาณ ทั้ง สอง จะ ต้อง เกิด ขึ้น พร้อม กัน ดัง นั้น เมื่อ เป็น เช่น นี้ จึง ต้อง เอา สัญญาณ ทั้ง สอง นี้ ออร์ (OR) กัน เพื่อ ให้ ได้ สัญญาณ /MEMR การ กำหนด จังหวะ การ อ่าน หน่วย ความ จำ แสดง ได้ ดัง รูป
สำหรับ
การ
จาก รูป จะ เห็น ว่า สัญญาณ จาก ซี พียูที่ เข้า ไป ทำ การ ควบ คุม ROM จะ ประกอบ ด้วย สัญญาณ จาก หลาย ส่วน ซึ่ง ได้ แก่ สัญญาณ แอดเดรส A0-A15 โดย สัญญาณ A11-A15 จะ สร้าง สัญญาณ ใหม่ เป็น สัญญาณ ROMA เพื่อ เลือก ROM จาก นั้น จะ ใช้ สัญญาณ /MREQ กับสัญญาณ /RD สร้าง สัญญาณ /MEMR และ สร้าง เป็น สัญญาณ /CE ต่อ ไป โดย ประกอบ กัน เป็น ขั้น ตอน ดัง แสดง ใน รูป
การ ต่อ Z-80 กับ ROM อีก วิธี หนึ่ง
สังเกต ว่า ROM เบอร์ 2716 มี ขา /CE และ /OE ซึ่ง อาจ จะ นำ ขา สัญญาณ เลือก เอาต์พุตนี้ มา ใช้ ประ โยชน์ ได้ การ เลือก ROM เบอร์ 2716 นี้ จะ ใช้ /CE และ /OE ใน การ เลือก โดย ขา ทั้ง สอง จะ เป็นลอจิก“ 0” ใน การ เลือก ชิป และ เลือก เอาต์พุตโดย ทำ การ เปิด เกตลอจิก 3 สถานะ นั่น เอง เมื่อ เป็น เช่น นี้ เรา สามารถ ลด จำนวน เกตแบบ ออร์ (or gate) ลง ไป 1 ตัว ได้ โดย แทน ที่ จะ ใช้ สัญญาณ /MEMR และ สัญญาณ ROMA มา OR กัน เรา ก็ เชื่อม ต่อ โดย การ ใช้ สัญญาณ /MEMR ต่อกับสัญญาณ /OE และ สัญญาณ ROMA ต่อกับสัญญาณ /CE ดัง แสดง ใน รูป
สังเกต
การ ต่อ ROM หลายๆชิบ
หาก ต้อง การ จะ ต่อ ROM หลายๆชิป เช่น ROMA,ROMB,ROMC และ ROMD ก็ สามารถ ต่อ เพิ่ม ได้ โดย ใช้ สัญญาณ เลือก จาก 74LS138 และ /MEMR มา เลือก โดย ผ่าน ทาง /CE และ /OE ได้ ดัง แสดง ใน รูป
หาก
การ ใช้ ROM ใน ชิปที่ มี ความ จุ เพิ่ม ขึ้น
ROM ที่ ใช้ ใน ปัจจุบัน มี ความ จุ สูง ขึ้น มาก EPROM บาง ตัว มี ความ จุ ถึง 32 กิโลไบต ์ เช่น EPROM ที่ใข้กัน มาก ใน ขณะ นี้ ได้ แก่ เบอร์ 2764 (มี ความ จุ 8 กิโลไบต์) เบอร์ 27128 (มี ความ จุ 16 กิโลไบต์) ดัง นั้น หาก ต้อง การ ใช้ ROM ใน ชิปที่ มี ความ จุ เพิ่ม ขึ้น ก็ ทำ ได้ โดย ใช้ หลัก การ เช่น เดียว กัน ใน ที่ นี้ ขอ ให้ ดู การ จัด ขา ของ EPROM เบอร์ 2732 เมื่อ เปรียบ เทียบกับเบอร์ 2764 ซึ่ง สามารถ แสดง ได้ ดัง รูป
ROM ที่
EPROM เบอร์ 2732 มี จำนวน ขา เท่ากับเบอร์ 2764 ดัง นั้น การ เพิ่ม ความ จุ จะ กระ ทำ ได้ โดย ง่า ย และ สามารถ ใช้ซ็อก เกต (socket) เดิมได้ ทัน ที หรือ เพียง แต่ แก้ ขา แอดเดรส เพียง เส้น เดียว สังเกต ว่า ขา ที่ แตก ต่าง กัน ใน ที่ นี้ คือ EPROM เบอร์ 2764 ได้ เพิ่ม เติม อีก 4 ขา โดย เพิ่ม ส่วน บน เป็น A12 และ ขา PGM มา อยู่ ที่ ขา 27 ส่วน ขา 26 ไม่ ใช้ ความ แตก ต่าง นี้ เอง ทำ ให้ การ เพิ่ม เติม ลาย วง จร ทำ ได้ ง่ายขึ้น โดย การ ต่อ จาก ขา 26 มา ที่ ขา 28 เพื่อ ต่อ สาย Vcc ดัง แสดง ใน รูป
เมื่อ จะ ต่อกับ EPROM เบอร์ 2732 เรา สามารถ ขยาย ระบบ โดย ใช้ ขา แอดเดรส ของ EPROM เบอร์ 2732 จาก แอดเดรส A0- A11ดัง นั้น ส่วน ที่ จะ ขยาย จาก ซี พีย ู เรา ใช้ 74LS42 โดย นำ แอดเดรส A12- A15มา ถอด รหัส ดัง แสดง ใน รูป
ไม่มีความคิดเห็น:
แสดงความคิดเห็น