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

 

 

4.   Продължение  1

 

 

 

Етап Г2)   Синтез на принципната логическа схема

 

А)  Синтез на логическата схема, използвана от операция “зареждане на операнд

      Ще представим най-напред синтеза на комбинираното (външно/вътрешно) управление на RAM-паметите в различните им съвместни състояния. Тези състояния са алтернативни, следователно могат да бъдат обобщени от дизюнктивна логическа функция.

      Когато се четат данни, това става от двете памети едновременно. На управляващите входове се подават едни и същи сигнали, определени от състоянието на тригер Т2, както следва:

·         Паметите се избират чрез активна нула на входовете от тип  not(CS), при което

·         Включването на изходните даннови линии се постига чрез активна нула на разрешаващите входове:

·         а входовете за код на операцията  R/not(W),  които се управляват единствено от външната среда, по това време има постоянна логическа единица, което означава, че е определен режим за четене.

 

      Когато в RAM-паметите се извършва запис на данни, логическите стойности на управляващите им входове се определят от външната среда с помощта на Л.Сх.2. По това време тригер Т2 е установен в състояние единица, което е неактивно за входовете които управлява, както беше пояснено по-горе. Логическата схема Л.Сх.2 управлява само два от входовете на всяка от паметите – за код на операцията  R/not(W)  и за избор на памет  not(CS), при това разделно. Предвидено е външният сигнал за избор на памет  not(Sx)  или  not(Sy)  да бъде непрекъснато активен в този режим, при което

      Импулсът  not(WR)=0,  който фиксира поредния елемент в отворената клетка, следва да се яви на вход  R/not(W)  на съответната RAM-памет само при този режим, ето защо ще го обвържем със съответния сигнал за избор  not(Sx)  или  not(Sy) , както следва:

или

      В крайна сметка можем да обобщим:

1.       Входовете  not(EOx)  и  not(EOy)  се управляват единствено от сигнала  not(ERAM), т.е.

2.       Входовете

се управляват единствено от външната среда според уравненията (4.9) и (4.10).

3.       Само входовете за избор на памет

се управляват съвместно от тригер Т2 и от логическата схема Л.Сх.2, в резултат на дизюнктивното обединение на сигналите от двата източника. Така логическите функции на тези входове са:

или

      Освен управлението на RAM-паметите Л.Сх.2 управлява и брояча Бр.i. В началото на алгоритъма “зареждане на операнд” тази схема трябва да издаде нулиращия импулс УС0, който следва да се появи в отговор на задния фронт в началото на някой от сигналите

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

      При тези определения, генерирането на импулса УС0 може да се реализира от схема, която е представена на фигура 8.5, тъй като тук за нашия случай е изпълнено условието (8.1). Тази логическа схема е наречена селектор на единичен синхронен импулс.

      Както се вижда от фигура 4.4, синхронният запис на много векторни елементи изисква автоматична модификация на съдържанието на адресния брояч Бр.i. За целта, от активните нулеви импулси за запис  not(WR)=0, трябва да се получат броячните импулси “+1”. Тези импулси обаче трябва да се получават само когато външната среда работи с устройството, ето защо тяхното получаване ще обвържем със сигналите за избор  not(Sx)  и  not(Sy). Логическата функция на тези импулси тогава ще има следния вид:

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

      Последният елемент на тази част от схемата, който трябва да бъде синтезиран, е признакът EQ:

където чрез

са означени стойностите на съответните битове в брояча Бр.i.

      Този признак приема стойност единица, когато съдържанието на брояча Бр.i е следното:

      В резултат на всичко казано до момента можем да представим принципната логическа схема на тази част от устройството (фигура 4.7). Преди това обаче, с цел да конкретизираме схемната реализация, без загуба на общност, ще приемем, че n=8[b].

 

 

Фиг. 4.7.  Принципна логическа схема за управление на RAM-паметите

 

 

Б)  Синтез на логическата схема, използвана от операция “прочитане на резултата

 

      Алгоритъмът на тази операция беше изказан при обяснение на логическата структура от фигура 4.3. Той е функция на външната среда и в структурата на устройството се постига чрез логическа схема Л.Сх.1 и входните сигнали от фигура 4.6. Според алгоритъма тази схема има четири устойчиви състояния. Началното (изходното) състояние се постига принудително чрез сигнала Reset, или след изпълнение на алгоритъма на операция “прочитане на резултата”. Това състояние е характерно със следните стойности на изходните за схемата сигнали:

      Останалите състояния се определят от изходните сигнали както следва

Първо състояние:

Второ състояние:

Трето състояние:

 

      Схемата започва да се превключва (според фигура 4.6) след подаване на активна нула на разрешаващия вход  not(EO), на всеки такт от последователността С. Моментите на поява и изчезване на този сигнал приемаме да са тези, които са изобразени на фигура 4.6, при което в отворения временен интервал са възможни 4 пълноценни и последователни такта (периода), предназначени за прочитане на отделните порции на резултата и тяхното фиксиране чрез стробиращи външната среда активни нулеви импулси от типа  not(WR).

      От времедиаграмата се вижда, че в края на всеки един от тези тактове логическата схема се превключва в ново състояние, като след последния импулс отново се установява в изходно състояние, определено чрез (4.16). Превключването от изходно състояние в първо, както и във всяко следващо, следва да се извършва в момент, определен от инверсните тактови импулси  not(C), така щото във всеки цял период на тактовата последователност С да се осъществи прочитане и фиксиране (запис) на поредната порция от резултата. Тъй като е предвидено сигналът  not(EO)=0  да бъде активен по време на целия алгоритъм, превключващите схемата импулси ще получим като обвържем тактовата последователност  not(C)  със сигнала  not(EO):

      Разчитаме на това, че след изложените пояснения, читателят може лесно да приеме извода, че по същество подобно поведение би имала една логическа схема, в чийто състав един дешифратор разпознава състоянията на един брояч.

      Като имаме предвид уравнение (4.16), разрешаващите сигнали ще имат следните логически уравнения:

      Окончателният вид на логическата схема Л.Сх.1 е представен на фигура 4.8.

 

 

Фиг. 4.8.  Логическа схема за управление четенето на данни

 

 

В)  Синтез на логическата схема на буферните регистри

 

      Буферните регистри имат за задача да поддържат във времето двата съмножителя. Друго специално съдържание те не съхраняват, ето защо тяхното управление е единствено чрез управляващия сигнал УС8. Чрез него в регистрите се записват едновременно прочетените от RAM-паметите данни. При това всеки запис унищожава предидущото съдържание. Тъй като данновите изходи на статичните RAM-памети извеждат само правите стойности на съответните битове, най-подходящ за реализация на буферните регистри се оказва синхронният D-тригер със структура от тип Latch, без установъчни входове, от вида, показан на фигура 3.1.9 в раздел 3.

      При вече избраната стойност на параметъра n (n=8[b]) следва, че буферните регистри са 8-битови. Тяхната принципна логическа схема е показана на фигура 4.9.

 

 

Фиг. 4.9.  Принципна логическа схема на буферен регистър

 

 

Г)  Синтез на логическата схема на акумулатора

 

      Вече беше изложено, че акумулаторът, в който се натрупват произведенията от елементите на двата вектора, е двутактов. Синтезът и принципната логическа схема на този вид натрупващ суматор читателят може да намери в книга [2]. В логическата структура на проектираното устройство акумулаторът АКМ не е натоварен с допълнителни микрооперации, ето защо неговата подробна логическа схема няма да бъде представена тук.

      Дължината  Ls  на акумулатора АКМ е определена според (4.4) и (4.5). При n=8[b] тази дължина се определя на 24[b] (три байта). Това, което може да бъде съобразено за логическата схема на акумулатора, като облекчаващо неговата реализация обстоятелство, е фактът, че операция събиране се изпълнява пълноценно само в младшата му част, както е илюстрирано на фигура 4.1. В старшата част се натрупват само възможните от младшата част преноси  p(2n-1) , което позволява тя да бъде реализирана без паралелни входове, като обикновен двоичен брояч с дължина  ls[b].

      След казаното, обобщената принципна логическа схема на акумулатора АКМ, заедно с изходните буфери, е показана на фигура 4.10.

 

 

Фиг. 4.10.  Принципна логическа схема на акумулатора

 

 

Д)  Синтез на логическата схема на умножителя

 

      Проектирането на логическата схема на умножителя УМН, както вече беше определено, ще извършим според алгоритъма на Бут, който е представен в книга [1] и илюстриран с числени примери в книга [2]. В нашия пример тук този алгоритъм се изпълнява за два 8-битови съмножителя, представени във форма с дясно фиксирана запетая, в допълнителен код. Логическата структура на умножителя ще реализира метода за умножение “с младшите разряди напред, по схемата с неподвижно множимо”.

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

1.       Функция на изместването:

2.       Функция на операцията:

където чрез

е означен номерът на текущия бит от i-тия елемент  yi  на вектора y.

      Операциите събиране и изваждане на поразрядното произведение с междинната сума изискват множимото (елемент xi), което представлява съдържанието на Рг. Х, да се разпространява в логическата схема на умножителя като  (+xi) и като  (-xi). Получаването на допълнителния код на умалителя при операция изваждане изисква събиране с единица в младшия разряд на поразрядното произведение. Ясно е, че според (4.23), може да се направи следния извод:

      При това положение текущият структурен суматор в схемния умножител и неговите връзки могат да бъдат представени обобщено по следния начин – фигура 4.11:

 

 

Фиг. 4.11.  Логическа структура на суматорите в умножителя

 

 

      Както се вижда, на десния вход на суматора СМj се мултиплексират

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

      От системата (4.26) става ясно, че обратният код на множимото се подава винаги заедно с преноса

на младшия вход на суматора. След всичко казано до момента, на фигура 4.12 представяме принципната логическа схема на схемния умножител УМН – елемент U028.

 

 

Фиг. 4.12.  Принципна логическа схема на умножителя (8х8)

 

      Управляващите сигнали

в схемата от фигура 4.12 са функция на текущите два младши бита

от множителя и техният краен вид, след заместването им в уравненията (4.25) и (4.26), е следния:

      Логическата схема на тези два сигнала се повтаря многократно за всяко от нивата  j=0,1,2,…,(n-1)  в схемния умножител. Тези логически схеми не са изобразени на фигура 4.12. Изобразяваме тези схеми в отделен чертеж, който е показан на фигура 4.13. Логическите схеми от тази фигура представят първите 4 нива в умножителя. Обръщаме внимание на читателя, че изключение в повтарящите се схеми представлява тази на ниво  j=0,  където началната стойност на предидущия бит на множителя е нула:

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

 

 

Фиг. 4.13.  Логическа схема на управляващите сигнали  (УС+)j  и  (УС-)j

 

      Освен това изключение, в схемата на умножителя има още едно, което е свързано със случая, когато множимото е най-малкото число, т.е. когато

Под най-малкото число разбираме най-малкото представимо число в допълнителен код за разрядната мрежа с фиксирана запетая, която вече беше определена. Както е известно от книга [1], където е представен този алгоритъм за умножение, този изключителен случай се характеризира с възможността да настъпи препълване при събиране на всеки такт. В резултат на това най-старшата цифра

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

(вижте книга [2], раздел 4.3.2, уравнение 96). Ще илюстрираме казаното току що с конкретен пример. Ще представим умножението на множимото X=-16 с множителя Y=+11, като ще очакваме произведението Z=-176. Умножението ще извършим в разрядна мрежа с дължина 5[b], за която числото (-16) е най-малкото.

 

 

      Както може да се види в примера, след първата операция събиране настъпва препълване, което довежда до модифицирано аритметическо изместване надясно.

      В логическата схема на умножителя, схемата S, реализираща съответното уравнение за възстановяване на знака на междинната сума, използва преносите в и от знаковия разряд  (p7,p6)  за откриване на препълването чрез преносите, както още и цифрата, получена като сума в същия разряд  (z7) - (вижте фигура 4.11).

      Представената логическа схема на умножителя не е оптимизирана (това е задача за читателя), използваните комбинационни суматори са с последователен пренос. В този случай времето за превключване на представената логическа схема на умножителя УМН в най-тежкия случай може да се оцени с времеконстантата

където с  (t)+  е означено времето за превключване на едноразряден двоичен суматор.

      Тъй като приблизително толкова е и времето за разпространение на преносите в акумулатора АКМ, приемаме продължителността на двата празни такта в блок-схемата на алгоритъма (виж фигура 4.5) за еднаква. Това означава, че няма да въвеждаме допълнителни празни тактове в нея и тя ще остане непроменена.

 

 

 

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

4.  Продължение 2