91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

詳解數字設計中的時鐘與約束

汽車電子技術 ? 來源:IC_learner ? 作者:IC_learner ? 2023-01-28 07:53 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

數字設計中的時鐘與約束

本文作者 IClearner 在此特別鳴謝

最近做完了synopsys的DC workshop,涉及到時鐘的建模/約束,這里就來聊聊數字中的時鐘(與建模)吧。主要內容如下所示:

·同步電路與異步電路;

·時鐘/時鐘樹的屬性:偏移(skew)與時鐘的抖動(jitter)、延時(latency)、轉換(transition)時間;

·內部時鐘;

·多路復用時鐘;

·門控時鐘;

·行波時鐘;

·雙沿時鐘;

·Design Compiler中的時鐘約束。

·補充:時鐘分配策略

1、同步電路與異步電路

首先來談談同步電路與異步電路。那么首先就要知道什么是同步電路、什么是異步電路?

對于同步時序電路,不同的文章有不同的說法,大致有下面的定義方法:

①對于比較嚴格的定義:一個電路是同步電路,需要滿足一下條件:

·每一個電路元件是寄存器或者是組合電路;

·至少有一個電路元件是是寄存器;

·所有寄存器都接收同一個時鐘電路;

·若有環路,則環路至少包含一個寄存器。

在上面的嚴格定義下,可以得到下面的電路不是同步電路:

:是組合邏輯,不符合定義;:是組合邏輯和鎖存器,不符合定義;

下面的形式肯定是同步電路:

:寄存器的時鐘都是CLK

下面的電路嚴格上說不算是同步電路:

:因為右邊的時鐘經過兩個反相器的延時,時鐘信號不同了。

②對于不算很嚴格的同步電路定義有:

·所有時鐘的時鐘來自同一個時鐘源:比如下面的(分頻)電路

CLKA、CLKC、CLKD、CLKE都是由300M這個時鐘源分頻而來,因此這個系統屬于同步電路系統。

·當不是來自同一個時鐘源時,只要CLOCK的周期有倍數關系并且相互之間的相位關系是固定的就可以算是同步電路,比如, 電路中用了10ns, 5ns,

2.5ns

三個時鐘,這三個時鐘不是由同一個時鐘源分頻來的,但是這三個時鐘的周期有倍數關系并且相位關系固定:10ns是5ns的2倍,是2.5ns的兩倍,之間是整數倍關系;相位關系是固定的,因此也算是同步電路。

CLOCK之間沒有倍數關系或者相互之間的相位關系不是固定的,比如電路中用5ns, 3ns

兩個CLOCK,這兩個時鐘不是來自同一個時鐘源,兩者之間沒有周期關系,因此是異步電路。

關于是不是同步時鐘的問題,還要具體情況具體分析,在后面的垮時鐘域也會涉及有關同步時鐘的問題,這里就不再繼續闡述了,以免越解釋越麻煩。

此外也有的資料顯示:同步電路是由時序電路(寄存器和各種觸發器)和組合邏輯電路構成的電路。同步時序邏輯電路的特點是各觸發器的時鐘端全部連接在一起,并接在系統時鐘端,只有當時鐘脈沖到來時,電路的狀態才能改變。改變后的狀態將一直保持到下一個時鐘脈沖的到來,此時無論外部輸入

x 有無變化,狀態表中的每個狀態都是穩定的。

2、時鐘/時鐘樹的屬性

一般的時鐘,我們都指的是全局時鐘,全局時鐘在芯片中的體現形式是時鐘樹。

時鐘樹,是個由許多緩沖單元(buffer cell)平衡搭建的時鐘網狀結構,如下圖所示:

首先不得不說,實際的時鐘除了周期/頻率、相位、沿、電平屬性外,還有其他的屬性,也就是:不是下面這樣子規規整整的:

為什么呢?那是因為時鐘有下面的屬性(“實際的buff”):

①時鐘的偏移(skew):時鐘分支信號在到達寄存器的時鐘端口過程中,都存在有線網等延時,由于延時,到達寄存器時鐘端口的時鐘信號存在有相位差,也就是不能保證每一個沿都對齊,這種差異稱為時鐘偏移(clock

skew),也叫時鐘偏斜。時鐘的偏移如下圖所示:

              

此外,時鐘skew與時鐘頻率并沒有直接關系,skew與時鐘線的長度及被時鐘線驅動的時序單元的負載電容、個數有關。

