首页资源分类电子电路数字电路 > 多功能计数器

多功能计数器

已有 460221个资源

下载专区


TI最新应用解决方案

工业电子 汽车电子 个人消费电子

上传者其他资源

电子电路热门资源

本周本月全部

文档信息举报收藏

标    签: 多功能计数器

分    享:

文档简介

多功能计数器的电子大赛的作品

文档预览

题目:多功能计数器 指导教师 :尹仕,肖看 队员及年级:胡光恒(06 级) 王 越(06 级) 骆潘钿(06 级) 学校及院系:华中科技大学电工电子科技创新中心 摘要:本设计给出了以 CycloneII 型 FPGA EP2C8 为核心的多功能计数器的基本原理与实现 方案。FPGA 片内包括测频模块,测相模块,DDS 查表模块及 NIOSII 处理器; NIOS 核调节频 率字与相位字控制 DDS 查表模块并经片外高速 DA DAC900 输出正弦波。测频测相模块的片外 输入采用 TI 公司的宽带运放 OPA699 放大,并使用 TL3116 构建迟滞比较器整形为方波送入 FPGA 片内,由可编程逻辑在 FPGA 内部组建的测频测相逻辑单元,采用等精度测量方法测得 结果并送 NIOS 核处理,在 LCD 上显示。经测试,频率测试范围达到 1Hz~14MHz,准确度达 0.1ppm,相位测量范围 0~360°准确度 1°,信号灵敏度达到 8mvRMS。 关键词:频率测量 相位测量 DDS NiosII SOPC. Abstract: The CycloneII FPGA based multifunctional meter system is constructed of frequency measure unit, phase measure unit , DDS unit and NiosII embedded microprocessor. By setting the frequency word and the phase word, NiosII controls the DDS and drives the DAC900 to provide sine wave. With the importation of off-chip module using TI's broadband operational amplifier OPA699 and hysteresis Comparator TL3116, meter logic inside the FPGA measures the square waves using the principle of equal precision multi-period synchrony frequency measurement. Under the test environment, the whole system has obtained the request of velocity and the accuracy . Keywords: frequency meter, phase meter, DDS, NiosII, SOPC. 一 方案论证与设计 1.1 方案设计 1.1.1 频率测量方案 方案一:快速傅里叶变换 数据由 AD 离散后,经 FIR 滤波,送入基-4 快速傅里叶变换引擎进行多级蝶形运算,从 3 组 ROM 表中取出旋转因子乘入每次蝶形运算,对每级计算输入数据进行定浮点动态指数处理, 在蝶算单元之外对存放每级输入输出数据的多组双口 RAM 的地址用逻辑模块进行调序来实现 连贯的 log4N 级蝶算。对所得正弦余弦结果,通过 CORDIC 算法,经大面积逻辑单元的移位及 流水线操作得到信号在整数倍基频处的模量。即完成时域到频域的转换。 方案二:等精度计数 将正弦信号进行迟滞比较转化为同频率的方波信号,在 FPGA 内,通过逻辑模块实现等精 度频率测量并送 NIOS 核处理。测得 1s 左右闸门时间内整周期待测信号的时间段中,低频待 2 测信号和高频参考信号周期累计数之比,乘以参考频率即得带测信号频率。 对于以上两种方案进行比较,方案一速度快,可达到实时性测量,测量频率范围宽,但 因频率分辨率完全依靠离散傅里叶变换的点数。逻辑单元和 RAM 的限制使得 FFT 不可能达到 高频率分辨率,仅适合多频率混合时的测频。而方案二可在极小的消耗下实现非常精确的分 辨率,在信号失真度较小,且外围环境稳定时是测频的理想方案。 1.1.2 相位测量方案 方案一:将两路同频信号在时域叠加,经 FFT 运算后,求得频域实部与虚部的模量之比 的反正切值,即为正交分离下的正弦余弦相位差,作处理得到两路正弦相位差。 方案二:将被测的两路正弦波信号经比较器整形成方波信号,利用异或门电路进行鉴相 处理,将得到的脉冲序列经过 AD637 真有效值-直流转换芯片,测出该脉冲序列的有效值, 该有效值与脉冲序列的占空比成正比,从而反推出两信号的相位差。 方案三:测得两同频率待测信号对应跳沿的时间差中时钟脉冲的个数,与整周期时钟脉 冲数比较,从而得出相位差。 比较三种方案,方案一在二分之一取样频率内整倍取样频率时的幅值可轻易达到的 8 位 以上分辨率,因而计算出的相位准确度较高,但在时域上将两信号叠加所引入的误差难以很 好控制,导致最终效果差。方案二在低频段时,AD637 响应不平坦,转换精度有限。方案三 在两信号相差较小或频率较高时,将导致相差时间计数脉冲数量不足,导致下降,但其实现 简单方法简单可靠,误差最小。 1.1.3 移相信号发生器方案 方案一:使用成品 DDS 芯片 AD9851,AD9851 是 ADI 公司的一款成品 DDS 发生芯片,该芯 片的相位累加器为 32 位,而相位分辨率仅有四位,换算为仅有 16 种相移角度。 方案二:在 FPGA 内建查找表实现的程控 DDS 模块。在相位字的基础上频率字自累加作为 ROM 表地址,查表输出数据到 DA; 比较两种方案,方案一移相能力无法满足本题需要;方案二的控制更灵活。 1.2 主要器件型号 本设计中使用的主要器件为 TI 公司制造,分别为输出正/负可变电压集成三端稳压块 LM317/LM337,低压差线性稳压芯片 TPS78633,TTL 集成施密特触发器 SN74LS14, 宽带高增 3 益限压放大器 OPA699,单电源 Rail-to-rail 双运放 OPA2350,以及超快低功耗精密比较器 TL3116。 3 端 1.5A 可调正/负电压稳定器 LM317/LM337 具有高达 1.5A 的最大输出电流,内置过热、 过流保护和短路保护,宽输入电压范围(最高 40V),全温度范围内最大 0.7%的温度系数, 其具有极大的灵活性,与稳定性,为系统提供±5V 电源。 单输出低压差 1.5A 线性稳压器 TPS78633 具有高达 1.5A 的最大输出电流,具有超低噪声、 高电源抑制比等优点,0.4V 的低压差使其能够在 5V 的电源下稳定提供可靠的 3.3V 系统电源, 其内置的过流过热保护提高的系统的稳定性。 OPA699 是宽带高增益限压放大器,其高增益稳定的特性、典型 1400V/us 的压摆率和 260MHz 的带宽增益积满足了本方案所要求的高增益(10 倍)、宽带(1Hz~10MHz)。OPA699 配合外部电阻构成的增益共 100 倍的两级前级放大器能够将最小 10mVrms 的小信号放大到整 形系统所要求的范围。 TL3116 是一款低功耗、超高速精密电压比较器,10ns 的建立时间能够满足本方案要 求的 10MHz 信号比较,并有一定的裕度,3mV 的失调电压充分保证了比较门限的精度, 14.7mA 的通道消耗电流降低了系统能耗,5V 的输出电平兼容后级整形电路。本方案中 TL3116 用来构造迟滞比较器将前级送来的放大后的信号转换为方波信号。 SN74LS14 是一款 TTL 集成 6 施密特反相器,在本方案中用来做后级信号整形输入至 FPGA。 二 系统实现 2.1 原理分析与硬件电路图 该系统由 FPGA 片上数字部分及其片外模拟环境组成: 总系统框图为: 4 2.1.1 相位差测量模块 相位测量部分的实现原理为:通过测量两路波形异或时间和整周期时间内参考脉冲数之 比以及超前滞后情况来求得相位差。具体时序如图 为避免由于斯密特触发器导致的方波占空比不为 50%时对相位测量所造成的麻烦,首先 对两路方波按周期交替取高低电平,再对处理后的两路待测方波取异或,对一周期区域内参 考脉冲及异或区域内的参考脉冲分别计数。(图中结果分别为 100 和 56)异或区域脉冲的一 半比上整周期脉冲数,即为相位差。同时在第一个待测方波的上升沿判断超前滞后情况并给 出标记。经一周期测量后数据和标记保持至下次复位,待 NIOS 读取。 2.1.2 频率测量模块 频率部分采用等精度测量法。在整周期的待测信号时间内同时对待测信号和参考脉冲进 行周期计数。由两周期数之比及参考脉冲频率可得频率测量结果,逻辑时须如图: 在外界复位后,对参考脉冲 s_clk 进行计数,提供 1s 的参考时间 second(图中仅为 1/500 脉冲时间)。在 1s 参考时间内取整周期的待测信号,此过程的时间由 frq_second 标记,在这 段时间内同时对待测信号和参考信号进行按令一路参考信号 clk 进行计数。为了避免两路参 考信号相位差较小时导致的不稳定因素及误差,两路参考信号分别使用 NIOS 核时钟及同频 率-72°的 SDRAM 时钟。所测得待测信号与参考信号周期数保持至下次复位,等待 NIOS 读 5 取。 2.1.3 相移产生部分: 数字部分由 FPGA 内部通过 Matlab 的 Simulink 建立基于延迟查表的 DDS 为两路频率相 位可调的正弦信号。单个 DDS 模块如图: 综合考虑到低频频率需求及逻辑资源消耗,选取 1024 点的 10 位宽 ROM 表及 32 位的频 率字与相位字,频率字经一级乒乓延迟后自累加,并加上相位字,削去溢出位,取高 10 位作 为 ROM 表的地址。DDS 模块直接输出数据到片外高速 DA,经过缓冲放大输出,作为相位 计部分的被测信号。 2.1.4 频率计片外调理部分: 输入信号幅度要求为 10mVrms~5Vrms,频率范围为 1Hz~10MHz。信号的幅度小,频率高, 跨度范围大。我们才用了比较简便的办法,将输入的小信号进行足够倍数的放大,而大信号 则被二极管箝位,保护了运放。 频率部分框图 6 输入信号采用了 50 欧电阻+双 1N4148 高速二极管的箝位方式,保证了输入放大器的信号 的幅度在正负二极管压降的范围内。若采用对电源和地的箝位方式则运放有可能工作在超电 源电压的状态下,导致不稳定。 两级放大均采用了 TI 公司的宽带运放 OPA699 构成同相 10 倍放大器。本方案要求运放的 带宽大于 10MHz,带宽增益积大于 100MHz,压摆率大于 314V/us。而 OPA699 的各项指标为带 宽 260MHz,高增益稳定工作,带宽增益积 1000MHz,压摆率 1400V/us,满足方案要求并有裕度。 放大器输出要被整形为正方波信号才能被 FPGA 识别。信号整形采用了 TI 公司的超高速 低功耗比较器 TL3116 和 SN74LS14。由于信号的最低频率低,上升缓慢,若采用过零比较则 会造成比较器多次翻转产生错误,而具有双门限的迟滞比较器则能很好解决此问题。比较器 输出被 74LS14 进一步整形输入 FPGA。 题目要求频率计的输入范围能达到 10mVrms~5Vrms,对应的峰峰值为 28mV~14V。为使 电路后级施密特触发器能够正常工作并识别脉冲,信号幅度最大的放大值为 110 倍,故前级 采用了两级 11 倍共 121 倍的同相放大,并采用 7414 施密特触发器对信号进行整形。 对运放的选型要求,放大倍数 11 倍,带宽 10Mhz,同时为避免小信号时的直流漂移对整形 的影响,必须采用低失调运放。运放选用了 TI 公司的 OPA699 宽带高增益运算放大器,其 1400Mhz 带宽增益积,高增益特性,典型 1.5mV 的失调,能够很好的满足本题的需要,特别 是需要运放进行饱和放大时,较低的过载恢复时间能够减小运放带来的波形失真。1400V/uS 的高压摆率能最大提高波形的前沿。 电路测试时发现前级电路的输入频率与输出方波脉冲频率在低频段有较大误差。输入信 号 500Hz 而读数却有 2000 多。示波器观察放大器输出发现,放大器输出有明显毛刺。 分析后得出,由于方案采用了饱和放大的做法,以至前一级放大器在过零点的噪声毛刺 被后级放大器放大到可使比较器翻转的幅度,导致产生毛刺脉冲,计数错误。而在高频段由 于毛刺宽度窄,信号上升沿陡以及系统带宽的原因被忽略掉。 因此我们采取了在施密特触发器整形前加装一级 RC 低通滤波器的简便做法,将低频段 (<100KHz)毛刺滤掉,而在高频段将滤波器断开,减小高频信号的损耗。实践表明,该改进取 得良好效果。 7 2.2 软件设计流程 另:开机校准。如有更精确频率的信号源(如温补晶振),可选择开机外部校准,即接入外部 信号源,输入准确频率值,系统会根据测试结果对精度进一步校正。最后得到的值以开机外 部校准为参考。默认情况下为系统已进行过的内部校准。 三 系统测试与误差分析 4.1:片上部分测试 4.1.1:.FPGA 测频模块与测相模块经时序仿真通过。DDS 模块经 MATLAB 仿真通过。 4.1.2:.使用 FPGA 硬件级调试,NIOS 控制 DDS 输出信号,送往片内测频测相模块计算, 再 读取测量结果,作基本运算并通过 JTAG UART 控制台显示出来。以联合测试整个数字系统。 (系统时钟 50M) ROM 表地址线 10 位,在 32 位控制字中的步进为 0x0040_0000。 设 Fn(0x0040)为频率字相对于 0x0040_0000 的倍数,即相当于 0x0040_0000 的步进数。同理设 Pn(0x0040)为相位字步进数。 由计算可得: 待测信号频率 = DDS 频率 * / Fn(0x0040) 1024 …………………………(1) 8 待测信号每周期参考脉冲数 = 参考脉冲频率 / 待测信号频率 = (参考脉冲频率 * 1024)/ (DDS 频率 * Fn(0x0040)) = 1024 / Fn(0x0040) ………………………………………….(2) 待测信号每周期相差时间内参考脉冲数 = △ Pn(0x0040)*待测信号每周期参考脉冲数 / 1024 = △ Pn(0x0040) / Fn(0x0040) ……………………(.. 3) 表 1,不同频率字下的频率测试结果 频率字 周期数 脉冲数 期望频率 实测频率 相位字 1 97656 49999872 97656.250000 相 相差脉冲 期望脉 位 数 冲数 字2 1 97656 97656 97656 0x80_000 0 97656 97657 97657 97656 97656 97657 1 49999872 49999872 49999872 49999872 50000384 50000384 49999872 49999872 50000384 50529027 97656.25 0.98953023 97656.250000 97656.250000 97656.250000 97656.250000 97656.250000 97656.250000 97656.250000 97656.250000 97656.250000 0.98953024 1 1 0x0000_ 1 0055 1 1 1 1 1 1 50529027 50529027 50529027 50529027 50529027 50529027 50529027 50529027 50529027 0.98953024 0.98953024 0.98953024 0.98953024 0.98953024 0.98953024 0.98953024 0.98953024 0.98953024 1 1 1 1 0x80_0000 0x0 1 1 1 1 1 0x80_0000 0x0 98689 98689 98689 98689 98689 98689 98689 98689 98689 98689 1 98689. 5058 经测试,数字部分的片内模块及处理器合格,精度在设计范围内. 9 4.2 片外部分测试: 4.2.1 测试环境 25°C 4.2.2 测试仪器:TDS1012 100M 数字存储示波器;固纬 GFC-8270 8 位等精度频率计; EE1643C 型函数信号发生器;Fluke F17B 型数字万用表 4.2.3 测试方法 标准频率计与自制频率计同时测量函数信号发生器频率。 4 测试数据 函数信号发生器频率 标准频率计读数 自制频率计读数 2.623 226.88 25.583k 1.1570M 10.219M 15.076M 2.6175735 226.88201 25.583732k 1.1570752M 10.219237M 15.075773M 2.6175737 226.88199 25.583735k 1.1570750M 10.219235M 15.075772M Vi=10mVrms. 5 误差分析 高频时由于系统带宽原因,信号不能得到充分放大,从而被比较器滤除,导致测试数据 误差。 五 总结 本系统实现了题目基本部分以及发挥部分的要求,经过测试,相位测量仪的测量范围为: 电压(峰峰值):20mV~15V;频率:1Hz~100kHz;显示分辨率为 0.1 度,测量的绝对误差 在 1º以内。数字式移相信号发生器在 1Hz-100KHz 范围内波形能够稳定输出,并且扩展到 0.1Hz-1MHz KHz,频率相位步进字为 32 位º,幅值在 0.4V-4V 范围内可调, 系统有待进一步完善,verilog 部分的稳定性及保护措施可以提高,外围电路 AGC 的使 用将提高准确度。对有效位数要求高时,应将数据分为整数和小数部分,分开存储,使用 mutex 双核 NIOS 分开处理和显示,在更高实时性或更多任务时,有必要引入 uC/OS 可剥夺性 RTOS。 参考文献: [1]李兰英等.Nios 嵌入式软核 SOPC 设计原理及应用.北京:北京航空航天大学出版社,2006. [2]谢自美等.电子线路综合设计.武汉:华中科技大学,2006. [3]管致中等.信号与线性系统(第 4 版).北京:高等教育出版社,2004. [4]康华光,陈大钦.电子技术基础模拟部分(第四版).北京:高等教育出版社,1999. 10 [5]康华光,邹寿彬.电子技术基础数字部分(第四版).北京:高等教育出版社,1999. 附录 11

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