Verilog tiene un "operador de reducción" conveniente que hace exactamente lo que estás pidiendo: |example[23:0]
da el resultado de OR'ing todos los bits del vector example
.
Lamentablemente, VHDL no tiene este operador. Sin embargo, de acuerdo con las comp.lang.vhdl
No hay un operador VHDL predefinido para realizar una operación de reducción en todos los bits del vector (por ejemplo, a "o" todos los bits de un vector). Sin embargo, los operadores de reducción se pueden implementar fácilmente:
[omitir un ejemplo que no maneja los valores de 'X' y 'Z']
function or_reduce( V: std_logic_vector )
return std_ulogic is
variable result: std_ulogic;
begin
for i in V'range loop
if i = V'left then
result := V(i);
else
result := result OR V(i);
end if;
exit when result = '1';
end loop;
return result;
end or_reduce;
...
b <= or_reduce( b_vec );