CN202196296U - Arm+fpga组成的定时器装置 - Google Patents
Arm+fpga组成的定时器装置 Download PDFInfo
- Publication number
- CN202196296U CN202196296U CN201120231754XU CN201120231754U CN202196296U CN 202196296 U CN202196296 U CN 202196296U CN 201120231754X U CN201120231754X U CN 201120231754XU CN 201120231754 U CN201120231754 U CN 201120231754U CN 202196296 U CN202196296 U CN 202196296U
- Authority
- CN
- China
- Prior art keywords
- module
- timer
- arm
- fpga
- port ram
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn - After Issue
Links
Images
Landscapes
- Logic Circuits (AREA)
Abstract
一种ARM+FPGA组成的定时器装置,以嵌入式ARM微处理器为控制模块、FPGA为定时处理模块,包括ARM控制模块、存储器模块、FPGA定时器模块、双口RAM模块和电源模块;ARM控制模块分别与存储器模块和双口RAM模块连接,FPGA定时器模块与双口RAM模块连接;ARM控制模块在执行大规模时间控制程序或可编程控制器用户程序时,定时器满足运行的条件下,ARM控制模块向双口RAM模块传输运行状态信息,不满足运行的条件下,向双口RAM模块传输停止运行信息;当程序读取软触头存储单元信息时,ARM控制模块从双口RAM模块读取该触头状态信息。该定时器装置定时精度高、适用于需要数量众多定时器与定时控制的装置。
Description
技术领域
本实用新型涉及一种定时器装置,尤其涉及一种用于大规模时间控制装置或可编程控制器(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控制模块分别与存储器模块和双口RAM模块连接,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控制模块运行和通信数据处理提供空间,包括定时器装置处理的信息。
所述FPGA定时器模块包括时间基准脉冲信号发生器、定时单元和定时控制单元;定时控制单元是FPGA定时器模块的控制核心,分别与时间基准脉冲信号发生器和定时单元连接,FPGA定时器模块通过定时控制单元与双口RAM模块连接,并通过双口RAM模块与ARM控制模块连接;
所述时间基准脉冲信号发生器产生定时需要的基准时钟周期工作脉冲;
所述定时单元是由32位字长存储单元组成的定时存储器,包括多个1ms定时器存储单元、10ms定时器存储单元、100ms定时器存储单元和定时器软触头存储单元;
所述定时控制单元通过双口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定时器模块Ⅳ的时间基准脉冲信号发生器采用晶体振荡器产生的脉冲作为FPGA的基准时钟周期工作脉冲,其频率稳定,时间基准脉冲信号发生器输出的脉冲周期精度高,FPGA在基准时钟周期工作脉冲作用下运行,能够确保在一个基准时钟周期工作脉冲的周期内完成对所有定时器的计数、判断和数据传输的执行,能够确保其高精度的定时。
2、定时器运行不占用ARM用户程序执行的时间:
ARM控制模块Ⅰ对用户程序没有使用的定时器不需要作任何操作,对于用户使用的每个定时器,当程序执行某个定时器软元件输出指令时,判断该定时器的工作状态,然后从双口RAM模块该定时器参数存储单元中读入该定时器参数到ARM控制模块Ⅰ中,设置运行状态标志,再传输到双口RAM模块该定时器参数存储单元中,ARM用户程序执行时,相当于将每个定时器只进行读写和判断操作;另一方面,定时器的定时运行操作、定时器软触头状态的设置由FPGA定时器模块Ⅳ完成,不占用ARM程序执行的时间,而且既无中断响应和中断返回时间,也不需要对用户程序没有使用的定时器作任何操作。
3、适合需要数量众多定时器定时与定时控制的系统需求:
本实用新型除ARM 控制模块Ⅰ对双口RAM模块定时器参数存储单元进行读写和判断操作之外,将不占用ARM的程序执行时间;只要FPGA定时器模块Ⅳ在满足时间基准时钟周期内能够完成对FPGA定时器模块Ⅳ中的所有定时器的计数、判断和数据向双口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定时器部件结构图。
图中:
Ⅰ—ARM控制模块,10—嵌入式ARM微处理器,11—人机交互电路,12—控制电路,13—复位电路,14—JTAG调试接口电路;
Ⅱ—存储器模块,21—Nor FLASH存储器,22—Nand FLASH存储器,23—SDRAM存储器;
Ⅲ—双口RAM模块,Ⅲa—实施例一的双口RAM模块,Ⅲb—实施例二的双口RAM模块;
Ⅳ—FPGA定时器模块,Ⅳb—实施例一的FPGA定时器模块,Ⅳb—实施例二的FPGA定时器模块;
41—时间基准脉冲信号发生器,42—定时单元, 421—1ms定时器存储单元,422—10ms定时器存储单元,423—100ms定时器存储单元,424—定时器软触头存储单元,43—定时控制单元;
Ⅴ—电源模块;
其余编号意义参见说明书实施例。
文中缩略语意义:
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控制模块Ⅰ、存储器模块Ⅱ、FPGA定时器模块Ⅳ、双口RAM模块Ⅲ和电源模块Ⅴ;ARM控制模块Ⅰ分别与存储器模块Ⅱ和双口RAM模块Ⅲ连接,FPGA定时器模块Ⅳ与双口RAM模块Ⅲ连接,电源模块Ⅴ将外部电源通过电压电路转换成为合乎要求的电压,为ARM控制模块Ⅰ、存储器模块Ⅱ、双口RAM模块Ⅲ和FPGA定时器模块Ⅳ提供变压后直流电源;
如图2所示,所述ARM控制模块Ⅰ包括嵌入式ARM微处理器10、人机交互电路11、控制电路12、复位电路13、JTAG调试接口电路14,嵌入式ARM微处理器10作为控制核心,分别与人机交互电路11、控制电路12、复位电路13和JTAG调试接口电路14连接;
ARM控制模块Ⅰ在嵌入式ARM微处理器10中构建嵌入式实时操作系统,进行多任务管理和通信管理,实现对ARM控制模块Ⅰ和FPGA定时器模块Ⅳ中的各种信息处理和控制;
人机交互电路11完成ARM控制模块Ⅰ和FPGA定时器模块Ⅳ的控制命令、控制传输的输入;以及ARM控制模块Ⅰ和FPGA定时器模块Ⅳ各种参数的人机界面控制;
控制电路12完成ARM控制模块Ⅰ的数据采集与控制驱动;
复位电路13为ARM控制模块Ⅰ电路提供复位信号;
JTAG调试接口电路14提供调试接口与外接电路相连实现编程装置对ARM控制模块Ⅰ的硬件和软件的调试;
所述存储器模块Ⅱ包括Nor FLASH存储器21、Nand FLASH存储器22和SDRAM存储器23,Nor FLASH存储器21、Nand FLASH存储器22和SDRAM存储器23分别通过ARM控制模块Ⅰ的数据总线X1、地址总线Z1和控制总线Y1与ARM控制模块Ⅰ的嵌入式ARM微处理器10连接,实现ARM微处理器对存储器的操作控制,Nor FLASH存储器21用来存储操作系统及嵌入式ARM微处理器10程序的目标代码映像文件,Nand FLASH存储器22存放执行用户程序的处理信息,以及失电需要保持的信息,包括定时器装置处理的信息,SDRAM存储器23为ARM控制模块Ⅰ运行和通信数据处理提供空间,包括定时器装置处理的信息。
如图3所示,所述FPGA定时器模块Ⅳ包括时间基准脉冲信号发生器41、定时单元42和定时控制单元43;FPGA定时器模块Ⅳ采用晶体振荡器产生的脉冲作为FPGA的工作周期时钟脉冲,晶体振荡器产生的工作周期时钟脉冲与时间基准脉冲信号发生器41和定时控制单元43连接,时间基准脉冲信号发生器41与定时控制单元43连接作为基准时钟周期工作脉冲,定时控制单元43是FPGA定时器模块的控制核心,分别与工作周期时钟脉冲、时间基准脉冲信号发生器41和定时单元42连接,FPGA定时器模块Ⅳ通过定时控制单元43与双口RAM模块Ⅲ连接,并通过双口RAM模块Ⅲ与ARM控制模块Ⅰ连接;
时间基准脉冲信号发生器41产生定时需要的基准时钟周期工作脉冲,本实施例中,FPGA定时器模块Ⅳ采用晶体振荡器产生的脉冲作为FPGA的基准时钟周期工作脉冲;
定时单元42是由32位字长存储单元组成的定时存储器,包括多个1ms定时器存储单元421、10ms定时器存储单元422、100ms定时器存储单元423和定时器软触头存储单元424;
定时控制单元43通过双口RAM模块Ⅲ从ARM控制模块Ⅰ获得定时器运行和定时时间参数的信息或停止运行信息,在工作周期时钟脉冲的作用下,对定时器定时单元42的存储单元内容进行循环读取判断,如果定时单元42中该定时器的定时参数等于或大于双口RAM模块Ⅲ中的该定时器的定时参数时,设置运行状态标志,置位定时器软触头存储单元424该定时器软触头的位单元,清定时单元42中该定时器的定时单元内容;如果小于定时单元42中该定时器的定时参数则进行加1操作,设置运行状态标志,以及设置定时器软触头存储单元424的该定时器软触头的位单元状态;其循环读取判断操作是按照时间基准周期循环操作一次,并将定时器软触头存储单元424的内容传输到双口RAM模块Ⅲ中。
所述双口RAM模块Ⅲ通过ARM控制模块Ⅰ的一组数据总线X1(D0~D31)、地址总线Z1(A0~A12)和控制总线Y1(包括写、读、片选)与ARM控制模块Ⅰ的 嵌入式ARM微处理器10连接,双口RAM模块Ⅲ还通过FPGA定时器模块Ⅳ与双口RAM模块Ⅲ之间的另一组数据总线X2(D0~D31)、地址总线Z2(A0~A12)和控制总线Y2(包括写、读、片选)与FPGA定时器模块Ⅳ连接;
双口RAM模块Ⅲ是ARM控制模块Ⅰ与FPGA定时器模块Ⅳ之间数据传输的桥梁,能够实现ARM控制模块Ⅰ和 FPGA定时器模块Ⅳ同时对双口RAM模块Ⅲ进行操作;ARM控制模块Ⅰ在执行大规模时间控制程序或可编程控制器用户程序的编译程序时,将每个定时器的定时参数传输到双口RAM模块Ⅲ相对应的存储单元中,在执行大规模时间控制程序或可编程控制器用户程序时,当定时器满足定时运行的条件下,ARM控制模块Ⅰ向双口RAM模块Ⅲ传输运行状态信息,当定时器不满足运行的条件下,ARM控制模块Ⅰ向双口RAM模块Ⅲ传输停止运行信息,当大规模时间控制程序或可编程控制器用户程序读取定时器软元件触头信息时,ARM控制模块Ⅰ从双口RAM模块Ⅲ读取该触头状态信息。
实施例二:
一种ARM+FPGA组成的定时器装置,其基本结构与实施例一相同,也是以嵌入式ARM微处理器为控制模块、FPGA为定时处理模块,包括ARM控制模块Ⅰ、存储器模块Ⅱ、FPGA定时器模块Ⅳ、双口RAM模块Ⅲ和电源模块Ⅴ;ARM控制模块Ⅰ分别与存储器模块Ⅱ和双口RAM模块Ⅲ连接,FPGA定时器模块Ⅳ与双口RAM模块Ⅲ连接,电源模块Ⅴ为ARM控制模块Ⅰ、存储器模块Ⅱ、双口RAM模块Ⅲ和FPGA定时器模块Ⅳ提供电源;本实施例二与实施例一不同之处是:实施例一中,双口RAM模块Ⅲ与由FPGA1构成的定时器模块Ⅳ是独立的两个模块;而本实施例中,所述双口RAM模块Ⅲ嵌入构成FPGA定时器模块Ⅳ的FPGA2中,FPGA2是一块同时带有双口RAM模块Ⅲ和FPGA定时器模块Ⅳ的模块(参见图6~图8);本实施例结构的好处在于:充分利用了FPGA的资源;不单设双口RAM模块,使定时器装置硬件电路结构更加简洁。
Claims (7)
1.一种ARM+FPGA组成的定时器装置,其特征在于:所述定时器装置以嵌入式ARM微处理器为控制核心、以FPGA进行定时处理,包括:
ARM控制模块(Ⅰ)、存储器模块(Ⅱ)、FPGA定时器模块(Ⅳ)、双口RAM模块(Ⅲ)和电源模块(Ⅴ),ARM控制模块(Ⅰ)分别与存储器模块(Ⅱ)和双口RAM模块(Ⅲ)连接,FPGA定时器模块(Ⅳ)与双口RAM模块(Ⅲ)连接;
所述ARM控制模块(Ⅰ)以嵌入式ARM微处理器(10)为控制核心,构建嵌入式实时操作系统,进行多任务管理和通信管理,实现对定时器装置中各模块及其信息的处理和控制;
所述存储器模块(Ⅱ)用于存储操作系统及嵌入式ARM微处理器(10)程序的目标代码映像文件、执行用户程序的处理信息、以及为定时器装置的运行和通信数据处理提供空间;
所述双口RAM模块(Ⅲ)分别与所述FPGA定时器模块(Ⅳ)和所述ARM控制模块(Ⅰ)连接,以实现所述ARM控制模块(Ⅰ)与所述FPGA定时器模块(Ⅳ)之间的数据传输;
所述FPGA定时器模块(Ⅳ)以定时控制单元为核心,通过双口RAM模块(Ⅲ)从ARM控制模块(Ⅰ)获得定时器运行和定时时间参数的信息或停止运行信息,在基准时钟周期工作脉冲的作用下,对定时器存储单元内容进行循环读取、判断、处理,实现定时器功能;
所述电源模块(Ⅴ)为ARM控制模块(Ⅰ)、存储器模块(Ⅱ)、双口RAM模块(Ⅲ)和FPGA定时器模块(Ⅳ)提供变压后的电源。
2.根据权利要求1所述的ARM+FPGA组成的定时器装置,其特征在于:所述ARM控制模块(Ⅰ)包括嵌入式ARM微处理器(10)、人机交互电路(11)、控制电路(12)、复位电路(13)、JTAG调试接口电路(14),嵌入式ARM微处理器(10)作为控制核心,分别与人机交互电路(11)、控制电路(12)、复位电路(13)和JTAG调试接口电路(14)连接;
ARM控制模块(Ⅰ)在嵌入式ARM微处理器(10)中构建嵌入式实时操作系统,进行多任务管理和通信管理,实现对ARM控制模块(Ⅰ)和FPGA定时器模块(Ⅳ)各种信息的处理和控制;
人机交互电路(11)完成ARM控制模块(Ⅰ)和FPGA定时器模块(Ⅳ)的控制命令、控制参数的输入;以及ARM控制模块(Ⅰ)和FPGA定时器模块(Ⅳ)各种参数的人机界面控制;
控制电路(12)完成ARM控制模块(Ⅰ)的数据采集与控制驱动;
复位电路(13)为ARM控制模块(Ⅰ)电路提供复位信号;
JTAG调试接口电路(14)提供调试接口与外接电路相连实现编程装置对ARM控制模块(Ⅰ)的硬件和软件的调试。
3.根据权利要求1所述的ARM+FPGA组成的定时器装置,其特征在于:所述存储器模块(Ⅱ)包括Nor FLASH存储器(21)、Nand FLASH存储器(22)和SDRAM存储器(23),Nor FLASH存储器(21)、Nand FLASH存储器(22)和SDRAM存储器(23)分别通过ARM控制模块(Ⅰ)的数据总线(X1)、地址总线(Z1)和控制总线(Y1)与ARM控制模块(Ⅰ)的嵌入式ARM微处理器(10)连接,实现ARM微处理器对存储器的操作控制,Nor FLASH存储器(21)用来存储操作系统及嵌入式ARM微处理器(10)程序的目标代码映像文件,Nand FLASH存储器(22)存放执行用户程序的处理信息,以及失电需要保持的信息,包括定时器装置处理的信息,SDRAM存储器(23)为ARM控制模块(Ⅰ)运行和通信数据处理提供空间,包括定时器装置处理的信息。
4.根据权利要求1所述的ARM+FPGA组成的定时器装置,其特征在于:所述FPGA定时器模块(Ⅳ)包括时间基准脉冲信号发生器(41)、定时单元(42)和定时控制单元(43);定时控制单元(43)是FPGA定时器模块(Ⅳ)的控制核心,分别与时间基准脉冲信号发生器(41)和定时单元(42)连接,FPGA定时器模块(Ⅳ)通过定时控制单元(43)与双口RAM模块(Ⅲ)连接,并通过双口RAM模块(Ⅲ)与ARM控制模块(Ⅰ)连接;
时间基准脉冲信号发生器(41)产生定时需要的基准时钟周期工作脉冲;
定时单元(42)是由32位字长存储单元组成的定时存储器,包括多个1ms定时器存储单元(421)、10ms定时器存储单元(422)、100ms定时器存储单元(423)和定时器软触头存储单元(424);
定时控制单元(43)通过双口RAM模块(Ⅲ)从ARM控制模块(Ⅰ)获得定时器运行和定时时间参数的信息或停止运行信息,在基准时钟周期工作脉冲的作用下,定时控制单元(43)对定时单元(42)的存储单元内容进行循环读取判断,如果定时单元(42)中该定时器的定时参数大于或等于双口RAM模块(Ⅲ)中的该定时器的定时参数时,设置运行状态标志,置位定时器软触头存储单元(424)该定时器软触头的位单元,清定时单元(42)中该定时器的定时单元内容;如果小于定时单元(42)中该定时器的定时参数则进行加1操作,设置运行状态标志,以及设置定时器软触头存储单元(424)的该定时器软触头的位单元状态;其循环读取判断操作是按照时间基准周期循环操作一次,并将定时器软触头存储单元(424)的内容传输到双口RAM模块(Ⅲ)中。
5.根据权利要求1所述的ARM+FPGA组成的定时器装置,其特征在于:所述双口RAM模块(Ⅲ)通过ARM控制模块(Ⅰ)的一组数据总线(X1)、地址总线(Z1)和控制总线(Y1)与ARM控制模块(Ⅰ)的 嵌入式ARM微处理器(10)连接,双口RAM模块(Ⅲ)还通过FPGA定时器模块(Ⅳ)与双口RAM模块(Ⅲ)之间另一组数据总线(X2)、地址总线(Z2)和控制总线(Y2)与FPGA定时器模块(Ⅳ)连接;双口RAM模块(Ⅲ)是ARM控制模块(Ⅰ)与FPGA定时器模块(Ⅳ)之间数据传输的桥梁,能够实现ARM控制模块(Ⅰ)和 FPGA定时器模块(Ⅳ)同时对双口RAM模块(Ⅲ)进行操作;ARM控制模块(Ⅰ)在执行大规模时间顺序逻辑控制程序或可编程控制器用户程序的编译程序时,将每个定时器的定时参数传输到双口RAM模块(Ⅲ)相对应的存储单元中;在执行大规模时间顺序逻辑控制程序或可编程控制器的用户程序时,当定时器满足定时运行的条件下,ARM控制模块(Ⅰ)向双口RAM模块(Ⅲ)传输运行状态信息,当定时器不满足运行的条件下,ARM控制模块(Ⅰ)向双口RAM模块(Ⅲ)传输停止运行信息;当大规模时间顺序逻辑控制程序或可编程控制器用户程序读取定时器软元件触头信息时,ARM控制模块(Ⅰ)从双口RAM模块(Ⅲ)读取该触头状态信息。
6.根据权利要求1所述的ARM+FPGA组成的定时器装置,其特征在于:所述双口RAM模块(Ⅲ)和由FPGA1构成的FPGA定时器模块(Ⅳ)是分别独立的两个模块。
7.根据权利要求1所述的ARM+FPGA组成的定时器装置,其特征在于:所述双口RAM模块(Ⅲ)嵌入构成FPGA定时器模块(Ⅳ)的FPGA2中,所述FPGA2模块是一块同时带有双口RAM模块(Ⅲ)和FPGA定时器模块(Ⅳ)结构的模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201120231754XU CN202196296U (zh) | 2011-07-01 | 2011-07-01 | Arm+fpga组成的定时器装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201120231754XU CN202196296U (zh) | 2011-07-01 | 2011-07-01 | Arm+fpga组成的定时器装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN202196296U true CN202196296U (zh) | 2012-04-18 |
Family
ID=45951193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201120231754XU Withdrawn - After Issue CN202196296U (zh) | 2011-07-01 | 2011-07-01 | Arm+fpga组成的定时器装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN202196296U (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102323786A (zh) * | 2011-07-01 | 2012-01-18 | 广西工学院 | Arm+fpga组成的定时器装置及其实现方法 |
CN105022608A (zh) * | 2015-06-30 | 2015-11-04 | 广西科技大学 | 一种与16位微处理器应用系统连接的定时器ip核及其实现定时器定时控制的方法 |
CN105183430A (zh) * | 2015-06-30 | 2015-12-23 | 广西科技大学鹿山学院 | 一种与8位微处理器应用系统连接的定时器ip核及其实现定时器定时控制的方法 |
-
2011
- 2011-07-01 CN CN201120231754XU patent/CN202196296U/zh not_active Withdrawn - After Issue
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102323786A (zh) * | 2011-07-01 | 2012-01-18 | 广西工学院 | Arm+fpga组成的定时器装置及其实现方法 |
CN105022608A (zh) * | 2015-06-30 | 2015-11-04 | 广西科技大学 | 一种与16位微处理器应用系统连接的定时器ip核及其实现定时器定时控制的方法 |
CN105183430A (zh) * | 2015-06-30 | 2015-12-23 | 广西科技大学鹿山学院 | 一种与8位微处理器应用系统连接的定时器ip核及其实现定时器定时控制的方法 |
CN105022608B (zh) * | 2015-06-30 | 2017-12-08 | 广西科技大学 | 一种与16位微处理器应用系统连接的定时器ip核及其实现定时器定时控制的方法 |
CN105183430B (zh) * | 2015-06-30 | 2018-01-19 | 广西科技大学鹿山学院 | 一种与8位微处理器应用系统连接的定时器ip核及其实现定时器定时控制的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102323786B (zh) | Arm+fpga组成的定时器装置及其实现方法 | |
CN103744342B (zh) | 一种基于双核处理器的pac实时控制系统 | |
EP2711798A1 (en) | Cpu unit for plc, plc-use system program, recording medium in which plc-use system program is stored, plc system, plc support device, plc support program, and recording medium in which plc support program is stored | |
CN103941649A (zh) | 多轴运动卡控制系统的控制方法 | |
CN101261512A (zh) | 基于arm的嵌入式运动控制卡 | |
CN102667649A (zh) | 基于多处理器的可编程逻辑控制器及其操作方法 | |
CN102540952B (zh) | 可编程控制器以及操作方法 | |
CN202196296U (zh) | Arm+fpga组成的定时器装置 | |
CN101211172A (zh) | 一种采用缓冲模式的生产线实时数据采集方法 | |
CN102254218B (zh) | Arm+fpga组成的计数器装置及其实现方法 | |
CN102291337B (zh) | EtherCAT协议与Profibus-DP协议通信转换的网关及其通信方法 | |
CN103870350A (zh) | 一种基于watchdog的微处理器多核加固方法 | |
CN202120300U (zh) | Arm+fpga组成的计数器装置 | |
CN102621960A (zh) | 一种基于ARM-Linux的编译型PAC | |
CN102540973A (zh) | 一种用于数控系统的命令多发机制的实现方法 | |
CN103163825B (zh) | 四通道的数控系统endat2.2接口 | |
CN101702144A (zh) | 一种dma控制器的控制装置及控制方法 | |
CN102183952B (zh) | 一种在plc中嵌入非致命故障诊断的方法 | |
CN102708079A (zh) | 应用于微控制器的控制数据传输的方法及系统 | |
CN201167335Y (zh) | Profibus-DP总线串口服务器 | |
CN1215391C (zh) | 计算机系统 | |
CN201749350U (zh) | 小型plc的人机界面装置 | |
RU101551U1 (ru) | Контроллер для управления сложным объектом | |
CN1333344C (zh) | 减轻片上系统软件负载的方法 | |
CN101094076B (zh) | 一种以太网多路通讯服务器及其控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
AV01 | Patent right actively abandoned |
Granted publication date: 20120418 Effective date of abandoning: 20130619 |
|
RGAV | Abandon patent right to avoid regrant |