exxa
21-06-09, 14:01
Καλημέρα.
Θα ήθελα να ρωτήσω πώς γίνεται να απλοποιήσω έναν κώδικα.
Έχω 1 λέξη που αποτελείται από 127bit (0 to 126)
Και θέλω να κάνω ανακατανομή των bit, βάση του παρακάτω πίνακα.
...
entity temp is
port ( x:in std_logic_vector (0 to 126) ;
f:out std_logic_vector (0 to 126) );
end;
architecture main of temp is
begin
f(0) <= x(3);
f(1) <= x(8 );
f(2) <= x(15);
f(3) <= x(1);
f(4) <= x(10);
f(5) <= x(6);
f(6) <= x(5);
f(7) <= x(11);
f(8 ) <= x(14);
f(9) <= x(13);
f(10) <= x(4);
f(11) <= x(2);
f(12) <= x(7);
f(13) <= x(0);
f(14) <= x(9);
f(15) <= x(12); ----
end;
αυτό θα γίνει 8 φορές για να ανακατανεμηθούν και τα 127bit.
Η “μπακάλικη” τεχνική είναι να συνεχίσω
f(16) <= x(19)
f(17)<= x(24)
..και πάει λέγοντας μέχρι f(126)
Ευχαριστώ.
Θα ήθελα να ρωτήσω πώς γίνεται να απλοποιήσω έναν κώδικα.
Έχω 1 λέξη που αποτελείται από 127bit (0 to 126)
Και θέλω να κάνω ανακατανομή των bit, βάση του παρακάτω πίνακα.
...
entity temp is
port ( x:in std_logic_vector (0 to 126) ;
f:out std_logic_vector (0 to 126) );
end;
architecture main of temp is
begin
f(0) <= x(3);
f(1) <= x(8 );
f(2) <= x(15);
f(3) <= x(1);
f(4) <= x(10);
f(5) <= x(6);
f(6) <= x(5);
f(7) <= x(11);
f(8 ) <= x(14);
f(9) <= x(13);
f(10) <= x(4);
f(11) <= x(2);
f(12) <= x(7);
f(13) <= x(0);
f(14) <= x(9);
f(15) <= x(12); ----
end;
αυτό θα γίνει 8 φορές για να ανακατανεμηθούν και τα 127bit.
Η “μπακάλικη” τεχνική είναι να συνεχίσω
f(16) <= x(19)
f(17)<= x(24)
..και πάει λέγοντας μέχρι f(126)
Ευχαριστώ.