После создания .cdc-файла двойным щелчком по нему запускаю ChipScope Pro Core Inserter. Затем, вероятно, я что-то делаю неправильно. Поправьте меня на простом примере создания core для одного триггера (библиотечный элемент FD со входами D, C и выходом Q). Входы D и С подключены на схеме к цепям d_in и clk соответственно, выход Q - к цепи q-out. К цепям подключены маркеры входов и выхода.
На вкладке Trigger Parameters задаю:
number of input trigger ports:1; trigger width:1; #math units:1; match type: basic;
counter width:disabled; отключаю "Enable trigger sequencer".
На вкладке Capture Parameters установлено:
data depth:256; sample on: rising; включены опции "Data same as trigger" и "Include trig0 port (width=1). В следующем окне "Modify connections"
в списке цепей присутствуют буферы d_in_BUF, clk_BUFGP, q_out_OBUF.
Т.к. была задана trigger width:1, то на вкладке "Trigger/Data Signals" присутствует только один канал CH:0, на который подключаю буфер d_in_IBUF. На вкладке "Clock Signals" на единственный канал CH:0 подключаю буфер clk_BUFGP. Затем возвращаюсь из Core Inserter в Schematic. В списке файлов в ISE выделяю .sch-файл, а в списке процессов двойным щелчком запускаю "Create Schematic Symbol". Создал символ. Теперь, если я пытаюсь работать с этим символом в этом же проекте, появляются такие ошибки: "Circular hierarchy reference found. Breaking cycle at module 'имя_модуля' ", и такая - "Entyty 'имя_объекта' is exactly the same as instance (same port and generics)"
В чем мои ошибки? Если я буду создавать core не триггера, а обычной логики, например, аналог элемента and2, то какую задавать "trigger width" и что использовать в качестве "Clock signals" (в Core Inserter)?