Los tipos std_logic,std_ulogic,unsigned,etc son tipos lógicos...si bien algunos de ellos se pueden usar como operandos aritméticos en algunos casos sobrecargando los operadores.
Con una fpga puedes hacer lo que se antoje.Sólo tienes que proveer al sistema de los elementos de interface y adaptación de niveles necesarios para que la fpga pueda interactuar con cualquiera de los subsistemas.