Последната редакция на тази книга е от 2021 година.

 

 

I.6.  Комбинационни двоични суматори с групов пренос

 

 

      Многоразрядните двоични суматори с последователен пренос, разгледани до момента, имат време за превключване определено от броя на последователно свързаните логически елементи във веригата на преносите. За суматорите с последователен пренос съществува още един подход, който позволява съществено да се повиши бързодействието в случаите, когато веригата от последователно разпространяващи се преноси е със значителна дължина (например над 50% от дължината на разрядната мрежа). За да възприемете идеята в следващия по-долу синтез, бихте могли да асоциирате максимата "когато стоящият пред вас проблем е непреодолим, заобиколете го".

      Условията за приложение на тази идея се появяват, когато общата дължина на суматора се раздели на групи, свързани последователно:

      Тогава ускоряването на разпространението на преноса чрез заобикаляне на групите може да бъде реализирано, ако се синтезира подходяща за целта логическа схема.

      Функцията на преноса, имаща вида (2), може да се запише по следния начин:

откъдето се дефинират следните елементи:

         -   местен пренос  (пренос, възникващ в текущия  i-ти разряд, в резултат на две единици, подавани в суматора от двата операнда);

   -   транзитен пренос (пренос, който възниква в текущия  i-ти разряд, по причина на идващия от по-младшия разряд пренос). Възникващият в текущия  i-ти разряд пренос се разпространява обаче в съседния  (i+1)-ви разряд при условие, че поне един от операндите подава в суматора цифра "1" в текущия разряд. В смисъла на така изложената интерпретация се въвежда още следното понятие:

    -   условие за разпространение на транзитния пренос.

      В крайна сметка след заместване, изразът за логическата функция на преноса приема вида:

      Въведените понятия и техните означения са в основата за организиране на разпространението на преноса между групите, на които се разделя общата дължина на суматора. Така например, постъпващият в дадена група пренос започва разпространението си вътре в групата, но ако съществуват необходимите условия, то той може да премине транзитно покрай групата, изпреварвайки този, който се разпространява вътре в групата и така да постъпи в следващата група значително по-рано. Реализацията на тази идея (идеята за заобикаляне на групата) има вида, показан на фигура I.6:

 

Фиг. I.6.  Схема за междугрупов пренос

 

      Тук във фигурата се виждат аналогичните зависимости:

където:

            k          означава броя на разрядите в групата;

            МГП     е логическа функция на междугруповия пренос, която е в съответствие с уравнение (15);

            ГП        е логическа функция на груповия пренос  (ГП=pk-1);

            УТП      е логическа функция на условието за транзитен групов пренос.

      Лесно може да се съобрази, че ако двоичният пренос се разпространява вътре в групата по цялата й дължината, то в същото време транзитното му преминаване покрай групата ще стане значително по-бързо, тъй като по този път се превключват значително по-малък брой логически елементи. По-ранното достигане на истинната стойност на преноса до следващата група означава, че там също по-рано ще стартира разпространението му вътре в групата, а може би и покрай нея. Суматор с такава организация има следния вид:

 

Фиг. I.7.  Суматор с групов пренос

 

      Ако се приеме, че времето за превключване на схемите, реализиращи транзитния пренос, може да се оцени с времето за превключване на един инвертор - t [s], то общото време за превключване, в най-тежкия случай, за така получената структура, ще бъде следното:

      В получения израз с  Tm-1  е означено времето за разпространение на преноса в най-старшата група; с  T0  е означено времето за разпространение на преноса в най-младшата група; а с m - броят на групите. Необходимо е да се разбира, че най-тежкият случай е този, при който най-младшият пренос отсъствува, т.е.  p-1=0.  Ако  p-1=1, (например при операция изваждане, както ще бъде пояснено по-късно тук в пункт IV.2 или в пункт 3.2.1 на [1]) максималното закъснение ще бъде

      Ако се приеме, че броят на разрядите във всяка отделна група на суматора е един и същ, то броят на групите ще бъде  m=n/k,  а закъсненията  Tm-1  и  T0 , ще имат стойността  k.t.  Така съответните оценки за времето на превключване на суматора получават вида:

            tΣ  =  [ 2.k.t+(n/k - 2).t ]           - при липса на пренос в младшия разряд;

            tΣ  =  [ k.t +(n/k - 2).t +t ]        - при наличие на пренос в младшия разряд.

      При анализ на структурата на суматора с групов пренос логично възникват въпросите:

·   На колко групи да се раздели общата дължина на суматора ?

·   Каква да бъде дължината на всяка отделна група ?

      На тези въпроси може да се отговори, ако се изследва времето за превключване на суматора  tΣ  като функция от дължината на групите – k. За първия случай се получава:

