Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лекции АВС / Лекция2

.doc
Скачиваний:
27
Добавлен:
20.04.2015
Размер:
123.9 Кб
Скачать

Лекция 2.

Логические основы построения ЭВМ.

Теоретической основой построения ЭВМ является булева алгебра и смежные с ней дисциплины.

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

В этом случае зависимостями (2) можно представить алгоритм работу любого модуля. Каждая такая зависимость является булевой функцией, у которой число возможных значений равно двум и число возможных значений каждого аргумента так же равно двум. В алгебре логики эти значения принято обозначать {0,1}. Алгебра логики позволяет представить любую сложную функцию в виде композиции элементарных функций и обеспечить построение сколь угодно сложных функций из элементарных.

Известно, что количество всевозможных булевых функций N от n аргументов выражается числом (3) . При n=0 можно определить всего две функции, не зависящие ни от каких переменных x : и (выключено, включено).

При n = 1 получим 4 функции:

Y

X

Y0

Y1

Y2

Y3

0

0

1

0

1

1

0

1

1

0

Такие таблицы принято называть таблицами истинности. Первые две функции уже известны: и . Функция y2 = x и (инверсия или отрицание). Эти функции реализуются модулями, которые называют повторителями и инверторами соответственно.

При n = 2 получим 16 различных функций:

X

Y

00

01

10

11

Комментарий

y0

0

0

0

0

y1

0

0

0

1

Логическое умножение - конъюнкция

y2

0

0

1

0

y3

0

0

1

1

y4

0

1

0

0

y5

0

1

0

1

y6

0

1

1

0

Инверсия по отношению к y9

y7

0

1

1

1

Логическое сложение - дизъюнкция

y8

1

0

0

0

Инверсия по отношению к y7. Отрицание дизъюнкции (стрелка Пирса)

y9

1

0

0

1

Логическая равнозначность

y10

1

0

1

0

y11

1

0

1

1

y12

1

1

0

0

y13

1

1

0

1

y14

1

1

1

0

Инверсия по отношению к y1. Отрицание конъюнкции (штрих Шеффера)

y15

1

1

1

1

Функции y6 и y9 являются основой для построения сумматоров двоичных чисел (положительных и отрицательных).

Из перечисленных функций двух переменных можно синтезировать сколь угодно сложные функции. Наиболее часто используется базис из трех функций - инверсия, дизъюнкция и конъюнкция. Синтез сложных функций выполняется в соответствии с законами булевой алгебры.

Техническая реализация логических функций.

Известно, что любую Булеву функцию можно представить, используя набор из трех базисных операций - операция отрицания, операция дизъюнкции и операция конъюнкции. Если для каждой из этих операций найти способ технической реализации, то очевидно. Что может быть создано устройство, автоматически выполняющее операции, заданные булевыми функциями, например операции сложения двоичных чисел. При этом необходимо решить вопрос о носителе информации и условиться, каким способом на носителе будет фиксироваться 0 и 1 - значения булевых переменных и функций.

В процессе поиска наилучшего носителя было исследовано множество вариантов, в том числе экзотических, и эти поиски продолжаются. Например, недавно было объявлено об изобретении молекулярного носителя, где хранение 0 и 1, а так же переход из одного состояния в другое выполняется одной молекулой. (Молекулярный транзистор создан в Канаде в университете Алберта совместными усилиями двух групп - английской руководил Вернер Хофер, канадской - профессор Роберт Волков). Ожидается, что в течение этого десятилетия появятся технические устройства, созданные с использованием молекулярных транзисторов. В настоящее время основным конструктивным материалом для создания элементов ВТ является кремний. Существует целая отрасль промышленности, основной продукцией которой является чистый кремний - слитки и пластины. На этих пластинах методом фотолитографии формируются микропроцессоры и элементы памяти - основные компоненты современных вычислительных устройств.

Проектирование элементов ВТ выполняется в следующей последовательности.

1. Словесное описание работы элемента (что и как он должен выполнять)

2. Формализация словесного описания

3. Определение таблицы истинности и запись функции формального выражения функции

4. Минимизация функции

5. Представление полученных выражений набором базисных функций (в ДНФ или КНФ)

6. Построение схемы устройства

7. Проверка работоспособности полученной схемы.

Пусть задана булева функция

.

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

Для реализации этой функции понадобятся элементы, реализующие функции отрицания, дизъюнкции и конъюнкции:

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

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

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

2. Принципы построения и архитектура ЭВМ.

2.1 Общие принципы построения современных ЭВМ

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

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

Специалистами Гарвардского университета была предложена архитектура, основанная на выделении отдельных блоков памяти для хранения команд и данных. Это решило некоторые проблемы вычисления адресов команд, которые должны быть исполнены процессором.

2. Децентрализация управления. С целью увеличения производительности компьютеров обеспечивается одновременное выполнение многих видов процессов компьютере:

- загрузка внешних данных (например, принятых по модему)

- загрузка в память данных с дисковой памяти

- отображение информации;

- запись данных (выгрузка) в дисковую память

- выполнение команд программы и т.д.

Совмещение этих операций привело к появлению в компьютере нескольких устройств управления исполнительными блоками компьютера. Для согласованной работы всех устройств используется механизм прерываний (аппаратных и программных).

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

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

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

- системная шина

- локальная шина для обмена данными с видеопамятью

- периферийная шина для подключения медленно работающих периферийных устройств, например USB, ISA, PCI.

Принцип иерархии используется и в отдельных модулях компьютера, например. в подсистеме памяти. (Память процессора – несколько регистров, со временем доступа 1 такт процессора, Кеш-память первого уровня L1, 16-32 кб со временем доступа 1-2 такта процессора, Кеш-память второго уровня L2, 128-512 кб со временем доступа 3-5 тактов процессора и даже Кеш-память третьего уровня L3. КЭШ память предназначена для ускорения выборки команд и данных за счет заблаговременной загрузки этих данных в быструю память.

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

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

Неймановскую архитектуру отличают следующие признаки:

- основную роль исполняет процессор, дополненный памятью и каналами обмена информацией.

- линейная организация памяти всех видов.

- одноуровневая адресация памяти, стирающей различия между всеми типами информации (это приводит к необходимости «вычисления» адреса очередной команды, загружаемой в регистры процессора)

- внутренний машинный язык (набор команд процессора)

- последовательное управление вычислениями.

Недостатки этой архитектуры:

- практически исчерпаны структурные методы повышения производительности

- плохо развиты средства обработки нечисловых данных (звук, видео)

- низкая эффективность при решении задач, допускающих параллельные вычисления.

Что касается архитектуры, предложенной Гарвардским университетом, то в ней существенно проще реализован процесс выборки из памяти команд, исполняемых процессором.

Функции программного обеспечения

Модульная иерархическая структура компьютера и необходимость обеспечения взаимодействия всех модулей при вычислениях породила три класса программного обеспечения:

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

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

3. Прикладное (пользовательское) программное обеспечение. Реализованные в программных модулях алгоритмы обработки информации. В общем виде процесс подготовки и решения задач на компьютере предусматривает выполнение следующих этапов:

- формулировка проблемы и ее формализация.

- выбор способа решения и алгоритма решения задачи.

- программирование (запись алгоритма на формализованном языке)

- создание «машинной» программы и ее отладка

- собственно решение задачи – выполнение вычислений по программе.

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

Соседние файлы в папке Лекции АВС