Я использовал LFSR, реализованный в соответствии с примитивным полиномом, но, как вы знаете, LFSR создает ряд возможных значений в повторяющемся порядке, что означает, что он не является действительно случайным!Альтернативные алгоритмы генерации случайных значений в VHDL?
Одно из решений, позволяющее использовать LFSR и гарантировать, что оно производит действительно случайное значение, - это использовать какой-то динамический способ считывания значений, выводимых из LFSR, но я не могу понять, как это сделать на аппаратном уровне (VHDL)!
Поэтому я следую альтернативному способу действительно производить случайное неожиданное повторяющееся значение определенной длины, т. Е. 10-бит
Любые предложения? Я планирую реализовать их в VHDL!
Существует ли здесь [конкретное программирование] (http://stackoverflow.com/help/on-topic)? – user1155120
Вместо того, чтобы изобретать случайный генератор каким-то «динамическим способом чтения значений», который может иметь неизвестные артефакты, делая его плохим случайным генератором, вы можете рассмотреть использование [LFSR] (https://en.wikipedia.org/ wiki/Linear_feedback_shift_register), которая больше, чем требуется для случайной последовательности, а затем использовать дополнительные биты для инициализации, например на основе метки времени, MAC-адреса и/или других внешних данных. Тем самым одна и та же последовательность никогда не используется повторно, и вы можете придерживаться хорошо известной технологии, которую легко реализовать. –
@ user1155120 Да Потому что я хочу реализовать решение в VHDL, иначе я бы не поставил «VHDL» в качестве тега! – Aboudi