Свежие обсуждения
Консультации

Схемотехника ЭВМ. Помогите с основами

возьмём к примеру схему умножителя: в ней много регистров, сумматоров, мультиплексоров... Как они работают в отдельности я представляю. Не могу понять, каким образом синхронизируется работа этих устройств в составе схемы того же умножителя?
В курсе что у элементов есть тактовый вход и элементы срабатывают при изменении уровня напряжения тактового сигнала (так?)
Кстати, почему у сумматора нет тактового входа?

Объясните, плиз, и если можно какие-нибудь ссылки на лит-ру по теме?

 

Хм.. смотря как все это дело рассматривать ... Если схемно (опираясь на 74 серию) то это одно дело, но только никому не нужно. А если серьезно то - Verilog в руки

 

kidd: Кстати, почему у сумматора нет тактового входа?
Потому что сумматор комбинационная микросхема. Т.е. состояние ее выходов зависит ТОЛЬКО от состояния входов. Как только поменялось входное значение, так тут же меняетсяи выходное (если пренебречь задержками).
Другой кдасс - последовательные. Их состояние определяется не только состоянием входов, но и последовательностью состояний в предыдущие моменты времени.

 

Выполнение любой команды в ЭВМ предполагает некоторую последовательность отдельных действий ( микрокоманд ).
Их количество зависит И от принятой структуры ЭВМ. Разработчик, зная время выполнения элементарных действий, разрисовывает временные диаграммы выполнения команд и привязывает моменты фиксации правильной информации к имеющимся тактовым сигналам, которые тоже создают при проектировании.
Например, можно принять, что элементарные команды будут выполняться за 4 тактовых импульса. Тогда по первому фиксируем код выполняемой команды и пошли разбираться с ней( выбираем числа с которыми работать), по второму записываем эти числа в регистры с которыми может работать арифметико-логическое устройство(оно начало процесс получения результата), по третьему такту запоминаем полученный результат, по четвертому записываем результат в устройство назначения. Таким образом, за всё это тактирование болит голова у разработчика, а не у самих микросхем.
Насчёт сумматора...Два числа в регистрах "висят" на его входах...Сумматор производит логическую операцию над ними не мгновенно, а плавно, в соответствии со способностями элементной базы, пока перенос из младшего разряда "прибежит" в более старший. Таким образом, через некоторое ВРЕМЯ результат можно зафиксировать, то есть точно знать, что процесс сложения завершился. А надо его запоминать или нет - это уже зависит от ситуации.
Команда умножения, если говорить о программном, относится к так называемым "длинным" командам, т.к. кроме суммирования надо ещё и сдвигать, поэтому даже в примере 4хтактной концепции она будет занимать больше тактов на выполнение.

 

а тактовый сигнал один для всех элементов или их несколько?

 

kidd: Кстати, почему у сумматора нет тактового входа?

Собственно, и у умножителя его тоже может не быть. Необходимость тактирования определяется конкретной реализацией.
Например, имея программируемую ПЗУ с организацией 64Кх16 элементарной прошивкой можно получить полный 8-ми разрядный умножитель без тактирования (с производительностью, зависящей только от быстродействия ПЗУ). Другой вопрос, насколько такой умножитель будет экономически оправдан.

Кстати, никто не мешает сделать и тактируемый сумматор.

 

kidd, в приведенном примере предполагалось, что от одного кварцевого генератора получают равномерно сдвинутые относительно друг друга 4 тактовых последовательности (например, путём деления на 4 его частоты). Если предполагается фиксация чего-то где-то вторым тактом, то для всего процессора это один момент времени, т.е. происходит синхронно. Для других устройств ЭВМ (памяти, устр. ввода-вывода и т.д.)тактовые последовательности могут быть своими.

 

То: IG33 - так и делали для одного прибора на моем прошлом месте работы. Оказалось заметно надежнее какого-то перемножитнля из серии 1802

То: slava2005 А что это такое - Verilog ?

 

Могу посоветовать книжку, по которой я учил цифровые ЭВМ - Самофалов, "Прикладная теория цифровых автоматов". В своё время на одной лабораторной работе мы как раз делали автомат, который управлял умножителем. То есть как раз вырабатывал управляющие сигналы для всех этих сдвиговых регистров.