NO167110B - Lagerprogrammerbar styring. - Google Patents
Lagerprogrammerbar styring. Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 claims description 16
- 238000009877 rendering Methods 0.000 claims description 2
- 125000004122 cyclic group Chemical group 0.000 claims 1
- 230000006870 function Effects 0.000 description 7
- 238000013500 data storage Methods 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 1
- 230000035484 reaction time Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 210000000352 storage cell Anatomy 0.000 description 1
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
- G05B19/052—Linking 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).
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)
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)
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 |
-
1983
- 1983-01-28 DE DE19833302902 patent/DE3302902A1/de not_active Withdrawn
- 1983-12-21 NO NO834724A patent/NO167110B/no unknown
-
1984
- 1984-01-16 DE DE8484100395T patent/DE3470619D1/de not_active Expired
- 1984-01-16 AT AT84100395T patent/ATE33725T1/de not_active IP Right Cessation
- 1984-01-16 EP EP84100395A patent/EP0121038B1/de not_active Expired
- 1984-01-27 JP JP59013217A patent/JPS59142610A/ja active Pending
- 1984-01-27 ES ES529240A patent/ES529240A0/es active Granted
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) | プログラマブルシーケンスコントローラの高速演算処理方式 |