วันจันทร์ที่ 1 สิงหาคม พ.ศ. 2554

โครงสร้างของคอมพิวเตอร์

โครงสร้างคอมพิวเตอร์





การประมวลผลคำสั่งของ CPUหลังจากคำสั่งและข้อมูลอยู่ในหน่วยความจำแล้ว CPU ก็จะทำการประมวลผลที่ละคำสั่ง ใน 4 ขั้นตอนดังนี้



ขั้นตอนการทำงานของ CPU

• จากโปรแกรมที่ประกอบด้วยกลุ่มของคำสั่งที่ต้องการให้คอมพิวเตอร์ทำการประมวลผล แต่ละคำสั่งประกอบด้วย รหัสให้ทำงาน ( OperationCode)หรือ ออปโค้ด (Opcode) เช่น ADD (การบวก) SUB (การลบ)MUL (การคูณ) DIV (การหาร) และสิ่งที่เรียกว่า โอเปอแรนต์ (Operand)ซึ่งจะบอกตำแหน่งของที่เก็บข้อมูลในหน่วยความจำ เช่น สัญลักษณ์ Aหรือ B

ภาพแสดงขั้นตอนการทำงานของ CPU


ขั้นตอนการทำงานของ CPU และความสัมพันธ์ในการใช้ Resistor


ขั้นตอนการประมวลผลของ CPU

• การเฟตช์ (Fetch) เป็นกระบวนการที่หน่วยควบคุม (CU) ไปนำคำสั่งที่ต้องการใช้จากหน่วยความจำมาเพื่อการประมวลผลมาเก็บไว้ที่ Register
• การแปลความหมาย ( Decode ) เป็นกระบวนการถอดรหัสหรือแปลความหมายคำสั่งต่างๆ เพื่อส่งไปยังหน่วยคำนวณและตรรกะเพื่อดำเนินการต่อไป
• การเอ็กซ์คิวต์ ( Execute ) เป็นกระบวนประมวลผลคำสั่งโดยหน่วยคำนวณและตรรกะ ซึ่งการประมวลผลจะประมวลผลทีละคำสั่ง
• การจัดเก็บ ( Store ) เป็นกระบวนการจัดเก็บผลลัพธ์ที่ได้จากการประมวลผลและจัดเก็บไว้ในหน่วยความจำหรือรีจิสเตอร์


วัฏจักรการทำงานของซีพียู หรือวัฏจักรเครื่อง (Machine Cycle)



Machine Cycle & การประมวลผลคำสั่งโปรแกรม

• วัฏจักรคำสั่ง Instruction Cycle (I-cycle) l fetch instruction - control unit รับคำสั่งจากแรม l decode instruction - control unit แปลความหมายคำสั่งโปรแกรม และเก็บส่วนที่เป็น คำสั่ง ของคำสั่งโปรแกรมไว้ใน Instruction Register & เก็บส่วนที่เป็นแอดเดรส ของคำสั่งโปรแกรมไว้ใน Address Register

เวลาที่ใช้ในการแปลคำสั่ง (Instruction Time)

เวลาทั้งหมดในการประมวลผลแต่ละคำสั่ง ประกอบด้วย 2 ส่วนคือ
•การแปลคำสั่ง (fetch and decode) และการประมวลผลคำสั่ง(execute and store)
•เวลาที่ใช้แปลคำสั่งเรียกว่า instruction time.


วัฏจักรการประมวลผล Execut ed Cycle (E-cycle) execute instruction - ย้ายข้อมูลที่จะประมวลผลจาก RAM ไปเก็บไว้ใน Storage Register แล้ว ALU ปฏิบัติตามคำสั่งโปรแกรม store results - ALU เก็บผลลัพธ์ในรีจีสเตอร์/แรม

เวลาที่ใช้ในการประมวลผล เรียกว่า E xecution time



เวลาที่ใช้ประมวลผลแต่ละคำสั่ง (Machine Cycle) The combination of I-time and E-time is called the machine cycle



หน่วยวัดความเร็วของซีพียู

