Создание программной модели арифметико-логического устройства

Структурная схема разрабатываемого устройства. Синтез схемы блока АЛУ и блока признаков результата. Номинальные значения параметров компонентов. Открытие созданной принципиальной схемы. Анализ переходных процессов. Выполнение логических операций.

Рубрика Коммуникации, связь, цифровые приборы и радиоэлектроника
Вид дипломная работа
Язык русский
Дата добавления 29.09.2014
Размер файла 1,5 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru

ВВЕДЕНИЕ

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

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

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

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

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

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

1. СРАВНИТЕЛЬНЫЙ АНАЛИЗ ФУНКЦИЙ АЛУ В СОВРЕМЕННЫХ МИКРОПРОЦЕССОРАХ

Микропроцессоры (МП) получают всё большее распространение в различных областях народного хозяйства и военного промышленного комплекса. Везде, где требуется автоматизация производственного процесса, находят своё применение МП. Персональные компьютеры, имеющие в своём составе CPU (central processor unit), а так же множество других периферийных устройств, работу которых так же обеспечивают процессоры, лишь малая часть того, где используются МП. Одним из главных составляющих узлов МП является АЛУ, обеспечивающее выполнение различных арифметических и логических операций. Разрядность АЛУ, а так же его быстродействие являются основными факторами, определяющими производительность МП.

Для анализа будем использовать зарубежные микроконтроллеры фирмы «Motorolla» и «Аnalog divices» и отечественного микропроцессорного комплекта К1815.

Для построения процессоров с последовательно-параллельной обработкой информации предназначена ТТЛШ БИС специализированного АЛУ К1815ИА1. БИС содержит четыре одноразрядных АЛУ с общим управлением. В состав каждого разряда входят два буферных регистра RG1, RG2, одноразрядное АЛУ ALU, регистр «маски» RG3, регистр переноса RG4, три коммутатора S1-- S3 (рисунок 1.1).

В буферные регистры RG1 и RG2 информация подается с магистралей DA и DB соответственно. Запись данных осуществляется независимо: в RGl по срезу сигнала SYN1, а в RG2 по срезу сигнала SYN2. Содержимое регистра RG2 выдается на магистраль DQ.

В зависимости от кода на управляющих входах DV и СО1 над содержимым регистров RGI и RG2 в ALU выполняются соответствующие операции (таблица 1.1). В регистр RG3 по срезу сигнала SYN3 записывается результат операции, выполняемой ALU. Возникающий при выполнении арифметических операций перенос может быть записан в RG4 по срезу сигнала SYN4.

Четырехразрядный коммутатор S1 обеспечивает передачу на выходы DF0,...DF3 сигналов с трех направлений: а) с выходов АЛУ (при состоянии «О» триггеров «маски» RG3 [0--3] и значении «1» сигнала СО2); б) со входов маски RG3 [0--3] (при значении «1» сигнала С02); в) со входов DD [0--3] при значении «О» сигнала СО2.

Четырехразрядный коммутатор S2 обеспечивает передачу на выход БИС DAL [0--3] информации с выходов АЛУ при значении «О» триггеров «маски» RG3 [0--3]. Четырехразрядный коммутатор S3 служит для выдачи на выходную магистраль DW состояния регистра «маски» RG3 при значении «О» сигнала СОЗ.

Рисунок 1.1 - Структурная схема БИС АЛУ К1815ИА1

Таблица 1.1 -Функции АЛУ микросхемы к1815ИА1

Набор функций

CO1-1, логическая функция

СО1-0, арифметическая функция

D v 3

D v 2

D v 1

D v0

-1

-0

0

0

0

0

A

A плюс 1

0

0

0

1

А+В

(А+В) плюс 1

0

0

1

0

(А+В) плюс 1

0

0

1

1

0

минус 1

0

0

1

0

0

AB

А плюс

А плюс плюс 1

0

1

0

1

(А+В) плюс

(А+В) плюс 1 плюс плюс 1

0

1

1

0

А минус В минус 1

А минус В

0

1

1

1

минус 1

1

0

0

0

А плюс АВ

А плюс АВ плюс 1

1

0

0

1

А плюс В

А плюс В плюс 1

1

0

1

0

B

(А плюс В) плюс АВ

() плюс АВ плюс 1

1

0

1

1

АВ минус 1

АВ

1

1

0

0

1

А плюс А

А плюс А плюс 1

1

1

0

1

(АВ) плюс А

(А) плюс А плюс 1

1

1

1

0

() плюс А

(А) плюс А плюс 1

1

1

1

1

A

А минус 1

А

Четырехразрядный коммутатор S3 служит для выдачи на выходную магистраль DW состояния регистра «маски» RG3 при значении «О» сигнала СОЗ. В БИС предусмотрена установка в «О» регистров RGI, RG2, RG4 при состоянии «1» на входе SR.

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

8 - разрядные микроконтроллеры семейств М68НС05, М68НС08, М68НС11. Реальные функции АЛУ можно показать на примере команд арифметических операций (таблица 1.2). Они выполняют соответствующие действия над операндами, одни из которых располагается в аккумуляторе А, где размещается затем результат. При операциях сложения и вычитания с учётом и без учёта признака переноса С (команды ADC, ADD, SBC, SUB) второй операнд М индексируется любым образом, кроме относительного. При операциях инкремента, декремента (команды INC, INCA, INCX, DEC, DECA, DECX) и изменения знака (перевод в дополнительный код команды NEG, NEGA, NEGX) используются только короткие способы адресации операнда. Команды сравнивания СМР, СРХ выполняют вычитание операндов без записи результата, но с установкой значений признаков N, Z в соответствии с полученным результатом. Команды тестирования ТSТ, TSTA, TSTX устанавливают признаки N, Z в соответствии со значением выбираемого операнда.

К этой группе относятся команды AND, ORA, EOR (таблица 1.2), которые выполнят логические операции И, ИЛИ, Исключающее ИЛИ над разрядами содержимого аккумулятора А и адресуемого операнда. При выполнении этих команд используются такие же способы адресации как и в командах сложения-вычитания. В командах логической инверсии COM, СОМА, СОМХ используются только короткие способы адресации. Команда битового тестирования BIT производит логическое умножение операндов (операция И) без записи результата, но с установкой признаков N, Z.

Таблица 1.2

Мнемокод

Команда

Операция

1

2

3

ADD (opr)

ADC (opr)

SUB (opr)

SBC (opr)

Сложение

Сложение с переносом

Вычитание

Вычитание с заёмом

А+М>А

A+M+C>A

A-M>A

A-M-C>A

INC (opr)

INCA

INCX

Инкремент М

Инкремент А

Инкремент Х

М+1>М

А+1>А

Х+1>Х

DEC (opr)

DECA

DECX

Декремент М

Декремент А

Декремент Х

М-1>М

А-1>А

Х-1>Х

NEG (opr)

NEGA

NEGX

Изменение знака М

Изменение знака А

Изменение знака Х

0-М>М

0-А>А

0-Х>Х

CMP (opr)

CPX

TST (opr)

TSTA

TSTX

Сравнение А с М

Сравнение Х с М

Тестирование М

Тестирование А

Тестирование Х

А-М

Х-М

М-0

А-0

Х-0

MUL

Беззнаковое умножение

>: А

AND (opr)

OR (opr)

EOR (opr)

Логическое И

Логическое ИЛИ

Исключающее ИЛИ

А^M>A

A \/ M>A

A M>A

COM (opr)

COMA

COMX

Логическая инверсия М

Логическая инверсия А

Логическая инверсия Х

BIT

Битовое тестирование

А^М

Однокристальная микроЭВМ МС68С705С8 входит в серию относительно дешевых микроЭВМ фирмы “Motorola”, использующих КМОП-технологию, сочетающую малые размеры и высокое быстродействие с низким потреблением энергии и высокой устойчивостью к помехам.

Блок центрального процессора, представленного на рисунке 1.2, содержит 8-битное АЛУ, аккумулятор, индексный регистр, регистр признаков, указатель стека, программный счётчик и управляющую логику. На кристалле так же расположены системы памяти: загрузочное ПЗУ, программируемое ПЗУ и ОЗУ.

Функции работы АЛУ данного микропроцессора можно описать, составив таблицу, на основе арифметических и логических команд, которые непосредственно выполняются блоком АЛУ.

Рисунок 1.2 - Центральный процессор МС68С705С8

Таблица 1.3 - Функции АЛУ микроЭВМ МС68НС705С8

Мнемокод

Операция

Команда

Действие АЛУ

ADD

АС<(АС)+(М)

Сложение содержимого ячейки

памяти с аккумулятором

Сложение содержимого

М и содержимого АС и размещение в АС

ADC

AC<(AC)+(M)+(C)

Сложение ячейки памяти с аккумулятором и флагом

переноса

Сложение содержимого

бита С и суммы

содержимого М и АС и размещение в АС

SUB

АС<(АС)-(М)

Вычитание

Сложение содержимого

бита С и суммы М и АС и размещение в АС

SBC

АС<(АС)-(М)-(С)

Вычитание содержимого ячейки памяти из аккумулятора с флагом заема.

Вычитание содержимого

М из АС и размещение результата в АС.

AND

АС<(АС)*(М)

Операция И содержимого

ячейки памяти и аккумулятора.

Логическое умножение аккумулятора и М

результат записывается в

АС

ORA

АС<(АС)+(М)

Операция ИЛИ содержимого

ячейки памяти и аккумулятора

Логическое сложение М и

результат

записывается в АС.

CMP

(АС)-(М)

Арифметическое сравнивание аккумулятора и ячейки памяти.

Сравнивается содержимое

М и АС и

устанавливаются биты в регистре признаков.

INC

АС<(АС)+$1

Инкремент на 1

Добавление единицы к содержимому аккумулятора.

DEC

АС<(АС)-$1

Декремент на 1

Вычитает единицу из содержимого аккумулятора

АЛУ процессора ADSP-21XX фирмы «Analog devices» обеспечивает выполнение стандартного набора арифметических и логических операций. К первым относятся сложение, вычитание, инвертирование (отрицание), инкремент, декремент и нахождение абсолютист значения. Эти операции дополнены двумя примитивами деления, при помощи которых операция деления может выполняться за несколько циклов. К логическим операциям относятся логическое И (AND), ИЛИ (OR), исключающее ИЛИ (XOR) и НЕ (NOT), полный список стандартных функций приведён в таблице 1.4.

Блок-схема АЛУ представлена на рисунке 1.3. АЛУ разрядностью 16 бит имеет два 16-битовых порта ввода - X и Y, и один порт вывода - R. АЛУ принимает сигнал переноса (С1), который является битом переноса из арифметического регистра состояния (ASTAT). В АЛУ генерируется 6 сигналов состояния: состояние-ноль (AZ), отрицания (AN), переноса (АС), переполнения (AV), ввода знака через порт X (AS) и состояние частного (AQ). Все сигналы арифметического состояния фиксируются в арифметическом регистре состояний (ASTAT) в конце цикла.

Таблица 1.4 - Список стандартных функций АЛУ

Функция

Назначение

R= X+Y

Сложение операндов X и Y

R= X+Y+CI

Сложение операндов X и Y и бита коррекции

R= X-Y

Вычитание операндов X из Y

R= X-Y+CI-1

Вычитание операндов X из Y с заемом

R= -X

Инверсия X

R= -Y

Инверсия Y

R= X+1

Инкремент X

R= Y+1

Инкремент Y

R= X-1

Декремент X

R= Y-1

Декремент Y

R= PASS X

Операнд X не изменяет результата

R= PASS Y

Операнд Y не изменяет результата

R= 0

Очистка результата

R= ABS X

Модуль X

R= X AND Y

Логическое умножение операндов X и Y

R= X OR Y

Логическое сложение опреандов X и Y

R= X XOR Y

Исключающее ИЛИ операндов X и Y

R= NOT X

Отрицание X

R= NOT Y

Отрицение Y

Порт ввода X AЛУ может принимать данные из двух источников: регистров АХ или шины результатов (Р-шина). Р-шина соединяет регистры вывода всех вычислительных устройств, позволяя использовать их как операнды ввода. Порт ввода Y АЛУ также может принимать данные из двух источников: регистров AY и регистра обратной связи AF АЛУ.

Выходные данные АЛУ загружаются либо в регистр обратной связи АЛУ (AF),либо в регистр результатов АЛУ (AR). Регистр AF является внутренним регистромАЛУ и позволяет использовать результат АЛУ прямо в качестве входного значениядля порта Y АЛУ. Регистр AR может передавать данные как на шину ДПД. так и нашину результатов. Этот регистр может прямо загружаться с шины ДПД.

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

В АЛУ содержится двойной ряд регистров, которые показаны на рисунок 1.2 за основными регистрами. В действительности имеется два набора регистров AR, AF, АХ и AY. В любой определенный момент времени доступным является только один ряд регистров. Дополнительный ряд регистров может быть активизирован для чрезвычайно быстрого контекстного переключения (например, во время подпрограммы обслуживания прерывания). В таком случае новая задача (т.е. обслуживание прерывания в примере) может быть выполнена без передачи текущих состояний в ЗУ. Выбор основного или альтернативного ряда регистров управляется битом 0 в регистре состояния режима процессора (MSTAT). Если этот бит принимает значение 0, выбирается основной ряд; если он равен 1, выбирается теневой ряд регистров.

Исходя из приведенного выше анализа функций и команд АЛУ микропроцессоров, можно выделить те функции, которые будут отображены в программной модели заданной микросхемы К155ИП3. Т.е. это будут те функции, которые наиболее необходимы и являются основными при разработке современных микропроцессоров и микроконтроллеров. Составим таблицу арифметических и логических функций, которые будут использоваться при разработке лабораторной работы, данные будем занесём в таблицу 1.5.

Таблица 1.5 - Функции разрабатываемого АЛУ

Выбор функции

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

S3

S2

S1

S0

Логические функции (на входе М-напряжение высокого уровня)

Арифметические операции (на входе М-напряжение низкого уровня)

(без переноса)

(с переносом)

0

0

0

0

A

A+1

0

0

0

1

АВ

(А В)+1

0

0

1

0

А

(А )+1

0

0

1

1

0

-1

0

0

1

0

0

А+А

А++1

0

1

0

1

(А В)+ А

(А В)+ А+1

0

1

1

0

АВ

А+В-1

А+В

0

1

1

1

А

А-1

А

1

0

0

0

В

А+АВ

А+АВ+1

1

0

0

1

А+В

А+В+1

1

0

1

0

В

(А)+АВ

(А)+АВ+1

1

0

1

1

АВ

АВ-1

АВ

1

1

0

0

1

А+А

А+А+1

1

1

0

1

А

(А В)+А

(А В)+А+1

1

1

1

0

А В

(А)+А

(А)+А+1

1

1

1

1

А

А-1

А

2 .РАЗРАБОТКА СТРУКТУРНОЙ СХЕМЫ АЛУ

Структурная схема разрабатываемого устройства (рисунок 2.1) даёт общее представление об устройстве и взаимодействии между собой его основных блоков. Таких блоков в устройстве несколько:

- регистр операнда А;

- регистр операнда В;

- регистр результата;

- блок АЛУ;

- блок признаков результата.

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

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

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

Блок АЛУ является главным в схеме. Он производит вычисления над поступающими на его входы двумя четырёхразрядными числами. Управление блоком осуществляется через входы выбора S0-S3, подачей кодовой комбинации, соответствующей определённой операции. Задание режима работы (арифметика - логика) происходит путём подачи лог. «0» или лог. «1» на вход М. Блок АЛУ имеет вход переноса Cn, принимающий входной сигнал переноса.

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

- AZ - ZERO результат операции равен нулю.

- AN - NEGATIV результат отрицательный.

- AV - OVERFLOW - переполнение АЛУ.

- AC - CARRY - перенос.

3. РАЗРАБОТКА МАКРОМОДЕЛИ АЛУ

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

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

3.1 Синтез схемы блока АЛУ и блока признаков результата

Арифметические и логические функции, которые должна выполнять микросхема, описаны в таблице 1.4. Взяв их за основу, проведём синтез АЛУ в следующем порядке: составление таблицы истинности, составление совершенно нормальной дизъюнктивной формы (СДНФ), минимизация СДНФ.

Принимая во внимание то, что операции будут выполняться над четырёх - разрядными числами (операндами), составим таблицу истинности, которая будет отражать зависимость функциональных выходов (результата) от информационных входов, входов выбора, входа задания режима работы и входа переноса.

Таблица3.1 - Таблица истинности АЛУ

S3

S2

S1

S0

M

A0

B0

Cn

F0

1

2

3

4

5

6

7

8

9

0

0

0

0

1

0

0

1

1

0

0

0

0

1

0

1

1

1

0

0

0

0

1

1

0

1

0

0

0

0

0

1

1

1

1

0

0

0

0

1

1

0

0

1

1

0

0

0

1

1

0

1

1

0

0

0

0

1

1

1

0

1

0

0

0

0

1

1

1

1

1

0

0

0

1

0

1

0

0

1

0

0

0

1

0

1

0

1

1

1

0

0

1

0

1

1

0

1

0

0

0

1

0

1

1

1

1

0

0

0

1

1

1

0

0

1

0

0

0

1

1

1

0

1

1

0

0

0

1

1

1

1

0

1

0

0

0

1

1

1

1

1

1

0

0

1

0

0

1

0

0

1

1

1

2

3

4

5

6

7

8

9

0

1

0

0

1

0

1

1

1

0

1

0

0

1

1

0

1

1

0

1

0

0

1

1

1

1

0

0

1

0

1

1

0

0

1

1

0

1

0

1

1

0

1

1

0

0

1

0

1

1

1

0

1

1

0

1

0

1

1

1

1

1

0

0

1

1

0

1

0

0

1

0

0

1

1

0

1

0

1

1

1

0

1

1

0

1

1

0

1

1

0

1

1

0

1

1

1

1

0

0

1

1

1

1

0

0

1

0

0

1

1

1

1

0

1

1

0

0

1

1

1

1

1

0

1

1

0

1

1

1

1

1

1

1

0

1

0

0

0

1

0

0

1

1

1

0

0

0

1

0

1

1

1

1

0

0

0

1

1

0

1

0

1

2

3

4

5

6

7

8

9

1

0

0

0

1

1

1

1

1

1

0

0

1

1

0

0

1

1

1

0

0

1

1

0

1

1

0

1

0

0

1

1

1

0

1

0

1

0

0

1

1

1

1

1

1

1

0

1

0

1

0

0

1

0

1

0

1

0

1

0

1

1

1

1

0

1

0

1

1

0

1

0

1

0

1

0

1

1

1

1

1

1

0

1

1

1

0

0

1

0

1

0

1

1

1

0

1

1

0

1

0

1

1

1

1

0

1

0

1

0

1

1

1

1

1

1

1

1

1

0

0

1

0

0

1

1

1

1

0

0

1

0

1

1

1

1

1

0

0

1

1

0

1

1

1

1

0

0

1

1

1

1

1

1

1

0

1

1

0

0

1

1

1

1

0

1

1

0

1

1

0

1

1

0

1

1

1

0

1

1

1

1

0

1

1

1

1

1

1

1

1

1

0

1

0

0

1

0

1

1

1

0

1

0

1

1

1

1

1

1

0

1

1

0

1

1

1

1

1

0

1

1

1

1

1

1

1

1

1

1

0

0

1

0

1

1

1

1

1

0

1

1

0

1

1

1

1

1

1

0

1

1

1

1

1

1

1

1

1

1

1

0

0

0

0

0

0

0

1

0

0

0

0

0

0

0

1

1

0

0

0

0

0

0

1

0

1

1

0

0

0

0

0

1

1

1

1

0

0

0

1

0

0

0

1

0

0

0

0

1

0

0

1

1

1

0

0

0

1

0

1

0

1

1

0

0

0

1

0

1

1

1

1

0

0

1

0

0

0

0

1

1

0

0

1

0

0

0

1

1

0

0

0

1

0

0

1

0

1

1

0

0

1

0

0

1

1

1

1

0

0

1

1

0

0

0

1

1

0

0

1

1

0

0

1

1

1

0

0

1

1

0

1

0

1

1

0

0

1

1

0

1

1

1

1

0

1

0

0

0

0

0

1

0

0

1

0

0

0

0

1

1

0

0

1

0

0

0

1

0

1

0

0

1

0

0

0

1

1

1

1

1

2

3

4

5

6

7

8

9

0

1

0

1

0

0

0

1

0

0

1

0

1

0

0

1

1

1

0

1

0

1

0

1

0

1

0

0

1

0

1

0

1

1

1

1

0

1

1

0

0

0

0

1

1

0

1

1

0

0

0

1

1

0

0

1

1

0

0

1

0

1

0

0

1

1

0

0

1

1

1

1

0

1

1

1

0

0

0

1

1

0

1

1

1

0

0

1

1

1

0

1

1

1

0

1

0

1

0

0

1

1

1

0

1

1

1

1

1

0

0

0

0

0

0

1

0

1

0

0

0

0

0

1

1

0

1

0

0

0

0

1

0

1

1

1

0

0

0

0

1

1

1

0

1

0

0

1

0

0

0

1

0

1

0

0

1

0

0

1

1

1

1

0

0

1

0

1

0

1

1

1

0

0

1

0

1

1

1

0

1

0

1

0

0

0

0

1

1

1

0

1

0

0

0

1

1

0

1

0

1

0

0

1

0

1

1

1

0

1

0

0

1

1

1

0

1

0

1

1

0

0

0

1

1

1

0

1

1

0

0

1

1

1

1

0

1

1

0

1

0

1

1

1

0

1

1

0

1

1

1

0

1

1

0

0

0

0

0

1

0

1

1

0

0

0

0

1

1

0

1

1

0

0

0

1

0

1

0

1

1

0

0

0

1

1

1

0

1

1

0

1

0

0

0

1

0

1

1

0

1

0

0

1

1

1

1

1

0

1

0

1

0

1

0

1

1

0

1

0

1

1

1

0

1

1

1

0

0

0

0

1

1

1

1

1

0

0

0

1

1

0

1

1

1

0

0

1

0

1

0

1

1

1

0

0

1

1

1

0

1

1

1

1

0

0

0

1

1

1

1

1

1

0

0

1

1

1

1

1

1

1

0

1

0

1

0

1

1

1

1

0

1

1

1

0

0

0

0

0

0

0

0

0

1

0

0

0

0

0

0

1

0

1

0

0

0

0

0

1

0

0

0

0

0

0

0

0

1

1

0

0

0

0

0

1

0

0

0

0

1

1

2

3

4

5

6

7

8

9

0

0

0

1

0

0

1

0

0

0

0

0

1

0

1

0

0

0

0

0

0

1

0

1

1

0

0

0

0

1

0

0

0

0

0

0

0

0

1

0

0

0

1

0

1

0

0

1

0

0

1

0

0

0

0

0

1

0

0

1

1

0

0

0

0

1

1

0

0

0

0

0

0

0

1

1

0

0

1

0

0

0

0

1

1

0

1

0

0

0

0

0

1

1

0

1

1

0

0

0

1

0

0

0

0

0

0

1

0

1

0

0

0

0

1

0

1

0

1

0

0

0

1

0

0

1

0

1

0

0

0

1

1

0

0

0

1

0

1

0

0

0

0

1

0

1

0

1

0

0

1

0

0

0

1

0

1

0

1

0

0

1

0

1

0

1

0

1

1

0

0

0

1

1

0

0

0

0

0

0

0

1

1

0

0

0

1

0

1

0

1

1

0

0

1

0

0

1

0

1

1

0

0

1

1

0

0

0

1

1

1

0

0

0

0

0

0

1

1

1

0

0

1

0

0

0

1

1

1

0

1

0

0

1

0

1

1

1

0

1

1

0

0

1

0

0

0

0

0

0

0

1

1

0

0

0

0

0

1

0

1

1

2

3

4

5

6

7

8

9

1

0

0

0

0

1

1

0

1

1

0

0

1

0

0

0

0

1

1

0

0

1

0

0

1

0

0

1

0

0

1

0

1

0

0

0

1

0

0

1

0

1

1

0

1

1

0

1

0

0

0

0

0

0

1

0

1

0

0

0

1

0

1

1

0

1

0

0

1

0

0

0

1

0

1

0

0

1

1

0

1

1

0

1

1

0

0

0

0

0

1

0

1

1

0

0

1

0

0

1

0

1

1

0

1

0

0

0

1

0

1

1

0

1

1

0

1

1

1

0

0

0

0

0

0

1

1

1

0

0

0

0

1

0

1

1

1

0

0

0

1

0

0

1

1

1

0

0

0

1

1

0

1

1

1

0

1

0

0

0

0

1

1

1

0

1

0

0

1

0

0

1

1

0

1

0

1

0

0

1

1

1

0

1

0

1

1

0

1

1

1

1

0

0

0

0

0

0

1

1

1

0

0

0

1

0

1

1

1

1

0

0

1

0

0

1

1

1

1

0

0

1

1

0

1

1

1

1

1

0

0

0

0

0

1

1

1

1

0

0

1

0

0

1

1

1

1

0

1

0

0

1

1

1

1

1

0

1

1

0

1

Из полученной таблицы, выписав СДНФ для функции F0, и проведя минимизацию, получим:

Аналогичным образом составим выражения для оставшихся трёх разрядов результата.

В приложении А покажем, как на примере нулевого разряда изменяется выражение F0, при различных значениях управляющих сигналов S0, S1, S2, S3, а так же входов М и Сn, определяющих задание режима работы и перенос соответственно.

Полученные выражения функциональных выходов позволяют составить принципиальную схему, которая приведена на рисунке 3.1. Для построения схемы использовались элементы И, ИЛИ-НЕ, И-НЕ, НЕ, Исключающее ИЛИ.

Блок признаков результата должен формировать сигналы, которые бы позволяли рассматривать результаты вычислений как знаковые: признак переполнения (AV) и признак отрицательного результата (AN), а так же дополнительные признаки: признак переноса (AC) и признак нулевого результата (AZ).

Логика признака переполнения (AV) основана на свойствах дополнительного кода. Он устанавливается, если старший бит изменяется вопреки знаку операндов и характеру операции. Например, сложение двух положительных чисел должно давать положительный результат; нарушение в знаковом разряде соответствует переполнению и устанавливает AV=1. Прибавление отрицательной величины может приводить или к отрицательному или к положительному результату, но может вызывать переполнение. Признак отрицательного результата (AN) устанавливается (лог. «1»), когда старший разряд результата соответствует лог. «1». Логика признака переноса основана на беззнаковом представлении чисел. Он установлен в 1, если возник перенос из старшего бита. Признак нулевого результата устанавливается, когда все разряды результата равны лог. «0».

В таблицу 3.2, которая является таблицей истинности, запишем все режимы работы блока признаков результата.

Таблица 3.2 - Таблица истинности Блока признаков результата

F3

F2

F1

F0

A3

B3

Cn4

AV

AN

AZ

AC

1

X

X

X

0

0

X

1

-

-

-

1

X

X

X

X

X

X

-

1

-

-

0

0

0

0

X

X

X

-

-

1

-

X

X

X

X

X

X

0

-

-

-

1

Рисунок 3.1 - Принципиальная схема АЛУ К155ИП3

Используя таблицу истинности, выпишем функциональные зависимости для каждого признака:

AV=

AN=

AZ=

AC=

Составим схему блока признаков результата (рисунок 3.2) на основе записанных выражений, эта схема будет использоваться в общей схеме АЛУ для формирования признаков результата.

3.2 Разработка макромодели

Программа МС7 поставляется с достаточно обширной библиотекой компонентов, которые необходимы для первоначального знакомства с ней. Тем не менее, с течением времени возникает необходимость её пополнения, в первую очередь созданием библиотек отечественных компонентов и макромоделей используемых типовых устройств. Создание модели ИМС к155ип3 является необходимым, так как она отсутствует в стандартной библиотеке компонентов.

В программе МС7 имеются макромодели двух типов. Макромодели типа Macro создаются схемой замещения, Subckt - текстовым описанием. Схема замещения макромодели первого типа помещается в файл схем, имеющих расширение имени .MAC, а текстовое описание второго типа задаётся с помощью директивы .Subckt, размещаемой непосредственно на схеме или, что более удобно, в текстовом файле математических библиотек (расширение имени .LIB или .LBR)

Для того что бы создать нужную макромодель АЛУ и добавить её в библиотеку устройств воспользуемся следующей методикой:

а) Составление принципиальной схемы АЛУ;

б) Создание макромодели типа . Subckt ;

в) Создание УГО для ИМС;

г) Добавление макромодели в текущую библиотеку МС7.

а) Для составления схемы будем использовать логические элементы следующих типов: ИЛИ, И, ИЛИ-НЕ, И-НЕ, НЕ, Исключающее ИЛИ. Все логические элементы взяты из подгруппы стандартные вентили группы цифровые элементы. Пользуясь инструментами

Рисунок 3.2 - Схема блока признаков результата

