Language selection

Search

Patent 1127767 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent: (11) CA 1127767
(21) Application Number: 373808
(54) English Title: HYBRID-ABSOLUTE CODED SIGNAL CONVERTER
(54) French Title: CONVERTISSUER DE SIGNAUX CODES HYBRIDES-ABSOLUS
Status: Expired
Bibliographic Data
(52) Canadian Patent Classification (CPC):
  • 354/127
(51) International Patent Classification (IPC):
  • G06F 11/00 (2006.01)
(72) Inventors :
  • DECHANT, THOMAS E. (United States of America)
  • PITT, PAUL E. (United States of America)
  • GLASER, EDWARD L. (United States of America)
  • WAY, FREDERICK, III (United States of America)
(73) Owners :
  • SYSTEM DEVELOPMENT CORPORATION (United States of America)
(71) Applicants :
(74) Agent: HIRONS & ROGERS
(74) Associate agent:
(45) Issued: 1982-07-13
(22) Filed Date: 1981-03-25
Availability of licence: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): No

(30) Application Priority Data:
Application No. Country/Territory Date
637,511 United States of America 1975-12-03

Abstracts

English Abstract



ABSTRACT OF THE INVENTION
Data processing information storage and retrieval system
having a memory. A number of modules are interconnected with the
memory. Encode and decode modules operate in conjunction with
the memory for compacting and expanding data. In the compacting
method and means, preferably the vector signals are encoded from a
compact code to an expanded code before conversion to an equivalent
signal. Also preferably the equivalent line value is converted
from an expanded code back to a compact code before length is
checked using encoding techniques. A preferred encoder is
disclosed for converting to hybrid form a received series of
absolute coded words in decreasing value order which represent the
vector signals. A preferred form of the decoder converts hybrid
coded signals to absolute coded signals. A revolve module in
association with a delta module and a memory enable coded signals
to be transferred into a number of unique but equivalent and
related signals. A seed module enables the shortest of the
equivalent signals to be located. A change module enables any
one of the equivalent signals to be updated. An output module
causes an equivalent signal to be converted back to the original
signal representation. Pipe and brightness modules perform a
discrimination function on stored information.


Claims

Note: Claims are shown in the official language in which they were submitted.



The embodiments of the invention in which an exclusive
property or privilege is claimed are defined as follows:
1. An encoder for converting to hybrid form a
received series of absolute words in a decreasing value
order comprising:
a) means responsive to received previous and current
absolute words for forming an output signal
indicative of the difference therebetween;
b) means for indicating absolute or bit string form
of hybrid output comprising
1) means for indicating a preselected minimum
difference between successively received
absolute words for absolute form of output,
2) means for comparing the minimum difference
indication and the previous and current
difference signal and for indicating the
value of the first being greater than, or
less than or equal to the latter;
c) means for providing absolute form outputs
comprising
1) means operative in response to said
less than or equal to indication for
outputting the stored current absolute
word and an absolute flag; and
d) means for providing bit string form outputs
comprising
1) means responsive to said greater than
indication for forming a set of ordered
signals comprising a binary bit of one value
separated by the number of binary bits of a
second value corresponding to the value of
said previous and current difference signal, and

1091


2) means for selectively outputting said set
of signals in association with a bit string
flag and in a predetermined relation to an
outputted absolute word.

1092


2. An encoder for converting to hybrid form a
received series of absolute coded words in decreasing value
order, comprising:
a) a current register for storing a currently
received absolute word;
b) means for storing a received absolute word in
said current register;
c) a previous register for storing a word received
prior to the word in said current register;
d) means for transferring a word from said current
register to said previous register;
e) means responsive to the stored previous and
current absolute word for forming an output
signal indicative of the difference therebetween:
f) means for retaining the previous and current
difference signal;
g) means for indicating absolute or bit string form
of hybrid output comprising
1) means for indicating a preselected minimum
difference between received absolute words
for absolute form of output,
2) means for comparing the minimum difference
indication and the retained previous and
current difference signal and for indicating
the first being greater than, or less than
or equal to, the latter;
h) means for providing absolute form outputs
comprising
1) means responsive to said greater than
indication for outputting a signal
representing the stored current absolute
word and an absolute flag; and

1093

Claim 2 cont'd
i) means for providing bit string form outputs
comprising
1) means responsive to said less than or equal
to indication for forming a set of ordered
signals comprising a binary bit of one value
separated by the number of binary bits of a
second value corresponding to the value of
said retained previous and current difference
signal, and
2) means for selectively outputting a signal
representing said set of ordered signals in
association with a bit string flag and in
a predetermined relation to an outputted
absolute word.

1094


3. The encoder of claim 1 wherein the hybrid form
comprises a series of words and said means for forming a
set of ordered signals comprises:
a) counter means;
b) a bit string word forming register;
c) means operative in response to said indication
for enabling said counter means to count through
a sequence of states corresponding in number to
the retained current and previous difference signal;
d) means for indicating completion of the last
mentioned counting;
e) means for shifting the content of said bit string
forming register one bit position in the direction
of the least significant bit thereof for each said
last mentioned counter means states; and
f) means responsive to the last mentioned completion
signal for inserting a bit signal of predetermined
value at the most significant end of the bit storing
register content and wherein said means for
outputting comprises means for selectively
outputting the content of said bit string word
forming register.

1095


4. The encoder of claim 3 comprising means for
entering a first occurrence in a new bit string word under
formation comprising:
a) means for storing a signal representing the
number of binary bits remaining to be filled in
a bit string word being formed;
b) combining means for forming a signal representing
the difference between the value of the remaining
number of binary bits to be filled signal and the
previous and current difference signal;
c) means for comparing the value of the previous and
current difference signal and the remaining
binary bits to be filled signal for indicating
the first is greater than or equal to, or less
than the latter;
d) means responsive to said less than indication for
retaining the difference signal from the combining
means as the number of bits needed in the next bit
string word to enter the current absolute word;
e) means operative in response to said greater than
or equal to indication for enabling said counter
means to count through a sequence of states
corresponding in number to the retained number of
bits needed in the next bit string word signal;
f) means for indicating completion of the last
mentioned counting;
g) means for shifting the content of said bit string
forming register one bit position in the direction `
of the least significant bit thereof for each
said last mentioned counter means states; and
h) means responsive to the last mentioned completion
signal for inserting a bit signal of predetermined
value at the most significant end of the bit storing
register content.

1096


5. The encoder of claim 3 comprising means for
filling out the bits of a bit string word being formed when
no further occurrences can be entered therein, comprising:
a) means for storing a signal representing the
number of binary bits remaining to be filled
in the bit string word being formed;
b) combining means for forming a signal representing
the difference between the value of the remaining
number of binary bits to be filled signal and the
previous and current difference signal;
c) means for comparing the value of the previous and
current difference signal and the remaining binary
bits to be filled signal for indicating the first
is greater than. or equal to, or less than the
latter;
d) means operative in response to said less than
indication for enabling said counter means to
count through a sequence of states corresponding
in number to the value of the stored remaining
binary bits to be filled signal;
e) means for indicating completion of the last
mentioned counting; and
f) means for shifting the content of said bit string
forming register one bit position in the direction
of the least significant bit thereof for each
said last mentioned counter means states.

1097



6. An encoder according to claim 2 having a
clipping means, the clipping means comprising:
a) means for storing an upper limit value and a
lower limit value; and
b) means for comparing a current absolute word
with said upper and lower limit values and
indicating if the current absolute word is
out of the bounds defined by the limit values.
7. An encoder according to claim 6 comprising an
interval adjusting means comprising:
a) means for storing an interval value;
b) means responsive to an indication that the current
entry is out of bounds for incrementally changing
the stored upper and lower limit value by the
value of said stored interval value; and
c) means for enabling said comparing means to repeat
the comparing, using the incrementally changed
upper and lower limit values and current entry.

1098


8. A decoder for converting hybrid coded signals to
absolute coded word signals, the hybrid signals represent-
ing a series of occurrence values of decreasing value, the
hybrid signals comprising a series of received binary
coded word signals including at least one absolute coded
word and a bit string word, the bit string word represent-
ing an occurrence by the number of bits of displacement of
a bit of predetermined value from an absolute word in the
series of hybrid words, a hybrid word comprising a flag
signal indicating the type of word, comprising:
a) absolute word outputting means comprising
means responsive to an absolute word flag
signal of a received hybrid word signal for
outputting the received word signal; and
b) absolute word signal forming and outputting
means comprising
1) means responsive to an absolute word signal
and each said bit of predetermined value in
a subsequent bit string word signal of a
received hybrid signal for forming an
absolute word signal indicative of actual
value of each said bit of predetermined value, and
2) means for outputting each said formed
absolute word signal.

1099



9. A decoder for converting hybrid coded signals to
absolute coded word signals, the hybrid signals represent-
ing a series of occurrence values of decreasing value, the
hybrid signals comprising a series of received binary
coded word signals including at least one absolute coded
word and at least one bit string word, the bit string word
representing an occurrence by the number of bits of displace-
ment of a bit of predetermined value from an absolute word
in the series of hybrid words, a received word comprising
a flag signal indicating the type of word, comprising:
a) absolute word outputting means comprising means
responsive to an absolute word flag signal of a
received word signal for outputting the received
word signal; and
b) absolute word signal forming and outputting means
comprising
1) shift register means for storing a received
bit string word signal,
2) means for repeatedly enabling the shifting
of the content of the shift register means
one bit position in the direction of the
least significant bit of the bit string word
signal,
3) means for providing an indication when a
bit signal indicative of said predetermined
value arrives at a preselected position with
respect to the shift register means,
4) counter means,
5) means responsive to a flag signal indicating
a received absolute word signal for setting

1100


(Claim 9 Cont'd)
said counter means to a state relative to
a reference state corresponding to the
value of such absolute word signal,
6) means for enabling said counter means to
count one state towards said reference
state for each such shift of said shift
register means, and
7) means responsive to said indication of a
bit for outputting a signal corresponding
to the state of said counter means.

1101



10. The decoder of claim 9 wherein the absolute word
forming means additionally comprises means for adjusting said
counter means for bits, not of said predetermined value,
which remain in said shift register means after the last
bit of predetermined value in a received word comprising:
a) additional counter means;
b) means for indicating the maximum number of bits
in an absolute word for output;
c) means for selectively setting said additional
counter means to a state relative to a state
corresponding to said indication of the maximum
number of bits in an absolute word;
d) means for enabling said additional counter means
to count one state relative to the set state
thereof towards said reference state for each
said shift of said shift register means;
e) means for providing an indication of the
occurrence of said reference value of said
additional counter means;
f) means responsive to the flag signal of a
received bit string word signal and the lack of
the last mentioned indication for further enabling
both said counter means and additional counter
means to count toward the reference states
thereof; and
g) means responsive to the last mentioned indication
for terminating further enabling of count of said
counter means and additional counter means.

1102

Description

Note: Descriptions are shown in the official language in which they were submitted.


DEMANDES OU BREVETS VOLUMINEUX

LA PRESENTE PARTIE DE CETTE DEMANDE OU CE BREVET
COMPREND PLUS D'UN TOME.

CECI EST LE TOME ~ DE 4-


NOTE: Pour les tomes additionels, veuillez contacter le Bureau canadien des
brevets :
. :,

// ~ '
. ~ :,


JUMBO APPLICATIONSIPATENTS ~:

THIS SECTION OF THE APPLICATION/PATENT CONTAINS MORE ~:
THAN ONE VOLUME

THIS IS VOLUME j~ OF 4
~ . .~: `
`
NOTE: For additional volumes please contact the Canadian Patent Office .
, '' ' '.


.

7f~7




, . . ............ .. . . ..

8351:DBP .
. . - 1; ~
INFORMATION STO~AGE AND RETRIl~yAL SYSTEM

BACKGROUND OF THE INVEiNTION ~
This invention relates to information storage and ¦
: . retrieval systems. ¦-

Dlstinguishing the present invention from the prior
art there are certain characteristics that are generally ti
: applicable to prior art information storage and retrieval
systems in existence today. These features are as follows: 1
1. As the size of a stored data base increases, the I .
average time required to retrieve data therefrom increases. ¦
2. Data compressed in a storage and retrieval iiystem ¦:
. I
' ' ' i.,.,':''




~ '; . . ,

-~ t~
~ 76~


1 must be expanded before it can be operated on.
3. If another element is added to a data base ~for
example, a record i9 added to a file), the amount of
space required to store the updated base alway~ increases.
4. Some inquirie~ will be rejected by a retrieval
system because they are not stated or formated correctly.
5. As the 3ize of a random access data base increases, ----
the efficiency of storage decreases (due to the requirements
for indexing tables, pointers, etc.).
An embodiment of the present invention does not have
any of the above features. ;
An embodiment of the present invention involves a
method and apparatus of restructuring digital information ;~
to produce iso-entropicgrams and seeds. To be explained
in more detail, a seed is an optimum way of representing
a particular piece of information with minimum storage.
Stored infonmation is retrieved, not by searching the data
base, but by a generation process. During the generation
process a data request, along with stored iso-entropicgram
20 seeds, are fed as parameters to an output generator. ~ -
In summary, some of the advantage~ gained from using `~
the technique~ according to the present invention may be
achieved as o110ws: (1) les~ physical storage is required,~
~2) fa~t retrieval time, (3) ease of restruoturing and up-
2 dating a data base, ~4) ease of specifying a new retrleval crit-
eria, and ~5) ease of speciying and carrying out a process.
~: ;;~ ~- ' . '."'':.'
The information storage and retrieval system described
in the present patent application i~ a new class of machine,
~3~ based on an entirely new technology. Since it is based on
: '.',.

-2-
,...... . .

f~

~ ;7

1 a new technology, a new word has been coined to describe
this technology, the word belng "holotropic".
The holotropic inormation storage and retrieval
system is not based upon a new component nor merely upon a
S . ' /'~




~ ~3 3

,~: . '''.

~ J'~7

1 rearran~ement o exi~tin~, components, bu~ inste~d i~ ba~ed
upon new methods and apparatus for buildin~ ~ whole new
cla~s o~ in~ormation proces~ing machines.
Some superficial simitarities will be found between
S pre~ently available technique~ and the class of new machines
disclosed herein. Ho~ever, the differences are muc~ more
significant then the similarities, making it ~kward to ---
describe the new technology in existing terms. For example,
one aspect of the invention resembles holography in the sense
10 that information pertaining to an item is not stored in one -
place. However, to ~ the word "holographic" to describe
this new technoLogy would convey the totally incorrect
impression that it is optical in nature and, at the same time,
the term fails to refer to this technology's other character-
istics. By way of further example, this aspect of the
invention may behave in some respe~ts like an as~ociative
memory. However, here again, the differences outweigh the
similarities and the use of a descriptor like "associativet'
genera~es more confusion that it does olarification. For

this resson, the term holotropic is used to identify the
technology involved.
One application of the holotropic method and apparatus
is for information storage and retrieval. However, in des-
cribing the functioning of a holotropic memory ~ystem, ¢are

2~ must be taken in u~lng the term~ used for pxevious techniques.
The mechanisms by which holotropic memosy ~ystems store and
retrieve lnformation are totally different from the mechanisms
associated with terms like "search", "scan", "match", "point",
"link", or "thread". Thus, according to an embodiment of
the present invention, instead of searching for the presence
~3C of stored data on the basis of matching an inquiry, the

- ~
1~1.*7'767

1 holotropic memory sys~em uses ~he inquiry to lnvoke p~rameters
which ~efine both the applicable pieces and any relations
between these pieces and the rest o the information. Those
parameters then produce the information requested in the
inquiry, not by reading it out of storage, but by recomposing it.
In a holotropic memory system, the information itself is
not found, it ~5 generated.
From the user's point of view, there are two character-
istics of holotropic techniques which profoundly change
conventional modes of dealing with an information storage
and retrieval system. One characteristic concerns the
absence of the need for descriptors, and another concerns
file compression.
Attention will now be directed to descriptors and
13 exactness as it applie~ to an embodiment of ~he present
invention. The data whlch is to be entered into the
holotropic system for l~er retrieval need not be categorized,
. indexed, described, or even formated for the ~rpose of
retrieval. Should the user wish to set up a structure

of categorie~ containing deQcriptors or indices because
it makes it easier for him, he may of course do 80. An
important distinction here i8 that a holotropic memory system -~
never impose~ ~uch structures upon the process. Eveh though
the holotroplc memory ~ystem can accommodate ~uch ~tructure~,
it doe~ not require them.
The same flexibilities characterize the making of
inquiries of a holotropic memory system. The inquirer can
simply a~k questions in whatever form, u~ing whatever words
occur to him. Usually the person attempting to use an

`30 information storage and retrieval system has no trouble

-5-
'.'

-
~ , 77fi7

l s~ his inquiry in such a ~7~y that he understands it,
an~l in such a way that other people understand it. The
di1culty arises when he tries to translate his inquiry
into nn equivalent question which meets the acceptance
requirements imposed ~y conventional information storage and
retrie~al systems.
w ~'~ . - . .
_ By prior information storage and retrieval systems, limits
have to be set on the inquiry proces~. Since a holotropic ~:
memory system does not impose any requirements on the inquiry
l process, necessary control i8 vested where it belong~,
namely, with the user. The most important control the user -~
exercises concerns the degree of exactness of the match ~-
between his inquiry and the contents of the data base.
The maximum setting on his "degree of exactness" control
l would be that for an exact match. Should sn exact match
not be found, the holotropic memory system en~ble~ it to
tell the user that ~he situation exists and indicates that
change must be made in the exactness settin8 80 that the
inquiry will retrieve at least one relevant item.
The exactn-~s control sett~ng has no effect whatsoever
on the search t~me of the holotropic memory system. However,
slnce it indirectly controls the amount of data retrieved,
it does efect the total response time in the sense that
more retrieved data will tske longer to dlsplay in print.
2 Because o the diferences in the techniques of the inquiry
process in trad~tional and in holotropic information storage
and retrieval systems, the structure of the latter may be
1~ vastly different. In traditional retrieval information
storage and retrieval systems, an inquiry can be re~ected
~3 becnu~e it contains an unallowable descriptor, or because
some~ ing i8 misspelled, or because the~arts are ordered
im~operly~ or because the lnquiry is not framed according
to thc specifications. Thus, an inquiry can be re3ected
-6-


~- f~

~ '6~

1 regardless of whether the inormation it asked ~or is actually
in the data base. In a holotropic data storage and retrleval
sy~tem, no inquiry need ever be re~ected or such reasons.
The only sense in which an inquiry needs to be "re~ected"
S at all by a holotropic in~ormation storage and retrieval
system is that it fails to retrieve, In other words, the
data base does not conta~n anything which matches the
inquiry at the specified level of exactness. If this
happens, the user i8 told whether or not a change in
exactness will retrieve an item, and if 80, the setting.
Another consideration for holotropic information storage
and retrieval method and apparatus i9 file compression.
The nature of the holotropic system i9 such that the
stored data is compressed into less space than would be
lS used to store the data with presently available techniques.
This is true even if it were entered as a linear string,
that i8, as a single record. The degree to which any
particular data sample i8 compressed in a holotropic system
is a function of two independent processes.
The first process is fairly easily described, and its
effects are relatively predictable. The holotropic ~torage
and retrieval system compresses input data by automatically
taking advantage of any redundancy. In one te~t, a 10,000-word
oample of ordinary English prose was comprosoed to approxi-
matoly on~-half the space which would have boen requirod
had the sample (without any index tablos, pointers, or
other artifacts) be-n stored as a single record in a traditional
information storage and retrieval sy~tem. The exploitation
of these redundancies occurs at all levels. Once a
~30 ¦ character, a word, a sentence, a paragraph, or any other

_7_ `
,.".~ . : '

r ~! f)

l.~

1 arbi~r~rily specified input element hss been encountered,
no subsequant occurrences of that same eLement need be
Ytored in their original form. Instead, the holotropic
system notes that a previously encountered element has
occurred again, in a manner which permits reconstitution
of any or every one of the multiple input elements in its
orig~nal conte~t. -
The second process contributing to data compression
in a holotropic memory system ~s more difficult to predict.
It is more dificult to pred~ct as it is a function of the
relatedness of elements which are part of a data base.
As each new input element is added to the data base, it
i9 automatically correlated with every other appropriate
element already stored Since thi~ process operates on the
lS data base in its com~ressed form, it does not adversely affect
storage time, One possible result of this correlation is
that the content and structure of a new input element may
reveal a relationship Setween itself and a number of already
~tored olements which permits all of the related elements
to be treated as a single entity and stored together. Thu~,
a number of elemsnts which at one time were stored separately,
can be collapsed on the basis of their relationship with a
su~sequent input element, with results that the updated
file can require less totsl storage ~pace ehan it did prlor
2~ to the addltion of the new lnput element.
Another characteristic which is also very tlfferent in a
holotropic system from tradltional information storage and
retieval systems i~ that in a holotropic system ~oth the
degree of compression and the relative speed of retrieval ~;
`30 may increase as the size of the data base increases. ---

-- ~ ~

~ 7~f~;7

1 A derivative eature of compression in a holotropie
sy~tem i9 th~t certain processing or manipulation o~ the
stored data is done in its compressed form, thus permitting
higher processing speeds than 5 y8 tems which mu~t first
expand the data.
Although the above discussion has been directed primarily
to holotropic information storage and retrieval systems,
specific holotropic method and apparatus techniques may
be applied in other areas.
One area i~ in digital communications, where band width
limitations place an upper bound on speed of transmission.
Here, a holotropic ~ystem can be used to encode the digitized
data, and the speed o~ transmission of any message wil} be
increased as a function of the d~gree of compres~ion as
discussed with respect to information storage and retrieval
spplication~. It is important to remember that the information
thus compressed and transmitted can represent anything
whatsoever, from a payroll file to a digitized pictorial image.
Significantly, other systems can be sed to efficiently
compress and transmit data, However, one thing which makes
the holotropic approach unique i8 tht, since holotropic
compression i8 a function of the redundancy of the message,
compression and orror corre~tion are one and the same mechanism.
S~gnificantly, holotropic techniques can be lmpl-mented
2S in software, but some or all are much more effici~nt when ~ -
implemented in microcode, and are maximally efficlent when
implemented d~rectly in hardware, Hcwever, even where
holotropic techniques are implemented in sotware or
microcode, holotropic memory systems can perform more
`3 efficiently in terms of stor~ge, speed, e~c. than presently
known techniques At the hardware level, holotropic

`::
_9_ '`',

~-~ ~

~ '7~7

1 technology can take full advantage of the unique propertie~
of the latest components, such as, charge couple device~,
magnetic-bubble logic, and memory, etc.
The technology de~cribed herein is applicable alike
to large computers (for examplej information storage and
retrieval systems), to subsystems (for example, intelligent --
disk storage devices), or to very small stand-alone machines
~for example, battery-driven calculators)~
. :-
SUMMARY OF THE INVEI~TION
One aspect of the present invention concerns novel
method and means involving a digital data processor for
creating or structuring a unique digital coded data base
in a memory of the data processor. Briefly, a method is
lS disclosed for forming, in a desired order of occurrence,
and as input, a plurality of coded event ~ignals. At
least ~ome of the event signals represent the same event
and at least one ~ignal represents a different event. The
event signals together represent plural entries. An event-
time indication i~ formed for each event ~ignal representingthe order of occurrence thereof. In the memory, a stored
data base is formed which comprises a separately retrievable
event vector signal for each diffe~ent event and includes
the step of forming in each retrievable event vector ~ignal
a representation of those event-time indications which
represent the order of occurrence of the corresponding
event. Preferably, the event-time indications axe formed
by counting the event signals as they are formed.
The vector ~ignals are referred to herein as being
3 retrievable because the vector signals need not be stored

" -10- .

1'~7'767
l ~ se~ rate memory locations as separate signals but may
~ in a special form called a seed or may be combined with
othcr seeds which may be retrieved to separate vector signals
as required.
Also disclosed is a method and means utilizing a data
processor having a memory for creating or structuring a
multiple layered data base in the memory. The method
involves the steps of ~orming, in a desired order of
occurrence, and as input, a plurality of coded event signals;
at least some event signals represent the same event and at
lea~t one even~ signal represents an event which is different
from another one. The event signals, together, represent a
~equence of entries. Some of the entries are the same and
at least one is different. A fir~t event-time indication
lS i8 formed for each of the event signals. A second event-
time indication is formed for each of the entries. The
event-times represent the order of occurrence of the
respective events an~ entries, representing the input.
The fir~t data base layer i~ entered in the memory and
involves the steps of storing in the memory a retrievabIe
f1rst layer vector ~ignal corresponding to each different
valued event ~ignal and the step of forming in each of the
.
first layer vector signa1s a representation of those first
event-time lndications which repre~ent the order of occurrence
o~ the corre~ponding valued event signals. The second data
base layer 1g entered ln the memory and involves the step
of storing in the memory a plurality of retrievable second - -
layer vector s1gna1s. Those entries which are the same have
a corresponding second layer vector signal and those entrie~
~3 which are different each have a different second layer vector
",:
:~
:'. -11- '

~-~
1.'~

1 signal. Also includ~d in the step of forming the second
layer is the step of forming in each second layer vector
signal a representation of those second event-time indi-
cations which represent the order of occurrence of the
corresponding entries.
Preferably, redundancy is eliminated in the first
data base layer. According to a preferred method, a test -
is made to determine if a newly formed input ~ntry is
already represented in the first data base layer. If the
entry is not represented, the newly formed entry is added
to the first data base layer, utilizin~ the step of storing.
If the entry is already represented, then it is not added
to the first layer a second time. However, the entry is
added on the second layer.
According to a further preferred embodiment of the
invention, method and means are provided for storing -
delimiter events in one or the other or both of the layers.
Briefly, a method is disclosed wherein the event signals
of the input comprise at least one representing a delimiter.
20 At least one ~uch delimi~er event ~ignal is formed in each - -
of the entries and in the order of occurrence of the entries
so as to define the boundaries of the entries. The first
event-time indications also identify the order of occurrence
of each delimiter. A separately retrlevable vector slgnal
i9 provided for the first event-time lndications which
represent the order of occurrence of the delimiter event
signals. A similar method is provided for forming a
delimiter event signal in the second layer identifying the
bounds of entries in the input.
3 Method and means involving a data processor are
disclosed for retrieving data from the stored data base.

- -12-
~ `

-~ ~ ~
1.~ 7

1 Briefly, the disclosed method retrieves, from a memory,
data which is contained in a stored data base. The data
base represents a se~uence of events in which some events
are the same and at least one event is different. The
stored data base is represented by a plurality of separately
retrievable vector signals one for each different event.
Each retrievable vector signal represents at least one
event-time value which represents the order of occurrence
of the corresponding event. ~he method includes the steps
of interrogatinq a selected vector signal to selectively
form at least one event-time identification signal, and
generating a unique event signal corresponding to a vector
signal which represents an event-time value corresponding
to the event-time identification signal. By selecting only
those vector signals for interrogation which are of interest
the necessity of interrogating all vector signals of the
data base i~ avoided.
Method and means involving the data processor are
also disclosed for retrieving from a memory, data which
is contained in the multiple layered data base. Each layer
represents an ordered sequence of entries and events. One
or more events represent each entry. In each layer some
events are the ~ame and at leAst one i8 difforent. Some
ontrie~ are the ~ame and at least one is dif~erent. Each
2 layer ha~ a plurality of ~eparately retrievable ve¢tor signals,
one for each different event for such layer. Each retrievable
` vector signal rèpresents an event-time value for each occurrence
of the corresponding event and the event-time values identify
the order of occurrence of the corresponding events. The
data base comprises at least first and second layers. At ;;


- -13-

~ 7~

1 least some o~ the events in the secend l~yer have a
corresponding entry in tlle first layer. The method
disclosed includes the steps of generating a first layer
entry identification signal designating a fir~t layer
entry which corresponds to a second layer vector signal.
The second layer vector signal represents at least one
event-time value in a selected second layer entry. Also
included is the step of generating a first layer event
signal corresponding to the first layer vector signal
0 which represents an event-time value in the designated
first layer entry.
The multi-layer system, preferably involves method
and means for interrogating on each layer and generating
signals from each layer. Briefly, the method involves the
step of interrogating a selected first layer vector signal
to form at least one first layer entry identification signal
which, in turn, designates at least one second layer vector
signal. The de~ignated second layer vector signal is
interrogated to form at least one second layer entry
identification signal. The step of generating includes
the generation of a first layer entry identification signal
: de~ignating the first layer entry which corresponds to a
second layer vector signal which represents at lea~t one
event-time value in the deslgnated second layer entry. A
2 first layer event signal i~ generated corre~ponding to the
first layer vector signal which represents an event-time
value in the designated fir~t layer entry.
Preferably the retrieval involves an initial step of
forming a request comprisinq a series of coded event signals
` repres-nting the events of an entry. The step of interrogating

-14-
.,.
:'

-~

~ 6~

1 on the ~irst layer inclu~es the step of interrogating
selected vector signals, which correspond to the events
of the request, to locate an entry containing event-time
values which represent events having a predetermined degree
of match with the events represented by the event signals
of the request. Preferably a signal is formed which
identifies different allowable degrees of match between
the events of the request and the events of an entry in
the data base. The step of locating involves the step of
0 locating a data base entry which has the allowable degree
of match. In this manner it is possible to locate a data
base entry in the first layer which may not exactly match
the events of the request.
Also disclosed is a concept generally referred to as
piping. ~riefly, a preferred method of piping is disclosed
which involves the step of locating a data base entry which -~
has at least a predetermined number of event-time values
representing events positioned within a preselected number
of event positions relative to events in the request.
Preferably an alterable pipe cutoff signal represents
such predetermined number of events. The pipe cutoff
signal preferably repr-sents the predetermined number of
events as a fraction of the number of events in an entry
of the reguest and computations are made to determino the
2 actual number of events to be used in the step of interrogating
based on the length of various parts of the request. -
According to a still preferred embodiment the pre- ;
selected nu ber of evçnt-time values is specified by a
pipe width value which may be altered as desired.
3 In addition, the concept of brightness is disclosed. A

., -15- ' :.

~-~ ~ ~
~ 77~

1 preferred method is disclosed whereln piping forms an
intermediate entry identification signal. Further
interrogation is performed according to brightness in
order to locate a data base entry which has at least a
preselected degree of match as to order and presence of
events, with an entry of the reguest.
In summary then it will now be seen that the piping
feature locates entries which meet certain piping criteria
and these entries are then used by the brightness feature ,' ,
N to locate data base entries which have the desired pre-
selected degree of match as to order and presence of ,
events with the entry of the request ~i.e., brightness). ~ ,
Preferably the preselected degree of match is specified by
a brightness value cutoff signal which is alterable by the
user.
In a preferred method according to the invention, a
length discrimination feature is provided in order to only
locate those data ba,se entries which h ve a preselected
degree of mntch, as to number of events, as well as order
and presence of events.
Preferred methods are disclosed which utilize delimiters
for locating entries during the interrogation and generation
steps. Although the aforegoing descrlption of the pipe
and brightness features deals in large with interrogation
2S and generatlon on a ~lngle layer, it should ~e understood
that the same features may be applied on one or more layers
in a multiple layer system. Method and means are disclosed
herein for interrogating on one layer to locate entries on
the first layer which in turn identify events on the second
layer. It will be recalled that each second layer event

`: -16-

- ,t ~
~ 76~

wiLl have a corresponding vector signal. ~y interrogating
such vector signals on the second layer, second layer entries
~re located by using pipe and/or brightness, and it is
possible to locate portions of the data base which do not
S exactly match the request. For example, the request may
be composed of letter events which in turn represent word
entries which in turn represent a sentence entry. By
interrogating the first layer using the pipe and/or brightness,
it i8 possible to locate for each word of the request a word
in the data base which most closely matches the word of the
request. The~e best words, represented by first layer entry
signals, (second layer event signals), are then used to
interrogate the second layer of the data base by using pipe
and/or brightness. It i8 then possible to find a word in
the data base which, although it does not exactly match the
request word, i8 the best one represented in the data base. -
The same i~ true of a sentence and the words which make up
a sentence.
Although the foregoing description has been primarily
directed to methods, it will be under~tood that data processing
means are disclo-ed which include both hardware and programming
for e$fecting the methods described.
Also disclosed are various ways of compacting data which
will be described in more detail, One form i~ referred to
2 herein as revolving. ~riefly, an electronic data processor
ls disclosed for converting coded signals as follows. The
combination of a glven line value signal and a given line
number signal i8 formed which together represent a given
value. Additionally a number of lines value signal is formed.
~30 Significantly, means is provided for converting such combina-
tion of given line value signal and given line number signal


-17-

~-~ ~
~Z7767

1 representing each different given value to any combination
of equivalent line value signal and line number signal in
a uniq~e set thereof which includes the given signals.
Each line value signal represents at least one digitally
coded actual occurrence value out of a set of monotonically
ordered possible occurrence values. Each line value signal
is related to another in the same set by an exclusive OR ~ -
of the actual occurrence values thereof and the actual
occurrence values thereof relatively shifted. Also provided
0 is means for responding to each different value represented
by the number of lines signal for causing the converting
means to form a different predetermined one of the
equivalent combination of line signal and line number
signal within the set which corresponds to the combination
of given line signal and given line number signal. Such
an arrangement has particular application to systems such
as the present one involving vector signal~ which may have
an extremely large number of event-time values, as it permits
the values to be compacted down to a small fraction of the
fully expanded form. Thl~ is particularly zpplicable to
vector signals which can be quite long. Signlficantly,
as more values are added to a given line value the shorte3t
eguivalent line may actually become smallar.
In a preferred embodiment o~ the ~oregolng proco8sor,
2 mean- is provlded ~or causing tho8e relatively shifted
occurrence vaIues which are not within the group of possible
occurrence values to be eliminated from the equivalent line
value signal, contributing to the compaction feature.
According to a further preferred embodiment the number
~3 of lines value signal is represented by one or more signals
'~ . ':
~ -18-

~ 7f~7
1 representing componen~ powars of two thereby representing
increments by which the given signal i9 moved through the
equivalent signals.
According to a further preferred embodiment the
operation of forming incremental number of lines value
signals can be done very fast and conveniently. In such
an embodiment, means are provided for determining the
larger of the difference between the values of the largest
two actual occurrence value signals in the given line and
of the difference between the values of the largest possible
occurrence value and the largest actual occurrence value
in the given line value. Pre~erably means is also provided
for forming one or more incremental number of lines value
signals representative of the largest difference.
lS According to a still further preferred embodiment, -
a data processing compactor for coded signals is disclosed.
This is referred to herein generally as seed finding. In 1
accordance with one such embodlment of the invention the
forementioned data processing converting means is provided
with means for forming a plurality of incremental number
of lines value signals causing the given line to be moved
through successive equivalent signals. Means are provided
for interrogating the formed equivalent line value signals
~or one of selected length, preferably the shortest. A
signal indiaative o~` tho one of selected length i9 stored.
Preferably, both the equivalent llne value signal and the `-
equivalent line number signal are stored as the indicative
signal.
Generally it is important to minimize required memory
3~ space and a¢cordingly length of data must be minimized.
1 ~ ~ ` ,
~ .'
~ ~ -19-
. , ~.

~ ~ f-``)
~ 7~t;'7

1 Therefore, redundancies such as "o"s are preferably
squeezed out of data to be stored by means such as an
encoder. The compaction operation is preferably arranged
to minimize the length of data as it exists after encoding
and before storage in memory.
According to a preferred embodiment of the invention,
data processing means is provided for outputting signals
represented by the line value signal and the line number
signal. This feature is generally referred to herein as
0 output. In this connection the data processing converting
means disclosed above is provided with means for forming a
signal having a value representing the number of possible
occurrence values in the set thereof, means for determining
a value related to the difference between the number of
possible occurrence value signals and the given line number
~ignal. This value is then used by the converting mean~ to
form the corresponding equivalent line signal which is the
input/output line.
Also disclosed is an electronic data processing coded
signal changing means which is capable of changing i~ignals
represented by a line value signal and a line number signal.
Significantly the changes need no~ be made at the level of
the given signals but can be made in the line value signal
of one of the other equivalent signals in the corresponding
set of equivalent slgnals. Briefly, to this end there is
disclosed means for storing at least the combination of a
given line value isignal and a given line number signal which
represent a given value. Means are provided for forming a
change signa1 representing at least one change occurrence
value. Additions and,deletions are indicated in the change

-20-

^\
~ '776~

1 signal. Additional means form a number of lines value
signal. Means similar to that disclosed above converts
the combination of given line value signal and glven line
number signal to one of the equivalent signals in the
corresponding set. The equivalent signal is identified
by the number of lines signal. Means is provided for
exclusive ORing the values represented by the equivalent
line value signal and the change signal for forming a
change line value signal. Preferably the number of lines
value signal represents the difference between the values
represented by the given line number signal and the change
line number signal. In this way the given line signsl is
rotated back to what is referred to as an input line in
the equivalent ~ets and then the input line is exclusive
1 ORed with the change signai~
Also disclosed i8 an electronic data processing
method for checking for the presence of an actual occurrence
value represented by a given line value in the equivalent
~ets. This has been referred to generally as the DEL
2 function. Significantly, the presence of an actual
occurrence value i8 to be checked not in the given line but
in one of the other equivalent lines. To this end a method
is disclosed which utilize~ the value repre~ented by the
qiven line number signal for forming a signal representing
25 the number of lines of displacement between the glven line :~-
and a desired line value of the equivalent set of line value~.
A test signal is formed repre~enting the desired possible
occurrence value to be checked for presence in the desired
line value. The values represented by the test signal and
the number of lines signal are combined to form a further

-21-
''.`.,,~

'-?
7~

1 tes~ signal identi~ying a further possible occurrence
value for test. The values represented by ~he test signal
and the given line signal are compared for a predetermined
relation. The values represented by the further test signal
and the given line signal are also compared for a predeter-
mined relation. Responding to the results of both comparing
steps, a predetermined signal is formed indicating the
presence of an actual occurrence value, in the desired
line value, equal in value to that represented by the test
0 signal. In addition to the method, means are provided for
checking for presence.
In the compacting method and means, preferably the
vector signals are encoded from a compact code to an
expanded code before conversion to an equivalent signal.
Also preferably the equivalent line value i~ converted
from an expanded code back to a compact code before length
is checked using encoding techniques. A preferred encoder
i8 disclosed for converting to hybrid form a received series
of absolute coded words in decreasing value order which
represent the vector signals. In such encoder, means is
responsive to received previous and current absolute words
for forming an output signal indicative of the difference.
Abæolute or bit string form of hybrid output is indicated.
To this end, means is provided for indicating a preselected
2 minimum difference between successively received absolute
words for absolute form of output, and mean~ is provided
for comparing the minimum difference indication and the
previous and current difference signal for indicating the -
value of the first being greater than, or less than or
30 equal to the latter. Absolute form outputs are provided. -~

-22- ;
~.. -- . -Y f
: '
.'
~'.~,,,,,.' . ~ ''~ . '.'',:"~',''' ..'' ''' '''

~-~, ~ ~
~ 7~i7

1 To this end, means is operative in response to the les~
than or equal to indication for outputting the stored
current absolute word and an absolute flag. Bit string
fonm outputs are also provided. To this end, there is
means which is responsive to the greater than indication
for forming a set of ordered signals comprising a binary
bit of one value (i.e., "1") separated by the number of -
binary bits of a second value (i.e., '!on) corresponding ~-
to the value of the previous and current difference signal. - ~-
0 Additionally, means selectively outputs the set of signals
in association with a bit string flag and in a predetermined -
relation to an outputted absolute word. In this manner,
absolute words are converted to a hybrid form of encoding.
A preferred form of the decoder converts hybrid coded -
signals to absolute coded signals. In the system this
decode operation is performed on hybrid coded vector
signa}s coming }rom memory. The hybrld signals represent
a series of occurrençe values of decreasing value order.
$he hybrid signal~ comprise a serie~ of received binary
2 coded word signalQ including at least one ab~olute coded ;~
word and a bit string word. The bit string word represents
an occurrence by the number of bits of displacement of a
bit of predetermined value from an absolute word in the
series of hybrld words. The hybrid word al80 has a flag
indicating the type of word. The decoder includes an
absolute word outputting arrangement that includes means ;
responsive to an absoIute word flag signal of a received ~-
~ ~ , .
`~ hybrid word for outputting the received word signal. Also
provided is an absolute word outputting arrangement that
~30 includes means responsive to an absolute word signal and
each bit of predetermined value in a following bit string
':'

-23-

-

7~;7

word sigllal for forming an absolute word signal for output
indicative of the actual value of each said bit of predetermined
value. In this manner retrieved vector signals are converted
from hybrid form to absolute word form, each absolute word
representing an actual occurrence value.
In accordance wi.th t~e present invention as claimed in this
divisional appli.cation there is provi,ded an encoder for convert- :
ing to hybrid form a received series of absolute words in a
decreasing value order comprisi.ng:
a~ means responsi~e to rece.ived previous and current
absolute words for forming an output signal indicative of the
difference therebetwee,n;
b~ means for indicating absolute or bit string form of
hy~rid output comprising .. .
lS 12 means for indicating a preselected minimum ~.
difference ~etween the values represented by successively
received absolute ~ords for a~solute form of output, ,
2~ means for comparing the minimum difference
indication and the previ.ous and current difference signal and .'
for indicating the value of the first being greater than, or
less than or equal to the. latter;
C2 means for providing absolute form outputs camprising:
1~ meang operative in response to said less than or ,,'
equal to indication for outputting the stored current absolute
word and an absolute flag; and -,~
d2 means for pro~;.ding ~it string form ou~puts comprising:
1), means responsi.ve to said greater than indication ;~
for forming a set of ordered si.gnals comprising a binary bit of
one value in association Wlt~. the number of binary bits of a .;

3Q second value corresponaing to the value of saia previous and



- 24 -

~. ,

7~i7

current diff~rence signal, and
2) means ~or sel~ctively outputting sai~ set of
signals in association wi.th a bit string flag and in a
predetermined relation to an outputted absolute word.
Also in accordance wi.th the present invention as claimed in :
thïs applicatlon there is provid.ed an encoder for converting to -
hybrid form a received series of absolute coded ~ords in
decreasing value order COmpriSLng:
a~ a current regi.ster for storing a currently received --
absolute word; .
b), means for storing a recei.ved absolute word in said
current register; ~,
c~ a previous register for storing a ~ord received prior ..
to the word in said current register; ' .:,
d~ means for transferring a word from said current .
register to saia previous, register; .,
e.l means responsive to the stored previous and current :' '-
absolute wvrds for forming an output si.gnal indicative of the ,''' :
di.fferences in value therebetween; ':,-
f~ means for retaining the previous and current difference :'.'
si.gnal; .. -
gl means for Lndicating absolute or bit string form of
hybrid output comprIsing: ...
1~ means for indicating a preselected minimum
difference in value fietween rece.~ved afisolute words for absolute
form of output, ....
2~ means for comparing t~e minimum difference .'.
indication and the retained previous and current difference .:
signal and for indicating t~e value of the first fieing greater .''
than, or less than or equal to, the latter;
,


- 24 ~

~2~7~7

h~ means for providing absolute form outputs campri~ing:
1) means responsibe to saii'. greater than indication
for outputting a signal representing the stored current
absolute word and an absolute flag; and
i~ means for providing bi.t string form outputs comprisiny:
l) means responsive to said less than or equal to
indicatïon for forming a set of ordered signals, comprising
a binary bit of one value in association with bi.nary bits of
a second value.the number of ~hich corresponds to the value of
said retained previous and curre.nt difference signal, and .
2~ means for selectively outputting a signal
representing said set of ordered signals in association with
a bit string flag and in a pre.determined relation to an
outputted absolute word.
Further in accordanc~ with the pre~ent invention as claimed
in this applicat;on there is provided a decoder for converting
hybrid coded signals to absolute coded word signals, the hybrid ~;
signals representing a serles of occurrence values of decreasing
value, the hybrid signals comprising a series of received :
2Q binary coded word signals i.ncluding at least one absolute
coded word and a bit string word, the bit string word
representing an occurrence by the number of bits of displacement
of a bit of predetermined value either from another bit of the
same predetermined value or from the value represented by an
absolute word in the series of hybrid words, a hybri.d word
comprising a flag signal indicating the type of word
comprising:
a~ absolute word outputting means comprising means
responsive to an absolute word flag signal of a received hy~rid
word signal for outputting the received word signal; and




- 24 B -
' ',

~4 .

-
76~

b~ absolute wo.rd signal formi.ng and outputting.means
comprising:
11 means respons.ive to an absolute. word si.ynal and
each said bit of prede.termined value in a subse.quent bit string
word signal of a received hy~ri.d signal for forming an absolute
word signal indicative of actual value of each said bit of
predetermined value, and ::
2~ means for outputting each said formed ahsolute .:
word signal. - .
Further in accordance.wi.th the. present invention as claimed .:.
in this application th.ere. is provided a decoder for converting
hybria coded signals to absolute coded word signals, the hybrid .- .
signals representing a serles of occurrence values of ~ -
decreasing value, the ~ybrid signals comprising a series of ..
received binary coded wora signals including at least one ~.
ahsblute coded word and at l~ast one bit string word, the bit
string wora representing an occurrence by the num~er of bits .
of aisplacement of a bit of pre.determined value from an
absolute word in the series of hybrid words, a received word
comprising a flag signal indicating the type of word,
comprising: :
a) absolute word outputting means comprising means
responsive to an absolute word flag signal of a received word
signal for outputting the received word signal; and
b) absolute word signal forming and outputting means
comprising:
~; 1) shift register means for storing a received bit ...
~:~ string word signal,
2) means for repeatedly enabling the shifting of the -.
content of the shift register means one bit position in the .


.
- 24 C -
'~:
'' .

LZ7767

direction of the least signifi.cant bit of the bit string word
signal,
3) means for providing an indi.cation when a bit
signal indicative of said predetermined value arrives at a
preselected position with.respect to the shift register means,
4) counter means,
5) means responsive to a flag signal indicating a
received absolute word signal for setting said counter means ..
to a state relative to a reference state corresponding to tbe :
1~ value of such absolute word signal,
6) means for enabling said counter means to count one
state towards said reference state for each such shift of ..
said shift register means, and
7) means responsive to said indication of a bit for --
outputting a signal corresponding to the state of said
counter means. -




. - 24 D -




: '

~.,f~7'~

1 ~rief Description of the Drawing~
Fig. 1 is a general block diagram of the data processing
machine (DPM);
Figs. 2, 3 and 4 form a schematic and block diagram
of the ENCODE MODULE;
Fig. 5 is a diagram ~howing the relationship of Figs. 2,
3 and 4;
Fig. 6 is a schematic and block diagram of the ALU used
in various modules in the DPM SYSTEM;
Figs. 7 and 8 form a flow diagram illustrating the
sequence of operation of the ENCODE MODULE;
Figs. 9 and l0 form a schematic and block diagram of the :--
DECODE I MODU~E;
Fig. 11 is a flow diagram illustrating the sequence of -
lS operation of the DECODE I MODULE;
Figs. 12, 13 and 14 form a schematic and block diagram
of the DECODE II MODULE;
Fig. 15 is a schematic and block diagram of the DELTA
MODULE;
Fig. 16 is a flow diagram illustrating the sequence of
operation of the DELTA MODULE;
Fig. 17 is a schematic and block diagram of the REVOLVE
MODULE7
Figs. 18A and 18B form a flow diagram illuQtrating the
2 sequence of operation of the REVOLVE MODU~E;
Fig. 19 i5 a block diagram of an iso-entropicgram revolver
employing the REVOLVE MODULE;
Figs. 20 and 21 form a schematic and block diagram of
the SEED MODULE;
3 Fig. 22 is a flow diagram illustrating the sequence of
operation of the SEED MODULE;
- '."
-25-

--~
1.~.~7~7

1 Fig. 23 is a block diagram of a seed finder and employing
the SEED MODULE;
Fig. 24 is a schematic and block diagram of the
CHANGE MOD-lLE;
Fig. 25 is a flow diagram illustrating the sequence of
operation of the CHANGE MODULE; -
Fig. 26 is a block diagram of a seed line changer
employing the CHANGE MODULE;
Fig. 27 is a schematic and block diagram of a generalized
clock control unit for use in designated modules;
Figs. 28,29,30 and 31 form a schematic and block
diagram of the OUTPUT MODULE;
Figs. 32 and 33 form a flow diagram illustrating the -
sequence of operation of the OUTPUT MODULE; -
Fig. 34 is a block diagram of the compaction and retrieval
machine employing the OUTPUT MODULEt
Figs. 35,36,37 and 38 form a-flow diagram illustrating
the sequence of operation of the PIPE MODULE;
Figs. 42A-D are graphs used to illustrate functions of
the BRIGHTNESS MODULE;
Figs. 43,44, 45 and 46 are schematic and block diagrams
of the ~RIGHTNESS MODULEi;
Fig~. 47,48,49 and 50 form a flow diagram illustrating
the sequence of opera~ion of the BRIGHTNESS MODULE~
2 Figs. 51,52 and 53 form a schematic and block diagram of
the DPM IN~ERFACE MODULE which includes the IP~F;
Fig. 54 shows the I/O bus 1220 structure;
;~ Figs. 55 and 56 form timing diagrams representing the
~equence of operation of I/O bus output and input operations;
\3 l Fig. 56A is a schematic and block diagram showing the
control for the BDONE flip flop in the DPM INTERFAC~ MODVLE;

-26-

L ~ ! :; ; i,.. : .; ., , ~,., .. '. , ,',, ' .
... ~ . .

~ f`)

~J.,~7~7

1 Fig. 57 is a schematic and block diagram of the MEMORY
MODULE;
Fig. 58 is a write enable pulse diagram for the
MEMORY MODULE;
Fig. 59 is a schematic and block diagram of the
SWITCH MATRIX;
Fig. 60 is a schematic and block diagram of the
P/B MEMORY;
Fig. 61 is a block diagram of an alternate data
processing machine (DPM 2);
Fig. 61A, 61B and 61C form a schematic and block
diagram of the ENCODE MODVLE for the DPM 2 system;
Fig. 61D and 61E form a schematic and block diagram
of the DECODE I MODULE for the DPM 2 system;
Fig. 61F, 61G and 61H form a schematic and block
diagram of the DECODE II MODULE for the DPM 2 system:
Fig. 62 is a ~chematic and block diagram of the
DELTA 2 MODULE for u8e in the alternate machine of Fig. 61;
Fig. 63 i8 a flow diagram for the DELTA 2 MODULE;
Fig. 64 i8 a schematic diagram of the implies circuit
of Fig. 62
Figs. 65 and 66 form a schematic and block diagram
of the REVOLVE 2 MODULE~
Fig. 67 i8 a flow dlagram for the REVOLVE 2 MODU~Et
Figs. 68 and 69 form a schematic and block diagram
of the REVOLVE 3 MODULE;
~;~ Fig. 70 is a flow diagram for the REVOLVE 3 MODULE;
Figs. 71 and 72 form a schematic and block diagram of
the SEED 2 MODULE; ,
3 Fig. 73 is a flow diagram for the S~ED 2 MODULE;

-27-
, ,,

~'7'~'G~

1 Figs. 74 and 75 form a schematic and block diagram
of the OUTPUT 2 MODULE;
Figs. 76 and 77 form a flow diagram for the OUTPUT 2
MODULE;

Fig. 77A is a schematic and block diagram of the
CHANGE 2 MODULE;
Fig. 77B is a flow diagram for the CHANGE 2 MODULE;
Fig. 77C is an example of how information is moved
between areas of the MEMORY 2 MODULE during operation of
the CHANGE 2 MODULE;
Fig. 77D is a schematic and block diagram of the
MEMORY 2 MODULE
Fig. 77E is a schematic and block diagram of the
SWITCH MATRIX 2;
Fig. 77F is a schematic and block diagram of the
AUXILIARY MEMORY 2;
Fig. 77G is a sketch showing the generalized diagram
of the software;
Fig. 78 is a generalized sketch showing the data
structure for each layer;
Fig. 79A i8 a sketch showing an example of the data
structure for layer 0;
Fig. 79~ is a sketch showing an example of the data
structure for layer 1;
2 Fig. 79C is a sketch showing the generalized design of
the software;
Fig~. 80 and 81 form a PARSER program flow diagram;
- Figs. 82-84 form a PIPE program flow diagram;
Fig. 85 is a sketch illustrating the address linkage
~3 during PI 2 2 et seq. of the PIPE program;
' .



l -28-

~77~7

1 Fig. 86 is a sketch illustrating the address linkage
during PI7 of the PIPE program;
Fig. 87 is a sketch illustrating the address linkage
during PIll of the PIPE program;
Figs. 88-93 are sketches illustrating the sequence of
operation and primary storage areas during the operation of
the PARSER, PIPE and ~RIGHT programs;
Figs. 94-96 are BRIGHT program flow diagrams; -
Fig. 97 is an OUTPUT subroutine flow diagram;
Fig. 98 is a MEMDPM subroutine flow diagram;
Fig. 99 is a DP~ME~ subroutine flow diagram;
Fig. 100 is a DECODE I subroutine flow diagram;
Fig. 101 is an INSERT subroutine flow diagram;
Fig. 102A is a pictorial flow diagram illustrating the
operation of the FORMATER program during a layer 0 request;
Fig. 102B $g a pictorial flow diagram for the operation
of the FORMATER program during a layer 1 request;
Fig. 102C is a FORMATER program flow diagram;
Fig. 103 i~ a COMMAND subroutine flow diagram;
Fig. 104 i8 a GET INTEGER subroutlne flow diagram;
Fig. 105 i~ a GET FLOATING POINT subroutine flow
diagramt
Fig. 106 i~ a REQUEST ~ubroutine flow diagramt
Fig. I07 1~ a PROCOUT ~Pro¢ess Output) subroutine flow
2 diagramt
Fig. 108 is a sketch glving an example and illustrating
the correspondence between G2$BL table and the OLIST list;
Fig. 109 i9 a SETUP subroutine flow diagram;
Figs. 110 and 111 form a GENERATE subroutine flow
~ ~30 diagram;
:~
-29-
,~ . I

--
~ 7~7~7

1 Fig. 112 is a SORT subroutine flow diagr~m;
Fig. 113 i8 a PRINTR ~Printer) subroutine flow diagram5
Fig. 114 is a conceptual view of the prior art data
base system
Fig. 115 is a conceptual view of a layered data base
system according to the present invention;
Fig. 116 is a sketch illustrating layerinq data base
structure of the data base;
Fig. 117 is a sketch illustrating conversion tables
CVRTBL and CVTBL2;
Fig. 118 is a sketch illustrating ESTAK;
Figs. ll9A-E are sketches illustrating available used
space management for the seed lines;
Fig. 120 is a sketch illustrating an example of the
15 layered data structureæ after initialization: ~
Fig. 121 is a DATA BASE program flow diagram -
Fig. 122 i8 a layer INITIALIZATION program flow diagrams
Fig. 123 is a LAYER BUILDING program flow diagram;
Fig. 124 i~ a PROCESS ENTRY program flow diagram;
Fig. 125 i8 a PROCESS A LAYER 0 ENTRY subroutine
flow diagram~
Fig. 126 is an ADD N EVENTS subroutine flow diagram;
Fig. 127 is a PUT NEW SEED IN STORAGE program flow
diagramt
2 Fig. 128 1~ a SEARCH FREE SPACE program flow diagram;
Flg. 129 i8 a RELEASE SPACE subroutine flow diagram;
Fig. 130 ls a GARBAGE COLLECTION program flow diagram;
;~ Fig. 131 is an ADJUST SEED HEADER subroutine flow
diagram;
3a
. `

~ -30- '
L ~ ~

-~
~ 7767

I N D E X
1 . '~
Contents Page

I. GENERAL DESCRIPTION OF DPM SYSTEMS...... 31
A. Data Base Structure ............... 31
B. Iso-Entropicgram Techniques........ 36
C. Changes ........................... 46
D. Verifying Presence of an
Occurrence Value at
Input Line ....................... 49
E. Hybrid Coding ..................... 51
F. Conventions and Component~
Used in the Figures ............... 55

I-A. GENERAL ORGANIZATION OF DPM SYSTEM
OF FIGS. 1-34 ........................... 61

II. ENCODE MODULE ............................ 67
lS A. General Description ................ 67
B. Components ......................... 70
C. Detailed Descriptlon ............... 73
D. Example of Operation ............... 94
~ .

III. DECODE I MODULE ......................... 111
A. General Description ................ 111
B. Components ......................... 112
C. Detailed Description ............... 115


2 D. Exampl- of O eration ............... 126

:~
'

~: 30 . :

-30a-
.- . :.

-~ (~ ~
~ 7~67


I I N D E X
¦ (Cont'd.)
I Page
5 ¦ IV. DECODE II MODULE........................................ 137
¦ V. DELTA MODULE ........................................... 139
¦ A. General Description.................................. 139
¦ B. Components........................................... 140 -~
¦ C. Detailed Description................................. 142

10 ¦ D. Example of Operation................................. 149
¦ VI. REVOLVE MODULE ......................................... 152
A. General Description.................................. 152
¦ B. Components..............~............................ 155
¦ C. Detailed De~criptlon......... ........................ 157
15 ¦ D. Example of Operation......... ........................ 179 ~
¦ VII. RE W ~VER............................................................. 190 ;--
¦ VIII. SEED MODULE ......................................................... 194
¦ A. Gen-ral Descriptlon.................................. 194
¦ B. Components........................................... 196
20 ¦ C. Detailed Descript~on................................. 198
¦ D. Example of-Operation................................. 217
¦ IX. SEED FINDER............................................. 221
¦ X. CHANGE MODULE .............~............................ 228
l A. General De~cription........... .................... ,. 228
25 ¦ L. Components..............,.~... ,.................... , 230
; ~ ¦ C. Detallèd Description.......... .... ................. , 231
¦ D. Example of Operation.......... .... ................... 239
¦ XI. SEED LINE CHAN OE R..~................................... 242
¦ XII. GENERALIZED CLOCK CONTROL............................................. 243
30 I ' -
-30b- ~

; ~'... I :'''.
::; ~ '

~l2~7~7

1 I N D E X
~Cont'd.)
Page
5 XIII. OUTPUT MODULE ....................................... 246
A. General Description............................ 246
B. Components..................................... 248
C. Detailed Description........................... 250
D. Example of Operation........................... 276

10 XIV. DATA COMPACTION AND RETRIEVAL
MACHINE........................................... 285
XV. PIPE MODULE .............................. 293
A. General Description.................... 293
B. Components............................. 306

C. Detailed Description................... 308
XVI. BRIG~TNESS MODULE .................................. 365
A. General Description............................ 365
B. Components..................................... 376
C. Detailed Description........................... 379
20 XVII. DPM INTERPACE MODULE................................. 449
XVIII. MEMORY MODULE..................................... 475
XIX. SWITCH MATRIX....................................... 482
XX. P/B MEMORY......................;............ 490
XXI. OE NERAL ORGANIZATION OF ALTERNATE
2 DPM SYSTEM 2............................ .. 493
A. General Discu~sion................... .. 493
B. Revised ENCODE MODULE................ .. 496
- C. Revised DECODE I MODULE.............. .. 498
¦ D. Revised DECODE II MODULE....................... ~ 499
¦ E. PIPE and BRIG~TNESS MODULES...................... 500
-30c-


L

;~
l~Z~767

I N D E X
~Cont'd)
Page
5 XXII. DELTA 2 MODULE ......................... ..501
A. General Description............... ..501
- B. Components......................... ..504
C. Detailed Description.............. ..507
D. Example of Operation.............. ..514

10 XXIII. ~EVOLVE 2 MODULE....................... ..521
! A. General Description............... ..521
B. Components........................ ..523
C. Detailed Description.............. ..525
D. Example of Operation.............. ..544

15 XXIV. ~EVOLVE 3 MODULE ....................... ..558
A. General Description............... ..558
B. Components........................ ..560
. Detailed Description............. ..561
D. Example of Operatlon.............. ..579
20 XXV. SEED 2 MODULE ........................... ..S96
A. General De cription............... ..596
B. Components........................ ..603
C. Detailed Description..... ;........ ,. 605
D. Example of Operatlon..... ,........ ..617
25 XXVI. OUTPUT 2 MODULE .................. ...... ..623

A. General Description......... ...... ..623
B. Component~................. ...... ..627
C. Detailed Description....... ...... ..627
D. Example of Operation....... ...... ..646


-30d-

Il ,~

:-'
~ Z77f~7

1 I N D E X
(Cont'd.)
Page
XXVII. CHANGE 2 MODULE ....................... . 653
A. General Description................... 653
B. Components........................... 654
C. Detailed Description................. 654
D. Example of Operation................. 661

0 XXVIII.MEMORY 2 MODULE......................... 663
XXIX. SWITCH MATRIX 2.......................... 664
XXX. AUXILIARY MEMORY MODULE II~ o~ 666
XXXI. COMPUTER, DATA BASE & SOFTWARE
ORGANIZATION ........................... 671
A. MINI COMPUTER........................ 671
B. General Description of Data
~ase Structure....................... 672
C. General Description of
Software............................. 673
1. Data ~ase Initialization .. 674

2. Layer Building ................ 675
XXXII. INQUIRY AND RETRIEVAL HARDWARE/
80FTWARE ORGANIZATION ................... 682
A. General Description of Inquiry
and Retrieval Software............... 682
D. FORMATER program...................... 718
C. PARSER program........................ 721
D. PIPE program......................... 730

I E. BRIGHT program....................... 749
F. OUTPUT subroutine.................... 765
G~ MEMDPM subroutine.................... 769
~1 3 H. DPMMEM subroutine.................... 772
I. n~coDE I subroutine................. ~773
-30e-

I ~`

~ 7'7~;7
l I N D E X
(Cont'd.)
Page
J. INSERT subroutine...................... 775
. COMMAND subroutine..... ,............... 779
L. GET INTEGER program.......... ,.................... .789
M. GET FLOATING POINT program......... ............... .791
N. REQUEST subxoutine........... ~.................... .794
O. PROCOUT (Process Output) 802
subroutine
P. SETUP subroutine...................... .809
Q. GENERATE subroutine................... .814
R. SORT subroutine....................... .820
S. PRINTR (Printer) subroutine........... .823
T. PRNTC ~Print a Character)
subroutine........................... .825
U. GETC ~Get a Character) ;~
subroutine........................... .826
XXXIII.HARDWARB/SOFTWARE ORGANIZATION FOR
BUILDING LAYERED DATA BASE .............. .828
A. LAYERED DATA BASE STRUCTURE....... ,... .828 -
B. DATA BASE program, Level 1........... . .848
C. LAYER INITIALIZATION program,
Level 2............................. . .851
D. LAYER BUILDING program,
Level 2............................. . .856
E. PROCESS ENTRY program,
Level 3.,...... ,.. ,,,,,.,,.,,.,,,, 859
F, PROCESS A LAYER 0 ENTRY
subroutine,,,,,.,.................... .868
G. ADD N EVENTS subroutine, -
Level 1.......................... ~... .872
H. PUT NEW SEED IN STOR~GE program, -
Level 2........ ,..................... , 879
` -30f-
~. ~

('''~

fi7

I I N D E X
(Cont'd.)
Page
I. SEARCH FREE SPACE program,
Level 3............................ ..... 884
J. RELEASE SPACE SVBROUT.INE FLOW,
Level 3............................ ..... 886
K. GARBAGE COLLECTION program,
Level 3...... ;.......................... 888
L. ADJUST SEED HEADER
subroutine......................... ..... 890
; AppENDIx A -.... -................................................ 892
1 Index of Tables.................................... 892
, Tables............................................. 896
~i ' .
15 ¦ APPENDIX B .................................................... 1002
¦ Index of Program Listings.......... 1002
¦ Program Listings................... 1004

I
20 I ~:

I ,. :.',:'
I . ' ' ''''.
2~

~ I

I'
I . ,'

I
:~ I -30g-
':~ I . ,.
I 1.

!~ --)
~ ~ ~7767

1 I. GENERAL DESC~IPTION OF DPM SYSTEMS
A. Data ~ase Structure
Fig. 1 depicts a general diagram of an information
storage and retrieval system and embodies the present
invention. The system of Fig. 1 is referred to herein as
a data base management (DPM) system. The DPM system is `
designed to perform certain general data base management
functions, as follows. First is the "enter" function
which is the a~ility to enter information into the data
base. Second is the "update" function which is the ability
to change or delete information in the data base. Third
is the ~retrieval" function which is the ability to
retrieve information from the data base, and the fourth
is the "discrimination" function which enables the user ~-
to discriminate upon the information in the data base.
The discrimination function is referred to herein as the ~-
"piping and brightness" function.
In order to understand the above four functions, it is
imperative that one first understands the structure of the
data base and the technique of storage for the data base.
All incoming information to the DPM system is re~tructured
by the MINI COMPUTER into a layered data base in its main
memory. Each layer i8 a logical ent~ty or a group of
entities ~alled ~eventsn. Each of these avents i8 separated
2 by a delimiter from a set of delim~ters for the layer. The
group of events between two subsequent delimiters is referred
to as an "entry". Layering is hierarchical in that the
higher level layers encompass the lower level layers. For
example, if one were to structure contextual data base, the
following levels may exist: layer 3 consisting of sentences; ;

-31-
,- '~
,,

f~ r~

~ ~.Z7767

1 layer 2 consisting of phrases; layer 1 consisting of words;
and layer 0 consisting o letters. Each layer has appro-
priate and distinct delimiters. However for purposes o~
illustration only a two layer system is specifically
disclosed. One layer is for words and the second for
sentences.
Table 1 is an example of the word layer 0. Each
occurrence of an event is represented by a 1 whereas an 0
represents the lack of an event. As depicted, the layer
may be visualized as having two dimensions referred to as
lines (or rows) and columns. The number of lines is equal
to the number of events in the layer. The number of columns
is equal to the number of possible occurrence values for ~-
each event.
Entries are viewed as a series of events occurring in
time. Each column is assigned an event-time, or possible
occurrence value, from left to right in increasing monotonical
value order. Table 1 depicts layer 0 for the sentence "THIS
IS A TEST~. ~ine 0 of layer 0 contains the delimiter ~
~representing a textual blank) which actually separates the
words of the sentence. Line 1 designates the T events.
Line 2 designates the H events. Line 3 des~gnates the I
events. Line 4 designates the S events. Line S designates
the A evènt~. Line 6 designates the E event~.
2 Since the events can be considered as a series of
chronologically occurring event-times, each event is ;
represented in the layer by a binary 1 in the appropriate
;~ line and column. Thus, if the event-times can be considered
as being represented by an occurrence clock, each time a 1
. ..
~3 is entered in the layer corresponding to an event the
occurrence clock in increased by 1. This is depicted in `
' . -
~ -32-
~ ; " ' ' ' ' ' . ' ' ' ! :' '` .. ,- ~,

f~
~ 77f~

1 Table 2A. Thus a delimiter ~ occurs at event-time 0, the
letters T-H-I-S occur at event-times 1, 2, 3 and 4. A
second delimiter ~ occurs at event-time 5. The letters
I-S appear at event-times 6 and 7. Another delimiter ~
appears at event-time 8. The letter A appears at event-
time 9. Another delimiter ~ appears at event-time 10 and
the letters T-E-S-T appear at event-times 11, 12, 13 and -
14. The ending delimiter ~ appears at event-time 15.
All of the events in any one line are represented by ~-
10 an occurrence vector. The occurrence vector is represented -
by the occurrence values of an event shown at any particular
line. Occurrence vectors are shown in Table 2B, for each
line of Table 1, as a series of decimal occurrence values. ~ -
Thus, for example, a "delimiter occurrence vector" for
lS the delimiter ~ event is depicted in the first line of
Table 2. Similarly, the event occurrence vector for the
letter T is depicted at the second row of Table 2, etc.
Table 3 depicts a sentence layer 1 for the sentence
HTHIS IS A TEST". The symbol "." i8 used as the delimiter ~ -
20 symbol to delimit phrases. The first occurrence of ".- -
i8 implied, forming the initial leading delimiter for
the word layer. A number of different types of delimiters
may be assigned to each layer (e.g " ~ - n; H, n; ~; n; etc.)
and can be selected as desired by the user. The possible
occurrence value at which each delimiter oacurs in layor 0
is used as an implied llne pointer to laye~ 1. The line
pointer is formed by assigning a value corresponding to the
relative position of the events in line 0 of Table 1 and --
adding thereto a bias. The implied pointers of 1, 2, 3, 4 ~-
3 and 5 are depicted at the bottom of Table 3.
~ ~ ' ' ,':~.',

-~ (' ~
~ 7

1 Consider now an example o the sequence of operation
required in layering the phrase ~ THIS ~ IS ~ A ~ TEST ~ .
Considering the examples of Tables 1 and 3, in an actual
example of the system, the first delimiter ~ is implied
and not physically present in the input stream. A line
or event counter is used to keep track of each new event for
each different layer. In addition, an event-time clock for
each layer is provided for identifying event-times, or
possible occurrence values.
1 Initially, the line and event-time clocks for each
layer are initialized by setting them to 0. The lowest
layer, layer 0, is tagged with event names, in this case
the binary representation of the character assigned to ~ -
the line. This-is not done with higher layers.
1 The implied delimiter ~ is the first possible occurrence
value encountered in the input phrase. Since this i9 not
present in layer 0, the ~ is assigned to the next available
line, line 0, by the line counter. The first delimiter
occurrence is marked by placing a binary 1 in column 0, ~-
2 llne O corresponding to the state of the event-time clock
and the line counter. The line counter and the event-time
clock are then lncremented by 1. The event-time clock now
identifies event-time 1, and the line counter identifies ~ -
lln~
2 For eaoh event line, zeroes are used to flll in the
posit~ons in which a 1 i8 not entered.
The next event to be encountered is the T in the word -
NTHIS". Accordingly, a 1 is entered at line 1, column 1,
corresponding to the 1 states of both the event-time clock
and the line counter. The event-time clock and the line

_34_
., . ~.

767

1 counter are then incremented by 1. This operation continues
until the "~ THIS" has been entered in layer 0. The next
event to be encountered is the end delimiter ~. The line
counter is then reset to 0 and at this time the event-time
clock i8 at 5. Accordingly, a 1 is entered at line 0,
column 5. The complete word event ~ THIS ~ has now been
entered on layer 0 and is to be processed on word layer 1.
The first occurrence of the ~, n phrase delimiter is implied
and is therefore entered at line 0, column 0, corresponding
to the event-time clock and line counter for layer 1. The --
event-time clock and line counter for layer 1 are incre-
mented by 1 and a 1 is entered at column 1, line 1, -
corresponding to the word THIS.
Next the series of input events HIS ~1l are encountered.
First, letter layer 0 is checked to see if there is an -
event line in existence for each of the characters IS ~.
Since the events, I, S, ~ have previously occurred, but
not in that order, only the event-time clock ls incremented
for each of these events and the line counter is appropriately
positioned to identify the 11nes corresponding to each of
these event-. ~
A new event line is not added to layer 1 if the event ;~-
has already occurred. Rather, only an occurrence mark is -`~
added at the appropriate column of the line corre~ponding
2 ¦ to the event. A sequence of evantæ between two delimiters
18 not added to the same event layer a 8econd time if an
implied pointer exi8ts to a higher lsyer. Instead, the
series of events between the two delimiters will be represented
and entered in the layered system aæ an occurrence mark on '--
3 the next higher layer, and nothing needs to be done on the
lower layer.
~.



.? --35--
. .:''"

-~
~J.Z7767

1 To be explained in more detail hereinafter, the DPM
system of Fig. 1 implemen~s the layering concept by
representing data, not in lines and columns, but by
occurrence vectors which repreYent event-time by actual
occurrence values.

B. Iso-entropicgram Techniques
Information is not stored in the DPM system directly '--
in the event-time form shown on Tables 1 and 3, but is --
translated into a special compacted form. The compaction
is referred to herein as iso-entropic compaction. Specifically,
an occurrence vector or a word of information is represented
by a givei line value and ~enne number. Each given line
value and line number has a set of equivalent line values
15 and line number values which include the given line value --
and line number. Each equivalent representation has the
same information content. Each line value represents at
least one digitally coded actual occurrence value out of
a set of possible ones. Each line value is related to
another in the same set by an exclusive OR of the values
thereof and the value~ thereof relatively shifted. The
set of equivalent line values form an iso-entropicgram.
The repr-sentations in the set are o} various lenqths ' - -
when leading 0'8 are di~regarded. ~he shortest one i8 .
referred to as the ~seed". Most retrieval operations
from the DPM ~ystem, along with the operations that change
or modify the data base, ara carried out directly on the
~ .
seed and therefore are very eficient compared to conventional
data base'techniques.
3 Table 4-A gives an example of an isQ-entropicgram using~ '
~; binary l's and 0's. Each line represents one of the

-36-
~ I'

~ (-' ~
~77~i7

1 representations of the complete set. The input line is
depicted at the top of line 0. Referring to the input
line, it will be s~en that there are actual occurrence
values 0, 1, 2, 4 and 6. Each line, moving down in the
iso-entropicgram, is formed by shifting the binary bits
of the preceding line in the iso-entropicgram by 1 bit
position to the right and exclusive ORing the bits (or
values) of the unshifted line with the shifted line. The
Hexclusive OR" is referred to herein as an XOR. An XOR
10 operation on binary coded information is a bit by bit `` I
half-add with a deletion or truncation of those resultant
bits which, ac a result of the shift, exceed the number
of bits in the original unshifted line. In this case, -;
the binary bits that are truncated are those to the right ~"
of the largest event-time or po~sible occurrence value 7.
Refer now to Table 5 and consider in detail the way
in which line 1 is formed from line O of Table 4-A. The `~
top two lines of Table S depict line O unshifted and
line O shifted to the rlght by 1 binary bit. The vertical
20 line indicates the point at which truncation occurs. The ``
remaining bit~ of the shifted and unshifted line O are
XOR'd resulting in line 1 of the iso-entropicgram. This
process is repeated, using line 1 ~o form line 2, and using
line 2 to form llno 3, etc. It will be seen that after a
number o lines equal in number to the number o~ bits in the
; input line have been generated, the next line to be generated
is the input line, also referred to as the output line. Note
for example that lines O through 7 of Table 4-A are each
dlfferent, whereas 11ne 8 i8 the same as line 0, the input
3 line. The iso-entropicgram is closed on itself, lines O
and 8 being identical.
.~-
~. -37- 1

--~
~,~,,f~"^t'~;~ '

1 The process of going from one line to another in the
same iso-entropicgram is reerred to herein as "revolving".
One limitation imposed on the iso-entropicgram is that
the number of bit positions, i.e., the width, must be an
integral power of 2 te.g., 1,2,4,8,16, etc.). It will
also be found that in an iso-entropicgram, one can look
down through the columns and pick any number of columns
which are an integral power of 2 and the bits in these
columns will repeat every integral power of 2 lines. By
way of example, columns O and 1 repeat at line 2; columns
O, 1, 2 and 3 repeat at line 4; columns 0, 1, 2, 3, 4, 5,
6, and 7 repeat at line 8; etc.
It will further be seen that as the lines of an iso-
entropicgram are formed, past occurrence information appears
15 ¦ to progressively sweep across the iso-entropicgram, influencing
representatlon of later information. The sweeping in the
iso-entropicgram of Table 4-A appears to sweep to the right.
For example, at line 7, the information in line 0, column 0,
has interacted with every column to the right and, in fact,
all columns have interacted with columns to their right.
Table 6 illustrates this point by using, as the input
line, the baslc iso-entropicgram pattorn created by a single
¦ binary coded bit of occurrence information. The basic
pattern depicted in Table 6 has been named the "delta"
pattern, partly because of its rough siDilar1ty to delta
. modulation and partly because the physical shape outlined
by the l's appears like the delta symbol. The iso-entropicgram
produced ln Table 6 is actually a result of the interacting
~ ~ . , j.

- -38-

.~ !~

~ ,7~;7
1 pattern~ produced by ~he delta~s position at the ~nput line,
Another example o' ~he delta interaction i9 depicted
in Table 7 wlich 3hows an iso-entropicgrarn w~th the 0~8
le~t out for clarity. Here it will be seen that the deltas
are outlined; therefore their interference occurs at line 4.
The interference pattern produced by the interaction of ;
these deltas has similar properties as those of an optical
hologram. Thus, in an optical hologram, each point is the
combined re~ult of a reflected beam whose intens~ty and path ~-
distance is a function of the scene reflecting t~ beam
m e recorded intensity at each point i8 a result of the
combined intensities of the two beam~ and the phase
displacement be~1een them caused by the reflected beam's
path length. :-
lS Similarly, the information at each point in the
iso-entropic~ram of Table~ 6 and 7 is the result of t~o
information intensities (binary 0 and binary 1) and the
phasing between them. At each point, past information i8
analogous to the optical hologram's reflected beam, and
the presont information to its direct beam.
Inform~tion ~tored in the iso-entropicgram is highly
redundant. Ths each llne of the iso-entropicgram forms
one representation of a complete set of equivalent
representa~ions, All llnes form the compl~te set.
2S Each line represents a new encoding or transormation
of the input line. Addit~onally, it has been found that
;~ large sections of the iso-entropicgram can be eliminated
but the entire iso-entrqpicgram can be reconstructed from the
remaining bits and pieces, using the interrelations of the ` -
~3 lines and columns.

-39- `
,,, i.

(~

~ 7~7

1 As discussed above, lines O ~nd 8 of the iso-entropicgram
of Table 4 are iclentical in form. One can ~eneraLize by saying
that if line O is the input line, line O ~ 2N is the output llne
which is identical in form to the input line, where O ~ ZN
is equal to the number of bits in the input line
The purpose of utilizing the iso-entropicgram techniques
i8 to replace the input line with another representation
(line) which is equal to but preferably shorter in length
than the input line. The seed line is the one which can
be represented with the minimum number of bits eliminating
leading 019. Referring to Table 4-A, it will be seen that
the seed is line 2, where only four occurrence values,
namely, O through 3, are needed tO represent the information
~ince the rest of the bits to the right are 0. The seed
lS then represents a minimal encoding for the iso-entropicgram.
In the iso-ontropicgrsm, tho se~d then i8 tho one wlth the
least number of possible occurrence value positions required
to represent all occurrence values.
If all binary bit positions in a line are called the
possibl2 occurrence values and each 1 i8 called an actual
occurrence value, it can be said that the iso-entropicgram
involves:
(1~ Grouping strings o~ actual occurrence values into
llnes snd grouping the lines into a set. All
lines in the set are equivalent and interrelated.
According to the preferred embodiment of the
present invention, each line in the set is
related to another by shitlng the occurreDce
values o the line one place and XORing the
¦~ 30 shifted and unstifted lines, deletin~ those

~-~ ~' ~

~ 77~7

1 shifted values ~lich ~o beyond the width o~ the
iso-entropicgram;
(2) All lines o~ the 90t are unique, ~hat i~, no
line is repeated;
(3) The set of lines is closed upon itself in the sense
that by manipulating any one line, the entlre set
of lines can be repeated, and the set size (number
of line~ in the set) is predetermined ^-
'"''',':':

Th~ set s~ze or number of lines for a given length of
lines can be specified as follows: ;
N (number) - number of possible occurrence values
per line and the number of lines per -
set. The log 2N is tn integer.
General techniques are disclosed herein ~ereby any
line of an iso-entropicgram se~ can be generat~d from any other
line by knowing the line to Se used as the reerence and,
secondly, the number of lines between the line to be used
and the input line.
Since the transmissiDn of any line of the i~o-entropicgram
set before eliminating leading 0'8 carries the same infonmation
and requires the same number of bits, the set i8 iso-entropic.
In terms o inormation theory each liDe has tho same entropy. l;~
Using seed inding techniques disclosed hereln, it is possible
2 to select a l~ne that will represent the inpu~ line with
fewer occurrence values and hence the entropy is reduced. j
As a result, information representation may be stored or
tran~mitted more efficiently. ! -
The lines in an iso-entropicgram can be derived from any
~30 other line without resort to a line by line revolve. Using
for e~cample, the line by line revolve, the seed line is -
:


~ ~ -41-

!~
\
~.~l.'~'7~7

1 revolved to the input line by revolving the seed through
the number of lines of the iso-entropicgram which are
necessary to generate the input line. For example, in
Table 4-B, a revolve of 9 lines from the seed line 7 will
generate the input line 16.
According to one prefexred embodiment of the invention,
means is provided for generating the input line without
generating each of the lines in between the seed line and
the input line. According to the preferred embodiment of -
the present invention, this is done by det~rmining the
number of lines required to generate the input line and
breaking this number down into its component powers of 2,
going from the largest possible to the smallest possible
component power of 2. One XOR operation is then performed
~5 using each of the component powers of 2 to move from the
seed line to the input line. In each XOR operation a
given line is shifted to the right by the number of bit
positions ~possible occurrence positions) identified by the
corresponding component power of 2. The shifted given
line is then XOR'd with the unshifted given line.
The example of Table 4-B requires a revolve of nine
lines to rotate the seed line to th- input line. Breaking
9 into its component powers of 2, going from the largest l~ -
to the smallest, the ,component powers are 8 and 1. Table
2 4-D top line shows the seed llne un~hifted. The next llne
of Table 4-D shows the seed line shifted with respect to
the first llne by 8 bits. The third line shows the XOR
of the first two lines. In this step, then, the seed line
has been revolved from line 7 to line 15. (CF line 15 ~-
3 of Table 4-D). The remaining component power of 2 is 1. l -
. :.



. .. , ~ . i, . .. ,.. .. . . 1 -:
,-~,; , ;"

~ 67

l Accordingly, the ~hird line of Tab~e 4-D, llne 15 o the
iso-entropicgram, i8 right shited one bit posi~ion
and ~oP~Id with itsel to generate the input line 16,
Anoth~r revolve technique ~s disclosed herein for
generating any line of an iso-entropicgram directly from
any other lire of the same iso-entropic~ram without
generating the intervening lines. This may be done by
a process of revolving which involves a s~ift and XOR of the
~iven line of an iso-entropicgram. The number of positions
of shift i8 determined by one of the lines of the delta
of Fig. 6. Basically the process involves:
1. Determining the number of lines in the corresponding
iso-entropicgram by which the given line is to be
revolved;
2. Generating the line of the delta who~e number i8
equal to that of the number of llnes to be revolved; --
3. For each occurrence value 1D the selected delta
formiDg at least partially an individual
representation of the given line and aligning
the representation~ of the given line with one
end aligned with the corresponding occurrence value
of the selected llne of the delta;
4. XORing the thu~ aligned oc¢urrence valu~ of the
given line eliminating those shifted occurrence
2 values outside of the iso-entropicgram.
Tables 46 and 47 depict such an example. Referring to
Table 47, a~sume that the given line i8 line 0. It will ~e
seen that the sixth line in the iso-entropicgram from the
~ given line is line 6. Referring to Table 6, delta line 6
: ~3a contains occurrence values O, 2, 4 and 6. Taking the given
~:

-43-
.,

(~

~ 776~

1 line depicted at line O of Table 47 forming a representation
of that line for each of the occurrence values of the delta
line 6 and aligning the left hand end with the corresponding
occurrence values of the delta line 6 results in the pattern
depicted at 0, 2, 4 and 6 in Table 46. XORing the aligned
bits together results in line 6 of Table 47. In other words~
there are occurrence values at 0, 2, 4, and 6 of delta line 6.
The given line is reproduced 4 times and separate ones of
the reproduced lines are shifted 0, 2, 4 and 6 pos6ible
occur~ence values. The resulting lines are XOR'd together to
generate line 6 of the iso-entropicgram, eliminating any
shifted occurrence values to the right of the edge of the
iso-entropicgram.
Any line can be used as the given line of the iso-
entropicgram. The relative distance, i.e., number of lines
by which the revolve is to take place, is equal to the
desired line number minus the given line number. This
difference determines the line of the delta to be used for
the process of shifting and XORing. If the desired line
i8 lower in number than the given line, for example a
given line of 5 and a de3ired line of 3, the relative
distance is negative. In that event, the width of the
iso-entropicgram i- added to the negative differ-nce and
the result dosignates the line of the delta to be used.
For example, using a glven line of 5 and a desired line
of 3, one would compute the delta line as follows:
. 3-5 z -2; -2 + 8 - 6.
This general concept is implemented in the alternate
DPM system of Fig. 61. However, to facilitate implementation,
3 the process involves a shift and XOR of the delta line rather
than the yiven line which is to be revolved. The process

-44-

l~

~2~'767

1 implemented in the DELT~ 2 MODULE and the DPM system of
Fig. 61 is as follows:
1. Determining the number of lines in the
corresponding iso-entropicgram by which
the given line is to be revolved;
2. Generating the line of the delta whose number
is equal to that of the number of lines to be ;-
revolved, one such delta line at least partially
being generated for each occurrence value of the
N given line, and aligning each generated delta
line with one end of the delta line in alignment -
with the corresponding occurrence value of
the given line;
3. XORing the thus aligned occurrence values
of the generated delta line, eliminating
tho~e shifted occurrence values outside of the
iso-entropicgram. ~ -
A more detailed description of the DELTA 2 MODULE
implementation i8 given in the sections on the DELTA 2
MODULE and the REVOLVE 2 MODULE.
To be explained in more detail herein, any line of an
iso-entropicgram is completely identified by a line number,
a line value and a width ~or length~ value. The line
number is the llne number in the iso-entropicgram. The
2 line value represents the aotual occurrence values,
excluding 0'8 to the right of the last 1. The width is the
width of the corresponding iso-entropicgram which in turn
is the length of any line of the iso-entropicgram including
O's on the right.

(\~
~ ~a~7~7

1 For example, usin~ this ~orm of expression, the
seed line of Table 4-A can be represented as
line number o~ 2, line v~lue of 1101 and ~idth o 8.
To be explained in more detail, the actual embodiment of
this invention operates an actual occurrence value expressed
in binary coded decimal rather than lines and columns
of l's and O's. Using this form of expression ~he
above line value becomes 0, 1, 3.


. Chan~e~
Changes to a data base con~ist of insertions, deletions
and the addition o~ new information. Deletions remove
actual occurrence values ~rom event occurrence vectors.
An in~ertion adds an actual occurrence value to one or more
event occurrence vectors and, if necessary, actual occurrence -~
values are shifted to allow for insertion. New additions -~
to a data base add new actual occurrence value~ to existing
event occurrence vectors or add entire new event occurrence
vectors.
In accordance with a preferred embodiment of the present
invention described hereinafter in connection with the
CHAN OE MODULE, change~ in the event occurrence vectors are
made d~rectly to tho ~eed line of an event occurrence vector.
2 In other words, it i8 not neces~ary to revolve an event
occurrence vector back from its seed line to the input line
of its iso-entropicgram. Tables 9-A and 9-B illustrate
the sequence of operation for changing a hypothetical event X.
Line a of Table 9-A depicts the occurrences of X in absolute
decimal coded ~orm. Lines b and c, respectively, depict
:'
.
-46~

``\


1 deletions and insertions. Thus, occurrence values 6 and 12
are ~o be deleted and occurrence values l, 3, 8, 9 and ll
are to be added ~o the cven~ X depicted at l~ne a. The
change vector incorporating all the insertions and deletions
is depicted at line ~ of Table 9-A. The change vector
includes all of the occurrence values for the deletions
¦ and insertions sorted in an increasing incremental order
¦ from left to right A change operation talces place by
¦ XORing the change vector and the event occurrence vector
10¦ to be changed. If lines a and d of Table 7-A are XORed
¦ the result is as depicted at line e. It wiil be seen tha~ -
¦ line e ~ncludes all of the actual occurrence values depicted
¦ at lines a and d with the common occurrence values 6 and 12
¦ deleted. It will be recognized tha~ the XOR ~ust described
15 ¦ was described with both the event X and the change vector at
¦ their O or input line for their corresponding lso-entropicgrams.
¦ Assume now that the vector X i9 at its ~eed line as
¦ depicted at g in Table 9-A. The saed of X is at line 6
¦ of ltg igo-entroplcgram. According to the preferred embodiment
20 ¦ of the present invention, the change vector i9 revolved through
¦ its iso-entropicgram until it i8 al80 at line 6 in its i90-
¦ entropicgram. Line h o~ Table 9-A depicts the change vector
¦ at line 6 of its iso-entropicgram. Accordin~ to the present
¦ invention tho line values o~ X and the change vector
2S ¦ depicted at g and h are then XORed provlding the result
¦ indicated at line i. Referring to i of Table 9-A, the XOR
results in the same line number, namely, line 6, with a line
value of 0,1. Table 9-B shows the iso-entropicgram for the
input line depicted at e of Table 9-~. It will be seen that
`30 ~hen the input line (line 0) o~ Table 9-B has been revolved
to its line 6, its actual occurrence values are indeed O and 1

-~ i~


1 which is th~ same as that depicted at lin~ i in Tabl~ 9-~.
Using the revolve techniques described hereinabove, the
resultant value depicted at i, according to the present
invention, is then revolved until its seed line is found.
With reference to Table 9-B, it will be seen that the
seed is at line 5. Accordingly, line 6 depicted at i of
Table 9-A and 6 of Table 9-B, is revolved forward 15 times
until it arrives back at line 5 of the same iso-entropicgram,
as depicted at the bottom of Table 9-B. Line 6 plus 15
additional lines is line 21. Subtracting out of 16 (the
total lines in the iso-entropicgram) leaves line 5 which `~
is the seed line. Thus, the new seed line number 5 has a
line value of 0.
Significant to the present invention, ~t should be no~ed
that in the aforegoing example the changes involve five
insertions and only two deletions. Even though the insertions
and hence information content increased, it resulted in a net l -
reduction in the seed. In other words, the seed event X
GontainS three occurrence values in its line value whereas
the line value for the final seed contains only one occurrence
value. This occurs because the seed i9 a representation
formed by information interference patterns which are not
controlled by the guantity or the number of occurrence
values. The pattern~ are only influenced by the relationship
between the occurrence values. A~ a result it i9 possible
for a data base to shrink in size with added information.
. ' ~


3 -48-
, .~:~

, , ,.:, ~ .. ~,;.. , , 1'

::

-~-' I
~ `Y767

¦ D. V~rifyin~ Pre~enc~ of Occurr~nc~ Valuc at Input Line
¦ As described above, Table 6 depicts a delta. The delta ",
¦ of Table 6 is the same width as the iso-entropicgram of
¦ Table 4-A. A delta is formed by placing a 1 at possible
5 ¦ occurrence value 0 as the input line and revolving it until
¦ the original input line is formed using the desired iso-
¦ entropicgram width. '-
¦ The delta can be used to verify the presence of an
¦ occurrence value (i.e., a 1) at the input line of an iso-
10 ¦ entropicgram without actually generating the input line.
¦ The verification process may be accomplished using
¦ pencil and paper by physically inverting the delta from top
¦ to bottom and from side to side. Thus, the delta of Table 6
¦ inverted becomes that depicted in Table 9-C. Next, the lower
15 ¦ right-hand tip of the delta is positioned over the possible
¦ occurrence value column of interest at the output line.
¦ Next, the line of the inverted delta that coincides with the
¦ line of the iso-entropicgram which is going to be used for the
¦ t,est are ANDed together. The resultant line is then XORed.
20 ¦ If the result of the XOR is a 1, an actual occurrence value is
¦ present at the input line in the possible occurrence value
column of interest. If the result is 0, an occurrence value
is not pre8ent. ' `~
Although the foregoing method is accurate and useful
using paper and pencil, the present invention embodies concepts
similar to the foregoing in a more practical embodiment. ,' ,
In the actual embodiment of the invention it is possible to
~ have a seed expressed as a line number, a line value, and an
1~ iso-entropicgram width to determine whether the input line
'


~ -49-
1. .......... ,.,,,.,,, 1.

~ ~2`7'7~;7

1 o~ tlle corre~pondLng i~o-entrop~cgram ha5 any par~icular
desired occurrence value an~l ~his can be done ~itl~out
revolvini tle seed back to the input llne. U~uaLly
~he line to be used for the checking process i9 the seed line.
Therefore, the description o~ the embodim~nt o the invention
will be described assuming th~ the line to be used as a
basis for the test is the seed Line.
Referring to the inverted delta, it will be seen that the -
numbers of positions between ad~acent "l's" is an integral power
of 2 for lines 0, 2, 4 and 6. For example, line 2 has l's
separated by two positions, whereas line 4 has 1l8 separated
by ~our positions. Bec~use of this characteristic of the
delta, it i9 quite easy to generate occurrence values ~ -
representing the occurrence values which are present in the
lines of the delta which are component powers of 2. To this
end, the seed line t~hich i8 to be used as a basis for a test
is first revolved in its iso-entropi~gram until it is at the
line which i8 an integral power of 2 lines away from the
input line. Using Table 4-A by ~ay of example, seed line 2
~en revolved two lines to line 4 is an integral power of 2
(namely, 4) away from the input line.
Referring to the inverted delta ~f Table 9-C, it will be
seen that line 4 contains occurrence values at 3 and 7. ~-
Thus it should be evident that the number o possible
2 occurrence values soparating the actual occurrence values
in the delta (for those lin-s which are integral powers of 2)
;: i9 equal to the line number. Thus, applying the inverted
delta o~ Table 9-C to the iso-entropicgram o Table 4-A, -~
assume that it is desired to determine whether occurrence
3 value 6 is present in tho input line. Applying line 4 o~ the
inverted delta of Table 9-C to line 4 o the iso-entropicgra~
of Table 4-A, occurrence value 6 is present in the inverted delta
line o~ Table 9-C, whereas it is ab~en~ in the iso-entropicgram ;
-50- -

-` ~'X7767

1 line o Table 4-A, whereas four places to the l~ft of the
occurrence value 6 ~of interest), the inverted delta contains
an occurrence value and so does the iso-entropicgram of
Table 4-A. Tables 9-D and 9-E depict these operations.
S The foregoing method for determining the presence of an
occurrence value at the input line using one of the non-input
lines of the iso-entropicgram is referred to herein as the
DEL function. The actual method whereby the embodiment of
the present invention carries out the DEL function is
described in more detail in connection with the section
describing the OUTPUT MODULE.

E. Hybrid Coding
The disclosed embodiment of the present invention involves
a further compaction technique in which the occurrence vectors
are represented in a hybrid encoded form. Information is
stored in the MEMORY MODULE in hyb~id encoded form. Thus,
considering the iso-entropicgram technique used to represent
a particular occurrence vector, the present invention involves
a technique which pick~ the line of the iso-entropicgram
which in hybrid coded form is the shortest, not necessarily
the one which ls ~hortest in the unencoded form.
The reason for selecting the shortest hybrid coded
iso-entropicgram representation for the seed is to enable
2 the shortest or smallest memory space to be used for storage~
Referring now to Table 8, the possible occurrance values are
depicted, and immediately below, the corresponding binary
bits representing an occurrence vector are depicted at l.
Up to this point, the occurrence vector~ have been
3 primarily described in what will be ter~ed bit striny form.
:: ~

.~ l~m67

1 Ill otll~r words, ~ binary 1 or a binary 0 is us~d to representthe presence or ~bsence o actual occurr~nce values. This
form of representation is depicted at 1 in Table 8. 3 of
Table 8 depicts the same information in a binary coded decimal
form called absolute code form. Thus, bit string form for
the information of Table 8 requires 8 digits, each with 1
binary bit, for storage, whereas absolute code form requires
five digits, each with 3 binary bits, for storage.
Each digit in bit string form requires only one binary
bit for storage, whereas each of the digits in absolute
form requires three binary coded bits. ~owever, if the
number of blanks or O's between two binary ones (occurrences)
becomes large, it will be seen that a point will be reached
where it will be shorter and save memory space to represent
the information in absolute form. Stating it differently,
the diqtance between the binary l's in the bit string form
determines whether bit string encoding or absolute encoding -
will give the best compaction and hence the shortest length -
of information to be stored.
By way of example, in a very wide iso-entropicgram,
the distance between two event-times or occurrences may be
great. For example, one occurrence value may be 5 and the -
next 2,673. In this case, absolute encoding should be
used since it requlres much fewer binary coded bits of ~-
2 information for storage. If the distance between event-times
i8 short, and the number of occurrences i9 therefore
frequent, bit string encoding will be better.
Accordingly, the present invention involves a technique ~-
where a hybrld encoding is used. A brief description of the
; 3 hybrid encoding will now be given since it is an integral part
~ of a preferred embodiment of the seed determination process.
' ~'~

-52- -~

. ..

m67


T;l~)lc 9 ~lepic~s i~l hybri~ code an example of the rnost
signiEicant ;i~ words o~ stor~ye Eor an occurrence vector
containing occurrences at event times 87, ~8, 90, 93, 100, 114, 116,
119, 123 and 125 . Each word contains a bit or "flag" at the
left-hand end which identifies whether it is a bit string word
or an absolute word. A binary l indicates an absolute word
whereas a binary O indicates a bit string word. Disregarding
the bit string/absolute form bit at the left-hand of each word,
each binary bit string word contains the largest occurrence
value at the right-hand end and the smallest at the left hand.
Word 1 is in absolute form and represents 125 with the
most significant binary bit at the left and the least
significant binary bit at the right (disregarding t~e bit
string/absolute form bit at the left end of the word).
lS Word 2 i8 in bit string form and has seven binary bit positions
representing possible occurrence values 118 through 124
but it only contains actual occurrence values depicted by
binary l's for occurrence values ll9 and 123.
During the process of encoding to hybrid code, an
occurrence vector in bit string form is scanned backward
from the right-hand end as depicted in Table 4-A to the
left-hand end from the latest event time or largest
occurrence value to the earliest event time or smallest
occurrence value, assigning absolute and bit string form
to the words for storage in memory. ~qemories are normally
organized so that information is stored in words. As the
occurrence values are scanned from the largest to the smallest,
~,: : . .
~-~ absolute and binary form words are assigned so as to give
: - . . . .
~ ~ the maximum compaction. Thus, word l is in absolute coded

-~ 30 form and represents the occurrence value 125. Word 2 is in
bit string form and has binary l's at the second and sixth -


~; 53
~;' ~ '''

:
(''' ! ~
. , .
~ ~7 7 67

1 position in the wo~d, indic~tin~ occurrence values o~
123 ancl 119. Word 3 i9 in bit strin~ ~orm with blnary 1
bi~s at tlle ~econd ~nd fourth positions, rep~esenting
occurrence values o 116 and 114. Encoding is changed
from absolute to binary coded form when more than seven bits
can be saved by switching ~rom bit string form to absolute
form. The occurrence va~ue 100 is 14 possibl~ occurrence
values away from the occurrence value 114. In the encoding
procedure, it is necessary to check the efficiency o changing
the forms of representation by calculaeing the number of bits
¦ that are saved. Since there are ~hree pos~ible occurrence `~
values to the left of occurrence value 114 ~n word 3, three
bits are potentially wa~ted by s~itching to absolute form,
plus, it will require a full word of seven binary coded bit~
to represent the information in ab~olute form. Thus a total
of 10 (7~3) bits are requ~red for changing to absolute coded
form, producing a saving of four bits. Therefore, it is
desirable to switch from binary form to absolute form.
m u~, as depicted in Table 8, word 4 is in absolute form
and represents ehe occurrence value 100.
Occurrence value 93 18 seven possible occurrence values
from the o¢currence value 100. Since seven bits are potentially
saved (not more than 7) the form of encoding 18 not changed
and the encoding for the next word 4 will remain in absolute
2S form.
Occurrence value 90 i8 only three bits away from ~-
occurrence value 93. AccordinglyJ bit string encoding i8
more efficient and ~ord 6 is in binary string form,
;~ Hybrid encodin~ i9 used to store all occurrence vectors
3a in the ~P~I system. Therefore, althou~h one particular l~ne
..'`'
~' ':'.''.'
-54-
~
....
. ~ , ",

`~ ~ ~
l~Z7q~7

1 in an iso-entropicgram may produce the shortest length of
occurrences in bit string orm, it may be fo~nd that another
line o~ the same iso-entropicgram will actually produce the
shorteqt len~th when converted to hybrid orm.
Hybr~d encoding is used to encode all of the occurrence
vectors sent baclc to the auxiliary memory for storage and all
occurrence vectors read from the au~iliary memory for processing
by the rest of the DPM SYSTEM.
Decoding of the occurrence vectors read from the aux~liary
memory and processed ~n the DP~ INTERFACE MODULE is accomplished
by enter~ng the hybrid coded string of words largest occurrence
value first. Info~tion i8 processed in the DPM SYSTEM ln
abaolute coded form. Accordingly, the DECoDE I and DEOODE II
M~DULES depicted in Fig. 1 translate all hybrid coded
information transferred from the auxiliary memory into the
MEMORY MODULE into absolute coded form ~r proces9ing by
the DPM SYSTEM. Similarly, the ENOODE MDDULE translates
all processed information in the DPM SYSTEM from absolute
form back to hybrid coded form for storage in the MEMORY
2 MODULE and subsequent transfer back to the auxiliary momory.
The details for performing encoding and decoding in the
E~CODE and DECODE M~DULES will be described hereinafter
with respect to each of these modules.
F. Conventions and ComPonents Used in the Fi~ures
Each o~ the ~odules has control input/output llnes ~narrow
lines) and information lnput/output lines (heavy lines). By way
of example, the ENOODE MODULE shows these lines along the right
hand side of Fig. 3. The narrow lines used to represent each con-
trol input/output line represent a sin~le conductor. Each heavy
3 line represents 8 conductors or carrying 8 binary coded bits of
inormation in parallel. Arrows to the le~t indicate incoming sig-
nals to the correspondin~ module whereas arrows ~o the ri~lt indi-
; ~ cate out~oin~ signals.
-55-

- ~ ~ ~
i ~Z~ 7


1 Symbols are sho~n at the tail o~ each arrow representin~
each incomlng control input/output line. Each o the3e
s~,lbols no~ only uniquely identiies each line, bu~
~dentifies the source or module from whicIl the si~nal for
that line originates.
The convention employed is to use one or ~o letters
followed by one or more numbers. The letters identify the
originating module a~d the number gives a unique identification
to the line. For e~ample, Fig. 3 o~ the ENCCDE ~IODU~E shows
the symbol ~2 for the top line. The 9 ignal for that line
originates in the SEED ~DULE. Table 10 gives a list of
the letter symbols and the correspondir,~ module, Some ~ -
control inpu~/output lines have identifying symbols which
do not follow this convention and the originating module i8

identified.
Outgoing control input/output line~ ~arrows to xight)
are also labeled. The sy~bols on the left (tail of arr~)
are logic representing the logical equations for gates used
in generatin~ the signal on the outgoing line. A symbol is
used at the arrowhead to identify the line as it leaves and
enters other modules. For example, in the ENCODE MODULE,
the logic P9 represents a gate used to generate a logic I;~
signal on ~e line ~l.
G~ting i8 shown in block diagram in some instances and

2 in others, logical quatioDs are used to represent the gating
for simplifi~ion ~ Standard symbols are used in the logical
equations~ Thus, a "~" represents an "OR" condition; a
"." represents an ~ND condition; and symbol~ representing
the ou~puts from flip flops, gates, regis~ter, counters, etc,
are used as the terms in the equations. By way of example,

-56-
1:-`

7Gr7


1 lo~ical gatin~ is depicted in the ENCODE ~IOD~.E, Fi~. 4 to rese~
the ~Lip ~lop ERFST to 0. Tlle logic is: P5.G.ERFST.~. The
gate represented by this logic i9 true when true signals are
formed at each of the outputs indicated in the equation, This,
S of course, illustrates an AND gate w~th each o~ ~e indicated
outputs as inputs to ar. AND gate. The logic PlO.G~P7. OE +Pll.~
for flip flop P2 represents three A~D gating conditions combined
by two OR gating conditions.
Flip flops are e~tensively used throughout this patent appli-l ;
~0 cation. One type of flip flop used extensively employs a type
SN7474 positive edge triggered D~type flip flop disclosed at L
page 121 of the book entitled The TTL Data Book for Desi~n
En~lneers, published 1973 by The Texas Instruments Co. Each.
of these flip flops iQ identified by a rectangular box with a
line in the upper left hand corner, such as that shown for $1ip
flop P12 of Fig. 4. Each of these flip flops iB characterized in
that an input exists at the top side and one at the bottom side
and two inputs exist at the left hand side. Also, each has a pair
of complementary outputs at the right hand side, the upper one of`
which has the same symbol as the flip flop (i.e., P12) and the
lower one of which has a line over the top referred to as prime
(i.e., ~q~). These flip flops operate as follows. A true signal
appli~ at the top side (without clock) sets the flip flop to a 1
~tate, càusing true and fal~e signal~ at the unprimed and primed
2S outputs, re~pectively (i.e., P12 and ~q~). A true signal applied I
at the bottom slde sets the flip flop (without clock) to a O state
causing false and true signals at the unprimed and primed outputs~
respectively (i.e., P12 and ~q O . The lower left side input of j-
these flip flops is for clock~ and the upper left side input
~30 is or control o the state into which the flip 10p is set
responsive to clock at

-57-

~ '767 ~

l the lower ~e~t hand side input, A true si~nal at the
upper le~t side input causes the correspondinz ~lip 10p
to be set to a true state responsive to a simul~aneo~sly
applied true cloclc pulse at the lower left side input, and
S a false signal at the upper left side input causes the
corresponding flip flop to be set to a false state responsive
to a simultaneously applied true clock pulse at the lower
left side ~nput.
To simplify the drawings, the outputs on the right slde f
10 of flip flops are not alway~ sh~on as they are for flip flop P12,
For example, see flip flop Pl of the ENOODE ~IODUL~. However,
the unprimed and primed outputs are always implied and will
be used at various places in the system. For example, the
Pl output o 1ip flop Pl i8 not shown on the right of flip
15 flop Pl, but it is shown in the logical equation Pl GE for
controlling the upper left side input to flip flop Pl.
Simikr to the control input/output lines and the -~
information input/output lines, heavy connecting lines
are used throughout to designate multiple si~nal conductors
20 whereas a thin llne represents a single conductor. l -
S-lection circuits are used throughout tho system.
By way of example, the ENCODE ~aDULE has selection circuits r
EDSl-EDS7. The selection circuits each have two or more
labeled multi-bit inormation input circuits, each input
25 circuit for receiving multiple binary coded bit~ o
inormation, and one multi-bit output for receiv~ng ~he ;
same number of bits as an information input. The information
input circuits are labeled directly on the outside of ~he --
box such as EDSl-EDS7 o~ the ENOODE ~Dl~-. In som2 cases, 1 -~
3 the labels are implied such as for selection circuit DSl


-s8- `
. ~.

~ ~ i7~7
. I,
1 of the DPM INT~RFAC~ MODULE where the la~el i9 lmplied to be
the sa~c as the originating circuit o~ the inonma~ion Di~nals.
Also, each seloc~ion circuit has a con~rol input correspondin~
to each o~ the in~ormation inputs ~hich i~ corres~ondingly
labeled inside of the bo:c. A true si~nal at the correspondingly'
labeled control input causes the selection circuit to couple
only those signals at the correspondingly labeled
information input to the.output circuit. By way of example,
in the ENCODE l~loDULE, a true signal at the 1 side control
input of selection circuit EDSl cau3es the output of register
104 to be coupled through EDSl to the left input of the ALU.
Various modules also have an arithmetic logic unit
~LU of the type SN74181 disclosed at page 381 of the above
TTL book. An ALU i5 sh~n by way o example in the ENCODE
lS MODULE, Fig. 2. The arlthmetic unit ALU is characterized '
in that 8 bit signals coded in the 1, 2, 4, 8 ~inary coded -~
number sys~em ~pplied at the input~ #1 and #2 enable ALU "~
to ~orm 8 bit signals, coded in the same number system, :
at an output OP. ~ true signal applied at the ADD input
causes a signal at the output OP representing the sum of
the two coded slgnals applied at ~1 and #2. Whereas, a .'
control signal applied at the SUB input cau~es a signal
at OP, representing the d~ference bet~een the signal~
at $1 and #2 in 2'8 complement ~orm.
2S The arithmetic unit ~LU has additional outputs G, L
. and E. A true signal is formed at t~ G~ L and E outputs,
respcctively, when the number represented by the coded signal
at ~1 is "greater than" ( ~r ), "less than" ( C ), and
"equal to" ( ~ ) than at ~2.
The ALU design sh~n here is ~or a 4 bit chip.
. , :~'.

``.~ -59- 1
~: ~: .,.,, ., ~",; ',, `;` ` ;-; ~, --

c~ ~
~ Jr~7

1 However, it could be generalized into larger grouping~.
In all likelihood, larger capacity ALU's ~e.g., 24 or
32 bits) would make use of type SN74182, look ahead carry
generators, of the above TTL book. However, these are not
necessary for an 8 bit wide ALU.
It will be obvious to those skilled in the art that
minor circuitry peripheral to the SN74181 is required to
receive the true signals and provide the output signals l -
shown and described with reference to the ALU and these ¦--
1 circuits are depicted in the block diagram of Fig. 6.
Some modules have unprimed inputs (i.e., EOFl of
Fig. 17), whereas a primed form (i.e., EOFI) is used in `
the module. The primed form ~i.e., EOFI) merely indicates ~`~
the logical inverse of the unprimed form which i5 formed
1 by conventional signal inverter circuits. Signal inverter ^~-
circuits are not always shown but are implied in some
instances (as for example, ~F~ in Fig. 17).
Although specific hardware i~ di~closed for various
modules in the DPM ~ystem; it ~hould be noted that the -
2 modules might al~o be Lmplemented using micro programmed :
¦ mL~1 c t-r- w1~h appropriaee fLrmw-re progr ~



2 ;
' . ' -
`~
~ . ~''''
:~ ~ .


. -60
. ~,.


1 I-A. GENERAL ORG~NIZ~TION OF DPM SYSTEM OF FIGS. 1-34
_ ,
Reference should be made to Fig. 1 in the following
discussion.
The DPM SYSTEM has a MINI COMPUTER and a DPM INTERFACE
MODULE. The MINI COMPUTER may be any one of a number of
mini computers well known in the art, a micro-programmed
computer or a specially designed computer. For purposes
~ k~
of illustration the PDP 11/45lwith floating point arithmetic
units is disclosed by way of example. Included therein
is a MAIN MEMORY and an OPER~TOR CONSOLE with typewriter
and printer input and output. The MINI COMPUTER contains -
a user program which supervises and sequences the operations
of the entire DPM SYSTEM. The DPM INTERFACE MODULE provides -~
the interface between the MINI COMPUTER, an auxiliary
memory for the MIN~ COMPUTER and the re4t of the DPM SYSTEM.
The DPM contains an IPRF which ls a set of registers in which
the MINI COMPUTER stores parameters to be used as input by
the other modules in the system as discussed more fully in
connection with each module. The MINI COMPUTER through
the DPM INTERFACE MODULE also stores information in the
MEMORY MODULE for processing by the rest o the modules.
The information stored in the MEMORY MODULE i8 in the form
of hybrid coded occurrence vectors; The DECODE I and II
MODULES decode all hybrid coded signals from the MEMORY
MODVLE to absolute coded value signals and the ENCODE
MODVLE enco~es all signals being stored in the MEMORY MODULE
from abso1ute coded value signals to hybrid code. The
exception i~ with respect to information signals transferred
between the MINI COMPUTER or the DPM INTERFACE MODULE and
3a the MEMORY MODULE.


~- -61-

~ 7767

1 The MINI COMPUTEI~ cau~e~ an occurrence vector, in the
form of a given line value of an iso-entropicgram, to be
sent f rom the MAIN MEMORY to the MEMORY MODULE via the
DPM INTERFACE MODULE. A REVOLVE MODULE reading ~rom the
MEMORY MODULE through the DECODE I and II MODULES writes
into the MEMORY MODULE through the ENCODE MODULE and
causes the given line value and line number to be . ~
revolved through various lines in the corresponding : -




-62-
. . ,


~, , , ~ `!, , ~ ` , , ' . ~ ~ ~' ~ ' ' '

c'

~Z7'7G7

1 iso-en~ropicgram. The seed is formed using the SEED MODULE,
Specifically, the REVOLVE M~DULE revolves a given line, under
con~rol of the SEED ~DULE, through it~ iso-entropicgram.
The ENCODE MODULE determines the physical len~th of each
encoded line of the iso-entropicgram as it ic stored in the
MEMORY MODULE. The SEED MODULE keeps track of the length
of the shortest line and identifies the area in the -
ME~RY ~DDUIE that stores the shortest line.
The SEED ~DULE during the seed finding procesQ forms
signals representing the number of line revolves which
must take place to locate the seed line. Thi~ signal, called
the total number of lines signal, i9 æent to the DELTA MODULE
which forms one or more signal~ representing the component
powers of 2 of the total number of lines sigDal. The
component powers of 2 signals are provided one by one
to the RE W LVE MODULE which in turn revolves the given line
by that number of lines. The input line of an iso-entropicgram
i8 retrieved from the seed line, or any other line, in a
reverse sequence of operation More specifically, the
REVOLVE MODULE under control of the OUIPUT MODULE revolves
the seed line unt~l the input llne is formed. In this case
the OUTPUT MnDULE forms a signal representing the total number
of lines required to revolve the seed to the input line.
The DELTA MODULE recoives the total number o lines signal
2S and forms one or more signals repr~senting its component
powers of 2. The REVOLVE MODULE again revolves the seed
; line by the amount specified by each camponent power
of 2 signal until the input line is reached.
Data i~ entered in the existing d~ta base by adding,
~3a chang~ng or deleting. Thi~ is generally referred to as ehe


-63-

~ 67

1 update function. The upda~e unc~ion i9 taken care oE by
the CHANGE ~DULE.
~ hen a seed i9 to be updated, the MINI COMPUTER enters
the changes, etc into a word referred to as the "change vector"
Ihe Cl~l'G~ ~DULE ~ir9t gets the occurrence vector in seed
form from the data base. Using the DECODE I and II and ENCODE
MODULES for communication with the ~IORY ~DULE, the REVOLVE
MCDULE revolves the change vector 3eed b&ck to .he same line
of its iso-~ntropicgram as the seea. Tne change vector is
t;~en merged with the seed UBing the XOR operation discussed above
The OUTPUT I~DULE is provided prim rily for the retrieval
process of revolving a seed or other line to the`~put line
of its iso-entropicgram. However, the OUTPUT ~IODULE ~lso
causes the DEL function to take place. The purpose of the
DEL function, as discussed above, is to determine i a
particular occurrence value exists at the input line of
an iso-entropicgram given the seed line. Signi~icantly,
the DEL function allows this to be chec~ed very rapidly
without having to revolve the seed line back to the input line.
The OUTPUT ~DU~E has a special clipping function which ~ `
allo~s the DPM SYSTEM to recall an occurrence vector from
the data base and retrieve 3ust a specified por~ion of the
occurrence vector. For example, one might want to Icnow
how many ti~es the word "help" occurred between occurrence
2 event times 2~000 and 2,832. To be explained in more
detail, the numbers 2,000 and 2,832 would be entered into
the OUTPUT ~DDULE as lower and upper clipping bounds,
allowing the event "help" to be r2trieved only for those `
occurrences which lay between 2,000 and 2,832.

3a The PIPE MODULE and BRIGHTNESS MODULE perform a
discrimination function in the DPM SYSTEM. This does not
have anythin~ to do Wittl the data base managing functions.
Signi~icantly, the PIPE and BRIGIIq~NESS M~DULES allow near
-64-
...... . .. ,,.". . .. ., . . . , .. ... .. . . ,. . ~ . ~. . . ~. .

C~ Q
~fx7qG7

1 miss rctrieval~. In other words, tlley allow ine~:act
retriev~l of ino~mation ~rom the d~ta ba~e.
Both ~he piping and brig~ltness functions o~ the PIPE
snd BRI~I~SS ~DULES work on a sequence of events bet~een
delimiters, These deli~iters could be any level dellmiters,
The PIPE I~IODULE is presented with a sequence of events which
malce up the user request. Each event is retrieved from the
data base and compared against the others in the request~
The object is to find if the same sequence of events has
occurred be~een any two delimiters in the layer in question,
The output of the PIPE ~ICDULE consist~ of two value~ for
e~ch logical entity in the layer as follows:
1, A starting value, and
2, A numerical value ~hich gives the number of

occurrences of events that appeared in the
data base from the request,
If the sign bit of the numerical value i8 ~ (true),
this indicates that the request occurred e~actly somewhere
between the spec~fied delimiters, The aforegoing is
primarily the piping function,
The brightness function improves on the piping function,
For example, the piping function chooseQ the best candidate
for brightness. The brightness unction then chooses tho
best posslble ~andidate,
2S Essentially, the brightness function talces the starting
value within a logical entity ~hich is received ~rom the `
PIPE ~ODULE and then takes each event from the input request
and finds the closest occurrence o~ the event to this starting
value, if one exists. The ~ri~htness function then ~nd~
3a thls occurrence for each event in the request and the process ~-
is repeated for each lo~ical entity ~lich i9 to be checlced.

-65-

.... , . ,. .. ..... , .. ,.,.. ,.. ... , ~ ... ., ..... - . . .

(~ z7~6~ ~

1 After all the events in the request have been processed, a
calculation is made to find the brightness valu~ or the
request.
The brightness value can be described considering
the following example. Picture the logical entity from
the data base and immediately to its left the request.
The request is then shifted right, one event at a time,
over the data base entries and a value is computed for
each shift. The value indicates how close the request
0 lineæ up with that of the data base. The best value is
then passed as an output to the user at the OPERATOR
CONSOLE. This value is computed for each logical entity
which has been re~uested.
The exact way in which the piping and brightness
functions work are best understood in connection with each
module. Accordingly, reference should be made to the
sections XV. PIPE and XVI. BRIGHTNESS MODULE and the ~-
80ftware sections XXXII for a more complete description
and understanding of these features.
`




:: ~

I -6~-
.,

.;.. -.. ; ~ .~;, . ~ - , ~ , ;, ,; ,~-

~7'767
1 II. ENCODE MODULE
_ _
A. General Description
Section ~ GENERAL DESCRIPTION OF DPM SYSTEM degcribe9
hybrid form of coding of the information, with respect to
the example in Table 9. The ENCODE MODULE is provided in
the DPM SYSTEM of Fig. 1 for the purpose of con~erting
absolute coded occurrence vectors to hybrid coded form
and controlling the writing of the hybrid oaded occurrence
vectors into the MEMORY MODULE.

0 At the outset, it should be kept in mind that occurrence
vectors represent a series of occurrence values out of a - -
larger set of incrementally ordered possible occurrence
values or event-times. Occurrence vectors are stored,
retrieved and processed such that the highest numbered

1 occurrence value is first. The highest numbered occurrence
va}ue identifies the most recent occurrence in the event-
t~me domain. The lowest numbered entry, and hence the
entry farthest back in event-time, is stored, retrieved and -
processed last. Examples of delimiter and event occurrence

vectors (in absolute coded form) are ~hown at -~" and ~T"
of Table 2. This form of information representation ls quite
important to an understanding of the ENCODE NODULE embodiment
about to be de-cribed and with respect to each of the other
module embodiments about to be described.

2 ¦ The MæMORY NODULE reads and writes information a word
at a time. A word ha~ 8 binary blts of information.
The ENCODE MODULE, in the encoding proces~, processes
~ each occurrence vector as foilows:
;~ The ENCODE MODULE is called each time an absolute

3 occu~rence ~s to~be encoded by either the RE~OLVE MODVLE
or the OUTPUT MODULE. The module which calls the ENCODE


-67-

", ~

-~ ( ~ r ~
~ 7767


1 ~IODUL~ is hereinaft:er called the calLing module.
The ENCODE ~IODULE receives l:he absolute occurrence
values of sn ~bsolute coded occurrence vector in decreasing
value order. A currently received absolute word and a
5 previously received word in the series are held and
compared The d ifference between the current and previous
absolute ~alues represent the number of binary bits of
displacemeDt between thern. If the difference is greater
than some "specified number of bits" (in this case, 7 bits),
1 thien the previous absolute value i9 outputted in the
hybrid word series as an "absolute" word (see word O
of Table 9). If the difference is less than this "specified
number of bits", the pxesent absolute value is entered as
an occurrence into a bit string ~i~ord (see word 2 of TaSle 9)
15 of the hybr~d series. The latter is accomplished by shifting
the bit string word under formation the number of bit
positions designated by the difference and entering a bit
of predetermined value, i.e., "1", into the bit string word,
and the ENCODE MODULE is "exited" by terminating its
20 operation. ~hen a blt stsin~ word under formation i~
complete, it i8 also outputted. It should be noted that
binary bit at the most significant end of each word being
outputted i8 reserved as a type or flag bit to indicate
th~ form of the hybrid word. A "1" bit flaEc indicate~
2 an absolute word whereas an "O" blt slag indicate8 a bit
~tring word.
~ he hgbrid form to which the absolute occurrence values
are encoded i~ a series of absolute and bit ~tring words
starting with an absolute word. An absolute word in itself
`3~ represents the value of one occurrence by a combination of
~.
-68-

(' ( )
~i~."767

1 bi~ary coded signals. ~ bit s~rin~ word represent~ an occurrence
value by the number of possible occurrence values o~ displace-
ment of an occurrence of predetermined value, i.e., "1", ~rom
the previous absolute word or from the previous occurrence of
predetermined value in the hybrid word series. The first
word of each hybrid word series is always an absolute word
and therefore in itself, identifies the value of the first
and largest occurrence. However, it shoud be understood
that within the broader concepts of the invention, the
invention may be employed in a system which i9 not bound
by words, in which case the bit string portion of the hybrid
form would not be confined to words.
Another purpose of the ENCODE MDDULE i9 to perform
"cliQping" and "clipping" by "interval". Clipping is the
operation of deter~ining if each absoiute word occurrence
value lies between a top limit ~L) and a bottom limit (BL).
This operation is performed by comparing each absolute word
with TL and BL. If the input entry is C TL and ' BL, the
absoluee word is within desired bounds, and encoding
continues and, if not, a corresponding indication is formed.
If "clipping" by "interval" is to be performed, an
"interval" value CEI) i8 provided to the ENOODE MoDULE.
If the absoluto word is not ~ TL and ~ BL, then EI i~
subtracted from TL an~ BL, and the ~sme absolute word is
again compared with the mndiied TL and BL va~ues. This
continues until BL goes below 0 at which time a corresponding
~ignal is formed or the ab~olute word is found within the
bounds of the modified TL and BL, according to the above
criteria, at which time the absolute word ~s converted to

~3C hybrid form, as discussed above. The "clipping" by "interval"

-69- ~`


" . ,,~ t~ ~, ", ~, ~", . ,,, ""~ ,",,,;, ~

~ x7767

1 function is important un~er certa~n conditions when it i9
needed ~o Icno~J i~ the input entry i8 within certain re~ular
intervals, i.e., 45-40 or 25-20, 10-5. The values TL,
BL and EI are read by the ENCODE ~IODULE ~rom the correspond-
ing registers of the IPRF.

B. ComPonents
The ENCODE MDDULE includes registers ET, EIR, EI, ER, --~
EO, EHW, ETL, EBL and EOP. Each of these registers contains
8 bits of storage. With the exception o EOP and ER, each
register ~ of type SN74100 disclosed at page 259 of the
above TTL book and are characterized~in that a true signal
applied at the L input at the side thereof causes the binary
coded signals applied at the upper side input to be applied

to the lower output. When the signal at the L input goes
false, the information i~ retained in the register even
though the information input signals change thereafter.
The EIR register is shown with two special outputs
Eo and ~. True signals are formed at these outputs when

the content of the EIR register 19 O and not 0, respectively.
It will be understood that an appropriate circuit (not shown)
i8 connected to the SN74100 regi3ter for forming these
signals. Preerably, the circuit has the "1" output of each
bit position connected to

the input of a common "OR" gate. The output o the "OR"
gate i8 the E~ output, whereas the output o the "OR" gate
i~ connected through an inverter to the Eo output. -
The ER re~is~er i5 a data latch of type SN74116
of the above TTL book and i9 similar to the S~74100,
except that it has a "CLE~R" line which provides a one
` 30 step clearing operation.

-70-

--

~.Z'7767

1 Re~ister EOP consists o a ~lip flop MSB and a
seven bit parallel-in/parallel-out shift regi3ter 114
of ~ype SN741~ as disclosed at pa~e ~56 of tl-e abov~
TTL boolc. Register 114 is a 7 bit register and is
characterized in that parallel loading is accomplished by
applying the 7 bits of data at its upper side and making the
shift/load (S/L) control input low or false when the CLOCK -
input i~ not inhibited, i.e., receives a true signal. A
true signal at S/L causes a shift to the right by register 114
responsive to the leading edge of a true pulse at the CLOCK
input. A falso signal at S/L causes the 7 bits applied at
its upper input to appear at the output of the register 114
and be stored therein responsive to the leading edge of a ~-
true pulse at the CLOCK input.
1~ Considering register EOP in more detail, a false signal
at ~ causes register 114 to load theinput signals applied
at the upper side. Typically, a true signal i9 simultaneously
formed at P9'~3-W to the MSB fl~p flop. When CLK goes
true, P9 BSW-~-K becomes true and, being applied to the
CLOCK input of the MSB flip flop and the register 114, causes
the MS8 flip flop to be set true and load 7 bits of ~;
information from register EO .
In addition, the ENCODE MODULE has counters M~R3,
MLN3, CTR and NOC. CTR has 8 states, NQC, ~R3 and MLN3 ~-
each have 256 states and are of type SN74161 disclosed at
page 325 of the above TTL book.
~:~ CTR is a 3 bit up/down counter of type SN74191
disclosed at page 417 of the above TTL book and is
characterized in that a false signal at U/D causes the
3 counter to count up when a true signal is appl~ed to the CT

. - .
-71-

r

~Z'77~7

1 input and a true signal at U/D causes the counter to count
down when 8 true signal is applied to the CT input. The
counter can be preset to a value corre~ponding to the
signals applied at its input at the upper side while
5 applying a true signal to the L input. The block indicating
CTR contain~ a circuit not shown, similar to that described
for the ER register for forming true signals at the ~ and Co
outputs when the ~tate of CTR i~ O and not 0, respectively.
The ENCODE M~)DllLE has counters MAR3, MLN3, CTR and NOC.
10 CTR has 8 states, NOC, ~R3, and ~N3 each have 256 state~
and are of type SN74161 disclosed at page 325 of the above
TTL book. The counter CTR counts through its prefixed
sequence of 8 states and automatically resets to its
initial or 0 state. Each of the MAR3, MLN3 and NOC counters
15 are of type SN74161 of the above TTL book and are controlled
to always count upwards. Not shown but included within each
box is a logical signal inverter to invert the signal at
CLR before it reaches the SN74161. A true signal applied
at the CLR (CLEAR) inputs of MAR3, MLNi and NOC causes
20 them to be cleared or reset to a "O" state. A true s1gnal
at the CT input causes the counters MAR3, MLN3 and WOC
to count up. ;`
Th~ ENC'ODE M!ODULE also has fl1p flops EFRST, ELAST,
BSW, ECE, U/D and-MSB. In addition, a control counter 113
2 has flip flops Pl to P12.
The ENCODE M~DUI.E also has a source of recurring clock
pulses 102. The source of clock pulses 102 forms a series
of equally spaced (not essential) recurring true clock pulses
at its output. The output of source 102 is connected to one -
3C input of an A~D gate 112 which forms clock signals at CLK

-72-

ilZ7767

1 whenever the other input to gate 112 i9 true in coincidence
with a clock pulse. A signal inverter 117 inverts the signal
at CLK to form pulses at CLK.
The ENCODE MODULE also has an arithmetic logic unit ALU
at #1 and #2 in 2's complement form. Conventional OR gates
108 and 110 are ccnnected to G, L and E so that true signals
are formed at a GE output of 108 and a LE output of 110,
respectively, when the values of the signals at #l are
"equal to or greater than" t2) that at #2, and "equal to or
less than" (<) that at #2.
The ENCODE MODULE also has selection circuits EDSl-EDS7
of the type disclosed above. The ENCODE MODU~E also includes
conventional logical OR gates 104-110, 118 and 119 and an
AND gate 112.


C. Detailed Description
The ENCODE MODULE can be most readily understood with
reference to the description in connection with the block ~-
diagram, Figs. 2-4, and the corresponding flow diagram,

Figs. 7-8. As an aid, Table 11 contains symbols used to
identify the counters, registers, flip flops, and one-shot --
multivibrators, together with the mnemonic meaning of the
symbols used. Also as an aid, the flow diagram contains
P numbers ad~acent to the various blocks, i.e., ~Pl), tP2),


etc. These P number~ correspond to~the outputs of the control
counter 113 and thereby indicate the state of the control
counter during which the indicated action shown in the flow
diagram takes place. However, the same P number appears for
more than one box. Therefore, for added ease in making

reference to the flow diagram, symbols EBl through EB26 are
used to identify each box in the flow.
,.j
-73-

~' ~
~Z~767

1 Table 11 shows ~he principal inorm~tion inputs and
outputs ~nd the input con~rol or tIIe ENCOD~ ~IOD ~ . Top
clipping limit, bottom clippin~ limi~, interval and i90-
entropic~ram width are each 8 bits long and are loaded into
registers o~ the ENCODE ~`IODULE by the modules indicated in
Table 11.
Assume initialLy that clipping is not to be performed
in which case OPSW, ETL, EBL and EIR are all initially 0.
Also assume that the E~CODE 2~IODULE is about to be called
for its encoding function for the first time. Preliminary
to calling the module, the current absolute word i8 received
by the EDS6 selection circuit either from the DS4 output
of the REVOLVE ~DULE or ~rom the ORTl register of the
OUIPUT ~ODULE. The first current absolute word to be
received 18 the first or largest absolute coded word (8 bits
in length) of an occurrence vector. After the ~EVOLVE ~DULE
suppl~es the current absolute word, true signals aré formed
at RMll and RM6 by the REVOLVE ~DULE. When the current
absolute word i9 being supplied by the OUTPUT M~DULE,
true signals are formed at C~I13 and OM14 by the OUIPUT ~IODULE.
A true signal at R~ll causes the EDS6 selection circuit to
couple the current absolute word at DS4 to the information
input of register EI. The true signal at ~I6 enables the
OR gate 109 to acdvate the load (L) input of EI and load
2 the current absolute word into EI, Similarly, a true
signal at ~I13 causes EDS6 to route the information input
: from the ORTl output to the information input of EI and
~: the true signal at O~I14 enables the OR gate 109 to activatethe load (L) input of EI and load the current absolute word -:
~3 into EI. It should be noted that all current absolute words

-74- `

~ f~
-`~ ~27767


1 for one occurrence vector are suppli~d in sequence lar~est
to smallest by the same cnlling module
The i30-entropicgram width (HW) is stored in the input
parame~er register ile IPP~F. Loading of the iso-entropicgram
width into El~ is enabled by true si~nals at any one of the
following outputs: OMl output of the OUTPUT I;~ODULE; SM3
output o~ the SEED I~DULE; and the CM3 outlet of the
~LANGE ~DULE.
OPSW i9 an output circuit of the OPSW flip flop in the
OUTPUT ~DULE. OPSW is the lo~ical inversion of OPSW. Only
the OUTPUT ~IODULE determines if clipping is to take place
and, if it 18 to take place, the OPSW flip flop is in a 1
state, othexwise it is in an 0 state. Since it is sssumed
for the following explanation that no clipping is to take
place, a txue signal appears at ~n~R.
The EFRST flip flop is set to a 1 state whenever the
present call on the ENCO~E MoDULE i8 for convertin~ the
first absolute word in a particular occurrence vector.
EFRST is set by the calling module. In the case of the
REVO~VE ~I~DULE, a true signal is formed at the RM2 output,
whereas, in the case of the OUTPUT MODULE, a true signal is
formed at the OMl output, and enable~ the OR gate 105 to `
set the E$RST flip flop to a 1 state.
The EL~ST flip flop indicate~ if the current absolute
word is the last one of an occurrence vector. A 1 state of
2S EIAST indlcates the last one, whereas the 0 state ind~cates

it is not the last one. ELAST i8 set by the calling module.
In the case of the REVOLVE M~ULE, a true signal is formed
at RM9 and in the case o~ the OUTPUT ~SODULE, a true signal ~: .

3a is forn~d at O~118, either of which causes the OR gate 106 to!~ set ELPST to a 1 state,
..,
~ -75- -

- ~ S~ ~ _

~' ~
~ 767

1 ~ssume initi~lly that ELAST i5 in an O ~tate
InitiaLly the MINI CO~IPUlER ~orms a true signal at MINIT
whicll causes gates 118 and 117 to set all of control counters
113 and flip flop ECE to 0. To be explained hereafter, true
signals at E~ thereafter set tl~ese elements to 0. The
E~CODE MODULE is called by the RE~DLVE ~DULE by forming
a true signal at RM7 and by the OUTPUT ~IODULE by forming
a true signal at OM15. Either of these true signals
enables the OR gate 107 to trigger theENGO one-shot multi
vibrator which, in turn, causes a true signal at the ENGO
output. The true signal at the ENGO output causes the E OE
flip flop to be set to a 1 state. The 1 state of the E OE
flip flop causes a true signal at the E OE output which, in
turn, causes the A~D gate 112 to couple the CLK output
lS of the clock 102 to the clock input of each of the control
counter 113 flip flops Pl-P12. Clock ~ignals now being
formed at the output of the AND gate 112 cause the E~CCDE -
MCDULE to commence its sequence of operation by virtue of
the control action of control counter 113. All ~lip flop3
Pl-Pll being in an 0 state and a true signal being formed
at ~FgR cause flip flop P5 to be set to a 1 state, fon~ing
a true signal at the P5 output.
One orm of clipping i9 caused by the OPSW flip flop
ln a 1 state. An alternate form o clipping ls automatically
done by the ENOODE MO~ULE, Specifically, in the alternate
clipping, the absolute words of an occurrence vector are
received by the ENCODE MDDULE in decreasing order of magnitude.
The ENCODE ~DULE automatically clip8 or discards all of those
absolute ~ord~ wbich are larger than the iso-entropicgram width
3a and hence lie ouL~ide of the iso-entropicgra~. The alternate

~ -76-
L

~ c
~iz~

1 form o cl~ppin~ i9 very useful ln connection with ~he
REVOLVE ~`IODUL~ where the result of an exclusive OR is
clipped ~ keep only the lower ordered values which are
within the iso-entropicgram width The ENCODE MODULE
will automatically perform this clipping, using flow
chart blocks EB6 and EB8.
Considering the alternate clipping function in ~-
more detail, EFRST is set to 1 when the ENCODE MODULE
i~ called for the first time to encode an occurrence
vector. This is done to insure that the alternate clipping
function is performed. Thus at EB6, flip flop EFRST being
in a 1 state, causes EB8 to be entered where the iso-
entropicgram width ~n register E~ is compared with the
input current absolute word in register EI. If the content
15 of E~ ~ EI, the operation of the ENCODE ~DULE is ~ ;
exited by formin~ a true signal at E~lEND, thereby indicating
to the calling module (l.e., REVOLVE) that it has processed
one absolute word. Actually, the absolute word is 3ust
discarded by the ENCODE MCDULE. When the c~ing module
again calls the E~CODE M~DULE to cause another absolute word
of the same occurrence vector to be processed, flip flop EFRST
will still be in a 1 state, causing EB8 to again be entered.
If the current absolute word is larger in value than the
iso-entropicgram width, an exit i8 agaln taken. This is
25 repeated until at EB8 the current absolute word i9 smaller -`
than the iso-entropicgram width (e,g. EHW~ EI~ at which time
EB9 is entered to reset flip 10p EFRST to 0. Thereafter when
called, the ENCODE MODULE do~ not perform clipping because
the ENOODE MCDULE goes from EB6 to EB7.
3 Consider now the operation durin~ E~8 and EB9 in detail. --

~'Z~ 76~

1 ~ssume EBl ~nd EB6 of the ENCOD~ ~`IODULE ~low have been
travers~d, and assume EB~ is no~ entered during which the
iso-entropicgram widtll in E~ i9 compared with the current
absolute ~ord in EI. If the current absolute word i9 larger
than tlle iso-entropicgram width, it is outside of the iso-
entropicgram and therefore a "don't care" condition exists.
To perform the comparison, the true signal at P5 causes EDSl
and EDS2 to couple the contents of EH~I and EI to the arithmetic
unit ALU. ALU, together with the OR ~ates 108 and 110, in
turn form true signals at outputs LE and G whenever the
content of EHW is, respectively, ? than and c than
the content of EI. If the C condition i~ sensed, true
signals are now formed at the P5, LE an~ EFRST outputs
and the true signal at ~ causes the CLOCK SUSPENSION LOGIC

-122 (i.e., P5-LE'CLK) to reset the ECE flip flop to an O
state which, in turn, removes the true s~gnal at E OE and
thereby causes the AND gate lt~ to stop forming cloclc
signals at the lnput of the control counter 113. The same --
signal causes the one-shot EMEND to fire and form a true

signal at EI~1END. This signal notifies the caller that the
ENCODE function has been completed. It also resets control
counter 113 through OR gate 112. This, then, in effect causes
an EXlT ~o be taken from the ENOODE ~IODULE where no action
is talcen until the next request is made to the ENCODE MODULE
from the RE~DLVE or OUTPUT ~ODULE,
If, on the other hand, the content of E~ is ~ than the
content of EI (true signal at G), EB9 is entered. Assume
during EB8 the content o~ EHW is ~ than that o EI and a
true si~nal is formed at G, causing EB9 to be entered. The-
~3 BS~ flip flop states of O and 1 indicate the previous absolute


-78-

~-~ ~ ~
~2~7G7

1 word has been entcred in the hybrid coded output in bit
string form and a~solute word Eorm, respectively. Since
the ils~ hybrid word i9 al~ays in absolute word form, ESW
is to be set to 0, indicating tl~ t the correspondin~ output
S is in absolute word form and the ~R3 and ~ ~ 3 registers :
are cleared to initia~ or O states, ready for the first
hybrid word to be stored in the MEMORY ~IODULE.
During EB~, true signals are formed at the following ~-
outputs: G, EFRST, and P5. Hence, at the follot~ing pulse
at ~ , the counters and re~isters NOC, MAR3 and ~N3
and flip flops EFRST and EL~ST are all reset to 0.
EBl9 iB then entered and the same signals cause ER
to be reset to O and the reset logic resets BSW and ~B :
of rezister EOP to 0.
lS Followlng EBl9, EB20 i9 entered during ~hic'.l the sane :.
true signal~ are also present ~hich causes load logic to
. load the current absolute word into EO. The current
absolute word in EO now forms the previous absolute word
for the next call on the E~CODE ~IODULE. The same logic
20 also causes NOC to count up one state, indicating that one -~
absolute word has now been provided to the ENCODE MoDULE.
At this point, a true signal i8 formed at the outputs
P5, EFRST. Thereore, the next pulse at ~3g, the E OE flip -:;`
flop is reset to 0, thereby disabling the gate 112 ~rom

applying clock signals to the control counter 113 as
described above.
Subsequently, the calling module again calls the
ENCODE ~DULE and provides the next current absolute word
at which time a true signal i9 applied at either the R~I7 or
3 OMl5 output (of the ~EVOLVE or OUIPUT ~IO~ULES) causing `

.'. '
:~ -79-

~27767

1 the OR gate 107 to trigger the one shot multi vibrator
circuit ENGO, thereby setting the ECE flip flop baclc to
a 1 state and enabling the AND gate 112 to apply clock
signal~ to the control counter 113.
~t this point, it is assumed that the next current
absolute word is not the last one in the occurrence vector
and hence the ELAST flip flop is in an 0 state, forming a
true signal at ELAST. This cause~ the next clock pulse
~rom gate 112 to reset flip flop P5 and set flip flop P6
to a 1 state, thereby enabling EB10 to be entered.
During EB10, a true signal i~ formed at the P6 output
which causes EDSl and EDS2 to couple the previous absolute
word contained in EO and the current absolute word contained
in EI to the ALU which forms an output at OP corresponding
to the difference This difference i8 reerred to as the
previous and current difference signal. Additionally, the --
signal at EDS7 causes the selection circuit EDS7 to gate
the previous and current diference signal to the information
input of the ET into which the signal is loaded by the
subsequent clock signal at ~ . Thus, ET now contains
the prevlous and current difference signal which i8 the
number of bltq of displacement (either in event time or
in possible occurrence values) between the current absolute
word in EI and the previous absolute word in EO. Additionally~
the truo signal at P5 causes the U/D 1ip flop to be reset
to a 1 state, asserting its true signal at the U/D output,
thereby causing CTR to be set so th~t it counts down. The
P6 output of the P6 flip flop is connected directly to the
input o~ the P7 flip ~lop, thus the ~ollowing clock coming
`30 out o~ the gate 112 causes the P7 flip flop to be set to a 1
state, thereby entering EBll~

-80-

' - ~
~z~767

1 Durin~ EBLl, the previou~ ~nd current di~erenoe signal
contained in ET is subtracted from the remainin~ binary bit
signal contained in ER, ~he remaining binary bit signals
represent the remaining binary bits to be filled in the
bit string word being formed in EOP, The subtraction
results in a difference signal during EBll which indicates ~
one of two values and these will now be explained. If the ~- -
content of ER is larger than or equal to ET, the difference
is ~ than 0, meaning that the d~fference represents the
remaining available bits in the bit string word (now under
formation in EOP) after current absolute word is entered. - -
If the content of ER is ~ than ET, the difference is le98 ;
than O (or -), meaning that the difference represents the -~
number of bits needed in the next bit string word ~to be
formed) to enter the current absolute word. An example
of thesQ two conditions is now given: the bit string word
has a maximum of 7 available bits (see register 114 in EOP ;:
having 8 bits, less 1 fla~ bit - 7). Assume the remaining
available binary bits signal in ER - 5 and the previous
and current difference signal in ET ~ 3, givin~ a
positive difference of 2. The difference of +2 represents
the remaining avai~ble bit~ in the bit string word after the
current absolute word. If the values are reversed CER ~ 3
and ET - 5), tben the diference is -2 and representa the
number of bits needed in the next bit string word to enter
the current absolute word. In other words, tbe current
absolute word will require all remaining available bits
~R) in the current bit string word under formation in
EOP plu9 2 additional bits in the next bit s~ring word to
~3 be formed. ;



~ ~ ~ r

-~ f~ ~
~X`'~767

1 ~en on a previous cnll to the E~lCODE ~IOD~.E it W~9
~ound (during E~13) tha~ the current absolute word was to be
outputted i~ ~bsolute word orm, ER wa~ reset to O at EBl~
and hence is O at the next entry to E~ll. Under these
condi~ions, a difference less than O is formed durin~ EBll.
Howeve~, the difference iq the negative o~ ET (O-ET D -ET).
Consider now the detail~ of operation. Assume that ~-
the ENCODE MODULE is at EBll, and a true control signal is
being formed at the P7 output. This causes EDSl and EDS2
to couple the content of ER and ET to ~LU which, in turn,
forms an output representing ER - ET. Assume the result
i8 ~- O. A control signal is fonmed at the L output of ALU, -
indicating that there are insufficient bits in EOP for the
current absolute word. EB12 is entered.
During EB12, the control signal at P7 snd L cause3 EDS7
and the load logic for ET to store the number of bits needed
in the next bit 3tr~ng word signal being formed at EOP into
ET at the ~ollowing pulse at m. Additionally, the same
true signals cause EDS3 and the load logic of CTR to store
the content of ER into the counter, setting it to a state
corresponding to the content of ER. I~ ER contains 0, as
occurs when this is only the second call on the ENCODE MODULE
and hence is the ~econd time through the flow, the true signals
at P7 and L also cause the ~lip ~lop P8 to be set into a 1
state~ thereby causing EB13 to be entered. If ER contains O,
CTr~ is set to 0, causing a true signal at the Co output.
The true signals at P8 and Co cause the P9 flip flop to be
set to a 1 state and EB15 i8 entered, thereby skipping EB14,
To be explained in more detail, EBl4 causes the bi~
3a string word being formed in EOP to be ~illed out with leading O's.
. ,



'. ~, "; ~

~ 77~7

l This opera~ion, ~nd hence E~14, is slcipped ~hen ER i~ O
since no remaining bits need to be illed in ~he bit string
word under formation.
Return now to EBll and consider t,~,operation when E~ is
not O and ER-ET is C~ O causing a true signal at the J. output
of ALU; Note that ER is not O when a bit string word is being
formed in EOP and available bits exist in EOP in the bit string
word under formation. EB12 and 13 are entered as discussed above - -
~and CTR is set to a state corre~ponding to the number o
binary bits remaiuing to be filled value contained in ER.
During EBl4, a true signal exists ~t P8 and ~ (CTR is not O)`
and each pulse at ~ counts CTR do~?n one and causes the ~ -
EOP shift logic to shift the bit string word one bit position t
in the direction of the least signi~icant bit thereof until
CTR reaches 0, at which time the true Yignal at ~ is removed
and one is formed at Co. Thi~ causes CTR and EOP to stop
counting and shifting and EB15 i~ entered as discus~ed above. l~-
Assume that during E815 the BSW flip flop i8 in an 0 state,having previously been set there during EBl9 thereby indicating
2 that the next event in the hybrid output from the previous
¦ event i8 to be in the fonm o~ an absolute word. With BSW in
¦ an 0 state, EB16 i9 entered. During EB16, the fal~e signal
¦ at ~Y causes the load logic of register 114 to load the
¦ previoua absolute word contained in EO lnto the re8ister 114
2S ¦ of EOP and true 8i8nal9 at P9 and ~ c~use the logic
¦ P9-~R to set the ~$B fllp flop to a 1 state~ indicating
¦ that the word in EOP i9 an absolute word. Subsequently,
¦ EBl7 is entered.
¦ During EB17, the P9 output ~ee right hand of ENCODE
30 ¦ t~ULE schematic) cause~ a ~rite Enable ~ignal ~WI) to be !-
1~
. -~
.
1.

-~` ~
I l~Z~.~7~7

1 ¦ formed in the MEMORY M~DULE, cau~ing it to store the absolut-

¦ word contained in EOP into the storage location de~ignated by
¦ the content of ~fAR3
¦ The true signals at P9 and the pulse at ~;R cause the
S ¦ content of MAR3 and MLN3 to count up one state In th~s
¦ manner, the counter ~N3 always lndicates the number of
¦ memory writes and hybrid coded words written in the MEMDRY
¦ MODULE. Thus, an absolute word is outputted by the formation
¦ of the true signal at the P9 output which, in turn, causes --
10 ¦ the MEMDRY ~ULE to read the absolute word from EOP.
Return now to I~Bll and consider the situation where
¦ a previous absolute word i9 contained in EO, a current
¦ absolute word i8 contained in EI, and ER is ~ ET. ALU
I forms the difference between ER and ET (i.e., ER - ET)
lS I and ALU and gate 108 form a true signal. The difference
¦ ~ignal at the output OP of ALU represents the remaiDing
¦ avallable bits in th- bit string word now under formation
¦ in EOP after entry of the current absolute word iD EI.
¦ Under these coDditions, the bit strlng word being formed
20 iD EOP is shifted by the number of bit positions ~ndicated
¦ by ET and the current absolute word ~8 entered into EOP.
To this end, hB22 is entered from EBll. The tru-
~igna'~ fo~d at P7 and GE cauoe the load logic of ER
¦ to store the differen~- Jignal being formed at the OP
2S ¦ output of AI~U lnto ER at thej c~uer~ of tA- followiDg
¦ pulse at ~g. Thus, ER ~ow containJ the new number of bits
¦ ~eemalning to be fill-d ln the bit strlng word under formation
which will exist after the curreDt absolute word is entered.
Addltlonall~r, th- same sigDals cause EDS3 and the load logic
~0 to store in CTR the pr~vious and current difference signal
iD ET. The true ~ignals at P7 and OE cause the Pll flip flop

-

-~ ~ 7~7

1 to be set to a 1 3tate at the next cloclc signa~ from
gate 112 and thereby enter E823.
Dur~ng EB23, a~ the subsequent state E~24, CTR
i5 enabled to count tllrough a sequence o states corres-
ponding in number to the previous and current difference
signal which was set into CTR fxom ET. To thi~ end, the ~ -
true signal at Pll and at C~, together with the true signal
at U/D, cause CTR to count down 1 state responsive to each
true signal at CLK. Additionally, in the absence of an O
state of CT~, a true signal i9 formed at the æ output.
The true signal~ at Pll, Z~ cause the reglster EOP to be
shifted 1 bit position to the right in the direction of
the least ~ignificant bit. This operation continues until
the counter reaches O and a true 9ignal i8 formed at the
Co output. When a true signal i8 formed at the Co output,
counting and shifting of CTR and EOP i9 complete and the --
ENCODE ~DDULE i8 ready to enter the value of the current
absolute word in EI into the shifted bit string word in EOP.
EB25 is entered.
During E825, a true signal is formed at the Co output
and the subsequent true signal at ~g causes the fllp flops
MSB of EOP and BSW to be set to a 1 state. To be explained,
the 1 bit stored in MSB i9 subsequently shi~ted into register 114
of EOP durin~ EB26, thereby causing a bit of predetermined
2S value, i.e., a 1 bit~ the bit string word being formed in EOP.
The number of bit positions existin~ between ~he currently
formed 1 bit and the previousl~ formed 1 bit or bet~een
the currently formed 1 bit and the previous absolute word
in the series of hybrid word outputs indicates the value
3a of the current absolute word. The 1 state o 8S~ indicates


-85-

~7767

1 that ~ b~t s~rin~ word is now bein~ form~d in EOP
The true signsl at Pll and Co cause the ~lip flop
P12 to be set to a 1 state at the ~ollowiu~ clock si~nal
from gate 112 and EB26 i8 thereby entered.
During EB26, a true signal i~ formed at the P12 output
and ~he subsequent pulse at ~ causes the content of EOP,
including the content of ~ISB and register 114, to be shifted
1 bit position t~ard the ri~ht toward the least significant
end, thereby placin, the 1 bit into the register 114 portion
of EOP,
EB20 is now entered. During EB20, a control signal is
now formed at the P12 output and the BSW flip flop is in a
1 state. The subsequent pulse at C~ causes load logic to
store the current absolute word contained in EI into EO
thereby formin~ a new previous absolute word and causes
~OC to count up one state, thereby indicatin~ that another
absolute word ha~ been encoded into hybrid form. NOC countY,
and thereby indicates, the number of 1 bits proce~sed in
any given seed. Addltionally, the true signal at P12
causes the EOE flip flop to be set to an 0 state at the
pul~e at ~g, di~abling clock signals at the output o
gate 112, causing the E~D monostable to ~ire and thereby
form a true slgnal at the EME~ output. This causes counter
113 to be reset and the ENCODE ~DULE operation to EXIT,
2 A very important operation in the ENCODE ~DDULE i8
depicted at EB18; This is the condition under which previous
~` and current diference signal contained in ET is compared
with a predetermined threshold value. This is the heart
o the deciiion which enables a change, in hybrid output,
3 from bi~ strin~ word orm to absolute word form and the
..

i -86- -
~'.

~-~ (' ~ ~
~Z'7767

1 operation ~s accomplished ~9 follows. During EBl~, the P10
~lip ~lop is in a 1 9 ~ate, cau~n~ a true si~n~l at th~ P10
outpu~. This causes EDSl and EDS2 to coupl~ the ~witches
104 and the output o~ ET to ~LU The ~LU compare9 the
applied si~nal3 and adds the con~ent of ET to the val~e 7
represented by theswitches 104 and orms a resul~ at oP.
It should be noted that when EBl~ is entered, the content
o~ the ET i5 always a negative number, the number being
stored in 2's complement form. The reason for this
10 situation i~ that ET at this point in the operation always - -
indicates the number of bits needed in the next bit string
word to enter the current absolute word which i8 a ~ituation
where at EBll, ET was larger than ER re~ulting in a
negative valu~. Thus, at EB18 ~hen ALU combines the content
of ET with the value 7 from 104, a difference ~ignal is
formed. ~f the difference signal i8~ O, i.e, the value 7
i~ the absolute value in ET~ a control signal is formed
at G and EB21 is entered. If the value 7 i9 ~ the absolute
value in ET, the d~Fference signal will be C 0, causing
a control si~nal at the LE outpu~ o~ OR gate 110, which
in turn causes EBl9 to be entered. The result of the
compari~on of the value 7 and the absolute value in ET
is quite important in determining subsequent operations.
If the absolute value in ET i9~ 7 (the value 7 is grea~es),

a contxol si3nal 18 formed at G and tho criteria is not met
or switching from bit string word to absolute word in the
hybrid output because 7 is greater than the absolute value
~ in ET, Accordingly, EB21-26 are entered where the current
; absolute word in EI i8 entered in the bit string word underformation in EOP, To this end, EOP i8 shifted right by the
~ ~3a

l~Z~767

1 number o blts indicnted by the nbsolute val~e o~ the prev~ous
and current di~ference si~nal contained in ET and ~hen a "1"
bit entry i9 made into the bit strinz ~ord bein~ formed in EOP,
I~, on the oth~r hand, the absolute value in ET is ~
tllan the threshold value 7~ it would be a saving in memory
space to s~7itch ~rom bit string word ~orm to absolute word
form. EBl9-20 is entered During EBl9-20, as discussed
above, logic resets flip flop BSW to 0, indicat~ng an
absolute word form in the hybrid output for the current
absolute s~ord.
The operation during EBl9 and EB26 has already been
discùssed hereinabove. Therefore consider EB21. During
EB21, true signals are for~ed at the following outputs:
P10, G and at thc ollowing pulse at ~g, the U/D flip flop
is reset to an O state, causing the counter to be set to
count up and EB2 is entered. The least significant 4
bits of the 2's complement value in ET are set in CTR.
'~herefore as CTR is counted up it ~ill return to O after -~ -
the number of counts represented by the absolute value of ET. -
During EB22, the content of ET 18 transferred to CTR
and subsequently during EB23 and 24, CTR is counted up
until it finally is recycled to an 0 state, causing a
control sigDal at Co. For each state of CTR, the content
of EOP 18 shifted right by one. When CTR reaches O, the
2S control signal at Co causes the MSB 1ip flop of EOP to b~
set to 1, ther-by pxoviding another occurrencc in the bit
~tring word output and subsequently during EB26~ the 1 bit
i~ shifted into the reglster 114 of EOP, all as described
above.
3a Thus, it should now be clearly understood tbat at EB18,
determining whether the value in ET (the number of bits
~ : '. '
- -88-

o f~
i~z~67
~ .
1 needed in the ne~ct bit str~ng word to enter t~ current absol-

ute ~Jord) is ~7, ~lso determines whether the ENCODE ~DULE
switches ~--om bit string word to absolute string form of
output.
There is at least one occurrence held within the
ENCODE ~DULE that needs to be written out at the end
of its operation~ Therefore, after the calling module has
finished using the ENCCDE ~XDULE, the occurrence being held
must be outputted. The calling module-outputs the remaining
occurrence by setting flip 10p ELAST. Flip flop ELAST
is set by the RE~DLUE K DULE by forming a signal at
R~I9 and by the OUIPUT ~ICDULE by ~orming a signal at 0M18,
either of which cau~es the OR gate 106 to set ELAST to a
1 state. The 1 ~tate of ~LAST causes a true signal at the
lS ELAST output, thereby ind~cating this is the last call
on the ENCODE ~ODULE for the occurrence vector currently
béing converted to hybrid form. The control signal at
the ELAST output occurs when the ENCODE MODULE EXITS during -
the 1 st~te o~ P5, After the control signal at the ELAST
output is formed, a control signal is formed by the
REV~LVE or OUTPUT ~DULE at F~I7 or OM15, thereby causing
the OR ~ste 107 to trigger the ENGO shot multi-vibrator,
thereby causing the ECE flip flop to be set to a 1 state
and hence the AND gate 112 to start providing clock pulses
~here EB27 i8 entered.
During EB27, the true control signals at P5 and ELAST
enable signals being formed at the output of ~witches 116,
representing th- 218 complemient of 8, to be gated through
the EDS7 selection circuit and allow the following signal
3 at CIl~ to load the 219 comolement of 8 ti.e.~ a -8) into ET.
~ .
' ~.
-89-

`!~

~ ~ 7767


1 ~dditionally, the ~rue controL 9 ignal at PS en3bles the
si~nal in ER, representin~ the number o~ binary bits
remalnin~ to be illed (in the bit ntring ~70rd under
formation in EOP), to be ~ated through EDS3 to the
input o~ CTR enabling the ~ame pulse at CLI~ to load thi3
value ~nto CTR, The ~rue signa~ at outputs P5 and ELAST
cause the P8 flip flop to be set to a 1 state, thereby
causing EB13 to be entered. During EB13 and 14, the b~t
string ~ord in EOP is filled out with leading 019 and
ri~ht justiied by shifting the bit string word in EOP
and counting CTR d~n until CTR ~ O. Subsequently, EB15
and 17 are entered where the resultant bit string word is
outputted. Of course, should ER be O and hence the CTR
i8 set to 0, right shifting is skipped, and outputting i~
done im~ediately.
The fore~oing description of the E~CODE ~D~ULE was
made assuming t~ no clipping was to ta~ce place. Only the
OUTPUT ~ODULE enables cllpping to take place If clipping
is to take piace, the OuLrUT ~DDULE initially form~ true
signals which enable the bottom limit register EBL, the
top limit register ETL, and interval registers EIR to be
loaded. To this end, the OUTPUT MODI~ forms a true signal
at OM16 and then a true signal at OMl. The input o~ selection
circuits EDS4 and EDS5 and register EIR are connected to
2S the BL, TL and IR registers of IPRF OE ig.52)~ Thus, the
true signaLs at 0~16 and o~ll cau3e the bottom limit, top
limit and interval value (if an interval value exist~)
to be strobed from IPRF into EBL, ETL and EIR via the load
logic contained in each of these registers. The interval
~3 value i9 only used and, hence, an interval value stored in

-90- ~.
.; ~ '`

c) ~`~
~ l~Z7767

1 the interval re~ister EIP~ i the user ~ es ~o ascertain i~
the ou~put l~e~ in certain intervals. For ex~mple~ i~ the
user were to check the intervals between 35 and 25, and
then agaln between 15 and 5 o~ an occurrence vector, he
speci~ies an interval value of 10. The clipping ~unction
in general forces the output to lie bet~Jeen certain values
set by the user. Thus, the opexat~on of tlte ENCCDE MODULE
i~ to compare the very ~irst absolute word of an occurrence
vector, which of course i9 the highest one, with the content
lO of ETL and EBL. I4 the interval value ls 0, i.e., it is -
not desired to check between different intervals, and if
the current entry lies ou~3ide of either limit, the ENCODE
~XDULE operation EXITS since the value lies out~ide of
the pre~cribed limits. If, on the other hand, ~e interval
- lS value contained in EIR is other thsn 0, this means that
it i8 desired to check bet~een different limits and the
limits contained in ETL and EBL are reduced to new limits
by the interval value in EIR. Then the comparison
between EI and ETL and EBL is repeated using the new
reduced limits. It should be notod that in the example
of the ENCODE M~DULE included herewith, it is only desired
to check for increments in a downward direction. Therefore,
if the current ab301ute ~ord contained in EI iq above ETL,
the ENC~DE IIODULE operation Automatically EXITS without
2S decrementin~.
Conside~ no~ the actual clippin~ and interval function
in the ENCODE ~IODULE. The OUTPUT ~DULE sets oPS~r flip flop,
contained therein, to a i state. ~hen flip flops Pl-Pll
of the control counter 113 are in an O state causing true
3C control signals at the ~ 11 out~uts and the oPsw output
. ..
-91- :

-~ o
liZ'^~67

l has a ~rue signal, ~lle ne~;~ clocl; causes the Pl ~lip 10p to
be set to a 1 ~tate Dur~n~ E~S2, the control~n~l at the Pl
ou~put c~uses ~he ~DSl ~nd ~DS2 ~election circuits to couple
the content o~ ETL and EIn to ~LU I~ the top limit in ETL
is ' the curr~nt absolute word in EI, the current absolute word
i3 out of limit and a control signal is ~ormed at the L output
of ALU and at the following cloclc pulse at CLK, the EOE
flip ~lop is reset to O, disabling the clock to the control
counter 113, resetting counter 113 to 0, causing the
ENCODE ~DDULE to E~IT and firing one-shot E~ND.
If the top limit in ETL is C the current absolu~e word
in EI, a control signal i9 formed at the GE output of the
OR gate 108. A true signal i9 also being formed at the Pl
outpu~ and the combination of true signals at Pl and GE
causes the P2 ~lip flop to be set to a 1 state, thereby
causing EB3 to be entered.
During EB3, the content of EBL is compared with the
content of El. To thi3 end, the true signal a~ P2 causes
EDSl and EDS2 to couple the content of EBL and EIR to ALU.
I~ the bottom limit in EBL i~ the current ab~olute word in
EI, a control signal is formed at the G output of ALU and
EB4 i3 entered. If, on the oth~ hand, the botto~ limit in
EB~ is ~, the current absolute word in EI gate 110 forms a
control signal at LE, causing EB6 to be entered~ The operatlon
followlng ~B6 i8 the same as that described above and need not
be reconsidered here.
However, assume that the bottom limit in EBL is greater
than the current absolute word in EI and a control si~nal i9
fDrmed at the G output~ causing EB4 to be entered. EB4 i9
`3 only shown in the ENCODE ~IODULE flow in order to indicate that -
'.

-92-
,..


~' . , ,, " : ~!, ~. ~ ` , . . ,. . .

~ c~
~ 1~7767


1 ~ decision is made based on ~hether the interv~l value contalned
in EIR is 0 or ~ 0. I~, at the time, t~ue ~i~nals are ~onmed
at P2 and G, the content o~ EI~ i3 not 0, a control signal i9
ormed at the E~ output o~ E m, The true signaL at ~ ~n
coincidence with tlle control signal at P2 and G enables
the P3 flip flop to be set to a 1 state at the foll~ing
clock signal from gate 112, thereby entering EB5
During EB5, the top limit in ETL and bottom limit in EBL
are decremented by the interval value contained in EIR. To
this end, a true signal is now formed at the P3 output,
causing EDSl and EDS2 to couple the values contained in EBL
and EIR to the input of ALU~ thereby causing ALU to form a
decremented bottom limit corresponding to the di~ference
~EBL - EIR). The true signal at P3 also causes EDS4 to
couple the decremented bottom limit at OP to the input of EBL.
The sub~equent signal at ~R causes the load logic of EBL to
store the decremented bottom limit into EBL. Thus, EBL
now contains the previou3 bottom limit value decremented
by the interval value contained in EIR. The true signal
at the P3 output csuses the P4 flip flop to be set to a 1
state at the folloing clock signal from gate 112. The
control signal at P~ causes EDSl and EDS2 to couple the
content o~ the top limit in ETL and the interval value in
EIR to ALU, causing A~U to form a decremented top limit at OP
2S repxesenting the difference (ETL - EIR)~ The control signal
at the P4 output causes EDS5 to couple the decremented top
limit from OP to ETL and the follo~ing signal at CL~ causes
the decremented top limit to be stored in ETL. Thus, ETL -
~:~ now contains the previous top limit value decremented by the
~: ~ interval value contained in EIR. EB2 and EB3 are again
.'

: -93-

-~ 1~'~7767


1 entered ~here the input val~e is a~ain compared, ~his time
wi~h the decrement~d top and decremented bottom limit values
as de3cribed hereinabove

.Example of O~eration
A better understanding of the operatlon of the ENOODE
~DULE will be had with reference to the following ENCODE
~ULE example. During th~ example, it i~ assumed that the
ENCODE ~DULE ~s called six times to convert the ollowing
input entries from one occurrence vector and coded in
absolute form to hybrid form: 125, 123, 119, 116, 114, 100.
To further aid in undexstanding of the invent~on, it is
assumed that no clipping i9 to take place. Although the
clipping funclion i8 an important feature in one aspect
of the invention. Rather than give a complete word
description of the following opration, the opera~ion i8
indicated in symbolic form.




2~
: . ' '"'
~ ',,',.'
-,

~ 30 I
: .
-94-
..
.;,,

"~ o ~
112776 7

Input on the in~tia~ call:
OPSI~ - O , ETL ~ EBL - EIR
EFRST 8 1; E~ ~ 128
EI ~ 125
..
The sequPnce ~ollowed is:
EBl, EB6, EB~ - EB9, EBl9 - EB20
EBl : OP~J = O .-. control goes to EB6
EB6 : EFRST - l:. control goes to EB8
EB8 : EI (125) ~ E~ (128) The input is less than the iso-entrp-
picgram width. Therefore,
control goes to EB9;
EB9 : EFRST ~ ELAST - O reset flip flops;
NOC - O clear number of occurrences;
MAR3 ~ MLN3 - O clear output memory area address
. register and length register;
: EBl9 : ER ~ O indicates there are no remaining
bits ~ft in output register EOP
Here used to force an absolute .
ones index form (AOI) output on
the next call;
BSW ~ O indicates we are in absolute ones
index fonm;


EB20 : EO(125? - EI~125) current input becomes previous
input;
~ NOC(l) o NOC(O) ~ 1 up the number of occurrences
:~ by one;
: ~3 HALT
~ . .
~ -95- ~ .

~ o ~
1~27'~67

1 Output: EOP ~ 0 MLN3 = 0 NOC ~ 1 Memory area blank


second call: EI = 123
EFRS~ - 0 Other parameters remain as for
first call;
Sequence of control: EB], EB6-EB7, EB10-EB13, EB15-EB18,
EB21-EB24, EB23; EB25-EB26, EB20
EBl OPSW = 0 .~. control to EB6
EB6 EFRST = 0 .'. control to EB7
EB7 ELAST s 0 .-. control to EB10
EB10 ET(2) - EO(125) - EI(123) bit distance be ween previous and
absolute word; -.-~
set. U/j ~ 1 .'. CTR to count down
lS EBll ER(0) - ET(2) ~ O the current absolute word cannot
. be placed in the remaining number
of bits in EOP :. control to EB12; .
EB12 ET - -2 kept in 2's complement form; i.e.,
ET = 11111110~ .-
CTR (0~ z ER (0) the amount the output register
must be shifted,if in bit string ~:
form, to keep alignment;
EB13 CTR - 0 .. control to EB15 : .
EB15 BSW - 0 .. control to EB16 .. -EB16 EOPtl25) - EDtl25)set output equal to previous input.:

~- .' '.''.
: -
'' '`

~ 30
: . ;`,~'

~ o
1~27767

l MSB ~EOP) ~ 1 set si8n bit to indicate absolute
word form (AOI);


5 EBl7 Memory write of EOP
MhR3(1) - MAR3(0) ~ 1 pointer to next memory area
address;
MIN3(1) ~ MLN3(0) ~ 1 current physic~l length of output;
EB18 ET(-2) + 7 ~ O :. control to EB21
EB21 Set counter to count-up since the number to be clocked
U/D ~ O to CTR i8 ~ O, must count up
to reach O;
EB22 ER(5) ~ ET(-2) ~ 7 number of remaining bits that can ~.-;
be used in EOP;
CTR(6)~ ET(-2) the counter is loaded from the .-
rightmost 3 bits of the 2'8 ~
complement of ^2, i.e. 1111 ~ : :-
EB23 CTR(7) - CTR(6) ~ ) .control to EB24
EB24 EOP - OXXXXXXX shift EOP`right;
EB23 CTR(O) - CTR~7) ~ O).'.control to E825
since CTR is 3 bit register, adding
a 1 to the 7 causes wraparound to
occur;
EB25 EOP - 10000000 turn on sign bit;
2 BSW - 1 indicates bit strin~ form;
EB26 EOP ~ OlOX~ 9hift EOP right one since sign
bit position is used to indicate
type;
~ ~ . . .
: ~ ~ -'
. ' ,'~':
:-: -97- :.

( ) ~lZ7767


1 E~20 EO(123) - EI(123) ~urren~ absoluto word become~ previous
NOC(2) ~ NoC(l) ~ 1 number o~ occurrences is bumped;
I~LT ~emory ~rea
Output EOP - OlO~YXXX MLN3 ~ 1 NOC ~ 2 llllllOl
X ~ remaining bits to be used


Third Call EI ~ 119 . other paramaters remain the same;
Sequence of control EBl, EB6-EB7, EB10-EBll, EB22-EB24, -
EB23-EB24, EB23-24, EB23, EB25-EB26, :
EB20
EBl OPSW ~ O :. control to EB6 -~
EB6 EFRST - O :, control to EB7
EB7 ELAST ~ O :. control to EB10 :--
EB10 ET(4) - EO(123) - EI(119) ET - bit distance to be
considered;
EBll ER(5) - ET(4) ~ O control to EB22
EB22 ER(l) ~ ER(5) - ET(4) ER - number of bitg left in EOP after
current absolute word process; - -
CTR(4) ~ ET(4) nwmber of positions EOP must be
ri8ht shifted before the sign bit ~:
. i8 set;
: EB23 CTR(3)~-CTR(4) ~ 0). control ~o EB24 ::
EB24 EOP - OOlOXXXX `
2 EB23 CTR(2~t-CTR~3) - 1 (fo) ,~ control to EB24 : ;
EB24 EOP - OOOlOXXX ;-
EB23 CTR(l) - CTR(2) - 1 (~0) ,',control to EB24 ;~
EB24 EOP ~ OOOOlOXX
EB23 CTR(O) ~ CTR(l) - 1 (-O) .'. control to EB25 - .
. ," .
~3
. ...
: -98- ;~`



~ ~ .

~,~Z7

1 EB2S EOP ~ 100010X,Y se~ on tho mos~ significant blt;
BSW - 1 indicate bit string,;
EB26 EOP 8 0100010X shift EOP righ~;
EB20 EO(ll9) ~ EI(llg) current absolute word become~ prevlous
NOC(3)~NOC(~) + 1 bump the number of occurrences;
}~9LT
Memory Area
OUT EOP - 0100010X ~LN3 - 1 N0C - 3 11111101 .

. .
Fourth Call EI - 116 All other parameters remain the same; ~-
Sequence of control EBl, EB6-EB7, EB10-EB14, EB13,
EB15, EB17-EB18, EB21-EB24, EB23
EB25-EB26, EB~.0;
EBl, EB6, EB7 same as before;
EB10 ET(3)~-- EO(ll9) - EI(116) obtain bit distance;
EBll ER(l) - ET(3) (< 0) there are not enough bits to
control to EB12 process this entry using
current information in EOP;
EB12 ET(-2)~ER(l) - ET(3) ET - 11111110 in 2's complement
form;
CTR(l) ER(l) number of positions that EOP must
be shifted to keep alignment; :
EB13 CTR(l) ~ 0 :. control to EB 14
2 EB14 CTR(0) - CTR(l) - 1
EOP ~ 00100010 ri8ht shi~'c EOP;
EB13 CTR(0) - 0 .: ~ontrol to EB15 ~ .
EB15 BSW ~ . control to EB17
. ~,



:: _99_

z7767

EB17 write EOP to memory
MAR3(2)~--MAR.~(l) + 1 next memory address;
MLN3(2)~-- MLN3(1) ~ 1 physical length of MemOry area;
EB18 ET(-2) ~ 7 (~ 0),', control to EB21
5 EB21 set U/D = 0:. CTR to count up
EB22 ER(5) = ET(-2) + 7
CTR(6)~ --ET(.-2~ CTR = rightmost 3 bits of
2's complement ET = 11111 ~ ;
EB23 CTR(7) = CTR(.6~ + 1 ~0~ , control to EB24
EB24 EOP = OOXXXXXX shift EOP X = remaining
usable bits for EOP;
EB23 CTR(O) = CTR(7~ + 1 (=0~ 3 bit register - therefore
control to EB25 wraparound on the add;
EB25 EOP = 10XXXXXX set sign bit in EOP;
BSW = 1 indicate bit string form; :
EB26 EOP = 010XXXXX shift EOP since sign bit -~
indicates type; ~.
.

EB20 EOC116) = EI(116~ previous unput is replaced by :
the current; :~.
NOC(4~ NOC(3~ + 1
HALT :
Memory Area :
Ou~put EOP = 010XXXXX MLN2 = 2 NOC = 4 11111101
00100010
':
,.

~

-- 100 --

,

~127767
1 Fifth Call El z 114 remaining parameters remain
-
the same;
sequence o control EBl, EB6, EB7, EB10-EBll,
EB22-EB24, EB23, EB25-EB26,
EB20;
EBl, EB6, ~B7 ' same as before;
EB10 ET(2)t EO(116) - EI(114) bit distance; -
set the counter to.down
EBll ER(5) - ET(2) ~ 0 . control to EB22
EB22 ER(3) - ER(5) - ET(2) update the remaining;
CTR(2)~ ET(2) number of bits;
EB23 CTR(l) - CTR~2) - 1 (~0).: control to EB24
EB24 EOP - 0010XXXX shift EOP right;
EB23 CTR(0)~- CTR(l) - 1 (-O):.control to EB25 -
EB25 EOP ~ 1010XXXX set sign bit of EOP;
BSW - 1 indicate bit string form;
EB26 EOP ~ 01010XXX shift EOP;
EB20 EO(114j ~ EI(114)
NOC(5)~NoC(4) + 1
HALT
Memory Area ;;
Output EOP - 01010XXX MLN3 ~ 2 NOC - 511111101
I 00100010


.'

. ..
: .
~ ~3




~, -101-
~:


~1: ' ` , . ' ' .,'' ' : ;1 .', ~ .

o (~

1~2~767
Six~ll Call El - 100 all other p~rameters remaln
the same;
sequence of control EBl, EB6-EB7, EB10-EB14,
S EB13-EB14, EB13-EB14, EB13,
EB15, EB17-EB20; :
EBl, EB6, EB7 same as before;
EB10 ET(14)~--EO(114) - EI(100) . - ~
set U/D = 1 :. CTR to count down : -
! 10 EBll ER(3) - ET(14) (<O) :, control to EB12
EB12 ET(-ll)~--ER(3) - ET(14) ET in 2's complement form;
CTR(3) - ER(3) number of positions EOP mu~t ; ~.
be 8hifted to keep alignment;
EB13 CTR~8) ~ O :. control to EB14 :-.
EB14 CTR(2) ~ CTR(3) ~
EOP ~ OOlOlOXX ~- .
EB13 CTR(2) ~ O :.control to EB14 ~-
EB}4 CTR(l) ~ CTR(2) - 1 .
EOP - OOOlOlOX
20 ¦ EB13 CTR~l) f O .: control to EB14
EB14 CTR(O) - CTR(l) - 1 -
EOP - 00001010 ~ :
EB13 CTR(O) ~ O :.control to EB15
EB15 BSW - 1 ., control to EB17
~S EB17 write memory EOP -
MAR3(3) ~ MAR3(2) + 1
NlN3(3) - MI.N3(3) ~ 1 ~
. .. .

~3
,.



-102-

o
~z7~6~

1 EBlS ET(~ 7 < O :.control t~ E~19
EB19 ER = O assure next call will wrlte;
BS1~1 - O current ab~olute word to be in
absolute word form;
EB20 EO(100) = EI(100)
NOC(6)~ 0C(5) + 1
HALT
. . ..

Memory area
Output EOP = O MLN = 3 NOC ~ 6 11111101
00100010
00001010
Seventh call set ELAST 3 1 all other parameters remain
,.--

the same;
sequence of operation EBl, . EB6-EB7, EB27, EB13,
EB15 -EB20;
. EBl, EB6 same as before;
EB7 ELAST = 1 . control to EB27
20 EB27 CTR(0) = ER(0) in case we are in bit string;
ET ~ -8 . assure proper balance at
EB18;
. EBl3 CTR(O) - O .control to EBl5
EBl5 BSI~ - O , control to EB16 : -
2S EB16 EOP~100) ' EO~100) prepare the output;
set sign bit o~ EOP indicates absolute woxd type;
EB17 write EOP
MAR3(4) MAR3(3) -~ 1 next address;
MLN3(4) MLN3(4) ~ 1 length;

:

-103-

... ~ 1127767

1 ¦ 13Bl~ ET~ 7 < O ,-, control ~o EB19
¦ EB19 El~ z O these are meanin~less
¦ BSI~ ~ O ste~s on the last time
¦ EB20 EO(100) - El(100) throu~h - notc that NOC
5 ¦ is not incremented this time;
¦ HALT
¦ Memory area ::
¦ EOP z O MLN3 = 4 NOC = 6 11111101
I 00100010 . -.
10 I 00001010 ,.'' ;'',
I 11100100 .. ':.`''




. .




~3
:: '.: '
-lOq-
.. ."

~ 67

1 In su~nary, ~7!1~ h~ been disclosad i9 ~n encoder Eor
convertin~ ~o hybrid Eorm a received series OL absolute ~qord
signal3 of decreasin~ value order. The hybrid ~orm ha~ a
series o at least one absolute ~rd si~nal and bit string
~Jord signal. An absolute word signal represent$ t~ value
of one occurrence by tl~ combination OL binary coded bit
signals. A bit string word signal represents one occurrence
by the nu~ber of bits of displacemen~ o a bit of predetermined
value therein from an absolute ~ord signal in the hybr~d
10 word series. Means include the ALU, EDS2, EDSl and control ~;
counter 113 operative durin~ EBl~ in response to received
previous and current absolute word signals for forming an
output signal indicative of the difference in value
therebet~een. The previous and current diferent signal is
formed at the OP output of A W and i8 stored in ~T.
Additionally, there is me:ns including ET and the control
counter 113 for reta~ning the previous and current difference
signal. This occurs at EB10.
The encoder al~o ~ncludes means for indicating
ab~olute or bit string word form of hybrid output and
includes means, lncluding the switches tO4, for indicating
a preselected minimum permitted d~fferenre (e.g. 7)
between ~ucces~ively received word signals. Such means
includes ALU, EDSl, EDS2 and the control counter 113 for
comparing the mlnimum difference indication and the retained
previous and current difference signal and or indicating the
first being~ than or f- to the la~ter.
The encoder also has means ~ r providin~ absolute form ~~
outputs such means including the EOP load and shift logic, the
`3 BSW and its set and reset logic and the control counter 113 `~
:.

.i-105- `:

~Z7767

1 oper3~1ve in rcsponse t:o the ' indicQ~lon ~or ol~tp~ lnr, tlle
stored curren~ absolute ~ord and an ab~olute ~la~. This
operation t~lce3 place durin~ EBlS-20, 10-17.
The encodex ~150 include~ means i~or providin~ bi~
s~rin~ form outpu~s and ha3 means includin~ e EOP, CT
and i~cs load and control logic, EDS2, EP~, EOP sliift log~c,
~ISB set lo~ic and the control counter 113 which are responsive
to the ~ indication for forming a set of ordered si~nals
comprising a binary bit o~ one value (e.~., 1) associated
~ith the number of binary bits of a second value (e.~., 0)
corresponding to the value of the retained previous and
current difference signal. It will be seen that the operation
i8 depicted by EB21-25. The means ~or providing bit string
~orm outputs also includes means includin~ tke clock and
the control counter 113 for selectively outputting the se~
of ~ignals in association with a bit strin~ fla~. The binary
bit of one value in the bit string form otput i8 in a
predetermined relation to the outputted absolute word.
In this re~ard, the number of bits of displacement between
a bit of the one value and an absolute word indicates the
value of the one bit.
A pre~-rred embodiment of the encoder has a current
such as regist-r EI for storing a currently received absolute
~ord. Means including EDS6 control logic ~tores received

2S absolute words into the current register EI. A previou~
re~ister E0 is provided for storing a previously received
absolute word. Means including the E0 control lo~ic and
the control counter 113 tran~fers ~he current absolute word
~rom the current re~ister to the previous re~ister, ormins
3 therein the previous absolute word. This is accomplished at EB20.
. :~.
~."-


-106- ~
1:

1~27767

1 A ~u~ er pre:~er~ed ~mbodiment oE the encoder provide~
llybrid form outpu~ in a series of ~10rds. The means ~or
formin~ a set o~ ordered si~nal~ includes coun~er me~n~ CTr~.
CTR h~9 output Co :~or indicating compLetion of coun~ing.
A ~it strin~ word ~orr.lin~ register EOP is provided and
means including CTr~ load and control logic and EDS2 is
operative durin~ EB21-24 in response to the ~ indication
for enabling the counter means to count through a sequence
of states corresponding in number to the retained current
and previous difference signal contained in ET.
The indicatlon at output Co from CTR indicates
completion o the last-mentioned counting Additionally
included is means including EOP and i~s shift logic and
control counter I13 operative during EB21-25 for
shifting tb content of the bit string forming register one
bit ~osition in the direction of the mo~t significant bit
thereof for each of the last-mentioned counter means states.
Additionally included i8 means including the ~SB flip flop
and its set logic and the control counter 113 which i9
operative during EB25 in resPonse to the last-mentioned
completion indication at Co for inserting a binary bit
signal of predetermined value ~e.g., 1) at the least
signiicant nd of the content of the bit storing register EO.
By this me~ans, occuxrence i8 entered in the hybrid form word
2S output. The means or outputting additionally comprises
¦ mean~ including the P9 logic and the control countar 113
operative during EB17 for selectively outputtin$ th content
of the bit stxing word fonming register by forming a signal
at the P9 output, indicating that the word-in EOP is now
3a ready for output.

-107-
:~ `'''':':

~127767

1 ~n ad~ition~l ~re~rred embod~men~ o~ ~he encoder,
accordin~ ~o the invention, is a bit strin~ forlnin~ mean~
whlch has means ~or enterin~ a ~irst occurrence ln a new
bit string ~ord under forma~ion. Included in the last-
mentioned means is means ~R) for storin~ a signal representin&
the number of binary bits remaining to be filled in the bit
string word ~orming register EOP. ~lso included is combining
means including the ALU, EDSl, EDS2 and the control counter 113
operative during EBll for forming a signal representing the
dif~erence between the values of the remainin~ number of b~Erybit
to be filled signal and the previous and current difference
signal. Additionally included is means including the ALU,
EDSl, EDS2 and gates 108 a~ 110, and the control counter 113
operative during EBll for comparing the values of the
- 15 previous and current difference signal and the remaining
binary bits to be filled signal for indicating that the
value of the first signal is ~ (OE) than or ~ ~L) than
the latter signal. Additionally included is means including
ET, EDS7 and the control counter 113 operative during
EB12 in response to the ~ thsn indication at L for
retaining the diference signal in ET from the combining
means as the number of bits needed in the next bit string
word to enter a current absolute word.
Means including the CTR load and control logic and
EDS2 is operative during EBll, 22-24 in response to the
than indication at GE or enabling the counter means to `
count through a sequence of 8tate8 corresponding in number
to the retained number of bits needed in the next bit ~trin~
word signal contained in ET. It should be noted that the
3 foregoing operation occurs when, during EBll, the retained


-108-

~ 7767


1 numl~er o~ bits need~(l in ~he ne~t ~lt strin~ word contained
in E~ is ~ than the previous and current di~crence sl~nal
contained in ET. ~lso inclu~ed i9 the EOP shift control
1ogic, the control counter 113 for shiftin~ the content
o the bit string orming re~ister EOP one bit position in
the direction o~ tk most sign~icant bit contained therein
for each of the last mentioned counter means states.
t~eans including ~B and its set logic and the control counter
113 are operative during EB25 responsive to the completion
signal at Co for inserting bit signal of predetermined
value (e.g., 1) at the least significant end of the
content of the bit string register EOP.
A further preferred embodiment of the encoder has a
bit string forming means which includes means for filling
out the bits of a bit string word being formed when no
further occurrences can be entered therein. Included
therein is means ER for storing a signal representing the
number of binary bits remaining to be filled in the bit
string word being formed. Combining means including ALU,
EDSl, EDS2 and the control counter 113 i5 operative
during EBIl for forming a signal representing the differences
between the value o the remaining number of binary bit~
to be filled signal, contained in ER, and the previous and
current difference signal, contained in ET. Additionally,
there i9 means including ALU, EDSl, EDS2, gates 108 and 110
and the control counter 113 operative during EBll for
comparing the value of the previous and current difference
signal and the remaining binary bits to be fitled signal
; for indicating that the first is ~ than ~r ~ than the
~ ~3 la~ter

.,
-109-



~ ~ ' " ~

-
~Z~67

Means including the CTR load and control logic EDS ~nd
EDS2 is operative during EB12-14 in response to the < than
indication for enabling the counter means CTR to count through
a sequence of states corresponding in number to that
indicated by the value of the stored remaining binary bits
to be filled signal contained in ER. Also included is means
including the EOP shift control logic, the control counter 113
operative during EB13-14 for shifting the content of the bit
string forming register EOP one bit position in the
direction of the most significant bit thereof for each of
the last mentioned counter means states.
According to a preferred embodiment of the encoder,
clipping means is provided. Included therein is means
including ETL and EBL for storing an upper limit value and
a lower limit value. Means including ALU, EDSl, EDS2 and
gates 108 and 110 are operative during EB2-4 for comparing
a current absolute word with the upper and lower limit
values and for indicating if it is out of the bounds defined
by the limit values.
According to a further preferred embodiment of the
encoder, an interval adjusting means is provided along with
the clipping means. Included is means EIR for storing an
interval value. Means including the ALU, EDSl, EDS2, EDS5,
gates 108 and 110, and control counter 113 is operative
during EB5 in response to the indication that the current
absolute word is out of bounds for incrementally changing
the stored upper and lower limit values in EBL and ETL
by the stored interval value in EIR. In the specific example
shown, the incremental changing is a decrementing action.
Also included is means for enabling the comparing means to

-- 110 --

~27767

repeat the comparing, uaing the incrementally changed upper
and lower limit values and current absolute word.

III. DECODE I MODULE
S A, General Description
The DECODE I and II MODULES are internally similar.
The difference lies mainly in the input and output signals.
This section is devoted to the DECODE I MODULE. The next
section will discuss the differences in the DECODE II MODULE.
The purpose of the DECODE I MODULE is to convert to
absolute word form a series of received occurrences in a
hy~rid word. The occurrences are of decreasing value and are
coded in hybrid form. Thus, the DECODE I MODULE con~erts
information in the opposite direction from that of the
ENCODE MODULE. The hybrid coded form comprises a series of
binary code words, including at least one absolute coded -
word followed by one or more bit string words and/or absolute
words. Each absolute word represents an occurrence directly
in coded form. Each bit string word represents an occurrence
by the number of bits of displacement of a bit of a predetermined
value from either an absolute word or another one of such
bits bf predetermined ~alue in th~ series of hybrid words.
Additionally , each hybrid word has a flag indicating
whether it is an absolute or bit string type of ~ord.
~he DECODE I MODULE operates in response to a call b~
a calling module. The possible calling modules for the DECODE
I MODULE are: PIPE, SEED, REVOLVE, ~RIGHTNE5S~ OUTPU~ MODULE5
and the DPM INTERFACE MODULE. In general terms, the DECODE I
MODULE decodes a hybrid word by reading it from the MEMORY MODULE
and if the flag bit indicates the word is an absolute word,
;,'.
- 111 - .

,, .

~' ()
~ z7~67

1 the DECODF. I MO~UL~ outputs the word, passîng it directly
to the calling module. The DECODE I MODULE saves the
absolute word which has been outputted and then reads another
hybrid word from the MEMORY MODULE. If the flag bit indicates
that the new word is a bit string word, then the bit string
word is stored in a shift register and shifted until a "1"
bit ~bit of predetermined value) is shifted out of the register. -
With every shift, the previous absolute word value is
counted down and each time a "1" bit is shifted out of the
N shift register, the state of the counter is outputted
as the absolute word.
. . ,:' .
B. Components
The DECODE I MODULE includes counters MARl, MLNl, DOl,
and BCTRl. Counter MARl is a 256 state counter of type
SN74161 in the above TTL book. Counter MLNl is formed of an
SN74191 type counter disclosed at page 417 of the above TTL
book and counts up responsive to each true signal applied
at the Ct input. The MLNl counter i~ also set to a state
corre~ponding to the input signals applied at its upper ~ide
responsive to a true signal at the ~ or load input. Internal
gating (not shown) forms a true signal at Mo *hen the MLNl
counter i5 at state 0. Counter BCTR is an 8 state counter.
Counter DOl is an 8 bit 128 state counter. Both counters
BCTR and DOl are formed of an SN74191 type cou,nter disclosed
at page 427 of the above TTL book. These counters operate as
follows: a true signal at the CLR input resets the counters
to state 0, a true signal at the ~ input causes the counters
to be set to a stato represented by the information input
30 .
'~

, -112-

i~Z7767


1 signals appli~d ~t ~ts upper input. Each true slgnal at the
Ct input causes the counter to count up one state. Counter
BCTR has logic (not shown) ~or ~ormin~ a true outpu~ si~nal
at ~ and Bo when the counter is at state 0 and not at state 0,
respectively,
~ lso included in the DE00DE I M0DULE is an INRl register.
Contained therein is a shift register 20?. The shift register
202 is a 7 binary bit storage register for~ed ofthe type
SN74199 disclosed at page 456 o~ the above T~L boo~, -
The DECODE I MODULE also includes flip flops Pl through P5,
forming a control counter 213, and flip flops DlFST, EOFl,
DlSW, DlFND, MSBl, SlFF and D OE . Each of these flip flops
is formed of type SN7474 disclosed herein in section I.F,
Conventions Used in the Figures.
One-shot multi-vibrator~ DlG0, Dl~ND are also provided. -
Each o~ these one-shot multi-vibrators i9 characterized
whereby a true signal applied at its input causes the indicated
output to receive a true signal for a time period equal in
length to the time period between the beginning o~one
clock pulse and the beginning of the next clock pulse at CLK.
The DECODE I ~DULE includes a source o~ equally spaced
recurring clock pulses 240.
m e DECODE I ~DULE also includes the necessary logic
to control the various regis~ers, flip flops and counters
2 as indicated by logical equations using th notation indicated
hereinabove with respect to the ENC0DE ~DDUL$, In addition,
specific AND gates 216, 218, 220, 222 are shown and OR gate~
224, 226, 228, 230, 234 and 235 are shown. The AND gates
218, 220, and 222 are actually indicated,schematically and
3 comprise eight individual ~ND gates (not shown) ~or gating ;-
:,
-113- ;
. ..

~;Z77~;7

1 eigll~ bi~s o inorm~10n tll~o~zh ~o ~he correspondin~
ou~put9 from ~he indicated source o~ in~orm~tion 210ng the
heavy line inputs. The second input to each of tlle ei~ht
AND ~ates wi~lin AND ~a~es 2J8, 220 and 222 i9 connected
to the indicated con~rol logic indicated by lo~ical equations.
The output of the AND gates within each of the AND gates
2l8, 220 and 222 are OR'd togetIler by the 0~ gate 226 and
provided as an eight binary bit information input to the
MLNl counter.
Ths res~ of the AND and OR gates are also conventional
gates well known in the computer art and need no urther
explanation other than that provided in the following
detailed description.
The output of AND gate 216 is indicated by the symbol
CL~ corresponding to clock. The output of an inverter 232
i~ indicated by the symbol ~R corresponding to the logical
inverse of the clock signal CLK simila~ to the ENCO~E M~DULE.
The required input and output control llnes to the
DECODE I MODULE are indicated along the right hand side of
Fig. 9; also indicated along the right hand side of Fig. 9
are the in~orma~ion input and output circuits using the
syste~ of notat~on described hereinabove.
Referring to the right hand side of the DECODE I M~DULE
figure, the information inputs to the DEOODE I MDDULE are
2S shown in h-avy lines and are LNl from IPRF, MLN3 from
the ENCODE MODULE and ORT2 from the OUTPUT MODULE. The
output from the DECODE I MODULE i~ from the Dol counter
~eavy line), the EOFl output of the EOFl flip flop, the
I ~ DlM~ND output of the one-shot multi-vibrator Dl~ND, and
.: :.
~ ` 30 I the output of a gate represented by the logical equation P2-DlSW.
. . ,'.
-114-

~Z7767

1 The inEormation ou~put ~rom ~he Dol counter i9 the absolute
words that have been decoded ~roln hybrid ~orm. The si~na~
~t DlMEND indicates ~he completion oE each resultant
absolute word in the DOl coun~er, ~hereby indicatin~ ~o the
calling module that it can read the ~bsolute word from Dol.
A true signal at the EOEl output indica~es that the number
of hybrid words, and hence the length o~ the memory area,
indicated by the words stored in the ~LNl counter, have been
converted and therefore the hybrid occurrence vector has
been completely decoded.

C. Detailed Descri~tion
Table 13 gives the symbols for the important counters,
registers and ~lip flops in the DEOODE I ~DDULE o Figs. 9
and 10 and $ndicates the length thereo and the primary
output of the DECODE I ~DULE. Table 11 shows the primary
inputs. Fig. 11 i8 a flow chart indicating the sequence of
operation of the DECODE I MODUIE using similar notation to
that described hereinabove with respect to the ENCODE ~DULE.
Reference to the DECODE I 2~ULE flow diagram should be made
in reading the following description to aid in a complete
understanding of the present invention.
Similar to the ENCODE ~DULE, the OR gate 234 is
responsive to an initial signal applied at MINIT by the
2S M~NI COMPUTER to apply a true signal to the resetting input
of each o~ the flip 10ps Pl-P5, resettlng them to 0. Also,
OR gate 235 responds to the MINIT signal or initially
resetting the DCE ~lip 1op to 0.
The DECO~E I ~DULE, a8 mentioned above, is called
3 by any one o~ the following modules: PIPE, SEED, r~EVoLvE,
~ -:

-115- ~

~127767

1 ~r~GHrNE:SS, ourwr ar~l INIl~'l~CE:. The MINI COMPUTER, as later de~cribed
thro~gll tlle DPM INT~r~FACE MODULE or one of ttle o~:her ~odules
stores in~o one area of ~he ME~ORY MO~ULE a llybrf.d coded
occurrence vec~or. This hybrid coded occurrence vector i5
to be conver~ed ~o absolute coded occurrence words usin~ the
DECODE I MODULE (and/or DECODE II l~lODULE). A calling module
initializes the DEOODE I MODULE by placing the number of
words (length) of the hyb.id form occurrence vector to be
converted into the MLNl counter and by setting the DlFST flip
flop to a 1 state, indicating that the first call to the
DECODE I M~DULE is occurring.
The length o~ the occurrence vector i5 provided to the
DEOODE I MODULE rom different sources according to the
calling ~odule a~ follows: PIPE ~ICDULE - LNl from IPRF;
SEED ~ODULE - LNl . from,IPRF; REVOLVE ~DULE - MIN3
counter ~rom ENCODE ~DDULE; BRI~ITNESS MDDULE - LNl from IPRF; : -
OUTPUT ~IODULE - LNI from IPRF or ORT2 re~ister in OUTPVT
MoX~E; o~xæ MoDULE - INl from r~; rNn~EP~S M~X~E - LNl from r~F. ~',
loadhg MLNl is as follows: a true signal applied by the ,.
OUTPUT ~DULE at 0Ma6 or OM17 causes AND ~ates 218 and 222
and OR gate 226 to couple the length value from LNl of IPRF '
and ORT2, re~pectively, to the in~ormation input o the
MLNl counter. The CHANGE ~DULE load~ the MLNl counter and ',-
the SEED'M~DULE calls the DECODE I ~DULE. To thi~ end,
the CHAN OE MCDULE applies a true sienal at the C~14.output,
causing the AND gate 218 and the OR'gate 226 to couple the
~:~ length value from LNl of IPRF to the lnformation input of ,,
the ~ ~ 1 counter. The SE$D ~DVLE applies a true signal at
the SM2 output which causes the AND gate 218 and OR ~ate 226
3 to couple the length o~ occurrence value rom LNl of IPRF to
'-':' .
~ -116-
, . .

~1;~767

tl~ information input of the MLNl counter. The REVOLVE
MODULE appli~s a true signal at RM14 to cause gate~ 220 and
226 to couple the length of occurrence value from counter MLN3
of the E~CODE MODULE to the information input of counter MLNl.
One of the REVOLVE, SEED, OUTPUT, PIPE, BRIGEITNESS, and
DPM INTERFACE MODULES then sets the DlFST flip flop to a 1 state
via OR gate 228 by applying a true signal, respectively, at the
corresponding output Pll, RM2, SM4, B3, OM21, and DlI which, as
indicated above, indicates that the first call of the DECODE
I MODULE is occurring.
Subsequently, the calling module triggers the DlGO
one-shot multi-vibrator, causing it to apply a control pulse
at its DlGO output. DlGO is triggered by the gate 230 which
receives its control pulse from one of outputs P13, SM6,
RM4, B5, and DlGO. -
A true signal at output DlGO sets the DCE flip flop to
a 1 state, causing a true signal at the DCE output which, in
turn, enables AND gate 216 to couple clock signals from the
clock 240 to the CLK output. Similar to the ENCODE MODULE,
the inverter 232 forms the logical inverse of the clock
formed at CLK at its output at CLK.
Since all of the flip flops of the control counter 213 --
are initially reset to zero, true signals are now formed at
the outputs ~1, P2, ~, P~ and P5 and the clock pulse at CLK
causes flip flop Pl to be set to a 1 state and DlBl of the
DECODE flow is entered.
I During DlBl, the state of the DlFST flip flop is checked,
assuming that this is the first call on the DECODE I MODULE.
The DlFST flip flop is in a 1 state, causing a true signal at
the DlFST output. Additionally, the Pl flip flop is in a
~ -,
- 117 -

~:, `' '.
. ,~
..

~ . , ".. ,! ., .

1 s~e. ~cco~tlin~,ly~ Dl~2 o~ e D~COD~ I ~IOD~ R ~0~1 is
entered ~hare t:he true si~nal3 n~ Pl, DlFST ~nd ~C cause
the DlSI~ 1ip ~lop ~o be reset to a 0 state. Tlle cloclc pulse
at C~ in co~h~n~on wi~h the true signals a~ the Pl and
DlFST outputs causes each of ~he DlEND, DlFST and EOFl
fLip lops to be reset to an O state and cause the ~ARl
and BCTRl counters to be reset ~o an O state. Additionally,
the clocl; at CLK in coincidence witl the true si~nal at
output Pl causes flip flop P2 to be set to a L state and
flip flop Pl is reset to an O state.
The DlFST, EOFl, DlSW and DlEND 1ip flops have been
reset at this time or the ~ollowing reasons. The DlFST
flip flop is reset at this time to indicate that the
resetting operatbn during DlB2 has been completed. This
is the only function of the DlFST flip flop. EOFl is reset
at this time to indicate that the hybrid ~rds in tl~
occurrence vector have not been co~pletelg conver~ed.
The DlS~J flip ~lop is used to indicate within the DECODE I
MDDULE that a ME~RY ~IODULE read i~ necessary. The 0 state
of the DSW flip flop indicates that a read from ME~ORY ~IODULE
i8 necessary to obtain a hybrid word. This ~ill subsequently
take place during DlB5. ~ l state of the DlSW flip lop
i8 used to indicate that a read is unnecessary and, as will
be explained subsequentlg, DlB5 is skipped when DlSW is in a
l state. The DlEND flip lop i9 an internal flip flop and,
when set into a l state, indicates to the DECODE I MO~ULE
that after conversion o a hybrid coded occurrence vector
the last abso1ute word has been ou~putted or passed to the
calling module. To be e~:plained in more detail, when the
DlEND ~lip f10p is set to a 1 state, any subsequent call on the
DECODE I ~ ULE by the callin~, module will ~orce the DECO~E I

J.~27767

1 ~DU~E ~o orm an end oE ~ile indica~ion ~y se~tin~ ~hc
EOFl ~lip flop to a 1 st~e.
Follot~inz DlB2~ DlB3 i9 entered, Durin~ DL~3, tlle
P2 1ip Elop i5 in a 1 sta~e and the Dl~ lip ~lop i~
S checked. If durin~ DlB3 the DlEND flip flop i5 in a 1 state,
whicL~, as discussed above, occurs when tle callin~ module
provides the last word of a hybrid occurrence vector, DlBl9
of the DECODE I ~IODUL~ flow is entered. - ~ -
The action of the clock suspension logic should now be
noted. The true signals at P2, DlEMD and ~-K reset the D~l
counter to O and cause the clock suspension logic 222 to
for~ a true signal at the OR gate 235 causing it to reset
the DCE flip flop to O and trig~er the one-shot D~;~MD.
Resetting of the D OE flip ~lop to an O state removes the
true si~nal at output DCE and causes the A~D gate 216
to remove the cloclc signals at CLK, thereby causing the
DECODE I ~DULE operation to EXIT and await the next call -~
on the DECODE I ~DULE. The one-sl~ot Dl~END then orms a
true signal at output Dl~ND which causes 0~ gate 234 to
reset flip flops Pl-P5 to 0. The subsequent operation caused
by the DlEND flip flop being in a 1 state will be ~further
described hereinafter.
The above action o the clock suspension logic 222
i9 important and should be kept in mind as a similar action is
2 enabled by th- clook suspension lo~ic when any one o the `~
other logic conditions indicated ~or the cloclc su~pension
logic 222 beco~e3 true.
Assume that during DlB3 the last word of a hybrid ;~
occurrence vector has not been provided, and the DlEND 1ip 10p -. `
3 is in an 0 state, causin~ a true si~nal at the DlEWD output.
: ` . . .~

o ~
~ 767

1 Dl~ is entered ~ ere ~he stal.e o~ tlle DlS~ flip ~lop in
clleclced. It ~Jill be rec~led tLlat the DlS~J ~lip ~lop in a
1 state lnclicates th~t ~lle ~ ORY ~DULE re~d operation is
~o be ~kipped, whereas i in an O state~ causes a ~rIO~Y
~ODULE read. Assume ~hat the DlS~l ~lip ~lop i~ in an O state.
DlB5 is entered where the me~nory read actually talces place
An input to the DECODE I ~DULE i5 ~he SM10 output o~
the SEED ~ULE. To be e:~.plained in more detail, the SEED
~IODULE uses the DEOODE I ~DULE when computing the number o~ -
lines to be skipped in an iso-entropicgram. However, the
SEED ~DULE when computing the lines to be skipped, does
not require the length value in counter ~nLNl to be decremented
~ccordingly, the SEED ~IODULE normally orms a true signal at
output SM10 but removes the true signal when computing the
nu~ber of lines to be skipped, thereby inhibiting counter
from being decremented~
However, for the present description, as~ume that a true
signal i3 formed at s~no. True signals are also formed at P2
and bls~. Therefore the ~DLNl counter receives a true ~ignal
at i~s Ct input, causing ~ ~ 1 to be counted down one state
reflecting the fact th~t one word of ~he hybrid occuxrence
vector is being read from the ME~RY MODUIE. The logic
P2-~51~-~ being true causes a true signal at the Ct input
of ~P~l, causing ~ARl to be coun~ced up one ~tate, reflecting
2 the ac~ tha1: the next word o~ the hybrid occurrence vector i3
to be addressed in the ~ lO~Y ~DDU~E. The true signals at P2
and ~ cause a true~ si~nal to be formed at the D~ll output ~ -
of the DECODE I ~DULE~ thereby ~ignalling the ID~20RY ~i~DULE,
caus~n~ it to read out the content o~ the proper memory area
3 speci~ied by the SWITCU ~ TRIX at the memory location speciied
in ~:he ~ r~l counter prior to its being counl:ed up.
: -120-

~lZ7767

q~ control signal at P2 enablcs the 8 bit word read-out
of thc M13MORY MODUIJ~ to be stored into the INRl register.
The tru~ signal at P2 causes the most significant bit (8 bit)
o the word read from the memory to be stored in the MSBl
1ip flop. The true signal at P2 also goes to the S/L input
circuit for the shift register 202 causing the remaining 7
bits of the word from the MEMORY MODULE to be loaded into
the register 202 when the clock signal is applied from logic
P2-DlSW-CLK. Accordingly, at the end of DlB5 of the DECODE
I MODULE flow a hybrid word has been read from the MEMORY
MODULE from the appropriate memory area and has been stored
in the INRl register and the MLNl counter has been
decreased by one so that the length of occurrence vector
contained therein indicates the remaining words to be read
from the MEMORY MODULE.
Assume now that the word stored in the INRl register
is an absolute hybrid word. It will be recalled that the
first word of every hybrid occurrence vector string will
always be an absolute word. When the word stored in INRl is
an absolute word, the flag bit, the most significant bit -~
of the hybrid word, is stored in the MSBl flip flop and
causes the MSBl flip flop to be in a 1 state. With the
MSBl flip flop in a 1 state, true signals are formed at the
MSBl and P2 outputs. Accordingly, the P5 flip flop is set to
a 1 state and DlB8 is entered.
A true signal is formed at the P5 output and the following
pul e at CLK causes a true signal at the L input of the DOl
counter, causing the 7 bits in the shift register 202 of the -
INRl register to be loaded 1nto the DOl counter. The true
signal at P5 in coincidence with the pulse at CLK enables the
- . . .
; - 121 -

,; ~ ' ',

~Z7767

c]ock suspension logic -222 to reset the DCE flip flop
to an 0 state, thereby disabling the clock at CLK out of
the gate 216 and resetting counter 213. An EXIT is taken to
await the next call. The next call is initiated by a control
signal, as described above at one of the inputs to OR gate 230.
If, during the true signal at P2 the word in the INRl
register read from memory is a bit string word, the MSBl
flip flop is in an 0 state and true signals are formed at
the MSBl and DlSW outputs and the P3 flip flop is set to a
l state, thereby causing DlBll of the DECODE I MODULE flow
to be entered.
At the beginning of processing of each bit string
word of a hybrid occurrence vector, the BCTRl counter is in
an 0 state having been set there at DlB2. Therefore, during
the first entry into DlBll of the DECODE I MODULE flow, the
BCTRl counter is in an 0 state. Accordingly, a true signal
is formed at the Bo output of the BCTRl counter so indicating.
The true signal at Bo in combination with the true signal at
P3 causes the P4 flip flop to be set to a l state and
DlB13 is entered.
During DlB13, the BCTRl counter is loaded with a signal
representing the maximum number of bits in a hybrid word to
be processed, To this end, true signals are now formed at
the P4 and Bo outputs and the following pulse at CLIC causes
the L input of the BCTRl counter to be energized and the
value 7, represented by the setting of the switches 236,
is loaded into the BCTRl counter, and DlB14 is entered.
-~ During DlB14 of the DECODE I MODULE flow a true signal
is formed at the P4 output. Accordingly, the shift register
202 is repeatedly shifted one bit to the right until a one


: .
- 122 -

~ 1127767
~it ln~licatincl an occurrence is shited out oE r~gister 20~
into the slrl~F ~lip Elop. Each bit shifted out of the least
significant end of the register 202 is stored in the sign
flip flop SlFF. During DlB15 of the flow a true signal is
formed at the P4 output and the pulse at CLK causes the Ct
input of the BCTRl counter to be energized and count the
counter down one state. The same signals cause the CT input
of the D01 counter to be energized and the counter D01 to
count down one state. For each right hit shift of the
register 202, the num~er of hits left to be processed in the
INRl register identified by the state of the BCTRl counter
is counted down one and the absolute word value indicated by
the D01 counter is counted down one state. This operation
continues until a 1 bit is shifted out of the shift register 2Q2
into the sign flip flop SlFF thereby causing a true signal at -
the SlFF output. The state of the DQl counter at this time
is an absolute word representing the actual value of the
occurrence represented by the 1 bit shifted out of register
202 into the SlFF flip flop and accordingly, the state of the
20 D01 counter is to be outputted to the calling module.
To this end, signals are formed at the P4 and SlFF
outputs and the following signal at CLK causes the DCE
flip flop to be reset to an 0 state and fires the DlMEND
one-shot causing a true signal at the DlMEND output signalling
25 the calling module that an absolute word is completed and
contained in the Dal counter. The Dl~END signal resets the
¦ control counter 213 to a. The ormation of the signal at
DlMEND indicates completion of an absolute word and is

referred to herein as outputting the absolu`te word.
, . .
Several important special conditions should be noted.
. '`

- 123 -
. I ~ "'"''.

`~ ~lZ7767

Ii., durin~ the DlB15 and the 1 stat~ of the P4 flip flop, the
content of shift register 2Q2 is not 0, it means that there
is a remaining 1 bit (representing an occurrence) yet to be
converted to absolute form in a bit string word. Accordingly,
a true signal is formed by register 202 at ~ causing the
DlSW flip flop to be set to a 1 state at the following pulse
at CLK. Th.e 1 state of the DlSW flip flop is used during
the following entry into DlB4 of the flow to bypass the
reading of another word from the MEMORY MODULE.
The reason for this action is that with the DlSW flip
flop in a 1 state, a new hybrid word will not be read from .
the MEMORY MODULE following D1~14, as there is still at
least a portion of a bit string word remaining in the shift
register 202 to be converted to absolute form. -~
Referring to DlB17 of the flow, whenever the bit string
word contained in register 2Q2 of the INRl register goes to
zero by virtue of the fact that all of the 1 bit (or
occurrence~ of the bit string word has been shifted out ~ ~
thereof, a control signal is formed at the I0 output of :
the shift register 202. When this occurs another hybrid word
must be read from the MEMORY MODULE during DlB5. A true
signal is formed at the outputs P4 and I0 causing the DlSW
flip flop to be reset to a 1 state at the next pulse at CLK.
The 0 state of the DlSW flip flop, during the following entry
into D1~4, causes DlB5 of the flow to be next entered where .
a new hy~rid word is read from MEMORY MODULE into the DECODE I
MODULE for conversion. When the last word of a hybrid :. :
occurrence vector has been read from the MEMORY MODULE, the
length of occurrence vector value contained in the MLNl
counter will have been counted down to 0, and a control ..

.--
: - 124 - -.


. .

' `'` l~Z7~7

si~nal is formed at the Mo output of the MLN1 counter.
A true signal at Mo and a true signal at the P5, the P4
and IO outputs causes the DlEND flip flop to be set to a
1 state at the next pulse at CLK thereby indicating that the
last absolute word has been outputted to the calling module.
With the DlEND flip flop in a 1 state, the following call on
the DECODE I MODULE flow will cause the EOFl flip flop to be
set to a 1 state responsive to true signals at the P2 and -
DlEND outputs at the occurrence of the pulse at CLK.

10One further special situation with respect to the DECODE I
MODULE should be noted. If, during the 1 state of the P3
flip flop, the BCTRl counter is not in an 0 state, then
DlB12 and DlBll of the flow are utilized to insure that
the proper alignment is made from one bit string word to

another. This is necessary when the last 1 bit of a bit
string word has been converted to absolute word form and
outputted, and leading 0 bits remain in the bit string word
under conversion in the shift register 202. These leading 0
bits must be taken into account in forming the next absolute -~

work for output.
Referring to DlB11 and DlB12 of the flow and the `
corresponding action, a true signal at the P3 output in
coincidence with a true signal at the Bo output causes the
BCTRl counter, as well as the DOl counter, to be counted down

one state responsive to each pulse at CLX. As a result, the
absolute word being formed in DOl is adjusted downward by
the number of leading 0's remaining in shift register 202


which are indicated by the state of BCTRl. Finally, when the
BCTRl counter reaches an 0 state, a control signal is formed

at the Bo output and the true signal is removed at the Bo
output terminating the counting of the BCTRl and DOl counters
- 125 -


~r;.`' '

~Z7767

and caus.in~ DlB13 of the :Elow to be entered as explained above,

D. Example of Operation
Consider now an example of the operation of the DECODE I
MODULE. Assume that four words, making up a hybrid occurrence
vector, are contained in the memory area 1 of the MEMORY MODULE
and are to be converted from hybrid to absolute word form.

EXAMPLE
Assume the following is in the memory ~rea l of the MEMORY MODULE: -
. 1 1 1 1 1 1 0 1 (125)
0 0 1 0 0 0 1 0 (123, 119)
0 0 0 0 1 0 1 0 (116, 114) :
1 1 1 0 0 1 0 0 (100)
The physical length in words is 4.
Therefore it is the calling program's responsibility to load
MLNl~- 4 and set the initialize fl~p flop DlFST to 1.

First call MLNl = 4
DlFST
sequence of control DlBl - DlB9
DlBl DlFST = 1 . control to DlB2
DlB2 DlFST = DIEND = EOFl = DlSW = 0 reset these flip
~ flops;
MARl = O, BCTRl = O initialize these
registers
DlB3 DlEND = 0 - control to DlB4
DlB4 DlSW = 0,', control to DlB5



.

- 126 -
",..-,

I
. I l~Z7767

1 ¦ Dlns rea~ m~mory i.ll~o ~NRl do ~h~ rea~l;
¦ INRl ~ 5) ~he r~sult;
l MAUl (1) 3 ~IARl (0) ~ 1 memory acldre3s to next
¦ posi~ion;
5 ¦ MLNl (3) ~ MLNl(~ 1 decrease the number o~ words
¦ DlB6 MLNl (3) 7~ 0 . control to DlB7;
¦ DlB7 MSB(INRl) - 1:. control to DIB8 AOI form : :

I DlB9 Dol (125) = INRl (125) input becomes the output;
10¦ DlSW ~ O assure a read on the
¦ BCTRl ~ O next call and set BCTRl to
zero;
EXIT
¦ output Dol - 125 EOFl - O .
151 -: -
I second c811 initial conditions: DLFST ~ O
l ... v- ~_~ , . -
i8 not clocked
sequence of control DlBl, DlB3-DlB7, DlB U, DlB13
l DlB16, DlB14 - DlB17
201 DlBl DlFST ~ 0 .-. control to DlB3
DlB3 DlEND - O . control to DlB4 ¦~`
I DlB4 DlSW - O . control to DlBS .`
¦ DlB5 read memory do ~he read to INRl; . -~ ~:
I INRl ~ 00100010 :~
25 ¦ MARl(2) ~M~R~ 1 increase address pointer; 1:
l MLN1~2) ~MLN~3) - 1 decreasq length re8ister;



30 I .
` I . ','.
-127-
~- . ': .
' :'

~7767

1 Dl~G MLNl ~ O ,'. con~rol ~o D1~7
DlB7 MSB~INR~) ~ O,.con~rol to Dlnll
DlBll BCTr~l - O ., control to DLB13
DlB13 BCTl~l - 7 this count~r monitors how
~uch of the input register
remain:; to be processed;
DlB14 INRl 00010001
SlFF ~ O -
DlB15 BCTR1(6) - BCTRt7) - 1 reduce the number of bits
Dol(124) - Dol(125) - 1 to be processed & reduce
DlSW ~ 1 the previous output - set
DlSW to indicate no resd
. i8 necessary on the next
call;
DlB16 SlFF - O :. control to DlB14
DlB14 INRl - 00001000 shift INRl;
::~ SlFF - 1 SlFF - 1 because of the
shift output from INRl
. , . ' '''-, '
DlB15 BCTR1(5) - BCTR1(6) - 1 decrement bits remaining;
Dol~(123) - Dol(124) - 1 decrement previous output; ~-~
DlB16 SlFF - 1 .'. control to DlB17
DlB17 INRl ~ 0 ..... HALT :
: Output Ddl - 123: EO~l ~ 0
: 25 EXIT




30 ~ : :
.
~ -128-
.,
: '."

~lZ7767 (~

1 ~I~Lrd cnl.l ~usl: as~.~r~ l)lG()
sequ~ncc o~ control DlBl, 1)133-l)lB4, DlB14-D1~16,
DlB14-DlB16, DlB14-DlB16, DlB14-DlBl~

same as before
DlB3
DlB4 DlSI~J - 1 ,, control to DlBl~
DlB14 INRl c 00000100 sh~ ft INRl right;
SlFF ~ O SlFF ~ O since "shift out"
from TNRl a O

10 DlB15 ~CTR1~4) - BCTR1(5) - 1 -
Dol(122) - Dol(123) - 1
DlSW - 1
DlB16 SLFF ~ 0 ,-, control to DlB14 ~.
DlB14 INRl ~ 00000010 --
SlFF ~ 0 . -
DlB15 BCTRl(3) - BCTRl(4)
Dol(121) ~ Dol(122) ~
DlB16 SlFF - 0 ,-, control to DlB14 :
DlB14 INRl ~ 00000001
51FF - O
DlB15 BCTR1(2) ~ BCTR1(3) - 1 . .
. Dol(120~ - Dol(121) - 1
: DlB16 ~ FF o O control to DlB14
DlB14 INRl ~ 00000000
SlFF - 1
25 DlB15 BCTRl(l? ~ BCTR1(2) - 1 .
: Dol(ll9) - Dol(120) - 1
'.-.
. ' ...
~: 30
~ ~ "

-129-
: : '

27767

1 DlL~16 slFr~control to DlB:L7
DlB17 INRl -- 0,', control to DlB18
Dlal8 DlSW = 0 assure a read on the
next call;
EXIT
output Dol = 119 EOFl = 0

Fourth call DlGO to 1
sequence of control DlBl, DlB3-DlB7, DlBll-DlB12, DlBll, :
DlB13-DlB16, DlB14-DlB17
DlBl
I same as above
DlB3
DlB4 DlSW = a.: control to DlB5
DlB5 read memory read into INRl;
INRl = aooololo
MARl(31 ~- MARlc2l + 1 bump the memory add~s;
MNLl~ MLN1~21 - 1 decrement the length
DlB6 MLNl ~ 0 ,: control to DlB7
DlB7 MSB(:INR1~ = 0 :,control to DlBll
2Q DlBll BCTRl(ll ~ 0 :.control to DlB12
DlB12 BCTR1 (a~ = BCTRl(l) - 1 the value in BCTRl is a
Dol(118) = Dol(ll9~ - 1 measure of the unshift~d
bits from the previous
read, Dol must be
decremented by this unit;
DlBll BCTRl(a) ~ 0 .control to DlB13



~ .

13Q -

C` llZ7~7 ~
. .

1 ~lB13 BCTRl ~ 7 bit~ ~o be processed ~n
this word;
DlB14 IMRl = 00000101
Sl~F = O
DlB15 BCTR(6) - BCTR(7) - 1
Dol(117) 3 Dol(118) - 1
DlSW z 1 no read necessary next t~me;
DlB16 SlFF ~ 0 .-. control to DlB14 -:
DlB14 INRl a 00000010 ~ ~;
SlFF ~
DlB15 BCTR1(5) - BCTR1(6) - 1 ;. -
Dol(116) - Dol(lli)
DlB16 SLFF - 1 ,'. control to DlB17 -~
DlB17 INRl f O
15 EXIT - . .--
output Dol - 116 EOFl - O

F~fth call ~et DlGO. :
sequence of control DlBl, DlB3-DlB4, D1~14-DlB16,
DlBI4-DlB18
DlBl )
~ same a8 above .
DlB3 ~ -
: DlB4 DlSW - 1 ,control to DlB14
. DlB14 INRl - 000000019hift INRl ri~bt;
2S SlFF a O
. ,',.
. ~ ;.`'.


, ~ ~ . .
~`: 3
~,

~ ` -131- ~
.~. "; .
'~
~ ~ !.~

o ( )
~iZ7767

1 ~1l315 BCTRl(4) ~ ~C~1(5) - 1
Dol(115) - ~ol(116) ~ 1
DlS~J = 1
DlB16 SlFF G O .', con~rol to DlB14
DlB14 I~ 00000000
SlFF = 1
DlB15 BCTRl(3) - BCTR1(4) - 1
Dol(114) ~ Dol(115) - 1
DlB16 SlFF - 1 ,'. .control to DlB17
10 DlB17 INRl - O ,. control to DlB18 -
DlB18 DlS~ ~ O read next time;
EXIT
output Dol 8 114 EOFl ~ O
. "'
15 Sixth call set DlGO -
.,
sequence of control DlBl, DlB3-DlB6, DlB10, DlB7-DlB9
DlBl )
~ same as before
DlB3 )
DlB4 DlSW - O , control to DlBL5
20 DlB15 Memory read
INRl - 11100100
MARl(4~ - MARl(3) + 1
~Nl(O) ' ~LNl(O) - 1 ,.
. DlB16 MlNl - O ,'., control to DlB10
Z5 DlB10 DlEND - 1 assures arl EOFl on
¦ next call;

~ ;: . ' ~'' ',
3 ' :

-132-
,:- , .:

llZ7767
1 DlB7 MSB(INRl) ~ 1 :.con~rol to DlB8
re~et ~he ~ign b~;
Dl9 BCTRl ~ O
DlS~ - O
Dol - 100 (01100100)
EXIT
output Dol = 100 EOFl = O
. ,'. :',

Seventh call set DlGO ;-:-
seqùence of control DlBl, DlB3, DlBl9
DlBl same as above
DlB3 DlEND ~ 1 .'. control to DlBl9
. DlB19 EOFl ~ 1 -;
Dol ~ O
EXIT
output Dol - O EOFl ~ 1 .
'' .-. .:
note the otput retrieved was 125, 123, 119, 116, 114, 100 -
the same as was encoded before
20~
. ~',



~: ~ ... "",


~ ` . ' .,.
~: -133-
.~-,. , ~ .



~27~7

1 In summary, it will be seen that what has been dis-
closed is a decoder or converting hybrld coded signals
to absolute coded word signals. The hybrid signals
represent a series of occurrence values of decreasing value.
The hybrid signals have a series of received binary coded
word si~nals including at least one absolute coded word
and a bit string word. The bit string word represents
an occurrence by the number of bits of displacement of a
bit of predetermined value ~i.e., 1) from an absolute word
0 in the series of hybrid words. A hybrLd word also
includes a flag signal indicating the type of word.
The decoder includes an absolute word outputting means
including the DlMEND one-shot multi-vibrator and its
logic and the MSBl flip flop and a contrdl counter 213

operative during DlB9 of the flow in response to an
absolute word flag signal of a received hybrid word signal
for outpùtting the received word signal. In other words,
the outputting means is responsive to the absolute word
flag signal for directly outputting the corresponding

hybrid word since it is already in absolute word form.
The decoder also includes absolute word signal forming
and outputting means. The means includes the INRl register
and its shift control logic, the SlFF flip flop, the D01 and
BCTRl counters and their load and count control logic and -

the control counter 213 which are opèrative during DlB14, 16,
7-9 ln response to an absolute word signal and`each bit of
; predetermined va}ue in a subsequently received bit string word
;~ for forming an absolute word signal indicative of the actual
value of the bit of predetermined value. Also included is means
such as the DlMEND one-shot multi-vibrator and its co~trol logic

:~
1~ -134-
~ ' . ' '':

11'~7767

operativ~ during D1~16 for outputting e~ch of the absolute
word signals formed thereby. The true signal at DlMEND
outputs the absolute word signal represented by the state
of the counter DOl.
In a preferred embodiment, the means for forming and
outputting the absolute word signal includes the shift
register 202 in register INRl for storing a received bit
string word signal. Also included is means including the
I~Rl register and its shift control logic and the control
counter 213 operative during DlB14 for repeatedly enabling
the shifting of the content of the shift register 202,
1 bit position in the direction of the least significant
bit of the bit string word. Also included is means including
the SlFF flip flop and the control counter 213 operative
during DlB16 for providing an indication when a bit of
predetermined value arrives at the output of the shift
register 202. Also included is the counter DOl and means
including the DOl load control logic and the control counter
213 operative during DlB7-9 responsive to an absolute word
flag signal of a hybrid word for setting the counter DOl to
a state, relative to the reference (0) state thereof, which
corresponds to the value of the absolute word signal. -
Means including the DOl count control logic and the control
counter 213 is operative during DlB15 for enabling the
counter to count one 9tate towards its reference state for
each shift of the shift register 202. Means including the
DlMEND one-shot multi-vibrator and its control logic and
the control counter 213 is operative d~ring DlB16 in response
to the bit of predetermined value in the SlFF flip flop
for outputting the state of the counter by forming a true
signal at DlMEND.
- 135 -

~ 11;:7767

1 In fl Eurtllcr preferred em~odi.ment tllcre li~i meansi or
adjusting ~lle coun~er D01 ~or bits wllich are not o~ the
predetermined value (e,g , 0) wllicl~ remain in the
shit re~ister 202 after decoding the last bit of
predeterm~ned value in a hybrid word Includ~d is an additional
counter means such as the BCTRl. ~Ieans including the switches
236 indicate the maY.imum number of bits in an absolute word
for output. Means including the BCT~l load control lo~ic
and control counter 213 is operative during DlB11-13
or selectively setting the additional counter means BCTRl
to a stste relative to a reference state (e.g " 0), ~hich
corresponds to the indication of the maximum number of bits
in an abisolute word signal. Means including the BCTRl
count control logic and control coun~er 213 are operative ; :
during DlBL5 for enablin~ the additional counter means
BCTRl to count one state, relative to the set state thereof
towards the p reference ~tate for each shift of the shift
register mean~ 202. The ~ output of the BCTRl counter
: indicates the occurrence of the reference state of BCTRl.
Means includin~ tbe:count control logic of BCTRl and control
counter 213 i3 operative during DlB12 ~n response to the flag -
signal of a bit string word 9ignal stored in ~Bl and the
indication at ~ indicating the lack of a reference state
of BCTRl or further enabling the countin~ o~ the counter D01
and BCTRl, one count for each shift o the shift register
meansi 202. By thi6i arrangement the hi~h order 0 bits
~hich are not o the predetenmined value which are let in
: the shift register 202, ater all bits o~ predetermined value
. are shi~ted out, are re1ected into the absolute word si~nal
3 under ~ormation in shi~t re~ister 202,

-136-
'.':


~ (-`' ~)
'
l~Z~67
1 IV. D~COD~ II MODULE
Eigs. 12-14 form a schematic and bloclc din~lram
o~ tlle DEOOD~ Il MODUI.E. The DECODE II IIODULE i5 ba:~ic~lly
co~s~ucted tlle same as the DECODE I MODULE except as
S described beLow. Two clecode moclules, DECODE I MODULE and
DECODE II MODULE, are needed in the system in order to
decode the occurrences o~ an occurrence vec~or from hybrid
to absolu~e coded words and provide the resultant absolute
coded words in two stL^eams at diferent rates. DECODE I
10 MDDULE and DECODE II MODULE provide their respective ~ .
streams of absolute coded words, one word (or occurrence)
at a time when called.
The DECODE II ~ULE is virtually identic~l to the
DECODE I MODULE as mentioned above. In keeping with the
virtual identical structure, the same symbols are used to
denote the various parts o~ the DECODE II ~DULE as are used ~-
for the DECoDE I ~DULE. However, in some ins~ances a 1
in a symbol ~or the DECODE I ~lODULE is changed to a 2 in the
DEOODE II ~DDULE to he~p simplify the description or
distinguish bet~een lines going between ~odules. The
components t~hose identity and symbol~ have been changed
in the DECODE II MDDULE by changing a 1 to a 2 are identiied
below.
. ,.




-137-

1127767

1 DE~ODE I DECODE II
BCTRl BCTR2
DOl ~ D02
INRl INR2
MARl MAR2
MLNl MLN2
DlFST D2FST
EOFl EOF2 ~ -
DlGO D2GO
0 DlMEND D2MEND
A data selector DDSl similar to that described above
replaces the,gates 218-226 of the DEC~DE I MODULE for gating
the occurrence vector length into counter MLN2. However, a '~ '
gating, circuit similar to the DECODE I MODULE could be used. - ;
The occurrence vector length is coupled from the information
~ource indicated along the top of DDSl to the MLN2 counter
responsive to true signals at the control lines indicated
along the sides of the DDSl. Additionally, the gating ~,~
conditions indicated for the load or L input of MLN2 ~-
20 differs from that of the DECODE I MODULE and should be noted. , ' ,
The input control lines connected to gates 224', 228',
230' and 234', and the cloc~ suspension logic 222', differ in
minor respects from that of gates 224, 228, 230 and 234 and '''''
su~pension logic 222 of the DECODE I MODULE and the ,,
primes are a~fixed to the~e ~ymbol9 to ~o indicate.
: ~ ' '


~ 3 , ~,
~ ~ . .. '-'
~ :` -138-
~:
. .

Z7767

V. VELTl~ MODUL,E
A. General Description
-
The DELTA MODULE breaks the number of lines to be revolved
(in an iso-entropicgram) from a calling module and breaks
the number into smaller increments. The implementation
now to be described breaks the number of lines to be
revolved into its largest possible component powers of 2
in decreasing value order which, in turn, corresponds to -
the number of lines to be revolved. This feature is
described in the General Description with reference to
Table 4-C and is of importance because the lines in the -
iso-entropicgram can be derived with a minimum of XOR
operations. Also, by revolving from one line to another in an
iso-entropicgram where the second line is away from the first
by a number of lines equal to a component power of 2, the
revolve to the second line is accomplished by a single
shift and XOR operation. -
The DELTA MODULE, in operation, receives a binary coded -
number in the 1, 2, 4,8 number code (from the calling
module) representing the total number of lines to be revolved,
and breaks the number into its largest possible component
powers of 2. The largest component power of 2 is formed
first, followed by the other largest powers of 2 in
decreasing orderof magnitude. Although the invention is
not limited thereto, the DELTA MODULE about to be described
operates on 8 bit words.
The DELTA MODULE converts a number by storing it into a
first register and then shifting the number towards the
most significant bit position, repeatedly, one bit position
at a time. A second register with the same number of bits

as the first register has a "1" bit that is shifted towards the


~ 13~ -- -
. . .

lZ7767

least signi.Eica~t bit position, one bit position each
time the first register is shifted. Since the two
registers are shlfted in opposite directions by the same
amount whenever a lll" bit arrives at the output of the
first register, the "1" bit in the second register indicates
direct~y the corresponding power of 2 of the 1 bit shifted
out of the first register. .-
Table 14 is a DELTA MODULE example illustrating
how the above operation takes place. The binary coded

number to be converted represents the decimal number 13
and is stored in th.e first register in binary coded form,
whereas the second register is. initially set to 0.
Eight s~ifts are depicted, one for each bit of the number. ~:
to be converted. On th.e first sh.ift, the first register

is shifted 1 bit towards the most significant bit, whereas. .
the second regIster has a 1 bit stored in thè most significant .
end wh.ere it represents the binary coded number 128. With .
each.subsequent shit of the first register towards the
most significant bit, th.e second register is shifted towards
2a th.e least significant bit. Following shift 5, a 1 bit
for the first time is shifted out of the first register.
This indicates that the content of the second register,
: which now represents 8, can ~e read as it now contains
the largest component power of 2. Also, 1 bits are

shifted out following shifts 6 and 8 and th.e second
register at these times represents the numbers 4 and 1,
respectively. Adding 8, 4 and 1 results in 13 which is the
~: ~ binary coded number originally stored in the first register. .-: .
: ., . - , ~:
.... .... . , ':
8. Components
The DELTA MODULE, Fig. lS, contains inputs and output control
- 140 -

- o ~r)
. 1127767

1 lines indicatccl ~lon~ e riEr,ht h~nd n~de, Tlle sy3te~n o~
nota~ion described ~bove in section I.F, Conven~ion~ Used
in Fi~ures, is used. Add~tion~lly, tl~ere are inormation
input and output lines These input and output lincs carry
multiple bits of in~orn~tion and are indicated by heavy lines.
~ 70 re~isters DELI and DEL0 are provided. Register DELI
inciudes an ~ flip flop shift re~ister 302 and the re~ister
DEL0 includes an 8 flip flop shi~t register 304. Both
o the registers DELI and DELO include a most s~gni~icant
bit flip flop, DELI containing M~BDELI and DEL0
conta~ning MSBDELO. M~BDELI has its input for ~etting it
to a 1 state connected to the output SOUT of shift re~ister
302. The output SOUT of regi3ter 302 is the unpr~med
output from the most significant flip flop in register 302.
The ~DEL0 flip flop in DEL0 has its ~BDE~0 (or unprimed)
output connected to the "IM" input of register 304 which
is the set to 1 input of the most signi~icant 1ip flop
in register 304. Logic (not ghown) in register 302 applies
true signals at DIo and ~ when the register is 0 and not 0,
~0 respectively. The operating charactexistics of ~hift
registers 302 and 304 are the same as shift register 114
of the ENCODE MODULE, Register 304 also has a CLR input
which is responsive to a true signal at CLR to reset
register 304 to 0. Shift re~isters 302 and 304 are o~
type SN74L98 disclosed at page 456 of the above TTL book,
A control counter 313 has two 1ip ~lops Pl and P2.
~dditionally, control fllp ~lops DELFST, DELE~D and ~LLCE
are provided. The DELFST flip flop, when in a 1 state,
indicates that the ~irst call is occuxring to the DELT~ ~DULE, ~--

3a The DELEND 1ip ~lop in a 1 state indicates tl~t the word
stored in DELI has been completely converted ~nto its

-141-

o ~
l~Z77~;7

1 component ~owers of 2. T~lus, tlle ~. sl:~te o~ l~ELE:MD is an
indica~ion that the DELTA MODULE llas complcted its operation,
Tlle ~lip ~lop DELC:E controls tlle for;nAtion o~ clock pulses
at CLK,. Each of the flip ~lops in tlle DELTA N~DULl: are of
5 type SN7~74 de~cribed in section I.F Convention~ Used in
Figure~.
One-shot multi-vibrators DE~ and DELMEN~ are
contained in the DELTA ~IODULE. One-shot multi-vibra~or DELGO
i~ set to a 1 state pursuant to each call on the DELTA MODULE.
One-shot multi-vibrator DELME~D indicateg each exit from the
DELTA M~DULE operation by a true signal at the DEI~ output
and resets the module. The one-shot DELÇO a~d DEL~ have
the sa~e characteristics as the one-~lot of the ENCODE ~IODULE.
A source of clock signals formed by a clock 312 forms
series of regular recurring true pulses as depicted.
The DELTA M~DULE also includes OR gates 314, 315, 316, 317,
31~ and 320, and an AND gate 322. These gates are conventional
gating circuit~ ~ell kno~m in the computer art. The output
of A~D gate 322 i8 designated CLI~. The Inverter 324
i8 a conventional logical inversion circuit which ~orm~
. the logical inverse of the signal at CLK, and the ~nverted
signal i~ designated ~rR.
A selection circuit DELS is a conventional selection
cixcuit of the ~a~e type disclosed in the section $-B above.
Selector circuit DELS couples 8 bits o~ in~ormation rom any
one o the designated three 8 bit inputs to a s~ngle 8 bit
output which i8 the information input into register 302.
'.:
C. DetailQd Descrip~ion
. . .
\ 3 The purpose o the DELTl~ ~ODULE is ~o rcceive a number : :
repre~entin~ ~he number o~ lines to be revo~ved and convert

. ~ -142-
. . .

~127767

1 the nu~ber into i~s l~rgest possiblo component power~ o~ 2
in decreasing value order.
Tlle DELT.~. IEODULE ~ c~lled by eitl~cr the P~EVOLVE ~;ODU~,E
or tlle OUTPUT ~IODUIE. The DELT~ )DULE i9 c~Lled by khe
~EVOLVE and OUIPUT ~IODU~ES by irst set:ting the DELFST
1ip flop to a 1 state. The OR gate 316 sets the DELFST
~lip flop ~o a 1 state and has inputs RMl and OtI2 from the
REVOLVE and OUTPUT L~IODULE~, respectively A control signal
at either the RMl output of the REVO~VE I~ULE or tlte 0~2
output of the OUTPUT MODULE enables OR ~ate 316 to trig8er
the DELFST flip flop ~o a 1 state. Follo~ing the signal3
at either RUIl or OM2, ~he REVOLVE and OUTPUT ~DULES,
respectively, provide signals at the RM3 and O~I3 outputs.
A control si~nal at either the P~I3 or OM3 output ene~gizes the
OR ~ate 320, causing a true signal to be applied to the one-
shot DELGO, causing i~ to apply a true si~nal to the in~ut
o ~he DELCE flip ~lop. This cau~es the flip flop DELCE
to be set to a 1 state and causes the flip flops Pl and P2
to be reset to an 0 state.
The 1 state of flip flQp of DELOE causes a true signal
at the DELCE output t~hich, in turn, enables the AND gate 322
to couple the clock ~ignal~ from clock 312 to the CLK output.
The resulting true ~ignals at the ~1 and ~ outputs of flip --
flops Pl and P2 cause flip flop Pl to be set to a 1 state at
the following pulse at CLK. As a result, Dl~l of the DELTA
MODULE 10w is entered.
The ~ource of the number to be converted i9 determined by
control signals at the OM2, C~4 and SM7 outputs of the OUTPUT,
CHANGE and SEED ~DULES, respectively. A true signal at OM2,
3 ¦ C~4 or SM7, respectively~ causes the DELS selection circuit
;; . ,
~ -143-

~Z7767

1 to ~ate ~h~ ~ bits o~ ln~orm~tion ~ro~ DS6 o~ the OUTPUT
MODULE ro~ CLIN~ o~ tlle CII~NGE IIODULE or rom Tl of the
SEED ~IODUL~, resp~tively, to the in~ormation input of the
shift re~ister 302 The si~nal at P2 is now false, causing
re~ister 302 to be in a load mode of operation and the
true si~nal at S~I8 (SEED ~I~IODULE), O~I4 (OUTPUT ~IODULE),
or CM5 (CHANGE I~ODULE) enables the OR gate 314 to cause
re~ister 302 to store the 8 bit information ~ignal from DELS.
During the 1 state of flip flop pl, control 3ignals
are formed at the Pl and DELFST outputs of fl~p flops Pl
and DELFST, causing the ~3BDELO flip flop to be set to a
1 state. To be explained in more detail, the 1 state of
the ~ DELO fl ip flop is used to enable a 1 bit to be shifted
into the most significant bit position of the shift register
15 304 during the following shifts of register 302. ~ -
The true signals at Pl and DELFST additionally cause
the OR g2te 318 to reset the DELFST flip flop to an O state
and reset the DELEND flip flop to an 0 state.
Register 302 no longer contains all 0'~, a number to be
converted having been stored th:rein, therefore a true signal
is formed at the ~ output indicating that the regi~ter is
not 0. This signal, in coincidence with the true signal at `
Pl, causes the P2 flip flop to be set to a 1 state and DB3 is
entered. ! `--
The conversion is made by shifting register 302 contalning
the number to be converted towards tbe mo~t ~

~ ~~~ ` ' ~;
_~~~~~~ ~~ - '':, ,
~ 3




~ ` , .
~i -144- - --
'. '

~Z7767

1 si~n~~c:~n~ bit and by ~hiftin~ ~l1Q LC~5tCr 304 ~owards
the least si~nifi~ant bit. The first sllit shi~s a 1
bit in~o the most significant bit position of register
304 from flip flop MSBDELO. Durinz DEB3 o~ the flow,
whenever the reg~ster 302 does not contain all O's, a
control signal is fonmed at the ~ output in coincidence
with the true si~nals at P2 and ~ISBD~L~. Coincidence of
these true signals cause the register 302 to be shifted
one bit towards the most significant bit position, causing
the most significant bit in register 302 to be stored
in the MSBDELI flip flop and causing the register 304
to be shifted 1 bit position towaxds the least significant
bit position. Durlng the first shift, the MSBDELO flip
flop is in a 1 state, causing a 1 bit to be stored in
the most significant bit position or flip flop of the
register 304. It will be noted that the DELTA MODUIE
flow indicates a"SHIFT DELO rt" and "SHIFT DELO lft".
"SHIFT DELO rt" indicates a shift right towards the least
significant bit positlon of register 304 whereas "SHIFT
DELI lft" indicates a shift left ~owards the most
significant bit position of the register 302.
Following DB4, DB5 of the flow i8 entered where
the MSBDELI flip flop i9 checked. If the MSBDELI flip
flop i9 not in a 1 9tate, i.e., a;l bit having been
2S shifted there from regi8ter 302, DB4 of the flow 18
a8ain enteret where the above shift is repeated in the
same manner as described above. The shifting process
~:

~ 3 ~
. ''.

-145-
, .-.


~ ~-.Y ~

(.! llZ7'767 ( ~

con~inu~si un~ L bl~ i~. stored in~o tlle ~Sr~ LI ~llp
~lop. I~hen this occurs, DB6 of the Elo~ is en~red.
The l state of the MS~DELI 1ip flop causcs a
true sign~l at the MSEDELI output. The true s~als a~
S P2, MSBDELI and C~ trigger the one-shot DELMEND to a
1 state, causing a true signal at the DE~ND output ~rom
the DELTA MODULE and additionally resetting the DELCE
flip flop to a O state, thereby preventing the AND gate
322 from applying addi~ional clock pulses at CLR and
csusing the shi~ting to terminate and operation of the
DELTA MODULE flow to EXIT. The true signal at the
DELMEND output indicates to the calling module that it
ha~ finished processing and that the word conta~ned in
register 304 of DELO may be read as it now contains one
lS of the component powers of 2 of the input number originally
stored in regist~r 302. The true signal at output DELME~
also enables OR gate 315 to reset control counter 313
to O (i.e. Pl, P2 - O). The true signals at P2, MSBDELI
and CLK reset the MSBDELI flip flop to a 0 state.
The DELTA MODULE is again called by either the
REVOLVE MODULE or the OUTPUT MODVLE by applying control
signal8 at either the KM3 or OM3 ou~puts. Either of
these signals cause the OR gate 320 to again trigger the
one-shot DELGO which, in turn, sets the DELCE flip flop
25 to a l ~tate, enablin~ the AND gate 322 to form pulses ;-~
¦¦ ~t the utput. Both the P1 nd P2 11p 10p8 ar~ ;



::
~,

~ -146- `

` ~1L~ ~ 7

1 in O ~t~S, ~ccortlin~ly~ Pllp ~lop Pl is s~t ~o a
l st~e at the ollowin~ pulse at CLK. After the firs~
c~ nal at RM3 or 0~13), tlle DELFST flip lop is
in a 0 s~atc, accordingly, DB3 of the flow is entered,
S followed by D~4-6, as de~cribed above. During each
entry into DB4 and DB5, the shift registers in DELI and
DEL0 are shi~ted until another l bit is stored in
MSBDELI, causing another true signal at the output
DELMEND, indicating to the calling module that a new
component power of 2 is now in register 304 for output.
Finally, when the last l bit of the input number
contained in register 302 i8 shifted into the MSBDELI
flip flop, the content of register 302 is 0, causing a
true signal at the DIo output. I~ this occurs while
lS the Pl ~lip flop is in a l state, the follo~in~ pulse at
CLK sets the DELEND flip flop to a l state. If it occurs
while the P2 flip flop is in a l state, the DELEND flip
flop i8 set to a l state, irrespective o~ the clock.
The l state of the DELEND flip flop and resulting control
signal at DELEND signals the call~ng module that the
last and least significant power of 2 of the input number
has been formed (e.g. entire number has been converted).
A true signal at the DELEND output or the DIo output in
combinat10n with true signals at Pl and ~g cause
the DELMEND one-shot to be ~et to a l state and the




... ,~

~ ' ' 11;~7767

1 ~I;LCI'. 1.il- 10p ~t~ ~ r~se~ ~ a O n~c, inllibl~inu
tlle ~ut~ from provl~in~ urthcr pulses a~ CLI~.
DE~ ~ND clock circuit becomes Pl~ELEI~
C~IC P2 ~1SBDELI. These changes permit the D~LT~ ~ODULE
S to convert the number set in DELI to its component
powers of 2. After this has been done, Dlo will be
asserted. Then any further call on the DELTA MODULE
will cause DELEND to be set during Pl and the module -
will terminate upon the assertion of the ~R signal
during pulse Pl. Note that DELO is cleared in this
case.




'I \,~

. `~ '-," '.




:- -148-
~ \'''"'';

27767

D. Example of Operation
With the foregoing detailed organization in
mind, consider an actual example of the operation of the
DELTA MODULE. For the example, assume initially that the
number 13, which in ~inary coded form is 00011010, is to
be converted and the DELTA MODULE is called by control
signals at RMl and RM3 or OM2 and OM3 from the REVOLVE
and OUTPUT MODULES, respectively, as described abo~e.
The binary coded num~er 00011010 is loaded into the
register 302 as described above, The sequence of operation
thereafter is as follows.



sequence of control DBl-DB5, DB4-DB5, DB4-DB5,
DB.4-DB5, DB4-DB6;
DBl DELFST = 1 ,; control to DB2
DB2 DELFST = DELEND = 0 reset these flip flops;
set MSBDELO of DELO (100000000);
2Q DB3 DELI (13) ~ 0:.oontrol to DB4 ~
DB4 DELI = 00011010 shift DELI left; .
DELO = 10000000 shift DELO right;
DB5 MSB (DELI~ = Q :.oDntrol to DB4 --
DB4 DELI = Q011Qla0
DELO = 01aa000Q
DB5 MSBCDELI~ ~ Q:.control to DB4
DB4 DELI = all0100a
DELO = QOlOQ000
DB5 MSB CDELI~ ~ 0:.control to DB4
3Q

~: - 14~ -

~ .
:~ :

~ ;7
1 ¦ Dl34 D13LI ~ 11010000
¦ DELO o 00010000
¦ DB5 MSBI)'~LI - O .'. control to DB4
¦ DB4 DL~LI - 10100000
¦ DELO - 00001000
¦ DB5 MSBDELI e 1 ,: control to DB6
¦ DB6 MSBDELI - 0 DELI - lO100000
¦ HALT
OUTPUT DELO - 8 (highest component power of 2 in 13)
10 ¦ DELEND ~ O

¦Second- call DELI is unaltered ~ -
i --
¦ DELFST ~ O
¦ sequence of control DBl, DB3-DB6
15 ¦ DBl DELEST - O .~ control to DB3
¦ DB3 DELI ~ O ... ~. control to DB4 . ` .--
¦ DB4 DELI - 01000000 - .
DELO - 00000100 ~;
DB5 MSBDELI - 1 .'. control to DB6
DELO - 4 - next component power of 2 :
DB6 MSBDELI ~ O DELI ~ 0100~000
HALT
OUTPUT DELO - 4 DELEND - O ;
. ~,
Third call all par~meters are unaltered on input
.
sequence of control DBl, D93-DB5, D84-DB6
DBl)
) as explained above
D83)
,'~ . .
: 30
. ''"',,.
. -150- .:

I . '

( ' ~ ~
llZ7767

1 l)B4 ~LI ~ 10000000
DELO ~ 00000010
DB5 MSB(DELI) - O ............... con~rol to DB4
DB4 DELI - OOOOOOO
DELO - OOOOOOOl
DB5 MSB(D~LI) = 1 ,control to DBG
DB6 MSB~DELI) - ODELI - OOOOOOOO;
HALT
OUTPUT DELO - 1 DELEND = O
. ~' .,
Fourth call
sequence of control DBl, DB3, DB7;
DBl as before
DB3 DELI ~ O :. control to DB7 -:
DB7 DELEND - 1 DELO - 0 NALT
OUTPUT DELO e 0 DELEND - 1
. ,-,~.
' , '~' '


'' ''




~: 30 . ~
,:., -
. -151-
,

~- 11;i~7767

1 VI. R~VOLV~ MODULE
A. General Description
As disclosed and described herein above with respect to
Table 5, a line in an iso-entropicgram,represented by l's and
O's can be generated simply by shifting the preceding line 1
bit position to the right and XORing the unshifted and .~'
shifted preceding line together, truncating above the most .''~
significant bit to the right. Also, lines of an iso~
entropicgram can be skipped to generate a second line
10 in an iso-entropicgram from a first line. This is done by ,.'
breaking the number of lines, between the fir~t l~ne and . '~,.-
the second line, into its component powers of 2, going ''
., from largest to smallest power of 2. If the component powers ..
of 2 are used to determine the increment in which revolve
15 takes place from the first to the second 11ne, each increment ';,,
is.a simple shift and XOR operation. This has been described
above in connection w1th Table 4-C. ~ :'
However, each occurrence ma~lng up a line of an iso- ',,
entropicgram is represented in absolute coded form rather ,.
than by binary l's and O's, to facilitate implementation.
As a result, the shift and XOR operation are accomplished .,'
according to the embodiment of the invention using absolute .'
coded occurrence values rather than.i's and 0'9. Table 4-E '.
illustrates this process for the revolve operation disclosed ' ,',
2 and described in connection with Table ~-D. Thus, the l's
only need be represented and are represented by absolute ''
decimal numbers. Line 7 i5 shifted by 8 places to the
right simply by addlng 8 to the absolute decimal value of
line 7. XORing takes place simply by sorting the unshifted ..
3a and shifted values in order of magnitude, deleting
. ~-
: ,
. -152~
~ . ..

~27767

1 ~hose absolute occurrence values which are the ~me and
those values which go beyond the end of the iso-entropicgram.
In this manner the result of the first XOR results in Line 15
of the iso-entropicgram of Table 4-B which is a simple sort
of the unshifted and shifted values. Note, however, that the
shift of line 15 by 1 results in a value 16. Since 16
exceeds the width of the iso-entropicgram, it is d~scarded.
Also during the subsequent XOR the values 3, 7, 8, 11 and 15 --
are discarded. The sort of the remaining numbers results
0 in a sequence of decimal values representing Line 16.
Turning now to the REVOLVE MODVLE, the revolve operation
is performed principally under control of the REVOLVE MODULE -
with a8sistance of the MEMORY, ENCODE, DECODE I and II, and
DELTA ~.uDULES.
Fig. 18 shows a flow chart which illustrates the
sequence of operation of the REVOLVE MODULE. `The symbol RB
followed by a number identifies each box in the flow and
the ~ymbol P followed by a number identifies the flip flop(s) -
of the control counter 413 which is (are) in a 1 state for
the corresponding flow blocks.
The REVOLVE MODULE serves the following two functions:
1. It revolves a llne of an iso-entropicgram down
the number of lines which the calling module
has set into the DE~I register of the DELTA MODULE.
2. It merge~ two 11nes ~i.e., XOR'~ two lines)
of an iso-entrop~cgram together without any
revolve. This function is accomplished by the
calling module 1 8 placing an ~ in the DELI
register of the DELTA MODVLE.

`3
~. ' ' '
-153- ~

1~2~767

1 The purpose of ~he first Eunction is to find the "seed"
line or the output line of the lso-entropicgram. The
second function is used in connection with the CHANGE
MODULE where the CHANGE MODULE uses the REVOLVE MODULE to
revolve the changes down to the seed line and then uses
the REVOLVE MODULE to merge these changes with the seed line.
Thereafter, the REVOLVE MODULE performs its first function `
of revolving the merged line to the seed line.
The REVOLVE MODULE receives as input actual absolute -
N coded occurrence values provided by the DECODE I and II
MODULES. DECODE I and II MODULES act independently in the
sense that they select in order all occurrence values of a
common input line from the MEMORY MODULE at different rates.
The rate at which DECODE I and II MODULES select the
occurrence values from a common input line is determined by
the REVOLVE MODULE which calls or requ~sts occurrences as
require~.
The REVOLVE MODULE also receives absolute coded values
representing the component powers of 2 formed by the DELTA
MODULE. These values each represent a number of lines in the
iso-entropicgram to be revolved. Each component power
of 2 signal i8 combined with each occurrence value provided
by the DECODE I MODULE to form the shifted occurrence values. ;
The actual received (unshifted) occurrence values provided
2 by the DECODE I MODULE and the shifted values are then XOR'd
and the result is the new line in the iso-entropicgram.
The most important function of the REVOLVE MODULE is the
XOR (exclusive OR) function. To this end, the REVOLVE MODULE
compares all of the shifted values with the unshifted values and
3 sorts these two series of values in decreasing order of magnitude.

1127767


1 Si~niicantly, when a shitcd value and an unshi~ted
occurrence value are ~ound to be equ~l, the two values are
deleted As a result, the excl~slve ORing (XOR) function
is provided. The result.~nt series o~ values are provided
from the P~S4 selection circuit a~ output of the P~EVOLVE
MODULE to the El register of the ENCODE MODULE The ENCODE -
~DVLE in turn, by use of one of its two clipping functions
(described for ENCODE MODULE), clips off those high order
occurrence values from the resultant series which are larger
than the width o~ the iso-entropicgram, i.e., lar~er than
the width of the original input line.
The resultant series of occurrence values provided by
the REVDLVE ~DULE to the ENCODE ~VLE are in absolute coded
form ant the ENCCDE I~DU~E converts these occurrence values
to hybrid form for storage in-the ~RY MODULE as described
above.

B. ComPonents
The REVOLVE MODULE of Fig. 17 includes 8 bit or 8 flip
20 flop register~ CRl, CR2 and DN. Each of these registers ~ -
i8 formed of register type SN74100 disclosed at page 259
in the above TTL boo~. Each has load circuitry which,
responsive to a control signal at the L input along the
side of the registers, causes the 8 bit information signals
2S applied at the upper side to be stored into the correspond-
in~ re~ister.
Selection circuits RDSl-RDS4 are provided. The selection
circuits are o the same type disclosed above which, responsive
to a control signal at the numbered inpu~ts along the side of
~3 the selec~ion circuits, couple the 8 bit inputs indicated
~lon~ the upper side o e~ch seLection circuit throu~h ~o an
.
,'.

- o
llZ7767

1 ~ hit output circuit.
In ad~Iition, an ~rithmetic ALU i~ provided o tIle
same type disclosed above Additionally, lo~ical signal
inverters 402 and 403 are provided for ormin~ the lo~,ical
inversion of the signal at E and CLK, respectively, and for
providin~ corresponding outputs at E and ~
A clock 412 is a source of regular occurring, equalLy
spaced clock pulses. Flip flops RCE, RS and Pl through P9
are provided, flip flops PL-P9 forming the control counter
10 413. One-shot multi-vibrato~ REVG0 and REVEND are provided. -
One-shot multi-vibrators P~VGO and REVE~D normally form a
false signal at outputs REVGO and REVEND but re~pond to a
control signal applied to their input9 for setting to a
1 state wherein true signals are formed at outputs REVGO

and ~EVEND for a time interval equal to that between the
beginnings of ~o successive clock pulses from the clock 412.
REVEND when formin~ a true signal at output REVEND signals
the calling module that the revolve operation is co~plete.
Switches 404 and 406 are provided, each providing at -;
its output a continuous 8 bit binary coded signal, repre-
senting the 2'~ complement of l, thereby representing -1.
AND gate 416 and OR gates 418 and 420 are conven~ional
~ND and OR gates well Icnown in the computer art and need no `-
further explanatlon. Boolean logical equations are used to

indicate varlous loglcal ~ates in the system as dlscussed
above. Cloclc suspension logic 422 suspends operation of
the REVOLVE MDDULE by terminating the CLK and ~g pulse
while one of the other module~ co~npletes its operation.
Along the right side of the REVOLVE r~DULE schematic

3a are shown the input and output control lines for the

-156-

llZ776~

1 REVOLVE ~lODUL~, ~nd the in~orm~tion in~u~ and O~ltpU~ lines
usin~ ~he sal~e sys~em o nota~on descr1l~d hereLnabove.

C. Detailed Description
The REVOLVE ~DU~E during its revolve function cooperate~
with the ~;~ORY, ENCODE, DECODE I and II, and DELTA ~ODULES.
Normally the DELT~. ~DULE provides the component powers of 2
of the number of lines to be revolved and the DECODE I and II
MODULES each read and decode the same event occurrence vector
from the ~IORY MODULE. The DECODE I and II MODULES provide
the absolute coded occurrence values, making up the event
occurrence vector, one at a time as requested by the REVOLVE
MODULE. Both the DECODE I and II ~DULES prov~de the
absolute coded occurrence values in the same order but one
decode module may be requested to provide several occurrence
values before the other decode module provides an occurrence
value. To be explained in more detail, this operation i9
required in carrying out the exclusive Y,ORing operation.
m e resuLt ~ormed by the REVOLVE ~DULE is a ~equence of
abso~ute coded occurrence values which are encoded by the
ENCODE ~DVLE back to hybrid fonm and written into the
ME~DRY M!ODULE.
To be explained in more detail, a simple merge of
the occurrence values may be effected by the REVOLVE ~DULE
without XORing simply by providin~ a value o~ O to the
DELTA ~ULE a~ the nu~ber of lines to b~ revolved.
To obtain a better overa}l vi~ o~ the REVOLVE ~DULE,
refer n~ to ~he REVOLVE ~IODVLE flow, Fig. 18 and the
REVOLVE~ODULEschematic and blockdiagram, Fig. 17, and
consider in general the sequence of operation. ~s indicated


-157-

1~27767

1 in Table lL, th~ REVOLVE t~D~E cloes not h~ve ~ ~or~l~L set
o~ input and o~put values. Ilowever, ~lle in~uts and output3
indicated for tlle ENCODE, DECODE I a~d II and DELT~ ISODVLES
are present. The result o~ the revolve function i9 a line o
an iso-entropicgram which is stored in the ~EI~Y ~IODULE,
During RBl and RB2 of the REVOLVE rIODULE flow, the DELTA
MODULE is called by the REV~LVE MODULE, causing the DELTA
~ODULE to provide its first component power of 2 malcing up the
n~mb~r of lines to be revolve~. The first aad subsequent component
powers of 2 are stored in the re~i~ter DN in the REVOLVE I~DULE.
During RB2, the DEC~DE I and DEC~DE II ~DULES and tle ENCODE
~DULE (the latter not indicated on flow) are initialized by
setting the appropriate initial conditions therein prece~ing
the first call on these modules.
During RB4, flip flop DELEND is checked and if in an O
state, the value of the number of lines to be revolved
contained in DELI of the DELT~ MODULE has not been completely
broken into all of its component po~ers of 2 and, re~ardless --
of the state of flip flop RS, control goes to RB5 for
further processing. If, during RB4 and RB5, flip flops
DELEND and RS are in 1 and 0 states, respectively, the
flip flop DELEND ind~cates that the value of the number of
lineg to be revolved contained in DELI has no~ been
conple~ely brolcen down into its component power~ of 2, and
the flip flop RS indicates that a no~n zero value i8 ~tored
in DELI and RB5 is also entered for further processin~,
However~ ij during RB4 and RB6, flip 10ps DELEND and RS
are both in a 1 state, flip flop RS indicates a simple
merge operation and that an n va~ue has been stored in
3 DELI by the calling module. DELEND indicates that the


-158-

11~7767

1 t:wo s~ries o occurrence~ rom tllc DECOl)~ I and II MODUL~S
hav~ ~lready been merged. Accordin~ly, ~:he REVOLVE MoDuLE
operation is EXITED.
DuL ing RB5 the DECODE I ~ODU~E i9 called by the REVOLVE
~ODULE by set~ing the DlGo multi-vibrator to a 1 state and,
the fir~t time in P~B5, the irst and hl~hest numbered
occurrence from the input line to be revolved is provided
by the DECODE I ~DULE and stored in the CRl register of
the REVOLVE ~IODULE. Typically~ the ne~t operation is in ; -
RB8 through RB9, combin~ng the highest component power of
2 of the number of lines to be revolved contained in the
DN register with the occurrence value contained in the CRl
register and the result i8 stored back into the CRl register.
Since the occurrence value provided by the DECODE I MDDULE ~
15 is in absolute binary coded form, the sum results in a ~ -
value simulating the right shift of '~N" places of the
occurrence value provided by DEOODE I.
Over10w i~ checket during RB10. If overflow has
occurred, this meaDs that the resultant shifted value in
CRl is larger than the DPM c a n h a n d 1 e.
Thus, the content of CRl i9 larger t~an the current i80-
entropicgram width. Thls is so since the width i~
constrained to lle within the bounds of the machine.
Therefose, when over1~ occurs, control returns to RBs
2 and the DECODE I MODULE is again called, 80 th~t it reads
the next s~aller occurrence value which ls then combined
with the contene o~ DN and stored into CRl. Therefore,
the result previously formed during RB9 and stored in CRl
¦ is ignored. On the other hand, i~ overfl~ did no~ occur
~30 ¦ or if flip 10p EOFl(end o Eile for DECODE I MoDuLE) is true, ~;

-159- ~
~ ' L ' ''

1 1~27767


1 ¦ conl:roL ~oe~ t:o ~r,L2.
¦ Durin~ r~Bl2-Ls~ e D~CODE II ~DUI~E i~ called by
¦ set~ing ~lle D2GO mul~i-vibrator into a 1 state. Ini~ially,
¦ ~he D~OODE II M~DUL~ p~ovides the lar~est occurrence value
S ¦ and this value is stored in re~ster CR2. I there ~9
¦ nothing to read (i.e., end of file has ~een reached Eor
¦ DECODE II 2~DUL~), flip flop EOF2 i9 true and RB15 i5 ~ .
¦ entered where C~2 i8 loaded with a value of -1 ;
l D~ring RBl6~ outputs EoFl and EOF2 are checked to see
10 ¦ i~ both are true and if so, th~ indicates the end of file ~-
¦ for both DECODE I and DECODE II ~DDULES. If end of file
¦ has been reached, control goes to RBl7-RBl9 because
¦ this portion of the revolve or merge is complete.
¦ Accordingly, flip flop ELAST is set and the ENCODE ~ODVL~
15 ¦ is in~tructed to write out its final value. MLN3 in the
¦ E~ICODE ~DULE contains the physical length of the line ~hich
¦ ~as ~ust generatet. This value is clocked into MLNl and
¦ MLN2 of the DECODE I and II MODULES. This i~ done in
¦ case another revolve i8 needed.
20 ¦ I either or both of the flip lops EOFl or EOF2 are
in a 1 state, the end of one or both o the files being
¦ read by DECODE I and II ~DULES has been reached and RB20
¦ i8 entered ~ollowing RB16. During RB20, the shifted
occurrence value in register CRl i8 compared with the
un~hlfted oocurrence value in CR2. If the shited value
contained in cnl i9 larger, then it is necessary to ~rite out
this value and accordin~ly, RB23-24 are entered where the
ENCO~E ~DDULE i9 called by setting the ENGO mul~i-vibrator to 1,
causin~ the content of register CRl to be sent to the EI
register o~ the ENOODE ~DULE where it is subgequen~ly encoded and

.. -160-
~, ..

'~ llZ7767

written out in a pre~elc,te.d area o the MEMORY MODUL~. Duriny
R~25-RB28, the D~COD~ I MODUI,E i8 aqain called by ~etting DlGO
to 1; the next lower occurrence value is read from the same
lnput line; the next lower occurrence value is combined with the
6 same component power of 2 value contained in the DN register;
and the result ('shifted occurrence value) is stored in the CRl
register. Subsequently, RB20 of the REVOLVE MODULE flow is again
entered where the content of registers CRl and CR2 is again com-
pared. This operation occurs-and is repeated as long as the
shifted value stored in register CRl is larger than the unshifted
value in register CR2.
If, during RB2~ of the ENCODE MODULE flow, it is found that
the unshifted occurrence value contained in CR2 is larger than the
shifted occurrence value in CRl, RB21-RB23 are entered where the
ENCODE MODULE is called and the unshifted occurrencevalue contained
in the CR2 register is sent via the RD~S4 selection circuit to the
EI register of the ENCODE MODULE for encoding and writing out in the
same preselected area of the MEMORY MODULE. RBl~ is re-entered
where the DECODE II MODULE is again called, causing the next lower '`~
2~ occurrence value to ~e read out by the DECODE II MODULE and stored -`
in register CR2. This operation also occurs and is repeated
until an unshifted occurrence value is stored in CR2 that is
larger than the shifted occurrence value in the CRl register.
If during RB2~ of the REVOLVE MODULE flow it is found
that the shifted occurrence value oontained in CRl is equal to the '`
unshifted ocaurrence value contained in CR2, then RB5-RBl9 of the
REVOLVE MODULE flow are again entered where the action of the
ENCODE MODULE of storing a value in the iSo-entropicgram is
skipped, and two new occurrence values are read from the same input -''~
line by the DECODE I and DECODE II MODULES.

` ::`
- 161 -
I
; " ` `

l~Z7767

1 When ~he end o file o bo~h the DECO~E I ~nd II
MODULES are reached (i.e., no further occurrence values
remain to be read by either the DECODE I or the DECODE II
MODULE), RB17-19 are entered where the ENCODE MODULE ig
signaled to write out the last occurrence value being
formed ln the preselected area of the MEMORY MODULE.
It should be noted that during a revolve operation the
MARl register of the DECODE I MODULE and the MAR2 register
of the DECODE II MODULE form pointers for the respective
modules which indicate which occurrence value of the common
input line is next to be read by the co responding decode
module. In this manner, the DECODE I and DECODE II MODULES
can provide a string of occurrence values from the same
input line at different rates, the occurrence values being
provided one by one by the respeetive decode modules, as
called by the REVOLVE MODULE. During a CHANGE operation
the MARl register and the MAR2 register form pointers
for the respective modul 8s which indicate occurrence values
from different memory areas that are to be read by the
corresponding decode module.
Refer now in more detail to the organization of the
REVOLVE MODULE, referring to the schematic diagram of Fig. 17
and the flow dlagram of Fig. 18. Initially, the MINI
COMPUTER forms a true signal at the output MINIT causing
2S the circuits to which it i9 connected, including control
counter 413, flip flops Pl-P9, to be reset to 0. The REVOLVE
MODULE is called by any one of the following modules: SEED,
: CHANGE and OU~PUT, by forming a true signal at the respective
outputs SM9, CM6 and OM5, any one of which causes the
3 O~ gate 418 to trigger the one-shot multi-vibrator ~--
~. ` . ' . .
-162-

~ ` 1127767

RF.VGO to a 1 ~tate, causing a true signal at the REVGO
output. The true signal at REVGO causes the RCE flip flop
to be set to a 1 state. The 1 state o~ the RCE flip flop
enables the AND gate 416 to start coupling the clock pulses
from the clock 413 to the output CLK and through the inverter
403 to CLK.
The one-shot multi-vibrator REVGO returns to a 0 state.
Since flip flops Pl... P9 are all 0, the following pulse at -
CLK causes the flip flop Pl to be set to a 1 state, thereby ;~
10 causing RBl of the REVOLVE MODULE flow to be entered. The -
1 state of the Pl flip flop causes a control signal at the
output Pl of the Pl flip flop. The control signal at `
output Pl in turn resets flip flop RS to 0; causes a
true signal at the RMl output of the input and output
15 control lines from the REVOLVE MODULE causing the DELFST -
flip flop in the DELTA MODULE to be set to a 1 state; and
also causes a true signal at the RM3 output from the
REVOLVE MODULE, setting the DELGO multi-vibrator in the -
DELTA MODULE to a 1 state, thereby calling the operation of
20 the DELTA MODULE as described hereinabove. -
The DELTA MODULE then converts a number representing ~-
the number of lines in the iso-entropicgram to be revolved
to its component powers of 2 starting with the largest power
of 2, all as described in connection with the DELTA MODULE.
25 At this point in time, the DELMEND one-shot multi-vibrator
in the DELTA MODULE is in an 0 state forming a false signal
at the DELMEND output whiIe a true signal is concurrently
being formed at the R~3 output from the REVOLVE MODULE.
Accordingly, logic RM3.DELMEND of the clock suspension
30 logic 422 become false, causing a false signal at the input ;
.~ ,

- 163 -
~: :
~' ,,.

67

to the ~D ~ate ~16, disabling urther clock signals from
bein~ applied at the CLK and CLK outputs, thereby disabling
further operation in the REVOLVE MODULE. The DELTA MODULE
independently completes the formation of the component power
of 2 of the number Te~resenting the lines to be revolved
and then sets the DELMEND one-shot multi-vibrator to a 1
state, applying a true signal at the DELMEND output. The
term RM3.DELMEND then goes true, causing the clock
suspension logic 422 to again apply a true signal to the
AND gate 416, again causing clock pulses to be formed at ~-
the CLK and CLK output. The true signal at output Pl at
the following pulse at CLK sets the P2 flip flop to a 1
state, causing a true signal at the P2 output thereof
and resets flip flop Pl to 0. The true signal at the P2
output causes a true signal at the L input to the DN
register, which in turn causes the DN register to store
the largest power of 2 signal formed in the DELO register
of the DELTA MODULE, and RB3 of the REVOLVE MODULE flow
is entered. The true signal at the P2 output of the P2
flip flop causes the DECODE I and DECODE II MODULES and
the ENCODE MODULE to be initialized. Initialization is
a process whereby a true signal at the P2 output of control
counter 413 causes a true signal at the RM2 output of the
REVOLVE MODULE, which in turn causes the DlFST flip flop in
DECODE I MODULE, the D2FST flip flop in the DECODE II MODULE,
and the EFRST flip flop in the ENCODE MODULE, all to be set
to a 1 state. RB4 of the REVOLVE MODULE flow is now entered
where the state of the DELEND monostable of the DELTA
MODULE is checked and if in a 1 state, control goes to RB5.
If, however, the DELEND is in a 1 state, then control goes




- 164 -

llZ7767

to ~B~ re the RS Elip flop of the REVOLVE MOD~LE is checked.
If in a 1 sta~e, flip flop RS signals a merge operation. The
logic P2.DELEND is true, resetting flip flop RCE and
monostable REVEND to 0, causing the clock signals from
gate 416 to be disabled and the operation to EXIT.
The REVEND monostable applies a true signal to OR gate 420
causing it to reset counter 413 to zero. At the same time,
the true REVEND signal is applied back to the calling
module indicating that the REVOLVE MODULE has completed
its function.
Assume now that during RB4 the DELEND monostable in
the DELTA MODULE is in a 1 state forming a true signal at
the DELEND output, this signal, in coincidence with true
signals at RS, the P2 output of control counter 413, and --
the pulse at CLK, causes a true signal at the RM8 output
which goes to the SWITCH M~TRIX, causing the SWITCH MATRIX
to be activated to perform its reading and writing operation -
in the prescribed MEMORY MODULE area in the manner to be -;`
described hereinafter. The true signals at the P2 and
CLK outputs in the REVOLVE MODULE additionally cause a
true signal at the RM4 output of the REVOLVE MODULE which -~
in turn sets the DlGO monostable of the DECODE MODULE to
a 1 state, thereby calling and causing the DECODE I MODULE
to provide the next smaller occurrence in the input line
from the MEMORY MODULE and provide it as an absolute binary
coded occurrence value at the DOl output of the DECODE I
MODULE. ~he true signal at the RM4 output of the REVOLVE
MODULE in coincidence with a true signal at the DlMEND
output from the DECODE I MODULE causes the clock suspension
logic 422 to again form a false signal and disable the gate




- 165 -

7767

416, preventing further clock signals from being ormed at the
CLIC and CLK outputs, thereby disabling the operation of the
REVOLVE MODULE. When the DECODE I MODULE completes its
operation, the true signal is removed at the DlMEND output,
thereby causing the clock disable logic 422 to again enable
the gate 416 and clock pulses to be formed at the CLK and CLK
outputs. The true signal at the P2 output of control counter
413 in coincidence with the pulse at CLK causes the P3 flip flop
to be set to a 1 state, thereby forming a true signal at the

P3 output and the P2 flip flop is reset to 0. The true signal
at the P3 output of the control counter 413 and at the EOFl
output of the ENCODE MODULE (indicating that the end of file has
not yet been reached), causes the logic P3.EOFl to be true and
the value of the input line provided by the DECODE I MODULE -

is coupled through the RDSl selection circuit to the information
input of the CRl register. The true signals at P3 and the
signal at CLK cause the load circuitry in CRl to store the
occurrence value from the DOl output of the DECODE I MODULE
into the CRl register.

During RB7, if the end of file had been reached and the - -
DECODE I MODULE was forming a true signal at the EOFl output,
RDSl would not have coupled the output DOl from the DECODE I
MODULE to register CRl but, instead, would have coupled the
signal representing the 2's complement of 1 ~-1) formed

by the switches 404 to the information input of CRl causing
the corresponding value to be stored in re~ister CRl. This
occurs during RBll of the flow after the end of file is reached

by the DECODE I MODULE where no further occurrences are to be
provided by DECODE I MODULE and a -1 insures that further
occurrences will not be obtained from DECODE I MODULE nor



- 166 -


: ~~


" .", , , ~ . , , , ' . , ! ` ~ ` " `

1127767

outputted ~rom register CRl. All ~urther occurrences, if any,
are taken ~rom CR2.
The true signals at the P3 output of control counter 413
and the RS, and CLK outputs also cause a true signal at the
RM12 output of the REVOLVE MODULE, which in turn sets the
special flip flop SP in the SWITCH MATRIX. To be explained
in more detail, the SEED MODULE forms a true signal at SM5,
causing the SP flip flop to be set to a 1 state only if a
current output is considered to be the best seed. This will
be discussed in more detail in connection with the SEED MODULE. ~
The tru~ signal at the P3 output also causes the P4 flip :-
flop to be set to a 1 state and flip flop P3 is reset to an 0 -
state at the following pulse at CLX, and RB9, RB10, RB12 of ~
the REVOLVE MODULE is entered. The true signal at the P4 output
of the P4 flip flop causes the RS flip flop to be set to a 1
state. As explained before, this is done so that after the
first pass the REVOLVE MODULE will EXIT when DELEND (DELTA
MODULE) is in a 1 state.
The true signal at the P4 output causes the RDS3 selection
circuit to couple the power of 2 signal in the DN register to
the ALU and causes the ALU to add the content of the registers
CRl and DN and form an output signal at OP corresponding to
the sum. This signal represents the occurrence value shifted -
towards the most significant position by the number of
2S possible occurrence values indicated by the power of 2 value
in regisLer DN. This signal is called the shifted occurrence
value.
The ALU forms a true signal at the OVL output, causing
the RDSl selection circuit to couple the shifted occurrence
value from the OP output back to the information input of
the CRl register. Additionally, the true signal at P4 and



- 167 -
.. - ~ .
".


- ~ ~
llZ~767

1 ~FI in ~oincidcnce wi~ he pul~a a~ CJ.I~ ca-lse3 tlle loacl
circul~ o~ tlle CRl rc~ ter to store the vaLue bacl in~o
~he cr~l resister.
I~ over~lo~ occurred ~rom tlle 9Um 0~ the Cr~l and DM
registers, the result i3 lar~er than the width of the iso-
entropic~r~m and there is ormed a true si~nal at the OVL output
which in con~unction with the CLK puLse causes the output P~M~
to be true. In addition, the true si~nals at the P4 output
from counter 413 and the OVL output from the ~LU cause the
input to flip flop P3 in counter 413 to be 9et to a 1 state.
In the flcw dia~ram this is equivalent to going from RB10
to RB5. The reason for this flow is thst if overflow occurs
in the addition of Cl'l and DN, this indicates that the
simulated right slift has generated an iso-entropicgra~
~5 column value which cannot be represented by the DP~I, If
this is the case, we know the number i9 larger than the
current iso-entropicgram width (which obviously is
represented in the machine) and thus the above value would
have been clipped by the ENCODE MODULE. Going from RB10 to
20 RBS eliminates the call to the ENCODE MODULE and nothing is
written in the MEMORY MOD~LE.
RM4 ~ets the DloO monostable in the DECODE I MDDULE.
As a result the next lower occurrence value is provided by the
DECODE I MCDULE. In addition, the logic RM4.Di~DEND is true,
25 causin~ the clock suspenslon lo~ic 422 to suspend the cloctc
until the DECODE I ~DULE is fin~shed. When f~nisbed, the
ne~t lower occurrence value in DOl o~ the DECODE I MODULE
is stored into the CRl re~ister and hence over-writes the
overflow value previously stored in CRl.
3 Assume RBl2 of the REVOL~E ~DULE flbw is now entered
~ ` . ''
-168-
.,~ , '~
....

llZ7767

1 followin~ RB10. The true ~ignal at thc P4 output of the P4
flip flop in coincidence with the true signals at the CLK
output and the OVL output causes a true signal at the RM5
output of the REVOLVE MODULE which sets the D2GO multi-
vibrator in the DECODE II MODULE to a 1 state, therebycalling the DECODE II MODULE so that it too reads an occurrence
value from the same input line as the DECODE I MODULE obtained
its occurrence value. If this is a merge operation initiated
by the CHANGE MODULE, DECODE II will be reading a line - --
0 which is different from the line being read by the
DECODE I MODULE.
The D2MEND monostable in the DECODE II MODULE is in state 0
causing a true signal at the D2MEND output. The true signal -
at the RM5 output of the REVOLVE MODULE in coincidence with

the true signal at the D~MEND output indicates that the
decoded occurrence value is not ready in the DECODE II MODULE
for the REVOLVE MODULE and causes the clock suspension logic
422 to again apply a false signal to and disable the gate 416
from supplying clock pulses and the operation of the REVOLVE
MODULE i8 suspended. After the DECODE II MODULE provide~
the occurrence value, it returns control to the REVOLVE
MODULE by removing the true signal at the D2MEND output
of the D2MEND monostable. This enables the gate 416,
allowing clock pulses to again be formed at the CLK and CLR
output, enables the P5 flip flop to be set to a 1 state, and
enables flip flop P4 to be reset to 0.
The true signal at the P5 output of the P5 flip flop ;
in coincidence with a true signal at the ~ output of the
EOF2 flip flop in the DECODE II MODULE causes the selection

3C circuit RDS2 to couple the occurrence value from the DECODE II
': ` . ~'

- -169-

~", - , " ~ , I" ~ ~ .,, " ~ "~

11;~7767

MODUL~ to the inEormation input of the CR2 register. The
true signal at the P5 output in coincidence with the following
pulse at CLK causes the value to~be stored into the CR2
register. It should be noted that if this is not a merge
operation, the ~alue obtained from DECODE II MODULE is an
actual occurrence value in the same input line of the iso-
entropicgram and constitutes the unshifted occurrence value
which will be compared with the shifted value now contained
in the CRl register. It should be noted that should the
EOF2 flip flop in the DECODE II MODULE be in a 1 state, the
end of file has been reached by DECODE II MODULE and therefore
no occurrence value is being provided by DECODE II MODULE.
Accordingly, the RDS 2 selection circuit, responsive to the
true signals at P5 and EOF2, couples the output of the switches
406 to the input of the CR2 register, causing the 2's complement
of -1 to be stored in the CR2 register.
The checking of flip flop EOF2 and placing a -1 in CR2
if EOF2 is in a 1 state is necessitated by the following.
If in a merge operation, the DECODE I and DECODE II MODULES
are reading different lines from different MEMORY MODULE
areas. In case the DECODE II MODULE finishes reading first,
the -1 in CR2 will force the DECODE I MODULE to pass the
remainder of its occurrence value to the ENCODE MODULE via
RB20, RB23, RB24.
RB16 of the REVOLVE MODULE flow is now entered where the
states of the EOFl and EOF2 flip flops of the DECO~E I and
DECODE II MODULE5 are checked. If both flip flops are in a
1 state, indicating that both DECODE I and DECODE II MODULES
.
have reached the end of file (i.e. the end of the input line

of the iso-entropicgram), RB17 of the REVOLVE MODULE flow




- 170 -


.

``` llZ7767


is entered and the true signals at the outputs P5, EOFl
and ~iOF2 cause a true signal at the RM9 output which sets
the ELAST flip flop in the ENCODE MODULE to a 1 state.
Additionally, the following pulse at CLK in coincidence
with the true signals at P5, EOFl and EOF2 cause a true
signal at the RM7 output which in turn sets the ENGO one-
shot multi-vibrator to a 1 state, thereby calling the
operation of the ENCODE MODULE. This causes the ENCODE I ¦
MODULE to encode and store the last of the occurrence values
of the new iso-entropicgram line into the MEMORY MODULE.
Assuming that either the EOFl or the EOF2 flip flop
in the DECODE I and DECODE II MODULES is 0, thereby
indicating that either DECODE I or DECODE II MODULE has
reached the end of file,RB20 of the REVOLVE MODULE flow
is entered where the shifted occurrence value in CRl is
compared with the unshifted value in CR2. It should be noted
that the registers CRl and CR2 contain absolute binary coded
values, indicating directly the shifted and unshifted
occurrence values. This comparison operation is an important
part of the REVOLVE MODULE operation as it is a key part
of the exclusive ORing process. To this end, the shifted
and unshifted occurrence values of the input line must be
sorted into decending order of magnitude. Those shifted
and unshifted occurrence values which are equal are dropped.
This then exclusive OR's the shifted and unshifted occurrence
values and cau~es a revolve from one line to the next in the
iso-entropicgram.
Referring to RB20 of the REVOLVE MODULE flow, the true -
signal at the P6 output causes the RDS3 selection circuit to
couple the CR2 register to the ALU and causes the ALU to

: .

- 171 -

llZ7767

compare the content: of the CRl and CR2 registers. If the
shifted value contained in CRl i8 greater, a true signal
is formed at the G output. This causes RB23-RB30 of the
REVOLVE MODULE flow to be entered where the shifted value
contained in CRl is encoded and stored into the MEMORY MODULE
by the ENCODE MODULE and the DECODE I MODULE reads its next
occurrence value from the same input line, the next ;
occurrence value is combined with the content of register
DN to form a shifted occurrence value, and the shifted
occurrence value is stored in register CRl.
Consider in more detail the operation during RB23 and RB24.
The true signals at the G output of ALU and at the P6 output
causes the RDS4 selection circuit to couple the shifted
occurrence value contained in the CRl register to the
output thereof, which goes to the input of the EI register
of the ENCODE MODULE. A signal is formed at the E output
of the inverter circuit 403 when the values compared are
-- not equal. The true signals at outputs P6 and E cause a
true signal at the RMll output of the REVOLVE MODULE which,
in turn, causes the EDS6 selection circuit in the ENCODE
MODULE to couple the output from RDS4 to the EI register.
The true signals at P6, E and CLK energize the L input of
the EI register of the ENCODE MODULE, causing the
occurrence value contained in CR2 of the REVOLVE MODULE
to be loaded into the EI register. The true signal at
the outputs P6, E and CLX also cause a true signal at the
RM7 output of the REVOLVE MODULE which, in turn,sets the
ENGO multi-vibrator to a 1 state, thereby calling the
operation of the ENCODE MODULE as described above. Once
called, the ENCODE MODULE converts the shifted value obtained
~ ` " . ' ' '~''
- 172 -

~27~7~;7

from th~a CRl rcgister to hybrid Eorm and stores it in the
MEMORY MODUL~.
If, during the true signal at the P6 output both the
EOFl and EOF2 flip flops from the DECODE I and DECODE II
MODULES are in a l state, a true signal is formed at the
RMl4 output of the REVOLVE MODULE which, in turn, causes the
MLNl and MLN2 registers of the DECODE I and DECODE II MODULES
to be loaded with the value contained in the MEN3 register
of the ENCODE MODULE. This is done since the complete input
line will have been processed by the REVOLVE MODULE and
the new iso-entropicgram line which is now in the area
designated by the MLN3 register of the ENCODE MODULE
forms the new input line and is next to be processed by
the DECODE I and DECODE II MODULES in order to revolve to
the next line of the iso-entropicgram. This operation allows
subsequent lines in the iso-entropicgram to be formed from
the new iso-entropicgram line just formed by the REVOLVE MODULE. L
Continuing with RB24 of the REVOLVE MODULE flow, the
true signal at the RM7 output in coincidence with the true
signal at the ~ output of the ENCODE MODULE causes
suspension logic 422 to suspend the operation of the ~ ;
REVOLVE M~DULE similar to that discussed above until the
ENCODE MODULE has compIeted its encode function and removes
the true signal at the EMEND output. After the suspension
has ended and the gate 416 is again enabled by the clock
suspension logic 422, the following pulse at CLK causes
flip flop P7 to be set to a 1 state and flip flop P6 is reset
to 0. The 1 state of the P7 flip flop is used as a time delay
~; in the system. A time delay is needed in order to allow the
¦~ 30 ENCODE MODULE to complete its operation before the decode.
, . :'
- 173 -
' ' "

.. ,- :

7 767

moclules are called. This is needed in this system since
all the modules operate serially. However, this need not
necessarily be the case as the system could be designed
so that all the modules operate in parallel.
RB25-28 are now entered. A true signal at the P7 output
again causes the selection circuit RDS3 and the ALU to
compare the shifted and unshifted values, respectively,
contained in registers CRl and CR2. Since the values have
not changed, the shifted value contained in register CRl
is the larger and hence a true signal is again formed at
the G output of ALU. The true signal at the P7 and G
outputs causes the flip flop P8 to be set to a 1 state
at the following pulse at CLK. Additionally, the true signal -
at the P7, G and CLK outputs causes a true signal at the
RM4 output, thereby again calling the DECODE I MODULE,
causing it to read out the next lower actual occurrence
value in the same input line from the MEMORY MODULE. As
before, the true signal at the RM4 output in coincidence
with the true signal at DlMEND from the DECODE MODULE causes
the clock suspension logic 422 to disable the gate 416 and
suspend the operation of the REVOLVE MODULE until DECODE II
MODULE removes the true signal at DlMEND, indicating that
it has now completed its decode operation and is now
providing its next lower actual occurrence value of the
input line. During RB27 the true signal at the P8 and EOFl
outputs causes the RDSl selection circuit to couple the next
lower occurrence value from register DOl of the DECODE I
MODULE to the information input of CRl and the following
pulse at CLK causes the CRl load circuit to store the value
into the CRl register. Similar to that described above, in

- 174 -


I - .

7767 ~-`


1 ¦¦ nncc:tion wlth the true slgnal at P3, ehould the EOFl
flip flop of the DECODE I MODULE be in a 1 state, providing
a true signal at the EOFl output, the DECODE I MODULE
would have reached the end of f ile, RB30 would be entered
and hence the 2's complement of a -1 represented by the
switches 404 would be stored in register CRl rather than
the output f rom the DECODE I MODULE.
Continuing with the operation during RB27-RB28, the
true signal at the P8 output causes the P9 flip flop of -:

the control counter 413 to be set to a 1 state and RB28
of the REVOLVE MODULE is entered. The true signal at the
P9 output causes the RDS3 selection circuit to couple the ~ -
power of 2 value contained in the DN register to the ALU
and causes the ALU to add the content of the CRl and DN

lS registers and form a new shifted occurrence value at the -
output OP. --~ -
As explained with pulse P4, if overflow occurs during ~ -
the addition of CRl and DN, a signal is formed at OVL . ~:.
indicating a right shift to an iso~entropicgram column

value which cannot be represented by the DPM. The value
is therefore ignored. Accordingly, if output OVL i3 true,
the logic P9.OVL is true, causing flip flop P8 and P9 to be
set to 1 and 0 states, respectively, at the following CLK
pulse and a signal i8 to be formed at output RM4 during
2~ the CLK pulse P9, and DlGO of the DECODE I MODULE is set.
The DECODE I MODULE reads the next lower occurrence value
as explained above. However, if the addition does not produce
overflow, OVL is true, causing logic P9.OVL to become true
and the following CLK pulse sets flip flops P6 and P9 to

30 ~1 and 0, respectively, and control returns to RB16.



-175-
..

~lZ77t;7


1With the new occurrence value ~rom ~he input line
now read from the MEMORY MODU~E and the shifted value
contained in the CRl register, RB16 and RB20 o the REVOLVE
MODULE flow are reentered. The true state at the P6 output
of the P6 flip flop again causes the content of registers
CRl and CR2 to be compared, as discussed above, to determine
which is the larger. If the new shifted occurrence value
contained in register CRl i~ the larger, RB23-RB30 are again
entered where the larger value contained in CRl is sent to
the ENCODE ~DULE for conversion to hybrid for~ and writing
in the MEMDRY MDDULE and the DECODE I M~DULE i9 again cslled,
causing the next lower value occurrence value of the same
input line to be read from the MEMDRY ~CDULE, combined
with the value in DN to form ~ shifted occurrence value
and stored in regi~ CRl.
A88ume that during RB20, during the true ~ignal at the P6
output, the ALU detects that the content of the unshifted
occurrence value at CR2 i8 larger than that of the shifted
occurrence value contained in register C~l. The ALU ncw
forms a true signal at the L output causing RB21-RB22
to be entered.
During RB21-RB22 the true signal at the P6 ard L
outputs causes the RDS4 selection circuit to couple the
unshifted occurrence value contained in register CR2 to
the ENaoDE ~DULE and the true ~ignals at the P6, ~ and
~SR outputs cause a true 3ignal at the RM6 and RM7 outputs
; -wh~ch, in turn, cause the unshifted occurrence value ln CR2
to be stored into the I register o~ the ENOODE MODULE
and cause the ENCODE MODULE to be called, Thus called,
the ENCODE MODULE encodes the unshifted occurrence value
from register CR2 to hySrid form and causes it to be stored
, . ,~,
-176- ;

` 1~27767

into the MEMORY MODUL~ in the new iso-entropicgram line
beln~ formed there.
As discussed above, the true signal at the RM7 and
~MEND outputs again cause the clock suspension logic 422
to suspend the operation of the REVOLVE MODULE. When the
ENCODE MODULE indicates that it has ended its operation
by removing the true signal at the EMEND output, the
suspension ends and the clock causes the P7 flip flop
to again be set to a 1 state, forming a true signal
at the P7 output which again causes the RDS3 selection circuit
and the ALU unit to again compare the shifted and unshifted
occurrence values contained in the CRl and CR2 registers.
Since the value in CRl is still smaller, a true signal
is again formed at the L output and RB12 is entered.
During RB12 the true signals at the P7, L and CLK
outputs cause true signals to be formed at the RM5 output
which, in turn, sets the D2GO one-shot to a 1 state thereby
calling the operation of the DECODE II MODULE, causing it
to read the next lower occurrence value from that which it
originally read from the MEMORY MODULE and provides it
for storage into the CR2 register.
The true signal at thè D2MEND output from the DECODE II
MODULE again causes the operation of the REVOLVE MODULE to
be suspended until the DECODE II MODULE provides the next
occurrence value. Once the next occurrence value is provided
by the DECODE I~ MODULE and the true signal i9 removed at the
D2MEND output, the clock suspension logic 422 again terminates
the suspension of operation of the REVOLVE MODULE and the
following pulse at CLK in coincidence with the true signals
at P7 and L cause the P5 flip flop to again be set to a l `
state where during RB14 the next lower occurrence value from

- 177 -

o ~
l~Z776~

1 the D~CODE I MODUL~ is stored into the CR2 r~gist~r, as
described above.
Assume now that RB20 of the REVOLVE MODULE f low occurs
and the P6 flip flop is in a 1 state and the shifted occur-
rence value contained in CRl is equal to the unshifted occur-
rence value contained in CR2, thereby causing the ALU to form
a true signal at the E output thereof and inverter 403 forms
a false signal at E. According to the excl~lsive ORing
procedure, it is necessary to delete both the shifted and
unshifted occurrence values in the CRl and CR2 registers
from the new iso-cntropicgram line being formed. Accord-
ingly, the ALU forms a false signal at the E output in
coincidence with the true signal at the P6 output. The
logic P6.E.CLR is now false and therefore the pulse at CLX
15 does not cause a true signal at RM7 and hence does not cause ~-
the ENGO multi-vibrator in the ENCODE MODULE to be set. The
true signal at the P6 output, hovever, causes the P7 flip
flop to be set to a 1 state where the ALU again compares
the content of register~ CRl and CR2 as discussed. Since
the values in CRl and CR2 are still equal, the ALU forms a
true signal at the E output. The true signal at the E output
in coincidence with the true signal at P7 sets the P3 flip
flop to a 1 state, thereby causing RB7 through RB20 of the -
REVOLVE MODU~E flow to again be entered where both the
DECODE T and DECODE II MODULES are called, causing respective
new occurrence values of the same input line to be provided
to the REVOLVE MODULE.
This process continues until during RB16 it is detected -
that both the EOFl and EOF2 flip flops of the DECODE I and
DECODE II MODULES are true, indicating that both DECODE I and
. , ~ .
-178- ~
':,,
':


Z7767

D~CODE II MODULES have reached the end of the input line.
When this occurs, true signals are ormed at the EOFl,
EOF2 and P5 outputs, causing a true signal to be ~ormed at
the RM9 output which in turn sets the ELAST flip flop in
the ENCODE MODULE which, in turn, causes the ENCODE MODULE
to store any remaining occurrence values in hybrid form in the
MEMORY MODULE as described in connection with the ENCODE MODULE.



D. Example of Operation.
Consider now an actual example of operation for the
REVOLVE MODULE. Table 4-B herein gives an example of the
way in which one revolves from one line to another in an iso-
entropicgram. Using this same example, consider the way in
which the present embodiment of the invention revolves from
line 2 to line 7. Before the REVOLVE MODULE is called, the
following preliminary steps are taken:
1. The MLNl register of the DECODE I MODULE ~nd the
MLN2 register of the DECODE II MODULE are stored
with the physical length of line 2 of the example
which physical length is normally obtained from
the IPRF.
2. Line 2 of the example, namely, event occurrence
vector 0, 1, 3, 8, 9, 10,11 is stored in hybrid
coded form in one of the memory areas of the
MEMORY MODULE.
3. The numbex of lines to be revolved, i.e., 5, is
loaded into the DELI register of the DELTA MODULE
`~ as described above.
The sequence of~operation following these initial ~;

conditions is as follows:



- 179 -

- llZ7767

RBl RS = 0
DELFST = 0 ; initialize DELTA MODULE
RB2 DELGO = l ; yet largest component
power of 2
DN = DELO = 4
RB3 DlFST = D2FST = 1
ERFST = l ; initialize DECODE AND
ENCODE MODULES
RB4-RB5 DELEND = 0:,DlGO = 1 ; get first value from ~.
DECODE I MODULE -.
DOl = 11 .
RB7-RBll CRl = DOl = ll ; load value from DECODE
MODS into CRl
CRl (15) = CRl(ll) +
DN(4) ; simulate the right shift
OVL = 0:,RB12 ~:
RB12-RB14 RS = l . ; set merge indicator
D2GO = 1,EOF2 = 0 ; call DECODE II MODULE ^ -
CR2 = DO2 = 11 ; load the output into CR2 ~`.
20 : RBl6 EOFl(a).EOF2(0) = 0 `: ~
, RB20 ; REVOLVE process not . :;
finished yet
......
RB20,RB23, : -
~ :RB24 ~ CRl(15)~ CR2(11):, RB23 .
EI - CRl - }5 ; transfer CRl to ENCODE
MODULE
ENGO - 1 ; call the ENCODE MODULE
~R 25-RB29 DlGO = l ~ ; call DECODE I MODULE -
: . CRl = D~l = 10;
. EOFl = 0~ ; get next value


- 180

` ~ - ~


1 CRl(14)~-CRl(10)
+ DN(4) ; simulate the right ~hift
OVL = 0 ,, go to RB16
R~16 EOFl.EOF2 = 0 , RB20
RB2C,RB23
RB24 C~.1(14~ ~ CR2(1~ .
EI = CRl = 14 ; write out through 14
call ENCODE
RB25-RB29 DlGO = 1 ; call DECODE I MODULE
CRl = DOl = 9, EOFl = 0 -
CRl(13~ = CRl(9) + DN ; simulate the shift
OVL = 0 ,RB16
RB16 EOFl.EOF2 = 0 .RB20
RB20,RB23,
R~24 CRl C131 ~ CR2(11),, .
EI = CRl = 13 ; CRl sent to ENCODE MODULE
call ENCODE CENGO = 1 ~
RB25 - RB 29 set DIGO = 1 ; call DECODE I MODULE ~. .
CRl = DOl = 8, EOFl = Q ; get next value
CRl(121 = CRlc8~ + DNC4) ; simulate the right shift
OVL = 0 ,,RB16 : -
RB16 EOFl~EOF2 = 0 , RB20
RB20, RB23,
RB24 CRl(121 ~ CR2(11) , ; simulate the XOR
EI = CRl -` 12 ; CRl sent to ENCODE MODULE
ENGO `8 1 ; call ENCODE MODU~E
:RB25 - RB29 DlGO ; call DECODE I MODULE
CRl = DOl = 3, EOFl = 0 ; :
: CRl(7~ =` CRlC3) + DN~4) ; simulate the shift
,
~ . 30 ~ OVL = 0 , RB16
, ~ . ` ,
; - 181 - ;
~7 .

` l~Z7767

1 RBL6 EOFl.EOF2 = 0 ,',
RB20 CR2(11)~ CRl(7) ; XOR `
RB21,RB22 EI = CR2 ~ 11 ; send CR2 to ENCODE MODULE
call ENCODE (ENGO=1) ; activate ENCODE MODULE
RB12-RB14 call DECODE II ; activate DECODE II MODVLE
CR2 = DO2 = 10,EOF2 = 0 ; store result in CR2
RB16 EOFl.EOF2 = O .'.
RB20 CR2(10) ~ CRl(7) ; simulate XOR -
RB21, RB22 EI = CR2 = 10 ; output CR2
call ENCODE
RB12-RB14 call DECODE II ; get next value
CR2 = DO2 = 9,EOF2 = 0 ;
RB16 EOFl.EOF2 = 0
RB20 CR2(9) ~ CRl(7)
RB21, RB22 EI = CR2 = 9 ; output CR2
call ENCODE
RB12-RB14 call DECODE II ; get next value
CR2 = D02 = 8,EOF2 = 0 ; -
RB16 EOFl. EOF2 = 0 `
RB20 CR2(8) 7 CRl(7) ; XOR
RB21,RB22 EI = CR2 = 8 ; output CR2
call ENCODE ; --
RB12-RB14 call DECODE II ; read next value ~-
CR2 = DO2 = 3, EOF2 = 0 ; from DECODE II MODULE
RB16 EOFl.EOF2 = 0 -
Ra20 CRl(7)~ CR2(3),', ; simulate XOR
RB23,RB24 EI - CRl - 7 ; output CRl ;
call ENCODE
~; RBZ5-RB29 call DECODE I
;~ 30 CRl = DOl = 1, EOFl = 0
CRl(5) = CRl(l) ~ DN(4) ; simulate shift ..
OVL = 0,~

- 182 -
,....
'' "
` ? ' ,~Y ~

~ 7767 ' J


1 r~B16 ~OFl.EOF2 o O ,,
r~B2o cr~l t5)~ CR2(3) ; simu~ate ~OR
RB23, R~2~ EI ~ CP~l ~ 5 ; output Cl~
call ENCODE
5 RB25-RB29 call DECODE I ; read ne7:t value
. CRl ~ DOl ~ O, EOFl = O
CR1~4) = CRl(O) + DN(4) ; simulate shift.
OVL ' O .',
RB16 EOFl,EOF2 G O ~
RB20 CRl(4)~ C~2(3) ; simulate YOR
RB23, RB24 EI c CRl ~ 4 ; output CP~l
call ENOODE
RB25, RB26,
RB30 call DECODE I ; end of file reached
CRl ~ -1, EOFl ~
RB16 EOFl.EOF2 - O ; revolve not done
RBZO CR2(3)~ CRl( ~ OR
RB21, RB22 EI - CR2 ~ 3 ; output CR2 ~ .
call ENCODE ; ~:
20 ~B12-RB14 call DECODE II ; get next value
Cr~2 - D02 ~ 1, EOF2 - O
RBl~ EOF:l.EOF2 - O
RB20 CR2(1)~ CRl(-l) ; keep outputting CR2 untiI
E0F2 3 1 .
2 RB21, RB22 EI - CR2 ~ 1
call E~CODE
RB12-RB14 .. call DECODE II ; read in next value
CP~2 ~ D02 - a
. RB16 EOFl.EOF2 - O ; not finished yet
3 r~20 CR2(~ C~


-183-
' " ,-


, - ~ ,~, . : .. ., , ; . .

` l~Z~67


RB21,RB22 EI = CR2 = ~ ; output CR2
call ENCODE
RB12,RB13
RB15 call DECODE II ; end of file reached
CR2 =-1, EOF2 = 1
RB16-RBl9 EOFl.EOF2 = 1:,
set ELAST ; write out last value
call ENCODE ; to MEMORY MOD
MLNl, MLN2 = MLN3 ; length of new line
; stored in DECODE I and
DECODE II MODS ~
- .-
At this point the revolve operation is not comple~e. Line ; ;
6 in the iso-entropicgram has been formed and stored in ~ -
hy~rid coded form in the MEMORY MODULE. The decimal
occurrence values of line 6 are 15, 14, 13, 12, 11, 10,
9, 8, 7, 5, 4, 3, 1, ~. This line is next revolved down
one line to line 7 as follows:



RB2 call DELTA ; get next component power
of 2 from DELTA MOD -
DN = DELO = l,DELEND = 0
RB5,RB7-R~10 call DECODE I ; read the first value
CRl = DOl = 15,EOFl
CRl (16) = CRl(15) + 1 ; simulate the shift
OVL = a :. .'
RB12-RB14 call DECODE II ; get unshifted version . -


CR2 = DO2 = 15, EOF2 = 0 ; -
.
~` RB16 EOFl.EOF2~=-0 , ~
~ -.
~ 30 RB20 CRl(16) ~ CR2(15) ; XOR -
. ''


- 184 -


.~,, - :

llZ7767


1 R~2~, r~B74 EI - CP~l ~ 16 ; ~his vaJ.ue (J.6) ~lill be
clip~ed by ENCODE I~IODULE
call ENOODE ~50DULE
RB25-r~B29 call D~CODE I iIODuLE ; rca~ ne~:t value
CRl ~ DOl - 14, EOFl ~ O ;
CRl(15) o CRl(14) + 1 ; simulate the shift
' OVL ' O . ,'
RB16 EOFl.EOE2 ~ 0 ,,
RB20 CRl - CR2 - 15 ,,
RB5, RB7-RB10 call DECODE I MODU~E ; read another value
CRl - DOl - 13, EOFl - O ; .
CRl(14) ~ CR1~13) ~ DN(l); simulate the shi~t ~ -
OVT - O .`.
RB12-RB14 call DECODE II ~DuLE ; ~ -
CR2 ~ D02 ~ 14, EOF2 ~ O ;
RB16 EOFl .EOF2 ~ O .`,
RB20 CRl - CR2 - 14 .......... ; XOR
~B5, RB7-P~B10 call DEC~D~ I M~DuLE
CRl - DOl - 12, EOFl - O;
C81(13) - CR1~12) + DN(l); shift
OVL - O .', ,~
RB12-RB14 call DECODE II ~X~UIE ; read DECODE II ~ULE
CR2 - D02 ~ 13, EOF2 - O ;
RB16 EOFl.EOF2 - O .'. :
2 RB20 CRl - CR2 - 13 :. ; XOR
RBS~ RB7-RB10 csll DECODE I ~DuLE ; ~ :-
CRl ~ DOl ~ 11, EOFl ~ O; read DECODE I ~D
: CRl(12) ~ CRl(ll) -~ DN(l); shif~ .
OVI.~ O .
~3 P~B12-RB14 call DECODE II ~DULE
. ,.

~::
-185-

C: ~.l.Z77~7


1 CR~ ~ D02 ~ 12, EOF2 ~ O
RB15 EOFl.r,OF2 ~ O
RB~O Cr~l ~ CR2 - 12 ; XOR
r~B5, r~B7-n~B9 call DECODE I ~IODULE ; read
CRl ~ DOl - 10, EOFl - O
CRl(ll~ - CRl~10) -t- DN(l); shift ~ :
OVL ~ O .~.
RBl2-P~Bl~ call DECODE II r~DULE
CR2 3 D02 -- 11, EOF2 -- O
RB16 EOFl ~ EOF2 ~ O
RB20 CRl ~ CR2 ~ 11 ; XOR
RB5, RB7-RB9 call DECODE I MoDuLE
CRl Q DOl ~ 9, EOFl ~ O ; read
CRl(10) -- CRl(9) ~ DN(l); sh~ft
OVL - O .'.
RBl~-RB14 call DECODE II ~WLE ; read
CR2 - D02 - 10, EOF2 o O ;.-
RBl6 EOFl.EOF2 ~ O .'.
RB20 CRl ~ cr2 ~ 10 :. ; XO~
RB5, RB7-P~B9 call DECODE I ~LE .
CRl ~ DOl ~ 8, EOFl - O
CRl(9) ~ ~Rl(8) ~ DNtl) .-:.
OVL ~ O . ~,,,
¦ nB12-RB14 call DECODE II ~qIJLE
2S CR2 ~ D02 - 9, EOF2 ' ` :~
RB16 E~Fl.EOF2 - O .
RB20 CRl - CR2 - 9 .'. ; XOR -.
RB5, RB7-RB10 ca~1 DECODE I ~lIJLE
CRl ~ DOl a 7, EOFl Q O ; read
3 CE~1(8) ~ CRl(7) ~ DN~l)
:', .
.. '
. -186- ~;

r

` 1~27~f~7


1 RI3l2-RBl4 call DECODE II MODULE
CR2 = DO2 = 8, EOF2 = 0
RBlG EOFl.EOF2 = ~ .
RB20 CRl = CR2 = 8 ; XOR
5 RB5,RB7-RB10 call DECODE I MODULE
CRl = DOl = 5, EOFl = a ; read
CRl(:6) = CRl(5) + DN(l~ ; shift
OVL = 0,',
RB12-RB14 call DECODE II MODULE
lQ CR2 = DO2 = 7, EOF2 = 0
RB16 EOFl.EOF2 = a
RB20 CR2(7~ CR1~61~:
RB21-RB22 EI = CR2 = 7 ; send CR2 to ENCODE MODULE
call ENCODE MODULE ; output it
RBI2-RB14 call DECODE II MODULE ; read DECODE II MODULE again
CR2 = DO2 = 5, EOF2 = a
RB16 EOFl.EOF2 = 0 .
RB20 CR1(61~ CR2~5~.
RB23-RB24 EI = CR1 = 6 ; send CRl to ENCODE MODULE
2~ call ENCODE MODULE
RB25-RB2~ call DECODE I MODULE ; read
CRl = DOl = 4, EOFl = a ; -
CRl(5~ - CR1(4l + DN(l~ ; shift -.
OVL = 0 .
RB16 EOF~.EOF2 = 0.', . .
RB20 CRl = CR2 - 5 ~ ; XOR
RB5,RB7-RB10 call DECODE I MODULE
CRl = DOl ~ 3, EOFl = O ; read
CR1~41 = CR1~3~ + DN~l~
OVL = 0.'.

- 187 -

~ .

1127767

RB12-RB14 call DECOD~ II MOD
CR2 = DO2 = 4, EOF2 = 0
RB16 EOFl.EOF2 - 0
RB20 CRl = CR2 = 4............ ; XOR
RB5,RB7-RB9 call DECODE I MODULE ; read
CRl = DOl = l,EOFl = 0
CRl(2) = CRl(l) + DN(l) - ~ -
OVL = 0
RB12-RB14 call DECODE II MODULE
CR2 = DO2 = 3, EOF2 = 0
RB16 EOF:l.EOF2 = 0 .
RB20 CR2(3)~ CRl(2);. ; XOR - ~
RB21-RB22 EI = CR2 = 3 ; output CR2 -: :
call ENCODE MODULE . ; ~
RB12-RB15 call DECODE II MODULE ; read DECODE II MODULE :. .;.
again .:.^
CR2 = DO2 = 1, EOF2 = 0 ; -- .
RB16 EOFl.EOF2 = 0 .. ~ .
RB20 CRl(2)~ CR2(1) ; XOR ~: .
RB23-RB24 EI = CRl = 2 ; output CRl ~ .
call ENCODE MODUI.E ; ;~.
RB25-RB29 call DECODE I MODULE .
CRl = DOl = 0, EOFl = 0 ; read DECODE I MODULE
CRl(l) = CR1(~) + DN(l) ; shift ..
OVL = 0 ~
RB16 EOFl~EOF2 - 0 :,
RB20 CRl = CR2 = 1 .', ; XOR
RB5,RB7,RBll call DECODE I MODULE ; read
CRl = -1, EOFl = 1 ; EOF reached DECODE I -
MODULE .
RB12-RB14 call DECODE II MODULE
CR2 = DO2 = 0, EOF2 = 0 ; :


- 188 -

~ ,

~iZ7767

1 RB16 EO~l.EOF2 - 0 :.
RB20 CR2(~) ~ CR1(-11,', ; XOR
RB21-RB22 EI = CR2 = ~ ; ou~put CR2
call ENCODE MODULE
RB12, RB13,
RB15 call DECODE II MODULE
CR2 = -1 EOF2 = O ; EOF reached DECODE II MDDULE
RB16 EOFl.EOF2
RB17-RBl9 set ELAST ; output last value from
ENCODE MODULE ~.
call ENCODE MODULE
MLN1, MLN2 = MLN3 : reset lengths
RB2-RB4 call DELTA MODULE ; get next DELTA value
DN = 0 DELEND = 1 -
reset DECODE I and II, .
ENCODE MODULES
DELEND = 1 . .
RB6 RS = 1 . EXIT .-

Upon EXIT the MEMORY MODULE contains line 7 of the iso- ~:
entropicgram of Table 4-~ which in absolute decimal occurrence
values is 7, 6, 3, 2, O.

' ' . .
:

,:



30~ ~

- 189. -
:: ~

~. A _ '

~ 112'77t;~

1 VI I I~EVOLVER
The portion of tlle DPM SYSTEM including the MEMORY, E~ICODE,DECODE I and II, DELTA, and REVOLVE MODULES forms an iso-
entropicgram revolver. Fig. 19 is a block diagram of the
iso-entropicgram revolver.
The iso-entropicgram revolver revolves a received binary
coded input line signal to a new line signal in the iso~
entropicgram for the input line. The MEMORY MODULE forms ~-
a means for storing a received input line. As 2xplained

above, the MINI COMPUTER with user program causes ~n event
occurrence vector, or some other binary coded number, to be -
stored into an area of the MEMORY MODUT ~ . Though not -;
essential to the present invention, in the disclosed -

embodiment the number is stored in the MEMORY MO~ULE in
. ., .. :

15 hybrid code. The number which forms the input line comprises -
a binary coded signal representing one or more actual
occurrence values from a group of decreasing monotonically
ordered possible occurrence values. The actual occurrence ~ -
values correspond to what has been referred to as event-times

and the possible occurrence values are all of the event-times
which are within the width of tle iso-entropicgram.
The DELTA MODULE forms a means for forming a signal
indicating the number of lines the received input line signal
i8 to be revolved.

The REVOLVE MODV~E forms a new line -~ignal ~orming means
and includes means such as the CRl and CR2 registers, the DN
register, the RDS2 selection circuit, the ALU, and the control
counter depicted in Fig. 17 which is responsive to the number

of lines signal indication provided in the DELO reg~ster by
3 the DELTA MODULE and the input line signai stored in the MEMORY



-190
,

l~Z77t;7

MODUL~ for forming a binary coded signal corresponding
to the received input line shifted relative to itself by
the number of possible occurrence values identified by the
number of lines indication signal.
The new line signal forming means also includes means
such as the CRl, CR2 and DN registers, the RDS3 selection
circuit, the ALU and the control counter of the REVOLVE MODULE,
the ENCODE, DECODE I and II and the MEMORY MODULES for
exclusive ORing (XORing) the occurrence values represented -
by the received input line signal and the shifted input line
signal for forming a resultant signal representing one or more ~ ;
occurrence values in monotonical value order.
By way of example, the resultant signal is coupled through
the RDS4 selection circuit to register EI of the ENCODE MODULE
which then converts the absolute coded value of the occurrence
values in the result back to hybrid code for storage in the
MEMORY MODULE. The new line signal forming means also
includes means such as the ALU and its OVL and OVL output
circuits and the related portions of the REVOLVE MODULE
which are operative during RB5, RB8, RB9, RB10, RB25, RB27,
RB28 and RB29 for eliminating the shifted occurrence values
from the resultant series of occurrence values which are
not within the group of possible occurrence values making
up the width of the iso-entropicgram.
According to a preferred embodiment of the invention, the
DELTA MODULE receives a signal representing the total number of
lines to be revolved and contains internal means for converting
such representation into one or more signa~ representing one
or mbre of its component powers of ~. -
-


- 191 -
:~ ' ' , .'

~ :

(~
1~27767

1 Also prcferably, the means for shiftin~ includQs
means such a~s the ~LU, the CRl, CR2 and DN registers and the
DECODE I and II MODULES which are operative during RB5, R38,
RB9, Rslo and RB25-RB28, for responding to a component power
S of 2 signal, received as input to the DN register for forming
a shifted line signal corresponding to one of the input line
signals. The occurrence values represented by the shifted --
line signal represent the occurrence values of the line - -
signal received as input shifted by the number of possible ;~
occurrence values designated by the component power of 2
signals stored in the DN register. The exclusive ORing
means includes means such as the CRl and CR2 registers and
the ALU operative during such flow boxes as RB20, RB21, ;
RB5 and RB23 for exclusive ORing the occurrence values
represented by a line signal received as input by the
shifting means and the corresponding shifted line signal
for forming a corresponding resultant l~ne signal.
In this connection it will be noted that the unshifted
and shifted values successively stored in the CRl and CR2
registers are ordered into monotonical value order and
those values which axe found to be equal ~indicated by a
true signal at the E output of the ALU) are dropped or
eliminated.
In order to revolve from one line Across successive lines
in an iso-entropicgram, the switching matrix ~yet to be des-
cribed) forms a means for coupling the input line signal
and the resultant line signal, formed as a result of the
exclusive ORing, as an inpu~ to the means for shifting described ~
above. Additionally, the connection from the DELO register -
3 in the DELTA MODULE to the DN register in the REVOLVE MODULE
and the load control for the DN register forms a means for

-192-

(~ ~
~Z7767

1 couplin-~, as input, to th~ means for shifting one o~ the
com~onent powers of 2 signals fer operation on each one of
the line signals which are received as input by the shifting
means.
Preferably, the means for shifting includes the ALU and
the RDS3 selection circuit of the REVOLVE MODULE for combin-
ing the value of each component power of 2 signal stored -
in the DN register with each actual occurrence value stored
in the CRl register. :
According to a preferred embodiment of the invention, the
input line signals are stored in a composite code such as the
hybrid code and first and second decoders such as the DECODE
I and II MODULES are operable independently for separately
providing an individual actual occurrence value signal repre- -

sentative of each occurrence value of the input line signal.
The decoders each provide the actual occurrence value signals
in the order of the values in the input line signal.
Also preferably, the resultant signals are encoded
by means such as the ENCODE MO~ULE from the actual occurrence

value code back to the composite code before the result i~
stored in the MEMORY MODU~E.




. .




:.


(~
~ 1~27767

1 VIII. SEE~ MOD ~.E
. G~neral D~crip~ion
The SEED MODULE takes an occurrence vector and locates the
3hortes~ line of the occurrence vector in its iso-entropic~ram.
The shortest line is referred to as the seed line,
T~lough the seed line can be located by revolving the
occurrence vector line by line through i~s iso-entropicgram,
noting the length of each line and lool;ing for the shortest
line, such an approach would be time consu~ing. Therefore it
is desirable to m~ni~ize the seed finding time in data
processing equipment.
Additionally, as discussed above, information is actually
stored in memory in encoded or hybrid coded form which further
reduces the size of the stored information.
Generally speaking then the disclosed embod$~.nent of the
invention locates seeds as follows, An event occurrence
vector, to be converted to 8eed form~ is ~tored in the
ME~O~Y MODULE and i8 pre3ented to a seed finding machine
which include~ the sFEn, ENCODE, DECODE I and II, DELTA and
20 REVOLVE ~DDVLES.
The revolves, including the E~CODE, DECODE I and II, DELTA
and REVOLVE MODULES~ revolve the input line down through the
lines of the iso-entropic~ram and a~ thi~ is done each line
i~ presented to the ENCODE MODULE ~or encoding to hybrid orm,
2 The physical length o~ each line i9 noted and the encoded or
hybrid coded line thatis physically shortest in len~th is
the one selected as the seed line.
According to a preerred embodiment of the invention,
seed findin~ employs the s~n MODULE which receive~ as
3 input, primarily, an event occurrence vector signal formin~ an

. -19~- . .

(~
llZ7767

1 input line 9 ignal o~ an iso-en~ropic~ram and a si~nal
~hat represents tL~e iso-entl~oplcgram ~idttl for sucll
input line. The even~ occurrence vector or input Line
siOnal represents actual occurrence values out of a group
of possible occurrence values arran~ed in a decreasing
incre~ental value order from a large~t to à smallest val~e.
The SEED ~IODULE computes the difference between the largest
two occurrence values represented by the input line and
computes the difference between ~he value represented by the
width signal and ~ e largest occurrence value in the input line.
The largest of the two differences indicates the number of
lines to be revolved in the ~so-entropicgram. The S~ED I~DDULE
calls the REVOLVE MODULE, cauQing it to revolve the input
line signal down the number of lines indicated by the
lar~est difference. The new line sign31 (in hybrid code)
is then checlced agains~ the original input line signal
and the shorter is lcept a3 the possible seed line. The
above procedure i9 then repeated using the possible seed -~
line signal as the inL~ut line signal. The ne~ly revolved
line signal is compared against the retained possible seed
line signal and the shorter is again retained as thè ~
possible shortest line. This operation i~ repeated until ~ -
the REVOLVE ~DULE has revolved over all possible line~
in the iso-entropicgram. At t~t time,the possible seed
line i8 retained in the E~CODE ~DULE as the seed line.
The right hand side of Table 4-B indica~es an example
of this implementation of the SEED ~XDULE.
. .




-195-

~Z77~i7

1 n . comPonen~: s
Refer now to Fi~s. 20 and 21. Tlle SEED MODULE has the
following input registers, each containlng ei~ht flip 1Ops
for storing 8 binary coded bits: OMOC, SDN, SLI~, SLN, S~
S~LI~ TO, Tl and T3. Additionally, a two bit, two flip flop
register OAR is provided. The registers ONOC, SLINE, S~,
S~I, TO and Tl are formed of register type SN74100 disclosed
at page 259 of the above TTL book and the registers S2~W and , '~
SDN are formed of registers of type SN7~116 disclosed at
page 261 of the above TTL book where a true signal at the L
input caus~s the 8 bits of information at the upper input ,,,
to be stored therein, Additio~ '.ly, the s~nw and SDN
registers are responsive to a true signal at tbe CLR inpu~
for resetting or clearin~ to O. The other registers in the
15 system are characterized in that all registers in t~ SEED '- '
MODULE are o~ the type that the output signal follows or '-
reproduces the information input signals during the presence - ',
of a true clock signal at the clock or load ~) input. '''
The register retains at its output and stores the signals
2 being applied at its information input when the true
signal at the clock or load input terminates. The T3 ' '
register is formed of an SN4174 type register disclosed
in the above TTL book where the leading ed~e or true
excursion of the pulse at L loads and retains the then
2 existing information input signals even though the
in~ormation input signals chan~e before the true p~tlse
at L terminates. This is done since during the true signal
at P2 it i9 only desired to strobe the initial signals
from DOl into register T3. Tlle regi~ter O~R is formed of
~o flip 1Ops of the same ,type as the rèset of the flip
~ . '.

I -196-

' ? ~1~7767 ~ )


1 flops ~ ose lower left side cl.ock inpu~ 19 connec~:ed to
design~ed L input and wllose inputs are connec~ed to upper
le~t side information inputs.
The SEED ~IODUI.T~ also has ~Lip f1ops SCE, CNG, S~ and
a control counter 513 having flip f1ops PO to P10, Each
of these 1ip flops are of the same type SN7~74 disclosed above
under Conventions and Co~ponents Used in the Figures.
Selection circuits SDSl-SDS6 are provided for 8ating
any one of the infonmation input signal9 indicated along
the upper side of each selection circuit to the output
responsive to a true signal spplied to one of the control
inputs at the side of the selection circuits. These
selection circuits are o~ the sa~e type as that disclosed
above in the section Conventions and Components Used In
the Figures.
An arithmetic unit ALU i8 provided for adding, subtrac~ing
and comparing the information ~ignals applied at the two
inormation inputs indicated along the upper side of the
ALU. The arithmetic unit ALU i8 of the same type a~ that
di~closed above in the section Conventions and Components
Used in the Figures. An OR gate 516 has its inputs connected
to the G and E output3 of the ~LU and forms a true signal
at the GE output when a true 8ignal i9 formed in either the
a or E output. ~n addition, the SEED ~DULE has conventlonal
OR gating circults 516, 517 and 518 and a conventional ~ND
gating circuit 520. ~dditionally, the SEED ~DULE has
logical gating circuits which form true and alse signals
enabl~ng the operation of many of the circuits sho~n in - -
the SE$D ~DULE. These gatiDO circult~ are indicated
3 by logical equation ~or simplicity. ~ logical signal


-197-
;:


~77~7


I inver~r 52G is connec~ecl bet~een the clocl; C~l output of
~D ~te 520 ~nd tlle inpu~ ~o tllc CL~ ou~put ~or Eorm~n~
pulst!s betw~en the CLIC pul!es.
The SEED ~ODULE also has one-sho~ multi-v~brators SI~GO
and S~E~ as well as a clocl; 512. The clock 512 i~ a source
of re~ularly recurrin~ true clock pulses as indicated,
The one-shot multi-vibrators re responsive to a true signal ~ -
applied at the input indica~ed along the left hand side --
for triggering to a L state where a true signal i9 ormed
at an unprimed output. The one-shots remain in a 1 state
for a time ~n~erval equal to that be~ween the beginn~ng of
two successive clock pulses from the clock 512 and then
returns to an 0.
The SEED MODULE has three sets of switches 526, 528 and
530. The switches 526, 528 and 530 are mechanical or electronic
switches which represent, respectively, the decimal values
1, 2 and 3 in binary coded orm as 01, 10 and 11, ~espect~vely. ~ -
Table 16 lists the primary registers, flip flops and one-shots
and identifies the~r primary prpose.
Similar to other modules, the control inpts and outputs
are indicated along the right hand side of Flg. 20 an~ the
information inputs and outputs are indicated by large solid
lines ~180 along the right hand side.
. '.

2S C. Detailed DescriPtion
Consider now the detail9 o~ organization o~ the SEED
~: ~XDULE, ~aklng particular reference to the schematic and
bloclc diagram of Figs. 20 and 21, and tbe s~Fn ~DULE flow
dia~ram of Fig. 2~. The flow diagram contains blocks
~; 30 indicat~ng the sequence of operation The symbols S~l
~ .
,.,


", -19~- .
,. , .

~-~ r)
i~z7767


1 throu~ll snl8, shown next to tllC bloclcs, are used ~o identlfy
the ~)o~:es in the ~lo~ dl~ram, The symbols desi~nst~n~ the
various ~lip flops o the control counter 513 ~re also shown
in parentheses ad~acent the various bloclcs to help relate
the operation indicated in each box of the flow with the
state of the control counte. 513.
Initially, the OR gates 516 and 517 receive true signals
from the MDNIT output of the MINI COMPUTER which causes flip .~:~
flops PO-P10 and SCE to be reset te 0 states. Subsequent :.
true signals formed at SME~D by one-shot S~ND cause OR gate ~
517 to reset fllp flops PO-P10 to 0. ~:
Table 11 shows the primary inputs to the ~EED MODULE as well -
as the inputs to the ENCODE, DECODE I and II, DELIA and ~EVOLV%
MODULES making up the seed finder. The initial inpu~s :
come principally from the IPRF ~ig.52 ) and the ~MORY MDDULE. .
Accordingly, the MINI CaMPVIER, in th~ manner described herein-
after, .~irst loads the IPRF and the ME~RY MODULE with the ;.
required initial input information. To this end the MINI
C~MPUTER initially stores an event occurrence vector, in
-20 hybrid code, into MEMORY MODULE area 1. This event occurrence
vector i8 the input line for an iso-entropicgram and at the
beginning of the operation of the seed finder forms what i8
currently assumed to be the seed linc.
To be explained in more detail, the lnput or current
2S line may not necessarily be line O o lts iso-entropicgram :.
and accordingly the number of the input line as well as the
width value for the iso-entropicgram are initially stored
by the ~INI COMPUTER into registers LINE ~ and HW of the
IPRF ~Fig.52 ). The length o~ the input line is variable
3 and hence a length value specif~ing the number o~ words .:
.' '.

~ 199 . ~` ` .
.,'; ., ~
, ~
"`y~ ?~ .~

l~Z7767

1 in this ~nput Line i9 stored ~n re~ister LINE # of the IPRF.
~ fter the IPRF and ~RY ~DULE area l ~re loaded, the
SEED ~DULE is called by the ~IINI COMPUTER or tl~e CHAN OE MCDULE
by formin~ sign21s a~ the USER and C~I2 outputs, respectively
A true signal at either of these outputs causes the OR gate
518 tQ apply a true signal to the one-shot SMGO, triggering
it to a 1 state causing a true signal at the SMGO output,
The true signal at the SMGO output sets the SCE flip flop
to a 1 state. The output from clock suspension logic 522
10 is initially true. Therefore, the true signal at the SCE -
output of the S OE flip flop enables the AND gate 520 to
couple clock pulses from the clock 512 to the CLK output,
which in turn causes an ~nverter 526 to form pulses at the
CLK output. The 0 state of the flip flops P0 to P10 causes
true signals at the ~ outputs, thereby cau~ing
the flip flop P0 to be reset to an 0 state at the following
pulse at CLK, thereby causing SBl of the SEED MODULE flow
to ~e entered.
During SBl of the flow during the true signal at P0
output, the input parameters for the SEED ~DULE are stored
into their proper registers. During the true signal at the
PO output of the SEED MODULE, the initial input parameters
for SEED MODULE are al8o enabled and clocked into their
proper registers. Additionally, the SWITCH M~TRIX i8 set
2 80 that the REVOLVE ~IODULE when called for the irst time
will cause the DECODE I and II MODULES to read the input -~
line from the ~RY MODULE area 1 and cause the ENCODE
MODULE to write the revolved or new line into the MEMORY
MODULE area 2.
\ 3 It should be noted that the CHANOE MODULE forms a true


-200-

(~ f)
- i~Z7 767

1 siznal a~ tile Cll4 output, thcreby setting the CNG 1ip Lop
to a 1 s~at~ only whcn the CI~NGE MODULE i9 the calling
module. ~e~errin~ ~o the rigllt hand side o Fig. 20, true
signals at- the PO, CNG and ~ER outputs cause true si~nals
at the S~l, S~I2 and S~13 outputs to the SI~IT~I~TRLY and
also cause ~nput para~eters to ~e loaded into the ENCODE,
DECoDE I and II, and DELTA ~ULES in the manner and from
the sources discussed above for each of these modules.
A true signal is only formed at the outputs SMl, SM2
and SM3 when the MINI CO~UTER i9 ~he calling module.
Thus, assuming that the ~IMI COMPUTER i9 the calling module,
true signal~ are formed at the SMl, SM2 and SM3 outputs.
The true signal at SMl causeg flip flops Sll, S22 and S31
to be set to 1 in the SWIrCH MATRIX. The true s~gnal at
SM2 causes the length value ~Nl in IPRF to be gated to
registers MLNl and MLN2 of the DECODE I and II ~DULES
and the pulse at SM3 actually causes the length value to
be loaded into the regi~ters MLNl and MLN2 and into register -
EHW of the ENOODE 2~0DULE. Additionally, the true signal ~;
at output PO resets the SMB flip flop to an 0 state. The
true signals at PO, ~ (CHAN OE MODULE i9 not the calling ~-
module) cause the SDS6 selection matrix to couple the line -
number in the LINE # register of the IPRF to the information
input of the SMLl register. Note that if the CHAN OE MODULE
were the calling module, the true signals at CNG and PO would
cause the switchlng circuit SDS6 to couple the line numSar
rom the C.INE register of the CHANGE MODULE to the register
SMLl. During the true signal at the PO output, the pulse at
~ cau3e~ the line number from SDS6 to be stored into register
3 S~l and causes the S2~W register to store the i~o-entropicgram

-201-
.. . . .
, '~:

~7 7 6 7


1 width s~nal rom th Il~ re~ister o the Irr~F ~i~.52 ).
Tllus, the SMLI rc~ister contains th~ line number of the
input line (stored in ~IIORY MODULE area 1) and the S~IW
register contains the iso-entropicgram width value.
The true signa1 at PO causes flip flop Pl to be set to a
1 state. There~ore, also during SBl of the SEED ~IODULE flo~,
the true signal at the Pl output causes the selection circuit
SDS7 to couple the length value from register MINl of the ~ -
DECODE I ~DULE to the information input of re~ister SLN.
Additionally, the true signal at Pl causes the SDN register
to be reset or cleared to O and causes the SMB flip flop to
be set to a 1 state. The 1 state of the SMB flip flop
causes a true si$nal at the ~ output to be removed and
thereby remove the true sign~l at the S~I10 output. As
explained above, the signal ~M10 goes to the DECODE I ~DULE,
and when false, inhibits the count down of the phys~cal
length of the input line in MLNl. The SEED MODULE is about
to become operative during SB2 through SB5 for causing the
DECODE I MODULE to do a read on the input line from the
MEMnRY MODULE only for the purpose of reading the largest
two occurrence values of the input line and the count down
of MLNl is inhibited during this operation because the
DEOODE I ~IODULE will later be called to go back to the `
beginning of the same input line to again read the same
2S occurrence values,
At this point in tlme~ the input line is retained as the
current possible seed line since this i8 the only line
considered to this point. The register SLINE stores the
number of the current possible seed line. Accordingly, the
3 true si~nal at the Pl output causes the SDS5 selection

-202-

c' ~
~Z7767




1 circuit to couple the input line nu~lber rom re~ister SM~.l
to the inormation inpu~ of register SL~ and the tru~
signal at the ~ output causes the line number to be loaded
into register SLINE.
Additionally, it i~ necessary to prevent the SWITCH ~TRIX
fro~ allowing the ~MORY MODULE area l containin~ the input
line to be ove~ritten since this line is to be retained as
the current possible seed line. In order to insure that the
SWITCH M~TRIX retains the input line in MEM~RY MODULE area l,
the true signal at the Pl output causes the SMS flip flop to
be set to a l state which in turn causes a true signal to be
formed at the SM5 output of the S D MODULE. The SM5
output in turn is connected to the SWIT OE M~TRIX and a
true signal at SM~ n con~unction with RM12 from the --
REVOLVE MODULE causes the SWITCH ~TRIX to prevent overwriting
of ME~RY MODULE area l. ~
During SBl, SB2 of the SEED MODULE flow i8 entered. -
Durin~ SB2, the true signal at the Pl and ~g outputs
causes a true signal at the S~I6 output which in turn calls
the DEOODE I MODULE by setting the DlGO one-shot to a l state.
m e DECODE I MODULE then commences its operation of obtaining
the largegt occurrence value from the input line in MEMORY
MODULE area l. The true ~ignals at the outputs Pl, ~1~ and
~nFE~n- t~rom the DECODE I MCnULEj causes SM6 to be true
and the clock suspen~ion logic 522 removes the true signal
at thc corresponding input of gate 520 and stops clock pulses -- -
- from being ~rmed at the CLX a~d CLK outputs, thereby
~: suspend~ng operat~on of the SEED ~ODULE while the DECODE I
MCDULE completes its operation and provides a decoded
occurren~e value.
, , -'.`:'`,'"''

-203- ~
,. ..

(-' o

1~27 76 7

1 Ater the DECOn~ SODI~.E provid~s the l~rgest occurrence
value from the input line stored in ~IIORY ~IODULE area l, the
true signaL of Dll~ s removed, thereby c~u9 ing the cloctc
suspension lo~ic 522 to again apply a true si~nal at the
corJasponding input of gate 522 enabling pulses to be formed
at the CLK and CLi~ outputs.
The true signal at the Pl output, together with the true
signal at the E~l output, causes the flip flop P2 to be set
to a 1 state. The true s~gnal thus formed at the P2 output
in coincidence ~ith a true clock signal at output ~1~ causes
this largest occurrence value from regl~ter DOl of the DECODE
I ~DULE to be stored lnto the T3 register. Note that should
a true signal be formed at the EOFl output, a false signal is
formed at the E~I output and, hence, the flip flop P10
would be 8et to a l state rather than the P2 flip flop.
If EOFl is set, there is no meaningful output rom DECODE I
MODULE. As a result, the output from the DECODE I M~DULE
would not have been stored lnto register T3. Hence, state
SB16 of the SEED MDDULE flow would be entered from SB3,
During SB4 of the flow, the true signal at the P2 output
also causes the SDSl and SDS2 selection circuits to couple
the iso-entropicgram width value from reglster S~W and
the largest occurrence value from the DOl register of the
DE~ODE I MODULE to the inputs of the ALU and causes the
A~U to ~ubtract the large~t occurrence value rom the
width value. The resultant difference formed st the OP
output of the ALU is coupled to the in~ormation input of
register Tl by the SDS4 selection circuit, under control of
output P2, and the true signal at the P2 output causes the
3 difference signal formed nt tle OP output to bc stored into


-20~-

f~ ~
~,~,Z7767

l reg~ster Tl at tlle follo~ing puLse ~t CLK. Th~s~ ollowin~
SB4 o the S~D ~OnULE flow, tlle large~t o-curr~nce value
is con~ained in regi~ter T3 and the register Tl contain~
the di~ference bet~een the iso-entropicgram width value
and the largest occurrence value of the input line.
SB5 of the SEED ~IODULE flow is then entered and true
signals are formed at the outputs P2 and CLIC thereby
forming a true signal at the SM6 output which again calls
the DEOOD~ DULE by setting DlGO to a L state. The
10 MARl register of the DECODE I MDDULE has now been counted ~-
up by 1 address, thereby fonming the address o~ the next
to the largest occurrence value of the input line contained
in MEMORY M~DULE area l. Thus, the DECODE I MODULE now
reads out the next to the largest occurrence value and stores
it in its DOl regi~ter. I~ile this takes place, the true
signals at the P2, ~g and Dl~ND outputJ again cause the ~-
clock suspension logic 522 to disable the AND gate 520
thereby terminating the pulse at CLK, When the DECODE I ~-
MODULE has completed its operat~on thereby providing the

next to the largest occurrence value in its register DOl,
the true signal is removed at the ~IRER~ output thereby
causing the clock suspension logic 522 to enable the AND
gate 520 to start causing pulses at CLK and ~g.
The true signal at the P2 and E~FI output al80 causes

the ~lip flop P3 to be set to a 1 atate at the following pulse
at CLK. If EOFl is set, then flip flop PlO is set to l.
The signal at the P3 output causes the SDSl and SDS2 selection
circuits to couple the largest occurrence value in register T3 -~
and the next to the largest occu rence value ~rPm ~e~ister D01
3 ~ECODE I ~DDULE) to the in~ormation inpu~ of the ALU and
. '"''''"':
.,: ..
-205-

(~ ~
~ 7767

1 causes tl~e ALU ~o subtrac~ tho ne~:t to ~he l~r~est occurrence
v~lue from ~he l~rgest occurrence v~lue ~nd forma correspondin~
di~ferenc~ sivn~l at the OP output.
SB7 of the SEED I~IODULE flow is now entered, The true signal
at the outputs P3 and Z~ causes the register TO to store the
difference signal. Thus, at this point in time, the register
TO contains the difference between the largest two occurrence
values o~ the input line, and the reg~ster Tl contain~ the
difference signal representing tl-e difference be~?een the
width value and ~he largest occurrence value.
Again, note that should the DECODE ; ~DULE be at the -
end of a fiIe and a true ~ignal be formed at the EOFl
output, a true signal is not formed at the E~SI output.
He;lce, the flip flop P3 would not have been set and instead
the flip ~lop P10 would have been set to a 1 state, causing
SD16 of the SEED MWDULE flow to be entered.
Assume now that true ~ignals are formed at the output P3.
The P4 flip flop i9 set to a 1 state causing SB8 of the SEED
MODULE flow to be entered. During SBS, a true signal i9
formed at the P4 output. The true signal at the P4 output
causes the difference bet~een the largest two occurrence
values of the input line, contained in register TO, and
the difference between the width value and the largest
occurrence value, contain~d in register Tl, to be coupled
2 through selection circuits SDSl and SDS2, respectively~ tc
the information inputs of ALU and causes the ALU to compare
the two difference va,lues. Note eareully that should the
diference between the largest two occurrence values contained ~ -
in register Tl be greater) a true signal i~ formed at the G
3 output o ~L~U and the contents of register Tl remain unchanged.
",
~ -206-

,~ 7~'~67

l However, sllould ~he difEerenc~ b~ een ~llc widtll vnlue and
the lar~s~ occurrence valu~ in re~is~er To be lar~er, a true
si~nal is formed at tLIe L output of ~LU. A true ~i~nal at
the P4 and L outputs causes tl~e selection circui~ sDS4 to
couple the content o~ the reg~ster TO to t1Ie infsrmation
input of register Tl and the true signal3 at the P4, L and ~-
~-K autputs cause the content of register TO to be stored -
into register Tl. Thus, it now can be seen that register Tl
stores the larger of the diference between ~he largest two
lO occurrence values of the input line and the difference -~
between the iso-entropicgram width value ~nd th¢ largest ~-
occurrence value. Note ~hat the larger of the difference
values now contained in Tl i~ the number of iso-entropicgra~ -
lines by which the input line stored in the ME~RY ~IODULE
is now to be revolved.
The true signal at the P4 output cause~ the P5 flip flop
to be set to a 1 state at the following pulse at CLIC,
thereby causing the SB9 of the SEED ~DULE ~low to be entered. ~-
The regi~ter SDN is used to accumulate and keep track of
the total number of lso-entropicgram lines revolved by the
REVOLVE ~DULE. Thus, during SB9, the number of lines next
to be revolved (the l~rgest difference s~gnal) contained ln
register Tl i9 added to the content o~ re~ister SDN. The
first time through SB9 the register SDN con~ains O. To be ~;
2S explained in more detail, durlng SBlO the total lines revolved
contained in register SDN i9 compared with the iso-entropicgra~ -
width value contained in register SMHW to determine when
the number of lines revolved e~ceeds the width value for the
iso-entropicgram.
~3 To thl~ end, the true signal at the P5 output causes
. .'.'.
-207-

-"-\
1~277 67

1 selection circui~s SDSl and SDS2 to co~ple ~he conten~ o
registers SDN and Tl to the in~ormation inputs of the ALU,
and causes tl~e ALU to add the values to~e~her and orm a sum.
If no overflow occurs, OVL is true and the logic P5.CLK.~VL
becomes true and stores the sum into register SDN. Note
that if an overflow occurs, the signal at ~9~ will be false,
preventing the result at the output of OP bein~ stored
baclc into SDN. Also if overflow occursj it i~ necessary to
clear the width value in register S~W to 0 90 that the
subsequent compare during P7 will cause a GE condition ~hich
will in turn cause P10 to be set to 1 and terminate the
operation. It is de~red to terminate because if overflow
occurs, an ~tte~pt i~ being made to revolve to a line wh~ch
i8 not within the iso-entropicgram for the input line.
lS The true ~ignal at the P~ output causes the flip flop
P6 to be set to a 1 state at the following pulse at CLK.
The true signal at the P6 output causes the SDSl and SDS2
selection circuits to couple the line number value containe~
in register S~l and the number of ltnes to be revolved value
contained in register Tl to the inr'ormation inputs of the
ALU and cau~es the ALU to add the values together and ~orm ~ -
the sum at the OP output. The true ~ignals at the outputs
P6 and ~g cause the SDS6 selection circuit to couple the
sum to the inormation input o SMLl and to store the sum
into register SMLl. Thus, register SMLl now contains the
number of lines revolved relative to the number of the
input line. Note that should over~low have occurred, the
sign bit at the output o~ ALU is disregarded because this
amounts to an addition~l module of the iso-en~ropicgr~m length.
` 3
. ~ ~

-208-

11~7'^~67

The true sign~l at the P6 output causes the P7 flip flop
to be set to a 1 state responsive to the following pulse at
CLK and causes SB10 of the SEED MODULE flow to be entered.
During SB10, the number Qf lines revolved value is compared
with the width value as described in connection with SB9.
If the number of lines revolved value contained in register
SDN is greater than the iso-entropicgram width value contained
in register SMHW, the SEED MODULE goes to SB16-18 following
which the operation of the SEED MODULE exits. An exit is
taken at this point in the operation since the REVOLVE MODULE
will have revolved across all lines in the iso-entropicgram.
If the number of lines revolved value contained in register
SDN is less than the iso-entropicgram width value contained
in register SMHW, meaning that the SEED MODULE has not
revolved across all lines of the iso-entropicgram, SBll ~ ;
through SB14 of the SEED MODULE flow are entered.
Assume during SB10 that the number of lines revolved value , ;
contained in register SDN is less than the width value l~
contained in register SMHW, the true signal at the P7
output causes the SDSl and SDS2 selection circuits to couple
the number-of lines revolved value ~register SDN) and the ,-
width value (register SMHW) to the information inputs of the ~ ;
ALU and causes the ALU to compare the two values forming a
true signal at the L output. The true signal at the L output
of the ALU in coincidence with the true signal at the P7
output causes the P8 flip flop to be set to a 1 state at the
following CLK pulse and SBll of the SEED MODULE flow is entered.
During SBll, the number of lines to be revolved value
contained in register Tl is sent to the DELTA MODULE which ¦ - -
in turn forms the component powers of 2 of ~his value
:: . ,'-,'''`.,

. '

$ ``','

1~27767

b~ginning with the largest component power of 2 as discussed
above in connection with the DELTA MODULE. To this en~, the
true signal at the P8 output causes a true signal at the SM7
output which in turn causes the DELS selection circuit in the
DELTA MODULE to couple the largest difference value from
register Tl to the information input of the register 302
in DELI. A true signal at the P~i output of the SEED MODULE
in coincidence with the true signal at the CLX output causes
a true signal at the SM8 output which in turn causes the ; -`
load circuitry of register 302 in DELI to store the larger
difference value from register Tl into register 302 of DELI.
SB12 of the SEED MODULE is now entered. The true signals
at the outputs P8 and CLK also cause a true signal at the SM9
output which in turn calls the REVOLVE MODULE by setting the
REVGO one-shot to a 1 state. The REVOLVE MODULE in turn
calls the DELTA MODULE as discussed above and the REVOLVE
MODULE and DELTA MODULE in conjunction with the DECODE I,
DECODE II and ENCODE MODULES revolve the input line,
contained in MEMORY MODULE area 1, down the number of lines
indicated by the largest difference value sent to the DELTA
MODULE. During this operation, the true signal at the P8
and REVEND output causes the clock suspension logic 522 to
again disable gate 520 and thereby suspend the operation
of the SEED MODULE~ After the designated number of lines
have been revolved by the REVOLVE MODULE, the true signal
is removed at the REVEND output, thereby causing the clock
suspension logic 522 to again enable gate 520, thereby
enabling a clock pulse to again be formed at the CLK and
CLK outputs in the SEED MODULE. The followin~ pulse at CLK
causes the flip flop P9 to be set to a 1 state, thereby causing
':

~ - 210 -
~ , . .

7767

SB13 o the S~ED MODUL~ flow to be entered. The true s.ignal at
the P9 output of the control counter 513 in the SEED MODULE
causes the SDSl and SDS2 selection circuits to couple the
length value (number of words in the hybrid coded line written
into the MEMORY MODULE by the ENCODE MODULE) contained in
register MLN3 of the ENCODEM~DULE to be gated to one input
of the ALU and causes the length of the original input line
which length value is contained in register SLN to be gated
to the other input of ALU and causing the ALU to compare
the two values. If the length of the new line as indicated
by register MLN3 is smaller than the current seed line as
indicated by register SLN, the ALU forms a true signal at the
L output indicating that MLN3 is less. This causes SB15
of the SEED MODULE flow to be entered where the content of
register MLN3(which is smaller) is stored into the SLN -
register. If, on the other hand, the length value for the
new line (in register MLN3) is equal to or greater than the
length value of the original input line (in register SLN),
true signals are formed at the G or E outputs of the ALU,
causing the OR gate 516 to form a true signal at the GE output.
This causes SB14 of the SEED MODULE flow to be entered.
In this manner, the smallest of the length values for the ;
original input (current possible seed) line (register SLN)
or for the new line (register SLN3) is retained in register SLN.
Consider now the actual operation in this regard. Assume -~
that the length of the new seed line is smaller and hence a
true signal is formed at the L output of the ALU during the
true signal at P9. The SDS7 selection circuit couples the
length value from register MLN3 of the ENCODE MODULE to the
information input of register SLN and the following pulse at

-- 211 --

~lZ7767

CLIC in coincidence with the true signals at P9 and L
cause the load circuit of register SLN to store the length
value from register MLN3 into register SLN. Additionally,
since the new line is now shorter, it is necessary to store
the line number of the new line into register SLINE.
Accordingly, the true signal at P9 causes the SDS5 selection
circuit to couple the line number value for the new line
from register SMLl to the information input of register SLINE
and the true signals at the P9, L and CLK outputs cause the
load circuit of register SLINE to store the line number value.
Additionally, the true signals at the outputs P9, L and CLK
cause the SMS flip flop to be set to a 1 state which, as
discussed above, causes a true signal at the SM5 output
thereby indicating to the SWITCH M~TRIX that the new line
stored into the MEMORY MODULE area 2 should be retained as
the poss-ible seed line. Following SB15, SB14 of the SEED
MODULE flow is entered and the true signal at the P9 output
causes the SMB flip flop to be set to a 1 state, thereby
removing the true signal at the SMB output. This is required
since the DECODE I MODU~E is going to read the new line for
computing the larger of the difference between the largest
two occurrence values of the new line and the difference
between the width value and the largest occurrence value.
The lack of a true signal at the output SM~ and hence at
the output SM10, causes the DECODE I MODULE to prevent
the MLNl register of the DECODE I MODULE from being counted dcwn.
Return to SB13 of the SEED MODULE flow and assume that
a control signal is formed at the GE output of OR gate 516, -~
indicating that the length value of the new line is equal to ~ -
or larger than the current possible seed line contained in




- 212 -

llZ7~767

re~ister SLN. This causes SB14 of the SEED MODULE flow to be
elltered, skipping SBl5 and accorclingly, the current seed
length value register SLN and its current seed line number
value in register SLINE remain unchanged. Likewise, flip
flop SMS remains unchanged, thereby causing a false signal
at the SMS output and, hence, at the SM5 output of the
SEED MODULE, thereby signalling the SWITCH MATRIX that the new
line contained in MEMORY MODULE area 2 can be overwritten
and need not be saved. The true signals at the P9 and P9.CLK
outputs cause true signals at the SMll and SM12 outputs.
At this stage the first revolve has just been completed
and the new line is in the MEMORY MODULE area designated by
the S31 flip flop in the SWITCH MATRIX. Though the
description has been made up to this point for only the
first or input line stored in the MEMORY MODULE, the same
general operation takes place if a new current seed line
is formed. In this latter case, during SB13 the new seed ;
- line may be stored in any one of the MEMORY MODULE areas. ~
The area will be specified by the true state of one of -
flip flops S31, S32 and S33 as more fully described in
connection with the MEMORY MODULE and the SWITCH MATRIX.
The S31 signal has to be relayed to the Sll, l ``
S12, Sl3 flip flops of the SWITCH MATRIX before the
DECODE I MODULE can read the new current seed line. At the
same time the existing information must not be modified
in the MEMORY MODULE areas designated by the S21, S22, S23,
or S31, S32 or S33 fli-p flops. Thus, a true signal is formed
at the SMll output. This inhibits the clock signal to flip
flops S21, S22, S23, S31, S32 and S33. The true signal at
SM12 then clocks the proper information from S31, S32, S33
..
- 213 -

~ .

77~7

to Sll, S12, S13 in the SWITCH MATRIX. When all is done,
S2i, S3i ii = 1,2,3) in the SWITCH MATRIX are unaltered,
whereas Sli (i= 1,2,3) is able to gate the information from
the new line to the DECODE I MODULE. Also since the rest of
the system remains unchanged, when REVOLVE is called and a
true signal is formed at RM8, the operation proceeds as normal.
True signals at the P9 and CLK outputs cause a true signal
at the SM4 output which causes the gate 228 to set flip flop
DlFST to a l state in the DECODE I MODULE and cause a true
signal at the SM6 output which calls the DECODE I MODULE
by setting the DlGO one-shot to a l state.
Following SB14, SB2 of the SEED MODULE flow is again
entered. The true signals at the P9, CLK and DlMEND outputs
again cause the clock suspension logic 522 to suspend the
operation of the SEED MODULE until the DECODE I ~ODULE has
completed its operation and provides the largest occurrence
value in register DOl. Note that the DECODE I MODULE now
reads the current possible seed line which is contained in
. ~
the MEMORY MODULE area and which was found by the SEED MODULE
during SB13 to be the shortest. After the DECODE I MODULE has ;
completed its operation and is forming the largest occurrence
value of the current possible seed line, the true signal is
removed at the ~ output, and the clock suspension logic
522 again enables the gate 520, allowing a pulse to be formed
at the CLK output. The true signal at the P9 and ~r
output in coincidence with the true signal at the CLK output
causes flip flop P2 to again be set to a 1 state. The
resulting true signal at the P2 output causes the SB2 of the
SEED MODULE flow to again be entered where the largest
occurrence value is stored in register T3 and the difference

- 214 -

~ ~.

~Z7767

between the wid~h value and ~he laryest occurrence value is
stored via the SDS4 selection circuit into register Tl.
The operation during SB3 through SB15 is again repeated as
discussed above, this time utilizing the current possible
seed line which was previously determined during SB13.
Assume now that during SB10 it is found that the total
number of lines revolved value contained in register SDN is
equal to or greater than the iso-entropicgram width
contained in register SMHW. The ALU then forms a true signal
at either the G or the E output, causing the OR gate 516 to -
form a true signal at the GE output. The true signals at
the P7 and GE outputs in turn cause the flip flop P10 to
be set to a true state, thereby causing SB16 of the SEED
MODULE flow to be entered.
During SB16, the number of the current possible seed
line contained in register SLINE is compared with the width
value contained in register SMHW. Ifthe number of the
current possible seed line value in register SLINE is
larger, then SB17 is entered, whereas if it is less, SB18
is entered.
Consider now the details of the above operation. The
true signal at the P10 output causes the sDSl and SDS2
selection circuits to couple the current possible seed
line number value contained in register SLINE and the
width value contained in register SMHW to ~he information
input of the ALU for comparlson. Assume that the current
possible seed line value is larger. The ALU forms a true
signal at the G or E output which in turn causes the OR gate
516 to form a true signal at the GE output and 5B17 is
entered. Additionally, the true signal at the P10 output ~




-215- -

. .
1~ .

~ \
~1~7767

causes the ALU to orm the difference between the current
possible seed line value contained in SLI~E and the width
value contained in register SMHW and forms a difference
value at the oP output. The true signal at the P10 output
also causes selection circuit SDS5 to couple the difference
value from ALU to the information input of the register SLINE.
The true signal at the P10, GE and CLK outputs causes a
load circuit to store the difference value into the register
SLINE. Note that the current line number value stored in
register SLINE during SB17 is the seed line number less the
iso-entropicgram width value. That is, the current possible
seed line contained in SLINE is greater than the iso-
entropicgram width value, the REVOLVE MODULE has revolved
past ~he end of the iso-entropicgram and it is therefore
necessary to subtract the width value from the current
possible seed line value in order to determine the actual
number of the seed line. This operation is taken to ensure
that the current possible seed line value contained in --
register SLINE lies within the bounds of the iso-entropicgram.
If a revolve has taken place past the end of the iso-
entropicgram, then line values are contained in register
SLI~E which are greater than the iso-entropicgram width.
However, these values would be inaccurate and to find the
value of the actual seed line value it is necessary to
subtract the width value from the line value to arrive at
the true number of the seed line.
Following SB16 or SB17 of the SEED MODULE flow, SB18
is entered. The true signals at the P10 and CLX outputs -
cause the load circuit for the ONOC register to be activated
and store the number of occurrences that have appeared in the -
'~
- 216 -
~;.~, . '

o
11~:'7767

1 possibl~ s~d line rom r~ister ~NOC of tha ~NCODI~ MOD~LE
into register ONOC.
It should be not~d that true signals occur at the P9, L
and CLK outputs during S~15 when the new iso-entro~icc~ram
line is found to be shorter than th~ current possible seed
line. The true signals at the P9, L and CLK outputs cause
the register OAR to load values corresponding to MEMORY
MODULE areas 1, 2 and 3, respectively, from switches 526, ~-~
528 and 530. The one ,which is selected is determined by the
outputs S31, S32 and S33 of the corresponding flip flops
in the SWITCH MATRIX which indicate the output area in -
the MEMORY MODULE currently being used for the new }ine.
. ,~. . .
D. Example of Operation `-
Consider now an example of operation of the SEED MODVLE and
related portions of the DPM forming the SEED ~ODULE. Assume that
the SEED MODULE is to revolve down through the iso-entropicgram ~ -
shown in Table 4-B discussed above in I.GENERAL DESCRIPTION. -
Assume that the input line to be revolved is line 0; thus the -
revolve will revolve from line 0 to line 2 and then to line 7.
~ines 0, 2 and 7 broken down into 7 bit words with a 0 bit
indicating absolute word code and a 1 bit indicating hybrid word
code at the lefthand end are as follows:
10001110 ) ' '`:`.:'`'
2 00011010 ) hybrid line 0 ;~
01110101 ) length = 3 `~
:: 10001011 ) ,.'
00000111 ) hybrid encoding of line~2
00011010 ) length = 3 words `;
~3 10000111 ) hybrid encoding of line 7
01011001 ) length = 2.

-217- `
,

---` 112'7~67

l The su~sequent sequence o~ operation of the se~d finder
.i9 as follows:

Input to the SEED MODULE is.
from "LINE NO" of IPRF line # of the seed (01 to
SMLI iso-entropicgram width (16)
to SMHW ~-
from HW of IPRF
from MLNl of DECODE ~ MODULE length of input line ~3). to SLN .:
from DOl of DECODE I: MODULE line (:O~ in MEMORY MODULE area l :
~ '
sequence of control SBl-SB14, SB2-SB13, SB15, Sgl4, .
SB2-SB10, SB16-SB17
SBl SDN = O
SMLI = 0 SLINE ~O~ = SMLI(O)
assume beginning line # and length
are SEED and initialize modules;
SLN = 3
DlFST = l
SB2 call DECODE I MODULE
CRl = DOl = 14 EOFl = 0
SB3 EOFl = 0 , SB4
SB4 TI(21 = SMH~ C16~ - CRl(14) difference between iso-
entropicgram width and largest
occurrence value;
SB5 call DECODE I MODULE
DOl = 12 EOFl = O
SB6 EOFl = O :, SB7
SB7 T0~2) = CRlCl4~ DOl(12~ diference between the two
largest occurrence values;
'
- 218 -

~` - llZ7767


l SB8 Tl(2) = M~X(I~l(2),T~) th~ maxlmum of these dif~erences;
SB9 SDN(2) = SDN(~ rl(2) how far revolved;
SMLI(2) = SM~I(O~ ~ Tl(2) line position in the iso-
entropicgram
SBl0 SDN(2)< SMHW(l6l , go to .
SBll
SBll DELI(:2)~- Tl(:2) largest to DELTA MODULE input;
SBl2 The REVOLVE MODULE is called
and creates line No. 2 of the ~:
lQ iso-entropicgram
SBl3 SLN(3) = M~N3(3~ .',go to SBl4 the possible shortest seed
line is not less than 2; therefore
iso-entropicgram line 2 is not : ~ :
considered as a seed line;
go to SB2 reset the DECODE I and II MODULES
DlFST = l ::
SB2 call DECODE I MODULE read the largest occurrence; - -
CRl = DOl = ll EOFl = 0
SB3 EOFl = ~ :,go to SB4 ;- ;
20 SB4 Tl(5~ = SMHWC16) - CRl(ll~ difference between iso-
entropicgram width and largest
occurrence;
SB5 call DECODE I MODULE
DOl - l0 EOFl - 0
. .




: ' ` :.
_ 21~ -
: ' ,''`

.
. .. .. ..... ... -. ~ ~. . -

~ r)
~127767

1 ';~G EOFl ~ O .~o to SB7
SB7 T0(1) ~- Cr~l(ll) - DOl(10) di~crence be~ween ~he
two larzcs~ occurrences;
SB8 Tl(5) = MAX(Tl(S), T0(1) ) number of lines to be
revolved;
SB9 SDN~7) = SDN(2) ~ Tl(5) number of lines revolved; .
SMLI(7) = SMLI(2) ~ Tl(5) position of the seed line :
a~er the revolve;
S~10 SDN(7) < S~n~(16).', go to SBll
10 SBll DELI(5) = Tl(5) number of lines to be
revolved to the DELTA
MO~ULE;
SB12 line 2 is now revolved down 5 lines to line 7
by the REVOLVE MODULE - the fonmat and length of
this line were given in the input discussion
SB13 SLN(3) ~ MLN3 (2) , . SB15
SB15 SLN(2) - MLN3(2) . save new ~sa-entrop~cgram
SLINE(7) ~ SMLI(7) line as possible shortest
iseed line;
20 SB}4 DlFST - 1 reinitialize DECODE I ~ ~:
and II MODULES - inhibit . :
~ go to SB2 the overwriting o~ the :
: seed line in the MEMORY ~ :;
MODULE area; .
2S SB2 call DECOVE I MODUIE
CRl ~ DOl ~ 7 EOFl - O
;: ;'-':.
. ~ ' '.
:`: 3 . -.
~ ` . -
:: -220-
., ,.

~Z'^~767

1 IX. S~D FINl~r~R
__
~ riefly, an electronic data processing SEED FINDER or
data compactor has been disclosed. The compactor is for a
coded occurrence signal, such as an event occurrence signal, which
represents actual occurrence values out of a group of possible
occurrence values. The possible and actual values are arranged -~
in a monotonical, preferably decreasing, value order. Memory ~ `
means such as the MEMORY MODUEE stores such a coded occurrence
signal. Means such as the DECODE I and DECODE II MODULES

form a first signal representing the stored coded occurrence
signal. Means such as the seed finder of Fig. 26 responds
to the first signal for selectively forming, for each different
first signal, any one of a set of equivalent signals, the set
including such first signal. Each equivalent signal is

lS related to another one by an exclusive OR of the values
thereof and the values thereof relatively shifted. The
means for forming equivalent signals further includes means
for enabling one or more of the equivalent signals to be
sequentially formed. In thls connection the SEED MODULE,

including its control counter, enables a coded occurrence
signal such as an event occurrence signal to be revolved ;
through its iso-entropicgram.
Means such as the SLN register of the SEED MODU~E and
the MLN3 register o~ the ENCODE MODULE store and form a

2 signal indicative of the length o~ the occurrence ~ignal -
and the equivalent ~ignals. Means is provided for forming
a signal identifying the equivalent signal which is associated

with the shortest length signal. In this connection the
SEED MODU~E is operative during SB13 of its flow for comparing
3 ~he length of the value stored in the MLN3 and SLN registers
. ."',


-221-

(~ r~

~Z7767
1 to dct~rmin(~ whi~ is ~h(~ ~L1mal].c~t: . The ~3ic3n;l1 in r~glstcr
SLN indic~tes the length o~ the short~st ~ecd to th~t po~nt
and th~ content of register MLN3 indicates the l~ngth o
the line value being stored in the MEMORY MODULE from thc
5 ENCODE MODULE.
The purpose of the seed finder is to locate the seed
of an event occurrence vector. Stating it differently, an
event occurrence vector signal is to be revolved through its - -
corresponding iso-entropicgram until an equivalent signal
0 is found that is shortest in lèngth. The iso-entropicgram
has a set of unique but equivalent signal sets which
include the input or event occurrence vector. Each signal
set is related to another one in the set by an XOR of the
value thereof and the value thereof relatively shited by
one possible occurrence value. In a preferred embodiment
of the invention the shortest length is that which is shortest
when stored in hybrid coded form in the MEMORY MODULE. --
Fig. 23 is a block diagram showing the internal control/
data flow for the seed finder. The ENCODE, DECODE I and II,
REVOLVE, DE~TA, and SEED MODULES shown in Fig. 23 in
conjunction with the MEMORY MODULE and the SWITCH MATRIX
(not shown) are a part of the DPM system depicted in Fig. 1
and function together as a data compactor.
What has been disclosed is a data processing method for
compacting a line signal which represents actual occurrence values
out of a group of possible occurrence values, the possible and
actual occurrence values being arranged in monotonical value
order. An example of the line signal in the disclosed embodiment
of the invention is an event occurrence vector which is stored in
3 memory in hybrid coded form (see Table 9). However, it will
.~' ` . '
,.
-222- ~ ~
``'" .
.

` ~Z7767

be understood the line signal might be in other codes
within the concepts of the invention under consideration.
The steps are as follows. Such a line signal is stored in
a memory such as the MEMORY MODULE, as the possible shortest
line signal. In this connection, the SEED MODULE applies a
signal to the MEMORY MODULE which ~tores an event occurrence
vector (whose seed is to be found), and the SEED MODULE applies
a signal to the SWITCH MATRIX causing the appropriate
switches to be set identifying area 1 as the one containing '''
lQ the current shortest line signal (i.e., the seedl. '
The SEED MODULE responds to the values of the possible ''~
shortest line signal for forming at least one signal l ,
representative of a total number of lines to be revolved.
Such an operation takes place during SB8 when the largest
of the two different signals contained in registers Tl and l -~
TO is transferred to register T1. In this connection,
register TO contains the difference between the values
represented by the last two occurrence values at one end
(i.e., the largest end~ of the shortest line signal and
2a register Tl contains the difference between the values l ,
represented by the maximun length (,iso-entropicgram width~
signal stored in register SMH~ and the occurrence value at
one end Ci.e. largest occurrence value~ of the possible
shortest line signal.
The steps include the step of responding to the total
number of lines to be revolved signal for forming one or
more incremental revolve signals representative of the
incremental numher of lines by which a revolve is to be , '~, -
effected. In this connection, the DELTA MODULE breaks ' -
3a the total number of lines to be revolved into 'its component - -




- 223 -

X ' ~'~

` ~Z7767

powers of 2 thereby speci~ying the actual increments by'
which the revolve is to be effected.
Continuing with the method is the step of revolving
the input line, which ;nvolves th.e step of forming a resultant
incremental line signal representing the value of the possible
shortest line signal exclusive OR'd with the value of the ~
possible shortest line sïgnal shifted by the number of : ~,
occurrence values specified ~y one of the incremental '''~
revolve signals. This step i5 accomplished by the REYOL~E
MODULE during the revolve portion of the operation disclosed
in connection with,5~12 of the SEED MODULE flow. The step of
revolving further includes the step of enabling the resultant
incremental line signal to be used in the preceding step
for exclusive ORing, using another one of the incremental
revolve signals. In this connection, after each exclusive OR,
the result ifi stored into th,e MEMORY MODULE and the DELTA
MODULE provides the next component power of 2 signal which
is then used for exclusive ORing the result formed by the
REVOLVE MODULE. This operation is repeated until all of the
incremental powers of 2 have been used in the revolve process
by the REVOLVE MODULE. Further included in the step of
revolving is the step of storing the final incremental line
signal, after all of the incremental revolve signals have been
used. In this connection, the final line signal stored in
the MEMORY MODULE during the revolve process is identified by
the OAR and t~e SWITCH MATRIX. The length.of the stored
possible shortest line signal ~contained in regi~ter SLNI .
and the length.of the new incremental line signal contained :~
in register MLN3 of the EWCODE MODULE are compared and the
3a ALU of the SEED MODULE forms a signal indicating the shortest
' ~ .:

- 224 -
xi

7767

one duri~g SB13 oE the S~ED MODULE flo~. Suhsequently,
the preceding steps are repeated utilizing the lin~ signal
which is indicated to be the shortest one. In this connection,
note that following SB13, SB14 and SB15 may then be entered
following which SB2 is reentered where the repeat operation
takes place.
Preferably, thP steps also include that of combining
values represented hy a series of the total number of lines
to ~e revolved signal to thereby form a further signal
representing a line number value for the stored possible
shortest line signal. This is accomplished using the ALU
and registers SMLl and Tl of the SEED MODULE during SB9.
Preferably, the step of forming a resultant incremental
line signal involves the step of combining the values
represented by the possible shortest line signal in one
of the incremental revolve signals to form a corresponding
shifted signal. Inthis connection, the absolute occurrence
values provided by the DECODE II MODULE are combined ~ith
the incremental power of 2 values from the DELTA MODULE -
to form a shifted value by the REVOLVE MODULE. The step -~
of forming a resultant incremental line signal further
comprises the step of exclusively ORing the values
represented by the shifted and unshifted possible shortest
line signals to form the resultant incremental line signal.
In terms of apparatus, there has also been disclosed a
data compactor for an input line signal (i.e. event occurrence ~-
vector) which represents actual occurrence values out of a
group of possible occurrence values. The possible and actual
occurrence values are arranged in an incremental, preferably
decreasing, value order. Included is memory means such as
.' .

- 225 -

. - :.
P.~ ~

767

th~ MEMORY MODUL~ for ~toring th~ input line signal.
Decoding means such as the DECODE I and II MODULES convert
a line signal stored in the memory means including the
stored input line signal from a first compact code (i.e.
hybrid codel to a second expanded code ti.e. absolute code).
Means including the SEED and DELTA MODULES are responsive
to a converted line signal from the decoding means for
forming one of a selected number of value signals. The
number of value signals correspond to such signals as the
component power of 2 signals provided from DELO in the
DELTA MODULE. Means such as the REVOLVER is responsive
to one of the number value signals and the corresponding
converted line signal from the decoding means for further
converting the concerted line signal, as a function of
the num~er value signal, to a modified but equivalent
line signal. This process is effected in the REVOLVER
through the exclusive ORing process. Encoding means, such

.... .. . . .
as the ENCODE MODULE, converts the equivalent line signal
from the second to the first code for storage in the memory
2Q means. Included is means such as the OAR, the ALU and SLN
and MLN3 (ENCODE MODULE~ for selecting one of the equivalent
sets of signals. During SB13 the shortest one, in hybrid
code,is selected. The ALU of the SEED MODULE in combination ~ ;
with the MLN3 register of the ENCODE MODULE and the SLN
regi~qter of the SEED MODULE are operative during SB13 for
forming a signal indicating the shorter of the original
stored line signal and the equivalent line signal.
The control counter of the SEED MODULE is operative
following SB14 to ena~le the foregoing means such afi the -

3Q DECODE I and II, SEED, DELTA, and ENCODE MODULES and the `



- 226 -

~lZ7767

REVOLVER to repeat their operation. However, means is
responsive to the shorter indication signal for enabling
the decoding means to decode the shorter one of the stored
original line signal and the equivalent line signal during
the repeat. In this connection, either SBl4 is entered
directly or SBl5 is entered followed by SBl4 depending
on the result of the comparison by the ALU during SBl3.
During SB15 the memory area number in the OAR register is
changed if necessary to identify the MEMORY MODULE area
containing the possible shortest seed line before entering
SB14 where the DECODE I and II MODULES are called to decode
the possible shortest line signal. It will also be noted
in connection with the SWITCH MATRIX that the flip flops of
the SWITCH MATRIX are appropriately set to identify the ~ `
MEMORY MODULE area containing the possible shortest seed line.
Preferably, the decoding means involves à first decoding
means and a second decoding means (such as DECODE I and II ;
MODULES) to enable the actual occurrence values of a line
signal to be provided to the REVOLVER at different rates -
upon demand. It will be noted that the repeat operation
enabled by the control counter of the SEED MODULE going from `
SBl4 back to SB2, et seq, will be repeated until the original
input line has been revolved completely through its iso-
entropicgram, thereby insuring that the shortest equivalent
new line signal (seed) has been formed. Means i9 provided
for disabling the repeat enabling means after the shortest
of the equivalent new line signals has been formed. To this -
end, the value of the current number of lines revolved `
relative to the input line is stored in register SDN and
-~
..
- 227 -

'' '`, ~-

- llZ7~67

is compared with the iso-entropicgram width value contained
in register SMHW by the AhU o the SEED MODULE, during SB10.
If the current number of lines revolved relative to the input
line contained in register SDN is the greater, then SB16 et seq.,
is entered where the operation of the SEED MODULE is subse-
quently exited.
It will also be noted that the DECODE I and II and
MEMORY MODULES form a means for storing and retrieving the
input line signal which is to be compacted.
It should also be noted that means is provided for
- combining the value of the successive number of lines to be
revolved signal in such a way as to for~ a line number for
the shortest line. This function is provided by means such
as the ALU, the SMLl, Tl, and SMHW registers and the ALU
during SB 7 and SB17 of the SEED MODULE flow.
' . . ~
X. CHANGE MODULE
A. General Description. ~-
Section I. GENERAL DESCRIPTION describes a method
whereby changes may be made in an occurrence vector. ;
These changes include insertions, deletions and the addition
of new information. A deletion removes an occurrence value
from an event occurrence vector. An insertion adds an
occurrence value to an event occurrence vector~ An addition
2S of new information may be the addition of new occurrence
values to an existing event occurrence vector or the addition
of new event occurrence vectors.
~;~ According to a preferred embodiment of the invention
~ ~ , .
changes may be made to an event occurrence vector at any

~ ` . .
- 228 -

,

llZ7767

line numb~r of its iso-entropicgram. Preferably, the change
is applied to the seed line and the resultant changed line is
then revolved until the new seed is found.
Describing the change operation in more detail, a seed
which is to be cha~ged is defined in terms of a line number,
a line value, and a length of line value. The change vector
is composed at the input line for its iso-entropicgram (line 0)
and includes an occurrence value for each insertion, for
each deletion, and for each new addition that is to be made
in the seed.
Generally, the method followed is as follows:
(l) rotate the change vector in its iso-entropicgram
down to the line number corresponding to that of ~
the seed which is to be changed. This will pro- ``-
vide a revolved change vector having a line number
- ~ the same as that of the seed, a change value and a
length the same as that of the seed;
(2) merge the occurrence values of the line values in the
seed and change vector by exclusive ORing the two -
together.
More specifically, the operation involved is as follows.
The line value of the change vector, in hybrid code, is placed
in MEMORY MODULE area l. The line value of the seed is placed
in MEMORY MODULE area 2. The change vector is revolved down
to the same line of the iso-entxopicgram as that of the seed.
At this point, the change vector is defined in terms of the
line number of the seed, the line value for the change vector
and the length of the seed. The merge operation ir.volves XORing
the line value of the seed and the line value of the changed
vector resulting in a changed line value. The changed seed is
'',
- 229 -

`
X ' ' "''

'7'767

then defined in terms of the line number for the ariginal
seed, a changed line value and the length of the seed.
The changed seed is then revolved down to its seed.
Fig. 24 is a schematic and block diagram of the CHANGE
MODULE which enables the above operation. Fig. 26 is the
internal control/data flow for the seed line changer, which
is a portion of the overall DPM system. It will be seen
from this figure that the CHANGE MODULE makes use of the
ENCODE, DECODE I, DECODE II, DELTA, REVOLVE, and SEED MODULES
as well as the MEMORY MODULE, the SWITCH MATRIX and IPRF
in its operation.

B. Components
The CHANGE MODULE, Fig. 24 has two 8 bit 8 flip flop
registers CLINE and CLN. Both of these registers are of
type SN74100 disclosed in the above TTL book, having the
same characteristics as those described above.
In addition, the CHANGE MODULE has a control counter 613
with flip flops Pl-P4. Flip flops Pl-P4 are the same type
disclosed in Section I. GENERAL DESCRIPTION, F. Components.
The CHANGE MODULE has a generalized clock control
circuit 700, The generalized clock control circuit 700
is described in more detail in the subsequent section
entitled "Generalized Clock Control Circuit".
The CHANGE MODULE also has clock suspension logic 622
connected to the CS input of the clock control circuit 700.
As described with respect to the ENCODE MODULE, logical -
equations are used to indicate gating required to control
various circuits and to generate various signals, all ~-
indicated in the CHANGE MODULE.
'. .
- 230 -
, '
'
~;r . '
~ .

o r)
1127'767

l Depicted ~long the right h~nd side o the C11ANGE MODUL~

Fig. 24 are input and output control lines and information
inputs and outputs. The information inputs and outputs are

depicted by heavy lines.


C. Detailed Description
Reference should be made in the following discussion to
the CHANGE MODULE schematic of Fig. 24 and the CHANGE MODULE

flow diagram of Fig. 25. The following discussion will des- -
cribe the CHANGE MODULE using an example of a specific seed

line and change line in order to provide a better understanding -
of the system. The specific example is that given hereinabove
in I. GENERAL DESCRIPTION w~th respect to Tables 9-A and 9-~.

As noted, the CHANGE MODULE when combined with the ENCODE,
l5 DECODE I, DECODE II, DELTA, SEED and MEMORY MODULES, the ~ --

SWITCH iMATRIX and IPRF, forms a seed line changer. The
seed line changer sub-system of the DPM is depicted in the ~-`
general block diagram of Fig. 26 (the MEMORY MODULE, SWITCH -

MATRIX and IPRF are not shown).
Initially, the MINI COMPUTER forms a true signal at the

output MINIT, thereby applying a true signal to the IP input
of the clock control 700. The true signal at the input IP

causes a true s1gnal at the iMR output which resets flip

flops Pl-P4 of the control counter 613 to 0 wlthout a clock
pulse. The MEMORY MODULE areas l and 2 and ~INE # and LNl

and LN2 of the IPRF initially are loaded by the MINI COMPUTER
with the inputs illustrated in ~able l1. Thus, the values
for the examples of Tables 9-A and 9-9 which are now stored
are as fOl10WR
~3C
~ ' '': .

~ -231-

:~127767

MEMORY MODULE area 1 3 6 8 9 11 12
MEMORY MODULE area 2 0 6 12
LINE # 6
LN2 8
LNl 7
The MINI COMPUTER then forms a true signal at the CNGO output
causing the clock control 700 to start forming its clock pulses
at the CLK and CLK output.
At the first true pulse at the CLK output, the logic
~ . is true and the flip flop Pl is set to a 1 state,
thereby forming a true signal at the Pl output. The true
signal at the Pl output causes the CLINE register to couple
the line number of the seed from LINE # of the IPRF to the
output of the CLINE register.
The true signal at the Pl output also causes a true
signal at the CM4 output of the CHANGE MODULE whiah in turn ~-
goes to the DECODE I, DECODE II, SEED and DELTA MODULES, and
the SWITCH MATRIX. The true signal at CM4 causes the CNG ~
flip flop in the SEED MODULE to be set to a 1 state where -
gates 218 and 226 couple the length of line value for the
change vector from LNl of IPRF to the registers MLNl and -
MLN2 in the DECODE I and DECODE II MODULES; causes the
selection circuit DELS to couple the line number of the
. .
seed from the output of the CLINE register of the CHANGE
MODULE to the i~put of register 302 in DELI of the DELTA ;`
MODULE; and causes flip flops S31 and S23 in the SWITCH MATRIX
to be set to 1 states. The 1 states of flip flops S31 and ~-
, . . .
S23 cause the DECODE I and DECODE II MODULES to read from
MEMORY MODULE area 1 and the ENCODE MODULE to write into
~30 MENORY MODULE area 3. To be explained, when the true signal

, . .
- 232 -
.; , . .
~ i , , .

~ ,Z'7767

at Pl terminates, the CLINE reyister storea the line number
from LINE # of the IPRF.
Subsequently, a true signal is formed at the CLg output
of the clock control 6Q2, thereby causing the logic Pl.CLK
to be true, there~y forming true signals at the CM3, CM5
and CM6 outputs. The true signal at the CM3 outputs causes
the length of line Yalue from LNl of IPRF to be stored ~-
into the MLNl and MLN2 registers of the DECODE I and II
MODULES: causes the length of seed line from LN2 of IPRF
to be stored into the CLN register in the CHANGE MODULE:
and causes the line number from the output of the CLINE ; ~-
register of the CHANGE MODULE to be stored into the register -
302 of DELI in the DELTA MODULE: and causes the one-shot
REVGO in the REVOLVE MODULE to be set, thereby calling the
operation of the-REVOLVE MODULE.
In addition, a true signal is now formed by the logic
Pl.REVEND.CLK in the clock suspension logic 622, thereby
causing a true signal at the CS -input of the clock control 700. ~
The true signal at input CS causes the clock control 700 to ~ -
suspend the clock pulses at CLK and CLK, thereby suspending
operation in the CHANGE MODULE until the operation of the
REVOLVE MODULE is complete and removes the true signal at ;~
REVEND so indicating. `
Using the example shown in Tables 9-A,9-B, the following
conditions now exist:
(1I register MLNl (DECODE I) contains the length
of the line value for the change vector (MLNl = 71;
(2) register MLN2 (DECODE II) contains the length of
the line value for the change vector (MLN2 = 72;
(3) register DELI (DELTAI contains the line number of
.,',,',".,;.
.
.. . .
. .

11;~7767
the s~d lin~ value (DI~LI = G);
1 (~) CNG ~lip flop (SE~.D) is in a 1 state;
(S) flip flops S31 and S23 (SWITCII M~TRIX) are
in ~ 1 state;
(6) MEMORY MODU1E area 1 contains the change line
value signals (MEMORY MODULE area 1 = 1,3,6,8,9,11,12);
(7) MEMORY MODULE area 2 contains the seed line value
signal (MEMORY MODULE area 2 = 0,6,12);
(8) register CLINE (CHANGE) contains the line number
of the seed line value (CLINE = 6);

(9) register CLN (CHANGE) contains the length of the
line value of the seed (CLN = 2);
(10) REVO~VE MODULE has been called.
Following its call, the REVOLVE MODULE forms a true signal
at the RM8 output, thereby indicating that the SWITCH MATRIX
has been clocked~ Since fl~p flops S31 and S23 of the
SWITCH MATRIX had been et previously, this results in the
setting Sll, S21 and S33 of the SWITCH MAT~IX. Thus, the
¦ DECODE I and II MODULES will read from MEMORY MODULE area 1 ~
and the ENCODE MODULE will write to MEMORY MODULE area 3. - ;
The true signal at the RM8 output of the REVOLVE MODULE
sets the flip flops Sll, S12 and S33 in the SWITCH MATRIX
to a 1 state. Additionally, the input SM5 to the REVOLVE
MODULE is false, indicating that the current line value in -
MEMORY MODULE area 1 is not'to be kept as a posslble seed.
2 ~he signal at RM12 output of the REVOLVE MODULE causes the
SP flip ~lop in the SWITC~ MATRIX to be reset to 0. -
Therefore, the fîrst pass of the REVOLVE MODULE causes the
change vector to be revolved down four lines to line 4 of its
~ , '

~ 3
: ::
~ -234-
,.~:~

l~Z'776~

1 iso-cntropicgram and the revolved line value o~ the change
vector is now stored in MEMORY MOD~LE area 3 as spccified
by the 1 state of flip flop S33. Thus, the revolved line
value stored in ~lEMaRy MODULE area 3 now contains the
absolute values 1, 2, 5, 7, 9, 11, 12, 15 and the line
value 4 is stored. ;
At this point, the register MLN3 of the ENCODE MODULE
contains the length value for the revolved change line
value now stored in MEMORY MODULE area 3 (i.e., a length
0 cf 8). The REVOLVE MODULE then forms true signals at the -~
RM14 and RM10 outputs, thereby causing the length value
contained in MLN3 of the ENCODE MODULE to be enabled to the
input of the registers MLNl and MLN2 of the DECODE I and
II MODULES and stored. ~ -
The REVOLVE MODULE then embarks on a second pass through
its flow. At this point in time, flip flops S33 and S21
in the SWITCH MATRIX are in a 1 state; therefore, when the
REVOLVE MODULE forms a true signal at its RM8 output it
causes the flip flops S13, S23 and S31 in the SWITCH MATRIX
to be set to a 1 state. The 1 states of these flip flops
cause the DECODE I and II MODULES to both read the revolved
change line value contained at MEMORY MODULE area 3 and
cause the ENCODE MODULE to write the resultant revolved
line value into MEMORY MODULE area 1.
It should be carefully noted at this ~uncture that although
reading and writing is taking place in MEMORY MODULE areas 3 and
1, ME~ORY MODULE area 2 contains the origilal seed line value
and it remains there unaltered at this point~
A true signal is subsequently formed at the RM12 output of
3 the REVOLVE MODULE which causes the SP flip flop in the SWITCH


-235-
::'


1127767

MAT~IX to b~ resct at an 0 state. The REVOLVE MOUDLE then
revolves the revolved change line value (i.e., 1, 2, 5, 7,
9, 11, 12, lS) down two lines from iso-entropicgram line 4
to 6, and the ENCODE MODULE writes the new revolved change
line value in MEMORY MODULE area 1. Thus at this point in
time (conclusion of this second pass of the REYOLVE MODULE~,
MEMORY MODULE area 1 contains the revolved change line
value 1, 6, 12 (see h. of Table ~.Al. Additionally, the
length value of the new revolved change line value is
contained in register MLN3 of the ENCODE MODULE.
Subsequently, the REVOLVE MODULE forms a true signal at
the RM14 and RM10 outputs, causing the value to be stored :.
from register MLN3 into register MLNl and MLN2 of the ^ :~
DECODE I and II MODULES.
The DELTA MODULE has now provided all of the component
powers of 2 of the total number of lines to be revolved
for the change line and therefore th.e REVOLYE MODULE .
terminates ïts operati`on and forms a false signal at its
REVEND output. Th.i.s causes logic Pl.REVEND in clock
suspension logic 622 to become false which causes the clock
control 700 to again form pulses at CLK and CLK.
The next true signal at the CLK.output resets the P9
flip flop to a ~ state and sets the P2 flip flop to a 1 state .
in the control counter 613, thereby forming a true signal at
the ~2 output, -.
The true signal at output PC causes a true signal at the
CM2 output of the CHANGE MODULE which causes the length ~2~.
of the seed line value in the CLN to be coupled to the input.
of MLN2 of the DECODE II MODULE. . :
The true signal at P2 also causes a true signal at the CMl

~ - 236 -

~127767

output to the SWITCII MATRIX thereby inhibiting any input to
the S21, S22 or S23 flip flops.
When the pulse is ormed at the CLK output, the
logic P2.CLK becomes true, which in turn causes a true signal
at the CM6 and CM8 outputs of the CHANGE MODULE.
The true signal at the CM8 output causes the MLN2 ~ -
register in the DECODE II MODULE to be loaded with the ~ -
content of the CLN register. Thus the length 2 of the seed - -
line value (in MEMORY MODULE area 2) is stored in the MLN2
register of the DECODE II MODULE. -
The true signal at CM6 causes the clock control 70a to
suspend the clo~k in the CHANGE MODULE. It also causes
the REVGO mono-stable to be fired in the REVOLVE MODULE
thereby initiating the revolve process.
Note that nothing was loaded into DELI of the DELTA
MODULE. This will cause the REVOLVE MOUDLE ~ mærge or XOR
the seed line value and the change line value.
The REVOLVE MODULE forms a true signal at the RM8 output
~ causing Sll and S33 flip flop in the SWITCH MATRIX to be
set to 1. Also the RM12.CMl logic becomes true, causing
the S22 flip flop in the SWITCH MATRIX to be set. This :
indicates that the DECODE I MODULE will be reading from
MEMORY MODULE area 1, the DECODE II MODULE will be reading -
from MEMORY MODUhE area 2, and the ENCODE MOUDULE will be
writing to MEMORY MODULE area 3.
Upon completion of the merge operation, the REVOLVE
MODULE forms a false signal at the REVEND output which
causes the logic P2.REVEND.CLK to go false which, in turn,
causes the clock control 700 to again form pulses at the
CLK and CLK outputs. ~
~ .
- 237 - `
':
.
.. ` ,

~iZ'7'767
.
~rlle n~xt true slgna~. at the CLIC ou~put rese~s the P2
flip flop to a 0 ~tate and set~ the P3 1ip flop to a 1 state
in the control counter 613, thereby forming a true signal
at the P3 output.
When the pulse is formed at the CLK output, the logic
P3.CLK becomes true, which in turn forms a true signal at
the CM2 output of the CHANGE MODULE. The true signal at the
CM2 output sets the SMGO one-shot in the SEED MODULE to a 1
state, thereby cal~ing the operation of the SEED MODULE.
The SEED MODULE then commences its operation of locating the
seed in the manner described hereinabove with respect to the
SEED MODULE.
To this end, the SEED MODULE causes the new seed line
value contained in MEMORY MODULE area 3 to be revolved through -
its iso-entropicgram and locate the seed which, in the
case of the disclosed embodiment, is the line from the
ENCODE MODULE which has the fewest number of words. The
SEED MODULE causes the line value of the seed value to be
saved in the MEMORY MODULE in the area specified by OAR
of the SEED MODULE. At the time the true signal is formed
at the CM2 output, the logic P3.SMEND.CLK becomes true, :.
thereby forming a true signal at the CS input to the clock
control 700 which again causes the clock control 700 to
terminate its pulses at the CLK and CLK outputs and suspend
the operation of the CHANGE MODULE. :~
When the SEED MODULE has completed its seed finding
operation, its register OAR ldentifies the MEMORY MODULE area
containing the line value of the new seed; its register SLN -
contains the length of such line value; its register SLINE
contains the line number value of such line value, and
':
- 238 -

.
: ~:.'.

(~
~ 7767

1 its rccJister ONOC contains the number of occurren~cs in
such line value. When the SE~D MODULE completcs it~
operation, a true signal is formed at the SMEND output from
the SEED MODULE, which in turn causes a false signal at the
SMEND output. This causes logic P3.SMEND.CLK to go false
and causes the clock control 700 to start forming its pulses - -
at CLK and CLK.
The following pulse at CLK resets the P3 flip flop to
a 0 state and sets the P4 flip flop to a 1 state in control
counter 613.
The true signal at the P4 output cause~ a true signal
at the MT input of the clock control 700 which, as discussed
above, sets a one-shot in the generalized clock control 700
which in turn causes true signals to be formed at the MR
and FC outputs. The true signals at the MR output of
the clock control 700 cause all of the flip flops including
T4 of control counter 613 to be reset to 0. The true
signal at output FC causes the CNGEND output of the CHANGE
MODULE to turn true and signals the calling module that the
20 operation of the CHANGE ~ODULE is complete. `
. :. "

D. Exam~le of Operation
An example of the operation of the CHANGE MODUIE in
the seed line changer will now be given in 8ymbolic notation
25 using the example depicted in Tables 9A and 9B. ~he --
corresponding blocks in the flow diagram are shown along
the left hand side.
The following is expected as input: ;
CLINE - 6 Line number of the seed line value;
; 3 HW = 8 Iso-entropicgram width;

-239-

~127767
1 LNl = 7 Length of line value for the change vector;
LN2 Length of the line value for the seed;
DELI = 6 Llne number of the line value for the seed;
Change line value In MEMORY MODULE area l;
1,3,6,8,9,11,12 where 6,12 are deletions;
the remainder insertions; -
Seed line value In MEMORY MODULE area 2;
0,6,12;
Sequence of control is CBl - CB5;
CBl initialize clock proper information into the
proper registers;
CLINE = LINE # =6 seed line number;
CLN = LN2 length of seed line value; .
CB2 DELI(6) = CLINE(6) number of lines to revolve to
DELTA MODULE:
call REVOLVE MODULE revolve the change vector down to ~ .
same line number as the seed line; :
CB3 MLN2 ~~ CLN load the length register with - -
the length of the line value of the
seed; set DECODE II MODULE to read
reset DECODE II MODULE from MEMORY MODULE area 2; ~
CB4 call REVOLVE MODULE the change line value and the --
seed line value are XOR'd with the . .
result as shown in h of Table 9-A;
CB5 SMLI - CLINE line number value clocked to SMLI
CNG = 1 of the SEED MODULE, CNG flip flop
- set; :
call SEED MODULE the new seed is located; -~



240 -

~ .

~lZ7767

HALT
output taken from the SEED MODULE
SLINE = 5 (seed line number)
OAR = MEMORY MODULE area which contains the seed
SLN = 1 (see line value length)
ONOC = 1 (number of occurrences in seed line value)




''.','. ~.

~ .




.~ . .

~ . .
~: 30
"~
- 241

: X ~ " .

l~Z7767

Xl S~D LINE CH~NG~R
-
From the foregoing description of the CHANGE MODULE it
will be understood that the ENCODE, DECODE I and II, REVOLVE,
D~LTA and SEED MODULES depicted in Fig. 26 in association
with the MEMORY MODULE and the SWITCH MATRIX ~not shown)
form a Seed Line Changer which allows a seed to be changed ~-
without revolving it back to the zero or input line of the
corresponding iso-entropicgram. The seed line changer forms
an electronic daia processing system for changing an occurrence - --
value signal, such as a seed, utilizing a change value signal ~
such as a change vector. The aforementioned occurrence and , ;
change value signals each represent an actual occurrence value
out of a group of possible occurrence values, the possible
and actual occurrence values being arranged in monotonical, -;~
preferably decreasing value order, as depicted in Tables 1
and 2. Means such as the MEMORY MODULE area 1 is provided l -`
for storing the occurrence value signal which is to be
changed. Means such as the CLINE register of the CHANGE
MODULE is provided for storing a line number signal in
association with the stored occurrence value signal. The
line number signal stored in register CLINE specifies
the number of the line of the line value of the seed.
Means such as the MEMORY MODULE area 2 stores the change
occurrence signal (i.e., the change vector) which specifies
the changes in the values of the stored occurrence value
signal. Means such as the REVOLVER depicted in Fig. 19
form~ a means for responding to the change occurrence value
signal for selectively forming, for each different change
value signal, any one of a set of equivalent signals, the
set including such occurrence value signal. Each equivalent




- 242 -
`.''-



~Z7767

signal wi~hin eacll set is uni~ue and i8 related to anotherone by an exclusive OR of the values thereof and the values
thereof relatively shifted. Included in the foregoi.ng means
is means for forminy any one of the equivalent signals in a
set as specified by a received number of lines signal. Means
such as the SEED and DELTA MODULES respond to the stored
line number signal for applying a number of lines signal
to the equivalent signal forming means. It will be -.
recalled in connection with the DELTA MODULE that the
DELTA MODULE forms a number of lines signal in the form
of component powers of 2 of the total number of lines .-
to be revolved. :. :
Further included is means such as the REVOLVER for .
exclusive ORing the values represented by an equivalent , .-
signal and the occurrence value signal to thereby form the
changed occurrence value signal.



XII. GENERALIZED CLOCK CONTROL
_ . _
Individualized clock control circuits have been .
disclosed for the previously described ENCODE, DECODE I, ,. -
DECODE II, REVOLVE, DELTA and SEED MODULES. However, it i.
should be noted that a generalized clock control circuit .
may be employed. T~erefore, with respect to the CHANGE -
MODULE just de.~ribed and other modules subsequently to I .
be disclosed in connection with.the DPM SYSTEM, a general~
ized clock control 70Q shown in Fig. 27 will be u9ed.
Specifically, the generalized clock control circuit
700 includes one-shot multi-vibrators 7a2 and 704, a flip
flop 708, OR gates 712 and 714, an AND gate 718 and logical
signal inverters 72Q and 722, all of the same types disclosed




~ - 243 -

llZ7767

~or thc ~NCOD~ MODUL~. ~ source of regular recurring clock
pulses 701 provides clock pulses to one input of the AND gate
718. The clock control 700 has input circuits IN, CS, IP and
MT and has outputs MR, CLK, CLK and FC. Modules subsequently
to be disclosed only disclose the clock control 700 in block
form with the prior mentioned input and output circuits.
The one-shots 702 and 701 are of the same type disclosed
for the ENCODE MODULE and, responsive to a true signal at
the input at the left side, are triggered to a 1 state where
a true signal is formed at the output indicated on the
right hand side. The one-shot remains in a 1 state for a
time interval equal to that between the beginning of two
successive clock pulses from the source of clock signals
701 and then automatically resets to a 0 state where a false ` -
signal is formed at the corresponding output. ~-
The flip flop 708 is a conventional flip flop of the
same type disclosed hereinabove with respect to the ENCODE
MODULE. The one-shot 702 has its input connected to the IN
- input and the IN input is the one which receives a true signal
whenever the corresponding module is called. A true signal
at the IN input triggers the one-shot to its 1 state, causing
its output to go from a false to a true signal. The OR gate
712 also has inputs connected to the output of one-shot 704 l
and to the IP input. The IP input is the one which receives -
a true signal whenever it is desired to reset the control
counter in the corresponding module. Additionally, the
one-shot 704 has its input connected to the MT input of the
clock control 700. The MT input receives true signals
whenever the corresponding module has completed its function.
.. I ..
Thus, a true signal at the MT input causes the one-shot 704




_ 244 ~
'

,,~,

z~67

to ~ set to a 1 statc~ which, ln t~rn, applies a true
si~nal at the I~C outL~ut, thcreby indicatin~ that th~
function of the corresponding module is complete. The
true signal at FC is also applied to the OR gate 712.
Whenever any of the inputs to the OR gate 712 receives a
true signal, a true signal is formed at the MR output.
The MR output is connected to the control counter in the . ~-
corresponding module and resets each of its flip flops to .~ ;
a 0 state when a true signal is applied. -
The AND gate 718 is connected to the CLK output and is .
connected through the logical signal inverter 722 to the .
CLK output of the clock control 7Qa. The gate 718 is an ; .
AND gate which has one input connected through the logical
signal inverter 720 to the CS input, a second input to the .. ~ -
unbored output of the flip flop 7a8, and a third input
connected to the clock 701. The CS input is the one which. ..
receives true signals from the clock suspension logic of
the corresponding module. The flip flop 708 is set to a 1
. state which, in turn, applies a true signal to the gate 718
whenever a true signal is formed eith.er at the control counter
reset circuit IP or the end of function input MT. As a
result, the AND gate 718 causes true clock pulses to be

.
formed at the CLK and CLK outputs whenever the CS input is .~
false (due to a false condition for the corresponding clock
suspension logic~i and the flip flop 7Q8 h.as been set to a 1
state and a pulse occurs from the clock 701. The logical
signal inverter 722 inverts the clock signals at CLK, forming
the complement thereof at the CLX output. .




- 245 -

~ ~'
j! .. ~

`' ~lZ7767

XIII. o~Tr~uT MOD~L~
t
A. G~neral Description
_
The OUTPUT MODULE operates in conjunction with other
portions of the DPM SYSTEM generally depicted in Fig. 34
for performing two functions. The first is to cause a simple
retrieval or decompaction ~ype of operation wherein an
event occurrence vector which is represented by one of
the non-input lines (usually the seed) is revolved back
to the input line of its iso-entropicgram. The second is
called the DEL function and causes a check to determine if
an event occurrence vector which is represented by a non- -
input line (usually a seed~ contains particular actual occurrence
values back at the input line of its iso-entropicgram. Signi- -
ficantly, the second function is done without revolving
the non-input line clear back to the input line of its iso-
entropicgram.
Briefly, the operation of the OUTPUT MODULE in carrying
out the retrieval or decompaction function is as follows: -
an event occurrence vector, at one of the non-input lines
of its iso-entropicgram (usually the seed), is represented
by a line value signal and a line number signal. The
OUTPUT MODULE determines the difference between the value of
the line number signal and the width of the iso-entropicgram. - -
The difference thus identifies the number of lines required
to revovle the line value signal back to the input line
of its iso-entropicgram. The difference is then provided
to the DELTA MODULE which forms signals representing its
component powers of 2 beginning with the largest (as discussed -
above). The REVOLVE MODULE then causes the line value signal
to be revolved in its iso-entropicgram by the specified number




~ - 246 -
:

, . :

~ 7767

of lines baclc to ~he input line of the iso-entropiccJram.
Consid~r now the operation for the D~L furlcti.on. A
reference line (in hybrid coded form) is stored int~e M~MORY
MODULE and represents one or more test values. Each test
value identifies an actual occurrence value whose present
is to be checked in a line of an iso-entropicgram. ~owever,
the given line to which the test is to be applied is one
of the non-input lines of its iso-entropicgram (usually
the seed). Also the presence of an occurrence value is
desired at the input line, not at the non-input line.
The DEL function allows the presence of an occurrence
value, at the input line, to be determined without revolving
a given line ~usually the seed) clear back from its non-input
line to its input line.
The given line (usually a seed) is represented at its
.
non-input line by a line value signal and a line number signal.
.
The OUTPUT MODULE utilizes the same hardware and method
described for the regular output and finds the difference
between the values of the line number signal and the
width of the iso-entropicgram. The DELTA MODULE then
determines the integral powers of 2 of the difference
beginning with the largest. The largest integral power
of 2 is saved and the line value signal is revolved by
the number of lines specified by the remaining integral
power ~or powers) of 2 to form a revolved line value signal
to determine if the occurrence value identified by the test
signal is present. The revolved signal is examined and

.
information as to the presence of an occurrence value, equal

to the line value, is exclusive OR'd with information as to
the presence of an occurrence value which is displaced from
. .
- 247 - -


. . .

7767

the one uncler test ~y the value of the saved signal. If
either occurrence value exists in the revolved sign~1 then
the actual occurrence value under test exists at the input
line. The chec]cing and exclusive OR is performed by forming
an absolute coded value representing each actual occurrence
value of the revolved line value signal, from largest to
smallest, until one is found that is equal to or less than
the value of the test occurrence value. If equality exists,
a signal is stored in a flip flop representing a 1. Other-

wise a 0 is stored. The test occurrence value is thendecreased by the largest component power of 2 signal which
has been saved. The absolute coded values representing
the actual occurrence values of the revolved line are
then continued to be formed beginning with the next one in
order until one is found whose value is equal to or less
than the decreased test occurrence value. If equality exists
the 1 or 0 signal previously stored in a flip flop is
complemented. Otherwise the previously stored 1 or 0
signal is left unaltered. If the result of the last -
complement is a 1, the actual occurrence value under test
exists at this input line. If the result is a 0, the
actual occurrence value under test does not exist in the
input line.

: .
B. Components
Figs. 28-31 show a schematic and block diagram of the
OUTPUT MODULE. Included are registers OHW, ORl, ORTl, OLINE,
OR2, ORSN, ORT2, ORT3, OLN and OAR, all 8 bit or 8 flip flop
registers of type SN7410Q described hereinabove with re-


spect to the ENCODE MODULE. The only exception as to size



- 248 -



. j ,

1127767

is register OAR wllich contain~ 2 bits or ~lip flops o~ storaye.
A150 included are selection circuits DS3, DS6 and DS7.
These are convent.ional selection circuits of the type and
operating in the manner discussed hereinabove in section I.F.
CONVENTIONS AND COMPONENTS USED IN FIGURES.
Also included are switches 810 and 812. The switches
810 and 812 are conventional mechanical switches or other
circuits which.form a 2 hit coded signal at the respective
switch output representing a hinary coded 1 and 3, respectively.
Also included are flip flops DELOP, SS, SW, and Pl-P10.
Flip flops Pl-P10 are a part of the control counter 813 for the
OUTPUT MODULE. The flip flops are of the same type and have
the same characteristics as that described hereinabove in
section I.F.
The OUTPUT MODULE includes an arithmetic unit ALU of the
same type disclosed hereinabove with respect to section I-B.
~he OUTPUT MODULE also has an AND gate 8a2, an exclusive
OR gate 804, and a conventional OR gate 805. The exclusive OR
gate 804 is of the type wherein a true signal is formed at its
output whenever a true signal i5 formed at either one, but not ~:
at hoth, of its two input~ simultaneously.
The OUTPUT MODULE contains a generalized clock control 700. : .:
The generalized clock control i5 described in detail hereinabove .~
in sect;on X. GENERALIZED CLOCK CONTROL. ~: .
5imilar to the ENCODE MODULE, the OUTPUT MODULE also has
gating which i5 depicted hy logical equation for controlling
various input circui.ts and output circuits of the OUTPUT MODULE.
Included among the logic gates is a clock suspension logic 822
for controlling the suspension of the clock formed by the clock
3~ control 7Q0.
:

~ 249 ~
. ~. .

` ` ~1;~7767

Tlle input and output control lln~s and the inEormation
inputs and outputs of the OUTPUT MODULE are depicted along the
right hand side of Figs. 3~ and 31.
Table 17 at the end of the specification lists the various
register~ and flip flops and gives the general purpose of each
in the OUTPUT MODULE.



C. Detai-led Description
Reference should primarily ~e made in the following dis-

cussion to the OUTPUT MODULE schematic and block diagram of Figs.28-31 and the flow of Fig. 32. Consider now a detailed descrip-
tion of the OUTPUT MODULE during its "regular output" operation.
The f~regular outputl' operation of the OUTPUT MODULE is the ~-
retrieval or decompaction operation which is to revolve any line
of an iso-entropicgram, preferably the seed, back to the 0 or
input line.
Initially, a control signal is formed at the MINIT output
of the MINI COMPUTER/ thereby causing the following to be reset
to 0: flip flops DELOP, OPSW and P1-P10. The MINI COMPUTER then
loads MEMORY MODULE area 1 with the line value of the seed which
is to be revolved back to its iso-entropicgram input line (or 0 -~
line) and the IPRF is loaded as follows:
LNl with the length of the line value of the seed;
BW with the width of the iso-entropicgram for the
~5 seed;
LINE # with the line number of the line value for the
seed ~ -~
Also, flip flop DELOP of the DMP INTERFACE is set to 0 to
indicate a "regular output". If set to 1, DELOP indicates a -~

DEL function.

.: ,
- 250 -
-'"" ',
X " ~

l~Z7767

Sinc~ flip flop DELOP in the DPM INTERFACE MODULE i9 in a
0 state, a false signal is ormed at the SET DELOP output and
therefore flip flop DELOP in the OVTPUT MODULE remains in a 0
state. E`lip flop DELOP being in a 0 state indicates a "regular
output" operation. It will be noted that the generalized clock
control circuit 700 has its input IP connected to output MINIT
and is responsive to the true signal at MINIT for forming a true
signal at the MR output which, in turn, resets the flip flops
Pl-PlQ to 0.
Within the OUTPUT MODULE, the true signal at Pl causes the
ORSN register to ~e cléared to a. The true signal at the CLK
output causes the logic Pl.CLK to become true which causes the
register OLINE to store the LINE NO (see line number from IPRF~. - -
Subsequently, the true signal at the CLK output causes the logic
Pl.CLK to ~ecome true which, in turn, causes the following~
in the OUTPUT MODULE, register OHW stores the iso-entropicgram
width from HW of the IPRF; and a true signal at the output OMl;
also, register ORT3 stores the length of the line value of the -
change vector, if one exists, from LN2 of the IPRF. It should
~e noted that the length of reference line from LN2 is only of
interest during the DEL operator function which will be discussed
in more detail hereinafter.
The true signal at the OMl output causes the registers
MLNl and MLN2 of DECODE I and II MODULES to store the length
of the line value for the seed from LNl of the IPRF and causes
registers EBL and ETL and EIR to store the value from BL and
TL and IR from the IPRF.
OB3-OB6 of the OUTPUT MODULE flow revolves the line value
in MEMORY MODULE area l through its corresponding
3~
"'.'

- 251 - ~

. . .
X

7767


iso-entropicgram to its input or n line. The reYolve is
done in two steps to help implement the D~L unction and for
clipping, which will be explained in more detail a~ter
completing the description of the "regular output" function.
The number of lines through which the line value must be
revolved to reach the input line is the difference between
the iso-entropicgram width in OHW and the line number of the
line value in OLINE. This value is computed during OB3. -
Using the DELTA MODULE, the largest component power of 2 --
la of th~t difference i~ determined and stored in register
ORSN during OB5 and the remaining component powers of 2 ~ -~
are represented by the value left in DELI of the DELTA MODULE. ~
It w~ e recalled that the number of lines equal to all ~ -
component powers of 2 must be revolved before the input line
will ~e reached. However, again to help implement the DEL
function, the OUTPUT MODULE first causes the REVOLVE MODULE ~
to revolve the line value through the remaining lines to be -
revolved designated by the value remaining in DELI of the
DELTA MODULE (OB6) and later OB8 revolves the revolved line
value through lines equal to the largest component power of 2.
Return now to the actual operation.
OB3-OB6 of the OUTPUT MODULE flow is used for revo~ving
the line value in MEMORY MODULE area 1 toward the input line
of its iso-entropicgram and to determine the largest component
power of 2 for storage in the register ORSN for use during
the DEL function. OB2 of the OUTPUT MODULE flow is used to - -
check the content of register OLINE to see if it is 0. -
Register OLINE contains the line number for the line value
stored in the MEMORY MODULE. If the line number is 0, it is
3Q not necessary to revolve the line value since it is already

- 252 -

~ .
.~.*. ,,

1~2'776~

at l:he input row. Ilence, OB3-OB6 can be skipped. ~rherefore~
if the content o~ OLINE is 0, a true signal is formed at the
output OLo o~ the OLINE register. Also, the DEL function
is not being performed and flip flop DELOP is in state 0
.
and a signal is formed at output DELOP. The logic Pl.OLo.DELOP
becomes true and the following pulse at CLK resets flip flop
P2 to 0 and sets flip flop P-10 to 1, causing OB7 of the
OUTPUT MODULE flow to ~e entered, thereby skipping the
revolve steps of OB3-OB6.
a However, return to OB2 and assume that the line value
is not at Q and hence register OLINE does not contain a
line num~er of a and OLo i5 true. The true signal at CLK is
formed while a true signal is formed at the Pl output.
A true signal is formed at the OLo output of register OLINE
(there~y indicating that its contents are 0) and the logic
Pl.OLo is true and the pulse at CLK resets the Pl flip flop
to 0 and sets the P2 flip flop to 1.
At this point, the OUTPUT MODULE forms a true signal at
the P2 output and OB3 of the OUTPUT MODULE flow is entered.
As mentioned, OB3-OB6 are used to partially revolve the line
value of the seed toward the 0 or input line OL its iso-
entropicgram. During OB3, the difference between the seed
line number contained in register OLINE and the iso-entropicgram -
width contained in register OHW is computed. This difference
is the actual number of lines by which the seed's line value
contained in MEMORY MODULE area 1 must be revolved in order
to get its input line. Thus, in the OUTPUT MODULE, the true
signal at the P2 output causes selection circuits DS4 and DS5
to couple the content~of registers OHW and OLINE to the ALU
3Q and causes a true signal at the S input of ALU. The ALU

_ 253 ~

.... .
~ .'. . . .

~llZ77ti7

1 orms a si.~nal at its or output, representing the difference
betwe~n the iso-entropicgram width and the seed line number con-
tained in registers OH~ and OLINE. The true signal at P2 also
causes the DS6 selection circuit to couple the difference
5 signal from the OP output of ALU through to its.output. :.
The true signal at the P2 output also causes a true signal -
at the OM2 output of the OUTPUT MODULE. The true signal at
OM2 causes the output from the DS6 selection circuit to be
coupled in the DELTA MODULE through the DELS selection ~-
10 circuit to the DELI register. The true signal at CLK causes `.:
true signals to be formed at the OM3 and OM4 outputs of ~he :`
OUTPUT MODULE. The true signal at the OM4 output causes the
DELI register to store the difference value from selection .~.. -
circuit DS6 of the OUTPUT MODULE into its shift register 302. . :-
15 The true signal at OM3 calls the DELTA MODULE by triggering : ~.
the DELGO multi-vibrator. The DELTA MODULE then computes .-
the highest component power of 2 of the difference value `~`
~OHW - OLINE) and forms it in its register DELO in the manner ..~ ..
described for the DELTA MODULE.
Before the DELTA MODULE completes its operation it forms . .
a true signal at the DELMEND output. The true signal at the
P2 output, together with true signals at the DELMEND and CLK ~ :
: outputs cause the logic P2.DELMEND.CLK to become true in the . :`
clock suspension logic 822. This causes the CS input to the :`
clock control 700 to become true and thereby suspend the
: : pulses at the CLK and CLK outputs. The DELTA MODULE ` -
continues, as described hereinabove, to determine the largest ~ .
~: component power of 2 of the difference value stored in the
DELI register, and when this is complete,. control is returned`
3 back to the OUT~UT MODULE.
~ .
,'`~'''
. -254~
'`':'


'T.' ,. ~ .;

llZ7767
When the D~LTA MODULE ha~ finished, control is returned
back to the OUTPUT MODULE by the DELTA MODULE by orminy a
true signal at the DELMEND output, thereby forming a false
signal at the DELMEND output. The false signal at the
DELMEND output causes the clock suspension logic 822 to form
a false signal at the CS input to the clock control 700 which,
in turn, causes clock pulses to be formed at the CLK and
CLK outputs. The first pulse at CLK causes the flip flop P2
to be reset to 0 and causes flip flop P3 to be set to a 1 state. -

At this point, OB5 of the OUTPUT MODULE flow is entered,
output P3 being true. The true signal at P3 causes register
ORSN to store the largest component power of 2 from register
DELO in the DELTA MODULE. OB6 of the OUTPUT MODULE flow is
now entered. After all component powers of 2 are formed,

a true signal is formed at the output DELEND of the DELTA
MODULE. The true signal formed at the DELEND output of the
DELTA MODULE and the P3 output of flip flop P3 (OUTPUT MODULE)
sets the DD flip flop in the OUTPUT MODULE to a 1 state.
The logic P3.DELEND is true, causing a true signal at the

OM5 output which, in turn, triggers the REVGO one-shot in
the REVOLVE MODULE, causing the REVOLVE MODULE to revolve
the value line contained in MEMORY MODULE area 1 through
the number of lines of its iso-entropicgram specified by ;
the remaining lines to be revolved signal contained in the

DELI register of the DELTA MODULE after computing the largest -
component power of 2. As diRCUsSSed above, the remaining line~
to be revolved can be represented by the following:
isoentropicgram width (HW) - line number (OLINE) = largest

component power of 2 (ORSN). During the operation of the

REVOLVE MODULE, the true condition of logic P3.REVEND.DD



~ - 255 -


... . .
.. . .

~'77~7

1 cause-; the cloc~ susp~nsion logic 822 to form a true
signal at the CS input of the clock control, thereby
causin~ the cloc]; control to disable further pulses at
the CLK and CLK output. Finally, when the REVOLVE MODULE
finishes its operation (i.e., revolved the line value through
a number of lines equal to HW-OLINE-ORSN), the REVOLVE
MODULE forms a false signal at the REVEND output, thereby -~
causing the logic P3.REVEND.DD




/ ;~
' / '''''`;;',',




~3

:`. '~:,
. I -256-

` ~lZ7767


of the clock suspension logic 822 to become false and enable
clock pulses at CLK and CLIC. Additionally, the logic P3.DELOP
is true, thereby setting flip flop Pl0 to a true state and
resetting flip flop P3 to a 0 state at the following pulse
at CLK.
At this point, true signals are formed at the Pl0 output
and OB8 of the OUTPUT MODULE flow is entered. The true signal
at P10 causes the OPSW flip flop to be set to a 1 state to
indicate that clipping may take place, if required, in the
ENCODE MODULE. Clipping may only take place during the
production of the original occurrence vector and at no other
time, otherwise errors may result during the revolve operation.
During the true signals at P10 and CLK, true signals
are formed-by the logic Pl0, (Pl + P10) CLK, P10.CLK, causing --~
true signals at the outputs OM2, OM4, OM5 of the OUTPUT
MODULE. The true signal at P10 causes the selection circuit
DS6 to couple the largest component power of 2 from register
ORSN to register DELI in the DELTA MODULE. The true signal
at OM5 calls the REVOLVE MODULE which, in turn, revolves
the revolved line value contained in the MEMORY MODULE down
the remaining number of lines specified by the largest
component power of 2 stored in DELI of the DELTA MODULE.
The true condition of logic Pl0.CLK.RE~END causes
clock suspension logic to disable clock pulses at the CLK
and CLK outputs of clock oontrol 700. When the REVOLV~
MODULE completes its operation, the signal at REVEND goes
false and alock suspension logic 822 again causes clock control
700 to form pulses at CLK and CLK. One of the flip flops S31
~ .
and S33 in the SWITCH MATRIX is true, indicating the MEMORY


MODULE area containing the revolved line value and the selection
. ~
257


. . . .

767

circuit DS7 co~tples the coded signal from the corresponding
switch to the information input of register O~R. The true
condition o the logic P10.REVEND causes the register OAR
to store the signal so that it will identify the MEMORY
MODULE area containing the revolved line value. The revolved
llne value is now the input line of the iso-entropicgram.
Note that the MLN3 register of the ENCODE MODULE now
contains the length of the revolved line value. The true ~
condition of logic P10.REVEND also causes register OL~ to - -`
store the length of the revolved line value from register ~-
MLN3 of the ENCODE MODULE.
The true condition of logic P10.REVEND also causes a `
true signal at the MT input of clock control 700 which in ; -
turn causes a true pulse at output OUTEND and at M7, thereby
signalling an end of the OUTPUT MODULE operation and terminating
further pulses at CLK and CLK and resetting control~:
counter 813 to 0.
With the detailed description of the "regular output"
operation for the OUTPUT MODULE in mind, consider now the
DEL function.
As discussed above, the DEL function is to check for
the presence of an occurrence value in the input line using
one of the non-input lines of the iso-entropicgram. The `
sequence of operation re~uired for the DEL function is
briefly set forth under section XI-A above.
Additionally, the MINI COMPUTER loads the MEMORY MODULE
area 1 with the line value of the seed tnon-input line) and
loads MEMORY MODULE area 2 with the change vector. The
change vector is in hybrid coded form and represents one
or aplurality of occurrence values, each of which identifies
' '"`.

- 258 -

~lZ7767

an occurl^ence value in the input line for the seed which
is to be checked for presence. In other words, i~ the
change vector represents occurrence values 2, 6 and 8,
each one of occurrence values 2, 6 and 8 in the input line
for the seed is to be checked for presence. The DEL function
allows this checking operation to be performed without
revolving the non-input line value of the seed back to the
input line of the iso-entropicgram.
In addition, the IPRF is loaded as follows: -
LN2 with the length of the line value of the
change vector;
LNl with the length of the line value of the seed;
HW with the width of the iso-entropicgram -
for the seed;
LINE# with the line number of the line value for
the seed.
Also flip flops DELOP of the DPM INTERFACE MODULE is set
to 1 to indicate a DEL function operation. This causes a
true signal at the SET DELOP output of the DPM INTERFACE
MODULE thereby setting the DELOP flip flop to a 1 state,
indicating that the DEL function is to be performed.
The operation of the OUTPUT MODULE is then called by
the MINI COMPUTER by forming a true signal at the OUTGO, I
thereby triggering the clock control 700, causing it to ``
reset the control counter 813 and start forming pulses at
the CLK and CLX outputs. The operation during OBl through
OB6 of the OUTPUT MODULE flow is identiaal to that described
hereinabove with respect to the "regular output" operation and
will not be repeated.




~ - 259 -


X ' . ~ :

1127767

~ ssume now that the opcration of the OUTPUT MODULE
during the D~L function has progressed through 0~6 of the
OUTPUT MODULE flow similar to that described above. At
this point the following has taken place: the di.fference
between the iso-entropicgram width (O~W) and the line number
(OLINE) has been computed and sent to DELI in the DELTA
MODULE; the largest component power of 2 of this difference
has been determined by the DELTA MODULE and the result has - ~-
been stored in register ORSN of the OUTPUT MODULE; the :
REVOLVE MODULE has revolved the line value of the seed down
a number of lines in its iso-entropicgram where the number ;
of lines is equal to the remaining number of lines after
the largest component power of 2 (e.g. OHW - OLINE - ORSN).
In other words, the original seed line value has now been
revolved through its iso-entropicgram until it is within a
number of lines from the input line which equals the
largest component power of 2 contained in ORSN. ~ ~ .
However, in contrast to the operation during the regular l: -
output, the operation during the DEL function has flip flop 1-
DELOP in a l state and therefore, during OB7, when a true
signal is formed at the P3 output of flip flop P3 of the
control counter 813, the logic P3.DELOP is true and the ~
following pulse at CLK resets flip flop P3 to O and sets l ~ :
flip flop P4 to a 1 state.
The MINI COMPUTER forms a true signal at output OUTGO
which causes a true signal at the IN input of the clock control
700. Subsequently, pulses are formed at the CLK and CLK
outputs of the clock control 700. l -
The outputs Pl-P10 are now in a O state, causing the -
:: . :
30 logic Pl + P2 + PlO to be true. The following pulse




- 260 -


.:
,.

"` ~lZ77~;7

at CLIC sets flip flop Pl to a 1 ~tate, thereby forminy a
true signal at the Pl output. Block OBl of the OUTPUT
MODULE flow is now entered. During OBl, the ENCODE, DECODE I
and II and DELTA MODULES and the SWITCH MATRIX are initialized ,
S thereby gating information to the proper registers. To this
end, the true signal at the Pl output causes the OUTPUT
MODULE to form a true signal at the output OMl6. The true
signal at the output OM16 causes the following action in the
DECODE I and II MODULES: gates 218 and 220 of DECODE I and
a data selector DDSl of DECODE II couple the length value
from LN2 of IPRF to registers MLNl and MLN2, respectively;
in the ENCODE MODULE BL (bottom limit) and TL (top limit)
from IPRF are coupled through their respective data selectors
to the input of registers EBL and ETL. .
. 15 The logic Pl.CLK becomes true, causing a true signal
at output OMl which in turn initializes the DELTA MODULE
by setting DELFST. A true signal at Pl also initializes
the SWITCH MATRIX.
OB9 of the OUTPUT MODULE flow is now entered and a .
true signal is formed at the P4 output, which in turn causes
true signals at the following OUTPUT MODULE output circuits:
OM6, OM8, OM21. The true signal at the OM6 output causes
an inhibit signal from inverter 1444 in the SWITC~ MATRIX
while a clock signal is formed at the OM7 output of the -
OUTPUT MODULE. The reason for the-inhibit signal will be
explained in detail in connection with the SWITCH MATRIX.
However, in general terms the current revolved line value
is now stored in either area 1 or area 3 of the MEMORY MODULE
and must now be read by the DECODE I MODULE during the ;
subsequent operation by the OUTPUT MODULE. Also the SWITCH

.
- 261 -
~ '.

-
1127767

1 M~TRIX remains set so that tlle D~CODE II MODUL~ re-reads

the chan~ vector from M~MORY MODULE area 2 and the ENCODE
MODUL~ writes into the other one of areas 1 and 3 where
the revolved line value is not stored. Accordingly, the
inhibit signal prevents the setting of the SWITCH MATRIX
from being changed for the DECODE II MODULE but permits a
change in setting for the DECO~E I and ENCODE MODULES
during the subsequent clock at the OM7 output of the
OUTPUT MODULE,
Thie true signal at the OM21 and OM8 outputs initializes
thc DECODE I and II MODULES by setting the DlFST and D2FST
flip flops therein to 1 states. Additional~y, the true
signal at P4 sets the OPSW flip flop to a ~ state, thereby
indicating that the clipping function may pow be performed

lS by the ENCODE MODULE and causes the register ORT2 to store
the length value from register MLNl in the DECODE I MODULE
into reg~ster ORT2 of the OUTPUT MODULE. Register MLNl in
the DECODE I MODULE now contains the length of the revolved
line value and this value must now be saved in register

ORT2 to eniable a re-read of this line value.
The following pulse at the CLK output causes flip flop
P4 to be reset to 0 and flip flop P5 to be set to a 1 state,
thereby causing OB10 of the OUTPUT MODULE flow to be entered.
During OB10, a true ~ignal is formed at the P5 output

of the control counter 813. The true signal at the PS output
causes true signals at the OM10 output of the OUTPUT MODULE.

The true signal at the OM10 output causes flip flop S22 in
the SWITCH MATRIX to be set to a 1 state, thereby indicating
that the DECODE II MODULE is to read frQm MEMORY MODULE area 2
` 3 (where the change vector is stored) and causes a selcction



-262-

77~7

circ:uit in th~ DECODE II MODULE to enable the length o~
the line value for the change vector contained in register
CFT3 to be coupled through to the information input of
register MLN2 in the DECODE II MODULE.
The following pulse a~ the CLK output causes the
logic P5.CLK to become true and true signals are formed
at the OMll and OM20 outputs of the OUTPUT MODULE. The
true signal at the OMll output calls the DECODE II MODULE
by setting its D2GO one-shot multi-vibrator and causes
the register MLN2 in the DECODE II MODULE to store the
length of reference line from register ORT3.
The true signal at P5 also causes OBll of the OUTPUT
MODULE flow to be entered. It is during this block that
the DECODE II MODULE is called, thereby causing the first
occurrence value from the change vPctor to be provided.
The logic P5.D2END.CLK forms a true signal at the CS
input of the clock suspension logic 822, thereby causing
the clock control 700 to suspend further clock pulses. `
After the DECODE II MODULE has finished its operation of
reading and decoding the first occurrence value from the -
change vector, the true signal at the D2END output of the
DECODE II MODUL~ goes false, causing the clock suspension
logic 822 to remove its signal from the CS input of the
clock control 700, thereby enabling clock pulses to again
be formed at the CLK and CLK outputs.
If, during the operation of the DECODE II ~ODULE, it
was found that the last occurrence value from the change vector
had previously been read and that no additional occurrence
values could be provided, the DECODE II MODULE sets its EOE2
flip flop to a 1 state, thereby causing a true signal at the

- 263 -

.~ : " '.

: l~Z77~7

EOF2 output. The true signal at P5 causes the flip flop P6
to be set to a l state and flip flop P5 is reset to a 0 state
at the following pulse at CLK and OB27 is entered.
During OB27 of the OUTPUT MODULE flow, the true signal
at the P6 output, together with true signals at the EOF2 and
CLX cutputs causes the logic P6.EOF2.CLK to become true,
thereby forming a true signal at the OM15 output which in -
turn causes the ENGO one-shot to be set, thereby calling
the operation of the ENCODE MODULE. In addition, the logic
P6.EOF2 is true, forming a true signal at the OMl8 output,
thereby causing the ELAST flip flop in the ENCODE MODULE
to be set to a l state indicating that this is the last call
on the ENCODE MODULE and that the last entry from the input
line, if any, is to be written out into a MEMORY MODULE area
in hybrid coded form. To be explained in more detail the ~
values so written out are in hybrid coded form and represent -
the occurrence values, identified by the change vector, which ` - ~"
... ,.:: .
are present at the input line of the seed.
Continuing with the operation, the true signal at the P6
output causes the flip flop P7 to be set to a 1 state and
flip flop P6 is reset to a 0 state at the following pulse at
CLK, causing OB29 to be entered. ~ -
During OB29 of the OUTPUT MODULE flow, registers OAR
and OLN contain values identifying the MEMORY MODULE area
containing final output and the length of this area and
the OUTPUT MODULE is exited.
However, consider now the operation assuming that the
last occurrence value from the reference line has not been
read and that the signal at the EOF2 output is true and
consider the operation following OBll after the DECODE II




- 264 -

llZ7767

MODULE has bee~ called to provide the next occurrence value
from the change vector,
The true signal at the P5 output at the CLK following
the clock suspension causes flip flop P6 to be set to a 1
state and flip flop P5 to be reset to a 0 state, thereby
causing OB12 to be entered.
The true signal at the P6 output causes the selection
circuit DS3 to couple the occurrence value (from the change
vector) in the DO2 register of the DECODE II MODULB to the
information input of the OR2 register, and causes the -
register OR2 to store the occurrence value. Additionally,
the true signal at P6 causes the ORTl register to store
the same occurrence value into register ORT1.
The true signal at the P6 output also causes the
flip flop SS to be set to a 1 state and the flip flop SW
to be reset to a 0 state. Flip flop SS is set to a 1 state
and will subsequently be reset to 0 to indicate that the
first pass through OB18 and OB20 is about to be undertaken. , -
To be explained, the ne~t time through OB18 and OB20, flip
flop SS will be in a 1 state. The flip flop SW is used to
indicate if an occurrence value, corresponding in value to
the occurrence value from the change vector, is present at
the input line corresponding to the revolved line. As
previously explained, an occurrence value is present at the
input line if the revolved line value in the MEMORY MODULE,
being read by the DECODE I MODULE, has an occurrence value
equal either to the occurrence value from the change vector
or equal to the occurrence value from the change vector minus
the largest component power of 2 in the register ORSN. In
actual operation, the flip flop SW is used to exclusive OR




- 265 -

~lZ7767

the presence of an occurrence value in the revolved line
value equal to the occurrence value from the change vector
with the presence of an occurrence value in the revolved line
~hich is equal to the same change vector occurrence value
less the largest component power of 2. In order to cause
the flip flop SW to perform its exclusive ORing function,
it is initially set to a 0 state and, to be explained in
more detail, the flip flop SW will end up in a 1 state
if the exclusive OR results in a true condition, whereas
it ends up in a 0 state if the exclusive OR is a false
condition.
OB13 of the OUTPUT MODULE flow is now entered. The
true signals at the P6 output and the EOF2 output (the -
latter indicates that the DECODE II MODULE has not reached
the end, or last occurrence value, of the change vector)
and the true signal at the CLK output causes the logic ; :
P6.EOF2.CLK to become true, thereby forming a true signal
at the OM12 output. The true signal at the OM12 output of
the OUTPUT MODULE causes the DlGO one-shot in the DECODE I
MODULE to be set, thereby calling the operation of the
DECODE I MODULE, causing it to read the first occurrence
value from the revolved line value. The logic P6.DlMEND.CLK
is true, thereby causing the clock suspension logic 822 to
disable the clock control thereby suspending further pulses
at the CLK and CLX outputs. When the DECODE 1 MODULE has
provided the occurrence value from the revolved line value,
a false signal is formed at the DlMEND output from the
DECODE I MODULE, thereby causing the logic P6.DlMEND.CLK
to become false, thereby causing the clock suspension logic -
3~ to enable the clock control 700 to commence forming pulses




- 266 -

~ ' .

767


at the CIIK and CLIC outputs. Assume that the DECODE I MODULE
has not reached the end of the revolved line value and hence
a true signal is not formed at the EOFl output and a true
signal is formed at the EOFl output. The true siynal at
the P6 output causes flip flop P7 to be set to a 1 state
and P6 is reset to a 0 state at the following pulse at CLK, 1 ;
thereby causing OB14 of the OUTPUT MODULE flow to be entered.
During OB14, a true signal is formed at the P7.CLK
output of the control counter 813 which causes the register
ORl to form at its output the occurrence value which was
read from the revolved line value by the DECODE I MODULE.
When the signal at P7 is removed, the register ORl will
retain and store the value, which is a characteristic of
the register.
OB15 of the OUTPUT MODULE flow is entered. During OB15, 1-
the true signal is still formed at the P7 output. The true
signal at the P7 output causes the selection circuits DS4
and DS5 to couple (1) the line value occurrence value from
register ORl, and (2) the test occurrence value (from the
reference vector) from register OR2 to the inputs of the 1-
ALU. Initially, the true signal at the P7 output causes l~
the compare (C) input of the ALU to be activated, thereby ~ -
causing the ALU to compare the two input values. It should
be noted that three possible conditions may result from the
compare. These possible conditions are as follows: (1)
ORl = OR2; (2) OEl ~ OR2; and ~3) ORl C O~s. It will be
recalled from the theoretical discussion that the revolved
line value of the delta is to be aligned so that its rightmost
or largest occurrence value, contained in ORl, is aligned
with the rightmost oocurrence value in the line of the iso-
,
~ - 267 -
.. ..

~r` .

`-` ~ 11~7767


entropicgram to which it is applied. If the rightmost
occ~rrence valu~ i9 equal to the test occurrence value, the
contents of OR1 = OR2 at this point, and the two lines are
aligned and the state ~0) of flip flop SW is exclusive OR'd
with 1 and therefore is set to a 1 state. Thus, if the
ALU forms a true signal at the E output, one input to the
AND gate 802 is true. Additionally, at this point, output -:
EOFl from the DECODE I MODULE is false. Hence, a true signal
is ~ormed by the logic P7.EOFl at the other input, causing
AND gate 802 to-form a true output. The flip flop SW forms
a false signal at the SW output and hence the exclusive OR
gate 804 forms a true signal at the upper side input of
flip flop SW. Additionally, since the ALU forms a true
signal at the E output, the OR gate 805 forms a true
signal at the LE output. Therefore, the logic P7. (LE + EOFl).CLK -
~is true and the exclusiue ORing flip flop SW is set to a 1
state corresponding to the true input from exclusive OR -
gate 804.
Assume a non-aligned condition where the occurrence
value (from the revolved line) contained in ORl is greater
than (~ ) the test occurrence value contained in register
OR2. The ALU will form a true signal at the G output but
will not form a true signal in either the L or E output.
The gate 805 will therefore form a false signal at the LE ~`
output, causing the logic P7.(LE + EOFl) .CLX to be false
and flip flop SW will remain unchanged. Additionally,
if OR V OR2, a decision cannot be made and values must be
read from the revolved input line until a decision can be :~
made, i.e. OR1C OR2. Accordingly, the logic P7.EOFl.G


will be true and hence flip flop P7 will be reset to a 1 state,
:':.:. -


- 268 -

:.


i~Z7767

cau~;ing 0~13, OBl~ and OB15 o~ the OUTPUT MODULE ~low
to be re-cntered where the DECODE I MODULE provldes the
next lower occurrence value from the revolved line value.
It should be noted that ~he DECODE I MODULE provides the
occurrence values from the revolved line value in
decreasing value order. Accordingly, the DECODE I
MODULE will be moving through the revolved line value
in a direction toward the smaller values to bring the line
value into alignment with the larger occurrence value
contained in the OR2 register.
Assume that during PB15 the third condition is found
where the occurrence value from the line value in OR1 is
less than (~) the test occurrence value (from the reference
line) contained in OR2. Under these conditions, the
occurrence value from the line value is less than (C) the
occurrence value from the reference line contained in OR2
and hence lies to the left of the position under test.
This means that it is no longer necessary to look for the test
occurrence value because the revolved line value does not l-~
contain the occurrence value. Therefore, the occurrence
value in the revolved line value which is to the left of the
one under test (OR2) by the number of occurrence value
specified by the largest component power of 2 contained in
register ORSN is next to be checked for presence. This is
done by incrementally decrementing the value in register OR2
by the value in register ORSN and by causing the DECODE I
MODULE to continue providing the occurrence values in the
revolved line value in sequence.
To this end, OB16 of the OUTPUT MODULE flow is entered.
The second time through the status of flip flop SW is not
. ".

- 269 -



, , .. - ~ :' . :

Z7767


known but it is to remain unchanged. Therefore, its state
is XOR'd with 0. To this end, the output E from the ALU
is false and the gate 802 ~orms a ~alse input to the OR
gate 804 causing the exclusive OR gate in turn to apply a
false signal at the upper left side of the flip flop SW.
Hence, during OBl6, the exclusive OR flip flop remains
unchanged. Following OB30, or following OBl6, a true signal
is formed at the P7 and LE outputs. This causes the logic
P7.(LE + EOFl) to become true and the following pulse at CLR
resets flip flop P7 to a false state and sets the flip flop
P8 to a l state, thereby causing OBl7 to be entered.
The true signal at the P8 output causes OBl7 to be
entered. The leading edge of the true pulse at P8 triggers
the SS flip flop from a l to a 0 state. OB18 is now entered
where the state of the SS flip flop is checked. Since the
SS flip flop is now in a 0 state indicating that this is ,:
the first pass through OB18 et seq., fo~ the particular
test occurrence value from the reference line contained in
OR2, OB24 and OB25 of the OU$PUT MODULE flow are entered.
During OB24 and OB25, the test occurrence value in
register OR2 is modified to a test occurrence value which
is to the left of the test occurrence by the number of
occurrence values specified by the value in ORSN. In other
words, it is necessary to form a test occurrence value signal
which identifies the next occurrence value in the line o the ;
delta iso-entropicgram which corresponds to the largest
component power of 2 in register ORSN.
Considering the above operation in more detail, the l-
true signal at the P8 output causes the selection circuits -
DS4 and DS5 to couple the test occurrence value from register

- 270 -
` ' , .

~Z77~7

OR2 through to the left input of th~ ~LU and couple the
largest component power of 2 from register ORSN to the right
hand input of the ALU. The true signal at P8 also causes
the ALU to subtract the content of ORSN from OR2 and form
5 a difference value signal at its output OP. If the result
is greater than or equal to 0, which is the usual case, the
resultant difference signal has not resulted in a value which
is to the left of or off the end of the iso-entropicgram.
To be explained in more detail, should the difference signal
have resulted in a value which is less than 0 (OR2C 0),
a position off the end of or to the left of the iso-
entropicgram would result and OBl9 would be entered.
Assume that the difference is equal to or greater than 0
(OR2~ 0). The true signal at the P8 output causes flip flop
15 P9 to be set to a 1 state and flip flop P8 to be reset to 0
at the following CLK, thereby causing OB20 to be entered.
The true signal at the P8 output causes the difference ~ -
signal formed at the output of ALU to be coupled through the
DS3 selection circuit back to the input of register OR2 and ^~
20 the true condition of logic P8.SS.C~R causes register OR2 to
store the difference value. Thus, OR2 now contains the orginal
test occurrence value decreased by the largest component power
of 2 contained in register ORSN. , -
During OB20, true signals are formed at the P9 and SS
25 outputs (i.e. flip flop SS i9 in a 0 state), thereby causing
OB26 to be entered.
If during OB26 the content of register OR2 is equal to or
greater than (~ ) 0, meaning that it is still within the
wldth of the iso-entropicgram, then it is necessary to l -
re-enter OB14 et se~. where the new test occurrence value




- 271 -

_ ~Z7~67


contain~d ill register OR2 is compared against the occurrence
value from the revolved line value stored in ORl, to detcrmine
whether they are equal. To this end, a true siynal i9 formed
at the OR20 output o~ the OR2 register, indicating that the
5 OR2 register is not 0 and the logic P9.SS.OR20 becomes true
and the following pulse at CLX triggers the P7 flip flop to
a l state and resets the P9 flip flop to a false state,
thereby causing OB14 of the OUTPUT MODULE flow to be entered.
During OB14/ a true signal at the P7.CLK output again
causes the register ORl to store the next occurrence value
from the revolved line value which is still stored in
register DOl of the DECODE I MODULE.
During OBl5, register ORl contains the occurrence value
from the revolved line value and register OR2 contains the
test occurrence value. As discussed above, should the -
values contained in ORl and OR2 be equal, OB30 is entered.
If flip flop SW is now in a 1 state, the AND gate 802 and
the exclusive OR gate 804 will apply a true signal to the
exclusive ORing flip flop SW, causing it to change to a ~
state. A 0 state of the SW flip flop at this point indicates
that the revolved line value contains occurrence values
equal to those designated by both the test occurrence value
from the reference line and the calculated occurrence value -
which the ORSN positions to the left. This indicates that
an occurrence value equal to the test oc¢urrence value from
the reference line is not present in the input line of the
iso-entropicgram for the seed. If, on the other hand, the
comparison during OB15 reveals that the occurrence value -
from the revolved line value contained in ORl is greater than ~`
~ ) the value contained in register OR2, the OUTPUT MODULE, -;`-

. ~
- 272 - -

~ -' . .
' -- :-

77~7

throu~h the D~CODE I MODUL~, has not ~et reached the
position in the revolved line value corresponding to
that now specified by register OR2, Accordingly, OB13
is again entered where the DECODE I MODULE is again called,
causing the next occurrence value from the revolved line
value to be provided and during OB14, stored in register ORl.
It will be noted that OB13 is re-entered with flop flop P7
in a true state, the logic P7.EOFl.G causing flip flop P7
to be reset at the pulse at CLX.
This operation continues causing occurrence value
after occurrence value in the revolved line value to be ;
provided by the DECODE I MODULE until one is stored in ORl
which is equal to or less than the computed test occurrence
value stored in register OR2. If an equality is found,
then OB30 is entered where, as discussed above, the
exclusive OR flip flop is complemented. If an entry is
stored in register ORl that is less than the value in
register OR2 before an equality is detected, OB16 of the
OUTPUT MODULE flow is entered where the SW flip flop remains
in its previous state. The 0 state of the SW flip flop then
indicates that the occurrence value under test is not
present at the original input line. If SW flip flop is in a
1 state, the occurrence value under test is present.
If during OB15 it is found that the content of ORl is
equal to (E) or less then (L) that of register OR2, the
OR gate 805 orms a control signal at the LE output.
The true signal at the LE output causes the logic P7.(LE + EOPl)
to become true and flip flop P8 is set to a 1 state and
flip flop P7 is reset to a 0 state at the following pulse at ~-
CLK as described above. ---

.:
,,

. ".


~z~767


0~17 is now entercd for ~he second time. The true signal
at the P8 output causes the SS flip flop to be reset rom a
0 to a l state, thereby indicating that this is the second
pass through OBl8 et seq. The 1 state of the SS flip flop
and the true signal at the SS output causes OB19 to he
entered where the state of the SW flip flop is checked.
If the SW flip flop is in a l state, OB22 is entered.
During OB22, the true signal at the P8 output causes the
OMl3 output of the OUTPUT MODULE to be true and thereby ~-~
enable the appropriate circuits in the ENCODE MODULE in
preparation for causing the ENCODE MODULE to write out the -
occurrence value contained in ORTl. The test occurrance
value from the reference is still in register ORTl where
it was stored during OBl2. -
During OB23, true signals are formed at the SS and SW -
outputs and the following pulses at CLK causes the logic
P8.SS.SW.CLK to become true which in turn forms a true
signal at the OMl4 output, thereby calling the ENCODE MODULE.
The true dignal at the P8 output causes the flip flop ; -
P9 to be set to a l state and flip flop P8 is reset to a 0 ~
state at the following pulse at CLK and OB20 is entered. -
Assuming that the flip flop SS is in a l state, a true
signal is now formed by the logic P9.SS causing the output `
circuits OMl7 and OM21 from the OUTPUT MODULE to be true. ; --
The true signal at the OMl7 output is applied to the
DECODE~ I MODULE, aausing its MLNl counter to be set to the
value contained in register ORT2 in the OUTPUT MODULE. ~
(DlFST causes MARl to be reset on the first call to~-
DECODE I). It will be recalled that ORT2 contains the length ~
of the revolved line value. Additionally, the - :




- 274 - ~
,

7767

true si~nal at the OM21 output sets the DlFST ~lip 10p
in the D~COD~ I MODULE. Thus, the DECODE I MODULE has now
been set so that its next call will cause it to again start
reading the beginning of the revolved line value to use for
a further test occurrence value from the reference line.
OBll of the OUTPUT MODULE flow is now re-entered and
the true signal at the P9.SS.CLK logic causes a true signal
at the OMll output. The true signal at the OMll output
causes the DECODE II MODULE to again be called, this time
reading out the next test occurrence value from the reference -
line designating the next occurrence value in the input line
of the iso-entropicgram to be tested (if any). The value
is stored in registers ORTl and OR2 during OBl2 as discussed -
above for the first test occurrence value from the reference
line.
The sequence of operation discussed above is then
repeated to determine whether there is an actual occurrence
value in the input line of the iso-entropicgram specified
by the test value contained in registers ORTl and OR2.
If so, the occurrence value is encoded by the ENCODE MODULE
and stored in the MEMORY MODULE. This operation continues
until the last test occurrence value of the reference line
has been read by the DECODE II MODULE and processed.
After this occurs, the operation of the OUTPUT MODULE
returns from OB21 to OBll at which time it is found that
the EOF2 flip flop in the DECODE II MODULE is in a l state,
indicating that the last test occurrence value from the `
reference line has been read. A true signal is now formed
at the EOF2 output causing OB27 and OB28 to be entered
where the true signal at P6 causes the ENCODE MODULE to




- 275 -

~ ' . .

'' ~Z77~7``


1 be called for the last time and th~ lsst encoded vslue,
if any, is stored in the MEMORY MODULE,

D. ExamPle of OPeration r~
The following i5 an example o~ the "regular output"
operation of the OUlPUT MODULE, using the example of Table
4-B, Symbolic notation i8 used to indlcate the sequence
of operation.
The line value of the ~eed is a~sumed to be in MEMDRY
10 MDDULE area 1 and in hybrid code iY a~ follow3: :
10000111~ occurrence values 7, 6, 3, 2, O, -~
010110015 physical length - 2 :-
The following is stored iD the IPRF: : :
- LINE - 7 Jeed line number;
HW - 16 iso-entropicgram widths
LNl ~ 2 phy~cal longth of ~eed line value;
TL - 16 top clipping limit; - ;:
. BL - O bottom clipping limlt;
IR - O interval value; `;~ -.
2 DELOP - O DEL funct~on n~t reque~ted. :~ -
8equence of control OBl-OB8: -
OBl OPSW - O turn off cllpping f/f;
ORSN - O cl-ar; ~ -
OHW - HW-16 iso-entropicgram wldth;
O~INE~LINE
- 7 ~--d line number;
: . .082 OLINE f O
:, go to OB3
OB3 DELI(9?~OHM(16) ---
-OLINE ~7) DELI contain~ the number of line~ ~eed line
value must be revolved to get original input;
. . ..

-27~- ~

" llZ7767


t)~l call DELT~ MODULE DELTA MODUL~ generates highest
D~O = 8 component power of 2 in 9 which
is 8 and DELI contains the
remainder of 1 upon return;
OB5 ORSN = DELO = 8 save the result in ORSN;
OB6 call REVOLVE revolve the seed line value down
the number of lines remaining
in DELI, in this case, generate
line 8;
OB7 DELOP = 0
,-, go to OB8
OB8 DELI = ORSN = 8 turn on the clipping;
call REVOLVE function and revolve down ORSN
OPSW = 1 (8~ llnes; -
OB9 O~R = output area which contains the event's
original occurrence vector; :
OLN = 3 the length of this area
HALT. ~ .

The following is an example of the DEL operation of ::
,' . the OUTPUT MODULE using the example of Table 4-B. Symbolic i ' .~:~
notation is again used to indicate the sequence of operation. ~ ^-
The content of IPRF is as follows: -




. ,~ ~ . . .. .

:
: ~ - 277 - :
:: :'
': :

/~

~ 1 27 7 6 7


1 LINE - 7
HW - 16
TL ~ 16
BL -- O
S IR ' O
LNl ~ 2 ~--
LN2 - 4 phy~ical length of reference line ;-.
DELOP - 1 to ind~cate the DEL function.
MEMORY MODULE area 2 contains the following hybrid coded
repre~entation of seed line value: :
10000111 ~ occurrence values 7, 6, 3, 2, O, : ::
010l1001 ~ phy~ical length ~ 2;
MEMORY ~DDUL~. area 1 contains the following hybr~d coded
representation of the reference line:
' 15 10001100
0001000 . . , , ., ,, ~,.".
, 10000011
10000000 test occurrence value~ 12, 8, 3, 0 : ` -
Intermediate seed line result line 8 of i~o-entropicgram
~rable 4-B):
10001000 ~ .'' '
01101010 ~ occurrence value~ 8, 6, 4, 2, 1, 0 :
¦ 000001 ) l ngth - 3;


. .,;
.': . ' ',-'.
. . :".
.~
. . .. .
. ' . , ' ....
... . ",:'''.
-278-

( ~
l:lZ7767


1 Sequence of control:


OBl-OB6 same as for example of regular output given above,
At this point, line 8 of the iso-entropicgram has
been generated.
OB7 l)ELOP - 1 .. OB9
OB9 iDitlalize DECODE I, II and ENCODE M~DULES;
. ~J?ST - DZFST = 1
ORT2 --MLN1 - 3
OB10 Set S22 iD SWIT~H ~ATRIX; aQsure DECODE II reads from
proper area; : :
MI~2~r0RT3 - 4 length of reference li~e; - :
OBIl call DECODE II read a column index; .
lS D02 - 12 EOFl - O ~co be checked;
'. SS - 1 SW - O ' - ' '
. . 0B12 OR2 - ORTl - 12 save the ~alue read; ~ :
OB13 call DEC4DE I read a value from llne 8 of the
DO~. - 8 EOFl ' 0 i80'-eDtropiCgram;
20 OB14 ORl - 8 save it;
OB15 ORl(8)~ OR2(12) ~
go to OB16 . ~ti~ulat- XOR;
OB16 SW,(O) ~ SW,tO) ~OR 6
OB17 SS ~ O
:U OB18 SS - O . 8 to OB24
OB24 OR2(4) ~ OR2(12) - ORSN~8) - .
next position to be checked;
. .
. . ''' :.
~ ~ . . ~ ,, " ~ .
'. . ., . ~ .',.
. -279- `

llZ7767 j ?
. ' ', ,.

1 OB25 OR2(4) > O.'. go to OB20
OB20 SS - O :.go to OB26
OB26 OR2(4) ~ O ., go to OB14
OB14 ORl - DOl - 8
OB15 ORl(8) ~ OR2(4).-. go to OB13
OB13 call DECODE I
DOl - 6 EOFl - O
OB14 ORl - DO1 - 6
OB15 ORl(6) > OR2(4) :,go to OB13 - --
10 OB13 call DECODE I
DOl - 4 EOFl - O ~ `~
OB14 oRl ~ DOl - 4 . . . .:
OB15 ORl - OR2 - 4 .go to OB30 ~ -
. OB30 SW(l) - SW(0) ~ 1
lS OB17 SS - 1
. OB18 SS - 1 :. go to OBl9
. OBl9. SW - 1 :.go to OB22 .
OB22 EI(12) - ORTl(12) wrlte out the t-~t occurrence
~ ~5
20 OB23 call ENCODE -;
0820 SS - 1 :.go to OB21
OB21 MINl - 3 r~80t the DECoDE I MoDULE;
DlFST - 1
OBll ¢~11 DECoDE II
D02 - a EOF2 - O . :.
OB12 SW - O SS - 1 ~
OR2 - ORTl - 8 :
- ' ' ~.
., ' ' , ,:'',
a ' ' .:
, ,. ' ' '
.. -280- -
. , . , ; ''.
~ ,. ", ~

c~
~2`7767


1 OB13 ~et DECODE I
DOl - 8 EOFl - O
OB14 ORl - DOl ~ 8
OB15 ORl(8) - OR2(8).-. go to OB30
5 OB30 SW(l) - sw(d) ~ 1
OB17 SS ~ O
OB18 SS - 0, go to OB24 ~`
OB24 OR2(0) - OR2(8) - ORSN(8) ~
OB25 OR2 - O :, go to OB20 ~;
10 OB20 SS ~ O :. go to OB26 ;
OB26 OR2 - O :, go to OB14
OB14 0~1 - 8
OB15 oRi(8) ~ OR2(0) :, go to OB13
OB13 DECoDE I
DOI ~ 6 EOFl - O
OB14 ORl - DOl - 6
OB15 0Rl(6) ~ OR2(0) :,go to OB13
OB13 call DECODE I
DOl - 4 EOFl - O
20 OB14 ORl - DOl - 4
OB15 ORl(4) ~ Oa2(0) , go to OBl3
OB13 cali DECoDE I
DOl - 2 EOFl - O
OB14 oRl - DOl - 2
OBlS OR1(2) ~ OR2~0) .', go to OB13
OB13 call DECODE I
. DOl - 1 EoFl - O -
. ' ,~
,, . , ' ' ' ' ' ' ' '
~ 3a . - -~, ~
. , ~.
-281-

~.~Z7767

1 OB14 ORl ~ DOl - 1
OB15 QRl ~ OR2 .'. go to OB13
OB13 call DECODE I
DOl ~ 0 EOFl - 0
5 OB14 ORl - DOl - O
OB15 ORl - OR2 .'.go to OB30
OB30 SW(0) ~ SW(l)
OB17 SS ~
OB18 SS - 1 :, go to OBl9
OB19 SW - 0:. go to OB20 8 does not appear as an
OB20 SS ~ 1 :. go to OB21 oc~urrence in input line . --
OB21 MLNl - ORT2 - 3 reset decode to glve~ point;
. DlFST - 1 -
OBll c811 DECODE II
lS D02 - 3 EOF2 - O
: OB12 SS - 1 SW - O
OR2 - ORTl - 3
OB13 call DECODE I -
. DOl - 8 EOFl ~ O
20 OB14 oRl - DOl - 8
OB15 ORl(8) ~ OR2(3) .go to OB13
OBl~ - OB14 - OB15 ~ loop repeat8 untll th~ 2 ~
. sead from th~ ~Jo--ntropicgram
. . ~ne number 8s ~:
. ~2S OB14 oRl - DOl - 2
081S oR1(2) ~ 0R2~3) . go to OB16
. . .. --: .
: . . ' ' ' ' '
- ' . , ' ' " ' ' .
~ 3a
. . . .
. ' ,
-282-

1~7767

1 OB16 SW(O) ~ SW(O) 0 p
OB17 SS - O
OB18 SS - O .'.go to OB24
OB24 Oa2(-5) - OR2~3) - ORSN(8) if OR2 19 negativo, then
5 OB25 OR2(-5) ~ O :. go to OBl9 we need not oonsider
OBl9 SW - O .'. go to OB20 further;
OB20 SS - O .', go to OB26
OB26 OR2(-5) < O :,go to OB21'
OB21 MLNl - ORT2 ~ 3
10 OBll call DECODE II
Do2 - O EOF2 - O
OB12 SS - 1 SW - O
OR2 - ORTl - O
OB13 call DECoDE I
lS DOl ~ 8 EOFl - O ~
OB14 ORl - DOl - 8 ~-
OB15 ~R1(8) ~ oR2(0).-. go to 0813
OB13-OB14-OB~5 tho DECaDE I loop rapeat 8 until the
~ value i8 read
20 OB14 ORl - DOl - O
OB15 oRl(O) - oR2(0) :. 8 to OB30 ~ -
OB30 SW(l) - SW~O) e i
0817 SS - O - --
OB18 S8 ~ O :, go to OB24 -
OB24 OR2~-8) - oR2(0) - oRSN(a)
OB2S OR2~-8) ~ O :.~o to OBl9

: - ' . ' , ' , ' '~", ".
'~' . ' ' ' "'~
` ~a
; . '
-283-
' . , ' ~., '

(~
llZ7767

l OBl9 SW ~ l :.go to OB22
OB22 EI - ORTl -.0
OB23 call the ENCODE MODULE
OB20 SS - O :. go to OB26
S OB26 OR2(-8) ~ 0:- go to OB21
OB21 MLNl - ORT2 - 3 reset DECODE I;
DlFST - l
OBll call DECODE II - ;
DO2 - O EOF2 - 1 .'.go to OB27 ~-
10 OB27 set ELAST -.
OB28 call ENCODE
OB29 oAR - output area written by ENCODE
OLN - length of th~s area
HALT
. ~5 otrrPuT aAR _ , .
OLN as descrlbed above ~

actual output 10001100 12 ::
. . 10000000 0 ~.
The ~08~ occurrence values stored in the ~EMORY MODULE
20 output area 1, in hybrid code, are now a8 follow~: :

. 10001100 (oaou~rence values of 12) --
10000001 (occurrence value of 0)
Thl~ indicates that of tost occurronc- valuos 12, 8, 3 and 0,

2~ ln th r-feronc- lln , only 12 and 0 appoared ln tho orlglnal
lnput lin- of tho l-o-ontroplcgram.
. , ~ ' , ' :

. .'

~. -284-

. ~Z7767 f


1 X1V. DATA CO~ACTION AND RETRIEV~L MACHDNE
It will be recognized from the foregoing description of
the SEED MODULE and OUTPUT MODULE in con~unction with the
REVOLVE, DELIA, ENCODE, DECODE I and II MODULES depicted in
S Fig. 34, that a data compaction and retrieval machine has
been disclosed. The data compaction retrieval system forms
a sub-part of the overall DPM SYSTEM. The data compaction
and retrieval system has several features. Specifically,
the OUTPUT MODULE in con~unction with the ENCoDE, DECODE I,
10 DECCDE II, REV~LVE and DELTA MNDULES, forms an output
machine which retrieves compacted information that has
been retrieved ineo iso-entropicgram form of representation. ~-
Specifically, an electronic data processing systemis disclosed for retrieving a desired coded signal from a
representat~on in the form of a line value signal, a
line numSer signal and a length signal. The line value
signal represents a line of an i~o-entrop~cgram, eliminatlng ~-
leading zeros. The line number designates the line in
the iso-entropicgr~m for the line value Jignal. The
length ~ignal 13 equal to the width of the iso-entropicgram
which in turn is equal to the length of the line valuo signal
without excluding leading zeros. So as not to confuse the
length with the storage space, the length signal would
be ~qual to the total number of po~sible occurrence values
2S in the 11ne of the ~so-entropicgram which in turn is equal
to the largest possible occurrance value in a line of the
1so-entropicgram~ The data processing system in~ludes
a memory, ~uch as the MEMDRY MODULE, for storing the line
; value sig~al. Mean~ such as the OLDNE register of the
3~ OUTPUT MDDULE ~tores the line number signal. Means such as
I
-2~5-
.'"', 'i ' ., :,' "~ ,"' ~

l~Z7767

1 the OHW register of the OUTPUT MCDULE stores the length
signal. Means such as the ALU of the OUTPUT MODULE forms
a difference signal corresponding to the difference in
values represented by the ~tored line number signal and
the stored length signal. Means such as the REVGLVER,
discussed hereinabove, responds to the provided line Yalu~ signal
and a provited number signal for forming any one of a set of
equivalent signals. The set includes the line value signal.
Each equivalent signal within a set is unique and i8
related to another one by an exclusive OR of the values
thereof, and the values thereof relative shifted. The
formed equivalent slgnal represents the desired coded
signal. Means such as the DECODE I and II M~DULES
proviaes a line value slgnal to the means for forming a
equivalent signal which corresponds in value to that stored
in the memory means. Means suoh as the DELTA ~ODULE provides
to the means for forming an equivalent signal i number value
signal corresponding in value to that of the difference signal. ~-
The ENOODE M~DULE prov~des signals from the memory
means ~MEMDRY NODULE) to the equivalent signal formlng
means QKEVO~E~). The means for providing a number valu~
signal, i.e., tho DEITA M~DULE, comprises meanJ for forming
as the number value signal one or more signals representativ-
of ~ compon~nt powers of 2 of the difference Jignal.~
Pr~ferably, the equivalent signal formlng moans, i.e.,
the REVOL~ER, includes means such as the ALU REVOLVE MODULE
for comblning the provided number ~ignals with the provided
line value s~gnal to form a further signal which corresponds
to th- shifted signal.formed by tbe REVOLVER. Additionally,
the ALU and aJ~ociated logic ~Eorm.a mean~ for combining the
. ', .~ `.
. -286-

-~
11;~7767


1 line value signal and the further signal to form the
equivalent signal. Pre~erably, the line value signal
has on~ or more actual occurrence value signals out of a
group of possible occurrence value signals. The pos~ible
S and actual occurrence value 8ignal~ are arranged in aD
~ncremRntal, preferably increasing incremental, value order.
With such a signal representation the mean~ for forming
an equivalent signal includes means such a~ the ALU of
the REVOLVE MODULE for combining the value repre~ented
lO by the provided number value signal with each of the ~-
value~ represented by the occurrence value signals
of tbe line value to form a further signal, and the ALU
and associated control and logic of the XEVDLVE MDDULE
form a means for exclus1ve ORing the value~ represented
lS by the provided line value signal and the further signal
to fo~m the equivalent signal.
It will be recalled that in the REVOLVER the means
for exclusive ORlng involves the ALU control and logic of
the REVDLVE M~DULE for sorting the occurrence value signal~
represented by the provided line value signal and the
further signal into an incremental value order.
Additionally, those occurrence value signal~ which are
qual are deleted. Th- ALU control unit and a~sociated
logic of tho REVOLVE MODULE sort the values representing
thQ further~ignal and the ocourreno~ valu~ signals from
the provided line value signal to form a series of
~occurrence value signals arranged incrementally ~n the
order of the values thereof. Dur~ng the psoce~s of
~orting, those occussence value signal~ which are outside
of the width of the iso-entropicgrsm, ~.e., not among the -~
possible occurrence values, are eliminated. `-
.....
-287-

2~767


1 As indicated above, the SEED MODULE ~nd OUTPUT MODULE
in association with the other modules of Fig. 34 orm a data
compaction and retrieval system. The data compaction and
retrieval system is actually an electronic data processing
system for both compacting a coded signal and for
retrieving a compacted ~ignal. Included in this system
is a memory means such as the MEMORY MODULE for storing
and making available coded 8igaal8 for compaction and
retrieval. Means such as the REV~LVER of Fig. 19 respond to a
10 codedsignal and a provided number signal for forming any ` --
one of a ~et of equivslent signals~ The ~et includes
the coded signal. Each equivalent signal within a set is
unique and related to another one by an exclusive OR of
~he values t~ereof and $he values thereof relat~ve shifted.

Decode means such a~ the DEOODE I and II MDDULES decodes
a co~ed ~ignal for eompaction or a coded signal for
retrieval from the memory means from a first eode to a
second expanded code for the means for forming equivalent
signals. In this connection it will be recalled that the
DECODE MODULES deeode oeeurrenee vectors from hybrid eode
to the expanded absolute coded form represent~ng
oeeurrene~ values. Eneode mean~, such as the ENCODE M~DULE,
eneodes the equivalent signal from the second eode to
the f~rst eode for storage ~n the memory means. Means

~ueh a~ the SEED MODULE 1~ respons~ve to at least a portion
of the deeoded signal for eompaetlon for ~orming a total
Dumber value signal whieh represents a quantity of the
equivalent ~ignals. In this connection the larger of
the largest and next large~t oecurrence value differenees
stored in the register Tl designate~ the total number of

.~ . ' ' , . ' ' ' ' '
-288-

(~

llZ7767

1 lines by which a revolv~ is to be taken.
Means such as the OLINE register of the OUTPUT MODULE
stores a line number s~gnal sssociated with a coded signal
for retrieval. Means such as the OHW regi~ter of the
S OUTPUT MODULE stores a length signal assoclated wi~h the
stored line number signal. The OUTPUT MODULE forms a means
for forming a different ~ignal representing the difference
in values of the stored line number signal and the stored
length ~ignal. Means ~uch as the DELTA MODULE provides the
number signal to the equivalent signal forming means ~REVDL~ER).
Specifically, the DELTA M~DULE forms a means which is
responsive to either the total numbor value signal, for a
compaction, or the difference signal, for a retrieval,
for forming, corresponding thereto, the number signal.
In this connection the number signal is one or more signal~ -
representing the component powe~s of 2 of the total num~er
valuo signaI or the difference signal.
Preferably, the compaction and e~pansion provided
by the DECODE I and II and ENCODE M~DUIES are provided in
the system. ~owever, thls further compaction would not
be essential within the broader concepts of the pre~ent
invention. In thl~ connectlon then the DECODE I and II
and ENCODE MODULES form, ~roadly, a mean~ for providin~ cod~d
~lgnal~ corre~ponding to tho~- available from tho m~mory
21 m~ans and corresponding to those from th- mean~ for forming
oquivalent signals to the other.
Th~ OUTPUT MODUiE in con~unction with the REVOLVE, -
DEOODE I and II, REVO~VER, DE~TA and ENCODE MODULES, provide
the DEL funct~on described above. The DEL function allow~
a test to be mad- to determino whether an actual ocourrence
' . '
~
-289- ~

( ~:) ( J
-~
~Z~67

1 value is present in an input line of an iso-entropicgram given
one of the non-input lines. Broadly, the steps include the
steps o~ forming a line representing the non-input line.
The formed line signal represents one or more actual occurrence
values of the possible occurrence values making up each line of
an iso-entropicgram. This step corresponds to OB6 of the
OUTPUT MODUhE flow. During 0~5 of the OUTPUT MODULE flow
a length signal i~ formed representing the number of lines of -
displacement in the iso-entrop~cgram between the non-input
1 line and the input line. A test signal is formed during
OB12 representing the value of an absolute occurrence value
in the input line to be checked for presence. The test signal
corresponds to an occurrence value in a test vector.
During OB~4 the value- represented by the te~t signal
1 and the length signal are combined to form a further test ~ignal
identifying a further occurrence ~alue for tast. ~his ~_ep
corresponds to forming a further one of the occurrence values
in one of the lines of the inverted DEL ~Table 9-C).
During~OB15 in the first pass, the value of the test
signal is compared with the values of the formed line signal
for equality, i.e., a predetermined relation. During OB15
in the second pass the value of the further test signal is
compared with the values of the formed line signal for
oquality, also a predetermined relation. A prodetormined
2 signal ls formed during OBl9 by causing the flip flop SW to
be in ~ 1 state responsive to the results of both of the~e
'tests of comparing. When the 8W flip flop is in a 1 state
following both comparison~, the occurrence value specified
by the test signal is present in the input line. Due to

3C the exclusive OR gating to the input of the SW flip flop

-290-

~ llZ7767


1 detection of equality in one step of comparing and the
detection of inequality in the other step of compar~ng
is required for the flip flop SW to end up in a 1 ~tate
and thereby indicate the presence of the occurrence value
at the input line. If both tests produce equality or
inequality, the SW flip flop ends up in a O state, thereby -
indicating the lack of the presence of the occurrence value
in the input line.
In terms of the system, involving the DEL function, an
electronic data processing system is di~closed for checking for
the presence of an actual occurrence value out of a ~eries of
possible occurrence values arranged in an incremental value
order. The checking is for the presence of the actual
occurrence value in the input value line of the iso-
lS entropicgram utilizing one of the non-input lines of the same
iso-entropicgram. There is di~closed memory means such as
the MEMORY MODULE for ~toring a line value signal representat~ve ;
of a non-input line. Means such as the OLINE register stores
a line number signal corresponding to the stored line value
~0 signal. Means such as the OHW register store~ a length -
signal. Means such as the A~U of the OUTPUT MODULE forms a
difference signal corresponding to the difference in values
represented by the stored line number signa? and the stored
length ~ignal. Means such as the REVOLVER respond~ to a
provided line value ~ignal and a provided number signal for
forming any one of a sQt of equivalent signals. The set
includes the line value signal. Each coded signal within a
s-t is unique and related to another one by an exclusive OR
of the value~ thereof and the value~ thereof relative shifted.
3C . ' ' ' , ' .`'
.:~, ' .' ' ,.
-291- ~-

(~

~127767

1 Means such as the DELTA MODULE respondg to the difference
s~gnal for forming a first signal representing the largest
component power of 2 of the difference and for forming a
second signal representing the remaining component power of 2
of the difference. Means such as the ORSN register in the
OUTPUT MOD~LE stores the largest component power of 2 signal.
The DELTA MODULE provides the remaining component power of 2
signal and the line value signal to the means for forming an
equivalent signal ~EVO~VER) thereby causing an equivalent
signal to be formed. Means such as the ORTl register forms
a means for storing a test ~ignal representing the value
of the absolute occurrence value in the input line to be
checked for presence. Means such as the ALU of the OUTPUT
MODULE forms a means for combining the values represented by
' 1 the test signal and the length signal to form a further test
signal identlfying a further occurrence value for test.
Means such a~ the A~U of the OUTPUT MODULE compares the value -,
¦ of the test ~ignal with the value of the formed equivalent
signal for a predetermined relation. The ALU and the
a~sociated timing and logic additionally forms a means
for comparing the value of the further te~t ~ignal with the ~ '
v~lue~ of the fonmed equivalent signal for a predetermined
r-lation,. Nean~ ~uch a- the SW flip flop i~ operative
¦ during OBl9 ~nd re~pon~ive to the re~u$ts of both of the
predetermined relation- to ther~by indicate the pre~ence
of an actual occurrence value in the input line corresponding
to the test signal.

' , , ~ ' .
30 I . ' :'.
. . , , ' .
I -292- ' -

(~
-~

~ 7~67

1 XV PIPE MODULE
_-
A. General Description
The general purpose of the PIPE MODULE is to help in
the process of locating requests for data out of a large mass
of data provided in the data base. The data base disclosed
herein is arranged, by way of example only, into paragraphs,
each of which in turn contains sentence~, each of which in turn
contains words, each of which in turn contains characters. The
request may be a word, a phrase, a sentence, or a paragraph.
If a request is always in the data base exactly, it is
no problem to retrieve the requested information from the
data base. The inexactness between the request and the
data base may come about because of mis~pe}ling of words, ~- -
transposing of words, or may be caused ~ust by a lack of
15 knowledge by the requestor a~ to the exact wording in the
data base. For example, the request word ~SITN may be a
misspelled word such as "THIS~. Problems arise where there
i~ an inexact relation between the request and the data base. -- -
The PIPE MODULE and the BRIGHTNESS MODULE cooperate in
20 locating those requests which are exactly or inexactly
contained in the data bas-.
The purpose of the PIPE MODULE then is to deter~ine
whether the request is located in the data base exactly ~r
inexactly. To lo¢ate inoxa¢t requests from the data base, tho
2S PIPE MODU~E requests or determine~ which entries ~occurrences)
in the data base oould be uf3ed for further ~election criteria ~ -
employed by the BRIGHTNESS MODULE. Thus, the PIPE NODULE ;~-
selects those entries in the data base which would be candidates --
for processing by the BRIGHTNESS MODULE. These candidates
are then used by the BRIGHTNESS ~ODULE to select the best
possible candidate for the request. ~-~

-293- ~

~127767

1 ~efore considering the theory of the PIPE MODULE, the
following terminology should be carefully noted. An
"event" is composed of primitive elements which lie between
two ~delimiters". For example, in the letter layer 0 of
Table 1, the events are letters. "Event time", also called
~possible occurrence positionn, identifies a possible relative
position or value in a data base for an event or delimiter
occurrence value. An "event occurrence vector" represents
event occurrence values, each of which identifies the event
time at which an event has occurred. An "entry" is a series
of primitive elements, i.e., letters which lie between two
delimiters which identify the beginning of two successive
entries. For example, in the letter layer 0 an entry such
as ~T~IS~ is a word composed of a series of letters between
the two delimiters positioned at event times 0 and 5.
Considering the theory of the PIPE MODULE in more detail,
the PIPE MODULE employs a selection criteri~ for indicating
to the requestor those possible entries in the dsta b~se
which might be a response to a re~uest. Two selection
criteria are employed by the PIPE MODULE and are as follows.
The fir~t selection criteria is a ~pipe width~ (PW).
Tho pipe width 1s an offset value which identifies how far
to the right or to the~left ~ahove or below) each particùlar
possible occurrence value an actual occurrence value may lie
for purposes o~ the piplng function. Those whlch fall
vithln + the ~pipe width~ ~PW) are called ~hits~.
.
,.

a
. '.''~.
~ . -294- ` ~
,...

, ~

(-~' f`
~Z~767


1 The second criteria is the relationship of the length
of the request ~LN~Q)'to the number of hits within each
entry in the data base. The second criteria is important
in determining a meaningful number of hits in a data base
entry before the entry should be considered as a
candidate for the BRIGHTNESS MODULE function~ The
relationship between the length of the request ~LNRQ)
and the number of hits is determined by a "threshholdn
. value which represents the minimum number of hits before -
.10 a data base entry is con~idered by the BRIGHTNESS MODULE
for processing.




3a ,/ - - - , ...
'.'' .' ' ,
-295-

~277f~7


1 The importance of the ~econd criteria becomes evident
by considering the following example. Assume the data base
contains the word "THIS" and the request word i9 "BIG". It
i5 apparent that the I in BIG lies at a position within -
1 of the position of the I in THIS. Bowever, it i~ quite
apparent that one would not select the word THIS to be
sent to the BRIGHTNESS MODULE since there are four entries
in the word THIS and only one hit. -'
The rest of the theory of the PIPE MODULE is best
understood by reference to an actual example. Assume the
data base depicted,in Table 1. Also assume a reque t ~ '
' occurrence vector THIS. The first step is to pull out the
event occurrence vectors for the events T~IS from the data
base of Table 1. Table 18 sets out the decimal values of the
event occurrence values for each of the events THIS. Table 18
also shows the event occurrence vectors for THIS lifted out
from the data base of Table 1 in columnar notation. Table 18 on
the right ~ide show~ the actual occurr-nce values, in decimal form,,
of the event occurrence values in each event. The f~rst step
is to find out whether the reguest is in the data base
exactly or inexactly. To this end, ~bias~ values are
~ssigned to the event occurrence vectors identified by a
request. Incre~sing valued bias values are assigned -
to the event occurronce vectors starting wlth the numbor 0.
For example, in the reguo~t word THIS, the event
occurrence vectors for the events T R I S are ,~
~e-pectively a signed b~as values 0, 1, 2 and 3. The bias
values are then ubtFacted from event occurrence values in

`30 . ~ .. '
.~ . ' . "
-29~- ,,

~Z77~7

the corresponding event occurrence vector. The results are
"biased event occurrence values".
Table 19, in columnar notation,depicts each event ccc~rrenoe
value in the data base of Table 18, decreased by its bias value.
Thus, the bias value for the event "t" is 0 and the correspond-
ing event occurrence values remain unchanged. The bias value
for the event "h" is 1 and the corresponding event occurrence
values are decreased by 1 or moved left one place. The bias
value for the event "i" is 2 and the corresponding event
occurrence values are decreased by 2 or moved left two places.
The bias value for the event "s" is 3 and the corresponding
event occurrence values are decreased by 3 or shifted left
three places. -
It will now be apparent with reference to Table 19 that
each of the event occurrence values between the delimiters for -
event time 0 and 5 will be shifted so that they line up at event
time 1. This then gives four hits in event time 1 which is :
exactly the length of the request word "this". Therefore, -~
, . -.':
an exact entry exists in the data base for the request word :-
"this". It should also be noted that the biased occurrence -
values for the word "this" in the datà base are all lined up
at event time 1 which is just one event time away from the
delimiter in event time 0 and are therefore associated with ~
the beginning delimiter at event time 0. The resultant biased -
event occurrence values are depicted at the right of Table 19 ;~-
in decimal form. -
Consider now another example where there is an inexact
match between the request and the data base. Assume that the
request is the word "SIT". First, the event occurrence vectors
for the delimiter and the events S, I and T are pulled out of the

:
- 297 -
~' ' -.
:,

~i ~)
~27~67


1 data base of Table 1 as depicted in Table 20. The right hand
side of Table 20 depicts, in decimal form, the event occurrence
values in the event occurrence vectors for the events S I T.
Next, the bias values 0, 1, and 2 are assigned for the events
5 S I T and the bias values are subtracted from each of the -
occurrences in the corresponding event occurrence vectors.
Thus, the bias value for the event S is 0 and the corresponding
event occurrence values remain unchanged. The bias value
for the event I is 1, and the corresponding event occurrence
values are decreased or shifted to the left by 1 and the bias
value 2 for the next event is 2 and the corresponding event
occurrence values are decreased or shifted to the left by 2.
The resultant biased event occurrence values are depicted -~
in decimal form on the right side of Table 21.
With respect to the event T, it should be noted that the
circled occurrences were bia~ed or shifted below the beginning
delimiter for their entry. It is necessary to tag or ~omehow
identify each event occurrence ~alue which is shifted past
th corresponding beginning delimiter and hence no longer
represents the entry in which it origlnally appeared.
It is now necesRary to sati~fy the second criteria, that -
i8 ~ to rel~te th~ length of the request (LNRQ) to the number of
hlts in the data ba~e. Thi- 1- accompli~hod by as~umlng a
~total pipe ~idth" of twice the ~pipe width~ (PW) and
25 associating the center of the ~total pipe width~ with the ;
rightmost event time in the entry under consideration; counting
the number of hits within the ~total pipe width~; retaining
the number of hit_; and mGving onto the lower event times to
the left, one by one, and for each event time, counting the
number of hit_ within the ~total pipe widthn.
:` ..
-~98-

f'~

li27~7

1 Using the biased event occurrence values of Tables 21 and
28, the first test is made on the biased event occurrence
values appearing between event times 10 and 15. The test is
depicted in Table 22. It is assumed that the "pipe width"
(PW) is 1, and hence the "total pipe width" is 2. Thus, the
test starts with event time 14 and the possible biased event
occurrence values between + 1 of 14 are checked. It will be
noted that there is a biased event occurrence value at event
time 13 for the event S, hence there is a hit value of 1 for
event time 14. Event time 13 is then tested. Thus, in effect,
the ~total p$pe width" is slid one place to the left so that -
it is now centered on event time 13. Again, the number of hits
within the ~total pipe width~ are computed. There is a hit -
for the event S at 13 and a hit for the event T at 12 and ;
15 hence the number of hit~ for event time 13 is 2. This same `
process 1s repeated for event ~imes 12 and 11, resulting in
hits of 2 and i for event times 12 and 11. :-
For simplicity, if two pipe center~ are found with the
. .....
same number of hits, the first one encountered is selected as
2 the center. Thus, with reference to the lower part of Table
22, event time 13 is selected as the one with the largest
number of hit~. To be explained in more detail, these values
are sent to tho BRIGHTNESS MO~ULE for processing.
~vent time 10, containing a delimiter, is ~klpped, and
2 event time 9 is next selected as the next plpe center.
Referring to Tables 1 and 23, it will be ~een that this
portion of the data base deals with the word ~a~ and there
are no hits for the request S I T.
Referring to Tables 1 and 24, the pipe center i8 next
slid over the delimiter 8 and tests are performed at event
' '. '',"','~:

. 299

1~7~67


1 t.~mes 7 and 6. Two hits are found for the center at event
time 6, whereas only 1 is found at event time 7. Event tlme
5 i8 skipped over and event times 4, 3, 2 and 1 are elected as
centers. It will be noted that for the center at event time 3,
2 hit~ are again found. It should also be noted that for each
of the tests depicted in Tables 22-25, the occurrence value in
the ending delimiter had no effect on the rightmost pipe test.
The reason for this will become elear when considering the
operation of the PIPE MODULE. The three entries for the word~ :
"test", "isN and "this" are then passed to the BRIGHTNESS
MODULE whieh makes a decision a~ to whieh is the best hit
for the request S I T. Before considering the operation of
the BRIGHTNESS MODULE, eonsider in more detail precisely how
. the PIPE MODULE earries out the foregoing operation. .. .
Within the concepts of the present invention, it is ~ ~.
possible to form a mcdule that operates in parallel and looks
.. v rtieally down aeross eaeh entry in a data base array such
a~ that in Table 1. The diselosed ~mhodiment of the present ~.
invention involves a PIPE MODULE which does not look down
20 vertically across each entry but 1nstead looks at the entries
~erially by occurrence value and entry. To this end, the
PIPE MODULE is arranged to keep traek of the left shifted or
biased event oeeurrenee values. This i~ accomplished by
atoring in the PIPE/BRIGHTNESS MEMORY, ~P/B MEMORY) eàeh
different biased oecurrenee value and a ~hit eount~ equal to
the number of times the biased event oeeurrence value occurs.
In other words, in subtraeting the bias value from each event
oecurrence value in the same event oeeurrenee veetor, the same ~.
biased occurrenc~ value may occur more than once. By ~toring
3~ each different biased event occurrence value and its hit count,

: -300-

~27767


1 it is E~os~.ible to )ccep tr.~ck o tlle number of times it ha~
occurred simply ~y ur~L~in~ the hit count by 1 wh~ncver a further
one is encount~red.
Referxing to the example shown in Table 19, the following
will be noted. At event time 1, the biased event occurrence value
for the entry "THIS" are all lined up at event time 1 and hence -- ,'-,
event time 1 can be assigned a maximum hit count of 4. It will ,-~' "
also be noted that the length of the request (LNRQ) for "THIS" ~ -
is 4 and therefore is exactly the same as the hit count. This '---
10 indicates that the entry appears exactly in the data base. -~
Thus, instead of placing one row beneath the other as depicted
in Table 19, the PIPE MODULE disclosed herein utilizes the ,
approach where information is represented by biased actual event -~--
occurrence values and hit counts., One further condition should ' '
15 be noted. If the biased event occurrence value is less than , ,
or passes across a beginning delimiter for the corresponding
entry, a decision is made as to whether it is included or is -' -~
not included wlthin the corresponding entry. For example, '
in Table 21, the biased event occurr~nce values -1 and 9
for the event T are less than the beginning delimiter values
0 and 10, respectively. A rule has been laid down that if a ,'
biased event occurrence value lies within the "pipe width~
of the lowe~t event occurrence value in an entry and its ''~
value i~ less than the beginning delimiter for the corresponding
entry, then use a biased occurrence value equal to the beginning
delimiter for the entry. This i9 an artificial value which ~'
avoids computational problems relating to those biased event '
occurrence valucs which slide into another entry from their
original entry. ~ '
3 ~ ,~
,: ,
-301- ,,",
,',"'::`



"'. , ,,,


DEMANDES OU BREVETS VOLUMINEUX

LA PRÉSENTE PARTIE DE CETTE DEMANDE OU CE BREVET
COMPREND PLUS D'UN TOME.

CECI EST LE TOME ~ DE S~


NOTE: Pour le~ tomes additionels, veuillez contacter le Bureau canadien des
brevet~ ~ :.

/ ~ ''' ' ,
. . .~ ,",


JUMBO APPLICATIONSIPATENTS

THIS SECTION OF THE APPLICATION/PATENT CONTAINS MORE
THAN ONE VOLUME ,

~ THIS IS VOLUME ,L OF


NOTE: For addltlonal volumes pba~e contact the Canadlan Patent Offlc~
j
,.:

Representative Drawing

Sorry, the representative drawing for patent document number 1127767 was not found.

Administrative Status

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Administrative Status , Maintenance Fee  and Payment History  should be consulted.

Administrative Status

Title Date
Forecasted Issue Date 1982-07-13
(22) Filed 1981-03-25
(45) Issued 1982-07-13
Expired 1999-07-13

Abandonment History

There is no abandonment history.

Payment History

Fee Type Anniversary Year Due Date Amount Paid Paid Date
Application Fee $0.00 1981-03-25
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
SYSTEM DEVELOPMENT CORPORATION
Past Owners on Record
None
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Description 1995-11-18 192 3,777
Drawings 1995-01-07 144 5,283
Claims 1995-01-07 12 462
Abstract 1995-01-07 1 53
Cover Page 1995-01-07 1 33
Description 1995-11-07 301 14,688
Description 1996-02-21 302 12,938
Description 1995-01-07 314 15,189