所以我试图使用LFSR制作一个8位PRNG,但我被告知要使用一个特定的多项式(X ^ 8 + x ^ 3 + 1)。我究竟如何实现这个多项式?我需要帮助了解如何使用LFSR设计PRNG。
答案 0 :(得分:1)
Xilinx在如何实现'伪随机数生成器'(PRNG)方面写了一篇很好的AppNote。 AppNote描述了如何实现基于LFSR和移位寄存器优化的PRNG 3..168位。
答案 1 :(得分:0)
你可以写它 feedback_polynome显示x ^ 8 + x ^ 3 + x ^ 0,其中x ^ 8实际上是第7位,x ^ 3实际上是第2位,x ^ 0总是1。
feedback_polynome := temp_out(8-1) xor temp_out(3-1) xor temp_out(0);
temp_out <= feedback_polynome & temp_out(7 downto 1);
p.s我希望你到现在为止找到了更好的解决方案