VESA Local Bus: Difference between revisions

Content deleted Content added
Added bandwidths and some clarifications
Reverted good faith edits by Lehonski (talk): MOS:COMPNOW
 
(42 intermediate revisions by 32 users not shown)
Line 1:
{{short description|Expansion bus for 486 PCs}}
 
{{Infobox computer hardware bus
| name = VLB
Line 8:
| invent-date = {{Start date and age|1992}}
| invent-name = [[VESA]]
| super-name = [[ConventionalPeripheral PCIComponent Interconnect|PCI]]
| super-date = 1993
| replaces =
Line 19:
}}
 
The '''VESA Local Bus''' (usually abbreviated to '''VL-Bus''' or '''VLB''') wasis a short-lived [[expansion bus]] introduced during the [[i486]] generation of [[x86]] IBM-compatible [[personal computer]]s. Created by [[VESA]] (Video Electronics Standards Association), the '''V'''ESAVESA '''L'''ocalLocal '''B'''usBus worked alongside the then -dominant [[Industry Standard Architecture|ISA]] bus to provide a standardized high-speed conduit intended primarily to accelerate video (graphics) operations. VLB providedprovides a standardized "fast path" that add-in (video) card makers could tap for greatly accelerated [[memory-mapped I/O]] and [[Direct memory access|DMA]], while still using the familiar ISA bus to handle basic device duties such as interrupts and [[port-mapped I/O]]. Some high-end [[i386|386DX]] motherboards also had a VL-Bus slot.
 
==Historical overview==
[[File:KL ATI Mach 64 VLB.jpg|thumb|left|upright=1.5|An ATI MACH64 [[Super VGA|SVGA]] VLB graphics card]]
 
In the early 1990s, the [[I/O]] bandwidth of the prevailing ISA bus, 8.33 MB/s for standard 16 bit 8.33  MHz slots, had become a critical bottleneck to PC video and graphics performance. The need for faster graphics was driven by increased adoption of [[graphical user interface]]s in PC operating systems. While IBM did produce a viable successor to ISA with the [[Micro Channel Architecture]] offering a bandwidth of 66 MB/s, it failed in the market duebecause tohardware IBM'smanufacturers requirementdid tonot licensewant andto paymentpay ofsteep licensing fees by hardware manufacturers to use it. While an extension of the royalty-free ISA bus in the form of [[Extended Industry Standard Architecture|EISA]] open standard was developed to counter MCA, it'sits bandwidth of 33.32 MB/s was unable to offer enough improvement over ISA to meet the significant increase in bandwidth desired for graphics. It would be superseded by [[Peripheral Component Interconnect]] (PCI), starting at speeds of 133 MB/s (32-bit at 33 MHz in the standard configuration)
 
Thus for a short time, a market opening occurred where video card manufacturers and motherboard chipset makers created their own proprietary implementations of [[local bus]]es to provide graphics cards direct access to the processor and system memory. This avoided the limitations of the ISA bus while being less costly than a "licensed IBM MCA machine". ItAt isthe important to note that attime, the timecost ato migrationmigrate to an MCA architecture machine from an ISA onemachine was not insubstantialsubstantial. MCA machines generally did not offer ISA slots, thus a migration to MCA architecture meant that any prior investment in ISA cards was made unusable. Additionally, makers of MCA-compatible cards were subject to IBM's licensing fees, which combined with MCA's greater technical requirements and expense to implement. (which in itself is not bad: MCA required peripheral cards to not just be "passive" members and made cards active participants in increasing system performance) itIt did have the effect of making an MCA version of a peripheral card significantly more expensive than its ISA counterpart.
 
