CN103207771A - 一种plc程序执行器ip核 - Google Patents

一种plc程序执行器ip核 Download PDF

Info

Publication number
CN103207771A
CN103207771A CN2013100878026A CN201310087802A CN103207771A CN 103207771 A CN103207771 A CN 103207771A CN 2013100878026 A CN2013100878026 A CN 2013100878026A CN 201310087802 A CN201310087802 A CN 201310087802A CN 103207771 A CN103207771 A CN 103207771A
Authority
CN
China
Prior art keywords
module
instruction
address
execution
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2013100878026A
Other languages
English (en)
Other versions
CN103207771B (zh
Inventor
杨大胜
潘再生
张伟宁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ningbo zhongkong Microelectronics Co.,Ltd.
Original Assignee
ZHEJIANG SUPCON RESEARCH Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZHEJIANG SUPCON RESEARCH Co Ltd filed Critical ZHEJIANG SUPCON RESEARCH Co Ltd
Priority to CN201310087802.6A priority Critical patent/CN103207771B/zh
Publication of CN103207771A publication Critical patent/CN103207771A/zh
Application granted granted Critical
Publication of CN103207771B publication Critical patent/CN103207771B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Programmable Controllers (AREA)

Abstract

本发明公开了一种PLC程序执行器IP核,其通过总线接口挂接在片上总线上,所述片上总线上同时挂接有MCU和存储器,其包括总线接口模块、程序计数模块、读指令模块、寻址模块、取数据模块与执行模块,所述总线接口模块包括多个寄存器,PLC程序为IL语言程序,以32位定长指令集格式存储,该IP通过总线接口挂接在片上总线上,通过寄存器接收控制信号,从同样挂接在片上总线上的存储器中读取IL指令并通过各模块与寄存器配合执行指令。本发明以更快的速度和更高的效率进行PLC程序的执行,同时IP核结构的设计避免了依靠MCU执行而带来的性能影响和硬件相关等缺点,接口开放易移植。

Description

一种PLC程序执行器IP核
技术领域
本发明涉及一种片上实现的程序执行模块,特别是一种PLC程序执行器IP核。
 
背景技术
    随着自动控制技术的发展,可编程逻辑控制器(PLC)已经越来越多的应用在各个行业领域中,标准化水平越来越高。目前,已形成了PLC控制器典型结构、编程语言、通信、用户使用导则等系列国际标准(IEC61131)。其中,以编程语言标准(IEC61131-3)最为广泛应用,所有可编程控制器均需要支持该标准支持的五种语言,包括IL、ST、LD、FBD和SFC。其中IL语言即指令表语句,最接近PLC机器语言的语言(类似汇编语言),其它四种为高级语言。普遍的,组态编程软件在编译以该五种语言编成的程序时,会将程序均转换成以IL语言为描述的中间代码。可以将中间代码下载到PLC中按句进行解释并执行(解释型),也可以将中间代码直接编译成PLC的本地代码下载运行。
    对于解释执行方式,它的每一条PLC程序在执行前都需要进行复杂的软件解释工作,一条IL指令需要约5句~20句C语言程序来进行解释,进一步需要约20条~100条精减指令集指令(以ARM指令集为例)。所以解释型执行方式运行速度慢,只能用于中、低档PLC。
    对于编译执行方式,PLC的编程者需要提前将PLC程序针对指定的CPU处理器型号用指定的编译器和编译环境参数进行编译方能正确下载运行,即只能用特定的编程软件才能对PLC进行编程。替换一种MCU处理器芯片,或仅升级一个PLC内部组件,原有的组态编程软件可能就无法再适用。所以其通用性差,产品的应用和升级成本高。此外,与解释执行方式类似的是,编译型执行方式虽然将PLC程序编译为本地代码,但仍需要采用通用处理器的精减指令集格式,每一条IL指令可能需要3-10条本地汇编指令;即使由其它PLC语言(如FBD、ST)直接编译为本地汇编指令(不经由IL中间代码),本地汇编毕竟非面向PLC程序的指令集结构,仍不可避免地有效率的损失。
    另一方面,在以MCU为处理核心的PLC控制器结构中,无论解释型还是编译型,都需要占用大量MCU的工作,而MCU通常还需要完成其它重要任务(如通讯、显示),PLC任务的执行和响应速度也因此受MCU其它工作的影响,难以保障其实时性和可靠性。
 
发明内容
    为了克服现有技术的缺陷,本发明提供了一种PLC程序执行器IP核,其通过总线接口挂接在片上总线上,所述片上总线上同时挂接有MCU和存储器,包括总线接口模块、程序计数模块、取指令模块、寻址模块、取数据模块、执行模块以及程序栈,所述总线接口模块分别与所述程序计数模块、读指令模块、寻址模块、取数据模块以及执行模块连接,所述总线接口模块包括多个寄存器;
其中,所述总线接口模块通过所述多个寄存器接收所述MCU写入的程序执行信息;
所述程序计数模块更新程序的执行指令地址并交由所述取指令模块;
所述取指令模块根据所述执行指令地址从所述存储器中获取执行指令并分析和处理所述执行指令;  
所述寻址模块用于获取所述执行指令的实际地址;
所述取数据模块用于获取所述执行指令的被操作数;
所述指令执行模块完成对所述执行指令的执行,所述执行指令包括跳转指令;
    所述程序栈用于保存所述跳转指令的地址。较佳地,所述PLC程序为与IL语言直接对应的指令集程序。
较佳地,所述多个寄存器包括代码段首地址寄存器、数据段首地址寄存器、程序计数寄存器、指令寄存器、控制寄存器以及状态寄存器。
较佳地,所述代码段首地址寄存器与所述数据段首地址寄存器分别接收所述MCU写入的需要执行的程序的代码段首地址与该代码段对应的数据段首地址,所述控制寄存器接收所述MCU写入的启动程序的命令。
较佳地,所述取指令模块将所述代码段首地址载入所述程序计数寄存器,所述程序计数模块将所述代码段首地址交由所述取指令模块,所述取指令模块根据所述地址通过片上总线在所述存储器中取出指令存入所述指令寄存器并分析该指令。
较佳地,所述执行指令的被操作数为立即数或无操作数时,所述取指令模块将所述执行指令交由所述指令执行模块;所述执行指令的被操作数以偏移量的形式需要寻址获得时,所述取指令模块将该执行指令的被操作数交由所述寻址模块。
较佳地,所述寻址模块通过该执行指令段表和偏移量信息寻得被操作数的实际地址,并交由所述取数据模块;所述取数据模块取出被操作数,并同该指令一同交由所述指令执行模块。
较佳地,所述指令执行单元根据该执行指令的类型进行处理:当所述指令执行模块完成的是单条指令的执行时,则在所述状态寄存器中设置指令完成标志,并向程序计数模块发送完成信号,程序计数寄存器自加1;当所述指令执行模块无法完成指令的执行时,则在所述状态寄存器中设置对应错误标志,执行停止,同时发送中断信号;当所述指令寄存器中的指令为跳转指令(JMP)时,所述寻址模块所寻得地址为跳转点地址,将该跳转地址载入到所述程序计数寄存器中,完成跳转指令的执行;当所述指令寄存器中的指令为调用指令(CAL)时,所述寻址模块所寻得地址为调用点地址,此时所述程序计数模块将所述程序计数寄存器的值压入所述程序栈中,并将所述寻址模块寻得的跳转地址载入到所述程序计数寄存器中,完成该调用指令的执行。
较佳地,所述PLC程序为与IL语言直接对应的指令集程序。
较佳地,所述PLC程序为与IL语言直接对应的指令集程序。
较佳地,其顺序读取程序的IL指令。
    较佳地,其通过所述片上总线主动访问或配置其它IP核或接受其它IP核的访问或配置,所述片上总线为AMBA、CoreConnect、Wishbone、OCP、Avalon片上总线中的一种。
较佳地,一种PLC程序执行器IP核的工作方法,该IP核通过总线接口挂接在片上总线上,所述片上总线上同时挂接有MCU和存储器,其特征在于,包括总线接口模块、程序计数模块、取指令模块、寻址模块、取数据模块、执行模块以及程序栈,所述总线接口模块分别与所述程序计数模块、读指令模块、寻址模块、取数据模块以及执行模块连接,所述总线接口模块包括代码段首地址寄存器、数据段首地址寄存器、程序计数寄存器、指令寄存器、控制寄存器以及状态寄存器;
该IP核的工作方法为:
   (1)(MCU)向所述代码段首地址寄存器、数据段首地址寄存器内分别写入需要执行的程序的代码段首地址与该代码段对应的数据段首地址,并向所述控制寄存器写入启动程序的命令;
   (2)所述程序计数寄存器载入所述代码段首地址,所述程序计数模块将所述代码段首地址交由所述取指令模块;
   (3)所述取指令模块根据所述地址通过片上总线在所述存储器中取出指令并存入所述指令寄存器并分析该指令;
   (4)当该指令的被操作数为立即数或无操作数,则所述取指令模块将该指令交由所述指令执行模块;当该指令的被操作数以偏移量的形式需要寻址获得,所述指令寄存器将该指令的操作数信息交由所述寻址模块,所述寻址模块通过该指令段表和偏移量信息寻得被操作数的实际地址,并交由所述取数据模块;
   (5)所述取数据模块取出被操作数,并同该指令一同交由所述指令执行模块;
  (6)所述指令执行单元根据该指令的类型进行处理:当所述指令执行模块完成的是单条指令的执行时,则在所述状态寄存器中设置指令完成标志,并向程序计数模块发送完成信号,程序计数寄存器自加1,重复(2)~(6)步骤;当所述指令执行模块无法完成指令的执行时,则在所述状态寄存器中设置对应错误标志,执行停止,同时发送中断信号;当所述指令寄存器中的指令为跳转指令(JMP)时,所述寻址模块所寻得地址为跳转点地址,将该跳转地址载入到所述程序计数寄存器中,继续(2)~(6)步骤;当所述指令寄存器中的指令为调用指令(CAL)时,所述寻址模块所寻得地址为调用点地址,此时所述程序计数模块将所述程序计数寄存器的值压入所述程序栈中,并将所述寻址模块寻得的跳转地址载入到所述程序计数寄存器中,继续(2)~(6)步骤;
(7)在完成一个代码段的执行后,所述程序计数模块查询所述程序栈是否为空,如仍有内容,说明已完成的代码段是被调用的程序,弹出栈顶地址到所述程序计数寄存器,继续(2)~(6)步骤;如所述程序栈已空,则程序完全结束,在所述状态寄存器中设置程序完成标志,同时发送中断信号。
与现有技术相比,本发明的有益效果如下:
    1.以片上IP核的方式实现了可自主运行的IL程序执行器,使得PLC控制器对PLC程序的执行可以不再受制于MCU的型号、性能和软件,同时以IP核形式存在的结构可以不作任何修改地集成到SoC芯片中。
    2.IP核执行32位定长的指令,与IEC61131-3中标范的IL指令直接对应,1条IL指令只要对应1条32位指令,在一个执行周期内完成执行,在同样的工作频率下,速度明显高于基于MCU设计的PLC数倍。
    3.IP核以流水线的方式直接执行IL程序,提高了IL程序的绝对速度,且与MCU的其它工作互不影响,实时性高。
    4.由于IL语言已标准化,与IL语言完全对应的指令集格式通用性高,可以极方便地实现PLC编程编译软件,其它各种编程语言可通过上位机的编程软件编译为IL指令并交由本IP核执行,提高了PLC整体CPU模块的执行速度。
当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
图1为本发明实施例的结构示意图。
 
具体实施方式
 
下方结合附图和具体实施例对本发明做进一步的描述。
 
本发明提供了一种PLC程序执行器IP核,其通过总线接口挂接在片上总线上,所述片上总线上同时挂接有MCU和存储器,包括总线接口模块、程序计数模块、取指令模块、寻址模块、取数据模块、执行模块以及程序栈,所述总线接口模块分别与所述程序计数模块、读指令模块、寻址模块、取数据模块以及执行模块连接,所述总线接口模块包括多个寄存器。
实施例
如图1所示,为本发明的一较佳实施例,在本例中总线接口模块为AHB接口模块,其通过所述片上总线主动访问或配置其它IP核或接受其它IP核的访问或配置,所述片上总线可以是AMBA、CoreConnect、Wishbone、OCP、Avalon等SoC片上总线的一种,此处仅具此5例总线,本发明并不局限于本例中的5中总线,此处仅距离说明。本例以AMBA总线为例。本发明实施例提供了一种PLC程序执行器IP核,该IP核作为片上实现的集成电路IP核挂接在SoC芯片的AMBA总线2上,其通过AHB接口模块1挂接在AMBA总线2上,AMBA总线2上同时挂接有MCU3和存储器模块4,该IP核包括AHB接口模块1、程序计数模块6、取指令模块5、寻址模块9、取数据模块10与指令执行模块8,AHB接口模块1分别与程序计数模块6、取指令模块5、寻址模块9、取数据模块10以及指令执行模块8连接,AHB接口模块1包括代码段首地址寄存器、数据段首地址寄存器、程序计数寄存器、指令寄存器、控制寄存器以及状态寄存器;
该IP核的工作流程为:
(1)MCU3向代码段首地址寄存器、数据段首地址寄存器内分别写入需要执行的程序的代码段首地址与该代码段对应的数据段首地址,并向所述控制寄存器写入启动程序的命令;
    (2)所述程序计数寄存器载入所述代码段首地址,程序计数模块6将所述代码段首地址交由取指令模块5;
    (3)取指令模块5根据所述地址通过AMBA总线2在存储器模块4中取出指令并存入指令寄存器并分析该指令;
(4)当该指令的被操作数为立即数或无操作数,则取指令模块5将该指令交由指令执行模块8;当该指令的被操作数以偏移量的形式需要寻址获得,所述指令寄存器将该指令的操作数信息交由所述寻址模块9,寻址模块9通过该指令段表和偏移量信息寻得被操作数的实际地址,并交由取数据模块10;
(5)取数据模块10取出数据,并同该指令一同交由指令执行模块8;
(6)指令执行模块8根据该指令的类型进行处理:当指令执行模块8完成的是单条指令的执行时,则在所述状态寄存器中设置指令完成标志,并向程序计数模块6发送完成信号,程序计数寄存器自加1,重复(2)~(6)步骤;当指令执行模块8无法完成指令的执行时,则在所述状态寄存器中设置对应错误标志,执行停止,同时发送中断信号;当所述指令寄存器中的指令为跳转指令(JMP)时,寻址模块9所寻得地址为跳转点地址,将该跳转地址载入到所述程序计数寄存器中,继续(2)~(6)步骤;当所述指令寄存器中的指令为调用指令(CAL)时,寻址模块9所寻得地址为调用点地址,此时程序计数模块6将所述程序计数寄存器的值压入程序栈7中,并将寻址模块9寻得的跳转地址载入到所述程序计数寄存器中,继续(2)~(6)步骤;
    (7)在完成一个代码段的执行后,程序计数模块6查询程序栈7是否为空,如仍有内容,说明已完成的代码段是被调用的程序,弹出栈顶地址到所述程序计数寄存器,继续(2)~(6)步骤;如程序栈7已空,则程序完全结束,在所述状态寄存器中设置程序完成标志,同时发送中断信号。
     其中,本IP核所执行程序的指令集是与IL指令直接对应的32位定长指令集,IL语言程序执行器IP核可以自主的顺序读取并执行整段IL指令程序;其中高8位用与表征IL指令码,另24位用于表征该指令码的具体参数(如被操作数类型)和被操作数,被操作数可以是立即数,也可以是存放在存储器中以段号和段内偏移量为表征的命令码或数据。
在具体实现中,指令执行模块还可以分为解码、运算等子级流水线,寻址模块还可以分为段地址寻址、目标地址寻址等子级流水线。
  
如下列表举例说明各种指令的具体格式定义:
Figure 2013100878026100002DEST_PATH_IMAGE001
Figure 238690DEST_PATH_IMAGE002
 在本实施例中,执行器IP核最大可支持255个段,每个段最大256个数据。寻址模块根据段号XXXXXXXX,通过在存储器中的段表查找到该段的实际首地址(段表在任务编程后由组态软件生成并下载到存储器),然后根据段内偏移量YYYYYYYY查找到被操作数的实际地址。当段号为00000000时,默认为当前程序代码段所对应的数据段,寻址模块不再需要查找段地址,而直接将数据段首地址寄存器中的数据作为被操作数的段地址,以此来简化寻址模块的操作。
   在本实施例中,执行器IP可支持立即数操作,立即数的大小受具体指令中分配的空间影响。如LD命令中,立即数需要小于23位。当指令中所处理的数值超过该限制时,组态软件会在编译时将该数存放在代码段的某个地址,并在指令中已该地址的段号和段内偏移量作为操作数。
 
本实施例中,主要寄存器定义如下:
Figure 2013100878026100002DEST_PATH_IMAGE003
上述实施例举例了指令格式和寄存器的定义,在本发明仅距离说明,指令格式和寄存器格式是可以自由调整。
本发明的目的在于针对现有PLC程序执行方法的不足,设计一种硬件方式实现(特别是以片上IP核方式实现)的32位定长指令集格式PLC程序执行模块,可以以流水线方式快速读取并执行PLC程序,本发明直接以硬件执行面向IL语言的指令集机器语言,可以以更快的速度和更高的效率进行PLC程序的执行。同时,以IP核结构方式的设计避免了依靠MCU执行而带来的性能影响和硬件相关等缺点,接口开放易移植。基于本发明可以实现高速IL程序执行、接口开放的SoC芯片,并基于此可以实现高性能的可编程控制器。
以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。

Claims (13)

1.一种PLC程序执行器IP核,其通过总线接口挂接在片上总线上,所述片上总线上同时挂接有MCU和存储器,其特征在于,包括总线接口模块、程序计数模块、取指令模块、寻址模块、取数据模块、执行模块以及程序栈,所述总线接口模块分别与所述程序计数模块、读指令模块、寻址模块、取数据模块以及执行模块连接,所述总线接口模块包括多个寄存器;
其中,所述总线接口模块通过所述多个寄存器接收所述MCU写入的程序执行信息;
所述程序计数模块更新程序的执行指令地址并交由所述取指令模块;
所述取指令模块根据所述执行指令地址从所述存储器中获取执行指令并分析和处理所述执行指令;  
所述寻址模块用于获取所述执行指令的实际地址;
所述取数据模块用于获取所述执行指令的被操作数;
所述指令执行模块完成对所述执行指令的执行,所述执行指令包括跳转指令;
所述程序栈用于保存所述跳转指令的地址。
2.如权利要求1所述的PLC程序执行器IP核,其特征在于,所述多个寄存器包括代码段首地址寄存器、数据段首地址寄存器、程序计数寄存器、指令寄存器、控制寄存器以及状态寄存器。
3.如权利要求2所述的PLC程序执行器IP核,其特征在于,所述代码段首地址寄存器与所述数据段首地址寄存器分别接收所述MCU写入的需要执行的程序的代码段首地址与该代码段对应的数据段首地址,所述控制寄存器接收所述MCU写入的启动程序的命令。
4.如权利要求2所述的PLC程序执行器IP核,其特征在于,所述取指令模块将所述代码段首地址载入所述程序计数寄存器,所述程序计数模块将所述代码段首地址交由所述取指令模块,所述取指令模块根据所述地址通过所述片上总线在所述存储器中取出指令存入所述指令寄存器并分析该指令。
5.如权利要求4所述的PLC程序执行器IP核,其特征在于,所述执行指令的被操作数为立即数或无操作数时,所述取指令模块将所述执行指令交由所述指令执行模块;所述执行指令的被操作数以偏移量的形式需要寻址获得时,所述取指令模块将该执行指令的被操作数交由所述寻址模块。
6.如权利要求5所述的PLC程序执行器IP核,其特征在于,所述寻址模块通过该执行指令段表和偏移量信息寻得被操作数的实际地址,并交由所述取数据模块;所述取数据模块取出被操作数,并同该指令一同交由所述指令执行模块。
7.如权利要求6所述的PLC程序执行器IP核,其特征在于,所述指令执行单元根据该执行指令的类型进行处理:当所述指令执行模块完成的是单条指令的执行时,则在所述状态寄存器中设置指令完成标志,并向程序计数模块发送完成信号,程序计数寄存器自加1;当所述指令执行模块无法完成指令的执行时,则在所述状态寄存器中设置对应错误标志,执行停止,同时发送中断信号;当所述指令寄存器中的指令为跳转指令JMP时,所述寻址模块所寻得地址为跳转点地址,将该跳转地址载入到所述程序计数寄存器中,完成跳转指令的执行;当所述指令寄存器中的指令为调用指令CAL时,所述寻址模块所寻得地址为调用点地址,此时所述程序计数模块将所述程序计数寄存器的值压入所述程序栈中,并将所述寻址模块寻得的跳转地址载入到所述程序计数寄存器中,完成该调用指令的执行。
8.如权利要求1所述的PLC程序执行器IP核,其特征在于,所述PLC程序为与IL语言直接对应的指令集程序。
9.如权利要求8所述的PLC程序执行器IP核,其特征在于,所述指令是与IL指令直接对应的32位定长指令,其中高8位用于表征指令码,另24位表征该指令码的具体参数和被操作数。
10.如权利要求8所述的PLC程序执行器IP核,其特征在于,其顺序读取程序的IL指令。
11.如权利要求1所述的PLC程序执行器IP核,其特征在于,其通过所述片上总线主动访问或配置其它IP核或接受其它IP核的访问或配置,所述片上总线为AMBA、CoreConnect、Wishbone、OCP、Avalon片上总线中的一种。
12.一种PLC程序执行器IP核,其通过总线接口挂接在片上总线上,所述片上总线上同时挂接有MCU和存储器,其特征在于,包括总线接口模块、程序计数模块、取指令模块、寻址模块、取数据模块、执行模块以及程序栈,所述总线接口模块分别与所述程序计数模块、读指令模块、寻址模块、取数据模块以及执行模块连接,所述总线接口模块包括代码段首地址寄存器、数据段首地址寄存器、程序计数寄存器、指令寄存器、控制寄存器以及状态寄存器;
该IP核的工作方法为:
(1)MCU向所述代码段首地址寄存器、数据段首地址寄存器内分别写入需要执行的程序的代码段首地址与该代码段对应的数据段首地址,并向所述控制寄存器写入启动程序的命令;
(2)所述程序计数寄存器载入所述代码段首地址,所述程序计数模块将所述代码段首地址交由所述取指令模块;
(3)所述取指令模块根据所述地址通过片上总线在所述存储器中取出指令并存入所述指令寄存器并分析该指令;
(4)当该指令的被操作数为立即数或无操作数,则所述取指令模块将该指令交由所述指令执行模块;当该指令的被操作数以偏移量的形式需要寻址获得,所述指令寄存器将该指令的操作数信息交由所述寻址模块,所述寻址模块通过该指令段表和偏移量信息寻得被操作数的实际地址,并交由所述取数据模块;
(5)所述取数据模块取出被操作数,并同该指令一同交由所述指令执行模块;
(6)所述指令执行单元根据该指令的类型进行处理:当所述指令执行模块完成的是单条指令的执行时,则在所述状态寄存器中设置指令完成标志,并向程序计数模块发送完成信号,程序计数寄存器自加1,重复(2)~(6)步骤;当所述指令执行模块无法完成指令的执行时,则在所述状态寄存器中设置对应错误标志,执行停止,同时发送中断信号;当所述指令寄存器中的指令为跳转指令JMP时,所述寻址模块所寻得地址为跳转点地址,将该跳转地址载入到所述程序计数寄存器中,继续(2)~(6)步骤;当所述指令寄存器中的指令为调用指令CAL时,所述寻址模块所寻得地址为调用点地址,此时所述程序计数模块将所述程序计数寄存器的值压入所述程序栈中,并将所述寻址模块寻得的跳转地址载入到所述程序计数寄存器中,继续(2)~(6)步骤;
(7)在完成一个代码段的执行后,所述程序计数模块查询所述程序栈是否为空,如仍有内容,说明已完成的代码段是被调用的程序,弹出栈顶地址到所述程序计数寄存器,继续(2)~(6)步骤;如所述程序栈已空,则程序完全结束,在所述状态寄存器中设置程序完成标志,同时发送中断信号。
13.如权利要求12所述的方法,其特征在于,其通过所述片上总线主动访问或配置其它IP核或接受其它IP核的访问或配置,所述片上总线为AMBA、CoreConnect、Wishbone、OCP、Avalon片上总线中的一种。
CN201310087802.6A 2013-03-19 2013-03-19 一种plc程序执行器ip核 Active CN103207771B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310087802.6A CN103207771B (zh) 2013-03-19 2013-03-19 一种plc程序执行器ip核

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310087802.6A CN103207771B (zh) 2013-03-19 2013-03-19 一种plc程序执行器ip核

Publications (2)

Publication Number Publication Date
CN103207771A true CN103207771A (zh) 2013-07-17
CN103207771B CN103207771B (zh) 2015-10-07

Family

ID=48755006

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310087802.6A Active CN103207771B (zh) 2013-03-19 2013-03-19 一种plc程序执行器ip核

Country Status (1)

Country Link
CN (1) CN103207771B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104597832A (zh) * 2014-12-31 2015-05-06 浙江中控研究院有限公司 一种基于amba总线的plc程序调度器ip核
CN104932407A (zh) * 2015-05-27 2015-09-23 苏州荣威工贸有限公司 一种基于plc的模块化机器人驱动控制系统及方法
CN105137817A (zh) * 2015-07-24 2015-12-09 浙江中控研究院有限公司 控制程序处理器的片上系统及其控制程序执行方法
CN105511815A (zh) * 2015-12-14 2016-04-20 中国电子信息产业集团有限公司第六研究所 一种基于段表的plc可运行文件存储解析方法及存储系统
CN106990747A (zh) * 2017-02-28 2017-07-28 深圳市麦格米特控制技术有限公司 一种plc指令执行器
CN107247577A (zh) * 2017-06-14 2017-10-13 湖南国科微电子股份有限公司 一种配置socip核的方法、装置及系统
WO2018040494A1 (zh) * 2016-08-30 2018-03-08 华为技术有限公司 一种扩展处理器指令集的方法及装置
CN109213079A (zh) * 2017-06-29 2019-01-15 深圳模德宝科技有限公司 一种自动化生产的控制方法及其装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010054912A1 (en) * 2000-06-26 2001-12-27 Masahiro Nagata Program logic device
CN101968785A (zh) * 2009-07-28 2011-02-09 万继华 理解人类自然语言的逻辑机器模型
CN102298352A (zh) * 2010-06-25 2011-12-28 中国科学院沈阳自动化研究所 高性能可编程控制器专用处理器体系结构及其实现方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010054912A1 (en) * 2000-06-26 2001-12-27 Masahiro Nagata Program logic device
CN101968785A (zh) * 2009-07-28 2011-02-09 万继华 理解人类自然语言的逻辑机器模型
CN102298352A (zh) * 2010-06-25 2011-12-28 中国科学院沈阳自动化研究所 高性能可编程控制器专用处理器体系结构及其实现方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104597832A (zh) * 2014-12-31 2015-05-06 浙江中控研究院有限公司 一种基于amba总线的plc程序调度器ip核
CN104597832B (zh) * 2014-12-31 2017-04-19 浙江中控研究院有限公司 一种基于amba总线的plc程序调度器ip核
CN104932407A (zh) * 2015-05-27 2015-09-23 苏州荣威工贸有限公司 一种基于plc的模块化机器人驱动控制系统及方法
CN105137817A (zh) * 2015-07-24 2015-12-09 浙江中控研究院有限公司 控制程序处理器的片上系统及其控制程序执行方法
CN105137817B (zh) * 2015-07-24 2018-04-17 浙江杰芯科技有限公司 控制程序处理器的片上系统的控制程序执行方法
CN105511815A (zh) * 2015-12-14 2016-04-20 中国电子信息产业集团有限公司第六研究所 一种基于段表的plc可运行文件存储解析方法及存储系统
WO2018040494A1 (zh) * 2016-08-30 2018-03-08 华为技术有限公司 一种扩展处理器指令集的方法及装置
CN106990747A (zh) * 2017-02-28 2017-07-28 深圳市麦格米特控制技术有限公司 一种plc指令执行器
CN107247577A (zh) * 2017-06-14 2017-10-13 湖南国科微电子股份有限公司 一种配置socip核的方法、装置及系统
CN107247577B (zh) * 2017-06-14 2020-11-17 湖南国科微电子股份有限公司 一种配置soc ip核的方法、装置及系统
CN109213079A (zh) * 2017-06-29 2019-01-15 深圳模德宝科技有限公司 一种自动化生产的控制方法及其装置

Also Published As

Publication number Publication date
CN103207771B (zh) 2015-10-07

Similar Documents

Publication Publication Date Title
CN103207771A (zh) 一种plc程序执行器ip核
CN100565472C (zh) 一种适用于多处理器核系统芯片的调试方法
CN110427337B (zh) 基于现场可编程门阵列的处理器内核及其运行方法
CN103136107A (zh) 一种嵌入式程序动态分配内存的变量调试方法
CN103226506B (zh) 内嵌于芯片的usb转jtag调试装置及其调试方法
CN101840368B (zh) 多核处理器的jtag实时片上调试方法及其系统
CN101458725B (zh) 微控制器芯片及其调试方法
CN105137800A (zh) 一种基于sopc技术的plc协同控制装置
CN102917242A (zh) 一种多格式视频解码器的测试系统和测试方法
CN102201022A (zh) 用于fpga验证的方法和装置
CN109669729A (zh) 一种处理器的启动引导方法
CN103677885A (zh) 一种arm flash简易程序烧写的方法
CN102073480B (zh) 基于时分复用实现多核处理器内核模拟的方法
CN109891395B (zh) 调试系统和方法
CN111954854B (zh) 支持装置以及计算机可读取存储介质
CN103793263A (zh) 一种基于PowerPC处理器的DMA事务级建模方法
CN205003526U (zh) 一种基于sopc技术的plc协同控制装置
US20070300054A1 (en) Universal BSP tool for porting on embedded systems and an application thereof
CN117172018A (zh) 一种适用于多种内核的单片机在线调试系统
CN106990747A (zh) 一种plc指令执行器
US20040083088A1 (en) Analysis of the performance of a portion of a data processing system
CN113672555B (zh) 处理器核、处理器、片上系统和调试系统
JP2008204023A (ja) プログラマブルコントローラシステム、プログラマブルコントローラのデバッグ方法
CN103345377A (zh) Fifo存储器控制方法及装置
CN113806282A (zh) 异构控制系统及异构控制系统的加载方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20180213

Address after: 310053 Binjiang District, Hangzhou, Hangzhou, Zhejiang Province, No. six and No. 309 F16

Patentee after: Zhejiang Jay core technology Co., Ltd.

Address before: 310053 Hangzhou Province, Binjiang District Province, No. six and No. 309 Road, the center of science and Technology Park (high tech Zone) ()

Patentee before: Zhejiang Supcon Research Co., Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20211208

Address after: 315000 room 1-1-178, 150 Changpu Road, jishigang Town, Haishu District, Ningbo City, Zhejiang Province

Patentee after: Ningbo zhongkong Microelectronics Co.,Ltd.

Address before: F16, 309 Liuhe Road, Binjiang District, Hangzhou City, Zhejiang Province, 310053

Patentee before: Zhejiang Jay core technology Co.,Ltd.

TR01 Transfer of patent right