# M-Module

M-Modules are a mezzanine (computer hardware) standard mainly used in industrial computers. Being mezzanines, they are always plugged on a carrier printed circuit board (PCB) that supports this format. The modules communicate with their carrier over a dedicated bus, and can have all kinds of special functions.
M-Modules are standardized as ANSI/VITA 12-1996 expansion cards and are especially suited for adding any kind of real-world I/O to a system in a flexible way. There are modular I/O extensions for all types of industrial computers, from embedded systems up to high-end workstations. The M-Module Interface – a fast asynchronous parallel interface – offers sophisticated functions like 32-bit data bus, burst transfers up to 100 MB/s, DMA and trigger capabilities. M-Modules also offer direct front-panel connection rather than requiring a separate adapter panel with ribbon-cable connections. This provides a clean path for sensitive signals without loss of data or signal quality – using, for example, shielded D-Sub connectors and coaxial cables.

## Overview

The mezzanine approach to placing multiple functions in a single card slot has been around for a long time both in proprietary and open standard forms. Valid arguments can be put forth for both of these approaches. The M-Module is one open standard that is gaining increasing popularity for applications in the fields of analog and digital I/O, instrumentation, robotics, motion functions and fieldbuses. This standard was originally developed in Germany by MEN Mikro Elektronik for VMEbus applications and was soon expanded to support the CompactPCI bus as well. It has been embraced as ANSI/VITA 12-1996.
In addition to the single wide form shown, M-Modules can be developed in double, triple and quadruple wide configurations. Because of the standard's genesis in the VME world it is sized such that 4 fit in a 6U module and 2 in a 3U module. Conveniently, because of the way other backplane standards have evolved, 4 units easily fit the front panel space in VXI and 6U cPCI/PXI while 2 will fit in the front panel space of 3U cPCI/PXI and up to 8 will fit in a 1U LXI rack mount carrier.
At the present time a number of instruments are available in the M-Module form factor in the following categories:
* Pulse generators
* Function generators
* Arbitrary waveform generators
* Digital word generators
* Digital multi-meters
* Counter/Timers
* Rubidium sources
* OCXO's
* GPS timing receivers
* Distribution amplifiers
* Precision voltage sources
* MIL-STD-1553, CANbus, ARINC429
* Switching modules
* Serial, Analog & Digital I/O
A significant advantage to the M-Module is that it has a relatively straight forward set of electrical and mechanical specifications. This enables an engineer to design a function that might be required without having to become an expert on VXI, PXI or LXI as carriers are available to allow the design to be ported to the backplane or bus of the test system in use.

## Supporting the standard

As with any mezzanine card, a means must be provided through which the card may be adapted to a backplane or higher level interface. Such a device is generally referred to as a carrier. These come in two types: non-intelligent and intelligent. The functions performed by the former include the simpler functions such as mounting and providing power as well as the more complex such as providing translation between bus types, protocols, routing of triggers and interrupts and making each mezzanine appear as a separate instrument to the host backplane. Intelligent carriers will generally perform all of the functions of the non-intelligent plus perform pre or post processing of data, allow the combination of multiple instruments into composite instruments that then may be controlled at a higher level, and perform translation of commands from older instruments so as to facilitate replacement of Legacy instruments.
Of equal or greater importance in the support of the mezzanine is the software. The majority of the M-Module instrument types referenced above come with VXI/PXI Plug-and-Play or IVI drivers. However, a number of the more control oriented M-Modules are supported only with C drivers. Actions are underway that are described below which allow application of the Plug-and-Play drivers across multiple platforms.

## Benefits of modularity

Perhaps the greatest advantage of an M-Module mezzanine instrument is the ability of both the vendor and the user to become "Platform Agnostic". From the vendor's perspective, it is only necessary to develop one instrument, say a Pulse Generator, and with the use of carriers he can produce the same product into VXI, PXI, VME, LXI and other applications. This greatly reduces development costs when compared to the development of pulse generators for multiple buses.