Block Interface Design

From EUDP
Revision as of 08:50, 25 September 2012 by Opprud (Talk)

Jump to: navigation, search

What

Block Interface Design, is the process of developing one or more suited methods for connecting two or more modules in a system.

Interfaces, between two (or more) blocks must be coherent (i.e. both shall implement same interface, allowing interconnect).

How

Ingredients

Interface design, dependant of the nature of the system to be, requires several of the following inputs :

  • Block & Component diagrams
  • SW & Electronics specification/requirements
  • Circuit board and/or sub-system specifications
  • System specification
  • Interface documentation (formal or informal)
  • System and sub-system descriptions
  • Operational concepts
  • Product information (e.g. for the complex electronic device)

Process

Interface design, is basically the process of iterating through all functional blocks in the system-to-be, assesing

  • desired functionality
  • required information flow
  • suited standards for exchanging information / power / data / etc

Thus by having a common understanding of the desired functionality, one can select suited interfaces, that connects the blocks to be designed, being BOTH HW and SW.

Again, if the Interface Design activities reveals that functionality has not been assigned in an optimal manner, smaller [repartitioning] might be necessary.

This can allow for another, perhaps better, interface selection.


When you feel that the system interfaces have been identified, and described, it is time to perform an Interface Analysis

Interface analysis is a technique to verify that the inputs and outputs of the system to be are consistent with the defined signals, outputs, inputs, and data of the rest of the system. In addition, the technique looks for inputs and outputs that do not connect with other elements of the system (missing items).

This analysis is vital every time you are cooperating with other team-members, other teams that develops parts of the system, or simply if jo choose to interface a component "on the shelf"

When performing an interface analysis for the architecture of your system, you want to focus on these areas:

  • Physical.
Check the number of pins on the device, and ensure that it matches the number on the circuit board drawing. If pin assignments are defined, verify that they are consistent between the circuit board and the complex electronics specification. Also check for pins that are undefined or floating.
  • Power.

Are the correct voltages applied to power pins? Is the correct type of power (A/C, D/C) provided? Are the ground pins connected? What voltage levels (range) are acceptable for the input or output? What voltage is considered a “high” or a “low” for logic values? Are fan-in and fan-out requirements met?

  • Signals. Verify that input signals match the output signals of other devices. Verify that every input signal comes from somewhere, and that every output signal is used by some other device. Verify that the types of signals are correct and consistent. Check timing requirements for the signals.
  • Communications.

If the complex electronics will implement any communication schema, verify that the specification is correct for that schema, and consistent with other elements of the system. Check any defined messages or data for consistency across the interface.

  • System-level.

Take a step back from the details and consider how the complex electronics works within the system. Look at the functions the device has to implement and consider whether the correct inputs are provided to the device. Will the device have enough information to perform its expected functions? Also look at the broader data and communications paths. Are there any bottlenecks that could affect the timing of data coming into the complex electronics, or slow down any outputs on the way to other devices? How would failure of one part of the communication path affect the complex electronic device?


The interface analysis should also be performed on the individual blocks in your design, during design and realisation, here focus can be narrowed down to following :

  • Logical. Logical blocks take inputs, process them, and provide outputs. Check the description of the logical block and verify that the correct types of inputs are provided. Make sure that no inputs are undefined or floating.
  • Power. At each internal connection, verify that the voltage levels (range) are consistent. For example, if the signal is +/- 5V, it should not suddenly become+/-10V somewhere in the design. Check for consistency in the “high” and “low” voltages for logic values.
  • Signals. At each internal connection, verify that input signals match the output signals of other devices/blocks. Verify that every input signal comes from somewhere, and that every output signal is used by some other element. Verify that the types of signals are correct and consistent. Check timing requirements for the signals.


Outcomes interface analysis can be done either formal or informal. You always need to have design documentation, that describes interfaces, and assure that these are consistent and updated.

Whether the interface amnalysis in documentet in an analysis report, or in your desktop notes, depends on who need the output. If your component is part of a larger subsystem, it is recommended to do a set of common specification for analyzing interfaces.

Why

A small analogy:

Lets imagine building a house: If the technical platform is percieved as the solid foundation, onto wich you build your system-to-be, the interfaces are the infrastructure, the plumbing, wiring and ventilation, that needs to be installed where we need the "components" in the house. i.e. the toilet needs a correctly dimensioned drain and water to be able to flush, the owen needs power, the floor heating need hot water etc....

Why are the correct interfaces important: Imagine trying to mount a toilet if the drain pipe is to small.... this would correspond to connecting a electronic controller that requires 48V/10A to a small laptop powersupply, capable of delivering 20V/3A. IT WON'T WORK !!



Links