面向高速嵌入式控制系统的PCI多功能数字控制系统
技术领域
本发明属于数字控制系统领域。
背景技术
目前的数字控制系统,板卡多采用PCI配置芯片+MCU的结构,成本较高,可靠性较低,MCU易受干扰,对板卡的电磁兼容性和信号完整性有较高的要求;许多控制算法都采用软件设计,资源占用较多,可靠性实时性较低,且不利于嵌入式系统的单片化设计。
发明内容
本发明是为了解决现有数字控制系统采用硬件实现,且其内部控制逻辑采用软件实现,导致系统可靠性低和灵活性差的问题,本发明提供了一种面向高速嵌入式控制系统的PCI多功能数字控制系统。
面向高速嵌入式控制系统的PCI多功能数字控制系统,它包括FPGA、FPGA配置器件、非易失性大容量存储器、外设接口与信号转换器和电平转换接口,所述的FPGA的电压信号输入输出端通过电平转换接口与PCI系统总线连接,FPGA的存储信号输入输出端与非易失性大容量存储器的存储信号输入输出端连接,FPGA的控制信号输入输出端与外设接口与信号转换器的信号输入输出端连接,FPGA的数据信号输入输出端与FPGA配置器件的数据信号输入输出端连接。
所述的FPGA内部嵌入有:PCI协议解析模块、地址寄存器、外设寻址器、外设使能寄存器、数据寄存器、SRAM数据缓存器、算法逻辑控制模块、指令生成器、指令输出寄存器和指令库;
所述的PCI协议解析模块用于将地址和数据信息分别存入地址寄存器和数据寄存器,并且与数据寄存器进行数据交换,
地址寄存器中的地址信息通过外设寻址器译码之后,存储至外设使能寄存器供外设读取;
算法逻辑控制模块采集数据寄存器和SRAM数据缓存器中的数据信息进行处理获得结果,并将获得的结果输出至指令生成器中生成控制指令,该控制指令发送至指令输出寄存器供外设读取;
算法逻辑控制模块内预置了反馈延迟补偿算法,用于对外设的反馈信号传输造成的延迟进行补偿;数据寄存器通过SRAM数据缓存器与外设进行DMA数据传输;
指令库是预存于FPGA内部的指令集合,外设被选通后,通过指令输出寄存器直接调用指令库中的指令,指令指针自动指向下一条指令,在外设时钟或全局时钟的控制下,实现一系列指令的定时发送。
所述的算法逻辑控制模块包括PID控制模块、FFT算法模块和FIR算法模块,所述的PID控制模块用于实现电动元件的优化控制,FFT算法模块用于分析信号的运动性能,FIR算法模块用于实现高级数字控制。
FPGA内设有的PCI协议解析模块,能够极大程度上降低开发成本,将成本高、灵活度低、周期长的硬件设计转化为成本低、灵活度高、周期短的软件设计,面向高速嵌入式控制系统的PCI多功能数字控制系统应用在控制板卡上,控制板卡的体积可以做得很小,减少外部走线,提高系统的可靠性。
本发明所述的面向高速嵌入式控制系统的PCI多功能数字控制系统有如下优点:
(1)采用PCI系统总线与工控机系统连接,完成与控制界面和数据库的高速数据交换;
(2)SRAM数据缓存器和指令库,能够在工控机较少的干预条件下,相对独立地完成部分控制功能,减少了与系统的传输与中断调度,提高了系统的速度和控制效率,增强了系统的灵活性;
(3)采用单片FPGA完成所有基本的逻辑控制功能,相比于传统的分立式布局和典型的DSP+逻辑器件+总线接口芯片的布局来说,极大地节省了物理空间,并极大地降低了成本,省去了较贵的DSP和总线接口芯片器件;
(4)将所有功能集成在FPGA中还减少了板级走线,提高了系统的可靠性;同时配置更为灵活,设备升级时也不需要更改硬件设计,只需发布新的固件下载到FPGA配置器件当中即可完成功能更新,更能胜任对特定控制模块的专用设计;
(5)对FPGA很容易实现各种级别的加密,加密后的FPGA内部配置很难被破解,有利于知识产权的保护。
本发明所述的面向高速嵌入式控制系统的PCI多功能数字控制系统已通过硬件测试和系统调试。经过测试标明,板卡能够长时间稳定工作,可靠性高,能够正常对直流电机、步进电机、LED点阵、液晶显示屏等外设进行操作,且有较高的稳定性;SRAM数据缓存器工作正常,DMA数据传输速度快,在32位工控机33MHz总线时钟下,最大传输速度能够达到132MB/s,能够完成预设的控制功能。
附图说明
图1为本发明所述的面向高速嵌入式控制系统的PCI多功能数字控制系统的原理示意图;
图2为具体实施方式二所述的FPGA的内部原理示意图。
具体实施方式
具体实施方式一:参见图1说明本实施方式,本实施方式所述的面向高速嵌入式控制系统的PCI多功能数字控制系统,它包括FPGA1、FPGA配置器件2、非易失性大容量存储器3、外设接口与信号转换器4和电平转换接口5,所述的FPGA1的电压信号输入输出端通过电平转换接口5与PCI系统总线连接,FPGA1的存储信号输入输出端与非易失性大容量存储器3的存储信号输入输出端连接,FPGA1的控制信号输入输出端与外设接口与信号转换器4的信号输入输出端连接,FPGA1的数据信号输入输出端与FPGA配置器件2的数据信号输入输出端连接。
本实施方式中,由于工控机的PCI系统总线是5V信号环境,而FPGA1信号标准是3.3V信号环境,因此需要用电平转换接口5实现5V信号和3.3V信号之间的电平转换。此外,不同的外设有不同的信号标准和驱动标准,因此也需要外设接口与信号转换器4作为外设接口。
本发明所述的面向高速嵌入式控制系统的PCI多功能数字控制系统能够对步进电机、直流电机、显示设备和LED光阵等进行控制。
面向高速嵌入式控制系统的PCI多功能数字控制系统应用在控制板卡上,控制板卡的体积可以做得很小,减少外部走线,提高系统的可靠性。
具体实施方式二:参见图2说明本实施方式,本实施方式与具体实施方式一所述的面向高速嵌入式控制系统的PCI多功能数字控制系统的区别在于,所述的FPGA1内部嵌入有:PCI协议解析模块1-1、地址寄存器1-2、外设寻址器1-3、外设使能寄存器1-4、数据寄存器1-5、SRAM数据缓存器1-6、算法逻辑控制模块1-7、指令生成器1-8、指令输出寄存器1-9和指令库1-10;
所述的PCI协议解析模块1-1用于将地址和数据信息分别存入地址寄存器1-2和数据寄存器1-5,并且与数据寄存器1-5进行数据交换,
地址寄存器1-2中的地址信息通过外设寻址器1-3译码之后,存储至外设使能寄存器1-4供外设读取;
算法逻辑控制模块1-7采集数据寄存器1-5和SRAM数据缓存器1-6中的数据信息进行处理获得结果,并将获得的结果输出至指令生成器1-8中生成控制指令,该控制指令发送至指令输出寄存器1-9供外设读取;
算法逻辑控制模块1-7内预置了反馈延迟补偿算法,用于对外设的反馈信号传输造成的延迟进行补偿;数据寄存器1-5通过SRAM数据缓存器1-6与外设进行DMA数据传输;
指令库1-10是预存于FPGA1内部的指令集合,外设被选通后,通过指令输出寄存器1-9直接调用指令库1-10中的指令,指令指针自动指向下一条指令,在外设时钟或全局时钟的控制下,实现一系列指令的定时发送。
本实施方式中,FPGA1内设有的PCI协议解析模块1-1,能够极大程度上降低开发成本,将成本高、灵活度低、周期长的硬件设计转化为成本低、灵活度高、周期短的软件设计。借助FPGA1内置的SRAM数据缓存1-6,在上位机和外设之间,能够进行大规模的DMA数据传输,为各种显示设备提供了高速可靠的功能实现。指令库1-10中指令调用和发送实用于如步进电机、伺服电机和流水灯等强实时性外设的工运作。
数据寄存器1-5和SRAM数据缓存1-6中的数据信息通过算法逻辑控制模块1-7进行算法的处理,获得结果,并将获得的结果输出至指令生成器1-8中生成控制指令,该控制指令通过指令输出寄存器1-9输入给相应外设;被选中的外设在该控制指令下执行相应的动作。
具体实施方式三:参见图2说明本实施方式,本实施方式与具体实施方式二所述的面向高速嵌入式控制系统的PCI多功能数字控制系统的区别在于,所述的算法逻辑控制模块1-7包括PID控制模块、FFT算法模块和FIR算法模块,
所述的PID控制模块用于实现电动元件的优化控制,FFT算法模块用于分析信号的运动性能,FIR算法模块用于实现高级数字控制。
本实施方式中,PID控制模块、FFT算法模块和FIR算法模块中的算法采用现有算法就能实现。
具体实施方式四:参见图2说明本实施方式,本实施方式与具体实施方式三所述的面向高速嵌入式控制系统的PCI多功能数字控制系统的区别在于,所述的算法逻辑控制模块1-7采用逻辑单元硬件实现或采用基于NIOS II核的软件实现。
本实施方式中,算法逻辑控制模块1-7嵌入在FPGA1内,算法逻辑控制模块1-7可以采用逻辑单元硬件实现,占用资源较小,速度快且稳定;也可以采用基于NIOS II核的软件实现,该方法编程简单,开发周期短,更新升级快。