EP1C6Q在水轮机组转速测量中的应用
在转速测量模块中,EP1C6Q主要起信号边沿检测、脉宽测量以及实现神经元芯片外围逻辑电路的作用。由于许多功能是在EP1C6Q内部利用软件实现的,所以二者之间的连接很简单。控制信息的传递主要有两个途径:一是通过神经元芯片的I/O引脚,由于I/O引脚较长的建立时间会影响系统的实时性,因此,设计电路仅使用IO0、IO1两个通道来作为整个系统的异步清零(clr)和读取数据标志(read_time);另外一个途径是通过神经元芯片的数据总线(D0~D7)和地址总线A0~A15,即在EP1C6Q的内部设立状态寄存器,并由神经元芯片向寄存器中写入不同的数据,然后由寄存器根据写入的数据来使相应的控制信号有效。
2.4 软件设计
a.EP1C6Q内部程序
EP1C6Q的内部程序是在QUARTUS2开发软件中实现的。QUARTUS2能够支持原理图输入和硬件描述语言两种编程方式。整个程序包括译码电路、分频电路、计数控制电路、计数器模块和数据的锁存和读取等五个部分。具体如下:
(1)计数控制电路
EP1C6Q内部的程序是在神经元芯片的控制下运行的。其控制部分电路如图3所示。信号fin代表六十五路脉冲输入信号的一路,clk0代表标准的计数时钟。在clr信号由低电平变为高电平、且start置为高电平后,脉冲信号fin输入有效。当第一个上升沿到来后,计数器的PUL引脚变为高电平,此时,计数器开始计数;当第二个上升沿到来后,PUL变为低电平,计数器停止计数;而当第三个上升沿到来后,read_time信号变高电平,数据锁存。
(2)计数器的设计
由于水轮机组的转速比较慢,产生的脉冲信号频率一般在0.01Hz~10Hz之间,因此,转速快和转速慢时的信号周期差别比较大。为满足±1/10000个计数时钟的精度要求,计数器的计数位数应设计为20位。计数器的最大设定值为1000000,这样,当脉冲信号周期在10Hz~0.1Hz之间时,计数时钟为100kHz;而当脉冲信号的周期在0.1Hz~0.01Hz之间时,计数时钟自动转换为10kHz。计数时钟的自动切换是由计数器的溢出标志控制的,当计数器的计数值超出设定的最大值(1000000)后,溢出标志由低电平变为高电平,这样,经过全局时钟分频计数的时钟分频次数也会相应地扩大10倍,从而保证了计数器不会再次溢出。
(3)状态寄存器设计
为了减小神经元芯片控制功能对IO引脚的依赖,EP1C6Q在其内部设立了两个状态寄存器。这两个状态寄存器可根据神经元芯片写入的控制字来使相应的控制信号有效。使用的控制信号如下:
start:通过神经元芯片要求EP1C6Q进入信号采集状态控制,高电平有效。
lck:数据锁存信号,低电平有效。当EP1C6Q的输出信号read_time有效后,神经元芯片向状态寄存器写入命令字以使lck信号有效。为了保证所有通道的计数器已经停止工作,神经元芯片接收到read_time后将延迟ΔT时间后再锁存计数器的数据。
h1h2:计数值高八位、中八位、低八位的选择控制。为了满足系统要求的测量精度, EP1C6Q内部采用二十位计数器对每一路信号进行计数,而神经元芯片的数据总线是八位,因此需要分三次读出。
(4)译码电路设计
神经元芯片一般采用内存映象法进行数据的传递。所谓内存映象法,是指给芯片外部的寄存器、存储器或IO单元分配一个物理地址,以便于对外设操作,这相当于对该物理地址的操作。译码电路主要提供FLASH、状态寄存器和六十五个计数器的片选信号。系统的地址分配如下:
E800~EFFF数据存储区,用于保存各个通道的计数值。
0000~7FFF外围FLASH区。
8000~8040六十五个计数器的内存地址。
8041~8042状态寄存器的内存地址。
8042~E7FF用户备用空间。
(5)分频电路
计数器单元的计数时钟是把输入的全局时钟分频得到的。12MHz的有源晶振输出通常可作为全局时钟,分频电路采用VHDL语言设计,分频次数设定值的变换由计数器的溢出标志控制。
b.神经元芯片的内部编程
本编程设计主要用于完成与系统的同步和控制EP1C6Q程序的运转。当接到信号处理模块发来的数据请求信号后,该程序将启动EP1C6Q内部程序并开始计数,以将最终的计数值读到内部RAM区。
javascript:window.open(this.src);" style="cursor:pointer;"/>
3 注意事项
在整个设计方案的实现过程中,应仔细考虑以下两点:
第一是芯片的选择。与普通电路开发不同的是,本设计方案的前期编译和仿真验证不需要拘泥于某一具体型号的芯片,只要满足方案所需的逻辑单元的数量、控制时序的精度和存储区间的大小等要求,就可以在软件开发工具中编译仿真。可到方案成熟后,再考虑一些细节问题,如芯片以及所需电源和配置芯片是否容易买到,提供的IO接口类型是否满足需要,芯片的封装形式是否会影响到PCB板的制作等问题。
第二是时序电路和组合电路的转化。在一个系统中,时序电路和组合逻辑电路一般