KR0170281B1 - 피엘시 - Google Patents
피엘시 Download PDFInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/15—Plc structure of the system
- G05B2219/15099—Bus arbitration
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/15—Plc structure of the system
- G05B2219/15129—Separating 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)
- CPU부, 사용자 프로그램 메모리, 및 상기 CPU부와 상기 사용자 프로그램 메모리 사이에서 데이터 및 어드레스를 중계하는 명령 처리기(Hardware Logic Solver)를 갖추고 사용자 프로그램에 의거하여 전체적 제어를 수행하는 CPU 모듈과, 상기 CPU 모듈의 제어 신호에 따라 제어용 논리 회로를 구현하는 입출력 모로 된 피엘시(PLC) 있어서, 상기 명령처리기는, 상기 CPU부로부터의 어드레스 및 데이터 버스를 중계하는 CPU 인 터페이스부; 자체적으로 상기 사용자 프로그램 메모리의 데이터를 판독할 수 있도록 순차적 어드레스를 보관하는 프로그램 포인터부; 상기 CPU 인터페이스부로부터의 어드레스 및 데이터 버스와, 상기 사용자 프로그램 메모리로부터의 어드레스 및 데이터 버스를 중계하는 프로그램 인터페이스부; 전체적 동작 상황을 제어하고, 상기 프로그램 인터페이스부로부터의 데이터를 처리하여 그 결과를 상기 CPU 인터페이스부에 전송하는 논리처리부, 및 상기 논리 처리부의 제어 신호에 따라 상기 CPU부에 소정의 대기 신호 또는 인터럽트 신호를 전송하는 CPU 중재부;를 구비한 것을 그 특징으로 하는 피엘시(PLC).
- 제1항에 있어서, 상기 논리 처리부는, 전체적 동작 상황을 제어하는 상황 제어부: 그리고 상기 프로그램 인터페이스부로부터의 데이터를 처리하여 그 결과를 상기 CPU 인터페이스부에 전송하는 산술 논리부를 구비한 것을 그 특징으로 하는 피엘시(PLC).
- 제2항에 있어서, 상기 상황 제어부는, 상기 산술 논리부가 동작하지 않는 동안에는 상기 CPU부가 상기 사용자 프로그램 메모리의 데이터를 기록 또는 판독할 수 있도록, 상기 CPU 인터페이스부 및 프로그램 인터페이스부를 제어하고, 상기 산술 논리부가 동작하는 도중에 상기 CPU부로부터 기록 또는 판독 신호가 상기 CPU 인터페이스부에 입력되면, 상기 CPU 중재부를 제어하여 상기 CPU부에 대기 신호를 전송하며, 상기 산술 논리부가 자체적으로 처리할 수 없는 사용자 프로그램의 명령이 발생된 경우, 상기 CPU부에 소정의 인터럽트 신호를 전송하도록 상기 CPU 중재부를 제어하여, 상기 산술 논리부가 자체적으로 처리할 수 없는 사용자 프로그램의 명령이 상기 CPU부에 의하여 처리되게 하는 것을 그 특징으로 하는 피엘시(PLC).
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100870709B1 (ko) * | 2007-02-26 | 2008-11-27 | 엘에스산전 주식회사 | 프로그래머블 로직 컨트롤러 시스템 및 이를 이용한 ac구동부 제어 방법 |
-
1995
- 1995-12-15 KR KR1019950050656A patent/KR0170281B1/ko not_active IP Right Cessation
Cited By (1)
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 |