WO2000049484A1 - Digital-elektronisches verfahren zur steigerung der berechnungsgenauigkeit bei nichtlinearen funktionen und eine hardware-architektur zur durchführung des verfahrens - Google Patents
Digital-elektronisches verfahren zur steigerung der berechnungsgenauigkeit bei nichtlinearen funktionen und eine hardware-architektur zur durchführung des verfahrens Download PDFInfo
- Publication number
- WO2000049484A1 WO2000049484A1 PCT/EP2000/000920 EP0000920W WO0049484A1 WO 2000049484 A1 WO2000049484 A1 WO 2000049484A1 EP 0000920 W EP0000920 W EP 0000920W WO 0049484 A1 WO0049484 A1 WO 0049484A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- format
- digits
- input
- coding
- electronic
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30025—Format conversion instructions, e.g. Floating-Point to Integer, decimal conversion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/02—Digital function generators
- G06F1/03—Digital function generators working, at least partly, by table look-up
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
Definitions
- the invention relates to a method for operating an electronic system with which the calculation accuracy for nonlinear functions is increased.
- Computationally intensive algorithms such as those used in particular in image and signal processing, are generally executed on a computer or, often in technical applications, on microprocessors or digital signal processors.
- the execution time on these processors is often very long, so that the installation of specific hardware makes sense to speed up the processing of computationally intensive algorithms.
- a special chip often a customer-specific chip - ASIC
- chip set is placed on an electronic card, which is used for example in a personal computer for acceleration.
- Differences compared to the conventional processor solution mainly concern the data formats.
- a fixed-point representation has the advantage of simple and fast calculation compared to a floating-point representation, which is why this type of representation is used in most user-specific chips (ASIC).
- ASIC application-specific chips
- the main disadvantage is the reduced accuracy compared to floating point operations.
- the number representation is often changed to a larger word width, which cannot be retained at the external interface, since the effort for data storage then becomes too great (see The IEEE Standard for binary floating point arithmetic, ANSI / IEEE Standard 754-1985).
- This floating point format is very general and therefore not as efficient to install or accommodate in terms of size and number of components. If a larger word width is used for the intermediate format than for the output format, a conversion from the larger to the smaller format must take place.
- the invention is therefore based on the object of providing a method for operating an electronic system with which the calculation accuracy is increased in the case of nonlinear functions, and of realizing the electronic system with which the method can be carried out in a time-optimized manner.
- the special case is briefly outlined that the data are processed further externally by a module that implements a non-linear function.
- a non-linear function For example, it is a lookup table that maps an input value to its function value. This is often the case when complicated functions are to be calculated very quickly.
- a neural network which is essentially carried out by matrix multiplications and a subsequent non-linear transfer function.
- the matrix multiplication can be efficiently implemented on an application-specific microchip.
- the nonlinear function for example the tangent hyperbolic, is represented by a lookup table. In such a constellation, the accuracy at the output of the lookup table is decisive. In the case of non-linear functions, however, it is much lower than the accuracy of those already coming from the chip
- a decimal number representation is used instead of a binary one.
- the range in the interval [0.1] is of interest.
- the data from the chip has an accuracy of 0.1, the data from the table also.
- the table maps all possible numbers of the format to f (x), ie the table has 11 entries.
- the three lowest values ⁇ 0, 0.1, 0.2 ⁇ - exactly calculated - are mapped to ⁇ 0, 0.01, 0.04 ⁇ .
- the numerical accuracy is only 0.1, all three values are mapped to the new value 0.
- 0.9 is mapped to 0.8 and 1 to 1. The value 0.9 cannot occur in the image area.
- the quantization thus produces a maximum error of 0.2, which is triggered on the one hand by the limited word width of the data originating from the chip, and on the other hand is increased by the non-linear function of the lookup table. This is remedied by coding the data, which is cheaper to enter in the lookup table.
- the solution is that the exact input format has a fixed word length, but the fixed point may be in different places. Each individual position of the fixed point corresponds to its own format.
- a uniform format is produced from these different formats, which has the fixed point at a defined point. Since some high-value bits can already be cut off for this purpose, an overflow can occur which must be treated.
- the production of the uniform format is realized by a multiplexer, which receives the different formats as input and outputs the standard format as output. The different formats are numbered and selected by a coded control input of the multiplexer.
- the entire definition area is divided into several sub-areas, each of which uses a separate number representation.
- K is the area coding.
- a range coding is required for the coded number representation, which determines the range in which the present number lies.
- the length of the area coding is lb (C), with lb as a two-logarithm.
- n - lb (C) - 1 digits remain if n is the number of digits per word. The 1 is subtracted because of the sign S.
- the area coding is carried out by a few logic elements (AND, OR, NOT), the new number representation is created by simply cutting and assembling. Output from this coding block is as many buses as there are sub-areas.
- the word width corresponds to the width of the external number display.
- the overflow block consists of a simple logic that determines whether the truncated digits are not equal to 0 for a specific number. If this is the case, an overflow occurs.
- the output of the block is initially the largest possible number in the pure, unsigned number representation.
- the state of the sign bit S indicates whether the number is positive or negative.
- the coded format is dependent on the non-linearities of the non-linear function following the coding and is optimized for this function;
- the electronic system can be implemented by a customer-specific circuit (ASIC) or by a specific chip set on an electronic card.
- ASIC customer-specific circuit
- Examples are the detection of microcalcifications in the female breast during preventive examinations (see W. Eppler, T. Fischer, H. Gemmeke, R. Stotzka, T. Köder, "Neural Chip SAND / 1 for Real Time Pattern Recognition", IEEE Transactions on Nuclear Sciences, Vol.45, No.4, Aug 1998, pp. 1819-1823) or the detection of cosmic particles (see W. Eppler, T. Fischer, H. Gemmeke, A. Chilingarian, A.Vardanyan, "Neural Chip SAND in Online Data Processing of Extensive Air showers ", Proceedings of Ist Int. Conf. On Modern Trends in Computational Physics, Dubna, Russia, June 1998). In both cases, the computing power of conventional computers is no longer sufficient.
- the computationally intensive algorithm works a plug-in card of a PC that works with a fixed-point arithmetic. At the same time, the results of the calculation must be very precise.
- the digital-electronic method and the hardware architecture for carrying it out are very well suited for this.
- the invention is explained in more detail below with reference to the single figure of the drawing.
- the figure shows the block diagram of the format conversion.
- the signed numbers all have the sign at the most significant position, f is a binary-coded control word the length F, which indicates the number of the current data format.
- 2 F input data formats can be defined. They differ only in the position of the fixed point. The definition of which control word corresponds to which fixed point position can be freely selected.
- the bits (AI) with the lowest values, which cannot be used later, are cut off.
- the bits (U1) with the highest values that are unlikely to ever be set can also be cut off. However, for safety reasons, this must always be checked and an overflow generated if necessary.
- the input format can then be expressed in another way:
- the position of the fixed point depends on the selected input format EFf.
- the intermediate format ZF has the fixed point at a certain point, regardless of the input format EF f . For this, different areas M f of EF f must be copied to the correct bit position in the intermediate format ZF. This is done through the illustration
- Ml M f -> M, which is achieved in a technical system by a multiplexer or a comparable logic circuit.
- the multiplexer Ml has f inputs each with m digits, namely the digits ⁇ n-1-ülf-m, ..., n-2-ülf ⁇ . You will see him on the intermediate format
- the range of numbers represented by the ZF format can be divided into C intervals I c , so that the intervals cover the entire range of ZF numbers. Overlaps and
- Gaps are not allowed.
- the intermediate format ZF SM with the width m + 1 is larger than the output format. Therefore, some high-order bits Ü2, which have to be checked for an overflow, and some low-order bits A2, which are simply cut off, are again omitted. The cuts are made at different positions for each interval I c .
- the intermediate format is therefore also defined as follows:
- the overflow block determines for the digits n-2 to nl-ül f of the input format EF f and for the digits m-1 to m-ü2 c of the intermediate format whether a digit is not equal to 0. If this is the case, the overflow Ü is set. The following operation is carried out in the overflow block for all input formats EF f and intermediate formats ZF C :
- the output format AF as coding for a number x is composed as follows:
- AF SK c G c
- S is the sign
- K c is the area of the coding
- G c is a section of low-order bits that can partially overlap with K c .
- G c is so wide that all numbers of the in- tervalls I c can be formed with the desired accuracy.
- the interval size ie the number of elements of the interval, is a power of two 2 d , so that G c has the width d.
- the width of K c results from the width of the output format AF, minus the sign bit and the width of G c .
- the coding K c is initially arbitrary, but depends on the coding of the other intervals, which must be mutually exclusive. All codes K together are created minimally, ie there is no code that does not correspond to an interval or two codes that represent the same interval. In both cases, the number format is poorly used and the maximum achievable accuracy is reduced.
- the coding K c is produced in the coding block from B c .
- B c For this purpose, with a favorable division of the intervals, it is sufficient to query a few bits of B c , which, combined by simple logic elements, result in the bits of the new coding K c .
- the sign S and the bits G c with low values are then appended to K c . This is generally done separately for each interval I c , since the individual pieces can be of different sizes.
- a multiplexer namely M2, is also used for this mapping.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Image Processing (AREA)
- Complex Calculations (AREA)
Abstract
Description
Claims
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP00905027A EP1161718A1 (de) | 1999-02-15 | 2000-02-05 | Digital-elektronisches verfahren zur steigerung der berechnungsgenauigkeit bei nichtlinearen funktionen und eine hardware-architektur zur durchführung des verfahrens |
JP2000600163A JP2002537595A (ja) | 1999-02-15 | 2000-02-05 | 非線形関数の計算精度をディジタル電子的に向上させる方法、およびこの方法を実施するハードウェアアーキテクチャ |
US09/902,855 US6941329B2 (en) | 1999-02-15 | 2001-07-12 | Digital method for increasing the calculation accuracy in non-linear functions and hardware architecture for carrying out said method |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19906559.4 | 1999-02-15 | ||
DE19906559A DE19906559C1 (de) | 1999-02-15 | 1999-02-15 | Digital-elektronisches Verfahren zur Steigerung der Berechnungsgenauigkeit bei nichtlinearen Funktionen und ein System zur Durchführung des Verfahrens |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/902,855 Continuation-In-Part US6941329B2 (en) | 1999-02-15 | 2001-07-12 | Digital method for increasing the calculation accuracy in non-linear functions and hardware architecture for carrying out said method |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2000049484A1 true WO2000049484A1 (de) | 2000-08-24 |
Family
ID=7897753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2000/000920 WO2000049484A1 (de) | 1999-02-15 | 2000-02-05 | Digital-elektronisches verfahren zur steigerung der berechnungsgenauigkeit bei nichtlinearen funktionen und eine hardware-architektur zur durchführung des verfahrens |
Country Status (5)
Country | Link |
---|---|
US (1) | US6941329B2 (de) |
EP (1) | EP1161718A1 (de) |
JP (1) | JP2002537595A (de) |
DE (1) | DE19906559C1 (de) |
WO (1) | WO2000049484A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007115687A1 (de) | 2006-04-04 | 2007-10-18 | Daimler Ag | Lastschaltbares getriebe für ein nutzfahrzeug |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102006013989A1 (de) * | 2006-03-22 | 2007-09-27 | IHP GmbH - Innovations for High Performance Microelectronics/Institut für innovative Mikroelektronik | Verfahren zur Reduktion eines Polynoms in einem binären finiten Feld |
CN100458647C (zh) * | 2006-11-07 | 2009-02-04 | 北京中星微电子有限公司 | 一种提高数字信号处理器准确度的方法及装置 |
EP3816762B1 (de) | 2019-10-30 | 2023-12-20 | Carl Zeiss Industrielle Messtechnik GmbH | Signalgenerator |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1995002861A1 (en) * | 1993-07-16 | 1995-01-26 | Philips Electronics N.V. | Data processing system with reduced look-up table for a function with non-uniform resolution |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3812470A (en) * | 1972-07-31 | 1974-05-21 | Westinghouse Electric Corp | Programmable digital signal processor |
US4215415A (en) * | 1977-09-19 | 1980-07-29 | Nippon Electric Company, Ltd. | Recursive digital filter comprising a circuit responsive to first sum and feedback sign bits and second sum sign and integer bits for detecting overflow in the second sum |
US4282581A (en) * | 1979-10-15 | 1981-08-04 | Sperry Corporation | Automatic overflow/imminent overflow detector |
US4694417A (en) * | 1982-07-21 | 1987-09-15 | Raytheon Company | Method and apparatus for determining the magnitude of a square root of a sum of squared value using vernier addressing |
US4636973A (en) * | 1982-07-21 | 1987-01-13 | Raytheon Company | Vernier addressing apparatus |
AU2578001A (en) * | 1999-12-10 | 2001-06-18 | Broadcom Corporation | Apparatus and method for reducing precision of data |
-
1999
- 1999-02-15 DE DE19906559A patent/DE19906559C1/de not_active Expired - Fee Related
-
2000
- 2000-02-05 EP EP00905027A patent/EP1161718A1/de not_active Withdrawn
- 2000-02-05 JP JP2000600163A patent/JP2002537595A/ja active Pending
- 2000-02-05 WO PCT/EP2000/000920 patent/WO2000049484A1/de not_active Application Discontinuation
-
2001
- 2001-07-12 US US09/902,855 patent/US6941329B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1995002861A1 (en) * | 1993-07-16 | 1995-01-26 | Philips Electronics N.V. | Data processing system with reduced look-up table for a function with non-uniform resolution |
Non-Patent Citations (2)
Title |
---|
"EFFICIENT EVALUATION OF X**N FOR LIGHTING CALCULATIONS", IBM TECHNICAL DISCLOSURE BULLETIN,US,IBM CORP. NEW YORK, vol. 36, no. 9B, 1 September 1993 (1993-09-01), pages 131 - 138, XP000397096, ISSN: 0018-8689 * |
FISCHER T.: "OPTIMIERTE IMPLEMENTIERUNG NEURONALER STRUKTUREN IN HARDWARE", XP002138370, Retrieved from the Internet <URL:http://hikwww4.fzk.de/hbk/literatur/FZKA_Berichte/FZKA6251.pdf> [retrieved on 20000522] * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007115687A1 (de) | 2006-04-04 | 2007-10-18 | Daimler Ag | Lastschaltbares getriebe für ein nutzfahrzeug |
Also Published As
Publication number | Publication date |
---|---|
DE19906559C1 (de) | 2000-04-20 |
EP1161718A1 (de) | 2001-12-12 |
US6941329B2 (en) | 2005-09-06 |
US20030208515A1 (en) | 2003-11-06 |
JP2002537595A (ja) | 2002-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE19983175B4 (de) | Verfahren, Prozessor und Einrichtung für Gleitkommaoperationen und Formatkonvertierungsoperationen | |
DE69518403T2 (de) | Ein massiv multiplexierter, superskalarer prozessor mit harvard-architektur | |
DE69032891T2 (de) | Verfahren und Gerät zur Ausführung mathematischer Funktionen mit Hilfe polynomialer Annäherung und eines Multiplizierers rechteckigen Seitenverhältnisses | |
DE60131247T2 (de) | Dezimal-Binär Kodierer/Dekodierer | |
EP2189897B1 (de) | Multiplikation einer ganzen Zahl mit einer Gleitkommazahl | |
DE3854212T2 (de) | Signalgenerator für die Umlaufadressierung. | |
DE102020113480A1 (de) | Zerlegte gleitkomma-multiplikation | |
EP1825356B1 (de) | Verfahren zum bilden einer darstellung eines von einem quadrat eines wertes linear abhängigen berechnungsergebnisses | |
Verma et al. | Multivariate morphometrics of the Indian honeybee in the northwest Himalayan region | |
EP0344347B1 (de) | Einrichtung zur digitalen Signalverarbeitung | |
WO2000049484A1 (de) | Digital-elektronisches verfahren zur steigerung der berechnungsgenauigkeit bei nichtlinearen funktionen und eine hardware-architektur zur durchführung des verfahrens | |
DE69426801T2 (de) | Multiplizierer zur Berechnung von einfacher Genauigkeit, doppelter Genauigkeit, innerem Produkt und zur Multiplikation von komplexen Zahlen in den Betriebsarten | |
DE3303269C2 (de) | ||
DE2826773A1 (de) | Verfahren und schaltungsanordnung zum feststellen der wertigkeit von ziffern in arithmetischen operationen mit dezimalrechnern | |
DE2364865A1 (de) | Erweitertes speicheradressenbildungssystem eines digitalen rechnersystems | |
WO1993017383A1 (de) | Schaltungsanordnung zum digitalen multiplizieren von integer-zahlen | |
DE3889746T2 (de) | Zähler. | |
DE102013209657A1 (de) | FMA-Einheit, insbesondere zur Verwendung in einer Modellberechnungseinheit zur rein hardwarebasierten Berechnung von Funktionsmodellen | |
DE102013212840A1 (de) | Modellberechnungseinheit und Steuergerät zur Berechnung eines datenbasierten Funktionsmodells mit Daten in verschiedenen Zahlenformaten | |
DE69328261T2 (de) | Vorrichtung zur konversion einer binären gleitkommazahl in einen binären logarithmus mit der basis 2 oder dessen umkehrung | |
DE69918313T2 (de) | Verfahren und vorrichtung zur signalkompression im festpunktformat ohne bias | |
DE69330363T2 (de) | Parallelisierter Übertragvorgriffsaddierer | |
WO1999045462A1 (de) | Datenpfad für signalverarbeitungsprozessoren | |
DE4126953C2 (de) | Schaltungsanordnung zur Durchführung des CORDIC-Algorithmus | |
EP0433315A1 (de) | Schaltungsanordnung zur addition oder subtraktion von im bcd-code oder dual-code codierten operanden |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): JP US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2000905027 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 09902855 Country of ref document: US |
|
ENP | Entry into the national phase |
Ref country code: JP Ref document number: 2000 600163 Kind code of ref document: A Format of ref document f/p: F |
|
WWP | Wipo information: published in national office |
Ref document number: 2000905027 Country of ref document: EP |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 2000905027 Country of ref document: EP |