04-25-2017 04:44 PM
04-25-2017 05:00 PM
@Anonymous there is no automatic wrapping your existing verilog block. What you can do is to create a template master and then manually insert your existing code into that setup.
04-25-2017 05:52 PM
@Anonymous actually now that I think about it, do you actually mean that you want to make an axi-master IP or axi-slave IP ? Most probably you want the latter. Assuming that's the case, it is much easier to get Vivado to create a basic axi-slave code (lite or full) and then add your own logic to it. This way almost all protocol management, and top level connectivity of the axi is supplied by Xilinx and you only add your custom logic to it.
If you actually want a master, it is more complicated as masters are supposed to know the behavior of the slaves to which they talk.
04-26-2017 07:47 AM
In Vivado, if you click on the Tools menu there is an option to "Create and Package new IP". This will start a wizard that will allow you to create an AXI interface of your choosing and will generate the supporting code necessary to use it. It will open up in a new project but you can take this generated code and edit it to your liking in order to fit your application. Alternatively, you can work within the IP packager environment and build around that and actually create your own custom IP core to be utilized in other projects. Really depends on what your end game is, but if you are doing this for a Zynq based project then using IP packager will help you get your code into a block diagram with the Zynq part and make AXI connections very easy.