LXF162:CPU своими руками
|
|
|
CPU своими руками
Часть вторая
Еще два компонента электронного сердца вашего CPU: Джонатан Робертс подводит вас на шаг ближе к рабочему процессору.
В LXF158 мы показали вам, как построить собственный компьютер из базовых электронных блоков. По сути, мы изготовили двоичный сумматор. Мы закончили статью, сказав, что созданное нами — это еще далеко не настоящий компьютер, и вам нужны еще несколько компонентов, прежде чем ваша машина сможет претендовать на звание компьютера.
В этой статье мы рассмотрим дальнейшие шаги и представим вам еще несколько компонентов, продемонстрировав, как расширить возможности вашего сумматора до выполнения других действий (AND [И], XOR [ИСКЛ.ИЛИ] и NOT [ИЛИ]) и создать цепи памяти для хранения ввода и вывода.
Перед чтением этой статьи вам стоит прочесть предыдущую часть, чтобы освежить память, поскольку мы исходим из того, что вы с ней ознакомлены. Если у вас нет экземпляра LXF158, вы сможете найти PDF этой статьи на диске этого месяца.
Декодер
Первый компонент, который мы рассмотрим – это декодер, или, точнее, линейный декодер. Он очень прост, но очень удобен в работе и сам по себе, и декодеры также используются в мультиплексорах – что исключительно важно для остальной части нашей статьи.
По сути, все декодеры позволяют сделать выбор из множества выходов, используя только половину входов. Более конкретно – при единственном входе декодер позволит вам выбирать между двумя выходами, два входа обеспечат вам выбор из четырех выходов, и т. д. В случае декодеров мы говорим не о входе и выходе, а об адресной линии и линии передачи данных. Таблица истинности для простого линейного декодера 1-в-2 размещена ниже, а схема соединений приведена на рис. 1.
Как видите, все очень просто. Адресная линия раздвоена, и вход NOT размещен на одном ответвлении этого раздвоения. Таким образом, только одна из этих линий передачи данных может за один раз передать 1.