Avalon總線概述


Nios系統的全部外設都是經過Avalon總線與Nios CPU相接的,Avalon總線是一種協議較爲簡單的片內總線,Nios經過Avalon總線與外界進行數據交換。ios

Avalon總線接口分類

可分爲兩類:Slave和Master。slave是一個從控接口,而master是一個主控接口。slave和master主要的區別是對於Avalon總線控制權的把握。master接口具備相接的Avalon總線控制權,而slave接口是被動的。常見的Avalon的傳輸結構有:Avalon總線從讀(slave read),Avalon總線帶一個延遲狀態從讀,Avalon總線從寫(slave write),Avalon總線帶一個延遲狀態從寫。微信

Avalon總線的特色

全部外設的接口與Avalon總線時鐘同步,不須要複雜的握手/應答機制。這樣就簡化了Avalon總 線的時序行爲,並且便於集成高速外設。Avalon總線以及整個系統的性能能夠採用標準的同步時序分析技術來評估。性能

 全部的信號都是高電平或低電平有效,便於信號在總線中高速傳輸。在Avalon總線中,由數據選擇器(而不是三態緩衝器)決定哪一個信號驅動哪一個外設。所以外設即便在未被選中時也不須要將輸出置爲高阻態。ui

爲了方便外設的設計,地址、數據和控制信號使用分離的、專用的端口。外設不須要識別地址總線週期和數據總線週期,也不須要在未被選中時使輸出無效。分離的地址、數據和控制通道還簡化了與片上用戶自定義邏輯的鏈接 。spa

其餘特性和約定

Avalon總線還包括許多其餘特性和約定,用以支持SOPC Builder軟件自動生成系統、總線和外設,包括:設計

最大4GB的地址空間——存儲器和外設能夠映像到32位地址空間中的任意位置3d

內置地址譯碼——Avalon總線自動產生全部外設的片選信號,極大地簡化了基於Avalon總線的外設的設計工做blog

多主設備總線結構——Avalon總線上能夠包含多個主外設,並自動生成仲裁邏輯接口

採用嚮導幫助用戶配置系統——SOPC Builder提供圖形化的嚮導幫助用戶進行總線配置(添加外設、指定主/從關係、定義地址映像等)。Avalon總線結構將根據用戶在嚮導中輸入的參數自動生成同步

 動態地址對齊——若是參與傳輸的雙方總線寬度不一致,Avalon總線自動處理數據傳輸的細節,使得不一樣數據總線寬度的外設可以方便地鏈接

 

Avalon 總線模塊爲外設提供的服務

Avalon 總線模塊爲鏈接到總線的Avalon 外設提供瞭如下的服務:

數據通道多路轉換——Avalon 總線模塊的多路複用器從被選擇的從外設向相關主外設傳輸數據。

 地址譯碼——地址譯碼邏輯爲每個外設提供片選信號。這樣,單獨的外設不須要對地址線譯碼以產生片選信號,從而簡化了外設的設計。

 產生等待狀態(Wait-State)——等待狀態的產生拓展了一個或多個週期的總線傳輸,這有利於知足某些特殊的同步外設的須要。當從外設沒法在一個時鐘週期內應答的時候,產生的等待狀態可使主外設進入等待狀態。在讀使能及寫使能信號須要必定的創建時間/保持時間要求的時候也能夠產生等待狀態。

動態總線寬度——動態總線寬度隱藏了窄帶寬外設與較寬的Avalon 總線(或者Avalon 總線與更高帶寬的外設)相接口的細節問題。舉例來講,一個32 位的主設備從一個16 位的存儲器中讀數據的時候,動態總線寬度能夠自動的對16 位的存儲器進行兩次讀操做,從而傳輸32 位的數據。這便減小了主設備的邏輯及軟件的複雜程度,由於主設備不須要關心外設的物理特性。

 中斷優先級(Interrupt-Priority)分配——當一個或者多個從外設產生中斷的時候,Avalon 總線模塊根據相應的中斷請求號(IRQ)來斷定中斷請求。

 延遲傳輸(Latent Transfer)能力——在主、從設備之間進行帶有延遲傳輸的邏輯包含於Avalon總線模塊的內部。

 流式讀寫(Streaming Read and Write)能力——在主、從設備之間進行流傳輸使能的邏輯包含於Avalon 總線模塊的內部。


版權全部權歸卿萃科技 杭州FPGA事業部,轉載請註明出處

做者:杭州卿萃科技ALIFPGA

原文地址:杭州卿萃科技FPGA極客空間 微信公衆號


 

 

掃描二維碼關注杭州卿萃科技FPGA極客空間

相關文章
相關標籤/搜索