2.02 - Генератор шума

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

module rnd1(clk, sout);

input wire clk;

output reg sout;

reg [30:0] d0;

initial

begin

d0 = 31'b0011010100100100110010101110010;

end

always @(posedge clk) begin

d0 <= { d0[30:0], d0[30] ^ d0[27] };


sout <= d0[5:5];

end

endmodule

https://soundcloud.com/vitasynth/vitasynth-saw-220-hz

PRBS7

reg [6:0] d; always @(posedge clk) begin     d <= { d[5:0], d[6] ^ d[5] };end

PRBS23

reg [22:0] d; always @(posedge clk) begin     d <= { d[22:0], d[22] ^ d[17] };end

PRBS31

reg [30:0] d; always @(posedge clk) begin     d <= { d[30:0], d[30] ^ d[27] };end