一种与8位微处理器应用系统连接的计数器IP核及其实现计数器计数控制的方法技术方案

技术编号:12426077 阅读:98 留言:0更新日期:2015-12-03 11:28
一种与8位微处理器应用系统连接的计数器IP核,包括数据输入输出与命令字分解存储控制模块,脉冲12分频器,计数处理控制模块,计数器溢出标志控制模块和输入门控选择控制模块;本发明专利技术应用FPGA设计计数器IP核硬连接控制电路,计数器IP核有14个16位计数器,其中12个能够组成6个32位计数器,一个命令字设置工作模式,滤波基准时钟脉冲倍数的参数设置,另一个命令字控制工作状态;本发明专利技术除8位微处理器对计数器进行功能和状态设置、计数参数传输、读计数当前值的操作之外,每个16位/32位计数器还具有自动重新装载计数参数功能,不占用8位微处理器程序执行时间;能够满足数量众多计数器计数与计数控制系统的需求。

【技术实现步骤摘要】

本专利技术涉及一种与8位微处理器应用系统连接的计数器IP核及其实现计数器计 数控制的方法,尤其涉及一种基于FPGA并行处理的特点,应用FPGA设计硬连接电路组成的 能够与8位微处理器应用系统连接的计数器IP核及其实现计数器计数控制的方法
技术介绍
在大规模计数控制或其它需要应用众多计数器的8位微处理器应用系统中,将使 用大量的计数器,扩展计数器个数有三种实现方式:第一种方式是应用微处理器中的一个 计数器的计数值作为基准计数值,采用计数中断方式编程,设置基准计数值的倍数变量,该 计数值倍数变量也是扩展计数器的标识变量,编程方法主要有2种,第1种方法是执行一次 计数器中断服务函数计数值倍数变量加1,并与设置的基准计数值的倍数值比较,如果计数 值倍数变量已达到设置的基准计数值的倍数值,对计数值倍数变量清〇,然后执行该扩展计 数器计数值溢出的程序;或专门设置一个扩展计数器的标识变量,当计数值倍数变量已达 到设置的基准计数值的倍数值时,对计数值倍数变量清〇,置1计数器的标识变量,在主函 数的程序中判断该计数器的标识变量是否为" 1",如果是,则清0该计数器的标识变量,执 行一次该扩展计数器计数值溢出的处理函数;第二种方式是微处理器与计数器扩展芯片连 接,目前计数器芯片主要有82C54,可以扩展3个16位计数器; 以上二种实现方式存在如下不足之处: 1. 应用基准计数器的计数中断方法,CPU响应和退出基准计数器中断服务程序占用 CPU运行时间;基准计数值越小,计数器系统需要扩展的计数器越多,将占用CPU运行时间 越长,对其它程序模块的执行速度产生严重的影响; 2. 第二种方式采用微处理器外扩专用计数器芯片,所需的计数器越多,外扩专用计数 器芯片就越多,8位微处理器应用系统的电路规模就越大; 第三种方式是采用不可编程的硬件计数,其每个计数器用独立的硬件电路实现;采用 这种方式实现计数功能,所需的计数器越多,电路规模就越大,且维护工作量大。
技术实现思路
本专利技术的目的在于充分应用FPGA的并行处理功能,提供一种基于FPGA的与8位 微处理器应用系统连接的计数器IP核及其实现计数器计数控制的方法,计数器IP核内部 有14个16位计数器,能够应用12个16位计数器设置成为6个32位计数器,每个16位计 数器或32位计数器能够输出计数溢出信号,能够编程设置门控信号控制计数器的工作,计 数器的工作模式,选择四种计数输入脉冲的滤波参数,该计数器IP核只需要经过初始化编 程的两条命令设置每个计数器的工作运行方式,每个计数器计数值溢出时,能够自动重新 装载计数参数,计数过程不占用8位微处理器程序执行的时间,能够实现对数量多达14个 16位计数器或6个32位计数器的计数与计数控制等优点,以克服已有计数方式实现技术所 存在的不足。 为解决上述技术问题,本专利技术采取的技术方案是:一种与8位微处理器应用系统 连接的计数器IP核,其特征在于:该计数器IP核包括数据输入输出与命令字分解存储控制 模块,脉冲12分频器,计数处理控制模块,计数器溢出标志控制模块,输入门控选择控制模 块; 所述数据输入输出与命令字分解存储控制模块与8位微处理器应用系统、计数处理控 制模块、计数器溢出标志控制模块和输入门控选择控制模块连接; 所述脉冲12分频器还与8位微处理器应用系统和计数处理控制模块连接; 所述计数处理控制模块还与8位微处理器应用系统、计数器溢出标志控制模块和输入 门控选择控制模块连接; 所述数据输入输出与命令字分解存储控制模块在输入的片选信号为低电平的条件下, 如果写信号有效,按照8位微处理器应用系统给定的计数器或计数器命令字的地址,获得 计数器运行的工作模式分频倍数编码命令字,状态控制命令字,16位计数器或32位计数器 的计数参数,并按照计数参数、计数器编号、工作模式分频倍数编码和状态控制分别予以存 储和输出,还输出写工作模式分频倍数编码命令字信号、写状态控制命令字信号和写计数 器参数信号;如果读信号有效向8位微处理器应用系统传输计数器实时计数值; 所述脉冲12分频器对8位微处理器应用系统的时钟脉冲进行分频,其输出作为计数处 理控制模块的计数器计数控制操作的滤波基准时钟脉冲; 所述计数处理控制模块在写工作模式分频倍数编码命令字信号的作用下,按照计数器 编号存储该计数器的工作模式,滤波基准时钟分频倍数的编码值;在写状态控制命令字信 号的作用下,按照计数器编号存储该计数器的状态控制信号;在写计数器参数信号的作用 下,按照计数器编号存储该计数器的计数参数;所述计数处理控制模块在计数器IP核外部 输入的计数处理控制运行时钟脉冲CLK II的作用下,控制计数处理控制模块的运行,按照 脉冲12分频器输出的一个滤波基准时钟脉冲周期完成所有已启动计数器的一次处理,包 括每个计数器的状态控制处理,工作模式的判断处理,当滤波基准时钟的个数达到一个16 位/32位计数器所设置的滤波基准时钟倍数值时,从计数器IP核外部读入该计数器的计数 输入信号,进行一次滤波处理,如果判断是一次有效地计数脉冲,则对该计数器的实时计数 参数值进行加1操作,产生溢出时,对实时计数参数值自动重装载计数参数,并输出溢出标 志信号;在数据输入输出与命令字分解存储控制模块输入的片选信号为低电平的条件下, 如果读信号有效,按照8位微处理器应用系统给定的计数器的地址,直接读出该计数器的 实时计数参数值经数据输入输出与命令字分解存储控制模块传输到8位微处理器应用系 统的数据总线,16位计数器的实时计数参数需要分时两次予以读出,32位计数器的实时计 数参数需要分时四次予以读出;在8位微处理器应用系统输出的复位信号作用下,停止所 有计数器的计数操作; 所述计数器溢出标志控制模块输出16位/32位计数器的高电平为有效的溢出信号;计 数处理控制模块输出的16位计数器的溢出信号由低电平变换为高电平时,存储该计数器 溢出标志为高电平;如果该计数器溢出标志为高电平,清溢出标志由高电平转换为低电平, 存储该计数器溢出标志为低电平;在写工作模式分频倍数编码命令字信号的作用下,计数 器溢出标志控制模块按照寄存器编号存储32位计数器工作模式的信息,封锁该32位计数 器低16位的溢出信息保持为低电平; 所述输入门控选择控制模块在写工作模式分频倍数编码命令字信号作用下,按照计数 器编号存储该计数器的工作模式,根据该计数器工作模式所确定的门控功能要求和输入的 门控电平,控制输入门控选择控制模块输出的门控信号。 其进一步技术方案是:所述数据输入输出与命令字分解存储控制模块包括8位双 向数据选通三态门组,读写信号控制模块,计数参数寄存器,计数器编号寄存器,工作模式 滤波编码寄存器,状态控制寄存器; 所述8位双向数据选通三态门组分别与8位微处理器应用系统、读写信号控制模块、计 数参数寄存器、计数器编号寄存器,工作模式滤波编码寄存器,状态控制寄存器和计数处理 控制模块连接; 所述读写信号控制模块还与8位微处理器应用系统、计数参数寄存器、计数器编号寄 存器,工作模式滤波编码寄存器,状态控制寄存器、计数处理控制模块、计数器溢出标志控 制模块和输入门控选择控制模块连接; 所述计数参数寄存器还与计数处理控制模块连接; 所本文档来自技高网
...
一种与8位微处理器应用系统连接的计数器IP核及其实现计数器计数控制的方法

