一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

DDR VIP模型的無縫快速初始化

星星科技指導(dǎo)員 ? 來源:synopsys ? 作者:Nasib Naser ? 2023-05-29 09:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

DDR 驗證是任何 SoC 中最關(guān)鍵和最復(fù)雜的任務(wù)之一,因為它涉及位于 DUT 內(nèi)部的控制器和位于板載 DUT 外部的外部 DDR 存儲器。在這里,我們將討論 DDR VIP 模型的快速初始化。

根據(jù) JEDEC 標準 JESD79-4 第 3.3.1 節(jié),RESET_n需要至少維護 200us。在模擬時間中,此值很長。此外,如果用戶的測試平臺違反此時間,Memory VIP 會將其標記為UVM_ERROR并失敗模擬。即使此沖突被標記為錯誤,也不會影響 VIP 模型的行為。

pYYBAGRz_PuAQeEQAABW5boHlvg960.png

有許多方法可以繞過此違規(guī)行為。在本博客中,我們將討論其中一種方式。

Synopsys Memory VIP 具有稱為快速初始化的初始化功能,也稱為按比例縮小初始化。此功能的目的是允許控制覆蓋初始化參數(shù)以加快初始化過程。新值(無論是默認設(shè)置還是由用戶自定義)都可以縮短初始化時間,而不會斷言任何檢查器沖突。此外,它不會影響模型的初始化行為。此功能僅適用于前門訪問 - 與后門訪問相比。我們將在后續(xù)的博客文章中討論內(nèi)存 VIP 訪問的類型。

有兩種方法可以縮小初始化參數(shù)。一個是使用默認值設(shè)置的,另一個是自定義設(shè)置的。

根據(jù)標準,以下是預(yù)期值:

min_cke_high_after_reset_deasserted_in_pu_and_res_init_time_ps = 500000000
min_reset_pulse_width_in_pu_ps = 200000000

使用默認方法,可以從配置對象的build_phase調(diào)用函數(shù)“set_scaled_initialization_timings()”。該函數(shù)調(diào)用會將計時參數(shù)縮小到下面分配的值,而不會觸發(fā)檢查器沖突:

min_cke_high_after_reset_deasserted_in_pu_and_res_init_time_ps = 500000
min_reset_pulse_width_in_pu_ps = 200000

要自定義值,用戶可以設(shè)置自己的自定義值,然后設(shè)置標志“scaled_timing_flag”。VIP 將配置為用戶提供的值。因此:

對于分立器件:

// cfg handle of the svt_ddr_configuration class
// Pass the cfg to the DDR Discrete Device component by using // the config_db mechanism.
cfg.timing_cfg.min_cke_high_after_reset_deasserted_in_pu_and_res_init_time_ps = 500000;
cfg.timing_cfg.min_reset_pulse_width_in_pu_ps = 200000;
cfg.timing_cfg. tPW_RESET_ps = 100000;
cfg.timing_cfg.scaled_timing_flag = 1;

對于內(nèi)存型號:

// dimm_cfg is handle of svt_ddr_dimm_configuration
foreach(dimm_cfg.data_lane_cfg[i]) begin
foreach(dimm_cfg.data_lane_cfg[i].rank_cfg[j]) begin
dimm_cfg.data_lane_cfg[i].rank_cfg[j].timing_cfg.min_cke_high_after_reset_deasserted_in_pu_and_res_init_time_ps = 500000;
dimm_cfg.data_lane_cfg[i].rank_cfg[j].timing_cfg.min_reset_pulse_width_in_pu_ps = 200000;
dimm_cfg.data_lane_cfg[i].rank_cfg[j].timing_cfg.tPW_RESET_ps = 100000;
dimm_cfg.data_lane_cfg[i].rank_cfg[j].timing_cfg.scaled_timing_flag = 1;
end
end

