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

A_O_Melnik_Arkhitektura_komp_39_yuteriv

.pdf
Скачиваний:
265
Добавлен:
12.02.2016
Размер:
6.8 Mб
Скачать

254

П р о с т о р о в ий граф алгоритму складається з функціональних операторів, яким від­ повідають обчислювальні операції, та дуг, якими здійснюється передача даних для об­ робки. Часовий граф алгоритму складається з однієї вершини, яка послідовно виконує операції просторового графу. Даний граф характеризується наявністю вхідних та вихід­ них вузлів, які є незалежними входами (виходами) вершини графу. Подавання вхідних даних та видача вихідних даних здійснюється у певні проміжки часу (такти). Вхідні дані Х1 та Х2 поступають на 1 та 2 такті, а видача вихідних результатів У; та У2 відбувається на 8 та 9 тактах. На вхідних та вихідних дугах графу зображені числа, які вказують порядок спрацювання дуги в часі. Дуги, біля яких записано кілька цифр, спрацьовують більше одного разу. Трикутні вершини із вказаними значеннями затримки даних відповідають за здійснення одночасної подачі даних з вихідного вузла до вхідних вузлів вершини гра­ фу. Трикутні вершини, які мають на виході вузли, пропускають більше одного даного.

Тоді для побудови багатотактового операційного пристрою потрібно синтезувати багатофункціональну комбінаційну схему, яка б дозволяла виконати всі функціональні оператори ФО, а пристрій керування повинен задати тип виконуваного в конкретний момент часу функціонального оператора та забезпечити пересилання на входи багато­ функціональної комбінаційної схеми потрібних в цей момент даних.

Багатотактові операційні пристрої характеризуються малими затратами обладнання та, відповідно, невисокою продуктивністю.

Питання побудови багатотактового операційного пристрою в цілому формалізовані і детально розглянуті в літературі.

7.11.Однотактовий операційний пристрій

Побудова однотактових операційних пристроїв передбачає повністю апаратне відо­ браження просторового графа виконуваного алгоритму комбінаційними схемами, які виконують функціональні оператори алгоритму і з'єднані між собою відповідно до гра фа алгоритму, як це показано на рис. 7.15.

Вхідні дані

Вхідні дані

Рг

Рг

Вихідні дані

ФО - функціональний оператор КС - комбінаційна схема

Рис. 7.15. Просторовий граф алгоритму та його апаратне відображення

255

Кожному функціональному оператору алгоритму ФО поставлена у відповідність комбінаційна схема КС, яка його виконує. На вході та виході операційного пристрою включені регістри.

Часова затримка в однотактовому операційному пристрої Т о п визначається сумою за­ тримок і. комбінаційних елементів, що лежать на найдовшому шляху проходження сигналу

іІ

Цей шлях (їх може бути декілька) називається критичним шляхом.Обчислення часу виконання алгоритму в однотактовому операційному пристрої зводиться, таким чином, до знаходження критичного шляху.

Затрати обладнання \ У 0 П на однотактовий операційний пристрій визначаються су­ мою затрат обладнання \У". на реалізацію комбінаційних схем К С , тобто

і

атакож на вхідні та вихідні регістри.

7.12.Конвеєрний операційний пристрій

Конвеєрний принцип обробки передбачає суміщення в часі виконання операторів алгоритму над різними даними. Одним із можливих підходів тут є конвеєризація однотактових ОП, структура яких базується на апаратному відображенні потокового графа виконуваного алгоритму. На рис. 7.16 показано структуру конвеєрного операційного пристрою, який реалізує потоковий граф алгоритму, наведений на рис. 7.6.

а

Ь

Рис. 7.16. Потоковий граф алгоритму а) та структура конвеєрного операційного пристрою, який його реалізує Ь)

Як ми вже вияснили, потоковим графом алгоритму називають таке представлення графа, яке передбачає розділення всіх його вершин по ярусах таким чином, що в і-му

256

ярусі розміщені тільки функціональні оператори, які залежать хоча б від одного функці­ онального оператора (і-І)-го яруса і не залежать від функціональних операторів, які не входять в яруси з меншими ніж і номерами. Всередині яруса функціональні оператори між собою не мають з'єднань. На рис. 7.16а штриховими лініями розділені яруси графа. При побудові конвеєрного операційного пристрою кожному функціональному опера­ тору алгоритму поставлена у відповідність комбінаційна схема КС, яка його виконує, і, крім того, комбінаційні схеми, які виконують функціональні оператори ярусів пото­ кового графа алгоритму, розділяються конвеєрними регістрами КР, як це показано на рис. 7.16Ь.

Таким чином, апаратне відображення алгоритму означає послідовне з'єднання ком­ бінаційних схем, кожна з яких виконує операції одного яруса алгоритму. В конвеєрному операційному пристрої комбінаційні схеми з'єднані між собою через конвеєрні регістри.

Заданий алгоритм виконується над вхідними даними при їх однократному прохо­ дженні через конвеєрний операційний пристрій.

Найбільша довжина конвеєра такого конвеєрного операційного пристрою дорівнює кількості Р ярусів алгоритму. Такий конвеєрний операційний пристрій має найвищу частоту, яка може бути досягнута при апаратній реалізації заданого конкретизованого ПГ алгоритму.

Узагальнена структура конвеєрного операційного пристрою наведена на рис. 7.17.

 

і)

V

у

 

т

 

К

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

КРД

 

 

 

 

 

КРК 1

 

 

1-І

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

КС 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

КРД

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

КС 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

КС

т

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

КРД т

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

і

і

 

І —

 

 

 

 

 

Рис. 7.17. Структура конвеєрного операційного пристрою

Тут Хі - входи поступлення даних (і =

1, 2

г), г - кількість входів, Yj - виходи ре­

зультатів обчислень ()' = 1, 2

 

в), в - кількість виходів, КРД і КРК - конвеєрні регістри

відповідно до даних Д і команд К, т - кількість ярусів ПГ алгоритму, п - кількість ярусів конвеєра конвеєрного операційного пристрою. Якщо структура конвеєрного операцій­ ного пристрою орієнтована на реалізацію алгоритму, який обчислює одну функцію, він називається однофункціональним, групу функцій - багатофункціональним. В багато­ функціональному конвеєрному операційному пристрої програмуються канали передачі

257

інформації та функції, які виконуються комбінаційними схемами відповідно до графа багатофункціонального алгоритму

В

однофункціональному конвеєрному операційному пристрої вихідні дані У = -.у,

у2 ,

5 однозначно визначаються вхідними даними X = х ^ , ,хг і функцією Ф, зашитою

в його структурі: У = Ф(Х). В загальному випадку У = {Ук Г }, X - {Хг }, тобто обробці під­ лягають матриці даних. При цьому к = 1, 2,..., в;) = 1, 2,..., г; і = 1, 2,..., N . де г, в - КІЛЬКІСТЬ входів і виходів конвеєрного операційного пристрою, N - кількість груп чисел, які по­ ступають в конвеєрний операційний пристрій. Для кожного яруса однофункціонального конвеєрного операційного пристрою можна записати А = Ф (Аі), де Аі - вмістиме ре­ гістрів і-го яруса, Ф - операція, що визначається функціональними операторами (і+1)-го яруса ПГ алгоритму і виконується в (і+1)-му ярусі конвеєрного операційного пристрою. Так як А0 = X; А , - ФДА,,); А2 = Ф ^ А ^ і т. д., то У = Фт (Ф(...(Ф1 (Х))...))> тобто функція Ф виконується над даними, які надходять в конвеєрний операційний пристрій, при їх про­ ходженні через всі яруси конвеєра

Нехай в конвеєрному операційному пристрої обробляється масив чисел X = {Х^ Х2,..., Хг}, г = 1, 2,..., N. В першому такті тактовим імпульсом Т в регістр КРД1 записується значення Хг Над ним в комбінаційній схемі КС1 першого яруса виконується операція

