Ship your IP encrypted, for every tool your customer runs.
lumprotect encrypts Verilog, SystemVerilog, SPICE and Verilog-A files into IEEE 1735 envelopes, for Lumina and for any other tool whose public key you add. Lumina Sim, Lumina Lint and Lumina Spice read encrypted IP in memory, and what they show of it follows the rights its author set.
Commands from the IP protection guide
- IEEE 1735
- version 1 and 2 envelopes
- Several tools
- one envelope per key
- Rights
- control what is shown
- In memory
- never written decrypted
What Lumina Protect does
Encrypt for many tools
One envelope carries a key block per tool, so the same file works in Lumina and in the other simulators and linters your customers use.
Rights you set
Choose whether errors point to the original file and line, and whether ports or all names are visible at run time.
Hidden where it matters
Inside protected IP there are no source lines in messages, no signals in waveforms, no VPI objects, no stepping in the debugger and no coverage.
Your code still checked
The protected design takes part in lint, CDC and simulation: its connections, clocks and resets count, while nothing inside it is reported.
Analog IP too
SPICE netlists, model libraries and Verilog-A files encrypted the same way, read by Lumina Spice with their nodes and devices kept private.
Keys and checks
Generate key pairs and keyrings, inspect an envelope's keys and rights, and decrypt with your own key to check what you ship.
What stays private
- Errors
Reported as a problem in protected IP; source lines are never printed
- Waveforms
Signals and scopes inside the IP are not dumped
- VPI and cocotb
Objects inside the IP are not found, iterated or returned
- Debugger
No breakpoints or stepping inside the IP
- Coverage
The IP's statements and signals are not measured
- Lint
No findings inside the IP; your code is checked as usual
Frequently asked
What is IEEE 1735?
The IEEE recommended practice for encrypting electronic design IP so that EDA tools can use it without revealing it. It defines envelopes with a key block per tool and rights that control what each tool may show.
Will my encrypted IP work in other vendors' tools?
Add each tool's public key when you encrypt and the envelope carries a key block for it, alongside the one for Lumina.
Can I use encrypted IP I received from a vendor?
Yes, if it is encrypted for the Lumees key or for a key you hold in a keyring. It is decrypted only in memory.
Run your own design on Lumina first.
We are working with a small group of design teams before release. You run your real designs; we fix what you find, and your cases become part of the tests every build must pass.