{"id":269,"date":"2020-08-18T19:23:47","date_gmt":"2020-08-18T20:23:47","guid":{"rendered":"http:\/\/www.linux-tutorial.info\/?page_id=77"},"modified":"2020-08-22T19:26:00","modified_gmt":"2020-08-22T20:26:00","slug":"this-is-the-page-title-toplevel-104","status":"publish","type":"page","link":"http:\/\/www.linux-tutorial.info\/?page_id=269","title":{"rendered":"Extended Industry Standard Architecture EISA"},"content":{"rendered":"\n<title>Extended Industry Standard Architecture EISA<\/title>\n<question id=\"228\" text=\"What is the 'improved' version of the ISA?\" \/>\n<p>\nTo break the hold that IBM had on the 32-bit <glossary>bus<\/glossary>\nmarket with the <glossary>Micro-Channel Architecture<\/glossary>,\n a consortium of computer companies, lead by Compaq, issued their own standard\nin September 1988. This new standard was an extension of the ISA-Bus\narchitecture and was (logically) called the Extended Industry Standard\nArchitecture (EISA). <glossary>EISA<\/glossary> offered many of the same features\nas <glossary>MCA<\/glossary> but with a different approach.\n<\/p>\n<p>\nAlthough <glossary>EISA<\/glossary>\nprovides some major improvements, it has maintained backward compatibility with\n<glossary>ISA<\/glossary> boards. Therefore, existing ISA boards can be used in\nEISA machines. In some cases, such boards can even  take advantage of the\nfeatures that EISA offers.\n<\/p>\n<question id=\"229\" text=\"The EISA provides compatibility with ISA boards.\" \/>\n<question id=\"230\" text=\"EISA boards are the same size as their ISA counterparts.\" \/>\n<p>\nTo maintain this compatibility, <glossary>EISA<\/glossary>\nboards are the same size as their <glossary>ISA<\/glossary>\ncounterparts and provide connections to the <glossary>bus<\/glossary>\nin the same locations. The original designe called for an extension of the bus\nslot, similar to the way  the AT slots were an extension on the XT slots.\nHowever, this was deemed impractical because some hardware vendors had\nadditional contacts that extended beyond the ends of the slots. There was also\nthe issue that in most cases, the slots would extend the entire length of the\nmotherboard, which meant that the motherboard would need to be either longer or\nwider to handle the longer slots.\n<\/p>\n<question id=\"231\" text=\"Because of space issues, the connectors on EISA cards are 'intertwined' with their ISA counterparts.\" \/>\n<p>\nInstead, the current spec calls for the additional connections to be\nintertwined with the old ones and  extend lower. In what used to be gaps between\nthe connectors are now leads to the new connectors. Therefore,\n<glossary>EISA<\/glossary> slots are deeper than those for\n<glossary>ISA<\/glossary> machines. Looking at EISA cards, you can easily tell\nthem from ISA cards by the two rows of connectors.\n<\/p>\n<p>\nFigure 0-3 shows what the <glossary>ISA<\/glossary>\nand <glossary>EISA<\/glossary>\nconnections look like. Note that the adapters are not to scale.\n<\/p>\n<p>\n<img decoding=\"async\" src=\"cards.png\" width=381 height=554 border=0  usemap=\"#cards_map\">\n<map name=\"cards_map\">\n<area shape=\"RECT\" coords=\"1,2,332,102\" href=\"popup#PCI Cards#The pins on PCI cards are smaller and closer together, therefore they can take up a lot less space.\">\n<area shape=\"RECT\" coords=\"2,129,334,239\" href=\"popup#ISA Cards#ISA Cards are typically longer than than PCI cards and are becoming less common.\">\n<area shape=\"RECT\" coords=\"151,339,193,396\" href=\"popup#EISA access notch#The EISA access notch ensured that the right card type is used.\">\n<area shape=\"RECT\" coords=\"3,258,376,369\" href=\"popup#EISA Cards#By adding a second row of pins, EISA included backward compatibility with ISA cards. However, EISA is less common than ISA or PCI.\">\n<area shape=\"RECT\" coords=\"9,402,338,544\" href=\"popup#EISA access notch#The EISA access notch ensured that the right card type is used.\">\n<\/map>\n<p>\n<icaption>Image &#8211; Comparison of <glossary>ISA<\/glossary>,\n<glossary>EISA<\/glossary> and PCI, Connections (<b>interactive<\/b>)<\/icaption>\n<p>\nAnother major improvement of <glossary>EISA<\/glossary>\nover <glossary>ISA<\/glossary>\nis the issue of <glossary>bus<\/glossary>\n<glossary>arbitration<\/glossary>.\nBus arbitration is the process by which devices &#8220;discuss&#8221; whose turn it is on\nthe bus and then let one of them go. In XT and AT <glossary>class<\/glossary>\nmachines, the <glossary>CPU<\/glossary> completely managed control of the bus.\nEISA includes additional control hardware to take this job away  from the CPU,\nwhich does two important things. First, the CPU is now &#8220;free&#8221; to carry on more\nimportant work, and second, the CPU gets to use the bus only when its turn comes\naround.\n<\/p>\n<p>\nHmmm. Does that sound right? Because the <glossary>CPU<\/glossary>\nis the single most important piece of hardware on the system, shouldn&#8217;t it get\nthe <glossary>bus<\/glossary> whenever it needs it? Well, yes and no. The key\nissue of <glossary>contention<\/glossary> is the use of the word &#8220;single.&#8221;\n<glossary>EISA<\/glossary> was designed with multiprocessing in mind; that is,\ncomputers with more than one CPU. If there is more  than one CPU, which <i>one\n<\/i>is more important?\n<\/p>\n<question id=\"232\" text=\"What does EISA use to avoid conflicts when accessing hardware?\" \/>\n<question id=\"233\" text=\"What is the term for devices that can control the EISA bus?\" \/>\n<question id=\"\" type=\"\" text=\"What is a 'bus master' device?\" \/>\n<p>\nThe term used here is<em> <glossary>bus<\/glossary>\narbitration<\/em>. Each of the six devices that <glossary>EISA<\/glossary>\nallows to take\ncontrol of the <glossary>bus<\/glossary>\nhas its own priority level. A device signals its desire for the bus by sending a\nsignal to the Centralized Arbitration Control (CAC) unit. If conflicts arise\n(e.g., multiple requests), the CAC unit resolves them according to the priority\nof the requesting devices. Certain activity such as <glossary>DMA<\/glossary>\nand memory refresh have the highest priority, with the <glossary>CPU<\/glossary>\nfollowing close\nbehind. Such devices are called &#8220;bus mastering devices&#8221; or &#8220;bus\nmasters&#8221; because they become the master of the <glossary>bus<\/glossary>.\n<\/p>\n<p>\nThe <glossary>EISA<\/glossary>\n<glossary>DMA<\/glossary>\ncontroller was designed for devices that cannot take advantage of the\n<glossary>bus<\/glossary> mastering capabilities of EISA. The DMA controller\nsupports <glossary>ISA<\/glossary>,  with ISA timing and 24-bit addressing as the\ndefault mode. However, it can be configured by  EISA devices to take full\nadvantage of the 32-bit capabilities.\n<\/p>\n<p>\nAnother advantage that <glossary>EISA<\/glossary>\nhas is the concept of dual buses. Because <glossary>cache<\/glossary>\nmemory is considered a basic part of the EISA specification, the\n<glossary>CPU<\/glossary> can often continue working for some time even if it\ndoes not have access to the <glossary>bus<\/glossary>.\n<\/p>\n<p>\nA major drawback of <glossary>EISA<\/glossary>\n(as compared with MCA) is that to maintain the compatibility to\n<glossary>ISA<\/glossary>,  EISA speed improvements cannot extend into memory.\nThis is because the ISA-Bus cannot handle the speed requirements of the\nhigh-speed CPUs. Therefore, EISA requires separate memory buses. This results in\nevery manufacturer having its own memory expansion cards.\n<\/p>\n<p>\nIn the discussion on <glossary>ISA<\/glossary>,\n I talked about the problems with sharing <glossary>level-triggered interrupts<\/glossary>.\n <glossary>MCA<\/glossary>,\n on the other hand, uses edge-triggered interrupts, which enables\n<glossary>interrupt<\/glossary> sharing.\n<glossary>EISA<\/glossary>\nuses a combination of the two. Obviously, EISA needs to support  edge-triggered\ninterrupts to maintain compatibility with ISA cards. However, it enables EISA\nboards to configure that particular interrupt as either edge- or\nlevel-triggered.\n<\/p>\n<p>\nAs with <glossary>MCA<\/glossary>,\n <glossary>EISA<\/glossary>\nenables each board to be identified at <glossary>boot<\/glossary>\nup. Each manufacturer is assigned a prefix code to make the identification of\nthe board easier.  EISA also provides a configuration utility similar to the MCA\nreference disk to enable configuration of the cards. In addition, EISA supports\nautomatic configuration, which enables the system to recognize the hardware at\nboot-up and configure itself accordingly. This can present problems for a Linux\nsystem because drivers in the <glossary>kernel<\/glossary> rely on the\nconfiguration to remain constant. Because each slot on an EISA machine is given\na particular range of base addresses, it is necessary to modify your kernel\nbefore making such changes. This is often referred to as the EISA-config, EISA\nConfiguration Utility, or ECU.\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Extended Industry Standard Architecture EISA To break the hold that IBM had on the 32-bit bus market with the Micro-Channel Architecture, a consortium of computer companies, lead by Compaq, issued their own standard in September 1988. This new standard was &hellip; <a href=\"http:\/\/www.linux-tutorial.info\/?page_id=269\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-269","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=\/wp\/v2\/pages\/269","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=269"}],"version-history":[{"count":1,"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=\/wp\/v2\/pages\/269\/revisions"}],"predecessor-version":[{"id":556,"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=\/wp\/v2\/pages\/269\/revisions\/556"}],"wp:attachment":[{"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=269"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}