Як ЦП вирішує, які транзистори використовувати? [зачинено]


-1

Можливо, я не замислююся над цим правильно, але коли ви даєте процесору таку команду, як Multiply Registers (MR) R2, R4, як він вирішує, які логічні ворота він буде використовувати, це просто перші ворота доступні чи є щось Мені невідомо, що я буду під капотом. Я розумію, що у процесора є мільйони логічних воріт, тож як він правильно керує їх використанням?

Відповіді:


0

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

Ваша інструкція множення буде поставлена ​​в чергу до Арифметичної опрацювальної одиниці на одному з входів / виходів.

АЛУ використовує комбінаційну логіку у своєму макеті таким чином, що електроенергія протікає по всій схемі, а її вихід змінюється залежно від отриманого входу. Він не вибирає набір воріт, які слід використовувати, всі ворота приймають сигнал, але схема схеми створює відтворювану трансформацію вхідного сигналу, що несе результат. Зауважте, що на цьому рівні ви працюєте з аналоговим сигналом стільки ж, скільки цифровими бітами, тому електроенергія тече, як вода через мережу труб, і схема дозволяє більш-менш води через різні шляхи.

Блок виконання, керуючи інструкцією, надсилає його на обробку, а на наступній галочці годинника очікує, що результат буде доступний в одному з вихідних регістрів ALU. докладнішу інформацію див. тут: https://en.wikipedia.org/wiki/Arithmetic_logic_unit#Circuit_operation


0

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

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

Незабаром він отримає повну команду, і байти, які йому потрібно множити разом. Всі ці байти дозволять ефективно "налаштувати" ядро ​​процесора на завдання, яке потрібно виконати.

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

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.