Cute Dog Bopping Head

วันศุกร์ที่ 27 พฤศจิกายน พ.ศ. 2558

หน่วยความจำภายนอก (external memory)

หน่วยความจำภายนอก

หน่วยความจำของเครื่องคอมพิวเตอร์ใช้ในการเก็บตัวคำสั่งในโปรแกรมและข้อมูลที่ใช้ ทั้งสองส่วนนี้จะถูกเก็บลงในหน่วยความจำขณะที่มีการประมวลผล ขนาดของหน่วยความจำจะเป็นไบต์ (Byte) เช่น 32 Mbytes แต่ละไบต์มีขนาด 8 บิต (Bit)  ซึ่งข้อมูลแต่ละบิตจะมีค่าได้ 2 อย่างคือ 0 กับ 1 ดังนั้นข้อมูลชนาด 1 ไบต์จึงมีค่าต่างกันได้ถึง 256 ค่า ข้อมูลทุกประเภทจะถูกเก็บโดยการแปลงเป็นบิตลงหน่วยความจำ เมื่อจะนำขึ้นมาใช้ก็แปลงกลับเป็นข้อมูลที่ต้องการ อาจแบ่งประเภทของหน่วยความจำได้ดังนี้

หน่วยความจำหลัก

หน่วยความจำชนิดรอม (ROM : Read Only Memory)

เป็นหน่วยความจำชนิดที่จะเก็บข้อมูลหรือโปรแกรมไว้อย่างถาวรไม่สามารถเปลี่ยนแปลงอะไรได้ไม่ว่าจะต้องการหรือไม่ สิ่งที่เก็บไว้จะประกอบด้วยข้อมูลที่จำเป็นสำหรับการเริ่มสตาร์ตเครื่องคอมพิวเตอร์ และใช้เก็บโปรแกรม  BIOS หรือโปรแกรมของคอมพิวเตอร์ที่ฝังอยู่ในฮาร์ดแวร์ของเครื่องที่ทำหน้าที่ตรวจสอบฮาร์ดแวร์และอุปกรณ์ต่าง ของคอมพิวเตอร์  

หน่วยความจำชนิดแรม (RAM : Random Access Memory)


 เป็นหน่วยความจำชนิดที่เก็บช้อมูลเอาไว้เพื่อให้โปรแกรมสามารถนำมาใฃ้งานได้ในทันทีที่ต้องการ ทั้งในส่วนของคำสั่งของโปรแกรมและข้อมูลที่ป้อนเข้าไป เป็นส่วนที่จะมีการเปลี่ยนแปลงอยู่ตลอดเวลาระหว่งางที่กำลังทำงานกับโปรแกรมอยู่ จะเป็นการเก็บไว้เพียงชั่วคราว และจะหายไปเมื่อปิดเครื่องหรือไฟฟ้าดับ นั่นคือแรมจะต้องมีไฟฟ้าคอยเลี้ยงตลอดเวลา โดยปกติทั่วไปหากบอกว่าคอมพิวเตอร์เครื่องนี้มี Memory 32 MB จะหมายถึงเครื่องคอมพิวเตอร์นั้นมี RAM 32 MB    แรมเป็นทรัพยากรที่มีค่ามากของคอมพิวเตอร์ และดูเหมือนว่าเครื่องมีแรมเท่าไรก็มักจะไม่พอต่อความต้องการ (ทั้งของเราและของโปรแกรม application)




ชนิดของแรมตามรูปร่าง

-          DIP RAM (Dual In-Line Package RAM)  เป็นแรมยุคแรก มีลักษณะสีดำ มีขายื่นออกมาสองแถวคล้ายตะขาบ ยึดติดบน



บอร์ดโดยใส่ลงใน socket มีความจุตัวละ 64 กิโลบิต หรือ 256 กิโลบิต ปัจจุบันมักจะใช้เป็นแรมจอภาพ (Video RAM)





-          SIMM RAM (Single In-Line Memory Module RAM)  จะมีทั้งแบบ 30 พิน และ 72 พิน ข้อแตกต่างคือ SIMM 30  พินจะมี

บิตบนตัวแรม ส่วน SIMM 72  พิน จะมี 36 บิต และ  SIMM 30  พินจะมีขนาดเล็กกว่า 72 พิน

ชนิดของแรมตามเทคโนโลยี

ความเร็วของตัวประมวลผลที่เพิ่มขึ้นย่อมต้องการส่วนประกอบต่าง ๆ ของระบบที่เร็วขึ้นเช่นกัน ตั้งแต่อดีตจนถึงปัจจุบันบัสของหน่วยความจำจะทำงานช้ากว่าตัวประมวลผล จึงมีการพัฒนาเทคโนโลยีหน่วยความจำแบบต่าง ๆ ดังนี้

-          DRAM (Dynamic RAM)

                เป็นมาตรฐานของ Main Memory มีชื่อเรียกอีกอย่างหนึ่งว่า Fast Page Mode DRAM นอกจากต้องมีไฟฟ้าเลี้ยงตลอด
เวลาแล้ว แรมชนิดนี้จะต้องทำการ Recharge อยู่เสมอ คือจะคอยป้อนไฟเลี้ยงให้กับตัวเก็บประจุที่มีค่าเป็น “1” เป็นระยะ   DRAM จะเก็บแต่ละค่าของบิตลงในหน่วยความจำ (Memory Cell)  ซึ่งประกอบด้วยส่วนประกอบ 2 ส่วนคือ Capacitor และ Transistor ซึ่ง Capacitor เป็นอุปกรณ์อิเล็กทรอนิกส์ที่สามารถเก็บประจุของอิเล็กตรอนได้ ส่วน Transistor เป็นสวิทช์อิเล็กทรอนิกส์ที่สามารถเปิดหรือปิดได้โดยอาศัยการลดลงหรือเพิ่มขึ้นของแรงดันไฟฟ้า ที่ไหลเข้ามาใน Transistor  การทำงานของ DRAM  จะเริ่มจากการถูกร้องขอข้อมูล จะทำการจัดลำดับการค้นหาข้อมูลนั้น แล้วเริ่มทำการค้นหาข้อมูลโดยเริ่มที่คอลัมน์แรกของหน่วยความจำ ข้อมูลที่เก็บอยู่ในหน่วยความจำจะถูกนำมาตรวจสอบ และใส่กลับเข้าในในระบบจนกระทั่งพบข้อมูลที่ต้องการ การค้นหาข้อมูลจะหยุดลงและเตรียมพร้อมสำหรับการค้นหาข้อมูลลำดับต่อไป หรือจากการถูกร้องขอครั้งใหม่  (นี่คือหลักของ wait state  เพราะระหว่างที่หยุดรอการค้นหาข้อมูล ซีพียูก็จะหยุดรอการทำงานของหน่วยความจำจนหว่าจะเริ่มการทำงานใหม่อีกครั้ง ส่วนบัฟเฟอร์ของ data output ก็จะปิดการทำงานลงจนกว่าจะเริ่มการค้นหาข้อมูลใหม่อีกครั้ง แ ละแม้ว่าข้อมูลที่ถูกจัดอันดับให้ค้นหาต่อไป จะมีตำแหน่งติดกับข้อมูลที่ถูกค้นหาไปก่อนหน้านี้ แต่การค้นหาข้อมูลจะเริ่มต้นที่คอลัมน์แรกของหน่วยความจำเสมอ

-          SRAM (Static RAM)

รูปแบบพื้นฐานของ SRAM คือ การใช้โครงสร้างแบบ Asynchronous ค่าของบิตที่เก็บในเซลหน่วยความจำจะถูกแทนด้วย
สถานะของการ Flip-Flop  แทนการเป็นประจุใน Capacitor  การ  Flip-Flop เป็นการเรียงตัวของทรานซิสเตอร์และรูปแบบของสวิตช์อิเล็ก
โทรนิกส์ของรีจิสเตอร์ ซึ่งสามารถเปิดปิดได้ ซึ่งมันจะคงสภาวะนั้นไว้ขณะที่ยังมีกระแสไฟฟ้าอยู่ SRAM จะดีกว่า DRAM ตรงที่ว่าไม่ต้องคอย Recharge ไฟบ่อย ๆ  ทำให้การทำงานเร็ว แต่ก็มีข้อเสียคือจะกินไฟมากกว่า และแพงกว่า นิยมนำไปทำเป็นหน่วยควมจำชนิดแคช (Cache Memory)

-          EDO DRAM (Extended RAM)

            หรือเรียกอีกอย่างหนึ่งว่ Htyper Page Mode DRAM  มีพื้นฐานมาจาก FPM DRAM  ดังนั้นการทำงานจะคล้ายกัน เริ่มจาก

การจัดลำดับการค้นหา แล้วจึงเริ่มการค้นหาตามคอลัมน์ เพียงแต่ว่าเมื่อพบข้อมูลที่ต้องการแล้ว แทนที่การค้นหาจะหยุดลงและปิดการทำงานของบัฟเฟอร์ data output  หน่วยความจำแบบ EDO จะเก็บบัฟเฟอร์ของ data output ไว้จนกระทั่งการค้นหาข้อมูลเริ่มต้นใหม่อีกครั้งหนึ่ง การเปิดการทำงานของบัฟเฟอร์ไว้ตลอดทำให้ wait state ของ burst transfer rate ของหน่วยความจำแบบ EDO เร็วขึ้น

ความเร็วของแรม

                หมายถึง ความเร็วที่ใช้ในการเข้าถึงข้อมูลในหน่วยคววมจำ (Access Time) การเข้าถึงข้อมูลก็คือ การอ่าน (Read) หรือเขียน (Write) ข้อมูลในหน่วยความจำ (Memory) วัดเป็น นาโนเซกัน (Nano Second) หรือ หนึ่งส่วนพันล้านวินาที เช่น ความเร็วเป็น 50, 60 และ 70 nanosec  ตัวเลขยิ่งน้อยก็ยิ่งเร็วเพราะใช้เวลาน้อยกว่า

หน่วยความจำชนิดแคช (Cache)

เป็นหน่วยความจำแบบแรมชนิดหนึ่ง เพราะข้อมูลที่อยู่ใน Cache จะหายไปเมื่อปิดเครื่องหรือไฟฟ้าดับ  แต่ Cache จะมีความเร็วในการรับส่งข้อมูลกับ CPU ได้เร็วกว่า RAM ปกติ จึงนำ Cache มาใช้สำหรับเก็บข้อมูลที่เรียกใช้บ่อยๆ ซึ่งจะทำให้ความเร็วในการเข้าถึงข้อมูลโดยรวมสูงขึ้น ดังนั้นเวลาที่ CPU ต้องการข้อมูลก็จะไปดูที่ Cache ก่อน ถ้ามีก็เอาจาก Cache มาเลย หากไม่มีค่อยไปดูที่ RAM ยิ่งมี Cache  สูงเท่าไรก็ยิ่งทำให้เครื่องเร็วขึ้นเท่านั้น แบ่งประเภทเป็น

-          L1 & L2 Cache  เป็น Cache Memory  ที่คั่นการรับส่งข้อมูลระหว่าง CPU กับ Main Memory
-          Disk Cache  เป็น  Cache Memory   ที่คั่นการรับส่งข้อมูลระหว่าง CPU กับ Disk เพื่อให้เร็วขึ้น

Disk Cache

                หมายถึง หน่วยความจำชนิดหนึ่งที่เก็บข้อมูลชั่วคราวที่เราเรียกชื่อบ่อย ๆ หรือเก็บข้อมูลที่โปรแกรม application  มักร้องขอใช้มากครั้ง การอ่านเขียนดิสก์ครั้งต่อไป ก็ไม่จำเป็นต้องอ่านดิสก์แต่ไปอ่านที่หน่วยความจำแคชแทน ดิสก์แคชถูกสร้างขึ้นเพื่อแก้ปัญหาการทำงานของดิสก์ไดรฟ์ที่ช้ามาก เมื่อเทียบกับอุปกรณ์อื่น ๆ เนื่องจากเป็นชิ้นส่วนที่มีการเคลื่อนไหวของกลไกหัวอ่าน



Hit Rate
                 หมายถึง อัตราส่วนของจำนวนครั้งในการอ่านข้อมูลจากแคชต่อจำนวนครั้งในการอ่านข้อมูลทั้งหมดจากหน่วยความจำ Hit Rate ยิ่งสูงยิ่งดี เพราะหมายถึงสามารถเก็บข้อมูลที่ใช้บ่อย ๆ เป็นส่วนใหญ่ไว้ในแคช

การทำงานของ Cache

                ยกตัวอย่างของการอ่าน  เริ่มจาก CPU จะ generate address (RA) ของคำที่ถูกอ่านขึ้นมา ถ้าคำนั้นมีอยู่ใน cache มันจะถูกส่งไปให้กับ CPU แต่ถ้าไม่มี บล๊อกของคำที่ถูกอ่านขึ้นมานั้นจะถูกโหลดไปไว้ใน cache และคำนั้นก็จะถูกส่งไปให้กับ CPU



ที่มา : http://tungmay1995.blogspot.com/p/blog-page_81.html

ไม่มีความคิดเห็น:

แสดงความคิดเห็น