SystemC中的事件
在SystemC中,事件提供了一個底層的處理程序間同步及重新啟動的方式,它能用來實現(xiàn)通道的功能,定義事件的語法如下:
sc_event event_name;
另外,要觸發(fā)或引起一個事件,要使用通知函數(shù)notify(
),語法如下:
event_name.notify(參數(shù)); 或 notify(參數(shù),event_name);
SystemC中的數(shù)據(jù)類型
作為C++語言的擴展,SystemC支持所有C++的數(shù)據(jù)類型,包括long、int、short、char、unsigned
long、unsigned int、unsigned short、unsigned char、float、double、long double和bool。另外,也能根據(jù)需求自行定義數(shù)據(jù)類型。
此外,SystemC還新增描述硬件的數(shù)據(jù)類型,這些類型都以sc_開頭,這些數(shù)據(jù)類型包括sc_bit、sc_logic、sc_int、sc_uint、sc_bigint、sc_biuint、sc_bv、sc_lv、sc_fixed、sc_ufixed、sc_fix、sc_ufix。各個數(shù)據(jù)類型的說明如表4-4所示。
在這里插入圖片描述
SystemC中的定時
為了能夠?qū)崿F(xiàn)描述電路的行為,SystemC增加了對時鐘的支持。在SystemC的庫中,定義了兩個特殊的對象:sc_time類和sc_clock類。
這兩個對象在SystemC庫中定義的時候分別都有不同的構(gòu)造函數(shù),因此用戶可以根據(jù)不同的需要定義自己的時鐘模型。在SystemC中,支持的時間單位包括SC_FS、SC_PS、SC_NS、SC_US、SC_MS和SC_SEC,它們分別表示不同的時間精度。下面是定義一個時鐘的例子,用來簡單說明SystemC中定時的概念。
如果要產(chǎn)生一個周期為10ns的時鐘信號,可以這樣實現(xiàn):
sc_time time(10,SC_NS);
sc_clock clk("clk",time);
也可以這樣定義一個完整的時鐘(包含占空比、開始時間、初始邏輯等參數(shù)):
sc_clock clk("clk",10,SC_NS,0.5,5,SC_NS,false);
這個時鐘周期為10ns,占空比(高電平持續(xù)時間與時鐘周期的比)為0.5(0.5∶1),時鐘初始第一邏輯值的保持時間是5ns,第一個邏輯值是高電平(false)。
另一個和時間概念相關(guān)的是wait(
)函數(shù)。wait( )函數(shù)可以用來描述系統(tǒng)的等待時間。例如,在一個進程中wait(10,SC_NS)表示進程在等待10ns后被激活。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
相關(guān)推薦
進行數(shù)據(jù)類型轉(zhuǎn)換,以滿足不同的需求。本文將以示例的形式羅列并介紹一些常見的數(shù)據(jù)類型轉(zhuǎn)換方法等。? 數(shù)據(jù)類型概念及特點 數(shù)據(jù)類型是一組值的集合
發(fā)表于 06-05 16:40
?1602次閱讀
1.2FreeRTOS中的數(shù)據(jù)類型2017.2.1書zzwFreeRTOS 主要自定義了以下四種數(shù)據(jù)類型:TickType_t如果用戶使能了宏定義configUSE_16_BIT_TICKS,那么
發(fā)表于 07-22 23:27
數(shù)據(jù)類型在數(shù)據(jù)結(jié)構(gòu)中的定義是一個值的集合以及定義在這個值集上的一組操作。數(shù)據(jù)類型包括原始類型、多元組、記錄單元、代數(shù)
發(fā)表于 11-16 08:45
?2.4w次閱讀
VHDL中的標(biāo)識符可以是常數(shù)、變量、信號、端口、子程序或參數(shù)的名字。VHDL中的數(shù)據(jù)類型可以分成四大類: 標(biāo)量型(SCALAR TYPE):屬單元素的最基本的數(shù)據(jù)類型,通常用于描述一個
發(fā)表于 03-30 15:59
?11次下載
ANY數(shù)據(jù)類型 在編程語言 SCL 和 STL 中,如果在塊參數(shù)中設(shè)定了一個 ANY 指針,則任意類型的存儲器都可以在塊調(diào)用時傳遞。 但是,ANY 指針不能存儲有關(guān)存儲器結(jié)構(gòu)的任何信息
發(fā)表于 05-25 11:02
?5110次閱讀
不管在什么語言中,定義一個變量時必然要在內(nèi)存中開辟一個相應(yīng)大小的空間來存儲該變量。不同的數(shù)據(jù)類型在內(nèi)存所占的空間大小不同,其所能表示的數(shù)據(jù)范圍也不相同。在單片機C語言中,常用的基本數(shù)據(jù)類型
發(fā)表于 01-13 15:05
?1次下載
Struct類型是一種由多個不同數(shù)據(jù)類型元素組成的數(shù)據(jù)結(jié)構(gòu),其元素可以是基本數(shù)據(jù)類型,也可以是Struct、數(shù)組等復(fù)雜數(shù)據(jù)類型以及PLC
發(fā)表于 07-25 17:02
?2919次閱讀
Struct數(shù)據(jù)類型使用非常靈活,隨時可以使用,但是相對于PLC數(shù)據(jù)類型 (UDT) 有以下缺點,所以建議需要使用Struct類型時,可以使用PLC數(shù)據(jù)類型(UDT)代替。
發(fā)表于 07-27 16:10
?1723次閱讀
常用的3種數(shù)據(jù)類型:1、Python數(shù)據(jù)類型第一種:字符串(str)。
2、Python數(shù)據(jù)類型第二種:整數(shù)(int)。
3、Python數(shù)據(jù)類型第三種:浮點數(shù)(float)。
發(fā)表于 02-23 15:21
?1731次閱讀
在運算之前我們必須首先定義出數(shù)據(jù)類型,定義出腳本支持的數(shù)據(jù)類型,這是運算的基礎(chǔ)。
這一小節(jié)我們將定義出數(shù)據(jù)類型,在這里我們暫時定義四個數(shù)據(jù)類型:
發(fā)表于 03-03 10:10
?893次閱讀
在MATLAB中,變量和數(shù)據(jù)類型是非常重要的概念。
發(fā)表于 07-05 09:44
?1737次閱讀
要求 全局數(shù)據(jù)塊已打開。 操作步驟 要聲明一個 ARRAY 數(shù)據(jù)類型的變量,請按以下步驟操作: 在“名稱”(Name) 列中,輸入變量的名稱。 在“數(shù)據(jù)類型”列
發(fā)表于 07-06 11:08
?1024次閱讀
可以像使用標(biāo)準(zhǔn) PLC 數(shù)據(jù)類型 (UDT) 那樣,聲明和使用 F 型 PLC 數(shù)據(jù)類型 (UDT) 。可以在安全程序中以及標(biāo)準(zhǔn)用戶程序中使用 F 型 PLC 數(shù)據(jù)類型 (U
發(fā)表于 08-27 09:54
?1083次閱讀
Redis的數(shù)據(jù)類型有哪些?有五種常用數(shù)據(jù)類型:String、Hash、Set、List、SortedSet。以及三種特殊的數(shù)據(jù)類型:Bitmap、HyperLogLog、Geospatial
發(fā)表于 10-09 10:51
?751次閱讀
PLC(可編程邏輯控制器)是一種工業(yè)自動化設(shè)備,用于控制機械和工業(yè)過程。在PLC編程中,數(shù)據(jù)類型是非常重要的概念,因為它決定了程序中數(shù)據(jù)的存
發(fā)表于 12-19 11:39
?3904次閱讀
評論