Ну без вангования так и есть

.
Надо поставить ODDR - выходной ДДР он есть на каждой ноге спартана. Дата0 поставить ему в 1, Дата 1 поставить в 0 и будет клок.
Данные входящие можно щелкать по клоку во входной регистр IOB. Конструкция спартана такова что время распространения клока до IOB выравнено, и пути IOB тоже, там разница очень мала. Так что все констраины можно писать относительно порождающего клока.
Кстати это все если вы хотите выдавать частоту равную частоте клока. А если у Вас частота меньше, то никто не мешает вам генерить ее просто через IOB выходной регистр на счетчике. И опять же все констраины относительно порождающего клока.