Jump to content

IPXACT register vs registerFile


Khushi

Recommended Posts

Hi

In IPXACT standard document, I see inside an address block we can have either register or registerFile. In the same context I have following questions

- What is the difference between register and registerfile in ipxact ?

- When we should use register element or registerfile element to describe registers?

 

Thanks

Khushi

Link to comment
Share on other sites

Hi Kushi,

A register file is a group of registers. The group has its own range and dimension, so you can see it as an array. Assume register file RF with offset 0, range 8, and dimension 2 containing two registers A and B at offsets 0 and 4. Then there are two occurences of register A at offsets 0 and 8 and two occurences of registers B at offsets 4 and 12. You cannot describe this without register files unless you unroll all registers.

Best regards,
Erwin

Link to comment
Share on other sites

Thanks Erwin

Why in the standard we have two different elements (register and registerFile) ? Why not all capabilities (from simple to complex) are supported using simple register element. Is there some specific reason to have two elements (register for simple register sand registerFile for complex registers e.g. arrays, interleaved etc) >

Can we write the IPXact registers descriptions entirely using register files? Are EDA tools supporting registerFile elements to generate UVM or C files?

Regarding when we should use register and when registerFile => Can we use registerFile when complex array kind of things are not expressible using register ?

 

Thank

Khushi

Link to comment
Share on other sites

Hi Kushi,

Objects such as address blocks, registers files, and registers are not allowed to overlap or to be interleaved. So you cannot create a register array with gaps and interleave it with another register array with gaps. Instead you can create a register file array. Each element in the register file array can contain multiple registers or even register files. The register files can thus be nested. So indeed, certain things, you can only express using register files.

You cannot describe registers without IP-XACT registers because IP-XACT registers do appear in IP-XACT register files. A register file is only a container for registers. In general, EDA tools do support register files. I cannot comment on specific tools.

Best regards,
Erwin

Link to comment
Share on other sites

  • 1 year later...

Hello,

IEEE Std. 1685-2009 mentions TGI functions getRegisterFileRegisterIDs and getRegisterFileRegisterFileIDs to retrieve handles to registers and nested register files inside a given register file. Unfortunately it seems this functions were missed in the 2014 version but it should work the same way.

Best regards,
Erwin

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...