91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

基于SystemC的存儲(chǔ)器模型設(shè)計(jì)與性能分析

電子設(shè)計(jì) ? 來源:郭婷 ? 作者:電子設(shè)計(jì) ? 2018-12-05 07:43 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1 引言

建立芯片模型是在早期進(jìn)行芯片架構(gòu)決策的有效方法,通過建模不僅可以對(duì)芯片的性能做出分析,還可以在硬件沒有完成之前開發(fā)軟件,不僅提高了產(chǎn)品成功率,而且縮短了研發(fā)周期。設(shè)計(jì)人員早期采用C/C++語言進(jìn)行硬件建模。但是隨著軟硬件復(fù)雜度的提高,C/C++語言難以再滿足要求。OSCI適時(shí)推出了SystemC語言來適應(yīng)新的需求。如今SystemC已經(jīng)被廣泛應(yīng)用于SoC軟硬件建模中。

目前大部分SystemC建模方面是設(shè)計(jì)芯片整體模型的描述,這種針對(duì)特定芯片設(shè)計(jì)的文獻(xiàn)雖然都有參考價(jià)值,但是其模型本身借鑒性有限。另一方面,構(gòu)成SoC硬件的基本組件因?yàn)榭芍赜玫木壒?,其模型設(shè)計(jì)具有更好的可借鑒性。這方面的研究成果相對(duì)較少,而且集中在總線建模方面,也可以看到多核設(shè)計(jì)方面的建模方法。

除了上述總線、CPU 架構(gòu)外,片內(nèi)或片外存儲(chǔ)器同樣是系統(tǒng)關(guān)鍵模塊,對(duì)系統(tǒng)性能有著至關(guān)重要的影響。文獻(xiàn)[6]對(duì)SystemClick框架做了擴(kuò)展,從而通過存儲(chǔ)器模型能夠分析共享存儲(chǔ)器對(duì)性能的影響。文獻(xiàn)[7]針對(duì)多通道DRAM 做了建模,并且分析了不同的配置和使用情況對(duì)性能的影響。這兩篇文獻(xiàn)都對(duì)所設(shè)計(jì)的模型做了詳盡的分析,具有很好的參考價(jià)值,但是兩者的通用性欠佳。本文提出了一個(gè)可配置的通用存儲(chǔ)器SystemC模型。

2 SystemC

SystemC可被視作C++硬件建模和仿真的擴(kuò)展庫,特別適合集成電路的建模,但它事實(shí)上可以用來描述更多的系統(tǒng)。SystemC通過確定仿真核心(simulation kernel)算法定義了處理并行事件和仿真時(shí)間的機(jī)制。SystemC還定義了模塊、端口、接口、通道等概念來組成一個(gè)復(fù)雜SoC的連接關(guān)系和層次結(jié)構(gòu)。因此,它解決了標(biāo)準(zhǔn)C++語言用于復(fù)雜硬件建模時(shí)的難題。

3 存儲(chǔ)器的建模

3.1 存儲(chǔ)器模型概述

為了能幫助設(shè)計(jì)人員分析系統(tǒng)性能并選擇最合適的存儲(chǔ)器構(gòu)造,存儲(chǔ)器模型需要反映出對(duì)性能造成影響的關(guān)鍵參數(shù),即帶寬、延時(shí)和仲裁機(jī)制。而這些參數(shù)又是由存儲(chǔ)器的結(jié)構(gòu)以及其它參數(shù)決定的。另一方面,本文希望提出一個(gè)通用的存儲(chǔ)器模型,因此會(huì)有更多的參數(shù)用于配置存儲(chǔ)器以模擬某種特定類型的存儲(chǔ)器特征,比如多端口SRAM

圖1給出了所設(shè)計(jì)的存儲(chǔ)器模型的結(jié)構(gòu)。它包括三個(gè)部分:一是模型接口;二是端口及bank可配置的存儲(chǔ)器;三是由讀寫通路及仲裁機(jī)制構(gòu)成的存儲(chǔ)器控制器。接口部分采用了事務(wù)級(jí)建模,而內(nèi)部模塊采用了時(shí)鐘精準(zhǔn)的建模,這樣在保證時(shí)間精度的同時(shí),方便了接口連接以及提高了仿真速度。

基于SystemC的存儲(chǔ)器模型設(shè)計(jì)與性能分析

圖1 可配置存儲(chǔ)器模型結(jié)構(gòu)

