หน่วยประมวลผลกลาง (อังกฤษ: central processing unit) หรือย่อว่า ซีพียู (CPU) เป็นวงจรอิเลคทรอนิกส์ที่ทำงาน หรือประมวลผล ตามชุดของคำสั่งเครื่องจากซอฟต์แวร์ คำนี้เริ่มใช้ในอุตสาหกรรมคอมพิวเตอร์ตั้งแต่ต้นศตวรรษ 1960
หน่วยประมวลผลเปรียบเสมือนเป็นสมองของคอมพิวเตอร์ ในการทำหน้าที่ตัดสินใจหรือคำนวณ จากคำสั่งที่ได้รับมา เช่น การเปรียบเทียบ การกระทำการทางคณิตศาสตร์ ฯลฯ
โดยมีกระบวนการพื้นฐานคือ
- อ่านชุดคำสั่ง (fetch)
- ตีความชุดคำสั่ง (decode)
- ประมวลผลชุดคำสั่ง (execute)
- อ่านข้อมูลจากหน่วยความจำ (memory)
- เขียนข้อมูล/ส่งผลการประมวลกลับ (write back)
สถาปัตยกรรมของหน่วยประมวลผลกลาง ประกอบไปด้วย (control unit) และ (execution unit) และจะเก็บข้อมูลระหว่างการคำนวณ ไว้ในระบบเรจิสเตอร์
การทำงานของหน่วยประมวลผลกลาง
การทำงานของหน่วยประมวลผลกลางแบ่งออกตามหน้าที่ได้เป็นห้ากลุ่มใหญ่ ๆ ดังนี้ โดยทำงานทีละคำสั่ง จากคำสั่งที่เรียงลำดับกันไว้ตอนที่เขียนโปรแกรม
- Fetch - การอ่านชุดคำสั่งขึ้นมา 1 คำสั่งจากโปรแกรม ในรูปของรหัสเลขฐานสอง (Binary Code from on-off of BIT)
- Decode - การตีความ 1 คำสั่งนั้นด้วยวงจรถอดรหัส (Decoder circuit) ตามจำนวนหลัก (BIT) ว่ารหัสนี้จะให้วงจรอื่นใดทำงานด้วยข้อมูลที่ใด
- Execute - การทำงานตาม 1 คำสั่งนั้น คือ วงจรใดในไมโครโปรเซสเซอร์ทำงาน เช่น วงจรบวก วงจรลบ วงจรเปรียบเทียบ วงจรย้ายข้อมูล ฯลฯ
- Memory - การติดต่อกับหน่วยความจำ การใช้ข้อมูลที่อยู่ในหน่วยจำชั่วคราว (RAM, Register) มาใช้ในคำสั่งนั้นโดยอ้างที่อยู่ (Address)
L3 Cache - รอคำสั่งระหว่างกระบวนการกำลังประมวลผล*Write Back - การเขียนข้อมูลกลับ โดยมีหน่วยจำ Register ช่วยเก็บที่อยู่ของคำสั่งต่อไป ภายหลังมีคำสั่งกระโดดบวกลบที่อยู่
การทำงานแบบขนานในระดับคำสั่ง (ILP)
โดยการทำงานเหล่านี้ถ้าเป็นแบบพื้นฐานก็จะทำงานกันเป็นขั้นตอนเรียงตัวไปเรื่อย ๆ แต่ในหลักความเป็นไปได้คือการทำงานในแต่ละส่วนนั้นค่อนข้างจะเป็นอิสระออกจากกัน จึงได้มีการจับแยกกันให้ทำงานขนานกันของแต่ละส่วนไปได้ หลักการนี้เรียกว่า pipeline เป็นการทำการประมวลผลแบบขนานในระดับการไหลของแต่ละคำสั่ง (ILP: Instruction Level Parallelism) โดยข้อมูลที่เป็นผลจากการคำนวณของชุดก่อนหน้าจะถูกส่งกลับไปให้ชุดคำสั่งที่ตามมาในช่องทางพิเศษภายในหน่วยประมวลผลเอง
การทำงานแบบขนานนี้สามารถทำให้มีความสามารถเพิ่มขึ้นได้อีกคือเพิ่มการทำงานแต่ละส่วนออกเป็นส่วนที่เหมือนกันในทุกกลุ่มแต่ให้ทำงานคนละสายชุดคำสั่งกัน วิธีการนี้เรียกว่าการทำหน่วยประมวลผลให้เป็น superscalar วิธีการนี้ทำให้มีหลาย ๆ ชุดคำสั่งทำงานได้ในขณะเดียวกัน โดยงานหนักของ superscalar อยู่ที่ส่วนดึงชุดคำสั่งออกมา (Dispatcher) เพราะส่วนนี้ต้องตัดสินใจได้ว่าชุดคำสั่งอันไหนสามารถทำการประมวลผลแบบขนานได้ หลักการนี้ก็เป็นการทำการประมวลผลแบบขนานในลำดับการให้ของแต่ละคำสั่ง (ILP: Instruction Level Parallelism) เช่นกัน
การทำงานแบบขนานในระดับกลุ่มชุดคำสั่ง (TLP)
การทำงานของโปรแกรมคอมพิวเตอร์แต่ละโปรแกรมสามารถแบ่งตัวออกได้เป็นระดับกลุ่มชุดคำสั่ง (Thread) โดยในแต่ละกลุ่มสามารถทำงานขนานกันได้ (TLP: Thread Level Parallelism) ในระดับ2
คอมพิวเตอร์แบบฝังตัว
- สถาปัตยกรรม ของไอบีเอ็ม
- สถาปัตยกรรม 8051 ของอินเทล
- สถาปัตยกรรม 6800 ของโมโตโรลา
- ใช้ในหน่วยควบคุม 68HC11 ซึ่งเป็นที่แพร่หลายอย่างมาก
- สถาปัตยกรรม ของ ARM (เคยเป็นส่วนหนึ่งของบริษัท Acorn Computers)
- ใช้ใน เครื่องเล่นเพลง ไอพ็อด, เครื่องเล่นเกม เกมบอยแอดวานซ์, และ จำนวนมาก 0
- หน่วยประมวลผล XScale และ StrongARM ของอินเทลนั้น ใช้สถาปัตยกรรม ARM
- ใช้ความถี่ในการรับคำสั่งต่อวินาทีด้วยความเร็ว 2.4 ร้อยล้านคำสั่ง ส่วนมากใช้ในกำลังประมวลผลแบบฝังตัว
เครื่องคอมพิวเตอร์ส่วนบุคคล
- สถาปัตยกรรม x86 ของอินเทล
- สถาปัตยกรรม 6800, , และ ของโมโตโรลา
- สถาปัตยกรรม ของ MOS Technology
- สถาปัตยกรรม ของ
- สถาปัตยกรรม PowerPC ของไอบีเอ็ม (ในภายหลังคือพันธมิตร )
- สถาปัตยกรรม AMD64 (หรือ x86-64) ของเอเอ็มดี
- เข้ากันได้กับสถาปัตยกรรมแบบ x86 ของอินเทล
คอมพิวเตอร์เซิร์ฟเวอร์ และเวิร์คสเตชัน
- สถาปัตยกรรม ของ SPARC International, Inc. (มีสมาชิกเช่น ซัน ไมโครซิสเต็มส์, ฟูจิตสึ, โตชิบา, ) หน่วยประมวลผล LEON2 ซึ่งเป็นหน่วยประมวลผลแบบเปิดเผยรหัส ใช้สถาปัตยกรรม SPARC
- สถาปัตยกรรม ของไอบีเอ็ม
- สถาปัตยกรรม ของ MIPS Computer Systems Inc. ชุดของคำสั่งเครื่องของ MIPS เป็นเครื่องมือหลักในการสอนสถาปัตยกรรมคอมพิวเตอร์ในหนังสือ Computer Organization and Design เขียนโดย และ 1998 (2nd. edition)
- สถาปัตยกรรม ของเอชพี
- สถาปัตยกรรม ขนาด 9*9*9 Algorithm ชนิดหนึ่งที่ใช้เงื่อนเวลา
- สถาปัตยกรรม ของ
- สถาปัตยกรรม ของ ARM (เคยเป็นส่วนหนึ่งของบริษัท Acorn Computers)
มินิคอมพิวเตอร์จนถึงเมนเฟรม
- สถาปัตยกรรม ของ , และสถาปัตยกรรม ที่ถูกพัฒนาต่อมา
- สถาปัตยกรรม ของฮิตาชิ
- สถาปัตยกรรมของคอมพิวเตอร์รุ่น (ปัจจุบันสนับสนุนโดย ClearPath IX computers)
- - คอมพิวเตอร์มาตรฐานของกองทัพไทย
- - คอมพิวเตอร์ของกระสวยอวกาศ
ดูเพิ่ม
อ้างอิง
- Hennessy, John A.; Goldberg, David (1996). Computer Architecture: A Quantitative Approach. Morgan Kaufmann Publishers. .
แหล่งข้อมูลอื่น
- รายละเอียดหน่วยประมวลผลกลาง CPU (Central Processing Unit) 2009-01-24 ที่ เวย์แบ็กแมชชีน
wikipedia, แบบไทย, วิกิพีเดีย, วิกิ หนังสือ, หนังสือ, ห้องสมุด, บทความ, อ่าน, ดาวน์โหลด, ฟรี, ดาวน์โหลดฟรี, mp3, วิดีโอ, mp4, 3gp, jpg, jpeg, gif, png, รูปภาพ, เพลง, เพลง, หนัง, หนังสือ, เกม, เกม, มือถือ, โทรศัพท์, Android, iOS, Apple, โทรศัพท์โมบิล, Samsung, iPhone, Xiomi, Xiaomi, Redmi, Honor, Oppo, Nokia, Sonya, MI, PC, พีซี, web, เว็บ, คอมพิวเตอร์
hnwypramwlphlklang xngkvs central processing unit hruxyxwa siphiyu CPU epnwngcrxielkhthrxniksthithangan hruxpramwlphl tamchudkhxngkhasngekhruxngcaksxftaewr khanierimichinxutsahkrrmkhxmphiwetxrtngaettnstwrrs 1960 hnwypramwlphlepriybesmuxnepnsmxngkhxngkhxmphiwetxr inkarthahnathitdsinichruxkhanwn cakkhasngthiidrbma echn karepriybethiyb karkrathakarthangkhnitsastr l odymikrabwnkarphunthankhux xanchudkhasng fetch tikhwamchudkhasng decode pramwlphlchudkhasng execute xankhxmulcakhnwykhwamca memory ekhiynkhxmul sngphlkarpramwlklb write back sthaptykrrmkhxnghnwypramwlphlklang prakxbipdwy control unit aela execution unit aelacaekbkhxmulrahwangkarkhanwn iwinrabbercisetxrkarthangankhxnghnwypramwlphlklangkarthangankhxnghnwypramwlphlklangaebbphunthan karthangankhxnghnwypramwlphlklangaebngxxktamhnathiidepnhaklumihy dngni odythanganthilakhasng cakkhasngthieriyngladbkniwtxnthiekhiynopraekrm Fetch karxanchudkhasngkhunma 1 khasngcakopraekrm inrupkhxngrhselkhthansxng Binary Code from on off of BIT Decode kartikhwam 1 khasngnndwywngcrthxdrhs Decoder circuit tamcanwnhlk BIT warhsnicaihwngcrxunidthangandwykhxmulthiid Execute karthangantam 1 khasngnn khux wngcridinimokhropressesxrthangan echn wngcrbwk wngcrlb wngcrepriybethiyb wngcryaykhxmul l Memory kartidtxkbhnwykhwamca karichkhxmulthixyuinhnwycachwkhraw RAM Register maichinkhasngnnodyxangthixyu Address L3 Cache rxkhasngrahwangkrabwnkarkalngpramwlphl Write Back karekhiynkhxmulklb odymihnwyca Register chwyekbthixyukhxngkhasngtxip phayhlngmikhasngkraoddbwklbthixyu karthanganaebbkhnaninradbkhasng ILP karthangankhxnghnwypramwlphlklangaebbmi pipeline odykarthanganehlanithaepnaebbphunthankcathanganknepnkhntxneriyngtwiperuxy aetinhlkkhwamepnipidkhuxkarthanganinaetlaswnnnkhxnkhangcaepnxisraxxkcakkn cungidmikarcbaeykknihthangankhnanknkhxngaetlaswnipid hlkkarnieriykwa pipeline epnkarthakarpramwlphlaebbkhnaninradbkarihlkhxngaetlakhasng ILP Instruction Level Parallelism odykhxmulthiepnphlcakkarkhanwnkhxngchudkxnhnacathuksngklbipihchudkhasngthitammainchxngthangphiessphayinhnwypramwlphlexng karthangankhxnghnwypramwlphlklangaebbmi pipeline aelaepn superscalar karthanganaebbkhnannisamarththaihmikhwamsamarthephimkhunidxikkhuxephimkarthanganaetlaswnxxkepnswnthiehmuxnkninthukklumaetihthangankhnlasaychudkhasngkn withikarnieriykwakarthahnwypramwlphlihepn superscalar withikarnithaihmihlay chudkhasngthanganidinkhnaediywkn odynganhnkkhxng superscalar xyuthiswndungchudkhasngxxkma Dispatcher ephraaswnnitxngtdsinicidwachudkhasngxnihnsamarththakarpramwlphlaebbkhnanid hlkkarnikepnkarthakarpramwlphlaebbkhnaninladbkarihkhxngaetlakhasng ILP Instruction Level Parallelism echnkn karthanganaebbkhnaninradbklumchudkhasng TLP karthangankhxngopraekrmkhxmphiwetxraetlaopraekrmsamarthaebngtwxxkidepnradbklumchudkhasng Thread odyinaetlaklumsamarththangankhnanknid TLP Thread Level Parallelism inradb2 khxmphiwetxraebbfngtw sthaptykrrm khxngixbiexm sthaptykrrm 8051 khxngxinethl sthaptykrrm 6800 khxngomotorla ichinhnwykhwbkhum 68HC11 sungepnthiaephrhlayxyangmak sthaptykrrm khxng ARM ekhyepnswnhnungkhxngbristh Acorn Computers ichin ekhruxngelnephlng ixphxd ekhruxngelnekm ekmbxyaexdwans aela canwnmak 0 hnwypramwlphl XScale aela StrongARM khxngxinethlnn ichsthaptykrrm ARM ichkhwamthiinkarrbkhasngtxwinathidwykhwamerw 2 4 rxylankhasng swnmakichinkalngpramwlphlaebbfngtwekhruxngkhxmphiwetxrswnbukhkhl sthaptykrrm x86 khxngxinethl sthaptykrrm 6800 aela khxngomotorla sthaptykrrm khxng MOS Technology sthaptykrrm khxng sthaptykrrm PowerPC khxngixbiexm inphayhlngkhuxphnthmitr sthaptykrrm AMD64 hrux x86 64 khxngexexmdi ekhaknidkbsthaptykrrmaebb x86 khxngxinethlkhxmphiwetxresirfewxr aelaewirkhsetchn sthaptykrrm khxng SPARC International Inc mismachikechn sn imokhrsisetms fucitsu otchiba hnwypramwlphl LEON2 sungepnhnwypramwlphlaebbepidephyrhs ichsthaptykrrm SPARC sthaptykrrm khxngixbiexm sthaptykrrm khxng MIPS Computer Systems Inc chudkhxngkhasngekhruxngkhxng MIPS epnekhruxngmuxhlkinkarsxnsthaptykrrmkhxmphiwetxrinhnngsux Computer Organization and Design ekhiynody aela ISBN 1 55860 428 6 1998 2nd edition sthaptykrrm khxngexchphi sthaptykrrm khnad 9 9 9 Algorithm chnidhnungthiichenguxnewla sthaptykrrm khxng sthaptykrrm khxng ARM ekhyepnswnhnungkhxngbristh Acorn Computers minikhxmphiwetxrcnthungemnefrm sthaptykrrm khxng aelasthaptykrrm thithukphthnatxma sthaptykrrm khxnghitachi sthaptykrrmkhxngkhxmphiwetxrrun pccubnsnbsnunody ClearPath IX computers khxmphiwetxrmatrthankhxngkxngthphithy khxmphiwetxrkhxngkraswyxwkasduephimxupkrnkhxmphiwetxr emnbxrdxangxingHennessy John A Goldberg David 1996 Computer Architecture A Quantitative Approach Morgan Kaufmann Publishers ISBN 1 55860 329 8 aehlngkhxmulxunraylaexiydhnwypramwlphlklang CPU Central Processing Unit 2009 01 24 thi ewyaebkaemchchin