Параллельно-последовательные сдвиговые регистры (PISO): проектирование, работа и применения
Параллельно-последовательные (PISO) сдвиговые регистры расширяют функциональность последовательный-вход/последовательный-выход (SISO) устройств, позволяя всем ступеням загружать данные одновременно. Эта способность необходима для преобразования параллельных данных — каждый бит на своем проводе — в последовательный поток для эффективной коммуникации.
PISO регистр хранит слово данных, затем сдвигает его по одному биту за тактовый цикл, с общей задержкой, равной числу ступеней, умноженному на период такта. Поскольку данные могут быть загружены параллельно до начала сдвига, регистр идеален для высокоскоростного захвата данных и коммуникационных интерфейсов.
Ниже детальный взгляд на трехступенчатый PISO сдвиговый регистр, ключевые компоненты которого:
- D-триггеры для хранения данных.
- И-ИЛИ селекторы, выбирающие между параллельной загрузкой и последовательным сдвигом.
Реальные устройства обычно имеют 4, 8 или 16 ступеней. Диаграмма ниже иллюстрирует трехступенчатый пример.

Когда сигнал SHIFT/LD' низкий, NAND-гейты сверху включают путь параллельной загрузки. Данные на входах D_A, D_B, D_C передаются на соответствующие входы D-триггеров. На следующем нарастающем фронте такта все три бита захватываются одновременно — процесс, известный как синхронная загрузка.
Наоборот, когда SHIFT/LD' высокий, нижние NAND-гейты активируют путь сдвига: последовательный вход SI питает первую ступень, выход каждого триггера питает вход следующей, и финальный выход появляется на SO. Последовательные тактовые фронты сдвигают слово вправо, выдавая по одному биту за цикл.
Волны иллюстрируют переход от параллельной загрузки к последовательному сдвигу:

На практике сигнал SHIFT/LD' должен оставаться низким в кратком окне вокруг тактового фронта для удовлетворения времени установки и удержания. Чуть более широкий импульс часто используется для простоты.
Зачем включать и SI, и SO выводы? Они позволяют каскадировать множественные сдвиговые регистры для создания широких сдвигателей или для интерфейса с последовательными периферийными устройствами, такими как микропроцессоры и сенсоры.
Распространенные PISO устройства от Texas Instruments
- SN74ALS166 – 8-битный, синхронная загрузка
- SN74ALS165 – 8-битный, асинхронная загрузка
- CD4014B – 8-битный, синхронная загрузка
- SN74LS647 – 16-битный, синхронная загрузка
Для полных спецификаций устройств обратитесь к связанным даташитам.

SN74ALS166, например, реализует 8-ступенчатый синхронный PISO. Его выводы помечены A–H для данных входов, SER для последовательного входа, SO для последовательного выхода, и SH/LD' для управления режимом. Вывод CLKINH позволяет ингибировать такт при высоком уровне.

Понимание ANSI символа ценно: верхний блок содержит управления режимом (M1 для сдвига, M2 для загрузки, C3/1 для такта). 8-ступенчатый сдвигатор помечен SRG8, а последовательный вход SER управляется сигналом загрузки и тактом.
Асинхронная vs Синхронная загрузка
Регистры с асинхронной загрузкой, такие как SN74ALS165, используют входы предустановки (Set) и очистки (Reset) триггера для загрузки данных независимо от такта. Когда SH/LD' низкий, вход Set управляется данными входа, а вход Reset удерживается высоким. Данные появляются в регистре немедленно, делая асинхронную загрузку полезной, когда тактовой импульс недоступен или не нужен.
В синхронных устройствах линия SHIFT/LD' контролирует, загружаются ли данные или сдвигаются, а такт синхронизирует действие. Этот режим предпочтителен в современных дизайнах за его предсказуемость таймингов.
Практические применения
Одно обычное применение PISO регистра — чтение банка переключателей или клавиатуры микропроцессором с ограниченными I/O выводами. Например, девятиклавишная клавиатура может быть опрошена PISO регистром, сокращая нужные провода с девяти до трех.

В автомобильных и промышленных условиях это сокращение числа проводов повышает надежность, минимизируя потенциальные точки отказа. Последовательный интерфейс сдвигового регистра также позволяет коммуникацию с другими последовательными устройствами, такими как АЦП, сенсоры или модули памяти.
Для реализации соедините параллельные входы сдвигового регистра с контактами переключателей, подтяните их к +5В резисторами, и управляйте LD/SH' от микропроцессора. После загрузки генерируйте тактовые импульсы сдвига для чтения каждого бита с линии SO.
Для более сложных потоков данных каскадируйте дополнительные сдвиговые регистры или используйте интерфейс с выделенными последовательными периферийными устройствами.
См. также: Рабочий лист по сдвиговым регистрам
Промышленные технологии
- Понимание сетевых протоколов: от физического уровня к продвинутому арбитражу
- Почему важна цифровая память
- Микропроцессоры: эволюция вычислений с запрограммированной памятью
- Полные данные по ОУ: даташиты National Semiconductor и CA3130
- Мастерство преобразования типов в Python: Полное руководство
- Данные-ориентированное производство: раскрытие эффективности, экономии затрат и инноваций
- Максимизируйте преимущество вашей организации: превращение данных в стратегические инсайты
- Промышленный интернет вещей (IIoT): определение, область и промышленное влияние
- Революция в производстве: Как цифровизация повышает эффективность и инновации
- Big Data и ИИ: синергия за цифровой трансформацией