[hpsdr] Diversity mode: use of LVDS-Pins of the TAPR-Mercury

wully wully at bluewin.ch
Thu Sep 29 09:04:25 PDT 2011


Hi all

Today, I have tried to use the mercury-6.7 fpga from Joe, K5SO with the 
clock signal for the second mercury coming from the LVDS pins of the 
first mercury.

When doing this, the second mercury did not start, since the 122.88clock 
did not come through the LVDS link.

After analysing the schematics and the mercury-6.7 code, I could make a 
quick fix, to enable the LVDS for the second board by activating the 
LVDS_TXE signal for the SN65LVDM180D.

The fix I did was

// old code
//assign source_122MHZ = (clock_select[3:2] == 2'b01); // if set use 
internally and send to LVDS else get from LVDS

// new code, this is a quick patch. the use of USB protocol would be a 
better solution
assign source_122MHZ = (Mercury_Addr > 0) ? 1'b0 : (clock_select[3:2] == 
2'b01);


After a mail discussion with Joe, K5SO, today, he pointed out, that the 
count for Mercury_Addr is 1..8, so we have to use

assign source_122MHZ = (Mercury_Addr > 1) ? 1'b0 : (clock_select[3:2] == 
2'b01);

But this is only a quick fix. I suggest, that the USB protocol is 
extended, to control the clock122-source by mercury id.

What is very amusing to see, is that the second board is only starting 
after the initialization of the first board is finished, so the blinking 
of the counter for the second board is delayed with respect to the first 
board.

73, hb9epu



More information about the Hpsdr mailing list