APP下载

基于Nios II的光刻机运动台电机驱动控制系统设计

2020-03-22庞权岗胡放荣张文涛石公含

桂林电子科技大学学报 2020年6期
关键词:光刻机板卡处理器

庞权岗, 胡放荣, 张文涛, 石公含

(1.桂林电子科技大学 电子工程与自动化学院,广西 桂林 541004; 2.上海微电子装备(集团)股份有限公司,上海 201213)

光刻机在集成半导体行业中起着至关重要的作用,运动台的控制很大程度影响整个光刻机的套刻精度,所以改进运动台电机驱动控制系统是提升整个光刻机精度的重要环节。

现有的光刻机工件台电机控制系统基于DSP处理器,若遇到多任务竞争,则一片单核DSP将无法胜任。Nios II作为软核控制处理器在近几年迅速发展,这是因为其具有优良的特性,可以灵活地设置内核处理器数量,实现核内多任务并行处理模式[1]。Nios II应用于光刻机系统可以满足部分控制系统需求,减小控制器的体积和质量。软核开发工具具有简单、易推广,开发周期短,移植和维护成本低,可实时更新的优势[1]。

鉴于此,提出一种基于Nios II的运动台电机驱动控制系统,该系统采用多个内核处理器并行处理[2]。运用 Qsys平台定制NiosⅡ软核处理器及驱动、接口等相关的外围功能软硬件模块,实现运动台电机运动控制的设计[1]。与目前光刻机运动系统不同的是,该控制系统减少了运动控制板卡中DSP芯片的数量,将所有运算处理均集成到内嵌的多核处理器中,以达到并行处理的目的,提升运动台板卡集成度和稳定性。

1 光刻机运动控制系统

1.1 系统架构

目前光刻机运动台控制架构主要通过MCB(运动控制板卡DSP+FPGA)板卡对电机驱动调节控制[11],但不能同时处理多任务。要想解决这一问题,无论是提升DSP的运算能力,还是扩宽数据传输总线的宽度,或者是提高时钟频率,都很难保证其稳定性和可靠性。图1为运动台控制架构。

图1 运动台控制架构

1.2 数据链路

服务器与各模块之间采用以太网通信,PowerPC 板卡嵌入VxWorks操作系统和控制软件。PowerPC 板卡与MCB板卡之间通过 VME 总线协议数据传输,数据转发板卡(DTB)作为数据中转站,将来自PowerPC板卡的信号通过光纤发送给功率放大器控制板卡(PAB),也将接收来自SB(Sensor Board)板卡的传感器数据信号反馈给PowerPC板卡。DTB板卡与 PPC板卡通过MDB总线协议传输,DTB板卡与PAB板卡以及SB板卡通过光纤传输数据。

2 基于NiosⅡ的 SOPC 系统的软硬件设计

IP软核设计不同与传统嵌入式设计,它的开发主要由软件和硬件两部分组成,硬件开发包含用户自定义接口功能设计;软件设计类似于传统设计,利用C语言编写控制电机运动的PID算法[3]。

2.1 基于 NiosⅡ的SOPC系统的硬件开发流程

NiosII硬件开发流程:

1)定义CPU软核外设接口,利用上述Qsys和QuartusⅡ17.1环境,自定义Nios II CPU的多种特性和指令;

2)设置Nios II软核外设模块的属性、内存及系统中的地址分配等;

3)运行Qsys平台,生成用于综合各模块的硬件描述语言;

4)生成的IP核中嵌入软件流程,启动QuartusⅡ软件,对生成的Nios II系统描述文件进行综合、适配和下载[5]。

Nios II硬件设计流程如图2所示。

图2 硬件设计流程图

2.2 软件设计流程

采用如下Nios II软件设计流程。

1)软件开发工具包获取:获取软件开发包中的库文件,为软件编程节约时间;

