精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

時鐘設計技巧

ZYNQ ? 來源:CSDN技術社區 ? 作者:FPGA大叔 ? 2022-10-26 09:04 ? 次閱讀

前言

時鐘信號在很大程度上決定了整個設計的性能和可靠性,盡量避免使用FPGA內部邏輯產生的時鐘,因為它很容易導致功能或時序出現問題。內部邏輯(組合邏輯)產生的時鐘容易出現毛刺,影響設計的功能實現;組合邏輯固有的延時也容易導致時序問題。

一、內部邏輯產生的時鐘

若使用組合邏輯的輸出作為時鐘信號或異步復位信號,設計者必須對有可能出現的問題采取必要的預防措施。我們知道,在正常的同步設計中,一個時鐘一個節拍的數據流控制能夠保證系統持續穩定的工作。但是,組合邏輯產生的時鐘不可避免地會有毛刺出現,如果此時輸入端口的數據正處于變化過程,那么它將違反建立和保持時間要求,從而影響后續電路的輸出狀態,甚至導致整個系統運行失敗。

對于必須采用內部邏輯作時鐘或者復位信號的應用,也還是有解決辦法的。思路并不復雜,和異步復位、同步釋放的原理是一樣的。在輸出時鐘或者復位信號之前,再用系統專用時鐘信號(通常指外部晶振輸入時鐘或者PLL處理后的時鐘信號)打一拍,從而避免組合邏輯直接輸出,達到同步處理的效果。對于輸出的時鐘信號或復位信號,最好讓它走全局時鐘網絡,從而減小時鐘網絡延時,提升系統時序性能。

內部邏輯產生的時鐘處理如下:

5867fd0a-54c7-11ed-a3b6-dac502259ad0.png

二、分頻時鐘與使能時鐘

設計中往往需要用到主時鐘的若干分頻信號作為時鐘,即分頻時鐘。可別小看這個所謂的分頻時鐘,簡簡單單不加處理的亂用時鐘那就叫時鐘滿天飛,是很不好的設計風格。言歸正傳,如果設計中確實需要用到系統主時鐘的分頻信號來降低頻率時,該如何處理呢?

對于資源較豐富的FPGA,一般都有內嵌的多個PLL或者DLL專門用于時鐘管理,利用它們就可以很容易地達到多個時鐘的設計,輸出時鐘能夠配置成設計者期望的不同頻率和相位差(相對于輸入時鐘),這樣的時鐘分頻是最穩定的。但是對于某些無法使用PLL或者DLL資源的器件又該怎么辦呢?推薦使用“使能時鐘”進行設計,在“使能時鐘”設計中只使用原有的時鐘,讓分頻信號作為使能信號來用。

下面舉一個實例來說明如何進行使能時鐘的設計,該設計需要得到一個50MHz鐘的5分頻信號即10MHz。

input clk;      //50MHz時鐘信號
input rst n; 
 
reg[2:0]ent;
wire en;        //使能信號,高電平有效
 
//5分頻計數0~4
always@( posedge clk or negedge rst _n)begin
    if(!rst _n) ent<=3'd0;
    else if(ent<3'd4) ent<=ent+1b1;
    else ent<=3'd0;
end
assign en=(cnt==3'd4);//每5個時鐘周期產生1個時鐘周期高脈沖
 
//使用使能時鐘
always@( posedge clk or negedge rst _n)begin
    if(!rst _n)…;
    else if(en)…;
 
    ...
 
end

如下圖所示,使能信號不直接作為時鐘使用,而是作為數據輸入端的選擇信號,這避免了使用分頻時鐘。

587f0950-54c7-11ed-a3b6-dac502259ad0.png

三、門控時鐘

組合邏輯中多用門控時鐘,一般驅動門控時鐘的邏輯都是只包含一個與門(或門).如其他的附加邏輯,容易因競爭產生不希望的毛刺。如圖a所示,門控時鐘通過一個使號控制時鐘的開或者關。當系統不工作時可以關閉時鐘,整個系統就處于非激活狀態,這種夠在某種程度上降低系統功耗。

圖a:門控時鐘

5886f818-54c7-11ed-a3b6-dac502259ad0.png

然而,使用門控時鐘并不符合同步設計的思想,它可能會影響系統設計的實現和驗證。單純從功能實現來看,使用使能時鐘替代門控時鐘是一個不錯的選擇;但是使能時鐘在使能信號關閉時,時鐘信號仍然在工作,它無法像門控時鐘那樣降低系統功耗。

是否有一種設計方法既可以降低系統功耗,又能夠穩定可靠的替代門控時鐘呢?Altera就提出了一種解決方案,且待我慢慢道來。如圖b所示,對于上升沿有效的系統時鐘cì k,它的下降沿先把門控信號(gating signal)打一拍,然后再用這個使能信號(enable)和系統時鐘(clk)相與后作為后續電路的門控時鐘。

圖b:推薦的門控時鐘

588f916c-54c7-11ed-a3b6-dac502259ad0.png

這樣的門控時鐘電路很好地解決了組合邏輯常見的一些問題。它避免了毛刺的出現,同時也有效抑制了亞穩態可能帶來的危害。但是從另一個方面來說,如果這個設計的系統時鐘(clk)占空比不是很穩定,或者輸出的使能信號(enable)與時鐘信號(clk)的邏輯過于復雜(不止這個例子中一個與門那么簡單),那么它也會帶來一些功能或時序上的問題。總的來說,只要設計者控制好這個設計中時鐘的占空比和門控邏輯復雜度,它還是比圖a給出的門控時鐘方案更可行。

審核編輯:湯梓紅

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

    關注

    1626

    文章

    21665

    瀏覽量

    601809
  • pll
    pll
    +關注

    關注

    6

    文章

    774

    瀏覽量

    135046
  • 時鐘信號
    +關注

    關注

    4

    文章

    445

    瀏覽量

    28506

原文標題:【FPGA技巧篇】時鐘設計技巧

文章出處:【微信號:ZYNQ,微信公眾號:ZYNQ】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    時鐘樹優化與有用時鐘延遲

    時鐘樹優化與有用時鐘延遲在 “后端時序修正基本思路” 提到了時序優化的基本步驟。其中,最關鍵的階段就是時鐘樹建立。
    發表于 10-26 09:29 ?4393次閱讀
    <b class='flag-5'>時鐘</b>樹優化與有用<b class='flag-5'>時鐘</b>延遲

    時鐘設計中時鐘切換電路設計案例

    在多時鐘設計中可能需要進行時鐘的切換。由于時鐘之間可能存在相位、頻率等差異,直接切換時鐘可能導致產生glitch。
    的頭像 發表于 09-24 11:20 ?5655次閱讀
    多<b class='flag-5'>時鐘</b>設計中<b class='flag-5'>時鐘</b>切換電路設計案例

    航空時鐘~風雷儀表

    時鐘
    風雷儀表
    發布于 :2023年03月03日 15:54:36

    IC數據和時鐘時鐘線緩沖電路

    IC數據和時鐘時鐘線緩沖電路
    發表于 09-12 11:57 ?1549次閱讀
    IC數據和<b class='flag-5'>時鐘</b><b class='flag-5'>時鐘</b>線緩沖電路

    門控時鐘時鐘偏移研究

    所謂門控時鐘就是指連接到觸發器時鐘端的時鐘來自于組合邏輯;凡是組合邏輯在布局布線之后肯定會產生毛刺,而如果采用這種有毛刺的信號來作為時鐘使用的話將會出現功能上的錯
    發表于 09-07 16:11 ?35次下載
    門控<b class='flag-5'>時鐘</b>與<b class='flag-5'>時鐘</b>偏移研究

    什么是時鐘周期_時鐘周期怎么算

    時鐘周期也稱為振蕩周期,定義為時鐘頻率的倒數。時鐘周期是計算機中最基本的、最小的時間單位。在一個時鐘周期內,CPU僅完成一個最基本的動作。時鐘
    發表于 03-11 10:07 ?5.1w次閱讀

    STM32時鐘系統時鐘樹和時鐘配置函數介紹及系統時鐘設置步驟資料

    本文檔的主要內容詳細介紹的是STM32時鐘系統時鐘樹和時鐘配置函數介紹及系統時鐘設置步驟資料。
    發表于 10-11 08:00 ?22次下載
    STM32<b class='flag-5'>時鐘</b>系統<b class='flag-5'>時鐘</b>樹和<b class='flag-5'>時鐘</b>配置函數介紹及系統<b class='flag-5'>時鐘</b>設置步驟資料

    什么是時鐘時鐘信號的關鍵指標

    首先,我們看一下時鐘信號中最常見到的波形 - 矩形波(尤其是方波更常用)。在較低時鐘頻率的系統中我們看到的基本上都是以矩形波為主的時鐘信號,因為電路基本上都是靠時鐘的邊沿(上升沿或下降
    的頭像 發表于 12-06 11:53 ?6.2w次閱讀
    什么是<b class='flag-5'>時鐘</b>呢 <b class='flag-5'>時鐘</b>信號的關鍵指標

    stm32內部時鐘有哪些時鐘源 stm32使用內部時鐘配置教程

    stm32內部時鐘有哪些時鐘源 在STM32中,可以用內部時鐘,也可以用外部時鐘,在要求進度高的應用場合最好用外部晶體震蕩器,內部時鐘存在一
    的頭像 發表于 07-22 10:38 ?1.7w次閱讀

    什么是門控時鐘 門控時鐘降低功耗的原理

    門控時鐘的設計初衷是實現FPGA的低功耗設計,本文從什么是門控時鐘、門控時鐘實現低功耗的原理、推薦的FPGA門控時鐘實現這三個角度來分析門控時鐘
    的頭像 發表于 09-23 16:44 ?1.4w次閱讀
    什么是門控<b class='flag-5'>時鐘</b> 門控<b class='flag-5'>時鐘</b>降低功耗的原理

    verilog的時鐘分頻與時鐘使能

    時鐘使能電路是同步設計的基本電路,在很多設計中,雖然內部不同模塊的處理速度不同,但由于這些時鐘是同源的,可以將它們轉化為單一時鐘處理;在ASIC中可以通過STA約束讓分頻始終和源時鐘
    的頭像 發表于 01-05 14:00 ?1640次閱讀

    什么是時鐘偏斜?了解時鐘分配網絡中的時鐘偏斜

    通過了解同步電路、時鐘傳輸和時鐘分配網絡,了解時鐘偏斜、它是什么及其對現代系統的影響。 現代數字電子產品設計的最大挑戰之一是滿足時序限制的能力。保持可預測且組織良好的邏輯操作流的一種方法是在數
    的頭像 發表于 01-27 10:05 ?3565次閱讀
    什么是<b class='flag-5'>時鐘</b>偏斜?了解<b class='flag-5'>時鐘</b>分配網絡中的<b class='flag-5'>時鐘</b>偏斜

    時鐘偏差和時鐘抖動的相關概念

    本文主要介紹了時鐘偏差和時鐘抖動。
    的頭像 發表于 07-04 14:38 ?1932次閱讀
    <b class='flag-5'>時鐘</b>偏差和<b class='flag-5'>時鐘</b>抖動的相關概念

    什么是時鐘芯片?時鐘芯片的工作原理 時鐘芯片的作用

    什么是時鐘芯片?時鐘芯片的工作原理 時鐘芯片的作用 時鐘芯片是一種用于計算機或其他電子設備中的集成電路,它提供精準的時鐘信號。
    的頭像 發表于 10-25 15:02 ?5806次閱讀

    時鐘抖動和時鐘偏移的區別

    時鐘抖動(Jitter)和時鐘偏移(Skew)是數字電路設計中兩個重要的概念,它們對電路的時序性能和穩定性有著顯著的影響。下面將從定義、原因、影響以及應對策略等方面詳細闡述時鐘抖動和時鐘
    的頭像 發表于 08-19 18:11 ?837次閱讀