Материал: lb8_данные_удалены

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

внешней синхронизации C_ext. При помощи сигнала CLR реализован асинхронный сброс.

На рисунке 3.3 представлен операционный блок.

Рисунок 3.3 – Операционный блок

На выходе OP1 получаем результат логической операции A ∩ B, где

Q_reg[5..3] и Q_reg[2..0] это входы А и В соответственно.

На выходе OP2 получаем результат арифметической операции А-В.

При помощи декодеров inst13, inst15, inst17, inst19, inst21 реализовано преобразование из двоичного кода в код МТК-2 согласно соответствующей таблице истинности. Результат преобразования получаем на выходе OP3.

При помощи счетчика inst24 осуществляется счет проделанных операций.

На clk_en поступает сигнал, когда счетчик тактирующих сигналов C_ext равен 0,

и при подаче сигнала на C_ext срабатывает счетчик inst24. Счетчик оснащен асинхронным сбросом по сигналу CLR.

11

На рисунке 3.4 представлен выходной блок.

Рисунок 3.4 – Выходной блок

На мультиплексор в качестве адресного сигнала поступает сигнал

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

12

4МОДЕЛИРОВАНИЕ

Втаблице 4.1 представлен план моделирования, по которому каждая операция будет выполняться два раза с разными входными данными и сброс до

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

Таблица 4.1 – План моделирования

 

 

 

 

 

 

Входы

 

 

 

 

 

 

 

 

 

 

Выходы

 

 

 

 

 

Код

 

 

A

 

 

 

 

 

 

B

 

 

CLR

4

 

3

 

2

 

 

1

 

0

 

операции

5

 

4

 

3

 

 

2

 

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

1

x

 

x

 

0

 

 

1

 

0

 

1

 

0

0

 

0

 

0

 

 

0

 

1

 

0

 

1

x

 

x

 

1

 

 

1

 

1

 

0

 

0

0

 

0

 

1

 

 

0

 

0

 

1

 

0

1

 

0

 

0

 

 

0

 

0

 

1

 

0

0

 

0

 

0

 

 

0

 

1

 

1

 

0

0

 

0

 

0

 

 

1

 

1

 

0

 

0

0

 

0

 

1

 

 

1

 

0

 

1

 

1

1

 

1

 

0

 

 

0

 

0

 

1

 

0

0

 

0

 

1

 

 

0

 

1

 

1

 

1

0

 

1

 

0

 

 

1

 

1

 

0

 

0

0

 

0

 

1

 

 

0

 

0

 

0

 

0

x

x

 

x

 

x

x

x

0

0

 

0

 

1

 

 

1

 

1

 

x

 

x

x

x

 

x

 

x

x

x

1

0

 

0

 

0

 

 

0

 

0

 

0

 

0

x

x

 

x

 

x

x

x

0

0

 

0

 

0

 

 

0

 

1

 

На рисунке 4.1 представлено моделирование для операции преобразования двоичного кода в код МТК-2.

Рисунок 4.1 – Моделирование первых двух операций (Timing)

На передний фронт (50 нс) первого такта (50-100 нс) C_ext сигнал 1 на входе input (0-100 нс).

На передний фронт (150 нс) второго такта (150-200 нс) C_ext сигнал 0 на входе input (100-200 нс).

13

На передний фронт (250 нс) третьего такта (250-300 нс) C_ext сигнал 1 на входе input (200-300 нс).

На передний фронт (350 нс) четвертого такта (350-400 нс) C_ext сигнал 0

на входе input (300-400 нс).

На передний фронт (450 нс) пятого такта (450-500 нс) C_ext сигнал 1 на входе input (400-500 нс).

На передний фронт (550 нс) шестого такта (550-600 нс) C_ext сигнал 0 на входе input (500-600 нс).

Таким образом входные данные ХХ0101, а код операции 01, причем данные были введены последовательно младшими разрядами вперед. При подаче активного сигнала nreadd (900-1000 нс) генерируется тактовый сигнал

C_out (956,25-1056,25 нс). Выдача полученного результата происходит по заднему фронту (925-975 нс). На выходе outt осуществляется выдача выходных данных: 00001.

На передний фронт (1300 нс) первого такта (1300-1350 нс) C_ext сигнал 1

на входе input (1250-1350 нс).

На передний фронт (1400 нс) второго такта (1400-1450 нс) C_ext сигнал 0

на входе input (1350-1450 нс).

На передний фронт (1500 нс) третьего такта (1500-1550 нс) C_ext сигнал 0

на входе input (1450-1550 нс).

На передний фронт (1600 нс) четвертого такта (1600-1650 нс) C_ext сигнал

1 на входе input (1550-1650 нс).

На передний фронт (1700 нс) пятого такта (1700-1750 нс) C_ext сигнал 1 на входе input (1650-1750 нс).

На передний фронт (1800 нс) шестого такта (1800-1850 нс) C_ext сигнал 1

на входе input (1750-1850 нс).

Таким образом входные данные ХХ1110, а код операции 01, причем данные были введены последовательно младшими разрядами вперед. При подаче активного сигнала nreadd (2200-2300 нс) генерируется тактовый сигнал

14

C_out (2256,5-2356,5 нс). Выдача полученного результата происходит по заднему фронту (2225-2275 нс). На выходе outt осуществляется выдача выходных данных: 00100.

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

Рисунок 4.2 – Моделирование логической операции

На передний фронт (2700 нс) первого такта (2700-2750 нс) C_ext сигнал 0

на входе input (2650-2750 нс).

На передний фронт (2800 нс) второго такта (2800-2850 нс) C_ext сигнал 1

на входе input (2750-2850 нс).

На передний фронт (2900 нс) третьего такта (2900-2950 нс) C_ext сигнал 1

на входе input (2850-2950 нс).

На передний фронт (3000 нс) четвертого такта (3000-3050 нс) C_ext сигнал

0 на входе input (2950-3050 нс).

На передний фронт (3100 нс) пятого такта (3100-3150 нс) C_ext сигнал 0 на входе input (3050-3150 нс).

На передний фронт (3200 нс) шестого такта (3200-3250 нс) C_ext сигнал 0

на входе input (3150-3250 нс).

На передний фронт (3300 нс) седьмого такта (3300-3350 нс) C_ext сигнал 0

на входе input (3250-3350 нс).

На передний фронт (3400 нс) восьмого такта (3400-3450 нс) C_ext сигнал 1

на входе input (3350-3450 нс).

15

Источник: https://studfile.net/preview/16587323/