Elaboration Elaboration in SystemC is the phase before the end_of_elaboration() callback is called. This includes calls to the constructors and the before_end_of_elaboration() callback. Simulation Simulation in SystemC is the phase after the end_of_elaboration() callback is called and before the end_of_simulation() callback is called. Time resolution Time shall be represented internally as an integer multiple of the time resolution. The default time resolution is 1 picosecond. Module Modules are the principle structural building blocks of SystemC. Any class derived from the sc_module base class is considered a module. Interface An interface is a class derived from the class sc_interface. An interface proper contains a set of pure virtual functions that shall be defined in one or more channels derived from that interface proper. Such a channel is said to implement the interface. Channel A channel is a non-abstract class derived from one or more interfaces. A channel may be a primitive channel or a hierarchical channel. Primitive channel A primitive channel is a non-abstract class derived from one or more interfaces and also derived from the class sc_prim_channel. Signal A signal is a special type of primitive channel. A signal is an object of the class sc_signal<T>, when T is a type name. Hierarchical channel A hierarchical channel is a non-abstract class derived from one or more interfaces and also derived from the class sc_module. Port A port is either a class derived from the class sc_port or an object of class sc_port. Ports provide the means by which a module can be written such that it is independent of the context in which it is instantiated. A port forwards interface method calls to the channel to which the port is bound. A port defines a set of services (as identified by the type of the port) that are required by the module containing the port. Export An export is an object of class sc_export. Class sc_export allows a module to provide an interface to its parent module. An export forwards interface method calls to the channel to which the export is bound. An export defines a set of services (as identified by the type of the export) that are provided by the module containing the export. Variables Variables in SystemC are regular C++ variables which can be of the following different kinds. Member A member variable is a data member of a class with public, private or protected access. Automatic An automatic variable is declared locally inside a function. Such a variable does not exist until the function is called. At that time the memory for the automatic variable is allocated dynamically from a memory stack and released when the function is finished. Static Static variables are variables which are local to a function but which (unlike auto variables) retain their values between invocations of the function. Global Variables can be declared as global variables, available to everything, these are also known as external variables. External variables are defined outside of any functions and retain their values during the course of a program. Event An event is an object of the class sc_event. Types Native-C++ Native C++ types are the datatypes that are natively available in C++ like char, short, int, long etc. Built-in SystemC Built in SystemC types are the datatypes that are available natively in SystemC like sc_logic, sc_bit, sc_int etc. User-defined types User defined types are the datatypes that are defined by the user like structs, classes, unions, enum etc. Process/Process instance A process instance is an object of an implementation-defined class derived from the class sc_object and created by one of the three macros SC_METHOD, SC_THREAD, or SC_CTHREAD or by calling the function sc_spawn. The term process refers to either a process instance or to the member function that is associated with a process instance when it is created. Static Process A static process is a process created during the construction of the module hierarchy or from the before_end_of_elaboration callback. Dynamic Process A dynamic process is a process created from the end_of_elaboration callback or during simulation. -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Tue Mar 20 23:52:57 2007
This archive was generated by hypermail 2.1.8 : Tue Mar 20 2007 - 23:52:58 PDT