MS320VC5402 HPI接口與PCI總線接口設(shè)計(jì)
數(shù)字信號(hào)處理器DSP(Digital Signal Processor)是一種特別適合于進(jìn)行數(shù)字信號(hào)處理的微處理器,憑借其運(yùn)算速度快、功能強(qiáng)等特點(diǎn),在各個(gè)領(lǐng)域的應(yīng)用越來越廣泛。但在很多場(chǎng)合下需要將DSP的各種外圍設(shè)備同計(jì)算機(jī)連接,以實(shí)現(xiàn)數(shù)據(jù)傳輸。通常情況下可利用DSP的串口或I/O口來實(shí)現(xiàn),但無論是接串口還是接I/O口都要占用DSP的硬件資源,同時(shí)數(shù)據(jù)的傳輸速度有時(shí)也不能滿足系統(tǒng)的要求。為了解決這一問題,將DSP的HPI口通過PCl2040芯片橋接到PCI總線。本文以TMS320VC5402(簡稱VC5402)為例,介紹DSP的HPI口及其與PCl2040的接口設(shè)計(jì)。
本文引用地址:http://2s4d.com/article/185614.htm1 HPI接口功能及特點(diǎn)
主機(jī)接口HPI(Host Pott Interface)是C54x DSP系列定點(diǎn)芯片內(nèi)部具有的一種并行接口部件,主要用于與其他總線或CPU之間進(jìn)行通信,其接口框圖如圖l所示。主機(jī)是HPI口的主控者,HPI口作為一個(gè)外設(shè)與主機(jī)連接,使主機(jī)的訪問操作很方便。主機(jī)通過以下單元與HPI口通信:專用地址和數(shù)據(jù)寄存器、HPI控制寄存器以及外部數(shù)據(jù)和接口控制信號(hào)。HPI有兩種工作方式:共用尋址方式(SAM)和僅主機(jī)尋址方式(HOM)。在SAM方式下,豐機(jī)和C54x都能尋址HPI存儲(chǔ)器;在HOM方式下,僅能讓主機(jī)尋址HPI存儲(chǔ)器,C54x則處于復(fù)位狀態(tài),或者處在所有內(nèi)部和外部時(shí)鐘都停止工作的IDLE2空閑狀態(tài)(最低功耗狀態(tài))。
VC5402是TI公司推出的一款性價(jià)比極高的16位定點(diǎn)處理器。它是C54x系列中應(yīng)用比較廣泛的一種芯片,有著豐富的接口資源,是一種集數(shù)據(jù)處理和通信功能于一體的高速微處理器。VC5402 HPI口是一個(gè)增強(qiáng)的8位主機(jī)接口,它通過HPI控制寄存器HPIC、地址寄存器HPIA和數(shù)據(jù)鎖存器HPID來實(shí)現(xiàn)與主機(jī)之間的通信。主機(jī)通過外部引腳HCNTLO和HCNTL1選中不同的寄存器,則當(dāng)前發(fā)送8位數(shù)據(jù)就到該寄存器??刂萍拇嫫鱄PIC既可以被主機(jī)直接訪問,又可以被DSP片上CPU訪問。在使用上,由于主機(jī)接口總是傳輸8位字節(jié),而HPIC是一個(gè)16位寄存器,所以主機(jī)向HPIC寫數(shù)據(jù)時(shí),需要發(fā)送2個(gè)相同的8位數(shù)據(jù)。地址寄存器HPIA,只能被主機(jī)直接訪問。主機(jī)將HPIA寄存器視為一個(gè)地址指針,借助于HPIA主機(jī)可以訪問VC5402全部的片上存儲(chǔ)器。另外HPIA具有自動(dòng)增長的功能,在自動(dòng)增尋址模式下,一次數(shù)據(jù)讀會(huì)使HPIA在數(shù)據(jù)讀操作后增加1,而一個(gè)數(shù)據(jù)寫操作會(huì)使HPIA操作前預(yù)先增加l。這樣如果使能了該功能,則只須設(shè)定一次HPIA即可實(shí)現(xiàn)連續(xù)數(shù)據(jù)塊的寫入和讀出。數(shù)據(jù)寄存器HPLD,只能被主機(jī)訪問。如果當(dāng)前進(jìn)行的是讀操作,則HPID中存放的是要從HPI存儲(chǔ)器中讀出的數(shù)據(jù);如果當(dāng)前進(jìn)行的是寫操作,則存放的是將要寫到HPI存儲(chǔ)器的數(shù)據(jù)。
2 VC5402的HPI口與PCl2040的接口設(shè)計(jì)
2.1 PCI總線及其實(shí)現(xiàn)方法
PCI局部總線是32或64位數(shù)據(jù)總線,32位PCI總線在讀寫傳送中支持132Mb/s的峰值傳送速率,64位PCI傳送支持
264Mb/s峰值傳送速率。對(duì)于64位66MHz的PCI總線,傳送速率可達(dá)528Mb/s。PCI總線協(xié)議規(guī)范復(fù)雜而龐大,因此需要借助總線接口來實(shí)現(xiàn)。實(shí)現(xiàn)PCI總線協(xié)議一般有兩種方法:一是用FPGA設(shè)計(jì)實(shí)現(xiàn),但PCI協(xié)議比較復(fù)雜,因此難度較大;二是采用PCI總線控制芯片,如AMCC公司的S5933和PLX公司的PCI9052等通用的PCI接口芯片。TI公司專門推出了針對(duì)PCI總線和DSP接口的芯片PCI2040,它不但實(shí)現(xiàn)了PCI總線控制的功能,而且提供了和DSP芯片的無縫接口,因而大大降低了系統(tǒng)設(shè)計(jì)的復(fù)雜度,縮短了開發(fā)時(shí)間。
2.2 P012040與DSP接口設(shè)計(jì)
PCI2040足TI公司設(shè)計(jì)的專門用來實(shí)現(xiàn)C5000/C6000系列DSP和PCI總線進(jìn)行接口的專用芯片,可以通過8位或16位HPI接口與C54x/C6xDSP實(shí)現(xiàn)無縫連接。PCI2040通過HPI接口與VC5402連接。PCI2040的HPI口為8/16位數(shù)據(jù)傳輸接口(8位還是16位,依據(jù)所掛接的DSP的類型)。主機(jī)作為傳輸?shù)闹髟O(shè)備,從機(jī)DSP不能發(fā)起傳輸。主設(shè)備PCI2040可以讀/寫DSP內(nèi)存,DSP HPl口可以訪問DSP所有的片上資源,PCI2040和VC5402之問的通信主要靠DSP的HPIA、HPIC、HPID三個(gè)寄存器完成。VC5402的HPI與PCI2040口的連接如圖2所示。
評(píng)論