Называется программа, взаимодействующая с процессором с определенным типом внешнего устройства
Обновлено: 21.11.2024
Несмотря на то, что были приложены все усилия для соблюдения правил стиля цитирования, могут быть некоторые расхождения. Если у вас есть какие-либо вопросы, обратитесь к соответствующему руководству по стилю или другим источникам.
Наши редакторы рассмотрят то, что вы отправили, и решат, нужно ли пересматривать статью.
программное обеспечение, инструкции, которые сообщают компьютеру, что делать. Программное обеспечение включает в себя весь набор программ, процедур и подпрограмм, связанных с работой компьютерной системы. Этот термин был придуман, чтобы отличить эти инструкции от оборудования, то есть физических компонентов компьютерной системы. Набор инструкций, предписывающих аппаратному обеспечению компьютера выполнять задачу, называется программой или программным обеспечением.
Двумя основными типами программного обеспечения являются системное программное обеспечение и прикладное программное обеспечение. Системное программное обеспечение управляет внутренним функционированием компьютера, в основном через операционную систему, а также контролирует такие периферийные устройства, как мониторы, принтеры и устройства хранения данных. Прикладное программное обеспечение, напротив, предписывает компьютеру выполнять команды, заданные пользователем, и можно сказать, что оно включает в себя любую программу, которая обрабатывает данные для пользователя. Таким образом, прикладное программное обеспечение включает в себя текстовые процессоры, электронные таблицы, управление базами данных, программы инвентаризации и расчета заработной платы и многие другие «приложения». Третья категория программного обеспечения — это сетевое программное обеспечение, которое координирует обмен данными между компьютерами, связанными в сети.
Компьютеры размещают веб-сайты, состоящие из HTML, и отправляют текстовые сообщения так же просто, как. РЖУ НЕ МОГУ. Взломайте этот тест, и пусть какая-нибудь технология подсчитает ваш результат и раскроет вам его содержание.
Программное обеспечение обычно хранится на внешнем устройстве долговременной памяти, таком как жесткий диск или магнитная дискета. Когда программа используется, компьютер считывает ее с запоминающего устройства и временно помещает инструкции в оперативную память (ОЗУ). Процесс сохранения и последующего выполнения инструкций называется «запуском» или «исполнением» программы. Напротив, программы и процедуры, которые постоянно хранятся в памяти компьютера с использованием технологии только для чтения (ПЗУ), называются прошивкой или «аппаратным программным обеспечением».
Редакторы Британской энциклопедии Эта статья была недавно отредактирована и обновлена Адамом Августином.
Получите полный доступ к Microprocessor Theory and Applications with 68000/68020 and Pentium и более 60 000 других наименований с бесплатной 10-дневной пробной версией O'Reilly.
Есть также прямые онлайн-мероприятия, интерактивный контент, материалы для подготовки к сертификации и многое другое.
В этой главе мы описываем основы методов ввода-вывода (I/O), используемых типичными микропроцессорами. Темы включают запрограммированный ввод-вывод, ввод-вывод с прерыванием и DMA (прямой доступ к памяти).
4.1 Введение
Техника передачи данных между микрокомпьютером и внешним устройством называется вводом/выводом (I/O). Один связывается с микрокомпьютером через интерфейсные устройства ввода-вывода. Пользователь может вводить программы и данные с помощью клавиатуры на терминале и выполнять программы для получения результатов. Следовательно, устройства ввода-вывода, подключенные к микрокомпьютеру, обеспечивают эффективное средство связи между микрокомпьютером и внешним миром. Эти устройства ввода-вывода, обычно называемые периферийными устройствами, включают в себя клавиатуры, мониторы (экраны), принтеры и жесткие диски.
Характеристики устройств ввода-вывода обычно отличаются от характеристик микрокомпьютера. Например, скорость работы периферийных устройств обычно ниже, чем у микрокомпьютера, а разрядность микрокомпьютера может отличаться от формата данных периферийных устройств. Чтобы характеристики устройств ввода-вывода были совместимы с характеристиками микрокомпьютера, необходима аппаратная схема интерфейса между микрокомпьютером и устройствами ввода-вывода. Интерфейсы обеспечивают все входные и выходные передачи между микрокомпьютером и периферийными устройствами с помощью шины ввода-вывода. По шине ввода-вывода передаются три типа сигналов: адрес устройства, данные и команда.
Микропроцессор использует шину ввода-вывода при выполнении.
Познакомьтесь с теорией и приложениями микропроцессоров с процессорами 68000/68020 и Pentium прямо сейчас с онлайн-обучением O’Reilly.
Члены O’Reilly проходят онлайн-обучение в режиме реального времени, а также получают книги, видео и цифровой контент от более чем 200 издателей.
Центральный процессор (ЦП) направляет компьютер на различные этапы решения проблемы.
Связанные термины:
Скачать в формате PDF
Об этой странице
Адаптация и оценка симплексного алгоритма для архитектуры потока данных
Урош Чибей, Юрий Михелич, Достижения в области компьютеров, 2017
2.2 Вид программиста
Чтобы программист мог разработать законченную программу, необходимо написать три компонента.
обычно написанный на языке программирования C, код ЦП управляет выполнением и использует DFE в качестве блока обработки, вызывая подходящие функции, предоставляемые компилятором Maxeler.
Каждое ядро реализует определенную функциональность и примерно соответствует абстракции функции. Он имеет набор входных потоков и набор выходных потоков.
Менеджер — это компонент, который соединяет потоки данных от ЦП к ядрам-получателям и наоборот. Он устанавливает соединения между ядрами и LMem, а также связывает ядра между собой. Диспетчер также создает интерфейсы, с помощью которых код ЦП взаимодействует с DFE.
Диспетчер и ядра написаны на предметно-ориентированном языке MaxJ. Этот язык представляет собой надмножество языка программирования Java с несколькими расширениями, более подходящими для упрощения создания программ потока данных.
Компилятор преобразует описание ядер в граф потока данных, и этот граф физически размещается на микросхеме FPGA серверной частью. Серверная часть обычно очень требовательна к вычислительным ресурсам, поскольку необходимо учитывать множество структурных ограничений.
Схема этой архитектуры представлена на рис. 1.
Рис. 1 . Схематический обзор компонентов системы потока данных. серая рамка обозначает микросхему FPGA. Взгляд программиста на архитектуру показан в виде файлов, которые необходимо реализовать для каждой программы, файл .maxj написан на языке MaxJ, тогда как поток управления обычно написан на C или C++, но поддерживаются и другие языки. .
КОМПЬЮТЕРНЫЙ ДИЗАЙН
Доминик Росато, Дональд Росато, Дизайн изделий из пластмассы, 2003 г.
Центральный процессор
Центральный процессор компьютера (ЦП) — это часть компьютера, которая извлекает и выполняет инструкции. Процессор, по сути, является мозгом CAD-системы. Он состоит из арифметико-логического блока (АЛУ), блока управления и различных регистров. Центральный процессор часто называют просто процессором. АЛУ выполняет арифметические операции, логические операции и связанные с ними операции в соответствии с инструкциями программы.
Блок управления управляет всеми операциями ЦП, включая операции АЛУ, перемещение данных внутри ЦП, а также обмен данными и управляющими сигналами через внешние интерфейсы (системную шину). Регистры — это быстродействующие блоки внутренней памяти ЦП. Некоторые регистры видны пользователю; то есть доступный для программиста через набор машинных инструкций. Другие регистры предназначены исключительно для ЦП в целях управления. Внутренние часы синхронизируют все компоненты ЦП. Тактовая частота (количество тактовых импульсов в секунду) измеряется в мегагерцах (МГц) или миллионах тактовых импульсов в секунду. Тактовая частота, по сути, определяет, насколько быстро ЦП обрабатывает инструкции.
Оборудование
Центральный процессор управляет всем. Он извлекает программные инструкции по своей шине «на стороне инструкций» (IS), считывает данные по своей шине «на стороне данных» (DS), выполняет инструкции и записывает результаты на шину DS. ЦП может работать на частоте SYSCLK до 80 МГц, что означает, что он может выполнять одну инструкцию каждые 12,5 нс. ЦП способен умножать 32-разрядное целое число на 16-разрядное целое число за один цикл или 32-разрядное целое число на 32-разрядное целое число за два цикла. Блока с плавающей запятой (FPU) нет, поэтому вычисления с плавающей запятой выполняются программными алгоритмами, что делает операции с плавающей запятой намного медленнее, чем вычисления с целыми числами.
ЦП представляет собой ядро микропроцессора MIPS32® M4K®, лицензированное компанией Imagination Technologies. ЦП работает при напряжении 1,8 В (обеспечиваемом стабилизатором напряжения, встроенным в PIC32, поскольку он используется на плате NU32). Контроллер прерываний, обсуждаемый ниже, может уведомлять ЦП о внешних событиях.
Встроенные процессоры
Внутренние шины ЦП
Шины ЦП — это механизмы, соединяющие другие компоненты ЦП: АЛУ, ЦП и регистры (см. рис. 4-22). Шины — это просто провода, которые соединяют между собой различные другие компоненты ЦП.Провод каждой шины обычно делится на логические функции, такие как данные (которые переносят данные в двух направлениях между регистрами и АЛУ), адрес (который переносит расположение регистров, содержащих данные для передачи), управление (переносит управление информацию о сигналах, такую как временные и управляющие сигналы, между регистрами, ALU и CU) и т. д.
Рисунок 4-22. Ядро и шины PowerPC. [15]
В ядре PowerPC есть управляющая шина, по которой управляющие сигналы передаются между АЛУ, CU и регистрами. То, что PowerPC называет «исходными шинами», — это шины данных, передающие данные между регистрами и АЛУ. Существует дополнительная шина, называемая обратной записью, которая предназначена для обратной записи данных, полученных с исходной шины, непосредственно обратно из модуля загрузки/сохранения в фиксированные регистры или регистры с плавающей запятой.
Примечание. Во избежание дублирования автобусы будут более подробно обсуждаться в главе 7 .
Микрокомпьютерная аппаратура и управление
Чтение/запись памяти
ЦП всегда контролирует направление потока данных в базе данных, поскольку, хотя он и является двунаправленным, данные могут перемещаться только в одном направлении за раз. ЦП выдает специальный сигнал управления чтением/записью (R/W) (рис. 3.2), который активирует схемы в памяти, определяющие направление потока данных. Например, когда линия чтения/записи (R/W) имеет высокий уровень, ЦП передает информацию из ячейки памяти в ЦП.
Временная диаграмма операции чтения из памяти показана на рис. 3.3.
Рис. 3.3. Время чтения/записи.
Предположим, что компьютеру была дана инструкция прочитать данные из ячейки памяти номер 10. Чтобы выполнить операцию чтения, ЦП переводит линию чтения/записи в высокий уровень, чтобы активировать схему памяти при подготовке к операции чтения. Практически одновременно на АБ размещается адрес для местоположения 10 («адрес действителен» на рис. 3.3). В память АБ отправляется число 10 в 16-битном двоичном коде (0000 0000 0000 1010). Двоичные электрические сигналы, соответствующие 10, управляют определенными цепями в памяти, чтобы заставить двоичные данные в этом месте быть помещенными в БД. ЦП имеет внутренний регистр, который активируется во время этой операции чтения для приема и сохранения данных. Затем данные обрабатываются ЦП во время следующего цикла работы в соответствии с соответствующей инструкцией.
Аналогичная операция выполняется всякий раз, когда ЦП должен отправить данные из одного из своих внутренних регистров в память, что является операцией «записи». В этом случае линия R/W будет установлена на логический уровень, противоположный операции чтения (т.е. низкий в данном примере). Во время операции записи отправляемые данные помещаются в БД одновременно с адресом назначения в АВ. Эта операция перенесет данные из источника ЦП в место назначения, которым может быть место в памяти в ОЗУ или внешнее устройство (как будет объяснено позже).
Компьютерные системы
1.3.1 Работа системы
ЦП управляет передачей системных данных по шинам данных и адреса и дополнительным линиям управления. Требуется схема часов, обычно содержащая кварцевый генератор (как в цифровых часах); это создает точный сигнал фиксированной частоты, который управляет микропроцессором. Операции ЦП запускаются по переднему и заднему фронтам тактового сигнала, что позволяет определить их точную синхронизацию. Это позволяет событиям в ЦП выполняться в правильной последовательности с достаточным временем для каждого шага. Центральный процессор генерирует все основные управляющие сигналы на основе часов. Тот или иной ЦП можно использовать в различных системах, в зависимости от типа приложения, необходимого объема памяти, требований к вводу-выводу и т. д.
Декодер адреса управляет доступом к памяти и регистрам ввода-вывода для конкретного проекта. Как правило, программируемое логическое устройство (PLD) используется для выделения каждой микросхеме памяти определенного диапазона адресов. Код входного адреса в определенном диапазоне генерирует выходной сигнал выбора микросхемы, который включает это устройство. Регистры портов ввода-вывода, которые настроены для обработки передачи данных в систему и из нее, также получают определенные адреса с помощью того же механизма, и ЦП обращается к ним так же, как к ячейкам памяти. Назначение адресов конкретным периферийным устройствам называется картой памяти (рис. 1.6 б).
Процессор
ХАРВИ М. ДЕЙТЕЛЬ, БАРБАРА ДЕЙТЕЛЬ, Введение в обработку информации, 1986 г.
Сводка издателя
Центральный процессор (ЦП) направляет компьютер на различные этапы решения проблемы.Данные поступают в компьютер через блок ввода, обрабатываются центральным процессором и затем становятся доступными для пользователя через блок вывода. Логический вид компьютера показывает, какие функции выполняет компьютер. Физический вид компьютера показывает, как на самом деле механизмы компьютера выполняют эти функции. Центральный процессор состоит из трех логических блоков: арифметико-логического блока (ALU), основного хранилища и блока управления. Основная память сохраняет активные программы и данные. Это относительно дорого, поэтому вторичное хранилище используется для хранения программ и данных до тех пор, пока они не потребуются в основном хранилище. Набор встроенных операций компьютера называется его «набором инструкций». Компьютерная программа представляет собой набор инструкций, которые сообщают компьютеру, как решить конкретную задачу. Компьютерная программа должна находиться в оперативной памяти, чтобы компьютер мог выполнять ее инструкции.
Управление энергопотреблением
5.15.2.4.2.1 Блок процессора
Это центральный процессор (ЦП) ПЛК, то есть микропроцессор по конструкции и функциональным возможностям. Основная функция этого блока состоит в том, чтобы воспринимать входные значения через свои модули ввода/вывода, генерировать управляющие сигналы в соответствии с входными сигналами и предопределенной инструкцией (хранящейся в блоке памяти в виде программы). Затем обработанное решение передается на устройства вывода, подключенные к модулям ввода/вывода, для обновления выходных переменных [51]. Типичный цикл процесса ЦП показан на рис. 40, демонстрирующем основную идею функции процесса. Время одного цикла выполнения программы называется «время сканирования». Типичные значения времени сканирования могут составлять всего 1 м/с. Входные и выходные значения обычно хранятся в единице памяти за цикл или несколько его кратных [53] .
Рис. 40 . Рабочий цикл центрального процессора (ЦП) программируемого логического контроллера (ПЛК).
Беспроводная МЭМС для носимых сенсорных сетей
5.2.2.2 Блок обработки
Рабочие процедуры промышленной системы управления
(1) адресные пространства PCI
ЦП и все устройства PCI должны иметь доступ к общей памяти. Драйверы устройств управляют устройствами PCI и передают информацию между ними, используя эту память. Как правило, эта разделяемая память содержит регистры управления и состояния устройства, которые используются для управления устройством и чтения его состояния. Например, драйвер устройства PCI SCSI может прочитать свой регистр состояния, чтобы узнать, готово ли устройство к записи блока информации, или он может записать в управляющий регистр, чтобы запустить устройство после его включения.
Системная память ЦП может использоваться для этой общей памяти, но в этом случае каждый раз, когда устройство PCI обращается к памяти, ЦП должен будет останавливаться, ожидая завершения. Доступ к памяти обычно ограничивается одним системным компонентом за раз. Это замедлит работу системы. Это не позволяет периферийным устройствам системы бесконтрольно обращаться к основной памяти. Это было бы очень опасно; неисправное устройство может сделать систему очень нестабильной.
Периферийные устройства имеют собственные области памяти. ЦП может получить доступ к этим пространствам, но доступ устройств к системной памяти очень строго контролируется с помощью каналов DMA (прямой доступ к памяти). Устройства ISA имеют доступ к двум адресным пространствам; ISA I/O (ввод/вывод) и память ISA. В большинстве современных микропроцессоров PCI должен состоять из трех элементов: ввода-вывода PCI, памяти PCI и пространства конфигурации PCI.
Некоторые микропроцессоры, например процессор Alpha AXP, не имеют естественного доступа к адресным пространствам, отличным от системного адресного пространства. Этот процессор использует наборы микросхем поддержки для доступа к другим адресным пространствам, таким как пространство конфигурации PCI, с помощью схемы разреженного отображения адресов, которая крадет часть большого виртуального адресного пространства и сопоставляет его с адресными пространствами PCI.
В микропроцессорной системе или микроконтроллере один процессорный блок отвечает за ввод, вывод, вычисления и управление.
Связанные термины:
Скачать в формате PDF
Об этой странице
Компьютерные системы
Микропроцессорная система состоит из устройств ввода, хранения, обработки и вывода данных под управлением ЦП.
Основным блоком настольного ПК является модульная система, состоящая из материнской платы, блока питания и дисководов.
На материнской плате установлен микропроцессор (ЦП), ОЗУ, ПЗУ BIOS, контроллеры шины и интерфейсы ввода-вывода.
ЦП взаимодействует с основными системными микросхемами через общий набор линий адресной шины и шины данных.
Микроконтроллер обеспечивает большинство функций обычной микропроцессорной системы на одном кристалле.
Вычислительные платформы
4.3.3 Конфигурации системной шины
Микропроцессорная система часто имеет более одной шины. Как показано на рисунке 4.14, высокоскоростные устройства могут быть подключены к высокопроизводительной шине, в то время как низкоскоростные устройства подключены к другой шине. Небольшой логический блок, известный как мост, позволяет шинам соединяться друг с другом. Для этого есть три причины:
Шины с более высокой скоростью могут обеспечивать более широкое подключение для передачи данных.
Для высокоскоростной шины обычно требуются более дорогие схемы и разъемы. Стоимость низкоскоростных устройств можно снизить, используя более низкую скорость и более дешевую шину.
Мост может позволить шинам работать независимо, тем самым обеспечивая некоторый параллелизм в операциях ввода-вывода.
Рисунок 4.14. Система с несколькими шинами.
Автобусные мосты
Давайте рассмотрим работу шинного моста между быстрой и медленной шинами, как показано на рис. 4.15. Мост является ведомым на быстрой шине и хозяином на медленной. Мост принимает команды от быстрой шины, на которой он является ведомым, и выдает эти команды на медленную шину. Он также возвращает результаты с медленной шины на быструю, например, возвращает результаты чтения с медленной шины на быструю.
Рисунок 4.15. UML-диаграмма состояния работы шинного моста.
Верхняя последовательность состояний обрабатывает запись с быстрой шины на медленную. Эти состояния должны считывать данные с быстрой шины и устанавливать рукопожатие для медленной шины. Операции на быстрой и медленной сторонах шинного моста должны максимально перекрываться, чтобы уменьшить задержку при передаче данных между шинами. Точно так же нижняя последовательность состояний считывает данные с медленной шины и записывает данные на быструю шину.
Мост также служит транслятором протокола между двумя мостами. Если мосты очень близки по работе протокола и скорости, может быть достаточно простого конечного автомата. Если существуют большие различия в протоколе и времени между двумя шинами, мосту может потребоваться использовать регистры для временного хранения некоторых значений данных.
Шина ARM
Поскольку ЦП ARM производится разными поставщиками, шина, предоставляемая вне чипа, может варьироваться от чипа к чипу. ARM создала отдельную спецификацию шины для однокристальных систем. Шина AMBA [ARM99A] поддерживает ЦП, память и периферийные устройства, интегрированные в систему на кремнии. Как показано на рис. 4.16, спецификация AMBA включает две шины. Высокопроизводительная шина AMBA (AHB) оптимизирована для высокоскоростной передачи и напрямую подключена к ЦП. Он поддерживает несколько высокопроизводительных функций: конвейерную обработку, пакетную передачу, разделенные транзакции и несколько мастеров шины.
Рисунок 4.16. Элементы шинной системы ARM AMBA.
Для подключения AHB к шине периферийных устройств AMBA (APB) можно использовать мост. Эта шина спроектирована так, чтобы быть простой и легкой в реализации; он также потребляет относительно мало энергии. APB предполагает, что все периферийные устройства работают как ведомые, что упрощает логику, необходимую как для периферийных устройств, так и для контроллера шины. Он также не выполняет конвейерные операции, что упрощает логику шины.
Микрокомпьютерные шины и ссылки
Простые двухточечные переводы I.B
Все микропроцессорные системы имеют сильную иерархическую зависимость. Процессор (мастер) считывает и записывает информацию с каждым устройством, которое не может общаться напрямую. Для простого цикла записи (рис. 2а) требуется набор линий данных Di для информации (например, 8, 16 или 32 бита) и одна линия для синхронизации (строб записи WRS). Минимальное время установки tс и время хранения tч данных по отношению к WRS, а также время записи tw, зависит от технологии и статического или динамического (запускаемого фронтом) характера элементов хранения.
РИСУНОК 2. Простые циклы.
Для цикла чтения в ответ на запрос (чтение строба RDS) новые данные доступны с временем доступа ta (рис. 2b). Обычно коммуникационная шина находится в нейтральном неактивном состоянии, пока выбор не был выполнен, и можно определить время активации ton и время отключения твыкл.
Процессоры выполняют циклы чтения и записи. Линии данных Di могут быть мультиплексированы, если выходы имеют три состояния, когда они не выбраны. Две отдельные линии WRS и RDS, которые никогда не активируются одновременно, могут управлять передачей (рис. 2c). Этому решению отдают предпочтение несколько производителей, и оно использовалось, например, на ранней шине IBM-PC. Другим решением является наличие одной стробирующей линии ST и линии направления RD ― /WR (рис. 2г).Когда RD ― / WR активен, импульс на линии ST запускает передачу записи от ведущего к ведомому; в противном случае это цикл чтения.
Все эти циклы называются синхронными, поскольку цикл передачи выполняется за заданный промежуток времени, зависящий от продолжительности строба. Если ведомое устройство работает слишком медленно, данные могут быть потеряны; нужен сигнал обратной связи. Первое решение состоит в том, чтобы активировать сигнал только тогда, когда цикл необходимо замедлить (сигнал ОЖИДАНИЕ, рис. 3а). Лучшим решением, используемым на всех 32-битных микропроцессорах, является ожидание положительного подтверждения AK в ответ на строб ST (рис. 3b). Если ведомое устройство не может предоставить информацию, должно быть сгенерировано отрицательное подтверждение NK (часто называемая ошибка шины) либо ведомым устройством, либо специальной схемой. Сигналы на рис. 3 и 4 - активный высокий уровень. Они часто инвертируются (активный низкий уровень) по электрическим причинам.
РИСУНОК 3. Асинхронные (рукопожатные) протоколы.
РИСУНОК 4. Адресные переводы.
Оборудование PIC
1.1.1 Процессор
В микропроцессорной системе или микроконтроллере один блок процессора отвечает за ввод, вывод, вычисления и управление. Он не может работать без программы, списка инструкций, который хранится в памяти. Программа состоит из последовательности двоичных кодов, которые ЦП извлекает из памяти и выполняет по очереди (рис. 1.2). Процесс управляется схемой кварцевых часов, создающей фиксированную частоту, которая определяет скорость системы.
Рисунок 1.2. Выполнение микропроцессорной программы.
Инструкции хранятся в пронумерованных ячейках памяти и копируются в регистр команд ЦП через шину данных. Здесь инструкция управляет выбором требуемой операции в блоке управления процессора. Программные коды находятся в памяти процессором путем вывода номера адреса инструкции на адресную шину. Адрес генерируется в программном счетчике, регистре, который начинается с нуля и увеличивается или изменяется в течение каждого командного цикла. Шины представляют собой параллельные соединения, которые передают адрес или слово данных за одну операцию. Для помощи в этом процессе также необходим набор линий управления от ЦП; они настраиваются в соответствии с требованиями текущей инструкции и запускают схемы передачи данных для вывода и приема данных в соответствующее время. В обычной микропроцессорной системе соединения шины состоят из параллельных дорожек на материнской плате, но находятся внутри микросхемы микроконтроллера.
Декодирование инструкции — это аппаратный процесс, использующий блок логических вентилей для настройки линий управления процессорного блока и для получения «операндов» инструкции. Операнды — это данные, с которыми нужно работать (или информация о том, где их найти), которые следуют большинству инструкций. Как правило, над операндами выполняется вычисление или логическая операция, а результат сохраняется в памяти или устанавливается действие ввода-вывода. Каждая полная инструкция может состоять из одного, двух или более байтов, включая сам код операции (инструкции) (код операции) и операнд/ы (один байт = 8 бит).
Например, сравните текстовый процессор и игровое приложение. В текстовом процессоре нажатия клавиш считываются через порт ввода клавиатуры, сохраняются в виде кодов символов в памяти и отправляются на порт вывода экрана для отображения. В компьютерной игре входные сигналы с панели управления обрабатываются и используются для изменения графики на экране. Графика в основном генерируется путем сопоставления блока памяти с экраном, где цвет одного пикселя управляется определенным словом данных. Текстовый процессор требует гораздо меньше памяти, а графическая память должна быть большой и быстрой.
Обработка данных
5.7.1 Аппаратное обеспечение системы памяти
Обычная микропроцессорная система содержит отдельные микросхемы ЦП и памяти. Подобное расположение можно использовать, если нам нужна дополнительная память в системе PIC и нет недостатка в выводах ввода-вывода. Схема системы показана на рисунке 5.5 на основе PIC 16F877A. Для расширения памяти до 64 Кбайт используется пара традиционных чипов ОЗУ по 32 КБ. Часы и соединения для программирования не включены в схему, так как они не нужны для моделирования, но должны быть добавлены в любую аппаратную реализацию.
Рисунок 5.5. Параллельная система памяти.
Каждая микросхема ОЗУ имеет восемь контактов ввода-вывода данных (D0–D7) и пятнадцать адресных контактов (A0–A14), поэтому каждая ячейка содержит 8 бит, и всего 2 15 = 32 768 ячеек. Чтобы выбрать чип для доступа, вывод Chip Enable (!CE) должен иметь низкий уровень. Для записи местоположения предоставляется адресный код, данные представлены в D0–D7, а кнопка Write Enable (!WE) пульсирует низко. Для чтения данных активируется выходной сигнал (!OE) (низкий уровень) в дополнение к разрешению чипа, после чего данные по адресу могут быть считаны обратно.
В демонстрационном проекте VSM (PARMEM2) порт C используется в качестве шины данных, а порт D — в качестве адресной шины. Чтобы уменьшить количество контактов ввода-вывода, необходимых для адресации внешней памяти, адресные защелки (U3 и U5) используются для хранения старшего байта 15-битного адреса (D7 не используется).
Две микросхемы памяти в тестовой системе выбираются поочередно с помощью декодера адреса путем переключения RB2. Это позволяет реализовать в прошивке различные схемы памяти, где микросхемы могут использоваться по одной или вместе для хранения 16-битных данных. Таким образом, память может быть организована как 64k×8 байт или 32k×16-битных слов. В тестовой программе доступ ко всем адресам осуществляется по очереди путем увеличения младшего адреса с 00 до FF для каждого старшего адреса (выбор страницы памяти) и использования одного и того же адреса для одновременной записи и чтения соответствующих адресов в обоих чипах. р>
Этот тип работы системы шин, когда выходы микросхем памяти подключены к одним и тем же линиям данных (порт C), зависит от наличия буферов с тремя состояниями на выходе микросхем ОЗУ, управляемых разрешающими входами. . Их можно переключить, чтобы разрешить ввод данных (!CE и !WE=низкий уровень), вывод данных (!CE и !OE=низкий уровень) или отключить (!CE и !OE=высокий уровень). В отключенном состоянии выходы ОЗУ фактически отключены от шины данных. Одновременно должен быть включен только один чип RAM, в противном случае на шине возникнет конкуренция, когда разные байты данных будут пытаться использовать шину одновременно.
Микропроцессоры, калькуляторы и компьютеры
Автобусы
Шины микропроцессорной системы, как было показано ранее, состоят из линий, которые подключены к каждой части системы, так что сигналы доступны на многих микросхемах одновременно и могут передаваться между любой парой микросхем. Тремя основными шинами являются адресная шина, шина данных и шина управления. Поскольку понимание работы шины жизненно важно для понимания работы любой микропроцессорной системы, мы сосредоточимся на каждой шине по очереди, начиная с адресной шины.
Определение
Адресная шина состоит из линий, соединяющих адресные контакты микропроцессора и адресные контакты каждой микросхемы памяти в микропроцессорной системе. В любой системе, кроме очень простой, адресная шина будет подключаться и к другим устройствам, но на данный момент мы проигнорируем эти другие соединения.
Для современных компьютеров память не устанавливается отдельными микросхемами. Чипы собраны в блоки, называемые модулями памяти с двойным расположением выводов (DIMM), которые используют стандартное штекерное соединение. Из-за быстрого развития конструкции памяти эти модули DIMM выпускаются во многих версиях, поэтому при выборе памяти требуется большая осторожность, и если вы хотите обновить память в компьютере, вам следует свериться с таблицами, предоставленными дистрибьюторами, такими как Crucial или Kingston. . На момент написания статьи используемый в настоящее время тип модуля DIMM помечен как DDR3, а для платы DIMM требуется 240-контактный держатель.
При каждом из 65 536 возможных адресных номеров 16-битной системы каждая микросхема памяти будет давать доступ к 1 биту, и этот доступ обеспечивается через линии шины данных. Комбинация адресной шины и шины данных обеспечивает адресацию и поток данных, но для определения направления данных требуется еще одна линия.
Эта дополнительная линия является линией чтения/записи, одной из линий шины управления (некоторые микропроцессоры используют отдельные выходы для чтения и записи). Когда линия чтения/записи находится на одном логическом уровне, сигнал на каждой микросхеме памяти разрешает все соединения со входами блоков памяти, так что память записывается любыми битами, присутствующими на линиях данных. Если сигнал чтения/записи изменяется на противоположный логический уровень, то внутренний вентиль в микросхемах памяти подключается к выходу каждой ячейки памяти, а не к входу, в результате чего логический уровень ячейки влияет на линию данных (размещение битов на строки данных). Кроме того, обычно имеется одна или несколько строк включения/выключения, чтобы память можно было отключить, когда адресация используется для других целей.
Обзор
Микросхемы памяти подключены к линиям шины, и, поскольку микросхема довольно часто хранит данные в 1-битных блоках, может потребоваться одна микросхема памяти для каждого бита полного байта. В современных компьютерах микросхемы собраны в модули DIMM, которые можно легко подключить к компьютеру. В дополнение к линиям адреса и данных память должна использовать сигналы чтения/записи для определения направления потока данных, а также сигналы включения/отключения, позволяющие изолировать всю память, когда адресная шина используется для других целей.< /p>
На практике микросхемы динамической памяти используют несколько иную систему адресации: каждый адрес состоит из номера столбца и номера строки. Это сделано для того, чтобы упростить обновление, и номера адресов на адресной шине должны быть преобразованы в этот формат с помощью микросхемы диспетчера памяти. Это не влияет на достоверность описания использования памяти в этой главе.
Рисунок 13.3. Подключение простого микропроцессора к микросхеме ПЗУ 8К
Рисунок 13.4. Подключение 16 КБ ОЗУ и 16 КБ ПЗУ, чтобы каждый блок памяти мог использовать разные номера адресов
Нижние 14 адресных линий, от A0 до A13, подключены к обоим наборам микросхем, представленных здесь отдельными блоками. Линия A14, однако, подключена к контактам включения микросхемы, которые, как следует из названия, включают или отключают микросхемы. В течение первых 16 КБ адресов линия A14 имеет низкий уровень, поэтому ПЗУ включено (представляя, что контакт включения активен при низком уровне), а ОЗУ отключено. Для следующих 16К адресов в строках от A0 до A13 строка A14 имеет высокий уровень, поэтому ПЗУ отключено, а ОЗУ включено. Это позволяет одним и тем же 14 адресным линиям осуществлять адресацию как ПЗУ, так и ОЗУ. Такая простая схема возможна только тогда, когда и ПЗУ, и ОЗУ занимают одинаковый объем памяти и требуют одинакового количества адресных строк.
Обзор
Читайте также: