關于HPI主機接口在多處理器系統中的應用
本文介紹了TI公司TMS320C5402芯片中的HPI接口在構成某型雷達多處理機系統中的應用,分析了HPI的優(yōu)越性以及構成多機系統的硬件要求,詳細地介紹了HPI的特點及實現方法。
本文引用地址:http://2s4d.com/article/187261.htm
1 HPI主機接口構成
TMS320C5402芯片的HPI接口分為HPI8(8位主機接口)和HPI16(16位主機接口)兩種,其應用方式大同小異,這里主講HPI8。HPI8實際上是一個8位的并行端口,主機通過它可以直接訪問DSP片內的一段RAM。在早期的DSP中,這段公用的RAM是一段2K字的雙口RAM(對于TMSVC5402則可以訪問所有的片內RAM)。當主機和DSP同時訪問同一地址時,主機優(yōu)先。HPI8數據的傳輸必須以字節(jié)為單位。在DSP與主機傳送數據時,HPI能自動地將外部接口傳來連續(xù)的8位數組合成16位數后傳送給主機。
HPI主機由以下五個部分組成:
●HPI存儲器(DARAM)。HPI RAM主要用于DSP與主機之間傳送數據,也可以用作通用的雙導址數據RAM或程序RAM。
●HPI地址寄存器(HPIA)。它只能由主機對直接訪問。該寄存器中存放著當前尋址的HPI存儲單元的地址。
●HPI數據鎖存器(HPID)。它也只能由主機對其直接訪問。如果當前進行讀操作,則HPID中存放的是要從HPI存儲器中讀出的數據;如果當前進行寫操作,則HPID中存放的是將要寫到HPI存儲器的數據。
●HPI控制寄存器(HPIC)。DSP和主機都能對它直接訪問。
●HPI控制邏輯。用于處理HPI與主機之間的接口信號。
HPI的引腳在無主機訪問時呈高阻態(tài),因此可以直接掛在主機數據總線上,使得硬件電路特別簡單。
HPI引腳由以下幾部分組成:
?。?)HD0~HD7:雙向并行三態(tài)數據總線。
?。?)HCS:HPI片選信號。
(3)HAS:地址選通信號,此信號用于主機的數據線和地址線復用的情況。
?。?)HBIL:字節(jié)識別信號,用于識別主機傳送過來的是第一個字節(jié)還是第二個字節(jié)。
?。?)HCNTL0、HCNTL1:主機控制信號,用來選擇主機所要尋址的寄存器。
?。?)HDS1、HDS2:數據選通信號,在主機尋址HPI周期內控制數據的傳送。
?。?)HINT:HPI中斷輸出信號,受HPIC中的HINT位控制。
?。?)HRDY:HPI準備好端。
?。?)HR/W:HPI讀寫信號
?。?0)HPIENA:HPI允許信號,若系統選中HPI則將它連到高電平,否則懸空或接低電平。
主機訪問HPI的一個字包括兩個步驟:首先訪問第一個字節(jié),此時HBIL為0;然后訪問第二個字節(jié),此時HBIL為1;這兩步組成一個訪問單元。這個訪問單元不可被拆開或顛倒,不管當前訪問的是HPIA、HPIC還是HPID。
HPI有兩種工作方式:
●共用尋址方式(SAM),這是常用的操作方式。在SAM方式下,主機和DSP都能尋址HPI寄存器,異步工作的主機的尋址可以在HPI內部得到同步。如果DSP與主機的周期發(fā)生沖突,主機有優(yōu)先權。
●僅主機尋址方式(HOM)。在HOM方式下,只能讓主機尋址HPI存儲器,DSP則處于復位狀態(tài)或最小功耗狀態(tài);
HPI支持DSP與主機之間數據的高速傳輸。在HOM方式下,主機可以更快的速度工作,且與DSP的時鐘頻率無關。

2 應用系統及結果
滑窗算法是數字信號處理中一種常用的基本算法,在通信、雷達、電子對抗、參數估計、信號識別中有著廣泛的應用。滑窗算法的性質限制了它的用途,高速DSP芯片的出現才擴大了它的實際應用。本文利用兩片TI公司的高速DSP芯片TMS320C5402,應用其HPI接口并行實現多種滑窗算法,滿足了某雷達系統解模糊的實時需要。整個系統的基本框圖如圖1所示。
HPI在雙處理器中的應用原理圖如圖2所示。在本方案中,將不用的信號如HAS、HPIENA、HDS2接高,而HRDY懸空。由上面的分析可以很容易地得到HPI操作控制線占用的I/O端口,詳細的分配情況見表1。
表1 HPI操作占用的I/O端口分配圖
訪問方式 訪問對象 | 讀 寫 訪 問 | |
第一字節(jié)對應端口地址 | 第二字節(jié)對應端口地址 | |
HPIC | 0h | 020h |
HPIA | 080h | 0A0h |
HPID(地址自增) | 040h | 060h |
HPID(無地址自增) | 0C0h | 0E0h |
當對HPIC進行訪問時(將一個十六位的數據送到HPIC中),首先將低八位數據送到端口地址為0h的I/O空間,然后將高八位送到端口地址為020h的I/O空間。HPID、HPIA的訪問方式與之相同。下面是HPI接口初始化程序的部分代碼;
PORTW *AR0,0h
LD *AR0,*-8,a
STL A,*AR0
PORTW *AR0,020h
代碼說明:AR0中存放的是要發(fā)送數據的地址,這一段程序將一個16位的數據送到HPIC中。
參照上述步驟可以方便地通過HPI將DSP與FPGA、DSP和單片機等其它主機相連如圖3所示。
大量仿真與實測數據表明,各項指標均滿足設計要求。該系統已在某雷達系統中獲得應用。
評論