Hi,
I am working on nic400 and have some questions about timing closure.
1. What is a difference between register slice "absent" and "present - bypass"? Do they have same functionality?
2. In which document can I get information about the exact meaning of (AHB/APB) W/A/D timing closure?
Thanks.
If you have licensed the NIC-400 IP directly from Arm it's usually best to log a support request on their licensee portal rather than this public forum. They can then help with more detailed replies looking at your specific IP configuration.
But for these less specific questions...
1. "absent" means no register slice IP will be rendered for your configuration at this location, and I suspect that "present-bypass" would result in the same as "absent".
"bypass" makes more sense when you select the "Timing-closure" option because then all possible RTL register slice configurations are rendered, and at simulation time you use a parameters file to select which registering will be used at each location. This saves you having to re-render the RTL code each time you want to adjust registering, with "bypass" then meaning don't include any registering.
2. The W/A/D registering isn't well described in any of the docs I can think of.
For buffering and registering in AHB-Lite and APB interfaces, the NIC-400 optimises the number of channels to reduce the amount of area and wiring. The optimised channels are:
A - equivalent to the combined AW and AR channels in AXI.
W - equivalent to the W channel in AXI.
D - equivalent to the combined R and B channels in AXI.