专利名称:Arm+fpga组成的定时器装置的制作方法
技术领域:
本实用新型涉及一种定时器装置,尤其涉及一种用于大规模时间控制装置或可编程控制器(PLC)的定时器装置。
背景技术:
在大规模时间控制或可编程控制器(PLC)的应用系统中,将使用大量的定时器,通常实现的方式有五种第一、二种方式是应用微处理器中的一个定时器的定时时间作为基准时间,每个定时器的定时参数存储在一个存储单元中,采用定时中断方式编程,编程方法主要有2种,第1种方法是在基准定时器中断服务程序中编制定时器判断处理程序,该基准定时器按照基准时间定时发出中断的信号,在基准定时器中断服务程序中,定时器判断处理程序对每个定时器进行判断,对于未启动和未使用的定时器,程序执行跳过该定时器的处理程序,对于已启动定时的定时器对应的存储单元内容减1,再判断是否已减为0,如果不为0,在下次执行基准定时器中断服务程序中再减1,并进行判断;如果定时器对应的存储单元内容已减为0,表示该定时器的定时时间已到,设置该定时器定时时间到的标志, 并恢复该定时器的存储单元的定时参数。第2种方法是在定时中断服务程序中设置已中断的标志,在主程序中执行查询程序,首先检测中断标志,如果没有基准定时器的中断标志, 则程序执行跳过定时器判断处理程序,如果有基准定时器的中断标志,执行定时器判断处理程序,其程序与第一种基本相同,在执行完定时器判断处理程序后,将基准定时器的中断标志清0 ;第三、四种方式是采用微处理器外扩专用定时器芯片,也有2种方法——即中断或查询方法,第1种中断方法的中断信号与CPU外部中断引脚连接,编制定时器判断处理程序;第2种查询方法的外扩专用定时器芯片的定时器输出与CPU的I/O引脚连接,程序循环读取该引脚的信号,如果没有检测到基准定时时间到的信息,则程序执行跳过定时器判断处理程序,如果检测到基准定时时间到的信息,则执行一次定时器判断处理程序。以上四种实现方式存在如下不足之处1、无论某个定时器在用户程序中是否被使用,在定时器判断处理程序中都需要对每个定时器的工作状态进行一次判断,对已启动定时工作的定时器每次执行定时器判断处理程序还需要执行一次计数,一次判断,一次状态设置指令;2、应用基准定时器的定时中断方法,CPU响应和退出基准定时器中断服务程序占用CPU运行时间;第四种方式的查询方法虽然不需要响应和退出中断操作,但系统程序循环一次需要查询和判断一次;定时基准时间越小,比如1ms,定时器系统的定时器越多,将占用CPU运行时间越长,对其它程序模块的执行速度产生严重的影响,定时精度不高;3、第三、四种方式采用微处理器外扩专用定时器芯片,所需的定时器越多,外扩专用定时器芯片就越多,电路规模就越大;第五种方式是采用不可编程的硬件定时,其每个定时器用独立的硬件电路实现; 采用这种方式实现定时功能,所需的定时器越多,电路规模就越大,且维护工作量大。发明内容本实用新型的目的在于充分应用FPGA的并行处理功能,提供一种以嵌入式ARM微处理器为控制模块、FPGA为定时处理模块的ARM+FPGA定时器装置,该装置具有定时精度高、运行控制基本不占用ARM程序执行的时间,能够实现对数量众多定时器的定时与定时控制等优点,以克服已有定时方式实现技术所存在的不足。为解决上述技术问题,本实用新型所采用的技术方案是一种ARM+FPGA组成的定时器装置,所述定时器装置以嵌入式ARM微处理器为控制核心、以FPGA进行定时处理,包括ARM控制模块、存储器模块、FPGA定时器模块、双口 RAM模块和电源模块,ARM控制模块分别与存储器模块和双口 MM模块连接,FPGA定时器模块与双口 RAM模块连接;所述ARM控制模块以嵌入式ARM微处理器为控制核心,构建嵌入式实时操作系统, 进行多任务管理和通信管理,实现对定时器装置中各模块及其信息的处理和控制;所述存储器模块用于存储操作系统及嵌入式ARM微处理器程序的目标代码映像文件、执行用户程序的处理信息、以及为定时器装置的运行和通信数据处理提供空间;所述双口 RAM模块分别与所述FPGA定时器模块和所述ARM控制模块连接,以实现所述ARM控制模块与所述FPGA定时器模块之间的数据传输;所述FPGA定时器模块以定时控制单元为核心,通过双口 RAM模块从ARM控制模块获得定时器运行和定时时间参数的信息或停止运行信息,在基准时钟周期工作脉冲的作用下,对定时器存储单元内容进行循环读取、判断、处理,实现定时器功能;所述电源模块为ARM控制模块、存储器模块、双口 RAM模块和FPGA定时器模块提供变压后的电源。其进一步的技术方案是所述ARM控制模块包括嵌入式ARM微处理器、人机交互电路、控制电路、复位电路、JTAG调试接口电路,嵌入式ARM微处理器作为控制核心,分别与人机交互电路、控制电路、复位电路和JTAG调试接口电路连接;ARM控制模块在嵌入式ARM微处理器中构建嵌入式实时操作系统,进行多任务管理和通信管理,实现对ARM控制模块和FPGA定时器模块各种信息的处理和控制;人机交互电路完成ARM控制模块和FPGA定时器模块的控制命令、控制参数的输入;以及ARM控制模块和FPGA定时器模块各种参数的人机界面控制;控制电路完成ARM控制模块的数据采集与控制驱动;复位电路为ARM控制模块电路提供复位信号;JTAG调试接口电路提供调试接口与外接电路相连实现编程装置对ARM控制模块的硬件和软件的调试。 所述存储器模块包括Nor FLASH存储器、Nand FLASH存储器和SDRAM存储器,Nor FLASH存储器、Nand FLASH存储器和SDRAM存储器分别通过ARM控制模块的数据总线、地址总线和控制总线与ARM控制模块的嵌入式ARM微处理器连接,实现ARM微处理器对存储器的操作控制,Nor FLASH存储器用来存储操作系统及嵌入式ARM微处理器程序的目标代码映像文件,Nand FLASH存储器存放执行用户程序的处理信息,以及失电需要保持的信息,包括定时器装置处理的信息,SDRAM存储器为ARM控制模块运行和通信数据处理提供空间,包括定时器装置处理的信息。[0022]所述FPGA定时器模块包括时间基准脉冲信号发生器、定时单元和定时控制单元; 定时控制单元是FPGA定时器模块的控制核心,分别与时间基准脉冲信号发生器和定时单元连接,FPGA定时器模块通过定时控制单元与双口 RAM模块连接,并通过双口 RAM模块与 ARM控制模块连接;所述时间基准脉冲信号发生器产生定时需要的基准时钟周期工作脉冲;所述定时单元是由32位字长存储单元组成的定时存储器,包括多个Ims定时器存储单元、IOms定时器存储单元、IOOms定时器存储单元和定时器软触头存储单元;所述定时控制单元通过双口 RAM模块从ARM控制模块获得定时器运行和定时时间参数的信息或停止运行信息,在基准时钟周期工作脉冲的作用下,定时控制单元对定时单元的存储单元内容进行循环读取判断,如果定时单元中该定时器的定时参数等于或大于双口 RAM模块中的该定时器的定时参数时,设置运行状态标志,置位定时器软触头存储单元该定时器软触头的位单元,清定时单元中该定时器的定时单元内容;如果小于定时单元中该定时器的定时参数则进行加1操作,设置运行状态标志,以及设置定时器软触头存储单元的该定时器软触头的位单元状态;其循环读取判断操作是按照时间基准周期循环操作一次,并将定时器软触头存储单元的内容传输到双口 RAM模块中。所述双口 RAM模块通过ARM控制模块的一组数据总线、地址总线和控制总线与ARM 控制模块的嵌入式ARM微处理器连接,双口 RAM模块还通过FPGA定时器模块与双口 RAM 模块之间另一组数据总线、地址总线和控制总线与FPGA定时器模块连接;双口 RAM模块是 ARM控制模块与FPGA定时器模块之间数据传输的桥梁,能够实现ARM控制模块和FPGA定时器模块同时对双口 RAM模块进行操作;ARM控制模块在执行大规模时间顺序逻辑控制程序或可编程控制器用户程序的编译程序时,将每个定时器的定时参数传输到双口 RAM模块相对应的存储单元中;在执行大规模时间顺序逻辑控制程序或可编程控制器用户程序时, 当定时器满足定时运行的条件下,ARM控制模块向双口 RAM模块传输运行状态信息,当定时器不满足运行的条件下,ARM控制模块向双口 RAM模块传输停止运行信息;当大规模时间顺序逻辑控制程序或可编程控制器用户程序读取定时器软元件触头信息时,ARM控制模块从双口 RAM模块读取该触头状态信息。其更进一步的技术方案是所述双口 RAM模块与FPGA定时器模块或者是分别独立的两个模块;或者是所述双口 RAM模块嵌入构成FPGA定时器模块的FPGA2中,所述FPGA2 模块是一块同时带有双口 RAM模块和FPGA定时器模块结构的模块。本实用新型之ARM+FPGA组成的定时器装置具有以下有益效果1、定时精度高本实用新型FPGA定时器模块IV的时间基准脉冲信号发生器采用晶体振荡器产生的脉冲作为FPGA的基准时钟周期工作脉冲,其频率稳定,时间基准脉冲信号发生器输出的脉冲周期精度高,FPGA在基准时钟周期工作脉冲作用下运行,能够确保在一个基准时钟周期工作脉冲的周期内完成对所有定时器的计数、判断和数据传输的执行,能够确保其高精度的定时。2、定时器运行不占用ARM用户程序执行的时间ARM控制模块I对用户程序没有使用的定时器不需要作任何操作,对于用户使用的每个定时器,当程序执行某个定时器软元件输出指令时,判断该定时器的工作状态,然后
6从双口 RAM模块该定时器参数存储单元中读入该定时器参数到ARM控制模块I中,设置运行状态标志,再传输到双口 RAM模块该定时器参数存储单元中,ARM用户程序执行时,相当于将每个定时器只进行读写和判断操作;另一方面,定时器的定时运行操作、定时器软触头状态的设置由FPGA定时器模块IV完成,不占用ARM程序执行的时间,而且既无中断响应和中断返回时间,也不需要对用户程序没有使用的定时器作任何操作。3、适合需要数量众多定时器定时与定时控制的系统需求本实用新型除ARM控制模块I对双口 RAM模块定时器参数存储单元进行读写和判断操作之外,将不占用ARM的程序执行时间;只要FPGA定时器模块IV在满足时间基准时钟周期内能够完成对FPGA定时器模块IV中的所有定时器的计数、判断和数据向双口 RAM模块传输的操作,其定时器装置设置的定时器数量能够达到数百个,乃至千余个,且定时精度高,而且不需要在ARM的程序中编制定时中断服务程序,只是将每个定时器作为普通存储单元进行读写和判断操作,适合需要数量众多定时器定时与定时控制的系统需求,以及对定时精度要求很高的系统,尤其适应于大规模时间控制装置或可编程控制器(PLC)控制系统。4、FPGA并行处理定时,装置性价比高本实用新型以嵌入式ARM微处理器为控制模块,FPGA为定时处理模块构成 ARM+FPGA定时器装置,无论定时器装置有多少编号定时器,定时器基准时间为多少,占用嵌入式ARM微处理器的用户程序执行的时间大为减少的,将其用于开发大规模的并行运算的逻辑运算器及其控制器以及大规模的定时器和计时器,可获很高的性价比。
以下结合附图和实施例对本实用新型之ARM+FPGA组成的定时器装置的技术特征作进一步的说明。
图1 本实用新型之ARM+FPGA组成的定时器装置的结构框图;图2 本实用新型实施例一之ARM+FPGA组成的定时器装置的电路框图;图3 本实用新型实施例一之ARM+FPGA组成的定时器装置的FPGA定时器部件结构图;图4 本实用新型之ARM+FPGA组成的定时器装置的定时器之32位长度的存储单元;图5 本实用新型之ARM+FPGA组成的定时器装置的双口 RAM模块存储区分配;图6 实施例二之ARM+FPGA组成的定时器装置的结构框图;图7 实施例二之ARM+FPGA组成的定时器装置的电路框图;图8 本实用新型实施例二之ARM+FPGA组成的定时器装置的FPGA定时器部件结构图。图中I 一ARM控制模块,10—嵌入式ARM微处理器,11 一人机交互电路,12—控制电路, 13—复位电路,14一 JTAG调试接口电路;II一存储器模块,21—Nor FLASH 存储器,22 — Nand FLASH 存储器,23 — SDRAM 存储器;
7[0049]III一双口 RAM模块,III a —实施例一的双口 RAM模块,III b—实施例二的双口 RAM 模块;IV-FPGA定时器模块,IV b—实施例一的FPGA定时器模块,IV b—实施例二的 FPGA定时器模块;41 一时间基准脉冲信号发生器,42—定时单元,421 — Ims定时器存储单元, 422—IOms定时器存储单元,423— IOOms定时器存储单元,424—定时器软触头存储单元, 43—定时控制单元;V —电源模块;其余编号意义参见说明书实施例。文中缩略语意义PLC Programmable Logical Controller,可编程逻辑控制器,简称可编程控制器;ARM =Advanced RISC Machines,一种微处理器;FPGA 现场可编程门阵列,是在原PAL、GAL、CPLD基础上发展的产物,是作为专用集成电路(ASIC)领域中的一种未定制电路,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点;Nor FLASH 一种非易失闪存技术,Nor FLASH存储器指采用Nor FLASH技术的闪存存储器;Nand FLASH 一种非易失闪存技术,Nand FLASH存储器指采用Nand FLASH技术的闪存存储器;SDRAM Synchronous Dynamic Random Access Memory, SDRAM 存储器为同步动态随机存取存储器;JTAG Joint Test Action Group,一种国际标准测试协议。
具体实施方式
实施例一一种ARM+FPGA组成的定时器装置,如图1所示,所述定时器装置包括ARM控制模块I、存储器模块II、FPGA定时器模块IV、双口 RAM模块III和电源模块V ;ARM控制模块I分别与存储器模块II和双口 RAM模块III连接,FPGA定时器模块IV与双口 RAM模块III连接,电源模块V将外部电源通过电压电路转换成为合乎要求的电压,为ARM控制模块I、存储器模块II、双口 RAM模块III和FPGA定时器模块IV提供变压后直流电源;如图2所示,所述ARM控制模块I包括嵌入式ARM微处理器10、人机交互电路11、 控制电路12、复位电路13、JTAG调试接口电路14,嵌入式ARM微处理器10作为控制核心, 分别与人机交互电路11、控制电路12、复位电路13和JTAG调试接口电路14连接;ARM控制模块I在嵌入式ARM微处理器10中构建嵌入式实时操作系统,进行多任务管理和通信管理,实现对ARM控制模块I和FPGA定时器模块IV中的各种信息处理和控制;人机交互电路11完成ARM控制模块I和FPGA定时器模块IV的控制命令、控制传输的输入;以及ARM控制模块I和FPGA定时器模块IV各种参数的人机界面控制;[0067]控制电路12完成ARM控制模块I的数据采集与控制驱动;复位电路13为ARM控制模块I电路提供复位信号;JTAG调试接口电路14提供调试接口与外接电路相连实现编程装置对ARM控制模块I的硬件和软件的调试;所述存储器模块II包括Nor FLASH存储器21、Nand FLASH存储器22和SDRAM存储器23,Nor FLASH存储器21、Nand FLASH存储器22和SDRAM存储器23分别通过ARM控制模块I的数据总线XI、地址总线Zl和控制总线Yl与ARM控制模块I的嵌入式ARM微处理器10连接,实现ARM微处理器对存储器的操作控制,Nor FLASH存储器21用来存储操作系统及嵌入式ARM微处理器10程序的目标代码映像文件,Nand FLASH存储器22存放执行用户程序的处理信息,以及失电需要保持的信息,包括定时器装置处理的信息,SDRAM存储器23为ARM控制模块I运行和通信数据处理提供空间,包括定时器装置处理的信息。如图3所示,所述FPGA定时器模块IV包括时间基准脉冲信号发生器41、定时单元 42和定时控制单元43 ;FPGA定时器模块IV采用晶体振荡器产生的脉冲作为FPGA的工作周期时钟脉冲,晶体振荡器产生的工作周期时钟脉冲与时间基准脉冲信号发生器41和定时控制单元43连接,时间基准脉冲信号发生器41与定时控制单元43连接作为基准时钟周期工作脉冲,定时控制单元43是FPGA定时器模块的控制核心,分别与工作周期时钟脉冲、时间基准脉冲信号发生器41和定时单元42连接,FPGA定时器模块IV通过定时控制单元43与双口 RAM模块III连接,并通过双口 RAM模块III与ARM控制模块I连接;时间基准脉冲信号发生器41产生定时需要的基准时钟周期工作脉冲,本实施例中,FPGA定时器模块IV采用晶体振荡器产生的脉冲作为FPGA的基准时钟周期工作脉冲;定时单元42是由32位字长存储单元组成的定时存储器,包括多个Ims定时器存储单元421、IOms定时器存储单元422、IOOms定时器存储单元423和定时器软触头存储单元 424 ;定时控制单元43通过双口 RAM模块III从ARM控制模块I获得定时器运行和定时时间参数的信息或停止运行信息,在工作周期时钟脉冲的作用下,对定时器定时单元42的存储单元内容进行循环读取判断,如果定时单元42中该定时器的定时参数等于或大于双口 RAM模块III中的该定时器的定时参数时,设置运行状态标志,置位定时器软触头存储单元4M该定时器软触头的位单元,清定时单元42中该定时器的定时单元内容;如果小于定时单元42中该定时器的定时参数则进行加1操作,设置运行状态标志,以及设置定时器软触头存储单元424的该定时器软触头的位单元状态;其循环读取判断操作是按照时间基准周期循环操作一次,并将定时器软触头存储单元424的内容传输到双口 RAM模块III中。所述双口 RAM模块III通过ARM控制模块I的一组数据总线X1(D0 D31 )、地址总线Zl (AO A12)和控制总线Yl (包括写、读、片选)与ARM控制模块I的嵌入式ARM微处理器10连接,双口 RAM模块III还通过FPGA定时器模块IV与双口 RAM模块III之间的另一组数据总线X2 (DO D31)、地址总线Z2 (AO A12)和控制总线Y2 (包括写、读、片选)与 FPGA定时器模块IV连接;双口 RAM模块III是ARM控制模块I与FPGA定时器模块IV之间数据传输的桥梁,能够实现ARM控制模块I和FPGA定时器模块IV同时对双口 RAM模块III进行操作;ARM控制模块I在执行大规模时间控制程序或可编程控制器用户程序的编译程序时,将每个定时器的
9定时参数传输到双口 RAM模块III相对应的存储单元中,在执行大规模时间控制程序或可编程控制器用户程序时,当定时器满足定时运行的条件下,ARM控制模块I向双口 RAM模块III 传输运行状态信息,当定时器不满足运行的条件下,ARM控制模块I向双口 RAM模块III传输停止运行信息,当大规模时间控制程序或可编程控制器用户程序读取定时器软元件触头信息时,ARM控制模块I从双口 RAM模块III读取该触头状态信息。实施例二 一种ARM+FPGA组成的定时器装置,其基本结构与实施例一相同,也是以嵌入式 ARM微处理器为控制模块、FPGA为定时处理模块,包括ARM控制模块I、存储器模块II、FPGA 定时器模块IV、双口 RAM模块III和电源模块V ;ARM控制模块I分别与存储器模块II和双口 RAM模块III连接,FPGA定时器模块IV与双口 RAM模块III连接,电源模块V为ARM控制模块
I、存储器模块II、双口 RAM模块III和FPGA定时器模块IV提供电源;本实施例二与实施例一不同之处是实施例一中,双口 RAM模块III与由FPGAl构成的定时器模块IV是独立的两个模块;而本实施例中,所述双口 RAM模块III嵌入构成FPGA定时器模块IV的FPGA2中,FPGA2是一块同时带有双口 RAM模块III和FPGA定时器模块IV的模块(参见图6 图8);本实施例结构的好处在于充分利用了 FPGA的资源;不单设双口 RAM模块,使定时器装置硬件电路结构更加简洁。
权利要求1.一种ARM+FPGA组成的定时器装置,其特征在于所述定时器装置以嵌入式ARM微处理器为控制核心、以FPGA进行定时处理,包括ARM控制模块(I )、存储器模块(II )、FPGA定时器模块(IV)、双口 RAM模块(III)和电源模块(V ),ARM控制模块(I )分别与存储器模块(II)和双口 RAM模块(III)连接,FPGA定时器模块(IV)与双口 RAM模块(III)连接;所述ARM控制模块(I )以嵌入式ARM微处理器(10)为控制核心,构建嵌入式实时操作系统,进行多任务管理和通信管理,实现对定时器装置中各模块及其信息的处理和控制;所述存储器模块(II)用于存储操作系统及嵌入式ARM微处理器(10)程序的目标代码映像文件、执行用户程序的处理信息、以及为定时器装置的运行和通信数据处理提供空间;所述双口 RAM模块(III)分别与所述FPGA定时器模块(IV)和所述ARM控制模块(I )连接,以实现所述ARM控制模块(I )与所述FPGA定时器模块(IV)之间的数据传输;所述FPGA定时器模块(IV)以定时控制单元为核心,通过双口 RAM模块(III)从ARM控制模块(I )获得定时器运行和定时时间参数的信息或停止运行信息,在基准时钟周期工作脉冲的作用下,对定时器存储单元内容进行循环读取、判断、处理,实现定时器功能;所述电源模块(V )为ARM控制模块(I )、存储器模块(II )、双口 RAM模块(III)和FPGA 定时器模块(IV)提供变压后的电源。
2.根据权利要求1所述的ARM+FPGA组成的定时器装置,其特征在于所述ARM控制模块(I )包括嵌入式ARM微处理器(10 )、人机交互电路(11)、控制电路(12 )、复位电路(13 )、 JTAG调试接口电路(14),嵌入式ARM微处理器(10)作为控制核心,分别与人机交互电路 (11 )、控制电路(12)、复位电路(13)和JTAG调试接口电路(14)连接;ARM控制模块(I )在嵌入式ARM微处理器(10)中构建嵌入式实时操作系统,进行多任务管理和通信管理,实现对ARM控制模块(I )和FPGA定时器模块(IV)各种信息的处理和控制;人机交互电路(11)完成ARM控制模块(I )和FPGA定时器模块(IV)的控制命令、控制参数的输入;以及ARM控制模块(I )和FPGA定时器模块(IV)各种参数的人机界面控制;控制电路(12)完成ARM控制模块(I )的数据采集与控制驱动;复位电路(13)为ARM控制模块(I )电路提供复位信号;JTAG调试接口电路(14)提供调试接口与外接电路相连实现编程装置对ARM控制模块 (I )的硬件和软件的调试。
3.根据权利要求1所述的ARM+FPGA组成的定时器装置,其特征在于所述存储器模块 (II)包括Nor FLASH存储器(21 )、Nand FLASH存储器(22)和 SDRAM存储器(23),Nor FLASH 存储器(21)、Nand FLASH存储器(22)和SDRAM存储器(23)分别通过ARM控制模块(I )的数据总线(XI )、地址总线(Zl)和控制总线(Yl)与ARM控制模块(I )的嵌入式ARM微处理器 (10)连接,实现ARM微处理器对存储器的操作控制,Nor FLASH存储器(21)用来存储操作系统及嵌入式ARM微处理器(10)程序的目标代码映像文件,Nand FLASH存储器(22)存放执行用户程序的处理信息,以及失电需要保持的信息,包括定时器装置处理的信息,SDRAM 存储器(23)为ARM控制模块(I )运行和通信数据处理提供空间,包括定时器装置处理的信肩、ο
4.根据权利要求1所述的ARM+FPGA组成的定时器装置,其特征在于所述FPGA定时器模块(IV)包括时间基准脉冲信号发生器(41)、定时单元(42)和定时控制单元(43);定时控制单元(43)是FPGA定时器模块(IV)的控制核心,分别与时间基准脉冲信号发生器(41) 和定时单元(42)连接,FPGA定时器模块(IV)通过定时控制单元(43)与双口 RAM模块(III) 连接,并通过双口 RAM模块(III)与ARM控制模块(I )连接;时间基准脉冲信号发生器(41)产生定时需要的基准时钟周期工作脉冲;定时单元(42)是由32位字长存储单元组成的定时存储器,包括多个Ims定时器存储单元(421)、IOms定时器存储单元(422)、IOOms定时器存储单元(423)和定时器软触头存储单元(424);定时控制单元(43)通过双口 RAM模块(III)从ARM控制模块(I )获得定时器运行和定时时间参数的信息或停止运行信息,在基准时钟周期工作脉冲的作用下,定时控制单元(43) 对定时单元(42)的存储单元内容进行循环读取判断,如果定时单元(42)中该定时器的定时参数大于或等于双口 RAM模块(III)中的该定时器的定时参数时,设置运行状态标志,置位定时器软触头存储单元(424)该定时器软触头的位单元,清定时单元(42)中该定时器的定时单元内容;如果小于定时单元(42)中该定时器的定时参数则进行加1操作,设置运行状态标志,以及设置定时器软触头存储单元(4M)的该定时器软触头的位单元状态;其循环读取判断操作是按照时间基准周期循环操作一次,并将定时器软触头存储单元(4M)的内容传输到双口 RAM模块(III)中。
5.根据权利要求1所述的ARM+FPGA组成的定时器装置,其特征在于所述双口RAM模块(III)通过ARM控制模块(I )的一组数据总线(XI )、地址总线(Zl)和控制总线(Yl)与ARM 控制模块(I )的嵌入式ARM微处理器(10)连接,双口 RAM模块(III)还通过FPGA定时器模块(IV)与双口 RAM模块(III)之间另一组数据总线(X2)、地址总线(Z2)和控制总线(Y2) 与FPGA定时器模块(IV)连接;双口 RAM模块(III)是ARM控制模块(I )与FPGA定时器模块(IV)之间数据传输的桥梁,能够实现ARM控制模块(I )和FPGA定时器模块(IV)同时对双口 RAM模块(III)进行操作;ARM控制模块(I )在执行大规模时间顺序逻辑控制程序或可编程控制器用户程序的编译程序时,将每个定时器的定时参数传输到双口 RAM模块(III)相对应的存储单元中;在执行大规模时间顺序逻辑控制程序或可编程控制器的用户程序时, 当定时器满足定时运行的条件下,ARM控制模块(I )向双口 RAM模块(III)传输运行状态信息,当定时器不满足运行的条件下,ARM控制模块(I )向双口 RAM模块(III)传输停止运行信息;当大规模时间顺序逻辑控制程序或可编程控制器用户程序读取定时器软元件触头信息时,ARM控制模块(I )从双口 RAM模块(III)读取该触头状态信息。
6.根据权利要求1所述的ARM+FPGA组成的定时器装置,其特征在于所述双口RAM模块(III)和由FPGAl构成的FPGA定时器模块(IV)是分别独立的两个模块。
7.根据权利要求1所述的ARM+FPGA组成的定时器装置,其特征在于所述双口RAM模块(III)嵌入构成FPGA定时器模块(IV)的FPGA2中,所述FPGA2模块是一块同时带有双口 RAM模块(III)和FPGA定时器模块(IV)结构的模块。
专利摘要一种ARM+FPGA组成的定时器装置,以嵌入式ARM微处理器为控制模块、FPGA为定时处理模块,包括ARM控制模块、存储器模块、FPGA定时器模块、双口RAM模块和电源模块;ARM控制模块分别与存储器模块和双口RAM模块连接,FPGA定时器模块与双口RAM模块连接;ARM控制模块在执行大规模时间控制程序或可编程控制器用户程序时,定时器满足运行的条件下,ARM控制模块向双口RAM模块传输运行状态信息,不满足运行的条件下,向双口RAM模块传输停止运行信息;当程序读取软触头存储单元信息时,ARM控制模块从双口RAM模块读取该触头状态信息。该定时器装置定时精度高、适用于需要数量众多定时器与定时控制的装置。
文档编号G05B19/05GK202196296SQ20112023175
公开日2012年4月18日 申请日期2011年7月1日 优先权日2011年7月1日
发明者付杰, 吴笔迅, 李克俭, 潘绍明, 蔡启仲 申请人:广西工学院