User Tag List

Показано с 171 по 180 из 803

Тема: Реверс-инжиниринг Z80

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #10

    Регистрация
    30.01.2006
    Сообщений
    1,921
    Спасибо Благодарностей отдано 
    73
    Спасибо Благодарностей получено 
    119
    Поблагодарили
    80 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Асинхронность - это когда возможны биения разных источников клока. А в данном случае это один и тот же клок, только разные его фазы, поэтому никакой асинхронности нет. Все строго синхронно.
    не совсем так. Я наблюдал типичные проблемы асинхронности при тактировании в двух always блоках от одного клока, но от разных фронтов. Это происходило для клока 100 МГц. Я не знаю точной причины почему это происходит, но подозреваю из-за того, что любой клок имеет джиттер и время между posedge и negedge плавает. Поэтому собственно говоря клок нужно на PLL генерировать, чтобы как можно точнее выдерживать 50% duty cycle, иначе из-за плавающего фронта может не хватить времени для переключения каких-то частей схемы. А за счет задержек клока от одной части кристалла до другой, вполне можно получить плавающие race conditions, несмотря на то, что оба always тактируются от одного клока, но от разных фронтов.

    Если клок генерировать не на PLL, а каким-то счетчиком, как это делалось в наших ZX Spectrum клонах, то у такого клока будет заметный джиттер и это очень быстро приводит к проблемам, особенно если от клока тактируется большая схема занимающая почти весь кристалл FPGA.

    Проявляются такие проблемы с клоком неприятно - всё может прекрасно работать до поры до времени, но в какой-то момент при внесении малейшего изменения (вплоть до изменения значения кода в табличке для FSM) приводящего к переразводке схемы, схема начинает сбоить.

    И кстати, я большинство этих проблем наблюдал именно в ситуации использования двух always блоков от одного клока но по разным фронтам.

    В FPGA есть еще проблема с тем, что если клок не сгенерирован на PLL блоке, то такой клок разводится как обычные сигналы, а для них в FPGA не предусмотрены меры по минимизации задержек. Clock сигналы имеют имеют отдельную шину, которая позволяет доставить клок в любую часть кристалла с минимальной задержкой или даже задать нужную задержку. Для минимизации задержек PLL блоки расположены с 4 сторон кристалла, что позволяет сократить путь clock сигнала от PLL к любой точке кристалла. Обычный сигнал превратить в клок невозможно, по крайней мере на Altera/Intel.

    Использовать обычный сигнал в качестве клока технически можно, но это выливается в массу проблем - невозможно использовтаь такой клок для тактирования блоков предназначенных для клока, например таким клоком невозможно тактировать PLL блок. Это связано с тем, что клоки и обычные сигналы разводятся на разных шинах и у них нет прямой связи между собой. Ну и масса проблем с нестабильностью схемы будет вылазить.
    Последний раз редактировалось ZXMAK; 01.09.2024 в 12:43.
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

    Этот пользователь поблагодарил ZXMAK за это полезное сообщение:

    Titus(01.09.2024)

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 1739
    Последнее: 09.01.2025, 10:55
  2. Ответов: 32
    Последнее: 18.12.2024, 18:19
  3. Реверс-инжиниринг игры Boovie
    от Oleg N. Cher в разделе Программирование
    Ответов: 41
    Последнее: 09.01.2022, 23:07
  4. Реверс МК-92
    от Случайность в разделе Программируемые калькуляторы
    Ответов: 55
    Последнее: 24.04.2021, 23:47
  5. Реверс инжиниринг печатной платы
    от Filin в разделе Несортированное железо
    Ответов: 36
    Последнее: 11.03.2018, 22:46

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •