KR940000220B1 - Command word process system of program logic controller - Google Patents

Command word process system of program logic controller Download PDF

Info

Publication number
KR940000220B1
KR940000220B1 KR1019910009861A KR910009861A KR940000220B1 KR 940000220 B1 KR940000220 B1 KR 940000220B1 KR 1019910009861 A KR1019910009861 A KR 1019910009861A KR 910009861 A KR910009861 A KR 910009861A KR 940000220 B1 KR940000220 B1 KR 940000220B1
Authority
KR
South Korea
Prior art keywords
instruction
unit
hardware
command
signal
Prior art date
Application number
KR1019910009861A
Other languages
Korean (ko)
Inventor
박용운
Original Assignee
금성산전 주식회사
이희종
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 금성산전 주식회사, 이희종 filed Critical 금성산전 주식회사
Priority to KR1019910009861A priority Critical patent/KR940000220B1/en
Application granted granted Critical
Publication of KR940000220B1 publication Critical patent/KR940000220B1/en

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

The system includes a command latch unit (7) for inputting the command of a program memory (3), an OR-gate (OR1) for oring the clock signal of a clock generator (6) and hardware run signal (HRS), an OR-gate (OR1) for oring the read signal (RD) and enable signal (EN), a buffer unit (4) for buffering the command of a command latch unit (7), an AND-gate (AND1) for driving the clock pulse to a command pointer counter unit (2) and command latch unit (7). This system improves the processing time.

Description

프로그램 로직 제어기의 명령어 처리시스템Instruction Processing System of Program Logic Controller

제1도는 종래 프로그램 로직 제어기의 명령어 처리시스템 구성도.1 is a block diagram of an instruction processing system of a conventional program logic controller.

제2도는 (a) 및 (b)는 제1도의 동작 설명에 대한 신호흐름도.2 is a signal flow diagram for the description of the operation of FIG.

제3도는 본 발명 프로그램 로직 제어기의 명령어 처리시스템 구성도.3 is a configuration diagram of an instruction processing system of the program logic controller of the present invention.

제4도는 제3도의 동작 설명에 대한 신호흐름도.4 is a signal flow diagram for explaining the operation of FIG.

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

1 : 중앙처리장치 2 : 명령어 포인터 카운터부1: central processing unit 2: instruction pointer counter

3 : 사용자 프로그램 메모리부 4 : 버퍼부3: user program memory section 4: buffer section

5 : 하드웨어 명령어 수행부 6 : 클럭발색부5: hardware instruction execution unit 6: clock generator

7 : 명령어 래치부 OR1,OR2 : 오아게이트7: Instruction latch OR1, OR2: Oagate

AND1 : 앤드게이트AND1: ANDGATE

본 발명은 프로그램 로직 제어기(Programmable Logic Controller)의 사용자 프로그램 수행 속도를 향상시키기 위한 것으로, 특히 소프트 명령 실행시 실행할 명령어를 중앙처리장치가 읽어 들이는데 있어서, 명령어의 포인터 및 어드레스의 조작에 따른 시간지연을 하드웨어 및 소프트웨어로 범용으로 고속 처리하도록 한 프로그램 로직 제어기의 명령어 처리시스템에 관한 것이다.The present invention is to improve the user program execution speed of the programmable logic controller, in particular, when the central processing unit reads an instruction to be executed when executing a soft instruction, the time delay according to the operation of the pointer and address of the instruction The present invention relates to a command processing system of a program logic controller for fast processing in general in hardware and software.

종래 프로그램 로직 제어기의 소프트웨어 처리시스템은 첨부된 도면 제1도에 도시된 바와같이, 프로그램롬(9)의 프로그램 수행에 따라 전체 시스템 동작을 제어하는 중앙처리장치(1)와 상기 중앙처리장치(1)로부터 출력된 명령어 포인트(IP)를 계수하는 명령어 포인터 카운터부(2)와, 상기 중앙처리장치(1)로부터 출력된 어드레스신호 및 명령어 포인터 카운터부(2)의 명령어 포인터(IP)를 선택하는 어드레스 선택부(7)와, 상기 어드레스 선택부(7)의 어드레스 지정에 따라 저장되어 있는 해당 사용자의 응용 프로그램을 출력하는 사용자 프로그램 메모리부(3)와, 상기 중앙처리장치(1)의 하드웨어 인에이블신호(HEN)에 의해 인에이블되어 사용자 프로그램 메모리부(3)의 명령어를 클럭발생부(6)의 클럭펄스에 동기시켜 하드웨어적으로 수행하는 하드웨어 명령어 수행부(5)와, 상기 하드웨어 명령어 수행부(5)로부터 처리된 데이타를 저장하는 데이타 메모리부(8)와, 상기 하드웨어 명령어 수행부(5)로부터 출력된 하드웨어런신호(HRS) 및 클럭발생부(6)의 클럭펄스를 낸드화하여 명령어 포인터 카운터부(2)에 입력하는 앤드게이트(AND1)와, 상기 하드웨어 명령어 수행부(5)로부터 소프트웨어런신호(SRS)가 발생시 사용자 프로그램 메모리부(3)의 명령어를 버퍼링하여 중앙처리장치(1)에 입력하는 버퍼부(4)로 구성되어 있다.As shown in FIG. 1, the software processing system of the conventional program logic controller includes a central processing unit 1 and a central processing unit 1 for controlling the overall system operation according to the program execution of the program ROM 9. Selects the instruction pointer counter 2 for counting the instruction point IP output from the < RTI ID = 0.0 >), < / RTI > the address signal output from the CPU 1 and the instruction pointer IP of the instruction pointer counter 2; An address selector 7, a user program memory unit 3 for outputting an application program of a corresponding user stored in accordance with the address designation of the address selector 7, and hardware input of the central processing unit 1; A hardware instruction that is enabled by the enable signal HEN and is performed in hardware by synchronizing the instruction of the user program memory unit 3 with the clock pulse of the clock generator 6. A row section 5, a data memory section 8 for storing data processed by the hardware instruction execution section 5, and a hardware run signal HRS and a clock generation section output from the hardware instruction execution section 5; The AND gate AND1 inputs the clock pulse of (6) to the instruction pointer counter section 2, and the user program memory section 3 when the software run signal SRS is generated from the hardware instruction execution section 5; It is composed of a buffer unit (4) for buffering the command of () and input to the central processing unit (1).

이와같이 구성된 종래 프로그램 로직 제어기의 명령어 처리시스템을 제2도를 참조하여 설명하면 다음과 같다.The command processing system of the conventional program logic controller configured as described above will be described with reference to FIG.

제2도에 도시된 바와같이, 초기에 중앙처리장치(1)는 프로그램롬(9)의 프로그램 수행에 따라 명령어 포인터 카운터부(2)를 초기화시킨 후 하드웨어 명령어 수행부(5)에 하드웨어 인에이블신호(HEN)를 인가하여 인에이블시키게 된다. 하드웨어 명령어 수행부(5)는 사용자 프로그램 메모리부(3)로부터 출력된 사용자의 명령어를 클럭발생부(6)의 클럭펄스에 동기시켜 수행함과 아울러 하드웨어런신호(HRS)를 ″1″를 하여 앤드게이트(AND1)에 인가하게 되고, 그 앤드게이트(AND1)는 클럭발생부(6)로 부터 발생되는 클럭펄스와 하드웨어 명령어 수행부(5)로부터 출력된 하드웨어런신호(HRS)를 앤드화하여 명령어 포인터 카운터부(2)의 클럭단자에 인가하게 된다. 이에따라 상기 명령어 포인터 카운터부(2)는 앤드게이트(AND1)로부터 입력되는 클럭펄스를 카운트하여 명령어 포인터(IR)를 하나 증가시킨 후 어드레스 선택부(7)를 통해 사용자 프로그램 메모리부(3)의 어드레스를 지정하여 다음 명령어를 하드웨어 명령어 수행부(5)에 입력하게 된다. 이와 같은 방법으로 계속되는 일련의 하드웨어 명령어를 수행하는 도중에 하드웨어로 수행 불가능한 명령어가 사용자 프로그램 메모리부(3)로부터 입력되는 하드웨어 명령어 수행부(5)는 하드웨어런신호(HRS)를 ″ψ″으로 하여 클럭발생부(6) 및 앤드게이트(AND1)의 출력 클럭 펄스를 중지시킴과 아울러 소프트웨어런신호(SRS)를 중앙처리장치(1)에 인가하게 된다. 이때 중앙처리장치(1)가 소프트웨어로 수행할 명령어를 읽어들이는데 있어서, 제2도의 (a)와 같이 명령어 포인터(IR)를 조작하는 방법과, 제2도의 (b)와 같이 사용자 프로그램 메모리부(3)의 어드레스를 조작하는 방법으로 읽어들이게 된다.As shown in FIG. 2, the central processing unit 1 initially initializes the instruction pointer counter unit 2 according to the program execution of the program ROM 9, and then enables hardware in the hardware instruction execution unit 5. The signal HEN is applied to enable it. The hardware command execution unit 5 executes the user's command output from the user program memory unit 3 in synchronization with the clock pulse of the clock generation unit 6, and performs a " 1 " of the hardware run signal HRS. The AND gate AND1 is applied to the gate AND1, and the AND gate AND1 ANDs the clock pulse generated from the clock generator 6 and the hardware run signal HRS output from the hardware instruction execution unit 5 to command the instruction. It is applied to the clock terminal of the pointer counter 2. Accordingly, the instruction pointer counter 2 counts clock pulses input from the AND gate AND1 to increase the instruction pointer IR by one, and then the address of the user program memory unit 3 through the address selector 7. By inputting the next command to the hardware command execution unit (5). During the execution of a series of hardware instructions in this manner, the hardware instruction execution section 5, in which an instruction that cannot be executed by hardware is input from the user program memory section 3, clocks the hardware run signal HRS as " ψ ". The output clock pulses of the generator 6 and the AND gate AND1 are stopped, and the software run signal SRS is applied to the central processing unit 1. At this time, when the CPU 1 reads a command to be executed by software, a method of operating the instruction pointer IR as shown in FIG. 2A and a user program memory unit as shown in FIG. 2B. It reads in the method of operating the address of (3).

즉, 제2도의 (a)와 같이 명령어 포인트(IR)를 조작하여 판독한 경우에 있어서, 먼저 중앙처리장치(1)는 명령어 포인터 카운터부(2)로부터 현재의 명령어 포인터(IR)를 읽어들임과 아울러 버퍼부(4)로부터 버퍼링된 사용자 프로그램 메모리부(3)의 명령어를 판독하여 처리하고, 아울러 명령어 포인터 카운터부(2)에 클럭 펄스를 인가하여 명령에 포인터(IP)를 하나 증가시키게 된다. 이에따라 명령어 포인터 카운터부(2)는 어드레스 선택부(7)를 통해 사용자 프로그램 메모리부(3)의 어드레스를 지정하여 다음 명령어를 버퍼부(4)에 입력하게 되고, 버퍼부(4)는 입력된 명령어를 버퍼링하여 중앙처리장치(1)에 입력하게 된다. 이와 같은 방법으로 중앙처리장치(1)는 명령어 포인터(IR)를 하나씩 증가시켜 일련의 사용자 명령어를 버퍼부(4)를 통해 읽어들여 수행한 후 다음에 수행할 명령어 위치를 명령어 포인터 카운터부(2)에 세팅하고 하드웨어 인에이블신호(HEN)를 하드웨어 명령어 수행부(5)에 인가하여 다음 명령어의 수행을 하드웨어적으로 처리하게 된다. 한편 제2도의 (b)와 같이 사용자 프로그램 메모리부(3)의 어드레스를 조작하여 판독할 경우에 있어서, 먼저 하드웨어 명령어 수행부(5)로부터 소프트웨어런신호(SRS)를 인가받은 중앙처리장치(1)는 명령어 포인터 카운터부(2)로부터 현재의 명령어 포인터(IR)를 읽어들여와 사용자 프로그램 메모리부(3)를 지정할 어드레스를 환산한 후 어드레스 선택부(7)를 통해 사용자 프로그램 메모리부(3)의 어드레스를 지정하여 다음 명령어를 버퍼부(4)에 입력하게 되고, 버퍼부(4)는 그 입력된 명령어를 버퍼링하여 중앙처리장치(1)에 입력하게 된다. 이와같은 방법으로 중앙처리장치(1)는 어드레스를 하나씩 증가시켜 일련의 사용자 명령어를 버퍼부(4)를 통해 읽어들여 수행한 후 다음에 수행할 명령어 위치를 명령어 포인터 카운터부(2)에 세팅하고 하드웨어 인에이블신호(HEN)를 하드웨어 명령어 수행부(5)에 인가하여 다음 명령어의 수행을 하드웨어적으로 처리하게 된다.That is, when the instruction point IR is manipulated and read as shown in FIG. 2A, the CPU 1 first reads the current instruction pointer IR from the instruction pointer counter 2. In addition, the instruction of the user program memory unit 3 buffered from the buffer unit 4 is read and processed, and a clock pulse is applied to the instruction pointer counter unit 2 to increase the pointer IP by one. . Accordingly, the instruction pointer counter section 2 designates the address of the user program memory section 3 through the address selection section 7 and inputs the next command to the buffer section 4, and the buffer section 4 inputs The command is buffered and input to the CPU 1. In this way, the central processing unit 1 increments the instruction pointer IR by one, reads and executes a series of user instructions through the buffer unit 4, and then positions the instruction pointer to be executed next. ) And the hardware enable signal HEN is applied to the hardware instruction execution unit 5 to process the execution of the next instruction in hardware. On the other hand, when the address of the user program memory unit 3 is read and manipulated as shown in FIG. 2B, the CPU 1 receives the software run signal SRS from the hardware command execution unit 5 first. ) Reads the current instruction pointer IR from the instruction pointer counter section 2, converts an address to designate the user program memory section 3, and then converts the address of the user program memory section 3 through the address selection section 7. The next command is input to the buffer unit 4 by designating an address, and the buffer unit 4 buffers the input command and inputs it to the central processing unit 1. In this way, the central processing unit 1 increments the addresses one by one, reads and executes a series of user instructions through the buffer unit 4, and then sets the next instruction position to be executed in the instruction pointer counter unit 2. The hardware enable signal HEN is applied to the hardware command execution unit 5 to process the execution of the next command in hardware.

