WO1994015295A1 - Systeme de transmission de donnees entre un bus d'ordinateur et un reseau - Google Patents

Systeme de transmission de donnees entre un bus d'ordinateur et un reseau Download PDF

Info

Publication number
WO1994015295A1
WO1994015295A1 PCT/FR1993/001286 FR9301286W WO9415295A1 WO 1994015295 A1 WO1994015295 A1 WO 1994015295A1 FR 9301286 W FR9301286 W FR 9301286W WO 9415295 A1 WO9415295 A1 WO 9415295A1
Authority
WO
WIPO (PCT)
Prior art keywords
microprocessor
memory
bus
communication
network
Prior art date
Application number
PCT/FR1993/001286
Other languages
English (en)
Inventor
Jacky Pardillos
Original Assignee
Bull S.A.
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 Bull S.A. filed Critical Bull S.A.
Priority to JP6514879A priority Critical patent/JPH07504286A/ja
Priority to US08/284,671 priority patent/US5642482A/en
Priority to EP94902848A priority patent/EP0627102A1/fr
Publication of WO1994015295A1 publication Critical patent/WO1994015295A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/128Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine for dedicated transfers to a network

Definitions

  • the present invention relates to a data transmission system between a computer bus and a network. It is more particularly applicable to a data transmission network, of the FDDI type, the transmission medium of which consists of optical fibers (standardized at ANSI, under the reference X3D9-5 and at ISO, the International Organization for standardization).
  • Communication networks are constituted by a plurality of terminals or stations linked together by a transmission link (the transmission medium of which consists of optical fibers, in the case of an FDDI type network).
  • a computer connected to such a network is considered to be a terminal.
  • OSI OSI or even TCP-IP reference models. These models remain similar with regard to the definition of the architecture of these networks in the form of standardized layers.
  • OSI model there are 7 different activity layers, the lowest layer (layer 1) corresponding to the physical transmission of signals, while the upper layer corresponds to the functions performed by the application programs and users of the network in question.
  • the information messages sent by the different stations consist of a plurality of frames. Any frame is made up of useful data framed in time by command characters placed at the top and bottom of it.
  • a communication processor also known as a data transmission system
  • a data transmission system The purpose of a communication processor, also known as a data transmission system, is to adapt the conditions for transmitting information on the bus of the computer with which it is associated, to the conditions for transmission over the network. , these transmission conditions being completely different.
  • this data transmission system makes it possible to make the different computer operating systems communicate with one another. In particular, it makes it possible to make the different communication layers of the operating system of a first computer communicate with the different communication layers of the operating systems of other computers connected to the same network.
  • Such a communication processor also called data transmission system.
  • Such a processor has the simplified architecture shown in FIG. 1.
  • Such an architecture is for example described in French patent application No. 92 13653 filed on 13.1 1.1992 by the applicant under the title "Tool for simulating a code of network”.
  • Such a communication processor makes it possible to manage the transfer of data between a HOST computer provided with an internal bus PSB whose operating system is designated by OS, and a network RE for example of the FDDI type.
  • the PSB bus is for example a so-called MULTIBUSII bus (trademark registered by the company INTEL) standardized according to the IEEE 1296 standard (Institute of Electrical and Electronic Engineer).
  • the NCC communication processor consists of the following three essential parts:
  • GPU (English acronym of General Purpose Unit) is for example of the model described in patent application N ° 91 08908 filed on 15.07.91 by BULL SA, under the title “Universal coupling device of a computer bus to a controller of a device group ".
  • This part is equipped with an operating system by example of the type described in application No. 9108907 filed on the same day as previously, by the same applicant, under the title “Operating system for universal device for coupling a computer bus to a specific link of a network ".
  • the purpose of this GPU part is to ensure on the one hand the initialization of the entire NCC coupler and on the other hand to ensure ⁇ ?
  • the GPU part ensures the physical transfer of data between the PSB bus and the second DEA part, called adapter device which is directly connected to the RE network.
  • the function of this DEA part is described below.
  • the DEA part is for example of the type described, that is to say in patent No. 2,650,412, the title of which is "gateway device for connecting a computer bus to a ring-shaped fiber network" for the part hardware, or in application No. 92 11054, with regard to the software part.
  • This DEA part ensures the physical transmission of data between the GPU part and the RE network, as well as the physical connection to the network.
  • the third part is in fact a communication coprocessor intended more particularly for the management of the different telecommunication layers of the OSI model, or of the TCP-IP model.
  • the PPA part manages the communication layers C4, C3, C2, that is to say, respectively the transport, network, and link layers of data.
  • the communication layers C2 to C4 communicate with each other via primitive functions allowing two neighboring layers to communicate with each other.
  • the two layers C2 and C3 communicate with each other through the set of functions ST2, while the layers C3 and C4 communicate through the set of functions ST3.
  • C4 communicates with the outside world, that is to say for example with external applications via an SH interface.
  • the sets of functions ST2, ST3, SH are functions known in current practice under the name of STREAMS. These standard functions are for example defined in the following documents:
  • the layers C2 to C4 and the different functions ST2, ST3 and SH, as well as the operating system of the PPA part, constitute the communication layer code CC which is implemented by the communication coprocessor PPA.
  • the essential role of the PPA communication coprocessor is to relieve the host system of the management of the communication layers which it usually performs, while keeping the NCC communication processor extremely high performance, as regards the transmission rate of the data to or from the network.
  • the present invention relates to a particularly advantageous embodiment of the PPA communication coprocessor making it possible precisely to obtain the performance required in terms of throughput.
  • the data transmission system between a computer bus and a network comprising: 1. A universal coupling device connected to the bus and communicating via an interface with an adapter device connected to the network,
  • the universal device comprising:
  • a first microprocessor associated with a first memory and executing an operating system contained therein
  • means for transferring frames from the bus to the adapter device and vice versa including a dual-port memory placed between the bus and the adapter device and connected to the latter via a second bus,
  • a communication coprocessor connected to the universal coupling device to manage at least the transport, network and data link layers,
  • a second microprocessor implementing for each layer the corresponding communication protocol by providing each frame with control data conforming to this protocol, its data bus being connected to the second bus and its control bus to the internal bus of the first microprocessor,
  • - a third microprocessor managing by direct memory access the transfer of data between the second microprocessor and the dual port memory.
  • FIG. 1 recalls what the various essential constituent elements of a communication processor are
  • FIG. 2 shows in more detail each of the essential constituent parts of the communication processor of FIG. 1,
  • FIG. 3 shows which are the data paths used for the circulation of the frames through the various essential constituent elements of the communication processor according to the invention
  • FIG. 4 shows which are the priority data paths inside the different elements which constitute the communication coprocessor belonging to the communication processor according to the invention.
  • FIG. 2 shows, for each of the essential parts making up the communication processor NCC, the constituent elements of each of these.
  • the processing unit UT1 itself composed of the following sub-elements:
  • the microprocessor CPU1 which in fact constitutes the central unit of the GPU device. It is fitted with an internal BU bus to transport the commands intended for the DEA adapter device.
  • This microprocessor is associated with an erasable programmable memory EPROM1, a random access memory SRAM1 and an interrupt manager MFP1.
  • the DMAC memory direct access controller connected on the one hand to the bus B2 connecting it to the VRAM memory and on the other hand to the bus B3 connecting it to the HIA part formed by the coprocessor MPC which is itself connected to the PSB bus .
  • This HIA part which can also be called adapter host, depends on the nature of the internal bus of the HOST host.
  • the MPC coprocessor is for example of the type VN82c389 manufactured by the company INTEL.
  • the microprocessor CPU1 is, in the embodiment described here, of type 68030 manufactured by the firm MOTOROLA.
  • the erasable ROM EPROM1 contains the GPU self-test and initialization programs.
  • the memory SRAM1 contains the operating system of CPU1 (Operating System) which is loaded at the initialization of GPU.
  • CPU1 Operating System
  • the operating system of the microprocessor CPU1 is for example of the type described in the aforementioned patent application No. 91 08907.
  • the DMAC direct access controller is connected in series on the one hand between the VRAM memory and the MPC coprocessor and on the other hand between the latter and the BU1 bus of CPU1.
  • the GPU device also comprises a logical exclusion device LU arranged between DMAC and BU and another logical exclusion device LI2 arranged between the bus B1 and the bus BU.
  • These exclusion devices make it possible to prevent the useful data originating from the host HOST and intended for the network RE from passing through the internal bus BU of the microprocessor CPU1, which makes it possible to avoid a reduction in the performance thereof.
  • the microprocessor CPU1 is not only the brain of the GPU coupling device but also the brain of the NCC communication processor: it initializes data transfers, implements its operating system and transfers useful data between HOST and DEA and conversely while interacting with DEA and PPA respectively, with which it exchanges orders and statuses. He therefore manages in real time not only his own work but also the work of the PPA and DEA devices.
  • the DEA adapter device is described in more detail in the aforementioned French patent application No. 92 1 1054.
  • the DEA device therefore includes:
  • a second processing unit UT2 composed respectively of the second microprocessor CPU2 with its internal bus BI2 to which are connected the second erasable programmable memory EPROM2, the memory SRAM2 and the interrupt manager, namely MFP1.
  • the CAR network access controller The CAR network access controller.
  • the physical adaptation device to the DAPR network is the physical adaptation device to the DAPR network.
  • the processing unit UT2 organizes the transfer of frames between GPU and DEA on the one hand and the network RE and vice versa, while exchanging commands with the first microprocessor CPU1.
  • the CAR network access controller allows the physical transfer of data from bus B1 to the RE network via DAPR and bus B4 which is physically connected to B1.
  • the manner in which the information is transferred between the VRAM memory and the network RE, and the manner in which CPU1 and CPU2 interact via command queues arranged in the VRAM memory is described in more detail in the aforementioned application No. 92 11054 .
  • the software modules independent of each other which are arranged in the memory SRAM2 and which can communicate on the one hand between them and on the other hand with the operating system of the microprocessor CPU1 by means of box with letters arranged in the memory SRAM2 and / or by means of the command queues arranged in the memory VRAM.
  • the PPA communication coprocessor according to the invention shown in FIG. 2 comprises:
  • the processing unit UT3 implements the communication code CC, under the supervision of its own operating system SE3.
  • This latter operating system can for example be of the CNS-A1 type developed and marketed by the applicant company.
  • the processing unit UT3 will therefore search the VRAM memory for the useful data transmitted by the host HOST via MPC and DMAC, and add thereto control characters placed at the head and at the start of the frame, each of these control characters being conforms to the various communication protocols used respectively in layers C2 to C4 of the reference models either OSI or TCP-IP.
  • the transfer of the useful data from the VRAM memory to the processing unit UT3 and from this unit UT3 to the VRAM memory is carried out by the DMAT memory direct access device.
  • the UT3 processing unit includes the following basic elements:
  • the third microprocessor CPU3 provided with its internal bus BI3 to which is respectively connected the erasable programmable memory DRAM3, the random access memory SRAM3, the interrupt manager MFP3.
  • the third microprocessor CPU3 is for example of the type 68LC040 from the firm MOTOROLA.
  • the SRAM3 memory is a memory whose capacity is for example 4 megabytes, while the DRAM3 memory has a memory capacity of 16 megabytes.
  • the MFP3 interrupt handler is for example of the same type as the MFP1 and MFP2 interrupt handlers.
  • the memory SRAM3 contains the communication code CC, as well as the operating system SE3 of the microprocessor CPU3. We can therefore say that it is used for processing the protocols of the different layers C2 to C4.
  • the DRAM3 memory is used to form a plurality of memory locations (BUFFER, according to English terminology) intended to receive the useful data frames which have been received either from the host HOST or from the network RE and which have been stored in VRAM memory. These useful data are therefore temporarily stored in the DRAM3 memory while waiting for the microprocessor CPU3 using the communication code CC to have supplied them with the control characters necessary to send these frames either to the host HOST or to the network RE as the case may be. .
  • BUFFER memory locations
  • the direct memory access device DMAT comprises a microprocessor CPU4, an erasable read-only memory PR0M4, an interrupt manager MFP4 and a random access memory SRAM4, all these elements being connected to the internal bus BI4 of CPU4.
  • the microprocessor CPU4 for example of the 68LC040 type from the firm MOTOROLA, while the RAM SRAM4 has for example a capacity of 4 mega-bits and the memory PR0M4 of 256 kilobits for example.
  • the manager MFP4 is of the same type 68901 as the equivalent managers MFP1 to MFP3 of the processing units UT1 to UT3.
  • PR0M4 contains the test and initialization programs for the microprocessors CPU3 and CPU4. As of the initialization of CPU4, this one transfers these programs in its associated memory SRAM4, for those relating to it proper, on the one hand and in the memory SRAM3 for those concerning CPU4, on the other hand.
  • the two internal buses BI3 and BI4 of the processing unit UT3 and of the direct memory access device DMAT are connected together to the same data bus BS.
  • the latter is connected via a logical isolation device LI3 on bus B1.
  • the part of the bus BI3 more specifically intended for conveying commands, intended to organize the dialogue between the processing units UT1 and UT3 constitutes a control bus CB which is connected to the internal bus BU of the unit UT1 by the intermediate of the LI4 logic isolation device.
  • MFP4 is also connected to the CB bus.
  • the processing unit UT3 does not have a PROM type memory and therefore, the microprocessor CPU3 is blocked at each reset.
  • the BI3 bus of the UT3 unit is controlled either by the direct memory access device DMAT or by the microprocessor CPU1.
  • the microprocessor CPU3 of the unit UT3 is released either by one or the other of these two elements DMAT or CPU1.
  • the microprocessors CPU1 and CPU4 are masters. Furthermore, control of the BI3 bus can be ensured by one or other of the three processors CPU1, CPU4, CPU3.
  • An arbitration device controls access to the bus of UT3 by one or other of these three microprocessors according to the conditions listed below. This arbitration device is contained in the unit UT3, on the control bus part of BI3. It is not shown for simplicity, in FIG. 2.
  • the microprocessor CPU3 obtains the bus BI3 by default if there is no other request from one or the other of the two other microprocessors .
  • CPU1 and DMAT obtain the BI3 bus after arbitration and acknowledgment of their obtaining requests.
  • the microprocessor CPU1 has priority over the direct memory access device DMAT.
  • the master elements are as follows:
  • the DMAC direct memory access controller controlled by the microprocessor CPU1 is the master for accessing the VRAM memory from the MULTIBUSII PSB.
  • the microprocessor CPU1 is master for access to the VRAM memory, to the two memories SRAM3 and DRAM3 as well as for the control of DMAT.
  • the microprocessor CPU3 is only master for access to its associated memories SRAM3 or DRAM3, under the arbitration conditions set out above.
  • the DMAT device is master for access to the VRAM memory or to the SRAM3 or DRAM3 memories, under the arbitration conditions set out above.
  • FIG. 4 summarizes what has just been said above.
  • CPU3 has access to the two memories SRAM3 and DRAM3 as well as to its interrupt manager MFP3 which is represented by a gray arrow F1.
  • the microprocessor CPU4 of the direct memory access device DMAT can have direct access to the memories SRAM3 and DRAM3, which is represented by the arrow F3 of a lighter color than the gray arrows relating to the microprocessor CPU3.
  • An arrow F2 can also be seen in dashed dashed lines which represents the command data path between the microprocessor CPU1 and the memories SRAM3 and DRAM3.
  • a double arrow F4 symbolizing the takeover of VRAM memory by the processor CPU4.
  • FIG. 3 illustrates the operation of the assembly constituted by GPU, PPA, DEA.
  • the microprocessor CPU3 can then carry out the processing of the protocols of the layers C2 to C4, by implementing the communication code CC.
  • the microprocessor CPU3 changes the control characters placed at the head and tail of frames and which were in accordance with the protocol used on the network RE into command characters in accordance with the protocol of the layers C2 to C4 used between GPU and the computer HOST.
  • the microprocessor CPU1 which is informed of it by the microprocessor CPU4 by means of commands which circulate on the bus CB, transfers the data frames thus newly constituted from the memory SRAM3 to the memory FiFo FF1 contained in the memory VRAM. This is done under the supervision of the DMAT memory direct access device. This transfer is symbolized by the arrow 3 in FIG. 3.
  • the data having thus arrived in FF2 are then sent to the computer HOST, on a command from the microprocessor CPU1.
  • the physical routing of the data is carried out by the direct memory access device DMAC in a manner which is indicated in the aforementioned French patent application No. 91 15814.
  • This transfer of data between the VRAM memory and the HOST computer via PSB is symbolized by the arrow 4 in FIG. 3.
  • the path traveled by the data is strictly opposite of the previous one. It is therefore symbolized by the arrows 1 ', 2', 3 ', 4' in FIG. 3.
  • the arrow 1 'symbolizes the transfer of data between the host HOST and the VRAM memory under the control of CPU1 via of the DMAC memory direct access device
  • the arrow 2 ′ symbolizes the transfer of data between the FiFo memory FF1 and the SRAM3 memory.
  • the data is processed, by protocol adjustment of layers C2 to C4 by the data processing device UT3. Once this is done, the data is transferred from the memory SRAM3 to the memory FiFo FF1, by the data path 3 'then transferred from this last FiFo memory to the network RE via the bus B1, B4 and the elements CAR and DAPR of the adapter device DEA (arrow 4 ').

