91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

IC設(shè)計知識點:一種簡單超時機制

倩倩 ? 來源:CSDN ? 作者:CSDN ? 2022-09-21 15:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

IC設(shè)計知識點:一種簡單超時機制

1、超時判斷機制

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

如下圖,當(dāng)master發(fā)起mem讀請求后,收到讀返回數(shù)據(jù)時,進(jìn)行超時判斷,如果超時,則數(shù)據(jù)丟棄,如果沒有超時,則數(shù)據(jù)正常接收。

2、一種簡單的超時機制

如果在數(shù)據(jù)發(fā)送過程中,發(fā)送者向接收者發(fā)送數(shù)據(jù),通常需要接收者通知發(fā)送者自身是否可以接收數(shù)據(jù)

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

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

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

步驟2:當(dāng)master收到讀返回數(shù)據(jù)時,以req_id作為地址從ram中讀取data,記作clk_cnt_record

步驟3:提取當(dāng)前時刻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,則認(rèn)為不超時。

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

3、特點說明

優(yōu)點:此類設(shè)計比較簡單,所需的邏輯資源較少,并且可以調(diào)節(jié)超時時間精度。

缺點:

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

2.沒有讀返回數(shù)據(jù)時,無法判斷是否超時。

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

1、采用int實現(xiàn)不同信號賦值的循環(huán)

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

直接采用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實現(xiàn)同一個信號賦值的循環(huán)

下圖所示,采用for(int*)類型格式實現(xiàn)了一個16mux1的循環(huán)賦值語句,實現(xiàn)不同條件一下,對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循環(huán)語句實現(xiàn)了如下的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會報語法錯誤。

審核編輯 :李倩


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

    關(guān)注

    8

    文章

    7339

    瀏覽量

    94831
  • IC設(shè)計
    +關(guān)注

    關(guān)注

    38

    文章

    1373

    瀏覽量

    108332
  • 機制
    +關(guān)注

    關(guān)注

    0

    文章

    24

    瀏覽量

    10031

原文標(biāo)題:IC知識點:超時機制、verilog語法

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

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

掃碼添加小助手

