dsmv 0 14 апреля, 2020 Опубликовано 14 апреля, 2020 · Жалоба 3 hours ago, des00 said: ЗЫ. я бы не сказал более корректно, не усложняет, а роняет тактовую. Ага, и зачем нужна более сложная схема, которая при этом работает на меньшей тактовой частоте ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 14 апреля, 2020 Опубликовано 14 апреля, 2020 · Жалоба 10 minutes ago, dsmv said: Ага, и зачем нужна более сложная схема, которая при этом работает на меньшей тактовой частоте ? я понимаю что вам не нравится грей, но "сложность" там, одно преобразование, причем gray2bin это простой ксор, 1-2 слоя логики, на типовых разрядностях FIFO. Тактовая упадет где то 10МГц, при этом, от вычитания вы все равно никуда не уходите) а роняет тактовую именно он, причем на разных архитектурах, для фифо с греем по разному. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Plain 167 14 апреля, 2020 Опубликовано 14 апреля, 2020 · Жалоба Вообще-то, среди счётчиков ещё и Джонсона есть. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nick_K 0 14 апреля, 2020 Опубликовано 14 апреля, 2020 · Жалоба 1 hour ago, Plain said: Вообще-то, среди счётчиков ещё и Джонсона есть. Есть ещё унарный сдвиговый регистр, но от этого лучше не станет. А насчёт городить Грея, если можно на обычном CSA переносе сделать сумматор без особых проблем не вижу. Дальше только дело техники: или сравнивать на "больше-меньше" или сравнивать равно до регистра счётчика или после, для получения корректного empty/full в защёлке. Другое дело как это в мультиклоковом проекте ляжет. Но тут нужно поковырять чистый RTL. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 14 апреля, 2020 Опубликовано 14 апреля, 2020 · Жалоба Приветствую! Классическая схема bin -> bin2gray -> cdc -> gray2bin -> bin_comparator работает на ура при этом обеспечивая и скорость и функционал типа afull, aempty, r|w_count, ... Возится с чистыми gray указателями памяти есть смысл если вы пытаетесь сэкономить последний LUT в UltraScale vu9p Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Plain 167 14 апреля, 2020 Опубликовано 14 апреля, 2020 · Жалоба Наверное имелась ввиду не просто скорость, а максимальная. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dxp 32 15 апреля, 2020 Опубликовано 15 апреля, 2020 · Жалоба А какие есть эффективные способы передать многобитный сигнал в другой тактовый домен при условии, что нужно "сэмплирующая" сторона работает на тактовой, близкой к задающей. Т.е не так, что раз в эн тактов забираем значение, когда заведомо известно, что значение установившееся, а когда оно меняется постоянно - вот как в случае с FIFO. Про Грея понятно. Ещё какие способы есть? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 15 апреля, 2020 Опубликовано 15 апреля, 2020 · Жалоба Приветствую! 14 hours ago, Plain said: Наверное имелась ввиду не просто скорость, а максимальная. Я как раз максимальную скорость и имел ввиду. В классической схеме 1 hour ago, dxp said: ... Про Грея понятно. Ещё какие способы есть? Грей кстати работает в качестве CDC только для линейного (инкремент/декремент) сигнала - то есть рандомные данные напрямую через gray CDC синхронизатор не передашь без глюков :(. А FIFO как раз и решает эту проблему - рандомные данные кладутся в память, а линейный указатель на нее передается через gray CDC. Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dxp 32 15 апреля, 2020 Опубликовано 15 апреля, 2020 · Жалоба 13 минут назад, RobFPGA сказал: Грей кстати работает в качестве CDC только для линейного (инкремент/декремент) сигнала - то есть рандомные данные напрямую через gray CDC синхронизатор не передашь без глюков :(. А FIFO как раз и решает эту проблему - рандомные данные кладутся в память, а линейный указатель на нее передается через gray CDC. Ну да, я и имел в виду для монотонного сигнала, как счётчик. Есть ли альтернативы Грею в блоках CDC асинхронных FIFO? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 15 апреля, 2020 Опубликовано 15 апреля, 2020 · Жалоба Приветствую! 3 hours ago, dxp said: Ну да, я и имел в виду для монотонного сигнала, как счётчик. Есть ли альтернативы Грею в блоках CDC асинхронных FIFO? Например тот же код Джонсона. Тоже меняется только в одном бите. Но емкость такого кода меньше чем у Грея (при равном количестве бит). Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dxp 32 15 апреля, 2020 Опубликовано 15 апреля, 2020 · Жалоба Т.е. Джонсон эффективнее Грея? Если так, то почему на практике в CDC FIFO (и не только) применяют Грея? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Plain 167 15 апреля, 2020 Опубликовано 15 апреля, 2020 (изменено) · Жалоба Очевидно, "последний LUT экономят" — затратно же, ещё по два бита на ячейку. Изменено 15 апреля, 2020 пользователем Plain Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dxp 32 15 апреля, 2020 Опубликовано 15 апреля, 2020 · Жалоба А, понял, наоборот же. Насчёт "экономят" - так тут не в экономии дело, а в целесообразности. Зачем избыточность вводить, когда она не нужна (помехозащищённость не требуется)? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 15 апреля, 2020 Опубликовано 15 апреля, 2020 · Жалоба Приветствую! 4 hours ago, dxp said: Т.е. Джонсон эффективнее Грея? Если так, то почему на практике в CDC FIFO (и не только) применяют Грея? Наоборот, Джонсон хуже - при равной ширине шины можно передать меньшее число состояний. Да и конвертировать из/в bin сложнее. Хотя могу предположить что для простых и малых по размеру FIFO может и можно применять - если напрямую работать к кодом без конверсии в bin. Может будет чуть быстрее по частоте чем с Грей. Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gin 0 16 апреля, 2020 Опубликовано 16 апреля, 2020 · Жалоба В 15.04.2020 в 10:48, dxp сказал: Ну да, я и имел в виду для монотонного сигнала, как счётчик. Есть ли альтернативы Грею в блоках CDC асинхронных FIFO? А как передача значения счетчика в коде Грея защищает от метастабильности при переходе между клоковыми доменами? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться