Hi Community,
I am making a three-phase inverter and I need 16 discrete pulses for each phase which I'm generating through arrays with Single-Cycle Timed Loop (SCTL) and taking as output from digital pins to feed the inverter. For a second phase, these 16 pulse sequence which I have generated, I displace them by 120 degrees using array indexing and give them to another 16 digital output pins. So in order to drive three phases simultaneously, I need 48 digital output pins which I can't get through a single myRIO FPGA device (short of 8 digital pins). Then I thought to drive two phases on one myRIO FPGA and the third phase on another myRIO FPGA target.
But in order to operate the three-phase inverter properly (means all the three phases must displace by 120 degrees), the two myRIO FPGA targets must start at the same time and should remain in synchronization with each other. I have tried many ways to make the two FPGA targets synchronize with each other including using a digital pin for triggering the other myRIO to start at the same time through a digital button.
But the problem I faced was that the three phases started at the same time but within elapse of time, one phase (which is on other myRIO FPGA) gets unsynchronized with the other two phases (which are on the same myRIO). The two phases which are running through the same myRIO remain 120 degrees displaced but the other phase which is on the other myRIO travels and doesn't remain 120 degrees displaced with the other two phases.
I have invested so much time in order to make it synchronize but didn't find a way. Now, I'm thinking to use the 16 pulses (which I'm giving to the second phase) and feed them to another myRIO and displace them by 120 degrees using FIFO to feed the third phase of the inverter.
Is it possible to transfer data between two myRIO FPGA targets through FIFO? And if yes, how should I do for this application? Any other thing which I can do to make it operational?
I'm very desperate and my brain is hurting. Hoping to find the kind response. Thanks in anticipation.
Ahmad