




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 Avalon 總線規(guī)范概 要 Avalon 總線是一種將片上處理器和外設(shè)連接成片上可編程系統(tǒng)(SOPC)的一種簡單總線結(jié)構(gòu)。Avalon總線是一種接口方式,它規(guī)定了主從設(shè)備之間的接口方式及其通信時序。Avalon 總線的設(shè)計目的在于: 簡便:提供了簡單易學(xué)的協(xié)議; 優(yōu)化總線邏輯的資源利用:節(jié)約了可編程器件(PLD)內(nèi)部的邏輯單元(LE); 同步操作:將PLD 上的其他用戶邏輯很好的集成在一起,從而避免了復(fù)雜的時序分析;基本的Avalon 總線事務(wù)可以在主從設(shè)備之間傳送一個字節(jié),半字或字(8,16 或32 位)。當(dāng)一次事務(wù)處理完成,總線可以迅速的在下一個時鐘到來的時候在相同的主從設(shè)備
2、之間或其他的主從設(shè)備間開始新的事務(wù)。Avalon 總線也支持一些高級功能,如“延遲型(latency-aware)外設(shè)”,“流(streaming)外設(shè)”及多總線主設(shè)備。這些高級的功能使其允許在一個總線事務(wù)中進(jìn)行外設(shè)間的多數(shù)據(jù)單元的傳輸。Avalon 總線支持多個總線主設(shè)備。多主設(shè)備的結(jié)構(gòu)為SOPC 系統(tǒng)及高帶寬外設(shè)提供了很大程度上的穩(wěn)定性。例如,一個主外設(shè)可以進(jìn)行直接存儲器訪問(DMA),而不需要處理器在數(shù)據(jù)傳輸路徑上從外設(shè)將數(shù)據(jù)讀入存儲器。Avalon 總線上,主設(shè)備和從設(shè)備之間的相互作用是基于一種被稱為“從設(shè)備(slave-side)仲裁”的技術(shù)。從設(shè)備仲裁決定了當(dāng)多主設(shè)備在同一時刻嘗試
3、連接同一個從設(shè)備的時候,哪個主設(shè)備獲得從設(shè)備控制權(quán)。從設(shè)備仲裁具有兩個優(yōu)勢:1仲裁細(xì)節(jié)內(nèi)嵌于Avalon 總線內(nèi)部。所以,主設(shè)備和從設(shè)備的接口具有一致性,不考慮總線上的主設(shè)備和從設(shè)備的數(shù)量。在每一個和Avalon 總線相連接的主設(shè)備看來,它都是總線上唯一的主設(shè)備。2 多個主設(shè)備可以同時完成總線事務(wù),就像他們并不是在同一個總線周期連接到同一個從設(shè)備一樣。Avalon 總線的設(shè)計是為了配合片上可編程系統(tǒng)(SOPC)的。它是一種由PLD 內(nèi)部邏輯和布線資源的主動片上總線結(jié)構(gòu)。Avalon 結(jié)構(gòu)的一些原則如下:1 與外設(shè)的接口同步于Avalon 時鐘。所以,沒有復(fù)雜的,異步的握手/應(yīng)答模式。Avalo
4、n 總線(及整個系統(tǒng))的性能可以通過使用標(biāo)準(zhǔn)的同步時序分析技術(shù)來實(shí)現(xiàn)測量。2 所有的信號都是有效“低”和“高”,這樣便于總線操作的立即轉(zhuǎn)換。位于Avalon 內(nèi)部的多路復(fù)用器(不是三態(tài)緩沖器)來決定哪個信號驅(qū)動哪個外設(shè)。3 地址,數(shù)據(jù)和控制信號使用分離的,專用端口,這樣簡化了外設(shè)的設(shè)計。外設(shè)不需要對地址和數(shù)據(jù)的總線周期進(jìn)行解碼,也不需要在非使能的時候禁止輸出 功 能 簡 介 Avalon 也包括很多的功能和約定來支持SOPC Builder 軟件自動產(chǎn)生的系統(tǒng)總線和外設(shè):高于4G 的地址空間存儲器和外設(shè)可以被映射為32 位地址空間中的任何地址。同步接口所有的
5、Avalon 信號都被Avalon 總線時鐘同步。這樣簡化了Avalon 總線的相關(guān)時序行為并便于高速外設(shè)的集成。分離的地址,數(shù)據(jù)和控制線路分離的,專用的地址和數(shù)據(jù)路徑更便于與用戶邏輯相連接。外設(shè)不需要對數(shù)據(jù)和地址周期進(jìn)行譯碼。內(nèi)置地址譯碼器Avalon 總線自動的為所有外設(shè)產(chǎn)生片選(Chip Select)信號,大大的簡化了Avalon 外設(shè)的設(shè)計。 多主設(shè)備總線結(jié)構(gòu)在Avalon 總線上可以存在多個主外設(shè)。Avalon 總線自動產(chǎn)生仲裁邏輯?;谙?qū)降呐渲梅奖闶褂玫膱D形化向?qū)б龑?dǎo)用戶完成對Avalon 總線的配置(增加外設(shè),確定主/從關(guān)系,定義存儲器映射
6、)。 Avalon 總線結(jié)構(gòu)的自動產(chǎn)生是由用戶在向?qū)Ы缑娴妮斎雭頉Q定的。動態(tài)總線容量Avalon 總線自動處理數(shù)據(jù)位寬不匹配的外設(shè)間傳送數(shù)據(jù)的細(xì)節(jié),便于在多種不同寬度的設(shè)備間接口。名 詞 及 概 念 許多與SOPC 相關(guān)的名詞和概念都完全是新的,他們和傳統(tǒng)的片外總線結(jié)構(gòu)有著本質(zhì)的不同。設(shè)計者需要懂得這點(diǎn),以便可以理解Avalon 總線規(guī)范。下面的名次及概念構(gòu)成了一個理論化的框架,而Avalon總線規(guī)范就是建立在這一框架的基礎(chǔ)上的。它們貫穿于整個文檔??偩€周期 總線周期被定義為Avalon 主時鐘的相鄰上升沿之間的時間間隔,它是總線時鐘周期的基本單元。總線信號時
7、序參照于總線周期時鐘??偩€傳輸 Avalon 總線的一次傳輸是對數(shù)據(jù)的一次讀/寫操作,它可能持續(xù)一個或多個總線周期。Avalon 總線所支持的傳輸位寬為:一個字節(jié)(8 位),半個字(16 位)或一個字(32 位)。流傳輸流傳輸為“流主設(shè)備”和“流從設(shè)備”之間的連續(xù)性數(shù)據(jù)傳輸建立一個開放式的管道。具有延遲的讀傳輸:某些同步外設(shè)在開始第一次傳輸?shù)臅r候需要延遲一些時鐘周期,但在之后的傳輸中便可以在每一個時鐘周期都返回數(shù)據(jù)。具有延遲的讀傳輸增加了對這種同步設(shè)備的總線利用率。 帶有延遲的讀傳輸有些同步設(shè)備在剛剛開始傳輸?shù)臅r候,需要延遲幾個時鐘周期才能夠完成其第一次讀數(shù)據(jù)
8、的過程,而在之后的傳輸過程中就可以每一個周期返回一個數(shù)據(jù)。帶有延遲的讀傳輸可以增加這些同步設(shè)備的帶寬利用率。延遲性傳輸允許一個主設(shè)備發(fā)出讀請求后,轉(zhuǎn)而執(zhí)行另一個無關(guān)任務(wù),過一段時間再接收數(shù)據(jù)。盡管之前的數(shù)據(jù)還沒有接受到,這個無關(guān)的任務(wù)也可以發(fā)出另一次讀請求。這有利于進(jìn)行連續(xù)標(biāo)準(zhǔn)地址的存取的指令存取操作和DMA 傳輸。這樣,CPU 和DMA 主設(shè)備可以預(yù)讀取其需要的數(shù)據(jù),所以這使得同步存儲器保持活躍狀態(tài),并減少了平均存儲延時。 SOPC Builder 軟件及Avalon 總線的產(chǎn)生SOPC Builder 是Altera 開發(fā)的一款系統(tǒng)生成和集成工具。SOPC Builder 所產(chǎn)生
9、的片上電路系統(tǒng)模塊包括Avalon 總線、主外設(shè)和從外設(shè)。SOPC Builder 提供了圖形化的用戶接口,應(yīng)用這種接口可以實(shí)現(xiàn)向系統(tǒng)模塊中添加主、從外設(shè),配置外設(shè)及配置Avalon 總線將外設(shè)連接起來。這樣,SOPC Builder 自動的創(chuàng)建并連接HDL 模塊,便可以實(shí)現(xiàn)用戶PLD 設(shè)計的每一個部分。 系統(tǒng)模塊 考慮在可編程芯片上實(shí)現(xiàn)用戶自定義系統(tǒng)的結(jié)構(gòu),其中一部分是由SOPC Builder 自動產(chǎn)生的。在Altera PLD 上實(shí)現(xiàn)的完整系統(tǒng)如圖1 所示。出于本文的目的,系統(tǒng)模塊的一些部分是由SOPC Builder 自動產(chǎn)生的。系統(tǒng)模塊應(yīng)該包括最少一個Avalon
10、 主外設(shè)和一個Avalon 從外設(shè),例如UART,定時器或者PIO。系統(tǒng)模塊的外部邏輯可以包含用戶Avalon 外設(shè)及其他的和系統(tǒng)模塊不相關(guān)的用戶邏輯。系統(tǒng)模塊必須與設(shè)計者的PLD 設(shè)計連接起來 。系統(tǒng)模塊的端口依賴于其所包括的外設(shè)及在SOPCBuilder 中進(jìn)行的設(shè)置,并隨其變化。這些端口包括直接到Avalon 總線的接口及在系統(tǒng)模塊中的用戶自定義的和外設(shè)相連的接口。Avalon 總線模塊 圖1. Altera PLD 上集成用戶邏輯的系統(tǒng)模塊 Avalon 總線模塊是任何一個系統(tǒng)模塊的“脊梁”。它是SOPC 設(shè)計中外設(shè)通信的主要路徑。Avalon 總線模塊是所有的控制
11、、數(shù)據(jù)、地址信號及控制邏輯的總和,是其將外設(shè)連接起來并構(gòu)成了系統(tǒng)模塊。Avalon總線模塊實(shí)現(xiàn)了可配置的總線結(jié)構(gòu),其可以為設(shè)計者外設(shè)之間的相互連接而改變。Avalon 總線模塊是由SOPC Builder 自動產(chǎn)生的,所以設(shè)計師并不用親自將總線和外設(shè)連接起來。Avalon總線模塊基本上不會作為分離的單元而單獨(dú)使用,因?yàn)橄到y(tǒng)設(shè)計者總是利用SOPC Builder 將處理器和其他Avalon 外設(shè)自動地集成于一個系統(tǒng)模塊之中。設(shè)計者對Avalon 總線的注意力通常限于與用戶Avalon外設(shè)相連接地具體的端口上。Avalon 總線模塊(一條Avalon 總線)是一個主動的邏輯單元,它取代了PCB 板
12、上的被動的,金屬總線。(見圖2)這就是說,Avalon 總線模塊的端口可以被看作是所有連接到被動總線的引腳連接。本手冊只是定義了包含于Avalon 總線模塊接口中的端口,邏輯行為和信號順序,而沒有提及物理總線的電氣或物理的性能。 圖2 .Avalon 總線模塊框圖范例系統(tǒng) Avalon 總線模塊為連接到總線的Avalon 外設(shè)提供了以下的服務(wù): 數(shù)據(jù)通道多路轉(zhuǎn)換Avalon 總線模塊的多路復(fù)用器從被選擇的從外設(shè)向相關(guān)主外設(shè)傳輸數(shù)據(jù)。 地址譯碼地址譯碼邏輯為每一個外設(shè)提供片選信號。這樣,單獨(dú)的外設(shè)不需要對地址線譯碼以產(chǎn)生片選信號,從而簡化了
13、外設(shè)的設(shè)計。 產(chǎn)生等待狀態(tài)(Wait-State)等待狀態(tài)的產(chǎn)生拓展了一個或多個周期的總線傳輸,這有利于滿足某些特殊的同步外設(shè)的需要。當(dāng)從外設(shè)無法在一個時鐘周期內(nèi)應(yīng)答的時候,產(chǎn)生的等待狀態(tài)可以使主外設(shè)進(jìn)入等待狀態(tài)。在讀使能及寫使能信號需要一定的建立時間/保持時間要求的時候也可以產(chǎn)生等待狀態(tài)。圖2 .Avalon 總線模塊框圖范例系統(tǒng) 動態(tài)總線寬度動態(tài)總線寬度隱藏了窄帶寬外設(shè)與較寬的Avalon 總線(或者Avalon 總線與更高帶寬的外設(shè))相接口的細(xì)節(jié)問題。舉例來說,一個32 位的主設(shè)備從一個16 位的存儲器中讀數(shù)據(jù)的時候,動態(tài)總線寬度可以自動的對16 位的存儲器進(jìn)行兩次讀操作,從而傳輸32
14、位的數(shù)據(jù)。這便減少了主設(shè)備的邏輯及軟件的復(fù)雜程度,因?yàn)橹髟O(shè)備不需要關(guān)心外設(shè)的物理特性。 中斷優(yōu)先級(Interrupt-Priority)分配當(dāng)一個或者多個從外設(shè)產(chǎn)生中斷的時候,Avalon 總線模塊根據(jù)相應(yīng)的中斷請求號(IRQ)來判定中斷請求。 延遲傳輸(Latent Transfer)能力在主、從設(shè)備之間進(jìn)行帶有延遲傳輸?shù)倪壿嫲贏valon總線模塊的內(nèi)部。 流式讀寫(Streaming Read and Write)能力在主、從設(shè)備之間進(jìn)行流傳輸使能的邏輯包含于Avalon 總線模塊的內(nèi)部。Avalon 外設(shè)連接于Avalon 總線的Avalon 外設(shè)是邏輯器件無論片上還是片外的它們進(jìn)
15、行著某種系統(tǒng)級的任務(wù),并通過Avalon 總線與其他的系統(tǒng)部件相通信。外設(shè)是模塊化的系統(tǒng)部件,依賴于系統(tǒng)的需要,可以在設(shè)計的時候增加或者移除。Avalon 外設(shè)可以是存儲器、處理器,也可以是傳統(tǒng)的外設(shè)器件,如UART,PIO,定時器或總線橋。任何的用戶邏輯都可以成為Avalon 外設(shè),只要它滿足本文所述的提供與Avalon 總線接口的地址、數(shù)據(jù)及控制信號接口。連接于Avalon 總線的外設(shè)將被分配專用的端口。除了連接于Avalon 總線的地址、數(shù)據(jù)及控制端口之外用戶也可以自行定制端口。這些于用戶邏輯相連接的信號擴(kuò)展了系統(tǒng)模塊的應(yīng)用。Avalon 外設(shè)要么是主外設(shè),要么是從外設(shè)。主外設(shè)可以于Av
16、alon 上開啟總線傳輸,其至少有一個連接于Avalon 總線模塊的主端口。主外設(shè)也可以有一個從端口其允許此設(shè)備接受其他連接于Avalon 總線的主設(shè)備開啟的總線傳輸。而從設(shè)備只能響應(yīng)Avalon 總線傳輸,而不能夠開啟總線傳輸。像存儲器,UART 這樣的從設(shè)備,通常只有與Avalon總線模塊相連接的一個從端口。在SOPC 環(huán)境中,區(qū)分以下Avalon 總線主設(shè)備/從設(shè)備的外設(shè)類型是十分重要的。系統(tǒng)模塊內(nèi)部外設(shè)如果SOPC Builder 在外設(shè)庫中找到了一個外設(shè),或者設(shè)計者指定了一個用戶外設(shè)的設(shè)計文件,SOPCBuilder 將自動的將此外設(shè)與Avalon 總線模塊相連接。這種外設(shè)是指系統(tǒng)模
17、塊之內(nèi)的外設(shè),也就是被認(rèn)為是系統(tǒng)模塊的一個部分。與Avalon 總線相連接的地址、數(shù)據(jù)及控制端口是向用戶隱藏的。外設(shè)中任何附加的非Avalon 端口將作為系統(tǒng)模塊的端口顯示于外。這些端口可能與物理管腳直接相連或者可能與片上的其他模塊相連。系統(tǒng)模塊外部外設(shè)Avalon 總線外設(shè)也可以存在于系統(tǒng)模塊之外。設(shè)計者選擇將模塊置于系統(tǒng)模塊之外可能有以下幾個原因: 外設(shè)在物理上位于PLD 器件之外 外設(shè)需要某些粘連邏輯(glue logic)使其與Avalon 總線信號連接 在系統(tǒng)模塊產(chǎn)生的時候,外設(shè)的設(shè)計還沒有完成在這些情況下,相應(yīng)的Avalon 總線模塊信號作為系統(tǒng)模塊的端口現(xiàn)于外部(及指定的外設(shè))。
18、主端口(Master Port)主端口是主外設(shè)上用于開啟Avalon 總線傳輸?shù)囊幌盗卸丝诘募?。主端口于Avalon 總線模塊直接相連。實(shí)際上,一個主外設(shè)可能有一個或多個主端口及一個從端口。這些主端口及從端口的相互依賴關(guān)系是由對外設(shè)進(jìn)行設(shè)計時決定的。但是,這些主、從端口上的單獨(dú)的總線傳輸應(yīng)該總是遵循本文所述。本文中所提及的所有主設(shè)備傳輸都是指單獨(dú)的主端口的Avalon 總線傳輸。從端口(Slave Port)從端口是指在位于某一外設(shè)上的,從另一外設(shè)主端口接受Avalon 總線傳輸?shù)囊幌盗卸丝诘募?。從端口也直接與Avalon 總線模塊相連接。主外設(shè)也可以有一個從端口,通過這個從端口可以使其接
19、受Avalon 總線上其他主設(shè)備的傳輸。本文所提及的所有從設(shè)備傳輸都是指單獨(dú)的從端口的Avalon 總線傳輸。主-從端口對(Master-Slave Pair)“主從端口對”是指通過Avalon 總線模塊相連接的一個主端口和一個從端口構(gòu)成的組合。從結(jié)構(gòu)上講,這些主、從端口與Avalon 總線模塊上的相應(yīng)端口相連接。主端口的控制及數(shù)據(jù)信號可以有效的通過Avalon 總線模塊與從端口相互作用。主、從端口之間的連接(這就構(gòu)成了主-從端口對)是在SOPCBuilder 中所確定的。PTF 文件、SOPC Builder 參數(shù)及開關(guān)Avalon 總線及外設(shè)的配置可以利用基于向?qū)У腟OPC Builder
20、 圖形用戶接口(GUI)來完成。通過這個GUI,用戶可以設(shè)定不同的參數(shù)和開關(guān),然后據(jù)此產(chǎn)生系統(tǒng)的PTF 文件。PTF 文件是一個文本化的文件,它定義了: 定義Avalon 總線模塊結(jié)構(gòu)、功能的參數(shù) 定義每個外設(shè)定義結(jié)構(gòu)、功能的參數(shù) 每個外設(shè)的主、從角色 外設(shè)端口(如讀使能、寫使能、寫數(shù)據(jù)等) 通往多主端口的從端口的仲裁機(jī)制然后,PTF 文件通過HDL 產(chǎn)生器創(chuàng)建了系統(tǒng)模塊的寄存器傳輸級(RTL)描述。更多的關(guān)于系統(tǒng)PTF 文件的信息請查看“SOPC Builder 數(shù)據(jù)文檔”(SOPC Builder DataSheet)和 “SOPC Builder PTF 文件參考手冊”(SOPC Bui
21、lder PTF File Reference Manual) 1.3Avalon 總線傳輸 Avalon總線規(guī)范定義了主端口和從端口之間通過Avalon總線模塊傳輸數(shù)據(jù)所需要的信號和時序。構(gòu)成Avalon總線模塊和外設(shè)之間接口的信號隨著傳輸模式的不同而不同。首先,主傳輸與從傳輸?shù)慕涌诓煌?,使用主端口與從端口的信號定義不同。此外,通過系統(tǒng)PTF文件的設(shè)置,所需信號的確切類型與數(shù)量也是可變的。Avalon總線規(guī)范提供了各種選項(xiàng)來剪裁總線信號和時序,以滿足不同類型外設(shè)的需要。Avalon總線基本傳輸模式在一個主從端口對之間每次只傳送一個單元的數(shù)據(jù)。可以通過插入等待周期來延長一次總線傳輸?shù)?/p>
22、時間,以滿足低速外設(shè)的需要。流傳輸模式以及支持并發(fā)多主端口傳輸?shù)哪芰M足高帶寬外設(shè)的需要。所有Avalon從傳輸?shù)男盘枙r序都源自從端口的基本傳輸模式。同樣,主端口的基本傳輸模式是所有Avalon主傳輸?shù)幕A(chǔ)。 主端口接口與從端口接口當(dāng)討論Avalon總線傳輸時,必須注意討論的是總線的哪一邊,是主端口接口還是從端口接口。由主端口輸出的信號與輸入到目標(biāo)外設(shè)的從端口的對應(yīng)信號可能會有較大的差別。從端口的信號活動總是主外設(shè)發(fā)起總線傳輸?shù)慕Y(jié)果。但是,實(shí)際的從端口輸入信號并非直接來自主端口。Avalon總線模塊傳遞來自主端口的信號,并對信號進(jìn)行裁剪,以滿足從外設(shè)的需要。由于以上原因,對Avalo
23、n總線傳輸?shù)慕榻B將分為主傳輸類型和從傳輸類型兩個部分。大多數(shù)用戶只關(guān)心從傳輸,因?yàn)樗麄冊O(shè)計的用戶自定義外設(shè)一般都是從外設(shè)。邊時,用戶只需考慮Avalon總線模塊和用戶自定義外設(shè)之間的信號。只有當(dāng)用戶創(chuàng)建主外設(shè)時才涉及到主傳輸。 Avalon總線時序Avalon總線是一個同步總線接口,由一個Avalon總線主時鐘定時,所有總線傳輸?shù)男盘柖寂cAvalon總線時鐘同步。同步總線接口并不意味著所有的Avalon總線信號都是鎖存的。比如,Avalon的chips
24、elect信號便是由組合邏輯產(chǎn)生的,其輸入是同步于Avalon總線時鐘的寄存器的輸出。因此,外設(shè)不能使用Avalon信號的邊沿,因?yàn)锳valon信號在達(dá)到穩(wěn)定前會變化多次人。就像所有同步設(shè)計一樣,Avalon總線外設(shè)只能在時鐘上升沿對穩(wěn)定的信號作出響應(yīng),且必須在時鐘上升沿輸出穩(wěn)定的信號。Avalon總線模塊也可以連接異步外設(shè),例如片外異步存儲器。但設(shè)計時需要考慮一些額外因素:由于Avalon總線模塊的同步操作,Avalon信號只以Avalon總線時鐘周期為間隔變化。此外,如果異步外設(shè)的輸出直接連接到Avalon總線模塊,用戶必須保證輸出信號在時鐘上升之前達(dá)到穩(wěn)定。Avalon總線規(guī)范并不定義在
25、時鐘上升沿之間信號是如何變化的。信號的變化由Avalon總線時鐘觸發(fā),信號只要在捕獲時鐘上升沿之前達(dá)到穩(wěn)定就可以了,因此,總線規(guī)范中的Avalon總線時序圖中不會描繪精確的時間信息。類似地,Avalon總線沒有規(guī)定固有的最高性能。系統(tǒng)模塊在特定的器件上綜合布線之后,用戶必須對系統(tǒng)模塊進(jìn)行標(biāo)準(zhǔn)的時序分析,以確定Avalon總線傳輸達(dá)到的最高速度。 Avalon總線信號由于Avalon總線是一個由HDL文件綜合而來,所以在連接Avalon總線模塊和Avalon外設(shè)時需
26、要一些特別的考慮。對于傳統(tǒng)的片外總線結(jié)構(gòu),所有外設(shè)都共享一組固定的.預(yù)先設(shè)計的金屬線路,而Avalon總線與此不同:SOPCBuilder必須準(zhǔn)確地了解每個外設(shè)提供了哪些Avalon端口,以便連接外設(shè)與Avalon總線模塊。它還需要了解每個端口的名稱和類型,這些信息定義在系統(tǒng)PTF文件中。Avalon總線規(guī)范不要求Avalon外設(shè)必須包含哪些信號。它只定義了外設(shè)可以包含的各種信號類型(例如地址.數(shù)據(jù).時鐘等)。外設(shè)的每一個信號都要指定一個有效的Avalon信號類型,以確定該信號的作用,一個信號也可以是用戶自定義的。在這種情況下,SOPC Builder不將該端口與Avalon總線模塊連接。Av
27、alon信號類型首先分為主端口信號和從端口信號兩類。因而,外設(shè)使用的信號類型生產(chǎn)生產(chǎn)首先由端口的主從角色決定。每個狡立的主端口或從端口使用的信號類型由外設(shè)的設(shè)計決定。例如,設(shè)計一個只有輸出的PIO從外設(shè)只需要定義用于寫的信號,而不需要定義用于讀的信號。盡管中斷請求輸出是從端口允許的信號類型,但也不是必須使用。Avalon總線規(guī)范不規(guī)定Avalon外設(shè)信號的命名規(guī)則。不同信號類型的作用是預(yù)先定義的,而信號的名稱則是由外設(shè)決定。信號可以按照它的信號類型來命名,也可以遵照系統(tǒng)級的命名規(guī)范采用不同的名稱。下面章節(jié)中討論的Avalon總線傳輸時會涉及到一些Avalon信號,例如readdata信號和ir
28、q信號。在這里信號類型的名稱作為信號名稱,但外設(shè)信號的實(shí)際名稱可以與此不同。作為一個例子,表1.1列舉了部分Avalon從端口可用的信號類型。信號的方向是從外設(shè)的角度定義的。例如時鐘信號clk(方向?yàn)閕n)對于從外設(shè)來說是輸入信號,而對于Avalon總線模塊來說是輸入信號。表1.1.部分Avalon從端口信號信號類型寬度方向必需Description Clk 1 in no系統(tǒng)模塊和Avalon總線模塊的全局時鐘信號。所有總線傳輸傳輸都同步于clk。只有異步從端口才能省略clk.address1 - 32inno來自Avalon總
29、線模塊的地址線 Reset 1 in no從端口的讀請求信號。當(dāng)從端口不輸出數(shù)據(jù)時不需要該信號。若使用了該信號,readdata信號也必須使用 readdata 1 32 out no讀傳輸中輸出到Avalon總線的數(shù)據(jù)線。當(dāng)從端口不輸出數(shù)據(jù)時不需要該信號。若使用了該信號,read信號也必須使用 write 1 in no從端口的寫請求信號。當(dāng)從端口不接收數(shù)據(jù)時不需要該信號。若使用了該信號,writedata信號也必須使用 wri
30、tedata 1 32 in no寫傳輸中來自Avalon總線的數(shù)據(jù)線。當(dāng)從端口不接收數(shù)據(jù)時不需要該信號。若使用了該信號,write信號也必須使用irq1outno中斷請求。當(dāng)從外設(shè)需要外設(shè)服務(wù)時可觸發(fā)irq 表1.1中例舉的信號類型都是高電平有效。Avalon總線還提供了各個信號類型的反向形式。在PTF聲明中,在信號類型名稱加”_n”,便可將對應(yīng)的端口聲明為低電平有效。這對許多使用低電平有效的片外外設(shè)非常有用。 并發(fā)多主端口的Avalon總線需要考慮的事項(xiàng)Avalon總線允許多個端口連接到Avalon總線模塊。而且實(shí)現(xiàn)Avalon總線的并發(fā)多主端口功能
31、時,Avalon總線模塊不需要額外的特殊信號。當(dāng)多個主外設(shè)試圖同時訪問同一個外設(shè)時,Avalon總線模塊內(nèi)部的從端口仲裁邏輯會被用來解決沖突。仲裁機(jī)制對于Avalon總線外設(shè)完全是透明的。因而,不論是否使用了仲裁,應(yīng)用于主端口和從端口的Avalon總線傳輸協(xié)議是相同的。換句話說,從端口不會意識到有多個主外設(shè)同時請求總線傳輸。類似地,被仲裁邏輯強(qiáng)制等待的主外設(shè)也不會意識到另一個獲勝的主外設(shè)的存在。主端口只是簡單地發(fā)現(xiàn)它的等待請求信號被置為有效,并一直等待,直到目標(biāo)外設(shè)準(zhǔn)備好處理總線傳輸。將仲裁的細(xì)節(jié)隱藏在Avalon總線模塊內(nèi)部極大簡化了外設(shè)的設(shè)計,任何Avalon外設(shè)在單主端口和多主端口結(jié)構(gòu)中
32、都可以使用。 1.4Avalon從端口傳輸 從傳輸?shù)腁valon總線信號表2列舉了外設(shè)的從端口與Avalon總線間接口的信號類型。信號的方向是以外設(shè)的角度定義的。外設(shè)提供的信號由外設(shè)的設(shè)計和PTF文件中的信號定義決定,不需要提供全部的信號類型。 表2 Avalon從端口信號 Signal TypeWidthDirectionRequiredDescriptionclk1inno系統(tǒng)模塊和Avalon總線模塊的全局時鐘信號。所有總線傳輸都同步于clk。只有異步從端口才能省略clkreset1inno全局復(fù)位信號。如何使用取決于外設(shè)chipselect1inyes從端
33、口的片選信號。當(dāng)chipselect信號無效時,從端口必須忽略所有的Avalon信號輸入address1 - 32inno來自Avalon總線模塊的地址線begintransfer1inno在每個新的Avalon總線傳輸?shù)牡谝粋€總線周期期間有效。如何使用該信號取決于外設(shè)byteenable0, 2, 4inno字節(jié)使能信號,在訪問寬度超過8位的存儲器時選擇特定的字節(jié)段,如何使用該信號取決于外設(shè)read1inno從端口讀請求信號。當(dāng)從端口不輸出數(shù)據(jù)時不需要該信號。若使用了該信號,readdata信號也必須使用readdata1 32outno讀傳輸中輸出到Avalon總線的數(shù)據(jù)線。當(dāng)從端口不輸出
34、數(shù)據(jù)時不需要該信號。若使用了該信號,read信號也必須使用 write1inno從端口的寫請求信號。當(dāng)從端口不接收數(shù)據(jù)時不需要該信號。若使用了該信號,writedata信號也必須使用writedata1 32inno寫傳輸中來自Avalon總線的數(shù)據(jù)線。當(dāng)從端口不接收數(shù)據(jù)時不需要該信號。若使用了該信號,write信號也必須使用readdatavalid1outno讀取數(shù)據(jù)有效信號,僅用于具有可變讀延遲的從端口。用于標(biāo)記從端口發(fā)出有效數(shù)據(jù)時的時鐘上升沿waitrequest1outno等待請求信號,當(dāng)從端口不能立即響應(yīng)時暫停Avalon總線模塊readyfordata1outno流傳輸
35、模式信號。表示流模式從端口可以接收數(shù)據(jù)dataavailable1outno流傳輸模式信號。表示流模式從端口擁有有效數(shù)據(jù)endofpacket1outno流傳輸模式信號。用于向主端口報告” 包結(jié)束”狀態(tài)。如何使用取決于外設(shè)irq1outno中斷請求。當(dāng)從外設(shè)需要外設(shè)服務(wù)時可觸發(fā)irqresetrequest1outno復(fù)位請求信號,該信號使得一個外設(shè)可以復(fù)位整個系統(tǒng)模塊 上述信號如果不加說明都是高電平有效,此外,Avalon總線也提供上述信號的低電平有效版本,在信號名稱后加”_n”表示低電平有效,如:read信號為高電平有效,而read_n為低電平有效。 Avalon總線上
36、的從端口讀傳輸 .1基本從端口傳輸模式基本從端口傳輸模式是所有Avalon從端口傳輸?shù)幕A(chǔ)。所有其它的從端口傳輸使用的信號都包含了基本從端口傳輸?shù)男盘?,并擴(kuò)展了基本從端口操作時序?;緩亩丝趥鬏斢葾valon總線模塊發(fā)起,然后從端口向Avalon總線模塊傳輸一個單元的數(shù)據(jù)?;緩亩丝谧x傳輸沒有延遲。例4.1顯示了一個基本從端口讀傳輸?shù)睦?。在Avalon基本讀傳輸中,總線傳輸開始于一個時鐘上升沿,并在下一個時鐘上升沿結(jié)束,不插入等待周期。由于傳輸在一個時鐘周期內(nèi)完成,目標(biāo)外設(shè)必須能夠立即.異步向Avalon總線模塊輸出相應(yīng)地址的內(nèi)容。在clk的第一個上升沿,Avalon總線向目標(biāo)外設(shè)
37、傳遞address、byteenable_n和read_n信號。Avalon總線模塊內(nèi)部對address進(jìn)行譯碼,產(chǎn)生片選并驅(qū)動從端口的chipselect信號。一旦chipselect信號有效,從端口在數(shù)據(jù)有效時應(yīng)立即驅(qū)動readdata輸出。最后,Avalon總線模塊在下一個時鐘上升沿捕獲readdata。 例4.1基本從端口讀傳輸 時序說明:(A) 第一個總線周期開始于clk上升沿;(B)
38、Address和read_n信號有效;(C) Avalon總線對address譯碼,輸出有效的chipselect;(D) 片選有效后,從端口在第一個總線周期內(nèi)必須返回有效數(shù)據(jù);(E) Avalon總線在下一個clk上升沿捕獲readdata,讀傳輸?shù)酱私Y(jié)束。另一個總線傳輸可以在下一個總線周期開始。無等待周期的基本讀傳輸只適用于完全異步的外設(shè)。目標(biāo)外設(shè)必須在外設(shè)被選中或地址變化時立即向Avalon總線提供數(shù)據(jù)。為使傳輸正常工作,readda
39、ta的輸出必須在一下個時鐘上升沿有效且穩(wěn)定。鎖存輸入或輸出端口的同步外設(shè)不能使用無等待周期的基本從端口讀傳輸。大部分片上外設(shè)都采用同步接口,因此至少需要一個時鐘周期來捕獲數(shù)據(jù)。在讀傳輸中,需要至少一個等待周期,除非該外設(shè)是具有延遲的。外設(shè)的從端口還可以使用字節(jié)使能信號byteenable_n,對byteenable_n的解釋是由外設(shè)決定的。在最簡單的情況下,從端口可以忽略byteenable_n,每當(dāng)read_n有效時總是驅(qū)動所有的字節(jié)段。Avalon總線模塊在每次讀傳輸中捕獲readdata的全部位寬度。如果在讀傳輸中某個字節(jié)未使能,其返回到Avalon總線模塊的值是不確定的。當(dāng)chipse
40、lect無效時,從端口必須忽略所有其它輸入信號,其輸出信號沒有必要置為高阻。此外,chipselect的上升沿或read_n的下降沿不能用作讀傳輸開始的標(biāo)志,因?yàn)檫@些邊沿的穩(wěn)定性是沒有保證的。.2具有固定等待周期的從端口讀傳輸具有固定等待周期從端口傳輸使用的信號與基本讀傳輸使用的相同,不同點(diǎn)只是信號的時序。具有等待周期的從端口讀傳輸適用于不能在一個時鐘周期內(nèi)提供數(shù)據(jù)的外設(shè)。例如,若指定了一個等待周期,Avalon總線模塊在提供了有效的地址和控制信號后,會等待一個時鐘周期再捕獲外設(shè)的數(shù)據(jù)。Avalon總線模塊在每次讀傳輸時都會等待固定數(shù)量的總線周期。例4.2顯示了具有單個等待周期的從端口讀傳輸?shù)?/p>
41、時序。Avalon總線模塊在第一個總線周期提供address、byteenable、read_n和chipselect信號。由于具有等待周期,外設(shè)不必在第一個總線內(nèi)提供readdata。第一個總線周期是第一個(也是唯一一個)等待周期。從端口可以隨時捕獲地址和控制信號,片上的同步外設(shè)通常在第二個總線周期開始(等待周期結(jié)束)時的clk上升沿捕獲地址和控制信號。在第二個總線周期間,目標(biāo)外設(shè)向Avalon總線模塊提供readdata。在第三個也是最后一個時鐘上升沿,Avalon總線模塊由從端口捕獲readdata。在第三個也是最后一個時鐘上升沿,Avalon總線模塊由從端口模塊readdata并結(jié)束總
42、線傳輸。時序說明:(A)第一個總線周期開始于clk上升沿;(B)Address和read_n信號有效;(C)Avalon總線對address譯碼,輸出有效的chipselect;(D)clk上升沿標(biāo)志著第一個且是唯一的一個等待周期結(jié)束。如果從端口是同步的,它可以在clk上升沿捕獲address、read_n、和chipselect;(E) 從端口在第二個總線周期內(nèi)返回有效數(shù)據(jù);(F)Avalon總線在下一個clk上升沿捕獲readdata,讀傳輸?shù)酱私Y(jié)束。另一個總線傳輸可以在下一個總線周期開始。 例4.2具有一個固定等待周期的從端口讀傳輸 具有單個等待周期的讀傳輸經(jīng)常用于同
43、步的片上外設(shè)。在合理的PLD設(shè)計中,模塊間的接口應(yīng)當(dāng)通過寄存器同步。加入了一個等待周期后,外設(shè)可以在chipselect有效后的下一個clk上升沿捕獲address、byteenable、read_n和chipselect,這使得目標(biāo)外設(shè)具有至少一個完整的總線周期來向Avalon總線模塊提供返回數(shù)據(jù)。例4.3顯示了具有多個等待周期的從端口讀傳輸。它和例4.2幾乎是一樣的,只是Avalon總線在由外設(shè)獲取readdata之前等待多于一個總線周期。 .3 具有外設(shè)控制等待周期的從端口讀傳輸外設(shè)控制的等待周期使得目標(biāo)外
44、設(shè)能夠根據(jù)提供數(shù)據(jù)的需要將Avalon總線模塊的讀操作暫停任意多個總線周期。在這種傳輸模塊下,外設(shè)向Avalon總線模塊提供數(shù)據(jù)所需的時間是不固定的。例4.4顯示了這種情況,外設(shè)控制等待周期的讀傳輸模式使用了waitrequest信號。它是一個從端口的輸出信號。當(dāng)從端口的read_n信號有效后,從端口若要延長讀傳輸,它必須在第一個總線周期內(nèi)返回waitrequest。當(dāng)waitrquest有效后,Avalon總線模塊便暫停工作,不再捕獲readdata。Avalon總線模塊在waitrequest失效后的下一個clk上升沿捕獲readdata。Avalon總線模塊沒有超時機(jī)制來限制從端口暫???/p>
45、線的時間。當(dāng)Avalon總線模塊暫停后,系統(tǒng)模塊內(nèi)的某個主外設(shè)也被暫停,并等待著由目標(biāo)從外設(shè)返回需要的數(shù)據(jù)。一個從端口能夠?qū)⒅鞫丝谟谰玫亍皰炱稹?。因此,外設(shè)必須保證不會使waitrequest無限期地保持有效。時序說明:(A)第一個總線周期開始于clk上升沿;(B)Address和read_n信號有效;(C)Avalon總線對address譯碼,輸出有效的chipselect;(D)從端口在下一個clk上升沿之前置waitrequest有效(E) Avalon總線模塊在clk上升沿讀取waitrequest。這時waitrequest有效,因而在該時鐘上升沿不捕獲readdata;(F-G)w
46、aitrequest一直保持有效,可以占用任意多個總線周期;(H)從端口提供了有效的readdata;(I) 從端口置waitrequest無效;(J) Avalon總線在下一個clk上升沿捕獲readdata,讀傳輸?shù)酱私Y(jié)束。另一次總線傳輸可以開始于下一個總線周期。 若一個從端口采用了外設(shè)控制等待周期的讀傳輸模式,對該端口的其它傳輸模式會有一些限制,比如不能再使用建立時間和保持時間。這些限制只影響從端口,不影響連接到Avalon總線模塊上的其它外設(shè)。在大多數(shù)情況下,產(chǎn)生waitrequest信號的外設(shè)是片上同步外設(shè),不需要考慮建立時間和等待時間。 .4具有建立時間的從端口讀傳輸Av
47、alon總線模塊按照用戶設(shè)計或者外設(shè)默認(rèn),能夠自動滿足各個從端口信號的建立時間要求,發(fā)起讀傳輸?shù)闹魍庠O(shè)不必考慮各個信號對建立時間與保持時間的要求。具有建立時間的從端口讀傳輸使用的信號與基本讀傳輸使用的相同,不同點(diǎn)只是信號的時序。這種傳輸方式通常用于一些片外外設(shè),它們要求在讀使能信號有效前address和 Chipselect信號需要穩(wěn)定一段時間。一個非零的建立時間N意味著address、byteenable_n和chipselect信號提供給從端口之后,在read_n有效之前有N個總線周期的延遲。要注意chipselect不受建立時間的影響,若外設(shè)對于read_n和chipselect都要求有
48、建立時間,用戶必須在接口中手工添加適當(dāng)?shù)倪壿嫞ㄒ粋€與門)。完成總線傳輸所需的總線周期的總數(shù)取決于建立時間和等待周期的總線周期。例如,若一個外設(shè)具有參數(shù)setup_Time=”2”和Read_Wait_States=”3”,安將花費(fèi)6個總線周期來完成傳輸:2個總線周期的建立時間,3個總線周期的等待周期,1個總線周期用來捕獲數(shù)據(jù)。例4.5顯示了具有一個總線周期的建立時間和一個固定等待周期的從端口讀傳輸。時序說明:(A)第一個總線周期開始于clk上升沿;(B)Address和byteenable_n有效,read_n信號仍保持無效;(C)Avalon總線對address譯碼,輸出有效的chipsel
49、ect;(D)clk上升沿標(biāo)志著建立時間總線周期結(jié)束,并開始總線等待周期;(E) Avalon總線模塊置read_n有效;(F)clk上升沿標(biāo)志著總線等待周期結(jié)束;(H) Avalon總線在下一個clk上升沿捕獲readdata,讀傳輸?shù)酱私Y(jié)束。另一次總線傳輸可以開始于下一個總線周期。如果一個外設(shè)能夠同時支持讀和寫總線傳輸,并且指定了建立時間,那么讀傳輸和寫傳輸具有同樣的建立時間。例4.5具有建立時間的從端口讀傳輸 在Avalo
50、n總線上的從端口寫傳輸 .1 基本從端口寫傳輸和從端口讀傳輸類似,基本從端口寫傳輸是所有Avalon從端口寫傳輸?shù)幕A(chǔ)。所有其它的從端口寫傳輸模式使用的信號都包含了基本從端口寫傳輸?shù)男盘?,并擴(kuò)展了基本從端口寫時序?;緩亩丝趯憘鬏斢葾valon總線模塊發(fā)起,由Avalon總線模塊向從端口傳輸一個單元的數(shù)據(jù)?;緩亩丝趯憘鬏敍]有延遲。例4.6顯示了基本從端口寫傳輸,沒有等待周期、建立時間和保持時間。Avalon總線模塊提供address、writedata、byteenable_n和write_n信號,然后設(shè)置ch
51、ipselect有效。從端口在下一個時鐘上升沿捕獲地址、數(shù)據(jù)和控制信號,寫傳輸立即結(jié)束。整個傳輸過程僅花費(fèi)一個總線周期。從外設(shè)可以在傳輸結(jié)束后再花費(fèi)一些總線周期來實(shí)際處理寫入的數(shù)據(jù)。如果外設(shè)不能在每個總線周期都接受數(shù)據(jù),則需要加入等待周期。 例4.6基本從端口寫傳輸時序說明:(A) 寫傳輸開始于clk上升沿;(B) Writedata、address、byteenable_n、write_n信號有效;(C)
52、 Avalon總線模塊對address譯碼,并向從端口設(shè)置有效的chipselect;(D) 從端口在下一個clk上升沿捕獲writedata、address、byteenable_n、write_n和chipselect,寫傳輸?shù)酱私Y(jié)束。另一次讀或?qū)憘鬏斂梢蚤_始于下一個總線周期?;緦憘鬏斨贿m合于同步外設(shè),包括許多片上外設(shè),例如PIO和定時器等?;緦憘鬏?shù)臅r序不適合于異步外設(shè),因?yàn)榘╳rite_n和chipselect在內(nèi)的所有輸出信號同時失效,這會在片外存儲器等異步外設(shè)中造成競爭
53、冒險現(xiàn)象。對于這樣的外設(shè),用戶可以設(shè)定信號的保持時間,這將在后面的章節(jié)中討論。當(dāng)writedata比一個字節(jié)寬時,字節(jié)使能信號byteenable_n可以寫入特定的字節(jié)段。Byteenable_n是一組信號線,其中每一次對應(yīng)于writedata的一個字節(jié)段。Byteenable_n通常用于片外的16位或32位字尋址的存儲器設(shè)備。當(dāng)寫入單個字節(jié)數(shù)據(jù)時,address僅指定相應(yīng)的字或半字地址,而byteenable_n精確地指定要寫入哪個字節(jié)。表4.3是使用byteenable_n的一些例子,其中假定從端口是一個32位的外部存儲器。 表4.332位從端口字節(jié)使能的使用byteenable
54、_n3:0寫行為0000Write full 32-bits1100Write lower 2 bytes0011Write upper 2 bytes1110Write byte 0 only1011Write byte 2 only .2具有固定等待周期的從端口寫傳輸具有固定等待周期的從端口寫傳輸使用的信號與基本寫傳輸使用的相同,不同點(diǎn)只是信號的時序:Avalon總線模塊在每次總線傳輸時都會插入固定數(shù)量的等待周期。具有等待周期的從端口寫傳輸通常用于不能在一個總線周期內(nèi)從Avalon總線模塊捕獲數(shù)據(jù)的外設(shè)。在邊種情況下Avalon總線模塊在第一個總線周期中提供address、wri
55、tedata、byteenable、write_n和chipselect信號。這和基本寫傳輸開始時一樣。在等待期間,這些信號保持穩(wěn)定。在固定數(shù)量的等待周期后從端口捕獲來自Avalon總線模塊的數(shù)據(jù)。此后傳輸結(jié)束,Avalon總線模塊同時使所有信號失效。例4.7顯示了具有一個等待周期的從端口寫傳輸實(shí)例。 時序說明:(A) 寫傳輸開始于clk上升沿;(B) Writedata、address、byteenable_n、write_n信號有效;(C) Avalon總線模塊對address譯碼,并向從端口設(shè)置有效的chipselect;(D) 在第一個(也是唯一一個)總線等待周期在該clk上
56、升沿結(jié)束。所有來自Avalon總線模塊的信號保持不變;(E)從端口在該clk上升沿或之前捕獲writedata、address、byteenable_n、write_n和chipselect,寫傳輸?shù)酱私Y(jié)束。另一次讀或?qū)憘鬏斂梢蚤_始于下一個總線周期。 .2 具有外設(shè)控制等待周期的從端口寫傳輸外設(shè)控制等待周期使用目標(biāo)外設(shè)能夠根據(jù)需要將Avalon總線模塊暫停任意多個總線周期。某些外設(shè)讀取數(shù)據(jù)時所需的總線周期是不固定的。因?yàn)槊看蝹鬏敹伎赡苡龅讲煌臈l件。這種傳輸模式對于這些外設(shè)非常適用。外設(shè)控制等待周期的
57、傳輸模式使用了waitrequest信號,它是一個從端口的輸出信號。Avalon總線模塊在第一個總線周期中提供address、writedata、byteenable_n、write_n、和chipselect信號,這和基本寫傳輸開始時一樣。從端口若需要額外的時間來捕獲數(shù)據(jù),它必須在下一個時鐘上升沿之前設(shè)置waitrequest有效。當(dāng)waitequest有效后,Avalon總線模塊便暫停工作,使得address、writedata、byteenable_n、write_n和chipselect信號保持穩(wěn)定。在從端口設(shè)置waitrequest無效后,總線傳輸在下一個時鐘上升沿結(jié)束。Avalon
58、總線模塊沒有超時機(jī)制來限制從端口強(qiáng)制總線暫停的時間。當(dāng)Avalon總線模塊被暫停后,系統(tǒng)模塊內(nèi)的某個主外設(shè)也被暫停,并等待著從端口讀取寫入的數(shù)據(jù)。這樣就使得一個從外設(shè)能夠?qū)⒅魍庠O(shè)永久地“掛起”。因此,外設(shè)必須保證不會使waitrequest無限期地保持有效。例4.8顯示了一個具有外設(shè)控制等待周期的從端口寫傳輸?shù)膶?shí)例。時序說明:(A) 寫傳輸開始于clk上升沿;(B) Address、writedata、byteenable_n、和write_n信號有效
59、;(C) Avalon總線模塊對address譯碼,然后置chipselect有效;(D) 從端口在下一個clk上升沿之前置waitrequest有效;(E) Avalon總線模塊在該clk上升沿讀取waitrequest。如果waitrequest有效,這個總線周期就成為一個等待周期,address、writedata、byteenable_n和write_n信號保持不變;(F-
60、G)waitrequest一直保持有效,這可以占用任意多個總線周期;(H)從端口最終捕獲了writedata;(I) 從端口置waitrequest無效;(J)寫傳輸在下一個clk上升沿結(jié)束。另一次總線傳輸可以開始于下一個總線周期。若一個從端口采用了外設(shè)控制等待周期的寫傳輸模式,對該端口的其它傳輸模式會有一些限制,比如不能再使用建立時間和保持時間。這些限制只影響該從端口,不影響連接到Avalon總線模塊上的其它外設(shè)。在大多數(shù)情況下,產(chǎn)生waitrequest信號的外設(shè)是片上的同步外設(shè),不需要考慮建立時間和等待時間。例4.8具有外設(shè)控制等待周期的從端口寫傳輸.4具有建立時間和保持時間的從端口寫傳輸Avalon總線模塊按照用戶設(shè)定或者外設(shè)默認(rèn),能夠自動滿足各個從端口信號的建立時間要求,發(fā)起讀傳輸?shù)闹魍庠O(shè)不必考慮各個信號對建立時間與保持時間的要求。具有建立時間的從端口寫傳輸使用的信號與基本使用的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年美術(shù)活動春雨標(biāo)準(zhǔn)教案反思
- 提升教學(xué)質(zhì)量的年度目標(biāo)計劃
- 《貴州眾一金彩黔礦業(yè)有限公司織金縣官寨鄉(xiāng)明源煤礦(變更)礦產(chǎn)資源綠色開發(fā)利用方案(三合一)》評審意見
- 渠道管理-渠道中的行為
- 2025年駐馬店貨運(yùn)資格證考題
- 2025年黃石貨運(yùn)從業(yè)資格證考試模擬考試題庫
- 2025年阿克蘇b2貨運(yùn)上崗證模擬考試
- 2025年盤錦貨運(yùn)資格證模擬考試卷
- 2025年安徽貨運(yùn)從業(yè)考試試題及答案大全
- 美食產(chǎn)品知識培訓(xùn)課件
- 中國傳媒大學(xué)-廣告媒體策劃與應(yīng)用(第2版)-課件
- 玻璃工藝學(xué)第4章 玻璃的性質(zhì)
- 四川省藥械集中采購及醫(yī)藥價格監(jiān)測平臺操作指引
- 精品市政道路施工測量方法及測量方案
- 室內(nèi)采暖管道安裝施工工藝標(biāo)準(zhǔn)規(guī)范標(biāo)準(zhǔn)
- 小型手推清掃車畢業(yè)設(shè)計說明書課件
- 監(jiān)理大綱(范本)
- 受拉鋼筋抗震錨固長度Lae
- 2018年湖北省襄陽市中考物理試卷
- 《沉淀滴定法》PPT課件.ppt
- 波程差與光程差
評論
0/150
提交評論