Interface Architecture Development

Download Report

Transcript Interface Architecture Development

Principles of
Engineering System Design
Dr T Asokan
[email protected]
n
INTRODUCTION TO SYSTEMS DESIGN
Interface Architecture Development
Dr T Asokan
[email protected]
Six functions of Design Process
1. Define System Level Design Problem :Originating requirements development
2. Develop the system functional architecture
3. Develop the system physical architecture
4. Develop the system operational architecture
5. Develop the interface architecture
6. Define the qualification system for the system
T Asokan
ED309
CASE STUDY: PATH FINDER
•
Path finder system that was deployed to the
surface of Mars for landing on 4th July 1997
was a great success in many ways.
•
Few days into the mission, operators on the
ground noticed that total system resets were
occurring that were causing the loss of data.
•
A shared memory interface was used as the
system interface between various sub
systems.
•
Mutual exclusion (mutex) locks were
employed to give an activity access to the
interface.
CASE STUDY: PATH FINDER
•
Meteorological data was so voluminous that
the activity had to obtain and release mutexes
several times before it was finished.
•
The long running, medium priority,
communication activity would infrequently
interrupt the meteorological activity during its
pause and gain control of the interface.
•
Duration of these two tasks were sufficiently
long to invoke a watchdog timer that was
employed to ensure that the high priority bus
management task was executing
appropriately.
•
In such rare cases, watch dog timer initiated a
total system reset to prevent any further
damage to the system.
•
Jet Propulsion Lab. Engineers ran a
pathfinder replica on earth till they reached the reset
situation.
•
It was found that the interface software
(VXworks) had been programmed without a feature
called ‘priority inheritance’.
•
JPL engineers uploaded a short C
programme and Pathfinder did not experience
anymore system resets.
INTERFACE DESIGN
Interfaces are common failure points in the system.
An Interface is a connection resource for hooking to
another system’s interface (an external interface) or
for hooking one system’s component to another (an
internal interface).
• Identifying interfaces (external and
internal)
• Allocating inputs and outputs for the
interfaces
• Derive interface requirements
• Exploring alternative interface architectures
Interface requirements
• Performance: Throughput and response time
• Fidelity ( should not change the data during
transmission)
• Deliver every item placed on the interface
• Should detect faults and recover gracefully
T Asokan
ED309
Generic Interface architectures
MESSAGE PASSING: - mail delivery that predictably
occurs once or twice a day, allowing the receivers to
access it immediately or wait until a more opportune
time
SHARED MEMORY : A meeting or conference in which
only one person speaks and conveys relatively compact
messages, all can hear what is said but yet are
restrained from other productive work.
NETWORK: a telephone conversation that can involve
messages of widely varying lengths and can be
instigated at almost any time.
T Asokan
ED309
Message Passing architectures
• Used to allow predictable exchange of information
• Commonly found as an internal interface
• Message consists of a protocol and data segments
• Protocol segment includes:
•
size of the message
•
address of the node to receive the
message
T Asokan
ED309
Process of communication
1. One node must win control over the communication
channel by a priority scheme implemented by the
system
2. The winning node becomes the master and sends a
protocol segment to the intended receiving node(s),
called slave(s).
3. The slave node notifies the master that the protocol
segment was received successfully.
4. The master sends/receives the data segment
to/from the slave.
5. The slave notifies that the data segment transfer is
complete
6. The master surrenders control of the communication
channel.
T Asokan
ED309
 Most preferred application of message
passing is for systems that can define a
predictable message transmission
schedule upon initialisation
 Updates rates are on the order of 0.01 to 1
second
 Message passing is not preferred where
substantial portions of the traffic include
asynchronous communication
Shared Memory Architectures
• Asynchronous communication requests are
handled
• A fast access storage device, typically a
memory device
T Asokan
ED309
Communication process
• A processor generates a read or write
request for another address in shared
memory
• The current owner of this variable is
notified of the request
• The cache memory of the current owner is
dumped to shared memory
• The read or write request of the processor
is completed with a data transfer
 Performance of shared memory degrades
substantially if the requested information is not
in the cache memory of the interface
 In this case all activity is blocked until the
required variables are retrieved
 Works best in highly parallel software
applications in which the global data of each
application must be accessed frequently by the
application and infrequently or never by other
applications
Network Architecture
• A distributed collection of shared memory systems
: LAN
• Each shared memory system has the ability to tap
into the shared memory of other systems
• Provides a demand-based service, unlike message
passing where scheduled transfers take place.
• Networks can serve hundreds of nodes (message
passing architecture is limited to 32 nodes)
• Includes communication hardware and software
package, called network operating system
• Software provides priority based queuing models
• Provides extensive fault checking
Most common types of Network
Architectures :
• Master-slave or pipeline
• Bus
• Star or Spoke
• RING
• MESH
C1
I12
C2
I23
Pipeline architecture
•Appropriate when the components
only need to communicate with their
neighbor in the network
C3
C1
C2
I123
C3
BUS architecture
•Most common architecture
•Appropriate for large number of components
C1
I12
C4
I24
C2
I34
C3
Star or Spoke Architecture
• Isolates one component as central
processor that manages the communication
C2
I12
C1
I23
I13
RING Architecture
•Suitable for office settings
C3
MESH Architecture
C2
I12
•Provides redundancy
•Used in parallel
computing and
telephone networks
I23
C1
I13
C3
I13
I46
I17
C7
I67
C6
I56
C4
I45
C5