首页资源分类嵌入式系统Linux > LAN-401信号处理模块 用户手册(非常详细)

LAN-401信号处理模块 用户手册(非常详细)

已有 447940个资源

下载专区

上传者其他资源

    文档信息举报收藏

    标    签:信号处理模块信号处理卡千兆网

    分    享:

    文档简介

    UD LAN-401信号处理模块由双通道的A/D采样(最高支持250MSPS/14bit)、双通道D/A回放(最高支持1000MSPS/16bit)、FPGA+ARM(最高支持XC7Z045)及对外的通信接口(100M/1000M以太网、GPIO、CAN或串口等)组成。UD LAN-401外形尺寸为145.2mm(长)* 95 mm(宽)*20mm(厚),采用底面散热的方式,可满足工业级以上用户的要求。

    应用行业:

     (高速/高性能)基带/中频信号处理、主控(射频/中频/显控一体机)

     通讯、信号监测、模拟源、测控仪器

     高等院校、研究院所、科研机构

    产品特点:

     高可靠性设计、工业级应用、性价比高

     千兆网通信,单电源+5V供电

     模块丝印只有型号,无Logo,适合OEM

     硬件配置丰富,可根据用户的需求灵活选配

     配套底层软件大量测试和验证,专业团队持续维护升级

     开发者可以不涉及ARM(linux/vxworks)部分(仅FPGA逻辑工程师即可完成项目开发),上位机可直接更新PL固件

     官网下载最新的更新包,可对板卡的所有固件/驱动进行随时升级

     官网提供二次开发相关资料、应用资料下载

     提供丰富的demo软件(底层/应用层)

     支持PCI/PCIe、3U CPCI/PXI/VPX、6U PXIe/VPX结构

    文档预览

    LAN-401 中频信号处理模块 密级 页数 内部 共 65 页 LAN-401 信号处理模块 用户手册 文件编号: UD/YHSZ-LAN-401 版本代号: V1.01 2017 年 4 月 第 1 页 ,共 65 页 LAN-401 中频信号处理模块 声明 成都优数科技有限公司保留随时对其产品进行修改、改进 和完善的权利,同时也保留在不作任何通告的情况下,终止其 任何一款产品的供应和服务的权利。用户下订单前应获取相关 信息的最新版本,并验证这些信息是当前的和完整的。 第 2 页 ,共 65 页 LAN-401 中频信号处理模块 目录 1. 引言 ...................................................................................................................................... 6 1.1 产品概述 ................................................................................................................................ 6 1.2 参考资料 ................................................................................................................................ 8 2. 产品技术参数 ....................................................................................................................... 9 3. 使用前的准备工作 .............................................................................................................. 12 4. 硬件平台 ............................................................................................................................. 15 4.1 电源输入 .............................................................................................................................. 18 4.2 网络接口 .............................................................................................................................. 19 4.3 串口 ...................................................................................................................................... 20 4.4 GPIO 接口 ............................................................................................................................. 22 4.5 复位插针 .............................................................................................................................. 23 4.6 JTAG 插针 ............................................................................................................................. 24 4.7 LVDS 高速接口 ..................................................................................................................... 24 4.8 时钟拓扑 .............................................................................................................................. 25 4.9 关键器件明细表 .................................................................................................................. 26 5. 软件介绍 ............................................................................................................................. 26 5.1 FPGA 软件介绍 ..................................................................................................................... 26 5.1.1 FPGA 顶层文件 ................................................................................................................ 26 5.1.2 PS 和 PL 之间的通信 ....................................................................................................... 31 5.1.3 PL 命令状态通道寄存器定义 ......................................................................................... 34 5.1.3.1. MISC_STATUS[31:0].................................................................................................................35 5.1.3.2. GPIO_STATUS [31:0]................................................................................................................36 5.1.3.3. UART_PL_STATUS_DATA[31:0] ................................................................................................... 37 5.1.3.4. GLOBAL_CTRL [31:0] ............................................................................................................... 37 5.1.3.5. RECEIVE_CH_CTRL[31:0]............................................................................................................38 5.1.3.6. TRANSMIT_CH_CTRL[31:0] ........................................................................................................39 第 3 页 ,共 65 页 LAN-401 中频信号处理模块 5.1.3.7. GPIO_CONTROL[31:0]................................................................................................................39 5.1.3.8. UART_PL_CTRL_DATA [31:0] ......................................................................................................40 5.1.3.9. DDC_NCO_PHASE[31:0].............................................................................................................41 5.1.3.10. DDC_SIMUL_PAHSE[31:0]........................................................................................................ 42 5.1.3.11. DUC_SIMUL_PAHSE[31:0]........................................................................................................ 42 5.2 上位机 QT 开发环境 ............................................................................................................ 42 5.2.1 软件安装...................................................................................................................... 43 5.2.2 软件使用...................................................................................................................... 44 5.2.3 功能介绍...................................................................................................................... 45 5.2.3.1. 主界面部分 ...............................................................................................................................45 5.2.3.1.1. 上位机更新 PL 端程序 ...................................................................................................... 47 5.2.3.1.2. GPIO 接口控制 .................................................................................................................. 47 5.2.3.2. 系统设置部分 ...........................................................................................................................48 5.2.3.2.1. 板卡 IP 地址设置和修改...................................................................................................49 5.2.3.2.2. 板载芯片参数动态配置....................................................................................................49 5.2.3.2.3. PL 收发通道参数配置 .......................................................................................................51 5.2.4 上位软件 QT 的修改和开发 ....................................................................................... 52 6. PS 部分开发 ........................................................................................................................ 55 6.1 板载 NOR FALSH 存储空间................................................................................................... 55 6.2 底层驱动程序的更新 .......................................................................................................... 55 6.2.1 PL 烧写和更新 ................................................................................................................. 55 6.2.2 文件系统烧写和更新.................................................................................................. 58 6.2.3 设备树烧写和更新...................................................................................................... 58 6.2.4 内核烧写和更新.......................................................................................................... 59 6.2.5 BOOT 烧写和更新............................................................................................................ 59 6.3 驱动程序的开发 .................................................................................................................. 59 6.4 服务器接口 .......................................................................................................................... 60 7. 常见故障处理方法 .............................................................................................................. 61 7.1 网络不能连接 ...................................................................................................................... 61 第 4 页 ,共 65 页 LAN-401 中频信号处理模块 7.2 采集的波形不正确 .............................................................................................................. 62 8. 参考原理图 ............................................................................................ 错误!未定义书签。 第 5 页 ,共 65 页 1. 引言 LAN-401 中频信号处理模块 1.1 产品概述 UD LAN‐401 信号处理模块由双通道的 A/D 采样(最高支持 250MSPS/14bit)、 双通道 D/A 回放(最高支持 1000MSPS/16bit)、FPGA+ARM(默认 XC7Z030,最高 支持 XC7Z045)及对外的通信接口(10M/100M/1000M 以太网、GPIO、USB、CAN 或串 口等)组成。UD LAN‐401 外形尺寸为 145.2mm(长)* 95 mm(宽)*20mm(厚), 采用底面散热的方式,可满足工业级以上用户的要求。 图 1 产品实物图(两种连接器版本) 应用领域:  (高速/高性能)基带/中频信号处理、主控(射频/中频/显控一体机)  高等院校、研究院所、科研机构  通信、信号监测、模拟源、测控仪器  实验室 产品特点:  高可靠性设计,高性能、低成本  千兆以太网接口,使用简单  单电源+5V供电,底部散热,可自然空气对流散热方式  配置丰富,可根据用户的需求灵活调整  可搭载不同载板插入到PCIe、CPCI、VPX、PXIe机箱  通过以太网支持远程升级板卡固件(PL和PS)  方便与二次开发(提供demo程序、用户可只更新PL部分) 第 6 页 ,共 65 页 LAN-401 中频信号处理模块 ADC_CH1 SMA ADC_CH2 SMA 外参考/外时钟 SMA 外触发 SMA DAC_CH1 SMA DAC_CH2 SMA 信号调理 (DC/AC耦合) 信号调理 (DC/AC耦合) OSC+PLL+ VCXO MOD上变频 调制 信号调理 (DC/AC耦合) ADC DAC XC7Z030 PL DDR3 (51D2MDRB3) TF卡 SPI 扩展连接器 QSPI0 EPROM QSPI1 EPROM IP复位按钮 +5V供电 电流小于3A DC/DC 32 XC7Z030 PS 32 DDR3 D(5D1R2M3 B) ADC (FPA自带) 5 LVDS (扩展连接器) 4 GTX (扩展连接器) 2 2路232或1路 422/485串口 16 GPIO口 蜂鸣器 音频Codec I2C (扩展连接器) 功放扩展 连接器 温度 /RTC 3V 电池 1500V 隔离 CAN 2.0 2 2路232 PHY 变压器 100/1000M Base_T 以太网(支持TCP/IP 或UDP协议) PHY USB2.0 Host/Device/OTG 图 2 产品原理框图 LAN‐401信号处理模块以Zynq-7000(默认安装XC7Z030)为主处理器,外设 接口包括2通道ADC(可AC或DC耦合)、2通道DAC(可AC、DC或模拟上变频方式)、 PL外挂DDR3、PS外挂DDR3、2片QSPI EPROM、千兆以太网、2路RS232接口、1路 RS422、RS485(或2路RS232)接口、16路GPIO口、USB OTG接口(默认不安装)、 隔离型CAN接口(默认不安装)、RTC及温度监测(默认不安装)、音频接口(默 认不安装)、蜂鸣器(默认不安装)、LVDS扩展接口(默认不安装)、GTX扩展 接口(默认不安装)、LCD扩展接口(默认不安装)、I2C扩展接口(默认不安 装)、TF卡座(默认不安装)。 Zynq-7000由双核ARM A9和FPGA组成。FPGA完成高速信号的并行处理,通过 AXI总线与ARM进行通信,ARM完成参数运算、数据后处理及多个外设的控制,通 过10/100/1000M BASE-T以太网与上位机通信,支持TCP/IP或UDP/IP协议。 LAN‐401信号处理模块可以安装XC7Z030、XC7Z035、XC7Z045芯片,资源对比 第 7 页 ,共 65 页 LAN-401 中频信号处理模块 如下表所示; FPGA 资源对比表 XC7Z030 Programmable Logic Cells 125K RAM (# 36 Kb Blocks) 9.3Mb DSP Slices(18x25 MACCs) 400 XC7Z045 350K 19.1Mb 900 XC5VSX95T XC7K325T 147.2 K 326.08K 8.784 Mb 16.02Mb 640 840 LAN‐401信号处理模块订购信息如下图所示。 图 3 信号处理模块可选配置项 由于LAN‐401信号处理模块配置丰富,可选配项目较多,后续章节描述时将 以主芯片XC7Z030外设配置全功能进行描述。若在您订购的产品中不包括此项, 请自动跳过即可。 1.2 参考资料 FPGA 相关资料:https://www.xilinx.com/zynq-7000.html 时钟芯片相关资料:http://www.ti.com/product/lmk04816 ADC 相关资料:http://www.analog.com/ad9258.html DAC 相关资料:http://www.analog.com/ad9779a.html 第 8 页 ,共 65 页 LAN-401 中频信号处理模块 模拟上变频器参考资料:http://www.analog.com/adl375.html 上变频器本振参考资料:http://www.analog.com/adf4351.html DDR3 相关资料:http://www.issi.com/WW/pdf/43-46TR16128B-82560BL.pdf 音频相关资料:http://www.analog.com/adau1361.html USB 相关资料:http://www.ti.com/product/tusb1210 千兆网 PHY 相关资料:http://www.ti.com/product/dp83867is Zynq-Linux 相关资料: http://www.wiki.xilinx.com/Zynq+Linux 成都优数科技网站: http://www.udunion.com 2. 产品技术参数  输入通道: ADC 通道数: 2 通道(同步采集模式) 输入连接器: SMA A/D 最高采样率: 14bit/125MSPS、14bit/250MSPS、16bit/105MSPS 三选一 耦合方式: DC耦合或AC耦合(二选一,出厂确定) 信号带宽:DC~50MHz(DC耦合模式) 2MHz~180MHz(AC耦合模式) 输入信号幅度/阻抗: 1Vpp/1MΩ(DC耦合模式) +10dBm/50Ω(AC耦合模式) ADC输入低通/带通/抗混迭滤波器: 无  时钟部分: 支持外参考时钟(10MHz/100MHz)或外直接AD/DA时钟(通过软件编程+ 硬件选择) 支持内参考(默认内参考精度为:±30ppm,若需要更高精度指标,订货时 请提出) 输入阻抗:50Ω 输入连接器:SMA 外时钟输入功率:+5 dBm ~+10dBm 第 9 页 ,共 65 页 LAN-401 中频信号处理模块  触发接口: 支持外触发信号,直流耦合,TTL_5V电平 输入阻抗:10KΩ 输入连接器:SMA  输出通道: D/A 输出通道数:2 通道 D/A分辨率:14bit或16bit D/A 输出最高速率:800MSPS/1GSPS 输出连接器:SMA 输出耦合方式:DC、AC 或IQ上变频器MOD (三选一,出厂确定) IQ上变频器MOD支持:ADL5371/ADL5372/ADL5375(其他MOD芯片可定制) 输出信号幅度/阻抗: 2.5Vpp/50Ω(DC耦合模式) 4.76Vpp /1KΩ(DC耦合模式) 5Vpp /Open(DC耦合模式) 1Vpp/50Ω(AC耦合模式) 大约0dBm/50Ω(IQ上变频MOD模式) 模拟输出带宽:DC~50MHz(DC耦合模式) 2MHz~180MHz(AC耦合模式) 频率范围300MHz~4.4GH(z IQ上变频MOD模式),IQ带宽<240MHz DAC输出低通/带通滤波器: 无  FPGA 及附属外设: FPGA型号:XC7Z030(可升级为XC7Z035、XC7Z045) FPGA 内嵌双核ARM:采用Linux操作系统 FPGA 逻辑部分: DDR3:512MByte(可升级为1024MByte),32bit 宽 FPGA内部ADC扩展连接器(可用于机箱或环温检测):1个(默认不装配) 4路高速LVDS扩展连接器(可支持LVDS-LCD):1个(默认不装配) 4路GTX扩展连接器(可支持PCIe/SRIO协议):1个(默认不装配) 2路RS232或1路RS422/485接口(和PS的RS232一个连接器):1个 第 10 页 ,共 65 页 LAN-401 中频信号处理模块 16路GPIO接口:1个(3.3V电平) 蜂鸣器:1路(异常报警,默认不安装) 音频接口:1 个(默认不装配) LED指示灯:4颗(2颗在前面板)  FPGA 内嵌ARM 最小系统: DDR3:512MByte(可升级为1024MByte),32bit 宽 QSPI0 FLASH:128Mbit QSPI1 FLASH:128Mbit 与QSPI1 FLASH同一总线的SPI扩展口(可用于SPI‐LCD):1个(默认不装配) TF卡:1个(默认不装配) RS232 接口(和PL的RS232一个连接器): 2 个 CAN 接口(带1500V隔离):1 个(默认不装配) I2C扩展连接器:XH3(2.0间距)1个(工厂使用) USB 2.0 OTG 接口:1 个(默认不装配) 温度监测和RTC(默认不装配) 10M/100M/1000M 以太网接口: 1 个  软件: FPGA参考实例 上位机软件通过以太网接口与FPGA 逻辑之间的数据流库 上位机安装软件  电源: DC +5V(±5%),功耗6~15W(功耗根据FPGA的频率和使用资源消耗而定)  结构尺寸: PCB 板尺寸:95mm*145.2mm 板卡重量:0.175kg(不含散热片、外壳)  环境适应性: 工业级:‐20~+70 度 宽温级:‐40~+85度  散热方式: 第 11 页 ,共 65 页 LAN-401 中频信号处理模块 风冷/传导,散热片或外壳用户自行提供  提供的文件: 模块安装结构文件 驱动软件包(包括PL外设接口驱动库、PS外设接口驱动库(Linux版本)、上位 机API驱动库、上位机测试界面安装文件)(备注:软件包只用于硬件本身功能测试, 软件代码未经第三方专业测评,可能存在BUG,不建议用户直接使用) 用户手册 3. 使用前的准备工作 注意:在接触本产品之前必须要先行释放静电,且使用过程中保持静电释放通道 STEP1:根据装箱清单,检查产品及产品附件数量是否齐全; STEP2:对 LAN‐401 信号处理模块外观进行检查,无碰伤,物料掉落现象; STEP3:准备配套电缆、测试仪器、上位机环境,要求如下: 项目 器材名称 数量 要求 处理器:Intel Core i3、内存容量:2GB、硬盘:500M 1 电脑 1 台 以上。10/100/100 自适应(自动识别线序)网口; XP/WIN7 32bit 操作系统; 2 网线 五类以上千兆网线,长度<2 米(详细定义见后面 1根 相关章节) 3 台式电源 1台 直流稳压电源,+5V 输出,电流>3A 4 电源线 根据稳压电源接口和产品的电源接口自制,通过电 1根 流>4A,长度<0.5 米,双绞;(详细定义见后面相 第 12 页 ,共 65 页 LAN-401 中频信号处理模块 关章节) 5 万用表 1 台 用户检测直流稳压电源输出的电压是否正确 自制,信号处理板对外 IDC-10M 接口包括了 2 个 RS232 串口(其中一个用于 Linux 的调试串口)和 6 串口转接线 1 根 1 个 RS422/RS485 串口(也可通过软件配置为 2 个 RS232 串口)(详细定义见后面相关章节) 7 金属镊子 1把 (备用)用于碰触复位插针,调试时候使用 两通道模拟输入信号各 1 台,外时钟输入 1 台。功 8 射频信号源 1~3 台 率 范 围 : -90dBm~+13dBm , 频 率 范 围 : 250KHz~200MHz,SSB:-90dBc@100Hz 两通道模拟输出信号各 1 台。输入范围 9 频谱仪 1~2 台 -120dBm~+13dBm,频率范围:250KHz~4.4GHz, SSB:-90dBc@100Hz 一端为 SMA 接头,另外一端根据仪器接口确定。 10 射频线缆 1~6 根 长度<1 米,频率>3GHz,阻抗 50Ω,驻波<1.2 自制,信号处理板对外 IDC-20M 接口包括了 16 11 GPIO 转接线 1 根 个 3.3V GPIO 口。负载不超过 10mA,阻抗 1KΩ (详细定义见后面相关章节) FPGA 下 载 支持 Xilinx Zynq-7000 系列的 Platform Cable USB 12 1个 线 下载器 接大地线缆,所有仪器、电脑、模块应该单点接大 13 接地线缆 1根 地,防止电压差和造成人身伤害 模拟输入/输出,时钟测试时都要加适当的带通滤 14 带通滤波器 1~6 只 波器 15 信号发生器 1 台 DC~100MHz,TTL 电平,用于外触发的测试 CAN 接线盒与板卡的 CAN 接口互联(详细定义见 16 CAN 转接线 1 根 后面相关章节) 17 音频耳机 1 个 支持 3.5mm 插头的耳机 第 13 页 ,共 65 页 LAN-401 中频信号处理模块 18 TF 卡 1 张 容量不小于 1Gbyte 计算机 USB 口与板卡的 USB 2.0 口互联,带磁环, 19 USB 转接线 1 根 长度<1 米 STEP4:台式电源上电(断开连接 LAN-401 信号处理模块),使用万用表测量电压 正确性(DC +5V(±5%)),电源的正负极限位置的正确性,设置限流 3A。 STEP5:找到各仪器设备、电脑及 LAN-401 信号处理模块接大地(EGND)的位置, 单点接地; STEP6:把 LAN-401 信号处理模块通过制作的线缆与各仪器设备及电脑连接器; STEP7:LAN-401 信号处理模块的默认 IP 地址为:192.168.2.230,因此需要设置电 脑的 IP 地址为同一网段,比如: 图 4 电脑 IP 地址设置参考 第 14 页 ,共 65 页 LAN-401 中频信号处理模块 STEP8:在电脑上安装“上位机软件”,安装完成后运行上位机软件; STEP9:模块直流电源上电,观察电流(一般情况下不超过 2A)是否正常,电源指 示灯 D3 亮度是否正常。若电流异常,检查电源的正负极是否接反、电压是否正确、 限流是否合理,待故障排除后再上电; STEP10:各仪器设备上电。对接入两路 ADC 的信号源,设置信号源输出频率为 1MHz,功率+9dBm,不调制。对接入两路 DAC 的频谱仪,设置仪器频率为 2.8MHz, SPAN=2MHz,REF=-50dB。对接入 1 路模拟调制的频谱仪,设置仪器频率为 1.46GHz, SPAN=10MHz,REF=-50dB。对接入参考时钟的信号源,设置信号源输出频率为 10MHz,功率+5dBm,不调制。 STEP11:操作上位软件(点击显示按钮),获取采集的数据,观察软件界面和仪器 显示结果(软件操作细节见后面相关章节)。 4. 硬件平台 图 5 正面接口丝印图 第 15 页 ,共 65 页 LAN-401 中频信号处理模块 图 6 背面接口丝印图 LAN-401 信号处理模块正面和背面的丝印图分别如上图所示。各接口的功能表 如下: 位号 功能 连接器型号 说明 J18 电源开关连接器 Molex 22-03-5025 不安装,模块上已短路 J20 +5V 电源连接器 CTB932HE/2 与 J22 重叠放置,二选一 J22 +5V 电源连接器 JL11-4ZJW 与 J20 重叠放置,二选一 J23 CAN 连接器 S3B-XH-A 默认不安装 RJ1 RJ45 连接器 RJ45,带灯 与 RJ2 重叠放置,二选一 RJ2 以太网连接器 JL24-8ZJW 与 RJ1 重叠放置,二选一 S1 IP 复位开关 FSMRA6JH 默认不安装 D5 绿色 LED 状态灯 - 低电平有效,接到 PL 的 AC24 脚 D6 绿色 LED 状态灯 - 低电平有效,接到 PL 的 AD24 脚 J24 USB 连接器 TE 1981584-1 默认不安装 J19 串口连接器 IDC-10M JL23-10ZJW 2 个 RS232,1 个 RS422/485 两种类型连接器,二选一 第 16 页 ,共 65 页 LAN-401 中频信号处理模块 J21 GPIO 口连接器 IDC-20M JL23-20ZJW 16 个 GPIO,3.3V 和 5V 各 1 路输 出,两种类型连接器,二选一 J17 音频连接器 3.5mm 耳机 默认不安装 J16 音频功放连接器 Molex 53261-0671 默认不安装 J14 GTX 高速扩展接口 ERF8_030 默认不安装 J13 3V 宽温电池 BR-1225A/HBN 默认不安装,与 J12 二选一 J12 外接电池连接器 Molex 22-03-5025 默认不安装,与 J13 二选一 J11 复位连接器 SIP2 短路即复位 J9 FPGA JTAG 连接器 SIP7 用于连接器 FPGA 下载线 J6 第 1 通道模拟输入 SMA-KWHD 模拟信号输入,50Ω J5 第 2 通道模拟输入 SMA-KWHD 模拟信号输入,50Ω J4 外触发输入 SMA-KWHD 外触发数字 3.3V LVCMOS 电平 J3 外时钟输入 SMA-KWHD 参考时钟或 AD/DA 工作时钟 J2 第 1 通道模拟输出 SMA-KWHD 模拟信号输出,50Ω J1 第 2 通道模拟输出 SMA-KWHD 模拟信号输出,50Ω D1 绿色 LED 状态灯 - 低电平有效,接到 PL 的 N2 脚 J10 LVDS 高速扩展接口 ERF8_020 默认不安装 J7 FPGA 的 ADC 外接口 Molex 22-03-5025 默认不安装 PZ1 蜂鸣器 +5V 蜂鸣器 默认不安装 J8 SPI 接口的 LCD 屏 IDC-10(2.0 间距) 默认不安装 D3 红色 LED 电源灯 - 输入+5V 的电源状态 J15 I2C 接口连接器 XH2.54-3 工厂使用 J25 TF 连接器 114-00841-68 默认不安装 U28 发送通道功能扩展板 - 支持运放、MOD 模块 U29 接收通道功能扩展板 - 支持运放,信号调理模块 - 7 个 3.0mm 安装孔 - 3mm 固定安装孔,接 EGND NOTE:由于用户要求不同,可能出厂连接器配置稍有不同。下面分别对连接 器的具体定义进行详细介绍。 第 17 页 ,共 65 页 4.1 电源输入 J18 Power SW VIN_5V +5V +/- 5% 1 2 J20 2 1 PowerIn CTB932HE/2 PowerIn J22 4 3 2 1 SIP4 LAN-401 中频信号处理模块 图 7 电源连接器的原理图和 PCB 定义 位号 J20 J22 器件型号 器件厂家 引脚数 说明 CTB932HE/2 CAMDEN 2 +5V 电源输入连接器 JL11-4ZJW 通贸 4 与 J20 二选一,配套连接器型号: JL11-4TKH(焊线) CTB932HE/2 连接器管脚信号定义: 管脚号 网络名 方向 说明 1 GND 输入 方脚焊盘,接电源的负极 2 PowerIn 输入 圆脚焊盘,接+5V±5%电源的正极,电流一般小于 2A JL11-4ZJW 连接器管脚信号定义: 管脚号 网络名 方向 说明 1、2 GND 输入 第一脚为方脚焊盘,1、2 脚接电源的负极 3、4 PowerIn 输入 圆脚焊盘,接+5V±5%电源的正极,电流一般小于 2A 第 18 页 ,共 65 页 LAN-401 中频信号处理模块 4.2 网络接口 NET_A_1 NET_A_2 NET_A_3 NET_A_4 NET_A_5 NET_A_6 NET_A_7 NET_A_8 RJ1 1 2 3 4 5 6 7 8 RJ45 12 13 14 11 10 15 16 9 ETH_LED_LINK ETH_LED_ACT NET_A_7 NET_A_4 NET_A_3 NET_A_1 R356 R358 R360 R362 RJ2 0 1 5 0 2 6 0 3 7 0 4 8 R357 R359 R361 R363 0 NET_A_8 0 NET_A_5 0 NET_A_6 0 NET_A_2 JL24-8ZJB 图 8 网络连接器的原理图和 PCB 定义 位号 器件型号 器件厂家 引脚数 说明 RJ1 RJ45(带灯) 16 网络 RJ45 连接器,与 RJ2 二选一 RJ2 JL24-8ZJW 通贸 8 与 RJ1 二选一,配套连接器型号: JL24-8TKH(焊线) RJ45(带灯)连接器管脚信号定义: 管脚号 网络名 方向 说明 1 NET_A_1 双向 TX_D1+,与 NET_A_2 为 1 差分对 2 NET_A_2 双向 TX_D1-,与 NET_A_1 为 1 差分对 3 NET_A_3 双向 RX_D2+,与 NET_A_6 为 1 差分对 4 NET_A_4 双向 BI_D3+,与 NET_A_5 为 1 差分对 5 NET_A_5 双向 BI_D3-,与 NET_A_4 为 1 差分对 6 NET_A_6 双向 RX_D2-,与 NET_A_3 为 1 差分对 7 NET_A_7 双向 BI_D4+,与 NET_A_8 为 1 差分对 8 NET_A_8 双向 BI_D4-,与 NET_A_7 为 1 差分对 9 GND - 10 ETH_LED_ACT 输出 网络有效指示灯,低电平有效 11 GND - 12 ETH_LED_LINK 输出 网络 LINK 指示灯,低电平有效 13、14 EGND - 连接器外壳屏蔽地 第 19 页 ,共 65 页 15、16 位置固定孔 - LAN-401 中频信号处理模块 JL24-8ZJW 连接器管脚信号定义: 管脚号 网络名 方向 说明 1 NET_A_7 双向 与5 脚( NET_A_8)为1 对双绞线,BI_D4+,接RJ45 的7 脚 2 NET_A_4 双向 与6 脚( NET_A_5)为1 对双绞线,BI_D3+,接RJ45 的4 脚 3 NET_A_3 双向 与7 脚( NET_A_6)为1 对双绞线,RX_D2+,接RJ45 的3 脚 4 NET_A_1 双向 与8 脚( NET_A_2)为1 对双绞线,TX_D1+,接RJ45 的1 脚 5 NET_A_8 双向 与1 脚( NET_A_7)为1 对双绞线,BI_D4-,接RJ45 的8 脚 6 NET_A_5 双向 与2 脚( NET_A_4)为1 对双绞线,BI_D3-,接RJ45 的5 脚 7 NET_A_6 双向 与3 脚( NET_A_3)为1 对双绞线,RX_D2-,接RJ45 的6 脚 8 NET_A_2 双向 与4 脚( NET_A_1)为1 对双绞线,TX_D1-,接RJ45 的2 脚 4.3 串口 RS0_TXD/Y _P RS1_TXD/Z_N RS232_RX0 RS232_RX1 J19 2 4 6 8 10 1 RS0_RXD/B_N 3 RS1_RXD/A_P 5 7 RS232_TX0 9 RS232_TX1 3M 30310-5002HB 图 9 串口连接器的原理图和 PCB 定义(IDC-10M 连接器) 位号 器件型号 器件厂家 引脚数 说明 IDC-10M 10 串口连接器,与 JL23-10ZJW 二选一 JL23-10ZJW 通贸 J19 10 与 IDC-10M 二选一,配套连接器型 号:JL23-10TKH(焊线),注意:JL23 的管脚顺序定义与丝印标注不一致 第 20 页 ,共 65 页 LAN-401 中频信号处理模块 图 10 JL23-10ZJW 连接器的引脚定义 丝印标注 对 应 网络名 说明 ( IDC-10M JL23-10ZJW RS485 模式 RS232 模式 )管脚号 的实际管脚号 (默认) 1 10 RS0_RXD/B_N 保留 RXD2 2 5 RS0_TXD/Y_P RS485_A(Y) TXD3 3 9 RS1_RXD/A_P 保留 RXD3 4 4 RS1_TXD/Z_N RS485_B(Z) TXD2 5 8 GND 地 6 3 GND_EARTH 保留 ARM 调 试 用 RS232 串 口 7 7 RS232_TX0 TXD0,接电脑的 RXD ARM 调 试 用 RS232 串 口 8 2 RS232_RX0 RXD0,接电脑的 TXD PS 通过 EMIO 衍射到 PL 的 9 6 RS232_TX1 RS232 串口 TXD1 PS 通过 EMIO 衍射到 PL 的 10 1 RS232_RX1 RS232 串口 RXD1 注: IDC-10M 的 1、2、3、4 脚既可以是 RS232 模式,又可以是 RS422/RS485 模式。串口采用 MAX3160 芯片(U19),模式的配置通过 FPGA 的 PL 脚进行, 管脚定义和原理图请参考本文档相关章节。 第 21 页 ,共 65 页 LAN-401 中频信号处理模块 4.4 GPIO 接口 VDD_5V RT3 0 PL_GPIO_OUT10 PL_GPIO_OUT8 PL_GPIO_OUT6 PL_GPIO_OUT4 PL_GPIO_OUT2 PL_GPIO_OUT0 PL_GPIO_IN1 PL_GPIO_IN0 J21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 3M 30320-5002HB PL_GPIO_OUT11 PL_GPIO_OUT9 PL_GPIO_OUT7 PL_GPIO_OUT5 PL_GPIO_OUT3 PL_GPIO_OUT1 PL_GPIO_IN3 PL_GPIO_IN2 RT4 0 VDD_3.3V 图 11 GPIO 连接器的原理图和 PCB 定义(IDC-20M 连接器) 位号 器件型号 器件厂家 引脚数 说明 IDC-20M 20 GPIO 连接器,与 JL23-20ZJW 二选一 JL23-20ZJW 通贸 J21 20 与 IDC-20M 二选一,配套连接器型 号:JL23-20TKH(焊线),注意:JL23 的管脚顺序定义与丝印标注不一致 图 12 JL23-20ZJW 连接器的引脚定义 丝印标注 对应 JL23-20ZJW 网络名 说明 IDC-20M 管脚号 的实际管脚号 1 20 +5V 输出 可带 200mA 负载 2 10 PL_GPIO_OUT11 +3.3V TTL 电平,输入 3 19 PL_GPIO_OUT10 +3.3V TTL 电平,输入 4 9 PL_GPIO_OUT9 +3.3V TTL 电平,输入 5 18 PL_GPIO_OUT8 +3.3V TTL 电平,输入 6 8 PL_GPIO_OUT7 +3.3V TTL 电平,输出 7 17 PL_GPIO_OUT6 +3.3V TTL 电平,输出 8 7 PL_GPIO_OUT5 +3.3V TTL 电平,输出 9 16 PL_GPIO_OUT4 +3.3V TTL 电平,输出 第 22 页 ,共 65 页 LAN-401 中频信号处理模块 10 6 GND 11 15 PL_GPIO_OUT2 +3.3V TTL 电平,输出 12 5 PL_GPIO_OUT3 +3.3V TTL 电平,输出 13 14 PL_GPIO_OUT0 +3.3V TTL 电平,输出 14 4 PL_GPIO_OUT1 +3.3V TTL 电平,输出 15 13 GND 16 3 PL_GPIO_IN3 +3.3V TTL 电平,输入 17 12 PL_GPIO_IN1 +3.3V TTL 电平,输入 18 2 PL_GPIO_IN2 +3.3V TTL 电平,输入 19 11 PL_GPIO_IN0 +3.3V TTL 电平,输入 20 1 +3.3V 输出 可带 200mA 负载 注:GPIO 的驱动是通过 SN74LV164245(U10)控制的,该芯片共支持 16 个 GPIO,输入/输出的方向和使能可通过 FPGA 的 PL 脚进行,管脚定义和原理图请参 考本文档相关章节。 4.5 复位插针 FPGA_INIT_B FPGA_INIT_B R244 0 PS_SRST_3.3V C361 0.01uF VDD_3.3V C355 0.1uF 4 Y 5 3 VCC GND U30 1 A 2 B SN74LVC1G08DBV R366 4.7K VDD_3.3V FPGA_INIT_3.3V PS_POR_B C362 0.01uF FPGA_INIT_3.3V PS_POR_B VDD_3.3V U3 C363 4 2 VCC RST C51 47uF/10V 0.1uF 1 GND 3 MR IMP811TEUST R31 RTC_RST_N R372 J11 1 2 SIP2 VDD_3.3V 10K 10K 图 13 复位连接器的相关原理图 PS_SRST_3.3V 网络接到 PS 的 A22 管脚(PS_SRST_B_501),用于 ARM 的软件复 位。PS_POR_B 网络接到 PS 的 C23 管脚(PS_POR_B_500),用于 ARM 的上电复位。 第 23 页 ,共 65 页 4.6 JTAG 插针 LAN-401 中频信号处理模块 VDD_3.3V R373 R375 R374 R376 4.7K 4.7K 4.7K 4.7K FPGA_INIT_3.3V VDD_3.3V JTAG_FPGA_TCK JTAG_FPGA_TDO JTAG_FPGA_TDI JTAG_FPGA_TMS FPGA_INIT_3.3V J9 1 2 3 4 5 6 7 2211S-07G 图 14 JTAG 连接器的原理图和 PCB 定义 管脚号 网络名 方向 说明 1 VDD_3.3V 输出 JTAG 下载线参考电压 2 GND - 3 JTAG_FPGA_TCK 输入 连接下载线的 TCK 4 JTAG_FPGA_TDO 输出 连接下载线的 TDO 5 JTAG_FPGA_TDI 输入 连接下载线的 TDI 6 JTAG_FPGA_TMS 输入 连接下载线的 TMS 7 JTAG_INIT_3.3V 输入 连接下载线的 INIT,也可悬空不连接 4.7 LVDS 高速接口 LCD_LVDS_P_D0 LCD_LVDS_N_D0 LCD_LVDS_P_D2 LCD_LVDS_N_D2 LCD_LVDS_P_CLK LCD_LVDS_N_CLK J10 1 31 53 75 97 11 9 13 11 15 13 17 15 19 17 19 2 24 46 68 8 10 10 12 12 14 14 16 16 18 18 20 20 LCD_LVDS_P_D1 LCD_LVDS_N_D1 LCD_LVDS_P_D3 LCD_LVDS_N_D3 FPGA_ERF_GPIO0 FPGA_ERF_GPIO1 R237 0 R235 NL VDD_3.3V VDD_5V ERF8_020 图 15 LVDS 扩展接口(未安装)原理图 该连接器默认为不安装,LVDS 差分信号连接器到 PL 端的 BANK 12(LVDS_25),两个 GPIO 单端信号连接器到 PL 端的 BANK13(LVCOMS 33)。 第 24 页 ,共 65 页 4.8 时钟拓扑 LAN-401 中频信号处理模块 10MHz MOD_REF_P/N ADC_CLK_P/N DAC_CLK_P/N J3 SMA OSC 10MHz CLK_PLL LMK04816 FPGA_CLK_P/N MGT_CLK1_P/N CLKin2 时钟控制 IDT 时钟 PLL 10MHz 100MHz 33.33MHz 26MHz 25MHz PL_100MHz PS_33MHz USB_26MHz ETH_25MHz XC7Z-030 AC13 AD13 100MHz L9 时钟 AUDIO ADAU1361 AC23 B24 USB PHY TUSB1210 ETH PHY DP83867 图 16 整板时钟拓扑关系图 LMK04816 输出的各路时钟(除 MGT_CLK1_P/N 固定 100MHz 频率外),可通 过 XC7Z030 进行编程,一般情况下: MOD_REF_P/N:输出到发送端调制 PLL(ADL4351)的参考频率,默认为 10MHz; ADC_CLK_P/N:输出到 ADC 芯片的工作时钟,频率最大支持 250MHz; DAC_CLK_P/N:输出到 DAC 芯片的工作时钟,频率最大支持 300MHz;DAC 会输出时钟信号 DAC_DATACLK 到 XC7Z030 芯片,PL 端并行数据输出接口的时序 应与 DAC_DATACLK 保持一定的相位关系; FPGA_CLK_P/N:输出到 XC7Z030 的时钟,该时钟一般与 ADC_CLK_P/N 和 DAC_CLK_P/N 有一定的相位关系,故可用该时钟一定移相后作为 ADC 的采样时 钟; SMA(J3)为外时钟输入。通过软件配置,可支持外参考时钟(默认)或 PLL 中直通。 第 25 页 ,共 65 页 4.9 关键器件明细表 器件类别 CLK PLL DAC ADC UART ETH PHY DDR3 FPGA USB PHY AUDIO CAN MOD PLL MOD EPROM 数量 位号 1 U2 1 U7 1 U8 1 U19 1 U23 U39, U41, 4 U46, U47 1 U40 1 U21 1 U17 1 U50 1 U28 1 U28 2 U44, U45 厂家 TI ADI ADI MAXIM TI ISSI XILINX TI ADI TI ADI ADI SPANSION 5. 软件介绍 5.1 FPGA 软件介绍 Fpga 开发使用 Vivado 2015.4,用到 SDK 工具。 5.1.1 FPGA 顶层文件 FPGA 顶层接口定义说明: module system ( input PL_100MHz, //----------------adc-------------------- input [15:0] ADC_CH_A, input [15:0] ADC_CH_B, LAN-401 中频信号处理模块 型号 LMK04816BISQ AD9779ABSVZRL AD9258BCPZ-105 MAX3160EAP+ DP83867ISRGZT IS43TR16128B-125KBLI XC7Z030-1FBG676I TUSB1210BRHB ADAU1361BCPZ ISO1050DW ADF4351BCPZ ADL5375-05ACPZ S25FL128SAGMFI001 第 26 页 ,共 65 页 LAN-401 中频信号处理模块 output ADCSYNC, //multi-adc clock sync.AD9258/AD9268/AD9643 output ADCCSN, //SPI configer interface, output ADCSCLK, output ADCSDIO, //----------------dac-------------------- input DAC_DATACLK, //form DAC output, LVCOMS, max 300MHz output DAC_SYNC_P, //multi-dac sync. output DAC_SYNC_N, output [15:0] DAC_A_D, //LVCOMS, DAC data,max 300MHz output [15:0] DAC_B_D, output DACRESET, input DAC_IRQ, output DAC_CSB, //AD9779A/AD9788 SPI configer interface output DAC_SCK, output DAC_SDIO, //----------------mod-------------------- output MOD_CSN, //ADF4351+ADL5375,SPI configer interface, 400MHz~4.4GHz output MOD_SCK, output MOD_SDIO, input MOD_LD, //----------------opa-------------------- output OPA_CTRL_SCK, //ADC's DC-couple Gain adjusting output OPA_CTRL_SDA, output OPA_CTRL_SLE, //---------------clock------------------ output CLK_CTRL_SCK, //LMK04816,uWire configer interface output CLK_CTRL_SDA, output CLK_CTRL_SLE, input CLK_CTRL_STD, 第 27 页 ,共 65 页 LAN-401 中频信号处理模块 // input FPGA_CLK_P, //norm.90MHz~100MHz, LVDS input FPGA_CLK_N, //----------------pl ddr3------------------- inout [31:0] PL_DDR_DQ, //32bit,512MByte,max 1GByte inout [3:0] PL_DDR_DQS_P, inout [3:0] PL_DDR_DQS_N, output [3:0] PL_DDR_DM, output [13:0] PL_DDR_A, //one chip,max 512MByte, then 32bit,max 1GByte output [2:0] PL_DDR_BA, output PL_DDR_CKE, output PL_DDR_ODT, output PL_DDR_CKP, //max ddr3-800, clk_freq max: 400MHz output PL_DDR_CKN, output PL_DDR_RASN, output PL_DDR_CASN, output PL_DDR_WEN, output PL_DDR_CSN, output PL_DDR_RESET, //----------------audio------------------- output AUDIO_MCLK, //8M/12M/24/26MHz..,ADAU1361/ADAU1761 input AUDIO_DAC_SDAT, //24-Bit Audio Codec output AUDIO_ADC_SDAT, output AUDIO_ADC_LRCLK, output AUDIO_ADC_BCLK, //----------RS232/RS422/RS485------------ output [1:0] PL_UART_TXD, //RS-485/RS-422/232 Driver(MAX3160) input [1:0] PL_UART_RXD, //RS-485/RS-422/232 Driver(MAX3160) output PL_UART_HDPLX, //MAX3160,'0':full-duplex mode; '1':half-duplex mode 第 28 页 ,共 65 页 LAN-401 中频信号处理模块 output PL_UART_485_232, //MAX3160,'0':RS232; '1':RS485 output PL_UART_TXD2, //RS232-TXD, MAX3232 input PL_UART_RXD2, //RS232-RXD, MAX3232 //----------------GPIO-------------------- inout [15:0] PL_INF_GPIO, //3.3V GPIO,Max driver 20mA/pin output [1:0] PL_INF_DIR, //PL_INF_DIR[0] => PL_INF_GPIO[7:0]; //PL_INF_DIR[1] => PL_INF_GPIO[15:8] output PL_INF_OEN, //SN74AVCA164245 OEn //----------------LCD-------------------- output LCD_CLK_P, //LVDS LCD output LCD_CLK_N, output [3:0] LCD_DATA_P, output [3:0] LCD_DATA_N, output [1:0] FPGA_ERF_GPIO, //----------------MGT-------------------- input MGT_CLK0_P,//100MHz input MGT_CLK0_N, input MGT_CLK1_P,//125MHz input MGT_CLK1_N, output [3:0] MGT_TXD_P, //1.25Gbps/2.5Gbps/3.125Gbps(PCIe,SRIO...) output [3:0] MGT_TXD_N, input [3:0] MGT_RXD_P, input [3:0] MGT_RXD_N, //----------------USB-------------------- input USB_OC_N, //Over current output USB_RESET_B, //USB2.0,480Mbps,OTG,TUSB1210 //-------------Timing train--------------- output TRAIN_PHASE_P, //PWM clock training output TRAIN_PHASE_N, 第 29 页 ,共 65 页 //----------------others------------------ input PWR_DOWN_DETECT, input EXT_TRIG, output PL_BELL, output [2:0] PL_LED, //low active //----------------PS--------------------- inout [14:0] DDR_addr, inout [2:0] DDR_ba, inout DDR_cas_n, inout DDR_ck_n, inout DDR_ck_p, inout DDR_cke, inout DDR_cs_n, inout [3:0] DDR_dm, inout [31:0] DDR_dq, inout [3:0] DDR_dqs_n, inout [3:0] DDR_dqs_p, inout DDR_odt, inout DDR_ras_n, inout DDR_reset_n, inout DDR_we_n, inout FIXED_IO_ddr_vrn, inout FIXED_IO_ddr_vrp, inout [53:0] FIXED_IO_mio, inout FIXED_IO_ps_clk, inout FIXED_IO_ps_porb, inout FIXED_IO_ps_srstb ); LAN-401 中频信号处理模块 //+5V power input down detect. 第 30 页 ,共 65 页 LAN-401 中频信号处理模块 5.1.2 PS 和 PL 之间的通信 在 FPGA 的 demo 程序中,PS 和 PL 之间采用 AXI 总线进行通信。 图 17 FPGA 开发界面 从 上 图 的 目 录 树 中 , 我 们 可 看 到 文 件 axi_ps 下 面 包 括 了 3 个 文 件 , 分 别 为”mio_dcm”,”design_1_wrapper”,”cmd_ram”。 design_1_wrapper:包括 ARM 处理器硬核(processing_system7_0),和对外接口为 AXI 接 口(processing_system7_0_axi_periph)。 图 18 design_1 逻辑框图 mio_dcm:是为了时序匹配,processing_system7_0 输出的时钟供给 PL 部分和 AXI 接口使 用。 cmd_ram:是一个双口 RAM,命令空间。axi_ps 文件中,PS 和 PL 采用 AXI 总线接口,根 据地址译码 3 个空间,分别为: 第 31 页 ,共 65 页 LAN-401 中频信号处理模块  AXI 基地址:0x43C0_0000(接收通道,只读数据,用于 ADC 通道)  AXI 基地址:0x43C1_0000(发送通道,只写数据,用于 DAC 通道)  AXI 基地址:0x43C2_0000(cmd 状态通道,前面 16 个地址为只读,后面地址为只写), cmd_ram 用于“cmd 状态通道”的数据缓存。 图 19 AXI 接口读时序 图 20 AXI 接口写时序 AXI_PS 的顶层文件信号介绍如下: axi_ps axi_ps( //PL-PS interface .PS_CLK_O(ps_clk), //output 125MHz,用于 PL 工作时钟 .PS_CLK_200M(ps_clk_200), //output 200MHz,可用于 DDR3 校准时钟 .PS_RST_O( ps_rst ), //output,ARM 复位输出 //adc fifo interface,0x43C0_0000 空间 第 32 页 ,共 65 页 LAN-401 中频信号处理模块 .RX_FIFO_RD(ddc_fifo_rd), //output,接到 ADC 接收 FIFO 的 RD_EN .RX_FIFO_DATA(ddc_fifo_data), //input [31:0],接到 ADC 接收 FIFO 的数据 //dac fifo interface,0x43C1_0000 空间 .TX_FIFO_WE(duc_mem_we), //output,接到 DAC 发送 MEM 的 WR_EN .TX_FIFO_DATA(duc_mem_data), //output [31:0],接到 DAC 发送 MEM 的数据 //cmd & staus interface,0x43C2_0000 空间 .RAM_B_DATA_IN(axi_ram_din), //input [31:0], 状态信息输入到 CMD_RAM .RAM_B_DATA_OUT(axi_ram_dout), //output [31:0],CMD_RAM 的控制信号输出 .RAM_DOUT_ADDR(axi_ram_addr), //output [9:0],状态和命令对应的地址 .RAM_ADDR_UPDATA_FG(), //地址更新标记 //EMIO .GPIO_EMIO_I(axi_emio_i), //input [15:0],ARM 的 EMIO 输入 .GPIO_EMIO_O(axi_emio_o) //output [15:0] ,ARM 的 EMIO 输出 ); 我们注意到,“AXI_PS”顶层文件中 axi_emio_i[15:0]和 axi_emio_o[15:0]信 号,他们分别为 ARM 的 EMIO 输入和 EMIO 输出,由 ARM 程序驱动。在 ARM 端的 bsp 程序中,已加载有该 EMIO 的驱动,EMIO 衍射 PL 端的管脚上,对外 部的硬件可编程芯片进行动态配置。 重配置 芯片信号 FPGA 管脚 网络名 对应 EMIO_GPIO 备注 L7 CLK_CTRL_SLE axi_emio_o [0] 时钟芯片 LMK04816 M7 CLK_CTRL_SDA axi_emio_o [1] M1 CLK_CTRL_SCK axi_emio_o [2] N1 CLK_CTRL_STD axi_emio_i [0] AD9258 ADC 芯 AD9268 片 AD9643 J5 ADCCSN L8 ADCSDIO M8 ADCSCLK K5 ADCSYNC axi_emio_o [3] axi_emio_o [4] axi_emio_o [5] - DAC 芯 AD9779A AF18 DAC_CSB axi_emio_o [6] 第 33 页 ,共 65 页 LAN-401 中频信号处理模块 片 AD9788 调制芯片 ADF4351 运放增益 保留 232 串口 MAX3232 AA23 AF22 AA22 AE18 W16 W18 Y18 W19 AA18 N4 L2 M2 N7 N6 DAC_SDIO DAC_SCK DACRESET DAC_IRQ DAC_SYNC_P DAC_SYNC_N MOD_CSN MOD_SDIO MOD_SCK MOD_LD OPA_CTRL_SLE OPA_CTRL_SDA OPA_CTRL_SCK PL_UART_TXD2 PL_UART_RXD2 axi_emio_o [7] axi_emio_o [8] axi_emio_i [6] axi_emio_o [9] axi_emio_o [10] axi_emio_o [11] axi_emio_i [9] axi_emio_o [14] axi_emio_o [13] axi_emio_o [12] PS 的 UART1 衍射到这个串口 5.1.3 PL 命令状态通道寄存器定义 PS 和 PL 之间采用 AXI 总线进行通信,ARM 端看到的 AXI 总线的基地址为 0x43C0_0000。FPGA 的 demo 程序中,根据地址范围,分别衍射 3 个地址空间(分别为接 收通道地址空间、发送通道地址空间、cmd 状态通道地址空间),下面我们将对 cmd 状态通 道地址空间(地址:0x43C0_0000)的寄存器进行详细描述: 偏移地址 寄存器名 R/W 说明 0x000 FIRMWARE_MODEL[63:31] R 产品型号和配置编号,高 32bit 0x001 FIRMWARE_MODEL[31:0] R 产品型号和配置编号,低 32bit 0x002 FIRMWARE_VERSION[31:0] R 固件版本信息,包括硬件版本号、软 件版本号 0x003 TEMPERATURE_INFO[31:0] R 板卡温度信息,包括 CPU 温度信号和 散热片温度信息 第 34 页 ,共 65 页 LAN-401 中频信号处理模块 0x004 VOLTAGE_INFO[31:0] R CPU 供 电 电 压 监 测 , 1.0V,2.5V,3.3V,1.2V 0x005 MISC_STATUS[31:0] R 多种信号的状态寄存器 0x006 GPIO_STATUS[31:0] R 16bit GPIO 的状态 0x007 UART_PL_STATUS_DATA[31:0] R RS232/RS422/RS485 读数据寄存器 0x008~0x00E R 保留 0X00F PRODUCT_KEY[31:0] R 保留,产品 KEY,随机数 偏移地址 寄存器名 R/W 说明 0x010 GLOBAL_CTRL[31:0] W 全局控制寄存器 0x011 RECEIVE_CH_CTRL[31:0] W 接收通道(ADC)控制寄存器 0x012 TRANSMIT_CH_CTRL[31:0] W 发射通道(DAC)控制寄存器 0x013 TRIG_MODE[31:0] W 触发模式控制寄存器 0x014 GPIO_CONTROL[31:0] W 16bit GPIO 口,包括 GPIO 的方向和使 能设置 0x015 UART_PL_CTRL_DATA [31:0] W RS232/RS422/RS485 控制和数据寄存 器 0x016 W DDC 模式寄存器 0x017 DDC_NCO_PHASE[31:0] W DDC 的 NCO 寄存器 0x018 DDC_SIMUL_PAHSE[31:0] W DDC 的仿真数据值寄存器 0x019 W DUC 模式寄存器 0x01A W DUC 的 NCO 寄存器 0x01B DUC_SIMUL_PAHSE[31:0] W DUC 的仿真数据值寄存器 0x019~0x3FF W 保留 寄存器说明见下面各章节。 5.1.3.1. MISC_STATUS[31:0] 偏移地址:0x005 寄存器名:MISC_STATUS[31:0] R/W 特性: R 第 35 页 ,共 65 页 LAN-401 中频信号处理模块 寄存器位 信号名 默认值 说明 0 adc_or_a 0 ADC 通道 A 溢出标记,’0’正常,’1’:溢出 1 adc_or_b 0 ADC 通道 B 溢出标记,’0’正常,’1’:溢出 2 DAC_IRQ 0 DAC 芯片输出中断标记 3 MOD_LD 0 调制芯片 ADF4351 输出数字状态标记 4 CLK_CTRL_STD 0 时钟芯片 LMK04816 输出数字状态标记 5 USB_OC_N 0 USB 电流过流标记 6 PWR_DOWN_DE 0 +5V 电源电压标记。’0’:正常,’1’:电压偏低 TECT; 7 EXT_TRIG 0 外部触发接口,SMA J4 连接器 [15:8] 0 保留 16 ddr3_init_err; 0 PL 外部 DDR3 的初始化错误标记 17 ddr3_calib_comple 0 PL 外部 DDR3 的校准完成标记 te [31:18] 0 保留 5.1.3.2. GPIO_STATUS [31:0] 偏移地址:0x006 寄存器名:GPIO_STATUS [31:0] R/W 特性: R 寄存器说明:状态寄存器 寄存器位 信号名 默认值 说明 [7:0] pl_gpio_data_i[7:0 0 U10(SN74LV164245)GPIO 驱动器,低 8bit 读回 ] 的值; [15:8] pl_gpio_data_i[15: 0 U10(SN74LV164245)GPIO 驱动器,高 8bit 读回 8] 的值; 16 pl_gpio_dir0 0 U10(SN74LV164245)的 DIR0 脚状态 17 pl_gpio_dir1 0 U10(SN74LV164245)的 DIR1 脚状态 [30:18] 0 保留 31 pl_gpio_oen 0 U10(SN74LV164245)的 OE 脚状态 第 36 页 ,共 65 页 LAN-401 中频信号处理模块 5.1.3.3. UART_PL_STATUS_DATA[31:0] 偏移地址:0x007 寄存器名:UART_PL_STATUS_DATA [31:0] R/W 特性: R 寄存器说明:串口状态寄存器 寄存器位 信号名 默认值 说明 [7:0] uart_rx0_data[7:0] 0 串口 0 接收 FIFO(深度为 16 个字节)数据输出 [15:8] uart_rx1_data[7:0] 0 串口 1 接收 FIFO(深度为 16 个字节)数据输出 16 uart_rx0_active 串口 0 接收 FIFO 中有数据(至少一个字节),PS 端 可读取接收 FIFO 中的数据 [17:17] 0 保留 0 串口 0 发送 FIFO 满标记,若该 bit 为’1’,暂时不能 20 uart_tx0_full 向发送 FIFO 写数 [23:21] 0 保留 0 串口 1 接收 FIFO 中有数据(至少一个字节),PS 端 24 uart_rx1_active 可读取接收 FIFO 中的数据 [27:25] 0 保留 0 串口 1 发送 FIFO 满标记,若该 bit 为’1’,暂时不能 28 uart_tx1_full 向发送 FIFO 写数 [31:29] 0 保留 5.1.3.4. GLOBAL_CTRL [31:0] 偏移地址:0x010 寄存器名:GLOBAL_CTRL [31:0] R/W 特性: W 寄存器说明:全局控制寄存器 寄存器位 信号名 默认值 说明 [14:0] 0 保留 15 trig_edge_selc 0 外部触发源选择,’0’:下降沿触发,’1’上升沿触发 16 PL_LED[1] 0 该位连接到 LED1 的阴极,位号 D6。低电平 LED 亮 17 PL_LED[2] 0 该位连接到 LED2 的阴极,位号 D5。低电平 LED 亮 第 37 页 ,共 65 页 LAN-401 中频信号处理模块 18 PL_BELL 0 连接器到蜂鸣器驱动三极管的基极 19 0 保留 20 ADCSYNC 0 ADC 芯片(AD9258)的 SYNC 信号 21 0 保留 22 dac_sync 0 DAC 芯片(AD9779)的 SYNC 信号 23 dac_reset 0 DAC 芯片(AD9779)的 Reset 芯片 [31:24] 0 保留 5.1.3.5. RECEIVE_CH_CTRL[31:0] 偏移地址:0x011 寄存器名:RECEIVE_CH_CTRL[31:0] R/W 特性: W 寄存器说明:接收通道(ADC)控制寄存器 寄存器位 信号名 默认值 说明 0 ddc_fifo_reset 0 PL 内部有一个 64K*32bit 的 FIFO,用于缓存双通的 ADC 数据(A 通道 16bit,B 通道 16bit)或 DDC 输 出的 IQ 数据(IQ 各 16bit)。由于 ADC 数据或 DDC 数据速率很快就把 FIFO 充满了,故每次读取 FIFO 数 据时,需要发送 ddc_fifo_reset 一个高脉冲,用于复位 该 FIFO,以便保证读取的 64K*32bit 数据为连续数据 1 adc_ddc_selct 0 ‘0’:PL 内部的 FIFO 输入为 ADC 数据源(A 通道 16bit, B 通道 16bit);‘1’:PL 内部的 FIFO 输入为 DDC 输 出的 IQ 数据(IQ 各 16bit); [3:2] ddc_soure_path 0 若 adc_ddc_selct=’1’, 则 使 能 DDC 路 径 , ddc_soure_path 才有意义。“ddc_soure_path”=”00”: 使用 A 通道的 ADC 数据进行 DDC;“ddc_soure_path” =”01” : 使 用 B 通 道 的 ADC 数 据 进 行 DDC ; “ddc_soure_path”=”10”或”11”:使用内部模拟信号 源进行 DDC; [31:4] 0 保留 第 38 页 ,共 65 页 5.1.3.6. TRANSMIT_CH_CTRL[31:0] LAN-401 中频信号处理模块 偏移地址:0x012 寄存器名:TRANSMIT_CH_CTRL[31:0] R/W 特性: W 寄存器说明:发射通道(DAC)控制寄存器 寄存器位 信号名 默认值 说明 0 duc_mem_reset 0 PL 内部有一个 64K*32bit 的 MEM,用于缓存 PS 通 过 AXI 配置的 DAC 数据。duc_mem_reset 信号一个 高脉冲,即可对该 MEM 的地址进行复位; [2:1] dac_sim_selec 0 ‘00’:PL 内部的产生的模拟 IQ 信号,输出频率为 “DUC_SIMUL_PAHSE”寄存器值,’01’:使用 DDC 通道输出的 IQ 数据接到 DAC 的输入口,该频率值与 模拟信号输入频率、内部本振 DDC_NCO_PHASE 设 置值有关。“10”:通道 A 为最大值,通道 B 为最小 值;”11”:DAC 循环输出 PS 配置的 MEM 数据; [15:3] 0 保留 [31:16] duc_loop_play_len 1023 PS 通过 AXI 总线把 DAC 待发送的数据送到 duc_mem (32bit 宽*64K 深),即上位机一次性最大发送的数据 量为 32bit 宽*64K 深(当然也可比这个值小)。对这 个 MEM 的地址复位采用 duc_mem_reset 信号。播放 时,PL 程序对这个 MEM 进行循环重复播放,重复播 放的数据长度由 duc_loop_play_len[15:0]来确定。例: 上 位 机 传 输 了 32bit*1024 的 数 据 到 MEM , duc_loop_play_len[15:0]=999,则表示循环播放 MEM 中的 1000 个数据,地址从 0~999 5.1.3.7. GPIO_CONTROL[31:0] 偏移地址:0x014 寄存器名:GPIO_CONTROL[31:0] 寄存器说明:GPIO 控制寄存器 寄存器位 信号名 默认值 说明 R/W 特性: W 第 39 页 ,共 65 页 [7:0] [15:8] 16 pl_gpio_data_o[7: 0 0] pl_gpio_data_o[15 0 :8] pl_gpio_dir0 0 17 pl_gpio_dir1 0 [30:18] 0 31 pl_gpio_oen 0 LAN-401 中频信号处理模块 U10(SN74LV164245)GPIO 驱动器,低 8bit 控制 值; U10(SN74LV164245)GPIO 驱动器,高 8bit 控制 值; U10(SN74LV164245)的 DIR0 脚控制值,’0’: GPIO[7:0]的方向为输入,’1’:GPIO[7:0] 的方向 为输出 U10(SN74LV164245)的 DIR0 脚控制值,’0’: GPIO[15:8]的方向为输入,’1’:GPIO[15:8] 的方 向为输出 保留 U10(SN74LV164245)的 OE 脚控制。 5.1.3.8. UART_PL_CTRL_DATA [31:0] 偏移地址:0x015 寄存器名:UART_PL_CTRL_DATA [31:0] R/W 特性: W 寄存器说明:PL 串口(RS232/RS485/RS422)控制寄存器 寄存器位 信号名 默认值 说明 [7:0] uart_tx0_data[7:0] 0 PL 串口 0 发送数据(串口 0 的 FIFO 为 16,即一次最 多可发送 16 个字节,每一字节发送之前需要判断 uart_tx0_full) [15:8] uart_tx1_data[7:0] 0 PL 串口 1 发送数据(串口 1 的 FIFO 为 16,即一次最 多可发送 16 个字节,每一字节发送之前需要判断 uart_tx1_full 标记) 16 uart_tx0_we 0 产生一个脉冲信号,uart_tx0_data[7:0]才能写到串口 0 的 FIFO 中 17 uart_rx0_rd 0 当 uart_rx0_active 有效时,表示串口接收 FIFO 中有 数据。产生一个脉冲信号后,uart_rx0_data[7:0]才有 效 第 40 页 ,共 65 页 [19:18] 0 20 uart_tx1_we 0 21 uart_rx1_rd 0 [23:22] 0 [25:24] uart_mode[1:0] 00 [27:26] uart_baud_sel[1:0] 00 [30:28] 0 LAN-401 中频信号处理模块 保留 产生一个脉冲信号,uart_tx1_data[7:0]才能写到串口 1 的 FIFO 中 当 uart_rx1_active 有效时,表示串口接收 FIFO 中有 数据。产生一个脉冲信号后,uart_rx1_data[7:0]才有 效 保留 PL 串口模式设置。“00”:两个独立的 RS232 串 口;”01”:RS485 串口,只有串口 0 有效;“10” RS422 串口,只有串口 0 有效;串口采用”8-N-1”的模式。 串口波特率选择。 “00”:9600 “01”:38400 “10”:115200 “11”: 614400 保留 5.1.3.9. DDC_NCO_PHASE[31:0] 偏移地址:0x017 寄存器名:DDC_NCO_PHASE[31:0] R/W 特性: W 寄存器说明:DDC 的 NCO 寄存器 寄存器位 信号名 默认值 说明 [31:0] ddc_nco_data[31: 0x38E3 若使用 DDC 功能时(adc_ddc_selct=’1’),设置该值 0] 8E39 来控制内部 NCO 的相位,即 NCO 输出的频率。Eg. 若 想 要 NCO 输 出 频 率 20MHz , 则 该 值 为 (20MHz/90MHz)*232=0x38E38E39(注:90MHz 表示 时钟频率值) 第 41 页 ,共 65 页 LAN-401 中频信号处理模块 5.1.3.10. DDC_SIMUL_PAHSE[31:0] 偏移地址:0x018 寄存器名:DDC_SIMUL_PAHSE[31:0] R/W 特性: W 寄存器说明:DDC 的仿真数据值寄存器 寄存器位 信号名 默认值 说明 [31:0] ddc_simulata_data 0x3333 若使用 DDC 功能(adc_ddc_selct=’1’)且选择为模拟 [31:0] 3333 源(ddc_soure_path=”10”或”11”)时,设置该值来控 制内部仿真信号的相位,即 SIMULATA 输出的频率。 Eg.若想要产生 20MHz 仿真频率给 DDC 的输入端, 则 该 值 为 (20MHz/90MHz)*232=0x38E38E39 ( 注 : 90MHz 表示时钟频率值) 5.1.3.11. DUC_SIMUL_PAHSE[31:0] 偏移地址:0x01B 寄存器名:DUC_SIMUL_PAHSE[31:0] R/W 特性: W 寄存器说明:DDC 的仿真数据值寄存器 寄存器位 信号名 默认值 说明 [31:0] duc_simulata_data 0x05B0 TRANSMIT_CH_CTRL[31:0]的[2:1]选择”00”时有 [31:0] 5B05 效,设置该值来控制内部仿真信号的输出到 DAC 频 率。Eg.若想要产生 2MHz 仿真频率给 DDC 的输入端, 则 该 值 为 (2MHz/90MHz)*232=0x05B05B05 ( 注 : 90MHz 表示时钟频率值) 5.2 上位机 QT 开发环境 上位软件支持 TCP/UDP 数据接收并显示两路 AD 数据波形、DA 数据下发,同时支持硬件 固件升级,GPIO 控制和用户自行硬件参数配置。上位软件使用 Qt 编写,版本为 Qt5.7,编译器 为 mingw,编译环境为 win7 64 位。 第 42 页 ,共 65 页 5.2.1 软件安装 LAN-401 信号处理模块上位机软件安装步骤: STEP1:打开安装文件 lan401_setup.exe LAN-401 中频信号处理模块 图 21 软件安装界面 STEP2:选择程序安装路径: 图 22 软件安装界面 STEP3:安装完成,即可马上运行软件,并在桌面上将生成 LAN401 图标。 第 43 页 ,共 65 页 LAN-401 中频信号处理模块 图 23 软件安装界面 Note:若您曾已安装过 LAN-401 软件,则需要先卸载,且删除安装目录下的所有文件,再 进行新的 LAN-401 软件安装。 5.2.2 软件使用 上位软件用于显示 AD 数据和进行配置硬件参数。界面如图: 图 24 软件主界面图 第 44 页 ,共 65 页 5.2.3 功能介绍 LAN-401 中频信号处理模块 5.2.3.1. 主界面部分 数据接收: 当软件运行后自动连接 LAN-401 信号处理模块上服务器,在连接成功后界面上将会显示“设 备已连接”,自动开始采集 AD 数据,点击“显示数据”则波形显示。软件支持鼠标滚轮放大缩 小波形,按住鼠标左键可以图像拖动视角。 NOTE:当网络出现不通或者处理模块未正常工作时,软件将会一直处于连接状态,并在软 件左下角显示当前连接状态。若出现此问题,请参见“网络不能连接”的故障处理方法章节。 显示图像与图像暂停: 当成功连接到处理板后,软件默认为不显示数据图像,需要点击主界面右下角“显示数据” 按钮显示采集到的 AD 数据,同时按钮将变为“暂时显示”,再次点击后将暂停当前显示,以便 观察数据。 数据保存: 处理板支持信号数据保存功能,在点击显示图像后,上位机开始接收数据。此时,点击主 界面右下角“数据保存”按钮,会弹出文件夹浏览器,选择想保存的目录,在用户选择的目录下 生成“ad 通道_data_date.dat 数据文件(ad 通道为 ad1 或 ad2,date 为具体日期和时间)”,点击 “结束保存”按钮。如图: 图 25 数据显示和数据保存界面 第 45 页 ,共 65 页 LAN-401 中频信号处理模块 图 26 显示文件保存 DA 数据下发 中频信号处理模块支持 AD 数据下发,在界面上首先选择需要发送的 DA 端口,然后点击 “选择 DA 数据文件”选择要发送的 DA 数据文件,在文件框中点击确认下发,如图: 图 27 DA 发送界面图 第 46 页 ,共 65 页 5.2.3.1.1. 上位机更新 PL 端程序 LAN-401 中频信号处理模块 UD LAN-401 支持用户对 PL 部分再编程,通过上位软件可以下载并更新 PL 程序。在成功 与处理板连接后,用户可以通过点击“更新固件”按钮选择将要下载到处理板的“system.bit”文 件,并把该 PL 文件写入板子上的 FLASH。在更新固件成功后,上位软件将会提示是否重启处 理板,执行更新后的配置。 图 28 system.bit 文件选择 注意:固件的文件格式为.bit 文件,文件名必须为 system.bit。 5.2.3.1.2. GPIO 接口控制 LAN-401 信号处理模块支持 16 位 GPIO 控制。用户点击主界面“GPIO 控制”按钮可以打 开 GPIO 控制界面,用户可以通过“读取 GPIO”按钮实时获取 GPIO 值。在修改 GPIO 值后, 用户通过“写入 GPIO”按钮将修改后的 GPIO 值(值为 1 或 0)下发到中频信号处理模块中。GPIO 控制界面,如图: 图 29 GPIO 控制界面图 第 47 页 ,共 65 页 5.2.3.2. 系统设置部分 系统设置包含系统配置和芯片配置两个部分,如图: LAN-401 中频信号处理模块 图 30 系统设置图 系统设置分为上位软件配置区域(左边区域)、芯片配置区域(中间区域)、处理版参数配 置区域及 AXI 扩展功能区域(右边区域)。 上位软件配置区域为配置 IP 地址、设置接收板卡数据的通信协议、一个屏幕显示的点数设 置 3 个功能。UD LAN-401 信号处理模块数据支持 TCP/UDP 接收数据,用户可以通过单选按钮 选择。显示数据个数为软件界面上显示的数据个数,显示点数与采样率有关,可适当设置该值, 以便观测界面波形。 芯片配置区域配置板载的芯片参数,主要包括时钟芯片(LMK04816)、DAC 芯片(AD9779)、 ADC 芯片(AD9258)、上变频调制芯片(ADF4351)。 处理版参数配置区域功能为设置 PL 端数字下变频(DDC)和数字上变频(DUC)的一些参数, 接收和发送通道的控制参数等。 AXI 扩展功能区域可以读取或写入下拉列表中选择的寄存器数据,并在界面中显示。比如 读取 0x0 寄存器: 1)选择读寄存器下拉列表; 2)选中 0x0 选项; 3)点击读取按钮。 则会在下面的编辑框中显示 0x0 寄存器当前值。 第 48 页 ,共 65 页 5.2.3.2.1. 板卡 IP 地址设置和修改 LAN-401 中频信号处理模块 UD LAN-401 信号处理模块的默认 IP 地址为 192.168.2.230,而根据每个用户实际的网络使 用情况不同,可能对处理板的 IP 地址进行修改。在“系统设置”界面中,左边上位软件配置区 域可修改 IP 地址。修改步骤: STEP1:确保当前 IP 能正常和上位软件通信; STEP2:设置您想要修改的目标 IP 地址,并点击“保存配置”;IP 地址将写入到信号处理 模块的 FLASH 区域中; STEP3:断电重启一次信号处理模块,板卡即为新的 IP 地址; STEP4:修改上位机的 IP 地址,使其与处理模块的 IP 地址为同一网段(但不是同一 IP 地 址)。 5.2.3.2.2. 板载芯片参数动态配置 UD LAN-401 支持用户按照不同使用情况自主配置硬件参数,可配置的芯片包括: LMK04816 时钟芯片,ADF4351 时钟芯片,AD9779 DA 芯片,AD9258 AD 芯片。 芯片配置文件格式如下: 图 31 AD9258 配置文件 AD9258 的各寄存处的值,请参考 http://www.analog.com/ad9258.html,该芯片的 datasheet。 第 49 页 ,共 65 页 LAN-401 中频信号处理模块 图 32 AD9779 配置文件 AD9779 的各寄存处的值,请参考 http://www.analog.com/ad9779.html,该芯片的 datasheet。 图 33 LMK04816 配置文件 LMK04816 的各寄存处的值,请参考 http://www.ti.com/product/lmk04816,该芯 片的 datasheet。由于该芯片配置比较复杂,TI 公司提供了评估板配置软件,可在 TI 官网上进行 下载。 第 50 页 ,共 65 页 LAN-401 中频信号处理模块 图 34 ADF4351 配置文件 ADF4351 的各寄存处的值,请参考 http://www.analog.com/adf4351.html 该芯片的 datasheet。由于该芯片配置比较复杂,ADI 公司提供了评估板配置软件 进行下载。 ,可在 ADI 官网上 可配置 LMK04816 时钟芯片、ADF4351 时钟芯片、AD9779 DA 芯片及 AD9258 AD 芯片的 文件修改有两种方法: A、 根据光盘中提供的配置文件(*.txt),直接修改后保存文件; B、 使用 LAN-401 上位软件“文件加载”对应配置文件,在上位软件的窗口中直接进行修改 (修改文本框中的值,软件会自动修改和保存*.txt 配置文件); 文件修改完成后,点击 LAN-401 上位软件中 “文件加载”按钮,选择并加载将要发送的配置 文件,选择将要发送的目标芯片,点击发送。待芯片配置成功后主界面正下面将会显示“更新 配置成功!”,否则将会提示“更新配置失败!”。 注意:发送按钮仅仅临时配置芯片,不做保存处理(即只是重新配置了对应芯片,而并没 有烧写到信号处理板的 ROM(flash)中)。当然,用户也可以使用“保存”按钮为发送配置的同时 保存配置文件到处理板的 ROM(flash)中,以便于再次开电时永久有效,以便再次上电后参数自 动加载。 5.2.3.2.3. PL 收发通道参数配置 “参数设置的”右边处理版参数配置区域为 PL 端数字下变频(DDC)和数字上变频(DUC) 的参数配置。做数字下变频时,输入信号(A 通道、B 通道或内部产生的模拟信号)与数字本 振(NCO)频率相乘,混频到 0 中频 IQ 数据,然后再分别低通滤波。 “DDC 混频频率值”:即为数字本振(NCO)的频率; “DDC 模拟频率值”:即为内部产生的模拟信号的频率; 板载软件的默认配置为: 第 51 页 ,共 65 页 LAN-401 中频信号处理模块 信号输入频率中频为:70MHz; ADC 采样时钟频率:90MHz; NCO 频率:20MHz; 仿真信号的频率为:18MHz; 内部的选择开关为:ddc_soure_path[1:0] =“11”,使用内部模拟数据进行下变频; 下变频最终输出的等效采样率为:Fs/8/1.4=8MHz 下变频最终输出的等效采样率为:Fs/8=11.25MHz 故上位软件波形显示频率为 2MHz。 5.2.4 上位软件 QT 的修改和开发 上层软件功能主要是实现下层芯片配置,信号处理模块其它参数配置,数据读写以及与上 位界面软件通信。信号处理模块默认上层软件上默认开启了两个 TCP 服务器和一个 UDP 服务 器。其中一个 TCP 服务器和一个 UDP 服务器用于数据发送到上位界面软件,一个 TCP 服务器 用于接收命令和软件,以及处理命令。 当上位软件成功连接信号处理板后,服务器软件将会打印出连接信息: 图 35 连接服务器后的串口信息 上位软件 QT 源代码框架如图: 图 36 上位软件结构 第 52 页 ,共 65 页 LAN-401 中频信号处理模块 1. commom.cpp 和 common.h 文件包含各个文件可能使用到的宏定义以及方法,如文件浏 览功能。 2. gpiocontrol.cpp 和 gpiocontrol.h 文件为 gpio 控制类,响应 gpio 控制界面操作,主要函数: void GPIOControl::writeGPIO();点击写入 GPIO 按钮调用,实现将数据写入 GPIO。 void GPIOControl::readGPIO();点击读取 GPIO 按钮调用,实现读取 GPIO 数据到界面中。 3. main.cpp 为程序主函数,其中包括程序入口,以及打印日志功能函数。 4. network.cpp 和 network.h 函数是网络服务类函数,连接信号开发板和发送命令或数据。 其中实现了三个通信实例,一个用于 tcp 命令收发、文件发送(命令和文件发送不能同 时进行),一个为 tcp 数据接收,另一个为 udp 数据接收。主要函数包括: void Network::connectToServer(void);用于连接到服务器; int Network::getConnectionState(void);获取当前网络状态,若未与服务器连接则调用 reconnectToServer();函数重新连接到服务器。(注意:不能检测到网线拔除的情况)当有 数据接收会调用接收函数,并将数据传递到主界面类进行处理。 5. qcustomplot.cpp 和 qcustomplot.h 文件是第三方库,用于显示数据波形。(刷新 ui 时间间 隔为 2ms 左右) 6. systemconfig.cpp 和 systemconfig.h 文件为系统设置类,主要函数包括: void SystemConfig::readConfig(void);读取配置文件,并显示到界面; void SystemConfig::saveHostConfig(void);保存配置到配置文件; void SystemConfig::loadFile(void);加载芯片配置文件,并显示到界面。当界面上的芯片 配置数据被修改后自动调用 saveText();方法,保存配置; void SystemConfig::sendConfig();点击芯片配置发送按钮调用,发送芯片配置到处理版。 保存为临时文件,用于调试使用,掉电丢失。 void SystemConfig::saveConfig();点击芯片配置保存按钮调用,保存芯片配置文件到处理 版 FLASH 中。每次上电读取。 void SystemConfig::setMuxVal();设置 DDC 混频频率; void SystemConfig::setSimVal();设置 DDC 模拟信号频率; void SystemConfig::setWaveType(int type);设置接收数据类型为 ADC 还是 DDC。 void SystemConfig::setWaveSource(int type);当数据类型为 DDC 时,设置 DDC 源。 void SystemConfig::on_btnAxiRead_clicked();读取选中的 AXI 寄存器数据。 第 53 页 ,共 65 页 LAN-401 中频信号处理模块 void SystemConfig::on_btnAxiWrite_clicked();写入数据到选中的 AXI 寄存器中。 void SystemConfig::on_btn_duc_sim_clicked();设置 DUC 模拟频率。 void SystemConfig::on_comBox_sim_selec_currentIndexChanged(int index);选择 DAC 输 出类型。 7. widget.cpp 和 widget.h 为主界面类文件,实现主界面上的事件处理,以及主界面的设置, 数据的显示。主要函数包括: void Widget::readConfig(void);读取配置,并连接配置修改信号,当有配置信号修改时, 通过对应的函数,发送处理好的数据帧。 void Widget::initQCustomPlot(void);初始化波形显示控制,设置显示阈值,一个控件的外 观样式。 void Widget::initBackground(void);初始化显示背景。 void Widget::initSlot(void);初始化一些信号槽函数的连接。 void Widget::initNetwork(void);初始化 checkNetState 函数。 void Widget::checkNetState(void);检测网络连接状态,通过定时器,每 100ms 检测一次 网络状态,当状态改变时,显示到界面上。 void Widget::updateFirmware(void);点击更新固件按钮调用,用于更新固件。 void Widget::chooseFileToSend(int type);发送文件,需要发送文件的函数会调用此函数。 void Widget::readGPIO();读 GPIO 的底层接口,gpio 控制类发送读信号,主函数类接收 到信号并发送读命令。相同的方法还有: void Widget::writeGPIO(QByteArray data); void Widget::setMuxVal(quint64 val); void Widget::setSimVal(quint64 val); void Widget::setWaveType(int type); void Widget::setWaveSource(int type); void Widget::readAxi(QByteArray& read_reg_data); void Widget::writeAxi(QByteArray& write_reg_data); void Widget::set_duc_sim(QString& str); void Widget::dac_sim_selec(int index); void Widget::slotStop();点击图像暂停调用,暂停图像数据显示。 第 54 页 ,共 65 页 LAN-401 中频信号处理模块 void Widget::saveData();保存数据函数,将显示数据保存到用户选择的文件夹中,文件 以 ad 通道号_data_日期.dat 格式保存 (如:ad2_data_2017_04_13_21_57_38.dat) 。 void Widget::handleCmd(QByteArray cmdRecv);在界面上显示命令的返回状态。 void Widget::showUdpData(QByteArray dataRecv);处理并显示通过 udp 方式接收到的数 据;void Widget::showTcpData(QByteArray dataRecv);处理并显示通过 tcp 方式接收到 的数据。 8. gpiocontrol.ui、systemconfig.ui 和 widget.ui 分别为:GPIO 控制界面文件,系统配置界 面文件,主界面文件。 6. PS 部分开发 UD LAN-401 提供完全开放的环境,支持用户第二次开发,除了 PL 部分,PS 部分支持用 户自主对板载芯片驱动进行开发,LAN-401 默认使用为 Xilinx 官方内核 linux 4.6.0-xilinx,交叉 编译工具为 Sourcery CodeBench Lite 2011.09-50,gcc 版本号 4.6.1。 PS 端移植需要的 u-boot,linux 内核文件可在 xilinx 官网上下载。 6.1 板载 NOR FALSH 存储空间 LAN-401 信号处理板上两片 QSPI FALSH 芯片,总共有 32M 的内存空间。其中 31M 用于保存 boot、kernel 和 FPGA 文件,另有 1M 空间用于保存用户配置信息。由于根文件系 统采用 ramdisk 文件类型,掉电后在程序配置将会丢失,所以处理板上划分出 1M 的控件用 于保存用户将要保存的配置信息。 用户空间在系统启动后自动挂载到/mnt/data 目录下,数据保存到此路径下掉电后将不 会丢失,如果保存在其他路径下,掉电后数据将会丢失。 6.2 底层驱动程序的更新 有时,我们可能需要更新底层的 PL 文件(PL 端的逻辑更新)、linux 文件系统、linux 设备树(PS 端 linux 挂载新设备后才更新),甚至 linux 内核(一般不更新)或 u-boot 文件 (一般不更新)。 6.2.1 PL 烧写和更新 PL 文件即可以通过上位软件来更新(参考“5.2.3.1.1 上位机更新 PL 端程序”),也可通过 调试串口输入更新命令来进行更新。 第 55 页 ,共 65 页 LAN-401 中频信号处理模块 Note:推荐使用“5.2.3.1.1 上位机更新 PL 端程序”的方法来更新 PL 烧写文件“system.bit”; 若使用调试串口在 boot 环境下更新 PL 文件,则需要准备:a、tftp 服务器软件;b、网线; c、串口调试软件(建议使用 Xshell 串口软件);d、串口线。 更新步骤:  STEP1:连接好串口线、网线。  SETP2:打开串口工具,设置波特率为 115200,8-N-1 模式;  SETP3:打开 tftp 服务器(在 boot 下,处理板的 IP 地址默认为 192.138.2.55;处理板 默认 tftp 服务器 ip 为 192.168.2.138,必须让电脑 IP 和 TFTP 服务器 IP 保持一致), windows 操作系统下,TFTP 服务器我们可选用 tftpd32 工具软件: 图 37 FTP 下载工具界面  SETP4:tftpd32 软件中,通过“Browse”按钮选择文件所在的文件夹,选择后通过“Show Dir”按钮可以查看文件夹内容,选择 system.bit 文件: 图 38 选择 system.bit 文件 第 56 页 ,共 65 页 然后点击“Close”按钮。  SETP5:上电,串口显示如下 boot 信息: LAN-401 中频信号处理模块 图 39 boot 启动信息 在 Hit any key to stop autoboot 时,请在 3 秒内按下“回车”键。  SETP6:在 udata-boot>后面我们输入“run plupdate”命令,进行 system.bit 文件的烧 写: 图 40 PL 文件烧写 第 57 页 ,共 65 页 LAN-401 中频信号处理模块 6.2.2 文件系统烧写和更新 文件系统文件名为 uramdisk.image.gz,若用户需要更新文件系统,则在 boot 环境下,运 行内核烧写命令:run ramdiskupdate,步骤参考“6.2.1 PL 烧写和更新”章节。 图 41 文件系统烧写 6.2.3 设备树烧写和更新 设备树文件名为 devicetree.dtb,若用户需要更新设备树,则在 boot 环境下,运行内核烧 写命令:run dtupdate,步骤参考“6.2.1 PL 烧写和更新”章节。 图 42 设备树烧写 第 58 页 ,共 65 页 LAN-401 中频信号处理模块 6.2.4 内核烧写和更新 内核文件为 uImage,若用户需要更新内核,则在 boot 环境下,运行内核烧写命令:run kernelupdate,步骤参考“6.2.1 PL 烧写和更新”章节。 图 43 linux 内核烧写 6.2.5 BOOT 烧写和更新 u-boot 文件为 boot.bin,若用户需要更新 u-boot,则在 boot 环境下,运行 boot 烧写命令: run bootupdate,步骤参考“6.2.1 PL 烧写和更新”章节。 图 44 u-boot 烧写 6.3 驱动程序的开发 驱动程序主要分为两类,一类为芯片驱动,包括:ADF4351,AD9779,AD9258 和 LMK04816 第 59 页 ,共 65 页 LAN-401 中频信号处理模块 四种芯片;另一类为 PS 与 PL 通信驱动,名为 gpio,因为 PS 与 PL 端通信主要通过 AXI 总线 映射出的内存地址,如同 linux 操作 gpio 一样,主需要对相应的地址进行读写即可。 gpio 驱动为最重要的部分,为 PS 和 PL 之间的桥梁,通过将 PL 给出的具体的物理地址转 换为虚拟地址,然后就可以通过调用 linux 中标注函数进行操作如读操作:writel()和 readl(),这 两个函数都是以 32 位数据进行操作的。在信号处理板定义了三个物理空间,在第五章有所叙述, 主要地址为:ADC 空间,地址:0x43C00000;DAC 空间,地址:0x43C10000 和用户空间,地 址:0x43C20000。其中前两个空间大小为 64KB,用户空间大小为 1KB。所有的操作寄存器都 在用户空间上面,详情参照 5.1.3 章节。 由于文件系统采用 ramdisk 类型,所以无法保存用户在系统中修改,所以如果需要替换驱动 程序,需要将程序拷贝到根文件系统文件夹中,然后重新烧写根文件系统就可以实现程序的替 换。 6.4 服务器接口 信号处理板上搭建了两个 TCP 服务器与一个 UDP 服务器,其中一个 TCP 服务器作为命令 与文件服务器,用于接收上位软件下发的命令与文件。主要命令接口: 1. 信号处理板重启命令:reboot 2. 更新 PL 命令:update 发送文件具体步骤,几个内容需要分开发送: (1) 发送文件大小 (2) 发送文件名 (3) 发送文件内容 如(以下为参考步骤,实际发送函数与发送方法与此不同): 步骤一:发送更新命令 tcp_write(“update”);。 步骤二:发送文件大小 tcp_write(“123456”);。 步骤三:发送文件名 tcp_write(“system.bit”);注意更新 PL 的文件名必须为 system.bit。 步骤四:发送文件内容。 当文件接收失败会返回“FILERECVERR”,接收成功后返回“FILERECV”;更新失败返 回“NOUP”,更新成功返回“UP”。 3. 临时配置芯片命令:cc_adf4351,cc_lmk04816,cc_ad9779,cc_ad9258 永久配置芯片命令:scc_adf4351,scc_lmk04816,scc_ad9779,scc_ad9258 第 60 页 ,共 65 页 LAN-401 中频信号处理模块 发送文件,方法同命令 2。 当文件接收失败会返回“FILERECVERR”,配置成功后返回“CONFIG”,配置失败返回 “CON_ERR”。 4. 使用 tcp 模式发送数据:tcp 5. 使用 udp 模式发送数据:udp 6. 写 GPIO:gpio_write 发送具体 gpio 值 7. 设置 ip 地址:ip_addr 8. 设置 DDC 混频频率:mux_频率值,如:mux_12345678 9. 设置 DDC 模拟频率:sim_频率值,如 sim_12345678 10. 设置 DDC 数据源:wavetype_adc 设置为 adc,wavetype_ddc 设置为 ddc 11. 设置 DDC 数据源:wavesrc_2 设置为通道 1 数据,wavesrc_6 设置为通道 2 数据, wavesrc_10 设置为模拟数据 12. 读取 GPIO:gpio_read 13. 写入 GPIO:gpio_write 14. 读取 AXI:axi_read 15. 写入 AXI:axi_write 16. 读 DDR3 自检状态:read_ddr3_stat 17. 设置 DUC 模拟频率:duc_sim_频率值,如:duc_sim_12345678 18. 设置 DAC 输出路径:dac_selec_0 设置为模拟源,dac_selec_1 设置为 DDC 源,dac_selec_2 设置为最大值,dac_selec_3 设置为最小值 7. 常见故障处理方法 7.1 网络不能连接 若设备启动后,上位软件无法连接到处理板,首先确定网络是否畅通。 故障排查步骤: A、确保本机的 IP 地址与 LAN-401 的 IP 地址同一个网段(但不能是同一地址,比如修改上 位机的 IP 地址为:192.168.2.9);点击电脑桌面上“网络”或“网上邻居”属性,参考 “图 45”设置 IPV4 的属性。 第 61 页 ,共 65 页 LAN-401 中频信号处理模块 B、 确保上位机软件中“系统设置”功能中的 IP 地址设置值正确。 C、 若曾修改过 LAN-401 模块的 IP 地址,则需要设置电脑的 IP 地址为修改后的网段; D、 使用网线连接一个千兆网交换机测试; E、 若网络仍然无法连接,请尝试断电重启处理板或 RESET 试试。 7.2 采集的波形不正确 上位软件点击“显示数据”后,显示的波形不正确,可能是硬件故障或软件问题,我们首 先要排除软件问题。 故障排查步骤: A、 确保上位软件正确安装,且参数正确设置。 点击”系统设置”按钮,各参数按照下图进行设置: 图 46 系统设置界面 设置完成后,左边区域点击“保存设置按钮”,右边区域点击两个“确定”按钮。然后关闭 第 62 页 ,共 65 页 LAN-401 中频信号处理模块 该界面,回到主界面,点击“显示数据”按钮; 若主界面中,不正正确显示波形,则说明软件有问题(可能是 PL、ARM 端或上位软件)。 进入下一步; B、 在线更新 PL 端逻辑程序”system.bit”; 点击“更新固件”按钮,加载随光盘提供的“system.bit”文件或自己编写的”system.bit” 文件; 图 47 更新最新的 PL 的 bit 文件 若还是不正确,请进入下一步; C、 在“系统设置”界面中,分别下载光盘中的”LMK04816”、”AD9258”配置文件,下载完 成后点击“保存”按钮。然后返回到主见面观察波形的正确性。若还是不正确,请进入 下一步; D、分别在线更新 uramdisk.image.gz、devicetree.dtb 和 uImage。 更新步骤,请参考本文件中“6.2 底层驱动程序的更新”章节。 若还是不正确,可能是硬件问题,请联系我们。 E、 测试 ADC 芯片工作的正确性: 1)、射频信号源连接到 ADC 的输入端 SMA(位号 J6),设置信号源参数为:频率 1MHz、 功率+5dBm、调制功能“关”,输出“开”; 2)上位机软件中的“系统设置”中,显示波形选择为“ADC 数据”,返回到主界面中, 点击“显示波形”后,过 10 秒钟,出现情况: 第 63 页 ,共 65 页 LAN-401 中频信号处理模块 I.出现“一条直线”,则可能是信号源没有正确设置,同时检查电缆; II. 若是信号源“开”有波形(但波形显示非正弦波),而“关”无波形,则可能是数据 格式的问题(直接二进制/二进制补码); III.可在 PL 中,使用 ILA(逻辑分析仪)抓波形,观察 ADC 采集到的数据正确性。 第 64 页 ,共 65 页 LAN-401 中频信号处理模块 第 65 页 ,共 65 页

    Top_arrow
    回到顶部
    EEWORLD下载中心所有资源均来自网友分享,如有侵权,请发送举报邮件到客服邮箱bbs_service@eeworld.com.cn 或通过站内短信息或QQ:273568022联系管理员 高进,我们会尽快处理。