在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

IC設計知識點:一種簡單超時機制

倩倩 ? 來源:CSDN ? 作者:CSDN ? 2022-09-21 15:28 ? 次閱讀
IC設計知識點:一種簡單超時機制

1、超時判斷機制

在設計中,為了增加異常處理能力,保證設備的正常運行,常常需要進行超時判斷。

如下圖,當master發起mem讀請求后,收到讀返回數據時,進行超時判斷,如果超時,則數據丟棄,如果沒有超時,則數據正常接收。

2、一種簡單的超時機制

如果在數據發送過程中,發送者向接收者發送數據,通常需要接收者通知發送者自身是否可以接收數據

采用一個公共的32bit clk_cnt作為時間基準,根據不同的超時精度,采用32bit中的連續2bit,1GHz時鐘,每個周期1n,例如采用clk_cnt[20:19],可以記錄2^21ns級別的精度,即2ms級別的時間精度。

本文中master能夠發起256個outstanding請求,req_id[7:0]從0到255,且工作時鐘clk為1Ghz,發起的mem讀請求,且在1us后都沒有收到數據,則認為超時。

步驟1:master發起mem_rd請求時,以req_id作為地址,將clk_cnt[20:19]作為data,寫入256x2 1r1w_ram中。

步驟2:當master收到讀返回數據時,以req_id作為地址從ram中讀取data,記作clk_cnt_record

步驟3:提取當前時刻clk_cnt[20:19],記錄為clk_cnt_now,如果clk_cnt_now-clk_cnt_record 的絕對值大于1,則表示超時。

案例:

clk_cnt_record 為 10,clk_cnt_now為00,則表示超時。

clk_cnt_record 為 10,clk_cnt_now為11,則認為不超時。

9aabe9e8-397d-11ed-9e49-dac502259ad0.png

3、特點說明

優點:此類設計比較簡單,所需的邏輯資源較少,并且可以調節超時時間精度。

缺點:

1.如果超時時間過長,已經從clk_cnt_record翻轉了一圈再返回時,則無法判斷是否為超時。即clk_cnt_record(10)-->11-->00-->01-->10-->11(clk_cnt_now),實際已超時,但是判斷為沒有超時。

2.沒有讀返回數據時,無法判斷是否超時。

verilog語法:幾種可綜合的for循環語句9a885be0-397d-11ed-9e49-dac502259ad0.png

1、采用int實現不同信號賦值的循環

在同一個.v文件中,在不同的場景中,我們想例化不同的ram,如果不使用宏定義,那么該怎么實現呢?

直接采用for(int*)類型格式,可以在一個else分支中使用,不需要使用generate,使用更加靈活,使用范圍更廣。

input [1024-1:0]  func_mode_in;reg   [512-1:0]    func_id_vld;  always@(posedge  clk)    if(~rst_n) begin       func_id_vld <= 512'b0 ;    end else begin        for(int i=0; i<512;i=i+1) begin : func_id_vld_gen            func_id_vld[i] <= (func_mode_in[2*i+:2]==2'b01) ;        end    end

2、采用int實現同一個信號賦值的循環

下圖所示,采用for(int*)類型格式實現了一個16mux1的循環賦值語句,實現不同條件一下,對debug_test_16mux1的賦值操作,即16mux1的邏輯。

input [128*16-1:0]  debug_test_in;input [4-1:0]       cfg_16mux1_mode;reg   [128-1:0]     debug_test_16mux1;  always@(*) begin    debug_test_16mux1 = 128'd0;      for(int i=0; i<16;i=i+1) begin : debug_test_16mux1_gen        if(cfg_16mux1_mode ==i) begin            debug_test_16mux1  =  debug_test_in[128*i+:128] ;            break ;        end    endend

如上for循環語句實現了如下的case語句效果

