Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Пам'ять з паралельним доступом
Радикальним шляхом збільшення кількості звертань до пам'яті за один цикл виконання команди є використання багатопортової пам'яті. Особливістю багатопортової пам'яті є незалежні множини шин адреси і даних, кількість яких відповідає кількості портів. Така пам'ять підтримує одночасний доступ до неї з всіх портів. Найбільш популярною багатопортовою пам'яттю є двохпортова пам'ять, яка дозволяє одночасно два звертання. Рідше в процесорах ЦОС використовується трьох і чотирьох-портова пам'ять. Особливістю багатопортової пам'яті є паралелізм доступу до множини даних і вирішення всіх конфліктів, що пов'язані з паралельністю доступу. В той же час, основним недоліком багатопортової пам'яті є великі апаратні витрати, які в першу чергу залежать від паралельності доступу, а в другу чергу - від ємності пам'яті. В ПЦОС багатопортова пам'ять переважно використовується в парі з однопортовою пам'яттю. Прикладом такого поєднання служить процесор фірми Motorola DSP561xx (рис. 10.3). В даному процесорі за один командний цикл може виконуватись одне звертання до пам'яті програм і два звертання до пам'яті даних. Переміщення багатопортової пам'яті за межі кристалу викликає потребу у додатковому виведенні назовні декількох шин адреси і даних. Це в свою чергу вимагає збільшення кількості контактів, розмірів кристалу і відповідно його ціни.
Рис.10.3 Система пам’яті з використанням модуля багатопортової пам’яті
Поряд із пам'яттю загального призначення існують спеціалізовані мікросхеми пам’яті, оптимізовані для використання в пристроях визначеного класу. У комп'ютерній індустрії найчастіше використовується спеціалізована пам'ять у відеоконтролерах.
10.3 Кеш-пам¢ять
Використання в складі ПЦОС швидкодіючої кеш-пам'яті програм дозволяє підвищити його швидкодію шляхом уникнення звертань до менш швидкодіючої пам'яті програм при зчитуванні даних і команд. В ПЦОС використовуються простіші і менші за ємністю кеш-пам'яті ніж в універсальних процесорах. Типи кеш-пам'яті, що використовуються в ПЦОС відрізняються за функціонуванням і ємністю. Найпростішим типом кеш-пам'яті є буфер повторення однієї інструкції. Це є кеш на одне слово команди з використанням спеціальної команди повторення. Команда, яка буде виконуватись декілька разів завантажується в буфер перед її першим виконанням. Виконання даної команди здійснюється шляхом її зчитування з кеш-пам'яті, що дозволяє звільнити пам'ять програм для доступу до даних. Даний тип кеш-пам'яті використовується в процесорах TMS320C2x і TMS320C5x [], де він дозволяє при повторному виконанні команди забезпечити продуктивність, яка може бути досягнута при трьох звертаннях до пам'яті за один командний цикл. Очевидним недоліком використання буферу повторення є те, що він працює тільки з однією командою. Якщо для деяких алгоритмів цей метод використання кеш-пам'яті є ефективним, то для алгоритмів з повторенням блоків команд він є недоцільним.
Концепція буферу повторення може бути вдосконалена шляхом його розширення на запам'ятовування кодів декількох команд. Прикладом такої конфігурації кеш-пам'яті може бути буфер повторення на 16 команд процесора DSP16xx (ATT&T). В даному процесорі при першому виконанні блоку команд, він копіюється в буфер, а при кожному його повторі, команди читаються з буфера, звільняючи таким чином процесор від додаткових звертань до пам'яті. Такий тип кеш-пам'яті є ефективним при виконанні алгоритмів ЦОС, так як більшість з них використовують цикли з декількох команд. Завдання узгодження буферу повторення декількох команд вирішує проста односекторна кеш-пам'ять команд. Ця кеш-пам'ять дозволяє зберігати деяку кількість команд, які найчастіше використовуються. Односекторна кеш-пам'ять команд завантажується кожною командою, що виконується і відстежує адрес команд в кеші. Коли процесор звертається за командою, то при наявності її в кеш-пам'яті, вона зчитується, а при її відсутності - вміст кеш-пам'яті стає недійсним. Дана кеш-пам'ять є ефективною при доступі до єдиної неперервної ділянки пам'яті програм. Прикладом ПЦОС з використання односекторної кеш-пам'яті є процесор ZR3800x фірми Zoran. Як і буфери повторення для декількох команд, так і односекторна кеш-пам'яті використовується для вирішення задач повторного виконання невеликих груп команд. Більш гнучкою структурою є кеш-пам'ять з декількома незалежними секторами. Кеш такого типу функціонує подібно до простої односекторної кеш-пам'яті, але може зберігати дві або і більше незалежні ділянки пам'яті програм. Такий тип кеш-пам'яті використовується в високопродуктивних ПЦОС. Так в процесорі TMS320C3x [] ця пам'ять складається з двох секторів ємністю 32 слова. Кожен сектор може використовуватися для зберігання команд з незалежних ділянок пам'яті програм об'ємом 32 слова. Дана кеш-пам'ять працює наступним чином: при попаданні адреси в один з секторів кеш-пам'яті (співпадіння кешу), слово зчитується з кешу, а при не співпадінні адреси - генерується сигнал промаху сектору. В цьому випадку весь вміст одного з секторів оновлюється за алгоритмом LRU (least recently used), за яким вибирається той сектор, до якого довгий час не було звертань.
В деяких ПЦОС для управління кеш-пам'яттю використовуються спеціальні команди або біти управління, які дозволяють програмісту заблокувати вміст кешу в деякій точці виконання програми або заборонити кеш-пам'ять взагалі. Ці можливості дозволяють програмісту здійснювати ручний контроль за кеш-пам'яттю, який в деяких випадках дозволяє підвищити продуктивність ПЦОС.
|
||||||
Последнее изменение этой страницы: 2017-02-05; просмотров: 168; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.134.118.95 (0.005 с.) |