EP1344131A1 - Architecture electronique parallele comportant une pluralite d'unites de traitement connectees a un bus de communication, et adressables par leurs fonctionnalites - Google Patents

Architecture electronique parallele comportant une pluralite d'unites de traitement connectees a un bus de communication, et adressables par leurs fonctionnalites

Info

Publication number
EP1344131A1
EP1344131A1 EP01995776A EP01995776A EP1344131A1 EP 1344131 A1 EP1344131 A1 EP 1344131A1 EP 01995776 A EP01995776 A EP 01995776A EP 01995776 A EP01995776 A EP 01995776A EP 1344131 A1 EP1344131 A1 EP 1344131A1
Authority
EP
European Patent Office
Prior art keywords
bus
processing unit
header
message
communication bus
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
EP01995776A
Other languages
German (de)
English (en)
French (fr)
Inventor
Erwan Lavarec
Laurent Tremel
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wany SA
Original Assignee
Wany SA
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 Wany SA filed Critical Wany SA
Publication of EP1344131A1 publication Critical patent/EP1344131A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system

Definitions

  • the present invention relates to the field of parallel electronic architectures (multiprocessors and multitasking). It relates to an architecture comprising a plurality of processing units connected to a communication bus and dialoguing with one another according to a new protocol.
  • each processing unit is identified on the bus by its own physical address.
  • the communication protocols known to date allow a first processing unit (hereinafter called the transmitting unit) to dialogue with a second processing unit (hereinafter called the target unit).
  • the transmitting unit sends a message to the target unit, with a view for example to triggering the execution by the target unit of a predefined task
  • the transmitting unit transmits on the bus the address of the target unit.
  • Each processing unit is able to decode an address sent on the bus, and when a target unit recognizes its address, it loads the associated message into local memory and executes the task for which it is programmed.
  • the target and sending unit generally have similar address and data buses of fixed size.
  • the parallel architecture of the invention which is known in that it comprises a plurality of processing units connected to a communication bus, each processing unit being designed to automatically execute one or more predefined tasks .
  • the operation of the architecture of the invention is based on a new principle which is the addressing of a functionality on the communication bus, rather than the addressing of a target processing unit. given.
  • the header which characterizes a functionality thus makes it possible to wake up all the connected processing units which recognize this functionality, so that these processing units execute in parallel the task associated with this functionality.
  • FIG. 4 shows a timing diagram of the main signals implemented during a write operation on the bus ⁇ , by the master processing unit, of a word of a frame.
  • FIG. 5 represents a timing diagram of the main signals implemented during a reading operation, by a slave processing unit, of a valid header present on the bus ⁇ ,
  • FIG. 6 represents a timing diagram of the main signals implemented by a slave processing unit, after reception by this slave processing unit of a valid header, and writing on the bus oc, of a frame of words by the master processing unit,
  • the bus is a data bus which is generally composed of (q) parallel electrical conductors, q being an integer greater than or equal to 1.
  • the bus is a bus consisting of sixteen parallel electrical conductors (16-bit bus (D0-D15)).
  • the processing unit 1a is a 16-bit machine (data bus D0- D15)
  • the processing unit 1 _ is a 4-bit machine (data bus D0- D3)
  • the processing unit 1 ⁇ is an 8-bit machine (data bus D0-D7).
  • A, B, C, D, ... a processing unit capable of communicating only on one (AG) will be of color A; a processing unit capable of communicating a maximum of two (AG) will be color B; a processing unit capable of communicating a maximum of four (AG) will be color C, a processing unit capable of communicating a maximum of eight (AG) will be color D, etc.
  • a word corresponds to the value of the bus ⁇ at a given instant.
  • the maximum size of a word is limited by the number of parallel bus conductors - Message
  • serial format allows you to define all the words that make up a message traveling on the bus.
  • the serial formats usable on the bus can be very different, and necessarily have the common characteristic that the first word of a message is a header.
  • XXXX indicates that it is possible to take any possible value.
  • the 0 indicates that all the conductors of this AG are set to zero.
  • FP-A we use the AG first conductors of the bus for all the other words which will compose the frame of the message thereafter. We therefore address all the processing units connected to the bus and having the desired functionality, since by definition even the smallest processing unit can communicate on an AG.
  • FP-B we use the 2AG first conductors of the bus for all the other words which will compose the frame of the message thereafter.
  • FP-C we use the 4AG first conductors of the bus for all the other words that will compose the message frame thereafter.
  • FP-D we use the first 8AG conductors of the bus for all the other words that will compose the message frame thereafter.
  • the FP-AB format is intended for both processing units that can read on 1 AG and those that can read on 2 AG. Those who read on 1 GA have sufficient information to fulfill the functionality but do not necessarily have all the details. Those who read on 2 GA can for example have an error correcting code on the 2 em ⁇ AG to check the information which passed on the 1 st AG.
  • the FP-AD format is a format which can for example be advantageous for the transmission of small images on the bus -
  • the first AG can be used to code the average level of gray (or color) of a block of 9 pixels. Processing units having access only to this information still benefit from the data: an image three times smaller.
  • the header is the first word of any message passing on the bus, and it mainly defines what functionality is addressed.
  • this header also makes it possible to define:
  • Functionality Any function (or task) which can be executed automatically by a processing unit connected to the bus is called “functionality”.
  • a processing unit 1a, 1b, ..., or 1n When a processing unit 1a, 1b, ..., or 1n has taken the direction of the bus ⁇ , it begins by writing a header on the bus (FunctionKey), then writes then on the bus to a frame (a or more words in depending on the serial format (FS) used).
  • FunctionKey a header on the bus
  • FS serial format
  • the header is read by each slave processing unit.
  • the header mainly allows each slave processing unit to determine whether the frame sent on the bus a is intended for it, and if so, what is the task that it must perform.
  • the slave processing unit When the header sent on the bus is not part of the functional table of a slave processing unit, the latter ignores the frame sent on the bus subsequent to the header. Otherwise, the slave processing unit also reads the frame sent on the bus after the header, and automatically executes the task which is associated with this header in its functionality table.
  • a processing unit 1a, ..., 1n essentially comprises:
  • a validation memory 3 a memory 4 of the FIFO type
  • a logic unit 5 allowing the sequencing of the operation of the validation memory 3 and of the FIFO memory 4, from clock signals CLKA and CLKD,
  • a data bus 6, hereinafter called the interface bus - an internal bus 7, on which the microprocessor 2 can read or write data
  • - three-state registers 6a which under the control of microprocessor 2 (signal 8) allow the writing present on the interface bus 6 (D0-D15) of the data present on the internal bus 7.
  • the read access to the validation memory 3 is sequenced by the signal 5a, delivered by the logic unit 5, from the clock signals CLKA and CLKD.
  • the validation memory 3 has the function of validating or not (signals 9), for the microprocessor 2, a header present on the bus ⁇ -
  • a header present on the bus ⁇ -
  • the microprocessor 2 is informed that it must load the frame which is transmitted on the bus after the header which has been validated .
  • the microprocessor 2 ignores the frame which is sent on the bus ⁇ after this header.
  • the FIFO memory 4 is connected at the input to the bus ⁇ via the interface bus 6, and at the output to the data bus of the internal bus 7.
  • the microprocessor 2 can control the loading, in the FIFO memory 4, of a word present on the bus ⁇ , by means of the write signal 10, as well as the output of a word stored in the FIFO memory 4, and its writing on the data bus of the internal bus 7, by means of the read signal 11.
  • the sequencing of the loading of a word in FIFO memory 4, or of a reading of a word in FIFO memory 4 is synchronized by a timing signal 5b, delivered by logic unit 5 from CLKA and CLKD clock signals.
  • the FIFO memory 4 also delivers at the output for the microprocessor 2 status signals 12 making it possible to indicate to the microprocessor 2 its filling level.
  • the FIFO memory 4 is produced from two 8-bit integrated circuits CI2 and CI3, and for example from integrated circuits marketed under the reference IDT7200, each integrated circuit CI2 and CI3 being dedicated respectively to the storage of the most significant bits (D8 to D15) and of the least significant (D0 to D7) of the bus ⁇ .
  • the signals referenced in FIG. 2 "EmptyJlag_H”, “FullJlag_H”, “HalfJull_H”, “EmptyJlag_B”, “FullJlag_B”, “HalfJull_B”, correspond to the aforementioned status signals 12 of the block diagram of FIG.
  • the signal referenced “Write_FIFO_OK” corresponds to the above-mentioned write signal 10 in FIG. 1.
  • the signals “Read_ FIFO _ B” and “Read _FIFO _ H” correspond to the aforementioned read signal 11 in FIG 1.
  • the signal “Reset_FIFO »I s a reset signal of the FIFO memory which is delivered by the microprocessor 2, and which is used to initialize the memory 4.
  • the data bus of the internal bus 7 of a processing unit is connected in parallel to the interface bus 6, via one or more three-state registers 6a.
  • the processing unit 1a implementing a 16-bit internal bus (DJSA0- DJSA15)
  • two eight-bit registers dedicated to writing in parallel on the interface bus 6 can be used, and thereby even on the bus ⁇ , respectively the eight least significant bits (D- ISA0-DJSA7) and the eight most significant bits (DJSA8-DJSA15) of the data bus of the internal bus 7.
  • Transfer to the bus (DO- D15 ) of data present on the data bus (DJSAO - DJSA15) of the internal bus 7 is controlled by the microprocessor by means of the write signal 8 (FIG. 1).
  • each microprocessor 2 of a processing unit outputs two clock signals 2a and 2b, which are connected, via doors 13 with open collector, to a clock bus (CLKA, CLKD) common to all processing units.
  • CLKA, CLKD clock bus
  • the clock signals CLKA and CLKD correspond respectively to the clock signals 2a and 2b of the microprocessor 2 of this master processing unit; the clock signals 2a and 2b of the other slave processing units are floating and isolated from the clock bus CLKA and CLKD.
  • the exchange of data on the bus is thus clocked by the master processing unit, the slave processing units ensuring the loading of the messages written on the bus ⁇ (validation memory 3 / signal 5a; FIFO memory 4 / signal 5b) whatever their own clock speed (natural operating frequency of their microprocessor 2). Processing units having different own clock speeds can therefore advantageously interact with one another.
  • the microprocessor 2 of a processing unit is programmed to execute the following main program in a loop: a) reading in FIFO memory 4 of a message (header and frame), b) decoding of the functionality associated with this header in the functionality table; c) automatic execution of the routine (task) corresponding to this functionality.
  • step c) it may happen that the microprocessor 2 is required to write on the bus ⁇ a message, in order to activate a functionality managed by one or more other processing units. connected to the bus ⁇ -
  • the processing unit writes on the bus the header coding this functionality, and the frame of the words of the message, then releases the bus ⁇ -
  • the timing diagrams of the main signals used during such a write operation are shown in Figures 3 and 4 respectively.
  • FIG. 6 represents the timing diagrams of the main signals implemented during a reading operation on the bus ⁇ , by a slave processing unit, of a valid header
  • FIG. 6 represents the timing diagrams of the main signals implemented during a reading operation on the bus ⁇ , by a slave processing unit, of a frame of words (FIG. 6 / "Data n", "Data n + 1") written on the bus by a master processing unit, in relation to a valid header previously written on the bus ⁇ -
  • the IRQ # P interrupt momentarily changes state.
  • the capture of this valid header in the FIFO 4 memory (signal 10 / Writing_FIFO_OK) is done by the simultaneous action of the signals CLKA and CLKD.
  • the capture of data in the FIFO memory 4 is clocked only by the signal CLKD.
  • Reception of an invalid header / figure 7 With reference to figure 7, when the header present on the bus ⁇ is not valid for a slave processing unit, the interrupt signal IRQ # P does not change state, and the aforementioned main program of microprocessor 2 is not interrupted.
  • the microprocessor 2 does not command the loading of the header present on the bus ⁇ in the FIFO memory 4 (signal Writing_FIFO_OK does not change state), nor subsequently the loading in FIFO memory 4 of the frame of words passing over the bus after this header. The message passing over the bus is thus ignored by the slave processing unit.
  • the multi-processor architecture which has been described with reference to FIGS. 1 to 7 has the main advantages below:
  • This parallel architecture is “universal”: it makes it possible to make dialogue between them different processing units, and in particular processing units having data buses (bus interface 6) of different sizes; the only limitation on the size of the processing units that can be connected is the number of bits in parallel of the bus', this architecture does not work with a single data format, but works with any data format, greater than or equal to the size of the atom of granularity (AG).
  • the processing units can communicate with one another regardless of their processors, and above all regardless of the clock rate of their processors.
  • the propulsion card includes in its functional table the header values '1', '2', '3', '6' and '10' associated respectively with the following functionalities: "emergency stop” , "Request to move forward”, “request to move back”, “recognition of a human”, “request to identify the cards present”.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
EP01995776A 2000-12-22 2001-12-21 Architecture electronique parallele comportant une pluralite d'unites de traitement connectees a un bus de communication, et adressables par leurs fonctionnalites Withdrawn EP1344131A1 (fr)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0016858 2000-12-22
FR0016858A FR2818774B1 (fr) 2000-12-22 2000-12-22 Architecture electronique parallele comportant une pluralite d'unites de traitement connectees a un bus de communication, et adressables par leurs fonctionnalites
PCT/FR2001/004176 WO2002052414A1 (fr) 2000-12-22 2001-12-21 Architecture electronique parallele comportant une pluralite d'unites de traitement connectees a un bus de communication, et adressables par leurs fonctionnalites

Publications (1)

Publication Number Publication Date
EP1344131A1 true EP1344131A1 (fr) 2003-09-17

Family

ID=8858068

Family Applications (1)

Application Number Title Priority Date Filing Date
EP01995776A Withdrawn EP1344131A1 (fr) 2000-12-22 2001-12-21 Architecture electronique parallele comportant une pluralite d'unites de traitement connectees a un bus de communication, et adressables par leurs fonctionnalites

Country Status (10)

Country Link
US (1) US6859847B2 (xx)
EP (1) EP1344131A1 (xx)
JP (1) JP2004521412A (xx)
KR (1) KR20030072573A (xx)
CN (1) CN1230745C (xx)
CA (1) CA2432384A1 (xx)
FR (1) FR2818774B1 (xx)
HK (1) HK1063228A1 (xx)
IL (1) IL156482A0 (xx)
WO (1) WO2002052414A1 (xx)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8254372B2 (en) 2003-02-21 2012-08-28 Genband Us Llc Data communication apparatus and method
WO2005089055A2 (en) * 2004-03-19 2005-09-29 Nortel Networks Limited Communicating processing capabilites along a communications path
GB0622408D0 (en) * 2006-11-10 2006-12-20 Ibm Device and method for detection and processing of stalled data request
EP2108193B1 (en) 2006-12-28 2018-08-15 Genband US LLC Methods, systems, and computer program products for silence insertion descriptor (sid) conversion
US8908541B2 (en) 2009-08-04 2014-12-09 Genband Us Llc Methods, systems, and computer readable media for intelligent optimization of digital signal processor (DSP) resource utilization in a media gateway
US9292409B2 (en) * 2013-06-03 2016-03-22 Infineon Technologies Ag Sensor interfaces
CN104360904A (zh) * 2014-10-16 2015-02-18 四川长虹电器股份有限公司 基于事件总线的模块间消息传递机制

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8510973D0 (en) * 1985-04-30 1985-06-05 Emi Ltd Data transmission system
IL96808A (en) * 1990-04-18 1996-03-31 Rambus Inc Introductory / Origin Circuit Agreed Using High-Performance Brokerage
US5898845A (en) * 1996-10-29 1999-04-27 Intervoice Limited Partnership Assigning and utilizing overlapping address space for multiple cards on a common computer bus
US6157955A (en) * 1998-06-15 2000-12-05 Intel Corporation Packet processing system including a policy engine having a classification unit
US6185631B1 (en) * 1998-10-14 2001-02-06 International Business Machines Corporation Program for transferring execution of certain channel functions to a control unit and having means for combining certain commands and data packets in one sequence
US6690676B1 (en) * 1998-11-23 2004-02-10 Advanced Micro Devices, Inc. Non-addressed packet structure connecting dedicated end points on a multi-pipe computer interconnect bus
US6529504B1 (en) * 1999-06-02 2003-03-04 Sprint Communications Company, L.P. Telecommunications service control point interface
US6725281B1 (en) * 1999-06-11 2004-04-20 Microsoft Corporation Synchronization of controlled device state using state table and eventing in data-driven remote device control model

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO02052414A1 *

