Начните с простого - назначьте пины и определитесь с тактовой частотой (для начала используйте всего один временной домен). Все ограничения пропишите в .ucf файле (может либо хелпом воспользоваться, либо переводом Зотова), топовый (головной модуль) подключите в ISE. Для проверки рабоспособнтсти используйте ChipScope.
Ну, к примеру, простой проект счетчика(по хорошему синхросигнал требуется пропустить через pll, но в простейшем случае неважно) (verilog):
Код
module cnt_8
(
input clk,
output tst_led
);
reg [7:0] counter;
always @(posedge clk) counter<=counter+1;
assign tst_led=|counter;
endmodule
Для данного случая, требуется назначить вход тактовой частоты и какой-нибудь тестовый выход (исходя из документации). Далее прописываете в UCF-файле ограничения:
Код
NET "clk" TNM_NET = "clk";
TIMESPEC TS_clk = PERIOD "сlk" 8.138 ns HIGH 50%;//тактовая частота 122,88МГц от осциллятора
NET "clk" LOC = AF20;//назначение ноги
NET "tst_led" LOC = L23;//назначение ноги
Создаете новый модуль Chipscope и выводите необходимые сигналы для проверки работоспособности на железе -задаете опорную частоту, глубину, триггеры и т.д. (project->new_source->chip scope....).
Компилируете все и после окончания проверяете, выполнились ли Ваши временные ограничения (design overview->static timing-> отсутствие временных ошибок, т.е. нет путей, подсвеченных красным цветом). Если временных ошибок нет, проверяете работоспособность с помощью chipscope. Если алгорим работает в соответствии с заданным, проект работоспособен.