CS214001B1 - Asociativní pamět - Google Patents

Asociativní pamět Download PDF

Info

Publication number
CS214001B1
CS214001B1 CS789073A CS789073A CS214001B1 CS 214001 B1 CS214001 B1 CS 214001B1 CS 789073 A CS789073 A CS 789073A CS 789073 A CS789073 A CS 789073A CS 214001 B1 CS214001 B1 CS 214001B1
Authority
CS
Czechoslovakia
Prior art keywords
flip
flops
query
register
outputs
Prior art date
Application number
CS789073A
Other languages
English (en)
Inventor
Georgij V Vitalij
Alexej D Gvinepagze
Anastasia A Kolcova
Rem V Smirnov
Original Assignee
Vitaliev Georgij V
Gvinepadze Alexej D
Koltsova Anastasia A
Rem V Smirnov
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 Vitaliev Georgij V, Gvinepadze Alexej D, Koltsova Anastasia A, Rem V Smirnov filed Critical Vitaliev Georgij V
Priority to CS789073A priority Critical patent/CS214001B1/cs
Publication of CS214001B1 publication Critical patent/CS214001B1/cs

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

Vynález se týká asociativní paměti pro provádění výběrových a logických operací se znakovou informací ve tvaru víceřádových asociativních slov, tj. souborů o několika dvojkových \ asociativních znacích, obsahující adresové pamětové moduly pro záznam dvojkové informace j a obsahující pamětové prvky spojené adresovými a řádovými sběrnicemi pro záznam a čtení in: formace uložené v adresových pamětovýčh modulech, dále obsahující detektory pro indikaci mís• ta uložení informace ae zadaným souborem dvojkových asociativních znaků, přičemž vstupy detekj torů jsou spojeny β odpovídajícími řádovými sběrnicemi adresových pamětovýčh modulů, dále obs sáhující registr dotazu pro uchovávání zadaného souboru dvojkových asociativních znaků, který i je kódem dotazu, registr dotazu obsahuje klopné obvody, které jsou rozděleny na skupiny a jef jich množství je rovno počtu dvojkových asociativních znaků v kódu dotazu.
Vynález je možno použít ve vyhledávacích počítacích přístrojích a ve vysokorychlostních * systémech.
Ve známé asociativní paměti tohoto druhu ae uskutečňuje asociativní výběr na principu i shody či neshody kódu dotazu a kódů asociativních slov, uložených v paměti ve formě dvoufázových kódů, tj. takových kódů, ve kterých pro uložení jednoho bitu informace slouží dva parněji tové prvky. Pod principem neshody ae zde 1 v dalším rozumí zjištění souhlasu kódu dotazu a kódu daného asociativního slova při plná shodnosti přímého kódu dotazu a Inverzního kódu asociativního slpva. Pod principem shody se rozumí zjištování shodnosti přímého kódu dotazu
214 001
214 001 a přímého kódu asociativního slova, a také inversního kódu dotazu a inverzního kódu asooiativ ního slova.
Nedostatkem známého provedení je to, že pro výběr na základě principu shody nebo neshody musí být detektor velmi odolný oproti poruchám, protože při vyvolání řádových kódů ee mohou vybudit všechny adresové sběrnice. Všechny paměťové prvky připojená k vybuzeným adresovým sběrnicím Jsou při shodě kódu dotazu a kódu daného asociativního slova v tomto případě ve stavu 0, signály nulového stavu nebo signály shody mohou být při sečtení na odpovídající řádová sběrnici detektovány detektorem jako jedničkový signál nebo signál neshody. Fřl nesprávném vyhodnocení detektorem nelze zjistit shodu kódu dotazu a kódu daného asociativního slova.
Uvedený nedostatek způsobuje omezení kapacity a rychlosti známé asociativní paměti a ztě žuje možnosti jejího praktického využívání.
Známé asociativní paměti a asociativními paměťovými moduly se vyznačují tím, že se zde princip neshody realizuje uvnitř paměťových modulů. Nedostatkem těchto pamětí je složité provedení speciálních modulů, které ztěžuje jejich buzení a výrobu a zvySuje výrobní náklady.
Cílem vynálezu je odstranit tyto nedostatky a vytvořit asociativní parnět, která by umožňovala nedestruktivní asociativní výběr pomocí levných a jednoduchých adresových parnětových modulů.
Podstata asociativní paměti podle vynálezu spočívá v tom, že obsahuje převodníky dotazu z dvojkového pozičního kódu na kód m z jn, jejichž vstupy jsou spojeny s výetupy odpovídající skupiny klopných obvodů registru dotazu a jejich výetupy jsou spojeny β adresovými sběrnami odpovídajících adresových paměťových modulů, pHčemž detektory pro indikaci místa uložení informace zapojené na výstupní řádové sběrnice adresových paměťových modulů jsou tvořeny obvody shody s počtem vstupů rovným počtem skupin klopných obvodů registru dotazu.
Převodníky dotazu jsou vytvořeny jako dekodéry dotazu pro převod dvojkového pozičního kódu na kód _1 z n.
Převodníky dotazu obsahují permanentní pamětové moduly, opatřené adresovými a řádovými sběrnicemi, přičemž adresové sběrnice každého permanentního paměťového modulu jsou spojeny s výstupy odpovídajícího dekodéru dotazu a řádové sběrnice každého permanentního paměťového modulu jsou připojeny k adresovým sběrnicím odpovídajících adresových paměťových modulů.
Převodníky dotazu dále obsahují aumátory modulo dvě, přičemž každá skupina klopných obvodů registru dotazu je rozdělena na části, z nichž první část obsahuje podskupiny β jedním klopným obvodem, následující části obsahují podskupiny s více klopnými obvody, dekodéry dotazu jsou rovněž rozděleny na části s odpovídajícími podskupinami a aumátory modulo dvě, přitom výstupy dekodérů dotazu každé podskupiny Jsou připojeny k prvním vstupům sumátorů modulo dvě náležejících k táto podskupině a výetup každého sumátoru modulo dvě je epojen a druhými vstupy sumátorů modulo dvě jedné z podskupin následující části a.výstupy sumátorů modulo dvě poslední části jsou spojeny s adresovými sběrnicemi odpovídajících adrssovýoh paměťových modulů.
Paměť dále obsahuje přídavný registr masky, obsahující klopné obvody, Jejichž množství je rovno počtu dvojkových asociativních znaků v kódu dotazu, a logické součtové obvody, jeo
214 001
Jichž Jedny vstupy Jeou připojeny k Jedničkovým nebo nulovým výstupům odpovídajících klopných obvodů přídavného registru masky a Jejichž druhé vstupy Jeou připojeny k výstupům odpovídajících klopných obvodů registru dotazu a výstupy logických součtových obvodů jeou spojeny se vstupy odpovídajících převodníků dotazu.
Podle vynálezu obsahuje paměť e výhodou vícevstupové logické součtové obvody a výstupní registr, obsahující klopné obvody, jejichž počet je roven počtu dvojkových asociativních zna ků v kódu dotazu, přičemž výstupní registr je rozdělen na skupiny klopných obvodů a ke vstupu každé skupiny klopných obvodů výstupního registru je připojen výstup odpovídajícího vlcevetupového logického součtového obvodu, jehož vstupy jsou spojeny s odpovídajícími řádovými sběrnicemi adresových paměťových modulů,, přičemž klopné obvody registru dotazu a klopné obvo dy přídavného registru masky jsou rozděleny na odpovídající skupiny„ v nichž Je počet klopných obvodů roven počtu klopných obvodů ve skupinách klopných obvodů výstupního registru.
Dále pamět obsahuje vstupní registr přo uchování vlceřádového dvojkového kódu a pro realizaci libovolné zadané logické operace, který obsahuje klopné obvody, jejichž počet je roven počtu znaků v kódu dotazu, které jsou rozděleny na skupiny klopných obvodů, přičemž kromě toho obsahujte obvody shody, jejichž první vstupy jsou připojeny k jedničkovým nebo nulovým výstupům klopných obvodů odpovídající skupiny vstupního registru, dále obsahuje dekodér* operací pro řízení přenosu informace na registr dotazu a výstupní registr, přičemž odpovídající výstupy dekodéru operací jsou připojeny k druhým vstupům obvodů shody, zatímco výstupy částí obvodů shody jsou spojeny se vstupy odpovídajících klopných obvodů registru dotazu a výstupy ostatních obvodů shody jsou připojeny ke vstupům odpovídajících vícevstupových logických součtových obvodů.
Skupiny klopných obvodů vstupního a výstupního registru mohou být podle vynálezu spojeny v posuvné registry a skupiny klopných obvodů přídavného registru masky mohou být spojeny v kruhové posuvné registry.
Pamět může také obsahovat přídavné dekodéry ve funkci několika detektorů pr® indikaci místa uložení informace, dále prioritní obvod pro výběr detektorů v zadané posloupnosti, přičemž vstupy prioritního obvodu jsou spojeny s prvními výstupy věech přídavných dekodérů, kromě toho může obsahovat obvody shody pro nulové signály a obvody shody pro jedničkové signály a dále adresové paměťové moduly sdružené v soubory z m adresových paměťových modulů pro uchování m-řádových dvojkových asociativních znaků, přito· stejnojmenné řádové sběrnice adresových paměťových modulů každého souboru jsou připojeny ke vstupům obvodů shody pro: nulová, resp. jedničkové signály, odpovídajícím tomuto souboru, přičemž výstupy obvodů shody pro nulová,resp. jedničkové signály každého souboru jsou připojeny ke vstupům odpovídajících přídavných dekodérů.
Dále paměť obsahuje podle vynálezu informační paměťový blok, sestavený z informačních paměťových prvků spojených adresovými sběrnicemi, řádovými sběrnicemi záznamu a řádovými sběrnicemi čteni a uspořádaných v buňkách po K řádech, kromě toho obsahuje registr informace, sestavený z klopných obvodů, jejichž počet je roven počtu řádů v buňce informačního paměťového bloku, přičemž řádová sběrnice čteni informačního paměťového bloku jeou připojeny ke vstupům: odpovídajících klopných obvodů registru Informace a řádová- sběrnice záznamu in2X4 001 formačního paměťového bloku jeou připojeny k výstupům odpovídajících klopných obvodů registru Informace a adresové sběrnice informačního paměťového bloku Jsou spojeny θ výstupy odpovídajících detektorů, přičemž každá buňka informačního paměťového bloku obsahuje přídavné paměťové prvky pro záznam kódu asociativního slova v dané buňce informačního paměťového bloku a registr informace obsahuje přídavné klopné obvody pro uložení kódů přicházejících z registru dotazua zaznamenávaných do informačního paměťového bloku nebo pro příjem kódů z informačního paměťového bloku, přičemž počat přídavných paměťových prvků v každé buňce informačního paměťového bloku a počet přídavných klopných obvodů registru informace je roven počtu klopných obvodů registru dotazu, přičemž druhé vstupy přídavných.· klopných obvodů registru informace jsou připojeny k výstupům klopných obvodů registru dotazu, jejichž vstupy jaou připojeny k výstupům přídavných klopných obvodů registru informace.
Paměť může účelně obsahovat řádový srovnávací obvod, jehož jedny vstupy jsou spojeny a výstupy odpovídajících klopných obvodů registru dotazu a jehož druhé vstupy jaou připojeny k výstupům odpovídajících přídavných klopných obvodů registru informace.
Konečně Je výhodné, když paměť obsahuje převodník kódu pro stanovení vztahu mezi číslem vybuzeného detektoru a čísly adresových sběrnic informačního paměťového bloku, přičemž vstupy převodníku kódu jaou spojeny a výstupy věech detektorů a výstupy převodníku kódu jaou připojeny k odpovídajícím adresovým sběrnicím informačního paměťového bloku.
Asociativní paměť podle vynálezu umožňuje provádět paralelní asociativní výběr a výběr podle adres pomocí jednoduchých paměťových modulů, má velkou kapacitu a pracuje vysokou rychlostí. Kromě toho ae v této paměti dají snadno provádět logické operace i komplikované výběrové operace a řada aritmetických a nearitmetických operací, které lze znázornit jeko konečný sled logických a výběrových operací. Efektivita dané paměti může dosáhnout hodnoty jednoho ai dvou paměťových prvků pro jeden asociativní znak, tj. řád asociativního slova.
Vynález bude vysvětlen v souvislosti a příkladem provedení znázorněným na výkresu, kde značí obr. 1 celkové blokové schéma asociativní paměti podle vynalezu, obr. 2 blokové schéma jednoho příkladu provedení převodníku dotazu podle vynálezu, obr. 3 blokové schéma druhého příkladu provedení převodníku dotazu podle vynálezu, obr. 4 blokové zapojení dalěího příkla- ; du provedení převodníku dotazu, obr. 5 funkční schéma paměti podle vynálezu, která umožňuje provádět maskování, věechny logické operace i řadu aritmetických operací a složitých výběrových operací, obr. 6 funkční schéma paměti ae zvýšenou efektivností využívání součástí paměti a obr. 7 funkční zapájení paměti, vyznačující se vysokou rychlostí při opskovanén záznamu do obsazených asociativních buněk.
Asociativní paměť obsahuje adresové paměťové moduly (obr. 1) a paměťovými prvky 1*, spojené a adresovými sběrnicemi 2 a a řádovými sběrnicemi 3, přičemž řádové sběrnice 3 Jeou připojeny ke vstupům detektorů 4, z nichž každý je spojen a jednou nebo několika řádovými sběrnicemi 3| paměťové prvky X'adresových paměťových modulů 1, spojené 8 řádovými sběrnicemi 3j, slouží pro záznam kódu asociativního slova odpovídajícího tomuto detektoru 4. Dále obsahuje paměť registr 5 dotazu, obsahující jeden nebo několik klopných obvodů 6, jejichž výstupy jaou spojeny s odpovídajícími adresovými sběrnicemi^ adresových paměťových modulů lpřes převodníky i dotazu. Klopné obvodyregistru 3 dotazu jsou rozděleny na skupiny 8 po Jednom ne5
214 001 bo několika klopných obvodech 6. Vstupy každého převodníku 7 dotazu jeou spojeny s výstupy klopných obvodů J6 odpovídající skupiny β a výstupy převodníků 7_ dotazu jsou spo jeny s adresovými sběrnicemi_2 odpovídajících paměťových modulů 1. Počet skupin 8 závisí na počtu klopných obvodů j6_v registru 5_dotazu a na počtu adresových sběrnic 2 paměťových modulů 1.
Převodníky 7 dotazu mohou být vytvořeny jako dekodéry_9_(obr. 2), tj. pro převod z normálního dvojkového kódu na kód 1 z n, přičemž v daném případě n = 8. V tomto případě převodník_7 dotazu představuje dekodér 9 dotazu, který obsahuje osm obvodů 10 shody se třemi vstupy, z nichž každý vstup je připojen k přímému jedničkovému nebo inverznímu nulovému výstupu jednoho ze tří klopných obvodů 6_ odpovídájící skupiny_8 registru 5_ dotazu (obr. 1).
Příklad provedení převodníku 7 dotazu pro převod na kód jo z n je znázorněn na obr. 3. Převodník 7 dotazu obsahuje navíc permanentní paměťový modul 11 s adresovými sběrnicemi 12 a. s řádovými sběrnicemi 13; výstupy dekodéru _9 dotazu jsou připojený k adresovým sběrnicím 12 permanentního paměťového modulu 11 a řádové sběrnice 13 permanentního paměťového modulu 11 Jeou spojeny a odpovídajícími adresovými sběrnicemi^ adresových paměťových modulů 1»
Také dalěí příklad provedení převodníku 7_ dotazu (obr. 4) je určen pro převod dvojkového pozičního kódu na kód m_z n. Tento převodník T_ dotazu obsahuje aumétory 14 modulo dvě. Každá skupina 8. klopných obvodů registru 5_dotazu (obr. 1) a analogicky i dekodér 9_dotazu jsou rozděleny na části 15 (obr· 4) a podskupinami 16. První část 15 obsahuje podskupiny 16 s jedním klopným obvodem 6, zatímco dalěí části 15 obsahují podskupiny 16 ee dvěma nebo více klopnými obvody 6 a 8 příslušnou podskupinou dekodéru 9_dotazu, a s příslušnými suuátory 14 modulo dvě. Dekodéry 9_ dotazu každé podskupiny 16 jaou připojeny k prvním vstupům sumátorů 14 modulo dvě patřících k této podskupině 16, výstup každého sumátoru 14 je spojen a druhými vstupy šumátorů 14 jedné podskupiny 16 následující části 15 a výstupy sumátorů 14 poslední části 15 Jsou připojeny k adresovým sběrnicím 2_ odpovídajících paměťových modulů 1. (obr. 1).
Kromě vyhledávacích operací provádí paměť podle vynálezu taká operace maskování, úplný soubor logických operací a všechny pochody, které je možno provést ve formě konečného souboru výběrových a logických operací. Paměť obsahuje přídavný registr 17 masky (obr. 5) určený pro uchovávání kódu masky, v němž umístění jedniček a nul ukazuje na dvojkové asociativní znaky kódu dotazu, které jsou bez významu pro realizovanou vyhledávací operaci. Pod kódem maaliy se rozumí dvojkový llsód, jehož počet řádů je roven počtu řádů. v kódu dotazu a umístění jedniček udává znaky dotazu rozhodující pro daný výběr. Přídavný registr 17 masky obsahuje jeden nebo několik klopných obvodů 18 podle počtu dvojkových asociativních znaků v kódu dotazu* Kromě toho obsahuje paměť logické součtové obvody 19, jejichž jedny vstupy jsou připojeny k jedničkovým nebo nulový» výstupům odpovídajících klopných obvodů 18; druhé vstupy logických součtových obvodů 19 jsou připojeny k výstupům odpovídajících klopných obvodů _6 registru _5_ dotazu, jejich výstupy jsou spojeny se vstupy odpovídajících převodníků 7 dotazu.
Kromě toho paměť obsahuje vlcevstupová logické součtové obvody 20 a výstupní registr 21, který obsahuje Jeden nebo několik klopných obvodů 22 podle počtu dvojkových asociativních znaků v kódu dotazu a Je rozdělen na skupiny 23 po jednom nebo po více klopných obvodech 22. Vstup každé skupiny 23 klopných obvodů 22 je připojen k výstupu odpovídajícího vícevstupového logického součtového obvodu 20, Jehož vstupy jsou spojeny a odpovídajícími řádovými sběrnicemi 3
214 001 adresových paměťových modulů 1. Klopné obvody 6_regietru 5_dotazu a klopné obvody 18 přídavného registru 17 masky Jsou rovněž rozděleny na skupiny 8, 24 v nichž počet klopných obvodů 6, 18 je roven počtu klopných obvodů ve skupinách 23 výstupního registru 21.
Paměť dále obsahuje vstupní registr 25. který se skládá z jednoho nebo z několika klopných obvodů 26 podle počtu dvojkových asociativních znaků v kódu dotazu; klopné obvody 26 vstupního registru 25 jsou rozděleny na skupiny 27 po jednom nebo více klopných obvodech 26. Kromě toho pamět obsahuje obvody 28 shody, jejichž první vstupy jaou připojeny k jedničkovým nebo nulovým výstupům klopných obvodů 26 odpovídající skupiny 27, a dekodér 29 operací, jehož odpovídající výstupy jsou připojeny ke druhým vstupům obvodů 28 shody. Přitom výstupy Jedné části obvodů 28 shody jsou spojeny se vstupy odpovídajících klopných obvodů 6 registru 5 dotazu a výstupy druhé části obvodů 28 shody jsou připojeny ke vstupům odpovídajících víeevstupovýoh logických součtových obvodů 20.
Skupiny 23, 27 klopných obvodů 22, 26 výstupního registru 21 a vstupního registru 25 jsou spojeny v posuvné registry a skupiny 24 klopných obvodů 1B přídavného registru 17 masky v kruhové posuvné registry.
Pamět dále obsahuje přídavné dekodéry 30 (obč. 6), prioritní obvod 31. obvody 32 shody pro nulové signály a obvody 33 shody pro jedničkové signály. Přitom vstupy prioritního obvodu 31 jsou spojena 8 prvními výstupy všech přídavných dekodérů 30. Adresové paměťové moduly 1 Jaou sdruženy v soubory po m. adresových paměťových modulech _1, přičemž stejnojmenné řádové sběrnice 3 adresových paměťových modulů_1_každého souboru jsou připojeny ke vstupům obvodů 32, 33 shody, odpovídajícím tomuto souboru, a výstupy obvodů 32, 33 shody každého souboru jsou připojeny ke vstupům odpovídajících přídavných dekodérů 30.
Pamět přídavně obsahuje informační paměťový blok 34 (obr. 7) z informačních paměťových prvků 35, které jsou propojeny adresovými sběrnicemi 36, řádovými sběrnicemi 37 záznamu a řádovými sběrnicemi 38 čtení a jsou uspořádány v buňkách po K řádech. Dále pamět obsahuje registr 39 informace, obsahující několik klopných obvodů 40, jejichž počet je roven počtu řádů v buňce informačního paměťového bloku 34, přičemž řádové sběrnice 38 čtení informačního pamětového bloku 34 jsou připojeny ke vstupům odpovídajících klopných obvodů 40, řádové sběrnice 37 záznamu jsou připojeny k výstupům odpovídajících klopných obvodů 40 registru 39 informece a adresové sběrnice 36 informačního paměťového bloku 34 jsou spojeny s výstupy odpovídajících detektorů 4. 7 každé buňce informačního paměťového bloku 34 Jaou také přídavné paměťové prvky 41 pro záznam kódu asociativního slova v buňce, a registr 39 informace obsahuje několik přídavných klopných obvodů 42 pro uložení kódů, přicházejících z registru_5 dotazu a zaznamenávaných do informačního paměťového bloku 34, nebo pro příjem kódů z Informačního paměťového bloku 34 ; přitom počet přídavných paměťových prvků 41 v každé buňce informačního paměťového bloku 34 a počet přídavných klopných obvodů 42 Je roven počtu klopných obvodů 6 registru dotazu. Druhé vatupy přídavných klopných obvodů 42 jsou připojeny k výstupům klopných obvodů 6 a vstupy klopných obvodů 6_registru 5 dotazu jsou připojeny k výstupům klopných obvodů 42 registru 39 informace.
Dále obsahuje paměť řádový srovnávací obvod 43., jehož jedny vatupy jaou spojeny a výstupy odpovídajících klopných obvodů 6. registru 2. dotazu a druhé vstupy Jaou spojeny 8 výstupy
214 001 odpovídajících přídavných klopných obvodů 42.
Pamět také obsahuje převodník 44 kódu pro stanovení vztahu mezi číslem vybuzeného detektoru 4 a čísly adresových sběrnic 36 informačního paměťového bloku 34; jeho vstupy jsou spojeny a výstupy všech detektorů a výstupy jsou připojeny k odpovídajícím adresovým sběrnicím 36 informačního paměťového bloku 34»
Asociativní pamět podle vynálezu je určena pro provádění vyhledávacích a logických operací s informacemi,, které jsou ve tvaru víceřádových dvojkových asociativních znaků.
Adresové pamětové moduly 1 slouží pro uchovávání dvojkové informace a obsahují paměťové prvky l*propojené adresovými a řádovými sběrnicemi 2,3, které jsou určeny pro záznam a čtení informace uložené v adresových paměťových modulech 1. Detektory 4 slouží k indikaci místa uložení informace s daným souborem dvojkových asociativních znaků, jejich vstupy jsou proto epojeny s odpovídajícími výstupními řádovými sběrnicemi 3 adresových paměťových modulů 1. Registr 5 dotazu je určen pro uložení zadaného souboru dvojkových asociativních znaků, tvořících kód dotazu, a obsahuje klopné obvody 6j jejichž množství je rovno počtu znaků v kódu dotazu a jejich výstupy jsou spojeny s adresovými sběrnicemi 2 odpovídajících adresových paměťových modulů_1.
Převodníky 7 dotazu jsou určený pro převod kódu dotazu z dvojkového pozičního kódu na kód jn z n; přitom vstupy každého převodníku dotazu jsou spojeny s výstupy odpovídající skupiny klopných obvodů 6 registru 5 dotazu a výstupy každého převodníku 7 dotazu jsou spojeny s adresovými sběrnicemi 2_odpovídájících adresových paměťových modulů 1.
Asociativní pamět pracuje tímto způsobem: při záznamu nového asociativního slova postupuje kód tohoto asociativního slova na vstupy klopných obvodů 6 (obr. 1) registru dotazu,
V případě, že převodníky 7_dotazu jsou ve tvaru dekodérů dotazu (obr. 2), vybudí se jeden výstup každého dekodéru_9_dotazu v souladu s kódem, přiváděným na vstupy skupiny 8_klopných obvodů 6_spojených s daným dekodérem 9 dotazu. Signály z těchto výstupů budí odpovídající adresové sběrnice 2 adresových paměťových modulů 1 (obr. 1). Pomocí neznázorněných záznamových obvodů se vybudí současně odpovídající řádové sběrnice 3 adresových paměťových modulů 1, spojené s detektorem 4» který odpovídá, asociativní buňce. Pod pojmem asociativní buňka se v tomto případě i v dalším rozumí souhrn paměťových elementů l*adresových paměťových modulů 1, které jsou propojeny s odpovídajícími řádovými sběrnicemi 3 připojenými ke vstupům daného detektoru 4. Do paměťových prvků 1*nacházejících se na průsečníku vybuzených adresových, a řádových sběrnic 2, 3 se tedy zaznamenávají nuly nebo jedničky. Záznam nového asociativního slova do paměti spočívá tedy v záznamu stavu každého dekodéru 9 dotazu v odpovídajícím paměťovém modulu 1 ve formě kódu 1 z n, přičemž se jedničky zaznamenávají na průsečíku vybuzených adresových sběrnic 2 a řádových sběrnic 3» nebo v inverzním tvaru tohoto kódu, přičemž se na průsečíku vybuzených adresových a řádových sběrnic 2, zaznamenávají nuly.
Při čtení adresových paměťových modulů 3 cílem zjištění kódu asociativních slov, shodného a kódem dotazu, dochází pouze k vybuzení adresových sběrnic 2. Stejně jako při záznamu
Ββ Čísla vybuzených adresových, sběrnic_2 Zjišťují podle kódu dotazu v registruj^ dotazu,
Čtení paměťových modulů 1 probíhá paralelně, protože ee vybuzují všechny pamětové prvky 1, spojené s vybuzenými adresovými sběrnicemi 2, tj. po jednom paměťovém prvků _1_v každém parně214 001 tovém modulu 1^ na řádové sběrnici 3. připojené ke vstupu Jednoho z detektorů 4« Při shodě kódu přiváděného na vstup dené skupiny _8^ klopných obvodů 6_s kódem zaznamenaným v paměťových prvcích 1* připojených k řádové sběrnici _3_Jednoho z paměťových modulů 1_ je na výstupu odpovídající řádové sběrnice 3 signál 1 (nebo 0). Při neshodě kódu dotazu a kódu odpovídajícího asociativního slova na výstupech odpovídajících řádových sběrnlc 3 je na výstupech řádových sběrnic 3 signál 0 (nebo 1)· Při plné shodě kódu dotazu s kódem asociativního slova odpovídajícím jednomu detektoru 4 se na všech řádových sběrnicích 3, spojených s tímto detektorem 4j objeví jedničkové signály (nebo nulové signály), což se zaregistruje detektorem 4_ vytvořeným: ve formě obvodu shody. Pod plnou shodou se zde i v dalším rozumí shoda kódů přiváděných na vstupy všech skupin 8 klopných obvodů 6 registru 5 dotazu s kódem asociativního slova zaznamenaného v dané asociativní buňce» což je souhrn paměťových prvků 1 * paměťových modulů 1» které jsou spojeny β odpovídajícími řádovými sběrnicemi 3 připojenými ke vstupu daného detektoru 4»
Řádové sběrnice_3_ paměťových modulů^ jsou rozděleny na řádové sběrnice záznamu a řádové sběrnice čtení. Na obr. 1 Jsou uvedeny všeobecné řádové sběrnice 3, slučující obě uvedené funkce.
V asociativní paměti podle vynálezu se efektivně využívají paměťové moduly 1 při malém počtu adresových sběrnic 2» Při větším počtu adresových sběrnic 2. tedy při větěí kapacitě paměťových modulů 1, se ukázalo efektivnějším použití převodníků kódu dotazu z obvyklého pozičního kódu na kód m z n. Nejjednodušší takový převod se uskutečňuje pomocí permanentních paměťových modulů 11 (obr. 3). Funkce paměti v tomto případě je analogická funkci paměti s převodníky 7 dotazu vytvořenými jako dekodéry 9 dotazu, pouze s tím rozdílem, že v obecném případě použití kóduji zji se současně vybuzuje několik výstupů každého převodníku 7_ dotazu.
Při větším počtu adresových sběrnic 2 je účelnější použít převodník 7 dotazu ee eumátory 14 modulo dvě (obr. 4) k převodu dvojkového pozičního kódu na kód m z n. Každá skupina s klopnými obvody_6_registru 3_ dotazu je rozdělena na části 15, z nichž první část 15 se skládá z podskupin s jedním klopným obvodem 6 a následující části 15 se skládají z podskupin 16 obsahujících dva nebo více klopných obvodů 6. Dekodéry _9. dotazu a sumátoru 14 jsou také rozděleny na části 15 s odpovídajícími podskupinami 16; výstupy dekodérů dotazu každé podskupiny 16 Jsou připojeny k prvním vstupům sumátorů 14 modulo dvě, náležejících k této podskupině 26, výstup každého sumátoru 14 je spojen s druhým vstupem sumátorů 14 jedné z podskupin 16 následující části 15 a výstupy sumátorů 14 poslední části 15 jsou připojeny k adresovým sběrnicím 2 odpovídajících adresových paměťových modulů JL.
Funkce asociativní paměti bude vysvětlena příkladem realizace převodníku 7 dotazu na základě vzorců, které udávají vazbu vstupní proměnné 8j převodníku 7 dotazu a výstupní proměnné převodníku 7 dotazu, kde N je počet řádů v asociativní buňce, tj. počet výstupních proměnných nebo počet adresových sběrnic 2, n je počet vstupních proměnných, tj. počet klopných obvodů _6 registru dotazu, 1ή i £:N; 1 j :Ózn pro případy:
nelNs2 \ (1) A1 “ ®1’ *2 ' ®1 J
214
001 A1 “ al Θ a2 A2 ' al ® ®2 a3’ A3 = al ® a2 a3* A4 = al ®2 ®3 Ί
L· {2)
Aj · © a4 aj; Ag « βχ © a4 a5; ® a< a^ ig = a1 ® a4 a5 J
Výstupní signály A^ ...A4 pro N = 8 se získávají sčítáním modulo dvě signálu A^^ » 5^ pro H = 2 a signálů z výstupů dekodéru 9_dotazu,, na jehož vstup se přivádějí vstupní signály (ag,, aj); výstupní signály Α^.,.Αθ pro N = 8 se získávají sčítáním modulo dvě signálu Ag = a^ pro I « 2 a signálů z výstupů dekodéru j) dotazu, na jehož výstup se přivádějí signály (a4, a5).
Při vyšSím počtu výstupů, například při H = 32, je A^ = + ág + Sg a? atd.
Výstupní signály A^ pro H = 32 se získávají sčítáním modulo dvě signálů Aj pro N = 8 a signálů z výstupů dekodérů 9_dotazu, na jejichž vstup se přivádějí signály (ag, a?), (ag, a^), ta^Q, atd.
Funkce asociativní paměti je analogická funkci paměti, kdy převodník 7_dotazu je vytvořen ve formě dekodérů 9 dotazu nebo ve formě permanentních paměťových modulů 11.
Přídavný registr 17 masky (obr. 5) je určen pro uchování dvojkového kódu masky, u něhož umístění Jedniček nebo nul udává znaky kódu dotazu bez významu pro realizovanou vyhledávací operaci; přídavný registr 17 masky obsahuje jeden nebo několik klopných obvodů 18, jejichž počet je roven počtu znaků v kódu dotazu, a také logické součtové obvody 19, jejich jedny vstupy jsou připojeny k jedničkovým nebo nulovým výstupům odpovídajících klopných obvodů 18 přídavného registru 17 masky, druhé vstupy jsou připojeny k výstupům odpovídajících klopných obvodů 6 registru 5 dotazu a výstupy jsou spojeny se vstupy odpovídajících převodníků_7_dotazu.
Funkce paměti při maskování části znaků kódu dotazu bude popsána v souvislosti s příkladem s použitím kódu 1 z n.
Záznam nových asociativních, slov probíhá analogicky jako v asociativní paměti s převodníky 7_ dotazu, vytvořenými jako dekodéry 9 dotazu. Vybírání bez maskování se také provádí touto metodou.
Při vybírání s maskováním se na přídavném registru 17 masky stanoví kód masky, v němž například jedničky odpovídají znakům dotazu, které nemají význam pro danou vyhledávací operaci. %óů jednička postupuje z výstupu odpovídajícího klopného obvodu 18 na první vstupy logických součtových obvodů 19, jejichž druhé vstupy jsou spojeny s jedničkovým a nulovým výstupem klopného obvodu ^registru 5_dotazu, takže ee jedničkový signál objeví na výstupech obou logických součtových obvodů 19 spojených s daným klopným obvodem 6. Jestliže jsou druhé klopné obvody 18 této skupiny 24 v nulovém stavu, pak na prvé vstupy ostatních logických součtových obvodů 19 této skupiny 24 přijdou nulové signály, výstup jednoho z logických součtových obvodů 19, spojeného s odpovídajícím klopným obvodem_6, se tedy nachází v jedničkovém stavu a druhý v nulovém stavu* Tím dojde k vybuzení dvou výstupů odpovídajícího dekodéru 9 dotazu, jejichž číslo je dáno číslem maskovaného znaku dotazu. Při dvou maskovaných znacích dotazu se vybudí čtyři určité výstupy dekodéru 9, dotazu, při třech maskovaných znacích osm určitých výstupů atd. Tyto výstupy dekodéru 9 dotazu budí odpovídající adresové sběrnice 2 adresových paměťových modulů lj a v důsledku toho se současně přičte zadaný počet pa214 001 mětových prvků l' podle maskovaných znaků dotazu. Jestliže je přitom na průsečíku libovolné z vybuzených adresových sběrnic 2 s danou řádovou sběrnicí_3_paměťového modulu 1 zaznamenaná jednička, pak ae na vstupu odpovídajícího detektoru 4 objeví signál shody, např. ve formě jed ničkového signálu. V ostatním je činnost paměti při maskování části znaků dotazu shodná s čin ností paměti, u níž převodníky 7 dotazu Jsou vytvořeny jako dekodéry 9 dotazu.
Vícevstupové logické součtové obvody 20 v peměti podle obr. 5 jsou spojeny s vstupním registrem 21, který je určen pro příjem informace přečtené z odpovídajících paměťových modulů 1 a obsahuje několik klopných obvodů 22, jejichž počet je roven počtu znaků v kódu dotazu a které jsou seskupeny ve skupiny 23 po jednom nebo po několika klopných obvodech 22; přitom ke vstupu každé skupiny 23 klopných obvodů 22 výstupního registru 21 js připojen výstup odpovídajícího vícevstupového logického součtového obvodu 20, Jehož vstupy jsou spojeny s odpovídajícími řádovými sběrnicemi 3 adresových paměťových modulů 1. Klopné obvody 6 registru 5 dotazu a klopné obvody 16 přídavného registru 17 masky jsou také rozděleny na skupiny 6, 24, v nichž počet klopných obvodů 6g 18 je roven počtu klopných obvodů 22 ve skupinách 23 výstupního registru 21.
Kod zaznamenaný v paměťových prvcích l/, spojených e řádovou sběrnicí 3 paměťového modulu 1, se obnovuje ve formě běžného pozičního kódu v tolika taktech, kolik je klopných obvodů 6_ v odpovídající skupině _8_ registru SMotazu. Pro vytvoření prvního řádového místa počátečního pozičního kódu každé skupiny J^ee klopné obvody 6_ této skupiny 8 nastaví do jedničkového stavu a klopné obvody 18 každé skupiny 24 ďo stavu 11...10. Na výstupu odpovídajícího dekodéru 9 dotazu se vybudí všechny adresové sběrnice 2 a lichými čísly (adresami) 1, 3, 5» .··; počáteční adrese je přiřazeno číslo 0. Jestliže tedy byla v libovolném lichém paměťovém prvku l', spojeném s danou řádovou sběrnicí 3 zvoleného adresového paměťového modulu lj zaznamenána jednička, pak se na výstupu této řádové sběrnice 3 objeví signál shody ve tvaru jedničkového signálu. Jestliže byla jednička zaznamenána v sudém paměťovém prvku l', pak ss na výstupu objeví signál neshody ve tvaru nulového signálu. Tento signál postupuje přes vícevstupový logický součtový obvod 20 na vstup odpovídající skupiny 23 klopných obvodů 22 výstupního registru 21. Pro získání druhého řádového místa pozičního kódu se kód ve skupinách 23 výstupního registruji posune o jeden krok, ve skupinách 8 klopných obvodů 6_registru 5 dotazu zůstává kod beze změny a ve skupinách 24 se cyklicky posunuje o jeden krok; přitom se budí výstupy dekodéru _9_dotazu s čísly 2, 3» 6» 7 ..., což odpovídá jedničce na druhém řádovém místě libovolného pozičního kódu. Z výstupu zvolené řádové sběrnice 3 paměťového modulu j postupuje signál shody nebo neshody přes vícevstupový logický součtový obvod 20 na vstup skupin 23 výstupního registru 21 atd.
Výběr zadaného asociativního slova se provádí buzením odpovídajících řádových sběrnic tj· jedné nebo několika řádových sběrnic 3 spojených se vstupy daného detektoru 4, pomocí záznamového proudového obvodu.
S pomocí popsaného zařízení se mohou provádět všechny logické operace se dvěma proměnnými (operandy), z nichž jedna je uchovávána v adresových paměťových modulech 1 ve tvaru asociativního slova, zakódovaného v kódu 1 z n^ a druhá je na vstupním registru 25 ve tvaru obvyklého pozičního kódu.
214 001
Vstupní registr 25 je určen pro uchovávání víceřádového dvojkového kódu, přičemž s tímto kódem e současně i β kódem libovolného asociativního slova, uchovávaného v adresových paměťových modulech 1^, může být prováděna libovolná zadaná logická operace. Vstupní registr 25 obsahuje klopné obvody 26, jejichž množství je rovno počtu znaků v kódu dotazu a které jsou rozděleny na skupiny 27 klopných obvodů 26. Obvody 28 shody jsou svými prvními vstupy připojeny k jedničkovým nebo nulovým výstupům klopných obvodů 26 odpovídající skupiny 27 vstupního registru 25. Dekodér 29 operací je určen pro řízení toku informace do registru 5 dotazu a do výstupního registru 21, protože informace se přenáší z výstupů klopných obvodů 26 výstupního registru 25 v přímém nebo inverzním kódu v závislosti na prováděné logické operaci a na kódu uloženém ve vstupním registru 25, přičemž odpovídající výstupy dekodéru 29 operací jsou připojeny k druhým vstupům obvodů 28 shody, výstupy jedné části obvodů 28 shody jsou připojeny ke vstupům odpovídajících klopných obvodů 6 registru5 dotazu a výstupy druhé čésti obvodů 28 shody jsou připojeny ke vstupům odpovídajících vícevstupových logických součtových obvodů 20. Skupiny 27» _23 klopných obvodů 26, 22 vstupního a výstupního registru 25, 21 jsou sdruženy v posuvné registry a skupiny klopných obvodů 18 přídavného registru 17 masky v kruhové posuvné registry.
Logické operace se dvěma proměnnými se dělí na tří skupiny:
a) inverze, výběr v přímém kódu, sčítání modulo dvě a operace shody;
b) operace logického součtu pro čtyři kombinace dvou proměnných v přímém i inverzním kódu;
c) operace logického součinu pro stejné čtyři kombinace.
Probereme nyní operace skupiny a) na příkladu sčítání modulo dvě. Jestliže se do klopného obvodu 26 přiřazeného dolnímu řádovému místu skupiny 27, tj. do dolního řádového místa jedné skupiny prvního operandu zaznamená nula, pak odpovídající řádové místo druhého operandu musí být zvoleno v přímém kódu. Jestliže se do dolního řádového místa první proměnné zaznamená jednička, pak se výběr provádí v inverzním kódu, tj. inverze vybraného řádu druhé proměnné, přičemž se postupuje ve stejném sledu jako při výběru v přímém kódu pouze s tím rozdílem, že se přes vstupy klopných obvodů 6 registru 5 dotazu z nulového výstupn klopného obvodu 26, příslušejícího dolnímu řádovému místu skupiny 27» přes odpovídající obvody 26 shodly přivádí nulový kód. Přitom se vybuzují výstupy dekodéru 9 dotazu odpovídající nulám v řádovém místě pozičního kódu. Analogickým způsobem, se tato operace provádí s ostatními řádovými místy obou proměnných. Pro buzení obvodů 28 shody slouží dekodér 29 operaci. Operace inverze kódu daného asociativního slovaje ekvivalentní sčítání modulo dvě s kódem první proměnné 11....1. Při výběru v přímém kódu je první proměnná rovna 00...0. Operace shody je ekvivalentní operaci sčítání modulo dvě kódu daného asociativního slova a inverzního kódu první proměnné.
v
Operace logického součtu ae uskutečňují následujícím způsobem. Jestliže dané řádové místo první proměnné obsahuje nulu, pak se provádí výběr v přímém nebo inverzním kódu, v závislosti na tom,, zda se první operand účastní operace v přímém nebo inverzním kódu. Jestliže však toto řádové místo první proměnné obsahuje jedničku, pak se tento přímý nebo inverzní kód přenáší na výstupní registr 21 přes odpovídající, obvody 28 shody a vícevstupové logické součtové obvody 20.
214 001
Skupina operaoí logického součinu vyžaduje použití adresových paměťových modulů 1 při existenci jedničky v daném řádovém místě první proměnné. Je-li na tomto řádovém místě první proměnné 0ř dochází k přímému přenosu ze vstupního registru 25 na výstupní registr 21. Výsledek operace se přenese běhenr jednoho taktu z výstupního registru 21 na vstupní registr 25; dráha pro přenos informace z výstupního registru 21 na vstupní registr 25 není na výkresu znázorněna·
Každý přídavný dekodér 30 (obr. 6) vykonává funkci několika detektorů 4 a je spojen s prioritním obvodem 31, který je určen pro výběr se správnou posloupností těch detektorů 4_, které odpovídají zadanému souboru dvojkových asociativních znaků při vícenásobném výběru, tj. současném výběru několika asociativních slov, přičemž vstupy prioritního obvodu 31 jsou spojeny β prvními výstupy všech přídavných dekodérů 30, na jejichž vstupy jsou připojeny obvody 32 shody pro nulové signály a obvody 33 shody pro jedničkové signály. Adresové pamětové moduly jsou sdružené v soubory z m adreso^ch paměťových modulů 1, které slouží pro uchovávání m řádových dvojkových asociativních znaků, což dovoluje zaznamenat v souboru z m. adresových paměťových modulů 1_ na m. řádových sběrnicích 3 až 2® - 1 různých asociativních znaků, a tedy až 2® - 1 různých asociativních slov; přitom stejnojmenné řádové sběrnice 3 adresových paměťových modulů ^každého souboru jsou připojeny ke vstupům obvodů 32, 33 shody s nulovými a jedničkovými signály, odpovídajícími tomuto souboru, a výstupy těchto obvodů 32, 33 shody každého souboru jsou připojeny ke vstupům odpovídajících přídavných dekodérů 30.
Pro zvýšeni efektivity při používání pamětí vybavených adresovými paměťovými moduly může být kód _1 z n modifikován. Aby se na jedné řádová sběrnici 3 mohlo zaznamenat několik různých asociativních slov, se místo znaku 0 nebo 1 s jedním řádovým místem zavádí m-řádový znak 00...01, 00...10, 00...11, atd., který umožňuje zaznamenat až 2®' - 1 různých asociativních slov v paměťových prvcích 1*, spojených se skupinou z m řádových sběrnic 3. Znak 00...00 se používá pr© indikaci neobsazené adresové sběrnice 2. Adresové pamětové moduly _1 se rozdělí na skupiny po m_paměťových modulech 1_, což umožňuje zaznamenat na stejnojmenných řádových sběrnicích 3 adresových paměťových modulů 1 soubor m řádových znaků. Pro indikaci shody znaků, zaznamenaných v souboru paměťových modulů^, které jsou spojeny a různými skupinami jB klopných obvodů 6 registru 5 dotazu, slouží obvody 32 shody pro nulové signály a obvody 33 shody pro jedničkové signály. Pamět pracuje tímto způsobem: při dotazu paměťových modulů 1 nabudí kód přiváděný' do registru 5 dotazu vždy jednu adresovou sběrnici 2 na výstupu každého převodníku 7 dotazu. Jestliže jsou na průsečíku vybuzených adresových sběrnic 2_a souboru určitých řádových sběrnic 3 zaznamenány stejná m řádové znaky, pak ae jejich shoda registruje obvody 32 shody pro nulové signály e obvody 33 shody pro jedničkové signály daného souboru. Přitom se přesně polovina obvodů32, 33 shody tohoto souboru nachází v jedničkovém stavu a druhá polovina v nulovém stavu. Tím se budí výetup přídavného dekodéru 30, spojeného a obvody 32, 33 shody daného souboru. Číslo výstupu přídavného dekodéru 30 je dáno čísly vybuzených obvodů 32, 33 shody na jeho vstupech. Přídavný dekodér 30 plní funkci detektoru pro několik asociativních slov, zadaných různými m. řádovými znaky na jeho vstupech.
Při dotazu adresových paměťových modulů ae v případě neshody znaků ns vybuzených adresových sběrnicíchvybudí méně než polovina obvodů 32, 33 shody příslušného souboru a u přídavných dekodérů 30 nedojde k vybuzení výstupu.
214 001
Při dotazu neobsazených asociativních buněk - pozice na řádových sběrnicích^, kde jsou zaznamenány znaky 00...00 - se vybudí první výstupy odpovídajících přídavných dekodérů 30.
Před záznamem nového asociativního slova Je třeba mu přidělit vymezený m-řádový znak. Proto ae provádí dotaz kódu, který je třeba zaznamenat do paměti. Dále se registrují neobsazené pamětové moduly 1, přičemž jako znak neobsazenosti slouží vybuzení prvního výstupu přídavného dekodéru 30. Za pomoci prioritního obvodu 31 se zvolí jeden z volných přídavných dekodérů 30 a kód odpovídajícího nepoužitého m-řádového znaku, tento znak se zaznamenává do paměťových prvků 1*, spojených s odpovídajícími adresovými a řádovými sběrnicemi 2, 3. Jestliže je pamět úplně obsazena, pak se vymaže jedno asociativní slovo, v prioritním obvodu 31 se zaznamená jemu odpovídající jn-řádový znak a pak se provede zázham nového asociativního slova uvolněným znakem.
Informační paměťový blok 34 (obr. 7) obsahuje informační pamětové prvky 35, které jsou spojeny adresovými sběrnicemi 36 s řádovými sběrnicemi 37, 38 záznamu a čtení a jsou uspořádány do buněk po K. řádech. Tento informační paměťový blok 34 je určen pro záznam informace, z níž každému slovu odpovídá zadaný soubor dvojkových asociativních znaků uchovávaných v adresových paměťových modulech 1_, které tedy tvoří paměťový blok pro uchovávání znaků informace. Pamět dál obsahuje registr 39 informace s klopnými obvody 40, jejichž počet je roven počtu řá* v dů v buňce informačního paměťového bloku 34; přitom řádové sběrnice 38 čtení Informačního paměťového bloku 34 jsou připojeny ke vstupům klopných obvodů 40 registru 39 informace,, řádové sběrnice 37 psaní jsou připojeny k výstupům klopných obvodů 40 registru 39 informace a adresové sběrnice 36 jsou spojeny s výstupy odpovídajících detektorů 4. Každé buňka informačního paměťového bloku 34 má přídavné pamětové prvky 41, které se používají pro záznam kódu asociativního slova, odpovídajícího dané buňce informačního paměťového bloku 34, a registr 39 informace obsahuje přídavné klopné obvody 42, které jsou určeny pro uchovávání kódu vysílaného z registru 5 dotazu pro záznam v informačním paměťovém bloku 34 nebo pro příjem kódů z informač* * Y ního paměťového bloku 34. Počet přídavných paměťových prvků 41 v každé buňce informačního paměťového bloku 34 a počet přídavných klopných obvodů 42 v registru 39 informace je roven počtu klopných obvodů 6 registru 5 dotazu. Druhé vstupy přídavných klopných obvodů 42 registru 39 informace Jsou připojeny k výstupům klopných obvodů 6 registru 5 dotazu a vstupy klopných obvodů 6_registru dotazu jsou připojeny k výstupům klopných obvodů 42 registru 39 Informace. Do každého slova informačního paměťového bloku 34 se zaznamenává poziční kod asociativního slova, který se uchovává v odpovídajícím slově souboru paměťových modulů 1_ ve formě kódu i ϊ η»
Při opakovaném záznamu do vybrané asociativní buňky, tj. asociativního slova, se nejprve vybudí odpovídající detektor 4, čímž dojde k vybuzení odpovídajících adresových sběrníc 36 a k výběru z informačního paměťového bloku 34 toho slova, jehož číslo je dáno číslem tohoto detektoru .4. Kod daného asociativního slova, uchovávaný v přídavných paměťových prvcích 41, přichází po řádových sběrnicích 38 čtení do registru 39 informace a z výstupů přídavných klopných obvodů 42 tohoto registru 39 informace na vstupy klopných obvodů 6 registru 5_ dotazu.
V souhlase a kódem ae vybuzují adresové sběrnice 2_na výstupu převodníkůdotazu a dochází k záznamu nulového kódu do paměťových prvků 1spojených s vybranými adresovými a řádovými
214 001 sběrnicemi_2,_3_, to znamená, že se asociativní slovo zapsaná předtím do odpovídajících parně tových modulů _1_vymaže. Potom se nová asociativní slovo zaznamená do?adresových paměťových modulů 1, které jsou určeny pro záznam znaků. Kód nového slova se předává z registru $ dotazu na vstupy přídavných klopných obvodů 42 registru 39 informace a zaznamenává ae do přídavných paměťových prvků 41 spojených s vybranými adresovými sběrnicemi 36 a řádovými sběrnicemi 37 záznamu.. Při záznamu do neobsazené buňky je znakem neobsazeného stavu přítomnost nulového kódu v přídavných paměťových prvcích 41 této buňky*
Řádový srovnávací obvod 43 (obr. 7) je jedněmi vstupy spojen s výstupy odpovídajících klopných obvodů 6 registru 5 dotazu, zatímco jeho druhé vstupy Jsou připojeny k výstupům odpovídajících přídavných klopných obvodů 42 registru 39 informace.
Při dotazu dochází k přídavné kontrole správnosti funkce paměti, při které se kod asociativního slova, zaznamenaný v odpovídajících přídavných paměťových prvcích 41 informačního pamětového bloku 34, srovnává s kódem dotazu prostřednictvím řádového srovnávacího obvodu 43*
Převodník 44 kódů je určen k tomu, aby uvedl v souhlas číslo vybuzeného detektoru £ a čísla adresových sběrnic 36 informačního paměťového bloku 34; vstupy převodníku 44 kódu jsou připojeny k odpovídajícím adresovým sběrnicím 36 informačního paměťového bloku 34*
Jestliže informační pamětový blok 34 pracuje na principu výběru podle shody adresových signálů, pak se pro převod čísla vybuzeného detektoru £ na číslo odpovídajících adresových sběrnic 36 používá převodník 44 kódu*
Probraná asociativní paměť umožňuje několikrát snížit náklady při asociativním výběru ve srovnání se zařízeními ae speciálními asociativními prvky v důsledku použití levných pamětových modulů β adresovým výběrem. Paměť je co do možností použití univerzální, protože umožňuje provádět všechny vyhledávací a logické operace i operace, které lze realizovat konečnou posloupností výběrových a logických operací. Tento způsob asociativního výběru umožňuje několikrát zvýšit kapacitu asociativní paměti ve srovnání se známými zařízaiími.

Claims (11)

1. Asociativní paměť pro provádění výběrových a logických operací se znakovou informací ve tvaru víceřádových asociativních slov, tj. souborů o několika dvojkových asociativních, znacích, obsahující adresové paměťové moduly pro záznam dvojkové informace a obsahující paměťové prvky spojené adresovými a řádovými sběrnicemi pro záznam a čtení informace uložená v adresových pamětových modulech, dále obsahující detektory pro Indikaci místa uložení informace ae zadaným souborem dvojkových asociativních znaků, přičemž vstupy detektorů jsou spojeny s odpovídajícími řádovými sběrnicemi adresových paměťových modulů, dále obsahující registr dotazu pro uchovávání zadaného souboru dvojkových asociativních znaků, který Je kódem dotaze, registr dotazu obsahuje klopné obvody, které jsou rozděleny na skupiny a jejich množství ja rovno počtu dvojkových asociativních znaků v kódu dotazu, vyznačující se tím, že obsahuje převodníky (7) dotazu z dvojkového.pozičního kódu na kod mi z n, jejichž vstupy jsou spojeny s výstupy odpovídající skupiny (8) klopných obvodůi (6) registru (5) dotazu a jejich výstupy jsou spojeny a adresovými sběrnicemi (2) odpovídajících adresovýtíh paměťových modulů (1), přičemž detektory (4) pro indikaci místa uložení informace zapojené.na výstupní řádová sběr—
214 001 nice (?) adresových paměťových modulů (1) jsou tvořeny obvody shody s počtem vstupů rovným počtem skupin (8) klopných obvodů (6) registru (5) dotazu.
2. Asociativní paměť podle bodu 1, vyznačující ee tlm, že převodníky (7) dotazu jsou vytvořeny jako dekodéry (9) dotazu pro převod dvojkového pozičního kódu na kód 1 ž n.
?. Asociativní paměť podle bodu 1 a 2, vyznačující se tím, že převodníky (7) dotazn obsahují permanentní paměťové moduly (11), opatřené adresovými (12) a řádovými (13) sběrnicemi, přičemž adresové sběrnice (12) každého permanentního paměťového modulu (11) jsou spojeny s výstupy odpovídajícího dekodéru (9) dotazu a řádové áběrnice (13) každého permanentního paměťového modulu (11) jsou připojeny k adresovými sběrnicím (2) odpovídajících adresových paměťových modulů (1).
4. Asociativní paměť podle bodu 1 a 2, vyznačující se tím, že převodníky (7) dotazu obsahují eumátory (14) modulo dvě, přičemž každá skupina (8) klopných obvodů (6) registru (5) dotazu je rozdělena na části (15), z nichž první část obsahuje podskupiny (16) s jedním klopným obvodem (6), následující části (15) obsahují podskupiny (16) s více klopnými obvody (6), dekodéry (9) dotazu jsou rovněž rozděleny na části (15) s odpovídajícími podskupinami (16) a sumátory (14) modulo dvě, přitom výstupy dekodérů (9) dotazu každé podskupiny (l6) jsou připojeny k prvním vstupům sumátorů (14) modulo dvě náležejících k této podskupině (16) a výstup každého sumátoru (14) modulo dvě je spojen s druhými vstupy sumátorů (14) modulo dvě jedné z podskupin (16) následující části (15) a výstupy sumátorů (14) modulo dvě poslední části (153 Jsou spojeny s adresovými sběrnicemi (2) odpovídajících adresových paměťových modulů (1).
5. Asociativní paměť podle bodu 1, vyznačující se tím, že obsahuje přídavný registr (17) masky, obsahující klopné obvody (18), jejichž množství je rovno počtu dvojkových asociativních znaků vkódu dotazu, a logické součtové obvody (19), jejichž jedny vstupy jsou připojeny k jedničkovým nebo nulovým výstupům odpovídajících klopných obvodů (18) přídavného registre (17) masky a jejichž druhé vstupy jsou připojeny k výstupům odpovídajících klopných obvodů (6) registru (5) dotazu a výstupy logických součtových obvodů (19) jsou spojeny se vstupy odpovídajících převodníků (7) dotazu.
6. Adoviativní paměť podle bodu 1 a 5, vyznačující se tím, že obsahuje vícevstupové logické součtové obvody (20) a výstupní registr (21), obsahující klopné obvody (22), jejichž počet Je roven počtu dvojkových asociativních znaků v kódu dotazu, přičemž výstupní registr (21) je rozdělen na skupiny (23) klopných obvodů (22) a ke vstupu každé skupiny (23) klopných obvodů (22) výstupního registru (21) je připojen vfstup odpovídajícího vícevstupového logického součtového obvodu (20), jehož vstupy jsou spojeny β odpovídajícími řádovými sběrnicemi (3) adresových paměťových modulů (1), přičemž klopné obvody (6) registru (5) dotazu a klopné obvody (18) přídavného registru (17) masky jsou rozděleny na odpovídající skupiny (8, 24), v nichž je počet klopných obvodů (6, 18) roven počtu, klopných obvodů (22) ve skupinách (23) klopných obvodů výstupního registru (21).
7. Asociativní paměť podle bodu 1, 5 a 6, vyznačující se tím, že obsahuje vstupní registr (25) pro uchování víceřádového dvojkového kódu a pro realizaci libovolné zadané logické operace, který obsahuje klopné obvody (26), jejichž počet je roven počtu znaků v kódu
214 001 dotazu, které jeou rozděleny na skupiny (27) klopných obvodů (26), přičemž kromě toho obaahuje obvody (28) ahody, jejichž první vstupy jaou připojeny k Jedničkovým nebo nulovým výstupům klopných obvodů (26) odpovídající skupiny (27) vstupního registru. (25), dále obsahuje dekodér (29) operací pro řízení přenosu informace na registr (5) dotazu a na výstupní registr (21), přičemž odpovídající výstupy dekodéru (29) operací jeou připojeny k druhým vstupům obvodů. (28) shody, zatímco výstupy částí obvodů (28) shody jsou spájeny se vstupy odpovídajících klopných obvodů (6) registru (5) dotazu a výstupy ostatních obvodů (28) shody jaou připojeny ke vstupům odpovídajících vícevstupových logických součtových obvodů (20),
8, Asociativní pamět podle bodu 1, 5, 6 a/nebo 7, vyznačující se tím, že skupiny (23,27) klopných obvodů (22,26) výstupního a vstupního registru (21,25) Jsou spojeny v posuvné registry a skupiny (24) klopných obvodů (18) přídavného registra (17) masky jeou spojeny v kruhové posuvné registry,
9, Asociativní pamět podle bodu 1, vyznačující se tím, že obsahuje přádavné dekodéry (30) ve funkci několika detektorů (4) pro indikaci místa uložení informace, dále prioritní obvod (31) pro výběr detektorů (4) v zadané posloupnosti, přičemž vstupy prioritního obvodu (31) jeou spojeny a prvními výstupy vSech přídavných dekodérů (30), kromě toho obsahuje obvody (32) ahody pro nulové signály a obvody (33) shody pro jedničkové signály a dále adresové paměťové moduly (1) sdružené v soubory z m adresových paměťových modulů (1) pro uchování mřádových dvojkových asociativních znaků, přitom stejnojmenné řádové sběrnice (3) adresových paměťových modulů (1) každého souboru Jsouc připojeny ke vstupům obvodů (32,33) shody pro nulové, resp. jedničkové signály, odpovídajícím tomuto souboru, přičemž výstupy obvodů (32,33) shody pro nulové, resp. jedničkové signály každého souboru Jsou připojeny ke vstupům odpovídajících přídavných dekodérů (30),
10, Asociativní paměť podle bodu 1, vyznačující se tím, že obsahuje informační paměťový blok (34), sestavený z informačních paměťových prvků (35) spojených adresovými sběrnicemi (36), řádovými sběrnicemi (37) záznamu a řádovými sběrnicemi (38) čtení a uspořádaných v buňkách pa K řádech, kromě toho obsanuje registr (39) informace sestavený z klopných obvodů (40), jejichž počet Je roven počtu řádů v buňce informačního paměťového bloku (34), přičemž řádové sběrnice (38) čtení informačního paměťového bloku (34) jsou připojeny ks vstupům cdpovídajících klopných obvodů (40) registru (39) informace a řádové sběrnice (37) záznamu informačního paměťového bloku (34) jsou připojeny k výstupům odpovídajících klopných obvodů (40) registru (39) informaee a adresové sběrnice (36) informačního paměťového bloku (34) jsou spojeny a vý * stupy odpovídajících detektorů (4), přičemž každá buňka informačního paměťového bloku (34) obsahuje přídavné paměťové prvky (41) pro záznam kódu asociativního slova v dané buňca informačního paměťového bloku (34) a registr (39) informace obsahuje přídavné klopné obvody (42) pro uloženi kódů přicházejících z registru (5) dotazu a zaznamenávaných do informačního paměťového bloku (34) nebo pro příjem kódů z informačního paměťového bloku (34), přičemž počet přídavných paměťových prvků (41) v každé buňce informačního paměťového bloku (34) a počet přídavných klopných obvodů (42) registru (39) informace je roven počtu klopných obvodů (6) registru (5) dotazu, přičemž druhé vstupy přídavných klopných obvodů (42) registru (39) informace jsou připojeny k výstupům klopných tíbvodů (6) registru (5) dotazu, jejichž vstupy Jaou
214 001 připojeny k výstupům přídavných klopných obvodů (42) registru (39) informace·
11· Asociativní paměť podle bodu 1 a 10, vyznačující se tím, že obsahuje řádový srovnávací obvod (43)» jehož jedny vstupy jsou spojeny s výstupy odpovídajících klopných obvodů (6) registru (5) dotazu a jehož druhé vstupy jsou připojeny k výstupům odpovídajících přídavných klopných obvodů (42) registru (39) informace.
12· Asociativní paměť podle bodu 1, 10 a/nebo 11, vyznačující se tím, že obsahuje převodník (44) kódu pro stanovení vztahu mezi číslem vybuzeného detektoru (4) a čísly adresových sběrnlc (36) Informačního paměťového bloku (34), přičemž vstupy převodníku (44) kódu jsou spojeny s výstupy věech detektorů. (4) a výstupy převodníku (44) kódu jsou připojeny k odpovídajícím adresovým sběrnicím (36) informačního paměťového bloku (34)·
CS789073A 1973-11-17 1973-11-17 Asociativní pamět CS214001B1 (cs)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CS789073A CS214001B1 (cs) 1973-11-17 1973-11-17 Asociativní pamět

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CS789073A CS214001B1 (cs) 1973-11-17 1973-11-17 Asociativní pamět

Publications (1)

Publication Number Publication Date
CS214001B1 true CS214001B1 (cs) 1982-04-09

Family

ID=5428809

Family Applications (1)

Application Number Title Priority Date Filing Date
CS789073A CS214001B1 (cs) 1973-11-17 1973-11-17 Asociativní pamět

Country Status (1)

Country Link
CS (1) CS214001B1 (cs)

Similar Documents

Publication Publication Date Title
KR100233350B1 (ko) 프로그래머블 패리티 체킹 및 비교 회로
Hayes Testing memories for single-cell pattern-sensitive faults
US20110044085A1 (en) Serially Interfaced Random Access Memory
US5111415A (en) Asynchronous leading zero counter employing iterative cellular array
KR910014953A (ko) 용장성 직렬 메모리
JPH0820967B2 (ja) 集積回路
Zhang et al. PIM-quantifier: A processing-in-memory platform for mRNA quantification
US3913075A (en) Associative memory
JPS58177600A (ja) メモリ・システム
EP0137808A1 (en) A cmos multiport general purpose register
JPS63503100A (ja) 広いメモリ構造のための専用パリティ検出システム
CS214001B1 (cs) Asociativní pamět
Prodan et al. Self-repairing embryonic memory arrays
EP1638108B1 (en) Multi-port memory
AU681656B2 (en) Programmable error-checking matrix for digital communicationsystem
GB2035637A (en) Digital stack memory devices
US4241413A (en) Binary adder with shifting function
Kanopoulos et al. Design of self-checking circuits using DCVS logic: A case study
JP3550295B2 (ja) 半導体記憶装置の並列テスト回路装置およびテスト回路装置
Mirza-Aghatabar et al. Algorithms to maximize yield and enhance yield/area of pipeline circuitry by insertion of switches and redundant modules
Castro et al. A 125MHz burst mode 0.18/spl mu/m 128Mbit 2 bits per cell flash memory
US4890255A (en) Data processing device for simultaneously activating and applying paraller trains of commands to memories for storing matrices
CN121075389A (zh) 具有数字内存中计算处理模式和列多路复用内存访问模式的内存架构
RU2384899C2 (ru) Запоминающее устройство
RU2153699C1 (ru) Устройство для перераспределения задач между процессорами