masics 0 26 апреля, 2007 Опубликовано 26 апреля, 2007 · Жалоба Скажите, есть ли какая-нибудь возможность задать IOSTANDARD для всех pads одной командой? Команда `NET "*" IOSTANDARD = LVCMOS33;` не совсем корректна - она пытается присвоить этот аттрибут ВСЕМ нетам в дизайне без исключения. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_b 14 26 апреля, 2007 Опубликовано 26 апреля, 2007 · Жалоба Скажите, есть ли какая-нибудь возможность задать IOSTANDARD для всех pads одной командой? Команда `NET "*" IOSTANDARD = LVCMOS33;` не совсем корректна - она пытается присвоить этот аттрибут ВСЕМ нетам в дизайне без исключения. Я задавался таким вопросом, но положительного ответа не нашел. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
makc 192 26 апреля, 2007 Опубликовано 26 апреля, 2007 · Жалоба Могу предложить сделать уникальный префикс для пинов нужного интерфейса и использовать маску с этим префиксом для того, чтобы задать им стандарт ввода/вывода. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SunnyAngel 0 26 апреля, 2007 Опубликовано 26 апреля, 2007 · Жалоба Могу предложить сделать уникальный префикс для пинов нужного интерфейса и использовать маску с этим префиксом для того, чтобы задать им стандарт ввода/вывода. Если не трудно, приведите пожалуйста пример. И еще мне давно интересно, но никак не могу выяснить, можно ли для сигнала c большой разрядностью задавать LOC-констрейны одной строкой, как-нибудь в виде присвоения значения массиву? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
makc 192 27 апреля, 2007 Опубликовано 27 апреля, 2007 · Жалоба Если не трудно, приведите пожалуйста пример. Обозначаете все пины стандарта LVCMOS33 как LVCM_xxxxx, где xxxxx - это значащая часть имени, а LVCM_ - префикс для использования маски, после этого в UCF пишете: NET "LVCM_*" IOSTANDARD = LVCMOS33; И еще мне давно интересно, но никак не могу выяснить, можно ли для сигнала c большой разрядностью задавать LOC-констрейны одной строкой, как-нибудь в виде присвоения значения массиву? Если под сигналом большой разрядности Вы понимаете шину, выходящую на выводы ПЛИС, то боюсь, что через UCF одной строкой не получится. Есть вариант присваивать эти атрибуты в коде модуля на HDL, например, в цикле. Но это на любителя... ;) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
daemonDX 0 27 апреля, 2007 Опубликовано 27 апреля, 2007 · Жалоба При использовании verilog в ISE поддерживаются атрибуты, что позволяет использовать в HDL такие конструкции: module top ( (*IOSTANDARD="SSTL2_II"*) input wire [ 7 : 0 ] SAMPLE_IN, (*IOSTANDARD="SSTL2_II_DCI"*) output wire [ 7 : 0 ] SAMPLE_OUT ); Иногда удобно вынести почти все содержимое ucf в модуль верхнего уровня: module top ( (*LOC="AT17 AT14 AT8 AN6 M36 U38"*) (*IOSTANDARD="SSTL2_II"*) input wire [ 7 : 0 ] SAMPLE_IN, (*LOC="M34 AK39 AJ38 AC38 AJ39 AG38 AH38 AF39"*) (*IOSTANDARD="SSTL2_II_DCI"*) output wire [ 7 : 0 ] SAMPLE_OUT ); Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
masics 0 27 апреля, 2007 Опубликовано 27 апреля, 2007 · Жалоба А если синтезируется не в ISE? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
daemonDX 0 27 апреля, 2007 Опубликовано 27 апреля, 2007 · Жалоба Сам не пробовал (мне хватает ISE XST), но этот метод предположительно применителен к любому синтезу, поддерживающему атрибуты Verilog. Атрибуты - часть стандарта Verilog, а не расширение Xilinx. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
masics 0 27 апреля, 2007 Опубликовано 27 апреля, 2007 · Жалоба Сам не пробовал (мне хватает ISE XST), но этот метод предположительно применителен к любому синтезу, поддерживающему атрибуты Verilog. Атрибуты - часть стандарта Verilog, а не расширение Xilinx. Но это не стандартный формат. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SunnyAngel 0 28 апреля, 2007 Опубликовано 28 апреля, 2007 · Жалоба Если под сигналом большой разрядности Вы понимаете шину, выходящую на выводы ПЛИС, то боюсь, что через UCF одной строкой не получится. Есть вариант присваивать эти атрибуты в коде модуля на HDL, например, в цикле. Но это на любителя... ;) Жаль, а то частенько получается так, что сохраняется последовательность в нумерации выводов ПЛИС для нескольких последовательных разрядов шины, и можно было б не прописывать каждый в отдельности. Я вроде бы видела мельком книжку какую-то, в которой это описано, но никак ее найти не могу :cranky: 2 daemonDX: А VHDL аналогичную запись поддерживает? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vitus_strom 0 30 апреля, 2007 Опубликовано 30 апреля, 2007 · Жалоба К сожалению похоже нельзя применить констрент IOSTANDARD к группе PADS инче получалось бы все легко и просто :( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rand 0 30 апреля, 2007 Опубликовано 30 апреля, 2007 · Жалоба ISE поддерживает возможность назначения группе сигналов одного стандарта, банка и т.д. Только для этого нада в ucf файл лезть не через текстовый редактор, а с помощью Xilinx Pace (User Constraints -> Assign Package Pins)/ Далее с помощью Shift и/или Ctrl выбрать требуемые сигналы и либо обьеденить их в группу и работать с группой, либо при выделенных сигналах нажать правую кнопку и выбрать Ceate Constraint. Закончив редактирование нажать Save и создастся обыкновенный текстовый ucf с требуемыми параметрами. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться