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

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    1,71 Мб
  • Опубликовано:
    2012-06-23
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

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

Министерство образования Республики Беларусь

Учреждение образования

Белорусский Государственный Университет Информатики и Радиоэлектроники

Факультет компьютерных систем и сетей

Кафедра электронных вычислительных машин




ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

к курсовому проекту

на тему:

СПЕЦИАЛИЗИРОВАННЫЙ КОМПЬЮТЕР



Студент гр.850503

Абибок Ю.С.

Руководитель:

Кобяк И.П.




МИНСК 2012

Содержание

 

Введение

Исходные данные

1. Разработка архитектуры специализированного микрокомпьютера

1.1 Анализ известных реализаций спецкомпьютеров, критика аналогов проектируемой системы, формулирование требований к разрабатываемому микрокомпьютеру

1.2 Проектирование алгоритмов, выбор состава макроопераций и программирование задач

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

1.4 Разработка обобщенной структуры микроЭВМ на основе системы команд

2. Проектирование основных структурных компонентов схемы микрокомпьютера

2.1 Разработка схемы блока обработки данных

2.2 Проектирование ЗУ микрокомпьютера

2.3 Разработка устройства управления

2.4 Разработка системы ввода-вывода данных

3. Проектирование внутреннего интерфейса микрокомпьютера

3.1 Включение системы прерываний в схему устройства управления спецкомпьютера

3.2 Проектирование системы ПДП

4. Разработка микропрограммного обеспечения

4.1 Формат микрокоманды. Микропрограммная интерпретация команд языка компьютера

4.2 Разработка прикладного програмного обеспечения

4.3 Разработка служебного микропрограммного обеспечения

Заключение

Список литературы

Введение

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

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

Вторая причина связана с тем, что средства вычислительной техники стали использовать для сбора, преобразования и хранения информации (справочной, результатов экспериментальных исследований, проектной документации, обучающих программ и т.д.). ЭВМ становились всё более и более универсальными.

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

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

Вообще, решение любой задачи с помощью вычислительной техники возможно двумя способами: программирование универсальной ЭВМ и разработка специализированной. Второй способ дороже и медленнее, но даёт более качественное решение.

Для упрощения разработки специализированных ЭВМ существует и постоянно совершенствуется специфическая элементная база.

Одной из реализаций такой элементной базы является комплект БИС К1804. В данной работе рассмотрен проект специализированной ЭВМ, построенной на данном комплекте.

Исходные данные


-       Разрядность данных 28 бит.

-       Представление данных в ЭВМ: дополнительный код.

-       Способы адресации операндов: прямая, косвенная регистровая, автоинкрементная, базово-индексная.

-       Емкость ОЗУ 2256 кб.

-       Тип интегральной схемы ОЗУ: 565РУ7.

-       Микропроцессорный БИС блока обработки данных: 1804ВС2.

-       БИС ПЗУ микрокоманд: 556РТ14.

-       БИС блока микропрограммного управления: 1804ВУ4.

-       Порты ввода-вывода: 1804ИР3 12/6.

-       Система прерываний: (уровень/источник) 2/12-15.

-       Канал ПДП (длина блока передаваемых данных): 1024 слова.

-       Программное обеспечение: арифметическая операция ln (xi), где xi= (ai+bi) 2, тест ОЗУ "Попарная запись и считывание".

1. Разработка архитектуры специализированного микрокомпьютера

1.1 Анализ известных реализаций спецкомпьютеров, критика аналогов проектируемой системы, формулирование требований к разрабатываемому микрокомпьютеру


В период развития и становления вычислительной техники появилось много моделей представления компьютера, но наиболее распространённой является трёхшинная модель. Её структуру можно представить рис.1.1:

Рис.1.1 - Структура трёхшинной модели

Опишем назначение блоков:

Устройство управления (УУ). Предназначено для управления всеми блоками компьютера путем посылки сигналов предписывающие те или иные действия. УУ используется для автоматической работы компьютера и указывает на:

-       функцию выполнения АЛУ

-       источники информации для АЛУ

-       приемники результатов полученных в ходе вычислений.

Арифметико-логическое устройство (АЛУ). Предназначено для выполнения арифметических и логических операций представленных в формате с плавающей запятой или фиксированной запятой. Кроме данных АЛУ может обрабатывать адресную информацию (формирование исполнительного адреса), команды (преобразование форматов), признаки (выход переноса, признак нулевого результата, переполнение, знаковый разряд и т.д.).

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

Устройства ввода/вывода (УВВ). Предназначены для связи компьютера с внешними периферийными устройствами. Устройство ввода обеспечивает считывание информации с внешних носителей и представление ее в форме электрических сигналов. Устройство вывода преобразует кодовую информацию, поступающую из памяти или других блоков машины, в форму, необходимую для обмена с внешней средой.

Кроме основных вышеперечисленных блоков в состав компьютера может входить система прямого доступа к памяти (ПДП) и система прерываний.

Система ПДП позволяет осуществить непосредственный обмен данными между памятью и периферийными устройствами под управлением контроллера ПДП без участия АЛУ, что позволяет повышать скорость выполнения обмена.

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

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

Проектируемый спецкомпьютер должен использовать разрядность данных равную 28 бит. Данные будут представляться в форме с плавающей запятой в дополнительном коде. Также спецкомпьютер будет содержать систему памяти для хранения информации, поддерживать ввод/вывод данных, использовать систему прерываний и систему прямого доступа к памяти.

1.2 Проектирование алгоритмов, выбор состава макроопераций и программирование задач

Необходимо разработать алгоритм и написать программу для выполнения арифметической операции ln (xi), где xi= (ai+bi) 2.

Для этого на первом этапе следует построить график заданной функции, определить ее максимальное и минимальное значения, а также область определения аргумента. График функции представлен на рис.1.2 В нашем примере диапазон изменения аргумента лежит в пределах 0<х≤2, поэтому ai≤1 и bi≤1 (см. таблицу 1.1). При этом граничные значения функции будут равны:

∞ ≤ y (хi) ≤ 0.69.

Рис.1.2 - График функции ln (x)

Таблица 1.1

x

ln (x)

x

ln (x)

x

ln (x)

x

ln (x)

0,1

-2,3

0,6

-0,5108

1,1

0,09531

1,6

0,470004

0,2

-1,609

0,7

-0,3567

1,2

0,182322

1,7

0,530628

0,3

-1, 204

0,8

-0,223

1,3

0,262364

1,8

0,587787

0,4

-0,916

0,9

-0,105

1,4

0,336472

1,9

0,641854

0,5

-0,693

1

0

1,5

0,405465

2

0,693147


Для расчетов конкретных значений функции разложим y=ln (x) в ряд Тейлора:

 (1.1)

Из равенства 1.1 видно, что одному значению функции соответствует бесконечное число членов ряда.

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

Исследуем закон изменения членов ряда при различных x и i (см. таблицу 1.2).

Таблица 1.2

x i

1

2

3

4

5

6

7

8

0,1

-0,9000

-0,4050

-0,2430

-0,1640

-0,1181

-0,0886

-0,0683

-0,0538

0,2

-0,8000

-0,3200

-0,1707

-0,1024

-0,0655

-0,0437

-0,0300

-0,0210

0,3

-0,7000

-0,2450

-0,1143

-0,0600

-0,0336

-0,0196

-0,0118

-0,0072

0,4

-0,6000

-0,1800

-0,0720

-0,0324

-0,0156

-0,0078

-0,0040

-0,0021

0,5

-0,5000

-0,1250

-0,0417

-0,0156

-0,0063

-0,0026

-0,0011

-0,0005

0,6

-0,4000

-0,0800

-0,0213

-0,0064

-0,0020

-0,0007

-0,0002

-0,0001

0,7

-0,3000

-0,0450

-0,0090

-0,0020

-0,0005

-0,0001

0,0000

0,0000

0,8

-0, 2000

-0,0200

-0,0027

-0,0004

-0,0001

0,0000

0,0000

0,0000

0,9

-0,1000

-0,0050

-0,0003

0,0000

0,0000

0,0000

0,0000

0,0000

1,0

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

1,1

0,1000

-0,0050

0,0003

0,0000

0,0000

0,0000

0,0000

0,0000

1,2

0, 2000

-0,0200

0,0027

-0,0004

0,0001

0,0000

0,0000

0,0000

1,3

0,3000

-0,0450

0,0090

-0,0020

0,0005

-0,0001

0,0000

0,0000

1,4

0,4000

-0,0800

0,0213

-0,0064

0,0020

-0,0007

0,0002

-0,0001

1,5

0,5000

-0,1250

0,0417

-0,0156

0,0062

-0,0026

0,0011

-0,0005

1,6

0,6000

-0,1800

0,0720

-0,0324

0,0156

-0,0078

0,0040

-0,0021

1,7

0,7000

-0,2450

0,1143

-0,0600

0,0336

-0,0196

0,0118

-0,0072

1,8

0,8000

-0,3200

0,1707

-0,1024

0,0655

-0,0437

0,0300

-0,0210

1,9

0,9000

-0,4050

0,2430

-0,1640

0,1181

-0,0886

0,0683

-0,0538

2,0

1,0000

-0,5000

0,3333

-0,2500

0, 2000

-0,1667

0,1429

-0,1250

0,1

-0,0430

-0,0349

-0,0285

-0,0235

-0,0196

-0,0163

-0,0137

-0,0116

0,2

-0,0149

-0,0107

-0,0078

-0,0057

-0,0042

-0,0031

-0,0023

-0,0018

0,3

-0,0045

-0,0028

-0,0018

-0,0012

-0,0007

-0,0005

-0,0003

-0,0002

-0,0011

-0,0006

-0,0003

-0,0002

-0,0001

-0,0001

0,0000

0,0000

0,5

-0,0002

-0,0001

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,6

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,7

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,8

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,9

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

1,0

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

1,1

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

1,2

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

1,3

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

1,4

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

1,5

0,0002

-0,0001

0,0000

0,0000

0,0000

0,0000

0,0000

0,0000

1,6

0,0011

-0,0006

0,0003

-0,0002

0,0001

-0,0001

0,0000

0,0000

1,7

0,0045

-0,0028

0,0018

-0,0012

0,0007

-0,0005

0,0003

-0,0002

1,8

0,0149

-0,0107

0,0078

-0,0057

0,0042

-0,0031

0,0023

-0,0018

1,9

0,0430

-0,0349

0,0285

-0,0235

0,0196

-0,0163

0,0137

-0,0116

2,0

0,1111

-0,1000

0,0909

-0,0833

0,0769

-0,0714

0,0667

-0,0625


Семейство характеристик ряда функции представлено на рисунке 1.3.

Рис.1.3 - Семейство характеристик

Из рис.1.3 следует, что для вычисления функции следует выбрать i не из диапазона (-∞, +∞), а на интервале (0, +∞).

Будем считать, что общая ошибка вычислений в компьютере обуславливается двумя погрешностями:

-       следует из ограничений на число членов в разложении в ряд Тейлора,

-       определяется ограничениями разрядной сетки.

Для нашего случая длина слова составляет 28 бит.

log228 = 5

Следовательно, формат машинного слова будет иметь вид, который представлен на рис.1.4.

Рис.1.4 - Формат машинного слова

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

Таблица 1.3

x sum

91

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,7833

0,6167

0,7595

0,6345

0,1

-2,0839

-2,1187

-2,1473

-2,1708

-2, 1904

-2, 2067

-2,2204

-2,2320

0,2

-1,5681

-1,5789

-1,5867

-1,5924

-1,5966

-1,5998

-1,6021

-1,6039

0,3

-1, 1960

-1, 1989

-1, 2007

-1, 2018

-1, 2026

-1, 2030

-1, 2034

-1, 2036

0,4

-0,9149

-0,9156

-0,9159

-0,9161

-0,9162

-0,9162

-0,9163

-0,9163

0,5

-0,6930

-0,6931

-0,6931

-0,6931

-0,6931

-0,6931

-0,6931

-0,6931

0,6

-0,5108

-0,5108

-0,5108

-0,5108

-0,5108

-0,5108

-0,5108

-0,5108

0,7

-0,3567

-0,3567

-0,3567

-0,3567

-0,3567

-0,3567

-0,3567

-0,3567

0,8

-0,2231

-0,2231

-0,2231

-0,2231

-0,2231

-0,2231

-0,2231

-0,2231

0,9

-0,1054

-0,1054

-0,1054

-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,0953

0,0953

0,0953

0,0953

0,0953

0,0953

0,0953

0,0953

1,2

0,1823

0,1823

0,1823

0,1823

0,1823

0,1823

0,1823

0,1823

1,3

0,2624

0,2624

0,2624

0,2624

0,2624

0,2624

0,2624

0,2624

1,4

0,3365

0,3365

0,3365

0,3365

0,3365

0,3365

0,3365

0,3365

1,5

0,4055

0,4054

0,4055

0,4055

0,4055

0,4055

0,4055

0,4055

1,6

0,4704

0,4698

0,4701

0,4699

0,4700

0,4700

0,4700

0,4700

1,7

0,5324

0,5295

0,5313

0,5302

0,5309

0,5304

0,5308

0,5305

1,8

0,5940

0,5833

0,5911

0,5854

0,5896

0,5864

0,5888

0,5870

1,9

0,6611

0,6262

0,6547

0,6312

0,6507

0,6344

0,6481

0,6365

2,0

0,7456

0,6456

0,7365

0,6532

0,7301

0,6587

0,7254

0,6629


Из формата компьютерного слова следует:

A = 221 - 1 = 2 097 151 - максимальное число в мантиссе.

B = 25 - 1 = 31 - максимальный порядок.

Максимальное число

Ymax = AE + B = A*2B:

Ymax = 0,2 097 151 * 231 = 450 359 747,9886848

Необходимо определить значение аргумента x при котором Ymax = ln (x). Функция принимает значения <10 при x<14 000, следовательно x = Ymax =

= 450 359 747,9886848 удовлетворяет условию.

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

Ymin = - 1 * 2-21 * 2-31 = - 1 * 2-52

Введем ограничения на погрешность .


Находим ряд погрешностей для разных значений i:

 (1.2)

Из соотношений 1.2 следует, что заданный уровень погрешности не превышается при вычислении значения функции на основании 2 членов ряда.

Допустим, что у меня получилось, что при i=15, для x=8. Для меньших x можно брать меньшие i.

Для оптимизации по скорости для расчета меньших значений x надо брать из сохраненной таблицы значений imax для сохранения погрешности .

Погрешность  можем не учитывать, т.к. для функции ln (x) значение аргумента x ограничивается размерностью разрядной сетки. Следовательно:

Δобщ = Δ1 + Δ2 = Δ1.

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


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

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

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

Основной недостаток алгоритма состоит в длительном формировании результата с учетом повторных вычислений.

Выполним модернизацию алгоритма и избавимся от операции возведения в степень xy.

Система команд устанавливается путем расстановки возле каждой вершины ГСА мнемонического обозначения команды. Модифицированная ГСА представлена на рис.1.6.

Рис.1.6 - Модифицированная ГСА

Составим таблицу команд компьютера (см. таблицу 1.4).

Таблица 1.4

Команда

Операнды

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).

Таблица 1.5


КОП - код операции базовой команды.

mod - модификатор адреса.

Ri - регистр источник/приемник пересылаемого операнда.

Rj, Rx - регистры косвенной адресации.

Кроме команд реализации вычислений по ГСА ln (x), в систему команд включают команды ввода-вывода и команды, используемые при тестировании памяти. Определим разрядность поля КОП:

int (log2 (8 команд + 2 ввод/вывод + 1 тест)) = 4

Разрядность поля mod равна 3, т.к. возможно 5 видов адресации.

Полная таблица кодирования команд представлена в таблице 1.6.

Таблица 1.6

КОП

mod

Тип

Примечание

I1

0001

000

RS

Команда регистр-память

I2

0001

001

RS

Косвенно-регистровая; в регистре Rj содержится адрес оперативной памяти

I3

0001

010

RS

Автоинкрементная; регистр Rj автоматически увеличивается на 1

I4

0001

011

RS

Базово-индексная; Rj - регистр базы, Rx - регистр индекса

I5

0001

100

RR

Перемещение между регистрами

I6

0010

000

RS

Команда регистр-память

I7

0010

001

RS

Косвенно-регистровая; в регистре Rj содержится адрес оперативной памяти

I8

0010

010

RS

Автоинкрементная; регистр Rj автоматически увеличивается на 1

I9

0010

011

RS

Базово-индексная; Rj - регистр базы, Rx - регистр индекса

I10

0010

100

RR

Действие между регистрами

I11

0011

000

RS

Команда регистр-память

I12

0011

001

RS

Косвенно-регистровая; в регистре Rj содержится адрес оперативной памяти

I13

0011

010

RS

Автоинкрементная; регистр Rj автоматически увеличивается на 1

I14

0011

011

RS

Базово-индексная; Rj - регистр базы, Rx - регистр индекса

I15

0011

100

RR

Действие между регистрами

I16

0100

000

RS

Команда регистр-память

I17

0100

001

RS

Косвенно-регистровая; в регистре Rj содержится адрес оперативной памяти

0100

010

RS

Автоинкрементная; регистр Rj автоматически увеличивается на 1

I19

0100

011

RS

Базово-индексная; Rj - регистр базы, Rx - регистр индекса

I20

0100

100

RR

Действие между регистрами

I21

0101

000

RS

Команда регистр-память

I22

0101

001

RS

Косвенно-регистровая; в регистре Rj содержится адрес оперативной памяти

I23

0101

010

RS

Автоинкрементная; регистр Rj автоматически увеличивается на 1

I24

0101

011

RS

Базово-индексная; Rj - регистр базы, Rx - регистр индекса

I25

0101

100

RR

Действие между регистрами

I26

0110

000

RS

Команда регистр-память

I27

0110

001

RS

Косвенно-регистровая; в регистре Rj содержится адрес оперативной памяти

I28

0110

010

RS

Автоинкрементная; регистр Rj автоматически увеличивается на 1

I29

0110

011

RS

Базово-индексная; Rj - регистр базы, Rx - регистр индекса

I30

0111

000

RS

Команда регистр-память

I31

0111

001

RS

Косвенно-регистровая; в регистре Rj содержится адрес оперативной памяти

I32

0111

010

RS

Автоинкрементная; регистр Rj автоматически увеличивается на 1

I33

0111

011

RS

Базово-индексная; Rj - регистр базы, Rx - регистр индекса

