วันอาทิตย์ที่ 26 กรกฎาคม พ.ศ. 2558

ระบบ pci BUS

                                                        ระบบบัส (BUS System)




  ประวัติความเป็นมาและความหมาย
ระบบ PCI  เป็น Local Bus อีกแบบหนึ่ง ที่พัฒนาขึ้นโดย Intel ในเดือนกรกฎาคม ปี 1992 โดยแยกการควบคุมของระบบบัส กับ CPU ออกจากกัน และส่งข้อมูลผ่านทางวงจรเชื่อม ซึ่ง จะมี Chipset ที่คอยควบคุมการทำงานของระบบบัสต่างหาก โดยที่ Chipset ควบคุมนี้จะเป็นลักษณะ Processor Independent คือ ไม่ขึ้นกับตัว Processor( หรือ CPU ) แรกเริ่มที่เปิดตัวนั้น PCI เป็นระบบบัสแบบ 32 Bitที่ทำงานด้วยความเร็ว 33 MHz ซึ่งสามารถให้อัตราเร็วในการส่งผ่านข้อมูลถึง 133 M/s
ต่อมา เมื่อ
ระบบ PCI หรือ Peripheral Component Interconnect เป็น Local Bus อีกแบบหนึ่ง ที่พัฒนาขึ้นโดย Intel ในเดือนกรกฎาคม ปี 1992 โดยแยกการควบคุมของระบบบัส กับ CPU ออกจากกัน และส่งข้อมูลผ่านทางวงจรเชื่อม ซึ่ง จะมี Chipset ที่คอยควบคุมการทำงานของระบบบัสต่างหาก โดยที่ Chipset ควบคุมนี้จะเป็นลักษณะ Processor Independent คือ ไม่ขึ้นกับตัว Processor( หรือ CPU ) แรกเริ่มที่เปิดตัวนั้น PCI เป็นระบบบัสแบบ 32 Bitที่ทำงานด้วยความเร็ว 33 MHz ซึ่งสามารถให้อัตราเร็วในการส่งผ่านข้อมูลถึง 133 M/s
ต่อมา เมื่อ Intel เปิดตัว CPU Pentium ซึ่งเป็น CPU ขนาด 64 Bit ทาง Intel ได้กำหนดมาตรฐานของ PCI ใหม่ เป็น PCI 2.0 ในเดือนพฤษภาคม ปี 1993 ซึ่ง PCI 2.0 นี้มีความกว้างของเส้นทางข้อมูล 64 Bit ซึ่งหากใช้งานกับ Card 64 Bit จะสามารถให้อัตราเร็วในการส่งผ่านที่สูงสุด 266 M/s




เครื่องไมโครคอมพิวเตอร์จะมีระบบบัสหลายแบบ ขึ้นอยู่กับการใช้ซีพียูที่มีสถาปัตยกรรมแบบ 8,16,32 และ 64 บิต เพราะการส่งข้อมูลบนบัสอาจจะเป็นแบบ 8,16,32 หรือ 64 บิตก็ได้ ขึ้นอยู่กับสถาปัตยกรรมของซีพียูเช่นกัน ถ้าซีพียูนั้นมีสถาปัตยกรรมแบบ 16 บิต การส่งผ ่านข้อมูลสามารถจะส่งได้ทั้งแบบ 8 หรือ 16 บิต ถ้าเป็นซีพียูขนาด 32 บิต การส่งผ่านข้อมูลสามารถส่งผ่านได้ทั้ง 8,16 หรือ 32 บิตได้ การส่งผ่านข้อมูลจะเป็นไปอย่างรวดเร็ว ด้วยเหตุนี้ จึงต้องมีการออกแบบระบบบัสให้เหมาะสมกับสถาปัตยกรรมของซีพียู เนื่องจากบัสเป็น ทางผ่านของข้อมูลและโปรแกรมในการทำงานระหว่างอุปกรณ์ต่าง ๆ ในเครื่องคอมพิวเตอร์ ระหว่าง ซีพียู หน่วยความจำ แคช จอภาพ ดิสก์ ฯลฯ ระบบบัสของไมโครคอมพิวเตอร์มีอยู่หลายแบบ แต่ละแบบจะมีโครงสร้างที่แตกต่างกันทั้งภายในและภายนอก ทั้งด้านความเร็ว สัญญาณรบกวน และกา รเชื่อมต่อ (Interface) ดังนั้นความเร็วและประสิทธิภาพในการทำงานของบัสจึงมีผลอย่างมากกับความเร็วของเครื่องคอมพิวเตอร์ ระบบบัสที่เหมาะสมจะต้องเร็วพอที่จะยอมให้อุปกรณ์อื่น ๆ รับและส่งข้อมูลผ่านมันได้ด้วยความเร็วเต็มที่ของอุปกรณ์นั้น ๆ เพื่อจะได้ไม่กลายเป็ นตัวถ่วงให้อุปกรณ์อื่น ๆ ต้องรอ อันจะทำให้ความเร็วโดยรวมของทั้งเครื่องลดลง แต่ขณะเดียวกันระบบบัสที่มีความเร็วสูงมาก ๆ ก็เพิ่มความยุ่งยากในการออกแบบ เพราะสัญญาณดิจิตอลที่เป็น 0 และ 1 ในทางไฟฟ้ามีแนวโน้มที่จะอ่อนกำลังหรือถูกรบกวนให้เพี้ยนไปได้ง่ายขึ้นที่ ความถี่สูง และระยะทางที่ยาวหรือวกวนบนเมนบอร์ด และนี่ก็เป็นเหตุผลหนึ่งที่เมนบอร์ดในปัจจุบันใช้ความถี่อยู่เพียง 66 – 133 MHz ในขณะที่ซีพียูอาศัยการเร่งความเร็วของ clock ภายในเป็น 3 – 6 เท่า จากความถี่ภายนอกแทนจนสูงถึงเกือบ 2 GHz แล้วในปัจจุบัน ซึ่งสัง เกตุได้จากในปัจจุบันจะพบเห็นซีพียูที่มีความเร็ว 800 MHz 900 MHz 1000 MHz หรือ 1 GHz โดยซีพียู Pentium 4 มีความเร็วถึง 1.5 GHz คาดว่าภายใน ค.ศ. 2001 จะพบเห็นซีพียูที่มีความเร็วประมาณ 1.8 GHz ดังนั้นการพัฒนาระบบบัสจึงมีการพัฒนาการควบคู่กับซีพียูไปด้วยเพื่ อให้ทำงานได้เต็มประสิทธิภาพ และระบบบัสบางระบบก็อาจจะเลิกใช้ในอนาคตอันใกล้นี้เพราะมีความเร็วในการส่งข้อมูลต่ำและผู้ผลิตเลิกผลิต ขณะเดียวกันก็หันไปพัฒนาระบบบัสใหม่มากยิ่งขึ้นต่อไป
      บัส เป็นเส้นทางเดินไฟฟ้าระหว่างอุปกรณ์หลาย ๆ อุปกรณ์ บัสที่ธรรมดที่สุดคือ บัสของระบบ (System Bus) ซึ่งมีอยู่ในไมโครคอมพิวเตอร์ทุก ๆ ตัว ซึ่งประกอบไปด้วยลายลวดทองแดงประมาณ 50 ถึง 100 เส้น แล้วแต่ว่าจะเป็นชนิดของบัสอะไร
โครงสร้างของบัสในเครื่องคอมพิวเตอร์ในปัจจุบัน เป็นผลทั้งจากพัฒนาการทางเทคโนโลยีและจากมาตรฐานดั้งเดิมที่ใช้กันมาในเครื่องคอมพิวเตอร์ยุคแรก ๆ จึงขออธิบายตั้งแต่เริ่มแรกจนถึงปัจจุบันได้
ดังนี้


PCI BUS
     
PCI BUS ระบบ PCI  ก็เป็น LOCAL BUS อีกแบบหนึ่งที่พัฒนาขึ้นโดย INTEL โดยที่แยกการควบคุมของระบบบัส กับ CPU ออกจากกัน และส่งข้อมูลผ่านกันทางวงจรเชื่อมซึ่งจะมี CHIPSET ที่คอยควบคุมการทำงานของระบบบัสต่างหาก โดยที่ CHIPSET ที่ควบคุมนี้จะเป็นลักษณะ PROCESSOR  คือไม่ขึ้นกับตัว PROCESSOR ต่อมาเมื่อ INTEL เปิดตัว CPU ใน GENERATION ที่ 5 ของตน INTEL PENTIUM ซึ่งเป็น CPU ขนาด 64 BIT ทาง INTEL ได้ทำการกำหนดมาตรฐาน ของ PCI เสียใหม่เป็น PCI 2.0 ซึ่ง PCI 2.0 นี้ก็จะมีความกว้างของเส้นทางข้อมูลถึง 64 BIT ซึ่งหากใช้กับ CARD 64 BIT แล้วก็จะสามารถให้อัตราเร็วในการส่งผ่านที่สูงสุดถึง 266 M/s จุดเด่นของ PCI ที่เห็นได้ชัดนอกเหนือไปจากที่กล่าวข้างต้นก็ยังมีเรื่องของ BUS MASTERING ซึ่ง PCI นั้นก็สามารถทำได้เช่นกันกับ EISA และ MCA แล้ว CHIPSET ที่ใช้เป็นตัวควบคุมการทำงาน ก็ยังสนับสนุนระบบ ISA และ EISA อีกด้วย ซึ่งก็ทำให้สามารถผลิต MAINBOARD ที่มีทั้ง SLOT ISA, EISA และ PCI รวมกันได้ นอกจากนั้นยังสนับสนุนระบบ PLUG-AND-PLAY อีกด้วย [[59129]] ปัญหาเกี่ยวกับ PCI Bus ปกติ PCI Bus จะมีอัตราความเร็วที่ไม่เท่ากับระบบบัส (System Bus) นั่นคือ บน System Board ที่มีความเร็วระบบบัส 60/66 MHz ระบบ PCI Bus ที่ทำงานภายใต้ System Board นี้ จะทำงานที่ 33 MHz (ซึ่งเป็นอัตราความเร็วมาตรฐานของ PCI) สำหรับ System Board ที่มีระบบบัสทำงานที่ 75 และ 83 MHz นั้น ระบบ PCI Bus จะมีอัตราความเร็วอยู่ที่ 37.5 MHz หรือ 41.6 MHz ตามลำดับ ดังนั้น อุปกรณ์ที่ถูกออกแบบให้ทำงานที่ความเร็ว 33 MHz ซึ่งเป็นความเร็วปกติของ PCI Bus อาจเกิดปัญหาในการทำงานได้ โดยเฉพาะ Vide Card SCSI Card หรือ Network Card อย่างไรก็ดี Video Card อาจมีอุณหภูมิสูง มากกว่าปกติ แต่ยังสามารถทำงานได้ AGP ในกลางปี 1996 เมื่อ INTEL ได้ทำการเปิดตัว INTEL PENTIUM II ซึ่งพร้อมกันนั้นก็ได้ทำการเปิดตัวสถาปัตยกรรมที่ช่วยเพิ่มประสิทธิภาพของหน่วยแสดงผลด้วย นั่นก็คือ ที่สนับสนุนการทำงานนี้ด้วย คือ 440LX AGP นั้นจะมีการเชื่อมต่อกับ CHIPSET ของระบบแบบ POINT-TO-POINT ซึ่งจะช่วยให้การส่งผ่านข้อมูลระหว่าง CARD AGP กับ CHIPSET ของระบบได้เร็วขึ้น และยังมีเส้นทางเฉพาะสำหรับติดต่อกับหน่วยความจำหลักของระบบ เพื่อใช้ทำการ RENDER ภาพแบบ 3D ได้อย่างรวดเร็วอีกด้วย จากเดิม CARD แสดงผลแบบ PCI นั้นจะมีปัญหาเรื่องของหน่วยความจำเป็น CARD เพราะเมื่อต้องการใช้งานด้านการ RENDER ภาพ 3 มิติ ที่มีขนาดใหญ่มากๆ ก็จำเป็นต้องกมีการใช้หน่วยความจำบน CARD นั้นมากๆเพื่อรองรับขนาดของพื้นผิว ที่เป็นองค์ประกอบสำคัญของงาน RENDER แน่นอนเมื่อหน่วยความจำมากๆ ราคาก็ยิ่งแพง ดังนั้นทาง INTEL จึงได้ทำการคิดคันสถาปัตยกรรมใหม่เพื่องานด้าน GRAPHICS นี้โดยเฉพาะ AGP จึงได้ถือกำเนิดขึ้นมา AGP นั้นจะมี MODE ในการ RENDER อยู่ 2 แบบ คือ LOCAL TEXTURING และ AGP TEXTURING โดยใช้ LOCAL TEXTURING นั้นจะทำการ COPY หน่วยความจำของระบบไปเก็บไว้ที่เฟรมบัฟเฟอร์ของ CARD จากนั้นจะทำการประมวลผลโดยดึงข้อมูลจากเฟรมบัฟเฟอร์บน CARD นั้นอีกที ซึ่งวิธีการนี้ก็เป็นวิธีที่ใช้บนระบบ PCI ด้วย วิธีการนี้จะเพิ่มขนาดของหน่วยความจำเป็น CARD มาก AGP TEXTURING นั้นเป็นเทคนิคใหม่ที่ช่วยลดขนาดของหน่วยความจำ หรือเฟรมบัฟเฟอร์บน DISPLAY CARD ลงได้มาก เพราะสามารถทการใช้งานหน่วยความจำของระบบให้เป็นเฟรมบัฟเฟอร์ได้เลย โดยไม่ต้องดึงข้อมูลมาพักไว้ที่เฟรมบัฟเฟอร์ของ CARD ก่อน [[59130]] โดยปกติแล้ว AGP จะทำงานที่ความเร็ว 66 MHz ซึ่งแม้ว่าระบบจะใช้ FSB เป็น 100 MHz แต่มันก็ยังคงทำงานที่ความเร็ว 66 MHz ซึ่งใน MODE ปกติของมันก็จะมีความสามารถแทบจะเหมือนกับ PCI แบบ 66 MHz เลยโดยจะมีอัตราการส่งข้อมูลที่สูงถึง 266 M/s และนอกจากนี้ยังสามารถทำงานได้ทั้งขอบขาขึ้นและขอบขาลงของ 66 MHz จึงเท่ากับว่ามันทำงานที่ 133 MHz ซึ่งจะช่วยเพิ่มอัตราการส่งถ่ายข้อมูลขึ้นได้สูงถึง 532 M/s ซึ่งเรียก MODE นี้ว่า MODE 2X และ MODE ปกติว่า MODE 1X สำหรับความเร็วในการส่งถ่ายข้อมูลนั้น ก็ขึ้นกับชนิดของหน่วยความจำหลักด้วย ถ้าหน่วยความจำหลักเป็นชนิดที่เร็วก็จะยิ่งช่วยเพิ่มอัตราเร็วในการส่งถ่ายมากขึ้น ดังนี้ - EDO RAM หรือ SD RAM PC 66 ได้ 528 M/s - SD RAM PC 100 ได้ 800 M/s - DR RAM ได้ 1.4 G/s อีกสาเหตุหนึ่งที่ทำให้ระบบบัสแบบ AGP ทำได้ดีกว่า PCI ก็เพราะเป็น SLOT แบบเอกเทศไม่ต้องไปใช้ BANDWIDTH ร่วมกับใคร
  • PCI BUS
PCI มาจากคำว่า Peripheral Component Interconnection เป็น Local Bus ชนิดหนึ่ง คำว่า Local Bus หมายถึงระบบบัสที่มีเส้นสายสัญญที่เชื่อมต่อกันโดยตรงระหว่างบัสของโปรเซสเซอร์กับ Local Bus ดังนี้อัตราความเร็วรวาททั้งขนาดของบิตข้อมูลจึงเท่ากับโปรเซสเซอร์ อย ่างไรก็ดี PCI Bus ไม่ได้เชื่อมต่อโดยตรงกับบัสของโปรเซสเซอร์เหมือนกันกับ Local Bus ระบบอื่น เช่น VESA Bus แต่เชื่อมต่อผ่านชุดของ PCI Chip Set ซึ่งก็มีข้อดีคือ ไม่ดึงกระแสไฟจากเส้นสัญญาของโปรเซสเซอร์บัส ทำให้สามารถมีจำนวนของ PCI Slot ได้มากกว่า VESA Local Bus ส่วนขนาดของบิตข้อมูลที่ใช้สื่อสารกันระหว่าง PCI I/O การ์ด กับโปรเซสเซอร์จะมีขนาด 32 บิต ซึ่งจะลดปัญหาคอขวดในส่วนนี้ลงได้ แต่ก็ยังพบปัญหาคอขวดอยู่บ้างนั้นคือเรื่องของความเร็วการทำงานที่ 33.3 MHz
อัตราความเร็วในการรับส่งข้อมูลลน PCI BUS เราสามารถคำนวณออกมาได้ดังนี้
33 MHz x 32 Bit = 1,056 Mbit/sec
1,056 Mbit/sec หารด้วย 8 = 132 Mb/sec
หากเป็นระบบ PCI ขนาด 64 บิต เราจะได้ความเร็วเพิ่มขึ้นเป็น 2 เท่า หรือประมาณ 264 MB/sec จึงเหมาะสำหรับงานต่าง ๆ ที่เกี่ยวข้องกับกราฟิกและระบบ Multimedia คุณลักษณะที่สำคัญของ PCI Bus มีดังนี้
  1. มีอัตราความเร็ว 2 แบบ คือ
    (1) มาตรฐาน 2.0 ทำงานที่ความเร็ว 30 – 33 MHz
    (2) มาตรฐาน 2.1 ทำงานที่ความเร็ว 66 MHz
