Суббота, 05.07.2025, 07:14
Приветствую Вас Гость | RSS

Рефераты для вузов скачать бесплатно

Меню сайта
Наш опрос
Оцените мой сайт
Всего ответов: 72
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Форма входа

Главная » 2012 » Январь » 13 » Курсовая работа: Проектування комп'ютера
12:10
Курсовая работа: Проектування комп'ютера

Название: Проектування комп'ютера
Раздел: Рефераты по информатике, программированию
Тип: курсовая работа Добавлен 04:58:17 07 февраля 2011 Похожие работы
Просмотров: 15 Комментариев: 0 Оценило: 0 человек Средний балл: 0 Оценка: неизвестно     Скачать

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”

КАФЕДРА "ЕЛЕКТРОННІ ОБЧИСЛЮВАЛЬНІ МАШИНИ"

 

 

 

 

 

Пояснювальна записка

до курсової роботи з дисципліни

Архітектура комп’ютерівна тему:

Проектування комп’ютера

 

 

 

 

Виконав:

ст. гр. КІ-34

Тітко М. І.

Прийняла:

ст. викл.

Ногаль М. В.

Львів 2010


Анотація

Курсовий проект з дисципліни "Архітектура комп’ютера являє собою підсумок у вивченні предмету "Архітектура комп’ютерів ч.1". Протягом його виконання необхідно засвоїти знання про принципи дії та архітектуру прототипних варіантів CISC - комп’ютера. Також під час виконання курсово роботи необхідно зрозуміти та опанувати інструкції асемблерної мови і принцип трансляц асемблерної програми у машинний код.

Даний курсовий проект складається з трьох частин:

ü  Розробка програми-асемблера, яка перетворює вхідний асемблерний код програми у відповідний код на мові машинних інструкцій.

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

ü  Розробка тестової програми на асемблерній мові.

Також до записки з курсової роботи входять додатки, з вихідними кодами програми-асемблера, симулятора і кодом тестової програми з результатами виконання.


Зміст

Вступ

Система команд

Способи адресації

Вихідні дані на проектування

Роз'яснення та аналіз основних принципів побудови комп'ютерів на прикладі визначених на реалізацію нструкцій

Перевірка правильності роботи реалізованих команд у прикладах

Висновок

Література

Додатки


Вступ

Архітектурні принципи

В ході виконання даного курсового проекту студент має ознайомитись та опанувати архітектуру CISC - комп’ютера. Приведемо основні принципи даної архітектури, які запропонував Джон фон Нейман:

1.  Інформація кодується в двійковому представленні.

2.  Інформація в комп’ютері ділиться на команди і дані.

3.  Різнотипні за змістом слова розрізняються за способом застосування, а не по способу кодування.

4.  Слова інформації розміщаються в комірках пам’яті та дентифікуються номерами комірок - адресами слів.

5.  Пам’ять є лінійною.

6.  Пам’ять має довільну адресацію.

7.  Команди і дані зберігаються в одній пам’яті.

8.  Алгоритми представляються у вигляді послідовності керуючих слів, як називаються командами. Команда визначається найменуванням операції та слів нформації, які в ній приймають участь. Алгоритм записаний у вигляді послідовност команд, називається програмою.

9.  Весь набір виконуваних комп’ютером команд називається системою команд комп’ютера.

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

Для виконання задачі на комп’ютері необхідно:

-  забезпечити вибірку команди програми із його пам’яті в заданій послідовності, організувати звернення до неї за відповідними адресами;

-  забезпечити розпізнавання типів виконуваних операцій;

-  організувати звернення до пам’яті за відповідними адресами для вибірки необхідних для виконання кожної команди даних;

-  організувати виконання над даними операцій відповідно до вказівок команд;

-  запам’ятати результат обчислень.

Комп'ютер виконує кожну команду як послідовність простих операцій:

1.  Вибірка чергової команди із основної пам'яті.

2.  Визначення типу вибраної команди, тобто її дешифрування.

3.  Визначення адрес даних, необхідних для виконання ц команди.

4.  Виконання операцій пересилання даних (зчитування даних з пам'яті в регістри процесора).

5.  Виконання операції відповідно до її коду в полі коду операції команди.

6.  Визначення адрес, за якими запам'ятовуються результати.

7.  Запам'ятовування результатів.

8.  Підготовка до виконання наступної команди, тобто обчислення адреси.

Для процесора комп'ютера із складною системою команд характерні наступні

особливості:

-  виконання команди за багато тактів, оскільки для цього потрібно здійснити багаторазові операц звернення до основної пам'яті та до програмно-доступних регістрів процесора;

-  орієнтація АЛП на виконання великої кількості операцій, що пов'язано з розширеним складом системи команд;

-  складна система розпізнавання команди, що пов'язано з великою кількістю методів адресації та великою кількістю форматів команд різної розрядності;

-  програмне дешифрування команд з метою зменшення затрат обладнання;

-  складна організація конвеєризації виконання команд, що пов'язано, в першу чергу, з різнотипністю їх виконання;

-  орієнтація структури на виконання команд типу регістр-пам'ять та пам'ять-пам'ять.

Основні елементи процесора - арифметико-логічний пристрій, пристрій керування і регістрова пам'ять або, як її ще називають, надоперативний запам'ятовуючий пристрій. До складу регістрової пам'яті, в свою чергу, входять наступн вузли - програмний лічильник, регістри: адреси, команди, даних, слова стану програми, а також регістровий файл, який складається з програмно доступних регістрів.

Структура регістрової (надоперативної) пам'ят процесора складається з регістрів спеціального та зального призначення. До регістрів спеціального призначення належать:

-  регістри адреси (РгА);

-  регістри команд (РгК);

-  програмний лічильник (ПЛ)

-  регістри даних (РгД).

РгА зберігає адресу даного або команди при зверненн до основної пам'яті. РгД зберігає операнд при його запису або зчитуванні з основно пам'яті. В ролі операнда може бути дане, команда або адреса. РгК зберігає команду після її зчитування з основної пам'яті. ПЛ підраховує команди та зберігає адресу поточної команди. Комп'ютер з архітектурою Джона фон Неймана має один програмний лічильник.

Більшість комп'ютерів мають в складі процесора тригери для зберігання бітів стану процесора, або, як їх іще називають, прапорців. Кожен прапорець має спеціальне призначення. Частина прапорців вказує на результати арифметичних і логічних операцій: додатній результат (Р), від'ємний результат (N), нульовий результат (Z), перенос (С), арифметичне переповнення (V), і т.д. В систем команд комп'ютера є команди, які вказують процесору коли встановити чи скинути ц тригери. Інша частина прапорців вказує режими захисту пам'яті. Існують також прапорці, які вказують пріоритети виконуваних програм. В деяких процесорах додаткові тригери служать для зберігання кодів умов, формуючи регістр кодів умов. Взяті разом описан прапорці формують слово стану програми (ССП), а відповідні тригери - регістр ССП. Регістри загального призначення (РЗП) є програмно доступними. Зазвичай їх називають регістровим файлом. Вони можуть використовуватись програмістом в якості регістрів для зберігання даних.


Система команд

Різноманітність типів даних, форм представлення та опрацювання, необхідні дії для обробки та керування ходом виконання обчислень призводить до необхідності використання різноманітних команд - набора команд.

Кожен процесор має власний набір команд, який називається системою команд процесора.

Система команд характеризується трьома аспектами:

-  формат,

-  способи адресації,

-  система операцій.

Форматом команди - є довжина команди, кількість, розмір, положення, призначення та спосіб кодування полів. Команди мають включати наступні види інформації:

-  тип операції, яку необхідно реалізувати в даній команді (поле команду операції - КОП);

-  місце в пам’ят звідки треба взяти перший операнд (А1);

-  місце в пам’ят звідки треба взяти другий операнд (А2);

-  місце в пам’ят куди треба помістити результат (А3).

Кожному з цих видів нформації відповідає своя частина двійкового слова - поле. Реальна система команд зазвичай має команди декількох форматів, тип формату визначає КОП.

Команда в комп'ютері зберігається в двійковій формі. Вона вказує тип операції, яка має бути виконаною, адреси операндів, над якими виконується операція, та адреси розміщення результатів виконання операції. Відповідно до цього команда складається з двох частин, коду операції та адресної частини.

КОП займає k розрядів. Ним може бути закодовано до N = 2k різних операцій. Кількість двійкових розрядів, які відводяться під код операції, вибирається таким чином, щоб ними можна було закодувати всі виконуван в даному комп'ютері операції. Якщо деякий комп'ютер може виконувати Nc різних операцій, то мінімальна розрядність поля коду операції k визначається наступним чином: k = [log Nc], де вираз в дужках означає заокруглення до більшого цілого.

Поле адреси (адресна частина) займає m розрядів. В ньому знаходяться адреси операндів. Кожна адреса займає mi розрядів, де і - номер адреси (і=1,2,. n), n - кількість адресних полів. Кожною адресою можна адресувати пам'ять ємністю 2 слів.

Розмір команди k m повинен бути узгодженим з розміром даних, тобто бути з ним однаковим або кратним цілому числу, що спрощу організацію роботи з пам'яттю. Як правило, розмір команди рівний 8, 16, 32 біти.

При написанні програми крім двійкової можуть використовуватись й інші форми представлення команд: вісімкова, шістнадцяткова, символьна (мнемонічна). Використання вісімкового і шістнадцяткового кодування дозволяє скоротити записи спростити роботу програміста. Як відомо 3 двійкових розряди (тріада) замінюються на 1 вісімковий, а 4 двійкових розряди (тетрада) - на 1 шістнадцятковий. Приклад:

(000011111111) 2= (0377) 8= (0FF) 16;

Мнемонічне кодування спрощу процес написання, читання і відлагодження програми. Основний принцип такого кодування - кожна команда представляється 3-х або 4-х буквеним символом, який показує назву команди. Деякі приклади мнемонічного кодування:

ADD - додати (add),

SUB - відняти (subtract),

MPY - перемножити (multiply),

DIV - поділити (divide).

Операнди також представляються символічно. Наприклад команда ADD R Y означає додавання вмісту комірки пам'яті Y до вмісту регістра R. Зауважимо, що операція виконується над вмістом, а не над адресою комірки пам'ят та регістра.

Таким чином, з'являється можливість написання машинних програм в символічній формі. Повний набір символічних назв і правила їх використання утворюють мову програмування, відому як асемблерна мова. Символічні імена називаються мнемонічними, а правила їх використання для створення команд і програм називаються синтаксисом мови.

Програма, яка переводить із мнемонічного коду асемблерно мови в машинний, називається асемблером. Команди, які використовуються для переводу вихідної програми в асемблерну, називаються командами асемблера. Ці команди вказують як інтерпретувати назви, де розмістити програму в пам'яті, яка кількість комірок пам'яті необхідна для зберігання даних.

 

Способи адресації

Варіанти інтерпретації бітів (розрядів) поля адреси з метою знаходження операнда називаються способами адресації. Коли команда вказує на операнд, він може знаходитись в самій команді, в основній або зовнішній пам'яті чи в регістровій пам'ят процесора. За роки існування комп'ютерів була створена своєрідна технологія адресації, яка передбачає реалізацію різних способів адресації, чому послужило ряд причин: забезпечення ефективного використання розрядної сітки команди; забезпечення ефективно апаратної підтримки роботи з масивами даних; забезпечення задання параметрів операндів; можливість генерації великих адрес на основі малих. Існує велика кількість способів адресації. Розглянемо п’ять основних способів адресації операндів в командах.

Пряма - в цьому випадку адресне поле зберігає адресу операнда. Її різновидом є пряма регістрова адресація, яка адресує не комірку пам’яті а номер регістру.

Безпосередня - в поле адреси команди поміщається не адреса, а сам операнд.

Непряма - в полі адреси команди зберігається адреса комірки пам’яті в якій знаходиться адреса операнда. Такій спосіб дозволяє оперувати з адресами як з даними. Різновид непряма-регістрова адресація, адреса адреси зберігається в регістрі загального призначення.

Відносна - адреса формується, як сума з двох доданків: бази, яка зберігається в спеціальному регістрі чи в одному з регістрів спеціального призначення, та зміщення, яке задається в полі адреси команди. Різновид індексна та базова індексна. При індексній замість базового регістра ндексний, який автоматично модифікується (зазвичай збільшується на 1). Базова-індексна адресація формується адреса як сума трьох доданків: бази, індексу та зміщення.

Безадресна - поле адреси в команді відсутнє. Адреса операнда, або немає змісту або є по замовчуванню (наприклад дії на спеціальним регістром - акумулятором). Безадресні команди неможливо використати для інших регістрів чи комірок пам’яті. Одним з різновидів безадресної адресац використання стеку. В команду вводяться спеціальні ознаки з тим, щоб пристрій керування міг розпізнати використаний спосіб. Це можуть бути додаткові розряди в команді, або для різних типів команд закріплюватись різні способи адресації.

Вихідні дані на проектування
Варіант №9
Арифметичні Логічні Керування Прапорці Адресація
1 2 3 4 5 6 7 8 1 2 3
9 3 5 9 1 2 17 2 10 ZF 2 3 5 1

Скачать Курсовая работа: Проектування комп'ютера

Курсовая работа: Проектування комп'ютера">Скачать Курсовая работа: Проектування комп'ютера одним архивом

Просмотров: 444 | Добавил: kroker77 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Поиск
Календарь
«  Январь 2012  »
Пн Вт Ср Чт Пт Сб Вс
      1
2345678
9101112131415
16171819202122
23242526272829
3031
Архив записей
Друзья сайта