Адресация оперативной памяти реферат

Обновлено: 02.07.2024

Оперативная память является одним из важнейших компонентов компьютера. Ведь именно от нее во многом зависит быстродействие компьютера, а также программное обеспечение, которое мы сможем использовать на нем.
В настоящее время разработано много видов оперативной памяти: высокоскоростной и более медленной, дорогой и подешевле. Какую память следует устанавливать на компьютер, должен решать сам пользователь, в зависимости от того, какие аспекты ему важны. Но следует помнить, что быстроразвивающаяся компьютерная отрасль, в том числе программное обеспечение, предъявляют все большие требования к компьютерам, в том числе и к оперативной памяти.

Содержание

Введение________________________________________________3
1. Оперативная память. Её свойства и функции___________________4
2. Система памяти персонального компьютера___________________6
3. КЭШ-память______________________________________________7
4. Оперативное запоминающее устройство______________________10
5. Физические виды ОЗУ_____________________________________11
5.1. Статическая память__________________________________11
5.2. Динамическая память________________________________12
6. Перспективы развития оперативной памяти
6.1. MRAM_____________________________________________13
6.2. Память на основе графеновой наноленты________________16
6.3. Оперативная память на нанотрубках____________________17
Заключение______________________________________________19
Список использованной литературы_________________________20

Прикрепленные файлы: 1 файл

