A method and apparatus for performing single-instruction bit field
extraction and for counting a number of leading zeros in a sequence of
bits on a general purpose processor are provided. The fast bit extraction
operations are accomplished by executing a first instruction for
extracting an arbitrary number of bits of a sequence of bits stored in two
or more source registers of the processor starting at an arbitrary offset
and the storing the extracted bits in a destination register. Both the
source and the destination registers are specified by the instruction. In
addition, a second instruction is provided for counting the number of
leading zeros in a sequence of bits stored in two or more source registers
of the processor and then storing a binary value representing the number
of leading zeros in a destination register. Again the source and the
destination registers are specified by the second instruction. Both the
first and the second instructions are pipelined to obtain an effective
throughput of one instruction every cycle, respectively. As a result, bit
extraction operations are performed very efficiently by the processor,
thereby reducing the overall processing time required to compress and
decompress multimedia data.
Un metodo e un apparecchio per l'effettuazione dell'estrazione del campo della punta di singolo-istruzione e per il conteggio degli un certo numero zeri principali in una sequenza delle punte su un processor per tutti gli usi sono forniti. I funzionamenti veloci dell'estrazione della punta sono compiuti eseguendo una prima istruzione per l'estrazione del numero arbitrario di punte di una sequenza delle punte immagazzinate in due o più registri di fonte del processor che comincia ad un'immagine riportata arbitraria ed immagazzinare le punte estratte in un registro di destinazione. Sia la fonte che i registri di destinazione sono specificati tramite l'istruzione. In più, una seconda istruzione è fornita per il conteggio del numero di zeri principali in una sequenza delle punte immagazzinate in due o più registri di fonte del processor ed allora la memorizzazione del valore binario che rappresenta il numero di zeri principali in un registro di destinazione. Ancora la fonte ed i registri di destinazione sono specificati tramite la seconda istruzione. Sia le prime che seconde istruzioni sono canalizzate per ottenere un rendimento efficace di un'istruzione ogni ciclo, rispettivamente. Di conseguenza, i funzionamenti dell'estrazione della punta sono realizzati molto efficientemente dal processor, quindi riducente il tempo di lavorazione generale richiesto per comprimere e decomprimere i dati di multimedia.