{% extends 'base.html' %} {% block title %}Edit Module - {{ module.name }}{% endblock %} {% block head %} {% endblock %} {% block content %}
Unsaved changes
{% if module.is_new %}
New
{% else %}

{{ module.name }}

{% if not server_mode %} {{ module.file }} {% endif %} {% endif %}
Address Conflicts {% if not module.is_new %} {% endif %}
0x
{% if module.file %} {{ module.file.split('/')[-1] }} {% else %} No source file {% endif %}
Register Map
{% for reg in module.registers %} {% set width = 32 %} {% if reg.width %} {% set width = reg.width %} {% elif 'vector' in reg.signal_type %} {% set width = reg.signal_type.split('(')[1].split(' downto')[0] | int + 1 if '(' in reg.signal_type else 32 %} {% elif reg.signal_type == 'std_logic' %} {% set width = 1 %} {% endif %} {% if reg.is_packed %} {% endif %} {% endfor %}
Addr Name Width Access Default Strobes Description Actions
{% if reg.is_packed %} {% else %} {% endif %}
{% if not reg.is_packed %}
{% endif %}
{% if not reg.is_packed %} {% endif %} {% if not reg.is_packed %} {% endif %}
R W
{% for field in reg.fields %} {% endfor %}
Field Name Offset Width Range Access Default Description
{% if field.has_error %} {% else %} {% endif %}
[{{ field.bit_high }}:{{ field.bit_low }}]
{% if not module.registers %}
Empty Register Map

Start building your register interface via the button above.

{% endif %}
{% endblock %}