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)

更多內容!請看下面項目介紹
SOC3.0 項目都有哪些東西:

模塊升級
SOC V3.0在2.0項目的基礎上增加了Jtag、iCache、CNN 和PWM模塊。
Jtag:
Jtag是聯(lián)合測試工作組(Joint Test Action Group)的簡稱,目前最主要用在集成電路的測試,也可以通過JTAG結合DM(Debug Module) 實現(xiàn)芯片的調試,為軟件開發(fā)者提供了一個芯片內部的后門。

Jtag 狀態(tài)機
DM(Debug module):
DM 稱為調試模塊,該電路集成在芯片內部,方便開發(fā)者編程、調試、異常處理等功能,已經是芯片不可或缺的電路。
下圖是RISCV的debug module。

上述JTAG和DM在我們SOC V3.0里面已經集成。
以下是我們在環(huán)境中跑的test的部分波形:

CNN:
CNN是Convolutional neural network (CNN)的簡稱,在圖像識別、語音識別、大語言模型中廣泛的使用。

CNN的應用
典型的CNN結構由卷積層、池化層、連接層組成。

典型的CNN網(wǎng)絡
在我們的SOC V3.0里面,我們集成了一個簡單的CNN網(wǎng)絡。
其中包含卷積運算、池化運算、線性運算。

卷積運算
PWM:
PWM是Pulse Width Modulation的簡稱,在燈光調節(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的結果通過mail的方式發(fā)給指定的用戶;
支持將regression的fail test的error 顯示在regression的結果中;
支持用戶定義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驗證方法學 在我們日常的IP驗證中,IP分為10大類,他們是:
通信IP:如USB、Ethernet、PCI Express等。
存儲IP:如存儲控制器、閃存控制器等。
數(shù)字信號處理IP:如圖像處理等。
模擬IP:如模擬-數(shù)字轉換器(ADC)和數(shù)字-模擬轉換器(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)境調用可執(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的方式調用C文件,scorboard在拿到觀測數(shù)據(jù)之后,直接通過DPI 調用 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在內的諸多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 里面,我們提供了語法檢查,綜合以及形式驗證的腳本及相關的工藝庫文件。

綜合過程

形式驗證
我們還做了哪些事情?
除上述之外,我們還在SOC V3.0中集成了SOC V1.1的改動:
補全了I2C_DEV 和UART_DEV;

2. 實現(xiàn)C代碼中字符串打?。?/p>


3. 完善的QSPI驗證計劃,驗證用例和coverage數(shù)據(jù);

4. 提供了QSPI 和CNN的問題代碼,讓大家在debug中理解項目。

審核編輯:劉清
-
集成電路
+關注
關注
5445文章
12449瀏覽量
372484 -
PWM
+關注
關注
116文章
5841瀏覽量
223631 -
soc
+關注
關注
38文章
4511瀏覽量
227474 -
JTAG
+關注
關注
6文章
411瀏覽量
74575 -
狀態(tài)機
+關注
關注
2文章
497瀏覽量
28822 -
jtag接口
+關注
關注
0文章
35瀏覽量
14004 -
PWM模塊
+關注
關注
0文章
14瀏覽量
9649
原文標題:SOC3.0 regression腳本 yrun 有哪些東西?
文章出處:【微信號:處芯積律,微信公眾號:處芯積律】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
logistic regression代碼與調用sklearn庫中的logistic regression代碼
Multivariate Linear Regression多變量線性回歸
BI軟件的ETL用開源的好,還是自研的好?
蘋果自研射頻芯片?OPPO自研NPU芯片!芯片的國產替代需要跨越三個誤區(qū)!
華為自研SSD的歷史變革
繼蘋果使用自研ARM架構處理器后,三星將在電腦采用ARM自研芯片
OPPO放棄自研芯片,終止哲庫業(yè)務
自研MACSec與88E1548P對通測試
為什么要學習TTL腳本

自研的regression腳本yrun都有哪些東西呢?
評論