KR0170281B1 - 피엘시 - Google Patents

피엘시 Download PDF

Info

Publication number
KR0170281B1
KR0170281B1 KR1019950050656A KR19950050656A KR0170281B1 KR 0170281 B1 KR0170281 B1 KR 0170281B1 KR 1019950050656 A KR1019950050656 A KR 1019950050656A KR 19950050656 A KR19950050656 A KR 19950050656A KR 0170281 B1 KR0170281 B1 KR 0170281B1
Authority
KR
South Korea
Prior art keywords
cpu
unit
user program
interface unit
logic
Prior art date
Application number
KR1019950050656A
Other languages
English (en)
Other versions
KR970049174A (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 KR1019950050656A priority Critical patent/KR0170281B1/ko
Publication of KR970049174A publication Critical patent/KR970049174A/ko
Application granted granted Critical
Publication of KR0170281B1 publication Critical patent/KR0170281B1/ko

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/15Plc structure of the system
    • G05B2219/15099Bus arbitration
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/15Plc structure of the system
    • G05B2219/15129Separating address and databus

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Programmable Controllers (AREA)

Abstract

본 발명에 따른 피엘시는, CPU부, 사용자 프로그램 메모리, 및 명령 처리기를 갖춘 CPU모듈과, CPU모듈의 제어 신호에 따라 제어용 논리 회로를 구현하는 입출력 모듈로 된 피엘시(PLC)이다. 여기서, 명령처리기는 CPU 인터페이스부, 프로그램 포인터부, 프로그램 인터페이스부, 논리 처리부 및 CPU 중재부를 구비한다. CPU 인터페이스부는 CPU부로부터의 어드레스 및 데이터 버스를 중계한다. 프로그램 포인터부는 자체적으로 사용자 프로그램 메모리의 데이터를 판독할 수 있도록 순차적 어드레스를 보관한다. 프로그램 인터페이스부는 CPU 인터페이스부로부터의 어드레스 및 데이터 버스와, 상기 사용자 프로그램 메모리로부터의 어드레스 및 데이터 버스를 중계한다. 논리 처리부는, 전체적 동작 상황을 제어하고, 프로그램 인터페이스부로부터의 데이터를 처리하여 그 결과를 CPU 인터페이스부에 전송한다. CPU 중재부는 논리 처리부의 제어 신호에 따라 CPU부에 소정의 대기 신호 또는 인터럽트 신호를 전송한다.

Description

피엘시
제1도는 일반적인 피엘시(PLC)의 CPU 모듈을 나타낸 개략적 블록도이다.
제2도는 본 발명의 일 실시예에 따라 제1도의 명령처리기(HLS)를 나타낸 개략적 블록도이다.
* 도면의 주요부분에 대한 부호의 설명
1 : CPU부 2 : ROM
3 : 입출력 통신 포트 4 : 사용자 프로그램 메모리
5 : 명령처리기 6 : RAM
5a : CPU 인터페이스 5b : 프로그램 인터페이스
5c : 프로그램 포인터 5d : 논리 처리부
5e : CPU 중재기 da : 상황 제어부
db : 산술 논리부
본 발명은 피엘시(PLC : Programmable Logic Controller)에 관한 것으로서, 특히 명령처리기(HLS : Hardware Logic Solver)가 마련된 피엘시(PLC)에 관한 것이다.
피엘시(PLC)는 공장 자동화에 필요한 필수적 장치로서, 주로 공정제어에 이용된다. 예를 들어, 사용자가 작성한 공정 제어 프로그램에 따라 전동기나 공압 밸브와 같은 제어 대상을 제어하는 장치이다.
일반적인 피엘시는, 사용자 프로그램에 의거하여 전체적 제어를 수행하는 CPU 모듈(Central Processing Unit module)과, CPU 모듈의 제어 신호에 따라 제어용 논리 회로를 구현하는 입출력 모듈이 마련되어 있다. 이러한 피엘시(PLC)의 기본적인 수행 과정은 입력-수행-출력의 세단계로 나눌 수 있고, 상기 세 단계를 1회 수행하는 시간을 스캔 타임(Scan time)이라 한다. 결국 스캔 타임은 피엘시의 처리 속도를 좌우하게 되는데, 대부분의 피엘시는 스캔 타임을 줄이기 위하여 CPU모듈에 전용의 명령 처리기(HLS)를 구비하고 있다.
제1도는 일반적인 피엘시(PLC)의 CPU 모듈을 나타낸 개략적 블록도이다 제1도에 도시된 바와 같이, 일반적인 피엘시의 CPU모듈은, 전체적 제어를 수행하는 CPU부(1), 시스템 프로그램이 저장된 ROM(Read Only llemory, 2), 입출력 모듈과의 통신 포트인 입출력 통신 포트(3), 사용자 프로그램과 입출력 데이터가 저장된 사용자 프로그램 메모리(user PROGram memory, 4), 및 상기 CPU부(1)와 사용자 프로그램 메모리(4)사이에서 사용자 프로그램을 수행하는 명령 처리기(HLS, 5)를 구비하고 있다. CPU부(1)로는 RAM(Random Access Memory, 6)및 입출력 인터페이스 등이 포함된 마이크로컨트롤러(Microcontroller)가 주로 적용된다. CPU부(1)의 메모리 맵(Memory map)에는 RAM(6), ROM(2), 입출력 통신 포트(3), 및 사용자 프로그램 메모리(4)에 대한 영역이 각각 할당되어 있다. 한편 명령 처리기(HLS, 5)의 메모리 맵에는 사용자 프로그램 메모리(4)에 대한 영역만 할당되어 있다 제1도에 도시된 바와 같이 CPU부(1)는 RAM(6), ROM(2), 및 입출력 통신 포트(3)의 데이터를 명령 처리기(HLS, 5)와 무관하게 엑세스(Access)할 수 있지만, 사용자 프로그램 메모리(4)의 데이터는 명령 처리기(HLS, 5)를 통하여 엑세스하게 되어 있다.
제1도와 같은 CPU 모듈을 갖춘 피엘시에 있어서, 종래에는 명령 처리기(5)가 CPU부(1)의 사이클에 의거하거나 동기하여 동작하게 되어 있다. 이에 따라 다음과 같은 문제점들이 대두된다. 첫째, 명령처리기(5)가 사용자 프로그램을 수행하는 도중에는 CPU부(1)가 대기해야 하므로 전체적인 처리속도가 떨어진다. 둘째, 명령 처리기(5)의 속도가 CPU부(1)의 속도에 제한되므로, 명령 처리기(5)의 속도 향상에 장애가 된다.
본 발명은 상기와 같은 문제점들을 개선하기 위하여 창안된 것으로서, 명령 처리기가 CPU와 비동기적으로 동작함으로써, 명령 처리기가 사용자 프로그램을 수행할 때에 CPU도 동작 코드를 수행할 수 있는 피엘시(PLC)를 제공하는 것에 그 목적이 있다.
상기 목적을 달성하기 위한 본 발명의 피엘시(PLC)는, CPU부, 사용자 프로그램 메모리, 및 상기 CPU부와 상기 사용자 프로그램 메모리 사이에서 데이터 및 어드레스를 중계하는 명령 처리기(Hardware Logic Solver)를 갖추고 사용자 프로그램에 의거하여 전체적 제어를 수행하는 CPU 모듈과, 상기 CPU 모듈의 제어 신호에 따라 제어용 논리 회로를 구현하는 입출력 모듈로 된 피엘시(PLC)이다 여기서, 상기 명령처리기는 CPU 인터페이스부, 프로그램 포인터부, 프로그램 인터페이스부, 논리처리부 및 CPU 중재부를 구비한다. 상기 CPU 인터페이스부는 상기 CPU부로부터의 어드레스 및 데이터 버스를 중계한다. 상기 프로그램 포인터부는 자체적으로 상기 사용자 프로그램 메모리의 데이터를 판독할 수 있도록 순차적 어드레스를 보관한다. 상기 프로그램 인터페이스부는, 상기 CPU 인터페이스부로부터의 어드레스 및 데이터 버스와, 상기 사용자 프로그램 메모리로부터의 어드레스 및 데이터 버스를 중계한다. 상기 논리 처리부는, 전체적 동작 상황을 제어하고, 상기 프로그램 인터페이스부로부터의 데이터를 처리하여 그 결과를 상기 CPU 인터페이스부에 전송한다. 상기 CPU중재부는 상기 논리 처리부의 제어신호에 따라 상기 CPU부에 소정의 대기 신호 또는 인터럽트 신호를 전송한다.
이하, 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다.
제2도는 본 발명의 일 실시예에 따라 제1도의 명형 처리기(HLS)를 나타낸 개략적 블록도이다. 각 부의 기능을 살펴 보면 다음과 같다. CPU 인터페이스(5a)는 CPU부(제1도의 1)로부터의 어드레스 및 데이터 버스를 중계한다. 프로그램 인터페이스(5b)는 CPV 인터페이스(5a)로부터의 어드레스 및 데이터 버스와, 사용자 프로그램 메모리(제1도의 4)로부터의 어드레스 및 데이터 버스를 중계한다. 프로그램 포인터(5c)는 자체적으로 상기 사용자 프로그램 메모리(제1도의 4)의 데이터를 판독할 수 있도록 순차적 어드레스를 보관한다. 논리 처리부(56)에는 상황 제어부(da)및 산술 논리부(ALU : Arithmetic Logic Unit, db)가 마련되어, 상황 제어부(da)에 의하여 전체적 동작 상황을 제어하고, 산술 논리부(db)에 의하여 프로그램 인터페이스부(5b)로부터의 데이터를 처리하여 그 결과를 상기 CPU 인터페이스부(5a)에 전송한다. 그리고 CPU 중재기(CPU Arbiter, 5e)는 논리 처리부(56)의 제어 신호에 따라 CPU부(제1도의 1)에 대기 신호(Wait signal)또는 인터럽트 신호를 전송한다.
제2도를 중심으로 논리 처리부(56)내의 상황 제어부(da)에 적용되는 알고리즘(algorithm)을 살펴 보기로 한다. 첫째, 산술 논리부(db)가 동작하지 않는 동안에는 CPU부(제1도의 1)가 사용자 프로그램 메모리(제1도의 4)의 데이터를 직접 엑세스할 수 있도록 각 인터페이스(5a, 5b)를 제어한다. 둘째, 산술 논리부(db)가 동작하는 도중에 CPU부(제1도의 1)로부터 기록(Write)또는 판독(Read)신호가 CPU 인터페이스(5a)에 입력되면, CPU 중재기(5e)를 통하여 CPU부(제1도의 1)에 대기 신호를 전송하게 한다 다음에 산술 논리부(db)가 현재 명령의 수행을 종료하면, CPU부(제1도의 1)가 사용자 프로그램 메모리(제1도의 4)의 데이터를 직접 엑세스 할 수 있도록 각 인터페이스(5a, 5b)를 제어한다 그리고 CPU부(제1도의 1)의 데이터 엑세스가 종료되면, 다음 명령의 데이터를 사용자 프로그램 메모리(제1도의 4)로부터 판독하여 처리하게 한다. 셋째, 산술 논리부(db)가 자체적으로 처리할 수 없는 사용자 프로그램의 명령이 발생된 경우, CPU 중재기(5e)를 통하여 CPU부(제1도의 1)에 인터럽트 신호(Interrupt signal)를 전송하게 하여, CPU부(제1도의 1)에 의하여 처리 하도록 한다.
이와 같이 제어함에 따라 명령 처리기(5)가 사용자 프로그램을 수행하는 동안에도 CPU부(제1도의 1)가 다른 동작 코드를 수행할 수 있게 되어, 전체적인 피엘시(PLC)의 처리속도를 높일 수 있다. 아울러 명령처리기(5)가 CPU부(제1도의 1)와 비등기적으로 동작하므로, CPU부(제1도의 1)의 속도 및 기종에 관계없이 사용자 프로그램을 수행할 수 있게 되어, 명령 처리기(5)의 호환성(Compatibility)이 극대화된다. 예를 들어, 명령 처리기(5)의 클럭(Clock)속도에 의하여 사용자 프로그램의 수행 속도를 높일 수 있다. 이를 확인하기 위하여 실제 회로 및 알고리즘을 적용하여 액세스 타임을 비교하였다. 여기서 사용자 프로그램 메모리(제1도의 4)로서 100 ns(nano-second)의 응답 속도를 갖는 SRAM(Static Random Access Memory), 12 MHz의 클럭 주파수를 갖는 CPU부(제1도의 1), 및 16 MHz의 클럭 주파수를 갖는 명령 처리기(5)를 적용하였다 실험 결과, CPU부(제1도의 1)는 333 ns, 그리고 명령처리기(5)는 125 ns의 액세스 타임을 갖고, 정상적인 동작이 수행됨을 확인할 수 있었다.
이상 설명된 바와 같이 본 발명에 따른 피엘시(PLC)에 의하면, 명령 처리기가 CPU와 비동기적으로 동작함으로써, 명형 처리기가 사용자 프로그램을 수행할 때에 CPU도 동작 코드를 수행할 수 있을 뿐만 아니라, CPU의 속도 및 기종에 관계없이 명령 처리기의 호완성(Compatibility)을 극대화시킬 수 있다.
본 발명은, 상기 실시예에 한정되지 않고, 당업자의 수준에서 그 변형 및 개량이 가능하다.

Claims (3)

  1. CPU부, 사용자 프로그램 메모리, 및 상기 CPU부와 상기 사용자 프로그램 메모리 사이에서 데이터 및 어드레스를 중계하는 명령 처리기(Hardware Logic Solver)를 갖추고 사용자 프로그램에 의거하여 전체적 제어를 수행하는 CPU 모듈과, 상기 CPU 모듈의 제어 신호에 따라 제어용 논리 회로를 구현하는 입출력 모로 된 피엘시(PLC) 있어서, 상기 명령처리기는, 상기 CPU부로부터의 어드레스 및 데이터 버스를 중계하는 CPU 인 터페이스부; 자체적으로 상기 사용자 프로그램 메모리의 데이터를 판독할 수 있도록 순차적 어드레스를 보관하는 프로그램 포인터부; 상기 CPU 인터페이스부로부터의 어드레스 및 데이터 버스와, 상기 사용자 프로그램 메모리로부터의 어드레스 및 데이터 버스를 중계하는 프로그램 인터페이스부; 전체적 동작 상황을 제어하고, 상기 프로그램 인터페이스부로부터의 데이터를 처리하여 그 결과를 상기 CPU 인터페이스부에 전송하는 논리처리부, 및 상기 논리 처리부의 제어 신호에 따라 상기 CPU부에 소정의 대기 신호 또는 인터럽트 신호를 전송하는 CPU 중재부;를 구비한 것을 그 특징으로 하는 피엘시(PLC).
  2. 제1항에 있어서, 상기 논리 처리부는, 전체적 동작 상황을 제어하는 상황 제어부: 그리고 상기 프로그램 인터페이스부로부터의 데이터를 처리하여 그 결과를 상기 CPU 인터페이스부에 전송하는 산술 논리부를 구비한 것을 그 특징으로 하는 피엘시(PLC).
  3. 제2항에 있어서, 상기 상황 제어부는, 상기 산술 논리부가 동작하지 않는 동안에는 상기 CPU부가 상기 사용자 프로그램 메모리의 데이터를 기록 또는 판독할 수 있도록, 상기 CPU 인터페이스부 및 프로그램 인터페이스부를 제어하고, 상기 산술 논리부가 동작하는 도중에 상기 CPU부로부터 기록 또는 판독 신호가 상기 CPU 인터페이스부에 입력되면, 상기 CPU 중재부를 제어하여 상기 CPU부에 대기 신호를 전송하며, 상기 산술 논리부가 자체적으로 처리할 수 없는 사용자 프로그램의 명령이 발생된 경우, 상기 CPU부에 소정의 인터럽트 신호를 전송하도록 상기 CPU 중재부를 제어하여, 상기 산술 논리부가 자체적으로 처리할 수 없는 사용자 프로그램의 명령이 상기 CPU부에 의하여 처리되게 하는 것을 그 특징으로 하는 피엘시(PLC).
KR1019950050656A 1995-12-15 1995-12-15 피엘시 KR0170281B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019950050656A KR0170281B1 (ko) 1995-12-15 1995-12-15 피엘시

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950050656A KR0170281B1 (ko) 1995-12-15 1995-12-15 피엘시

Publications (2)

Publication Number Publication Date
KR970049174A KR970049174A (ko) 1997-07-29
KR0170281B1 true KR0170281B1 (ko) 1999-03-30

Family

ID=19440567

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950050656A KR0170281B1 (ko) 1995-12-15 1995-12-15 피엘시

Country Status (1)

Country Link
KR (1) KR0170281B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100870709B1 (ko) * 2007-02-26 2008-11-27 엘에스산전 주식회사 프로그래머블 로직 컨트롤러 시스템 및 이를 이용한 ac구동부 제어 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100870709B1 (ko) * 2007-02-26 2008-11-27 엘에스산전 주식회사 프로그래머블 로직 컨트롤러 시스템 및 이를 이용한 ac구동부 제어 방법

Also Published As

Publication number Publication date
KR970049174A (ko) 1997-07-29

Similar Documents

Publication Publication Date Title
US4648068A (en) Memory-programmable controller
JPH02235156A (ja) 情報処理装置
KR950704730A (ko) 고속 프로그램가능 로직 컨트롤러(plc)(high speed programmable logic controller)
EP0267613B1 (en) Micro processor capable of being connected with coprocessor
US4627025A (en) Memory programmable controller with word and bit processors
US5068821A (en) Bit processor with powers flow register switches control a function block processor for execution of the current command
KR0170281B1 (ko) 피엘시
KR880000253B1 (ko) 데이터 처리시스템의 데이터 교환방식
EP0299075A1 (en) Processing unit having at least one coprocessor
JPH0612107A (ja) シーケンス演算プロセッサおよびシーケンス演算処理装置
JPH06314110A (ja) 数値制御機能を実行するコンピュータシステム部分と他のコンピュータシステムとの結合方式
KR0160723B1 (ko) 수치제어장치와 피.엘.씨 사이의 인터페이스 시스템
KR970002412B1 (ko) 디엠에이(dma)가 가능한 통신코프러세서 보드
KR100191491B1 (ko) 수치제어기의 신호전송장치
KR19980067078A (ko) 피엘시
KR920003747B1 (ko) Plc형 입출력 접점을 갖는 nc 제어방법
KR930005707B1 (ko) Plc의 명령어 처리방법
KR940011045B1 (ko) 마이크로 컨트롤 유닛의 인터럽트 백터 어드레싱 방법
KR100275210B1 (ko) 시스템 콘솔의 특수키 제어방법
JPH03225551A (ja) 入出力装置アクセス制御方式
JPH09152904A (ja) プログラマブルコントローラ
JPH03147046A (ja) データ処理装置
JPS61120396A (ja) マイクロ・プロセッサ
KR20010011683A (ko) 중앙연산처리장치
JPH04120638A (ja) キャッシュメモリ制御方式

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20091013

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee