HPI接口在TI DSP中的應(yīng)用及常見(jiàn)問(wèn)題分析_第1頁(yè)
HPI接口在TI DSP中的應(yīng)用及常見(jiàn)問(wèn)題分析_第2頁(yè)
HPI接口在TI DSP中的應(yīng)用及常見(jiàn)問(wèn)題分析_第3頁(yè)
HPI接口在TI DSP中的應(yīng)用及常見(jiàn)問(wèn)題分析_第4頁(yè)
HPI接口在TI DSP中的應(yīng)用及常見(jiàn)問(wèn)題分析_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、HPI 接口在 TI DSP 中的應(yīng)用及常見(jiàn)問(wèn)題分析簡(jiǎn)介HPI 接口是 TI 為處理器之間直接互連通訊定義的一種異步接口,大多數(shù) TI DSP 芯片上都有HPI接口。HPI接口是從(Slave)端口,接在主機(jī)的擴(kuò)展內(nèi)存總線 上,DSP不能通過(guò)HPI向主機(jī)(Host)的訪問(wèn),只能被主機(jī) 讀寫。兩個(gè)DSP的 HPI接口之間不能通訊。兩個(gè)DSP之間互連,可以將一個(gè)DSP (從)的HPI接到 另一個(gè)DSP (主)的擴(kuò)展內(nèi)存接口(EMIF)上.HPI 工作模式不同系列DSP上的HPI接口版本有所不同,區(qū)別體現(xiàn)在DSP對(duì)HPI的控制上, 如C6727上的UHPI可通過(guò)寄存器使能與關(guān)閉HPI接口,對(duì)主機(jī)訪問(wèn)

2、DSP內(nèi)存空 間的控制,以及對(duì)HPI接口信號(hào)的功能復(fù)用上。但從主機(jī)訪問(wèn)的角度,HPI的工 作模式分為:復(fù)用模式(Multiplexed- Mode)和非復(fù)用模式(Non-multiplexed-Mode)。復(fù)用模式下沒(méi)有地址線,主機(jī)訪問(wèn)DSP的地址信息是以數(shù)據(jù)方式送到HPIA (HPI 地址寄存)。從硬件信號(hào)的角度,地址,數(shù)據(jù)信號(hào)是由同一組數(shù)據(jù)線傳遞, 所以稱為復(fù)用模式。非復(fù)用模式的數(shù)據(jù)線與地址線是分開(kāi)的,與內(nèi)存接口連接相似。非復(fù)用模式 不需要操作HPIA寄存器,主機(jī)訪問(wèn)的地址信息通過(guò)地址總線直接送給HPI.所有的HPI接口都支持復(fù)用模式,但不是所有芯片的HPI接口都支持非復(fù)用 模式(參考相應(yīng)

3、的芯片手冊(cè)確定是否支持)。除了有無(wú)HPIA的操作區(qū)別外,兩 種模式的操作沒(méi)有區(qū)別。因?yàn)榉菑?fù)用模式的操作是復(fù)用模式操作的子集,為方便 起見(jiàn),本文以復(fù)用模式展開(kāi)討論。HPI 硬件信號(hào)連接HPI 接口復(fù)用模式連線如圖 1 所示,根據(jù)在應(yīng)用當(dāng)中的必要性分為:必要的, 和可選的兩組信號(hào)??蛇x的信號(hào)以虛線表示。DSPALEriHCSBEALEHR-WHDS1HDS2HSTROBHItDYHINTHDO:nHCN7I江gHHWTLData StrobesHostAddressDSPALEriHCSBEALEHR-WHDS1HDS2-half word1001EPIC second half word5T5H

4、PID first half word迪址自增揍式3011HPID swond half word4100HPIA fir蟲 half word1HPLA second half word6110HPID fii5t half word地址卄自增模式7it1HPED second half wordHPI 寄存器功能說(shuō)明HPIC (HPI Control Register)HPI控制寄存器HPIC的位圖如表3所示,C6000系列DSP的HPI寄存器是 32位的,也只有低16位有效,與C5000系列DSP的HPIC寄存器定義的功能保 持一致。不同版本的HPI接口的HPIC位定義的主要不同之處在于

5、軟件握手HRDY 位的有無(wú),其它位名稱可能存在細(xì)小差異,但 功能定義都是一樣的。表 3:HPI Control Register151211109Rjeseived| HPIASELRjesmied| DUALHPIAHBOBSTATR-0R/WO艮昭0RAMR-076 543710HPIRSTRjemervedFETCHHRDYHINTDSPINTHWOBR-lli R-?h R.-W-0 R-iR.W- FL-W-0R-W-0RAV1C-主機(jī)在對(duì)HPI進(jìn)行訪問(wèn)前可以通過(guò)HPIC配置字節(jié)序(HWOB)和地址寄存器 模式(DUALHPIA)。默認(rèn)的配置為HW0B=0,即先訪問(wèn)高半;DUALHP

6、IA=O,即單地 址寄存器模式,讀和寫操作使用同一個(gè)HPIA;通常都采用默認(rèn)的HPIC寄存器配 置。HWOB與硬件信號(hào)HWIL是沒(méi)有聯(lián)系的,HWIL信號(hào)必須保證先低后高分別訪問(wèn) 兩個(gè)半字單元。至于先訪問(wèn)一個(gè)字當(dāng)中的高或低半字,是由HWOB控制的。HPIA ( HPI Address Register)物理上存在HPIAR,HPIAW兩個(gè)地址寄存器。HPIAR是讀操作地址寄存器; HPIAW是寫操作地址寄存器。由HPIC的DUALHPIA位來(lái)決定是采用雙地址寄存器 模式還是單地址寄存器模式。如果采用雙地址寄存器模式,在對(duì)HPIA操作之前, 通過(guò)設(shè)置HPIC的HPISEL位選擇下一個(gè)要訪問(wèn)的HPI

7、A.通常為了簡(jiǎn)化在讀寫操作 轉(zhuǎn)換時(shí)對(duì)HPIC的操作,選用單地址寄存器模式。HPIA的地址信息在不同系列DSP上有所不同:在 C5000 上,數(shù)據(jù)空間, I/O 空間只能按 16 位字尋址,程序空間按字節(jié)尋 址。HPI的DMA訪問(wèn)屬于I/O空間,HPIA的值代表16位字 地址。如主機(jī)端要訪 問(wèn)DSP內(nèi)存字節(jié)地址0 x100,則要往HPIA寫的地址值是0 x80.在用HPI啟動(dòng)時(shí), 要注意DSP代碼是按字節(jié)地址鏈接的,即代碼段的地址是字節(jié)地址,主機(jī)端要將 代碼段的地址信息除 以 2再送到 HPIA.在C64 上, HPIA的值代表字節(jié)地址,但是HPI訪問(wèn)的數(shù)據(jù)是32位的,所以 HPI會(huì)忽略HPIA

8、地址值的低兩位。在C64+的DSP 上, HPIA代表32位字地址,HPI會(huì)將字地址左移兩位轉(zhuǎn)換成 字節(jié)地址,主機(jī)若要訪問(wèn)DSP字節(jié)地址0 x100,則要賦值HPIA為0 x40.HPID (HPI Data Register)主機(jī)通過(guò)HPI對(duì)DSP的內(nèi)存訪問(wèn)是間接訪問(wèn),主機(jī)只能訪問(wèn)HPID,HPID與 DSP內(nèi)存之間是通過(guò)HPI專屬的DMA進(jìn)行數(shù)據(jù)搬運(yùn)的。如圖3所示。圖 3:HPI 讀寫數(shù)據(jù)流HPID的訪問(wèn)分為自增模式和非自增模式。在自增模式下,訪問(wèn)HPID后,HPIA 會(huì)自動(dòng)增加指向下一個(gè)字地址,在連續(xù)訪問(wèn)時(shí),自增模式因?yàn)闇p 少了主機(jī)對(duì) HPIA的操作,可以增加HPI數(shù)據(jù)訪問(wèn)的吞吐率。非自