(2)林业技术推广的人力、物力、财力比较欠缺。林业推广技术这项工作的工作周期非常的长,并且具有系统性的特点,短期的投入并不能达到很好的效果。但是,在林业推广的实际工作过程中我们不难发现,林业部门所涉及到的工作内容有很多,但是资金却很有限,有限的资金很难投入到如此多的工作之中,但是在林业技术的推广上所能用到的资金就很少了。除此之外,林业部门的工作人员不多,并且在对林业技术的推广工作落实上并不到位,所以,林业技术推广工作所取得的成效一直不大。

2)工程创建和编译:Nios II开发包编程支持C、Verilog语言源程序,利用Nios II-Build平台处理命令进行编译。

3)下载并调试代码[5]。

软件设计流程如图3所示。

2.3 基于FPGA的 Nios II电机驱动控制系统架构

2.3.1 电机驱动控制系统的整体设计

工件台运动控制架构是基于目前光刻机运动

图3 软件设计流程图

控制平台架构经优化处理后设计得到,主要由Altera公司Arria 10开发板、功率放大控制板卡(PAB)、PA板卡和自带编码器功能的伺服直流无刷电机共同组成。

该设计采用Elmo公司生产的G-TWI 6/200EE型PA板卡,输入输出接口采用RS-232标准通信,电机采用具有编码器的直流有刷旋转电机MAXON EC-MAX30。图4为Nios II CPU软核电机控制架构。

图4 Nios II CPU软核电机控制架构

2.3.2 系统硬件组成

FPGA采用Altera公司生产的GX系列10AX115S2F45I1SGE3芯片,开发板外围接口主要有SFP+光纤接口、SFP、USB 2.0接口、PCIe接口等。PAB板卡主要是将电压按固定比例转化为电流并发送给PA(功率放大器),PA将电流传给电机来控制电机运动。PAB板卡中主要有编码器模块、AD/DA转化模块、光纤信号收发模块等。

2.3.3 系统硬件设计

IP软核系统设计结构和SOPC Builder硬件平台设置如图 5所示。

Nios II是一种32位、哈佛结构、RISC嵌入式处理器,具有可编程性、可扩展性等特点。该设计主要针对FPGA外部接口管脚分配或根据实际所用FPGA芯片的管脚进行相应的设置[9]。IP核结构设计主要分为Avalon总线接口模块和CPU处理模块2个模块,Avalon总线接口模块主要提供与内核处理器信息交换的接口,CPU模块主要用来数据处理。如有多个信号指令同时进入,则可设置多个内嵌CPU,每个CPU占据自己特定的FIFO以存储数据,各个CPU模块之间相互独立,实现数据并行接收和处理[10]。

图5 IP软核系统设计框图

FPGA芯片内包括Nios Ⅱ处理器以及通过Avalon总线与处理器相连的外设接口,主要有 JTAG-UART、光纤数据传输接口、数据收发控制指令,其他接口如时钟接口clk、复位reset等控制接口也应在IP软核设计中体现[4]。

2.3.4 外部接口设计

IP软核设计完成后,按照上述设计流程在Quartus Ⅱ中创建一个新工程,将生成的软核添加到新建的.bdf文件[6],添加外部接口和锁相环,接口添加时要根据 FPGA的输入输出方向来设定。由于光纤模块与Nios Ⅱ的通信是双向的,外部接口要设置为Bidir类型;外部锁相环PLL设置多个时钟信号,一个输出至FPGA,一个输出至光纤。图6为PLL锁相环和IP软核外部接口控制设计模块。

图6 PLL锁相环和IP软核外部接口控制模块

2.3.5 硬件平台搭建

搭建硬件平台,验证基于Nios II的运动台电机驱动控制系统设计能够稳定控制电机运转达到预期的驱动的效果。测试平台如图7所示。

图7 硬件测试平台

3 系统软件设计

3.1 电机驱动算法设计

为了防止超调,降低电机实际转速与系统设置速度的偏差影响,电机控制系统引入限幅“比例、积分、微分”的控制方式,对PID控制器输出uK进行幅度限制,以Umax为上线,Umin为下线,以此作为直流有刷旋转电机转动速度范围,当uK大于上线速度Umax时,取uK=Umax,并取消积分作用;当uK小于下线速度Umin时,取uK=Umin,并取消积分作用;当Umin≤uK≤Umax时,执行PID运算控制电机驱动[8]。PID控制器的表达式为

