Перейти к содержанию
    

Vivado. Атрибуты выводов, как в Quartus.

В Quartus я могу писать в verilog файле:

(* chip_pin = "2, 3, 4, 6, 7, 8, 28, 30, 31, 32, 33, 34, 42, 43, 44, 46",
     altera_attribute = "-name io_standard \"2.5 V\"; -name weak_pull_up_resistor on" *)
    inout [15:0]        ADB,        // Address-Data Bus

А как можно в Vivado задать в исходнике свойства и размещение выводов?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую!

 

В Quartus я могу писать в verilog файле:

...

А как можно в Vivado задать в исходнике свойства и размещение выводов?

А зачем!? Пины и другие земные физические атрибуты в исходнике ЗЛО! :krapula:

 

Но если наскучила спокойная "семейная" жизнь с файлами constaint и очень очень хочется - то в Vivado теперь можно попробовать поизвращатся например так :wacko:

module top
...
   (* CHIP_PIN = "B52", CHEGO_XOTITE="MIR_TEBE" *)
    input  wire         pcie_preset_n ,

    (* CHIP_PIN = "a5,a6,a7,a8,b9,b10,b11,b12",  IO_STANDART="TTL2_5", 
        CHEGO_XOTYTE="VIG_VAM" *)
    input  wire  [ 7:0] pcie_rx_p    ,
...
endmodule

# auto_izvrat_pin_constaint.tcl
#...
set pins_list [get_ports -filter {CHIP_PIN!=""}]

foreach pin_name $pins_list {
    set pin_obj [get_ports $pin_name]
    set pin_loc [split [get_property CHIP_PIN  $pin_obj] ","]
    
    if {[llength $pin_loc]==1} {
        puts "set_property LOC $pin_loc $pin_obj"
    } elseif {[llength $pin_loc] > 1} {

        if {[regexp {(\w+)\[\s*(\d+)\s*\]} $pin_name -> name bus_idx]} {
            
            set nloc_idx [expr [llength $pin_loc] - 1 - $bus_idx]
            set pin_nloc [lindex $pin_loc $nloc_idx]
            
            puts "set_property LOC $pin_nloc $pin_obj"
        } {
            puts "Error! regexp $pin_obj"
        }
    }
}

set pins_list [get_ports -filter {CHEGO_XOTYTE!=""}]
#...

 

Успехов! Rob.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...