그러나, 이와같은 종래 프로그램 로직 제어기의 명령어 처리시스템은 소프트웨어로 수행할 사용자의 명령어를 중앙처리장치가 읽어들이기 위해 명령어 포인터 카운터부의 명령어 포인터 조작 또는 사용자 프로그램 메모리부의 어드레스 조작등이 필요하게 되고, 이때 조작에 소비되는 시간지연은 하드웨어 명령어 수행부에 비추어 시스템의 효율을 저하시키게 되는 문제점이 있었다.However, such a command processing system of a conventional program logic controller requires a command pointer operation of an instruction pointer counter unit or an address operation of a user program memory unit to read a user's command to be executed by software, such that The time delay consumed in the system has a problem in that the efficiency of the system is reduced in view of the hardware command execution unit.

본 발명은 이와같은 종래의 문제점을 감안하여 사용자 프로그램 메모리부의 명령어를 래치하는 명령어 래치부와, 클러펄스 및 버퍼부의 인에이블신호를 제공하는 오아게이트를 이용하여 소프트웨어명령 실행시 실행할 명령어를 중앙처리장치가 판독하는데 있어서 명령어의 포인터 및 어드레스의 조작에 따른 시간지연을 해소하도록 프로그램 로직 제어기의 명령어 처리시스템을 창안한 것으로, 이하 본 발명을 첨부한 도면에 의거 상세히 설명하면 다음과 같다.SUMMARY OF THE INVENTION In view of such a conventional problem, the present invention provides a central processing unit for executing instructions when executing a software instruction by using an instruction latch unit for latching an instruction of a user program memory unit, and an oragate providing an enable signal of a clock pulse and a buffer unit. In order to solve the time delay caused by the operation of the pointer and the address of the instruction to read the invention, the present invention is described in detail with reference to the accompanying drawings, the invention of the instruction logic system of the program logic controller.