«Select mode» (выбор), «Component mode» (компоненты) и «Wire mode» (Цепи) составляем схему представленную на рисунке 3.1. Так же необходимо присвоить имена узлам схемы которые будут являться выводами микросхемы, это производим с помощью инструмента «Text mode» (текст).

б) Имя создаваемого компонента должно совпадать с именем макромодели. Для того, что бы установить логическую зависимость выходных узлов от входных, воспользуемся логическим примитивом LOGICEXP. Необходимо задать большой ряд логических выражений и что бы упросить его запись воспользуемся промежуточными переменными, назначив которые, мы можем использовать их при дальнейшей записи. Промежуточным переменным присваиваются имена по тем же правилам, что именам узлов. Все переменные в описываемых выражениях связаны друг с другом через логические операторы, приведём их в порядке убывания их старшинства.

~ - логическое отрицание;

& - логическое И;

^ - логическое исключающее ИЛИ:

| - логическое ИЛИ

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

С помощью секции BOOLEAN (булевского назначения) определяются промежуточные переменные, которые будут использованы в определении задержки. В таблице 3.1 перечислим булевские операторы в порядке убывания их старшинства.

Таблица 3.3 -Булевские операторы

Оператор

Название

~

Логическое отрицание

==

Равно

!=

Не равно

&

Логическое И

^

Логическое исключающее ИЛИ

|

Логическое ИЛИ

Далее используя функции изменения TRN_pn, где p - значение предыдущего состояния, а n - нового состояния, назначаем время задержки для каждого выходного узла. При этом выражение имеет три значения задержек минимальное, типичное и максимальное. Для спецификации неизвестной величины используем -1.

в) Простейшая библиотека графических символов компонентов, находящаяся в файле STANDART.SHP, не содержит фигуры соответствующей обозначению микросхемы К155ИП3, поэтому необходимо её создать. Создание и редактирование символов или условных графических обозначений (УГО) компонентов принципиальных электрических схем осуществляется с помощью графического редактора, вызываемого из меню Windows по команде Shape Editor.

г) Полученную макромодель и фигуру микросхемы необходимо связать между собой, для этого необходимо воспользоваться редактором компонентов. Редактор загружается выбором в меню Windows команды Component Editor. С его помощью редактируется библиотека компонентов (Component library), содержащая все компоненты от резисторов до макромоделей. Для каждого компонента в библиотеку заносится информация о его имени, графике символа, математической модели, расположении позиционного обозначения и других текстовых атрибутов и данные о выводах. Библиотека разбита на группы однотипных компонентов. Нам необходимо создать группу «цифровые компоненты», в ней создаём группу «ТТЛ_Рус» в ней так же создаём группу «К155», в которую уже будет вложена группа «ИП». В группу ИП добавим новый компонент, изменив его название с New_1 на K155IP3, заполнив все необходимые поля окна Component editor, закрываем его, сохраняя при этом изменения.

Ниже приведён листинг полученной макромодели.

* ----------------------------------------------------------- K155IP3 ------

* Arithmetic Logic Units/Functions Generators

*

* The Pop Digital Chips, 1987, Pages 177 to 181

* Shilo V.L.

*

.SUBCKT K155IP3 A0 A1 A2 A3 B0 B1 B2 B3 S0 S1 S2 S3

+ CN M F0 F1 F2 F3 G CN4 P AEQUALB

+ optional: DPWR=$G_DPWR DGND=$G_DGND

+ params: MNTYMXDLY=0 IO_LEVEL=0

UK155IP3 LOGICEXP (14,8) DPWR DGND

+ A0 A1 A2 A3 B0 B1 B2 B3 S0 S1 S2 S3

+ CN M F0_O F1_O F2_O F3_O G_O CN4_O P_O AEQUALB_O

+ D0_GATE IO_STD MNTYMXDLY={MNTYMXDLY} IO_LEVEL={IO_LEVEL}

+

+ LOGIC:

+ i1 = { ~((S3 & A3 & B3) | (S2 & A3 & (~B3))) }

+ i2 = { ~( (S1 & (~B3)) | (S0 & B3) | A3) }

+ i3 = { ~((S3 & A2 & B2) | (S2 & A2 & (~B2))) }

+ i4 = { ~( (S1 & (~B2)) | (S0 & B2) | A2) }

+ i5 = { ~((S3 & A1 & B1) | (S2 & A1 & (~B1))) }

+ i6 = { ~( (S1 & (~B1)) | (S0 & B1) | A1) }

+ i7 = { ~((S3 & A0 & B0) | (S2 & A0 & (~B0))) }

+ i8 = { ~( (S1 & (~B0)) | (S0 & B0) | A0) }

+ G_O = {~(i2 | (i1 & i4) | (i1 & i3 & i6) | (i1 & i3 & i5 & i8))}

+ CN4_O = {~(G_O & (~(i1 & i3 & i5 & i7 & CN)) )}

+ P_O = { ~(i1 & i3 & i5 & i7)}

+ F3_O = { ((i1 ^ i2)^ (~((CN & i7 & i5 & i3 & (~M)) |

+ ( i3 & i5 & i8 & (~M)) |

+ ( i3 & i6 & (~M)) |

+ ( i4 & (~M))))) }

+ F2_O = { ((i3 ^ i4)^(~((CN & i7 & i5 & (~M)) |

+ (i5 & i8 & (~M)) |

+ (i6 & (~M))))) }

+ F1_O = { ((i6 ^ i5) ^ (~((CN & (~M) & i7) |

+ (i8 & (~M)))))};avt

+ F0_O = { ((i8 ^ i7) ^ (~((~M) & CN))) }

+ AEQUALB_O = { (F3_O & F2_O & F1_O & F0_O) }

Udly PINDLY (8,0,14) DPWR DGND

+ G_O CN4_O P_O F3_O F2_O F1_O F0_O AEQUALB_O

+ A0 A1 A2 A3 B0 B1 B2 B3 S0 S1 S2 S3 CN M

+ G CN4 P F3 F2 F1 F0 AEQUALB

+ IO_STD MNTYMXDLY={MNTYMXDLY} IO_LEVEL={IO_LEVEL}

+

+ BOOLEAN:

+ DATA = { CHANGED(A0,0) | CHANGED(A1,0) | CHANGED(A2,0) |

+ CHANGED(A3,0) | CHANGED(B0,0) | CHANGED(B1,0) |

+ CHANGED(B2,0) | CHANGED(B3,0) }

+ SUM = {(S1 == '0) & (S2 == '0) & (S0 == '1) & (S3 == '1) & (M == '0)}

+ DIFF = {(S1 == '1) & (S2 == '1) & (S0 == '0) & (S3 == '0) & (M == '0)}

+ MODE_HI = { (M == '1) }

+ CARRY_IN = { CHANGED(CN,0) }

+

+ PINDLY:

+ CN4 = {

+ CASE(

+ CARRY_IN & TRN_LH, DELAY(-1,12ns,-1),

+ CARRY_IN & TRN_HL, DELAY(-1,13ns,-1),

+ SUM & DATA & TRN_LH, DELAY(-1,28ns,-1),

+ SUM & DATA & TRN_HL, DELAY(-1,27ns,-1),

+ DIFF & DATA & TRN_LH, DELAY(-1,35ns,-1),

+ DIFF & DATA & TRN_HL, DELAY(-1,33ns,-1),

+ DELAY(-1,36ns,-1)

+ )

+ }

+ G = {

+ CASE(

+ SUM & DATA & TRN_LH, DELAY(-1,13ns,-1),

+ SUM & DATA & TRN_HL, DELAY(-1,13ns,-1),

+ DIFF & DATA & TRN_LH, DELAY(-1,17ns,-1),

+ DIFF & DATA & TRN_HL, DELAY(-1,17ns,-1),

+ DELAY(-1,18ns,-1)

+ )

+ }

+ P = {

+ CASE(

+ SUM & DATA & TRN_LH, DELAY(-1,13ns,-1),

+ SUM & DATA & TRN_HL, DELAY(-1,17ns,-1),

+ DIFF & DATA & TRN_LH, DELAY(-1,17ns,-1),

+ DIFF & DATA & TRN_HL, DELAY(-1,17ns,-1),

+ DELAY(-1,18ns,-1)

+ )

+ }

+ AEQUALB = {

+ CASE(

+ DIFF & DATA & TRN_LH, DELAY(-1,35ns,-1),

+ DIFF & DATA & TRN_HL, DELAY(-1,32ns,-1),

+ DELAY(-1,36ns,-1)

+ )

+ }

+ F0 F1 F2 F3 = {

+ CASE(

+ CARRY_IN & TRN_LH, DELAY(-1,13ns,-1),

+ CARRY_IN & TRN_HL, DELAY(-1,12ns,-1),

+ SUM & DATA & TRN_LH, DELAY(-1,28ns,-1),

+ SUM & DATA & TRN_HL, DELAY(-1,21ns,-1),

+ DIFF & DATA & TRN_LH, DELAY(-1,32ns,-1),

+ DIFF & DATA & TRN_HL, DELAY(-1,23ns,-1),

+ MODE_HI & TRN_LH, DELAY(-1,32ns,-1),

+ MODE_HI & TRN_HL, DELAY(-1,23ns,-1),

+ DELAY(-1,33ns,-1)

+ )

+ }

.ENDS K155IP3

4. РАЗРАБОТКА ИМИТАТОРА УПРАВЛЯЮЩИХ СИГНАЛОВ

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

С помощью входов выбора S0-S3 можно выбирать 24=16 функций устройства, реально число этих функций в два раза больше с помощью входа М (Mode control) переключаются режимы, и АЛУ выполняет либо 16 арифметических операций, либо генерирует 16 логических функций двух переменных. Для того, что бы управлять работой микросхемы, на параллельные входы выбора и вход управления режимом будем подавать сигналы, вырабатываемые устройством «Digital switch» (ключ, управляемый щелчком курсора). Применение такого ключа позволяет, в режиме анализа переходных процессов (Transient analysis), изменять его значение (лог. «0» или логическая «1») не выходя из режима анализа, что удобно при изучении схемы на начальных этапах.

На входы А0-А3 необходимо подавать четырёхразрядное слово А (операнд А), на входы В0-В3 аналогичное слово операнд В. Для имитации входных сигналов операндов лучше всего подходят Stimulus Generators (генераторы цифровых сигналов). Программа МС7 имеет в своём составе несколько видов генераторов цифровых сигналов, отличающихся главным образом разрядностью вырабатываемого сигнала. Исходя из того, что АЛУ выполняет операции над четырёх разрядными операндами, выбираем четырёх разрядный генератор Stim4.

Генератор выбирается из меню Digital Primitives (цифровые элементы) в подменю Stimulus Generators (генераторы импульсов), после размещения на схеме этого элемента должно появится окно Stim4 (рисунок 4.1), в котором размещаются основные параметры этого генератора. Перечислим поля, необходимые для заполнения.

Переменная <формат> - это спецификация переменной <данные>, в которой представлены логические уровни сигналов генератора. Эта переменная представляет собой последовательность цифр, общее количество которых равно переменной <количество сигналов> (число сигналов вырабатываемых генератором). Каждая цифра принимает значения 1, 3 или 4, что означает двоичную, восьмеричную или шестнадцатеричную систему счисления.

Главным параметром является атрибут COMMAND= (команды описания формы сигнала). При выделении этой строки открывается окно текста, в котором необходимо задать необходимую комбинацию одной или нескольких следующих строк:

<t>, <логический уровень>

LABEL=<имя метки>

Рисунок 4.1

<t>GOTO <имя метки> <n> TIMES

<t>GOTO <имя метки>UNTIL GT <данные>

<t>GOTO <имя метки> UNTIL GE <данные>

<t>GOTO <тмя метки> UNTIL LT <данные>

<t>GOTO <имя метки> UNTIL LE <данные>

<t>INCR BY <данные>

<t>DECR BY <данные>

Каждая цифра переменной <данные> представляет собой логический уровень соответствующего выходного сигнала, который представлен в системе счисления 2m, где m - соответствующая цифра переменной <формат>. Переменная <t> определят моменты времени, в которые задаются логические уровни сигналов. Если перед значение переменной <t> имеется символ «+», то эта переменная задаёт приращение относительно предыдущего момента времени; в противном случае она определяет абсолютное значение относительно начального отсчёта времени t=o. Суффикс «S» указывает размерность времени в секундах (допускается так же суффикс «nS» - наносекунды и т.п.)

Переменная <данные> состоит из символов «0», «1», «X», «R», «F» или «Z», интерпретируемых в заданном формате.

Переменная <n> задаёт количество повторяющихся циклов GOTO; значение n=-1 задаёт бесконечное повторение цикла.

Переменная <имя метки> используется при организации цикла с помощью оператора перехода GOTO, который пере даёт управление на строку, следующую за оператором LABEL=<имя метки>

Зададим форму сигнала для оператора А:

.DEFINE IN

+0NS 0

+LABEL=START

+200NS INCR BY 1

+400NS GOTO START -1 TIMES

+1800NS 0

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

.define inb

+0ns f

+200ns 9

+400ns c

+600ns 6

+800ns 2

+1000ns 8

+1200ns 7

+1400ns 4

+1600ns b

+1800ns 0

+2000ns c

+2200ns e

+2400ns b

+2600ns c

+2800ns d

+3000ns f

Схема АЛУ содержит два регистра операндов А и В, на параллельные входы которых D0-D3 должны загружаются от данные с генераторов Stim4. Что бы разрешить загрузку с параллельных входов, на вход разрешения необходимо подать напряжение высокого уровня, для этой цели будем использовать источник сигнала лог. «1», из меню Digital Primitives (цифровые компоненты), подменю Pullups/Pulldown (источники логических уровней).

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

.DEFINE IN3

+ 150NS 0

+LABEL=BEGIN

++50NS 1

++50NS 0

++150NS GOTO BEGIN -1 TIMES

На рисунке 4.2 приведем два генератора цифровых сигналов соответствующих А и В операндам и сигналы которые они вырабатывают.

5. РАЗРАБОТКА ОПИСАНИЯ ЛАБОРАТОРНОЙ РАБОТЫ

МС7 - является новой версией популярной системы схемотехнического моделирования Micro-Cap (Microcomputer Circuit Analysis Program) фирмы Spectrum Software. МС7 позволяет моделировать аналоговые, цифровые и аналого-цифровых устройства на постоянном токе, во временной и частотных областях. Она имеет многостраничный графический редактор принципиальных схем, исчерпывающую встроенную помощь, интуитивно понятный интерфейс и другие средства взаимодействия с программой, что особенно важно для использования в учебных учреждениях.

Используя МС7 возможно:

- создание схем, текстовых файлов и библиотеки моделей;

- выполнение моделирования:

- а) анализ переходных процессов (Transient Analysis);

- б) расчёт частотных характеристик (AC Analysis);

- в) расчёт передаточных функций по постоянному току (DC Analysis);

- г) расчёт режима по постоянному току (Dynamic DC);

- вывод на принтеры и плоттеры.

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

1. Главное текстовое меню. Расположено на вершине окна и представляет собой

заголовки выпадающих меню

2. Графическое меню. Набор кнопок с нанесёнными на них пиктограммами,

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

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

4. Линейка состояния, расположена в низу окна, отображает текущий инструмент.

5.1 Создание новой принципиальной схемы

Для создания чертежа новой схемы в основном меню выбрать команду File, далее в появившемся выпадающем меню выбрать команду New, ( рисунок 5.2), а затем, в

Рисунок 5.1

появившемся окне New (рисунок 5.3), выбрать верхнюю строку schematic (создание новой схемы).

Для того, что бы выбрать необходимый компонент, в основном меню нажимается кнопка Component (имеется возможность выбирать активные, пассивные аналоговые или цифровые компоненты, а также макромодели). Выбор элемента может и не производиться, если предыдущий вводимый элемент был точно таким же. После того, как элемент выбран, в нужном месте экрана нажимается левая кнопка мыши. Перед пользователем появляется меню редактирования параметров элемента схемы. Здесь задаются для каждого элемента (резистора, конденсатора и т.д.) свои параметры (сопротивление, емкость, допуск и т.д.). Схемы создаются и редактируются с помощью набора команд, сгруппированных в системе ниспадающих меню. Наиболее употребимые команды вызываются нажатием на пиктограммы или комбинации «горячих» клавиш. Доступные команды и соответствующие им пиктограммы ярко высвечиваются, недоступные затенены. Линейка наиболее употребимых клавиш приведена на рисунке 5.4. Назначение клавиш следующее:

1. Select mode (Выбор). Выбор объектов для операций: редактирования, удаление, перемещение и т.д..

2. Component mode (Компоненты). Добавление компонентов в схему.

3. Text mode (Текст). Нанесение на схему текстовых надписей: имён цепей, описания моделей компонентов, комментариев.

4. Wire mode (Цепи). Ввод ортогональных проводников (цепей).

5. Diagonal wire mode (Диагональные цепи). Ввод цепей под произвольным углом.

6. Graphics mode (Графика). Рисование графических объектов: линий, эллипсов, прямоугольников, и т.д..

7. Flag mode (Режим флага) Этот режим позволяет расставлять флаги, которые используются для отметки определенных мест на схеме. Это позволяет переходить к нужному месту без прокрутки всей схемы.

8. Info mode (Информация). Вывод информации о параметрах выбранного щелчком мыши компонента с возможностью редактирования.

9. Help mode (Помощь). Вызов текстовой информации о модели компонента, выбранного щелчком курсора.

10.Undo. Откат назад на один или несколько шагов.

11. Redo. Откат в перёд на один или несколько шагов.

12. Zoom in. Увеличение масштаба изображения.

Рисунок 5.2

Рисунок 5.3

Рисунок 5.4

13. Zoom out. Уменьшение масштаба изображения.

14. Grid text (Текст). Высвечивание всех текстовых надписей.

15. Attribute text (Позиционные обозначения). Высвечивание позиционных обозначений всех компонентов.

16. Node numbers (Номера узлов). Вывод номеров узлов схемы.

17. Pin connections (Вывод компонентов). Обозначение вводов всех компонентов.

18. Grid. Высвечивание сетки.

19. Title box. Нанесение изображения углового штампа (основной надписи).

20. Rubberbanding. Режим перемещения компонентов вместе с присоединенными к ним проводниками.

21. Properties. Просмотр и редактирование свойств выбранного объекта

Номинальные значения параметров компонентов вводятся в системе СИ. При этом допускается использовать масштабные коэффициенты приведённые в таблице 5.1.

Таблица 5.1

Префикс

Meg

K

M

U

N

P

F

Значение

106

103

10-3

10-6

10-9

10-12

10-15

Название

мега

кило

милли

микро

нано

пико

фемто

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

5.2 Открытие созданной принципиальной схемы

Для работы с уже существующими схемами в библиотеке программы необходимо выбрать режим File, после чего в развернувшемся вниз меню выбрать строку Open, как показано на рисунке 5.5. Далее в развернувшемся меню приводится содержание каталога данных DATA (рисунок 5.6). В нём отмечается строка с именем схемы, которую необходимо выбрать. С помощью окна Open можно так же настроить тип просматриваемых файлов:

- Schematic (*.cir)

Рисунок 5.5

Рисунок 5.6

- Macro (*.mac)

- SPICE (*.ckt; *.stm)

- SPICE Library (*.lib)

- Model Library (*.lbr)

- Model Data (*.mdl)

- Filter (*.res,*.cap,*.ind)

- All Files (*.*) - все

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

5.3 Анализ переходных процессов (Transient Analysis)

После перехода в режим анализа переходных процессов программа МС7 проверяет правильность составления схемы. При отсутствии ошибок в схеме программа составляет ее топологическое описание, выполняет подготовку к численному расчёту переходных процессов и открывает окно задания параметров моделирования Transient Analysis Limits показанном на рисунке 5.7.

Окно задания параметров расчёта переходных процессов имеет следующие разделы.

Команды:

Run - начало моделирования. Моделирование может быть остановлено в любой момент нажатием на клавишу Esc;

Add - добавление ещё одной строки спецификации вывода результатов. На этой строке устанавливается способ отображения результатов и аналитические выражения для построения графиков;

Delete - удаление строки спецификации вывода результатов, отмеченной курсором;

Expand - открытие дополнительного окна для ввода текста большого размера;

Stepping - открытие диалогового окна задания вариации параметров;

Properties - открытие диалогового окна, показанного на рисунке 5.8, имеющего 5 или 6 закладок. Plot - управление выводом графиков на экран и принтер. Scales and formats -выбор масштабов по осям координат. Colors, fonts and lines - выбор цвета объектов, параметров шрифта и типа линий. Header - нанесение заголовков в выходных числовых данных. Save curves - выбор одой или нескольких переменных для сохранения в файлах User source.

Tool bar -нанесение пиктограмм команд на панель инструментов на панель инструментов;

Help - вызов раздела Transient Analysis системы помощи.

Рисунок 5.7

Рисунок 5.8

Числовые параметры:

Time range - спецификация начального и конечного времени расчёта переходных процессов, по умолчанию начальное время Tmin = 0;

Maximum Time Step - максимальный шаг интегрирования. Если этот шаг не задан (или равен нулю), то максимальный шаг интегрирования полагается равным (Tmax -Tmin)/50;

Number of Points - число точек, выводимых в таблицы по умолчанию принимается равным 51;

Temperature - диапазон температуры в градусах Цельсия;

Plot Group - в графе Р числом от 1 до 9 указывается номер графического окна, в котором должна быть построена данная функция;

Выражения:

X Expression - имя переменной, откладываемой на оси Х. Обычно при анализе переходных процессов по этой оси откладывается время (переменная T), но при расчёте спектра сигнала с помощью преобразования Фурье (FFT) по оси Х откладывается частота (переменная F);

Y Expression - математическое выражение для переменной, откладываемой по оси Y. Это может быть простая переменная типа напряжения в узле V(5);

X Range - максимальное и номинальное значение переменной Х на графике по формату Hing [,Low]. Для автоматического выбора диапазона переменных в этой графе указывается Auto;

Y Range - максимальной и минимальной значение Y. Для автоматического выбора диапазона переменной в этой графе указывается Auto.

Опции:

Run Options - управление выдачей результатов расчёта:

Normal -- результаты расчетов не сохраняются,

Save -- сохранение результатов расчетов в бинарном файле <имя схемы>.TSA,

Retrieve -- считывание последних результатов расчета из файла <имя схемы>.ТSА, созданного ранее. При этом производится построение графиков и таблиц переходных процессов, как после обычного расчета.

State Variables -- установка начальных условий:

Zero -- установка нулевых начальных условий для потенциалов всех аналоговых узлов и токов через индуктивности и неопределенных логических состояний "X" для цифровых узлов,

Read -- чтение начальных условий из бинарного файла <имя схемы>.ТОР, созданного с помощью State Variables Editor, перед каждым вариантом расчета при изменении температуры или другого параметра,

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

Operation Point -- выполнение расчета режима по постоянному току перед началом каждого расчета переходных процессов. Данные этого режима заменяют значения всех начальных условий, если они были установлены;

Operation Point Only -- расчет только режима по постоянному току (расчет переходных процессов не производится);

Auto Scale Ranges -- присвоение признака автоматического масштабирования "Auto" по осям X, У для каждого нового варианта расчетов. Если эта опция выключена, то принимаются во внимание масштабы, указанные в графах X Range, Y Range.

Щелчок курсором по одной их панелей Р, X Expression,..., ... Y Range открывает всплывающие окна, пример которых приведен на рисунке 5.7.

5.4 Описание лабораторной работы «Исследование работы АЛУ»

Цель данной лабораторной работы заключатся в изучении функционирования АЛУ на примере ИМС АЛУ К155ИП3, проведя вычислений над двоичными числами. Выполнение работы происходит в среде MicroCap 7.

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

1) Возможности программы МС7 и основные принципы работы с ней.

2) Логические и арифметические операции над двумя переменными.

3) Представление чисел со знаком в дополнительном коде.

4) Признаки результата арифметических операций.

5) Изучить таблицу выбора функций микросхемы К155ИП3 (таблица 1.5).

Домашним заданием для студентов можно рекомендовать несложные вычисления над разными типами чисел: четырёхразрядными беззнаковыми и трёх разрядными знаковыми. При этом в вычислениях необходимо использовать функции из таблицы истинности для ИМС К155ИП3.

Указания к выполнению лабораторной работы.

1) Открытие схемы. Для выполнения работы необходимо запустить программу МС7, как уже говорилось выше, это можно производится двойным щелчком мыши на значок МС7 на рабочем столе при этом появится окно показанное на рисунке 5.1. По команде File\Open (рисунок 5.5) откроется диалоговое окно открытия программы (рисунок 5.6) в котором необходимо открыть директорию с названием LAB ALU и выбрать файл схемы ALU.cir. В результате загружается схема, показанная на рисунке 5.9. При наличии в лаборатории принтера схему необходимо вывести на печать по команде File\Print.

Схема состоит из блока АЛУ (Х3), выполненного на ИМС К155ИП3, трех сдвиговых регистров (X1, X2, X4), выполненных на ИМС К155ИР1 (7495), и блока признаков результата (U11, U12, U13), который представлен микросхемами типовой логики (Inverter, Nor-Tri Gates). Для обеспечения режима загрузки регистров с параллельных портов используется компонент источник логической единицы (PullUp) U7. Цифровые ключи (Digital Switch) (U1-U4 и U9, U10) предназначены для выбора функции, задания режимов работы АЛУ, переключения входа переноса.

На схеме нанесены метки, в виде точек с названием узлов, которые необходимы для спецификации переменных, выводимых на графики. Нанесение меток производится инструментом Text Tool, щелчком курсора по необходимому узлу, или цепи схемы.

2) Выполнение вычислений, при помощи схемы, во временной области при различных значениях операндов. Тип операции: арифметическая или логическая задаёт преподаватель. Для этого выполнить моделирование схемы в режиме Analysis/Transient Analysis. В окне Transient Analysis Limits задаются выражения, по которым можно будет отследить ход работы схемы (рисунке 5.10). Так по шкале Х будет откладываться переменная Т (время), а для шкалы Y зададим следующие выражения:

- A3 - A0 четыре разряда операнда А, поступающего на вход АЛУ;

- В3 - В0 четыре разряда операнда В, поступающего на вход АЛУ;

- F3 - F0 четыре разряда результата;

- DEC(A3 - A0), (B3 - B0), (F3 - F0) - десятичное представление слов А, В, F;

- AV признак переполнения;

- AN признак отрицательного результата;

- AZ признак нулевого результата;

- AC признак переноса.

В строке Time Range указываем 5u, что задаёт длительность моделирования 5 мс. После этого запускаем расчет нажатием RUN.

Для того, что бы реализовать заданную преподавателем функцию на схеме необходимо, не выходя из режима моделирования, переключится в режим редактора схем. Это можно сделать следующим образом: уменьшить размер окна Transient analysis, кликнув кнопкой мыши по кнопке изменения размеров окна (restore down), при этом рабочая область MC7 примет вид, показанный на рисунке 5.11. В данном виде имеется возможность изменять значения компонента Digital Switch (лог. «0» или лог. «1») щелчком мыши.


Подобные документы

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

    дипломная работа [1,0 M], добавлен 14.11.2014

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

    курсовая работа [377,0 K], добавлен 03.12.2010

  • Исследование и принцип работы арифметико-логического устройства для выполнения логических операций. Условно–графическое обозначение микросхемы регистра. Анализ логической схемы регистра, принцип записи, чтения информации. Проектирование сумматора.

    курсовая работа [879,6 K], добавлен 23.11.2010

  • Функциональная и принципиальная схема для арифметико-логического устройства, выполненного в виде печатной платы. Параметры используемой серии логических элементов. Составление минимизированного логического выражения для формирования выходного сигнала.

    курсовая работа [521,0 K], добавлен 15.01.2011

  • Методика составления и минимизации логических функций. Синтез комбинационного устройства на логических элементах и мультиплексоре. Логическая функция в виде СДНФ, преобразование функции в минимальный базис ИЛИ-НЕ. Проектирование устройства с памятью.

    курсовая работа [964,1 K], добавлен 27.09.2012

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

    курсовая работа [1,6 M], добавлен 16.02.2012

  • Разработка структурной схемы электронного устройства. Синтез и расчет транзисторного усилителя. Синтез преобразователей уровня, схемы арифметических преобразователей. Схема компаратора, разработка цифровой схемы. Расчет тока нагрузки блока питания.

    реферат [1,4 M], добавлен 06.11.2013

  • Разработка структурной и принципиальной схемы, проектирование изготовления печатной платы. Расчёт потребляемой мощности и температурного режима блока, проектирование его корпуса. Чертёж основания блока устройства и сборочный чертёж блока устройства.

    курсовая работа [1,6 M], добавлен 19.11.2012

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

    дипломная работа [3,4 M], добавлен 16.12.2011

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

    курсовая работа [1,4 M], добавлен 17.12.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.