Also Published As

Publication number Publication date
FR2818774A1 (fr) 2002-06-28
JP2004521412A (ja) 2004-07-15
FR2818774B1 (fr) 2003-03-21
WO2002052414A1 (fr) 2002-07-04
IL156482A0 (en) 2004-01-04
CA2432384A1 (fr) 2002-07-04
US20040059888A1 (en) 2004-03-25
CN1230745C (zh) 2005-12-07
CN1486460A (zh) 2004-03-31
KR20030072573A (ko) 2003-09-15
HK1063228A1 (en) 2004-12-17
US6859847B2 (en) 2005-02-22

Similar Documents

Publication Publication Date Title
FR2508201A1 (fr) Circuit d'interface entre un processeur et un canal de transmission
EP0063071B1 (fr) Procédé et dispositif de transmission de données numériques
FR2632096A1 (fr) Systeme de microcalculateur a bus multiple avec arbitrage d'acces aux bus
EP1344131A1 (fr) Architecture electronique parallele comportant une pluralite d'unites de traitement connectees a un bus de communication, et adressables par leurs fonctionnalites
FR2686171A1 (fr) Carte a memoire de masse pour microordinateur avec facilites d'execution de programmes internes.
FR2539260A1 (fr) Systeme de transmission de donnees
FR2765706A1 (fr) Lecteur de cartes a puces a protocole de transmission rapide
WO1992006451A1 (fr) Procede pour repartir la memoire d'un circuit integre entre plusieurs applications
FR2683342A1 (fr) Circuit d'interface pour carte a circuit integre.
EP2585982B1 (fr) Procede de gestion de la communication entre un dispositif electronique et un appareil de communication
EP0938048B1 (fr) Procédé de transfert de données en série, et interface de bus série synchrone mettant en oeuvre un tel procédé
EP1141903B1 (fr) Dispositif et procede d'initialisation d'un programme applicatif d'une carte a circuit integre
FR2990534A1 (fr) Procede d'envoi automatique de lignes de commande pour acceder a un site internet et dispositif mettant en oeuvre le procede
EP1603049A1 (fr) Interfacage de modules fonctionnels dans un systeme sur une puce
EP0512881B1 (fr) Procédé et dispositif de sélection d'informations utilisables par une unité locale reliée à un système de transmission numérique
FR2786580A1 (fr) Circuit generateur de signature
EP1679608A2 (fr) Procédé de conception d'un périphérique compatible DMA
EP0589743A1 (fr) Dispositif modulaire permettant le couplage et le multiplexage de bus de différents types
WO1999031618A1 (fr) Microcircuit a logique cablee comportant une interface de communication numerique
EP0264325A1 (fr) Automate pour rendre compatible un processeur avec un bus d'un autre processeur
FR2582423A1 (fr) Memoire tampon a interposer entre deux systemes synchrones a vitesses differentes
EP0466555A1 (fr) Réseau local d'intercommunication de modules de traitement de données
FR2707117A1 (fr) Système de téléchargement de données de programme pour calculateur de gestion de processus.
FR2632095A1 (fr) Methode et dispositif pour poster selectivement des cycles d'ecriture en utilisant une unite de commande d'antememoire 82385
FR2637144A1 (fr) Procede et dispositif de reconnaissance de forme pour des images binarisees

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20030623

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR

AX Request for extension of the european patent

Extension state: AL LT LV MK RO SI

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20070703