183820. lajstromszámú szabadalom • Eljárás és kapcsolási elrendezés memóriában tárolt digitális adatok gyors átrendezésére
1 183 820 2 A találmány tárgya eljárás memóriában tárolt digitális adatok gyors átrendezése, amely egyaránt alkalmas tárolt adat meghatározott adat mellé történő áthelyezésére, külső adat meghatározott adat mellé történő behelyezésére, miközben előre definiált adat törlődik, valamint külső adat meghatározott adat mellé történő behelyezésére adatveszteség nélkül. Az eljárással a hagyományos eljárásoknál lényegesen nagyobb sebességgel végezhető a memóriában tárolt adatok rendezése, mivel bizonyos funkciók egy memória ciklusidőben mennek végbe, míg hagyományos módon ugyanezeket a funkciókat a rendszer vezérlő egység, az átrendezés során, egymás után utasítások sorozatával hajt végre. Nagy adatbázissal rendelkező rendszerekben a proceszszálás folyamán szükségessé válhat olyan adatok egymáshoz rendelése, amelyek az adatmemória egymástól távoleső rekeszeiben tárolódnak, vagy külső adat belső adathoz rendelése úgy, hogy más belső adat eltávolításával a korábban elfoglalt memóriaterület ne változzék, vagy egyszerűen csak ismert adat mellé kell helyezni külső adatot a többi adat meghagyásával. Az egymáshoz rendelés hagyományos rendszerben igen hoszadalmas, ha nem ismerjük az egymáshoz rendelendő adatok memória rekeszeinek címeit. Ebben az esetben a központi vezérlő egységnek először meg kell keresnie a memóriában a meghatározott adat helyét oly módon, hogy a memória egymás után következő rekeszeiből rendre kiolvassa az adatot, majd összehasonlítja a keresett adattal, ami egy regiszterben van tárolva mindaddig, amíg a meghatározott adatot meg nem találja. Ezt követően a meghatározott adat melletti memóriarekeszbe behelyezi az oda rendelendő adatot, miután az ott korábban tárolt adatot kiolvasta és egy átmeneti regiszterben tárolja. A kiolvasás, összehasonlítás, az előzőleg kiolvasott adat visszaírása időben egymás után utasítássorozattal, utasításonként 7—15 gépi ciklussal mindaddig folytatódik, amíg az összehasonlítás eredményeképpen az áthelyezendő vagy törlendő adatot a központi vezérlő egység fel nem ismeri. Különösen megnő az adatkezelés ideje, ha az adatmemória szóhosszúság szerinti szervezése eltér a rendszer adatcsatornájának szervezésétől. Összefoglalva, művelet ciklusidejeamemória kiolvasás, összehasonlítás és memória beírás utasításszintű műveleti időszummájából, különböző szóhosszúságok esetén az adott memóriarekeszhez tartozó ismétlések számának időszumma szerinti szorzatából tevődik össze. A találmány azon a felismerésen alapszik, hogy egy memóriában az adatok átrendezése hardware eszközökkel egyszerűen megoldható, ha a memóriához saját vezérlő egységet rendelünk és az átrendezést folyamatosan, az adatok rendre történő kivételével, közbenső tárolóba történő félretételével, majd megüresedett végleges helyére való behelyezésével végezzük. Ezzel elérjük azt, hogy egy adat áthelyezése egy memória ciklusidőn belül történjen. A találmány szerinti eljárásnak az a lényege, hogy a célhelyen levő adatot kivesszük és a célhelyre egy forráshelyről vagy egy kiürítendő helyről vett adatot helyezünk be, ezután a célhely melletti helyről veszünk ki adatot és ide helyezzük a célhelyről kivett adatot, majd ezt az eljárást addig folytatjuk, míg a kiürítendő helyre vagy üres helyre a mellette levő helyről kivett adatot behelyezzük. A találmány szerinti kapcsolási elrendezésnek az a lényege, hogy egy adatmemória adatkimenete összehasonlító egység adatbemenetével, valamint rotációs regiszter egység egyik adatbemenetével van összekötve, az adatmemória adatbemenete a rotációs regiszter egység kimenetére csatlakozik, az adatmemória címbemenete vezérlő egység címkimenetével van összekötve, a vezérlő egység egyik vezérlő kimenete a rotációs regiszter egység vezérlő bemenetére csatlakozik, a vezérlő egység másik vezérlő kimenete az összehasonlító egység vezérlő bemenetére van kapcsolva, összehasonlító egység ekvivalencia kimenete a vezérlő egység bemenetére csatlakozik, a vezérlő egység adatkimenete az összehasonlító egység adatbemenetével, valamint a rotációs regiszter egység másik adatbemenetével van összekötve. A találmány szerinti kapcsolási elrendezést a mellékelt ábrákon bemutatott kiviteli példákon keresztül ismertetjük. Az 1. ábra az eljárás szerinti áramköri elrendezés egy kiviteli alakjának általános blokksémáját mutatja. A 2. ábra az 1. ábrán bemutatott eljárás áramköri elrendezésének egy lehetséges, előnyösen megválaszott részletezését szemlélteti. A rendszer (1) adatmemóriája m szóból álló előnyösen dinamikus memória, amelyben egy szó n bitből áll. Az (1) adatmemória adatkimenetére (2) összehasonlító egység csatlakozik, amely biztosítja részint a céladat felismerését, amely mellé áthelyezendő adatot a forráshelyről el kell helyezni, részint lehetővé teszi belső forráshelyről áthelyezett vagy törölni kívánt adat felismerését. Az (1) adatmemória adatkimenete ezen kívül (3) rotációs regiszter egység egyik adatbemenetére van kapcsolva, amely által biztosítva van a visszahurkolás közvetett úton az (1) adatmemória bemenetére. A (3) rotációs regiszter egység biztosítja részint a célfeladat felismeréséig az áthelyezendő vagy behelyezendő adat átmeneti tárolását, részint a céladat felismerése után az átrendezési processzus alatt az (1) adatmemóriából az aktuális ciklusban kiolvasott adat, valamint az azt eggyel megelőző ciklusban kiolvasott adat egy memória ciklusideig történő tárolását. A (3) rotációs regiszter órajeleit, az (1) adatmemória rekeszeinek címzését és órajeleit a (4) vezérlő egység szolgáltatja. Az (1) adatmemória adatkimenetére csatlakozó (2) összehasonlító egység egyik bemenete részint a (5) célkomparátor egyik bemenetére, részint a forráskomparátor egyik bemenetére van kapcsolva. Az (5) célkomparátor a céladat felismerését szolgálja, amely mellé a forrásadatot el kell helyezni. A (6) forrásadat-komparátor lehetővé teszi az átrendezési processzus alatt a belső forrásadat felismerését és ezzel jelzi egy adatátrendezési ciklus végét. A (5) célkomparátor másik bemenetére (7) céladat regiszter adatkimenete csatlakozik, amelyben az átrendezési vagy behelyezési művelet megkezdése előtt definiáljuk a céladatot. A (6) forrásadat-komparátor másik bemenetére (8) forrásadat regiszter adatkimenete van kapcsolva. A (8) forrásadat regiszterben definiáljuk az áthelyezendő vagy törlendő adatot ugyancsak a művelet megkezdése előtt. Az (2) összehasonlító egység céladat komparátora vezérlő ekvivalencia jeleket biztosít az (13) autonóm vezérlő egység számára, amely ezáltal aktiválja a (3) rotációs regiszter egységet. A (6) forrásadat komparátor ekvivalencia jele az átrendezési folyamat végét jelzi az (13) autonóm vezérlő egységnek, amely leállítja az (1) adatmemória vezérlését és jelzést küld a (15) rendszer vezérlő egységnek. A (15) rendszer vezérlő egység órajelekkel biztosítja a (12) adatbuszon keresztül a (7) céladat regiszter és a (8) forrásadat regiszter feltöltését. A (13) autonóm vezérlő egység a (14) címbuszon keresztül veszi át a kezdőcímet a (15) rend5 10 15 20 25 30 35 40 45 50 55 60 65 2