So while these ad-hoc manufacturer-specific solutions wherewere effective, they were not standardized, and there were no provisions for providing interoperability. This drew the attention of the [[VESA]] consortium and resulted in a proposal for a voluntary and royalty-free local bus standard in 1992.<ref>Richter, Jake. [https://books.google.com/books?id=XlEEAAAAMBAJ&pg=PA66 "Local-bus architecture: A little-understood, much-cited graphics technology"], "''InfoWorld"'', May 18, 1992, accessed March 9, 2011.</ref> An additional benefit from this standardization (beyond the primary goal of greater graphics card performance) was that other devices could also be designed to utilize the performance offered from VLB; notably, mass-storage controllers were offered for VLB, providing increased hard-disk performance. VLB bandwidth depended on the CPU's bus speed: It started at 100 MB/s for CPUs with a 25 &nbsp;MHz bus, increased to 133 MB/s at 33 &nbsp;MHz and 160 MB/s at 40 &nbsp;MHz, and reached 200 MB/s at 50 &nbsp;MHz.
 
== Implementation ==
A "VLB slot" itself was simplyis an ''additional'' [[edge connector]] placed in-line with the traditional ISA or EISA connector, with this extended portion often colored a distinctive brown. The result wasis a normal ISA or EISA slot being ''additionally'' capable of accepting VLB-compatible cards. Traditional ISA cards remainedremain compatible, as they woulddo not have pins past the normal ISA or EISA portion of the slot. The reverse was also true{{snd}} VLB cards wereare by necessity quite long in order to reach the VLB connector and were reminiscent of older full-length expansion cards from the earlier [[IBM Personal Computer XT|IBM XT]] era. The VLB portion of a slot lookedlooks similar to an IBM MCA slot, as indeed it wasis the same physical 116-pin connector used by MCA cards, rotated by 180 degrees. The IBM MCA standard had not been as popular as IBM expected, and there was an ample surplus of the connector, making it inexpensive and readily available.<ref{{Citation nameneeded|reason="InfiniteThe expansion"citation />that was previously here did not actually contain this information.|date=September 2023}}
 
==Limitations==
[[File:Vlb.jpg|thumb|right|upright=1.5|Computer [[motherboard]] with 7 [[Industry Standard Architecture|ISA]] slots of various feature levels. OneThe istop a short 8-bit slot, sixthree are 16-bit ISA. (longer{{snd}} withThe middle blackthree sections),are threeVLB; additionally16-bit haveISA awith VLBthe added slot (leftmost brown sections). The bottom (shorter) slot is 8-bit ISA. A card installed in this motherboard would have its mounting bracket on the right, which normally would be the "back" of the computer case.]]
 
The VESA Local Bus was designed as a [[wiktionary:stopgap|stopgap]] solution to the problem of the ISA bus's limited [[Bandwidth (computing)|bandwidth]]. As such, one requirement for VLB to gain industry adoption was that it had to be a minimal burden for manufacturesmanufacturers to implement, in terms of board re-design and component costs; otherwise, manufacturers would not have been convinced to change from their own proprietary solutions. As VLB fundamentally tiedties a card directly to the 486 processor bus with minimal intermediary logic (reducing logic design and component costs), timing and arbitration duties were strongly dependent on the cards and CPU.<ref name="Infinite expansion" />
 
This simplicity of VLB unfortunately created several factors that served to limit its useful life substantially:
 
; 80486 dependence
: The VESA Local Bus reliedrelies heavily on the [[Intel 80486]] [[CPU]]'s memory bus design.<ref>{{cite web |url=https://www.karlstechnology.com/blog/vesa-local-bus/ |title=VESA Local Bus |publisher=The PC Guide |last=Kozierok |first=Charles |date=24 October 2018 |access-date=May 27, 2019}}</ref>{{Failed verification|date=June 2019}} When the [[Pentium (brand)|Pentium]] processor arrived, there were major differences [[P5 (microarchitecture)|in its bus design]], not easily adaptable to a VESA Local Bus implementation. Few Pentium motherboards with VLB slots were ever made and useduse VLB-to-PCI bridges such as the [[OPTi]] 82C822.<ref>{{Cite web |url=http://bitsavers.informatik.uni-stuttgart.de/pdf/opti/dataSheets/82C822_VESA_to_PCI_Apr94.pdf |title=Archived copy |access-date=2016-06-28 |archive-date=2016-08-06 |archive-url=https://web.archive.org/web/20160806064640/http://bitsavers.informatik.uni-stuttgart.de/pdf/opti/dataSheets/82C822_VESA_to_PCI_Apr94.pdf |url-status=dead }}</ref> This also meant that moving the bus to a computer with a non-[[x86 architecture|x86]] architecture was nearly impossible, within practical economic constraints.<ref name="vlb"/>
 
; Limited number of slots available
: Most PCs that useduse VESA Local Bus hadhave only one or two VLB-capable ISA slots out of the total five or six available; thus, four ISA slots generally wereare just that, ISA-only. This wasis a result of VESA Local Bus being a direct branch of the 80486 memory bus. The processor diddoes not have sufficient electrical capacity to correctly drive (signal and power) more than two or three devices at a time directly from this bus.<ref name=vlb>{{cite web |url=https://www.karlstechnology.com/blog/vlb-for-x86/ |title=VESA Local Bus |publisher=The PC Guide |last=Kozierok |first=Charles |date=4 October 2018 |access-date=May 27, 2019}}</ref>
 
; Reliability problems
: The strict electrical limitations on the bus also reducedreduce any "safety margin" available, negatively influencing reliability. Glitches between cards wereare common, as the interaction between individual cards, combinations of cards, motherboard implementation, and even the processor itself wasare difficult to predict. This wasis especially prevalent on lower-end [[motherboard]]s, as the addition of more VLB cards could overwhelm an already marginal implementation. Results couldcan be rather spectacular when often important devices such as [[hard disk]] controllers wereare involved with a bus conflict with a memory-intensive device such as the ubiquitous video card.<p>As VLB devices have direct high-speed access to system memory at the same level as the main processor, there is no way for the system to intervene if devices were mis-configured or became unstable. If two devices overwrite the same memory ___location in a conflict, and the hard-disk controller relies on this ___location (the HDD controller often ''being'' the second conflicting device), there is the all-too-common{{fact|date=April 2022}} possibility of massive [[data corruption]].</p>
: As VLB devices had direct high-speed access to system memory at the same level as the main processor, there was no way for the system to intervene if devices were mis-configured or became unstable. If two devices overwrote the same memory ___location in a conflict, and the hard-disk controller relied on this ___location (the HDD controller often ''being'' the second conflicting device), there was the all-too-common possibility of massive [[data corruption]].
 
; Limited scalability
: As bus speeds of 486 systems increased, VLB stability became increasingly difficult to manage. The tightly coupled local bus design that gavegives VLB its speed became increasingly intolerant of timing variations, notably past 40&nbsp;MHz. Intel's original [[Intel 80486#Models|50&nbsp;MHz 486]] processor faced difficulty in the market, as many existing motherboards (even non-VLB designs) did not cope well with the increase in [[front-side- bus]] speed to 50&nbsp;MHz. If one could achieve reliable operation of VLB at 50&nbsp;MHz, it was extremely fastfaster{{snd}} but again, this was notoriously difficult to achieve, and often it was discovered not to be possible with a given hardware configuration.<ref>BrainBell.com [http://www.brainbell.com/tutors/A+/Hardware/VESA_Local_Bus_VLB.htm "A+ Tutorials > Expansion Buses > VESA Local Bus (VLB)"], accessed January 8, 2012.</ref><p>The 486DX-50's successor, the 486DX2-66, circumvents this problem by using a slower but more compatible bus speed (33&nbsp;MHz) and a [[CPU multiplier|multiplier]] (×2) to derive the processor clock speed.</p>
; Difficulty of installation
: The 486DX-50's successor, the 486DX2-66, circumvented this problem by using a slower but more compatible bus speed (33&nbsp;MHz) and a [[CPU multiplier|multiplier]] (×2) to derive the processor clock speed.
: The length of the slot and number of pins mademakes VLB cards notoriously difficult to install and remove.<ref>{{cite book |last1=Slone |first1=John P. |title=Local Area Network Handbook, Sixth Edition |date=28 September 1999 |publisher=CRC Press |isbn=9780849398384 |page=43 |url=https://books.google.com/books?id=AAnzJXtXQTUC&pg=PA43 |language=en}}</ref> The sheer mechanical effort required wasis stressful to both the card and the motherboard, and breakages wereare not uncommon. This wasis compounded by the extended length of the card logic board; often there wasis not enough room in the PC case to angle the card into the slot, requiring it to be pushed with great force straight down into the slot. To avoid excessive flexing of the motherboard during this action, the chassis and motherboard had to be designed with good, relatively closely spaced supports for the motherboard, which wasis not always the case, and the person inserting the board had to distribute the downward force evenly across its top edge.<p>Due to the length of a VLB slot and the difficult installation that results from its length, a slang alternative use of the acronym VLB is ''Very Long Bus''.<ref>{{cite web |url=http://www.vintagecomputing.com/index.php/archives/1069/retro-scan-of-the-week-the-micron-millennia |title= The Micron Millennia |publisher=Vintage Computing and Gaming Adventures in Classic Technology |last=Edwards |first=Benj |access-date=May 27, 2019}}</ref></p>
 
; Installation woes
: The length of the slot and number of pins made VLB cards notoriously difficult to install and remove.<ref>{{cite book |last1=Slone |first1=John P. |title=Local Area Network Handbook, Sixth Edition |publisher=CRC Press |isbn=9780849398384 |page=43 |url=https://books.google.com/books?id=AAnzJXtXQTUC&pg=PA43 |language=en}}</ref> The sheer mechanical effort required was stressful to both the card and the motherboard, and breakages were not uncommon. This was compounded by the extended length of the card logic board; often there was not enough room in the PC case to angle the card into the slot, requiring it to be pushed with great force straight down into the slot. To avoid excessive flexing of the motherboard during this action, the chassis and motherboard had to be designed with good, relatively closely spaced supports for the motherboard, which was not always the case, and the person inserting the board had to distribute the downward force evenly across its top edge.
: Due to the length of a VLB slot and the difficult installation that resulted from its length, a slang alternative use of the acronym VLB was ''Very Long Bus''.<ref>{{cite web |url=http://www.vintagecomputing.com/index.php/archives/1069/retro-scan-of-the-week-the-micron-millennia |title= The Micron Millennia |publisher=Vintage Computing and Gaming Adventures in Classic Technology |last=Edwards |first=Benj |access-date=May 27, 2019}}</ref>
 
==Legacy==
[[File:Gigabyte_ga486im_motherboard_observe_croped.jpg|thumb|"VIP" motherboard GA486IM from [[Gigabyte Technology]]]]
Despite these problems, the VESA Local Bus became very commonplace on later 486 motherboards, with a majority of later (post-1992) 486-based systems featuring a VESA Local Bus video card. VLB importantly offeredoffers a less costly high-speed interface for consumermainstream systems, as only by 1994 was PCI commonly available outside of the server market through the Pentium and Intel's [[List of Intel chipsets#4xx chipsets|chipsets]]. PCI finally displaced the VESA Local Bus (and also EISA) in the last years of the 486 market, with the last generation of 80486 motherboards featuring PCI slots instead of VLB-capable ISA slots. However, some manufacturers did develop and offer "VIP" (''V''ESALB/''I''SA/''P''CI) motherboards with all three slot types.
 
==Technical data==
Line 66 ⟶ 60:
! Bus width
| 32 bits
|-----
! Compatible with
| 8 bit ISA, 16 bit ISA, VLB
|-----
! [[Pin]]s
| 112
|-----
! [[IC power-supply pin|Vcc]]
| +5 V
|-----
! Clock
| {{ubl|[[486SX]]-25: 25&nbsp;MHz<br> |486DX2-50: 25&nbsp;MHz<br> |486DX-33: 33&nbsp;MHz<br>|486DX2-66: 33&nbsp;MHz<br>|486DX4-100: 33&nbsp;MHz<br>|486DX-40: 40&nbsp;MHz<br>|486DX2-80: 40&nbsp;MHz<br>|486DX4-120: 40&nbsp;MHz<br>|5x86@133&nbsp;MHz: 33&nbsp;MHz<br>|5x86@160&nbsp;MHz: 40&nbsp;MHz<br>|486DX-50: 50&nbsp;MHz (out of specification)}}
|-
!Bandwidth
|{{ubl|25 MHz: 100 MB/s|33 MHz: 133 MB/s|40 MHz: 160 MB/s|50 MHz: 200 MB/s (out of specification)}}
|25 MHz: 100 MB/s
33 MHz: 133 MB/s
 
40 MHz: 160 MB/s
 
50 MHz: 200 MB/s (out of specification)
|}
 
Line 100 ⟶ 89:
==References==
{{Reflist}}
{{FOLDOC}}
 
{{Computer-bus}}