<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 業(yè)界動(dòng)態(tài) > 基于SystemC的通用嵌入式存儲器模型設計

基于SystemC的通用嵌入式存儲器模型設計

作者: 時(shí)間:2014-11-14 來(lái)源:網(wǎng)絡(luò ) 收藏

  1引言

本文引用地址:http://dyxdggzs.com/article/265385.htm

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

  目前大部分建模方面的文獻是作者對自己所設計芯片整體模型的描述,這種針對特定芯片設計的文獻雖然都有參考價(jià)值,但是其模型本身借鑒性有限。另一方面,構成SoC硬件的基本組件因為可重用的緣故,其模型設計具有更好的可借鑒性。這方面的研究成果相對較少,而且集中在總線(xiàn)建模方面,也可以看到多核設計方面的建模方法。

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

  2 SystemC

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

  3存儲器的建模

  3.1存儲器模型概述

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

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

  

 

  圖1可配置存儲器模型結構

  3.2存儲器接口

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

  阻塞讀接口:該接口用來(lái)讀取給定地址的給定大小的數據,當數據沒(méi)有讀出時(shí),調用這個(gè)接口的模塊線(xiàn)程將被堵塞,直到數據讀出為止。除了地址和數據,該接口還包含調用者的標志信息。

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

  阻塞寫(xiě)接口:該接口用來(lái)向存儲器給定地址寫(xiě)入給定大小的數據。當指令或寫(xiě)數據不能被存儲器模型接收時(shí),調用的線(xiàn)程被堵塞直到接受為止。除了地址和數據,該接口還包含調用者的標志信息。

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

  復位接口:用于復位存儲器模型。

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

  3.3存儲器實(shí)體

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

  

 

  表1存儲器配置參數

  3.4存儲器控制器

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

  

 

  表2存儲器控制器的配置參數

c++相關(guān)文章:c++教程


存儲器相關(guān)文章:存儲器原理




關(guān)鍵詞: SystemC 存儲器

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>