How to use UML in your SoC hardware/software design: Part 2
Jul 24 2006 (9:00 AM), Embedded.com
In the first article in this series, we introduced the notion of an executable UML, but we did not describe the elements of which it consists. These elements must be sufficiently primitive to be translatable into multiple implementations, including hardware, but be powerful enough to be useful.
The number of elements in executable UML must also be low to ease the construction of translators, to ease the burden of learning the language, and to eliminate the ambiguity that accompanies the use of multiple constructs to represent the same concept. Determining exactly which elements make up an executable UML is therefore a matter of judgment.
In this second article, we describe the elements of Executable and Translatable UML (xtUML, or just Executable UML) [1], how actions enable description of behavior at a higher level of abstraction, the dynamic behavior of an executable UML model, and how a model of an SoC design can be verified before committing to a hardware-software partition.
To read the full article, click here
Related Semiconductor IP
- eUSB2V2.0 Controller + PHY IP
- I/O Library with LVDS in SkyWater 90nm
- 50G PON LDPC Encoder/Decoder
- UALink Controller
- RISC-V Debug & Trace IP
Related Articles
- How to manage changing IP in an evolving SoC design
- How to reuse your IIoT technology investments - now
- How to use snakes to speed up software without slowing down the time-to-market?
- How a voltage glitch attack could cripple your SoC or MCU - and how to securely protect it
Latest Articles
- QMC: Efficient SLM Edge Inference via Outlier-Aware Quantization and Emergent Memories Co-Design
- ChipBench: A Next-Step Benchmark for Evaluating LLM Performance in AI-Aided Chip Design
- COVERT: Trojan Detection in COTS Hardware via Statistical Activation of Microarchitectural Events
- A Reconfigurable Framework for AI-FPGA Agent Integration and Acceleration
- Veri-Sure: A Contract-Aware Multi-Agent Framework with Temporal Tracing and Formal Verification for Correct RTL Code Generation