chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

高效的代碼校驗讓芯片開發(fā)周期左移

新思科技 ? 來源:新思科技 ? 作者:新思科技 ? 2022-06-07 10:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

專用集成電路(ASIC)的設(shè)計規(guī)模不斷擴大、復(fù)雜度不斷攀升,這對芯片開發(fā)者的能力和所使用的工具都提出了更高的要求。

在之前的文章中,我們探討過數(shù)十億門級ASIC所面臨的跨時鐘域(CDC)和跨復(fù)位域(RDC)挑戰(zhàn),今天我們將共同探討第三大挑戰(zhàn)──靜態(tài)代碼校驗。

高效的代碼校驗

讓芯片開發(fā)周期左移

代碼校驗,即對源代碼進行自動檢查以排查錯誤,是硬件開發(fā)生命周期中非常重要的一環(huán)。如果能在RTL開發(fā)的早期階段就開始代碼校驗工作,評估代碼質(zhì)量以及一旦代碼錯誤會對設(shè)計流程的后續(xù)環(huán)節(jié)造成哪些影響,這對開發(fā)者來說將會大大提升開發(fā)效率,并最終實現(xiàn)開發(fā)周期的左移。

現(xiàn)在的代碼校驗已經(jīng)遠遠超出了RTL語義規(guī)則檢查的范疇,擴展到了綜合能力檢查、結(jié)構(gòu)分析以及網(wǎng)表/電氣規(guī)則檢查。為實現(xiàn)左移,芯片開發(fā)者希望能夠在開發(fā)流程早期階段就完成許多復(fù)雜的任務(wù),比如在 RTL 內(nèi)執(zhí)行更復(fù)雜的檢查,以及確保 RTL 與下游合成引擎更加一致等等。開發(fā)者還希望 RTL 對各種仿真器“友好”并可進行互操作,同時兼容等價性檢查器。這些要求都不簡單,而這其中真正的挑戰(zhàn)就在于如何從源代碼中尋找并修復(fù)漏洞。

如果把這些挑戰(zhàn)放大到數(shù)十億門級ASIC的設(shè)計中,可以想想代碼校驗會有多復(fù)雜,因此為了在設(shè)計規(guī)模和復(fù)雜度不斷攀升的情況下,依舊實現(xiàn)將開發(fā)周期左移,就需要更強大的代碼校驗工具來幫助芯片開發(fā)者們高效完成代碼的預(yù)先排查工作。

管理規(guī)則集

代碼校驗工具需要使用規(guī)則集運行,開發(fā)者需要創(chuàng)建、管理和編策這些規(guī)則集。這些都是非常專業(yè)的技能,其中涉及的專業(yè)知識通常是小公司不具備的或者想要引入的,所以對小公司而言,入門級的做法就是購買現(xiàn)成的軟件包。而大型公司一般有自己的內(nèi)部代碼校驗規(guī)則集,這些內(nèi)部規(guī)則集對公司來說都是重要的投資。

第三方或行業(yè)標(biāo)準規(guī)則集可以降低準入門檻,幫助小規(guī)模的設(shè)計團隊加速代碼校驗工作流程。新思科技的GuideWare方法學(xué)文檔和規(guī)則集正是為了這一目的而開發(fā)的,旨在幫助開發(fā)者快速開始采用此技術(shù),并根據(jù)需要進一步制定規(guī)則。

GuideWare的目標(biāo)是能夠在至少80%的用例中實現(xiàn)RTL移交,從而更大限度地減少創(chuàng)建、管理和編策相關(guān)規(guī)則所需的專業(yè)知識。對小型設(shè)計團隊而言,GuideWare絕對是一個福音,他們的設(shè)計可以實現(xiàn)質(zhì)的飛躍,生產(chǎn)力也會大幅提升。

新思科技會對GuideWare定期進行更新,以確保規(guī)則集的復(fù)雜性始終處于行業(yè)領(lǐng)先地位。新思科技的IP均已通過代碼校驗認證,開發(fā)者們可以選擇新思科技的IP以及GuideWare中的設(shè)計復(fù)用合規(guī)性檢查功能,做出符合行業(yè)標(biāo)準的設(shè)計。

如何處理無用代碼?

無用代碼或無法訪問的代碼在開發(fā)階段通常都會存在,有些甚至?xí)A舻搅髌A段。為什么會這樣呢?

設(shè)計的復(fù)雜性在開發(fā)過程中也會不斷演進,開發(fā)者會隨時進行漏洞修復(fù)、增加功能、集成可復(fù)用的模塊等等,有時還會為了實現(xiàn)功耗和性能目標(biāo)做全面的代碼優(yōu)化,這樣就會導(dǎo)致最初寫的一些代碼變?yōu)闊o用代碼。但是由于產(chǎn)品交付時間并沒有因為設(shè)計變復(fù)雜而延后,迫于時間壓力,很多時候開發(fā)者沒有時間去清理這些無用代碼。雖然保留這些代碼并不會影響下個代碼的正常運行,但是如果追求精簡設(shè)計,這些代碼就必須要處理。

使用代碼校驗工具來清理無用代碼是非常有必要的,有些開發(fā)者對工具是否好用持懷疑態(tài)度,他們可能會為了以防萬一就保留相關(guān)代碼,但大多數(shù)都會秉持“零違例”準則,即“要么修復(fù),要么放棄”。因此,代碼校驗工具能夠準確識別無用代碼并知道如何處理它們是非常重要的。

新思科技的靜態(tài)代碼校驗工具VC SpyGlass Lint采用形式引擎,在識別無用代碼上效率非常出眾。但開發(fā)者通常會有以下幾種操作選項:

更新RTL代碼從而移除無用代碼:這應(yīng)該是能把無用代碼清理的最干凈的解決方案,還能夠有效移除覆蓋率分析中的覆蓋率空洞。但這一方法需要重新構(gòu)思代碼,并進行功能驗證,所以比較花時間。

把無用代碼注釋掉并為了以后參考附上相關(guān)信息的注釋:雖然這種方法也還需要進行功能驗證,但它也能提供一個干凈的代碼并移除覆蓋率空洞。

棄用代碼校驗 waiver 文件中的無用代碼:僅確認無用代碼的安全性,不對其進行清理,RTL代碼庫保持不變。覆蓋空洞將仍然存在。

了解設(shè)計復(fù)雜性

越復(fù)雜的設(shè)計所包含的漏洞也就越復(fù)雜。但開發(fā)者在設(shè)計中通常都會追求精簡、直觀、一看就懂且易于維護的代碼結(jié)構(gòu)。不過隨著時間的推移,在開發(fā)者不斷debug修正代碼的過程中,代碼的整體質(zhì)量與最初相比會有所下降,他們可能還會突然發(fā)現(xiàn)RTL代碼怎么好像越改越復(fù)雜了,邏輯也越來越難理解了。

衡量并可視化呈現(xiàn)代碼的復(fù)雜性可以幫助開發(fā)者“看見”代碼中變得復(fù)雜的部分,他們可以利用這一信息對積攢的復(fù)雜代碼進行評估和推演。針對復(fù)雜性風(fēng)險過高的代碼區(qū),開發(fā)者會在性能和功能之間做一些權(quán)衡,并對部分代碼進行重構(gòu)。

通過同行評議保證魯棒性很有用,且是一項所有設(shè)計團隊都應(yīng)采用的最佳實踐,但新思科技的VC SpyGlass Lint有一個獨特的優(yōu)勢是其他工具無法比擬的,就是可以衡量代碼的復(fù)雜性,為開發(fā)者提供非常有用的建議。VC SpyGlass Lint利用形式引擎提供功能分析及代碼復(fù)雜性分析,并通過儀表板呈現(xiàn)結(jié)果。

永遠存在的誤報問題

在CDC和RDC的文章中,我們討論過誤報問題,這一問題在代碼校驗過程中同樣存在。在數(shù)十億門級的設(shè)計中,勢必會產(chǎn)生大量違例,數(shù)量過大就會有遺漏風(fēng)險。開發(fā)者們希望的是,工具可以幫助他們直觀地看到有意義的信息、準確評估信息、正確標(biāo)記違例、對違例進行分類等等,從而提高處理違例的效率和準確性。

VC SpyGlass Lint利用形式引擎來有效解決誤報問題。開發(fā)者們無需知道形式驗證,也無需具備這方面的專業(yè)知識,所有形式驗證都將在后臺完成。這一工具內(nèi)置了5000多項檢查,而且新思科技仍在不斷地對檢查項目進行添加和完善。

功能校驗,加快簽核

借助一鍵式形式驗證的功能校驗,開發(fā)者們可以在驗證平臺可用前就對功能和覆蓋率問題進行測試,從而節(jié)省時間并實現(xiàn)左移。功能校驗在檢查以下控制問題時非常有用:

FSM死鎖

無法訪問狀態(tài)的檢查

覆蓋率問題(如常值信號)

無用代碼檢查

數(shù)組邊界違例

總結(jié)來說,如果開發(fā)者們能夠盡早知道復(fù)雜的RTL代碼是否能夠?qū)崿F(xiàn)預(yù)期的設(shè)計結(jié)果,他們就可以在設(shè)計開發(fā)后續(xù)流程中節(jié)省很多時間和精力,不僅實現(xiàn)開發(fā)周期的左移,還可節(jié)約成本。新思科技的VC SpyGlass Lint等工具可以完美解決這一問題,它利用形式引擎實現(xiàn)功能分析,可有效幫助開發(fā)者們盡早判斷他們的RTL代碼質(zhì)量是否滿足設(shè)計需求,最終加速簽核。

原文標(biāo)題:靜態(tài)代碼驗證:從源頭解決數(shù)十億門級ASIC設(shè)計挑戰(zhàn)

文章出處:【微信公眾號:新思科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

    關(guān)注

    460

    文章

    52520

    瀏覽量

    441079
  • 集成電路
    +關(guān)注

    關(guān)注

    5425

    文章

    12070

    瀏覽量

    368521
  • asic
    +關(guān)注

    關(guān)注

    34

    文章

    1247

    瀏覽量

    122415
  • 新思科技
    +關(guān)注

    關(guān)注

    5

    文章

    870

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    高效開發(fā):解鎖Air8000 LuatOS softAP配網(wǎng)功能的核心技術(shù)!

    為縮短物聯(lián)網(wǎng)項目開發(fā)周期,掌握高效的配網(wǎng)技術(shù)至關(guān)重要。本文聚焦Air8000平臺,深入講解如何利用LuatOS系統(tǒng)開發(fā)softAP配網(wǎng)功能,通過優(yōu)化
    的頭像 發(fā)表于 07-17 15:49 ?126次閱讀
    <b class='flag-5'>高效</b><b class='flag-5'>開發(fā)</b>:解鎖Air8000 LuatOS softAP配網(wǎng)功能的核心技術(shù)!

    物聯(lián)網(wǎng)+低代碼:解鎖高效開發(fā),縱橫智控Node-RED平臺引領(lǐng)新范式

    物聯(lián)網(wǎng)的星辰大海已近在眼前,但抵達彼岸的航程需要更高效的槳帆。低代碼開發(fā),特別是以Node-RED為代表的可視化流編程范式,正在大幅降低物聯(lián)網(wǎng)應(yīng)用開發(fā)的技術(shù)門檻和成本,釋放創(chuàng)新潛能。成
    的頭像 發(fā)表于 06-28 14:53 ?322次閱讀
    物聯(lián)網(wǎng)+低<b class='flag-5'>代碼</b>:解鎖<b class='flag-5'>高效</b><b class='flag-5'>開發(fā)</b>,縱橫智控Node-RED平臺引領(lǐng)新范式

    HarmonyOS 代碼工坊的指尖開發(fā), APP 開發(fā)所見即所得

    沙盤被直接搬入了移動設(shè)備本身。眼尖的開發(fā)者應(yīng)該已經(jīng)發(fā)現(xiàn),最近華為應(yīng)用市場“應(yīng)用嘗鮮”專區(qū)里,上架了一款名為“HarmonyOS 代碼工坊”的新應(yīng)用,下載量持續(xù)攀升。 開發(fā)者只需要下載“HarmonyOS
    的頭像 發(fā)表于 06-24 12:08 ?176次閱讀
    HarmonyOS <b class='flag-5'>代碼</b>工坊的指尖<b class='flag-5'>開發(fā)</b>,<b class='flag-5'>讓</b> APP <b class='flag-5'>開發(fā)</b>所見即所得

    KT6368A藍牙芯片應(yīng)該自帶數(shù)據(jù)校驗機制嗎?

    KT6368A藍牙芯片應(yīng)該自帶數(shù)據(jù)校驗機制嗎?
    的頭像 發(fā)表于 04-19 16:34 ?367次閱讀
    KT6368A藍牙<b class='flag-5'>芯片</b>應(yīng)該自帶數(shù)據(jù)<b class='flag-5'>校驗</b>機制嗎?

    DialogHub上線OpenHarmony開源社區(qū),高效開發(fā)鴻蒙應(yīng)用彈窗

    作為鴻蒙應(yīng)用開發(fā)者,在使用ArkUI現(xiàn)有能力進行彈窗開發(fā)時,總會遇到一些人糾結(jié)的交互問題:應(yīng)用內(nèi)進行消息提示時,既要求消息內(nèi)容支持圖文混排,又要求彈窗本身不能打斷用戶交互(頁面滑動、頁面
    發(fā)表于 04-03 17:30

    嵌入式開發(fā)新紀元:AI大模型助力樂鑫芯片高效編程

    芯片開發(fā)的有效途徑??纯此鼈?nèi)绾螢闃扶蜤SP32系列芯片開發(fā)賦能,實現(xiàn)從代碼生成到調(diào)試優(yōu)化全流程的效率飛躍!嵌入式
    的頭像 發(fā)表于 02-17 18:06 ?1231次閱讀
    嵌入式<b class='flag-5'>開發(fā)</b>新紀元:AI大模型助力樂鑫<b class='flag-5'>芯片</b><b class='flag-5'>高效</b>編程

    代碼與傳統(tǒng)開發(fā)的區(qū)別 低代碼與無代碼開發(fā)的區(qū)別

    在軟件開發(fā)領(lǐng)域,傳統(tǒng)開發(fā)、低代碼開發(fā)以及無代碼開發(fā)是三種不同的
    的頭像 發(fā)表于 01-31 10:48 ?623次閱讀

    如何在日常開發(fā)過程中提高代碼質(zhì)量

    隨著技術(shù)的不斷進步,客戶期望越來越高,嵌入式設(shè)備變得越來越智能,對應(yīng)的嵌入式系統(tǒng)和軟件也變得越來越復(fù)雜,同時產(chǎn)品的開發(fā)周期變得越來越短。如何在短時間內(nèi)開發(fā)出高質(zhì)量的軟件對產(chǎn)品的成功起著決定性的作用
    的頭像 發(fā)表于 01-23 09:09 ?569次閱讀
    如何在日常<b class='flag-5'>開發(fā)</b>過程中提高<b class='flag-5'>代碼</b>質(zhì)量

    代碼在敏捷開發(fā)中的應(yīng)用

    代碼平臺的定義 低代碼平臺提供了一個可視化的、拖放式的用戶界面,允許開發(fā)者通過圖形化的方式快速構(gòu)建應(yīng)用程序,而無需編寫大量的代碼。這些平臺通常包括預(yù)構(gòu)建的模板、組件和邏輯模塊,使得
    的頭像 發(fā)表于 01-07 09:58 ?450次閱讀

    笙泉完善的MCU生態(tài)系統(tǒng)(ECO System),賦能高效開發(fā)、提升競爭優(yōu)勢

    科技也提供豐富的方案示例項目,可更高效開發(fā)、縮短客戶的設(shè)計周期,加快產(chǎn)品的量產(chǎn)。 四. 高可靠、高品質(zhì) 對終端產(chǎn)品整機而言,ESD抗擾能力不僅來自MCU芯片的ESD耐壓,PCB的布局
    發(fā)表于 12-27 09:58

    Java代碼之美,從遵循樣式規(guī)范開始

    至關(guān)重要。本文將帶你探索Java代碼的美學(xué),揭示那些能夠你的代碼既美觀又高效的樣式規(guī)范。無論是初出茅廬的新手還是經(jīng)驗豐富的老手,都能從中獲得靈感,提升編碼的藝術(shù)。 一、為什么要
    的頭像 發(fā)表于 11-27 11:42 ?585次閱讀
    Java<b class='flag-5'>代碼</b>之美,從遵循樣式規(guī)范開始

    代碼開發(fā)平臺,低成本快速搭建云MES系統(tǒng)

    代碼平臺是一種可視化的軟件高效開發(fā)平臺,通過抽象和最小化手工編碼的方式,為開發(fā)和部署定制化應(yīng)用提速。萬界星空科技AI低代碼云MES系統(tǒng)通過
    的頭像 發(fā)表于 11-18 15:43 ?475次閱讀
    低<b class='flag-5'>代碼</b><b class='flag-5'>開發(fā)</b>平臺,低成本快速搭建云MES系統(tǒng)

    單片機代碼性能起飛的七大技巧

    大廠工程師,也會有人笑掉大牙的代碼。 ? ? ? ? ? 高效的背后,有很多學(xué)問,需要有一定的數(shù)學(xué)功底,對編譯器有較深的了解,懂匯編。 ? ? ? ? ? 具備這些能力,寫出來的代碼
    的頭像 發(fā)表于 11-16 10:21 ?1155次閱讀
    <b class='flag-5'>讓</b>單片機<b class='flag-5'>代碼</b>性能起飛的七大技巧

    單片機芯片開發(fā)-單片機方案開發(fā)的關(guān)鍵技巧和流程步驟!

    。 單片機芯片開發(fā)并不是一項艱巨的任務(wù),只要掌握關(guān)鍵步驟,您就能輕松應(yīng)對。明確需求、選擇合適的MCU、搭建高效開發(fā)環(huán)境、編寫優(yōu)質(zhì)代碼以及
    發(fā)表于 09-26 17:04

    如何通過I2C加載TPS2388x SRAM和奇偶校驗代碼

    電子發(fā)燒友網(wǎng)站提供《如何通過I2C加載TPS2388x SRAM和奇偶校驗代碼.pdf》資料免費下載
    發(fā)表于 09-06 11:16 ?0次下載
    如何通過I2C加載TPS2388x SRAM和奇偶<b class='flag-5'>校驗</b><b class='flag-5'>代碼</b>