審核編輯:郭婷

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

    關(guān)注

    114

    文章

    17088

    瀏覽量

    184074
  • 存儲器
    +關(guān)注

    關(guān)注

    38

    文章

    7648

    瀏覽量

    167235
  • DDR
    DDR
    +關(guān)注

    關(guān)注

    11

    文章

    732

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    DDR3初始化問題

    成800MHz的時候DDR出現(xiàn)錯誤,我在程序和表格中都對頻率做了修改。 對于DDR3的初始化和配置還是了解的不夠,還望有人能夠指教一下。
    發(fā)表于 06-21 12:48

    6657的DDR3初始化不成功

    最近我在調(diào)試自制6657板子的DDR3初始化,發(fā)現(xiàn)一個很奇怪的現(xiàn)象,百思不得其解,我分別用GEL和KEYSTONE DDR3 INIT 在6657EVM開發(fā)板上做DDR3
    發(fā)表于 01-08 10:19

    如何從.mem文件初始化加密的ddr4內(nèi)存模型?

    大家好,有誰知道如何從.mem文件初始化加密的ddr4內(nèi)存模型?在參考fromxapp1180項目時,發(fā)現(xiàn)使用以下命令初始化ddr3內(nèi)存:
    發(fā)表于 05-11 09:17

    初始化封裝

    初始化封裝您可以在 Mask Editor 的 Initialization 窗格中添加 MATLAB? 代碼以初始化封裝模塊。Simulink? 將執(zhí)行這些初始化命令以便在關(guān)鍵時刻(如模型
    發(fā)表于 08-27 07:17

    手機模塊初始化向?qū)?/a>

    手機模塊初始化向?qū)?為了剛好的對手機模塊進行初始化,所以把最基本的向?qū)懴聛?本向?qū)нm用于本公司的西門子TC35I和華為GT9000模塊。一、在初始化手機模塊前,請先確定DT
    發(fā)表于 09-18 09:41 ?17次下載

    RDA1846S初始化設(shè)置

    RDA1846S初始化設(shè)置RDA1846S初始化設(shè)置RDA1846S初始化設(shè)置
    發(fā)表于 01-15 17:08 ?0次下載

    UCOS_III_配置與初始化

    UCOS_III_配置與初始化
    發(fā)表于 12-20 22:53 ?5次下載

    HX711初始化程序

    這是HX711的初始化程序
    發(fā)表于 02-08 01:51 ?92次下載

    ds1302時鐘芯片初始化,自動決定DS1302是否需要初始化程序

    ds1302芯片時鐘芯片大家都在問到底需要不需要初始化?這篇文章將會給大家一個程序,可以自動決定DS1302是否需要初始化。
    發(fā)表于 10-19 19:19 ?8976次閱讀

    如何讓KeyStone DDR3接口初始化的詳細資料概述

    只要遵循適當?shù)牟襟E,對KeyStone DSPs的DDR3 DRAM控制器的初始化是直接的。然而,如果省略了某些步驟,或者如果以錯誤的順序執(zhí)行一些序列敏感的步驟,DDR3操作將是不可預(yù)測的。
    發(fā)表于 04-28 11:09 ?10次下載
    如何讓KeyStone <b class='flag-5'>DDR</b>3接口<b class='flag-5'>初始化</b>的詳細資料概述

    8253初始化程序分享_8253應(yīng)用案例

    本文首先介紹了8253概念及8253各通道的工作方式,其次詳細介紹了8253初始化要求及編程,最后用一個例子介紹了8253的初始化程序。
    發(fā)表于 05-23 15:52 ?2.3w次閱讀
    8253<b class='flag-5'>初始化</b>程序分享_8253應(yīng)用案例

    在51平臺下初始化文件的引入導(dǎo)致全局變量無法初始化的問題如何解決

    本文檔的主要內(nèi)容詳細介紹的是在51平臺下初始化文件的引入導(dǎo)致全局變量無法初始化的問題如何解決。
    發(fā)表于 08-20 17:31 ?0次下載
    在51平臺下<b class='flag-5'>初始化</b>文件的引入導(dǎo)致全局變量無法<b class='flag-5'>初始化</b>的問題如何解決

    C++之初始化列表學習的總結(jié)

    類中可以使用初始化列表對成員進行初始化。
    的頭像 發(fā)表于 12-24 17:39 ?1129次閱讀

    跳過DDR VIP模型初始化

    使用 Synopsys 內(nèi)存 VIP 的 Skip 初始化功能可確保模型處于空閑狀態(tài),從而繞過重置過程的要求。在該狀態(tài)下,VIP 已準備好接受 REF、MRS 和 ACT 等命令。允許
    的頭像 發(fā)表于 05-26 18:02 ?2177次閱讀
    跳過<b class='flag-5'>DDR</b> <b class='flag-5'>VIP</b><b class='flag-5'>模型</b>的<b class='flag-5'>初始化</b>

    DDR4-初始化、訓練和校準

    上電與初始化是由一系列精心設(shè)計的步驟組成的序列(sequence)。一般來說,在系統(tǒng)上電之后,ASIC/FPGA/處理器中的 DDR 控制器會被從復(fù)位狀態(tài)中釋放,自動執(zhí)行上電與初始化序列。下文中列舉了一個超簡化的控制器所做的工作
    的頭像 發(fā)表于 07-03 11:48 ?8830次閱讀
    <b class='flag-5'>DDR</b>4-<b class='flag-5'>初始化</b>、訓練和校準