工具与软件:
您好!
我想搭配 ADC12QJ1600 ADC、为 PolarFire FPGA 配置 Microchip 的 JESD204B 内核。
硬件将所有8个通道连接到 FPGA。
我想使用 JMODE9 (8位、8B/10B 编码、8个通道)、基本问题是
1.如何配置 ADC?
2.如何配置 FPGA JESD 内核?
以下是我正在考虑的设置和配置。
ADC 的时钟设置
ADC 的配置序列:
。
引脚:PLL_EN ="0";PLLREF_SE ="0";CLK+/-= 1000 MHz;
步骤1。 PD ='1' (它应该高多长时间? 目前~40us)
步骤2。 PD ="0"(它应该为低电平多长时间? 目前~40us)
步骤3:发出 SOFT_RESET:写入寄存器- CONFIG_A (地址:0x000;值:0xB0)
步骤4:等待1280ns (根据规格、需要等待750ns)
步骤4:读取 init_status:读取寄存器- init_status (地址:0x030)
步骤5:如果 init_done 为"1"、则执行步骤6否则执行步骤4
步骤6:读取 VENDOR_ID:读取寄存器- VENDOR_ID (地址:0x00C)
步骤7:如果 VENDOR_ID = 0x0451、则步骤8否则发出错误
步骤8:停止 JESD204:写入寄存器- JESD_EN (地址:0x200;值:0x00)
步骤9:停止校准:写入寄存器- CAL_EN (地址:0x061;值:0x00)
步骤10:默认为高性能模式
步骤11:JMODE 选择:写入寄存器- JMODE (地址:0x201;值:0x09)
步骤12:所需的 KM1值:写入寄存器- KM1 (地址:0x202;值:0x1f)
步骤13:SYNC_SEL:写入寄存器- JCTRL (地址:0x204;值:0x03)
步骤14:校准设置:写入寄存器- CAL_CFG0 (地址:0x062;值:0x01)
步骤15:校准设置:写入寄存器- CAL_CFG1 (地址:0x065;值:0x01)
STEP16:启用 TRIGOUT:写入寄存器- TRIGOUT_CTRL (地址:0x057;值:0x81)
C_PLL 被禁用、因此此时不读取 VCO_CAL_STATUS 寄存器
步骤17:启用校准:写入寄存器- CAL_EN (地址:0x061;值:0x01)
步骤18:启用超范围:写入寄存器- OVR_CFG (地址:0x213;值:0x0F)
步骤19:Re 启动 JESD204:写入寄存器- JESD_EN (地址:0x200;值:0x01)
步骤20:启用校准:写入寄存器- CAL_PIN_CFG (地址:0x06B;值:0x01)
第21步:设置 CALTRIG ='0'(设置它应该为低电平多长时间? 现在、5.1us)
第22步:设置 CALTRIG ="1"(它应该是高电平多长时间? 现在它将处于高电平、直到 CALSTAT ="1")
如果 CALSTAT ="1"、则 CALTRIG <="0";
FPGA Setup (FPGA 设置)
FPGA 收发器内核只能占用4个通道、因此使用2个收发器内核来生成8个通道。
收发器内核的配置
JESD204BRX 内核配置
如果您有任何问题或疑虑、敬请告知。
请告诉我您的想法:
谢谢
Madhu