基于主機(jī)與dsp的雙向數(shù)據(jù)交換系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及通信測試領(lǐng)域,具體的說,是涉及基于主機(jī)與DSP的雙向數(shù)據(jù)交換系 統(tǒng)及方法。
【背景技術(shù)】
[0002] DSP為高速、實(shí)時(shí)數(shù)字信號處理提供了很好的解決方案,高速的DSP芯片已經(jīng)廣泛 的應(yīng)用于各種領(lǐng)域。但是,當(dāng)DSP芯片和主機(jī)通信時(shí),傳統(tǒng)的通信方式已經(jīng)很難滿足高速方 便等要求。外觀和主機(jī)通信需要一種接口來實(shí)現(xiàn)。
[0003] 現(xiàn)在技術(shù)的常用方法一般會采用主機(jī)與DSP的主機(jī)接口直接連接的方法,或者通 過一塊專用芯片主機(jī)端用并口連接,DSP段轉(zhuǎn)為UHPI接口,這種方法硬件上連接十分復(fù)雜, 需要數(shù)據(jù)線,地址線,控制線,對主機(jī)要求比較高。
[0004] 另外,現(xiàn)有技術(shù)中,公開了一種采用HPI接口來實(shí)現(xiàn)DSP與其他總線或CPU進(jìn)行通 信。HPI接口可以讓外部的主處理器直接訪問DSP內(nèi)存映射中的部分內(nèi)存,而無需DSP干 預(yù)。通過主機(jī)接口還可以完成DSP的程序引導(dǎo),DSP向主機(jī)發(fā)出中斷信號要求主機(jī)響應(yīng)中 斷等功能。HPI提供了一個(gè)16位寬的并口,使用14位地址,每個(gè)地址裝一個(gè)16位的字。但 是HPI不能直接訪問其他的外設(shè)寄存器,如果主機(jī)需要從其他外設(shè)獲取數(shù)據(jù),則必須通過 CPU或6個(gè)DMA通道中的一個(gè),先將數(shù)據(jù)設(shè)置于DARAM中,反之依然;因而操作麻煩,應(yīng)用性 不強(qiáng)。
[0005] 因此,如何研發(fā)一種基于主機(jī)與DSP的雙向數(shù)據(jù)交換系統(tǒng)及方法,解決上述問題, 便成為亟待解決的技術(shù)問題。
【發(fā)明內(nèi)容】
[0006] 本申請解決的主要問題是提供基于主機(jī)與DSP的雙向數(shù)據(jù)交換系統(tǒng)及方法,以 解決現(xiàn)有技術(shù)無法實(shí)現(xiàn)的使主機(jī)與DSP之間的雙向通信數(shù)據(jù)交換,且能夠降低對主機(jī)接口 的要求的技術(shù)問題。
[0007] 為了解決上述技術(shù)問題,本發(fā)明提供了基于主機(jī)與DSP的雙向數(shù)據(jù)交換系統(tǒng),包 括:計(jì)數(shù)器、譯碼器、時(shí)序控制電路、數(shù)據(jù)鎖存器、數(shù)據(jù)選擇裝置和轉(zhuǎn)換器,其中,
[0008] 所述計(jì)數(shù)器,用于對從主機(jī)向DSP輸入的脈沖信號進(jìn)行時(shí)鐘計(jì)數(shù);
[0009] 所述譯碼器,用于將計(jì)數(shù)器傳來的脈沖信號譯為數(shù)據(jù)位,并分為有效數(shù)據(jù)位和無 效數(shù)據(jù)位;
[0010] 所述時(shí)序控制電路,用于對所述譯碼器傳來的無效數(shù)據(jù)位轉(zhuǎn)化為控制時(shí)序指令, 并對所述控制時(shí)序指令進(jìn)行處理;
[0011] 所述轉(zhuǎn)換器,用于對數(shù)據(jù)的格式進(jìn)行轉(zhuǎn)換;
[0012] 所述數(shù)據(jù)鎖存器,用于存放從譯碼器中發(fā)送的有效數(shù)據(jù)位和從轉(zhuǎn)換器傳來的與所 述有效數(shù)據(jù)位相對應(yīng)的數(shù)據(jù)進(jìn)行存儲;
[0013] 所述數(shù)據(jù)選擇裝置,用于對所述數(shù)據(jù)鎖存器鎖存的有效數(shù)據(jù)進(jìn)行組合選擇,并發(fā) 送至DSP中。
[0014] 進(jìn)一步地,其中,所述譯碼器,包括寫譯碼電路和讀譯碼電路,其中,
[0015] 所述寫譯碼電路,當(dāng)主機(jī)發(fā)出寫入指令時(shí),所述寫譯碼電路將所述主機(jī)傳來的脈 沖信號譯為數(shù)據(jù)位,并將該數(shù)據(jù)位和與數(shù)據(jù)位相對應(yīng)的數(shù)據(jù)寫入數(shù)據(jù)鎖存器中;
[0016] 所述讀譯碼電路,當(dāng)主機(jī)發(fā)出讀取指令時(shí),所述讀譯碼電路調(diào)取數(shù)據(jù)鎖存器中的 數(shù)據(jù)位,并將所述數(shù)據(jù)位和與該數(shù)據(jù)位相對應(yīng)的數(shù)據(jù)通過轉(zhuǎn)換器發(fā)送至主機(jī)中。
[0017] 進(jìn)一步地,其中,所述譯碼器,進(jìn)一步為二進(jìn)制譯碼器、代碼轉(zhuǎn)換譯碼器或顯示譯 碼器。
[0018] 進(jìn)一步地,其中,所述轉(zhuǎn)換器,進(jìn)一步包括:串并轉(zhuǎn)換電路和并串轉(zhuǎn)換電路,其中,
[0019] 所述串并轉(zhuǎn)換電路,用于將串行數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù);
[0020] 所述并串轉(zhuǎn)換電路,用于將并行數(shù)據(jù)轉(zhuǎn)換成串行數(shù)據(jù)。
[0021] 進(jìn)一步地,其中,所述系統(tǒng)還包括:存儲器,該存儲器用于存儲主機(jī)與DSP之間所 傳送的數(shù)據(jù)和數(shù)據(jù)位。
[0022] 本發(fā)明還公開了一種基于主機(jī)與DSP的雙向數(shù)據(jù)交換方法,包括以下步驟:
[0023] 步驟1:主機(jī)向DSP中發(fā)送脈沖信號和數(shù)據(jù);
[0024] 步驟2:計(jì)數(shù)器對從主機(jī)向DSP輸入的脈沖信號進(jìn)行時(shí)鐘計(jì)數(shù);
[0025] 步驟3 :轉(zhuǎn)換器將主機(jī)發(fā)送的數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù);
[0026] 步驟4 :譯碼器將計(jì)數(shù)器傳來的脈沖信號譯為數(shù)據(jù)位,并分為有效數(shù)據(jù)位和無效 數(shù)據(jù)位;
[0027] 步驟5 :時(shí)序控制電路對所述譯碼器傳來的無效數(shù)據(jù)位轉(zhuǎn)化為控制時(shí)序指令,并 對所述控制時(shí)序指令進(jìn)行處理后,發(fā)送至DSP中;
[0028] 步驟6:數(shù)據(jù)鎖存器對從所述譯碼器中發(fā)送的有效數(shù)據(jù)位和從轉(zhuǎn)換器傳來的與所 述有效數(shù)據(jù)位相對應(yīng)的有效數(shù)據(jù)進(jìn)行存儲;
[0029] 步驟7:數(shù)據(jù)選擇裝置對所述數(shù)據(jù)鎖存器鎖存的有效數(shù)據(jù)進(jìn)行組合選擇,并發(fā)送 至DSP中。
[0030] 進(jìn)一步地,其中,當(dāng)主機(jī)發(fā)出讀取指令時(shí),所述方法還包括步驟:
[0031] 步驟8:所述時(shí)序控制電路將對所述控制時(shí)序指令進(jìn)行處理后,將無效數(shù)據(jù)位返 回至所述譯碼器中;
[0032] 步驟9:所述譯碼器調(diào)取所述數(shù)據(jù)鎖存器存儲的有效數(shù)據(jù),發(fā)送至所述轉(zhuǎn)換器中, 所述譯碼器將無效數(shù)據(jù)位發(fā)送至計(jì)數(shù)器中;
[0033] 步驟10:所述轉(zhuǎn)換器將所述有效數(shù)據(jù)轉(zhuǎn)換為串行數(shù)據(jù)發(fā)送至主機(jī)中;
[0034]步驟11 :所述計(jì)數(shù)器譯碼器中的無效數(shù)據(jù)位和與所述有效數(shù)據(jù)相對應(yīng)的有效數(shù) 據(jù)位發(fā)送至主機(jī)中。
[0035] 進(jìn)一步地,其中,所述方法還包括步驟:
[0036] 存儲器對主機(jī)與DSP之間所傳送的數(shù)據(jù)和數(shù)據(jù)位進(jìn)行存儲。
[0037] 進(jìn)一步地,其中,所述轉(zhuǎn)換器,進(jìn)一步包括:串并轉(zhuǎn)換電路和并串轉(zhuǎn)換電路,其中, [0038]所述串并轉(zhuǎn)換電路,用于將串行數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù);
[0039]所述并串轉(zhuǎn)換電路,用于將并行數(shù)據(jù)轉(zhuǎn)換成串行數(shù)據(jù)。
[0040] 進(jìn)一步地,其中,所述譯碼器,包括寫譯碼電路和讀譯碼電路,其中,
[0041] 所述寫譯碼電路,當(dāng)主機(jī)發(fā)出寫入指令時(shí),所述寫譯碼電路將所述主機(jī)傳來的脈 沖信號譯為數(shù)據(jù)位,并將該數(shù)據(jù)位和與數(shù)據(jù)位相對應(yīng)的數(shù)據(jù)寫入數(shù)據(jù)鎖存器中;
[0042] 所述讀譯碼電路,當(dāng)主機(jī)發(fā)出讀取指令時(shí),所述讀譯碼電路調(diào)取數(shù)據(jù)鎖存器中的 數(shù)據(jù)位,并將所述數(shù)據(jù)位和與該數(shù)據(jù)位相對應(yīng)的數(shù)據(jù)通過轉(zhuǎn)換器發(fā)送至主機(jī)中。
[0043] 與現(xiàn)有技術(shù)相比,本申請所述的基于主機(jī)與DSP的雙向數(shù)據(jù)交換系統(tǒng)及方法,達(dá) 到了如下效果:
[0044] (1)本發(fā)明所述的基于主機(jī)與DSP的雙向數(shù)據(jù)交換系統(tǒng),包括:計(jì)數(shù)器、譯碼器、時(shí) 序控制電路、數(shù)據(jù)鎖存器、數(shù)據(jù)選擇裝置和轉(zhuǎn)換器,整體系統(tǒng)設(shè)置簡單,且不用再提供系統(tǒng) 時(shí)鐘同步,在傳輸?shù)倪^程中一共傳輸48BIT數(shù)據(jù),6個(gè)字節(jié),利于主機(jī)的控制。
[0045] (2)本發(fā)明所述的基于主機(jī)與DSP的雙向數(shù)據(jù)交換系統(tǒng),不再需要數(shù)據(jù)線和地址 線,容易實(shí)現(xiàn)主機(jī)與DSP之間的通信,且可以實(shí)現(xiàn)雙向通信數(shù)據(jù)的交換,降低了對主機(jī)接口 的要求。
[0046] (3)本發(fā)明所述的基于主機(jī)與DSP的雙向數(shù)據(jù)交換方法,其方法簡單,應(yīng)用性強(qiáng)。
【附圖說明】
[0047] 此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本發(fā)明的一部分,本發(fā) 明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:
[0048] 圖1是本發(fā)明實(shí)施例1所述的基于主機(jī)與DSP的雙向數(shù)據(jù)交換系統(tǒng)的整體結(jié)構(gòu) 圖。
[0049] 圖2是本發(fā)明實(shí)施例2所述的基于主機(jī)與DSP的雙向數(shù)據(jù)交換方法的流程圖。
[0050] 圖3是本發(fā)明實(shí)施例3所述的應(yīng)用實(shí)施例的整體結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0051] 如