I34

1000

000

RS

Команда регистр-память

I35

1000

001

RS

Косвенно-регистровая; в регистре Rj содержится адрес оперативной памяти

I36

1000

010

RS

Автоинкрементная; регистр Rj автоматически увеличивается на 1

I37

1000

011

RS

Базово-индексная; Rj - регистр базы, Rx - регистр индекса


1.4 Разработка обобщенной структуры микроЭВМ на основе системы команд

Обобщённая структурная схема может быть представлена как совокупность функциональных блоков, соединенных между собой в соответствии с требованиями интерфейсов.

В структуре проектируемого спецкомпьютера можно выделить следующие основные блоки:

-       блок обработки данных (БОД)

-       устройство управления (УУ)

-       запоминающее устройство (ЗУ)

-       устройства ввода-вывода (УВВ)

Обобщенная структура данного компьютера представлена на рис.1.7.

УУ является ядром проектируемого микрокомпьютера. Оно предназначено для формирования микрокоманд посылаемых в БОД, принятия соответствующего решения при анализе признаков поступающих от БОД (организация ветвления), прерывания выполнения текущей программы при возникновении прерывания от УВВ и выполнения микропрограммы обработки информации от УВВ, предназначено для управления ОЗУ и контроллером ПДП.

Рис.1.7 - Обобщенная структура специализированного микрокомпьютера

БОД предназначен для обработки данных, выдачи результата и признаков, сохранения данных в системе РОН.

Аппаратные средства, обслуживающие запросы на прерывания, называются устройствами управления прерываниями или контроллерами прерываний.

Микро-ЭВМ с микропрограммным управлением обладает следующей отличительной особенностью относительно систем с жесткой логикой - это использование последовательности взаимосвязанных микрокоманд для выполнения различных команд.

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

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

ЗУ предназначено для хранения пользовательской и служебной информации. ЗУ состоит из:

оперативного ЗУ (ОЗУ). Хранение пользовательской информации (данные и макрокоманды).

постоянного ЗУ (ПЗУ). Хранение служебной информации (константы микропрограммы).

Для формирования уточненной структуры компьютера, выделим регистр команды как отдельную компоненту структуры. Поместим в регистр последовательно команды I1, I2, I3, I4 (см. рис.1.4 - 1.6).

Рис.1.4 - Уточненная структура компьютера (I1)

Рис.1.5 - Уточненная структура компьютера (I2, I3)

Рис.1.6 - Уточненная структура компьютера (I4)

Непосредственная обработка данных выполняется в АЛУ, устройстве, входящем в состав процессора. Обработка в АЛУ осуществляется над всеми битами одновременно.

В состав ЦП также входит устройство управления выполнением программ. Устройство управления необходимо для реализации следующих функций:

-       дешифрация команды, выбираемой из памяти.

-       выбор соответствующего цикла шагов.

-       управление выполнением каждого шага.

-       организация выполнения шагов в требуемой последовательности.

-       принятие решений в соответствии с возникновением различных сигналов.

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

2. Проектирование основных структурных компонентов схемы микрокомпьютера


2.1 Разработка схемы блока обработки данных


Структурная схема БОД состоит из следующих основных блоков:

-       процессорного блока К1804ВС2;

-       схемы ускоренного переноса (СУП) К1804ВР1;

-       схемы управления состоянием и сдвигами (СУСС) К1804ВР2;

Исходя из задания к курсовому проекту, разрядность слова данных должна быть 28 бит и состоять из МПС 1804ВС2. Эта МПС предназначена для построения операционных блоков цифровых устройств с разрядностью кратной четырём. Следовательно, для получения 28-и битной длины машинного слова необходимо использовать 7 микропроцессорных секций.

Нумерация выводов БИС К1804ВС2 приведена на рис.2.1.

Рис.2.1 - К1804ВС2

Структурная схема МПС 1804ВС2 представлена на рис.2.2 По отношению к предыдущей разработке процессорная секция К1804ВС2 имеет ряд усовершенствований:

во-первых, АЛУ микропроцессора выполняет арифметические, логические и специальные функции;

во-вторых, сдвигатель данных АЛУ СDА выполняет как логические, так и арифметические сдвиги;

в-третьих, в микропроцессоре заложена возможность внешнего расширения РЗУ путем подсоединения любого числа дополнительных рабочих регистров, обращение к которым возможно в различных режимах адресации.

Рис.2.2 - Схема К1804ВС2

В целом микропроцессорная секция состоит из 4 основных блоков: блока внутренней памяти (БВП), арифметико-логического блока (АЛБ), блока рабочего регистра (БР) и блока управления (БУ).

Блок внутренней памяти включает в свой состав шестнадцать 4-разрядных РОН, объединенных в РЗУ, а также регистр А и регистр В с трехстабильным выходом. Информация, размещаемая в регистрах, адресуется по каналам адреса А3 - А0 и В3 - В0 РЗУ соответственно.

Управление выходом регистра В осуществляется сигналом , что позволяет передавать данные с выхода БВП на вход мультиплексора MsS АЛУ и на входы DB3-DB0 МПС при , кроме того, при  имеется возможность вводить информацию со входов DB3-DB0.

Каждый из РОНов может быть выбран в качестве источника или приемника полученного результата. При этом информация с выходов РЗУ записывается в RG A или RG B при наличии уровня логической единицы на входе Т, в частности, если Т=0, то регистры находятся в режиме хранения.

Запись информации в РЗУ может производиться только по адресу В. При этом необходимо, чтобы на входах  и  был установлен логический "0". Подача на входы  или  единичного потенциала запрещает режим записи. Считывание информации из РЗУ может производиться одновременно по адресам А и В. Если на входах А и В установлены одинаковые адреса, то на выходы РЗУ считывается одинаковая информация.

МПС может функционировать в режиме двухадресной (В=А+В) и трехадресной (Q=А+В) обработки данных. В двухадресном режиме на входы А30 подается адрес операнда R, а на входы В30 - адрес операнда S и результата. В трехадресном режиме приемником результата служит дополнительный регистр Q, адресуемый в микрокоманде неявно.

Арифметико-логический блок состоит из двух мультиплексоров MsS и MsR, арифметико-логического устройства, сдвигателя данных CDA с трехстабильным выходом, формирователя признака нуля ФПН, используемого при выполнении арифметических, логических и специальных функций, а также при формировании сигналов состояния МПС.

