แต่เดิมแนวความคิดที่จะทำให้คอมพิวเตอร์ทำงานได้เร็วขึ้น   จะใช้วิธีการเพิ่มขีดความสามารถของคำสั่ง   คำสั่งหนึ่ง
จึงทำงานเพิ่มขึ้นและซับซ้อนขึ้น     เช่นคำสั่งค้นหาข้อมูลในสตริงเป็นต้น     ด้วยวิธีนี้ทำให้สถาปัตยกรรมเฉพาะของตัวซีพียู
ต้องสนับสนุนคำสั่งใหม่ ๆ  เพิ่มขึ้น   ประะจวบกับไซเกิลการทำงานของแต่ละคำสั่งใช้จำนวนไซเกิลไม่เท่ากัน     บางคำสี่ง ทำงานเสร็จภายในไซเกิลเดียว บางคำสั่งใช้หลายไซเกิล ความคิดนี้จึงกลายมาเป็นคอมพิวเตอร์ในกลุ่ม CISC หรือ Complex Instruction Set Compter และความคิดนี้ได้พัฒนาต่อเนื่องมาเป็นลำดับจนถึงปัจจุบัน ซีพียูหลายตัว เช่น 80386, 80486 ก็ใช้แนวความคิดนี้ อีกแนวความคิดหนึ่ง   ได้เริ่มมาตั้งแต่ปี พ.ศ. 2518    โดยกลุ่มนักวิจัยแห่งมหาวิทยาลัยแคริฟอร์เนีย ได้พัฒนาซีพียูที่ชื่อว่า  RISC  แนวความคิดนี้คือ   ให้ซีพียูทำงานที่ไซเกิลแน่นอน   โดยลดจำนวนคำสั่งลง  ให้เหลือคำสั่ง 
พื้นฐานมากที่สุด  แล้วใช้หลักการไปป์ไลน์(pipeline)    คือนำคำสั่งมาเรียงการทำงานแบบขนานเหลื่อมกันหรือเข้าทำงาน 
แต่ละสถานีตามลำดับเรียงกันไป ทุกสถานีงานจะมีงานทำตลอดเวลา   การลดจำนวนคำสั่งลงนี้เอง จึงกลายมาเป็น   ซีพียู ประเภท RISC หรือ  Reduce  Instructionset Computer  คอมพิวเตอร์แบบ     RISC จึงทำงานได้เร็วและ  เป็นกลไก 
ที่สามารถเพิ่มขีดความสามารถโดยรวมได้หลายบริษัทจึงหันมาพัฒนาคอมพิวเตอร์ RISC  จนในที่สุดมีซับซีพียู  ที่กำหนด 
ขึ้นมา  และบริษัทซันไมโครซิสเต็ม  นำมาไช้เป็นซีพียูหลักของตนคือSPARC    SPARCเป็นซีพียูที่มีการกำหนด โครงสร้าง
สถาปัตยกรรมและคำสั่งไว้ชัดเจน  โดยมีบริษัทหลายบริษัทนำไปพัฒนาโครงสร้างชิป  และผลิตชิปไมโครโปเซสเซอร์ SPARC ได้รับการพัฒนาขีดความสามารถและประยุกต์เข้ากับเครื่องเวิร์กสเตชันและไฟล์เซอร์เวอร์อย่างกว้างขวาง

          ใน ค.ศ. 1948   ครั้งที่เริ่มมีการพัฒนาดิจิตอลคอมพิวเตอร์   การพัฒนาในครั้งนั้นเริ่มจากเครื่อง  MARK1 
ซึ่งมีคำสั่ง   เพียง 7  คำสั่งแต่ละคำสั่งมีลักษณะการทำงานที่ซับซ้อน  เช่น  คำสั่งบวก  คำสั่งกระโดด    คำสั่งในยุคนั้น  
มีเพียง  เท่าที่จำเป็น แต่เมื่อมีการพัฒนาต่อมาเรื่อย ๆ การสร้างคำสั่งก็เพิ่มมากขึ้น เช่น VAX   มีคำสั่งถึงกว่า  300 คำสั่ง นอกจากนี้คำสั่งก็จะดูซับซ้อนมากขึ้น หากพิจารณาไมโครโปเซสเซอร์ 8080 มีเพียง 78 คำสั่งแต่เมื่อ  Z80  ได้รับการพัฒนา
ขึ้น ชุดคำสั่งก็เพิ่มเป็นซุเปอร์เซต คือมีถึงกว่า 150 คำสั่ง   แล้วพัฒนาการต่อมาเป็น 8088, 8086   ก็มีชุดคำสั่งเพิ่มขึ้นอีก การออกแบบแต่ละะครั้ง   ดูจะพยายามสร้างชิปเดิมให้เป็นชิปย่อยและทำงานได้เหมือนเป็นซับเซต   ดังนั้นคำสั่งที่พัฒนากัน
ต่อมาก็ยิ่งสลับซับซ้อนยิ่งขึ้น นั่นคือ กลายมาเป็น CISC นั่นเอง อย่างไรก็ตามการพัฒนา  CISC   ก็ได้ใช้เทคนิคการเพิ่ม
ประสิทธิภาพโดยรวมหลายอย่าง  ที่ทำให้การพัฒนาในยุคหลัง   คือ RISC นำมาใช้เช่น มีการทำ Pipelining   การพรีเฟตซ์ และการใช้แคช

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

  • ความต้องการให้คอมแพติเบิลกับของเดิม   เมื่อรากฐานของผู้ใช้มีมาก   ผู้ใช้คุ้นเคยกับซีพียูหรือคำสั่งของซีพียูมากแล้ว  ครั้นพัฒนาการต้องการทำให้ซีพียูดีขึ้น ก็ต้องทำให้คอมแพติเบิลกับของเดิมและเพิ่มคำสั่งต่าง ๆ เข้าไปอีก การเพิ่ม
     ขีดความ  สามารถบางสิ่งบางอย่างเข้าไปอีกนี้   ทำให้เกิดความซับซ้อนในตัวซีพียูมากขึ้น คำสั่งที่เพิ่มเติมทีหลังจึง
    เป็นคำสั่งพิเศษโดยที่ไม่ไปกระทบกับซอฟต์แวร์เดิมที่มีอยู่แล้วผู้ออกแบบต้องการลดช่องว่างของซอฟต์แวร์  ระหว่าง ภาษาชั้นสูง
    กับภาษาเครื่อง ด้วยความพยายามที่จะสร้างคำสั่งภาษาเครื่องให้ใกล้หรือเข้าหาภาษาระดับสูงได้มากที่สุด โปรแกรมเมอร์ที่เขียนภาษาชั้นสูงเมื่อคอมไพล์แปลความมาเป็นภาษาเครื่อง ก็แปลได้โดยตรงหรือง่ายขึ้นดังนั้นคำสั่ง ในภาษา
    เครื่องจึงต้องสร้างให้ซับซ้อน เพื่อรองรับภาษาระดับสูง
  • การออกแแบโดยใช้ไมโครโค้ด เพื่อให้ฟังก์ชันในระดับสูงของซอร์ฟแวร์มาเป็นไมโครโค้ด หรือจากไมโครโค้ด  
     มาเป็นÎาร์ดแวร์ได้โดยตรง เช่นการมีแมตโคโปรเซสเซอร์  ที่ทำฟังก์ชันเทียบเท่ากับ  โปรแกรมย่อยของภาษา
     ระดับสูงเช่น การหาค่ลอการิธึมตรีโกณมิติเป็นต้น การสร้างไมโครโค้ดเข้าสู่Îาร์ดแวร์     จึงทำให้กลไกการ 
    ทำงานสลับซับซ้อนมากขึ้น
  • การมีเครื่องมือ CAD ช่วยออกแบบคอมพิวเตอร จึงทำให้ผู้ออกแบบสามารถออกแบบคอมพิวเตอร์ได้ซับซ้อนยิ่งขึ้น และให้มีลักษณะตามวัตถุประสงค์เฉพาะได้ CAD จึงมีผลทำให้สามารถออกแบบชิป  หรือโครงสร้างสถาปัตยกรรมที่ซับซ้อนได้
  • จากแนวความคิดที่พยายามทำให้คอมพิวเตอร์ทำงานได้เร็วขึ้น โดยพยายามคิดหาสถาปัตยกรรมคอมพิวเตอร์ที่เหมาะสม ในราวปี พ.ศ. 1972 จอร์พ คอด (Cocke) แห่ง ไอบีเอ็ม ได้เฝ้าสังเกตการทำงานของเครื่องคอมพิวเตอร์ของเครื่องไอบีเอ็ม 360   พบว่ามีคำสั่งที่ยุ่งยากและต้องใช้เวลาทำงานแต่ละคำสั่งหลายลูก   สัญญาณนาฬิกา แต่ละคำสั่งก็สั้น ยาวต่างกัน เขามีความคิดว่าเป็นไปได้หรือไม่ที่จะทำให้คำสั่งของคอมพิวเตอร์ไม่ต้องวิ่งในระดับไมโครโค้ดที่ต้องใช้สัญญาณ  นาฬิกา
    หลายลูก แต่ทำให้เสร็จในสัญญาณนาฬิกาลูกเดียว ผลของความคิดนี้จึงเกิดการรวมกลุ่มวิจัยระบบ 801  ขึ้นโดยอาศัย
    พื้นฐานของแนวความคิดดังนี้

  • หนึ่งคำสั่งใช้เวลาหนึ่งลูกของสัญญาณ ทีมงานต้องการหาโครงสร้างของÎาร์ดแวร์ ที่ทำให้การทำงานของคอมพิวเตอร์  ทำงานแต่ละคำสั่งได้เสร็จในเวลาหนึ่งลูกของสัญญาณ นั่นคือถ้าเป็น 10 Mhz ก็ทำได้ 10 ล้านคำสั่งในเวลา 1 วินาที  ด้วยความคิดนี้ก็ต้องทำคำสั่งให้ง่ายขึ้น ไม่ยุ่งยากซับซ้อน
  • โครงสร้างหน่วยความจำแบบลำดับ       เพื่อให้ซีพียูไม่เสียเวลาในการอ่านข้อมูลในหน่วยความจำ หรือต้องรอเวลา    ดังนั้นโครงสร้างหน่วยความจำต้องมีลำดับคือ สามารถเข้าถึงได้ทันทีและรวดเร็ว   แนวความคิดนี้เรื่องหน่วยความจำแบบ  แคชจึงเกิดขึ้น
  • คอมไพเลอร์เป็นสิ่งที่นักโปรแกรมต้องพึ่ง เมื่อชุดคำสั่งมีเพียงพื้นฐานการเขียนโปรแกรมจึงต้องอาศัยคอมไพเลอร์ที่ดี ผู้เขียนโปรแกรมจึงเขียนโปรแกรมระดับสูงแล่วให้คอมไพเลอร์แปลงไปเป็นคำสั่งระดับภาษาเครื่องให้
  • ในราวปี ค.ศ. 1975 มหาวิทยาลัยแคลิฟอเนีย ที่เบร์กเล่ย์ ก็สร้างโครงงานพัฒนาคอมพิวเตอร์ โดยใช้ชื่อโครงการว่า RISC โครงงานนี้   สร้างเพื่อให้นักเรียนที่เรียนในระดับบัณฑิตศึกษา    ได้ทำการวิทยานิพนธ์เกี่ยวกับโครงสร้าง
    สถาปัตยกรรมของคอมพิวเตอร์เหล่านี้    เพื่อทำให้ประสิทธิภาพดีขึ้น ต่อมาได้เพิ่มโครงงาน  SOAR และใช้ CAD ช่วยในการออกแบบและสร้างชิป   RISC I เป็นซีพียูที่มีชุดคำสั่งที่ทำงานด้วยเวลาสั้น ๆ    ดังนั้นการประมวลผลข้อมูล
    จะต้องทำกับรีจิสเตอร์   จะมีคำสั่งที่เข้าถึงหน่วยความจำเพียงการโหลดและสตอร์เท่านั้น    การทำงานของคำสั่งส่วนใหญ่
    เสร็จในหนึ่งไซเกิล คำสั่งที่ใช้มี 31 คำสั่ง   ซึ่งสามารถบรรจุเป็นรหัสเพียงขนาด 32 บิต   การถอดรหัสคำสั่งสามารถทำ
    ได้ทันทีด้วยรูปแบบที่แน่นอน ลักษณะพิเศษของ RISC I คือ มีรีจิสเตอร์ภายในมาก โดยมีรัจิสเตอร์มากกว่าร้อยตัว รีจิสเตอร์เหล่านั้จัดเรียงตัวกันเป็นกลุ่มและทับซ้อนกัน เพื่อให้มีการเรียกข้อมูลมาใช้หรือส่งผ่านข้อมูลถึงกันได้ โดยไม่เสีย 
    เวลาไปรับจากหน่วยความจำ RISC I จึงเป็นซีพียูที่ลดการติดต่อระหว่างซีพียูกับหน่วยความจำ จากรายงานของ RISC I และ RISC II กล่าวว่าความเร็วในการทำงานของ RISC เพิ่มขึ้น 2 ถึง 4 เท่าเมื่อเทียบกับการทำงานแบบ   CISC เช่น VAX หรือ 68000

             ไม่นานนักหลังจากที่ RISC I ได้รับการพัฒนาขึ้นที่มหาวิทยาลัยสแตนฟอร์ด ก็มีการพัฒนาซีพียูที่ใช้สถาปัตยกรรม
    แบบ RISC เช่นกัน แต่ให้ชื่อว่า   MIPS (Microprocessor without Interloged Pipe State)    ซึ่งเป็นซีพียูที่เน้นในเรื่อง
    การทำงานที่รวดเร็วเช่นกัน เพื่อให้การทำงานได้ตามวัตถุประสงค์ โครงสร้างการทำงานภายใน  จึงต้องใช้หลักการแบบขนาน ซีพียู RISC I มีลักษณะการวางรีจิสเตอร์สนับสนุนขบวนการทำงานภายใน 3 กระบวนความ โครงสร้างของ RISC ทั่วไป 
    ก็ต้องทำเช่นว่านี้ โดยให้การทำงานมีลักษณะตามปรัชญาของ RISC ดังนี้

  • ทำงานได้ในไซเกิลเดียวต่อคำสั่ง ความจริงแล้วการทำงานหนึ่งคำสั่งต้องใช้เวลามากกว่าหนึ่งไซเกิล   แต่ที่ทำได้เพราะ 
    ทำให้คำสั่งเหล่านั้นมีลักษณะเป็นไปป์และขนานกัน   จึงทำให้เวลาโดยรวมเมื่อเฉลี่ยออกมาแล้วได้คำสั่งละไซเกิลเดียว
  • ออกแบบโหลด/สตอร์ เพื่อลดการทำงานที่ล่าช้า  คำสั่งเหล่านี้จะต้องแน่นอนและทำงานได้ในลักษณะ  ขนานตามกระบวน
     การที่กำหนด
  • ใช้การควบคุมด้วยÎาร์ดแวร โดยอาศัยวงจรอิเล็กทรอนิคส์ที่ทำให้การทำงานเป็นไปในลักษณะที่ทำคำสั่งได้ในไซเกิลเดียว   โดยไม่ต้องใช้ไมโครโค้ด
  • มีจำนวนคำสั่งน้อย และการอ้างแอดเดรสจำกัด เพื่อให้โครงสร้างตายตัวในเรื่องไซเกิลการทำงานจึงต้องลดจำนวนคำสั่งลง
    ให้เหลือเท่าที่จำเป็น เพื่อให้Îาร์ดแวร์ควบคุมได้
  • ฟอร์แมตคำสั่งง่าย เพื่อการแปลความหมายและกระทำความด้วยÎาร์ดแวร์ได้ รูปแบบคำสั่งจึงต้องง่าย
  • ต้องใช้เวลาคอมไพล์ภาษาระะดับสูงมาก เพื่อเปลี่ยนแปลงภาษาระะดับสูงมาเป็นระดับต่ำต้องใช้คอมไพเลอร์ที่แปลงมาเป็น
    รหัสภาษาเครื่องได้ โดยที่คำสั่งห่างไกลทางความหมายจากภาษาระดับสูงมาก ดังนั้นจึงต้องเสียเวลาในการคอมไพล์นานกว่า
  • การที่ RISC ทำงานได้เร็วกว่าเพราะ

             การวางโครงสร้างการทำงานได้กำหนดส่วนของการทำงานไว้ชัดเจนและเป็นแบบขนาน เช่น MIPS โมเดล R2000 ได้วาง  โครงสร้างคำสั่งมีการทำงาน 5 ขั้นตอน ดังนั้นจึงวางโครงสร้างการทำงานแบบขนานไว้ 5 ระดับ โดยแบ่งแยกส่วน
    ของการทำงานแต่ละคำสั่งเป็น

    IF การเฟตซ์คำสั่ง (Instruction Fettch) คือจังหวะที่เฟตซ์คำสั่งจากหน่วยความจำมาตีความหมาย

    RD อ่านโอเปอร์แรนด์จากรีจิสเตอร์ในซีพียู

    ALU การคำนวนในหน่วย ALU ตามรหัสของคำสั่งนั้น ๆ

    MEM การติดต่อกับหน่วยความจำ

    WB การเขียนข้อมูลผลลัพธ์ลงในรีจิสเตอร์

             การใช้วิธีการของคำสั่งในการทำงานแบบขนานนี้ เป็นผลทำให้สามารถทำงานได้เสร็จในหนึ่งไซเกิล ทั้ง ๆ ที่แท้จริง
    แล้วต้องใช้ถึง 5 ไซเกิล แต่ทุกขณะจะมีส่วนของซีพียูทำงานขนานกันทั้ง 5 ส่วนนี้อยู่ ขณะที่เฟตซ์คำสั่งหนึ่งอยู่ภายในก็มีการทำ RD, ALU, MEM, และ WB ของแต่ละคำสั่งที่ผ่านมา ดังนั้นการเฟตซ์จึงเกิดได้ทุกไซเกิล

    กลไกการทำงานในลักษณะนี้ใช้กับซ๊พียู RISC ทุกตัว ตั้งแต่จุดเริ่มต้นของการพัฒนาจนถึงปัจจุบัน โครงสร้างของคำสั่งจึงอยู่ที่ ALU ว่าจะรับข้อมูลได้กว้างเพียงไร เช่น ถ้ารับข้อมูลได้ 64 บิต และให้ ALU เป็นหน่วยคำนวนทางคณิตศาสตร์แบบตัวเลข
    โฟลตติ้งพอยต์ ก็ยิ่งทำใด้เร็วยิ่งขึ้น เช่น ซีพียู I860 ของอินเทลก็ใช้หลักการของ RISC เช่นกัน

               เพื่อให้เห็นโครงสร้างชุดคำสั่งที่ใช้ใน RISC ในที่นี้จะขอยกตัวอย่างชุดคำสั่งของ MIPS กระทำกับรีจิสเตอร์ 3 ตัว คือ scr1,scr2 และ dest กล่าวคือ  scr  เป็นรีจิสเตอร์ตัวทำงาน dest เป็นรีจิสเตอร์ผลลัพธ์ คำสั่งส่วนใหญ่ เป็นคำสั่งพื้นฐาน 
    ที่เข้าใจได้ง่าย การออกแบบคำสั่งเหล่านี้มุ่งไปที่การใช้รีจิสเตอร์ภายใน   ดังนั้นรีจิสเตอร์ภายในมักมีขนาดกว้าง ในที่นี้ใช้ขนาด 32 บิต ( อินเทล i860 ใช้ชนาด 64บิต ) หากจะพิจารณาคำสั่งที่แสดงจะพบว่าคำสั่งเพียงเท่านี้   ก็เพียงพอต่อการใช้งาน  
    หรือการเขียนโปรแกรมให้ทำงานในสิ่งต่าง ๆ ตามต้องการได้แล้ว การออกแบบ RISCจึงเป็นสิ่งที่ใช้สถาปัตยกรรมที่แตกต่าง
    จาก CISC โดยสิ้นเชิง

    ความสามารถอยู่ที่การจัดการหน่วยความจำ เมื่อซีพียู RISC ทำงานด้วยคำสั่งที่ใช้กับรีจิสเตอร์เป็นหลักมีเพียง RD กับ ST เท่านั้น  ที่ใช้จากหน่วยความจำ LD กับ ST   จึงต้องเกี่ยวกับหน่วยความจำที่ซีพียูต้องติดต่อด้วย  อย่างรวดเร็ว    การที่
    ซีพียูต้องติดต่ออย่างรวดเร็วนี้ จึงต้องอาศัยหน่วยความจำแคช ดังนั้นประสิทธิภาพของ RISC จึงขึ้นอยู่กับการจัดโครงสร้าง
    ของหน่วยความจำด้วย โดยที่หน่วยความจำแคชจะต้องมีบทบาทที่ทำให้ซีพียูติดต่อแล้วพบข้อมูลเป็นส่วนใหญ่

    โครงสร้างของแคชที่ใช้กับ RISC เป็นแบบ direct maped cache                ใช้การติดต่อกับหน่วยความจำนี้จะทำให้หน่วยความจำต่อกับแคชในลักษณะที่มีการกำหนดตำแหน่งแน่นอน แคชแบบนี้จำทำให้การเข้าถึงทำได้เร็วและต้องการพื้นที่น้อยกว่า

    โครงสร้างการอินเตอร์รัปต์ยังคงใช้เหมือนเดิม ในซีพียูแบบ CISC ต้องอาศัยการทำงานในลักษณะโปรแกรมหลายระดับ โดยการใช้สัญญาณอินเตอร์รัปต์เข้ามาเป็นตัวสวิตซ์การทำงานในแต่ละส่วนของโปรแกรม

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

    มีคำแนะนำโปรดส่งมาที่  : Maintainance Group


       Permporn Hattasing 37054319

       Wittayakorn Chamgan 37054970

        Sanicha Kumkean 37056835