【技术保护点】
一种与8位微处理器应用系统连接的计数器IP核,其特征在于:该计数器IP核包括数据输入输出与命令字分解存储控制模块(Ⅱ),脉冲12分频器(Ⅲ),计数处理控制模块(Ⅳ),计数器溢出标志控制模块(Ⅴ),输入门控选择控制模块(Ⅵ);所述数据输入输出与命令字分解存储控制模块(Ⅱ)与8位微处理器应用系统(Ⅰ)、计数处理控制模块(Ⅳ)、计数器溢出标志控制模块(Ⅴ)和输入门控选择控制模块(Ⅵ)连接;所述脉冲12分频器(Ⅲ)还与8位微处理器应用系统(Ⅰ)和计数处理控制模块(Ⅳ)连接;所述计数处理控制模块(Ⅳ)还与8位微处理器应用系统(Ⅰ)、计数器溢出标志控制模块(Ⅴ)和输入门控选择控制模块(Ⅵ)连接;所述数据输入输出与命令字分解存储控制模块(Ⅱ)在输入的片选信号为低电平的条件下,如果写信号有效,按照8位微处理器应用系统(Ⅰ)给定的计数器或计数器命令字的地址,获得计数器运行的工作模式分频倍数编码命令字,状态控制命令字,16位计数器或32位计数器的计数参数,并按照计数参数、计数器编号、工作模式分频倍数编码和状态控制分别予以存储和输出,还输出写工作模式分频倍数编码命令字信号、写状态控制命令字信号和写计数器参数信号;如果读信号有效向8位微处理器应用系统(Ⅰ)传输计数器实时计数值;所述脉冲12分频器(Ⅲ)对8位微处理器应用系统(Ⅰ)的时钟脉冲进行分频,其输出作为计数处理控制模块(Ⅳ)的计数器计数控制操作的滤波基准时钟脉冲;所述计数处理控制模块(Ⅳ)在写工作模式分频倍数编码命令字信号的作用下,按照计数器编号存储该计数器的工作模式,滤波基准时钟分频倍数的编码值;在写状态控制命令字信号的作用下,按照计数器编号存储该计数器的状态控制信号;在写计数器参数信号的作用下,按照计数器编号存储该计数器的计数参数;所述计数处理控制模块(Ⅳ)在计数器IP核外部输入的计数处理控制运行时钟脉冲CLKⅡ的作用下,控制计数处理控制模块(Ⅳ)的运行,按照脉冲12分频器(Ⅲ)输出的一个滤波基准时钟脉冲周期完成所有已启动计数器的一次处理,包括每个计数器的状态控制处理,工作模式的判断处理,当滤波基准时钟的个数达到一个16位/32位计数器所设置的滤波基准时钟倍数值时,从计数器IP核外部读入该计数器的计数输入信号,进行一次滤波处理,如果判断是一次有效地计数脉冲,则对该计数器的实时计数参数值进行加1操作,产生溢出时,对实时计数参数值自动重装载计数参数,并输出溢出标志信号;在数据输入输出与命令字分解存储控制模块(Ⅱ)输入的片选信号为低电平的条件下,如果读信号有效,按照8位微处理器应用系统(Ⅰ)给定的计数器的地址,直接读出该计数器的实时计数参数值经数据输入输出与命令字分解存储控制模块(Ⅱ)传输到8位微处理器应用系统(Ⅰ)的数据总线,16位计数器的实时计数参数需要分时两次予以读出,32位计数器的实时计数参数需要分时四次予以读出;在8位微处理器应用系统(Ⅰ)输出的复位信号作用下,停止所有计数器的计数操作;所述计数器溢出标志控制模块(Ⅴ)输出16位/32位计数器的高电平为有效的溢出信号;计数处理控制模块(Ⅳ)输出的16位计数器的溢出信号由低电平变换为高电平时,存储该计数器溢出标志为高电平;如果该计数器溢出标志为高电平,清溢出标志由高电平转换为低电平,存储该计数器溢出标志为低电平;在写工作模式分频倍数编码命令字信号的作用下,计数器溢出标志控制模块(Ⅴ)按照寄存器编号存储32位计数器工作模式的信息,封锁该32位计数器低16位的溢出信息保持为低电平;所述输入门控选择控制模块(Ⅵ)在写工作模式分频倍数编码命令字信号作用下,按照计数器编号存储该计数器的工作模式,根据该计数器工作模式所确定的门控功能要求和输入的门控电平,控制输入门控选择控制模块(Ⅵ)输出的门控信号。...

【技术特征摘要】

【专利技术属性】
技术研发人员:柯宝中侯丽蔡启仲潘绍明
申请(专利权)人:广西科技大学
类型:发明
国别省市:广西;45

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1