RFSoC应用笔记 - RF数据转换器 -21- API使用指南之配置ADC相关工作状态
配置ADC相关工作状态
XRFdc_SetDecimationFactor
函数原型
u32 XRFdc_SetDecimationFactor(XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 DecimationFactor);
参数
- *XRFdc InstancePtr:指向驱动程序实例的指针。
- u32 Tile_Id:RF-ADCtile 编号。 有效值为 0-3。
- u32 Block_Id:块内的RF-ADC块编号。 有效值为 0-3。
- u32 DecimationFactor:要为 RF-ADC 设置的抽取因子。
带标注1的只有GEN 3代的有该参数配置。
说明
此 API 函数为请求的 RF-ADC 设置抽取因子,并根据抽取因子更新 FIFO 写入宽度。抽取的动态变化对块吞吐量有影响。 可以动态更改 AXI4-Stream 时钟速率以适应吞吐量的变化。在非 MTS 模式下,推荐的程序是关闭 FIFO(Xrfdc_setupfifo),更改时钟速率(Xrfdc_SetfabClkOutDiv),清除 FIFO 中断,然后重新启动 FIFO(Xrfdc_SetupFifo)。此功能仅适用于 RF-ADC。
返回值
XRFDC_SUCCESS
XRFDC_FAILURE
XRFdc_SetDecimationFactorObs (Gen 3)
函数原型
u32 XRFdc_SetDecimationFactorObs(XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 DecimationFactor);
参数
- *XRFdc InstancePtr:指向驱动程序实例的指针。
- u32 Tile_Id:RF-ADCtile 编号。 有效值为 0-3。
- u32 Block_Id:块内的RF-ADC块编号。 有效值为 0-3。
- u32 DecimationFactor:为RFADC 的观察通道设置的抽取因子。
说明
此 API 函数为请求的 RFADC 的观察通道设置抽取因子,并根据抽取因子更新 FIFO 写入宽度。抽取的动态变化对块吞吐量有影响。 可以动态更改 AXI4-Stream 时钟速率以适应吞吐量的变化。 在非 MTS 模式下,推荐的程序是关闭 FIFO (Xrfdc_SetupFifoObs),更改时钟速率 (Xrfdc_SetfabClkOutDiv),清除 FIFO 中断,然后重新启动 FIFO (Xrfdc_SetupFifoObs)。此功能仅适用于 RF-ADC。
返回值
XRFDC_SUCCESS
XRFDC_FAILURE
XRFdc_SetFabRdVldWords
函数原型
u32 XRFdc_SetFabRdVldWords(XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 FabricRdVldWords);
参数
- *XRFdc InstancePtr: 指向驱动实例的指针。
- u32 Tile_Id : RF-ADC片的编号。有效值为0-3。
- u32 Block_Id:RF-ADC片内的编号。有效值为0-3。
- u32 FabricRdVldWords: 读取要为RF-ADC设置的PL数据速率。
说明
该API函数通过写入相应的寄存器来设置所请求的RF-ADC的读取PL数据率。
返回值
XRFDC_SUCCESS
XRFDC_FAILURE
XRFdc_SetFabRdVldWordsObs (Gen 3)
函数原型
u32 XRFdc_SetFabRdVldWordsObs(XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 FabricRdVldWords);
参数
- *XRFdc InstancePtr: 指向驱动实例的指针。
- u32 Tile_Id : RF-ADC片的编号。有效值为0-3。
- u32 Block_Id:RF-ADC片内的编号。有效值为0-3。
- u32 FabricRdVldWords: 读取要为RFADC的观察通道设置的PL数据速率。
说明
该API函数通过写入相应的寄存器来设置所请求的RFADC的观察通道的读取PL数据速率。这个API函数只适用于RF-ADC。
返回值
XRFDC_SUCCESS
XRFDC_FAILURE
XRFdc_ThresholdStickyClear
函数原型
u32 XRFdc_ThresholdStickyClear(XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 ThresholdToUpdate);
参数
- *XRFdc InstancePtr: 指向驱动实例的指针。
- u32 Tile_Id : RF-ADC片的编号。有效值为0-3。
- u32 Block_Id:RF-ADC片内的编号。有效值为0-3。
- u32 ThresholdToUpdate: 选择要更新的阈值(阈值0或阈值1或两者)用于更新。
请参见Threshold_Settings结构中的有效宏。驱动中的Threshold0和Threshold1分别对应于IP中的Threshold1和Threshold2。
说明
这个API函数清除阈值配置寄存器中的sticky位,基于 ThresholdToUpdate参数清除阈值配置寄存器中的sticky位。这个API函数只适用于RF-ADC。
返回值
XRFDC_SUCCESS
XRFDC_FAILURE
XRFdc_SetThresholdClrMode
函数原型
u32 XRFdc_SetThresholdClrMode(XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 ThresholdToUpdate, u32 ClrMode);
参数
- *XRFdc InstancePtr: 指向驱动实例的指针。
- u32 Tile_Id : RF-ADC片的编号。有效值为0-3。
- u32 Block_Id:RF-ADC片内的编号。有效值为0-3。
- u32 ThresholdToUpdate: 选择要更新的阈值(阈值0或阈值1或两者)用于更新。请参见Threshold_Settings结构中的有效宏。
- u32 ClrMode: 清理模式可以是手动(寄存器写入)或自动清理(QMC增益更新事件)。
说明
此API函数设置阈值清除模式。这个API函数只适用于RF-ADC。
返回值
XRFDC_SUCCESS
XRFDC_FAILURE
XRFdc_SetThresholdSettings
函数原型
u32 XRFdc_SetThresholdSettings(XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, XRFdc_Threshold_Settings *Threshold_Settings);
参数
- *XRFdc InstancePtr: 指向驱动实例的指针。
- u32 Tile_Id : RF-ADC片的编号。有效值为0-3。
- u32 Block_Id:RF-ADC片内的编号。有效值为0-3。
- *XRFdc_Threshold_Settings Threshold_Settings: 指针,通过它可以将阈值的寄存器设置。
阈值:指针,通过它将阈值的寄存器设置传递给API。
说明
这个API函数将阈值设置写到相关的寄存器中。驱动器结构体会被更新为新的值。这个API函数只适用于RF-ADC。
返回值
XRFDC_SUCCESS
XRFDC_FAILURE
XRFdc_SetupFIFOObs (Gen 3)
函数原型
u32 XRFdc_SetupFIFOObs(XRFdc *InstancePtr, u32 Type, int Tile_Id, u8 Enable);
参数
- *XRFdc InstancePtr: 指向驱动实例的指针。
- u32 Type:RF-ADC:0表示RF-ADC。
- int Tile_Id:RF-ADC的片编号。有效值为0-3和-1(用于所有片)。
- u8 Enable:有效值为1(FIFO enable)和0(FIFO Disable)。
说明
该API函数启用和禁用RF-ADC的观察通道FIFO。这个API函数只适用于RF-ADC。
返回值
XRFDC_SUCCESS
XRFDC_FAILURE
XRFdc_SetupFIFOBoth (Gen 3)
函数原型
u32 XRFdc_SetupFIFOBoth(XRFdc *InstancePtr, u32 Type, int Tile_Id, u8 Enable);
参数
- *XRFdc InstancePtr: 指向驱动实例的指针。
- u32 Type:RF-ADC:0表示RF-ADC。
- int Tile_Id:RF-ADC的片编号。有效值为0-3和-1(用于所有片)。
- u8 Enable:有效值为1(FIFO enable)和0(FIFO Disable)。
说明
该API函数启用和禁用RF-ADC实际和观察通道的FIFO。这个API函数只适用于RF-ADC。
返回值
XRFDC_SUCCESS
XRFDC_FAILURE
XRFdc_SetCalibrationMode
函数原型
u32 XRFdc_SetCalibrationMode(XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u8 CalibrationMode);
参数
-
*XRFdc InstancePtr: 指向驱动实例的指针。
-
u32 Tile_Id : RF-ADC片的编号。有效值为0-3。
-
u32 Block_Id:RF-ADC片内的编号。有效值为0-3。
-
u8 CalibrationMode : 有效值为1(Mode1)和2(Mode2)。
说明
这个API函数设置RF-ADC的校准模式。调用这个API后,你必须重新启动整个片,以便新的校准模式能够正确运行。
这个API函数只用于RF-ADC。在改变一个分片的校准模式后,必须发出Xrfdc_Shutdown和Xrfdc_startup命令。
返回值
XRFDC_SUCCESS
XRFDC_FAILURE
XRFdc_DisableCoefficientsOverride
函数原型
u32 XRFdc_DisableCoefficientsOverride(XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 CalibrationBlock);
参数
- *XRFdc InstancePtr: 指向驱动实例的指针。
- u32 Tile_Id : RF-ADC片的编号。有效值为0-3。
- u32 Block_Id:RF-ADC片内的编号。有效值为0-3。
- u32 CalibrationBlock : 校准块,其覆盖将被禁用。有效值为0(仅适用于第三代设备)和1-3,分别代表OCB1、OCB2、GCB和TSCB。
说明
该API函数禁用所选块的系数覆盖。使用CalibrationBlock参数选择时钟。OCB1仅适用于第三代设备。
返回值
XRFDC_SUCCESS
XRFDC_FAILURE
XRFdc_SetCalCoefficients
函数原型
u32 XRFdc_SetCalCoefficients(XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 CalibrationBlock, XRFdc_Calibration_Coefficients *CoeffPtr);
参数
- XRFdc * InstancePtr: 指向驱动实例的指针。
- u32 Tile_Id : RF-ADC片的编号。有效值为0-3。
- u32 Block_Id:RF-ADC片内的编号。有效值为0-3。
- u32 CalibrationBlock:校准块,其覆盖功能将被启用。有效值为0(仅适用于第三代设备),1-3代表OCB1、OCB2、GCB和TSCB
分别代表OCB1、OCB2、GCB和TSCB。 - XRFdc_Calibration_Coefficients * CoeffPtr : 指向通用校准系数结构的指针。
说明
这个API函数启用了系数覆盖,并为所选区块编程所提供的系数。该块是通过CalibrationBlock参数选择的。OCB1仅适用于第三代设备。
返回值
XRFDC_SUCCESS
XRFDC_FAILURE
XRFdc_SetCalFreeze
函数原型
u32 XRFdc_SetCalFreeze(XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, XRFdc_Cal_Freeze_Settings *CalFreezePtr);
参数
- XRFdc * InstancePtr: 指向驱动实例的指针。
- u32 Tile_Id : RF-ADC片的编号。有效值为0-3。
- u32 Block_Id:RF-ADC片内的编号。有效值为0-3。
- XRFdc_Cal_Freeze_Settings * CalFreezePtr: 指向通用校准冻结设置的结构体。
说明
这个API函数通过校准端口冻结/解冻校准,并禁用/启用校准冻结针。
返回值
XRFDC_SUCCESS
XRFDC_FAILURE
XRFdc_SetDither
函数原型
u32 XRFdc_SetDither(XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, u32 Mode);
参数
- u32 Mode : 禁用(0)或启用(1)抖动。
说明
该API函数启用/禁用抖动。
返回值
XRFDC_SUCCESS
XRFDC_FAILURE
XRFdc_SetDSA (Gen 3)
函数原型
u32 XRFdc_SetDSA(XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, XRFdc_DSA_Settings *SettingsPtr);
参数
- XRFdc * InstancePtr: 指向驱动实例的指针。
- u32 Tile_Id : RF-ADC片的编号。有效值为0-3。
- u32 Block_Id:RF-ADC片内的编号。有效值为0-3。
- XRFdc_DSA_Settings * SettingsPtr : 指向XRFdc_DSA_Settings的指针,用于传递DSA设置。
说明
传递的DSA设置被用来更新相应的块级寄存器,这是一个只针对RF-ADC的API函数。
返回值
XRFDC_SUCCESS
XRFDC_FAILURE
XRFdc_SetSignalDetector (Gen 3)
函数原型
u32 XRFdc_SetSignalDetector(XRFdc *InstancePtr, u32 Tile_Id, u32 Block_Id, XRFdc_Signal_Detector_Settings *SettingsPtr);
参数
- XRFdc_Signal_Detector_Settings * SettingsPtr: 指针指向XRFdc_Signal_Detector_Settings结构体的指针,用于传递信号检测器的设置。
Valid Macros for SettingsPtr->Mode Argument
Macro | Description |
---|---|
XRFDC_SIGDET_MODE_AVG | Average mode of operation |
XRFDC_SIGDET_MODE_RNDM | Randomized mode of operation |
Valid Macros for SettingsPtr->TimeConstant Argument
Macro | Description |
---|---|
XRFDC_SIGDET_TC_2_0 | 2^0 Cycles |
XRFDC_SIGDET_TC_2_2 | 2^2 Cycles |
XRFDC_SIGDET_TC_2_4 | 2^4 Cycles |
XRFDC_SIGDET_TC_2_8 | 2^8 Cycles |
XRFDC_SIGDET_TC_2_12 | 2^12 Cycles |
XRFDC_SIGDET_TC_2_14 | 2^14 Cycles |
XRFDC_SIGDET_TC_2_16 | 2^16 Cycles |
XRFDC_SIGDET_TC_2_18 | 2^18 Cycles |
说明
传递的信号检测器设置被用来更新相应的块级寄存器。这是一个仅适用于RF-ADC的API函数。只适用于第三代设备。
返回值
XRFDC_SUCCESS
XRFDC_FAILURE
相关文章
- openswan不同应用情景配置方法
- Dubbo 泛化调用在vivo统一配置系统的应用
- centos7 firewalld配置常用规则
- 【分享】在集简云上架应用如何配置动作接口参数?
- 应用场景之nginx配置简介
- SpringCloud版本升级后bootstrap.yml配置不生效
- pycharm如何设置背景图片_python配置pycharm
- LINUX vm网络配置
- 小程序功能页面配置怎么填_设置企业级应用在哪
- linux redis端口修改端口,linux–redis的安装和配置和开启多个端口「建议收藏」
- vim 配置python3环境_vim怎么运行python
- MySQL8.0理解数据库配置问题(spring)
- 腾讯云对象存储COS及CDN加速配置
- 【Android 应用开发】Activity 返回堆栈清除操作 ( 默认状态 | 清除返回堆栈配置 | 不清除返回堆栈配置 | 清除指定界面配置 )
- Mysql高可用高性能存储应用系列3 - mysqld_multi配置主从集群
- 【错误记录】Android 应用配置第三方 so 动态库 ( /data/app/comxxx==/base.apk/lib/arm64-v8a]couldn‘t find “libx.so“ )
- 【错误记录】Android 应用安装后出现两个启动图标 ( 排查应用及依赖库中配置了 android.intent.category.LAUNCHER 的 Activity )
- 【Android Gradle 插件】 Splits 配置 ① ( BaseExtension#splits 配置 | Splits 配置简介 )
- 【Android 应用开发】使用蒲公英 SDK 收集崩溃日志信息 ( 导入依赖 | 申请 Key | 集成代码 | 清单文件配置 | 手动上传日志 | 手动检查更新 )
- JAVA环境变量配置详解(Windows)编程语言
- [javaEE] web应用的目录结构&配置虚拟主机详解编程语言
- Oracle 参数 RESOURCE_MANAGE_GOLDENGATE 官方解释,作用,如何配置最优化建议
- 配置MySQL Bin路径配置:实现数据库运行更高效(mysqlbin路径)
- Linux下Qt4应用的安装与配置(qt4linux安装)
- Linux下高效配置HTTP服务(linuxhttp设置)
- 搭建Linux下VNC服务器的搭建与配置(linux下vnc)
- 环境配置Linux下的Git环境:一步一步(git配置linux)
- Linux监听配置:让你的应用处处留意,严防失误(linux下监听配置)
- 如何高效配置Linux日志服务器(linux配置日志服务器)
- 探讨Linux操作系统中网段ip的应用及配置技巧(linux网段ip)
- 文件TP6 应用 Redis 配置文件优化实践(tp6 redis配置)
- TP5新高度使用Redis缓存极大提升应用性能(tp5配置redis缓存)
- 如何快速配置Oracle ACL(oracle acl配置)
- Centos5.2下安装多个mysql数据库配置详解