
- •Розділ 1. Суматори і арифметично-логічні пристрої
- •1.1. Однорозрядні суматори
- •1.2. N-розрядні (паралельні)суматори
- •Розділ 2. Основні мікросхемисуматорів
- •2) Об'ємобладнання, що оцінюється кількістю входів, рівному 15 (це одне з кращих значень даного параметра). Рис. 2.1. Схема (а) і умовне графічне позначення (б)однорозрядногосуматора(к155им1)
- •2.1. Мікросхеми к155им2 – к155им3
- •2.2. Мікросхема к155ип3
- •Розділ 3. Модульні операції
- •Висновки
- •Література
Розділ 3. Модульні операції
Реалізація арифметичних операцій
кінцевого поля Галуа GF (р),
кінцевого поля комплексних цілих чисел,
кінцевих кілецьZМ,
,
зводиться до реалізації модульних
операцій, тобто операційдодаванняі множення, що виконуються по модулю
деякого простого (інодіскладного) числа. Те ж саме можна сказати
про реалізацію операцій розширеного
поля Галуа GF (рν),
елементами якогоєбагаточлени, визначені над простим
полем GF (р).
Томув основі арифметичногопристрою,
що виконує операції над цими багаточленами,
лежитьпристрій,
що виконує операціїскладанняі множення по модулюр. Отже, ефективна
реалізація модульних операцій визначає
ефективність реалізації системиЦОСзагалом.
Мабуть,упершез проблемоюапаратурноїреалізації модульних операційзіткнулисяприпобудовіЦОМ, працюючої в системі залишкових класів. Існує два основних методи реалізації модульних операцій: метод табличної арифметики і метод додаткових зв'язківперенесень.
Метод табличної арифметики заснований на табличній реалізації модульних операцій. Цифри в таблиці додаванняі множення по модулюМ записуютьсяв двійковій системі числення (або вk-значній системі). Даліскладаютьсятаблиці істинності для цифр кожного розряду двійкових (k-значних) еквівалентівМ‑значнихчисел, присутніх в таблиці, і проводиться синтез відповіднихпристроїв.
Приклад 3.1. Таблиціскладанняпо модулю 3 відповідає табл. 3.1, в якій замість чисел 0, 1, 2 записані їх двійкові еквіваленти.Зцієї таблиці виходять дві таблиці істинності для цифр першого розряду чисел табл. 3.1 (табл. 3.2) і цифр другого розряду цих чисел (табл. 3.3). Даліпроводятьсяоптимальнедовизначенняі мінімізація функцій алгебри логіки, заданих в табл. 3.2 і 3.3.Післяцього вказані функції реалізовуються за допомогою двійкових компонент (логічні елементи, що реалізовують операції будь-якого з функціонально повних логічних базисів). Функції, подібні заданим в табл. 3.1 і 3.2, як правило, погано мінімізуються. Тому реалізація всіх розрядів модульногосуматорав порівнянні з реалізацією звичайного двійковогосуматора, підсумовуючого числа з таким же числом розрядів, виявляється більш громіздкою. Цевідноситьсяі до модульнихпомножувачів. Однак появаППЗПзумовиламожливість ефективної реалізації модульних операцій за допомогою методу табличної арифметики. Єдиний недолік цього методу – значніапаратурнівитратиприреалізації таблиць істинності,множиназміни змінних в яких перевершуємножинузміни зміннихППЗП. Це означає, щопривеликих значеннях модуляМапаратурнареалізація модульних операцій стає проблематичною. Останнє є обмежуючимчинникому використанні методу табличної арифметикиприреалізації модульних операцій кінцевих кілець, що використовуються вЦОС.
Таблиця 3.1
Складанняза модулем 3
х1 |
х2 | ||
00 |
01 |
10 | |
00 |
00 |
01 |
10 |
01 |
01 |
10 |
00 |
10 |
10 |
00 |
01 |
Таблиця 3.2
Таблиця істинності для цифр першого розряду значень зтабл. 3.1
х1 |
х2 | ||
00 |
01 |
10 | |
00 |
0 |
1 |
0 |
01 |
1 |
0 |
0 |
10 |
0 |
0 |
1 |
Таблиця 3.3
Таблиця істинності для цифр другого розряду значень зтабл. 3.1
х1 |
х2 | ||
00 |
01 |
10 | |
00 |
0 |
0 |
1 |
01 |
0 |
1 |
0 |
10 |
1 |
0 |
0 |
Однак потрібно відмітити, що розвиток інтегральної схемотехнікиі появаППЗПбільшоїмісткостів деякій мірі компенсують вказаний обмежуючийчинник. Але сучасніППЗПне дозволяють ефективно реалізувати арифметичні операції по модулюМприМ> 212. Тому основним методом реалізації модульних операційєметод додаткових зв'язківперенесень, якийполягаєувведеннідодатковихперенесеньміж розрядамисуматораз метою досягнення заданої величини модуляМ, відмінноївід величини модулясуматорабез додатковихперенесень, рівної 2п, деп– число розрядівсуматора.Прицьому найменше число додатковихперенесеньдля двійковогоп-розрядногосуматора(усього одне додаткове перенесення з старшого розряду в молодший) виходитьпривиборі значенняМ, рівному 2 ± 1.
Рис. 3.1. Схема суматорапо модулюМ – 2п± 1.
На рис. 3.1 показана схема суматорап-розрядних чиселА =а1а2...ап іВ =b1b1...bn по модулюМ = 2п± 1.Якщопідсумовування проводиться по модулюМ = 2п– 1, то значенняперенесеннязстаршого розряду підсумовуєтьсязізначенням молодшого розряду суми,якщопідсумовування проводиться по модулюМ = 2п+ 1, то значенняперенесеннязстаршого розряду віднімаєтьсязмолодшого розряду суми. Оскількиприпідсумовуванні чисел по модулюМ = 2п+ 1доводитьсявідняти значенняперенесення, реалізація операції суми по цьому модулю виявляється складнішою в порівнянні з реалізацією операції суми по модулюМ = 2п– 1. Фактичносуматорп-розрядних чисел по модулюМ = 2п+ 1повиненскладатися зповниходнорозряднихсуматорів–віднімачів, в той час яксуматорп-розрядних чисел по модулюМ = 2п– 1 складається з більш простих елементарнихланок–повниходнорозряднихсуматорів. Тому арифметика по модулю М = 2п– 1 більш переважна, ніж арифметика по модулюМ = 2п+ 1. Однак вибір кільця вирахування по модулюМ = 2п+ 1зумовленийотримуванимиланкамиоб'ємівТЧП, визначених над таким кільцем і рівнихступеню2. В цьому випадкуприобчисленніТЧПможна використати відомі швидкі алгоритми, засновані на прорідженні по частоті або за часом. Відомі також методи спрощення цієї арифметики.АпаратурнареалізаціяТЧП, визначених над кільцем вирахування по модулюМ = 2п+ 1, може спрощуватися зарахуноквибору первісного елемента, рівного 2 абоступені2. При цьому операції множення замінюються операціямизсуву. ЦестосуєтьсяТЧП, визначених над кільцем вирахування по модулю будь-якоговиду. ВзагальномувипадкуприпобудовіпроцесораЦОС, орієнтованого не тільки на реалізаціюТЧП, необхідно реалізувати операцію модульного множення.
Помножувачп-розрядних чисел по модулюМ = 2п+ 1 може бутипобудованийна основісуматора, показаного на рис. 3.2. Однак в прямомувидівикористання модульногосуматоранеефективне через наявність циклічногоперенесення, яке погіршує швидкодію схеми.Врахуванняциклічногоперенесеннякращездійснювативподальшомутактіобчислень(див. рис. 3.2).Перенесення, виникаючеприпідсумовуванні двох слів частковихдобутківА = а1а2...ап іВ =b1b1...bn подається на молодший розрядсуматора, щоздійснюєпідсумовуванняподальшогослова частковихдобутківС =с1с2...сп і результату суми слівА та В.
Рис. 3.2. Схема матриці суматорів
Остаточна корекція суми, пов'язана з циклічним перенесенням, проводиться на додатковому (п +1)-мукроціобчислень. Точно так само можна враховувати циклічнеперенесенняприпослідовномуобчисленнідобутку.
Приклад 3.2. Наведемоукрупнену блок-схему матричногопомножувачатрирозряднихдвійкових чисел по модулюМ == 23– 1.
В матричному помножувачіоперація множення реалізовуєтьсяапаратурним, а немікропрограмнимшляхом. Вироблення двохтрирозряднихчисел можназаписатитаким чином:
Кожне слово часткових добутківнеобхіднопривестипо модулюМ = 23 – 1. Для цього розряди з вагою, більшою 22, треба скласти з молодшими розрядами. Тоді
Зразкова блок-схема матриці суматорівпомножувачапоказана на рис. 3.3. Остаточна корекція результату суми частковихтворівздійснюєтьсяза допомогоюсуматораSM3. Тількиуцьогосуматорає циклічнеперенесення.Повнаблок-схема складається зформувачачастковихдобутківі матрицісуматорів.
Зприкладу3.2 видно, що в порівнянні іззвичайнимпомножувачемтрирозряднихдвійкових чисел модульнийпомножувачдодатковоміститьсуматорSM3. У процентномувідношенні– це невелике збільшеннявитратобладнання. До того жпризбільшенні розрядності вхідних сліввідсотокзбільшеннявитратобладнаннязнижується.
Рис. 3.3. Схема матриці суматорівпомножувачачисел по модулюМ = 23– 1
Модульний помножувачп-розрядних чисел можна використовувати длязвичайногомноженняn/2-розрядних чисел. Легкопересвідчитися, щопритакому обмеженні результат модульного множенняспівпадаєз результатомзвичайногомноження.