Входные мультиплексоры осуществляют выбор источников операндов R и S под действием управляющих сигналов  в соответствии с табл.2.1.

Из таблицы следует, что, если I0=1, то параллельно с выполнением операции в АЛУ возможен вывод данных из РЗУ по шине DB3-DB0 во внешнюю память.

Таблица 2.1

EA

I0

OE1

R

S

0 0

0 0

0

A

B

0

0

1

A

DB

0

1

0

A

Q

0

1

1

A

Q

1

0

0

DA

B

1

0

1

DA

DB

1

1

0

DA

Q

1

1

1

DA

Q


Выбор операции АЛУ осуществляется под действием поля регистра микрокоманды I8 - I0, причем если разряды I4 - I0 имеют значение 00000, то АЛУ выполняет специальные функции.

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

Данные с выхода АЛУ могут быть переданы на входы сдвигателя СD Р регистра Q и на входы сдвигателя СD А, соединенного с выходами F АЛУ. Таким образом, выходная информация может записываться в РЗУ и выводиться на шину Y3 - Y0 как без сдвига, так и со сдвигом влево или вправо на один разряд.

С целью повышения скорости выполнения арифметических операций в МПБ применяют схемы ускоренного переноса (СУП) на базе К1804ВР1. Так как одна К1804ВР1 позволяет организовать параллельные цепи переноса в блоке обработки данных разрядностью до 16, то при разрядности БОД равной 28 будет использовано два К1804ВР1, соединённые в каскад. Для ускорения процесса организации сдвига ветвления и усложнения условия перехода используют в БОД схему управления состояниями и сдвигами (СУСС) реализованной на базе К1804ВР2. Для реализации микроопераций сдвига и обработки слова состояния процессора в БОД будет использована одна К1804ВР2. Обычно микрокоманда выполняет две главные функции: определение и управление всеми микрооперациями, определение и управление адресом - следующей микрокоманды. Первая функция связана с выбором операндов для АЛУ, заданием операции АЛУ, выбором получателя результата АЛУ, управлением переносом, сдвигом, прерываниями, вводом и выводом данных и т.д. Вторая функция выбирает источник адреса следующей микрокоманды и иногда явно определяет этот адрес.

2.2 Проектирование ЗУ микрокомпьютера


Исходя из задания к курсовому проекту, локальная память разрабатываемой микроЭВМ должна быть, построена на основе БИС ЗУ К565РУ7 (см. таблицу 2.1, рис.2.3). Микросхема представляет собой динамическое оперативное запоминающее устройство емкостью 225 бит (256 кбит).

Таблица 2.1

Входы

Выход

Режим работы

RAS

CAS

WR

DI

DO


1

1

X

X

Выс. импеданс

Схема не выбрана

1

0

X

X

Выс. импеданс

Схема не выбрана

0

1

X

X

Выс. импеданс

Регенерация

0

0

0

0 либо 1

Выс. импеданс

Запись

0

0

1

X

0 либо 1

Считывание


Назначение выводов: A0-A8 - адресные входы; DI - информационный вход; WR - вход сигнала записи; RAS - вход сигнала выборки строк; D0 - информационный выход; CAS - вход сигнала выборки столбцов.

Рис.2.3 - К565РУ7

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

В микросхемах реализуем слоговый режим записи (считывания) благодаря наличию в их структуре регистра и четырех усилителей, выбираемых сигналом CAS по внутренним адресам А3А6, а также счетчика, обеспечивающего перебор этих адресов от 00 до 11 в циклическом режиме. Этот режим позволяет ускоренно записывать и считывать данные четырехразрядными кодами (слогами). Внешний адрес задается полностью, причем разряды А3А6 содержат адрес первого бита в слоге. Затем при активном состоянии сигнала RAS приходят последовательно четыре такта сигнала CAS. В каждом из этих тактов код внутреннего адреса А3А6 получает единичное приращение. Данные записываются или считываются побитно последовательно во времени, причем сигнал записи-считывания остается неизменным в течение всего цикла записи (считывания). Структурная схема блока ОЗУ представлена на рис.2.4.

Рис.2.4 - Структурная схема блока ОЗУ

Расчет оперативной памяти: E = 2256 Кб. Тип ИС ОЗУ: 565РУ7

К х 1 Eбайт = 256/8 = 32Кбайт;

D = 28 бит

банк = 28*32 = 896 Кбайт

N банков = 2256/1408 = 3 банка

2.3 Разработка устройства управления


Устройство управления специализированного микрокомпьютера обеспечивает выполнение последовательности микроопераций в соответствии с кодом текущей команды и организует выборку команд программы в соответствии с выполняемой программой.

Устройство микропрограммного управления содержит: блок микропрограммной памяти, в котором хранятся микрокоманды; блок генерации адреса микрокоманды, формирующий адрес следующей микрокоманды, который в общем случае зависит от кода выполняемой микрооперации, кодов и признаков выполняемых в АЛУ операций, информации блоков синхронизации и прерывания процессора; блок синхронизации, предназначенный для приема управляющих сигналов и формирования последовательности синхросигналов для основных блоков специализированного микрокомпьютера для обеспечения определенной последовательности их работы; дешифратор микрокоманд, формирующий управляющие сигналы, поступающие в исполнительные блоки специализированного микрокомпьютера. ПЗУ микрокоманд выполнено на микросхеме К556РТ14. Разрядность адреса данных микросхем составляет 9 бит, соответственно возможно задать  микрокоманд. Центральной частью устройства управления является схема управления последовательностью микрокоманд (УПМ) К1804ВУ4. Её структурная схема выглядит, как показано на рис.2.5.

Рис.2.5 - Структурная схема К1804ВУ4

Соответственно адрес микрокоманды определяется 9-ю разрядами, которые должны формироваться в соответствии с поступившим кодом операции (КОП) от регистра макрокоманды или самим УУ в процессе выполнения микропрограммы.

КОП в проектируемом спецкомпьютере определяется 6-ю битами, а адрес микрокоманды составляет 9 бит. Следовательно, требуется ввести преобразователь начального адреса (ПНА) построенного на микросхемах ПЗУ 556РТ17. Т.к. данная микросхема выдает 8 бита данных, то для реализации ПНА требуется две таких микросхемы. Для включения системы прерываний от УВВ также требуется преобразователь адреса (ПА), т.к. код, определяющий возникшее прерывание составляет 4 бита.

