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

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

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

?SoC設(shè)計(jì):NoC 配置和實(shí)施流程

ruikundianzi ? 來源:半導(dǎo)體產(chǎn)業(yè)縱橫 ? 2023-06-12 12:34 ? 次閱讀

隨著SoC的容量和復(fù)雜性不斷增加,交叉開關(guān)帶來了路由擁塞、硅芯片面積過度使用和功耗等挑戰(zhàn)。

在不久的過去,片上系統(tǒng) (SoC) 設(shè)備與今天的產(chǎn)品相比相對簡單。早期的 SoC 通常由 10 到 20 個(gè)IP塊組成,每個(gè)塊通常由大約 10,000 到 50,000 個(gè)邏輯門組成。大多數(shù)這些 IP,包括處理器和外圍功能,都是從第三方供應(yīng)商處獲得許可的。開發(fā)人員通常只創(chuàng)建一個(gè)或兩個(gè) IP,其中包含使他們的 SoC 區(qū)別于其他競爭產(chǎn)品的“秘密武器”。 當(dāng)需要有限數(shù)量的 IP 來相互通信的互連相對簡單時(shí),會(huì)使用經(jīng)典的總線架構(gòu)方法。負(fù)責(zé)極少數(shù)啟動(dòng)器 IP 的設(shè)計(jì)人員使用了這種方法,這些啟動(dòng)器 IP 將數(shù)據(jù)事務(wù)請求與響應(yīng)這些請求的多個(gè)目標(biāo) IP 相結(jié)合。 隨著 IP 數(shù)量和規(guī)模的增加以及它們承擔(dān)起發(fā)起者的角色,采用交叉開關(guān)形式的更復(fù)雜的互連架構(gòu)變得很有必要。交叉開關(guān)是有利的,因?yàn)樗试S任何發(fā)起者 IP 與任何目標(biāo) IP 對話。

然而,隨著 SoC 的容量和復(fù)雜性不斷增加,交叉開關(guān)帶來了路由擁塞、硅芯片面積過度使用和功耗等挑戰(zhàn)。

輸入NoC

今天的 SoC 可以包含數(shù)百個(gè) IP 塊,每個(gè)塊都比前幾代具有更多的邏輯門。通常,第三方供應(yīng)商提供大部分 IP。除了數(shù)據(jù)總線寬度、控制總線功能和工作頻率的變化之外,每個(gè) IP 還可以采用多種接口協(xié)議中的一種——OCP、APB、AHB、AXI、STBus 和 DTL——這些協(xié)議已被 SoC 設(shè)計(jì)人員定義和采用. 應(yīng)對當(dāng)今 SoC 中 IP 數(shù)量不斷增加的挑戰(zhàn)的解決方案是采用片上網(wǎng)絡(luò) (NoC)。每個(gè) IP 都配備了與 NoC 接口的套接字功能。在發(fā)起者觸發(fā)寫訪問的情況下,套接字序列化和打包由該 IP 生成的數(shù)據(jù),并將其傳輸?shù)狡漕A(yù)期目標(biāo)。反過來,與目標(biāo)關(guān)聯(lián)的套接字將從數(shù)據(jù)包中提取要寫入的數(shù)據(jù),并將其轉(zhuǎn)換為目標(biāo)協(xié)議??梢酝瑫r(shí)有多個(gè)數(shù)據(jù)包。

什么是NoC?

NoC 可以通過多種拓?fù)浣Y(jié)構(gòu)實(shí)現(xiàn),包括不規(guī)則樹、規(guī)則環(huán)和網(wǎng)狀或圓環(huán)結(jié)構(gòu)。高維架構(gòu)也可用于某些設(shè)計(jì),包括三維立方體和四維和五維超立方體。 在大多數(shù)情況下,單個(gè) NoC 是不夠的,設(shè)計(jì)人員經(jīng)常將其互連分解為數(shù)十個(gè) NoC 的組合。雖然非高速緩存一致的 NoC 可以滿足大多數(shù)外設(shè)的要求,但處理器和加速器等 IP 通常受益于高速緩存一致的 NoC 的功能。此外,SoC 的某些部分,例如人工智能/機(jī)器學(xué)習(xí) (AI/ML) 處理節(jié)點(diǎn)陣列,可能會(huì)受益于網(wǎng)狀 NoC 架構(gòu)。因此,SoC 可以輕松地結(jié)合多個(gè) NoC 拓?fù)湟詫?shí)現(xiàn)最佳結(jié)果。 除了用于將 IP 連接到 NoC 的套接字之外,網(wǎng)絡(luò)還將包括必要的交換機(jī)和緩沖區(qū)。此外,隨著用于實(shí)現(xiàn) SoC 的工藝節(jié)點(diǎn)不斷縮小,走線的電阻增加,導(dǎo)致信號(hào)在通過器件時(shí)出現(xiàn)電阻-電容延遲。因此,信號(hào)無法再在單個(gè)時(shí)鐘周期內(nèi)遍歷設(shè)備的全部或部分。解決這個(gè)問題需要在信號(hào)通路中插入流水線寄存器。然而,優(yōu)化它們的數(shù)量和位置是一項(xiàng)艱巨的任務(wù)。

e533b04a-08d5-11ee-962d-dac502259ad0.png

圖 1這是典型 NoC 配置和實(shí)施流程的概覽。來源:Arteris IP

SoC 的開發(fā)是雙重的——前端(上游)和后端(下游)設(shè)計(jì)(見圖1)。前端設(shè)計(jì)側(cè)重于邏輯和功能方面,例如使用哪些 IP、如何連接它們以及如何構(gòu)建網(wǎng)絡(luò)以確保預(yù)期的吞吐量和延遲。另一方面,后端設(shè)計(jì)處理芯片的物理方面,包括 IP 相對于彼此的放置位置以及時(shí)序是否可以滿足。只有在這個(gè)階段,設(shè)計(jì)人員才會(huì)知道放置流水線寄存器的數(shù)量和位置。 執(zhí)行完整的物理布局是一個(gè)耗時(shí)的過程。任何無法在后端解決的問題都必須在前端返工,這將重新啟動(dòng)耗時(shí)的物理布局過程(參見圖 2)。能夠在流程的早期主動(dòng)插入流水線寄存器對于實(shí)現(xiàn)任務(wù)的收斂和整個(gè)項(xiàng)目的周轉(zhuǎn)時(shí)間非常有價(jià)值。

e5585a76-08d5-11ee-962d-dac502259ad0.png

圖 2長時(shí)序路徑可以跨越整個(gè) SoC。來源:Arteris IP

這給前端設(shè)計(jì)團(tuán)隊(duì)帶來了很大壓力,他們不一定擁有做出明智決策所需的所有信息。插入太少的流水線寄存器會(huì)導(dǎo)致 SoC 無法滿足物理布局中的時(shí)序要求。這導(dǎo)致通過插入太多流水線階段來過度設(shè)計(jì)問題的趨勢。盡管可能會(huì)滿足時(shí)序要求,但級(jí)數(shù)過多會(huì)增加延遲和功耗。 所有這一切的結(jié)果是,僅擁有套接字、開關(guān)、緩沖區(qū)和流水線寄存器形式的原始 NoC。為了驗(yàn)證性能和實(shí)現(xiàn)時(shí)序,NoC 的實(shí)現(xiàn)工具有必要了解它們將服務(wù)的環(huán)境。

物理感知NoC

在“物理感知”NoC IP 中,前端設(shè)計(jì)人員可以使用來自物理布局團(tuán)隊(duì)的早期 IP 布局信息來預(yù)測實(shí)現(xiàn)能力并解決任何潛在的時(shí)序問題。作為其中的一部分,NoC 工具可以自動(dòng)定義 RTL 中流水線寄存器的理想數(shù)量和位置,并生成相關(guān)的實(shí)現(xiàn)約束。 當(dāng)今的 NoC 技術(shù)遠(yuǎn)遠(yuǎn)超出了許多設(shè)計(jì)人員的預(yù)期。例如,NoC 生成器利用特定于工藝技術(shù)節(jié)點(diǎn)的幾何和延遲信息。此信息使我們能夠進(jìn)一步完善時(shí)序估計(jì)并確定流水線寄存器要求和位置。 通過以這種方式改進(jìn)前端設(shè)計(jì)并向后端工具提供更詳細(xì)的信息,可以顯著改進(jìn)整個(gè)過程,尤其是第一個(gè)物理實(shí)現(xiàn)。這可以顯著減少后端到前端的迭代次數(shù),從而降低風(fēng)險(xiǎn)、提高生產(chǎn)率、降低成本并加快上市時(shí)間和資金周轉(zhuǎn)時(shí)間。

編輯:黃飛

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

    關(guān)注

    31

    文章

    5357

    瀏覽量

    120613
  • 片上網(wǎng)絡(luò)
    +關(guān)注

    關(guān)注

    0

    文章

    33

    瀏覽量

    11818

原文標(biāo)題:?SoC設(shè)計(jì):什么時(shí)候片上網(wǎng)絡(luò) (NoC) 不夠用?

文章出處:【微信號(hào):IP與SoC設(shè)計(jì),微信公眾號(hào):IP與SoC設(shè)計(jì)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    AMD Versal AI Edge自適應(yīng)計(jì)算加速平臺(tái)之PL通過NoC讀寫DDR4實(shí)驗(yàn)(4)

    Versal的DDR4是通過NoC訪問,因此需要添加NoC IP進(jìn)行配置。
    的頭像 發(fā)表于 03-22 17:18 ?2388次閱讀
    AMD Versal AI Edge自適應(yīng)計(jì)算加速平臺(tái)之PL通過<b class='flag-5'>NoC</b>讀寫DDR4實(shí)驗(yàn)(4)

    如何利用NoC資源去支撐FPGA中的創(chuàng)新設(shè)計(jì)

    interconnect實(shí)現(xiàn)的是一種最簡單的總線連接器,并不支持2D NoC所能提供的所有功能,比如地址表映射,優(yōu)先級(jí)配置。最重要的一點(diǎn)是AXI interconnect只支持阻塞訪問(blocking),不支持
    發(fā)表于 10-20 09:54

    基于標(biāo)準(zhǔn)單元的SoC芯片設(shè)計(jì)流程

    SoC設(shè)計(jì)的特點(diǎn)軟硬件協(xié)同設(shè)計(jì)流程基于標(biāo)準(zhǔn)單元的SoC芯片設(shè)計(jì)流程
    發(fā)表于 01-26 06:45

    怎么構(gòu)建一種基于FPGA的NoC驗(yàn)證平臺(tái)?

    本文提出了一種基于FPGA的NoC驗(yàn)證平臺(tái)。詳細(xì)討論了該驗(yàn)證平臺(tái)中FPGA硬件平臺(tái)和NoC軟件的基本功能,并闡述了TG/R,MPU,MPI以及NoC軟件的可重用性等特點(diǎn)。通過一個(gè)實(shí)例仿真驗(yàn)證的結(jié)果說明了該驗(yàn)證平臺(tái)的基本功能和優(yōu)越
    發(fā)表于 05-06 07:20

    NoC是什么?NoC有哪些技術(shù)優(yōu)勢?

    NoC是什么?NoC有哪些技術(shù)優(yōu)勢?NoC有哪些關(guān)鍵技術(shù)難點(diǎn)?
    發(fā)表于 06-04 06:34

    SOC設(shè)計(jì)與驗(yàn)證流程是什么?

    為什么verilog可以描述硬件?在SOC設(shè)計(jì)中使用verilog,和FPGA為對象使用verilog,有什么區(qū)別?SOC流程和FPGA流程的不同之處在哪里?
    發(fā)表于 06-21 07:02

    SoC芯片的開發(fā)流程有哪幾個(gè)階段

    SoC芯片的開發(fā)流程SoC芯片開發(fā)流程大致分為四個(gè)階段,其中大部分工作都是借助于電子設(shè)計(jì)自動(dòng)化(EDA)工具完成的??傮w設(shè)計(jì)總體設(shè)計(jì)階段的任務(wù)是按照系統(tǒng)需求說明書確定
    發(fā)表于 11-08 08:33

    SoC設(shè)計(jì)流程相關(guān)資料下載

    SoC設(shè)計(jì)流程一、SoC設(shè)計(jì)的特點(diǎn)二、軟硬件協(xié)同設(shè)計(jì)流程2.1 系統(tǒng)需求說明2.2 高級(jí)算法建模與仿真2.3 軟硬件劃分過程2.4 軟硬件同步設(shè)計(jì)三、基于標(biāo)準(zhǔn)單元的
    發(fā)表于 11-11 07:48

    SOC的多核啟動(dòng)流程詳解

    PROGRAMMABLE_RESET_ADDRESS=1,與之對立的則是你的reset地址是不可編程的。你在SOC啟動(dòng)的時(shí)候,首先只啟動(dòng)一個(gè)core,則會(huì)配置 COLD_BOOT_SINGLE_CPU=1,與之對立
    發(fā)表于 02-21 15:11

    SoC設(shè)計(jì)流程

    SoC設(shè)計(jì)流程一、SoC設(shè)計(jì)的特點(diǎn)二、軟硬件協(xié)同設(shè)計(jì)流程2.1 系統(tǒng)需求說明2.2 高級(jí)算法建模與仿真2.3 軟硬件劃分過程2.4 軟硬件同步設(shè)計(jì)三、基于標(biāo)準(zhǔn)單元的
    發(fā)表于 11-06 16:21 ?38次下載
    <b class='flag-5'>SoC</b>設(shè)計(jì)<b class='flag-5'>流程</b>

    SoCNoC:芯片架構(gòu)的演進(jìn)與變革

    在芯片設(shè)計(jì)中,SoC(System on Chip)和NoC(Network on Chip)是兩個(gè)不同的架構(gòu),它們在內(nèi)部通信方式、設(shè)計(jì)理念方面存在著很大的差異。 SoC以緊湊的結(jié)構(gòu)和低功耗著稱
    的頭像 發(fā)表于 05-11 10:39 ?1.1w次閱讀
    從<b class='flag-5'>SoC</b>到<b class='flag-5'>NoC</b>:芯片架構(gòu)的演進(jìn)與變革

    AMD Versal系列FPGA NoC介紹及實(shí)戰(zhàn)

    NoC是相對于SoC的新一代片上互連技術(shù),從計(jì)算機(jī)發(fā)展的歷史可以看到NoC 必將是SoC 之后的下一代主流技術(shù),SoC 通常指在單一芯片上實(shí)
    的頭像 發(fā)表于 07-13 15:57 ?1224次閱讀
    AMD Versal系列FPGA <b class='flag-5'>NoC</b>介紹及實(shí)戰(zhàn)

    AMD Versal系列FPGA NoC介紹及實(shí)戰(zhàn)

    NoC是相對于SoC的新一代片上互連技術(shù),從計(jì)算機(jī)發(fā)展的歷史可以看到NoC 必將是SoC 之后的下一代主流技術(shù)
    發(fā)表于 07-13 15:56 ?907次閱讀
    AMD Versal系列FPGA <b class='flag-5'>NoC</b>介紹及實(shí)戰(zhàn)

    傳智驛芯聯(lián)手Arteris,利用創(chuàng)新NoC技術(shù)駕馭復(fù)雜SoC設(shè)計(jì)

    2023年9月18日, 由傳智驛芯科技和Arteris聯(lián)合舉辦的技術(shù)研討會(huì)——“利用創(chuàng)新NoC技術(shù)駕馭復(fù)雜的片上系統(tǒng)(SoC)設(shè)計(jì)” 在深圳成功舉辦。西安交通大學(xué)任鵬舉教授,Arteris中國區(qū)
    發(fā)表于 09-18 18:17 ?669次閱讀
    傳智驛芯聯(lián)手Arteris,利用創(chuàng)新<b class='flag-5'>NoC</b>技術(shù)駕馭復(fù)雜<b class='flag-5'>SoC</b>設(shè)計(jì)

    DCS控制系統(tǒng)的配置實(shí)施流程

    DCS(分布式控制系統(tǒng))控制系統(tǒng)的配置實(shí)施流程是一個(gè)復(fù)雜但有序的過程,涉及多個(gè)步驟和環(huán)節(jié)。以下是一個(gè)典型的DCS控制系統(tǒng)配置實(shí)施
    的頭像 發(fā)表于 12-27 16:47 ?243次閱讀