Специализированный компьютер

Автор работы: Пользователь скрыл имя, 18 Мая 2015 в 13:29, курсовая работа

Описание работы

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

Содержание работы

ВВЕДЕНИЕ3
1. РАЗРАБОТКА АРХИТЕКТУРЫ СПЕЦИАЛИЗИРОВАННОГО
КОМПЬЮТЕРА6
1.1. Анализ известных реализаций спецкомпьютеров, формирование
требований к разрабатываемому компьютеру6
1.2. Исследование арифметической функции, решаемой
специализированным компьютером8
1.3. Проектирование системы команд12
1.4. Проектирование ЗУ микрокомпьютера 19
1.5. Разработка обобщенной структуры микроЭВМ на основе системы команд 23
2. ПРОЕКТИРОВАНИЕ ОСНОВНЫХ СТРУКТУРНЫХ КОМПОНЕНТОВ
СХЕМЫКОМПЬЮТЕРА28
2.1. Разработка схемы блока обработки данных28
2.2. Разработка устройства управления32
2.3. Разработка системы ввода-вывода данных35
3. ПРОЕКТИРОВАНИЕ ВНУТРЕННЕГО ИНТЕРФЕЙСА КОМПЬЮТЕРА39
3.1. Включение системы прерываний в схему устройства управления
спецкомпьютера39
3.2. Проектирование системы прямого доступа к памяти40
4. РАЗРАБОТКА МИКРОПРОГРАММНОГО ОБЕСПЕЧЕНИЯ42
4.1. Формат микрокоманды. Микропрограммная интерпретация команд
компьютера42
4.2. Разработка микропрограмм арифметических операций51
4.3. Разработка служебного микропрограммного обеспечения53

ЗАКЛЮЧЕНИЕ59
ЛИТЕРАТУРА60

Файлы: 5 файлов

~$$Схема электрическая принципиальная.~vsd

— 4.00 Кб (Скачать файл)

~$$Схема электрическая структурная.~vsd

— 4.00 Кб (Скачать файл)

Пояснительная записка.docx

— 1.05 Мб (Скачать файл)

 

Для расчета погрешности выполним суммирование членов ряда в табл. 1.2  в соответствии с ростом номеров i в табл. 1.3.

Таблица 1.3.

x\i

1

2

3

4

5

6

7

8

9

1

0

0

0

0

0

0

0

0

0

2

0,5

0,625

0,6667

0,6823

0,6885

0,6911

0,6923

0,6928

0,693

3

0,6667

0,8889

0,9877

1,037

1,0634

1,078

1,0864

1,0912

1,0941

4

0,75

1,0313

1,1719

1,251

1,2984

1,3281

1,3472

1,3597

1,368

5

0,8

1,12

1,2907

1,3931

1,4586

1,5023

1,5323

1,5532

1,5681

6

0,8333

1,1806

1,3735

1,494

1,5744

1,6302

1,6701

1,6992

1,7207

7

0,8571

1,2245

1,4344

1,5693

1,6619

1,728

1,7765

1,813

1,8407

8

0,875

1,2578

1,4811

1,6277

1,7302

1,805

1,8611

1,9041

1,9375

9

0,8889

1,284

1,5181

1,6741

1,7851

1,8673

1,93

1,9787

2,0172

10

0,9

1,305

1,548

1,712

1,8301

1,9187

1,987

2,0408

2,0839


 

Из формата компьютерного слова следует, что максимальное значение функции с учетом разрядности мантиссы М=18 и порядка Р=15 определится формулой:

 

218-1= 262 143

xmax=0, 262143·215= 8589,901824       (1.3)

 

Данному значению функции соответствует максимальное численное значение аргумента ymax=20,396 (по условиям задачи оставляем xmax=10).

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

 

xmin=-1·2-18·2-15=-1·2-23.         (1.4)

 

Расчеты по формуле (1.1) показывают, что значению функции (1.3), соответствует максимальное значение i=27.

Следует, однако, заметить, что процесс расчета 27-х членов ряда задача длительная и не всегда обоснованная. В связи с этим предположим, что допустимая погрешность вычислений равна . Тогда для аргумента x можно записать соотношение:    

 

(1.5)

 

На основании ряда (1.1) при x=2 имеем:

 

0,5+0,125+0,0417+0,0156+…        (1.6)

 

Таким образом, ввод данных в спецкомпьютер должен сопровождаться обращением к служебной таблице 1.3 с определением числа вычислительных циклов, необходимых для расчета функции ln(x) для конкретного x. В простейшем случае число членов ряда выбирается равным 27.

Тогда по формуле (1.5) найдем ряд погрешностей для значений i лежащих в интервале [0;10] и занесём значения в таблицу1.4.

 

Таблица 1.4.

x\sum

1

2

3

4

5

6

7

8

0,1

-0,9000

-1,3050

-1,5480

-1,7120

-1,8301

-1,9187

-1,9870

-2,0408

0,2

-0,8000

-1,1200

-1,2907

-1,3931

-1,4586

-1,5023

-1,5323

-1,5532

0,3

-0,7000

-0,9450

-1,0593

-1,1194

-1,1530

-1,1726

-1,1843

-1,1916

0,4

-0,6000

-0,7800

-0,8520

-0,8844

-0,9000

-0,9077

-0,9117

-0,9138

0,5

-0,5000

-0,6250

-0,6667

-0,6823

-0,6885

-0,6911

-0,6923

-0,6928

0,6

-0,4000

-0,4800

-0,5013

-0,5077

-0,5098

-0,5105

-0,5107

-0,5108

0,7

-0,3000

-0,3450

-0,3540

-0,3560

-0,3565

-0,3566

-0,3567

-0,3567

0,8

-0,2000

-0,2200

-0,2227

-0,2231

-0,2231

-0,2231

-0,2231

-0,2231

0,9

-0,1000

-0,1050

-0,1053

-0,1054

-0,1054

-0,1054

-0,1054

-0,1054

1,0

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

1,1

0,1000

0,0950

0,0953

0,0953

0,0953

0,0953

0,0953

0,0953

1,2

0,2000

0,1800

0,1827

0,1823

0,1823

0,1823

0,1823

0,1823

1,3

0,3000

0,2550

0,2640

0,2620

0,2625

0,2623

0,2624

0,2624

1,4

0,4000

0,3200

0,3413

0,3349

0,3370

0,3363

0,3365

0,3365

1,5

0,5000

0,3750

0,4167

0,4010

0,4073

0,4047

0,4058

0,4053

1,6

0,6000

0,4200

0,4920

0,4596

0,4752

0,4674

0,4714

0,4693

1,7

0,7000

0,4550

0,5693

0,5093

0,5429

0,5233

0,5351

0,5279

1,8

0,8000

0,4800

0,6507

0,5483

0,6138

0,5701

0,6001

0,5791

1,9

0,9000

0,4950

0,7380

0,5740

0,6921

0,6035

0,6718

0,6180

2,0

1,0000

0,5000

0,8333

0,5833

0,7833

0,6167

0,7595

0,6345


 

Итак, исходя из данных таблицы 1.4 следует, что заданный уровень погрешности вычислений при x=2 не превышается, если расчет функции осуществляется на основании 6 членов ряда.

Погрешность, вносимая ограниченностью разрядной сетки (с учетом бесконечной длины значения функции), будет определяться разностью между эталонным значением ln(x), в нашем случае равным ln(10), и значением, размещаемым в 24-разрядной сетке компьютера:

 

 

 

 

 

Из (1.7) следует, что, то есть может не учитываться как погрешность для данного класса функций.  

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

 

    1. Проектирование системы команд

 

Анализ параметров алгоритмов, как правило, выполняется с использование языковых и программных средств. С этой целью каждой вершине ГСА решаемой задачи ставится в соответствие команда машины. После этого выполняется расширение набора команд с использованием заданных методов адресации и варьирования поля КОП. Полученная система дополняется командами управления работой компьютера, командами ввода-вывода и другими управляющими словами, позволяющими получить требуемые режимы работы компьютера.

Рассмотрим блок-схему алгоритма расчета функции ln(x) в соответствии с формулой (1.1) рис. 1.4. и исследуем методику решения поставленной задачи.

