色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

SystemC中的模塊與進程

麥辣雞腿堡 ? 來源:TrustZone ? 作者:TrustZone ? 2023-11-02 15:31 ? 次閱讀

SystemC中的模塊

模塊(SC_MODULE)是SystemC系統建模的一個基本單位。一個系統由許多個模塊構成,各個模塊實現系統中不同的功能。在設計中,設計者需要根據功能把復雜的系統劃分成若干個更小、更易于管理的模塊。模塊內部包含若干個進程(Process)來描述模塊的功能。

一個模塊可以包含端口、內部信號、內部數據、子模塊、進程、構造函數和析構函數等,這些元素實現了模塊要求的功能。SC_MODULE是SystemC庫中定義的一個宏,使用它定義一個模塊實際上是定義了一個新對象。下面是一個半加器的例子:

//File:myand.h
#include < systemc.h > //該文件中存有SystemC類庫的定義,所有SystemC模塊都
//必須包含這個文件
SC_MODULE (myand) //這個模塊的名字為myand
{
   sc_in< bool > a,b; //輸入端口
   sc_out< bool > c; //輸出端口
   void proc_and ( ); //聲明進程proc_and
   SC_CTOR (myand) { //構造函數
       SC_METHOD (proc_and); //proc_and是一個SC_METHOD型進程
       sensitive < < a < < b ; //敏感變量
   }
}
//myand.cpp //這個文件存放進程的定義
#include "myand.h″
void myand::proc_and( )
{
     c=a.read( ) & b.read( );
}

模塊與模塊之間通過通道實現通信,而進程之間則利用通道或事件互相通信。這是最基本的系統建模概念。模塊、端口、接口和通道這些概念在4.7.6節事務級建模中已經有過介紹。

信號是SystemC中新增加的一個概念,模塊之間的通信需要通過端口連接到通道。信號(以sc_signal為例)實現模塊之間端口的連接。信號也是一種通道。

信號與Verilog中的wire類似,可以實現模塊之間的互連,這是一種硬件方式的互連,因此是可綜合的設計。信號一般通過read( )和write( )函數來讀/寫,由于信號總是連接到端口上,如sc_in、sc_out及sc_inout 等,也可以通過端口讀/寫信號。

其中,sc_in端口支持read( )、event( )、posedge( )及negedge( )4種方法,而sc_out和sc_inout還支持write( )方法。

SystemC中的進程

進程是SystemC中基本的運行單元,調用進程可以仿真目標設備或系統的行為。進程是一個獨立的處理單元,可以實現SystemC中并發的行為動作。

并發是SystemC在C++基礎上新增加的概念。對于每個獨立的進程來說,只有在它的敏感信號或敏感事件發生時進程才會被調用,而在其他情況下處于保持狀態。

當多個獨立的進程有同一個敏感變量時,這個敏感變量可以觸發這些進程的調用,實現并發的行為。SystemC的進程有3種:SC_METHOD、SC_THREAD、C_CTHREAD。

  • ? 方法進程(SC_METHOD)是目前唯一可綜合的寄存器傳輸級進程,它可以描述同步或非同步系統。方法進程由sensitive()、sensitive_pos( )、sensitive_neg( )等函數中的敏感信號觸發。當敏感列表上有事件發生時,方法進程就會被調用。方法進程調用后需要立即返回,因此在該進程中不允許使用wait( )之類的語句。方法進程由于面向可綜合的設計,而且方法進程的調用特性使它更傾向于在較低的抽象層次上使用,如在寄存器傳輸層次上。
  • ? 線程進程(SC_THREAD)在執行過程中能夠被掛起和重新激活,可以使用wait( )語句執行掛起動作,當敏感事件發生時被重新激活執行。由于線程進程的這個特點,它更加適合于較高抽象層次上的行為和系統的描述。線程進程的另外一個用途就是可以用來描述驗證平臺(testbench)。
  • ? 鐘控線程進程(SC_CTHREAD)是一種繼承于線程進程的特殊進程,可以認為是線程進程和方法進程在描述行為上的一個折中。它只能在時鐘的上升沿或下降沿被觸發,這種行為其實更接近于實際硬件的行為。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 模塊
    +關注

    關注

    7

    文章

    2714

    瀏覽量

    47498
  • ESL
    ESL
    +關注

    關注

    1

    文章

    74

    瀏覽量

    21358
  • 進程
    +關注

    關注

    0

    文章

    203

    瀏覽量

    13962
  • 系統
    +關注

    關注

    1

    文章

    1017

    瀏覽量

    21358
收藏 人收藏

    評論

    相關推薦

    如何在ModelSim下用SystemC的做驗證?

    SystemC和SystemVerilog在設計的地位問題,我認為在驗證方面,SystemC有明顯的優勢。如果你設計純粹的ASIC,那么用SystemVerilog可能就足夠了。但是在很多場合,軟硬件同時存在
    發表于 03-01 11:30

    Verilog generate if 語句如何用systemc實現?

    Verilog generate if語句如何用systemc實現?例如:generateif (SIZE < 8)assign y = a & b & c;else
    發表于 08-28 12:06

    Verilog generate if語句如何用systemc實現?

    1.Verilog generate if語句如何用systemc實現?例如:generateif (SIZE < 8)assign y = a & b & c;else
    發表于 08-29 16:11

    systemC設計如何實現上拉和下拉?

    在verilog實現上拉和下拉很容易,使用pullup 和 pulldown 就行,但在systemC設計如何實現上拉和下拉?
    發表于 07-22 22:37

    SystemC是什么?有什么作用?

    SystemC是什么?SystmeC的作用是什么?
    發表于 06-21 08:05

    SystemC是什么?SystmeC的作用是什么?

    SystemC是什么?SystmeC的作用是什么?SystemC的用途是什么?
    發表于 06-21 07:37

    SystemC循環模型11.2版用戶指南

    查看本節中使用ARM SystemC周期模型的前提條件。 有關以下必備條件的詳細信息,請參閱周期模型系統C運行時安裝指南(101146): ·您的環境必須安裝受支持的周期模型SystemC
    發表于 08-12 06:21

    Cortex-R8 SystemC循環模型用戶指南

    標準的模擬器進行編譯。 您可以在ARM周期模型參考平臺中使用SystemC周期模型,也可以將它們直接集成到任何符合IEEE 1666的SystemC環境
    發表于 08-16 06:47

    Cortex-R52 SystemC循環模型11.2版用戶指南

    標準的模擬器進行編譯。 您可以在ARM周期模型性能分析工具包(CPAK)中使用SystemC周期模型,也可以將它們直接集成到任何符合IEEE 1666的SystemC環境
    發表于 08-18 07:25

    Systemc From The Ground Up

    Systemc From The Ground Up:The first question any reader should ask is “Why this book?” We
    發表于 07-10 17:27 ?0次下載
    <b class='flag-5'>Systemc</b> From The Ground Up

    基于SystemC的系統驗證研究和應用

    視頻編解碼芯片中運動估計與補償單元(MECU)的算法復雜,使用傳統硬件描述語言建立模型和模型驗證的過程繁瑣耗時,為了縮短芯片驗證時間,本文針對MECU模塊提出了基于SystemC語言
    發表于 02-24 12:07 ?16次下載

    數字專用集成電路設計SystemC建模驗證方法

    數字專用集成電路設計SystemC建模驗證方法
    發表于 07-17 16:36 ?31次下載

    Systemc語言_簡介

    systemc語言簡單介紹,有助于初學者更好的運用和了解
    發表于 12-07 10:33 ?0次下載

    SystemC的數據類型概念

    SystemC的事件 在SystemC,事件提供了一個底層的處理程序間同步及重新啟動的方式,它能用來實現通道的功能,定義事件的語法如下: sc_event event_name;
    的頭像 發表于 11-02 15:44 ?1003次閱讀
    <b class='flag-5'>SystemC</b><b class='flag-5'>中</b>的數據類型概念

    SystemC TLM的接口

    SystemC TLM的接口 在SystemC TLM,接口是一個C++的抽象類。抽象類的所有方法都是用“=0”標識表示的純虛函數。C
    的頭像 發表于 11-02 15:54 ?859次閱讀
    主站蜘蛛池模板: 少妇的肉体AA片免费| 小短文H啪纯肉公交车| 久久久久久久99精品免费观看| 果冻传媒2021精品影视| 国产中文字幕乱码免费| 久久99re热在线观看视频| 麻豆XXXX乱女少妇精品| 欧美丰满熟妇无码XOXOXO| 三级叫床震大尺度视频| 小妇人电影免费完整观看2021| 亚洲这里只有精品| 最近更新2019中文字幕免费| www.久艹| 国产视频www| 久久久免费热线精品频| 欧美同志高清vivoeso| 偷拍自偷拍亚洲精品| 亚洲一级电影| a国产成人免费视频| 国产精品免费视频播放| 久草在线福利视频在线播放| 欧美大香线蕉线伊人久久| 色精品极品国产在线视频| 亚洲精品国产AV成人毛片| 18国产精品白浆在线观看免费| 爱做久久久久久| 国产亚洲视频在线| 美女胸网站| 偷窥美女3| 最新高清无码专区在线视频| 动漫美女禁区图| 久久久免费观看| 日韩一级精品久久久久| 亚洲最大成人| 成年人免费观看视频网站| 狠狠干.in| 且试天下芒果免费观看| 亚洲精品线在线观看| 99视频久久精品久久| 国产亚洲精品久久久久久一区二区| 乱VODAFONEWIFI熟妇|