MCP's are driven by Design, not by tools. By protocol, if design want to meet in single cycle and if tool is unable to meet the constraint, you cant put straight away the MCP to 2 or more.
Below are the scenarios :
1. When you multi clock designs , like div by 2. you can meet some times in single clock cycle. Need to have MCP.
2. When you have 64*64 multiplier or etc , which need more time to compute. In these cases , with designers permission, can add MCP.
3. When you are accessing the data from memory elements, the access time will be slow and working at very high speed system clock. Designs will be driven to have MCP since system will wait for 2 or more cycles to fetch the data.
4. When the data accessed in regular intervals of time , data can be utilized/used after few clock cycles, you can add MCP.
5. For the static data (which doesnt used in immediately next clock cycle), you can use MCP.
Many cases can be derived based on the conditions.
Regards, Sam
Regards, Sam