Номер детали: DAC38RF85
Привет.
Обратил внимание, что выходной сигнал после включения может иметь другой уровень.
В каждом случае я читаю регистр x05 и вижу, что ФАПЧ заблокирована.
В x06 значение PLL_LFVOLT равно 3.
После того, как я изменяю значения регистра x33 (напряжение настройки VCO), уровень сигнала увеличивается.
Разбираясь с причинами, я заметил, что ЦАП работает только тогда, когда регистры настроены, прежде чем я настрою очиститель часов.
Только в этом случае ФАПЧ блокируется, и ЦАП генерирует сигнал SYNC.
Я использую ЦАП в режиме подкласса 0.
DAC_clk 6000 МГц,
1 пара IQ, 8 строк, 6-кратная интерполяция.
LMFS-Hd - 8-2-1-2-1
Входная частота - 125 МГц, и я использую внутреннюю ФАПЧ для генерации тактовой частоты ЦАП 6000 МГц.
Частота SYSREF - (6000/6) / (K * N) = 1000 / (25 * 8) = 5 МГц.
Настройки моих регистров:
0 => x "5860", --x "000"
1 => x "3000", --x "001"
2 => x "ffff", --x "002"
3 => x "ffff", --x "003"
4 => x "00fe", --x "004"
5 => x "0007", --x "005"
6 => x "0004", --x "009"
7 = > x "7c03", --x "40a"
8 => x "0002", --x "40b"
9 => x "a002", --x "40c"
10 => x "b000", - x "40d"
11 => x "0000", --x "41b"
12 => x "ffff", --x "423"
13 => x "1001", --x "424"
14 => x «0400»,--x "431"
15 => x "0b08", --x "432"
16 => x "483c", --x "433"
17 => x "0000", --x "434"
18 = > x "0018", --x "435"
19 => x "9002", --x "43b"
20 => x "8029", --x "43c"
21 => x "0088", - x "43d"
22 => x "0929", --x "43e"21 => x "0088", --x "43d" 22 => x "0929", --x "43e"21 => x "0088", --x "43d" 22 => x "0929", --x "43e"
23 => x "0000", --x "43f"
24 => x "0001", --x "009"
25 => x "8310", --x "10a"
26 => x "26a2", --x "10c"
27 => x "0000", --x "10d"
28 => x "00ff", --x "10e"
29 => x "ffff", --x "10f"
30 = > x "ffff", --x "110"
31 => x "ffff", --x "111"
32 => x "0000", --x "117"
33 => x "0001", - x "119"
34 => x "0000", --x "11c"
35 => x "0000", --x "11d"
36 => x "3333", --x "11e"
37 => x «3333»,--x "11f"
38 => x "3333", --x "120"
39 => x "0000", --x "121"
40 => x "0000", --x "122"
41 = > x "0000", --x "123"
42 => x "0010", --x "124"
43 => x "6300", --x "125"
44 => x "8888", - x "127"
45 => x "0330", --x "128"44 => x "8888", --x "127" 45 => x "0330", --x "128"44 => x "8888", --x "127" 45 => x "0330", --x "128"
46 => x "0000", --x "129"
47 => x "0000", --x "12a"
48 => x "0000", --x "12b"
49 => x "0000", --x "12c"
50 => x "1fff", --x "12d"
51 => x "1fff", --x "12e"
52 => x "0000", --x "12f"
53 = > x "0000", --x "130"
54 => x "0400", --x "132"
55 => x "0400", --x "133"
56 => x "0044", - x "146"
57 => x "190a", --x "147"
58 => x "31c1", --x "148"
59 => x "ff03", --x "14a"
60 => x «1300», --x »14b "
61 => x" 1807 ", --x" 14c "
62 => x" 0101 ", --x" 14d "
63 => x" 0f4f ", --x" 14e "
64 => x" 1c60 ", --x" 14f "
65 => x" 0000 ", --x" 150 "
66 => x" 001f ", --x" 151 "
67 => x" 00ff ", --x" 152 "
68 => x "0100", --x "153"x "00ff", --x "152" 68 => x "0100", --x "153"x "00ff", --x "152" 68 => x "0100", --x "153"
69 => x "8e60", --x "154"
70 => x "0001", --x "15c"
71 => x "0000", --x "15e"
72 => x "0123", --x "15f"
73 => x "7654", --x "160"
74 => x "0000", --x "164"
75 => x "0000", --x "165"
76 = > x "0000", --x "166"
77 => x "0000", --x "167"
78 => x "0000", --x "168"
79 => x "0000", - x "169"
80 => x "0000", --x "16a"
81 => x "0000", --x "16b"
82 => x "0000", --x "16c"
83 => x «0000», -x «16d»
84 => x "0000", --x "16e"
85 => x "0002", --x "009"
86 => x "8310", --x "20a"
87 => x "2402", --x "20c"
88 => x "0000", --x "20d"
89 => x "00ff", --x "20e"
90 => x "ffff", --x "20f"
91 = > x "ffff", --x "210"ffff ", --x" 20f " 91 => x" ffff ", --x" 210 "ffff ", --x" 20f " 91 => x" ffff ", --x" 210 "
92 => x "ffff", --x "211"
93 => x "0000", --x "217"
94 => x "0001", --x "219"
95 => x "0000", --x "21c"
96 => x "0000", --x "21d"
97 => x "0000", --x "21e"
98 => x "0000", --x "21f"
99 = > x "0000", --x "220"
100 => x "0000", --x "221"
101 => x "0000", --x "222"
102 => x "0000", - x "223"
103 => x "0020", --x "224"
104 => x "6300", --x "225"
105 => x "8888", --x "227"
106 => x "0330", -x "228 "
107 => x" 0000 ", --x" 229 "
108 => x" 0000 ", --x" 22a "
109 => x" 0000 ", --x" 22b "
110 => x" 0000 ", --x" 22c "
111 => x" 1fff ", --x" 22d "
112 => x" 1fff ", --x" 22e "
113 => x" 0000 ", --x" 22f "
114 => x "0000", --x "230"113 => x "0000", --x "22f" 114 => x "0000", --x "230"113 => x "0000", --x "22f" 114 => x "0000", --x "230"
115 => x "0400", --x "232"
116 => x "0400", --x "233"
117 => x "0044", --x "246"
118 => x "190a", --x "247"
119 => x "31c3", --x "248"
120 => x "0003", --x "24a"
121 => x "1300", --x "24b"
122 = > x "1307", --x "24c"
123 => x "0101", --x "24d"
124 => x "0f4f", --x "24e"
125 => x "1c60", - x "24f"
126 => x "0000", --x "250"
127 => x "001f", --x "251"
128 => x "00ff", --x "252"
129 => x «0100»,--x "253"
130 => x "8e60", --x "254"
131 => x "0003", --x "25c"
132 => x "0000", --x "25e"
133 = > x "3210", --x "25f"
134 => x "5764", --x "260"
135 => x "0000", --x "264"
136 => x "0000", - x "265"
137 => x "0000", --x "266"264 " 136 => x" 0000 ", --x" 265 " 137 => x" 0000 ", --x" 266 "264 " 136 => x" 0000 ", --x" 265 " 137 => x" 0000 ", --x" 266 "
138 => x "0000", --x "267"
139 => x "0000", --x "268"
140 => x "0000", --x "269"
141 => x "0000", --x "26a"
142 => x "0000", --x "26b"
143 => x "0000", --x "26c"
144 => x "0000", --x "26d"
145 = > x "0000", --x "26e"
146 => x "0001", --x "009"
147 => x "0332", --x "128"
148 => x "0330", - x "128"
149 => x "0332", --x "128"
150 => x "0330", --x "128"
151 => x "0000", --x "009"
152 => x «5861»,--x «000»
153 => x «5860», --x «000»
Я изменил настройки регистров согласно 8.3.11
• Поле SYSREF_MODE в регистре JESD_SYSR_MODE (8.5.56) = 0
• Поле DISABLE_ERR_RPT в регистре JESD_ERR_OUT (8.5.53) = 1
• Поле MIN_LATENCY_ENA в регистре JESD_MATCH (8.5.50) = 1
Но это не имело никакого эффекта.
Кроме того, я не знаю, какое значение установить в регистре SYSREF Use for Clock Divider Register 0x24, поле SYSREF_MODE для режима подкласса 0.
Поле AUTOLOAD_DONE не установлено в «1» после сброса по непонятным мне причинам.