always@(*) begin  case(cfg_16mux1_mode)  0 : debug_test_16mux1  =  debug_test_in[127  :0    ];  1 : debug_test_16mux1  =  debug_test_in[255  :128  ];  2 : debug_test_16mux1  =  debug_test_in[383  :256  ];  3 : debug_test_16mux1  =  debug_test_in[511  :384  ];  4 : debug_test_16mux1  =  debug_test_in[639  :512  ];  5 : debug_test_16mux1  =  debug_test_in[767  :640  ];  6 : debug_test_16mux1  =  debug_test_in[895  :768  ];  7 : debug_test_16mux1  =  debug_test_in[1023 :896  ];  8 : debug_test_16mux1  =  debug_test_in[1151 :1024 ];  9 : debug_test_16mux1  =  debug_test_in[1279 :1152 ];  10: debug_test_16mux1  =  debug_test_in[1407 :1280 ];  11: debug_test_16mux1  =  debug_test_in[1535 :1408 ];  12: debug_test_16mux1  =  debug_test_in[1663 :1536 ];  13: debug_test_16mux1  =  debug_test_in[1791 :1664 ];  14: debug_test_16mux1  =  debug_test_in[1919 :1792 ];  15: debug_test_16mux1  =  debug_test_in ;  endcase  end

NOTE:在for(int*)語句中,debug_test_16mux1 = debug_test_in[128*i+127:128*i] ; 會報語法錯誤,語法錯誤,只識別debug_test_in[128*i+:128]而無法識別debug_test_in[128*i+127:128*i] ,否則VCS會報語法錯誤。

審核編輯 :李倩


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

    關注

    8

    文章

    7104

    瀏覽量

    89293
  • IC設計
    +關注

    關注

    38

    文章

    1298

    瀏覽量

    104133
  • 機制
    +關注

    關注

    0

    文章

    24

    瀏覽量

    9808

原文標題:IC知識點:超時機制、verilog語法

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

