Разработка и описание структурной схемы ЭВМ
Обобщенная структурная схема ЭВМ. Микропрограммное устройство управления и операционный блок. Основная память, система прерываний, синхронизация, периферийные устройства. Внешние ЗУ, таймер и разработка принципиальной схемы УУ, включая систему прерываний.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 27.04.2014 |
Размер файла | 430,0 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Министерство образования и науки Российской Федерации
Федеральное агентство по образованию
Государственное образовательное учреждение
Высшего профессионального образования
Новосибирский Государственный Технический Университет
Кафедра вычислительной техники
Курсовой проект
по дисциплине “Организация ЭВМ”
Группа: АВТ-010
Выполнил: Соловьев Д.А.
Проверил:Гребенников В.Ф.
Новосибирск, 2014 г.
Содержание
- Введение
- 1. Задание
- 1.1 Общие исходные данные
- 1.2 Индивидуальные данные
- 2. Разработка и описание структурной схемы ЭВМ
- 2.1 Обобщенная структурная схема ЭВМ
- 2.2 Разработка структурной схемы ЦП
- 2.2.1 Микропрограммное устройство управления
- 2.2.1 Операционный блок
- 2.3 Основная память
- 2.4 Система прерываний
- 2.5 Блок синхронизации
- 2.6 Контроль ОП по Хеммингу
- 2.7 Периферийные устройства
- 2.7.1 Устройства ввода/вывода
- 2.7.2 Внешние ЗУ
- 2.8 Система ввода/вывода
- 2.9 Таймер
- 3. Разработка принципиальной схемы УУ, включая систему прерываний
- Заключение
- Список литературы
Введение
Целью курсового проектирования является углубление и закрепление теоретических знаний, приобретение навыков разработки узлов ЭВМ на структурном, функциональном и алгоритмическом уровнях.
Курсовой проект посвящен разработке структурной схемы гипотетической ЭВМ и принципиальной схемы, указанного в задании, блока, входящего в состав этой ЭВМ.
1. Задание
1.1 Общие исходные данные
§ В состав ЭВМ входят следующие блоки:
o центральное процессорное устройство (ЦПУ);
o оперативная память (ОП);
o система прерывания программ (СПП);
o система ввода-вывода (СВВ);
o блок синхронизации (БС);
o таймер;
o монитор, клавиатура, мышь.
o жесткий диск
§ Основные параметры ЭВМ:
o адресность ЭВМ: двухадресная;
o длина команды - переменная.
§ Разрядность ЭВМ и минимальный объем оперативной памяти:
o разрядность - 32;
o ёмкость ОП - не менее 128Мбайт.
1.2 Индивидуальные данные
· Структура ЭВМ - двухшинная.
· Сопроцессор - параллельный умножитель.
· Система прерываний - цепочечная на уровне команд.
· Кэш: кэш команд и данных, буфер TLB.
· Оперативная память - страничная.
· Ввод/вывод - по прерыванию.
· Контроль ввода-вывода-по паритету.
Разрабатываемый блок: кэш команд.
2. Разработка и описание структурной схемы ЭВМ
Проектирование структуры заключается в определении состава ЭВМ и способов взаимодействия, содержащихся в ней устройств.
2.1 Обобщенная структурная схема ЭВМ
ЭВМ с хранимой программой может быть определена как машина, обрабатывающая данные в соответствии с заранее определенными правилами (инструкциями), при этом программа (набор инструкций) и данные находятся в памяти машины (рис. 1).
Для загрузки программы и данных в память, а также для вывода результатов обработки из памяти необходим какой-либо способ связи с внешними объектами. Этой цели служат устройства ввода-вывода (рис. 1).
При каждом обращении к памяти по определенному адресу центральный процессор (ЦП), как правило, выполняет операцию чтения или записи одного слова памяти [1].
Периферийные устройства (ПУ) присоединяются с помощью блоков управления (контроллеров) периферийными устройствами, осуществляющих согласование форматов данных, используемых в ПУ с форматом принятом для передачи по общей шине. Последний (формат данных) обычно соответствует машинному слову процессора и/или информационной ширине магистрали. микропрограммный операционный таймер синхронизация
Согласно заданию, ЭВМ построена на основе общей шины. В данном случае все устройства вычислительной машины подключены к магистральной шине, служащей единственным трактом для потоков команд, данных и управления (рис.1). Наличие общей шины позволяет легко менять состав и конфигурацию машины. Благодаря этим свойствам шинная архитектура получила широкое распространение в мини и микро ЭВМ. Вместе с тем, именно с шиной связан и основной недостаток архитектуры: в каждый момент передавать информацию по шине может только одно устройство. Основную нагрузку на шину создают обмены между процессором и памятью, связанные с извлечением из памяти команд и данных и записью в память результатов вычислений.
Ниже представлена структурная схема ЭВМ. Особенностью данной ЭВМ является ее двухшинная организация (по заданию). Шины данных и адреса объединены, поэтому адрес и данные могут передаваться только в разное время (например данные по фронту синхросигнала, а адрес по срезу).
Примечание к рис.1:
AB/DB - шина для передачи данных и адреса, разрядность равна принятой разрядности в данной ЭВМ (32 разряда).
CB - группа линий управления, включающая (основные линии):
SYNC - синхронизация;
DIN - строб входной информации;
DOUT - строб выходной информации;
BS7 - выбор периферийного устройства;
RPLY - ответ;
Управление прерываниями:
INTR - линия запроса на прерывание
INTA - линия разрешения прерывания
2.2 Разработка структурной схемы ЦП
При создании структурной схемы ЦП поможет понимание принципа микропрограммного управления, который заключается в хранении управляющих слов, выполняющих элементарные действия в течении цикла, и выборки их с помощью секвенсора (SEQ).
Таким образом, МУУ хранит в микропрограммной памяти (МПП) и выбирает управляющие слова (т.е. МК) из МПП, передаёт их в качестве управляющих слов ОБ и другим устройствам (например, блоку синхронизации). Принимая управляющие слова, устройствами выполняются соответствующие инструкции.
Работа с ОП осуществляется через ОБ. ОБ вычисляет адрес ячейки для чтения/записи и принимает/передаёт данные из/в ОП. ОБ может принимать/передавать данные не только из/в ОП, но и с/в внешних устройств.
2.2.1 Микропрограммное устройство управления
Устройство управления реализует управления ходом вычислительного процесса, обеспечивая автоматическое выполнение команд программы. Процесс выполнения программы в ВМ представляет собой последовательность машинных циклов.
Этапы цикла:
1. Выборка команды из памяти
2. Формирование адреса следующей команды
3. Формирование исполнительного адреса операндов
4. Выборка операндов
5. Исполнение операции
На рис. 2 представлена обобщенная структура УУ
Рис. 2 Обобщенная структура устройства управления
Выбрано микропрограммное УУ. Отличием его от УУ на МПА жесткой логикой в том, что в нем хранение микрокоманд осуществляется в виде кодов в специализированном запоминающем устройстве - памяти микропрограмм. Каждой команде ВМ в этом ЗУ в явной форме соответствует микропрограмма. Достоинство - возможность перепрограммирования, дешевизна. Недостаток - относительно низкое быстродействие
Рис. 3 Микропрограммный автомат с программируемой логикой.
Код операции из регистра команд поступает на ПНА. Преобразованный адрес с ПНА идет на секвенсор. Секвенсор выбирает источник адреса и выдает его на вход МПП. На выходах последней появляется микрокоманда и фиксируется в регистре микрокоманд. В момент, когда микрокоманда начинает выполняться, секвенсор формирует адрес следующей микрокоманды.
ПВА - преобразователь вектора адреса (блок управления прерываниями). При обработке внешних прерывания на уровне микрокоманд, данное устройство получает на свой вход вектор прерывания, который нужно передать в МПП для выбора там микропрограммы прерывания (её адрес содержится в векторе). Поэтому нужно сначала перевести выходы секвенсора в третье состояние - этим также занимается ПВА.
На границе инструкций контроллер прерываний при активном INT выдает инструкцию вызова прерываний. Далее выполняется микропроцедура обработки прерывания, которая сохраняет словосостояние процессора и активирует INTA, получат вектор процессора, выполняет обработчик.
2.2.2 Арифметический сопроцессор
(АС), представленный 32-разрядным параллельным умножителем Am29C323, служит для быстрого (ускоренного) выполнения операции умножения. АС получает операнды по локальной шине данных процессора, как из регистра входных данных, так и из регистрового файла. Взаимодействие микропроцессора и сопроцессора осуществляется по схеме последовательного выполнения операций, т. е. пока работает сопроцессор, то основной процессор ждет. Фактически арифметический сопроцессор является составной частью ОБ, т.к. и умножитель, и МПС управляются одним МУУ.
Для выполнения умножения необходимо загрузить во входные регистры умножителя операнды из шины данных (через регистр входных данных) либо из регистрового файла. После выполнения умножения полученное произведение из внутренних выходных регистров умножителя подается на вход регистра выходных данных, для последующей передачи на шину данных, либо сохраняется в РОН.
2.2.1 Операционный блок
(ОБ) с помощью АЛУ, которая в нем содержится, выполняет арифметические и логические операции над поданными на вход операндами. Выбор конкретной операции из всех возможных для данного ОБ определяется кодом операции команды.
Состав ОБ:
· АЛУ Am29332 (32-разрядный)
· Регистровый файл Am29334 (2х16-разрядный)
· Входной регистр данных
· Выходной регистр данных и адреса
Рис. 4. Структурная схема процессора
2.3 Основная память
Основная память (ОП) ЭВМ должна содержать:
- оперативную (ОЗУ) память для временного хранения данных;
- постоянную (ПЗУ) память для неизменяемых и энергонезависимых данных: хранение программы начальной инициализации системы, каких-либо констант и т.п.
Соответственно для управления выбором типа памяти (дешифратор выбора типа памяти), управлением чтением/записью, а также управление выводом данных в общую шину в структуру ОП необходимо ввести контроллер ОП. В данной структуре основными сигналами управления памятью есть сигналы:- чтение / запись; - разрешение вывода данных на общую шину и сигнал разрешения работы памяти .
При разработке структурной схемы памяти необходимо учесть, что сигнал - необходим только для блока ОЗУ, т.к. при выборе блока ПЗУ операции по записи данных не возможны.
В соответствии с заданием в структурную схему добавляется один из типов КЭШа, называемый буфером быстрого преобразования адреса (TLB). Он сохраняет преобразованные адреса, которые получились в результате трансляции виртуального адреса в физический. Вероятность нахождения адреса в буфере близка к 99%. Такая буферизация очень выгодна, так как если центральный процессор не найдет адрес в TLB, то ему придется вычислять этот адрес. Для разрешения одного адреса процессор должен выполнить три такта. Умножив три такта на число адресов, к которым процессор должен обратиться, становится ясно, почему вычисление адресов существенно замедляет процессор. Если же адрес будет существовать в TLB, то он будет разрешен за один такт. Таким образом, использование буфера значительно увеличивает производительность.
В основной памяти хранятся 32-х разрядные слова, что означает, что организация блоков памяти должна быть [адресная_емкость] х 32 бита. Т.о. блок ОЗУ будет построена на ИМС памяти типа SRAM 4М x 32 (емкость = 16Mb), блок ПЗУ на ИМС типа E2PROM 32K x 32 бита (емкость = 128Kb).
Исходя из выше сказанного, возможно построение структурной схемы основной памяти (рис. 5).
Рис. 5. Структурная схема основной памяти
В данной 32-х разрядной ЭВМ ЦП позволяет адресовать 4096 Mb ячеек памяти.
По заданию организация ОП страничная. Страничная организация памяти используется для реализации механизма виртуальной памяти, позволяющей реализовать механизм динамического распределения памяти [6]. Страничный механизм это один из способов преобразования виртуального адреса (ВА) в физический адрес (ФА).
Схема страничного преобразования приведена на рис. 6.
В системах со страничной организацией основная и внешняя память делятся на страницы фиксированной длины. Каждой программе (пользователю) предоставляется некоторая часть адресного пространства, которая может превышать основную память компьютера, и которая ограничена только возможностями адресации, заложенными в системе команд. Эта часть адресного пространства называется виртуальной памятью пользователя и выражается в целом количестве страниц. В ОП содержит таблица страниц для текущей программы. Табличная страница содержит дескрипторы каждой страницы программы. В дескрипторе содержится физический адрес страницы и информация, определяющая права доступа (защита) и состояние страницы.
Рис.6. Схема преобразования ВА в ФА при страничной организации памяти
Каждое слово в виртуальной памяти пользователя определяется виртуальным адресом, состоящим из двух частей:
· старшие 20-ть разрядов адреса (PAGE) рассматриваются как номер страницы, представляющей собой смещение относительно базового регистра (БР) страничной таблицы программы;
· младшие 12-ть являются номером слова (OFFSET) (или байта) внутри страницы.
Преобразование ВА в ФА происходит следующим образом: по номеру страницы из ВА относительно БР считывается ее дескриптор из страничной таблицы, из которого берется физический адрес страницы. К физическому адресу (20 бит) дескриптора добавляется номер слова из ВА (OFFSET - 12 бит). Полученный адрес является ФА.
Так как страничная таблица хранится в ОП, то страничный механизм требует одного дополнительного обращения к ОП, для преобразования адреса.
Стоит отметить, что для поддержания страничного механизма требуются дополнительные программно-аппаратные средства. В современных процессорах имеется внутренняя поддержка этого механизма. Однако в нашем случае необходимо внешнее устройство управления памятью (УУП), которое включено в состав контроллера ОП.
Так как страничный механизм требует дополнительного обращения к памяти при преобразовании адресов, то в состав ОП вводится адресный КЭШ (буфер TLB), хранящий 32 физических адреса интенсивно использующихся ЦП страниц.
2.4 Система прерываний
Прерывания обеспечивают реакцию процессора на события, происходящие асинхронно по отношению к исполняемому программному коду.
Для разработки системы прерываний принимается цепочечная структура (рис. 7). Имеется одна общая для всех устройств линия запроса на прерывание. Получив запрос, процессор посылает сигнал, подтверждающий получение запроса. Сигнал подтверждения прерывания проходит от одного устройства к другому до тех пор, пока не достигнет устройства, пославшего запрос на прерывание. Тогда это устройство подает свой идентифицирующий номер (вектор) на шину данных, после принятия, которого вызывается программа, обрабатывающая прерывание данного устройства. Для такой структуры характерны более низкие затраты программных и аппаратных средств, однако распределение приоритетов устройств, здесь фиксировано. Кроме того, сигнал INTA (Interrupt Acknowledge - Подтверждение прерывания) проходит через устройства с некоторой временной задержкой.
Необходимо помнить, что при запоминании и восстановлении состояния процессора, все прерывания запрещены. Устройство, выставившее запрос, разрывает линию подтверждения (INTA).
Рис. 7. Структура прерываний с линией подтверждения прерываний (цепочечная).
Алгоритм выполнения прерывания:
Распознавание запроса на прерывание. На границе инструкций процессор проверяет состояние линии запросов на прерывание (INT). Если неактивна, то обрабатывается следующая инструкция.
Запоминание состояния. При обработке прерываний процессор сохраняет в стеке словосостояние (регистр флагов и указатель следующего адреса).
Подтверждение прерывания. Процессор подает сигнал подтверждения и устройство, подавшее запрос на прерывание выставляет вектор/адрес на шину данных.
Вызов подпрограммы обработки прерывания. Процессор сбрасывает флаг разрешения прерываний, по вектору определяет адрес обработчика и выполняет его.
Восстановление и возврат. Восстанавливается словосостояние, устанавливается флаг разрешения прерываний.
Рис. 8. Последовательность выполнения машинных команд при обработке прерываний
2.5 Блок синхронизации
Блок синхронизации состоит из двух частей:
- устройства синхронизации;
- схемы начального сброса;
Размещено на http://www.allbest.ru/
Рис. 9. Структурная схема блока синхронизации
Устройство синхронизации (УС) предназначается для выработки импульсных последовательностей согласующихся по времени работу узлов и устройств в подсистеме или системе в аппаратных средствах.
Размещено на http://www.allbest.ru/
Рис. 10. Структурная схема устройства синхронизации
Генератор генерирует последовательность прямоугольных импульсов с определённой частотой. Формирователь опорных сигнал (обычно используются делители частоты) преобразовывает последовательность в системные синхросигналы. Схема размножения увеличивает мощность синхросигналов. Нельзя допустить расфазировку синхросигналов, что вызовет сбои в аппаратуре. Для этого необходимо использовать ИМС размножения с очень малой расфазировкой CLK.
В качестве генератора, выдающего синхросигнал CLK, взята микросхема К1804ГГ1. К1804ГГ1 - системный тактовый генератор (ТГ), предназначен для применения в составе блоков синхронизации центральных процессоров микро-ЭВМ и других вычислительных устройств в качестве задающего тактового генератора (ТГ). Микросхема ТГ содержит внутренний генератор опорной синхропоследовательности: опорная частота (до 30 МГц) задается внешним кварцевым резонатором. Данный генератор позволяет формировать синхросигнал с различной длительностью сигнала высокого и низкого уровней [5], чем достигается повышение производительности системы в общем.
Схема начального сброса нужна для того чтобы, при включении питания, устанавливать секвенсор по нулевому адресу. Соответственно, по этому адресу в МПП должна хранится МК инициализации системы, т.е. все выходы RG-ов и устройств перевести в состояние высокого импеданса, что бы ни вызвать конфликтов на шинах. Схема начальной установки может быть выполнена с применением микросхемы MC34064, фирмы MOTOROLA.
2.6 Контроль ВВ по паритету
Для обеспечения контроля ввода-вывода по паритету используется следующая система: к каждому контроллеру ВУ подключается модуль контроля ввода-вывода, состоящий из схем формирования бита паритета, схемы сравнения и блока управления, определяющего произошла ли ошибка при передаче или нет и выдающего контроллеру соответствующий сигнал; в свою очередь, каждое ВУ должно иметь в своем составе похожий блок контроля, в функции которого входит формирование сопровождающего бита паритета при передаче из ВУ и определение, произошла ли ошибка при передаче в ВУ. Одна из возможных структурных схем системы контроля по паритету СВВ приведена ниже.
Рис. 11. Структурная схема системы контроля ввода-вывода по паритету.
2.7 Периферийные устройства
2.7.1 Устройства ввода/вывода
Устройства ввода позволяют вводить в машину данные и программы, а также вносить исправления в программы и данные, хранящиеся в памяти ЭВМ. Устройства вывода служат для вывода из ЭВМ результатов обработки данных, их регистрации и отображения.
Монитор
Для отображения производимых действий, хранящихся данных и т.д. используется монитор. Монитор способен выводить текстовую и графическую информации ЭВМ. Монитор как и всякое другое периферийное устройство подключается через контроллер (видеоадаптер) к системной шине. Следует отметить, что монитор является пассивным устройством, которое не выдает данные и управляющие сигналы, а просто отображает информацию динамически изменяющуюся информацию, которая хранится по определенным адресам в ОП. Обычно в памяти хранится несколько "экранов" (страниц), вывод же производится с текущей. Это предусматривает применение графического ускорения, т.е. массивное изменение информации на текущей странице вызовет мерцание на экране и долгую перерисовку особенно графических объектов. Этого можно избежать заранее подготовив дополнительную страницу видеоизображения и присвоить ей номер текущей видеостраницы. Вывод текущей видеостраницы производится каждые 17мс (60 Hz) при этом информация считывается в ЗУ видеоадаптера определённой ёмкости (объём ЗУ видеоконтроллера определяет разрешение изображения).
Отображение информации ЗУ видеоадаптера происходит независимо от процессора. Ниже приводится структурная схема включения монитора (рис. 11).
Размещено на http://www.allbest.ru/
Рис. 12. Структурная схема включения монитора
Размещено на http://www.allbest.ru/
Рис. 13. Структурная схема контроллера монитора
Контроллер монитора:
Поскольку контроллер предназначен для подключения монитора, его обязательным элементом будет контроллер ЭЛТ. В задач этого контроллера входит согласованное формирование сигналов сканирования видеопамяти (адрес и стробы чтения) и сигналов вертикальной и горизонтальной синхронизации монитора.
Видеопамять является специальной областью памяти, из которой контроллер ЭЛТ, организует циклическое чтение содержимого для регенерации изображения.
Контроллер атрибутов управляет трактовкой цветовой информации, хранящейся в видеопамяти. В текстовом режиме он обрабатывает информацию из байт атрибутов знакомест, в графическом - из бит текущего выводимого пикселя. Контроллер атрибутов позволяет увязать объем хранимой цветовой информации с возможностями монитора.
Графический контроллер является средством повышения производительности программного построения изображений, точнее их образов, в видеопамяти.
Внутренняя шина адаптера предназначена для высокопроизводительного обмена данными между видеопамятью, графическим акселератором и внешним интерфейсом.
Блок внешнего интерфейса связывает адаптер с общей шиной разрабатываемой ЭВМ.
Блок интерфейса монитора формирует выходные сигналы соответствующего типа (RGB-TTL, RGB-Analog, S-Video или композитный видео). Этот же блок отвечает и за диалог с монитором: чтение бит идентификации VGA-монитора.
Модуль расширения BIOS (Video BIOS) хранит код драйверов видеосервиса и таблицы знакогенераторов [7].
Клавиатура
Клавиатура является одним из основных устройств ввода, обеспечивающих интерактивное общение пользователя с ЭВМ. Она содержит микропроцессор (контроллер клавиатуры), который воспринимает каждое нажатие на клавишу и выдает последовательный скан-код. Скан-код - это однобайтовое число, младшие 7 бит которого представляют идентификационный номер, присвоенный каждой клавише, а старший 8-ой бит кода говорит о том, была ли нажата клавиша (бит = 1, код нажатия) или освобождена (бит = 0, код освобождения). При поступлении скан-кода из порта вызывается прерывание. Приоритет клавиатуры выше всех приоритетов остальных периферийных устройств.
Процессор прекращает выполнять текущую команду и выполняет процедуру, анализирующую скан-код.
Размещено на http://www.allbest.ru/
Рис. 14. Структурная схема включения клавиатуры
Для того, чтобы ЦП успевал обрабатывать все нажатия клавиш, контроллер клавиатуры должен иметь буфер FIFO. Он занимает непрерывную, постоянную область адресов памяти. Два указателя хранят позиции головы и хвоста строки символов, находящихся в буфере в текущий момент. Новые нажатия клавиш сохраняются в позициях, следующих за хвостом, и соответственно обновляют указатель хвоста буфера. Считывание же происходит по указателю головы строки символов. Такая конструкция позволяет легко очищать буфер, для этого надо установить значение указателя головы значению указателя хвоста.
Мышь
Мышь - специальное устройство ввода, которое обычно служит для управления курсором, представленном на экране монитора, обеспечивая таким образом взаимодействие с графическим интерфейсом пользователя. Соединение мыши к системной шиной также осуществляется через контроллер. Схема подключения мыши ни чем не отличается от схемы подключения клавиатуры. Контроллер мыши формирует прерывания по нажатию кнопок мыши и по перемещению самой мыши. Текущие координаты мыши хранятся в ОП. При перемещение мыши координаты вычисляются с использованием хранящихся в памяти старых координат и смещения мыши.
2.7.2 Внешние ЗУ
Информация в ЗУ на магнитных дисках (МД) хранится на плоских металлических или пластиковых пластинах (дисках), покрытых магнитным материалом. Данные записываются и считываются с диска с помощью электромагнитной катушки, называемой головкой считывания/записи, которая в процессе считывания и записи неподвижна, в то время как диск вращается относительно нее. При записи на головку подаются электрические импульсы, намагничивающие участок поверхности под ней. Считывание базируется на электрическом токе наводимом в катушке головки, под воздействием перемещающегося относительно нее магнитного поля. Несмотря на разнообразие типов магнитных дисков, принципы их организации обычно однотипны. Все магнитные диски можно разделить на два типа: гибкие (дискеты, НГМД) и жесткие (винчестер). Как и все остальные ПУ магнитные диски подключаются к системной шине через контроллер, который обеспечивает выполнение операции ввода/вывода.
2.8 Система ввода/вывода
По прерываниям.
Возможно два способа различия адресного пространства памяти и ввода-вывода.
Использование адресного разряда (обычно старший, иначе придется хитро вычислять адрес) для селекции память/порт. Преимущества - не нужно специального сигнала из процессора. Недостатки очевидны - уменьшение вдвое адресного пространства и пространства ввода-вывода.
Использование селектирующего сигнала для определения адресного пространства памяти и ввода-вывода.
Алгоритм ввода-вывода. Устройство, инициирующее обмен данными, вызывает прерывание процессора, процессор читает регистр состояния устройства (принтер) или данные от устройства (мышь). Преимущества - быстрота реакции процессора на запрос устройства. Устройство не ждет, пока его опросят, а процессору не надо периодически опрашивать устройство.
2.9 Таймер
Таймер предназначен для деления машинного времени на временные интервалы, для эффективного использования процессора при работе с периферийными устройствами. Он обеспечивает совместную работу ЦП и ПУ в реальном масштабе времени, осуществляя разбиения машинного времени на равные интервалы времени.
Назначение таймера:
§ генерация прерываний от системных часов;
§ генерация запросов на регенерацию памяти;
§ генерация звуковых сигналов (PC Speaker)
В состав таймера входят схемы, необходимые для:
§ запроса и получения канала;
§ формирования вектора прерывания;
В качестве таймера в ЭВМ используется аналог микросхемы 580ВИ53 - трехканальное программируемое устройство, предназначенное для организации работы микропроцессорных систем в режиме реального времени. Таймер формирует сигналы с различными временными параметрами.
Программируемый таймер реализован в виде трех независимых 16-разрядных каналов с общей схемой управления. Каждый канал может работать в шести режимах. Программирование режимов работы каналов осуществляется индивидуально и в произвольном порядке путем ввода управляющих слов в регистры режимов каналов, а в счетчики - запрограммированного числа байтов.
Управляющими сигналами для таймера являются, сигналы каналов, разрешающие или запрещающие счет, сигналы выбора каналов, а также входы write/read и вход выбора микросхемы. Максимальное значение счета: в двоичном коде 216; в двоично-десятичном коде 104, а частота синхронизации каналов 0-2,5 МГц.
Размещено на http://www.allbest.ru/
Рис. 15. Структурная схема включения таймера
3. Разработка принципиальной схемы КЭШ
Для того чтобы разработать принципиальную схему КЭШ-команд, необходимо рассмотреть его назначение, состав и принцип работы.
Кэш-память (Cash Memory) - сверхоперативная память (СОЗУ), является буфером между ОП и его «клиентами» - процессором и другими абонентами шины. Кэш-память не является самостоятельным хранилищем; информация в ней неадресуема клиентами подсистемы памяти, присутствие кэша для них «прозрачно». Кэш хранит копии блоков данных тех областей ОП, к которым происходили последние обращения, и весьма вероятное последующие обращение к тем же данным будет обслужено кэш-памятью существенно быстрее, чем ОП. От эффективности алгоритма кэширования зависит вероятность нахождения затребованных данных в кэш-памяти и, следовательно, выигрыш в производительности памяти и ЭВМ в целом.
Кэш не может хранить копию всей ОП, поскольку его объем во много раз меньше объема основной памяти. Он хранит лишь ограниченное количество блоков данных и каталог (cash directory) - список их текущего соответствия областям основной памяти.
При каждом обращении к кэшируемой памяти контроллер кэш-памяти по каталогу проверяет, есть ли действительная копия затребованных данных в кэше. Если она там есть, то это случай кэш-попадания (cash -hit), и обращение за данными происходит только к кэш-памяти. Если действительной копии там нет, то это случай кэш-промаха (cash-miss), и данные берутся из ОП, передаются на общую шину и помещаются в кэш. В соответствии с алгоритмом кэширования блок данных, считанный из ОП при определенных условиях, заместит один из блоков кэша. Поиск блока в списке должен происходить достаточно быстро, чтобы не свести на нет выигрыш от применения быстродействующей памяти. Обращение к основной памяти начинается одновременно с поиском в каталоге, и в случае попадания - прерывается [7].
Контроллер кэша оперирует строками (cash line) фиксированной длинны. Строка может хранить копию блока основной памяти, размер которого, естественно, совпадает с длиной строки. С каждой строкой кэша связана информация об адресе скопированного в нее блока ОП и признаки ее состояния. Информация о том, какой именно блок занимает данную строку, и ее состояние называется тегом (tag) и хранится в связанной с данной строкой ячейке специальной памяти тегов (tag RAM). В операциях обмена с ОП строка участвует целиком.
Строки кэша под отображение блока памяти выделяется только при операциях чтения. Запись блока, не имеющего копии в кэше, производится только в основную память. Поведение кэш-контроллера при операции запись в память, когда копия затребованной области находится в некоторой строке кэша, определяется его политикой записи. Существует два основных алгоритма записи данных из кэша в основную память: сквозная запись и обратная запись. В данной работе используется алгоритм сквозной записи. Он конечно, менее эффективен чем алгоритм с обратной записью, но прост в аппаратной реализации.
Алгоритм сквозной записи предусматривает выполнение каждой операции записи, попадающей в кэшированный блок, одновременно и в строку кэша, и в ОП. При этом процессору при каждой операции записи придется ожидать окончания относительно длительной записи в основную память. Алгоритм достаточно прост в реализации и легко обеспечивает целостность данных за счет постоянного совпадения копий данных в кэше и ОП. Для него нет необходимости хранить признаки присутствия и модифицированности - вполне достаточно только информации тега. Но вся эта простота оплачивается низкой эффективностью записи.
В зависимости от способа определения взаимного соответствия строки кэша и области основной памяти различают три архитектуры кэш-памяти:
§ кэш прямого отображения (direct-mapped cache) - адрес памяти, по которому происходит обращение, однозначно определяет строку, в которой может находиться отображение требуемого блока.
§ полностью ассоциативный кэш (fully associative cache) - любая строка может отображать любой блок памяти.
§ множественно - ассоциативный кэш (set-associative) - каждый блок ОП может претендовать на одну из нескольких строк кэша, объединенных в набор.
В данной работе используется кэш прямого отображения, т.к. имеет самую простую аппаратную реализацию. В кэш-памяти прямого отображения, как и было сказано выше, адрес памяти, по которому происходит обращение, однозначно определяет строку, в которой может находиться отображение требуемого блока [7]. Так как занимать строку в одно и то же время может только одна страница, нужен специальный её признак - тег. Адрес от процессора делится на две части. Младшие разряды позволяют выбрать одну из строк кэш-памяти (index). Оставшиеся старшие образуют тег (рис. 16).
Размещено на http://www.allbest.ru/
Рис. 16. Деление адреса от процессора
В начале каждого обращения к кэшируемой памяти контроллер первым делом считывает ячейку каталога с заданным индексом, сравнивает биты адреса тега со старшими битами адреса памяти и анализирует признак действительности. Этот анализ выполняется в специальном цикле запроса (inquire). Если в результате анализа выясняется, что требуемый блок не находится в кэше, то продолжается цикл обращения к ОП (случай кэш-промаха); в случае попадания запрос обслуживается кэш-памятью. В случае промаха после считывания ОП новые данные помещаются и в строку кэша, а в ее тег помещаются старшие биты адреса [7].
Если обобщить все выше сказанное, то по адресу строки производится считывание. Поле адресов считанной строки сравнивается с теговым адресом и, если есть совпадение, вырабатывается сигнал Hit выдачи информации. При загрузке из внешней памяти заменяется вся строка [8].
Размещено на http://www.allbest.ru/
Рис. 17. Организация кэш-памяти с прямым отображением
Размещено на http://www.allbest.ru/
Рис. 18. Структурная схема кэш-памяти
Для хранения тегов обычно используются ИМС асинхронной SRAM - Tag SRAM. Необходимый объем памяти тегов (количество ячеек) можно вычислить, разделив объем установленной кэш-памяти на длину строки КЭШа. Длину строки примем равной количеству байт, передаваемых за один стандартный пакетный цикл. В данном случае длина строки равна 32 битам. Организация кэш-память следующая: 64Kb x (размер строки + длинна тега), т.е. 64Kb x 32+16 бит.
Получается, что емкость кэш-памяти равна 256Кб для хранения данных и команд и 128Кб для хранения тегов. В итоге: 384Кб.
Так как и команды и данные передаются по одной шине, необходимо будет предусмотреть механизм их разделения.
Учитывая всё выше сказанное, можно разработать принципиальную КЭШа-команд (рис. 19).
Размещено на http://www.allbest.ru/
Выборка данных из ОП начинается только после загрузки адреса. При выборке данных из кэша, 32-х разрядная шина адреса делится на две 16-х шины. Первая отвечает за индексы, вторая за тег. Компаратор в это время вырабатывает на своем выходе сигнал - «H», и следовательно на вход WE поступает H, что переводит память в режим чтения.
После выборки тега по заданному адресу (индексу), данные (сам тег) поступает на компаратор, после чего на нем в случае удачи (кэш-попадания) вырабатывается «L», по заданному индексу данные поступают на шину AB/DB и прерывается параллельная выборка из ОП (за это отвечает контроллер ОП). В случае же кэш-промаха, трансиверы переводятся в режим пропускания в противоположное направление и данные (тег) записывается по индексу, а в строку записываются данные.
Алгоритм записи данных, в принятой структуре кэша (сквозная), ничем не отличается от ОП, т.е. сначала устанавливается адрес, а затем на вход данных ИМС памяти поступают данные.
Признак команда/данные переключает КЭШ из рабочего режима в режим ожидания и обратно (отвечает за то, чтобы данные не попадали в кэш-команд,). Делается это путем перевода всей памяти, компаратора и трансивера в выключенное состояние. Перевод компаратора в выключенное состояние также позволяет пресечь выборку информации из ОП.
Заключение
В ходе выполнения курсовой работы были получены новые и закреплены имеющиеся знания по дисциплине «Организация ЭВМ».
В результате работы была создана структурная схема простейшей ЭВМ, было произведено описание основных компонентов и блоков. Также была разработана принципиальная схема блока КЭШ.
Работа такого плана выполняется впервые. Ее выполнение потребовало углубить имеющиеся знания особенно по темам, непосредственно соприкасающимся с предметом разработки.
Список литературы
1. Мик Дж., Брик Дж. «Проектирование микропроцессорных устройств с разрядно-модульной организацией»: в 2 кн. / Перев. с англ.- М. Мир, 1984.
2. Каган Б.М. Электронные вычислительные машины и системы: Уч. пособие для вузов - 3-е изд., перераб. и дополн. - М., Энергоатомиздат, 1991, - 592 стр.
3. Соболев В.И. Схемотехника. Руководство к лабораторным работам. - Н., НГТУ, 1999, 46 стр.
4. Соболев В.И. Схемотехника. Руководство к курсовой работе. - Н., НГТУ, 1997, 61 стр.
5. Микропроцессоры и микропроцессорные комплекты интегральных микросхем: Справочник: в 2 т./ Н.Н. Аверьянов, А.И. Березенко, Ю.И. Борщенко и др.; Под ред. В.А. Шахнова.- М.: Радио и связь, 1988. - т. 2. - 368 стр.
6. Курс лекций по дисциплине “Организация ЭВМ и систем” за 2007г.
7. Гук М.Ю. Аппаратные средства IBM PC: Энциклопедия. - СПб.: Питер, 1998. - 815 стр.
8. Угрюмов Е.П. «Цифровая схемотехника». - Спб.: БХВ-Петербург, 2001. - 528 стр.
Размещено на Allbest.ru
...Подобные документы
Разработка структурной и принципиальной схемы. Блок-схема основной программы и подпрограмм обработки прерываний. Имена переменных, используемых в них. Результаты моделирования работы устройства в программе ISIS пакета Рroteus. Разработка печатной платы.
курсовая работа [1,5 M], добавлен 13.11.2016Алгоритм реализации арифметической операции и разработка блок-схемы устройства. Составление и минимизация логических выражений работы блоков. Логическая схема регистра, сумматора, сдвига и мультиплексора. Анализ и синхронизация работы устройства.
курсовая работа [1,2 M], добавлен 27.02.2014Разработка структурной схемы устройства управления учебным роботом. Выбор двигателя, микроконтроллера, микросхемы, интерфейса связи и стабилизатора. Расчет схемы электрической принципиальной. Разработка сборочного чертежа устройства и алгоритма программы.
курсовая работа [577,8 K], добавлен 24.06.2013Проблема охлаждения в компьютере. Выбор и описание прототипов разрабатываемого устройства. Разработка структурной и принципиальной схемы. Разработка программного обеспечения, его выбор и обоснование. Моделирование работы исследуемого устройства.
курсовая работа [2,7 M], добавлен 10.11.2014Прерывание и его природа. Контролер прерываний. Обработка прерываний в реальном режиме. Характеристики реального режима работы микропроцессора. Схема обработки прерываний в реальном режиме. Написание собственного прерывания. Разработка в общем случае.
доклад [347,0 K], добавлен 22.09.2008Выбор и описание прототипов разрабатываемого устройства. Разработка структурной и принципиальной схемы. Обоснование программного обеспечения, используемого в разработке продукта. Моделирование устройство. Формирование программы для микропроцессора.
курсовая работа [2,0 M], добавлен 10.11.2014Виды терморегуляторов и их общее устройство. Разработка устройства для управления микроклиматом в теплице. Возможные варианты модернизации системы контроля температуры. Блок инициализации микроконтроллера. Разработка структурной схемы работы программы.
курсовая работа [1,8 M], добавлен 27.05.2015Разработка архитектуры специализированного микрокомпьютера, проектирование его основных структурных компонентов. Внутренний интерфейс, микропрограммное обеспечение. Включение системы прерываний в схему устройства управления, формат микрокоманды.
курсовая работа [2,4 M], добавлен 24.06.2012Микропроцессоры позволяют строить универсальные устройства управления электронными весами. Разработка функциональной схемы, схемы алгоритма прикладной программы. Разработка принципиальной схемы, управляющей программы. Листинг управляющей программы.
курсовая работа [118,0 K], добавлен 04.07.2008Проектирование микро-ЭВМ. Программа вычисления матрицы. Кодирование программ и регистров, формат команды. Микропрограммное устройство управления. Граф-схемы выполнения операций. Прошивка ПЗУ микрокоманд, точек входа. Разработка принципиальной схемы.
курсовая работа [1,1 M], добавлен 01.03.2013Описание алгоритма работы и разработка структурной схемы МКС. Схема вывода аналогового управляющего сигнала, подключения ЖК-дисплея, клавиатуры и аварийного датчика. Разработка блок-схемы алгоритма главной программы работы МКС. Функция инициализации.
курсовая работа [5,7 M], добавлен 26.06.2016Разработка структурной схемы гипотетической ЭВМ, ее функциональной или принципиальной схемы и алгоритма работы конкретного блока, входящего в состав этой ЭВМ. Принципы работы и архитектура центрального процессора и памяти, система прерывания программ.
курсовая работа [4,1 M], добавлен 25.03.2012Языки программирования для промышленного контроллера WinCon W-8737. Использование редактора потоковых диаграмм. Технические характеристики и виды шаговых двигателей. Блок-схемы алгоритмов программ управления. Разработка структурной схемы устройства.
дипломная работа [1,7 M], добавлен 20.12.2015Выбор принципов проектирования устройства записи, хранения и передачи чисел. Разработка алгоритма выполнения операций, необходимых для обработки информации. Структурная схема устройства. Элементарная база, необходимая для разработки принципиальной схемы.
курсовая работа [1,3 M], добавлен 16.08.2012Сравнительный анализ существующих приборов. Разработка функциональной схемы устройства. Выбор и статистический расчет элементов, входящих в систему: датчика, источник тока, усилителя, микроконтроллера, блок питания. Блок-схема управляющей программы.
курсовая работа [769,9 K], добавлен 12.01.2015Разработка принципиальной электрической схемы микропроцессорного устройства управления двигателем постоянного тока на базе контроллера ATmega 128. Разработка пакета подпрограмм на языке Assembler в целях регулирования и корректной работы устройства.
курсовая работа [271,5 K], добавлен 14.01.2011Структурная схема микроконтроллера, процесс разработки принципиальной схемы и программного обеспечения. Конфигурирование регистров аналого-цифрового преобразователя. Код программы на языке Assembler, конфигурирование регистров внешних прерываний.
курсовая работа [267,5 K], добавлен 08.06.2019Разновидности конструктивных решений реализации весового оборудования. Разработка блок-схемы предустановок, блок-схемы измерения веса, блок-схемы вывода информации о весе в компьютер, блок-схемы устройства и программы работы микропроцессорного блока.
курсовая работа [525,4 K], добавлен 13.02.2023Принципы и алгоритмы обработки прерываний. Набор действий по реализации этапов обработки прерываний микропроцессора. Разработка структуры и алгоритма резидентной программы. Реализация программы на языке Ассемблер, методы её отладки и тестирования.
курсовая работа [348,7 K], добавлен 22.12.2014Описание работы элементов программы в виде блок-схем. Анализ структурной схемы модели домофона. Блок-схема работы открытия двери ключом. Моделирование в Proteus: принцип динамического опроса и индикации, внешний вид жидкокристаллического дисплея.
курсовая работа [1,4 M], добавлен 12.04.2019