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

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
返回資訊列表
性爱网五月婷婷| 激情五月婷婷| 久久婷婷五月天激情唯美| 久久9热好| 欧美黄色AA片哗啦啦啦| 玖玖精品资源| 深情六月婷婷综合久久| 操操人人| 亚州婷婷五月激情综合| 婷婷狠狠干| 九月激情综合| 亚洲亚洲永久无码777777| 97啪啪| 夜精品无码A片一区二区蜜桃| 激情欧美五月丁香| 五月天婷婷深深爱| 天天婷婷操| 成人免费在线电影| 97热精品| 久久久久8888| 九色91美女| 色色五月天 亚洲| 色色色999| 99精品视频在线观看| 5月丁香六月情| 日韩婷婷| 新99思思视频| 天天橾日日橾夜夜橾17| 狠狠插狠狠| 九九家庭影院| 26UUU欧美激情一区二区| 久久亚洲婷婷| 玖玖在线资源视频| 操逼在线视频| 丁香六月婷婷综合啪啪| 日本五月天网站| 九九亚洲小视频| 人人色人人摸人人看| 色欲色天天香综合| 婷色人人狠| 先锋五月婷婷丁香草草| 第四色色六月色综合| 婷婷五月丁香久久| 五月天婷婷午夜丁香| 99热精品观看| 婷婷丁香社区网| 99re久久| 69午夜成人影片| 99 频99热国里只有精品| 婷婷八月激情| 精品人妻久久久| 秋霞学生妹一二级| 狠狠插狠狠| 色色色在线免费视频| 久久多色| 五月丁香六月婷婷精品| 丁香六月婷婷色XXXX| 丁香色五月直播| 一级性感黄色内射视频| 五月天激情综合网俺也去| 五月婷婷,狠狠操| 女同在线9| 97爱艹婷婷开心丁香激情综合| 天天干天天干天天| 色五月婷婷丁香凹凸| 熟女强人妻一区二区三区四区无| 日本三级99人妇网站| 日本熟妇乱妇熟色A片蜜桃| 99自拍视频在线| 97色婷婷| 青草视频在线播放| 激情五月天情色| 五月天婷婷激情六月久久| 国产干逼片| 伊人久久婷婷五月综合97色| 亚洲AVwwwwwww| 婷婷激情啪啪| 嫩模aV在线| 综合久| 99热这里在线精品| 深夜A片| 久久久久思思热| 欧洲综合色| 婷婷六月色情| 婷婷内射视频在线| 97精品人人A片免费看| 久久九九99| 中国女人做爰A片| 97碰碰叉| 婷婷六月激情小说网| 婷婷色女| 九九99久久| 婷婷六月天| 成人日韩欧美| 午夜在线成人网站免费观看| 五月丁香影院| 99久久6| 99资源在线视频| 热久精品| 99欧美三级视频| 色色丁香色五月| 色吧五月婷婷| 91午夜激情| 五月天激情影院| www狠狠| 久久五月丁香综合| 久久亚洲色导航| 亚洲、热| 色五月综合网| 久久精品99久久| 激情五月天在线观看色婷婷| 五月天成人免费视频| 二色av| seuuu婷婷| 九九99九九99| 丁香五月婷婷色偷偷| 亚洲午夜av| 久九男女天堂| site:jszngf.com| 丁香五月婷婷色| 99热老网站| 久久丁香综合香蕉| 五月丁香网中文字幕| 久久色9| 五月婷婷丁香综合| 精品久久久人妻| 六月婷婷激情| 2005天天干天天1| AV伊人青草丁香六月| 综合伊人狠狠| 国产婷伊人| 武则天精品久久| 久噜久噜| 碰99在线| 婷婷五月天婷婷| www.婷婷五月| 操人无码| 色色色色热| 婷婷黄色五月| 天天日天天草| 996热re视频在线观看视频| 欧韩性爱| 六月激情婷婷| 婷婷六月丁香激情| 免费黄色视频网址| 五月天色色色| 五月婷婷深深爱| 九九这里是免费的视频5| 色五月首页| 成人无码精品1区2区3区免费看| 亚洲有码在线视频| www.色五月| 婷婷综合性爱网| 婷婷综合欧美| 亚洲妇女熟BBW| 玖热精品综合视频| 色色色综合网| 久久机热这里只有 | 伊人网碰碰| 国内9l视频自拍老熟女九色| 五月激情六月综合| 九九中文字幕九| 另类小说激情五月天| 综合AV网| 激情五月开心五月丁香五月| 99色免费| 五月丁香| 狠狠va| 欧美搡BBBBB摔BBBBB| 五月伊人综合| 亚洲春色奇米影视| 人妻久久久久久| 狠狠爱夜夜| 五月婷婷色五月| 国产免费一区二区三州老师F1F1……| 欧美色色色色色色| 色涩影院六月丁香| 任我肏| 亚洲午夜电影| 婷婷爱五月| A一级操| 专区无日本视频高清8| 丁香久色| 国产免费一区二区三州老师F1F1……| 五月丁香啪啪| 婷婷五月偷拍| 日韩在线观看亚洲| AV九九| 九九無碼| 丁香六月婷婷操逼网| 久久婷婷五月天蜜桃| 丁香五月欧美| 九九久久五月天综合伊人| 五月激情婷婷综合| 无码地址| 色五月丁香com| 五月丁香色婷婷综合| http://www.com久久久精品一区| 欧美色色色色色色色| 中文字幕在线人妻| 超碰大香蕉网| AV天堂淫乩| 影音先锋五月婷婷| 影音先锋天天日| 五月婷婷导航| 欧美在线视频99| 亚洲色婷婷99一9|| 日本三日本三级少妇三级66| 日韩欧美颜射| 五月天色在线| 成人中文字幕在线| 欧美性做爰大片免费看办公室| 色国产五月| 99在线视频。| 婷婷四色五月| 一本伊人色婷| 久久大香蕉同僚| 操操啪| 五月天婷a在线| 日比网免费国产| 久久人妻www| 日本nghangse中文字幕| 91精品综合久久久久久五月丁香| 色婷婷五月天在线| 天天综合网91| 玖玖99婷婷| 看片视频在线免费日产在线看| 色婷婷六月天| 婷婷9月天| 婷婷色片| 五月丁香天堂| 亚洲中文乱字字幕在线永久| 亚洲亚洲永久无码777777| 国产精品国产| 在线18av | 久久婷婷综合五月天| 色99在线视频| WWW.五月com| 九热...av| 色色色综合视频| 婷婷久久18| 九九热这里只有精品6| 日日日日操| 99热最新| 综合爱久久| 五月综合久久| 五月综合丁香婷婷| 天天狠天天叉| w婷婷五月婷婷w| 26uuu精品一区二区| 久热这里只有精品6官网亚洲| 久久久精品婷婷五月天| 五月天成人免费视频| 亚洲欧美一区二区三区四区爱爱动图| 久久亚洲网| 国产色网站| 尤物一区二区| site:pnnrt.com| 无码人妻一区| 五月丁香婷婷国产精品综合| 激情婷婷五月天。| 六月丁香六月婷婷欧美| 久色大香蕉| 色五月婷婷网| 亚洲中文字幕av| 伊人色综在线| 五月天婷婷乱| 丁香婷婷五月天色播| av在线观看网站| 五月丁香亭亭电影久久| 国产精品18久久久| 99热这里有精品| 婷婷五月精品中文字幕| 欧美五月婷婷| 亚洲色在线观看| 思思久久思思| 五月色丁香婷婷中文字幕| 五月丁香综合啪啪| 亚洲av综合网| 丁香五月AV| 中文字幕丰满乱孑伦无码专区| 99热这里有精品6| 国产精品色婷婷99久久精品| 亚洲有码在线视频| 大香蕉欧美在线| 91热久88| 丁香五月激情综合久久| 五月婷婷很很色| 99国产精品久久久久久久久久久| 久久伊人五月天| 久久作爱| 啪啪啪综合网| 26uuu欧美日本| 亚洲色夜| 九九综合色| 991精品在线视频| 激情综合色播| 五月天婷婷无码| 丁香五月花婷婷开心| 99精品偷拍视频| 日本视频久久| 久久这里只有精品视频15| 搡BBBB搡BBB搡五十| 99热最新| 丰满少妇猛烈A片免费看观看 | 婷婷碰碰| 91碰操| 五月综合人妻| 亚洲成人无码免费| 人妻视频在线| 婷婷丁香社区网| 99re在线视频精品,这里只有精品18,| 色五月综合婷婷久久综合婷婷久久综合婷婷久久综合婷婷久久 | avv在线| 五月天婷婷激情四射综合| 丁香五月天日韩无码| 婷婷丁香五月综合久久| 六月激情网| 玖玖精品婷婷| 色色婷婷色色| 超碰三级秋霞| 久久五月天黄色五月天色网址| 婷婷丁香人妻| 99热这里只有精品青草| 天天操B| 色欲色香综合网| 亚洲欧美婷婷五月色综合| 色婷婷激情| 五月激情影院| 99ri视频在线观看| 色色五月丁香婷婷| 九九热视频免费观看| 成人精品99| 五月天开心激情综合网| 狠狠色狠狠| 丁香五月社区| 色综合9| 国产中文字幕在线视频免费观看| 中文精品在| 久久只有精| 激情综合网,婷婷| 欧美色欲色欲天天天www| 日日.c| 爱久综合| 伊久大香蕉| 久99精品视频| 久久成人性爱| 婷婷社区五月天| 中文激情网| 精品影院| 亚洲天堂大香蕉| 五月开心婷婷中文字幕| 精品亚洲VA网站| 色婷婷综合网站| 农村熟妇高潮精品A片| 操97在线观看| 色噜噜狠狠色综合日日| 久色资源网| 婷婷色婷婷| 1024成人免费看| 91九色国产在线| 色天天久婷婷| 色婷婷六月天| 亚洲区在线| 久久九色| 久久色情综合免费网站| 最近韩国日本免费高清观看| 色九月婷婷丁香| 五月丁香怕怕综合| 丁香六月狠狠干| .精品久久久麻豆国产精品| 97伊人综合婷婷| 激情五月综合视频| 超碰在线观看9| 国产成人精品一区二区三区视频| 青青草tp| 热99热9| 这里只有精品视频免费在线观看| 超碰人人99| 色播五月丁香婷婷| 婷婷金品综合视频| 久九九热| 色J香五月天| 色色亚洲| 丁香五月性| 开心激情网五月| 99精品偷自拍| 99热国品免费| 综合色色网| 婷婷色色丁香| 五月婷婷人妻| 天天揷综合网| 这里只有精品视频222| 日本3级片一区2区| 懂色av蜜臀av粉嫩av永陈冠希| 五月婷无码| 99re热在线视频| 97超喷视频在线观看| 梁铮版蜘蛛女在线观看| 天天艹夜夜艹| 丁香六月啪| 五月天桃色深爱网| .comwww在线观看免费操| 亚洲爱爱无码婷婷色五月| 久操热| 五月婷婷色啪| 天天射影院| 欧美色偷偷大香| 色婷婷五月天综合网| 五月丁香婷婷色| 婷婷在线免费| 色色色9| 国内久久亭亭| 亚洲婷婷久久综合| 久久色婷婷| 欧美99视频| 伊人狠狠色婷婷综合丁香一区| 99热99热99热99热| 亚洲123区高清入口| 亚洲人妻一区二区| 五月婷婷影视| 日本激情综合| 综合网色综合| 亚洲天堂啪啪| 五月丁香色情| 欧美叉叉叉BBB网站| 综合综合色色| 国产99久久久国产精品免费看| 天天摸天天爽| 天天揷综合网| 色婷婷色五月天| 99热www| 天天日,天天插| 91碰操| 婷婷亚洲欧美丁香五月| 干一干xxxx| 色婷另类| 丁香久久| 4399啪啪视频| www.日日夜夜.com| 久热中文字幕| 91啪啪视频| 丁香无五月网| 狠狠色婷婷综合开心影视| 久热播这里只有精品| 色九九九综合| 激情婷婷久久| 激情五月伊人婷婷| 色狠狠婷婷| 六月丁香综合| 91久久久久久| 91 九色大美女| 天天网站天天爽| 五月丁香激情综合网官网| 99精品视频免费观看| 婷婷五月天中文字幕| 99色婷婷视频| 日本九九热| 大香蕉在线观看9| 九色七七| 六月婷婷狠狠| 涩五月丝袜婷婷| 黄色三级日本| 玖玖精品资源| 五月天开心色情网| 天天色情站| 日本 @ va 免费| 99精品高潮| 五月天国产| www.lingjunshare.com| 精品成人在线观看| 久久婷婷五月综合色欧美| 亚洲婷婷欧美婷婷| 激情开心五月婷婷| 欧美日韩成人在线观看| 99久久国产宗和精品1上映| 99国产这里只有精品| 色一情一乱一乱91Av| 五月天婷婷视频| 欧美色小说婷婷| 91精品又长又大又粗又爽又猛| 亚洲六月婷婷| 五月丁香六月婷婷网| 天搞天天天天天| 天堂网亚洲色图| 91啪啪视频| 五月激情婷婷播播网| 五月丁香激情综合啪啪| 成人.在线日韩| 影视av久久久噜噜噜噜噜三级| 欧洲婷婷五月天| 亚洲免费电影2| 97人人干人人操| 人人射人人高潮| av大香蕉| 婷婷丁香亚洲色综合91| 91热视频| 久久婷婷五月天| 五月丁香综合影院| 99爱精品视频| 热久久99视频| 综合色播| 黄色精品五月婷婷| 日美三级| 伊久大香蕉| 天天干天天干天天干天天干天| 天天操天天爱天天玩| 色五月丁香五月激情五月激情| 五月婷婷亚洲综合在线| 久久一级AV| 综合激情站| 91精品久久久久、久五月天| 亚洲色综久久五月| 五月激情综合婷婷| 色久婷婷五月| 97碰在线视频| 97超碰在线免费观看| 九日日夜夜69| 热久综合| 91人久| 婷婷五月天av| 99这里只有精品|v| 丁香五月激情婷婷| 久久99综合网| 九九热在线视频| 天堂AV在线看| 六月婷婷影院| 五月社区婷婷激情| 人人舔人人色人人高潮| 人人摸人人射| 久久五月丁香六月婷| 狠狠色丁香五月婷巨| 色色狼人综合| 丁香婷婷五月激情| 生活片五区| 亚洲AV第二区国产精品| 丁香婷婷色情| 秋霞日本免费毛片A片| 亚洲色五月婷婷| 五月综合激情图片| 狠狠综合久久综合| 色开心五月丁香| 色色97丁香婷婷五月天| 美国不卡视频| 99操免费视频| 91在线日| 亚洲婷婷视频| 欧美丁香六月激情视频| 久久99热精品a片在线观看| 婷婷亚洲激情在线观看视频| 人人色性网| 激情开心五月婷婷| 五月天婷爱综合| 秋霞网在线观看理论91| 亚洲综合婷婷五月天| 五月丁花色综合网| 五五月五月| 婷婷丁香在线播放| 能看的AV| 91精品久久久久久综合五月天| 无码激情| 青草青草视频2免费观看| 亚州美女| 六月婷婷操逼| 香蕉久久国产av一区二区| 丁香五月玖玖| 久久色五月| 国产精品成人AV在线| 久热欧美| 超黄亚洲瑟瑟网站| 色播丁香婷婷五月激情| 久色资源| 综合网色| 丁香五月五月婷婷欧美大香蕉| 激情九月婷婷九月| 色 五月 天 婷婷 丁香 九月| 日本一毛片| 人人爽天天莫| 五月丁香欧美综合免费视频| 日日杆天天| 97人人干人人操| 日本色婷婷| 婷婷中文字幕网站| 97色97干| 久久视频婷婷视频| 六月丁香VA| 欧美六月| 99久久婷婷精品视频| 91窝窝| 天天看A片| 插插干干干色| 欧美在线97| 99在线精品免费视频| 激情性爱婷婷| 噜噜色五月| 久久机热思思热| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 99热只有精品综合| 99久久精品视频女神1| 97香蕉久久超级碰碰高清版 | 婷婷激情五月天激情| 日韩黄黄| 奇米影视在线视频| 激情婷婷五月女| 五月丁香六月婷婷在线观看| 五月天激情小说网| 人妻中文字幕网| 五月色婷婷综合色| 五月婷婷激情| 日韩在线看AV| 欧美日韩99| 综合色五月| 超碰在线91| 91日韩美女被插视频| 五月天亚洲最大成人| 激情综合五月婷婷丁香| 老美AA片| 九九色中文| 婷婷激情五月天小说校园| 五月色婷婷综合| 在线亚洲综合| 国产va在线视频| 激情綜合網址| 精品久9| 99热这里只有精品在线免费| 五月天伊人综合| 婷婷视频在线碰| 婷婷五月激情四月综合| 九九大香视频| 色色色五月| 五月婷婷久久综合| 天天天天天天操| 播丁香五月婷婷欧美| 婷婷 久综合| 色五月成人| 骚逼视频一区2区| 这里只有精品视频在线观看免费| 五月婷婷欧美| 婷婷七月丁香色色| 色五月第四色| 青吴乐视频| 激情综合五月婷| 欧美综合五月丁香六月婷| 色爆五月| 伊人国产婷婷五月天 | 九九精品9| 婷婷开心深爱五月天| 欧美色色色色色| 九九热在线99| 高清无码入口| 五月花激情网| www.日日夜夜.com| www.色色com| 人人人人人人人草| 极骚大香蕉伊人| 影音先锋 婷婷| 99精品偷自拍| 少妇婷婷五月天| 色五月天丁香| 欧亚色色| 丁香五月激情五月| 五月丁香六月婷婷精品| 人妻久久久久久| 九九热超碰| 97色碰| 色99网| 婷婷九月综合| 香蕉伊人综合| 91美女被操| 五月久久婷婷| 亚洲a色| 丁香五月激情宗合| 九九黄色网| 五月婷婷六月丁香激情深爱| 91超碰人人操| 六月五月久久丁香| 色婷婷久久| www亚洲无码| 99视频久久| 99啪在线| 丁香五月婷婷激情网| 殴美日比视频| 五月丁香综合激情| 婷婷六月插屄激情| 人人操超碰| 无码99| 99精品一二三四视频| www.精品99| 入口五月婷婷六月香| 婷婷色婷婷| 玖操97| 伊人超碰在线| 欧美在线视频免费播放| 五月天激日本色情在线| 综合久久十三| 日本狠狠干| 色色色99| 亚洲精品白浆高清久久久久久| 2w在线视频| 综合精品啪啪| 色综合丁香| 五月天婷婷丁香视频| 一起草日本| 婷婷五月天久久| 丁香花色色网| caop视频| 99久久玖玖| 午夜理论片最新午夜理论剧| 色图亚洲91| 婷婷情色五月天| 色婷婷基地在线| 色色色激情网| 丁香五月综合婷婷| 人妻videos人妻高清| 免费观看日韩成人av| 五月婷色| 九九爱激情| 99热大全在线观看| Av在线资源| 996热| 噜噜噜精品欧美成人在线观看| 97日在线视频| 国精产品一区一区三区免费视频 | 色吧综合网| 91se视频| 婷婷五月亚洲综合| 五月丁香花激情综合网| 怡红院 久久| 九一牛视频探花| 人人摸人人摸| 五月丁香激情综合啪啪| 九九在线免费观看| 7超碰自拍| 久久这里只有精品视频15| 日韩操人| 色五月天综合网| 婷婷五月激情六月丁香 | 99re在线精品视频| 665566 无码| 999热这里只有精品| 亚洲综合色色色| 五月人人丁香婷婷五月人人丁香| 丁香五婷婷| 色和综合网| 色99视频| 婷婷在线精品| 久久五月天综合| 亚洲激情电影五月天色婷婷丁香一起草| 亚洲性视频| 精品日本视频444| 天天天天干| 色色99| 五月丁香狠狠| 久久综合伊人综合在线| 六月色伊人婷婷| 色碰碰| 超色欲天天| 青吴乐视频| 99久久国产宗和精品1上映| 99色干| 色五月天成人| 丁香色婷婷| 婷婷五月久久| 狠狠干总合| 婷婷五月激情的图片| 五月丁香啪啪综合网| AVV黄| 丁香九月色| 久在线88综合| 日本丁香五月| 99操| 久久激情网| 98永久精品| 爱草人视频| 亚洲天堂aaa| 思思热再线视频| 色人五月婷婷| 26UUU在线观看| 美女婷婷六月色| 五月天婷婷三级黄| 婷婷久久午夜网| 久久久婷| 丁香五月色| 性一交一乱一交A片久久四色| 一月婷婷色色| 婷婷久久久| 久草大| AA丁香综合激情| 99自拍视频在线| 大香蕉520| 久久9久| 五月婷久久| 久久9视频| 久久免费精品小视频| 色色色色五月天| 国产成人网址| 人人亚洲| 激情5月婷婷狠狠干| 5月婷婷6月丁香aV| 五月婷婷久草在线视频综合| 激情久久综合网| 五月婷婷啪啪啪啪| 美女天天爽| 五月天亭亭俺也| 丁香五月最新地址| 秋霞性爱AV| 99re思思久久| 尤物一区二区| 奇米四色五月天| 天堂网啪啪| 激情六月丁香| 久久久妻人人人| 婷婷区日本| 99国产小视频| 亚洲无线视频| 人人草人人舔| 狠狠爱深色婷婷综合| 九九热内射| 五月天停停日日| 无码啪啪| 亚洲激情丁香五月基地| 久久国产色| 欧美在线操| www色婷婷| 欧美性猛交99久久久久99按摩| 7777国产盗摄农村女人| 大香蕉在线观看9| 99在线资源| 婷婷色日本| 99热6精品| 少妇高潮一区二区三区99欧美| 97干在线视频| 亲子乱AV-区二区三区| 一起肏在线视频| 日日干五月天婷婷| 色婷婷4| 超碰国产AV| 丁香五月激情综合| 丁香深五月婷婷| 99九九在线观看免费| 丁香六月婷婷综合激情欧美| 婷婷瑟五月天久久综合| 五月天激情国产综合婷婷| 中文字幕在线播放视频| 欧美三9久九观看| 99在线视频女女视频| 亭亭玉立国色天香| 色综合久久88色综合天天| 五月婷婷之综合激情| 嫩草免费视频| 色九网| 激情小说之五月| 久热AA| 色婷婷性爱网| 久久九九亚洲| 国产精品噜噜在线视频| 99热国产免费| 被强行糟蹋的女人A片| 艹天天射| 丁香五月婷婷88在线| 色婷婷激情四射视频| 成人αV视频免费观看| 色噜噜五月天| 色婷婷丁香五月高清在线| 可以直接看的AV网站| 久久九九爽| 综合另类激情| 午夜丁香婷婷| 3www激情| 亚洲色婷婷| 久久AAAA片一区二区| 丁香五月婷婷激情蜜桃| 色婷婷婷av| 综合网啪| 97碰碰九九视频| 天天想夜夜爽天天爽| www.五月丁香| ai97re99一本| 色亚洲中文| 另类图片色五月| 激情五月天色色色| 婷婷丁香五月天色区| 丁香五月人妻| 丁香五月最新地址| 激情伊人五月天| 亚洲深喉AV| 久久丁香婷婷五月天| 欧美日韩成人在线网站| 国产亚洲色婷婷久久99精品9j| 91操操操| 日韩婷婷| 婷婷亚洲影院| 色婷婷免费视频| 国产精品第一国产精品| 77799热| 色婷婷狠狠| 欧美99视频| 婷婷丁香18| 99情色五月天| 看婷婷五月天网| 婷婷色在线| 2021日韩无码| 99er精品视频| 欧美日韩成人h| 天天做 天天爱| 成人做爰A片免费看视频| 人人亚洲| 六月婷婷五月丁香| 色色色激情| 九九99九九99九九99视频网| 日韩 中文 欧美| 99这里只有| 久久六月综合| 激情五月丁香六月| 亚洲精品第一国产综合亚AV | Av在线不卡一区| 五月婷婷深爱六月| 五月天电影网| www·五月天| 最新高清无码专区| 在线综合婷婷| 久久婷婷五月天大香蕉| 狠狠色综合网站| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 综久久久| www.五月天| 伊人玖玖网| 991精品在线视频| 五月天丁香成人社| 色五月五月婷婷| 九九热re99re6在线精品| 午夜成人网站在线观看| 亚洲成人AV在线观看| 久久综合爱| 色婷婷久久综合中文久久一本| 久99热| 久久九九免费视频| 色婷婷综合五月| 久久性爱网| 五月天久久综合婷婷丁香| 亚洲综合欧美色丁香婷婷888月图片| 丁香五月天AV| 色色色婷婷五月天| av狠狠操| 亚洲 激情 中文| 久久丁香综合香蕉| 强伦轩人妻一区二区电影| 五月天操逼网| 久久99网| 日韩六十路91性交电影| 99视频综合网| www.99成人视频| 9久热在线视频精品| 99re8这里只有精品99re8热视频| 婷婷丁香色五月天久久88| 午夜不卡久久精品无码免费| 草逼大片| 五月天婷婷丁香人人操91| 爆乳熟妇一区二区三区爆乳照片| 亚洲综合字幕色色| 少妇性BBB搡BBB爽爽爽视頻| 婷婷五月激情在线| 免费AV在线| 国产 码在线成人网站| www,婷婷五月天,com| 日韩五月婷婷| 开心激情网五月天| 久热中文字幕在线线观看| 九九热在线99| 五月婷丁香| 婷婷六月五月天综合| 另类图片激情五月| 国产精品国产成人国产三级| 色婷婷深爱五月| www.五月天色色色| 色情综合| 亚洲第一第二网站| 欧美内射AA| 久久综合66| 亚洲天堂久久| 久久丁香五月婷婷| 婷婷操久久| 亚洲亚洲人成综合网络| 狠狠色婷婷六月激情网| 久久五月综合| 丁香五月婷婷国产在线| 亚洲综合九九| 天天色官网| 1234操逼网| 青青草免费公开视频| 中文av网| 五月丁香激情综合网官网| 无码A片一区二区免费| 五月婷婷天堂| 婷婷五月天欧美图片在线播放电驴| 26UUU欧美激情一区二区| 超pen个人视频97| 久婷婷色| 天天操夜夜玩!| 日韩操人| 中文字幕天天干| 67194国产| 久热这里只有| 夜夜噜夜夜奇| 五月婷婷干干干| 99日视频在线| 国产又色又爽又黄又免费| 狼人婷婷久久| 久久aaa| 人妻精品在线| wwww.色婷婷| 夜夜穞天天穞狠狠穞AV美女按摩| 超碰在线超碰| 丁香五月婷婷啪| 性视频久久| 色婷婷五月丁香色| 成人精品视频99在线观看免费| 麻豆雪千夏| 久热精品视频| 日日想日日夜日日操| 久热伊人9| 日本女色人人| 欧美激情五月天| 97九色视频| 激情五月丁香六月综合AVXXXX| 亚洲综合99| 综合性爱网| 久久一伦| 天堂美国久久| 国产乱人偷精品人妻A片| 成功精品影院| 日本色天堂| 人人草人人看| 九九热这里只有精品在线观看| 丁香婷婷五月六月天| 成人五月天色天堂| 色情综合| 人妻久久婷婷| 日本一级特黄大片AAAAA级| 性色综合网| www.ywav| 五月婷婷啪啪啪啪| 黄色国久久| 中文字幕丰满孑伦无码专区| 五月丁香成人网| a在线观看| 99综合自拍| 婷婷99狠狠| 色色亚洲五月天| 色色网五月激情| 婷婷五月六月丁香综合| 五月花丁香婷婷| 欧美日本一区二区三区| 亚洲人人干| 日日爽日日操| 丁香五月色色| 人人人操Av| 国产中文亚洲欧美日韩性交| 国产99热| 青青.com| 丁香婷婷免费| 热的国产,热的综合,热的有码 | 99热66| 少妇AB又爽又紧无码网站| 夜夜穞天天穞狠狠穞AV美女按摩| 9久久精品| 五月丁香色综合| 无码 av电影| 三级av在线| 久9热视频在线| 最新婷婷五月丁香| 欧美超碰人人| 噜噜色五月| 激情五月综合网最新| 狠狠色狠狠| 开心丁五月| 操逼福利视频| 互月天综合| 亚洲成人在线五月天| 激情黄色小说五月天| 激情五月丁香六月| 综合婷婷五月天| 外国碰视频网站97| 狠狠色丁香| 成人综合网站| 九九99精品视品| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 久久这里只有精品8| 超碰在线99| 一级AV片| 五月婷婷9| 9月色婷婷| 9久热| 五月在线婷色| 婷婷激情欧美| 五月天亭亭俺也| 97视频91| 色九月婷婷丁香| 在线99热| 国产免费一区二区三州老师F1……| 玖玖玖婷婷婷| 婷婷五月天堂| 五月天自拍视频| 79精品视频在线观看,| 免费啪啪亚州视频| 丁香网站| 丁香五月久久社区| 97色片| 国际国外精品欧洲南美洲专区无码不卡| 五月婷婷 激情五月| 亚洲av成人在线| 激情丁香五月| 五月天另类图片区99| 丁香婷婷六月激情文学| 色婷五月天网站| 午夜婷婷久久| 亚洲亚洲人成综合网络| 五月天久草| 99re6热在线精品视频播放速度| 怡红院 久久| 五月婷婷色激情| 日本九九九九| 丁香香蕉射射射| 色久女| 狠狠操.COM| 99福利导航| 国产毛片精品一区二区色欲黄A片| 日本精品九九九| 五月丁香亭亭成人电影| 五月丁香综合激情网| 五月丁香婷婷基地| 密视AV综合在线| 去干网av| 丁香六月欧美| 国产成人+综合亚洲+天堂| 久热A片| www.婷婷| 亚洲色亚洲精品| 九九婷婷网五月天| 丁香婷婷久久综合在线| 天天爽—爽| 色偷偷色婷婷| 激情五月婷婷老师| 欧亚色色| 99无码视频| 超碰免费人| www.色婷婷| 97色色网| 色色色九九九五月婷婷| 五月丁香综合啪啪| 五月丁香婷婷综合网| 日韩成人无码| 五月婷在线影院| 五月婷婷真爱激情网| 欧美电影在线播放| 五月丁香花视频| 免费不卡狠操美女视频网| www.狠狠| 婷婷激情性爱| 国产精品久久久久久五月天加勒比| 日本九九九九| 玖玖婷婷婷丁香五月| 俺去也在线www色官网| 五月丁香在线| 狠狠色噜噜狠狠狠狠综合| 日屌日日操日日色| 丁香狠狠干| 另类五月婷婷| 亚洲精品成人| 秋霞AV淫| 婷婷六月啪啪| 天天插操| 精品成人无码A片观看香草视频| 中文av网站| 五月丁香亭亭操逼| 开心五月婷婷| 日韩久操婷婷| 我要看激情五月天| 五月丁香| 337p大胆噜噜噜噜噜91Av| 99在线精品视频| ..真实国产乱子伦毛片 | 4399在线观看免费高清黄色视频| 五月婷婷久| 这里只有精品96| 《》【无码】想被搞到爽AV应募而来的超M素人 西纯子 10musume-011723-01 | 婷婷五月天开心网| 久久狠狠色| 五月天婷婷色| 操人91| 五月天播播| 丁香五月婷婷五月基地| 婷婷五月天色网久| 亚洲天堂热| 人人亚洲| 丁香六月婷婷| 九九精品热| 丁香五月手机在线| 9+1视频网址| 久久婷婷六月综合| 狠狠舔| 激情图片五月天| 午夜丁香| 丁香六月婷婷综合| 4399在线观看免费高清电视剧| 九九热最新地址| 婷婷丁香成人五月天| 丁香婷婷色九月| 国产操B视频| 可以看的AV| 婷婷五月丁香花综合| 色婷婷69| 97成人在线视频精品| 久久婷婷五月天激情四射| 97色啪| 五月激情网站| 婷婷成人综合| 综合色播| 色播五月天天| 1024人妻无码中文字幕| 99热这里只有精品18| 一级黄在线| www99热| 四月婷婷五月丁香| 婷色五月天| 久久99这里| 国产偷人爽久久久久久老妇APP| 婷婷精品在线| 97碰碰人人视频| 久草狼人| 色哟哟性爱av| 日韩无码色色| oumeisesewang| 超碰在线免费观看日韩| 亚洲热热视频| 五月丁香亭亭操逼| 夜夜谢天天干| 亚洲色vA| 蜜乳人妻一区二区三区| 九九久久精品| 婷婷激情五月天在线视频| 欧美色男人网站| 亚洲国产99| 99人人干| 强辱丰满人妻HD中文字幕| 丁香五月激情五月开心五月| 五月天婷婷激情网| 在线色色| 久久婷婷欧美| 色 五月 天 婷婷 丁香 九月| 欧美精产国品一二三区| 丁香狠狠| 丁J香六月首页| 婷婷综合成人| 久久国产精品乱子伦_靑青草…| 欧美色激情四射| 岛国AV网站| 色色婷婷五月天| 成人在线二区| 久久婷婷五月综合啪| 久久婷婷成人视频| 99日热在线视频| 日本人妻A片成人免费看片| 天天摸天天舔天天爽| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 99热成人精品网站|