ZYQN 三 PS的中斷說明

2021-10-01 09:05:56 字數 2615 閱讀 1634

說明:

開發軟體: vivado 和 sdk

開發平台:黑金zynq的7010

翻開 ug585 中斷部分,zynq 中斷大致可分為三個部分,

中斷詳細分為

sgi(software generated interrupts)軟體中斷,

ppi(private peripheral interrupts)私有外設中斷,

spi(shared peripheral interrupts)共享外設中斷。

1 為 sgi,軟體生成的中斷,共 16個埠;

2 為 ppi,cpu 私有外設中斷,有 5 個;

3 為 spi,共享外設中斷,來自於 44 個 ps 端的io 外設以及 16 個 pl 端的中斷。

中間部分為 gic,也即中斷控制器,用於對中斷進行使能、關閉、掩碼、設定優先等

下面為中斷控制器框圖,主要的控制器部分為icc和icd,其中icc連線的sgi和ppi,icd連線spi

下面是中斷各項分布:

sgi軟體中斷(16個)
存在16個軟體產生的中斷,通過向icdsgir暫存器寫入sgi中斷號,以及指定目標cpu,來

產生乙個軟體中斷,通過讀icciar暫存器或者向icdicpr暫存器相應的位元位寫1,可以清

楚中斷。所有的sgi為邊沿觸發。

2、cpu內部的私有中斷-(在單cpu角度看具有5中斷)

每個cpu連線乙個私有的共享5個外設中斷,素有中斷的敏感型別是固定的,不能改變,upi全

局定時器,nfiq,cpu私有定時器,awdt,nirq

3、spi裡面設計的中斷(60個)

由ps和pl上的各種i/o控制器和儲存器控制器產生,這些中斷訊號會被路由到cpu。ps的外

設產生的spi中斷也會路由到pl上。預設地,所有共享外設中斷型別在復位時是高電平,然

後軟體使用的icdicfr2和icdicfr5暫存器程式設計中斷32,33和92為上公升沿敏感。

下面是中斷暫存器的介紹:詳細介紹的是spi的暫存器

1、icdiser: 中斷使能暫存器,3 個暫存器,每 1 位代表乙個中斷號,共 96 個(每個暫存器32位)

2、icdicer: 中斷關閉暫存器,3 個暫存器,每 1 位代表乙個中斷號,共 96 個(每個暫存器32位)

3、icdipr: 中斷優先順序暫存器,設定優先順序,共 24 個暫存器,每 8 位代表乙個中斷號,共 96 個

中斷號4、icdirtr: cpu 選擇暫存器,24 個暫存器,每 8 位代表乙個中斷號,共 96 個

0b******x1: cpu inte***ce 0

0b******1x: cpu inte***ce 1

5、icdicfr: 配置暫存器,用於配置觸發方式,電平觸發或邊沿觸發,共有 6 個,每個暫存器 32 位,

每兩位表示乙個中斷,32*6

/2=96 個中斷號,能覆蓋所有中斷。

配置中斷主要用到的函式:

(不包含其中一些經過拓展或者整合的配置函式)

xscugic_lookupconfig             中斷設定查詢

xscugic_cfginitialize gic初始化

xscugic_setprioritytriggertype 設定中斷優先順序及中斷觸發方式

xscugic_connect 設定中斷服務程式入口位址

xscugic_enable gic允許

xgpio_interruptglobalenable gpio全域性中斷允許

xgpio_interruptenable 相應gpio中斷允許

xil_exceptioninit 異常處理函式

xil_exceptionregisterhandler 當處理器遇到指定的異常時,將呼叫此處理程式

xil_exceptionenable 異常使能

為特定的異常註冊乙個處理程式。當處理器遇到指定的異常時,將呼叫此處理程式。異常id包含異常源的id,應該在到xil異常id的範圍內。進一步資訊參見xil exception.h。處理程式到該異常的處理程式。資料是對資料的引用,在呼叫處理程式時將傳遞給處理程式。

linux中ps命令的用法說明

在linux中使用ps命令可以檢視有哪些程序在執行和執行的狀態 程序是否結束 程序有沒有殭屍 哪些程序占用了過多的資源等等.ps命令最常用的是用於監控後台程序的工作情況.使用方式 ps options help 說明 顯示瞬間行程 process 的動態 引數 ps 的引數非常多,在此僅列出幾個常用...

linux中ps命令的用法說明

linux中ps命令的用法說明 在linux中使用ps命令可以檢視有哪些程序在執行和執行的狀態 程序是否結束 程序有沒有殭屍 哪些程序占用了過多的資源等等.ps命令最常用的是用於監控後台程序的工作情況.名稱 ps www.2cto.com 使用許可權 所有使用者 使用方式 ps options he...

linux中ps命令的用法說明

linux中ps命令的用法說明 在linux中使用ps命令可以檢視有哪些程序在執行和執行的狀態 程序是否結束 程序有沒有殭屍 哪些程序占用了過多的資源等等.ps命令最常用的是用於監控後台程序的工作情況.名稱 ps www.2cto.com 使用許可權 所有使用者 使用方式 ps options he...