chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

異步復(fù)位寄存器的0時刻是如何進(jìn)行賦值的呢?

ruikundianzi ? 來源:IC的世界 ? 2023-09-07 09:53 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Verilog規(guī)范告訴我們:negedge 事件指的是如表43所示的跳變,發(fā)生negedge事件時才會執(zhí)行操作。那么0時刻,是如何執(zhí)行操作的呢?

鴿子在Verilog標(biāo)準(zhǔn)中并沒有找到0時刻賦值明確的說明。如下代碼中,0時刻,rst_n為0,clk 處于低電平,那么cfg_mode的數(shù)值是多少呢?

always@(posedgeclkornegedgerst_n)
    if (!rst_n) begin
      cfg_mode                   <= 1'b0;
    end else   begin
      cfg_mode                   <= cfg_mode_in               ;
end

實際電路中:

在芯片上電之前,芯片的chip_reset一直處于復(fù)位狀態(tài),因此導(dǎo)致芯片內(nèi)部的rst_n一直為0,且芯片內(nèi)部PLL還沒有工作,也沒有產(chǎn)生clk,此時沒有任何信號的跳變,即clk沒有跳變,rst_n一直為0也沒有跳變。在實際電路中,從D觸發(fā)器的結(jié)構(gòu)圖可以看到,當(dāng)復(fù)位R一直是1時,即使時鐘信號不跳變,Q端輸出也是0。

e1cbee1c-4ca1-11ee-a25d-92fbcf53809c.pnge1f6fd50-4ca1-11ee-a25d-92fbcf53809c.pnge217c45e-4ca1-11ee-a25d-92fbcf53809c.png

VCS在0時刻賦值

e22d4004-4ca1-11ee-a25d-92fbcf53809c.png

VCS 在0時刻會執(zhí)行一次always塊的賦值,而不是等到信號跳變。

e2528d78-4ca1-11ee-a25d-92fbcf53809c.png

module zero_time_test;
    reg rst_n;
 
    initial begin
        rst_n = 0;
        #20 rst_n = 1;
    end
 
    always@(posedge rst_n) begin: always_case1
        $display("The always case1 executed @Time %f", $time());
    end
 
    always@(negedge rst_n) begin: always_case2
        $display("The always case2 executed @Time %f", $time());
    end
 
    always@(rst_n) begin: always_case3
        $display("The always case3 executed @Time %f", $time());
    end
 
endmodule
e2640f12-4ca1-11ee-a25d-92fbcf53809c.png
module zero_time_test;
    reg rst_n;
 
    initial begin
        rst_n = 1;
        #20 rst_n = 0;
    end
 
    always@(posedge rst_n) begin: always_case4
        $display("The always case4 executed @Time %f", $time());
    end
 
    always@(negedge rst_n) begin: always_case5
        $display("The always case5 executed @Time %f", $time());
    end
 
    always@(rst_n) begin: always_case6
        $display("The always case6 executed @Time %f", $time());
    end
 
endmodule
e279355e-4ca1-11ee-a25d-92fbcf53809c.png ?






審核編輯:劉清

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

    關(guān)注

    31

    文章

    5494

    瀏覽量

    127779
  • D觸發(fā)器
    +關(guān)注

    關(guān)注

    3

    文章

    180

    瀏覽量

    49361
  • CLK
    CLK
    +關(guān)注

    關(guān)注

    0

    文章

    132

    瀏覽量

    17853
  • PLL電路
    +關(guān)注

    關(guān)注

    0

    文章

    93

    瀏覽量

    6973
  • Verilog語言
    +關(guān)注

    關(guān)注

    0

    文章

    113

    瀏覽量

    8682

原文標(biāo)題:異步復(fù)位寄存器:0時刻賦值

