Скачать презентацию Архитектура вычислительных систем Лекции 1 -2 Вводная Понятие Скачать презентацию Архитектура вычислительных систем Лекции 1 -2 Вводная Понятие

Архитектура вычислительных систем_1.pptx

  • Количество слайдов: 51

Архитектура вычислительных систем Лекции 1 -2. Вводная. Понятие информации. Принцип иерархической организации. Павлов А. Архитектура вычислительных систем Лекции 1 -2. Вводная. Понятие информации. Принцип иерархической организации. Павлов А. В. pavlov@phoi. ifmo. ru Кафедра Фотоники и Оптоинформатики

Литература по курсу 1. Таненбаум Э. , Остин Т. Архитектура компьютера // 6 -е Литература по курсу 1. Таненбаум Э. , Остин Т. Архитектура компьютера // 6 -е издание. — СПб. : Питер, 2013. — 811 с. , илл. — ISBN: 978 -5 -496 -00337 -7. 2. Котельников В. А. О пропускной способности эфира и проволоки в электросвязи — Всесоюзный энергетический комитет. // Материалы к I Всесоюзному съезду по вопросам технической реконструкции дела связи и развития слаботочной промышленности, 1933. Репринт статьи в журнале УФН, 176: 7 (2006), 762— 770. 3. С. А. Майоров, Г. И. Новиков Принципы организации цифровых машин // Машиностроение, 1974. 434 С. 4. http: //dic. academic. ru/dic. nsf/enc_philosophy/4131/АЛГОРИТМ 5. Карцев М. А. Архитектура цифровых вычислительных машин // М. : Наука, 1978. – 295 С. 6. http: //vssit. ucoz. ru/index/0 -4 7. У. Столлингс. Структурная организация и архитектура компьютерных систем, 5 е изд. М. : Вильямс, 2002, 896 с. 8. Цилькер Б. Я. , Орлов С. А. Организация ЭВМ и систем // Учебник для вузов. — 2014 2 СПб. : Питер, 2004. — 668 с. : ил. ISBN 5 -94723 -759 -8

Литература по курсу лаб. работ В. В. Кириллов. Архитектура базовой ЭВМ. СПб. : СПб Литература по курсу лаб. работ В. В. Кириллов. Архитектура базовой ЭВМ. СПб. : СПб ГУ ИТМО, 2010. http: //window. edu. ru/resource/816/72816/files/itmo 515. pdf 2014 3

Число – одно из основных понятий математики, служащее для количественной характеристики различных предметов и Число – одно из основных понятий математики, служащее для количественной характеристики различных предметов и явлений, как принадлежащих реальности, так и абстрактных (Философская энциклопедия. В 5 х т. — М. : Советская энциклопедия. Под редакцией Ф. В. Константинова. 1960— 1970. ) Число - абстрактное, лишенное особенного содержания обозначение какого-либо члена некоторого ряда, в котором этому члену предшествует или следует за ним какой-нибудь другой определенный член; абстрактный индивидуальный признак, отличающий одно множество от другого того же рода. (Философский энциклопедический словарь. 2010) 2014 4

Число. Аксиомы Пеано Определение. Множество натуральных чисел - множество, для которого установлено правило следования Число. Аксиомы Пеано Определение. Множество натуральных чисел - множество, для которого установлено правило следования и выполняются аксиомы: 1. Единица есть натуральное число; 2. Правило следования; 3. Единица не следует ни за каким натуральным числом; 4. другая нотация: 5. Аксиома индукции. Если есть свойство Q , которым, может быть, обладают одни и не обладают другие натуральные числа, и если: а) натуральное число 1 обладает свойством Q и б) для любого натурального числа x из того, что x обладает свойством Q следует, что и его последователь x’ также обладает свойством Q, следует, что свойством Q обладают все натуральные числа. Иногда в включают 0, тогда пишут . 2014 5

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

Системы счисления Непозиционные Смешанные Позиционные Египетская (Десятичная) Вавиолнская (Шестидесятеричная) Двоичная Восьмиричная Десятичная Римская (Алфавитная) Системы счисления Непозиционные Смешанные Позиционные Египетская (Десятичная) Вавиолнская (Шестидесятеричная) Двоичная Восьмиричная Десятичная Римская (Алфавитная) Двенаднадцатеричная Греческая Аттическая (Алфавитная) Шестнадцатеричная Греческая Ионийская (Десятичная алфавитная) Славянская 2014 7

Системы счисления, используемые в современной вычислительной технике 1. двоичная; 0, 1 2. восьмеричная; 0, Системы счисления, используемые в современной вычислительной технике 1. двоичная; 0, 1 2. восьмеричная; 0, 1, 2, 3, 4, 5, 6, 7. 3. шестнадцатеричная; 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F 4. двоично-десятичная. Правила перевода: 2014 8

Двоично-десятичная система Десятичные цифры представляются 4 -х разрядными двоичными комбинациями от 0000 до 1001 Двоично-десятичная система Десятичные цифры представляются 4 -х разрядными двоичными комбинациями от 0000 до 1001 – двоичными эквивалентами первых десяти цифр шестнадцатеричной системы. Преобразование – замена каждой тетрады одной десятичной. Две двоично-десятичные цифры = 1 байт. (числа от 0 до 99). 2014 9

Двоично-десятичная система Сложение двоично-десятичных чисел, имеющих один десятичный разряд, аналогично сложению 4 -х разрядных Двоично-десятичная система Сложение двоично-десятичных чисел, имеющих один десятичный разряд, аналогично сложению 4 -х разрядных двоичных чисел. Но если результат сложения превосходит 1001 (9), то необходимо добавить двоичный код числа 6, т. е. 0110. Эта процедура называется коррекцией: коррекция 2014 10

Понятие информации Информация (от лат. informatio, разъяснение, изложение, осведомлённость) Информация есть сведения, сообщения… Информация Понятие информации Информация (от лат. informatio, разъяснение, изложение, осведомлённость) Информация есть сведения, сообщения… Информация есть мера упорядоченности… Информация есть содержание процессов отражения… Информация есть алгоритм или инструкция… Ø «Информация есть информация, а не материя и не энергия. Это третье» . (Норберт Винер) Ø «Информация есть запомненный выбор одного варианта из нескольких возможных и равноправных» . (Генри Кастлер) 2014 11

Понятие информации «Феномен информации есть многостадийный, необратимый процесс становления структуры в открытой неравновесной системе, Понятие информации «Феномен информации есть многостадийный, необратимый процесс становления структуры в открытой неравновесной системе, начинающийся со случайного запомненного выбора, который эта система делает, переходя от хаоса к порядку, и завершающийся целенаправленным действием согласно алгоритму или программе, отвечающим семантике выбора » И. В. Мелик-Гайказян. «Информационные процессы и реальность» . М. : 1997. 2014 12

К вопросу оценки количества информации: Энтропийный подход Р. Хартли процесс получения информации рассматривал как К вопросу оценки количества информации: Энтропийный подход Р. Хартли процесс получения информации рассматривал как выбор одного сообщения из конечного наперёд заданного множества из N равновероятных сообщений, а количество информации I, содержащееся в выбранном сообщении, определял как двоичный логарифм N. т. е. : Этап 1: 8 вариантов, Н=3 бит 1 Этап 2: 4 варианта, Н=2 бит Этап 4: 0 вариантов, Н=0 бит 1 2 3 Этап 3: 2 варианта, Н=1 бит 1 2 4 5 1 3 6 7 2 4 8 • Hartley, R. V. L. Transmission of Information // Bell System Technical Journal, July 1928, pp. 535– 563. 2014 http: //www. dotrose. com/etext/90_Miscellaneous/transmission_of_information_1928 b. pdf 13

К вопросу оценки количества информации: Энтропийный подход Введено Клодом Шенноном в 1948 г. Количество К вопросу оценки количества информации: Энтропийный подход Введено Клодом Шенноном в 1948 г. Количество информации в сообщении, содержащем N символов: Минимальное количество информации называется «бит» (от BInary uni. T). В общем случае, когда делается выбор одного варианта из n возможных (с pi , где i=1, 2, … , n) • Shannon C. E. A Mathematical Theory of Communication // Bell System Technical Journal. — 1948. — Vol. 27. — P. 379 — 423. • http: //cm. bell-labs. com/cm/ms/what/shannonday/shannon 1948. pdf • Русский перевод: Шеннон К. Э. Математическая теория связи // Работы по теории информации и кибернетике / 2014 14 • Пер. С. Карпова. — М. : ИИЛ, 1963. — 830 с.

К вопросу оценки количества информации: Корреляционный подход Функция взаимной корреляции двух функций Обобщенная частота К вопросу оценки количества информации: Корреляционный подход Функция взаимной корреляции двух функций Обобщенная частота 2014 15

Ценность информации ü Ценность информации зависит от цели, которую преследует рецептор ü Чем в Ценность информации ü Ценность информации зависит от цели, которую преследует рецептор ü Чем в большей мере информация помогает достижению цели, тем более ценной она считается Чернавский Д. С. Синергетика и информация. Динамическая теория информации. Изд. 3 -е, доп. – М. : URSS, 2009. – 300 С. ISBN 978 -5 -397 -00207 -3. 2014 16

