|
|||||||||||
ADSP-21062 |
ADSP-21062 的PDF資料下載,399049K |
其他型號 |
| ADSP-21062的供應商: |
聯系人:朱先生/李小姐 電話:0755-83325286/0755-83326422 |
聯系人:何小玲/林峰 電話:13261827936/010-82611615 |
聯系人:朱小姐/朱小姐/雷小姐 電話:18026926850/0755-83247709/0755-83246889 |
聯系人:朱小姐/朱先生 電話:0755-83250769/0755-83250769 |
|
| >>更多供應商 | |||||
ADSP-21062與工控機數據交換電路設計
ADSP-21062是ADI公司的通用DSP芯片,它具有強大的浮點/定點數據運算能力和很高的處理速度。多片ADSP-21062可以以多種形式方便地聯結成并行處理器系統(tǒng),適合進行實時數據采集和處理。本文利用多片ADSP-21062設計了連續(xù)波雷達信號處理機,完成數據的處理和檢測,相應的數據送到工控機,在顯示器上顯示數據處理結果。如果在ADSP-21062和工控機之間沒有高速傳輸數據的接口,就會在數據傳送時造成瓶頸堵塞,從而影響信號處理機的處理能力。所以ADSP-21062系統(tǒng)與工控機數據交換能力在該信號處理系統(tǒng)中很重要。
數據交換量及選定的方案
信號處理系統(tǒng)要求在每兩個采樣周期內,ADSP-21062向工控機傳輸一次數據。每次傳送的數據約為1500個16bit字,信號處理系統(tǒng)的A/D采樣頻率為1KHz。因此信號處理系統(tǒng)的數據傳輸率約為1.5Mb/s。
工控機讀取數據的速率也非常重要,必須高于信號處理系統(tǒng)的傳輸率,否則也會影響整個系統(tǒng)的數據處理能力。工控機采用的是研祥的EC3-1541,帶有串口和并口,以及PC104總線供擴展。串口和并口的數據傳輸率太低難以滿足系統(tǒng)的要求。工控機通過PC104總線訪問SRAM時,數據吞吐率約為2.5Mb/s,滿足系統(tǒng)要求。所以系統(tǒng)設計時采用了基于PC104總線的數據傳輸方式。
信號處理機和工控機通過PC104總線的數據傳輸方法有多種。例如,可以采用DMA方法,但是同時只能有一個系統(tǒng)訪問存儲器;還可利用并口鎖存方法傳輸數據。但是這兩種方法都不能獲得高數據吞吐率。為了解決這個問題,可采用雙口SRAM實現ADSP-21062向工控機進行高速數據傳輸。
系統(tǒng)設計時采用的雙口SRAM可以是16bit或8bit。在本系統(tǒng)采用了8K×16bit的雙口SRAM—IDT7025。系統(tǒng)以16bit的數據進行傳輸,相比8bit的方式而言,有更高的數據吞吐率。
雙口SRAM的工作原理
雙口SRAM的存儲器陣列,有左右兩套地址和數據總線。這樣,位于兩個端口的左右系統(tǒng)可以共享一個存儲單元。當兩個端口對雙口SRAM進行讀寫時,存在下列可能情況:
a:不同時對相同地址單元讀/寫操作;
b:同時對相同地址單元讀數據;
c:同時對相同地址單元寫入數據。
IDT7025內部有8個獨立于雙端口存儲單元的鎖存邏輯單元,作為令牌使用,可將空間劃分成1~8個區(qū)段。使用這些單元產生一個使用標志,向另一個端口表明正在使用共享的資源。左右端口在使用存取的存儲單元前必須先申請令牌,獲得后才可以訪問相應的段。相同的邏輯鎖存單元只能被一個端口使用,直到它使用完釋放為止。這些鎖存單元可以作為工控機的I/O口或存儲單元,來實現令牌傳送。
ADSP-21062系統(tǒng)與工控機數據交換電路
用雙口SRAM的“/BUSY”信號,可以保證兩個左右端口可靠的完成數據的交換。但是兩個端口對相同的地址單元操作時,一個端口要插入等待周期,對于本系統(tǒng)而言,要求很高的數據吞吐率,插入等待周期降低了系統(tǒng)的吞吐率。根據令牌傳送原理,可在ADSP-21062系統(tǒng)和工控機之間實現較快數據傳送。數據的吞吐率速率一定程度上和使用雙口SRAM的Semphore數目有關,數目多就能使左右兩個端口同時申請相同段的概率降低,就避免了一方長時間等待令牌。但是左右雙方同時想使用相同段的機會還是會出現,一方處于等待,這也會導致系統(tǒng)吞吐率下降。
若使左右兩個端口永遠不對相同的存儲單元進行訪問,就能提高系統(tǒng)的吞吐率。不能同時對相同的地址單元進行訪問,只要左右兩套地址的總線上的地址永不相同就可以了。基于這個思想,讓左右兩個端口的最高位地址AL12和AR12由DSP控制,并且互為相反。ADSP-21062處理器提供了4個可編程的FLAG3-0引腳,FLAG引腳是雙向引腳,它的方向是輸出還是輸入,可以在ADSP-21062中的寄存器中配置。圖1為ADSP-21062系統(tǒng)與工控機數據交換接口電路。FLAG0接雙口SRAM的右邊端口最高位地址AR12,把FLAG0反向后接AL11。就把雙口SRAM分為上下4K×16bit的兩個區(qū),工控機和ADSP-21062對雙口SRAM進行的地址空間為4K。當FLAG0=1時,ADSP-21062向雙口SRAM的高半區(qū)寫數據,而工控機可以從雙口SRAM的低半區(qū)讀數據;反之,當FLAG0=0時,ADSP-21062向雙口SRAM的低半區(qū)寫數據,而工控機可以從雙口SRAM的高半區(qū)讀數據。可見,工控機和ADSP-21062對雙口SRAM的訪問永遠不會發(fā)生沖突。
使用一片CPLD可編程邏輯器件EPM7128S-15實現雙口SRAM譯碼片選信號以及I/O地址選擇,地址和數據選通信號。ADSP-21062的引腳FLAG2為輸入腳,工控機把FLAG2作為一個I/O口對待。FLAG2占用工控機的一個I/O地址,把工控機A0~A9、/IOW和D0引入CPLD,在CPLD內部進行地址譯碼和I/O寫信號,鎖存數據實現向FLAG2腳寫數據。
電路設計中應注意的問題及程序流程
圖1中,工控機和雙口SRAM的地址總線連接要特別注意。工控機和PC機一樣,每個地址對應的存儲單元只能存儲一個字節(jié)的數據。若把工控機和雙口SRAM的地址總線對應連接,即A11~A0分別和AL11~AL0連接,這會導致雙口SRAM的一半空間不能被工控機訪問。解決這個問題的方法是:使工控機只訪問偶地址,即工控機的A12~A1和雙口SRAM的AL11~AL0對應連接。8K字的雙口SRAM地址最高位由DSP控制,分成了上下兩個區(qū),每區(qū)4K字節(jié)。DSP和工控機地址總線區(qū)分上下兩個區(qū),4K字節(jié)的雙口SRAM映射到工控機系統(tǒng)內存的某一空間,占用8K字的地址空間。工控機對雙口SRAM的訪問采用16位方式,只對偶地址讀寫。FLAG2占用一個I/O口地址,它只需一根數據線,故采用8位I/O端口寫方式。
ADSP-21062以DMA方式向雙口SRAM寫數據,DMA完成后,查詢輸入FLAG2腳,若為真,把FLGA0輸出反向,同時通過編程FLAG1啟動工控機的中斷IRQ5,通知工控機讀取數據,否則繼續(xù)查詢直到為真。圖2和圖3給出了ADSP-21062和工控機數據傳輸方面的程序流程圖。DSP向雙口SRAM寫完一個區(qū)的數據后,要查詢FLAG2引腳,看是否數據已被讀走。所設計的信號處理系統(tǒng)是由多片DSP組成的并行系統(tǒng),與工控機聯系的DSP是其中的一片,它負責部分數據處理和向雙口SRAM傳輸數據。該片DSP通知工控機讀取數據后,等待其它的DSP向它發(fā)送數據并把接收到的數據做相應處理寫入雙口SRAM,根據前面分析工控機讀取數據的能力,在這段時間內工控機應該讀走了數據。因此,DSP查詢FLAG2引腳時間極短。該方法可以實現很高的數據吞吐率。雖然使用雙口SRAM本身的Semphore也可實現相應的功能,但是在雙口SRAM的兩端都要為Semphore分配地址空間,這增加了電路的復雜性。
結語
本文借助雙口SRAM實現了ADSP-21062與工控機數據交換電路,滿足系統(tǒng)需要。該方法數據傳輸率高、電路簡單、可靠性高!
參考文獻
1 Analog Device inc. ADSP-21062 datasheet
2 ADSP SHARC系列DSP應用系統(tǒng)設計. 電子工業(yè)出版社,2003.2
3 IDT7025 Data Sheet. IDT
|
|||
|
|