KNXraj:
Shooter's explanation is absolutely correct. Moreover, there is no chart with instruction execution time for MP900 series. However, there is such a chart for the older MP9200 (you can get it from your Yaskawa support rep.) It gives you an idea of the "order of magnitude", i.e. how much one instruction execution compares to another (say, an INC instruction is faster than "+ 1").
I do a lot of projects with Yaskawas and tend to like this powerful PLC - not just for its motion control capabilities (this is Yaskawa, after all), but also for its powerful set of logic instructions. This is so even as I am aware of its shorcomings - awkward programming software and documentation written in "Jenglish" first and foremost. So feel free to ask questions on this forum.
I usually set my scan time initially as follows: 3 ms for high-scan and 15 ms for low-scan. In most cases this works just fine. Note that on a brand-new clean CPU, the times are set 30 and 300 ms respectively. This is way too much! Since the communications window happens at the end of each low-scan cycle, you will notice that you are very slow when online. Change these values immediately. On the other hand, if you set them too low, you will not be able to communicate with the CPU at all - not even to switch from RUN to STOP mode. If this happens, flip RUN DIP switch on the front of the CPU and cycle the power, then set your scan times higher.
In reality, I was never able to set the high-scan time lower than 2 ms (and the low-scan is recommended to be set as a multiple of the former).
Be careful when you program FOR-NEXT or WHILE-WEND loops: when crunching a lot of instructions, they can increase the scan time significantly...
If your company is in Chicago area, I might even be able to give some help in person