Patent Publication Number: US-5838806-A

Title: Method and circuit for processing data, particularly signal data in a digital programmable hearing aid

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The invention concerns a method and a circuit for processing data, in particular signal data, in a programmable digital hearing aid. 
     2. Description of the Prior Art 
     In the processing of data, particularly signal data, in digital hearing aids, input values are acquired and subjected to a functional algorithm adapted to the current hearing situation or signal characteristic. Output values allocated to the input values are thus calculated using the processor of the hearing aid. This calculation occupies virtually the entire operating capability of the processor. 
     In such known hearing aids, therefore, extensive and desirable further tasks of the processor (e.g. recognition and classification of the current hearing situation, signal pre-processing and post-processing, etc.) can be carried out only to a significantly reduced extent during the calculation of the data output values from the data input values to be processed. 
     SUMMARY OF THE INVENTION 
     An object of the present invention is to provide a method and a circuit for a programmable digital hearing aid, which enable a significantly reduced fraction of the capacity of the processor of the digital hearing aid to be used during the processing of signals. 
     The above object is achieved in accordance with the principles of the present invention in a programmable digital hearing aid, and a method for operating same, wherein a number of predetermined input values are stored in a memory in a manner so as to be respectively allocated to predetermined output values also stored in the memory, wherein, upon receipt of a current input value by the hearing aid, the hearing aid processor conducts a search of the memory in order, first, to locate a stored input value, if any, which satisfies a comparison condition relative to the current input value. If a stored input value which satisfies the comparison condition is found, the output value allocated thereto is then emitted. This procedure is then repeated for each further incoming input value to the hearing aid. 
     The allocation of the output values to the respective input values in the data memory can proceed by means of a calculated function. This function can be one or more of the functions which, in a conventional hearing aid processor, would have to be undertaken in real time by the processor each time an incoming input value was received. As noted above, the necessity of repeatedly undertaking such relatively complicated calculations occupies virtually all of the processor&#39;s operating capability, and thus the processor, in conventional hearing aids, is normally not available to perform further tasks, as would be desirable. 
     The inventive method avoids a calculation of input data values to be processed, which calculation is a source of the above-described disadvantages, and instead performs a search and identification of stored comparison input data values, which are associated with the input data value via a comparison condition. During this search, carried out by means of address arithmetic, the processor of the digital hearing aid is not occupied by calculation tasks. 
     The inventive circuit has a unit for data input/output, a search element for the determination of the comparison input data value that corresponds with the input data value, a comparison element for determining whether the comparison input value corresponding with the input data value via the predetermined comparison condition is present, as well as a processor for controlling the aforementioned elements and units. 
     The search element can be constructed as a separate table pointer control, stored externally from the processor, so that the processor is unburdened during the search for the respective comparison input value(s), and is kept free for further tasks. 
     As a circuit variant, unchangeable fixed memories (e.g. ROM or PROM) are provided for storing the comparison input data values, comparison output data values, and respective pointer addresses. 
     In a circuit variant which allows variation, overwriteable fixed memories (e.g. EPROM or EEPROM) are provided to permit frequent changing of the stored data as needed. 
    
    
     DESCRIPTION OF THE DRAWINGS 
     The single FIGURE is a schematic block diagram of an exemplary embodiment of a digital hearing aid constructed and operating in accordance with the principles of the present invention. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     In the inventive method, a number of different one-dimensional or multidimensional connected data sets of comparison input values and comparison output values are calculated before they are entered into the memory of the digital hearing aid. In the memory, the data sets are then available as completely calculated data values, having only to be fetched, in the course of a search relating to the respective input data value. 
     In contrast to the conventional, and often multiply repeated, constantly renewed calculation of output values based on (identical) input values, in the inventive method and circuit access takes place to comparison input values calculated and allocated only once, as well as to comparison output values determined by means of search methods explained below. 
     An arbitrary number of complex characteristic functions connects the respective comparison input values with the allocated comparison output values, so that, with a minimal demand on the capacity of the processor, an outstanding complexity is enabled, as is data processing or signal processing satisfying the highest quality demands. 
     For the rapid determination of the comparison input values based on one or several given input data values, it is desirable to store the comparison input values in an easily searchable fashion, in a monotonously increasing or decreasing sequence. 
     In the case of a direct addressability of the comparison input values, the latter can be determined particularly rapidly. 
     Given comparison input values stored in a monotonic sequence, the sought comparison input value can be determined particularly rapidly by the use of a binary search method. 
     If for this purpose the numbers 1-1023 are, for example, stored as comparison input values, the first search step according to the binary search method is to query whether the comparison input value to be determined is the number 512. If it should turn out that the comparison input value to be determined is smaller, as the next query it is investigated whether the determined value is 256. If the sought comparison input value is greater than 256, the just-queried search value 256 is increased by the number 128; it is thus queried whether the sought comparison input value is the number 384. 
     The respective addressing unit for finding the sought comparison input value is thus incremented or decremented by powers of two. 
     In another variant of the method, comparison input values are determined according to an M-path search method. The data base of comparison input values, ordered in a monotonously rising or falling manner, is subdivided into M blocks. Each block has a smallest and a largest comparison input value. In a first search step, it is determined in which block the sought comparison input value is located. Further searching thereupon takes place in this block in sequential or binary fashion. 
     A subdivision of the comparison input values into different block groups can be particularly useful if the different block groups are connected with different characteristic values that describe the input data value to be processed. Thus, for example, blocks of comparison input data values can be formed that are concentrated on the signal processing of signal data with a high environmental noise level (e.g. in street traffic). 
     In addition, other comparison input data values can be combined into an additional block for the purpose of processing speech data or song data. 
     The input data value connected with additional characteristic values (e.g. with respect to the environment situation) is preferably supplied to a determined block of comparison input data values, whereby the sought comparison input data value, adapted to the respective hearing situation, can be found particularly rapidly. 
     Given a comparison input data value successfully determined according to the respective search method, the associated comparison output data value can be allocated particularly easily, if the latter is stored and can be fetched parallel to the respective comparison input data value. 
     Given a desired connection of several comparison input data values (that were, for example, placed into relation with the input data value itself, as well as with additional characteristic values of the input data value), the associated comparison output data value(s) can also be determined by means of an addressing based on the determined comparison input data value, using a pointer address. 
     By means of the determined comparison input value(s), the respective target address can be formed, and thus the comparison output data value, or several comparison output data values, adapted to the particular signal and hearing situation, can be determined. 
     For finding comparison (stored) input data values on the basis of current, incoming input data values, a predetermined comparison condition must be satisfied vis-a-vis the incoming input data value and one of the stored input data values. In the simplest case, the comparison (stored) condition can be that a comparison input data value to be sought is regarded as found if it is identical with the present input data value. 
     For further accelerating the search method, the comparison condition can be less strict in that comparison input values can also be reported as &#34;found&#34; if a predetermined (small) deviation from the basis input data value is maintained. By this means, the search times are shortened with only a small loss of precision in processing. 
     By means of reversible storing of the comparison input data values and/or comparison output data values and/or respective pointer addresses, given a change in the hearing characteristic of the user of the hearing aid, or for adaptation to particular frequently occurring hearing situations, values derived from the respective new characteristic functions can be stored at any time in the digital hearing aid, so that a high degree of variability is achieved. 
     A storage of the respective comparison input values and corresponding comparison output values can ensue in the one-dimensional case in tables and in the multi-dimensional case in matrices (with N numbers and in M columns). 
     By calling the respective table position, or the address of the respective matrix element, the respective elements can be determined reliably and directly. 
     In addition, in a further variant of the method, the size region from which the comparison input values that are sought and are found originate, is regularly determined. This makes it no longer necessary to search the entire set of comparison input values during a protracted stay by the user in a particular environment and hearing situation, and instead allows the search to begin at the comparison input value that was likewise determined in the previous search. 
     Thus, in a hearing situation that remains constant, a particularly rapid finding of the comparison input values is ensured. 
     As a success report, in a variant of the method, after finding the respective comparison input data value a ready bit is set, causing the search process for further comparison input values to be terminated. As an alternative to this, an interrupt can be triggered. 
     In the exemplary embodiment of the inventive hearing aid circuit shown in the FIGURE, a processor 4 is connected with a data input/output 1. The input/output unit 1 supplies an input data value E to be processed to the processor 4. Via a search element 2, a data base 5 in the form of a data memory table or matrix is now searched for comparison input values VE that fulfill the comparison queried by the comparison element 3. The data base 5 is thus searched for matching comparison input values VE according to one of the described search methods. Upon determination by the comparison element 3 that the matching comparison input value VE was found (i.e. VE 2  in the present case), the associated comparison output value (VA 2  in the present case) is allocated to the input data value E, originally to be processed, as output data value A in the data input/output unit 1. 
     The next following input data value E is thereupon called by the unit 1, and associated comparison input values VE and comparison output values VA are determined in the same manner. 
     Although modifications and changes may be suggested by those skilled in the art, it is the intention of the inventors to embody within the patent warranted hereon all changes and modifications as reasonably and properly come within the scope of their contribution to the art.