②時鐘抖動(jitter):相對于理想時鐘沿實際時鐘存在不隨時間積累的、時而超前、時而滯后的偏移稱為時鐘抖動,簡稱抖動,如下圖所示:

時鐘的抖動可以分為隨機抖動(Random Jitter,簡稱Rj)和固有抖動(Deterministic jitter):

·隨機抖動的來源為熱噪聲、Shot Noise和Flick

Noise,與電子器件和半導體器件的電子和空穴特性有關,比如ECL工藝的PLL比TTL和CMOS工藝的PLL有更小的隨機抖動;

·固定抖動的來源為:開關電源噪聲、串擾、電磁干擾等等,與電路的設計有關,可以通過優化設計來改善,比如選擇合適的電源濾波方案、合理的PCB布局和布線。

也就是說:jitter與時鐘頻率無直接關系。

時鐘的偏移和時鐘的抖動都影響著時鐘網絡分枝的延遲差異(相位差異),在Design

Compiler里面,我們用時鐘的不確定性(uncertainty)來表示這兩種情況的影響。

③時鐘的轉換時間(transition)

:時鐘的上升沿跳變到下降沿或者時鐘下降沿跳變到上升沿的時間,這個時間并不是如左下圖所示那樣完全沒有跳變時鐘的,而是像右下圖那樣,時鐘沿的跳變時間就是時鐘的轉換時間(后面約束的時候會有相關的解釋)。

理想:            帶轉換時間的時鐘:

時鐘的轉換時間與與單元的延時時間(也就是器件特性)還有電容負載有關。

④時鐘的延時(latency) :時鐘從時鐘源(比如說晶振)出發到達觸發器時鐘端口的延時,稱為時鐘的延時,包含時鐘源延遲(source

latency)和時鐘網絡的延遲(network latency),如下圖所示:

時鐘源延遲(clock source latency),也稱為插入延遲(insertion

delay),是時鐘信號從其實際時鐘原點到設計中時鐘定義點(時鐘的輸入引腳)的傳輸時間,上圖是3ns。

時鐘網絡的延遲( clock network

latency)是時鐘信號從其定義的點(端口或引腳)到寄存器時鐘引腳的傳輸,經過緩沖器和連線產生的延遲(latency),上圖是1ns。

OK,時鐘的附加的buff屬性差不多就是這樣了。

3、內部時鐘

記得我剛剛學習FPGA的時候,在verilog代碼中,經常使用內部產生的時鐘,也就是用內部的一個信號充當另外一個always塊的時鐘沿敏感列表,如下圖所示:

實際上,這種內部時鐘不建議使用,一個是因為產生內部時鐘的邏輯是有延時的,導致A_clk產生也會延時,Data與A_clk會有延時,就會有亞穩態的穩壓;另外一個就是由觸發器生成A_clk的驅動能力問題。

4、多路復用時鐘

在一個系統里面,很有可能會用到多個時鐘輪流驅動一些觸發器,為了適應不同的數據速率要求,進行時鐘切換。有時為了節約功耗,也會把高速時鐘切換到低速時鐘,或者進行時鐘休眠操作,多路時鐘如下圖所示:

這樣的時鐘一般情況下也會導致一些問題,比如時鐘切換時導致后面驅動的寄存器建立時間不足,當滿足一定的條件時,這種多路復用器的時鐘也是可以使用的,要滿足的要求有:

·時鐘復用電路一旦上電工作之后,就不要對復用邏輯進行更改,以免更改之后產生不確定錯誤。

·在測試的時候,設計電路繞過時鐘多路邏輯來選擇普通的時鐘,也就是使用普通的時鐘進行測試。

·在時鐘進行切換的時候,寄存器要處于復位的狀態,以免在切換之后建立時間不夠而進入亞穩態。

·在時鐘切換的時候,可能會產生一些短暫的錯誤,但是這些錯誤對整個系統沒有影響。

對于系統要求非常嚴格的,比如時鐘切換很頻繁,有不能夠在復位的時候切換,而且也不允許有短暫的錯誤,那么時鐘就不能這樣子進行切換了,就要使用其他的時鐘切換方案或者進行時鐘同步了。至于多時鐘切換的方案,以后有時間再學習補充。

5、門控時鐘

門控時鐘可是低功耗設計的寵兒,關于門控時鐘的資料也有一大堆,下面就來寫寫門控時鐘吧。