제3도는 본 발명 프로그램 로직 제어기의 명령어 처리시스템 구성도로서, 이에 도시한 바와같이, 프로그램롬(9)의 프로그램 수행에 따라 시스템 전체 동작을 제어하는 중앙처리장치(1)와, 상기 중앙처리장치(1)로부터 출력된 사용자 프로그램의 스텝정보를 계수하는 명령어 포인터 카운터부(2)와, 상기 명령어 포인터 카운터부(2)의 시텝 정보에 따라 저장되어 있는 해당 사용자의 응용프로그램을 출력하는 사용자 프로그램 메모리부(3)와, 상기 사용자 프로그램 메모리부(3)로부터 출력된 사용자의 해당 명령어를 래치하는 명령어 래치부(7)와, 상기 중앙처리장치(1)의 하드웨어 인에이블신호(HEN)에 의해 인에이블되어 명령어 래치부(7)로부터 출력된 사용자의 명령어를 클럭발생부(6)의 클럭 펄스에 동기시켜 하드웨어적으로 수행하는 하드웨어 명령어 수행부(5)와, 상기 하드웨어 명령어 수행부(5)로부터 처리된 데이타를 저장하는 데이타 메모리부(8)와, 상기 하드웨어 명령어 수행부(5)로부터 출력된 하드웨어런 신호(HRS) 및 클럭발생부(6)의 클럭 펄스를 오아링하여 출력하는 오아게이트(OR1)와, 상기 하드웨어 명령어 수행부(5)로부터 소프트웨어런신호(SRS)가 발생시 중앙처리장치(1)로부터 출력된 인에이블신호(EN) 및 리드신호(RD)를 오아링항는 오아게이트(OR2)와, 상기 오아게이트(OR2)의 출력신호에 따라 명령어 래치부(7)의 사용자 명령어를 버퍼링하여 중앙처리장치(1)에 입력하는 버퍼부(4)와, 상기 오아게이트(OR1)(OR2)의 출력신호를 앤드화하여 명령어 포인터 카운터부(2) 및 명령어 래치부(7)에 클럭 펄스를 제공하는 앤드게이트(AND1)로 구성한다.3 is a configuration diagram of a command processing system of the program logic controller of the present invention. As shown therein, a central processing unit 1 for controlling the overall operation of a system in accordance with a program execution of a program ROM 9, and the central processing unit A user pointer memory for outputting an instruction pointer counter section 2 for counting step information of the user program outputted from (1) and an application program of the user stored according to the step information of the instruction pointer counter section 2; By the hardware enable signal HEN of the CPU 3, the instruction latch unit 7 for latching the corresponding instruction of the user output from the user program memory unit 3, and the CPU 1; Hardware command execution, which is enabled and is performed in hardware by synchronizing the user's command output from the command latch unit 7 with the clock pulse of the clock generator 6 (5), a data memory section 8 for storing data processed by the hardware command execution section 5, a hardware run signal (HRS) and a clock generation section output from the hardware command execution section 5 ( OA gate OR1 for ringing and outputting the clock pulse of 6) and enable signal EN outputted from the central processing unit 1 when the software run signal SRS is generated from the hardware command execution unit 5. And a buffer for buffering a user command of the instruction latch unit 7 according to the output signal of the ora gate OR2 and the read signal RD, and inputting the read signal RD to the CPU 1. And an AND gate AND1 for supplying clock pulses to the instruction pointer counter unit 2 and the instruction latch unit 7 by ANDing the output signals of the OR gates OR1 and OR2. .

이와같이 구성된 본 발명의 작용, 효과를 설명하면 다음과 같다.Referring to the operation and effects of the present invention configured as described above are as follows.

초기의 중앙처리장치(1)는 프로그램롬(9)의 프로그램 수행에 따라 명령어 포인터 카운터부(2)를 초기화시킨 후 사용자 프로그램의 스텝정보를 명령어 포인터 카운터부(2)에 기록하게 된다. 이에따라 명령어 포인터 카운터부(2)는 사용자 프로그램 메모리부(3)의 해당 어드레스를 지정하게 되고 사용자 프로그램 메모리부(3)에서는 해당 스텝의 명령어가 출력되어 명령어 래치부(7)에 입력된다. 이후 중앙처리장치(1)는 하드웨어 명령어 수행부(5)에 하드웨어 인에이블신호(HEN)를 인가하여 인에이블시키게 된다. 이때 초기에 명령어 래치부(7)에 래치되어 있던 무연산(NOP : NO Opreation) 명령어 수행되고 나면 사용자 프로그램 메모리부(3)로부터 첫번째 사용자의 명령어가 명령어 래치부(7)에 래치되어 하드웨어 명령어 수행부(5)에 입력되면 중앙처리장치(1)에 의해 인에이블된 상기 하드웨어 명령어 수행부(5)는 명령어 래치부(7)로부터 출력된 사용자의 명령어가 하드웨어적으로 수행할 수 있는 명령어이면 그 사용자의 명령어를 클럭발생부(6)의 클럭 펄스에 동기시켜 수행함과 아울러 하드웨어런신호(HRS)를 ″1″로 하여 오아게이트(OR1)의 입력반전단자에 인가하게 되고, 그 오아게이트(OR1)는 클럭발생부(6)로 부터 발생되는 클럭펄스와 하드웨어런신호(HRS)를 오아링하여 앤드게이트(AND1)의 일측입력단자에 클럭펄스를 출력하게 된다. 이때 중앙처리장치(1)는 리드신호(RD)를 하이로 하여 오아게이트(OR2)를 통해 앤드게이트(AND1)의 타측입력단자에 인가하게 됨으로써 그 앤드게이트(AND1)는 오아게이트(OR1)(OR2)의 출력신호를 앤드화하여 명령어 포인터 카운터부(2)의 클럭단자 및 명령어 래치부(7)의 클럭단자에 클럭펄스를 인가하게 된다. 이에따라 상기 명령어 포인터 카운터부(2)는 앤드게이트(AND1)로부터 출력되는 클럭펄스를 카운터업한 후 사용자 프로그램 메모리부(3)와 어드레스를 지정하여 다음 수행할 명령어를 명령어 래치부(7)에 입력하게 되고, 상기 명령어 래치부(7)는 사용자 프로그램 메로리부(3)의 명령어를 앤드게이트(AND1)의 클럭펄스에 동기시켜 래치함과 아울러 하드웨어 명령어 수행부(5)에 입력하게 된다. 이와같은 방법으로 계속되는 일련의 하드웨어 명령어를 수행하는 도중에 하드웨어로 수행이 불가능한 명령어가 명령어 래치부(7)로부터 입력되면 하드웨어 명령어 수행부(5)는 하드웨어런신호(HRS)를 ″ψ″으로 하여 앤드게이트(AND1)의 출력 클럭펄스를 중지시킴과 아울러 소프트웨어런신호(SRS)를 중앙처리장치(1)에 인가하게 된다. 이때, 중앙처리장치(1)는 사용자 프로그램 메모리부(3) 및 명령어 포인터 카운터부(2)를 조작하지 않고 리드신호(RD) 및 인에이블신호(EN)를 로우신호로 하여 오아게이트(OR2)를 통해 버퍼부(4)를 인에이블시키게 된다. 이에따라 상기 버퍼부(4)는 명령어 래치부(7)로부터 출력된 사용자의 명령어를 버퍼링하게 되고, 중앙처리장치(1)는 버퍼부(4)로부터 버퍼링된 사용자의 명령어를 읽어들임과 아울러 리드신호(RD)를 하이로 하여 오아게이트(OR2)를 통해 앤드게이트(AND1)의 일측입력단자에 인가하게 된다. 따라서 상기 앤드게이트(AND1)는 오아게이트(PR1)로부터 출력된 하이신호와 오아게이트(OR2)를 통한 리드신호(RD)를 앤드화하여 명령어 래치부(7) 및 명령어 포인터 카운터부(2)에 클럭펄스를 입력하게 되고, 명령어 포인터 카운터부(2)는 앤드게이트(AND1)로부터 출력된 클럭펄스를 카운트업한 후 사용자 프로그램 메모리부(3)의 어드레스를 지정하여 다음 수행할 명령어를 명령래치부(7)에 래치하게 된다.Initially, the central processing unit 1 initializes the instruction pointer counter unit 2 according to the program execution of the program ROM 9, and then records the step information of the user program in the instruction pointer counter unit 2. Accordingly, the instruction pointer counter section 2 designates the corresponding address of the user program memory section 3, and the instruction of the corresponding step is output from the user program memory section 3 and input to the instruction latch section 7. Thereafter, the central processing unit 1 applies the hardware enable signal HEN to the hardware command execution unit 5 to enable it. At this time, after the NOP instruction, which is initially latched in the instruction latch unit 7, is executed, the instruction of the first user from the user program memory unit 3 is latched to the instruction latch unit 7 to execute a hardware instruction. The hardware command execution unit 5 enabled by the central processing unit 1 when inputted to the unit 5, if the user's command output from the instruction latch unit 7 can be executed in hardware, The user's command is executed in synchronization with the clock pulse of the clock generator 6, and the hardware run signal HRS is set to " 1 " and applied to the input inverting terminal of the oragate OR1. ) Outputs the clock pulse to one input terminal of the AND gate AND1 by ringing the clock pulse generated from the clock generator 6 and the hardware run signal HRS. At this time, the central processing unit 1 applies the read signal RD high to the other input terminal of the AND gate AND1 through the OR gate OR2, so that the AND gate AND1 is connected to the OR gate OR1 ( The output signal of OR2) is ANDed to apply a clock pulse to the clock terminal of the instruction pointer counter section 2 and the clock terminal of the instruction latch section 7. Accordingly, the instruction pointer counter unit 2 counter-clocks up the clock pulse output from the AND gate AND1, and then designates an address with the user program memory unit 3 to input the next instruction to be executed into the instruction latch unit 7. In addition, the instruction latch unit 7 latches the instruction of the user program memory unit 3 in synchronization with the clock pulse of the AND gate AND1 and inputs it to the hardware instruction execution unit 5. If an instruction that cannot be executed by hardware is input from the instruction latch section 7 while executing a series of hardware instructions in this manner, the hardware instruction execution section 5 sets the hardware run signal HRS to " ψ " The output clock pulse of the gate AND1 is stopped and the software run signal SRS is applied to the CPU 1. At this time, the central processing unit 1 sets the read signal RD and the enable signal EN as a low signal without manipulating the user program memory unit 3 and the instruction pointer counter unit 2 to perform the OR gate OR2. Through the buffer unit 4 is enabled. Accordingly, the buffer unit 4 buffers the user's command output from the instruction latch unit 7, and the central processing unit 1 reads the user's command buffered from the buffer unit 4 and reads the signal. (RD) is made high and applied to one input terminal of the AND gate AND1 through the OR gate OR2. Therefore, the AND gate AND1 ANDs the high signal output from the OR gate PR1 and the read signal RD through the OR gate OR2 to the instruction latch unit 7 and the instruction pointer counter unit 2. After inputting the clock pulse, the instruction pointer counter unit 2 counts up the clock pulse output from the AND gate AND1, and then designates the address of the user program memory unit 3 to execute the next instruction to be executed. (7) is latched.

