基于SOPC的嵌入式双核伺服控制器及其设计方法技术

技术编号:17778716 阅读:26 留言:0更新日期:2018-04-22 06:44
本发明专利技术提供一种基于SOPC的嵌入式双核伺服控制器及其设计方法,硬件架构,包含FPGA和与之信号连接的电源系统、程序FLASH、数据FLASH、驱动器、数据指令通信单元、传感器数据读取单元等,FPGA设有两个Microblaze软核处理器来进行双核并行计算;多个IP软核通过PLB总线进行信号连接,各Microblaze软核处理器通过PLB总线与各个IP软核进行数据交互;两个Microblaze软核处理器之间进行双核数据通信。根据控制系统功能要求确定硬件架构、接口类型,然后确定软件底层架构,利用XPS工具进行编译,导出顶层接口文件,在SDK平台中进行顶层软核控制器设计开发。本发明专利技术提高了控制器的协同处理能力,具有资源丰富、可扩展性强、可靠性高、低成本以及设计容易的优点。

【技术实现步骤摘要】
基于SOPC的嵌入式双核伺服控制器及其设计方法
本专利技术所涉及的是数字化伺服控制系统领域,特别涉及一种基于SOPC的嵌入式双核伺服控制器及其设计方法。
技术介绍
目前,数字伺服控制器硬件平台主要包括DSP、DSP+FPGA、FPGA·三种架构,基于DSP的伺服控制器有着设计灵活、调试方便的优势,但是外设资源有限,不能适应目前多种通信接口高速并行处理的需求,即使TI公司推出了F28M35双核处理器,也不能改变这一弊端,基于DSP+FPGA的伺服控制器,能够同时满足设计灵活和并接通信的要求,但是电路较为复杂,成本较高。近年来随着微电子技术的发展,片上可编程技术也逐渐兴起,FPGA内部可以嵌入软核或者硬核处理器,将处理器、存储器、I/O接口等系统设计所需的功能集成到一个可编程逻辑器件FPGA上,从而构成片上可编程系统(SOPC),采用基于单FPGA的控制器即可实现DSP+FPGA控制器的所有功能,从而在航天、航空领域得到了广泛应用。随着任务量的增多,FPGA嵌入式单核系统存在对存储器的访问不能同时进行,在高速运行情况下容易混乱的问题,Xilinx公司的FPGA推出了双核系统,即可以在一个FPGA内部嵌入两个片上微处理器软核Microblaze(一种针对XilinxFPGA器件而优化的功能强大的32位微处理器,也是业界最快的软处理器IP核解决方案),进行多任务协同,并行计算,极大提高了系统的响应速度。近年来国内外学者针对基于FPGA的嵌入式系统进行了大量研究,哈尔滨工业大学的王晓路在“基于FPGA的嵌入式双核系统设计”一文中介绍了双核之间通信的几种方法。南京理工大学的柏玉娴在“基于SOPC技术的嵌入式控制系统研究与设计”一文中提出了基于Xilinx公司Virtex-5FXTFPGA为平台的嵌入式控制系统的设计方案,此方案主要是基于嵌入式实时操作系统VxWorks软件开发及应用相关的研究,此外在文中还提及了PowerPC440硬核处理器,并未采用Microblaze的软核处理器。夏门大学的姚铭同志在“基于FPGA的双核嵌入式系统构建”一文中提出了一种基于Xilinx的Virtex-IIPro开发板实现了双核嵌入式系统构建,给出了双核系统的构建方法及原理,这种构建方法主要PowerPC405的硬核处理器架构。专利申请“基于FPGA的嵌入式双核系统的自主配置方法”(CN201410047913.9)一文中,提出了双核系统自主完成配置和加载的问题。专利申请“基于FPGA的嵌入式双核继电保护系统”(CN201510107412.X)一文中提出基于NIOSII软核处理器的双核设计方法。专利申请“一种机器视觉控制方法及机器人控制器和机器人控制系统”(CN201610122709.8)一文中提出了嵌入式双核微处理器在图像处理和运动控制中的应用。现有技术均未见涉及基于SOPC的嵌入式双核天线伺服控制器设计方法。目前,基于FPGA的单核数字化伺服控制系统,采用单一主线程,多任务调度均需采用查询或者中断的方式,加大了阻塞状态下的等待时间,延长了数据更新的周期,且无绝对意义上的并行处理。在面临多任务、大数据量等实际问题,单核处理器执行时间较长和无法并行处理的劣势逐渐显露,控制的实时性和算法精度无法得到保证。
技术实现思路
为解决以上现行技术存在的问题,本专利技术的目的在于提出一种基于SOPC的嵌入式双核伺服控制器,提高控制器的协同处理能力,而且具有资源丰富、可扩展性强、可靠性高、低成本以及设计容易的优点。本专利技术还提供了基于SOPC的嵌入式双核伺服控制器的设计方法。为了达到上述目的,本专利技术的一个技术方案是提供一种基于SOPC的嵌入式双核伺服控制器,其包含:作为主控制器的FPGA,和与之信号连接的以下模块:电源系统,为FPGA及其他模块供电;程序FLASH,对程序进行存储,供FPGA读取程序;数据FLASH,对控制参数进行存储,供FPGA读取控制参数;数据指令通信单元,实现FPGA与外部装置的数据指令通信;传感器数据读取单元,获取传感器数据,提供给FPGA;驱动器,根据FPGA提供的驱动信号,对执行装置进行驱动;其中,FPGA设有两个Microblaze软核处理器来进行双核并行计算;多个IP软核通过PLB总线进行信号连接,各Microblaze软核处理器通过PLB总线与各个IP软核进行数据交互;两个Microblaze软核处理器之间进行双核数据通信。优选地,第一软核处理器Microblaze0进行数据指令接收发送、传感器数据读取及预处理,并通过双核数据通信与第二软核处理器Microblaze1共享数据;第二软核处理器Microblaze1上电读取控制参数,根据共享数据完成伺服控制算法的计算,并送出驱动信号到驱动器,实现伺服系统的既定功能。优选地,第一软核处理器Microblaze0通过第一PLB总线,与定时器IP核、中断控制IP核、传感器读取IP核交互数据;第二软核处理器Microblaze1通过第二PLB总线,与定时器IP核、中断控制IP核、数据指令读取IP核、驱动器控制IP核、控制参数存储IP核交互数据。优选地,两个Microblaze软核处理器之间的双核数据通信,基于SharedBRAM或MailBox方式实现。优选地,SharedBRAM方式还通过互斥访问IP核Mutex进行仲裁。优选地,数据共享量大于1000字节时,双核数据通信选择SharedBRAM方式,否则选择Mailbox。本专利技术的另一个技术方案是提供一种基于SOPC的嵌入式双核伺服控制器的设计方法,适用于上述任意一种基于SOPC的嵌入式双核伺服控制器。优选地,所述设计方法包含以下步骤:S1、根据伺服系统既定功能的需求,构建控制回路;S2、根据控制回路,确定嵌入式双核伺服控制器的硬件架构,包含FPGA和与之信号连接的电源系统、程序FLASH、数据FLASH、驱动器、数据指令通信单元、传感器数据读取单元;S3、根据硬件架构和控制策略,确定嵌入式双核伺服控制器底层所需的IP软核,包含定时器IP核、中断控制IP核、传感器读取IP核、数据指令读取IP核、驱动器控制IP核、控制参数存储IP核;各IP软核开放相应的数据端口与PLB总线连接;S4、在XPS中搭建基于IP软核的底层软件平台:根据选用的FPGA型号,创建具有两个Microblaze软核处理器的底层软件平台;将IP软核添加到底层软件平台中与PLB总线连接,分配内部时钟、外部端口、地址,进行底层软件架构编译;S5、XPS搭建的软件底层架构编译完成后,导出顶层接口文件到SDK中进行控制系统的顶层开发。本专利技术提供一种基于SOPC的嵌入式双核伺服控制器及其设计方法,采用基于Xilinx(赛灵思)公司FPGA的双MicroBlaze软核处理器,完成数字控制器并行计算,协同工作,提高运行速率,实现高精度、高实时性、多任务等高要求伺服控制。根据控制系统功能要求确定硬件架构、接口类型,然后确定软件底层架构,利用XPS工具进行编译,导出顶层接口文件,在SDK平台中进行顶层软核控制器设计开发。本专利技术带来以下有益效果:(1)高实时性:该设计方法采用两个Microblaze嵌入式软核处理器,可以实现控制算法和数据预处理的同步运行,实时性得到了本文档来自技高网
...
基于SOPC的嵌入式双核伺服控制器及其设计方法

【技术保护点】
一种基于SOPC的嵌入式双核伺服控制器,其特征在于,包含:作为主控制器的FPGA,和与之信号连接的以下模块:电源系统,为FPGA及其他模块供电;程序FLASH,对程序进行存储,供FPGA读取程序;数据FLASH,对控制参数进行存储,供FPGA读取控制参数;数据指令通信单元,实现FPGA与外部装置的数据指令通信;传感器数据读取单元,获取传感器数据,提供给FPGA;驱动器,根据FPGA提供的驱动信号,对执行装置进行驱动;其中,FPGA设有两个Microblaze软核处理器来进行双核并行计算;多个IP软核通过PLB总线进行信号连接,各Microblaze软核处理器通过PLB总线与各个IP软核进行数据交互;两个Microblaze软核处理器之间进行双核数据通信。

【技术特征摘要】
1.一种基于SOPC的嵌入式双核伺服控制器,其特征在于,包含:作为主控制器的FPGA,和与之信号连接的以下模块:电源系统,为FPGA及其他模块供电;程序FLASH,对程序进行存储,供FPGA读取程序;数据FLASH,对控制参数进行存储,供FPGA读取控制参数;数据指令通信单元,实现FPGA与外部装置的数据指令通信;传感器数据读取单元,获取传感器数据,提供给FPGA;驱动器,根据FPGA提供的驱动信号,对执行装置进行驱动;其中,FPGA设有两个Microblaze软核处理器来进行双核并行计算;多个IP软核通过PLB总线进行信号连接,各Microblaze软核处理器通过PLB总线与各个IP软核进行数据交互;两个Microblaze软核处理器之间进行双核数据通信。2.如权利要求1所述基于SOPC的嵌入式双核伺服控制器,其特征在于,第一软核处理器Microblaze0进行数据指令接收发送、传感器数据读取及预处理,并通过双核数据通信与第二软核处理器Microblaze1共享数据;第二软核处理器Microblaze1上电读取控制参数,根据共享数据完成伺服控制算法的计算,并送出驱动信号到驱动器,实现伺服系统的既定功能。3.如权利要求1或2所述基于SOPC的嵌入式双核伺服控制器,其特征在于,第一软核处理器Microblaze0通过第一PLB总线,与定时器IP核、中断控制IP核、传感器读取IP核交互数据;第二软核处理器Microblaze1通过第二PLB总线,与定时器IP核、中断控制IP核、数据指令读取IP核、驱动器控制IP核、控制参数存储IP核交互数据。4.如权利要求1或2所述基于SOPC的嵌入式双核伺服控制器,其特征在于,两个Microblaze软核处理器之间的双核数据通信,基于SharedBRAM或MailBox方式实现。5.如权利要求4所述基于SOPC的嵌入式双核伺服控制器,其特征在于,SharedBRAM方式还通过互斥访问IP核Mutex进行仲裁。6.如权利要求4所述基于SOPC的嵌入式双核伺服控制器,其特征在于,数据共享量大于1000字节时,双核数据通信选择SharedBRAM方式,否则选择Mailbox。7.一种基于SOPC的嵌入式双核伺服控制器的设计方法,其特征在于,所述设计方法包含以下步骤:S1、根据伺服系统既定功能的需求,构建...

【专利技术属性】
技术研发人员:曹培培张浩钧王力陈梦梅刘圣起
申请(专利权)人:上海无线电设备研究所
类型:发明
国别省市:上海,31

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

1