99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

CMSIS-DSP源碼審計(jì):工業(yè)級(jí)信號(hào)處理在Cortex-M上的落地實(shí)踐

CMSIS-DSP源碼審計(jì):工業(yè)級(jí)信號(hào)處理在Cortex-M上的落地實(shí)踐 前陣子做一塊基于 Cortex-M7 的工業(yè)控制板要把加速度計(jì)、電流采樣和溫補(bǔ)數(shù)據(jù)全部在 MCU 里完成濾波、FFT 特征提取順便跑一點(diǎn)簡單的統(tǒng)計(jì)告警判斷。翻完一遍 Arm CMSIS-DSP 源碼之后我得說這套庫的工程價(jià)值被很多團(tuán)隊(duì)嚴(yán)重低估了。用好了整車控制器級(jí)別的算法都能塞進(jìn)單顆芯片用糙了一個(gè) FIR 濾波就能把實(shí)時(shí)控制環(huán)拖垮。這篇文章算是我對(duì) CMSIS-DSP 的源碼審計(jì)記錄也是把它按工業(yè)固件標(biāo)準(zhǔn)落進(jìn)量產(chǎn)項(xiàng)目的實(shí)操筆記。適合正在 Cortex-M 上跟信號(hào)處理較勁的工程師、準(zhǔn)備做高性能邊緣計(jì)算的團(tuán)隊(duì)以及想搞明白底層實(shí)現(xiàn)而不是只會(huì)調(diào) API 的同學(xué)。1. 全景先搞懂這套庫的組成再談優(yōu)化1.1 CMSIS-DSP 在工程里扮演什么角色CMSIS-DSP 是 Arm 官方維護(hù)的算法庫掛在 CMSIS 框架下和 CMSIS-CORE、CMSIS-RTOS 這些組件共同構(gòu)成 Cortex 平臺(tái)的軟件基礎(chǔ)層。它的定位非常清晰不碰外設(shè)寄存器不碰驅(qū)動(dòng)只做一件事——把常見信號(hào)處理算法封裝成統(tǒng)一 API讓你在 Cortex-M0 到 Cortex-M7、再到 Cortex-A 都能復(fù)用同一份數(shù)學(xué)代碼。我在實(shí)際項(xiàng)目里主要用它解決三類問題。第一是傳感器數(shù)據(jù)預(yù)處理比如振動(dòng)信號(hào)先過帶通濾波再送 FFT第二是控制環(huán)里的坐標(biāo)變換和濾波比如永磁同步電機(jī) FOC 控制中的 Clarke/Park 變換第三是統(tǒng)計(jì)特征提取比如計(jì)算一段窗口內(nèi)的均值、RMS、方差給告警算法提供輸入。這三塊加起來基本覆蓋了工業(yè)固件里八成以上的實(shí)時(shí)信號(hào)處理需求。有個(gè)容易忽略的關(guān)鍵點(diǎn)CMSIS-DSP 不是芯片廠商 SDK 那種層級(jí)。它基于架構(gòu)層抽象理論上能跑在任何實(shí)現(xiàn)了 CMSIS 接口的 Cortex 芯片上。這意味著換芯片型號(hào)甚至換廠商只要核心不變算法代碼幾乎不用改。這個(gè)特性在供應(yīng)鏈緊張的時(shí)期格外值錢也是我不厭其煩把項(xiàng)目代碼往 CMSIS 標(biāo)準(zhǔn)上靠的原因。1.2 源碼目錄和模塊清單我審計(jì)的版本是 CMSIS-DSP 1.10 左右源碼在 CMSIS_5 倉庫的 CMSIS/DSP 目錄下。整個(gè)庫按功能拆成了多個(gè)子目錄核心模塊包括BasicMathFunctions向量加減乘除、點(diǎn)積、絕對(duì)值等基礎(chǔ)運(yùn)算。FastMathFunctionssin/cos、sqrt、atan2 等快速逼近函數(shù)。ComplexMathFunctions復(fù)數(shù)運(yùn)算配合 FFT 做頻譜分析時(shí)常用。FilteringFunctionsFIR、IIR/Biquad、卷積、相關(guān)等濾波核心。MatrixFunctions矩陣加減乘、轉(zhuǎn)置、求逆等。TransformFunctionsFFT、DCT 等變換。StatisticsFunctionsmean、RMS、variance、max/min 統(tǒng)計(jì)函數(shù)。MotorControlFunctionsClarke/Park 變換直接服務(wù)電機(jī) FOC。SupportFunctionscopy、fill、數(shù)據(jù)類型轉(zhuǎn)換等輔助函數(shù)。InterpolationFunctions線性、雙線性插值等。新版本還加入了 SVM、Bayes、Distance 模塊相當(dāng)于把簡單的機(jī)器學(xué)習(xí)推理也收進(jìn)來了。這個(gè)列表值得認(rèn)真看一遍因?yàn)楹芏喙こ處煂?duì) CMSIS-DSP 的印象還停留在“FFT FIR”階段實(shí)際上它已經(jīng)擴(kuò)張成包含基礎(chǔ)數(shù)學(xué)、濾波、變換和輕量 ML 的算法全家桶。工程上最常用的還是前幾個(gè)模塊但知道后面有現(xiàn)成的 SVM 和距離函數(shù)在做工業(yè)異常檢測的時(shí)候能省不少底層工作。1.3 固定點(diǎn)還是浮點(diǎn)數(shù)據(jù)類型的工程約束CMSIS-DSP 的函數(shù)后綴非常規(guī)律q7、q15、q31 是定點(diǎn)f32、f64 是浮點(diǎn)。命名會(huì)帶上運(yùn)算類型和實(shí)例說明比如 arm_mat_mult_f32 是 32 位浮點(diǎn)矩陣乘arm_biquad_cascade_df1_f32 是浮點(diǎn) Biquad 濾波器。為什么保留一整套定點(diǎn)實(shí)現(xiàn)因?yàn)楣I(yè)場景里還有大量 MCU 沒有 FPU。Cortex-M0/M0、M3 這一代核沒有浮點(diǎn)單元也不支持 DSP 擴(kuò)展指令硬跑 float 只能靠編譯器軟浮點(diǎn)模擬性能差距可能在一個(gè)數(shù)量級(jí)以上。而 q15/q31 定點(diǎn)格式只需要整數(shù)乘法器配合飽和指令一個(gè)周期就能完成乘累加非常適合老一代 MCU。定點(diǎn)的代價(jià)是必須手動(dòng)管數(shù)值縮放。q15 表示 -1.0 到 0.9999 的小數(shù)兩個(gè) q15 相乘結(jié)果可能超出 q15 表示范圍所以內(nèi)部累加器通常是 32 位的最后還要移位加飽和。這個(gè)過程理解不到位濾波輸出飄掉或者削頂排查起來比浮點(diǎn)麻煩得多。我的項(xiàng)目原則很直接芯片性能真正瓶頸時(shí)才轉(zhuǎn)定點(diǎn)其他情況優(yōu)先浮點(diǎn)開發(fā)效率和容錯(cuò)性都高不少。1.4 幾個(gè)關(guān)鍵的編譯期宏決定了性能走向讀源碼時(shí)會(huì)發(fā)現(xiàn) arm_math.h 里有一堆編譯期宏它們是決定庫走向哪條代碼路徑的總開關(guān)。我最常打交道的幾個(gè)宏作用使用場景ARM_MATH_DSP啟用 Cortex-M4/M7 的 DSP 擴(kuò)展指令優(yōu)化帶 DSP 指令的 M4/M7/M33 必須定義ARM_MATH_LOOPUNROLL循環(huán)展開優(yōu)化性能優(yōu)先、flash 空間充裕時(shí)ARM_MATH_MVEI啟用 MVE/Helium 向量指令Cortex-M55/M85 等新款核ARM_MATH_NEON啟用 NEON 優(yōu)化Cortex-A 系列ARM_MATH_CM7舊版本里的 M7 專用路徑老項(xiàng)目從 ARM Compiler 5 遷移時(shí)常見注意新版 CMSIS-DSP 對(duì)部分宏做了自動(dòng)檢測和重命名但如果你用的是老版本或者直接拷貝源碼而不是通過 CMSIS-Pack 引入這些宏很可能沒人幫你定義。最常見的編譯坑是函數(shù)實(shí)現(xiàn)退回通用 C 代碼性能差一截你還找不到原因。我的習(xí)慣是把核心硬件宏寫進(jìn)編譯器的預(yù)處理定義里而不是藏在某個(gè)頭文件里這樣換工程、換構(gòu)建系統(tǒng)都不會(huì)丟。2. 源碼審計(jì)從 API 到指令級(jí)的實(shí)現(xiàn)拆解2.1 FFT 函數(shù)一個(gè) init 函數(shù)背后做了什么FFT 是我第一個(gè)打開源碼細(xì)讀的部分。CMSIS-DSP 老版本里FFT 靠靜態(tài) twiddle 因子表工作典型調(diào)用是 arm_cfft_radix4_init_f32 加 arm_cfft_radix4_f32。新版本改成了實(shí)例化接口用時(shí)像這樣arm_cfft_instance_f32 S; arm_cfft_init_f32(S, 1024); arm_cfft_f32(S, buf, 0, 0); arm_cmplx_mag_f32(buf, mag, 1024);這套新接口最大的變化是把 twiddle 因子和 bit-reversal 表裝進(jìn)了實(shí)例結(jié)構(gòu)體init 階段一次性計(jì)算好而不是在只讀區(qū)鋪一堆大表。好處是省 flash壞處是每次初始化有額外耗時(shí)而且實(shí)例結(jié)構(gòu)體必須存活到整個(gè)計(jì)算過程結(jié)束不能被局部變量隨手覆蓋。老版靜態(tài)表方案在選擇小點(diǎn)數(shù)時(shí)仍有存在價(jià)值新庫采用按需預(yù)計(jì)算的方式避免每個(gè)實(shí)例重復(fù)運(yùn)算同一份 twiddle。實(shí)現(xiàn)層面FFT 根據(jù)點(diǎn)數(shù)選擇 radix-4、radix-2 混合基算法代碼里有大量循環(huán)展開和針對(duì) Cortex-M4/M7 的指令級(jí)優(yōu)化。使用時(shí)的數(shù)據(jù)陷阱是輸入輸出共用同一個(gè)數(shù)組時(shí)務(wù)必保證數(shù)組對(duì)齊做逆變換前確認(rèn) bit-reverse 配置和縮放因子約定。CMSIS-DSP 正變換通常不做統(tǒng)一縮放逆變換在某些定點(diǎn)變體里自帶 1/N 縮放忽略這點(diǎn)很容易得到整體偏大的結(jié)果。2.2 濾波器家族Biquad 的狀態(tài)管理和數(shù)值陷阱濾波部分我審計(jì)的重點(diǎn)是 Biquad 狀態(tài)結(jié)構(gòu)體。以最常用的 arm_biquad_cascade_df1_f32 為例使用前要先初始化arm_biquad_cascade_df1_instance_f32 bq; arm_biquad_cascade_df1_init_f32(bq, numStages, coeffs, state); arm_biquad_cascade_df1_f32(bq, in, out, blockSize);coeffs 是長度為 5 * numStages 的數(shù)組每級(jí)按 [b0, b1, b2, a1, a2] 的次序排列。state 數(shù)組長度是 4 * numStages保存前一次計(jì)算的部分和。關(guān)鍵點(diǎn)來了state 由調(diào)用者管理并且要在兩次調(diào)用之間保持不變。有些人把 state 定義在局部棧上函數(shù)一返回整個(gè)濾波狀態(tài)就全丟了輸出自然不對(duì)。數(shù)值上DF1 結(jié)構(gòu)對(duì)浮點(diǎn)系數(shù)動(dòng)態(tài)范圍比較友好但級(jí)聯(lián)級(jí)數(shù)多了以后中間變量可能出現(xiàn)噪聲累積或短時(shí)飽和。在振動(dòng)監(jiān)測類項(xiàng)目里我通常限制最多 4~6 級(jí) Biquad并在濾波器設(shè)計(jì)階段做歸一化處理再檢查每個(gè)中間節(jié)點(diǎn)的幅值。固定點(diǎn)版本還得多做一步系數(shù)縮放把 b 系數(shù)的增益預(yù)移到 a 系數(shù)里。這部分源碼注釋有涉及但文檔沒細(xì)講屬于踩過坑才能理解的細(xì)節(jié)。2.3 矩陣、統(tǒng)計(jì)與電機(jī)控制函數(shù)矩陣函數(shù)在工業(yè)里更多用在狀態(tài)估計(jì)、標(biāo)定和傳感器融合。arm_mat_mult_f32 的實(shí)現(xiàn)是典型的三層循環(huán)但針對(duì) 3x3 這樣的小型矩陣通用實(shí)現(xiàn)性能并不出彩因?yàn)樗仨毤骖櫢鞣N行列組合。我在實(shí)際項(xiàng)目里如果矩陣維度固定且很小反而會(huì)手動(dòng)展開循環(huán)用 CMSIS-DSP 的版本做交叉驗(yàn)證。統(tǒng)計(jì)函數(shù)則非常省心arm_rms_f32、arm_mean_f32、arm_var_f32 一行調(diào)用就能拿到結(jié)果源碼里還考慮了累加精度不像手寫那樣容易溢出。電機(jī)控制模塊是容易被忽略的寶藏。arm_clarke_f32、arm_park_f32 和對(duì)應(yīng)的逆變換把三相靜止坐標(biāo)系到兩相旋轉(zhuǎn)坐標(biāo)系的公式直接封裝好了。FOC 控制環(huán)里如果自己寫這些變換代碼量不大但很容易在象限處理和角度歸一化上出錯(cuò)。CMSIS-DSP 版本對(duì)輸入角度范圍有明確約定同時(shí)提供了官方實(shí)現(xiàn)的參照能有效減少隱性問題。這組代碼很少讀一遍源碼就能完整吃透。2.4 編譯器差異AC5、AC6、GCC、IAR 的兼容處理源碼審計(jì)里繞不開的現(xiàn)實(shí)問題是編譯器兼容。arm_math.h 內(nèi)部按編譯器宏分支處理比如#if defined(__ARMCC_VERSION) (__ARMCC_VERSION 6010050) /* armclang / AC6 */ #elif defined(__ICCARM__) /* IAR */ #elif defined(__GNUC__) /* GCC */ #endif看懂這套分支后很多編譯報(bào)錯(cuò)就很好解釋了。AC6 編譯老工程時(shí)經(jīng)常遇到 __ASM 宏或者attribute寫法不兼容GCC 環(huán)境下部分內(nèi)建函數(shù)和匯編內(nèi)聯(lián)寫法和 AC5 不同。特別現(xiàn)實(shí)的背景是到今天仍有很多工廠維護(hù)的老產(chǎn)品在用 ARM Compiler 5.06 這種 AC5 編譯器——網(wǎng)上搜索“ARM Compiler 5.06u7 下載”的需求量一直沒斷說明存量代碼短期遷不完。但 Arm 早已停止 AC5 更新新版 CMSIS-DSP 也不再專門針對(duì) AC5 優(yōu)化。我的建議是新項(xiàng)目一律 AC6 或 GCC老項(xiàng)目實(shí)在要留 AC5就把 CMSIS-DSP 鎖在驗(yàn)證過的版本上不要隨手升級(jí)。跨編譯器還有個(gè)大坑部分函數(shù)為了實(shí)現(xiàn)性能會(huì)走 intrinsics 或匯編文件而這些只在特定編譯條件下啟用。同一個(gè)函數(shù)在 AC6 下可能展開成 SMLAD 這類 DSP 指令在 GCC 下可能走純 C 循環(huán)。所以評(píng)估性能絕不能照搬別人的測試數(shù)據(jù)必須用自己的量產(chǎn)工具鏈在同一顆芯片上重測。這個(gè)教訓(xùn)我在后面會(huì)專門展開。3. 工業(yè)固件落地把庫從 demo 搬進(jìn)產(chǎn)品3.1 集成方式怎么選CMSIS-DSP 的集成方式主要有三種。第一是用 IDE 的包管理器比如 Keil RTE、STM32CubeMX 軟件包好處是版本統(tǒng)一、更新方便壞處是不好精細(xì)控制編譯選項(xiàng)。第二是從 CMSIS_5 倉庫直接拉源碼按自己的構(gòu)建系統(tǒng)只挑選需要的 Source 子目錄。我日常更傾向這種方式因?yàn)楫a(chǎn)品固件通常已經(jīng)被 CMake 或腳本接管把 DSP 源碼當(dāng)作普通源碼目錄塞進(jìn)去行為最可控。第三是先編成靜態(tài)庫 .a適合模塊化隔離但要處理不同優(yōu)化選項(xiàng)下的鏈接兼容。工業(yè)產(chǎn)品里我強(qiáng)烈建議在構(gòu)建腳本里鎖定 CMSIS-DSP 版本不要追最新分支。算法庫這類底層組件行為一致性遠(yuǎn)比新功能重要。我有次從 1.8 升到新版FFT 輸出有細(xì)微差異導(dǎo)致產(chǎn)線整套自檢方案都要重新校準(zhǔn)。從那次以后我的規(guī)矩就是底層算法庫版本不輕易動(dòng)升級(jí)必須走完整回歸測試。3.2 緩存、對(duì)齊和 DMAM7 上最容易翻車的地方到了帶緩存、帶 TCM 的 Cortex-M7CMSIS-DSP 不會(huì)幫你處理緩存一致性問題但對(duì)內(nèi)存對(duì)齊的要求更嚴(yán)格。很多優(yōu)化函數(shù)要求 4 字節(jié)甚至 8 字節(jié)對(duì)齊MVE 版本還要求 32 字節(jié)對(duì)齊。如果 DMA 直接往一個(gè)堆上分配、只按 2 字節(jié)對(duì)齊的 buffer 里填 ADC 數(shù)據(jù)再拿這個(gè) buffer 做 FFT輕則性能暴跌重則直接 HardFault。正確做法是給熱點(diǎn) buffer 單獨(dú)定義對(duì)齊段ALIGN_32BYTES static float32_t adc_buf[4096];在有緩存的 M7/M33 上還要處理 DMA 和 CPU 之間的緩存同步。常見套路是DMA 寫完數(shù)據(jù)后調(diào)用 SCB_InvalidateDCache_by_Addr讓 CPU 讀取時(shí)從內(nèi)存取最新內(nèi)容算法算完要交給 DMA 外設(shè)搬運(yùn)前先調(diào)用 SCB_CleanDCache_by_Addr 把緩存刷出去。這一步不做你可能會(huì)拿到“看著像舊數(shù)據(jù)”的結(jié)果這類 bug 極其隱蔽。如果芯片有 TCM建議把狀態(tài)數(shù)組和小尺寸熱 buffer 放進(jìn)緊耦合內(nèi)存大塊采樣緩存放普通 RAM。排布策略要結(jié)合芯片內(nèi)存映射表來定不是簡單“全塞 TCM”就最優(yōu)。3.3 實(shí)時(shí)任務(wù)里的確定性設(shè)計(jì)CMSIS-DSP 函數(shù)整體是確定性的同樣輸入、同樣硬件和編譯選項(xiàng)執(zhí)行時(shí)間基本穩(wěn)定也沒有 malloc/free 這類隱式動(dòng)態(tài)分配。真正破壞確定性的是任務(wù)調(diào)度和中斷。工業(yè)控制場景我習(xí)慣把 CMSIS-DSP 調(diào)用放進(jìn)最高優(yōu)先級(jí)的中斷上下文比如定時(shí)器采樣中斷中完成整個(gè) block 處理或者放進(jìn)固定周期任務(wù)由 RTOS 保證調(diào)度窗口同時(shí)做好中斷優(yōu)先級(jí)隔離。需要注意庫函數(shù)執(zhí)行期間不會(huì)關(guān)中斷。如果你在一個(gè)任務(wù)里處理 4096 點(diǎn) FFT中途進(jìn)來更高優(yōu)先級(jí)中斷執(zhí)行時(shí)間就被拉長了。對(duì)強(qiáng)實(shí)時(shí)控制環(huán)來說這不可接受。我的做法是控制環(huán)里的濾波采用小 block size比如一次 8/16 個(gè)點(diǎn)把臨界執(zhí)行時(shí)間壓到微秒級(jí)大塊 FFT 放到后臺(tái)診斷任務(wù)里異步處理。block size 沒有標(biāo)準(zhǔn)答案。block 越大函數(shù)調(diào)用開銷占比越低越利于優(yōu)化block 越小延遲越低實(shí)時(shí)性越好??刂骗h(huán)的典型值是 1~16音頻或振動(dòng)監(jiān)測常用 64~512批量離線分析可用 1024~4096。具體值結(jié)合采樣率、CPU 頻率和實(shí)時(shí)預(yù)算一起測。3.4 驗(yàn)證和回歸給算法庫上“安全繩”把算法庫編進(jìn)固件前強(qiáng)烈建議寫一個(gè)自測函數(shù)用已知向量驗(yàn)證核心運(yùn)算。不需要太復(fù)雜生成一段正弦波做 FFT檢查主峰落在對(duì)應(yīng)頻率的 bin用浮點(diǎn)和 q31 版本各算一遍比較誤差喂一個(gè)沖激響應(yīng)檢查 Biquad 輸出和參考系數(shù)是否一致。這類自測放在啟動(dòng)階段或產(chǎn)線自檢階段能擋住絕大部分低級(jí)錯(cuò)誤。我在產(chǎn)線固件里一般會(huì)加一個(gè)“DSP 自檢套件”輸入和期望輸出放在常量表啟動(dòng)時(shí)依次跑 FFT、FIR、Biquad、矩陣乘和期望值比對(duì)不通過就上報(bào)異常。這個(gè)動(dòng)作成本很低但能避免“換了顆芯片、某指令集不支持、算法被編譯器優(yōu)化壞”等玄學(xué)問題。如果要做功能安全相關(guān)評(píng)審建議把 CMSIS-DSP 版本、編譯選項(xiàng)、運(yùn)行時(shí)鐘、自檢結(jié)果都寫進(jìn)固件版本清單。審核員最常問的三連是“算法庫是官方版本嗎性能數(shù)據(jù)哪來的有沒有自檢”提前準(zhǔn)備好整個(gè)過程會(huì)順暢得多。3.5 安全標(biāo)準(zhǔn)與代碼走查CMSIS-DSP 本身不是安全認(rèn)證組件但可以作為產(chǎn)品代碼的一部分參與整體論證。關(guān)鍵是明確邊界庫只處理內(nèi)存數(shù)據(jù)不直接操作外設(shè)因此風(fēng)險(xiǎn)面集中在數(shù)值范圍、數(shù)組越界和資源占用。走查代碼時(shí)我重點(diǎn)檢查輸入指針是否可能為空、傳入的 block size 是否超出緩沖區(qū)邊界、固定點(diǎn)函數(shù)中間變量是否飽和。MISRA-C 合規(guī)同樣常被問起。Arm 在文檔里聲稱 CMSIS-DSP 遵循一定規(guī)范但實(shí)際集成后靜態(tài)檢查工具仍會(huì)報(bào)出指針和位操作相關(guān)的告警。我的做法是不糾結(jié)“洗白”所有告警而是分類處理違反強(qiáng)規(guī)則的修正弱規(guī)則的記錄評(píng)審性能關(guān)鍵代碼加注釋說明為什么保留當(dāng)前寫法。最后給審核員的是一份清晰的偏差報(bào)告而不是一個(gè)誰都改不動(dòng)的“完美”代碼樹。4. 常見問題與排障實(shí)錄4.1 編譯鏈接階段的坑我在不同編譯器下踩得最多的編譯問題無非幾類宏沒定義、頭文件找不到、源碼沒包含、符號(hào)重名。整理成一張速查表現(xiàn)象原因處理鏈接報(bào) undefined reference to arm_cfft_f32漏掉 TransformFunctions 源碼或庫文件檢查工程是否加入全部需要的 Source 目錄編譯卡在找不到 arm_math.hCMSIS 頭文件路徑?jīng)]配好加入 Include 目錄和 CMSIS-CORE 頭文件路徑函數(shù)行為異常但沒報(bào)錯(cuò)ARM_MATH_DSP 等宏未定義走了通用 C 路徑在編譯器預(yù)定義里顯式加宏AC5 編譯舊代碼報(bào) intrinsics 錯(cuò)誤AC5 與新版 CMSIS 不兼容鎖定舊版本庫或遷移到 AC6特別提醒用 MDK 手工整理工程結(jié)構(gòu)時(shí)很容易忘記加入 CommonTables 這個(gè) Source 子目錄。FFT 的 twiddle 因子、濾波器系數(shù)表都在這里。少一個(gè)文件鏈接仍然能成功運(yùn)行時(shí)卻可能數(shù)據(jù)亂跳、硬錯(cuò)誤頻發(fā)。4.2 運(yùn)行期 HardFault 與數(shù)據(jù)錯(cuò)亂HardFault 主要來自三個(gè)方向未對(duì)齊訪問、空指針、數(shù)組越界。CMSIS-DSP 對(duì)指針起始地址很敏感float32 數(shù)組至少 4 字節(jié)對(duì)齊MVE 優(yōu)化版本要求更高。排查時(shí)可以在 HardFault_Handler 里抓 PC 寄存器反匯編看是哪條指令觸發(fā)。如果是多字節(jié) LDR/STR八成是對(duì)齊問題。另一個(gè)高發(fā)場景是 DMA 和 CPU 同時(shí)訪問同一塊緩沖區(qū)緩存同步?jīng)]做對(duì)。我遇到過 FFT 結(jié)果前一半正確、后一半全是臟數(shù)據(jù)的詭異問題最后定位是 DMA 搬運(yùn)沒完成CPU 就開讀了。解決辦法是在 DMA 完成中斷里做 invalidate再啟動(dòng)算法任務(wù)而不是靠延時(shí)硬等。4.3 性能不達(dá)標(biāo)怎么定位性能問題先分清楚是“庫沒走對(duì)優(yōu)化路徑”還是“芯片算力不夠”。前者好辦查宏定義和編譯器優(yōu)化等級(jí)后者就要考慮降采樣、換算法FFT 換 Goertzel、IIR 換 FIR或者重新評(píng)估定點(diǎn)方案。我一般用 DWT 的 CYCCNT 寄存器測執(zhí)行周期把目標(biāo)函數(shù)包一下DWT-CYCCNT 0; arm_cfft_f32(S, buf, 0, 0); cycles DWT-CYCCNT;重點(diǎn)是要用量產(chǎn)配置來測。之前有同事拿 Debug 配置測性能-O0 的結(jié)果慘不忍睹切到 Release 就快了好幾倍。這種數(shù)據(jù)寫進(jìn)評(píng)審材料會(huì)嚴(yán)重誤導(dǎo)決策。正確的做法是分別測 -O0、-O2、-O3 和循環(huán)展開宏的組合記錄在案再按實(shí)時(shí)預(yù)算選擇編譯策略。4.4 固定點(diǎn)溢出的排查思路q15/q31 溢出不會(huì)直接報(bào)錯(cuò)而是飽和到最大或最小值輸出波形會(huì)出現(xiàn)類似“削頂”的平臺(tái)。如果你在頻譜里看到異常高次諧波很可能時(shí)域信號(hào)已經(jīng)飽和了。排查思路是逐級(jí)檢查中間節(jié)點(diǎn)幅值。拿 Biquad 來說先給一個(gè)歸一化正弦波看第一級(jí)輸出最大絕對(duì)值是否接近 1.0接近就說明該級(jí)增益過高需要調(diào)整級(jí)聯(lián)順序或系數(shù)縮放。更好的是用 q31 做高精度版本與浮點(diǎn)參考對(duì)比確認(rèn)誤差來源。固定點(diǎn)庫不是不能用但整體增益預(yù)算必須在設(shè)計(jì)輸入階段就想清楚靠后期調(diào)試很難補(bǔ)回來。4.5 一些成型項(xiàng)目里的實(shí)際參數(shù)參考給個(gè)真實(shí)參考但不代表所有項(xiàng)目都要這么配。我最近做的振動(dòng)監(jiān)測固件Cortex-M7 480MHz采樣率 25.6kHz每幀采集 2048 點(diǎn)先過 4 級(jí) Biquad 帶通再做 2048 點(diǎn) FFT最后統(tǒng)計(jì) RMS 和峰值。整幀處理放后臺(tái)任務(wù)耗時(shí)在個(gè)位數(shù)毫秒量級(jí)完全滿足 5Hz 左右的診斷幀率。控制環(huán)部分FOC 電流環(huán)跑 16kHz每個(gè)中斷只做 Clarke/Park 變換和 PI 調(diào)節(jié)濾波函數(shù)按 8 個(gè)樣本一個(gè) block 處理單次耗時(shí)幾十微秒以內(nèi)一直很穩(wěn)。這些數(shù)字說明一個(gè)道理CMSIS-DSP 用得好不好不在于背了多少 API而在于把算法、數(shù)據(jù)流、調(diào)度、內(nèi)存、編譯優(yōu)化當(dāng)成一個(gè)系統(tǒng)來設(shè)計(jì)。庫只是這套系統(tǒng)里最可靠、最不會(huì)掉鏈子的一環(huán)。我個(gè)人體會(huì)最深的一點(diǎn)是如果你正在糾結(jié)“要不要為了幾個(gè)函數(shù)去啃一遍 CMSIS-DSP 源碼”我的答案是值得。這個(gè)庫的源碼風(fēng)格干凈、注釋清晰把 FFT 和濾波器兩部分讀完你對(duì) ARM 指令集、定點(diǎn)運(yùn)算、內(nèi)存布局的理解都會(huì)上一個(gè)大臺(tái)階。后續(xù)如果要做更重的機(jī)器學(xué)習(xí)推理還能直接接上 CMSIS-NN整條算法鏈的復(fù)用價(jià)值會(huì)更大。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
啪啪激情网站| 九九热99热| 婷婷五月丁香六月天亚洲综合| 六月婷婷中文字幕| 色五XX| 玖玖热99| 日本三级第一页| 玖玖五月丁香| 99亚洲日韩| 男人天堂99| www.婷婷五月天| 91热er| 99久久高清视频| 亚洲午夜视频| 色色亚洲视频| 日日夜夜天天爽| av婷婷丁香| 丁香五月日韩| 天天日天天草| 婷婷五月天狠狠| 亚洲思思热久| 超级碰碰91| 北条麻妃九九九国产精品视频| 色五月婷婷五月丁香五月激情五月视频| 国产裸舞表演WWWW| 欧美天天爽| 婷婷丁香五月天大香蕉| 黄色片avv| 五月丁香亚洲综合| AV在线资源| 热的无码综合视频| 久久精品永久免费| 26UUU精品一区二区Com| 天天干天天 亚洲| 黄色片精品| 搡BBBB搡BBB搡五十| 亚洲五月天综合| 91人人爽狠狠狠| 婷婷碰碰| 亚洲九九99精品视频在线播放| 亚洲激情.com| 这里精品| 男同91| 夜夜 操无码| 激情五月天伊人影院| 五月色丁香综合| 色私五月婷婷| 色综合久| 色欲人妻综合aaaaaaaa网| 激情婷婷九月| 91碰视频| 久草久青福利| 五月婷AV| 亚洲激情久久| 日韩人妻无码专区| 久久久久婷婷| 日韩在线看AV| 五月婷婷色| 97婷婷狠狠| 欧美在线视频免费播放| 99无码精品| 五月天婷婷视频| 日本操逼九九九九58日本操逼| 一起草av在线观看| 亚洲黄色影视| 99爱视频在线免费观看| 色色网五月激情| 色深爱五月| 国产裸舞表演WWWW| 97九色视频| 99久久成人| 亚洲思思热久| 人人舔天天| 五月天小说激情| 色五月激情问网站| 色色色色色色色色网站| 五月丁香五月天现场视频| 丁香久色| 久久婷婷五月综合一| 天堂在线观看视频| 五月婷婷|欧美| 粉嫩av蜜桃av蜜臀av| 激情婷婷丁香五月天| 99色综合网| 天天操天天日天天爱| 婷婷放心五日爱| yw.av| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 色欲香综合网| 五月丁香婷婷免费视频| 91九色精品熟女内射| 97香蕉碰碰人妻国产欧美| 色99视频| 成人电影一区| 日韩xx在线| 亚洲性爱电影| 久久99这里只有精品视频| 丁香五月六月激情| 亚洲九区| 大香蕉伊人爱在线| av在线色五月丁香婷区久| 99人人操人人摸| 天天激情| 99亚洲天堂| 婷婷色影音天| 国产XXXX搡XXXXX搡麻豆| 婷丁五月| 开心激情网五月| 99热老网站| 99爱爱| 雪千夏麻豆| 狠狠操狠狠插| 第四色大香蕉| 激情综合六月| 少妇性按摩无码中文A片| 丁香五月天大香蕉啪啪| 777久久久| 婷婷丁香97| 六月丁香射婷婷欧美色图片| 99在线69| 九九热10| 99在线免费视频| 影音先锋男人女人| 欧美va国产va| 这里有精品| 五月婷婷久久网| 激情综合色网| 91超级碰在线视频| 丁香五月婷婷五月| 丁香五月成人社区| 激情性爱五月天网页| 婷婷丁香六月天激情四射网| 婷婷五月天无码视频| 99色网站| 五月丁香激情啪啪网| 婷婷激情五月天激情在线| 五月综合无码| 丁香婷婷天堂| 色色亚卅| 亚洲99热| 国产精品成人av在线观看春天| 婷婷五月色情天| 丁香五月偷拍| 五月丁香婷色| 成人免费120分钟啪啪| 综合性爱网| 电影蜘蛛女| 欧美激情综合色综合啪啪五月| 久久久久久欧美精品se一二三四| AV在线免费观看不卡| 成人AV免费观看| 五月亭亭网成人在线视频| 国产99久久久国产精品免费看| 九九成年视频| 五月婷婷说| 操操综合网婷婷| 日日射天天射| 丁香五月婷婷激情蜜桃| 色五月婷婷很很操| 99热在线极品极品| 五月天最新网| 96精品久久久久久久久| 九九精品在线观看视频6| 超pen个人视频97| 欧美日韩成人| 国产XXXX搡XXXXX搡麻豆| 五月丁香六月婷婷综合在线| 五月丁香久久| 婷婷丁香五月天在线| 欧美性生交XXXXX无码小说| xxxx五月| 日本婷婷五月天| 婷婷五月播| 狠狠做婷婷| 久久玖玖综合| 人人干人人看| 99热碰碰热| 久久大香蕉同僚| 五月天色综合| 99re在线播放| WWW.婷婷| 激情影院内射| 久热精彩视频98| 激情深爱婷婷网| 狠狠综合| 色色亚洲视频| 天天操夜夜夜夜爽| 日本在线观看aaa 99| 尔尔AV一区| 夜夜爱伊人| 国产 码在线成人网站| 婷婷六月丁香激情| 亚洲岛国电影| 婷婷五月丁香啪啪| 色婷婷六月激情| 日韩ww| 九九在线这里只有精品视频| 久热九九| 一点色成人网| 另类国产综合| 色婷婷综合久久久久| 色欲丁香| 五月色丁香婷婷中文字幕| 五月天大香蕉av| 五月丁香六月综合激情无码软件亮点| 停停五月色宗合| 色五月大香蕉| 五月停停激情网| 好色婷婷| 国产一级黄色影片,| 噜噜色婷婷| 99在线观看精品| 国产毛片精品一区二区色欲黄A片| 91久久婷婷| 久久六月综合| 爱婷婷都市激情| 99综合熟女| 综合激情婷婷| 综合激情站| 综合激情伊人影视在线| 大香蕉久久青青| 日本色久| 俺也去在线视频| 久久综合五月天激情小说网站 | 中文婷婷狠狠| 99久热| 久久丁香网| 久久婷婷五月天激情| 色八月婷婷| 无码一区精品一区视频| 五月婷天天搞视频| 婷婷 激情 五月| www婷婷色| 激情综合无码| 五月婷婷六月丁香| 久久人妻视步| 天天夜天天色天天| 狠狠婷婷爱| 久99热在线观看| 亚洲情综合五月天| 激情综合一| 天天色天天日| 99色网站| 另类小说色婷婷| 狠狠狠人妻| 日日噜噜久久婷婷五月天| 国产毛片精品一区二区色欲黄A片| 五月欧美色色五月| 婷婷大美在线| 南京搡BBBB搡BBBB| 天天天天天操| 久久视频婷婷视频| 91在线日| 激情综合网五月婷婷| 久久久久久18| 丁香密臀AV激情网| 久久99精品久久久久子伦| 99热8| 在线成人视频免费| 99在线视频资源| 丁香五月天啪啪a日本| 午夜爱爱爱成人| 丁香五月精品视频| 五月丁香五月丁香| 天天爽日日搞| 亚洲蜜桃精久久久久久久久久久久| 婷婷色五月色妇| 另类色网| 亚洲婷婷激情888精品久| 亚洲综合网激情小说| 久热只有这里有精品| 久久激情四射| 色色综合激情| 午夜激情婷婷| 天天搞夜夜六| 婷婷涩五月天综合| 五月丁香六月婷婷啪啪| 亚洲AV中文在线| 91婷婷色| 人妻久久久久久| 91久热| 中字幕视频在线永久在线观看免费| 日本在线99| 五月天婷婷成人网| 99久久6| 丁香五月香蕉| 草了bav视频在线观看| 五月天婷久久| 国产精品国产| 成人操呦av| 这里只有精品99视频| 岛国av网| 五月激情综合网| 亚洲A色| 五月花在线观看视频| 欧美色性色好| 99热综合网| 激情亚洲婷婷| 天堂伊人干| av操B网站| 超碰伊人碰婷婷五月| 91色综合网| 97色色色色色色色| 日本AAAAAAAAAAAAAA片| 激情综合国产| 免费看欧美成人A片无码| 五月丁香黄色视频| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 丁香五月天社区婷婷| 激情骚五月| 久久9情免费| 超碰京东热av男人的天堂| 能看的AV| Av在线不卡一区| 中文色婷婷| 涩涩涩五月天| 99精品成人无码A片观看金桔| 91久久久久久久久久久| 大香焦A∨| 丁香五月婷婷av| 五月婷五月婷伊人伊人五月婷| 色五月综合在线| 婷婷激情鹿城五月天| 色。 日日日| 五月草视频| 久婷婷色| 99热99精品在线观看| 丁香五月六月综合激情| 激情综合色| 婷婷五月色综合| 亚洲中文乱字字幕线在永久| 精品久热| 午夜日韩久久久网站| 婷婷欧美偷拍综合| 丁香五月激情六月综合| 久热大香蕉| 天天色凹凸| 久久伊人婷| 婷婷色五月激情强奸四射| 午夜丁香六月婷| 在线观看欧美| 久久 中文 日本| 人人色AV| 青草青草视频2免费观看| 99热在线观看精品| 亚洲激情97五月天| 九九热青草| 九九無碼| 五月丁香香蕉| 亚洲成人综合在线| 五月婷婷啪啪啪| 亚洲av成人一区二区电影在线| 4399欧美另类视频| 狠狠草狠狠草| 一级韩国产精品毛| 九九精品网| 人妻体体内射精一区二区| 中文在线视频久9| 色必久悠悠影院| 伊人网碰碰| 五月婷婷免费视频| 激情五月婷婷综合网| 亚洲视频a| 99碰碰| 色婷婷激情四射视频| 丁香六月激情蜜桃| 久久久全国免费视频| www.av视频xx999.com| 日本美女上人| 99久热在线精品| 久久永久视频| 午夜色婷婷| 九色91视频| 99爽视频| 欧洲色色| 九9九9无码| 五月丁花六月丁香综合| 饮料下药迷倒漂亮女同事强干| 亚洲精级| 99精品综合视频| 久久艹网| 99久久久免费| 超碰成人在线观看| 五月天激情四射| 国产中文亚洲欧美日韩性交| 天堂成人A片永久免费网站| 国产精品五月丁香| 九色视频入口91| 午夜五月天| 99免费偷拍视频| 色私五月婷婷| 丁香五月狠狠在线观看| 伊人喵咪a V| 天天爽天天日人人爱| 丁香五月天婷婷中文字幕| 五月天婷婷丁香花| 五月天播播| 久久久精品99亚洲综合| 91久女| 亚洲 六月 综合| 伊人玖玖综合| 免费无码毛片一区二区A片| 丁香五月天激情小说| 欧美日韩日韩成人| 天天肏夜夜肏| 开心婷婷五月| 亚洲色欲欧美一区二区三区| 亚洲av网站| 玖玖伦理电影| 日本欧美啪啪| 狠狠狠狠狠狠| 五月丁香六月激情欧美综合| 五月天婷婷色色| 日韩AV免费电影在线播放| 亚洲激情视频网| 99热在线观看| 午夜丁香六月婷| 五月婷狠狠| 麻豆五月丁香婷婷| 亚洲成人av在线观看 | 超碰大香蕉网| www.久久99| 丁香五月激情欧欧美| 狠狠噪| 五月婷婷色综图片| 天天插天天| 4438激情网| 无码AV免费精品一区二区三区| 五月丁香视频在线观看| 大香蕉五月| www.婷婷| 丁香婷婷深情五月亚洲| 日本va欧美va欧美精品88| 五月丁香色情| 日韩无码人妻一区二区| 天天草女人| 91一起操| 91婷婷色 | 99操免费视频| 色婷婷深爱五月| 色婷婷久久综| 第五婷婷伊人丁香| 97婷婷五月丁香| 91久久99久久91熟女精品| 狠狠干,狠狠操| 五月丁香六月婷婷综合网| 日韩人妻无码专区| 欧美六月| av久热| 婷婷综合色网| 91porn一起草| www.97碰碰com| 婷婷亚洲综合| 日本天天操| 色天堂在线| 久久久久丁香婷婷五月天| 97婷婷丁香五月天激情图片| 激情综合4月| 超碰av在线| 色五月婷婷av| 日本色婷婷| 五月丁香色婷婷色| 日韩在线视频中文字幕| 99热碰碰热| 超碰在线99热| 色五月婷婷综合| 欧美三日本三级少妇三99| 丁香久月| 在线视频另类| 激情丁香五月婷| 五月丁香美女| 热的无码综合视频| 丰满熟女人妻一区二区三| 99精品在线下载| site:ornaments52.com| 这里只有精品在线视频在线观看| 成年人99热| 夜夜撸天天日| 五月天伊人网| 久久久8| 婷婷操逼网| 北京熟妇搡BBBB搡BBBB | 五月婷婷在线短视频| 午夜色婷婷| 九月色婷婷| 六月色日韩| 超碰chaompinm| 天天操天天爱天天日| 91丨熟女丨首页| 日日干夜夜撸夜夜骑| 国产成人网址| 99热这里只是精品| 99精品综合视频| 操比激情五月综合| 色人久久| 婷婷五月天日日日干干干| 天天干天天爽天天操| 五月婷婷片| 丁香九月婷| 婷婷五月天成人| 秋霞九九无码| 色五月色五天色情网| 婷婷色播色五月五色五月天色妇| 五月色婷婷在线观看| 婷婷成人小说综合| 亚洲色碰| 91午夜婷婷狠狠久久综合9色| 免费无码毛片一区二区A片| 日本狠狠干| 99只有精品9| 97热精品| 新激情五月天色播| 99热这里精品| 日本在线wwww| 97碰碰视频在线观看| 美臀自射自家人妻| 六月婷婷八月丁香| 国产精产国品一二三在观看| 日韩超碰在线| 五月天婷婷影院影院| 久久机热/这里只有精品| 99日韩网站| 思思久热6| 超碰97干| 五月停停大香蕉| 黄网在线免费观看| 婷婷五月天激情五月天网站| 久久曰曰| 九色亚洲| 九九99在线观看视频| 五月丁香亚洲婷婷| 伊人五月综合网| 日日操夜夜撸| av无码电影| 国产色婷婷亚洲| 99激情| 婷婷丁香九色| 思思热久久阴99| 丁香五月五月婷婷| 色99最新网址| 色99视| 天堂综合久久| 九色色| 色久五月天| 丁香 亚洲 久久| 性爱技巧五月| 日韩无码人妻一区二区三区综合| 五月激情丁香| 91紱請| 激情丁香社区| 五月婷婷色影院| www.婷婷五月| Www99热| 丁香婷婷影院| 五月婷婷综合在线视频| 久久99热 这里有精品| 九九久热| 九九婷婷热| 伊人丁香六月婷婷| 婷婷社区五月天| 亚洲人人艹| 激情丁香五月激情婷婷| 99精品在线观看视频| 熟女色色一区二区| 婷婷大美在线| 专区无日本视频高清8| 狠狠噪| 婷婷久久午夜网| 五月天另类小说| a九九热www| 99亚洲无码| 超碰在线人妻| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 婷婷激情五月吧| 337p大胆噜噜噜噜噜91Av| 欧美日韩国产日本精品四虎网网站物| 国产99美少妇| 精品亚洲国产成人A片在线鸭王| 婷婷天堂综合网| 色婷婷五月天堂资源| 欧美三级巜人妻互换| www.99热这里精品| 色婷婷丁香五月| 久久久久激情网| 色五月激情网| 免费观看2018www黄色操逼网站| 色五月婷婷五月丁香五月激情五月视频| 激情网综合| 久草五月婷婷| 中文无码婷婷| 激情五月天网站| 综合xx网| 懂色av粉嫩AV蜜臀AV| 婷婷五月六月激情| www.日本91| 婷婷六月伊人| 欧美久人人| 色99网| 五月丁香在线视频观看| 欧美婷婷丁香社区在线播放| 直接看的AV| yazhochengrenavwang| 五月婷婷中文字幕| www.狠狠操.co m| 五月开心播播网| www,婷婷| 丁香六月婷婷一区| 伊人久久丁香五月91| 翔田千里aV中文字幕| 日本WwW色偷偷丁香花久久久京东热| 亚洲中文字幕AV| 久久99激情| 色10月婷婷视频| 99国产精品久久久久久久久久久| 五月丁香va| 大香蕉婷婷婷| 日韩欧洲亚洲| 99日这里只有精品| 91人妻PORNY九色大屁股| 欧洲电影在线观看免费版英语版| 五月丁香999| αV电影| 久久精品性爱| 婷婷无码视频| 亚洲人妻av| 婷婷丁香精品视频在线观看| 国产在线中文字幕| 五月色天情| 超碰人人干| 亚洲午夜在线视频| 亚洲天天操| 五月天激情AV| 婷婷丁香五月天欧美| 青青色com久久| 五月丁香影视| 婷婷五月色情| 五月婷婷婷自由综合| 久久久九九视频精品18| 色噜噜狠狠色综无码久久合欧美| 色婷婷成人在线| 97干在线播放| 就爱日五月天| 婷婷五月色| 欧美 日韩 成人 在线| 亚洲久久婷婷| 丁香五月婷婷色五月| 九色在线观看91av| 色色色五月天婷婷| 98色花堂98t.R| 色婷婷综合中心| 99久久综合| 日都一级A片| A片试看50分钟做受视频| 色婷婷久久| 日本五月婷婷久久久六月丁香| 草了bav视频在线观看| 丁香六月在线| 色综合综合色| 久久精品永久免费| 怡红院院在线导航网| 成人视频在线免费播放| 亚洲国产另类av| 亚洲亚洲人成综合网络| 香蕉操亚洲| 九九热视频精品| 天天综合天天玩夜夜玩天天玩夜夜玩| 99人人精品| 免费观看高清无码| 九九久久腿| 五月天综合在线网| 91人人操人人爱| 六月丁香激情网| 婷婷五月天改成什么了| 玖热精品综合视频| 9操在线| 九九re精品视频在线观看| 伊人成综合五月婷婷| 婷婷五月激情在线| 久久综合香蕉国产国产蜜臀AV| 色婷婷五月在线| 五月丁香久久网| 久久伦乱| 人人播| 99免费| 亚洲激情av| 色色a| 色播播五月天| 9久久狠狠的| 风流少妇A片一区二区蜜桃| 大地资源色婷婷视频在线| 性爱久久| 苗黎美女四级成人版一级二级毛片| 97碰在线| 丁香五月av| 日韩中文字幕| 97干在线视频精品店| 久久久18| 96丁香婷婷九月蜜桃综合久久| 亚洲区视频| 婷婷五月天影院| 丁香五月影院| 狠狠爱综合| 亚洲婷婷性爱| 狠狠色丁香婷婷| 婷婷中文在线| 综合久色五月| 99精品免费视频| 六月丁香色色| 日本人妻A片成人免费看片| 操老逼综合网| 影音先锋天天日| 大香蕉久操| 色噜噜,噜噜色| 大香蕉综合在线| 这里只有精品在线播放| 丁香午夜天| 人妻久久久久久久| 97久久婷婷色| 色碰干| 亚洲五月天天| 欧美婷婷五月天| 天天爱天天做天天操| 婷婷成人基地| 国产av基地| 天天操天天爽天天爱| 色五月激情婷婷| 色五月丁香婷婷| 激情五月成年| 丁香婷婷久久| www.99成人视频| 天天色官网| 色婷婷五月色| 97干干干丁香| 婷婷五月天丁香久久| 思思 热 99| 天天摸天天高潮天天爽| 超碰在线视屏| 久久婷婷五月天丁香| 人妻有码乱操| 玖玖国产视频一区| 人妻精品一区二区三区| 性爱视频久久| 97日本在线| 狠狠va| 99ri视频在线播放| 色呦呦在线| aⅤ79成人片| 精品色色| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 丁香六月天婷婷开心综合| 丁香婷婷六月天| 黄色三级毛片中字| 九月婷婷| 色色丁香婷婷| 久久日韩婷婷五月| 亚洲丁香五月在线观看| 噜噜视频| 99er6免费视频热播| 开心激情综合| 超碰丁香五月| 26UUU精品一区二区Com| 一区二区无码视频| 国产片天天爽夜夜爽| 色婷婷亚洲婷婷在线观看| 亚洲六月色| 99r久久这里只有精品| 俺去也五月天婷婷| 9999三级片| 五月天播播中文字幕 | 夜夜夜叫天天天做| 激情综合亚洲| 欧美激情五月天婷婷| 丁香五月第四色88| 91久久精品国产91性色TV| 思思热国产视频| 色色色色色色色色网站| 久久精品熟女亚洲AV麻豆| 婷婷爱综合| 丁香五月网址| 91精品久久久久久久久 | 爱的综合网| 嫩BBB搡BBBB榛BBBB| 9婷婷内射| 5五月综合网亚洲| www.1024久久| 五月丁香婷婷爱| 五月天丁香综合在线| 九九亚洲视频| 香蕉97碰碰碰超视精品| 99免费| 亚洲成人网站在线播放| 99热碰碰| 九热视频| 五月婷婷啪啪| 亚洲精99| 99热国产精品| 欧美一级色| 91精品综合久久久久久五月丁香| 色婷婷久久7777| 日日爽日日爽| 五月天婷婷基地综合网| 九九九九综合| 久操无码| 色色色99| 69五月天视频| 免费观看高清无码| 啪啪 综合网| 久热这里只有精品6官网亚洲| 播五月丁香三月婷婷| 九九操操| 色五月av| 婷婷午夜天| 五月天婷婷香蕉狠狠超碰综合| 五月婷婷69| 国产精品国产| 亚洲超碰在线| 色操b| 狠狠狠狠狠狠色| 色香欲综合| 91久久久久久久久久| 午夜大香蕉| 丁香久色| 狠狠情色| 99只有精品| 亚洲最大五月天成人网| 大香蕉大香蕉在线影院| 婷婷色婷婷| 国精产品一区二区三区| 久大香蕉| 国产乱人偷精品人妻A片| 色综合激情| 9999三级片| 国产亚洲色婷婷久久99精品91| 婷婷94s| 久久这里都是精品| 大香蕉五月丁香| 天天弄天天爽| 久久精彩视频99| 色婷婷狠狠爱| 九九亚洲视频| 亚洲思思热久| 欧美性交一区二区三区| 五月婷激情| 丁香激情综合| 天天肏屄夜夜爽| 九9九9无码| 成人无码髙潮喷水A片| 五月婷婷九| 五月情综合| 婷婷伊人综合中文字幕| 1024国产在线| www夜夜| 五月婷婷色五月| 色五月亚洲五月天| 成人版视频在线观看| 五月综合激情| 伊人六月丁香婷婷| 99re66热这里只有精品| 天天干夜晚夜操| 五月天国产| 99久久成人| 另类国产区| 超碰人妻公开在线| 人妻久久久| 色色色色色色色色色999| 亚洲sesesese| 丁香五月天狠狠操| 亚洲成人av在线观看| 丁香六月激情| 激情欧美五月丁香| 无码99| 狠狠色噜噜狠狠| 欧洲婷婷五月天| 99热婷婷| 超碰a女人的天堂| 五月天大香蕉AV| 欧美色色色| www.黄色片-久久成人国产精品在线播放-999AV| 亚洲综合色丁香婷婷六月| 玖玖婷婷视频| 1024成人免费看| WwW色婷婷| 国产精自产拍久久久久久蜜| site:pnnrt.com| 激情四射网| 激情五月婷| 99精品热| 66色在线日韩| 丁香久久| 色婷婷瘦婷婷日韩| 丁香五月婷婷www..com| 色九九九综合| 天天射天天操天天干| 欧美午夜乱妇午夜福利| 97色色婷婷| 大香蕉520| 天天艹夜夜艹| 九九热精品| www.夜夜操.com| 五月婷婷色| 丁香五月性| 精品久热69| 无码99| 久久人人九九| 丁香九月久久| 色色婷婷丁香| 777影视理论片大全在线观看| 五月天啪啪视频| 天堂久久精品| 成片免费观看视频大全| 五月天婷婷久久| 日本乱子人伦在线视频| 国产日产亚系列精品版优势| 超碰成人黄色网| 色五月婷婷7777| 综合激情四射一theav| 丁香社92视频| 超碰成人在线观看| 江苏少妇性BBB搡BBB爽爽爽 | 亚洲视频一区| 日日影院 | 欧美在线干| 一本大道嫩草AV无码专区| 大香蕉AV电影在线| ou洲色吧| 色停停香蕉视频| 五月花综合网| 激情五月深爱婷婷| 色五月激情五月开心五月| 丁香六月啪啪| 538在线精品| 婷婷丁香五月天熟女丝袜| 99er精品视频| 79色色色色| 九九无码| 久久久久网站| 久9热在线视频| 欧美日韩中文国产一区发布| Av在线不卡一区| 久9精品视频| 色五月婷婷五月久久| 欧美综合激情五月天| 伊人久久大香线蕉av最新| 婷婷五月天福利| 狠狠狠狠草草| 久久婷婷综合网| 欧美亚洲婷婷五月| 免费视频无码| 99久久国产宗和精品1上映| 六月婷色| 欧美久久五月婷婷| 五月婷婷丁香六月| pacopacomama 070722_670 素人奥様初撮りドキュメント 103 大久保純子 | 98热精品| 另类视频在线| 免费观看的婷婷五月视频在线| 丁香六月婷婷姐网| 夜夜干 夜夜操| 色啦啦视频| 99色色爰| 99精品视频在线观看| 五月久久婷婷天堂视频| 色噜噜综合网| 天天色综合综合| 国产激情视频在线观看| 国产一级黄色影片,| 色综合色五月| 玖玖热视频| 性爱综合网| 成人版视频在线观看| 26uuu青青| 九九热视频精品| 亚洲国产精品二二三三区| 无码人妻丰满熟妇奶水区码| 五月婷婷与六月丁香图片激情| 久久久人妻不卡| 97五月天| 丁香88AV五月婷婷| 婷婷五月天伊人在线| 91爱操| 色综合天天综合成人网| 思思久久久婷婷| 亚洲欧洲99| 色综合中文| 色99欧洲色19| AV天堂婷婷五月天| 激情综合网五月婷婷| 色五月婷婷操逼| 五月天激情国产综合婷婷| 性做爰1一7伦| 激情深爱婷婷网| 日本久热| 成人永久免费视频在线观看| 五月丁香激情婷婷综合| 国外亚洲成AV人片在线观看| 激情五月婷黄版| 深夜激情网| 1769在线观看欧美国产| 夜夜做天天爽| www久久艹| 99精品成人无码A片观看金桔| 狠狠久久婷| 日韩色色视频www| 婷婷五月丁香亚洲| 五月天另类综合网| 五月丁香综合| 日韩激情婷婷五月天| 99热6精品| 亚洲成人网无码| av在线观看网站| 操逼毛片国语对白| 99亚洲精品视频| 久9视频| 激情婷婷五月女| 99精品丰满| 色狠狠五月天| 丁香五月成人社区| 久久九九怡红院| 99久视频| 亚洲综合视频天天精品| 涩五月婷婷| 久久在线视频只有这里有精品| 五月丁香综合影院| 色欲婷婷五月天丁香| 99热99极品观看| 九九久久色| 丁香在线视频| 色婷婷久久久| 丁香五月婷婷啪啪| 成人五月天婷婷| 99热66| 色五月婷婷天天操夜夜操| 超级碰碰碰久久网站视频| av操一操| 久久婷.com| 天天插综合| www.狠狠狠狠| 亚洲黄色操逼| 丁香五月激情婷婷激情| 色婷婷亚洲综合网站| 婷婷舔| 婷婷五月丁香色色| 婷婷精品性性性性性性性| 九九成人视频| 丁香色综合| 99热国产婷婷| 激情第四色| 无码啪啪| co超碰在线观看| 婷婷国产成人| 精品人人操| 久久视频在线视频| 26uuu国产激情视频| 色婷婷情片| 99在线观看精品视频| 伊人婷婷激情| 日本欧美成人片AAAA| 丁香婷婷综合精品六月初| 九九九九精品精| 激情亭亭五月| 色婷婷综合久色AV五色最新| AV亚洲在线| 九九99九九99九九99视频网| 情欲综合网| 欧美黄色一级录像| 天天插天天爽| 亚洲中文无码成人| 婷婷色婷婷| 99久在线精品99re8| 99re99热| 超碰在线资源| 99在线观看| 色综合播放| 天堂爱啪啪| 亚洲成人免费电影| 五月社区丁香| 99在线精品视频| 天天插天天射| 婷婷成人五月天| 色婷婷综合五月| 日本WWW九九九| 亚洲深喉aV| www.久久| 夜夜夜夜夜操| www.婷婷| 成人在线网站| 亚洲综合无码| 伊人99久久| 91操人视频| 日本色狠狠| 色五月婷婷成人视频| 99精品久久久久| 草榴成人影片| 五月丁香啪啪| 色婷婷久久综合| 熟女激情五月天 | 亚洲在线操| 色婷婷电影网| 色五月天丁香婷婷| 五月婷婷视频ab| 第四色色六月色综合| www.色九月| 99操网站| 狠狠色丁香乆乆| 五月丁香六月婷婷激情视频在线观看免费 | 性爱网六月丁香| 在线观看免费视频| 色色激情五月天| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 色色免费网站| 久久色亭亭五月天| 五月天婷婷五月| 99在线观看视频| 婷婷色片| 99re久热| 无码碰碰| 香蕉视频性爱BB做爱| 国产暴力强伦轩1区二区小说| www激情婷婷com| 26uuu另类| 呦呦视频无码播放| 99热99免费| 欧美成人Va| 婷婷五月天激情四射五月天激情| 1囯产午夜仑鲁鲁| 狠狠噪| www.丁香六月婷婷久久天堂影院.con| 丁五月激情视频免费| 久久人妻视步| 综合一本道| 五月之婷婷| 国产永久一二一起草| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 色色永久| jiujiu无码五区| 婷婷五月成人| 久久婷婷五月综合97色一本| a免费在线| 九九操屄| 黄色短视频在线观看| 五月色亭丁香| 欧美久人人| 9精品视频在线| 亚洲黄色精品| 99色在线视频观看| 草操AV在线| 久久人妻爱爱| 婷婷五月中文字幕国产| 色婷婷综合网站| 青草青青草| 99热都是精品| 亚洲天堂热| 91欧美| 国产3p露脸普通话对白| 久婷狼色诱惑在线| 五月丁香婷婷伊人日韩| 综合www色| 九九久久五月天| AⅤ在线播放网| 亚洲AV免费国产电影| 99热这里只有精品1025| 丁香五月自拍| 久久久久久欧美精品se一二三四| 久久国产性爱A V| 97人人搞| 久久这里面只有精品视频| 六月婷婷狠狠色在线观看| 九九精品在线网| 五月天丁香成人社| 色五月琪琪| 国产肥白大熟妇BBBB视频| 91高潮喷水久久久久久久久 | 综合久久久| 99热超碰在线| 99热日本| 大香蕉欧美在线| 婷香五月| 色综合久久之分久久| 老师把我爽高潮了免费A片| 任你搞网站| 婷婷激情六月中文| 五月综合在线| www.夜夜| 九月av在线| 国产色丁香| 五月婷婷福利| 久久九九热视频| 五月美女婷婷风骚| 男人的天堂在线婷婷| 91丨九色丨大屁股| 天天搞天天色综合| 丁香五月综合在线| 99热这里只有精品4| 99操视频| 综合亚洲色色| 五月噜噜| 激情AV| 琪琪色网址| 九九综合九九| 99er6热在线观看精品6| 日本一级一级一级一级| 狠狠爱青青草| 伊人99热| 在线只有精品| 五月丁香久久| 六月丁香婷婷综合狠狠爱夜夜爱| 99ri精品| 日本欧美国产| 日本久久精品| 超碰男人色| 天天做天天爱天天日| 99这里有精品视频| 97伦乱| 五月激情婷婷图片基地| 99热这里只有精品18| 日本狠狠干| 亚洲综合五月天婷婷丁香| 精品久久久久久久人妻| 九色婷婷| 91超碰在线观看| 天天日,天天射,天天舔| 曰韩少妇内射免费播放| 色婷婷丁香| 婷婷五月天在线视频网站| 国产亚洲精品AAAAAAA片| 久操人妻| 91婷婷色 | 天天舔夜夜操www com| 狠狠99| AA片在线观看视频在线播放| 超碰免费在线| 天天搡日日搡aaaaⅩ| 亚洲AV另类| 激情五月视频| 搡BBBB搡BBB搡18| xxxx五月| 99热最新| 久久久99视频| 五月丁香六月激情综合| 97香蕉人人在线观看| 婷婷五月丁香五月天| 狠狠操天天干| 99热综合在线| 欧美婷婷日本| 99久超碰| 2020日日干| 丁香色成人| 人人操AV| 九九色之九九色之88| 女人被男人吃奶到高潮| 国产亚洲色婷婷久久99精品91| 超碰99热精品在线| 伊人婷婷五月| 99热国产| 色狠狠综合网| 亚洲网视屏| 性一交一乱一交A片久久四色| 都市激情小说婷婷| 亚洲五月婷婷| 亚洲精99| 99视频在线观看网址| 天天干天天曰天天射| 亚洲午夜一区二区| 欧美 日韩 成人 在线| 曰曰久久| 99热9|