SlideShare a Scribd company logo
1 of 13
Download to read offline
เจาะลึกระบบบัสนําสัญญาณ PCI local bus
สุรพล ศรีบุญทรง
บทความ 1996
บัสนําสัญญาณสําหรับเชื่อมโยงขอมูลระหวางหนวยประมวลผลกลางและอุปกรณรอบขาง (expansion
bus) ขนาด 16 บิท อยาง IBM's AT (Advanced Technology) expansion bus ซึ่งยังคงมีติดตั้งใชงานอยูในผลิตภัณฑ
เครื่องคอมพิวเตอรพีซีหลายๆ ยี่หอในขณะนี้ นับไดวาเปนประดิษฐกรรมโบราณที่มีอายุการใชงานยืนนานมากเมื่อเทียบ
กับองคประกอบดานฮารดแวรคอมพิวเตอรชนิดอื่นๆเพราะถานับแตบัสนําสัญญาณ IBM's AT expansion bus ปรากฏ
สูโลกคอมพิวเตอรเปนครั้งแรกจนถึงบัดนี้ ก็นับเปนเวลาสิบกวาปแลว
เวลาสิบกวาปนี้ถาพูดถึง
ผลิตภัณฑอุตสาหกรรมทั่วๆ ไปอาจจะไมถือวานานสัก
เทาใดนัก แตเมื่อเปนผลิตภัณฑกลุมคอมพิวเตอรที่มี
วิวัฒนาการอยางรวดเร็วมากแลว เวลาสิบกวาปอาจ
เทียบไดกับเวลานับเปนรอยปเลยทีเดียว อยางดูแต
ผลิตภัณฑเครื่องคอมพิวเตอรในตระกูลพีซีนั้น แคเวลา
สิบกวาปก็มีการพัฒนาจากเครื่อง 80286 AT ไปเปนเครื่อง 80386, 80486, และเครื่อง Pentium PC ในปจจุบัน จน
เดี๋ยวนี้เราแทบจะหาเครื่องคอมพิวเตอร 80286 AT ซึ่งเปนตนกําเนิดแหงบัสนําสัญญาณ ISA bus ทํายาไมไดอีกแลว
แตการที่บัสนําสัญญาณแบบ AT expansion bus หรือที่ปจจุบันรูจัก และเรียกขานกันในชื่อ "ISA
bus" (Industry Standard Architecture bus) ยังคงเปนที่ยอมรับใชงานในหมูบริษัทผูผลิตเครื่องคอมพิวเตอรหลายๆ
รายนั้น สาเหตุสําคัญก็มาจากการที่มันเปนสวนเชื่อมโยงสัญญาณที่ไมไดมีสวนเกี่ยวของโดยตรงกับการทํางานหลักๆ ใน
ระบบคอมพิวเตอร เปนเพียงสวนเชื่อมโยงสัญญาณขอมูลระหวางหนวยประมวลผลกลางกับอุปกรณรอบขางซึ่งยังคงมี
ความเร็วในการทํางานคอนขางต่ํา (slow devices) จนบางครั้งออกจะเปนการสิ้นเปลืองงบประมาณเกินไปเสียดวยซ้ํา
หากจะนําเอาบัสนําสัญญาณประสิทธิภาพสูงๆ ราคาแพงๆ มาใชรวมกับมัน
อยางไรก็ตาม รูปแบบการประมวลของระบบคอมพิวเตอรในปจจุบันไดมีการปรับเปลี่ยนไปจากเดิม
เปนอยางมาก มีการนําเอาระบบปฏิบัติการประเภท Multi-tasking OS ซึ่งสามารถดําเนินการประมวลคําสั่งหลายๆ
อยางพรอมกันไปในเวลาเดียวกันมาใช ในขณะเดียวกันโปรแกรมประยุกตตางๆ ก็ไดรับการพัฒนาใหมีขนาดใหญโต, มี
รูปแบบการทํางานที่หลากหลาย และประสิทธิภาพในการทํางานเพิ่มสูงขึ้นเปนอยางมาก ทําใหปริมาณขอมูลที่ตองถูก
สงผานไปมาระหวางหนวยประมวลผลกลางกับอุปกรณรอบขางอื่นๆ ทวีจํานวนขึ้นอยางมากมายเปนหลายสิบ หลายรอย
เทาตัว จนทําใหระบบบัสนําสัญญาณที่เคยเพียงพอจนเรียกไดวาเหลือเฟอในอดีตตองกลับกลายเปนวาคับแคบเกินกวาที่
จะรองรับปริมาณขอมูลดังกลาวได
อันสงผลใหเหลาบริษัทผูผลิตเครื่องคอมพิวเตอรทั้งหลายจําเปนตองหารูปแบบบัสนําสัญญาณชนิดใหม
ที่มีประสิทธิภาพ และขีดความสามารถในการรองรับปริมาณการสงผานขอมูลที่มากขึ้นมาใชแทนบัสนําสัญญาณ ISA bus
ซึ่งระบบบัสนําสัญญาณระดับคุณภาพที่ดูเหมือนวาจะเปนที่นาสนใจมากที่สุดในสายตาของผูเชี่ยวชาญคอมพิวเตอรขณะนี้
2
ก็เห็นจะไมมีชนิดใดโดดเดนเกินหนาผลิตภัณฑ " PCI (Peripheral Component Interconnection) local bus ไปได
ดังนั้น เพื่อใหทานผูอานมีความเขาใจในระบบบัสนําสัญญาณแบบ PCI local bus ไดเปนอยางดี ผูเขียนจึงขอถือโอกาส
ใชบทความนี้เปนที่อธิบายลึกลงไปในรายละเอียดของมัน
ปญหาการจราจรสัญญาณขอมูล
ดังที่ไดกลาวมาขางตนแลววา หากบริษัทผูผลิตเครื่อง
คอมพิวเตอรตองการใหผลิตภัณฑของตนสามารถรองรับการรองรับการ
ประมวลผลสมัยใหมไดนั้น พวกเขาไมเพียงแตจะตองเพิ่มประสิทธิภาพ
ของหนวยประมวลผลกลาง, และความสามารถในการจัดการกับ
หนวยความจําเทานั้น แตยังตองมีการพัฒนาเพิ่มขีดความสามารถในการ
สงผานสัญญาณขอมูลไปมาระหวางหนวยประมวลผลกลางกับอุปกรณ
ตางๆ ภายในระบบคอมพิวเตอรอีกดวย
เพราะลําพังการเพิ่มความเร็วของหนวยประมวลผลกลางแตเพียงอยางเดียวอาจจะทําใหระบบมี
ความเร็วในการประมวลผลขึ้นจริง แตการทํางานโดยรวมของระบบคอมพิวเตอรมิไดจํากัดอยูแคการประมวลผลของ
หนวยประมวลผลกลาง หรือการสงผานขอมูลระหวางหนวยประมวลผลกลางกับหนวยความจําหลักเทานั้น จําเปนที่
จะตองมีการสงผานขอมูลระหวางหนวยประมวลผลกลางกับอุปกรณประกอบระบบอื่นๆ อยาง ฮารดดิสก หรือสวน
ควบคุมหนาจอมอนิเตอร ฯลฯ ดวย
ตรงนี้เองที่บัสนําสัญญาณ ISA bus เขามามีผลจํากัดการทํางานของระบบคอมพิวเตอรโดยรวมได
เพราะขนาดความกวางสัญญาณ 16 บิทของมันจะสงผลใหการจราจรขอมูลปริมาณมหาศาลตองสะดุดและเคลื่อนตัวไป
อยางยากลําบาก (เหมือนสภาพการจราจรคอขวดที่เกิดขึ้นบนถนนวิภาวดีรังสิตของกรุงเทพฯ) ดังนั้น หากยังไมรีบ
ดําเนินการแกไขปรับปรุงขยายขนาดความกวางของบัสนําสัญญาณ ถึงจะเพิ่มความเร็วของหนวยประมวลผลกลางขึ้นไป
เทาใดก็คงไมทําใหความเร็วโดยรวมของระบบคอมพิวเตอรเพิ่มขึ้นจากเดิมได
ทางออกที่งายที่สุดสําหรับปญหาเรื่องการจราจรคอขวดของขอมูล (bottleneck) ภายในเครื่อง
คอมพิวเตอรที่ใชระบบบัสนําสัญญาณแบบ ISA bus ก็คือ ใชวิธีการตอเชื่อมอุปกรณรอบขางประเภทที่ตองมีการ
เรียกใชบอยๆ เขากับบัสนําสัญญาณภายใน (local bus) อันเปนบัสที่ตอออกมาจากตัวหนวยประมวลผลกลางโดยตรง
และมีความเร็วในการสงผานสัญญาณขอมูลไดสูงที่สุดภายในระบบ เชน มีบางผลิตภัณฑเลือกที่จะติดตั้งวงจรควบคุม
หนาจอ (graphics chips) หรืออุปกรณรอบขางตัวอื่นๆ ไวบนแผงวงจรหลัก (motherboard) โดยตรงเลย
การใชวิธีตออุปกรณรอบขางสําคัญๆ อยางเชน วงจรควบคุมหนาจอ* เขากับตัวหนวยประมวลผลกลาง
โดยตรงนี้ แมวาจะทําใหการสงผานสัญญาณขอมูลระหวางสวนควบคุมหนาจอกับหนวยประมวลผลกลางเปนไปอยาง
รวดเร็วขึ้นจริง แตมันกลับสงผลเสียติดตามมาถึงสองประการดวยกัน ประการแรก มันทําใหตัวอุปกรณควบคุมหนาจอ
นี้ถูกผูกติดไปกับหนวยประมวลผลกลางชนิดตัวติดกันไปตลอด (processor treadmill) เวลาที่มีผลิตภัณฑเครื่อง
คอมพิวเตอรที่ใชหนวยประมวลผลกลางความเร็วสูงขึ้นออกสูตลาด มันก็หมายความวาสวน I/O subsystem ของ
คอมพิวเตอรตองไดรับการออกแบบใหมหมดตามไปดวยทุกครั้ง
3
ผลเสียประการที่สองของการติดตั้งวงจรควบคุมหนาจอเขากับแผงวงจรหลักโดยตรง เปนผลเสียโดยตรง
ตอผูใชคอมพิวเตอรตรงที่มันทําใหผูใชคอมพิวเตอรตองถูกผูกติดกับวงจรควบคุมหนาจอรุนเดิมที่ติดตั้งอยูบน
แผงวงจรหลักไปตลอด ไมสามารถเปลี่ยนไปใชวงจรควบคุมหนาจอรุนใหมๆ ที่มีประสิทธิภาพมากขึ้นได ถึงแมวาบางครั้ง
สวนของวงจรควบคุมหนาจอที่มีใชอยูนั้นอาจจะลาสมัยไปแลวก็
ตาม เพราะติดขัดวาถาจะเปลี่ยนไปใชของใหมก็อาจจะตอง
เปลี่ยนแผงวงจรหลักใหมหมดเลย และปญหานี้ยังสงผลเสีย
ทางออมยอนกลับไปยังตัวผูผลิตแผงวงจรควบคุมหนาจอเองอีก
ตรงทําใหสามารถจําหนายสินคาไดนอยลง
ดังนั้น วิธีการแกไขปญหาการจราจรคอขวด
ของขอมูลดวยการตอพวงวงจรควบคุมหนาจอเขากับหนวย
ประมวลผลกลางแผงวงจรหลักโดยตรงจึงเปนอันพับฐานไปโดยปริยาย และทางออกที่แยบยลกวาก็ไดถุกพัฒนาขึ้นมา
นั่นคือ แทนที่จะตอพวงวงจรควบคุมหนาจอเขากับแผงวงจรหลักโดยตรงก็คงวงจรดังกลาวไวกับสวนแผงวงจรขยาย
(expansion board) ตามเดิมนั่นแหละ แตหันไปใชวิธีการปรับปรุงสวนของแผงวงจรหลักเสียใหมใหสามารถเลือก
ตอเชื่อมวงจรควบคุมหนาจอเขากับบัสนําสัญญาณสวน local bus ของหนวยประมวลผลกลางดวยการลากสายมาจาก
แผงวงจรขยายได
ผลจากการคงวงจรควบคุมหนาจอไวที่สวนของแผงวงจรขยายนั้น ก็ทําใหผูใชคอมพิวเตอรสามารถ
ปรับเปลี่ยนไปใชวงจรควบคุมหนาจอใหมๆ ที่มีประสิทธิภาพมากขึ้นไดอยางอิสระ และสะดวกสบาย (Upgradivity)
ในขณะที่การออกแบบสวนแผงวงจรหลักเสียใหมใหเลือกงตออุปกรณรอบขางเขากับบัส Local bus ได ก็สงผลใหการ
ขยับขยายการทํางานของระบบโดยรวมเปนไปอยางอิสระเชนกัน (expandability) ถาจะมีปญหาอยูบางก็ตรงเงื่อนไข
ที่วาผูใชคอมพิวเตอรจะตองเลือกซื้ออุปกรณรอบขางที่ออกแบบมาเพื่อการทํางานรวมกับแผงวงจรหลักของตนโดยตรง
เทานั้น (ซึ่งก็ไมไดเปนปญหาสลักสําคัญอะไรนัก เพราะตามปรกติผูผลิตคอมพิวเตอรก็มักจะออกแบบผลิตภัณฑของตน
ใหสามารถทํางานรวมกับผลิตภัณฑอื่นไดอยางกวางๆ อยูแลว)
* ความจริงอาจจะเปนวงจรควบคุมอุปกรณรอบ
ขางชนิดอื่นๆ ก็ได แตที่เลือกใชวงจรควบคุมสวนหนาจอ
มอนิเตอรก็เพราะวา โปรแกรมประยุกตรุนใหมๆ ในปจจุบัน
มักจะมุงเนนไปที่สีสัน และความสมจริงตางๆที่ปรากฏบนหนา
จอมอนิเตอร ซึ่งก็สงผลใหมีปริมาณขอมูลที่ใชสําหรับการ
แสดงออกบนหนาจอสูงมากขึ้นตามไปดวย จนบางครั้งหากไมมี
วงจรควบคุมการแสดงออกบนหนาจอ (graphics accelerator) ที่ดีพอแลว ผูใชอาจจะตองรอเครื่องคอมพิวเตอรใชเวลา
สรางภาพบนหนาจอทีละหลายๆ นาทีเลยก็เปนได
มาตรฐาน PCI local bus
4
มาตรฐานบัสนําสัญญาณแบบ PCI local bus นั้นเปนรูปแบบการเชื่อมโยงสัญญาณขอมูลสมรรถนะ
สูงระหวางแผงวงจรหลัก และแผงวงจรขยายซึ่งไดรับการนําเสนอสูสายตาสาธารณชนครั้งแรกใน Intel Technical
Forum ที่ออกในเดือนธันวาคม ป ค.ศ. 1991 หลังจากนั้นมาอีกเกือบครึ่งปมันถึงไดมีการรางระบุขอกําหนดมาตรฐาน
ของ PCI local bus ฉบับแรกออกมาในเดือน มิถุนายน ค.ศ. 1992 โดยกลุมคณะกรรมการ "The PCI Steering
Committee members"
คณะกรรมการ
The PCI Steering
Committee members นี้
ประกอบไปดวยสมาชิกที่มี
ชื่อเสียงอันเปนที่ยอมรับใน
หมูผูผลิตผลิตภัณฑ
คอมพิวเตอรทั่วๆ ไป อัน
ไดแก บริษัท Compaq,
บริษัท DEC, บริษัท IBM,
บริษัท Intel, และบริษัท
NCR ซึ่งตอมา
คณะกรรมการดังกลาวก็มีการปรับปรุงเปลี่ยนมาเรื่อยจนกระทั่งกลายมาเปนกลุมที่มีชื่อวา "PCI SIG (PCI Special
Interest Group) กรุป" ในเดือนมิถุนายนของปถัดมา (ค.ศ. 1992) พรอมๆ กับที่มาตรฐาน PCI local bus ก็กลายมา
เปนมาตรฐานระบบเปดสําหรับผลิตภัณฑคอมพิวเตอรทั่วไป จนกระทั่งเมื่อเดือนเมษายนปที่แลว ขอดําหนดมาตรฐาน
PCI local bus (PCI specifications) ฉบับ revision 2.0 ก็ไดถูกจัดรางและตีพิมพออกมาเปนฉบับลาสุด
บริษัทผูผลิตผลิตภัณฑคอมพิวเตอรที่ใหการยอมรับในมาตรฐาน PCI local bus ของกลุม PCI SIG นี้
นับไดวามีอยูกวางขวางทั่วไป ที่หลักๆ ก็เห็นจะได บริษัท Apple ที่ประกาศตัวออกมาอยางชัดเจนวาจะใหการสนับสนุน
ในมาตรฐาน PCI local bus อยางเต็มที่ รวมทั้งยังมีแผนการที่จะติดตั้งระบบบัสนําสัญญาณแบบ PCI local bus ใน
ผลิตภัณฑเครื่องคอมพิวเตอร PowerPC RISC Macintosh รุนใหมที่กําลังจะออกมาของตนดวย (ในผลิตภัณฑ
PowerPC Macintosh รุนแรกของบริษัท Apple ยังคงใชบัสนําสัญญาณ NuBus ซึ่งรองรับการทํางานของแผงวงจร
ขยาย NuBus peripheral boards อยู)
หรืออยางบริษัท DEC (Digital Equibment Corporation) ซึ่งเปนหนึ่งในสมาชิกของกลุม PCI SIG ก็
ยืนยันวาจะมีการนําเอามาตรฐาน PCI local bus เขาไปใชในผลิตภัณฑกลุม Alpha-based systems รวมทั้งยังมีการ
ติดตั้งรูปแบบการอินเทอรเฟซแบบ PCI interface ไวบนชิปหนวยประมวลผลความเร็วสูง "DECchip 210066 RISC"
ของบริษัท อีกดวย
ดวยความสนับสนุนจากเหลาบริษัท ผูผลิตคอมพิวเตอรเหลานี้นี่เองก็เปนเครื่องยืนยันถึงอนาคตอันสดใส
ของมาตรฐาน PCI local bus ไดเปนอยางดี จนนาจะเปนที่เชื่อไดอยางแนนอนวามันคงจะไดรับการยอมรับเปน
5
มาตรฐานสําหรับการเชื่อมโยงระหวางอุปกรณประกอบระบบ (component interconect) และมาตรฐานสําหรับระบบ
บัสขยาย (expansion-bus standard) โดยทั่วไปภายในระยะเวลาอันสั้นนี้
การที่เหลาบริษัทผูผลิตคอมพิวเตอรใหการตอนรับมาตรฐาน PCI เปนอยางดีนั้น มาจากความจริง
อยางหนึ่งวาเทาที่เปนมาในอดีตสวนของบัสนําสัญญาณเปนสวนที่มีวิวัฒนาการนอยมากเมื่อเทียบกับวิวัฒนาการในดาน
การประมวลผล และการมุงเนนแตการพัฒนาประสิทธิภาพของหนวยประมวลผลกลางใหมีประสิทธิภาพสูงมากขึ้นไม
สามารถจะสงผลใหระบบคอมพิวเตอรโดยรวมมีความเร็วมากขึ้นกวาเดิมไดสักเทาใดนัก
ดังนั้น เมื่อมาตรฐาน PCI มีการแยกเอาสวน
ติดตอกับอุปกรณรอบขาง (I/O subsystem) ออกมาเสียจากสวน
ของหนวยประมวลผลกลาง, หนวยความจําหลัก, และ
หนวยความจําแคช (processor/memory/cache subsystem)
มันจึงเปนที่สบใจของเหลาวิศวกรผูออกแบบผลิตภัณฑคอมพิวเตอร
อยางยิ่ง เพราะทําใหพวกเขาไมตองประสบกับปญหาการผูกยึดติด
กับหนวยประมวลผล (processor treadmill) เชนที่เคยเปนมา
และนั่นเองที่เปนสวนสงเสริมใหมาตรฐาน PCI ถูกนํามาใชกับผลิตภัณฑคอมพิวเตอรหลายๆ ยี่หอ
สวนพื้นฐานสําคัญ (fundamental part) ของมาตรฐาน PCI อยูที่การออกแบบตัวชิป PCI-to-host
bridge chip ขึ้นมาทําหนาที่เชื่อมตอบัส PCI bus เขากับบัส Local bus ของหนวยประมวลผลกลาง และเมื่อใดที่ชิป
PCI-to-host bridge chip ที่วานี้สําเร็จเรียบรอยถึงขั้นที่มีจําหนายใหเลือกใชโดยทั่วไป หนวยประมวลผลรุนใหมๆ
ทั้งหลายก็จะสามารถติดตอกับอุปกรณรอบขางในระบบมาตรฐาน PCI (PCI components access) ไดทุกชนิด และเมื่อ
ถึงตอนนั้นก็เทากับมาตรฐาน PCI ไดกาวลวงพนไปสูมาตรฐานที่ไมขึ้นกับหนวยประมวลผล (processor independent
standard) อีกตอไปแลว
ชิป PCI-to-host bridge chip นี้ก็ถูกออกแบบมาใหสามารถถอดเปลี่ยนไดงายๆ ไมยุงยากอะไร เชน
สมมติวาทางบริษัทผูผลิตชิปหนวยประมวลผลมีการออกผลิตภัณฑหนวยประมวลผลรุนใหมออกมา สิ่งที่ผูผลิตเครื่อง
คอมพิวเตอรตามมาตรฐาน PCI ตองทําก็มีแคเพียงถอดเปลี่ยนชิป PCI-to-host bridge chip เสียใหมเทานั้น สวน
องคประกอบอื่นๆ ในเครื่องคอมพิวเตอรยังสามารถคงไวไดตามเดิมไมตองไปยุงเกี่ยวดวยเลย
เนื่องจากมาตรฐาน PCI เปนมาตรฐานการเชื่อมโยงสัญญาณขอมูลระดับ comonent-and-board
level bus ดังนั้นจึงสามารถรวมเอามาตรฐานการเชื่อมโยงสัญญาณรูปแบบอื่นๆ อยางเชน ระบบ SCSI bus เขามาไว
ภายในมาตรฐาน PCI ไดดวย เพียงแตจะตองใชชิปวงจรควบคุม (controller chip) หรือแผงวงจรควบคุม (controller
board) สําหรับการอินเทอรเฟซเขากับบัส PCI bus เทานั้น
ดวยวิธีการเชื่อมตอกับบัสนําสัญญาณ PCI bus ดังกลาว เหลาบริษัทผูผลิตอุปกรณรอบขางที่ตอง
ติดตอหนวยประมวลผลผาน I/O ports ทั้งหลายในปจจุบัน (I/O component designers) ไมวาจะเปน แผงวงจร
กราฟฟก, แผงวงจรอินเทอรเฟซ SCSI (Small computer system interface), หรือแผงวงจรเน็ตเวิรก ฯลฯ สามารถ
ทุมเทสติปญญาไปใชเพื่อการพัฒนาผลิตภัณฑของตนใหมีสมรรถนะการทํางานไดอยางเต็มที่ ไมตองเสียเวลามาตรึกตรอง
6
เรื่องของการเชื่อมโยงสัญญาณกับหนวยประมวลผลหรือบัส ที่มีการพัฒนาออกรุนใหมๆ ออกมาอยูตลอดเวลาใหเปลือง
สมองเลย
มาตรฐาน PCI ยืนยันที่จะกําหนด
ความเร็วของบัส PCI bus ไวที่ขนาด 33 MHz แมวา
ปจจุบันผลิตภัณฑหนวยประมวลผลกลางสวนใหญจะไดรับ
การพัฒนาขีดความสามารถในการประมวลผลใหมีความเร็ว
เกินเลยขนาด 33 MHz ไปแลว ทั้งนี้ก็เพราะวาหนวย
ประมวลผลกลางสามารถทํางานเร็วกวาความเร็วของบัสนํา
สัญญาณไดโดยไมมีปญหา ดวยชิป host-to-PCI bridge
จะทําหนาที่แยกเอาสวนบัสนําสัญญาณของหนวย
ประมวลผล (processor bus) ออกเสียจากบัสนําสัญญาณ
PCI bus
นอกจากการแยก processor bus ออก
จาก PCI bus แลว ชิป host-to-PCI bridge ยังมี
ความสามารถจัดเก็บขอมูลไวในรูปหนวยความจําบัฟเฟอร (buffering) อีกดวย เพื่อเพิ่มประสิทธิภาพในการทํางานของ
ระบบคอมพิวเตอร และบัสนําสัญญาณ โดยเฉพาะเมื่อตองใชงานรวมกับหนวยประมวลผลที่ไมมีความสามารถในการ
บันทึกขอมูลทีละมากในรวดเดียว (burst write) อยางเชน ไมโครโปรเซสเซอร 80486 ฯลฯ
ทั้งนี้และทั้งนั้น เนื่องจากบัส PCI bus ไมไดถูกออกแบบมาใหรองรับการทํางานแบบ burst write
ดังนั้น ชิป host-to-PCI bridge จึงตองทําหนาที่รับเอาขอมูลที่ทยอยมาจากหนวยประมวลผล (non burst-write) มา
เก็บไวในหนวยความจําบัฟเฟอรของตน กอนที่จะอัดเอาขอมูลที่วานั้นผานบัส PCI bus ไปในรวดเดียวเลย (burst-write)
นอกจากนั้น ชิป host-to-PCI bridge ยังประกอบไปดวยการทํางานดานลอจิกอีกหลายอยางดวยกัน อยางเชน สวน
ควบคุมหนวยความจําแคช (cache controller) และ กลไก centralized arbitration mechanism ของบัส PCI bus
ฯลฯ
กลาวโดยสรุปแลว มาตรฐาน PCI ที่กําเนิดขึ้นมาใหมนี้มิไดมีวัตถุประสงคเพื่อการใชแทนมาตรฐานบัส
ขยาย (expansion bus standard) ซึ่งกําลังเปนที่นิยมอยูในขณะนี้ มันเพียงแตผสมผสาน PCI bus เขากับรูปแบบบัส
นําสัญญาณมาตรฐานที่มีอยูเดิม และผูผลิตคอมพิวเตอรสามารถติดตั้งรูปแบบบัสนําสัญญาณแบบเดิมอยาง ISA, EISA,
Micro Chanel, NuBus หรือ SCSI เขากับบัสนําสัญญาณ PCI bus ที่พัฒนาขึ้นมาใหมไดโดยเพียงแตอาศัยความ
ชวยเหลือจากชิป host-to-PCI bridge เทานั้น
เพราะถึงแมวาบัสนําสัญญาณแบบเดิมๆ จะมีสมรรถนะในการสงผานขอมูลดอยกวา PCI bus แตมันก็
เปนรูปแบบที่ไดรับการติดตั้งใชงานอยูโดยทั่วไปอยูแลวในปจจุบัน ถาตองเลิกใชเสียหมดเลยเพียงเพื่อจะมาใช PCI bus
คงไมมีใครเขาเอาดวย การออกแบบบัสนําสัญญาณ PCI bus ใหสามารถทํางานรวมกับระบบบัสนําสัญญาณที่ดอยกวา
(downward compatability) จึงนับไดวาเปนกุศโลบายที่ชาญฉลาดของทีมงานผูออกแบบมาตรฐาน PCI ในการที่จะทํา
ใหระบบมาตรฐาน PCI ไดรับการยอมรับโดยเหลาบริษัท ผูผลิตผลิตภัณฑคอมพิวเตอรทั่วไป
7
เปาหมาย และที่มาของระบบบัส PCI bus
การออกแบบมาตรฐานบัสนําสัญญาณ PCI bus นั้นมีเปาหมายหลักอยูสามประการดวยกัน ประการ
แรก มันจะตองเปนรูปแบบการติดตอกับบัส Local bus ซึ่งออกมาจากหนวยประมวลผลกลางโดยตรงไดอยางมี
ประสิทธิภาพมากที่สุด ในราคาที่ต่ําที่สุด (Low-cost, high-performance Local bus interface), ประการที่สอง มัน
จะตองมีความสามารถในการกําหนดคา configurations ของอุปกรณและแผงวงจรตางๆ ที่ตอเพิ่มเขามาในมาตรฐาน
PCI ไดโดยอัตโนมัติ (Autonomic configurations of components and add-in boards), และประการสุดทาย
มาตรฐาน PCI ที่ไดรับการออกแบบมานั้นจะตองมีความยืดหยุนเพียงพอที่จะสามารถรองรับอุปกรณรอบขางประเภท
ใหมๆ ที่จะไดรับการออกแบบมาในอนาคตไดดวย (Future peripherals support)
ดวย
วัตถุประสงคประการแรก ที่
ตองการออกแบบให
มาตรฐาน PCI มีราคาไมแพง
มากเกินไปนั้น จุดแรกที่
ทีมงานผูออกแบบมาตรฐาน
PCI จึงมุงเนนไปที่การลด
จํานวนขา (pins) และสายสัญญาณตางที่ใชในการเชื่อมโยงสัญญาณ เพราะตามปรกติแลวอุปกรณอิเล็กทรอนิกส
ทั้งหลายที่เกี่ยวของกับระบบบัสนําสัญญาณ ไมวาจะเปนหัวตอคอนเนคเตอร, ไอซีชิป และชิ้นสวนตางๆ บน
แผงวงจรหลัก ฯลฯ จะมีราคาคางวดแพงขึ้น และขนาดใหญโตขึ้นหากวาตองประกอบไปดวยขาจํานวนมากๆ หรือตอง
ติดตอกับสายสัญญาณจํานวนมากๆ ของบัสนําสัญญาณ
วิธีการลดจํานวนขาของอุปกรณ และจํานวนสายนําสัญญาณของมาตรฐาน PCI นั้นกระทําโดยการ
เลือกใชบัสนําสัญญาณแบบ Multiplexed data & address bus ซึ่งสงผลใหมาตรฐาน PCI สามารถใชจํานวนขาเพียง
47 ขาสําหรับการติดตอในสวน PCI target และใชการติดตอแบบ 49 ขาในสวนของ PCI master และถึงแมวาจะใช
จํานวนสายสัญญาณนอยลง แตอุปกรณตางๆ ในมาตรฐาน PCI ก็สามารถรองรับการทํางานของระบบไดอยางมี
ประสิทธิภาพ (ดังแสดงในรูปที่ 1)
รูปที่ 1 แสดงรูปแบบของขา (pins) และการอินเทอรเฟซสัญญาณ (signal interface) ของอุปกรณตามมาตรฐาน PCI ซึ่ง
ประกอบไปดวยสวนของขาที่จําเปนตองใชสําหรับการติดตั้ง PCI bus (required pins) และสวนของขาที่เปนสวน
เสริม (optional pins) สําหรับการติดตั้งระบบบัสแบบ 64 บิท และสําหรับรองรับหนวยความจําแคช ฯลฯ
สําหรับแผงวงจรที่จะนํามาติดตั้งเพิ่มเติมใหกับระบบคอมพิวเตอร (add-in boards) นั้น ระบบบัส
มาตรฐาน PCI จะกําหนดไวสองขนาด คือขนาดมาตรฐานความยาว 12 นิ้ว และขนาดสั้น (ยาวประมาณ 7 นิ้ว) โดยบัส
8
PCI bus จะอนุญาตใหติดตั้งเพิ่มไดไมเกิน 10 โหลด (คาโหลดของบัสมีวิธีคิดดังนี้ คือ แตละไอซีชิปบนแผงวงจรหลักคิด
เทียบไดเทากับ 1 โหลด ในขณะที่แตละแผงวงจรที่ติดตั้งเสริมเขามาบนสล็อตจะคิดเปน 2 โหลดตอหนึ่งแผง)
ดังนั้น สมมติวาบนแผงวงจรหลักมีอุปกรณที่ติดตั้งอยูในรูปไอซีชิปอยู 4 ตัวอยูแลว ระบบบัส PCI bus
ก็จะอนุญาตใหผูใชคอมพิวเตอรสามารถติดตั้งแผงวงจรเพิ่มเขามาไดอีก 3 แผง หรืออีกหกโหลดเทานั้น หากผูใช
คอมพิวเตอรดื้อดึงติดตั้งโหลดเขาไปเกินกวาที่ระบบบัส PCI bus จะรองรับได ก็จะมีผลไปรบกวนการทํางานของสวน
กําหนดเวลาใชงานของอุปกรณ (timing specifications) อันจะนําไปสูความเสียหายของระบบคอมพิวเตอรโดยรวมได
และเพื่อใหมาตรฐาน PCI สามารถครอบคลุมไปถึงอุปกรณที่ใชคาความตางศักยขนาด 3.3 โวลตได
กลุม PCI SIG จึงไดมีการระบุขอกําหนด 3.3-V PCI specifications สําหรับอุปกรณคอมพิวเตอรที่ใชคาความตางศักย
ขนาด 3.3 โวลต ออกมาดวยตางหาก นอกเหนือไปจากมาตรฐานเดิมที่ใชคาความตางศักย 5 โวลต (ปจจุบันเหลาบริษัท
อุตสาหกรรมอิเล็กทรอนิกสทั้งหลายตางมีแนวโนมที่จะเปลี่ยนมาตรฐานสัญญาณดิจิตัลจากเดิมที่เปน 5 โวลต ไปใชขนาด
3.3 โวลตแทน)
ดวยการระบุคากําหนดความตางศักยไวสองคานี้ ทําใหผลิตภัณฑ
แผงวงจร และสล็อตที่ใชในมาตรฐาน PCI จําเปนตองไดรับการออกแบบมาเพื่อการใช
งานกับคาความตางศักยที่เหมาะสมของตนเทานั้น คือ แผงวงจร 5 โวลตก็ตองใชกับ
สล็อตแบบ 5 โวลต ในขณะที่สล็อตแบบ 3.3 โวลตก็ตองใชกับแผงวงจร 3.3 โวลต
เชนเดียวกัน อยางไรก็ตาม เพื่อหลีกเลี่ยงความสับสนอันเนื่องมาจากการเสียบ
แผงวงจรผิดสล็อตทางกลุม PCI SGI จึงเรียกรองใหเหลาบริษัทผูผลิตแผงวงจรหันมาใช
มาตรฐานเดียวกัน หรือไมอยางนั้นก็นาจะผลิตแผงวงจรใหสามารถใชไดกับสล็อตทั้ง
สองระดับความตางศักยเลย
รูปที่ 2 แสดงลักษณะแผงวงจรเสริม (add-in boards) สามแบบ แบบ 5 โวลต (ซาย) ,แบบ 3.3 โวลต (ขวา) และแบบ
ที่สามารถใชไดกับทั้ง 3.3 โวลต และ 5โวลต (กลาง) ที่ทางกลุม PCI SIG กําลังเรียกรองใหเหลาบริษัทผูผลิตแผงวงจร
ทั้งหลายหันมาใช
มาตรฐาน PCI จําแนกพื้นที่แอดเดรสตําแหนงที่อยู (address space) ออกเปนสามประเภท คือ เปน
memory space, I/O space และ Configuration space โดย configuration space นั้นจะเปนพื้นที่จัดเก็บขอมูล
ขนาด 256 ไบทภายในอุปกรณ PCI device แตละตัว ซึ่งใชสําหรับจัดเก็บขอมูลเกี่ยวกับรายละเอียดของตัวอุปกรณนั้นๆ
ตัวอยางของขอมูลที่ถูกจัดเก็บไวในสวน configuration space นี้ก็ไดแกคารหัสชนิด (type code) ซึ่งแสดงใหระบบ
ทราบวาอุปกรณดังกลาวนั้นมีการทํางานควบคุมหนวยความจําสํารอง, ควบคุมการอินเทอรเฟซกับเน็ตเวิรก, ควบคุมสวน
หนาจอ, หรือควบคุมอุปกรณฮารดแวรอื่นๆ อยูหรือไม ?
ดวยวิธีการระบุคารหัสชนิดไวภายใน Configuration space ของแตละอุปกรณดังกลาว มาตรฐาน PCI จึงสามารถ
รองรับอุปกรณ ประเภทที่มีการทํางานหลายๆ อยาง (multifunctional device) ไดทีละหลายๆ ตัวไดอยางไม
มีปญหา ตราบใดที่ยังมีการตอเชื่อมโยงสัญญาณทางกายภาพ (physical connection) เขากับบัส PCI bus เพียงอัน
9
เดียว ยกตัวอยางเชน ไอซีชิปตัวหนึ่งอาจจะสามารถรองรับไดทั้งการเชื่อมโยงสัญญาณแบบ SCSI และการติดตอกับ
Ethernet
นอกจากคารหัสชนิด (type code) แลว ภายในสวน Configuration space ยังประกอบไปดวย คา
รีจิสเตอร PCI control, status, และ latency timer registers ; ตําแหนง expansion ROM ของอุปกรณ ; และ คา
รีจิสเตอร base-address registers เวลาที่ผูใชเปดเครื่องคอมพิวเตอรขึ้นใชงาน ระบบจะตรวจเช็คแสกนไปตามพื้นที่
configuration space ของอุปกรณทุกๆ ตัวที่ตออยูกับบัส PCI bus หลังจากแสกนครบแลวระบบก็จะกําหนดคา
base address ที่เฉพาะตัว และกําหนดระดับความสําคัญในการอินเทอรรัพท (interupt level) ใหกับอุปกรณแตละตัว
นั้น
สําหรับสวน expansion ROM ของอุปกรณ PCI
device นั้น ก็จะประกอบไปดวยรหัสที่ใชกระตุนอุปกรณ (initialize
code) โดยขอมูลที่บรรจุอยูในหนวยความจํา ROM ที่วานั้นจะถูก
จัดเรียงไวในรูปแบบฟอรแมทของ little endian (หรือที่รูจักกันอีก
ชื่อวาเปนฟอรแมทแบบ reverse-byte ordering ซึ่งจัดเรียงใหไบท
ที่มีนัยสําคัญนอยที่สุดอยูในตําแหนงหนาสุด) แตไมไดถูกออกแบบให
ปกปองตนเองจากการถูกเรียกใชขอมูลจากหนวยประมวลผลอื่นๆ
นอกจากนั้นตัวหนวยความจํา expansion ROM ของมาตรฐาน PCI ยังสามารถจัดเก็บขอมูลรหัสที่
แตกตางกันออกไปไดดวย ทําใหระบบสามารถใชขอมูลใน ROM ไปกระตุนเรียกเอาอุปกรณที่ออกแบบมาเพื่อใชกับ
หนวยประมวลผลซึ่งมีโครงสรางทางสถาปตยตางกันขึ้นมาใชได (different architecture devices initialization) อัน
สงผลใหระบบมาตรฐาน PCI สามารถรองรับอุกรณฮารดแวรตางๆ ที่ตอพวงเขามาไดโดยอัตโนมัติ ไมตองไปปรับแตง
อะไรใหยุงยากอีก หรือจะเรียกวาเปนระบบเสียบแลวเลนไดเลย (plug-and-play system) ก็คงได
หลากหลายประสิทธิภาพของระบบบัส PCI bus
การทํางานแตละอยางภายในระบบ PCI bus (PCI transaction) นั้น ดําเนินไประหวางสวน Master
ซึ่งควบคุมบัส และสวน Target ซึ่งเปนเปาหมายปลายทางของบัส โดยคําวา Master และ Target นี้เปนคําศัพท
เฉพาะตัวของมาตรฐาน PCI เอง ตัว Master หมายถึงอุปกรณในระบบที่สามารถควบคุมบัส และกระตุนใหมีการเขาถึง
หนวยความจําเพื่อเรียกเอาคําสั่งดําเนินการขึ้นมาทํางานได เชน หนวยประมวลผล หรือวงจรควบคุมบัส bus-
mastering SCSI controller ฯลฯ
ในขณะที่คําวา target ก็จะหมายถึงอุปกรณที่ถูกควบคุมทั้งหลาย (slave devices) จะทําอะไรทีก็เปน
ผลมาจากการตอบสนองตอคําสั่งดําเนินการจาก master เทานั้น อยางเชน หนวยความจํา, หรือวงจรควบคุมหนาจอ
VGA controlller ฯลฯ ทั้งนี้ระบบบัส PCI bus ทําการสงผานขอมูลไปมาระหวาง Master และ Target ในรูปลักษณ
ของการอานและบันทึกขอมูลแบบรวดเดียวจบ (burst read and write) เพื่อผลในการทํางานที่มีประสิทธิภาพสูงที่สุด
สําหรับการทํางานของบัสตามปรกติ (normal bus access) นั้น การสงผานขอมูลแตละครั้งจะเกิดขึ้น
ไดจําเปนตองมีคาแอดเดรสที่อยูใหมเสมอ(one address for single transfer) แตสําหรับการสงผานขอมูลแบบรวด
10
เดียวจบ (burst transfer) ของมาตรฐาน PCI แลว ระบบบัสจะไดรับคาแอดเดรสที่อยูเพียงคาเดียวเทานั้น หลังจากนั้น
ระบบบัส PCI bus จะดําเนินการสงผานขอมูลหลายๆ ครั้งติดตามกันไปไดเลย (one address for multiple
transfers)
โดยการสงผานขอมูลแบบ Burst transfer ของมาตรฐาน PCI นี้ จะเริ่มดวยสวน address phase
หนึ่งเฟสกอน แลวจึงตามมาดวยสวน data phase อีกหนึ่งเฟส หรือมากกวาหนึ่งเฟส ทําใหแตละเฟสของ Data
phase สามารถถูกสงผานไปไดระหวางแตละชวงคาบสัญญาณนาฬิกา (clock peroid) อันสงผลใหระบบมาตรฐาน PCI
สามารถจัดสงขอมูลดวยความเร็ว 132 Mbps ผานไปตามบัสขนาด 32
บิท หรือดวยความเร็ว 264 Mbps ผานไปตามบัสขนาด 64 บิทได
(การสงผานขอมูลแบบ Burst transfer นี้อาจจะเปนการสงผานขอมูล
ไปยังหนวยความจํา หรือไปยังสวน I/O ก็ได)
มีขอสังเกตุอีกอยางวา การสงผานขอมูลแบบ Burst
transfer ของมาตรฐาน PCI นี้จะไมมีขอจํากัดในเรื่องระยะความยาว
ของขอมูลที่จัดสง (indefinite burst length) ซึ่งตางไปจาก
โครงสรางทางสถาปตยของระบบอื่นๆ ที่มักจะมีระยะความยาวของ
ขอมูลที่จัดสงไปอยางชัดเจนแนนอน (limited, fixed burst length)
ดังนั้น การสงผานขอมูลแบบ Burst transfer ของมาตรฐาน PCI จะ
ดําเนินตอเนื่องกันไปจนกวาตัวอุปกรณ Master หรือ target จะรอง
ขอใหหยุด หรือจนกวาจะมีอุปกรณรอบขางชนิดอื่นๆ ที่มีศักดศรี
เหนือกวา (higher priority) รองขอใชบัส
แตละอุปกรณ PCI device จะมีการทํางาน Latency timer ซึ่งทําหนาที่สํารวจตรวจสอบดูชวงเวลา
ยาวนานที่สุดที่ตัวอุปกรณเองไดรับอนุญาตใหสามารถเขามาใชบัส PCI bus ได โดยการทํางาน latency timer นี้จะจะ
เขาถึงบัสผานทาง configuration space และถูกโปรแกรมไวโดยหนวยประมวลผล ทําใหหนวยประมวลผลสามารถ
ปรับแตงการทํางานภายในระบบใหมีประสิทธิภาพและความเหมาะสมมากที่สุด (system performance
optimization) ดวยการโปรแกรมชวงเวลา latency ที่อุปกรณ PCI device แตละตัวจะเขามาใชบัสใหเปนไปอยาง
เหมาะสม
เวลาที่มีการสงผานขอมูลแบบ Burst transaction ระหวางอุปกรณ PCI device เกิดขึ้นนั้น ตัว
อุปกรณ Master ซึ่งทําหนาที่ควบคุมบัสจะเปนผูระบุถึงรูปแบบของการสงผานขอมูล (transaction type) โดยผานทาง
คําสั่ง bus command (ดังแสดงในรูปที่ 3) ซึ่งปรากฏอยูบนเสน Command/byte enable (C/BE[3::0]#) ภายในชวง
เฟส address phase ของการสงผานขอมูล (ดังแสดงในรูปที่ 4)
รูปที่ 3 แสดงรายละเอียด และความหมายของรหัสคําสั่ง Bus command ซึ่งอุปกรณ Master ใชระบุถึงรูปแบบการ
สงผานขอมูล
11
รูปที่ 4 แสดงรูปแบบพื้นฐานในการอาน และบันทึกขอมูลผานบัส PCI bus ซึ่งเกิดขึ้นในชวงหนึ่งเฟรม อันประกอบดวย
หนึ่ง address phase และ สาม data phase โดยมีคาคําสั่งระบุรูปแบบการสงผานขอมูล Bus command ปรากฏ
อยูในสวน C/BE line
การเพิ่มประสิทธิภาพการทํางานของระบบคอมพิวเตอรยังสามารถกระทําไดอีกทางหนึ่งดวยการลด
ชวงเวลา Overhead ซึ่งบัสอยูระหวางการถูกจองใชงาน แตไมมีการสงผานขอมูลเกิดขึ้นจริงระหวางนั้น เพราะตาม
ปรกติเวลาที่อุปกรณ PCI device แตละตัวจะเขาไปเขาถึงบัส PCI bus ได ตัวมันตองรองขอใชบัสผานทาง central
arbiter ดวยสัญญาณ REQ (request signal) เมื่อ central arbitor ซึ่งเปนการทํางานชิป host-to-PCI bridge ไดรับ
สัญญาณ REQ จากอุปกรณ PCI device มันก็จะสงสัญญาณอนุญาต GNT (grant signal) ออกมา
อยางไรก็ตาม ระหวางที่ central
arbiter ซึ่งทําหนาที่เหมือนเปนนายหนาหรือตัวกลางคอย
ดําเนินการติดตอระหวางอุปกรณ PCI device กับบัสทํา
การจัดวางการติดตอของแตละอุปกรณ PCI device เขา
กับบัส (arbitration process) อยูนั้น มันก็ทําใหบัสตอง
เสียเวลาอันมีคาไปเปลาปลี้ๆ เสียหลายรอบสัญญาณ
นาฬิกาอยูเหมือนกัน ดังนั้นเพื่อลดปญหาการสูญเปลา
ของเวลา มาตรฐาน PCI จึงอนุญาตให central arbiter
ทําการจัดวางการติดตอของอุปกรณถัดไปไดเลยในระหวาง
ที่การสงผานขอมูลของอีกอุปกรณหนึ่งกําลังดําเนินอยู
ในสวนของรูปแบบการสงผานขอมูลนั้น ระบบบัส PCI bus ยังสามารถจัดสงขอมูลไดทั้งแบบทีละ 32
บิท และทีละ 64 บิท ขึ้นอยูกับวามาตรฐาน PCI ที่ตอพวงอยูกับบัส PCI bus มีการรองรับวิธีสงผานขอมูลทีละ 64 บิท
หรือไม โดยเริ่มจากอุปกรณ master จะตองจัดสงสัญญาณ REQ64 และ ACK64 ไปยังอุปกรณ target ดูกอนวา ตัว
อุปกรณ Target นั้นมีความสามารถในการรับขอมูลทีละ 64 บิทหรือไม ถาตัวอุปกรณ target สามารถรับขอมูลทีละ 64
บิทได การสงผานขอมูลทีละ 64 บิทจึงจะเกิดขึ้นได
สวนอุปกรณmasterของมาตรฐาน PCI นั้นจะสามารถรองรับวิธีการกําหนดตําแหนงแอดเดรสไดทั้ง
ชนิด 32 บิท และชนิด 64 บิท (both 32 & 64 bit addressing) โดยไมจําเปนวามันจะสามารถรองรับเสนทางการ
สงผานขอมูลทีละ 32 หรือ 64 บิท (32 bit or 64 bit data path ?) ตรงตามวิธีการกําหนดคาตําแหนงแอดเดรสของมัน
หรือไม อีกทั้งมันยังไมจําเปนตองรับรูดวยวาอุปกรณ target ที่มันติดตอดวยนั้นมีการรองรับการจัดสงขอมูลแบบใด ?
(แบบ 32 บิท หรือ 64 บิท)
เวลาที่อุปกรณ master จัดสงขอมูลไปยังอุปกรณ target มันจะตองเสนอแอดเดรสตําแหนงที่อยูใน
รูปแบบฟอรแมท dual-address-cycle command ที่ตัวอุปกรณ target ทั้งชนิด 32 บิท และชนิด 64 บิทสามารถ
รองรับไดทั้งคู โดยรูปแบบฟอรแมทของการกําหนดตําแหนงแอดเดรสแบบ dual-address-cycle command ที่วานั้น
32 บิทแรก (first 32 bit address) ของคาตําแหนงที่อยูแบบ 64 บิทจะถูกจัดวางไวบนสวนลาง 32 บิทของบัส (lower
12
32 bit of bus) และอีก 32 บิทที่เหลือของตําแหนงที่อยูแบบ 64 บิท จะถูกจัดวางไวสวนบน 32 บิทของบัส (upper 32
bit of bus)
นอกจากจะแบงสวนบัสสงผานสัญญาณออกเปนสองสวน คือ บน 32 บิท, และลาง 32 บิทแลว การ
กําหนดตําแหนงแอดเดรสแบบ dual-address-cycle command ยังจัดแบงการสงผานขอมูลแอดเดรสออกเปนสองรอบ
อีกดวย โดยรอบแรกก็เปนการสงผานในลักษณะที่กลาวไปแลว สวนรอบที่สองก็เปนจัดสงเฉพาะขอมูลแอดเดรส 32 บิท
หลัง ที่เคยสงไปแลวทาง 32 บัสบนในรอบแรก แตพอมาสงในรอบสองนี้เปลี่ยนมาใชสงทาง 32 บัสลางแทน
ดวยวิธีการแบงคาแอดเดรสออกเปนสองสวน และจัดสงขอมูลแอดเดรสออกไปสองครั้งก็ทําให dual-
address-cycle command สามารถรองรับไดเสมอไมวาตัวอุปกรณ target จะเปนแบบ 32 บิท หรือ 64 บิท หากตัว
อุปกรณ target เปนแบบ 32 บิท มันก็รับขอมูลแอดเดรสที่สงมาเฉพาะ 32 บิทของบัสลางเทานั้น แตรับสองครั้ง ครั้ง
แรกก็รับ 32 บิทแรก ครั้งที่สองก็รับ 32 บิทหลัง สวนในกรณีที่อุปกรณ target เปนแบบ 64 บิท มันก็สามารถรับขอมูล
แอดเดรสทั้งบัสบนบัสลางไดภายในรอบแรกทีเดียวไปเลย ไมตองมารับขอมูลแอดเดรสในรอบที่สอง
อนาคตของมาตรฐาน PCI
ในอดีตที่ผานๆ มานั้น ระบบมาตรฐานการอินเทอรเฟซระหวางอุปกรณตางๆ ภายในระบบ
คอมพิวเตอรมักจะไดรับการออกแบบขึ้นมาดวยวัตถุประสงคเพื่อการใชงานรวมกับอุปกรณตางๆ ที่มีอยูในทองตลาดเปน
หลัก ซึ่งก็เลยสงผลใหมาตรฐานการอินเทอรเฟซเหลานั้นมักจะลาสมัยไปอยางรวดเร็ว เพราะกวามาตรฐานดังกลาวจะ
ไดรับการยอมรับ ผลิตภัณฑอุปกรณคอมพิวเตอรตางๆ ทั้งฮารดแวรและซอฟทแวรก็มักจะมีการพัฒนาเปลี่ยนแปลงไป
จากเดิมแลว
แตสําหรับมาตรฐาน PCI ที่ไดกลาวมาในบทความนี้เปนรูปแบบการอินเทอรเฟซที่ไดรับการออกแบบ
โดยคํานึงถึงรูปแบบของอุปกรณคอมพิวเตอรในอนาคตเปนสําคัญ จึงมีการเผื่อที่วางในอนาคตไวคอนขางมากสําหรับที่
มาตรฐาน PCI จะสามารถพัฒนาตอไปไดอีก มีการเลือกขนาดแบนดวิดทที่สามารถใชรวมกับเครื่องคอมพิวเตอรแทบทุก
ชนิดตั้งแตเครื่องคอมพิวเตอรพกพาธรรมดา ไปจนถึงเครื่อง
เวิรกสเตชั่น หรือเครื่องเซิรฟเวอรประสิทธิภาพสูงๆ ราคา
แพงๆ นั่นเลยทีเดียว
สวนการที่แผงวงจรหลักของเครื่อง
คอมพิวเตอรในระบบมาตรฐาน PCI ตองมีไอซีชิปติดตั้งเขา
มาอีกหลายๆ ตัว อันสงผลใหสิ้นเปลืองเนื้อที่บน
แผงวงจรหลัก และมีราคาแพงขึ้นไปกวาเดิมนั้น แมวา
อาจจะนับเปนขอเสียของระบบ PCI bus ได แตมันก็เปน
รูปแบบที่ไดรับการยอมรับเปนมาตรฐานแลว อันจะสงผล
ใหชิ้นสวนวงจรเหลานี้มีแนวโนมที่จะถูกพัฒนาใหมีขนาด
เล็กยอมลง และมีราคาถูกลงไปโดยปริยาย ยิ่งถาติดตาม
ขาวสักหนอยจะพบวาเมื่อเร็วๆ นี้บริษัท DEC ซึ่งเปนหนึ่งใน
13
สมาชิดของกลุม PCI SIG ไดออกผลิตภัณฑชิปหนวยประมวลผล DECchip 210066 RISC processor ซึ่งติดตั้งระบบบัส
PCI bus มาไวภายในตัวชิปดวยออกมาแลว (เปนผลิตภัณฑที่นาสนใจมากสําหรับเหลาผูผลิตเครื่องคอมพิวเตอรโนตบุค
เพราะมันทําใหสามารถลดขนาดของแผงวงจรหลักลงไปไดอยางมาก)
กลาวโดยสรุปแลว ระบบบัสมาตรฐาน PCI นี้ไดนํามาซึ่งคุณประโยชนแกอุตสาหกรรมคอมพิวเตอรใน
หลายๆ ระดับดวยกัน สําหรับกลุมผูผลิตเครื่องคอมพิวเตอรพีซี มาตรฐาน PCI จะเปดโอกาสใหสามารถออกแบบ
ผลิตภัณฑใหมีประสิทธิภาพสูงขึ้นกวาเดิมไดอยางมากจากการที่มันสามารถสงผานขอมูลไดเร็วขึ้น และดวยความสามารถ
ในการกําหนดรูปแบบ
ฮารดแวรอัตโนมัติของมัน
ก็ยังทําใหเราสามารถ
ติดตั้งเอาอุปกรณฮารดแวร
ตางๆ เขามาในระบบได
อยางสะดวก (plug-and-
play system)
สวนใน
กลุมของผูผลิตเครื่อง
คอมพิวเตอรระดับ
เวิรกสเตชั่นนั้น ถึงแมวา
ตามปรกติมันจะมี
สมรรถนะความเร็วในการ
ทํางานสูงกวาระบบบัส
มาตรฐาน PCI อยูแลว แตการติดตั้งบัส PCI bus ก็ทําใหมันสามารถเขาถึงอุปกรณคอมพิวเตอรมาตรฐานที่ต่ํากวา ซึ่ง
มีราคาถูกกวาเดิมมากๆ (low-cost industry-standard components) ที่ใชกับเครื่องคอมพิวเตอรตระกูลพีซีไดดวย
ดังนั้น จึงไมนาจะเปนปญหาเลยวาระบบบัสมาตรฐาน PCI นี้จะไดรับการยอมรับจากวงการคอมพิวเตอรหรือไม เพราะ
คําตอบที่มีนั้นมันชัดเจนอยูแลว

More Related Content

Viewers also liked

THE ARMY COMMENDATION MEDAL FT RICH ALASKA
THE ARMY COMMENDATION MEDAL FT RICH ALASKATHE ARMY COMMENDATION MEDAL FT RICH ALASKA
THE ARMY COMMENDATION MEDAL FT RICH ALASKARobert Lloyd Cornelius
 
Портфоліо на атестацію Жименко Н.М.
Портфоліо на атестацію Жименко Н.М.Портфоліо на атестацію Жименко Н.М.
Портфоліо на атестацію Жименко Н.М.Ссс Ттт
 
633.владимирский некрополь старое (князь владимирское) кладбище
633.владимирский некрополь старое (князь владимирское) кладбище633.владимирский некрополь старое (князь владимирское) кладбище
633.владимирский некрополь старое (князь владимирское) кладбищеivanov1566353422
 
Grade 7 history of internet
Grade 7   history of internetGrade 7   history of internet
Grade 7 history of internetRafael Balderosa
 
Internet - History, present and future
Internet - History, present and futureInternet - History, present and future
Internet - History, present and futureMobile88
 

Viewers also liked (7)

THE ARMY COMMENDATION MEDAL FT RICH ALASKA
THE ARMY COMMENDATION MEDAL FT RICH ALASKATHE ARMY COMMENDATION MEDAL FT RICH ALASKA
THE ARMY COMMENDATION MEDAL FT RICH ALASKA
 
Портфоліо на атестацію Жименко Н.М.
Портфоліо на атестацію Жименко Н.М.Портфоліо на атестацію Жименко Н.М.
Портфоліо на атестацію Жименко Н.М.
 
633.владимирский некрополь старое (князь владимирское) кладбище
633.владимирский некрополь старое (князь владимирское) кладбище633.владимирский некрополь старое (князь владимирское) кладбище
633.владимирский некрополь старое (князь владимирское) кладбище
 
Grade 7 history of internet
Grade 7   history of internetGrade 7   history of internet
Grade 7 history of internet
 
History cerone
History ceroneHistory cerone
History cerone
 
Programacion anual 2016
Programacion anual 2016Programacion anual 2016
Programacion anual 2016
 
Internet - History, present and future
Internet - History, present and futureInternet - History, present and future
Internet - History, present and future
 

Similar to PCI local bus

บทที่1
บทที่1บทที่1
บทที่1jibbie23
 
Developcom 3
Developcom 3Developcom 3
Developcom 3paween
 
บทที่ 2-ระบบคอมพิวเตอร์
บทที่ 2-ระบบคอมพิวเตอร์บทที่ 2-ระบบคอมพิวเตอร์
บทที่ 2-ระบบคอมพิวเตอร์Timmy Printhong
 
01 intro computergraphic
01 intro computergraphic01 intro computergraphic
01 intro computergraphicpisandesign
 
วิวัฒนาการ ความเป็นมา แท็บเล็ต โดยนายอดิเทพ ไชยสิทธิ์
วิวัฒนาการ ความเป็นมา แท็บเล็ต โดยนายอดิเทพ ไชยสิทธิ์วิวัฒนาการ ความเป็นมา แท็บเล็ต โดยนายอดิเทพ ไชยสิทธิ์
วิวัฒนาการ ความเป็นมา แท็บเล็ต โดยนายอดิเทพ ไชยสิทธิ์Tum Aditap
 
ประวัติความเป็นมาของคอมพิวเตอร์
ประวัติความเป็นมาของคอมพิวเตอร์ประวัติความเป็นมาของคอมพิวเตอร์
ประวัติความเป็นมาของคอมพิวเตอร์Supitcha Kietkittinan
 
บทที่ 2. ระบบคอมพิวเตอร์
บทที่ 2. ระบบคอมพิวเตอร์บทที่ 2. ระบบคอมพิวเตอร์
บทที่ 2. ระบบคอมพิวเตอร์Pokypoky Leonardo
 
ใบความรุ้ที่ 2ระบบคอมพิวเตอร์สำหรับงานกราฟิก
ใบความรุ้ที่ 2ระบบคอมพิวเตอร์สำหรับงานกราฟิกใบความรุ้ที่ 2ระบบคอมพิวเตอร์สำหรับงานกราฟิก
ใบความรุ้ที่ 2ระบบคอมพิวเตอร์สำหรับงานกราฟิกวาสนา ใจสุยะ
 
eMagazine "G-Box"
eMagazine "G-Box" eMagazine "G-Box"
eMagazine "G-Box" chom-manad
 
NECTEC E-magazine Vol.2
NECTEC E-magazine Vol.2NECTEC E-magazine Vol.2
NECTEC E-magazine Vol.2NECTEC
 
ฮาร์ดแวด์
ฮาร์ดแวด์ฮาร์ดแวด์
ฮาร์ดแวด์sommat
 
ฮาร์ดแวด์
ฮาร์ดแวด์ฮาร์ดแวด์
ฮาร์ดแวด์Nantawoot Imjit
 
ระบบคอมพิวเตอร์
ระบบคอมพิวเตอร์ระบบคอมพิวเตอร์
ระบบคอมพิวเตอร์vgame_emagv
 

Similar to PCI local bus (20)

บทที่1
บทที่1บทที่1
บทที่1
 
Developcom 3
Developcom 3Developcom 3
Developcom 3
 
Computer system
Computer systemComputer system
Computer system
 
บทที่ 21
บทที่ 21บทที่ 21
บทที่ 21
 
บทที่ 2-ระบบคอมพิวเตอร์
บทที่ 2-ระบบคอมพิวเตอร์บทที่ 2-ระบบคอมพิวเตอร์
บทที่ 2-ระบบคอมพิวเตอร์
 
01 intro computergraphic
01 intro computergraphic01 intro computergraphic
01 intro computergraphic
 
วิวัฒนาการ ความเป็นมา แท็บเล็ต โดยนายอดิเทพ ไชยสิทธิ์
วิวัฒนาการ ความเป็นมา แท็บเล็ต โดยนายอดิเทพ ไชยสิทธิ์วิวัฒนาการ ความเป็นมา แท็บเล็ต โดยนายอดิเทพ ไชยสิทธิ์
วิวัฒนาการ ความเป็นมา แท็บเล็ต โดยนายอดิเทพ ไชยสิทธิ์
 
ประวัติความเป็นมาของคอมพิวเตอร์
ประวัติความเป็นมาของคอมพิวเตอร์ประวัติความเป็นมาของคอมพิวเตอร์
ประวัติความเป็นมาของคอมพิวเตอร์
 
Ppp.
Ppp.Ppp.
Ppp.
 
2 evaluation
2 evaluation2 evaluation
2 evaluation
 
บทที่ 2. ระบบคอมพิวเตอร์
บทที่ 2. ระบบคอมพิวเตอร์บทที่ 2. ระบบคอมพิวเตอร์
บทที่ 2. ระบบคอมพิวเตอร์
 
Ch1 com tech
Ch1 com techCh1 com tech
Ch1 com tech
 
ใบความรุ้ที่ 2ระบบคอมพิวเตอร์สำหรับงานกราฟิก
ใบความรุ้ที่ 2ระบบคอมพิวเตอร์สำหรับงานกราฟิกใบความรุ้ที่ 2ระบบคอมพิวเตอร์สำหรับงานกราฟิก
ใบความรุ้ที่ 2ระบบคอมพิวเตอร์สำหรับงานกราฟิก
 
Learnning01
Learnning01Learnning01
Learnning01
 
eMagazine "G-Box"
eMagazine "G-Box" eMagazine "G-Box"
eMagazine "G-Box"
 
NECTEC E-magazine Vol.2
NECTEC E-magazine Vol.2NECTEC E-magazine Vol.2
NECTEC E-magazine Vol.2
 
Com1 2
Com1 2Com1 2
Com1 2
 
ฮาร์ดแวด์
ฮาร์ดแวด์ฮาร์ดแวด์
ฮาร์ดแวด์
 
ฮาร์ดแวด์
ฮาร์ดแวด์ฮาร์ดแวด์
ฮาร์ดแวด์
 
ระบบคอมพิวเตอร์
ระบบคอมพิวเตอร์ระบบคอมพิวเตอร์
ระบบคอมพิวเตอร์
 

More from Surapol Imi

ตำแหน่งทางวิชาการกับคุณภาพอุดมศึกษา
ตำแหน่งทางวิชาการกับคุณภาพอุดมศึกษาตำแหน่งทางวิชาการกับคุณภาพอุดมศึกษา
ตำแหน่งทางวิชาการกับคุณภาพอุดมศึกษาSurapol Imi
 
แนวทางสำหรับผู้ต้องการลดฝุ่นในห้องสะอาด
แนวทางสำหรับผู้ต้องการลดฝุ่นในห้องสะอาดแนวทางสำหรับผู้ต้องการลดฝุ่นในห้องสะอาด
แนวทางสำหรับผู้ต้องการลดฝุ่นในห้องสะอาดSurapol Imi
 
การประมาณราคาก่อสร้างและดูแลห้องสะอาด
การประมาณราคาก่อสร้างและดูแลห้องสะอาดการประมาณราคาก่อสร้างและดูแลห้องสะอาด
การประมาณราคาก่อสร้างและดูแลห้องสะอาดSurapol Imi
 
1ก่อกำเนิดมนุษย์
1ก่อกำเนิดมนุษย์1ก่อกำเนิดมนุษย์
1ก่อกำเนิดมนุษย์Surapol Imi
 
การเปลี่ยนแปลงหลังการตาย
การเปลี่ยนแปลงหลังการตายการเปลี่ยนแปลงหลังการตาย
การเปลี่ยนแปลงหลังการตายSurapol Imi
 
เคล็ดลับวินโดวส์ ตอน เก็บเบี้ยใต้ถุนร้าน
เคล็ดลับวินโดวส์ ตอน เก็บเบี้ยใต้ถุนร้านเคล็ดลับวินโดวส์ ตอน เก็บเบี้ยใต้ถุนร้าน
เคล็ดลับวินโดวส์ ตอน เก็บเบี้ยใต้ถุนร้านSurapol Imi
 
เคล็ดลับวินโดวส์ ไอทีซอฟต์ ปีที่ 7 ฉบับที่ 81 ธ.ค. 2541 87-102
เคล็ดลับวินโดวส์  ไอทีซอฟต์   ปีที่ 7 ฉบับที่ 81 ธ.ค. 2541 87-102 เคล็ดลับวินโดวส์  ไอทีซอฟต์   ปีที่ 7 ฉบับที่ 81 ธ.ค. 2541 87-102
เคล็ดลับวินโดวส์ ไอทีซอฟต์ ปีที่ 7 ฉบับที่ 81 ธ.ค. 2541 87-102 Surapol Imi
 
เมื่อต้องใช้เครื่องแมคอินทอชรันวินโดวส์
เมื่อต้องใช้เครื่องแมคอินทอชรันวินโดวส์เมื่อต้องใช้เครื่องแมคอินทอชรันวินโดวส์
เมื่อต้องใช้เครื่องแมคอินทอชรันวินโดวส์Surapol Imi
 
แนะวิธีเปิดร้านบนอินเทอร์เน็ต
แนะวิธีเปิดร้านบนอินเทอร์เน็ตแนะวิธีเปิดร้านบนอินเทอร์เน็ต
แนะวิธีเปิดร้านบนอินเทอร์เน็ตSurapol Imi
 
ระบบสั่งงานคอมพิวเตอร์ด้วยเสียง
ระบบสั่งงานคอมพิวเตอร์ด้วยเสียงระบบสั่งงานคอมพิวเตอร์ด้วยเสียง
ระบบสั่งงานคอมพิวเตอร์ด้วยเสียงSurapol Imi
 
Personal videoconference system
Personal videoconference systemPersonal videoconference system
Personal videoconference systemSurapol Imi
 
ปกิณกะคดีในแวดวงพีซีปี1998
ปกิณกะคดีในแวดวงพีซีปี1998ปกิณกะคดีในแวดวงพีซีปี1998
ปกิณกะคดีในแวดวงพีซีปี1998Surapol Imi
 
Van หนึ่งในธุรกิจมาแรงของสหรัฐ
Van  หนึ่งในธุรกิจมาแรงของสหรัฐVan  หนึ่งในธุรกิจมาแรงของสหรัฐ
Van หนึ่งในธุรกิจมาแรงของสหรัฐSurapol Imi
 
ศึกหลายด้านของไมโครซอฟท์
ศึกหลายด้านของไมโครซอฟท์ศึกหลายด้านของไมโครซอฟท์
ศึกหลายด้านของไมโครซอฟท์Surapol Imi
 
Telecommuting เมื่อออฟฟิซเป็นฝ่ายวิ่งมาหาคน
Telecommuting เมื่อออฟฟิซเป็นฝ่ายวิ่งมาหาคนTelecommuting เมื่อออฟฟิซเป็นฝ่ายวิ่งมาหาคน
Telecommuting เมื่อออฟฟิซเป็นฝ่ายวิ่งมาหาคนSurapol Imi
 
Realtime computing
Realtime computingRealtime computing
Realtime computingSurapol Imi
 
Psion vs win ce
Psion vs  win ce Psion vs  win ce
Psion vs win ce Surapol Imi
 
สุดยอดประดิษฐกรรมและการค้นพบแห่งปี 96
สุดยอดประดิษฐกรรมและการค้นพบแห่งปี 96สุดยอดประดิษฐกรรมและการค้นพบแห่งปี 96
สุดยอดประดิษฐกรรมและการค้นพบแห่งปี 96Surapol Imi
 
อุปกรณ์ลูกผสมPctv
อุปกรณ์ลูกผสมPctvอุปกรณ์ลูกผสมPctv
อุปกรณ์ลูกผสมPctvSurapol Imi
 
คอมพิวเตอร์ปี 2000
คอมพิวเตอร์ปี 2000คอมพิวเตอร์ปี 2000
คอมพิวเตอร์ปี 2000Surapol Imi
 

More from Surapol Imi (20)

ตำแหน่งทางวิชาการกับคุณภาพอุดมศึกษา
ตำแหน่งทางวิชาการกับคุณภาพอุดมศึกษาตำแหน่งทางวิชาการกับคุณภาพอุดมศึกษา
ตำแหน่งทางวิชาการกับคุณภาพอุดมศึกษา
 
แนวทางสำหรับผู้ต้องการลดฝุ่นในห้องสะอาด
แนวทางสำหรับผู้ต้องการลดฝุ่นในห้องสะอาดแนวทางสำหรับผู้ต้องการลดฝุ่นในห้องสะอาด
แนวทางสำหรับผู้ต้องการลดฝุ่นในห้องสะอาด
 
การประมาณราคาก่อสร้างและดูแลห้องสะอาด
การประมาณราคาก่อสร้างและดูแลห้องสะอาดการประมาณราคาก่อสร้างและดูแลห้องสะอาด
การประมาณราคาก่อสร้างและดูแลห้องสะอาด
 
1ก่อกำเนิดมนุษย์
1ก่อกำเนิดมนุษย์1ก่อกำเนิดมนุษย์
1ก่อกำเนิดมนุษย์
 
การเปลี่ยนแปลงหลังการตาย
การเปลี่ยนแปลงหลังการตายการเปลี่ยนแปลงหลังการตาย
การเปลี่ยนแปลงหลังการตาย
 
เคล็ดลับวินโดวส์ ตอน เก็บเบี้ยใต้ถุนร้าน
เคล็ดลับวินโดวส์ ตอน เก็บเบี้ยใต้ถุนร้านเคล็ดลับวินโดวส์ ตอน เก็บเบี้ยใต้ถุนร้าน
เคล็ดลับวินโดวส์ ตอน เก็บเบี้ยใต้ถุนร้าน
 
เคล็ดลับวินโดวส์ ไอทีซอฟต์ ปีที่ 7 ฉบับที่ 81 ธ.ค. 2541 87-102
เคล็ดลับวินโดวส์  ไอทีซอฟต์   ปีที่ 7 ฉบับที่ 81 ธ.ค. 2541 87-102 เคล็ดลับวินโดวส์  ไอทีซอฟต์   ปีที่ 7 ฉบับที่ 81 ธ.ค. 2541 87-102
เคล็ดลับวินโดวส์ ไอทีซอฟต์ ปีที่ 7 ฉบับที่ 81 ธ.ค. 2541 87-102
 
เมื่อต้องใช้เครื่องแมคอินทอชรันวินโดวส์
เมื่อต้องใช้เครื่องแมคอินทอชรันวินโดวส์เมื่อต้องใช้เครื่องแมคอินทอชรันวินโดวส์
เมื่อต้องใช้เครื่องแมคอินทอชรันวินโดวส์
 
แนะวิธีเปิดร้านบนอินเทอร์เน็ต
แนะวิธีเปิดร้านบนอินเทอร์เน็ตแนะวิธีเปิดร้านบนอินเทอร์เน็ต
แนะวิธีเปิดร้านบนอินเทอร์เน็ต
 
ระบบสั่งงานคอมพิวเตอร์ด้วยเสียง
ระบบสั่งงานคอมพิวเตอร์ด้วยเสียงระบบสั่งงานคอมพิวเตอร์ด้วยเสียง
ระบบสั่งงานคอมพิวเตอร์ด้วยเสียง
 
Personal videoconference system
Personal videoconference systemPersonal videoconference system
Personal videoconference system
 
ปกิณกะคดีในแวดวงพีซีปี1998
ปกิณกะคดีในแวดวงพีซีปี1998ปกิณกะคดีในแวดวงพีซีปี1998
ปกิณกะคดีในแวดวงพีซีปี1998
 
Van หนึ่งในธุรกิจมาแรงของสหรัฐ
Van  หนึ่งในธุรกิจมาแรงของสหรัฐVan  หนึ่งในธุรกิจมาแรงของสหรัฐ
Van หนึ่งในธุรกิจมาแรงของสหรัฐ
 
ศึกหลายด้านของไมโครซอฟท์
ศึกหลายด้านของไมโครซอฟท์ศึกหลายด้านของไมโครซอฟท์
ศึกหลายด้านของไมโครซอฟท์
 
Telecommuting เมื่อออฟฟิซเป็นฝ่ายวิ่งมาหาคน
Telecommuting เมื่อออฟฟิซเป็นฝ่ายวิ่งมาหาคนTelecommuting เมื่อออฟฟิซเป็นฝ่ายวิ่งมาหาคน
Telecommuting เมื่อออฟฟิซเป็นฝ่ายวิ่งมาหาคน
 
Realtime computing
Realtime computingRealtime computing
Realtime computing
 
Psion vs win ce
Psion vs  win ce Psion vs  win ce
Psion vs win ce
 
สุดยอดประดิษฐกรรมและการค้นพบแห่งปี 96
สุดยอดประดิษฐกรรมและการค้นพบแห่งปี 96สุดยอดประดิษฐกรรมและการค้นพบแห่งปี 96
สุดยอดประดิษฐกรรมและการค้นพบแห่งปี 96
 
อุปกรณ์ลูกผสมPctv
อุปกรณ์ลูกผสมPctvอุปกรณ์ลูกผสมPctv
อุปกรณ์ลูกผสมPctv
 
คอมพิวเตอร์ปี 2000
คอมพิวเตอร์ปี 2000คอมพิวเตอร์ปี 2000
คอมพิวเตอร์ปี 2000
 

PCI local bus

  • 1. เจาะลึกระบบบัสนําสัญญาณ PCI local bus สุรพล ศรีบุญทรง บทความ 1996 บัสนําสัญญาณสําหรับเชื่อมโยงขอมูลระหวางหนวยประมวลผลกลางและอุปกรณรอบขาง (expansion bus) ขนาด 16 บิท อยาง IBM's AT (Advanced Technology) expansion bus ซึ่งยังคงมีติดตั้งใชงานอยูในผลิตภัณฑ เครื่องคอมพิวเตอรพีซีหลายๆ ยี่หอในขณะนี้ นับไดวาเปนประดิษฐกรรมโบราณที่มีอายุการใชงานยืนนานมากเมื่อเทียบ กับองคประกอบดานฮารดแวรคอมพิวเตอรชนิดอื่นๆเพราะถานับแตบัสนําสัญญาณ IBM's AT expansion bus ปรากฏ สูโลกคอมพิวเตอรเปนครั้งแรกจนถึงบัดนี้ ก็นับเปนเวลาสิบกวาปแลว เวลาสิบกวาปนี้ถาพูดถึง ผลิตภัณฑอุตสาหกรรมทั่วๆ ไปอาจจะไมถือวานานสัก เทาใดนัก แตเมื่อเปนผลิตภัณฑกลุมคอมพิวเตอรที่มี วิวัฒนาการอยางรวดเร็วมากแลว เวลาสิบกวาปอาจ เทียบไดกับเวลานับเปนรอยปเลยทีเดียว อยางดูแต ผลิตภัณฑเครื่องคอมพิวเตอรในตระกูลพีซีนั้น แคเวลา สิบกวาปก็มีการพัฒนาจากเครื่อง 80286 AT ไปเปนเครื่อง 80386, 80486, และเครื่อง Pentium PC ในปจจุบัน จน เดี๋ยวนี้เราแทบจะหาเครื่องคอมพิวเตอร 80286 AT ซึ่งเปนตนกําเนิดแหงบัสนําสัญญาณ ISA bus ทํายาไมไดอีกแลว แตการที่บัสนําสัญญาณแบบ AT expansion bus หรือที่ปจจุบันรูจัก และเรียกขานกันในชื่อ "ISA bus" (Industry Standard Architecture bus) ยังคงเปนที่ยอมรับใชงานในหมูบริษัทผูผลิตเครื่องคอมพิวเตอรหลายๆ รายนั้น สาเหตุสําคัญก็มาจากการที่มันเปนสวนเชื่อมโยงสัญญาณที่ไมไดมีสวนเกี่ยวของโดยตรงกับการทํางานหลักๆ ใน ระบบคอมพิวเตอร เปนเพียงสวนเชื่อมโยงสัญญาณขอมูลระหวางหนวยประมวลผลกลางกับอุปกรณรอบขางซึ่งยังคงมี ความเร็วในการทํางานคอนขางต่ํา (slow devices) จนบางครั้งออกจะเปนการสิ้นเปลืองงบประมาณเกินไปเสียดวยซ้ํา หากจะนําเอาบัสนําสัญญาณประสิทธิภาพสูงๆ ราคาแพงๆ มาใชรวมกับมัน อยางไรก็ตาม รูปแบบการประมวลของระบบคอมพิวเตอรในปจจุบันไดมีการปรับเปลี่ยนไปจากเดิม เปนอยางมาก มีการนําเอาระบบปฏิบัติการประเภท Multi-tasking OS ซึ่งสามารถดําเนินการประมวลคําสั่งหลายๆ อยางพรอมกันไปในเวลาเดียวกันมาใช ในขณะเดียวกันโปรแกรมประยุกตตางๆ ก็ไดรับการพัฒนาใหมีขนาดใหญโต, มี รูปแบบการทํางานที่หลากหลาย และประสิทธิภาพในการทํางานเพิ่มสูงขึ้นเปนอยางมาก ทําใหปริมาณขอมูลที่ตองถูก สงผานไปมาระหวางหนวยประมวลผลกลางกับอุปกรณรอบขางอื่นๆ ทวีจํานวนขึ้นอยางมากมายเปนหลายสิบ หลายรอย เทาตัว จนทําใหระบบบัสนําสัญญาณที่เคยเพียงพอจนเรียกไดวาเหลือเฟอในอดีตตองกลับกลายเปนวาคับแคบเกินกวาที่ จะรองรับปริมาณขอมูลดังกลาวได อันสงผลใหเหลาบริษัทผูผลิตเครื่องคอมพิวเตอรทั้งหลายจําเปนตองหารูปแบบบัสนําสัญญาณชนิดใหม ที่มีประสิทธิภาพ และขีดความสามารถในการรองรับปริมาณการสงผานขอมูลที่มากขึ้นมาใชแทนบัสนําสัญญาณ ISA bus ซึ่งระบบบัสนําสัญญาณระดับคุณภาพที่ดูเหมือนวาจะเปนที่นาสนใจมากที่สุดในสายตาของผูเชี่ยวชาญคอมพิวเตอรขณะนี้
  • 2. 2 ก็เห็นจะไมมีชนิดใดโดดเดนเกินหนาผลิตภัณฑ " PCI (Peripheral Component Interconnection) local bus ไปได ดังนั้น เพื่อใหทานผูอานมีความเขาใจในระบบบัสนําสัญญาณแบบ PCI local bus ไดเปนอยางดี ผูเขียนจึงขอถือโอกาส ใชบทความนี้เปนที่อธิบายลึกลงไปในรายละเอียดของมัน ปญหาการจราจรสัญญาณขอมูล ดังที่ไดกลาวมาขางตนแลววา หากบริษัทผูผลิตเครื่อง คอมพิวเตอรตองการใหผลิตภัณฑของตนสามารถรองรับการรองรับการ ประมวลผลสมัยใหมไดนั้น พวกเขาไมเพียงแตจะตองเพิ่มประสิทธิภาพ ของหนวยประมวลผลกลาง, และความสามารถในการจัดการกับ หนวยความจําเทานั้น แตยังตองมีการพัฒนาเพิ่มขีดความสามารถในการ สงผานสัญญาณขอมูลไปมาระหวางหนวยประมวลผลกลางกับอุปกรณ ตางๆ ภายในระบบคอมพิวเตอรอีกดวย เพราะลําพังการเพิ่มความเร็วของหนวยประมวลผลกลางแตเพียงอยางเดียวอาจจะทําใหระบบมี ความเร็วในการประมวลผลขึ้นจริง แตการทํางานโดยรวมของระบบคอมพิวเตอรมิไดจํากัดอยูแคการประมวลผลของ หนวยประมวลผลกลาง หรือการสงผานขอมูลระหวางหนวยประมวลผลกลางกับหนวยความจําหลักเทานั้น จําเปนที่ จะตองมีการสงผานขอมูลระหวางหนวยประมวลผลกลางกับอุปกรณประกอบระบบอื่นๆ อยาง ฮารดดิสก หรือสวน ควบคุมหนาจอมอนิเตอร ฯลฯ ดวย ตรงนี้เองที่บัสนําสัญญาณ ISA bus เขามามีผลจํากัดการทํางานของระบบคอมพิวเตอรโดยรวมได เพราะขนาดความกวางสัญญาณ 16 บิทของมันจะสงผลใหการจราจรขอมูลปริมาณมหาศาลตองสะดุดและเคลื่อนตัวไป อยางยากลําบาก (เหมือนสภาพการจราจรคอขวดที่เกิดขึ้นบนถนนวิภาวดีรังสิตของกรุงเทพฯ) ดังนั้น หากยังไมรีบ ดําเนินการแกไขปรับปรุงขยายขนาดความกวางของบัสนําสัญญาณ ถึงจะเพิ่มความเร็วของหนวยประมวลผลกลางขึ้นไป เทาใดก็คงไมทําใหความเร็วโดยรวมของระบบคอมพิวเตอรเพิ่มขึ้นจากเดิมได ทางออกที่งายที่สุดสําหรับปญหาเรื่องการจราจรคอขวดของขอมูล (bottleneck) ภายในเครื่อง คอมพิวเตอรที่ใชระบบบัสนําสัญญาณแบบ ISA bus ก็คือ ใชวิธีการตอเชื่อมอุปกรณรอบขางประเภทที่ตองมีการ เรียกใชบอยๆ เขากับบัสนําสัญญาณภายใน (local bus) อันเปนบัสที่ตอออกมาจากตัวหนวยประมวลผลกลางโดยตรง และมีความเร็วในการสงผานสัญญาณขอมูลไดสูงที่สุดภายในระบบ เชน มีบางผลิตภัณฑเลือกที่จะติดตั้งวงจรควบคุม หนาจอ (graphics chips) หรืออุปกรณรอบขางตัวอื่นๆ ไวบนแผงวงจรหลัก (motherboard) โดยตรงเลย การใชวิธีตออุปกรณรอบขางสําคัญๆ อยางเชน วงจรควบคุมหนาจอ* เขากับตัวหนวยประมวลผลกลาง โดยตรงนี้ แมวาจะทําใหการสงผานสัญญาณขอมูลระหวางสวนควบคุมหนาจอกับหนวยประมวลผลกลางเปนไปอยาง รวดเร็วขึ้นจริง แตมันกลับสงผลเสียติดตามมาถึงสองประการดวยกัน ประการแรก มันทําใหตัวอุปกรณควบคุมหนาจอ นี้ถูกผูกติดไปกับหนวยประมวลผลกลางชนิดตัวติดกันไปตลอด (processor treadmill) เวลาที่มีผลิตภัณฑเครื่อง คอมพิวเตอรที่ใชหนวยประมวลผลกลางความเร็วสูงขึ้นออกสูตลาด มันก็หมายความวาสวน I/O subsystem ของ คอมพิวเตอรตองไดรับการออกแบบใหมหมดตามไปดวยทุกครั้ง
  • 3. 3 ผลเสียประการที่สองของการติดตั้งวงจรควบคุมหนาจอเขากับแผงวงจรหลักโดยตรง เปนผลเสียโดยตรง ตอผูใชคอมพิวเตอรตรงที่มันทําใหผูใชคอมพิวเตอรตองถูกผูกติดกับวงจรควบคุมหนาจอรุนเดิมที่ติดตั้งอยูบน แผงวงจรหลักไปตลอด ไมสามารถเปลี่ยนไปใชวงจรควบคุมหนาจอรุนใหมๆ ที่มีประสิทธิภาพมากขึ้นได ถึงแมวาบางครั้ง สวนของวงจรควบคุมหนาจอที่มีใชอยูนั้นอาจจะลาสมัยไปแลวก็ ตาม เพราะติดขัดวาถาจะเปลี่ยนไปใชของใหมก็อาจจะตอง เปลี่ยนแผงวงจรหลักใหมหมดเลย และปญหานี้ยังสงผลเสีย ทางออมยอนกลับไปยังตัวผูผลิตแผงวงจรควบคุมหนาจอเองอีก ตรงทําใหสามารถจําหนายสินคาไดนอยลง ดังนั้น วิธีการแกไขปญหาการจราจรคอขวด ของขอมูลดวยการตอพวงวงจรควบคุมหนาจอเขากับหนวย ประมวลผลกลางแผงวงจรหลักโดยตรงจึงเปนอันพับฐานไปโดยปริยาย และทางออกที่แยบยลกวาก็ไดถุกพัฒนาขึ้นมา นั่นคือ แทนที่จะตอพวงวงจรควบคุมหนาจอเขากับแผงวงจรหลักโดยตรงก็คงวงจรดังกลาวไวกับสวนแผงวงจรขยาย (expansion board) ตามเดิมนั่นแหละ แตหันไปใชวิธีการปรับปรุงสวนของแผงวงจรหลักเสียใหมใหสามารถเลือก ตอเชื่อมวงจรควบคุมหนาจอเขากับบัสนําสัญญาณสวน local bus ของหนวยประมวลผลกลางดวยการลากสายมาจาก แผงวงจรขยายได ผลจากการคงวงจรควบคุมหนาจอไวที่สวนของแผงวงจรขยายนั้น ก็ทําใหผูใชคอมพิวเตอรสามารถ ปรับเปลี่ยนไปใชวงจรควบคุมหนาจอใหมๆ ที่มีประสิทธิภาพมากขึ้นไดอยางอิสระ และสะดวกสบาย (Upgradivity) ในขณะที่การออกแบบสวนแผงวงจรหลักเสียใหมใหเลือกงตออุปกรณรอบขางเขากับบัส Local bus ได ก็สงผลใหการ ขยับขยายการทํางานของระบบโดยรวมเปนไปอยางอิสระเชนกัน (expandability) ถาจะมีปญหาอยูบางก็ตรงเงื่อนไข ที่วาผูใชคอมพิวเตอรจะตองเลือกซื้ออุปกรณรอบขางที่ออกแบบมาเพื่อการทํางานรวมกับแผงวงจรหลักของตนโดยตรง เทานั้น (ซึ่งก็ไมไดเปนปญหาสลักสําคัญอะไรนัก เพราะตามปรกติผูผลิตคอมพิวเตอรก็มักจะออกแบบผลิตภัณฑของตน ใหสามารถทํางานรวมกับผลิตภัณฑอื่นไดอยางกวางๆ อยูแลว) * ความจริงอาจจะเปนวงจรควบคุมอุปกรณรอบ ขางชนิดอื่นๆ ก็ได แตที่เลือกใชวงจรควบคุมสวนหนาจอ มอนิเตอรก็เพราะวา โปรแกรมประยุกตรุนใหมๆ ในปจจุบัน มักจะมุงเนนไปที่สีสัน และความสมจริงตางๆที่ปรากฏบนหนา จอมอนิเตอร ซึ่งก็สงผลใหมีปริมาณขอมูลที่ใชสําหรับการ แสดงออกบนหนาจอสูงมากขึ้นตามไปดวย จนบางครั้งหากไมมี วงจรควบคุมการแสดงออกบนหนาจอ (graphics accelerator) ที่ดีพอแลว ผูใชอาจจะตองรอเครื่องคอมพิวเตอรใชเวลา สรางภาพบนหนาจอทีละหลายๆ นาทีเลยก็เปนได มาตรฐาน PCI local bus
  • 4. 4 มาตรฐานบัสนําสัญญาณแบบ PCI local bus นั้นเปนรูปแบบการเชื่อมโยงสัญญาณขอมูลสมรรถนะ สูงระหวางแผงวงจรหลัก และแผงวงจรขยายซึ่งไดรับการนําเสนอสูสายตาสาธารณชนครั้งแรกใน Intel Technical Forum ที่ออกในเดือนธันวาคม ป ค.ศ. 1991 หลังจากนั้นมาอีกเกือบครึ่งปมันถึงไดมีการรางระบุขอกําหนดมาตรฐาน ของ PCI local bus ฉบับแรกออกมาในเดือน มิถุนายน ค.ศ. 1992 โดยกลุมคณะกรรมการ "The PCI Steering Committee members" คณะกรรมการ The PCI Steering Committee members นี้ ประกอบไปดวยสมาชิกที่มี ชื่อเสียงอันเปนที่ยอมรับใน หมูผูผลิตผลิตภัณฑ คอมพิวเตอรทั่วๆ ไป อัน ไดแก บริษัท Compaq, บริษัท DEC, บริษัท IBM, บริษัท Intel, และบริษัท NCR ซึ่งตอมา คณะกรรมการดังกลาวก็มีการปรับปรุงเปลี่ยนมาเรื่อยจนกระทั่งกลายมาเปนกลุมที่มีชื่อวา "PCI SIG (PCI Special Interest Group) กรุป" ในเดือนมิถุนายนของปถัดมา (ค.ศ. 1992) พรอมๆ กับที่มาตรฐาน PCI local bus ก็กลายมา เปนมาตรฐานระบบเปดสําหรับผลิตภัณฑคอมพิวเตอรทั่วไป จนกระทั่งเมื่อเดือนเมษายนปที่แลว ขอดําหนดมาตรฐาน PCI local bus (PCI specifications) ฉบับ revision 2.0 ก็ไดถูกจัดรางและตีพิมพออกมาเปนฉบับลาสุด บริษัทผูผลิตผลิตภัณฑคอมพิวเตอรที่ใหการยอมรับในมาตรฐาน PCI local bus ของกลุม PCI SIG นี้ นับไดวามีอยูกวางขวางทั่วไป ที่หลักๆ ก็เห็นจะได บริษัท Apple ที่ประกาศตัวออกมาอยางชัดเจนวาจะใหการสนับสนุน ในมาตรฐาน PCI local bus อยางเต็มที่ รวมทั้งยังมีแผนการที่จะติดตั้งระบบบัสนําสัญญาณแบบ PCI local bus ใน ผลิตภัณฑเครื่องคอมพิวเตอร PowerPC RISC Macintosh รุนใหมที่กําลังจะออกมาของตนดวย (ในผลิตภัณฑ PowerPC Macintosh รุนแรกของบริษัท Apple ยังคงใชบัสนําสัญญาณ NuBus ซึ่งรองรับการทํางานของแผงวงจร ขยาย NuBus peripheral boards อยู) หรืออยางบริษัท DEC (Digital Equibment Corporation) ซึ่งเปนหนึ่งในสมาชิกของกลุม PCI SIG ก็ ยืนยันวาจะมีการนําเอามาตรฐาน PCI local bus เขาไปใชในผลิตภัณฑกลุม Alpha-based systems รวมทั้งยังมีการ ติดตั้งรูปแบบการอินเทอรเฟซแบบ PCI interface ไวบนชิปหนวยประมวลผลความเร็วสูง "DECchip 210066 RISC" ของบริษัท อีกดวย ดวยความสนับสนุนจากเหลาบริษัท ผูผลิตคอมพิวเตอรเหลานี้นี่เองก็เปนเครื่องยืนยันถึงอนาคตอันสดใส ของมาตรฐาน PCI local bus ไดเปนอยางดี จนนาจะเปนที่เชื่อไดอยางแนนอนวามันคงจะไดรับการยอมรับเปน
  • 5. 5 มาตรฐานสําหรับการเชื่อมโยงระหวางอุปกรณประกอบระบบ (component interconect) และมาตรฐานสําหรับระบบ บัสขยาย (expansion-bus standard) โดยทั่วไปภายในระยะเวลาอันสั้นนี้ การที่เหลาบริษัทผูผลิตคอมพิวเตอรใหการตอนรับมาตรฐาน PCI เปนอยางดีนั้น มาจากความจริง อยางหนึ่งวาเทาที่เปนมาในอดีตสวนของบัสนําสัญญาณเปนสวนที่มีวิวัฒนาการนอยมากเมื่อเทียบกับวิวัฒนาการในดาน การประมวลผล และการมุงเนนแตการพัฒนาประสิทธิภาพของหนวยประมวลผลกลางใหมีประสิทธิภาพสูงมากขึ้นไม สามารถจะสงผลใหระบบคอมพิวเตอรโดยรวมมีความเร็วมากขึ้นกวาเดิมไดสักเทาใดนัก ดังนั้น เมื่อมาตรฐาน PCI มีการแยกเอาสวน ติดตอกับอุปกรณรอบขาง (I/O subsystem) ออกมาเสียจากสวน ของหนวยประมวลผลกลาง, หนวยความจําหลัก, และ หนวยความจําแคช (processor/memory/cache subsystem) มันจึงเปนที่สบใจของเหลาวิศวกรผูออกแบบผลิตภัณฑคอมพิวเตอร อยางยิ่ง เพราะทําใหพวกเขาไมตองประสบกับปญหาการผูกยึดติด กับหนวยประมวลผล (processor treadmill) เชนที่เคยเปนมา และนั่นเองที่เปนสวนสงเสริมใหมาตรฐาน PCI ถูกนํามาใชกับผลิตภัณฑคอมพิวเตอรหลายๆ ยี่หอ สวนพื้นฐานสําคัญ (fundamental part) ของมาตรฐาน PCI อยูที่การออกแบบตัวชิป PCI-to-host bridge chip ขึ้นมาทําหนาที่เชื่อมตอบัส PCI bus เขากับบัส Local bus ของหนวยประมวลผลกลาง และเมื่อใดที่ชิป PCI-to-host bridge chip ที่วานี้สําเร็จเรียบรอยถึงขั้นที่มีจําหนายใหเลือกใชโดยทั่วไป หนวยประมวลผลรุนใหมๆ ทั้งหลายก็จะสามารถติดตอกับอุปกรณรอบขางในระบบมาตรฐาน PCI (PCI components access) ไดทุกชนิด และเมื่อ ถึงตอนนั้นก็เทากับมาตรฐาน PCI ไดกาวลวงพนไปสูมาตรฐานที่ไมขึ้นกับหนวยประมวลผล (processor independent standard) อีกตอไปแลว ชิป PCI-to-host bridge chip นี้ก็ถูกออกแบบมาใหสามารถถอดเปลี่ยนไดงายๆ ไมยุงยากอะไร เชน สมมติวาทางบริษัทผูผลิตชิปหนวยประมวลผลมีการออกผลิตภัณฑหนวยประมวลผลรุนใหมออกมา สิ่งที่ผูผลิตเครื่อง คอมพิวเตอรตามมาตรฐาน PCI ตองทําก็มีแคเพียงถอดเปลี่ยนชิป PCI-to-host bridge chip เสียใหมเทานั้น สวน องคประกอบอื่นๆ ในเครื่องคอมพิวเตอรยังสามารถคงไวไดตามเดิมไมตองไปยุงเกี่ยวดวยเลย เนื่องจากมาตรฐาน PCI เปนมาตรฐานการเชื่อมโยงสัญญาณขอมูลระดับ comonent-and-board level bus ดังนั้นจึงสามารถรวมเอามาตรฐานการเชื่อมโยงสัญญาณรูปแบบอื่นๆ อยางเชน ระบบ SCSI bus เขามาไว ภายในมาตรฐาน PCI ไดดวย เพียงแตจะตองใชชิปวงจรควบคุม (controller chip) หรือแผงวงจรควบคุม (controller board) สําหรับการอินเทอรเฟซเขากับบัส PCI bus เทานั้น ดวยวิธีการเชื่อมตอกับบัสนําสัญญาณ PCI bus ดังกลาว เหลาบริษัทผูผลิตอุปกรณรอบขางที่ตอง ติดตอหนวยประมวลผลผาน I/O ports ทั้งหลายในปจจุบัน (I/O component designers) ไมวาจะเปน แผงวงจร กราฟฟก, แผงวงจรอินเทอรเฟซ SCSI (Small computer system interface), หรือแผงวงจรเน็ตเวิรก ฯลฯ สามารถ ทุมเทสติปญญาไปใชเพื่อการพัฒนาผลิตภัณฑของตนใหมีสมรรถนะการทํางานไดอยางเต็มที่ ไมตองเสียเวลามาตรึกตรอง
  • 6. 6 เรื่องของการเชื่อมโยงสัญญาณกับหนวยประมวลผลหรือบัส ที่มีการพัฒนาออกรุนใหมๆ ออกมาอยูตลอดเวลาใหเปลือง สมองเลย มาตรฐาน PCI ยืนยันที่จะกําหนด ความเร็วของบัส PCI bus ไวที่ขนาด 33 MHz แมวา ปจจุบันผลิตภัณฑหนวยประมวลผลกลางสวนใหญจะไดรับ การพัฒนาขีดความสามารถในการประมวลผลใหมีความเร็ว เกินเลยขนาด 33 MHz ไปแลว ทั้งนี้ก็เพราะวาหนวย ประมวลผลกลางสามารถทํางานเร็วกวาความเร็วของบัสนํา สัญญาณไดโดยไมมีปญหา ดวยชิป host-to-PCI bridge จะทําหนาที่แยกเอาสวนบัสนําสัญญาณของหนวย ประมวลผล (processor bus) ออกเสียจากบัสนําสัญญาณ PCI bus นอกจากการแยก processor bus ออก จาก PCI bus แลว ชิป host-to-PCI bridge ยังมี ความสามารถจัดเก็บขอมูลไวในรูปหนวยความจําบัฟเฟอร (buffering) อีกดวย เพื่อเพิ่มประสิทธิภาพในการทํางานของ ระบบคอมพิวเตอร และบัสนําสัญญาณ โดยเฉพาะเมื่อตองใชงานรวมกับหนวยประมวลผลที่ไมมีความสามารถในการ บันทึกขอมูลทีละมากในรวดเดียว (burst write) อยางเชน ไมโครโปรเซสเซอร 80486 ฯลฯ ทั้งนี้และทั้งนั้น เนื่องจากบัส PCI bus ไมไดถูกออกแบบมาใหรองรับการทํางานแบบ burst write ดังนั้น ชิป host-to-PCI bridge จึงตองทําหนาที่รับเอาขอมูลที่ทยอยมาจากหนวยประมวลผล (non burst-write) มา เก็บไวในหนวยความจําบัฟเฟอรของตน กอนที่จะอัดเอาขอมูลที่วานั้นผานบัส PCI bus ไปในรวดเดียวเลย (burst-write) นอกจากนั้น ชิป host-to-PCI bridge ยังประกอบไปดวยการทํางานดานลอจิกอีกหลายอยางดวยกัน อยางเชน สวน ควบคุมหนวยความจําแคช (cache controller) และ กลไก centralized arbitration mechanism ของบัส PCI bus ฯลฯ กลาวโดยสรุปแลว มาตรฐาน PCI ที่กําเนิดขึ้นมาใหมนี้มิไดมีวัตถุประสงคเพื่อการใชแทนมาตรฐานบัส ขยาย (expansion bus standard) ซึ่งกําลังเปนที่นิยมอยูในขณะนี้ มันเพียงแตผสมผสาน PCI bus เขากับรูปแบบบัส นําสัญญาณมาตรฐานที่มีอยูเดิม และผูผลิตคอมพิวเตอรสามารถติดตั้งรูปแบบบัสนําสัญญาณแบบเดิมอยาง ISA, EISA, Micro Chanel, NuBus หรือ SCSI เขากับบัสนําสัญญาณ PCI bus ที่พัฒนาขึ้นมาใหมไดโดยเพียงแตอาศัยความ ชวยเหลือจากชิป host-to-PCI bridge เทานั้น เพราะถึงแมวาบัสนําสัญญาณแบบเดิมๆ จะมีสมรรถนะในการสงผานขอมูลดอยกวา PCI bus แตมันก็ เปนรูปแบบที่ไดรับการติดตั้งใชงานอยูโดยทั่วไปอยูแลวในปจจุบัน ถาตองเลิกใชเสียหมดเลยเพียงเพื่อจะมาใช PCI bus คงไมมีใครเขาเอาดวย การออกแบบบัสนําสัญญาณ PCI bus ใหสามารถทํางานรวมกับระบบบัสนําสัญญาณที่ดอยกวา (downward compatability) จึงนับไดวาเปนกุศโลบายที่ชาญฉลาดของทีมงานผูออกแบบมาตรฐาน PCI ในการที่จะทํา ใหระบบมาตรฐาน PCI ไดรับการยอมรับโดยเหลาบริษัท ผูผลิตผลิตภัณฑคอมพิวเตอรทั่วไป
  • 7. 7 เปาหมาย และที่มาของระบบบัส PCI bus การออกแบบมาตรฐานบัสนําสัญญาณ PCI bus นั้นมีเปาหมายหลักอยูสามประการดวยกัน ประการ แรก มันจะตองเปนรูปแบบการติดตอกับบัส Local bus ซึ่งออกมาจากหนวยประมวลผลกลางโดยตรงไดอยางมี ประสิทธิภาพมากที่สุด ในราคาที่ต่ําที่สุด (Low-cost, high-performance Local bus interface), ประการที่สอง มัน จะตองมีความสามารถในการกําหนดคา configurations ของอุปกรณและแผงวงจรตางๆ ที่ตอเพิ่มเขามาในมาตรฐาน PCI ไดโดยอัตโนมัติ (Autonomic configurations of components and add-in boards), และประการสุดทาย มาตรฐาน PCI ที่ไดรับการออกแบบมานั้นจะตองมีความยืดหยุนเพียงพอที่จะสามารถรองรับอุปกรณรอบขางประเภท ใหมๆ ที่จะไดรับการออกแบบมาในอนาคตไดดวย (Future peripherals support) ดวย วัตถุประสงคประการแรก ที่ ตองการออกแบบให มาตรฐาน PCI มีราคาไมแพง มากเกินไปนั้น จุดแรกที่ ทีมงานผูออกแบบมาตรฐาน PCI จึงมุงเนนไปที่การลด จํานวนขา (pins) และสายสัญญาณตางที่ใชในการเชื่อมโยงสัญญาณ เพราะตามปรกติแลวอุปกรณอิเล็กทรอนิกส ทั้งหลายที่เกี่ยวของกับระบบบัสนําสัญญาณ ไมวาจะเปนหัวตอคอนเนคเตอร, ไอซีชิป และชิ้นสวนตางๆ บน แผงวงจรหลัก ฯลฯ จะมีราคาคางวดแพงขึ้น และขนาดใหญโตขึ้นหากวาตองประกอบไปดวยขาจํานวนมากๆ หรือตอง ติดตอกับสายสัญญาณจํานวนมากๆ ของบัสนําสัญญาณ วิธีการลดจํานวนขาของอุปกรณ และจํานวนสายนําสัญญาณของมาตรฐาน PCI นั้นกระทําโดยการ เลือกใชบัสนําสัญญาณแบบ Multiplexed data & address bus ซึ่งสงผลใหมาตรฐาน PCI สามารถใชจํานวนขาเพียง 47 ขาสําหรับการติดตอในสวน PCI target และใชการติดตอแบบ 49 ขาในสวนของ PCI master และถึงแมวาจะใช จํานวนสายสัญญาณนอยลง แตอุปกรณตางๆ ในมาตรฐาน PCI ก็สามารถรองรับการทํางานของระบบไดอยางมี ประสิทธิภาพ (ดังแสดงในรูปที่ 1) รูปที่ 1 แสดงรูปแบบของขา (pins) และการอินเทอรเฟซสัญญาณ (signal interface) ของอุปกรณตามมาตรฐาน PCI ซึ่ง ประกอบไปดวยสวนของขาที่จําเปนตองใชสําหรับการติดตั้ง PCI bus (required pins) และสวนของขาที่เปนสวน เสริม (optional pins) สําหรับการติดตั้งระบบบัสแบบ 64 บิท และสําหรับรองรับหนวยความจําแคช ฯลฯ สําหรับแผงวงจรที่จะนํามาติดตั้งเพิ่มเติมใหกับระบบคอมพิวเตอร (add-in boards) นั้น ระบบบัส มาตรฐาน PCI จะกําหนดไวสองขนาด คือขนาดมาตรฐานความยาว 12 นิ้ว และขนาดสั้น (ยาวประมาณ 7 นิ้ว) โดยบัส
  • 8. 8 PCI bus จะอนุญาตใหติดตั้งเพิ่มไดไมเกิน 10 โหลด (คาโหลดของบัสมีวิธีคิดดังนี้ คือ แตละไอซีชิปบนแผงวงจรหลักคิด เทียบไดเทากับ 1 โหลด ในขณะที่แตละแผงวงจรที่ติดตั้งเสริมเขามาบนสล็อตจะคิดเปน 2 โหลดตอหนึ่งแผง) ดังนั้น สมมติวาบนแผงวงจรหลักมีอุปกรณที่ติดตั้งอยูในรูปไอซีชิปอยู 4 ตัวอยูแลว ระบบบัส PCI bus ก็จะอนุญาตใหผูใชคอมพิวเตอรสามารถติดตั้งแผงวงจรเพิ่มเขามาไดอีก 3 แผง หรืออีกหกโหลดเทานั้น หากผูใช คอมพิวเตอรดื้อดึงติดตั้งโหลดเขาไปเกินกวาที่ระบบบัส PCI bus จะรองรับได ก็จะมีผลไปรบกวนการทํางานของสวน กําหนดเวลาใชงานของอุปกรณ (timing specifications) อันจะนําไปสูความเสียหายของระบบคอมพิวเตอรโดยรวมได และเพื่อใหมาตรฐาน PCI สามารถครอบคลุมไปถึงอุปกรณที่ใชคาความตางศักยขนาด 3.3 โวลตได กลุม PCI SIG จึงไดมีการระบุขอกําหนด 3.3-V PCI specifications สําหรับอุปกรณคอมพิวเตอรที่ใชคาความตางศักย ขนาด 3.3 โวลต ออกมาดวยตางหาก นอกเหนือไปจากมาตรฐานเดิมที่ใชคาความตางศักย 5 โวลต (ปจจุบันเหลาบริษัท อุตสาหกรรมอิเล็กทรอนิกสทั้งหลายตางมีแนวโนมที่จะเปลี่ยนมาตรฐานสัญญาณดิจิตัลจากเดิมที่เปน 5 โวลต ไปใชขนาด 3.3 โวลตแทน) ดวยการระบุคากําหนดความตางศักยไวสองคานี้ ทําใหผลิตภัณฑ แผงวงจร และสล็อตที่ใชในมาตรฐาน PCI จําเปนตองไดรับการออกแบบมาเพื่อการใช งานกับคาความตางศักยที่เหมาะสมของตนเทานั้น คือ แผงวงจร 5 โวลตก็ตองใชกับ สล็อตแบบ 5 โวลต ในขณะที่สล็อตแบบ 3.3 โวลตก็ตองใชกับแผงวงจร 3.3 โวลต เชนเดียวกัน อยางไรก็ตาม เพื่อหลีกเลี่ยงความสับสนอันเนื่องมาจากการเสียบ แผงวงจรผิดสล็อตทางกลุม PCI SGI จึงเรียกรองใหเหลาบริษัทผูผลิตแผงวงจรหันมาใช มาตรฐานเดียวกัน หรือไมอยางนั้นก็นาจะผลิตแผงวงจรใหสามารถใชไดกับสล็อตทั้ง สองระดับความตางศักยเลย รูปที่ 2 แสดงลักษณะแผงวงจรเสริม (add-in boards) สามแบบ แบบ 5 โวลต (ซาย) ,แบบ 3.3 โวลต (ขวา) และแบบ ที่สามารถใชไดกับทั้ง 3.3 โวลต และ 5โวลต (กลาง) ที่ทางกลุม PCI SIG กําลังเรียกรองใหเหลาบริษัทผูผลิตแผงวงจร ทั้งหลายหันมาใช มาตรฐาน PCI จําแนกพื้นที่แอดเดรสตําแหนงที่อยู (address space) ออกเปนสามประเภท คือ เปน memory space, I/O space และ Configuration space โดย configuration space นั้นจะเปนพื้นที่จัดเก็บขอมูล ขนาด 256 ไบทภายในอุปกรณ PCI device แตละตัว ซึ่งใชสําหรับจัดเก็บขอมูลเกี่ยวกับรายละเอียดของตัวอุปกรณนั้นๆ ตัวอยางของขอมูลที่ถูกจัดเก็บไวในสวน configuration space นี้ก็ไดแกคารหัสชนิด (type code) ซึ่งแสดงใหระบบ ทราบวาอุปกรณดังกลาวนั้นมีการทํางานควบคุมหนวยความจําสํารอง, ควบคุมการอินเทอรเฟซกับเน็ตเวิรก, ควบคุมสวน หนาจอ, หรือควบคุมอุปกรณฮารดแวรอื่นๆ อยูหรือไม ? ดวยวิธีการระบุคารหัสชนิดไวภายใน Configuration space ของแตละอุปกรณดังกลาว มาตรฐาน PCI จึงสามารถ รองรับอุปกรณ ประเภทที่มีการทํางานหลายๆ อยาง (multifunctional device) ไดทีละหลายๆ ตัวไดอยางไม มีปญหา ตราบใดที่ยังมีการตอเชื่อมโยงสัญญาณทางกายภาพ (physical connection) เขากับบัส PCI bus เพียงอัน
  • 9. 9 เดียว ยกตัวอยางเชน ไอซีชิปตัวหนึ่งอาจจะสามารถรองรับไดทั้งการเชื่อมโยงสัญญาณแบบ SCSI และการติดตอกับ Ethernet นอกจากคารหัสชนิด (type code) แลว ภายในสวน Configuration space ยังประกอบไปดวย คา รีจิสเตอร PCI control, status, และ latency timer registers ; ตําแหนง expansion ROM ของอุปกรณ ; และ คา รีจิสเตอร base-address registers เวลาที่ผูใชเปดเครื่องคอมพิวเตอรขึ้นใชงาน ระบบจะตรวจเช็คแสกนไปตามพื้นที่ configuration space ของอุปกรณทุกๆ ตัวที่ตออยูกับบัส PCI bus หลังจากแสกนครบแลวระบบก็จะกําหนดคา base address ที่เฉพาะตัว และกําหนดระดับความสําคัญในการอินเทอรรัพท (interupt level) ใหกับอุปกรณแตละตัว นั้น สําหรับสวน expansion ROM ของอุปกรณ PCI device นั้น ก็จะประกอบไปดวยรหัสที่ใชกระตุนอุปกรณ (initialize code) โดยขอมูลที่บรรจุอยูในหนวยความจํา ROM ที่วานั้นจะถูก จัดเรียงไวในรูปแบบฟอรแมทของ little endian (หรือที่รูจักกันอีก ชื่อวาเปนฟอรแมทแบบ reverse-byte ordering ซึ่งจัดเรียงใหไบท ที่มีนัยสําคัญนอยที่สุดอยูในตําแหนงหนาสุด) แตไมไดถูกออกแบบให ปกปองตนเองจากการถูกเรียกใชขอมูลจากหนวยประมวลผลอื่นๆ นอกจากนั้นตัวหนวยความจํา expansion ROM ของมาตรฐาน PCI ยังสามารถจัดเก็บขอมูลรหัสที่ แตกตางกันออกไปไดดวย ทําใหระบบสามารถใชขอมูลใน ROM ไปกระตุนเรียกเอาอุปกรณที่ออกแบบมาเพื่อใชกับ หนวยประมวลผลซึ่งมีโครงสรางทางสถาปตยตางกันขึ้นมาใชได (different architecture devices initialization) อัน สงผลใหระบบมาตรฐาน PCI สามารถรองรับอุกรณฮารดแวรตางๆ ที่ตอพวงเขามาไดโดยอัตโนมัติ ไมตองไปปรับแตง อะไรใหยุงยากอีก หรือจะเรียกวาเปนระบบเสียบแลวเลนไดเลย (plug-and-play system) ก็คงได หลากหลายประสิทธิภาพของระบบบัส PCI bus การทํางานแตละอยางภายในระบบ PCI bus (PCI transaction) นั้น ดําเนินไประหวางสวน Master ซึ่งควบคุมบัส และสวน Target ซึ่งเปนเปาหมายปลายทางของบัส โดยคําวา Master และ Target นี้เปนคําศัพท เฉพาะตัวของมาตรฐาน PCI เอง ตัว Master หมายถึงอุปกรณในระบบที่สามารถควบคุมบัส และกระตุนใหมีการเขาถึง หนวยความจําเพื่อเรียกเอาคําสั่งดําเนินการขึ้นมาทํางานได เชน หนวยประมวลผล หรือวงจรควบคุมบัส bus- mastering SCSI controller ฯลฯ ในขณะที่คําวา target ก็จะหมายถึงอุปกรณที่ถูกควบคุมทั้งหลาย (slave devices) จะทําอะไรทีก็เปน ผลมาจากการตอบสนองตอคําสั่งดําเนินการจาก master เทานั้น อยางเชน หนวยความจํา, หรือวงจรควบคุมหนาจอ VGA controlller ฯลฯ ทั้งนี้ระบบบัส PCI bus ทําการสงผานขอมูลไปมาระหวาง Master และ Target ในรูปลักษณ ของการอานและบันทึกขอมูลแบบรวดเดียวจบ (burst read and write) เพื่อผลในการทํางานที่มีประสิทธิภาพสูงที่สุด สําหรับการทํางานของบัสตามปรกติ (normal bus access) นั้น การสงผานขอมูลแตละครั้งจะเกิดขึ้น ไดจําเปนตองมีคาแอดเดรสที่อยูใหมเสมอ(one address for single transfer) แตสําหรับการสงผานขอมูลแบบรวด
  • 10. 10 เดียวจบ (burst transfer) ของมาตรฐาน PCI แลว ระบบบัสจะไดรับคาแอดเดรสที่อยูเพียงคาเดียวเทานั้น หลังจากนั้น ระบบบัส PCI bus จะดําเนินการสงผานขอมูลหลายๆ ครั้งติดตามกันไปไดเลย (one address for multiple transfers) โดยการสงผานขอมูลแบบ Burst transfer ของมาตรฐาน PCI นี้ จะเริ่มดวยสวน address phase หนึ่งเฟสกอน แลวจึงตามมาดวยสวน data phase อีกหนึ่งเฟส หรือมากกวาหนึ่งเฟส ทําใหแตละเฟสของ Data phase สามารถถูกสงผานไปไดระหวางแตละชวงคาบสัญญาณนาฬิกา (clock peroid) อันสงผลใหระบบมาตรฐาน PCI สามารถจัดสงขอมูลดวยความเร็ว 132 Mbps ผานไปตามบัสขนาด 32 บิท หรือดวยความเร็ว 264 Mbps ผานไปตามบัสขนาด 64 บิทได (การสงผานขอมูลแบบ Burst transfer นี้อาจจะเปนการสงผานขอมูล ไปยังหนวยความจํา หรือไปยังสวน I/O ก็ได) มีขอสังเกตุอีกอยางวา การสงผานขอมูลแบบ Burst transfer ของมาตรฐาน PCI นี้จะไมมีขอจํากัดในเรื่องระยะความยาว ของขอมูลที่จัดสง (indefinite burst length) ซึ่งตางไปจาก โครงสรางทางสถาปตยของระบบอื่นๆ ที่มักจะมีระยะความยาวของ ขอมูลที่จัดสงไปอยางชัดเจนแนนอน (limited, fixed burst length) ดังนั้น การสงผานขอมูลแบบ Burst transfer ของมาตรฐาน PCI จะ ดําเนินตอเนื่องกันไปจนกวาตัวอุปกรณ Master หรือ target จะรอง ขอใหหยุด หรือจนกวาจะมีอุปกรณรอบขางชนิดอื่นๆ ที่มีศักดศรี เหนือกวา (higher priority) รองขอใชบัส แตละอุปกรณ PCI device จะมีการทํางาน Latency timer ซึ่งทําหนาที่สํารวจตรวจสอบดูชวงเวลา ยาวนานที่สุดที่ตัวอุปกรณเองไดรับอนุญาตใหสามารถเขามาใชบัส PCI bus ได โดยการทํางาน latency timer นี้จะจะ เขาถึงบัสผานทาง configuration space และถูกโปรแกรมไวโดยหนวยประมวลผล ทําใหหนวยประมวลผลสามารถ ปรับแตงการทํางานภายในระบบใหมีประสิทธิภาพและความเหมาะสมมากที่สุด (system performance optimization) ดวยการโปรแกรมชวงเวลา latency ที่อุปกรณ PCI device แตละตัวจะเขามาใชบัสใหเปนไปอยาง เหมาะสม เวลาที่มีการสงผานขอมูลแบบ Burst transaction ระหวางอุปกรณ PCI device เกิดขึ้นนั้น ตัว อุปกรณ Master ซึ่งทําหนาที่ควบคุมบัสจะเปนผูระบุถึงรูปแบบของการสงผานขอมูล (transaction type) โดยผานทาง คําสั่ง bus command (ดังแสดงในรูปที่ 3) ซึ่งปรากฏอยูบนเสน Command/byte enable (C/BE[3::0]#) ภายในชวง เฟส address phase ของการสงผานขอมูล (ดังแสดงในรูปที่ 4) รูปที่ 3 แสดงรายละเอียด และความหมายของรหัสคําสั่ง Bus command ซึ่งอุปกรณ Master ใชระบุถึงรูปแบบการ สงผานขอมูล
  • 11. 11 รูปที่ 4 แสดงรูปแบบพื้นฐานในการอาน และบันทึกขอมูลผานบัส PCI bus ซึ่งเกิดขึ้นในชวงหนึ่งเฟรม อันประกอบดวย หนึ่ง address phase และ สาม data phase โดยมีคาคําสั่งระบุรูปแบบการสงผานขอมูล Bus command ปรากฏ อยูในสวน C/BE line การเพิ่มประสิทธิภาพการทํางานของระบบคอมพิวเตอรยังสามารถกระทําไดอีกทางหนึ่งดวยการลด ชวงเวลา Overhead ซึ่งบัสอยูระหวางการถูกจองใชงาน แตไมมีการสงผานขอมูลเกิดขึ้นจริงระหวางนั้น เพราะตาม ปรกติเวลาที่อุปกรณ PCI device แตละตัวจะเขาไปเขาถึงบัส PCI bus ได ตัวมันตองรองขอใชบัสผานทาง central arbiter ดวยสัญญาณ REQ (request signal) เมื่อ central arbitor ซึ่งเปนการทํางานชิป host-to-PCI bridge ไดรับ สัญญาณ REQ จากอุปกรณ PCI device มันก็จะสงสัญญาณอนุญาต GNT (grant signal) ออกมา อยางไรก็ตาม ระหวางที่ central arbiter ซึ่งทําหนาที่เหมือนเปนนายหนาหรือตัวกลางคอย ดําเนินการติดตอระหวางอุปกรณ PCI device กับบัสทํา การจัดวางการติดตอของแตละอุปกรณ PCI device เขา กับบัส (arbitration process) อยูนั้น มันก็ทําใหบัสตอง เสียเวลาอันมีคาไปเปลาปลี้ๆ เสียหลายรอบสัญญาณ นาฬิกาอยูเหมือนกัน ดังนั้นเพื่อลดปญหาการสูญเปลา ของเวลา มาตรฐาน PCI จึงอนุญาตให central arbiter ทําการจัดวางการติดตอของอุปกรณถัดไปไดเลยในระหวาง ที่การสงผานขอมูลของอีกอุปกรณหนึ่งกําลังดําเนินอยู ในสวนของรูปแบบการสงผานขอมูลนั้น ระบบบัส PCI bus ยังสามารถจัดสงขอมูลไดทั้งแบบทีละ 32 บิท และทีละ 64 บิท ขึ้นอยูกับวามาตรฐาน PCI ที่ตอพวงอยูกับบัส PCI bus มีการรองรับวิธีสงผานขอมูลทีละ 64 บิท หรือไม โดยเริ่มจากอุปกรณ master จะตองจัดสงสัญญาณ REQ64 และ ACK64 ไปยังอุปกรณ target ดูกอนวา ตัว อุปกรณ Target นั้นมีความสามารถในการรับขอมูลทีละ 64 บิทหรือไม ถาตัวอุปกรณ target สามารถรับขอมูลทีละ 64 บิทได การสงผานขอมูลทีละ 64 บิทจึงจะเกิดขึ้นได สวนอุปกรณmasterของมาตรฐาน PCI นั้นจะสามารถรองรับวิธีการกําหนดตําแหนงแอดเดรสไดทั้ง ชนิด 32 บิท และชนิด 64 บิท (both 32 & 64 bit addressing) โดยไมจําเปนวามันจะสามารถรองรับเสนทางการ สงผานขอมูลทีละ 32 หรือ 64 บิท (32 bit or 64 bit data path ?) ตรงตามวิธีการกําหนดคาตําแหนงแอดเดรสของมัน หรือไม อีกทั้งมันยังไมจําเปนตองรับรูดวยวาอุปกรณ target ที่มันติดตอดวยนั้นมีการรองรับการจัดสงขอมูลแบบใด ? (แบบ 32 บิท หรือ 64 บิท) เวลาที่อุปกรณ master จัดสงขอมูลไปยังอุปกรณ target มันจะตองเสนอแอดเดรสตําแหนงที่อยูใน รูปแบบฟอรแมท dual-address-cycle command ที่ตัวอุปกรณ target ทั้งชนิด 32 บิท และชนิด 64 บิทสามารถ รองรับไดทั้งคู โดยรูปแบบฟอรแมทของการกําหนดตําแหนงแอดเดรสแบบ dual-address-cycle command ที่วานั้น 32 บิทแรก (first 32 bit address) ของคาตําแหนงที่อยูแบบ 64 บิทจะถูกจัดวางไวบนสวนลาง 32 บิทของบัส (lower
  • 12. 12 32 bit of bus) และอีก 32 บิทที่เหลือของตําแหนงที่อยูแบบ 64 บิท จะถูกจัดวางไวสวนบน 32 บิทของบัส (upper 32 bit of bus) นอกจากจะแบงสวนบัสสงผานสัญญาณออกเปนสองสวน คือ บน 32 บิท, และลาง 32 บิทแลว การ กําหนดตําแหนงแอดเดรสแบบ dual-address-cycle command ยังจัดแบงการสงผานขอมูลแอดเดรสออกเปนสองรอบ อีกดวย โดยรอบแรกก็เปนการสงผานในลักษณะที่กลาวไปแลว สวนรอบที่สองก็เปนจัดสงเฉพาะขอมูลแอดเดรส 32 บิท หลัง ที่เคยสงไปแลวทาง 32 บัสบนในรอบแรก แตพอมาสงในรอบสองนี้เปลี่ยนมาใชสงทาง 32 บัสลางแทน ดวยวิธีการแบงคาแอดเดรสออกเปนสองสวน และจัดสงขอมูลแอดเดรสออกไปสองครั้งก็ทําให dual- address-cycle command สามารถรองรับไดเสมอไมวาตัวอุปกรณ target จะเปนแบบ 32 บิท หรือ 64 บิท หากตัว อุปกรณ target เปนแบบ 32 บิท มันก็รับขอมูลแอดเดรสที่สงมาเฉพาะ 32 บิทของบัสลางเทานั้น แตรับสองครั้ง ครั้ง แรกก็รับ 32 บิทแรก ครั้งที่สองก็รับ 32 บิทหลัง สวนในกรณีที่อุปกรณ target เปนแบบ 64 บิท มันก็สามารถรับขอมูล แอดเดรสทั้งบัสบนบัสลางไดภายในรอบแรกทีเดียวไปเลย ไมตองมารับขอมูลแอดเดรสในรอบที่สอง อนาคตของมาตรฐาน PCI ในอดีตที่ผานๆ มานั้น ระบบมาตรฐานการอินเทอรเฟซระหวางอุปกรณตางๆ ภายในระบบ คอมพิวเตอรมักจะไดรับการออกแบบขึ้นมาดวยวัตถุประสงคเพื่อการใชงานรวมกับอุปกรณตางๆ ที่มีอยูในทองตลาดเปน หลัก ซึ่งก็เลยสงผลใหมาตรฐานการอินเทอรเฟซเหลานั้นมักจะลาสมัยไปอยางรวดเร็ว เพราะกวามาตรฐานดังกลาวจะ ไดรับการยอมรับ ผลิตภัณฑอุปกรณคอมพิวเตอรตางๆ ทั้งฮารดแวรและซอฟทแวรก็มักจะมีการพัฒนาเปลี่ยนแปลงไป จากเดิมแลว แตสําหรับมาตรฐาน PCI ที่ไดกลาวมาในบทความนี้เปนรูปแบบการอินเทอรเฟซที่ไดรับการออกแบบ โดยคํานึงถึงรูปแบบของอุปกรณคอมพิวเตอรในอนาคตเปนสําคัญ จึงมีการเผื่อที่วางในอนาคตไวคอนขางมากสําหรับที่ มาตรฐาน PCI จะสามารถพัฒนาตอไปไดอีก มีการเลือกขนาดแบนดวิดทที่สามารถใชรวมกับเครื่องคอมพิวเตอรแทบทุก ชนิดตั้งแตเครื่องคอมพิวเตอรพกพาธรรมดา ไปจนถึงเครื่อง เวิรกสเตชั่น หรือเครื่องเซิรฟเวอรประสิทธิภาพสูงๆ ราคา แพงๆ นั่นเลยทีเดียว สวนการที่แผงวงจรหลักของเครื่อง คอมพิวเตอรในระบบมาตรฐาน PCI ตองมีไอซีชิปติดตั้งเขา มาอีกหลายๆ ตัว อันสงผลใหสิ้นเปลืองเนื้อที่บน แผงวงจรหลัก และมีราคาแพงขึ้นไปกวาเดิมนั้น แมวา อาจจะนับเปนขอเสียของระบบ PCI bus ได แตมันก็เปน รูปแบบที่ไดรับการยอมรับเปนมาตรฐานแลว อันจะสงผล ใหชิ้นสวนวงจรเหลานี้มีแนวโนมที่จะถูกพัฒนาใหมีขนาด เล็กยอมลง และมีราคาถูกลงไปโดยปริยาย ยิ่งถาติดตาม ขาวสักหนอยจะพบวาเมื่อเร็วๆ นี้บริษัท DEC ซึ่งเปนหนึ่งใน
  • 13. 13 สมาชิดของกลุม PCI SIG ไดออกผลิตภัณฑชิปหนวยประมวลผล DECchip 210066 RISC processor ซึ่งติดตั้งระบบบัส PCI bus มาไวภายในตัวชิปดวยออกมาแลว (เปนผลิตภัณฑที่นาสนใจมากสําหรับเหลาผูผลิตเครื่องคอมพิวเตอรโนตบุค เพราะมันทําใหสามารถลดขนาดของแผงวงจรหลักลงไปไดอยางมาก) กลาวโดยสรุปแลว ระบบบัสมาตรฐาน PCI นี้ไดนํามาซึ่งคุณประโยชนแกอุตสาหกรรมคอมพิวเตอรใน หลายๆ ระดับดวยกัน สําหรับกลุมผูผลิตเครื่องคอมพิวเตอรพีซี มาตรฐาน PCI จะเปดโอกาสใหสามารถออกแบบ ผลิตภัณฑใหมีประสิทธิภาพสูงขึ้นกวาเดิมไดอยางมากจากการที่มันสามารถสงผานขอมูลไดเร็วขึ้น และดวยความสามารถ ในการกําหนดรูปแบบ ฮารดแวรอัตโนมัติของมัน ก็ยังทําใหเราสามารถ ติดตั้งเอาอุปกรณฮารดแวร ตางๆ เขามาในระบบได อยางสะดวก (plug-and- play system) สวนใน กลุมของผูผลิตเครื่อง คอมพิวเตอรระดับ เวิรกสเตชั่นนั้น ถึงแมวา ตามปรกติมันจะมี สมรรถนะความเร็วในการ ทํางานสูงกวาระบบบัส มาตรฐาน PCI อยูแลว แตการติดตั้งบัส PCI bus ก็ทําใหมันสามารถเขาถึงอุปกรณคอมพิวเตอรมาตรฐานที่ต่ํากวา ซึ่ง มีราคาถูกกวาเดิมมากๆ (low-cost industry-standard components) ที่ใชกับเครื่องคอมพิวเตอรตระกูลพีซีไดดวย ดังนั้น จึงไมนาจะเปนปญหาเลยวาระบบบัสมาตรฐาน PCI นี้จะไดรับการยอมรับจากวงการคอมพิวเตอรหรือไม เพราะ คําตอบที่มีนั้นมันชัดเจนอยูแลว