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

文档序号:9396823阅读:542来源:国知局
一种与8位微处理器应用系统连接的计数器ip核及其实现计数器计数控制的方法
【技术领域】
[0001] 本发明涉及一种与8位微处理器应用系统连接的计数器IP核及其实现计数器计 数控制的方法,尤其涉及一种基于FPGA并行处理的特点,应用FPGA设计硬连接电路组成的 能够与8位微处理器应用系统连接的计数器IP核及其实现计数器计数控制的方法。
【背景技术】
[0002] 在大规模计数控制或其它需要应用众多计数器的8位微处理器应用系统中,将使 用大量的计数器,扩展计数器个数有三种实现方式:第一种方式是应用微处理器中的一个 计数器的计数值作为基准计数值,采用计数中断方式编程,设置基准计数值的倍数变量,该 计数值倍数变量也是扩展计数器的标识变量,编程方法主要有2种,第1种方法是执行一次 计数器中断服务函数计数值倍数变量加1,并与设置的基准计数值的倍数值比较,如果计数 值倍数变量已达到设置的基准计数值的倍数值,对计数值倍数变量清〇,然后执行该扩展计 数器计数值溢出的程序;或专门设置一个扩展计数器的标识变量,当计数值倍数变量已达 到设置的基准计数值的倍数值时,对计数值倍数变量清〇,置1计数器的标识变量,在主函 数的程序中判断该计数器的标识变量是否为" 1",如果是,则清0该计数器的标识变量,执 行一次该扩展计数器计数值溢出的处理函数;第二种方式是微处理器与计数器扩展芯片连 接,目前计数器芯片主要有82C54,可以扩展3个16位计数器; 以上二种实现方式存在如下不足之处: 1. 应用基准计数器的计数中断方法,CPU响应和退出基准计数器中断服务程序占用 CPU运行时间;基准计数值越小,计数器系统需要扩展的计数器越多,将占用CPU运行时间 越长,对其它程序模块的执行速度产生严重的影响; 2. 第二种方式采用微处理器外扩专用计数器芯片,所需的计数器越多,外扩专用计数 器芯片就越多,8位微处理器应用系统的电路规模就越大; 第三种方式是采用不可编程的硬件计数,其每个计数器用独立的硬件电路实现;采用 这种方式实现计数功能,所需的计数器越多,电路规模就越大,且维护工作量大。

【发明内容】

[0003] 本发明的目的在于充分应用FPGA的并行处理功能,提供一种基于FPGA的与8位 微处理器应用系统连接的计数器IP核及其实现计数器计数控制的方法,计数器IP核内部 有14个16位计数器,能够应用12个16位计数器设置成为6个32位计数器,每个16位计 数器或32位计数器能够输出计数溢出信号,能够编程设置门控信号控制计数器的工作,计 数器的工作模式,选择四种计数输入脉冲的滤波参数,该计数器IP核只需要经过初始化编 程的两条命令设置每个计数器的工作运行方式,每个计数器计数值溢出时,能够自动重新 装载计数参数,计数过程不占用8位微处理器程序执行的时间,能够实现对数量多达14个 16位计数器或6个32位计数器的计数与计数控制等优点,以克服已有计数方式实现技术所 存在的不足。
[0004] 为解决上述技术问题,本发明采取的技术方案是:一种与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位的溢出信息保持为低电平; 所述输入门控选择控制模块在写工作模式分频倍数编码命令字信号作用下,按照计数 器编号存储该计数器的工作模式,根据该计数器工作模式所确定的门控功能要求和输入的 门控电平,控制输入门控选择控制模块输出的门控信号。
[0005] 其进一步技术方案是:所述数据输入输出与命令字分解存储控制模块包括8位双 向数据选通三态门组,读写信号控制模块,计数参数寄存器,计数器编号寄存器,工作模式 滤波编码寄存器,状态控制寄存器; 所述8位双向数据选通三态门组分别与8位微处理器应用系统、读写信号控制模块、计 数参数寄存器、计数器编号寄存器,工作模式滤波编码寄存器,状态控制寄存器和计数处理 控制模块连接; 所述读写信号控制模块还与8位微处理器应用系统、计数参数寄存器、计数器编号寄 存器,工作模式滤波编码寄存器,状态控制寄存器、计数处理控制模块、计数器溢出标志控 制模块和输入门控选择控制模块连接; 所述计数参数寄存器还与计数处理控制模块连接; 所述计数器编号寄存器还与8位微处理器应用系统、计数处理控制模块、计数器溢出 标志控制模块和输入门控选择控制模块连接; 所述工作模式滤波编码寄存器还与8位微处理器应用系统、计数处理控制模块、计数 器溢出标志控制模块和输入门控选择控制模块连接; 所述状态控制寄存器还与8位微处理器应用系统、计数处理控制模块和计数器溢出标 志控制模块连接; 所述数据输入输出与命令字分解存储控制模块的读写信号控制模块在片选信号为低 电平的条件下,如果写信号有效,发出8位双向数据选通三态门组写信号,选通8位微处理 器应用系统数据总线的数据输入;产生写计数器编号信号,并判断8位微处理器应用系统 地址总线输入的地址值,如果是计数器参数的地址值,将该地址值写入计数器编号寄存器, 产生写计数器参数信号,将数据总线的8位数据写入计数参数寄存器;如果是计数器命令 字地址,将数据总线的第2位~第5位数据写入计数器编号寄存器,命令字地址是OHl或 0FH,设置第3位计数器编号值S3为0,否则设置为1 ;如果是命令字低8位地址,则命令字 是工作模式分频倍数编码命令字,产生写工作模式分频倍数编码命令字信号,将数据总线 的第0位、第1位、第6位和第7位写入工作模式分频倍数编码寄存器;如果是命令字高8 位地址,则命令字是状态控制命令字,产生写状态控制命令字信号,将数据总线的第0位、 第1位和第7位写入状态控制寄存器;如果读信号有效,发出8位双向数据选通三态门组读 信号,将计数处理控制模块的计数器IP核内部输出数据总线的数据传输到8位微处理器应 用系统的数据总线。
[0006] 其更进一步技术方案是:所述计数处理控制模块包括计数器计数控制操作模块, 地址选通控制I,8位计数参数双端口存储器,地址选通控制II,8位计数实时参数双端口 存储器,地址选通控制III,4位工作模式分频倍数编码双端口存储器,地址选通控制IV,3位 状态控制双端口存储器,4位计数滤波参数移位存储器; 所述计数器计数控制操作模块分别与脉冲12分频器、计数器溢出标志控制模块、输入 门控选择控制模块、地址选通控制I、8位计数参数双端口存储器、地址选通控制II、8位计 数实时参数双端口存储器、地址选通控制m、4位工作模式分频倍数编码双端口存储器、地 址选通控制IV、3位状态控制双端口存储器,4位计数滤波参数移位存储器,计数器IP核 外部输入的计数输入信号和计数处理控制运行时钟脉冲CLK II连接; 所述地址选通控制I还与数据输入输出与命令字分解存储控制模块和8位计数参数 双端口存储器连接; 所述8位计数参数双端口存储器还与数据输入输出与命令字分解存储控制模块和8位 计数实时参数双端口存储器连接; 所述地址选通控制II还与8位微处理器应用系统、数据输入输出与命令字分解存储控 制模块和8位计数实时参数双端口存储器连接; 所述8位计数实时参数双端口存储器还与数据输入输出与命令字分解存储控制模块 连接; 所述地址选通控制III还与数据输入输出与命令字分解存储控制模块和4位工作模式 分频倍数编码双端口存储器连接; 所述4位工作模式分频倍数编码双端口存储器还与数据输入输出与命令字分解存储 控制模块连接; 所述地址选通控制IV还与数据输入输出与命令字分解存储控制模块和3位状态控制 双端口存储器连接; 所述3位状态控制双端口存储器还与数据输入输出与命令字分解存储控制模块、8位 微处理器应用系统的复位信号连接;如果输入的复位信号为有效的复位信号,复位3位状 态控制双端口存储器,停止所有计数器的计数。
[0007] 其再进一步技术方案是:所述计数器溢出标志控制模块包括非门,MO工作模式位 寄存器组,溢出清零脉冲控制器,与非门I,D触发器I,与门I,与非门II,D触发器II,与 非门III,D触发器III,与门II,与非门IV,D触发器IV,与非门V,D触发器V,与门III,与非门 VI,D触发器VI,与非门W,D触发器W,与非门W,D触发器W,与门IV,与非门IX,D触发器 IX,与非门X,D触发器X,与门V,与非门XI,D触发器XI,与非门XLD触发器XL与门VI,与 非门XIII,D触发器XIII,与非门XIV,D触发器XIV ; 所述非门的输入端与数据输入输出与命令字分解存储控制模块的状态控制寄存器的 MO输出端连接,输出端与MO工作模式位寄存器组的一个输入端连接; MO工作模式位寄存器组的另三个输入端分别与8位微处理器应用系统的复位信号输 出端、数据输入输出与命令字分解存储控制模块的读写信号控制模块的写工作模式滤波编 码命令字信号输出端和计数器编号寄存器的计数器编号输出端连接,输出端分别与门I、 与门II、与门III、与门IV、与门V、与门VI的一个输入端连接; 溢出清零脉冲控制器的三个输入端分别与数据输入输出与命令字分解存储控制模块 的读写信号控制模块的写状态控制命令字信号输出端、状态控制寄存器的清溢出标志输出 端和计数器编号寄存器的计数器编号输出端连接,输出端分别与非门I、与非门II、与非门 III、与非门IV、与非门V、与非门VI、与非门W、与非门VDI、与非门IX、与非门X、与非门XI、与 非门χπ、与非门XIII、与非门XIV的一个输入端连接;输出端还与D触发器I、D触发器II、D 触发器III、D触发器IV、D触发器V、D触发器VI、D触发器W、D触发器VDI、D触发器IX、D触 发器X、D触发器XI、D触发器ΧΠ 、D触发器XIII和D触发器XIV的数据输入端连接; 与非门I的另一个输入端与计数处理控制模块的溢出标志输出端连接,输出端与D触 发器I的时钟信号输入端连接; D触发器I的数据输出端和与门I的另一个输入端连接; 与门I的输出端作为16位计数器O的溢出标志输出信号与8位微处理器应用系统连 接; 与非门II的另一个输入端与计数处理控制模块的溢出标志输出端连接,输出端与D触 发器II的时钟信号输入端连接; D触发器II的数据输出端作为16位计数器1/32位计数器O的溢出标志输出信号输出 端与8位微处理器应用系统连接; 与非门III的另一个输入端与计数处理控制模块的溢出标志输出端连接,输出端与D触 发器III的时钟信号输入端连接; D触发器III的数据输出端和与门II的另一个输入端连接; 与门II的输出端作为16位计数器2的溢出标志输出信号与8位微处理器应用系统连 接; 与非门IV的另一个输入端与计数
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1