Brevet FR2671204A1 — publié le 19920703

La présente invention concerne un circuit d'ordinateur et, plus particulièrement, un appareil destiné à fournir des signaux de sortie qui sont une fraction, qui peut être choisie, des signaux d'entrée. Dans des systèmes d'ordinateur et dans d'autres circuits numériques, il apparaît souvent un besoin de fournir des signaux qui sont une fraction, qui puisse être choisie, d'une séquence de signaux d'entrée. Par exemple, pour mettre à l'échelle la dimension d'un affichage de sortie, il peut être nécessaire de réduire le nombre de lignes et de pixels présentés sur l'affichage. Pour y parvenir, il est utile de disposer d'un circuit susceptible d'utiliser un compte des lignes et des pixels d'entrée amenés et de fournir une sortie qui est une fraction, qui peut être choisie, de cette entrée. Un tel circuit peut aussi être adapté directement pour une utilisation dans laquelle il fournit des fenêtres de dimensions différentes pour des affichages de sortie. C'est donc un but de la présente invention que de réaliser un circuit qui soit susceptible de compter le nombre de signaux d'entrée et de fournir comme sortie une fraction arbitraire des signaux comptés. C'est un autre but, plus spécifique, de la présente invention que de réaliser un circuit qui puisse compter le nombre de signaux d'entrée et fournir comme sortie une fraction arbitraire des signaux comptés et qui puisse pourtant être fabriqué de façon économique. Selon un premier aspect de l'invention, ces buts ainsi que d'autres sont atteints dans un circuit de production de signaux de sortie qui indiquent une fraction d'une série de signaux d'entrée caractérisé en ce qu'il comprend: des moyens pour additionner ou soustraire sélectivement deux nombres, des moyens pour fournir, aux moyens d'addition et de soustraction sélective de deux nombres, une valeur équivalente à la valeur d'un numérateur de la fraction, des moyens pour fournir aux moyens d'addition ou de soustraction sélective de deux nombres une valeur équivalente à la valeur de la différence entre un numérateur de la fraction et un dénominateur de la fraction, des moyens pour amener le moyen d'addition ou de soustraction sélective à soustraire de la valeur d'un numérateur de la fraction une valeur de la différence entre un numérateur de la fraction et un dénominateur de la fraction, afin de produire un résultat, des moyens sensibles à un résultat supérieur à zéro pour amener les moyens d'addition ou de soustraction sélective à soustraire, du résultat correspondant à chaque signal d'entrée de la série, la valeur de la différence entre un numérateur de la fraction et un dénominateur de la fraction jusqu'à ce que la valeur soit zéro ou moins, des moyens sensibles à un résultat de zéro ou moins pour amener le moyen d'addition ou de soustraction sélective à additionner au résultat la valeur du numérateur de la fraction, et des moyens pour utiliser la valeur de polarité du résultat pour indiquer si chaque signal de la série de signaux d'entrée doit être utilisé. Selon un deuxième aspect de l'invention, ces buts ainsi que d'autres sont atteints dans un circuit de production de signaux de sortie qui indiquent une fraction d'une série de signaux d'entrée caractérisé en ce qu'il comprend: des moyens pour fournir une première valeur équivalente à la valeur d'un numérateur de la fraction, des moyens pour fournir une deuxième valeur équivalente à la valeur de la différence entre un numérateur de la fraction et un dénominateur de la fraction, des moyens pour soustraire en séquence de la première valeur la deuxième valeur pour chaque signal d'entrée de la série jusqu a ce que soit produit un résultat de zéro ou moins, des moyens pour additionner en séquence la première valeur au résultat correspondant à chaque signal d'entrée de la série jusqu'à ce qu'un résultat supérieur à zéro soit produit, et des moyens pour utiliser la valeur du résultat pour indiquer si chaque signal de la série de signaux d'entrée doit être utilisé. Ce circuit comprend de préférence en outre des moyens pour répéter en séquence un résultat produit par le circuit. Ces buts et particularités de l'invention ainsi que d'autres seront mieux compris en se référant à la description détaillée qui suit, prise en liaison avec les dessins dans lesquels des éléments similaires sont dés Ignés par des références similaires dans les différentes figures. La Figure 1 est un schéma fonctionnel représentant un circuit de l'invention. La Figure 2 est un diagramme représentant divers signaux utilisés dans le circuit de la Figure 1. Certaines parties des descriptions détaillées qui suivent sont présentées en termes de représentations d'opérations sur des bits de données à l'intérieur d'une mémoire d'ordinateur. Ces descriptions et représentations constituent le moyen utilisé par l'homme de l'art du traitement des données pour communiquer le plus efficacement la substance de son travail à un autre homme de l'art. Ces étapes décrites sont celles qui exigent des manipulations physiques de quantités physiques. Habituellement, mais non nécessairement, ces quantités prennent la forme de signaux électriques ou magnétiques qui peuvent être mémorisés r transférés, combinés, comparés et manipulés d'une autre manière.Il s'est révélé approprlé parfois, et en particulier pour des raisons d'usage commun, d'appeler ces signaux des bits, valeurs, éléments, symboles, caractères, termes, nombres ou similaires. Il faut cependant garder à l'esprit le fait que tous ces termes et d'autres qui leurs sont semblables doivent être associés aux quantités physiques appropriées et sont simplement des étiquettes commodes pour désigner ces quantités. En outre, on se réfère souvent dans les manipulations effectuées à des termes comme additionner ou comparer qui sont classiquement associés à des opérations mentales effectuées par un opérateur humain. Une telle capacité d'un opérateur humain n'est ni nécessaire ni souhaitable dans la plupart des cas dans toutes les opérations décrites ici qui font partie de la présente invention. Les opérations sont des opérations de machines. Des machines utiles pour effectuer les opérations de la présente invention comprennent des ordinateurs numériques polyvalents ou d'autres dispositifs similaires. Dans tous les cas, la distinction entre des opérations de procédé de mise en oeuvre d'un ordinateur et le procédé de calcul lui-même doit être gardée à l'esprit. La présente inventIon concerne un appareil destiné à exploiter un ordinateur en traitant des signaux électriques ou d'autres signaux physiques (par exemple mécaniques, chimiques) pour engendrer d'autres signaux physiques souhaités. En se référant maintenant à la Figure 1, celle-cI représente un schéma fonctionnel d'un circuit 10 d'une structure conforme à l'invention. Le circuit 10 comprend ce qui est appelé généralement ici une source de signaux de commande 12 qui, dans le mode de réalisation, peut être une machine d'état d'une structure conforme aux enseignements bien connus dans l'art. Le signal fourni par la source 12 de signaux de commande comprend un signal d'horloge de système CLK (qui est lui-même fourni à la source 12), un signal d'entrée CIN qui peut être programmé pour fournir soit un un binaire soit un zéro, et un signal BHI qui peut être amené à fournir une série constante de signaux binaires pour des raisons qui seront expliquées plus loin. La source 12 fournit aussi des signaux SELA et SELB pour la commande du multiplexage dans le circuit 10.La source 12 de signaux de commande reçoit comme entrée le signal d'horloge du système CLK, un signal de restauration qui indique quand une opération doit commencer ou recommencer, un signal INC qui indique quels signaux d'entrée doivent être comptés, et un signal COUT qui est une rétroaction à partir d'un résultat produit par le circuit 10. Deux autres signaux sont fournis comme entrées au circuit 10. Ceux-ci sont un signal NDIF qui est un signal numériquement égal au numérateur d'une fraction et un signal NOT~NDR qui est le complément binaire de la différence entre le numérateur et le dénominateur de la fraction. La fraction considérée est la valeur fractionnaire du compte d'entrée que l'on souhaite fournir comme compte de sortie. Par exemple, si l'on prévoyait, sur l'écran d'un affichage de sortie, une très petite fenêtre dans laquelle le nombre de lignes ou de pixels serait de dix, et que l'on souhaitait réduire le nombre de lignes à quatre cinquièmes de celui des lignes d'entrée, la valeur de la fraction serait de quatre cinquièmes, NDIF serait quatre et la valeur de NDR serait un. Le signal NOT~NDR serait alors le complément binaire de un. Les signaux NDIF et NOT~NDR sont fournis à un premier multiplexeur 14. Le signal NOTNDR est également fourni à un mltiplexeur 15. La sortie du multiplexeur 15 est fournie comme l'un des deux signaux d'entrée à un additionneur 17. La sortie du multiplexeur 14 est fournie à une porte OU 18 qui reçoit aussi le signal de commande BHI comme autre entrée. La sortie de la porte OU 18 est transférée comme deuxième entrée à l'additionneur 17. L'additionneur 17 est un circuit additionneur typique bien connu dans l'art antérieur comportant un nombre suffisant d'étages binaires pour traiter la valeur qui peut être prévue pour le signal NDIF et tout nombre qui peut lui être ajouté. Un tel additionneur peut être utilisé comme circuit soustracteur, d'une façon bien connue dans l'art antérieur, si le complément de la valeur binaire du diminuteur est ajouté au diminuande et qu'un signal d'entrée de un est fourni au premier étage. Ceci est réalise en utilisant le signal CIN qui fournit le signal d'entrée en cas de soustraction. Lorsque l'additionneur 17 doit être utilisé pour ajouter, une valeur de zéro est fournie comme signal CIN; lorsque l'additionneur 17 doit être utilisé pour soustraire, une valeur de un est fournie comme signal CIN.L'additionneur 17 produit un signal de sortie COUT et un signal qui est la somme ou la différence des deux signaux d'entrée selon l'opération accomplie. Le signal de sortie COUT est fourni comme signal d'entrée à la source de signaux de commande 12 pour commander l'utilisation ou la non utilisation des signaux d'entrée qui sont en cours de réduction. ta somme ou la différence des deux signaux d'entrée provenant de l'additionneur 17 est transférée à un registre 20 qui mémorise la valeur de chaque addition ou soustraction. La valeur mémorisée dans le registre 20 est transférée en retour sur le signal d'horloge suivant CLK comme entrée du multiplexeur 15. Le fonctIonnement du circuit 10 peut être mieux compris en se référant au schéma représenté å la Figure 2. Dans l'exemple représenté à la Figure 2, on suppose que l'on souhaite réduire le nombre d'une série de signaux d'entrée qui apparaissent dans un ordre séquentiel. Par exemple, on peut souhaiter réduire le nombre de lignes qui apparaissent sur un affichage de sortie à une fraction donnée du nombre d'origine des lignes en négligeant certaines de ces lignes de façon que l'information puisse être présentée sur un affichage de sortie particulier.Ainsi, pour réduire la dimension de haut en bas sur l'affichage à sept neuvième de l'original, il peut être souhaitable de produire une sortie qui ne comprend que les sept neuvième du nombre de lignes et de pixels qui sont fournis pour l'affichage. En variante, il peut être souhaitable de réduire de sept neuvièmes le nombre de pixels de chaque ligne de 1 affichage. Le circuit 10 de la Figure 1 peut être utilIsé pour produire une sortie qui peut commander ces deux opérations. Il faut noter que la fraction dont les signaux d'entrée doivent être réduits est entièrement arbitraire et peut facilement être modifiée en fournissant différentes valeurs comme signaux NDR et NDIF. Ainsi, si l'on souhaite produire une sortie qui est égale à sept neuvIèmes de l'entrée, la valeur du signal NDIF est de sept alors que la valeur du signal NDR est de deux (la différence entre sept et neuf). A la partie haute de la Figure 2 est représentée une série de signaux d'horloge. Des signaux d'entrée doivent apparaître pendant chacune des ces périodes et, sur neuf signaux d'entrée qui sont supposés apparaître en séquence, deux doivent être négligés de sorte outil reste sept signaux. C'est cette fonction du circuit 10 que de choisir quels signaux d'entrée négliger et que de fournir une sortie à partir de laquelle ce résultat peut être détermine.C'est également le but du circuit 10 que de choisir des signaux à négliger d'une manière telle que, s'ils sont utilisés pour produire une sortie d'affichage, il se produira la distorsion d'affichage la plus faible possible (sous réserve de contraintes économiques raisonnables) . Par conséquent, les signaux individuels qui doIvent être négligés devraient être répartis de façon uniforme parmi les signaux d'origine t il ne faut pas les négliger tous, ni en négliger plusieurs, en un point donné de la séquence. A l'instant Init, la valeur de compte tenue dans le registre 20 est indéterminée comme indiquée par le point d'interrogation (?) dans cette position. Le circuit de commande 12 répond à un signai de restauration d'entrée en choisissant le signal NOT~NDR à l'a de du multiplexeur 15 et le signal NDIF à l'aIde du multiplexeur 14. Le circuit de commande 12 assure aussi que le signal BHI reste bas (zéro) et que la valeur du signal CIN est de un, de manière que l'additionneur agisse comme soustracteur.Par conséquentr l'additionneur 17 soustrait du signal NDXF les valeurs du signal NDR (en ajoutant la valeur de OT 3R à NDIF et en additionnant un au résultat', pour produire la différence de cinq. Cette valeur est transférée sur la sortIe Y de l'addItionneur 17 vers le registre de mémorisation 20. Le signal de sortie est un un, ce qui indique que le résultat de la soustraction est positif. Le signal est utilisé pour indiquer que le signal d'entrée à l'instant tO ne doit pas être négligé. Ainsi, on notera que le fonctionnement du circuit 10 consistait à soustraire de la valeur du signal NDIF la valeur du signal NDR et à placer le résultat dans le registre 20 à l'instant to. Ce processus se poursuit. A l'instant tl, en réponse à la valeur positive du signal de sortie COUT, le multiplexeur 15 choisit la valeur de compte mémorisée dans le registre 20; et le multiplexeur 14 choisit le signal NOT NDR. La valeur du signal de sortie COUT améne aussi e signal BHI à rester a zéro. Ainsir l'additionneur 17 reçoit la valeur du compte mémorisé dans le registre 20 et en soustrait la valeur du signal NDR en produisant un signai de sortIe Y de trois. Cette valeur est memorisee dans le registre 20 Le signal de sortIe COUT reste égal à un puisque la valeur dans l'additionneur 17 est encore positive. Le signal de sortie indique que le signal d'entrée doit être retenu et non pas être négligé. L'opération se pcursuit: la valeur du signal NDR est soustraite de la valeur de compte restant dans le registre 20 à chaque étape Jusqu'à un instant t3 où le résultat de la soustraction est de moins un. Le signal de sortie COUT, qui est zéro ou un valeur négative, indique que le signal d'entrée sulvant doit être négligé. Le signal de sortie COUT amene le circuit de commande 12 à amener la valeur du signal d'entrée suivant CIN à être zéro de façon qu'une opération d'addition est effectuée par l'additionneur 17. te signal de sortie COUT signale à la source de signaux de commande 12 que les valeurs à fournir à l'additionneur 17 sont la valeur du compte mémorisé dans le registre 20 et la valeur du signal NDIF.Ainsi, la somme de ces valeurs produit un signal de sortie Y de six; et ce résultat est mémorisé dans le registre 20. Le résultat positif produit un signal positif de sortie COUT qui aine le circuit de commande i à commander l'additionneur 17 pour agir comme soustracteur à l'opération suivante. La séquence des opérations se répète en soustrayant de la valeur du compte la valeur de NDR jusqu'à ce que la valeur produite par l'additionneur 17 soit à nouveau zéro ou un nombre négatif et produise un signal de sortie négatif COUT. Le signal négatif de sortie COUT amène à nouveau le signal d'entrée à I 'Intervalle suivant à être négligé et la valeur du signal NDIF à être à nouveau ajoutée au compte du registre oC. De cette manière, e circuit 10 produit une sortie qui peut être utilisée pour signaler quels signaux d'entrée d'une séquence doivent être Inclus et quels signaux doivent être négligés dans une séquence de signaux d'entrée, afin d'obtenir une fraction souhaItée de la séquence d'entrée. Ainsi, les signaux résultants produits par le circuit 10 peuvent être utilIsés pour balayer la sortie d'un tampon de bloc vers un affichage de sortie, par exemple pour indiquer des pixels et des lignes à négliger dans l'affichage. Il existe des situations dans lesquelles il est souhaitable que la valeur du registre 20 soit sauvegardée au lieu qu'une valeur lui soit ajoutée ou en soit soustraite. Par exemple, lorsque l'on compte des lignes d'affichage pour en réduire le nombre, Il est nécessaire de ne mettre en oeuvre qu'au début de chaque ligne le circuit 10 qui commande la réduction de ligne et de sauter tout les autres pixels de la ligne. Le circuit 10 utilise le signal d'entrée TNC pour indiquer que la valeur mémorisée dans le registre 20 devrait être sauvegardée jusqu'au cycle d'exploitation suivant. En amenant le signal BHI à être un un binaire et en fournissant ainsi une série de uns binaires à l'additionneur 17 dans ce mode soustractif d'opération, une valeur de zéro est soustraite de la valeur retenue dans le registre 20. Ceci permet à la valeur du registre 20 d'être cyclée sans modification.En utilisant cette possibilité, la valeur du registre 20 peut être retenue dans toute une ligne d'affichage en fournissant des uns pour chaque pixel d'une ligne en utilisant le signal d'entrée BHI, il faut noter que i'utilisatior. du signal BHI pour parvenir à cette opération fait gagner un étage du multiplexeur qui serait normalement utilisé pour accomplIr l'opération, et ceci est donc moins onéreux que #on ne s y attendrait L'utilisation du circuit accélère se p1'#s le fonctionnement du circuit 10 par rapport à i'utilisation d'un autre étage du multiplexeur. Bien que la présente invention ait été décrite en termes d'un mode de réalisation préféré, on comprendra que diverses modifications et variantes peuvent être apportées par l'homme de l'art sans s'écarter de ''esprit et du cadre de l'invention. REVENDICATIONS 1. Circuit de production de signaux de sortie qul indiquent une fraction d'une série de signaux d'entrée caractérisé en ce qu Il comprend: des moyens (17) d'addItion ou de soustraction sélective de deux nombres, des moyens pour fournir, aux moyens d'addition et de soustrac'icn sélective de deux nombres une valeur équivalente à la valeur d un numérateur de la fraction, des moyens pour fournir aux moyens d'addition ou de soustractIon séiective de deux nombres une valeur équivalente à la valeur de la différence entre un numérateur de la fraction et un dénominateur de la fraction, des moyens pour amener les moyens d'addition ou de soustraction sélective à soustraire de la valeur d'un numérateur de la fraction une valeur de la différence entre un numérateur de la fraction et un dénominateur de la fraction, afin de produire un résultat, des moyens sensibles à un résultat supérieur à zéro pour amener les moyens d'addition ou de soustraction sélective à soustraire, du résultat correspondant à chaque signal d'entrée de la sérIe, la valeur de la différence entre un numérateur de la fraction et un dénomInateur de la fraction jusqu'à ce que la valeur soit zéro ou moins des moyens sensibles à un résultat de zéro ou moins pour amener 'es moyens d'addition ou de soustraction sélective à additionner au résultat la valeur du numérateur de la fraction, et des moyens pour utiliser la valeur de polarité du résultat pour indiquer si chaque signal de la série de signaux d'entrée doit être utilisé. 2. CIrcuit de production de signaux de sortie qui indiquent une fraction d'une serie e signaux d'entrée caractérisé en ce qu'il comprend. des moyens pour fournir une premier valeur équivalente à la valeur d'un numérateur de la fraction, des moyens pour fournir une deuxieme valeur équivalente à la valeur de la différence entre un numérateur de la fraction et un dénominateur de la raction r des moyens pour soustraire en séquence de la première valeur la deuxième valeur pour chaque signal d'entrée de la série jusqu'à ce que soit produit un résultat de zéro ou moins, des moyens pour addItionner en séquence la première valeur au résultat correspondant à chaque signal d'entrée de la série jusqu ce qu'un résultat supérIeur à zéro soit produit, et des moyens pour utiliser la valeur du résultat pour indiquer si chaque signal de la série de signaux d'entrée doit être utilisé. 3. Circuit selon la revendication 2, caractérisé en ce qu'il comprend en outre des moyens pour répéter en séquence un résultat produit par le circuit.