Abstract

Système de transmission de données (NCC) entre un bus d'ordinateur (PSB) et un réseau (RE) comprenant: 1) un dispositif universel de couplage (GPU) relié au bus et à un adaptateur connecté au réseau, et incluant: un premier microprocesseur, des moyens de transfert de trames depuis le bus vers l'adaptateur et réciproquement, incluant une mémoire à double port disposée entre le bus et l'adaptateur et connectée à ces derniers, 2) un coprocesseur de communication (PPA) relié au dispositif universel de couplage (GPU), caractérisé en ce que le coprocesseur (PPA) comprend: un second microprocesseur (CPU3) mettant en ÷uvre pour chaque couche de communication (C2 à C4), le protocole correspondant en munissant chaque trame, d'informations de contrôle conformes à ce protocole, et étant connecté au premier microprocesseur et à ladite mémoire, un troisième microprocesseur (CPU4) gérant par accès direct mémoire le transfert de données entre le second microprocesseur (CPU3) et la mémoire (VRAM).

Description

SYSTEME DE TRANSMISSION DE DONNEES ENTRE UN BUS D'ORDINATEUR ET UN RESEAU.
La présente invention concerne un système de transmission de données entre un bus d'ordinateur et un réseau. Elle est plus particulièrement applicable à un réseau de transmission de données, de type FDDI, dont le support de transmission est constitué par des fibres optiques (normalisées à l'ANSI, sous la référence X3D9-5 et à l'I.S.O., Organisation internationale de normalisation).
Les réseaux de communication sont constitués par une pluralité de terminaux ou stations reliés entre eux par une liaison de transmission (dont le support de transmission est constitué par des fibres optiques, dans le cas d'un réseau de type FDDI). Un ordinateur relié à un tel réseau est considéré comme un terminal.
On sait que de nombreux réseaux modernes fonctionnent suivant un même modèle de référence. Les plus connus sont les modèles de référence OSI ou encore TCP-IP. Ces modèles restent voisins en ce qui concerne la définition de l'architecture de ces réseaux sous forme de couches normalisées. Ainsi, dans le modèle OSI, il y a 7 couches d'activité différentes, la couche la plus basse (couche 1 ) correspondant à la transmission physique des signaux, alors que la couche supérieure correspond aux fonctions réalisées par les programmes d'applications et les utilisateurs du réseau considéré.
Par ailleurs, sur un réseau, les messages d'informations émis par les différentes stations sont constitués d'une pluralité de trames. Toute trame est constituée de données utiles encadrées dans le temps par des caractères de commande placés en tête et en queue de celle-ci.
La tendance du développement technologique des réseaux, l'utilisation de terminaux de plus en plus nombreux, conduisent à développer des processeurs de communication programmés qui ont pour objet de réduire la charge de l'unité centrale de l'ordinateur en effectuant une partie de la gestion des communications de ce dernier avec les autres stations du réseau. Par ailleurs, le développement extrêmement rapide des réseaux de communication et des systèmes informatiques, conduit à connecter un même réseau des ordinateurs de type différent utilisant des systèmes d'exploitation (operating System) différents.
Le but d'un processeur de communicatio.\ qu'on appelle également système de transmission de données, est d'adapter les conditions de transmission des informations sur le bus de l'ordinateur auquel il est associé, aux conditions de transmission sur le réseau, ces conditions de transmission étant totalement différentes. Par ailleurs, ce système de transmission de données permet de faire dialoguer les systèmes d'exploitation d'ordinateur différents entre eux. En particulier, il permet de faire dialoguer les différentes couches de communication du système d'exploitation d'un premier ordinateur avec les différentes couches de communication des systèmes d'exploitation d'autres ordinateurs connectés au même réseau.
On connaît par exemple un tel processeur de communication, encore appelé système de transmission de données. Un tel processeur possède l'architecture simplifiée montrée à la figure 1. Une telle architecture est par exemple décrite dans la demande de brevet français N° 92 13653 déposée le 13.1 1.1992 par la demanderesse sous le titre "Outil de simulation d'un code de réseau".
Un tel processeur de communication, appelé NCC permet d'assurer la gestion du transfert de données entre un ordinateur HOST muni d'un bus interne PSB dont le système d'exploitation est désigné par OS, et un réseau RE par exemple de type FDDI. Le bus PSB est par exemple un bus dit MULTIBUSII (marque déposée par la Société INTEL) normalisé suivant la norme IEEE 1296 (Institute of Electrical and Electronic Engineer).
Le processeur de communication NCC comprend les trois parties essentielles suivantes :
- la première partie, appelée GPU (sigle anglais de General Purpose Unit) est par exemple du modèle décrit dans la demande de brevet N° 91 08908 déposée le 15.07.91 par BULL S.A., sous le titre "Dispositif universel de couplage d'un bus d'ordinateur à un contrôleur d'un groupe de périphériques". Cette partie est munie d'un système d'exploitation par exemple du type décrit dans la demande N° 9108907 déposée le même jour que précédemment, par la même demanderesse, sous le titre "Système d'exploitation pour dispositif universel de couplage d'un bus d'ordinateur à une liaison spécifique d'un réseau". Le but de cette partie GPU est d'assurer d'une part l'initialisation de l'ensemble du coupleur NCC et d'autre part d'assurer \? dialogue avec l'ordinateur HOST par l'intermédiaire du bus PSB, en respectant les normes d'utilisation de ce bus et en se conformant à la nature du système d'exploitation OS de l'ordinateur HOST. Par ailleurs, la partie GPU assure le transfert physique des données entre le bus PSB et la seconde partie DEA, dite dispositif adaptateur qui est directement connectée au réseau RE. La fonction de cette partie DEA est décrite ci-dessous.
- la partie DEA est par exemple du type décrit, soit dans le brevet N° 2 650 412 dont le titre est "dispositif passerelle de connexion d'un bus d'ordinateur à un réseau fibre optique en forme d'anneau" pour la partie matérielle, soit dans la demande N° 92 11054, pour ce qui concerne la partie logicielle. Cette partie DEA assure la transmission physique des données entre la partie GPU et le réseau RE, ainsi que la connexion physique au réseau.
- la troisième partie, appelée PPA est en fait un coprocesseur de communication destiné plus particulièrement à la gestion des différentes couches de télécommunication du modèle OSI, ou encore du modèle TCP- IP. Aussi bien en ce qui concerne le modèle OSI, que TCP-IP, la partie PPA assure la gestion des couches de communication C4, C3, C2, c'est à dire, respectivement des couches de transport, de réseau, et de liaison de données.
Les couches de communication C2 à C4 communiquent entre elles par l'intermédiaire de fonctions primitives permettant à deux couches voisines de dialoguer entre elles. Ainsi les deux couches C2 et C3 communiquent entre elles par l'intermédiaire de l'ensemble de fonctions ST2, alors que les couches C3 et C4 communiquent par l'intermédiaire de l'ensemble de fonctions ST3. Par ailleurs C4 communique avec le monde extérieur c'est à dire par exemple avec des applications externes par l'intermédiaire d'une interface SH. Dans une forme de réalisation préférée dans l'invention, les ensembles de fonctions ST2, ST3, SH sont des fonctions connues dans la pratique courante sous le nom de STREAMS. Ces fonctions standard sont par exemple définies dans les documents suivants :
- Unix Système V Release 4 - STREAMS Programmer's Guide, ATT issue 1
- Unix System V Release 3.2 - STREAMS Programmer's guide, ATT (ISBN : 0-13-944810-1 ) : 1989.
Dans l'exemple de réalisation montré à la figure 1 , lorsque l'ordinateur HOST envoie un message vers le réseau RE, ou bien lorsqu'un message provient du réseau RE, celui-ci transite vers les couches C2 à C4 de PPA, par l'intermédiaire d'une mémoire FiFo, à savoir FF1 ou FF2 selon que ce message est transmis vers DEA, ou vers GPU respectivement. Lorsqu'il s'agit d'établir une demande de connexion, provenant de l'ordinateur HOST, cette demande passe par l'intermédiaire de l'interface SH, alors que une fois la connexion établie, lorsqu'il s'agit d'envoyer des messages vers tout ou partie des stations connectées au réseau, ceux ci passent directement dans les couches C4 à C2.
Les couches C2 à C4 et les différentes fonctions ST2, ST3 et SH, ainsi que le système d'exploitation de la partie PPA, constituent le code de couche de communication CC qui est mis en oeuvre par le coprocesseur de communication PPA.
Le rôle essentiel du coprocesseur de communication PPA est de soulager le système hôte de la gestion des couches de communication que celui-ci effectue habituellement, tout en conservant au processeur de communication NCC des performances extrêmement élevées, en ce qui concerne le débit de transmission des données vers ou depuis le réseau.
La présente invention concerne un mode de réalisation particulièrement avantageux du coprocesseur de communication PPA permettant précisément d'obtenir les performances requises en matière de débit.
Selon l'invention, le système de transmission de données entre un bus d'ordinateur et un réseau comprenant : 1 . Un dispositif universel de couplage relié au bus et communiquant par une interface avec un dispositif adaptateur connecté au réseau,
- le dispositif universel comprenant :
. un premier microprocesseur associé à une première mémoire et exécutant un système d'exploitation contenu dans celle-ci,
. des moyens de transfert de trames depuis le bus vers le dispositif adaptateur et réciproquement, incluant une mémoire à double port disposée entre le bus et le dispositif adaptateur et connectée à ce dernier par l'intermédiaire d'un second bus,
2. Un coprocesseur de communication relié au dispositif universel de couplage pour gérer au moins les couches de transport, de réseau et de liaison de données,
est caractérisé en ce que le coprocesseur comprend
- un second microprocesseur mettant en oeuvre pour chaque couche le protocole de communication correspondant en munissant chaque trame de données de contrôle conformes à ce protocole, son bus de données étant connecté au second bus et son bus de commande au bus interne du premier microprocesseur,
- un troisième microprocesseur gérant par accès direct mémoire le transfert des données entre le second microprocesseur et la mémoire double port.
D'autres caractéristiques et avantages de la présente invention apparaîtront dans la description suivante donnée à titre d'exemple non limitatif et en se référant aux dessins annexés.
Sur ces dessins :
- La figure 1 rappelle ce que sont les différents éléments constitutifs essentiels d'un processeur de communication, - La figure 2 montre plus en détail chacune des parties constitutives essentielles du processeur de communication de la figure 1 ,
- '.a figure 3 montre quels sont les chemins de données utilisés pour la circulation des trames à travers les différents éléments constitutifs essentiels du processeur de communication selon l'invention,
- La figure 4 montre quels sont les chemins de données prioritaires à l'intérieur des différents éléments qui constituent le coprocesseur de communication appartenant au processeur de communication selon l'invention.
On considère la figure 2 qui montre pour chacune des parties essentielles composant le processeur de communication NCC les éléments constitutifs de chacune de celles-ci.
On considère tout d'abord le dispositif universel de couplage GPU qui est décrit plus en détail dans la demande de brevet N° 91 08908 précitée. On se limitera donc ici à définir de manière très générale le rôle de chacun des éléments le constituant.
Ces éléments sont :
L'unité de traitement UT1 composée elle-même des sous-éléments suivants :
. Le microprocesseur CPU1 qui constitue de fait l'unité centrale du dispositif GPU. Il est muni d'un bus interne BU pour transporter les commandes destinées au dispositif adaptateur DEA. Ce microprocesseur est associé à une mémoire programmable effaçable EPROM1 , une mémoire vive SRAM1 et un gestionnaire d'interruption MFP1. EPROM1 , SRAM1 , MFP1 , lesquels sont tous connectés à BU .
. La mémoire de type Vidéo-RAM à double port désignée par VRAM,
. Le contrôleur d'accès direct mémoire DMAC, connecté d'une part au bus B2 le reliant à la mémoire VRAM et d'autre part au bus B3 le reliant à la partie HIA formée du coprocesseur MPC lequel est lui-même relié au bus PSB. Cette partie HIA que l'on peut appeler également adaptateur hôte, est fonction de la nature du bus interne de l'hôte HOST. Dans le cas où le bus est un bus MULTIBUSII, le coprocesseur MPC est par exemple du type VN82c389 fabriqué par la Société INTEL.
- Le bus B1 qui relie la mémoire VRAM au dispositif adaptateur DEA.
Le microprocesseur CPU1 est, dans l'exemple de réalisation décrit ici, de type 68030 fabriqué par la Firme MOTOROLA.
La mémoire morte effaçable EPROM1 contient les programmes d'autotest et d'initialisation de GPU.
La mémoire SRAM1 , contient le système d'exploitation de CPU1 (Operating System) qui est chargé à l'initialisation de GPU.
- Le système d'exploitation du microprocesseur CPU1 est par exemple du type décrit dans la demande de brevet n° 91 08907 précitée.
- Le contrôleur d'accès direct DMAC est connecté en série d'une part entre la mémoire VRAM et le coprocesseur MPC et d'autre part entre ce dernier et le bus BU de CPU1.
Une description détaillée de ce contrôleur DMAC est donnée dans la demande de brevet français N° 91 15814 déposée le 19.12.91 par la demanderesse sous le titre "Contrôleur de transferts multiples de données entre une pluralité de mémoires et un bus d'ordinateur".
Le dispositif GPU comprend par ailleurs un dispositif d'exclusion logique LU disposé entre DMAC et BU et un autre dispositif d'exclusion logique LI2 disposé entre le bus B1 et le bus BU . Ces dispositifs d'exclusion permettent d'éviter que les données utiles provenant de l'hôte HOST et destinées au réseau RE ne passent par le bus interne BU du microprocesseur CPU1 , ce qui permet d'éviter une diminution des performances de celui-ci.
Le microprocesseur CPU1 est non seulement le cerveau du dispositif de couplage GPU mais aussi le cerveau du processeur de communication NCC : il initialise les transferts de données, met en oeuvre son système d'exploitation et transfère les données utiles entre HOST et DEA et réciproquement tout en dialoguant avec respectivement DEA et PPA avec lesquels il échange des commandes et des status. Il gère donc en temps réel non seulement son propre travail mais également le travail des dispositifs PPA et DEA.
Le dispositif adaptateur DEA est décrit plus en détail dans la demande de brevet français N° 92 1 1054 précitée.
Le dispositif DEA comprend donc :
. Une seconde unité de traitement UT2 composée respectivement du second microprocesseur CPU2 avec son bus interne BI2 auquel sont connectés la seconde mémoire programmable effaçable EPROM2, la mémoire SRAM2 et le gestionnaire d'interruption, à savoir MFP1.
. Le contrôleur d'accès au réseau CAR.
. Le dispositif d'adaptation physique au réseau DAPR.
L'unité de traitement UT2 organise le transfert des trames entre GPU et DEA d'une part et le réseau RE et réciproquement, tout en échangeant des commandes avec le premier microprocesseur CPU1 .
Le contrôleur d'accès au réseau CAR permet le transfert physique des données depuis le bus B1 vers le réseau RE via DAPR et le bus B4 lequel est physiquement connecté à B1.
La manière dont sont transférées les informations entre la mémoire VRAM et le réseau RE, et la manière dont dialoguent CPU1 et CPU2 par l'intermédiaire de files de commandes disposées dans la mémoire VRAM est décrite plus en détail dans la demande N° 92 11054 précitée. En particulier on y décrit les modules logiciels indépendants les uns des autres qui sont disposés dans la mémoire SRAM2 et qui peuvent communiquer d'une part entre eux et d'autre part avec le système d'exploitation du microprocesseur CPU1 par l'intermédiaire de boite à lettres disposées dans la mémoire SRAM2 et/ou par l'intermédiaire des files de commandes disposées dans la mémoire VRAM. Le coprocesseur de communication PPA selon l'invention montré à la figure 2 comprend :
- Une unité de traitement UT3,
- Un dispositif d'accès direct mémoire DMAT.
L'unité de traitement UT3 met en oeuvre le code de communication CC, sous la conduite de son propre système d'exploitation SE3. Ce dernier système d'exploitation peut être par exemple du type CNS-A1 développé et commercialisé par la compagnie demanderesse. L'unité de traitement UT3 va donc chercher dans la mémoire VRAM les données utiles transmises par l'hôte HOST via MPC et DMAC, et y ajoute des caractères de contrôle placés en tête et en début de trame, chacun de ces caractères de contrôle étant conforme aux différents protocoles de communication utilisés respectivement dans les couches C2 à C4 des modèles de référence soit OSI, soit TCP-IP. Le transfert des données utiles depuis la mémoire VRAM jusqu'à l'unité de traitement UT3 et depuis cette unité UT3 jusqu'à la mémoire VRAM (dans ce dernier cas, les données utiles ont été munies de leurs caractères par UT3) est effectué par le dispositif d'accès direct mémoire DMAT.
L'unité de traitement UT3 comprend les éléments fondamentaux suivants :
Le troisième microprocesseur CPU3 muni de son bus interne BI3 auquel est connecté respectivement la mémoire programmable effaçable DRAM3, la mémoire vive SRAM3, le gestionnaire d'interruption MFP3.
Le troisième microprocesseur CPU3 est par exemple du type 68LC040 de la Firme MOTOROLA.
La mémoire SRAM3 est une mémoire dont la capacité est par exemple de 4 méga-octets, alors que la mémoire DRAM3 a une capacité de mémoire de 16 méga-octets.
Le gestionnaire d'interruption MFP3 est par exemple du même type que les gestionnaires d'interruption MFP1 et MFP2. La mémoire SRAM3 contient le code de communication CC, ainsi que le système d'exploitation SE3 du microprocesseur CPU3. On peut donc dire qu'elle est utilisée pour le traitement des protocoles des différentes couches C2 à C4.
La mémoire DRAM3 est utilisée pour former une pluralité d'emplacements mémoire (BUFFER, selon la terminologie anglo-saxone) destinés à recevoir les trames de données utiles qui ont été reçues soit de l'hôte HOST, soit du réseau RE et qui ont été stockées dans la mémoire VRAM. Ces données utiles sont donc stockées provisoirement dans la mémoire DRAM3 en attendant que le microprocesseur CPU3 utilisant le code de communication CC leur ait fourni les caractères de contrôle nécessaires pour renvoyer ces trames soit vers l'hôte HOST, soit vers le réseau RE suivant le cas.
Le dispositif d'accès direct mémoire DMAT comprend un microprocesseur CPU4, une mémoire morte effaçable PR0M4, un gestionnaire d'interruption MFP4 et une mémoire vive SRAM4, tous ces éléments étant connectés au bus interne BI4 de CPU4.
Le microprocesseur CPU4 par exemple du type 68LC040 de la Firme MOTOROLA, alors que la mémoire vive SRAM4 a par exemple une capacité de 4 méga-bits et la mémoire PR0M4 de 256 kilo-bits par exemple. Le gestionnaire MFP4 est du même type 68901 que les gestionnaires équivalents MFP1 à MFP3 des unités de traitement UT1 à UT3. PR0M4 contient les programmes de tests et d'initialisation des microprocesseurs CPU3 et CPU4. Dès l'initialisation de CPU4, celui-ci transfère ces programmes dans sa mémoire associée SRAM4, pour ceux le concernant en propre, d'une part et dans la mémoire SRAM3 pour ceux concernant CPU4, d'autre part.
Dès que ces programmes ont été mis en oeuvre par CPU3 et CPU4, on peut télécharger, depuis l'hôte HOST, via DMAC le code fonctionnel de CPU4 dans SRAM4 et le code fonctionnel de CPU3 dans SRAM3, c'est à dire aussi bien SE3 que CC.
Les deux bus internes BI3 et BI4 de l'unité de traitement UT3 et du dispositif d'accès direct mémoire DMAT sont connectés ensemble à un même bus de données BS. Ce dernier est relié par l'intermédiaire d'un dispositif d'isolation logique LI3 au bus B1. Par ailleurs la partie du bus BI3 plus spécifiquement destinée à véhiculer des commandes, destinées à organiser le dialogue entre les unités de traitement UT1 et UT3, constitue un bus de commande CB qui est relié au bus interne BU de l'unité UT1 par l'intermédiaire du dispositif d'isolation logique LI4. Par ailleurs, MFP4 est également relié au bus CB.
On notera que l'unité de traitement UT3 ne dispose pas de mémoire de type PROM et de ce fait, le microprocesseur CPU3 est bloqué à chaque remise à zéro. Le bus BI3 de l'unité UT3 est contrôlé soit par le dispositif d'accès direct mémoire DMAT soit par le microprocesseur CPU1. Le microprocesseur CPU3 de l'unité UT3 est libéré soit par l'un ou l'autre de ces deux éléments DMAT ou CPU1.
Sur leurs propres bus, les microprocesseurs CPU1 et CPU4 sont maîtres. Par ailleurs, le contrôle du bus BI3 peut être assuré par l'un ou l'autre des trois processeurs CPU1 , CPU4, CPU3. Un dispositif d'arbitrage contrôle l'accès au bus de UT3 par l'un ou l'autre de ces trois microprocesseurs suivant les conditions énumérées ci-dessous. Ce dispositif d'arbitrage est contenu dans l'unité UT3, sur la partie bus de commande de BI3. Il n'est pas représenté pour simplifier, à la figure 2. Le microprocesseur CPU3 obtient le bus BI3 par défaut s'il n'y a pas d'autre demande de la part de l'un ou l'autre des deux autres microprocesseurs. CPU1 et DMAT obtiennent le bus BI3 après arbitrage et acquittement de leurs requêtes d'obtention. Le microprocesseur CPU1 a la priorité sur le dispositif d'accès direct mémoire DMAT.
En résumé, pour l'accès aux différents éléments VRAM, DRAM3, SRAM3, DMAT, les éléments maîtres sont les suivants :
. Pour rappel, le contrôleur d'accès direct mémoire DMAC contrôlé par le microprocesseur CPU1 est maître pour l'accès à la mémoire VRAM depuis le MULTIBUSII PSB.
Le microprocesseur CPU1 est maître pour l'accès à la mémoire VRAM, aux deux mémoires SRAM3 et DRAM3 ainsi que pour le contrôle de DMAT. Le microprocesseur CPU3 n'est maître que pour l'accès à ses mémoires associées SRAM3 ou DRAM3, sous les conditions d'arbitrage énoncées plus haut. Le dispositif DMAT est maître pour l'accès à la mémoire VRAM ou aux mémoires SRAM3 ou DRAM3, dans les conditions d'arbitrage énoncées plus haut.
La figure 4 résume ce qui vient d'être dit plus haut. Sur cette figure on voit par exemple que CPU3 a accès aux deux mémoires SRAM3 et DRAM3 ainsi qu'à son gestionnaire d'interruption MFP3 ce qui est représenté par une flèche grise F1. On voit par ailleurs que le microprocesseur CPU4 du dispositif d'accès direct mémoire DMAT peut avoir accès directement aux mémoires SRAM3 et DRAM3, ce qui est représenté par la flèche F3 de couleur plus claire que les flèches grises relatives au microprocesseur CPU3.
On voit par ailleurs une flèche F2 en traits interrompus inclinés qui représente le chemin de données de commandes entre le microprocesseur CPU1 et les mémoires SRAM3 et DRAM3. On a fait également figurer une double flèche F4 symbolisant la prise de contrôle de la mémoire VRAM par le processeur CPU4.
On considère désormais la figure 3 qui illustre le fonctionnement de l'ensemble constitué par GPU, PPA, DEA.
On suppose tout d'abord que l'on reçoit des trames provenant du réseau RE. Elles traversent tout d'abord le dispositif d'adaptation DEA, c'est à dire le dispositif d'adaptation physique DAPR et ensuite le contrôleur d'accès au réseau CAR, de la manière indiquée dans la demande de brevet N° 92 1 1054 précitée, ce qui est symbolisé par la flèche 1 à la figure 3. Les données des trames sont alors momentanément stockées dans la mémoire FiFo FF2, mémoire se trouvant dans la mémoire VRAM. Ces données sont ensuite envoyées de FF2 vers la mémoire SRAM3 dans les emplacements de celle-ci réservés à cet effet. Le transfert des données, symbolisé par la flèche 2 à la figure 3, est effectué matériellement par le dispositif d'accès direct mémoire DMAT, sous la conduite du microprocesseur CPU4, sous la commande du microprocesseur CPU1 . La manière dont s'effectue le transfert de ces données, à travers le dialogue entre CPU1 et CPU4, est analogue à celle qui est décrite, par exemple dans l'une ou l'autre des demandes de brevet 90 10179 et 90 12826 déposées respectivement le 09.08.90 et le 17.10.90 par la compagnie demanderesse sous le titre "Contrôleur de communication entre un ordinateur et une pluralité de terninaux de type RNIS" et "Contrôleur de communication entre un ordinateur et une pluralité de terminaux appartenant à un réseau de type CSMA/CD". L'une comme l'autre de ces demandes décrivent en effet la manière dont s'effectue le transfert de données à travers le contrôleur de communication entre une base commandée par un premier microprocesseur et une périphérie commandée par un second microprocesseur, ces premier et second microprocesseurs jouant le même rôle que CPU1 et CPU4 ainsi que leurs mémoires associées.
Une fois parvenue dans la mémoire SRAM3, le microprocesseur CPU3 peut alors effectuer le traitement des protocoles des couches C2 à C4, en mettant en oeuvre le code de communication CC. De fait, le microprocesseur CPU3 change les caractères de contrôle placés en tête et queue de trames et qui étaient conformes au protocole utilisé sur le réseau RE en caractères de commandes conformes au protocole des couches C2 à C4 utilisé entre GPU et l'ordinateur HOST.
Dès que ce traitement, qui est en fait une adaptation de protocoles, pour ce qui concerne les couches C2 à C4, est effectué, le microprocesseur CPU1 , qui en est averti par le microprocesseur CPU4 au moyen de commandes qui circulent sur le bus CB, transfère les trames de données ainsi nouvellement constituées depuis la mémoire SRAM3 à la mémoire FiFo FF1 contenue dans la mémoire VRAM. Ceci s'effectue sous la conduite du dispositif d'accès direct mémoire DMAT. Ce transfert est symbolisé par la flèche 3 à la figure 3.
Les données étant ainsi parvenues dans FF2 sont alors expédiées vers l'ordinateur HOST, sur une commande du microprocesseur CPU1 . L'acheminement physique des données est effectué par le dispositif d'accès direct mémoire DMAC d'une manière qui est indiquée dans la demande de brevet français N° 91 15814 précitée. Ce transfert de données entre la mémoire VRAM et l'ordinateur HOST via PSB, est symbolisé par la flèche 4 à la figure 3. Lorsque l'on veut transférer des données entre l'ordinateur HOST et le réseau RE, le chemin parcouru par les données est strictement inverse du précédent. Il est donc symbolisé par les flèches 1 ', 2', 3', 4' à la figure 3. La flèche 1 ' symbolise le transfert de données entre l'hôte HOST et la mémoire VRAM sous le contrôle de CPU1 par l'intermédiaire du dispositif d'accès direct mémoire DMAC, la flèche 2' symbolise le transfert des données entre la mémoire FiFo FF1 et la mémoire SRAM3. Les données sont traitées, par ajustement de protocole des couches C2 à C4 par le dispositif de traitement de données UT3- Une fois ceci fait, les données sont transférées de la mémoire SRAM3 à la mémoire FiFo FF1 , par le chemin de données 3' puis transférées de cette dernière mémoire FiFo vers le réseau RE à travers le bus B1 , B4 et les éléments CAR et DAPR du dispositif adaptateur DEA (flèche 4').

Claims

REVENDICATIONS :
1. Système de transmission de données (NCC) entre un bus (PSB) d'un ordinateur (HOST) et un réseau (RE) comprenant :
1 ) un dispositif universel de couplage (GPU) relié au bus et muni de moyens de communication avec un dispositif adaptateur lui-même connecté au réseau,
Le dispositif universel (GPU) comprenant :
. un premier microprocesseur associé à une première mémoire et exécutant un système d'exploitation contenu dans celle-ci,
. des moyens de transfert de trames depuis le bus vers le dispositif adaptateur et réciproquement, incluant une mémoire à double port disposée entre le bus et le dispositif adaptateur et connecté à ce dernier par l'intermédiaire des dits moyens de communication (FF2, B1 , B4),
2) un coprocesseur de communication (PPA) relié au dispositif universel de couplage (GPU) pour gérer au moins les couches de transport, de réseau et de liaison de données (C4, C3, C2)
caractérisé en ce que le coprocesseur (PPA) comprend
un second microprocesseur (CPU3) mettant en oeuvre pour chaque couche (C2 à C4), le protocole de communication correspondant en munissant chaque trame de données, d'informations de contrôle conformes à ce protocole, son bus interne ayant un bus de données (BI3) connecté aux dits moyens de communication, et un bus de commande au bus interne (BU ) du premier microprocesseur,
un troisième microprocesseur (CPU4) gérant par accès direct mémoire le transfert de données entre le second microprocesseur (CPU3) et la mémoire double port (VRAM).
2. Système de transmission selon la revendication 1 , caractérisé en ce que le second microprocesseur (CPU3) est associé à une seconde mémoire (SRAM4) connectée à son bus, contenant un code de communication (CC) comportant les dites couches de communication (C4,C3,C2) communiquant entre elles par l'intermédiaire de fonctions primitives (ST2,ST3), la couche de transport communiquant avec les applications externes au système par l'intermédiaire d'une interface de communication (SH) avec l'ordinateur (HOST).
3. Système de transmission selon la revendication 2, caractérisé en ce que le second microprocesseur (CPU3) est associé à une troisième mémoire (DRAM3) comprenant une pluralité d'emplacements mémoire destinés à recevoir les trames de données utiles provenant soit de l'ordinateur (HOST) soit du réseau via la mémoire à double port et à les stocker pendant que le second microprocesseur les munit des informations de contrôle propres à chaque couche en mettant en oeuvre le code de communication.
4. Système de transmission selon les revendications 1 , 3 caractérisé en ce que le troisième microprocesseur comprend une mémoire morte effaçable (PR0M4) reliée au bus interne (BI4) de ce dernier et comprenant les programmes de tests et d'initialisation des second et troisième microprocesseurs (CPU3, CPU4).
5. Système de transmission selon la revendication 4, caractérisé en ce qu'il comprend une quatrième mémoire (SRAM4) associée au troisième microprocesseur, reliée au bus interne (BI4) de ce dernier dont la partie bus de donnée est reliée aux dits moyens de communication et la partie bus de commande au bus interne (BU ) du premier microprocesseur, la quatrième mémoire (SRAM4) recevant les dits programmes de test du troisième microprocesseur provenant de la mémoire morte (PR0M4) dès l'initialisation du troisième microprocesseur, ce dernier transférant dans le même temps les programmes de tests du second microprocesseur dans la second mémoire (SRAM3).
6. Système suivant la revendication 5, caractérisé en ce que les premier et troisième microprocesseurs (CPU1 , CPU4) sont maîtres sur leurs propres bus internes (BU , BI4), le contrôle du bus interne (BI3) du second microprocesseur pouvant être assuré par l'un quelconque des trois microprocesseurs, un dispositif d'arbitrage placé en série sur le bus interne (BI3) du second microprocesseur, contrôlant l'accès à ce dernier en tenant compte que les ordres de priorité sont affectés respectivement de la priorité la plus forte à la plus faible, au premier, au troisième et au second microprocesseurs (CPU1 , CPU4, CPU3).
PCT/FR1993/001286 1992-12-22 1993-12-21 Systeme de transmission de donnees entre un bus d'ordinateur et un reseau WO1994015295A1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP6514879A JPH07504286A (ja) 1992-12-22 1993-12-21 コンピュータ・バスとネットワークとの間のデータ伝送用システム
US08/284,671 US5642482A (en) 1992-12-22 1993-12-21 System for network transmission using a communication co-processor comprising a microprocessor to implement protocol layer and a microprocessor to manage DMA
EP94902848A EP0627102A1 (fr) 1992-12-22 1993-12-21 Systeme de transmission de donnees entre un bus d'ordinateur et un reseau

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9215521A FR2699706B1 (fr) 1992-12-22 1992-12-22 Système de transmission de données entre un bus d'ordinateur et un réseau.
FR92/15521 1992-12-22

