Template talk:Computer bus

From Wikipedia, the free encyclopedia
Jump to: navigation, search
WikiProject Computing (Rated Template-class)
WikiProject icon This template is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
 Template  This template does not require a rating on the project's quality scale.
 
WikiProject Engineering (Rated Template-class)
WikiProject icon This template is within the scope of WikiProject Engineering, a collaborative effort to improve the coverage of engineering on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
 Template  This template does not require a rating on the project's quality scale.
 

"Bus" terminology too restrictive[edit]

RS-232 isn't a "bus." Nor is Serial ATA, nor PCI-Express, anything else that involves point-to-point links between exactly two devices.

I suggest the term "interconnect standard" instead, or something simliar. Jeh (talk) 22:39, 27 July 2009 (UTC)

I updated the title of the template to match you suggestion. Good idea! But one note, the PCIe actually is a bus standard , which is point-to-point link of two devices, its a bus with addressing resources like PCI, all these resources refer to it as a bus: [1] Pci_express#Overview [2] Nasa-verve (talk) 17:11, 11 August 2009 (UTC)
Perhaps some of the types that use a network or point-to-point links (PCI Express, Serial RapidIO, etc) is *not* does not match the typical understanding of a multi-point shared bus type of bus, but 'bus' *is* definitely a commonly used and understood term, commonly including those types of bus or network architectures. Perhaps "fabric" is a better term for those types of network architecture, but it seems against common sense to rule them out of here due to that. There are a lot of different ways to connect boards, computers, chips, peripherals, and a lot of different architectures, but I'd recommend not being too restrictive on how you define 'computer bus' or it'll rule out many busses for what most people will consider trivial semantic points. Just my opinion... jwilkinson (talk) 00:36, 13 December 2011 (UTC)
I admire Jeh for attempting to draw a clear distinction between terms so as to make them technically useful and unambiguous. However, I agree with jwilkinson that the so-called "universal serial bus" and PCI Express and many other things described as a "bus" actually involve point-to-point links between exactly two devices. Is there some *other* line we could draw that includes things commonly called busses (including USB and PCI Express) but excludes things like Wi-Fi and analog telephone lines? Or does blurring the line between multi-point shared buses, external computer port (hardware), and point-to-point links, give a slippery slope that leads only to ambiguity and confusion? --DavidCary (talk) 14:09, 8 October 2013 (UTC)

Hyphenation[edit]

There is no reason in normal English nor in WP:STYLE to hyphenate the two words of this or any similar title. Jeh (talk) 22:39, 27 July 2009 (UTC)

Moved to the title without the dash. Yes check.svg Done Nasa-verve (talk) 03:20, 17 August 2009 (UTC)

What makes a UART, or particular UART types, a bus?[edit]

Why are 16550 UART, and UART in general, listed as buses? Aren't they covered by RS-232 or MIDI or other buses that the 16550, or UARTs in general, support? Guy Harris (talk) 05:06, 30 September 2009 (UTC)

Nothing, as far as I can tell. Removed. Guy Harris (talk) 05:28, 30 September 2009 (UTC)

ACCESS.bus[edit]

Unfortunately I have no idea exactly how fast it is so don't want to put it in here and ruin something... 76.117.247.55 (talk) 19:30, 18 July 2010 (UTC)

InfiniBand a desktop bus?[edit]

Does InfiniBand really belong in "Computer bus standards (desktop)"? Is there any desktop or even deskside system that uses InfiniBand as an internal bus? It's not a bus topology (although, strictly speaking, neither is PCIe, as I recall) and I generally see it referred to as an alternative to networks like Fibre Channel or Ethernet, not buses like PCIe, QPI, or HyperTransport. If it belongs in this template, I think it would be more appropriate under storage buses instead of desktop buses. (This same issue is true on List_of_device_bit_rates.) Thoughts? Vykk (talk) 15:13, 1 December 2010 (UTC)

Seems to be totally missing the entire ctegory of server / data center bus? There are computers larger than dekstops! Perhaps should re-org, although these of course overlap. Also "standards" is lower case, so should lower-case "s" standards (e.g. company-wide, vs. IEEE or other official org) be added? W Nowicki (talk) 22:45, 29 May 2011 (UTC)

DMA[edit]

Direct memory access (DMA) is not a bus as such, so I suggest it is removed from this template. Sigmundg (talk) 13:54, 5 June 2011 (UTC)

Revamp[edit]

