Бұс келіспеушілігі: компьютер жүйесінде бірнеше құрылғының бірдей уақытта шинаны пайда етуінен туындайтын қате. Себептері, салдары мен шешімдері туралы біліңіз.
Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Кіріспе
Компьютерлік шинада бірнеше құрылғы бір уақытта оны пайдалануға тырысатын жағдай. Шинадағы қақтығыс – компьютерлік жүйелерді жобалау кезінде бірнеше құрылғы бір уақытта шинаға мәліметтер жіберуге тырысқанда туындайтын жағымсыз құбылыс. Шинадағы қақтығыс – байланыс құрылғыларының барлығы бір ортақ арна арқылы тікелей байланыс жасаған кезде пайда болатын телекоммуникациялық қақтығыстың бір түрі. Бұл, маршрутизаторлар немесе көпірлер арқылы құрылғылардың бір-бірімен нүктеден нүктеге байланыс арқылы жанама байланыс жасаған кезде туындайтын "желілік қақтығыстан" өзгеше. Шинадағы қақтығыс қате жұмыс істеуге, артық қуат тұтынуға және сирек жағдайларда аппараттық құралдардың зақымдануына, мысалы, MOSFET-тің істен шығуына әкелуі мүмкін.
Condition where multiple devices on a computer bus attempt to use it at the same time
Bus contention is an undesirable state in computer design where more than one device on a bus attempts to place values on it at the same time. Bus contention is the kind of telecommunication contention that occurs when all communicating devices communicate directly with each other through a single shared channel, and contrasted with "network contention" that occurs when communicating devices communicate indirectly with each other, through point to point connections through routers or bridges. Bus contention can lead to erroneous operation, excess power consumption, and, in unusual cases, permanent damage to the hardware—such as burning out a MOSFET.
Сипаттама
Көбінесе автобус архитектуралары автобусты пайдаланатын құрылғылардың мұқият жасалған төрелік протоколын сақтауын қажет етеді, бұл қақтығыс мүмкіндігін ең аз деңгейге дейін төмендетуге бағытталған. Дегенмен, автобустағы құрылғыларда логикалық қателер, өндірістік кемшіліктер немесе олардың жобалық жылдамдықтарынан асып кету болған жағдайда, төрелік бұзылып, қақтығыс туындауы мүмкін. Бағдарламаланатын жад картасы бар жүйелерде картаны басқаратын тізілімдерге заңсыз мәндер енгізілген кезде де қақтығыс пайда болуы мүмкін. Көптеген кішігірім компьютерлік жүйелер жүйелік шинадағы шиналық қақтығысты болдырмау үшін мұқият жобаланған. Олар автобус төрешісі деп аталатын бір құрылғыны пайдаланады, ол әрбір сәтте қай құрылғының автобусты басқаруға рұқсат етілетінін анықтайды, сондықтан қалыпты жұмыс кезінде шиналық қақтығыс болмайды. EEPROM және SRAM сияқты жад құрылғылары арасындағы шиналық қақтығыстың стандартты шешімі – автобус төрешісі бар үш күйлі шина. Кейбір желілер, мысалы, Token Ring, де шиналық қақтығысты болдырмау үшін жобаланған, сондықтан қалыпты жұмыс кезінде шиналық қақтығыс болмайды. Көптеген желілер желідегі кездейсоқ шиналық қақтығыстарға төтеп беруге жеткілікті сенімді жабдықпен жасалған. CAN шинасы, ALOHAnet, Ethernet және т.б. сияқты жүйелер қалыпты жұмыс кезінде кездейсоқ шиналық қақтығыстарды бастан кешіреді, бірақ қақтығыстардың пайда болу уақытын азайту және пакеттердің қақтығысында зақымдалған деректерді қайта жіберу үшін кейбір протоколдарды (мысалы, қақтығыстарды болдырмау үшін көптеген кіру, қақтығысты анықтау үшін көптеген кіруді сезу немесе автоматты қайталау сұранысы) пайдаланады.
Most bus architectures requires devices sharing a bus to follow an arbitration protocol carefully designed to make the likelihood of contention negligible. However, when devices on the bus have logic errors, manufacturing defects, or are driven beyond their design speeds, arbitration may break down and contention may result. Contention may also arise on systems which have a programmable memory mapping when illegal values are written to the registers controlling the mapping. Most small scale computer systems are carefully designed to avoid bus contention on the system bus. They use a single device, called bus arbiter, that controls which device is allowed to drive the bus at each instant, so bus contention never happens in normal operation. The standard solution to bus contention between memory devices, such as EEPROM and SRAM, is the three state bus with a bus arbiter. Some networks, such as Token Ring, are also designed to avoid bus contention, so bus contention never happens in normal operation. Most networks are designed with hardware robust enough to tolerate occasional bus contention on the network. CAN bus, ALOHAnet, Ethernet, etc., all experience occasional bus contention in normal operation, but use some protocol (such as Multiple Access with Collision Avoidance, carrier sense multiple access with collision detection, or automatic repeat request) to minimize the times that contention occurs, and to re send data that was corrupted in a packet collision.