Publications (1)

Publication Number Publication Date
WO1994015295A1 true WO1994015295A1 (fr) 1994-07-07

Family

ID=9436954

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR1993/001286 WO1994015295A1 (fr) 1992-12-22 1993-12-21 Systeme de transmission de donnees entre un bus d'ordinateur et un reseau

Country Status (5)

Country Link
US (1) US5642482A (fr)
EP (1) EP0627102A1 (fr)
JP (1) JPH07504286A (fr)
FR (1) FR2699706B1 (fr)
WO (1) WO1994015295A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1233346A1 (fr) * 2001-02-14 2002-08-21 Micronas GmbH Coprocesseur réseau pour véhicule automobile

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2702578B1 (fr) * 1993-03-12 1995-04-14 Bull Sa Système de communication avec un réseau.
JPH09293056A (ja) * 1996-04-25 1997-11-11 Aiwa Co Ltd データ処理装置
US6226680B1 (en) * 1997-10-14 2001-05-01 Alacritech, Inc. Intelligent network interface system method for protocol processing
US6389479B1 (en) 1997-10-14 2002-05-14 Alacritech, Inc. Intelligent network interface device and system for accelerated communication
US8539112B2 (en) 1997-10-14 2013-09-17 Alacritech, Inc. TCP/IP offload device
US7284070B2 (en) * 1997-10-14 2007-10-16 Alacritech, Inc. TCP offload network interface device
US7089326B2 (en) * 1997-10-14 2006-08-08 Alacritech, Inc. Fast-path processing for receiving data on TCP connection offload devices
US6470415B1 (en) 1999-10-13 2002-10-22 Alacritech, Inc. Queue system involving SRAM head, SRAM tail and DRAM body
US6687758B2 (en) 2001-03-07 2004-02-03 Alacritech, Inc. Port aggregation for network connections that are offloaded to network interface devices
US6658480B2 (en) 1997-10-14 2003-12-02 Alacritech, Inc. Intelligent network interface system and method for accelerated protocol processing
US6757746B2 (en) * 1997-10-14 2004-06-29 Alacritech, Inc. Obtaining a destination address so that a network interface device can write network data without headers directly into host memory
US6427173B1 (en) 1997-10-14 2002-07-30 Alacritech, Inc. Intelligent network interfaced device and system for accelerated communication
US7042898B2 (en) 1997-10-14 2006-05-09 Alacritech, Inc. Reducing delays associated with inserting a checksum into a network message
US8621101B1 (en) 2000-09-29 2013-12-31 Alacritech, Inc. Intelligent network storage interface device
US7167927B2 (en) * 1997-10-14 2007-01-23 Alacritech, Inc. TCP/IP offload device with fast-path TCP ACK generating and transmitting mechanism
US7237036B2 (en) * 1997-10-14 2007-06-26 Alacritech, Inc. Fast-path apparatus for receiving data corresponding a TCP connection
US7185266B2 (en) 2003-02-12 2007-02-27 Alacritech, Inc. Network interface device for error detection using partial CRCS of variable length message portions
US6434620B1 (en) 1998-08-27 2002-08-13 Alacritech, Inc. TCP/IP offload network interface device
US7174393B2 (en) * 2000-12-26 2007-02-06 Alacritech, Inc. TCP/IP offload network interface device
US6427171B1 (en) 1997-10-14 2002-07-30 Alacritech, Inc. Protocol processing stack for use with intelligent network interface device
US6697868B2 (en) 2000-02-28 2004-02-24 Alacritech, Inc. Protocol processing stack for use with intelligent network interface device
US8782199B2 (en) 1997-10-14 2014-07-15 A-Tech Llc Parsing a packet header
US7076568B2 (en) * 1997-10-14 2006-07-11 Alacritech, Inc. Data communication apparatus for computer intelligent network interface card which transfers data between a network and a storage device according designated uniform datagram protocol socket
US7133940B2 (en) * 1997-10-14 2006-11-07 Alacritech, Inc. Network interface device employing a DMA command queue
US6591302B2 (en) 1997-10-14 2003-07-08 Alacritech, Inc. Fast-path apparatus for receiving data corresponding to a TCP connection
US7664883B2 (en) * 1998-08-28 2010-02-16 Alacritech, Inc. Network interface device that fast-path processes solicited session layer read commands
US6877036B1 (en) 1999-09-24 2005-04-05 Akamba Corporation System and method for managing connections between a client and a server
US6801927B1 (en) 1999-09-24 2004-10-05 Akamba Corporation Network adaptor card with reverse proxy and cache and method implemented therewith
US6308238B1 (en) 1999-09-24 2001-10-23 Akamba Corporation System and method for managing connections between clients and a server with independent connection and data buffers
US8019901B2 (en) * 2000-09-29 2011-09-13 Alacritech, Inc. Intelligent network storage interface system
US6720074B2 (en) * 2000-10-26 2004-04-13 Inframat Corporation Insulator coated magnetic nanoparticulate composites with reduced core loss and method of manufacture thereof
US9037741B2 (en) * 2001-03-30 2015-05-19 Rpx Corporation System with multiple network protocol support
US20020143969A1 (en) * 2001-03-30 2002-10-03 Dietmar Loy System with multiple network protocol support
DE10142537A1 (de) * 2001-08-30 2003-03-20 Adp Gauselmann Gmbh Verfahren zur Aktivierung einer in einem Gehäuse angeordneten Steuereinheit, die gegen ein Ausspähen von Daten geschützt ist
US20030121835A1 (en) * 2001-12-31 2003-07-03 Peter Quartararo Apparatus for and method of sieving biocompatible adsorbent beaded polymers
US7543087B2 (en) 2002-04-22 2009-06-02 Alacritech, Inc. Freeing transmit memory on a network interface device prior to receiving an acknowledgement that transmit data has been received by a remote device
US7496689B2 (en) * 2002-04-22 2009-02-24 Alacritech, Inc. TCP/IP offload device
US7191241B2 (en) * 2002-09-27 2007-03-13 Alacritech, Inc. Fast-path apparatus for receiving data corresponding to a TCP connection
US7337241B2 (en) * 2002-09-27 2008-02-26 Alacritech, Inc. Fast-path apparatus for receiving data corresponding to a TCP connection
US20040088262A1 (en) * 2002-11-06 2004-05-06 Alacritech, Inc. Enabling an enhanced function of an electronic device
US7340553B2 (en) * 2003-03-12 2008-03-04 Nxp B.V. Data processing device and method for transferring data
US6996070B2 (en) * 2003-12-05 2006-02-07 Alacritech, Inc. TCP/IP offload device with reduced sequential processing
US8248939B1 (en) 2004-10-08 2012-08-21 Alacritech, Inc. Transferring control of TCP connections between hierarchy of processing mechanisms
US7738500B1 (en) 2005-12-14 2010-06-15 Alacritech, Inc. TCP timestamp synchronization for network connections that are offloaded to network interface devices
US8756402B2 (en) * 2007-09-14 2014-06-17 Intel Mobile Communications GmbH Processing module, processor circuit, instruction set for processing data, and method for synchronizing the processing of codes
US8539513B1 (en) 2008-04-01 2013-09-17 Alacritech, Inc. Accelerating data transfer in a virtual computer system with tightly coupled TCP connections
US8341286B1 (en) 2008-07-31 2012-12-25 Alacritech, Inc. TCP offload send optimization
US9306793B1 (en) 2008-10-22 2016-04-05 Alacritech, Inc. TCP offload device that batches session layer headers to reduce interrupts as well as CPU copies
US10628274B2 (en) * 2017-12-05 2020-04-21 Qualcomm Incorporated Self-test during idle cycles for shader core of GPU

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0410860A1 (fr) * 1989-07-27 1991-01-30 Bull S.A. Dispositif passerelle de connexion d'un bus d'ordinateur à un réseau fibre optique en forme d'anneau

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2476349A1 (fr) * 1980-02-15 1981-08-21 Philips Ind Commerciale Systeme de traitement de donnees reparti
US5237693A (en) * 1990-04-04 1993-08-17 Sharp Kabushiki Kaisha System for accessing peripheral devices connected in network
US5151899A (en) * 1991-02-11 1992-09-29 Digital Equipment Corporation Tracking sequence numbers in packet data communication system
AU3416293A (en) * 1991-12-23 1993-07-28 Network Express System for internetworking data terminal equipment through a switched digital network
US5278834A (en) * 1992-05-26 1994-01-11 Alcatel Network Systems, Inc. Method for implementing a data communication protocol stack
US5434976A (en) * 1992-09-28 1995-07-18 Standard Microsystems Corporation Communications controller utilizing an external buffer memory with plural channels between a host and network interface operating independently for transferring packets between protocol layers

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0410860A1 (fr) * 1989-07-27 1991-01-30 Bull S.A. Dispositif passerelle de connexion d'un bus d'ordinateur à un réseau fibre optique en forme d'anneau
FR2650412A1 (fr) * 1989-07-27 1991-02-01 Bull Sa Dispositif passerelle de connexion d'un bus d'ordinateur a un reseau fibre optique en forme d'anneau

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
H. KANAKIA ET AL: "The VMP Network Adapter Board (NAB): High-Performance Network Communication for Multiprocessors", COMPUTER COMMUNICATION REVIEW - SIGCOMM'88 SYMPOSIUM: COMMUNICATIONS, ARCHITECTURES AND PROTOCOLS, vol. 18, no. 4, August 1988 (1988-08-01), NEW YORK, NY, US, pages 175 - 187 *
T. F. LAPORTA ET AL: "Architectures, Features and Implementation of High-Speed Transport Protocols", IEEE NETWORK, vol. 4, no. 2, May 1991 (1991-05-01), NEW YORK, NY, US, pages 14 - 22 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1233346A1 (fr) * 2001-02-14 2002-08-21 Micronas GmbH Coprocesseur réseau pour véhicule automobile
US7260668B2 (en) 2001-02-14 2007-08-21 Micronas Gmbh Network co-processor for vehicles