Двенадцатиразрядная схема УПМ предназначена для построения блоков микропрограммного управления цифровых устройств. Основная функция схемы УПМ заключается в формировании последовательности адресов микрокоманд, хранящихся в микропрограммной памяти, под воздействием внешних управляющих сигналов.12-ти разрядная схема УПМ обеспечивает возможность адресации до 4096 ячеек микропрограммной памяти.

В зависимости от выполняемой инструкции, код которой (I0 - I3) поступает на схему управления следующим адресом (УСА).

РгА/Сч используется в качестве буфера для записи и хранения адреса, либо в качестве числа циклов, принимаемых от внешнего источника через шину D, или в качестве счётчика циклов, содержимое которого на каждом такте уменьшается на один.

Четырёхвходовый мультиплексор обеспечивает выбор одного из четырёх источников адреса следующей микрокоманды: содержимого регистра адреса/счётчика, прямого входа адреса, счётчика микрокоманд, стека - в зависимости от значений разрядов I0. I3, кода микрокоманды и управляющих сигналов кода условия СС и разрешения кода условия ССЕ. Выбранный таким образом адрес поступает на выходную шину схемы УПМ - трех стабильную шину Y.

Схема УСА представляет собой комбинационный преобразователь, предназначенный для преобразования внешних управляющих сигналов в набор управляющих сигналов для блока МПК. Общая структурная схема блока микропрограммного управления, основанная на УПМ К1804ВУ4, имеет вид рис.2.6.

Текущая информация с шины данных поступает в регистр команд. Разряды, определяющие код операции в команде, поступают на преобразователь начального адреса, который преобразует код операции в адрес первой микрокоманды в микропрограмме, соответствующей данной команде. Этот адрес, при наличии разрешающего сигнала на входе OE преобразователя начального адреса, может быть передан на шину адреса ветвления, представляющую собой внутреннюю адресную магистраль БМУ.

Рис.2.6 - Структурная схема БМУ

Приёмником информации в этой магистрали является схема УПМ через прямые входы адреса. Вторым источником информации для шины адреса ветвления может служить часть РгМк, содержащая поле адреса ветвления, причем эта часть регистра микрокоманд должна иметь трех стабильные выводы, управляемые по шине OE. Третьим источником информации шины адреса ветвления служит преобразователь адреса. Он содержит адреса векторов прерывания. Подключение выхода преобразователя адреса и шины адреса ветвления к входу D также управляется по соответствующему входу разрешения OE.

Адрес микрокоманды с выхода УПМ передаётся на адресный вход памяти микропрограмм. Считанная микрокоманда располагается в регистре микрокоманд (РгМк).

Выбор источника осуществляет УПМ, вырабатывая три сигнала - PE, ME, VE, которые используются для отпирания одного из трёх внешних источников, подключённых к шине D. Информация с шины адреса ветвления поступает на прямой вход адреса УПМ.

Адрес микрокоманды с выхода УПМ передаётся на адресный вход памяти микропрограмм. Считанная микрокоманда располагается в регистре микрокоманд (РгМк).

Кроме поля адреса ветвления считанная микрокоманда содержит управляющие сигналы, поступающие на шину управления (ШУ).

2.4 Разработка системы ввода-вывода данных


В структуре специализированного микрокомпьютера выделено 12 портов ввода-вывода.6 портов являются двунаправленными и 6 портов являются портами ввода. Система портов строится на основе регистров КМ 1804ИР3. Данная микросхема представляет собой 8-разрядный параллельный двунаправленный регистр и предназначенный для организации порта ввода/ вывода данных ЭВМ. УГО представлено на рис.2.7.

Назначение выводов ИМС КМ 1804ИР3 дано в таблице 2.2.

В состав данной ИМС входят 2 8-разрядных регистра R, S для реализации двунаправленного режима работы, а также два триггера запросов обмена FLS, FLR. Синхронизация работы ИМС КМ 1804ИР3 осуществляется по положительному фронту импульсах на входах CS и CR.

Рис.2.7 - УГО регистра КМ1804ИР3

Таблица 2.2

Обозначение

Назначение

Вид выхода

DA (0-7)

Входы регистра R/ выходы регистра S

Двунаправленный три состояния

DB (0-7)

Входы регистра S/ выходы регистра R

-

FLS

Выход триггера запросов обмена FLS

-

FLR

Выход триггера запросов обмена FLR

-

EZB

Вход разрешения выхода регистра R

-

EZA

Вход разрешения выхода регистра S

-

CR

Вход синхронизации для триггера FLR и регистра R

-

CS

Вход синхронизации для триггера FLS и регистра S

-

ECR

Вход разрешения записи регистра R

-

ECS

Вход разрешения записи регистра S

-

RFLR

Вход обнуления триггера запросов обмена FLR

-

RFLS

Вход обнуления триггера запросов обмена FLS

-


Так как шина данных разрабатываемого микрокомпьютера 16-разрядная, а порты ввода/вывода 8-разрядные, для обмена информацией через порты ввода/вывода используются буферные регистры, служащие для преобразования выводимой информации из байта в слово.

Для организации требуемого количества портов ввода/вывода требуется 12 микросхем 1804ИР3. Сигнал FLS от каждого порта ввода/вывода является запросом на прерывание от данного порта Выбор определенного порта осуществляется с помощью дешифратора отдельно для портов ввода и вывода, следовательно, необходимо использовать два дешифратора открываемых с помощью различных сигналов. Сигнал FLS от каждого порта ввода/вывода является запросом на прерывание от данного порта. Т.к. всего портов двенадцать, то необходимо четыре бита для кодирования номера порта. Таким образом, для управления системой портов ввода/вывода необходимо шесть бит от УУ.

Состав данной ИМС входят 2 8-разрядных регистра R, S для реализации двунаправленного режима работы, а также два триггера запросов обмена FLS, FLR. Синхронизация работы ИМС КМ 1804ИР3 осуществляется по положительному фронту импульсах на входах CS и CR.

