เรื่อง ความแตกต่างระหว่าง CISC และ RISC


CISC (Complex Instruction Set Computer)RISC (Reduce Instruction Set Computer)
Memory Usage
ข้อดี
ในการใช้ของถาปัตกรรมแบบ CISC นั้น ชุดของคำสั่งจะมีมากมายหลายคำสั่งที่ ซับซ้อนและยุ่งยาก แต่นั่นไม่ได้หมายความว่า ทุกชุดคำสั่งจะมีการ FIX CODE กล่าว คือ ถ้ามีการใช้ชุดคำสั่งที่มีความซับซ้อนมากก็จะใช้จำนวน BIT มาก แต่ถ้าใช้งานชุดคำสั่งที่มีความซับซ้อนน้อยก็จะใช้งานจำนวน BIT น้อยเช่นกัน ในการเก็บชุดคำสั่งของ CISC นั้นจะเก็บเท่ากับจำนวนจริงของการใช้งาน จึงประหยัดเนื้อที่ใน Memory
ข้อเสีย
เนื่องจากการเก็บชุดของคำสั่งนั้น เก็บเฉพาะการใช้งานจริง ซึ่งจะใช้งาน Memory น้อย แต่นั่นไม่ได้หมายความว่าจะทำให้เกิดประสิทธิภาพในการทำงานแต่ จะทำให้ประสิทธิภาพการทำงานของเครื่องคอมพิวเตอร์ช้าลง เพราะต้องเสียเวลาในการถอดรหัสอันยุ่งยากของการเข้ารหัสที่มีขนาดไม่เท่ากัน
Memory Usageข้อเสีย
สถาปัตยกรรมแบบ RISC นั้นเน้นหลักการของการนำเอาชุดของคำสั่งง่ายๆ เพียงไม่กี่คำสั่ง (โดยทั่วไปไม่เกิน 128 คำสั่ง เช่น บวก,ลบ,คูณ,หาร) มาประกอบรวมเข้าไว้ด้วยกัน 128 คำสั่ง มีค่าเท่ากับ 2 ยกกำลัง 6 หรือกล่าวคือใช้งานแค่ 6 BIT ในการเก็บค่าของชุดคำสั่ง ในการเก็บชุดคำสั่งจึง FIX CODE ไว้แค่ 6 เท่านั้น ซึ่งเกิดข้อเสียคือถ้าหากคำสั่งที่ใช้งานใช้แค่ 1 BIT ก็ยังคงเก็บ 6 BIT เกิด WasteSpace
ข้อดี
เนื่องจากการเก็บข้อมูลของ RISC นี้เป็นลักษณะ FIX CODE จึงส่งผลให้การถอดรหัสรวดเร็ว เพราะชุดคำสั่งเท่ากันทุก Record
Performance1. เนื่องจาก CISC มีชุดของ Complex Instruction มากกว่า RISC และในคำสั่งพิเศษที่มีอยู่ใน CISC นั้น (หรือคำสั่งยากๆ) เช่น การทำ Polynomial ในการทำงานหนึ่งคำสั่งของ CISC อาจใช้เวลา (CLOCK) มากกว่าการนำเอาคำสั่งที่มีอยู่ใน RISC หลายๆ คำสั่งมารวมกันเสียอีก
2. ประสิทธิภาพอาจลดลงเนื่องจากเสียเวลาในการ DECODE เพราะชุดคำสั่งของ CISC ไม่แน่นอน มีทั้งสั้นและยาว อีกทั้งวงจรมีความสลับซับซ้อนมาก และใช้ CLOCK CYCLE นาน จึงทำให้เสียค่าใช้จ่ายสูง และ ใช้เวลานานกว่าในการประมวลผล
Performance1. การทำงานจะทำได้เร็วกว่า CISC เพราะ RISC ประกอบด้วยคำสั่งง่ายๆ เช่น LOAD/STORE ใช้ในการ LOAD ข้อมูลเก็บไว้ใน REGISTER โดยตรงและให้ REGISTER ทำการประมวลผลจากนั้นค่อย STORE เก็บไว้ใน MEMORY (โดยทั่วไปการทำงานของ Computer เรียงลำดับความเร็ว มีดังต่อไปนี้ CPU , REGISTER , MEMORY , DISK)
2. เนื่องจากการเข้ารหัสของชุดคำสั่งเป็นลักษณะ FIX-ENCODING จึงง่ายต่อการ DECODE หรือถอดรหัส
3. ในสถาปัตยกรรมแบบ RISC มี REGISTER จำนวนมากจึงทำให้การทำงานโดยรวมรวดเร็ว
4. การใช้งานคำสั่งง่ายๆ ของ RISC นี้ บางคำสั่งใช้เวลา (CLOCK CYCLE) ไม่ถึง 1 CLOCK จึงส่งผลให้ทำงานได้รวดเร็ว
Compiler Supportใน CISC มีชุดคำสั่งที่ซับซ้อนซึ่งติดมากับตัว CPU อยู่แล้ว แต่เมื่อมาทำการ CODE หรือเขียนโปรแกรมแล้วผ่านตัว Compiler หรือตัวแปลงจากโปรแกรมเป็นภาษาเครื่อง จะพบว่าคำสั่งยากๆ ที่มีอยู่ใน CPU นั้น ตัว Compiler กลับแปลงให้อยู่ในรูปของคำสั่งง่ายๆ หรือ กล่าวคือ Software ไม่ Support กับ Hardware ซึ่งใน CPU หรือ Hardware นั้นมีการรองรับการทำงานของชุดคำสั่งนี้ แต่ตัว Software ไม่ได้มีการใช้คุณสมบัติจากชุดของคำสั่งที่ติดมากับตัว CPU แต่อย่างใด ดังนั้นชุดคำสั่งที่บรรจุเอา Complex Instruction ไว้ใน CISC นั้น จะไม่ค่อยมีประโยชน์มากนัก ถ้าหากว่าตัว Compiler นั้นไม่รองรับ และยิ่งไปกว่านั้นตัว Compiler บางตัวยังมีชุดคำสั่งยากๆ อยู่ในตัวมันแล้ว กลับยิ่งหมายความว่าจะไม่ได้ใช้งานจากสถาปัตยกรรมที่สร้างขึ้นมาใน CISC นี้เลยCompiler Supportใน RISC นั้นมีคำสั่งประมาณ 128 คำสั่ง แนบมากับ CPU และอนุญาตให้ใช้งานคำสั่งประเภท LOAD/STORE ที่นำข้อมูลจาก MEMORY ไปกระทำกับ REGISTER โดยตรงซึ่งทำให้การทำงานโดยรวมเร็วกว่า จากจุดนี้เองในการใช้งานในส่วนของคำสั่งที่ซับซ้อน อาจต้องใช้คำสั่งในตัว Compiler มาใช้งานมากกว่า RISC เพราะ RISC เน้นหลักการทำงานของชุดคำสั่งที่ง่ายๆ แต่เร็ว ดังนั้นคำสั่งยากๆ จึงโยนให้เป็นหน้าที่ของตัว Compiler แทนครับ

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

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