HPI接口在TI DSP中的應(yīng)用及常見問(wèn)題分析
5. HPI操作流程
主機(jī)對(duì)HPI的一次總線訪問(wèn)周期為分三個(gè)階段:主機(jī)發(fā)起訪問(wèn),HPI響應(yīng),主機(jī)結(jié)束訪問(wèn)周期。
A. 主機(jī)發(fā)起訪問(wèn):即對(duì)HPI寄存器的讀,或者寫命令。主機(jī)送出的硬件信號(hào)為HSTROBE(由HCS, HDS1/2產(chǎn)生),HR/W,HCNTL0/1,HWIL,以及HD[0:n].HPI在HSTROBE的下降沿采樣控制信號(hào)HR/W,HCNTL0/1,HWIL判斷主機(jī)的操作命令。
B. HPI響應(yīng):HPI在HSTROBE的下降沿采樣控制信號(hào),根據(jù)控制信號(hào)做出相應(yīng)的響應(yīng)。如果是寫(HR/W為低)命令,則在HSTROBE的上升沿將數(shù)據(jù)線上的信號(hào)鎖存到HCNTL0/1和HWIL指向的寄存器。如果是讀命令(HR/W為高),如果是讀HPIC,或者HPIA寄存器,HPI將寄存器的值直接送到數(shù)據(jù)總線上;如果讀HPID,HPI先將HRDY置為忙狀態(tài),HPI DMA將數(shù)據(jù)從HPIA指向的內(nèi)存單元讀到HPID,再送到數(shù)據(jù)線上,并清除HRDY忙狀態(tài),在讀HPID后半字時(shí),數(shù)據(jù)從寄存器直接送到數(shù)據(jù)總線上,不會(huì)出現(xiàn)HRDY信號(hào)忙狀態(tài)。
C. 主機(jī)結(jié)束訪問(wèn)周期:對(duì)于寫操作,主機(jī)將數(shù)據(jù)送出后,只要滿足芯片手冊(cè)中HPI對(duì)HCS的最小寬度要求,即可結(jié)束訪問(wèn)周期。對(duì)于讀HPID操作,要等HRDY信號(hào)由忙變?yōu)椴幻?,主機(jī)才能結(jié)束訪問(wèn)周期。兩次連續(xù)的HPI操作的間隔,在芯片手冊(cè)的HPI時(shí)序參數(shù)表里有要求,最小間隔為兩個(gè)HPI功能模塊時(shí)鐘周期。
6. HPI常見故障案例分析
在HPI應(yīng)用調(diào)試過(guò)程中,常遇到的問(wèn)題分為:寫數(shù)據(jù)不成功,讀數(shù)據(jù)不正確,HRDY常高。這些問(wèn)題通常都是由于時(shí)序不正確造成的,下面結(jié)合實(shí)際應(yīng)用當(dāng)中的案例進(jìn)行分析。
6.1 寫數(shù)據(jù)不成功
案例的硬件連接如下:
首先關(guān)注核心信號(hào)HSTROBE 由DSP_CS,ARM_WR(HDS1),ARM_RD(HDS2)產(chǎn)生,從下面時(shí)序圖可以看出ARM_WR的下降沿是最后產(chǎn)生的,所以寫操作時(shí)HSTROBE 的下降沿反應(yīng)的是ARM_WR 的下降沿。
寫HPIC的時(shí)序截圖如下:
寫HPID的時(shí)序截圖如下:
兩個(gè)時(shí)序圖顯示主機(jī)送出的數(shù)據(jù)111b 在HSTROBE(ARM_WR)的下降沿后,很快被改變成其它值000b.在寫HPID 的時(shí)序截圖中,第一個(gè)HSTROBE的下降后,HPI送出HRDY信號(hào),然后數(shù)據(jù)線被改變,首先判斷HPI對(duì)主機(jī)的命令做出了響應(yīng),通過(guò)HRDY信號(hào)的出現(xiàn)時(shí)機(jī),說(shuō)明HPI判斷這是一個(gè)讀操作,可以判斷為HSTROBE的下降沿采樣HR/W信號(hào)不正確。
從硬件連接來(lái)看,HSTROBE(HR/W)要采樣HR/W,HCNTL0/1來(lái)判斷主機(jī)命令, HR/W的與HSTROBE為同一信號(hào)源,且同為下降沿,HR/W與HSTROBE的下降沿之間的setup時(shí)間不夠,采樣HR/W的電平狀態(tài)出現(xiàn)誤判,認(rèn)為是高電平讀命令,HPI對(duì)讀命令的響應(yīng)則是在第一個(gè)HSTROBE的下降沿之后送出HRDY信號(hào),并在HRDY之后,HPI送出數(shù)據(jù)到總線上。
對(duì)于該問(wèn)題,需要對(duì)參與HSTROBE邏輯譯碼的HR/W信號(hào)的下降沿做延時(shí)處理,可在邏輯電路如CPLD或FPGA里實(shí)現(xiàn),以確保HSTROBE的下降沿采樣到穩(wěn)定的HR/W電平。
評(píng)論