ความแตกต่างระหว่าง AHB และ AXI (พร้อมตาราง)

สารบัญ:

Anonim

AHB และ AXI เป็นทั้งมาสเตอร์บัส บัสมาสเตอร์ทั้งสองนี้เป็นส่วนหนึ่งของบัส AMBA (Advanced Microcontroller Bus Architecture) เป็นเป้าหมายในการออกแบบระบบประสิทธิภาพสูง แบนด์วิดท์ และความถี่ ต้นแบบรถบัสทั้งสองมีความสัมพันธ์กันแม้ว่าจะแตกต่างกันในหลาย ๆ ด้านและความแตกต่างจะกล่าวถึงในบทความนี้ด้านล่าง

AHB กับ AXI

ความแตกต่างหลัก ระหว่าง AHB และ AXI คือ AHB เป็นบัสช่องสัญญาณเดียวในขณะที่ AXI ไม่ใช่บัสช่องสัญญาณเดียว AXI เป็นบัสที่ปรับให้เหมาะสมหลายช่องทาง อ่านและเขียน นอกจากนี้ AHB ยังเป็นโปรโตคอลที่ใช้งานได้มากกว่าในการยืนยัน ASIC เช่นเดียวกับการสื่อสารบนชิปเมื่อเทียบกับ AXI

บัสประสิทธิภาพสูงขั้นสูงเป็นบัสช่องสัญญาณเดียวซึ่งเป็นโปรโตคอลยอดนิยมของ ARM รองรับธุรกรรมเดียวคงค้างต่อบัสมาสเตอร์ เวลาแฝงของบัสของ AHB เริ่มต้นที่ธุรกรรม 16 ไบต์ คุณลักษณะบางอย่างของ AHB ได้แก่ โปรโตคอลนาฬิกาขอบเดียว ธุรกรรมแบบแยกส่วน ความกว้างของบัสขนาดใหญ่ การล็อกการถ่ายโอน

AXI เป็นบัสหลายช่องสัญญาณที่มี 5 ช่องสัญญาณ ได้แก่ Read data channel, Write data channel, Read address channel, Write address channel และ Write response channel AXI รองรับธุรกรรมที่คงค้างหลายรายการ เวลาแฝงของบัสของ AXI เริ่มต้นที่ธุรกรรม 64 ไบต์ คุณลักษณะบางอย่างของ AXI ได้แก่ QoS, Write strobes, โหมดการสื่อสารแบบฟูลดูเพล็กซ์ ฯลฯ

ตารางเปรียบเทียบระหว่าง AHB และ AXI

พารามิเตอร์ของการเปรียบเทียบ

AHB

AXI

ตัวเต็ม

บัสประสิทธิภาพสูงขั้นสูง อินเทอร์เฟซที่ขยายได้ขั้นสูง
ช่อง

เป็นรถบัสช่องทางเดียว เป็นรถบัสหลายช่อง
คุณสมบัติ

การยกเลิกก่อนกำหนด, การโอนที่ถูกล็อค QoS, เขียน Interleaving ข้อมูล, ถ่ายโอนข้อมูลที่ไม่สอดคล้องกัน, ค่าคงที่ไบต์
พื้นที่แอดเดรสที่กำหนดสำหรับสเลฟตัวเดียว

มันคือ 1 KB สำหรับ AHB มันคือ 4 KB สำหรับ AXI
ความยาวระเบิด

Burst Lengths สำหรับ AHB คือ 1, 2, 6, 16 (ยกเว้นประเภท INCR) ความยาวต่อเนื่องมาจาก 1-16 สำหรับ AXI3 และจาก 1-256 สำหรับ AXI4

AHB คืออะไร?

AHB ย่อมาจาก Advanced High-Performance Bus เป็นบัสช่องสัญญาณเดียวซึ่งเป็นบัสที่ใช้ร่วมกันซึ่งมีหนึ่งช่องที่อยู่ ช่องข้อมูลอ่าน และช่องข้อมูลเขียน บัสมาสเตอร์แต่ละคนใน AHB เชื่อมต่อกับบัสที่ใช้ร่วมกันแบบช่องสัญญาณเดียว AHB มีรอบบัสเพียงสองรอบในการทำธุรกรรมอย่างง่าย เฟสที่อยู่ และเฟสข้อมูลที่ตามมา AHB มีความกว้างของบัสขนาดใหญ่

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

AHB ไม่รองรับคุณสมบัติ QoS, แฟลชสำหรับการเขียน และการสนับสนุนพิเศษ รองรับการล็อคการโอนเท่านั้น มีการกระจายพลังงานต่ำและปริมาณงานจำกัด นอกจากนี้ ความยาวระเบิดใน AHB ได้รับการแก้ไขแล้ว คือ 1, 2, 6, 16 ยกเว้นกรณีของ INCR ใน INCR การระเบิดสามารถมีความยาวเท่าใดก็ได้ แม้ว่าจะไม่มีการแชร์นานแค่ไหนก็ตาม นอกจากนี้ยังสามารถมีความยาวได้จนกว่าจะไม่ผ่าน 4K

AHB เปิดตัวใน AMBA เวอร์ชัน 2 โดยบริษัทจำกัด ARM และเป็นโปรโตคอลที่ได้รับความนิยมอย่างมากจนกระทั่งไม่มีการเปิดตัว AXI เวอร์ชันใหม่

AXI คืออะไร?

AXI ย่อมาจาก Advanced eXtensible Interface เป็นบัสหลายช่องสัญญาณที่ออกแบบมาสำหรับการสื่อสารบนชิป เป็นอินเทอร์เฟซการสื่อสารโหมดฟูลดูเพล็กซ์ประสิทธิภาพสูง ความถี่สูง มี 5 ช่องสัญญาณใน AXI และแต่ละช่องไม่ขึ้นกับช่องอื่น แชนเนลคือช่องที่อยู่เขียน (AW), ช่องข้อมูลเขียน (W), ช่องข้อมูลอ่าน aka R (ส่งตอบกลับการอ่านด้วย), ช่องที่อยู่อ่าน (AR) และช่องตอบกลับเขียน (B)

เนื่องจาก AXI มีช่องสัญญาณขนาน 5 ช่องจึงใช้สายไฟจำนวนมากในการวางเลย์เอาต์ ผู้ใช้สามารถแทรกไปป์ไลน์รีจิสเตอร์ได้ทุกที่ในพาธของช่องทางใดช่องทางหนึ่ง และด้วยเหตุนี้ AXI จึงช่วยให้มีความถี่ในการทำงานสูงขึ้น

คุณลักษณะบางอย่างที่ AXI มีคือการถ่ายโอนข้อมูลที่ไม่สอดคล้องกัน (โดยใช้ไฟแฟลช), ที่อยู่/การควบคุมแยกกัน, เฟสข้อมูล, ความแปรปรวนของไบต์, ธุรกรรมแบบต่อเนื่องที่มีการออกที่อยู่เริ่มต้น, QoS, การทำธุรกรรมที่ไม่สำเร็จ, เขียนการแทรกข้อมูล และอะตอมมิก การดำเนินงาน อันที่จริง AXI มีกลไกการส่งสัญญาณเพิ่มเติม เช่น AxRegion และ AxUser

อาจมีการถ่ายโอนข้อมูลหลายรายการสำหรับคำขอเดียวใน AXI ซึ่งหมายความว่าเป็นโปรโตคอลแบบต่อเนื่อง ทำให้ง่ายขึ้นเมื่อต้องถ่ายโอนข้อมูลจำนวนมากจากหรือไปยังที่อยู่ของรูปแบบเฉพาะ มีการระเบิดสามประเภทใน AXI: FIXED, INCR และ WRAP ความยาวของการระเบิดเหล่านี้ทราบตั้งแต่เริ่มต้น และสามารถอยู่ในช่วง 1-16 สำหรับ AXI3 ในขณะที่ 1-256 สำหรับ AXI4

ความแตกต่างหลักระหว่าง AHB และ AXI

บทสรุป

ทั้ง AXI และ AHB เป็นส่วนหนึ่งของบัส AMBA (Advanced Microcontroller Bus Architecture) Advanced High-Performance Bus หรือที่รู้จักในชื่อ AHB เป็นบัสช่องสัญญาณเดียวซึ่งแต่ละบัสมาสเตอร์ต้องเชื่อมต่อกับบัสที่ใช้ร่วมกันแบบช่องสัญญาณเดียว บัสมาสเตอร์ AHB ไม่รองรับโหมดฟูลดูเพล็กซ์

AXI ย่อมาจาก Advanced extensible Interface ซึ่งเป็นบัสหลายช่องสัญญาณ มี 5 ช่องอิสระ เนื่องจากมีหลายช่องสัญญาณ AHB จึงเป็นโหมดฟูลดูเพล็กซ์ของบัสมาสเตอร์ที่รองรับการสื่อสาร AXI รองรับคุณสมบัติต่างๆ เช่น การถ่ายโอนข้อมูลที่ไม่อยู่ในแนวเดียวกัน (โดยใช้แฟลช), QAS, โหมด Semaphore ของการทำงาน, ความแปรปรวนของไบต์ และการเขียนการแทรกข้อมูล เป็นรุ่นที่สามของ AMBA

ความแตกต่างระหว่าง AHB และ AXI (พร้อมตาราง)