Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Книги / Книга Проектирование ВПОВС (часть 2)

.pdf
Скачиваний:
84
Добавлен:
01.06.2015
Размер:
4.62 Mб
Скачать

Таблица истинности подобна табл. 3.2, за исключением того, что

наборы, содержащие (+1) и

– логической переменной

x

0, заменяются логической переменной

i

171

x

 

i

 

, а (–1) и 0

x(i 1)

xi

bi

 

 

 

0

0

0

 

 

 

0

1

0

 

 

 

1

0

0

 

 

 

1

1

0

 

 

 

0

0

1

 

 

 

0

1

1

 

 

 

1

0

1

 

 

 

1

1

1

 

 

 

x

 

 

i

0

1

0

0

1

0

0

0

 

x

 

 

i

 

 

 

0

 

0

 

0

 

 

 

 

 

1

 

 

0

 

0

 

1

 

 

0

 

bi+1

0

0

0

1

0

1

1

1

На первой карте показаны наборы входных элементов, которым соответствует данная клетка карты. Вторая карта используется для синтеза

логического выражения

переменных

x

 

 

i

.

Младшие биты соответствуют

переменной

переменной

x

b.

i

, а старшие – переменной

x

 

i

 

,

x

 

i

 

. Третья карта соответствует

x

x

x

x

i 1

i 1

i 1

i 1

xi xi

110

111

011

010

100

101

001

000

xi xi

01

00

00

10

00

01

10

00

 

 

b

 

b

 

 

b

 

 

i

 

 

 

i

 

 

 

 

i

 

 

 

x

 

x

x b x

x b

 

i

i 1

i

i

i 1

i

i ,

b

b

b

i

i

 

i

 

xi xi 1 xi bi xi 1 xi bi .

xi 1

 

xi 1

 

 

 

 

 

 

 

xi

xi

1

1

1

0

0

1

0

0

b

b

 

b

bi 1 xi 1 xi xi bi xi 1bi .

172

Схема, соответствующая полученным функциям, показана на рис. 3.21.

xi 1

ЛЗ |--|

ЛЗ |--|

xi

bi

 

 

 

1

 

&

1

&

x

 

 

 

 

 

i

 

 

 

 

 

 

 

 

b

 

 

&

i 1

 

 

&

 

 

 

 

 

&

 

 

 

 

 

1

 

 

&

x

 

 

 

 

 

 

 

 

i

&

Рис. 3.21

Здесь ЛЗ – линия задержки на такт.

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

разрядов используются две шины.

 

 

Пусть имеем следующее число: 0 1 0

1

. Для передачи

разбивается на положительную и отрицательную части, как это показано

положительные единицы

0 1 0 0

+

отрицательные единицы

0 0 0 1

 

цифр

число ниже.

3.5.3. Преобразование двоичных чисел в избыточную систему счисления,

начиная со старших разрядов

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

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

173

При преобразовании со старших разрядов различают однопроходные и двухпроходные преобразователи. Рассмотрим преобразование со старших разрядов в однопроходном преобразователе.

Для построения таблицы истинности, как и при преобразовании с младших разрядов, анализируется два разряда. Здесь i-й разряд является старшим, а следующий (i+1)-й разряд по отношению к анализируемому является младшим. При этом возможны следующие случаи.

1.Если двухразрядное число равно нулю, т.е. 00, то i

преобразовываемый разряд равен нулю (0).

2.Если это число равно (01), то нуль в i-м разряде заменяется на единицу (1).

3.Если число равно (10), то единица в разряде заменяется на минус 1.

4.Если число равно (11), то единица в i-м разряде заменяется на нуль.

Таблица истинности такого преобразования представлена ниже (табл. 3.3).

 

 

Таблица 3.3

 

 

 

Анализируемые разряды

Новое значение i-го разряда

 

 

 

Xi

Xi +1

X*i

 

 

 

0

0

0

 

 

 

1

0

1

 

 

 

0

1

1

 

 

 

1

1

0

 

 

 

Соответствующие логические выражения имеют вид

x

 

 

i

 

 

x

i

 

x

i 1

 

;

x

 

 

i

 

 

x

i

 

x

i 1

 

.

Схема преобразователя из двоичного кода в избыточный код, начиная со старших разрядов, приведена на рис. 3.22.

174

 

 

 

x

 

 

 

 

 

i

 

 

x

|

|

 

+

 

 

&

x

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

i+1

 

 

 

 

 

x

 

 

 

 

 

i

 

 

 

|

|

&

x

-

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

i+1

 

 

Рис. 3.22

Пример 3.8. Х = 0. 1 1 0 1 1 0 0 1 1 1 0 0 1 Осуществим преобразование Х = 0. 1 1 0 1 1 0 0 1 1 1 0 0 1 Хдизсс = 1. 0 1 1 0 1 0 1 0 0 1 0 1 1

Пример 3.9.

Х = 0. 1 0 1 0 1 0 1 0 1 0

Хдизсс = 1. 1 1 1 1 1 1 1 1 1 0

Как видим, плотность заполнения числа значительно увеличилась.

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

175

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 3.4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

x

 

x

 

x

 

y

 

y

 

y

 

 

y

 

i

i

i 1

 

i

i

i 1

 

i 1

 

 

 

i 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

0

0

0

0

0

 

0

 

0

1

0

0

0

1

0

 

0

 

0

0

1

0

0

0

1

 

0

 

0

1

1

0

0

*

*

 

*

 

*

0

0

1

0

0

0

 

1

 

0

1

0

1

0

1

0

 

1

 

0

0

1

1

0

0

0

 

1

 

1

1

1

1

0

*

*

 

*

 

*

0

0

0

1

0

0

 

0

 

1

1

0

0

1

0

0

 

1

 

0

0

1

0

1

0

1

 

0

 

1

1

1

0

1

*

*

 

*

 

*

0

0

1

1

*

*

 

*

 

*

1

0

1

1

*

*

 

*

 

*

0

1

1

1

*

*

 

*

 

*

1

1

1

1

*

*

 

*

 

*

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y+i

 

 

 

 

y+i + 1

 

 

 

x+i +1

x+i +1

 

x+i +1

 

 

x+i +1

 

1

*

0

1

x-i

1

*

 

1

0

x-i

x+i

 

 

 

 

x+i

 

 

 

 

 

 

*

*

*

*

x-i

*

*

 

*

*

x-i

 

 

 

 

 

 

 

 

 

 

0

*

0

0

 

0

*

 

0

0

 

x+i

 

 

0 x-i

x+i

 

 

 

 

 

x-i

0

*

0

1

*

 

0

0

x-i +1

-

 

x-i +1

 

x-i +1

 

-

 

x-i +1

 

 

x i +1

 

 

 

 

x i +1

 

 

y+i = x+i x-i +1

 

y+i + 1 = x+i x-i +1 v x-i x+i +1

176

 

 

+

 

 

 

 

 

y-i

 

 

 

 

x

 

 

 

x

+

 

 

 

 

 

i +1

 

i +1

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

*

 

0

0

-

 

 

 

 

 

 

x i

 

x

+

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

*

 

 

*

 

*

*

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

i

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

*

 

1

1

 

 

 

x

+

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

*

 

0

0

 

 

 

 

 

 

x

i

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

-

 

 

 

 

x i +1

 

-

 

 

 

x i +1

 

 

 

 

 

 

 

x

i +1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

-

= x

-

x

+

 

 

 

 

 

i

i

 

i +1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y-i + 1

 

 

 

 

 

 

 

 

 

x+i +1

 

 

 

 

 

 

 

 

x+i +1

 

 

0

*

0

0

 

x-i

 

x+i

 

 

 

 

 

 

 

 

*

*

*

*

 

x-i

 

 

 

 

 

 

 

 

 

 

0

*

1

0

 

 

 

x+

i

 

 

 

 

 

 

x-i

 

1

*

1

0

 

 

 

 

 

+1

 

 

 

 

 

+1

 

 

 

 

x-i

-

 

 

x-i

 

 

 

 

 

 

x i +1

 

 

 

 

 

y-i + 1 = x+i x-i +1 v x+i + 1 x+i x-i

Функциональная схема преобразователя представлена на рис. 3.23.

 

 

 

 

x

+

 

 

 

 

+

 

 

 

 

i

 

 

 

 

x

-

 

 

&

 

 

 

y

 

i

 

 

 

 

 

 

 

 

 

i +1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

+

 

 

 

 

 

 

 

 

&

1

 

i + 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

-

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

&

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

-

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

&

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

-

 

 

 

 

 

 

 

 

 

1

i + 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

&

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

+

 

 

 

 

 

 

 

 

 

 

i +1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

&

 

 

 

 

 

 

Рис. 3.23

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

177

Все комбинации, возникающие при преобразовании, приведены в табл.

3.5.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 3.5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

i

x

i 1

 

x

i 2

 

x

i

 

x

i 1

x

i 2

 

 

 

 

 

 

 

 

 

 

 

1.

0

0

 

0

 

0

 

0

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

2.

1

0

 

0

 

1

 

0

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3.

1

0

 

0

 

 

1

 

0

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

4.

0

1

 

0

 

0

 

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

5.

1

1

 

0

 

1

 

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

6.

1

1

 

0

 

0

 

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

7.

0

1

 

0

 

0

 

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

8.

0

1

 

0

 

0

 

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

9.

1

1

 

0

 

1

 

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

10.

0

0

 

1

 

0

 

0

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

11.

1

0

 

1

 

1

 

0

 

1

 

 

 

 

 

 

 

 

 

 

 

 

12.

1

0

 

1

 

0

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

13.

0

1

 

1

 

1

 

0

1

 

 

 

 

 

 

 

 

 

 

 

 

14.

1

1

 

1

 

0

 

0

1

 

 

 

 

 

 

 

 

 

 

 

 

15.

0

0

 

1

 

0

 

0

1

 

 

 

 

 

 

 

 

 

 

 

 

16.

1

0

 

1

 

1

 

0

1

 

 

 

 

 

 

 

 

 

 

 

 

17.

1

0

 

1

 

1

 

0

1

 

 

 

 

 

 

 

 

 

 

 

 

18.

0

1

 

1

 

0

 

0

1

 

 

 

 

 

 

 

 

 

 

 

 

19.

1

1

 

1

 

1

 

0

1

 

 

 

 

 

 

 

 

 

 

 

 

20.

1

1

 

1

 

0

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

21.

0

1

 

1

 

0

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

22.

1

1

 

1

 

0

 

0

1

 

 

 

 

 

 

 

 

 

 

 

 

23.

1

1

 

1

 

1

 

0

1

 

 

 

 

 

 

 

 

 

 

 

 

24.

0

1

 

1

 

0

 

0

1

 

 

 

 

 

 

 

 

 

 

 

 

Рассмотрим

метод

на примере

использования

одновременно трёх

разрядов. Преобразование осуществляется одновременно всех трёх разрядов и

178

преобразованные разряды (i+1) и (i+2) в следующем шаге участвуют в преобразовании как (i)-й и (i+1)-й разряды (обратная связь).

Отметим, что при переводе со старших разрядов отрицательных чисел,

представленных в дополнительном коде, целая единица (знак) представляется как 1, т. е., если xДОП = 1.011101, то при переводе число рассматривается как 1.011101.

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

старших разрядов.

Пример 3.10.

 

 

 

 

 

3

 

5

 

 

9

 

 

 

 

 

 

1

 

 

 

 

7

 

 

11

 

 

 

 

 

 

 

 

 

 

 

x

=

0.

0

1

1

0

1

1

1

0

0

1

1

 

 

 

 

2

 

4

 

6

 

 

 

10

12

 

 

 

 

 

 

 

 

 

12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1. Первый набор (в ячейках таблицы указаны значения входного набора под таблицей выходного набора):

x

i

x

i+1

x

i+2

 

 

 

 

 

 

 

0

0

 

1

x

= 0.

 

 

 

 

 

 

 

0

 

0

 

0

 

1

 

 

2. Второй набор:

 

 

0

1

 

1

x

= 1.

 

 

 

 

 

 

 

1

 

1

0

 

1

 

 

3. Третий набор:

 

 

 

 

 

 

 

x2 = 0.

0

1

 

0

 

 

 

 

 

 

 

0

1

 

0

 

 

4. Четвертый набор:

179

1

0

1

 

 

x

3

= 0.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

1

1

 

 

 

 

 

 

 

5. Пятый набор:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x4 = 1.

1

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

0

1

 

 

 

 

 

6. Шестой набор:

 

 

 

 

 

0

1

1

 

 

x

= 0.

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

0

0

1

 

 

 

 

 

 

7. Седьмой набор:

 

 

 

 

 

0

1

0

 

 

x

 

= 0.

 

 

 

 

 

 

 

 

 

 

6

 

 

 

0

1

0

 

 

 

 

 

 

 

8. Восьмой набор:

 

 

 

 

 

1

0

0

 

x

= 1.

 

 

 

 

 

 

 

 

 

 

7

 

 

 

1

0

0

 

 

 

 

 

 

9. Девятый набор:

 

 

 

 

 

0

0

1

 

 

x

8

= 0.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

0

1

 

 

 

 

 

 

 

10. Десятый набор:

 

 

 

 

 

0

1

1

 

 

x9 = 1.

 

 

 

 

 

 

 

 

 

 

 

1

0

1

 

 

 

 

 

 

 

11. Одиннадцатый набор:

0

1

0

x10 = 0.

 

 

 

 

0

1

0

 

12. Двенадцатый набор:

180