Фг Другим тактовим імпульсом результати цієї операції перепишуться в регістр КРД2 , а

врегістр КРД1 запишеться значення Х2 . В комбінаційних схемах КС^ КС 2 над значення­ ми, що зберігаються відповідно в регістрах КРД] і КРД2 виконуються операції Ф] і Ф2 . В

третьому такті результати із К С 2 запишуться в КРД3 і т. д. На регістри ярусів конвеєра, котрі звільняються, в кожному такті засилаються нові дані оброблюваного масиву, над якими виконуються ті ж операції. При повній загрузці конвеєра одночасно виконують­ ся оператори всіх т ярусів алгоритму. Стан конвеєрного операційного пристрою в 1-му такті його роботи при обробці N чисел визначається вектором А(г) = |А (ОА (г)...А

де І = 1, 2,..., (т + N0. При цьому А т ( і ) = У(, тобто в кожному такті на виході конвеєрного операційного пристрою з являється результат обчислення, крім перших т тактів, коли заповнюється конвеєр

Регістри ярусів мають розрядність, рівну розрядності вихідної інформації і-го яруса ПГ алгоритму

Кожний багатофункціональний конвеєрний операційний пристрій повинен мати деяку кількість елементів, призначених для забезпечення налаштування на задану опе­ рацію. Зокрема, комбінаційні схеми КС ярусів можуть вміщувати комутатори прямих зв язків, з допомогою яких під дією керуючих сигналів виконується налаштування КС на виконання необхідних операцій. Відміна структури багатофункціонального конвеєрно­ го ОП від однофункціонального заключається також в наявності конвеєрних регістрів команд КРК, що зберігають код операції, а також зв язків для налаштування на потрібну операцію комбінаційних схем ярусів конвеєрного операційного пристрою. Тут по кон­ веєру синхронно з даними під керуванням тих же тактових імпульсів Т по регістрах ко­ манд КРК просуваються і команди. Команда з виходу відповідного регістра налаштовує комбінаційні схеми цього яруса на виконання необхідної операції. Для ярусів конвеєра в цьому випадку можна записати: А.+ 1 = Ф^А., К.), де К. - вмістиме регістра КРК і-го яруса конвеєра. Виконувані в такому конвеєрному операційному пристрої перетворення над вхідними даними X можна записати виразом

У = ф т ( к т - Ф т ( к т , Ф т ( . . . , Ф ( к , х ) . . . ) ) ) .

258

7.13.Алгоритмічні операційні пристрої

7.13.1. Пристрої додавання і віднімання двійкових чисел

зфіксованою комою

Пристрій для додавання двійкових чисел називається суматором. Суматор вико­ ристовується в комп'ютері як складова частина АЛП, а також як елемент інших вузлів комп'ютера. Коротко розглянемо основні питання побудови суматора. На рис. 7.18 пред­ ставлена схема однотактового алгоритмічного операційного пристрою (АОП) додаван­ ня і віднімання чисел з фіксованою комою з послідовною обробкою двійкових чисел.

У1

Результат

31>г1

 

 

ЗРгЗ

Пристрій

Сі- І

керування

 

С

і

Рис. 7.18. Послідовний АОП додавання і віднімання чисел з фіксованою комою

Тут вхідні операнди 1 та 2 записуються сигналами У1 та У2 з пристрою керування до зсувних регістрів ЗРгІ та ЗРг2, виходи молодших розрядів яких з'єднані з входами однорозрядного суматора СМ, вихід суми 8. якого з'єднаний з входом старшого розряду зсув­ ного регістра ЗРгЗ. Вихід переносу суматора з'єднаний з входом тригера Тг, який збері­ гає значення переносу С відповідного розряду протягом одного такту для подачі його на вхід однорозрядного суматора. Перед початком роботи вміст тригера Тг встановлюється в нуль. В кожному такті сигналом зсуву з пристрою керування вміст зсувних регістрів зсувається на один розряд вправо, а в тригер записується значення переносу з чергового розряду суми. Однорозрядний суматор працює відповідно до таблиці істинності з розді­ лу 4 (табл. 4.5). Розряд суми з виходу однорозрядного суматора записується до зсувного регістра ЗРгЗ. Для додавання двох п-розрядних чисел в приведеному пристрої необхідно п тактів. Після цього на виході пристрою керування з'явиться сигнал завершення робо­ ти, а в зсувному регістрі ЗРгЗ буде знаходитись результат операції.

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

Значно частіше в комп'ютерах використовуються однотактові алгоритмічні ОП для додавання та віднімання двійкових чисел (рис. 7.19), в якому всі розряди операндів по­ ступають на паралельний суматор з вхідних регістрів РгІ та Рг2 одночасно. Тим самим, за рахунок паралельної обробки досягається значно вища швидкодія порівняно з порозрядним додаванням операндів.

259

РгІ

Рг2

М

РгЗ

Рис. 7.19. Паралельний АОП для додавання та віднімання двійкових чисел

Однотактовий суматор будується шляхом апаратного відображення графа алгорит­ му додавання двійкових чисел, тобто шляхом заміни функціональних операторів алго­ ритму відповідними комбінаційними схемами.

Найпростішим з однотактових суматорів є однотактовий суматор, який апаратно ві­ дображає граф алгоритму додавання двійкових чисел з послідовним переносом і відпо­ відно називається суматором з послідовним переносом. Схема цього суматора повторює граф відповідного алгоритму п-розрядного додавання двійкових чисел з послідовним переносом (рис. 4.5). Недоліком суматора з послідовним переносом є значна затримка при формуванні переносу, оскільки для отримання останнього розряду суми перенос повинен бути сформованим всіма попередніми однорозрядними суматорами.

Для зменшення кількості операцій, які знаходяться на критичному шляху, створено ряд алгоритмів додавання, в яких скорочено кількість послідовних операцій при форму­ ванні переносу та відповідних структур суматорів. Це, зокрема, суматори з наскрізним, частково груповим і груповим переносами, в яких здійснюється паралельне формуван­ ня переносів для всіх розрядів, або для груп розрядів. Досить простою та ефективною є реалізація в суматорі алгоритму за методом вибору переносу.

Оскільки питанню побудови ефективних алгоритмів додавання двійкових чисел приділено достатньо уваги в літературі, коротко розглянемо останній з названих вище підходів, тобто реалізацію алгоритму за методом вибору переносу. Розірвавши в довіль­ ному місці тракт проходження переносу та сформувавши два тракти його подальшого проходження із значенням вхідного переносу 0 та 1 відповідно, з послідуючим вибором результату за допомогою мультиплексора за значенням реального переносу в місці роз ­ риву, отримаємо показану на рис. 7.20 схему суматора.

 

 

 

 

 

 

 

АО...АЗ В0...ВЗ

 

 

 

 

 

 

 

 

 

 

 

 

і

 

 

 

 

 

 

 

 

 

 

 

 

 

с м з

 

 

СМ2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

СМ1

СО

 

 

 

 

 

 

 

 

 

34...37

 

 

БО...ЗЗ

 

Рис. 7.20. Однотактовий суматор двійкових чисел за методом вибору переносу

260

Тим самим доволі просто вдалося в два рази скоротити критичний шлях формування переносу. Цей же підхід можна використати повторно і для прискорення роботи п/2-роз- рядних суматорів, як це показано на рис. 7.21 і т. д.

Рис. 7.21. Однотактовий суматор двійкових чисел за методом вибору переносу з чотирикратним прискоренням

Часто в комп'ютерах використовується пристрій для накопичення двійкових чисел, тобто для послідовного багатомісного додавання N чисел (рис. 7.22). В такому операцій­ ному пристрої є вхідний РгІ та вихідний Рг2 регістри, а також суматор, причому один з входів суматора з'єднаний з виходом вихідного Рг2 регістра. Для забезпечення коректної роботи пристрою розрядність суматора повинна бути розширеною в сторону старших розрядів на ]1о§21М[ бітів.

 

п-1

І

0

 

 

 

 

 

 

 

 

 

 

 

 

Н і

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

і-1

 

 

 

 

 

см,

 

 

п-1+ІодМ п-1

0

Рг2

Рис. 7.22. АОП накопичення двійкових чисел

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

Важливим питанням при побудові пристроїв додавання є фіксація переповнення. Для цього аналізується перенос із останнього розряду та знаки операндів. Для спро­ щення аналізу наявності переповнення використовуються так звані модифіковані коди з двома знаковими розрядами (0-00, 1-11). Незбіжність цих розрядів говорить про на­ явність переповнення.

Потрібно зауважити, що зазвичай для виконання віднімання використовується до­ давання, перед яким від'ємник перетворюється в обернений або доповняльний код. Пряме віднімання використовується рідко. Якщо ж така потреба є, то взамін суматора

267

використовується віднімач, правила побудови якого не відрізняються від правил побу­ дови суматора, а для синтезу однорозрядного віднімана використовується залежність між входами та виходами відповідно до табл. 4.6. Якщо виконуються обидві операції - розробляється суматор-віднімач.

7.13.2. Пристрої множення двійкових чисел з фіксованою комою

Послідовне (багатотактове) множення базується на послідовному утворенні суми часткових добутків, використовуючи один або декілька суматорів, і реалізується шля­ хом послідовного виконання операцій додавання.

Як ми вже бачили в розділі 4, процес множення може починатися з молодших і стар­ ших розрядів множника. При цьому повну суму часткових добутків (тобто добуток) можна отримати двома шляхами:

зсувом множеного на потрібну кількість розрядів і додаванням отриманого чер­ гового часткового добутку до раніше накопиченої суми;

зсувом суми раніше отриманих часткових добутків на кожному кроці на один розряд і наступним додаванням нерухомого множеного або 0 до зсунутої суми.

Таким чином, існує 4 методи множення двійкових чисел, на основі яких можна побу­ дувати 4 алгоритми ітераційного виконання цієї операції та 4 базових структури багатотактових АОП множення двійкових чисел:

множення починаючи з молодших розрядів множника зі зсувом суми часткових добутків вправо;

множення починаючи з молодших розрядів множника зі зсувом множеного вліво;

множення починаючи з старших розрядів множника зі зсувом суми часткових добутків вліво;

множення починаючи з старших розрядів множника зі зсувом множеного вправо. Розглянемо їх детальніше.

7.13.2.1. Багатотактовий пристрій множення двійкових чисел з молодших розрядів множника при нерухомому множеному з зсувом суми часткових добутків

Алгоритм множення двійкових чисел, який реалізує метод множення починаючи з молодших розрядів множника з зсувом суми часткових добутків вправо, описується на­ ступним ітераційним виразом:

_(гі+х-г(І))

 

дего=0;

і = 0 , и - 1 ;

2п=2 = ХХ.

Тут вжито наступні позначення: X, У, 7. - множене, множник і добуток відповідно, 2. - сума часткових добутків на і-му етапі, У(і) - і-й розряд множника, п - кількість роз ­ рядів операндів без врахування знакового розряду.

В кожному циклі множене додається до суми часткових добутків, якщо У. = 0, і не додається, якщо У. = 0, після чого сума часткових добутків множиться на 2 і , тобто зсу­ вається на один розряд вправо. Після закінчення п-го циклу утворюється шуканий до­ буток, тобто Тп = 2 = ХУ

Алгоритм можна представити блок-схемою, показаною на рис. 7.23.

262

так

1

С Кінець

Рис. 7.23. Блок-схема алгоритму множення першим методом

Приклад:

Необхідно помножити два числа (без знакового розряду): X = 0101 0101; У = 01101011;

Хід операцій проілюстровано в табл. 7.3:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблиця 7.3

і

 

г\

У(У(0)

 

Х.У(І)

 

 

2і+ Х.У(і)

2-,

0

 

0000 0000 0000 0000

ОНО 1011

 

0101 0101

 

0101 0101 0000 0000

0010 1010 1000 0000

1

 

0010 1010 1000 0000

ОНО 1011

 

0101 0101

 

0111 1111 1000 0000

ООП 1111 1100 0000

2

 

ООП 1111 1100 0000

ОНО 1011

 

0000 0000

 

ООП 1111 1100 0000

0001 1111 1110 0000

3

 

0001 1111 1110 0000

ОНО 1011

 

0101 0101

 

0111 0100 11100000

ООП 1010 0111 0000

4

 

ООП 1010 0111 0000

ОНО 1011

 

0000 0000

 

ООП 10100111 0000

0001 1101 ООП 1000

5

 

0001 1101 ООП 1000

ОНО 1011

 

0101 0101

 

0111 0010 0011 1000

ООП 1001 0001 1100

6

 

ООП 1001 0001 1100

ОНО 1011

 

0101 0101

 

1000 1110 0001 1100

0100 0111 0000 1110

7

 

0100 0111 0000 1110

ОНО 1011

 

0000 0000

 

0100 0111 0000 1110

0010 0011 1000 0111

 

Таким чином 0101 0101 . 01101011 = 0010 ООП 1000 0111.

 

 

Базова структура багатотактового АОП множення двійкових чисел за описаним ме-

тодом наведена на рис. 7.24.

 

 

 

 

 

•» зсув

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

СР

 

 

Рг множника

 

 

МР

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

с м ч д

 

 

•*

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

і

 

 

—•» зсув

 

 

 

 

 

 

Рг

множеного

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 7.24. Базова структура багатотактового АОП множення першим методом

Тут С М Ч Д - суматор часткових добутків. М н о ж н и к зберігається в регістрі множни­ ка, а множене - в регістрі множеного. Обидва ці регістри є п-розрядними. Суматор част-

263

кових добутків є накопичувальним суматором, тобто на його виході є регістр з оберне­ ним зв'язком, як це показано на рис. 7.22. В кожному такті вміст цього регістра та регі­ стра множника зсуваються на один розряд вправо в сторону молодших розрядів. Розряд в крайньому правому тригері регістра множника випадає, а на його місце поміщається наступний розряд множника, який керує операцією СМЧД, тобто вказує, чи є в даному такті додавання, чи його немає. При зсуві молодший розряд СМЧД може випадати, а може і зберігатися, залежно від того, якої розрядності потрібен результат - п-розрядний, чи 2п-розрядний. Завдяки тому, що в даній структурі регістри множеного і множника є п-розрядними, а не 2п-розрядними, як це є в базових структурах АОП множення інши­ ми методами, перший метод множення використовується найчастіше.

7.13.2.2.Багатотактовий пристрій множення двійкових чисел з молодших розрядів при нерухомій сумі часткових добутків з зсувом множеного вліво

Алгоритм множення двійкових чисел, який реалізує цей метод, описується наступ­ ними ітераційними виразами:

Ь с , = 2 1 ,

деХ0=Х; 20=0; / = 0 , я - 1 ; 2П=2 = ХУ.

Тут вжито наступні позначення: X, У, Ъ - мцожене, множник і добуток відповідно, Ъ - сума часткових добутків на і-му етапі, У(і) - і-й розряд множника, п - кількість роз­ рядів операндів без врахування знакового розряду.

Алгоритм можна представити блок-схемою, показаною на рис. 7.25.

С

іУІ

гм=глху

хм-гхІ

Рис. 7.25. Блок-схема алгоритму множення другим методом

Приклад:

Необхідно помножити два числа (без знакового розряду): Х=0101 0101; ¥ =01101011 .

Хід операцій проілюстровано в табл. 7.4.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]