{% extends "reports/wrapper.html" %} {% set block = results.block %} {% set tool = results.tool %} {% set build_seed = results.build_seed %} {% set timestamp = results.timestamp %} {% set stages = results.stages %} {% set coverage = results.coverage %} {% set failed_jobs = results.failed_jobs %} {% block content %}
{% if breadcrumbs %} {% endif %}

Simulation Results: {{ block.variant_name(sep='/') }}

 
{{ timestamp.strftime("%d/%m/%Y %H:%M:%S") }} {% if version %} DVSim: v{{ version }} {% endif %} sha: {{ block.commit_short }} json Branch: {{ block.branch }} Tool: {{ tool.name }} [{{ tool.version }}] {% if build_seed %} Build seed: {{ build_seed }} {% endif %}
{% macro coverage_stat(cov, kind, label) %} {% if cov and cov|attr(kind) is not none %} {% set value = cov|attr(kind) %}
  • {{ label }}
  • {{ "%.2f"|format(value) }} %
{% endif %} {% endmacro %} {% if coverage and not coverage.empty %}
Coverage statistics
{{ coverage_stat(coverage, "average", "Total") }} {% set code = coverage.code %} {{ coverage_stat(code, "average", "code") }} {{ coverage_stat(coverage, "assertion", "assert") }} {{ coverage_stat(coverage, "functional", "func") }} {{ coverage_stat(code, "block", "block") }} {{ coverage_stat(code, "line_statement", "line") }} {{ coverage_stat(code, "branch", "branch") }} {{ coverage_stat(code, "condition_expression", "cond") }} {{ coverage_stat(code, "toggle", "toggle") }} {{ coverage_stat(code, "fsm", "FSM") }}
{% endif %}
Validation stages
{% for s_name, stage in stages.items() %} {% endfor %}
{{ s_name }}
{{ "%.2f" | format(stage.percent) }}%
{% if stages %}
{% for s_name, stage in stages.items() %}
{% for tp_name, tp in stage.testpoints.items() %} {% for t_name, t in tp.tests.items() %} {% if t.total > 0 %} {% else %} {% endif %} {% endfor %} {% endfor %}
Testpoint Test Max Runtime Sim Time Pass Total %
{{ tp_name }} {{ tp.passed }} {{ tp.total }} {{ "%.2f" | format(tp.percent) if tp.total > 0 else "" }}
{{ t_name }} {{ "%.3fs" | format(t.max_time) if t.max_time is not none else "" }} {{ "%.3fus" | format(t.sim_time) if t.sim_time is not none else "" }} {{ t.passed }} {{ t.total }} {{ "%.2f" | format(t.percent) }}
{% endfor %}
{% endif %} {% if failed_jobs.buckets %}

Error Messages

{% for msg, job_list in failed_jobs.buckets.items() %} {% for job in job_list %} {% endfor %} {% endfor %}
   Test seed line log context
{{ msg }}
{{ job.name }} {{ job.seed }} {{ job.line }} {% for line in job.log_context %}
{{ line }}
{% endfor %}
{% endif %}
{% endblock %}