Abstract:
The present invention is related to a method to control the access of two synchronous busses with asynchronous clocks with unknown relative speed to a single port Random Access Memory (RAM), comprising the steps of :
a) Providing a synchronisation system comprising two busses and a control flip-flop being clocked to the clock of one of said busses, b) Providing a signal to said control flip-flop requesting a change of the clock of said RAM, resulting in a control flip-flop output signal, c) Applying said control flip-flop output signal to an inverter circuit yielding a signal INV_out and to a circuit to synchronise said output signal to the clock of the bus not in control of said control flip-flop, yielding a signal CL_SW, d) Applying the signal INV_out and the signal CL_SW each to a circuit to synchronise to the clock of the other bus yielding signals INV_out_SW and CL_SW_SW, respectively, e) Applying the signal INV_OUT and the signal CL_SW_SW to a first combinatorial block outputting a signal en1_comb and applying the signal CL_SW and the signal INV_OUT_SW to a second combinatorial block outputting a signal en2_comb, f) Applying the signal en1_comb and the signal en2_comb each to a falling edge sampling flip-flop, yielding signals en1 and en2, respectively, g) Applying the signal en1 and the clock of the bus in control of said control flip-flop to an AND gate and the signal en2 and the clock of the other bus to an AND gate, and the outputs of said AND gates to an OR gate, h) Using the output signal of said OR gate as the clock signal of said RAM i) Applying the signals en1 and en2 to a combinatorial block that outputs the select signal selecting between said busses to the control and data multiplexers used for communication with said single port RAM.