9、增模式下訪問(wèn)HPID后,HPIA 的值保持不變,主機(jī)需要更新HPIA來(lái)訪問(wèn)下一個(gè)地址。在寫操作時(shí),主機(jī)把數(shù)據(jù)寫到HPID,HPI將第二個(gè)半字的數(shù)據(jù)通過(guò)HSTROBE 的上升沿鎖存到HPID后,將HRDY置為忙狀態(tài),并啟動(dòng)HPI DMA將HPID的內(nèi)容 搬到HPIA所指向的內(nèi)存單元,然后清除HRDY指示可以進(jìn)行下一次操作。在讀操作時(shí),在第一個(gè)HSTROBE的下降沿,HPI采樣到HR/W為讀命令,則 將HRDY置為忙狀態(tài),啟動(dòng)HPIDMA將HPIA指向的內(nèi)存單元的數(shù)據(jù)搬到HPID,清 除 HRDY 忙狀態(tài),主機(jī)端方可結(jié)束總線訪問(wèn)周期,鎖存數(shù)據(jù)線上的有效數(shù)據(jù)。HPI 操作流程主機(jī)對(duì) HPI 的一次總

10、線訪問(wèn)周期為分三個(gè)階段:主機(jī)發(fā)起訪問(wèn), HPI 響應(yīng), 主機(jī)結(jié)束訪問(wèn)周期。主機(jī)發(fā)起訪問(wèn):即對(duì)HPI寄存器的讀,或者寫命令。主機(jī)送出的硬件信 號(hào)為 HSTROBE (由 HCS, HDS1/2 產(chǎn)生),HR/W,HCNTLO/1,HWIL,以及 HD0:n.HPI 在HSTROBE的下降沿采樣控制信號(hào)HR/W,HCNTL0 /1,HWIL判斷主機(jī)的操作命令。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為

11、高),如 果是讀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)。主機(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功能模

12、塊時(shí)鐘周 期。HPI 常見(jiàn)故障案例分析在 HPI 應(yīng)用調(diào)試過(guò)程中,常遇到的問(wèn)題分為:寫數(shù)據(jù)不成功,讀數(shù)據(jù)不正確, HRDY常高。這些問(wèn)題通常都是由于時(shí)序不正確造成的,下面結(jié)合實(shí)際應(yīng)用當(dāng)中 的案例進(jìn)行分析。寫數(shù)據(jù)不成功案例的硬件連接如下:DSP HRDYDSP HAS DSP HRDYDSP HAS ,kR11II-廠|TNIS関 14DV3.2VDSP HHWILTh4:U19BDSP EWZL R3DSPAK1.1 -DSP EWZL R3DSPAK1.1 -3 arxTwkKDSP EKDYP4dsFeasTTDSP OSSIARMIT HYPERLINK l bookmark2 o Cu

13、rrent Document arx-CrdITARM A2ITARM A?Rl-HHWIL PLRDY HINTFERAME HF.-W.PCBE2 HRDYTIRDY HS:PPAR HCSTPERJ HDSl/PSERB. HDS2CBE1 HChTLOTSTO? HCN1L1-PDEVSEL首先關(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í)序截圖如下:寫 寫 HPIC 的時(shí)序

14、截圖如下:寫 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,HCNTLO/1來(lái)判斷主機(jī)命令, HR/W的與HSTROBE為同一信號(hào)源,且同為下降沿,HR/W與HSTROBE的下降沿之 間的se

15、tup時(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 電平。讀數(shù)據(jù)不正確通常表現(xiàn)為讀讀HPIC,HPIA正常,但讀HPID不正常,前半字為0,后半字正 確,對(duì)同一個(gè)地址讀兩次,第二次的數(shù)據(jù)完全正確。在案例中,用示波器觀察HCS與HRDY之間的時(shí)序關(guān)系,發(fā)現(xiàn)HCS的上升沿 在HRDY的

16、上升沿之前,即主機(jī)在HPI數(shù)據(jù)有效之前結(jié)束了訪問(wèn)周期。HRDY的上 升沿其實(shí)是因?yàn)?HCS 的結(jié)束而拉高的,并非數(shù)據(jù)真正有效。用戶由于沒(méi)有在硬件上將HRDY與主機(jī)PowerPC的TA信號(hào)互連,沒(méi)有硬件握 手機(jī)制,于是從軟件配置上加大主機(jī)的總線訪問(wèn)周期,即增加HCS的寬度,故障 現(xiàn)象沒(méi)有變化。原因分析:讀HPID與HPIC,HPIA時(shí)序不同,讀HPID操作需要HPI DMA從 HPIA所指向的地址讀數(shù)據(jù)到HPID,會(huì)有時(shí)間上的延時(shí)。而讀HPIC和HPIA直接從 寄存器讀數(shù)據(jù),沒(méi)有延時(shí),所以讀HPIC,HPIA是正 確的。在讀HPID時(shí),HPI會(huì) 在第一個(gè)HSTROBE的下降沿后將HRDY置位,指

17、示數(shù)據(jù)未準(zhǔn)備好的忙狀態(tài),主機(jī) 應(yīng)當(dāng)在總線上插入等待周期,數(shù)據(jù)準(zhǔn)備好后HPI清除HRDY,主機(jī)才可以結(jié)束總線 周期,通過(guò)HCS的上升沿將有效數(shù)據(jù)鎖存。HSTROBE 的下降沿到數(shù)據(jù)有效之間的延時(shí)與芯片及 HPI 接口的工作頻率相 關(guān),以C5502,C5501為例,在芯片手冊(cè)中,這個(gè)延時(shí)參數(shù)H1在SYSCLK1與CPU 時(shí)鐘的分頻為 4時(shí),最大延時(shí)為 12*2H+20(ns), H=SYSCLK1/2, 在 HPI 啟動(dòng)期 間,PLL沒(méi)有倍頻,處于旁通狀態(tài),系統(tǒng)輸入時(shí)鐘就是CPU的工作時(shí)鐘,SYSCLK1 默認(rèn)分頻為 CPU 時(shí)鐘的 4 分頻,以輸入時(shí)鐘為 25MHz 為例,最大延時(shí)為:這個(gè)時(shí) 間

18、長(zhǎng)度通常 超出了主機(jī)端總線周期的軟件配置范圍,所以通過(guò)軟件配置增加 HCS的寬度不一定能滿足HRDY的最大延時(shí)要求。在有的DSP芯片手冊(cè)上只提供 了 HRDY 的 最小延時(shí),最大延時(shí)與芯片的優(yōu)先級(jí)設(shè)置,及系統(tǒng)配置相關(guān)而不確定, 比如與系統(tǒng)中其它主模塊如EDMA同時(shí)訪問(wèn)DDR,那么延時(shí)與HPI的優(yōu)先級(jí),EDMA 的優(yōu)先級(jí),EDMA的burst長(zhǎng)度,以及DDR的命令排序等配置相關(guān),這樣通過(guò)延 長(zhǎng)主機(jī)的總線訪問(wèn)周期,更加不可靠。解決辦法:在硬件設(shè)計(jì)之初,一定要利用HRDY硬件握手信號(hào)雖然有的芯片 HPIC寄存器提供了 HRDY軟件握手方式,只能做為彌補(bǔ)硬件設(shè)計(jì)之初遺漏HRDY 硬件握手信號(hào)的權(quán)宜之計(jì),軟件輪循HRDY的辦法會(huì)帶來(lái)額外的開(kāi)銷,降低HPI 總線的吞吐率,增加主機(jī)軟件實(shí)現(xiàn)的復(fù)雜度。而且有的芯片HPI不支持HRDY軟 件查詢方法,只能通過(guò)硬件HRDY保證數(shù)據(jù)的有效性。HRDY 常高有的系統(tǒng)在長(zhǎng)時(shí)間運(yùn)行中偶爾出現(xiàn)HRDY常高,導(dǎo)致主機(jī)端總線訪問(wèn)異常, 需要重新上電才能恢復(fù) HPI 的正常操作。這種故障是由于 HPI

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論