FR 2540277 A1 19840803 FR 8301544 A 19830201 La présente invention a pour objet une mémoire de mots munie d'un circuit de transcodage d'adresses. Les mémoires courantes sont organisées en mots constitués de plusieurs éléments binaires Le nombre de mots est en général une puissance de deux Comme on a souvent besoin de mémoires ayant une forme matricielle, la répartition de ces-mots correspond à des matrices de 2 P par 2 q mots Dans ce cas, pour écrire ou lire un mot dans la mémoire, il suffit d'alfffichez une adxresse-olonne X sur un premier groupe de p fils d'adresse et une adres- se ligne Y sur un second groupe de q fils d'adresse. Cependant, il est souhaitable parfois de dispo- ser d'une mémoire de Ax B mots o les nombres A et B ne sont pas des puissances de 2 C'est le cas notamment avec les mémoires d'écran alphanumérique o l'on a besoin de x 24 caractères (ou de 80 x 25) ou avec les mémoires d'écran graphique au format facsimilé à 1728 x 2288 points dans laquelle les points sont groupés par mots de 64 élé- ments binaires, ce qui conduit à des mémoires de 27 x 2288 mots. Lorsque A et B ne sont pas des puissances de 2, on peut écrire: 2 P s'exprime avec p+l éléments binaires, et B avec q+l élé- ments binaires. Deux cas peuvent se présenter: si 2 P+q+l et 2 q+l. si 2 p+q (Ax B allant de 2 p+q+l à 2 p+q+ 2 serait inemployée. Le problème que se propose de résoudre l'inven tion est justement de trouver un moyen permettant d'uti- liser une mémoire de capacité 2 p+q+l mots, dans le cas particulier o chaque mot est défini par une première adresse à p+l éléments binaires et une deuxième adresse à q+l éléments binaires. L'invention résout ce problème par l'adjonc- tion d'un circuit de transcodage d'adresses à p+q+ 2 en- trées et à p+q+l sorties Ce circuit comprend deux par- ties: a) une première partie constituée par: p+l entrées et p+l sorties, les p+l entrées rece- vant p+l éléments binaires définissant un nombre X inférieur à A, ces éléments binaires étant répar- tis entre un élément de plus faible poids et un élément de plus fort poids, les p+l sorties étant reliées à p+l premières entrées d'adressage de la mémoire, p+l-r connexions directes entre les p+l-r entrées affectées aux p+l-r éléments binaires de plus fai- ble poids et p+l-r sorties, un premier multiplexeur possédant un premier grou- pe de r entrées recevant des expressions logiques des r éléments binaires de plus fort poids de X reçus par les r entrées correspondantes, et possé- dant un second groupe de r entrées portées à un même niveau logique prédéterminé, ce premier mul- tiplexeur possédant r sorties reliées aux r sor- ties restantes de cette première partie, b) une seconde partie constituée par: q+l entrées et q sorties, les q+,entréeer:ece vant q+l éléments binaires définissant un nombre Y in- férieur à B, ces éléments binaires étant répartis entre un éeément bfinaet de-' p-Lufa b 4-lecs e-po- un élément binaire de plus fort poids, les q sort- ties étant reliées aux q dernières entrées d'adressage de la mémoire, q-r connexions directes entre les q-r entrées af- fectées aux q-r éléments binaires de plus faible poids de Y et q-r sorties, un second multiplexeur possédant un premier groupe de r entrées recevant des expressions logiques de r éléments binaires de plus fort poids de Y pris après l'élément binaire de Y ayant le plus fort poids et possédant un second groupe de r entrées reliées au premier groupe de r entrées du premier multiplexeur de la première partie, ce second mul- tiplexeur possédant r sorties reliées aux r sor- ties restantes de cette seconde partie, chaque multiplexeur possédant en outre une entrée de com- mande qui reçoit l'élément binaire de plus fort poids du nombre Y appliqué à l'entrée de plus fort poids de la seconde partie. Dans ce qui précède, r est un entier vérifiant les relations: ( 2 r-1) 2 p+ 1-r > A ( 4) 2 q + 2 q-r 7 B Grace à ce circuit de transcodage, les r en- trées d'adressage de la mémoire, qui sont reliées aux sorties du premier multiplexeur reçoivent, selon la va- leur de l'élément binaire de plus fort poids de Y, soit r expressions logiques de r éléments binaires de plus fort poids de X, soit r niveaux logiques prédéterminés; les r entrées d'adressage de la mémoire qui sont reliées aux sorties du second multiplexeur reçoivent de même, soit les r éléments binaires de plus fort poids de Y pris après l'élément ayant le plin fort poids, soit les r éléments binaires de plus fort poids de X r Il y a donc multiplexage d'adresses sur deux groupes de r entrées dû adressage. Les caractéristiques de l'invention apparal- tront mieux après la description qui suit, d'exemples de réalisation donnés à titre explicatif et nullement limi- tatif Cette description se réfère à des dessins annexés sur lesquels: la figure 1 est un diagramme montrant la pla- ce respective des nombres A et B par rapport aux puissan- ces de 2, la figure 2 est un schéma général d'une mé- moire conforme à l'invention, la figure 3 illustre un mode particulier de réalisation d'une mémoire de 24 x 80 mots utilisant une mé- moire de 2048 mots, la figure 4 illustre un autre mode particu- lier de réalisation d'une mémoire de 27 x 2288 mots utili- sant une mémoire de 64 K mots. La figure 1 est un diagramme qui permet de pré- ciser graphiquement les places relatives des nombres A et B et du produit AB Ce dernier est supposé compris entre 2 p+q et 2 p+q+l et non entre 2 p+ q+l et 2 p+q+ 2 auquel cas, il n'y aurait pas d'autres moyens que d'utiliser une mé- moire de capacité 2 p+q+ 2 * Le domaine d'application de l'invention correspond donc à la zone hachurée de l'axe. L'idée qui est à la base de l'invention est de multiplexer certaines adresses pour réduire de p+q+ 2 à p+q+l le nombre d'entrées d'adressage Ce multiplexage est possible, en faisant intervenir judicieusement deux groupes de r adresses, le nombre r étant défini à partir de deux nombres A' et B' supérieurs ou égaux à A et B, respectivement: A.' = 2 p+l-r ( 2 r-l) * A r ( 2 r (,4; B' 2 q-r ( 2 r+l) > B Le nombre A' étant égal à 2 P+ 1-2 p+l-r, il est donc inférieur à 2 P+l Le nombre B' étant égal à 2 q+ 2 q-r, il est donc inférieur à 2 q+ 2 q donc à 2 q+l Le produit A'B' est égal à 2 P+q+l-2 p+q+l-2 r Il est donc compris entre AB et 2 p+q+l Autrement dit, une mémoire de A'B' mots tombe bien dans le domaine de l'invention et présen- te une capacité supérieure à AB. Les places respectives de A', B' et de A'B' sont marquées sur le diagramme de la figure 1. Le point A'B' est bien dans la zone hachurée. Au lieu de réaliser une mémoire de AB mots on va réaliser une mémoire de AMB' mots en utilisant la for- me particulière du produit A'B'. Lorsque l'élément binaire de plus fort poids de Y est à 1, ce qui donne à Y au moins la valeur 2 q, tous les éléments binairesde Y depoidssupérieurà q-rsontnéesairement nuls sinon B' excéderait 2 q+ 2 q-r Ceci permet de multi- plexer les adresses de la manière suivante: p+l-r entrées d'adressage vont recevoir en permanence les p+l-r éléments binaires de poids faible du nombre X inférieur à A, q-r entrées d'adressage vont recevoir en permanence les q-r éléments binaires de poids faible du nombre Y inïé- rieur à B, r entrées d'adressage vont recevoir: soit les r éléments binaires de poids fort de X quand l'élément binaire de poids fort de Y est à " O ", soit " 1 " (c'est-à-dire un niveau logique prédétermi- né) quand l'élément binaire de poids fort de Y est à Wl. r autres entrées d'adressage vont recevoir: soit les r éléments binaires de poids fort de Y (sauf son élément binaire de plus fort poids) quand l'élément binaire de poids fort de Y est a "on", soit les r éléments binaires de poids fort de X quand l'élément binaire de poids fort de Y est à " 1 - Pour préciser ces questions, on notera Xo Xp les p+l éléments binaires de X (Xo désignant l'élément binaire de plus faible poids et Xp l'élément binaire de plus fort poids); on notera de même Yo Yq les q+l élé- ments binaires de Y (Yo étant l'élément binaire de plus faible poids et Yq l'élément binaire de plus fort poids); enfin, on notera Mo Mp+q les p+ q+l entrées d'adressage de la mémoire. On peut alors écrire la correspondante entre les entrées d'adressage et les éléments binaires d'adres- sage de la manière suivante: r q-r r p+l-r sur:Mp-q M M M M M M. Si Yq-O on trouve Yq-lYq-r Yq-r-l Yo Xp Xp+l-r Xp-r Xo Si Yq=l on trouve Xp Xp+lr Yq-r-l Yo "l" "l" Xp-r Xo ? e Les entrées multiplexées sont marquées par des flèches. Pour trouver l'entier r, on part des inégalités ( 4) et on cherche la plus petite puissance de 2 supérieu- re à B-2 q, ce qui va donner 2 q-r On en déduit la plus grande valeur de r possible et on vérifie si cette valeur satisfait la première inéquation des inégalités ( 4), re- lative à A, à savoir ( 2 r-1) 2 P+l-r A. Si r existe, il peut y avoir plusieurs val Ieurs convenant Dans ce cas, on choisit de préférence la plus petite. Si r n'existe pas on renwouvel/e l'ess&i en permutant A et B. D'un point de vue concret, une mémoire conçue selon l'invention se présente sous la forme illustrée sur la figure 2 La mémoire proprement dite, MEM, comprend p+q+l entrées d'adressage notées Mo à Mp+q Elle est pré- cédée d'un circuit de transcodage d'adresses CTA, compre- nant deux parties, respectivement CTA(X) et CTA(Y), char- gées de traiter les nombres X et Y qui constituent les adresses du mot à désigner parmi les Ax B mots possibles. La première partie CTA(X) est constituée par: p+l entrées notées E(X)o E(X)p et p+l sorties notées -20 S(X)o S(X)p; les p+l entrées reçoivent les p+l élé- ments binaires Xo, X 1, Xp définissant le nombre X. Ces éléments binaires sont répartis entre un élément de plus faible poids,f Xo, et un élément de plus fort poids; les p+l sorties sont reliées à p+l premières entrées d'adressage de la mémoire, soit Mo à Mp. p+l-r connexions directes CD(X) entre les p+l-r entrées E(X)o, E(X)p-r affectées aux p+l-r éléments binaires de plus faible poids Xo, Xp-r et p+ l-r sorties S(X)o, S(X)p-r. un premier multiplexeur M(X) possédant un premier grou- pe e(X)l de r entrées recevant des expressions logiques de r éléments binaires de plus fort poids de X (Xp-r+l Xp) reçus par les 'r entrées correspondantes E(X)p-r+l E(X)p; le multiplexeur possède un second groupe e(X)2 de r entrées portées à un même niveau lo- gique prédéterminé, par exemple à 1; ce premier multi- plexeur possède enfin r sorties s(X) reliées aux r sor- ties restantes, S(X)p-r+l S-(X)p. La seconde partie, CTA(Y), du circuit de trans- codage est constituée par: q+l entrées notées E(Y)o E(Y)q et q sorties notées S(Y)o S(Y)q-l; les q+l entrées reçoivent q+l éé 16- ments binaires sait Yo, Y,, Yq, dfinissan-t-Ie nonm- bre Y; ces éléments binaires sont répartis entre un élément de plus faible poids, Yo, et un élément de plus fort poids Yq; les q sorties S(Y)o S(Y)q-l sont re- liées aux q dernières entrées d'adressage de la mémoi- re, soit Mp+l Mp+q. q-r connexions directes CD(Y) entre les q-r entrées E(Y)o E(Y)q-r affectées aux q-r éléments binaires de plus faible poids de Y et q-r sorties S(Y)o S(Y)q-r-l, un second multiplexeur M(Y) possédant un premier groupe e(X)l de r entrées recevant des expressions logiques. des r éléments binaires Yq-r Yq-l de plus fort poids de Y pris après l'élément binaire Yq de plus fort poids, et un second groupe e(Y)2 de r entrées reliées au premier groupe de r entrées du premier multiplexeur de la première partie, ce second multiplexeur possédant r sorties s(Y) reliées aux r sorties restantes de cette seconde partie, soit S(Y)q-r S(Y)q-l. Chaque multiplexeur M(X), M(Y) possède en outre une entrée de commande, respectivement C(X), C(Y), qui reçoit une expression logique de l'élément binaire de plus fort poids du nombre Y soit Yq, appliqué à l'entrée de plus fort poids E(Y)q de la seconde partie. Les r entrées d'adressage Mp-r+l Mp de la mé- moire qui sont reliées aux sorties du premier multi- plexeur M(X) reçoivent ainsi, selon la valeur de l'élé- ment binaire Yq de plus fort poids de Y, r expressions l logiques des r éléments binaires de plus fort poids de X, soit r niveaux logiques prédéterminés De même, les r entrées d'adressage Mp+q-r Mp+q de la mémoire, qui sont reliées aux sorties du second multiplexeur, reçoivent soit les r éléments binaires de plus fort poids de Y pris après Yq, soit les r éléments binaires de plus fort poids de X. En plus de ses entrzes d:?adressagej la mémmo r e MEM comprend naturellement une entrée de commande 10 re- liée à un bus de commande 12 et une entrée de données 14 reliée à un bus de données 16:. Dans la description qui précède, les entrées des multiplexeurs reçoivent certains éléments binaires mais elles pourraient évidemment recevoir leur complé- ment Dans ce cas, il suffirait d'adjoindre, dans le cir- cuit représenté, un inverseur logique entre l'entrée du circuit de transcodage et l'entrée du multiplexeur Dans les exemples qui vont suivre, on supposera que les en- trées des multiplexeurs reçoivent les éléments binaires eux-mêmes. En pratique, chaque multiplexeur peut être constitué de r multiplexeurs élémentaires à deux entrées et une sortie On peut utiliser par exemple le multiple- xeur 74-LS 158 de la Société Texas Instruments. Deux exemples de réalisation vont maintenant être décrits en référence aux figures 3 et 4. Le premier exemple correspond à une mémoire d'écran d'affichage alphanumérique de 80 x 24 mots utili- sant une mémoire de 2048 mots. Avec les notations précédentes, on a p= 6 et q= 4 ainsi que A= 80 et B= 24. Les relations définissant r sont alors; A'=( 2 r-1)x 26 +l-r > 80, et 2540277 ? BI= 24 + 24-r E 24 La deuxième inéquation impose 24-r > 24-16, soit 24-r > 8, donc r=l Il en résulte que A'= 64 Comme A' n'est pas supérieur à A, cette solution ne convient pas. On réitère l'essai en permutant les deux nom- bres A et B On prend donc cette fois p-4 et q= 6 avec A= 24 et B-80. On cherche alors r tel que: A'=( 2 r-l)x 24 +l-r ?,24, et B'= 26 + 26-r Y 80. La deuxième inéquation donne 26-r S/80-64 = 16, d'o r= 2 Il en résulte que A'= 24, ce qui convient. La solution est donc p= 4, q= 6, r= 2. Le schéma de multiplexage est alors le suivant, o les fils multiplexés sont encore marqués par une flè- che: M 10 M 9 M 8 M 7 M 6 M 5 M 4 M 3 M 2 Ml M O Y 6 = 0: Y 5Y 4Y 3 Y 2 Y 1 Y O X 4 X 3 X 2 Xl X O O Y 6 = 1: X 4 X 3 Y 3 Y 2 Y 1 Y O " 1 " " 1 " X 2 Xl X O t T T T On obtient ainsi un circuit mémoire qui fait juste 24 x 80 mots et qui est représenté sur la figure 3. Il comprend un premier multiplexeur M(X) constitué de deux multiplexeurs 2-)1, respectivement M(X)l et M(X)2 dont les entrées reçoivent X 3 et X 4 d'une part, et deux signaux logiques 1 d'autre part Il comprend un second multiplexeur M(Y) constitué, lui aussi, de deux multi- plexeurs 2 1, respectivement M(Y)l et M(Y)2 dont les en- trées reçoivent Y 4, Y 5 d'une part et X 3, X 4 d'autre part. L'élément binaire Y 6 de plus fort poids les commande tous deux La mémoire MEM comprend 11 entrées d'adressage M O à M 1 O Le circuit de transcodage CTA possède cinq entrées pour l'adresse X, soit XO à X 4, S ix entrées poux I'adzes 2- se Y, soit Y O à Y 5 plus l'entrée de commande pour Y 6, et onze sorties S(X} O à S(X 1)4 et S(Y)0 à S(Y)5. Le second exemnle correspond àA une, m 4-tiúr= d'écran d'affichage graphique de 27 x 2288 mots' utilisant Là une mémoire de 64 K mots. Dans cet exemple, on a p= 4 et q=ll ainsi que A-27 et B= 2288. On cherche r tel que: A'=( 2 rl)x 24 +l-r -/ 27, et B'-= 211 + 211-r 2288. La deuxième inéquation donne r-3, d'o A'= 28, solution qui convient On obtient donc le schéma de mul- tiplexage suivant: - M 15 M 14 M 13 M 12 Mll M 10 M 9 M 8 M 7 M 6 M 5 M 4 M 3 M 2 M 1 MO si Yll= O Y 10 Y 9 Y 8 Y 7 Y 6 Y 5 Y 4 Y 3 Y 2 Y 1 Y O X 4 X 3 X 2 X 1 X O Si Yll=l X 4 X 3 X 2 Y 7 Y 6 Y 5 Y 4 Y 3 Y 2 Y 1 Y O " 1 ""l' " 1 " Xl X X t 1 T T TTT De cette façon, on obtient une mémoire de 28 x 2304 mots, soit 1792 x 2304 points Chaque mot peut com- prendre 64 éléments binaires dans le cas de l'application à l'affichage graphique La figure 4 représente le cir- cuit obtenu Le circuit de transcodage d'adresses com- prend cinq entrées affectées à X (x O à X 4) et douze en- trées affectées à Y (Y O à Yll) Les multiplexeurs M(X) et M(Y) comprennent chacun trois multiplexeurs 2-> 1 Le pre- mier multiplexe les éléments X 2, X 3, X 4 avec un même ni- veau logique " 1 l et le second les éléments Y 8, Y 9, Y 10 avec X 2, X 3, X 4 La commande du multiplexage s'effectue par Yll. REVENDICATIONS 1 Mémoire destinée à mémoriser Ax B mots, o A et B sont des nombres qui vérifient les inégalités: 2 P( A27 +l 2 q S(X)O S(X)p, les p+l entrées recevant p+l élé- ments binaires (X O Xp) définissant un nombre X inférieur à A, ces éléments binaires étant répar- tis entre un élément de plus faible poids (XO) et un élément de plus fort poids (Xp), les p+l sor- ties étant reliées à p+l premières entrées d'adressage (M O Mp) de la mémoire (MEM), p+l-r connexions directes CD(X) entre les p+l-r entrées affectées aux p+l-r éléments binaires de X de plus faible poids et p+l-r sorties, un premier multiplexeur M(X) possédant un premier groupe e(X)l de r entrées recevant des expressions logiques des r éléments binaires (Xp-r+l Xp) de plus fort poids de X reçus par les r entrées cor- respondantes, et un second groupe e(X)2 de r en- trées portées à un même niveau logique prédétermi- né, de premier multiplexeur possédant r sorties s(X) reliées aux r sorties restantes de cette pre- mière partie, b) une seconde partie CTA(Y) constituée par: q+l entrées E(Y)0 E(Y)q et q sorties S(Y)O S(Y)q-l, les q+l entrées recevant q+l élé- ments binaires (YO Yq) définissant un nombre Y inférieur à B, ces éléments binaires étant répar- tis entre un élément de plus faible poids (Y 0) et un élément de plus fort poids (Yq), les q sorties étant reliées aux q dernièresentxées d'adressage (Mp+l Mp+q) de la mémoire, q-r connexions directes CD(Y) entre les q-r en- trées affectées aux q-r éléments binaires de plus faible poids de Y et qr sorties, un second multiplexeur M(Y) possédant un premier groupe e(Y)l de r entrées recevant des expressions logiques des r éléments binaires de plus fort poids (Yq-r+l Yq-l) de Y pris après l'élément binaire de Y ayant le plus fort poids (Yq) et un second groupe e(Y)2 de r entrées reliées au pre- mier groupe de r entrées e(X)l du premier multi- plexeur M(X) de la première partie, ce second mul- tiplexeur possédant r sorties s(Y) reliées aux r sorties restantes S(X)q-r S(Y)q-l de cette se- conde partie, chaque multiplexeur possédant en outre une entrée de commande C(X), C(Y) qui reçoit l'élément binaire (Yq) de plus fort poids du nombre Y appliqué à l'entrée E(Y)q de plus fort poids de la secon- de partie, les r entrées d'adressage (Mp-r+l Mp) de la mémoire qui sont reliées aux sorties du premier multiple- xeur M(X) recevant ainsi, selon la valeur de l'élément binaire (Yq) de plus fort poids de Y, soit r expressions logiques des r éléments binaires (Xp-r+l Xp) de plus fort poids de X, soit r niveaux logiques prédéterminés, et les r entrées d'adressage (Mp+q-r+l Mp+q) de la Mé- moire qui sont reliées aux sorties du second multiplexeur M(Y) recevant de même soit les r éléments binaires de plus fort poids de Y pris après l'élément ayant le plus fort poids (Yq=r+l Yq-l), soit les r éléments binaires de plus fort poids de X (Xp-r+l Xp), dans ce qui précé- de, r étant un entier vérifiant les relations: ( 2 r-1)2 P+l-r > A 2 Mémoire selon la revendication 1, caracté- risée en ce que chaque multiplexeur M(X), M(Y est cons; titué de r multiplexeurs 2- 11. 3 Mémoire selon la revendication 1, caracté- risée en ce que lesdites expressions logiques d'éléments binaires sont les éléments binaires eux-mêmes. 4 Mémoire selon la revendication 1, caracté- risée en ce qu'elle est apte à traiter 24 x 80 mots et en c e qu'elle comprend une mémoire à onze entrées d'adressage, etun circuit de transcodage d'adresses comprenant: une première partie comprenant cinqentrées, cinq sor- ties, deux multiplexeurs 2- 11, une seconde partie à six entrées d'adressage plus une entrée de commande et six sorties, et deux multiple- xeurs 2-> 1. Mémoire selon la revendication 1, caracté- risée en ce qu'elle est apte à traiter 27 x 2288 mots eten ce qu'elle comprend une mémoire à seize entrées d'adres- sage et un circuit de transcodage d'adresses comprenant: une première partie comprenant cinq entrées, cinq sor- ties, et trois multiplexeurs 2 -_ 1, une seconde partie comprenant onze entrées d'adressage, plus une douzième de commande, et onze sorties et trois multiplexeurs 2-41.