3.2 存儲(chǔ)器接口

基于SystemC的存儲(chǔ)器模型接口,由SystemC定義的接口基類派生而來。整個(gè)存儲(chǔ)器模型是一個(gè)SystemC模塊,由于實(shí)現(xiàn)了所定義的存儲(chǔ)器模型接口,它成為SystemC概念中的hierarchal channel。因此,該存儲(chǔ)器模型將如同其它SystemC定義的通道,比如FIFO,一樣作為基本組件來連接其它的模塊從而構(gòu)造出SoC硬件系統(tǒng)。所設(shè)計(jì)存儲(chǔ)器具有如下所述事務(wù)級(jí)SystemC接口。

阻塞讀接口:該接口用來讀取給定地址的給定大小的數(shù)據(jù),當(dāng)數(shù)據(jù)沒有讀出時(shí),調(diào)用這個(gè)接口的模塊線程將被堵塞,直到數(shù)據(jù)讀出為止。除了地址和數(shù)據(jù),該接口還包含調(diào)用者的標(biāo)志信息。

非阻塞讀接口:與阻塞讀接口不同的是,如果在調(diào)用時(shí)讀指令不能被接受,則返回失敗。否則,不等待數(shù)據(jù)返回便成功退出。這樣調(diào)用接口的模塊線程可以在等待時(shí)間做其它事情。調(diào)用者通過監(jiān)聽存儲(chǔ)器模型廣播的當(dāng)前讀出數(shù)據(jù)多對(duì)應(yīng)調(diào)用者標(biāo)記來在之后讀出數(shù)據(jù)。

阻塞寫接口:該接口用來向存儲(chǔ)器給定地址寫入給定大小的數(shù)據(jù)。當(dāng)指令或?qū)憯?shù)據(jù)不能被存儲(chǔ)器模型接收時(shí),調(diào)用的線程被堵塞直到接受為止。除了地址和數(shù)據(jù),該接口還包含調(diào)用者的標(biāo)志信息。

非阻塞寫接口:與阻塞寫接口不同的是,當(dāng)指令或數(shù)據(jù)不能被接受時(shí),返回失敗而不等待。否則返回成功。

復(fù)位接口:用于復(fù)位存儲(chǔ)器模型。

為了不強(qiáng)制要求外部提供存儲(chǔ)器模型需要的時(shí)鐘,存儲(chǔ)器模型接口中不包含時(shí)鐘輸入。模型內(nèi)部有一個(gè)專門的時(shí)鐘產(chǎn)生線程。

3.3 存儲(chǔ)器實(shí)體

存儲(chǔ)器模型中的存儲(chǔ)器實(shí)體可以由多個(gè)bank組成,并構(gòu)成一個(gè)子模塊。根據(jù)bank的數(shù)量和種類,該存儲(chǔ)器子模塊具有不同數(shù)量的只讀端口、只寫端口和讀寫端口。為了能盡可能模擬不同的存儲(chǔ)器類型,存儲(chǔ)器子模塊可配置參數(shù)如表1所示。

表1 存儲(chǔ)器配置參數(shù)

基于SystemC的存儲(chǔ)器模型設(shè)計(jì)與性能分析

3.4 存儲(chǔ)器控制器

存儲(chǔ)器控制器由指令隊(duì)列、數(shù)據(jù)緩存、以及仲裁器構(gòu)成。這一部分對(duì)系統(tǒng)的性能有重要影響。讀指令隊(duì)列和寫指令隊(duì)列用來分別緩存讀寫指令。當(dāng)它們寫滿時(shí),新的讀寫操作將失敗或堵塞。指令隊(duì)列的數(shù)量取決于訪問存儲(chǔ)器模型的模塊有幾個(gè)優(yōu)先級(jí)。相同優(yōu)先級(jí)的指令會(huì)被放到同一個(gè)隊(duì)列。讀仲裁器和寫仲裁器分別根據(jù)隊(duì)列中的讀地址和寫地址,讀寫數(shù)據(jù)緩存器的狀態(tài),以及指令優(yōu)先級(jí)來決定發(fā)送哪個(gè)指令到哪個(gè)端口。而如果讀指令和寫指令指向了相同的讀寫端口,讀寫仲裁器將再一次做出仲裁。這里的每個(gè)仲裁器除了上述功能外,具體的仲裁機(jī)制以虛函數(shù)的形式由具體的實(shí)現(xiàn)來決定。在該存儲(chǔ)器模型中實(shí)現(xiàn)了默認(rèn)的基于優(yōu)先級(jí)的輪詢算法。存儲(chǔ)器控制器的配置參數(shù)如表2所示。