• เมกะเฮิรตซ์ ( Megahertz: MHz ) เป็นหน่วยวัดความเร็วของซีพียูในไมโครคอมพิวเตอร์ หรือ Clock Speed ที่มีความเร็วหนึ่งล้านวัฏจักรเครื่องต่อวินาที ( Millions machine cycle per second )

• มิปส์ ( Million of Instructions Per Second: MIPS ) เป็นหน่วยวัดความเร็วของซีพียูของคอมพิวเตอร์ขนาดกลางขึ้นไปโดย 1 MIPS จะสามารถประมวลผลได้หนึ่งล้านคำสั่งต่อวินาที ( Million of Instructions Per Second: MIPS )

• ฟลอปส์ ( Floating Point Operations Per Second: FLOPS ) เป็นหน่วยวัดความเร็วของซีพียูในซูเปอร์คอมพิวเตอร์ ซึ่งมักวัดความสามารถในการปฏิบัติการคำนวณทางคณิตศาสตร์แบบทศนิยมหรือ Floating Point

รูปแบบการประมวลผลของซีพียู

1. การประมวลผลแบบเดี่ยว ( Single processing) หรือ Sequential Processing เป็นการประมวลผลข้อมูลตามลำดับ เนื่องจากมีซีพียูทำงานเพียงตัวเดียว ปัญหาที่เกิดขึ้นคือ การประมวลผลข้อมูลล่าช้า

2. การประมวลผลแบบขนาน ( Parallel processing) เป็นการใช้ซีพียูมากกว่า 1 ตัว ( Multiple Processors ) ในการประมวลผลงานๆ หนึ่งพร้อมกัน ดังภาพ


รูปแบบในการส่งข้อมูล (transmission mode)

การส่งข้อมูลในระบบเครือข่าย สามารถทำได้ 2 ลักษณะ คือ การส่งแบบขนาน และการส่งแบบอนุกรม

การส่งแบบขนาน (parallel transmission) คือการส่งข้อมูลพร้อมกันทีละหลาย ๆ บิตในหนึ่งรอบสัญญาณนาฬิกา โดยการส่งจะรวมบิต 0 และ 1 หลาย ๆ บิตเข้าเป็นกลุ่มจำนวน n บิต ผู้ส่งส่งครั้งละ n บิต ผู้รับจะรับครั้งละ n บิต


รูปแสดงการส่งข้อมูลแบบขนาน โดยให้ n=8 โดยทั่วไปแล้วปลายของสายทั้ง 2 ข้างจะถูกต่อด้วยคอนเน็กเตอร์ด้านละ 1 ตัว ข้อดีของการส่งข้อมูลแบบขนานคือ ความเร็ว เพราะส่งข้อมูลได้ครั้งละ n บิต

การส่งข้อมูลแบบอนุกรม (serial transmission) จะใช้วิธีการส่งทีละ 1 บิตในหนึ่งรอบสัญญาณนาฬิกา ทำให้ดูเหมือนว่าบิตต่าง ๆ เรียงต่อเนื่องกันไป จากอุปกรณ์หนึ่งไปยังอีกอุปกรณ์หนึ่ง ดังรูป


ข้อดีของการส่งข้อมูลแบบอนุกรม คือการใช้ช่องทางการสื่อสารเพียง 1 ช่อง ทำให้ลดค่าใช้จ่ายลง แต่ข้อเสียคือ ความเร็วของการส่งที่ต่ำ ตัวอย่างของการส่งข้อมูลแบบอนุกรม

การส่งข้อมูลแบบอนุกรม แบ่งได้เป็น 2 แบบ ดังนี้

1. การส่งข้อมูลแบบอะซิงโครนัส (asynchronous transmission) เป็นการส่งข้อมูลที่ผู้รับและผู้ส่งไม่ต้องใช้สัญญาณนาฬิกาเดียวกัน แต่ข้อมูลที่รับต้องถูกแปลตามรูปแบบที่ได้ตกลงกันไว้ก่อน เนื่องจากไม่ต้องใช้สัญญาณนาฬิกาเดียวกันทำให้ผู้รับไม่สามารถคาดการณ์ได้ว่าเมื่อใดจะมีข้อมูลส่งมาให้


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

2. การส่งข้อมูลแบบซิงโครนัส (synchronous transmission) เป็นการส่งบิต 0 และ 1 ที่ต่อเนื่องกันไปโดยไม่มีการแบ่งแยก ผู้รับต้องแยกบิตเหล่านี้ออกมาเป็นไบต์ หรือเป็นตัวอักษรเอง


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

หน่วยความจำ

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

ลักษณะการเก็บข้อมูล

1.หน่วยความจำแบบลบเลือนได้ (volatile memory)
คือถ้าเป็นหน่วยความจำที่เก็บข้อมูลไว้แล้ว หากไฟฟ้าดับ คือไม่มีไฟฟ้าจ่ายให้ กับวงจรหน่วยความจำ ข้อมูลที่เก็บไว้จะหายไปหมด

2. หน่วยความจำไม่ลบเลือน (nonvolatile memory)คือ หน่วยความจำเก็บข้อมูลได้ โดยไม่ขึ้นกับไฟฟ้าที่เลี้ยงวงจร

แบ่งตามสภาพการใช้งาน

1. หน่วยความจำที่ซีพียูอ่านได้อย่างเดียว
ไม่สามารถเขียนลงไปได้ เรียกว่า รอม (Read Only Memory : ROM) รอมจึงเป็นหน่วยความจำที่เก็บข้อมูลหรือโปรแกรมไว้ถาวร เช่นเก็บโปรแกรมควบคุม การจัดการพื้นฐานของระบบ ไมโครคอมพิวเตอร์ (bios)

2. หน่วยความจำที่เขียนหรืออ่านข้อมูลได้
การเขียนหรืออ่านจะเลือกที่ตำแหน่งใดก็ได้ เราเรียกหน่วยความจำประเภทนี้ว่า แรม (Random Access Memory: RAM) แรมเป็น หน่วยความจำแบบลบเลือนได้เป็นหน่วยความจำหลักที่สามารถนำโปรแกรม และข้อมูลจากอุปกรณ์ภายนอก หรือหน่วยความจำรองมาบรรจุไว้ หน่วยความจำแรมนี้ต่างจากรอมที่สามารถเก็บข้อมูลได้

หน่วยความจำเป็บแรมที่ใช้อยู่สามารถแบ่งได้ 2 ประเภท คือ

1. ไดนามิกแรมหรือดีแรม (Dynamic RAM : DRAM)
DRAM จะทำการเก็บข้อมูลในตัวเก็บประจุ ( Capacitor ) ซึ่งจำเป็นจะต้องมีการ refresh เพื่อ เก็บข้อมูลให้คงอยู่ โดยการ refresh นี้ ทำให้เกิดการหน่วงเวลาขึ้นในการเข้าถึงข้อมูล

2. Static Random Access Memory (SRAM)
จะต่างจาก DRAM ตรงที่ว่า DRAM จะต้องทำการ refresh ข้อมูลอยู่ตลอดเวลา แต่ในขณะที่ SRAM จะเก็บข้อมูลนั้นๆ ไว้ และจะไม่ทำการ refresh โดยอัตโนมัติ ซึ่งมันจะทำการ refresh ก็ต่อเมื่อ สั่งให้มัน refresh เท่านั้น ซึ่งข้อดีของมัน ก็คือความเร็ว ซึ่งเร็วกว่า DRAM ปกติมาก แต่ก็ด้วยราคาที่สูงกว่ามาก จึงเป็นข้อด้อย

3.น่วยความจำความเร็วสูง (Cache Memory)
หน่วยความจำแคช เป็นหน่วยความจำขนาดเล็กที่มีความเร็วสูง ทำหน้าที่เหมือนที่พักคำสั่ง และข้อมูลระหว่าง การทำงาน เพื่อให้การทำงานโดยรวมเร็วขึ้น

แหล่งอ้างอิง
http://202.28.94.55/web/322161/2551/001/g129/K2.htm
http://www.chakkham.ac.th/technology/computer1/storage.htm

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

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