Talk:Industry Standard Architecture

From Wikipedia, the free encyclopedia
Jump to: navigation, search
WikiProject Computing / Hardware (Rated C-class, Mid-importance)
WikiProject icon This article 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.
C-Class article C  This article has been rated as C-Class on the project's quality scale.
 Mid  This article has been rated as Mid-importance on the project's importance scale.
Taskforce icon
This article is supported by Computer hardware task force (marked as High-importance).

The 8-bit and 16-bit bus pinouts have an error; the IRQ1 pin should be labeled as IRQ2 pin. IRQ0 and IRQ1 are not available on the ISA bus, as they go directly to the relevant hardware (programmable interval timer and keyboard controller). (talk) 08:29, 17 July 2008 (UTC) Jepael

I think the information here is out of date, so far as I know no PCs' are being made with the ISA bus, typically they have several PCI slots and usually an AGP slot.

Nezumi Replies: by the way. ISA Bus speed is 8MHz for a 16 bit ISA and 4.77 for a 8 bit ISA

There's still significant demand for ISA on industrial motherboards, apparently; legacy devices, plus the fact that many of them don't need all that much bandwidth but *do* need a lot of different devices plugged into them. This last rules out PCI, and USB has close to zero real-time capacity. I have in my lap a catalogue for iei electronics with P4 motherboards with two ISA slots;, if you don't believe me. I'll leave it to the cleverer to edit the actual text.

Apart from internal use on current PC-compatible systems - I'm not so sure about this: most current motherboards use an LPC bus instead, to save having to route all the traces ISA requires.

What does that picture in the technical section mean????[edit]

please tell me or die

... The top picture is a photo of the plastic ISA-type connecting slots that ISA circuit boards plug into. The picture is taken at a strange angle, so look at the PCI article to see what these slots look like when viewed directly at them. The drawings below the picture are just top views of the connectors with notes indicating what each physical connection is used for. It is like unplugging your computer from the wall, pointing the prongs of the plug at your face and putting little labels on them to explain what each of them does. So now I don't die, huh? R.Giltner 20:14, 14 December 2006 (UTC)

How many PCI cards can be plugged to Pentium 4 machine without losing performance?[edit]

I have got a situation in my project to use 5 PCI video frame grabber cards and to process all card datas simultaneously.

1) Wrong page. Don't ask about Eskimos on a page about escargot, and don't ask about PCI on a page about ISA.
2) This isn't a message board where this type of thing is appropriate to ask. You're really only supposed to discuss the article and info that is currently or may subsequently be included therein.
3) Unless there are resource conflicts, you can plug as many PCI cards into your PC as it can hold without losing performance. Using them all simultaneously is another matter, and could saturate the bus, causing lag. 06:38, 22 September 2006 (UTC)

8 bit ISA?[edit]

As far as i recall, the name ISA did not surface untill the 16 bit extension of the IBM-PC slot. So, it's a bit like referring to a Model B as a Model T--which i'm sure also happens. [Then there's the whole Model A vs `Model A' nonsense, but i digress.]
StationaryTraveller 03:56, 11 May 2006 (UTC)

Since the shorter 8-bit slots continued to be used in systems even after the longer 16-bit slots were introduced, and either slot could accomodate the vast bulk of cards, I don't see why it wouldn't make sense to call both of them by the same name, and differentiate by the number of bits they used. If I opened up my 386 and found two long slots and a short slot, yet I could plug my original Sound Blaster into any of them, would it really make sense to just call the long ones ISA? 06:29, 22 September 2006 (UTC)

The article may be a little incorrect. IBM called them the "PC XT" or "PC AT" bus well into the mid-1990s. "ISA Bus" was a term invented by IBM's competitors at some point. 01:35, 10 December 2006 (UTC)
That's not quite correct. Neither the 8 bit nor the 16 bit versions of the interface were ascribed the description 'ISA' until IBM introduced their Micro Channel architecture system. It was the introduction of this that triggered the competition to describe the subject interface as Industry Standard architecture (presumably to make MCA stand out as non standard). (talk) 17:15, 26 January 2011 (UTC)
Well well, I found the reference. the 16-bit AT BUS is ISA, and the 8-bit XT Bus is an ISA Subset, so... the ISA is 16-bit.
Read it and weep, gnash teeth and rend garnets. The whole article needs to be rewritten:

The Industry Standard Architecture, or ISA, bus originated in the early 1980s at an IBM development lab in Boca Raton, Florida. The original IBM Personal Computer introduced in 1981 included the 8-bit subset of the ISA bus. In 1984, IBM introduced the PC-AT which was the first full 16-bit implementation of the ISA bus.

The "AT bus", as IBM originally called it, was first documented in an IBM publication called the PC-AT Technical Reference. The Technical Reference included schematics and BIOS listings that made it easy for other companies like Compaq to produce IBM compatible clones. The companies producing IBM compatibles could not use the "AT bus" name however since IBM had protected it with a trademark. In response, the industry coined "ISA" as a new name for the bus that was eventually adopted by everyone including IBM.

Although the PC-AT Technical Reference included detailed schematics and BIOS listings, it did not include the rigorous timings, rules, and other requirements that would make it a good bus specification. As a result, the various implementations of ISA were not always compatible with each other. Over time various ISA bus specifications were produced in an attempt to alleviate the compatibility problems. But unfortunately these specifications did not always agree with each other, so no single specification for the ISA bus was ever developed.
[1] —Preceding unsigned comment added by (talk) 11:44, 24 February 2011 (UTC)

I put this reference to clarify the industry position, and to validate the authors concern that since he was probably there while it was happening, as was I, that the quoted source was correct, and invalidated the premise of the article that the ISA Bus began with the IBM Personal Computer AT, and was a 6Mhz 16-bit bus, and NOT an 4.77Mhz 8-bit bus, for the IBM Personal Computer PC and the IBM Personal Computer XT. — Preceding unsigned comment added by (talk) 21:35, 24 July 2012 (UTC)

DMA and bus mastering[edit]

This article states that the ISA bus allows for bus mastering and has DMA channels, but the ISA bus was controlled by a separate DMA controller. From what I've read this was one of the main reasons why PCI rendered ISA obsolete... PCI devices could take control of the bus themselves, so nothing external was required to control traffic. Could anyone clarify how this works, and the differences between ISA and PCI bus mastering? How is it that an ISA device has DMA channels but still had request/ack channels... is this just part of the device handshaking protocol? —Preceding unsigned comment added by (talk) 17:41, 16 September 2007 (UTC)

The ISA allowed for bus mastering, by the IBM BIOS looking for expansion card BIOs that would allow the DMA routines to be serviced by other software drivers, other than the motherboards DMA. The first cards to take advantage of this were the Orchid Video cards, and later, the Intel Above boards for memory transfers. The ISA device had access to the same DMA channels through the bus interface that the motherboard had, its just that the driver had to make sure that the DMA routines were patched, so that 2 DMA requests would not be issued by an ISA device as well as the motherboard at the same time or...resource lock! The device handshaking protocol only passed signals, intrupts and DMA requests. It did not speficy how that they were to be handled. The DMA controller for the PC and the AT serviced devices, mostly the clock, HD and the NDP, and this all had to go to sleep for a ram refresh. so, the only thing that was critical was the HD DMA accesses. that is the only thing that the Video cards, and the Memory cards had to watch out for, and they handled it not by redefining the bus proticalls, but by patching the DMA routines. If I look hard, I may be able to find refrences for this. ----~~

Found the refrence: "-MASTER

   Master is used by an ISA board along with a DRQ line to gain ownership of the ISA bus. Upon receiving a -DACK a device can pull -MASTER low which will allow it to control the system address, data, and control lines. After -MASTER is low, the device should wait one CLK period before driving the address and data lines, and two clock periods before issuing a read or write command."

This is how the first accelerator cards, and video cards, and ram cards worked. ----~~

ISA and clone manufacturers[edit]

How were clone manufacturers able to use ISA when it was created by IBM? Why did not IBM ban this? Teveten 14:59, 4 October 2007 (UTC)

IBM did not create ISA, IBM created XT and AT buses. ISA is a generic name for architecture that is compatible with XT and AT. Clone manufacturers reverse-engineered the IBM busses the same way they did the rest of the PCs, by separating requirements developers from engineers so the end design was a copy of the requirements, but not the actual bus (refer to IBM PC Compatible). At least that's the way I understand it. Spacefem 15:27, 28 October 2007 (UTC)
OK. But why every PC-compatible story tells about reverse engineering BIOS, not about reverse engineering XT and AT buses?Teveten 19:51, 4 November 2007 (UTC)
Dont listen to the stories, and your actually correct.
IBM was under a government anti-trust decree which required open access to their hardware interfaces. This decree was lifted shortly before IBM introduced MCA. So, the ISA/AT bus wasn't reverse-engineered, IBM published it. (talk) 03:45, 20 August 2008 (UTC)
No, the IBM anti-trust decree was in regards to PCMs, plug compatible mainframes. It had no impact on the ESD/Micro computer design. IBM published the Bus standards so that other manufactures could provide cards, such as HP with a GPIB bus card. MCA was licensed by Tandy, before IBM abandoned it in PCs and RS/6000s, and adopted the PCI standard.
Nice. How much more disinformation can you guys dig up? Since probably none of you had a computer in 1982, you may find:
IBM Created the ISA specification with the publication of the IBM PC Technical reference manual. They didn't call it that, they called it the PC Bus, later the Expansion card industry coined the term ISA. ( specifically in reference to the 16-bit slots on the IBM AT ) ) Clone manufactures didn't have to clone/reverse anything. They built their motherboards to IBM Bus specifications, as published in the IBM PC/XT/AT Technical references. The first clone, the Compaq portable, used custom logic chips to reduce the chip count from the 5 year old technology that the PC was based on. You can find this history in the IBM Tech Journal. How about a look guys? ----~~

Out of spec 32 bit version of the ISA bus[edit]

In an old zenith datasystems 386DX machine (made in '86 or '87) there is an vesa local bus like extention to the good old 16 bit ISA bus, except that the print connector sizes are the same as in the isa bus (the connectors are a little more than doubled in length).

Note. That bus connector is called... VLB VESA Local Bus, or Video Electronic Standards Association Local Bus Connector. Popular on high-end 486 systems, obsolete on the first Pentium systems, NOT on 386 systems, except for a few rare excpetions, the Zenith is not one of them.
From this picture in google cache: 4257033000_ba82c0b935.jpg 500 × 375 - 386DX #3. Zenith Data Systems Z386/25. ulteriori informazioni su also see this picture:
It appears that the Zenith Datasystems 386DX machine had a processor bus connector that was used by a 1) A system expansion board, that had the speaker, and serial ports connected to it 2) it is NOT VLB, but it is 32-bit. From the picture, it does not have MFM controller or signal connectors. Since there are 3, I would guess that it was both a 32-bit I/O board, a clock board, a speaker driver, and ... this is what you want to pay close attention to: I would guess that the first card would be a custom hard disk controller, the second card would be an custom IO board with clock and speaker and the third board? a 32-bit 8MB expansion board for populating the system up to 16Mb of ram, ( Hauppage and a few other vendors did this ).

The following add on cards are connected to this bus: - a card carrying the processor and bios - two huge cards carring 4MB of XT like memory chips each. - the video card (CGA/EGA connector), which includes an serial mouse port on the video card. - two MFM Harddisk drive controllers. Only those disks to one of the controllers are recognized by the OS. It seems the other one does provide several MB of virtual memory per huge MFM disk connected - and one that seems to be a data accuisition card.

It seems the memory bus is extended (like VESA) to those extention cards, aim: to be able to do DMA?

No the System bus logic cards did the DMA ( i.e. the card with the processor on it ).

Is this an standardized update / extension for the ISA bus, or is it a rare extension to ISA16? —Preceding unsigned comment added by (talk) 16:35, 23 November 2007 (UTC)

The 386 was still in the early years of PCs where few standards existed like today. Naturally because of this, motherboards and their configurations varied wildly between manufacturers. The elongated slot on the Zenith system was likely a proprietary slot created by Zenith to take advantage of the 386's 32 bit bus. Some of them may be EISA slots, but I wouldn't know without seeing a picture. One thing I can guarantee though, it isn't any kind of VESA slot. Ggigabitem (talk) 07:07, 16 July 2009 (UTC)

I concur, its not a VESA slot because of the pin spacing. ---- (talk)

386 ISA[edit]

The 386 extention by Zenith to ISA is called a 386 slot. See Google 'Zenith 3300' for more information. Some other manufacturers also have separate 386 slots on their early 386 boards. Purpose seems to be extending the memory bus to >286 capabilities. —Preceding unsigned comment added by (talk) 18:10, 23 November 2007 (UTC)

IRQ 15/13[edit]

By the picture of 16 Bit ISA pins, there seems to be no irq15 pin. In Barry Brey's book "The Intel Microprocessors 8086/8088 <...> Pentium 4 Architecture, Programming, and Interfacing", 6th edition, D6 pin is called IRQ15 instead of IRQ13 on the picture. One more link: - the table there says D6 is IRQ15, not 13. I think it's really irq15, because irq13 is FPU error interrupt, and it shouldn't be used by ISA devices, while irq15 _is_ used by secondary IDE controller. If i am right, fix this error in the picture someone pls (i won't do this 'cause i am not quite sure that i'm right). —Preceding unsigned comment added by (talk) 15:32, 16 September 2008 (UTC)

The picture, at low resolution is not clear, but the Specification is that D6, or the 6th pin on the trace side is Irq15. ( And you are right that irq15 is secondary DASD/HD controller, ) but a coprocessor card could use Irq_13 as a service routine. ( there are cards that work this way. ) —Preceding unsigned comment added by (talk) 12:20, 24 February 2011 (UTC)

Moved from article[edit]

[One of the goals of the Gang of Nine was to standardize the AT bus, which notably had holes and ambiguities left in the specifications for it in IBM's Technical Reference manuals. For example, the bus speed was defined as the CPU clock speed, with no upper limit for future computer models explicitly defined, and the signal timing was defined only implicitly by the specifications of the Intel CPUs used and the electronic circuit schematics for the IBM implementations of the bus, which IBM published in the Technical Reference manuals. (By the amount and type of data IBM provided, it clearly appears that IBM only intended it to be used to make third-party attachments, peripherals, software and accessories for IBM-built computers.) For widespread compatibility between "clones", it was necessary to "nail down" all of the unspecified technical parameters and limits, as the clones were not pure identical "clones" but actually differing compatible machines which duplicated only the general IBM architecture, and not every specific device used with that architecture. Therefore, with the Gang of Nine performing this standardization work, it is likely that they developed and distributed a written standard specification for ISA, though (to this author's knowledge) they may not have made it publicly available. This would have been an at least semi-open trade-association standard similar to USB or the Philips Compact Disc standard "Rainbow Books", not an international standard recognized by a standards body like ISO, IEEE, or IEC.] This needs to be referenced before adding. --Wtshymanski (talk) 14:56, 19 October 2008 (UTC)

8/16-bit Incompatibilities[edit]

Memory address decoding for the selection of 8 or 16-bit transfer mode was limited to 128 KiB sections - A000-BFFF,C000-DFFF, E000-FFFF leading to problems when mixing 8 and 16-bit cards, as they could not co-exist in the same 128 KiB area.

Is this referring to DMA? For general memory or I/O port transfers, each individual bus cycle takes a full, independent 24-bit address with the data length (8 or 16 bits) and memory or I/O selected by the *MEM CS 16 and *IO CS 16 lines. The IBM AT technical reference manual, the original and authoritative [but not comprehensive or always thorough] definition of the AT bus, makes no reference to any constraints for mixing 8- and 16-bit cards.)

added by (talk · contribs) in this edit
This is related to memory cycles. MEMCS16 had to be asserted based only on the early unlatched address bits in the extended 16 bit connector part (these lines were called LA17-LA23) before the whole buffered address was present (at the standard 8-bit connector part; this time missing bits 20-23 on SA0-SA19). While later chipsets waited for MEMCS16 evaluation until the time SA0-SA19 were valid (indicated by ALE), the original AT would ignore MEMCS16 at that point and treat the cycle as an 8-bit cycle. See for example the diagrams in [2]. (talk) 11:44, 16 November 2008 (UTC)

Bus speed. Or is it capacity? Or maybe it's pH?[edit]

Like many "info"-boxes on Wikipedia, the box lies if it says "8 MB/S". Firstly, does it mean "megaBYTE" or "megaBIT"? Given our tight editorial control, we don't know which one is meant (let alone how many are in a "mega" anything). Secondly, it varies by slot - all the slots are more or less synchronous, but an 8 bit slot has only half as many data bits as a 16 bit slot (duh!). Thirdly, it's not standardized...some editors may not recall the sorting through cards to come up with a combination that worked with the new machine that clocked its bus a tiny bit faster than a 5150. People who make infoboxes on Wikipedia appear as if they know a lot about boxmaking but don't choose to know a lot about the subject matter. --Wtshymanski (talk) 14:19, 7 December 2010 (UTC)

The OLD convention was MB was MegaBytes, and Mb was MegaBits. Let me see.... —Preceding unsigned comment added by (talk) 11:59, 24 February 2011 (UTC)
HOLA... I have to stay away from these things: "Width in bits 8 or 16" bit width was 16, 8 was a SUBSET.
Number of devices Up to 6 devices" Gateway on its servers made both a 8 slot, 10 slot, and the behemoth 16 slot ISA motherboards.

"19-Slot (7xPCI, 12 ISA) PICMG Backplane,3rd generation design of ACTI-Backplane, Enhanced PCB thickness to prevent bending, As many as 11 ISA slots for legacy bus applications, More PICMG CPU slots to fit versatile SBC boards, Specially designed capacitor which lowers the ESR and prevents explosion, Well-designed power ensures sufficient power is delivered to every slot."[3]

CLEAN UP ON ISLE 6!!!!! -----~~ —Preceding unsigned comment added by (talk) 12:07, 24 February 2011 (UTC)

Interfacting moved from article[edit]

8-bit I/O is the least complex signaling. Such bus phase occurs when AEN = 0, IOR/IOW = 0, RESET = 0, A0 - A9 = card address which indicate that D0 - D7 is available. Maximum transfer time with an 8 MHz bus clock is 500 ns or 4 CLK cycles. Driving I/O CS16 signal 16-bits from card and SBHE is driven high by the motherboard when D0 - D15 is valid.[1][2][3][4][5]

It's too full of acronyms to be explicable, and a cycle-by-cycle description of bus timing is too much detail for an encyclopedia article. --Wtshymanski (talk) 14:54, 4 May 2011 (UTC)

Maximum ISA bus length?[edit]

What is the maximum designed length allowed for the bus signal wires?

I'm hacking an old device that had an embedded motherboard which can not be replaced, so using ribbon cables and card-edge slot adapters, I've sort of extended the ISA bus out of the one box and into the rear of another PC to use one of its ISA slots. The ribbon cable length is something like two feet long, and this is working just fine. Seems odd for it to work so well.

I thought for sure either the computer wouldn't POST or the ISA device would fail randomly but it's all working fine. I can not find info on the max length of the bus anywhere, so who knows, this may be operating well within whatever the spec actually is. Though I will probably wrap the extender ribbon in foil to provide RF shielding outside the normal RF-enclosure. (talk) 01:54, 17 September 2011 (UTC)

The IBM PC Technical reference has a schematic for the expansion bus box. I think it had a 6 foot cable, and data latches on each end. See if you can find it. — Preceding unsigned comment added by (talk) 22:32, 24 July 2012 (UTC)