Part Number:DAC38J82Other Parts Discussed in Thread:LMK04828,
用的LMK04828给DAC和FPGA时钟
DAC配置LMF=421,K=20,子类1,用的link0
DAC38J82,无数据输出,卡在CGS阶段,确认FPGA一致在循环发k码,但是DAC的sync在发出同步请求后一直为低电平没有拉高,NCO验证有输出。
FPGA 368.64M
DAC 368.64M
SYSREF 18.432M
配置如下:
DAC38J82
0x00,0x0,
0x00,0x1,
0x00, 0x0218,
0x01, 0x0003,
0x02, 0x2082,
0x03, 0xA300,
0x04, 0xF0F0,
0x05, 0xFF07,
0x06, 0xFFFF,
0x07, 0x3100,
0x08, 0x0000,
0x09, 0x0000,
0x0A, 0x0000,
0x0B, 0x0000,
0x0C, 0x0400,
0x0D, 0x0400,
0x0E, 0x0400,
0x0F, 0x0400,
0x10, 0x0000,
0x11, 0x0000,
0x12, 0x0000,
0x13, 0x0000,
0x14, 0x0000,
0x15, 0x0000,
0x16, 0x0000,
0x17, 0x0000,
0x18, 0x0000,
0x19, 0x0000,
0x1A, 0x0023,
0x1B, 0x0000,
0x1E, 0x9999,
0x1F, 0x9980,
0x20, 0x8008,
0x22, 0x1B1B,
0x23, 0x01FF,
0x24, 0x0020,
0x25, 0x4000,
0x26, 0x0000,
0x2D, 0x0001,
0x2E, 0xFFFF,
0x2F, 0x0004,
0x30, 0x0000,
0x31, 0x1000,
0x32, 0x0000,
0x33, 0x0000,
0x34, 0x0000,
0x3B, 0x1800,
0x3C, 0x0228,
0x3D, 0x0088,
0x3E, 0x0108,
0x3F, 0x0000,
0x46, 0x1882,
0x47, 0x01C8,
0x48, 0x3143,
0x49, 0x0000,
0x4A, 0x0F3E,
0x4B, 0x1201,
0x4C, 0x1303,
0x4D, 0x0300,
0x4E, 0x0F0F,
0x4F, 0x1C61,
0x50, 0x0000,
0x51, 0x00DC,
0x52, 0x00FF,
0x53, 0x0000,
0x54, 0x00FC,
0x55, 0x00FF,
0x56, 0x0000,
0x57, 0x00FF,
0x58, 0x00FF,
0x59, 0x0000,
0x5A, 0x00FF,
0x5B, 0x00FF,
0x5C, 0x1133,
0x5E, 0x0000,
0x5F, 0x3210,
0x60, 0x5764,
0x61, 0x0211,
0x64, 0x0001,
0x65, 0x0001,
0x66, 0x0001,
0x67, 0x0001,
0x68, 0x7709,
0x69, 0x0000,
0x6A, 0x0000,
0x6B, 0xBD07,
0x6C, 0x0007,
0x6D, 0x0090,
0x6E, 0x0000,
0x6F, 0x0000,
0x70, 0x0000,
0x71, 0x0000,
0x72, 0x0000,
0x73, 0x0000,
0x74, 0x0000,
0x75, 0x0000,
0x76, 0x0000,
0x77, 0x0000,
0x78, 0x0000,
0x79, 0x0000,
0x7A, 0x0000,
0x7B, 0x0000,
0x7C, 0x0000,
0x7D, 0x0000,
0x3b,0x0000,
0x25,0x2000,
0x3c,0x228,
0x3c,0x228,
0x3e,0x128,
0x4c,0x1303,
0x4d,0x100,
0x4b,0x1200,
0x4d,0x100,
0x4e,0xf4f,
0x0,0x18,
0x4A,0x0F3e,//reset dac 204B IP core
0x4A,0x0F3e,
0x4A,0x0F3f,
0x4a,0x0f21,
0x02,0x2080,
0x2f,0x0,
LMK04828
0x0000, 0x90,
0x0000, 0x00,
0x0002, 0x00,
0x0003, 0x06,
0x0004, 0xD0,
0x0005, 0x5B,
0x0006, 0x00,
0x000C, 0x51,
0x000D, 0x04,
0x0100, 0x14,
0x0101, 0x55,
0x0102, 0x55,
0x0103, 0x04,
0x0104, 0x20,
0x0105, 0x00,
0x0106, 0xF8,
0x0107, 0x10,
0x0108, 0x08,
0x0109, 0x55,
0x010A, 0x55,
0x010B, 0x00,
0x010C, 0x20,
0x010D, 0x00,
0x010E, 0xF0,
0x010F, 0x11,
0x0110, 0x02,
0x0111, 0x55,
0x0112, 0x55,
0x0113, 0x00,
0x0114, 0x22,
0x0115, 0x00,
0x0116, 0xF9,
0x0117, 0x11,
0x0118, 0x08,
0x0119, 0x11,
0x011A, 0x55,
0x011B, 0x00,
0x011C, 0x20,
0x011D, 0x00,
0x011E, 0xF0,
0x011F, 0xFE,
0x0120, 0x00,
0x0121, 0x55,
0x0122, 0x55,
0x0123, 0x00,
0x0124, 0x22,
0x0125, 0x00,
0x0126, 0xF9,
0x0127, 0x01,
0x0128, 0x00,
0x0129, 0x55,
0x012A, 0x55,
0x012B, 0x00,
0x012C, 0x02,
0x012D, 0x00,
0x012E, 0xF1,
0x012F, 0x09,
0x0130, 0x06,
0x0131, 0x55,
0x0132, 0x55,
0x0133, 0x00,
0x0134, 0x02,
0x0135, 0x00,
0x0136, 0xF9,
0x0137, 0x33,
0x0138, 0x21,
0x0139, 0x02,
0x013A, 0x00,
0x013B, 0xA0,
0x013C, 0x00,
0x013D, 0x06,
0x013E, 0x03,
0x013F, 0x06,
0x0140, 0x82,
0x0141, 0x00,
0x0142, 0x00,
0x0143, 0x12,
0x0144, 0xFF,
0x0145, 0x7F,
0x0146, 0x18,
0x0147, 0x5F,
0x0148, 0x02,
0x0149, 0x42,
0x014A, 0x02,
0x014B, 0x16,
0x014C, 0x00,
0x014D, 0x00,
0x014E, 0xC0,
0x014F, 0x7F,
0x0150, 0x03,
0x0151, 0x02,
0x0152, 0x00,
0x0153, 0x00,
0x0154, 0x78,
0x0155, 0x00,
0x0156, 0x78,
0x0157, 0x00,
0x0158, 0x96,
0x0159, 0x00,
0x015A, 0x62,
0x015B, 0xD4,
0x015C, 0x20,
0x015D, 0x00,
0x015E, 0x00,
0x015F, 0x0B,
0x0160, 0x00,
0x0161, 0x01,
0x0162, 0x44,
0x0163, 0x00,
0x0164, 0x00,
0x0165, 0x0C,
0x0171, 0xAA,
0x0172, 0x02,
0x017C, 0x15,
0x017D, 0x33,
0x0166, 0x00,
0x0167, 0x00,
0x0168, 0x0C,
0x0169, 0x59,
0x016A, 0x20,
0x016B, 0x00,
0x016C, 0x00,
0x016D, 0x00,
0x016E, 0x13,
0x0173, 0x00,
0x0182, 0x00,
0x0183, 0x00,
0x0184, 0x00,
0x0185, 0x00,
0x0188, 0x00,
0x0189, 0x00,
0x018A, 0x00,
0x018B, 0x00,
0x1FFD, 0x00,
0x1FFE, 0x00,
0x1FFF, 0x53,
Cherry Zhou:
您好,您的问题我们需要升级到英文论坛看下,有答复尽快给到您。
,
Cherry Zhou:
您好,
请将以下寄存器更改为如下所示的新值:
0x3E 0x0148
0x4B 0x1200
0x2F 0x0004
,
????? ?:
问题,没有解决,还是卡在CGS阶段,DAC的SYNC没有拉高,FPGA一直在循环发送K码
,
Cherry Zhou:
FPGA 使用的serdes rate是多少? 将0x00写入地址0x6C 将其清零,然后读取。 请验证serdes PLL 是否已锁定。 如果未锁定,可能是FPGA 使用的时钟频率有问题,或者未使用正确的通道。
,
????? ?:
serdes rate是3686.4Mbps,pll未启用也需要查看是否锁定吗?,通道数确认过是对的,我想询问一个问题,就是DAC内部的JESDCLK和serdes clk和serdes rate有固定的关系吗,目前是JESD CLK为DAC CLK/2,serdes clk=dacclk。
,
????? ?:
PLL已锁定,写入00后读取0x6c=0x7
,
Cherry Zhou:
serdes clk = serdes rate / (4 * rate)
在我们的设置中, rate = 1/2
serdes clk = 3686.4M / (4 * .5) = 1843.2G
jesdclk_div = (interpolation * L) / M = (1 * 4) / 4 = 1
jesdclk = DAC_CLK / jesdclk_div = 368.64 / 1 = 368.64MHz.
https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/73/5367.DAC38J84-Clock_2C00_-PLL-and-SERDES-Configuration.docx
如果想要获得输出,请确保使用以下设置:
Address Data
0x25 0x2000
0x3B 0x0000
0x3E 0x0128
0x4B 0x1200
0x4D 0x0100
0x4E 0x0F4F
,
????? ?:
好的谢谢,看起来都是正确的,但是DAC还是没有输出,无从下手了,你们有有更好的建议吗
,
Cherry Zhou:
我们跟进给工程师再看下,应该会在下周工作日给到您答复。
,
Cherry Zhou:
您好,
请验证下所有电源的电压是否正确。 请确保 TRSTB 被接至低电平。 您试下以下文档中的步骤,来验证是否正确地接收到了SYSREF:
https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/73/SYSREF-trouble_2D00_shooting-7_2D00_18_2D00_22.docx
https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/73/5265.DAC38J84-Start_2D00_up-Sequence.docx
https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/73/4251.Device-Initialization-and-SYSREF-Configuration.pdf
,
????? ?:
default_421.cfglog.txt
Write Register: LMK04828.x134[0x134] -[0x20] Write Register: LMK04828.x135[0x135] -[0x0] Write Register: LMK04828.x136[0x136] -[0xF9] Write Register: LMK04828.x137[0x137] -[0x1] Write Register: LMK04828.x138[0x138] -[0x0] Write Register: LMK04828.x139[0x139] -[0x2] Write Register: LMK04828.x13A[0x13A] -[0x0] Write Register: LMK04828.x13B[0x13B] -[0xA0] Write Register: LMK04828.x13C[0x13C] -[0x0] Write Register: LMK04828.x13D[0x13D] -[0x8] Write Register: LMK04828.x13E[0x13E] -[0x3] Write Register: LMK04828.x13F[0x13F] -[0x0] Write Register: LMK04828.x140[0x140] -[0x0] Write Register: LMK04828.x141[0x141] -[0x0] Write Register: LMK04828.x142[0x142] -[0x0] Write Register: LMK04828.x143[0x143] -[0x12] Write Register: LMK04828.x144[0x144] -[0xFF] Write Register: LMK04828.x145[0x145] -[0x0] Write Register: LMK04828.x146[0x146] -[0x10] Write Register: LMK04828.x147[0x147] -[0x1A] Write Register: LMK04828.x148[0x148] -[0x2] Write Register: LMK04828.x149[0x149] -[0x42] Write Register: LMK04828.x14A[0x14A] -[0x2] Write Register: LMK04828.x14B[0x14B] -[0x16] Write Register: LMK04828.x14C[0x14C] -[0x0] Write Register: LMK04828.x14D[0x14D] -[0x0] Write Register: LMK04828.x14E[0x14E] -[0xC0] Write Register: LMK04828.x14F[0x14F] -[0x7F] Write Register: LMK04828.x150[0x150] -[0x3] Write Register: LMK04828.x151[0x151] -[0x2] Write Register: LMK04828.x152[0x152] -[0x0] Write Register: LMK04828.x153[0x153] -[0x0] Write Register: LMK04828.x154[0x154] -[0x78] Write Register: LMK04828.x155[0x155] -[0x0] Write Register: LMK04828.x156[0x156] -[0x7D] Write Register: LMK04828.x157[0x157] -[0x0] Write Register: LMK04828.x158[0x158] -[0x96] Write Register: LMK04828.x159[0x159] -[0x6] Write Register: LMK04828.x15A[0x15A] -[0x0] Write Register: LMK04828.x15B[0x15B] -[0xD4] Write Register: LMK04828.x15C[0x15C] -[0x20] Write Register: LMK04828.x15D[0x15D] -[0x0] Write Register: LMK04828.x15E[0x15E] -[0x0] Write Register: LMK04828.x15F[0x15F] -[0xB] Write Register: LMK04828.x160[0x160] -[0x0] Write Register: LMK04828.x161[0x161] -[0x1] Write Register: LMK04828.x162[0x162] -[0x44] Write Register: LMK04828.x163[0x163] -[0x0] Write Register: LMK04828.x164[0x164] -[0x0] Write Register: LMK04828.x165[0x165] -[0x8] Write Register: LMK04828.x166[0x166] -[0x0] Write Register: LMK04828.x167[0x167] -[0x0] Write Register: LMK04828.x168[0x168] -[0x8] Write Register: LMK04828.x169[0x169] -[0x59] Write Register: LMK04828.x16A[0x16A] -[0x20] Write Register: LMK04828.x16B[0x16B] -[0x0] Write Register: LMK04828.x16C[0x16C] -[0x0] Write Register: LMK04828.x16D[0x16D] -[0x0] Write Register: LMK04828.x16E[0x16E] -[0x13] Write Register: LMK04828.x17C[0x17C] -[0x15] Write Register: LMK04828.x17D[0x17D] -[0xF] Write Register: LMK04828.x139[0x139] -[0x0] Write Register: LMK04828.x143[0x143] -[0x11] Write Register: LMK04828.x140[0x140] -[0x0] Write Register: LMK04828.x144[0x144] -[0x74] Write Register: LMK04828.x143[0x143] -[0x11] Write Register: LMK04828.x143[0x143] -[0x31] Write Register: LMK04828.x143[0x143] -[0x11] Write Register: LMK04828.x144[0x144] -[0xFF] Write Register: LMK04828.x139[0x139] -[0x2] Write Register: LMK04828.x13E[0x13E] -[0x3] Write Register: LMK04828.x143[0x143] -[0x12] Write Register: LMK04828.x143[0x143] -[0x32] Write Register: LMK04828.x143[0x143] -[0x12] Operation Successful. Write Register: LMK04828.x100[0x100] - [0x18] Write Register: LMK04828.x108[0x108] - [0x66] Write Register: LMK04828.x138[0x138] - [0x20] Write Register: LMK04828.x166[0x166] - [0x0] Write Register: LMK04828.x167[0x167] - [0x0] Write Register: LMK04828.x168[0x168] - [0xC] Write Register: LMK04828.x163[0x163] - [0x0] Write Register: LMK04828.x164[0x164] - [0x0] Write Register: LMK04828.x165[0x165] - [0xC] Write Register: DAC_RESET.DAC_RESET[0x0] - [0x0] Write Register: DAC_RESET.DAC_RESET[0x0] - [0x1] Write Register: DAC3XJ8X.config0[0x0] -[0x218] Write Register: DAC3XJ8X.config1[0x1] -[0x3] Write Register: DAC3XJ8X.config2[0x2] -[0x2002] Write Register: DAC3XJ8X.config3[0x3] -[0xA300] Write Register: DAC3XJ8X.config4[0x4] -[0xF0F0] Write Register: DAC3XJ8X.config5[0x5] -[0xFF07] Write Register: DAC3XJ8X.config6[0x6] -[0xFFFF] Write Register: DAC3XJ8X.config7[0x7] -[0x3100] Write Register: DAC3XJ8X.config8[0x8] -[0x0] Write Register: DAC3XJ8X.config9[0x9] -[0x0] Write Register: DAC3XJ8X.config10[0xA] -[0x0] Write Register: DAC3XJ8X.config11[0xB] -[0x0] Write Register: DAC3XJ8X.config12[0xC] -[0x400] Write Register: DAC3XJ8X.config13[0xD] -[0x400] Write Register: DAC3XJ8X.config14[0xE] -[0x400] Write Register: DAC3XJ8X.config15[0xF] -[0x400] Write Register: DAC3XJ8X.config16[0x10] -[0x0] Write Register: DAC3XJ8X.config17[0x11] -[0x0] Write Register: DAC3XJ8X.config18[0x12] -[0x0] Write Register: DAC3XJ8X.config19[0x13] -[0x0] Write Register: DAC3XJ8X.config20[0x14] -[0x0] Write Register: DAC3XJ8X.config21[0x15] -[0x0] Write Register: DAC3XJ8X.config22[0x16] -[0x0] Write Register: DAC3XJ8X.config23[0x17] -[0x0] Write Register: DAC3XJ8X.config24[0x18] -[0x0] Write Register: DAC3XJ8X.config25[0x19] -[0x0] Write Register: DAC3XJ8X.config26[0x1A] -[0x23] Write Register: DAC3XJ8X.config27[0x1B] -[0x0] Write Register: DAC3XJ8X.config30[0x1E] -[0x9999] Write Register: DAC3XJ8X.config31[0x1F] -[0x9980] Write Register: DAC3XJ8X.config32[0x20] -[0x8008] Write Register: DAC3XJ8X.config34[0x22] -[0x1B1B] Write Register: DAC3XJ8X.config35[0x23] -[0x1FF] Write Register: DAC3XJ8X.config36[0x24] -[0x20] Write Register: DAC3XJ8X.config37[0x25] -[0x4000] Write Register: DAC3XJ8X.config38[0x26] -[0x0] Write Register: DAC3XJ8X.config45[0x2D] -[0x1] Write Register: DAC3XJ8X.config46[0x2E] -[0xFFFF] Write Register: DAC3XJ8X.config47[0x2F] -[0x4] Write Register: DAC3XJ8X.config48[0x30] -[0x0] Write Register: DAC3XJ8X.config49[0x31] -[0x1000] Write Register: DAC3XJ8X.config50[0x32] -[0x0] Write Register: DAC3XJ8X.config51[0x33] -[0x0] Write Register: DAC3XJ8X.config52[0x34] -[0x0] Write Register: DAC3XJ8X.config59[0x3B] -[0x1800] Write Register: DAC3XJ8X.config60[0x3C] -[0x228] Write Register: DAC3XJ8X.config61[0x3D] -[0x88] Write Register: DAC3XJ8X.config62[0x3E] -[0x108] Write Register: DAC3XJ8X.config63[0x3F] -[0x0] Write Register: DAC3XJ8X.config70[0x46] -[0x1882] Write Register: DAC3XJ8X.config71[0x47] -[0x1C8] Write Register: DAC3XJ8X.config72[0x48] -[0x3143] Write Register: DAC3XJ8X.config73[0x49] -[0x0] Write Register: DAC3XJ8X.config74[0x4A] -[0xF3E] Write Register: DAC3XJ8X.config75[0x4B] -[0x1201] Write Register: DAC3XJ8X.config76[0x4C] -[0x1303] Write Register: DAC3XJ8X.config77[0x4D] -[0x300] Write Register: DAC3XJ8X.config78[0x4E] -[0xF0F] Write Register: DAC3XJ8X.config79[0x4F] -[0x1C61] Write Register: DAC3XJ8X.config80[0x50] -[0x0] Write Register: DAC3XJ8X.config81[0x51] -[0xDC] Write Register: DAC3XJ8X.config82[0x52] -[0xFF] Write Register: DAC3XJ8X.config83[0x53] -[0x0] Write Register: DAC3XJ8X.config84[0x54] -[0xFC] Write Register: DAC3XJ8X.config85[0x55] -[0xFF] Write Register: DAC3XJ8X.config86[0x56] -[0x0] Write Register: DAC3XJ8X.config87[0x57] -[0xFF] Write Register: DAC3XJ8X.config88[0x58] -[0xFF] Write Register: DAC3XJ8X.config89[0x59] -[0x0] Write Register: DAC3XJ8X.config90[0x5A] -[0xFF] Write Register: DAC3XJ8X.config91[0x5B] -[0xFF] Write Register: DAC3XJ8X.config92[0x5C] -[0x1133] Write Register: DAC3XJ8X.config94[0x5E] -[0x0] Write Register: DAC3XJ8X.config95[0x5F] -[0x3210] Write Register: DAC3XJ8X.config96[0x60] -[0x5764] Write Register: DAC3XJ8X.config97[0x61] -[0x211] Write Register: DAC3XJ8X.config100[0x64] -[0x1] Write Register: DAC3XJ8X.config101[0x65] -[0x1] Write Register: DAC3XJ8X.config102[0x66] -[0x1] Write Register: DAC3XJ8X.config103[0x67] -[0x1] Write Register: DAC3XJ8X.config104[0x68] -[0x7709] Write Register: DAC3XJ8X.config105[0x69] -[0x0] Write Register: DAC3XJ8X.config106[0x6A] -[0x0] Write Register: DAC3XJ8X.config107[0x6B] -[0xBD07] Write Register: DAC3XJ8X.config108[0x6C] -[0x7] Write Register: DAC3XJ8X.config109[0x6D] -[0x90] Write Register: DAC3XJ8X.config110[0x6E] -[0x0] Write Register: DAC3XJ8X.config111[0x6F] -[0x0] Write Register: DAC3XJ8X.config112[0x70] -[0x0] Write Register: DAC3XJ8X.config113[0x71] -[0x0] Write Register: DAC3XJ8X.config114[0x72] -[0x0] Write Register: DAC3XJ8X.config115[0x73] -[0x0] Write Register: DAC3XJ8X.config116[0x74] -[0x0] Write Register: DAC3XJ8X.config117[0x75] -[0x0] Write Register: DAC3XJ8X.config118[0x76] -[0x0] Write Register: DAC3XJ8X.config119[0x77] -[0x0] Write Register: DAC3XJ8X.config120[0x78] -[0x0] Write Register: DAC3XJ8X.config121[0x79] -[0x0] Write Register: DAC3XJ8X.config122[0x7A] -[0x0] Write Register: DAC3XJ8X.config123[0x7B] -[0x0] Write Register: DAC3XJ8X.config124[0x7C] -[0x0] Write Register: DAC3XJ8X.config125[0x7D] -[0x0] Operation Successful. Write Register: DAC3XJ8X.config59[0x3B] - [0x0] Write Register: DAC3XJ8X.config37[0x25] - [0x2000] Write Register: DAC3XJ8X.config60[0x3C] - [0x228] Write Register: DAC3XJ8X.config60[0x3C] - [0x28] Write Register: DAC3XJ8X.config62[0x3E] - [0x128] Write Register: DAC3XJ8X.config76[0x4C] - [0x1303] Write Register: DAC3XJ8X.config77[0x4D] - [0x100] Write Register: DAC3XJ8X.config75[0x4B] - [0x1200] Write Register: DAC3XJ8X.config77[0x4D] - [0x100] Write Register: DAC3XJ8X.config78[0x4E] - [0xF4F] Write Register: DAC3XJ8X.config0[0x0] - [0x18] Write Register: DAC3XJ8X.config74[0x4A] - [0xF3E] Write Register: DAC3XJ8X.config74[0x4A] - [0xF3E] Write Register: DAC3XJ8X.config74[0x4A] - [0xF3F] Write Register: DAC3XJ8X.config74[0x4A] - [0xF21]sysref可以用来触发nco输出,我还有一个疑问,因为我们是效仿DAC3XJ8XGUI,我从它的安装路找到了配置文件,但是查看运行log发现配置文件中的很多的寄存器都没有出现在log中左侧是GUI配置流程,右侧是配置文件
,
Annie Liu:
我请产品工程师再看一下,预计下周给您回复。
,
Cherry Zhou:
您好,
DAC_RESET.DAC_RESET[0x0]寄存器用于向 RESETB 引脚发出硬件复位脉冲,建议在使用串行接口之前来编程。 这是您询问的缺失寄存器吗?
DAC38J82是否仍卡在 CGS 相位? 如果 DAC 链路不稳定,那么 DAC 不会输出数据。 您有没有在 DAC 发出同步请求(DAC 将 SYNCb 拉至低电平)期间向 DAC 提供了/K28.5/ 符号? 一旦DAC 收到qty. 4 sequential /K28.5/符号, DAC 将取消 SYNC 设置(将 SYNCb 驱动为高电平)并进入 ILAS 阶段。