門控時鐘也就是在使能信號有效的時候,把時鐘打開;使能信號無效的時候,時鐘關閉。時鐘關閉之后,它所驅動的寄存器就不會反正,因此也就降低了動態功耗。

門控時鐘最開始的電路是:

這種門控時鐘bug多,我們先來看看這種電路的bug波形是怎么樣的,也就是知道問題所在,好讓我們改進:

從波形圖中可以看到,門控使能信號如果在時鐘的高電平的時候開啟或者關閉,就會導致產生的門控時鐘高電平被截斷,變成毛刺;門控使能信號對在時鐘低電平時跳變對產生的門控時鐘沒有影響。因此我們的針對點就是高電平時的翻轉。

因此我們就可以通過設置一種電路,讓門控使能信號在通過這個邏輯電路之后,僅僅在時鐘低電平的時候進行翻轉,而在時鐘高電平的時候,不能翻轉也就是保持。從而我們就想到了低電平觸發的鎖存器,使能信號通過低電平的鎖存器之后,如果使能信號在高電平跳變,鎖存器的輸出信號是不會改變的,電路圖如下所示:

波形如下所示:

這里需要注意的是:

當門控使能信號是高電平有效的時候,也就是高電平打開門控時鐘,低電平關閉門控時鐘,那么就使用上面的電路,也就是:低電平觸發的鎖存器+與門。

當門控使能信號是低電平有效的時候,那么就要換成:高電平觸發的鎖存器+或門。

PS:當涉及毛刺的問題的時候,特別是由于使能信號與時鐘而產生的毛刺,鎖存器起很大的作用。

一般情況,在進行芯片設計的時候,我們不必自己設計門控時鐘,大多是ASIC/SoC生產商都有對應的門控時鐘單元。

6、行波時鐘

行波時鐘,也就是一個觸發器的輸出用作另一個觸發器的時鐘輸入,經常用在異步計數器和分頻電路設計中,如下圖所示:

異步計數器/分頻時鐘雖然原理簡單、設計方便,但級連時鐘(行波時鐘)最容易造成時鐘偏差,級數多了,很可能會影響其控制的觸發器的建立時間和保持時間,使設計難度加大;轉換的方法是采用同步計數器。

7、雙邊沿時鐘

雙邊沿時鐘的系統是指在時鐘的上升沿和下降沿都進行數據傳輸:

很顯然,這樣子數據的傳輸速率就增加一倍了。DDR就是采用雙邊沿傳輸數據的技術,傳輸示意圖如下所示:

然而一般情況下,我們不建議使用雙邊沿時鐘,這是因為:

·由于上下沿都用,要求時鐘的質量很高,一般的時鐘源很難達到,成本高。

·由于時鐘的抖動等不確定因素的存在,容易使時鐘的占空比發生改變,因此容易引起建立時間和保持時間的違規。

·當使用的雙沿時鐘之后,時鐘的約束變得復雜,此外當某處發生違規之后,違規的路徑的查找難度比單沿時鐘大。

·還有一點就是測試難度比較大,雙沿電路的測試電路必定有別與單沿的測試電路。進行掃描測試時,上下沿的時鐘先都得插入多路復用器進行選擇。

8、Design Compiler中的時鐘約束

對實際的時鐘進行建模/約束了,實際上就是對這幾個屬性進行設置,下面講解在Design Compiler中怎么進行約束。

在默認的情況下,邏輯綜合時,即使一個時鐘要驅動很多寄存器,DC也不會在時鐘的連線上加時鐘緩沖器(clock

buffer)以加強驅動能力,時鐘輸輸入端直接連接到所有寄存器的時鐘引腳,也就是說,對于高扇出(high

fanout)的時鐘連線,DC不會對它做設計規則的檢查和優化,如下左圖所示。在時鐘連線上加上時鐘緩沖器或作時鐘樹的綜合(clock tree

synthesis)一般由后端(back

end)工具完成,后端工具根據整個設計的物理布局(placement)數據,進行時鐘樹的綜合。加入時鐘緩沖器后,使整個時鐘樹滿足skew,

latency和transition的目標。時鐘樹綜合后的電路如右下圖所示。

               

左上圖的時鐘網絡是理想的,其延遲(latency)和時鐘的偏差(skew)及轉變時間(transition)默認值為零。顯然,理想時鐘網絡與實際的情況不同,使用理想時鐘網絡將產生過于樂觀的時間結果。為了能在綜合時比較準確地描述時鐘樹,我們需要為實際的時鐘樹建模,使邏輯綜合的結果能與版圖(layout)的結果相匹配。

