Цитата Сообщение от ZXMAK Посмотреть сообщение
Я наблюдал типичные проблемы асинхронности при тактировании в двух always блоках от одного клока, но от разных фронтов. Это происходило для клока 100 МГц. Я не знаю точной причины почему это происходит, но подозреваю из-за того, что любой клок имеет джиттер и время между posedge и negedge плавает. Поэтому собственно говоря клок нужно на PLL генерировать, чтобы как можно точнее выдерживать 50% duty cycle, иначе из-за плавающего фронта может не хватить времени для переключения каких-то частей схемы.
На таких частотах Z80 гонять особо-то не планирую.
Чтобы перейти на однополярное тактирование, надо сперва сделать двухполярное синхронное, и посмотреть, возможна ли переделка на однополярное БЕЗ ущерба полной идентичности оригинальному NMOS Z80. Если это окажется возможным, то я только за однополярное тактирование. Но если нет, то я по любому сделаю выбор в пользу полной идентичности оригиналу, чем погоне за возможностью запускать спек на 100МГц.

- - - Добавлено - - -

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

- - - Добавлено - - -

Плюс, на сколько я понимаю, некоторым линиям (тому же CLK) можно задать параметр, что они должны трассироваться для самого короткого (быстрого) пути прохождения сигнала.