Previous Up Next

Chapter 6  Architecture

An architecture is specified as a non directed graph where vertices are of two types: operator or communication medium, and each edge is a connection between an operator and a communication medium.

6.1  Operator

6.1.1  To create an operator definition


Figure 6.1: Definition of an operator


Figure 6.2: New U operator definition window

From the Architecture menu of the main window, choose the Define Operator option (cf. figure 6.1). It opens a dialog window. Type the name of the new operator (e.g. U). Then click OK. It opens the new operator definition window (cf. figure 6.2). By default the code will be generated only for the loop phase of the operator. See the section 6.1.2 to set its gates, durations and code phases.

6.1.2  To modify an operator definition

From the Architecture menu of the main window, Choose the Edit Operator Definition option. It opens a browse window. Select the target operator. It opens its definition window with Modify gates, Modify durations, and Modify code generation phases buttons.

Gates

Click on the Modify gates button. It opens a dialog window in which you can set the gates, one per line. For example type

TCP x
TCP y

A gate has the following syntax:

 gate_definition ::= medium_definition_name gate_name

where:

Durations

Click on the Modify durations button to specify durations by operation (cf. chapter 7).

Code generation phases

Click on the Modify code generation phases button. Check init (resp. end) to generate code in the initialization phase (resp. ending phase).
Note: You can modify local and global operators (cf. section 3.1). Modifications on a global operator impact only the current application and the library remains unchanged. To modify a global operator over-all, open the corresponding SynDEx library file (e.g. libs/u.sdx to modify u/U). Modifications on a definition in a library may have consequences on all the applications using this library.

6.1.3  To delete an operator definition

From the Architecture menu of the main window, choose the Delete Operator option. It lists the local operator definitions (cf. section 3.1). Select the target operator.
Note: Deleting a global operator (cf. section 3.1) impacts only the current application.

6.2  Communication medium

6.2.1  To create a medium definition

From the Architecture menu of the main window, choose the Define Medium option. It opens a dialog window. Type the name of the new communication medium. Then click OK. It opens the new communication medium definition window. By default a new communication medium has type SAM point-to-point. See the section 6.2.2 to set its type and durations.

6.2.2  To modify a medium definition

From the Architecture menu of the main window, Choose the Edit Medium Definition option. It opens a browse window. Select the target communication medium. It opens its definition window with Modify type, and Modify durations buttons.

Type

Click on the Modify type button. It opens a dialog window in which you can change the type of the communication medium. For example, check SAM MultiPoint (resp. RAM).

Durations

Click on the Modify durations button to specify durations by data type (cf. chapter 7).
Note: You can modify local and global media (cf. section 3.1). Modifications on a global communication medium impact only the current application and the library remains unchanged. To modify a global communication medium over-all, open the corresponding SynDEx library file (e.g. libs/u.sdx to modify u/TCP). Modifications on a definition in a library may have consequences on all the applications using this library.

6.2.3  To delete a medium definition

From the Architecture menu of the main window, choose the Delete Medium option. It lists the local communication medium definitions (cf. section 3.1). Select the target communication medium.
Note: Deleting a global communication medium (cf. section 3.1) impacts only the current application.

6.3  Architecture

6.3.1  To create an architecture definition

From the Architecture menu of the main window, choose the Define Architecture option. It opens a dialog window. Type the name of the new architecture. Then click OK. It opens the new architecture definition window. Now you may construct a graph with references to operators and media.

New operator reference

To reference an operator into an architecture, from the Edit menu of the architecture window choose the Reference Operator option. It opens a browse window. Select the target operator. It opens a dialog window. Type the name of the reference. Then click OK.

New medium reference

To reference a communication medium into an architecture, from the Edit menu of the architecture window choose the Reference Medium option. It opens a browse window. Select the target operator. It opens a dialog window. Type the name of the reference. Then click OK. In case of a SAM multipoint medium, it opens a dialog window. Check Broadcast or No Broadcast for the mode of the reference. Then click OK.
Note for a SAM multipoint medium reference: In case of a SAM multipoint medium in Broadcast mode, all operators connected to this communication medium will receive each and every message sent on the communication medium. In case of SAM multipoint medium in No Broadcast mode, each message will be received by only one operator: the destination operator of the message. Right click on a medium reference and choose Broadcast Mode to change it.

New connection

To connect an operator and a communication medium, point the cursor at a gate of the operator reference, middle click, then drag and drop on the communication medium reference.

6.3.2  To set the main architecture


Figure 6.3: Set u/biProc as main architecture in examples/tutorial/example7/example7.sdx

Set the main operator

To define an operator of an architecture as main, click on the target operator, right click, then choose the Set As Main Operator option.

Set the main architecture

To define an architecture as main, right click on the background of the target architecture. Choose the Set As Main Architecture option (cf. figure 6.3). The architecture window is now labelled with (main).

Edit the main architecture

To open the main architecture, from the Architecture menu of the main window, choose the Edit Main Architecture option.

6.3.3  To modify an architecture definition

From the Architecture menu of the main window, Choose the Edit Architecture Definition option. It opens a browse window. Select the target architecture. It opens its definition window.
Note: You can modify local and global architectures (cf. section 3.1). Modifications on a global architecture impact only the current application and the library remains unchanged. To modify a global architecture over-all, open the corresponding SynDEx library file (e.g. libs/u.sdx to modify u/biProc). Modifications on a definition in a library may have consequences on all the applications using this library.

6.3.4  To delete an architecture definition

From the Architecture menu of the main window, choose the Delete Architecture option. It lists the local architecture definitions (cf. section 3.1). Select the target architecture.
Note: Deleting a global architecture (cf. section 3.1) impacts only the current application.


Previous Up Next