收藏 人收藏

    評論

    相關推薦

    Docker-鏡像的分層-busybox鏡像制作

    docker hub里面查看busybox的Dockerfile, 知識點4:bootfs 和 rootfs? 知識點5:為什么Docker鏡像要采用這種分層結構? 如果多個容器共享份基礎鏡像,當某個
    的頭像 發表于 01-15 10:44 ?59次閱讀
    Docker-鏡像的分層-busybox鏡像制作

    Aigtek功率放大器應用:電感線圈的知識點分享

    電磁驅動是功率放大器的大基礎應用領域,其中我們最常見的就是用功放來驅動電感線圈,那么關于電感線圈的這10大知識點你都知道嗎?今天Aigtek安泰電子來給大家介紹下電感線圈的基礎知識
    的頭像 發表于 01-07 15:43 ?116次閱讀
    Aigtek功率放大器應用:電感線圈的<b class='flag-5'>知識點</b>分享

    后悔沒有早點看到:天線設計中的知識點

    Cat.1 bis R13架構,天線架構精簡為單天線架構,去掉了分集接收天線,因此只需要根天線。 ? 知識點: Cat.1 bis相對于Cat.1的區別是,后者為兩根天線(根主天線,
    的頭像 發表于 12-24 17:11 ?406次閱讀
    后悔沒有早點看到:天線設計中的<b class='flag-5'>知識點</b>!

    一種使用LDO簡單電源電路解決方案

    本期我們介紹一種使用LDO簡單電源電路解決方案,該方案可以處理12V/24V、多節鋰離子電池和4節干電池等相對較高的輸入電壓。
    的頭像 發表于 12-04 16:05 ?392次閱讀
    <b class='flag-5'>一種</b>使用LDO<b class='flag-5'>簡單</b>電源電路解決方案

    接口測試理論、疑問收錄與擴展相關知識點

    本文章使用王者榮耀游戲接口、企業微信接口的展示結合理論知識,講解什么是接口測試、接口測試理論、疑問收錄與擴展相關知識點知識學院,快來起看看吧~
    的頭像 發表于 11-15 09:12 ?354次閱讀
    接口測試理論、疑問收錄與擴展相關<b class='flag-5'>知識點</b>

    socket 連接超時處理技巧

    在網絡編程中,Socket連接超時個常見的問題。處理超時的關鍵在于確保程序能夠優雅地處理這些情況,避免程序崩潰或者無響應。以下是些處理Socket連接
    的頭像 發表于 11-12 14:13 ?525次閱讀

    socket連接超時如何處理

    在網絡編程中,socket連接超時個常見的問題,它可能由多種原因引起,比如網絡延遲、服務器負載過高或者客戶端請求超時設置過短等。處理socket連接超時需要綜合考慮客戶端和服務器端
    的頭像 發表于 11-01 16:48 ?867次閱讀

    一種簡單高效配置FPGA的方法

    本文描述了一種簡單高效配置FPGA的方法,該方法利用微處理器從串行外圍接口(SPI)閃存配置FPGA設備。這種方法減少了硬件組件、板空間和成本。
    的頭像 發表于 10-24 14:57 ?742次閱讀
    <b class='flag-5'>一種</b><b class='flag-5'>簡單</b>高效配置FPGA的方法

    Java CompletableFuture 異步超時實現探索

    簡介 JDK 8 中 CompletableFuture 沒有超時中斷任務的能力。現有做法強依賴任務自身的超時實現。本文提出一種異步超時實現方案,解決上述問題。 前言 JDK 8 是
    的頭像 發表于 07-25 14:06 ?399次閱讀

    espconn_gethostbyname接口DNS解析超時機制要自己做嗎?

    espconn_gethostbyname這個接口,DNS解析超時機制要自己做嗎?,這個接口的回調函數是如何觸發的,有沒有超時觸發機制
    發表于 07-12 12:29

    模擬電子技術知識點問題總結概覽

    給大家分享模擬電子技術知識點問題總結。
    的頭像 發表于 05-08 15:16 ?1204次閱讀
    模擬電子技術<b class='flag-5'>知識點</b>問題總結概覽

    一種簡單的降壓式開關穩壓器LM2575數據表

    電子發燒友網站提供《一種簡單的降壓式開關穩壓器LM2575數據表.pdf》資料免費下載
    發表于 04-23 11:23 ?0次下載
    <b class='flag-5'>一種</b><b class='flag-5'>簡單</b>的降壓式開關穩壓器LM2575數據表

    汽車MCU芯片知識點梳理

    作者|北灣南巷出品|汽車電子與軟件隨著科技的飛速發展,汽車行業也在經歷著前所未有的變革。從傳統的內燃機汽車到新能源汽車,再到如今的智能汽車,汽車已經不再僅僅是一種交通工具,而是成為了人們生活中的一種
    的頭像 發表于 04-16 08:10 ?2621次閱讀
    汽車MCU芯片<b class='flag-5'>知識點</b>梳理

    篇搞定DCS系統相關知識點

    目標。DCS系統廣泛應用于各個行業,如化工、電力、制藥等。在這些行業中,DCS系統可以實現對生產過程的集中監控和分散控制,提高生產效率和產品質量,降低能耗和減少環境污染,從而保證產品質量,并確保生產過程的安全可靠。 二.DCS系統知識點
    的頭像 發表于 03-26 18:40 ?957次閱讀
    <b class='flag-5'>一</b>篇搞定DCS系統相關<b class='flag-5'>知識點</b>

    【量子計算機重構未來 | 閱讀體驗】第二章關鍵知識點

    本帖最后由 oxlm_1 于 2024-3-6 23:20 編輯 之所以將第二章單獨拿出來,是因為在閱讀過程中,發現第二章知識點較多,理解起來比較耗時間。 第二章的主要知識點: 量子
    發表于 03-06 23:17
    主站蜘蛛池模板: 欧美大片xxxxbbbb| 免费亚洲成人| 一级欧美一级日韩| 久久人人澡| 在线你懂得| 性高清| 三级黄色一级视频| 免费看一级视频| 国产一级aa大片毛片| 成人国产在线24小时播放视频| 综综综综合网| 三a大片| 日本人69xxxxx| 亚洲欧美一区二区三区图片 | 91寡妇天天综合久久影院| 夜夜摸夜夜操| 久久成人福利视频| 人人做人人爽人人爱秋霞影视| 亚洲码欧美码一区二区三区| 麻豆蜜桃| 午夜爱爱网站| 欧美 日韩 中文字幕| 国产欧美亚洲精品第二区首页 | 日本三级人妇| 韩国最新三级网站在线播放| www.乱| 欧美乱妇15p| 91大神在线视频观看| 综合一个色| 色视频在线观看网站| 久久久99精品免费观看精品| 最新eeuss影院第256页| 欧美黑人换爱交换乱理伦片| 欧美专区在线播放| 91九色麻豆| 免费网站成人亚洲| 亚洲第一区精品日韩在线播放| 国产黄色录像视频| 欧美 亚洲 国产 丝袜 在线| 视频免费黄色| 成人在线天堂|