ลักษณะประสิทธิภาพของชิปอินเตอร์เฟส PCI9052 และการวิเคราะห์ตัวอย่างแอปพลิเคชัน

ปรับปรุง: 23 มีนาคม 2024

"โปรโตคอลบัส PCI นั้นซับซ้อนมาก หากคุณพัฒนาบอร์ดขยาย PCI และใช้ชิปอาร์เรย์ลอจิกที่ตั้งโปรแกรมได้เพื่อใช้งานโปรโตคอล PCI ให้สมบูรณ์ ภาระงานและความยากจะมีมาก และโดยทั่วไปแล้วจะใช้ชิปอินเทอร์เฟซเฉพาะสำหรับ PCI ชิปอินเทอร์เฟซ PCI9052 ได้รับการแนะนำด้านล่าง

"

ผู้เขียน : เว่ย เหวินฮวา

บัส PCI (Peripheral Component Interconnect) เป็นบัสในพื้นที่ที่สามารถจัดเตรียมบัสข้อมูลประสิทธิภาพสูงสำหรับ CPU หลักและอุปกรณ์ต่อพ่วง ในปี 1992 หลายกลุ่มที่นำโดย INTEL ได้เริ่มออกแบบบัส PCI และข้อกำหนด V2.0 ของมันเปิดตัวอย่างเป็นทางการในเดือนเมษายน 1993 บัส PCI มีข้อกำหนดที่เข้มงวด ซึ่งทำให้มั่นใจได้ว่ามีความเข้ากันได้ดี การ์ดเอ็กซ์แพนชันที่เป็นไปตามข้อกำหนดของ PCI สามารถเสียบเข้ากับระบบ PCI ใดก็ได้เพื่อให้ทำงานได้อย่างน่าเชื่อถือ บัส PCI สามารถให้อัตราการถ่ายโอนข้อมูลที่สูงมาก (132MB/S); PCI บัสไม่มีส่วนเกี่ยวข้องกับ CPU และไม่เกี่ยวข้องกับความถี่สัญญาณนาฬิกา สามารถใช้กับแพลตฟอร์มต่างๆ และสนับสนุนโปรเซสเซอร์หลายตัวและทำงานพร้อมกันได้ บัส PCI ยังมีความสามารถในการปรับขนาดได้ดี ผ่านบริดจ์ PCI-PCI ทำให้สามารถขยายได้ไม่จำกัด บัส PCI มันแทนที่โลคัลบัส VESA ด้วยคุณสมบัติพลักแอนด์เพลย์ อินเทอร์เฟซ PCI ประกอบด้วยชุดของรีจิสเตอร์ ข้อมูลในการลงทะเบียนเหล่านี้ทำให้คอมพิวเตอร์กำหนดค่าการ์ด PCI ได้โดยอัตโนมัติ ปัจจุบันบัส PCI เป็นบัสที่ล้ำหน้าที่สุดบนพีซี

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

1 แนะนำชิป PCI9052

PCI9052 เป็นชิปอินเทอร์เฟซที่พัฒนาโดย PLX เทคโนโลยี บริษัทสำหรับบอร์ดอะแดปเตอร์ส่วนขยายที่สามารถนำเสนอโหมดบัสเป้าหมาย PCI ประสิทธิภาพสูงแบบไฮบริด (สเลฟ) ชิปนี้สามารถเชื่อมต่อกับบัสท้องถิ่นได้หลากหลาย และรองรับบัสท้องถิ่นที่ค่อนข้างช้าด้วยอัตราการถ่ายโอนต่อเนื่องที่ 132MB/S บนบัส PCI การกำหนดค่าที่ตั้งโปรแกรมได้ของ 9052 เชื่อมต่อโดยตรงกับโลคัลบัส 8/16/32 บิตแบบมัลติเพล็กซ์หรือไม่ใช่มัลติเพล็กซ์ โหมด 8 บิตและ 16 บิตอำนวยความสะดวกในการแปลงการ์ด ISA เป็นการ์ด PCI โดยตรง

1.1 คุณสมบัติหลัก

(1) เข้ากันได้กับคุณสมบัติโปรโตคอล PCI V2.1 ชิป 9052 เข้ากันได้กับโปรโตคอล PCI V2.1 และสนับสนุนอุปกรณ์อะแดปเตอร์โหมดทาสต้นทุนต่ำในการพัฒนา ชิปรองรับการแปลงจากการ์ดอะแดปเตอร์ ISA เป็นการ์ดอะแดปเตอร์ PCI