Also Published As

Publication number Publication date
JPH07504286A (ja) 1995-05-11
FR2699706B1 (fr) 1995-02-24
US5642482A (en) 1997-06-24
FR2699706A1 (fr) 1994-06-24
EP0627102A1 (fr) 1994-12-07

Similar Documents

Publication Publication Date Title
WO1994015295A1 (fr) Systeme de transmission de donnees entre un bus d'ordinateur et un reseau
EP0493215B1 (fr) Architecture informatique distribuée utilisant un réseau local de type CSMA/CD
EP0524070B1 (fr) Dispositif universel de couplage d'un bus d'ordinateur à un contrôleur d'un groupe de périphériques
US7995609B2 (en) Integrated server module and method of resource management therefor
EP0728392B1 (fr) Systeme de communication avec un reseau incluant un ensemble d'administration
EP0029394A1 (fr) Procédé et dispositif de comptabilisation et de gestion du nombre de messages constitués à la suite d'événements asynchrones émis par des appareils périphériques
FR2645989A1 (fr) Coupleur multifonctions entre une unite centrale d'ordinateur et les differents organes peripheriques de ce dernier
EP0524071A1 (fr) Système d'exploitation pour dispositif universel de couplage d'un bus d'ordinateur à une liaison spécifique d'un réseau
EP0575237B1 (fr) Système de transmission de données entre un bus d'ordinateur et une mémoire de masse
EP0588703B1 (fr) Système de transmission de données entre un bus d'ordinateur et un réseau en forme d'anneau à trés haut débit
EP0410860B1 (fr) Dispositif passerelle de connexion d'un bus d'ordinateur à un réseau fibre optique en forme d'anneau
EP0615370B1 (fr) Système de communication avec un réseau
EP0470875B1 (fr) Contrôleur de communication entre un ordinateur et une pluralité de terminaux de type RNIS
EP0481896B1 (fr) ContrÔleur de communication entre un ordinateur et une pluralité de terminaux, appartenant à un réseau de type CSMA/CD
CA2102537C (fr) Outil de simulation d'un code de reseau
EP0547976B1 (fr) Dispositif universel de couplage comprenant un contrÔleur de transfert multiple de données entre une pluralité de mémoires et un bus d'ordinateur
US20020110131A1 (en) System and method for arbitrating access to fibre channel system for storage or LAN interface applications
FR2679347A1 (fr) Systeme logiciel et son procede de realisation.
FR2708116A1 (fr) Système de communication avec un réseau et protocole d'accès aux fournisseurs de transports appartenant à ce système.

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP US

AL Designated countries for regional patents

Kind code of ref document: A1

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

WWE Wipo information: entry into national phase

Ref document number: 08284671

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 1994902848

Country of ref document: EP

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWP Wipo information: published in national office

Ref document number: 1994902848

Country of ref document: EP

WWW Wipo information: withdrawn in national office

Ref document number: 1994902848

Country of ref document: EP