yrun是處芯積律自研的regression腳本,yrun都有哪些東西呢?
1.通過 cmpfile 將不同版本的compile需求集中管理
2. 通過 testfile 將test集中起來管理。
3.可以通過 yrun 跑 testfile里面的test 的regression
yrun -testfile soc_test
4. 可以通過ycheck 檢查 歷史regression的狀態(tài)
中間狀態(tài)
跑完狀態(tài)
更多內(nèi)容!請看下面項目介紹
SOC3.0 項目都有哪些東西:
模塊升級
SOC V3.0在2.0項目的基礎上增加了Jtag、iCache、CNN 和PWM模塊。
Jtag:
Jtag是聯(lián)合測試工作組(Joint Test Action Group)的簡稱,目前最主要用在集成電路的測試,也可以通過JTAG結(jié)合DM(Debug Module) 實現(xiàn)芯片的調(diào)試,為軟件開發(fā)者提供了一個芯片內(nèi)部的后門。
Jtag 狀態(tài)機
DM(Debug module):
DM 稱為調(diào)試模塊,該電路集成在芯片內(nèi)部,方便開發(fā)者編程、調(diào)試、異常處理等功能,已經(jīng)是芯片不可或缺的電路。
下圖是RISCV的debug module。
上述JTAG和DM在我們SOC V3.0里面已經(jīng)集成。
以下是我們在環(huán)境中跑的test的部分波形:
CNN:
CNN是Convolutional neural network (CNN)的簡稱,在圖像識別、語音識別、大語言模型中廣泛的使用。
CNN的應用
典型的CNN結(jié)構(gòu)由卷積層、池化層、連接層組成。
典型的CNN網(wǎng)絡
在我們的SOC V3.0里面,我們集成了一個簡單的CNN網(wǎng)絡。
其中包含卷積運算、池化運算、線性運算。
卷積運算
PWM:
PWM是Pulse Width Modulation的簡稱,在燈光調(diào)節(jié)、電機控制等各個領域有廣泛的應用。
PWM控制不同占空比
在我們SOC V3.0中,我們集成了PWM模塊。
下面是我們PWM模塊跑出來的波形。
工具升級
在SOC V3.0的環(huán)境上,我們研發(fā)了yrun 、ycheck、ygpt 等腳本工具。
yrun:
yrun支持跑編譯、仿真、回歸等多個功能。
?
詳細功能介紹:
簡潔的test 添加機制;
simulation和compile 分開管理;
支持只編譯模式;
支持只simulation模式;
支持特定的 test list的 regression;
支持同時跑不同的regression;
支持 simulation 進行時在終端上打印log;
支持simulation 在后臺運行;
支持特定 test list 中 特定test的 simulation;
支持 fail test的rerun機制;
支持中間查看特定regression的運行狀態(tài);
支持將regression的結(jié)果通過mail的方式發(fā)給指定的用戶;
支持將regression的fail test的error 顯示在regression的結(jié)果中;
支持用戶定義FPGA simulation,Gate lever simulation,UPF simulation等。
在SOC V3.0里面,我們提供了yrun使用的demo,用戶可以根據(jù)自己的需要將yrun應用到自己的IP和SOC驗證環(huán)境中。
注意?。?! 在我們提供的demo里面,yrun的源代碼是提供給大家的。SOC V3.0驗證環(huán)境里面的yrun由于做了更多的開發(fā),我們對部分代碼進行了加密處理。
ycheck: ycheck 是用于檢查regression的狀態(tài)使用。
使用方法如下:
ygpt: ygpt是將GPT引入到芯片的研發(fā)中,通過GPT讀取代碼,用戶可以根據(jù)自己需求向GPT獲取信息。例如:制定 testplan,寫 testbench 等等。
下面是ygpt 使用的案例:
驗證環(huán)境升級
目前我們SOC V3.0 包含了 :
基于UVM的IP驗證方法學
基于C的SOC驗證方法學
基于UVM的SOC驗證方法學
基于Formal的驗證方法學
下面我們詳細介紹: 基于UVM的IP驗證方法學 在我們?nèi)粘5腎P驗證中,IP分為10大類,他們是:
通信IP:如USB、Ethernet、PCI Express等。
存儲IP:如存儲控制器、閃存控制器等。
數(shù)字信號處理IP:如圖像處理等。
模擬IP:如模擬-數(shù)字轉(zhuǎn)換器(ADC)和數(shù)字-模擬轉(zhuǎn)換器(DAC)等。
安全IP:如加密引擎、隨機數(shù)生成器等。
時鐘IP:包括時鐘生成器和分配網(wǎng)絡,用于同步和時序控制。
外設IP:包括各種外設,如UART、SPI、I2C等,用于與其他設備進行通信。
自定義IP:一些芯片制造商或設計團隊可能會開發(fā)自定義的IP。
在這些IP里面,我們根據(jù)驗證采用的不同策略可以將其歸為四大類:
第一類 : 協(xié)議類IP,如USB,UART,時鐘IP等;
第二類 : 算法類IP,如ISP,CNN等;
第三類 : 處理器IP,如CPU,GPU等;
第四類 : 模擬IP,如ADC,DAC等。
在我們SOC V3.0 項目中,我們開發(fā)了協(xié)議類IP的驗證環(huán)境和算法類IP的驗證環(huán)境。
協(xié)議類IP 驗證環(huán)境—QSPI
QSPI 采用UVM驗證即可,其驗證框架如下
QSPI驗證環(huán)境
QSPI 驗證環(huán)境包括APB Agent,Register Model,Register Adapter, QSPI Scoreboard,QSPI Monitor,Sequencer 等。
算法類IP 驗證環(huán)境—ISP
ISP 采用UVM+C的驗證方式,UVM和C的交互有多種方式,在ISP環(huán)境中,我們選擇將C編譯成可執(zhí)行文件,然后通過UVM環(huán)境調(diào)用可執(zhí)行文件生成帶有預期的數(shù)據(jù)的txt文件,UVM 環(huán)境通過讀取預期數(shù)據(jù)的txt文件與觀測到值進行比對,從而判斷設計的正確性。
ISP驗證環(huán)境
算法類IP 驗證環(huán)境—CNN
CNN也是采用UVM+C的驗證方式,不同于ISP,在CNN環(huán)境中,我們采用DPI的方式調(diào)用C文件,scorboard在拿到觀測數(shù)據(jù)之后,直接通過DPI 調(diào)用 C函數(shù)獲取預期的值。
CNN驗證環(huán)境
基于C的SOC驗證方法學
SOC環(huán)境集成了CPU,為了讓CPU能夠跑起來,一個簡單的做法是讓CPU直接吃指令執(zhí)行,但是純粹的機器指令可讀性很差。采用C寫test,然后用工具鏈編譯成機器指令給CPU執(zhí)行是一種常規(guī)的操作。 在SOC V3.0中,我們提供基于C的SOC驗證環(huán)境。
基于C的SOC驗證環(huán)境 我們提供了包括UART,I2C,SPI,CNN,ISP在內(nèi)的諸多IP的C test。用戶可以通過仿真了解C的編譯和執(zhí)行過程,對芯片的運行有個更加系統(tǒng)的理解。
基于UVM的SOC驗證方法學
在SOC環(huán)境中,采用C生成機器碼讓CPU執(zhí)行的過程會占用大量的仿真時間,特別是一些復雜的大芯片,另外考慮到IP驗證環(huán)境開發(fā)過類似的test,很多公司希望在SOC環(huán)境中能夠復用這些test,那么一套基于UVM的SOC驗證環(huán)境就非常有必要。
在我們SOC V3.0環(huán)境中,我們集成了基于UVM的SOC驗證環(huán)境,用戶在拿到我們代碼后,可以通過仿真了解了UVM是和如何SOC協(xié)同完成SOC驗證。
基于UVM的SOC驗證環(huán)境
基于Formal的驗證方法學
采用simulation 只能打到部分的場景,這個過程不免有些bug遺漏?;跀?shù)學推算的Formal 可以完美的解決這個問題。
? ?
在我們SOC V3.0中我們集成了一個基本的Formal驗證環(huán)境,方便大家理解Formal驗證的思想。
完善設計流程
芯片的前端設計涉及到語法檢查,綜合以及形式驗證。在SOC V3.0 里面,我們提供了語法檢查,綜合以及形式驗證的腳本及相關(guān)的工藝庫文件。
綜合過程
形式驗證
我們還做了哪些事情?
除上述之外,我們還在SOC V3.0中集成了SOC V1.1的改動:
補全了I2C_DEV 和UART_DEV;
2. 實現(xiàn)C代碼中字符串打印;
3. 完善的QSPI驗證計劃,驗證用例和coverage數(shù)據(jù);
4. 提供了QSPI 和CNN的問題代碼,讓大家在debug中理解項目。
審核編輯:劉清
-
集成電路
+關(guān)注
關(guān)注
5388文章
11554瀏覽量
361943 -
PWM
+關(guān)注
關(guān)注
114文章
5190瀏覽量
214057 -
soc
+關(guān)注
關(guān)注
38文章
4169瀏覽量
218350 -
JTAG
+關(guān)注
關(guān)注
6文章
400瀏覽量
71701 -
狀態(tài)機
+關(guān)注
關(guān)注
2文章
492瀏覽量
27550 -
jtag接口
+關(guān)注
關(guān)注
0文章
34瀏覽量
13662 -
PWM模塊
+關(guān)注
關(guān)注
0文章
14瀏覽量
9437
原文標題:SOC3.0 regression腳本 yrun 有哪些東西?
文章出處:【微信號:處芯積律,微信公眾號:處芯積律】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論