作為IC設(shè)計(jì)人員,熟練掌握數(shù)字前端語法檢查工具Spyglass的重要性不言而喻,本文講解景芯SoC的Spyglass檢查。
啟動(dòng)Spyglass軟件:spyglass &
點(diǎn)擊左邊Add File(s):
將.v文件通過rtl.f統(tǒng)一添加,如下圖,點(diǎn)擊OK:
或者通過命令添加:
sg_shell> read_file -type sourcelist mcu_rtl_for_sim.f
設(shè)置頂層,選中下圖左邊Set Options,手動(dòng)設(shè)置Value為digital_top.v,這里我們留一個(gè)bug,后面看得到。
或者通過命令添加:
sg_shell> set_option top digital_top.v
我們也可以默認(rèn)缺省頂層文件,此處,我們暫時(shí)不用remove_option top命令,注意剛才我們留了一個(gè)bug。
sg_shell> remove_option top
點(diǎn)擊Read Design,
選擇SynthesizeNetlist,在讀入設(shè)計(jì)的同時(shí)進(jìn)行綜合
點(diǎn)擊Run Design Read:
讀取完成發(fā)現(xiàn):
top 'digital_top.v' : Design unit not found in the design
bug來了,什么問題呢?找不到Design unit, 這是培訓(xùn)的同學(xué)經(jīng)常發(fā)生的錯(cuò)誤,頂層是指module名,不是module文件名。如下圖所示:
也就是說設(shè)置Top level Design Unit的value為DIGITAL_TOP, 而不是digital_top.v。
再次Run Read Design,如下圖,讀取成功。
接著,設(shè)置Goal Setup:
首先選中l(wèi)int,我們先看lint, 點(diǎn)擊Run Goal:
運(yùn)行得到結(jié)果如下,我們開始逐一解析錯(cuò)誤的原因,并給出RTL修改辦法,具體參見知識(shí)星球。
在看到一條條lint Warning信息后,怎么才能更清晰地知道warning的具體原因呢?告訴你一個(gè)好習(xí)慣!
Spyglass的Analyze Results默認(rèn)GUI界面如下,
我們通過View-> Windows -> Help Viewer 來查看SolvNet對(duì)每個(gè)RTL lint warning類型的解釋。
舉個(gè)例子:
W528 : A signal or variable is set but never read
W528是Warning類型,說一個(gè)信號(hào)或者變量沒有負(fù)載。
舉個(gè)例子:
信號(hào)bigbus在第一個(gè)assign statement中被賦值了256bit位寬,但是在第二個(gè)assign statement中,bigbus僅128 bits (2**(13-7+1) 或者 2**(6-0+1)) 會(huì)被選擇。因此,W528 的warning message就會(huì)出現(xiàn)。
module test1 (a, b); input [13:0] a; output [1:0] b; wire [255:0] bigbus; assignbigbus={{16{4'h0}},{16{4'h0}},{16{4'h0}},{16{4'h0}}}; assign b={bigbus[a[13:7]],bigbus[a[6:0]]}; endmodule
那么上面代碼應(yīng)該怎么修改才能避免這個(gè)warning message呢?答案參見全棧芯片工程師】知識(shí)星球。
【全網(wǎng)唯一】景芯SoC是一款低功耗ISP圖像處理SoC,采用低功耗RISC-V處理器,內(nèi)置ITCM SRAM、DTCM SRAM,集成包括MIPI、ISP、CNN、QSPI、UART、I2C、GPIO、百兆以太網(wǎng)等IP,采用SMIC40工藝設(shè)計(jì)流片。
培訓(xùn)數(shù)據(jù)包括SoC前端設(shè)計(jì)、DFT設(shè)計(jì)、低功耗UPF設(shè)計(jì)、布局布線,提供服務(wù)器供大家實(shí)踐!帶你從算法、前端、DFT到后端全流程參與SoC項(xiàng)目設(shè)計(jì)。更多內(nèi)容,請(qǐng)報(bào)名登錄服務(wù)器實(shí)踐,工程數(shù)據(jù)分割為如下三個(gè)部分。
一鍵式完成C代碼編譯、仿真、綜合、DFT插入、形式驗(yàn)證、布局布線、寄生參數(shù)抽取、PT分析、DRC/LVS、后仿真、形式驗(yàn)證、功耗分析等全流程。V1.0工程仿真如下。
SoC一鍵式執(zhí)行flow
MIPI設(shè)計(jì)
ISP圖像處理
dpc - 壞點(diǎn)校正
blc - 黑電平校正
bnr - 拜耳降噪
dgain - 數(shù)字增益
demosaic - 去馬賽克
wb - 白平衡增益
ccm - 色彩校正矩陣
csc - 色彩空間轉(zhuǎn)換 (基于整數(shù)優(yōu)化的RGB2YUV轉(zhuǎn)換公式)
gamma - Gamma校正 (對(duì)亮度基于查表的Gamma校正)
ee - 邊緣增強(qiáng)
stat_ae - 自動(dòng)曝光統(tǒng)計(jì)
stat_awb - 自動(dòng)白平衡統(tǒng)計(jì)
仿真結(jié)果:
CNN圖像識(shí)別
支持手寫數(shù)字的AI識(shí)別:
仿真結(jié)果:仿真識(shí)別上圖7、2、1、0、4、1、4、9
UPF低功耗設(shè)計(jì)
支持UPF低功耗設(shè)計(jì)(含DFT設(shè)計(jì)):
CPU啟動(dòng)指令分析
審核編輯:湯梓紅
-
IC設(shè)計(jì)
+關(guān)注
關(guān)注
38文章
1302瀏覽量
104304 -
soc
+關(guān)注
關(guān)注
38文章
4208瀏覽量
219139 -
命令
+關(guān)注
關(guān)注
5文章
697瀏覽量
22117
原文標(biāo)題:Spyglass檢查(一)
文章出處:【微信號(hào):全棧芯片工程師,微信公眾號(hào):全棧芯片工程師】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論