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

ARTICLE DETAIL

資訊詳情

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

FPGA等精度頻率計(jì)設(shè)計(jì):原理、Verilog實(shí)現(xiàn)與調(diào)試實(shí)戰(zhàn)

FPGA等精度頻率計(jì)設(shè)計(jì):原理、Verilog實(shí)現(xiàn)與調(diào)試實(shí)戰(zhàn) 做了快十年測(cè)量相關(guān)的嵌入式項(xiàng)目我最大的一個(gè)感受是頻率計(jì)這東西原理看著簡(jiǎn)單做起來(lái)全是坑。尤其是一開始我用最常規(guī)的“直接計(jì)數(shù)法”寫了個(gè)FPGA頻率計(jì)低頻段測(cè)出來(lái)慘不忍睹1 kHz信號(hào)在1秒閘門里只能數(shù)到幾千個(gè)脈沖分辨率差到?jīng)]法看。后來(lái)改成等精度頻率計(jì)reciprocal frequency counter才把1 Hz到幾十MHz的測(cè)量精度真正拉平。這篇文章就把我當(dāng)時(shí)從原理分析、Verilog模塊劃分到硬件調(diào)試翻車的全過(guò)程完整復(fù)盤一遍。工程里幾個(gè)核心模塊的源碼我會(huì)貼在后面給正在做頻率計(jì)類課程設(shè)計(jì)、或者想在自己系統(tǒng)里加一個(gè)高精度測(cè)頻模塊的朋友做個(gè)參考。內(nèi)容是項(xiàng)目實(shí)戰(zhàn)向的不會(huì)只丟給你一堆代碼重點(diǎn)會(huì)放在“為什么這樣設(shè)計(jì)”和“調(diào)試時(shí)到底在查什么”上。1. 直測(cè)法為什么測(cè)不快閘門時(shí)間與量化誤差同漲同跌很多人一開始接觸頻率計(jì)用的都是最樸素的思路給一個(gè)1秒的閘門信號(hào)數(shù)這1秒內(nèi)被測(cè)信號(hào)來(lái)了多少個(gè)上升沿頻率自然就是計(jì)數(shù)值。原理聽著沒(méi)問(wèn)題可一旦真的拿去做寬范圍測(cè)量馬上就會(huì)發(fā)現(xiàn)這個(gè)方案有硬傷。1.1 直接計(jì)數(shù)法的“兩頭吃虧”直接計(jì)數(shù)法的公式是fx N / Tgate其中N是閘門內(nèi)被測(cè)脈沖個(gè)數(shù)。這個(gè)方案在測(cè)高頻時(shí)很舒服比如測(cè)10 MHz信號(hào)1秒閘門里能數(shù)到10,000,000個(gè)脈沖分辨率和精度都不錯(cuò)。但測(cè)低頻就尷尬了測(cè)一個(gè)1 kHz的信號(hào)1秒閘門里只有1000個(gè)脈沖分辨率直接掉到1 Hz量級(jí)測(cè)1 Hz信號(hào)1秒里只能數(shù)到1個(gè)脈沖誤差直接是100%甚至測(cè)不出來(lái)。那有人說(shuō)我反過(guò)來(lái)用“周期法”行不行用基準(zhǔn)時(shí)鐘去量被測(cè)信號(hào)一個(gè)周期有多長(zhǎng)再取倒數(shù)。這個(gè)方案測(cè)低頻確實(shí)很準(zhǔn)但測(cè)高頻時(shí)一個(gè)周期只有幾十納秒基準(zhǔn)時(shí)鐘也數(shù)不了幾個(gè)數(shù)誤差又上來(lái)了。所以直接計(jì)數(shù)法和周期法本質(zhì)上是一回事只是把“數(shù)脈沖”和“數(shù)周期”這兩件事放到了不同頻率段。無(wú)論你用哪種都會(huì)遇到“高頻好用低頻崩、低頻好使高頻廢”的問(wèn)題。根因在哪兒在于計(jì)數(shù)對(duì)象本身太不穩(wěn)定——高頻時(shí)脈沖太密低頻時(shí)脈沖太稀一個(gè)閘門里永遠(yuǎn)只有一小段有效信息。1.2 量化誤差的數(shù)學(xué)本質(zhì)1/N不可逃如果非要用一句話概括直接計(jì)數(shù)法為什么不行那就是它的量化誤差公式太苛刻Δfx / fx ±1 / NN是閘門內(nèi)測(cè)到的脈沖數(shù)。要提高精度只能加大閘門時(shí)間或者倍頻被測(cè)信號(hào)。比如測(cè)1 kHz信號(hào)想要萬(wàn)分之一誤差N至少要10,000也就是閘門至少10秒想要十萬(wàn)分之一就得等100秒。這在工程上基本不可接受。我當(dāng)時(shí)算完這個(gè)公式第一反應(yīng)是能不能想辦法讓閘門內(nèi)的N永遠(yuǎn)足夠大換句話說(shuō)不管被測(cè)頻率是1 Hz還是10 MHz我能不能都讓閘門內(nèi)被測(cè)信號(hào)剛好包含一個(gè)非常大的“可數(shù)脈沖數(shù)”這就是等精度測(cè)頻的核心出發(fā)點(diǎn)我不再直接數(shù)被測(cè)信號(hào)本身有多密而是把被測(cè)信號(hào)當(dāng)作閘門的“標(biāo)尺”用它的整數(shù)個(gè)周期去卡基準(zhǔn)時(shí)鐘。1.3 換一個(gè)思路讓被測(cè)信號(hào)自己決定測(cè)量窗口等精度測(cè)頻的關(guān)鍵設(shè)計(jì)思想就是讓測(cè)量窗口的開啟和關(guān)閉都發(fā)生在被測(cè)信號(hào)的上升沿上。預(yù)置一個(gè)“大致閘門時(shí)間”比如1秒但實(shí)際計(jì)數(shù)的窗口是從預(yù)置閘門開始后的第一個(gè)被測(cè)信號(hào)上升沿開始到預(yù)置閘門結(jié)束后的第一個(gè)被測(cè)信號(hào)上升沿截止。這樣一來(lái)實(shí)際測(cè)量的窗口天然就是被測(cè)信號(hào)周期的整數(shù)倍。在這個(gè)窗口里被測(cè)信號(hào)被數(shù)了多少個(gè)上升沿就是一個(gè)精確值沒(méi)有±1的量化誤差真正存在量化誤差的只?;鶞?zhǔn)時(shí)鐘在那個(gè)窗口里數(shù)出來(lái)的脈沖數(shù)。因?yàn)榛鶞?zhǔn)時(shí)鐘通常非常高100 MHz、200 MHz甚至更高窗口哪怕是0.5秒基準(zhǔn)時(shí)鐘也能數(shù)到5000萬(wàn)個(gè)數(shù)量化誤差就被壓到了天花板級(jí)別。2. 等精度測(cè)頻的系統(tǒng)結(jié)構(gòu)與同步使能設(shè)計(jì)理清了原理接下來(lái)就是怎么用FPGA把這套邏輯落地。這里有一個(gè)必須想清楚的點(diǎn)預(yù)置閘門和實(shí)際計(jì)數(shù)閘門不是同一個(gè)信號(hào)。很多人寫代碼時(shí)直接把“1秒閘門”拿來(lái)當(dāng)計(jì)數(shù)使能那就又變成直接計(jì)數(shù)法了。2.1 頂層數(shù)據(jù)流三個(gè)模塊之間的握手關(guān)系等精度頻率計(jì)在FPGA里至少需要幾個(gè)核心部分預(yù)置閘門發(fā)生器、被測(cè)信號(hào)邊沿同步檢測(cè)、基準(zhǔn)時(shí)鐘計(jì)數(shù)器、被測(cè)信號(hào)計(jì)數(shù)器、數(shù)據(jù)鎖存與計(jì)算、顯示輸出。它們之間的數(shù)據(jù)流關(guān)系大概是這樣預(yù)置閘門發(fā)生器產(chǎn)生一個(gè)寬度可配置的pretime_gate信號(hào)本質(zhì)就是一個(gè)按基準(zhǔn)時(shí)鐘計(jì)數(shù)的定時(shí)窗口。被測(cè)信號(hào)clk_fx_in進(jìn)入FPGA后先經(jīng)過(guò)兩級(jí)同步寄存器消除亞穩(wěn)態(tài)再做上升沿檢測(cè)產(chǎn)生一個(gè)單周期的脈沖信號(hào)sig_rise。核心的狀態(tài)機(jī)負(fù)責(zé)生成真正的計(jì)數(shù)使能gate_en當(dāng)pretime_gate為高之后等待第一個(gè)sig_rise然后立刻拉高gate_en當(dāng)pretime_gate變低之后繼續(xù)等到一個(gè)sig_rise再拉低gate_en。基準(zhǔn)計(jì)數(shù)器在gate_en期間對(duì)基準(zhǔn)時(shí)鐘計(jì)數(shù)得到N0被測(cè)信號(hào)計(jì)數(shù)器在gate_en期間對(duì)sig_rise脈沖計(jì)數(shù)得到Nx。gate_en下降沿到來(lái)時(shí)把N0和Nx同時(shí)鎖存進(jìn)寄存器然后輸出fx Nx × f0 / N0。這套流程里最關(guān)鍵的就是第3步。gate_en的開啟和關(guān)閉完全由被測(cè)信號(hào)的上升沿來(lái)“框定”而不是由預(yù)置閘門直接框定。這也是“等精度”三個(gè)字的核心來(lái)源。2.2 參考時(shí)鐘的穩(wěn)定度決定了精度的天花板等精度測(cè)頻雖然消除了計(jì)數(shù)法對(duì)低頻信號(hào)的不友好但它并沒(méi)有消除對(duì)參考時(shí)鐘的依賴。你可以把fx Nx × f0 / N0里的f0理解成一個(gè)“乘法比例因子”基準(zhǔn)時(shí)鐘只要自己漂了測(cè)量結(jié)果一定跟著漂。所以工程上有一個(gè)優(yōu)先級(jí)參考時(shí)鐘的穩(wěn)定度 代碼邏輯的正確性。我當(dāng)時(shí)用的是開發(fā)板上板載的普通晶振頻率穩(wěn)定度大概是幾十ppm量級(jí)配合FPGA內(nèi)部PLL倍頻到200 MHz做參考時(shí)鐘。這樣做出來(lái)的精度已經(jīng)能到10^-7量級(jí)左右。如果產(chǎn)品里要求更高下一步就是換溫補(bǔ)晶振TCXO或者恒溫晶振OCXO把設(shè)備本身的時(shí)基穩(wěn)定度拉上去。有一個(gè)容易踩的坑不要拿被測(cè)信號(hào)自己做過(guò)零檢測(cè)形成的“邊沿”去當(dāng)時(shí)鐘信號(hào)再用這個(gè)時(shí)鐘去驅(qū)動(dòng)計(jì)數(shù)器邏輯。原因有兩個(gè)一是被測(cè)信號(hào)本身可能有噪聲沿位置抖動(dòng)會(huì)直接污染計(jì)數(shù)二是跨時(shí)鐘域握手很容易引入亞穩(wěn)態(tài)。更穩(wěn)妥的做法是把被測(cè)信號(hào)只當(dāng)作一個(gè)“異步輸入”在參考時(shí)鐘域內(nèi)同步化之后作為脈沖使能去加計(jì)數(shù)而不是作為真正的時(shí)鐘源。2.3 預(yù)置閘門發(fā)生器與邊沿檢測(cè)模塊預(yù)置閘門發(fā)生器實(shí)現(xiàn)起來(lái)很簡(jiǎn)單本質(zhì)就是按參考時(shí)鐘計(jì)數(shù)的可配置定時(shí)器。以100 MHz參考時(shí)鐘為例想要0.1秒閘門就數(shù)10,000,000個(gè)時(shí)鐘周期想要1秒閘門就數(shù)100,000,000個(gè)周期。module gate_gen ( input wire clk_ref, // 參考時(shí)鐘例如100MHz input wire rst_n, input wire [31:0] gate_cycles, // 預(yù)置閘門對(duì)應(yīng)的時(shí)鐘周期數(shù) output reg pretime_gate ); reg [31:0] cnt; always (posedge clk_ref or negedge rst_n) begin if (!rst_n) begin cnt 32d0; pretime_gate 1b0; end else if (cnt gate_cycles - 1) begin cnt 32d0; pretime_gate ~pretime_gate; // 翻轉(zhuǎn)形成高/低閘門 end else begin cnt cnt 1b1; end end endmodule注意這里我把預(yù)置閘門做成了周期翻轉(zhuǎn)模式預(yù)置閘門的高電平寬度就是測(cè)量窗口的“大致時(shí)間”低電平寬度也相同。這樣連續(xù)測(cè)量時(shí)高電平結(jié)束一次就產(chǎn)生一組測(cè)量結(jié)果低電平期間可以用來(lái)做數(shù)據(jù)鎖存和顯示刷新給了下游時(shí)間余量。邊沿檢測(cè)模塊同樣不復(fù)雜但細(xì)節(jié)值得多說(shuō)一句module edge_sync ( input wire clk_ref, input wire rst_n, input wire sig_in, output reg sig_r2, output wire sig_rise ); reg sig_r1; always (posedge clk_ref or negedge rst_n) begin if (!rst_n) begin sig_r1 1b0; sig_r2 1b0; end else begin sig_r1 sig_in; sig_r2 sig_r1; end end assign sig_rise sig_r2 ~sig_r1; // 檢測(cè)sig_r2的上升沿 endmodule兩次寄存器的目的是把被測(cè)信號(hào)同步到參考時(shí)鐘域避免第一級(jí)寄存器采到變化的信號(hào)時(shí)出現(xiàn)亞穩(wěn)態(tài)。這里有一個(gè)很多教程不會(huì)寫、但實(shí)際非常關(guān)鍵的細(xì)節(jié)邊沿檢測(cè)用的是sig_r2和~sig_r1也就是檢測(cè)同步寄存器的輸出沿而不是直接對(duì)原始輸入做邊沿檢測(cè)。如果直接拿原始輸入做邊沿檢測(cè)那個(gè)沿和參考時(shí)鐘沒(méi)有任何同步關(guān)系極容易在后續(xù)組合邏輯里產(chǎn)生毛刺。2.4 計(jì)數(shù)器與鎖存對(duì)被測(cè)信號(hào)計(jì)數(shù)不是拿它當(dāng)clk接下來(lái)是計(jì)數(shù)器部分。最經(jīng)典的做法有兩種一種是真的把被測(cè)信號(hào)直接接到一個(gè)計(jì)數(shù)器的時(shí)鐘端另一種是把同步化以后的脈沖信號(hào)當(dāng)作計(jì)數(shù)使能。我強(qiáng)烈建議用后一種也就是被測(cè)信號(hào)的同步脈沖作為cnt_fx的加1使能而不是作為時(shí)鐘。原因有兩點(diǎn)。第一被測(cè)信號(hào)直接進(jìn)全局時(shí)鐘網(wǎng)絡(luò)會(huì)占用寶貴的時(shí)鐘資源而且信號(hào)質(zhì)量不可控第二如果有多個(gè)計(jì)數(shù)器需要在同一測(cè)量窗口內(nèi)同時(shí)工作拿異步信號(hào)當(dāng)時(shí)鐘會(huì)導(dǎo)致不同模塊之間的時(shí)序關(guān)系非常難約束。而統(tǒng)一在clk_ref域內(nèi)做脈沖使能計(jì)數(shù)整個(gè)邏輯都是單一時(shí)鐘域RTL一眼就能看穿時(shí)序關(guān)系。計(jì)數(shù)使能gate_en的產(chǎn)生可以用一段簡(jiǎn)單的狀態(tài)機(jī)來(lái)實(shí)現(xiàn)預(yù)置閘門為高后等待第一個(gè)上升沿再開啟計(jì)數(shù)器預(yù)置閘門為低后等待下一個(gè)上升沿再關(guān)閉計(jì)數(shù)器。gate_en下降沿同時(shí)產(chǎn)生一個(gè)鎖存脈沖把N0和Nx寫入寄存器。這里值得注意的一個(gè)工程點(diǎn)是鎖存時(shí)序必須走寄存器同步不要用組合邏輯去直接觸發(fā)鎖存。很多第一次寫頻率計(jì)的人直接在賦值語(yǔ)句里讓鎖存器在gate_en下降沿讀數(shù)據(jù)結(jié)果下游計(jì)算模塊拿到的是還沒(méi)有穩(wěn)定的中間值顯示數(shù)字亂跳。正確做法是鎖存脈沖采用獨(dú)立的寄存信號(hào)在sig_rise確認(rèn)關(guān)閉窗口之后再打一拍確保N0和Nx都已經(jīng)完成最后一次遞增。3. Verilog模塊劃分與關(guān)鍵代碼同步使能邏輯是靈魂這一章我直接把工程里的模塊清單和幾個(gè)核心代碼片段整理出來(lái)。完整的工程除了下面這些模塊還包括數(shù)碼管掃描顯示、按鍵量程切換和簡(jiǎn)單濾波邏輯但最核心的測(cè)頻部分基本都在這里了。3.1 工程文件清單與模塊分工文件/模塊職責(zé)備注freq_meter_top頂層模塊完成信號(hào)例化與端口連接包含輸入引腳、按鍵、數(shù)碼管接口gate_gen預(yù)置閘門發(fā)生器寬度通過(guò)gate_cycles配置sync_gate_ctrl實(shí)際計(jì)數(shù)閘門狀態(tài)機(jī)根據(jù)預(yù)置門和sig_rise產(chǎn)生gate_enedge_sync被測(cè)信號(hào)雙級(jí)同步 上升沿檢測(cè)所有跨時(shí)鐘域信號(hào)都經(jīng)過(guò)這里counter_bankN0/Nx計(jì)數(shù)器與鎖存寄存器鎖存脈沖由sync_gate_ctrl給出calc_result用整數(shù)運(yùn)算計(jì)算顯示頻率值實(shí)際項(xiàng)目里我把計(jì)算放在了后級(jí)顯示模塊seg_display7段數(shù)碼管動(dòng)態(tài)掃描顯示8位有效數(shù)字的顯示緩沖這個(gè)模塊劃分是我反復(fù)調(diào)過(guò)之后的版本。最開始版本里我把預(yù)置閘門狀態(tài)機(jī)和邊沿檢測(cè)混在一個(gè)模塊里結(jié)果調(diào)試的時(shí)候一個(gè)問(wèn)題不知道是出在閘門狀態(tài)機(jī)還是出在同步邏輯上非常難定位。切成獨(dú)立模塊以后每個(gè)模塊都可以單獨(dú)用仿真波形驗(yàn)證排查問(wèn)題效率高很多。3.2 實(shí)際計(jì)數(shù)使能狀態(tài)機(jī)的代碼邏輯這一段是等精度頻率計(jì)的“靈魂”所在。我把它獨(dú)立成一個(gè)模塊就是為了讓那幾步“等一個(gè)被測(cè)沿再開/關(guān)門”的邏輯夠清晰module sync_gate_ctrl ( input wire clk_ref, input wire rst_n, input wire pretime_gate, input wire sig_rise, output reg gate_en, output reg lock_pulse ); localparam IDLE 2d0, OPEN 2d1, WAIT_CLOSE 2d2; reg [1:0] state; wire open_ready pretime_gate sig_rise; // 預(yù)置門高且被測(cè)沿到來(lái) wire close_ready ~pretime_gate sig_rise; // 預(yù)置門低且被測(cè)沿到來(lái) always (posedge clk_ref or negedge rst_n) begin if (!rst_n) begin state IDLE; gate_en 1b0; lock_pulse 1b0; end else begin lock_pulse 1b0; case (state) IDLE: begin gate_en 1b0; if (open_ready) state OPEN; end OPEN: begin gate_en 1b1; if (close_ready) begin gate_en 1b0; state IDLE; lock_pulse 1b1; end end endcase end end endmodule這個(gè)狀態(tài)機(jī)的流程說(shuō)白了就是“按信號(hào)節(jié)奏開門、按信號(hào)節(jié)奏關(guān)門”。lock_pulse會(huì)在關(guān)門那一刻打一拍給下游鎖存器提供一個(gè)明確的寫使能。你會(huì)看到這里面沒(méi)有專門為“預(yù)置門剛變高、第一個(gè)沿還沒(méi)來(lái)”設(shè)置暫停狀態(tài)因?yàn)閛pen_ready本身就是“預(yù)置門為高且被測(cè)沿到來(lái)”的組合條件只要當(dāng)前是IDLE拉高gate_en的時(shí)機(jī)就是預(yù)置門高電平期間的第一個(gè)被測(cè)沿完全符合需求。3.3 數(shù)據(jù)計(jì)算Nx、N0與f0之間的關(guān)系當(dāng)lock_pulse有效時(shí)counter_bank里已經(jīng)寄存了Nx和N0。計(jì)算頻率的公式是fx Nx × f0 / N0比如參考時(shí)鐘f0 100 MHz某次測(cè)量Nx 500,000N0 50,000,000那么fx 500,000 × 100,000,000 / 50,000,000 1,000,000 Hz也就是1 MHz。在FPGA里做這個(gè)除法工程量不大但需要想清楚數(shù)據(jù)位寬。N0最大可能到幾千萬(wàn)甚至上億Nx也同樣可能到幾百上千萬(wàn)所以至少要用32位計(jì)數(shù)器。而計(jì)算頻率時(shí)如果直接做64位乘法再除以N0綜合出來(lái)的資源也不會(huì)太大因?yàn)檫@是一次性的低速計(jì)算不是每個(gè)時(shí)鐘周期都跑。我實(shí)際用的是更省資源的方式給顯示模塊傳原始Nx和N0然后在顯示模塊里用整數(shù)除法配合移位把結(jié)果轉(zhuǎn)成BCD碼給數(shù)碼管。畢竟頻率計(jì)顯示的刷新率也就每秒幾十次用“慢速除法器 狀態(tài)機(jī)”完全夠用沒(méi)必要為這個(gè)功能專門上一個(gè)硬件除法器IP核。3.4 顯示刷新與測(cè)量節(jié)奏的配合這里有個(gè)容易被忽略的工程細(xì)節(jié)顯示刷新頻率和測(cè)量閘門時(shí)長(zhǎng)必須分開考慮。如果測(cè)量一次需要1秒數(shù)碼管卻每2毫秒掃描一次那不是問(wèn)題但如果顯示模塊在測(cè)量窗口尚未結(jié)束時(shí)就去讀計(jì)數(shù)器的當(dāng)前值看到的就是一堆還在跳變的數(shù)字看起來(lái)就像頻率計(jì)“不穩(wěn)定”。我的做法是在lock_pulse到來(lái)后先把Nx、N0鎖存進(jìn)一個(gè)“顯示數(shù)據(jù)緩沖”顯示模塊每2毫秒從緩沖里讀一次而不是直接讀計(jì)數(shù)器。這樣顯示出來(lái)的數(shù)字就是上一次測(cè)量已凍結(jié)的結(jié)果完全不會(huì)閃跳。加上動(dòng)態(tài)掃描數(shù)碼管本身有刷新頻率要求這個(gè)緩沖區(qū)的價(jià)值就體現(xiàn)出來(lái)了測(cè)量模塊和顯示模塊徹底解耦。4. 調(diào)試實(shí)錄自檢全對(duì)、外接信號(hào)卻偏差一個(gè)數(shù)量級(jí)的排查鏈路代碼寫完之后我原以為按原理圖接好線、編譯下載就能收工。結(jié)果真正上板調(diào)試的時(shí)候被一個(gè)現(xiàn)象折磨了一個(gè)下午用開發(fā)板自帶的信號(hào)測(cè)精度非常好換上外部信號(hào)發(fā)生器的信號(hào)低頻段誤差直接差了一個(gè)數(shù)量級(jí)。這個(gè)坑非常典型我把完整排查鏈路寫出來(lái)希望你能少走點(diǎn)彎路。4.1 先復(fù)現(xiàn)現(xiàn)象自檢源和外接源的對(duì)比開發(fā)板上一般會(huì)有一個(gè)由板上晶振分頻出來(lái)的固定信號(hào)比如10 MHz、5 MHz之類。我用自檢源測(cè)無(wú)論怎么換預(yù)置閘門誤差都穩(wěn)在10^-7量級(jí)數(shù)據(jù)非常漂亮。然后我把信號(hào)發(fā)生器輸出調(diào)到1 kHz方波接進(jìn)同一個(gè)輸入引腳結(jié)果測(cè)出來(lái)的頻率顯示成了1.024 kHz左右偏差超過(guò)百分之二。1024這個(gè)數(shù)字太顯眼了讓我立刻懷疑是不是計(jì)數(shù)器多計(jì)了24個(gè)脈沖。進(jìn)一步測(cè)試把信號(hào)發(fā)生器輸出調(diào)到100 kHz偏差變成了大約0.6 Hz調(diào)到10 MHz偏差又變得很小。很明顯偏差集中發(fā)生在輸入頻率較低、邊沿較緩的區(qū)間。這和代碼本身的量化誤差規(guī)律對(duì)不上因?yàn)槿绻橇炕`差頻率越低應(yīng)該越準(zhǔn)才對(duì)。于是我開始懷疑輸入通路本身在搞鬼。4.2 排查方向一自檢源為什么“騙人”第一反應(yīng)我想查是不是信號(hào)發(fā)生器的電平標(biāo)準(zhǔn)不匹配。因?yàn)殚_發(fā)板輸入引腳一般是3.3V LVCMOS標(biāo)準(zhǔn)而信號(hào)發(fā)生器輸出我習(xí)慣性設(shè)成了50歐姆負(fù)載下的高電平擺幅可能只有0到2V閾值判斷時(shí)可能會(huì)出現(xiàn)不穩(wěn)定的邏輯翻轉(zhuǎn)。但這里有個(gè)更深的原因自檢源和參考時(shí)鐘來(lái)自同一顆晶振、同一個(gè)時(shí)鐘樹它們之間的相位關(guān)系是固定的測(cè)量自然準(zhǔn)。外接信號(hào)發(fā)生器和參考晶振是兩套獨(dú)立時(shí)基一旦輸入信號(hào)邊沿不夠陡或者電平不夠干凈跨時(shí)鐘域同步時(shí)就會(huì)出問(wèn)題。所以自檢源通過(guò)只能證明代碼邏輯基本正確完全不能證明輸入通路可靠。排查的第一步是把信號(hào)發(fā)生器輸出調(diào)到CMOS電平標(biāo)準(zhǔn)、占空比50%、上升沿時(shí)間壓到最低重新測(cè)。結(jié)果偏差確實(shí)縮小了但沒(méi)完全消除。這說(shuō)明問(wèn)題不止在電平擺幅上。4.3 排查方向二輸入整形電路的遲滯與噪聲看示波器波形問(wèn)題變得很直觀信號(hào)發(fā)生器輸出的方波在1 kHz時(shí)經(jīng)過(guò)連接線和板上走線后上升沿帶有明顯的振鈴。在FPGA輸入緩沖器的翻轉(zhuǎn)閾值附近信號(hào)可能來(lái)回穿過(guò)閾值好幾次也就是所謂的“多次翻轉(zhuǎn)”。每一次超過(guò)閾值edge_sync都當(dāng)成一個(gè)上升沿于是Nx憑空多出幾十個(gè)甚至上百個(gè)。我原來(lái)的輸入電路非常簡(jiǎn)單信號(hào)進(jìn)來(lái)直接接FPGA引腳靠引腳內(nèi)部的上拉/下拉和施密特觸發(fā)器整一下形。低頻率下信噪比不足時(shí)這種簡(jiǎn)單整形根本壓不住振鈴。解決方案是做一個(gè)小型輸入調(diào)理前端信號(hào)進(jìn)來(lái)先經(jīng)過(guò)高速比較器比較器加一點(diǎn)正反饋電阻構(gòu)成遲滯再把比較器輸出接到FPGA引腳。遲滯的寬度大約設(shè)成幾十毫伏保證噪聲無(wú)法在閾值附近反復(fù)觸發(fā)。改完之后1 kHz信號(hào)讀到的Nx從“多出24個(gè)”變成了“完全不差”。這也是我在實(shí)際工程里最強(qiáng)烈的一個(gè)建議外接信號(hào)做頻率計(jì)輸入調(diào)理電路不是選項(xiàng)是必需品。4.4 排查方向三跨時(shí)鐘域同步寄存器的位置是否放對(duì)繼續(xù)深挖我還發(fā)現(xiàn)一個(gè)隱藏比較深的問(wèn)題。最早的代碼里我是把sig_in先接到計(jì)數(shù)器的時(shí)鐘端然后再在計(jì)數(shù)器內(nèi)部做同步。這樣即便同步邏輯本身沒(méi)問(wèn)題計(jì)數(shù)器時(shí)鐘端接收到的脈沖仍然來(lái)自外部信號(hào)域gate_en和clk_ref之間的時(shí)鐘關(guān)系在綜合時(shí)序分析里是沒(méi)法好好約束的。按照我前面建議的做法把edge_sync放在輸入引腳之后、計(jì)數(shù)邏輯之前會(huì)帶來(lái)一個(gè)立竿見影的好處整個(gè)計(jì)數(shù)邏輯完全在參考時(shí)鐘域里所有時(shí)序約束都變得清晰可查。改完之后我直接在時(shí)序報(bào)告里看到所有路徑都有明確的setup/hold余量而不是一堆“clock crossing warning”。這個(gè)改動(dòng)和遲滯整形加在一起才算真正把輸入通路的問(wèn)題清零。4.5 排查方向四測(cè)量窗口寬度與實(shí)際能達(dá)到的分辨率還有一個(gè)偏“參數(shù)配置”的坑。不到萬(wàn)不得已不要為了追求刷新速度把預(yù)置閘門設(shè)得太短。等精度測(cè)頻的理論量化誤差是|Δfx| / fx ≈ ±1 / (f0 × T實(shí)際)如果參考時(shí)鐘是100 MHz實(shí)際測(cè)量窗口是1毫秒那么誤差就只有10^-5量級(jí)看起來(lái)還行。但如果你用的是50 MHz參考時(shí)鐘、又開了10毫秒的短閘門誤差會(huì)掉到2×10^-5配合輸入整形不干凈顯示結(jié)果就會(huì)在最后一位上不停抖動(dòng)。我當(dāng)時(shí)為了調(diào)試方便把預(yù)置門設(shè)成了10毫秒結(jié)果發(fā)現(xiàn)測(cè)1 kHz信號(hào)的顯示結(jié)果總是在最后2到3位跳動(dòng)。后來(lái)我加了一檔“長(zhǎng)測(cè)”模式把預(yù)置門放大到1秒安定下來(lái)之后讀數(shù)穩(wěn)如磐石。經(jīng)驗(yàn)是調(diào)試階段用短閘門看邏輯通不通驗(yàn)收階段用長(zhǎng)閘門看精度夠不夠。5. 測(cè)量時(shí)間、顯示位寬與實(shí)用擴(kuò)展精度不是唯一指標(biāo)等精度頻率計(jì)做到這一步核心功能已經(jīng)穩(wěn)定了。但真正拿到項(xiàng)目里去用還有一些工程取舍需要想清楚。我把我在實(shí)測(cè)中積累的參數(shù)選擇經(jīng)驗(yàn)和擴(kuò)展思路也整理在下面。5.1 不同測(cè)量閘門下理論和實(shí)際能達(dá)到的精度以100 MHz參考時(shí)鐘為例不同預(yù)置閘門下理論量化誤差大約如下表預(yù)置閘門實(shí)際測(cè)量窗口約N0數(shù)量級(jí)理論量化誤差10 ms10 ms10^610^-6100 ms100 ms10^710^-71 s1 s10^810^-8這只是一次測(cè)量的量化誤差。放在實(shí)際環(huán)境里晶振本身的頻率穩(wěn)定度、輸入信號(hào)邊沿抖動(dòng)、溫度漂移都會(huì)疊加進(jìn)來(lái)。我用普通晶振做參考時(shí)鐘測(cè)1 kHz信號(hào)1秒閘門下的實(shí)測(cè)重復(fù)性大約在10^-7到10^-8之間也就是說(shuō)顯示出來(lái)的最后兩位偶爾會(huì)跳一下但前6位非常穩(wěn)定。這就完全滿足一般工程測(cè)量了。所以更實(shí)用的建議是如果設(shè)備工作在實(shí)驗(yàn)室環(huán)境、測(cè)量對(duì)象是靜止頻率采用1秒閘門如果是動(dòng)態(tài)掃頻、需要快速響應(yīng)的場(chǎng)景100毫秒閘門配合適當(dāng)位寬限制比硬撐1秒閘門更好用。5.2 顯示位寬與刷新速度的權(quán)衡8位數(shù)碼管實(shí)際能穩(wěn)定顯示的位數(shù)受限于閘門時(shí)長(zhǎng)。1秒閘門下100 MHz參考時(shí)鐘能分辨到10^-8顯示8位有效數(shù)字沒(méi)問(wèn)題100毫秒閘門下最多穩(wěn)定顯示6位。如果你在100毫秒閘門下強(qiáng)行顯示8位最后兩位就是純粹的數(shù)字噪聲除了讓讀數(shù)變“花哨”以外毫無(wú)意義。我在設(shè)計(jì)里加了一個(gè)簡(jiǎn)單的位寬控制按鍵循環(huán)切換“快速模式”100毫秒閘門顯示6位和“精確模式”1秒閘門顯示8位。這個(gè)交互設(shè)計(jì)簡(jiǎn)單粗暴但非常實(shí)用。測(cè)量?jī)x器最忌諱的就是給用戶看一堆沒(méi)有意義的變化數(shù)字有效數(shù)字個(gè)數(shù)必須和實(shí)際測(cè)量不確定度匹配。另外如果你希望把數(shù)據(jù)傳到上位機(jī)完全可以把Nx和N0通過(guò)串口發(fā)出來(lái)讓上位機(jī)做浮點(diǎn)計(jì)算。FPGA這邊只做計(jì)數(shù)計(jì)算交給上位機(jī)既省邏輯資源又減少了在FPGA里做除法帶來(lái)的位寬和舍入問(wèn)題。5.3 可擴(kuò)展的方向周期、脈寬與占空比等精度測(cè)頻的本質(zhì)是用被測(cè)信號(hào)的沿作為測(cè)量窗口的“標(biāo)尺”。沿著這個(gè)思路你能做的遠(yuǎn)不止頻率。比如把gate_en改成“測(cè)量連續(xù)兩個(gè)上升沿之間的時(shí)間差”就是高精度的周期測(cè)量把測(cè)量窗口改成“上升沿到下降沿”就是脈寬測(cè)量再結(jié)合頻率測(cè)量占空比也就出來(lái)了。我在這個(gè)工程之后把同一套同步計(jì)數(shù)結(jié)構(gòu)復(fù)用到了一臺(tái)簡(jiǎn)易脈沖參數(shù)分析儀里改動(dòng)很小核心的edge_sync和sync_gate_ctrl模塊基本原封不動(dòng)。這也是FPGA可重構(gòu)性的典型體現(xiàn)一套穩(wěn)定的時(shí)序骨架換一下計(jì)數(shù)目標(biāo)和狀態(tài)機(jī)約束就能衍生出好幾種測(cè)量功能。6. 關(guān)于調(diào)試工具和波形觀察的一點(diǎn)經(jīng)驗(yàn)結(jié)構(gòu)部分基本講完了最后補(bǔ)一點(diǎn)關(guān)于調(diào)試工具的心得。雖然代碼邏輯可以通過(guò)仿真驗(yàn)證但等精度頻率計(jì)的很多問(wèn)題只有接通硬件之后才能暴露。尤其輸入通路上的信號(hào)完整性問(wèn)題仿真里根本不可能出現(xiàn)。我的調(diào)試流程一般是先用一個(gè)干凈的方波信號(hào)源從1 Hz掃到幾十MHz每個(gè)數(shù)量級(jí)選幾個(gè)點(diǎn)用上位機(jī)或者數(shù)碼管人工記錄讀數(shù)和信號(hào)源設(shè)定值對(duì)比畫出誤差曲線。一旦某個(gè)頻段誤差突然變大立刻用示波器看那個(gè)頻段的輸入波形。大多數(shù)時(shí)候問(wèn)題都出在邊沿不夠陡、振鈴過(guò)大或者觸發(fā)電平不對(duì)上。調(diào)完輸入整形電路誤差曲線基本能做到全程平直。如果你做的是課程設(shè)計(jì)沒(méi)有專門的信號(hào)發(fā)生器也可以用另一塊FPGA板輸出頻率可調(diào)的方波來(lái)當(dāng)信號(hào)源。關(guān)鍵是保證輸出的信號(hào)邊沿干凈盡量用邏輯電平輸出而不要用灌電流驅(qū)動(dòng)長(zhǎng)線。等精度測(cè)頻這個(gè)主題聽起來(lái)是教科書里的經(jīng)典電路但真正寫到FPGA里、跑到真實(shí)信號(hào)上才發(fā)現(xiàn)原理理解和工程實(shí)現(xiàn)之間隔著整整一條“調(diào)試棧”。如果你正在被頻率計(jì)的顯示亂跳、低頻測(cè)不準(zhǔn)、高頻毛刺這些問(wèn)題折磨希望這篇復(fù)盤能幫你少走點(diǎn)彎路。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
中文字幕在线日亚洲9| 五月丁香六月| 天天拍久久| 男女激情久久| 亚洲成人免费在线| 丁香五月天无码| 激情久久久久久久久久| www,setingting| 久久草中文日韩欧美| 丁香午月AV中文字幕| 亚洲综合碰| 色99网| 丁香婷婷六月天| 精品综合爱| 狠狠操狠狠插| 五月婷婷激情网| 六月丁香婷婷在线波多| 99精品视频在线6| 久久精品女人天堂AAA| 婷婷五月成人| renrencaoav| 狠狠色97| 99热久草| 美臀自射自家人妻| 婷婷 久综合| 日韩无码人妻一区二区| 久久婷婷五月天丁香| 色久女| 亚洲人妻一区二区| 激情综合综合综合| 激情丁香五月婷| 97人人操| 色婷婷综合久久久久| 五月天啪啪网| 大香蕉视频婷| 丁香五月 无码| 婷婷久久综合| 日韩中文欧美| 人妻少妇色综合| 激情中文在线| 成人网站免费在线播放| 久热AA| 色色色色网| 亚洲 在线 性爱 | 丁香五月欧美色综合| 日本性视频| 成人无码精品1区2区3区免费看| 日本婷久久| 久久偷拍综合五月天| 天天天天天操| 99热99热不卡| 色色性爱视频| 97色97干| 狠狠狠狠狠狠狠狠| 色噜噜狠狠色综无码久久合欧美| 丰满少妇乱A片无码| 色婷婷99| 大地资源色婷婷视频在线| 色999五月色| 中文av网| 大香蕉婷婷| 五月丁香婷婷激情久久| 热的无码综合视频| 99热这里只有精品18| 天天拍久久| 亚洲视频色色| 思思久日精品视频| 在线视频激情网站| 五月天桃色深爱网| 无码少妇高潮喷水A片免费| 婷婷视频网| 丁香婷婷基地| 精品人妻午夜一区二区三区四区 | 夜夜噜夜夜奇| 欧美成人五月天| 色婷婷九月综合| 久久久婷丁香五月| 色色com| 免费亚洲婷婷| 99色视频在线| 亚洲AV久久久久久久久久久久久久久久| 亚洲黄色网址| 亚洲成人网站在线| 99热综合在线| 深爱激情五月婷婷| 97碰在线| 狠狠干五月丁香| 袁子仪视频观看| 六月丁香婷啪射| 婷婷五月天性| 日本操碰碰| 91久久久久久| 色色五月婷婷| 亚洲中文字幕在线电影| 久久综合干| 色色综合成人网| 色婷婷在线综合色播网| 色色色婷婷| 狠狠久久婷五月| 亚洲情欲| 人人操操97| 色玖玖导航| 天天干天天日蜜臀av| 丁香五月天社区婷婷| 97碰成超视频免费视频| 综合激情网五月激情| 色婷婷五月天综合网| 六月丁香五月天| 色婷婷9| 激情五月综合| 殴美激情综合网| 国产欧美婷婷五月| 五月丁香婷婷综合久久| 午夜在线成人网站免费观看| 金桔一区二区ab地址| 五月的婷婷六月丁香| 五月天久久成人| 色五月激情五月| 色婷婷丁香五月| 91无码色色| 日本免费91| WWW夜夜| 无码色色| 国产在线aaa片一区二区99| www.金莲av| 激情久久五月天| 天天夜天天色天天| 婷婷五月天成人| 狠狠综合区| 色九月| 日日爱699| 依人大香蕉| 99热免| 色~性~乱~伦~噜| av亚洲国产小电影| 色九九综合| 欧美激情综合色综合色| 久久婷色| 五月天丁香综合| 狠狠色精品综合| 在线中文亚洲| 精品一区二区三区三区| 亚州性爱99| 91精品久久久久久久| 七七久久婷婷| 人人人舔人人人操人人人摸人人人97| 国产精品美女久久久久AV超清| 日本九九网| 综合色色婷婷| 国产高清av黄色看片| 六月婷在线| 情婷婷五月天在线| www.色99| 综合激情五月丁香9999久久精| 丁香五月激情五月| 色五月婷婷五月天激情综合| 日本色五月婷婷| 五月婷婷亚洲天堂97色婷婷| 四五月婷婷| 亚洲激情AV| 丁香五月婷婷亚洲激情四射| 婷婷激情社区| 激情久久月| 99热这里只有精品无码| 五月丁香六月激情| 亚洲视频另类| 久热这里只有精品在线| 区欧美日韩成人| 六月丁香婷婷天堂| 久久久高清| 96性爱视频| 狠狠操狠狠插| 婷婷激情另类| 五月天婷a在线| 五月丁香拍拍激情综合| 欧洲色色| 2025最新亚洲激情在线| 色色婷婷丁香| 色婷婷av在线观看| 99精品在线| 婷婷开心深爱五月天| 中文字幕av在线| 婷婷五月精品中文字幕| 亚洲精品国产成人AV在线| 超碰com| 色婷婷AV在线| 久久久人妻人伦| 在线婷婷| 99这里只有免费的小视频在线观看| 国产91视频| 新97人人上人人| 91久久1118| 九九色99| 九九综合| 99热这里只有免费精品| 99久久.www| 狠狠狠狠狠干| 99久热在线精品| 青草性爱视频| 大香焦啪啪啪| 天天天天干| 激情99热| 天天天天干| 狠狠va| 国产乱人偷精品人妻A片| 777精品成人a v久久| 成人无码免费一区二区中文| 五月天婷婷社区| 亚洲在线操| 婷婷丁香人妻天天爽| 深情六月婷婷综合久久| 久热精品免费视频4| 99久久免费精品| 99re在线免费视频| 日本色婷婷| 操操操操操电影网| 99久久婷婷五月综合| 色噜噜婷婷| sS丁香五月婷婷| 五月丁香六月综合图| 日日操日日撸| 婷婷五月丁香影院| 婷婷久久天堂网| 色欲天天综合| 日日懆天天懆| 九热视频| 激情五月婷色| 日韩成人免费电影| 天天插天天爱| 99色看这里只有精品| www.夜夜爱.com| 婷婷丁香激情综合色情| 91丨九色丨东北熟女| 国熟女视频| 亚洲图色五月天| 丁香花色色网| 情久久综合五月天| 欧美日韓成人亚洲精品另类| 五月丁香六月婷婷久久肏| 91天天操天天干天天射| 精品亚洲VA网站| 亚洲黄色影视| 激情熟女网| 久久久97| 日本三级中国三级99| 丁香六月色婷婷欧美| 久久精彩视频18| 五月婷婷黄色| 色婷婷丁香五月在线观看| www.激情五月天。com| 婷婷丁香无码专区| 五月丁香六月激情| 色婷婷亚洲| 99re这里只有精品在线观看| 26uuu淫色| 五月天大香蕉AV| 丁香五月天激情| 五月激情站| 天堂爱爱| 天天爽夜夜爽夜夜爽精品| 婷婷六月成人| 亚洲精品久久久无码| 91干在线| 精品人妻伦一二三区久| 丁香六月亭亭久久综合| 玖操97| 日日噜狠狠| 激情文学五月丁香六月婷婷| 99热这里精| 九九熱最新視頻| 免费在线a| 欧美S码亚洲码精品M码| 五月婷久久| 狠狠色97| 五月天丁香成人| 久久这里只有精品22| 色色色色色色色综合| 免费播放片大片| 色综合99色| 精品夜夜澡人妻无码AV| 婷婷五月天激情小说| 丁香五月婷婷亚洲综合精品| 99九九精品视频| 五月丁香六月婷婷无码| 久久久人妻系列| 激情五月网站| 另类激情五月| 婷婷激情蜜桃玖玖丁香| 丁香婷婷人妻| 激情色中文| 97碰久久| 久久精品99| 综合网啪啪| 超碰人人99| 殴美97色| 天堂网色色| 97性高潮久久久| 国产一级黄色影片,| 久久99国产综合精品免费| 丁香六月婷婷| 五月天激情四射| 丁香色婷婷五月天| 福利视频在线播放| 开心婷婷五月天激情网| 激情五月婷婷色| Va另类视频| 五月丁香六月婷精品视频| 人妻内射麻豆视频| xfplayav在线| 婷婷五月天激情五月天深爱五月天| 天天射综合网夜夜操| 日逼免费视频| 婷婷色日本| 狠狠搞综合色| www、色色色| 丁香婷婷色| 日本婷婷色日| 激情婷婷九月| 色欲久久综合| 2018国产大陆天天弄| 久久久人妻| 亚洲激情网| 久久婷婷视频| 色播色丁香五月| 婷婷综合日本| 97色碰| 日韩一区二区在线播放| 婷婷五月天六月| 欧美爆乳一区二区三区| 香蕉操亚洲| 欧美久热| 大香蕉 婷婷| 日本欧美999久久久三级片| 色色五月综合| 日亚二欧美| 91玖玖| 久久久久久久丁香五月天婷婷| 思思99热这里只有精品| 韩国久久少妇视屏| 天堂久久精品| 亚洲丁香五冃97色| 国产免费av在线| 日日骑夜夜撸| 婷婷五月视屏| 天天干天天干天天| 超碰中文字幕在线| 久久香蕉福利| 五月丁香婷婷啪啪综合网| 亚艹艹| 超碰超碰在线| 涩丁香| 狠狠色色综合| 婷婷色香六月综合激情| 婷婷激情六月| 任你躁XXXXX麻豆精品| 色青五月天| 99热9| 激情九九这里只有精品| 思思re99视频在线观看| 黄色短视频在线观看| 激情黄色小说色五月| 丁香五月婷婷动漫视频| 六月婷婷久久| 亚洲AV成人无码精品| 婷婷久久性爱| 五月婷婷丁香色播网| 另类图片色五月| 99热99艹在线观看| 丁香五月天网站| 人妻操操色| 内射综合网| 色欧美一级| www久久久久久久97| 99热这里只有精品2016| 九九免费视频| 亚洲综合在线播放| a v色婷婷| 九九大香蕉黄色影院| 国产人妻777人伦精品HD| 激情婷婷九月| 九九热思思热| 色人久久| www.色综合| 婷婷六月久久综合导航| www.久久| 综合99综合久久久久久久| 婷婷成人五月天一区| 丁香五月天网站| 亚洲成人日韩无码精品| 欧美丁香六月激情视频| 99在线免费视频| 中文字幕,综合,91| 婷婷五月久久| 无码免费人妻A片AAA毛片西瓜| 草草操操| 五月婷婷色色色| 九色porny在线观看激情四射| 欧美日韓成人亚洲精品另类| 久久小视频| 综合超碰熟| 国产五月丁香在线| 激情五月婷婷五月| 97人人操人人干| 九月综合| 色色色色色色网站| 伊人大蕉香| 另类激情五月| 精品人妻午夜一区二区三区四区 | 亚洲黄色精品| 久久在线92| 六月丁香色婷婷| 亚洲成人在线在线| 六月婷婷国产| 伊大人久久| 欧美va| 国产午夜精品AV一区二区麻豆| 色噜噜狠狠色综合AV兰草影视| 国产成人高清| 久久综合干| 中文字幕丰满人妻无码专区| www.色婷婷.com| 99久热这里只有精品| 67194线路二在线观看| 伍月激情天| 亚洲成人网站在线观看| 亚洲婷婷在线播放十月| 久久久97| 五月天婷婷久色| 专区无日本视频高清8| Av性爱网站| 丁香六月婷| 熟女激情网| 狠狠干狠狠干| 五月丁激情| 色色激情五月天| 欧美婷婷色| 森林影视大全,最好看的2019年视频| 99人妻碰碰碰久久久久视| 婷婷激情五月天小说| 成年人丁香五月| 偷拍九九五月丁香婷婷| 99热这里只有精品22| 狠狠色丁香久久久婷| 99热这里只有精品青草| 婷婷五月天深爱| 欧美情色一区| 中文字幕av亚洲| 五月激情站| 久99久在线观看| 97碰| 黄色99网| 伊人五月婷婷国产视频| 婷婷综合五月| 久久这里只有精品网| 疯狂做受XXXX高潮A片| 亚洲色欲欧美一区二区三区| 91熟妇大香蕉| 婷婷综合网站| 天天干天天操天天干天天操天天干天天操| 就爱日五月天| 99熟女视频| 十月丁香婷婷| 免费成人中文字幕| 激情99| Xx色综合| 91av视频在线观看最新网址| 日本久久精品| 伊人网色婷婷五月天| 69精品人妻不卡视频| 久久久97| 操逼棍操逼| 超级碰碰99| 久久久激情视频| 天天干狠狠操| 婷婷射图五月天| 全部老头和老太XXXXX| 噜噜五月天综合| 99精品在线播放| 亚洲AV久久久久久久久久久久久久久久| 激情五月丁香亭亭| 色综合爱综合| 色婷婷伊人| 热91久| 99在线免费视频| 丁香五月天婷婷久久综合| 亚州第一A片| 九九在线精点品| 天天爽天天日天天舔| 色色操| 九色视频九色九色91jiuseshipin| 久久色五月| renre人人操国产超碰在线| 一级二级色大片| 婷婷五月天网| www.亭亭五月天| 欧美日综合| 国产精品成人网址| www.激情| 色综合网址| 日本熟女一区二区| 色五月激情五月| 五月丁香六月合| 九九精品综合| 色综合久网| 国产精品第一国产精品| 超碰在线国产| 亚洲午夜一区二区| 久久人妻视步| 丁香五月激情天AV无码| 91久久精品无码一区二区三区| 婷婷五月花| 激情五月天啪啪| 色婷婷亚洲在线| 天天做天天视天天谢| 欧美日比视频| 欧美、日韩、中文、制服、人妻| 26uuu成人网| 五月丁香啪啪啪| 99re在线精品视频| 丁香六月激情| 夜夜爱网站| 日本熟女一区二区| 国产精品色色色色| 丁香成人综合| 婷婷色五月亚洲| www.激情五月| 五月天激情四射| www.色婷婷.com| 五月天激情国产综合婷婷| 九六五月天婷婷| 久色视频首页| 色丁香综合影院| 99re99热| bbwcuckold精品熟妇| 91啪啪视频| 久久久久网站| 国产成人AV在线播放| 玖玖热99| 久久 中文 日本| 成人视频网| 人人播| 26uuu精品国产| 九九热九九| 丁香婷婷六月天| 色综合天堂| 九九热99免费视频| 97碰久久| 婷婷五月天丁香| 久久久97| 天天爱天天操| 99精品在线播放| 337p大胆噜噜噜噜噜91Av| 99爱视频在线| 婷婷五月天堂| 超碰国产在线| 国产黄色在线观看| 丁香五月色激情| 色婷婷五月综合色婷婷| 日韩黄色电影| 玖玖婷婷色| 99狠狠| 亚洲成人网在线观看| 久久激情网| 五月丁香| 丁香六月高清视频| 五月丁香青草综合啪啪| 五月天综合视频网| 开心五月六月婷婷| 激情桃色网 | 亚洲乱码日产精品BD| 国产精品久久久久久久久久| 午夜]香婷婷深深爱| 丁香五月97视频| 五月婷婷色啪| 天天做天天爱天天爽夜夜揉| 亚洲一个色| 婷婷五月激情基地| www.99成人视频| 五月丁香性| 超碰人人在线| 夜夜嗨一区二区三区直播内容| 99热热热天天人人人超超碰| 69色婷婷| 日韩 欧美 国产 一区 二区| 久久久精久人妻| 色色色色色色网| 91超碰在线观看| 99久在线精品99re8| 天天爽天天爽| 97色视频网| 九九热a| 亚洲精| 伊人深爱综合| 色婷婷综合视频| YJLZZJLZZ亚洲乱熟无码| 9l视频自拍9l九色成人| 潮汕成人AV片在线| 久久这里只精品66| 色五月激情婷婷| 99热这里是精品| 欧美色性色好| 麻豆AV一区二区三区| 九九久99免费视频| 丁香五月香蕉在线| 色五月六月| 婷婷五月情| 色域五月丁香| 亚洲小视频免费看| 久久免费视频62| 一起草Av| 影音先锋女人AA鲁色资源| 五月色丁香婷婷综合| 97干在线| 26uu| 91日本在线观看| 日B日潘金莲BB| 热久久91| 91人人爽久久涩噜噜噜| 开心五月婷婷激情| 日本97在线视频| 777色婷婷爱五月| 亚洲九九99精品视频在线播放| 99啪啪网| 欲色人妻| 天天模,夜夜模夜夜爽| 婷婷天堂综合| 99视频在线观看视频| 99激情视频热| 香蕉综合网| 97sese婷婷| 色婷婷久久综合| 五月丁香亚洲婷婷| 丁香五月区| 6 9式性爱视频在线播放| 777久久综合视频| 激情婷婷久久| 丁香狠狠操| 亚洲精品小视频| 婷婷五月激情五月激情| 五月天丁香综合在线| 婷婷五月激情片| 色色五月婷| 99热在线观看99| 色噜噜在线| 99色在线| 婷五月天天| 中美日韩成人在线| 色吊丝永久访问网址| 色五婷婷| 婷婷丁香六月天激情四射网| 99热这里只有精品2024| 日本乱子人伦在线视频| 六月婷婷狠狠| 久久99精品久久久久久三级| 激情五月婷婷她| 婷婷五月天激情丁香| 丁香婷婷五月六月天| 九九激情网| 光棍影院日韩精品| 狠狠操天天干| 嫩草视频观看| 久久9热| 日日夜夜狠狠| 色婷婷婷av | 丁香五月婷婷偷拍| 九九热在线视频| 人操人人| 美女妹子后射视频网站在线观看| 热99玖玖99玖玖99九九| 激情久久综合网| 热九九精品| 这里只有精品免费在线视频| 亚洲成人av在线播放| 97日本在线播放| 日韩欧美骚货| 久久久五月天婷婷成人网| www夜夜操com| 伊人玖玖网| 色99自拍| 国产日产成人亚洲欧美国产VA| 色色网站| 成人噜噜网| 色色日本| 原琪琪色影院| 无码操B| ri电影在线| 国产黄大片在线观看画质优化| 四虎婷婷五月天| 九久久婷婷| 激情五月丁香六月| 欧美精产国品一二三区| 婷婷九月色| 欧美狠狠草| 成人.在线日韩| 五月色天情| 丁香久月婷| 国产精品电影| 天天综合干| 超碰妻人人| 日本五月视频| 午夜婷婷久久 | 91丨九色丨白浆秘| 久久九九一區| 色色综合网站| 天天干天天日日| 色色97丁香婷婷五月天| 另类激情五月| 丁香五月婷婷色五月| 九色在线五月婷婷网址| 激情婷婷五月天| 在线视频色五月| 人妻体体内射精一区二区 | 婷婷射综合| 九九碰九九爱97| 人妻在线中文字幕久久| 亚洲乱码w在线观看| 99免费在线视频| 婷婷激情六月中文| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 欧美色色干| 五月激情小说| 26uuu欧美| 亚洲第一色色色| 精品操逼一区二区| 99噜噜| 五月综亚洲| 六月丁香天堂| 九九热超碰| 五月综合无码| 色色色在线免费视频| 九热视频在线伦| 99色在线视频| 这里只有九九精品| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 婷婷9月天| 婷婷日日夜夜| 五月天婷综合网站| 无码橾| 人妻内射一区二区在线视频| 久久五月天色婷婷| 嫩模aV在线| 日本人妻伦在线中文字幕| 99热99思午夜精品| 色色色色色五月丁香| 五月天开心色色网| 丁香五月Av| 欧美五月婷婷| 五月激情综合网| 亚洲成人在线观看网址| 日产精品一线二线三线芒果| 婷婷少妇激情| 天天草比天天爽| 人妻性操逼中文字幕 国产| 久9热插入| 五月婷婷中字在线| 久操97| 婷五月天影院| 国产69久久久欧美黑人A片| 九九自拍网| 天天日,天天射,天天舔| 深爱五月天婷综合| 九九热这里只有精品5| www。五月,com| 国产人妻人伦精品一区二区| 五月婷婷香| 97se视频在线| 亚洲五月天婷婷| 六月婷婷七月丁香| 2020久久婷婷五月| 人人玩人人橾| 亚洲五月婷婷| 久久女人天堂| 一区二区乱码视频| 91视频免费后入强操| 大香久久综合网| WwW色婷婷| 色婷婷成人做爰A片免费看网站| 亚洲六月色| 六月 丁香 视频| 亚洲婷婷月丁香五月| 热中文字幕| 99ri精品| 婷婷久久综合久| 亚洲婷婷91丁香| 亚洲婷婷丁香| 久99在线视频| 综合激情在线| 99热这里只有精品1025| 超碰97干| 婷色五月天| 91疯狂操操操操| 日韩在线成人电影| 狠狠色狠狠色综合日日91| 日韩三十六页| 日本视频久久| 婷婷综合在线| 日本丁香五月| 九九99久久| 91精品综合久久久久久五月丁香| 色色丁香五月天| 亚洲丁香五月天视频| 婷婷五月丁香综合激情| 婷婷天天婷婷天天澡| 九九热精品| 激情婷婷五月| 99免费视频在线观看爱| 五月丁香天堂网| 五月天播播中文字幕| 狠狠干狠狠干| 中文字幕av久久爽一区| 99视频这里有精品| 1000部毛片A片免费观看| 99国产精品久久久久久久久久久| 中文av网| 天天射影院| 精品一区久热| 久久大香免费| 99re免费精品视频| 99精品自拍视频| 天天日夜夜欢| 精品一区二区三区四区五区六区| 97人人做| 九九在线精品| 91麻豆国产三级精品福利在线观看| 久久五月丁香综合| 五月婷婷丁香啪啪| 丁香五月网站| 丁香五月婷婷激情视频播放| 欧美VA在线| 91丨九色丨熟女|新版| 激情五月天色色网| 九色视频九色九色91jiuseshipin| 五月深情久久| 色欲天天综合网| 五月丁香婷婷国产精品综合| 久久色这里只有精品| 五月丁香淫淫婷婷婷| 97人人做| 精品夜夜澡人妻无码AV| 97超级碰碰碰久久久| 亚洲午夜一区二区| 婷婷五月综合社区| 欧美五月丁香啪啪响视频| 99热日本| 婷婷五月天精品| 婷婷色网站| 天天弄天天操| 久久作爱| 99热日本| 91人人爱| www91精品| 激情无码五月天| 天天色官网| 五月婷婷网站| www.俺去也com| 亚洲成人高清在线| 99热成人| 国产综合久久久777777| 久久色情| 亚艹艹| 久久久久久人妻| 日本天堂网站99| 久久新| 伊人婷婷五月| 黄色笑话深爱激情网丁香五月婷婷啪啪啪啪啪 | 国产原创视频91九色| 九九视频这里只有精品| 欧美一黄一色一乱一伦| 成人看片网站| 岛国资源网| 丁香久月| 婷婷亚洲在线| 久色视频在线| 六月五月婷婷| 久久免费精彩视频| 天堂综合久久| 丁香五月天激情综合网| 五月丁香啪| www.lchjjc.com| 这里只有精品日韩| 久久亚洲天堂| 亞洲自怕| 久操97| WWW五月| 日本猛少妇色XXXXX猛叫| 婷婷欧美激情综合| 五月婷婷激情色情网| 五月丁香色| 五月婷婷色色爱| 一区色色色色网| 久色| 婷综合六月| www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 久久黄色片| 国产精品人人做人人爽人人添| se99热久久一本| 五月天婷a| 99ri在线| 免费不卡狠操美女视频网| 色综合色色| 天天婬色综合| 丁香五月激情综合在线观看| 五月天成人小说| 色v综合网| 狠狠综合网| 黄色aa观看aaguochan| 色大综合| 免费观看全黄做爰的视频| 五月婷久久综合| 久久婷婷五月天激情唯美| 99爱视频在线| 91狠狠色| 婷婷五月天久久| 亚洲激情综| 影音先锋91资源站| 久久婷婷夜| 婷婷五月天狠狠色| 久久3级片| 天天舔天天摸视频| 1024AV视频| 五月婷婷开心丁香| 精品欧美性爱超级爽| 无码色色色色色| 国产日比| 五月婷婷日本| 色五月成人| 色综合网页| rr天天操| 天天色99| 色五月婷婷在线| 日本3级片一区2区| 婷婷五月天成人基地| 久婷狼色诱惑在线| 亚洲成人va| 97色干在线观看| 国产精品蜜臀99| 日本人妻伦在线中文字幕| 亚洲婷婷五月草久| 五月婷婷黄色| 久久五月婷婷电影| www.夜夜操| 人人爽人人爽人人爽人人爽| 五月天婷婷狂暴白浆| 婷婷视频在线| 九九精品99久久久| 色综合区| 91久热| www.97碰碰com| 天堂综合久久| 97自拍视频在线| 深爱五月综合网| 天天狠狠夜夜狠狠2023| 天天 日综合| 日韩AV中文在线观看| 五月丁香六月婷婷视频| 日91高清无玛| 俺去也五月天婷婷| 综合狠狠五月婷婷| 久久33视频| 婷婷五月综合社区| 激情五月天福利| 色婷婷超碰| 97香蕉久久超级碰碰高清版| 超碰人人超碰| 激情99。| 99精品久久久久久久久| 大香蕉九操| 色99xx| 久久婷婷五月丁香网| 五月天天天操天天爽夜夜操| 日韩在线观看网址| 亚洲最大激情无码| WWW.天天日| 狠狠干.com| 九九热在线99| 超碰久热| 日本综合99| 日本一级特黄大片AAAAA级| 97碰碰碰免费公开在线视频| www。88热在线视频免费观看| 久久98| 思思re视频在线| www.第四色99| 青青草原亚洲天堂| 色五月激情综合| 九色激情网| 色吧五月| 开心五月婷婷在线视频免费观看| www.99热这里精品| 婷婷成人AV| 嫩草AV久久伊人妇女超级A| 亚洲综合婷婷| 五月天激情久久| 婷婷色色网站| 色五月婷婷成人视频| 久久久精品99| 免费做A爰片77777| 五月激情婷婷女| 激情深爱五月婷婷| 狠狠精品干练久久久无码中文字幕| 九九99热久久精品66中文字幕| mmm1717.6dbm人人爱人人操| 五月天婷婷狠狠| 婷色影院| 五月婷婷三级| 26uuu亚洲精品国产| 五月天婷婷色在线视频免费观看 | 亚洲永久四色| 色欧美日| 五月天婷婷激情在线色图| 六月丁香综合| 六月婷婷啪啪| 99久操视频| 婷婷五月天影院| 五月天中文字幕在线婷婷| 色婷婷最新域名| 婷婷天天日婷婷| 精品无码av丁香五月激情| 97干在线观看| 久久大香蕉| 六月丁香综合| 4399人妻无码久久久| 婷婷情色五月| 99精品国产乱码久久久人妻| 伊人干综合| 在线综合网| 欧美99热| 久热9| 国产激情在线| 九九在线精点品| 操一操| 九九九九九无码| 91色综合| 狼友超碰| 欧美男女婷婷| 亚洲超碰中文字幕| 第四色五月天| 狠狠撸激情综合丁香五月天俺来啦| 婷婷五月天伊人在线| 婷婷综合网性| 99色.com| 久久蜜臀婷婷| 婷婷99狠| 淫视馆av三区| 亚洲电影在线观看| 99re这里只有精品首页| 久久er+| 99热免费精品热久久66| 中文字幕av在线播放| 六月激情网| 久草视频大香蕉99| 久久丁香| 99综合免费视频| 99色视频| 亚洲人成色A777777在线观看| 久久久久久人妻久久久久久久久久人妻久久久| 99热精品在线播放观看| 久久这里只有国产| 青草网在线观看| 激情五月天视频| 色色色网站| 99热这里是精品| 99色中文| 大香蕉啪啪| 亚韩在线视频| 色色色色色五月| 9久久狠狠的| 日日噜噜夜夜狠狠久久丁香五月| 97色婷婷| 久久九九色| 一本色道久久综合狠狠躁小说| 久99热| 热思思| 国产片色| 噜噜久| 丁香五月六月综合欧美| 99愛国产| WWW.开心五月天.COM| 就99这里只有精品| 2023天天日夜夜爽| 婷婷日在线观看| 亭亭色色五月天| 如何安全看伊人婷婷| 激情婷婷五月女| 丁香五月大片| 色久婷婷网| 五月综合六月丁| 婷婷五月天少妇| 亚洲精| 九九爱激情| 99精品无码| 99精品热| 久机视频这只有精品| 婷婷五月丁香五月| 伊人色综合网| 中文字幕日产A片在线看| 香蕉网婷婷| 丁香五月色色婷| 97五月婷婷| 另类小说五月天| 日本五月丁香| 99热6色| 五月婷六月| 99免费超碰在线| 婷婷五月激情综合啪啪| 色五月超碰| 少妇日麻屄| 五月婷六月婷婷| 婷婷涩涩五月天| 狠狠色噜噜狠狠| 婷婷五月天基地| 日韩丁香涩| 99综合熟女| 天天综合激情| SESE无码AV| 99啪啪| 久久91久久精品久久| 1024婷婷综合久久五月天| 99热久久这里只有精品| 色五月丁香五月天| 99热超碰在线| 国产精品涩涩涩视频网站| 碰人人97| 日韩综合久| 日日影院 | 五月婷婷开心综合| 五月婷啪啪| 小香蕉av| 丁香六月婷婷基地| 丁香五月天无码| 操操自拍| 成人做爰高潮A片免费视频| 五月天色站| 六月婷婷无码| 操操操Av| 亚洲人妻av伦理| 天天综合五月天| 色婷婷五月网| 色婷婷久久综合| 五月丁香另类网| 99爱99操| 激情五月天色爱| 99re思思久久| 五月色丁香婷婷综合| 婷婷五月综合欧美在线播放| 天天综合中文| 99热这里只有精品9| 光棍影院日韩精品| 五月婷丁香久久久| 人人摸人人搞| 日操夜操天天操不卡| 婷婷激情中文综合| 五月婷婷五月天| 欧美黄色一级录像| 99热色无码| 婷婷色操| 亚洲看av的网站| 欧美色色色| 人操人| av在线色五月丁香婷区久| 亚洲热久久| 色婷亚洲| 桔色成人在线| 九九婷婷激情综合网| 91九色 婷婷| 丁香成人色情五月天| 激情五月天网站| 99视频自拍| 九九无码| 婷婷色综合网日韩国产| 成人婷婷桔色| 99久久综合网| 色欲九区| 六月丁香婷婷综合在线| 性色九九| 天天操夜夜玩!| 五月丁香六月情| 久久与婷婷| 天天干天天操天天射| 激情五月最新网址| 我爱婷婷五月天综合88| 538在线精品| 婷婷亚洲五| 丁香九月激情| 亚州操操| 免费精品99| 综合精品99| 亚洲激情视频网| 极品人妻VIDEOSSS人妻| 六月丁香婷| 天天噜日日噜综合无码| 青青久久大香蕉| 五月婷婷六月激情网| 婷婷97狠狠成人网站| 五月丁香六月婷婷啪啪综合| 色欲天天综合| 婷婷五月精品中文字幕| h亚洲| 九九99热| 中文成人在线| 午夜九九九九九九九九九九九九九| 色噜噜,噜噜色| 亚洲欧美成人在线| 日本色噜| 中国女人内射6XXXXX| 九九这里只这里只有精品| 一区二区成人电影| 久久婷婷七月丁香| 日日做天天操夜夜爽| 色五月婷婷中文字幕| 久久精品爱爱| 激情五月激情综合网| 91婷婷搞| 丁香婷婷性爱| 久久激情综合| 婷婷五月天激情网| 九九视频精品这里只有| 天天射影院| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 96五月丁香熟女| 九月色婷婷综合亚洲| www、色色色| 狠狠色九月| 天堂综合久| 国产亚洲成AV人片在线| 五月色婷婷在线观看| 色婷婷av在线观看| 亚洲一个色| 色婷婷丁香五月天| 六月婷婷私欲| 亚洲影院婷婷色| 99热这里都是精品| 97色婷| 五月丁香啪啪| 噜综合| 五月丁香婷婷欧美色图视频五月丁香777电影 | 久99久在线| 五月丁香色综合| www.婷婷,com| 99热狠狠操| 久久久激情| 人妻肉射免费观看| 久久狠婷婷| 丁香五月天激情| www.99热国产| 丁香九色不卡aaa| 久碰婷婷视频| WWW,色五月| 91se视频| 婷婷九月丁香| 久久这里只有精彩| 久久五月婷6 9| 天天干夜夜谢| 伊人五月天综合网| 日欧一片内射VA在线影院| 99爱免费视频| 国产精典视频在线观看| 色伦专区97中文字幕| 人人草人| 久久er免费视频| 久久综合五月情| www99精品| 午夜青草资源| 日韩超碰在线| 亚洲V国产V欧美V久久久久久| 99热这里|