VHDL generar incrementos de instrucciones en 2

1

Estoy intentando usar una declaración de generación para crear una versión personalizada de ancho de bits de mi circuito. Sin embargo, necesito incrementar N en 2 en lugar de 1. ¿Hay alguna forma de hacer esto?

...
adders: for N in 1 to bits-1 generate
        mapping: RBNS port map(
            a => a(N downto N-1),
            b => b(N downto N-1),   
            sum => result(N downto N-1),
            cout => carry(N),
            cin => carry(N-1)
        );
        end generate;
carry(0) <= '1'
...
    
pregunta gilianzz

1 respuesta

3

Puedes multiplicar el iterador:

adders: for N in 1 to bits/2-1 generate
        mapping: RBNS port map(
            a => a(N*2 downto N*2-1),
            b => b(N*2 downto N*2-1),   
            sum => result(N*2 downto N*2-1),
            cout => carry(N*2),
            cin => carry(N*2-1)
        );
        end generate;
carry(0) <= '1'

... etc

    
respondido por el TEMLIB

Lea otras preguntas en las etiquetas