<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > Chirp函數(shù)的Nios Ⅱ嵌入式實(shí)現(xiàn)

          Chirp函數(shù)的Nios Ⅱ嵌入式實(shí)現(xiàn)

          作者: 時(shí)間:2009-06-16 來(lái)源:網(wǎng)絡(luò) 收藏

          因此該信號(hào)源的功能是:在Ⅱ中建立的微控制器;使用操作系統(tǒng)μC/OS-Ⅱ建立對(duì)DDS頻率控制字輸出實(shí)時(shí)改變的任務(wù);根據(jù)線(xiàn)性和非線(xiàn)性的特點(diǎn)控制字的輸出根據(jù)需要線(xiàn)性或者非線(xiàn)性輸出,并且在此設(shè)計(jì)中將該任務(wù)的優(yōu)先級(jí)設(shè)置為最高。利用VHDL語(yǔ)言編寫(xiě)DDS模塊,首先根據(jù)Matlab計(jì)算出需要的正弦數(shù)據(jù),然后將這些數(shù)據(jù)存儲(chǔ)于ROM中供DDS模塊調(diào)用,并且通過(guò)微控制器中的Jtag_uart傳輸模塊在編程監(jiān)視窗口實(shí)時(shí)觀(guān)測(cè)當(dāng)前輸入頻率的大小,具體結(jié)構(gòu)如圖4所示。

          本文引用地址:http://www.ex-cimer.com/article/152464.htm

          2 DDS模塊的設(shè)計(jì)
          數(shù)字式頻率合成器(DDS)模塊的工作原理是:將O~2π的正弦值分為N份,將各點(diǎn)的幅度值存入ROM中,再用一個(gè)相位累加器每次累加相位值ωT,得到當(dāng)前的相位值,通過(guò)查找ROM得到當(dāng)前的幅度值。其系統(tǒng)框如圖5所示。

          DDS的幾個(gè)主要參數(shù)是:系統(tǒng)時(shí)鐘頻率,頻率控制字長(zhǎng),頻率分辨率,ROM單元數(shù),ROM字長(zhǎng)。該設(shè)計(jì)的DDS是32位的,時(shí)鐘頻率為50 MHz,頻率控制字長(zhǎng)為32位,ROM單元數(shù)為2的11次方,ROM字長(zhǎng)為16位。而且有如下關(guān)系:
          頻率分辨率=系統(tǒng)時(shí)鐘頻率/232;
          頻率控制字(FTW)=f×232/T;
          其中:f為要合成的頻率;T為系統(tǒng)時(shí)鐘。
          DDS的工作過(guò)程為:每次時(shí)鐘的上升沿到來(lái)時(shí),相位累加器(32位)中的值累加上頻率寄存器(32位)中的值,再利用累加器的高11位作為地址進(jìn)行ROM查表,輸出相應(yīng)的幅值數(shù)字信號(hào)。
          如果是掃頻工作,只需要根據(jù)一定的規(guī)律實(shí)時(shí)修改頻率控制字,就可以達(dá)到掃頻輸出的目的。但是該系統(tǒng)的性能受到以下兩個(gè)方面的制約:ROM單元數(shù)和ROM數(shù)值的有限字長(zhǎng)。由于ROM大小的限制,ROM的單元地址位數(shù)一般都遠(yuǎn)小于相位累加器的位數(shù),這樣只能取相位累加器的高位作為ROM的地址進(jìn)行查詢(xún),這就相當(dāng)于引入了一個(gè)相位誤差。而且ROM的有限字長(zhǎng),不能精確表示幅度值,相當(dāng)于引入了一個(gè)量化誤差。因此應(yīng)根據(jù)系統(tǒng)的性能要求選擇合理的ROM。為了解決ROM的受限問(wèn)題,該設(shè)計(jì)采用ROM壓縮技術(shù)。因?yàn)檎?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/函數(shù)">函數(shù)存在對(duì)稱(chēng)和反轉(zhuǎn)特性,即:


          對(duì)于O~2兀的幅度值,可以只存儲(chǔ)O~π/2的部分。這樣原本需要的2的11次方個(gè)單元的ROM現(xiàn)在只需要2的9次方個(gè)單元的ROM就可以。在MatIab中產(chǎn)生16位512點(diǎn)的O~π/2正弦波數(shù)據(jù)的命令如下:


          將Y數(shù)據(jù)依次存入Altera公司提供的Megawiz-ard宏單元的ROM中即可。


          3 微處理器的
          微處理器的設(shè)計(jì)包括3個(gè)部分:利用SoPCBuilder定制的軟核CPU,在QuartusⅡ環(huán)境下設(shè)計(jì)的電路和Ⅱ編程。
          本設(shè)計(jì)的軟核CPU采用Ⅱ/S標(biāo)準(zhǔn)型內(nèi)核,帶有16 KB的Cache;集成了外部的FLASH和SDRAM控制器用于保存程序數(shù)據(jù);Jtag_Hart電腦開(kāi)發(fā)板傳輸接口用于建立良好的用戶(hù)交互接口使用戶(hù)能在console界面上觀(guān)察程序運(yùn)行情況;兩個(gè)位寬分別為8位和3位的輸出口作為輸出DDS模塊的控制字;定時(shí)器用于產(chǎn)生CPU系統(tǒng)時(shí)鐘;LCD控制接口用于在LCD顯示一些需要的信息。

          linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)


          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();