home
story
cpu
hardware
software
new
member
link
webboard
 

 

คุณเข้ามาเป็นคนที่

Thai Banner

update16/11/02

 
 

PC Bus

เมื่อ IBM ได้ทำการเปิดตัว IBM PC ( XT ) ตัวแรก ซึ่งใช้ CPU 8088 เป็น CPU ขนาด 8 Bit ดังนั้น เครื่อง Computer เครื่องนี้ จึงมีเส้นทางข้อมูลเพียง 8 เส้นทาง ( 8 data line ) และ เส้นทางที่อยู่ 20 เส้นทาง ( 20 address line ) เพื่อใช้ในการอ้างตำแหน่งของหน่วยความจำ

Card ที่นำมาต่อกับ PC Bus นั้น จะเป็น Card แบบ 62 pin ซึ่ง 8 pin ใช้สำหรับส่งข้อมูล อีก 20 pin ไว้สำหรับอ้างตำแหน่งของหน่วยความจำ ซึ่ง CPU 8088 นั้น สามารถอ้างอิงหน่วยความจำได้เพียง 1 Megabyte ซึ่ง ในแต่ละ pin นั้น สามารถส่งข้อมูลได้เพียง 2 ค่า คือ 0 กับ 1 ( หรือ Low กับ High ) ดังนั้น เมื่อใช้ 20 pin ก็จะอ้างอิงตำแหน่งได้ที่ 2 คูณกัน 20 ครั้ง ( หรือ 2 ยกกำลัง 20 ) ซึ่งก็จะได้เท่ากับ 1 Meg. พอดี ส่วน pin ที่เหลือ ก็ใช้เป็นตัวกำหนดการอ่านค่า ว่าอ่านจากตำแหน่งของหน่วยความจำ หรือ ตำแหน่งของ Input/Output หรือ บาง pin ก็ใช้สำหรับจ่ายไฟ +5, -5, +12 และ สาย Ground ( สายดิน ) เพื่อจ่ายไฟให้กับ Card ที่ต่อพ่วงบน Slot ของ PC Bus นั่นเอง และ ยังมี pin บางตัวที่ทำหน้าที่เป็นตัว reset หรือ เป็นตัว refresh หรือแม้กระทั่ง clock หรือ สัญญาณนาฬิกาของระบบนั่นเอง

ระบบ Bus แบบ PC Bus นี้ มีความกว้างของ Bus เป็น 4.77 MHz และ สามารถส่งถ่ายข้อมูลด้วยความเร็วสูงสุดที่ 2.38 MB ต่อ วินาที


ISA Bus

ในยุคของ PC AT หรือ ตั้งแต่ CPU รุ่น 80286 เป็นต้นมา ได้มีการเปลี่ยนแปลงขนาดของ เส้นทางข้อมูลจาก 8 Bit ไปเป็น 16 Bit ทำให้ IBM ต้องมาทำการออกแบบระบบ Bus ใหม่ เพื่อให้สามารถส่งผ่านข้อมูลทีละ 16 Bit ได้ แน่นอนว่า การออกแบบใหม่นั้น ก็ต้องทำให้เกิดความเข้ากันได้ย้อนหลังด้วย ( Compatble ) กล่าวคือ ต้องสามารถใช้งานกับ PC Bus ได้ด้วย เพราะ ถ้าหากไม่เช่นนั้นแล้ว ก็คงจะขายออกยาก ลองคิดดูว่า ถ้าหากออก PC AT ที่ใช้ ระบบบัสใหม่ทั้งหมด และ ไม่เข้ากันกับ PC XT ที่ออกมาก่อนหน้านั้นได้ เครื่อง PC AT นั้นๆ อนาคตการตลาดก็คงรุ่งได้ยาก

แต่ปัญหานี้ IBM แก้ไขได้ดีทีเดียว นั่นก็คือ ได้ทำ Slot มาต่อเพิ่มจาก PC Bus เดิม อีก 36 Pin โดยที่เพิ่มเส้นทางข้อมูลอีก 8 Pin รวมแล้วก็จะเป็น 16 Pin สำหรับส่งข้อมูลได้ทีละ 16 Bit พอดี และ เพิ่ม 4 Pin สำหรับทำหน้าที่อ้างตำแหน่งจากหน่วยความจำ ซึ่งก็จะรวมเป็น 24 Pin และ จะอ้างได้มากถึง 16 Meg. ( 2 ยกกำลัง 24 ) ซึ่ง ก็เป็นขนาดของหน่วยความจำสูงสุดที่ CPU 80286 นั้น สามารถจะอ้างได้ แต่อย่างไรก็ตาม การอ้าง ตำแหน่งของ I/O Port นั้น ก็ยังคงถูกจำกัดไว้ที่ 1,024 อยู่ดี เนื่องจาก ปัญหาด้านความเข้ากันได้ กับ PC Bus

นอกจากนี้ Pin ที่เพิ่มเข้ามา ยังช่วยเพิ่มการอ้างตำแหน่ง DMA และ ค่าของ IRQ เพิ่มอีกด้วย ซึ่งเรื่องของ DMA และ IRQ จะนำมาเขียน ให้อ่านกันต่อไปครับ

Slot แบบใหม่นี้ เรียกว่าเป็น Slot แบบ 16-Bit ซึ่งต่อมาก็เรียกกันว่าเป็น AT Bus แต่เราจะรู้จักกันในนามของ ISA Bus มากกว่า โดยคำว่า ISA มาจากคำเต็มว่า Industry Standard Architecture

รูปแสดงรูปร่าง ของ ISA Bus แสดงตำแหน่งของทั้ง 8 Bit และ 16 Bit

เราสามารถนำ Card แบบ 8 Bit มาเสียบลงบนช่อง 16 Bit ได้ เพราะ ใช้ สถาปัตยกรรมพื้นฐานเหมือนๆกัน จะต่างกันก็ตรงส่วนที่เพิ่มมา สำหรับ 16 Bit เท่านั้น ซึ่งจะใช้ ( ในกรณีที่ใช้ Card 16 Bit ) หรือ ไม่ใช้ ( ในกรณีใช้ Card 8 Bit ) ก็ได้

ระบบ Bus แบบ ISA Bus นี้ มีความกว้างของ Bus เป็น 8 MHz และ สามารถส่งถ่ายข้อมูลด้วยความเร็วสูงสุดที่ 8 MB ต่อ วินาที


ISA Bus ( Continue )

ในปี 1985 ทาง Compaq ซึ่งไม่ยอมน้อยหน้า IBM ได้ประกาศเปิดตัว Computer ของตน ในรุ่น 286/12 โดย 12 นั้นหมายถึง ความเร็วคือ 12 MHz ซึ่ง ในขณะนั้น IBM มีแค่ 286 ที่ทำงานด้วยความเร็ว 8 MHz

ในขณะนั้น ความเร็ว จาก 8 MHz ไป 12 MHz นับว่าสูงมากๆเลย เพราะเพิ่มขึ้นมาอีก ครึ่งหนึ่งเลยทีเดียว ( ถ้าเทียบกับสมัยนี้ ก็เหมือนๆกับ จาก Pentium II 300 ไปเป็น Pentium II 450 นั่นหละครับ ) ซึ่งแน่นอน Bus ของระบบ ก็ต้องทำงานที่ 12 MHz ตามไปด้วย แล้วปัญหาก็เกิดขึ้น

ISA Bus นั้น เราทราบแล้วว่ามันทำงานที่ 8 MHz ถ้านำมันมาใช้งานที่ 12 MHz ก็ต้องมีปัญหาแน่ๆ และ นี่หล่ะ เป็นปัญหาสำคัญ เพราะหากว่า CPU ทำงานได้เร็วจริง แต่ไม่สามารถใช้ Card ต่อพ่วงเพื่อเพิ่มประสิทธิภาพให้กับมันได้เลย ถ้าเป็นคุณ คุณจะซื้อไหม? นี่หละครับ ปัญหาที่ทาง Compaq จะต้องแก้ให้ได้ และ ก็แก้ได้ดีทีเดียว

นั่นก็คือ ในระบบบัส มันทำงานด้วยความเร็วเดียวกับ CPU ไม่ได้ ก็แยกการใช้นาฬิกา ของระบบบัส ออกจาก CPU ไปเลย โดยที่ CPU และ อุปกรณ์อื่นๆ บน Mainboard จะทำงานที่ความเร็ว 12 MHz แต่ ที่ตัว Bus เอง จะทำงานคงที่ ที่ 8 MHz เพราะใช้สัญญาณนาฬิกา แยกจากกัน ซึ่งวิธีการนี้ ก็เป็นทางแก้ ซึ่งก็ยังใช้กันอยู่จวบจนปัจจุบันนี้

แต่ ... ในสมัยนั้น หน่วยความจำหลัก หรือ RAM จะอยู่บน Expansion Card ที่ต่ออยู่กับ ISA Bus ด้วย เพราะฉะนั้น มันก็เลย ทำงานด้วยความเร็วเพียง 8 MHz เท่านั้น และ ต่อๆ มา ยิ่งมี CPU ขนาด 16 MHz หรือ 25 MHz ในยุคของ 386 ด้วยแล้ว RAM ก็จะทำงานด้วยความเร็วเพียงแค่ 8 MHz เท่านั้นน่ะหรือ?

ทาง Compaq ก็เลยต้องแก้ไขอีกครั้ง ซึ่งในต้นปี 1987 ทาง Compaq ก็ได้ วางตลาด Compaq Deskpro 386 ที่ความเร็ว 16 MHz โดยคราวนี้ ก็แยกสัญญาณนาฬิกาของ RAM ออกไปด้วยซะเลย ซึ่งก็เป็นต้นแบบสำคัญที่ใช้กันต่อมาในปัจจุบันนี้ โดยให้ ISA Bus ทำงาน ที่ความเร็วค่าหนึ่ง RAM อีกค่าหนึ่ง และ CPU อีกค่าหนึ่ง

MCA Bus

ทั้ง IBM และ Compaq นั้น เป็นคู่แข่งทางการค้ากัน ดังนั้น เรื่องที่จะให้ Compaq อยู่เหนือตนเอง สำหรับ IBM นั้น เป็นไปไม่ได้ ทาง IBM จึงได้ออกมาตรฐานระบบบัส ของตนใหม่ เรียกว่า Micro Channel Architecture หรือ MCA

เมื่อระบบบัส ได้มีการแข่งขันกันขึ้น แน่นอน ระบบที่ถูกนำมาใช้เป็นตัวเปรียบเทียบ คือ ISA ซึ่ง ก็มีการจับตามองว่า ทาง IBM นั้น จะหาทางแก้ไขจุดอ่อนของ ISA Bus ของตนอย่างไร แต่ วิศวกรของทาง IBM นั้น มองในมุมที่แตกต่างจากคนอื่นๆ

เมื่อ Intel ได้เปิดตัว CPU ของตน รุ่น 80386 ซึ่งเป็น CPU ขนาด 32 Bit สามารถอ้างตำแหน่งหน่วยความจำได้มากถึง 4 Gigabyte โดยมีความเร็วเริ่มต้นที่ 16 MHz ซึ่ง ISA Bus ดูจะไม่เหมาะแล้ว กับ CPU ระดับนี้ บรรดาผู้ใช้ PC ต่างก็มองกันว่า ทางออกที่ดี คือควรจะมีระบบบัสใหม่ที่สามารถรองรับในจุดนี้ได้

แต่อย่างที่บอกไปแล้วนั้นว่า วิศวกรของทาง IBM มองในจุดที่แตกต่างจากคนอื่นๆ ทั่วไป เพราะ แต่เดิมนั้น IBM จับตลาด Mainframe มาก่อน และ แน่นอน วิศวกรของทาง IBM ก็จะชินและ ถนัดกับ Mainframe มากกว่า ทำให้วิศวกรเหล่านั้นมองว่า PC ก็ควรจะทำงาน แบบ หลายๆ task พร้อมๆ กันได้ ( Multiple task ) ประกอบกับ IBM ต้องการที่จะให้ภาพพจน์ Mainframe ของตน ดูมีประสิทธิภาพสูงกว่า PC จึงไม่ค่อยได้เพิ่มหรือเปลี่ยนแปลงขีดความสามารถให้กับระบบบัสใหม่ของตน ให้เด่นกว่าเดิมมากนัก

