Ефимушкина Наталья Владимировна, Орлов Сергей Павлович
УДК 681.324
УЧЕБНЫЙ КОМПЛЕКС ИМИТАЦИОННЫХ МОДЕЛЕЙ ДЛЯ ЛАБОРАТОРНЫХ РАБОТ ПО ДИСЦИПЛИНЕ «ЭВМ И ПЕРИФЕРИЙНЫЕ УСТРОЙСТВА»
Аннотация
Описывается подход к разработке комплекса, содержащего пакет программ для изучения особенностей работы современных ЭВМ и их основных устройств, а также методические указания для организации лабораторного практикума по дисциплине «ЭВМ и периферийные устройства» для направления 230100, «Информатика и вычислительная техника». Пакет программ разработан с применением метода имитационного моделирования и позволяет выполнить девять лабораторных работ, связанных с исследованием ЭВМ типовой архитектуры, а также ее основных узлов: центральных процессоров, памяти разного уровня, и периферийных устройств. При разработке моделей решались задачи выбора состава основных элементов, входящих в состав устройств, уровня детализации их параметров и оценки адекватности моделей.
Ключевые слова: ЭВМ, процессор, память, периферийные устройства, конвейер, имитация.
ВВЕДЕНИЕ
Общеизвестно, что современные ЭВМ и системы на их основе характеризуются сложными структурами и режимами функционирования. Для изучения особенностей их работы используются методы теории вычислительных систем (ВС). Очевидно, что наиболее достоверные результаты позволяют получить эксперименты непосредственно над объектом, которые предполагают исследование функционирования ВС в реальных или специально созданных условиях. В настоящее время промышленностью выпускаются лабораторные комплексы, которые реализуют этот подход. Они характеризуются высокой стоимостью и не обеспечивают возможности изучения всех особенностей работы исследуемых объектов.
1. ФОРМУЛИРОВКА ПРОБЛЕМЫ
Наиболее перспективными, на наш взгляд, являются методы имитационного
© Ефимушкина Н.В., Орлов С.П., 2013
моделирования, которые основаны на описании функционирования системы в виде алгоритма, называемого имитационной (алгоритмической) моделью. Соответствующая программа содержит процедуры, регистрирующие состояния модели и обрабатывающие полученные данные для оценки требуемых характеристик системы и протекающих в ней процессов. Имитационные модели воспроизводят процесс работы объекта, исходя из априорно известных свойств его элементов, за счет объединения моделей элементов в соответствующую структуру. Важнейшее свойство имитационного моделирования - универсальность. Метод позволяет исследовать системы любой сложности, учитывать влияние различных факторов и воспроизводить типовые ситуации. Имитационные модели дают возможность экспериментатору и разработчику формировать представления о свойствах и, познавая систему через ее модель, принимать обоснованные проектные решения. Важной особенностью описываемого метода является возможность использования средств визуализации, кото-
рые обеспечивают лучшее усвоение материала, в особенности студентами младших курсов, только начинающими получать базовую подготовку.
В работах [1, 2] рассматриваются методы имитационного моделирования, но они ориентированы на исследование и проектирование вычислительных сетей с использованием теории массового обслуживания. В настоящее время из аналогов наиболее близок только пакет программ имитационного моделирования компьютерных сетей OPNET MODELER [3]. Однако этот пакет не пригоден для изучения структур ЭВМ, процессоров и периферийных устройств. Описываемый в статье комплекс имитационных моделей ориентирован на изучение именно таких объектов.
При разработке моделей решался целый ряд проблем:
1) выбор основных элементов исследуемых устройств, которые должны быть отображены в модели;
2) определение уровня детализации параметров объекта;
3) оценка адекватности модели.
При решении первой проблемы в качестве объектов исследования были выбраны:
а) основные устройства центральной части современных ЭВМ - центральный процессор и подсистема памяти;
б) периферийные устройства - подсистема ввода-вывода.
В моделях необходимо было отобразить основные элементы этих устройств, которые определяют особенности их функционирования. Например, в связи с тем, что в центральных процессорах широко используется принцип конвейеризации, их модели содержат модели конвейеров. В системе памяти важной составляющей является подсистема «кэш - оперативная память». Структура этой подсистемы и исследуется в моделях.
Одной из важнейших проблем был выбор состава параметров, описывающих структуру и режим работы объектов. Они должны обеспечивать уяснение основных особенностей функционирования ЭВМ и их устройств. При этом второстепенные фак-
торы, усложняющие восприятие, необходимо отбросить.
Описываемый подход привел к использованию упрощенных моделей ЭВМ и их устройств. Так, изучение работы центральных процессоров начинается с исследования простейших конвейеров, которые являются основными элементами их структуры. Модели суперскалярных и EPIC процессоров -более сложные. При этом они включают в себя только те элементы, которые позволяют изучить их важнейшие особенности.
В модели подсистемы «кэш - оперативная память» представлены устройства, имеющие меньшие значения емкости по сравнению с реальными. При этом воспроизводятся основные типы кэш и режимы их работы. Модель подсистемы ввода-вывода отображает работу типовых устройств: клавиатуры и монитора, реализующих посимвольный ввод с одновременным выводом на экран.
2. ОПИСАНИЕ УЧЕБНОГО КОМПЛЕКСА ДЛЯ ИЗУЧЕНИЯ ЭВМ И ИХ УСТРОЙСТВ
Предложенный подход реализован в учебном комплексе для выполнения лабораторных работ по дисциплине «ЭВМ и периферийные устройства».
Комплекс представляет собой пакет программ имитационного моделирования современных ЭВМ и их основных устройств. Он предназначен для проведения лабораторных работ по дисциплине «ЭВМ и периферийные устройства» направления 230100. Пакет позволяет изучить особенности организации вычислительных процессов в центральных процессорах, памяти и ЭВМ в целом, а также исследовать влияние самых разнообразных факторов на производительность этих устройств и систем. Он обеспечивает оценку временных характеристик. Комплекс включает в себя средства для исследования следующих типовых элементов и систем:
1) конвейеров с конфликтами и без;
2) параллельных конвейеров разной длины с конфликтами и без;
3) суперскалярных и EPIC процессоров;
4) подсистемы «кэш - оперативная память» однопроцессорной системы;
5) ЭВМ, имеющей типовую архитектуру и содержащую центральный процессор, оперативную память, шину, чипсеты и устройства ввода-вывода в различной комплектации.
Изучение начинается с простейших устройств и моделей. Первые работы посвящены исследованию типового пятиступенчатого конвейера и выявлению его основных свойств и режимов эффективной работы. Известно, что конвейерный принцип обработки широко применяется в современных процессорах [4]. Модель конвейера наглядно демонстрирует, что с ростом числа команд среднее время их выполнения стремится к длительности одной микрооперации, а при разной длительности последних - ко времени наиболее продолжительной из них. В следующей работе изучается влияние увеличения числа конвейеров на производительность системы. В модели исполняемая программа представляется как смесь команд, свойства которых могут быть заданы исследователем. Она может содержать однотип-
ные команды, а также команды, выполняемые разными (длинными и короткими) конвейерами, связанные по данным, памяти или управлению. При этом демонстрируется, что в идеальном случае n конвейеров за такт могут выполнить n команд. Пример экранной формы для исследования мультиконвей-ерной системы приведен на рис. 1.
Известно, что эффективная работа конвейера может быть нарушена из-за конфликтов одного из трех типов:
а) структурных - конфликты возникают из-за занятости отдельных ресурсов (когда аппаратные средства не могут поддерживать выполнение команд в режиме с совмещением);
б) по данным - конфликты появляются, если данная команда использует результат предыдущей;
в) по управлению - конфликты возникают при наличии операций переходов, изменяющих значение счетчика команд [1-2].
Все конфликты приводят к приостановке выполнения команды, в которой они возникли (pipeline stall), а также всех следующих за ней до конца конвейера. Эта ситуация называется «конвейерным пузырем» (pipeline bubble). Пузырь проходит по конвейеру, не выполняя никакой работы. Модели, входящие в учебный комплекс, позволяют исследовать все описанные типы конфликтов и оценить их влияние на производительность системы.
В настоящее время существуют три основных класса центральных процессоров: суперскалярные, с очень длинным командным словом (VLIW) и с явным параллелизмом команд (EPIC) [4-6]. Все они содержат несколько параллельно работающих конвейеров. В первых - конфликты разрешаются динамически, в процессе выполнения программы, а во вто-
Рис. 1
рых - компилятором, до начала ее работы. Последний класс сочетает в себе достоинства первых двух. Его компилятор формирует не исполняемый код, а некий план решения задачи, который может быть адаптирован к любой модели процессора. При этом конфликты по данным и структурные устраняются компилятором, а коллизии, связанные с командами управления, ликвидируются при выполнении программы.
Таким образом, исполняемый код программы процессора EPIC должен содержать команды управления (if), которые могут привести к конфликтам, и любые другие команды, при которых коллизии не возникают. Меняя частоту появления условных переходов и вероятность их неправильного предсказания, можно оценить влияние соответствующих конфликтов на производительность процессора. Пример экранной формы для исследования процессора EPIC, на которой пустая клетка соответствует простою конвейера, приведен на рис. 2.
Большинство современных процессоров, в том числе и многоядерных, являются суперскалярными. Они имеют сложную структуру и режим работы. В модели типового суперскалярного процессора отображены наиболее существенные элементы оригинала, которые позволяют уяснить принципы его функционирования. Пример экранной формы для исследования суперскалярного процессора представлен на рис. 3.
Важным элементом вычислительных систем, наряду с центральными процессорами, является память. Она имеет многоуровневую иерархическую структуру и включает в себя регистровое, кэш, оперативное (ОП) и внешние запоминающие устройства. Основная идея такой иерархии - согласование скоростей работы операционных устройств, в первую очередь, процессора, с запоминающими устройствами. При этом если информация хранится на верхнем уровне, то имеется ее копия и на нижнем [4].
Например, кэш-память исполняет роль буфера между ОП и процессо-
1' Forml ВИВ
Кэш команд I Стоп | |[ Возобновить ||
щ ЦТ щ 67 16:3 169 170 |if 171 |72 | | Модельное время, мкс
тт Т" 1>
Конвейер ШЕИ 0Й0 Количество команд (100 -1000)
R1 62 63
59 60 if_ | < | |100 | [7] | |
5G 57 53
53 54 55 0 Команды перекода
51 52
.:.р.: о:.ть л. .. - . :.-,оо!
Выходной буфер ШИШ
50 ЦТ Щ 47 146 145 144 [43 142 141 | Частота появления от 3 до 10
Т" lii 1 Ш И Ш
Результаты вычисления:
— Длина перекода, от 3 до 10
Количество команд за такт: Количество тактов простоя: 28 Общее количество тактов: 23 шиш 1
Рис. 2
ром. Ее организация существенно влияет на производительность системы в целом. В основу иерархии памяти положен принцип локальности ссышок, в соответствии с которым программа и обрабатываемые ею данные образуют компактные области, занимающие ячейки с последовательными адресами. Обращение к кэш-памяти может закончиться двояко: попаданием (если информация найдена) или кэш-промахом (если не найдена).
Существует три типа организации рассматриваемой памяти [4-6]:
- с прямым отображением;
Рис. 3
- полностью ассоциативная;
- множественно-ассоциативная.
Первая является наиболее простой, но
считается, что она характеризуется большим числом промахов. Полностью ассоциативный кэш - самый быстродействующий и самый сложный. Наиболее распространенной является множественно-ассоциативная память, содержащая несколько параллельных блоков. В ней для поиска блоков используется прямое отображение, а внутри блока - полностью ассоциативный метод, или наоборот.
Модель подсистемы «кэш - оперативная память» позволяет исследовать различные структуры кэш, основные методы замещения строк в ней, а также влияние объемов памяти обоих типов и времени выполнения операций обращения к ним на общие характеристики работы системы. При этом важная роль отводится визуализации процессов, протекающих в подсистеме. Пример экранной формы для исследования множественно-ассоциативной кэш-памяти приведен на рис. 4.
Использование в моделях принципа локальности ссылок, который упоминался ранее, привело к тому, что представление массивов информации из ОП в кэше прямого
отображения, полностью и множественно-ассоциативного осуществляется практически одинаково. В результате частота промахов у таких устройств также одинакова. Она растет только с увеличением размеров программ и массивов данных до значений, превышающих размеры кэша. Модель подсистемы позволяет исследовать описываемое явление и оценивать его влияние на производительность ЭВМ.
Вычислительный процесс, порождаемый программой в современных ЭВМ неймановской архитектуры, начинается с процессорной обработки. Затем происходит его прерывание и обращение к одному из внешних устройств: накопителю или устройству ввода-вывода. Таким образом, выполнение программы представляет собой последовательность этапов «счет на процессоре - обращение к внешнему устройству», которая завершается процессорной обработкой. Модели, имитирующие реализацию такого процесса на типовых устройствах ввода-вывода, позволяют детально изучить особенности ввода текста и вывода его на экран. Пример экранной формы для исследования работы ЭВМ, которая функционирует в мультипрограммном режиме, представлен на рис. 5.
ПО-««миг^Т.Чгчг^ 1С-1 №ЯЭ
АЯЖ ^ЛчСтч» - Т^ [Лщ ПО Клш память Тг па Г
ш-::тп С.|риа!ЗН> 105П10 009 281 101310 001 Бло* сровленнд и еыбе^жи
131Си«С Ст№С1 <34*1 111101 Ж 111 101 оо;
мтощ&1 Стрм -;345: Г-Фенгв 111КЮ азе 11 111Л 001 11 . V | 1
13101111И Стро« 10141 5» и 1Ф1Ю1 № 1?
1310М10С Строад V«*** ГЦ] т^ по лм-Ття-м? Тпг й^д ПО
1 1 лен 101 Счятл <Ы5\ ЮСЮЗ 310 ш 1Ш0С 011 Ж СтрсадМЗЗ? 01300С 1И «э
(01011110 то 11 СпмкЯ) 111 КС 011 11 Строк.-* 1)1191 1И
. 41011111 Ст дан ОСООЮ 010 «#<№ 011 да СФМ* сгэд ■МО» 1Й1
131 1КИЕ СтмСЗА 2-11101 аи Пи О11141 011 №«1 1К С
1 1311ЙЮ1 МНИКШ 13110)311 131100100 1311И110! пиит Строи 'Строке Стро« !155| Стр«« Стрлв -Т571 04ВП Таг по >: ччле Т^ Ищ ПО 5ка«е»**! Твг Шв ПО
^ттххв И Л; ЖОМ 101 №1 ИМИ 11С 11 С-фси (417) 11311- 111 1).
Гц™ СП) 04 М1 131 7Я Стют(1ЗД ВНИИ и: 1; СтрсчлОЗИ 01311) 111 12
100ОТС1 131 ЕК ЮИСО 1-С Сточ-» 05$ 1С11К 111 '2
огтйжв 001И1 101 3 1111® 113 617 СТРСКЛМЭТ} 1П10С 111 617
1 1(пС0п1 Й^РО/ММ^ЭТЧ^Л 11В 125Э 25 "¡И*®^ щи 1 Л ^---=> С Режим ЕЧгёбти-
1311ЙМС _1 [стоял» 1 с** |
Рис. 4
ЗАКЛЮЧЕНИЕ
Учебный комплекс содержит девять моделей типовых ЭВМ и входящих в них устройств, а также методические указания для выполнения лабораторных работ по дисциплине «ЭВМ и периферийные устройства» студентами направления 230100.
Имитационные модели разработаны с использованием универсальных сред (Delphi и C++). Их важной особенностью является визуализация процессов, протекающих в ЭВМ и устройствах. Она обеспечивает максимальную наглядность и оптимальный режим обучения.
Рис. 5
Литература
1. Лукьянов В. С. Проектирование компьютерных сетей методами имитационного моделирования: учебное пособие / B.C. Лукьянов, Г.В. Слесарев . Волгоград, ВолгГТУ, 2000.
2. Советов Б.Я. Моделирование систем. Практикум: учебное пособие / Б.Я. Советов, С.А. Яковлев.М.: Высшая школа, 2003.
3. Тарасов В. Н. Анализ и оптимизация локальных сетей и сетей связи с помощью программной системы OPNET MODELER / В.Н. Тарасов, А.Л. Коннов, Ю.А. Ушаков // Вестник Оренбургского госуниверситета, 2006, Т. 2. № 6. С. 197-204.
4. Таненбаум Э. Архитектура компьютера: пер. с англ. / Э. Таненбаум. Изд. 5-е. СПб., 2010.
5. Столингс У. Структурная организация и архитектура компьютерных систем, 5-е издание. М: Изд. дом Вильямс, 2002.
6. ХамахерК. Организация ЭВМ: пер. с англ. / К. Хамахер, З.Вранешич, С.Заки; Сер.: Классика computer science. Изд. 5-е. СПб: Питер, 2003.
IMITATIONAL MODELS TOOLKIT FOR LABORATORY WORKS OF THE SUBJECT "COMPUTING MACHINES AND PERIPHERAL DEVICES"
Abstract
Approach to development of the complex containing the software package for studying of features of operation of modern COMPUTERS and their main devices, and also methodical instructions for the organization of a laboratory workshop on discipline «the COMPUTER and peripherals» for the direction 230100, «Informatics and computer facilities» is described. The software package is developed with application of a method of imitational models and allows to perform nine laboratory works, connected with research COMPUTER of standard architecture, and also its main knots: central processors, memories of different level, and peripherals. When developing models problems of a choice of structure of the basic elements which are a part of devices, level of specification of their parameters and an assessment of adequacy of models were solved.
Keywords: COMPUTER, processor, memory, peripherals, conveyor, imitation.
Ефимушкина Наталья Владимировна, доцент кафедры «Вычислительная техника» Самарского государственного технического университета, теАттНкпа@таИ. ги,
Орлов Сергей Павлович, профессор, заведующий кафедрой «Вычислительная техника» Самарского государственного технического университета, [email protected].
© Наши авторы, 2013. Our authors, 2013.