新聞中心

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

        HPI接口在TI SOC的應用

        作者: 時間:2012-08-21 來源:網絡 收藏

        1.2 讀數據不正確

        通常表現為讀讀C,A 正常,但讀D 不正常,前半字為0,后半字正確,對同一個地址讀兩次,第二次的數據完全正確。

        在案例中,用示波器觀察HCS 與HRDY 之間的時序關系,發現HCS 的上升沿在HRDY 的上升沿之前,即主機在HPI 數據有效之前結束了訪問周期。HRDY 的上升沿其實是因為HCS 的結束而拉高的,并非數據真正有效。

        10.jpg

        用戶由于沒有在硬件上將HRDY 與主機PowerPC 的TA 信號互連,沒有硬件握手機制,于是從軟件配置上加大主機的總線訪問周期,即增加HCS 的寬度,故障現象沒有變化。

        原因分析:讀HPID 與HPIC,HPIA 時序不同,讀HPID 操作需要HPI DMA 從HPIA 所指向的地址讀數據到 HPID,會有時間上的延時。而讀HPIC 和HPIA 直接從寄存器讀數據,沒有延時,所以讀HPIC,HPIA 是正確的。在讀HPID 時,HPI 會在第一個HSTROBE 的下降沿后將HRDY 置位,指示數據未準備好的忙狀態,主機應當在總線上插入等待周期,數據準備好后HPI 清除HRDY,主機才可以結束總線周期,通過HCS 的上升沿將有效數據鎖存。

        HSTROBE 的下降沿到數據有效之間的延時與芯片及HPI 的工作頻率相關,以C5502,C5501 為例,在芯片手冊中,這個延時參數H1 在SYSCLK1 與CPU 時鐘的分頻為4 時,最大延時為12*2H+20(ns),H=SYSCLK1/2,在HPI 啟動期間,PLL 沒有倍頻,處于旁通狀態,系統輸入時鐘就是CPU 的工作時鐘,SYSCLK1默認分頻為CPU 時鐘的4 分頻,以輸入時鐘為25MHz 為例,最大延時為:

        這個時間長度通常超出了主機端總線周期的軟件配置范圍,所以通過軟件配置增加HCS 的寬度不一定能滿足 HRDY 的最大延時要求。在有的DSP 芯片手冊上只提供了HRDY 的最小延時,最大延時與芯片的優先級設置,及系統配置相關而不確定,比如與系統中其它主模塊如EDMA 同時訪問DDR,那么延時與HPI 的優先級,EDMA 的優先級,EDMA 的burst 長度,以及DDR 的命令排序等配置相關,這樣通過延長主機的總線訪問周期,更加不可靠。

        解決辦法:在硬件設計之初,一定要利用HRDY 硬件握手信號[2][3]。雖然有的芯片HPIC 寄存器提供了HRDY 軟件握手方式,只能做為彌補硬件設計之初遺漏HRDY 硬件握手信號的權宜之計,軟件輪循HRDY 的辦法會帶來額外的開銷,降低HPI 總線的吞吐率,增加主機軟件實現的復雜度。而且有的芯片HPI 不支持HRDY 軟件查詢方法,只能通過硬件HRDY 保證數據的有效性。

        1.3 HRDY 常高

        有的系統在長時間運行中偶爾出現HRDY 常高,導致主機端總線訪問異常,需要重新上電才能恢復HPI 的正常操作。這種故障是由于HPI 狀態機出現異常。

        從實際故障定位中總結出以下幾點原因:

        A. HPI 的高低半字訪問的順序訪問被其它HPI 訪問打斷:在復用模式下,一個完整的HPI 訪問是由高低半字兩次訪問組成,需要嚴格保證,否則會破壞HPI 的狀態機,從而導致不可預期的后果。

        B. 主機通過HPI 訪問了DSP 內部的保留空間,或者破壞了DSP 的程序,數據空間,導致DSP 運行異常,進而導致HPI 狀態機異常。

        C. 主機的HSTROBE 信號有毛刺,或者信號完整性不好,如下圖中HCS(些案例HSTROBE 是由HCS 控制)的上升沿的回勾,都會導致HPI 誤判斷為主機的新的訪問的開始,從而打亂了高低半字的訪問順序要求,導致HPI 狀態機的錯亂。

        11.jpg

        7. 總結

        HPI 是一種簡單的異步,只要設計中滿足了時序要求,即可穩定工作。在開發當中遇到數據讀寫不正確,從HSTROBE 信號入手檢查與之相關的信號的時序關系,便可以找出問題原因。另外,信號完整性是任何系統穩定工作的前提。

        關于特定芯片上HPI 的特有功能本文沒有針對討論,如C6727 的字地址模式和字節地址模式可通過HPIC配置;C6727 在HPI 啟動后ROM bootloader 將HPI 關閉,需要軟件重新使能才能使用等;以及不同芯片的HPI 啟動模式下的跳轉方式不同,請參考相應芯片的HPI 手冊及bootloader 手冊。


        上一頁 1 2 3 下一頁

        關鍵詞: 應用 SOC TI 接口 HPI

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 文登市| 承德县| 搜索| 斗六市| 礼泉县| 梓潼县| 昌平区| 桂阳县| 四川省| 永济市| 廊坊市| 滦南县| 林西县| 盐城市| 乌海市| 瑞安市| 霸州市| 子洲县| 仁怀市| 沙坪坝区| 中山市| 高唐县| 凉城县| 尉犁县| 合川市| 北票市| 庄浪县| 沂源县| 基隆市| 清流县| 云龙县| 林西县| 奉新县| 华池县| 安国市| 石楼县| 灵璧县| 万年县| 永胜县| 成都市| 修文县|