DE69833124T2 - Adaptives prozessorsystem - Google Patents

Adaptives prozessorsystem Download PDF

Info

Publication number
DE69833124T2
DE69833124T2 DE69833124T DE69833124T DE69833124T2 DE 69833124 T2 DE69833124 T2 DE 69833124T2 DE 69833124 T DE69833124 T DE 69833124T DE 69833124 T DE69833124 T DE 69833124T DE 69833124 T2 DE69833124 T2 DE 69833124T2
Authority
DE
Germany
Prior art keywords
dspu
applications
processing unit
connection
database
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.)
Expired - Lifetime
Application number
DE69833124T
Other languages
English (en)
Other versions
DE69833124D1 (de
Inventor
Jyri Suvanen
Jari Korhonen
Matti LEHTIMÄKI
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.)
Nokia Oyj
Original Assignee
Nokia Oyj
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=8549575&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE69833124(T2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Nokia Oyj filed Critical Nokia Oyj
Publication of DE69833124D1 publication Critical patent/DE69833124D1/de
Application granted granted Critical
Publication of DE69833124T2 publication Critical patent/DE69833124T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime 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
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5066Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs

Description

  • Hintergrund der Erfindung
  • Die Erfindung betrifft Prozessorsysteme, die in den Netzelementen von Telekommunikationssystemen verwendet werden, und insbesondere die Zuweisung und Konfiguration von Ressourcen an digitale Signalprozessoren (dsp).
  • Mit Bezug auf 1 umfasst eine digitale Signalverarbeitungseinheit DSPU, die eine Verbindung 11 bedient, zusätzlich zu dem eigentlichen Prozessor (DSP) eine Schnittstelle I/O (Input/Output, Eingang/Ausgang) zu der Verbindung, und Progammspeicher, der üblicherweise Festspeicher ROM und Direktzugriffsspeicher RAM umfasst (und andere unterstützende Schaltungen, wie einen Taktgeber und Unterbrecher-Schaltkreise, die jedoch nicht für die Erfindung relevant sind). Die Verbindung 11 ist in zwei Teile aufgeteilt: der Teil, auf dem eigentliche Informationen übertragen werden, ist mit 11 gekennzeichnet, und die zugehörige Signalisierung ist mit 112 gekennzeichnet.
  • Ein Problem in einem System dieser An ist, dass die Konfiguration unflexibel ist. Wenn es mehrere Prozessoreinheiten DSPU gibt und verschiedene Anwendungen von diesen ausgeführt werden, muss der Programmspeicher ROM jeder Prozessoreinheit ausreichend groß sein, um alle Anwendungen zu speichern. Die Anwendungen schließen zum Beispiel verschiedene Sprachkodierungsverfahren, Verfahren zum Komprimieren und Dekomprimieren eines Videosignals, Echokompensation etc. ein. Da im Stand der Technik die Anwendungen entweder dauerhaft oder semipermanent (z.B. in wiederbeschreibbarem ROM) installiert sind, umfassen die bekannten Prozessoren keine schnelle Schnittstelle zum Aktualisieren der Anwendung. Folglich tritt ein weiteres Problem auf wenn eine Anwendung aktualisiert wird, kann die Prozessoreinheit nicht benutzt werden.
  • Damit nicht alle Anwendungen in allen Prozessoreinheiten benötigt werden, sind die Prozessoreinheiten typischerweise in Zusammenschlüssen bzw. Gruppen angeordnet. Die Datenströme, die eine bestimmte Anwendung benötigen, werden zu der Gruppe geleitet, der die betreffende Anwendung bedient. Das Problem ist, dass die Gruppen dauerhaft sind, so dass die Verteilung verschiedener Datenströme nicht berücksichtigt werden kann. US-Patent 5577105 offenbart eine Übertragung von Betriebsparametern an eine Verarbeitungseinheit.
  • Kurze Beschreibung der Erfindung
  • Das Ziel der Erfindung ist, ein Verfahren und ein System, das das Verfahren implementiert, bereitzustellen, welche die vorstehenden Probleme lösen. Das Ziel der Erfindung wird durch ein Verfahren und ein System erreicht, die dadurch gekennzeichnet sind, was in den unabhängigen Ansprüchen angegeben ist. Die bevorzugten Ausführungsformen der Erfindung werden in den abhängigen Ansprüchen beansprucht.
  • Die grundlegende Idee der Erfindung ist, ein breitbandiges paketvermitteltes Telekommunikationsnetz zu verwenden, vorzugsweise ein ATM-Netz, um Anwendungen von einer gemeinsamen Datenbank eines Multi-Prozessorsystems zu Verarbeitungseinheiten zu übertragen, mindestens zu Beginn jeder Verbindung und wenn nötig nochmals während der Verbindung. Vorzugsweise wird das Protokoll des ATM-Netzes verwendet und keine Umwandlung auf Protokolle höherer Ebenen des OSI-Modells benötigt.
  • Eine erste Ausführungsform des beanspruchten Verfahrens und des Systems beruht darauf, mehrere Verarbeitungseinheiten unter einer gemeinsamen Steuereinheit anzuordnen. Die Anwendungen sind in einer gemeinsamen Datenbank gesammelt. Bei jeder Verbindung werden die Anwendungen (Dienste), die von der Verbindung angefordert bzw. benötigt werden, identifiziert und danach unter der Steuerung der Steuereinheit auf eine verfügbare Verarbeitungseinheit geladen. Die Verarbeitungseinheit und die Datenbank, welche die Anwendungen enthält, sind unter Verwendung schneller Verbindungstechnologie miteinander verbunden, vorzugsweise über ein breitbandiges Paketnetz wie das ATM. Hier bedeutet die schnelle Verbindungstechnologie, dass eine Anwendung von der Datenbank in die Verarbeitungseinheit während der Verbindung geladen werden kann, ohne dass der Benutzer, der die Verbindung nutzt, irgendeine störende Verzögerung bemerkt.
  • Die Technologie der Erfindung führt zu einer flexiblen Verwendung der Ressourcen, da in jeder Verarbeitungseinheit nur Speicher verwendet wird, um die größte Anwendung (oder einen Satz von Anwendungen) zu speichern. Daher müssen nicht alle Anwendungen in dem Speicher gespeichert werden. Jede beliebige Verarbeitungseinheit kann jede beliebige Verbindung bedienen, da alle Anwendungen für alle Prozessoren verfügbar sind. Die geeignete Speichermenge in jeder Verarbeitungseinheit ist leicht größer (z.B. 30 auf 100%) als die größte gleichzeitig benötigte Speichermenge oder die Speichermenge, die von der größten einzelnen Anwendung oder dem größten Satz von Anwendungen benötigt wird, aber dennoch deutlich kleiner als die zusammengefasste Speichermenge, die von den verschiedenen Anwendungen benötigt wird. Ein Satz von Anwendungen meint Anwendungen, die mit ein und derselben Verbindung gleichzeitig verknüpft sind. Im GSM zum Beispiel könnte ein Satz von Anwendungen einen Vollraten-Codec und Echokompensation umfassen.
  • Die Technologie der Erfindung ist auch in Bezug auf Modifikationen und Aktualisierungen zuverlässig. Wenn eine Anwendung aktualisiert wird, kann die ältere Version der Anwendung beibehalten werden, auch wenn eine neuere Version in die Datenbank geladen wird. Wenn die neue Anwendung nicht richtig funktioniert, kann die ältere Version dann sofort benutzt werden. Wenn Anwendungen aktualisiert werden, wird keine der Verarbeitungseinheiten nicht benutzt. Da das Laden aller Anwendungen aller Verbindungen von dem gemeinsamen Controller gesteuert wird, wird ein weiterer Vorteil erreicht: die Anzahl von Malen, die jede Anwendung verwendet wird, kann einfach gezählt werden, falls der Betreiber Statistiken vorbereiten möchte oder wenn der Bereitsteller der Anwendungen für die Anzahl von Malen der Verwendung Kosten berechnen möchte, anstelle eines Pauschalbetrags.
  • Eine zweite Ausführungsform des Verfahrens und des Systems der Erfindung ist ein Kompromiss zwischen dem Stand der Technik (in dem Anwendungen sich in dauerhaften Speichern befinden) und der ersten Ausführungsform der Erfindung (in der die Anwendungen getrennt für jede Verbindung geladen werden). Der Kompromiss wird zum Beispiel erreicht, indem verfolgt wird, welche Verarbeitungseinheiten verfügbar sind und welche Anwendungen in welchen Verarbeitungseinheiten geladen wurden. Zu Beginn jeder Verbindung (und, wo nötig, auch während der Verbindung) werden die von der betreffenden Verbindung benötigten Anwendungen identifiziert, und eine verfügbare Verarbeitungseinheit, auf die ein so großer Teil wie möglich der benötigten Anwendungen geladen wurde, wird für die Verbindung ausgewählt. Die fehlenden Anwendungen werden dann von der Datenbank auf die Verarbeitungseinheit geladen.
  • Die Definition von „ein so großer Teil wie möglich" kann auf mindestens zwei Arten ausgelegt werden: entweder müssen so wenig Anwendungen wie möglich auf die gewählte Verarbeitungseinheit geladen werden, oder eine Anwendung (eine Reihe von Anwendungen), die so klein wie möglich ist, muss geladen werden. Wenn eine Verarbeitungseinheit mehrere Verbindungen bedienen kann, dann ist die „verfügbare Verarbeitungseinheit" hier eine Einheit, die mindestens etwas Verarbeitungskapazität verfügbar hat.
  • Neben den vorstehend beschriebenen Vorteilen hat die zweite Ausführungsform auch den Vorteil, dass wenn die nötigen Anwendungen bereits in eine Verarbeitungseinheit geladen wurden, keine Anwendungen auf die Verarbeitungseinheiten geladen werden müssen. Die ist besonders für den Netzbetreiber in verteilten Systemen nützlich, in denen sich die Datenbank und die Verarbeitungseinheiten weit entfernt voneinander befinden, und in denen der Betreiber für die Netzkapazität bezahlen muss, die zum Übertragen der Anwendungen reserviert wird.
  • Auch wenn der maximale Vorteil durch die Erfindung erreicht wird, wenn es mehrere Verarbeitungseinheiten gibt, kann die Technologie der Erfindung auch angewendet werden, wenn es nur eine Verarbeitungseinheit gibt, wenn erwartet werden kann, dass die Anzahl der Verarbeitungseinheiten ansteigt (z.B. wenn die Verkehrslast ansteigt). Wenn es nur eine Verarbeitungseinheit gibt, bedeutet das Auswählen einer verfügbaren Verarbeitungseinheit einfach, dass überprüft wird, ob bereits alle Kapazität der Verarbeitungseinheit in Benutzung ist.
  • Kurze Beschreibung der Zeichnungen
  • Im folgenden wird die Erfindung mittels bevorzugter Ausführungsformen und unter Bezugnahme auf die beigefügten Zeichnungen ausführlicher beschrieben, wobei
  • 1 ein Blockdiagramm einer bereits bekannten digitalen Verarbeitungseinheit ist, und
  • 2 ein Blockdiagramm eines Systems gemäß der vorliegenden Erfindung ist.
  • Ausführliche Beschreibung der Erfindung
  • Das System gemäß der zweiten Ausführungsform der Erfindung, welches in 2 dargestellt ist, umfasst eine Datenbank DB, auf die die Anwendungen geladen werden, und eine Steuereinheit oder einen Controller CTRL, sowie Verarbeitungseinheiten DSPU. Das System umfasst außerdem einen Breitband-Übertragungsweg, der verschiedene Blöcke kombiniert, wobei der Weg vorzugsweise ein ATM-Vermittlungssystem 22 ist. Die Datenbank DB umfasst, d.h. in der Datenbank sind gespeichert, alle Anwendungen, die in dem System ausgeführt werden sollen (verschiedene Codierungsalgorithmen, etc.). Es ist möglich, die in der Datenbank DB enthaltenen Anwendungen zum Beispiel mittels einer Tabelle 28 zu verfolgen, welche für jede Anwendung mindestens eine Kennung App1_1 bis App1_n und die Größe der Anwendung zeigt, d.h. die Menge an Speicher, die von der Erfindung benötigt wird. Die Tabelle kann auch den Ort jeder Anwendung in der Datenbank angeben (außer die Datenbank DB akzeptiert die Kennung App1_1 bis App1_n der Anwendung als eine solche Angabe der betreffenden Anwendung. Die Tabelle kann auch verwendet werden, um die Versionsnummer der Anwendungen aufrechtzuerhalten.
  • Die Verarbeitungseinheiten DSPU entspricht im wesentlichen der bereits bekannten Verarbeitungseinheit, die in 1 dargestellt ist, doch Festwertspeicher ROM wird hier nur benötigt, um Anwendungen von der Datenbank DB über das Vermittlungssystem 22 zu übertragen. Das ROM entspricht daher hauptsächlich einem anfänglichen oder durch Ureingabe geladenen Lader eines gemeinsamen Computers. Das Laden einer Anwendung von der Datenbank auf die Verarbeitungseinheiten findet bei einer optimalen Rate statt, wenn das Protokoll des Netzes selbst (z.B. ATM-Netz) verwendet werden kann und weder Zeit noch Ressourcen dazu verschwendet werden müssen, die Protokolle in die Protokolle der höheren Ebenen (z.B. TCP/IP) des OSI-Modells umzuwandeln. Es ist jedoch ratsam, das Protokoll des ATM-Netzes mit Fehlererkennung und Neuübertragung für den Fall, dass ein Paket verloren oder verzerrt ist, zu ergänzen.
  • Die Ressourcenverwaltung wird von dem Controller CTRL gesteuert. Bezugsnummer 21 kennzeichnet eine Schnittstelle zwischen dem Controller CTRL und dem Vermittlungssystem 22, und die Schnittstelle umfasst eine Steuerverbindung 211 , zum Steuern des Vermittlungssystems 22, Betrieb und Verwaltung (Operation and Management) OAM 212 , und eine Signalisierungsverbindung 213 . Zu Beginn jeder Verbindung identifiziert der Controller CTRL die Anwendungen, die von jeder Verbindung C1 bis Cn benötigt werden, zum Beispiel auf der Grundlage der mit der Verbindung verknüpften Signalisierungsverbindung. Die Identifizierung der Anwendungen, die von einer Verbindung benötigt werden, ist für einen Fachmann ein Standardvorgang, und in den Systemen nach dem Stand der Technik würde eine verfügbare Verarbeitungseinheit, deren Software die erforderliche Anwendung umfasst, für die Verbindung auf der Grundlage der Identifizierung zugewiesen werden. Gemäß der ersten Ausführungsform der Erfindung sind alle Verarbeitungseinheiten gleich; und der Controller CTRL weist jede verfügbare Verarbeitungseinheit DSPU für die betreffende Verbindung zu. Gemäß der zweiten Ausführungsform der Erfindung überprüft der Controller, ob die nötigen Anwendungen in eine verfügbare Verarbeitungseinheit geladen wurden. Der Controller leitet dann das Laden aller nötigen Anwendungen von der Datenbank DB an die Verarbeitungseinheit ein, welche die betreffende Verbindung bedient. Referenznummer 23 kennzeichnet eine Schnittstelle zwischen der Datenbank DB und dem Vermittlungssystem, und die Schnittstelle umfasst einen Breitband-Übertragungsweg 231 zum Laden von Anwendungen über das Vermittlungssystem 22 auf die Verarbeitungseinheiten DSPU, und eine Signalisierungsverbindung 232 , durch welche der Controller CTRL die Datenbank darüber benachrichtigt, welche Anwendungen in welche Verarbeitungseinheiten geladen werden sollen.
  • Der Controller CTRL kann Informationen über die Zuweisung der Verarbeitungseinheiten führen, zum Beispiel mittels einer Tabelle 29, welche für jede Verarbeitungseinheit die Menge an Speicher (wenn die Menge nicht für alle Verarbeitungseinheiten die gleiche ist) zeigt, die Verbindungen, die die Einheit bedient und die Anwendungen, die sie enthält. Nun angenommen, dass in 2 jede Verarbeitungseinheit zwei Verbindungen bedienen kann, und dass ein Bedarf entsteht, eine neue Verbindung zu bedienen, die Anwendungen App1_2 und App1_3 benötigt. Verarbeitungseinheit DSPU3 hat die Anwendungen in ihrem Speicher gespeichert, doch ihre gesamte Verarbeitungskapazität wurde bereits zugewiesen. Der Verarbeitungseinheit DSPU1 fehlt die Anwendung App1_3, und der Verarbeitungseinheit DSPU2 fehlt die Anwendung App1_2. Wenn App1_3 vermutlich weniger Speicher benötigt als App1_2, dann wird die geringste Lademenge benötigt, wenn DSPU1 für die neue Verbindung zugewiesen wird und App1_3 darauf geladen wird. (Die Tabelle 28 aus 2 ist tatsächlich eine vereinfachte Darstellung: die Größe einer Anwendung in der Datenbank DB ist nicht immer die gleiche wie die Gesamtspeichermenge, die von der Anwendung benötigt wird. In der Realität benötigen die Anwendungen auch Datenspeicher, d.h. Arbeitsplatz, dessen Menge bei der Speicherverwaltung der Verarbeitungseinheit berücksichtigt werden muss, der jedoch nicht auf die Verarbeitungseinheiten geladen werden muss. Wenn in dem RAM der Verarbeitungseinheit nicht genügend Platz vorhanden ist, dass die neuen Anwendungen geladen werden können, kann der Controller der Verarbeitungseinheit befehlen, aus dem Speicher eine Anwendung zu löschen, die in diesem Moment nicht benötigt wird. Alternativ ist es möglich, zu überprüfen, ob es in dem Speicher irgendeiner andere Verarbeitungseinheit genügend Platz gibt, dass die Anwendung geladen werden kann.
  • Der Controller CTRL kann die Anwendung von der Datenbank DB einen Block nach dem anderen laden und sie darauf an die Verarbeitungseinheit DSPU weiterleiten. Alternativ kann der Controller CTRL die Übertragung der Anwendung direkt von der Datenbank auf die Verarbeitungseinheit starten, wenn die Datenbank DB und die Verarbeitungseinheiten ausreichend unabhängig sind.
  • Das Vermittlungssystem 22 und der Controller CTRL können ansonsten herkömmliche Teile des ATM-Vermittlungssystems sein, doch der Controller CTRL wird mit den oben beschriebenen Operationen ergänzt. Der Controller CTRL wird vorzugsweise unter Verwendung eines digitalen Prozessors implementiert. Die Programme des Controllers können sich entweder in dem Controller selbst oder in der Datenbank DB befinden, aus der der Controller sie abruft, wenn er aktiviert wird und/oder wenn er auf der Grundlage der Signalisierungsverbindung 213 feststellt, dass die Software aktualisiert wurde.
  • Der Controller CTRL und die Datenbank DB sind als getrennte Einheiten gezeigt. Die Unterteilung ist eher eine logische als eine physikalische, und sie hilft dabei, die Funktionen zu verdeutlichen, die in der Anordnung der Erfindung ausgeführt werden. 2 könnte auch so gezeichnet werden, dass sie die beiden Elemente kombiniert zeigt, wodurch es möglich wäre, von einer „intelligenten Datenbank" zu sprechen.
  • Die Blöcke aus 2 können sich in ein und demselben Netzelement befinden. Ein Beispiel für ein solches Element könnte ein Basisstationcontroller oder eine Codeumsetzungs-Einheit eines Mobilsystems sein, oder ein Video-Abruf-Server (video on demand). Da das System gemäß der Erfindung die Ausnutzung der Ressourcen verbessert, wird der maximale Vorteil erreicht, wenn eine so große Anzahl von Anwendungen wie möglich, zum Beispiel verschiedene Codierungsmethoden und Echokompensation, in ein und demselben System konzentriert sind.
  • Eine Alternative zu dem vorstehenden kompakten System wäre eine geographische Verteilung der Blöcke aus 2, zum Beispiel auf eine solche Weise, dass der gemeinsame Controller und die Datenbank eine große Anzahl von Verarbeitungseinheiten bedienen würden, die sich weit entfernt befinden. Ein bevorzugtes System ist, dass der Ausrüstungsversorger die Datenbank DB führt, aber der Betreiber die entsprechenden Anwendungen in ihrem Cache-Speicher ablegt. In dem System aus 2 könnte sich der Cache entlang der Verbindung 23 (oder 21) befinden. Dies ist ein relativ einfacher Weg, um Redundanz bereitzustellen: eine abgesicherte Datenbank bedient alle Verarbeitungseinheiten eines Netzes oder eines Teils des Netzes. Dies ermöglicht es auch, dass die Netzelemente bei Spitzenbelastungen Verarbeitungseinheiten voneinander „ausleihen".
  • Die vorstehende erste Ausführungsform der Erfindung kann daher implementiert werden, indem eine Datenbank DB bereitgestellt wird, die mehrere Anwendungen umfasst und durch Einrichten einer schnellen Schnittstelle 22, 23, 24 zwischen den Verarbeitungseinheiten und der Datenbank DB. Zu Beginn jeder Verbindung wird eine verfügbare Verarbeitungseinheit für die Verbindung zugewiesen, die von der betreffenden Verbindung benötigten Anwendungen werden identifiziert, und die Anwendungen werden auf die zugewiesene Verarbeitungseinheit von der Datenbank DB geladen.
  • Entsprechend kann die zweite Ausführungsform der Erfindung (in der die Anwendungen gegebenenfalls geladen werden) durch ein Verfahren implementiert werden, dass die Schritte umfasst:
    • (1) Bilden einer Datenbank DB, die mehrere Anwendungen App1_1 bis App1_n umfasst und Einrichten einer schnellen Schnittstelle 22, 23, 24 von der Datenbank zu den Verarbeitungseinheiten DSPU_1 bis DSPU_n, um Anwendungen auf diese zu laden;
    • (2) Verfolgen verfügbarer Verarbeitungseinheiten und davon, welche Anwendungen auf die Verarbeitungseinheiten geladen wurden; und mindestens zu Beginn jeder Verbindung,
    • (3) Identifizieren der Anwendungen, die von der betreffenden Verbindung benötigt werden,
    • (4) Zuweisen einer verfügbaren Verarbeitungseinheit für die betreffende Verbindung, vorzugsweise eine, auf die ein möglichst großer Teil der von der betreffenden Verbindung benötigten Anwendungen geladen wird, und
    • (5) wenn der betreffenden Verarbeitungseinheit irgendwelche der Anwendungen fehlen, die von der betreffenden Verbindung benötigt werden, Laden der Anwendung auf sie von der Datenbank DB.
  • Die Identifizierung der nötigen Anwendungen und das Laden der Anwendungen auf die Verarbeitungseinheiten DSPU kann auch später während der Verbindung stattfinden. Zum Beispiel können die Endgeräteeinheiten während der Verbindung des Mobilsystems das Sprachcodierungsverfahren ändern oder über die Verwendung einer Echokompensation verhandeln (insbesondere, wenn sie die Zellen wechseln). Der Controller CTRL erkennt dies (z.B. auf der Grundlage der Signalisierungsverbindung) und wiederholt Schritte (3) bis (5). Die Wiederholung der Schritte kann auf mindestens zwei Arten interpretiert werden. Gemäß der ersten Interpretation wird eine für die Verbindung zugewiesene Verarbeitungseinheit während der Verbindung nicht geändert, sondern alle zusätzlichen Anwendungen, die benötigt werden, werden auf die Verarbeitungseinheit geladen, die zu Beginn der Verbindung zugewiesen wurde. Gemäß der zweiten Interpretation kann die Zuweisung einer Verarbeitungseinheit, die in Schritt (4) stattfindet, auch während der Verbindung wiederholt werden. Wenn zum Beispiel die Endgeräte entscheiden, von einem Vollraten-Codec auf einen Halbraten-Codec überzuwechseln und wenn mindestens eine Verarbeitungseinheit verfügbar ist, auf die ein Halbraten-Codec geladen wurde, dann kann der Controller CTRL diese Verarbeitungseinheit zuweisen, um die betreffende Verbindung zu bedienen.
  • Anhand technischer Fortschritte wird es für einen Fachmann offensichtlich sein, dass die grundlegende Idee der Erfindung auf verschiedene Arten umgesetzt werden kann. Die Erfindung und ihre Ausführungsformen sind daher nicht auf die obigen Beispiele beschränkt, sondern können innerhalb des Schutzbereichs der Ansprüche variieren.

Claims (13)

  1. Verfahren zum Ausführen mindestens einer mit einer Telekommunikationsverbindung (C1 bis Cn) von/zu einem Endgerät verknüpften Anwendung (App1_1 bis App1_n) durch mindestens eine Verarbeitungseinheit (DSPU_1 bis DSPU_n), die die Telekommunikationsverbindung von/zu dem Endgerät bedient, wobei das Verfahren die Schritte umfasst i. Bilden einer Datenbank DB, welche mehrere Anwendungen umfasst, und betriebsfähiges Verbinden dieser mit den Verarbeitungseinheiten mittels eines schnellen paketvermittelten Netzes (22 bis 24), um Anwendungen auf diese zu laden; und mindestens zu Beginn jeder Telekommunikationsverbindung ii. Zuweisen einer verfügbaren Verarbeitungseinheit (DSPU_1 bis DSPU_n) für die betreffende Telekommunikationsverbindung, iii. Identifizieren der von der betreffenden Telekommunikationsverbindung benötigten Anwendungen iv. Laden der von der betreffenden Telekommunikationsverbindung benötigten Anwendungen auf die zugewiesene Verarbeitungseinheit von der Datenbank (DB) mittels des schnellen paketvermittelten Netzes unter Verwendung des Protokolls des Netzes ohne Umwandlung zu Protokollen höherer Ebene.
  2. Verfahren gemäß Anspruch 1, welches weiter die Schritte umfasst Nachverfolgen verfügbarer Verarbeitungseinheiten und davon, welche Anwendungen in die Verarbeitungseinheiten geladen worden sind; und Zuweisen einer verfügbaren Verarbeitungseinheit für die betreffende Telekommunikationsverbindung und wobei das Laden von Anwendungen in Reaktion auf eine Feststellung erfolgt, dass der zugewiesenen Verarbeitungseinheit irgendwelche der Anwendungen fehlen, welche von der betreffenden Verbindung benötigt werden.
  3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Anwendungen mittels derselben Schnittstelle (24) auf die Verarbeitungseinheit (DSPU_1 bis DSPU_n) geladen werden, durch welche die mit der Verbindung (C1-Cn) verknüpften Informationen an die Verarbeitungseinheit übertragen werden.
  4. Verfahren nach irgendeinem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die Anwendungen mittels eines ATM-Netzes auf die Verarbeitungseinheit geladen werden.
  5. Verfahren nach Anspruch 1 oder irgendeinem der Ansprüche 2 bis 4, dadurch gekennzeichnet, dass manche der Schritte (ii) bis (iv) während der Verbindung erneut ausgeführt werden, falls nötig.
  6. Verfahren gemäß irgendeinem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass manche der Schritte (ii) bis (iv) von einem gesonderten Controller (CTRL) gesteuert werden, der allen Verarbeitungseinheiten gemein ist.
  7. System zum Ausführen mindestens einer Anwendung (App1_1 bis App1_n), die mit einer Telekommunikationsverbindung (C1 – Cn) zu/von einem Endgerät verknüpft ist, durch mindestens eine Verarbeitungseinheit (DSPU_1 bis DSPU_n), die betriebsfähig ist, um die Telekommunikationsverbindung von/zu dem Endgerät zu bedienen, wobei die Anordnung weiter einen Controller (CTRL) und eine Datenbank (DB) umfasst, welche mehrere verschiedene Anwendungen beinhaltet; ein schnelles paketvermitteltes Netz (22 bis 24) von den Verarbeitungseinheiten (DSPU_1 bis DSPU_n) zu der Datenbank (DB) eingerichtet ist; und der Controller (CTRL) dazu eingerichtet ist, mindestens zu Beginn jeder Telekommunikationsverbindung eine verfügbare Verarbeitungseinheit (DSPU_1 bis DSPU_n) für die betreffende Telekommunikationsverbindung zuzuweisen, und der Controller (CTRL) Mittel umfasst, um die von der betreffenden Telekommunikationsverbindung benötigten Anwendungen zu identifizieren, und Mittel, um sie von der Datenbank (DB) mittels des schnellen paketvermittelten Netzes unter Verwendung des Protokolls des Netzes ohne Umwandlung zu Protokollen höherer Ebene auf die zugewiesene Verarbeitungseinheit (DSPU_1 bis DSPU_n) zu laden.
  8. System nach Anspruch 7, wobei der Controller (CTRL) eingerichtet ist, um verfügbare Verarbeitungseinheiten nachzuverfolgen und nachzuverfolgen, welche Anwendungen in den Verarbeitungseinheiten gespeichert wurden; und mindestens zu Beginn jeder Verbindung der Controller (CTRL) zum Zuweisen einer verfügbaren Verarbeitungseinheit für die betreffende Verbindung eingerichtet ist; und wobei die Lademittel auf eine Feststellung ansprechen, dass der zugewiesenen Verarbeitungseinheit irgendwelche der von der betreffenden Verbindung benötigten Anwendungen fehlen.
  9. System nach Anspruch 7 oder 8, dadurch gekennzeichnet, dass der Controller (CTRL) allen Verarbeitungseinheiten (DSPU_1 bis DSPU_n) gemein ist.
  10. System nach irgendeinem der Ansprüche 7 bis 9, dadurch gekennzeichnet, dass jede Verarbeitungseinheit (DSPU_1 bis DSPU_n) Speicher (M1 – Mn) umfasst, wobei die Menge des Speichers größer ist als die größte Menge an Speicher, die von den mit einer einzelnen Verbindung (C1 bis Cn) verknüpften Anwendungen (App1_1 bis App1_n) benötigt wird, jedoch kleiner als die zusammengefasste Menge an Speicher, die von den Anwendungen der Anordnung benötigt wird.
  11. System nach irgendeinem der Ansprüche 7 bis 10, dadurch gekennzeichnet, dass sich alle Teile in ein und demselben Netzelement befinden.
  12. System nach irgendeinem der Ansprüche 7 bis 10, dadurch gekennzeichnet, dass sich nicht alle Teile in ein und demselben Netzelement befinden.
  13. System nach irgendeinem der Ansprüche 7 bis 12, dadurch gekennzeichnet, dass das schnelle Netz (22 bis 24) von den Verarbeitungseinheiten (DSPU_1 bis DSPU_n) zu der Datenbank (DB) mittels eines ATM-Netzes gebildet wird.
DE69833124T 1997-09-23 1998-09-22 Adaptives prozessorsystem Expired - Lifetime DE69833124T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FI973761A FI107842B (fi) 1997-09-23 1997-09-23 Adaptiivinen prosessorijärjestelmä
FI973761 1997-09-23
PCT/FI1998/000741 WO1999015983A2 (en) 1997-09-23 1998-09-22 Adaptive processor system using a packet switched network

Publications (2)

Publication Number Publication Date
DE69833124D1 DE69833124D1 (de) 2006-03-30
DE69833124T2 true DE69833124T2 (de) 2006-07-20

Family

ID=8549575

Family Applications (2)

Application Number Title Priority Date Filing Date
DE69833124T Expired - Lifetime DE69833124T2 (de) 1997-09-23 1998-09-22 Adaptives prozessorsystem
DE69840921T Expired - Fee Related DE69840921D1 (de) 1997-09-23 1998-09-22 Adaptives Prozessorsystem

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE69840921T Expired - Fee Related DE69840921D1 (de) 1997-09-23 1998-09-22 Adaptives Prozessorsystem

Country Status (11)

Country Link
US (1) US6681253B1 (de)
EP (2) EP1023671B1 (de)
JP (1) JP3658704B2 (de)
CN (1) CN1329851C (de)
AT (2) ATE315253T1 (de)
AU (1) AU9349598A (de)
CA (1) CA2302321A1 (de)
DE (2) DE69833124T2 (de)
ES (1) ES2255182T3 (de)
FI (1) FI107842B (de)
WO (1) WO1999015983A2 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6598146B1 (en) * 1999-06-15 2003-07-22 Koninklijke Philips Electronics N.V. Data-processing arrangement comprising a plurality of processing and memory circuits
CA2349140A1 (en) * 2000-05-31 2001-11-30 Nortel Networks Limited Connection negotiation for voice over internet protocol using multiple steps
US8015303B2 (en) * 2002-08-02 2011-09-06 Astute Networks Inc. High data rate stateful protocol processing
US7596621B1 (en) * 2002-10-17 2009-09-29 Astute Networks, Inc. System and method for managing shared state using multiple programmed processors
US7814218B1 (en) 2002-10-17 2010-10-12 Astute Networks, Inc. Multi-protocol and multi-format stateful processing
US8151278B1 (en) 2002-10-17 2012-04-03 Astute Networks, Inc. System and method for timer management in a stateful protocol processing system
US20050262311A1 (en) * 2004-05-20 2005-11-24 Lippincott Louis A Hierarchical processor architecture for video processing
KR100860160B1 (ko) * 2004-05-20 2008-09-24 인텔 코오퍼레이션 비디오 처리를 위한 계층 프로세서 아키텍처
US20070094306A1 (en) * 2005-10-26 2007-04-26 Kyriazakos Nikolaos G Method and model for enterprise system development and execution

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5005122A (en) 1987-09-08 1991-04-02 Digital Equipment Corporation Arrangement with cooperating management server node and network service node
JPH04291538A (ja) * 1991-03-19 1992-10-15 Fujitsu Ltd 予備回線を使用したダウンロード方式
US5504670A (en) * 1993-03-31 1996-04-02 Intel Corporation Method and apparatus for allocating resources in a multiprocessor system
US5600643A (en) 1993-09-23 1997-02-04 Bell Communications Research, Inc. Broadband intelligent telecommunications network and method providing enhanced capabilities for customer premises equipment
US5426694A (en) 1993-10-08 1995-06-20 Excel, Inc. Telecommunication switch having programmable network protocols and communications services
US5421009A (en) * 1993-12-22 1995-05-30 Hewlett-Packard Company Method of remotely installing software directly from a central computer
US5577105A (en) * 1994-03-11 1996-11-19 U.S. Robotics, Inc. Telephone call routing and switching techniques for data communications
US5859981A (en) * 1995-07-12 1999-01-12 Super P.C., L.L.C. Method for deadlock-free message passing in MIMD systems using routers and buffers
US6199093B1 (en) * 1995-07-21 2001-03-06 Nec Corporation Processor allocating method/apparatus in multiprocessor system, and medium for storing processor allocating program
US6021263A (en) * 1996-02-16 2000-02-01 Lucent Technologies, Inc. Management of ATM virtual circuits with resources reservation protocol
US6298120B1 (en) * 1996-06-28 2001-10-02 At&T Corp. Intelligent processing for establishing communication over the internet
US6195678B1 (en) * 1996-09-03 2001-02-27 Fujitsu Limited Remote resource management system for automatically downloading required files from application server depending on contents of selected files on requesting computer
JP3372797B2 (ja) * 1996-12-06 2003-02-04 日本電気株式会社 帯域予約制御方式
GB2320642A (en) * 1996-12-21 1998-06-24 Ibm Distributed voice processing system
US6061442A (en) * 1997-03-07 2000-05-09 Lucent Technologies Inc. Method and apparatus for improved call control scheduling in a distributed system with dissimilar call processors
US5958010A (en) * 1997-03-20 1999-09-28 Firstsense Software, Inc. Systems and methods for monitoring distributed applications including an interface running in an operating system kernel
US5970488A (en) * 1997-05-05 1999-10-19 Northrop Grumman Corporation Real-time distributed database system and method
US6021442A (en) * 1997-07-17 2000-02-01 International Business Machines Corporation Method and apparatus for partitioning an interconnection medium in a partitioned multiprocessor computer system
US6104721A (en) * 1997-12-02 2000-08-15 Symmetry Communcations System DSP based dynamic resource allocation multiprocessor communications board
US6208642B1 (en) * 1997-12-19 2001-03-27 Ericsson Inc Architecture independent application invocation over a telephony network
US5999990A (en) * 1998-05-18 1999-12-07 Motorola, Inc. Communicator having reconfigurable resources
US6421338B1 (en) * 1998-06-05 2002-07-16 Lucent Technologies Inc. Network resource server
US6240086B1 (en) * 1999-10-15 2001-05-29 Texas Instruments Incorporated Dynamic DSP allocation for universal access to a packet network

Also Published As

Publication number Publication date
CN1271438A (zh) 2000-10-25
DE69833124D1 (de) 2006-03-30
EP1619580A3 (de) 2006-05-17
JP2001517835A (ja) 2001-10-09
WO1999015983A2 (en) 1999-04-01
EP1023671B1 (de) 2006-01-04
US6681253B1 (en) 2004-01-20
WO1999015983A3 (en) 1999-05-20
FI973761A (fi) 1999-03-24
FI973761A0 (fi) 1997-09-23
ATE315253T1 (de) 2006-02-15
JP3658704B2 (ja) 2005-06-08
CA2302321A1 (en) 1999-04-01
ES2255182T3 (es) 2006-06-16
EP1619580A2 (de) 2006-01-25
CN1329851C (zh) 2007-08-01
EP1023671A2 (de) 2000-08-02
AU9349598A (en) 1999-04-12
ATE434215T1 (de) 2009-07-15
EP1619580B1 (de) 2009-06-17
FI107842B (fi) 2001-10-15
DE69840921D1 (de) 2009-07-30

Similar Documents

Publication Publication Date Title
DE69533680T2 (de) Verfahren und Vorrichtung zur dynamischen Bestimmung und Zuteilung von Zugriffsguoten für ein gemeinsames Betriebsmittel
DE60306228T2 (de) Mittelverwaltungsvorrichtung für ein Satelliten-Telekommunikationssystem
DE60112115T2 (de) Erweiterungen eines signalisierungs-übertragungsprotokolls für lastausgleich undserverpool-unterstützung
DE69933312T2 (de) Auswahlsteuerung eines gateway-unterstützungsknotens
DE69730201T2 (de) Sendevorrichtung mit mobilitätsmanager und verfahren zur kommunikation
DE69835412T2 (de) Architektur eines Kommunikationssystems sowie entsprechendes Betriebsprotokoll
DE3200761A1 (de) Nichtzentrales computersystem und verfahren zur zuordnung von serviceanforderungen zu einzelnen computern
CH656275A5 (de) Verfahren und schaltungsanordnung zum uebertragen von datensignalen zwischen datensignalsendern und datensignalempfaengern.
DE69827073T2 (de) Steuerungssystem zur Reservierung von permanenten virtuellen Verbindungen
DE69834221T2 (de) Verbindung und Vorrichtung für eine vermittlungsunabhängige Leitwegsteuerungstechnik
DE69833124T2 (de) Adaptives prozessorsystem
DE602004007879T2 (de) Dienstbereitstellungssystem
DE10260351B4 (de) Lastverteilungssystem für die Steuervorrichtung einer Basisstation
DE69631888T2 (de) Kommunikationssystem und dienststeuerung für anrufbearbeitung
EP0141247B1 (de) Multiprozessor-Rechner, insbesondere Multiprozessor-Zentralsteuereinheit eines Fernsprech-Vermittlungssystems
EP0355714B1 (de) Verfahren und Anordnung zum Einstellen von Kommunikationsdiensten
WO2000024205A1 (de) Verfahren zur steuerung von netzelementen
DE602004007131T2 (de) Verfahren zur Verbesserung der Auswahl eines Zugangsnetzes im Kontext eines diskontinuierlich abdeckenden Zugangsnetzes, entsprechende Zugriffssteuerung und entsprechendes Mehrfachsendesystem
DE60038171T2 (de) Verfahren zur Auswahl von Übertragungsentitäten
DE69928251T2 (de) Datennetzkommunikationen
EP1432257B1 (de) Verfahren und Gateway zur Bereitstellung von Verbindungen, insbesondere zwischen einem Telekommunikations-Festnetz und einem Telekommunikations-Mobilfunknetz
DE60318263T2 (de) Kommunikationsanfrageverarbeitungssystem und -verfahren
DE60216571T2 (de) System von vorrichtungen die mittels einer bus-struktur kommunizieren
DE3041566C2 (de) Verfahren und Schaltungsanordnung zum Übertragen von Datensignalen zwischen Datenvermittlungseinrichtungen einer Datenvermittlungsanlage
DE3041541C2 (de) Schaltungsanordnung zum Übertragen von Datensignalen zwischen jeweils zwei Datenendgeräten einer Datenübertragungsanlage

Legal Events

Date Code Title Description
8363 Opposition against the patent
8365 Fully valid after opposition proceedings