好吧,上面都不是重點,下面才是內容:

我們用下面的命令建立時鐘那幾個屬性模型:

create_cloclk、set_clock_uncertainty、set_clock_latency、set_clock_transition分別進行時鐘的周期、偏移、延時、轉換約束:

時鐘偏差的建模:

set_clock_uncertainty:對時鐘的偏移和抖動進行建模,也就是對時鐘的偏差進行建模,具體使用為:

假設時鐘周期為10ns,時鐘的建立偏差為0. 5ns,用下面命令來定義進行約束:

create_clock -period 10 [get_ports CLK]

set_ clock_ uncertainty -setup 0.5 [get_clocks CLK]

理想的時鐘:

只對建立時間的偏差時鐘建模:

如果對建立時間和保持時間都進行偏差建模,則有:

在默認的情況下,“set-clock_uncertainty”命令如果不加開關選項“-setup”或“-hold”,那么該命令給時鐘賦予相同的建立和保持偏差值。

這是一種對偏差建模的方式,也就是對建立時間和保持時間進行建模的方式;除此之外,還可以對時鐘的上升沿和下降沿進行偏差建模,比如上升沿的偏差是0.2ns,下降沿的偏差是0.5ns,則有:

set_ clock_ uncertainty -rise 0.2 -fall 0.5 [get_clocks CLK]

一般情況下,我們只約束建立時間,也就是只用第一種方式進行時鐘偏差建模。

當對建立時間偏差建模之后,這時,時鐘周期、時鐘偏差和建立時間的關系如下圖所示:

假設時鐘周期是10ns,建立時間偏差是0.5ns,觸發器的建立時間是0.2ns,這時候從圖中就可以看到,留給寄存器間的路徑的裕量就減少了,也就是說,對寄存器間的約束就變得更加嚴格了,寄存器的翻轉延時、組合邏輯延時與線網延時等這些延時的和必須小于9.3ns,否則就違反了FF2的建立時間。這一點是要注意的。

對于保持時間,在未考慮時鐘偏移之前,前面說了,組合邏輯的延時要大于觸發器的保持時間(具體原因參考前面的描述),當對時鐘偏差建模之后,這時,時鐘周期、時鐘偏差和保持時間的時序關系如下所示:

時鐘轉換時間的建模:

由于時鐘并不是理想的方波,用set_ clock_

transition來模擬時鐘的轉換(transition)時間。默認的上升轉換時間為從電壓的20%上升至80%的時間,下降的轉換時間為從電壓的80%下降至20%的時間。如果set_clock_transition命令中不加開關選項“-setup”或“-hold“

,那么該命令給時鐘賦予相同的上升和下降轉換時間。一般情況下,我們只約束最大的轉換時間,如最大轉換時間是0.2ns,那么就加上-max選項:

set_clock_transition -max 0.2 [get_clocks CLK]

時鐘延遲的建模:

時鐘從時鐘源(比如說晶振)出發到達觸發器時鐘端口的延時,稱為時鐘的延時,包含時鐘源延遲(source latency)和時鐘網絡的延遲(network

latency)。我們使用set_clock_latency進行時鐘延時的建模。一般情況下,我們把時鐘源延遲(source

latency)和時鐘網絡的延遲(network

latency)分開來,因為時鐘源延時需要建模,是因為DC是真的不知道這延時是多大,但是對于時鐘網絡的延遲,DC在布局布線前不知道,但是在布局布線后就可以計算出來時鐘網絡的延時了,因此在布局布線之后進行綜合時,就沒有必要對時鐘網絡進行延時,因此就要把這兩個延時分開來進行約束。

先說布局布線之前:時鐘周期為10ns,時鐘源到芯片的時鐘端口時間是3ns,時鐘端口都內部觸發器的時間是1ns,如下圖所示,

那么就用下面的命令進行建模:

create_clock -period 10 [get-ports CLK]

set_clock_latency -source 3 [get_clocks CLK]

set_clock_latency 1 [get_clocks CLK]

通常情況下,我們約束最大的延時,也就是加上-max的選項,表示最大延時是多少(如set_clock_latency -source -max 3

[get_clocks CLK] 就是時鐘源到芯片時鐘端口最大的時間是3ns)。

