Line 1781... |
Line 1781... |
};
|
};
|
};
|
};
|
if ($rty_o eq 0) {
|
if ($rty_o eq 0) {
|
printf OUTFILE "%s_rty_i <= '0';\n",$master[$i]{"wbm"};
|
printf OUTFILE "%s_rty_i <= '0';\n",$master[$i]{"wbm"};
|
} else {
|
} else {
|
$tmp=1; until ($master[$i]{("priority_".($slave[$j]{"wbs"}))} ne 0) {$tmp++};
|
$tmp=1; until ($master[$i]{("priority_".($slave[$tmp]{"wbs"}))} ne 0) {$tmp++};
|
printf OUTFILE "%s_rty_i <= (%s_rty_o and %s_%s_bg)",$master[$i]{"wbm"},$slave[$tmp]{"wbs"},$master[$i]{"wbm"},$slave[$tmp]{"wbs"};
|
printf OUTFILE "%s_rty_i <= (%s_rty_o and %s_%s_bg)",$master[$i]{"wbm"},$slave[$tmp]{"wbs"},$master[$i]{"wbm"},$slave[$tmp]{"wbs"};
|
for ($j=$tmp+1; $j le $slaves; $j++) {
|
for ($j=$tmp+1; $j le $slaves; $j++) {
|
if ($master[$i]{("priority_".($slave[$j]{"wbs"}))} ne 0) {
|
if ($master[$i]{("priority_".($slave[$j]{"wbs"}))} ne 0) {
|
printf OUTFILE " or (%s_rty_o and %s_%s_bg)",$slave[$j]{"wbs"},$master[$i]{"wbm"},$slave[$j]{"wbs"};
|
printf OUTFILE " or (%s_rty_o and %s_%s_bg)",$slave[$j]{"wbs"},$master[$i]{"wbm"},$slave[$j]{"wbs"};
|
};
|
};
|
Line 1796... |
Line 1796... |
};
|
};
|
# err
|
# err
|
printf OUTFILE "-- err_i(s)\n";
|
printf OUTFILE "-- err_i(s)\n";
|
for ($i=1; $i le $masters; $i++) {
|
for ($i=1; $i le $masters; $i++) {
|
if ($master[$i]{"err_i"} eq 1) {
|
if ($master[$i]{"err_i"} eq 1) {
|
$rty_o=0;
|
$err_o=0;
|
for ($j=1; $j le $masters; $j++) {
|
for ($j=1; $j le $masters; $j++) {
|
if (($slave[$j]{"err_o"} eq 1) && ($master[$i]{("priority_".($slave[$j]{"wbs"}))} ne 0)) {
|
if (($slave[$j]{"err_o"} eq 1) && ($master[$i]{("priority_".($slave[$j]{"wbs"}))} ne 0)) {
|
$err_o+=1;
|
$err_o+=1;
|
};
|
};
|
};
|
};
|
if ($err_o eq 0) {
|
if ($err_o eq 0) {
|
printf OUTFILE "%s_err_i <= '0';\n",$master[$i]{"wbm"};
|
printf OUTFILE "%s_err_i <= '0';\n",$master[$i]{"wbm"};
|
} else {
|
} else {
|
$tmp=1; until ($master[$i]{("priority_".($slave[$j]{"wbs"}))} ne 0) {$tmp++};
|
$tmp=1; until ($master[$i]{("priority_".($slave[$tmp]{"wbs"}))} ne 0) {$tmp++};
|
printf OUTFILE "%s_err_i <= (%s_err_o and %s_%s_bg)",$master[$i]{"wbm"},$slave[$tmp]{"wbs"},$master[$i]{"wbm"},$slave[$tmp]{"wbs"};
|
printf OUTFILE "%s_err_i <= (%s_err_o and %s_%s_bg)",$master[$i]{"wbm"},$slave[$tmp]{"wbs"},$master[$i]{"wbm"},$slave[$tmp]{"wbs"};
|
for ($j=$tmp+1; $j le $slaves; $j++) {
|
for ($j=$tmp+1; $j le $slaves; $j++) {
|
if ($master[$i]{("priority_".($slave[$j]{"wbs"}))} ne 0) {
|
if ($master[$i]{("priority_".($slave[$j]{"wbs"}))} ne 0) {
|
printf OUTFILE " or (%s_err_o and %s_%s_bg)",$slave[$j]{"wbs"},$master[$i]{"wbm"},$slave[$j]{"wbs"};
|
printf OUTFILE " or (%s_err_o and %s_%s_bg)",$slave[$j]{"wbs"},$master[$i]{"wbm"},$slave[$j]{"wbs"};
|
};
|
};
|