基于CORDIC算法的數å—ä¸‹è®Šé »å™¨è¨è¨ˆ
時間:2008-12-08 15:54:45來æºï¼šyangliu
導語:?數å—ä¸‹è®Šé »æŠ€è¡“çš„åŸºæœ¬åŠŸèƒ½æ˜¯å°‡å¯¬å¸¶é«˜é€Ÿæ•¸æ“šæµä¿¡è™Ÿè½‰è®Šæˆçª„帶低速數據æµä¿¡è™Ÿï¼Œä»¥ä¾¿DSP實時處ç†ã€‚
摘è¦ï¼šæ•¸å—ä¸‹è®Šé »æŠ€è¡“çš„åŸºæœ¬åŠŸèƒ½æ˜¯å°‡å¯¬å¸¶é«˜é€Ÿæ•¸æ“šæµä¿¡è™Ÿè½‰è®Šæˆçª„帶低速數據æµä¿¡è™Ÿï¼Œä»¥ä¾¿DSP實時處ç†ã€‚ç ”ç©¶äº†åŸºäºŽå”調旋轉數å—å¼è¨ˆç®—機(CORDIC)算法的數å—ä¸‹è®Šé »è¨è¨ˆï¼Œé€™ç¨®æ–¹æ³•能有效æé«˜ä¿¡è™Ÿè™•ç†æ•ˆçŽ‡ï¼Œæ¸›å°ç¡¬ä»¶è¨è¨ˆçš„代價,并且通éŽä»¿çœŸè‰æ˜Žè©²æ–¹æ³•的高效性。
é—œéµè©žï¼šæ•¸å—ä¸‹è®Šé »ï¼›CORDIC算法;數控本振
0 引言
傳統的數å—ä¸‹è®Šé »å™¨ç”±æœ¬åœ°NCO(numer—icallycontrolledoscillator)產生的信號與輸入信號相乘實ç¾ä¸‹è®Šé »ï¼Œåœ–1給出了數å—ä¸‹è®Šé »å™¨å…·é«”å¯¦ç¾çš„功能框圖。DDC(digitaldownconver-sion,數å—ä¸‹è®Šé »å™¨ï¼‰å·¥ä½œæ™‚ï¼Œæ¯å‘DDC輸入一個信號采樣樣本,NCOå°±å¢žåŠ ä¸€å€‹2π×f[sub]Lo[/sub]/f[sub]s[/sub]相ä½å¢žé‡ï¼›ç„¶åŽä»¥âˆ‘2π×/f[sub]Lo[/sub]/f[sub]s[/sub]相ä½ç´¯åŠ è§’åº¦ä½œç‚ºåœ°å€ï¼Œæª¢æŸ¥è©²åœ°å€ä¸Šçš„æ£å¼¦ã€ä½™å¼¦æ•¸å€¼å¹¶è¼¸å‡ºåˆ°æ•¸å—æ··é »å™¨ï¼Œèˆ‡ä¿¡è™Ÿæ¨£æœ¬ç›¸ä¹˜ï¼Œå³å®Œæˆäº†æ•¸å—ä¸‹è®Šé »ã€‚
通常,數å—ä¸‹è®Šé »å™¨æŠŠè¼¸å…¥ä¿¡è™Ÿèˆ‡å°æ‡‰çš„æ£å¼¦ã€ä½™å¼¦è¡¨ä¸çš„æ¨£æœ¬å€¼ç›¸ä¹˜ã€‚è‹¥è¦ç²å¾—高分辨率輸出信號,則æ£å¼¦ã€ä½™å¼¦è¡¨å°‡æœƒå¾ˆå¤§ï¼Œæ‰€éœ€ç¡¬ä»¶é–‹éŠ·å¢žåŠ ï¼Œè™•ç†é€Ÿåº¦å¤§å¤§é™ä½Žã€‚而通éŽå”調旋轉數å—å¼è¨ˆç®—機(CORDIC)的方法計算æ£å¼¦ã€ä½™å¼¦å€¼èƒ½è¼ƒå¥½åœ°å…‹æœé€™å€‹å•題,僅需è¦ç°¡å–®çš„åŠ ã€æ¸›å’Œç§»ä½æ“作。
1 CORDIC算法
Volderæå‡ºæœ€åˆçš„CORDIC算法是計算在平é¢ç›´è§’忍™ç³»å’Œæ¥µåæ¨™ç³»ä¹‹é–“é€²è¡Œè‡ªç”±åæ¨™è®Šæ›çš„乘法。Walther推廣了CORDIC算法,將圓周ã€ç·šæ€§å’Œé›™æ›²ç·šéƒ½åŒ…括進來。在圓周旋轉模å¼ä¸ï¼ˆå¦‚圖2所示,單ä½åœ“å…§å¯å¾—出公å¼ï¼ˆ1)ã€ï¼ˆ2)),å°å‘é‡åŒ–而言,具有原點(X[sub]1[/sub],Y[sub]1[/sub])的å‘釿Œ‰å¦‚ä¸‹æ–¹å¼æ—‹è½‰ï¼šé€šéŽå°‡y[sub]k[/sub]è¿ä»£æ”¶æ–‚到0,使得å‘釿œ€åŽè½åœ¨æ©«å標上。旋轉就是將具有原點(X,Y)的å‘釿—‹è½‰1個角度,被稱為Z的角度寄å˜å™¨çš„æœ€çµ‚值收斂到0。角度閉åˆï¼Œé€™æ¨£æ¯æ¬¡è¿ä»£å°±åªéœ€1æ¬¡åŠ æ³•å’Œ1次二進制轉æ›ã€‚
[b][align=center]詳細內容請點擊:
基于CORDIC算法的數å—ä¸‹è®Šé »å™¨è¨è¨ˆ[/align][/b]