免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

CMSIS-DSP源碼解析:從定點運算到工業(yè)固件落地的完整指南

CMSIS-DSP源碼解析:從定點運算到工業(yè)固件落地的完整指南 做嵌入式信號處理這些年有一件事我一直想做卻拖了很久——把Arm官方那套CMSIS-DSP庫的源碼從頭到尾過一遍。這不僅僅是因為工作中要經常和濾波、FFT打交道更因為這套庫幾乎是所有Cortex-M系MCU上做數(shù)字信號處理繞不開的底座。雷達信號前端、電機控制觀測器、振動分析儀、音頻處理鏈路、電池管理的阻抗譜計算甚至現(xiàn)在AI落地的NPU之前的預處理Stage背后都站著它。如果你只把CMSIS-DSP當黑盒調用那確實省事但它內部真正發(fā)生了什么、為什么會有那么多版本分支、為什么有些函數(shù)在特定核上能跑得特別快、又為什么工業(yè)固件落地時最怕遇上定點溢出這類玄學問題——這些答案全在源碼里。這篇文章我打算把它拆開來看架構怎么設計、源碼里的核心實現(xiàn)細節(jié)、以及怎么在真正的固件工程里穩(wěn)妥地落地而不是只在IDE里點個“添加庫”就完事。適合誰看做MCU算法開發(fā)的、從單片機轉嵌入式Linux又想補一補裸機信號處理底子的、維護老產品但準備做技術棧升級的、還有準備把自己寫的算法算子“CMSIS化”的工程師。我會盡量講得實在一些公式不搞太多但源碼里關鍵的幾行不會跳過。1. 整體設計CMSIS-DSP到底在解決什么問題1.1 從“移植算法”到“架構化算法庫”我在早期做電機控制的時候濾波器和PI調節(jié)器基本都是自己寫的每個工程項目復制粘貼一份改一下數(shù)據(jù)類型就算移植。等到后來做三相并網逆變器發(fā)現(xiàn)諧波分析需要64點FFT、鎖相環(huán)需要二階廣義積分器、電流環(huán)又得抗混疊濾波器整個工程里數(shù)學函數(shù)越來越多風格還不統(tǒng)一——有的人用float有的人用Q15定點函數(shù)命名也各成一派。代碼能跑但維護的時候相當折磨人。CMSIS-DSP的核心價值不是多給你幾個函數(shù)而是把信號處理算法在一個統(tǒng)一的框架里重新組織了起來。它的上下文很清晰針對Cortex-M處理器也兼容Cortex-A的部分模式把常用數(shù)學運算和DSP運算分成變換、濾波、矩陣、統(tǒng)計、插值、數(shù)學函數(shù)、復數(shù)運算等若干類每類又提供浮點、Q31、Q15、Q7四種主流數(shù)據(jù)類型版本。這句話說起來輕巧但真做到這個程度背后是一整套數(shù)據(jù)類型約定、向量長度約定、內存對齊約定和微架構優(yōu)化策略。1.2 源碼目錄機構與庫的“骨架”很多人第一次下載CMSIS-DSP源碼包會看懵目錄套目錄文件特別多。先別慌整個源碼包的架構是有清晰邏輯的。以CMSIS 5.x版本為例核心部分大致有以下塊Includearm_math.h、arm_math_types.h、arm_math_memory.h等頭文定義數(shù)據(jù)類型、宏開關、內存對齊宏、函數(shù)聲明。Source按功能分目錄BasicMathFunctions、FilteringFunctions、TransformFunctions、MatrixFunctions、StatisticsFunctions、SupportFunctions、InterpolationFunctions、ComplexMathFunctions、FastMathFunctions、BayesFunctions、SVMFunctions、DistanceFunctions等等。PrivateInclude內部函數(shù)實現(xiàn)用的私有頭文件。Examples一些用法示例。ComputeLibrary某些平臺里會帶針對特定處理器的加速實現(xiàn)。從這目錄劃分能看出這套庫的設計思路是“模塊化數(shù)據(jù)并行”。模塊化不用多說數(shù)據(jù)并行指的是同一個算法用不同精度和存儲寬度的數(shù)據(jù)類型分別實現(xiàn)靠編譯期宏切換而不是在運行期做類型分支。這樣的好處是復用率高、代碼膨脹可控、編譯器優(yōu)化也能做得更徹底。1.3 為什么要有 float32/Q31/Q15/Q7 四種版本工業(yè)固件落地時芯片選型往往由成本、功耗、外設決定而不是由浮點能力決定。Cortex-M4/M7/M33/M55這些核帶FPU浮點處理單元用float32自然爽。但很多低成本方案用的是M0/M0/M23這些核沒有FPU浮點運算是軟件模擬的慢得令人發(fā)指。這時候就必須用定點運算Q15和Q7還能省Flash和RAM因為數(shù)據(jù)寬度小、運算指令快。Q31精度高適合對精度要求高的中間計算。CMSIS-DSP把這幾種版本全鋪開就是讓你在“精度、速度、存儲、成本”之間自由匹配。舉個例子做電池SOC估算狀態(tài)觀測器里如果全程用float32在M0上可能跑2kHz都吃力但如果你把矩陣運算改用Q15內存還省了一半速度可能翻好幾倍。代價是你在設計算法時就要認真做定點化、標定和溢出保護這恰恰是源碼審計和工業(yè)落地中最需要注意的地方。2. 核心源碼細節(jié)那些決定性能與穩(wěn)定性的關鍵實現(xiàn)2.1 定點數(shù)的世界Q格式的本質與溢出哲學CMSIS-DSP里最勸退初學者的是Q15和Q31。它不是簡簡單單的整數(shù)而是“定點小數(shù)”。拿Q15來說實際表示的數(shù)是short型整數(shù)除以 2^15數(shù)值范圍在 -1.0 到 0.999969482421875 之間。為什么寬度只有16位還要分個正負號因為ARM Cortex-M的DSP指令很多是16位飽和運算比如QADD16、QSUB16這些指令在一條指令里能同時做兩個16位加減并且自動飽和。在CMSIS-DSP的源碼里處處能看到飽和運算的痕跡。比如arm_mult_q15在做乘法時*qst (q15_t) __SSAT(((q31_t) *pSrcA * *pSrcB) 15, 16);這一行信息量很大兩個Q15數(shù)相乘數(shù)學上結果應該是一個Q30數(shù)但為了存回Q15先左移/右移15位截斷再做飽和到16位。__SSAT是ARM的飽和指令如果結果超出int16范圍它自動鉗到最大或最小值而不是簡單截斷。這樣處理的好處是哪怕輸入信號激烈變化導致中間結果超出范圍最壞情況也只是飽和失真不會出現(xiàn)溢出后符號反轉那種災難性結果。我在實際固件里吃過虧早期自己寫的定點FIR濾波忘了做飽和只在最終輸出限幅中間累加一旦溢出噪聲瞬間從溫和的底噪變成脈沖性的“啪嗒”聲查了兩天才意識到是內存里一個int16_t累加器爆了。所以凡是和音頻、振動、電流采樣相關的信號鏈我后來都強制統(tǒng)一走CMSIS-DSP的定點API靠它的飽和指令兜底。2.2 數(shù)據(jù)對齊與向量化讓CPU滿血工作的前提很多人在M7上跑CMSIS-DSP發(fā)現(xiàn)性能不如預期一大半原因是對齊和內存布局沒做對。ARM Cortex-M4/M7上有單指令多數(shù)據(jù)SIMD能力比如一條指令可以同時算兩個q31_t加法或者多個q15_t運算。但這要求數(shù)據(jù)指針的地址至少是4字節(jié)對齊如果是8字節(jié)、16字節(jié)對齊則更好尤其當使能了SIMD優(yōu)化路徑后。CMSIS-DSP在頭文件里專門定義了內存對齊宏比如用__ALIGNED(8)或更高字節(jié)對齊來標注緩沖區(qū)。實際使用時如果你在結構體里聲明一個float32_t data[256]編譯器默認對齊可能只有4字節(jié)這也能跑但如果你是M4/M7又想調用帶DSP指令的優(yōu)化分支最好顯式聲明__ALIGNED(16) float32_t fft_input[1024]; __ALIGNED(16) float32_t fft_output[1024];為什么是16字節(jié)因為很多Cortex-M的緩存線大小可能是16字節(jié)或32字節(jié)16字節(jié)對齊可以保證一個數(shù)據(jù)塊不會跨緩存行減少不必要的主存訪問。更重要的是CMSIS-DSP內部啟用了ARM_MATH_DSP宏的SIMD路徑時會要求地址滿足更高對齊否則可能打開嚴格別名字strict aliasing問題或者觸發(fā)未定義行為。實操中還有一個容易忽略的點DMA和DSP共用緩沖區(qū)。如果緩沖區(qū)要對DMA開放分配內存時更要考慮對齊因為DMA控制器往往要求源地址和目標地址對齊到傳輸寬度。我一般在鏈接腳本或者啟動文件里專門開一個dsp_buf段統(tǒng)一對齊到32字節(jié)誰要用誰往這里取省得反復對齊。2.3 FFT實現(xiàn)從位反轉到蝶形運算的循環(huán)展開CMSIS-DSP的FFT是它的門面功能。從API上分有arm_rfft_fast_f32、arm_cfft_f32、arm_cfft_q15等??傆腥藛枮槭裁此腇FT比許多第三方庫快答案在于它做了三件事預計算旋轉因子表、位反轉索引表、以及針對不同長度和類型的循環(huán)展開。位反轉是FFT里最容易寫錯的部分。教科書里的偽代碼“交換索引位反轉”在實際工程里往往性能不佳因為每次交換是非連續(xù)內存訪問。CMSIS-DSP的做法是提前把位反轉的索引表算好放在Flash里運行期僅用查表方式搬移數(shù)據(jù)。比如在arm_cfft_radix4_f32內部你會發(fā)現(xiàn)大量pTwiddle指針和預生成的查找表這就是空間換時間的經典操作。再看蝶形運算內部以基4 FFT為例它的內層循環(huán)做了大量手工展開/* 偽代碼示例不代表CSI源碼原文 */ c1 pCoeffs[0]; c2 pCoeffs[1]; ... /* 四路并行蝶形計算 */這樣做的原因是編譯器雖然聰明但面對這種有規(guī)律但又不是完全規(guī)則的循環(huán)往往無法自動向量化。手工展開后每次迭代處理4個輸出點再用循環(huán)計數(shù)器控制總迭代次數(shù)能顯著減少循環(huán)開銷和讓CPU流水線更順暢。我把這兩種寫法對比過同一個256點浮點FFT在M7上不使能展開和使能展開時間差了約25%。MMM……確實值得。2.4 濾波器家族在存儲器與計算量之間做取舍CMSIS-DSP的濾波函數(shù)也很有看頭從FIR、IIR到自適應濾波都能找到。arm_fir_f32的基本流程是保留一個狀態(tài)緩沖區(qū)每次輸入一個新樣本把狀態(tài)數(shù)組整體前移一格再做點積。一次樣本的處理復雜度是濾波階數(shù)N次乘加和N呈線性關系——這個沒問題。但它的狀態(tài)區(qū)管理很有意思用一個環(huán)形緩沖和一系列指針來避免每次全部搬移數(shù)據(jù)??丛创a時會看到pState的指針運算大概邏輯是維護一個“最后一個寫入位置”每次濾波后更新指針首地址而不是真的把整個狀態(tài)數(shù)組整體移動。這個設計對實時系統(tǒng)是友好的——省了大量內存拷貝也避免了緩存抖動。即使是M0這種沒有緩存的小核也減少了總線占用。IIR濾波器就更體現(xiàn)“變體多”了。arm_biquad_cascade_df1_f32是典型的直接I型雙二階濾波器級聯(lián)結構它把高階IIR拆成多個二階節(jié)每個節(jié)用4個系數(shù)兩個狀態(tài)變量。直接I型在定點下容易有中間溢出的問題但函數(shù)內部有飽和和縮放性能和安全相對均衡如果你對系數(shù)靈敏度和噪聲有更高要求CMSIS-DSP還提供了DF2T結構狀態(tài)變量更少、對參數(shù)擾動的敏感度更低。實際做音頻EQ或者傳感器信號調理時我習慣把高階濾波器拆成多個雙二階節(jié)并盡量用DF2T結構這樣定點實現(xiàn)時動態(tài)范圍更容易控制。3. 工業(yè)固件落地的完整指南3.1 項目啟動先算算手上有什么資源工業(yè)固件和跑著玩的Demo不一樣Demo只要功能正常就行工業(yè)項目要回答三個問題Flash夠不夠RAM夠不夠每個周期算不算得完用一個中等復雜度案例來說假如要用STM32F10372MHz M3核無FPU64KB RAM512KB Flash做一個振動監(jiān)測節(jié)點采樣率20kHz每次處理512點FFT需要實時輸出速度有效值和1-4倍頻幅值。這個場景用float32在M3上沒有FPU時256點FFT一次就要幾百微秒雖然20kHz采樣間隔是50微秒——如果每一次都要處理完整FFT不完事。所以現(xiàn)實方案是把采集緩沖填滿512點用DMA中斷通知CPU然后以大約25.6ms的周期做一次FFT和后續(xù)統(tǒng)計。仔細算一下512點實FFT在72MHz M3上大概耗時2-4ms假設計算約占CPU的10%余量很大可以放心跑。這種“分成采集與處理階段”的調度模型是工業(yè)落地非常常用的套路。算完時間預算再算內存。arm_rfft_fast_init_f32(512)需要的實例結構體加上FFT內部緩沖區(qū)大概幾KB左右。加上原始ADC采樣緩沖、DMA雙緩沖、顯示緩沖等64KB RAM依然緊張需要把全局buffer復用。CMSIS-DSP的實例結構體通??梢栽诔跏蓟蟛辉俑膭铀晕視阉胚M一個const段能省RAM就省RAM。3.2 定點化選型何時用Q15何時用Q31何時堅持float我看到很多人拿到CMSIS-DSP后全是float一把梭即使目標芯片沒有FPU。這真的很讓人心疼。浮點運算在沒有硬件FPU的M3/M0上一個乘法可能變成幾十條指令的軟件浮點計算FFT跑起來會慢得懷疑人生。我的經驗是M4/M7/M33/M55帶FPU直接上float32省心、動態(tài)范圍大、代碼可讀性高。大部分數(shù)據(jù)采集和濾波任務float32的精度完全夠。即使偶爾有一個系數(shù)需要double精度也應該在計算前截斷到float32避免不必要的軟浮點損失。M3/M0無FPU但信號動態(tài)范圍不小優(yōu)先Q31。Q31精度高適合中間累加和矩陣運算但速度和RAM消耗比Q15大。M3/M0且內存極緊張Q15。適合音頻、振動、溫度這類帶限信號只要做好輸入信號的歸一化和縮放精度損失在可接受范圍內。Q7一般只用于極致壓縮的場景比如語音特征向量、SVM分類器的輸入作為中間表示。選型還有個隱含條件庫的編譯配置。在arm_math.h中有一堆ARM_MATH_CM4、ARM_MATH_CM7、ARM_MATH_DSP、ARM_MATH_LOOPUNROLL、ARM_MATH_NEON這類宏這些直接影響編譯出來的代碼走哪條優(yōu)化路徑。你在工程里定義的宏必須和芯片類型匹配。我之前接手過的一個項目把M4的庫宏配置用到了M0核上編譯過了但跑起來所有DSP函數(shù)都走到了通用C路徑性能慘不忍睹。排查到最后才發(fā)現(xiàn)是宏沒定義對。3.3 編譯器與優(yōu)化選項的搭配技巧ARM生態(tài)里編譯器主要是ARM Compiler 5AC5、ARM Compiler 6AC6和GCC。CMSIS-DSP對AC6和GCC的支持已經很完善了但老項目里還有不少用AC5的。AC5的編譯產物在M4上跑CM7優(yōu)化路徑可能會出問題因為它對指令集的支持判斷不如AC6細致AC6基于LLVM代碼密度和性能在Cortex-M上普遍好于AC5但個別情況下也會遇到浮點ABI不兼容的問題。工業(yè)固件中我一般建議新項目直接用AC6或者較新的GCC開-O2或-O3再開鏈接時間優(yōu)化LTO不要開-Ofast因為它會犧牲IEEE合規(guī)性遇到數(shù)值敏感算法會出隱患。AC5老項目想升級到AC6注意CMSIS-DSP源碼中可能用到的GCC內建函數(shù)__SSAT在不同編譯器下的實現(xiàn)差異AC6和GCC下的CMSIS-DSP其實已經在頭文件里做了適配一般直接編就行但不要輕易把編譯警告全部關掉——有些警告是告訴你“這里可能有未定義行為”。還有一個容易踩的坑如果用的MCU支持硬件浮點卻沒有給編譯器傳-mfloat-abihard -mfpufpv5-d16M7或對應的fpu參數(shù)浮點參數(shù)就會通過軟浮點ABI傳遞性能損失極大。我在一次M7項目里忘了加-mfpuFFT性能比預期慢了近一倍加上之后立刻對了。3.4 數(shù)據(jù)采集到濾波輸出的完整信號鏈工業(yè)落地很少是只調一個庫函數(shù)就結束的它是一整條鏈路。從ADC采樣開始數(shù)據(jù)進入DMA雙緩沖采樣完成后觸發(fā)中斷主循環(huán)或RTOS任務把當前緩沖的數(shù)據(jù)交給CMSIS-DSP做預處理。最常見的是先做直流分量去除和窗函數(shù)處理。做FFT之前窗函數(shù)的選擇很有門道做不加窗的幅值分析時頻率泄露很嚴重工程上我默認用漢寧窗如果目標譜線和主瓣寬度要求更高就換平頂窗并做幅值校正。下面是個簡化的偽代碼流程/* ADC完成回調在一個實時任務里執(zhí)行 */ adc_data_to_float(pDmaBuf, fft_input, FFT_SIZE); /* 1. 去直流減去均值 */ arm_mean_f32(fft_input, FFT_SIZE, mean); arm_offset_f32(fft_input, -mean, fft_input, FFT_SIZE); /* 2. 加窗 */ arm_mult_f32(fft_input, hanning_window, fft_input, FFT_SIZE); /* 3. FFT */ arm_rfft_fast_f32(fft_inst, fft_input, fft_output, 0); /* 4. 計算幅值譜復數(shù)模值 */ arm_cmplx_mag_f32(fft_output, fft_mag, FFT_SIZE / 2);每步都調庫函數(shù)看起來像在做“函數(shù)調度”其實最終性能瓶頸在ADC數(shù)據(jù)拷貝和窗函數(shù)乘加。CMSIS-DSP的arm_mult_f32和arm_offset_f32都是逐點操作用循環(huán)展開和SIMD后非??旆判挠?。唯一要注意的是fft_output是復數(shù)組偶數(shù)下標存實部奇數(shù)下標存虛部后續(xù)取幅值時要按這個規(guī)律訪問。3.5 關于數(shù)據(jù)精度、標定和自檢的設計工業(yè)設備對可靠性要求高算法輸出的數(shù)據(jù)要有可追溯性。我的習慣是在每套算法里加一個“自檢模式”用一組已知的仿真信號比如50Hz、幅值為1.0的正弦波作為輸入執(zhí)行濾波或FFT然后把計算結果和期望值做誤差判定如果誤差超限系統(tǒng)報警并回退到安全參數(shù)。這個方案用CMSIS-DSP很容易實現(xiàn)因為所有API都是確定性的輸入輸出完全可復現(xiàn)只要平臺一致結果應該嚴格在誤差范圍內。標定環(huán)節(jié)也建議直接在算法層做。比如振動傳感器靈敏度是100mV/gADC基準是3.3V/4096LSB那么從原始碼值到加速度值的換算系數(shù)就應該放到算法前面的一個增益級里用arm_scale_f32統(tǒng)一縮放。不要把標定值散落到各層不同函數(shù)里容易亂。4. 源碼審計結論與常見問題排查實錄4.1 從源碼審計視角看CMSIS-DSP的質量我把CMSIS-DSP源碼看作是一個大型的“數(shù)學參考實現(xiàn)微架構調優(yōu)庫”。從代碼風格看它普遍遵守“一次計算、一個目的”的命名和模塊化設計比如arm_add_f32只做加法arm_scale_f32只做縮放。這些函數(shù)接口清晰、邊界條件處理基本正確大部分異常都靠宏和斷言兜住。在工業(yè)固件審計時我傾向于認同它的行為穩(wěn)定性定點函數(shù)都有飽和機制浮點函數(shù)基本遵循IEEE標準除非顯式開了快速數(shù)學模式。但也不是沒有坑。它有幾點要注意一是它不是一個“內存安全的庫”調用者必須保證輸入輸出緩沖區(qū)長度夠、不重疊超出邊界它不會幫你檢查二是它對 “無FPU的M0核”支持的是通用C路徑性能只能說“能用”不能說“很快”三是某些函數(shù)對傳入的實參有對齊和長度要求違反后不是報錯而是運行結果不可預期。審計代碼時最好把CMSIS-DSP的assert宏打開一段時間運行一輪完整的自檢測試確認所有參數(shù)都合法再關掉斷言發(fā)布。4.2 常見問題速查表我把實戰(zhàn)中遇到過的問題整理成了一張表方便大家對照排查。癥狀可能原因排查與解決FFT結果全是NaN或極大值輸入緩沖區(qū)長度不夠或緩沖區(qū)未對齊到16字節(jié)檢查長度與實例初始化參數(shù)是否一致補齊對齊聲明Q15/Q31定點濾波輸出異常跳變輸入信號超出定點表示范圍未做歸一化在進入濾波前用arm_scale_*統(tǒng)一縮放到±0.8以內定點濾波器在動態(tài)范圍大的場景性能差使用了DF1結構導致中間狀態(tài)溢出改用DF2T結構或分段級聯(lián)并逐級重新歸一化M7/M4性能遠低于預期編譯器未開啟硬件浮點ABI或未定義ARM_MATH_DSP加-mfloat-abihard -mfpufpv5-d16M7確認宏定義匹配調用arm_rfft_fast_f32前未初始化實例段錯誤或崩潰初始化實例后重新運行自檢確認參數(shù)合法多任務并發(fā)調用同一實例數(shù)據(jù)競爭輸出錯亂一個實例只允許一個任務獨占或加互斥鎖Link時報undefined symbolCMSIS-DSP源文件未全部加入編譯或條件編譯宏不匹配檢查工程里是否包含所有需要的C文件和優(yōu)化路徑頭文件4.3 代碼審計時的高頻下手點如果你也想按本文思路去審計一套CMSIS-DSP源碼或任何其他DSP庫我建議從這幾個文件/模塊開始BasicMathFunctions/arm_mult_q15.c最容易理解的定點乘法但隱藏著飽和、舍入、截斷的設計哲學看完這個后面所有定點函數(shù)都好懂了。FilteringFunctions/arm_fir_q15.c看它是如何用循環(huán)緩沖維護狀態(tài)數(shù)組的這是理解所有濾波器的鑰匙。TransformFunctions/arm_cfft_f32.c看旋轉因子表的組織和循環(huán)展開方式這一份源碼相當于數(shù)據(jù)結構匯編優(yōu)化的一堂大課。StatisticsFunctions/arm_max_f32.c簡單函數(shù)但你可以從中學到它的代碼風格、斷言方式和循環(huán)邊界處理這在自研算子時可以直接仿照。我還有一個不算秘密的經驗做源碼審計時不要直接看最新版本而是把相鄰兩三個版本比如5.7.0和5.9.0的同一函數(shù)diff一下。你會發(fā)現(xiàn)很多性能修復和bug修復都不是大改而是“邊界條件加個判斷”、“某處循環(huán)提前break”、“某個宏改成可選”。這些差異本身就是極好的文檔能讓你快速理解庫的演進邏輯。4.4 現(xiàn)場調試的幾個獨門小技巧這塊算是實際操作中摸爬滾打出來的分享幾個管用的技巧。第一個技巧用“正弦波自檢法”定位問題。任何時候算法不對先不用真實采樣而是手工構造一組標準正弦波數(shù)組頻率設置成FFT分辨率整數(shù)倍幅值設成滿幅的一半跑一遍算法。如果輸出譜線和預期不符一定是算法或配置的問題如果對了再接入真實數(shù)據(jù)排查采集鏈路。這個方法幫我至少節(jié)約了幾十個小時的調試時間。第二個技巧定點項目里先跑float版本再換定點。我開發(fā)定點濾波器時會先在工程里臨時把同一算法用float32版本實現(xiàn)一遍兩邊輸入相同數(shù)據(jù)把中間過程的誤差對拍。如果float對、定點錯基本可以鎖定是某個節(jié)點動態(tài)范圍或飽和閾值的問題順著算一步打一個斷點即可。精度范圍確定后再把float替換掉避免被“浮點先入為主”誤導。第三個技巧善用芯片的DWT計數(shù)器或SysTick精確測每條路徑的耗時。盲目優(yōu)化是不行的一定要先量化熱點。CMSIS-DSP函數(shù)很多都有官方公布的性能數(shù)據(jù)但那是理想條件下測的還要結合自己的編譯選項實測一遍。我通常的做法是寫一個小基準工程把每個關鍵調用前后記錄時間戳差值是執(zhí)行周期。這個表我實測后會存檔作為每次版本升級時性能回歸的對照基線。最后再分享一點個人體會這套源碼我從無F PU的M0到帶FPU的M7都實際跑過也從5.3版本一路跟到9.x版本。版本在迭代核心的架構和API風格并沒有發(fā)生天翻地覆的變化但這本身就是一個信號——它的設計是經得住時間考驗的。真正的嵌入式信號處理很多時候并不是追求“最花哨的算法”而是追求“可預測的時序、可驗證的精度、可維護的代碼”。CMSIS-DSP在這三點上給了一個非常優(yōu)質的基礎。如果你準備做一個長期維護的工業(yè)固件我建議把CMSIS-DSP的可配置項梳理成一份工程內部規(guī)范芯片型號對應哪些宏、編譯器選項固定成什么樣、緩沖區(qū)對齊標準是多少、定點信號鏈路圖怎么畫、每個算子的輸入輸出范圍是多少。這些內容寫下來比單純把源碼往工程目錄里一扔要可靠得多因為代碼會變但設計約定和測試基線是團隊真正的資產。其他人接手項目時看到清晰的約定通常能省下大量試錯成本。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月婷在线| www夜夜操com| 99精品视频在线观看| 亚洲视频五区| 色五月亚洲| 99日本在线| 亚洲成人超碰| 色婷婷五月天中文字幕| 色婷婷成人做爰A片免费看网站| 婷婷五月天中文字幕.| 五月激情综合网| 激情五月天在线观看婷婷| site:pnnrt.com| 五月丁香六月婷综合成人综合| 中文字幕在线不卡| 天天草天天舔| 超碰成人在线免费观看| 五月丁香色综合| 91嫩草久久| 色播播五月天| 在线观看五月婷婷网| 激情欧美五月丁香| 四季AV综合网| 丁香色婷婷五月天| 五月夜丁香| 思思热视频在线观看| 婷婷五月天影院| 天天日日夜夜爽。| 久久新地址| 99碰碰| av在线激情| 99热播放| 五月婷婷六月丁香综合视频在线| 99丁香婷婷综合网| 丁香五月情| 亚洲天99| 亚洲精品又粗又大又爽A片 | 综合AV网| 色综合色色色| 久久玖玖综合| 国产激情久久久| 久久精品无码一区| 九九热视频精品| 在线亚洲综合| 九九久久精品| 色婷婷六月开心中文字| 日韩欧美成人一区二区三区| 久久人人九| AV在线观看网站| 五月激情婷婷在线| 色J香五月天| 婷婷丁香日韩五月| 色五月天丁香婷婷| 久热这里有精品视频| 婷婷香草网| 久久一二三视频| 91碰免费视频| 97久久视频| 激情五月伊人婷婷| www.综合久久| 97在线观看| 黄色AAAAA| 五月婷婷六月综合| 97久久人人人干| 五月天狠狠| 亚洲色婷婷久久99精品91| 99在线热| 欧美综合激情五月天| 99精品偷拍视频| 激情久久久| 97久久香草精品视频| 禁片二区| 99色亚洲| 夜夜撸天天操| 久久国产精品乱子伦_靑青草…| 91热久88| 99久久a线观| 欧美黄色一级录像| 激情五月天小说网| WWW,五月| 99热日韩| 亚洲一个色| 日本综合99| 天天操综合网| 9这里只有精品| 久久婷婷丁香| 风流少妇A片一区二区蜜桃 | 激情五月com| 影音先锋91资源站| 香蕉婷婷| 97超碰婷婷五月天| 色播丁香| 五月婷六月| 第四色首页| 电影《战争与艾拉》免费观看| 丁香五月天激情四射网络不好| www久| 婷婷操久久| 日日夜夜小色哥| 六月丁香深深爱综合网| 综合久久影院| 亚洲综合碰| 五月丁香色情| 激情久久久久久久久久| 五月成人网站| 激情综合色婷婷六月天| 五月花综合视频| 婷婷五月丁香五月天| 五月丁香婷婷综合网| 成人久碰| 婷婷综合玖玖五月| 停停五月色宗合| 五月婷人妻| 爱射综合| 色婷婷伊人| 综合婷| 狠狠综合| 亚洲亚洲人成综合网络| 国产精品18久久久| 9视频在线成人网站| 婷婷五月天网| 久久久国产精品黄毛片| 深夜婷婷 丁香| 久99热| 久久久精品色| 青青草成人网| 午夜成人综合| 日韩啪啪网| 性色五月天| 丁香五月婷婷手机| 综合六月激情婷婷| 五月天开心激情综合网| 狠狠搞狠狠操| AV色婷婷| 久操综合| 色99在线视频| 99精品偷自拍| 五月丁香综合激情| 亚洲精品国产A久久久久久| 无码激情AAAAA片-区区| 九七色色六月丁香| av五月丁香婷婷网| 91精品综合久久婷婷九色| 精品99视频| 大伊香蕉玖玖爱| 激情综合色婷婷啪啪六月天| 激情另类综合| 亚洲精99| 深爱激情六月| 秋霞AV淫| 日韩成人综合网| 996热| 天天做天天爱天天做| 人人综合五月人人婷婷| 久久精品视频在这里有| 成人 在线 日韩| 五月婷婷丁香| 免费观看全黄做爰的视频 | 中文字幕性爱丰满| 深爱激情四射| 天天综合网网欲色| 色噜噜狠狠色综无码久久合欧美 | 五月丁香六月激情欧美综合| 黄网免费看| 六月丁AV| 97婷婷丁香| 欧美天堂久久| 大香蕉久操| 婷婷在线精品| 97日本在线播放| 伊综合蕉| 亚洲无码你懂的| 丁香六月色| 日韩情色在线观看| 天天综合网、天天综合色| 思思久ren热| 天天日天天摸天天| www天天色天天射| 国产日日操夜夜操的肉棒视频| 丁香婷婷中文字幕| 热99精品视频五月| 婷婷中文字幕| 99欧美三级视频| 97色女人在线| 五月天 综合 在线| 色综合激情| 99国产精品久久久久久久久久久 | site:901-07.com| 九九热只有精品6| 丁香涩涩五月天| 亚洲综合色五月| 99热99久久| 亚洲操人| 99在这里有精品| 天天爱天天操| 99视频只有精品| 婷婷丁香五月综合网| 中文字幕婷婷在线| 婷婷六月爽| 五月婷在线视频免费播放| 成人丁香五月| 国产肥白大熟妇BBBB视频| 91男人操女人视频| 综合色色婷婷| 九九色综合视频| 日日夜夜天天| 成人在线二区| 超碰在线人妻| 丁香六月无码播放| 色五月成人| 老司机视频lsj爱就色| 偷拍91九色| 色五月丁香五月激情五月激情| 这里只有精品视频看看| 网色99| 欧美日韩精品人妻狠狠躁免费视频| 九九婷婷热| 99黄色在线视频精品熟女| 九九视频这里只有精品在线播放| 精品人妻一区二区| 大伊香蕉精品视频在线| 国产成人高清| 999久久久国产精品| 天天爱天天做天天爽| 日日日天天干| 少妇高潮A片无套内谢麻豆传| 五月色激情综合网| av九九| 桔色成人在线| 亚洲无码成人性爰网| 91狠狠色丁香| 第四色色六月色综合| 丁香六月婷婷综合激情欧美 | 99色色热热| 六月丁香综合| 性爱111111| www色婷婷久久综合久色| 99热在线播放| 亚洲无码 图片区| 97视频.干com| 色综合丁香婷婷| 久久男人网婷婷| 精品国产va久| 99热色精品| 99这里有精品视频| 亚洲AV中文在线| se婷97| 婷婷六月丁香久| 99精品久久| 色青五月天| 日本成人噜噜| 丁香激情综合| 五月婷综合性中心| AV在线不卡播放| 欧美va亚洲va| 五月婷婷色色| 五月亚洲激情| 亚州美女| 五月婷婷成人w| 五月丁香激情综合网| 操逼综合网| 欧美VA在线观看| 国产精产国品一二三在观看| 最新亚洲色色网| 99热9| 久青青久| 色欲一区二区三区精品A片| 婷婷九月亚洲| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 久久久精品99亚洲综合| 中文字幕AV在线| 国产精品久久久海的味道| 日本97在线看片| 日韩乱玛久久| 久久女人九九| 五月天婷婷激情| 超碰在线观看caop| 日韩99视频| 2013AV天堂| www.婷婷| 久久婷婷五月天| 久99| 99爱欧美| 久久婷婷五月丁香蜜桃网| 人操人| 一点色成人网| 一级无码作爱片| 91操在线| 97人人射| 婷婷色五月天综合网| 99免费热在线精品| 五月婷久久在线| 欧美激情-区二区三区| 久热这里只有精品视频免费观看| 国产无人区大片| 午夜成人网站在线观看| 日本WWW九九九| 久久精彩视频| 日本五月婷婷| 性爱网五月婷婷| 亚洲欧美综合7777色亭亭| 天天色综和网| 99精品在这里| 国产精品-第3页-91JQ就要激情网91JQ5.JQJQ926.XYZ | 丁香六月婷婷综合麻豆| 1024人妻无码中文字幕| 狠狠狠色激情综合适合| 操操人人| 国产亚洲精品久久久久久牛牛| 亚洲性爱干干| 丁香五月激情五月| 丁香婷婷色九月| 99热新网址| www.五月婷婷久久.com| 五月婷婷激情四季| 91se视频| 日日夜夜狠狠| 玖玖在线视频福利| 大香蕉久久视频久久视频| av网站中文| 日韩操啪| 99热这里只有精品1| 噜噜干日本| 色婷婷亚洲精品天天综| 亚洲婷婷激情888精品久| 香蕉曰比| 碰碰91| 久久婷婷成人视频| 五月婷婷很很色| 开心激情网在线| 久久婷.com| 久久精品色| 99久久国产宗和精品1上映| 色色色色色色97| 日本一级大片| 综合久久婷婷| 综合网五月| 九色视频91疯狂| 狼人久草| 色五月激情五月天| 久久五月天精品视频| 五月J香蕉婷婷| 激情丁香五月婷婷| 精a品a视a频| 91919191919久久成人视频| 天天舔天天操| 国产日韩欧美性生活| chaopeng在线人人| 久久国产色| 玖玖资源天天无码| 丁香六月综合激情| 激情文学 综合 九月| 1024国产| 久久久精品人妻录| 伊人春天av| 欧洲电影在线观看免费版英语版 | 97成人视频| 91色五月| 丁香色综合| 99视频九九热| 丁香六月婷婷色XXXX| 婷婷五月天亚洲五码| 天天舔夜夜操www com| 五月婷婷综合色啪首页| 五月婷丁香| 激情綜合W W W,激情五月天| 青青热久精品视频在线观看| 色五月婷婷91| 国产黄大片在线观看画质优化| www.五月天婷婷| 五月天激情在线视频| 激情五月天综合网| 久久香视频| 成人国产欧美大片一区| 亚洲色网址| 婷婷综合网| 五月婷六月丁| 激情网第四色| 美妞av| 爆乳熟妇一区二区三区爆乳照片| 激情婷婷五月综合| 婷婷99狠| 97搞在线| 99精品丁香五月| 啪啪啪综合网| 激情综合久久| 九九热九九| 丁香五月六月婷婷综合| 伊人五月综合网| 狠狠狠五月婷婷六月丁香| 激情网五夜婷婷| 五月婷婷激情| 99热在线精品播放| 婷婷午夜综合| 超碰在线免费9| 五月婷婷六月色| 婷婷六月天激情影院| 亚洲视频在线观看99| 色综合色色| 天天综合网~91综合网| 色婷婷激情| 激情久久月| 婷婷六久久| 久久久婷婷五月天| 北条麻妃伊人 | 丁香五月婷婷免费视频| 亚洲五月天综合| 九九视频在线观看视频6 | 99综合免费视频| 五月天激情四射网站| 第五色婷婷| 丁香五月激情啪啪| 青青草婷婷综合五月| 久久五月丁香六月婷| 五月天天天操天天爽夜夜操| 丁香久久AV| 国产日批视频| 5月丁香综合网| 五月丁香网站在线播放| 日本性激情色播| 欧美亚洲婷婷五月| 五月丁查人人| 九色啦蜜臀| 五月丁香综合影院| 九月丁香婷婷| 欧美激情性做爰免费视频| 五月开心网| 久久精品99国产精品日本| 国产精品激情AV久久久青桔| 婷婷五月丁香综合网| 99热香港| 亚洲一级AV在线免费播放| 色婷婷五月影院| 久久与婷婷| 精品激情| 婷婷五月天,影院| 三十路磁力链接| 免费播放99性爱视频| 婷婷五月天综合小说网| 婷婷五月天综合网| www色五月| 精品人妻伦九区久久AAA片| 五月婷婷色欲| 欧美啪啪五月天| 97久人人| 在线,国产,色,热视频| 天堂婷婷五月色| 五月婷丁香亚洲| 26uuu91| 亚洲最大五月六月丁香婷婷| 九九99热| 可以免费观看的AV| av一区免费看| 超碰精品在线| 色大综合| www.五月天婷婷| 婷婷五月婷婷| 99久久偷拍视频| 香蕉久久六月| 天天婷婷操| 操人妻视频91| 激情伊人五月天| 久久小说网| 丁香久久九九99| 五月天婷婷色色| 五月天自拍视频| 操逼福利视频| AA久久| 国产精品久久久久久久久久久久| 婷婷色五月天色色| 精品人妻伦| 欧美性丁香色色五月天| AV五月丁香| 香蕉AV福利精品导航| www.激情五月天.com| av在线免费网站| 婷丁香久综合| 五月丁香六月婷婷激情视频在线观看免费 | 色婷婷丁香花五月天| 婷婷五月综合网激情| 先锋五月婷婷丁香草草| 新精品99| 这里只有精品视频| 五月天激情日色在线| 人妻久久久久| 婷婷综合网| 丁香五月 综合| 丁香五月无码| 天天综合精品| 草榴视频网| 九九热这里只有精品12| 天天干狠狠| 久久久久久久11111111111| 久9精品视频| 激情综合五月.....| 色婷婷69| AV六月丁香| 激情五月图| 婷婷深爱五月天| 91碰碰| 97偷拍在线视频| 色婷丁香五月| 丁香五月播播| 久9免费视频| 5月婷婷五月天| 青草青草视频2免费观看| 日韩影院三级| 亚洲色夜| 欧美啪啪五月天| 久久婷婷操| 五月婷婷天| 99热 在线播放| 69婷婷丁香午夜| 婷婷五月天AV| 五月天激情啪啪| 人人舔天天| 涩五月婷婷| xxxx久| 五月天婷婷婷| 另类小说五月天| 激情婷婷综合网| 五月天 综合 在线| 色五月激情五月开心五月| 婷婷五月网图片区| 欧洲亚洲精品| 五月丁小婷婷激情四射| 婷婷五月天激情在线观看| 久久99久久久久久| 综合久久9| 丁婷婷五月天在线播放| 亚洲在线免费成人| 亚洲成人乱码av网站| 99综合| 日韩啪啪网| 成人网址在线观看| 久久精品63| 五月丁香影院| www.婷婷,com| 九九热视| 九九干视频| 在线综合91| www.人人操人人看人人想人人摸 人人人人操,COM | 在线91日韩| 婷婷六月激情在线视频| 亚洲天堂婷婷| 亚洲激情免费视频| 91fuliwang| 色五婷婷| 996热re视频在线观看视频| 色天天综合色| 人妻丰满精品一区二区A片| aaaaaa片| 亚洲成人无码专区| 婷婷五月天另类网站| 玖玖婷婷色欲| 开心婷婷五月中文字幕组| 伊久大香蕉| 久久五月婷天天干| 六月色 亚洲| 色五月婷婷影院| 丁香五月天婷婷大香蕉| 久热这里只有精品在线| 色色综合五月| 丁香激情四射| 丁香五月天在线视频| 五月丁香综合网| tingtingzonghewang| 超碰妻人人| 色五月激情五月| 狠狠人妻色综合| 夜夜爽天天爽| 五月四色婷婷| 97热久久| 人人操av| 婷婷五月天BBw| 天天综合久久| 色婷婷丁香五月| 天天 青草 丝袜制服 在线| 婷婷WWW久久| 亚欧州精品视频| 五月丁香婷婷无码中文| 丁香婷婷激情四射五月| 亚洲啪啪视频| 天天综合干| 97婷婷久久丁香| 在线视频你懂得| 狠狠操天天操天天操| 久热这里| 69热在线| av五月天婷婷丁香| 色~性~乱~伦~噜| 天天日狠狠| 久久婷婷五月综合色天| 这里只有精品免费| 色丁香五月天婷婷| 五月天激情综合在线| 天天日天天肏天天奸| 婷婷在线播放| 婷婷一本和五月丁香| 五月天婷婷涩涩| 开心五月网 | 欧美日韩一区二区三区四区| 97操碰| 久草x色在线观看99| 五月丁香操婷逼| 成人婷婷五月| 伊人婷婷综合| 99久久超级| 粉嫩av懂色av蜜臀av熟妇| 五月的丁香六月的婷婷| 丁香五月色五月| 国产精品18久久久| a在线观看| 日日夜夜小色哥| 91操碰| 青青久久91| 五月婷婷色| 中文av网| 丁香五月天精品| 色婷婷免费观看| 天天色中文字幕女优AV| 久久综合五月天| www天天色天天射| 五月天婷婷自拍图片在线观看| 都市激情亚洲| 91夫妻网站九色| www激情| 亚洲国产精品VA在线看黑人| 99热这里只有精品一| 五月丁香婷婷综合网| 久久久久九九九九视屏小说88| 丁香婷婷五月| 热99在线精品| 综合色激情| 美女要搞搞天天搞搞搞网站| 久久久中文| 麻豆精品| 人人视频人人干人人做| www,欧美干干干干干干| 国产亚洲色婷婷久久99精品91| 久久婷婷五月综合色天| 变态 另类 在线| 另类激情综合| 91Chinese在线| 色五月激情五月开心五月| 婷婷深爱网| 久久这里只有精品07| 91精品久久久久久久| 六月婷婷视频| 狠狠色婷婷丁香五月| 国产免费性爱| 99国产精品久久久久久久久久久| 色香欲综合| 婷婷色九月| 五月丁香亭亭| 色婷婷五月综合| 亭亭五月天成人| 日韩精品色| \\五月天婷婷激情| 九九视频这里只有精品在线播放| 99久久亚洲精品视频| 97精品在线| 婷婷色操| 精品久热69| 91xxxx九色| 色五月色五天色情网址| 丁香五月天社区婷婷| 97超级碰人人| 操日本99| 婷婷丁香色女人| 伊人久久丁香狠狠婷婷综合香蕉 | 日日操夜夜撸| 天天做天天爱| 国产精品色婷婷久久久精品| 色五月偷偷| 亚洲成人无码网站| 丁香激情网| 99热99干| 久久五月天婷婷| 欧美日韩aaa| 五月综合激情网| 开心婷婷五月| 99只有精品| 国产精产国品一二三在观看| 国产古装妇女野外A片| 亚洲国产精品VA在线看黑人| 久久久久久久久久久-久五月天婷婷| 香蕉久久av一区二区三区| 日本少妇裸体做爰高潮片| 九九综合九| 亚洲AV无码成人电影| 亚洲9久久精品| 99热天堂| www.91.com黄| 99在线观看精品视频| 成人av免费观看| 久久久国产精品黄毛片| 亚洲AV久久久久久久久久久久久久久久 | 99热日本| 夜夜骑天天玩天天日| 五月婷婷六月丁香在线| 久99久在线观看| 99热官网精品在线| 国产精品天天狠天天看| 色色9 9| 99热欧美精品| 婷婷五月天久久| 丁香六月婷婷缴情欧美| 五月久久亚洲| 五月婷婷开心网| 五月婷婷久久综合| 色婷婷成人做爰A片免费看网站 | 天天插天天干| 99热这里只有精品22| 久久小视频| 久久久久久久久18久久| 久久99精品久久久久子伦| 99视频内射三四| 五丁香激情综合| 五月婷婷六月丁香在线视频| 99久久久久久| 精品夜夜澡人妻无码AV| 欧美婷婷九月| 色五月天.con| 可以免费看的av网站| 五月婷视频| 夜夜谢天天干| 日本波多野结衣视频| 欧美日韩成人在线观看| 五月丁香网av| 五月婷婷丁香瑟瑟视频| 五月丁香六月婷婷久久| 婷婷五月丁香图片人人操| 久草五月天| 亚洲综合激| 日日夜夜狠狠操| 天天综合在线网| 九九婷婷热| 91精品无码| 五月丁香亚洲综合网| 无码色| 伊人无码高清| 在线观看免费狠狠色丁香香综合 | 五月丁香综合激情在线观看| 中文字幕色色| 思思热99热| 夜色爱爱亚洲| 日韩黄在免| 超碰在线免费9| 五月丁香成人| 五月婷婷三级| 99热伊人综合| 婷婷五月成人色综合| 五月天婷婷激情小说电影| 丁香六月啪| 九9九9无码| 婷婷五月天视频小说| 亚洲性爱电影| 色色色色色色色五月| 日本综合久| 综合在线色婷婷| 内射爽无广熟女亚洲| 亚洲AV第二区国产精品| 天天干天天色天天干| 天天干夜夜想| 91xxxx九色| 少妇久久诱惑视频| 久久伊人五月天| 久久青青日本视频| 六月丁香婷婷尤物| 99热这里只有精品3| 97超级操操| 五月丁香六月婷婷亚洲| 九九热在线视频| 久热69| 成人视频婷婷| 成人无码髙潮喷水A片| 九色视频91| 岛国av网站| 色综合色香蕉网| 丁香激情五月综合网| 色玖玖爱| 久xxxx| 天天综合网网欲色| 成人美女网| 九九综合视频在线观看| 九九婷婷综合| 精品九九网| 婷婷五月丁香综合人妻| 日欧一片内射VA在线影院| 热99国产精品| 久操无码| 怡春院久操| 天天插综合| 91av成人| 婷婷伊人久久综合| 国产精品美女久久久久AV超清 | site:hcxsz888.com| 97干在线播放| 亚洲AV无码影院| 婷婷五月天激情五月天深爱五月天| AA片在线观看视频在线播放| 男人的天堂999| 97人人干人人操| 色婷另类| 国产无人区大片| 性爱激情小说AV五月丁香花| 99热国产这里只有精品| 丝雨一区二区| 日本五月视频| 91VIP在线观看| 婷婷五月天影院| 99精品视频在线观看免费| 亚洲第一成人无码A片| 亚洲天堂无码| 激情五月天在线免费美女视频| 伊人大香久久| 五月激情久久综合网| 毛片九九九九九九九九18| 免费观看的AV| 色五月婷婷在线观看第一页舔| 综合热无码| 国产免费性爱| 思思热久久爱| 亚洲精品九九| 怡红院视频| 欧美日韩中国| 五月激情小说| 狠狠干综合网| 婷婷精品免费久久| 婷婷五月色| 激情综合一| 99 热| 五月天开心网| 天天插轮理| 一起草AV入口| 色六月视频| 日韩AV在线免费| 天天爽夜爽| 精品99在线看| 五月丁香| 久久er+| 婷婷五月激情黄色| 久草五月天| 五月丁香久久色| 任你日视频| 色色操| 国产成人片| 五月天激情婷婷小说| 超碰99热在线观看| 国产激情在线| 久久99热只有精品| 少妇伦子伦精品无吗| 亚洲综合色棒| 99超碰在线观看| 丁香九月婷| 思思热99er在线视频| 清纯唯美 激情四射| 五月丁香天堂网| 成人综合视频在线| 五月激情视频| aaa日韩| 99色五月| 丁香五月综合| 播五月丁香六月| 精品99在线观看| 丁香五月天激情| 这里只有视频精品| 丁香婷婷久久五月天| 99热99精品| 色色色99韩| 欧在线一区| 久热综合| 五月天婷婷色播在线网| 亭亭玉月丁香| 天天日天天色| 欧美婷婷五月| 亚洲旡码| 国产XXXX搡XXXXX搡麻豆| 99精品福利视频| 超碰女人天堂| 日韩精品视频中文字幕| 婷婷五月天天爽| 丁香六月色婷婷欧美| 丁香五月婷婷操逼| 欧美97色| 天天成人综合视频| 婷婷爱爱蜜臀天天操| 四LLL少妇BBBB槡BBBB| 无码色色色| 深爱激情网五月| 超级碰人人操人人干| 久久怡红院| 激情欧美丁香五月| 人人亚洲| 激情AV中文| 91中文在线| 伦乱天堂| 免费黄网不卡AV| 影音先锋色婷婷| 色色色色色色综合网| 99久在线视频| 亚洲丁香网| www.超碰在线| 色亭亭丁香五月天| 色情成人五月天| 99热.com| 五月色无码| 婷婷五月色综合| 色色色九九九五月婷婷| 色婷婷AAA| 99国产小视频| 婷婷她六月天| 日韩一级网站| 日本一级淫| 国产一级片| 日本五月婷婷| 五月婷婷五月天天| 九热视频| 亚洲蜜乳AV| 亚洲欧美在线观看| 国产99久久久| 色婷婷狠狠| 在线五月色播| 99热最新| 九月大香蕉| 在线看的免费网站| 99色综合| 激情中文在线| 五月婷婷之美女图片| 色情·com| 97视频久久| 黄色91在线观看| 色六月 婷婷| 亚洲人人操| 玖玖综合网| 日日杆天天| 欧美激情凹凸丁香网| 色五月丁香总合网| 久久久久亚洲AV成人无码电影| 色99欧洲色19| 婷婷D区| 成人丁香五月| 亚洲九区| 九色无码| 激情深爱综合网| 色小说五月婷婷| 伊人五月婷婷| 五月花综合| 9999三级片| 久婷婷色| 五月丁香婷婷99| 欧美,日韩成人在线| 性色做爰片在线观看WW| 婷婷五月天激情网| 五月丁香| 日韩无码专区| 一起草Av| 在线中文亚洲| 丁香五月欧美午夜视频| 精a品a| 婷婷丁香五月在线播放| 97五月天婷婷| aaa日韩| 五月丁香色婷| 色婷婷五月综合在线| 狠狠操天天操综合| 99在线观看视频蜜臀| 九九视频这里是精品五月| 丁香色五月婷婷17C| 色情综合网| 色婷婷久久| 久久久久9| 99综合久久| 大香蕉五月丁香| 五月色婷| 午夜大香蕉| 日本片日本片祼观看网站在线看中文版网页在线看 | 99ri在线| AV九九| 26uuu国自产精品| 五月天日日操夜夜操 | 99视频91| 另类激情码| AV在线免费播放| 欧美人人操| 99精品久久| 热九九在线| www.99热最新视频8| 一个色的综合| 婷婷六月天精品| 婷婷五月激情欧美大胆视频| 人妻尝试久久久久久久久久久久| anquye五月| 狠狠操婷婷| 欧美这里只有精品| 丁香激情四射| 国产亚洲在线观看| 超碰人人色| 图片区 小说区 区 亚洲五月 | 丁香五月天.com| 日韩高清成人| 青青热视频| 久久亚洲网| xxx日本东京热| 色综合色综合网| 六月丁香婷婷综合在线| 99色中文| 色情五月综合婷婷| 日本色色影片| 91日综合欧美| 狼人婷婷综合| 丁香六月激| 五月天成人伊人| 99成人免费视频| 五月天婷婷基地| 九色视频91| 国产美女无遮挡裸体毛片A片 | 亚洲偷| 六月婷在线| 日韩一级A片黄色| 日日操夜夜爽白洁| 五月婷婷九| 99热6这里只有精品| 999热在线视频| 色婷婷电影网| 97成人丁香| 无码髙清| 超碰三级秋霞| 丁香色情五月综合网站| 99热成人精品网站| 996er热| 婷婷五月,综合伊人| 中日韩狠狠色| 九九热99re8热免费观看 | 婷婷五月色| 久久全色| 五月天激情小说| 久久婷婷亚洲五月天| 五月天成人综合| 婷婷五月情| www...com黄在线观看| 丁香 久久| 五月天婷婷在线啪啪视频| 婷婷99狠狠躁| 成年人丁香五月| 99婷婷综合| 91九色首页| 亚洲狠狠狠| 色综合com| 色就色94欧美setu| 超碰91av| 丁香六月天婷婷开心综合| 婷婷综合视频| 欧美性生交A片免费看| 青青草原伊人网| 色婷婷国色天香综合| 激情网婷婷五月天| 亚洲精品V天堂中文字幕| 综合www色| 色婷婷视频| 99色精品| 日韩AV中文在线观看| 九色91国产| 婷婷五月天男人影院色色网| 丁香色婷婷| 久久亭亭电影| 色五月天天在线观看资源站| 亚洲视频色婷婷| 精品一二三区久久AAA片| 91九色国产熟女| 丁香五月激情六月综合| 色久九| 31色区视频免费看| 九九家庭影院| 日韩综合久| 激情AV综合| 久久99综合| 538在线精品| 国产精产国品一二三在观看| 综激情网| 婷婷五月天成人小说| 99热精品在线| 婷婷五月精品中文字幕| 伊人午夜综合色啪| 99精品无码| 狠狠色五月| 五月丁香六月激情综合在线| 婷婷操逼| 综合玖玖偷拍| 婷婷激情5月| 九九色精品| 女婷久久| 色噜噜狠狠一区二区三区| 性欧美大战久久久久久久83| 色人久久| 99re在线视频| 久草嫩草在线观看| 欧美黑人巨大猛烈cuckold| 99爱在线精品视频免费观看| 五月婷婷,狠狠操| 丁香五月激情综合啪啪| 中文字幕日产A片在线看| 色婷久久| 97亚洲婷婷| 亚洲在线播放| 五月欧美色色五月| 日日日日日| 91久久久久久| 久婷婷婷| 免费人人操| 激情五月深爱婷婷| 日韩黄色影院| 情欲综合网| 天天插天天插| 丁香婷婷色五月| 国产97色在线| www激情网站| 97热这里只有精品| 91/九色黑人| 26uuu91| 少妇性BBB搡BBB爽爽爽视頻| 亚洲人人96@| 人人摸人人摸| 成人片在线播放| 婷婷成人综合| 琪琪色五月天| 99狠狠操一| 九色激情网| 丁香五月婷婷五月天| 丁香五月九九| 色中色综合| 五月色丁香婷婷综合| 婷婷五亚洲| 国产免费一区二区三州老师F1…… | 色色丁香| 激情五月天婷婷| 激情色色| 色色色色五月| 激情网第九色| site:pnnrt.com| www.婷婷五月天,com| 五月天激情国产综合婷婷| 国产亚洲99久久精品| 六月色色| 久久久人妻不卡| 开心五月网 | 国产成人精品一区二三区熟女在线| 天天摸天天舔天天爽| 开心五月深爱五月| 丁香婷五月天| 婷婷五月欧美综合| 激情开心五月亚洲| 一起操最新网址| 99久久性爱| 《久久综合九色综合97婷婷| 14色综合婷婷| 日本3级片偷拍网站| 五月天另类小说| 成人五月天色天堂| 亚洲精品又粗又大又爽A片| 婷婷开心综合人妻小说网址| 欧美久久九九| 五月天婷婷亚洲| 中文字幕av亚洲| 日韩啪啪视频| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 99热只有| 噜色精品| 三日本无码| 五月天久久91| 国产1区2区3区| 九九热99热| 五月综合婷婷网| 91热久88| 在线观看亚洲AV| 九色PORNY9l原创自拍| 99热综合| 五月婷婷伊人在线| 中文字幕性爱视频| 97在线视频人妻九色| 欧美成人无码高清一区二区三区| 无码少妇高潮喷水A片免费| 久久精品亚洲一级牲爱综合| 4399欧美另类视频| 天天色色天天| 六月婷婷日| 人人草碰| 久久久网站| 国产va在线视频| 亚洲AV日韩AV永久无码网站| 日本婷久久| 538在线| 天堂网亚洲色图| 激情综合区| 色国产五月| 91碰碰碰久久久久| 激情九月婷婷| 99视频在线观看视频| 婷婷五月丁香色播| av人人干| 五月婷婷丁香狠狠撸久久| 97色在线观看视频| 97色吧| 99视频在线观看网址| 国产 码在线成人网站| 色五月色综合| 九九亚洲综合| 超碰AAAAAAV| 99热热热国产超碰| 99在线精品观看99| 五月婷婷综合在线视频小说| 99ri国产| 1级欧美日韩| 91日本在线观看| 九九热在这里只有精品| 99噜噜| 99原创自拍视频在线观看| 91se在线观看| 五月丁香亚洲五月| 人妻aV在线| 三年高清大片免费观看国语| 五月天激情网图片| 亚洲色婷婷激情| 国产性爱一级| 成人国产欧美大片一区| 少妇搡BBBB搡BBB搡毛茸茸 | 午夜青草资源| 久久天堂网| 丁香五月天大香蕉啪啪| 五月天色图| 丁香五月婷婷激情蜜桃| 婷婷五月丁香基地在线视频官网| 狠狠狠狠狠狠草| 五月丁香激情综合网| 欧美α√| 亚洲色欲欧美一区二区三区| 欧洲S级在线观看| 免费看欧美成人A片无码| 激情六月天婷婷| 99久久er| 婷婷她六月天| 激情久久月| 成人做爰黄A片免费看直播室男男 久草热8精品视频在线观看 | 九九大香视频| 99精品久久久久久久久| a网站免费观看| 色婷婷成人| 六月丁香射婷婷欧美色图片| 性爱五月丁香| 97人人操人人插| 成人在线视频网| 五月丁香六月婷婷久久肏| 久噜久噜| 伍月婷婷免费视频| 久久婷网| 天天综合色99| 九八Av| 99热6精品| 狠狠爱五月婷婷| 欧美草久久五月天91| 色色色99韩| 先锋五月婷婷丁香草草| 97超级碰碰碰| 久9热在线免费观看| 国产高潮A片羞羞视频涩涩|