Сигнал FLS от каждого порта ввода/вывода является запросом на прерывание от данного порта. Шина данных разрабатываемого микрокомпьютера 16-разрядная, а порты ввода/вывода 8-разрядные, для обмена информацией через порты ввода/вывода используются буферные регистры, служащие для преобразования выводимой информации из байта в слово.

В режиме считывания из порта внешнее устройство формирует сигнал WR=0, указывающий на запрос от ВУ. Переход WR из "1" в "0" формирует сигнал разрешения записи в RGR через DA (7…0).

При этом устанавливается сигнал запроса прерываний FLS = "1". Процессор принимает сигнал запроса и формирует сигнал IOR на шине управления. Если IOR = "0" и адрес порта указан верно, то на вход EZA подается "1", что соответствует разрешению считывания данных из порта на ШД.

Рис.2.8 - Блок ввода-вывода данных

В режиме записи в порт процессор формирует на ШУ сигнал IOW="0". На вход ECR передается "0", что соответствует перепаду из "1" в "0", т.к. сигнал IOW был установлен в "1". Подача "0" на вход ECR разрешает передачу данных с ШД на ВУ и в тоже время формирует сигнал FLR = "1" для передачи запроса к ВУ на вход RDY. При совпадении адреса порта, на вход EZB попадает "1", что разрешает выдачу данных с ШД на внешнее устройство.

Тогда блок ввода-вывода данных будет иметь вид как на рис.2.8.

3. Проектирование внутреннего интерфейса микрокомпьютера


3.1 Включение системы прерываний в схему устройства управления спецкомпьютера


При проектировании данного специализированного микрокомпьютера, необходимо реализовать систему прерываний вида 2/12-15, т.е. двухуровневую систему пятнадцати прерываний, двенадцать из которых являются прерываниями от портов ввода/вывода и три внутренних прерываний.

Система прерываний предназначена для прерывания программы пользователя, если возникло прерывание от внешних устройств, либо внутреннее прерывание. Каждое прерывание имеет свой приоритет, что обуславливает выполнения того прерывания, которое имеет наивысший приоритет, когда прерываний возникает несколько. Выделение приоритетов можно выполнить с помощью ПЗУ.

Система прерываний также должна обеспечивать загрузку на выполнение микропрограммы обслуживающей то прерывание, которое необходимо обслужить в данный момент. Система прерываний представлена на рис.3.1.

Рис.3.1 - Система прерываний

3.2 Проектирование системы ПДП

Прямой доступ к памяти позволяет осуществить непосредственный обмен данными между памятью и периферийными устройствами под управлением контроллера ПДП без участия БОД, что позволяет повышать скорость выполнения обмена.

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

В качестве основы реализации контролера ПДП взята микросхема 1804ВУ6. УГО имеет вид рис.3.2.

Рис.3.2 - Микросхема К1804ВУ6

Назначение выводов микросхемы К1804ВУ6 показано в таблице 3.1.

Таблица 3.1

Обозначение

Назначение

D (0-7)

двунаправленная шина данных, используется для ввода/ вывода информации.

А (0-7)

выход адреса, предназначен для вывода информации из счетчика адреса.

ОЕА

I (0-2)

вход инструкции, определяет одну из восьми инструкций адресного генератора ПДП.

ACI

входной перенос счетчика адреса.

АСО

выходной перенос счетчика адреса

WCI

входной перенос счетчика слов

WCO

выходной перенос счетчика слов

DON

выход индикации конца передачи. Наличие единицы на этом выходе определяет окончание передачи данных в трех режимах управления.


Устройство, осуществляющее управлением передачей дынных при ПДП, называется контроллером ПДП и выполняет следующие функции: управление шиной адреса, управление передачей данных, формирование адреса, подсчет числа слов, управление режимов передачи. Контроллер ПДП должен передавать соответствующий адрес на шину адреса памяти и вырабатывать сигналы управления передачей данных между памятью и устройством ввода/вывода. Контролер ПДП должен содержать указатель адреса, который формирует адрес ячейки памяти, из которой считываются или в которую записываются очередное слово передаваемых данных. Содержимое этого указателя должно увеличиваться или уменьшаться после передачи очередного слова данных. Перед началом передачи данных в контроллер ПДП поступают информация о числе передаваемых слов и начальный адрес. Во время передачи данных контроллер ПДП должен осуществлять контроль числа переданных слов и закончить передачу по достижении заданного числа слов.

4. Разработка микропрограммного обеспечения


4.1 Формат микрокоманды. Микропрограммная интерпретация команд языка компьютера


Основной характеристикой микроЭВМ, определяющей возможность использования готовых прикладных программных модулей, является система команд - полная совокупность команд, которые может выполнить ЭВМ.

Команда представляет собой двоичный код, определяющий операцию, производимую машиной, и данные, участвующие в операции (операнды). Команда содержит операционную и адресную части. В операционной части указывается код операции (КОП) - вид операции. В адресной части задается информация о нахождении операндов. Если микроЭВМ выполнит М различных операций, то число двойных операций, то число двойных разрядов КОП:

N = int Log2 M

Исходя из того, что всего имеется 37 операций, то поле КОП необходимо выбрать 6-разрядным. В регистре команд команда представляется в виде:

Код Операции (КОП)

Операнд 1

Операнд 2


И с учетом разрядностей данной микроЭВМ, команда будет иметь вид:

Код Операции (КОП) - 6 бит

Операнд 1 - 4 бита

Операнд 2 - 4 бита


Рассмотрим выполнение команд в микроЭВМ. Выполнение происходит в соответствии с алгоритмом:

-       Формирование адреса микрокоманды,

-       Выборка команды из памяти,

-       Декодирование команды,

-       Выборка из памяти величины смещения,

-       Формирование адресов операндов,

-       Выборка операндов,

-       Выполнение команды.

Разборка формата микрокоманды представлена в таблице 4.1.

Таблица 4.1

Биты

Название

Назначение

1

0-10

A0-A10

Адрес следующей микрокоманды

2

11-14

I0-I3

Управляющие сигналы для КМ1804ВУ3

3

15-23

I0-I8

Управляющие сигналы для КМ1804ВС2


24-27

EA, OEB, IEN,OEY

Управляющие сигналы для КМ1804ВС2


28-36

I0-I12

Управляющие сигналы для КМ1804ВР2


37-30

YC, YN, YOV, YZ