ปัจจุบันเมนบอร์ดทั่วไปใช้มาตรฐาน PCI 2.2 ที่สามารถติดตั้งถึง 5 Slot และสามารถรองรับการทำงานของ PCI การ์ดแบบ Bus Master เช่น SCSI หรือ Lan การ์ด เป็นต้น (Bus Master เป็นระบบส่งเสริมการถ่ายเทข้อมูลความเร็วสูงโดยไม่ใช้ระบบ DMA บนเมนบอร์ด ซึ่งก็หมายค วามว่าภายใต้การสื่อสารข้อมูลด้วยระบบ Bus Master นี้ โปรเซสเซอร์ยังสามารถทำงานติดต่อกับโลกภายนอก เช่น แคช ได้)
  1. สามารถถ่ายเทข้อมูลในรูปแบบของ Burst Mode ที่ไม่มีรูปแบบที่จำกัดตายตัว คำว่า Burst Mode หมายถึง รูปแบบการขนส่งข้อมูล ลักษณะเป็นกลุ่มที่พรั่งพรูออกมาอย่างต่อเนื่องจำนวนหนึ่ง คำว่าไม่มีรูปแบบ จำกัดตายตัวหมายถึง ขนาดของข้อมูลที่ส่งถ่ายกันมีขนาดไม่แน่นอน และการถ่ายเทข้อมูลแบบนี้สามารถเกิดขึ้นได้อย่างต่อเนื่องทุกรอบของจังหวะสัญญาณนาฬิกา (Clock Cycle)
  2. PCI Bus มีอยู่ 2 แบบ คือ แบบที่ใช้แรงดันไฟ +3.3v(32 Bit PC) และ +5v สำหรับเครื่องคอมพิวเตอร์ที่ใช้ CPU แบบ RISC เช่น Alpha
  3. ใช้เทคนิคทำงานแบบ Multiplex สำหรับ Address หรือ Data เพื่อลดขนาดจำนวนของขาสัญญาณบน PCI Slot
  4. เป็นระบบ Plug and Play หมายความว่ามีระบบการจัดตั้งค่า Configuration ในทางฮาร์ดแวร์โดยอัตโนมัติทำให้อุปกรณ์ PCI ไม่จำเป็นต้องมี Jumper หรือ สวิตช์เล็ก ๆ เพื่อตั้งค่าหลบหลีกการแย่งใช้อินเตอร์รัปต์ระหว่างกัน
  5. มีระบบ Write Posting และ Read Prefetching
    (1) ระบบ Write Posting หมายถึง การเตรียมเขียนข้อมูลคำสั่งไว้ล่วงหน้า รวมทั้งการเตรียมการอ่านข้อมูลคำสั่งล่วงหน้า เป็นการประหยัดเวลาที่ใช้เพื่อเตรียมการอ่าน/เขียนคำสั่งต่อไป
    (2) ระบบ Read Prefetching
  6. สามารถจัดตั้ง Configuration ได้ในทางซอฟต์แวร์ซึ่งก็คือ การจัดตั้งแผ่น BIOS Setup
  7. เป็นระบบบัส ที่ไม่ขึ้นกับโปรเซสเซอร์
  8. สามารถทำงานแบบ Concurrent BUS PCI ได้ หมายถึง PCI Card ที่ติดตั้งตาม Slot ต่าง ๆ สามารถทำงานพร้อมกันในเวลาเดียวกันได้ ซึ่งผิดกับระบบบัสแบบเก่า ๆ มีเพียงการ์ดหนึ่งเดียว ทำงานได้ในขณะนั้น ด้วยเหตุนี้ ระบบ PCI BUS จึงเหมาะสำหรับงานประเภท Multimedia โดย เฉพาะ Video Confrerence
  9. ระบบ PCI BUS ประกอบด้วย Chip Set ที่ทำหน้าที่เป็นตัวสะพาน (Bridge) เชื่อมระห่างโปรเซสเซอร์กับ PCI Expansion Slot ซึ่ง ชิปเซตนี้ประกอบด้วยชิปเซต 2 ตัว ได้แก่ (1) North Bridge ซึ่งทำหน้าที่เป็นตัวเชื่อมต่อและประสานงานการสื่อสารระหว่างโปรเซสเซอร์กับหน่วยความจำต่าง ๆ รวมทั้งเป็นสะพานเชื่อมต่อกันกับชิปเซตอีกตัวหนึ่ง (2) South Bridge เป็นตัวที่ดูแลเกี่ยวกับ I/O ต่าง ๆ
    1. อุปกรณ์ที่ถูกออกแบบมาให้ใช้กับ PCI BUS จะใช้เวลาการเข้าถึง Access ต่ำ (Low Latency) ลดเวลาจากการที่อุปกรณ์ PCI ต้องรอคอยเพื่อให้ได้มาของสิทธิ์ที่จะเข้าสู่การทำงานในระบบ หลังจากที่ส่งสัญญาณที่เป็นคำขอออกไปเรียบร้อยแล้ว


มาตรฐานต่าง ๆ ของของ PCI ในปัจจุบัน
- PCI 2.0 ทำงานที่ความเร็ว 30-33MHz
- PCI 2.1 สนับสนุนการทำงานที่ความเร็ว 66MHz
            - PCI 2.2 สนับสนุน slot ได้สูงถึง 5 slot และยังรองรับ PCI card แบบ Bus Master

รูปแบบของระบบ PCI Bus
- PCI Bus มีอยู่ 2 แบบ คือแบบ 32 บิต และ 64 บิต
มีการแบบใช้แรงดันไฟ +3.3v และ +5v สำหรับระบบบนเครื่อง PC ทั่วไปที่เป็นขนาด 32 บิต จะใช้ +3.3v
สามารถถ่ายเทข้อมูลแบบ Burst Mode ที่มีขนาดของข้อมูลที่ส่งถ่ายกันมีขนาดไม่แน่นอน
เป็นระบบ Plug n Play หรือ PnP ที่คุ้นเคย ซึ่ง PnP ก็คือสามารถจัดตั้งค่า Configuration ในทางฮาร์ดแวร์โดยอัตโนมัติ ซึ่งสามารถตั้งค่าที่จะไม่ให้เกิดการอินเทอร์รัพต์ระหว่างกัน
สามารถทำงานแบบ Concurrent Bus PCI ได้ ซึ่งก็แปลว่า card ที่ติดตั้งต่าง ๆ สามารถทำงานได้พร้อมกันได้
- PCI Bus มีระบบตรวจสอบความผิดพลาดและรายงานขณะส่งถ่ายข้อมูล
เป็นระบบ Bus ที่ไม่ขึ้นกับ Processor ใด ๆ อีกทั้งยังสามารถ Configuration โดยผ่านทาง Bios Setup
อุปกรณ์ต่าง ๆ ที่ติดตั้งอยู่บน PCI Bus จะใช้เวลาการเข้าถึง (Access) ต่ำ (Low Latency) ซึ่งจะลดเวลาในการร้องขอในการทำงานในระบบ

            - มีระบบ Write Posting และ Read Prefetching ซึ่งก็คือการเตรียมเขียนข้อมูลคำสั่งไว้ล่วงหน้า และการเตรียมการอ่านข้อมูลคำสั่งไว้ล่วงหน้า เพื่อเป็นการประหยัดเวลาที่ใช้เตรียมอ่าน เขียนคำสั่งต่อไป
 

 
การประสานการทำงานระหว่าง PCI และ PnP 

ทีนี้ เรามาพูดกันถึงเวลามันทำงานดีกว่านะครับ ยกตัวอย่าง ถ้าเราหาซื้อ Soundcard แบบ PCI มาตัวหนึ่ง และเครื่องที่เราใช้งาน ก็ใช้ระบบปฏิบัติการ Windows98 / Me สิ่งต่างๆที่ควรจะเกิดขึ้นคือ 
  1. ปิดฝาเครื่องแล้วจัดการเสียบสายไฟ จากนั้นก็เปิดสวิทช์เครื่องให้เริ่มทำงาน
  2. เมื่อเครื่องเริ่มทำงาน BIOS ก็เริ่มทำการอ่านและติดตั้ง PnP BIOS
  3. PnP BIOS ก็เริ่มทำการตรวจสอบระบบบัส PCI เพื่อค้นหาอุปกรณ์ PnP ต่างๆ โดยการส่งสัญญาณถามอุปกรณ์ต่างๆ ที่ต่ออยู่ในระบบบัสนี้ทุกๆตัว ว่าเป็นอุปกรณ์อะไร ซึ่งถ้าเป็นอุปกรณ์แบบ PnP จะมีการตอบรับกลับมา
  4. หลังจากได้รับสัญญาณถามแล้ว Soundcard ที่อยู่บนระบบบัส PCI และเป็น Card แบบ PnP ก็จะแสดงตน ว่าเป็น Card อะไร มีชื่ออะไร ตอบกลับไป ผ่านทาง ระบบบัส PCI กลับไปยัง BIOS
  5. PnP BIOS ทำการตรวจสอบ ESCD ใน EPROM เพื่อค้นหาค่าการติดตั้งต่างๆ ของ Soundcard แต่ในกรณีนี้ Soundcard เราเพิ่งจะติดตั้งเข้าไปใหม่ ดังนั้น จึงไม่มีค่าการติดตั้งใดๆ อยู่ใน ESCD เลย
  6. เมื่อไม่มี PnP BIOS จะทำการกำหนดค่า IRQ, DMA, Memory Address และ I/O Port ต่างๆ ให้กับ Soundcard โดยอัตโนมัติ และทำการเก็บค่าต่างๆ นี้ลงไว้ใน ESCD เพื่อใช้ในการอ้างอิงในการบูตเครื่องต่อๆ ไป รวมถึง ใช้ในการตรวจสอบของระบบปฏิบัติการด้วย
  7. เมื่อระบบปฏิบัติการ Windows บูตเครื่องขึ้นมา ก็จะทำการตรวจสอบค่าการติดตั้งต่างๆ จาก ESCD และจากระบบบัส PCI เมื่อพบว่ามีอุปกรณ์ใหม่ คือ Soundcard ติดตั้งเข้ามา ก็จะทำการแสดงหน้าจอเพื่อบอกกับผู้ใช้ว่า ขณะนี้ ได้พบอุปกรณ์ใหม่แล้ว โดยระบบจะพยายามทำการตรวจสอบให้ด้วย ว่าเป็นอุปกรณ์ชนิดไหน
  8. ถ้าระบบสามารถตรวจสอบได้ว่าเป็นอุปกรณ์ชนิดใด โดยนำค่าที่อ่าน มาเปรียบเทียบกับในระบบฐานข้อมูลในระบบปฏิบัติการเอง ก็จะแสดงชื่อ ของอุปกรณ์ดังกล่าว และจะให้ทำการติดตั้ง Driver ซึ่งเป็น Software ที่ช่วยในการติดต่อระหว่างอุปกรณ์นั้นๆ กับระบบปฏิบัติการ ลงไปด้วย ซึ่งโดยปกติแล้ว ถ้าอุปกรณ์ดังกล่าวมีอยู่ในฐานข้อมูล ระบบก็จะสามารถติดตั้ง Driver ให้ได้เองเลย หรือจะให้ผู้ใช้ ใส่แผ่น หรือกำหนดที่เก็บตัว Driver ที่จะให้ติดตั้ง แต่ถ้าหากระบบปฏิบัติการ ไม่สามารถตรวจสอบให้ได้ ว่าเป็นอุปกรณ์ชนิดไหน ก็จะแสดงหน้าจอให้ผู้ใช้ระบุว่าเป็นอุปกรณ์ชนิดใด พร้อมทั้งกำหนดการติดตั้ง Driver เพื่อให้อุปกรณ์นั้นๆ ใช้งานได้ ซึ่งในบางครั้ง ก็อาจจะต้องมีการบูตเครื่องใหม่อีกครั้ง เพื่อให้อุปกรณ์นั้นๆ ทำงานได้อย่างถูกต้อง

อ้างอิง
http://www.vcharkarn.com/blog/33315/2848



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

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