加入工程師交流群

    評論

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

    一種基于電壓監(jiān)控器與內(nèi)置自檢機制的汽車攝像頭功能安全設(shè)計方法

    本期,為大家?guī)淼氖恰对诠δ馨踩珣?yīng)用中使用電壓監(jiān)控器監(jiān)控電壓軌》,介紹了一種基于電壓監(jiān)控器與內(nèi)置自檢機制的汽車攝像頭功能安全設(shè)計方法,以解決電壓軌故障導(dǎo)致的潛在失效、未被及時發(fā)現(xiàn)并轉(zhuǎn)化為危險的系統(tǒng)性問題。
    的頭像 發(fā)表于 03-13 09:19 ?3105次閱讀
    <b class='flag-5'>一種</b>基于電壓監(jiān)控器與內(nèi)置自檢<b class='flag-5'>機制</b>的汽車攝像頭功能安全設(shè)計方法

    【「Linux 設(shè)備驅(qū)動開發(fā)(第 2 版)」閱讀體驗】+讀內(nèi)核處理的核心輔助函數(shù)

    上周收到《Linux 設(shè)備驅(qū)動開發(fā)(第 2 版)》書籍,這是本介紹Linux內(nèi)核開發(fā)的指導(dǎo)性書籍。全面了解Linux內(nèi)核所提供的些接口函數(shù),是位Linux設(shè)備驅(qū)動開發(fā)從業(yè)者所必備的知識點
    發(fā)表于 01-10 22:08

    燒錄芯片與IC復(fù)制是回事嗎?深度解析芯片燒錄原理

    的加密機制(如熔斷熔絲),該機制允許授權(quán)寫入但阻止非法讀取,從而保護(hù)知識產(chǎn)權(quán)。旨在為工程師在量產(chǎn)和選型時提供清晰的技術(shù)與法律邊界認(rèn)知。
    的頭像 發(fā)表于 01-06 13:12 ?365次閱讀

    模擬電路入門的知識點

    的其它參數(shù)不變,三極管的β增加,則IBQ增大,ICQ增大,UCEQ減小。 19、三極管的三個工作區(qū)域是截止,飽和,放大。集成運算放大器是一種采用直接耦合方式的放大電路。 20、某放大電路中的三極管,在
    發(fā)表于 12-05 08:21

    如何配置電能質(zhì)量在線監(jiān)測裝置的通信超時參數(shù)?

    配置電能質(zhì)量在線監(jiān)測裝置的通信超時參數(shù)需結(jié)合協(xié)議類型、傳輸介質(zhì)、應(yīng)用場景及設(shè)備特性,通過分層次設(shè)置與動態(tài)優(yōu)化實現(xiàn)可靠性與實時性的平衡。以下為系統(tǒng)性配置方案: 、協(xié)議層核心參數(shù)配置 1.
    的頭像 發(fā)表于 11-05 17:57 ?1604次閱讀

    電能質(zhì)量在線監(jiān)測裝置通信超時會重連嗎?

    維度展開分析: 、通信重連的核心技術(shù)機制 1. 協(xié)議層重傳與超時管理 Modbus 協(xié)議 :支持超時重傳 3 次(默認(rèn)配置),重連間隔可通過參數(shù)設(shè)置(如 ABB PQFA 系列支持
    的頭像 發(fā)表于 11-05 17:55 ?1478次閱讀

    同步整流IC U7606的開通關(guān)斷機制

    同步整流ic的開通關(guān)斷機制核心依賴于漏源電壓的精確檢測,以實現(xiàn)高效整流并避免共通故障等風(fēng)險?。其電壓關(guān)系具體體現(xiàn)在開通和關(guān)斷閾值的設(shè)計上,確保MOSFET在適當(dāng)時機導(dǎo)通或截止,從而取代傳統(tǒng)二極管以降低損耗。?
    的頭像 發(fā)表于 08-26 10:22 ?886次閱讀
    同步整流<b class='flag-5'>IC</b> U7606的開通關(guān)斷<b class='flag-5'>機制</b>

    文詳解線性霍爾IC

    全面認(rèn)知·線性霍爾IC 線性霍爾IC,是一種rail to rail的模擬輸出傳感器,后端微控制器處理起來簡單方便,因此與霍爾IC
    的頭像 發(fā)表于 07-24 17:59 ?2418次閱讀
    <b class='flag-5'>一</b>文詳解線性霍爾<b class='flag-5'>IC</b>

    250IC功放的電路圖

    250IC功放的電路圖,部分資料內(nèi)容截?。? 純分享貼,有需要可以直接下載附件獲取完整資料! (如果內(nèi)容有幫助可以關(guān)注、贊、評論支持下哦~)
    發(fā)表于 05-20 15:19

    C51單片機及C語言知識點必備秘籍

    單片機關(guān)鍵知識點覽: 系列 1:單片機簡敘 2:單片機引腳介紹 3:單片機存儲器結(jié)構(gòu) 4:第個單片機小程序 5:單片機延時程序分析 6:單片機并行口結(jié)構(gòu) 7:單片機
    發(fā)表于 05-15 14:00

    電機選型計算公式與知識點匯總

    純分享帖,需要者可點擊附件獲取完整資料~~~*附件:電機選型計算公式與知識點匯總.pdf 【免責(zé)聲明】內(nèi)容轉(zhuǎn)自今日電機,因轉(zhuǎn)載眾多,無法確認(rèn)真正原始作者,故僅標(biāo)明轉(zhuǎn)載來源。版權(quán)歸原出處所有,純分享帖,侵權(quán)請聯(lián)系刪除內(nèi)容以保證您的權(quán)益。
    發(fā)表于 04-29 16:10

    嵌入式硬件雜談:推挽、開漏、高阻態(tài)、上拉電阻

    對于嵌入式硬件這個龐大的知識體系而言,太多離散的知識點很容易疏漏,因此對于這些容易忘記甚至不明白的知識點做成個梳理,供大家參考以及學(xué)習(xí),本文主要針對推挽、開漏、高阻態(tài)、上拉電阻這些
    的頭像 發(fā)表于 04-17 19:31 ?2162次閱讀
    嵌入式硬件雜談:推挽、開漏、高阻態(tài)、上拉電阻

    MCUX SDK FreeRTOS I2C驅(qū)動程序中沒有超時選項是怎么回事?

    其標(biāo)記為不良,引發(fā)警告并排除傳感器。 假設(shè)沒有其他我沒有看到的超時機制,那么有個適當(dāng)?shù)?b class='flag-5'>超時選項將非常有用。沒有 VPN,就無法探測可能存在也可能不存在的外圍設(shè)備,也無法處理故障。這是提出功能請求的合適位置嗎?
    發(fā)表于 04-11 08:05

    一種基于、線和消失點特征的單目SLAM系統(tǒng)設(shè)計

    本文提出了一種穩(wěn)健的單目視覺SLAM系統(tǒng),該系統(tǒng)同時利用、線和消失點特征來進(jìn)行精確的相機位姿估計和地圖構(gòu)建,有效解決了傳統(tǒng)基于特征的SLAM的局限性。
    的頭像 發(fā)表于 03-21 17:07 ?1066次閱讀
    <b class='flag-5'>一種</b>基于<b class='flag-5'>點</b>、線和消失點特征的單目SLAM系統(tǒng)設(shè)計

    電氣工程師必知必會的100個電?知識點分享

    電??程師也都是從電?學(xué)徒??步?步積累成長起來的。積跬步?千?,匯細(xì)流成江海!朋友們,現(xiàn)在讓我們??個捷徑,花半個?時的時間來積累100個必知必會的電?知識點吧!
    的頭像 發(fā)表于 03-14 11:05 ?1880次閱讀