In the Time Multiplexed code example, the WDT interrupt occurs every 1 second. So, whenever the interrupt is triggered (i.e every 1 second), the GAP Central tries to connect to next device in the bonded device list, in a round-robin manner.
To reduce it to 20 ms, you can change the timer period. Also, you can make the CPU to work at the highest clock frequency and reduce the components which are not required (like UART) in the example to make processing faster.
So I've already tried playing with the WDT in the example, but found that if I dropped it down to say 10ms, it would stay connected for 10ms but then would still take ~100ms to reconnect to the next one. I also tried an event driven approach where as soon as it detected that it was connected to one, it would disconnect and try to connect to the next one, but it still had that ~100ms delay for reconnecting. We are trying to figure out if that is just based on the way that the psoc 4 works and what the minimum delay to disconnect from one device and reconnect to a new one is.
At this point we were assuming that the delay is going to take too long, and are looking at using psoc 6 so we can just connect to both at the same time, but this is obviously not as cost effective...
In the Time Multiplexed example, for the peripheral project you can set the advertisement interval to the minimum value. For the central project, set the connection interval to a minimum value also.
By keeping all these parameters to a minimum, we can reduce the delay. But there is no hard and fast way to minimize the connection delay.