С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Какой рассыпухе? 555 серия? Там есть латчи есть в виде готовых элементов - ТМ7 там, или ИР22. В FPGA ничего подобного нет, есть только флип-флопы - TM8 и ИР23.
Даже нельзя надежно имитировать латч на элементах И-НЕ, потому что таковых элементов в FPGA тоже нет. Например, LUT в Cyclone-IV - это два регистра по 8 бит, записываются из конфигурации, и потом два мультиплексора 8-в-1 на проходной логике, которые могут объединяться в 16-в-1. А между двумя LUT - длиннющие каналы для соединения ячеек. Чисто теоретически латч можно на этом всем колхозе, но на практике работает плохо и нестабильно - топология нехорошая выходит, сильно зависит от трассировки (которая обычно автоматическая и меняется на 200 процентов при добавлении строчки в HDL), помехи ловит, повторяемости нет.
Странный вопрос, открываешь мой гитхаб, загружаешь в Modelsim асинхронную модель любого из процессоров и смотришь как она моделируется. С моделированием проблем нет, картинки тебе симулятор покажет, потому что латч он понимает и моделирует. Проблемы с синтезом, синтезатор сразу предупреждает - нет надежной реализации латча в выбранной серии, на железе работать не будет.
Есть старые серии ПЛИС, ACEX-1K, например, там триггеры типа ТМ2 - "the programmable flipflop in the LE can be configured for D, T, JK, or SR operation", вот там латчи можно попробовать. Но тут еще проблема времянок влезает, как оно топологически по ячейкам раскладывается - контролировать можно, но очень занудно и для сложных дизайнов затратно, а вот с синхронным тактированием все предсказуемо и понятно. Поэтому асинхронный дизайн умер в массе своей, ну и FPGA по архитектуре подтянулись. Периодически вылезают мутные стартапы, которые обещают асинхронные ПЛИС с в-о-о-о-о-т такой скоростью, и все быстро затихает - не получается надежно проектировать сложные схемы при таком подходе.
Titus(03.11.2020)
Я пробовал развлекаться с асинхронным дизайном и пришёл к выводу - теоретически можно, но малейшее изменение - и схема может (и скорее всего) не взлететь - именно из-за того, что ячейки по другому легли и времянка поменялась, а точно её предсказать по всяким внутренним задержкам - не получится - слишком велик (для этого дела) разброс между кристаллами.
- - - Добавлено - - -
Хотя, конечно, идея привлекает - именно тем, что быстродействие должно получится больше![]()
И хрен поймёшь - то ли накосячил в изменении, то ли ЛЕ по другому разбросаны и соединены и времянка задержек другой стала, а из за особенностей латчей софт не можешь просчитать времянок. Вопчем, пободавшись с этой заманчивой идеей, решил, что не стоит она потраченного времени. Проще смотреть на максимальную частоту, которую квартус после синтеза-анализа времянок покажет и стараться её поднять![]()
Раз уж такой жесткач, и современные ФПГА не вариант для асинхронного дизайна, @Ynicky мог бы попросить меня, чтобы я перерисовал схемы ХМ-ок в синхронный дизайн, т.к. я очень хорошо в теме, и понимаю, что надо изменить, чтобы все не окривело.
Это слишком ненадежно, легко привнести ошибки. Нужна именно эталонная асинхронная схема, которая точно моделируется, и уже только потом можно переписывать на синхронный дизайн, пошагово изменяя, и сравнивая диаграммы с эталоном. То, что ты порисовал свои элементы вместо БФЯ, уже потенциальный источник ошибок (и абстракция другая и нет автоматической машинной трансляции), но приходится пользоваться тем что есть ...
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)