มาดูกันดีกว่าว่า MCA นั้น มีจุดเด่น และ จุดด้อยอะไรบ้าง เริ่มจากจุดเด่นของ MCA กันก่อนเลยก็แล้วกันนะครับ
MCA นั้นใช้ตัวควบคุม Bus ของตัวเอง แยกจาก CPU เรียกว่า Central Arbitration Point และ การส่งผ่านข้อมูล ก็ทำโดยผ่านระบบที่เรียกว่า Bus Master ซึ่งช่วยให้การส่งผ่านข้อมูลระหว่าง Card ต่างๆ กับ หน่วยความจำหลัก ได้อย่างรวดเร็ว และ ยังช่วยในการส่งผ่านข้อมูลระหว่าง Card อีกด้วย
สามารถกำหนดค่าต่างๆ ทั้ง IRQ, DMA, Port ผ่านทาง Software ได้ โดยไม่ต้องไปยุ่งเกี่ยวกับ Jumper หรือ Dipswitch บน Card เลย โดยค่าต่างๆ สามารถ set ผ่านทาง Program เพียงตัวเดียว ก็สามารถ set ได้กับทุกๆ Card ที่ใช้กับ MCA
สามารถแชร์ IRQ ร่วมกันได้ ซึ่ง นี่เป็นปัญหาสำคัญเรื่องหนึ่ง เพราะ IRQ มีจำนวนจำกัด แต่ก็อยากมี Card เพิ่มมากๆ IRQ ก็อาจไม่เพียงพอ MCA สามารถ แชร์การใช้งาน IRQ ร่วมกันระหว่าง Card อื่นๆ ได้
ทำงานที่ 10 MHz สนับสนุนเส้นทางข้อมูลทั้ง 16 Bit และ 32 Bit ซึ่งสามารถให้อัตราการส่งถ่ายข้อมูลได้สูงสุดถึง 20 Meg ต่อ วินาที เลยทีเดียว และ ด้วย ความกว้างของ เส้นทางตำแหน่งขนาด 32 Bit ก็ทำให้สามารถอ้างตำแหน่งบนหน่วยความจำได้ถึง 4 GigaByte
ดูๆแล้ว ก็น่าจะเป็นสถาปัตยกรรมระบบบัส ที่น่าสนใจอยู่ใช่น้อยนะครับ แต่สาเหตุที่ทำให้ระบบบัส MCA นี้ ไปไม่ถึงดวงดาว ก็คือ
ความไม่เข้ากันกับ ISA Bus เพราะ IBM นั้นได้ออกแบบ MCA มาใหม่ทั้งหมด ทำให้ไม่เข้ากันกับ ISA เลยแม้แต่น้อย แน่นอน ระบบบัสแบบ MCA นี้ ได้นำมาใช้บน IBM PS/2 ของ IBM เอง ดังนั้น ใน เครื่อง PS/2 นี้ ก็จะไม่มี ISA และ Card ISA ก็ไม่สามารถนำมาใช้กับ PS/2 ได้ นี้หล่ะ ปัญหาหลักสำคัญเลย
และ ปัญหาที่หนักที่สุด ก็คือ ทาง IBM นั้น ได้จดลิขสิทธิ์ในเรื่องของ MCA เอาไว้ด้วย ดังนั้นผู้ที่จะผลิต Card แบบ MCA เพื่อมาใช้กับ Bus แบบ MCA ของตน ก็ต้อง เสียค่าลิขสิทธิ์ให้ด้วย ( เป็นเงิน 5% ของรายได้จากการขาย Card นั้น ๆ ) ซึ่งก็ไม่ใช่น้อยๆ เลยทีเดียว ตรงนี้หล่ะ ที่เหมือนกับ IBM กำลังฆ่าตัวตาย กับวิธีการเช่นนี้
ก็ตรงเรื่องลิขสิทธิ์นี่เอง ถึงแม้ว่าจะดูแล้วน่าสนใจ ดูแล้วเป็นระบบที่ดี แต่ มาตายเพราะการตลาดของ IBM เสียเอง

ต่อมาในภายหลัง ได้มีการเพิ่มขีดความสามารถ เข้าไปอีก คือเรื่องของ Streaming Data Mode ซึ่งทำให้ใช้เส้นทางข้อมูลได้ถึง 64 Bit และ สามารถเพิ่มอัตราการส่งผ่านข้อมูลได้ถึง 80 M/s และ ยังได้เพิ่มสัญญาณนาฬิกาไปเป็น 20 MHz ซึ่งจะสามารถทำให้อัตราส่งถ่ายข้อมูลสูงสุดที่ 160 M/s ด้วย เพื่อแข่งขันกับ EISA ซึ่งจะได้กล่าวถึงต่อไป

EISA Bus

จากที่ได้กล่าวมาแล้ว ถึงจุดจบอันไม่น่าบังควรของ IBM ที่ทำการจดลิขสิทธิ์ และ เรียกเก็บค่าลิขสิทธิ์ จากรายได้ทั้งหมด 5 % ( จากรายได้ทั้งหมดนะครับ ไม่ใช่จากกำไรทั้งหมด ) แถมยังไม่ให้ความช่วยเหลือในด้านข้อมูลของระบบนี้อีก ทำให้มันถูกกองไว้กับ IBM ไม่แพร่หลายทั่วไปอย่าง ISA

แน่นอน Compaq ซึ่งเป็นคู่แข่งทางการค้าของ IBM คงไม่ไปก้มหัวให้กับ IBM เพื่อขอใช้ MCA เป็นแน่แท้ ทาง Compaq จึงได้รวมทุนวิจัยระบบบัสใหม่ ร่วมกับอีก 8 บริษัท ในปี 1988 ซึ่งเรียกกันว่าเป็น "Gang of Nine" แต่พวกเขากลับเรียกตัวเองว่า "WATCHZONE" เพราะ ประกอบไปด้วยบริษัท Wyse, AST Research, Tandy, Compaq, Hewlett-Packard, Zenith Data Systems, Olivetti, NEC และ Epson และได้พัฒนา Extended Industry Standard Architecture หรือ EISA ขึ้นมาได้สำเร็จ

EISA นั้น ใช้พื้นฐานหลักมาจาก ISA แต่ได้เพิ่มขีดความสามารถบางอย่างขึ้น ซึ่งบางอย่างก็พัฒนามาจาก MCA ด้วย ซ้ำยังเข้ากันได้กับ ระบบ ISA รุ่นเก่าด้วย และ เสียค่าลิขสิทธิ์น้อยกว่าที่จะต้องจ่ายให้กับ IBM อีกด้วย

เรามาดูจุดเด่น/ด้อยของ EISA กันดีกว่าครับ
ใช้เส้นทางข้อมูลขนาด 32 Bit ซึ่งทำให้มีอัตราส่งผ่านข้อมูลได้ถึง 33 Meg ต่อ วินาที
อ้างหน่วยความจำได้ถึง 4 Gigabyte
ดึงเอาความสามารถเด่นๆ ทั้ง Bus Mastering, Automated Setup และ Interrupt Sharing จาก MCA และ พัฒนามาเป็นแบบฉบับของตน ดังนั้นจึงสามารถ ปรับแต่งค่าต่างๆ ทั้ง IRQ, DMA และ Port ผ่านทาง Software โดยไม่ต้องไปยุ่งเกี่ยวกับ Jumper หรือ Dipswitch ได้
ใช้ สัญญาณนาฬิกาที่ 8.33 MHz เท่านั้น ซึ่งตรงนี้เองที่เป็นจุดด้อยของมัน แต่ที่ต้องใช้เพียงเท่านี้ ก็เพื่อคงความเข้ากันได้กับ ระบบ ISA แบบเก่า
ไม่มีการเพิ่ม IRQ และ DMA เพราะ ใช้ร่วมกันได้ ( เป็นความสามารถของ MCA ที่ EISA ดึงมาเป็นแบบของตนเอง )
เมื่อทาง IBM เห็นเช่นนี้ ก็ยอมไม่ได้ เพราะ จากอัตราส่งถ่ายข้อมูล ซึ่งสูงกว่า MCA ของตน ( 20 M/s ) จึงได้ทำการเพิ่ม Feature ให้กับ MCA ของตน ดังที่ได้กล่าวมาแล้ว ซึ่งทำให้ อัตราการส่งถ่ายข้อมูลเพิ่มได้ถึง 160 M/s และ แน่นอน ทาง WATCHZONE ก็ไม่ยอมน้อยหน้า ได้ทำการพัฒนา EISA ขึ้นเป็น EISA-2 ซึ่งมีอัตราการส่งถ่ายถึง 132 M/s เลยทีเดียว

Local Bus

เมื่อคราวที่ Compaq ได้เปิดตัว Deskpro 386 นั้น ที่เคยกล่าวไปแล้วว่า ได้แยกสัญญาณนาฬิกาของหน่วยความจำหลัก , Bus และ CPU ออกจากกัน ซึ่ง Compaq ก็ได้ เปิดตัว ระบบ Bus ใหม่ของตนไปด้วย เพราะ หน่วยความจำหลักของเครื่องนี้ จะอยู่บน Slot ขนาด 32 Bit ซึ่งออกแบบมาเฉพาะของ Compaq เท่านั้น ซึ่ง ก็เป็นจุดเริ่มต้น ให้ผู้ผลิตแต่ละบริษัท เริ่มที่จะหันไปออกแบบและผลิตระบบบัส ที่เป็นมาตรฐาน ของตนเองขึ้นมา แน่นอน Intel ก็เป็นหนึ่งในนั้น

ระบบบัสเหล่านี้ แต่เดิมเรียกว่า เป็น Private Bus เพราะใช้เป็นการส่วนตัวเฉพาะบริษัทเท่านั้น แต่ต่อมาก็เรียกว่าเป็น Local Bus หรือ Bus เฉพาะที่ เพราะใช้ สัญญาณนาฬิกาเดียวกับ CPU โดยไม่ต้องพึ่งวงจรสัญญาณนาฬิกาพิเศษแยกออกจาก CPU เลย

ข้อดีของมันก็คือ ทำให้สามารถใช้สัญญาณนาฬิกาเดียวกันกับ CPU ในขณะนั้นได้ ซึ่งก็มักจะนำมาใช้กับ หน่วยความจำหลัก เพื่อเพิ่มประสิทธิภาพโดยรวมของระบบ แต่ก็มี Card แสดงผลอีกชนิดหนึ่งที่ต้องการความไวสูง เช่น Display Card ซึ่ง หากมีการเข้าถึงและส่งถ่ายข้อมูลระหว่าง CPU กับ Display Card ได้เร็วแล้ว ก็จะช่วยลดปัญหาเรื่อง Refresh Rate ต่ำ เพราะ CPU จะต้องทำการประมวลผลและนำมาแสดงผลบนจอภาพ ยิ่งหากว่ามีการใช้ mode resolution ของ จอภาพสูงๆ และ เป็น mode graphics ด้วยแล้ว CPU ก็ยิ่งต้องการการส่งถ่ายข้อมูลให้เร็วขึ้น เพื่อภาพที่ได้จะได้ไม่กระตุกและไม่กระพริบ ( Refresh Rate ต่ำ เป็นเหตุให้จอกระพริบ )

เนื่องจากระบบ Local Bus นั้น จะช่วยในการส่งผ่าน และ เข้าถึงข้อมูลได้เร็ว จึงได้มีบริษัทหัวใส นำเอาระบบ Local Bus มาใช้กับ Display Card ด้วย โดยบริษัทแรก ที่นำมาใช้และเปิดตัวอย่างเป็นทางการ คือ NEC ซึ่งใช้กับ NEC Powermate ( ในปี 1991 ) และ ต่อๆมา ผู้ผลิตรายอื่นๆ ก็ได้พยายามเลียนแบบ แต่ก็ได้ออกแบบระบบ Local Bus ของตน ซึ่ง Card ของแต่ละบริษัท ก็นำไปใช้ กับ บริษัทอื่นไม่ได้ ทำให้มีการกำหนดมาตรฐานระบบ Bus นี้ขึ้นมา โดยกลุ่มนั้นชื่อ Video Electronic Standards Association หรือ VESA และ ได้เรียก มาตรฐานนั้นว่าเป็น VESA Local Bus หรือ สั้นๆว่า VL Bus ในปี 1992

ระบบ VL Bus นั้น สามารถใช้สัญญาณนาฬิกา ได้สูงถึง 50 MHz ทั้งยังสนับสนุนเส้นทางข้อมูลทั้ง 32 Bit และ 64 Bit รวมถึงอ้างตำแหน่งหน่วยความจำได้สูงถึง 4 Gigabyte อีกด้วย

แต่อย่างไรก็ตาม VL Bus ก็ไม่เชิงว่าเป็นสถาปัตยกรรมที่ดีนัก เพราะไม่มีเอกลักษณ์ หรือ คุณสมบัติพิเศษนอกเหนือไปจาก ISA มากนัก เพราะมันเหมือนๆกับ การเพิ่มขีดความสามารถให้กับ ISA มากกว่าที่จะเป็นพัฒนาความสามารถให้กับ ISA เนื่องจากมันก็ยังคงให้ CPU เป็นตัวควบคุมการทำงาน ใช้ Bus Mastering ไม่ได้ และ ยังไม่สามารถปรับแต่งค่าต่างๆ ผ่านทาง Software ได้ จากจุดอ่อนตรงจุดนี้ ทำให้ทาง Intel ได้พัฒนาระบบ Local Bus ของตนขึ้นมานั่นเอง


PCI Bus

ระบบ PCI หรือ Peripheral Component Interconnect ก็เป็น Local Bus อีกแบบหนึ่ง ที่พัฒนาขึ้นโดย Intel ในเดือนกรกฎาคม ปี 1992 โดยที่แยกการควบคุมของระบบบัส กับ CPU ออกจากกัน และส่งข้อมูลผ่านกันทางวงจรเชื่อม ( Bridge Circuit ) ซึ่ง จะมี Chipset ที่คอยควบคุมการทำงานของระบบบัสต่างหาก โดยที่ Chipset ที่ควบคุมนี้จะเป็นลักษณะ Processor Independent คือ ไม่ขึ้นกับตัว Processor ( หรือ CPU )

แรกเริ่มที่เปิดตัวนั้น PCI จะเป็นระบบบัสแบบ 32 Bit ที่ทำงานด้วยความเร็ว 33 MHz ซึ่งสามารถให้อัตราเร็วในการส่งผ่านข้อมูลถึง 133 M/s

