基于DSP+ARM架構(gòu)的協(xié)議轉(zhuǎn)換器設(shè)計(jì)
在該協(xié)議轉(zhuǎn)換器中,DSP通過EMIFA接口連接到FPGA,實(shí)現(xiàn)DSP與FPGA Block RAM的無縫連接,從而使得DSP與FPGA之間的通信問題轉(zhuǎn)化為DSP對其EMIFA外設(shè)的訪問,達(dá)到了提高系統(tǒng)實(shí)時性的目的。為了保持FPGA與DSP之間的同步,F(xiàn)PGA的時鐘直接由DSP內(nèi)部的鎖相環(huán)提供。DSP處理器TMS320C6416與FPGA的接口示意圖如圖2所示。
圖2 TMS320C64l6與FPGA接口示意圖
2.2 S3C451OB及其外圍電路設(shè)計(jì)
ARM芯片選用Samsung公司的S3C4510B。S3C4510B是基于以太網(wǎng)應(yīng)用的高性價比16/32 bit RISC微控制器,內(nèi)含一個由ARM公司設(shè)計(jì)的16/32 bit ARMTTDMI RISC處理器核。S3C4510B提供了一套比較完整的通用的外圍設(shè)備,從而使得整個系統(tǒng)消耗最小。正是因?yàn)樗哂泻芏喑S玫墓δ苣K,所以也免去了添加配置附加設(shè)各的麻煩。芯片上集成的功能主要包括以下幾個方面田:3.3 V ARM內(nèi)核和3.3 V外部I/O,具有50 MHz時鐘頻率的微處理器;8 KB的Cache/SRAM;一個10/100 Mb/s以太網(wǎng)控制器,MII接口;2個HDLC通道,每個通道可支持10 Mb/s;2個UART通道,2個DMA通道,2個32 bit定時/計(jì)數(shù)器;1個通道IIC接口,18個可編程I/O口;中斷控制器,支持21個中斷源,包括4個外部中斷;支持SDRAM、SRAM、Flash等;具有擴(kuò)展外部總線和JTAG接口,支持軟件開發(fā)及硬件調(diào)試。
本設(shè)計(jì)選用ARM微控制器S3C4510B是因其集成有以太網(wǎng)控制器和極強(qiáng)的外圍擴(kuò)展能力。S3C4510B以及其外圍芯片F(xiàn)lash、SDRAM組成了整個系統(tǒng)的核心,負(fù)責(zé)控制和協(xié)調(diào)各模塊工作,并實(shí)現(xiàn)與遠(yuǎn)程上位機(jī)的以太網(wǎng)通信。本設(shè)計(jì)對S3C4510B內(nèi)部SDRAM和ROM進(jìn)行了擴(kuò)充。采用兩片SDRAM芯片HY57V641620并聯(lián)構(gòu)建32 bit的SDRAM存儲系統(tǒng);采用一片F(xiàn)lash芯片HY29LV160構(gòu)建16 bit的Flash存儲器系統(tǒng)。
2.2.1 ARM與DSP的接口電路
由于ARM微控制器要實(shí)現(xiàn)整個系統(tǒng)的協(xié)調(diào)控制和網(wǎng)絡(luò)功能,DSP處理器要執(zhí)行復(fù)雜計(jì)算,因此需要實(shí)現(xiàn)ARM和DSP之間的數(shù)據(jù)交換。從某種程度上來說,ARM和DSP之間數(shù)據(jù)交換的速度決定了整個系統(tǒng)的運(yùn)行速度和性能。
DSP處理器TMS320C6416集成了一個16/32 bit寬的主機(jī)接口HPI,HPI通過復(fù)位時的自舉和器件配置引腳HD5選擇采用HPI16或HPI32。UPI具有兩條地址線HCNTRL[1:0],負(fù)責(zé)對HPI的內(nèi)部寄存器尋址。HPI只有三個32 bit內(nèi)部寄存器,分別是控制寄存器HPIC、地址寄存器HPIA和數(shù)據(jù)寄存器HPID。只需對上述三個寄存器進(jìn)行相應(yīng)的讀寫操作,就能完成對DSP內(nèi)存空間的訪問。
由于ARM微控制器S3C45l0B中沒有完全符合DSP處理器TMS320C6416 HPI接口時序的外部接口可以直接使用,因此選用S3C4510B中時序最接近HPI接口時序的外部I/0接口與TMS320C6416進(jìn)行連接。TMS320C6416與S3C4510B的接口示意圖如圖3所示。由圖3可知,TMS320C6416與S3C4510B通過單獨(dú)的32 bit數(shù)據(jù)線HD0~HD31和8條控制線進(jìn)行連接。S3C4510B通過HPI訪問DSP內(nèi)部的RAM以及其他一些外部資源。在整個ARM與DSP通過HPI進(jìn)行通信和數(shù)據(jù)交換的過程中,除了中斷ARM和清除ARM發(fā)過來的中斷需要DSP本身參與外,其他操作中DSP都處于被動地位。所以對于ARM來說,DSP就相當(dāng)于一片外接的SDRAM。
評論