关于lfsr的本源多项式

2019-07-16 01:41发布

在Xilinx中现成的32为 lfsr模块如下:

   reg [31:0] <reg_name>;

   always @(posedge <clock>)
      if (<reset>)
         <reg_name> <= 32'h00000000;
      else if (<clock_enable>) begin
         <reg_name>[31:1] <= <reg_name>[30:0];
         <reg_name>[0] <= ~^{<reg_name>[32], <reg_name>[22], <reg_name>[2:1]};
      end
                       

对最后一句 同或 语句我看的很不明白 ,究竟是怎么样运算的呢?<reg_name>[32], <reg_name>[22], 这两个都是一位的,但是<reg_name>[2:1]是两位的,不懂这是什么意思?

还有从这里面可以看出lfsr的本源多项式吗?
求各位大神帮忙解决一下哈,很急着想要用呢
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。