Всю выборку микрооперации, подготовку операндов удобно выполнять на ПЛМ, т.к число переменных, используемых в ПЛМ довольно велико (до 48 конъюнкций в одном выражении). А на АЛУ проводить арифметические или логические операции.
С помощью ПЛМ можно исключить из схемы мультиплексоры, все логические элементы. Полученную схему легче реализовать на печатной плате так как уменьшается число входов/выходов т.е. уменьшается число дорожек. В схеме, собранной на элементах большой степени интеграции используется ПЛМ, матрицы программирования которых представлены на рисунках ниже.
Для наглядности синтеза удобно нарисовать следующую таблицу:
Y | S3 | S2 | S1 | S0 | M | CR | Операция |
Y0 | 1 | 1 | 1 | 1 | 1 | 1 | A |
Y1 | 1 | 1 | 1 | 1 | 1 | 1 | A |
Y2 | 1 | 1 | 1 | 0 | 1 | 1 | A+B |
Y3 | 1 | 0 | 1 | 1 | 1 | 1 | A*B |
Y4 | 1 | 1 | 1 | 0 | 1 | 1 | A+B |
Y5 | 0 | 1 | 1 | 0 | 1 | 1 | |
Y6 | 0 | 1 | 1 | 0 | 1 | 1 | |
Y7 | 1 | 1 | 1 | 0 | 1 | 1 | A+B |
Y81 | 0 | 0 | 0 | 1 | 0 | 0 | S A+B |
Y82 | 0 | 1 | 1 | 0 | 0 | 0 | S A-B |
Y91 | 1 | 1 | 1 | 1 | 1 | 1 | A |
Y92 | 1 | 1 | 1 | 0 | 1 | 1 | A+B |
Для входной шины:
S1 = 1
M = 1
CR = 1
Для выходной шины:
S3 = M = CR = Y9
S2 = S1 = A3 (1) *Y8 + Y9
S0 =
Так как для кодировки сигналов операций будет использован двоичный шифратор 8®3, то введём следующее соответствие:
Для получения функций, которые нужно сформировать на ПЛМ удобно построить следующую таблицу в которой прописаны операнды для АЛУ в каждый момент времени. Причём y0 - случай, когда нет сигнала на выполнение операций:
A1 | B1 | A2 | B2 | A3 | B3 | A4 | B4 | A5 | B5 | A6 | B6 | A7 | B7 | A8 | B8 | |
Y0 | R (1) | X | R (2) | X | R (3) | X | R (4) | X | R (5) | X | R (6) | X | R (7) | X | R (8) | X |
Y1 | 1 | X | 1 | X | 1 | X | 1 | X | 1 | X | 1 | X | 1 | X | R (8) | X |
Y2 | | | | | | | | | | | | | | | | |
Y3 | A1 (1) | X | | R (2) | A2 (3) | X | A2 (4) | X | A2 (5) | X | A2 (6) | X | A2 (7) | X | A2 (8) | X |
Y4 | A1 (1) | R (1) | A1 (2) | R (2) | A1 (3) | R (3) | A2 (4) | R (4) | A2 (5) | R (5) | A2 (6) | R (6) | A2 (7) | R (7) | A2 (8) | R (8) |
Y5 | R (1) | X | R (1) | R (2) | R (1) | R (3) | R (1) | R (4) | R (1) | R (5) | R (1) | R (6) | R (1) | R (7) | R (1) | R (8) |
Y6 | S6 (1) | R (1) | S6 (2) | R (2) | S6 (3) | R (3) | S6 (4) | R (4) | S6 (5) | R (5) | S6 (6) | R (6) | S6 (7) | R (7) | S6 (8) | R (8) |
Y7 | R (1) | | S7 (2) | X | S7 (3) | X | S7 (4) | X | S7 (5) | X | S7 (6) | X | S7 (7) | X | S7 (8) | X |
На первой ПЛМ будут реализованы следующие функции:
На второй ПЛМ будут реализованы следующие функции:
На третьей ПЛМ будут реализованы следующие функции:
P = R (1)
На четвертой ПЛМ будут реализованы следующие функции:
L = Y8 + Y9
H =
Реализация шины В.
Для получения функций, которые нужно сформировать на ПЛМ удобно построить следующую таблицу в которой прописаны операнды для АЛУ в каждый момент времени.
W1 | V1 | W2 | V2 | W3 | V3 | W4 | V4 | W5 | V5 | W6 | V6 | W7 | V7 | W8 | V8 | |
Y81 | R (1) | A3 (1) | R (2) | A3 (2) | R (3) | A3 (3) | R (4) | A3 (4) | R (5) | A3 (5) | R (6) | A3 (6) | R (7) | A3 (7) | R (8) | A3 (8) |
Y82 | R (1) | A3 (1) | R (2) | A3 (2) | R (3) | A3 (3) | R (4) | A3 (4) | R (5) | A3 (5) | R (6) | A3 (6) | R (7) | A3 (7) | R (8) | A3 (8) |
Y91 | R (1) | X | | X | | X | | X | | X | | X | | X | | X |
Y92 | R (1) | A3 (1) | R (2) | A3 (2) | R (3) | A3 (3) | R (4) | A3 (4) | R (5) | A3 (5) | R (6) | A3 (6) | R (7) | A3 (7) | R (8) | A3 (8) |
Y81
Y82
Y91
Y92
На пятой ПЛМ, реализующую шину В получим:
W1 = R (1) *Y8 + R (1) *Y9
V1 = A3 (1) *Y8 + (A3 (1) * (
S3 = M = CR = Y9
S2 = S1 = A3 (1) *Y8 + Y9
S0 =
W2 = R (2) *Y8 + (
V2 = A3 (2) *Y8 + (A3 (2) * (
W3 = R (3) *Y8 + R (3) *Y9
На шестой ПЛМ, реализующую шину В получим:
V3 = A3 (3) *Y8 + (A3 (3) * (
W4 = R (4) *Y8 + (