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

ARTICLE DETAIL

資訊詳情

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

SystemVerilog約束隨機(jī)驗(yàn)證精講:rand、constraint與dist實(shí)戰(zhàn)

SystemVerilog約束隨機(jī)驗(yàn)證精講:rand、constraint與dist實(shí)戰(zhàn) 你有沒有遇到過這種情況定向測試寫了幾十個用例覆蓋率還是差口氣或者隨機(jī)化用例一跑報錯一大片你根本不知道約束哪里寫擰了。在SystemVerilog驗(yàn)證里隨機(jī)化策略是非常核心的一環(huán)核心就落在三個關(guān)鍵詞上rand隨機(jī)變量、constraint約束、dist權(quán)重以及隨機(jī)數(shù)怎么產(chǎn)生。很多剛接觸驗(yàn)證的人會把SystemVerilog的約束隨機(jī)和C語言里的rand()畫等號覺得無非是生成幾個隨機(jī)數(shù)結(jié)果一上手寫UVM就懵了。這篇文章我就從驗(yàn)證從業(yè)者的角度把這套機(jī)制和實(shí)際示例放在一起拆開講清楚適合剛接觸UVM的驗(yàn)證工程師、準(zhǔn)備面試的在校學(xué)生以及想理解約束隨機(jī)驗(yàn)證到底在解決什么問題的讀者。1. 為什么要用隨機(jī)化策略從定向測試到約束隨機(jī)驗(yàn)證1.1 定向測試的瓶頸在哪里早年做驗(yàn)證主要靠定向用例也就是你根據(jù)設(shè)計規(guī)格把功能點(diǎn)一條條列出來然后為每個功能點(diǎn)手寫輸入激勵再檢查輸出是否正確。這種方式在小規(guī)模模塊驗(yàn)證時沒什么問題但一旦設(shè)計規(guī)模上來缺陷就很明顯功能點(diǎn)多到一定程度后用例數(shù)量會爆炸。比如一個簡單的AHB總線接口地址對齊、burst類型、transfer大小、保護(hù)信號、master/slave組合每個維度交叉一下就是幾百個組合靠手寫定向用例驗(yàn)證工作量會變得非??鋸?。更麻煩的是定向用例只能覆蓋到“你想到的”場景。設(shè)計人員寫RTL時的邊界條件、跨時鐘域交互、異常路徑這些靠人肉枚舉非常容易漏。我見過不少項(xiàng)目定向用例全過了chip一集成到SoC就出問題回頭一查是某個狹窄的地址邊界組合從來沒被定向用例打到過。1.2 約束隨機(jī)驗(yàn)證的適用場景約束隨機(jī)驗(yàn)證Constrained Random VerificationCRV要解決的就是“用例覆蓋不全”和“用例數(shù)量爆炸”這兩個問題。它的思路是驗(yàn)證人員不再一個個手寫激勵而是定義好輸入空間寫清楚“合法范圍”然后讓求解器在這個范圍內(nèi)隨機(jī)生成輸入。就像你不再親手做每一頓飯而是給廚師一臺能做任意菜色的機(jī)器你只需要告訴它今天不吃辣、不放香菜、必須用雞肉剩下的交給它自己發(fā)揮。CRV可以說是目前芯片驗(yàn)證的主流方法論UVM最核心的機(jī)制之一就是建立在約束隨機(jī)之上。它適合的場景包括協(xié)議級驗(yàn)證AXI、PCIe、Ethernet、總線仲裁與隨機(jī)延時、寄存器配置、數(shù)據(jù)通路的數(shù)據(jù)包生成等。只要是輸入空間大、組合多、定向用例寫不過來的場景約束隨機(jī)都能顯著提升驗(yàn)證效率。但注意約束隨機(jī)不是銀彈。它適合“空間大、需要大量組合覆蓋”的場景不適合“路徑極其精細(xì)、需要完全確定性”的場景后者仍然要配合定向用例或斷言來補(bǔ)。1.3 隨機(jī)化策略的核心三件套rand、constraint、dist理解了CRV的動機(jī)再看SystemVerilog里實(shí)現(xiàn)CRV的三個關(guān)鍵詞就非常自然了。rand聲明一個變量是隨機(jī)變量。只有加了rand或randc前綴的成員變量在調(diào)用randomize()時才會被求解器賦隨機(jī)值。constraint定義約束塊用來限制隨機(jī)變量的取值范圍、變量之間的相互關(guān)系、條件約束等。沒有約束的隨機(jī)是無序的約束讓隨機(jī)變得“合法且可控”。dist在constraint塊中定義權(quán)重分布。它解決的是“合法空間內(nèi)如何偏重某些取值”的問題讓隨機(jī)不是均勻分布而是按業(yè)務(wù)場景調(diào)整概率。三者配合的邏輯是rand確定哪些字段會變constraint保證變化合法dist控制變化的偏向。這就像選人面試rand是候選人池constraint是崗位要求學(xué)歷、經(jīng)驗(yàn)、技能dist是你在眾多符合要求的候選人中更想看哪一種背景的人的比例。2. 核心機(jī)制拆解rand變量、constraint約束、dist權(quán)重怎么用2.1 rand與randc隨機(jī)變量的聲明與區(qū)別先看一個最簡單的類定義class packet; rand bit [7:0] addr; rand bit [31:0] data; randc bit [1:0] prio; endclass這里的addr和data是rand變量每次調(diào)用randomize()都會隨機(jī)生成一個新值允許重復(fù)。prio是randc變量randc是循環(huán)隨機(jī)random-cycle它會盡可能遍歷所有取值在遍歷完所有可能值之前不會出現(xiàn)重復(fù)值。比如prio只有0、1、2、3四個值第一次隨機(jī)可能是2第二次可能是0第三次可能是3第四次是1四輪走完才算一個循環(huán)然后又開始下一輪遍歷。這個區(qū)別在驗(yàn)證中很關(guān)鍵。如果你希望某個配置字段每個值都能被反復(fù)跑到但又希望短時間內(nèi)盡可能覆蓋全比如仲裁優(yōu)先級、地址掃描的page編號用randc就非常合適。而一般的數(shù)據(jù)包內(nèi)容、地址偏移等用rand就足夠了因?yàn)閿?shù)據(jù)空間大你用randc也沒法真正“遍歷完”反而會增加求解器的負(fù)擔(dān)。我實(shí)際用下來的感受是randc適合小范圍窮舉類字段rand適合大范圍隨機(jī)類字段。如果在小范圍字段上用了rand而不是randc隨機(jī)種子不夠好的時候可能會連續(xù)幾次隨機(jī)到同一個值導(dǎo)致覆蓋率收斂變慢。2.2 constraint約束塊別把約束寫成硬編碼約束塊的語法比許多人想象的簡單class packet; rand bit [7:0] len; rand bit [7:0] addr; constraint c_len_range { len 8; len 64; } constraint c_addr_valid { addr inside {[16h1000 : 16h1FFF]}; addr ! 16h1234; // 排除特定地址 } endclass約束塊里有幾個點(diǎn)需要特別注意。第一約束體使用花括號{}不是begin...end。不少人從C/Perl轉(zhuǎn)過來后習(xí)慣性寫begin end然后編譯報錯半天。第二約束不是“按順序執(zhí)行”的代碼它是一個約束求解系統(tǒng)。變量之間的關(guān)系是同時滿足的比如constraint c_rel { a b; b 0; a 100; }求解器會同時滿足這幾個條件而不是先求a再求b。這意味著你可以在約束里寫很強(qiáng)的關(guān)聯(lián)約束比如addr % 4 0、len 2 * payload_len等求解器會自動解算。第三約束變量只在調(diào)用randomize()時生效。如果你只聲明了rand變量但沒調(diào)用randomize()它的值永遠(yuǎn)是初始化值這一點(diǎn)非常容易踩。我之前見過一個環(huán)境忘了對某個對象調(diào)用randomize()結(jié)果所有用例都用的同一個默認(rèn)值測試還全通過了直到覆蓋率全為零才反應(yīng)過來。第四約束塊里不能做賦值操作。len 32是錯的應(yīng)該寫成len 32。這個誤寫的報錯很有趣SystemVerilog會試著把當(dāng)約束把當(dāng)非法語句。2.3 dist權(quán)重讓隨機(jī)分布可控而非均勻dist是constraint塊里控制概率分布的操作符它的語法是constraint c_dist { src inside {[0:15]}; src dist { 0 : 30, [1:7] : 60, [8:15] : 10 }; }重點(diǎn)在:和:/的區(qū)別這是新手最容易弄混的地方。:表示權(quán)重平均分配到值域中的每個值。比如[1:7] : 60表示1到7這7個值每個值的權(quán)重都是60整個區(qū)塊權(quán)重總計是7乘以60也就是420。:/表示權(quán)重按區(qū)塊整體分配區(qū)塊內(nèi)部所有值平分總權(quán)重。比如[1:7] :/ 60表示整個1到7區(qū)塊總權(quán)重是60每個元素的權(quán)重是60除以7約等于8.57。很多人在實(shí)際項(xiàng)目里權(quán)重算不準(zhǔn)就是因?yàn)闆]有區(qū)分這兩個操作符。如果希望區(qū)間內(nèi)每個值概率相等用:如果希望整個區(qū)間作為一個整體來控制概率用:/。一般情況下控制單個熱點(diǎn)值用:比如錯誤號0特別重要給一個大的:權(quán)重控制一個范圍總比例用:/比如地址落在共享區(qū)間的比例用:/更直觀。另外dist約束本質(zhì)上也是約束不能和其他的constraint沖突。比如你在dist里給一個值很高的權(quán)重但又寫了另一個constraint排除它那dist對那個值就不生效因?yàn)榍蠼馄鲀?yōu)先滿足所有約束dist只是概率傾向不是硬性要求。2.4 solve...before與概率分布的隱形調(diào)整除了distSystemVerilog還提供了solve...before來影響隨機(jī)變量的聯(lián)合概率分布。在多個約束相互影響時求解順序會影響最終概率??磦€例子class example; rand bit a; rand bit [1:0] b; constraint c { b 0 - a 1; } endclass這里如果b0則a1。求解器默認(rèn)會先解bb有四種取值各1/4概率然后解a。在這種情況下a1的概率是多少需要同時算上b0時強(qiáng)制1以及b!0時a可隨機(jī)總和起來大概是62.5%。如果你希望a先求解讓a成為主導(dǎo)constraint c_order { solve a before b; }求解器會先隨機(jī)a再根據(jù)a隨機(jī)b。此時a隨機(jī)到1的概率是50%b的變化也會跟著調(diào)整。這種概率細(xì)節(jié)在做覆蓋率分析時很重要。不要以為約束只是“滿足條件”實(shí)際上約束還微妙地影響著概率分布導(dǎo)致某些組合出現(xiàn)的頻率和你想象的不一樣。3. 從零寫一個約束隨機(jī)示例數(shù)組生成實(shí)戰(zhàn)3.1 需求場景與類設(shè)計接下來我們來寫一個能直接跑起來的示例。需求很簡單生成一個包含10個隨機(jī)數(shù)的一維數(shù)組數(shù)組元素范圍在0到255之間并且要求數(shù)組里所有元素不能重復(fù)同時希望數(shù)組的前3個元素偏大、后7個元素偏小。這個需求在驗(yàn)證里很典型類似于生成一組地址偏移量、一組配置值、或者一組數(shù)據(jù)標(biāo)簽。難點(diǎn)有三個動態(tài)數(shù)組怎么約束長度、每個元素怎么約束范圍、元素之間怎么約束唯一性。我定義一個類array_gen主要成員如下class array_gen; rand int unsigned arr[]; rand int unsigned len; constraint c_len { len 10; } constraint c_arr_size { arr.size() len; } constraint c_arr_range { foreach (arr[i]) { arr[i] inside {[0:255]}; } } constraint c_arr_uniq { unique {arr}; } constraint c_arr_weight { foreach (arr[i]) { if (i 3) { arr[i] inside {[128:255]}; } else { arr[i] inside {[0:127]}; } } } endclass3.2 完整代碼示例與求解細(xì)節(jié)在頂層模塊里調(diào)用這個類打印結(jié)果module tb; initial begin array_gen ag; ag new(); if (ag.randomize()) begin $display(len %0d, ag.len); foreach (ag.arr[i]) begin $display(arr[%0d] %0d, i, ag.arr[i]); end end else begin $error(randomize failed); end end endmodule運(yùn)行這個例子你可能會得到一組形如arr[0]201, arr[1]173, arr[2]254, arr[3]72, arr[4]19...的數(shù)組。每次運(yùn)行結(jié)果不同因?yàn)榍蠼馄鲿鶕?jù)仿真器的隨機(jī)種子生成不同解。注意幾個細(xì)節(jié)。第一arr.size() len這個約束非常重要。SystemVerilog里對動態(tài)數(shù)組做約束時如果沒有給size()加約束隨機(jī)化后的數(shù)組長度是不可預(yù)測的可能為空也可能非常大。加上這個約束后數(shù)組長度才會和len一致。第二unique {arr}約束用于保證數(shù)組內(nèi)元素互不重復(fù)這是一個非常強(qiáng)力的約束。求解器會嘗試在0到255的取值空間里挑出10個互不重復(fù)的數(shù)這本身是可行的但如果你把數(shù)組長度改成300同時取值范圍還是[0:255]約束就會失敗因?yàn)閺?56個不同值里選300個互不相同的數(shù)本來就不可能。這一點(diǎn)也提示我們約束的可行性需要人工預(yù)判求解器不會幫你選擇“更合理”的需求。第三foreach約束里的i 3和i 3兩部分共同生效可以組合出“前3個元素在[128:255]、后7個元素在[0:127]”的效果。這里是按索引區(qū)間分配取值范圍配合total數(shù)組長度約束求解器能同時滿足。// 運(yùn)行結(jié)果示例基于種子12345 len 10 arr[0] 201 arr[1] 173 arr[2] 254 arr[3] 72 arr[4] 19 ...3.3 隨機(jī)種子與可復(fù)現(xiàn)性為什么每次仿真結(jié)果都不同很多人第一次跑約束隨機(jī)時都會有一個疑問同樣的代碼為什么每次結(jié)果都不一樣答案很簡單因?yàn)榉抡嫫鞯碾S機(jī)數(shù)發(fā)生器RNG默認(rèn)會取一個隨時間或進(jìn)程相關(guān)變化的初始種子。SystemVerilog仿真器在啟動仿真時如果你沒有顯式指定種子就會從系統(tǒng)時間、進(jìn)程ID等信息中生成一個種子然后整個隨機(jī)化求解過程都是從這個種子出發(fā)的。隨機(jī)化不可復(fù)現(xiàn)在調(diào)試時是個大問題。你遇到一個隨機(jī)化才觸發(fā)的bug但你再跑一遍就復(fù)現(xiàn)不出來了這種痛苦做過驗(yàn)證的人應(yīng)該都懂。所以幾乎所有仿真器都支持在命令行里固定隨機(jī)種子。在VCS/Questa里是ntb_random_seed12345在部分仿真器里也可以用-seed選項(xiàng)。固定種子后同一份代碼、同一個種子每次仿真結(jié)果完全一致。我個人的習(xí)慣是常規(guī)編譯仿真時不指定種子讓每次回歸都能探索不同空間一旦某個場景出現(xiàn)失敗立刻用當(dāng)前l(fā)og里打印的種子去跑一個單回歸穩(wěn)定復(fù)現(xiàn)然后才去debug。很多UVM環(huán)境的基類會在仿真啟動時打印當(dāng)前使用的種子如果你的環(huán)境沒有這個打印建議自己加一行成本極低關(guān)鍵時刻能救命。3.4 取值范圍與小數(shù)隨機(jī)生成的擴(kuò)展有人會問熱詞里有“隨機(jī)函數(shù)生成隨機(jī)數(shù)0.2到0.3中間”SystemVerilog里能不能做呢可以直接用real類型的rand變量class real_gen; rand real r; constraint c_real_range { r 0.2; r 0.3; } endclass但實(shí)際項(xiàng)目里我一般不建議直接用real做約束隨機(jī)。浮點(diǎn)求解在部分仿真器上效率低而且數(shù)據(jù)比較麻煩必須用r inside {[0.2:0.3]}這種寫法浮點(diǎn)邊界還容易遇到精度問題。更好的做法是用整數(shù)擴(kuò)放比如生成200到300之間的整數(shù)再除以1000得到0.2到0.3之間的小數(shù)精度可控、求解也快rand int unsigned scaled; constraint c_scale { scaled inside {[200:300]}; } // 使用時 real r scaled / 1000.0;這樣既保留了隨機(jī)范圍的控制能力又避免了浮點(diǎn)約束的坑。我在很多數(shù)據(jù)包時延仿真場景里就是用這種方式生成“小數(shù)比例”比如丟包率、功耗比例等實(shí)測穩(wěn)定且可復(fù)現(xiàn)。4. 隨機(jī)數(shù)產(chǎn)生的底層邏輯PRNG、常見隨機(jī)接口與真隨機(jī)數(shù)4.1 偽隨機(jī)數(shù)發(fā)生器的本質(zhì)你可能聽過一個說法計算機(jī)沒有辦法生成真正的隨機(jī)數(shù)只能生成偽隨機(jī)數(shù)。這話基本準(zhǔn)確在仿真驗(yàn)證領(lǐng)域尤其如此。SystemVerilog仿真器里的隨機(jī)化本質(zhì)上是偽隨機(jī)數(shù)發(fā)生器PRNG加約束求解器的組合。PRNG的核心是一個確定性算法給它一個初始種子它會按某種數(shù)學(xué)規(guī)則產(chǎn)出一個看起來隨機(jī)、但完全確定的數(shù)值序列。常見的PRNG有線性同余發(fā)生器LCG、梅森旋轉(zhuǎn)Mersenne Twister、xorshift等。SystemVerilog的隨機(jī)化一般建立在仿真器內(nèi)置RNG之上VCS所用RNG和Questa所用RNG的算法可能有區(qū)別這也是為什么同一個種子在不同仿真器上跑出的隨機(jī)值不同。既然“偽隨機(jī)”為什么還能用于驗(yàn)證因?yàn)槲覀円牟⒉皇菙?shù)學(xué)意義上的隨機(jī)而是“足夠的隨機(jī)性 完全可復(fù)現(xiàn)”。隨機(jī)性用來探索輸入空間可復(fù)現(xiàn)性用來調(diào)試。這兩點(diǎn)恰恰是偽隨機(jī)數(shù)發(fā)生器的優(yōu)勢真隨機(jī)數(shù)反而做不到可復(fù)現(xiàn)。4.2 $random、$urandom、$urandom_range的區(qū)別SystemVerilog里除了randomize()之外還有幾個常見的系統(tǒng)隨機(jī)函數(shù)。很多人會拿它們當(dāng)普通函數(shù)調(diào)用卻不清楚差異這里講清楚。$random返回32位有符號隨機(jī)整數(shù)。它的歷史很悠久來源于Verilog-1995在SystemVerilog中仍然可以使用。$urandom返回32位無符號隨機(jī)整數(shù)推薦在新代碼中使用。$urandom_range(max, min)返回[min, max]范圍內(nèi)的無符號整數(shù)。三個函數(shù)的使用非常簡單int a; bit [31:0] b; bit [7:0] c; a $random % 100; // 有符號隨機(jī)可負(fù)值取??赡艹霈F(xiàn)負(fù)值要小心 b $urandom; // 32位無符號隨機(jī) c $urandom_range(255, 0); // 0到255之間隨機(jī)這里有幾個常見坑。第一$random % 100在a取負(fù)時可能得到負(fù)數(shù)所以如果你想得到0到99之間的數(shù)最好用$urandom_range(99,0)或者用$urandom % 100配合無符號變量。第二$urandom_range的參數(shù)順序是先max后min不是有的語言里習(xí)慣的(min, max)寫反了會行為詭異甚至編譯警告。在類里做約束隨機(jī)時我推薦優(yōu)先使用randomize()而不是用$urandom手工拼。因?yàn)槭止そo每個變量調(diào)用隨機(jī)函數(shù)寫起來累還容易遺漏條件組合約束的優(yōu)雅性和可維護(hù)性都差很多。$urandom適合在簡單測試平臺里或者需要在過程塊里快速生成一個輔助隨機(jī)值時使用。4.3 為什么驗(yàn)證中很少用系統(tǒng)隨機(jī)函數(shù)替代約束隨機(jī)這是一個很多新手會問的問題既然用$urandom也能生成隨機(jī)數(shù)為什么還要大費(fèi)周章寫class、寫constraint、寫dist關(guān)鍵在于“約束”這兩個字。$urandom只能生成一個滿足均勻分布、在某個范圍內(nèi)的隨機(jī)數(shù)它本身不具備“多變量聯(lián)合約束”和“關(guān)系約束”的能力。比如你希望len 8 len 64并且payload_len * 2 len用$urandom生成兩個變量后你還得寫一堆條件判斷來過濾失敗時還要重新生成。而用constraint求解器直接給你一組整體滿足條件的值。更重要的差異是概率分布的精細(xì)控制。$urandom_range(10, 1)生成的是均勻分布1到10的概率完全一樣。但在真實(shí)驗(yàn)證場景里你往往希望某些值出現(xiàn)的概率更高比如寄存器配置字段0很常見、異常值很少見這時候dist權(quán)重是簡單隨機(jī)函數(shù)無法優(yōu)雅實(shí)現(xiàn)的。打個比方$urandom像抽獎箱每個球都一樣重約束隨機(jī)像骰子你可以把某一面的鉛加重一些。當(dāng)驗(yàn)證空間復(fù)雜、覆蓋目標(biāo)多時只有后者才能讓你在有限仿真時間內(nèi)把隨機(jī)次數(shù)用在刀刃上。4.4 隨機(jī)穩(wěn)定性與種子管理提到隨機(jī)穩(wěn)定性再展開講一下種子管理。UVM環(huán)境中有兩種主要的隨機(jī)種子來源一種是仿真器全局RNG種子命令行控制另一種是每個uvm_component里的rng種子局部種子可以通過uvm_top.get_sequencer()或工廠配置覆蓋。全局種子控制整個驗(yàn)證環(huán)境的隨機(jī)流起點(diǎn)局部種子控制每個組件的隨機(jī)行為。實(shí)際使用中要讓回歸導(dǎo)致的可復(fù)現(xiàn)性變好可以注意幾點(diǎn)每次仿真啟動時把種子打印到log文件建議在testbench的initial塊里加一行$display(RANDOM SEED: %0d, $get_initial_seed());。多組件環(huán)境里不要過度依賴全局命令種子因?yàn)閁VM的sequence_item隨機(jī)化通常從sequence本身的rng獲取某些sequence可能需要單獨(dú)設(shè)置種子才能復(fù)現(xiàn)?;貧w失敗時拿到記錄種子后直接重跑。如果重跑還能穩(wěn)定復(fù)現(xiàn)那說明問題與隨機(jī)化有關(guān)如果重跑就消失了多半是環(huán)境里有不可控的絕對值比如絕對時間、文件讀取順序、數(shù)組哈希迭代順序等污染了隨機(jī)流。4.5 真隨機(jī)數(shù)與嵌入式安全場景的補(bǔ)充補(bǔ)充一點(diǎn)熱詞里提到的S32K144 CSEC獲取真隨機(jī)數(shù)。這個場景和驗(yàn)證仿真不一樣它是嵌入式安全模塊Crypto Service Engine通過硬件熵源生成真隨機(jī)數(shù)用于密鑰生成、簽名等安全場景因?yàn)閭坞S機(jī)數(shù)一旦種子泄露密鑰就容易被推導(dǎo)出來。在驗(yàn)證和日常軟件開發(fā)中我們基本不需要真隨機(jī)數(shù)但如果你做的是安全相關(guān)驗(yàn)證就需要區(qū)分開硬件真隨機(jī)數(shù)的驗(yàn)證重點(diǎn)在熵源質(zhì)量如NIST SP 800-90B測試和SystemVerilog約束隨機(jī)的驗(yàn)證思路完全不同。再比如熱詞里的“openssl rand -hex 32”這個命令在開發(fā)環(huán)境很常用它本質(zhì)上也是用OpenSSL的偽隨機(jī)數(shù)發(fā)生器或者系統(tǒng)安全熵源生成32字節(jié)隨機(jī)數(shù)據(jù)再以hex格式打印常用來生成密鑰、token、salt等。它和仿真驗(yàn)證不是一回事但如果你要在腳本里快速生成一個隨機(jī)的十六進(jìn)制串做測試數(shù)據(jù)用openssl rand -hex 16這樣一條命令確實(shí)比寫一堆代碼省事。注意別把它當(dāng)密碼學(xué)安全隨機(jī)源用除非你知道后端用的熵源足夠安全。5. 常見問題與排查技巧實(shí)錄5.1 randomize()返回0約束沖突了怎么辦隨機(jī)化失敗最常見的原因就是約束沖突。比如前面說的數(shù)組長度300但取值范圍只有256個唯一值這種約束必然失敗。仿真器在randomize()返回0時通常不會直接報具體約束只是返回一個失敗的狀態(tài)如果你沒寫else分支問題就被吞掉了。排查思路我建議按三步走。第一步確認(rèn)你檢查了randomize的返回值如下if (!ag.randomize()) begin $fatal(1, randomize failed); end不要直接調(diào)用ag.randomize();然后使用變量失敗了你都不知道。第二步縮小范圍。把類里的約束逐個注釋掉只留下最小必選約束看哪個約束和哪個約束組合起來導(dǎo)致失敗。這個工作靠經(jīng)驗(yàn)也靠耐心如果約束很多建議寫一個最小化重現(xiàn)類。第三步使用仿真器的constraint debug選項(xiàng)。VCS有不少關(guān)于約束求解的debug命令打開之后可以打印出求解器的詳細(xì)求解過程能直接看出哪個約束不滿足。Questa/ModelSim也可以用-solvefailtest這類選項(xiàng)做約束失敗分析。仿真器的report里通常會列出沒能滿足的約束名學(xué)會看這個報告比瞎猜快得多。5.2 dist權(quán)重不生效概率和想象中不一樣dist權(quán)重不生效最常見的兩個原因一個是約束沖突一個是權(quán)重設(shè)置方式不對。約束沖突前面說了dist是概率傾向如果另一個constraint硬性排除了某個值那這個值的權(quán)重就毫無意義。比如你寫了len dist {0 : 80, [1:7] : 20};但同時寫了constraint c_avoid { len ! 0; }那么len為0的情況永遠(yuǎn)出不來80%的權(quán)重等于白設(shè)。這是初學(xué)時容易犯的隱形錯誤。另一個原因是:和:/的語義混淆。建議記住一條判斷原則如果你希望某個區(qū)間內(nèi)的每個值都按同一個權(quán)重重現(xiàn)用:如果你希望整個區(qū)間作為一個整體控制權(quán)重讓這個區(qū)間內(nèi)部的值平分總權(quán)重用:/。以[1:7] : 60為例每個值權(quán)重都是60總的1到7權(quán)重是420在總權(quán)重中占比會非常高如果你本意只是想讓“1到7”這個區(qū)間占60%那應(yīng)該用[1:7] :/ 60。這個區(qū)別直接決定了你的隨機(jī)分布是否符合覆蓋率模型設(shè)計。5.3 randc用錯場景覆蓋率不收斂randc雖然會自動遍歷取值但它只在連續(xù)多次randomize()同一對象時才有這個效果。如果你每次randomize()之后就把對象復(fù)制走或者每個用例重新new一個對象那么randc的循環(huán)遍歷效果就失效了因?yàn)樗涗浀氖菍ο髮?shí)例內(nèi)部的循環(huán)狀態(tài)。我見過一個項(xiàng)目里sequence每次發(fā)送包都新建一個packet對象里面用了randc字段想著能覆蓋每個值。結(jié)果每次新建對象后randc都從初始狀態(tài)開始隨機(jī)性完全變成了普通rand行為覆蓋率跑了很久都不收斂。后來改成在sequence里保存對象引用、連續(xù)復(fù)用同一個item覆蓋率才正常。另外如果randc字段的最大值特別大比如randc bit [31:0] seed_value;要遍歷全部42億個值才可能隨機(jī)回同一個值它的“循環(huán)”意義就基本不存在了用rand反而更合適。我建議randc只用在值域小于幾十、需要快速覆蓋每個值的字段上。5.4 隨機(jī)種子變化導(dǎo)致回歸失敗無法復(fù)現(xiàn)回歸一時全綠再加幾個用例就紅了但單獨(dú)把紅的那條用例拿出來跑又不紅這是驗(yàn)證環(huán)境里很磨人的場景。多半出在隨機(jī)種子的全局流上。解決這類問題首先要把每條用例實(shí)際的隨機(jī)種子記下來。很多UVM環(huán)境在test的main_phase開頭都會打印種子比如uvm_test_done的打印或者你自己寫$display(seed%0d ...)。失敗時拿到那條用例的準(zhǔn)確種子然后用單回歸加上這個種子去跑。如果固定了種子仍然復(fù)現(xiàn)不了主義檢查環(huán)境中有沒有“非確定性來源”比如使用系統(tǒng)時間做延時、從外部文件隨機(jī)讀取、使用哈希表遍歷順序不一致、多線程并行調(diào)度導(dǎo)致事件順序變化等。這些都會擾動RNG的推進(jìn)步數(shù)導(dǎo)致同一個種子下序列錯位。解決辦法是把這些非確定因素盡量固化比如文件讀取用固定順序、組件實(shí)例化順序固定、避免在同一次randomize之間插入依賴環(huán)境的調(diào)度。5.5 浮點(diǎn)約束導(dǎo)致仿真變慢或失敗前面提到過用real做隨機(jī)約束可能出現(xiàn)求解慢、邊界精度問題。這在實(shí)際項(xiàng)目里確實(shí)存在。另一種更隱蔽的問題是當(dāng)你把浮點(diǎn)和整數(shù)混合約束時比如r inside {[0.2:0.3]}; r * 1000 int_val;求解器可能對浮點(diǎn)方程的求解支持不好導(dǎo)致隨機(jī)化失敗。我的建議是盡量用整數(shù)方案替代浮點(diǎn)約束除非設(shè)計本身需要浮點(diǎn)浮點(diǎn)隨機(jī)源。比如需要生成一個隨機(jī)的時間偏移系數(shù)用rand int unsigned permille; constraint c_permille { permille inside {[200:300]}; }使用時real coef permille / 1000.0;。這樣既能精確控制范圍又不會有浮點(diǎn)約束帶來的求解開銷。這一點(diǎn)算是個人實(shí)踐里比較受益的經(jīng)驗(yàn)。寫到最后的一點(diǎn)體會隨機(jī)化策略看起來是幾個關(guān)鍵詞的事實(shí)際用起來卻貫穿了整個驗(yàn)證環(huán)境的設(shè)計思路。怎么選randc、怎么寫constraint、怎么調(diào)dist權(quán)重本質(zhì)上是在“可控性”和“隨機(jī)性”之間找平衡。我在實(shí)際項(xiàng)目里最深的感受是約束隨機(jī)不是讓驗(yàn)證變得“純隨機(jī)”而是讓驗(yàn)證能夠在有限仿真時間內(nèi)更聰明地探索那些最容易藏bug的空間。因此每次寫約束之前先想清楚這個變量在業(yè)務(wù)場景里的真實(shí)分布再用dist表達(dá)出來會比隨手寫一個范圍約束有效得多。最后分享一個小習(xí)慣每寫一個帶約束的類我都會在類里加一個function void post_randomize()把隨機(jī)結(jié)果的關(guān)鍵字段打印出來方便第一時間看到隨機(jī)化后的值是否符合預(yù)期。不要小看這個動作它能在你寫完約束后立刻暴露約束寫錯、權(quán)重配比不對、或者范圍不合理的問題省去后面大量的debug時間。隨機(jī)化這個東西一旦理順了是驗(yàn)證效率提升最明顯的手段之一。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91碰在线| 久久婷婷六月| www.天天干| 免费观看大片视频 丁香婷婷 六月欧美| 丁香五月激情综合婷综| 麻豆AV一区二区三区| 日韩色色视频www| 日韩综合久| 人人色人人摸人人看| 九九在线热九九在线热99热| 欧洲毛片基地c区| 激情纯色婷婷五月天在线不卡视频| 五月停视频天堂| 另类激情五月| 操日视频| 五月激情在线| 啪啪操超碰| 成人婷婷桔色| 九热久| 思思热精品在线| 天天天天天色| 性爱先锋AV| 风流少妇A片一区二区蜜桃| 婷婷五月天色| ji'qing'luan'ren'lun| 精a品a视a频| 丁香婷婷浪潮AV久久综合| 精品少妇蜜臀91| 久久日韩婷婷五月| 欧洲综合一区| 大地9中文在线观看免费高清| 99视频激情四射| 久久黄A片| 婷婷六月色情| 婷婷五月激情视频网| 亚洲午夜一区二区| 日日干日日| 99re在线观看视频| 色私五月婷婷| 激情图片久久| 日本精品干| 国产午夜精品一区二区三区四区| 五月香婷婷| 色婷婷综合网站| 任我干视频在线观看| 婷婷射丁香| 亚洲精品乱码久久久久99| 97操碰98| 红桃91人妻爽人妻爽| 狠狠色丁香| 99丁香五月婷| 婷婷成人综合| 一本久道综合色婷婷五月| 秋霞电影一级黄| 91丨九色丨熟女| 欧美碰碰碰| 婷婷综合五月| 成人在线视频网| 五月婷婷综合在线观看| 久久五月天色| 欧美性爱五月天| 思思久热6| 久久亚洲精品成人无码网站导航| 久久综合五月天| 亚洲色综久久五月| 久久网日本| 99伊人婷婷在线| 婷婷字幕在线| 91无码高清| av国产精品| 婷婷成人视频| 九九婷婷激情综合网| 免费观看18视频网站| 人妻少妇色综合| 亚洲色综合| 能看的AV| 五月丁香婷婷色| 九九亚洲| 精品一二三区久久AAA片| 99热这里只有精品免费| 99久热| 深爱激情网五月天| 久草五月婷婷| 激情四射婷婷| 婷婷综合亚洲| 国产毛多水多女人A片| 这里有精品| 99无码精品| 色播五月天激情| 人妻久久久久久| www99在线观看视频| 日韩久久这里只有精品| 日本一毛片| 91爱啪啪| www.天天干| 日日影院 | 免费视频在线观看的网站| 久久涩视频| www.婷婷久久五月天| 国产婷婷婷| 3DAV亚洲香蕉久久 一区二区| 91色欲综合| 91AV视频| 五月网激情| 婷婷五月深深的爱| 激情五月婷婷丁香综合网| 色狠狠色噜噜AV天堂五区消防| 亚洲成人婷婷| 色色婷| 久久久99精品免费观看| 91肏肏肏| 中文在线成人| 97色色色色色色色色色色色色色| 五月婷激情影院| 综合网色| www99精品| 《》【无码】想被搞到爽AV应募而来的超M素人 西纯子 10musume-011723-01 | 色噜噜狠狠色综无码久久合欧美| 丁香六月激情综合| 狠狠九九婷婷韩| 综合丁香婷婷五月天| 五月天狠狠干| www色色com| 天天色2017| 成人视频在线免费播放| 97视频久久| 另类综合激情| 九色婷婷| 九九热在线精品视频| 色婷婷精品视频在线播放| 久久婷.com| 天天射综合网天天插| 丁香五月天婷婷激情| 欧美日韩999| 亚洲天堂九九九| 国产成人网| 婷婷六月视频| 河北真实伦对白精彩脏话| 亚洲综合无码| 五月婷婷综合潮喷| 51国精产品自偷自偷综合| 99久久偷拍视频| 久久综合丁香| 五月丁花六月丁香综合| 免费成片在线观看| 天天干天天叉| 8050一级网| www.99.色| 99只有精品| 香蕉久久国产AV一区二区| 丁香婷婷色情| 久色激情| 婷婷情色五月天| 91热er| 91婷婷色| 大香蕉五月丁香| 日日爽天天| 婷婷成人视频| 爱爱色五月天| 九九色逼| 九九热re99re6在线精品| 99在线国| 97色干在线观看| 五月激情综合性爱| 伊人干练久| 久久久久er热| 九九免费精品在线视频| 疯狂做受XXXX高潮A片| 国产99久久久| 五月天桃色深爱网| 99色色网站| 无码激情| 操笔无码| 五月丁香综合精品欧美| 亚洲五月天婷婷| 丁香五月天堂| 9999久久久久| 成人网在线视频| 久久加勒比| 亚洲色情一区二区三区四区| 综合久久十| 成年人99热| 91干婷婷| 婷婷五月综合体验看| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 99精品偷自拍| 91人人操人人| 丁香婷婷激情| 97五月天婷婷| 丁香九月综合| 粉嫩AV久久一区二区三区| 亚洲丁香婷婷五月天综合色| 综合天堂AV久久久久久久| 五月丁香婷婷啪啪综合网| 在线中文AV| 亚洲综合干| 色五月婷婷在线观看第一页舔| 97丁香花五月天激情小说| 成人AV在线电影| 九九色精品| 色婷婷99| www.色婷婷| 99ri久久| 亚洲愉拍99热成人精品| 99色视频| 9.1综合网| 激情五月丁香五月| 人人爱人人摸人人澡| 91精品啪| 99re在线播放| 亚洲操精品| 国产噜一噜天天噜| 视频一二区| 五月婷婷六月少妇激情| 欧美婷婷六月丁香综合色| 超碰v| 五月天五月天成人网亭亭成人色网站| 久久狼人天堂| 婷婷综合在线网| av网站中文| 99视频九九热| 色色99| 婷婷五月天首页| 久久日婷婷| 2017人人操| 激情五月伊人婷婷| 久久99网址| 激情综合五月婷婷| 丁香五月婷久久| 色哟哟精品| 国产成人精品亚洲线观看| 九九亚洲小视频| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 五月天激情小说| 青青草轻轻操| 久久久香港| 五月天开心网| 亚洲无码另类| 久久婷婷网| 久久66精品| 天天骑日日爽| 色婷婷综合网站| 欧美日韩成卜| 91狠狠综合久久久久久| 九色91视频| 狠狠色噜噜| 丁香六月婷婷缴情欧美| 我爱大香蕉| 激情婷婷五月综合| 亚洲最大视频网站| 任我干视频在线观看| 五月天激情婷婷| 777久久综合视频| 日韩av在线免费观看| 大香蕉婷婷| 日韩在线观看亚洲| 婷婷成人五月天成人文学| 五月开心啪啪| 天天免费日日夜夜夜夜| 婷婷五月天论坛| 亚洲综合激情五月天婷婷| 97人人操com| 99视频在线观看地址| 激情综合婷婷| 国产成人片| 久久精彩免费视频| 天天日天天色| 久久与婷婷| 亚洲 视频 导航 一区| 五月天久久91| 天天橾夜夜爽| 日本狠狠网| 亚洲五月婷婷在线| 天天操夜夜肏| 开心五月婷婷婷美女| 色五开心五月五月深深爱| 91啪级电影| 亚州激情网站无码| 色情久久久| 激情网五夜婷婷| 天天狠狠婷婷在线| 熟女激情网| 国产免费一区二区三区三州老师F1F1.CC| 色色色色色日韩午夜激情 | www.五月婷婷| 天天人人综合| 五月丁香色婷婷基地| 男人的天堂五月丁香| 99久| 超碰日韩人妻在线| 色婷婷啪啪综合网| 超碰免费大香蕉| 久热69| 99热综合色图| 激情五月丁香婷婷夜夜操| 任你草| 婷婷她六月天| 蜜桃婷婷丁香| 99热精品99| 开心激情五月天网| 婷婷情色五月天| 五月丁香无码| 丰满少妇猛烈A片免费看观看| 风流少妇A片一区二区蜜桃| 婷婷中文字幕欧美| 狠狠狠狠狠狠| 激情五月色婷婷| 1000部毛片A片免费观看| 午夜伊人大香蕉| 超碰婷婷五月| 久久婷婷精品| 天天综合中文| 99视频自拍| 丁香五月婷婷社区| 激情丁香婷婷| 久久99性爱视频| XX久久| 成人短视频在线观看| 97操操| 婷婷五月五月丁香| 天天日夜夜欢| 色久五月天| 色婷婷97| 久久久97| 日本丁香久在线| 五月天婷婷激情网| 天天天摸夜夜夜玩| 色色五月天丁香| 少妇性按摩无码中文A片| 九九9久九9国产视频| 色婷亚洲五月丁香| 校园激情 亚洲| 色播五月网| 激情丁香九九五月综合网| 99人妻碰碰久久久禁片| 全亚洲最大的婷婷五月天网站COM 丁香五月婷婷狠狠色 | 66色在线日韩| 国产国产乱老熟女视频网站97| 嫩草国产| 丁香五月婷婷在线视频| 丁香六月婷婷久久综合| 9久视频| 丁香五月宝贝激情网| 亚洲欧美婷婷五月色综合| 五月天激情小说| 婷婷激情六月综合| 五月婷婷之综合激情| 五月天综合在线| 五月久久婷婷天堂视频| 日韩在线婷婷五月天综合| 99久久婷婷国产综合精品草原| 色五月婷婷影视| 69五月天视频| 激情六月丁香| 婷婷丁香五月色偷偷| 激情综合网激情五月欧美| 91人人网| 丁香五月激情啪| 色婷婷色婷婷五月| 99re久热| 色婷婷五月天偷拍| 毛片蕉地一二| 婷婷色色婷婷| 国产44页| 成人永久免费视频在线观看| 91综合在线视频| 五月激情六月婷婷| 狠狠一日| 激情婷婷五月基地| 1024久婷| 99色在线视频| 人人性久久| 色五月激情网| AA久久| 激情综合网激情五月天| 丁香五月婷婷偷拍| 九九热视频99| www色色色com| 国产精自产拍久久久久久蜜 | 91碰| 五月丁香在线观看| 丁香色六月| 婷婷激情图片| 五月婷婷香蕉| 91碰操| 狠狠干无码| 99啪啪骑| 亚洲成人一区| 亚洲性图一区二区三区| av操B网站| 五月丁香色婷婷综合| 五月久久综合| 思思久热6| 九色综合五月天婷五月| aa久久| 激情五月婷婷| 99久久国产宗和精品1上映| 99在线看片| 大香蕉在线99热| 婷婷五月天激情在线观看| 精品国产一区二区三区四区阿崩| 一本久道综合色婷婷五月| 五月丁香综合影院| 99在线观看| 色五月激情问网站| 色色六月| 天天色综网| 青青操avbb| 人碰人人人玩91| 天天摸天天透天天舔| 久久精典| 3p九色在线| 激情综合五月色丁香婷婷| 99热大| 五月丁香91| 这里只有精9| 丁香五月色情av| 色婷婷五月在线| 影音先锋色色色资源色资源色| 五月天激情网站| 丁香五月六月激情| 久久99精品九九久久久婷婷| 综合久久五| 天天骑天天操| WWW色五月天| 97午夜一区二区| 99福利导航| 欧洲亚洲免费视频区| 丁香六月欧美| 狠狠色丁香| 婷婷五月婷婷五月天| 伦99热| CHINESE熟女老女人HD视频| 大波美女VA网站| 五月丁香婷婷激情四射迷人| 欧美性爱五月天| 欧美婷婷五月| 99极品视频| 欧美色九| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 香蕉AV777XXX色综合一区| 天天爽天天干| 色色色色色色色色色色色色色色,网站| 九九热九九| 丁香六月激情国产| 9精品久久999| 久久婷婷视频| 99色色| 综合色综合| 九月婷婷综合| 影音先锋一区| av激情在线| 亚洲岛国电影| 午夜无码熟熟妇丰满人妻 | 就是色婷婷五月亚洲色| 日韩久久日| h在线看免费版在线看| 开心五月婷婷激情网| 高清国产AV| 老妇六区| 欧美激情性做爰免费视频| 色九区| 久久婷婷五月综合色奶水99啪| 久久婷婷五月天亚洲欧美| 深爱激情九九五月天 | 日韩五月天婷婷| 碰超在线九色| 婷婷综合伊人| 日噜噜色| 人人操大| 婷婷玖玖丁香| 婷婷综合网性| 青青草网武则天| 色和综合网| 狠狠精品干练久久久无码中文字幕 | 久久性爱网站| 九月婷婷丁香| 深爱激情av| 五月丁香综合精品| 色狠狠图片| 六月丁香深深爱| 天天日夜夜高潮| 天天骑日日爽| 人人舔人人色人人高潮| 色婷綜合网| 婷婷五月天六月综合| 五月天开心成人网| 丁香婷婷啪啪啪| 五月综合六月丁| 99热啪啪| 中文字幕永久在线| 丁香六月色婷婷欧美| 亚洲俩性性爱图片久久第六页| 五月丁香久久综合| 九九婷婷五月天影视| 天天透天天摸天天舔| 狠狠色综合五月| 五月激情久久| 婷婷六月啪啪| 九九av| 日日做A爰片久久毛片A片英语| 少妇性按摩无码中文A片| 亚洲无AV在线中文字幕| 日本97在线观看| 色色热| 激情小说五月天| 大香蕉久| 91黄色五月天视频| 五月丁香激情综合六月涩涩爱| 91在线观看www| 光棍影院日韩精品| 久久99热免费| 久久一二三视频| 婷婷伊人五月天| 婷婷五月天奸女| 五月天综合婷婷| 激情五月天色播| 99久久综合狠狠综合久久| 五月香蕉网| 久久婷婷色| 综合在线丁香五月| 99热日| 六月激情网| 欧美性猛交99久久久久99按摩| 玖玖九九9999在线观看视频精品| 婷婷五月天网址| 99丁香五月婷| 亚洲精品一区中文字幕乱码| 久久久精品99| 五月婷婷播| 六月婷婷开心| 大地9中文在线观看免费高清 | 就爱日五月天| 人碰91| 色婷婷WWW| 亚艹艹| 人妻啪啪啪| 大香久久综合网| 六月久久婷婷| 激情五月www| 97干欧美| 久久机热探花| 丁香五月天BBw| 五月天激情图片| 97伦乱| 九九成人精品免费视频| 亚洲色婷婷| 五月天激情小说网| 亚洲啪啪网| 久久久人人人妻丝丝丝| 91一起操| 五月香蕉网| 激情综合五月.....| 久操综合| 色婷婷综合成人| 三级成人网站| 色999;丁香五月| 五月婷婷丁香六月| 亚洲综合激情五月| JlZZJlZZ8JlZZ亚洲熟女| 好好干Av| 色五月天在线观看| 伊人爱爱日本| 欧美日韩大黄| AV五月丁香| 99热一本久道| 激情五月婷婷网| 亚洲AV影片在线观看| 97AV在线视频| av无码电影| 日韩欧美一级大黄网站| 五月刺激丁香月综合| 色婷婷五月在线| 玖玖在线视| 婷婷五月丁香基地| 丁香六月婷婷综合缴| 99热精品观看| 久久99这里| 婷婷五月情色| 色五月婷婷五月天激情综合| 激情婷婷久久| 九九热视频在线观看| 亚洲蜜桃精久久久久久久久久久久| www色色com| 日本黄色一级| 超碰无码318604| 97人人草| 五月丁香青草综合啪啪| 天天搞天天色综合| 噼里啪啦在线观看免费完整版视频 | 一本久道综合99| 亚洲综人色综网| 久久香蕉婷婷五月天| 丁香美女主播视频在线观看| 亚洲av网站| 精品一区二区三区四区五区六区| 狠狠色中色| 久操无码| 好好干av| 人妻熟妇国产精品| 91操人人操| 噜噜狠狠色综合久| 99热精品10| 天天爽,夜夜爽| 人妻激情在线| 91男同视频| av无码电影| 久er7久热| 久久精品只有这| 久久亚洲激情五码| AV网在线观看| 丁香五月婷婷动漫| WWW,五月| 色99久草在线| 天天激情5月天亚洲| 99热这里只有精品在线播放| 俺去也五月| 色播色丁香五月| 婷五月丁香俺| 五月天激情AV| 久久九九网| av成人在线播放| 国产精品色情AAAAA片软件| 日本操B片| 五月天天丁香婷婷在线中| 婷婷久久综合久色| 五月丁香啪| 色婷婷色情| 66久久视频在线| 五月丁香色婷婷色| 专区无日本视频高清8| 99男人的天堂| 亚洲精品激情| 国产精产国品一二三在观看| 99re99在线看| 99在线免费视频| 激情亚洲五月| 久久WW| 亚洲色A| 日本乱子人伦在线视频| 超级碰人人操人人干| 色婷婷在线综合色播网| www.91操| 天天操五月天| 欧美日韩AAAA| 香蕉影院色| 五月天婷五月天综合网在线观| 色婷婷久久综合中文久久一本| 国产午夜精品AV一区二区麻豆| 先锋五月婷婷丁香草草| 26.uuu丁香五月婷婷| 亚洲无码猫咪| 五月婷AV| av在线免费播放观看| 欧美丁香六月在线观看视频| 亚洲视频99| 91超碰在线观看| 亚洲天堂aaa| www五月婷婷| 手机看片日日做夜夜| 开心五月综合激情网| 玖玖爱导航| 色婷婷社区| 综合福利网| 婷婷五月婷婷五月天| 影音先锋 91工厂| 色五月综合| 99热伊人| 99精品在线观看视频| WWW·色色色·COM| 激情丁香五月婷婷| 男人天堂AV在线一区二区| 中文字幕色色| 丁香五月婷婷欧美成人色图| 久久免片| 99五月婷| 成人短视频在线| 97碰久久| 婷婷综合激情| 99热国产在| 欧美人与性动交CCOO| 电影《战争与艾拉》免费观看| 六月婷婷色| 亚洲艹网| 99ER热精品视频| 69激情小说| 少妇性按摩无码中文A片| 男人天堂亚洲综合| www.97视频| 狠狠五月天激情| 91男人资源站| 五月天激情综合网| g00d人体西西| 亚洲无码播放| 色五月激情问网站| 一级AV片| 月婷婷婷婷五月| 欧美操综合| 久久9热| 丁香综合婷婷开心激情网| 五月天激情四射| 五月婷婷五月天天| 久热天堂| 久热99| 五月婷婷视频啪啪美女| 日本色99网站| 涩涩五月天| 9999热在线免费观看| 97av在线视频| 狠狠操在线视频| 久久久久久综合五月婷婷| 西西4r午夜剧场| www.天天干| 9|在线观看视频| 成人五月天丁香婷| 亚洲色欲欧美一区二区三区| 婷婷色资源| 超碰二区| 亚洲开心激情网| 色色丁香婷婷五月天| 九九色播五月丁香| 五月永久激情| 亚洲色图81p| 六月丁香五月婷婷| 色五月色五天免费视频| 久久综合中文| ztEJj| 99热.com| 欧美爆乳一区二区三区| 在线播放中文字幕| 天堂二区| 26uuu欧美日本| 丁香五月婷婷色| www.久久99| 国产亚洲精品AAAAAAA片| 国产密乳av一区二区三区四区| 日韩AV一区二区三区| 超碰av在线| 五月丁香狠狠| a网站免费观看| 97超级碰人人| 欧美精品啪啪| 亭亭五月天成人| 色婷婷婷av| 中文字幕无码人妻少妇免费视频| 九九青草热| 精品99爱免费视频在线观看| 国产精品99久久久久久猫咪| 天堂在线伊久| 久久久99视频| 五月丁香欧美综合| 5月丁香综合网| 色五月天丁香婷婷色| 色婷婷成人做爰A片免费看网站| 五月婷婷免费| 久久综合丁香五月| 91精品综合久久婷婷九色| 伊人大综合| 五月婷婷丁香| 92久久| 五月丁香婷婷AV| 啪啪综合| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 激情综合另类| 欧美日本黄色| 青青操日本摸摸看看| 熟妇人妻中文字幕无码老熟妇| 婷婷啪啪| 免费看片在线观看| 草了bav视频在线观看| 六月丁香激情网| 色播五月综合网| 久久少妇视频| 五月天激情.com| 天天日人人| 狠狠色噜噜色狠狠狠综合色| 91中文狠狠综合| 五月激情小说| 狠狠干狠狠色| 九九综合| www狠狠| xx久久| 五月婷婷深深爱| 五月婷六月| 开心五月深爱五月丁香五月激情五月| 91婷婷五月天综合视频| 综合狠狠五月婷婷| 91人人操| 国产黄色一级片| 国产精品成人AV在线观看春天| 五月婷婷六月色| 亚洲久久激情| 色偷偷综合| 久久丁香五月天| 五月婷婷在线免费观看| 丁香六月五月天| 国产午夜一区二区三区| 久久偷拍综合五月天| 婷婷色激情五月天| 丁香六月婷婷激情| 橾逼网| 99视频在线观看网址| 色婷狠狠| 五月丁综合在线观看| 婷婷5月天激情综合| 久久精品在线| 人人天堂操| 久久久五月婷婷| 拳交大逼| 人妻久久久| 99热国产免费| 婷婷五月电影| 天天操天天干天天日| 天天做天天爱| 操一区| 免费看成人AA片无码视频吃奶| A片试看50分钟做受视频| 99热在线观看免费精品| 丁香五月天视频| 欧美激情综合色综合啪啪五月| 婷婷久久夜| 久久最新色色色| 成人羞羞啪啪 全 视频| 五月婷婷免费| 日日爱激情| 超碰资源在线| 婷婷五月天在线观看| 99这里只有精品视频| 五月天精品| 国产精品久久久久9999小说| 高清a片基地| 色综合香蕉| 色色99| 九九综合久久丁香婷婷,开心激情综合网| tingting五月天亚洲| 快乐激情五月色婷婷| 人人舔人人色人人高潮| 五月婷婷精品无在线| 国产精品色| 狠狠干夜夜干| 91在线日| 八戒青柠影视剧在线观看| 九九草草逼| 91精品综合久久婷婷九色| 久久综合丁香五月| 99精品在| 天天插天天草人人玩| 玖玖资源站中文| 任你日视频| 三男玩一女三A片| 亚洲乱码日产精品BD| 九九激情| 9l视频自拍9l九色9l成人| 婷婷五月天直播| 色五月激情| 色情五月综合婷婷| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 蜜桃成语时李时珍 免费| 在线日韩av| 六月丁香色色| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 五月天色婷婷综合| 欧洲色| 92久久久| 人妻久久久久久久久妻久久久久久久久| 射久久丁香五月| 91久久久久久| 99天堂网| 五月丁香婷婷啪啪网| 伍月婷丁香婷| 天天色噜| 亚洲成人在线观看av| 青青草tp| cc精品国产性传播| 五月天激情小说| 九九婷婷激情综合网| 99ri在线| 婷婷五月天伊人网| 疯狂做受XXXX高潮A片| 国产精品色婷婷久久久精品| 色色色777| 五月婷婷丁香俺日污视频| 五月丁香啪| 亚洲午夜电影| 淫荡综合网| 五月婷婷激情网| 97在线观视频免费观看| 久久婷婷综| 夜夜夜夜夜操| A片试看50分钟做受视频| 成人 视频免费观看网站| 五月丁香六月婷婷久久久综合| 五月天丁香婷| 狠狠爱婷婷五月天| www.99热最新视频8| 综合大香蕉| 色哟呦av| 人妻内射麻豆视频| 色婷婷综合影院| 91妻人人爽人人看片| 亚洲综合字幕色色| 亚洲天堂大香蕉| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 欧美日韩成人高清在线| 99热亚州综合| 五月丁香六月合| 99久久婷婷国产综合精品草原| 色婷婷A| 天天日夜夜爽| 1024AV视频| 丁香婷婷五色月| 小视频久久久aaa| 99黄色性生活| 中文字幕AV在线播放| 欧美伊人9| 国产精品丝| 久热视频这里只有精品| 激情五月狠狠喔| 九九机热| 99精品视频播放| 亚洲噜色| WWW色五月| 九九热再线九九视频免费在线观看| 国产毛片精品一区二区色欲黄A片| 五月婷网| 91九色精品熟女内射| 99热大香蕉| 99ri国产在线| 99开心五月五月丁香激情| 日日爽日日| 六月色婷婷色| 丰满人妻一区二区三区| 天天舔天天插天天爱| 亚洲综合色网| 婷婷丁香五月久久| 99干日日干| 久热最新视频| 色域五月丁香| 久久96热| 久草嫩草在线观看| 丁香六月婷婷久久综合| 色婷婷五月在线| 91啪啪视频| 久99久在线| 五月丁香五月综合欧美| 再綫Av免费視品| 国产毛片精品一区二区色欲黄A片| 99在线视频免费| 国产精品美女| 我要看激情五月天| 国产成人亚洲综合亚洲| 91狠狠色丁香| 狠狠干狠狠色| 国产亚洲在线观看| 成人AV在线网站| 最新国产AV| 激情五月天影院| 大香蕉网站,大香蕉综合| 五月婷啪啪| 99爱这里只有精品| 日本91在线播放| 五月婷婷在线视频| 秋霞性爱AV| 4399成人黄A片| www.26uuu.com亚洲电影| 婷婷五月精品中文| 99热国产精品| 天干干夜夜操| 欧美亚洲成人在线| 深爱开心激情| 99.色| 色五月婷婷五月天激情综合| 精品久久99码| 婷婷五月深爱五月| 超碰91人人操| 成人无码髙潮喷水A片| 2025年最新亚洲在线欧美| 亚洲电影中文字幕| 色色色色热| 丁香六月婷婷社区| 丁香成人五月天| sewuyue第四色| 激情五月天综合网| 国产人妻777人伦精品HD| 五月天久久网站| 久久婷婷伊人| 久久久aaa| 婷婷丁香18| 91久久婷婷人人澡草| 日韩在线视频网站| 丰满少妇猛烈A片免费看观看| 思思热视频| www久久五月com| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 玖热精品综合视频| 超碰婷婷五月| 另类A片| 99精品7| 九九色色| 99视频在线看| 激情综合五月| 激情网婷婷五月天| 婷婷五月天改成什么了| 九九综合图片网| 拍真实国产伦偷精品| 开心五月婷婷| 六月天无码网址| 丁香五月婷婷深爱综合激情| se婷97| 丁香五月色| A久久| 五月婷婷黄色| 激情久久久久久久久久久| 久久9热好| 我爱大香蕉| 天天综合在线网| 天天插天天狠| 97色图片中文字幕视频在线观看| 免费观看全黄做爰的视频| 香蕉国产2013| 99国产视频网| 五月丁香婷婷激激激综合网色播| 丁香五月天导航| 五月丁香久久综合色| 97爱艹婷婷开心丁香激情综合| 夜夜爽天天干| 天天久久狠狠色综合| 丁香五月播播| 五月婷婷深爱六月| 激情五月黄色小说| 99少妇精品| 99日热在线视频| www.色五月| 九九热精品视频在线观看| 精品人妻久久久久| 国产精品成人网址| 成人丁香五月| 久久综合爱| 婷婷开心久久| 婷婷五月天成人综合网| 天天摸天天舔天天爽| 日韩成人网址| 激情综合网五月| 热99免费在线| 99热只有精品在线| 色约约视频一区二区三区四区五区| 日韩免费视频| 99九九久久| 色色激情五月| 天天做天天爱天天玩| 中文乱子伦视频| 色综久久久| 开心丁五月| 天天做天天爱高潮片| 久久久久久久97| 2017人人操| 色综合中文色综合网| 五月丁香九九| 婷婷六月色情| 99啪在线| 91精品国产日韩91久久久久久国模| 色色影院黄大片| 秋霞少妇毛片| 日韩精品一区二区刘| 97超碰9久热婷婷热| 婷综合六月| 九色1区视频在线| 日韩国产AV播放| 性爱激情久久| 超碰伊人碰婷婷五月| 五月丁香六月婷婷激情四射| 91干在线视频| 亚洲成Av人片乱码色第1集| 九九丁香社区欧美激情| 久久久婷丁香五月| 亚洲AV成人在线观看| 亚洲免费av观看| 久re热视频| 日本色99| 婷婷五月丁香超碰| 中文字幕在线免费观看视频| 中文激情网| 丁香五月天激情婷婷丁香六月| 久久9精品| 思思热在线视频观看精品| 九九热在视频| 婷婷五月中文字幕国产| 国色天香伊人狠狠色| 狠狠五月激情丁香六月| 色婷婷综合影院| 狼人久草| 六月成人网| 丁香99| 成人免费高清在线播放| 91久久国产综合久久| 中文精品在| 综合激情伊人影视在线| 五月丁香天天| 国产成人va在线| 亭亭五月色男人| 1024操逼视频| 五月天婷婷丁香| 婷婷丁香综合网| 久久日九九| 91久久99久久91熟女精品| 综合激情婷婷| 五月婷丁香亚洲| 九九视频在线| 丁香五月性| 97日韩无套内| 人人操人人看97干| 99综合网| 婷婷丁香五月天在线| 色色综合无码| 亚洲VA在线| 久久538| 99在线观看| 精品欧美一区二区三区久久久 | 91丨九色丨熟女丰满| 久久人人九| 午夜69成人做爰视频| 操操自拍| 久99| 色国产五月| 美国色五月天婷婷资源站| 天天日天天色| 人妻av在线| 亚洲mm免费| 久9久9久9久9久9久9| 婷婷综合网在线| 久久综合激情婷婷激情| 五月婷婷久久久| 九九亚洲天堂| 国产婷婷五月天| 思思热在线精品视频网站| 先锋资源婷婷| 图片区 小说区 区 亚洲五月| 成人.在线日韩| AV在线观看网站| 五月激情婷婷播播网| 秋霞AV淫| 狠狠干狠狠干| 玖玖精品婷婷| 五月丁香在线婷婷蜜桃| 色五月婷婷五月天| 九月婷婷在线视频| 久久综合干| 丁香五月色欲| 成人av免费观看| 色在线免费观看| 亚洲色色色色色| 欧美25p| 国产av一区二区三区| 9l视频自拍九色9l视频自拍九色9l社区| 五月婷婷免费在线观看| 91超级碰在线视频| 五月天丁香色色| 五月婷婷另类| 五月丁香婷婷激激激综合网色播| 亚洲欧美成人在线| 久操干| 丁香5月婷婷| 99在线精品免费视频| √天堂资源在线人妻熟女| 激情网五月婷婷| 99性色| 日韩另类在线观看| 国语精品探花| 色色五月天激情| 久久久久久久久久91| 99热在线观看免费| 激情五月天婷婷| 久久中文人妻系列| 久久精品系列| 综合久久8| 久久久久久丁香五月| 五月天啪啪| 97人凄人人操人人爽| 丁香五月婷婷亚洲综合精品在线| 开心激情网五月天| 玖玖婷婷色五月| 亚洲综合激情五月| 丁香五月天的网址。| 99热综合网| 久草性爱| 亚洲天码视频www蛋播视频| 99ER热精品视频| 丁香五月天导航| 深爱激情综合| av在线免费网站 | 午夜色丁香| 大操人妻| 俺去也在线官网| 久久女婷| 五月婷婷综合激情| 91久久久久久久| 99综合网| 色色色色网| 五月天社区| 超碰人人操人人干| 婷婷伊人| 91碰碰| 综合色久| 三级三久久线久久99久目本WW| 99视频内射三四| www久久久| www.xtbsty.cn.com蜜乳AV| 婷婷丁香五月亚洲| 丁香婷婷啪啪| 26uuu国产| 婷婷五月天成人娱乐| 五月丁香六月天| 一區四區歐美日韓| 欧美成人精品三区综合A片| 思思热99er在线视频| http:色情日本com| 高清无码一区二区三区四区| AA片在线观看视频在线播放| 五月天激情中文字幕| 五月丁香婷婷五月色| 热久久视频99| 亚洲成人在线观看网址| 综合五月婷婷| 久久精品五月| 久久综合激情| 丁香五月成人| 婷婷操逼| 丁香五月冃欧美| YW无码| 色久五月天| 六月丁香六月婷婷欧美| 91玖玖| ww亚洲ww在线观看| 99精品无码| 久久99久久99精品免观看软件| 97婷婷久久丁香| 九九综合| 99在线观看| 久久99热网| 色婷婷AV久久久久久久| 97干在线视频精品店| 99热这里只有精品99| 91se在线视频| 天天爽天天干| 米奇激情婷婷| WWW、日本色丁香、co m| 色停停香蕉视频| 开心深爱五月天| 97碰碰九九视频| 久久艹99| WWW·天天操·视频?| 国产精产国品一二三在观看| 丁香婷婷六月激情综合| 婷婷伊人綜合| 五月婷婷六月天| 五月丁香婷庭在线| 丁香久久五月婷综合| 欧美人与性动交CCOO| 99热这里全是精品| 大香蕉五月天婷婷丁香91| 久久怡红院| 色欲AV导航| 综合亚洲六月婷婷在线| 夜夜嗨一区二区三区直播内容 | 国产成人AV不卡| 久久精品人妻|