文章出處:【微信號:IP與SoC設(shè)計,微信公眾號:IP與SoC設(shè)計】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    常見的FPGA復(fù)位設(shè)計

    在FPGA設(shè)計中,當(dāng)復(fù)位整個系統(tǒng)或功能模塊時,需要將先關(guān)寄存器被清零或者賦初值,以保證整個系統(tǒng)或功能運(yùn)行正常。在大部分的設(shè)計中,我們經(jīng)常用“同步復(fù)位”或“異步
    發(fā)表于 05-14 14:49 ?2955次閱讀
    常見的FPGA<b class='flag-5'>復(fù)位</b>設(shè)計

    寄存器reg延遲問題

    各位看官好,最近小弟遇到了一個寄存器延遲的問題,雖然不是特別重要,但還是想弄明白,請各位看官指導(dǎo)。具體如下: 對于一個只有clk、reset、data_in、data_out的模,當(dāng)我們用如下
    發(fā)表于 11-14 10:10

    簡談同步復(fù)位異步復(fù)位

    關(guān)鍵,必須要按住一會會。 那下面咱們就來詳細(xì)聊聊這三種類型。 一、無復(fù)位 沒見過這樣寫代碼的,竟然沒有復(fù)位,老師都說數(shù)字電路離不開復(fù)位的,沒有復(fù)位,
    發(fā)表于 01-30 11:01

    AD5410使用菊花鏈工作方式時,上電后如何進(jìn)行軟件復(fù)位和控制寄存器配置?

    AD5410使用菊花鏈工作方式時,上電后如何進(jìn)行軟件復(fù)位和控制寄存器配置?
    發(fā)表于 08-06 07:04

    單片機(jī)如何給寄存器賦值

    2020-11-15單片機(jī)中在給寄存器賦值時,常常寫data|=0x03不直接寫data=0x03,是因為前者可以保護(hù)寄存器上其它位的值,只
    發(fā)表于 01-24 07:52

    什么樣的寄存器不需要復(fù)位?哪些寄存器是CPU能夠訪問的

    地址。當(dāng)CPU發(fā)一個0x46018000的地址下來,那么硬件會自動根據(jù)它的基地址判斷它是去訪問I2C的。然后根據(jù)偏移地址便可以知道是訪問I2C的哪一個寄存器了。3、寄存器復(fù)位需不需要
    發(fā)表于 07-08 17:43

    AD5410使用菊花鏈工作方式時,上電后如何進(jìn)行軟件復(fù)位和控制寄存器配置?

    AD5410使用菊花鏈工作方式時,上電后如何進(jìn)行軟件復(fù)位和控制寄存器配置?
    發(fā)表于 12-11 06:26

    U0IIR寄存器原理下載

    U0IIR寄存器原理下載 U0IIR寄存器 BIT00:有中斷 1:沒有中斷 BI
    發(fā)表于 03-10 14:13 ?95次下載

    何進(jìn)行寄存器名稱和地址的映射分析

    首先要清楚的一點,所有操作,最終目的都是操作寄存器一,對比51單片機(jī)和STM32對寄存器的操作
    發(fā)表于 06-21 17:43 ?2次下載
    如<b class='flag-5'>何進(jìn)行</b><b class='flag-5'>寄存器</b>名稱和地址的映射分析

    STM32復(fù)位來源(寄存器版)

    一篇很簡單,有必要了解的文章 - STM32復(fù)位來源(寄存器版)
    的頭像 發(fā)表于 03-14 14:13 ?1.3w次閱讀
    STM32<b class='flag-5'>復(fù)位</b>來源(<b class='flag-5'>寄存器</b>版)

    Cortex-M3 內(nèi)部寄存器

    寄存器組R0-R12R0-R12,通用寄存器;R0-R12都是32位通用寄存器,用于數(shù)據(jù)操作;但是絕大多數(shù)16位Thumb指令只能訪問R
    發(fā)表于 11-26 16:21 ?39次下載
    Cortex-M3 內(nèi)部<b class='flag-5'>寄存器</b>

    配置STM32寄存器控制GPIO點亮LED

    STM32點亮LED 寄存器方式IO簡介1、每個IO可以自由編程,但是IO口寄存器必須按照32位字被訪問。2、每個IO端口都有7個寄存器來控制。CRL 【0-7】端口配置
    發(fā)表于 01-13 16:15 ?4次下載
    配置STM32<b class='flag-5'>寄存器</b>控制GPIO點亮LED

    異步復(fù)位同步釋放問題解析

    使用 2 個帶異步復(fù)位寄存器,D端輸入邏輯 1(VCC)。
    的頭像 發(fā)表于 06-26 16:39 ?2116次閱讀
    <b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b>同步釋放問題解析

    對于多位的異步信號如何進(jìn)行同步?

    對于多位的異步信號如何進(jìn)行同步? 異步信號(Asynchronous Signals)是指系統(tǒng)中發(fā)生的事件或者信號,它們的發(fā)生時間不可預(yù)測、不可控制,與其他的進(jìn)程、線程以及系統(tǒng)中的各
    的頭像 發(fā)表于 09-12 11:18 ?2037次閱讀

    NVMe高速傳輸之?dāng)[脫XDMA設(shè)計32:寄存器功能驗證與分析2

    寄存器最大值為 64’hFFFFFFFFFFFFFFFF,到達(dá)最大值后一個時鐘周期后翻轉(zhuǎn)回 0, 在隨機(jī)時刻使用 force 將寄存器賦值
    的頭像 發(fā)表于 10-14 17:06 ?260次閱讀
    NVMe高速傳輸之?dāng)[脫XDMA設(shè)計32:<b class='flag-5'>寄存器</b>功能驗證與分析2