信號(hào)與信息處理綜合實(shí)驗(yàn)(FPGA部分)指導(dǎo)書_lab2_第1頁(yè)
信號(hào)與信息處理綜合實(shí)驗(yàn)(FPGA部分)指導(dǎo)書_lab2_第2頁(yè)
信號(hào)與信息處理綜合實(shí)驗(yàn)(FPGA部分)指導(dǎo)書_lab2_第3頁(yè)
信號(hào)與信息處理綜合實(shí)驗(yàn)(FPGA部分)指導(dǎo)書_lab2_第4頁(yè)
信號(hào)與信息處理綜合實(shí)驗(yàn)(FPGA部分)指導(dǎo)書_lab2_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、信號(hào)與信息處理綜合實(shí)驗(yàn)(FPGA部分)實(shí)驗(yàn)指導(dǎo)書實(shí)驗(yàn)二 CORDIC算法一、 實(shí)驗(yàn)?zāi)康模?) 掌握FPGA設(shè)計(jì)中的流水線技術(shù);(2) 掌握Cordic算法的基本原理及其實(shí)現(xiàn)方法;(3) 了解通過(guò)在片內(nèi)生成ROM的方式進(jìn)行在板模塊測(cè)試的方法。二、 實(shí)驗(yàn)內(nèi)容(1) 按實(shí)驗(yàn)指導(dǎo)書所給出的步驟,在FPGA上實(shí)現(xiàn)Cordic算法用于計(jì)算sin(x)。(2) 修改程序使其能夠用于計(jì)算x2+y2。三、 實(shí)驗(yàn)要求按下面的說(shuō)明逐步操作,實(shí)驗(yàn)結(jié)束后需經(jīng)教師或助教驗(yàn)收,并將工作目錄壓縮后重新命名,命名規(guī)則為“組號(hào)_lab1.zip(rar)”,并分別撰寫實(shí)驗(yàn)報(bào)告,上傳到ftp上的”FPGA實(shí)驗(yàn)二”文件夾。四、 實(shí)驗(yàn)

2、過(guò)程說(shuō)明1、 Cordic算法原理Cordic算法的全稱是Coordinate Rotation Digital Computer ,可以用于實(shí)現(xiàn)對(duì)多種超越函數(shù)的運(yùn)算。Cordic算法將多種難以用硬件電路直接實(shí)現(xiàn)的復(fù)雜運(yùn)算分解為統(tǒng)一的簡(jiǎn)單移位-加法的迭代運(yùn)算形式,結(jié)構(gòu)規(guī)則、運(yùn)算周期可以預(yù)測(cè)、適合于集成電路實(shí)現(xiàn)。所謂的超越函數(shù)是指變量之間的關(guān)系不能用有限次加、減、乘、除、乘方、開方運(yùn)算表示的函數(shù)。如指數(shù)函數(shù)、對(duì)數(shù)函數(shù)、三角函數(shù)和反三角函數(shù)等都是超越函數(shù)。最初的Cordic算法由J.D.Volder 于1959 年提出, 用于計(jì)算三角函數(shù)。 1971 年,Walther 提出了統(tǒng)一的CORDIC

3、算法,引入了參數(shù)m 將CORDIC 實(shí)現(xiàn)的三種迭代模式:圓周、雙曲和線性變換統(tǒng)一于一個(gè)表達(dá)式下。Cordic算法目前使用非常廣泛,被稱為算法中的瑞士軍刀。下面我們首先介紹Cordic算法的基本原理。笛卡爾坐標(biāo)系中的旋轉(zhuǎn)變換可以表示為:提取cos,變成:如果在這一表達(dá)式中限制 ,則括號(hào)內(nèi)部分不包含乘法運(yùn)算,移位相加即可實(shí)現(xiàn)。實(shí)際上,任意角度的旋轉(zhuǎn)都可以轉(zhuǎn)化為一系列角度滿足 旋轉(zhuǎn)的組合,假定總共旋轉(zhuǎn)N次,第i次旋轉(zhuǎn)角度滿足: ,那么 為一系列常數(shù)。由此可知,每次旋轉(zhuǎn)角度的絕對(duì)值是事先確知的,只是旋轉(zhuǎn)方向不同?;谶@種限制,將第i次旋轉(zhuǎn)的方程轉(zhuǎn)化為:去掉Ki則每次運(yùn)算只包含移位和加法運(yùn)算。當(dāng)N趨于無(wú)

4、窮大時(shí),Ki的連乘積: 即算法本身存在增益:An=1.647。實(shí)際實(shí)現(xiàn)中N不可能很大,因此這一增益與次數(shù)有關(guān):若事先確定迭代次數(shù),則增益為一確定值,旋轉(zhuǎn)角度由一系列+1,-1所決定 角度累加方程: 與方程一起構(gòu)成三個(gè)迭代方程。 Cordic算法有兩種工作模式,一種稱為旋轉(zhuǎn)模式,另一種稱為向量模式。 旋轉(zhuǎn)模式就是將輸入的復(fù)向量旋轉(zhuǎn)指定的角度;向量模式則將輸入向量旋轉(zhuǎn)到x軸上,并記錄旋轉(zhuǎn)方向向量。 旋轉(zhuǎn)模式下,每次旋轉(zhuǎn)方向的確定由殘留角的符號(hào)決定,其工作模式為:旋轉(zhuǎn)模式的目標(biāo)是使zn=0。 如果采用向量模式,則旋轉(zhuǎn)角度不預(yù)先確定,目標(biāo)是使yn=0,即將輸入向量旋轉(zhuǎn)到x軸上,旋轉(zhuǎn)方向由殘留y值的正負(fù)

5、決定。向量模式結(jié)果適當(dāng)選擇初始值和工作模式,能直接計(jì)算sin,cos,arctan,復(fù)向量幅度,極坐標(biāo)和笛卡爾坐標(biāo)的變換等。例如,sin(x)和cos(x)的計(jì)算可以通過(guò)旋轉(zhuǎn)模式得到,選擇初值:y0=0; x0= z0設(shè)為待求角度,則再如,向量模式可用于計(jì)算arctan, 要求輸入以兩個(gè)數(shù)的商形式給出,同時(shí)能計(jì)算復(fù)向量幅度,。實(shí)際上,Cordic算法還可以推廣到2、用Cordic算法計(jì)算sin(x)(1) 建立工程,并將壓縮包中的Cordic.v添加到工程中(2) 為該文件設(shè)計(jì)測(cè)試文件,并進(jìn)行功能仿真和時(shí)序仿真,觀察并分析從一個(gè)角度值x的輸入到它對(duì)應(yīng)的sin(x)輸出所對(duì)應(yīng)的時(shí)間。(3) 按以

6、下步驟在工程中添加一個(gè)ROM IPCore。輸入IPcore文件名并點(diǎn)擊Next,選擇下的,并點(diǎn)擊Next。存儲(chǔ)器類型選擇單口ROM,點(diǎn)擊Next,在第二個(gè)頁(yè)面上設(shè)置RAM的位寬和深度,點(diǎn)擊Next,在第3個(gè)配置頁(yè)面上找到下圖所示位置:說(shuō)此處需要加載用于初始化存儲(chǔ)器的文件。根據(jù)文件中注釋所提供的量化規(guī)則設(shè)置一些角度值存在一個(gè).coe文件中,.coe文件的樣例見壓縮包中的angle.coe,可用任一文本編輯器打開,文件以“memory_initialization_radix=16;memory_initialization_vector=“開頭,其后的數(shù)據(jù)以十六進(jìn)制表示,數(shù)據(jù)之間以空格或逗號(hào)分

7、割,文件的長(zhǎng)度和數(shù)據(jù)位寬應(yīng)與ROM的設(shè)置保持一致。其他選項(xiàng)保持為默認(rèn)選項(xiàng),點(diǎn)擊Generate按鈕生成IPcore。此時(shí)在工程目錄下的ipcore_dir文件夾中會(huì)產(chǎn)生一系列與設(shè)定的IP core同名的文件,其中包含一個(gè).v文件和一個(gè).xco文件,xco文件是包含IP core配置信息的核心文件,.V文件的格式與verilog module相同,其內(nèi)容較為復(fù)雜,對(duì)使用者而言通常只關(guān)注它的模塊頭,作為實(shí)例化時(shí)的參考。(3) 產(chǎn)生一個(gè)用于在板測(cè)試的頂層文件,將cordic模塊和ROM模塊在該文件中進(jìn)行實(shí)例化,參加壓縮包中的cordic_top.v。(4) 添加約束文件,參見壓縮包中的cordic.ucf文件。自行設(shè)置Chipscope中的信號(hào)連接

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論