In the world of software development many companies have switched to agile design methods, achieving a faster time to market, fewer bugs and an increased ROI compared to traditional approaches.

This sounds great, so why isn’t Agile Hardware Development a thing, yet?

There is a great variety of agile methods for software, e.g., Test-Driven Development (TDD), Extreme Program-ming (XP) or  Continuous Integration (CI). What all these methods have in common is the focus on quick iterations and fast feedback cycles, mainly achieved by rapid prototyping and unit testing.

Both are notoriously hard in hardware development.   
Our mission is to provide methods and tools that allow hardware designers to apply these concepts with ease in the domain of hardware design. 

Agile with Lubis

Agile with Lubis shows our vision of an agile hardware development flow:

  1. Prototyping: Start by creating a sound and abstract prototype (e.g., with SystemC) that formalizes the functional requirements of the specification. Thanks to our methodology this prototype can be used for functional sign-off of the RTL (see LUBIS Concilium).
  2. Design: Automatically create functional (or structural) RTL mock-ups from the prototype created in the previous step to jump-start your design process (see LUBIS Primis).
  3. Verify: Instantly generate a set of formal properties from the prototype. These properties can then be used to verify that the RTL design implements the modeled functionality correctly. Similar to unit tests these properties are easy to understand and provide fast feedback. In case of an RTL re-design the properties are re-used for functional verification of the changes (see LUBIS Veritas).

Sounds great? Interested how the flow works in practice?

Then follow us on social media and don’t miss our next blog posts!