其中:kp为比例系数;ki为积分系数;kd为微分系数;eK为第K次设定值与编码器采样反馈值之间的偏差量[7]。PID模块在FPGA中只需通过比较相加迭代的方式实现。

3.2 电机驱动流程图

电机驱动控制系统IP核采用并行写入的方式进行数据和指令传输,在Nios II中用写操作产生Avalon总线时序。系统上电后首先对UART、IO接口和定时器进行初始化,进入主程序后读取PID算法设置的加速度和速度值,同时接受编码器返回的位置数据,再经CPU计算和处理进行负反馈调节,得到纠正的PID控制参数并输出相应的信号,以实现电机的闭环PID调速控制[9]。图8为软件开发流程。

图8 软件开发流程

4 验证

板卡上电后,将QuartusⅡ17.1生成的.sof文件通过JTAG-UART接口下载到FPGA的Flash中,在NiosⅡ IDE环境下运行对应的software文件程序。通过Qt软件编写上位机指令控制电机转动,通过改变PID算法参数控制电机转速,改变速度和加速度指令,用Quartus Ⅱ17.1软件中的SignalTap II Logic Analyzer进行光纤数据和数模转换信号抓取。图9为逻辑序列。从图9可看出,光纤和AD芯片可正常工作。

图9 SignalTap II Logic Analyzer时序

Nios II模块的IO接口输出PID运算结果,将其数据保存在比较寄存器中,光纤模块主要为数据发送和接收模块,同样有相应数据存储器。电机转动编码器进行位置信号实时反馈,通过光纤模块发送至CPU相应寄存器与比较寄存器中运算数据进行对比,按照算法调整数据输出大小。图10为电机数据采集波形,其中Va为实际电机运行编码尺反馈速度,Vc为预设电机速度。

从图10可看出,基于Nios II的运动台电机驱动控制设计能够控制电机正常运行,实际电机转速围绕预设置速度小幅度波动,且能够控制电机转速在0.2 s后趋于相对稳定状态。

图10 电机速度曲线

图11为电流实际输出波形与指令控制电流大小对比,其中Ia为实际电流输出,Ic为电流环设置电流输出[10]。从图11可看出,由于电流产生力矩提供加速度,电流输出在0.2 s后稳定,无较大尖峰电流,电机转速也不会产生较大波动。

图11 电流对比

图12 电机位置对比

图12为电机位置对比。从图12可看出,目标位置与电机实际位置实时偏差在亚微米级别,位置精度较高。

该设计方法能够有效控制电机运动,且通过不同波形对比可以看出电机运动状态相对稳定无较大脉冲和毛刺信号的产生,控制信号与实际信号波形相对比较吻合,电机运动进入稳定状态电流环控制正弦信号输出比较平稳,控制精度较高满足控制要求[11]。

5 结束语

设计了基于Nios II的光刻机运动台电机驱动控制系统,并进行了实验验证[12]。实验结果表明,采用Nios II软核设计工件台电机驱动控制系统能够有效控制电机运动并且有较高的位置精度,内嵌Nios-CPU可以创建多个内核,并行处理多条指令[13]。如果将这一套系统架构移植在光刻机运动控制系统中,只需要软核和CPU的程序进行修改即可,这样大大提高了系统的可靠性和软件设计的灵活性[14-15]。这种内嵌CPU的FPGA可以减少光刻机运动控制系统中DSP芯片的采购和硬件电路设计,提高板卡集成度[16]。

猜你喜欢

光刻机板卡处理器
中国光刻机崛起之路
光刻机打破ASML垄断还要多久?
中国光刻机崛起之路
核桃上雕船不稀奇头发丝上能刻一个足球场!
车载控制器CVRE板卡显红故障分析及处理
基于组态王软件和泓格PIO-D64 板卡的流水灯控制
一种基于光纤数据传输的多板卡软件程序烧写技术
ADI推出新一代SigmaDSP处理器
一种通用模拟量及开关量信号采集板卡的设计
火线热讯