VMEbus Overview & Tutorial
- details and tutorial about what is the VMEbus (VME Bus), how it works and its applications.
The VMEbus or as it is also written he VME Bus is a widely used computer bus standard.
The VME Bus system is often used in many applications where systems require computer cards along with other cards to provide additional functionality.
In many applications the basic VMEbus cards are used in a VME rack along with other speciality cards to be enable a system to meet the exact requirements for the overall system.
Although having its origins in the 1980s, the system is still used in many applications and has been defined by the IEC as ANSI/IEEE 1014-1987.
The VME Bus was originally developed for the Motorola 68000 line of CPUs in 1979. A standard bus was required for 68000 based systems, and in view of the likely requirements board sizes of 14.5 x 9.25 inches was chosen along with the board connectors.
The idea was later refined and named the VERSAmodule. With a European influence from the European Motorola operation the mechanical system was developed and based around the Eurocard standard that was in the final stages of the standardisation process. The resulting system was initially known as the VERSAbus-E but later renamed to VMEbus - standing for VERSAmodule Eurocard.
With the standard in use, other companies started to adopt it, and its use expanded considerably beyond just that of Motorola.
The original VMEbus standard used a 16 bit bus. However as processor bus widths increased the VMEbus standard was developed to accommodate these developments.
A 64-bit bus system known as VME64 was developed and contained within 6U-sized cards and 32-bit bus was contained within 3U cards.
The VME64 system was able to provide data speeds of 40 MBps. In addition to this, other capabilities were added including hot-swapping (plug-and-play) in VME64x, as well as smaller 'IP' cards that plug into a single VMEbus card, and various interconnect standards for linking VME systems together.
The VMEbus system was widely used and also adopted for other specific applications. For example, for test instrumentation the popular VXIbus was based upon the VMEbus for its operation.
The VME bus is a scalable and flexible computer backplane bus interface. It is intended for use supporting computing intensive tasks. The VME Bus has been taken up as an international standard and is defined by the IEEE 1014-1987 standard.
The VMEbus adopts a memory mapped approach. Every device on the VMEbus can be viewed as an address, or block of addresses dependent upon how the particular system has been set up. Also when using VME, the addresses and data are not multiplexed.
There are different sorts of cards that can be used:
- Master: A master module is said to be one that initiates data transfers between itself and a slave.
- Slave: A module that does not initiate data transfers - it will accept them when instructed to do so. A functional module that detects DTB cycles initiated by a Master and, when those cycles specify its participation, transfers data between itself and the Master.
However the bus allows multiple masters, and to enable this to operate correctly, it contains a powerful interrupt scheme which is managed by a resource manager.
Data transfer on the VME Bus is asynchronous and this enables modules with a broad variety of response times to be supported.
In terms of the hardware itself, the VMEbus is based around a TTL based backplane.
On the VME Bus, there are four sub-busses to provide the required forms of transfer needed:
- Arbitration Bus: The Arbitration Bus is located on the VMEbus backplane and it allows an Arbiter module and several Requester modules to coordinate use of the DTB.
- Data Transfer Bus, DTB: This is located on the VMEbus backplane. It allows Master modules to direct the transfer of binary data between themselves and Slaves.
- Priority Interrupt Bus: The Priority Interrupt Bus is another of the four buses on the VMEbus backplane. It allows Interrupter modules to send interrupt requests to the various Interrupt Handlers.
- Utility Bus: This is the last of the four buses provided by the VMEbus backplane. It includes signals that provide periodic timing and coordinate the power-up and power-down of VMEbus systems.
The advantage of the VME bus are that it is able to provide speed of operation combined with flexibility and accessibility for development and also running embedded applications. It is possible to develop hardware using the VMEbus to enable the hardware to be tailored to the exact requirements using but while using many standard boards.
By Ian Poole
. . . . | Next >>
Share this page
Want more like this? Register for our newsletter