布局布線之后:就可以計算實際的線網延時,就要使用

set_propagated_clock [ get_clocks CLK] 這個命令代替上面的

set_clock_latency 1 [get_clocks CLK]這個命令。

基本的時鐘建模就OK了,下面進行總結并給出我們這個例子中使用的約束腳本,理想時鐘和實際時鐘的對比,如下圖所示:

因此總結就是,對實際時鐘的建模/約束如下所示:

                 

補充1:時鐘分配策略

時鐘的分頻從規劃初始就應該考慮,也就是從系統層面上去考慮,而不是等到后端設計時再考慮。時鐘分配策略考慮因素有:

系統的時鐘分配計劃(主要是時鐘樹方案、各個模塊的時鐘頻率等);

時鐘的最小延時(主要是根據系統運行的速度來定義最小的延時要求,這個與時鐘分配計劃應該是有重疊的地方,具體我不是很了解);

時鐘緩沖(這個是考慮負載的問題,往往也是在設計時鐘樹時應該考慮的問題);

消除時鐘偏移(時鐘偏移總是存在的,如何降到最小或使其達到預期的效果,也是要考慮的);

門控時鐘、軟硬件協同設計等省電模式的考慮(這個需要具體問題具體分析了,還可以從低功耗設計的角度進行觀察)。

附注:

本文的參考文獻有:

Design Compiler 1 ,synopsys workshop

專用集成電路設計實用教程,虞希清

數字設計和計算機體系結構,(美)DavidMoneyHarris等

The art of Hardware Architecture ,Mohit Aroa

IC設計基礎,西安電子科技大學出版社

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1646

    文章

    22054

    瀏覽量

    618813
  • 時鐘
    +關注

    關注

    11

    文章

    1902

    瀏覽量

    133261
  • 數字設計
    +關注

    關注

    0

    文章

    47

    瀏覽量

    22565
  • 同步電路
    +關注

    關注

    1

    文章

    60

    瀏覽量

    13543
  • 異步電路
    +關注

    關注

    2

    文章

    48

    瀏覽量

    11358
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    FPGA時序案例分析之時鐘周期約束

    時鐘周期約束,顧名思義,就是我們對時鐘的周期進行約束,這個約束是我們用的最多的約束了,也是最重要
    的頭像 發表于 11-19 11:44 ?6021次閱讀
    FPGA時序案例分析之<b class='flag-5'>時鐘</b>周期<b class='flag-5'>約束</b>

    數字設計之時鐘約束時鐘類型介紹

    1. 時鐘介紹 在數字設計時鐘代表從寄存器(register)到寄存器可靠傳輸數據的時間基準。Xilinx Vivado集成設計環境(IDE)時序引擎使用ClocK特征計算時序路徑
    的頭像 發表于 11-29 10:51 ?8072次閱讀
    <b class='flag-5'>數字</b>設計之<b class='flag-5'>時鐘</b><b class='flag-5'>約束</b>和<b class='flag-5'>時鐘</b>類型介紹

    FPGA主時鐘約束詳解 Vivado添加時序約束方法

    在FPGA設計,時序約束的設置對于電路性能和可靠性都至關重要。在上一篇的文章,已經詳細介紹了FPGA時序約束的基礎知識。
    發表于 06-06 18:27 ?1.2w次閱讀
    FPGA主<b class='flag-5'>時鐘</b><b class='flag-5'>約束</b><b class='flag-5'>詳解</b> Vivado添加時序<b class='flag-5'>約束</b>方法

    FPGA時序約束之衍生時鐘約束時鐘分組約束

    在FPGA設計,時序約束對于電路性能和可靠性非常重要。在上一篇的文章,已經詳細介紹了FPGA時序約束的主時鐘
    發表于 06-12 17:29 ?3430次閱讀

    FPGA時鐘周期約束講解

    時鐘周期約束是用于對時鐘周期的約束,屬于時序約束中最重要的約束之一。
    發表于 08-14 18:25 ?1179次閱讀

    時鐘約束的概念

    文章目錄1、時鐘約束的概念2、 DC的時序約束參考文章時間又拖拖拖,隨著追尋DFT的進度,DC的進度在經歷了.dynopsys_dc.setup后,就停滯不前了,接下來本文就來介紹D
    發表于 11-17 06:56

    詳解數字電位器的原理與應用

    詳解數字電位器的原理與應用
    發表于 01-24 16:00 ?21次下載

    硬件設計教你如何正確的約束時鐘

    現在的硬件設計,大量的時鐘之間彼此相互連接是很典型的現象。為了保證Vivado優化到關鍵路徑,我們必須要理解時鐘之間是如何相互作用,也就是同步和異步時鐘之間是如何聯系。同步
    的頭像 發表于 07-15 15:35 ?6915次閱讀

    詳解數字信號處理的軟硬件實現

    詳解數字信號處理的量化效應、軟件實現和硬件實現。
    發表于 07-07 14:57 ?0次下載
    <b class='flag-5'>詳解數字</b>信號處理的軟硬件實現

    詳解數字隔離器資料下載

    電子發燒友網為你提供詳解數字隔離器資料下載的電子資料下載,更有其他相關的電路圖、源代碼、課件教程、中文資料、英文資料、參考設計、用戶指南、解決方案等資料,希望可以幫助到廣大的電子工程師們。
    發表于 04-12 08:40 ?15次下載
    <b class='flag-5'>詳解數字</b>隔離器資料下載

    時鐘周期約束詳細介紹

    時鐘周期約束:?時鐘周期約束,顧名思義,就是我們對時鐘的周期進行約束,這個
    的頭像 發表于 08-05 12:50 ?4191次閱讀

    時序約束---多時鐘介紹

    當設計存在多個時鐘時,根據時鐘的相位和頻率關系,分為同步時鐘和異步時鐘,這兩類要分別討論其約束
    的頭像 發表于 04-06 14:34 ?1445次閱讀
    時序<b class='flag-5'>約束</b>---多<b class='flag-5'>時鐘</b>介紹

    詳解數字電路的抖動

    隨著通信系統時鐘速率邁入GHz級,抖動在數字設計領域中日益得到人們的重視。在高速系統時鐘或振蕩器波形的時序誤差會限制一個
    的頭像 發表于 08-11 09:33 ?1972次閱讀
    <b class='flag-5'>詳解數字</b>電路<b class='flag-5'>中</b>的抖動

    時序約束一主時鐘與生成時鐘

    的輸出,對于Ultrascale和Ultrascale+系列的器件,定時器會自動地接入到GT的輸出。 1.2 約束設置格式 主時鐘約束使用命令create_clock進行創建,進入Timing
    的頭像 發表于 11-29 11:03 ?1421次閱讀
    時序<b class='flag-5'>約束</b>一主<b class='flag-5'>時鐘</b>與生成<b class='flag-5'>時鐘</b>

    FPGA時序約束之設置時鐘

    Vivado時序分析工具默認會分析設計中所有時鐘相關的時序路徑,除非時序約束設置了時鐘組或false路徑。使用set_clock_gro
    的頭像 發表于 04-23 09:50 ?483次閱讀
    FPGA時序<b class='flag-5'>約束</b>之設置<b class='flag-5'>時鐘</b>組
    主站蜘蛛池模板: 欧美一级视频高清片 | 天天骑夜夜操 | 久久大香线蕉综合爱 | 色激情网| 人人草97| 久久精品亚洲一区二区三区浴池 | 国产精品成人在线播放 | 台湾佬自偷自拍情侣在线 | 成人黄色免费网站 | 91在线免费视频 | 中国特黄毛片 | 欧美成人午夜毛片免费影院 | 在线色资源 | 国产人成精品香港三级古代 | 91国内在线观看 | 163黄页网又粗又长又舒服 | 日本zzzwww大片免费 | 日日夜夜狠狠 | 四虎8848精品永久在线观看 | 亚洲专区一区 | 57pao强力打造免费高清高速 | 手机精品视频在线观看免费 | 欧美一级特黄高清免费 | 天天碰天天干 | 国产欧美日韩haodiaose | 麻豆三级在线播放 | 888午夜不卡理论久久 | 国产精品夜夜春夜夜爽久久 | 99久久综合狠狠综合久久男同 | 国产成人精品亚洲日本在线观看 | 日韩特黄特色大片免费视频 | 青青青青久久精品国产h | 国产高清视频免费最新在线 | qyule亚洲精品 | 中文字幕一区精品欧美 | 国产色啪午夜免费视频 | 日本大片在线看 | 国产精品夜夜春夜夜 | 第四色激情 | 黄色网址在线免费观看 | 亚洲一区二区三区不卡视频 |