Como dije antes, multiplica por \ $ 25_ {10} = 011001_2 \ $, ya sea por multiplicador de hardware o manualmente por shift-and-add y luego divide por \ $ 8 \ $ seleccionando los bits 3 a 9.
Componente asíncrono simple (adecuado para LED, no para lógica rápida):
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
entity scaler is
port(data_in: in std_logic_vector(5 downto 0);
data_out: out std_logic_vector(6 downto 0);
);
end entity;
architecture structural of scaler is
signal product: unsigned(11 downto 0);
begin
product <= unsigned("000000"&data_in)+unsigned("000"&data_in&"000")+unsigned("00"&data_in&"0000");
data_out <= std_logic_vector(product)(9 downto 3);
end architecture