AJA NTV2 SDK
17.1.3.1410
NTV2 SDK 17.1.3.1410
ntv2registers2022.h
Go to the documentation of this file.
1
/* SPDX-License-Identifier: MIT */
8
#ifndef REGISTERS_2022_H
9
#define REGISTERS_2022_H
10
11
#include "
ntv2registersmb.h
"
12
14
//
15
// General memory map definitions
16
//
18
19
#define SAREK_2022_6_TX_CORE_0 (0x103000/4)
20
#define SAREK_2022_6_RX_CORE_0 (0x104000/4)
21
#define SAREK_2022_6_TX_CORE_1 (0x105000/4)
22
#define SAREK_2022_6_RX_CORE_1 (0x106000/4)
23
24
#define SAREK_2022_2_TX_CORE_0 (0x10a000/4)
25
#define SAREK_2022_2_RX_CORE_0 (0x10b000/4)
26
#define SAREK_2022_2_TX_CORE_1 (0x10c000/4)
27
#define SAREK_2022_2_RX_CORE_1 (0x10d000/4)
28
29
#define SAREK_J2K_ENCODER_1 (0x140000/4)
30
#define SAREK_TS_ENCODER_1 (0x150000/4)
31
#define SAREK_J2K_ENCODER_2 (0x1C0000/4)
32
#define SAREK_TS_ENCODER_2 (0x1D0000/4)
33
34
#define SAREK_IPX_J2K_DECODER_1 (0x160000/4)
35
#define SAREK_IPX_TS_DECODER_1 (0x170000/4)
36
38
//
39
// 2022-6 RX Registers (expressed as address)
40
//
42
43
// common
44
#define kReg2022_6_rx_control 0 // 0x0000
45
#define kReg2022_6_rx_reset 1 // 0x0004
46
#define kReg2022_6_rx_channel_access 3 // 0x000C
47
48
#define kReg2022_6_rx_sys_conf 8 // 0x0020
49
#define kReg2022_6_rx_version 9 // 0x0024
50
#define kReg2022_6_rx_network_path_differential 10 // 0x0028
51
#define kReg2022_6_rx_fec_processing_delay 12 // 0x0030
52
#define kReg2022_6_rx_fecBuf_base_addr 13 // 0x0034
53
#define kReg2022_6_rx_fecBuf_pool_size 14 // 0x0038
54
#define kReg2022_6_rx_pri_recv_pkt_cnt 15 // 0x003C
55
#define kReg2022_6_rx_sec_recv_pkt_cnt 16 // 0x0040
56
#define kReg2022_6_rx_pri_err_pkt_cnt 17 // 0x0044
57
#define kReg2022_6_rx_sec_err_pkt_cnt 18 // 0x0048
58
#define kReg2022_6_rx_pri_discard_pkt_cnt 19 // 0x004C
59
#define kReg2022_6_rx_sec_discard_pkt_cnt 20 // 0x0050
60
#define kReg2022_6_rx_gen_stat_reset 21 // 0x0054
61
62
// channel
63
#define kReg2022_6_rx_id_hdr_param 33 // 0x0084
64
#define kReg2022_6_rx_match_vlan 34 // 0x0088
65
#define kReg2022_6_rx_match_dest_ip_addr 35 // 0x008C
66
#define kReg2022_6_rx_match_src_ip_addr 39 // 0x009C
67
#define kReg2022_6_rx_match_src_port 43 // 0x00AC
68
#define kReg2022_6_rx_match_dest_port 44 // 0x00B0
69
#define kReg2022_6_rx_match_sel 45 // 0x00B4
70
#define kReg2022_6_rx_link_reordered_pkt_cnt 46 // 0x00B8
71
#define kReg2022_6_rx_link_stat_reset 47 // 0x00BC
72
#define kReg2022_6_rx_link_valid_media_pkt_cnt 48 // 0x00C0
73
#define kReg2022_6_rx_link_valid_fec_pkt_cnt 49 // 0x00C4
74
75
// channel shared
76
#define kReg2022_6_rx_chan_enable 64 // 0x0100
77
#define kReg2022_6_rx_chan_timeout 65 // 0x0104
78
#define kReg2022_6_rx_chan_stat_reset 67 // 0x010C
79
#define kReg2022_6_rx_match_ssrc 68 // 0x0110
80
#define kReg2022_6_rx_sdi_pkt_status 69 // 0x0114
81
#define kReg2022_6_rx_vid_src_fmt 70 // 0x0118
82
#define kReg2022_6_rx_playout_delay 71 // 0x011C
83
#define kReg2022_6_rx_fec_param 73 // 0x0124
84
#define kReg2022_6_rx_seamless_protect 74 // 0x0128
85
#define kReg2022_6_rx_media_buf_base_addr 75 // 0x012C
86
#define kReg2022_6_rx_media_pkt_buf_size 76 // 0x0130
87
#define kReg2022_6_rx_chan_valid_media_pkt_cnt 77 // 0x0134
88
#define kReg2022_6_rx_rec_pkt_cnt 78 // 0x0138
89
#define kReg2022_6_rx_dup_pkt_cnt 79 // 0x013C
90
#define kReg2022_6_rx_cur_pkt_buffered 80 // 0x0140
91
#define kReg2022_6_rx_pkt_interval 81 // 0x0144
92
#define kReg2022_6_rx_chan_valid_fec_cnt 82 // 0x0148
93
#define kReg2022_6_rx_media_buffer_ov 85 // 0x0154
94
#define kReg2022_6_rx_unrec_pkt_cnt 86 // 0x0158
95
#define kReg2022_6_rx_oor_pkt_cnt 88 // 0x0160
96
98
//
99
// 2022-6 TX Registers
100
//
102
103
// general
104
#define kReg2022_6_tx_control 0 // 0x0000
105
#define kReg2022_6_tx_reset 1 // 0x0004
106
#define kReg2022_6_tx_channel_access 3 // 0x000C
107
#define kReg2022_6_tx_pri_mac_low_addr 4 // 0x0010
108
#define kReg2022_6_tx_pri_mac_hi_addr 5 // 0x0014
109
#define kReg2022_6_tx_sec_mac_low_addr 6 // 0x0018
110
#define kReg2022_6_tx_sec_mac_hi_addr 7 // 0x001C
111
#define kReg2022_6_tx_sys_conf 8 // 0x0020
112
#define kReg2022_6_tx_version 9 // 0x0024
113
#define kReg2022_6_tx_sys_mem_conf 10 // 0x0028
114
#define kReg2022_6_tx_hitless_config 11 // 0x0030
115
116
//channel
117
#define kReg2022_6_tx_ip_header 32 // 0x0080
118
#define kReg2022_6_tx_vlan_tag_info 33 // 0x0084
119
#define kReg2022_6_tx_dest_mac_low_addr 34 // 0x0088
120
#define kReg2022_6_tx_dest_mac_hi_addr 35 // 0x008C
121
#define kReg2022_6_tx_dest_ip_addr 36 // 0x0090
122
#define kReg2022_6_tx_src_ip_addr 40 // 0x00A0
123
#define kReg2022_6_tx_udp_src_port 44 // 0x00B0
124
#define kReg2022_6_tx_udp_dest_port 45 // 0x00B4
125
#define kReg2022_6_tx_tx_pkt_cnt 48 // 0x00C0
126
#define kReg2022_6_tx_channel_stat_reset 51 // 0x00CC
127
#define kReg2022_6_tx_link_enable 52 // 0x00D0
128
#define kReg2022_6_tx_ip_header_fec 54 // 0x00D8
129
130
// channel common
131
#define kReg2022_6_tx_chan_enable 64 // 0x0100
132
#define kReg2022_6_tx_video_para_config 68 // 0x0110
133
#define kReg2022_6_tx_media_stream_status 69 // 0x0114
134
#define kReg2022_6_tx_ssrc 70 // 0x0118
135
#define kReg2022_6_tx_fec_config 71 // 0x011C
136
#define kReg2022_6_tx_fec_L_value 73 // 0x0124
137
#define kReg2022_6_tx_fec_D_value 74 // 0x0128
138
140
//
141
// 2022-2 RX Registers
142
//
144
145
#define kReg2022_2_rx_control 0 // 0x0000
146
#define kReg2022_2_rx_reset 1 // 0x0004
147
#define kReg2022_2_rx_channel_access 3 // 0x000C
148
149
#define kReg2022_2_rx_sys_conf 8 // 0x0020
150
#define kReg2022_2_rx_version 9 // 0x0024
151
#define kReg2022_2_rx_network_path_differential 10 // 0x0028
152
#define kReg2022_2_rx_fec_processing_delay 12 // 0x0030
153
#define kReg2022_2_rx_fecBuf_base_addr 13 // 0x0034
154
#define kReg2022_2_rx_fecBuf_pool_size 14 // 0x0038
155
#define kReg2022_2_rx_pri_recv_pkt_cnt 15 // 0x003C
156
#define kReg2022_2_rx_sec_recv_pkt_cnt 16 // 0x0040
157
#define kReg2022_2_rx_pri_err_pkt_cnt 17 // 0x0044
158
#define kReg2022_2_rx_sec_err_pkt_cnt 18 // 0x0048
159
#define kReg2022_2_rx_pri_discard_pkt_cnt 19 // 0x004C
160
#define kReg2022_2_rx_sec_discard_pkt_cnt 20 // 0x0050
161
#define kReg2022_2_rx_gen_stat_reset 21 // 0x0054
162
163
#define kReg2022_2_rx_id_hdr_param 33 // 0x0084
164
#define kReg2022_2_rx_match_vlan 34 // 0x0088
165
#define kReg2022_2_rx_match_dest_ip_addr 35 // 0x008C
166
167
#define kReg2022_2_rx_match_src_ip_addr 39 // 0x009C
168
169
#define kReg2022_2_rx_match_src_port 43 // 0x00AC
170
171
#define kReg2022_2_rx_match_dest_port 44 // 0x00B0
172
#define kReg2022_2_rx_match_sel 45 // 0x00B4
173
#define kReg2022_2_rx_link_reordered_pkt_cnt 46 // 0x00B8
174
#define kReg2022_2_rx_link_stat_reset 47 // 0x00BC
175
#define kReg2022_2_rx_link_valid_media_pkt_cnt 48 // 0x00C0
176
#define kReg2022_2_rx_link_valid_fec_pkt_cnt 49 // 0x00C4
177
178
#define kReg2022_2_rx_chan_enable 64 // 0x0100
179
180
#define kReg2022_2_rx_chan_stat_reset 67 // 0x010C
181
#define kReg2022_2_rx_match_ssrc 68 // 0x0110
182
183
#define kReg2022_2_rx_playout_delay 71 // 0x011C
184
#define kReg2022_2_ts_status 72 // 0x0120
185
#define kReg2022_2_rx_fec_param 73 // 0x0124
186
#define kReg2022_2_rx_seamless_protect 74 // 0x0128
187
#define kReg2022_2_rx_media_buf_base_addr 75 // 0x012C
188
#define kReg2022_2_rx_media_pkt_buf_size 76 // 0x0130
189
#define kReg2022_2_rx_chan_valid_media_pkt_cnt 77 // 0x0134
190
#define kReg2022_2_rx_rec_pkt_cnt 78 // 0x0138
191
#define kReg2022_2_rx_dup_pkt_cnt 79 // 0x013C
192
#define kReg2022_2_rx_cur_pkt_buffered 80 // 0x0140
193
#define kReg2022_2_rx_pkt_interval 81 // 0x0144
194
195
#define kReg2022_2_rx_media_buffer_ov 85 // 0x0154
196
#define kReg2022_2_rx_unrec_pkt_cnt 86 // 0x0158
197
#define kReg2022_2_rx_oor_pkt_cnt 88 // 0x0160
198
199
201
//
202
// 2022-2 TX Registers
203
//
205
206
#define kReg2022_2_tx_control 0 // 0x0000
207
#define kReg2022_2_tx_reset 1 // 0x0004
208
#define kReg2022_2_tx_channel_access 3 // 0x000C
209
#define kReg2022_2_tx_pri_mac_low_addr 4 // 0x0010
210
#define kReg2022_2_tx_pri_mac_hi_addr 5 // 0x0014
211
#define kReg2022_2_tx_sec_mac_low_addr 6 // 0x0018
212
#define kReg2022_2_tx_sec_mac_hi_addr 7 // 0x001C
213
#define kReg2022_2_tx_sys_conf 8 // 0x0020
214
#define kReg2022_2_tx_version 9 // 0x0024
215
216
#define kReg2022_2_tx_hitless_config 12 // 0x0030
217
218
#define kReg2022_2_tx_ip_header 32 // 0x0080
219
#define kReg2022_2_tx_vlan_tag_info 33 // 0x0084
220
#define kReg2022_2_tx_dest_mac_low_addr 34 // 0x0088
221
#define kReg2022_2_tx_dest_mac_hi_addr 35 // 0x008C
222
#define kReg2022_2_tx_dest_ip_addr 36 // 0x0090
223
224
#define kReg2022_2_tx_src_ip_addr 40 // 0x00A0
225
226
#define kReg2022_2_tx_udp_src_port 44 // 0x00B0
227
#define kReg2022_2_tx_udp_dest_port 45 // 0x00B4
228
229
#define kReg2022_2_tx_tx_pkt_cnt 48 // 0x00C0
230
231
#define kReg2022_2_tx_channel_stat_reset 51 // 0x00CC
232
233
#define kReg2022_2_tx_tx_enable 52 // 0x00D0
234
#define kReg2022_2_tx_transport_max_gap 53 // 0x00D4
235
#define kReg2022_2_tx_ip_header_fec 54 // 0x00D8
236
237
#define kReg2022_2_tx_chan_enable 64 // 0x0100
238
239
#define kReg2022_2_tx_ts_config 68 // 0x0110
240
#define kReg2022_2_tx_ts_status 69 // 0x0114
241
#define kReg2022_2_tx_ssrc 70 // 0x0118
242
#define kReg2022_2_tx_fec_config 71 // 0x011C
243
#define kReg2022_2_tx_fec_L_value 73 // 0x0124
244
#define kReg2022_2_tx_fec_D_value 74 // 0x0128
245
#define kReg2022_2_tx_fec_base_addr 75 // 0x012C
246
248
//
249
// J2K Encoder/Decoder Registers
250
//
252
253
// Encoder
254
#define kRegJ2kT0MainCsr 0
255
#define kRegJ2kT0FIFOCsr 1
256
#define kRegJ2kT0CmdFIFO 4
257
#define kRegJ2kT0StatusFIFO 6
258
#define kRegJ2kT0Framecount 7
259
260
#define kRegJ2kT1MainCsr 64 //0x0100/4
261
#define kRegJ2kT1FIFOCsr 65 //0x0104/4
262
#define kRegJ2kT1CsfCsr 66 //0x0108/4
263
#define kRegJ2kT1DebugInfo 67 //0x010C/4
264
#define kRegJ2kT1StatusFIFO 70 //0x0118/4
265
#define kRegJ2kT1Framecount 71 //0x011C/4
266
267
#define kRegJ2kT2MainCsr 128 //0x0200/4
268
#define kRegJ2kT2FIFOCsr 129 //0x0204/4
269
#define kRegJ2kT2CmdFIFO 132 //0x0210/4
270
#define kRegJ2kT2StatusFIFO 134 //0x0218/4
271
#define kRegJ2kT2Framecount 135 //0x021C/4
272
273
// Decoder
274
#define kRegJ2kPrpMainCsr 0
275
#define kRegJ2kPrpFIFOCsr 1
276
#define kRegJ2kPrpLastTc 2
277
#define kRegJ2kPrpCmdFIFO 4
278
#define kRegJ2kPrpStatusFIFO 6
279
280
#define kRegJ2kPopMainCsr 64 //0x0100/4
281
#define kRegJ2kPopFIFOCsr 65 //0x0104/4
282
#define kRegJ2kPopUllCsr 66 //0x0108/4
283
#define kRegJ2kPopCmdFIFO 68 //0x0110/4
284
#define kRegJ2kPopStatusFIFO 70 //0x0118/4
285
286
#define kRegJ2kBuffCsr 128 //0x0200/4
287
#define kRegJ2kBuffStatus0 160 //0x0280/4
288
#define kRegJ2kBuffImginfos0 161 //0x0284/4
289
#define kRegJ2kBuffTimecode0 162 //0x0288/4
290
#define kRegJ2kBuffUserdata0 163 //0x028C/4
291
#define kRegJ2kBuffStatus1 164 //0x0290/4
292
#define kRegJ2kBuffImginfos1 165 //0x0294/4
293
#define kRegJ2kBuffTimecode1 166 //0x0298/4
294
#define kRegJ2kBuffUserdata1 167 //0x029C/4
295
#define kRegJ2kBuffStatus2 168 //0x02A0/4
296
#define kRegJ2kBuffImginfos2 169 //0x02A4/4
297
#define kRegJ2kBuffTimecode2 170 //0x02A8/4
298
#define kRegJ2kBuffUserdata2 171 //0x02AC/4
299
#define kRegJ2kBuffStatus3 172 //0x02B0/4
300
#define kRegJ2kBuffImginfos3 173 //0x02B4/4
301
#define kRegJ2kBuffTimecode3 174 //0x02B8/4
302
#define kRegJ2kBuffUserdata3 175 //0x02BC/4
303
304
306
//
307
// MPEG2 TS Registers
308
//
310
311
// TS Timer Registers
312
#define kRegTsTimerJ2kTsLoad 0
313
#define kRegTsTimerJ2kTsGenTc 1
314
#define kRegTsTimerJ2kTsPtsMux 2
315
316
// TS J2k Encoder Interface Registers
317
#define kRegTsJ2kEncoderHostEn 0
318
#define kRegTsJ2kEncoderInterlacedVideo 1
319
#define kRegTsJ2kEncoderFlushTimeout 2
320
#define kRegTsJ2kEncoderVideoFrmCnt 3
321
#define kRegTsJ2kEncoderVideoByteCnt 4
322
#define kRegTsJ2kEncoderEgressFrmCnt 5
323
#define kRegTsJ2kEncoderEgressByteCnt 6
324
325
// TS J2k Decoder Interface Registers
326
#define kRegTsJ2kDecoderInsertHdr 0
327
#define kRegTsJ2kDecoderFrameCount 1
328
#define kRegTsJ2kDecoderByteCount 2
329
330
// TS MPEG2 Encapsulator Registers
331
#define kRegTsMpeg2EncapPesHdrLookup 0 //0x0000 // table 0x000 - 0x0BB
332
#define kRegTsMpeg2EncapPesHdrLen 192 //0x00C0
333
#define kRegTsMpeg2EncapPtsOffset 193 //0x00C1
334
#define kRegTsMpeg2EncapJ2kTsOffset 194 //0x00C2
335
#define kRegTsMpeg2EncapAuf1Offset 195 //0x00C3
336
#define kRegTsMpeg2EncapAuf2Offset 196 //0x00C4
337
#define kRegTsMpeg2EncapPacketRate 202 //0x00CA
338
#define kRegTsMpeg2EncapPesMax 201 //0x00C9
339
#define kRegTsMpeg2EncapTsTxHostEn 224 //0x00E0
340
#define kRegTsMpeg2EncapInterlacedVideo 225 //0x00E1
341
#define kRegTsMpeg2EncapPayloadParams 226 //0x00E2
342
#define kRegTsMpeg2EncapPatTableLookup 256 //0x0100 // table 0x100 - 0x1BB
343
#define kRegTsMpeg2EncapPatPmtPeriod 496 //0x01F0
344
#define kRegTsMpeg2EncapPmtTableLookup 512 //0x0200 // table 0x200 - 0x2BB
345
#define kRegTsMpeg2EncapApplicationLookup 768 //0x0300 // table 0x300 - 0x3BB
346
#define kRegTsMpeg2EncapAdaptationHdrLen 1008 //0x03F0
347
348
// TS MPEG2 Decapsulator Registers
349
#define kRegTsMpeg2DecapCaptureRam 0 //0x0000
350
#define kRegTsMpeg2DecapHostEn 192 //0x00C0
351
#define kRegTsMpeg2DecapHeaderCompare 193 //0x00C1
352
#define kRegTsMpeg2DecapHeaderMask 194 //0x00C2
353
#define kRegTsMpeg2DecapCaptureDone 195 //0x00C3
354
#define kRegTsMpeg2DecapPidFilter 196 //0x00C4
355
#define kRegTsMpeg2DecapFrmPayloadOffset 208 //0x00D0
356
#define kRegTsMpeg2DecapFrmAuf1Offset 209 //0x00D1
357
#define kRegTsMpeg2DecapFrmAuf2Offset 210 //0x00D2
358
#define kRegTsMpeg2DecapFrmPtsOffset 211 //0x00D3
359
#define kRegTsMpeg2DecapFrmJ2kTsOffset 212 //0x00D4
360
#define kRegTsMpeg2DecapInterlacedSz16b 213 //0x00D5
361
362
// MPEG2 TS AES Encapsulator Registers
363
#define kRegTsAesEncapNumChannels 0
364
#define kRegTsAesEncapTsRatePeriod 1
365
#define kRegTsAesEncapAudioExtractVidStd 2
366
#define kRegTsAesEncapAudioExtractErrRst 3
367
#define kRegTsAesEncapAudioExtractChEn 4
368
#define kRegTsAesEncapAudioExtractErrStat 5
369
#define kRegTsAesEncapAudioExtractClkStat 6
370
#define kRegTsAesEncapRxSdiStatus 7
371
#define kRegTsAesEncapHostEn 8
372
#define kRegTsAesEncapFrameCount 9
373
#define kRegTsAesEncapByteCount 10
374
375
// MPEG2 TS AES Decapsulator Registers
376
#define kRegTsAesDecapHostEn 0
377
#define kRegTsAesDecapLockedBit 1
378
#define kRegTsAesDecapNumChannels 2
379
#define kRegTsAesDecapSdiTxVidStd 3
380
#define kRegTsAesDecapAudioEmbedControl 4
381
#define kRegTsAesDecapSineFrequencies 5
382
#define kRegTsAesDecapAudioEmbedVidStat 6
383
#define kRegTsAesDecapFrameCount 7
384
#define kRegTsAesDecapByteCount 8
385
386
#endif // REGISTERS_2022_H
ntv2registersmb.h
Defines the KonaIP/IoIP registers.
libajantv2
ajantv2
includes
ntv2registers2022.h
Generated on Tue Dec 3 2024 10:26:00 for AJA NTV2 SDK by
1.8.17