VMEbus

Caixa VME64 amb, d'esquerra a dreta, un mòdul ADC, un mòdul escalador i un mòdul processador

VMEbus (Versa Module Eurocard[1] bus) és un estàndard de bus informàtic basat físicament en les mides d'Eurocard.

VMEbus és l'abreviatura de VersaModular Eurocard bus, i d'aquí el nom, és un sistema de bus (o sistema de ruta informàtica) per a aplicacions industrials com ara fonts d'alimentació VME, ordinadors de placa única integrats (SBC), automatització d'actuadors, etc. Va ser desenvolupat originalment per empleats tècnics de Motorola a Alemanya (any 1980) i poc després, també va ser adoptat per Signetics, Philips, Thomson i Mostek.

Després de la seva estandardització per part de la Comissió Electrotècnica Internacional (IEC) i l'Institut Nacional d'Estàndards Americà (ANSI), es van llançar moltes versions diferents de l'arquitectura de bus VME, amb una capacitat més alta que el bus original de 16 bits, com ara el VME64 (any 1994), VME64x (any 1997), VME320 (any 1997) i altres plaques VME32/64.[2]

Història

El 1979, durant el desenvolupament de la CPU Motorola 68000, un dels seus enginyers, Jack Kister, va decidir crear un sistema de bus estandarditzat per a sistemes basats en el 68000.[3] L'equip de Motorola va fer una pluja d'idees durant dies per seleccionar el nom VERSAbus. Les targetes VERSAbus eren grans,370 per 230 mm (14 12 per 9 14 in) i utilitzava connectors de vora.[4] Només uns pocs productes el van adoptar, com ara el controlador d'instruments IBM System 9000 i els sistemes de visió artificial i robots Automatix.

Targeta de memòria VERSAbus

Més tard, a Kister es va unir John Black, que va refinar les especificacions i va crear el concepte de producte VERSAmodule. Julie Keahey, una jove enginyera que treballava per a Black, va dissenyar la primera targeta VERSAmodule, el mòdul adaptador VERSAbus, que s'utilitzava per executar targetes existents al nou VERSAbus. Sven Rau i Max Loesel de Motorola-Europe van afegir una especificació mecànica al sistema, basant-la en l'estàndard Eurocard que aleshores estava endarrerit en el procés d'estandardització. El resultat va ser conegut inicialment com a VERSAbus-E, però més tard va ser rebatejat com a VMEbus, per al bus VERSAmodule Eurocard (tot i que alguns s'hi refereixen com a Versa Module Europa ).[5]

En aquest punt, diverses altres empreses involucrades en l'ecosistema del 68000 van acordar utilitzar l'estàndard, incloent-hi Signetics, Philips, Thomson i Mostek. Aviat va ser estandarditzat oficialment per l'IEC com a IEC 821 VMEbus i per ANSI i IEEE com a ANSI/IEEE 1014-1987.

L'estàndard original era un bus de 16 bits, dissenyat per encaixar dins dels connectors DIN Eurocard existents. No obstant això, hi ha hagut diverses actualitzacions al sistema per permetre amplades d'autobús més grans. L'actual VME64 inclou un bus complet de 64 bits en targetes de mida 6U i de 32 bits en targetes de 3U. El protocol VME64 té un rendiment típic de 40 MB/s.[6] Altres estàndards associats han afegit la funció d'intercanvi en calent ( plug-and-play) a VME64x, targetes "IP" més petites que es connecten a una sola targeta VMEbus i diversos estàndards d'interconnexió per enllaçar sistemes VME.

A finals de la dècada de 1990, els protocols síncrons van resultar favorables. El projecte de recerca es va anomenar VME320. L'Organització d'Estàndards VITA va demanar un nou estàndard per a les plaques posteriors VME32/64 sense modificar.[7] El nou protocol 2eSST va ser aprovat a ANSI/VITA 1.5 el 1999.

Al llarg dels anys, s'han afegit moltes extensions a la interfície VME, proporcionant canals de comunicació de "banda lateral" en paral·lel al mateix VME. Alguns exemples són el mòdul IP, RACEway Interlink, SCSA, Gigabit Ethernet en plaques posteriors VME64x, PCI Express, RapidIO, StarFabric i InfiniBand.

VMEbus també es va utilitzar per desenvolupar estàndards estretament relacionats, VXIbus i VPX. El VMEbus va tenir una forta influència en molts busos informàtics posteriors, com ara l'STEbus.

Descripció

En molts sentits, el VMEbus és equivalent o anàleg als pins del 68000 que surten a una placa posterior.

Tanmateix, una de les característiques clau del 68000 és un model de memòria plana de 32 bits, lliure de segmentació de memòria i altres "antifuncions". El resultat és que, mentre que VME s'assembla molt al 68000, el 68000 és prou genèric com per fer que això no sigui un problema en la majoria dels casos.

Igual que el 68000, el VME utilitza busos de dades i adreces de 32 bits separats. El bus d'adreces 68000 és en realitat de 24 bits i el bus de dades de 16 bits (tot i que internament és de 32/32), però els dissenyadors ja estaven mirant cap a una implementació completa de 32 bits.

Per tal de permetre ambdues amplades de bus, VME utilitza dos connectors Eurocard diferents, P1 i P2. P1 conté tres files de 32 pins cadascuna, que implementen els primers 24 bits d'adreça, 16 bits de dades i tots els senyals de control. P2 conté una fila més, que inclou els 8 bits d'adreça i els 16 bits de dades restants.

Un protocol de transferència de blocs permet que es produeixin diverses transferències de bus amb un únic cicle d'adreces. En el mode de transferència de blocs, la primera transferència inclou un cicle d'adreces i les transferències posteriors només requereixen cicles de dades. L'esclau és responsable d'assegurar-se que aquestes transferències utilitzin adreces successives.

Els caps d'autobús poden alliberar l'autobús de dues maneres. Amb Release When Done (RWD), el mestre allibera el bus quan completa una transferència i ha de tornar a arbitrar per al bus abans de cada transferència posterior. Amb Release On Request (ROR), el mestre conserva el bus continuant a afirmar BBSY* entre transferències. ROR permet que el mestre mantingui el control sobre el bus fins que un altre mestre que vulgui arbitrar pel bus estableixi una autorització de neteja de bus (BCLR*). Així, un mestre que genera ràfegues de trànsit pot optimitzar el seu rendiment arbitrant per al bus només en la primera transferència de cada ràfega. Aquesta disminució de la latència de transferència té el cost d'una latència de transferència una mica més alta per a altres mestres.

Al bus VME, totes les transferències són DMA i cada targeta és mestra o esclau. En la majoria d'estàndards de bus, s'afegeix una quantitat considerable de complexitat per tal de suportar diversos tipus de transferència i selecció de mestre/esclau. Per exemple, amb el bus ISA, aquestes dues característiques s'havien d'afegir juntament amb el model de "canals" existent, en què totes les comunicacions eren gestionades per la CPU amfitriona. Això fa que VME sigui considerablement més senzill a nivell conceptual alhora que més potent, tot i que requereix controladors més complexos a cada targeta.

Referències

  1. «VMEbus FAQa» (en anglès). [Consulta: 17 gener 2023].
  2. «What is VME bus? VME bus Architecture? VME Card Dimensions, VME spec / size - VME bus Direct» (en anglès). [Consulta: 12 maig 2025].
  3. Black, John Arthur. The System engineer's handbook: a guide to building VMEbus and VXIbus systems (en anglès). Morgan Kaufmann, 1992, p. 563. ISBN 978-0-12-102820-6. 
  4. «VME Technology FAQ» (en anglès). Vita.com, 03-01-1999. [Consulta: 1r agost 2013].
  5. «VME Technology FAQ» (en anglès). Vita.com, 03-01-1999. [Consulta: 1r agost 2013].
  6. «VME Technology FAQ» (en anglès). Vita.com, 03-01-1999. [Consulta: 1r agost 2013].
  7. «VME Technology FAQ» (en anglès). Vita.com, 03-01-1999. [Consulta: 1r agost 2013].
Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9

Portal di Ensiklopedia Dunia

Kembali kehalaman sebelumnya