国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

基于FPGA嵌入式的多比特自相關器設計

發布時間:2010-8-16 15:53    發布者:lavida
關鍵詞: FPGA , 多比特 , 嵌入式 , 自相關
確定性信號的不同時刻取值一般都具有較強的相關性;而干擾噪聲的隨機性較強,其不同時刻取值的相關性較差,利用這一差異可以把確定性信號和干擾噪聲區分開來。對于疊加了噪聲的信號x(t),當其自相關函數Rx(τ)的延時τ較大時,隨機噪聲對Rx(τ)的貢獻很小,這時的Rx(τ)主要表現x(t)中包含的確定性信號的特征,例如直流分量,周期性分量的幅度和頻率等。而對于非周期性的隨機噪聲,當延時τ較大時,噪聲項的自相關函數趨向于零,這就從噪聲中把有用信號提取出來了。  

利用FPGA強大的并行運算功能和其內核中豐富的存儲器資源,很容易實現一些在分立元器件中難以實現的功能,例如高速的并行乘積運算,向存儲器儲存和調用數據等。利用這個優勢可以將一些本來復雜的運算和數字邏輯大大的簡化在一塊芯片之中。  

SoC(System on Chip)是20世紀90年代提出的概念,它是將多個功能模塊集成在一塊硅片上,提高芯片的集成度并減少了外設芯片的數量和相互之間在PCB上的連接,同時系統性能和功能都有很大的提高。隨著FPGA芯片工藝的不斷發展,設計人員在FPGA中嵌入軟核處理器成為可能,AlteraXilinx公司相繼推出了SoPC(System on a Programmable Chip)的解決方案,它是指在FPGA內部嵌入包括CPU在內的各種IP組成一個完整的系統,在單片FPGA中實現一個完整得系統功能。  

與SoC相比,SoPC具有更高的靈活性,FPGA的可編程特性使之可以根據需要任意定制SoPC系統;與ASIC相比,SoPC具有設計周期短,設計成本低的優勢同時開發難度也大大降低。  

1 相關算法的分析及系統總體設計  

1.1 相關算法  


  
式中:N為累加平均的次數;k為延時序號。因為在FPGA等數字器件中自相關計算都是建立在數字離散域基礎上的。其中x(n)與x(n-k)時間的相隔即式(2)中τ的值為采樣時間間隔△t乘以延時數k,τ=△tk,在數字離散處理系統中τ的取值只能為△t的整數倍。根據數字相關量化噪聲導致的SNR的退化比的定義:  

D=模擬相關的SNR/數字相關的SNR (5)  

數字相關的SNR=6.02n+1.76(dB),  

n=A/D轉換器的量化位數 (6)  

從上式可見,在保持模擬相關的SNR參數不變的情況下,有效地提高A/D轉換器的量化位數可以很好地減小SNR的退化比。  

該設計的基本算法思想是:首先將A/D(Analogeto Digital)轉化得到的數字信號通過“乒乓”RAM進行緩沖,然后將數據送人乘法器中進行乘法運算,計算得到x(n)與x(n-k)的乘積,將N次乘積送入累加器相加得到

以后,乘以1/N或者除以N即可得到式(4)。其具體流程圖如圖1所示。  


  
1.2 總體實現思路  

相關算法整體設計思路如圖2所示。  


  
FLASH芯片 用于保存NiosⅡ中運行的程序代碼和FPGA中的配置數據。在SoPC Builder中定制NiosⅡ系統時集成了CFI(通用FLASH接口)控制器。這樣就可以很方便地使用FLASH芯片;SDRAM通常用于需要大量易失性存儲器且成本要求高的的應用系統。SDRAM比較便宜,但需要實現刷新操作、行列管理、不同延遲和命令序列等邏輯。NiosⅡ系統中集成的SDRAM芯片接口能夠處理所有的SDRAM協議要求,使SDRAM的使用方便。  

CLOCK時鐘模塊,通過FPGA內部自帶的數字鎖相環將開發板上的晶振(50 MHz)提供的信號分別提供給NiosⅡ處理器和外部的SDRAM作為時鐘。  

Interface在該設計中為了方便地驗證算法的正確,采用JTAG_UART接口實現PC和NiosⅡ系統之間的串行通信,通過在程序中調用相關驅動函數傳輸數據,可以在集成開發環境IDE的Console窗口中觀察到運行數據。  

A/D轉換器采用串行12位A/D轉換器ADS7822,其最高采樣率位75 KS/s,將它設置為掛接在AVALON總線上的從設備,通過NiosⅡ操作系統發起詢問傳輸獲取數據。  

鍵盤 用于用戶輸入信息給處理器。  

在FPGA中有著豐富的存儲器資源,對于驗證的試驗板,AItera公司提供的CycloneⅡ系列FPGA芯片EP2C20F484C8含有18 752個LE(Logic elements,邏輯單元),52個嵌入式RAM模塊,35個18×18乘法器模塊,4個數字鎖相環,完全能實現中小規模的數字信號處理運算,在FPGA中的整體算法框圖如圖3所示。  


  
2 外圍處理邏輯的設計與實現  

2.1 “乒乓”RAM的設計與實現  

為了保持數據處理的連續性,這里采用“乒乓”RAM數據緩沖模式,即兩組功能能相互切換且長度相同的RAM。它的工作原理是:其中一組RAM在進行儲存操作時;另一組RAM進行讀取操作,并且讀取和存儲的速率相同,當進行存儲操作的RAM存儲滿,進行讀取操作的RAM被清空時兩者被外部控制邏輯功能互換,這樣可以使兩組RAM能連續不斷地對A/D采集數據進行緩沖處理。如圖4所示。  


  
為了提高自相關計算的處理速度,每一組RAM均含有兩個完全相同的RAM。在存儲時存儲相同的數據;在讀取數據時其中一個RAM輸入地址碼從0開始依次讀取數據形成序列x(n),另一個RAM在輸入地址碼加上k后讀取數據形成序列x(n-k),然后將兩列數列送人乘法器中進行運算完成自相關運算。這樣雖然犧牲了FPGA中的存儲空間,但是較之于單RAM分時讀取數據的操作方式,提高了運算速率(減少2個總線讀取周期)。如圖5所示。  


  
從式(4)可以看出:存儲器輸出的第一個數據為第一個記錄數據往后延遲k個記錄數據。這樣就會出現一個問題:在RAM中記錄的所有數據不能都用于自相關計算,當RAM1_2讀取到倒數第N-1-k個數據時,RAM1_1的數據已經讀取完畢,再進行計算均為無效數據(見表1)。  


  
從表1中可以看出:在存儲器中存儲的N個數值中僅有N-1-k個數據進行了自相關運算,超出這個范圍的數據應視為無效數據被舍棄。因此如果N的長度過短或者k的數值過大,存儲器中的數據將有相當一部分數據被舍棄,并且隨著k值的增加被舍棄的數據量將在整個存儲數據量中的比例越來越大;但是由于信號的自相關性隨著延遲k增加而降低,在做自相關運算時一般采用較小的k值。為此,如果采用較大的RAM存儲器和較小的k值,在一組存儲數據中舍棄的數據其實是占比例很小的。例如在k=3的情況下,即延時為3個A/D轉換周期,CyclmleⅡFPGA中存儲器的最大存儲長度為65 536個8 b存儲單元,舍棄記錄數據為3個8 b,舍棄數據量僅占存儲數據量的0.004%,在自相關處理時是能夠接受的。如圖6所示。  


  
2.2 累加器及1/N相乘單元實現:  

如果使用2的N階次冪數據用作自相關計算,在二進制下可以通過向右移位N個bit位實現除法功能。在設計中采用了2×16個采樣數據組成的數組完成自相關計算,其算法具體流程圖如圖7所示。  


  
3 微處理器的設計實現  

嵌入式微處理器的設計包括3個部分:利用SoPCBuilder定制的軟核CPU,在Quartus II環境下設計的電路和Nios II編程。  

Nios II的軟件編程主要基于嵌入式操作系統μC/OS-Ⅱ。μC/OS-Ⅱ是一個完整的、可移植、固化和剪裁的占先式實時多任務核(Kernel)。從1992年發布至今,μC/OS-II已經有上百個的商業應用案例,在40多種處理器上成功移植。其中Altera提供對μC/OS-II的完整支持,非常容易使用。  