Условия для КМ1804ВР2

4

31-42

SS

Выбор приёмника для регистра входных данных


43-44

SD

. Выбор источника для регистра выходных данных


45

EN

Включение регистра адреса

5

46

R/w

Сигнал чтение/запись для ОЗУ или портов


47-50

I0-I3

Управление ПДП (КМ1804ВУ6)


51-52

ACI, WCI

Сигналы переноса счётчика адреса и слов для ПДП


53-60

INS0-INS7

Сигналы управления на контроллер прерываний (КМ1804ВН1)


61

EINS

Включение INS0-INS7 на КМ1804ВН1


62-63

CR, ECR

Сигналы выбора портов.

6

64

С0

Вход переноса для КМ1804ВУ2

7

65-67

ZA, RE, OE

Сигналы ZA, RE и OE для КМ1804ВУ2


Каждая команда состоит из микрокоманд последовательно выполняя основные шаги. Выполнение межрегистровой команды занимает 4 микроцикла:

Т0 - Формирование адреса команды. Микроцикл выполняется путем увеличения содержимого счетчика команд на 2 с помощью соответствующей микропрограммы. Вычисленный адрес загружается в Рг. А и снова в счетчик команд.

Т1 - Выборка команды. Во время цикла выборки из памяти считывается содержимое ячейки по адресу, сформированному в предыдущем цикле. Согласно протоколу обмена с памятью, считывание команды выполняется за 1 микроцикл. Поэтому команда может быть выдана в процессор из памяти уже к началу следующего микроцикла.

Т2 - Декодирование. Команда, выбранная из основной памяти, в предыдущем цикле, поступает в процессор в начале текущего цикла. Команда поступает в дешифрирующее ПЗУ. Последнее устройство преобразует КОП в адрес начала микропрограммной обработки.

Т3 - Выполнение. Цикл выполнения команды. Он может состоять из нескольких микроциклов, в зависимости от вида команды.

4.2 Разработка прикладного програмного обеспечения


Ниже приведен текст программы для вычисления :

movPOH1, A, B, POH2, POH1, 25, 1POH5, POH3, 1: inc POH4

shlPOH4, 4POH4, 1minus, POH6

moxPOH2, POH5, POH5break: movPOH1, POH5, POH6, POH6, POH6, POH3: decPOH33, 0

jneagain

4.3 Разработка служебного микропрограммного обеспечения


Для диагностики функционирования микроЭВМ необходимо иметь определенный набор программ для контроля блоков.

Функциональный контроль решает следующие задачи: определение факта наличия неисправности в блоке и определение места неисправности. Вывод в правильности функционирования ОЗУ делается либо по результатам выполнения очередного элементарного теста (останов по ошибке), либо по конечному результату выполнения полного теста.

Рассматриваемый тест "Попарная запись - считывание" является тестом, пригодным для предварительной оценки ОЗУ на отсутствие катастрофических (фатальных) неисправностей.

Алгоритм "Попарная запись - считывание" относится к квадратичным алгоритмам тестирования ЗУ. Попарные передачи информации между любыми парами элементов памяти позволяют эффективно обнаруживать как статические, так и динамические отказы ЗУ.

Применение данного алгоритма ограничивается резким ростом длительности контроля с увеличением емкости ЗУ.

Алгоритм "Попарная запись - считывание", как и большинство алгоритмов функционального контроля ОЗУ имеют ограниченный набор входных комбинаций (циклов обращения), обеспечивающих обнаружение типовых отказов в дешифраторе и матрице памяти ОЗУ. При разработке алгоритма функционального контроля нужно искать минимальную тестовую последовательность входных сигналов, для которой имеет место изменение выходной последовательности сигналов тестируемой схемы при отказе любого из ее элементов. Решение этой задачи осложняется наличием у БИС ОЗУ ряда неисправностей, не описываемых булевыми функциями (например, множественная выборка), а также связанных с динамическими состояниями элементов.

Программа теста ОЗУ по алгоритму " Попарная запись - считывание ":

testproc

movR1,0

m4: andR1,R1

jcm1

movA,0

jmpm2

m1: movA,1

cmpR1,N

jzm2

jmpm3

m2: incR1: movR1,0,R1,0: cmpA,1: movR1,0: andR1,R1,1: movA,0,N9: ret

endp

Заключение


В ходе проектирования микроЭВМ предъявлялись требования, изложенные в задании.

Семейство микропрограммируемых устройств К1804 позволяет создавать системы с микропрограммным управлением на базе быстродействующих БИС. Эти устройства выполняют как операции условного перехода к подпрограмме, т.е. по адресу, извлекаемому из определенного источника, так и операции условного возврата из нё. Кроме того может быть реализован ряд способов организации циклов и выхода из циклов. Причем циклы могут содержать в себе многократное выполнение одной или нескольких микрокоманд.

В данном курсовом проекте были рассмотрены основные принципы организации и функционирования микропроцессорных устройств с разрядно-модульной организацией. Был спроектирован спецкомпьютер на комплекте интегральных схем К1804. Данный компьютер отвечает стандартным нормам и содержит в себе основные блоки, которые должны быть у компьютеров данного класса.

Список литературы


1.       А. Майоров, В.В. Кириллов. Введение в микро ЭВМ/С. - Л.: Машиностроение, 1988.

2.       И.П. Кобяк. Организация памяти компьютерных систем: Методическое пособие - Мн.: БГУИР, 2000.

.        В.В. Баранов, Н.В. Бекин, А.Ю. Гордонов и др.; Под редакцией А.Ю. Гордонова и Ю.Н. Дьякова. Полупроводниковые БИС запоминающих устройств: Справочник - М.: Радио и связь, 1986.

.        И.П. Кобяк Организация ввода-вывода в компьютерных системах: Методическое пособие - Мн.: БГУИР, 1996.

.        С.Т. Хвощ, Н. Н, Варлинский, Е.А. Попов; Под редакцией С.Т. Хвоща Микропроцессоры и микроЭВМ в системах автоматического управления: Справочник - Л.: Машиностроение. Ленингр. отд-ние, 1987.

.        И.П. Кобяк Архитектура компьютерных систем: Методическое пособие в 2 ч - Мн.: БГУИР, 2001.

Похожие работы на - Специализированный компьютер

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!