新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 主機接口(HPI)在嵌入式系統中的應用

        主機接口(HPI)在嵌入式系統中的應用

        作者: 時間:2011-11-24 來源:網絡 收藏
          引 言

          隨著計算機技術、通信技術的飛速發展,互聯網的迅速普及,嵌入式技術已成為新世紀最有生命力的技術之一,其得到了飛速的發展和廣泛應用。隨著復雜控制、汽車電子、醫療儀器、數字通信、網絡應用等復雜要求的出現,常用的單片機系統和DSP系統等這類簡單的已經無法滿足要求。在面對日益復雜和高性能應用時,大多采用主機(由微控制器或微處理器充當)+DSP的方式構成主從式系統,這樣既可以利用DSP強大的數字信號處理能力進行復雜的運算,又可以利用微處理器豐富的片內外設和接口對整個系統的運行進行控制。

          在這種系統中,主機與DSP的數據交換就成為系統設計中必須考慮的重要問題。傳統的單片機與主機交換數據大多采用串行通信方式或共享存儲器方式。串行通信方式只適用于通信量較小的系統。共享存儲器方式,需外擴一雙端口RAM及觸發器鎖存器等芯片,使得系統的硬件結構復雜。

          ADI公司生產的DSP芯片ADSP2191配置了(Host Port Interface,),可以實現與主機之間并行高速的數據傳輸。可以很容易地與各種主機互聯,甚至不需要外加接口邏輯,可以大大簡化系統的硬件結構。且DSP依靠自身的硬件來協調沖突,在主機訪問的時候,不會打斷DSP正常的程序運行。

          2 ADSP2191M簡介

          HPI(Host Port Interface)是Analog DeviceInc.公司在新一代高性能DSP芯片上配置的與外部主設備或主處理器進行高速數據交換的并行接口。HPI是地址和數據總線復用的8位/16位并行口,只能做從機,外部主機(微控制器、FGPA或者另一片DSP)是HPI的控制者。通過HPI,主機可以訪問DSP的內部存儲空間、引導空間和I/O空間;另外,還可以通過HPI口把程序加載到DSP。ADSP-2191有24個引腳專門用于HPI,如表1所示。


          HPI地址總線的低16位是與數據總線復用。數據總線默認情況下是8位,使用HAD[7:0]八個引腳。在復位后,DSP本身或外部主機(通過主機接口)可以配置HPI為16位口。

          3 硬件設計

          MPC555微控制器是Motorola公司PowerPC 500系列的代表產品,是一款高速高性能的32位浮點處理器,其工作時鐘可達40 MHz。其內部資源極其豐富,有26 kBRAM和6 kB TPURAM,448 kB FLASH、多通道串行模塊、CAN 2.0B控制器等,特別適于做復雜的實時控制和處理。MPC555與ADSP2191的接口電路如圖1所示。


          HPI提供2種硬件尋址模式:地址周期控制模式(ACCM)和地址鎖存模式(ALEM)。其中,ALEM適用于與地址總線和數據總線復用的微處理器接口;ACCM模式適用于與地址總線和數據總線分開的微處理器接口。硬件尋址方式是由上電復位時HALE引腳的邏輯電平決定。如果上電復位時用外部下拉電阻把HALE拉低,就是ALEM方式;反之,如果用外部上拉電阻把HALE拉高就是ACCM方式。

          HPI總線是一種異步通信協議,硬件握手可以是ACK方式,還可以是Ready方式,2種方式的有效極性都可以在上電復位時配置。另外,讀/寫選通信號的極性也可以在上電復位時配置。如果在上電時,讀/寫信號為高電平,那么讀/寫選通信號就是低有效。

          綜合考慮MPC555的外部總線時序和HPI接口的時序要求,在本設計中硬件尋址采用ACCM方式,應答方式采用ACK方式。讀信號HRD、寫信號HWR和應答信號HACK都是低電平有效。


          要控制主機與DSP的數據交互,即主機要知道何時能從DSP讀取數據,而何時又該寫數據,還需要一個聯絡信號。本設計選用ADSP2191的1個I/O口PF0作為對主機的中斷信號。

          4 HPI的讀寫操作和接口軟件設計

          4.1 HPI接口的配置

          要通過HPI訪問DSP的內部存儲空間和I/O空間,必須先配置HPI的寄存器。HPI接口有15個寄存器,其中9個是專門用于DMA方式的,對于直接訪問方式,只有主機接口配置寄存器(HPCR)和主機接口直接訪問頁寄存器(HPPR)是必須配置的。外部主機或者DSP自己可以通過配置這2個寄存器,設置主機接口的訪問參數,包括外部總線寬度、要訪問的存儲空間的頁地址和數據類型等。下面是DSP自己配置主機接口的程序代碼:


          4.2 主機對HPI接口的讀寫操作

          在ACCM方式下,HALE引腳上的邏輯0電平會觸發HWR引腳產生一個下降沿跳變以便把地址鎖存到HPI。時序圖如圖2,圖3所示:


          所以,主機對HPI的訪問包含地址周期和數據周期2個周期。MPC555訪問HPI的子程序匯編代碼如下:


          5 結語

          目前,該方案已經成功運用于母線保護設備中,經測試在DSP接近滿負荷工作時,數據傳輸速率也能達到2 MB/s,完全能滿足系統需要。實踐證明,HPI接口是一種電路簡單、性能穩定、高效可靠的通信方式,而且具有很強的通用性,可廣泛應用于各種含有HPI接口的多CPU



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 密云县| 永吉县| 临漳县| 安平县| 江城| 临邑县| 韩城市| 洮南市| 永兴县| 璧山县| 石柱| 上虞市| 烟台市| 饶平县| 定安县| 社旗县| 通江县| 濮阳县| 漯河市| 云霄县| 义乌市| 石景山区| 瑞昌市| 太保市| 上思县| 胶州市| 承德市| 郧西县| 特克斯县| 蒲江县| 馆陶县| 石城县| 宁南县| 双江| 莱芜市| 柳州市| 庆阳市| 南和县| 承德县| 宣化县| 北安市|