Estoy desarrollando una pequeña cosa en VHDL y soy bastante nuevo en eso. Tengo problemas para descubrir cómo dividir un std_logic_vector más grande en uno más pequeño.¿Cómo "cortar" un std_logic_vector en VHDL?
Por ejemplo tengo 3 señales:
signal allparts: std_logic_vector(15 downto 0);
signal firstpart: std_logic_vector(7 downto 0);
signal secondpart: std_logic_vector(7 downto 0);
Básicamente, lo que quiero es asignar los bits 15 a 8 para secondpart
y los bits 7 a 0 a firstpart
. ¿Cómo funciona exactamente iba a "cortar" un vector como este sin la asignación de bits individuales
Ah. Estoy viendo más y más ahora que VHDL es un lenguaje muy consistente. Además, la solución de alias es mucho más limpia, así que usaré ese – Earlz
Tenga en cuenta que, por ejemplo, 'std_logic_vector ([some expression]) (15 downto 8)' no funcionará. Vea [esta respuesta] (http://stackoverflow.com/a/28452053/603003) para más detalles cuando esta sintaxis es aplicable. – ComFreek