AXI4的收發機制
1、AXI4的譯碼器
對於多個主機和從機的AXI4總線的互聯架構,譯碼器都是重要的。主機的端口一般有三個譯碼器,分別是讀地址通道、寫地址通道和寫數據通道的譯碼器。主要作用是將通道的信息和內部寄存器的信息相互轉化。從機的端口就是寫響應和讀數據通道會有譯碼器。譯碼器就是保證一方可以向其他幾個方向傳遞。這個根據設計需要自行決定。如果有確切的指向關系就可以不使用譯碼器。
2、AXI4的仲裁器
仲裁器,就是決定優先級的邏輯。多個主機可能同時向一個從機發起訪問,這時就需要考慮那個主機先執行。這就是潛在執行順序。可以看出,一個仲裁器的作用相當於交警在堵車時的作用。一個好的仲裁器可以快速地解決通道擁堵的問題。反之,總線的傳輸效率就會降低。有以下幾個標准的解決方法:
1)時間切換時分復用
就是將總線的使用權按時間划分,依次分給總機使用。這和交通燈的交通秩序是一樣的道理。優點是可以保證總體功能執行且結構簡單,缺點是容易浪費。
2)事務時分復用
就是輪流使用,每個主機使用完成后向下一個主機傳遞。缺點也是對於重點的主機無法占用更多的作用。
3)固定優先級
這個方法就是事先就確定順序,顯然,這種方法需要事先對每個主機對於總線的使用效率做一個統計。這個對於設計這來說是比較大的挑戰。
3、AXI4互聯架構
互聯結構,就是多個主機和多個從機如何組成一個網絡。實際的設計中,主機與從機之間的通道有許多的通道是可以復用的。
1)M-1型互聯
就是多個主機向一個從機進行數據傳輸時,所需要的仲裁器需要使用主機優先級判斷和從機數據發送的功能。
2)1-N型互聯
這個就是一個主機和N個從機,需要的互聯的架構也是需要仲裁器支持。在zynq中使用的AXI4應該采用的就是這種架構。
3)M-N型互聯
這種互聯方式是有兩種大的方向的,就是數據共享和地址共享。依舊需要靠仲裁器的工作原理來實現。具體的結構就不過多的了解了。
4、小結
通過對這個部分的AXI4總線協議的基本內容的了解,大致地知道了AXI總線的組成和工作結構。接下來的學習會基於具體的AXI4總線的從機的原理構建,從機的接受與發送來實現對該協議的具體認識。使用的架構應該是1-N互聯。至於總機和仲裁器則是由IP核的設計確認。這里的目標只是通過了解AXI4協議得到zynq基於AXI4總線的掛載自定義IP的設計。