亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? fir16_emac.s.list

?? freescale MAC DSP的算法庫(FFT
?? LIST
?? 第 1 頁 / 共 3 頁
字號:
                             ;************************************************************************
                             ;*
                             ;* Copyright:
                             ;*	Freescale Semiconductor, INC. All Rights Reserved.  
                             ;*  You are hereby granted a copyright license to use, modify, and
                             ;*  distribute the SOFTWARE so long as this entire notice is
                             ;*  retained without alteration in any modified and/or redistributed
                             ;*  versions, and that such modified versions are clearly identified
                             ;*  as such. No licenses are granted by implication, estoppel or
                             ;*  otherwise under any patents or trademarks of Freescale Semiconductor, 
                             ;*  Inc. This software is provided on an "AS IS" basis and without warranty.
                             ;*
                             ;*  To the maximum extent permitted by applicable law, FREESCALE 
                             ;*  DISCLAIMS ALL WARRANTIES WHETHER EXPRESS OR IMPLIED, INCLUDING 
                             ;*  IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR
                             ;*  PURPOSE AND ANY WARRANTY AGAINST INFRINGEMENT WITH REGARD TO THE 
                             ;*  SOFTWARE (INCLUDING ANY MODIFIED VERSIONS THEREOF) AND ANY 
                             ;*  ACCOMPANYING WRITTEN MATERIALS.
                             ;* 
                             ;*  To the maximum extent permitted by applicable law, IN NO EVENT
                             ;*  SHALL FREESCALE BE LIABLE FOR ANY DAMAGES WHATSOEVER (INCLUDING 
                             ;*  WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS 
                             ;*  INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR OTHER PECUNIARY
                             ;*  LOSS) ARISING OF THE USE OR INABILITY TO USE THE SOFTWARE.   
                             ;* 
                             ;*  Freescale assumes no responsibility for the maintenance and support
                             ;*  of this software
                             ;*************************************************************************
                             ;*
                             ;*  FILE NAME: fir16.s
                             ;*
                             ;*  PURPOSE:  FIR16 routines definition
                             ;*
                             ;*  AUTHOR: Andrey Butok
                             ;*		FIR16 function optimized for eMAC by Igor Drozdinsky
                             ;*
                             ;***********************************************************************
                                                .text                         
                             ;#define __EMAC_H
                             ;#include "emac.h"
                             ;#ifdef __FRACT_M
                             ;#else
                             ;#define 0x00000070 0x00000000
                             ;#endif
                                                .xdef        _FIR16_EMAC      
                                                .extern      _malloc          
                                                .extern      _free            
                             ;******************************************************
                             ;* NAME: void FIR16( struct tFirStruct *pFIR, Frac16* pX, Frac16* pY, unsigned int n)
                             ;*
                             ;* DESCRIPTION: Computes a Infinite Impulse Response (IIR) filter for a array of 16-bit fractional data values.
                             ;******************************************************
                             ;* Used registers:
                             ;*	a2       pFIR	- Pointer to a data structure containing private data for the IIR filter
                             ;*  d1		 Old MAC status register
                             ;*	d2, d3	 iCurX0, iCurX1, iCurX2, iCurX3	- Curent X
                             ;*	d4		 iCurA0, iCurA1	- Curent coefficients
                             ;*	d5		 j	- inner loop counter
                             ;*	d7		 i	- outer loop counter
                             ;*	d6		 tmp	- saved value for inner loop counter calculation
                             ;*	a0       pX		- Pointer to the current X for outer loop
                             ;*	a1       pY		- Pointer to the current Y for outer loop
                             ;*	a4       pCurX	- Pointer to the current X for inner loop
                             ;*	a4       pCurHistory	- Pointer to the current element of history buffer
                             ;*	a3       pCurCoef	- Pointer to the current coefficient
                             ;*	a6       pFirCoef - Pointer to the coefficients -> {a0,a1,a2...}
                             ;*	ACC0     iOut0	- Accumulator 0
                             ;*	ACC1     iOut1	- Accumulator 1
                             ;*	ACC2     iOut2	- Accumulator 2
                             ;*	ACC3     iOut3	- Accumulator 3
                             ;******************************************************
                             _FIR16_EMAC                                      
                             ;---=Saving values of used registers=---
0x00000000: 4fefffc4                            lea          -60(a7), a7      
0x00000004: 48d77fff                            movem.l      d0-d7/a0-a6, (a7) 

                             ;--== Saving old MAC status register to d1 ==--
0x00000008: a981                                move.l       MACSR, d1        
                             ;--== Loading new MAC status register ==--
0x0000000a: 203c00000070                        move.l       #0x00000070, d0  
0x00000010: a900                                move.l       d0, MACSR        

                             ;---=Most useful parameters are moved from stack to registers.=---	
0x00000012: 206f0044                            move.l       68(a7), a0       ;pX
0x00000016: 226f0048                            move.l       72(a7), a1       ;pY
0x0000001a: 246f0040                            move.l       64(a7), a2       ;pIIR
0x0000001e: 2c52                                move.l       (a2), a6         ;pIirCoef = pIIR->pIirCoef
0x00000020: a13c00000000                        move.l       #0, ACC0         
0x00000026: a33c00000000                        move.l       #0, ACC1         
0x0000002c: a53c00000000                        move.l       #0, ACC2         
0x00000032: a73c00000000                        move.l       #0, ACC3         
                             ;---====== Begin of cycle of getting Y[1]..Y[N] (N = (pIIR->iIirCoefCount - 1) / 2)======---
0x00000038: 2e2a0004                            move.l       4(a2), d7        ;
0x0000003c: 5387                                subq.l       #1, d7           ;tmp = i = pIIR->iIirCoefCount - 1;
0x0000003e: 2c07                                move.l       d7, d6           ;


0x00000040: e487                                asr.l        #2, d7           

0x00000042: 67000104                            beq          .EndD4Z          ;if(i >> 2)
                                                                              ;{

                             ;--==First N output samples computation==--

0x00000046: 2e06                                move.l       d6, d7           
0x00000048: 5987                                subq.l       #4, d7           ;i -= 4;
                             ;--==Computation without using history buffer==--

                             .BegD4                                           ;do{

                             ;--== Next input samples loading	==--
0x0000004a: 2410                                move.l       (a0), d2         ;iCurX0 = pX[0]; icurX1 = pX[1];
0x0000004c: 26280004                            move.l       4(a0), d3        ;iCurX2 = pX[2]; icurX3 = pX[3];

0x00000050: 2848                                movea.l      a0, a4           ;pCurX = pX;
0x00000052: 41e80008                            lea          8(a0), a0        ;pX += 4;

0x00000056: 264e                                move.l       a6, a3           ;pCurCoef = pIirCoef;
                             ;--== Next coefficient loading	==--
0x00000058: 381b                                move.w       (a3)+, d4        ;iCurA0 = *pCurCoef;
                             ;--== Input samples and first coefficient multiplications ==--
0x0000005a: a4040280                            mac.w        d4.l, d2.u, <<, ACC0 ;iOut0 = iCurA0 * iCurX0;
0x0000005e: a4840200                            mac.w        d4.l, d2.l, <<, ACC1 ;iOut1 = iCurA0 * iCurX1;
0x00000062: a6040290                            mac.w        d4.l, d3.u, <<, ACC2 ;iOut2 = iCurA0 * iCurX2;
0x00000066: a6840210                            mac.w        d4.l, d3.l, <<, ACC3 ;iOut3 = iCurA0 * iCurX3;

                             ;--== The count of inner loops calculation ==-- 
0x0000006a: 2a06                                move.l       d6, d5           ;
0x0000006c: 9a87                                sub.l        d7, d5           ;j = tmp - i - 4;
0x0000006e: 5985                                subq.l       #4, d5           ;

0x00000070: 6f000030                            ble          .EndIn1          ;while(j > 0)
                                                                              ;{

                             .ForIn1Beg                                       
                             ;--== Next coefficients loading	==--
0x00000074: 281b                                move.l       (a3)+, d4        ;iCurA0 = *pCurCoef++;iCurA1 = *pCurCoef++;
                             .ForIn1                                          

                             ;--== Three first input samples and coefficients multiplication ==--
0x00000076: a48402c0                            mac.w        d4.u, d2.u, <<, ACC1 ;iOut1 += iCurA0 * iCurX0;
0x0000007a: a4040250                            mac.w        d4.u, d2.l, <<, ACC2 ;iOut2 += iCurA0 * iCurX1;
0x0000007e: a68402d0                            mac.w        d4.u, d3.u, <<, ACC3 ;iOut3 += iCurA0 * iCurX2;

                             ;--== Loading two next input samples ==--	
0x00000082: 2602                                move.l       d2, d3           ;iCurX3 = iCurX1; 	iCurX2 = iCurX0;
0x00000084: 2424                                move.l       -(a4), d2        ;iCurX1 = *--pCurX; iCurX0 = *--pCurX;

                             ;--== Fourth input sample and coefficient multiplication ==--
0x00000086: a4040240                            mac.w        d4.u, d2.l, <<, ACC0 ;iOut0 += iCurA0 * iCurX1;

                             ;--== Next four input sample and coefficients multiplication ==--
0x0000008a: a4040280                            mac.w        d4.l, d2.u, <<, ACC0 ;iOut0 += iCurA1 * iCurX0;
0x0000008e: a4840200                            mac.w        d4.l, d2.l, <<, ACC1 ;iOut1 += iCurA1 * iCurX1;
0x00000092: a6040290                            mac.w        d4.l, d3.u, <<, ACC2 ;iOut2 += iCurA1 * iCurX2;
                             ;--== Last mac instruction with next coefficients loading ==--
0x00000096: a81b3214                            mac.w        d4.l, d3.l, <<, (a3)+, d4, ACC3 ;iOut3 += iCurA1 * iCurX3;
                                                                              ;iCurA0 = *pCurCoef++;iCurA1 = *pCurCoef++;

0x0000009a: 5585                                subq.l       #2, d5           ;	j -= 2;
0x0000009c: 6ed8                                bgt          .ForIn1          ;}

                             .EndIn1C                                         
                             ;--== Correcting pointer to coefficients after inner loop ==--
0x0000009e: 47ebfffc                            lea          -4(a3), a3       ;pCurCoef -= 4

                             .EndIn1                                          

0x000000a2: 2a2a000c                            move.l       12(a2), d5       ;if(pIIR->iIirHistoryCount)
                             ;---=Computation using history buffer==--
0x000000a6: 67000068                            beq          .BegNoHistory    ;{
                             ;--== The count of inner loops calculation ==-- 
0x000000aa: 2a07                                move.l       d7, d5           ;
0x000000ac: 5885                                addq.l       #4, d5           ;j = i + 4;
0x000000ae: 6f00005c                            ble          .EndInH          ;if(j > 0)
                                                                              ;{
                             ;--== Setting curent history buffer pointer ==--
0x000000b2: 286a0008                            move.l       8(a2), a4        ;
0x000000b6: d9c6                                adda.l       d6, a4           ;
0x000000b8: d9c6                                adda.l       d6, a4           ;pCurHistory = pIIR->pIirHistory + tmp * 2;

0x000000ba: 08050000                            btst         #0, d5           ;if(j & 1)
0x000000be: 67000022                            beq          .ForInHBeg       ;{

                             ;--== This part is executed only if j is odd ==--	
                             ;--== Next coefficients loading	==--
0x000000c2: 381b                                move.w       (a3)+, d4        ;iCurA = *pCurCoef++;

                             ;--== Next input sample loading	from history buffer==--
0x000000c4: 3602                                move.w       d2, d3           ;iCurX3 = iCurX2;
0x000000c6: 3424                                move.w       -(a4), d2        ;iCurX2 = iCurX1
0x000000c8: 4842                                swap         d2               ;iCurX1 = iCurX0
0x000000ca: 4843                                swap         d3               ;iCurX0 = *--pCurHistory;

0x000000cc: a4040280                            mac.w        d4.l, d2.u, <<, ACC0 ;iOut0 += iCurA0 * iCurX0;
0x000000d0: a4840200                            mac.w        d4.l, d2.l, <<, ACC1 ;iOut1 += iCurA0 * iCurX1;
0x000000d4: a6040290                            mac.w        d4.l, d3.u, <<, ACC2 ;iOut2 += iCurA0 * iCurX2;
0x000000d8: a6840210                            mac.w        d4.l, d3.l, <<, ACC3 ;iOut3 += iCurA0 * iCurX3;

0x000000dc: 5385                                subq.l       #1, d5           ;j -= 1;
0x000000de: 6f00002c                            ble          .EndInH          ;}
                                                                              ;while(j > 0)
                                                                              ;{

                             .ForInHBeg                                       

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕第一区二区| 亚洲欧美激情视频在线观看一区二区三区 | 亚洲一区二区三区影院| 国产激情精品久久久第一区二区 | 国产精品久久久久久福利一牛影视| 香蕉久久夜色精品国产使用方法 | 国产尤物一区二区在线| 91精品国产欧美一区二区18| 日日噜噜夜夜狠狠视频欧美人| 91在线国产观看| 亚洲国产日韩精品| 欧美视频在线观看一区| 日韩精品一级中文字幕精品视频免费观看| 色噜噜狠狠色综合中国| 一区二区三区不卡视频在线观看| 欧美亚一区二区| 激情文学综合网| 亚洲欧美欧美一区二区三区| 欧美一区二区三区人| 国产伦精品一区二区三区在线观看| 国产欧美日韩不卡| 欧美日韩国产色站一区二区三区| 国产在线国偷精品产拍免费yy| 国产精品国产三级国产普通话蜜臀| 欧美日韩视频在线观看一区二区三区 | 欧美日韩一区久久| 成人av网站免费观看| 一区二区三区四区精品在线视频| 成人精品一区二区三区四区| 91精品国产91久久综合桃花| 成人黄色国产精品网站大全在线免费观看| 国产精品免费观看视频| 日韩欧美亚洲另类制服综合在线| 色综合色综合色综合| 91视频.com| 97久久精品人人澡人人爽| 加勒比av一区二区| 精彩视频一区二区三区| 日韩电影在线一区二区| 天堂久久久久va久久久久| 亚洲午夜在线视频| 亚洲日本乱码在线观看| 国产精品免费网站在线观看| 中文字幕不卡在线播放| 亚洲色图欧美偷拍| 亚洲国产人成综合网站| 日本系列欧美系列| 久久国产视频网| 国产毛片精品国产一区二区三区| 激情深爱一区二区| 99视频一区二区三区| 色婷婷激情综合| 精品美女在线播放| 国产精品乱码久久久久久| 国产女人aaa级久久久级| 国产精品国产自产拍高清av王其| 自拍偷拍亚洲综合| 香蕉加勒比综合久久| 捆绑变态av一区二区三区| 国产馆精品极品| 在线视频你懂得一区| 日韩精品中文字幕在线不卡尤物| 久久久久久一二三区| 亚洲精选在线视频| 国产一区在线观看视频| 91豆麻精品91久久久久久| 欧美大片在线观看一区| 亚洲综合无码一区二区| 丰满放荡岳乱妇91ww| 久久99最新地址| 亚洲精品写真福利| 国产精品一区二区三区网站| 色综合久久久久久久久久久| 精品国产第一区二区三区观看体验| 日韩精品在线网站| 久久9热精品视频| 欧美一级视频精品观看| 久久综合九色综合久久久精品综合| 国产精品免费看片| 粉嫩13p一区二区三区| 欧美成人精品高清在线播放| 日韩专区中文字幕一区二区| 一本色道a无线码一区v| 久久久久成人黄色影片| 成人小视频在线观看| 国产校园另类小说区| 国产精品一线二线三线精华| 26uuuu精品一区二区| kk眼镜猥琐国模调教系列一区二区| 欧美激情在线一区二区| 91在线无精精品入口| 亚洲精品国产a| 日韩精品专区在线影院观看| 成人免费观看av| 亚洲gay无套男同| 欧美国产成人在线| 欧美日韩在线精品一区二区三区激情| 婷婷丁香激情综合| 日本一区二区综合亚洲| 欧美中文字幕久久| 九九**精品视频免费播放| 亚洲免费资源在线播放| 欧美一区二区精美| 色国产综合视频| 国产乱人伦偷精品视频不卡| 亚洲一区二区三区精品在线| 久久一区二区三区国产精品| 91丨porny丨蝌蚪视频| 国产一区二区三区香蕉| 午夜精品视频一区| 一区二区三区欧美| **欧美大码日韩| 中文字幕免费在线观看视频一区| 欧美伦理电影网| 美女免费视频一区| 国产精品久久久久婷婷二区次| 成人一区二区视频| 国产精品一区在线观看乱码| 亚洲精品中文在线影院| 国产精品传媒在线| 中文字幕不卡的av| 国产精品久久久久久亚洲毛片| 久久综合久久综合亚洲| 久久先锋影音av鲁色资源| 日韩免费视频一区二区| 欧美一区二区三区色| 日韩欧美不卡在线观看视频| 精品久久久久一区| 国产日韩v精品一区二区| 欧美国产禁国产网站cc| 中文字幕在线观看不卡| 亚洲电影你懂得| 久久精品国产色蜜蜜麻豆| 国产乱码精品一区二区三区五月婷| 激情成人午夜视频| 成人免费av网站| 91久久一区二区| 精品国产一区二区精华| 国产日韩欧美制服另类| 亚洲精品国产第一综合99久久| 偷窥国产亚洲免费视频| 国内外成人在线| 欧美亚洲国产一区在线观看网站| 在线播放中文一区| 亚洲精品视频免费看| 蜜臀av性久久久久蜜臀aⅴ四虎 | 亚洲精品乱码久久久久久久久| 亚洲黄色免费网站| 成人在线综合网| 欧美网站一区二区| 国产精品久久久久一区二区三区共| 亚洲午夜视频在线观看| 国产精品综合二区| 日韩一区二区精品| 亚洲午夜国产一区99re久久| 不卡电影免费在线播放一区| 欧美一区二区三区四区五区| 亚洲人成精品久久久久| 国产精品99久久久久久有的能看 | 国产91丝袜在线播放九色| 日韩女优制服丝袜电影| 亚洲va韩国va欧美va精品 | 国产盗摄一区二区| 精品成人免费观看| 久久精品免费观看| 久久日韩精品一区二区五区| 石原莉奈在线亚洲二区| 5566中文字幕一区二区电影| 亚洲精品乱码久久久久久日本蜜臀| 99精品视频在线播放观看| 亚洲美女电影在线| 欧美精品v国产精品v日韩精品| 亚洲图片自拍偷拍| 26uuu欧美| 99久久精品免费| 亚洲午夜久久久久久久久电影院| 一本一本大道香蕉久在线精品| 亚洲乱码精品一二三四区日韩在线| 99精品偷自拍| 六月婷婷色综合| ...中文天堂在线一区| 日韩欧美国产三级| 色哟哟精品一区| 青青草一区二区三区| 中文字幕一区二区三区乱码在线| 欧美三区在线视频| 舔着乳尖日韩一区| 日韩毛片在线免费观看| 日韩一级欧美一级| 欧美网站一区二区| 91麻豆精品在线观看| 国产一区二区成人久久免费影院 | 7777精品伊人久久久大香线蕉的| 国产一区 二区| 久久精品免费看| 男男视频亚洲欧美| 亚洲h动漫在线| 性感美女极品91精品| 亚洲成人精品影院| 亚洲人精品午夜|