Language features SystemC




1 language features

1.1 modules
1.2 ports
1.3 signals
1.4 exports
1.5 processes
1.6 channels
1.7 interfaces
1.8 events
1.9 data types





language features
modules

systemc has notion of container class called module. hierarchical entity can have other modules or processes contained in it.


modules basic building blocks of systemc design hierarchy. systemc model consists of several modules communicate via ports. modules can thought of building block of systemc.


ports

processes used describe functionality. processes contained inside modules. systemc provides 3 different process abstractions used hardware , software designers.


ports allow communication inside module outside (usually other modules) via channels.


signals

systemc supports resolved , unresolved signals. resolved signals can have more 1 driver (a bus) while unresolved signals can have 1 driver.


exports

modules have ports through connect other modules. systemc supports single-direction , bidirectional ports.


exports incorporate channels , allow communication inside module outside (usually other modules).


processes

processes used describe functionality. processes contained inside modules. systemc provides 3 different process abstractions used hardware , software designers. processes main computation elements. concurrent.


channels

channels communication elements of systemc. can either simple wires or complex communication mechanisms fifos or bus channels.


elementary channels:



signal: equivalent of wire
buffer
fifo
mutex
semaphore

interfaces

ports use interfaces communicate channels.


events

events allow synchronization between processes , must defined during initialization.


data types

systemc introduces several data types support modeling of hardware.


extended standard types:



sc_int<n> n-bit signed integer
sc_uint<n> n-bit unsigned integer
sc_bigint<n> n-bit signed integer n > 64
sc_biguint<n> n-bit unsigned integer n > 64

logic types:



sc_bit 2-valued single bit
sc_logic 4-valued single bit
sc_bv<n> vector of length n of sc_bit
sc_lv<n> vector of length n of sc_logic

fixed point types:



sc_fixed<> templated signed fixed point
sc_ufixed<> templated unsigned fixed point
sc_fix untemplated signed fixed point
sc_ufix untemplated unsigned fixed point






Comments

Popular posts from this blog

Mobility.2C training and insignia Impi

Expenses controversy Ian Gibson (politician)

11th century parish church of St Leonard Hythe, Kent