67 lines
3.2 KiB
Plaintext
67 lines
3.2 KiB
Plaintext
|
|
This response was prepared in response to a question about where
|
|
the membership functions and rules of a fuzzy logic unit are
|
|
stored in the assembly code generated by Fide.
|
|
|
|
Aptronix has a methodology we use in the generation of the assembly code.
|
|
We call this methodology TVFI which stands for the Truth Value
|
|
Flow Inference method. This is a proprietary method which was
|
|
developed by the Fuzzy Logic experts at Aptronix to permit faster
|
|
execution of the assembly code as well as the most efficient use
|
|
of memory possible.
|
|
|
|
There are three major steps that occur during the generation
|
|
of assembly code. First, FIL, (fuzzy inference language) is a
|
|
high level language that allows humans to easily define a fuzzy
|
|
inference unit. This language is designed to be a user-friendly
|
|
interface for humans. Secondly, the FIL source code is converted
|
|
into the format of the standard data structure of Aptronix. This
|
|
data structure is a medium between the easy human interface of
|
|
FIL and assembly code. The data structure is designed to be
|
|
compatible with hardware and has a format such that it can
|
|
easily generate code for almost any target chip. Thus, as FIL
|
|
is the interface that allows humans to work easily with fuzzy
|
|
logic, the standard data structre allows hardware to use fuzzy
|
|
logic easily.
|
|
|
|
Finally, the FIU (fuzzy inference unit) stored in the
|
|
standard data structure format is converted into assembly code.
|
|
It is impossible to trace directly from this assembly code line
|
|
for line to the source code written in the FIL. This is because
|
|
different parts of rules and membership functions may be combined
|
|
as part of the TVFI methodology. We have the capability to
|
|
optimize the target- specific code generated completely for speed
|
|
or completely for efficient use of memory depending upon your
|
|
application. Custom RTC (Real Time code convertors) can be
|
|
designed by Aptronix upon customer request.
|
|
|
|
|
|
To summarize, the assembly code generated by Fide is
|
|
optimized for the fuzzy logic aspect. We know how to optimize
|
|
the code because the Aptronix engineers have used fuzzy logic in
|
|
applications for many years and are experts on fuzzy logic and
|
|
its applications. Thus, there is no way to optimize assembly
|
|
code generated from a fuzzy inference unit more than with the
|
|
TVFI methodology of Aptronix and the standard data structure.
|
|
The individual instructions for the target chip contained in our
|
|
assembly code can be modified for optimization however.
|
|
(Although this should be done carefully). For instance, three
|
|
instructions executing a load and multiply sequence can be
|
|
replaced by one instruction accomplishing the same sequence.
|
|
This does not interfere with the assembly code for the fuzzy
|
|
inference unit.
|
|
|
|
|
|
Scott Irwin
|
|
Software Engineer
|
|
Customer Support
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|