33
IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik, S. Altmann Fraunhofer Gesellschaft EAS/IIS SDA 2004 8. September 2004 Using ModelSim, Matlab/Simulink and NS for Simulation of Distributed Systems

Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

  • Upload
    leliem

  • View
    231

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

IIS

Fraunhofer InstitutIntegrierte Schaltungen

U. Hatnik, S. Altmann

Fraunhofer Gesellschaft EAS/IIS

SDA 20048. September 2004

Using ModelSim, Matlab/Simulink and NS forSimulation of Distributed Systems

Page 2: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

2

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Outline

• Motivation

• Requirements

• Object Oriented Simulation

• Objects and Object Structure

• Open Model Interface

• Object Communication Versions

• Conclusions

Page 3: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

3

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Motivation

Analysis of communication systems through abstract network simulation

• Analysis of workload, bottlenecks,

reserves and configurations

• Guarantee of the Quality of Service

• Effects of distributed services

• Development of new protocols

• Error simulation

Server

Network(WAN, LAN)

Clients

Page 4: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

4

IIS

Fraunhofer InstitutIntegrierte Schaltungen

z−1 +

0 k

z−1 +

1k kk 0 1

+ +

Motivation

Detailed simulation of single components of a distributed system

• Development of new soft- and hardware

e.g. network adapter, protocol accelerator,

signal processing algorithms

• Exploration of existing components

e.g. with hardware debugger

• Simplification of the design process

• Validation and test

• Fault diagnostics

Page 5: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

5

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Motivation

Network Simulator NS-2:

• Based on abstract models, without real reference data

• Provided with extensive libraries (e.g. protocols, transmission lines)

• Not well suited for circuit simulation (absence of libraries, languages, tools)

VHDL/Verilog Simulator ModelSim:

• Modelling with low abstraction level possible

• Provided with extensive circuit libraries

• Not well suited to simulate communication networks

Page 6: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

6

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Motivation

Matlab/Simulink

• Models mainly based on differential and difference equations

• More and more libraries and toolboxes available (e. g. for signal processing)

• Not well suited to simulate circuits or for protocol development

Real system components, e. g. User-Mode Linux:

• If no model available

• If real stimuli data necessary

• For validation and test (comparison of real components and models)

Page 7: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

7

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Requirements for a Suitable Simulation Environment

• Combination of models with different abstraction levels

• Less restrictions in terms of modelling languages

• Good extensibility (models, simulation algorithms)

• High flexibility at low complexity of the framework

• Integration of soft- und hardware components

• Distributed simulation

=> Coupling of Simulators

Page 8: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

8

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Obj. 2.2Obj. 2.1

Obj. 3.2Obj. 3.1

Obj. 1

Interface

Sim. Algorithm

Object

other Objects

Model

The Object Oriented Approach

• Partitioning of the system

• Object is equivalent to subsystem

• Object = Model + Simulator + Interface

• Object can use further objects

• Object encapsules implementation details

=> Simple replacement of objects

=> Object implementation can be changed easily

=> Integration of real soft- and hardware possible

Page 9: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

9

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Top Level View

Network Model

Server

Network(WAN, LAN)

Clients

S SS

C CC

Server Models

Client Models

Page 10: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

10

IIS

Fraunhofer InstitutIntegrierte Schaltungen

The Network Simulator NS Version 2

• LAN, WAN, mobile- and satellit networks

• Simulator- and model implementation with oTcl and C++

• Library and examples (protocols, network types etc.)

• Dynamic scenarios

• Animation tool NAM

• Free software, source code available

Page 11: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

11

IIS

Fraunhofer InstitutIntegrierte Schaltungen

The Network Simulator NS Version 2

NetworkSimulatorNS-2

C C C

S S S

Top Level System Model

Page 12: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

12

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Top Level Object

Interface

NetworkSimulator

Top Level System Model

NS-2

C C C

S S S

Page 13: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

13

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Detailed Simulation of a single Component

I1I2

I3

I4I5

O1

O2

Network Model

S SS

C CC

Page 14: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

14

IIS

Fraunhofer InstitutIntegrierte Schaltungen

ModelSim Object

E1E2

E3

E4E5

A1

A2

VHDL / VerilogSimulatorModelSim

hardwarecomponent

Page 15: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

15

IIS

Fraunhofer InstitutIntegrierte Schaltungen

ModelSim Object

Interface

VHDL / VerilogSimulatorModelSim

E1E2

E3

E4E5

A1

A2

hardwarecomponent

Page 16: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

16

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Matlab/Simulink Object

Matlab/Simulink

signal processing

Page 17: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

17

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Matlab/Simulink Object

Matlab/Simulink

signal processing

Interface

Page 18: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

18

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Applications

User Mode LinuxSystem 1

Virtual Network Module

Applications

User Mode LinuxSystem 2

Linux System

User Mode Linux Object

Page 19: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

19

IIS

Fraunhofer InstitutIntegrierte Schaltungen

User Mode Linux Object

Interface

Applications

User Mode LinuxSystem 1

Virtual Network Module

Applications

User Mode LinuxSystem 2

Linux System

Page 20: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

20

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Object StructureInterface

NetworkSimulatorNS-2

Top Level System Model

C C C

S S S

Page 21: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

21

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Object Structure

Interface

E1E2

E3

E4E5

A1

A2ModelSim HardwareComponent

Interface

NetworkSimulatorNS-2

Top Level System Model

C C C

S S S

Interface

E1E2

E3

E4E5

A1

A2ModelSim HardwareComponent

Page 22: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

22

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Object Structure

Interface

E1E2

E3

E4E5

A1

A2ModelSim HardwareComponent

Interface

NetworkSimulatorNS-2

Top Level System Model

C C C

S S S

Interface

E1E2

E3

E4E5

A1

A2ModelSim HardwareComponent

Interface

System

Applications

User Mode LinuxSystems

Software

Page 23: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

23

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Object Structure

Interface

E1E2

E3

E4E5

A1

A2ModelSim

Interface

Matlab/Simulink Signal Processing

Hardware

Algorithm

Component

Interface

NetworkSimulatorNS-2

Top Level System Model

C C C

S S S

Interface

E1E2

E3

E4E5

A1

A2ModelSim HardwareComponent

Interface

System

Applications

User Mode LinuxSystems

Software

Page 24: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

24

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Object Structure

Interface

E1E2

E3

E4E5

A1

A2ModelSim

Interface

Matlab/Simulink Signal Processing

Hardware

Algorithm

Component

Interface

NetworkSimulatorNS-2

Top Level System Model

C C C

S S S

Interface

E1E2

E3

E4E5

A1

A2ModelSim HardwareComponent

Interface

System

Applications

User Mode LinuxSystems

Software

Interface

System Hardware FPGA

Page 25: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

25

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Object Structure

Interface

E1E2

E3

E4E5

A1

A2ModelSim

Interface

Matlab/Simulink Signal Processing

Hardware

Algorithm

Component

Interface

NetworkSimulatorNS-2

Top Level System Model

C C C

S S S

Interface

E1E2

E3

E4E5

A1

A2ModelSim HardwareComponent

Interface

System

Applications

User Mode LinuxSystems

Software

Interface

System Hardware FPGA

Page 26: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

26

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Open Model Interface (OMI)

• IEEE standard

• Object oriented approach

• Open and independent interface

• Dynamic simulation control

• Intellectual property (IP) protection

• Visibility of intern signals

• Licence and version management

• Flexible model creation

• Model query functions

Properties:

Page 27: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

27

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Basic Structure of the Open Model Interface

Model Manager

OMILibrary

Model 1

Model 2

Instance 1 Instance 2 Instance 3

Application

Page 28: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

28

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Basic Structure of the Open Model Interface

Model Manager

OMILibrary

Model 1

Model 2

Instance 1 Instance 2 Instance 3

Interface

NetworkSimulatorNS-2

Top Level System Model

C C C

S S S

Page 29: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

29

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Basic Structure of the Open Model Interface

Model Manager

OMI

E1E2

E3

E4E5

A1

A2ModelSim HardwareComponent

System

Applications

User Mode LinuxSystems

SoftwareMatlab/Simulink Signal Processing

Algorithm

Interface

NetworkSimulatorNS-2

Top Level System Model

C C C

S S S

Library

Model 1

Model 2

Page 30: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

30

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Basic Structure of the Open Model Interface

Model Manager

OMI

E1E2

E3

E4E5

A1

A2ModelSim HardwareComponent

System

Applications

User Mode LinuxSystems

SoftwareMatlab/Simulink Signal Processing

Algorithm

Interface

NetworkSimulatorNS-2

Top Level System Model

C C C

S S S

Page 31: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

31

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Basic Structure of the Open Model Interface

Model Manager

OMI

TCP/IP-Sockets

E1E2

E3

E4E5

A1

A2ModelSim HardwareComponent

System

Applications

User Mode LinuxSystems

SoftwareMatlab/Simulink Signal Processing

Algorithm

Interface

NetworkSimulatorNS-2

Top Level System Model

C C C

S S S

(PVM, CORBA, HLA)

Page 32: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

32

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Object Communication Versions

• TCP/IP-Sockets(high effort, dependent on platform)

• Parallel Virtual Machine (PVM)(low effort, independent of platform)

• High Level Architecture (HLA)(developed especially for simulator coupling, mechanism for synchronisation)

• Common Object Request Broker Architecture (CORBA)(transparent coupling of distributed objects, client server architectur)

Page 33: Using ModelSim, Matlab/Simulink and NS for Simulation of ...publications.eas.iis.fraunhofer.de/papers/2004/021/slides.pdf · IIS Fraunhofer Institut Integrierte Schaltungen U. Hatnik,

33

IIS

Fraunhofer InstitutIntegrierte Schaltungen

Conclusions

• Simulation of distributed systems via simulator coupling

=> Combination of suitable simulators (abstraction level,

modelling language, available libraries)

• OOS approach (autonomous objects, optimale adaption on requirements,

integration of real soft- and hardware components possible)

• OMI (interface standard for object coupling)

• Object communication via TCP/IP-Sockets

=> distributed simulation is easily possible

• Further coupling methods possible (PVM, CORBA, HLA)

• Very flexible and user comfortable simulation environment