Understanding a system modeling and abstraction level design approach can help you keep complex systems organized
If you’re an electronics designer with moderate knowledge of software development, it may seem like new products are in technological overdrive. More and more new products at the industrial, commercial, and consumer levels are embedded systems that require customized software in addition to advanced PCBs. So what is the best development process to follow in order to bring these new products to market?
Hardware designers are taking more cues from software development teams and implementing system-level design early in the development process. Understanding system modeling and abstraction levels in hardware and software design can enable communication throughout a cross-functional development team. This helps a team stay organized, produce more competitive products, and stick to tight development timelines.
Why Use System-level Modeling and Design?
New designs and products have become ever more complex over time, and the development efforts for these products have increased dramatically. Progressively more products have become embedded systems in their own right, requiring a hardware/software co-development process to meet strict design timelines. A design reuse and verification methodology can help product development teams stay within their development schedules and budgets.
This is where system-level modeling shows its value. When we say “design reuse,” this does not refer to taking an existing IC or PCB and completely redesigning it as a new product. Design reuse can involve using existing functional blocks from old designs and connecting them together in hierarchical schematics, effectively building a new system from already proven hardware modules.
Reusing existing hardware blocks in this way allows design teams to take a modular design approach that focuses on designing electronic functionality. In terms of PCB design, each modular functional block can only be brought into its own schematic as long as the electrical connections between different blocks are rigidly defined and standardized. This creates more work on the front end, but it creates a smoother design process for future products, especially if there are several blocks you use often.
Separating different functions into their own functional blocks allows circuits in each block to be easily simulated and optimized for the required functionality. This is the “modeling” portion of system modeling and abstraction levels. Design rule verification can also be executed at the schematic level, allowing problems in an individual functional block to be identified and corrected before they affect downstream blocks.
Understanding System Modeling and Abstraction Levels
Taking design requirements and forming a functional block diagram for a new product is the core idea in using system modeling and abstraction levels for electronics development. Implementing a systems-level design process and successfully progressing towards a PCB layout requires properly completing the first step: gathering functional requirements for your new product. This will form the foundation for your new product and allow you to define a block diagram that represents your system’s functionality.
Progression through design abstraction levels in electronics development
One important point to consider in design reuse as part of system-level design and modeling is component sourcing. If you’re reusing an old functional block in a new system, it’s important to check that the components in that block are available on the market in the quantities you need. You should also check whether these required components will go obsolete as this will interfere with successive manufacturing runs for your new product.
If you’ve taken a modular approach to designing schematics for each functional block, you can link them together in a hierarchical fashion, and your system will start to nicely reflect the intended functionality you created in your block diagram. Once you’ve captured your schematics in a PCB layout, arranged components, and routed your board, you’re ready for the final design verification steps. This can include post-layout simulations, batch design rule checks, and DFM checks.
If you’re designing an embedded system, software development will need to proceed alongside the hardware development portion of the project. There is no perfect time to start coding software for a new product, but the software functionality should be defined at the block diagram level alongside the hardware functionality.
The Right Components Aid System Modeling: SoM and SoC
As more systems in 5G/telecom, automotive, aerospace, and even photonics become more complex, the components market has responded by providing system-on-module (SoM) and system-on-chip (SoC) components. These ASICs bundle a significant amount of functionality into a single component. This greatly aids the transition through system modeling and abstraction levels as the functions and interfaces for these components are rigidly defined, allowing them to be easily incorporated into new products for very specific applications.
SoCs aid progression through system modeling and abstraction levels during design
Aside from allowing complicated functions to be addressed and defined at a higher abstraction level during design, using SoCs and SoMs provides layout engineers with many more benefits. Because these components incorporate diverse functionality into a single component, they reduce your overall component count and board space requirements. These modular components have also been thoroughly tested and qualified, giving you the assurance that they will function properly in your layout
Moving through design, system modeling, and abstraction levels in hardware development can be difficult, but working with the right PCB design and analysis software package can help your teams stay organized, quickly reuse and verify design blocks, and simulate design blocks as needed. Allegro PCB Designer and Cadence’s full suite of analysis tools make it easy to implement any design process you can imagine, including system-level design.
If you’re looking to learn more about how Cadence has the solution for you, talk to us and our team of experts.