Микропроцессоры и микроконтроллеры
Основные типы больших интегральных схем для микропроцессорных комплектов. Типовая архитектура суперскалярного микропроцессора. Мультискалярная модель выполнения программы. Доступ к памяти. Организация интерфейса МП устройств с внешними устройствами.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курс лекций |
Язык | русский |
Дата добавления | 01.07.2016 |
Размер файла | 8,8 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Достоинства VLIW заключаются в следующем:
Компилятор может эффективнее исследовать зависимости между командами и выбирать параллельно исполняемые команды, чем это делает аппаратура суперскалярного процессора, ограниченная размером окна исполнения.
VLIW процессор имеет более простое устройство управления и потенциально может иметь более высокую тактовую частоту.
Однако у VLIW процессоров есть серьёзный фактор, снижающий их производительность. Это команды ветвления, зависящие от данных, значения которых становятся известны только в динамике вычислений. Окно исполнения VLIW-процессора, не может быть очень большим в виду отсутствия у компилятора информации о зависимостях, формируемых динамически, в процессе выполнения. Этот недостаток препятствует возможности переупорядочивания операций в VLIW процессоре. Кроме того, VLIW реализация требует большого размера памяти имён, многовходовых регистровых файлов, большого числа перекрёстных связей.
EPIC-процессоры.
Тип архитектуры Explicitly Parallel Instruction Computing - это эволюция архитектуры VLIW, которая абсорбировала в себе многие концепции суперскалярной архитектуры, хотя и в форме, адаптированной к EPIC. По сути, EPIC - это «идеология», определяющая, как создавать ILP-процессоры, а также набор характеристик архитектуры, которые поддерживают данную идеологию. К архитектуре EPIC можно отнести множество различных архитектур набор команд (ISA). Помимо включения или исключения той или иной характеристики архитектуры, которые мы рассматриваем, проектировщики процессоров должны принимать традиционные решения по таким вопросам, как набор кодов операций, диапазон поддерживаемых типов данных и количество используемых регистров. Любая архитектура, относящаяся к классу EPIC должна реализовывать общую идеологию EPIC. В зависимости от того, какие из характеристик EPIC использует архитектура ISA, она может быть оптимизирована для различных приложений, например, для систем общего назначения или встроенных устройств. Из чего следует, что тип архитектуры EPIC должен быть архитектурой общего назначения, то есть архитектурой, способной достигать высокой степени параллелизма на уровне команд как в числовых, так и в скалярных приложениях.
Одна из целей создания архитектуры EPIC, состоит в том, чтобы сохранить реализованный в VLIW принцип статического создания плана выполнения, но в то же время обогатить его возможностями суперскалярного процессора, которые позволили новой архитектуре лучше учитывать динамические факторы, традиционно ограничивающие параллелизм, свойственный VLIW. Чтобы добиться этих целей, «идеология» EPIC была построена на следующих основных принципах:
Компилятор должен играть ключевую роль в создании плана выполнения, а архитектура должна обеспечивать поддержку необходимых для этого компонентов.
Архитектура должна обеспечивать функции, которые помогают компилятору в использовании статических ILP.
Архитектура должна обеспечивать механизм для передачи плана выполнения компилятора аппаратному обеспечению.
Направления развития ILP архитектуры.
Как уже отмечалось ранее, в ILP процессорах предпринимается попытка в рамках модели последовательных программ реализовать параллельное исполнение команд этих программ. После извлечения последовательного потока команд между командами устанавливаются только действительно необходимые зависимости по данным. При этом сохраняется достаточно информации о порядке следования команд в исходной программе, чтобы сохранить их порядок при наступлении прерывания.
Типичный ILP процессор выбирает команды и исследует их по мере выполнения. Исследование проводится с целью выявления и обработки команд перехода, идентификации типа команды для ее дальнейшего направления на соответствующий исполнительный блок или в буфер памяти. Выполняются также некоторые действия для смягчения зависимостей по данным, например переименование регистров. VLIW процессор возлагает на компилятор статическую реализацию тех функций, которые в суперскалярном процессоре выполняются динамически.
За последние десять лет сравнение достоинств VLIW и суперскалярных архитектур было основной темой в дискуссиях специалистов по вопросам ILP. Сторонники той и другой концепции сводят обсуждение к противопоставлению простоты и ограниченных возможностей VLIW и сложности и динамическим возможностям суперскалярных систем. При этом ясно, что оба подхода имеют свои достоинства и говорить об их альтернативности не уместно. Очевидно, что создание плана выполнения во время компиляции существенно для обеспечения высокой степени распараллеливания на уровне команд, даже для суперскалярного процессора. Так же ясно и то, что во время компиляции существует неоднозначность, которую можно разрешить только во время выполнения, и для решения этой задачи процессор требует наличия динамических механизмов. Сторонники EPIC согласны с обеими позициями. Различие только в том, что компилятор может управлять такими динамическими механизмами, применяя их выборочно там, где это возможно. Столь широкие функции управления дают компилятору возможность использовать правила управления этими механизмами более оптимально, чем это позволяют аппаратные возможности.
Основные принципы EPIC, наряду с возможностями архитектуры, которые их поддерживают, обеспечивают средства определения ILP-архитектур и процессоров, позволяющих добиться более высокой степени ILP при меньшей сложности аппаратуры в самых разных прикладных областях. IA-64 - пример того, как принципы EPIC могут применятся к вычислительным системам общего назначения - области, где совместимость кода, имеет критически важное значение. EPIC даёт надежды на устойчивый рост производительности микропроцессоров общего назначения на наших приложениях без кардинального переписывания этих приложений. Однако можно быть уверенным в том, что EPIC будет играть столь же важную роль и на рынке высокопроизводительных встроенных систем. В этой области более жёсткие требования к соотношению цена/производительность и при этом более низкие требования к совместимости на уровне объектных модулей, что заставляет использовать более настраиваемые архитектуры.
Дальнейшее повышение производительности микропроцессоров связывается в настоящее время со статическим и динамическим анализом кода с целью выявления резервов параллелизма уровня отдельных команд и программных сегментов с использованием информации, предоставляемой компилятором языка высокого уровня. Исследования в данном направлении привели к разработке мультискалярной архитектуры процессоров, которые являются дальнейшим развитием ILP архитектуры.
Лекция 7
Мультискалярные процессоры
Мультискалярная модель выполнения программы.
Мультискалярные процессоры используют агрессивную парадигму выполнения кода с целью извлечения параллелизма уровня команд из последовательной программы, представленной на языке высокого уровня. В соответствии с данной парадигмой программа разбивается на совокупность задач с помощью программных и аппаратных средств. Задача - часть программы, выполнению которой соответствует непрерывная область динамической последовательности команд (например, часть базисного блока, базисный блок, множество базисных блоков, одиночная итерация цикла, полный цикл, обращение к функции, и т.д.). Задачи программы статически разграничиваются аннотациями. Зависимости между операторами программы по управлению представляются как граф управляющих зависимостей (ГУЗ), в котором вершинами являются задачи, а дугами задается порядок их выполнения. Динамика выполнения программы может рассматриваться как обход ГУЗ программы. На каждом шаге обхода мультискалярный процессор назначает одну задачу на один из процессорных элементов (ПЭ) для выполнения, без учета фактического содержания задачи, и продолжает обход ГУЗ от рассматриваемой вершины до следующей.
Задача назначается для выполнения некоторому процессорному элементу, передачей ему начального значения программного счетчика. Множество инициированных таким образом задач выполняется параллельно на процессорных элементах, результатом чего является выполнение множества команд за один процессорный такт.
Каждый из процессорных элементов выбирает и выполняет команды, принадлежащие выделенной ему задаче. Значения разделяемых процессорными элементами регистров копируются в каждый ПЭ. Результат модификации содержимого регистров динамически направляется множеству параллельных ПЭ в соответствии с генерируемыми компилятором масками.
Доступ к памяти осуществляется спекулятивно (условно, по предположению) без знания последовательности предшествующих команд загрузки или сохранения. Обращение к данным осуществляется параллельно многим ПЭ, обработка приостанавливается только в случае истинной зависимости данных.
Пример архитектуры мультискалярного процессора показан на рис.14.
В общих чертах мультискалярный процессор можно рассматривать как параллельную вычислительную систему, состоящую из совокупности ПЭ с программой-планировщиком, которая назначает задачи на ПЭ. Как только задача назначена на ПЭ, он выбирает и выполняет команды задачи, пока она не завершится. Множество ПЭ, каждый с собственным внутренним механизмом последовательного выполнения команд, поддерживают выполнение множества задач. Команды, содержащиеся внутри динамического окна исполнения, ограничены первой командой в самой ранней выполняемой задаче и последней командой в последней выполняемой задаче. При условии, что каждая задача может содержать циклы и обращения к функциям, эффективный размер окна может быть чрезвычайно большим. Существенным является то, что не все команды внутри этого широкого диапазона одновременно рассматриваются для выполнения, а только ограниченный набор внутри каждого из ПЭ.
Важно заметить, что задачи, хотя и разделены на группы команд, но не являются независимыми. Так как задачи являются частями последовательного потока команд, то отношения по данным и управлению между индивидуальными командами должны поддерживаться в процессе выполнения. Ключевым вопросом в мультискалярной реализации является обеспечение связи по данным и управлению между параллельными процессорами. То есть как обеспечить выполнение последовательного обхода ГУЗ, если фактически выполняется непоследовательный обход.
Рис 14. Микроархитектура мультискалярного процессора.
Последовательный обход поддерживается следующим образом. Во-первых, для каждого процессора обеспечивается последовательная модель выполнения назначенной ему задачи. Во-вторых, предписывается последовательный порядок выполнения для совокупности процессоров, который поддерживается с помощью организации циклической очереди ПЭ. Указатели начала и конца очереди идентифицируют ПЭ, которые выполняют самую раннюю и самую позднюю из назначенных текущих задач соответственно.
По мере выполнения команд задачи производятся и потребляются значения переменных программы. Эти значения связаны с местом хранения, а именно с регистрами и с памятью. Так как при последовательном выполнении область хранения переменных рассматривается как единый набор регистров и памяти, мультискалярное выполнение должно поддерживать такую же модель. Кроме того, мультискалярное выполнение должно гарантировать, что значения используются и производятся также, как и при последовательном выполнении. Чтобы обеспечить это, необходимо синхронизировать обмен между задачами.
В случае использования регистровой памяти логика управления синхронизирует создание значений регистров в задачах-предшественниках с потреблением этих значений в задачах-преемниках. Производимые задачей регистровые значения могут быть определены статически и отмечены в маске создания задачи. В момент выработки соответствующего регистрового значения, если есть необходимая отметка в маске создания, это значение посылается через однонаправленный кольцевой канал (см. рис.14.) последующим задачам, т.е. в ПЭ, которые являются логическими преемниками ПЭ, выработавшего значение. Загружаемые из кольцевого канала в регистры значения, предназначенные для задач-преемников, определяются в маске накопления, которая является объединением масок создания активных в настоящее время задач-предшественников. Как только значения получены из модулей предшественников, очищаются признаки сохранения в модулях преемниках. Если задача использует одно из этих значений, потребляющая команда может быть исполнена только в том случае, если значение было получено, иначе она ждет получения требуемого значения.
В отличие от значений регистров, для значений, хранимых в памяти, в силу динамического вычисления адресов, нельзя заранее точно определить, какие из них используются или производятся задачей. Если известно, что задача потребляет значение из памяти (используя команду загрузки), которое произведено (с помощью команды сохранения) в более ранней задаче, возможно синхронизировать потребление и производство этого значения. То есть загрузка в задаче-преемнице может быть отложена до тех пор, пока в задаче-предшественнице не будет выполнена команда сохранения (похоже на ситуацию с регистрами, однако механизм синхронизации все же другой, в виду несоизмеримости размеров пространства имен).
В более общем случае, когда такое знание недоступно, может быть предпринят консервативный или агрессивный подход. Консервативный подход подразумевает необходимость ожидания до тех пор, пока не возникнет уверенность, что команда загрузки прочтет правильное значение. Этот подход обычно подразумевает задержку выполнения команд загрузки внутри задачи, до тех пор пока не завершили операции записи в память все задачи-предшественницы, результат которых может быть использован последующей командой. При агрессивном подходе загрузки из памяти в регистры ПЭ должны выполняться спекулятивно, в предположении, что задача-предшественница позже не будет сохранять значения в ту же самую ячейку памяти. Чтобы гарантировать, что никакая задача-предшественница не записывает значение в ячейку памяти, предварительно считанную задачей-преемником, должна проводиться проверка в процессе выполнения вычислений. Если эта проверка идентифицирует загрузку и сохранение, которые находятся в противоречии (не происходят в соответствующем порядке), более поздняя задача должна быть прервана и должна быть инициализирована соответствующая процедура восстановления. В мультискалярных процессорах используется агрессивный подход.
Из-за спекулятивного характера мультискалярное выполнение должно иметь как средства подтверждения правильности выполнения, так и средства исправления в случае неправильного выполнения. Выполнение команд внутри задач может рассматриваться как спекулятивное с двух точек зрения:
* спекулятивное по управлению;
* спекулятивное по данным.
Если в результате спекулятивного управления предсказание следующей задачи оказалось неверным, то следующая задача (задачи) должна быть отменена и восстановлена правильная последовательность задач. Аналогично задача, использующая неправильные данные, должна быть отменена и должно быть восстановлено правильное значение данных. В любом случае отмена задачи приводит к отмене всех задач, выполняемых после отмененной (иначе поддержание последовательной семантики оказывается сложным).
Для упрощения сохранения последовательной семантики исполнения программы мультискалярный процессор удаляет задачи из циклической очереди в том же порядке, в каком их помещал в очередь. В процессе спекулятивного выполнения задача производит значения, которые могут быть как правильными, так и неправильными. Только безусловно правильные результаты задачи могут быть безопасно использованы другими задачами. Тем не менее, в мультискалярном процессоре значения оптимистично посылаются для спекулятивного использования в процессе выполнения других задач. Поскольку задача посылает значения предварительно другим задачам, как только их вырабатывает, большая часть, если не все значения, будут посланы к моменту, когда задача становится головной в очереди. Таким образом, отмена задачи для освобождения процессора и назначения новой задачи может быть выполнена просто путем модифицирования указателя начала очереди.
Мультискалярные программы.
Мультискалярная программа должна обеспечить возможность быстрого обхода ее ГУЗ, в результате которого производится распределение множества задач по множеству процессоров.
Спецификация кода для каждой задачи стандартна. Задача определяется как фрагмент программы для последовательной машины. Хотя система команд, в которой представляется код, оказывает влияние на конструкцию каждого индивидуального процессора, это не оказывает влияния на остальную часть конструкции мультискалярного процессора.
Для ускорения обхода ГУЗ планировщику мультискалярного процессора требуется информация о структуре потока управления программы. В частности, требуется знать, какие задачи являются возможными преемниками любой данной задачи в ГУЗ. Планировщик мультискалярного процессора использует эту информацию для предсказания одной из возможных задач-преемников и продолжения обхода ГУЗ, начиная с текущей отметки. Такая информация может быть определена статически и помещена в описатель задачи. Описатели задачи могут быть расположены внутри текста программы (например, перед кодом задачи) или помещены отдельно, рядом с текстом программы (например, в конце).
Для согласованного выполнения различных задач необходимо характеризовать каждую задачу в соответствии с набором используемых и производимых задачей значений.
Процедура обработки регистровых значений проста. В результате статического анализа ГУЗ компилятором формируется маска создания. Потребляя значения, задача ожидает их только в том случае, если они еще не были произведены задачей-предшественником. Иначе она находит требуемые значения внутри локальной памяти, переданные по кольцу задачей-предшественницей.
Естественным является расположение маски создания внутри описателя задачи. Так как задача может содержать множество базисных блоков, выполнение которых зависит от обрабатываемых данных, не представляется возможным определить статически, какие регистровые значения будут созданы динамике вычислений. Маска создания должна быть консервативной и вследствие этого включать все возможные регистровые значения, которые могут быть произведены.
По мере выполнения процессором команд задачи производимые значения регистров пересылаются последующим задачам. Так как ПЭ не может определять априорно, какие команды содержит назначенная ему задача, он не может знать, какие из команд выполняют модификацию регистров, чье значение должно быть послано другим задачам. В соответствии с последовательной семантикой другим задачам должен быть послан только результат последней модификации регистра в задаче. Стратегия, связанная с ожиданием выполнения всех команд в задаче (тогда никакие дальнейшие модификации регистров невозможны), нецелесообразна, так как это часто приводит к ожиданию другими задачами значения, которое уже является доступным.
Не все созданные задачей значения должны быть переданы задачам-приемникам. Достаточно передавать лишь те значения, которые будут использованы вне создавшей их задачи.
Компилятор имеет возможность определения последней команды в задаче, которая модифицирует соответствующий регистр. Он может отметить эту команду как специальную (выполнить-и-переслать) команду, которая в дополнение к выполнению определенной операции направляет результат следующим ПЭ. Кроме того, поскольку ПЭ выполняет команды задачи, он может идентифицировать те регистры, для которых значения не будут произведены.
По тем же самым причинам процессор не может определить, какие команды в действительности выполняет назначенная ему задача, так же как не может определять априорно, на какой команде задача завершится, т.е., в какой точке управление передается вне задачи. Во время разбиения компилятором ГУЗ на задачи определяются границы задачи и узлы передачи управления. Команда в одном из этих узлов передачи управления может быть отмечена специальными условиями остановки так, чтобы соответствующие условия могли быть оценены к моменту выборки такой команды процессором. Если связанные с командой условия останова выполнены, то задача завершена.
Спецификация пересылки и останова может быть задана с помощью добавления тэговой битовой отметки (битов пересылки и стоповых битов) к каждой команде в задаче. Возможно также другое введение битовых отметок. Например, с каждой статической командой может быть ассоциирована таблица тэговых битов. Аппаратные средства выбирают команды из текста программы и соответствующие битовые отметки из таблицы, объединяют эту пару в новую команду и помещают в кэш-память команд. Освобождение регистра может быть задано добавлением специальной команды освобождения базовой системе команд.
Мультискалярная программа может быть сгенерирована из существующей двоичной, путем добавления описателей задачи и битовых отметок. Эта мультискалярная информация может быть размещена внутри кода программы, а также до или после кода.
Разделение исполнительного кода и описателей позволяет упростить процедуру перенесения программы на другие аппаратные средства.
Мультискалярные аппаратные средства.
На мультискалярные аппаратные средства возлагаются функции обхода ГУЗ, назначения задач на ПЭ и выполнения этих задач при сохранении последовательной семантики программы. Работа по определению порядка назначения задач на выполнение возлагается на программу-планировщик. По адресу описателя задачи программа-планировщик выбирает описатель задачи и назначает задачу на ПЭ, выдает адрес первой команды, устанавливает маски создания и накопления для задачи. Планировщик, используя статическую или динамическую схему предсказания, на основе информации из описателя задачи, предсказывает задачу-преемницу. Каждый ПЭ независимо выбирает и выполняет команды задачи до тех пор, пока не сталкивается с командой останова, идентифицирующей завершение задачи.
Основной целью распределения задач по ПЭ мультискалярного процессора является создание возможности выполнения нескольких команд в одном такте. Потери производительности мультискалярного процессора возможны из-за наличия у ПЭ тактов бесполезных вычислений, тактов ожидания и свободных тактов.
Бесполезные такты вычисления представляют работу, которая в последующем будет отменена в виду использования неправильных значений данных или неправильного предсказания. Такты ожидания связаны с ожиданием получения значения, созданного командой в задаче-предшественнице, или значения, созданного командой в той же самой задаче (например, в случае операции с большим временем выполнения или в виду неудачного обращения в кэш), а также с ожиданием при выполнении действий по перепланированию задач. Неактивные такты составляют время, в течение которого ПЭ не имеет назначенной задачи. Основной причиной их возникновения является несбалансированность загрузки ПЭ.
Для уменьшения потерь, связанных с бесполезными тактами, следует снижать вероятность отмены результатов предыдущих вычислений, обеспечивая синхронизацию ПЭ по данным, а также устанавливать факт необходимости отмены (если он имеет место быть) как можно раньше.
Преимущества мультискалярной архитектуры.
Мультискалярный процессор имеет некоторые свойства, выгодно отличающие его от традиционных суперскалярных микропроцессоров.
При стандартном подходе точность предсказания ветвлений ограничивает степень параллелизма. Если средняя вероятность правильного предсказания перехода - 0,9, то вероятность правильного предсказание на пять ветвлений вперед только 0,6.
Мультискалярный процессор имеет большую глубину предсказания при обеспечении высокой вероятности выбора правильного направления вычислений. Это свойство обусловлено избирательностью предсказания ветвей. Мультискалярный процессор разбивает последовательный поток команд на задачи. Хотя задачи могут содержать внутренние ветви, планировщик должен предсказывать только ветви, которые отделяют задачи. Ветви, содержащиеся внутри задачи, не предсказываются (если они не предсказаны отдельно внутри ПЭ).
Для суперскалярных процессоров наличие широкого окна выполнения приводит к увеличению числа отложенных команд и усложняет контроль результатов выполнения всех команд в этом окне.
В мультискалярной реализации окно может быть очень широким, однако в любой момент времени только несколько команд должны быть рассмотрены на предмет выдачи результатов (только одна для каждого ПЭ). Границы окна отложенных команд могут быть идентифицированы первой и последней командами в очереди на исполнение.
Для одновременной выдачи n результатов в процессоре должна использоваться логика со сложностью n2, чтобы выполнить перекрестную проверку зависимостей среди команд. В суперскалярном процессоре, это ограничивает пропускную способность логики выдачи. В мультискалярном процессоре каждый ПЭ выдает команды независимо, т.е. используется сложность логики порядка n.
Прежде чем переупорядочить доступ к памяти, необходимо идентифицировать и вычислить все адреса загрузки и записи значений.
В суперскалярной реализации команды загрузки и записи упорядочиваются (или сохраняются в первоначальной последовательности) и помещаются в буфер вместе с адресом доступа к памяти. При выполнении команды загрузки проверяется буфер, чтобы гарантировать, что не отложена никакая более ранняя команда записи по тому же самому или еще не определенному адресу. При выборке значения из памяти буфер проверяется, чтобы гарантировать, что не отложена никакая более ранняя команда загрузки или записи по тому же самому или еще не определенному адресу. В мультискалярной реализации команды загрузки и записи могут быть выполнены независимо, без знания последовательности выполнения команд загрузки и записи в задачах преемнице или предшественнице.
В суперскалярном процессоре возможна генерация достаточно широкого окна выполнения с большой глубиной предсказания ветвлений. Кроме того, возможно генерировать очень гибкий план выполнения команд. Например, загрузка в вызываемой функции может выполняться параллельно с запоминанием в вызывающей функции. Однако суперскалярный процессор не имеет представления о ГУЗ программы. Поэтому и возникает необходимость предсказания каждого перехода, что, в конечном счете, приводит к снижению точности предсказания и производительности.
Мультискалярный процессор во многом похож на многопроцессорную систему с общей памятью и очень низким уровнем непроизводительных затрат на планирование. Главное их отличие заключается в том, что многопроцессорная система требует, чтобы компилятор делил программу на задачи, где все соотношения зависимостей между задачами известны (предусмотрены программистом путем использования операторов синхронизации и межпроцессорных коммуникаций), а мультискалярный процессор не требует никакого априорного знания относительно связей команд по управлению и данным.
Мультискалярная архитектура объединяет принципы низко- и высокоуровневого распараллеливания, методы анализа статической и динамической структур программы, благодаря чему позволяет добиться более высоких значений эффективности использования вычислительных ресурсов процессора, чем другие типы архитектур. Фактически в мультискалярных процессорах реализован симбиоз автоматически распараллеливающего компилятора, дающего указания аппаратуре процессора в виде отметок команд и специальных команд, и аппаратных средств, воспринимающих эти указания.
Изложенный выше подход не является единственно возможным при реализации этой плодотворной идеи - привлечения компилятора к распределению заданий по ПЭ и балансировке загрузки процессоров в многопроцессорных системах.
Лекция 8
Организация интерфейса МП устройств с внешними устройствами и памятью. Встроенные микропроцессорные системы управления.
Появление в 1971 году первого микропроцессора ознаменовало собой начало новой эры не только в вычислительной технике, но и в области систем встроенного управления оборудованием -- эры высокопроизводительных и надежных цифровых, микропроцессорных систем управления, интегрированных в рабочую машину, механизм, прибор, изделие -- станок, робот, стиральную машину, принтер, плоттер, радиотелефон, автомобиль и т.д.
Компьютерная и связанная с ней микропроцессорная техника развиваются столь стремительно, что производительность процессоров удваивается каждые 8-10 месяцев при значительном росте степени интеграции, снижении габаритов, энергопотребления и цены.
Революция в управляющей электронике сопровождается революцией и в силовой электронике, что позволяет создавать интегрально-гибридные интеллектуальные электронные модули, а также конструктивно интегрировать в одном изделии рабочий орган механизма, силовой преобразователь, устройство управления, источник питания и датчики.
Вместо традиционного термина «электромеханика» постепенно начинают применять термин «мехатроника», означающий конструктивное объединение механики и электроники на принципиально новом уровне, когда рост управляющих вычислительных ресурсов при использовании больших интегральных схем (БИС) сопровождается значительным повышением надежности оборудования, главным образом, за счет резкого уменьшения монтажных соединений и расширением функциональных возможностей изделия в сторону автоматической адаптации к условиям эксплуатации и интерактивного обучения в процессе диалога с оператором.
Встроенной системой управления будем называть систему управления, конструктивно интегрированную в оборудование. Так, система управления, встроенная в статический преобразователь частоты для асинхронных двигателей, может представлять собой одно- или многоплатную микроЭВМ с необходимым набором интерфейсов для обеспечения как непосредственного управления инвертором и приводом в целом, так и взаимодействия с человеком-оператором, включая, например пульт оперативного управления с дисплеем и клавиатурой. Обязательным компонентом такой системы является интерфейс с системой управления более высокого уровня (промышленным программируемым контроллером или компьютером в промышленном исполнении), что позволяет решать задачи комплексной автоматизации с использованием заданного числа единиц технологического оборудования, объединяя это оборудование в единую распределенную систему управления.
В зависимости от сложности решаемой задачи встроенная система управления может быть однопроцессорной или многопроцессорной (мультимикропроцессорной), одноуровневой или многоуровневой. В последнем случае на нижнем уровне управления решаются задачи непосредственного управления отдельными компонентами оборудования (например отдельными осями привода, узлами автомобиля), а на следующем, более высоком, - задачи совместного управления в реальном времени, связи с оператором, системой верхнего уровня и т.д. Типичными примерами являются станки с числовым программным управлением, роботы-манипуляторы, изделия автомобильной и авиационной электроники, системы связи.
Для многоуровневых систем управления в настоящее время четко прослеживается тенденция оформления систем управления среднего уровня в самостоятельном конструктиве для монтажа в стойки или в панели управления. Возможен также вариант настольного или настенного монтажа. Такие устройства управления получили название индустриальных рабочих станций, индустриальных компьютеров, панельных компьютеров, промышленных программируемых контроллеров. При этом контроллеры нижнего уровня управления могут подключаться к системе среднего уровня управления несколькими способами: через стандартные последовательные или параллельные интерфейсы; путем установки на системную шину в качестве специализированных устройств сопряжения с объектом (модулей УСО).
Индустриальные компьютеры имеют, как правило, развитый набор стандартных устройств сопряжения с объектом (УСО), делающий их универсальными средствами управления для широкого круга применений. Тем не менее на нижнем уровне управления двигателями, статическими преобразователями и др. требуется в большинстве случаев разработка встроенных специализированных контроллеров, причем эту разработку могут выполнить только специалисты в данной предметной области, хорошо разбирающиеся в особенностях объекта управления, способные предложить и реализовать весь комплекс необходимых алгоритмов оптимального управления объектом.
Главное отличие промышленного контроллера от промышленного компьютера состоит в адаптации языка программирования под конкретную область применения. Так, большинство промышленных контроллеров, выпускаемых такими известными фирмами как Allen Bredley, Simens, Fanuc, ABB и др. являются программируемыми логическими контроллерами (РLС) и имеют встроенные интерпретаторы с языка релейной автоматики или языка Булевой алгебры, что позволяет неспециалисту программирование системы управления. Таким образом, одноуровневые системы встроенного управления выполняются преимущественно на базе однокристальных микроЭВМ - микроконтроллеров, а двух- и более -уровневые предполагают использование на среднем уровне управления многоплатных микроЭВМ типа промышленного программируемого контроллера или компьютера в промышленном исполнении.
Встраиваемое управляющее устройство является микропроцессорной системой управления, в состав которой кроме центрального процессора на базе однокристального микропроцессора и микроконтроллера входят необходимые дополнительные элементы памяти и периферийные интерфейсные БИС для организации сопряжения с датчиками, объектом управления и системой управления более высокого уровня.
С точки зрения производителей микропроцессорной техники все задачи, решаемые системами встроенного управления делятся на два больших класса: управление событиями в реальном времени и управление потоками данных. Каждый класс задач предъявляет свои специфические требования к микропроцессору или микроконтроллеру, что отражается прежде всего в наборе функций, реализуемых на кристалле, а также в системе команд.
К первому классу относятся задачи, требующие быстрой реакции микропроцессорной системы на изменение внешних условий (на срабатывание технологических датчиков, изменение параметров и т.д.). Как правило, системы управления приводами, энергетическими установками, роботами, а также системы распределенной автоматизации относятся к системам первого класса. Эти задачи требуют применения микроконтроллеров с большим объемом интегрированной на кристалл периферии, включая реализацию на кристалле памяти программ, памяти данных и устройств ввода-вывода, что сокращает аппаратные затраты и удешевляет изделие со встроенной системой управления. Чаще всего в системах управления этого класса для реализации алгоритма управления требуется память относительно небольшого объема (до 32 Кбайт).
Ко второму классу задач относятся задачи, требующие быстрой обработки значительных объемов информации, например в микропроцессорных системах поддержки компьютерных сетей, в системах управления летательными аппаратами, подвижным составом, в системах обработки видеоизображений, когда встроенный процессор должен выполнять множество различных вычислительных операций, в том числе операций с плавающей запятой. Как правило, для решения таких задач требуется уже высокопроизводительный 32- или 64-разрядный процессор.
В соответствии с упомянутыми выше классами задач, продукция фирмы Intel для встроенных применений может быть разделена на следующие группы:
* 8-битовые микроконтроллеры первого поколения (семейство МСSR-48).
* Современные 8-разрядные микроконтроллеры (МCSR-51, МCSR-51, МСSR-251).
* Современные 16-разрядные микроконтроллеры для управления в реальном времени (МСSR-96, МСSR-196, МСSR.-296).
* Встраиваемые 16-разрядные и 32-разрядные микропроцессоры РС-подобной архитектуры (80С186, 386ЕХ и др.).
* Высокопроизводительные микропроцессоры, построенные по RISС-технологии (1960).
Первые три группы изделий ориентированы на управление событиями в реальном времени. Две последние группы предназначены преимущественно для управления процессами. Из изделий, предназначенных для управления событиями, группа 16-разрядных микроконтроллеров МСSR-96 является наиболее производительной и имеет богатейший выбор интегрированных на кристалл специализированных периферийных устройств. Основной базой для построения встроенных систем управления нижнего уровня являются именно однокристальные микроЭВМ и микроконтроллеры, могут применяться также и законченные одноплатные системы управления на их основе, выпускаемые рядом фирм в качестве контроллеров-прототипов. Долгое время в нашей стране были доступны в основном только освоенные отечественной промышленностью младшие модели 8-разрядных микропроцессоров и микроконтроллеров фирмы Intel, совместимые с изделиями МСS-80, МСS-48, МСS-51, а также 16-разрядные процессоры собственной разработки, система команд которые совместимы с процессорами фирмы DEC (1816ВМ1, 1816ВМ2). В настоящее время ситуация резко изменилась, и вся самая передовая продукция ведущих фирм мира стала доступна отечественному разработчику и производителю.
Сегодня разработчики встроенных систем управления стоят перед непростым выбором: какое изделие и какой фирмы использовать в проекте.
Разработка мощной микропроцессорной системы управления является сложным делом. Для этого необходим штат высококвалифицированных инженеров-схемотехников и программистов, а также соответствующее оборудование, а именно комплект аппаратных и программных средств разработки (кстати, для каждого набора микропроцессорных БИС-свой). Современные микропроцессоры и микроконтроллеры имеют высокие тактовые частоты и требуют исключительной тщательности как при проектировании печатной платы, включая разводку, так и при ее изготовлении.
На сегодняшний день общемировая потребность в микроконтроллерах составляет более 600 млн. штук в год и быстро возрастает. Это говорит о массовом освоении промышленностью изделий с высокопроизводительными встроенными системами управления в самых разнообразных отраслях техники. Эти системы находят применение в автомобильной промышленности, станко- и роботостроении, в самолетной индустрии, в производстве периферийных устройств компьютеров (приводы дисковых накопителей, скоростные принтеры, плоттеры и т.д.), в бытовой технике (стиральные машины, видеомагнитофоны и т.д.) и, разумеется, в энергетике и электромеханике, где 16-разрядные устройства управления появились даже в относительно несложных приводах бытовых кондиционеров. Особенно широкие возможности по применению этих контроллеров открываются перед разработчиками систем автоматизированного привода, стабилизированных источников питания, промышленных контроллеров и других средств автоматизации производственных процессов.
Лекция 9
Однокристальные микро-ЭВМ.
В микропроцессорной технике выделился самостоятельный класс больших интегральных схем (БИС) - однокристальные микроЭВМ (микроконтроллеры), которые предназначены для "интеллектуализации" оборудования различного технологического назначения. Архитектура однокристальных микроЭВМ - результат эволюции архитектуры микропроцессоров и микропроцессорных систем, обусловленный стремлением существенно снизить их аппаратные затраты и стоимость.
Однокристальные микроЭВМ представляют собой приборы, конструктивно выполненные в виде одной БИС и включающие в себя все устройства, необходимые для реализации цифровой системы управления минимальной конфигурации: процессор, запоминающее устройства данных, запоминающее устройство команд, внутренний генератор тактовых сигналов, а также программируемые схемы для связи с внешней средой.
Использование однокристальных микроЭВМ в системах управления обеспечивает достижение исключительно высоких показателей эффективности при столь низкой стоимости, что им, видимо, нет в ближайшем времени альтернативной элементной базы для построения управляющих и/или регулирующих систем.
Отечественная микроэлектронная промышленность освоила широкомасштабный выпуск однокристальных микроЭВМ, к числу которых можно отнести 4-битные микроконтроллеры серий 1814, 1820, 1829 и 1013; 8-битные микроЭВМ серии 1816; микроконтроллеры сигнальные (аналоговые микропроцессоры) серии 1813. В данном курсе в качестве базовых выбраны однокристальные микроЭВМ (ОМЭВМ) серии 1816. В настоящее время в состав этой серии входят два семейства ОМЭВМ МК48 и МК51.
Общие сведения об однокристальных микроЭВМ семейства МК48.
Семейство МК48 включает ряд моделей ОМЭВМ, функциональный состав и технические характеристики которых отражают как различные в идеологическом подходе к применению ОМЭВМ, так и прогрессе технологии СБИС. Все модели, входящие в семейство МК48, являются полностью совместимыми по системе команд. назначению и разводке выводов, совокупности основных функциональных устройств из базового набора семейств.
Первое поколение отечественных ОМЭВМ семейства МК48 - БИС КР1816ВЕ48 и КР1816ВЕ35 являются функционально-конструктивными аналогами БИС соответственно 8748 и 8035 фирмы Intel (США), выполнены по n-канальной МОП-технологии, что обусловило следующие ограничения: уровень интеграции до 18 тыс. транзисторов на кристалле, частота следования тактовых сигналов - 6.0 МГц, объем внутренней памяти ОЗУ - 64 байта, ППЗУ - 1 кбайт и минимальное время цикла - 2,5 мкс.
Второе поколение - БИС КР1816ВЕ49, КР1816ВЕ39 (аналоги БИС 8049 и 8039 фирмы Intel) выполнено по n-канальной МОП-технологии с пропорциональным масштабированием, что позволило повысить уровень интеграции до 36 тыс. транзисторов на кристалле, частоту следования тактовых сигналов до 11МГц, увеличить объем ОЗУ до 128 байт, ПЗУ до 2 кбайт и снизить минимальное время цикла до 1,36 мкс.
Третье поколение семейства МК48 - БИС ОМЭВМ серии КР1830: КР1830ВЕ48, КР1830ВЕ35 (аналоги БИС 80С48, 80С35 фирмы Intel) выполнено по КМОП-технологии, что позволило на порядок уменьшить ток потребления по сравнению с БИС КР1816 ВЕ48, КР1816ВЕ35 при сохранении остальных параметров.
ОМЭВМ КР1816ВЕ48, КР1816ВЕ35, КР1830ВЕ48 и КР1830ВЕ35 полностью идентичны в части структурной реализации. При этом в БИС КМ1816ВЕ48 программная память размещается во внутреннем ППЗУ с ультрафиолетовым (УФ) стиранием, а в БИС КР1830ВЕ48 - во внутреннем ПЗУ масочного типа. Таким образом, оперативность программирования ППЗУ позволяет использовать ОМЭВМ КР1816ВЕ48 при создании контроллеров единичных экземпляров или мелкосерийных изделий. Потребители БИС КР1830ВЕ48 лишены такой возможности, так как программирование ПЗУ осуществляется в процессе изготовления БИС по данным "прошивки" заказа потребителя.
В микросхемах КР1816ВЕ35 и КР1830ВЕ35 в отличие от БИС КМ1816ВЕ48, КР1830ВЕ48 память программ реализуется только за счет подключения внешней памяти любого типа (ОЗУ, ППЗУ, ПЗУ) общим объемом до 4 кбайт. Эта особенность позволяет использовать их в качестве отладочного варианта, когда память программ реализуется в ОЗУ, что позволяет легко модифицировать отлаживание программ.
ОМЭВМ КР1816ВЕ49 и КР1816ВЕ39 имеют одну и ту же структуру, одинаковые схемотехнические решения и технические характеристики, за исключением памяти программ: ОМЭВМ КР1816ВЕ49 имеет внутреннюю память программы объемом 2 кбайт, выполненную в виде масочного ПЗУ, а ОМЭВМ КР1816ВЕ39 может использоваться только с внешним ЗУ программ.
Реализация программной памяти КР1816ВЕ49 в виде ПЗУ обуславливает целесообразность применения этих ОМЭВМ только для изделий средне- и крупносерийного производства, что обеспечивает в этом случае низкую стоимость ОМЭВМ. В качестве отладочной модели, а также при разработке единичных экземпляров изделий целесообразно использовать ОМЭВМ КР1816ВЕ39 с внешней памятью программ.
В общем виде основные отличительные особенности ОМЭВМ семейства МК48 представлены в таблице 1.
Таблица 1
Микро- схемы |
Аналог |
Объем внутр. памяти |
Тип памяти программ |
Объем Памяти Данных |
Макс.частота след.тактовых сигналов |
Ток потреб- ления |
|
байт |
МГц |
мА |
|||||
КР1826ВЕ35 КР1816ВЕ48 КР1816ВЕ39 КР1816ВЕ49 КР1830ВЕ35 КР1830ВЕ48 |
8035 8748 8039 8049 80С35 80С48 |
НЕТ 1К НЕТ 1К НЕТ 1К |
ВНЕШН. УФППЗУ ВНЕШН. ПЗУ ВНЕШН. ПЗУ |
64 64 128 128 64 64 |
6.0 6.0 11.0 11.0 64 64 |
135.0 135.0 110.0 110.0 8.0 8.0 |
В ОМЭВМ предусмотрена возможность расширения памяти программ до 4 кбайт, памяти данных до 384 байт и увеличения числа линий ввода вывода за счет подключения внешних кристаллов памяти программ, ОЗУ и БИС интерфейсов.
Однокристальные микро-ЭВМ семейства МК51.
8-разрядные высокопроизводительные однокристальные микроЭВМ семейства МК51 выполнены по высококачественной n-МОП-технологии (серия 1816) и КМОП-технологии (серия 1830).
Использование ОМЭВМ семейства МК51 по сравнению с МК48 обеспечивает увеличение объема памяти программ и памяти данных. Новые возможности ввода-вывода и периферийных устройств расширяют диапазон применения и снижают общие затраты системы. В зависимости от условий использования, быстродействие системы увеличивается минимум в два с половиной раза и максимум на порядок.
Семейство МК51 включает пять модификаций ОМЭВМ (имеющих идентичные основные характеристики), различающиеся реализацией памяти программ и мощностью энергопотребления.
ОМЭВМ КР1816ВЕ51 и КР1830ВЕ57 содержат масочно-программируемое в процессе изготовления кристалла ПЗУ памяти программ емкостью 4 кбайт и рассчитаны на применение в массовой продукции. За счет использования внешних микросхем памяти общий объем памяти программ может быть расширен до 64 кбайт.
ОМЭВМ КМ1816ВЕ751 содержит ППЗУ емкостью 4 кбайт с УФ стиранием и удобна на этапе разработки системы при отладке программ, а также при производстве небольшими партиями или при создании систем, требующих в процессе эксплуатации периодической подстройки. За счет использования внешних микросхем памяти общий объем памяти программ может быть расширен до 64 кбайт.
ОМЭВМ КР1816ВЕ31 и КР1830ВЕ31 не содержат встроенной памяти программ, однако могут использовать до 64 кбайт внешней постоянной или перепрограммируемой памяти программ и эффективно использоваться в системах, требующих существенно большего по объему (более чем 4 кбайт на кристалле) ПЗУ памяти программ.
Каждая из перечисленных выше микросхем является соответственно аналогом БИС 8051, 80С51, 8751, 8031, 80С31 семейства МСS-51 фирмы Intel (США).
Сравнительные данные микросхем МК51 приведены в таблице 2.
Таблица 2
Микросхемы |
Аналог |
Объем внутр. памяти |
Тип памяти программ |
Объем памяти данных |
Макс. частота след. тактов. сигналов |
Ток потреб-ления |
|
байт |
байт |
МГц |
мА |
||||
КР1826ВЕ31 КР1816ВЕ51 КР1816ВЕ751 КР1830ВЕ31 КР1830ВЕ51 |
8031АН 8051АН 8751Н 80С31ВН 80С51ВН |
НЕТ 4К 4К НЕТ 4К |
ВНЕШН. ПЗУ ППЗУ ВНЕШН. ПЗУ |
128 128 128 128 128 |
12.0 12.0 12.0 12.0 12.0 |
150.0 150.0 220.0 18.0 18.0 |
Каждая ОМЭВМ рассматриваемого семейства содержит встроенное ОЗУ памяти данных емкостью 128 байт с возможностью расширения общего объема оперативной памяти данных до 64 Кбайт за счет использования внешних микросхем ЗУПВ.
Общий объем памяти ОМЭВМ семейства МК51 может достигать 128 Кбайт: 64 Кбайт памяти программ и 64 Кбайт памяти данных.
ОМЭВМ МК51 выполнены на основе высокоуровневой n-МОП-технологии и выпускаются в корпусе типа DIР, имеющем 40 внешних выводов. ОМЭВМ данного семейства содержат следующие основные узлы:
1. центральный 8-разрядный процессор;
2. память программ объемом 4 Кбайт;
3. память данных объемом 128 байт;
4. четыре 8-разрядных программируемых канала ввода-вывода;
5. два 16-битовых многорежимных таймера/счетчика;
6. систему прерываний с пятью векторами и двумя уровнями;
7. последовательный интерфейс;
8. тактовый генератор.
Система команд ОМЭВМ содержит 111 базовых команд с форматом 1,2 или 3 байта.
ОМЭВМ имеет: 32 РОН; 128 определяемых пользователем программно-управляемых флагов; набор регистров специальных функций.
РОН и определяемые пользователем программно-управляемые флаги расположены в адресном пространстве внутреннего ОЗУ данных.
Структурная схема ОМЭВМ представлена на рис.10. Основу структурной схемы МК51 составляет внутренняя двунаправленная 8-битовая шина, которая связывает между собой все основные узлы и устройства: арифметико-логическое устройство (АЛУ), резидентную память, блок регистров специальных функций, устройство управления и порты ввода-вывода.
Устройство управления МК51 на основе сигналов синхронизации формирует машинный цикл фиксированной длительности, равной 12 периодам кварцевого резонатора или шести состояниям первичного управляющего автомата (S1-S6). Каждое состояние управляющего автомата содержит две фазы (Р1, Р2) сигналов резонатора. В фазе Р1, как правило, выполняется операция в АЛУ, а в фазе Р2 осуществляется межрегистровая передача. Весь машинный цикл состоит из 12 фаз, начиная с фазы S1P1 и кончая фазой S6P2.
Арифметико-логическое устройство. 8-битное АЛУ может выполнять арифметические операции сложения, вычитания, умножения и деления, логические операции И, ИЛИ, исключающее ИЛИ, а также операции циклического сдвига, сброса, инвертирования и т.п. В АЛУ имеются программно-недоступные регистры Т1 и Т2, предназначенные для временного хранения операндов, схема десятичной коррекции и схема формирования признаков.
Важной особенностью АЛУ является его способность оперировать не только байтами, но и битами. Отдельные программно-доступные биты могут быть установлены, сброшены, инвертированы, переданы, проверены и использованы в логических операциях. Вследствие этого, МК51 иногда называют "булевским процессором".
Таким образом, АЛУ может оперировать четырьмя типами объектов: булевскими (1 бит), цифровыми (4 бита), байтовыми (8 бит), адресными (16 бит).
Резидентная память. Резидентная память МК51 включает в себя память программ (РПП) и память данных (РПД). РПП и РПД физически и логически разделены, имеют различные механизмы адресации, работают под управлением различных сигналов и выполняют разные функции.
РПП имеет емкость 4Кбайта и предназначена для хранения команд, констант, управляющих слов инициализации и т.п. Она имеет 16-битную шину адреса, по которой обеспечивается доступ из счетчика команд (РС) или из регистра указателя данных (DРЕR). Последний выполняет функции базового регистра при косвенных переходах.
...Подобные документы
Функционально законченное программное управляемое устройство обработки информации, в виде одной или нескольких больших или сверхбольших интегральных схем. Функции микропроцессора Pentium, основные параметры. Технология гиперконвейерной обработки.
учебное пособие [1,1 M], добавлен 09.02.2009Характеристика сущности микропроцессора - программного устройства обработки данных, выполняемого средствами микроэлектронных технологий в корпусе одной или же нескольких больших интегральных схем. Изучение общей структуры микропроцессоров и их видов.
контрольная работа [113,5 K], добавлен 05.09.2010Подключение периферийных устройств к ЭВМ. Синхронизация выполнения программы с внешними процессами. Прерывания. Реализация механизма прерывания в х86. Прямой доступ к памяти. Шины, магистраль PCI. Процесс загрузки компьютера. Клавиатура, системный таймер.
презентация [7,1 M], добавлен 14.12.2013Общее устройство микропроцессора. Структура 64-битной подсистемы памяти. Селекция портов ввода/вывода. Особенности интерфейса микропроцессорных систем. Проектирование подсистемы памяти на базе Itanium 2. Расчёт информативности и необходимых объёмов.
курсовая работа [3,7 M], добавлен 05.12.2012Ассемблер как символический аналог машинного языка. Архитектура микропроцессора: организация памяти, способы адресации операндов, правила использования регистров. Текст программы. Этапы программирования на ассемблере, алгоритмы выполнения задач.
контрольная работа [515,1 K], добавлен 20.01.2016Архитектура микроконтроллеров семейства Mega. Организация памяти. Способы адресации памяти данных. Энергонезависимая память данных. Таблица векторов прерываний. Счетчик команд и выполнение программы. Абсолютный вызов подпрограммы. Сторожевой таймер.
дипломная работа [213,9 K], добавлен 02.04.2009Архитектура ЭВМ и ее основные свойства. Классификационные признаки ЭВМ. Принципы цифрового представления информации, адресности, программного управления. Структура ЭВМ по Джону фон Нейману. Программная модель микропроцессора, классификация процессоров.
презентация [1,0 M], добавлен 09.11.2013Классификация микропроцессоров по числу больших интегральных схем, по назначению и виду обрабатываемых входных сигналов. Устройства, входящие в состав микропроцессора. Составление электронной таблицы "Ведомость расчета амортизационных отчислений".
курсовая работа [27,8 K], добавлен 04.03.2011Основа современной компьютерной техники - микропроцессоры. Увеличение их быстродействия позволяет ставить перед техникой такие задачи, как моделирование сложных процессов, обработка больших объемов информации, обеспечение автономной работы устройств.
курсовая работа [2,6 M], добавлен 08.11.2010Методы расчета, схемотехнического проектирования и конструирования элементов и блоков ЦВМ. Разработка регистра, схемы записи и считывания из оперативной памяти. Применение макроопределений при моделировании устройств и построении принципиальных схем.
курсовая работа [1,1 M], добавлен 12.02.2013Понятия и принцип работы процессора. Устройство центрального процессора. Типы архитектур микропроцессоров. Однокристальные микроконтроллеры. Секционные микропроцессоры. Процессоры цифровой обработки сигналов. Эволюция развития микропроцессоров Intel.
реферат [158,8 K], добавлен 25.06.2015Объем двухпортовой памяти, расположенной на кристалле, для хранения программ и данных в процессорах ADSP-2106x. Метод двойного доступа к памяти. Кэш-команды и конфликты при обращении к данным по шине памяти. Пространство памяти многопроцессорной системы.
реферат [28,1 K], добавлен 13.11.2009Внутренняя архитектура микропроцессора Intel 486. Формат данных и команд. Регистры общего назначения. Программная модель устройства FPU, регистр флагов. Разработка структуры и микропрограммы микропроцессора, управляющего автомата с жесткой логикой.
курсовая работа [1,6 M], добавлен 27.05.2013Функциональная схема микропроцессора Intel 8086 (i8086). Формирование физического адреса памяти, выборка команд из памяти и запись их в очередь команд. Система команд процессора. Суть защищенного режима, переход из защищенного режима в реальный режим.
практическая работа [93,3 K], добавлен 24.03.2013Микропроцессор как универсальное устройство для выполнения программной обработки информации. Функциональные возможности и архитектурные решения. Микроконтроллеры в системах управления и обработки информации. Классификация электронно-вычислительных машин.
курсовая работа [189,6 K], добавлен 12.10.2015Стёковая организация памяти как главная идея языка Форт. Вычислительная модель, лежащая в его основе. Особенности работы со стёком памяти. Константы, переменные и работа с памятью. Организация диалога в Форте. Организация памяти и организация подпрограмм.
курсовая работа [29,9 K], добавлен 29.01.2010Назначение программы, ее пользователи, основные функции и цели, которые преследуются при разработке. Теоретические основы разработки, выбор инструментальных средств. Разработка пользовательского интерфейса. Архитектура программы, основные функции.
курсовая работа [1,1 M], добавлен 04.04.2012Назначение и разновидности постоянных запоминающих устройств (ПЗУ). Конструкция и виды полупроводниковых ПЗУ. История разработки и типы Flash-памяти, ее программирование и структурная организация. Характеристика современных стандартов карт памяти.
презентация [933,6 K], добавлен 11.12.2013Обеспечение непосредственной связи контроллера прямого доступа к памяти (ПДП) и памяти микроЭВМ. Совместное использование шин системного интерфейса процессором и контроллером. Последовательность и алгоритм программирования контроллера прямого доступа.
реферат [122,6 K], добавлен 13.11.2009Внутренний кэш. Смешанная и разделенная кэш-память. Статическая и динамическая память. TLB как разновидность кэш-памяти. Организация кэш-памяти. Отображение секторов ОП в кэш-памяти. Иерархическая модель кэш-памяти. Ассоциативность кэш-памяти.
курсовая работа [229,1 K], добавлен 04.11.2006