Корней реферат.docx

  1. Оперативная память. Её свойства и функции___________________4
  2. Система памяти персонального компьютера___________________6
  3. КЭШ-память____________________ __________________________7
  4. Оперативное запоминающее устройство____________________ __10
  5. Физические виды ОЗУ___________________________ __________11
    1. Статическая память________________________ __________11
    2. Динамическая память________________________ ________12
    1. MRAM__________________________ ___________________13
    2. Память на основе графеновой наноленты________________16
    3. Оперативная память на нанотрубках___________________ _17

    Список использованной литературы____________________ _____20

    Часто для оперативной памяти используют обозначение RAM (Random Access Memory, то есть память с произвольным доступом). Это означает, что обращение к данным, хранящимся в оперативной памяти, не зависит от порядка их расположения в памяти. Когда говорят о памяти компьютера, обычно подразумевают оперативную память, прежде всего микросхемы памяти или модули, в которых хранятся активные программы и данные, используемые процессором.

    Операти́вная па́мять (англ. Random Access Memory, память с произвольным доступом; комп. жарг. Память) — энергозависимая часть системы компьютерной памяти, в которой, исходя из названия, временно хранятся данные и команды, необходимые процессору для выполнения им операции. Обязательным условием является адресуемость (каждое машинное слово имеет индивидуальный адрес) памяти. 1

    Обмен данными между процессором и оперативной памятью производится:

    • непосредственно,
    • либо через сверхбыструю память, 0-го уровня — регистры в АЛУ, либо при наличии кэша — через него.

    Содержащиеся в оперативной памяти данные доступны только тогда, когда на модули памяти подаётся напряжение, то есть, компьютер включен. Пропадание на модулях памяти питания, даже кратковременное, приводит к искажении либо полному пропаданию содержимого ОЗУ.

    В общем случае, оперативная память содержит данные операционной системы и запущенных на выполнение программ, поэтому от объёма оперативной памяти зависит количество задач, которые одновременно может выполнять компьютер.

    Оперативное запоминающее устройство, ОЗУ — техническое устройство, реализующее функции оперативной памяти.

    ОЗУ может изготавливаться как отдельный блок или входить в конструкцию, например однокристальной ЭВМ или микроконтроллера.

    Хранение данных в персональных компьютерах осуществляется в различных устройствах и их компонентах в зависимости от целей использования информации. Они включают в себя:

    • регистры центрального микропроцессора (используются в процессе выполнения инструкций исполнительными блоками микропроцессора);
    • кэш-память 1-го уровня (L1, компонент центрального микропроцессора, в который параллельно с выполнением текущей инструкции считываются следующие инструкции и данные для их исполнения);
    • кэш-память 2-го уровня (L2, память, выполняющая роль буфера между центральным микропроцессором и оперативным запоминающим устройством; реализуется в одном конструктиве с микропроцессором);
    • оперативное запоминающее устройство (ОЗУ, основная память, в которой размещаются исполняемые программы и необходимые для них данные);
    • постоянное запоминающее устройство (ПЗУ, хранящее базовую систему ввода-вывода и стартовые программы, запускаемые при включении компьютера);
    • энергонезависимое ОЗУ (устройство памяти, хранящее значение системного времени и данные о конфигурации компьютера);
    • видеопамять (устройство памяти видеоподсистемы персонального компьютера);
    • накопители информации (массовая долговременная память персонального компьютера, реализованная в виде устройств хранения данных на гибких и жестких магнитных дисках, магнитной ленте, оптических дисках, флэш-памяти и т.п.).
    • Оперативное запоминающее устройство
            1. Кэш-память

          Кэш — промежуточный буфер с быстрым доступом, содержащий информацию, которая может быть запрошена с наибольшей вероятностью. Доступ к данным в кэше идёт быстрее, чем выборка исходных данных из оперативной и быстрее внешней памяти, за счёт чего уменьшается среднее время доступа и увеличивается общая производительность компьютерной системы.

          Кэширование применяется ЦПУ, жёсткими дисками, браузерами, веб-серверами, службами DNS и WINS.

          Кэш состоит из набора записей. Каждая запись ассоциирована с элементом данных или блоком данных (небольшой части данных), которая является копией элемента данных в основной памяти. Каждая запись имеет идентификатор, определяющий соответствие между элементами данных в кэше и их копиями в основной памяти.

          Если кэш ограничен в объёме, то при промахе может быть принято решение отбросить некоторую запись для освобождения пространства. Для выбора отбрасываемой записи используются разные алгоритмы вытеснения.

          При модификации элементов данных в кэше выполняется их обновление в основной памяти. Задержка во времени между модификацией данных в кэше и обновлением основной памяти управляется так называемой политикой записи.

          В кэше с немедленной записью каждое изменение вызывает синхронное обновление данных в основной памяти.

          Кэш центрального процессора разделён на несколько уровней. В универсальном процессоре в настоящее время число уровней может достигать 3.

          Самой быстрой памятью является кэш первого уровня — L1-cache. По сути, она является неотъемлемой частью процессора, поскольку расположена на одном с ним кристалле и входит в состав функциональных блоков. В современных процессорах обычно кэш L1 разделен на два кэша, кэш команд (инструкций) и кэш данных (Гарвардская архитектура). Большинство процессоров без L1 кэша не могут функционировать. L1 кэш работает на частоте процессора, и, в общем случае, обращение к нему может производиться каждый такт. Зачастую является возможным выполнять несколько операций чтения/записи одновременно. Латентность доступа обычно равна 2−4 тактам ядра. Объём обычно невелик — не более 384 Кбайт.

          Вторым по быстродействию является L2-cache — кэш второго уровня, обычно он расположен на кристалле, как и L1. В старых процессорах — набор микросхем на системной плате. Объём L2 кэша от 128 Кбайт до 1−12 Мбайт. В современных многоядерных процессорах кэш второго уровня, находясь на том же кристалле, является памятью раздельного пользования — при общем объёме кэша в nM Мбайт на каждое ядро приходится по nM/nC Мбайта, где nC количество ядер процессора. Обычно латентность L2 кэша, расположенного на кристалле ядра, составляет от 8 до 20 тактов ядра.

          Кэш третьего уровня наименее быстродействующий, но он может быть очень внушительного размера — более 24 Мбайт. L3 кэш медленнее предыдущих кэшей, но всё равно значительно быстрее, чем оперативная память. В многопроцессорных системах находится в общем пользовании и предназначен для синхронизации данных различных L2.

          Иногда существует и 4 уровень кэша, обыкновенно он расположен в отдельной микросхеме. Применение кэша 4 уровня оправдано только для высокопроизводительных серверов 2 .

          Оперативное запоминающее устройство (Random Access Memory, RAM) является основной памятью персонального компьютера, в которой размещаются исполняемые программы и необходимые для них данные.

          Отличительной особенностью RAM-памяти является ее быстродействие, которое очень важно для современных микропроцессоров. По принципам действия RAM-память можно разделить на динамическую и статическую. Различие между этими типами памяти заключается в принципе хранения информации.

          Поскольку элементарной единицей информации является бит, то оперативную память можно рассматривать как некий набор ячеек, каждая из которых может хранить один информационный бит. Различие между динамической и статической памятью заключается в конструктивных особенностях элементарных ячеек для хранения отдельных битов.

          ОЗУ большинства современных компьютеров представляет собой модули динамической памяти, содержащие полупроводниковые БИС ЗУ, организованные по принципу устройств с произвольным доступом. Память динамического типа дешевле, чем статического, и её плотность выше, что позволяет на том же пространстве кремниевой подложки размещать больше ячеек памяти, но при этом её быстродействие ниже. Статическая, наоборот, более быстрая память, но она и дороже. В связи с этим массовую оперативную память строят на модулях динамической памяти, а память статического типа используется для построения кэш-памяти внутри микропроцессора.

          В статической памяти ячейки построены на различных вариантах триггеров – транзисторных схем с двумя устойчивыми состояниями. После записи бита в такую ячейку она может пребывать в одном из этих состояний и сохранять записанный бит сколь угодно долго – необходимо только наличие питания. Отсюда и название памяти – статическая, то есть пребывающая в неизменном состоянии.

          Достоинством статической памяти является ее быстродействие, а недостатками – высокое энергопотребление и низкая удельная плотность данных, поскольку одна триггерная ячейка состоит из нескольких транзисторов и, следовательно, занимает немало места на кристалле. К примеру, микросхема емкостью 4 Мбит состояла бы более чем из 24 млн транзисторов, потребляя соответствующую мощность.

          В динамической памяти элементарная ячейка памяти представляет собой конденсатор, выполненный по КМОП-технологии. Такой конденсатор способен в течение некоторого, хотя и очень малого, промежутка времени сохранять электрический заряд, наличие которого можно ассоциировать с информационным битом.

          Упрощая, можно сказать, что при записи логической единицы в ячейку памяти конденсатор заряжается, при записи нуля – разряжается. При считывании данных каждый конденсатор разряжается (через схему считывания), и если заряд конденсатора был ненулевым, то на выходе схемы считывания устанавливается единичное значение.

          Кроме того, поскольку при считывании конденсатор разряжается, то его необходимо зарядить до прежнего значения. Поэтому процесс считывания (обращения к ячейке) сочетается с подзарядкой конденсаторов, то есть с регенерацией заряда. К тому же, если обращения к ячейке не происходит в течение длительного времени, то со временем за счет токов утечки конденсатор разряжается (неизбежный физический процесс) и информация теряется. Вследствие этого память на основе массива конденсаторов требует постоянного периодического подзаряда конденсаторов.

          Для компенсации утечки заряда применяется регенерация (Memory Refresh), основанная на периодическом циклическом обращении к ячейкам памяти, так как каждое такое обращение восстанавливает прежний заряд конденсатора.

          К достоинствам динамической памяти относятся высокая удельная плотность размещения данных и низкое энергопотребление, а к недостаткам – низкое быстродействие по сравнению со статической памятью.

          1. Перспективы развития оперативной памяти
            1. MRAM

            Название работы: Структура оперативной памяти

            Предметная область: Информатика, кибернетика и программирование

            Описание: Оперативная память состоит из ячеек, в каждой из которых может находиться единица информации – машинное слово. Каждая ячейка имеет две характеристики: адрес и содержимое. Через регистр адреса микропроцессора можно обратиться к любой ячейке памяти.

            Дата добавления: 2015-10-04

            Размер файла: 180.76 KB

            Работу скачали: 11 чел.

            Министерство образования и науки нижегородской области

            Государственное бюджетное образовательное учреждение

            среднего профессионального образования

            Специальность 230701 Прикладная информатика (по отраслям)

            На тему: Структура оперативной памяти.

            По дисциплине: Операционные системы и среды.

            студент гр. ИТ-41

            Городской округ города Бор

            Оперативной памяти (от англ. Random Access Memory ) память с произвольным доступом. ОЗУ ( оперативное запоминающее устройство) — энергозависимая часть системы компьютерной памяти , в которой во время работы компьютера хранится выполняемый машинный код ( программы ), а также

            ППП ПИ 23.00.00 ТО

            входные, выходные промежуточные данные, обрабатываемые процессором.

            Оперативная память состоит из ячеек, в каждой из которых может находиться единица информации – машинное слово. Каждая ячейка имеет две характеристики: адрес и содержимое. Через регистр адреса микропроцессора можно обратиться к любой ячейке памяти.

            ППП ПИ 23.00.00 ТО

            Логическое строение оперативной памяти

            Адресное пространство – это набор адресов, который может формировать процессор. Зачем? Хороший вопрос. Дело в том, что каждая ячейка памяти имеет адрес. И что бы считать (или записать) хранимую в ней информацию, надобно к ней обратится по ее адресу. Адреса делятся на виртуальные (логические) и физические. Физические адреса – это реальные адреса реальных ячеек памяти. Программам глубоко параллельно до таких адресов, так как они оперируют символьными именами, которые затем транслятором преобразовываются в виртуальные адреса. Потом виртуальные адреса преобразовываются в физические.

            Логические адреса представляются в шестнадцатеричной форме и состоят из двух частей. Логически оперативная память разделена на сегменты. Так вот первая часть логического адреса – начало сегмента, а вторая – смещение от этого начала (сегмент, смещение)

            Логическое строение делится на 5 зон:

            1. Conventional memory – основная память;

            Начинается с адреса 00000 (0000:0000) и до 90000 (9000:0000). Это занимает 640 Кбайт. В эту область грузится в первую очередь таблица векторов прерываний, начиная с 00000 и занимает 1 Кбайт, далее следуют данные из BIOS (счетчик таймера, буфер клавиатуры и т. д.), а затем уж всякие 16 разрядные программы DOS (для них 640 Кбайт – барьер, за который могут выскочить только 32 разрядные программы). На данные BIOS ’а отводится 768 байт.
            2. UMA ( Upper Memory Area ) – верхняя память;

            Начинается с адреса А0000 и до FFFFF . Занимает она 384 Кбайт. Сюда грузится информация, связанная с аппаратной частью компьютера. UMA можно разделить на 3 части по 128 Кбайт. Первая часть (от А0000 до BFFFF ) предназначена для видеопамяти. В следующую часть (от C 0000 до DFFFF ) грузятся программы BIOS адаптеров. Последняя часть (от E 0000 до FFFFF ) зарезервирована для системной BIOS . Дело в том, что последние 128 Кбайт не полностью используются. В большинстве случаев под BIOS задействованы только последние 64 Кбайт. Свободная же часть UMB управляется драйвером EMM 386. EXE и используется для нужд операционной системы.
            3. HMA (High Memory Area) – область верхней памяти ;

            ППП ПИ 23.00.00 ТО

            История появления области HMA тянется аж к 80286 процессору, а точнее к ошибке в его схеме. Я уже говорил, что процессоры 8086 и 8087 имели 20 разрядную адресную шину, работали в реальном режиме и могли максимально обратится по адресу FFFFF ( FFFF :000 F ). А вот 80286 процессор имел уже 24 разрядную шину адреса, работал в реальном и защищенном режимах и мог адресовать до 16 Мбайт памяти.
            4. XMS ( eXtended Memory Specification ) – дополнительная память;

            Что бы работать в XMS используя DOS , для процессоров был разработан еще один режим – виртуальный. DOS не может переплюнуть барьер в 640 Кбайт, виртуальный режим позволяет разбить дополнительную память на части по

            1 Мбайту. В каждую часть грузится по программе DOS и там они варятся в реальном режиме но уже не мешая друг другу выполнятся одновременно. 32 разрядным приложениям на барьер в 640 Кбайт все равно. XMS отвечает за перевод режимов процессора драйвер EMM 386. EXE , а за организацию самой области – HIMEM . SYS . Посмотреть, что творится у Вас в XMS можно с помощью SysInfo из набора Norton Utilities.
            5. EMS (Expanded Memory Specification) – расширенная память;

            Находится эта область в верхней памяти и занимает порядка 64 Кбайт. Использовалась она лишь в старых компах с оперативной памятью до

            1 Мбайта. В силу своей спецификации это достаточно медленная область. Дело в том, что расширенная память – это один из многих коммутируемых сегментов. После того, как сегмент заполнится, происходит смена использованного сегмента новым. Но работать можно только с одним сегментом, а это, Вы сами должны понимать, не совсем хорошо, удобно и быстро. Как правило первый сегмент EMS находится по адресу D 000.

            Логическое строение оперативной памяти в графическом виде.


            ППП ПИ 23.00.00 ТО

            4. DRAM – Dynamic Random Access Memory

            DRAM - это очень старый тип микросхем оперативной памяти, который сейчас уже давно не применяется. По другому DRAM – это динамическая память с произвольным порядком выборки. Минимальной единицей информации при хранении или передаче данных в компьютере является бит. Каждый бит может быть в двух состояниях: включен (да, 1) или выключен (нет, 0). Любой объем информации в конечном итоге состоит из включенных и выключенных битов. Таким образом, что бы сохранить или передать какой либо объем данных, необходимо сохранить или передать каждый бит, не зависимо от его состояния, этих данных.

            Для хранения битов информации в оперативной памяти есть ячейки. Ячейки состоят из конденсаторов и транзисторов. Вот примерная и упрощенная схема ячейки DRAM:


            Каждая ячейка способна хранить только один бит. Если конденсатор ячейки заряжен, то это означает, что бит включен, если разряжен – выключен. Если необходимо запомнить один байт данных, то понадобится 8 ячеек (1 байт = 8 битам). Ячейки расположены в матрицах и каждая из них имеет свой адрес, состоящий из номера строки и номера столбца.

            ППП ПИ 23.00.00 ТО


            Теперь рассмотрим, как происходит чтение. Сначала на все входы подается сигнал RAS (Row Address Strobe) – это адрес строки. После этого, все данные из этой строки записываются в буфер. Затем на регистр подается сигнал CAS (Column Address Strobe) – это сигнал столбца и происходит выбор бита с соответствующим адресом. Этот бит и подается на выход. Но во время считывания данные в ячейках считанной строки разрушаются и их необходимо перезаписать взяв из буфера.

            Теперь запись. Подается сигнал WR (Write) и информация поступает на шину столбца не из регистра, а с информационного входа памяти через коммутатор, определенный адресом столбца. Таким образом, прохождение данных при записи определяется комбинацией сигналов адреса столбца и строки и разрешения записи данных в память. При записи данные из регистра строки на выход не поступают.

            Следует учесть то, что матрицы с ячейками расположены вот таким вот образом:


            ППП ПИ 23.00.00 ТО

            Важнейшей характеристикой DRAM является быстродействие, а проще говоря продолжительность цикла + время задержки + время доступа, где продолжительность цикла – время, затраченное на передачу данных, время задержки – начальная установка адреса строки и столбца, а время доступа – время поиска самой ячейки. Измеряется эта фигня в наносекундах (одна миллиардная доля секунды). Современные микросхемы памяти имеют быстродействие ниже 10 мс.

            Оперативной памятью управляет контроллер, который находится в чипсете материнской платы, а точнее в той его части, которая называется North Bridge.


            ППП ПИ 23.00.00 ТО

            А теперь поняв как работает оперативная память, разберемся, зачем же она вообще нужна. После процессора, оперативную память можно считать самым быстродействующим устройством. Поэтому основной обмен данными и происходит между этими двумя девайсами. Вся информация в персональном компьютере хранится на жестком диске. При включении компа в ОЗУ (Оперативное Запоминающее Устройство) с винта записываются драйвера, специальные программы и элементы операционной системы. Затем туда будут записаны те программы – приложения, которые Вы будете запускать. При закрытии этих программ они будут стерты из ОЗУ. Данные, записанные в оперативной памяти, передаются в CPU (Central Processing Unit), там обрабатываются и записываются обратно. И так постоянно: дали команду процессору взять биты по таким то адресам, как то их там обработать и вернуть на место или записать на новое – он так и сделал.

            Все это хорошо, до тех пор, пока ячеек ОЗУ хватает. А если нет? Тогда в работу вступает файл подкачки. Этот файл расположен на жестком диске и туда записывается все, что не влезает в ячейки оперативной памяти. Поскольку быстродействие винта значительно ниже ОЗУ, то работа файла подкачки сильно замедляет работу системы. Кроме этого, это снижает долговечность самого жесткого диска.

            Увеличение объема памяти не приводит к увеличению ее быстродействия. Изменение объема памяти ни как не повлияет на ее работу. А вот если рассматривать работу системы, то тут дело другое. В том случае, если Вам хватает объема оперативной памяти, то увеличение объема не приведет к увеличению скорости работы системы. Если же ячеек ОЗУ не хватает, то увеличение их количества (проще говоря добавление новой или замене старой на новую с большим объемом линейки памяти) приведет к ускорению работы системы.

            Рассмотрен микропроцессор фирмы Texas Instruments семейства TMS320 S40. Особенности сигнальных процессоров. Типы адресации микропроцессора. Рассмотрение команды LDI||STI проверка ее при разных значениях, применение программы C4x Simulator Composer.

            Рубрика Программирование, компьютеры и кибернетика
            Вид курсовая работа
            Язык русский
            Дата добавления 09.04.2019
            Размер файла 2,4 M

            Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

            МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ

            Федеральное государственное бюджетное образовательное учреждение

            высшего профессионального образования

            «Воронежский государственный лесотехнический университет

            имени Г.Ф. Морозова

            ПОЯСНИТЕЛЬНЬНАЯ ЗАПИСКА

            КУРСОВОЙ РАБОТЫ

            Дисциплина: Программирование микропроцессоров

            Основные способы адресации в памяти

            Студент группы ИС2-151-ОБ

            Белов Семён Вадимович

            Руководитель, к.т.н., профессор

            Зольников Константин Владимирович

            • Введение
            • 1. Теоретичкая часть
            • 2. Практическая часть
              • Заключение
              • Список используемой литературы

              Работа микропроцессора невозможна без использования любого вида обращения к памяти, а именно адресации. При вычислении любых операций над данными необходимо знать размещение исходных данных, а также иметь свободный адрес для хранения результатов. Если команда использует два и более операнда, то необходимо задать адрес для каждого из них. Знание принципов построения микропроцессора, логики взаимодействия операндов способствует эффективному написанию кода для решения различных прикладных задач. Наличие знаний об способах использования адресации в микропроцессорах позволит создавать различной сложности алгоритмы.

              Задачей данной курсовой работы заключается в рассмотрении коммуникационных портов, а также их использовании в микропроцессоре TMS320 S40.

              • 1. Теоретичкая часть
              • микропроцессор сигнальный программа
              • Микропроцессор фирмы Texas Instruments семейства TMS320 S40 является сигнальным процессором. Так как вся его система команд ориентирована на быстрое выполнение алгоритмов цифровой обработки сигналов. К ключевым особенностям сигнальных процессора можно отнести

              1. Конвейерное выполнение команд

              2. Разделение памяти программы и памяти данных

              3. Основной операционных блок выполняется за один цикл

              4. Все вспомогательные арифметические блоки для вычисления адресов операндов выполняются за один машинный цикл

              Применение сигнальных процессоров разнообразно - от встроенных микроконтроллеров в приборы бытового назначения до больших (до нескольких тысяч микропроцессоров) мультипроцессорных систем общего назначения. Одним из подходов к программированию таких систем является программирование на ассемблере. Программа имеет максимальную эффективность по быстродействию и используемой памяти, но большую трудоемкость в разработке. Другой подход предполагает использование языка высокого уровня. Вначале создается прототип программы на языке высокого уровня, получается ассемблерный текст каждого модуля программы и проводится вручную оптимизация ассемблерного кода для получения заданных временных характеристик программы или ее отдельных участков. Программирование (или оптимизация) на уровне ассемблерного кода позволяет максимально эффективно использовать особенности архитектуры и системы команд применяемого процессора.

              Для изучения типов адресации микропроцессора рассмотрим основные его характеристики

              цикл команды 50нс для тактовой

              максимальный адресуемый объем

              памяти 16 Gb (4GЧ32);

              разрядность операндов 32 бита;

              порты до 20 Мб/с;

              производительность до 275 MOPS;

              встроенный сопроцессор прямого

              доступа к памяти (ПДП) до 75 MOPS;

              одноцикловые операции с плавающей точкой 40/32 бита;

              внутренний кэш команд на 512 байт;

              скорость обмена данными через

              встроенные порты ввода/вывода до 100 Мб/с;

              внутреннее ОЗУ 8 Кбайт.

              В процессорах семейства TMS320 S40 возможны четыре основных режима адресации памяти данных:

              2) Косвенная адресация. Восемь вспомогательных регистров (AR0 - AR7) обеспечивают гибкую и удобную косвенную адресацию в процессорах TMS320C5х. В случае косвенной адресации адрес операнда находится в текущем вспомогательном регистре. Для выбора текущего вспомогательного регистра необходимо загрузить в регистр указателя вспомогательного регистра (ARP) значение в диапазоне от 0 до 7.

              Над содержимым вспомогательных регистров можно производить ряд арифметических операций с помощью арифметического устройства вспомогательных регистров - ARAU (Auxiliary Register Arithmetic Unit), которое выполняет арифметические операции над содержимом вспомогательных регистров в фазе декодирования команды. Это позволяет сформировать адрес перед фазой декодирования следующей команды. Использование ARAU позволяет модифицировать содержимое ARn после использования его содержимого в текущей команде, например, регистр может быть инкрементирован или декрементирован.

              С помощью косвенной адресации, может быть адресована любая ячейка памяти в пределах 64К при помощи полного 16-ти разрядного значения, содержащегося во вспомогательном регистре.

              Существует два основных вида модификации адреса при косвенной адресации:

              - косвенная адресация с инкрементом и декрементом на 1;

              - косвенная адресация с индексацией (изменением) на величину, содержащуюся в регистре INDX.

              Во втором случае возможно в свою очередь два варианта:

              - добавление или вычитание содержимого регистра INDX;

              - добавление или вычитание содержимого регистра INDX по правилам бит реверсивной арифметики (обычно используется для реализации быстрых алгоритмов преобразования Фурье).

              Во всех случаях содержимое вспомогательного регистра, указанного регистром ARP, используется как адрес операнда в памяти данных. ARAU осуществляет математические операции над содержимым указанного вспомогательного регистра.

              После выполнения любой команды с косвенной адресацией в ARP может быть загружено новое значение. Если в ARP загружается новая величина, то старая величина загружается в буфер вспомогательного регистра состояния ST1.

              Косвенная адресация может быть использована во всех командах, кроме команд с непосредственными операндами или без операндов.

              4) Циклическая адресация представляет метод адресации, при котором происходит циклическое обращение к ячейкам некоторой области памяти (к ячейкам буфера), т.е. при достижении конца буфера автоматически происходит переход к его началу и наоборот. В пределах буфера для указания адреса используется вспомогательный регистр (т.е. косвенный принцип адресации). При инкременте содержимого регистра (увеличении адреса) при достижении последней ячейки буфера в этот регистр автоматически заносится начальный адрес буфера.

              Рис.1 Циклический буфер

              На рисунке 1 приведен алгоритм циклической адресации. Рисунок показывает, как будет распределяться последовательность отсчетов входного сигнала в буфере длиной 6 ячеек. В таком буфере, например, можно организовать линию задержки на 5T, где T - интервал дискретизации. Для этого надо последовательно считывать отсчеты x (0) и x(5), x(1) и x(6) и т.д.

              В процессорах семейства TMS320 S40 имеется аппаратный механизм реализации циклических буферов, которые позволяют организовать два одновременно действующих циклических буфера, управляемых с помощью вспомогательных регистров. Существует 5 регистров, с помощью которых осуществляется управление циклическими буферами:

              - CBSR1 - регистр начального адреса первого циклического буфера;

              - CBSR2 - регистр начального адреса второго циклического буфера;

              - CBER1 - регистр конечного адреса первого циклического буфера;

              - CBER2 - регистр конечного адреса второго циклического буфера;

              - CBCR - регистр управления циклическими буферами.

              Чтобы задать циклический буфер, необходимо вначале загрузить адреса начала и конца в соответствующие регистры циклического буфера, затем определить вспомогательный регистр, который будет работать указателем на ячейку памяти внутри циклического буфера. И в завершение установить бит разрешения работы соответствующего циклического буфера в регистре CBCR.

              Общая схема архитектуры на примере процессора TMS3 2OC4x представлена на рис. 2

              Процессор TMS320C4x имеет адресное пространство в 4G слов (4GЧ32), которое является общим для памяти программ, памяти данных и портов ввода/вывода. Карта памяти управляется уровнем на входном контакте ROMEN и для различных значений этого сигнала показана на рис.3

              Рис. 2 Общая схема архитектуры

              Рис. 3 Карта памяти управления уровнем на входном контакте ROMEN для различных значений

              Как видно из рисунка, сигналом ROMEN управляется только начальная зона адресного пространства величиной в 1М слов. В случае ROMEN=0 - это внешняя память, доступная процессору через локальную шину, а в случае ROMEN=1 - это внутреннее ПЗУ, содержащее начальный загрузчик (адреса00000000h - 00000FFFh), который используется при загрузке программ из внешнего ПЗУ или с одного из коммуникационных портов. Работа начального загрузчика описана в п.1.12. Следующие 1М слов используются для адресации внутренних периферийных устройств: таймеров, коммуникационных портов, регистров сопроцессора ПДП и регистров управления внешними шинами

              Адресное пространство 00300000h - 7FFFFFFFh принадлежит внешней локальной шине, а 80000000h-FFFFFFFFh - внешней глобальной шине. К ши нам могут подключаться память или устройства ввода/вывода с различным быстродействием. При обращении в зону адресов 00000000h - 00300000h операций на локальной шине не производится (не вырабатывается строб шины), если ROMEN = 1. Если входной сигнал ROMEN = 0, на локальной шине производится передача данных при обращении по адресам 00000000h - 000FFFFFh. Каждая шина содержит два набора сигналов, управляющих передачей данных по шине (называемых STRB0 и STRB1), и набор сигналов, управляющих доступом(в случае разделяемой памяти в МП системах).Логика работы каждой шины определяется собственным регистром управления, в котором программируется адресное пространство, размер страницы памяти, режим формирования сигнала готовности и количество тактов ожидания (0-7) для каждого из стробов STRB0 и STRB1. Адреса регистров управления внешними шинами:0010 0000h - регистр управления глобальной шиной (GMICR);0010 0004h - регистр управления локальной шиной (LMICR).

              Обладая этим набором регистров можно реализовать пять типов адресации операндов

              При задании операндам регистровой адресации их значения содержатся в регистрах процессора. Список регистров представлен на рисунке

              Рис. 4 Список регистров

              Во время формирования прямой адресации создаётся две компоненты, первая содержит указатель страницы памяти данных, а вторая это 16 разрядное поле прямого адреса из слова команды. Схема формирования адреса приведена на рисунке

              Рис. 5 Схема формирования адреса

              Для формирования адреса операнда используются содержимое вспомогательных регистров AR0-AR7, смещение, указанное в слове команды и содержимое индексных регистров IR0, IR1 в различных сочетаниях. Процессор TMS320C4x имеет 26 режимов косвенной адресации. Среди них можно выделить следующие группы:

              1. не модифицирующие вспомогательный регистр

              2. осуществляющие модификацию вспомогательного регистра до его использования в качестве адреса

              3. модифицирующие вспомогательный регистр после его использования для адресации операнда

              4. использующие специальную модификацию вспомогательного регистра

              Во время формирования непосредственной адресации операнд располагается в восьми или шестнадцати младших битах слова команды. В зависимости от типа данных, принятых для конкретной команды, поле операнда может интерпретироваться как без знаковое целое, целое со знаком или число в коротком формате с ПТ. Синтаксис адресации: expr.

              Относительная адресация используется в командах переходов. Выполнение команды перехода заключается в изменении программного счетчика PC на величину константы (смещения перехода), содержащейся в 16 или 24 младших битах слова команды.

              Смещение перехода является целым числом со знаком. Оно вычисляется:

              для стандартных переходов

              СМЕЩЕНИЕ = АДРЕС ПЕРЕХОДА - (АДРЕС КОМАНДЫ ПЕРЕХОДА + 1);

              для задержанных переходов (см. п.1.12)

              СМЕЩЕНИЕ = АДРЕС ПЕРЕХОДА - (АДРЕС КОМАНДЫ ПЕРЕХОДА + 3

              Процессор TMS320C4x не может выполнять операции типа память-память, поэтому один из операндов всегда имеет регистровую адресацию. В большинстве команд процессора регистровая адресация одного из операндов может сочетаться с любым типом адресации второго операнда, за исключением относительной адресации. Как правило, приемником результата операции всегда является регистр, кроме команд сохранения (типа STI, STF), где приемником служит память с косвенной или прямой адресацией. Команды безусловных переходов используют относительную адресацию с 24-разрядным смещением, а команды условных переходов - относительную с 16-разрядным смещением или регистровую адресацию

              Рис. 6 Основной набор шин процессора коммуникационных портов

              По сигналу сброса RESET порты 0, 1 и 2 процессора устанавливаются в режим передачи данных, а порты 3, 4 и 5 - в режим приема. Логику работы коммуникационного порта рассмотрим на примере связи двух процессоров TMS320C4x (рис. 1.7). Порт 0 процессора A, установленный сигналом сброса в режим передачи, связан с одноименными линиями порта 3 процессора В, находящегося после сброса в режиме приема (порт 0 процессора A владеет маркером шины).

              Рис. 7 Архитектура коммуникационного порта

              Если в выходном буфере коммуникационного пор-та 0 процессора A имеется хотя бы одно слово данных, начинается передача слова. Байты слова выставляются на шину данных, начиная с младшего. Байт сопровождается сигналом CSTRB0 низкого уровня. Порт 3 процессора B принимает байт с шины данных и отвечает сигналом CRDY3 низкого уровня. Если в выходном буфере порта 3 процессора B появится слово данных, арбитр порта3 выработает сигнал CREQ3 запроса маркера шины. После передачи очередного слова арбитр порта 0 процессора A проанализирует сигнал CREQ0=CREQ3, выдаст сигнал передачи маркера шины CACK0 на порт 3 процессора B и переведет порт 0 процессора A в режим приема. Арбитр порта 3 процессора B примет сигнал CACK3=CACK0 и переведет свой порт в режим передачи. Передача данных пойдет аналогично, но из процессора B в процессор A. Если у процессора A еще есть данные в выходном буфере, его арбитр выработает запрос маркера шины на процессор B и все повторится.

              Рис. 8 Направление сигналов внешней шины

              Проверка запроса маркера CREQx производится арбитром порта, осуществляющего передачу (владеющего маркером), после передачи каждого слова данных для избежания монополизации шины данных одним из портов.

              Рис. 9 Пример связи процессоров через коммуникационные порты

              Логика работы коммуникационного порта незаметна для программиста, и, с его точки зрения, коммуникационный порт представляет из себя двунаправленный 32-разрядный интерфейс, имеющий три регистра в адресном пространстве периферийных устройств: регистр управления, входной порт и выходной порт. Распределение адресов коммуникационных портов в адресном пространстве показано на рис. 1.8, а назначение битов регистра управления. Следует отметить, что программно могут изменяться только биты ICH иOCH регистра управления. Поля OUTPUT LEVEL иINPUT LEVEL изменяются косвенно. Поле OUTPUTLEVEL увеличивается на единицу при записи слова в регистр выходного порта, поле INPUT LEVEL уменьшается на единицу при считывании регистра входного порта. Синхронизация коммуникационных портов с CPUи DMA поддерживается двумя способами. Простейшей формой синхронизации является использование внутренних сигналов готовности. Если CPU или DMA сопроцессор пытаются прочитать пустой входной буфер или записать в заполненный выходной буфер, вырабатывается сигнал неготовности, переводящий CPU или DMA в состояние ожидания. В этом случае цикл доступа к буферу растягивается до появления сигнала готовности. Сигналами готовности являются внутренние сигналы OCRDY для выходного буфера и ICRDY для входного буфера. Для синхронизации по прерываниям коммуникационный порт генерирует четыре внутренних сигнала, перечисленных на рис. 10

              Рис. 10 Регистры управления коммуникационных портов

              Прерываниями CPU от коммуникационных портов управляют биты 1-24регистра разрешения внутренних прерываний IIE (см. п.1.3), вектора прерываний коммуникационных портов приводятся в табл.1.3. Примечательно, что внутренние сигналы ICFULL, ICRDY, OCRDY и OCEMPTY не отражаются в регистре IIF. Информация о состоянии этих сигналов может быть получена из полей OUTPUT LEVEL и INPUT LEVEL регистра управления соответствующего коммуникационного порта. Для синхронизации коммуникационных портов и каналов сопроцессора ПДП используются только сигналы ICRDY и OCRDY.

              Рис. 11 Внутренние сигналы прерывания от коммуникационных портов

              2. Практическая часть

              В практической части используется программа C4x Simulator Composer

              Целью данной курсовой работы в практической части заключается рассмотрение команды LDI||STI проверка её при разных значениях.

              С точки зрения процессора, оперативная память представляет собой массив пронумерованных ячеек. Номер каждой ячейки памяти называется ее адресом. Разрядность адреса является одной из важнейших характеристик процессора и реализуемой им системы команд. Разрядность важна не как самоцель, а потому, что ею обусловлен объем адресуемой памяти – адресного пространства. Системы с 16-разрядным адресом способны адресовать 64 Кбайт (65 536) ячеек памяти, а с 32-разрядным – 4 Гбайт (4 294 967 296) ячеек. В наше время адресуемая память в 4 Гбайт для многих приложений считается неприемлемо маленькой и требуется 64-разрядная адресация.

              Процессору обычно приходится совершать арифметические операции над адресами, поэтому разрядность адреса у современных процессоров обычно совпадает с разрядностью основного АЛУ.

              У некоторых компьютеров адресация (нумерация) ячеек памяти фиксированная: одна и та же ячейка памяти всегда имеет один и тот же номер. Такая адресация называется физической. Адрес при этом разбит на битовые поля, которые непосредственно используются в качестве номера физической микросхемы памяти, и номеров строки и столбца в этой микросхеме. Напротив, большинство современных процессоров общего назначения используют виртуальную адресацию, когда номер конкретной ячейки памяти определяется не физическим размещением этой ячейки, а контекстом, в котором происходит адресация. Способы реализации виртуальной памяти и необходимость ее применения обсуждаются в Главе 5.

              В старых компьютерах размер адресуемой ячейки памяти данных совпадал с разрядностью АЛУ центрального процессора и разрядностью шины данных. Адресуемая ячейка называлась словом. В процессорах манчестерской архитектуры, которые могут использовать одну и ту же память как для команд, так и для данных, оба размера определялись длиной команды. Из-за этого многие процессоры такого типа имели странные по современным представлениям разрядности – 48, 36, иногда даже 25 бит.

              БЭСМ-6

              Так, БЭСМ-6 имела слово разрядностью 48 бит и команды длиной 24 бита, состоявшие из 15-разрядного адресного поля и 9-разрядного кода операции. Адресное поле позволяло адресовать 32К слов. В одном слове размещалось две команды, при этом команды перехода могли указывать только на первую из упакованных в одно слово команд.

              У процессоров гарвардской архитектуры (имеющих раздельные памяти для команд и данных) разрядность АЛУ и размер команды не связаны.

              Microchip PIC

              Разработчик сервера рекламирует его как основу (или, во всяком случае, как демонстрацию технической возможности) создания Web-интерфейсов для разнообразного бытового оборудования.

              Читайте также: