<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > HPI接口在TI SOC的應用

HPI接口在TI SOC的應用

作者: 時(shí)間:2012-08-21 來(lái)源:網(wǎng)絡(luò ) 收藏

主機在對 進(jìn)行訪(fǎng)問(wèn)前可以通過(guò)C 配置字節序(HWOB)和地址寄存器模式(DUALA)。默認的配置為HWOB=0,即先訪(fǎng)問(wèn)高半;DUALHPIA=0,即單地址寄存器模式,讀和寫(xiě)操作使用同一個(gè)HPIA;通常都采用默認的HPIC 寄存器配置。

HWOB 與硬件信號HWIL 是沒(méi)有聯(lián)系的,HWIL 信號必須保證先低后高分別訪(fǎng)問(wèn)兩個(gè)半字單元。至于先訪(fǎng)問(wèn)一個(gè)字當中的高或低半字,是由HWOB 控制的。

HPIA (HPI Address Register)

物理上存在HPIAR,HPIAW 兩個(gè)地址寄存器。HPIAR 是讀操作地址寄存器;HPIAW 是寫(xiě)操作地址寄存器。由HPIC 的DUALHPIA 位來(lái)決定是采用雙地址寄存器模式還是單地址寄存器模式。如果采用雙地址寄存器模式,在對HPIA 操作之前,通過(guò)設置HPIC 的HPISEL 位選擇下一個(gè)要訪(fǎng)問(wèn)的HPIA。通常為了簡(jiǎn)化在讀寫(xiě)操作轉換時(shí)對HPIC 的操作,選用單地址寄存器模式。

HPIA 的地址信息在不同系列DSP 上有所不同:

在C5000 上,數據空間,I/O 空間只能按16 位字尋址,程序空間按字節尋址。HPI 的DMA 訪(fǎng)問(wèn)屬于I/O 空間,HPIA 的值代表16 位字地址。如主機端要訪(fǎng)問(wèn)DSP 內存字節地址0x100, 則要往HPIA 寫(xiě)的地址值是0x80。在用HPI 啟動(dòng)時(shí),要注意DSP 代碼是按字節地址鏈接的,即代碼段的地址是字節地址,主機端要將代碼段的地址信息除以2 再送到HPIA。

在C64 上,HPIA 的值代表字節地址,但是HPI 訪(fǎng)問(wèn)的數據是32 位的,所以HPI 會(huì )忽略HPIA 地址值的低兩位。

在C64+的DSP 上,HPIA 代表32 位字地址,HPI 會(huì )將字地址左移兩位轉換成字節地址,主機若要訪(fǎng)問(wèn)DSP 字節地址0x100,則要賦值HPIA 為0x40。

HPID (HPI Data Register)

主機通過(guò)HPI 對DSP 的內存訪(fǎng)問(wèn)是間接訪(fǎng)問(wèn),主機只能訪(fǎng)問(wèn)HPID,HPID 與DSP 內存之間是通過(guò)HPI 專(zhuān)屬的DMA 進(jìn)行數據搬運的。如圖3 所示。

6.jpg

HPID 的訪(fǎng)問(wèn)分為自增模式和非自增模式。在自增模式下,訪(fǎng)問(wèn)HPID 后,HPIA 會(huì )自動(dòng)增加指向下一個(gè)字地址,在連續訪(fǎng)問(wèn)時(shí),自增模式因為減少了主機對HPIA 的操作,可以增加HPI 數據訪(fǎng)問(wèn)的吞吐率。非自增模式下訪(fǎng)問(wèn)HPID 后,HPIA 的值保持不變,主機需要更新HPIA 來(lái)訪(fǎng)問(wèn)下一個(gè)地址。

在寫(xiě)操作時(shí),主機把數據寫(xiě)到HPID,HPI 將第二個(gè)半字的數據通過(guò)HSTROBE 的上升沿鎖存到HPID 后,將HRDY 置為忙狀態(tài),并啟動(dòng)HPI DMA 將HPID 的內容搬到HPIA 所指向的內存單元,然后清除HRDY 指示可以進(jìn)行下一次操作。

在讀操作時(shí),在第一個(gè)HSTROBE 的下降沿,HPI 采樣到HR/W為讀命令,則將HRDY 置為忙狀態(tài),啟動(dòng)HPIDMA 將HPIA 指向的內存單元的數據搬到HPID,清除HRDY 忙狀態(tài),主機端方可結束總線(xiàn)訪(fǎng)問(wèn)周期,鎖存數據線(xiàn)上的有效數據。

5. HPI 操作流程

