Changes between Version 7 and Version 8 of WARPLab/Reference/Baseband/Buffers
- Timestamp:
- Sep 14, 2015, 9:42:18 AM (9 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
WARPLab/Reference/Baseband/Buffers
v7 v8 45 45 46 46 === {{{tx_delay}}} === 47 Transmit delay- gets or sets the number of sample periods the baseband waits between the trigger and starting the transission[[BR]] 47 Transmit delay- gets or sets the number of sample periods the baseband 48 waits between the trigger and starting the transmission[[BR]] 48 49 49 50 … … 54 55 '''Returns:''' (uint32 TX_DLY) or none 55 56 56 If an argument is specified, this command enters a write mode where that argument is written to the board. If no argument is specified, the current value of TX_DLY is read from the board.[[BR]] 57 If an argument is specified, this command enters a write mode where 58 that argument is written to the board. If no argument is specified, 59 the current value of TX_DLY is read from the board.[[BR]] 57 60 58 61 … … 68 71 '''Returns:''' none 69 72 70 NOTE: This will error if the user tries to read tx_length from the board. The 'tx_buff_max_num_samples' command should be used to determine the capabilities of the board.[[BR]] 73 NOTE: This will error if the user tries to read tx_length from the board. 74 the 'tx_buff_max_num_samples' command should be used to determine the 75 capabilities of the board.[[BR]] 71 76 72 77 … … 82 87 '''Returns:''' none 83 88 84 NOTE: This will error if the user tries to read tx_length from the board. The 'rx_buff_max_num_samples' command should be used to determine the capabilities of the board.[[BR]] 89 NOTE: This will error if the user tries to read tx_length from the board. 90 the 'tx_buff_max_num_samples' command should be used to determine the 91 capabilities of the board.[[BR]] 85 92 86 93 … … 116 123 '''Requires BUFF_SEL:''' No 117 124 118 '''Arguments:''' (boolean CONT_TX)[[BR]] 119 ''true'' - enables continuous transmit mode[[BR]] 120 ''false'' - disable continuous transmit mode[[BR]] 121 122 '''Returns:''' none 123 125 '''Arguments:''' (boolean CONT_TX) 126 CONT_TX:[[BR]] 127 true enables continuous transmit mode[[BR]] 128 false disable continuous transmit mode[[BR]] 129 130 '''Returns:''' none 131 132 Restrictions on continuous transmit waveform length:[[BR]] 133 134 WARPLab 7.5.0 and higher:[[BR]] 135 {{{ 136 0 to 2^15 --> Waveform will be transmitted for the exact number of samples 137 > 2^15 --> Waveform must be a multiple of 2^14 samples for the waveform 138 to be transmitted exactly. Otherwise, waveform will be appended 139 with whatever IQ data is in the transmit buffer to align the 140 waveform to be a multiple of 2^14 samples. 141 }}} 142 143 NOTE: In WARPLab 7.5.x, it is an error to perform a Read IQ while in continuous transmit mode. 144 145 WARPLab 7.4.0 and prior: 146 {{{ 147 0 to 2^15 --> Waveform will be transmitted for the exact number of samples 148 > 2^15 --> Not supported 149 }}} 124 150 125 151 126 152 === {{{tx_buff_en}}} === 127 Enable transmit buffer for one or more interfaces. When a buffer is enabled it will drive samples into its associated interface when a trigger is received. The interface itself must also be enabled (wl_interfaceCmd(...,'tx_en')) to actually transmit the samples[[BR]] 153 Enable transmit buffer for one or more interfaces. When a buffer is enabled it will 154 drive samples into its associated interface when a trigger is received. The interface 155 itself must also be enabled (wl_interfaceCmd(...,'tx_en')) to actually transmit the samples[[BR]] 128 156 129 157 … … 137 165 138 166 === {{{rx_buff_en}}} === 139 Enable receive buffer for one or more interfaces. When a buffer is enabled it will capture samples from its associated interface when a trigger is received. The interface itself must also be enabled (wl_interfaceCmd(...,'rx_en'))[[BR]] 167 Enable receive buffer for one or more interfaces. When a buffer is enabled it will 168 capture samples from its associated interface when a trigger is received. The interface 169 itself must also be enabled (wl_interfaceCmd(...,'rx_en'))[[BR]] 140 170 141 171 … … 149 179 150 180 === {{{tx_rx_buff_dis}}} === 151 Disable the Tx and Rx buffers for one or more interfaces. When a buffer is disabled it will not output/capture samples when a trigger is received, even if the associated interface is enabled[[BR]] 152 153 154 '''Requires BUFF_SEL:''' Yes 155 156 '''Arguments:''' none 157 158 '''Returns:''' none 181 Disable the Tx and Rx buffers for one or more interfaces. When a buffer is disabled it will not 182 output/capture samples when a trigger is received, even if the associated interface is enabled[[BR]] 183 184 185 '''Requires BUFF_SEL:''' Yes 186 187 '''Arguments:''' none 188 189 '''Returns:''' none 190 191 192 193 === {{{read_buff_state}}} === 194 Read the current state of the buffer[[BR]] 195 196 197 '''Requires BUFF_SEL:''' Yes 198 199 '''Arguments:''' none 200 201 '''Returns:''' Current state of the buffer: TX, RX or STANDBY 159 202 160 203 … … 200 243 201 244 === {{{write_iq}}} === 202 Write I/Q samples to the specified buffers. The dimensions of the buffer selection and samples matrix must agree. The same samples can be written to multiple buffers by combining buffer IDs[[BR]] 245 Write I/Q samples to the specified buffers. The dimensions of the buffer selection and samples matrix 246 must agree. The same samples can be written to multiple buffers by combining buffer IDs[[BR]] 203 247 204 248 205 249 '''Requires BUFF_SEL:''' Yes (combined BUFF_SEL values ok) 206 250 207 '''Arguments:''' (complex double TX_SAMPS, int OFFSET) [[BR]]208 TX_SAMPS: matrix of complex samples. The number of columns must match the length of BUFF_SEL[[BR]] 209 251 '''Arguments:''' (complex double TX_SAMPS, int OFFSET) 252 TX_SAMPS: matrix of complex samples. The number of columns must match the length of BUFF_SEL 253 OFFSET: buffer index of first sample to write (optional; defaults to 0)[[BR]] 210 254 211 255 Examples:[[BR]] … … 241 285 242 286 === {{{read_iq}}} === 243 Read I/Q samples from the specified buffers. The elements of the buffer selection must be scalers which identify a single buffer. To read multiple buffers in one call, pass a vector of individual buffer IDs[[BR]] 287 Read I/Q samples from the specified buffers. The elements of the buffer selection must be scalers which 288 identify a single buffer. To read multiple buffers in one call, pass a vector of individual buffer IDs[[BR]] 244 289 245 290 246 291 '''Requires BUFF_SEL:''' Yes (combined BUFF_SEL values not allowed) 247 292 248 '''Arguments:''' (int OFFSET, int NUM_SAMPS) [[BR]]249 250 293 '''Arguments:''' (int OFFSET, int NUM_SAMPS) 294 OFFSET: buffer index of first sample to read (optional; defaults to 0)[[BR]] 295 NUM_SAMPS: number of complex samples to read (optional; defaults to length(OFFSET:rxIQLen-1))[[BR]] 251 296 252 297 Examples:[[BR]] … … 267 312 268 313 === {{{read_rssi}}} === 269 Read RSSI samples from the specified buffers. The elements of the buffer selection must be scalers which identify a single buffer. To read multiple buffers in one call, pass a vector of individual buffer IDs.[[BR]] 314 Read RSSI samples from the specified buffers. The elements of the buffer selection must be scalers which 315 identify a single buffer. To read multiple buffers in one call, pass a vector of individual buffer IDs.[[BR]] 270 316 271 317 See 'read_iq' for arguments/returns[[BR]] … … 274 320 275 321 === {{{agc_state}}} === 276 Read AGC state from the specified buffers. The elements of the buffer selection must be scalers which identify a single buffer. To read multiple buffers in one call, pass a vector of individual buffer IDs[[BR]] 322 Read AGC state from the specified buffers. The elements of the buffer selection must be scalers which 323 identify a single buffer. To read multiple buffers in one call, pass a vector of individual buffer IDs[[BR]] 277 324 278 325 … … 282 329 283 330 284 '''Returns:''' agc_state -- column vector per buffer BUFF_SEL[[BR]] 285 agc_state(1): RF gain chosen by AGC[[BR]] 286 agc_state(2): BB gain chosen by AGC[[BR]] 287 agc_state(3): RSSI observed by AGC at time of lock[[BR]] 331 '''Returns:''' agc_state -- column vector per buffer BUFF_SEL 332 agc_state(1): RF gain chosen by AGC[[BR]] 333 agc_state(2): BB gain chosen by AGC[[BR]] 334 agc_state(3): RSSI observed by AGC at time of lock[[BR]] 335 336 337 338 === {{{agc_thresh}}} === 339 Read or write AGC threshold.[[BR]] 288 340 289 341 … … 295 347 '''Requires BUFF_SEL:''' No. Values apply to all RF paths 296 348 297 '''Arguments:''' (int32 target)[[BR]] 298 target: target receive power (in dBm)[[BR]] 299 default value: -16[[BR]] 300 301 '''Returns:''' none 302 303 This command is the best way to tweak AGC behavior to apply more or less gain. For example, a target of -5dBm will apply more gain than a target of -10dBm, so the waveform will be larger at the inputs of the I and Q ADCs.[[BR]] 349 '''Arguments:''' (int32 target) 350 target: target receive power (in dBm)[[BR]] 351 default value: -16[[BR]] 352 353 '''Returns:''' none 354 355 This command is the best way to tweak AGC behavior 356 to apply more or less gain. For example, a target of 357 -5dBm will apply more gain thatn a target of -10dBm, 358 so the waveform will be larger at the inputs of the I 359 and Q ADCs.[[BR]] 304 360 305 361 … … 311 367 '''Requires BUFF_SEL:''' No 312 368 313 '''Arguments:''' (boolean DCO)[[BR]] 314 ''true'' - enables DC offset correction[[BR]] 315 ''false'' - disable DC offset correction[[BR]] 316 317 '''Returns:''' none 369 '''Arguments:''' (boolean DCO) 370 DCO:[[BR]] 371 true enables DC offset correction[[BR]] 372 false disable DC offset correction[[BR]] 373 374 '''Returns:''' none 375 376 377 378 === {{{agc_trig_delay}}} === 379 380 Command is deprecated. Use the output_config_delay[[BR]] 381 command of the trigger manager instead.[[BR]] 318 382 319 383 … … 360 424 361 425 '''Returns:''' none on write; timeout value in usec on read 426 427 428