ต่อมา เมื่อ Intel เปิดตัว CPU ใน Generation ที่ 5 ของตน Intel Pentium ซึ่งเป็น CPU ขนาด 64 Bit ทาง Intel ก็ได้ทำการกำหนดมาตรฐาน ของ PCI เสียใหม่ เป็น PCI 2.0 ในเดือนพฤษภาคม ปี 1993 ซึ่ง 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 อีกด้วย ( เป็นมาตรฐานที่พัฒนาในปี 1992 ที่กำหนดให้ Card แบบ Plug-and-Play นี้ จะไม่มี Dipswitch หรือ Jumper เลย ทุกอย่าง ทั้ง IRQ, DMA หรือ Port จะถูกกำหนดไว้แล้ว แต่เราก็สามารถเลือก หรือ เปลี่ยนแปลงได้จาก Software )

รูปแสดงรูปร่าง ของ PCI Bus ส่วน Slot สีดำด้านล่าง ก็คือ Slot ISA นั่นเอง


รูปแสดงรูปร่าง ของ PCI Bus อีกรูปหนึ่ง

รูปแสดงลักษณะของ PCI 64 Bit ( วงสีเหลือง ) และ PCI 32 Bit ( วงสีแดง )

AGP

ในกลางปี 1996 เมื่อ Intel ได้ทำการเปิดตัว Intel Pentium II ซึ่งพร้อมกันนั้นก็ได้ทำการเปิดตัวสถาปัตยกรรมที่ช่วยเพิ่มประสิทธิภาพ ของหน่วยแสดงผลด้วย นั่นก็คือ Accelerated Graphics Port หรือ AGP ซึ่งก็ได้เปิดตัว Chipset ที่สนับสนุนการทำงานนี้ด้วย คือ 440LX ( ซึ่งแน่นอน Chipset ที่ออกมาหลังจากนี้ ก็จะสนับสนุนการทำงานของ AGP ด้วย )

AGP นั้น จะมีการเชื่อมต่อกับ Chipset ของระบบแบบ Point-to-Point ซึ่ง จะช่วยให้การส่งผ่านข้อมูลระหว่าง Card AGP กับ Chipset ของระบบได้เร็วขึ้น และยังมีเส้นทางเฉพาะ สำหรับติดต่อกับหน่วยความจำหลักของระบบ เพื่อใช้ทำการ Render ภาพ แบบ 3D ได้อย่างรวดเร็วอีกด้วย

จากเดิม Card แสดงผล แบบ PCI นั้น จะมีปัญหาเรื่องของหน่วยความจำบน Card เพราะเมื่อต้องการใช้งานด้านการ Render ภาพ 3 มิติ ที่มีขนาดใหญ่มากๆ ก็จำเป็นต้องมีการใช้หน่วยความจำบน Card นั้นมากๆ เพื่อรองรับขนาดของพื้นผิว ( Texture ) ที่เป็นองค์ประกอบสำคัญของงาน Render แน่นอน เมื่อหน่วย ความจำมากๆ ราคาก็ยิ่งแพง ดังนั้น ทาง Intel จึงได้ทำการคิดค้นสถาปัตยกรรมใหม่เพื่องานด้าน Graphics นี้ โดยเฉพาะ AGP จึงได้ถือกำเนิดขึ้นมา

AGP นั้นจะมี mode ในการ Render อยู่ 2 แบบ คือ Local Texturing และ AGP Texturing โดยที่ Local Texturing นั้น จะทำการ copy หน่วยความจำ ของระบบไปเก็บไว้ที่เฟรมบัฟเฟอร์ของ Card ( หน่วยความจำบนตัว Card ) จากนั้นจึงทำการประมวลผลโดยดึงข้อมูลจากเฟรมบัฟเฟอร์บน Card นั้นอีกที ซึ่งวิธีการนี้ ก็เป็นวิธีการที่ใช้บนระบบ PCI ด้วย วิธีนี้จะพึ่งขนาดของหน่วยความจำบน Card มาก

AGP Texturing นั้น เป็นเทคนิคใหม่ ที่ช่วยลดปริมาณของหน่วยความจำ หรือ เฟรมบัฟเฟอร์บน Display Card ลงได้มาก เพราะสามารถทำการใช้งาน หน่วยความจำของระบบให้เป็นเฟรมบัฟเฟอร์ได้เลย โดยไม่ต้องดึงข้อมูลมาพักไว้ที่เฟรมบัฟเฟอร์ของ Card ก่อน ( สามารถอ่านเรื่องของ AGP Texturing เพิ่มเติมได้ที่ Vision4D ครับ )

แสดงระบบบัสแบบ PCI คร่าวๆ


แสดงระบบบัสของ AGP ที่มีจุดเด่นที่เหนือกว่า PCI ตรง Port พิเศษของ AGP


โดยปกติแล้ว AGP จะทำงานที่ความเร็ว 66 MHz ซึ่งแม้ว่าระบบจะใช้ FSB เป็น 100 MHz แต่มันก็จะยังคงทำงานที่ 66 MHz ( ซึ่งตรงจุดนี้ Mainboard บางรุ่น บางยี่ห้อ สามารถปรับแต่งค่านี้ได้ แต่ ทั้งนี้ และ ทั้งนั้น ก็ควรคำนึงถึงขีดจำกัดของ Card และ อุปกรณ์อื่นๆ ด้วย ) ซึ่ง ใน mode ปกติของมัน ก็จะมีความสามารถแทบจะเหมือน กับ PCI แบบ 66 MHz เลย โดยจะมีอัตราการส่งข้อมูลที่สูงถึง 266 M/s และ นอกจากนี้ยังสามารถทำงานได้ทั้งขอบขาขึ้นและขอบขาลงของ 66 Mhz จึงเท่ากับว่ามันทำงานที่ 133 MHz ซึ่งจะช่วยเพิ่มอัตราการส่งถ่ายข้อมูลขึ้นได้สูงถึง 532 M/s ( แน่นอนว่าทั้ง Card ที่ใช้ และ Chipset ที่ใช้ ต้องสนับสนุนการทำงานแบบนี้ด้วย ) ซึ่งเรียก mode นี้ ว่า mode 2X และ mode ปกติว่าเป็น mode 1X

สำหรับความเร็วในการส่งถ่ายข้อมูลนั้น ก็ขึ้นกับชนิดของหน่วยความจำหลักด้วย ถ้าหน่วยความจำหลัก เป็น ชนิดที่เร็ว ก็จะยิ่งช่วยเพิ่มอัตราเร็วในการส่งถ่ายมากขึ้น ดังนี้
EDO DRAM หรือ SDRAM PC 66 ได้ 528 M/s
SDRAM PC100 ได้ 800 M/s
DRDRAM ได้ 1.4 G/s
( ขอขอบคุณ คุณ Noko สำหรับข้อมูลตรงนี้ครับ )


อีกสาเหตุหนึ่งที่ระบบบัสแบบ AGP ทำได้ดีกว่า PCI ก็เพราะ เป็น Slot แบบ เอกเทศ ไม่ต้องไปใช้ Bandwidth ร่วมกับใคร ( เพราะเครื่องๆ หนึ่งมี Display Card เพียง ตัวเดียวก็เพียงพอแล้ว ดังนั้น จึงใน Mainboard จึงมี Slot AGP เพียง Slot เดียว )

รูปแสดงรูปร่าง ของ Slot AGP

อีกไม่นาน chipset ตัวใหม่ของทาง Intel ก็จะออกมาแล้ว ซึ่งจะรองรับการทำงานของ AGP 4X ซึ่งก็จะช่วยให้เพิ่มอัตราการส่งผ่านข้อมูลได้สูงขึ้นอีกเท่าตัวจาก 2 X เลยทีเดียว



ตารางสรุปเกี่ยวกับระบบบัส

ชนิด ปีที่เปิดตัว ความกว้างของ Bus ความเร็วนาฬิกา
PC Bus 1981 8 Bit 4.77 MHz
ISA 1984 16 Bit 8 MHz
MCA 1987 32 Bit 10 MHz
EISA 1988 32 Bit 8.33 MHz
VL Bus 1992 32/64 Bit 50 MHz
PCI 1992 32/64 Bit 33 MHz
AGP 1996 32 Bit ( or Greater Than ) 66 MHz


อ้างอิง


Winn L. Rosch, Hardware Bible : Premier Edition , SAMS Publishing, 1997
Vincent P. Heuring, Harry F. Jordan, Computer Systems Design and Architecture , Addison-Wesley, 1997
Peter Norton, John Goodman, Inside the PC , Seventh Edition, SAMS Publishing,1997
สัญญพงศ์ สายวงศ์นวล, คู่มือการอัปเกรด และ บำรุงรักษา PC , Fourth Edition, ซีเอ็ดยูเคชั่น, 1996
[ Web Link ] http://www.agpforum.org
[ Web Link ] http://developer.intel.com/drg/mmx/AppNotes/
ที่มา:http://www.byxtreme.com/Article/BUS/9.html



 
Copyright © 2001. All rights reserved.  
<< Selection >>
Webmaster talk...

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

ปล. มีข้อสงสัยไปโพสต์ ไว้ที่ webbooardเช่นเคยครับ
หรือเมล์มาก็ได้ที่ [email protected]

 

สมัครสมาชิกwebboard

Username :
Password :
 
Hosted by www.Geocities.ws

1