新聞中心

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

HPI接口在TI SOC的應(yīng)用

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

摘要

本文引用地址:http://2s4d.com/article/171009.htm

本文從總體上介紹(Host Peripheral Interface)的工作模式,與上位主機的連接方式,主機訪問的操作流程;歸納了當(dāng)中常見問題,并提供了分析解決辦法。

簡介

為處理器之間直接互連通訊定義的一種異步,大多數(shù) DSP 芯片上都有 接口。HPI 接口是從(Slave)端口,接在主機的擴展內(nèi)存總線上,DSP 不能通過HPI 向主機(Host)的訪問,只能被主機讀寫。兩個DSP 的HPI 接口之間不能通訊。兩個DSP 之間互連,可以將一個DSP(從)的HPI 接到另一個DSP(主)的擴展內(nèi)存接口(EMIF)上[1]。

1. HPI 工作模式

不同系列DSP 上的HPI 接口版本有所不同,區(qū)別體現(xiàn)在DSP 對HPI 的控制上,如C6727 上的UHPI 可通過寄存器使能與關(guān)閉HPI 接口,對主機訪問DSP 內(nèi)存空間的控制,以及對HPI 接口信號的功能復(fù)用上。但從主機訪問的角度,HPI 的工作模式分為:復(fù)用模式(Multiplexed-Mode)和非復(fù)用模式(Non-multiplexed-Mode)。

復(fù)用模式下沒有地址線,主機訪問DSP 的地址信息是以數(shù)據(jù)方式送到HPIA(HPI 地址寄存)。從硬件信號的角度,地址,數(shù)據(jù)信號是由同一組數(shù)據(jù)線傳遞,所以稱為復(fù)用模式。

非復(fù)用模式的數(shù)據(jù)線與地址線是分開的,與內(nèi)存接口連接相似。非復(fù)用模式不需要操作HPIA 寄存器,主機訪問的地址信息通過地址總線直接送給HPI。

所有的HPI 接口都支持復(fù)用模式,但不是所有芯片的HPI 接口都支持非復(fù)用模式(參考相應(yīng)的芯片手冊確定是否支持)。除了有無HPIA 的操作區(qū)別外,兩種模式的操作沒有區(qū)別。因為非復(fù)用模式的操作是復(fù)用模式操作的子集,為方便起見,本文以復(fù)用模式展開討論。

2. HPI 硬件信號連接

HPI 接口復(fù)用模式連線如圖1 所示,根據(jù)在當(dāng)中的必要性分為:必要的,和可選的兩組信號??蛇x的信號

以虛線表示。

1.jpg

l 數(shù)據(jù)線HD[0:n]:在復(fù)用模式下,數(shù)據(jù)線的寬度一般為CPU 位寬的一半,一個HPI 訪問分為高低半字的兩次訪問,如C5000 是16-bit CPU,HPI 數(shù)據(jù)線為8 位,C6000 是32-bit CPU,其HPI 數(shù)據(jù)線為16 位。C64x 系列的HPI 支持32 位,在32 位模式下一個HPI 訪問不需要分為高低半字兩次訪問組成一個完整的訪問。

l HCNTL0/1,HWIL:HCNTL0/1 選擇要訪問的HPI 寄存器,HWIL 控制訪問寄存器的高低半字,必須先高后低。一個寄存器的高低半字的兩次訪問一定要連續(xù)完成,中間不能插入其它的HPI 操作。只有HPIC 可以只訪問半個字。

l HR/W:指示對HPI 寄存器進行讀,還是寫操作。如果主機的讀,寫信號是分開的,可以利用其中一個信號,但要注意做上拉或下拉處理以控制其在三態(tài)時的電平。

l HCS,HDS1/2:這三個信號根據(jù)圖2 的邏輯產(chǎn)生內(nèi)部HSTROBE 信號,其邏輯關(guān)系是要求HDS1 和HDS2信號相反,HCS 低有效。HSTROB 下降沿的時間點反應(yīng)的是三個信號中最后跳變的信號。HPI 在HSTROB的下降沿采樣控制信號HR/W,HCNTL0/1,HWIL 以判斷主機要對哪個寄存器進行讀,或者寫操作命令。

注意控制信號在HSTROBE 的下降沿之前需要最少5ns 的setup 穩(wěn)定時間,而HDS1/2 和HCS 到HSTROBE信號內(nèi)部門電路的延時是皮秒級的,所以控制信號的setup 時間需要外部時序保證。

2.jpg

l HRDY:HPI 的輸出信號,指示當(dāng)前操作狀態(tài),用做硬件流量控制握手信號。

l HINT:通過HPI,主機與DSP 之間可以互發(fā)中斷。HINT 是HPI 送給主機的中斷信號,DSP 對HPIC[HINT]位寫1,HINT 信號線上送出高電平信號,主機可利用此信號做為中斷信號輸入。DSP 不能清除HPIC[HINT]狀態(tài),主機在響應(yīng)中斷后,需要對HPIC[HINT]位寫1 清除狀態(tài),DSP 才能再次對HPIC[HINT]置位發(fā)中斷。主機通過寫HPIC[DSPINT]置1 給DSP 產(chǎn)生中斷,DSP 在響應(yīng)中斷后,需要對HPIC[DSPINT]寫1 清除狀態(tài),主機才能繼續(xù)操作HPIC[DSPINT]給DSP 發(fā)中斷。通過HPI 傳輸數(shù)據(jù),結(jié)合互發(fā)中斷做為軟件層的握手信號,可有效提高通訊的效率與靈活性。

l ALE:存在于地址,數(shù)據(jù)線復(fù)用的主機上用來指示地址信號周期,這種總線復(fù)用的主機很少見,所以通常將ALE 固定上拉處理,只用HSTROBE 采樣控制信號。

l BE:Byte Enable 信號,這個信號只出現(xiàn)在32 位的C6000 DSP 上。因為當(dāng)中通常都是對整個32-bit 字進行訪問,所以直接做上拉使能處理。

3. HPI 寄存器地址映射

HPI 口提供給主機端訪問的寄存器只有4個,通過HCNTL[1:0]選擇.

表 1 HPI 寄存器訪問選擇

3.jpg

由于在復(fù)用模式下數(shù)據(jù)線通常只有寄存器寬度的一半,所以一個完整的數(shù)據(jù)訪問由高低半字兩次訪問組成,由HWIL 信號控制,HWIL 信號必須是先低后高。通常將HWIL 和HCNTL[1:0]接在主機的地址線上,將4 個寄存器映射為主機端的8 個內(nèi)存單元,下表中的地址線連接方法將8 半字寄存器映射到主機的8 個連續(xù)的內(nèi)存單元。這里的地址線是用來選擇HPI 的寄存器,與非復(fù)用模式下的地址線直接訪問DSP 的內(nèi)存空間是完全不同的作用。

4.jpg

4. HPI 寄存器功能說明

HPIC (HPI Control Register)

HPI 控制寄存器HPIC 的位圖如表3 所示,C6000 系列DSP 的HPI 寄存器是32 位的,也只有低16 位有效,與C5000 系列DSP 的HPIC 寄存器定義的功能保持一致。不同版本的HPI 接口的HPIC 位定義的主要不同之處在于軟件握手HRDY 位的有無,其它位名稱可能存在細小差異,但功能定義都是一樣的。

5.jpg


上一頁 1 2 3 下一頁

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

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