22. Регистр 74ACT377
22. Регистр 74ACT377
🎯 Цель урокаОсвоить 8-битный регистр — базовый блок для хранения данных в процессоре.
🎮 Фаза 1: Симулятор (10 мин)
Turing Complete
Пройди Level: Register — используй регистры для хранения промежуточных результатов.
🧠 Фаза 2: Теория (10 мин)
Что такое регистр?
Регистр — группа D-триггеров с общим тактовым сигналом.
8-битный регистр = 8 D-триггеров:
D₇ ── [D-FF] ── Q₇
D₆ ── [D-FF] ── Q₆
D₅ ── [D-FF] ── Q₅
D₄ ── [D-FF] ── Q₄ CLK
D₃ ── [D-FF] ── Q₃ │
D₂ ── [D-FF] ── Q₂ │
D₁ ── [D-FF] ── Q₁ │
D₀ ── [D-FF] ── Q₀ │
└─────────────────┘
Зачем регистры в процессоре?
| Регистр | Назначение |
|---|---|
| Аккумулятор | Хранит результат операций ALU |
| PC (Program Counter) | Адрес текущей инструкции |
| IR (Instruction Register) | Текущая команда |
| Регистры общего назначения | R0, R1, … для данных |
Параметры регистра
- Разрядность: сколько бит хранит (4, 8, 16, 32…)
- Время выборки (setup time): D должен быть стабилен до фронта CLK
- Время удержания (hold time): D должен быть стабилен после фронта CLK
- Задержка (propagation delay): от CLK до появления Q
📦 Микросхема 74ACT377
74ACT377 — 8-битный регистр с разрешением записи.
Распиновка
┌───────────────────┐
~EN ──┤ 1 20 ├── VCC
Q0 ──┤ 2 19 ├── Q7
D0 ──┤ 3 74ACT377 18 ├── D7
D1 ──┤ 4 17 ├── D6
Q1 ──┤ 5 16 ├── Q6
Q2 ──┤ 6 15 ├── Q5
D2 ──┤ 7 14 ├── D5
D3 ──┤ 8 13 ├── D4
Q3 ──┤ 9 12 ├── Q4
GND ──┤ 10 11 ├── CLK
└───────────────────┘
| Пин | Название | Описание |
|---|---|---|
| D0-D7 | Data | Входы данных |
| Q0-Q7 | Output | Выходы |
| CLK | Clock | Тактовый вход (▲ фронт) |
| ~EN | Enable | LOW = запись разрешена |
Таблица работы
| ~EN | CLK | Действие |
|---|---|---|
| 1 | X | Хранение (Q не меняется) |
| 0 | ↑ | Запись D → Q |
🔧 Фаза 3: Собираем (25 мин)
Компоненты
| Компонент | Количество |
|---|---|
| 74ACT377 | 1 |
| DIP-переключатель 8-поз | 1 |
| Кнопка (CLK) | 1 |
| LED | 8 |
| Резистор 330 Ом | 8 |
Схема
Данные:
DIP[0] ── D0 (Pin 3) Q0 (Pin 2) ── [330Ω] ── LED ── GND
DIP[1] ── D1 (Pin 4) Q1 (Pin 5) ── [330Ω] ── LED ── GND
DIP[2] ── D2 (Pin 7) Q2 (Pin 6) ── [330Ω] ── LED ── GND
DIP[3] ── D3 (Pin 8) Q3 (Pin 9) ── [330Ω] ── LED ── GND
DIP[4] ── D4 (Pin 13) Q4 (Pin 12) ── [330Ω] ── LED ── GND
DIP[5] ── D5 (Pin 14) Q5 (Pin 15) ── [330Ω] ── LED ── GND
DIP[6] ── D6 (Pin 17) Q6 (Pin 16) ── [330Ω] ── LED ── GND
DIP[7] ── D7 (Pin 18) Q7 (Pin 19) ── [330Ω] ── LED ── GND
Управление:
~EN (Pin 1) ── GND (всегда разрешено)
CLK (Pin 11) ── Кнопка с подтяжкой к GND
Питание:
VCC (Pin 20) ── +5V
GND (Pin 10) ── GND
Проверка
- Установи DIP = 10101010
- Нажми CLK → LED показывают 10101010
- Измени DIP = 01010101
- LED всё ещё 10101010 (не изменилось!)
- Нажми CLK → LED показывают 01010101
🎉 Это регистр!Данные записываются только по фронту CLK и хранятся до следующей записи!
🔬 Эксперимент: Счётчик на регистре
Соедини регистр с сумматором для создания счётчика:
┌───────────────────────────────────────┐
│ │
│ ┌──────────┐ ┌──────────┐ │
└───┤ 74ACT377 ├──────┤ 74HC283 ├──────┘
│ Регистр │ │ +1 │
│ │ │ │
CLK ─┤► │ "1"─┤ B │
└──────────┘ └──────────┘
Каждый фронт CLK: Q = Q + 1
💡 Семейства логики
Почему 74ACT377?
| Серия | Особенность |
|---|---|
| 74HC | Высокоскоростная CMOS |
| 74HCT | HC + TTL-совместимые входы |
| 74AC | Ещё быстрее чем HC |
| 74ACT | AC + TTL-совместимые входы |
ACT сочетает скорость AC и совместимость с TTL-уровнями.
📝 Мини-задания
✅ Чеклист
- Понимаю что регистр = группа D-триггеров
- Знаю распиновку 74ACT377
- Собрал 8-битный регистр
- Проверил запись и хранение
