AptSpec Data Consistency and Autogeneration tool

A productivity tool that addresses the growing complexity of Designs


Many projects include sets of data and information that is used in various tasks within the design process, and has to be captured in different file formats depending on the task. Examples include register maps, interface descriptions, instruction set formats, pinouts and project wide definitions in multi-language projects. Typically the information is captured in a specification and replicated in various file formats for use in different modelling, design and verification activities within the project. Problems occur when consistency is not maintained, which can cause large losses in engineering time and productivity. Often manual copying of data is required or the use of an ad-hoc set of scripts, which can lead to problems, particularly in projects with aggressive timescales. The AptSpec tool provides a common database for the data and a set of tools for easy data entry and for data extraction to the required output formats, such as RTL, C, e, HTML and many others.



  • Auto generation of source code and documentation from a single repository
  • Requirements tracking
  • Capturing data for:
    • Interfaces
    • Register maps
    • Pin outs
    • Instruction sets
    • Verification points
    • Any data types that can be expressed as a hierarchical table


The operation of AptSpec is shown diagrammatically below. AptSpec is based on a central database. This contains the information that has been placed in it from parsing another format, or entered directly. The input parsing functions may be generic, or they may be specific for a proprietary data format. An example of a generic parser is the XLS spreadsheet parser. Using the access functions, the database can then be loaded and interrogated by simple output format generators, and updated as necessary. Output generators are specific for the output format and type of data. Generators for common output formats are included in the standard tool, but further generators can be added for minimal effort e.g. if a proprietary output format is required.



  • Concise input formats.
  • An intuitive interface allows the generation of any output format that is required
    • Outputs HTML and other formats for documentation
    • Verilog, RTL, VHDL – hardware interfaces
    • C/Java – software interfaces
    • VPLAN/dot – Requirements/Verification tracking
    • Verification points
  • Spreadsheet input format is natively supported, parsers for other input formats can be easily added
  • All input data is processed and then stored in a persistent, central database
  • Data can be pre-processed using built-in access tools


  • Ensures consistency between files e.g.
    • hardware implementation
    • documentation
    • software models
    • drivers
  • Eliminates time consuming manual steps such as separately updating documentation and source code, and manual checking
  • Eliminates the need for ad-hoc scripts
  • Autogeneration function reduces engineering time spent on repetitive tasks
  • Requirements tracking built in
  • An essential tool for the rapid development of complex systems and system IP, such as AptCore’s ACR102

AptSpec is available from AptCore today!