ระบบบัส

 ระบบบัส



            ปัจจุบันนี้ ระบบคอมพิวเตอร์และสถาปัตยกรรมคอมพิวเตอร์ได้พัฒนาไปอย่างรวดเร็วและเป็นการพัฒนาไปในทางที่สวนกระแสกันด้วย กล่าวคือ คอมพิวเตอร์ได้รับการพัฒนาให้มีความสามารถมากขึ้น ทำงานได้เร็วขึ้นกว่าสมัยแรกๆมาก แต่ราคากลับถูกลงมากเช่นกัน
         
            การทำงานที่ดีขึ้นและเร็วขึ้นของคอมพิวเตอร์มาจากหลายสาเหตุด้วยกัน และส่วนหนึ่งที่ทำให้การสื่อสารภายในเครื่องคอมพิวเตอร์ทำงานได้เร็วขึ้น ก็คือเส้นทางในการลำเลียงข้อมูลไปยังส่วนต่างๆ ระหว่างหน่วยประมวลผลกลาง (CPU) กับอุปกรณ์รอบข้างต่างๆ ไม่ว่าจะเป็นหน่วยความจำหลัก (Main memory) หรือ อุปกรณ์ต่อพ่วงอื่นๆที่เชื่อมโยงกับคอมพิวเตอร์โดยตรง (I/O) ซึ่งเส้นทางดังกล่าว ก็คือ ระบบบัส (System Bus) หรือที่เรามักเรียกกันสั้นๆ ว่า “บัส” นั่นเอง


ระบบบัส (System Bus)

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

         – บัสรองรับข้อมูล (ADDRESS BUS คือบัสที่หน่วยประมวลผลกลาง (CPU) เลือกว่าจะส่งข้อมูลหรือรับข้อมูลจากอุปกรณ์ไหนไปที่ใด โดยจะต้องส่งสัญญาณเลือกออกมาทาง ADDRESS BUS

         – บัสควบคุม (CONTROL BUS) เป็นบัสที่รับสัญญาณการควบคุมจากหน่วยประมวลผลกลาง (CPU) เพื่อบังคับว่าจะอ่านข้อมูลเข้ามา หรือจะส่งข้อมูลออกไป จากหน่วยประมวลผลกลาง (CPU) โดยระบบภายนอกจะตอบรับต่อสัญญาณควบคุมนั้น


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




             - ขนาดของบัส สามารถวัดได้เป็นความกว้างบัส ซึ่งเป็นตัวระบุจำนวนบิทที่คอมพิวเตอร์สามารถส่งได้ในแต่ละครั้ง เช่น บัสที่มีขนาด 32 บิท (32-bit bus) จะสามารถส่งข้อมูลได้ 32 บิท หรือ 4 ไบท์ในแต่ละครั้ง ถ้าเราต้องการส่งข้อมูล 8 บิท โดยใช้บัสขนาดนี้ ก็จะต้องแบ่งส่ง 2 ครั้งด้วยกัน แต่ถ้าเราใช้บัสที่มีขนาด 64 บิท ก็จะสามารถส่งข้อมูลได้ทั้งหมดภายในครั้งเดียว
             - บัสจะมีสัญญาณนาฬิกาเช่นเดียวกับหน่วยประมวลผล ซึ่งผู้ผลิตกำหนดให้ีสัญญาณนาฬิกามีความถี่เป็นเฮิร์ต (hertz หรือ Hz) คำว่าเมกะเฮิร์ต (MHz) คือสัญญาณนาฬิกา (ติ๊ก) 1 ล้านครั้งใน 1 วินาที ในปัจจุบันส่วนใหญ่ หน่วยประมวลจะมีสัญญาณนาฬิกา ประมาณ 400, 533, 800 MHz ยิ่งค่าสัญญาณนาฬิกาสูงเท่าไหร่ ความเร็วในการส่งข็อมูลก็มากเท่านั้น

         คอมพิวเตอร์มีบัสอยู่ 2 ชนิดคือ บัสระบบ (system bus) และ บัสเสริม (expansion bus)

             - บัสระบบ (system bus) เป็นส่วนหนึ่งเมนบอร์ด หรือแผงวงจรหลัก บัสระบบทำหน้าที่เป็นเส้นทางต่อระหว่างหน่วยประมวลผลกับหน่วยความจำ ส่วนบัสเสริมเป็นบัสที่ทำให้หน่วยประมวลสามารถติดต่อสื่อสารกับอุปกรณ์ต่อพ่วงอื่นๆ ได้ ส่วนใหญ่ที่มีการอ้างถึง บัส เฉยๆ จะหมายถึง บัสระบบ
             - บัสเสริม (expansion bus) จะทำให้อุปกรณ์ภายนอกระบบสามารถติดต่อกับหน่วยประมวลผลได้ อุปกรณ์ต่อพ่วงจะต่อเข้ากับพอร์ต ซึ่งพอร์ตจะต่ออยู่บน ช่องเสริม (expansion slot) ซึ่งช่องเสริมนี้จะต่อกับ บัสเสริมเพื่อส่งข้อมูลไปยังหน่วยประมวลผล รูปข้างล่างนี้เป็นรูปของการส่งข้อมูลระหว่างหน่วยประมวลผล หน่วยความจำ อุปกรณ์ต่อพ่วงต่างๆ ผ่านทางบัสระบบ และบัสเสริม บัสเสริมบนเมนบอร์ดมีหลายชนิด แต่ละชนิดบ่งบอกถึงชนิดของการ์ดที่ต่างๆ ที่ต่ออย่บนคอมพิวเตอร์ ได้แก่ บัส ISA, บัส PCI, บัส AGP, บัส USB และบัสไฟร์ไวร์
             - บัสท้องถิ่น (local bus) เป็นบัสเสริมที่มีความเร็วสูง จะต่อกับอุปกรณ์ที่มีการทำงานเร็วๆ เช่น ฮาร์ดดิสก์ บัสท้องถิ่นที่ควรรู้จักได้แก่ VESA local bus (Video Electronics Standards Association local bus) ซึ่งส่วนใหญ่ใช้กับการ์ดวิดีโอเท่านั้น และบัส PCI เป็นบัสที่ใช้กับอุปกรณ์ต่างๆ ได้หลากหลายกว่า VESA lacal bus มาก และมีความเร็วในการส่งข้อมูลเป็น 4 เท่าของบัส ISA

คุณลักษณะของบัส
            อุปกรณ์อินพุต/เอาท์พุตแต่ละอย่างมีการเชื่อมต่อเข้ากับบัส โดยผ่านตัวควบคุมที่เรียกว่า คอนโทรลเลอร์ และมีชื่อแตกต่างกัน บัสแต่ละแบบจะมีคุณสมบัติไม่เหมือนกัน ขึ้นอยู่กับพารามิเตอร์หลักๆที่เป็นพื้นฐาน ดังต่อไปนี้
            1. ชนิดของบัส
            สายไฟที่ใช้ในบัส มีสองแบบ คือแบบที่สายบัสแต่ละเส้นทำหน้าที่อย่างเดียว ได้แก่พอร์ตที่ใช้งานเฉพาะ อีกแบบหนึ่งเป็นแบบที่สายบัสบางสายสามารถทำหน้าที่ได้มากกว่าหนึ่งอย่าง ส่วน Dedicated นั่นแต่ละบัสจะติดต่อกับกลุ่มของโมดูลไอโอทั้งหมด ข้อดีสำหรับบัสนี้มีรับข้อมูลได้ปริมาณสูง ข้อเสียคือเป็นการเพิ่มขนาดและราคาของระบบ
            2. ทฤษฎีการควบคุมการทำงาน
            การออกแบบบัสมีทฤษฎีการควบคุมการทำงานของบัส 2 แบบ คือ แบบศูนย์รวมการควบคุมการทำงานของบัส 2 แบบ คือ ในแบบรวมศูนย์การควบคุมนั้น ส่วนควบคุมอาจเป็นโมดูลที่แยกออกมาหรือส่วนหนึ่งขอซีพียู  ส่วนแบบการกระจายควบคุมจะไม่มีตัวควบคุมเป็นศูนย์กลาง แต่ละโมดูลจะประกอบด้วยตัวควบคุมของภายในโมดูลเอง
            3. เวลา
            การเกิดหลายๆเหตุการณ์ขึ้นพร้อมๆกันบนบัส โดยใช้สัญญาณนาฬิกา เป็นตัวให้จังหวะการทำงานของเหตุการณ์ต่างๆ  เหตุการณ์ต่างๆก็จะดำเนินไปพร้อมกัน เรียกการทำงานแบบนี้ว่า การทำงานแบบเข้าจังหวะ  ยังมีการทำงานอีกแบบหนึ่งคือ การทำงานแบบไม่เข้าจังหวะ คือการเกิดเหตุการณ์หนึ่งบนบัส จะขึ้นอยู่กับเหตุการณ์ที่เกิดขึ้นก่อนหน้านั้น การทำงานแบบเข้าจังหวะสามารถที่จะจัดการและตรวจสอบได้ง่าย อย่างไรก็ตามยังมีความยืดหยุ่นน้อยกว่าการทำงานแบบไม่เข้าจังหวะ เนื่องจากว่าอุปกรณ์ทั้งหมดบนบัสจะต้องทำงานร่วมกันไปพร้อมกับสัญญาณนาฬิกาของบัส ส่วนในการทำงานแบบไม่เข้าจังหวะ จะมีรูปแบบเป็นการรวมฮาร์ดแวร์ที่ทำงานช้าและเร็วเข้าไปอยู่ในบัสเดียวกันได้ รวมทั้งการนำเทคโนโลยีทั้งเก่าและใหม่มาร่วมกันใช้งานบนบัสได้
            4. ความกว้างของบัส
            คล้ายกับความกว้างของถนน ถ้าบัสกว้าง ข้อมูลก็วิ่งได้จำนวนมากในหนึ่งครั้ง สำหรับหน่วยวัดความกว้างบัสนั้นวัดในหน่วย “บิต” ซึ่ง 8 บิต เท่ากับ 1 ไบต์ หรือ 1 ตัวอักษร
            5. ชนิดของการส่งถ่ายข้อมูล
            ในการออกแบบบัสสามารถให้มีการจัดการกับข้อมูลหรือการส่งถ่ายข้อมูลได้หลายวิธี ได้แก่
            Write คือการเก็บการบันทึก
            Read คือการอ่านข้อมูลลงสู่บัส
            Read-modify-write คือ read ก่อน ตามด้วย write ลงที่ตำแหน่งเดียวกันกับ read ทันที
            Read-after-write คือการ write ตาทันทีที่การ read ผ่านไปในตำแหน่งเดียวกัน
            Block คือการกระทำกับกลุ่มของข้อมูล


ที่มาhttp://www.vcharkarn.com/vblog/40712
ที่มา : http://www3.ipst.ac.th/research/assets/web/mahidol/computer(10)/system/bus.htm

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

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