12-Q4-2801 11: t~0 82S I I NC I PJC . 4186581286 P . 03125 SYST~ME DE PROCESSEUR MODULAIRE Ä FIANTS GO~N~'IGORABT~ES
~:T INTEREI~IAHi.EB PER1~TTANT DE RF~.ISER DE I~II,TIP7rES
CAI~CCILS PARAhI~~L$6 6UR DU SIGNAI OU DES DONNÉE8 BRU~'E8 Inventeurs : Gui.lmette Pierre 190, Gariépy, St-Rédempteur, QC. Canada. G6K 1M5 Gitoyenneté : Canadien Serge Glorias 1150, Luc z,acvurciére, Ste-FOy, QC, Canada, GIX 4V5 Citoyenne'Cé : FrdnGals RéfArence autzes documents et brevets :
~ Srevet frBnCai9 , x SYST~ME DE SYNTH~SE SONORE PERMETTANT
D'OBTENIR EN SORTIE UNE SdITE D'ÉCHANTILLONS ÉLECTRIQUES
~ Numéro de publication : FR2783630 1 Numéro d'enregistrement national : 98 11071 Date de publication : 29 mars 2000 1 Inventeurs : Guilmette 2ierre, Glorias Sezge ~ brevet américain : x SOUND SYNTHESI2ER SYSTEM ~Oé~ pRODUCING A
STRIES OF ELECTRIGAL SAMFLBS »
~ Numéro de brevet : 6,137,049 v Date du brevet : 29 octobre 2DD0 ~ inventeurs : Guilmette Pierre, Glorias Serge Z,a présente invention est une généralisation des breveta mentionnés plus hauts. Cette généralisation est associée aux revendications du brevet tFR2783630) coït :
tpage 101.2-9) a Systéme de synthèse d'une suite d'échantillons Alectroniques destinés d Ia production de spectre sonore sur une sortie l5). b ...(page 102.20-24) ae les n emplacements de mémoire desdites mémoires de paramètre fM5: 20A. 20C. 20D). de ladite mémoire de valeurs de désignation fMS; 2DE) 0t de ladite mémoire d'accumulation lMl3) matérialisant respectivement n cellules dont le contenu peut se modifier d'un cycle de travail à .L'autre » 12-Q4-2801 11: t ~ 0 82S II NC I PJC. 4186581286 P. 03125 MODULAR PROCESSOR SYSTEM Ä FIANT GO ~ N ~ 'IGORABT ~ ES
~: T INTEREI ~ IAHi.EB PER1 ~ TTANT DE RF ~ .ISER DE I ~ II, TIP7rES
CAI ~ CCILS PARAhI ~~ L $ 6 6UR OF SIGNAI OR DATA8 BRU ~ 'E8 Inventors: Gui.lmette Pierre 190, Gariépy, St-Rédempteur, QC. Canada. G6K 1M5 Citizenship: Canadian Serge Glorias 1150, Luc z, acvurciére, Ste-FOy, QC, Canada, GIX 4V5 Citizen's: FrdnGals Reference to documents and patents:
~ Srevet frBnCai9, x SYSTEM ~ SYNTH ME ~ SOUND ALLOWING
TO OBTAIN A SITE OF ELECTRICAL SAMPLES
~ Publication number: FR2783630 1 National registration number: 98 11071 Publication date: March 29, 2000 1 Inventors: Guilmette 2ierre, Glorias Sezge ~ US patent: x SOUND SYNTHESI2ER SYSTEM ~ Oé ~ pRODUCING A
STRIES OF ELECTRIGAL SAMFLBS »
~ Patent number: 6,137,049 v Patent date: October 29, 2DD0 ~ inventors: Guilmette Pierre, Glorias Serge Z, the present invention is a generalization of the patents mentioned higher. This generalization is associated with the claims of patent tFR2783630) coitus:
tpage 101.2-9) a Synthesis system of a series of samples Electronics intended for the production of sound spectrum on an output l5). b ... (page 102.20-24) ae the n locations of memory of said parameter memories fM5: 20A. 20C. 20D). of said memory of designation values fMS; 2DE) 0t of the said accumulation memory lMl3) respectively materializing n cells whose content can change during a work cycle to the other "
2. (page 102.25-32) « Système de synthèse suivant la revendication l, caractérisé en ee que lesdits premiers ii), seconds (20, 25), troisiémes (20, 25), quatrièmes (30). cinqu:lèmes (U12, 30, 75) et sïxiémes moyens f9D, 60) sonC utilisés en partage de temps au cours des cycles de travail successifs pour déterminer les valeurs relatives auxdites cellules dans lesdites mémoires de paramètre. de valeurs de désignation et d'accumulation x Nommément les brevets dont il est question pies haut introduisent 1e concept de cellules qui partagent le temps et leurs ressources pour réaliser une synthése sonore en utilisant des moyens de calculs modulaires qui permettent une txès grande capacité de calcul inaccessible aux processeurs séquenciels (Microprocesseurs et DSP
courants). La très grande capacité de calcul xeliée à son architecture peut étre appliquée d différents domaines eu dais de ce dont les brevets font W objet, cela en leur apportant des améliorations Bt des perfectionneménts.
La présente invention est relative à un système ae calcul permettant d'obtenir des résultats à partir de variables fournies. Ces calculs ne sent pas d'ordre séquenciols mais s'effectuent en paralléle en utilisant les ressources parallèles des cellules introduites dans les breveta cités.
La présente invention utilise ce mAme contCpt Ge cellules pour effectuer des opérations mathématiques et logiques complexas, pazallèles, distinctes et multiples en utilisant leurs ressources respectives de calcul puis en adaptant leur structure. Ces opérations arithmétiques et logiques sont effectuées distinctement sur les cellules, dc maniére é ce que chaque cellule effectue le8 opérations qui lui sont destinées selon les besoins et leur configuration 12-04-2001 11:00 G2SI INC INC. 4186501286 P.04i25 SVSTEME DE PROCESSPUR MODULAIRE A ÉLÉMéNTS CONFIGURABLES ET
INTERELIABLES PERMETTANT DE FiEAU$ER DE MULTIPLES CALCULS
PARALLELE& 6UR DU SIGNAL OU PF-S DONNt'E6 BRUTES
respective, Ces fonctions sont effectuées de manière indépendante et sont simultanées.
Comme dans les inventions cztées plus haut le circuit dont fait l'objet la prQsente invention comporte un certain nombre da cellules et de groupes (Nommées 'ensembles' dans les inventions citées). Les cellules sont associées à un groupe, les groupes sont des fonctions qui compilent 1ea résultats des cellules qvi leur sont destinées.
La Configuration opérationnelle des cellules est introduite par l'intermédiaire de registres (espace mémoire des cellules) et équivaut demander à la dite cellule de calculer une équation algébrique par unE structure o~ des valeurs sont introduites dans une cellule donnée et appliquées à des fonctions de différente niveaux (équivalent à des niveaux de parenthéses) dont leur naturE respective est configurable, chaque Fonction de chaque cellule est distinctement configurable (addition, soustraction, multipücatïon, division, logiques.
décisionnelles, etc.). L'arch~.tecture des cellules peut donc ~tre appliquée suivant la manière dont elle est implantée, typiquement une cellule peut comporter ~~ niveaux de calcul ou plus. Enfin ~ 1a sortie du dernier niveau de calcul des fonctions non linéaires ou d~s calculs indexés peuvent étre introduits dans l'équation au moyen de tables qui sont parties intégrantes de la structure des cellules, les données de ces tables sont dynamiquement accESSibles par les cellules et/ou 1e processeur externe pour adressage indexé ou en tables de eonvezsions (exemple : conversion linéaire / logarithmique suivant une séquence logarithmique). Ensuite la sortie de chaque cellule peut étre additionnée aux sorties d'autres cellules sélectionnées, les cellules ainsi sélectionnées sont identifiées à un groupe de cellules spécifiques. Le groupe peut affecter 1e résultat de la compilation des cellules à une fonction commune, le résultat final du groupe de calcul est iris8ré dans une Matx:ice de Groupes qui contient 1a sortie de chaque groupe du circuit. De plus le résultat du groupe est ache~né suivant des poids définis par d'autres registres sur un certain nombre d'accumulateurs qui cumulent les groupes qui lu.ï sont destinés, ces accumulateurs sont contenus dans .la Matrice des Sorties qui peuvent 2tre lues par un processeur externe ou acheminées sur des Interfaces de sorties. Le zésultat des cellules est introduit dans une Matrice de Cellules qui contient la sortie de chaque cellule du circuit. Enfin une quatrième tHatrice, soit la Matrice des Entrées est introduite et contient les registres d'accumulateurs de données d'EntrE~es gui peuvent étre inscrites par un p~-ocesseur externe au provenir d'Xnterfaoes d'Entrées.
Loa opérations arithmétiques et logiques des ae11u1es sont effectuées sur des valeurs dont la provenance peut étre dynamiquement déterminée soir : directement inscrites par un processeur externe, par la sortie d'une autre cellule de la Matrice de Cellules, par la sortie d'un groupe de 1a Matrice de Groupes ou pas une entrée de la Matrice des Entrées.
Le circuit qui fait l'objet de 1a présente invention généralise les brevets en référence. h~as précédents brevets ont introduit le concept de cellules pour la synthèse sonore, dans ces brevets las Fonctions de ceJ.lulea sont destinées à la synthèse sonore. Les dites fonctions tout en étant conPigurables sont incozpvrées dans des cellules qui sont regroupées dans les Ens~ambies (groupes de sorties de cellules), chaque regroupement constituant en 1'occurenee un son spécifique. vans ces brevets antérieurs sont décrits les moyens de paramétriser les cellules et iristruixe le fonctionnement de chacune soit : l'établissement du mode respectif (exemple : oscillateur sinusoldal, capture de signai extezne, etc.). les paramètres de base de chaque cellule (amplitude relative, fréquence relative, phase, fonction de filtrage), les liens qui permettent d'introduire un signai externe dans une cellule ou de commander un vu plusieurs des g paramètres de baso par une autre cellule. Y sont décrira également les moyens de regroupCr lts Cellules sur des ensembles (ou graupea) qui comportent ég8lement des paramètres absolue de fréquence et d'amplitude (s'appliquant sur les cellules d'un groupe donné) et l'assignation des groupes sur les sorties du circuit, Chaque ensemble constitue un son généré A partir des éléments que constituent les cellules. En définitive ces brevets décrivent les moyens pour gériéreY d~5 SigriauX en ut1119ant des re5sourCBS (cellules) qui fonctionnent en partageant des éléments arithmétiques mais gui 12-04-2001 11:81 G2SI INC INC. 4186501286 P.05i25 SYSTEMé DE PROCE&SEUR MOoULAIRE A ÉLÉMENTS COIrFIGURABLES ET
INTERELIABLES PERMETTANT DE RéALI$ER DE MULTIPLéS CALCULS /3 PARALLELES SUR DU SIGNAL OU DES DONNÉES BRUTES
introduisent un degré élevé de parallélisme de manière à ce que chaque cellule soit en mesure de générer un signal qui peut étré combiné à
d'autres cellules, cette architecture permet un degré élevé de performances et de souplesse en étant configurable.
Le concept de ces breveta peut étre adapté, amélioré et augmenté de manière 8 en généraliser son application à d'autres domaines, dans cette optique la présente Invention présente les innovations qui remplissent ce rQle. 1~ partir du système breveté soit 'bpsta~e de apatls~av sonore pemwttaat d'obten~.r vas nuits d'~~ij~
éleatriqnQa'.
Les principaux ineonvéni,ents des systémes de calculs ordinés existants que ce soit dans les microordinateurs actuels ou dans les grands ordinateurs est liée à leur architecture séquentielle méme dans le cas 05 elles peuvent traiter des données de maniére simultanée. Les systèmes existants sont liés ~ des mots d'instructions qui donnent aéquenciellement l'ordre à une ou des ünltéa arithmétiques (ALO) d'exécuter une ou Ses fonctions, le nombre d'instructions sur un mot dépend de la Longueur en bits du mvt et demeure de toute manière limitée à une lsrgeur de bus (54, 128, 256 bits) y compris pour les noyaux vLi~9 ('Very long instruction word')- Les ordres sont donnés séquenciellemént et de par leur nature se prétent mal à 1a mise en place de procédés a~multan6s. de complexité variable, de bouclage différents, de ca~actére évolutif, de réseaux de calculs, de logique cloue etc.. La stratégie de mise en plane d'ordres de calcul (séquences de programmes) pour des procédés rapides et parallèles peut 2tre performante dans les arcriitectures existantés mais exige que tous les éléments soient rapides (bus, mémoires, processeurs, etc.). et l'approche séquentielle de transmission des commandes est en contradiction avec la nature du processus dans 1e cas o~1 l'objectif est d'effectuer des opérations simultanées qu'elles soient indépenddntee ou corrélées ou encore que l'objectxR soit d'implanter des algorithmes complexes (équations cvtnplexea à niveaux).
pana les systémes ordimS9 actuels il exista deux moyens pratiques de procéder des fonctions simultanées, ou rapides, ou complexes, ou en réseau de procédés, etc.. La premiére solution est d'implanter une structure multitaches d"exécution des programmes, oa différents programmes partagent le méme processeur pour effectuer des tâches différentes selon des priorités Établies; dans ce cas l'inconvénient majeur est que les taches ne sont pas réellement simultanées, et la structure mufti-triches amène une charge supplémentaire au processeur ('Ove~head'1 qui nécessite la gestion de ce multit&ches et de ce fait amenuise ses performances. La deuxième solution est d'implants= un systéme 8 processeurs multiples qui partagent un mAme environnement, ces systèmes sont plus performants que les dispositifs multit~cbes mais comportent plusieurs inconvénients soit d'étre lourds en matériel et éventuellement moins fiables, de plus dans ces architectures é
processeurs multiples étant donné que ceux-ci partagént des connexions et des bus communs. ils sont limités dans leurs procédés aux capacités d'échanges de données entre les processeurs soit un échange à la fois, dans de tels systèmes l~~s communications inter-processeurs constituent les maillons faibles. Dans ces deux cas la seule alternative est de développer 4es processeurs de plus en plus puissants mais l'architecture demeure déficiente et n'utilise pas 1a rapidité des proceaaeuFa dans leur pleine mesure.
12-04-2001 11: H1 G2SI INC I~JC. 4186501286 P.06i25 SYST~ME DE PROCESSéUR MODULAIRE A $LÉMENTS CO~~ABLE6 Ef INTERELIABLES PERMETTANT DE RÉALISER DE MULTIPLES CALCULS
PARALLÉLÉS SUR DU SIGNAL OU DES DONNÉES BRUTéS
L'invention a pour objet: un système de calcul modulaire destiné ~ la production de données fournies en pardlléle résultantes de traitements parallèles sur des variables fournies pas un processeur hOte (ordinateur, micro-cont:r~leuF, n52, etc.) ou au besoin et en toutes combinaisons par des interfaces d'entrées de données; les données résul.tantea des calculs peuvent au besoin et en toutes combinaisons Vitre acheminées au proc~,sseur h6te ou à des interfaces de sorties. Le systéme dont fait l'objet l'invention comprend les revendications suivantes:
~ Des moyens pour configurer les Lonctions aritriatétiques et logiques sur différents niveaux à l'intérieur de chacxue cellule :
~ pour configurer indépendamment chaque fonction de chaque niveau de chaque cellule comme : additive, soustractive, multiplicative, divisive, logique, décisi.vnnelle ou autre, ~ Des moyens pour établir des liens modifiables entre les fonctions sur chaque cellule ~ Pour appliquer las fonctions sur des variables de provenance externes ou internes ~ oes moyens pour 6tablir les différentes fonctions arithmétiques et logiques incorporées dans chaque cellule sur différents niveaux vers une fonction finale donnant un résultat unique de façon 9 ce qu'au choix et sur enaque cel2ule le résultat soient utilisé de manière spdcifique ~ directement comme donnée résultante acheminée sur un registre de mémoires, ~ par l'entremise de tables de conversions ou d'indexation, ~ par l'incorporation de 'fonctions séquencielles supplémentaires, v d'appliquer au choix le résultat en mode normal (non récursif) ou domaine temporel (récursif?
~ Des moyens pour acheminer les résultats des ce7.lules sur aria matrice de résultats des cellules ~ De9 moyens pour ass=gner de manière sélective les cellules dans des groupes distincte et indépenGants pour combiner les résultats respectifs des cellules;
~ Des moyens pour acheminer le9 résultats des groupes sur une matrice de résultats des groupts ~ Des moyens pour capturer des données 8 partir d'interfaces de données et les accumuler dans une matrice d'entrées ~ Oes moyens peur choisir la provenance des variables sur les différentes fonctions des différentes cellules ~ pour sélectivement inscrire une variabze donnée directement d'un procesaeuz, Pour sélectivement acheminer un élément donné de la matrice de cellules à une «sciable donnée, ~ heur sélectivement acheminer un élément donné de la matrice de groupes à une variable donnée.
?our 9é7.ectivement acheminer un élément donné de la matrice d'entrées â une variable donnée, ~ Des moyens pour quo l'action sur chaque entrée de variable provenant de matrice8 puisse étre corrélée a un niveau variable de maniére $
introduire des liens plus ou moins rigides ou léchas.
~ Des moyens pour que les fonctions appliquées sur les cellules soient de natures générales ou partiellement définies selon le mode de fonctiann~ment de claque cellule Pour le mode de fonctionnement normal (non réCUrsiI), de9 fonctions générales d'ordre arithmétique ou logique sans attributions preétablies.
~ Pour le mode de fonctionnement en domaine temporel (récursif), des fonctions mixtes od certaines sent attribuées pour des opérations en mode temporel (amplitudes, fréquence, phase, fonction de séquence) tout en maintenant les autres en ordre général.
~ Des moyens pour at~t:cibuer des tables à 1a sortie de fonction de chaque cellule de manière à pouvoir utiliser 1a mémorisation en lecture ou écriture selon le besoin ~ Capture du résultat de cellule et mémorisation auto-indexée à
pas variable sur. une zone de mémvi.re aux limites définissables ~ Lecture de table sur une zone de mémoire aux limites définissables de manièze a ottribucz une valeur de réeultdt 12-04-2881 11:02 G2SI INC INC. 4186501286 P.0'7i25 SYST~NIE DE PROCESSEUR MODUW~fiE- ,A. ELEAAENTS GONFIGtJRABLES ET
INTERELIABLES PERAI~TTANT DE OSER. DE MULTIPLES CALCULS I S
PARALLELES Sl~i DU SIGNAL. OU OES DONNÉES BRUTES
donné à une valeur d'une table qui pourra étxe utïüsée poux des processus de conversion.
~ Des moyens de généralisation du processus séquenciel de filtrage du brevet existant ae maniére à pouvoir appliquer uns séquence supplémentaire de fonctions arithmétiques au résultat de la cellule, od les fonctions arithmétiques peuvent etre choisis sur des lignes de code Des moyens pour appliquer des fonctions à l'intérieur de chaque groupe de maniére à s'effectuer sur le résultat du groupe dont les résultats proviennent. d'un ensemble choisi de cellules 1 Des moyens pour acheminez les sorties de groupes sur une matrice de sortie, sélectivement pour chaque groupe et progressivement sur une au plusieurs sorties de 1a matrice de sortie ~ Pour progFesaivement et dynamiquement tranafErer les donnëes d'un groupe à une au plusieurs sorties d'une section de la matrice de sorties et combinatoirement avec d'autres groupes, ~ Pour choisir la section de la matrice de sorties sur laquel un groupe donné sera acheminé, ~ Des moyens pour choisir sélectivement la provenance de la valeur de chaque entrée de la matrice d'entrée ~ Pour que la valeur puisse provenir directement d'une entrée d'une interface d'entrée Ne données ~ Pour que la valeur puisse provenir directement d'un processeur hate.
~ nec mo~rens pour choi.six sélectivement la destination de 1a valeur de chaque sortie de la matrice de sortie :
~ Pour que 1a valeur puïsse étre acheminée directement à une sortie d'uns interface sortie de données ~ Pour que la valeur puisse étre transmise directement ~ un processeur hl5te.
Des moyens pour ajouter des variables de manière à ce que les fonctions de celluia puissent s'appliquer sur des niveaux multiples et que l'inacriptïon de valeurs sur ces variables soit de provenance sélective.
DOCUMENTS INCLUS
FICHIER DESCRIPTION Rfrence braver antrieur Fi 2, Gnrateur A~out de sbtcctions d'e & foires IrticrfaCe CPU
Fig05.pcx _ Ajout de peram8trc SI~ Peremtttes dtails atttnuafion et slaxion foncton vccto>ielle ou directe Fig06.pcx Paramtres ~o~ du paramtre MaYtrc Changertxnt paramtres Frquence et Phases Fig06a.pcxExtension Calwl Nouvelle ftgurc pour extension des fonctions de calculs sur les atamttrcs de fi ure Fig07.pcx _ _ Ajout stlcction mode Gnration axe-x opnuoirz sur fonction en bcm rel ou sur donne Pi 08. Ensemble Accumulateur & ClcIcnChementNon nmdifite ex _ Figt t:pexSortie de signaux (q' 8) sortiesAjout de fonction Ae commandes de sonies avec niveaux assigns sur (es soetics stlcctioones et ajout de sections de sottits Figl 1 Sorties de signaux (Sections Nouvelle figure de apex de 8 sorties) dttsil pour stlcetion graduelle par section de SOrtiGs Figl2.brnpSlection contr6ks - , M~~cation pore ajvutcr In slection des erttrtCS
sur 1cs matrices de contrAlcs de aramtres Figl3.pcx Fonctions cellules Ajout de bits de commandes pour les fonctions su ltrrtcntaircs Fi 14. Cellules fonctions oscillateurs Non modifiCc ex Fi 15. Cellules fonction trsteur de Non modifie x bruit Figl6.pcx Cellules fonction Entre Temps . Ajout d'accCs CPU
rtcl, Contrble ~ accs donnes aux entres Ajout de Commande de stlection de chac)ue entre de provcnanCe (CPU
ou Inurface externe Figl a.pcxCellules Fonction chantillonneur.Ajout d'accs criture table mtmoire d stlcetion mCmoirc sur fonction ou transfert de rtsultat da cellule Slection sortit table ou fonetimr sans table Ei 18_ Cellules fonctions Entres tem Non modiftEe x s rel dtecteurs sur cntrrs Fi 19. Cellules fonction fi Non modifiEc Fi 0. x Cellules fonctron chantillonneurNon modifie contrQles limites Fi 1. ex Cellules fonction chantillonneurNon modifie contrblc initialisation 2. (page 102.25-32) “Synthesis system according to claim l, characterized in that said first ii), second (20, 25), third (20, 25), fourth (30). fifty: lemes (U12, 30, 75) and sixth means f9D, 60) sonC used for sharing time in successive work cycles to determine the values relating to said cells in said memories parameter. designation and accumulation values x Namely the patents referred to above introduce the 1st concept of cells that share time and resources for perform a sound synthesis using calculation means modules that allow a large computing capacity inaccessible to sequential processors (Microprocessors and DSP
currents). The very large computing capacity linked to its architecture can be applied from different fields but from which patents are W subject, this by bringing them improvements Bt of improvements.
The present invention relates to a calculation system allowing obtain results from the variables provided. These calculations do feels no sequence order but takes place in parallel in using the parallel resources of the cells introduced into the patenta cited.
The present invention uses this same contCpt Ge cells for perform complexas mathematical and logical operations, pazalleles, distinct and multiple using their resources respective calculation then by adapting their structure. These operations arithmetic and logic are performed separately on the cells, so each cell performs the 8 operations which are intended for him according to the needs and their configuration 04-12-2001 11:00 AM G2SI INC INC. 4186501286 P.04i25 MODULAR PROCESSPUR SYSTEM WITH CONFIGURABLE ELEMENTS AND
INTERELIABLES ALLOWING MULTIPLE CALCULATION $ ER
PARALLEL & 6UR OF SIGNAL OR PF-S GIVEN RAW
respective, These functions are performed independently and are simultaneous.
As in the inventions mentioned above, the circuit which is the subject the present invention comprises a number of cells and groups (Named 'sets' in the cited inventions). Cells are associated with a group, groups are functions that compile the results of the cells which are intended for them.
The operational configuration of the cells is introduced by through registers (memory space of cells) and is equivalent ask the said cell to calculate an algebraic equation by a structure where values are introduced into a given cell and applied to functions of different levels (equivalent to parentheses levels) whose respective naturE is configurable, each Function of each cell is distinctly configurable (addition, subtraction, multipücatïon, division, logics.
etc.). The archiving of cells can therefore be applied depending on how it is set up, typically a cell can have ~~ or more calculation levels. Finally ~ 1a exit of the last level of calculation of nonlinear functions or of calculations indexed can be introduced into the equation by means of tables which are integral parts of the cell structure, the data from these tables are dynamically accessible by cells and / or 1e external processor for indexed addressing or in eonvezsions tables (example: linear / logarithmic conversion according to a sequence logarithmic). Then the output of each cell can be added to the outputs of other selected cells, the cells thus selected are identified with a group of cells specific. The group can affect the result of the compilation of cells with a common function, the final result of the calculation group is iris8ré in a Matx: ice of Groups which contains the exit of each tour group. In addition, the result of the group is completed next weights defined by other registers on a certain number accumulators which cumulate the groups which read. are intended, these accumulators are contained in the Output Matrix which can 2tre read by an external processor or routed on Interfaces of exits. The zesult of the cells is introduced into a Matrix of Cells which contains the output of each cell in the circuit. Finally a fourth tHatrice, i.e. the Input Matrix is introduced and contains the data accumulator registers of Input which can be registered by an external p ~ -processor from Xnterfaoes Inputs.
The arithmetic and logical operations of the ae11u1es are carried out on values whose origin can be dynamically determined evening: directly entered by an external processor, via the output from another cell in the Cell Matrix, by the exit of a group of the Matrix of Groups or not an entry of the Matrix of Inputs.
The circuit which is the subject of the present invention generalizes the patents in reference. h ~ as previous patents introduced the concept of cells for sound synthesis, in these patents las Functions of ceJ.lulea are intended for sound synthesis. Said functions all being configurable are incorporated into cells that are grouped in Ens ~ ambies (groups of cell exits), each group constituting in this case a specific sound. in these previous patents are described the ways to parameterize cells and iristruix the operation of each is: the establishment of the respective mode (example: sinusoldal oscillator, signal capture external, etc.). the basic parameters of each cell (amplitude relative, relative frequency, phase, filtering function), links which allow to introduce an external signal in a cell or to order a vu more of the g baso parameters by another cell. They will also describe the means of grouping Cr cells on sets (or graupea) which also include parameters absolute of frequency and amplitude (applying to the cells of a given group) and the assignment of the groups to the circuit outputs, Each set constitutes a sound generated from the elements that constitute the cells. Ultimately these patents describe the means to manage Y of 5 SigriauX by using re5sourCBS (cells) that work by sharing arithmetic elements but mistletoe 04-12-2001 11:81 G2SI INC INC. 4186501286 P.05i25 PROCE & MOORULAR SYSTEM WITH COFIGURABLE ELEMENTS AND
PARALLELS ON SIGNAL OR RAW DATA
introduce a high degree of parallelism so that each cell be able to generate a signal which can be combined with other cells, this architecture allows a high degree of performance and flexibility by being configurable.
The concept of these patents can be adapted, improved and augmented by way 8 to generalize its application to other fields, in this optic the present invention presents the innovations which fulfill this role. 1 ~ from the patented system or 'bpsta ~ e de apatls ~ av sound pemwttaat obten ~ .r vas ~~ ij nights ~
éleatriqnQa.
The main drawbacks of existing computer systems whether in current microcomputers or in large computers is linked to their sequential architecture even in the case 05 they can process data simultaneously. The existing systems are linked ~ instruction words which give aequence order to one or more arithmetic ünltéa (ALO) to execute one or Its functions, the number of instructions on a word depends on the Bit length of the mvt and remains anyway limited to a bus width (54, 128, 256 bits) including for kernels vLi ~ 9 ('Very long instruction word') - Orders are given sequentially and by their nature do not lend themselves well to implementation place of multan ~ processes. of varying complexity, looping different, of ca ~ evolutionary actére, of computation networks, of logic nails etc. The planarization strategy for calculation orders (sequences programs) for fast and parallel processes can be efficient in existing architectures but requires that all elements are fast (buses, memories, processors, etc.). and the sequential approach to order transmission is in contradiction with the nature of the process in the case where the objective is to carry out simultaneous operations whether independent or correlated or that the objectxR is to implement algorithms complex (cvtnplexea equations with levels).
pana current ordimS9 systems there were two practical ways to perform simultaneous, or fast, or complex functions, or network of processes, etc. The first solution is to set up a multitasking program execution structure, oa different programs share the same processor to perform tasks different according to established priorities; in this case the disadvantage major is that the tasks are not actually simultaneous, and the mufti-cheats structure brings additional load to the processor ('Ove ~ head'1 which requires the management of this multitasking and therefore decreases its performance. The second solution is implants = one 8 multiple processor system that share the same environment, these systems are more efficient than multit ~ cbes devices but have several disadvantages of being heavy in material and possibly less reliable, moreover in these architectures é
multiple processors since these share connections and common buses. they are limited in their processes to the capacities data exchanges between the processors, one exchange at a time, in such systems inter-processor communications constitute the weak links. In these two cases the only alternative is to develop 4th processors more and more powerful but architecture remains deficient and does not use the speed of proceaaeuFa to their fullest extent.
04-12-2001 11: H1 G2SI INC I ~ JC. 4186501286 P.06i25 MODULAR PROCESSOR SYSTEM A $ LEMENT ELEMENT CO ~~ ABLE6 Ef INTERELIABLES FOR PERFORMING MULTIPLE CALCULATIONS
PARALLELED ON RAW SIGNAL OR DATA
The subject of the invention is: a modular calculation system intended for the production of data provided in pardlléle resulting from processing parallel on variables provided by a host processor (computer, micro-cont: r ~ leuF, n52, etc.) or as needed and in all combinations by data entry interfaces; the data As a result of the calculations can if necessary and in any combination Glass routed to the proc ~, sseur h6te or to output interfaces. The system of the invention includes the claims following:
~ Means for configuring aritriatetic and logical Lunctions on different levels inside each cell:
~ to independently configure each function of each level of each cell as: additive, subtractive, multiplicative, divisive, logical, decisive or other, ~ Means for establishing modifiable links between functions on each cell ~ To apply the functions on provenance variables external or internal ~ These means to establish the different arithmetic functions and logic incorporated in each cell on different levels towards a final function giving a unique result so that 9 choice and on cell cel2ule the result is used so spdcifique ~ directly as resulting data sent to a register of memories, ~ through conversion or indexing tables, ~ by incorporating additional sequential functions, v to apply the result in the normal mode (not recursive) or time domain (recursive?
~ Means to send the results of the ce7.lules to aria matrix of cell results ~ 9 means to selectively assemble cells in separate and independent groups to combine results respective cells;
~ Means for conveying the 9 results of the groups on a matrix group results ~ Means for capturing data 8 from data and accumulate it in an input matrix ~ These means can choose the source of the variables on the different functions of different cells ~ to selectively enter a given variabze directly from a procesaeuz, To selectively route a given element of the matrix cells at a given 'sciable, ~ heur selectively route a given element of the matrix groups to a given variable.
? our 9é7.ectively convey a given element of the matrix inputs to a given variable, ~ Means for the action on each variable entry coming from of matrix8 can be correlated to a variable level in a way $
introduce more or less rigid links or lechas.
~ Means so that the functions applied to the cells are of general nature or partially defined according to the mode of each cell operation For normal operating mode (not RECOVERY), de9 general arithmetic or logic functions without pre-established attributions.
~ For the operating mode in time domain (recursive), mixed functions od certain feelings attributed for time mode operations (amplitudes, frequency, phase, sequence function) while keeping the others in order general.
~ Means for at ~ t: target tables at the output of the each cell so as to be able to use the storage in read or write as needed ~ Capture of cell results and self-indexed storage at not variable on. a memorial zone with definable limits ~ Table reading on a limit memory area definable way to ottribucz a reeultdt value 12-04-2881 11:02 G2SI INC INC. 4186501286 P.0'7i25 MODUW ~ fiE- PROCESSOR SYSTEM, A. ELEAAENTS GONFIGtJRABLES ET
INTERELIABLES PERAI ~ TENDING TO DARE. MULTIPLE IS CALCULATIONS
PARALLELES Sl ~ i OF THE SIGNAL. OR OES RAW DATA
given to a value of a table which could be used for lice conversion process.
~ Ways to generalize the sequential filtering process of the existing patent so as to be able to apply a sequence additional arithmetic functions to the result of the cell, od the arithmetic functions can be chosen on lines of code Means for applying functions within each group so as to be effected on the result of the group whose results come from. of a selected set of cells 1 Means for routing group outings on a matrix of exit, selectively for each group and gradually over one at several outputs of the output matrix ~ To progressively and dynamically transfer data from one group to one to several outings of a section of the output matrix and in combination with other groups, ~ To choose the section of the output matrix on which one given group will be routed, ~ Means for selectively choosing the source of the value of each entry in the entry matrix ~ So that the value can come directly from an entry a Ne data input interface ~ So that the value can come directly from a processor hurry.
~ nec mo ~ rens to selectively select the destination of the value of each output of the output matrix:
~ So that the value can go directly to a output from a data output interface ~ So that the value can be transmitted directly ~ a hl5te processor.
Means for adding variables so that the celluia functions can be applied on multiple levels and that the inacription of values on these variables comes from selective.
DOCUMENTS INCLUDED
FILE DESCRIPTION Reference braver antrieur Fi 2, Generator A ~ out of sbtcctions fairs IrticrfaCe CPU
Fig05.pcx _ Adding peram8trc IF ~ Details of atttnuafion details and slaxion function vccto> ielle or direct Fig06.pcx Parameters ~ o ~ of the MaYtrc parameter Changertxnt parameters frequency and Phases Fig06a.pcxExtension Calwl New ftgurc for extension of calculation functions on the fi ure atamttrcs Fig07.pcx _ _ Adding stlcction mode Generation x-axis will open on function in bcm rel or on hand Pi 08. Accumulator & ClcIcnChementNon nmdifite ex _ Figt t: pex Signal output (q '8) outputs Add function Ae orders from loudspeakers with levels assigned to (es soetics stlcctioones and addition of sottit sections Figl 1 Signal outputs (Sections New figure of apex of 8 outputs) dttsil for gradual stlcetion by section of SOrtiGs Figl2.brnpSlection contr6ks -, M ~~ cation pore adjvutcr in selection of erttrtCS
on 1cs matrices of aramtre contrAlcs Figl3.pcx Cell functions Adding command bits for functions on the air Fi 14. Oscillator function cells Not modified ex Fi 15. Cells function of Trester of Not modified x noise Figl6.pcx Function cells In the meantime. Adding CPU access rtcl, Control ~ access given to inputs Adding an Order of stlection of EVERYONE ENTERS PROVINCE
(CPU
or external Inurface Figl a.pcxCells Sampler function. Adding write access table mtmoire d stlcetion mCmoirc sur function or transfer of results cell Selection went out table or fonetimr without table Ei 18_ Function cells Between tem Unmodified xs rel detectors on cntrrs Fi 19. Function cells fi Not modified Fi 0. x Funnel cells No changes limit controls Fi 1. ex Sampling function cells No changes initialization control