FR2840702A1 - Procede de changement de taches de codage d'image - Google Patents

Procede de changement de taches de codage d'image Download PDF

Info

Publication number
FR2840702A1
FR2840702A1 FR0206968A FR0206968A FR2840702A1 FR 2840702 A1 FR2840702 A1 FR 2840702A1 FR 0206968 A FR0206968 A FR 0206968A FR 0206968 A FR0206968 A FR 0206968A FR 2840702 A1 FR2840702 A1 FR 2840702A1
Authority
FR
France
Prior art keywords
task
internal memory
context
data
memory
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.)
Granted
Application number
FR0206968A
Other languages
English (en)
Other versions
FR2840702B1 (fr
Inventor
Jean Paul Verniere
Philippe Gautier
Bruno Paucard
David Fresneau
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.)
TAK ASIC
Original Assignee
TAK ASIC
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 TAK ASIC filed Critical TAK ASIC
Priority to FR0206968A priority Critical patent/FR2840702B1/fr
Priority to AU2003255649A priority patent/AU2003255649A1/en
Priority to PCT/FR2003/001711 priority patent/WO2003104989A1/fr
Publication of FR2840702A1 publication Critical patent/FR2840702A1/fr
Application granted granted Critical
Publication of FR2840702B1 publication Critical patent/FR2840702B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related 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/461Saving or restoring of program or task context
    • G06F9/462Saving or restoring of program or task context with multiple register sets

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

La présente invention concerne un procédé de changement de tâches dans le domaine du codage d'images. Pour l'exécution d'une tâche, il est nécessaire de disposer des informations de contexte (lignes) et des informations de codage (codec). Ces informations sont stockées dans la mémoire interne d'un processeur. Pour le changement de tâches, une partie de la mémoire interne du processeur est laissée libre pour permettre le stockage d'informations de contexte d'un deuxième tâche. Ce stockage se déroule pendant le traitement de la première tâche. Ainsi, le processeur n'est arrêté que le temps de décharger le codec de la première tâche et de charger le codec de la deuxième tâche.

Description

