NO167110B - Lagerprogrammerbar styring. - Google Patents

Lagerprogrammerbar styring. Download PDF

Info

Publication number
NO167110B
NO167110B NO834724A NO834724A NO167110B NO 167110 B NO167110 B NO 167110B NO 834724 A NO834724 A NO 834724A NO 834724 A NO834724 A NO 834724A NO 167110 B NO167110 B NO 167110B
Authority
NO
Norway
Prior art keywords
word
processor
store
bit
command
Prior art date
Application number
NO834724A
Other languages
English (en)
Other versions
NO834724L (no
Inventor
Dieter Wollscheid
Peter Ninnemann
Original Assignee
Siemens Ag
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 Siemens Ag filed Critical Siemens Ag
Publication of NO834724L publication Critical patent/NO834724L/no
Publication of NO167110B publication Critical patent/NO167110B/no

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
    • G05B19/052Linking several PLC's

Landscapes

  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Circuits Of Receivers In General (AREA)
  • Programmable Controllers (AREA)
  • Debugging And Monitoring (AREA)
  • Executing Machine-Instructions (AREA)
  • Advance Control (AREA)
  • Input Circuits Of Receivers And Coupling Of Receivers And Audio Equipment (AREA)
  • Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
  • Steering Control In Accordance With Driving Conditions (AREA)
  • Vehicle Body Suspensions (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Electrotherapy Devices (AREA)
  • Multi Processors (AREA)
  • Devices For Executing Special Programs (AREA)

Description

Oppfinnelsen angår en lagerprogrammerbar styring med syklisk gjennomløpende brukerprogram og bestående av minst: a) en ordprosessor til å behandle operativsystem- og ordkommandoer, b) en bitprosessor til å behandle binære sammenknytnings-kommandoer og c) brukerprogramlager, operativsystemlager og datalager med binær prosessgjengivelse.
Nærmere beskrivelser av lagerprogrammerbare styringer finnes f.eks. i Siemens-tidsskrift "Energietechnik" 1979, hefte 2, side 43-47 eller i hefte 4, side 136-139 eller i europeisk patentskrift 10170 og US patentskrift 3 921 146 eller 3 942 158. <: >En bekvem lagerprogrammerbar styring av den innlednings-vis angitte art skal både kunne gjennomføre logisk sammenknytning av data.av en bits bredde og også kunne utføre komplekse funksjoner med data av et ords bredde som f.eks. aritmetikk-funksjoner, datatransfer, tidsdannelse osv.
Det er derfor gunstig innen rammen av en lagerprogrammerbar styring å anvende et flerprosessorsystem hvor utførelsen av binærkommandoene blir overført til en særskilt rask bitprosessor, mens en relativt langsom ordprosessor derimot kan utføre de komplekse funksjoner (jfr. f.eks. Siemens-tids-skrif tet "Energietechnik" 1980, hefte 9, side 361).
Da databehandlingen i ordbredde og bitbredde foregår blandet og tildels innbyrdes avhengig, behøves en spesiell metode til sammenkobling og synkronisering av prosessorene.
I den forbindelse må der dessuten tas hensyn til at ordprosessoren i tillegg må gjennomføre spesielle rutiner både i bestemte avstander og også asynkront i forhold til den egentlige programavvikling (bit- og ordoperasjoner).
Ved bitoperasjoner kan operand og parameter representeres direkte i det egentlige kommandoord og behandles av bitprosessoren. Ved ordoperasjoner etterfølges det egentlige kommandoord som inneholder informasjonen om ordkommandoens art,
et variabelt antall parametre eller operander. Disse må være fullstendig tilgjengelige for ordprosessoren straks en ordkommando konstateres.
Den foreliggende oppfinnelses oppgave består i ved opp-treden av en ordkommando i brukerprogramlageret straks å stille kommandoart, parametre og operander til rådighet for ordprosessoren. Denne oppgave blir ifølge oppfinnelsen oppnådd ved hjelp av følgende trekk: d) bltprosessoren, som leser brukerprogramlageret sekvensielt, formidler; når en ordkommando konstateres, den til
ordkommandoen tilsvarende informasjon til ordprosessoren
og blir stående under utførelsen av ordkommandoen,
e) ordprosessoren utleser ved aksessering av interne registre i bltprosessoren de data som tilhører dens ordkommando, under bitprosessorens kommandoadresse fra brukerprogramlageret via en datapense, og f) bitprosessorens kommandoadresse blir inkrementert etter hver lesetilgang for ordprosessoren til brukerprogramlageret.
Takket være at. brukerprogramlageret adresseres fra bit-prosessorsiden, men; der på den annen side strømmer data til ordprosessoren, er det mulig å realisere en mest mulig rask forsyning av ordprosessoren med parametre, samtidig som enhver adresseberegning fra ordprosessorens side faller bort.
Oppfinnelsen vil bli nærmere belyst under henvisning
til tegningen.
Fig. 1 viser den prinsipielle oppbygning av flerproses-sorsystemet. Fig. 2 viser f.unksjonsforløpet ved overlevering av parametre i ord- og bitprosessor, og
fig. 3 viser den styringsmessige sammenknytning.
Ved det foreliggende flerprosessorsystem blir utførelsen av binærkommandoene overlatt en særskilt rask bitprosessor 3, mens en relativt langsom ordprosessor 2 utfører de komplekse funksjoner. Ordprosessoren 2 disponerer en periferibus 21 som inn- og utgangskomponentene 1 fra og til prosessen er tilkoblet, samt også en intern systembus 22 som operativsystem-lageret 4 og - via datapenser 8 - brukerprogramlager 5 og datalager 6 med prosessgjengivelse kan tilkobles. Bltprosessoren 3 er likeledes tilkoblet samme bus 22 og har via egne busser 31 og 32 og over datapenser 8 eksklusiv aksess til brukerprogramlager 5 og datalager 6 med prosessgjengivelse. Samtrafikken med periferien passerer alltid ordprosessoren 2, som ved syklusgrensene deponerer tilstanden av alle inngangsin-formasjoner fra prosessen i det interne datalager 6 og overfører de utgangssignaler i datalageret 6 som resulterer av sammenknytningene, til prosessperiferien ved slutten av syklusen. Under avviklingen av programmet blir der altså ikke arbeidet direkte med prosessperiferlens egentlige signaler, men med den interne prosessgjengivelse i datalageret 6 (jfr. f.eks. europeisk patentskrift 10 170). Instruksjonene om bit- eller ordoperasjoner er chiffrert i et spesielt programmeringsspråk og fastholdt i brukerprogramlageret 5. Disse instruksjoner blir gjennomført i bestemte rutiner direkte av bltprosessoren 3 og av ordprosessoren 2. Disse programdeler såvel som øvrige driftssystemrutiner er fastlagt i driftssystemlageret 4 for ordprosessoren 2 i det språk som gjelder for den anvendte ordprosessor.
Karakteristisk for det samlede system er at ordprosessoren 2 som standardmikroprosessor og bitprosessor 3 prinsipielt har egne respektive programtellere og i første omgang kan arbeide helt uavhengig og asynkront i forhold til hverandre.
Selve bitprosessoren 3 forholder seg for ordprosessoren
2 som et lager resp. som en intelligent periferikomponent.
Den har interne registre hvorfra ordprosessoren 2 til enhver tid kan hente den momentane status som f.eks. "Run" eller "Stop". Ved skriveengasjement av et av disse registre kan bitprosessoren 3 dessuten til enhver tid startes eller stoppes av ordprosessoren 2.
Programtelleren til gjennomførelse av brukerprogrammet inngår i bitprosessoren 3. Denne henter etter å være startet, instruksjoner fra programlageret 5 og sondrer dem etter ord-eller bitoperasjoner. Etter å ha konstatert en bitoperasjon utfører den selv denne straks. Konstateres en ordoperasjon, overgir den denne til ordprosessoren 2 og går automatisk til status "Stop".
Hver ordoperasjon blir tolket med en programdel av ordprosessoren 2. Ordprosessoren 2 får inngangsadressen A for den programdel D som er tilordnet en bestemt operasjon, ikke direkte via ordoperasjonens kode i brukerprogramlageret 5, men via en mellomkoblet styreenhet med lager 9 i bitprosesoren, en enhet som fortløpende avspørres av ordprosessoren. Ordoperasjonens kode danner adressen for en bestemt lagercelle hos lageret 9, under hvilken inngangsadressen for den tilsvarende programdel er notert som datum. På denne måte blir det oppnådd at inngangsadressene ved fastkommandokode for ordoperasjonen kan holdes variabelt i de tilordnede programdeler. Lageret 9 kan også falle bort dersom ordprosessoren 2 skaffer seg inngangsadressen fra de av bitprosessoren 3 forhåndsbestemte informasjoner pr. program.
Er bitprosessorens programteller ved hjelp av ordprosessoren forhåndsbelagt med en definert verdi, blir bitprosessoren startet. Bitprosessoren løper i gang og overtar sine oppgaver. Treffer bitprosessoren 3 på en ordoperasjon i brukerprogramlageret 5, så frembringer den ut fra operasjonens kode inngangsadressen til den tilsvarende programdel av ordprosessoren 3 og blir stående. Den venter så på parameterkrav eller fornyet start ved hjelp av ordprosessoren. Bitprosessorens programteller viser nå, da den er inkrementert etter hver leseaksess, til første parameter resp. operand for ordoperasjonen. Etter at ordprosessoren på grunnlag av innholdet av lageret hos bitprosessoren 3 har utpekt sin tilsvarende programdel, behøver den de tilsvarende parametre og operander.
For dette formål blir der for hver parameter eller operand foretatt en leseaksess' PAR (jfr. fig. 3) av to ytterligere interne registre hos bitprosessoren. Denne leseaksess PAR bringer datapensen 8 mellom brukerprogramlager 5 og bitprosessor 3 til å utføre en tilleggsfunksjon. I den forbindelse blir der riktignok tilkoblet brukerprogramlageret 5 adresseledninger fra bitprosessoren 3, dvs. den aktuelle programteller, men
data- og styreledninger fra ordprosessoren 2.
På denne måte innleser ordprosessoren 2 den aktuelle operand eller parameter DX for ordoperasjonen under de virtuelle adresser PAR til de to tilsvarende interne registre hos bitprosessoren 3 med den fysikalske adresse AX for den aktuelle programteller hos bitprosessoren 3. Ved hjelp av leseaksesseringen av ordprosessoren 2 til disse interne registre hos bitprosessoren blir programtelleren hos bitprosessoren 3 i tillegg igjen automatisk inkrementert (AX = AX + 1) og viser til neste bitoperasjon eller neste operand eller parameter for den aktuelle ordoperasjon.
På denne måte kan en ordoperasjon inneholde vilkårlig mange parametre resp. operander, og den tilhørende programdel av ordprosessoren må bare sørge for at programtelleren hos bitprosessoren 3, når denne startes på ny, igjen viser til neste bit- eller ordoperasjon. Dette skjer automatisk dersom siste operand eller parameter ble innlest og programtelleren hos bitprosessoren 3 igjen inkrementeres. Under hele prosessen befinner bitprosessoren seg i status "Hold". Ved slutten av programdelen for ordoperasjonen må den igjen startes av ordprosessoren.
Det ovennevnte forløp er også angitt i oversiktsskjemaet på fig. 2.
Takket være tilleggsfunksjonen for pensen 8 som tilhører bitprosessoren 3, nemlig adressering av brukerprogramlageret 5 fra den ene prosessorside, samtidig som datastrømmen imidler-tid kan gå til den annen prosessorside, samt den automatiske inkrementering av programtelleren i bitprosessoren etter aksessering av dennes spesielle interne registre, kan der oppnås en maksimalt rask forsyning av ordprosessoren med parametre under behandlingen av en ordkommando.
Enhver adresseberegning fra ordprosessoren side faller bort, og ennvidere er den aktuelle programtellerstand for bitprosessoren uten betydning for ordprosessoren. Ordprosessoren 2 behøver derfor ikke f.eks. å innhente parameteren indikert eller via de beregnede adresser, men får den via enkle leseaksesser med konstant adresse. Videre bortfaller korreksjon av programtelleren i bitprosessoren, da denne etter innlesning av alle parametrene automatisk igjen viser til neste bit- eller ordoperasjon i brukerprogramlageret 5.
Foruten i de korte reaksjonstider ligger hovedfordelene ved denne løsning i de små omkostninger, i den nekle mulighet for synkronisering mellom ord- og bitprosessor og i uavhengigheten av ordprosessorens type.

