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

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

• Тригеры внутри процессоров, FPGA, ASIC и микроконтроллеров
• Исходно-синхронные интерфейсы, где тактовые сигналы и данные передаются вместе
• Периферийные шины, такие как SPI, I²C и параллельные шины памяти
• Интерфейсы АЦП (аналого-цифровой преобразователь) и ЦАП (цифрово-аналоговый преобразователь)
• Высокоскоростные цифровые коммуникационные линии
Значение времени настройки в цифровом тайминге

Время установки (Tsetup) — это минимальное время, за которое входные данные должны оставаться стабильными до активного рабочего сигнала. В этот интервал данные, представленные на входе тригера, не должны меняться, что позволяет внутренней схеме дискретизации надежно определять логический уровень на краю тактового сигнала.
Определение времени удержания и влияние на сбор данных

Время удержания (Thold) — это минимальное время, за которое входные данные должны оставаться стабильными после активного рабочего сигнала. Хотя данные отбираются на переходе тактового сигнала, тригер требует короткого дополнительного интервала для завершения процесса захвата. Поддержание стабильности данных в этот период гарантирует, что сохранённое значение правильно фиксировано и остается действительным для последующих логических этапов.
Различия между временем установки и временем ожидания
| Параметр | Время подготовки | Время ожидания |
|---|---|---|
| Определение | Данные по минимальному времени должны оставаться стабильными до края тактового интервала | Данные по минимальному времени должны оставаться стабильными после края тактового сигнала |
| Направление выпуска | Проблема возникает, когда данные приходят слишком поздно до края тактового сигнала | Проблема возникает, когда данные меняются слишком скоро после края тактового сигнала |
| Общая причина | Путь данных слишком медленный (большая задержка) | Путь передачи данных слишком быстрый (очень короткая задержка) |
| Типичное решение | Используйте более медленную тактовую частоту или уменьшите задержку в пути передачи данных | Добавьте дополнительную задержку в путь передачи данных, чтобы данные изменились позже |
| Риск при нарушении | Хранимое значение может быть неверным или нестабильным (метастабильным) | Хранимое значение может быть неверным или нестабильным (метастабильным) |
Распространённые причины нарушений времени установки и удержания
• Смещение тактового сигнала — сигнал тактового сигнала достигает разных частей цепи в немного разное время.
• Джиттер часов — небольшие, случайные изменения точного времени рабочего ребра часового сигнала.
• Длинные комбинированные логические пути — данные слишком долго проходят через логические элементы до тригера.
• Неравная длина трасс печатных плат — сигналы проходят разные расстояния, поэтому некоторые приходят раньше или позже других.
• Звонок сигнала и медленное время набора — плохое качество сигнала или медленные переходы затрудняют определение чёткого логического уровня.
• Изменение температуры и напряжения — изменения температуры или напряжения питания влияют на скорость сигнала и запасы времени.
Последствия нарушений времени настройки и удержания

Когда время настройки или удержания не выполнено, тригер может не определить, высокий ли сигнал на краю тактового сигнала. Он может впасть в нестабильное состояние, называемое метастабильностью, когда выход требует дополнительного времени для стабилизации и может кратковременно находиться между допустимыми логическими уровнями. Такое нестабильное поведение может распространяться по цепи и приводить к серьёзным проблемам, таким как:
• Ошибки случайных битов
• Сбои или сбросы системы
• Непредсказуемое поведение цепи
• Редкие сбои, которые трудно отследить
Как определяются значения времени настройки и удержания

Время настройки и удержания измеряются и определяются во время тестирования чипа. Устройство проверяется в контролируемых условиях, чтобы найти минимальные зазоры времени, которые позволяют ему корректно работать с тактовой точкой. Эти временные ограничения зависят от таких факторов, как процесс полупроводника, напряжение питания, температурный диапазон и нагрузка на выход. Поскольку эти факторы меняются от устройства к устройству, точные значения настройки и времени удержания указаны в техническом штите и всегда должны быть проверены там.
Настройка и удержание времени в путях между регистрами
| Компонент тайминга | Описание |
|---|---|
| Tclk | Период тактового интервала (время между двумя ребрами часов) |
| Tcq | Задержка от тактов к Q первого тригера |
| Tdata | Задержка по логике между тригерами |
| Tsetup | Время установки приёмного тригера |
| Цкев | Смещение часов между двумя тригерами |
Согласование длины дорожки печатных плат и ограничения по времени настройки/удержания

Согласование длины дорожек печатных плат часто используется для уменьшения разницы во времени между тактовыми и данными сигналами, особенно в высокоскоростных цифровых конструкциях. Совпадение длин следов помогает минимизировать смещение, но не гарантирует, что требования к установке и времени удержания будут выполнены.
Распространение сигнала по дорожкам плат чрезвычайно быстрое, поэтому создание значительной задержки только через маршрутизацию часто требует непрактично длинных трассировок. Кроме того, эффекты целостности сигнала, такие как звон, несоответствие импеданса и медленные переходы ребер, могут уменьшать допустимое окно дискретизации вокруг рабочего рабочего цикла, даже если длины следов совпадают.
Из-за этих ограничений время установки и удержания необходимо проверять с помощью анализа тайминга с использованием значений технической таблицы устройств и задержек на пути, а не полагаться только на соответствие длины печатной платы в качестве тайминг фикса.
Исправление нарушений времени настройки в цифровых системах
• Уменьшить глубину комбинационной логики, чтобы данные могли поступать быстрее
• Понизить тактовую частоту, чтобы получить больше времени в каждом цикле
• Использовать более быстрые логические устройства с меньшими внутренними задержками
• Улучшить целостность сигнала для повышения чистости и стабильности переходов
• Добавить этапы конвейера для разбиения длинных логических путей на более мелкие шаги
• Снизить емкостную нагрузку, чтобы сигналы могли переключаться быстрее
Исправление нарушений времени ожидания в цифровых системах
• Добавить задержки в буфере для замедления пути передачи данных
• Скорректировать дерево часов для уменьшения нежелательного смещения тактового сигнала
• Вставлять небольшие сети задержки с RC, когда они безопасны и уместны.
• Использование программируемых блоков задержки в FPGA для точной настройки времени прибытия данных
Заключение
Время настройки и удержания определяют допустимое окно времени вокруг рабочего края часов, что обеспечивает надёжный захват данных в синхронных цифровых системах. Эти временные ограничения зависят от поведения тактового сигнала, логической задержки, качества сигнала и физической реализации. Анализируя реальные пути данных в соответствии со спецификациями технического листа и применяя целевые исправления для ограничений настройки и удержания, проектировщики могут поддерживать безопасные временные запасы при вариациях процесса, напряжения и температуры.
Часто задаваемые вопросы [FAQ]
Как настраивается и удерживает тактовую частоту по времени?
Тактовая частота должна быть достаточно низкой, чтобы данные выходили из одного тригера, проходили через логику и всё равно соответствовали времени установки на следующем тригере. Если часы слишком быстрые, время настройки нарушается, и цепь выходит из строя.
Что такое временная слабость?
Тайминг слэб — это запас между требуемым временем прибытия и фактическим временем прибытия данных. Позитивная слабость означает, что тайминг безопасен. Отрицательный slack означает нарушение настройки или удержания.
Может ли время настройки или удержания быть отрицательным?
Да. Отрицательная настройка или номер удержания обрабатывается внутренним таймингом внутри тригера. Это значит, что окно безопасности сдвинуто, а не то, что проверки тайминга нельзя пропустить.
Как статический тайминг-анализ проверяет время?
Статический анализ времени вычисляет все задержки по пути. Он проверяет настройку на следующем тактовом крае и держится сразу после текущего ребра. Любой путь с отрицательной слабостью сообщается как нарушение.
Почему пересечения тактовых доменов рискованны с точки зрения тайминга?
Когда сигнал пересекает несвязанные часы, его рёбра не совпадают с новыми часами. Это часто нарушает время настройки или удержания и может привести к метастабильности, если не использовать синхронизаторы или FIFO.