欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

GNU Radio中g(shù)r.hier_block2:層次化信號處理塊原理與實戰(zhàn)指南

GNU Radio中g(shù)r.hier_block2:層次化信號處理塊原理與實戰(zhàn)指南 在GNU Radio里摸爬滾打一段時間后你會發(fā)現(xiàn)一個問題流圖越來越大模塊之間的連線密密麻麻改一個參數(shù)要在好幾處地方來回找換個項目想把上一版的前端鏈路復(fù)用過來除了復(fù)制粘貼就是改錯漏改。這時候就該把目光轉(zhuǎn)向gr.hier_block2了。它是GNU Radio里用來構(gòu)建層次化信號處理塊的核心類作用和函數(shù)封裝差不多——把一組基礎(chǔ)塊組合成一個整體對外只暴露輸入輸出端口內(nèi)部隨便你怎么折騰。這篇文章我從原理、實操到踩坑完整過一遍適合已經(jīng)能跑通簡單流圖、想讓工程結(jié)構(gòu)更清晰的開發(fā)者參考。1. 為什么要在GNU Radio中構(gòu)建層次化塊1.1 從一張大圖到可復(fù)用積木先回憶一下典型的GNU Radio場景。剛開始接觸SDR時隨便一個接收鏈路就是十來個小塊串在一起下變頻、低通濾波、頻譜翻轉(zhuǎn)、同步、解碼……每個塊在GRC里都占據(jù)一塊畫布連接線密密麻麻鋪滿整個工作區(qū)。前期調(diào)試問題不大但項目一多問題全暴露了同一個前端鏈路要在四五個流圖里重復(fù)畫一遍改一個參數(shù)得把所有流圖都打開改一遍整體結(jié)構(gòu)不清晰別人拿到你的grc文件很難快速判斷哪一段是接收前端、哪一段是解調(diào)器想給鏈路做一個統(tǒng)一的增益接口但散落在各個塊的參數(shù)設(shè)置里沒有統(tǒng)一入口。gr.hier_block2就是在這一背景下被經(jīng)常拉出來救場的工具。它可以把你常用的那串塊比如射頻輸入 - 低噪放 - 帶通濾波 - 增益控制 - 基帶輸出全部塞進一個自定義的層次塊里。外部看它就是一個普通的塊有輸入端口、有輸出端口、有參數(shù)配置項。內(nèi)部則可以是一個完整的信號處理子圖。這和軟件工程里的函數(shù)抽象完全是同一個思路。1.2 hier_block2到底解決什么問題具體來說gr.hier_block2的價值體現(xiàn)在三個方面第一是復(fù)用性。一個自定義層次塊可以被多個頂層流程圖引用也可以被另外的層次塊再次包含形成多級嵌套。我在做某個跨平臺信號接收系統(tǒng)時就把自動增益控制直流消除信號功率檢測封裝成一個層次塊然后在調(diào)頻解調(diào)、正交幅度解調(diào)等好幾個分支里直接復(fù)用后端邏輯完全不用關(guān)心前端細節(jié)。第二是可維護性。如果想調(diào)整前端鏈路的濾波器階數(shù)、增益范圍只需要修改層次塊內(nèi)部定義所有引用它的流圖同步生效不需要逐個去改。這個優(yōu)勢在GRC里體現(xiàn)得特別明顯。第三是接口隔離。層次塊對外暴露的端口數(shù)量和數(shù)據(jù)類型是固定的內(nèi)部塊無論怎么調(diào)整只要接口不變外部代碼就不會被影響。這給多人協(xié)作項目省了很多溝通成本。還有一點很多人沒意識到gr.hier_block2幾乎是零性能損失的。GNU Radio在真正運行時會先把包含層次塊的流圖展開成扁平化的流程拓撲也就是說內(nèi)部各個塊仍然是直接首尾相連的層次塊只是一層邏輯上的殼并不產(chǎn)生多余的數(shù)據(jù)拷貝或調(diào)度開銷。這一點讓它比用文件或Socket中轉(zhuǎn)信號的笨辦法靠譜得多。2. gr.hier_block2的底層機制與接口設(shè)計2.1 輸入輸出簽名先搞清楚這個塊長什么樣使用gr.hier_block2時第一步是定義這個層次塊對外暴露幾個輸入、幾個輸出以及每個端口上傳輸?shù)臄?shù)據(jù)類型。這一步通過gr.io_signature完成。from gnuradio import gr gr.io_signature(1, 1, gr.sizeof_gr_complex)這行代碼的意思是該塊的流輸入端口至少1個、最多1個每個樣本是復(fù)數(shù)類型。第一個參數(shù)是min_streams最小流數(shù)量第二個參數(shù)是max_streams最大流數(shù)量第三個參數(shù)是sizeof_stream_item每個采樣占用的字節(jié)數(shù)通常用gr.sizeof_float4字節(jié)浮點、gr.sizeof_gr_complex8字節(jié)復(fù)數(shù)、gr.sizeof_byte1字節(jié)等常量。如果層次塊需要多個不同類型的輸入就要用到gr.io_signaturev它把每個流的字節(jié)數(shù)分別列出來例如一個輸入是復(fù)數(shù)流另一個輸入是浮點控制流寫法是gr.io_signaturev(1, 2, [gr.sizeof_gr_complex, gr.sizeof_float], 1, 1, [gr.sizeof_gr_complex])在繼承g(shù)r.hier_block2時父類構(gòu)造函數(shù)的第二個和第三個參數(shù)就是輸入輸出簽名所以自定義層次塊的骨架是這樣的from gnuradio import gr class my_hier_block(gr.hier_block2): def __init__(self): gr.hier_block2.__init__( self, my_hier_block, gr.io_signature(1, 1, gr.sizeof_gr_complex), gr.io_signature(1, 1, gr.sizeof_gr_complex) )很多時候你會覺得簽名不就是寫幾個數(shù)字嗎不重要。但實際上類型不匹配是GNU Radio里最常見的運行時錯誤之一如果一個層次塊聲明輸入為復(fù)數(shù)但在主流程圖里給它接了浮點信號源流圖運行起來立刻就會報類型錯誤或者出現(xiàn)垃圾數(shù)據(jù)。所以簽名定義要想清楚再動手。2.2 流的連接與端口映射層次塊內(nèi)部連接流圖時self就代表這個層次塊自身同時充當外部輸入端口和外部輸出端口的映射點。self.connect(self, self.some_internal_block) self.connect(self.some_internal_block, self)第一行的含義是把本層次塊的第一個輸入端口接到內(nèi)部塊的輸入上。第二行的含義是把內(nèi)部塊的輸出接到本層次塊的第一個輸出端口上。對這里的connect并不僅僅是連接兩個塊還承擔了端口傳遞的職責(zé)。如果內(nèi)部鏈路有一段中間處理比如輸入 - 濾波A - 濾波B - 輸出代碼自然就是三條連接self.connect(self, self.filter_a) self.connect(self.filter_a, self.filter_b) self.connect(self.filter_b, self)有一個容易搞反的點connect(self, block)里的self必須是數(shù)據(jù)流的方向起點block是終點而connect(block, self)里的self則是終點。用自然語言理解self就是端口墻數(shù)據(jù)流從墻上流進來穿過內(nèi)部管線再從墻上流出去。連接時還有一個隱藏要求內(nèi)部塊的輸入輸出類型必須和簽名一致。比如簽名聲明了復(fù)數(shù)輸入結(jié)果內(nèi)部第一個塊是浮點濾波器fir_filter_fff兩者類型對不上GRC在生成代碼時不一定報錯運行時卻可能直接段錯誤或者什么都收不到。所以我在定義層次塊時通常會在內(nèi)部第一個塊的輸入前加一個類型轉(zhuǎn)換塊比如blocks.complex_to_float把類型問題在內(nèi)部消化掉。2.3 消息端口讓層次塊活起來除了傳統(tǒng)的流端口gr.hier_block2還支持消息端口。流端口適合傳輸連續(xù)信號樣本消息端口則適合傳輸事件、指令或稀疏數(shù)據(jù)比如更新某參數(shù)報告當前狀態(tài)收到一個控制指令。消息端口的注冊方式是from gnuradio import pmt self.message_port_register_in(pmt.intern(cmd)) self.message_port_register_out(pmt.intern(status))然后通過self.msg_connect把消息路徑穿起來self.msg_connect(self, cmd, self.amp, set_msg) self.msg_connect(self.amp, msg, self, status)這里把層次塊的cmd消息端口接到內(nèi)部放大器塊的set_msg端口把內(nèi)部放大器的msg端口接到層次塊的status端口。這樣外部可以發(fā)送pmt消息動態(tài)調(diào)整增益還能收到內(nèi)部返回的狀態(tài)信息。消息端口讓層次塊不再是死板的靜態(tài)管線而是一個可以接受外部控制的組件。3. 動手實操從零構(gòu)建一個自定義層次塊3.1 環(huán)境準備與最小骨架先準備一個可用的GNU Radio開發(fā)環(huán)境常見的版本是3.8、3.10。環(huán)境安裝好以后你可以選擇兩種方式構(gòu)建層次塊一種是直接用Python寫一個類另一種是在GRC里用圖形化方式創(chuàng)建。我推薦兩種都掌握Python方式適合邏輯比較復(fù)雜、需要頻繁修改代碼的場景GRC方式適合快速搭建、給別人看圖理解的場景。先給出一個最小Python骨架from gnuradio import gr from gnuradio import blocks class dc_remover_hier(gr.hier_block2): def __init__(self): gr.hier_block2.__init__( self, dc_remover_hier, gr.io_signature(1, 1, gr.sizeof_gr_complex), gr.io_signature(1, 1, gr.sizeof_gr_complex) ) # 內(nèi)部塊定義 self.dc_blocker blocks.dc_blocker_cc(1024, False) # 連接 self.connect(self, self.dc_blocker) self.connect(self.dc_blocker, self)這個層次塊的功能就一句話去掉復(fù)數(shù)信號里的直流分量。外部看起來它就是一個直流消除器內(nèi)部用到了dc_blocker_cc。把這個類放在某個Python文件里其他流圖里直接import然后實例化即可。3.2 例一單輸入單輸出的信號調(diào)理塊早些時候做某圖像處理Demo的射頻前端模擬時我需要反復(fù)在多個測試流圖里插入直流消除 帶通濾波 自動增益控制鏈路。每次復(fù)制粘貼這些塊參數(shù)還容易串。后來我干脆寫了一個信號調(diào)理層次塊from gnuradio import gr from gnuradio import blocks, filter class analog_frontend_hier(gr.hier_block2): def __init__(self, samp_rate2e6, center_freq100e3, low_cut90e3, high_cut110e3, gain2.0): gr.hier_block2.__init__( self, analog_frontend_hier, gr.io_signature(1, 1, gr.sizeof_gr_complex), gr.io_signature(1, 1, gr.sizeof_gr_complex) ) # 直流消除 self.dc_blocker blocks.dc_blocker_cc(1024, False) # 帶通濾波器使用firdes設(shè)計線性相位FIR濾波器 taps filter.firdes.band_pass(1.0, samp_rate, low_cut, high_cut, int(samp_rate / 1000), filter.firdes.WIN_HAMMING) self.band_pass filter.fir_filter_ccf(1, taps) # 增益控制 self.amp blocks.multiply_const_cc(gain) # 內(nèi)部鏈路 self.connect(self, self.dc_blocker) self.connect(self.dc_blocker, self.band_pass) self.connect(self.band_pass, self.amp) self.connect(self.amp, self)這個層次塊把三個常用處理單元串在了一起對外就是一個模擬前端盒。構(gòu)造參數(shù)low_cut、high_cut、gain成為了這個盒子的配置項外部想用不同帶寬、不同增益直接改參數(shù)而不用關(guān)心內(nèi)部濾波器系數(shù)是怎么設(shè)計的。這里有個細節(jié)filter.firdes.band_pass返回的是浮點濾波器系數(shù)然后用fir_filter_ccf這個復(fù)數(shù)輸入、浮點系數(shù)、復(fù)數(shù)輸出的濾波器去執(zhí)行。如果寫成fir_filter_fff參數(shù)就對不上了流圖會直接報類型錯誤。3.3 例二帶參數(shù)動態(tài)更新的濾波器鏈上面的層次塊參數(shù)是在初始化時固定的如果想運行時動態(tài)調(diào)整帶寬或者增益需要在層次塊里顯式暴露setter方法。這不是gr.hier_block2自動提供的功能很多人在這里踩坑——初始化好之后外部想改層次塊內(nèi)部某個塊的參數(shù)結(jié)果發(fā)現(xiàn)沒法直接操作。正確做法是在自定義類里加方法def set_gain(self, gain): self.amp.set_k(gain) def set_bandwidth(self, low_cut, high_cut): taps filter.firdes.band_pass(1.0, self.samp_rate, low_cut, high_cut, int(self.samp_rate / 1000), filter.firdes.WIN_HAMMING) self.band_pass.set_taps(taps)multiply_const_cc有一個set_k方法可以修改增益fir_filter_ccf有set_taps方法可以更新濾波器系數(shù)。把這些方法放在層次塊里外部就能像操作一個普通變量一樣控制整個鏈路的特性。這里需要注意動態(tài)改濾波器系數(shù)一般建議重新設(shè)計一組新的taps后一次性設(shè)置而不是逐點修改否則會產(chǎn)生幅度抖動這在信號處理上是個常見的經(jīng)驗。3.4 例三多輸入多輸出與消息控制只看單輸入單輸出還體現(xiàn)不出層次塊的全部威力。實際通信系統(tǒng)里經(jīng)常需要兩個輸入合成一個輸出比如一個簡單的混頻測試鏈路本振信號和待調(diào)信號同時輸入內(nèi)部相乘后輸出。class mixer_hier(gr.hier_block2): def __init__(self): gr.hier_block2.__init__( self, mixer_hier, gr.io_signaturev(2, 2, [gr.sizeof_gr_complex, gr.sizeof_gr_complex]), gr.io_signature(1, 1, gr.sizeof_gr_complex) ) self.mixer blocks.multiply_cc() # 端口0和端口1分別連到乘法器的兩個輸入 self.connect((self, 0), (self.mixer, 0)) self.connect((self, 1), (self.mixer, 1)) self.connect(self.mixer, self)注意到關(guān)鍵字connect((self, 0), ...)。當層次塊有多個輸入端口時必須在self后面帶上端口序號(self, 0)表示第0個輸入(self, 1)表示第1個輸入。同理輸出側(cè)多端口時也用(self, n)這種寫法。這個語法在單輸入情況下可以省略但多端口時一旦漏掉序號GNU Radio默認連到的是第0號端口很容易產(chǎn)生明明有兩個輸入但第二個輸入沒接上的怪現(xiàn)象。如果你希望層次塊同時支持流控制和消息控制可以把前面提到的消息端口注冊也加進來。這樣這個混頻器不但可以實時接受本振信號還可以通過消息指令切換增益或工作狀態(tài)。3.5 在GRC中使用用Python寫好層次塊后在GRC里用起來有兩種方式。第一種是把你的層次塊封裝成GRC模塊。GRC會自動掃描~/.grc_gnuradio和gr-*目錄下的XML定義文件把自定義層次塊顯示在塊庫中。你可以為層次塊寫一個XML描述文件指明名稱、參數(shù)、端口類型然后就能像使用內(nèi)置塊一樣拖拽使用。對大多數(shù)開發(fā)者來說這一步容易卡在XML的格式上我提供一個樸素的示例?xml version1.0? block nameAnalog Frontend Hier/name keyanalog_frontend_hier/key categoryCustom/category importfrom examples.frontend import analog_frontend_hier/import makeanalog_frontend_hier($samp_rate, $center_freq, $low_cut, $high_cut, $gain)/make param nameSamp Rate/name keysamp_rate/key typereal/type /param param nameCenter Freq/name keycenter_freq/key typereal/type /param param nameLow Cut/name keylow_cut/key typereal/type /param param nameHigh Cut/name keyhigh_cut/key typereal/type /param param nameGain/name keygain/key typereal/type /param sink namein/name typecomplex/type /sink source nameout/name typecomplex/type /source /block第二種更輕量如果只是在一個工作區(qū)內(nèi)復(fù)用直接在GRC里框選一組塊右鍵選擇Create Hier BlockGRC會自動把選中的塊折疊成一個層次塊并讓你定義外部端口。這個功能在處理一次性的試驗流圖時非常好用省去手寫XML的繁瑣。要注意的是GRC生成的層次塊通常并存兩個文件一個.grc圖形文件和一個.py實現(xiàn)文件。圖形文件負責(zé)描述內(nèi)部結(jié)構(gòu)Python文件才是真正被主流程import執(zhí)行的。如果直接編輯Python文件一定要保證和GRC里看到的圖一致否則容易張冠李戴。4. 常見錯誤排查與技巧實錄4.1 錯誤速查表我把這幾年在gr.hier_block2上踩過的坑按癥狀和原因整理成一張表遇到問題直接對著排查癥狀常見原因解決辦法運行時提示輸入輸出端口數(shù)量不匹配io_signature或io_signaturev參數(shù)寫錯核對min_streams和max_streams以及每個流的數(shù)據(jù)類型字節(jié)數(shù)連接時報錯IO signature mismatchconnect時把不同數(shù)據(jù)類型的塊連在一起在內(nèi)部加blocks.float_to_complex或complex_to_float做類型轉(zhuǎn)換流圖運行后輸出端口沒有數(shù)據(jù)內(nèi)部鏈路沒有連接self輸出數(shù)據(jù)終止在內(nèi)部某個sink檢查是否有connect(internal_block, self)這條路徑消息發(fā)了但內(nèi)部塊不響應(yīng)消息端口名稱不一致比如set_msg寫成setmsg用pmt.intern統(tǒng)一名稱并在GRC里核對端口名多次實例化層次塊后參數(shù)互相污染在類里定義了共享可變對象如列表、字典把所有可變狀態(tài)放到__init__里用實例變量承載不要用類變量層次塊里有file_sink導(dǎo)致后續(xù)塊收不到數(shù)據(jù)數(shù)據(jù)流被sink消耗但沒有加一個分支到輸出如果需要同時記錄數(shù)據(jù)并輸出要用blocks.tee把數(shù)據(jù)分流動態(tài)改參數(shù)無效層次塊沒有暴露setter方法或方法名拼寫錯誤在層次塊里顯式定義set_xxx方法調(diào)用內(nèi)部塊的對應(yīng)方法4.2 排查思路與調(diào)試技巧排查層次塊問題時我一般遵循先類型、再拓撲、再數(shù)據(jù)的順序。先類型確認外部端口的輸入輸出類型與內(nèi)部鏈路首尾塊的類型完全匹配。這一步出錯最快暴露但也是新人最常犯的。我的習(xí)慣是在動手寫connect之前先把鏈條中每一個塊的數(shù)據(jù)類型寫下來像列方程一樣把類型流理一遍complex - dc_blocker_cc(complex) - fir_filter_ccf(complex) - multiply_const_cc(complex) - complex輸出。這樣類型鏈完全一致再寫連接代碼就很少出錯。再拓撲在GRC里把層次塊展開查看內(nèi)部圖檢查是否存在懸空的輸出端點。很多時候數(shù)據(jù)看起來沒信號是因為內(nèi)部某個塊雖然接了輸入但它的輸出并沒有繼續(xù)連接到self輸出端口這個塊實際上成了信號黑洞。如果你輸出端口數(shù)量多建議逐個端口追蹤看它的來源是否有完整的鏈路。最后看數(shù)據(jù)在層次塊內(nèi)部臨時插入blocks.vector_sink_c或blocks.probe_signal_c來觀察中間結(jié)果。不要迷信肯定沒問題先用數(shù)據(jù)確認每一級輸出是否正常再判斷是哪一級出了問題。調(diào)試完后記得移除這些探測塊否則會引入不必要的計算開銷。4.3 幾個值得注意的實踐細節(jié)構(gòu)造函數(shù)調(diào)用順序不能亂。Python里gr.hier_block2.__init__要先執(zhí)行把流圖骨架初始化好然后才能connect。如果你在父類初始化之前就創(chuàng)建內(nèi)部塊并嘗試連接運行時會出現(xiàn)訪問空指針的致命錯誤。這一點和普通Python類的習(xí)慣不一致寫的時候要刻意注意。self就是端口別重復(fù)實例化。有些新手會把層次塊自己再實例化一次或者嘗試在內(nèi)部connect到外部實例導(dǎo)致循環(huán)引用。記住層次塊內(nèi)部使用的自我引用就是self對象本身不需要再新建一個同類的實例。關(guān)于消息端口名稱大小寫。pmt.intern(Set_Gain)和pmt.intern(set_gain)是兩個完全不同的端口。GRC中顯示的端口名和代碼中的字符串必須一字不差否則消息連接在運行時是靜默失敗的既不給提示也不工作排查起來很浪費時間。層次塊內(nèi)部不要放頂層控制塊。比如blocks.udp_sink、qtgui這類可視化或網(wǎng)絡(luò)塊放進來會造成層次塊難以復(fù)用。屬于外部副作用的塊應(yīng)該留在頂層流圖層次塊保持純粹的數(shù)據(jù)處理職責(zé)這樣測試時才不會動不動彈出圖形界面。5. 更深一層層次塊的性能優(yōu)化與協(xié)作實踐5.1 運行時展開機制對性能的影響前面提到gr.hier_block2在運行時會被展開成扁平化流圖。機制上GNU Radio先將層次塊內(nèi)部的所有塊拆出來重新建立端口映射關(guān)系再統(tǒng)一交給調(diào)度器。所以理論上只要內(nèi)部不引入多余的塊層次化的結(jié)構(gòu)不會帶來性能懲罰。但多余要小心。一個常見行為是為了讓層次塊看起來清晰隨手在內(nèi)部加入blocks.keep_one_in_n、blocks.throttle這類采樣率控制塊結(jié)果整個處理鏈路的吞吐量反而被它們限制住了。特別是throttle它本意是在仿真環(huán)境中限制流速防止CPU跑滿如果放到層次塊里這個限制會傳播到所有使用該層次塊的流圖導(dǎo)致真實測試時性能下降。我的建議是層次塊內(nèi)部只保留必要的信號處理塊所有仿真限速功能放在頂層流圖。還有一個容易被忽略的細節(jié)層次塊內(nèi)部的調(diào)度粒度。GNU Radio調(diào)度器是按塊調(diào)度的扁平化之后內(nèi)部每個塊依舊是獨立的調(diào)度單元。一個層次塊里有幾十個小塊拓撲過深可能帶來調(diào)度上下文切換開銷。雖然大多數(shù)情況下不明顯但在追求極端實時性比如處理幾百MHz采樣率時可以考慮把緊耦合的處理合并到一個OOT C塊中。這也是一種合理的優(yōu)化策略不是說有了層次塊就非要層層嵌套。5.2 在團隊協(xié)作中使用層次塊做過多項目復(fù)用之后我認為gr.hier_block2最大的隱藏價值是給團隊建立了一塊公共地基。當多個開發(fā)者都在維護各自的信號處理鏈路時如果沒有統(tǒng)一的層次塊抽象A寫的濾波參數(shù)和B寫的濾波參數(shù)很難對齊有了公共層次塊接口一旦凍結(jié)內(nèi)部實現(xiàn)誰變動都只影響內(nèi)部。我在參與某跨平臺系統(tǒng)的仿真部分時團隊把信道編碼、數(shù)字調(diào)制、成形濾波封裝為發(fā)送端層次塊把匹配濾波、定時同步、均衡封裝為接收端層次塊。測試不同調(diào)制方案時只需要替換其中一個層次塊后端誤碼率評估完全不變。這個方案的缺點是如果層次塊接口設(shè)計得不好比如端口類型定義過細非要單獨為某個調(diào)制方式開端口復(fù)用范圍就會很窄。接口設(shè)計的另一個經(jīng)驗是盡可能使用復(fù)數(shù)基帶信號作為層次塊統(tǒng)一接口而不是暴露I/Q兩路單獨的浮點端口。復(fù)數(shù)接口表示這里是一個完整的復(fù)信號后續(xù)接入濾波器、混頻器、解調(diào)器都更方便強行拆分I/Q會讓層次塊的使用者被迫處理兩路信號的同步問題。5.3 與嵌入式Python塊的選型建議gr.hier_block2經(jīng)常和另一種自定義塊概念混淆即gr.embedded_python_block。我在實際項目里的選型經(jīng)驗是如果要做的事情是組合已有塊比如把官方提供的濾波器、放大器、信號源按順序連起來使用gr.hier_block2因為它沒有work函數(shù)不需要自己維護采樣數(shù)據(jù)的輸入輸出循環(huán)代碼量小、不易出錯。如果要做的事情是實現(xiàn)一個全新算法比如自己寫一個符號定時同步器、自定義的調(diào)制映射器使用embedded_python_block或C OOT塊因為這時需要精確控制每個采樣如何處理需要重寫work方法。兩者還可以混用在gr.hier_block2內(nèi)部可以包含一個embedded_python_block實現(xiàn)既有自定義算法、又有現(xiàn)成塊組合的鏈路。比如在一個接收層次塊內(nèi)部先用官方低通濾波再接入自己寫的判決器Python塊是完全可以的。一點個人體會代碼寫多了會發(fā)現(xiàn)工具本身并不復(fù)雜真正塑造工程質(zhì)量的是你對結(jié)構(gòu)邊界的感知。gr.hier_block2提供的就是這樣一種能力把信號流變成信號組件讓復(fù)雜的系統(tǒng)可以被分而治之。我至今還記得第一次把一組散落的塊折疊成一個層次塊時整個GRC畫布瞬間干凈了那種清爽感確實很值。如果你剛開始嘗試建議從小處入手先挑一個你重復(fù)畫過三次的鏈路把它封裝成層次塊在流圖里替換掉原來的散塊。然后試著加一兩個setter方法、加一個消息端口把它變成一個可以動態(tài)控制的組件。過程中踩到任何坑都回到這篇文章的排錯表里找找大概率能找到對應(yīng)的解法。GNU Radio的學(xué)習(xí)曲線不算平緩但把層次化這一關(guān)過了后面的工程化之路會順很多。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
香蕉中文在线| 狠狠第四色| 《》【无码】想被搞到爽AV应募而来的超M素人 西纯子 10musume-011723-01 | 亚洲成人网站在线播放| 欧美高潮9| 色噜噜五月天| 久久ER视频com| 中文字幕欧美精品久久| 思思99热| 色色色五月婷婷| 我爱婷婷五月天综合88| 人人草公开操| 久久婷婷色情7777网站| 日本婷久久| 99性爱| 婷婷五月亚洲激情| 亚洲人妻Av| 久久久精品人妻| 2w在线视频| 婷婷五月丁香花综合| 69堂午夜视频最新地址| 玖玖午夜视频| 91碰九色| 亚洲成人av中文| 久久女人天堂| 激情综合五月婷婷丁香| 色婷婷五月天小说| 天天插轮理| 五月丁香啪综合| 四川女人毛多水多A片| 色色色色色色色色色色色色色97| 婷婷六月色播| 可以免费观看的av网址| 亚洲激情网| 日韩三级视频一区二区| 丁香五月色情av| 欧洲亚洲精品| 五月丁香综合网| 天天高潮夜夜爽| 99热欧| 久久久久8888| 操日视频| 99a级片| 91久女| 婷婷亚洲天堂| 五月丁香色婷婷| 激情视频综合| 中文字幕成人影视| 99热免费精品| 久99久在线| 婷婷深爱网| 激情婷婷五月天| 久热亚洲| 在线婷婷| 丁香五月天激情网址| 成人在线日韩欧美| 五月婷婷激情网| 极品少妇婷婷五月| 操日本三片99| 丁香五月激情婷婷视频| 五月综合婷婷开心网| 99 re视频一区| 99色在线视频观看| 91丁香五月| www.婷婷五月天,com| 91色色五月天| 亚洲丁香婷婷| 九热视频精品| www.久久| 激情婷婷五月天在线观看| 99亚洲综合| 激情色中文| 久九色| Av大香蕉| 综合久久丁香婷婷,五月婷婷六月丁香,开心激情综合网,六月丁香在线观看,婷婷丁 | 激情五月狠狠喔| 亚洲精品第一国产综合亚AV | 久久综合网免费视频| 色九网| 亚洲综合婷婷| 思思色综合网站| 丁香五月天激情综合网| 五月色综合网| 97人人射| 久久九九热re6这里有精品| 搡BBBB搡BBB搡五十| 爱射综合| 五月婷婷色白丝| 五月婷婷色白丝| 久xxxx| 亚洲AV第二区国产精品| 五月色婷婷影视在线电影| 色综合性视频| 六月婷久久| 久久婷婷成人综合色怡春院| 九九9久九9国产视频| 北条麻妃伊人| 97人人超| 五月婷婷AV| 五月天综合| 丁香九月综合| 婷婷丁香黄色| 色欲婷婷夜夜| 五月丁香成年黄色| 国产精品天天狠天天看| 伊人超碰| 人人人舔人人人操人人人摸人人人97| 97人人干| 亚洲色图81p| site:pzdcoin.com| 97色色综合| 久久这里只精品| 伊人丁香五月天丁香在线婷| 啪啪一区| 第四色五月婷婷| 久久99精品久久只有精品| 日曰躁夜夜躁2026| 色丁香五月天射婷婷爱婷婷| 激情网婷婷五月天| 六月婷婷毛片| 激情久久久| 最近中文字幕2019视频1| 色五月,婷婷大香蕉| 五月伊人网| 天天操天天谢| 狠狠色综合网| 秋霞性爱AV| 伊人婷婷五月| 99爱视频| 激情综合4月| 99视频在线观看视频| 综合网啪啪| 国产成人精品123区免费视频| 婷久久综合| 丁香五月激情综合| 丁香五月香蕉| 激情婷婷在线中文字幕| 97色啪| 青青久在线视频免费观看| 久久综合综合综合| 色欲资源网| 亚洲婷婷免费| 99综合| 五月天激情婷婷久久| 欧美成人精品A片免费一区99| 四川操逼站| 日在线V视频在线播放| 亚洲成人在线免费| 人人操插| 婷婷六月啪啪| 97人人射| 色人久久| 深夜婷婷五月丁香| 午夜少妇在线观看视频| 婷婷色系婷色| 久草热8精品视频在线观看| www.精品99| 日日狠狠久久偷偷四色综合免费 | 人妻熟女一区二区AV| 九九re精品视频在线观看| 色婷婷视频综合| 无码免费人妻A片AAA毛片西瓜| 久热九九| 狠狠操狠狠插| 丁香五月aV| 超碰av在线| 丁香六月啪| 第四色大香蕉| 丁香啪啪| 疯狂做受XXXX高潮A片| 国产婷婷色五月| 成人片在线播放| www.91操| 国产精品A成V人在线播放| 丁香五月自拍| www.丁香六月婷婷久久天堂影院.con| 激情五月www| 中文字幕操比影片| 九九热精品视频在线观看| 99五丁香月| 狠狠色性| 停停五月色宗合| 色色色免费视频| 丁香婷婷激情四射五月| 超碰网站在线观看| 亚洲欧美婷婷五月色综合| 久久九九@| www.色色com| 五月丁香啪| 婷婷色色丁香五月天| 玖玖五月| 丁香激情合作五月| 六月婷婷视频| 欧美日本日韩| 婷婷五月天国产在线播放| 99久久.www| 99热99热不卡| 婷婷久月| 五月天另类小说久久小说网| 九色视频91| a色色色色色| 高清一区二区三区日本久| 可以免费看的av网站| 激情九九九九| 日本99久久| 丁香五月婷婷亚洲色图| 亚洲天堂有码| 五月综合视频| 婷婷五月丁香91| 蜜乳9188| 久久九九精彩| 国产精品久久久久9999小说| 五月天婷婷免费| 久久网站免费亚洲| WWW.久久久久久久久久久久久| 五月婷婷色影院| 九九sese| 色综合丁香| www.99热国产| 日本色噜| 婷婷五月激情五月丁香五月| 人与禽A片啪啪| 成人免费va| 九九热亚洲中文在线观看免费| 1024国产在线| 久久久久久人妻| 尔尔AV一区| 99re这里只有精品99| 成人做爰A片免费看网站找不到了| 亚洲色情网站| VA国产在线综合网站| 啪啪操操| 大香蕉太香蕉视频97| 丁香六月婷婷色XXXXX| 婷婷五月激情在线| 日本va欧美va精品发布视频 | 日本久久精品18| 五月综合婷婷网| 4399在线观看免费高清黄色视频| 五月丁香狠狠爱婷婷综合| 91狠狠综合久久| 五月开心深深爱激情综合 | 影音先锋91| 天天射夜夜骑| 色婷婷五月天激情综合| 无码AV久久久久久久久| 丁香五月天激情综合| 天天射天天射一道本日本社区| 亚洲字幕AV一区二区三区四区| 桔色成人在线| 色亚洲视频| 丁香社92视频| 丁香五月天社区| 婷婷五月天开心网| 欧美视频在线观看噜噜| 热99国产精品| 中文字幕日韩成人| 草榴视频黄色网| 99性色| 九九热这里只有精品5| 99色热综合| 99热9999| 天天舔天天爽| 九九久热| 亚洲激情五月丁香久久久久| 一级七香蕉| 天天干,天天日| 久草热在线视频| 人人舔人人色人人高潮| 国产亚洲精品人人| 亚洲精品成人| 97热精品| 99草在线免费观看视频| 图片区 小说区 区 亚洲五月| 丁香九月综合激情| 欧美精品18| 久久99最新地址| 久9热| 激情五月天影院| 婷婷开心青青草| 久久XX| 丁香 亚洲 久久| 激情网 久久| 伊人在线视频| 极品人妻VideOssS人妻| 99精在线| 国产激情综合五月久久| 操一区| 婷婷五月天视频免费在线观看| 天天摸夜夜爽天天做| 五月婷视频久久| 日本99在线| 丁香香蕉婷婷| 99在线综合视频| 抽插特写| 色爱爱综合网| 97人妻碰碰碰碰碰久久久久久| 九九99精品免费播放| 色五月婷婷五月天| 97在线视频观看| 天天爽天天操| 五月天婷婷久久| 亚洲第一第二网站| 色色激情五月天| 激情影院丁香五月| 国产精品VIDEOSSEX久久发布| 一本色道久久综合狠狠躁小说| 99熟女| 日本91在线| 人人澡天天色天天做| 欧美三级欧美一级| 热99国产精品| 婷婷久久国产视频| 五月天婷婷五月| 开心五月婷婷激情网| 丁香综合伊人AV| 婷婷激情五月天在线视频| 综合激情网五月激情 | 99色亚洲| 年轻的妺妺伦理HD中文| 伊人喵咪a V| 婷婷五月久久| 亚洲综合另类| 五月天婷婷激情网| 亚洲色小说在线综合| 婷婷五月天亚洲激情戏精品| 日韩视频99| 久色五月丁香视频| 婷婷五月天AV| 色色色色欧美| 成人AV网站在线| 久久久婷丁香五月天激情综合| 91精品综合久久婷婷九色| BT综合在线视频观看| 婷婷六月丁香激情| 久久婷婷五月天激情唯美| 六月丁香好婷婷| 五月综合婷婷五月| 久操婷婷| 艹B高清无码| 丁香五月婷婷激情完整版| 天堂综合久久| 久久亚洲色导航| 亚洲色色色色| 啪啪99| 99热99精品在线观看| 五月婷婷色情| 婷婷五月天BBw| 另类 在线| 99热这里| 野战J办公桌椅H| 久久久.www| 毛片新网地| 九九精品这里只有| 天堂五月婷婷| 1024在线一区| 国产成人在线精品| 五月婷婷狠狠干| 亚洲成人av在线播放| 97啪啪| BBWCUCKOLD精品熟妇| 黄色片久久| 婷丁香五月天| 婷婷色日本| 五月天播播| 久久曰曰| 色娸娸综合网| 激情五月六月丁香| 狠狠色丁香| 九九操屄| 婷婷五月天成人在线视频| 人人操人人爱丁香五月| 婷婷在线视频| 中文字幕丰满人妻无码专区| 狠狠干激情五月| 激情99| 伊人天天色| 玖玖热视频| 97色色色| 日本久久视频| 五月婷婷 激情五月| 深爱综合网| 亚洲精品444久久久久久| 婷婷综合另类小说| 99色五月| 人妻六月天| 79亚洲精品少妇| 色婷婷五月天久久| 91色性感五月婷婷丁香| 综合欧美五月婷婷| 四色永久成人网站| 4399在线观看免费高清黄色视频| 婷婷色成人| 99免费在线| 日韩久久欧亚| 99久久九九| 欧美操人| 激情美女五月天| 狠狠色97| 另类国产区| 日日狠夜夜狠| 成人做爰黄A片免费看直播室男男| 99久.| 色五月激情网| 九九热99在线视频| 婷婷激情五月色综合| 亚洲精品久久久无码| 五月花激情网| 五月丁花六月丁香综合| www.99操.com| 丁香六月婷婷姐网| 九九九九九九九九九九九九九九九九九九九在线视频 | 欧美啪啪五月天| 激情五月婷婷中文字幕| 9精品久久999| 亚洲另类婷婷五月综合| 草草夜夜操| 99热国产在| www.超碰在线| 久久aaa| 狠狠色噜噜狠狠狠888| 色综合丁香婷婷| 五月天亚洲综合网| yazhochengrenavwang| 色5月婷婷| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 成人超碰Av| 色和综合网| 婷婷五月天色网久| www.一区二区三区| 激情综合五月婷婷六月丁香| 综合久久伊人| 91免费看片| 久久婷婷五月综合激情国产| 精品人妻一区二区三区四区不卡在| 成人精品免费在线观看| 九九久久五月天综合伊人| 大地9中文在线观看免费高清 | 久久HD| 91婷婷在线| AV网站免费在线| 国产av基地| 久久人妻久久| 日韩无码人妻一区二区三区综合| 懂色av粉嫩AV蜜臀AV| 青青草原精品久久| 97超级操操| 九艹在线| 综合激情啪啪| 99热综合在线观看| 久久九精品| 色吧五月婷婷| 九月色婷婷| 久久狠狠色| 人人操人人妻| 婷婷色色丁香五月天| 激情综合色网| 日本欧美成人片AAAA| 天天干天天爽天天操| 成人短视频免费| 人人妻人人澡| 五月丁香激情综合六月涩涩爱| 91狼友视频在线观看| 99视频| 色婷五月天| 久草热久草在线视频| 人人操人av| 色五月激情综合| 99热这里是精品| 色色网站免费观看| 99热1| 五月婷在线| 五月婷婷激情四月| 久热久| 91男同视频| 七七色色综合| 五月色 亚洲| 男人天堂AV在线一区二区| 中文字幕不卡+婷婷五月| ri电影在线| 91啦丨九色丨刺激中文| 亚洲超碰在线| AV人人操| 色色婷婷五月天| 婷婷色色综合| 在线另类| 久久婷婷五月| WWW、日本色丁香、co m| 91oumei| 亚洲综合婷婷| 亚洲成人av在线播放| 99在线观看免费精品视频| 综合99在线| 久久HD| 天天爽夜夜操| 操丝袜视频影院导航| 国产婷婷五月天| 综合色、色综合| 综合99综合久久久久久久| 高清无码 一区 二区 三区| 97香蕉人人在线观看| 激情丁香五月| 日韩成人电影在线播放| 直接看的AV网站| 婷婷丁香视频在线观看免费| 天天综合 99久久婷婷| 亚洲精品久久久久AV无码| 天天日日夜夜| 婷婷五月天六月| 激情综合五月婷| 亚洲婷婷丁香五月| 九九热青草| 久久伊人五月天| 欧美丁香婷婷五月天| 亚洲精品乱码久久久久久综合| 9福利性视频欧美| 综合五月天| 在线网黄| 婷婷大乡焦噜噜| 5月色亭亭视频| 婷婷娌伦网| 久久性都花花世界成人免费视频| 国自产拍偷拍精品啪啪一区二区| www.操.com| 色爽九九| 日本狠狠干| 色射婷婷五月天| 天天日日夜夜爽| 欧美色99| 91精品久久久久久久久久久久| 琪琪色网址| 亚洲中文字幕在线观看| 亚洲精品一区无码A片| 九九热免费| 久久久.COM| 九九热视频精品| 国产精品久久久丁香五月八戒视频| 九九视频这里只有精品在线播放 | 亚洲色图81p| 9色小视频在线观看| 97热91| 日本猛少妇色XXXXX猛叫| 九九热精品| 色色五月婷婷| 99热只有| 久草热8精品视频在线观看| 玖玖爱伊人| 亚洲旡码| 久机视频这只有精品| 99色天堂| 亚洲操操操| 性爱久久| XX色综合| 天天色凹凸| 91碰碰碰久久久久| 99热国产婷婷| 51XX午夜影福利| 久色网址| 九九热只有这里是精品| 99视频精品全部免费 在线| 六月丁香深深爱| sewuyue第四色| 丁香五月色情| AV操操操| 色五月成人| 五月婷激情| 操碰91| 成人无码精品1区2区3区免费看| 精品一二三区久久AAA片| 色色网站毛片| 久久机热探花| 97自拍99| 色婷婷黄色网络| 丁香五月在线视频| 欧亚洲在线高清视频| 激情六月丁香综合| 五月丁香狠狠地噜噜噜噜| 婷婷五月视频| 久久婷网| 国产乱妇无乱码大黄AA片| 狠狠噪| 色婷婷AV久久| AV在线观看网站| XXXX岛国| 日日爽日日| 久99视频在线观看| 精品一区二区三区免费毛片爱| 日本综合99| 第四色五月婷婷| 金桔一区二区ab地址| 91啪级电影| 伊人色欲五月天| 婷婷久久精品| 777影视理论片大全在线观看| 五月丁香婷久久| 影视av久久久噜噜噜噜噜三级| 欧美va亚洲va| 五月草视频| AA丁香综合激情| 91 影音先锋| 伊人丁香五月天丁香在线婷| 成人版视频在线观看| 伊人丁香六月婷婷| 国产成人亚洲综合A∨婷婷| 97超碰综合| 色五月婷婷网| 六月婷婷香蕉| 免费试看小视频 99| 色五月偷偷| 久久精品99国产精品日本| 婷婷五月精品| 99色区| 久久精品视频在这里有| www五月| 色站9/| 色婷婷五月天激情久久| 99爱在线精品视频免费观看| 久久99网站| 狠狠综合区| 五月婷婷色播网| 色色色在线观看| 丁香五月婷婷免费视频| 9九热视频| 六月丁香激情| 99热香港| 激情五月激情综合网一级丸片 | co超碰在线观看| www,久久久| 丁香五月综合在线观看| 婷婷五月天激情小说| 中文字幕在线视频播放| 国产精品成人AV在线| 丁香婷婷久| 婷婷伊人綜合中文字幕| 五月激情婷婷国产精品久久久久久| 蜜桃人妻无码AV天堂三区| 人妻视频在线| 俺去也五月天婷婷| 久草丁香婷婷1024| 亚洲色欲欧美一区二区三区| 99无码视频| 欧美超级视频97| 天天干狠狠艹| 婷婷香蕉精品| 婷婷久久五月天亚洲欧美国产日韩在线观看 | 久久98| 天天日天天舔| 久热在线观看视频9| 热99久久这里只有精品| 99这里只有精品| 丁香五月婷婷基地| 色久九| 狼友超碰| 另类视在线| 五月天丁香综合在线| www.五月瑟| 97色婷| 丁香婷婷色| 五月天激情图片| 激情综合五月色丁香婷婷 | 如何安全看伊人婷婷| 97色久| se色综合网| 2023天天日夜夜爽| 国产精品激情AV久久久青桔| 色五月在线| 五月天综合网| 人人添人人| 欧美私人家庭影院| 五月综合777| 国产精品99久久久久久久女警| 丁香五月另类色婷婷麻豆| 色色色综合| 国产视频福利| 色综合久久44| 丁香五月婷婷久久综合激情网 | 欧美精品99久久久| 新97人人上人人| 久久草大香蕉| 一区二区中文字幕| 免费无码毛片一区二区A片| 激情5月婷婷狠狠干| 色五月综合在线| 亚洲国产成人综合| www,婷婷五月天777me,com| 国产日韩精品SUV| 日韩一区二区三区无码| 五月丁香亭亭电影久久| 五月天婷婷人妻| 玖玖91| 婷婷丁香十月| 好好干Av| 五月婷性爱| 超碰爱爱爱| 秋霞黄色一级久久| 操逼电影免费看| 精品网站:999WWW| 夜夜躁狠狠| www。五月,com| 久草五月婷婷| 奸逼视频| 97自拍99| 婷婷六月综合激情| 涩五月丁香| 婷婷五月丁香人妻无码高清| 伊人婷婷综合| 色五月在线| 性爱五月婷| 久综合色| 无码婷婷五月天| 天天操五月天| 午夜天堂啪啪| 天天操九九插| 影音先锋美国A| 天天日天天草| www色婷婷久久综合久色 | 国产肥白大熟妇BBBB视频| 天天碰夜夜爽| 久久五月丁香| 91人妻人人操| www色婷婷| 欧美性爱特黄一级aaaassss| 五月天天综合| AA片在线观看视频在线播放| 五月天婷婷社区| 五月天国产成人| 麻豆忘忧草午夜| 九九伊人网| 五月六月激情| 9婷婷内射| 成人精品视频99在线观看免费 | www.99视频| 久久婷婷色情7777网站| 五月婷婷六月激情| 五月天婷婷丁香导航| 天天模,夜夜模夜夜爽| 99干日本| 99精品丰满| 久/久精品99看9| 超碰网站在线观看| 色色丁香激情五月| 婷婷另类开心| 亚洲色综合| 久久99日本精品视频免费观看| 高清无码网址| 激情婷婷五月天| 日日夜夜天天| 开心色五月天久久久久久久| 玖玖精品视频99| 亚洲激情综合| 久久久99免费视频| 丁香六月婷婷社区| 丁香五月婷婷综合激情哟哟哟| 丁香五月婷婷啪啪| 婷婷视频网| 五月天婷婷色色网| 久久五月天婷婷| 婷婷五月丁香综合人妻| 极品少妇XXXX精品少妇偷拍| 思思久久精品| 俺去啦综合网| av在线免费播放| 99视频内射三四| 另类天堂| 色狠狠色| 亚洲五月婷| 丁香五月AV| 丁香五月天综合| 九九这里都是精品| 综合五月天完整| 国产精品久久久丁香五月八戒视频| 99人这里只有精品| 同性gv国产精品一区二区| 99久久免费性爱视频`| 成人av在线电影| 久综合| 日本天堂爱爱| 中美月韩免费A片| 国产免费一区二区三区三州老师F1F1.CC| 97AV人人插人人操| 日本成人噜噜噜| 六月婷婷开心| 99热这里只有精品99| 激情五月天综合婷婷网| 亚洲精品永久久久久久| 久久久久久久人妻| 激情综合五月| 九九综合伊人| 91精品久久久久久综合五月天| 91在线日| 99精彩视频| 狠狠色婷婷7777久| 一本色道久久88综合日韩精品| JAPANRCEP老熟妇乱子伦视频 | 久热这里只有精品性色AV| 人人色人人摸人人看| 九月丁香婷婷综合激情| 五月婷婷成人网首页| 丁香五月六月婷婷自拍| 久久五月婷天天干| 欧美xx激情视频在线观看| 成人va视频| 99毛片| 九九色综合| 五月丁香六月激情综合| 99re欧美精品| 欧美久人人| 日韩另类| 激情婷婷人妻| 开心五月天激情网站| 婷婷激情图片| 九九99久久| 亚洲国产无线乱码在线观看| 99色在线观看视频者| 日韩有码久久| 综合色播| 久久机热这里只有 | 五月婷婷在线视频观看| 色情综合| 久久AAAA片一区二区| 微拍92| 国产免费一区二区三区三州老师F1F1.CC| 91chinese在线| 丁香色播五月天| 五月在线| 青青草五月天| 沈娜娜av| 婷婷五月天激情小说| 成人五月天在线视频在线观看| 69色色视频| 久久激情五月天| 天天做天天爱| 丁香久久九九99| 天天草人人摸| 97热在线精品| aaa丁香五月天| 婷婷无码视频| 久久婷婷综合网| 亚洲午夜成人av电影网| 开心五月婷婷婷美女| 天天操夜夜夜夜爽| 婷婷五月丁香六月综合网| 26uuu亚洲| 久久久噜噜噜操操操| 91婷婷| 婷婷五月色網站| 99爱在线精品视频免费观看| 色在线免费观看| 狠狠做五月| 情久久综合五月天| www久久99| 99婷婷五月天激情| 五月六月激情婷婷| 啪啪婷婷五月天激情| 国产一区二区av免费| 大香蕉五月天婷婷丁香91| 九九亚洲小视频| 六月婷婷激情| 久久免费干| 婷婷久久久久久久| 六月婷婷久久| 五月天另类小说久久小说网| 激情五月天噢美| 丁XX 成人| 婷婷影院A成人| 久久婷婷影院| 一丁香五月天月AV| 色级停停| 欧美噜噜免费观看| 伊人色综合久久久| 依人大香蕉在钱1| 亚洲VA欧美VA| 色射影院| 亚洲另类av| 五月天精品综合在线| 激情五月天色播| 五月久久婷婷天堂视频| 五月天色婷婷伊人网| 国产成人精品亚洲线观看| 亚洲精品国产setv| 激情五月天小说网| 羞羞嫩草视频| 99久久思思| 色色99| 亚洲99综合| 日本五月天网站| 五月丁香激情综合网官网| 天天上天天爽| 色婷婷色99国产综合精品| 色综合九九色综合88| 91午夜激情| 狠狠狠狠草草| 亚洲99视频| 久久免费精彩视频| 天天想夜夜爽天天爽| 亚洲国产成人综合| 91碰碰视频| 色综合五月| 九月大香蕉| 亚洲第一精品网站| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 婷婷激情五月天7| 深夜男女福利刺激影院一区完整| 99亚洲精品视频| 欧美色色色色色| 国产综合A片| 亚洲色A| 日本三级99人妇网站| 婷婷开心综合人妻小说网址| 欧洲色区| 婷婷五月天综合蜜桃| 九九性视频| 好吊操这里只有精品| 97人人超| 天天日人人| 2018国产大陆天天弄| 亚洲人人96@| 天天综合精品| 久久婷五月综合色| 碰97 久| 开心五月婷婷99| 亚州第一黄网| 激情五月天小说| 狠狠色狠狠爱| 色色五月天婷婷丁香| 激情婷婷久久| 亚洲色综合| 丁香婷婷六月激情文学| 亚洲久热| 九九热99精品在线| www。五月,com| 99热免费在线| 久婷婷婷| 99久久综合网| 26UUU亚洲欧美| 大香蕉视频99| 精品丁香五月天在线播放| 中文字幕97超级碰| 五月婷婷中文字幕| 亚洲精品欧洲精品| 丁香五月激情久久麻豆| 五月天精品视频| 欧美日韩国产伦精品日韩人妻一| 色五月激情综合网| 亚洲精品乱码久久久久久综合| 日本熟妇乱妇熟色A片蜜桃| 亚洲色 视频| 国产肏屄大片| 九九这里有精品| 婷婷五月激情综合啪啪| 日本九婷婷| 亚洲av网站| 亚洲乱码日产精品BD| 99热这里只有免费| 久久99精品久久久久子伦| 色情五月婷婷| 99re这里有精品手机在线| 成人国产网站| 五月天亭亭俺也| 日韩小视频在线99| 亚洲综合一区二区| 99久久婷婷国产综合| 久久五月婷天天干| 98色花堂98t.R| 99这里有精品| 亚亚州久久高潮| 五月天大香蕉| 丁香五月婷婷欧美性爱| 五月婷婷丁香五月| 婷婷五月丁香六月伊人网| 亚洲美女裸体被操在线观看| 99ri精品在线| 综合色五月天| 五月激情射| 国产午夜精品AV一区二区麻豆| 五月开心激情| 婷婷欧美偷拍综合| 另类图片五月激情| 五月天亭亭俺也| 色色网五月激情| se99高清无码| 久热爱大香蕉在线蜜臀悦色 | 色偷偷色婷婷| caop视频| 久草天堂| 五月婷婷之美女图片| 97热视频| 真实熟女-91九色| 欧美这里只有精品| 五月丁香六月婷婷无码| 丁香五月天天| 国产九九一区二区三区| 成熟妇人A片免费看网站| 久青操| 综合色色婷婷| 中文字幕 码精品视频网站| 丁香狠狠色婷婷久久无码视频| 99久视频| 五月天激情国产综合婷婷| 色色综合日韩| 丁香五月在线自慰| 91在线看片| 婷婷综合在线| 人人人操| 激情小说视频图片| 五月色情婷婷开心五月色情| 日韩一级A片黄色| 久久免费干| 国外亚洲成AV人片在线观看| 97操操操| 日本va欧美va国产激情| 六月婷婷影院| 天天做综合| 狼友视频在线观看18| 在线综合91| 色色色色色色综合网| 婷婷五月天av| WWW.99热| 99这里有精品| 五月丁香六月婷婷综合| 激情合网婷婷| 欧美激情 日韩无码 婷婷 五月天| 久99在线视频| 啪精品| AV中文字幕夜夜操b天天摸bb| 大地资源色婷婷视频在线| 夜夜干夜夜操| 婷婷久月| 碰碰女| www.色婷婷| 欧美丁香婷婷五月| 日日狠狠久久偷偷四色综合免费| 亚洲婷婷丁香五月天激情小说| 久热9| 人人人操| www.久久爱.com| 欧美日韩五月婷婷| 狠狠色噜噜色狠狠狠综合色| 99热爆在线| 熟惀91九色在线| 青青草国产亚洲精品久久| 这里只有精品久久| 色色综合网站| 激情五月天色色| 久久精彩免费视频| 久草婷婷| 婷婷五月天伊人| 五月天婷婷激情| 深爱五月婷婷| 天天操夜夜操| 欧美丰满熟妇BBB久久久| 午夜69成人做爰视频| 夜夜穞天天穞狠狠穞AV美女按摩| 九九色影院| 99久久99久久综合| 婷婷在线播放| 少妇人妻丰满做爰XXX| 欧美性色A片免费免费观看的| 五月激情在线| 99在线精品免费视频| 嫩BBB搡BBBB榛BBBB| 欧美大片免费播放器| 欧美三级巜人妻互换| 熟女少妇内射日韩亚洲| 亚洲三A| 久99久视频精品| 99碰碰碰| se99热久久一本| 久久狠狠干| 另类天堂| 久久亚洲网| 艹| 九九爱激情| 天天色天天| 97人人操人人| 天天天天干| 无码激情AAAAA片-区区| 99热传媒| 综合激情sV| 日良久久| 思思热99er在线视频| 狠狠操狠狠狠| 日日夜夜狠狠操| 亚洲性爱电影| 狠狠穞A片一區二區三區| 无码激情AAAAA片-区区| 天堂二区| 九色七七| 精品色情一区二区三区四区| 亚洲人人干| 婷婷五月丁香六月综合网| 午夜九九九九九九九九九九九九九| 99久久9| 嫩草AV久久伊人妇女超级A| 激情婷婷护士激情| WWW.99视频| 在线,国产,色,热视频| 五月丁香花激情综合网| 五月天丁香成人社| 婷婷精品视频| 七七久久婷婷| 五月激情啪啪啪| 色婷婷丁香五月丁香| 丁香五月婷婷色情综合| 国产精品久久久久久白浆色欲| 97精品人人A片免费看| 九九热99在线视频| 久久伊人五月天| 五月婷AV| 丁香色六月婷婷| 国产在线网| www.黄色片-久久成人国产精品在线播放-999AV | 激情婷婷五月天| 亚洲综合视频八| 狠狠爱综合| 1010日日无码| 五月天激情影院| 日本操B视频在线观看| 极品色丁香| 亚洲九九九九| 成人婷婷| 九九婷婷五月天| 五月丁香色| 婷婷开心激情综合五月天| 超碰九九热| 狠狠插.com| 中文字幕av在线| 日本欧美国产| 色播丁香| 俺去婷婷 丁香| 99婷婷五月天| 中文AV网| 97在线观视频免费观看| 99综合自拍| 天天做综合网色综合| 97人人干人人操| 久久99网| 久久婷婷丁香五月一二三| 日本九婷婷| 激情图片亚洲| 狠狠大香婷婷爱| 天天操婷婷| 日韩AV免费电影在线播放| 成人在线网| 99久久网站| Blackedraw视频一区二区| 婷婷99| 五月天婷婷基地| 亚洲丁香花五月丁香花| 99re熱| 亚洲视频操| 97涩婷婷| 婷婷五月天综合蜜桃| 色五月综合网| 色五月欧美| 五月草影视| 国产看真人毛片爱做A片| 成人视频一区| 六月激情网| 五月天大香焦| 99热综合在线观看| 婷婷深爱五月天| 久久久天堂国产精品女人| 日韩激情婷婷五月天| 五月丁香啪啪综合| 国产高潮白浆一区二区| 深爱激情AV| 色99网站| 日本色图综合| 色五月婷婷亚洲最大| 九九色婷| 男人综合网| 丁香五月综合| 色色婷婷五月天| 热99精品视频五月| 99婷婷五月天激情| 蜜乳中文字| 丁香五月婷婷图片综合| 五月婷无码| 日本高清久久| 色久婷婷五月| 色五月在线播放| AV在线资源| 超碰在线视屏| 99精品人人| 久9视频免费播放| 91色在线 | 日韩| 天天干天天干天天操| 亚洲国产成人AV在线| 天天干天天爽天天操| 色五月激情五月| 丁香五月婷婷丫| EEUSS鲁片一区二区三区| 色五月天天在线观看资源站| 99精品在线观看视频| 婷婷大香蕉| 丁香午夜天| 激情婷婷丁香五月天小说| 综合网天天| 99在线精品视频免费| 婷婷狠狠操| 激情五婷精品网在线观看网址| 色综合久| 激情五月丁香色婷婷| 国产午夜精品AV一区二区麻豆| 五月婷婷和六月| 五月天激情色色| 色综合网综合| 五月色亭丁香| 永久精品| 色五月婷婷91| 香蕉狠狠爱视频| 久久久精品视频79| 五月激情综合网| 五月青青草综合| 亚洲无码影音| 五月激情综合美女久久| 色爱综合五月| 伊人婷婷色| 超碰九色| 99久久国产宗和精品1上映| 婷婷开心青青草| 丁香五月天AV在线| www,色色色网站| 久久人人九| 激情五月天在线视频| 99热在线免费观看精品| 91妻人人爽人人看片| 午夜色丁香| 欧美日韩国产一区| 91欧美| 国产婷婷五月中文字幕高清| 色综合激情图区| 五月综合婷婷五月| 亚洲一级色电影| 成人av免费观看| 五月丁香五月天现场视频| 色情五月| se99视频| 五月天婷婷色播在线网| 激情五月天福利| 伊人久久99| 99精品视频在线| 色综合av超碰| 91狠狠色丁香婷婷综合久久| 天天草天天舔| 久久色吧| 成片免费观看视频大全| 激情图片婷婷| 2021日韩无码| 久久综合人妻| 亚洲综合色五月| 97se视频在线| 色丁香五月婷婷| 亚洲av骚货| 久久久婷| 新激情婷婷| 99在线视频播放| 97涩涩丁香五月天| 欧美超碰人人| 国产亚洲色婷婷久久99精品91| 99色免费视频| 五月色综合| 亚洲中文AV网站| 五月婷婷六月丁香| 天天狠天天叉|