Altera_Forum
Honored Contributor
12 years agoI/O Timing constraints
Hi,
In our design we are using NIOS II processor running at 100MHz with many I2C, UART and SPI interfaces, DVI input and many other stuff. We are having hard time to meet timing requirements. My question is this: How can I constrain I/Os like I2C, or UART outputs? Actually, should I? Correct me if I am wrong: Normally, I think Quartus would try to route those signalls such a way that they will reach to the outside in 1/100MHz period because they are driven by a 100MHz clock. However, I want to inform Quartus that those signals will be at most 1/57.6KHz, so it is OK to route with a longer path. Therefore there would be more space for faster signals like DVI. I have a clock input for DVI, so I can easly constrain DVI related signals using its clock. However there is no clock generated for UART, I2C or SPI. Actually I2C and SPI have clocks but they are created as a regular I/O. Should I use virtual clocks (i.e. 57.6KHz clock) or multi_cycle_paths (i.e. 100M / 57.6K = 1736??), or any other syggestions? Thanks :) M.U. Buyuksahin