fsl接口

fsl接口是FSL匯流排在輸出FIFO和輸入FIFO之間提供點對點的通信通道

介紹

更詳細的信息參考IP核參考資料。表2.29給出了主FSL信號接口,表2.30給出了從FSL接口信號。表2.29主FSL信號接口

信號 功能 VHDL類型 方向
FSLn_M_Clk 時鐘 std_logic input
FSLn_M_Write 寫使能信號,表示數據正被寫到輸出FSL std_logic output
FSLn_M_Data 寫到輸出FSL的數據 std_logic_vector output
FSLn_M_Control 寫到輸出FSL的控制位 std_logic output
FSLn_M_Full 當設定時,表示輸出FSL的FIFO滿。 std_logic input

接口

信號 功能 VHDL類型 方向
FSLn_S_Clk 時鐘 std_logic input
FSLn_S_Read 讀承認信號表示,數據已經從輸入FSL讀出 std_logic output
FSLn_S_Data 在輸入FSL的頂部的現在可用的數據 std_logic_vector input
FSLn_S_Control 控制比特,在輸入FSL的頂部的數據現在可用 std_logic input
FSLn_S_Exists 指示標誌,表明在輸入FSL中存在數據。 std_logic input

操作方法

MicroBlaze使用put或putd指令,執行寫FSL的操作。寫FSL操作將暫存器的內容傳送到輸出FSL匯流排上。當FSL的FIFO非滿狀態時,在塊傳輸模式下只需要一個時鐘周期就能完成數據傳輸。如果FSL的FIFO滿時,處理器停下來等待,直到FSL的滿標誌變成低。非塊傳輸指令(prefixn)在一個時鐘周期下完成傳輸(即使FSL為滿)。如果FSL為滿時,寫操作被禁止,且MSR的進位標誌被置位。

匯流排

MicroBlaze使用get或getd指令,執行讀FSL的操作。讀FSL操作將輸入FSL匯流排的內容傳輸到通用暫存器中。當FSL的FIFO非滿狀態時,在塊傳輸模式下只需要2個時鐘周期就能完成數據讀傳輸。如果FSL的FIFO滿時,處理器停下來等待,直到FSL的滿標誌變成低。非塊傳輸指令(prefixn)在2個時鐘周期下完成傳輸(即使FSL為空)。如果FSL為空時,不產生讀數據傳輸,且MSR的進位標誌被置位。

連線

直接FSL連線用來去避免需要FSL匯流排。在沒有緩衝的情況下,比如兩個連線的IP核。

在直接FSL連線下不使用FSL的FIFO。無FIFO可以減少延遲和要求實現的資源。

MicroBlaze處理器的每一個FSL接口能使用FSL直接連線或FSL匯流排。

MicroBlaze的DWFSL接口是直接FSL連線的初始源,它只能連線到DWFSL目標。DWFSL的初始源和目標有同樣的信號名(與MFSL信號一樣)。MicroBlaze使用DWFSL接口通過put或putd命令寫數據到目標。

MicroBlaze的DRFSL接口是一個FSL連線的目標,它只能連線到DRFSL的初始源。DRFSL的初始源和目標有同樣的信號名(與SFSL信號一樣)。MicroBlaze使用DRFSL接口通過get或getd命令從初始源讀數據。

Xilinx的CacheLink(XCL)接口就是使用直接FSL連線實現的。

相關詞條

相關搜尋

熱門詞條

聯絡我們