Количественное определение ценности информации 1. 2. Если цель наверняка достижима и притом несколькими путями, Количественное определение ценности информации 1. 2. Если цель наверняка достижима и притом несколькими путями, то возможно определение ценности (V) по уменьшению материальных или временных затрат, благодаря использованию информации [1]. Если условие достижения цели не является обязательным: а) [2], [3] б) [4] Ценность информации можно понимать, как количество ценной информации. Важно помнить, что ценность информации понятие субъективное [1] Стартонович Р. Л. Теория информации. М. : "Сов. радио", 1975. - 424 С. [2] Бонгард М. М. Проблемы узнаванияю М. : Наука, 1967. - 321 с. [3] Харкевич А. А. О ценности информации // Проблемы кибернетики. 1960. В. 4. [4] Корогодин В. И. Информация и феномен информации. Пущино: 2007. 197 С. 2014 17

Микро- и макро-информация Ø Макроиформация – запомненный выбор одного варианта из нескольких возможных; запоминание Микро- и макро-информация Ø Макроиформация – запомненный выбор одного варианта из нескольких возможных; запоминание означает, что сделанный выбор сохраняется в течение времени, которое больше, чем характерное время использования данной информации. Ø Микроинформация – незапомненный выбор одного варианта из нескольких возможных. Это означает, что данный выбор существует в течение не более пикосекунд, а далее забывается. 2014 18

Условная и безусловная информация • Примером условной информации может являться информация о языке, на Условная и безусловная информация • Примером условной информации может являться информация о языке, на котором мы говорим (алфавит, словарь, грамматика). Условность подчеркивается тем, что в другом социуме существует другой язык, который имеет свои алфавит, набор правил и прочее. И он может быть не хуже и не лучше нашего. • Безусловной называется информация о реально происходящих событиях. Например, информация о том, что Земля круглая и вращается вокруг солнца является безусловной информацией. 2014 19

Классификация вычислителей Вычисления и вычислители Аналоговые Представление данных Точность представления данных и вычислений Объем Классификация вычислителей Вычисления и вычислители Аналоговые Представление данных Точность представления данных и вычислений Объем и скорость вычислений Гибкость, универсализм Цифровые Квантовые Биологические Нейрокомпь (ДНК) ютеры ? Аналоговое Дискретное Определяется относительно максимальног о значения операнда + Определяется ? относительно шага дискретизации. ? + ? 2014 20

Классификация вычислителей Вычисления и вычислители Параллельные Последовательные Аналоговые Цифровые Квантовые 2014 Молекулярные (ДНК) Нейро- Классификация вычислителей Вычисления и вычислители Параллельные Последовательные Аналоговые Цифровые Квантовые 2014 Молекулярные (ДНК) Нейро- 21

Цифровой компьютер (ЦК). Определения • • 1. 2. 3. Цифровой компьютер – машина, которая Цифровой компьютер (ЦК). Определения • • 1. 2. 3. Цифровой компьютер – машина, которая может решать задачи, выполняя данные ей команды. Последовательность команд, описывающих решение определённой задачи, называется программой. [1] ЭВМ - устройство, которое принимает данные, обрабатывает их в соответствии с хранимой программой, генерирует результаты и обычно состоит из блоков ввода/вывода, памяти, арифметики, логики и управления. [2] ЭВМ - искусственная (инженерная) машина, предназначенная для вычислений на основе алгоритмов. [3] Основное назначение ЦК – выполнение вычислений, формализованных в виде алгоритма (программы). Следовательно, именно свойства алгоритмов, вкупе с наличествующей элементной базой, и определяют принципы построения ЦК – его архитектуру. Таненбаум Э. , Остин Т. Архитектура компьютера // 6 -е издание. — СПб. : Питер, 2013. — 811 с. , илл. — ISBN: 978 -5 -496 -00337 -7. Цилькер Б. Я. , Орлов С. А. Организация ЭВМ и систем // Учебник для вузов. — СПб. : Питер, 2004. — 668 с. : ил. ISBN 5 -94723 -759 -8 С. А. Майоров, Г. И. Новиков Принципы организации цифровых машин // Машиностроение, 1974. 434 С. 2014 22

Определения • АЛГОРИТМ [от algorithm!; algorismus, первоначально — лат. транслитерация имени ср. -азиат. учёного Определения • АЛГОРИТМ [от algorithm!; algorismus, первоначально — лат. транслитерация имени ср. -азиат. учёного 9 в. Хорезми (Мухаммед бен Муса аль-Хорезми)], программа, определяющая способ поведения (вычисления); система правил (предписаний) д ля эффективного решения задач. [1] 1. http: //dic. academic. ru/dic. nsf/enc_philosophy/4131/АЛГОРИТМ 2014 23

Стандартный цикл работы вычислителя 1. выборка инструкции из основной памяти; 2. выборка операндов из Стандартный цикл работы вычислителя 1. выборка инструкции из основной памяти; 2. выборка операндов из оперативной памяти и/или регистров; 3. выполнение инструкции; 4. фиксация результата – запись в память, регистр, вывод. 2014 24

Иерархическая организация ЦК Проблема: компьютеру доступны только команды на машинном языке (язык нулевого уровня Иерархическая организация ЦК Проблема: компьютеру доступны только команды на машинном языке (язык нулевого уровня - Я 0), люди формулируют задачи и методы их решения на другом языке (язык уровня N – ЯN, например, Я 1). Два способа решения проблемы: ИНТЕРПРЕТАЦИЯ Создание на Я 0 программы, получающей в качестве входных данных программы, написанные на Я 1. Каждая команда Я 1 обрабатывается поочередно исполнением соответствующего набора команд Я 0. Программа на Я 0 – интерпретатор. При интерпретации каждая команда на Я 1 перекодируется на Я 0 и сразу же исполняется. Новая программа на Я 0 не создается. ТРАНСЛЯЦИЯ Исполнение программы, написанной на Я 1, заменой каждой команды из Я 1 эквивалентным набором команд на Я 0 Вся программа на Я 1 преобразуется в программу на Я 0, программа на Я 1 отбрасывается, а новая программа на Я 0 загружается в память и исполняется. Для каждого уровня языка можно ввести понятие виртуальной машины соответствующего уровня ЯN – МN. Проблема: для эффективной трансляции и/или интерпретации языки Я 0 и Я 1 должны быть близки между собой. Но это значит, что Я 1 далек от естественного языка (ЕЯ). Отсюда вытекает многоуровневая организация как средство решения этой проблемы (Рис. 2). [2] 2014 25

Иерархическая организация ЦК Уровень N Виртуальная машина МN с машинным языком ЯN Программы на Иерархическая организация ЦК Уровень N Виртуальная машина МN с машинным языком ЯN Программы на ЯN либо интерпретируются МN-1, либо транслируются на ЯN-1 Уровень 2 Виртуальная машина М 2 с машинным языком Я 2 Программы на Я 2 либо интерпретируются М 1, либо транслируются на Я 1 Уровень 1 Виртуальная машина М 1 с машинным языком Я 1 Программы на Я 1 либо интерпретируются М 0, либо транслируются на Я 0 Уровень 0 Виртуальная машина М 0 с машинным языком Я 0 Программы Я 0 непосредственно выполняются электронными схемами 2014 26

Иерархическая организация ЦК Уровень 5 Уровень языка прикладных программистов Трансляция (компилятор) Уровень 4 Уровень Иерархическая организация ЦК Уровень 5 Уровень языка прикладных программистов Трансляция (компилятор) Уровень 4 Уровень ассемблера Трансляция (Ассемблер) Уровень 3 Уровень операционной системы Частичная интерпретация (операционная система) Уровень 2 Уровень архитектуры набора команд Интерпретация (микропрограмма) или непосредственное выполнение Уровень 1 Уровень микроархитектуры Аппаратное обеспечение Уровень 0 Цифровой логический уровень Элементная база Уровень -1 Уровень физических 2014 устройств 27

Иерархическая организация ЦК Уровень 5 Уровень языка прикладных программистов Трансляция (компилятор) Уровень 4 Уровень Иерархическая организация ЦК Уровень 5 Уровень языка прикладных программистов Трансляция (компилятор) Уровень 4 Уровень ассемблера Трансляция (Ассемблер) Уровень 3 Уровень 0 – цифровой логический уровень. На этом уровне объекты называются вентилями. У каждого вентиля есть один или несколько входов, на которые поступают бинарные сигналы (0 или 1), вентиль вычисляет простые функции этих сигналов, например, НЕ (отрицание), И (дизъюнкция), ИЛИ (конъюнкция). Несколько вентилей формируют 1 бит памяти, который может содержать 0 или 1. Биты памяти объединяют в группы по 16, 32 или 64 бита – это регистры. Каждый регистр может содержать одно число в двоичном формате. Уровень операционной системы Частичная интерпретация (операционная система) Уровень 2 Уровень архитектуры набора команд Интерпретация (микропрограмма) или непосредственное выполнение Уровень 1 Уровень микроархитектуры Аппаратное обеспечение Уровень 0 Цифровой логический уровень Элементная база Уровень -1 Уровень физических 2014 устройств 28

Иерархическая организация ЦК Уровень 1 – уровень микроархитектуры. Образуется наборами регистров (8 или 32), Иерархическая организация ЦК Уровень 1 – уровень микроархитектуры. Образуется наборами регистров (8 или 32), которые формируют локальную память и арифметико-логическое устройство (АЛУ). АЛУ реализует арифметические операции. Регистры вместе с АЛУ формируют тракт данных. Базовая операция тракта данных – выбирается один или два регистра (в зависимости от того, какая операция – одноместная (отрицание) или двухместная (сложение) выполняется), над операндами выполняется операция и результат помещается в регистр результата операции. Работа тракта данных может контролироваться особой программой – микропрограммой (на старых моделях), а может управляться напрямую аппаратными средствами (в современных моделях). Если тракт данных контролируется микропрограммой, то на этом уровне обычно находится программный интерпретатор и это уровень микропрограммирования. икропрограмма М – интерпретатор команд на уровне 2. Она последовательно считывает команды из памяти и исполняет их, использую тракт данных. Уровень 5 Уровень языка прикладных программистов Трансляция (компилятор) Уровень 4 Уровень ассемблера Трансляция (Ассемблер) Уровень 3 Уровень операционной системы Частичная интерпретация (операционная система) Уровень 2 Уровень архитектуры набора команд Интерпретация (микропрограмма) или непосредственное выполнение Уровень 1 Уровень микроархитектуры Аппаратное обеспечение Уровень 0 Цифровой логический уровень Элементная база Уровень -1 Уровень физических 2014 устройств 29

Логическая эквивалентность аппаратного и программного обеспечения Программы, написанные на машинном языке (Я 1) могут Логическая эквивалентность аппаратного и программного обеспечения Программы, написанные на машинном языке (Я 1) могут непосредственно, т. е. без использования интерпретаторов и трансляторов) исполняться электронными устройствами М 0. Эти электронные устройства, включая память и средства ввода-вывода, т. е. реальные материальные устройства, формируют аппаратное обеспечение вычислителя. Программное обеспечение – модели, алгоритмы, программы. Любая команда (операция) может быть выполнена либо программно, либо аппаратно. Баланс между программным и аппаратным обеспечением определяется по критерию стоимость/эффективность и смещается в зависимости как от задачи, так и от уровня развития элементной базы. 2014 30

Иерархическая организация ЦК Уровень 5 Уровень языка прикладных программистов Трансляция (компилятор) Уровень 4 Уровень Иерархическая организация ЦК Уровень 5 Уровень языка прикладных программистов Трансляция (компилятор) Уровень 4 Уровень 2 – уровень архитектуры набора команд. Этот уровень, в отличие от более низких, уже доступен пользователю, так как он публикуется в руководствах к компьютерам. Описываемые в этих руководствах наборы команд на самом деле не команды машинного уровня, так как в реальности они исполняются микропрограммами-интерпретаторами или аппаратным обеспечением. Уровень ассемблера Трансляция (Ассемблер) Уровень 3 Уровень операционной системы Частичная интерпретация (операционная система) Уровень 2 Уровень архитектуры набора команд Интерпретация (микропрограмма) или непосредственное выполнение Уровень 1 Уровень микроархитектуры Аппаратное обеспечение Уровень 0 Цифровой логический уровень Элементная база Уровень -1 Уровень физических 2014 устройств 31

Иерархическая организация ЦК Уровень 3 – уровень операционной системы. (гибридный) - большинство команд этого Иерархическая организация ЦК Уровень 3 – уровень операционной системы. (гибридный) - большинство команд этого уровня наличествуют также и на предыдущем уровне – архитектуры набора команд. Особенности уровня: - новый набор команд; - другая организация памяти; - возможность исполнения нескольких программ одновременно; - ряд иных. Тем самым на этом уровне обеспечивается большее разнообразие, чем на предыдущих. Исполнение новых средств и команд уровня 3 обеспечивает работающий на уровне 2 интерпретатор, называющийся операционной системой (ОС). Те команды уровня 3, что идентичны командам уровня 2, ОС не задействуют и исполняются микропрограммой или аппаратно. Поэтому уровень ОС часто определяется как гибридный. [2] Уровень 5 Уровень языка прикладных программистов Трансляция (компилятор) Уровень 4 Уровень ассемблера Трансляция (Ассемблер) Уровень 3 Уровень операционной системы Частичная интерпретация (операционная система) Уровень 2 Уровень архитектуры набора команд Интерпретация (микропрограмма) или непосредственное выполнение Уровень 1 Уровень микроархитектуры Аппаратное обеспечение Уровень 0 Цифровой логический уровень Элементная база Уровень -1 Уровень физических 2014 устройств 32

Иерархическая организация ЦК Уровень 5 Уровень языка прикладных программистов Трансляция (компилятор) Уровень 4 – Иерархическая организация ЦК Уровень 5 Уровень языка прикладных программистов Трансляция (компилятор) Уровень 4 – символическая форма языков более низкого уровня. Символический язык транслируется в язык более низкого уровня (цифровой) ассемблером. Уровень 4 Уровень ассемблера Трансляция (Ассемблер) Уровень 3 Уровень операционной системы Частичная интерпретация (операционная система) Уровень 2 Уровень архитектуры набора команд Интерпретация (микропрограмма) или непосредственное выполнение Уровень 1 Уровень микроархитектуры Аппаратное обеспечение Уровень 0 Цифровой логический уровень Элементная база Уровень -1 Уровень физических 2014 устройств 33

Иерархическая организация ЦК Уровень 5 – уровень языков высокого уровня. Язык высокого уровня – Иерархическая организация ЦК Уровень 5 – уровень языков высокого уровня. Язык высокого уровня – язык для прикладных программистов. Эти языки транслируются на низшие уровню компиляторами, хотя иногда используются и интерпретаторы, в частности. Для конкретной прикладной области, например, символической логики. Уровень 5 Уровень языка прикладных программистов Трансляция (компилятор) Уровень 4 Уровень ассемблера Трансляция (Ассемблер) Уровень 3 Уровень операционной системы Частичная интерпретация (операционная система) Уровень 2 Уровень архитектуры набора команд Интерпретация (микропрограмма) или непосредственное выполнение Уровень 1 Уровень микроархитектуры Аппаратное обеспечение Уровень 0 Цифровой логический уровень Элементная база Уровень -1 Уровень физических 2014 устройств 34

Иерархическая организация ЦК Уровни 1 -3 4 -5 Использование Системные программисты Прикладные программисты Механизмы Иерархическая организация ЦК Уровни 1 -3 4 -5 Использование Системные программисты Прикладные программисты Механизмы Интерпретаторы поддержки более высоких уровней Трансляторы Машинные языки Символьные Цифровые 2014 35

Определения • • • 1. 2. «Архитектура» - представление возможностей ЦК с точки зрения Определения • • • 1. 2. «Архитектура» - представление возможностей ЦК с точки зрения пользователя, разрабатывающего программу на машинно-ориентированном языке. Соответственно, архитектура отражает те стороны структуры и функционирования ЦК, что существенны и видимы для такого программирующего пользователя в контексте разрабатываемых им программ. Архитектура – совокупность характеристик ЦК, существенных с точки зрения пользователя [1]. Ключевой момент здесь – способ использования ЦК. Архитектура – логическое построение вычислителя, как оно представляется программисту, разрабатывающему программу на машинно-ориентированном языке Другая формулировка: Архитектура – совокупность общих принципов организации аппаратно-программных средств и их характеристик, определяющая функциональные возможности вычислителя при решении соответствующих классов задач. Архитектура определяет возможности ЦК, а организация – реализацию этих возможностей в конкретных моделях. Правомочность такого подхода видна при сравнении моделей, принадлежащих одному семейству – как правило, эти модели обладают одной архитектурой, но разной структурной организацией [2]. Карцев М. А. Архитектура цифровых вычислительных машин // М. : Наука, 1978. – 295 С. У. Столлингс. Структурная организация и архитектура компьютерных систем, 5 -е изд. М. : Вильямс, 2002, 896 с 2014 36

Определения Термин «архитектура» относится к тем характеристикам ЦК или системы, которые доступны извне, то Определения Термин «архитектура» относится к тем характеристикам ЦК или системы, которые доступны извне, то есть со стороны программы или, с другой точки зрения, оказывает непосредственное влияние на логику выполнения программ. Под термином «структурная организация» ЦК или системы подразумевается совокупность операционных блоков (устройств) и их взаимосвязей, обеспечивающих реализацию спецификаций, заданных архитектурой ЦК. 2014 37

Архитектура и системная организация Основными компонентами архитектуры вычислительных машин и систем принято считать следующие Архитектура и системная организация Основными компонентами архитектуры вычислительных машин и систем принято считать следующие компоненты: • • • Вычислительные и логические возможности – Система команд – Формат команд - то, из чего состоит команда – Способы адресации – Назначение и состав регистров Аппаратные средства – Структура – Организация памяти – Организация ввода-вывода – Принципы управления Программное обеспечение – ОС – Языки программирования – Прикладное ПО Характеристики структурной организации включают скрытые от программиста детали аппаратной реализации системы: • управляющие сигналы, • аппаратный интерфейс между компьютером и периферийным оборудованием, • технологию функционирования памяти. А где здесь логика? 2014 38

Архитектура и системная организация Организация ЦК. • Структурная организация определяет устройство ЦК - задает Архитектура и системная организация Организация ЦК. • Структурная организация определяет устройство ЦК - задает структуру на уровне устройств ЦК и организацию связей между этими устройствами на уровне аппаратных интерфейсов. • Функциональная организация определяет принципы функционирования ЦК, т. е. собственно вычислительные процессы. Два уровня представления архитектуры ЦК: • программная архитектура включает в себя аспекты, видимые программистам и, соответственно, программам • аппаратная архитектура включает аспекты, невидимые для программиста. В этом смысле понятие аппаратной архитектуры и структурной организации ЦК можно рассматривать как синонимы. В связи с делением программистов на прикладных и системных, программную архитектуру также можно разделить на 2 вида: прикладную и системную. 2014 39

Основные элементы архитектуры и структурной организации ЦК ЦК Организация Архитектура Функциональная Программная Аппаратная Прикладная Основные элементы архитектуры и структурной организации ЦК ЦК Организация Архитектура Функциональная Программная Аппаратная Прикладная Структурная Организация устройств Системная Процессор Типы и форматы Организация прерываний Программная модель процессора Организация вводавывода Адресная структура памяти Организация виртуальной памяти Режимы адресации Организация защиты памяти Структура и формат машинных команд Организация многозадачного режима работы процессора Система команд +++ Организация связей (интерфейсы) Регистры 2014 Программно-доступные Программно-недоступные Прикладные Системные АЛУ FPU Блок обработки векторных данных Конвейер команд УУ (БМПУ) Память 40 Устройства ввода-вывода

Продолжение схемы Память Многоуровневая организация Cash-память Основная память Внешняя память Устройства ввода-вывода Организация обмена Продолжение схемы Память Многоуровневая организация Cash-память Основная память Внешняя память Устройства ввода-вывода Организация обмена с памятью Контроллеры Каналы ввода - вывода 2014 41

Гарвардская и Принстонская архитектуры ЦК • Гарвардская архитектура (1944, Говард Эйкен. США) –Память для Гарвардская и Принстонская архитектуры ЦК • Гарвардская архитектура (1944, Говард Эйкен. США) –Память для инструкций и данных – разные физические устройства; –Каналы передачи инструкций и данных – разные физические устройства; –Инструкции и данные могут представляться в разных форматах • • И инструкции, и данные представляются и обрабатываются в одном формате; И инструкции, и данные хранятся в одной (основной) памяти; Линейная организация памяти – машинные слова расположены строго последовательно в виде одномерного массива в едином упорядоченном пространстве адресов, каждый адрес имеет последовательный номер 0, 1, 2 …; Последовательное выполнение – инструкции извлекаются изпамяти и выполняются последовательно до тех пор, пока не встретится специальная инструкция перехода; Семантическая неразличимость кодов – во внутреннем машинном представлении не содержится никакой информации, позволяющей отделить инструкции от данных, равно как, и данные различных типов; Электронная реализация – компьютер полностью электронное устройство; Фиксированная организация – в процессе вычислений топология, архитектура и список команд не меняются. 2014 42

Гарвардская архитектура ЦК Основное отличие – в ГА линии передачи команд и данных физически Гарвардская архитектура ЦК Основное отличие – в ГА линии передачи команд и данных физически разделены. В ЦК «Марк I» инструкции хранились на перфоленте, а данные обрабатывались релейными (электромеханическими) регистрами. Память программ Память данных Стек Память (ПЗУ или ОЗУ) Инструкций (программ) ША ШД Дешифратор инструкций (команд, программ) ШУ Процессор и интерфейс к блоку регистров ШО 1 ШО 2 Блок регистров (регистровое ОЗУ) ШЗР 2014 43

Принстонская архитектура ЦК Дешифратор команд ПЗУ программ ОЗУ данных Стековое ОЗУ Данные Блок интерфейса Принстонская архитектура ЦК Дешифратор команд ПЗУ программ ОЗУ данных Стековое ОЗУ Данные Блок интерфейса с памятью Процессор и внутренние регистры Адреса Упр. С 2014 44

Обобщенная структурная схема ЦК (классическая фон Неймановская). У-во упр. У-во Ввода АЛУ Память У-во Обобщенная структурная схема ЦК (классическая фон Неймановская). У-во упр. У-во Ввода АЛУ Память У-во Вывода Данные Сигналы управления Команды Устройство управления организует автоматическое выполнение программ и функционирование вычислителя. Основная задача - выработка управляющих сигналов и их распределение по цепям управления. Арифметическо-логическое устройство (АЛУ) предназначено для выполнения арифметических и логических операций над поступающими данными. Память представляет собой массив запоминающих элементов, организованных в виде запоминающих ячеек и способных хранить некоторую единицу информации. Устройство ввода преобразует входящую информацию в последовательность электрических сигналов. Устройство вывода преобразует последовательность электрических сигналов в форму, удобную для восприятия пользователем. Вместе устройство управления и АЛУ образуют центральный процессор (ЦП). 2014 45

Обобщенная структурная схема ЦК (классическая фон Неймановская). У-во упр. У-во Ввода АЛУ Память У-во Обобщенная структурная схема ЦК (классическая фон Неймановская). У-во упр. У-во Ввода АЛУ Память У-во Вывода Данные Сигналы управления Команды Концепция Фон Неймановской архитектуры предусматривает единственность АЛУ и одну основную память. Это обстоятельство существенно усложняет реализацию параллельных алгоритмов. Недостатки Информация попадает в память через АЛУ без изменений, занимая аппаратные ресурсы. Наличие в памяти 2 х типов: данные и команды. Достоинства 2014 46 Данные поступают в память из одного источника. Тоже происходит и при выводе

Обобщенная структурная схема ЦК с прямым доступом к памяти У-во упр. У-во Ввода АЛУ Обобщенная структурная схема ЦК с прямым доступом к памяти У-во упр. У-во Ввода АЛУ У-во Вывода Данные Сигналы управления Команды Память Необходима система прерываний и приоритетов, что усложняет архитектуру в 2 раза! 2014 47

Обобщенная структурная схема ЦК с каналом вводавывода данных (фон Неймановская архитектура с Main Frame) Обобщенная структурная схема ЦК с каналом вводавывода данных (фон Неймановская архитектура с Main Frame) У-во упр. У-во Ввода АЛУ У-во Вывода Память По этой схеме реализуется большинство больших ЦК. Канал ввода-вывода организует буферизацию данных. 2014 48

Принцип программного управления • Принцип программного управления заключается в том, что после сообщения ЦК Принцип программного управления • Принцип программного управления заключается в том, что после сообщения ЦК адреса первой команды программы и занесения тела этой команды в регистр команд, программа управляет сама собой. Далее никакого внешнего управления не требуется. Этот принцип выполняется как на уровне команд, так и на уровне микрокоманд. 2014 49

Принцип программного управления Для того чтобы обеспечить последовательное выполнение команд выполняется следующее: К адресу Принцип программного управления Для того чтобы обеспечить последовательное выполнение команд выполняется следующее: К адресу первой команды прибавляется её длина (в байтах), таким образом определяется адрес второй команды. После выполнения второй команды к её адресу прибавляется её длина и определяется адрес третей команды и. т. д. Если процесс нарушается, выполняется процесс условного перехода. 2014 50

Принцип программного управления заключается в том, что после сообщения машине адреса первой команды программы Принцип программного управления заключается в том, что после сообщения машине адреса первой команды программы и занесения тела этой команды в регистр команд, программа управляет сама собой. Далее никакого внешнего управления не требуется. Этот принцип выполняется как на уровне команд, так и на уровне микрокоманд. Программа: Микрокоманда 1 Микрооперация 1 К 2 Микрокоманда 2 Микрооперация 2 К 3 Микрокоманда 3 Микрооперация 3 … … Микрокоманда М Микрооперация М А 1 К 1 А 1+А 2 … КN КОП А 1 Микропрограмма: А 2 Регистр команд А 3 Код операции – код, находящийся в оперативной части; определяет какая именно операция выполняется. занимает 8 бит Микрооперация – элементарное действие внутри Вычислительной Машины. Адресная часть – часть, где хранятся адреса. команды бывают одно-, двух-, трехадресные и безадресные (используются для уменьшения числа обращений к оперативной памяти) Регистр команд – регистр, после помещения в который, тело команды начнет выполняться. Команды дробятся на микрокоманды. Микрокоманды и микрооперации находятся в постоянной памяти. 2014 51 Каждой микрокоманде может соответствовать одна или несколько микроопераций