3
\$\begingroup\$

Many IP cores especially from Xilinx have an AXI interface from ARM. (AXI, AXI-Lite, AXI-Stream, APB, ... are parts of AMBA - ARM's bus architecture).

The AXI interface standard is free for download (after registration), but I don't think it's free for implementation. So I asume Xilinx has bought an AMBA license to eqip its IP cores with AXI interfaces.

I don't have such license.

Can I offer AXI interfaces for my (open source) IP cores written in VHDL or Verilog?

It's a bit off topic, but how expensive could it be? How could I get one? :)

Edit
I don't know of any Xilinx document, stating if it's legal to build AXI components interfacing with Xilinx AXI cores. Xilinx cores are bound to Xilinx FPGAs and tools by the Xilinx license. This does not effect own components.

On the other hand these components need to implement an AXI interface to interact with Xilinx cores. How can I atleast design such components without an AMBA license?

\$\endgroup\$
6
  • \$\begingroup\$ What are you going to do if someone here answers "no", you do it, and get sued because the answer was wrong? \$\endgroup\$ – PlasmaHH Jan 10 '16 at 21:56
  • \$\begingroup\$ @PlasmaHH Nothing. I'm looking for a good explantion. EE.SE has many hardware designers reading such questions and hopefully one can give an answer or a hint how I should interpret the AMBA license text. In my interpretation it's not possible to offer IP cores with AXI interfaces unless these cores are connected to an ARM CPU. So am I misinterpreting the license OR do all the vendors have an AMBA license OR do they violate the license? \$\endgroup\$ – Paebbels Jan 10 '16 at 22:06
  • \$\begingroup\$ Good question. I don't think I've seen axi on opencores.org \$\endgroup\$ – johnnymopo Jan 10 '16 at 22:23
  • \$\begingroup\$ @johnnymopo OC's Google search lists 4 AXI projects all from the same person mostly named robust_axi**. I would like to copy the license text, so everybody could read it, but even this is forbidden ... :(. \$\endgroup\$ – Paebbels Jan 11 '16 at 2:18
  • \$\begingroup\$ AMBA is an open-standard trademarked to ARM. You don't need a license to design AMBA component. \$\endgroup\$ – Jonathan Drolet Jan 11 '16 at 8:11
4
\$\begingroup\$

The AMBA specification (which includes all of the AXI-3, AXI-4, ACP, AXI Stream protocol) is available for license from ARM for no cost. To get the license, you need to create an account at ARM.com (no cost), and download the license ( no cost, but requires you to click through a legal agreement).

This license enables you to design products that uses these buses, sell them, buy them. You can not transfer your license to some else (so perhaps you are using the Xilinx license now as a developer (grey area), but if you want to sell the product you've developed, you should click through and get a license. (as a side effect, you get the actual specifications from ARM, which will be useful in making sure your IPs are correct!)

One restriction: Under this license, you can build and sell products that include an AMBA bus and a CPU, but the CPU cannot be code-compatible with ARM, unless it includes a paid for ARM license.

What I say where is just my opinion from reading the ARM license agreement. Go get your own license agreement from www.arm.com and verify this for yourself, with all of the legal concurrence you can afford.

\$\endgroup\$
2
  • \$\begingroup\$ This should be the answer! Nailed it. Although google is full of references to Xilinx related to AXI, it is an ARM LLC standard. \$\endgroup\$ – Anders Oct 8 '16 at 4:43
  • \$\begingroup\$ Since this is a highly ranked Google answer, I just wanted to note that the standard is now free to download, there is no account or click through license needed. The restriction still seems to hold regarding the ARM CPU, but for other uses I'd consider the (now) freely available spec more of an open standard than before. \$\endgroup\$ – madscientist159 Jun 10 '20 at 16:36
1
\$\begingroup\$

IANAL, but I don't see why not. Take the Zynq for example -- one if its biggest selling points is the ability to put whatever custom hardware acceleration you want into its fabric to act as a co-processor for the hardened ARM silicon. Xilinx wants you to use AXI -- the primary data interfaces are all AXI between the GP and HP ports.

Now, if you're turning around selling silicon or licensing IP cores, you may want to check with legal / do some more research, but for an open-source IP core, all you're doing is implementing something that is written to a publicly available specification -- that's it. You're not using any of their IP or design collateral.

\$\endgroup\$
1
  • \$\begingroup\$ Can you present a Xilinx doc granting any rights to use AXI? Connecting Xilinx AXI cores to Zynq's AXI interfaces is covered by Xilinx's own ARM/AMBA license. Xilinx does not realy offer free HDL access, they are promoting HLS and other solutions to interact with AXI, wherby the tool generates ab AXI interface. VHDL and Verilog design seems to by a relict to Xilinx :). To your second point: also specifications have copyright e.g. in US law. So implementing such interface could violate the license.... \$\endgroup\$ – Paebbels Jan 11 '16 at 1:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.