This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LMH1219: Eye Opening Monitor programing

Part Number: LMH1219
Other Parts Discussed in Thread: SIGCONARCHITECT,

// 1
spi_ti_WriteTo(0xff,0x04);
// 2
spi_ti_WriteTo(0x3e,0x00);
// 3
spi_ti_WriteTo(0x11,0xc0);
// 4
spi_ti_WriteTo(0x24,0x81);
// 5
rd_data= 1;
k=0;
while(rd_data&1){
spi_ti_ReadFrom(0x24, &rd_data);
if(k++ >1000){ trace("Time Out1 ~~!! \n");break;}
}
// 6
spi_ti_ReadFrom(0x26, &rd_data);
// 7
rd_data = 1;
k=0;
while(rd_data&1){
spi_ti_ReadFrom(0x24, &rd_data);
if(k++ >1000){ trace("Time Out2 ~~!! \n");break;}
}
// 8
spi_ti_ReadFrom(0x26, &rd_data);
// 9
rd_data = 1;
k=0;
while(rd_data&1){
spi_ti_ReadFrom(0x24, &rd_data);
if(k++ >1000){ trace("Time Out3 ~~!! \n");break;}
}
// 10
for(k = 0;k<4095; k++){
spi_ti_ReadFrom(0x25, &rd_data);
rd_data = rd_data & 0xff;
spi_ti_ReadFrom(0x26, &rd_data2);
rd_data2 = rd_data2 & 0xff;
eye_data[k] = rd_data*256 + rd_data2;
}
// 11
spi_ti_WriteTo(0x24,0x40);
// 12
spi_ti_WriteTo(0x3e,0x80);
// 13
spi_ti_WriteTo(0x11,0x20);
for(cont=0; cont<64; cont++)
{
for(k=0; k<64;k++)
{
trace("%04x",eye_data[data++]);
}
trace("\n");
}

1.Is the step-by-step method correct?

2.If the setup method is correct, what is different from the data in "SigCon Architect"?

Me

SigCon Architect

3.Did "SigCon Architect" process the data specially?

4.Can you get the source code used in "SigCon Architect"?

Before Eye Opening Monitoring ..

5.Can you tell me the basic settings?

Please reply by item.

  • Hi Jinwoo,

    1). With respect to EOM capture settings, please refer to LMH1219 programming guide. LMH1219 programming guide uses read/modify write. In this operation we read the register and then make changes noted in mask settings. When reading your programming steps, I noticed a couple of inconsistency with the programming guide:

    a). spi_ti_WriteTo(0x24,0x81); I believe bit 6 is set in default mode so I was expecting 0xC1 instead of 0x81.

    b). Also, when reading 4096 cells within this loop we should wait for reg 0x24[0] = 1'b0 or this bit to be equal to zero before reading reg 0x25 & reg 0x26. I am not sure if this is done.

    2). Your result should be the same as SigconArchitect. The only difference is that in your measurement you would capture 1UI. In SigconArchitect, 1UI eye diagram is copy/pasted to the first one to show a complete eye diagram.

    3). SigconArchitect raw eye data for 1UI should be the same as what you capture.

    4). Please follow the link below and search for eye_mon_preset.txt and eye_mon_postset.txt

    C:\Program Files (x86)\Texas Instruments\SigCon Architect EVM GUI\Configurations\LMH1219\Macros

    5). Basic setting is noted in LMH1219 programming guide. Please refer to section 3.10.1.2.I believe you already have access to this document. Also, you can use section#4 above as well.

    Regards,,nasser

  • There is a figure expressed by the first derivative in the data sheet.
    Figure 11 represents the data I read,(Same information read from LMH1219)
    Figure 12 represents the first derivative.

    In my opinion, it takes special processing to make it like "SigCon Architect" data.
    A detailed explanation of the first derivative is needed.
    I would appreciate it if you could explain it using examples.

  • E2E EOM Hit Counts Capture.xlsHi Jinwoo,

    I have enclosed an Excel file with formulas so you can get eye diagram similar to figure 12 above.

    Regards,,nasser

  • Thank you very much for your reply.

    I have additional questions.
    I want to read HEO and VEO information.
    Unable to read information.
    Can not read to IN0 port?
    Hardware design has already been made so that only IN0 port can be used.
  • Hi Jinwoo,

    In default mode, IN0 is enabled unless IN_OUT_SEL pin is optioned to select IN1 instead. Once IN0 is enabled and device is locked, you can use the following register settings to read HEO & VEO values. 

    RAW FF 04 07 //select channel register

    RAW 11 00 20 //enable EOM

    RAW 3E 80 80 //enable HEO/VEO

    RAW 27 00 00 //read HEO, convert to decimal and then divide by 64 to get eye opening in UI

    RAW 28 00 00 //read VEO, convert hex to decimal and then multiply by 3.125mV

    RAW 3E 00 80 //restore initial setting

    RAW 11 20 20 //power down EOM

    Regards,,nasser


    RAWRAW

  • Thank you very much for your reply.

    I did it in the way you indicated, but I can not read the information.

    I tested with "SigCon Architect", but the results are the same.

    When set to IN1 as shown in the figure, information is displayed.

    When IN0, information is not displayed.

    I have not found the cause.
    What do you need to review?

    Also, I would like to know the CLI (Cable Length Indicator).
    What formula should I assign to Reg 0x25 [5: 0]?
    There is not enough information in the datasheet.

  •  Hi Jinwoo,

    1). For these evaluation, are you using LMH1219EVM?

    2). Please check figure 4 of the LMH1219EVM user guide. Make sure jumpers are setup like what is shown in this figure(red rectangle).

    3). Please note picture below. I used LMH1219EVM and GUI. We can clearly observe HEO and VEO value.

    Regards,,nasser

  • Thank you very much for your reply.

    I found a difference.
    I have tested 1080i59.94 or 525i59.94 resolutions so far.

    3G can read HEO / VEO information.
    However, SD / HD can not read information.

    Do I need to change the settings when using SD / HD resolution?
    IN1 was able to read the information without changing the setting.

  • Hi Jinwoo,

    1). Are you using LMH1219EVM for this evaluation?
    2). Please refer to the LMH1219EVM user guide to make sure you are setting up jumpers correctly. Do you have access to the LMH1219EVM user guide?
    3). Please refer to the image I sent in my earlier post. As long as you have the same settings, device should be able to lock to any rate. What are you using to generate SD/HD video?

    Regards,,,nasser
  • Each item answers your question.

    1). We are using the LMH1219EVM for this evaluation.
    2). It is set the same as the manual. (Jumper)
    I do not see any special setting method for SD / HD video input.
    3). Professional equipment (Tektronix, phabrix)

    Do you mean you have to be able to represent SD / HD without special setup?
    However, only 3G is represented normally.
    In SD / HD, HEO / VEO is not represented.
    I have not found a problem.
    Is it possible to receive SD / HD input in your environment or equipment?

  • Hi Jinwoo,

    At HD and SD HEO/VEO is disabled. HEO/VEO is operational for 3G and higher data rates. My evaluation board does not show HEO/VEO for HD and SD - the same as your board.

    Regards,,nasser
  • Hi nasser,

    Thanks for the answer.

    Is there any product that can check HEO / VEO of SD / HD / 3G?
    Of course, "Eye Opening Monitor" should be possible.
  • Hi Jinwoo,

    At SD and HD you can use the following register settings. Please refer to the LMH1219 programming guide for details:

    RAW FF 04 07 //CTLE CDR page
    RAW 3E 00 80 //
    RAW 11 00 E0 //Enable EOM and set VEO to 3.125mv per step
    RAW 23 80 80 //Acquire HEO & VEO when reg 0x24[1]=1'b
    RAW 24 02 02 //Get HEO/VEO self-clearing
    RAW 27 00 00 //Read HEO & divide by 64
    RAW 28 00 00 //READ VEO & multiply by 3.125mV
    RAW 3E 80 80 //Enable auto HEO/VEO
    RAW 23 00 80 //Disable HEO/VEO override on reg 0x24[1]
    RAW 11 E0 E0 //Restore to default values

    Also, could you please send me email at Nasser.mohammadi@ti.com and let me know about your application and product.

    Regards,,nasser
  • Hi nasser,

    I can not understand.
    You said that you can not measure with SD / HD input.
    You said you can only measure on 3G input.
    Oct 29, 2018 9:31 PM << Look at what you answered.

    Because you answered that you can not measure ...
    I inquired about products that can be measured.

    I hope you do not have a misunderstanding, because I have asked you a question based on your answer.

    Let's recap about the question.
    1. I want to measure video from SD to 3G.
    2. Your answer is that you can measure from 3G to 12G.
    I want to know the product that satisfies the number 1. Please tell me the part number.
  • Hi Jinwoo,

    LMH1219 SigconArchitect GUI measures or reports HEO/VEO for 3G and higher data rates. Using register settings that I sent you in earlier E2E post, your FPGA or ASIC can issue these register settings to the LMH1219 device to measure HEO/VEO values for any data rate including SD and HD as well. Hope this is clear now.

    I would appreciate it if you could please let me know about your project/application. This would help us to support your project in different ways. One of my colleague is traveling and perhaps we can arrange a face to face meeting to address any question you may have.

    Regards,,nasser
  • Hi nasser,

    Finally, please make sure that I understand it correctly.
    1. LMH1219 device to measure HEO/VEO values for any data rate including SD and HD as well.
    2. LMH1219 SigconArchitect GUI is designed to measure data rates of 3G and higher. It is designed to not be able to measure SD and HD.

    Is the above correct?

    I have additional questions.
    How do I set the registers to measure SD or HD?
    In SD / HD, VEO and eye monitor are not accurate.
    Do I need to set registers 0x2C [6], 0x11 [7: 6]?

    The ongoing project is a simple signal / video analysis instrument.
  • Hi Jinwoo,

    Your statements 1 and 2 are correct.

    Please check earlier responses to your E2E post. I have noted register settings. Here is a copy for your reference:

    RAW FF 04 07 //CTLE CDR page
    RAW 3E 00 80 //
    RAW 11 00 E0 //Enable EOM and set VEO to 3.125mv per step
    RAW 23 80 80 //Acquire HEO & VEO when reg 0x24[1]=1'b
    RAW 24 02 02 //Get HEO/VEO self-clearing
    RAW 27 00 00 //Read HEO, convert to decimal & divide by 64
    RAW 28 00 00 //READ VEO, convert to decimal, & multiply by 3.125mV
    RAW 3E 80 80 //Enable auto HEO/VEO
    RAW 23 00 80 //Disable HEO/VEO override on reg 0x24[1]
    RAW 11 E0 E0 //Restore to default values

    Please note these register settings are listed in LMH1219 programming guide.

    Regards,,nasser
  • Hi nasser,

    Thanks for the answer.

    There is another question.

    Question about Cable Length Indicator.

    Data Sheet Contents:
    "CLI is accessible through CableEQ/Driver Page Reg 0x25[5:0].
    The 6-bit setting ranges in decimal value from 0 to 55 (000000'b to 110111'b in binary), corresponding to approximately 0 to 600 m of Belden 1694A cable."


    Expressing 600m with a value from 0 to 55 will result in 1 being 10m.

    I actually checked.
    1m = 3
    3m = 5
    10m = 8
    20m = 10
    30m = 12
    50m = 15

    The values are not direct proportionality
    Do I have to apply a special formula?
    No detailed explanation.

  • Hi Jinwoo,

    This depends on the data rate. Please below note a graph showing CLI decimal value vs. cable length.