Основной недостаток алгоритма состоит в длительном формировании результата с учетом повторных вычислений операции возведения в степень xy. Выполним модернизацию алгоритма и избавимся от операции возведения в степень xy. Система команд устанавливается путем расстановки возле каждой вершины ГСА мнемонического обозначения команды. Модифицированная ГСА представлена на рисунке 1.5.

В полученной выше граф-схеме удалось избежать долговременных повторных вычислений в команде возведения в степень и заменить её на умножение с накоплением. Общая таблица команд для вычисления ln(x) при этом принимает вид таблицы 1.5.

 

 

Рис. 1.4. Блок-схема алгоритма расчета функции ln(x)

 


Команда

Операнды

1

MOV

Ri, M

2

MUL

Ri, Rj

3

DIV

Ri, Rj

4

SUM

Ri, Rj

5

SUB

Ri, Rj

6

INC

Ri

7

JNZ

метка

8

JMP

метка


 

 

 

 

 

Рис. 1.5. Блок-схема модернизированного алгоритма расчёта функции ln(x)

 

Для контроля функционирования ОЗУ требуется реализовать служебное программное обеспечение – тест ОЗУ. Заданный в данном курсовом проекте алгоритм теста ОЗУ «Обращение по прямому и дополняющему адресам»является линейным и используется, как правило, для предварительной оценки ОЗУ на отсутствие катастрофических неисправностей.

Полная блок-схема алгоритма теста ОЗУ «Обращение по прямому и дополняющему адресам» выглядит следующим образом (рис. 1.6.).

Итак, базовая система команд без учета команд служебного и специального ПО будет содержать 8 управляющих слов.

 

 

 

 

 

 

Рис. 1.6. Блок-схема алгоритма теста ОЗУ «Обращение по прямому и дополняющему адресам»

 

Расширим систему команд за счет некоторых команд условного перехода (Jg, Jl), а также способов адресации операндов:

  1. прямая адресация,

  1. непосредственная адресация,

  1. автоинкрементная адресация,

  1. относительная адресация.

 

Таблица 1.6. 

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

Команда Move

прямая

КОП

mod

Ri

Прямой адрес


память – регистр Ri

относительная

КОП

mod

Ri

R База

Смещение


память (через регистр базы и смещение) – регистр Ri

непосредственная

Kop

mod

Ri

Константа


константа – регистр Ri

регистровая

Kop

mod

Ri

Rj


регистр Ri – регистр Rj


 

Таблица 1.7. 

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

Команда Div

прямая

КОП

mod

Ri

Прямой адрес


Дм в регистре Ri – Дт в памяти

относительная

КОП

mod

Ri

R База

Смещение


Дм в регистре Ri – Дт в памяти (через регистр базы и смещение)

непосредственная

КОП

mod

Ri

Константа


Дм в регистре Ri – Дт задаётся явно

автоинкремент

КОП

mod

Ri

Rj


Дм в регистре Ri – Дт в памяти (автоинкр. через Rj)

регистровая

КОП

mod

Ri

Rj


Дм в регистре Ri – Дт в регистре Rj


 

Форматы команд Mul, Sum, Sub аналогичны Div.

В приведенных форматах команд имеет место следующая интерпретация полей: КОП – поле кода операции базовой команды; mod – модификатор команды, определяющий способ использования регистров общего назначения при адресации ОЗУ; Ri– регистр источник и приемник пересылаемого операнда; Rj – регистр косвенной адресации.

 

 Таблица 1.8. 

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

Команда Inc

регистровая

КОП

mod

Ri


Инкрементируется содержимое регистра Ri


 

Таблица 1.9. 

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

Команды Jz (Jg, Jl) метка

Jz – переход, если результат операции равен нулю,

Jg– результат больше нуля, Jl – меньше нуля

прямая

КОП

mod

Прямой адрес


Условный переход по адресу, хранящемуся в памяти

относительная

КОП

mod

R База

Смещение


Условный переход по адресу, хранящемуся в памяти (через регистр базы и смещение)

непосредственная

КОП

mod

метка


Условный переход по адресу, задаваемому явно

Схема электрическая принципиальная.vsd

— 676.00 Кб (Скачать файл)

Схема электрическая структурная.vsd

— 538.00 Кб (Скачать файл)

Информация о работе Специализированный компьютер