日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

同步復(fù)位和異步復(fù)位到底該用哪個(gè)

FPGA研究院 ? 來(lái)源:FPGA研究院 ? 2026-04-22 09:42 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

開(kāi)篇:復(fù)位的困惑

FPGA/數(shù)字IC設(shè)計(jì)的,平時(shí)寫(xiě)得最多的可能就是復(fù)位邏輯了。但你有沒(méi)有這種感覺(jué):看別人代碼,有的用同步復(fù)位,有的用異步復(fù)位,有的又搞什么"異步復(fù)位同步釋放"——到底該用哪個(gè)?

說(shuō)起來(lái),這兩個(gè)玩意兒看起來(lái)簡(jiǎn)單,但要真讓你說(shuō)清楚什么時(shí)候用哪個(gè)、為什么,可能還真有點(diǎn)含糊。今天咱就把這事兒徹底聊明白。

同步復(fù)位是怎么工作的

同步復(fù)位的意思很直接:復(fù)位信號(hào)必須等到時(shí)鐘邊沿來(lái)了才起作用。

舉個(gè)例子,你在第10ns把復(fù)位信號(hào)拉低了,但下一個(gè)時(shí)鐘沿在15ns,那寄存器要等到15ns才會(huì)被復(fù)位,中間這5ns寄存器還是保持原來(lái)的狀態(tài)。

Verilog寫(xiě)起來(lái)是這樣的:

always @(posedge clk) begin if (rst) q <= 1'b0; else q <= d; end

注意看敏感列表,只有posedge clk,沒(méi)有復(fù)位信號(hào)什么事兒。復(fù)位信號(hào)本質(zhì)上被當(dāng)成普通的數(shù)據(jù)輸入來(lái)處理。

異步復(fù)位是怎么工作的

異步復(fù)位就不一樣了,它有點(diǎn)像開(kāi)關(guān)——只要復(fù)位信號(hào)一變,寄存器立馬就被復(fù)位,根本不鳥(niǎo)時(shí)鐘在干嘛。

這種設(shè)計(jì)的好處是"快",壞處嘛,后面再說(shuō)。

always @(posedge clk or negedge rst_n) begin if (!rst_n) q <= 1'b0; else q <= d; end

敏感列表里多了個(gè)negedge rst_n,這就是異步的意思——復(fù)位信號(hào)一變,邏輯立刻響應(yīng)。

兩種復(fù)位到底該怎么選

按我的經(jīng)驗(yàn),別急著下結(jié)論,先看看各自的脾氣。

對(duì)比維度 同步復(fù)位 異步復(fù)位
響應(yīng)速度 慢(等時(shí)鐘沿) 快(即時(shí)生效)
資源消耗 可能更多(LUT實(shí)現(xiàn)) 更少(用專(zhuān)用端口
抗毛刺能力 強(qiáng)(時(shí)鐘沿過(guò)濾) 弱(毛刺直接觸發(fā))
亞穩(wěn)態(tài)風(fēng)險(xiǎn) 無(wú) 有(釋放時(shí)刻)
時(shí)鐘依賴 強(qiáng)依賴 不依賴
時(shí)序分析 簡(jiǎn)單 復(fù)雜

什么時(shí)候用同步復(fù)位

其實(shí)選同步復(fù)位的情況還挺多的:

1.高速設(shè)計(jì):當(dāng)你的時(shí)鐘跑到100MHz往上,異步復(fù)位的亞穩(wěn)態(tài)風(fēng)險(xiǎn)就變得很突出。這種時(shí)候老老實(shí)實(shí)用同步復(fù)位,時(shí)序收斂也更容易。

2.狀態(tài)機(jī):狀態(tài)機(jī)的復(fù)位時(shí)機(jī)必須精準(zhǔn),否則可能出現(xiàn)"半復(fù)位"狀態(tài)——有些寄存器復(fù)位的早,有些晚,狀態(tài)機(jī)直接卡死。同步復(fù)位能保證所有寄存器在同一拍復(fù)位。

3.多時(shí)鐘域系統(tǒng):跨時(shí)鐘域的復(fù)位信號(hào)必須各自同步,否則輕則亞穩(wěn)態(tài),重則整個(gè)系統(tǒng)亂套。

4.毛刺敏感的環(huán)境:如果你PCB上復(fù)位走線很長(zhǎng),或者環(huán)境電磁干擾嚴(yán)重,同步復(fù)位的"過(guò)濾"特性能幫你擋住不少麻煩。

什么時(shí)候用異步復(fù)位

異步復(fù)位也不是一無(wú)是處,這些場(chǎng)景它就是香:

1.上電復(fù)位:系統(tǒng)上電的時(shí)候時(shí)鐘可能還沒(méi)穩(wěn)定呢,這時(shí)候需要強(qiáng)制把所有寄存器搞成已知狀態(tài)。異步復(fù)位正好不挑食,有電就能干活。

2.看門(mén)狗/緊急復(fù)位:出過(guò)事兒需要立即清零的場(chǎng)景,等一個(gè)時(shí)鐘周期可能就是災(zāi)難。異步復(fù)位立竿見(jiàn)影。

3.低速簡(jiǎn)單邏輯:如果你的設(shè)計(jì)跑個(gè)幾十MHz,用異步復(fù)位問(wèn)題不大,而且還能省點(diǎn)資源。

4.時(shí)鐘可能停止的場(chǎng)景:比如低功耗模式下把時(shí)鐘關(guān)了,同步復(fù)位這時(shí)候就歇菜了,但異步復(fù)位還能用。

實(shí)際設(shè)計(jì)中的最佳實(shí)踐

光知道什么時(shí)候用還不夠,實(shí)戰(zhàn)中還有個(gè)黃金法則:異步復(fù)位,同步釋放。

啥意思呢?復(fù)位到來(lái)的時(shí)候,異步生效——保證快速響應(yīng);復(fù)位撤銷(xiāo)的時(shí)候,必須跟時(shí)鐘同步——避免亞穩(wěn)態(tài)。

1406f3a4-3ddb-11f1-90a1-92fbcf53809c.jpg

坑在這里:很多人以為復(fù)位"生效"才重要,其實(shí)更危險(xiǎn)的是"釋放"時(shí)刻。如果復(fù)位釋放的時(shí)候剛好在時(shí)鐘沿附近,不同寄存器可能,有的已經(jīng)退出復(fù)位,有的還在復(fù)位里,系統(tǒng)直接進(jìn)入"半初始化"狀態(tài),后果不堪設(shè)想。

具體怎么實(shí)現(xiàn)??jī)杉?jí)寄存器打拍同步:

always @(posedge clk or negedge rst_async_n) if (!rst_async_n) begin rst_sync1 <= 1'b0; rst_sync2 <= 1'b0; end else begin rst_sync1 <= 1'b1; rst_sync2 <= rst_sync1; end assign rst_sync_n = rst_sync2;

147f4c00-3ddb-11f1-90a1-92fbcf53809c.jpg

第一級(jí)D端接的是1,不是接的復(fù)位信號(hào)。這個(gè)小細(xì)節(jié)很關(guān)鍵——只有復(fù)位釋放的那一刻,第一級(jí)才會(huì)被拉高,然后再過(guò)一拍同步出去。這樣設(shè)計(jì)最省資源,也是業(yè)界標(biāo)準(zhǔn)做法。

真實(shí)案例分享

說(shuō)個(gè)我之前踩過(guò)的坑吧。

有個(gè)項(xiàng)目,用的是異步復(fù)位,設(shè)計(jì)的時(shí)候圖省事兒,所有模塊都直接用外部復(fù)位信號(hào)。結(jié)果有個(gè)模塊的復(fù)位信號(hào)釋放在時(shí)鐘沿附近,引發(fā)了亞穩(wěn)態(tài)。

問(wèn)題來(lái)了:功能仿真沒(méi)問(wèn)題,時(shí)序仿真也過(guò)了,但上板子就是不穩(wěn)定,有時(shí)候能跑幾個(gè)小時(shí),有時(shí)候幾分鐘就掛。

最后怎么修的?老老實(shí)實(shí)加了兩級(jí)同步器,給復(fù)位信號(hào)做了"異步復(fù)位同步釋放"。之后再也沒(méi)出過(guò)問(wèn)題。

所以啊,別覺(jué)得自己設(shè)計(jì)簡(jiǎn)單就不做同步化。異步復(fù)位的亞穩(wěn)態(tài)問(wèn)題是概率性的,不是不報(bào),時(shí)候未到。

總結(jié)一下

其實(shí)這個(gè)問(wèn)題沒(méi)有標(biāo)準(zhǔn)答案,關(guān)鍵看場(chǎng)景:

高速、時(shí)序敏感、多時(shí)鐘域——用同步復(fù)位;

上電初始化、緊急復(fù)位、時(shí)鐘可能停止——用異步復(fù)位,但要記得同步釋放;

復(fù)雜系統(tǒng)——通常采用混合策略,各模塊根據(jù)需求選擇合適的復(fù)位方式。

記住,復(fù)位設(shè)計(jì)雖然基礎(chǔ),但它往往是系統(tǒng)穩(wěn)定性的基石。別圖一時(shí)省事兒,后面的debug會(huì)讓你懷疑人生。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5620

    瀏覽量

    130451
  • 同步復(fù)位
    +關(guān)注

    關(guān)注

    0

    文章

    28

    瀏覽量

    10988
  • 異步復(fù)位
    +關(guān)注

    關(guān)注

    0

    文章

    48

    瀏覽量

    13706

原文標(biāo)題:同步復(fù)位和異步復(fù)位,什么時(shí)候用哪個(gè),說(shuō)清楚才算懂

文章出處:【微信號(hào):FPGA研究院,微信公眾號(hào):FPGA研究院】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Xilinx FPGA異步復(fù)位同步釋放—同步后的復(fù)位該當(dāng)作同步復(fù)位還是異步復(fù)位?

    針對(duì)異步復(fù)位、同步釋放,一直沒(méi)搞明白在使用同步化以后的復(fù)位信號(hào)時(shí),到底是使用
    發(fā)表于 06-21 09:59 ?2430次閱讀
    Xilinx FPGA<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b><b class='flag-5'>同步</b>釋放—<b class='flag-5'>同步</b>后的<b class='flag-5'>復(fù)位</b>該當(dāng)作<b class='flag-5'>同步</b><b class='flag-5'>復(fù)位</b>還是<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b>?

    異步復(fù)位同步撤離是什么意思?如何做到異步復(fù)位同步撤離呢?

    復(fù)位消抖之后的下一件事,[異步復(fù)位]()同步撤離。這句話什么意思呢?
    的頭像 發(fā)表于 12-04 13:57 ?6942次閱讀
    <b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b><b class='flag-5'>同步</b>撤離是什么意思?如何做到<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b><b class='flag-5'>同步</b>撤離呢?

    同步復(fù)位異步復(fù)位到底孰優(yōu)孰劣呢

    異步復(fù)位同步釋放的理解目錄目錄同步復(fù)位異步復(fù)位
    發(fā)表于 01-17 07:01

    同步復(fù)位異步復(fù)位有什么聯(lián)系與區(qū)別,優(yōu)缺點(diǎn)!

     異步復(fù)位原理:異步復(fù)位只要有復(fù)位信號(hào)系統(tǒng)馬上復(fù)位,因此異步
    發(fā)表于 11-30 08:45 ?10w次閱讀
    <b class='flag-5'>同步</b><b class='flag-5'>復(fù)位</b>和<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b>有什么聯(lián)系與區(qū)別,優(yōu)缺點(diǎn)!

    FPGA設(shè)計(jì)中的異步復(fù)位同步釋放問(wèn)題

    異步復(fù)位同步釋放 首先要說(shuō)一下同步復(fù)位異步復(fù)位的區(qū)
    發(fā)表于 06-07 02:46 ?2662次閱讀

    如何區(qū)分同步復(fù)位異步復(fù)位?

    問(wèn):如何區(qū)分同步復(fù)位異步復(fù)位?可以理解為同步復(fù)位是作用于狀態(tài),然后通過(guò)狀態(tài)來(lái)驅(qū)動(dòng)電路
    的頭像 發(fā)表于 06-11 15:15 ?7579次閱讀

    Xilinx FPGA的同步復(fù)位異步復(fù)位

    對(duì)于xilinx 7系列的FPGA而言,flip-flop支持高有效的異步復(fù)/置位和同步復(fù)位/置位。對(duì)普通邏輯設(shè)計(jì),同步復(fù)位
    發(fā)表于 07-13 09:31 ?7744次閱讀

    同步復(fù)位異步復(fù)位電路簡(jiǎn)介

    同步復(fù)位異步復(fù)位都是狀態(tài)機(jī)的常用復(fù)位機(jī)制,圖1中的復(fù)位電路結(jié)合了各自的優(yōu)點(diǎn)。
    的頭像 發(fā)表于 08-12 15:20 ?8630次閱讀
    <b class='flag-5'>同步</b><b class='flag-5'>復(fù)位</b>和<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b>電路簡(jiǎn)介

    同步復(fù)位異步復(fù)位的優(yōu)缺點(diǎn)和對(duì)比說(shuō)明

    同步復(fù)位:顧名思義,同步復(fù)位就是指復(fù)位信號(hào)只有在時(shí)鐘上升沿到來(lái)時(shí),才能有效。否則,無(wú)法完成對(duì)系統(tǒng)的復(fù)位
    發(fā)表于 09-14 08:00 ?0次下載
    <b class='flag-5'>同步</b><b class='flag-5'>復(fù)位</b>和<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b>的優(yōu)缺點(diǎn)和對(duì)比說(shuō)明

    詳細(xì)講解同步后的復(fù)位同步復(fù)位還是異步復(fù)位?

    針對(duì)異步復(fù)位、同步釋放,一直沒(méi)搞明白在使用同步化以后的復(fù)位信號(hào)時(shí),到底是使用
    的頭像 發(fā)表于 04-27 18:12 ?6009次閱讀
    詳細(xì)講解<b class='flag-5'>同步</b>后的<b class='flag-5'>復(fù)位</b>是<b class='flag-5'>同步</b><b class='flag-5'>復(fù)位</b>還是<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b>?

    【FPGA】異步復(fù)位同步釋放的理解

    異步復(fù)位,同步釋放的理解目錄目錄 同步復(fù)位異步復(fù)位
    發(fā)表于 01-17 12:53 ?4次下載
    【FPGA】<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b>,<b class='flag-5'>同步</b>釋放的理解

    同步復(fù)位異步復(fù)位的區(qū)別

    請(qǐng)簡(jiǎn)述同步復(fù)位異步復(fù)位的區(qū)別,說(shuō)明兩種復(fù)位方式的優(yōu)缺點(diǎn),并解釋“異步
    的頭像 發(fā)表于 08-14 11:49 ?9020次閱讀

    淺析異步復(fù)位同步釋放與同步復(fù)位打拍模塊

    異步復(fù)位同步釋放:rst_synchronizer.v
    的頭像 發(fā)表于 08-21 09:27 ?1990次閱讀
    淺析<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b><b class='flag-5'>同步</b>釋放與<b class='flag-5'>同步</b><b class='flag-5'>復(fù)位</b>打拍模塊

    同步復(fù)位異步復(fù)位到底孰優(yōu)孰劣呢?

    同步復(fù)位異步復(fù)位到底孰優(yōu)孰劣呢? 同步復(fù)位
    的頭像 發(fā)表于 01-16 16:25 ?2967次閱讀

    FPGA同步復(fù)位異步復(fù)位

    FPGA(Field-Programmable Gate Array,現(xiàn)場(chǎng)可編程門(mén)陣列)中的復(fù)位操作是設(shè)計(jì)過(guò)程中不可或缺的一環(huán),它負(fù)責(zé)將電路恢復(fù)到初始狀態(tài),以確保系統(tǒng)的正確啟動(dòng)和穩(wěn)定運(yùn)行。在FPGA設(shè)計(jì)中,復(fù)位方式主要分為同步
    的頭像 發(fā)表于 07-17 11:12 ?3763次閱讀
    普兰店市| 太保市| 和田县| 陆川县| 彭泽县| 南京市| 绍兴县| 江源县| 江川县| 合江县| 大同市| 泾川县| 桃园市| 定远县| 靖宇县| 武胜县| 西畴县| 潜山县| 淮阳县| 扎赉特旗| 五台县| 淮安市| 明光市| 平阳县| 瓦房店市| 灵台县| 镇康县| 康保县| 玉溪市| 余庆县| 囊谦县| 商都县| 阿拉善盟| 河东区| 从江县| 济阳县| 甘泉县| 松溪县| 云南省| 兴业县| 勐海县|