Meaning of "expansion bus" or "peripheral bus"

08
2014-07
  • Tim

    From my last post "expansion bus" and "peripheral bus", "expansion bus" or "peripheral bus" are said to be the same concept. My questions here are not the same as those before. Please do read both of them, before you judge.

    1. From the Wikipedia article "Expansion bus", expansion bus is defined as:

      An expansion bus is made up of electronic pathways which move information between the internal hardware of a computer system (including the CPU and RAM) and peripheral devices. It is a collection of wires and protocols that allows for the expansion of a computer.

      As far as I know peripheral devices can be internal or external to the computer case. So I wonder if here peripheral devices mean external peripherals only?

    2. What is the opposite concept of "expansion bus" or "peripheral bus"?
    3. In the following image, what buses are "expansion bus" or "peripheral bus"?

      enter image description here

    Thanks!

  • Answers
  • Dennis

    The answer to your question lies in the Wikipedia articale about peripheral devices you linked to:

    A peripheral is a device connected to a host computer, but not part of it. It expands the host's capabilities, but does not form part of the core computer architecture. It is often, but not always, partially or completely dependent on the host.

    A peripheral is generally defined as any auxiliary device such as a computer mouse, keyboard, hard drive, etc. that connects to and works with the computer in some way. Other examples of peripherals are Expansion cards, graphics cards, computer printers, image scanners, tape drives, microphones, loudspeakers, webcams, and digital cameras. RAM - random access memory - straddles the line between peripheral and primary component; it is technically a storage peripheral, but is required for every major function of a modern computer and removing the RAM will effectively disable any modern machine.

    As you can see, internal and external don't refer to the computer case, but to the core computer architecture. As a rule of thumb, anything that can be removed without damaging the computer of preventing it from booting up isn't part of it's core architecture and – therefore – peripheral.

    The "opposite" of an expansion bus would be an internal bus, such as those between CPU and Northbridge, Northbridge and Southbridge, CPU and chipset (all if present) or the memory bus.


  • Related Question

    interface - Difficult to understand a paragraph about computer bus from Wikipedia
  • Tim

    Following is a paragraph quoted from Wikipedia article about computer bus, except that those questions in bold and in parenthesis are mine:

    In modern systems the performance difference between the CPU and main memory has grown so great that increasing amounts of high-speed memory is built directly into the CPU, known as a cache. In such systems, CPUs communicate (with whom?) using high-performance buses that operate at speeds much greater than memory (greater than what speed?), and communicate with memory using protocols (what kinds of protocols, for example? use the same "high-performance buses"? ) similar to those used solely for peripherals in the past. These system buses (same as "high-performance buses"?) are also used to communicate with most (or all) other peripherals, through adaptors, which in turn talk to other peripherals and controllers. Such systems are architecturally more similar to multicomputers, communicating over a bus (same as "high-performance buses"?) rather than a network. In these cases, expansion buses (same as "high-performance buses"?) are entirely separate and no longer share any architecture with their host CPU (and may in fact support many different CPUs, as is the case with PCI). What would have formerly been a system bus (same as "high-performance buses"?) is now often known as a front-side bus.

    I have difficulty to parse the paragraph, probably because my lack of knowledge in hardware. I put my questions in bold and in parenthesis, following the places that I have difficulty to understand. I hope someone could rephrase the paragraph in a plain and clear way, addressing my questions. Thanks!


  • Related Answers
  • David Schwartz

    Wow, that's a lot of questions.

    CPUs communicate primarily with main memory. They also communicate with peripherals connected through ports such as PCI Express.

    CPUs vary in the relationship between the buses they use to communicate with peripherals and the way they communicate with main memory. For example, in Core 2 CPUs, the CPU has a bus that communicates with both main memory and peripherals. The memory controller (part of the motherboard chipset) connects the memory to this bus. However, Core i7 CPUs have a memory controller built into the CPU. They have a separate bus for communicating with peripherals.

    To support things like multi-core CPUs, the communication into and out of a CPU core now needs to be much faster than main memory. So the architecture has completely changed. CPUs now have ultra high-speed interlinks (such as hyper-transport or QPI).

  • Ignacio Vazquez-Abrams

    CPUs communicate with other chips on the motherboard using protocols such as HyperTransport (although not limited to just that).

    In the past, all the peripherals on a mobo would be connected together on the same bus. Nowadays there are multiple buses, such as the front-side bus, the PCI bus, etc., connected only to the appropriate chips on the mobo.

    The specific protocols used for memory are described in various documents and are beyond the scope of this site; try on EE.SE if you're interested.