It looks like User:Nasa-verve changed the group name from Desktop to "Standards"? Perhaps it was in response to the discussion about Infiniband, but there was no edit summary. Not sure this makes sense, since many other groups also describe standards too, just for more specific kinds of buses. I would suggest maybe "General pupose" might be a better name for them, or "Desktop and data center" (although some laptops have Hypertransport or QPI, etc). Any thoughts?

Also the links in the title are dubious. Interconnection example talks about telephone companies! Nothing at all to do with computer buses. Since some are de facto standards I will add that link and delete the misleading one. Also Multidrop bus is a specific vending machine technology, which sounds to me like it should be in the embedded category. W Nowicki (talk) 19:20, 8 June 2011 (UTC)

I support the change from "Desktop" [3] to just about anything else and I had considered doing this myself. Many of these busses are not limited to desktop computers and were used in desktops, servers, and even minicomputers. There are even embedded SBCs with PCI or ISA slots. --Tothwolf (talk) 20:22, 8 June 2011 (UTC)

MIDI[edit]

What makes MIDI a computer bus? It's a communications protocol that can be carried over buses such as RS232 or USB, but it's no more a bus than is Ethernet. Besides, it's not even a computing technology: it's a musical instrument technology that was adapted for use in computers. Dementia13 (talk) 15:00, 27 August 2012 (UTC)

If you'll look at the MIDI article you'll learn that MIDI defines not only a protocol but also a physical layer involving 5-pin DIN connectors, current loop signaling with a single-ended +5V supply, and a 31.25 kbit/s data rate. None of this is compatible with common RS232 interfaces, so where you are getting "RS232", I do not know. It permits a number of devices to be chained together with those 5-pin connectors, each has an address, and the address is used in the protocol to indicate which device in the chain is the intended recipient. That sounds very much like a bus to me. As for computer vs. musical instrument, practically speaking it's impossible to build a MIDI-speaking or -listening device that doesn't have at least a decent microcontroller in it. As for USB, yes, there are USB to MIDI interfaces (also called "adapters") but all the ones I've seen provide the usual 5-pin DIN connectors at the non-computer end. Jeh (talk) 17:11, 27 August 2012 (UTC)
RS232 (edit: excuse me, I meant RS-422) is one of the buses that have historically been used to bring MIDI into a computer. Few computers have been built with standard MIDI ports installed, and to my knowledge, none in the last 20 years. Getting MIDI into and out of a computer always requires some type of interface, which will connect via RS422, USB, FireWire, or one of various other methods. Please don't condescend with "If you'll look at the MIDI article", I wrote it. I see your point about the description, but the funny thing about it is that the part which fits that description is the part that's away from the "computer" end, it's the part that's on the musical instrument side. The computer has no 31.25 kbaud ports, so the thing you're defining as a computer bus never actually enters the computer. Dementia13 (talk) 01:16, 28 August 2012 (UTC)
Sorry, but you are mistaken. A computer with a MIDI port does have a 31.25 kbps port - the MIDI port. The MIDI port was never an RS232 port nor an RS422 port. Well, I probably shouldn't say "never", but...
There was a period when just about any computer with a sound card had a MIDI port, because they were practically a standard feature of every sound card. The DA-15 connector was both the joystick connector and the MIDI connector, and the 31.25 kbps current loop MIDI signals did enter and leave the computer via that connector, with no RS232 or RS422 connections or signals involved. The "31.25 kbps port" (that is, a UART with a clock generator that will let it run at that speed) that you say does not exist is part of the MIDI interface on the card. There's no RS232 or RS422 interface or signals behind the DA15 connector.
Here is a wiring diagram for the standard MIDI cable used with such cards. It shows nothing that can possibly do bit rate conversion, nor conversion between current loop and RS232 or RS422's bipolar voltage-based signaling, so your conclusion that the 31.25 kbps MIDI-format current loop signals "never" entered or left the computer is necessarily incorrect.
Finally, I'll note that from the PC side, you don't talk to the MPU401 emulator port in anything like the same way you talk to a 16550-style serial port; I've dealt with both at the IN/OUT instruction level and written drivers for both. You don't have to take my word for that; you can just note that they consume very different numbers of I/O port locations and are handled by different drivers. Jeh (talk) 02:22, 28 August 2012 (UTC)
OK, but I still have the sense that it's a stretchy definition, because this is not really a port that is native to the computer: it still depends on another intermediary bus (the ISA or PCI bus of the soundcard, the MIDI to USB interface you mentioned, or the RS422 port in early Macs) for transport. There haven't been PCs with a native MIDI bus since the Atari Falcon. Once MIDI hits that second bus, it's just a data stream carried by that other bus, and doesn't have the physical layer characteristics that you noted. As in your own example, that MIDI to USB interface doesn't just passively let through the MIDI signal, it wraps the MIDI data in USB packets. At that point, the MIDI stream is changed into something other than what it originally was, and the characteristics you use to define it as a bus no longer exist. In other words, once MIDI hits the computer, it loses its identity as an independent bus. It's listed as a "computer bus", but it's only a bus when it's outside of the computer. I'll accept that, but if the definition's that loose, I think that pretty soon the door opens that you have to define something like Ethernet or a wireless technology as a "bus". Wireless devices have an electrical connection through the antenna, and they have addresses by which each individual device can be addressed, so the distinction gets thin. Dementia13 (talk) 13:54, 28 August 2012 (UTC)
"Native to the computer" is an overly restrictive criterion for "computer bus" and not one that you will find much support for. Such a criterion would also exclude USB, 1394, SCSI, FC, many others. Just because it comes standard with the computer, or exists within the computer enclosure, or is even soldered to the motherboard, doesn't mean it's "native". All of the above have always been implemented by host controllers that are either plugged into or soldered to e.g. PCI or PCIe. Whether or not the HC is built onto the motherboard or installed in a plug-in slot is immaterial.
For that matter, not even PCI or PCIe come directly out of the CPU chip. They are implemented by bridge chips in the chipset. In older chipsets these bridge chips were attached to the "front side bus", in newer ones, they are attached to the CPU via a "QPI" (Intel) or "HyperTransport" (AMD) bus. Well, technically those are point-to-point interconnects, not buses, but the point is still that PCI or PCIe are in no way "native" to the CPU.
Do you have a slightly-older mobo with an ISA slot or two in addition to the PCI? The ISA slots are implemented by a bridge chip which in turn is a PCI device. In modern chipsets and motherboards a bunch of legacy stuff that used to be on an on-the-motherboard ISA bus (not necessary with any actual slots) have now been moved to LPC, the "low pin-count bus," which is a serial bus that programmatically emulates ISA (so all the drivers, BIOS code, etc., didn't have to change). The LPC bus is, again, implemented by a bridge chip which in turn is a PCI device. It's still considered a bus. What is it, if it isn't a bus?
Just because there are other buses between the MPU401-compatible controller and the IN and OUT instructions, and the CPU registers that those instructions use to receive or send the data, doesn't make MIDI any less of a "computer bus." Jeh (talk) 22:15, 28 August 2012 (UTC)

Serial Interfaces Under the “RS” Umbrella[edit]

Hello. There are many serial interfaces in existence: RS-485, RS-422, USB, SPI, Ethernet, Fibre Channel, and many others. Some of them are covered by the “RS” umbrella mentioned in the title and called “serial” by their respective standards or by common convention, some are not (Ethernet, Fibre Channel), but the term “serial” pertains to every single interface which employs the serial transmission principle—to all of them regardless of any informal conventions. This is exactly why I see no reason for writing “RS-232 (serial port)” instead of the proper “RS-232”—it is not the one and only serial ports, all other EIA/TIA standards of the “RS” umbrella and lots of ITU-T ones like V.35 are serial ports too at the very least. By the way, my home servers IBM eServer xSeries 345 have RS-485 serial ports along with RS-232 ones, so RS-232 is not the sole serial port standard found on computers.

As a generalization from here, we really should write names as they are in article titles: RS-232, RS-485, etc., without adding anything extra. I see contraction as the only possible form of alternation, e.g. abbreviation of “Universal Serial Bus” to “USB.” Remember: these are technical articles, hence we must keep it all technically correct and strict; if it is called “RS-232”, the we must not call it anything else like “COM1” or “serial port”—that is both impudent and disgraceful to the mathematically strict art of technology. I will go for it after a while and rename all items to their proper technical names (as per corresponding standards and specifications, mostly.)

213.131.238.28 (talk) 10:15, 5 September 2012 (UTC)

Fibre Channel[edit]

Fibre Channel doesn't belong to this template: it is not a bus, but a network. Removed.

213.131.238.28 (talk) 10:18, 5 September 2012 (UTC)


How about...?[edit]

Would these fit here?

The Category:Computer buses lists quite a few that aren't on this template... What decides what busses make the list on the template? --jwilkinson (talk) 05:14, 29 March 2013 (UTC)