μC/OS—II提供以下系統服務:任務管理(Task Management);事件標志(Event Flag);消息傳遞(Mes-sage Passing);內存管理(Memory Management);信號量(Semaphores);時間管理(Time Management)。在應用程序中,用戶可以方便地使用這些系統調用實現目標功能。  

在該設計中,建立了一個主任務和兩個子任務(任務1,任務2):主任務主要是負責啟動子任務;任務1主要負責數據的采集和采集數據的存儲,任務2主要負責調用存儲器中存儲的采集數據控制外圍計算模塊進行自相關計算?傮w軟件算法流程圖如圖8所示。圖9為由SoPC實現的Nios II處理器圖。  





  
在Nios II系統中,首先,通過main()主函數調用OSTaskCreateExt()函數創建任務1,即數據采集任務。  

由于AD7822作為AVALON的從外設掛接在了AVALON總線上,通過在任務1中通過調用IORD_16DIRECT()端口查詢函數實時發起A從端口傳輸啟動AD7822,獲取采集數據,然后使能外圍RAM的wren端口存儲。當存儲到該設計中存儲器長度的數據以后,通過“尾觸發”方式啟動任務2,即自相關計算任務,并且調用延遲函數OSTimeDlyHMSM(),交出CPU的使用權。程序要點如下:  





  
在任務2中,首先關閉兩個存儲器的寫入使能,使之只能讀出數據;然后輸出相應的兩個地址碼:兩個地址碼之間有相對k的延時,并且同時使能18×18乘法器,累加器及1/N相乘單元,當循環完成后,自動刪除任務2,交CPU使用權給數據采集任務。程序要點如下:  


  
4 結 語  

首先,該設計采用嵌入式操作系統實時控制外圍運算邏輯電路的方式。實現了多乘加的DSP運算,由于嵌入式操作系統的靈活性和廣泛的可移植性,使得該設計的可讀性和移植性增強;其次,本設計采用天生并行結構的FPGA處理器完成多乘加運算,有利于提高運算速度和處理的穩定度;再次,將必要的外設作為AVALON總線器件,采用總線查詢傳輸的方式進行訪問,不必在嵌入式操作系統中過多的考慮底層硬件的驅動和時序,這樣提高電路的穩定性且也增強了程序的通用性。
本文地址:http://www.qingdxww.cn/thread-21625-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 利用模擬開發工具生態系統進行安全電路設計
  • 我們是Microchip
  • 想要避免發生災難,就用MPLAB SiC電源仿真器!
  • 深度體驗Microchip自動輔助駕駛應用方案——2025巡展開啟報名!
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 操主播 | 4438亚洲全国最大成人网 | 日韩伦理在线高清视频播放免费 | 日本天堂影院在线播放 | 欧美视频一区在线观看 | 久草国产视频 | 91区国产福利在线观看午夜 | 麻豆传煤一区免费入 | 欧美在线观看视频一区 | 久久久青青久久国产精品 | 久久激情网 | 欧美日韩亚洲一区二区精品 | 性xx×中国妇女免费 | 敢死队4在线观看高清完整版 | 黄色午夜视频 | 91免费国产 | 四虎影视精品 | 男人天堂综合 | 在线观看日本免费 | 亚洲伦理一区二区三区 | 久久久久久免费播放一级毛片 | 欧美高清hd| 国产精亚洲视频 | 精品久久伦理中文字幕 | 亚洲一级毛片免观看 | 韩国日本免费不卡在线观看 | 波多野结衣四虎精品影库 | 狠狠88综合久久久久综合网 | 四虎国产精品高清在线观看 | 久久这里只是精品免费视频 | 夜夜狠狠狠狠 | 国产对白在线观看 | 九九免费精品视频在这里 | 国内精品久久久久久99蜜桃 | 中文一级国产特级毛片视频 | 亚洲免费成人网 | 青青青视频在国线观看伊人 | 午夜宅宅网 | 77成人网| 日韩免费在线视频观看 | 不卡中文字幕在线观看 |