主機對HPI 的一次總線(xiàn)訪(fǎng)問(wèn)周期為分三個(gè)階段:主機發(fā)起訪(fǎng)問(wèn),HPI 響應,主機結束訪(fǎng)問(wèn)周期。

A. 主機發(fā)起訪(fǎng)問(wèn):即對HPI 寄存器的讀,或者寫(xiě)命令。主機送出的硬件信號為HSTROBE(由HCS, HDS1/2產(chǎn)生),HR/W,HCNTL0/1,HWIL,以及HD[0:n]。HPI 在HSTROBE 的下降沿采樣控制信號HR/W,HCNTL0/1,HWIL 判斷主機的操作命令。

B. HPI 響應:HPI 在HSTROBE 的下降沿采樣控制信號,根據控制信號做出相應的響應。如果是寫(xiě)(HR/W為低)命令,則在HSTROBE 的上升沿將數據線(xiàn)上的信號鎖存到HCNTL0/1 和HWIL 指向的寄存器。如果是讀命令(HR/W 為高),如果是讀HPIC,或者HPIA 寄存器,HPI 將寄存器的值直接送到數據總線(xiàn)上;如果讀HPID,HPI 先將HRDY 置為忙狀態(tài),HPI DMA 將數據從HPIA 指向的內存單元讀到HPID,再送到數據線(xiàn)上,并清除HRDY 忙狀態(tài),在讀HPID 后半字時(shí),數據從寄存器直接送到數據總線(xiàn)上,不會(huì )出現HRDY 信號忙狀態(tài)。

C. 主機結束訪(fǎng)問(wèn)周期:對于寫(xiě)操作,主機將數據送出后,只要滿(mǎn)足芯片手冊中HPI 對HCS 的最小寬度要求,即可結束訪(fǎng)問(wèn)周期。對于讀HPID 操作,要等HRDY 信號由忙變?yōu)椴幻?,主機才能結束訪(fǎng)問(wèn)周期。兩次連續的HPI 操作的間隔,在芯片手冊的HPI 時(shí)序參數表里有要求,最小間隔為兩個(gè)HPI 功能模塊時(shí)鐘周期。

6. HPI 常見(jiàn)故障案例分析

在HPI 調試過(guò)程中,常遇到的問(wèn)題分為:寫(xiě)數據不成功,讀數據不正確,HRDY 常高。這些問(wèn)題通常都是由于時(shí)序不正確造成的,下面結合實(shí)際當中的案例進(jìn)行分析。

1.1 寫(xiě)數據不成功

案例的硬件連接如下:

7.jpg

首先關(guān)注核心信號HSTROBE 由DSP_CS,ARM_WR(HDS1),ARM_RD(HDS2)產(chǎn)生,從下面時(shí)序圖可以看出ARM_WR 的下降沿是最后產(chǎn)生的,所以寫(xiě)操作時(shí)HSTROBE 的下降沿反應的是ARM_WR 的下降沿。

寫(xiě)HPIC 的時(shí)序截圖如下:

8.jpg

寫(xiě)HPID 的時(shí)序截圖如下:

9.jpg

兩個(gè)時(shí)序圖顯示主機送出的數據111b 在HSTROBE(ARM_WR)的下降沿后,很快被改變成其它值000b。在寫(xiě)HPID 的時(shí)序截圖中,第一個(gè)HSTROBE 的下降后,HPI 送出HRDY 信號,然后數據線(xiàn)被改變,首先判斷HPI 對主機的命令做出了響應,通過(guò)HRDY 信號的出現時(shí)機,說(shuō)明HPI 判斷這是一個(gè)讀操作,可以判斷為HSTROBE 的下降沿采樣HR/W信號不正確。

從硬件連接來(lái)看,HSTROBE(HR/W)要采樣HR/W,HCNTL0/1 來(lái)判斷主機命令, HR/W的與HSTROBE 為同一信號源,且同為下降沿,HR/W與HSTROBE 的下降沿之間的setup 時(shí)間不夠,采樣HR/W的電平狀態(tài)出現誤判,認為是高電平讀命令,HPI 對讀命令的響應則是在第一個(gè)HSTROBE 的下降沿之后送出HRDY 信號,并在HRDY 之后,HPI 送出數據到總線(xiàn)上。

對于該問(wèn)題,需要對參與HSTROBE 邏輯譯碼的HR/W信號的下降沿做延時(shí)處理,可在邏輯電路如CPLD 或 FPGA 里實(shí)現,以確保HSTROBE 的下降沿采樣到穩定的HR/W電平。



關(guān)鍵詞: 應用 SOC TI 接口 HPI

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>