Hacker News new | ask | show | jobs
by toast0 761 days ago
Well, VLB wasn't limited to graphics... it was just a fast bus. As opposed to the much later AGP that afaik, was graphics only.

But, MicroChannel was IBM proprietary. I don't know if anybody else had enough market or enough full stack to make a proprietary bus viable; IBM was making graphics cards and motherboards (and cpus, sometimes), and selling enough units that it was worthwhile for add-in makers to support MCA.

2 comments

VLB wasn't limited to graphics... it was just a fast bus.

VLB wasn't limited to graphics, but it had issues which made it difficult to use in other applications. Still, there were a handful of SCSI and Ethernet cards made to the standard.

The physical size (Very Long Bus!) meant that it was best suited to cards which were already going to be large (e.g. graphics cards with lots of memory chips) and the tight coupling to the system memory bus meant that it was hard to use with anything other than an 80486 CPU -- which inherently discouraged its use for peripherals which weren't firmly aimed at the consumer market.

Ultimately I think the story here is less "Intel undercut a standards process" and more "Intel realized that the standards process had produced a horrible design". We should be glad that they hedged their bets; PCI was far superior.

Intel Architecture Labs is responsible for essentially the entire I/O architecture of virtually all computers (not just x86) for the last ~three decades: USB, SATA, PCI and PCIe, plus PCI-for-Graphics (AGP). Notably all of these were largely developed in-house at Intel and then basically gifted more or less finished to standards bodies or Intel created an industry consortium around them.
Wonder what made Intel keep its damn paws firmly on Thunderbolt up until the USB4 days. To this day it's still a truckload of issues/hacks to get old PCs upgraded with Thunderbolt 2/3 cards.
How much of that is because the tech was better versus because it was Intel pushing for it? There were competing standards such as (off the top of my head) SCSI (isn't that what SATA basically is anyway?), Firewire and PCIx.
> SCSI (isn't that what SATA basically is anyway?),

Nope, there is a lot of differences (Wiki would help on the details), most notably is what SATA was designed to be cheap from the start, including the controller complexity; while SCSI demands a quite intelligent controller, which costs more.

https://en.wikipedia.org/wiki/SATA#Comparison_to_other_inter...

> SCSI (isn't that what SATA basically is anyway?), Ehh, ever since ATAPI, both old 'IDE' style as well as SATA hosts could use SCSI commands. The speed you get with a SATA cable, wire for wire, is a win over any SCSI cable I've ever seen, let alone the LVD vs HVD and everything else you had to worry about.

>Firewire

arguably had the right ideas at the wrong time; the extra power delivery is something we are finally now seeing in USB. However firewire was still relatively expensive.

> PCIx

PCI-X was still parallel with lots of data lines/etc which can cause it's own problems. Aside from having multiple cards potentially hamming each other up (PCI-Express this is less possible since it's point to point rather than shared lines) there is the challenge of the large number of traces and the difficulty in running them on a board as the signalling frequency scales up.

Note that AGP was initially basically just PCI 2.1, with the bus conflict resolution system ripped out, the connector flipped around and a few minimal tweaks. It could, in principle have been used for something other than a video card.

The crucial part about it was that it was a dedicated link to one device. AGP was initially created not because PCI bandwidth was running out, but because PCI is a shared bus, and the kind of transfers video adapters liked to do played havoc with the system that negotiated who had right of way, resulting in all kinds of problems when other cards had to wait for their turn for much longer than their driver developers expected.

The fact that it only ever connected one device to the host made it much easier to evolve, as future cards and hosts could just negotiate to do something different than what AGP 1.0 defined, if they found they both supported a faster version. When bandwidth demand rapidly rose with ever faster 3d accelerators, this was very beneficial.