180721. lajstromszámú szabadalom • Berendezés logikai modellekbe rendezett információk számítyógépi értékelésének hatékoby elvégzésére
« ISO"71 3 zésre álló adatok feldolgozása aránylag hosszú időt vesz igénybe. A találmány célja a termelés, kutatás, szakirodalmi tájékoztatás, valamint mindezek irányítási hatékonyságának növelése olyan berendezés segítségével, amely a 5 fenti tevékenységek logikai modelljein végzett transzformációknak, illetve műveleteknek a szokványosnál számottevően rövídebb gépidőt igénylő elvégzését teszi lehetővé. A találmány feladata ezen belül számítógéphez hoz- IC zákapcsolható olyan célkészülék kifejlesztése, amely két tetszőleges, de azonos hosszúságú bináris vektor skaláris szorzatának meghatározására, más szóval a két bináris vektorban az azonos helyen álló 1-esek megszámlálására alkalmas. 15 A találmányi gondolat alapja az, hogy a bináris vektorok skaláris összeszorzását számítógéppel —, szubrutin segítségével —, az ún. shiftelési eljárással lehet célszerűen elvégezni. Amennyiben a gépi szó hosszát „p”-vel jelöljük: ak- 20 kor a (k — 1) • p <n sk - p összefüggés írható fel, amely szerint „k” számú gépi szó 25 szükséges az egyenként „n” hosszúságú bináris vektorok tárolásához. A hagyományos *-■- tehát külön erre a célra kifejlesztett célkészülék nélküli — számítógépek esetében két (A és B) vektor skaláris összeszorzása az alábbi lépések 30 egymásutánjával végezhető el: 1. lépés: az „A"’ és „B" jelű vektorok „szétszabdalása” és tárolása a „p” nagyságú gépi szóhossznak megfelelő „k" számú részre; 2. lépés: „A” jelű vektor első részének elővétele a 35 memóriából; 3. lépés: „B" jelű vektor első részével logikai „ES"kapcsolat képzése; 4. lépés: „p” számú shiftelés és számlálás; 5. lépés: „A” jelű vektor második részének elővétele a 40 memóriából; 6. lépés: „B" jelű vektor második részével logikai „ÉS”-kapcsolat képzése; 7. lépés: „p” számú shiftelés és számlálás; 3k — t. lépés: „A” jelű vektor k részének elővétele a memóriából; 3k. lépés: „B" jelű vektor k részével logikai „ÉS"- 50 kapcsolat képzése; 3k + 1. lépés: „p” számú shiftelés és számlálás. A végrehajtandó skalár szorzáshoz szükséges gépidő tehát a következő módon adódik. Ha a számítógép ciklusideje 1 usée — és ezt csak a leggyorsabb számítógépek 5? érik el (pl. az R20-as számítógép ciklusideje 2 rusée) —, akkor egy shiftelés, valamint egy gépi szónak a memóriából való elővétele legalább 2 usée idői igényel. Amennyiben a vektorok „n” hosszúságú és „k” számú gépi szóban férnek el, akkor 2k usée az elővételi idő és ugyancsak 2k [Jisec a logikai „ÉS"-kapcsolat meghatározásához szükséges idő, valamint 2k ■ p usee a szükséges shiftelési idő, továbbá az !-esek számától függően nulla és 2k • p rusec közötti hosszúságú a számlálási idő. Ily módon összesen 65 minimálisan: 2- k • (p + 2) ;usec, illetve maximálisan: 4k(p + 1) usée időre van szükség két, egyenként „n" hosszúságú vektor skaláris szorzatának meghatározásához. A találmány célja a számítógéphez csatlakoztatható célkészülék segítségével a fentiekben részletezett időszükséglet számottevő mértékben való csökkentése. A kitűzött célnak megfelelően a találmány szerinti berendezés logikai modellekbe rendezett információk értékelésének hatékony elvégzésére, pl. tudományos kutatást, műszaki tájékoztatást, ipari termelést, valamint ezek irányítását szolgáló számítógépes eljárásoknak a gépidő nagyfokú lerövidítése útján való intenzitás növelésére — amely berendezés a számítástechnikában önmagukban ismert digitális logikai áramköri elemeket, pl. adatszelektort, adatregisztereket, számláló regisztereket és kiegészítő áramköröket tartalmaz — oly módon van kialakítva, hogy az adatszelektor, az adatregiszterek és a számláló regiszterek bináris vektorok skaláris szorzásának elvégzésére alkalmas skaláris szorzóegységgé vannak összeépítve, a skaláris szorzóegységhez vezérlő egység van hozzárendelve, a vezérlő egység és a számítógép közé a vezérlő egység működését meghatározó címdekódoló áramkör, utasítás dekódoló áramkör, továbbá a számláló regiszterek információtartalmát a vezérlő egység utasításainak megfelelően továbbító illesztő áramkör, végül pedig a célkészülék működési állapotait a számítógéphez továbbító visszajelző áramkör van beiktatva. A berendezés további ismérve lehet, hogy a számítógép és a célkészülék közé a számítógépről a célkészülékre való adatátvitelt és utasítás-átvitelt szolgáló összeköttetések, így ún. címvonal, utasításvonal és legalább egy adatvonal, továbbá a célkészülékről a számítógépre való adatátvitelt szolgáló összeköttetés, így legalább egy adatvonal, valamint ugyancsak a célkészülékről a számítógépre vezérlő jelet továbbító összeköttetés, ún. visszajelző vonal van beiktatva. A tároló és skaláris szorzóegység tároló alapegysége két, a bináris vektorokat mint operandusokat befogadó és a művelet végzés idejére tároló adatregisztert, valamint az elvégzett műveletek eredményeit befogadó és tároló számláló regisztereket tartalmaz. A bináris vektorokat befogadó adatregiszterek a számítógép gépi szóhosszához igazodó tárolócellával rendelkeznek, vagy a gépi szóhosszhoz igazodó számú tárolócellákat tartalmazó tároló elemek láncolataként vannak kialakítva. A számláló regiszterek közül az egyik a mindenkori utolsó részművelet eredményét tároló cellákat, a másik számláló regiszter pedig a teljes művelet-ciklus addig elvégzett műveleteinek összegét tároló cellákat tartalmazza. A bináris vektorokat befogadó adatregisztereket és adatszelektort tartalmazó tároló és skaláris szorzóegységhez az elvégzett műveletek eredményéi a számítógépbe továbbító illesztő áramkör van hozzárendelve. A vezérlőegység dekódoló alegységet, vezérlő áramkört, valamint a müveletelvégzés tényét a számítógép számára továbbító visszajelző áramkört tartalmaz. A dekódoló alegységnek a számítógép és a vezérlő áramkör közé iktatott cím-dekódoló áramköre, valamint ugyancsak a számítógép és a vezérlőáramkör közé iktatott uiasítás-dekódoló áramköre van. A vezérlőáramkör a számítógépből jövő adatokat áí-2