?? pkg_prbs.vhd
字號(hào):
oprbs(32) := i(20) xor i(23);
oprbs(31) := i(19) xor i(22);
oprbs(30) := i(18) xor i(21);
oprbs(29) := i(17) xor i(20);
oprbs(28) := i(16) xor i(19);
oprbs(27) := i(15) xor i(18);
oprbs(26) := i(14) xor i(17);
oprbs(25) := i(13) xor i(16);
oprbs(24) := i(12) xor i(15);
oprbs(23) := i(11) xor i(14);
oprbs(22) := i(10) xor i(13);
oprbs(21) := i(9) xor i(12);
oprbs(20) := i(8) xor i(11);
oprbs(19) := i(7) xor i(10);
oprbs(18) := i(6) xor i(9);
oprbs(17) := i(5) xor i(8);
oprbs(16) := i(4) xor i(7);
oprbs(15) := i(3) xor i(6);
oprbs(14) := i(2) xor i(5);
oprbs(13) := i(1) xor i(4);
oprbs(12) := i(0) xor i(3);
oprbs(11) := i(2) xor i(27) xor i(30);
oprbs(10) := i(1) xor i(26) xor i(29);
oprbs(9) := i(0) xor i(25) xor i(28);
oprbs(8) := i(24) xor i(30);
oprbs(7) := i(23) xor i(29);
oprbs(6) := i(22) xor i(28);
oprbs(5) := i(21) xor i(27);
oprbs(4) := i(20) xor i(26);
oprbs(3) := i(19) xor i(25);
oprbs(2) := i(18) xor i(24);
oprbs(1) := i(17) xor i(23);
oprbs(0) := i(16) xor i(22);
return oprbs;
end;
------------------------------------------------
-- Parallel PRBS prbs23_40b. Bus Size 40
-- X^23 + X^18 + 1
------------------------------------------------
function prbs23_40b( i : std_logic_vector )
return std_logic_vector is
constant w : integer := i'length;
variable oprbs : std_logic_vector(w-1 downto 0);
begin
oprbs(39) := i(17) xor i(22);
oprbs(38) := i(16) xor i(21);
oprbs(37) := i(15) xor i(20);
oprbs(36) := i(14) xor i(19);
oprbs(35) := i(13) xor i(18);
oprbs(34) := i(12) xor i(17);
oprbs(33) := i(11) xor i(16);
oprbs(32) := i(10) xor i(15);
oprbs(31) := i(9) xor i(14);
oprbs(30) := i(8) xor i(13);
oprbs(29) := i(7) xor i(12);
oprbs(28) := i(6) xor i(11);
oprbs(27) := i(5) xor i(10);
oprbs(26) := i(4) xor i(9);
oprbs(25) := i(3) xor i(8);
oprbs(24) := i(2) xor i(7);
oprbs(23) := i(1) xor i(6);
oprbs(22) := i(0) xor i(5);
oprbs(21) := i(4) xor i(17) xor i(22);
oprbs(20) := i(3) xor i(16) xor i(21);
oprbs(19) := i(2) xor i(15) xor i(20);
oprbs(18) := i(1) xor i(14) xor i(19);
oprbs(17) := i(0) xor i(13) xor i(18);
oprbs(16) := i(12) xor i(22);
oprbs(15) := i(11) xor i(21);
oprbs(14) := i(10) xor i(20);
oprbs(13) := i(9) xor i(19);
oprbs(12) := i(8) xor i(18);
oprbs(11) := i(7) xor i(17);
oprbs(10) := i(6) xor i(16);
oprbs(9) := i(5) xor i(15);
oprbs(8) := i(4) xor i(14);
oprbs(7) := i(3) xor i(13);
oprbs(6) := i(2) xor i(12);
oprbs(5) := i(1) xor i(11);
oprbs(4) := i(0) xor i(10);
oprbs(3) := i(9) xor i(17) xor i(22);
oprbs(2) := i(8) xor i(16) xor i(21);
oprbs(1) := i(7) xor i(15) xor i(20);
oprbs(0) := i(6) xor i(14) xor i(19);
return oprbs;
end;
------------------------------------------------
-- Parallel PRBS prbs20_40b. Bus Size 40
-- X^20 + X^17 + 1
------------------------------------------------
function prbs20_40b( i : std_logic_vector )
return std_logic_vector is
constant w : integer := i'length;
variable oprbs : std_logic_vector(w-1 downto 0);
begin
oprbs(39) := i(16) xor i(19);
oprbs(38) := i(15) xor i(18);
oprbs(37) := i(14) xor i(17);
oprbs(36) := i(13) xor i(16);
oprbs(35) := i(12) xor i(15);
oprbs(34) := i(11) xor i(14);
oprbs(33) := i(10) xor i(13);
oprbs(32) := i(9) xor i(12);
oprbs(31) := i(8) xor i(11);
oprbs(30) := i(7) xor i(10);
oprbs(29) := i(6) xor i(9);
oprbs(28) := i(5) xor i(8);
oprbs(27) := i(4) xor i(7);
oprbs(26) := i(3) xor i(6);
oprbs(25) := i(2) xor i(5);
oprbs(24) := i(1) xor i(4);
oprbs(23) := i(0) xor i(3);
oprbs(22) := i(2) xor i(16) xor i(19);
oprbs(21) := i(1) xor i(15) xor i(18);
oprbs(20) := i(0) xor i(14) xor i(17);
oprbs(19) := i(13) xor i(19);
oprbs(18) := i(12) xor i(18);
oprbs(17) := i(11) xor i(17);
oprbs(16) := i(10) xor i(16);
oprbs(15) := i(9) xor i(15);
oprbs(14) := i(8) xor i(14);
oprbs(13) := i(7) xor i(13);
oprbs(12) := i(6) xor i(12);
oprbs(11) := i(5) xor i(11);
oprbs(10) := i(4) xor i(10);
oprbs(9) := i(3) xor i(9);
oprbs(8) := i(2) xor i(8);
oprbs(7) := i(1) xor i(7);
oprbs(6) := i(0) xor i(6);
oprbs(5) := i(5) xor i(16) xor i(19);
oprbs(4) := i(4) xor i(15) xor i(18);
oprbs(3) := i(3) xor i(14) xor i(17);
oprbs(2) := i(2) xor i(13) xor i(16);
oprbs(1) := i(1) xor i(12) xor i(15);
oprbs(0) := i(0) xor i(11) xor i(14);
return oprbs;
end;
------------------------------------------------
-- Parallel PRBS prbs15_40b. Bus Size 40
-- X^15 + X^14 + 1
------------------------------------------------
function prbs15_40b( i : std_logic_vector )
return std_logic_vector is
constant w : integer := i'length;
variable oprbs : std_logic_vector(w-1 downto 0);
begin
oprbs(39) := i(13) xor i(14);
oprbs(38) := i(12) xor i(13);
oprbs(37) := i(11) xor i(12);
oprbs(36) := i(10) xor i(11);
oprbs(35) := i(9) xor i(10);
oprbs(34) := i(8) xor i(9);
oprbs(33) := i(7) xor i(8);
oprbs(32) := i(6) xor i(7);
oprbs(31) := i(5) xor i(6);
oprbs(30) := i(4) xor i(5);
oprbs(29) := i(3) xor i(4);
oprbs(28) := i(2) xor i(3);
oprbs(27) := i(1) xor i(2);
oprbs(26) := i(0) xor i(1);
oprbs(25) := i(0) xor i(13) xor i(14);
oprbs(24) := i(12) xor i(14);
oprbs(23) := i(11) xor i(13);
oprbs(22) := i(10) xor i(12);
oprbs(21) := i(9) xor i(11);
oprbs(20) := i(8) xor i(10);
oprbs(19) := i(7) xor i(9);
oprbs(18) := i(6) xor i(8);
oprbs(17) := i(5) xor i(7);
oprbs(16) := i(4) xor i(6);
oprbs(15) := i(3) xor i(5);
oprbs(14) := i(2) xor i(4);
oprbs(13) := i(1) xor i(3);
oprbs(12) := i(0) xor i(2);
oprbs(11) := i(1) xor i(13) xor i(14);
oprbs(10) := i(0) xor i(12) xor i(13);
oprbs(9) := i(11) xor i(12) xor i(13) xor i(14);
oprbs(8) := i(10) xor i(11) xor i(12) xor i(13);
oprbs(7) := i(9) xor i(10) xor i(11) xor i(12);
oprbs(6) := i(8) xor i(9) xor i(10) xor i(11);
oprbs(5) := i(7) xor i(8) xor i(9) xor i(10);
oprbs(4) := i(6) xor i(7) xor i(8) xor i(9);
oprbs(3) := i(5) xor i(6) xor i(7) xor i(8);
oprbs(2) := i(4) xor i(5) xor i(6) xor i(7);
oprbs(1) := i(3) xor i(4) xor i(5) xor i(6);
oprbs(0) := i(2) xor i(3) xor i(4) xor i(5);
return oprbs;
end;
------------------------------------------------
-- Parallel PRBS prbs10_40b. Bus Size 40
-- X^10 + X^7 + 1
------------------------------------------------
function prbs10_40b( i : std_logic_vector )
return std_logic_vector is
constant w : integer := i'length;
variable oprbs : std_logic_vector(w-1 downto 0);
begin
oprbs(39) := i(6) xor i(9);
oprbs(38) := i(5) xor i(8);
oprbs(37) := i(4) xor i(7);
oprbs(36) := i(3) xor i(6);
oprbs(35) := i(2) xor i(5);
oprbs(34) := i(1) xor i(4);
oprbs(33) := i(0) xor i(3);
oprbs(32) := i(2) xor i(6) xor i(9);
oprbs(31) := i(1) xor i(5) xor i(8);
oprbs(30) := i(0) xor i(4) xor i(7);
oprbs(29) := i(3) xor i(9);
oprbs(28) := i(2) xor i(8);
oprbs(27) := i(1) xor i(7);
oprbs(26) := i(0) xor i(6);
oprbs(25) := i(5) xor i(6) xor i(9);
oprbs(24) := i(4) xor i(5) xor i(8);
oprbs(23) := i(3) xor i(4) xor i(7);
oprbs(22) := i(2) xor i(3) xor i(6);
oprbs(21) := i(1) xor i(2) xor i(5);
oprbs(20) := i(0) xor i(1) xor i(4);
oprbs(19) := i(0) xor i(3) xor i(6) xor i(9);
oprbs(18) := i(2) xor i(5) xor i(6) xor i(8) xor i(9);
oprbs(17) := i(1) xor i(4) xor i(5) xor i(7) xor i(8);
oprbs(16) := i(0) xor i(3) xor i(4) xor i(6) xor i(7);
oprbs(15) := i(2) xor i(3) xor i(5) xor i(9);
oprbs(14) := i(1) xor i(2) xor i(4) xor i(8);
oprbs(13) := i(0) xor i(1) xor i(3) xor i(7);
oprbs(12) := i(0) xor i(2) xor i(9);
oprbs(11) := i(1) xor i(6) xor i(8) xor i(9);
oprbs(10) := i(0) xor i(5) xor i(7) xor i(8);
oprbs(9) := i(4) xor i(7) xor i(9);
oprbs(8) := i(3) xor i(6) xor i(8);
oprbs(7) := i(2) xor i(5) xor i(7);
oprbs(6) := i(1) xor i(4) xor i(6);
oprbs(5) := i(0) xor i(3) xor i(5);
oprbs(4) := i(2) xor i(4) xor i(6) xor i(9);
oprbs(3) := i(1) xor i(3) xor i(5) xor i(8);
oprbs(2) := i(0) xor i(2) xor i(4) xor i(7);
oprbs(1) := i(1) xor i(3) xor i(9);
oprbs(0) := i(0) xor i(2) xor i(8);
return oprbs;
end;
------------------------------------------------
-- Parallel PRBS prbs7_40b. Bus Size 40
-- X^7 + X^6 + 1
------------------------------------------------
function prbs7_40b( i : std_logic_vector )
return std_logic_vector is
constant w : integer := i'length;
variable oprbs : std_logic_vector(w-1 downto 0);
begin
oprbs(39) := i(5) xor i(6);
oprbs(38) := i(4) xor i(5);
oprbs(37) := i(3) xor i(4);
oprbs(36) := i(2) xor i(3);
oprbs(35) := i(1) xor i(2);
oprbs(34) := i(0) xor i(1);
oprbs(33) := i(0) xor i(5) xor i(6);
oprbs(32) := i(4) xor i(6);
oprbs(31) := i(3) xor i(5);
oprbs(30) := i(2) xor i(4);
oprbs(29) := i(1) xor i(3);
oprbs(28) := i(0) xor i(2);
oprbs(27) := i(1) xor i(5) xor i(6);
oprbs(26) := i(0) xor i(4) xor i(5);
oprbs(25) := i(3) xor i(4) xor i(5) xor i(6);
oprbs(24) := i(2) xor i(3) xor i(4) xor i(5);
oprbs(23) := i(1) xor i(2) xor i(3) xor i(4);
oprbs(22) := i(0) xor i(1) xor i(2) xor i(3);
oprbs(21) := i(0) xor i(1) xor i(2) xor i(5) xor i(6);
oprbs(20) := i(0) xor i(1) xor i(4) xor i(6);
oprbs(19) := i(0) xor i(3) xor i(6);
oprbs(18) := i(2) xor i(6);
oprbs(17) := i(1) xor i(5);
oprbs(16) := i(0) xor i(4);
oprbs(15) := i(3) xor i(5) xor i(6);
oprbs(14) := i(2) xor i(4) xor i(5);
oprbs(13) := i(1) xor i(3) xor i(4);
oprbs(12) := i(0) xor i(2) xor i(3);
oprbs(11) := i(1) xor i(2) xor i(5) xor i(6);
oprbs(10) := i(0) xor i(1) xor i(4) xor i(5);
oprbs(9) := i(0) xor i(3) xor i(4) xor i(5) xor i(6);
oprbs(8) := i(2) xor i(3) xor i(4) xor i(6);
oprbs(7) := i(1) xor i(2) xor i(3) xor i(5);
oprbs(6) := i(0) xor i(1) xor i(2) xor i(4);
oprbs(5) := i(0) xor i(1) xor i(3) xor i(5) xor i(6);
oprbs(4) := i(0) xor i(2) xor i(4) xor i(6);
oprbs(3) := i(1) xor i(3) xor i(6);
oprbs(2) := i(0) xor i(2) xor i(5);
oprbs(1) := i(1) xor i(4) xor i(5) xor i(6);
oprbs(0) := i(0) xor i(3) xor i(4) xor i(5);
return oprbs;
end;
------------------------------------------------
-- Parallel PRBS prbs5_40b. Bus Size 40
-- X^5 + X^3 + 1
------------------------------------------------
function prbs5_40b( i : std_logic_vector )
return std_logic_vector is
constant w : integer := i'length;
variable oprbs : std_logic_vector(w-1 downto 0);
begin
oprbs(39) := i(2) xor i(4);
oprbs(38) := i(1) xor i(3);
oprbs(37) := i(0) xor i(2);
oprbs(36) := i(1) xor i(2) xor i(4);
oprbs(35) := i(0) xor i(1) xor i(3);
oprbs(34) := i(0) xor i(4);
oprbs(33) := i(2) xor i(3) xor i(4);
oprbs(32) := i(1) xor i(2) xor i(3);
oprbs(31) := i(0) xor i(1) xor i(2);
oprbs(30) := i(0) xor i(1) xor i(2) xor i(4);
oprbs(29) := i(0) xor i(1) xor i(2) xor i(3) xor i(4);
oprbs(28) := i(0) xor i(1) xor i(3) xor i(4);
oprbs(27) := i(0) xor i(3) xor i(4);
oprbs(26) := i(3) xor i(4);
oprbs(25) := i(2) xor i(3);
oprbs(24) := i(1) xor i(2);
oprbs(23) := i(0) xor i(1);
oprbs(22) := i(0) xor i(2) xor i(4);
oprbs(21) := i(1) xor i(2) xor i(3) xor i(4);
oprbs(20) := i(0) xor i(1) xor i(2) xor i(3);
oprbs(19) := i(0) xor i(1) xor i(4);
oprbs(18) := i(0) xor i(2) xor i(3) xor i(4);
oprbs(17) := i(1) xor i(3) xor i(4);
oprbs(16) := i(0) xor i(2) xor i(3);
oprbs(15) := i(1) xor i(4);
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -