{"id":268,"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:16","modified_gmt":"2020-08-22T20:26:16","slug":"this-is-the-page-title-toplevel-103","status":"publish","type":"page","link":"http:\/\/www.linux-tutorial.info\/?page_id=268","title":{"rendered":"MCA"},"content":{"rendered":"\n<title>MCA<\/title>\n<question id=\"223\" text=\"MCA is simply an 'enhancement' of the ISA bus.\" \/>\n<concept id=\"\" description=\"MCA is not an 'enhancement' of the ISA bus, but complete re-design.\" \/>\n<p>\nThe introduction of IBM&#8217;s\n<glossary>Micro-Channel Architecture<\/glossary> (MCA) was a redesign of the <em>entire<\/em>\n<glossary>bus<\/glossary> architecture. Although IBM developed the original AT\narchitecture, which later became <glossary>ISA<\/glossary>,  many companies\nproduced machines that followed this standard. The introduction of\n<glossary>MCA<\/glossary> meant that IBM could produce machines to which it alone\nhad the patent rights.\n<\/p>\n<p>\nOne of the most obvious differences is the smaller slots required for <glossary>MCA<\/glossary> cards.\n<glossary>ISA<\/glossary> cards are 4.75 x 13.5 inches, compared with the 3.5 x 11.5-inch MCA cards. As a\nresult, the same number of cards can fit into a smaller area. The drawback was\nthat ISA cards could not fit into MCA slots, and MCA cards could not fit into\nISA slots. Although this might seem as though IBM had decided to cut its own\nthroat, the changes they made in creating MCA made it very appealing.\n<\/p>\n<question id=\"224\" text=\"What mounting technique does the Micro-Channel Architecture use to decrease the size?\" \/>\n<p>\nPart of the decrease in size was a result of surface\n<glossary>mount<\/glossary> components, or surface mount technology (SMT).\nPreviously, cards used &#8220;through-hole&#8221; mounting, in which holes were drilled\nthrough the system board (hence the name). Chips were mounted in these holes or\ninto holders that were mounted in the holes. Surface mount does not use this and\nas a result, looks &#8220;flattened&#8221; by comparison. This saves not only space but also\ntime and money, as SMT cards are easier to produce. In addition, the spacing\nbetween the pins on the card (0.050&#8243;) corresponds to the spacing on the chips,\nwhich makes designing the boards much easier.\n<\/p>\n<question id=\"225\" text=\"MCA increases bus speed by adding more ground lines.\" \/>\n<concept id=\"\" description=\"MCA increases bus speed by adding more ground lines.\" \/>\n<p>\nMicro-Channel also\nincreases speed because there is a ground on every fourth pin, which reduces\ninterference, and as a result, the MCA-Bus can operate at ten times the speed of\nnon-MCA machines and still comply with FCC regulations in terms of radio\nfrequency interference.\n<\/p>\n<p>\nAnother major improvement was the expansion of\nthe data <glossary>bus<\/glossary> to 32 bits. This meant that machines were no\nlonger limited to 16 megabytes of memory, but could now access 4 gigabytes.\n<\/p>\n<p>\nOne key change in the <glossary>MCA<\/glossary> architecture was the concept\nof <i>hardware-mediated <glossary>bus<\/glossary> arbitration<\/i>. With\n<glossary>ISA<\/glossary> machines, devices could share the bus, and the OS was\nrequired to arbitrate who got a turn. With MCA, that\n<glossary>arbitration<\/glossary> is done at the hardware level, freeing the OS\nto work on other things. This also enables multiple processors to use the bus.\nTo implement this, the bus has several new lines. Four lines determine the\na<em>rbitration bus priority level<\/em>, which represents the 16 different\npriority levels that a device could have. Who gets the bus depends on the\npriority.\n<\/p>\n<p>\nFrom the users perspective, the installation of\n<glossary>MCA<\/glossary> cards is much easier than that of\n<glossary>ISA<\/glossary> cards due to the introduction of the Programmable\nOption Select, or POS. With POS, the entire hardware configuration is stored in\nthe <glossary>CMOS<\/glossary>.  When new cards are added, you are required to\nrun the machines <em>reference disk<\/em>. In addition, each card comes with an\n<em>options disk<\/em> that contains configuration information for the card. With\nthe combination of reference disk and <glossary>options disk<\/glossary>,\nconflicts are all but eliminated.\n<\/p>\n<p>\nPart of the <glossary>MCA<\/glossary>\nspec is that each card has its own unique identifying number encoded into the\nfirmware. When the system boots, the settings in the <glossary>CMOS<\/glossary>\nare compared to the cards that are found on the <glossary>bus<\/glossary>.  If\none has been added or removed, the system requires you to\n<glossary>boot<\/glossary> using the reference disk to ensure that things are set\nup correctly.\n<\/p>\n<question id=\"226\" text=\"What is the special configuration file an MCA card needs?\" \/>\n<question id=\"\" text=\"What is an 'Adapter Description File'?\" \/>\n<p>\nAs I mentioned, on each <glossary>options disk<\/glossary>\nis the necessary configuration information. This information is contained within\nthe <glossary>Adapter Description File<\/glossary> (ADF). The\n<glossary>ADF<\/glossary> contains all the necessary information for your system\nto recognize the <glossary>expansion card<\/glossary>. Because it is only a few\nkilobytes big, many ADF files can be stored on a floppy.  This is useful in\nsituations like those we had in tech support. There were several\n<glossary>MCA<\/glossary> machines in the department with dozens of expansion\ncards, each with its own ADF file. Rather than having copies of each disk, the\nanalysts who supported MCA machines (myself included) each had a single disk\nwith all the ADF files. (Eventually that, too, became burdensome, so we copied\nthe ADF files into a central directory where we could copy them as needed.) Any\ntime we needed to add a new card to our machines for testing, we didn&#8217;t need to\nworry about the ADF files because they were all in one place.\n<\/p>\n<p>\nBecause each device has its own identification number and this number is stored in the\n<glossary>ADF<\/glossary>, the reference <glossary>diskette<\/glossary> can find\nthe appropriate number with no problem. All ADF files have names such as\n@BFDF.ADF, so it isn&#8217;t  obvious what kind of card the ADF file is for just by\nlooking at the name. However, because the ADF files are simply\ntext files, you can easily figure out which file is which\nby looking at the contents.\n<\/p>\n<p>\nUnlike <glossary>ISA<\/glossary> machines,\nthe <glossary>MCA<\/glossary> architecture enables <em>interrupt sharing<\/em>.\nBecause many expansion boards are limited to a small range of  interrupts, it is\noften difficult, if not impossible, to configure every combination on your\nsystem. Interrupt sharing is possible on MCA machines because they use something\ncalled <em>level-triggered interrupts<i>,<\/i><\/em> or <em>level-sensitive\ninterrupts<\/em>.\n<\/p>\n<question id=\"227\" text=\"What does MCA architecture use to enable interrupt sharing?\" \/>\n<p>\nWith e<em>dge-triggered interrupts<i>, <\/i><\/em>or\nedge-sensitive interrupts,<em> <\/em>(the standard on  <glossary>ISA<\/glossary>\nbuses), an <glossary>interrupt<\/glossary> is generated and then is dropped. This\nsets a flag in the <glossary>PIC<\/glossary>, which figures out which device\ngenerated the interrupt and services it. If interrupts were shared with\nedge-triggered interrupts, any interrupt that arrived between the time the first\ninterrupt is generated and serviced would be lost because the PIC has no means\nof knowing that a second interrupt occurred. All the PIC sees is that an\ninterrupt occurred. Figure 0-2 shows how each of these elements relate to each\nother in time.\n<\/p>\n<p>\n<map name=\"irq_sign\">\n   <area shape=rect coords=\"322,74,400,129\" href=\"popup#falling edge#Here is the signal stops.\">\n   <area shape=rect coords=\"235,1,319,75\" href=\"popup#level edge#Here the signal remains high.\">\n   <area shape=rect coords=\"105,52,237,128\" href=\"popup#rising edge#Here the signal starts.\">\n<\/map>\n<img decoding=\"async\" src=\"irq_sign.png\" width=469 height=178 border=0 usemap=\"#irq_sign\" >\n<p>\n<icaption>Figure &#8211; Interrupt Signal<\/icaption>(Interactive)<\/p>\n<p>\nWith <glossary>level-triggered interrupts<\/glossary>, when an\n<glossary>interrupt<\/glossary> is generated, it\nis held high until the <glossary>PIC<\/glossary> forces it low after the\ninterrupt has been serviced. If another device were on the same interrupt, the\nPIC would <em>try <\/em>to pull down the interrupt line; however, the second\ndevice would keep it high. The PIC would then see that it was high and would be\nable to service the second device.\n<\/p>\n<p>\nDespite the many obvious advantages\nof the <glossary>MCA<\/glossary>, there are a few drawbacks. One primary drawback\nis the interchangeability of expansion cards between  architectures. MCA cards\ncan only fit in MCA machines. However, it is possible to use an\n<glossary>ISA<\/glossary> card in an <glossary>EISA<\/glossary> machine, and EISA\nmachines is what I will talk about next.\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>MCA The introduction of IBM&#8217;s Micro-Channel Architecture (MCA) was a redesign of the entire bus architecture. Although IBM developed the original AT architecture, which later became ISA, many companies produced machines that followed this standard. The introduction of MCA meant &hellip; <a href=\"http:\/\/www.linux-tutorial.info\/?page_id=268\">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-268","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=\/wp\/v2\/pages\/268","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=268"}],"version-history":[{"count":1,"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=\/wp\/v2\/pages\/268\/revisions"}],"predecessor-version":[{"id":619,"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=\/wp\/v2\/pages\/268\/revisions\/619"}],"wp:attachment":[{"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=268"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}