| 3 min read

Bridging the Gap: Agnisys Contribution to Specification Automation

Agnisys offers a leading solution with comprehensive features to guarantee the accuracy of each semiconductor component right from the beginning. This platform allows you to easily create these essential elements directly from your executable specifications, saving significant time and resources.

Agnisys can help streamline projects with automatic generation of RTL, UVM Register Layer, UVM Model, UVM Testbench for IP SoC Verification, System level SoC Validation, and IP Integration. Its tools suite automates file generation, benefiting designers, verification engineers, embedded programmers, pre-silicon validation engineers, and post-silicon lab teams. All files, including the programmer's manual documentation, are automatically generated, replacing manual coding and updates. Accelerate project schedules and optimize human resources with our comprehensive solution.

Register specification is a crucial aspect of System-on-Chip (SoC) design, where multiple hardware components are integrated into a single chip. Register specification involves defining and detailing the behavior, characteristics, and functionalities of registers within the SoC. Key Aspects of Register Specification:

  • Register Types:
    • Configuration Registers: Used for setting various parameters and configurations within the SoC.
    • Status Registers: Provide information about the current state of the SoC or its components.
    • Control Registers: Used to initiate specific actions or operations within the SoC.
  • Addressing and Mapping:
    • Memory Map: Specify the memory-mapped locations of each register within the SoC's address space.
    • Address Decoding: Detail how the SoC decodes address to access specific registers.
  • Access Control:
    • Read/Write Permissions: Define which registers can be read from and written to by various components within the SoC.
    • Security Considerations: Specify any security features or access restrictions for sensitive registers.
  • Clock Domain and Timing:
    • Clock Domain: Identify the clock domains to which registers belong.
    • Timing Constraints: Specify any timing requirements or constraints associated with register operations.
  • Reset Behavior:
    • Power-On Reset: Define the initial state of registers during power-on.
    • Reset Signals: Specify the behavior of registers during different types of resets.
  • Interrupts and Events:
    • Interrupt Registers: If applicable, define registers related to interrupt handling.
    • Event Registers: Specify registers related to signaling or acknowledging specific events.
  • Register Dependencies:
    • Dependencies: Document any dependencies between registers or components to ensure proper sequencing and operation.
  • Documentation:
    • Register Specification Document: Create a comprehensive document that includes all register details, addressing, descriptions, and other relevant information. This document is a crucial reference for designers, verification engineers, and software developers.

Importance of SoC Design

  • Facilitating Seamless Integration:

Accurate register definitions are essential for promoting communication among components of a System-on-a-Chip (SoC). These specifications define the interfaces and communication protocols, which allow different SoC components to work together harmoniously. Ensuring the harmonious operation of multiple system components is crucial as it enhances the overall efficiency and dependability of the SoC.

  • Guiding Software Development:

Well-defined register specifications are important for more than just software development. These specs provide clear insights into the complexities of the underlying hardware and act as a thorough reference for software developers. This advice is helpful in the creation of device drivers and makes it easier for hardware and software to communicate with one another. Following register standards thereby improves the overall functionality of the SoC and speeds up the software development process.

  • Foundation for Verification:

The foundation of the SoC design verification process is made up of register requirements. They offer the fundamental structure needed to build reliable testbenches that assess and confirm the accuracy of the SoC's functionality. By carefully following these guidelines, designers can evaluate and verify that the different components of the SoC function as planned. This not only guarantees the SoC's dependability but also shortens the development cycle by spotting and fixing possible problems early in the design stage.

  • Enhancing Design Understanding:

Designers and other stakeholders can consult the specification document, which contains full register specifications. It provides a sophisticated comprehension of the SoC's architecture and operation. The team members' ability to communicate effectively and develop a common knowledge of the design goals and constraints is facilitated by this comprehensive documentation. As such, a well-written specification document becomes vital to guarantee a coherent and knowledgeable approach to SoC design.

Sometimes the team needed more proper documentation in which data such as chip block register memory specification can be captured along with their various attributes such as address, default value, hardware and software access, and size.

Agnisys provides flexibility to users to provide this input specification GUI as well as batch mode. For GUI Agnisys offers specification capturing in Microsoft Word and Excel with the help of an Add-In, apart from that, it has its own cross-platform GUI with the name IDS-NG which can capture the register specification efficiently.

Users can define a property design hierarchy for better organization of the specification. The chip is the highest component followed by a block under which various registers, register groups, and memory can reside. 


Various templates for capturing the definitions (macros), parameters, enumerations, and external signal information are also provided. Multiple bus domains can also be captured along with FIFO, structs, sequences, and the Jellybean IP library. Register specification diff and merge feature is also available in IDS-NG.

Meanwhile, various text-based formats are supported for capturing information such as SystemRDL, IP-XACT, XML, YAML, PSS, JSON, CSV, and RALF. These input formats can be given in batch mode for the generation of various design, verification, validation, and documentation teams. 3rd party IP and Custom input and output are also supported. 

Such versatility and flexibility in input capturing input and specification and generating various outputs does not exist in any other tool in the industry.


request a product evaluation