이와같이 소프트웨어 명령어에 대한 처리가 끝나면 중앙처리장치(1)는 하드웨어 인에이블신호(HEN)를 하드웨어 명령어 수행부(5)에 인가하여 다음 명령어의 수행을 하드웨어적으로 처리하게 된다.As such, when the processing of the software command is completed, the CPU 1 applies the hardware enable signal HEN to the hardware command execution unit 5 to process the execution of the next command in hardware.

이상에서 상세히 설명한 바와같이 본 발명은 소프트웨어 명령실행시 실행할 명령어를 중앙처리장치가 읽어들이는데 있어서 명령어 래치부 및 오아게이트를 추가하여 명령어의 포인터 및 사용자 프로그램 메모리부의 어드레스 조작에 따른 시간지연을 해소하고 소프트 명령어를 고속으로 처리할 수 있는 효과가 있다.As described in detail above, the present invention eliminates time delay caused by address manipulation of a pointer and a user program memory unit by adding an instruction latch unit and an oragate when the central processing unit reads an instruction to be executed when executing a software instruction. It is effective to process soft instructions at high speed.

Claims (1)

중앙처리장치(1)의 인에이블신호에 의해 하드웨어 명령어 수행부(5)가 명령어 포인터 카운터부(2)의 카운트수를 증가시켜 사용자 프로그램 메모리부(3)의 명령어를 수행 처리하는 프로그램 로직 제어기에 있어서, 상기 사용자 프로그램 메모리부(3)로부터 출력되는 사용자의 명령어를 래치하여 하드웨어 명령어 수행부(5)에 입력하는 명령어 래치부(7)와, 상기 하드웨어 명령어 수행부(5)로부터 출력된 하드웨어런신호(HRS) 및 클럭발생부(6)의 클럭신호를 오아링하는 오아게이트(OR1)와, 상기 중앙처리장치(1)로부터 출력된 인에이블신호(EN) 및 리드신호(RD)를 오아링하는 오아게이트(OR2)와, 상기 오아게이트(OR2)의 출력신호에 따라 인에이블되어 명령어 래치부(7)의 명령어를 버퍼링하여 중앙처리장치(1)에 입력되는 버퍼부(4)와, 오아게이트(OR1)(OR2)의 출력신호를 앤드화하여 명령어 포인터 카운터부(2) 및 명령어 래치부(7)에 클럭펄스를 제공하는 앤드게이트(AND1)로 구성함을 특징으로 한 프로그램 로직 제어기의 명령어 처리시스템.In response to the enable signal of the central processing unit 1, the hardware instruction execution unit 5 increases the count of the instruction pointer counter unit 2 to the program logic controller for processing the instruction of the user program memory unit 3. In addition, the instruction latch unit 7 for latching a user's command output from the user program memory unit 3 and inputting it to the hardware command execution unit 5, and the hardware run output from the hardware command execution unit 5 Oaring OR1 for ringing the signal HRS and the clock signal of the clock generator 6, and ringing the enable signal EN and the read signal RD outputted from the central processing unit 1; A buffer unit 4 which is enabled according to the OR gate OR2 and the output signal of the OR gate OR2 and buffers the instruction of the instruction latch unit 7 and inputs the CPU 1 to the CPU 1; Output signal of the gate OR1 or OR2 And-granulation to instruction pointer counter unit 2 and the command latch section 7, the clock AND gate a program instruction processing system of the logic controller characterized in that it consists of (AND1) for providing a pulse to.
KR1019910009861A 1991-06-14 1991-06-14 Command word process system of program logic controller KR940000220B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019910009861A KR940000220B1 (en) 1991-06-14 1991-06-14 Command word process system of program logic controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019910009861A KR940000220B1 (en) 1991-06-14 1991-06-14 Command word process system of program logic controller

Publications (1)

Publication Number Publication Date
KR940000220B1 true KR940000220B1 (en) 1994-01-12

Family

ID=19315806

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019910009861A KR940000220B1 (en) 1991-06-14 1991-06-14 Command word process system of program logic controller

Country Status (1)

Country Link
KR (1) KR940000220B1 (en)

Similar Documents

Publication Publication Date Title
EP0238090B1 (en) Microcomputer capable of accessing internal memory at a desired variable access time
KR940000220B1 (en) Command word process system of program logic controller
JP2752076B2 (en) Programmable controller
JP3055139B2 (en) Micro program control method
JP3871461B2 (en) Microcontroller for sequence control
JP2758624B2 (en) Speed control method of micro program
KR930005707B1 (en) Command processing method of plc
JP2504974B2 (en) Sequencer high-speed processing method
JP2979653B2 (en) Information processing device
JPS60108973A (en) Method for finding the minimum value of array elements and element number of the minimum element
KR100246628B1 (en) Clock less counter
JP3074790B2 (en) Microprocessor
JPS6336405A (en) Programmable controller
JPH01281532A (en) Microprogram controller
JP3045731B2 (en) Sequence control method
JP2532072Y2 (en) Pattern generator
KR100257502B1 (en) Shifter operated without cluck
JPH01284926A (en) Instruction reading system for arithmetic unit
JPS6398735A (en) Microcontroller
JPH0535469A (en) Programmable controller
JPH06161946A (en) Dma address control method
JPH06149564A (en) Instruction controller
JPH0218731B2 (en)
JPH0290247A (en) Address forming circuit for lisp processor
JPS62296232A (en) High speed loop circuit

Legal Events

Date Code Title Description
A201 Request for examination
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20031229

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee