
ประวัติความเป็นมาของ CPU (central processing unit) ไมโครโพรเซสเซอร์เกิดขึ้นช่วงทศวรรษ 1970โดยเกิดจากการนำเทคโนโลยี 2 อย่างมาร่วมกันพัฒนา คือเทคโนโลยีด้านดิจิตอลคอมพิวเตอร์และ เทคโลยีด้านโซลิดเสเตต ช่วงสงครามโลกครั้งที่ 2 คือ ดิจิตอลคอมพิวเตอร์ถูกพัฒนาใช้ในด้านการทหาร ช่วงกลาง ค.ศ. 1940 ดิจิตอลคอมพิวเตอร์ถูกพัฒนาใช้ในวิทยาศาสตร์ และธุรกิจ ปี ค.ศ. 1948นักวิทยาศาสตร์ได้คิคค้นทรานซิสเตอร์ที่ทำมาจกากโซลิดสเตต ช่วง ค.ศ. 1950 เริ่มมีการผลิตดิจิตอลคอมพิวเตอร์สำหรับใช้งานทั่วไปโดยใช้หลอดสูญญากาศเป็นส่วนประกอบในการสร้างวงจรพื้นฐานเช่น เกต และฟลิปฟลอปเพื่อใช้เครื่องคำนวนและหน่วยความจำและอินพุตและเอาต์พุตของดิจิตอลคอมพิวเตอร์ และช่วงทศวรรษเดียวกันได้มีการทดลองโซลิดเสเตตอย่างจิงจังและได้ผลิตทรานซิสเตอร์ที่ทำจากสารกึ่งตัวนำซิลิคอน และปลายทศวรรษที่ 1950 ได้นำทรานซิสเตอร์มาใช้แทนหลอดสูญญากาศ ช่วงต้นทศวรรษ1960 ได้มีการนำทรานซิสเตอร์หลายๆตัวมาบรรจุลงในซิลิคอนเพียงตัวเดียว โดยที่ทรานซิสเตอร์ แต่ละตัวจะถูกเชื่อมต่อกันด้วยโลหะขนาดเล็กเพื่อสร้างเป็นวงจรแบบต่างๆ เช่น เกต ฟลิปฟลอป แล้วมีการสร้างวงจรจากเทคโนโลยีแบบใหม่เรียกว่า ไอซี ช่วงกลางทศวรรค 1960 ได้มีการผลิตไอซีพื้นฐานเป็นแบบ small และ medium scale integration(SSI และ MSI) ทำให้เทคโนโลยีถูกแรงผลักดัน 2 แนวทาง คือการพัฒนาทางด้านเทคนิคเพื่อลดต้นทุนการผลิต และอีกแนวทางหนึ่งก็คือการเพิ่มความซับซ้อนให้กับวงจร ต้นทศวรรษที่ 1970 ได้เริ่มนำเอาวงจรดิจิตอลมาสร้างรวมกันและบรรจุอยู่ไอซีตัวเดียวเรียกว่า large-scale integration(LSI) และในช่วงทศวรรษที่ 1980 ก็ได้มีการนำเอาทรานซิสเตอร์มากกว่า100,000ตัวมาใส่ในไอซีเพียงตัวเดียวซึ่งเรียกว่า very large-scale integration (VLSI)
..ซีพียูในปัจจุบัน..
มีอยู่หลายบริษัทด้วยกัน ทั้ง Intel, AMD และ Cyrix ฯลฯ ต่อไปนี้จะกล่าวถึงซีพียูของอินเทล (Intel) และ เอเอ็มดี (AMD) ซึ่งเป็นซีพียูที่ได้รับความนิยมจากผู้ใช้ทั่วไปนะคะซีพียูของ Intel.............ได้แก่
1. รุ่นที่เลิกผลิตไปแล้ว..4004 · 4040 · 8008 · 8080 · 8085 · iAPX 432 · i860 · i960 · 8086 · 8088 · 80186 · 80188 · 80286 · 80386 · 80486 · Pentium · Pentium Pro · Pentium II · Pentium III · Itanium · Pentium Extreme Edition · Pentium M · Pentium D
2. รุ่นที่กำลังผลิตอยู่.Pent.ium 4 · Core · Pentium Dual-Core · Core 2 · Celeron · A100 · Xeon · XScale · Itanium 2 · Atomสำหรับ AMD1.รุ่นที่เลิกผลิตไปแล้วAm2900 · Am29000 · Am9080 · Am286 · Am386 · Am486 · Am5x86 · K5 · K6 · K6-2 · K6-III · Duron · Athlon · Mobile Athlon 64 · Alchemy2. รุ่นที่กำลังผลิตอยู่Geode · Sempron · Mobile Sempron · Athlon 64 · Athlon 64 X2 (Athlon X2, AMD K9) · Athlon 64 FX · Phenom (AMD K10) · Turion 64 · Turion 64 X2 · Opteron · FireStream3. รุ่นที่กำลังพัฒนาTurion Ultra · Bobcat, Bulldozer · Fusion
CPU ทำหน้าที่อะไร...
CPU หรือ Central Processing Unit เป็นหัวใจหลักในการประมวลของคอมพิวเตอร์ โดยพื้นฐานแล้วซีพียูทำหน้าที่ประมวลผลข้อมูลเชิงคณิตศาสตร์และข้อมูลเชิงตรรกะเท่านั้น แต่ทำไมการคำนวณขนาดนี้ ต้องมีการพัฒนาซีพียูกันไม่หยุดหย่อน ย้อนกลับไปปี 1946 คอมพิวเตอร์ยุคแรกที่มีชื่อที่พอจะจำได้ก็คือ ENIVAC นั้นทำงานโดยใช้หลอดไดโอด ซึ่งสถานะการทำงานของหลอดพวกนี้ มีสองอย่าง คือ 1 กับ 0 จะมีค่าเป็น 1 เมื่อมีกระแสไหลผ่านและเป็น 0 เมื่อไม่มีกระแสไหลผ่าน นั่นจึงเป็นเหตุผลให้คอมพิวเตอร์ใช้เลขฐาน 2 ในการคำนวณ ครั้นต่อมาวิทยาการก้าวหน้าขึ้นเรื่อยๆ จากหลอดไดโอดก็พัฒนาเป็นทรานซิสเตอร์ และจากทรานซิสเตอร์ก็พัฒนาเป็นวงจรขนาดเล็ก ซึ่งรู้จักกันในชื่อของ IC และในที่สุดก็พัฒนาเป็น Chip อย่างที่เรารู้จักกันมาจนปัจจุบันนี้ สิ่งที่ผู้ผลิตซีพียูพยายามเพิ่มก็คือ ประสิทธิภาพในการประมวลผลของซีพียู เมื่อกล่าวถึงซีพียูและการประมวลผล สิ่งหนึ่งที่เราต้องเข้าใจคือภายในซีพียูไม่มีหน่วยเก็บข้อมูลสำหรับเก็บข้อมูลปริมาณมากๆ และซีพียูในยุคแรกๆ ก็ไม่มี Cache ด้วยซ้ำไป ปัจจัยที่มีผลต่อความเร็วของซีพียูก็คือ ความเร็วในการประมวลผลและความเร็วในการโอนย้ายข้อมูล ซีพียูในยุคแรกๆ นั้นประมวลผลด้วยความเร็ว 4.77 MHz และมีบัสซีพียู (CPU BUS) ความกว้าง 8 บิต เรียกกันว่าซีพียู 8 บิต (Intel 8080 8088) นั้นก็คือซีพียูเคลื่อนย้ายข้อมูลครั้งละ 1 ไบต์ ยุคต่อมาเป็นซีพียู 16 บิต 32 บิต และ 64 บิต ปัจจุบันโดยเฉพาะซีพียูรุ่นใหม่ๆ เคลื่อนย้ายข้อมูลครั้งละ 128 บิต ในการเคลื่อนย้ายข้อมูลนั้น เกิดขึ้นจากการควบคุมสัญญาณนาฬิกา ซึ่งนับสัญญาณเป็น Clock 1 เช่น ซีพียู 100 MHz หมายความว่าเกิดสัญญาณนาฬิกา 100 ครั้งต่อวินาที
องค์ประกอบของซีพียู
1.แบบการ์ดหรือแบบตลับมีลักษณะเป็นแผงหรือเป็นตลับสี่เหลี่ยมผืนผ้า ด้านล่างมีหน้าสัมผัสสำหรับเสียบลงบนช่องต่อลงบนเมนบอร์ดซึ่งเรียกว่า SLOT
2.แบบชิป PGA (Pin Grid Array)มีลักษณะเป็นชิปแผ่นบาง ๆ มักเป็นสี่เหลี่ยมจัตุรัส ด้านหลังจะมีขาเสียบ (PIN) โดยรอบสำหรับเสียบลงช่องต่อลงบนเมนบอร์ด ซึ่งเรียกว่า SOCKET
ส่วนประกอบของโพรเซสเซอร์มีดังนี้
• Bus Interface Unit (BIU) (Cbox) คือส่วนที่เชื่อมต่อระหว่าง address bus, control bus และ data bus กับภายนอกเช่น หน่วยความจำหลัก (main memory) และอุปกรณ์ภายนอก (peripherals)
• Memory Management Unit (MMU) (Mbox) คือส่วนที่ควบคุมโพรเซสเซอร์ในการใช้งานแคช (cache) และหน่วยความจำ (memory) โดย MMU ยังช่วยในการทำ virtual memory และ paging ซึ่งแปลง virtual addresses ไปเป็น physical addresses โดยใช้ Translation Look-aside Buffer (TLB)
• Integrated on-chip cache เป็นส่วนสำหรับเก็บข้อมูลที่ใช้งานบ่อยๆใน Synchronous RAM (SRAM) เพื่อให้การทำงานของโพรเซสเซอร์มีประสิทธิภาพสูงสุด ใช้งานได้ทั้ง L1 และ L2 on chip cache
• Prefetch Unit (part of Ibox) คือส่วนที่ดึงข้อมูลและคำสั่งจาก instruction cache และ data cache หรือ main memory based เมื่อ Prefetch Unit อ่านข้อมูลและคำสั่งมาแล้วก็จะส่งข้อมูลและคำสั่งเหล่านี้ต่อไปให้ Decode Unit
• Decode Unit or Instruction Unit (part of Ibox) คือส่วนที่แปลความหมาย ถอดรหัส หรือแปลคำสั่ง ให้เป็นรูปแบบที่ ALU และ registers เข้าใจ
• Branch Target Buffer (BTB) คือส่วนที่บรรจุคำสั่งเก่าๆที่เข้ามาสู่โพรเซสเซอร์ ซึ่ง BTB นั้นเป็นส่วนหนึ่งของ Prefetch Unit
• Control Unit or Execution Unit คือส่วนที่เป็นศูนย์กลางคอยควบคุมการทำงานในโพรเซสเซอร์ดังนี้ • อ่านและแปลความหมายของคำสั่งตามลำดับ
• ควบคุม Arithmetic and Logic Unit (ALU), registers และส่วนประกอบอื่นๆของโพรเซสเซอร์ ตามคำสั่ง
• ควบคุมการเคลื่อนย้ายของข้อมูลที่รับ-ส่งจาก primary memory และอุปกรณ์ I/O
• ALU (Ebox) คือส่วนที่ปฎิบัติตามคำสั่งและเปรียบเทียบ operands ในบางโพรเซสเซอร์มีการแยก ALU
ออกเป็น 2 ส่วนดังนี้
• Arithmetic Unit (AU)
• Logic Unit (LU)
• operation ที่ ALU ปฎิบัติตามเช่น
• Arithmetic operations (+, -, *, และ /)
• Comparisons (<, >, และ =)
• Logic operations (and, or)
• Floating-Point Unit (FPU) (Fbox) คือส่วนที่ทำการคำนวณเกี่ยวกับจำนวนตัวเลขที่เป็นจุดทศนิยม • Registers (part of Ibox, Fbox, และ Ebox) คือส่วนที่ใช้สำหรับเก็บข้อมูลสำหรับการคำนวณในโพรเซสเซอร์
• Data register set เก็บข้อมูลที่ใช้งานโดย ALU เพื่อใช้สำหรับการคำนวณที่ได้รับการควบคุมจาก Control Unit ซึ่งข้อมูลนี้อาจส่งมาจาก data cache, main memory, หรือ Control Unit ก็ได้
• Instruction register set เก็บคำสั่งที่กำลังทำงานอยู่
หน่วยประมวลผลกลาง (Central Processing Unit : CPU)
หน่วยประมวลผลกลางหรือซีพียู เรียกอีกชื่อหนึ่งว่า โปรเซสเซอร์ (Processor) หรือ ชิป (chip) นับเป็นอุปกรณ์ ที่มีความสำคัญมากที่สุด ของฮาร์ดแวร์เพราะมีหน้าที่ในการประมวลผลข้อมูลที่ผู้ใช้ป้อน เข้ามาทางอุปกรณ์อินพุต ตามชุดคำสั่งหรือโปรแกรมที่ผู้ใช้ต้องการใช้งาน หน่วยประมวลผลกลาง
ประกอบด้วยส่วนประสำคัญ 3 ส่วน คือ
1. หน่วยคำนวณและตรรกะ (Arithmetic & Logical Unit : ALU)
หน่วยคำนวณตรรกะ ทำหน้าที่เหมือนกับเครื่องคำนวณอยู่ในเครื่องคอมพิวเตอร์โดยทำงานเกี่ยวข้องกับ การคำนวณทางคณิตศาสตร์ เช่น บวก ลบ คูณ หาร นอกจากนี้หน่วยคำนวณและตรรกะของคอมพิวเตอร์ ยังมีความสามารถอีกอย่างหนึ่งที่เครื่องคำนวณธรรมดาไม่มี คือ ความสามารถในเชิงตรรกะศาสตร์ หมายถึง ความสามารถในการเปรียบเทียบตามเงื่อนไข และกฏเกณฑ์ทางคณิตศาสตร์ เพื่อให้ได้คำตอบออกมาว่าเงื่อนไข นั้นเป็น จริง หรือ เท็จ เช่น เปรียบเทียบมากว่า น้อยกว่า เท่ากัน ไม่เท่ากัน ของจำนวน 2 จำนวน เป็นต้น ซึ่งการเปรียบเทียบนี้มักจะใช้ในการเลือกทำงานของเครื่องคอมพิวเตอร์ จะทำตามคำสั่งใดของโปรแกรมเป็น คําสั่งต่อไป
2. หน่วยควบคุม (Control Unit)
หน่วยควบคุมทำหน้าที่คงบคุมลำดับขั้นตอนการการประมวลผลและการทำงานของอุปกรณ์ต่างๆ ภายใน หน่วยประมวลผลกลาง และรวมไปถึงการประสานงานในการทำงานร่วมกันระหว่างหน่วยประมวลผลกลาง กับอุปกรณ์นำเข้าข้อมูล อุปกรณ์แสดงผล และหน่วยความจำสำรองด้วย เมื่อผู้ใช้ต้องการประมวลผล ตามชุดคำสั่งใด ผู้ใช้จะต้องส่งข้อมูลและชุดคำสั่งนั้น ๆ เข้าสู่ระบบ คอมพิวเตอร์เสียก่อน โดยข้อมูล และชุดคำสั่งดังกล่าวจะถูกนำไปเก็บไว้ในหน่วยความจำหลักก่อน จากนั้นหน่วยควบคุมจะดึงคำสั่งจาก ชุดคำสั่งที่มีอยู่ในหน่วยความจำหลักออกมาทีละคำสั่งเพื่อทำการแปล ความหมายว่าคำสั่งดังกล่าวสั่งให้ ฮาร์ดแวร์ส่วนใด ทำงานอะไรกับข้อมูลตัวใด เมื่อทราบความหมายของ คำสั่งนั้นแล้ว หน่วยควบคุมก็จะส่ง สัญญาณคำสั่งไปยังฮาร์แวร์ ส่วนที่ทำหน้าที่ ในการประมวลผลดังกล่าว ให้ทำตามคำสั่งนั้น ๆ เช่น ถ้าคำสั่ง ที่เข้ามานั้นเป็นคำสั่งเกี่ยวกับการคำนวณ หน่วยควบคุมจะส่งสัญญาณ คำสั่งไปยังหน่วยคำนวณและตรรกะ ให้ทำงาน หน่วยคำนวณและตรรกะก็จะไปทำการดึงข้อมูลจาก หน่วยความจำหลักเข้ามาประมวลผล ตามคำสั่งแล้วนำผลลัพธ์ที่ได้ไปแสดงยังอุปกรณ์แสดงผล หน่วยคงบคุมจึงจะส่งสัญญาณคำสั่งไปยัง อุปกรณ์แสดงผลลัพธ์ ที่กำหนดให้ดึงข้อมูลจากหน่วยความจำหลัก ออกไปแสดงให้เห็นผลลัพธ์ดังกล่าว อีกต่อหนึ่ง
3. หน่วยความจำหลัก (Main Memory)
คอมพิวเตอร์จะสามารถทำงานได้เมื่อมีข้อมูล และชุดคำสั่งที่ใช้ในการประมวลผลอยู่ในหน่วยความ จำหลักเรียบร้อยแล้วเท่านั้น และหลักจากทำการประมวลผลข้อมูลตามชุดคำสั่งเรียบร้อบแล้ว ผลลัพธ์ที่ได้ จะถูกนำไปเก็บไว้ที่หน่วยความจำหลัก และก่อนจะถูกนำออกไปแสดงที่อุปกรณ์แสดงผล

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