Перейти к содержанию
    

но функции асинхронной логики повторить вполне можно.

 

А смысл. Я не въехал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А смысл. Я не въехал.
Смысл в том, чтобы методички переписывать не пришлось :biggrin: Студенческие стенды модернизировались. Чтобы можно было гос. финансирование под это дело получить вариант повторения их на той же 155-й серии не прокатывал. А так действительно новые качества (несколько) у стендов появились. И при этом можно было пользоваться старыми методичками.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

мое скромное мнение -

Пока мне хватало времени, определяемого тактовой частотой, я делал синхронные схемы в ПЛИС. Проверял в симуляторе и знал, что там все будет работать.

Как только в каком-то узле требовалось время более быстрое, чем период тактовой частоты, я делал асинхронную схему.

Скажем, работала внешняя память на частоте 100 MHz от ПЛИС, у которой и была частота 100 MHz, вот и приходилось сигналы адреса, данных, управления делать на логических элементах в ПЛИС. Смотреть в симуляторе, корректировать, пытаться добиться удовлетворения временнЫм требованиям для памяти. И надеяться, что все это будет соответствовать реальному железу. А куда деваться...? Кстати, работает, но, настраивая каждую новую партию изделий, я всегда вспоминаю об этих "тонких моментах".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кстати, работает, но, настраивая каждую новую партию изделий, я всегда вспоминаю об этих "тонких моментах".

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

Зависящие от "асинхронных элементов" выходы тоже можно записывать в констрейны.

 

А куда деваться...?

Бывает, что и некуда. Даже задрав частоту до предела, применив сколько можно клоков и используя все их фронты можно не получить требуемую точность. Остается точный расчет, калибровка, либо авось.

 

OFF: С точки зрения незаменимости разработчика писать констрейны и делать надежные синхронные схемы глупо.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Зависящие от "асинхронных элементов" выходы тоже можно записывать в констрейны.

То я делал в MAXPlus+II, там и понятия констрейнов не было, наверное. И сейчас пока "не осилил". Вот-вот приступаю к реальному проекту, тогда и изучу, как следует.

:bb-offtopic: Вообще, чем глубже проникаешь в какой-нибудь САПР, тем лучше будет выдаваемый продукт.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Полностью согласен про качество продукта.

В программировании, как мне кажется, главное не сделать, а доказать, что сделано правильно. В первую очередь себе.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если речь идет о самосинхронных схемах, то проблемы заключаются в отсутствии необходимого базиса реализации основных элементов этих схем (С-элемент или G-триггер)

К уже приведенным ссылкам я бы добавил: Achronix

Интересно почитать их патенты и даташит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кто может кратко и доходчиво объяснить, чем асинхронные схемы лучше, если ориентироваться по шкалам "дешевле" и "быстрее"? Быстрее - значит меньше задержка прохождения сигнала, например, через маршрутизатор. То есть, за любые деньги.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кто может кратко и доходчиво объяснить, чем асинхронные схемы лучше, если ориентироваться по шкалам "дешевле" и "быстрее"? Быстрее - значит меньше задержка прохождения сигнала, например, через маршрутизатор. То есть, за любые деньги.

Если у вас клок, 10нс, а умножитель умножает за 16нс. То в случае с синхронным клоком вы данные получите через 20нс, а в случае с асинхронной, через 16. Кроме того, если у вас есть счетчик, который клокает секунды, то ему 100мегагерц не нужны. А достаточно и 1гц, что положительно скажется на потреблении электричества и триггеров.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все равно непонятно.

Если у меня клок 100нс, а умножитель за 16 нс, то еще хуже. А если у меня и клок 16 нс и умножитель с интерконнектом 15.99нс, то все зашибсь.

Схема с тактовой раз в неделю - тоже синхронная.

 

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

Почему бы это было дешевле анализировать и/или с чего бы оно быстрее добегало до выхода раньше?

 

Я про самосинхронизирующиеся схемы не читал, но мнение имею ©. Пусть по некоторому пути распространяется полезный сигнал, а по очень похожему сигнал для синхронизации. Что гарантирует, что полезный сигнал добежит раньше? Если есть механизмы для убедительного доказательства корректности, то все привлекательно, осталось увлечь массы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пусть по некоторому пути распространяется полезный сигнал, а по очень похожему сигнал для синхронизации. Что гарантирует, что полезный сигнал добежит раньше? Если есть механизмы для убедительного доказательства корректности, то все привлекательно, осталось увлечь массы.

Вот за этим всем следит квартус в альтере, или подобный софт. Если какая-то часть исполняется не за 16нс, а за 16.1нс, то он ругается. В общем синхронная схема это кучка асинхронных схем, но в пределах клока, все эти асинхронные схемы должны устаканится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня сложилось мнение, что в самосинхронизирующихся (или как-то еще иначе называющихся) схемах каждому действию нужно подтверждение - "выполнено". После которого можно выполнять следующее действие. Так как это подтверждение само отбирает время от полезной работы, поэтому мне не очень нравится этот принцип. Логичнее было разбить сложные действия на более мелкие и выполнять их в конвейере. Что, собственно и сделано во всех процессорах.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Самосинхронизирующиеся схемы - и есть самые быстрые, тк. сделаны ступенями как и конвейер.

Но из-за этого в них нежелательно делать алгоритмы с обратными свзями, т.к. задержка в большом цикле загубит все быстродействие.

Год назад анонсировали новую серию ПЛИС с самосинхронизацией - в 3 раза быстрее чем натуральные ПЛИС.

И где она сейчас? Не слышно.

А вручную делать такие схемы - бессмысленно из-за сложности получения работоспособной схемы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А между тем, вновь возрастает интерес к асинхронным машинам. Особенно в эпоху тотального распараллеливания.

Только нужны правильные подходы.

Насчёт "на порядок медленнее" - совершенно непонятна ваша логика.

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

 

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

 

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

вобчем покачто ето теории.

практика имхо появится через несколько лет, когда стануть выпускать плисы с поддержкой асинхронов.

 

Все равно непонятно.

Если у меня клок 100нс, а умножитель за 16 нс, то еще хуже. А если у меня и клок 16 нс и умножитель с интерконнектом 15.99нс, то все зашибсь.

Схема с тактовой раз в неделю - тоже синхронная.

 

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

Почему бы это было дешевле анализировать и/или с чего бы оно быстрее добегало до выхода раньше?

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

 

вторая причина - скорость синхронной плисы определяется скоростью ее худшей ячейки, одна медленная ячейка на кристалле рубит грейд всего кристала. А у асинхронных етого ограничения нет - все элементы работают на своих предельных скоростях.

Изменено пользователем AlexRayne

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По-моему, первая часть вашего сообщения противоречит второй...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...