chaque carte graphique du cluster.
PROCEDE DE CHANGEMENT DE TACHES DE CODAGE D' IMAGE
La presente invention se rapporte au domaine de la gestion de la memoire pour le calcul de taches en paralleles. Dans cette optique, la presente invention se rapporte plus particulierement a la mise en place d'un systeme de sauvegarde/restauration (<< save/restore >>) permettant de changer de contexte le plus rapidement possible (un coup d'horloge pour la sauvegarde du contexte). En particulier, la presente invention concerne la gestion de la sauvegarde/restauration dans le traitement dtimages en parallele. Wile utilise done des proprietes de cette technique telles que l'utilisation d'informations de
codage et de decodage (<< codecs >>).
L'art anterieur connalt deja par le document WO9411816: << Context switching system and method >>, un systeme de changement de contexte pour la sauvegarde, la restauration ou la permutation de taches destine a etre utilise dans un processeur multitache couple a une memoire externe ou une memoire du systeme. Le processeur comporte un ou plusieurs blocs fonctionnels qui executent les taches. Lesdits blocs fonctionnels comprennent des registres stockant des donnees d'etats qui representent, a certains moments, le contexte du systeme. Ledit systeme comprend un regisseur qui recoit une commande de sauvegarde ou de changement et genere une instruction de sauvegarde du contexte en reponse a cette derriere. Le regisseur est configure de maniere a transferer l' instruction de sauvegarde du contexte aux blocs fonctionnels generant un programme d'etats qui comporte une ou plusieurs instructions de chargement de registre, les donnees d'etats representant le contexte du systeme de facon que ce dernier puisse etre restaure ulterieurement. Le programme d'etats est stocke dans une memoire externe ou une memoire du systeme. La sauvegarde du contexte comme des programmes detats permet au systeme de passer rapidement d'un contexte a l'autre sans perdre d'informations importantes. Dans ce procede connu, il est necessaire de copier tout le contexte dans une memoire externe afin de changer de contexte. Cette methode demande par consequent un temps
trop important pour le changement de tache.
I1 est propose, dans la demande de brevet internationale WO9914671 une invention concernant un procede de changement de contexte d'une premiere tache a une deuxieme tache dans une unite de traitement de donnees dotee d'un fichier registre comportant plusieurs registres banalises et un registre de changement de contexte, une memoire comprenant une zone de sauvegarde de contexte anterieure et une zone de sauvegarde de contexte inutilisee. La memoire est couplee au fichier registre et a une unite de commande d' instructions, un registre d'adresse diinstruction et un registre de mot d'etat programme etant couples a la memoire et au fichier registre. Le procede consiste a acquerir une nouvelle zone de sauvegarde dans la zone de sauvegarde non utilisee, a memoriser le contexte de la premiere tache dans la nouvelle zone et a relier la nouvelle zone avec la zone de sauvegarde de contexte anterieure. Ce document de l'art anterieur propose une solution qui necessite la recherche d'une zone libre dans un espace memoire predefini. Cette recherche induit un
temps supplementaire dans le passage d'une tache a l'autre.
La presente invention entend remedier aux inconvenients de l'art anterieur en mettant en uvre un systeme permettant de changer de contexte de maniere rapide (chargement d'un contexte en un coup d'horloge). Pour cela, le systeme selon l' invention met en place un ensemble de memoires internee au processeur destinees a contenir les donnees de contexte de deux tfiches et les donnees de codage et de decodage (codec) d'une tfiche. Lorsqutune instruction de changement de tfiche est envoyee au processeur, celui-ci charge le contexte de la deuxieme tfiche pendant que le traitement de la premiere tfiche s'effectue, arrete le traitement de la premiere tfiche, sauve dans une memoire externe le codec de la tfiche courante, accede aux donnees de la tfiche arrivante deja chargees dans la memoire interne et charge a partir d'une memoire externe le codec correspondent a la tfiche arrivante. Ainsi le temps pendant loquel le systeme de calcul est arrete est limite aux etapes de dechargement du codec de la premiere tfiche et de
chargement du codec de la deuxieme tfiche.
Pour ce faire, la presente invention est du type decrit ci-dessus et elle est remarquable, dans son acception la plus large, en ce qu'elle met en uvre un procede de changement de tfiches de traitement d' image utilisant une architecture comportant une premiere memoire interne pour stocker un premier contexte, une deuxieme memoire interne pour stocker un deuxieme contexte et une troisieme memoire interne pour stocker des informations permettant le codage et le decodage ainsi que des moyens de traitement desdits contextes et un moyen de communication avec au moins un element exterieur, et destine a passer d'une premiere tfiche de codage ou de decodage utilisant ledit premier contexte a une deuxieme tfiche de codage ou de decodage utilisant ledit deuxieme contexte comprenant les etapes suivantes: a) Une premiere etape ou l' architecture traite ladite premiere tfiche en utilisant des donnees de codage et de decodage contenues dans ladite troisieme memoire interne et des donnees audit premier contexte contenues dans ladite premiere memoire interne; b) une deuxieme etape de copie des donnees audit deuxieme contexte depuis une memoire externe vers ladite deuxieme memoire interne a travers ledit moyen de communication; ou ladite deuxieme etape s'effectue pendant que
ladite premiere tache est en cours de traitement.
Selon un autre mode de realisation de ce procede, il existe une troisieme tache de codage ou de decodage utilisant un troisieme contexte, les donnees audit troisieme contexte etant contenues dans ladite deuxieme memoire interne et en ce que le procede comprend une etape additionnelle precedent l'etape a): c) Une etape de copie des donnees audit troisieme contexte depuis ladite deuxieme memoire interne vers une memoire externe a
travers ledit moyen de communication.
Ladite etape c) etant effectuee pendant le traitement de ladite premiere tache Avantageusement, le procede comprend en outre les etapes additionnelles consecutives a ltetape b): d) une etape d'arret du traitement de ladite premiere tache; e) une etape de copie des donnees permettant le codage ou le decodage de ladite premiere tache [codec] depuis ladite troisieme memoire interne vers une memoire externe par ledit moyen de communication; f) une etape de copie des donnees permettant le codage ou le decodage de ladite deuxieme tache [codec] a partir d'une memoire externe vers ladite troisieme memoire interne par ledit moyen de communication; g) une etape de changement d'adressage de memoire depuis ladite premiere memoire interne vers ladite deuxieme memoire interne; h) une etape de demarrage du traitement de ladite deuxieme tache; Avantageusement, le procede comprend des etapes additionnelles precedent l'etape a): i) une etape de copie des donnees audit premier contexte depuis une memoire externe vers ladite premiere memoire interne a travers ledit moyen de communication; j) une etape de copie des donnees permettant le codage ou le decodage de ladite premiere tache [codec] a partir d'une memoire externe vers ladite troisieme memoire interne par ledit moyen de communication; k) une etape de demarrage du traitement
de ladite premiere tache.
Si l'autre mode de realisation deja decrit est mis en muvre, le procede peut avantageusement comprendre des etapes additionnelles precedent l'etape c): i) une etape de copie des donnees audit premier contexte depuis une memoire externe vers ladite premiere memoire interne a travers ledit moyen de communication; j) une etape de copie des donnees permettant le codage ou le decodage de ladite premiere tache [codec] a partir d'une memoire externe vers ladite troisieme memoire interne par ledit moyen de communication; k) une etape de copie des donnees audit troisieme contexte depuis une memoire externe vers ladite premiere memoire interne a travers ledit moyen de communication; 1) une etape de demarrage du traitement
de ladite premiere tache.
Selon un mode de mise en muvre de ['invention, l' architecture utilisee comprend en outre une quatrieme memoire interne pour stocker des informations permettant le codage et le decodage et le procede comprend une etape additionnelle a la suite de l'etape b): m) une etape de copie des donnees permettant le codage ou le decodage de ladite deuxieme tache [codec] a partir d'une memoire externe vers ladite quatrieme memoire interne par ledit moyen de communication; ladite etape m) etant effectuee pendant le
traitement de ladite premiere tache.
On comprendra mieux l' invention a l 'aide de la
description, faite ci-apres a titre purement explicatif,
d'un mode de realisation de ['invention, en reference a la figure annexee: - la figure 1 illustre la composition d'un processeur mis en place dans la procedure de sauvegarde/restauration; L' architecture utilisee par le procede selon ['invention, illustree figure 1, est une architecture de processeur de traitement d' images comprenant une unite de calcul (1), une memoire interne (2) pouvant contenir le codec de la tache en cours, c'est-a-dire les informations necessaires au codage et/ou au decodage des donnees d' image recues par l' architecture. L' architecture comprend egalement deux memoires internee (3) et (4) cites de contexte. Chaque memoire de contexte est susceptible de
contenir un jeu de donnees necessaires a ['unite de calcul.
Par exemple, une memoire de contexte peut contenir une ou plusieurs lignes de l' image a coder ainsi que des files dattente d' entree et de sortie a ces lignes. Les memoires internee (2), (3) et (4) vent relies par une liaison (5) a des elements exterieurs qui peuvent etre un autre
processeur ou une memoire par exemple.
Une realisation du procede de changement de tache selon l' invention le plus simple, c'est-a-dire entre deux taches deja lancees, est constitue des etapes suivantes, en faisant reference a la figure 1: a) une etape d'activation du mode sauvegarde/restauration en modifiant la valeur d'un registre destine a cette utilisation; b) l'etape d'activation entralne l'arret du traitement de la premiere tache; c) une etape de lecture du codec de la premiere tache inscrit dans le registre approprie (2) afin de le sauvegarder dans une memoire exterieure; d) une etape ou un interrupteur est mis a 1 pour signifier la fin de la procedure de sauvegarde du codec; e) une etape de passage de la zone memoire contenant le contexte de la premiere tache (3) a la zone memoire contenant le contexte de la deuxieme tache (4); f) une etape d'ecriture du codec de la deuxieme tache a partir d'une memoire externe dans le registre approprie (2); g) une etape ou un interrupteur est mis a 1 pour signifier la fin de la procedure de restauration du codec; h) une etape de desactivation du mode sauvetage/restauration en modifiant la valeur d'un registre destine a cette utilisation; i) le lancement du traitement de la
deuxieme tache.
Selon un autre mode de realisation, le procede
permet le changement de tache entre plus de deux taches.
Dans ce cas, le procede comporte les etapes supplementaires: j) une etape de lecture des informations de contexte de la premiere tache dans la memoire interne (3) afin de sauvegarder ces informations dans une memoire externe; k) une etape d'ecriture des informations de contexte d'une troisieme tache dans la memoire interne (3) a partir d'une memoire externe; 1) le procede depuis l'etape a) ou la deuxieme tache et la troisieme tache remplacent respectivement la premiere tache et la deuxieme tache; Ainsi de suite, il est possible de proceder a des changements de taches avec un nombre illimite de taches. I1 est de plus possible de mettre en muvre un procede permettant de reduire encore le temps de changement entre deux taches: pour cela, le procede selon l' invention utilise une architecture contenant une memoire interne supplementaire destinee a stocker les donnees d'un deuxieme codec. Ainsi, pendant le traitement de la premiere tache, les memoires de contexte et de codec de la deuxieme tache vent chargees depuis une memoire externe. Le processeur est alors arrete le temps necessaire pour changer l'adressage des memoires: le module de calcul du processeur change son pointeur de memoire et le dirige vers les memoires de contexte et de codec de la deuxieme tache. Ce changement
d'adressage prend tres peu de temps.
L' invention est decrite dans ce qui precede a titre d'exemple. I1 est entendu que l'homme du metier est a meme de realiser differentes variantes de l' invention sans
pour autant sortir du cadre du brevet.

Claims (6)

REVENDICATIONS
1. Procede de changement de taches de traitement dtimage utilisant une architecture comportant une premiere memoire interne pour stocker un premier contexte, une deuxieme memoire interne pour stocker un deuxieme contexte et une troisieme memoire interne pour stocker des informations permettant le codage et le decodage ainsi que des moyens de traitement desdits contextes et un moyen de communication avec au moins un element exterieur, et destine a passer d'une premiere tache de codage ou de decodage utilisant ledit premier contexte a une deuxieme tache de codage ou de decodage utilisant ledit deuxieme contexte comprenant les etapes suivantes: a) une premiere etape ou l' architecture traite ladite premiere tache en utilisant des donnees de codage et de decodage contenues dans ladite troisieme memoire interne et des donnees audit premier contexte contenues dans ladite premiere memoire interne; b) une deuxieme etape de copie des donnees audit deuxieme contexte depuis une memoire externe vers ladite deuxieme memoire interne a travers ledit moyen de communication; caracterise en ce que ladite deuxieme etape s'effectue pendant que ladite premiere tache est en cours
de traitement.
2. Procede de changement de taches de traitement dtimage selon la revendication 1, caracterise en ce qu'il existe une troisieme tache de codage ou de decodage utilisant un troisieme contexte, les donnees audit troisieme contexte etant contenues dans ladite deuxieme memoire interne et en ce que le procede comprend une etape additionnelle precedent l'etape a): c) une etape de copie des donnees audit troisieme contexte depuis ladite deuxieme memoire interne vers une memoire externe a travers ledit moyen de communication; ladite etape c) etant effectuee pendant le traitement de ladite premiere tache
3. Procede de changement de taches de traitement d' image selon la revendication 1 ou la revendication 2, caracterise en ce qu'il comprend en outre les etapes additionnelles consecutives a l'etape b): d) une etape d'arret du traitement de ladite premiere tache; e) une etape de copie des donnees permettant le codage ou le decodage de ladite premiere tache [codec] depuis ladite troisieme memoire interne vers une memoire externe par ledit moyen de communication; f) une etape de copie des donnees permettant le codage ou le decodage de ladite deuxieme tache [codec] a partir d'une memoire externe vers ladite troisieme memoire interne par ledit moyen de communication; g) une etape de changement d'adressage de memoire depuis ladite premiere memoire interne vers ladite deuxieme memoire interne; h) une etape de demarrage du traitement
de ladite deuxieme tache.
4. Procede de changement de taches de traitement d' image selon la revendication 1, caracterise en ce qu'il comprend des etapes additionnelles precedent l'etape a): i) une etape de copie des donnees audit premier contexte depuis une memoire externe vers ladite premiere memoire interne a travers ledit moyen de communication; j) une etape de copie des donnees permettant le codage ou le decodage de ladite premiere tache [codec] a partir d'une memoire externe vers ladite troisieme memoire interne par ledit moyen de communication; k) une etape de demarrage du traitement
de ladite premiere tache.
5. Procede de changement de taches de traitement d'images selon la revendication 2, caracterise en ce qu'il comprend des etapes additionnelles precedent letape c): i) une etape de copie des donnees audit premier contexte depuis une memoire externe vers ladite premiere memoire interne a travers ledit moyen de communication; j) une etape de copie des donnees permettant le codage ou le decodage de ladite premiere tache [codec] a partir d'une memoire externe vers ladite troisieme memoire interne par ledit moyen de communication; k) une etape de copie des donnees audit troisieme contexte depuis une memoire externe vers ladite premiere memoire interne a travers ledit moyen de communication; 1) une etape de demarrage du traitement
de ladite premiere tache.
6.Procede de changement de taches selon la revendication 1, caracterise en ce que l' architecture utilisee comprend en outre une quatrieme memoire interne pour stocker des informations permettant le codage et le decodage et qu'il comprend une etape additionnelle a la suite de l'etape b): m) une etape de copie des donnees permettant le codage ou le decodage de ladite deuxieme tache [codec] a partir d'une memoire externe vers ladite quatrieme memoire interne par ledit moyen de communication; ladite etape m) etant effectuee pendant le
FR0206968A 2002-06-06 2002-06-06 Procede de changement de taches de codage d'image Expired - Fee Related FR2840702B1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
FR0206968A FR2840702B1 (fr) 2002-06-06 2002-06-06 Procede de changement de taches de codage d'image
AU2003255649A AU2003255649A1 (en) 2002-06-06 2003-06-06 Method for changing image coding tasks
PCT/FR2003/001711 WO2003104989A1 (fr) 2002-06-06 2003-06-06 Procede de changement de taches de codage d'image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0206968A FR2840702B1 (fr) 2002-06-06 2002-06-06 Procede de changement de taches de codage d'image

Publications (2)

Publication Number Publication Date
FR2840702A1 true FR2840702A1 (fr) 2003-12-12
FR2840702B1 FR2840702B1 (fr) 2004-11-26

Family

ID=29559014

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0206968A Expired - Fee Related FR2840702B1 (fr) 2002-06-06 2002-06-06 Procede de changement de taches de codage d'image

Country Status (3)

Country Link
AU (1) AU2003255649A1 (fr)
FR (1) FR2840702B1 (fr)
WO (1) WO2003104989A1 (fr)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10313683B2 (en) * 2014-08-30 2019-06-04 Apple Inc. Video encoder with context switching

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3373408A (en) * 1965-04-16 1968-03-12 Rca Corp Computer capable of switching between programs without storage and retrieval of the contents of operation registers
EP1115060A2 (fr) * 2000-01-07 2001-07-11 Motorola, Inc. Procédé et dispositif permettant d'effectuer un changement de contexte rapide et à faible sollicitation du système
US20020065116A1 (en) * 2000-07-24 2002-05-30 Song Chen Distributed micro instruction set processor architecture for high-efficiency signal processing

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3373408A (en) * 1965-04-16 1968-03-12 Rca Corp Computer capable of switching between programs without storage and retrieval of the contents of operation registers
EP1115060A2 (fr) * 2000-01-07 2001-07-11 Motorola, Inc. Procédé et dispositif permettant d'effectuer un changement de contexte rapide et à faible sollicitation du système
US20020065116A1 (en) * 2000-07-24 2002-05-30 Song Chen Distributed micro instruction set processor architecture for high-efficiency signal processing

Also Published As

Publication number Publication date
WO2003104989A1 (fr) 2003-12-18
AU2003255649A1 (en) 2003-12-22
FR2840702B1 (fr) 2004-11-26

Similar Documents

Publication Publication Date Title
CN100380329C (zh) 处理器及信息处理方法
FR2554256A1 (fr) Appareil et procede de regeneration d&#39;un tampon de trames fonctionnant a grande vitesse
EP0626642B1 (fr) Architecture de processeur multi-tâches
US20040218067A1 (en) Digital multi-media input device with continuously store function and method for forming the same
FR2724074A1 (fr) Enregistreur numerique de sons compresses.
CN109582507B (zh) 用于nvdimm的数据备份和恢复方法、nvdimm控制器以及nvdimm
EP1788577A3 (fr) Système de support de données et son procédé pour la sauvegarde et la restauration de données
JP2003296103A (ja) 結果が分散される並列サブワード命令
FR2840702A1 (fr) Procede de changement de taches de codage d&#39;image
JP2006020058A (ja) 画像形成装置
FR2839373A1 (fr) Urgence de detection d&#39;utilisation pour continuer avec d&#39;autres heuristiques afin de determiner des evenements de commutation dans une uct temporelle a fils multiples
EP3859660A1 (fr) Procédé de traitement de données et dispositif de capteur pour l&#39;exécuter
FR2799285A1 (fr) Ensemble de memoire pour un support de donnees, et procede pour la gestion de memoires
EP3423978A1 (fr) Procede de d&#39;affichage d&#39;une animation lors de la phase de demarrage d&#39;un dispositif electronique et dispositif electronique associe
JP2546163B2 (ja) 半導体記憶装置
JPH07311600A (ja) デジタルデータを記憶し、再生する装置および方法
JP3776295B2 (ja) シリアルアクセスメモリおよびデータライト/リード方法
US20090094392A1 (en) System and Method for Data Operations in Memory
JP2019159651A (ja) データ記憶装置及びプログラム
KR20050013321A (ko) 비디오 codec에 있어서 특정이미지 저장방법
JP2007094528A (ja) マルチプロセッサシステムのメモリ使用方法
FR2884002A1 (fr) Procede d&#39;adressage d&#39;un symbole dans une memoire, et dispositif de traitement de symboles
JPS61131049A (ja) 記憶装置内容の掃出し保存方式
WO2002073622A1 (fr) Dispositif electronique a memoire et procedes de commande d&#34;un tel dispositif
JP3097843B2 (ja) 表示制御回路

Legal Events

Date Code Title Description
CD Change of name or company name
CJ Change in legal form
ST Notification of lapse

Effective date: 20080229