(3) เครื่องกำเนิดไฟฟ้าขัดจังหวะ 9052 สามารถสร้าง PCI อินเตอร์รัปต์จากอินพุตอินเตอร์รัปต์บัสภายในสองตัว

(4) นาฬิกา อินเทอร์เฟซบัสภายใน 9052 ทำงานบนนาฬิกา TTL และสร้างนาฬิกาภายในที่จำเป็น นาฬิกา TTL ในเครื่องทำงานแบบอะซิงโครนัสกับนาฬิกา PCI และช่วยให้บัสภายในเครื่องทำงานเป็นอิสระจากนาฬิกา PCI นาฬิกาบัส PCI ที่บัฟเฟอร์ BCLKO สามารถเชื่อมต่อกับนาฬิกาบัสท้องถิ่น LCLK

(5) การกำหนดค่าบัสท้องถิ่นที่ตั้งโปรแกรมได้ 9052 รองรับโลคัลบัส 8/16/32 บิตแบบมัลติเพล็กซ์หรือไม่มัลติเพล็กซ์ ชิปมี 4 ไบต์เพื่อเปิดใช้งาน 26 บรรทัดที่อยู่ และบรรทัดข้อมูล 32/16/8 บิต

(6) อ่านโหมดแรก 9052 รองรับโหมด read-first นั่นคือ ข้อมูล pre-latched สามารถอ่านได้จากการลงทะเบียน FIFO ภายใน 9052 ก่อนโลคัลบัส

(7) คนขับรถโดยสารประจำทาง สัญญาณควบคุม ที่อยู่ และสัญญาณข้อมูลทั้งหมดสร้างขึ้นโดยตรงโดย 9052 ซึ่งใช้เพื่อขับเคลื่อน PCI และบัสในพื้นที่โดยไม่ต้องมีวงจรไดรฟ์เพิ่มเติม

(8) อินเทอร์เฟซ EEPROM แบบอนุกรม 9052 มีอินเทอร์เฟซ EEPROM แบบอนุกรมสำหรับการโหลดข้อมูลการกำหนดค่า สำหรับการโหลดข้อมูลอุปกรณ์ที่ดัดแปลงเฉพาะ? สิ่งนี้มีประโยชน์มาก จำเป็นต้องใช้ Serial EEPROM เมื่อแปลง 9052 เป็นโหมดอินเทอร์เฟซ ISA

(9) สี่สัญญาณเลือกชิปท้องถิ่น 9052 ให้สัญญาณการเลือกชิปในพื้นที่สี่สัญญาณ ที่อยู่ฐานและช่วงของการเลือกชิปแต่ละตัวสามารถตั้งโปรแกรมโดยอิสระโดย EEPROM แบบอนุกรมหรือตัวควบคุมหลัก

(10) ช่องว่างที่อยู่ในท้องถิ่นห้าช่อง ที่อยู่ฐานและช่วงของพื้นที่ที่อยู่ในเครื่องแต่ละพื้นที่สามารถตั้งโปรแกรมได้อย่างอิสระโดย EEPROM แบบอนุกรมหรือตัวควบคุมหลัก

(11) ความล่าช้าในการอ่าน/เขียนและการเก็บรักษารอบการเขียน สำหรับบัส ISA สัญญาณอ่าน/เขียนสามารถล่าช้าได้ตั้งแต่เริ่มต้นรอบสัญญาณนาฬิกา

(12) สถานะรอรถประจำทางท้องถิ่น สัญญาณแฮนด์เชค LRDYi เพิ่มเติมใช้เพื่อสร้างสถานะรอต่างๆ และ 9052 มีตัวสร้างสถานะรอภายใน

(13) ตัวนับสลักล่วงหน้าที่ตั้งโปรแกรมได้ ตัวนับสลักล่วงหน้าของบัสในพื้นที่สามารถตั้งโปรแกรมเป็นโหมด 0 (ไม่มีสลักล่วงหน้า), 4, 8, 16 หรือค่าต่อเนื่อง (ปิดตัวนับสลักล่วงหน้า)

ฟังก์ชัน 1.2 พิน

PCI9052 เป็นโครงสร้างแพ็คเกจ PQFP พลาสติก 160 พิน หน้าที่ของพินแต่ละอันแสดงอยู่ในตารางที่ 1 ถึงตารางที่ 7 ตามบล็อคการทำงาน

2 การใช้ชิป PCI9052

ชิปอินเทอร์เฟซ PCI9052 เป็นอินเทอร์เฟซ PCI ทั่วไป โอกาสในการใช้งานและขอบเขตมีมากมาย ด้วยจำนวนสล็อตขยาย ISA ในพีซีที่ลดลงทีละน้อยจนกว่าจะถูกยกเลิก สล็อตเอ็กซ์แพนชัน PCI ได้กลายเป็นกระแสหลักของการกำหนดค่ามาเธอร์บอร์ดของพีซี และการพัฒนาบอร์ดส่วนขยายในอนาคตจะต้องใช้อินเทอร์เฟซ PCI

อย่างไรก็ตาม บอร์ดส่วนขยายที่มีอยู่จำนวนมากที่มีอินเทอร์เฟซ ISA โดยเฉพาะอย่างยิ่งบอร์ดส่วนขยายที่มีฟังก์ชันพิเศษบางอย่างที่พัฒนาขึ้นเองโดยอิสระ วิธีทำให้พวกเขายังคงใช้งานในสล็อต PCI ต่อไป ดูเหมือนจะมีความหมายมาก ข้อมูลต่อไปนี้เน้นที่การใช้ชิปอินเทอร์เฟซ PCI9052 เพื่อแปลงบอร์ดขยาย ISA เป็นบอร์ดขยาย PCI โดยตรง

2.1 บทนำสู่โหมดอินเทอร์เฟซ ISA

โครงสร้างภายในของ PCI9052 ประกอบด้วยอินเทอร์เฟซลอจิก ISA ที่เป็นอิสระ ซึ่งทำการแปลงจาก ISA เป็น PCI ได้อย่างราบรื่น รองรับอุปกรณ์ ISA ที่มีความกว้างข้อมูล 8 บิตและ 16 บิต ซึ่งสามารถแมปหน่วยความจำหรือแมป I/O ได้ โหมดอ่านก่อนใช้เพื่อปรับปรุงปริมาณงานของข้อมูลการอ่าน เมื่อเปิดใช้งานโหมดอินเทอร์เฟซ ISA แล้ว PCI9052 จะดำเนินการรอบเดียวเท่านั้น โดยเฉพาะอย่างยิ่ง EEPROM แบบอนุกรมต้องเปิดใช้งานโหมดอินเทอร์เฟซ ISA

2.1.1 วิธีการกำหนดค่า

มีสองวิธีในการกำหนดค่า PCI9052 สำหรับโหมดอินเทอร์เฟซ ISA

วิธีที่ 1: การเบิร์นวิธี EEPROM แบบอนุกรม ใช้ตัวเขียนเพื่อเขียนข้อมูลลงใน EEPROM แบบอนุกรม โปรดดูตารางที่ 8 เพื่อใช้ข้อมูลที่เหมาะสม ควรสังเกตว่าสำหรับโหมด ISA พิน LRESET# (132) จะต้องสูงเสมอ และยืนยันว่าพิน MODE (68) ถูกตั้งค่าเป็น 0 ซึ่งอยู่ในโหมดที่ไม่ใช่มัลติเพล็กซ์

วิธีที่ 2: วิธีการกำหนดค่าความร้อน ใช้ข้อมูลเดียวกันกับวิธีที่หนึ่งเพื่อตั้งโปรแกรม EEPROM แบบอนุกรมจากบัส PCI ผ่านชิป PCI9052 วิธีนี้ต้องให้ความสนใจว่าขั้วของพิน LRESET# (132) เปลี่ยนจากต่ำเป็นสูงในโหมด ISA และยืนยันว่าพิน MODE (68) ถูกตั้งค่าเป็น 0

2.1.2 หมายเหตุการกำหนดค่า

เมื่อกำหนดค่าสำหรับโหมดอินเทอร์เฟซ ISA คุณต้องใส่ใจกับประเด็นต่อไปนี้:

①เมื่อเข้าถึงพินอินเทอร์เฟซ ISA โปรดดูแผนภาพพินโหมด C/ISA ของพิน PCI9052 เพื่อเชื่อมต่อ

