Back to Blog home


This is the second post in a series on: "Bringing Low Cost, Flexibility, and Freedom to EDA."

Proprietary EDA software sells you a license to obtain a copy of their software and run it for certain purposes and under certain conditions. They then go a step further and attempt to enforce this license by making you install and run a license server that their software checks in with each time you run it. Sometimes the license server goes down (because the hardware it's running on goes down, the network goes down, the license server software itself crashes or locks up, your renewed license has been paid for but the bureaucracy hasn't yet updated the license file, etc., etc.). Suddenly the software you have paid thousands of dollars for and you are legally entitled to run, won't run. I don't know about you, but I have never found anything in chip design more frustrating than that.

This is one of the reasons Millennium Software Design does not sell you licenses and most definitely does not try to enforce anything with license server software. We are confident that we can all treat each other like trustworthy professionals in this business.

The other reason we don't sell you licenses is because we simply can't. Our software is distributed under various Open Source licenses. You are free to copy the source code as much as you want. You are also free to run the software wherever, whenever, and however you like. You can run the software without a network connection, on an airplane even. You can install our software on a big beefy server and have people from all over the world log in to that server. Heck, offer the public logins to that server, we don't care. Run virtual machines, containers, whatever you want.

With that being said, what are you paying for then? We briefly mentioned in the last post that we are selling subscriptions. We do need to be fairly compensated for everything that we provide as part of our subscriptions and so we looked to the examples of others that sell open source software subscriptions and came up with a way based on the number of CPU cores per physical machine that you are running the software on.

Some have found this a little confusing, so let me try and explain the rational. If we charged per machine then people might be tempted to stuff a bunch of CPU's (CPU cores) into one machine and have their whole team ssh to that machine to run their simulations and then only buy one subscription. If we based it on CPU cores alone, then a single engineer running this on a modern 4-core laptop would have to buy 4 subscriptions, and that doesn't make sense either. If we based it on the number of people, then a team of one or two engineers that is really clever could buy one or two subscriptions and automate running thousands of simulations on hundreds of machines, while a less automation-focused team of 10 engineers would have to buy 10 subscriptions. None of that seems right. That's why we decided on the per 4-cores, per-machine pricing model. We feel it's a simple and fair way to make sure the amount you pay matches the value we are providing you.

Phew, that was a lot of words to explain that with our open source licenses and subscription-based model you have the flexibility to use our products wherever, whenever, and however you like. I hope this was helpful. If you have any questions or comments please let me know using the contact form here.

Author: Bryan

Published: Feb. 26, 2020

Comments? Questions? Contact us:

Enter your email to subscribe to updates through simplelists