VMEbus
Vorlage:Stub Der VMEbus ist ein Multi-User-Bussystem, das in den 70er und 80er Jahren in der Prozesssteuerung weit verbreitet war. Er basierte auf der Motorola-Prozessorfamilie 68000, es standen später aber sogar IBM-kompatible PC-Systeme auf VME-Basis zur Verfügung. Die Ursprungsvariante verfügte über einen 16-Bit Datenbus und 24-Bit Adressbus, für die später diverse Erweiterungen entwickelt wurden. Verwendet wird der VMEbus auch heute noch in der Luft- und Raumfahrt, der Computer der ISS basiert z.B. auf dem VMEbus, wenngleich auch in anderer Bauform.
Der Bus ist ein Backplanebus (Rückwandbus ohne eigene eletronische Bauteile) für 19"-Einschubgehäuse.
Anschlüsse
Steckverbindungen
Anschlussbelegung an P1
## | Reihe A | Reihe B | Reihe C |
---|---|---|---|
01 | D00 | /BBSY | D08 |
02 | D01 | /BCLR | D09 |
03 | D02 | /ACFAIL | D10 |
04 | D03 | /BG0IN | D11 |
05 | D04 | /BG0OUT | D12 |
06 | D05 | /BG1IN | D13 |
07 | D06 | /BG1OUT | D14 |
08 | D07 | /BG2IN | D15 |
09 | GND | /BG2OUT | GND |
10 | SYSCLK | /BG3IN | /SYSFAIL |
11 | GND | /BG3OUT | /BERR |
12 | DS1 | /BR0 | /SYSRESET |
13 | DS0 | /BR1 | /LWORD |
14 | /WRITE | /BR2 | AM5 |
15 | GND | /BR3 | A23 |
16 | /DTACK | AM0 | A22 |
17 | GND | AM1 | A21 |
18 | /AS | AM2 | A20 |
19 | /GND | AM3 | A19 |
20 | /IACK | GND | A18 |
21 | /IACKIN | SERCLK | A17 |
22 | /IACKOUT | SERDAT | A16 |
23 | AM4 | GND | A15 |
24 | A07 | /IRQ7 | A14 |
25 | A06 | /IRQ6 | A13 |
26 | A05 | /IRQ5 | A12 |
27 | A04 | /IRQ4 | A11 |
28 | A03 | /IRQ3 | A10 |
29 | A02 | /IRQ2 | A09 |
30 | A01 | /IRQ1 | A08 |
31 | +12V | +5V (Batt) | -12V |
32 | +5V | +5V | +5V |
Legende
D00 - D15 = Datenbusleitungen A01 - A23 = Adressbusleitungen AM0 - AM5 = Adressmodifizierer /BR0 - BR3 = Busanforderungen /BG0IN - /BG3IN = Busfreigaben (Eingang) /BG0OUT - /BG3OUT = Busfreigaben (Ausgang) /IRQ1 - /IRQ7 = Interrupt-Anforderungen /IACK = Interrupt-Bestätigung /IACKIN = Interrupt-Bestätigung (Eingang) /IACKOUT = Interrupt-Bestätigung (Ausgang)
Arbeitsweise
Interrupt- und Bussteuerung machen einen Arbiter erforderlich, der die Interrupt- und Bus-Anforderungen regelt. In der Regel ist der Arbiter im ersten Steckplatz angeordnet.
Interrupts
Der VMEbus hat sieben IRQ-Leitungen, die unterschiedliche Priorität haben. Jeder Interrupt kann aber von beliebig vielen Platinen genutzt werden, da der Interruptvektor nicht durch die IRQ-Leitung bestimmt wird, die anfordernde Platine gibt den Interruptvektor selbst an.
Bussteuerung
Der VMEbus ist ein Multimaster-Bus, das bedeutet, dass mehrere Busmaster den Bus belegen können. Auch hier wird wieder mit Proiritäten gearbeitet, es stehen vier BRQ-Leitungen zur Verfügung, die streng prioritär belegt sind oder im Round-Robin-Verfahren mit rotierenden Prioritäten arbeiten. Mit letzterem wird ein Fairness-Verfahren betrieben, länger wartende Einheiten werden bevorzugt. Üblicher ist aber das reine prioritäre Verfahren.