Claims (2)

1. Lagerprogrammerbar styring med. syklisk gjennomløpende program og bestående av minst a) en ordprosessor til å behandle operativsystem- og ordkommandoer, b) en bitprosessor til å behandle binære sammenknytnings-kommandoer og c) brukerprogramlager, operativsystemlager og datalager med binær prosessgjengivelse, karakterisert ved følgende trekk: d) bitprosessoren (3), som leser brukerprogramlageret (5) sekvensielt, formidler når en ordkommando konstateres, den til ordkommandoen tilsvarende informasjon til ordprosessoren (2) og blir stående under utførelsen av ordkommandoen, e) ordprosessoren (2) utleser ved aksessering av interne registre (10), i bitprosessoren (3) de data (DX) som tilhører dens ordkommando, under bitprosessorens (3) kommandoadresse (AX) fra brukerprogramlageret (5) via en datapense (8), og f) bitprosessorens (3) kommandoadresse (AX) blir inkrementert etter hver lesetilgang for ordprosessoren (2) til brukerprogramlageret.
2. Styring som angitt i krav 1, karakterisert ved at den mellom brukerprogramlager (5) og bitprosessor (3) anordnede datapense (8) ved parameterforsyning kobler bitprosessorens (3) adresseledninger og ordprosessorens (2) data- og styreledninger til brukerprogramlageret (5).
NO834724A 1983-01-28 1983-12-21 Lagerprogrammerbar styring. NO167110B (no)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19833302902 DE3302902A1 (de) 1983-01-28 1983-01-28 Speicherprogrammierbare steuerung

Publications (2)

Publication Number Publication Date
NO834724L NO834724L (no) 1984-07-30
NO167110B true NO167110B (no) 1991-06-24

Family

ID=6189481

Family Applications (1)

Application Number Title Priority Date Filing Date
NO834724A NO167110B (no) 1983-01-28 1983-12-21 Lagerprogrammerbar styring.

Country Status (6)

Country Link
EP (1) EP0121038B1 (no)
JP (1) JPS59142610A (no)
AT (1) ATE33725T1 (no)
DE (2) DE3302902A1 (no)
ES (1) ES529240A0 (no)
NO (1) NO167110B (no)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0174231B1 (en) * 1984-08-02 1990-11-14 Telemecanique Programmable controller ("pc") with co-processing architecture
US4870614A (en) * 1984-08-02 1989-09-26 Quatse Jesse T Programmable controller ("PC") with co-processing architecture
JPS61187006A (ja) * 1985-02-15 1986-08-20 Toshiba Corp プログラマブルコントロ−ラ
JPH01255901A (ja) * 1988-04-06 1989-10-12 Fanuc Ltd プログラマブル・コントローラ
US5068821A (en) * 1989-03-27 1991-11-26 Ge Fanuc Automation North America, Inc. Bit processor with powers flow register switches control a function block processor for execution of the current command

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5227337A (en) * 1975-08-27 1977-03-01 Hitachi Ltd Programable logic controller featuring numerical operation function
CA1103364A (en) * 1977-04-25 1981-06-16 Raymond A. Grudowski Programmable controller with integral microprocessor
JPS54114687A (en) * 1978-02-27 1979-09-06 Toyoda Mach Works Ltd Sequence controller
CA1119307A (en) * 1978-12-15 1982-03-02 Guenther K. Machol Microcomputer having separate bit and word accumulators and separate bit and word instruction sets
JPS573139A (en) * 1980-06-06 1982-01-08 Mitsubishi Electric Corp Operation processor
DE3101270C2 (de) * 1981-01-16 1985-07-25 Christian Dipl.-Ing. 8000 München Nitschke Rechneranordnung zur Wortverarbeitung mit einer Einrichtung zur Funktionserweiterung

Also Published As

Publication number Publication date
EP0121038A3 (en) 1985-07-10
EP0121038B1 (de) 1988-04-20
DE3470619D1 (en) 1988-05-26
JPS59142610A (ja) 1984-08-15
ATE33725T1 (de) 1988-05-15
DE3302902A1 (de) 1984-08-02
NO834724L (no) 1984-07-30
ES8500474A1 (es) 1984-10-01
EP0121038A2 (de) 1984-10-10
ES529240A0 (es) 1984-10-01

Similar Documents

Publication Publication Date Title
US4520441A (en) Data processing system
US4296466A (en) Data processing system including a separate input/output processor with micro-interrupt request apparatus
DK169492B1 (da) Databehandlingsapparat med selektiv forud indhentning af instruktioner og fremgangsmåde til drift afet sådant databehandlingsapparat
US4298927A (en) Computer instruction prefetch circuit
EP0230664A2 (en) Master slave microprocessor system with virtual memory
JPS63208963A (ja) デジタルデータ処理システム
JPS60501824A (ja) 複数個のアドレス変換バッファ記憶装置を共有する記憶装置処理システムのデマンド・ペ−ジング法
NO167111B (no) Lagerprogrammerbar styring.
US5119484A (en) Selections between alternate control word and current instruction generated control word for alu in respond to alu output and current instruction
NO167112B (no) Lagerprogrammerbar styring med ord- og bitprosessor.
NO834728L (no) Lagerprogrammerbar styring
KR100829788B1 (ko) 커맨드 디코딩 시스템, 플래시 메모리 커맨드 디코딩시스템 및 이를 이용한 방법
US5146569A (en) System for storing restart address of microprogram, determining the validity, and using valid restart address to resume execution upon removal of suspension
NO167110B (no) Lagerprogrammerbar styring.
US5274776A (en) Information processing system having mode signal holding means and selecting operand access mode based on mode signal indicating type of currently executed instruction
US10824128B2 (en) Device for processing programmable logic controller program
JPS6365983B2 (no)
KR970066863A (ko) 정보처리장치와 방법 및 스케줄링 디바이스
JP2619425B2 (ja) シーケンスコントローラ
JP2840926B2 (ja) マイクロコンピュータおよびマイクロコンピュータのデータ自動バックアップ装置
CA1305557C (en) Control signal generation circuit for arithmetic and logic unit for digital processor
JP2564290B2 (ja) 命令再開処理方法および装置
JPH05143391A (ja) 仮想記憶方式のコンピユータにおけるメモリトレース方法
JPS5810248A (ja) 状態履歴記憶方式
JP2618703B2 (ja) プログラマブルシーケンスコントローラの高速演算処理方式