Если триггер описан без излишеств - то он будет запихнут в IO автоматом. Иначе ничто ему не поможет. У Спартана в IO достаточно триггеров, и для входов, и для выходов. Так что то, что триггер неожиданно оказался не в IO - нужно искать, где перемудрили. Например, с Set/Reset входами.