airhdl Feature Requests

  1. Register map generated from generic values (N instance of a subcomponent)

    Hello,

    In our register map, we often have a generic/parameter setting the number of instance we want that generate such memory map :

    Generic Number of N instance

    @0x0000 | RO | IP identification
    @0x0004 | RO | IP version register
    @0x0008 | RO | IP capabilities register

    @0x00101+0x00 | RW | Control register for instance 0
    @0x0010
    1+0x04 | RW | Status register for instance 0

    @0x00102+0x00 | RW | Control register for instance 1
    @0x0010
    2+0x04 | RW | Status register for instance 1

    @0x0010N+0x00 | RW | Control register for instance N-1
    @0x0010
    N+0x04…

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    under review  ·  0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  2. Support register reset using a generic parameter value

    I need to have register reset to value set by a generic/parameter value.

    This could be added easily by adding a list of generic/parameters associated to a register map

    Example :
    - IP version
    - IP configuration to report its configuration to the SW using the register interface.

    Note: generics needs to support :
    - stdlogicvector / logic vector
    - integer
    - boolean ?

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  3. Add a global download button

    Add a download button to the Register Maps view to allow downloading several register maps (e.g. JSONs) at once.

    4 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  4. Allow adding shared register map(s) to a project

    Currently only register maps that you have created yourself can be added to a project. This is a suggestion to allow adding register maps that have been shared with you by another user to a project.

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  5. Option to auto update offset addresses

    I am preparing a new register map and I'm worried that if I create 200 registers and tomorrow I want/need to add a new register in the possition 100, I have to manually increase the offset addresses from the 100 to 200 registers.

    2 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  6. Unique Register Address when duplicating

    When duplicating a register, it would be nice to have the new available address offset filled in the new register instead of the offset of the original one.

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    under review  ·  0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  7. Option for an external register implementation

    I'd like to be able to set an option that the register will be implemented outside of the airhdl model.

    My use case is that I want to be able to reset a single register in a different way with respect to all the others: all registers must be reset from a software reset instead of one that need not to be reset by software, but only at power up.

    0 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    4 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  8. Could we create a namespace around constants in the header file?

    Thanks, great code generator! The only thing is that I would prefer to have a c++ namespace isolating all the constants for a register map and "static const" values instead of defines.

    2 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  9. Landing page

    It would be nice if one could choose its landing page (Dashboard, projects, or maps) in the user configuration

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  10. Would it be possible to merge a set of register maps in a single one?

    Maybe this is already possible with JSON upload. But in simple cases one would like to merge exixting maps in a single one by simply specifying the offset of one map respect to the other.

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  11. Provide separate input and output ports for read-write register

    Read-write registers are currently implemented with only an output port to user logic. This could alternatively be implemented with both input and output ports to user logic such that you essentially have both a read-only and write-only register at the same address. Users could wire these ports together if it is required for reads and writes to this address to return the same data.

    There are a number of applications where it would be valuable for reads to return a value different to the last written value. Currently, this is only possible by creating read-only and a write-only registers at…

    10 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    planned  ·  1 comment  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  12. Add support for scripting to get register artifacts

    As a user of airhdl, I would like to be able to get the register articats (c header, vhdl etc) via a scripting languange instead of accessing the site, selecting the register bank and press "Download"

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  13. Hierarchical register structure

    Allow registers to be put in a directory type structure.

    8 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    under review  ·  1 comment  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  14. add version management

    The versions are tracked, however occasionally there is need to generate files from an earlier version, or roll back a set of register changes, possibly with the inclusion of labels.
    < the logical extension is branching and merging that is less typical in register maps than mainline code >

    2 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  15. Self-clearing fields should be banned on read-only registers

    Self-clearing fields should be banned on read-only registers, since they don't make sense. In fact those fields are not cleared after read.
    The web interface could simply generate a DRC error.

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  16. add Software set, hardware clear register type

    Currently there is an hardware set, software clear type (interrupt)
    Adding a software set, hardware clear type would allow the 'arming' of hardware state machines by software, the bit can then be automatically cleared by hardware, ready to re-arm the state machine in future.

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  17. Support bit-level RW access types

    As is, access granularity is defined at the register level. However certain bits may require accessibility in ways that others may not. This is a recurring theme on many designs I have worked on.

    I think it would be useful to specify for example, that Reg[7] is Read-only, while Reg[6] is Write-only, and Reg[5:0] is R/W.

    6 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    under review  ·  0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  18. Support longer text in register overview graphic

    The visualization of the register fields arrays the text in a manner that renders it less than helpful unless all bit fields are shorter than 4 characters (except in the case of wider bit fields).

    One solution might be to rotate field names 90 degrees and situate them vertically.

    2 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  19. Option for synchronous reset of axi interface

    To get the maximum performance, and smallest of a design the same type of reset should be used throughout the design, according to this document: https://www.xilinx.com/support/documentation/white_papers/wp275.pdf

    This register generator currently uses asynchronous reset. It would be nice to have an option to use synchronous reset. If the reset of the design uses synchronous reset, all flip-flops would use the same type of reset and can be implemented directly into the flip-flop yielding better performance and are usage. Currently there is no way of changing the type of reset, which is unfortunate if used in a design that implements synchronous reset.

    3 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    under review  ·  0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  20. Add option to split register arrays and still create one single array output

    Add the ability to split register arrays up in equal parts and generate single array output.

    Ex.

    Register:
    | [7:0] | [7:0] | [7:0] | [7:0] |

    Each element in the array would be 8 bits long instead of 32, but still be apart of the same array.

    Current solution would generate 4 different array outputs.

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    under review  ·  0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
← Previous 1 3
  • Don't see your idea?

airhdl Feature Requests

Categories

Feedback and Knowledge Base