②Space 0 ถูกจัดสรรให้กับการเข้าถึงหน่วยความจำของอินเทอร์เฟซ ISA

③Space 1 ถูกจัดสรรสำหรับการเข้าถึง I/O ของอินเทอร์เฟซ ISA

④ ไม่ว่าที่อยู่ภายในของช่องว่าง 0 จะอยู่ในช่วง CS0# หรือที่อยู่ภายในของช่องว่าง 1 อยู่ในช่วงของ CS1# การเข้าถึง ISA นั้นถูกต้อง

⑤รอบรองมาตรฐานสามารถใช้ช่องว่าง 2, ช่องว่าง 3 และ EEPROM อนุกรมในการเข้าถึง

2.2 ตัวอย่างการสมัคร

ตัวอย่างการใช้งานของ an อิเล็กทรอนิกส์ ตัวควบคุมสวิตช์ถ่ายโอนได้รับด้านล่าง หน้าที่ของคอนโทรลเลอร์คือส่งรหัสควบคุม C0H ไปยังพอร์ต 200H เมื่อตรวจพบเงื่อนไขทริกเกอร์เพื่อควบคุม ถ่ายทอด เพื่อดำเนินการเปลี่ยนให้เสร็จสิ้น ตัวอย่างนี้มีจุดมุ่งหมายเพื่อแสดงวิธีการใช้ PCI9052 เพื่อแปลงจากบอร์ดขยาย ISA เป็นบอร์ดขยาย PCI

2.2.1 การออกแบบฮาร์ดแวร์

ฮาร์ดแวร์ วงจรไฟฟ้า ไดอะแกรมโครงสร้างของคอนโทรลเลอร์ดังแสดงในรูปที่ 1

วงจรแบ่งออกเป็นสามส่วน ส่วนแรกคือสายสัญญาณเชื่อมต่อระหว่างสล็อต 9052 และสล็อต PCI สัญญาณเหล่านี้รวมถึงสัญญาณมัลติเพล็กซ์ข้อมูลที่อยู่ AD? 31:0? ,สัญญาณสั่งรถ C/BE? 3:0? # และสัญญาณควบคุมโปรโตคอล PCI PAR, FRAME#, IRDY#, TRDY#, STOP#, IDSEL, DEVSEL#, PERR#, SERR# ส่วนที่สองคือการเชื่อมต่อกับ EEPROM แบบอนุกรม มีสายสัญญาณสี่เส้น: EESK, EEDO, EEDI และ EECS ข้อมูล EEPROM แบบอนุกรมสามารถเขียนล่วงหน้าด้วยผู้เขียนหรือออนไลน์ ส่วนที่สามคือการเชื่อมต่อระหว่าง 9052 กับวงจรแอปพลิเคชัน ในตัวอย่างนี้ ส่วนใหญ่จะใช้สัญญาณโลคัลบัส ISA มีสายข้อมูล LAD หรือไม่? 7:0, ที่อยู่บรรทัด ISAA? 1:0? แอลเอ? 23:2? , I/O อ่านและเขียนสายสัญญาณ IOWR#, IORD#, สลักที่อยู่ BALE

2.2.2 การออกแบบซอฟต์แวร์

โปรแกรมแบ่งออกเป็นสองส่วน ส่วนหนึ่งกำหนดค่าให้กับการลงทะเบียนการกำหนดค่า PCI9052 แต่ละรายการและเริ่มต้นชิป อีกส่วนเป็นโปรแกรมหลัก งานคือการค้นหาค่าคีย์ที่เกี่ยวข้องในรีจิสทรีอย่างต่อเนื่อง เมื่อตรงตามเงื่อนไข มันจะส่งรหัสควบคุมไปยังพอร์ต โปรแกรมเสร็จสิ้นในภาษา DELPHI เหตุผลหลักในการเลือก DELPHI ก็คือสามารถคอมไพล์เป็นไฟล์สั่งการที่เป็นอิสระได้โดยไม่ต้องใช้ไลบรารีลิงก์แบบไดนามิก โปรแกรมสั้นและทรงพลัง และความเข้ากันได้ระหว่างเวอร์ชันของ DELPHI นั้นค่อนข้างดี ผังงานโปรแกรมแสดงดังรูปที่ 2

ลิงค์:   สกิป31NAB12T11 TPS24751RUVR