оку пам'яті, у якому цею рядок розміщеній. Надалі цею блок Стосовно рядка буде назіватіся резидентність. Запит передається через комутатор у модуль з резидентність для рядка блоком пам'яті, з Якого необхідній рядок пересілається в модуль, у якому відбулося невлучення. При цьом, у кожнім Модулі для шкірного резидентного рядка ведеться список модулів, у К-П якіх цею рядок розміщається. Рядок, розміщеній у К-П більш чем одного модуля, назівається поділюванім. . p> Алгоритм забезпечення когерентності.
При запісі даніх у К-П процесор пріпіняється Доті, поки зміненій рядок К-П пересілається в резидентність пам'ять модуля. Если цею рядок БУВ поділюванім, ВІН пересілається з резідентної пам'яті в УСІ, зазначені в списку модулів, Модулі. После одержании підтверджень про зміну всех необхідніх рядків мікропроцесор Продовжує роботу. Даній алгоритм Дає Великі простої при Операції запису в К-П.
Алгоритм DASH.
Коженая модуль має для шкірного рядка, резидентного у Модулі, список модулів, у К-П Якого розміщені копії рядків. p> Коженая рядок (у резидентном для нього Модулі) має три можливости глобальних стани:
- В«НекєшуємійВ», ЯКЩО копія рядка НŠ​​знаходится в К-П якогось Іншого модуля, крім резидентного для цього рядка;
- «³ддалена-РоздільнаВ», ЯКЩО копії рядка розміщені в К-П в других модулів;
- «³ддалена-зміненаВ», ЯКЩО рядок зміненій операцією запису в якомусь Модулі. p> Існують три локальних стани рядка:
- Неможливо до Використання;
- поділювана - ЯКЩО є незмінена копія в Інший К-П;
- змінена, ЯКЩО копія змінена операцією записах.
При чітанні процесором Зі своєї К-П рядка (поділюваного чг зміненого) у випадка его відсутності або неможлівості Використання здійснюється запит ВІ промах читання ВІ у резидентність для цього рядка модуль. Для глобального стану рядка:
- некешуємій чг віддалено-роздільній - копія рядка посілається в модуль, что запитавши, а сам модуль містіться до списку модулів;
- "Віддалено-зміненій" - запит "промах читання" перенаправляеться у модуль, что містіть зміненій рядок. Цею модуль пересілає необхідній рядок у модуль, что запитавши, и в модуль, резидентність для цього рядка. У резідентнім Модулі для цього рядка встановлюється стан "відалено - роздільній".
Если процесор здійснює операцію записами, а стан рядка в Який запісуємо - "зміненій", то запис віконується. Если рядок Неможливо до чг використанні "поділюваній", то модуль посілає в резидентність для рядка модуль запит на захоплення у віняткове Використання цього рядка и пріпіняє Виконання запису до одержании підтвердження, что ВСІ Інші Модулі, что розділяють з ним Розглянуто рядок, перевели его копію в стан "Неможливо до використанні".
Стан рядка "некешуємій" - ВІН відсілається модулю, что запитавши, и ВІН Продовжує пріпінені обчислення.
Стан рядка " віддаленій-роздільній ", резидентний модуль розсілає за списком модулів, что мают копію цього рядка, запит на Перехід ціх рядків у стан "Неможливо до використанні". После одержании цього запиту Кожний з модулів змінює стан своєї копії рядка на " Неможливо до Використання "і посілає підтвердження Виконання в модуль, что ініціював операцію запису. При цьом в припиненням Модулі рядок после записами переходити у стан "віддалено - зміненій".
У системах, что Використовують комутатори з Тимчасова поділом (шину), інтерфейс Із шиною шкірного модуля "прослуховує" Усі передачі по шіні, того немає необхідності вести списки модулів, что розділяють рядки. К-П Зі зворотнього записом створює менше НАВАНТАЖЕННЯ на шину процесора и Забезпечує велику Продуктивність, однак контролер для такого типу К-П однозначно складніше. При віборі способу організації К-П звітність,, крім апаратної реалізації, враховуваті Особливості генерації програм компілятором (одержании файлів з Розширення. map). Це має на увазі локальності розташування кодів операцій и даніх после компіляції. Тому що области пам'яті програм и пам'яті даніх Різні и до них відбувається одночасній доступ, то для Підвищення паралеллизмом при роботі з пам'яттю роблять окремі К-П команд і К-П даніх. br/>
Вікорістані джерела
1. Ю-Чжен Лю, Г.Гібсон Мікропроцесори сімейства 8086/8088 М.: Радіо і зв'язок, 1987. p> 2. Б.В.Шевкопляс Мікропроцесорні структури. Інженерні рішення М.: Радіо і зв'язок, 1990
3. В.Шевкопляс Мікропроцесорні структури. Інженерні рішення. Доповнення перше. М.: Радіо і зв'язок, 1993
4. М.Гук Апаратні засоби IBM PC С.Петербург ВІ Пітер ВІ 2000
5. В.Корнеев, А.Киселя Сучаснімікропроцесори Санкт-Петербург ВІ БХВ - Петербург ВІ 2003
6. Локазюк В.М. та ін Мікропроцесори та мікроЕОМ у виробничих системах Київ Видавничий центр ВІ Академія ВІ 2002
7. Гуржій А.М. та ін Архітектура, принципи функціонування та управління ресурсами IBM PC Харків, 2003
8. В. В...