KR880000253B1 - 데이터 처리시스템의 데이터 교환방식 - Google Patents
데이터 처리시스템의 데이터 교환방식 Download PDFInfo
- Publication number
- KR880000253B1 KR880000253B1 KR8201914A KR820001914A KR880000253B1 KR 880000253 B1 KR880000253 B1 KR 880000253B1 KR 8201914 A KR8201914 A KR 8201914A KR 820001914 A KR820001914 A KR 820001914A KR 880000253 B1 KR880000253 B1 KR 880000253B1
- Authority
- KR
- South Korea
- Prior art keywords
- processor
- data
- subprocessor
- data exchange
- processors
- Prior art date
Links
Images
Classifications
-
- 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
-
- 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/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1689—Synchronisation and timing concerns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Multi Processors (AREA)
- Numerical Control (AREA)
- Control By Computers (AREA)
- Memory System (AREA)
Abstract
내용 없음.
Description
제1도는 종래예의 구성도.
제2도는 제1도의 종래예의 메모리액세스 설명도.
제3도는 본 발명의 일실시예 구성도.
제4도는 제3도의 실시예의 메모리액세스 설명도.
제5도는 제3도의 실시예의 각부 파형도.
제6도 및 제7도는 소프트웨어에 의한 인터럽트(interrupt) 분주에 의한 설명도.
본 발명은 복수의 프로세서가 공통 메모리를 통하여 데이터 교환을 행하는 데이터 처리시스템에 있어서, 복수의 프로세서 사이의 액세스 주기를 제어하여 데이터 교환의 속도를 향상시키도록 개량된 데이터 처리 시스템의 데이터 교환방식에 관한 것이다.
서로 독립적인 데이터처리를 행하는 복수의 프로세서 사이에서 데이터 교환을 행하기 위하여 공통메모리를 쓰는 방법이 채택되고 있다. 이는 공통메모리를 사용함으로써 서로의 데이터 처리에 영향을 주지 않고 데이터의 교환을 행할 수 있는 효과적인 방법이다.
한편 복수의 프로세서가 이 공통메모리를 동시에 액세스하지 않도록 하기 위한 구성이 제1도이다. 즉, 제1도의 종래의 구성도 및 제2도의 메모리액세스 설명도에 나타낸 바와같이 각각 자기의 메모리(4) 및 (5)에 접속된 한쌍의 프로세서(1) 및 (2)는 공통메모리(3)와 각각 접속되어 있으며, 각각의 프로세서(1) 및 (5)에 접속된 한쌍의 프로세서(1) 및 (2)는 주기 T의 타이머신호의 인터럽트에 의해 각각 공통메모리(3)를 액세스한다. 그리고 도면의 예에서는 프로세서(1)가 마스터프로세서(매인프로세서)로서, 프로세서(2)가 슬레이브 프로세서(서브프로세서)로서 작용하여 프로세서(2)가 리시이버/드라이버(6)를 통하여 외부의 입출력 기기와 데이터의 입출력을 행하도록 구성되어 있다. 이와같은 구성에 있어서 메모리액세스는 타이머 신호에 의한 인터럽트에 의해 행해지며, 한쌍의 프로세서(1) 및 (2)는 이 타이머 신호에 의하여 상호 공통메모리(3)를 액세스하여 액세스의 경합을 방지하고 있다. 즉, 제2도에 나타낸 바와같이, 프로세서(2)는 인터럽트 I1에 의하여 데이터처리 R1을 행한다. 프로세서(1)은 인터럽트I2에 의하여, 프로세서(2)가 1주기전에 계산하여 놓은 결과를 수취한다. 즉, 각각의 프로세서는 주기 T에 의하여 메모리액세스를 행하지만 데이터 교환에 있어 T와 거의 동일한 지연 Td를 일으킨다.
그런데 전술의 프로세서(1) 및 (2)가 메인과 서브의 관계에 있는 경우에는 서브 프로세서(2)의 데이터(예를들면 리시이버/드라이버(6)를 통하여 입력되는 비상 정지신호, 오버트러블 신호)를 신속하게 매인프로세서(1)에 전달하여 메인프로세서(1)에 적절한 처리를 실행시킬 필요가 있다. 그러므로 종래 기술에서는 액세스 주기 T를 짧게 함으로써 교환에 요하는 시간(지연시간) Td를 짧게하고 있다. 그러나 이 방법에서는 프로세서(1) 및 (2)에서 짧은 액세스 주기를 인터럽트가 걸리게 되어 그때마다 자기의 처리를 중단하고 공통메모리(3)를 액세스하지 않으면 안되므로 자기의 데이터처리의 효율이 저하하는 사태가 생겼다.
따라서 본 발명의 목적은 데이터처리의 효율을 저하시키지 않고, 데이터의 교환을 보다 신속하게 행할수 있는 데이터처리 시스템의 데이터 교환방식을 제공하는데 있다.
본 발명의 다른 목적은 메모리에의 액세스 주기를 변경하지 않아도 데이터 교환을 보다 신속하게 행할 수 있는 데이터처리 시스템의 데이터 교환방식을 제공하는데 있다.
이하 본 발명을 실시예에 따라서 상세히 설명한다.
제3도는 본 발명의 일실시예 블록도이고, 제4도는 제3도의 메모리 액세스 설명도, 제5도는 제3도의 각부파형도를 나타낸다.
이하의 설명에서는 프로세서(1)가 수치제어장치의 메인프로세서, 프로세서(2)가 프로그래머블 시이퀀스 콘트롤러(programmmable sequence controller)로서 동작하고, 프로세서(2)가 리시이버/드라이버(6)을 통하여, 공작기계, 로보트 등의 기계와 접속되는 수치제어시스템을 예로 설명하지만 이에 한하지 않는다.
도면중 참고 부호 1은 수치제어장치의 메인프로세서로서, 입력데이터에 의하여 수치제어 지령을 주는 것이다. 참고부호 2는 수치제어장치의 시이퀀스 릴레이 회로인 강전회로를 프로그램화한 시이퀀스 콘트롤러의 프로세서로서, 메인프로세서(1)과 (2)와의 데이터 교환을 위하여 사용한다. 참고부호 4 및 5는 각 프로세서(1) 및 (2)의 프로그램의 수용 및 데이터의 수용을 행하는 메모리이다.
참고부호 6은 리시이버/드라이버로서 도시하지 않은 기계에의 입력 및 출력을 행한다. 참고부호 7은 입력의 타이밍 제어회로로서 타이머 신호 T1으로부터 2종류의 인터럽트 신호 I1, I3를 작성한다.
다음에 동작을 설명한다. 입력데이터에 의하여, 프로세서(1)는 수치 제어처리를 메모리(4)에 기억되어 있는 제어프로그램의 제어하에서 실행하여, 그 결과를 공통메모리(3)에 서입(write)한다.
한편 프로세서(2)는 공통메모리(3)에 기억된 프로세서(1)로부터의 M 기능명령, T 기능명령 등을 판독하고, 자기의 메모리(5)에 기억되어 있는 시이퀀스 프로그램에 의하여 시이O스 처리를 실행하고, 처리결과를 리시이버/드라이버(6)에 출력하여 기계를 제어한다.
기계측으로 부터의 입력신호는 리시이버/드라이버(6)를 통하여 프로세서(2)에 전해지며, 그 프로세서(2)에 의하여 공통메모리에 서입된다. 한편 프로세서(1)는 공통메모리(3)의 기계측의 입력을 판독하고, 메모리(4)의 프로그램에 의해 소정의 처리를 실행한다. 이와같은 경우, 공통메모리(3)를 통하여, 프로세서(1)과 (2)가 지령데이터 등의 교환을 행하는 것이지만, 특히 기계측으로부터의 경보(alarm) 입력(예를들면, 오버트러블 신호, 비상 정지신호)은 신속하게 메인프로세서(1)에 전하여 적절한 처리를 할 필요가 있다.
그러므로, 이 실시예에서는 타이밍 제어회로(7)가 형성되어 각 프로세서(1) 및 (2)의 공통메모리(3)에 액세스 타이밍이 제어된다.
즉, 제4도에 나타낸 바와같이, 프로세서(2)에의 인터럽트 신호 I1와 프로세서(1)에의 인터럽트 신호 I3는 T' 시간분 늦춰져 있다. 그러므로 프로세서(2)로부터 프로세서(1)에의 전달시간은 T2로 되어, 종래에 비하여 전달시간이 크게 단축될 수 있다.
그러므로 타이밍 제어회로(7)는 2개의 플립플롭회로(7a), (7b)와 3입력 앤드 게이트회로(7c)로서 구성된다. 우선 타이머신호 T1이 입력되면 플립플롭회로(7a)에서 분주되어 출력 T2를 출력한다. 출력 T2는 또한 플립플롭회로(7b)에서 분주되고 프로세서(1)의 인터럽트 신호로서 사용되어 출력 I3를 출력한다.
한편, 3입력 앤드 게이트회로(7c)에는 타이머신호 T1과 인버어트된 출력 T2과 출력 I3가 입력되어 있으므로 출력 I1이 얻어진다. 이 출력 I1이 프로세서(2)의 인터럽트 신호로서 사용된다.
제5도에 나타낸 바와같이 인터럽트는 신호의 하강시에 통지되므로, 인터럽트 신호 I1, I3에 의한 각 프로세서(2) 및 (1)에의 인터럽트는 화살표의 시점이 된다. 그리고, 상술한 타이밍 제어회로(7)에는 상기 구성 이외에도 지연회로를 사용하는 방법이나 소프트웨어에 의한 인터럽트 분주에 의한 방법, 기타의 주지의 방법이 채용될 수 있다.
제6도, 제7도는 이와같은 인터럽트 분주에 의한 방법 설명도로서 제6도는 블록도, 제7도는 파형도이다. 그리고 도면중 제3도와 동일 부분에는 동일 부호를 붙이고, 그 상세한 설명은 생략한다. 도면중 참고부호 11은 플립플롭이고 참고부호 12는 앤드게이트이다.
그런데, 메인프로세서(1)는 서브프로세서가 없는 경우에 동기 T의 인터럽트에서 데이터 처리를 하고 있는 것으로 한다. 이 상태에서 단지 서브프로세서를 접속하고, 서브프로세서(2)의 인터럽트 주기를 nT로 하여, 메인-서브간에서 nT마다 데이터 교환을 행하도록 하면, Td=nT로 된다. 그러므로 플립플롭(11)을 설치하여 메인프로세서(1)에의 인터럽트에서 서브프로세서(2)에의 인터럽트 타이밍을 제어한다. 즉, 제7도의 처리 P1에서 플립플롭(11)의 데이터를 세트하는 처리를 포함시킨다. 그리고 그후의 타이밍에 의하여 서브프로세서(2)에의 인터럽트가 발생하며, R1의 처리가 행해져서 다음의 타이밍에서 메인프로세서(1)는 서브프로세서(2)로부터의 데이터 수취를 포함한 처리 P2를 행한다. 그 이외의 인터럽트에서는 메인프로세서와 서브프로세서와 무관한 처리 P3를 행한다.
이상과 같이 메인프로세서와 서브프로세서(2)를 제어하면 서로 데이터 교환용의 메모리(3)에 액세스하는 주기는 nT이지만 데이터 교환에 요하는 지연은 Td=T로 된다.
또, 공통메모리(3)는 각프로세서(1) 및 (2)가 갖는 메모리의 일부라도 좋고 또 프로세서(1) 및 (2)의 내부 레지스터 이어도 무방하다.
이상 설명한 바와같이, 본 발명에 의하면 복수의 프로세서의 공통메모리에 대한 액세스의 타이밍을 늦췄으므로 데이터의 교환에 요하는 속도를 향상시킬 수 있음과 동시에 각 프로세서의 액세스 주기를 짧게하지 않으므로 프로세서의 부담이 증가하는 일이 없으며, 특히 메인-서브프로세서의 구성에 있어서 유용하다.
그리고, 본 발명을 일 실시예에 의해 설명하였지만, 본 발명의 요지의 범위내에서 여러가지의 변형이 가능하며, 이들을 본 발명의 범위에서 배제하는 것은 아니다.
Claims (5)
- 복수의 프로세서가 공통으로 액세스 가능한 메모리내의 데이터를 참조함으로써 각 프로세서 사이에서 정보교환을 행하는 데이터처리 시스템의 데이터 교환방식에 있어서, 각각의 프로세서(1,2)가 전기 메모리(4,5)를 액세스하는 타이밍을 서로 늦추었음을 특징으로 하는 데이터처리 시스템의 데이터 교환방식.
- 제1항에 있어서, 전기 액세스를 인터럽트 신호(I1, I3)가 발생할 때마다 행함과 동시에 각 프로세서(1,2) 대응의 인터럽트 신호의 발생 타이밍을 늦추는 타이밍 제어회로(7)를 형성함을 특징으로 하는 데이터처리 시스템의 데이터 교환방식.
- 제1 또는 2항에 있어서, 전기복수의 프로세서(1,2)의 한쪽이 입출력 기기와 접속되는 서브프로세서(2)이고, 다른쪽은 그 서브프로세서를 제어하는 메인프로세서(1)임을 특징으로 하는 데이터처리 시스템의 데이터 교환방식.
- 제3항에 있어서, 전기서브프로세서(2)는 시이퀀스 처리를 행하고, 전기메인프로세서(1)는 전기시이퀀스 처리의 제어를 행함을 특징으로 하는 데이터처리 시스템의 데이터 교환방식.
- 제4항에 있어서, 전기 메인프로세서(1)가 수치제어장치를 구성하고, 전기 서브프로세서(2)가 전기수치제어장치로부터의 지령에 의하여 시이퀀스 처리를 행하며, 그 서브프로세서에 접속된 기계를 제어함을 특징으로 하는 데이터처리 시스템의 데이터 교환방식.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP065873/1981 | 1981-04-30 | ||
JP56-065873 | 1981-04-30 | ||
JP56065873A JPS57182257A (en) | 1981-04-30 | 1981-04-30 | Data interchange system of data processing system |
Publications (2)
Publication Number | Publication Date |
---|---|
KR830010423A KR830010423A (ko) | 1983-12-30 |
KR880000253B1 true KR880000253B1 (ko) | 1988-03-15 |
Family
ID=13299524
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR8201914A KR880000253B1 (ko) | 1981-04-30 | 1982-04-30 | 데이터 처리시스템의 데이터 교환방식 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP0077835A4 (ko) |
JP (1) | JPS57182257A (ko) |
KR (1) | KR880000253B1 (ko) |
WO (1) | WO1982003930A1 (ko) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6097462A (ja) * | 1983-11-01 | 1985-05-31 | Kinki Keisokki Kk | 時分割メモリ共有型マルチマイクロプロセツサシステム |
JPS60143718A (ja) * | 1983-12-30 | 1985-07-30 | Dainippon Screen Mfg Co Ltd | 工程看視方法 |
JPS60252982A (ja) * | 1984-05-30 | 1985-12-13 | Serbo Rand Kk | マルチcpuを持つコンピユ−タシステムにおけるメモリアクセス方法 |
JPS6140660A (ja) * | 1984-08-01 | 1986-02-26 | Furuno Electric Co Ltd | 共用メモリを有するマルチプロセツサシステム |
CA1240400A (en) * | 1984-12-20 | 1988-08-09 | Herbert R. Carleton | Topologically-distributed-memory multiprocessor computer |
US4855903A (en) * | 1984-12-20 | 1989-08-08 | State University Of New York | Topologically-distributed-memory multiprocessor computer |
JPS61275543A (ja) * | 1985-05-07 | 1986-12-05 | Honda Motor Co Ltd | 内燃エンジンの電子制御装置における信号転送方法 |
JPS62212806A (ja) * | 1986-03-14 | 1987-09-18 | Fanuc Ltd | ロボツトア−ムの制御装置 |
JPH0766285B2 (ja) * | 1986-03-14 | 1995-07-19 | フアナツク株式会社 | ロボツトア−ムの制御装置 |
JPH0268649A (ja) * | 1988-09-02 | 1990-03-08 | Fanuc Ltd | 割り込み制御方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5099055A (ko) * | 1973-12-27 | 1975-08-06 | ||
JPS5111534A (ko) * | 1974-07-19 | 1976-01-29 | Tokyo Shibaura Electric Co | |
JPS51110182A (ja) * | 1975-03-24 | 1976-09-29 | Mitsubishi Electric Corp | Fukugosuchiseigyosochi |
JPS6016664B2 (ja) * | 1977-10-28 | 1985-04-26 | 豊田工機株式会社 | デ−タ転送装置 |
US4164787A (en) * | 1977-11-09 | 1979-08-14 | Bell Telephone Laboratories, Incorporated | Multiple microprocessor intercommunication arrangement |
JPS5642804A (en) * | 1979-09-17 | 1981-04-21 | Shinko Electric Co Ltd | Sequence controller |
-
1981
- 1981-04-30 JP JP56065873A patent/JPS57182257A/ja active Pending
-
1982
- 1982-04-30 WO PCT/JP1982/000146 patent/WO1982003930A1/ja not_active Application Discontinuation
- 1982-04-30 KR KR8201914A patent/KR880000253B1/ko active
- 1982-04-30 EP EP19820901305 patent/EP0077835A4/en active Pending
Also Published As
Publication number | Publication date |
---|---|
JPS57182257A (en) | 1982-11-10 |
WO1982003930A1 (en) | 1982-11-11 |
EP0077835A4 (en) | 1985-09-26 |
KR830010423A (ko) | 1983-12-30 |
EP0077835A1 (en) | 1983-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4380798A (en) | Semaphore register including ownership bits | |
US4952367A (en) | Timer channel for use in a multiple channel timer system | |
KR880000253B1 (ko) | 데이터 처리시스템의 데이터 교환방식 | |
US4250547A (en) | Information processing apparatus capable of effecting parallel processings by using a divided common bus | |
US4627025A (en) | Memory programmable controller with word and bit processors | |
JPS6113629B2 (ko) | ||
CA1105148A (en) | Direct memory access expander unit for use with a microprocessor | |
SU1683039A1 (ru) | Устройство обработки данных дл многопроцессорной системы | |
JPS59114603A (ja) | シ−ケンスコントロ−ラの他コンピユ−タ装置との結合方式 | |
KR100225873B1 (ko) | 로봇제어기의 프로세서 사이의 동기통신방법 및 장치 | |
RU2058041C1 (ru) | Устройство для обмена данными двух процессоров через общую память | |
KR100268903B1 (ko) | 단일칩 마이크로 컨트롤러 유닛 | |
JPS6232483B2 (ko) | ||
KR950008393B1 (ko) | 멀티프로세스 시스템 아비터지연회로 | |
JPS59229662A (ja) | 共有メモリ制御回路 | |
JPS6226487B2 (ko) | ||
SU1596339A1 (ru) | Устройство дл сопр жени периферийного устройства с ЭВМ | |
JP2693598B2 (ja) | ディジタルシグナルプロセッサのプログラム実行制御装置 | |
KR960016406B1 (ko) | 중앙처리장치와 주변장치간의 버스이양장치 | |
JPH02219105A (ja) | プログラマブルコントローラ | |
KR20000032954A (ko) | 아비터 로직을 이용한 프로세서간 디피램 통신 회로 | |
SU1365089A1 (ru) | Устройство дл сопр жени двух ЭВМ с общим внешним устройством | |
JPH03214275A (ja) | 半導体集積回路 | |
JPH05128279A (ja) | ワンチツプマイクロコンピユータ | |
JPH07334210A (ja) | プログラマブルコントローラシステム |