където функцията  L(k)  има вида:

      Следва да се определи при каква стойност на k, функцията  L(k)  има минимална стойност. След диференциране на (18) по k се получава:

След полагането

се получава търсеният отговор:

а времето за превключване се оценява с израза:

      Така, ако дължината на суматора е n=32 [b], то дължината на всяка група, според полученото решение, ще бъде

Спомнете си този резултат, когато четете следващия раздел !

      Броят на групите в случая се определя на 

m = n/k = 32/4 = 8.

      И така, в 32 битовия суматор ще има 8 групи от по 4 бита всяка, обхванати от схемите за транзитен пренос, както е показано на фигура I.7. Тогава времето за превключване на тази примерна структура, според (16), ще бъде:

      Съществува още един подход към това изследване, същността на който се състои в това, че се приема разделяне на общата дължина на суматора на групи с различна дължина. Могат да бъдат изследвани различни стратегии за разделяне, например:

а) разделяне на групи, дължините на които намаляват, започвайки от средната група, в посоките наляво и надясно от нея;

б) разделяне на групи, дължините на които намаляват само в една посока.

      Стратегия а) предполага, че най-дългата група се намира в средата на множеството от групи. Всяка следваща група по посока на двата края на суматора намалява своята дължина с 1 [b], като минималната дължина на най-старшата и на най-младшата група е 1 [b]. Логиката, която мотивира предлагането на тази стратегия се състои в предположението, че най-дългите верижки от последователни преноси са най-вероятни в средата на разрядната мрежа и следователно групата, която е най-изгодно да бъде заобикаляна, е средната.

      При тази стратегия е ясно как ще се формират отделните групи, но общият им брой е неизвестен. Неизвестна е и дължината на средната група.

      В случая, дължините на групите могат да се разгледат като елементи на аритметична прогресия с начален елемент 1 и краен елемент (m-1), където с m е означена неизвестната дължина на средната група. Общата дължина на суматора се формира от общата дължина на двете аритметични прогресии плюс дължината на средната група, т.е.

      Или крайният резултат е

който представлява дължината на средната група, а броят на групите е

2.(m - 1) + 1  =  2.m - 1  ,

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

      Оценката на времето за превключване на суматор с такава организация се представя чрез израза:

      Стратегия б) предполага за най-старшата група дължина 1 [b], а за всяка следваща по-младша - дължина увеличена с 1 [b], т.е. дължините на последователните групи ще бъдат 2 [b], 3 [b], 4 [b] и т.н. Най-младшата група ще бъде с неизвестна дължина от m разряда. От тук следва, че броят на групите ще бъде m. Общата дължина на суматора обаче е известна - n [b]. Логиката, която мотивира предлагането на тази стратегия се състои в предположението, че най-дългите верижки от последователни преноси са най-вероятни в най-младшата група, където винаги има значещи цифри (нека припомним, че става дума за събиране на числа с дясно фиксирана запетая). Следователно групата, която е най-изгодно да бъде заобикаляна, е най-младшата и следващите я по-старши.

      Интерпретирайки дължините на групите като елементи на аритметична прогресия, чиято сума представлява дължината на целия суматор, се получава

      Решенията на това квадратно уравнение имат вида:

      Отговорът, който има смисъл в нашата интерпретация, е

Равенството е в сила при достатъчно голямо n.

      Оценката на времето за превключване на суматор с такава организация на груповия пренос се изразява с уравнението:

 

     Оценки и изводи:  Това което може да се каже за получените схемни решения е, че с минимални апаратни допълнения, при подходяща организация, суматорите с последователен пренос при големи дължини на разрядната мрежа, могат да бъдат значително ускорени. Ускорението е толкова по-голямо, колкото по-интензивно се използува суматорът. Вероятността за ускоряване е по-голяма в случаите, когато събираните числа са пълноразрядни.

 

Въпроси и задачи:

1. Сравнете и коментирайте логическите основания (разбирания) за издигане на стратегиите за разделяне. Опитайте се да изявите други мотиви за разделяне и ако успеете да формулирате такива, проведете анализ и изведете оценката за времето за превключване на суматора. Сравнете тази оценка с получените по-горе.

2. Оценете оборудването за реализиране на междугруповите преноси при различните разделяния и сравнете. Направете изводи.

3. С какво трябва да бъде съобразено разделянето, в случай когато схемата на суматора е с ускорен последователен пренос (виж фигура I.2)?

4. Оценете времето за превключване на двоичен суматор с дължина 64 [b] при различните стратегии на неговото разделяне.

 

 

 

Следващият раздел е:

1.7  Комбинационен двоичен суматор с паралелен пренос