一种基于虚拟机器人控制器模拟FPGA系统及其使用方法与流程

文档序号:29809254发布日期:2022-04-27 02:24阅读:256来源:国知局
一种基于虚拟机器人控制器模拟FPGA系统及其使用方法与流程
一种基于虚拟机器人控制器模拟fpga系统及其使用方法
技术领域
1.本发明涉及模拟机器人集成板块领域,具体是一种基于虚拟机器人控制器模拟fpga系统及其使用方法。


背景技术:

2.随着计算机技术的发展,fpga即field programmable gate array得到进一步发展。fpga作为专用集成电路即asic领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。在目前的技术中,fpga有效的解决原有的器件门电路数较少的问题,但是其所有功能均依赖硬件实现,这给开发人员增加了开发成本。
3.由于fpga具有布线资源丰富,可重复编程和集成度高,投资较低的特点,在数字电路设计领域得到了广泛的应用fpga虚拟化技术打破了时间和空间维度的限制,使用户能够轻松的在不同时间,对多个fpga的各类资源进行充分的调度与使用。目前fpga广泛应用于视频分割系统、数据延迟器和存储设计、通信等行业,fpga的所有功能实现都依赖于硬件,发明一种基于虚拟机器人控制器模拟fpga技术,具有十分积极的现实意义。
4.如中国专利号为201811409544.8的“一种基于fpga片上ram模拟实现ddr3突发的控制器以及方法”的发明专利,它提出一种基于fpga芯片模拟实现ddr3功能的控制器的方法;又如中国专利号为202022620706.1的“基于fpga和模拟开关的高密度电极切换接入装置”的实用新型专利,它通过现场可编程门阵列fpga的i/o端口控制模拟开关的导通与关断,实现任意组合的电极切换接入。
5.现有的技术中,暂时还没有通过合理地设计虚拟机器人控制器,以较低的硬件成本实现对fpga芯片模拟的技术,该技术既可以模拟机器人控制器,也可以模拟fpga芯片进行可编程输出。


技术实现要素:

6.为了解决上述问题,本发明提出一种基于虚拟机器人控制器模拟fpga系统及其使用方法。
7.一种基于虚拟机器人控制器模拟fpga系统,包括对基于虚拟机器人控制器模拟fpga技术进行软件设计的fpga芯片处理器,所述的fpga芯片处理器具体包括:
8.可编程输入输出单元,提供与外界电路的接口,可连接该芯片和其他外界设备;
9.可配置逻辑块,通过软件模拟出该矩阵中的输入、选型电路和触发器类功能部件;
10.数字时钟管理模块,用于消除时钟偏斜、时钟相位调整类时钟问题,建立可靠的系统时钟;
11.底层内嵌功能单元,具备软硬件联合设计的能力,进一步丰富功能单元。
12.所述的可编程输入输出单元能够通过接口连接两个虚拟机器人控制器。
13.所述的可配置逻辑块内部包含一个可配置开关矩阵。
14.所述的底层内嵌功能单元包括dll、pll、dsp和cpu类软处理核。
15.所述的fpga芯片处理器还包括具有拓展fpga的应用范围和灵活性的嵌入式块ram模块、连通fpga中所有的单元、模块的布线资源模块、具有提高fpga性能的内嵌专用硬核模块。
16.所述的fpga芯片处理器的端口设置有模拟实体fpga芯片的端口,提供可重复编程控制的接口。
17.一种基于虚拟机器人控制器模拟fpga系统的使用方法,其具体步骤如下:
18.s1、构建虚拟机器人控制器模拟fpga的软件框架,包括可编程输入输出层、可配置逻辑层类部分;
19.s2、在可编程输入输出层,对芯片的输入输出进行物理映射,提供fpga与外界设备交互的接口;
20.s3、在可配置逻辑层,对该层中的可配置开关矩阵进行物理映射,利用数组类数据结构进行软件模拟,实现组合逻辑、时序逻辑;
21.s4、通过集成,形成一套完整的基于虚拟机器人控制器模拟fpga技术。
22.本发明的有益效果是:构建虚拟fpga软件框架,提出一种新的虚拟fpga设计方案;通过本发明能够实现虚拟fpga与虚拟机器人控制器交互通信,与此同时该虚拟fpga能够实现重复可编程输出;同时提供与外部设备交互的接口,可以挂在多个外部设备,进而进一步的开发期望的机器人控制功能。
附图说明
23.下面结合附图和实施例对本发明进一步说明。
24.图1为本发明的虚拟机器人控制器模拟器内部结构示意图;
25.图2为本发明的结构框图;
26.图3为本发明的虚拟机器人控制器模拟器内部结构框图。
具体实施方式
27.为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面对本发明进一步阐述。
28.如图1至图3所示,一种基于虚拟机器人控制器模拟fpga系统,包括对基于虚拟机器人控制器模拟fpga技术进行软件设计的fpga芯片处理器,所述的fpga芯片处理器具体包括:
29.可编程输入输出单元,提供与外界电路的接口,可连接该芯片和其他外界设备;
30.可配置逻辑块,通过软件模拟出该矩阵中的输入、选型电路和触发器类功能部件;
31.数字时钟管理模块,用于消除时钟偏斜、时钟相位调整类时钟问题,建立可靠的系统时钟;
32.底层内嵌功能单元,具备软硬件联合设计的能力,进一步丰富功能单元。
33.如图1所示,fpga整个芯片的示意图,包括处理器系统和可编程逻辑两部分,其中,可编程逻辑部分在硬件中主要是纵横交错的阵列,本发明利用软件技术将这些纵横交错的阵列模拟化。
34.构建虚拟fpga软件框架,提出一种新的虚拟fpga设计方案;通过本发明能够实现虚拟fpga与虚拟机器人控制器交互通信,与此同时该虚拟fpga能够实现重复可编程输出;同时提供与外部设备交互的接口,可以挂在多个外部设备,进而进一步的开发期望的机器人控制功能。
35.为提高fpga的开发效率、更好的利用fpga的逻辑资源,方便fpga的大规模部署和应用,将fpga进行一定程度的逻辑抽象,使得顶层用户不必太多关注fpga模拟的逻辑实现方式和细节。
36.构建一层位于fpga硬件层之上,并且连接顶层应用的虚拟可编程架构,主要为大部分fpga芯片核心处理器系统部分。该虚拟架构层主要包括逻辑处理单元或软核处理器等部分,通过集成封装,为外部和fpga硬件层部分提供交互接口,便于不同fpga芯片模拟架构之间的移植。为增强系统的整体可靠性,将虚拟化管理程序依据模块化进行设计,简化各个模块的调试和维护操作;在该虚拟架构中,对基于软核处理器的特性,整体也是采用模块化设计,除了必要的调度、内存等必要内核模块外,系统服务等内容均在fpga硬件层作为用户层模块实现;除此之外,基于微内核自身的资源访问控制机制进行各个系统资源间的授权访问,这样如外部攻击或内部崩溃等问题均不会影响到其他操作系统或是访问到其他操作系统的数据文件。
37.fpga硬件层部分主要包含可编程逻辑部分,用软件实现不同的fpga芯片架构,利用硬件映射法对fpga芯片中的各个部分进行模拟,对随机存取存储器即ram,进行模拟,即可申请一个内存空间,对其进行配置设计,实现其内部的实时读写等功能。
38.用该架构方法,不仅方便不同fpga芯片模拟架构之间的移植,也实现了对fpga芯片的硬件资源的抽象和虚拟化,并且为上层用户提供了一种他们更加熟悉的编程架构与接口,并为满足虚拟化fpga芯片中可能存在的与其他多操作系统协同工作的情况,封装提供统一的通信参数接口。
39.所述的可编程输入输出单元能够通过接口连接两个虚拟机器人控制器。
40.所述的fpga模拟模拟器是在虚拟机器人控制器中利用软件模拟fpga,实现重复可编程输出,提供与外部设备交互的接口,进而在外部设备中实现相关的开发功能。
41.如图2所示,本发明的fpga片上的hps(hard processor system,硬件处理系统)部分,主要模拟集成了双核的硬核处理器,还模拟集成了各种高性能外设,如mmu(memory management unit,内存管理单元)、ddr3控制器、nand flash控制器类,有这些外设,hps部分就可以运行成熟的linux操作系统,提供统一的系统api,降低开发者的软件开发难度,进一步模拟hps-fpga接口,连接hps和fpga,fpga内部结构部分,主要模拟集成了可配置逻辑即clb(configurable logic block)、用户可编程输入输出模块即iob(input output block)、数字时钟管理模块即dcm(digital clock manager)、嵌入式块ram即bram类。
42.所述的可配置逻辑块内部包含一个可配置开关矩阵。
43.所述的虚拟机器人控制器用于模拟实体机器人控制器的微处理器单元以及can类基本外设;所述的fpga模拟模拟器是利用软件技术模拟pfga芯片的功能,进而实现重复可编程输出。
44.所述的底层内嵌功能单元包括dll、pll、dsp和cpu类软处理核。
45.所述的dll为延迟锁相环,全拼为delay locked loop,所述的pll为锁相环,全拼
为phase locked loop,所述的dsp为数字信号处理,全拼为digital signal processing,所述的cpu为中央处理器,全拼为central processing unit。
46.所述的fpga芯片处理器还包括具有拓展fpga的应用范围和灵活性的嵌入式块ram模块、连通fpga中所有的单元、模块的布线资源模块、具有提高fpga性能的内嵌专用硬核模块。
47.所述的fpga芯片处理器的端口设置有模拟实体fpga芯片的端口,提供可重复编程控制的接口。
48.如图3所示,主要描述了fpga内部各个组成部分之间的排列和交互关系,利用矩阵、数组、表类数据结构对其进行模拟,进一步实现其内部的数据读写、清除类功能,实现对fpga内部数据、程序的读取,进而设置其工作状态。
49.一种基于虚拟机器人控制器模拟fpga系统的使用方法,其具体步骤如下:
50.s1、构建虚拟机器人控制器模拟fpga的软件框架,包括可编程输入输出层、可配置逻辑层类部分;
51.s2、在可编程输入输出层,对芯片的输入输出进行物理映射,提供fpga与外界设备交互的接口;
52.s3、在可配置逻辑层,对该层中的可配置开关矩阵进行物理映射,利用数组类数据结构进行软件模拟,实现组合逻辑、时序逻辑;
53.s4、通过集成,形成一套完整的基于虚拟机器人控制器模拟fpga技术。
54.以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1