1. 程式人生 > >pl向ps傳輸8位資料:axi-lite

pl向ps傳輸8位資料:axi-lite

  作業中逃不掉pl向ps傳完成訊號或結果,由於中斷太麻煩,所以用axi-lite+ps端輪詢比較省事

  首先是我的一個認識錯誤:axi模組不是實體,不是一個像管道的實體,所以讀端寫端是不能自定義的。也就是說,當pl是從裝置時,readData(對axi模組是輸出)只能從pl來,write連ps(對axi模組是輸入)——也就是,ps可以選擇讀出或者寫入pl。所以以下資料通路是錯誤的:pl寫axi,ps讀axi。應該是:pl輸入(新加介面)給axi模組,通過邏輯改變axi的read(output),進而當ps讀的時候讀的是pl想給ps“寫”的值。要站在主裝置的角度看這些介面!

  axi程式碼:

  讀和寫都是寫slv_reg,粒度是8位,有狀態機控制地址。

 

  測試邏輯:

  out模組給axi模組寫常數5,ps讀出來列印

  當前bug:只能寫8位,可能是下標的問題,但我懶得調了。。。

  

  邏輯圖:

  axi程式碼:

  頂層新加輸入介面,給子模組

子模組裡:

 

ps端:讀出來列印

 

現象: