ITMI970988A1 - Dispositivo per la ricerca della posizione di un bit attivo a partire da un'estremita' di una stringa di bit - Google Patents
Dispositivo per la ricerca della posizione di un bit attivo a partire da un'estremita' di una stringa di bit Download PDFInfo
- Publication number
- ITMI970988A1 ITMI970988A1 IT97MI000988A ITMI970988A ITMI970988A1 IT MI970988 A1 ITMI970988 A1 IT MI970988A1 IT 97MI000988 A IT97MI000988 A IT 97MI000988A IT MI970988 A ITMI970988 A IT MI970988A IT MI970988 A1 ITMI970988 A1 IT MI970988A1
- Authority
- IT
- Italy
- Prior art keywords
- lines
- modules
- bit
- level
- bits
- Prior art date
Links
- 238000001914 filtration Methods 0.000 claims description 46
- 238000011144 upstream manufacturing Methods 0.000 claims description 2
- 230000003750 conditioning effect Effects 0.000 claims 3
- 230000000873 masking effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 7
- 230000004913 activation Effects 0.000 description 3
- 238000007792 addition Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Radar Systems Or Details Thereof (AREA)
Description
DESCRIZIONE dell'invenzione industriale
Campo di applicazione del'invenzione
La presente invenzione riguarda un dispositivo per là ricerca della posizione di un bit attivo in una stringa di bit, ed in particolare un dispositivo elettronico che, esaminando una stringa di bit, trova la posizione del primo bit attivo a partire da un’estremità di tale, stringa. 1
È noto che nél campo dell'informatica e delle telecomunicazioni ricorre frequentemente II problema.di trovare velocemente il primo o l’ultimo bit attivo in una stringa di bit, dove con il termine bit attivo si intende un bit di valore predefinito, generalmente uguale ad uno. Tale ricerca é stata finora realizzata mediante appositi circuiti ‘ elettronici comprendenti una pluralità di porte logiche opportunamente collegate in modo da esaminare in sequenza tutti i bit della stringa e trovare il primo ' od ultimo bit attivo. Finché il numero di bit della stringa da esaminare non è elevato, in particolare non è maggiore di 8, tali circuiti noti sono in grado. di fornire il risultato in breve tempo. Tuttavia, quando il numero di bit della stringa è elevato, tali circuiti elettronici dedicati possono non essere in grado di fornire il risultato in tempo utile, specialmente quando il primo od ultimo bit attivo si trova lontano dai bit rispettivamente più significativo o meno significativo.
Rassegna dell'arte nota
Per ovviare a questo problema, sono stati ideati i cosiddetti dispositivi di ricerca "a bisezione”, i quali dividono la stringa di bit da esaminare in due metà e verificano la presenza del bit attivò in ciascuna metà. Tali dispositivi dividono successivamente a metà la stringa di bit comprendente, un bit attivo più vicina all’estremità di partenza finché non resta un solo bit attivo,, che è quello ricercato. Tuttavia, questo tipo-di dispositivo di "ricérca richiede- un elevato numero di passaggi, per cui, in· -caso- di' stringhe aventi un numero elevato di bit, può anch'esso non essere in grado di fornire il risultato in tempo utile’
Scopi dell'Invenzione
Scopo della presente invenzione è pertanto quello- di fornire un dispositivo per la ricerca del bit attivo che sia esente da tali inconvenienti, ovvero un dispositivo che sia in grado di trovare il bit attivo in un tempo breve, indipendentemente dalla sua . posizione all'interno della stringa di bit.
Un altro scopo della presente invenzione ;è quello di fornire un dispositivo la cui
progettazione e fabbricazione siano semplici anche -nel caso in cui la stringa di bit da esaminare comprenda un numero assai elevato di bit.
Un ulteriore scopo della presente invenzione è quello di fornire un dispositivo che sia ih grado di eseguire la ricerca del bit attivo limitatamente ad una porzione della stringa di bit in ingresso. -Sommàrio dell'Invenzione
Detti scopi vengono conseguiti con un dispositivó.le cui caratteristiche principali sono
specificate nella prima rivendicazione.
Èssendo suddiviso su più livelli di una struttura ad albero, il dispositivo secondo la presente invenzioné è in grado di scomporre la ricerca del bit attivo in più ricerche ' parallele eseguite su piccoli gruppi di bit. Il tempo di calcolo dell'intero dispositivo risulta pertanto ridotto al tempo di calcolo dei moduli di un ramo dell’albero.
Grazie alla sua struttura modulare, il dispositivo secondo la presente invenzione può
essere facilmente progettato é fabbricato indipendentemente dal numero di bit. contenuti ne|la stringa da esaminare. Infatti, per realizzare un dispositivo di ricerca per stringhe contenenti un . numero elevato di bit, è sufficiènte disporre secondo una struttura ad albero di adeguate dimensioni una. pluralità di moduli di' ricerca dimensionati per analizzare stringhe contenenti un numero ridotto di. bit. Il dispositivo secondo la. presente invenzione può inoltre essere facilmente ’ riprogettato e/o modificato per eseguire funzioni supplementari, qùale ad esempio la ricerca del bit attivo in una ò più porzioni· della stringa di bit in ingresso.
Ulteriori vantaggiose caratteristiche della presente- invenzione che sono ritenute innovative risulteranno evidenti dalle rivendicazioni dipendenti.
Breve descrizione delle figure ·
Ulteriori vantaggi e caratteristiche del dispositivo secondo, la presente invenzione risulteranno evidenti agli esperti del ramo dalla seguente dettagliata descrizione di due sue forme realizzative con riferimento agli annessi disegni in cui:
-la Fig. 1 mostra uno schema a blocchi di una prima forma realizzativa del dispositivo secondo la presente invenzione, la quale trova il primo bit' attivò a partire dal bit più significativo della stringa di bit in ingresso;
-la Fig. 2 mostra uno schema del circuito, interno di un modulo filtrante e di un codificatore del dispositivo di Fig.' 1 ; 1
-la Fig. 3 mostra uno schema del circuito interno di un modulo selettore a 4 ingressi del dispositivo di Fig. 1;
-Ja Fig. 4 mostra uno schema del circuito interno di un modulo filtrante di una seconda forma realizzativa del dispositivo secondo la présente invenzione, la quale trova il primo bit attivo a partire da un particolare bit della stringa di bit in ingresso; -la Fig. 5 mostra uno schema del circuito, interno di un modulo di controllò del modulo filtrante di Fig. 4;
-la Fig. 6 mostra una tabella esemplificativa. del· contenuto delle linee della prima forma reàlizzativa' del dispositivo secondo la presente. invenzione; e . .
-la fig. 7 mostra una tabella esemplificativa dei contenuto delle linee della seconda fórma realizzativa del dispositivo secondo la presente invenzione.
Descrizione dettagliata di una forma preferenziale di realizzazione dell'invenzione Facendo riferimento alla· Fig. 1, si vede che il dispositivo secondo la presente invenzione comprende un registro RI forrmato da m celle Ci, in ciascuna delle quali viene inserito un bit delia strìnga da esaminare. Nella presente forma realizzativa tale registro comprende 64 celie, ovvero m è uguale a 6, ma è ovvio che in altre forme réaltzzative · della presente invenzione il numero di celle CI può essere maggiore o minore di.64. In figura sono mostrate per chiarezza solo le prime e le ultime 16 celle CI del registro! RI, le quali conterranno rispettivamente i 16 bit più significativi (a sinistra in figura) e meno significativi (a destra in figura). della stringa da esaminare. I; 64 ingressi delle cellè'CI.sono a loro volta collegati ad un bus (non mostrato in figura) comprendente le 64 linee parallele attraverso le quali viene trasmessa la stringa da; esaminare. Nel caso in cui la. stringa di bit da .esaminare non sia formata, da un numero di bit uguale ad una potenza intera di 2, si inserisce tale stringa nelle celle CI-corrispondenti ài bit meno significativi; Le restanti celle CI saranno ovviamente predefinite con bit inattivi, generalmente uguali a zero.
Le linee FI in. uscita dalle celle CI sono opportunamente raggruppate in blocchi di 2n linee parallèle, ciascuno dei quali è collegato in ingresso ad uno di 2m-n moduli filtranti FU1. Nella presente forma realizzàtìva le linee Fl-.collegate a ciascuno dei moduli -filtranti FU1 sono 4, ovvero n è uguale a 2, ma è ovvio che in altre forme realizzative della presente invenzione il numero di linee FI in ingresso nei moduli filtranti può essere maggiore o minore di 4, ad esempio uguale ad 8 (n=3). Attraverso le 2n linee FI . ciascun modulo filtrante FU 1 riceve pertanto una stringa di 2" bit che viene filtratada tale modulo azzerando tutti i bit in ingresso tranne l’eventuale bit attivo, generalmente uguale a uno, più vicino al bit più significativo.1 La stringa cosi filtrata da ciascun modulo FU1 (la quale contiene necessariamente al massimo un uno), viene trasmessa in uscita attraverso 2" linee parallele F01. Dal modulo filtrante FU1 esce anche una linea FL1 attraverso la quale viene trasmesso un segnale binario che è uguale ad uno se la stringa filtrata contiene almeno un bit attivo, oppure è uguale a zero se tale stringa non contiene alcun bit attivo. La seguente tabella mostra la tàvola di verità degli ingressi e delle uscite di un modulo FU1 a 4 ingressi (n=2).
Le 2" linee F01 in uscita da ciascun modulo filtrante FU1- vengono .collegate agli ingressi di un codificatore EN il quale converte la stringa di 2n bit trasmessa dalle linee F01 in un numero binario di n bit indicante la posizione dell'eventuale bit attivo presente in tale stringa di 2n bit. Il risultato del codificatore EN viene quindi trasmesso attraverso un bus EOI (illustrato con una linea leggermente ingrossata) comprendente n linee parallele. La seguente tabella mostra la. tavola di verità degli ingressi e delle uscite di un codificatore EN a 4 ingressi (n=2).
I bus EOI in uscita da ciascuno dei 2m-n codificatori EN sono raggruppati in blocchi di 2P bus, ciascun blocco essendo collegato ad un modulo selettore SM2 la cui struttura interna verrà spiegata dettagliatamente in seguito. Anche le linee FL1 uscenti dai . moduli filtranti FU1 sono raggruppate in blocchi di 2P linee, ciascun blocco essendo collegato in ingresso ad un ulteriore modulo filtrante FU2. Il funzionamento del modulo filtrante- FU2 è analogo a quello dei moduli filtranti FU1 ai quall è collegato, per cui anche la stringa dì bit in ingresso nel modulo filtrante FU2 viene filtrata azzerando tutti i bit tranne l’eventuale bit attivo più vicino al bit più significativo. Il numerosi ingressi del modulo filtrante FU2 può essere eventualmente diverso dal numero di ingressi dei moduli filtranti FU1 ai quali collegato, ovvero p può essere diverso da n, tuttavia nella presente forma realizzala anche i moduli filtranti FU2 hanno 4 ingressi come i moduli FU1 , ovvero p è uguale a 2.
Le 2P linee di controllo F02 in uscita da ciascun modulo FU2 sono collegate in ingresso allo stesso modulo selettore SM2 cui erano collegati I 2P bus EOI di ciascun blocco. Tali linee di controllo servono ad indicare quale dei 2P bus EOI in ingresso nel modulo selettore SM2 deve essere trasmesso in uscita. Tuttavia, il modulo selettore SM2 differisce da un comune multiplexer per il fatto che la stringa di bit trasmessa da tale modulo, oltre.a contenere gli n bit del bus EOI selezionato dalle linee di controllo F02, contiene come bit più significativi i p bit indicanti la posizione di tale bus selezionato. Essa viene trasmessa attraverso un bus E02 (illustrato con una linea ingrossata) comprendente p+n linee parallele. La seguente tabella mostra la tàvola di' verità degli ingressi e delle uscite di un modulò selettore SM2 di 4 bus EOI da 2 bit ciascuno (n=2, p=2). I 2 bit trasmessi da tali bus sono stati indicati rispettivamente con le lettere
Il dispositivo secondo la presente forma realizzativa risulta pertanto suddiviso in 2m-n-p moduli principali di ricerca RIVI, ciascuno dei quali comprende 2P moduli filtranti FU1, 2P codificatori EN. La presente forma realizzativa comprende in particolare 4 moduli di ricerca RM, dei quali in Fig. 1 vengono mostrati completamente il primo e l’ultimo. l bus E02 uscenti dal modulo selettore SM2 sono collegati in ingresso ad un ulteriore modulo selettore SM3, il cui funzionamento è analogo a quello dei 2m'n'p moduli selettori SM2 ai quali è collegato. Tuttavia, il modulo selettore SM3 differisce dai moduli selettori SM2 per il fatto che i bus E02 in ingresso non sono formati da n-linee parallele come i bus EOI, bensì sono formati da p+n linee parallele. Il bus E02 da trasmettere in uscita viene selezionato dalle linee di controllo F03 uscenti da un ulteriore modulo filtrante FU3 a 2m‘n"p ingressi, il cui funzionamento è identico a quello dèi moduli filtranti FU1 e FU2. Il modulo filtrante FU3 filtra infatti nel modo sopra descritto la stringa di 2™'n'p bit che riceve in ingresso attraverso le 2m n p linee FL2 uscenti dai moduli filtranti FU2, trasmettendo sulle linee di controllo F03 la risultante stringa di 2m-n-p bit filtrata. In base al contenuto di tale stringa, il modulo selettore SM3 seleziona uno dei bus E02 in ingresso e ne invia il contenuto ad un bus E03 (illustrato con una linea notevolmente ingrossata), aggiungendovi gli (m-n-p) bit indicanti la posizione del bus E02 selezionato. La stringa di bit trasmessa attraverso il bus E03 è formata pertanto da (m-n-p+p+n) bit, ovvero m bit, e corrisponde esattamente al numero binario indicante la-posizione del primo bit attivo della stringa di 2m bit in esame, a partire dal bit più significativo. Il segnale binarlo trasmesso dalla linea FL3 in uscita dal modulo filtrante FU3 indica· irivece l'eventuale presenza di tale bit attivo all'interno della stringa di bit in esame, per cui dalla linea FL3 e dal bus E03 si- ricava il risultato della ricerca per la quale il dispositivo secondo la presente
invenzione è stato ideato.,
Facendo ancora riferimento alla Fig. 1 , si può notare che il dispositivo secondo ta
presente invenzione possiede una struttura ad albero, le cui foglie sono rappresentate
dalle linee in ingresso FI e la cui radice è rappresentata dal bus E03 e dalla linea
FL3. I nodi di tale albero sono distribuiti su un primo livello comprendente una serie di
· moduli filtranti FU1 e 2m-n codificatori EN, sii un secondo livello comprendente
una serie di 2m-n-p moduli filtranti FU2 e 2m-n-p moduli selettori SM2, un terzo livello
comprendente una serie di moduli filtranti moduli selettori SM3, e . così via fino a quando non resta un ultimo livello comprendente un solo modulo
filtrante ed un solo modulo selettore; le cui uscite forniranno il risultato della ricerca. In
particolare, nella presente forma realizzativa q è uguale a 2, per cui il terzo livello
dell’albero è già l'ultimo, comprendendo modulo filtrante e
modulo selettore. È ovvio che altre forme realizzative del dispositivo
secondo, la presente invenzione possono essere strutturate su un numero di livelli . maggiore o minore di tre. Tale numero dipende infatti dai numero di bit della stringa
da esaminare e dal numero di ingressi dei moduli filtranti compresi nel dispositivo
stesso.
Facendo ora riferimento alla Fig. 2, si vede che i moduli filtranti FUI a 4 ingressi della
presente .forma realizzativa dell'invenzione comprendono una porta logica 1 di tipo
OR alla quale sono collegate le 4 linee FI e la linea FL1, rispettivamente in ingresso, ed in uscita. La linea FI corrispondente ài bit meno significativo è direttamente
collegata all’Ingresso di una porta logica 2 di tipo AND alla cui uscita è‘ collegata la
linea F01 corrispondente al bit meno significativo. La linea FI. corrispondente al
secondo bit meno significativo è direttamente coliegata all’ingresso di un'altra porta logica 3 di tipo AND la cui uscita è collegata alla linea F01 corrispondente al secondo bit meno significativo. La linea FI corrispondente al secondo bit meno significativo è .collegata anche ad una porta logica 4 di tipo NOT la cui uscita è collegata all'ingresso della porta, logica AND 2. La linea FI corrispondente al secondo bit più significativo è direttamente collegata all'ingresso di un’ulteriore porta logica 5 di tipo AND la cui uscita è collegata alla linea F01 corrispondente al secondo bit più significativo. La linea FI corrispondente al secondo bit più significativo è collegata anche ad una porta logica 6 di tipo NOT la cui uscita è collegata all'ingresso delle porte logiche 2 e 3. Infine, la linea FI corrispondente -al bit più significativo è di rettamente collegata alla linea F01 corrispondente al bit più significativo. La linea FI corrispondente al bit più significativo è collegata anche ad una porta logica 7 di tipo NOT la cui uscita è collegata all’ingresso delle porte logiche AND 2, 3 e 5. Grazie a questo schema di porte logiche, il modulo filtrante FU1 esegue le operazioni combinatorie descritte nella ‘ Tabella 1. È chiaro che in altre forme realizzative il modulo filtrante FU1 può presentare uno schema circuitale diverso da quello ora descritto, ma equivalente nella sua funzione.
Facendo ancora riferimento alla Fig. 2, si vede che i codificatori EN a 4 ingressi della presente forma realizzativa dell'invenzione comprendono una porta logica 8 di tipo OR alla quale sono collegate in ingresso le 2 linee F01 corrispondenti al bit più significativo ed al secondo bit meno significativo. I codificatori EN comprendono anche un’altra porta logica 9 di tipo OR alla quale sono collégate in ingresso le 2 linee F01 corrispondenti ai primi due bit più significativi. La linea F01 corrispondente al bit meno significativo è invece scollegata. Le uscite delle porte logiche 8 e 9 sono collegate alle 2 linee del bus EOI corrispondenti rispettivamente ài bit meno significativo ed a quello più significativo. Grazie a questo schema di porte logiche, il codificatorei EN esegue le operazioni combinatorie descritte nella Tabella 2. È chiaro che in altre forme realizzale della présente invenzione il codificatore EN può presentare uno schema circuitale diverso da quello ora descritto.
Facendo ora riferimento alla Fig. 3, si vede che il modulo selettore SM2 della presente forma realizzativa dell’Invenzione comprende in mòdo noto 4 coppie di porte logiche , 10, i 0’ di tipo AND a ciascuna delle quali sono còllegate in ingresso le due linee dei quattro bus É01 . Agli ingressi di ciascuna di tali porte lògiche AND è coljegata anche una delle 4 linee di controllo F02,' in modo tale ch'e tutti t bit. trasmessi dai bus EOI vengano azzerati tranne quelli trasmessi dal bus EOI selezionato dalla linea di controllo F02 che trasmette un segnale binario uguale ad uno. Le uscite delle coppie di porte lògiche ,10, Υθ’ sono collegate agli' ingressi di una coppia di porte logiche 11, 11 ’ di tipo OR. Ad un ulteriore' coppia di porte logiche 12, 12’ di tipo OR sono . opportunamente collegato in ingresso le linee di controllo F02 corrispondenti rispettivamente ai primi due bit significativi ed al primo e terzo bit più significativo della . stringa di bit trasmessa attraverso le linee di controllo FÒ2. In questo modo, dalla coppia di porte logiche 12, 12’ viene trasmesso in uscita uh numero binario di 2 bit indicante la posizione del bus EOI selezionato dalie linee di controllo F02. Le. uscite delle porte logiche 12, 12’, 11 ed 11 ’ sono quindi collegate alle 4 linee del bus E02 . uscente dal modulò selettore SM2. Grazie a questo schema di porte logiche, il modulo -selettore SM2 esegue le operazioni combinatorie descritte nella Tabella 3. È chiaro che in altre forme reallzzatlve della presente invenzione il modulo selettore SM2 può presentare uno schema circuitale diverso da quello ora descritto. In particolare, il modulo selettore SM3 avrà una struttura interna simile a quella del modulo selettore SM2, dalla quale differisce semplicemente per il fatto di comprendere 4 gruppi- di 4 porte lògiche' di tipo AND in. ingresso ed un gruppo di 4 porte logiche di tipo OR. in uscita Tali gruppi di 4 porte logiche AND ed OR sostituiscono rispettivamente le coppie di porte lògiche AND 10, 10' ed ÒR 11 , 11
Facendo ora riferimento alla Fig. 4, si vede che in un’altra forma realizzativa del . dispositivo secondo la presente invenziorie i moduli filtranti FUk comprendono un circuito combinatorio supplementare posto a mónte del .circuito sopra descritto ed illustrato in Fig. 2. Tale circuito serve a limitare superiormente c/o inferiormente la ricerca del bit attivo nella stringa di bit da esaminare. Detta limitazione viene eseguita ' sulla base sia di un numero binario di m bit che corrisponde al limite superiore di ricerca e viene trasmesso attraverso altrettante linee UL, sia di un segnale binario.di attivazione Ul che è uguale ad uno nel caso si voglia effettivamente attivare la suddetta funzione di limitazione della stringa di bit. I segnali UL ed Ul sono generati esternamente al dispositivo e vengono elaborati all'interno del dispositivo da almeno ' un modulo di controllo LM della limitazione della ricerca, il cui funzionamento verrà descritto in seguito con riferimento alla Fig. 5.
In particolare, per ogni stadio, le linee Al vengono generate decodificando i bit più significativi della parola UL, tali da selezionare il numero di moduli filtranti appartenenti a detto stadio.
Le linee Wl Vengono anch'esse generate a partire dalia parola UL Per ogni stadio - contengono un numero w di di linee sufficienti alla codifica del numero n di ingressi.
per ogni modulo filtrante FUk. Sono ricavati dalla parola UL escludendo un numero di bit, a partire dal meno significativo, pari a [w* numero di stadi a monte dello stadio considerato]; dei bit rimanenti Ìe linee Wl saranno costituite dai k bit meno significativi. Sempre nell'esempio di parola su cui operare la ricerca pari a 64 linee, il modulo filtrante FUk a quattro ingressi con limitatore superiore comprende quindi, oltre a tutte le porte ed i collegamenti dei moduli' filtranti della prima forma realizzativa, due ingressi Wl -ai quali sono collegate due delle sei linee uscenti dal modulo di controllo LM. In particolare, gli ingressi Wl3 del modulo filtrante FLI3 posto all'ultimo livello del dispositivo, saranno collegati alle due linee UL corrispondenti ai due bit più significativi del numero binario indicante la posizione del limite superiore di ricerca -Gli Ingressi WI2 dei quattro moduli filtranti FU2 posti a livello intermedio del dispositivo, saranno invece collegati alle due linee UL corrispondenti ai due bit intermedi del numero binario indicante la posizione del limite superiore di ricerca. Gli ingressi WI1 dei sedici moduli filtranti FU1 posti al primo livello del dispositivo, saranno invece collegati alle due linee UL corrispondenti ai due bit meno significativi del numero binario indicante la posizione del limite superiore di ricerca.
L’ ingresso AI3 del modulo filtrante FU3 sempre attivo. Ai segnali AI2 di ciascùno degli FU2 arriva un bit risultato della decodifica dei due bit più significatiti di UL Ai segnali AH di ciascuno degli FU1 arriva un bit risultato della decodifica dei quattro bit più significativi di UL
Il modulo filtrante FU1 a 4 ingressi con limitatore superiore comprende quindi, oltre a tutte le porte ed i collegamenti dei moduli filtranti della prima forma' realizzativa, due linee in ingresso Wl provenienti dal modulo LM che indicano la posizione degli eventuali bit da azzerare, nonché una linea in ingresso Al, sempre proveniente dal modulo LM, che indica l’eventuale attivazione della funzione di limitazione superiore. Viene ora descritta in dettaglio la struttura interna dei moduli filtranti FUk provvisti del limitatore superiore.
La linea di attivazione Al è collegata in ingresso ad una porta logica 13 di tipo NOT la cui uscita è a sua volta collegata agli ingressi di una coppia di porte logiche 14, 14' di tipo OR. Agli ingressi di queste ultime due porte logiche sono opportunamente collegate anche le linee Wl indicanti le posizioni dei bit da azzerare quando l’ingresso Al è uguale a.uno. Per selezionare tali bit, le 3 linee FI in ingresso corrispondenti ai 3 bit più significativi vengono fatte passare attraverso 3 porte logiche 15,'15’,'15" di tipo AND, ai cui ingressi, sono collegate anche le -uscite delie porte' OR 14, 14’. In particolare, là porta logica AND 15 corrispondente·, al bit più significativo riceverà in ingresso la linea FI corrispondente al bit’più significative , nonché le uscite di entrambe le porte OR 14, 14’. La' porta logica AND 15' corrispondente ài ' secondo bit più significativo riceverà in ingrèsso la linea FI corrispondente al -secondo bit più significativo', nonché l'uscita della porta OR 14'. Infine, la porta logica AND 15’ corrispondente al secondo bit meno significativo riceverà in ingresso la linea FI corrispondente al secondo bit meno significativo, nonché l’uscita di una porta logica - .16 di tipo OR alla quale sono collegate in ingresso le uscite delle porte OR.14, 14’. 1 Grazie a questo schema di porte logiche, il modulo.filtrante a 4 ingressi con limitatore superiore esegue le operazioni combinatorie descritte nella seguente Tabella 4. Detta tabella mostra là tavola di verità degli ingressi e delle uscite di un modulo filtrante a 4 ingressi con limitatore superiore. I 4 bit in ingresso nelle linee FI sono stati indicati rispettivamente con le lettere a, b, c e d;
È ovvio che in altre forme reaiizzative deila presente invenzione il modulo filtrante con limitatoré superiore può presentare uno schema circuitale diverso da quello ora descritto. È altresì ovvio per un tecnico del ramo modificare i collegamenti e/o le porte logiche del modulo filtrante secondo la presente forma realizzativa . in modo da eseguire una limitazione inferiore oppure una doppia limitazione, superiore ed inferiore. In quest’ultimo caso il modulo filtrante ricéverà in ingresso due coppie di linee che trasmettono i bit del limite superiore e quelli del limite inferiore.
Facendo ora riferimento alla Fig. 5, si vede che il modulo di controllo LM della limitazione della ricerca riceve in ingresso, attraverso le 6 linee UL un numero binario di m bit, in particolare 6 bit, indicante la posizione del limite superiore di ricerca nella stringa di 2m bit da esaminare mediante il dispositivo secondo la presente invenzione. Il modulo LM riceve anche in ingresso, attraverso linea Ul, uh segnale binario che abilita la limitazione della ricerca quando è uguale ad uno. Tale segnale, dopo essere stato negato mediante una porta 17 di tipo NOT, viene trasmesso in ingresso a 6 porte 18 di tipo OR che ricevono in ingresso anche le 6 linea UL Con questo accorgimento, se la funzione di limitazione è disabilitata, ovvero se il segnale proveniente dalla linea Ul è uguale a zero, da tutte le uscite WI1, WI2, e WI3 delle porte OR 18 viene trasmesso un uno. Se invece la funzione di limitazione è abilitata, ovvero se il segnale proveniente dalla linea Ul è uguale ad uno, dalle uscite WI1 , WI2, e WI3 delle porte OR 18 vengono trasmessi gli stessi bit ricevuti dalle linee UL In particolare, le due linee WI3 corrispondenti ai due bit più significativi del numero ricevuto dalle linee UL sono collegate al modulo filtrante, FU3 posto all'ultimo livello.
Le due linee WI2 corrispondenti ai due bit intermedi del nùmero ricevuto dalle linee UL sono invece coilegate in parallelo ai 4 moduli filtranti FU2 posti al livello intermedio.. Infine, le due linee WI1 corrispondenti ai due bit meno significativi del numero, ricevuto dalle linee UL sono collegate in parallelo ai 16 moduli filtranti FU1 posti al primo livello.
Le quattro linee corrispondenti ai quattro bit più significativi del numero ricevuto dalle linee UL sono opportunamente collegate in ingresso ad un decodificatore. 19 di tipo noto che trasmette in uscita, su 16 linee AH , una stringa di 16 bit contenente 15 zeri ed un uno sulla linea AH individuata dal numero, binario di 4 bit ricevuto da tale decodificatore. Le 16 linee Al sono collegate in ingresso ai 16 moduli filtranti FU1 posti ai primo livello. Con questo accorgimento la limitazione della ricerca viene abilitata solo nel modulo filtrante FU1 individuato dal bit uguale ad uno nella stringa in uscita dal decodificatore 19. Analogamente, le due linee corrispondenti ai due bit più significativi del segnale ricevuto dalle linee UL sóno collegate in ingresso ad un decodificatore 20 di tipo noto che trasmette in uscita, su 4 linee AI2, una stringa di 4 bit contenente 3 zeri ed un uno sulla particolare linea AI2 individuata dal numero binario di 2 bit ricevuto da tale decodificatore. Le 4 linee AI2 sono collegato in ingresso ai 4 moduli filtranti FU2 posti al livello intermedio. Con questo accorgimento la limitazione della ricerca viene abilitata solo nel modulo filtrante FU2 individuato dal bit uguale ad uno della stringa in uscita dal decodificatore 20. La limitazione deIJa ricerca viene sempre abilitata nel modulo filtrante FU3 poiché quello e’ I’ unico FU di quel livello.
Il funzionamento delle due forme realizzale del dispositivo secondo la presente invenzione verrà descritto dettagliatamente nei due seguenti esempi, con particolare riferimento alla Fig. 6 ed alla Fig. 7.
Esempio 1 : Dispositivo senza limitatore superiore
Facendo riferimento alia Fig. 6, si vede che, nel funzionamento della prima forma realizzativa del dispositivo secondo la presente invenzione, sprovvista del limitatore superiore, la stringa di 64 bit da esaminare contenuta nelle 64 celle CI viene suddivisa jn 16 stringhe di 4 bit trasmesse dalle linee FI. Si- noti che nell’esempio di Fig. 5, il primo bit attivo si trova in trentottesima posizione, ovvero nella posizione 100101 espressa in forma. binaria, presupponendo che il bit meno significativo si trovi nella posizionè numero 000000, mentre il bit più significativo si trovi nella posizione numerò 111111. Le 16 stringhè di 4 bit filtrate dai moduli FU1 vengono trasmesse dalle linee F01 e codificate dai codificatori EN. In particolare, la stringa di bit del settimo blocco di linee FI, la quale contiene il bit attivo ricercato, è uguale a 0011, per cui la strìnga dì bit trasmessa dal settimo blocco di linee F01 è uguale a 0010, il bit trasmesso dalla settima linea FL1 è uguale a 1 ed il numero binario a 2 bit trasmesso dai settimo bus . EOI è uguale a 01. 1 16 numeri binari a 2 bit trasméssi dalle linee EQ1 In uscita da tali codificatori EN entrano a gruppi di 4 in 4 moduli selettori SM2. Ciascuno di questi moduli selettori riceve in ingresso anche i 4 gruppi di 4 linee di controllo F02 uscenti dai 4 moduli filtranti FU2. In particolare, il secóndo modulo selettore SM2 seleziona il terzo bus a partire da sinistra, dato che la stringa di bit trasmessa dal secondo gruppo di linee di controllo F02 è uguale a 0010. L’uscita E02 del secondo modulo selettore SM2 è quindi uguale a 0101, ovvero 01 (posizione del terzo bus EOI) affiancato a 01 (contenuto del terzo bus EOI). I 4 bus EC2 in uscita dai 4 moduli selettori SM2 giungono infine nel modulo selettore SM3, il quale seleziona un bus E02 in base al contenuto delle linee di controllo F03, aggiungendovi la posizione di tale bus E02. In particolare, poiché il bit trasmesso dalla seconda linea F03 è uguale ad uno, il selettore SM2 seleziona il secondo bus E02 aggiungendovi i due bit indicanti la.
seconda posizione a partire da sinistra. Il risultato del dispositivo secondo la presente forma realizzativa, trasmesso attraverso il bus E03, è pertanto 100101, ovvero la posizione del bit attivo ricercato. L'uno trasmesso dalla linea FL3 indica che è stato ' trovato un bit attivo nella stringa di bit in esame: I! bit trasmesso da tale linea è determinante soprattutto quando il bit attivo si trova nella prima posizione; ovvero nella posizione 000000. Esaminando il contenuto della linea FL3 è possibile distinguere la situazione in cui il bit attivo è in tale posizione dalla situazione in cui non vi sia alcun bit attivo nella stringa di bit in esame. In entrambi i casi, infatti, il risultato trasmesso dal bus E03 sarebbe uguale a 000000.
Esempio 2: Dispositivo con limitatore superiore
Facendo riferimento alla Fig. 7, si vede che, nel funzionamento della seconda forma realizzativa del dispositivo secondo la presente invenzione, questa volta provvista del limitatore superiore, la stringa di 64 bit da esaminare viene trattata in modo analogo all’esempio precedènte. Tuttavia, il dispositivo, oltre alla stringa da esaminare, riceve in ingresso attraverso le linee UL anche la posizione del limite superiore di ricerca, che è rappresentato in particolare dalia cinquantaquattresima posizione (110101 in forma binaria), Poiché il bit trasmesso dalla linea Ul è uguale ad uno, il dispositivo limiterà la ricerca del bit attivo partendo dal cinquantaquattresimo bit e non più dal bit più significativo. Il modulo LM, che riceve in ingresso le linee Ul ed UL, trasmette ai moduli filtranti' FU 1, FU2 ed FU3 I segnali di controllo. della limitazione attraverso le linee WI1, WI2i .WI3, ÀI1, AI2 ed AI3. In particolare, vengono attivate le funzioni di limitazione nel. modulo filtrante FU3, nel primo modulo filtrante FU2 a partire da sinistra e nel terzo modulo filtrante FU1 sempre a partire da sinistra. Gli altri moduli filtranti FU1 ed FU2 funzionano nel modo consueto, ovvero senza la limitazione -superiore, in quanto ricevono in ingresso dalle linee AH ed AI2 un bit uguale a zero.
Nel présente esempio.il terzo modulo filtrante FU 1 ed il primo modulo filtrante FU2 a partire da sinistra azzerano i due bit più significativi in ingresso, mentre il modulo filtrante FU3 non azzera alcun bit. Infatti, i bit WI3 sono uguali a 11, mentre i bit WI2 ed i bit WI1 sono uguali a 01. Il risultato della ricerca è pertanto uguale a 110100, dato che ii primo bit attivo a partire dalla cinquantaquattresima posizione si trova in cinquantatreesima posizione.
Le due forme realizzative del dispositivo secondo la presente invenzione qui descritte ed illustrate riguardano in particolare un dispositivo che individua nella stringa di bit in ingresso il primo bit attivo a cominciare dal bit più significativo. È ovvio che in altre forme realizzative della presente invenzione è possibile individuare il primo bit attivo a cominciare dal bit meno significativo semplicemente invertendo i collegamenti dei moduli filtranti od collegamenti in ingresso del dispositivo. È inoltre ovvio per un tecnico del ramo modificare i collegamenti e/o le porte logiche del dispositivo secondo la presente invenzione, lasciandone invariata -.la struttura ad albero, in modo da trovare il primo bit inattivo a cominciare dai bit più significativo e/o da quello meno significativo.
Ulteriori varianti e/o aggiunte ..possono essere apportate dagli esperti-dei ramo alle forme realizzative qui descritte ed illustrate restando nell'ambito dell'invenzionestessa. , Ad esempio, il dispositivo secondo la presente invenzione comprende' un registro RI nel quale viene inserita la stringa di bit da esaminare, ma è ovvio che in altre fórme realizzative del dispositivo secondo la presente invenzione tale registro può non essere presente. In tal caso le linee FI saranno. collegate direttamente:ad altre linee e/o dispositivi esterni, come ad esempio un bus dati, un'interfaccia parallela, ècc.
Claims (19)
- RIVENDICAZIONI 1. Dispositivo per trovare la posizione di un bit attivo a partire da un'estremità' di una stringa di bit, comprendente: • una pluralità’ di moduli filtranti (FUA) atti a segnalare la presenza di un bit - attivo in una stringa di bit e a disattivare tutti i bit di questa stringa tranne l’eventuale bit attivo piu’ vicino a detta estremità', e • una pluralità' di moduli selettori (SMA) atti a selezionare un bus in ingresso in funzione del contenuto di una pluralità’ di linee di controllo FOk ed a trasmettere in uscita il contenuto e la posizione di tale bus, detti moduli filtranti (FUA) e detti moduli selettori (SMA) essendo disposti su k livelli . di una struttura ad albero.
- 2. Dispositivo come alla rivendicazione 1 caratterizzato dal fatto che detti moduli filtranti (FUA). sono atti a: • analizzare una porzione di detta stringa di bit; . attivare un’uscita (FLA) quando e' presente almeno un bit attivo nella porzione di stringa da esso analizzata; • rendere disponibile su di una uscita (FOA) una configurazione binaria ottenuta disattivando tutti i bit di detta stringa tranne l'eventuale bit attivo piu’ vicino, a detta estremità’.
- 3. Dispositivo come alle rivendicazioni 1 e 2, caratterizzato dal fatto di comprendere anche: • una pluralitàdi moduli filtranti del primo livello (FU1); · una pluralità’ di moduli di codifica (EN), ciascuno del quali e' collegato alle uscite (F01) del rispettivo modulo filtrante (FUI), idonei ad associare alla configurazione binaria che corrisponde all'uscita del corrispondente m odulo filtrante di primo livello (F01) una configurazione binaria rappresentativa ' della posizione occupata dall’eventuale bit attivo.
- 4. Dispositivo come alla rivendicazione 1 caratterizzato dal fatto che detti moduli selettori (SMk) sonò anche atti a: • ricevere sull’ingresso dati le configurazioni binarie che corrispondono all'uscita dei moduli selettori (SM/r-1) del livello inferiore, e . · ricevere sull’ingresso, di controllo la configurazione binaria che corrisponde alle uscite (FOÀ) dei moduli filtranti (FU A) • fornire in uscita una delle configuràzioni binarie dell'ingresso dati assieme alla sua posizione relativamente agli altri ingressi dati.
- 5. Dispositivo secondo le precedenti rivendicazioni caratterizzata dal fatto che ogni livello di tale struttura ad albero comprende un modulo filtrante (FUA) collegato ad una pluralità’ di moduli filtranti (FUA - 1) del livello inferiore attraverso una pluralità’ di linee (FUr - 1), ed un selettore (SMk) collegato ad una pluralità’ di moduli selettori (SM A - 1) del livello inferiore attraverso una pluralità’ di bus (EO A - 1) ed al modulo filtrante (FUA) di tale livello attraverso una pluralità' di linee di controllo (FOA). .
- 6. Dispositivo secondo le precedenti rivendicazioni caratterizzato dal fatto che i moduli filtranti (FUA) sono identici tra loro.
- 7. Dispositivo secondo le precedenti rivendicazioni caratterizzato dal fatto che i moduli selettori (SMA) sono identici tra loro.
- 8. Dispositivo secondo le precedenti rivendicazioni caratterizzato dal fatto che i moduli di codifica (EN) sono identici.tra loro.
- 9. Dispositivo secondo una delle precedenti rivendicazioni caratterizzata dal fatto che l'ultimo livello di tale struttura ad albero comprende un modulo filtrante (FU/asi) collegato ad una pluralità' di moduli filtranti (FU last - 1) del livello inferiore attraverso una pluralità’ di linee (FL last - 1), ed un selettore (SM last} collegato ad una pluralità' di moduli selettori (SM last - 1 ) del livello inferiore attraverso una pluralità’ di bus (EO last - 1) ed al modulo filtrante (FU/as<) dell’ultimo livello attraverso una pluralità’ di linee di controllo (FO/asi), il risultato della ricerca del bit attivo essendo trasmesso dal modulo selettore (SM last) e dal modulo filtrante (FU/asl) dell'ultimo livello, detti moduli filtranti dell'ultimo livello(FU/asl) e moduli selettori dell'ultimo livello (SM last) differenziantisi dai moduli filtranti e moduli selettori dei livelli inferiori (FUk ed SMA) ed operanti su un numero ridotto di linee d’ingresso e d’uscita, nel caso, in cui il numero di bit della parola su cui opera la ricerca non sia multiplo intero del numero di linee entranti nel modulò filtrante di . livello inferiore (FUA).
- 10. Dispositivo secondo una . delle precedenti rivendicazioni, caratterizzato dal fatto che la stringa di bit da esaminare viene trasmessa attraverso 2m linee FI raggruppate in blocchi di 2" linee, a 2m-n moduli filtranti (FU1) del primo livello.
- 11. Dispositivo secondo una delie precedenti rivendicazioni, caratterizzato dal fatto che ciascuno dei 2m-n moduli filtranti (FU1) del primo livello trasmette la stringa di 2n bit filtrata ad un codificatore (EN) il cui bus di uscita (EOI) comprende n linee.
- 12. Dispositivo secondo la precedente rivendicazione, caratterizzato dal fatto che i 2m-n moduli codificatori (EN) trasmettono la posizione dell’eventuale bit attivo attraverso 2m-n bus (EOI), raggruppati in blocchi di 2P , a 2m-n-p moduli selettori (SM2) del secondo livello.
- 13. Dispositivo secondo le precedenti rivendicazioni, caratterizzato dal fatto che i 2' moduli filtranti (FUA) del livello k segnalano l’eventuale presenza di un bit attivoattraverso T linee (FLA) r aggruppate in blocchi di 2P linee a 2r-p moduli filtranti (FUk+1) del livello k 1.
- 14. Dispositivo secondo le precedenti rivendicazioni, caratterizzato dal fatto che · ciascuno dei moduli selettori (SMA) del livello k seleziona uno dei 2P bus in ingresso, ciascuno di q linee, in funzione del contenuto delle 2P linee di controllo (FOA) uscenti dal corrispondente modulo filtrante (FU A) del livello k e ne trasmette la posizione ed il contenuto attraverso un bus comprendente q+ p linee.
- 15. Dispositivo secondo una deile precedenti rivendicazioni, caratterizzato dal fatto di comprendere mezzi per limitare la ricerca del bit attivo ad una porzione della stringa di bit in ingresso.
- 16. Dispositivo come alla rivendicazione precedente caratterizzato dai fatto che i suddetti mezzi per limitare la ricerca dei bit attivo operano una mascheratura su un solo modulo filtrante (FU A) per.ògni stàdio k della struttura ad albero in funzione -.del contenuto di una pluralità' di linee di condizionamento (UL e Ul).
- 17. Dispositivo secondo la precedente rivendicazione caratterizzato dal fatto di comprendere almeno un modulo di controllo (LM) della limitazione della ricerca dei . bit attivo, il quale, in funzione del contenuto delle linee di condizionamento (UL e Ul), attiva una pluralità' di prime e secone linee di controllo (Al e Wi) collegate ai moduli filtranti (FUk) del livello k.
- 18. Dispositivo secondo la precedente rivendicazione caratterizzato dal fatto che le prime lineedi controllo (WI) vengono generate a partire dalla parola presente su dette linee di condizionamento (UL): * contenendo almeno un numero w di linee sufficienti alla codifica del numero n di ingressi per ogni modulo filtrante (FU) e • essendo ricavate dalla parola (UL) escludendo un numero di bit, a partire dal meno significativo, pari a w*, essendo w* il numero di stadi a monte dello stadio, considerato; dei bit rimanenti le prime linee di controllo (WI) essendo costituiti dai k bit meno significativi.
- 19. Dispositivo secondo la rivendicazione 17 caratterizzato dal fatto che, le seconde linee. di controllo (Al) vengono generate decodificando i bit piu’ significativi della suddetta parola (UL), sufficienti a selezionare il numero di moduli filtranti appartenenti a detto stadio. ·
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| IT97MI000988A IT1291679B1 (it) | 1997-04-29 | 1997-04-29 | Dispositivo per la ricerca della posizione di un bit attivo a partire da un'estremita' di una stringa di bit |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| IT97MI000988A IT1291679B1 (it) | 1997-04-29 | 1997-04-29 | Dispositivo per la ricerca della posizione di un bit attivo a partire da un'estremita' di una stringa di bit |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| ITMI970988A0 ITMI970988A0 (it) | 1997-04-29 |
| ITMI970988A1 true ITMI970988A1 (it) | 1998-10-29 |
| IT1291679B1 IT1291679B1 (it) | 1999-01-19 |
Family
ID=11377026
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| IT97MI000988A IT1291679B1 (it) | 1997-04-29 | 1997-04-29 | Dispositivo per la ricerca della posizione di un bit attivo a partire da un'estremita' di una stringa di bit |
Country Status (1)
| Country | Link |
|---|---|
| IT (1) | IT1291679B1 (it) |
-
1997
- 1997-04-29 IT IT97MI000988A patent/IT1291679B1/it active IP Right Grant
Also Published As
| Publication number | Publication date |
|---|---|
| ITMI970988A0 (it) | 1997-04-29 |
| IT1291679B1 (it) | 1999-01-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Hayes | On modifying logic networks to improve their diagnosability | |
| US4085447A (en) | Right justified mask transfer apparatus | |
| US3371320A (en) | Multipurpose matrix | |
| US7305635B1 (en) | Serial implementation of assertion checking logic circuit | |
| GB2528367A (en) | An apparatus and method for efficient division performance | |
| JPS632464A (ja) | 可変長デ−タ連結出力回路 | |
| US4520482A (en) | Safety controller | |
| DK163776B (da) | Fremgangsmaade og kobling til at skoenne sande data ud fra forvraengede digitale datasignaler | |
| CN104516820B (zh) | 一种独热码检测方法和独热码检测器 | |
| JP5120263B2 (ja) | パターンマッチング装置及び方法 | |
| ITMI970988A1 (it) | Dispositivo per la ricerca della posizione di un bit attivo a partire da un'estremita' di una stringa di bit | |
| FI91107C (fi) | Tietojenkäsittely-yksikkö | |
| US4951242A (en) | Median filters having modules for receiving the current value of an incoming digital signal | |
| KR0146656B1 (ko) | 다치 논리합 연산장치 | |
| JP4904497B2 (ja) | 多段スイッチの制御回路 | |
| US5880978A (en) | Method and apparatus for creating an output vector from an input vector | |
| Caruso | A local selection algorithm for switching function minimization | |
| KR100241071B1 (ko) | 합과 합+1을 병렬로 생성하는 가산기 | |
| KR960015194A (ko) | 절대값 계산 방법 및 회로 | |
| CN112444735B (zh) | 可安全配置的芯片及其操作方法 | |
| JPS62237523A (ja) | ソ−テイング回路 | |
| Vai et al. | Real-time maximum value determination on an easily testable VLSI architecture | |
| GB1585891A (en) | Tdm switching networks | |
| TWI509441B (zh) | Can flexibly set the data width of the multi-character string alignment device | |
| SU966690A1 (ru) | Устройство дл выделени экстремального из @ @ -разр дных двоичных чисел |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 0001 | Granted |