欧美成人午夜精品久久久,国产?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
返回資訊列表
99日在线视频| 激情丁香久久久久久| 色五月激情基地| 伊人五月天久久| 色色激情| 人人操人| 99热亚洲| 激情桃色网 | 久久久91| 丁香五月婷婷成人网| 五月天婷婷五月| 五月天中文网| 久热大香蕉| 美国少妇性做爰| 无码动漫av| 狠狠艹狠狠艹| 色天使色婷婷| 韩国97天堂| 99性色| 婷婷五月色丁香在线看| 婷婷五月在线免费| 日韩AV在线免费观看| 激情五月天社区| 大香蕉 婷婷| 超碰国产在线观看| 色婷婷色五月天| 激情5月舔| 色综合色综合色综合| 亚州操人在线视频| 五月天丁香网| 综合AV在线| 婷婷丁香色五月天久久88| 伊人成综合五月婷婷| 超碰在线人妻| 色五月婷婷影院| 天天色激情| 精品人妻伦| 激情五月婷婷视频一区二区三区| 色婷婷av综合网| 5月丁香啪啪啪| 丁香五月婷婷动漫| 激情综合色五月六月婷婷| 婷婷丁香五月激情密臀av| 久久精品国产精品| 国产欧美精品AAAAAA片| 777精品久无码人妻蜜桃| 9有码中文| 天天干天天操| 色 色 色综合com| 亚洲综合在线视频| 日日噜狠狠色综| 婷婷五月激情网| 91综合视频在线| 激情婷婷狠狠干综合| 天天综合网站| 五月天色婷婷图片| 精品国产va久久久久| 亚洲色图五月丁香| 丁香五月另类色婷婷麻豆| 中文在线视频久9| 91免费啪视频| 熟女国产在线一区二区三区四区| 久久99精品久久久| www.久久9| 色yeye欧美| 激情综合网激情五月俺也去| 91干网站| 色综合五月| 丁香情色五月| 国产婷婷五月| 婷婷五月天色色| 超碰在线人人| 五月天婷婷在线观看精品男人| 婷婷色激情网| 色狠狠综合网| 天天日天天爱天天噪| 深爱五月最新网址| 七七色色综合| 五月天国产| 久久99热这里只有精品| 黄桃AV无码免费一区二区三区 | 色情五月天丁香社区| 日韩美女在线视频19| 97自拍视频网| 丁香色成人| 久久人人九九| 婷婷月综合| www.婷婷六月天| 丁香五月最新地址| 色一情一乱一乱一区91Av| 国产成人网站在线观看| 五月丁香六月片| 国内9l视频自拍老熟女九色| 亚洲综合婷婷五月| 日韩成人精品一区久久久久| 日日操夜夜爽| 天天色天天操天天射| 91色久| 五月天开心网| 一起草aV| 精品婷婷五| 色五月激情五月丁香五月婷婷啪啪综合| 午夜性爱影视一区77| 激情五月六月丁香| 亚洲色图五月丁香| 国产99久久久国产精品免费看| 不卡在线中文字幕无| 91呦呦呦| 欧美天天爽| 免费试看小视频 99| 亚洲激情97五月天| 99热国产这里只有精品| 91九色PORNY大屁股| 五月婷婷黄色毛片| 草AV9999| 久99久视频| 大地资源色婷婷视频在线| 丁香五月亚洲综合| 日韩免费乱轮网站| 丁香久久久| 欧美噜噜噜草| 五月丁香欧美在线| 深爱激情五月网| 久cao香蕉影院| 99re久热只有精品6在线直播.com| 久操大香蕉| 丁香六月天色婷婷| 97色婷| 欧美成人精品A片免费一区99| 91精品久| 日本www五月婷婷| A久久| 97啪啪| 31色区视频免费看| 另类婷婷丁香| 天天爽夜夜操| 久久资源网五月婷| 五月丁香中文| 欧美天堂婷婷日韩| 无码G高清天| 久久久久久人妻| 色五月丁香五月| 色噜噜五月丁香婷婷| 26uuu国产色| 色色色色网站| 万月丁香狠狠爱| 亚洲午夜AV| 五月婷婷婷| 激情五月婷婷综合| 玖热精品综合视频| 色色色色色色色色五月先| 一本色道久久88加勒比| 欧美日韩成人在线| 综合色视频| 五月的婷婷六月丁香| 97超碰在线免费观看| 中文字幕日本最新乱码视频| 五月婷婷天天色| 丁香久久五月婷综合| 婷婷在线五月综合| 色婷婷AV五月天| 五月婷婷色色色| WWW.久久99| 亚洲尤物在线| 亚洲操操操| 久久新| 色婷婷AV久久久久久久| 久久婷婷艹| tingting五月天亚洲| 伊人激情啪啪| 婷婷91| 99精品视频偷拍| 激情婷婷综合网| 九九久久视频| 亚洲影院婷婷色| 亚洲色色精品| 91狼友视频网页更新| 五月在线婷色| 中国丰满熟女A片免费观| 激情综合区| www.91九色| 97色女人在线| 激情五月色婷婷| 青青艹b| 这里只有精品9| 五月天成人手机在线视频| 91精品婷婷国产综合久久| 久久久性爱网| 欧洲色色| 九九香蕉网| 综合色五月天| 五月色丁香综合| 成年人丁香五月| 婷婷五月天最新综合你懂的 | 日韩成人中文字幕| 五月欧美色播| 丁香五月天堂| 成人婷婷色五月天| 色综合77777| 色五月开心开心五月激情五月| 丁香五月色| 亚洲色9| 激情五月天在线免费美女视频| 毛片蕉地一二| 婷婷五月情| 深情六月婷婷综合久久| 玖玖婷婷五月天毛片| 色婷婷五月中文字幕在线dvd| 热九九九九| www热久久yy9| 色婷婷五月六月丁香综合视频| 超碰女人天堂| 在线色五月婷婷| 97久久综合网| 天堂综合久久| 六月综和久久| 操逼综合网| 久久久久久久人妻| 翔田千里aV中文字幕| 激情综合网五月婷婷| 就爱啪啪婷婷| 五月丁香综合成人社区| 久热免费视频| 九九在线精点品| A1片久久久| 五月天国产| 视频这里只有精品16| 伊综合蕉| 色婷婷综合网| 五月婷婷在线观看| 97操碰| 99热久久这里只有精品| 夜夜撸日日操| 五月天婷爱综合| 99噜噜噜| 国产精品色情AAAAA片软件| 丁香五月天的网址。| 91丁香| av中文在线| 五月天婷婷黄色| 色情五月婷| 婷婷五月色| 精品成人a v无码内射| 色欲天天综合| 毛片九九九九九九| 四川BBB搡BBB搡多人乱亂| 丁香六月激情国产| 天天操夜夜夜拍拍拍| 激情五月婷婷她| 99热这里只有精品5| 色婷五月| 色波激情五月天| 中文字幕无码成人电影| AV成人在线网站| 婷婷伊人久久| 婷婷成人视频| 99这里的视频都是精品| 丁香六月激情| 丁香五夜激情四射夜夜夜| 亚洲操操| www.久久99热地址发布| 天天天操天天天日| 欧美成人网婷婷综合在线| 91九色欧美| 激情图片亚洲| 国产精品扒开腿做爽爽爽A片唱戏| 九九成人| 99色性爰网络| 26uuu国产激情视频| 97欧美在线| 狠狠精品干练久久久无码中文字幕| 日韩成人AV在线播放| 射久久丁香五月| 爱性综合网| 97操碰在线视频| 丁香六月婷婷| www婷婷| 九热免费视频| 五月天伊人| 久久99美女精彩视频| 天天综合亚洲综合网天天αⅴ| 色青五月天| 五月天丁香婷婷久久九| 99热 精品在线| 操骚货在线| 五月婷婷人人人操| 秋霞成人毛片一级A片| 五月天网站亭亭| 久久精品小视频| 欧洲永久精品| 99热这里只有精品国产免费| 欧美婷婷六月丁香综合色连续高潮抽搐| 综合性爱网| 婷婷酒色网| 香蕉人妻AV久久久久天天| 五月丁香六月婷| 婷香五月| 激情综合一| 99ri精品| 狠狠色丁香| 丁香五月天激情| 熟女激情网| 天天做天天爱天天高潮| Av九九| www.五月婷婷.com| 9久热| 五月天激情四射| 五月丁香久久综合| 婷婷五月丁香六月| 亚洲欧洲中文日韩久久AV乱码| 大香蕉人妻| 激情丁香五月| 秋霞AV吧| 97婷婷五月激情六月丁香伊人| 丁香五月激情啪啪啪| 亚洲AV成人在线观看| 婷婷五月丁香图片人人操| 国产真实乱了老女人视频| 极品少妇XXXX精品少妇偷拍| 91蝌蚪窝视频在线| 色月丁| 久久亚洲天堂| 久热91| 亚洲精品色色| 久色国产| 婷婷五月天丁香社区| 亚洲综合视频网| 色色色色五月天| 婷婷色婷婷| 亚洲黄色影视| 激情综合九| 激情av网| 26uuu精品一区二区| 色婷婷AAA| 欧美99热| 九九無妻| 亚洲五月婷| 精品成人无码A片观看香草视频| 另类五月激情| 思思99久久| 在线视频99| 五月天婷婷综合久久| 精品无码色欲AV| 99亚洲色| 九九黄色网| 最近中文字幕在线中文视频| 91碰九色| 26uuu淫色| 色性五月天| 丁香五月婷婷偷拍| 人妻内射一区二区在线视频| 狠狠干在线| 六月婷婷成人| 色爱亚洲| 欧美色99| 久久婷婷五月丁香蜜桃网| 久热re在线视频| 五月丁香婷婷爱激情综合网| 六月丁香社区| 天天干电影| 日本97在线观看| 色99热| 婷婷色香六月综合激情| 婷婷五月色惰| 七月丁香五月婷婷在线| 99操视频| 玖玖资源在线视频| 国产AV一区二区三区日韩| 婷婷久久18| 五月天开心成人网| 91碰视频| 色婷婷另类| 蜘蛛女免费观看完整版高清电影| 狠狠色噜噜狠狠| 26uuu欧美| 操人精品| 国产资源91在线| 思思热精品在线视频| 日操熟女| 婷婷五月天无码熟女| 可以免费观看的AV| 大香蕉丁香五月| 亚洲国产婷婷色五月| 狠狠xx| 99视频内射三四| aaa9区免费在线观看| 色综合天天网| 99精品视频免费观看| 欧美日韩日韩成人| 99性爱精品| 九九激情| 人人操91| 伊人五月婷婷| 9久久久| 激情五月天婷婷视频| 无码色| 婷婷五月天 丁香五月天 裸体| 亚洲中文字幕AV| 亚洲日日日| 秋霞少妇AV网站| 日韩色色网| 丁香五月欧美色综合| 91精品刘玥| 涩涩涩,com| 久草A片| 4399欧美另类视频| 婷婷婷婷婷婷婷五月丁香| 免费观看全黄做爰的视频| 99色婷婷| www.91婷婷| 九一九九黄色| 另类 在线| 久久综合天天综合| 999热在线视频| 色五月综合激情| 人妻操操色| 国产欧洲欧洲精品久久| 激情丁香五月AV| 婷婷开心激情| 5Www色5夜| 色欲一区二区三区精品A片| a在线观看| 亚洲精品一区无码A片| 激情综合网激情五月天| 成人亚洲精品久久久久| 国产毛片精品一区二区色欲黄A片| 欧美性猛交 XXXX 乱大交| 99热啪啪| 国产婷婷婷| 91熟妇大香蕉| 国产综合久久久777777| 五月婷婷中文字幕| 开心久久五月天| 欧美色骚婷婷五月天| 丁香婷婷六月天| 日韩精品色| 五月丁香花婷婷玉莉AV| 午夜丁香综合婷婷| 日韩成人无码人妻| 国产做A爰片毛片A片美国| 两性婷婷丁香五月| 婷婷综合色网| 五月天婷婷午夜丁香| 婷婷丁香水多多视频| 久热这里只有精品视频6| 性生活久久人妻| 五月丁香六月婷婷啪啪| 五月婷婷AV| 丁香五月激情综合| 欧美超碰亚洲| 亚洲人妻av| 五月天激情综合网站| 人人天堂操| 五月激情综合美女久久| 日本99热| 91干婷婷| 婷婷综合色图| 天天日夜夜操五月| 久久99久久99精品免观看粉嫩| 久草热在线视频| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | se99视频| 成人精品在线观看| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 欧美色久| 色五月激情五月| 亚洲第一影院高清无码网站| 久久婷五月天| 国产精品五月丁香| 这里只有精品视频在线| 大香蕉人妻| 国产高潮白浆一区二区| 久久久人人操A V| www.91色| 婷婷五月六月激情| 五月丁香婷婷色色| 免费观看欧美成人AA片爱我多深| 婷婷 丁香 久久| 久热这里只有精品3| 日日爽天天| 色播婷婷五月天| 欧美午夜乱妇午夜福利| 色色色色综合网| 99久久综合精品五月天| 久久香蕉影院| 人妻六月天| 月月AV| 草五月| 国产成人精品一区二区三区视频| 日本97在线视频| 欧美综合婷婷网| 9久久婷婷国产综合精品性色| 国产精品日本一区二区在线播放 | 激情婷婷丁香| 性天堂久久| 99热这里只有精品热| 久草A片| 在线超碰免费| 欧美激情xxxXX| 激情五月丁香六月| 伊人综合网站| 五月丁香亚洲校园欧美| 开心五月天激情网| 玖玖色综合色| 亚洲另类婷婷五月丁香在线播放| 97影院一级片| 9 1 A v久久久| 婷婷丁香一月| 99精品网| 色婷婷丁香| 丁香桃色网| 无码日本精品XXXXXXXXX | 久久综合五月天| 性爱视频99| 久热婷婷| 青草青草久热这里只有精品| 九九热精品99| 99色在线视频观看| 五月婷婷在线视频免费观看| 人妻AV在线观看| www.久久久久久久久久.com| 99这里只有精品在线| 色五月激情综合网| av色婷婷| 婷婷狠狠18禁久久| 9久久久| 激情五月色综合| 色色欧美色色| 丁香六月毛片| 国产欧美熟妇另类久久久| 五月天色图| 久久五月婷婷丁香| 九月婷婷激情久久| 亚洲成人在线五月天| 色哟呦av| 高清无码中文字幕aVDV| 国产毛片精品一区二区色欲黄A片 国产人妻777人伦精品HD | 91viP在线看| 婷婷五月色情| 日本婷婷五月天| 久色大香蕉| 成人五月天在线视频在线观看| 综合久久99| 香蕉网久久| 五月天亚洲综合网| 超极99精品| 国产操碰| 丁J香六月首页| 日韩在线视频9色| 思思久ren热| 激情五月激情综合网| 97色色综合| 91九色欧美| 五月天婷综合| 最新久久网址| 丁香五月天导航| 99精品视频网站| 伊人久久婷婷| 久久婷婷色综合| 丁香五月综合激情啪啪| 久久婷五月婷| 99这里有精品久久97| 五月丁香婷婷成人网| 激情五月天丁香| 丁香婷婷色色| 婷婷伊人中文字幕| 狠狠色综合网| www.久久66| 婷婷五月天99综合网站| 99综合激情久久精品久久| av五月天婷婷丁香| 色婷婷的五月天| 婷婷色操| 天天搞天天爽| 婷婷五月天com| 久久99大| www.色五月| 99热丁香| 色情五月综合婷婷| 婷婷五月开心中文字幕在线| 婷婷丁香五月基地| 色哟哟精品| 婷婷五月天美女| 欧美顶级少妇做爰HD| 五月婷婷深爱六月| 婷婷五月中文字幕| 丁香五月激情啪啪| 色五月激情综合| 9l视频自拍九色9l黑人| 91免费看片| 九九人妻福利| 免费日本aⅴ中文字幕| 亚洲精品99| 中文字幕成人| 欧美综合五月天婷婷tin| 综合网亚洲| 九九Av| 日产精品一线二线三线芒果| 五月婷婷成人| 婷婷五月色播网| 七七婷婷综合| 久久3p| 丁香婷婷五月天亚洲| 午夜在线成人网站免费观看| 9l视频自拍九色9l视频自拍九色9l社区| 开心五月婷婷五月| 亚洲操女| 六月婷婷激情图片| 深爱激情av| 久热99热| 懂色av粉嫩av蜜臀av| 第四色大香蕉| 99视频精品8| 婷婷五月综合啪| 成人短视频在线观看| 狠狠干五码| 五月天久久综合| 日本人妻伦在线中文字幕| 激情五月天伊人影院| 色婷久久| 久久婷婷色综合老司机| 能看的av| 婷婷五月天激情小说| 丁香五月六月久久综合| 天天操五月天| 在线观看免费观看在线9久| 日本色久| 欧美成人精品老美女噜噜噜| 色播丁香| 色色色9 9 9| 99热久| 综合图片色色| 日日干日日s| enecarbon-materials.comWu染请涟系Bao护@wip1688 | 99久扒热| 婷婷丁香五月社区亚洲| 婷婷在线播放| 丁香五月手机在线| 亚洲欧美一区二区三区四区爱爱动图| 日韩综合天堂| 31色区视频免费看| 国产精品a无线| 日韩久热| 久久精品这里只有精品免费首页| 午夜精品777| 丁香六月啪| 人妻中文av| 狠狠精品干练久久久无码中文字幕 | 久久一热| 激情六月天| 色婷婷丁香五月高清在线| 9色在线视频| 97在线视频 欧美| 成人.在线日韩| 91久久1118| 五月天婷婷小说| 日本不卡五月婷婷丁香| 久久五月丁香激情综合| 538午夜激情| 九月丁香八月婷婷久久综合久97| 丁香综合日产精品久久| AA片在线观看视频在线播放| 激情五月综合| 色狠狠综合| 79精品视频在线观看,| 色婷婷色五月综合| 五月婷婷m| 韩国情人在线电视剧免费观看高清版全集| 四虎成人精品永久免费AV九九| 久久曰9| 麻豆WWWCOM内射软件| 久久五月天综合| 日韩九区| 激情五月丁香五月| 丁香五月婷婷色情综合| 久久99激情| 九九在线精点品| 丁香五月播播| 婷婷五月综合网| 婷婷五月天电影区小说区| 99热这里只有精品2024| 色五月婷婷视频| 色婷婷伦理| 亚洲婷婷五月天在线激情综合网| 久99久视频| 变态另类9| 色噜噜97视频在线观看| 日本三久久| 大香蕉婷婷五月| 婷婷免费无马| 69久久99精品久久久久| 久久久久久97| 亚洲无码成人网| 九九亚洲无码| 琪琪色五月天| 99热综合| 色日本丁香婷婷| 色婷婷丁香五月天在线视频| 99色丁香婷婷综合网| 久久婷婷六月综合资源| 成年人99热| 丁香五月激情鲁| 亚洲色色香蕉| 丁香五月成人网| 丁香五月婷婷亚洲色图| 色五月激情网| 亚洲小视频免费看| 欧美狠狠一在草| 激情五月激情综合网一级丸片| 久久这里只有精品07| 婷丁香五月天| 婷婷五月天电影在线| 播四月婷婷六月丁香| 日本婷婷| www99热| 婷婷五月花| 丁香网站| 日韩人妻AV在线| AAA级久久久精品| 五月 婷 久| 激情综合九| 色婷婷色综合激情91| 99久久婷| 最新激情五月天| A久网| 99热免费| 丁香六月婷婷综合激情欧美| 国产精品电影| 日韩三十六页| 婷婷爱爱蜜臀天天操| AV堂狠狠干| 青青草六月丁香| 99亚州综合精品成人网| 9久久精品| 丰满少妇猛烈A片免费看观看| 97碰碰免费.视频| 亚洲无aV在线中文字幕| 噜综合| 欧美综合激情五月天| 女人被男人吃奶到高潮| 九九色逼| 色五月综合97| 亚洲VA欧美VA| 五月婷天天搞视频| 婷婷中文字幕| 色婷婷亚洲综合天堂| 久久久大香蕉| www激情网| 任你爽精品免费视频6| 北京熟妇搡BBBB搡BBBB| 美腿丝袜AV天堂网| www久| 日本欧美国产| 九九av| 日韩人妻在线播放| 天天爽在线视频| 天天橾夜夜爽| 天天操天天插| 奇米色大香蕉| 另类的婷婷| 五月天天爱| 丁香色婷婷| 99人人操| 久热这里只有精品99re,久热这里只有精品7| 天天爽天天摸天天爱| 99热精品在线| 草草影院爱爱| 久久草婷婷丁香网站| 久操综合| 婷婷黄色网| 综合激情五月四射婷婷| 丁五月激情视频免费| 噼里啪啦完整版中文在线观看| 国产亚洲99久久| 精品福利911| 91啪啪视频| 五月停停大香蕉| 六月丁香婷| 九九热精品视频| 免看黄大片AA | 91操人视频| 99国产在线| 国产精品久久久爽爽爽麻豆色哟哟 | 99操无码视频观看| 天天干天天操| 中文成人在线| 激情五月综合色| 九九热婷婷| 精品99*| 成人色五月天| 五月天婷婷免费视频| 国产亚洲AV人片在线| 婷婷激情丁香五月婷婷激情丁香五月婷婷| 久久婷婷五月综合色和| 开心五月深爱五月婷| 欧美va视频| 欧美综合激情| 九九热视频网站| 久操人妻| 欧美碰碰碰| 五月综合激情视频| 69精品人人人人人人人人人| 91操人| 色五月天堂| 五月丁香婷婷婷激情爱爱| 婷婷丁香五另类网站| 26uuu最新地址| 激情婷婷五月| 婷婷色成人| 久热一区| 久久五月婷综合网| 九九色逼| Se.婷婷五月天| 色欲一区二区三区精品A片| 97视频.干com| 激情五月丁香六月| 91女人18毛片水多国产| 九九热手机在线视频| 欧美丰满熟妇BBB久久久| 香蕉大综综综合久久| 99热这里只有精品免费观看| 五月婷婷 激情按摩| 精品五月丁香| 色色无码| 婷婷丁香77777| 96丁香六月婷婷蜜桃综合久久| 久久综合五月天| 九九热啪啪| 91刘玥视频在线观看| 涩婷婷五月天| 99精品综合在线| 婷婷久久亚洲| 亚洲视频在线观看区| 五月六月婷婷| 日本欧美999久久久三级片| 丁香五月色欲| 五月丁香花激情啪啪网| 开心五月网 | 久色视频首页| 国产毛片欧美毛片久久久| 99热精品网| 欧美成人AAA片一区国产精品 | 九九伊人网| 精品久久99码| 九九亚洲| 天天噜天天爱| 乱精品一区字幕二区| 五月丁激情| 天天草女人| 色色综合视频| 六月丁香成人| www.婷婷,com| 久久久色情| 性爱视频久久| 超碰chaompinm| 久久曰曰| 第一区久久网站| 色情五月| 丁香六月情| 热久久66| 丁香伊人五月色婷婷五十路| 婷婷九月激情| 激情开心五月婷婷| 亚洲9久久精品| 亚洲综合另类| www.激情五月天。com| 丰满少妇猛烈A片免费看观看| www.俺去也com| 涩五月丝袜婷婷| 激情久久久久久| 九九热再线九九视频免费在线观看 | 第1影院之五月婷婷| 伊人色综合久久久| 婷婷偷拍网| 色五月亚洲| 99久久这里只有精品| 欧美在线干| 亚洲V国产V欧美V久久久久久| 丁香五月天天高清在线| 婷婷五月网图片区| 婷婷五月天基地| 婷婷涩五月天综合| 婷婷终合色图| 成人短视频在线观看| 新激情五月天色播| 99碰| 99色综合| 精品色| 综合激情伊人影视在线| 婷婷无五月无码视频| 婷婷五月色激情欧美激情| 亚洲另类婷婷五月丁香在线播放| Www.se.久久| 人妻久久久久久久| 五月天社区狠狠| 六月婷婷色综合| 丁香五月熟女| 五月天伊人| 99国产视频网| www.夜夜操.con| av无码电影| 99燥99日| 操久久网| 亚美欧色影院| 99久久99热| 香蕉久久国产av一区二区| 国产精品国产成人国产三级| 99热丁香| 天天肏天天爽夜夜爽| 激情综合五月| 99碰碰碰| 少妇性按摩无码中文A片| 六月丁香网| 插插五月天| 色婷婷色99国产综合精品| www狠狠爱com| 亚洲情综合五月天| 美日韩成人| 五月婷婷AV| 丁香五月亭亭六月综合激情网| 亚州操逼网| 五月丁香久久激情综合| 五月丁香综合激情| 欧美三日本三级少妇三99| 亚洲欧州色情在线观看| 26uuu四色| 五月天婷婷情色| 超碰免费人人肏| 91狠狠色丁香婷婷综合久久精品| 99精品在线观看视频| 99热这里只有精品无码| 4399在线观看免费高清电视剧| 五月天婷婷色色网| 九色1区视频在线| 99这里只有精品| 久久五月综合| 五月婷婷深深爱| 第四色婷婷丁香五月| 亚洲99视频| 99久久精彩视频。| 99九九热在线观看| 婷婷五月综合色中文字幕| av中文字幕免费观看| 久久六月综合| 情色五月天网站| 99视频只有精品| 丁香五月另类小说| 伊人婷婷五月| 狠狠色情婷婷| 色五月激情问网站| 中文网AV| 久久久大香蕉| 超碰成人av| 99爱爱网| 99内射视频| 大香蕉人人网| www.91AV.com| 婷婷酒色网| 97搞在线| 久久加勤综合| 91男人操女人视频| 无码日本精品XXXXXXXXX| 色噜噜狠狠色综无码久久合欧美| 亚洲中文字幕网| 久久亚洲无码| 色婷婷先锋| 日本爆乳片手机在线播放| 五月丁香六月在线| 俺去也综合| 五月婷婷之综合激情| 五月婷婷在线综合| 天天插,天天射| 夜夜骑夜夜撸| 91精品综合久久久久久五月丁香 | 91久久久久久久久久| WWW.久久久久久久久久久久久| 一级韩国产精品毛| 91夫妻网站九色| 超碰免费人| 九九精品大香蕉| 久热精彩视频98| 日韩AV一区二区三区| 色都都狠狠色都都色综合色| 成人在线免费网址| 开心五月婷婷综合在线精品素人| 综合久久伊人| 激情涩播| 日本在线观看aaa 99| 99热官网精品在线| 五月激情射| 97色色色| Av大香蕉| site:minyis.com| 五月丁综合在线观看| 色情一区二区播放| 色婷婷丁香五月丁香| 99er在线观看| 五月丁香亚洲婷婷| 久久丁香五月天| 丁香久久综合| 日本久久综合| 91精品久久久久久77777| 裸体做A爰片毛片A片免费| 日本人人超碰| 免费观看日韩成人av| 日韩美女在线视频19| 婷婷五月天Av| 9九热视频| 欧美综合在线五月天色婷婷| www.sezonghe| 六月激情网| 九九热99热| 精品亚洲国产成AV人片传媒| 九九九干精品| 人人搡人人| 久热九九| 日韩六十路91性交电影| 婷婷王月天影院| 成人色图情色成人网 www.5b5b5bcom 五月天| 婷婷久久精品| 激情综合一| 日韩久久系列| 欧美日韩成人在线网| 亚洲精品国产成人AV在线| 日本在线视频手机播放五月婷| 99日韩网站| 九九亚洲综合| 777影视理论片大全在线观看| 久久婷婷五月天丁香| 99色日本| 97五月天婷婷午夜| 欧洲第一久色| 婷婷久久综| 欧洲色区| 综合www色| 婷婷色播色五月五色五月天色妇| 激情小说 五月天| 天天干天天操天天射| 97在线视频观看| 色吊丝av中文字幕| 综合亚洲色色| 曰日爽日日操| 26.uuu丁香五月婷婷| 超碰av在线| 激情五月天婷婷色色色色色色色色色色色 | 激情五月天无码| 婷婷综合一二三| 欧美黑人巨大性生话| 51XX嘿嘿午夜无码| 99色6爱9热| 开心网五月色婷婷| 超碰在线国产| 九九久久高清| 婷婷五月情色| 深爱激情五月天| 无码激情AAAAA片-区区| 另类在线观看视频| 狠狠操.COM| 99热国产| 91在线精品一区二区| 另类小说五月天| 六月婷婷在线视频| 少妇大叫太大太粗太爽了A片 | 久久综合五月天| 射久久丁香五月| 综合久久丁香婷婷,五月婷婷六月丁香,开心激情综合网,六月丁香在线观看,婷婷丁 | 日日夜夜小色哥| 午夜婷婷| 久久AV无码精品人妻系列试探| 九九综合网色全集| 思思久久思思| 五月丁香婷中文| 综合五月激情| 电影爱拉战争免费观看| 婷婷婷婷婷婷婷婷| 精品少妇人妻AV无码专区偷人| 五月婷婷偷拍| 色人妻五月| 91一起操| 色琪琪一综合久久激情五月视频| 99热这里只有精品50| 色色色99| 久操人| 成人婷婷五月| 免费观看的av| 成人视频在线免费播放| 精品综合五月| 五月丁香六月激情综合| 开心五月婷婷婷美女| 五月婷婷色情| 色色色热热热| 九九热狼人| 激情五月婷婷网在线观看| 99九九在线| 久久影视婷婷五月| 日韩精品色| 日产精品一线二线三线芒果| www.91久久| 久久狠狠干| 影音先锋男士资源网一区| 天天噜天天爱| 五月天社区| 99日逼视频| 26uuu精品一区二区| 九九无码AV| a69在线视频| 亚洲五月花| 日本美女上人| 婷婷 伊人 久久| www.色色com| 久久婷婷五月天激情唯美| .精品久久久麻豆国产精品| 97亚洲色 torrent magnet| 精品乱码久久久久| 超级碰 久久9| 五月婷婷婷婷婷| 丁香五月天天久久综合小说| 一区二区中文字幕| 婷婷狠狠操| 99视频精品全部免费看| 99热99精品| 久久久婷丁香五月天激情综合| 色五月天电影| 五月婷婷激情啪啪| 天天干天天爽天天操| 三级av在线| 亚洲乱码日产精品BD| 97久久超碰| 综合大香蕉| 日韩色久| 永久免费一区二区三区| 丁香五月综合久久综合| 五月天婷婷基地| 五月婷婷国产| 激情五月天视频| 99久在线精品99re5热视频| 五月天色社区| 五月婷婷综合性爱噜噜| 五月天激情久久| 影音先锋 一区| 色色色热热热| 久久五月婷婷丁香| 丁香五月六月综合激情| 色婷婷五月影院| 久久婷五月综合| 亚洲成人AV在线播放| 久久久ww| 激情久久五月天| 色五月丁香五月| 91热久久| 五月丁香| 另类五月婷婷| 人妻丰满精品一区二区A片| 九九草热在线观看| 九月丁香八月婷婷加勒比| 26uuuuuuuu国产| 欧美日韩一区二区三区四区| 丁香激情综合| 九九色院| 武则天精品久久| 婷婷久久五月| 99久久久久| 五月婷婷久久内射| 九九热123| 婷婷五月天激情在线| 国内久久亭亭| 色婷婷网| 成人五月天婷婷| 久草热久草在线视频| 婷婷五月天论坛| 日日夜夜亚洲一区| 99热这里只有精彩| 狠狠爱婷婷爱| 五月丁香啪啪网| 激情五月丁香婷婷夜夜操| 五月天激情四射| 婷婷伊人激情婷婷| 婷婷色色综合| 五月婷婷色五月| 欧日韩成人| 99热这里只有精品9| 婷婷综合成人五月天| a毛片二逼wwwwwwwwww| 亚洲aV写真天天综合网久久 | 日本九婷婷| 97成人丁香婷婷| 丁香五月婷婷啪| 婷婷五月天.com| 久久九九99.www| 亚洲综合五月天婷婷丁香| 婷婷丁香六月五月天| 婷婷色影音天| 久草大| 色婷婷久久综合| 青青青在线视频国产| 天天日天天爱天天噪| 激情久久五月天| 超碰v| www激情| 激情五月丁香婷婷夜夜操| 久婷狼色诱惑在线| 伊人色综合网| 超碰91在线| 激情图片亚洲| 超碰99久久| 欧美色骚婷婷五月天| 国产黄色av| 丁香五月天啪啪| 久热这里只有精品66| 久久婷婷内射| 欧美成人AAA片一区国产精品| 激情五月小说婷婷| 另类天堂| 99久久人人| 79精品视频在线观看,| 日本激情五月| 日本三久久| 琪琪布丁香社区激情五月天| 99综合网| 丁香久久综合| 欧美va在线观看| 9久久久| 99色色网| 五月丁香六月婷婷色日| 丁香五月在线伊人| 丁香久月| 狠狠精品干练久久久无码中文字幕| 噜噜色com| 久久五月天大美女| 国产超碰av| 91chinese在线| 玖玖五月丁香| 岛国资源网| 亚洲99综合| 大香蕉在线观看9| 色综合色色| 国产成人AV在线播放| 啪啪啪啪五月天| 综合久久综合| 五月天堂六月丁香亚州中文字幕久久| 色五月综合网| 蜜臀99精品| 99re视频在线播放| 色六月天| 丁香婷婷深情五月亚洲| 99热精品在线播放| 91九色 熟| 97五月天婷婷午夜| 婷婷五亚洲| 七月激情六月婷婷综合在线播放| 激情丁香久久| 超碰国产av| 五月综合亚洲| 婷婷爱在线观看| 五月天婷婷久久日| 五月花亭亭| 五月婷婷色影院| 色婷婷www| 日B日潘金莲BB| 久热婷婷| 五月丁香好婷婷A片网 | 婷婷激情啪啪| 国产精品久久久99视频| 色噜噜五月天| 欧美色色日韩| 婷婷五月色播天|