<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 利用可移植性激勵(lì)為軟件驅(qū)動(dòng)的驗(yàn)證鋪平道路

          利用可移植性激勵(lì)為軟件驅(qū)動(dòng)的驗(yàn)證鋪平道路

          作者: 時(shí)間:2020-02-06 來(lái)源:電子產(chǎn)品世界 收藏

          簡(jiǎn)介

          本文引用地址:http://www.ex-cimer.com/article/202002/409646.htm

          設(shè)計(jì)正變得日益復(fù)雜,越來(lái)越多的設(shè)計(jì)包含了,甚至經(jīng)常包含多個(gè)。由于是設(shè)計(jì)的不可分割的一部分,因此我們必須驗(yàn)證在處理器上運(yùn)行的軟件與設(shè)計(jì)的其他部分之間的交互,這一點(diǎn)非常重要。軟件對(duì)當(dāng)今系統(tǒng)的運(yùn)作至關(guān)重要,因而在實(shí)驗(yàn)室中調(diào)通原型芯片之前,對(duì)硬件/軟件邊界的驗(yàn)證和確認(rèn)不容出現(xiàn)任何延遲。至少,驗(yàn)證團(tuán)隊(duì)必須完成這項(xiàng)任務(wù),并且自行承擔(dān)風(fēng)險(xiǎn)。相信我們都聽(tīng)說(shuō)過(guò)一些嚴(yán)重錯(cuò)誤的場(chǎng)景,例如,團(tuán)隊(duì)在實(shí)驗(yàn)室中發(fā)現(xiàn),處理器的總線與設(shè)計(jì)的連接順序接反了,或者處理器在低功耗模式下再無(wú)法加電啟動(dòng)。

          硬件/軟件逐步細(xì)化

          一個(gè)顯而易見(jiàn)的解決方案就是在傳統(tǒng)的驗(yàn)證流程中,圍繞硬件/軟件邊界進(jìn)行更多驗(yàn)證。但是,我們無(wú)法直接從以硬件為中心的驗(yàn)證,轉(zhuǎn)變?yōu)閲L試運(yùn)行整個(gè)應(yīng)用程序堆棧。嘗試運(yùn)行大量的軟件而導(dǎo)致的復(fù)雜性及生成的大量調(diào)試日志,讓追蹤簡(jiǎn)單錯(cuò)誤也會(huì)變得非常復(fù)雜。一種高效的方法是在最簡(jiǎn)單的驗(yàn)證環(huán)境中進(jìn)行所有可行的驗(yàn)證,該環(huán)境讓我們能夠執(zhí)行目標(biāo)功能,并且具有最高的可見(jiàn)性,最大程度減少與測(cè)試意圖不相關(guān)的工作。在本文中,我們將討論涉及到寄存器訪問(wèn)驗(yàn)證的簡(jiǎn)單示例。驗(yàn)證處理器是否能夠正確寫(xiě)入和讀取 IP 寄存器,是非常關(guān)鍵的集成驗(yàn)證任務(wù)。即便是簡(jiǎn)單的 SoC,也包含數(shù)以百計(jì)的寄存器,因而創(chuàng)建測(cè)試來(lái)驗(yàn)證處理器是否能夠讀取和寫(xiě)入所有寄存器將會(huì)是非常耗時(shí)的工作。圖 1 顯示了一個(gè)簡(jiǎn)單的 SoC,它搭載了閃存、DDR 存儲(chǔ)器、緊耦合存儲(chǔ)器以及  UART  和  DMA  引擎,引擎的寄存器通過(guò)低速外設(shè)總線來(lái)訪問(wèn)。雖然最終目標(biāo)是驗(yàn)證在處理器上運(yùn)行的代碼是否能夠訪問(wèn)  IP  寄存器,但我們可以首先從基于  UVM  的驗(yàn)證開(kāi)始,更加集中驗(yàn)證某一部分。在率先驗(yàn)證UVM 中的存儲(chǔ)器子系統(tǒng)后,我們?cè)谇度胧教幚砥魃险{(diào)通軟件時(shí)將更有信心。使用 的 Questa inFact 可移植性激勵(lì)工具,可讓我們將同一測(cè)試意圖重定向到UVM 和嵌入式軟件環(huán)境,從而節(jié)省測(cè)試開(kāi)發(fā)時(shí)間。

          QQ截圖20200206091420.png

          圖 1 - 簡(jiǎn)單的 SoC

          使用圖表描述寄存器

          Questa  inFact  使用了基于圖表的聲明輸入描述,可提供約束編程的功能,增強(qiáng)以迭代方式指定決策的能力。在指定訪問(wèn)寄存器的約束方面,以迭代方式進(jìn)行決策的能力非常有幫助。

          首先,我們要捕獲存儲(chǔ)器測(cè)試操作的核心屬性:地址、訪問(wèn)大小、寫(xiě)入數(shù)據(jù)、寫(xiě)入掩碼。寫(xiě)入掩碼指定了在進(jìn)行檢查時(shí)應(yīng)該讀取/寫(xiě)入哪些位,而必須忽略哪些位。

          Action 是指要在目標(biāo)驗(yàn)證環(huán)境中執(zhí)行的操作單位。在下文中,我們將了解更改  body  action  的實(shí)現(xiàn)如何讓我們輕松地將寄存器訪問(wèn)測(cè)試意圖重定向到UVM 和嵌入式軟件環(huán)境。

          圖  2  顯示的寄存器訪問(wèn)描述符不包括系統(tǒng)中的任何IP 詳細(xì)信息。接下來(lái),我們需要添加這些限制。我們的  DMA  引擎(來(lái)自  opencores.org  的  Wishbone  DMA Core)包括一系列的核心寄存器,還有一組通道描述符寄存器。使用基于圖表的描述,我們能夠以迭代方式描述寄存器地址。

          圖 3 中的圖形描述顯示了選擇 DMA 寄存器地址的過(guò)程:

           選擇核心寄存器或通道控制寄存器陣列(dma_reg)

           如果選擇通道控制寄存器

          ——選擇哪個(gè)通道 (dma_ch)

          ——選擇哪個(gè)通道寄存器被作為目標(biāo)(dma_ch_reg)

          QQ截圖20200206091945.png

          圖 2 - 核心寄存器訪問(wèn)結(jié)構(gòu)體

          QQ截圖20200206091955.png

          圖 3 - DMA 寄存器地址選擇

          QQ截圖20200206092010.png

          圖 4 - DMA 寄存器地址選擇規(guī)則

          圖 4 顯示了此過(guò)程的文字描述

          …未完待續(xù)…

          點(diǎn)擊免費(fèi)下載完整白皮書(shū)>>



          關(guān)鍵詞: Mentor 處理器

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();