cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
338 Views
Registered: ‎08-15-2017

how to add the self-defined interface bus to vivado ?

I need to define self-defined interface bus ,and how can I add the defination to vivado ?

I find that the bus defination of axi_vdma axis_s2mm  is different with the defination of the pre-defined interface bus of the vivado , I define a axis IP  using the item in figurer1 , but get a axis ip which the bus is different with the axi_vdma ,how to solute it ?

k1.png

 

0 Kudos
4 Replies
Highlighted
Moderator
Moderator
225 Views
Registered: ‎11-09-2015

HI @microchip_zhang 

Are you sure that you have not missed to map some signals when packaging the IP?


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
0 Kudos
Highlighted
Observer
Observer
114 Views
Registered: ‎11-21-2020

Create IP-XACT bus definition files with TCL commands such as

set ip_xact_vendor [lindex $argv 0]
set ip_xact_library [lindex $argv 1]
set ip_xact_name_busdef [lindex $argv 2]
set ip_xact_name_absdef [lindex $argv 3]
set ip_xact_version [lindex $argv 4]
set project_output_dir [lindex $argv 5]

# IP-XACT
# Bus Definition

set bus_definition \
    [ipx::create_bus_definition \
        $ip_xact_vendor \
        $ip_xact_library \
        $ip_xact_name_busdef \
        $ip_xact_version]

set_property \
    -dict [list \
        xml_file_name [file join $project_output_dir $ip_xact_name_busdef.xml] \
        direct_connection true \
        is_addressable false \
        max_masters 1 \
        max_slaves 1] \
    -objects $bus_definition

ipx::save_bus_definition $bus_definition

# IP-XACT
# Abstraction Definition

set abstraction_definition \
    [ipx::create_abstraction_definition \
        $ip_xact_vendor \
        $ip_xact_library \
        $ip_xact_name_absdef \
        $ip_xact_version]

set_property \
    -dict [list \
        xml_file_name [file join $project_output_dir $ip_xact_name_absdef.xml] \
        bus_type_vlnv $ip_xact_vendor:$ip_xact_library:$ip_xact_name_busdef:$ip_xact_version] \
    -objects $abstraction_definition

# IP-XACT
# Ports

foreach {
    port_name
    port_properties
} [list \
    push \
        [list \
            master_presence optional \
            master_direction out \
            master_width 1 \
            slave_presence required \
            slave_direction in \
            slave_width 1 \
            default_value 1] \
    data \
        [list \
            is_data true \
            master_presence required \
            master_direction out \
            slave_presence required \
            slave_direction in] \
] {
    set bus_abstraction_port \
        [ipx::add_bus_abstraction_port \
            $port_name \
            $abstraction_definition]

    set_property \
        -dict $port_properties \
        -objects $bus_abstraction_port
}

ipx::save_abstraction_definition $abstraction_definition

then refer to it in your project by adding the repository where the files are ($repositories_interfaces) to the search path with TCL commands such as

...
create_project dut $work_directory -part xcku025-ffva1156-1-c

set_property \
    -dict [list \
        target_language vhdl \
        default_lib $library_name \
        ip_repo_paths [concat \
            $repositories_components \
            $repositories_interfaces]] \
    -objects [current_project]

update_ip_catalog -rebuild
...

 

0 Kudos
Highlighted
57 Views
Registered: ‎08-15-2017

thanks a lot for all of you, 

and to florentw, the bus signal of the self-defined IP  is generated by vivado,  and is not lost, 

and to EajksEajks .thanks for your information,I am researching it.

0 Kudos
Highlighted
54 Views
Registered: ‎08-15-2017

thanks a lot for all of you, 

and to florentw, the bus signal of the self-defined IP  is generated by vivado,  and is not lost, or the lost signal will be added automaticly when I run  automatic connection ??

and to EajksEajks .thanks for your information,I am researching it.

0 Kudos