表2 存儲(chǔ)器控制器的配置參數(shù)

基于SystemC的存儲(chǔ)器模型設(shè)計(jì)與性能分析

3.5 參數(shù)配置

存儲(chǔ)器模型的眾多參數(shù)需要在構(gòu)造函數(shù)中配置完成。在運(yùn)行階段,不能再更改配置。運(yùn)行階段的配置更改將是我們下一步的研究內(nèi)容,可以用于類似于文獻(xiàn)[8]的自演化系統(tǒng)。

4 應(yīng)用實(shí)例

圖2所示為一個(gè)H.264解碼器模塊框圖。該解碼器共包括四個(gè)模塊以流水線方式工作在宏塊級(jí)別。其中熵解碼產(chǎn)生運(yùn)動(dòng)矢量,變換系數(shù)等信息。殘差恢復(fù)模塊通過反量化、反變換操作得到殘差。宏塊預(yù)測(cè)模塊進(jìn)行幀內(nèi)或幀間預(yù)測(cè)并和殘差一起重建出宏塊數(shù)據(jù)。去快效應(yīng)模塊實(shí)現(xiàn)H.264去塊效應(yīng)濾波。這四個(gè)模塊通過一個(gè)共享的SRAM 來交換數(shù)據(jù)。RTL設(shè)計(jì)人員根據(jù)設(shè)計(jì)指標(biāo)率先完成了各模塊微架構(gòu)的設(shè)計(jì),平均解碼每個(gè)模塊所需時(shí)間在指標(biāo)范圍內(nèi)。

基于SystemC的存儲(chǔ)器模型設(shè)計(jì)與性能分析

圖2 H.264解碼器使用共享存儲(chǔ)器在解碼模塊間交換數(shù)據(jù)

為了確定共享SRAM 引入的性能損失和確定SRAM 的設(shè)計(jì),采用本文存儲(chǔ)器模型進(jìn)行分析。存儲(chǔ)器的大部分參數(shù)已經(jīng)被確定,需要決定采用幾個(gè)bank(每個(gè)bank是一個(gè)單端口SRAM)。另一方面,各模塊讀寫存儲(chǔ)器的時(shí)間也基本確定從而有了可靠地負(fù)載模型。通過改變存儲(chǔ)器模型的bank數(shù),得到結(jié)果如圖3所示。

基于SystemC的存儲(chǔ)器模型設(shè)計(jì)與性能分析

圖3 不同bank數(shù)所對(duì)應(yīng)的單個(gè)宏塊平均解碼時(shí)間占允許時(shí)間的比例

由于bank的增加可以減少訪問存儲(chǔ)器的沖突,模型仿真得到的處理時(shí)間隨bank數(shù)量的增加而減少。但是可以看到bank數(shù)量對(duì)所消耗的時(shí)間影響不大,這說明各解碼模塊訪問存儲(chǔ)器的時(shí)間分布已經(jīng)比較均勻。由于一個(gè)bank的情況已經(jīng)可以滿足要求,所以最后確定bank數(shù)為1。RTL全部完成后的仿真結(jié)果所消耗的時(shí)間比模型所給出的略少一些,原因是RTL設(shè)計(jì)對(duì)訪問共享SRAM 的時(shí)間安排做了進(jìn)一步細(xì)化的工作。

5 結(jié)束語

本文提出了一個(gè)通用的存儲(chǔ)器SystemC模型,該模型采用統(tǒng)一的事務(wù)級(jí)接口,和可配置的時(shí)鐘精準(zhǔn)的內(nèi)部控制邏輯以及存儲(chǔ)器構(gòu)成。通過一系列的參數(shù)配置,該模型能夠幫助設(shè)計(jì)人員快速實(shí)現(xiàn)系統(tǒng)建模并在存儲(chǔ)器設(shè)計(jì)和選擇上做出合理判斷。借助其通用性,它還可以幫助保持一致性和減少重復(fù)勞動(dòng)。該模型被應(yīng)用于視頻解碼案例中,成功預(yù)測(cè)了共享SRAM 的bank數(shù)對(duì)性能的影響,證明了其有效性。

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

    關(guān)注

    463

    文章

    54004

    瀏覽量

    465847
  • soc
    soc
    +關(guān)注

    關(guān)注

    40

    文章

    4574

    瀏覽量

    229091
  • C++
    C++
    +關(guān)注

    關(guān)注

    22

    文章

    2123

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    VTI低功耗SRAM存儲(chǔ)器VTI508HB08

    VTI SRAM存儲(chǔ)器在現(xiàn)代芯片設(shè)計(jì)中的關(guān)鍵作用日益凸顯,尤其在高性能微處理中,其低功耗與高速特性已成為提升系統(tǒng)能效的關(guān)鍵。隨著半導(dǎo)體工藝持續(xù)升級(jí),存儲(chǔ)器在整體芯片功耗中所占比例顯著
    的頭像 發(fā)表于 02-09 14:41 ?132次閱讀

    FM25640B 64 - Kbit 串行 F - RAM:高性能非易失性存儲(chǔ)器的理想之選

    FM25640B 64 - Kbit 串行 F - RAM:高性能非易失性存儲(chǔ)器的理想之選 在電子工程師的日常設(shè)計(jì)工作中,選擇合適的存儲(chǔ)器至關(guān)重要。今天,我們就來深入了解一下 Infineon
    的頭像 發(fā)表于 01-15 17:20 ?458次閱讀

    FIFO存儲(chǔ)器的種類、IP配置及應(yīng)用

    FIRST IN FIRST OUT (先入先出)。顧名思義,F(xiàn)IFO是一個(gè)數(shù)據(jù)具有先進(jìn)先出的存儲(chǔ)器。
    的頭像 發(fā)表于 01-13 15:15 ?367次閱讀
    FIFO<b class='flag-5'>存儲(chǔ)器</b>的種類、IP配置及應(yīng)用

    性能測(cè)試調(diào)優(yōu)實(shí)戰(zhàn)與探索(存儲(chǔ)模型優(yōu)化+調(diào)用鏈路分析

    分析、流量分析、壓測(cè)實(shí)施和剖解調(diào)優(yōu)等主要環(huán)節(jié)中,引發(fā)對(duì)于系統(tǒng)能力底盤夯實(shí)和測(cè)試策略改進(jìn)的諸多思考。 在性能測(cè)試階段,剖析系統(tǒng)能力實(shí)現(xiàn)及調(diào)優(yōu)方案,探索更優(yōu)解及性能測(cè)試策略的提升空間。 ?
    的頭像 發(fā)表于 01-12 14:46 ?1403次閱讀
    <b class='flag-5'>性能</b>測(cè)試調(diào)優(yōu)實(shí)戰(zhàn)與探索(<b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>模型</b>優(yōu)化+調(diào)用鏈路<b class='flag-5'>分析</b>)

    瑞薩RA系列FSP庫開發(fā)實(shí)戰(zhàn)指南之常用存儲(chǔ)器介紹

    存儲(chǔ)器是計(jì)算機(jī)結(jié)構(gòu)的重要組成部分。存儲(chǔ)器是用來存儲(chǔ)程序代碼和數(shù)據(jù)的部件,有了存儲(chǔ)器計(jì)算機(jī)才具有記憶功能?;镜?b class='flag-5'>存儲(chǔ)器種類見圖21_1。
    的頭像 發(fā)表于 01-12 06:21 ?7191次閱讀
    瑞薩RA系列FSP庫開發(fā)實(shí)戰(zhàn)指南之常用<b class='flag-5'>存儲(chǔ)器</b>介紹

    雙口SRAM靜態(tài)隨機(jī)存儲(chǔ)器存儲(chǔ)原理

    在各類存儲(chǔ)設(shè)備中,SRAM(靜態(tài)隨機(jī)存儲(chǔ)器)因其高速、低功耗和高可靠性,被廣泛應(yīng)用于高性能計(jì)算、通信和嵌入式系統(tǒng)中。其中,雙口SRAM靜態(tài)隨機(jī)存儲(chǔ)器憑借其獨(dú)特的雙端口設(shè)計(jì),在高帶寬和多
    的頭像 發(fā)表于 11-25 14:28 ?546次閱讀

    芯源的片上存儲(chǔ)器介紹

    片上FLASH 閃存由兩部分物理區(qū)域組成:主FLASH 存儲(chǔ)器和啟動(dòng)程序存儲(chǔ)器。 ●● 主 FLASH 存儲(chǔ)器,共 64KB,地址空間為 0x0000 0000 - 0x0000 FFFF。該區(qū)
    發(fā)表于 11-12 07:34

    高速存儲(chǔ)器sram,帶ECC的異步SRAM系列存儲(chǔ)方案

    在要求高性能與高可靠性的電子系統(tǒng)中,存儲(chǔ)器的選擇往往成為設(shè)計(jì)成敗的關(guān)鍵。Netsol推出的高速異步SRAM系列,憑借其出色的性能表現(xiàn)與獨(dú)有的錯(cuò)誤校正(ECC)能力,為工業(yè)控制、通信設(shè)備及高精度計(jì)算等應(yīng)用提供了值得信賴的
    的頭像 發(fā)表于 11-05 16:21 ?391次閱讀

    RISC-V嵌入式開發(fā)書里面的存儲(chǔ)模型里面的釋放和獲取

    如下圖是胡振波先生的書《RISC-V架構(gòu)與嵌入式開發(fā)快速入門》第344頁附錄D存儲(chǔ)器模型背景介紹中D.3節(jié)的內(nèi)容。請(qǐng)問“無須屏障其之后的操作”和“無須屏障其之前的操作”是什么意思? “無須屏障其之后
    發(fā)表于 11-05 07:55

    Everspin存儲(chǔ)器8位并行總線MRAM概述

    在需要高速數(shù)據(jù)寫入與極致可靠性的工業(yè)與數(shù)據(jù)中心應(yīng)用中,Everspin推出的8位位并行接口MRAM樹立了性能與耐用性的新標(biāo)桿。這款Everspin存儲(chǔ)器MRAM與SRAM引腳兼容的存儲(chǔ)器,以高達(dá)35
    的頭像 發(fā)表于 10-24 16:36 ?650次閱讀

    簡單認(rèn)識(shí)高帶寬存儲(chǔ)器

    HBM(High Bandwidth Memory)即高帶寬存儲(chǔ)器,是一種基于 3D 堆疊技術(shù)的高性能 DRAM(動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器)。其核心設(shè)計(jì)是通過硅通孔(TSV)和微凸塊(Microbump
    的頭像 發(fā)表于 07-18 14:30 ?4268次閱讀

    MCU存儲(chǔ)器層次結(jié)構(gòu)解析

    ? ? ? ?MCU的存儲(chǔ)器層次結(jié)構(gòu)通過整合不同性能與功能的存儲(chǔ)單元,優(yōu)化系統(tǒng)效率并滿足多樣化場(chǎng)景需求。其核心架構(gòu)可分為以下層次: 一、寄存層(最高速) 定位?:集成于CPU內(nèi)核中,
    的頭像 發(fā)表于 05-09 10:21 ?787次閱讀

    非易失性存儲(chǔ)器芯片的可靠性測(cè)試要求

    非易失性存儲(chǔ)器(NVM)芯片廣泛應(yīng)用于各種設(shè)備中,從智能手機(jī)、個(gè)人電腦到服務(wù)和工業(yè)控制系統(tǒng),都是不可或缺的關(guān)鍵組件,它們不僅提高了數(shù)據(jù)的安全性和可靠性,還極大地增強(qiáng)了系統(tǒng)的整體性能。此外,為了滿足
    的頭像 發(fā)表于 04-10 14:02 ?1685次閱讀

    SK海力士僅選擇存儲(chǔ)器(SOM)的研發(fā)歷程

    人工智能與高性能計(jì)算(HPC)正以空前的速度發(fā)展,將動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)和NAND閃存等傳統(tǒng)存儲(chǔ)技術(shù)發(fā)揮到極致。為了滿足人工智能時(shí)代日益增長的需求,業(yè)界正在探索超越傳統(tǒng)存儲(chǔ)
    的頭像 發(fā)表于 04-03 09:40 ?2011次閱讀

    性鐵電存儲(chǔ)器SF24C64/FM24C64/MB85RC64性能及應(yīng)用介紹

    性鐵電存儲(chǔ)器SF24C64/FM24C64/MB85RC64性能及應(yīng)用介紹
    的頭像 發(fā)表于 03-06 10:06 ?1766次閱讀
    性鐵電<b class='flag-5'>存儲(chǔ)器</b>SF24C64/FM24C64/MB85RC64<b class='flag-5'>性能</b>及應(yīng)用介紹