US3697699A - Digital speech signal synthesizer - Google Patents

Digital speech signal synthesizer Download PDF

Info

Publication number
US3697699A
US3697699A US870012A US3697699DA US3697699A US 3697699 A US3697699 A US 3697699A US 870012 A US870012 A US 870012A US 3697699D A US3697699D A US 3697699DA US 3697699 A US3697699 A US 3697699A
Authority
US
United States
Prior art keywords
signal
information bits
frequency
digital
spectrum
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
US870012A
Inventor
Norman P Gluth
Richard A Houghton
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ltv Electrosystems Inc
Original Assignee
Ltv Electrosystems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ltv Electrosystems Inc filed Critical Ltv Electrosystems Inc
Application granted granted Critical
Publication of US3697699A publication Critical patent/US3697699A/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis

Definitions

  • ABSTRACT Disclosed is an electrical-signal synthesizer for converting digitally coded information associated with at least one electrical signal, whose frequency, amplitude 1 Oct. 10, 1972 or phase may vary, to analog signals whose frequency, amplitude or phase varies in substantially the same manner as that of the at least one electrical signal.
  • the synthesizer is operative to convert a digital signal representative of a first analog signal, such as a voice signal, having varying parameters, such as frequency or amplitude, into an analog output signal which varies in substantially the same manner as the first signal, and where the digital signal is composed of consecutive frames of words, and one word of each frame is representative of a fundamental frequency associated with the first signal at an instant of time, and successive words in the respective frame are representative of the energy associated with at least one of a plurality of successive bands or spectrum segments of the first signal to be reproduced, at the given instant in time, each of the successive bands bearing a predetermined frequency relationship and wherein the synthesis of the output signal is accomplished by generating from the word representative of the fundamental frequency in each respective frame, a stream of digital words representative of the frequency and each of its harmonics at each instant of time and producing therefrom a second stream of digital words which is indicative of the frequency components of the original sound and modulating the second stream with amplitude data corresponding to discrete periods of time and adding the respective digital signals so produced for
  • This invention relates to a synthesizer for receiving digitally coded input information and converting such information into analog signals and, more particularly, to a substantially all-digital synthesizer for receiving digitally coded input information relating to speech and l synthesizing therefrom a speech signal.
  • Speech data are carried largely by the varying shape of the power density spectrum rather than by the sound-pressure versus time characteristic, as many erroneously believe.
  • the description of the speech is formed by an analysis of the power spectrum of a first signal by a series of band-pass filters that divide the audio spectrum into a series of adjacent bands, The energy in each band is measured at the output of each filter, and the energy measurement gives a rough, but continuous, description of the power at discrete portions of the incoming speech.
  • the analyzer provides data relating to the fundamental frequency or pitch information.
  • speech is composed of "voiced and unvoiced" sound.
  • the V- iced sounds include the vowels and the voiced consonants and are produced by vibrating the vocal cords with air in the lungs.
  • Voiced sounds are composed primarily of harmonics of the frequency at which the larynx vibrates.
  • the fundamental frequencies of the voiced sound primarily in a range from about 70 to 350 Hz.
  • the unvoiced sounds are the consonants formed by the lips, teeth, and/or tongue. They have no definite harmonic pattern, but consist essentially of frequencies randomly distributed throughout the audio spectrum and varying in amplitude in accordance with the sound being reproduced.
  • the description of the speech includes the pitch frequency, amplitude information relating to bands of the voice-frequency spectrum, an indication that unvoiced sounds are present, and amplitude data relating to the unvoiced sounds.
  • Voice signal synthesizers utilizing filters are subject to at least two major objections. Since band-pass filters with infinitely short cutoff are not technically feasible, energy from one channel often appears in the next adjacent channel output, thereby producing a substantial amount of distortion. Additionally, a filter cannot have an infinitely short response time, and accordingly, energy is stored in each respective filter such that oscillations are set up in the filter circuit, again producing distortion of the voice-signal produced. Also, the use of a plurality of filters results in a construction that is too large and too heavy for applications where size and weight are critical factors, as in a space vehicle. Filters also require large amounts of power input with respect to the power of the output signal produced, since substantial losses are normally associated with filters. Still further, the error associated with the use of filters prevents the repeatability, when required, of a particular signal with a requisite degree of accuracy.
  • Channel analyzers of the type described do not possess the requisite degree of flexibility required for present day application. It may be desirable in certain situations to shift the phase of a single harmonic or to modulate a harmonic with a second signal or to completely eliminate a particular harmonic in a given situation, thereby to improve or change the quality of the signal which is to be synthesized.
  • an atmosphere which includes a high percentage of helium. The propagation of sound in helium is distorted with respect to propagation of the same sound in air, thus producing an unnaturalness in the sound in the vehicle. If this distortion could be compensated for by a synthesizer which is capable of altering the pitch of the sound produced to compensate for the distorted propagation, it would be possible to thereby return to the sound of naturalness which has been lost.
  • An object of this invention is to provide an improved electrical-signal synthesizer.
  • Another object of this invention is to provide an improved synthesizer for receiving digitally coded input information and converting such information into analog signals which vary in accordance with a first signal from which the input information is coded.
  • Still another object is to provide an electrical-signal synthesizer operative in response to a digitally coded input signal representative of an original electrical signal having at least one varying parameter, to produce an analog output signal having at least one parameter that varies in accordance with the at least one varying parameter of the original signal.
  • Yet another object is to provide an electrical-signal synthesizer which is improved through the use of substantially all digital techniques to accomplish the synthesis.
  • a further object is to provide an electrical-signal synthesizer which reproduces the analog signal with a higher degree of accuracy than that of other synthes izers.
  • a still further object is to provide an electrical-signal synthesizer which is smaller in size and has reduced weight with respect to other synthesizers.
  • Another object is to provide a new and improved synthesizer for receiving digitally coded information relating to the frequency, amplitude or phase of original signals and converting the coded information into analog signals of substantially the same frequency, amplitude or phase as the original signals.
  • Still another object is to provide a synthesizer for converting consecutive frames of digital words, where the consecutive frames contain frequency and amplitude information relating to a frequency and amplitude varying original signal at consecutive, predetermined, instants oftime, into an analog signal having the same frequency and amplitude as the original signal at the respective instant oftime.
  • An important object of the invention is to provide a new and improved synthesizer for receiving digitally coded information of fundamental parameters of speech and converting the digitally coded information into analog signals.
  • Another object is to provide a synthesizer for corn verting digitally coded information relating to the fundamental parameters of speech, which information consists of consecutive frames of digital words, which frames include frequency and amplitude information relating to the speech at consecutive, predetermined, instants of time, with one word of each frame containing information relating to the fundamental frequency of the speech at one instant of time, and the other words of each frame containing amplitude information relating to predetermined frequency bands or spectrum segments, each of the bands having a predetermined relationship to at least one fundamental frequency at the one instant oftime.
  • Yet another object is to provide a substantially alldigital, voice-signal synthesizer which operates in real time without the use ofextensive memory apparatus.
  • Still another object is to provide a synthesizer for converting digitally coded voice information into analog signals, wherein the synthesizer provides improved-quality, voice reproduction through the use of digital apparatus.
  • Still another object is to provide a synthesizer for receiving serially presented, digitally coded information which is indicative of frequency, amplitude or phase of original signals at predetermined instants of time and converting such digitally coded information into at least one digital signal, in parallel form, indica tive of any combination of frequency, amplitude or phase relations of the original signals at consecutive instants oftime.
  • FIG. 1 is a block diagram of a signal synthesizer embodying the invention
  • FIG. 2 is a diagrammatic illustration of a digitally coded, serial-input signal coupled to the synthesizer of FIG. 1;
  • FIG. 3 is a graph illustrating the computation of the frequency components of the synthesized signal
  • FIG. 4 is a graph illustrating a technique used to obtain sine information in the synthesized signal
  • FIG. 5 is a graph illustrating the basic method of computation
  • FIG. 6 is a simplified schematic drawing ofthe serialto-parallel converter of FIG. 1;
  • FIG. 7 is a simplified schematic drawing of the amplitude buffer register of FIG. I;
  • FIG. 8 is a simplified schematic drawing of the 12-bit added-accumulator combination of FIG. 1;
  • FIG. 9 is a simplified schematic drawing of the mag nitude comparator, the envelope update control, and the table of channel bandwidths of FIG. I;
  • FIG. I0 is a simplified schematic of the K-index and synchronization control of FIG. I;
  • FIG. II is a simplified schematic of the table of amplitude modulated trig functions of FIG. I;
  • FIG. 12 and I2a is a diagrammatic illustration of the general timing of various components of the synthesizer ofFlG. I;
  • FIG. 13 is a simplified schematic of the noise generator of FIG. I,
  • the illustrated embodiment ofthe invention is a synthesizer 10 used to convert digitally coded information relating to a first analog signal into analog signals which may in turn be used to reproduce the first signal.
  • Voice analyzers for translating speech into digital code or signals are well known.
  • a digital signal produced by one of these analyzers may comprise, as illustrated in FIG. 2, consecutive frames F, such as I90, of digital words containing information relating to the fundamental parameters of speech at consecutive, predetermined, spaced instants of time.
  • digital signals are transmitted at the rate of 2,400 bits per second.
  • each frame contains information relating to whether the speech at a particular instant of time is voiced or unvoiced, a definition of the fundamental frequency of the speech at the given instant to which the frame is related if the sound is voiced sound, and the amplitude of the energy level ofa predetermined, consecutive series of bands or spectrum segments spaced within the the first being a six-bit word, 92, coded to identify the fundamental frequency of the voiced sound or to indicate that there is an absence of voiced sound at an in stunt of time.
  • serially presented, following the first word are consecutive three-bit words, such as the three-bit words 92-97, each being coded to indicate the amplitude of the energy associated with a respective predetermined.
  • the 17th word 96 similarly, provides the amplitude information for the 16th band, but as opposed to the other words in the series, it does so with two bits; the last bit of the frame being a synchronization bit,
  • the first three-bit word 93 indicates the amplitude energy of the speech in the hand between 200 Hz to 332 Hz and so on with the last word 96 indicating the amplitude of the energy in the spectrum segment between 3,331 Hz and 3,820 Hz.
  • the consecutive bands of the frame related to a respective word each increase in width with respect to frequency in a predetermined, selected manner, for example, the expansion may be on a logarithmic scale.
  • the synchronization bit 97 serves to maintain proper synchronization of the timing relationships between the operation of the various circuits of the voice synthesizer 10.
  • the synthesizer of this invention is a special purpose computing device. It receives the input information at a rate of 2,400 bps, and the bit stream consists of serially arranged 54-bit frames of the type previously described.
  • X is the summation of a sequence of computations relating to the amplitude and frequency of the analog signal to be constructed, where the summation computation is performed for K specific time instants.
  • the term f is the pitch or fundamental frequency in Hz for which the computation is performed, and the term H represents the harmonic number (i.e., l, 2, 3, ....N) for the harmonics associated with the pitch frequency.
  • T is an incremental unit of time associated with the computation of the amplitude of one point for one particular harmonic
  • L represents greatest product of H'fthat is less than 3,820 Hz
  • C represents a scaling factor relating to the number of computations to be performed during the cycle of the basic pitch period
  • K represents a time index related to the number of computations to be performed with respect to a particular cycle of the pitch frequency.
  • K, T and are fully explained in the following portions of the disclosure.
  • the upper limit of the band of frequencies considered has been selected, in the embodiment disclosed, as 3,820 Hz. This use of this upper limit, as opposed to 4,000 Hz, facilitates computation and does not substantially effect the intelligibility or quality of the output produced in its expanded form, equation (1) above can be written as follows for successive periods of time:
  • a pitch or fundamental frequency f is illustrated with each of its harmonies (2 3f, 4f...nf) included in a speech-band of frequencies having a top frequency of 3,820 Hz.
  • an output curve 91 is shown which theoretically represents the summation of the pitch frequency with each of its harmonics falling within the prescribed speech-band.
  • the lowest pitchfrequency which is dealt with is 74 Hz, since this corresponds approximately with the lower-end of the band of fundamental or pitch frequencies. It has been decided arbitrarily to compute 256 points during any one complete cycle of a 74 Hz signal and 256 points for each harmonic thereof where the points computed for the harmonics are equally spaced over a time span equal to the period of the fundamental; thus a representative scale, where the pitch frequency is equal to 74 Hz, is set forth in FIG. 5, and as will be fully explained in the material that follows, the pitch frequency on which a computation is based will change. but the computing rate of K 256 will remain constant.
  • the upper-limit of the voice-band for this embodiment is set at 3.820 Hz, with a fundamental frequency of 74 Hz there will be (38201741 or 5] harmonics lying in the voice-band.
  • the total time of the computation is 52 7 a sec thus the value ofa point for each harmonic or the fundamental is computed in approximately (52.7/5l )or I 03 .1 set.
  • equation (3) provides a value for the amplitude of the output signal at the second increment of time ln equations (2), (3), and (4)
  • the portions of the respective equations labeled a, a ,....a, represent the first harmonic component of the computation
  • b, b, and b represent the second harmonic component
  • m, m, and m represent the he computation.
  • the pitch frequencies utilized in this device fall in the range from 74 to 3l0 Hz.
  • the band of pitch frequencies is normally considered to be approximately 74-330 Hz, but ed slightly without seriously efhe sound produced (when voice of the general equation (1 can be summarily written as follows;
  • the digitally coded input in formation is applied to an input terminal M which is coupled to an input control-unit [3.
  • the input controlunit 13 operates to synchronize the input information (Spectrum component segment (8.) adds to zero for the value K 256. since the time t, is taken as t +1.)
  • the total computation time for computing the components X X,, ,..,.X would be only 317 milliseconds, since there are only It computations, i.e., 12 possible harmonics of the pitch frequency that lie between 3 l0 H7. and 3,820 HZ (3,82U/3l0) l2).
  • the to the input control I3 is control, over line 17 to the me of the serial input-data is pulse from lead 19. on a hitin the converter such that the data received by the converter over line [7 is synchronized "to the operation of the input means. Additionally, a
  • the signal corresponding to the synchronous bit associated with each frame input data is coupled through a lead 16 to the amplitude buffer-register 22, to the pitchfrequency buffer-register 26, and to the K-index and synchronization control unit 20.
  • the signal appearing on line 16 is essentially a pulse-train with a repetition rate of 44.44 bps or one pulse every 54 counts of the 2,400 bps clock.
  • serial-to-parallel converter 18 is of a type well-known to the art relating to digital computer technology.
  • the converter 18 utilizes flip-flops which are also well-known, and those skilled in the art will recognize that a flip-flop has first and second input connections, first and second output connections, generally labeled Q and 6 (not Q a clock input which operates in response to a pulse applied thereto to set the data at the input to the output, and a reset connection which operates in response to a pulse applied thereto to clear the output of the flip-flop.
  • Flip-flops are too well known in the art to require more than the general description provided. Additionally, a one or high referred to herein implies the presence of a DC voltage of a given magnitude, and a low or zero refers to the absence of a voltage. In the embodiment illustrated, a voltage of volts DC is used as a one.
  • a first output connection of each flip-flop corresponds to the first input connection of the same flip-flop, and similarly, a second output connection corresponds to the second input connection, such that when a timing pulse is applied to a clock input of the flip-flop, the output changes state to a condition corresponding to the condition at the input at the time the timing pulse was applied.
  • serial data on line 17 is coupled to the input of converter 18 wherein the serial signal is divided into two parallel paths l7, l7aone path 17a including an inverter 2i, and each of the parallel paths are applied directly to respective input connections of a first flipflop 23 of a group of 54 parallel-connected, flip-flops 23.
  • the first flip-flop 23 includes a first input connection to which line 17 is coupled and a second input connection to which line 17a is coupled; however, the second coupling is through the inverter 21, such that if one bit of the input serial data is a one, the one is applied directly to the first input-connection, and a zero is applied to the second input connection, Conversely, if a zero is applied to the first input connection, a one is applied to the second input connection.
  • the output connections of the first flip-flop 23 are coupled to the input connections of the second flip-flop 23 and so on through the remaining flip-flops of the group.
  • the lead 19 is coupled to the clock input of each flip-flop 23 in the string,
  • each set-reset input is pulsed simultaneously at a rate of 2,400 pulses-per-second by the clock signal on line 19
  • the 2,400 bps input data on line [7 is stepped serially through the flip-flops 23, and at the end of each 54 consecutive steps, the serial bits clocked into the first output-connection of each flipflop corresponds to 21 respective bit of the 54-bit frame of input data, as shown in FIG. 2.
  • a lead, such as 24, is coupled to the first output-connection of each respective flip-flop 23 to provide the desired paralleldata output from the converter l8.
  • the first bit of data to enter the converter 18 with respect to time is the first bit of the six-bit word related to the pitch frequency of the frame.
  • the last word entering the converter 18 is a three-bit word representative of the energy level of the harmonics located in the l6th segment of the voice band, and this three-bit word includes a synchronization bit which is actually the last bit in the frame. For this reason, the amplitude of the energy level associated with this last word is treated in the synthesizer as having only two significant bits.
  • the 48 bits of amplitude information are coupled to the amplitude buffer-register 48 through parallel leads 24 and are coupled interiorly of the register to input of flip-flips 27.
  • a signal on line 16 corresponds to the occurrence of the synchronization bit in each word frame, such as 190 of FIG. 2, and this signal is applied to the clock input of each respective flip-flop 27, simultaneously.
  • each flip-flop 27 is set in accordance with the data on its input and is set at a time when a complete frame of data is available in parallelform from the serial-to-parallel converter 18; therefore, the parallel data is stored in buffer-register 22 for a time-period corresponding to the frequency of occurrence of the synchronization pulse on line 16 or 22.5 milliseconds.
  • a separate lead, such as 25, is coupled to the noninverted output (Q) connection of each flipflop 27 and is coupled to the envelope register 30 (FIG. 1) for use therein at a subsequent time.
  • the buffer-register 22 operates to store the amplitude data while a new frame of serial input data is being converted to parallel form by converter 18 and while the last frame of data stored in the register 22 is being processed by the other circuitry of the synthesizer 10.
  • the six bits of pitch frequency information of each frame is coupled through parallel leads, such as 24, to a pitch frequency buffer-register 26 (FIG. 1).
  • a pitch frequency buffer-register 26 Refer to FIG. 1. Except for the number of flip-flops used therein, the register 26 is substantially identical in operation and construction to the register 22.
  • the output of register 26 includes six parallel lines 31 which are coupled to a frequency data conversion unit 28.
  • the frequency data conversion unit 28 of FIG. 1 operates to convert the digitally coded input information to binary format and operates to change the frequency format arrangement of the digitally coded input information into a binary format usable in the digital equipment of the synthesizer.
  • channel analyzers available at present code the pitchfrequency data substantially in accordance with the following code:
  • the frequency data conversion unit 28 operates to expand the coded data to a nine-bit word, as opposed to the six-bit word of the coded input data. It will be apparent to those skilled in the art that a sixbit word of standard binary arithmetic would not add to 3 l0 Hz. For instance, a standard six-bit binary computing word can be expanded as follows:
  • place 3 OOOIOO
  • a l in place 3 and in place 2 (0001 10) would be the number 6 t0 the base l0; and so until there is a l in each of the places 1-6 (l l l I ll) whereupon the number represented is 63, which is also the maximum number that can be represented with one six-bit word; thus, if the binary number is expanded to nine bits (in lieu of 6), the binary number for 3l0 is easily formed (100i It)!
  • the frequency storage unit 29 is a storage register in cluding flip-flops and is similar in construction and operations to the amplitude buffer-register 22 and the pitch frequency buffer-register 26, except that in the flip-flop and the noninverted output of each flip-flop is coupled through a respective lead, such as 34. to a l2- bit adder 35.
  • the frequency storage unit 29 operates to store the data input thereto from the conversion unit 28 until such time as the pitch frequency reaches the end the K-index and synchronization control unit 40, as will be shown in the following description, to cause the data stored in the storage unit to be transferred to the adder 35.
  • the timing of the gating signal is set to prevent the the computing portion of the synthesizer 10 at an inopportune moment.
  • the 12-bit adder 35 and the accumulator 36 as a spectrum component generator operate to produce bi nary words corresponding to certain, successive har monies ofthe pitch frequency of a respective frame
  • the timing and output control unit I2 is the master timing unit for the computing portion of the synthesizer 10.
  • the unit includes a crystal-controlled oscillator and a series of flip-flops which serve as frequency dividers in a manner which is well known to those skilled in the art, such that ten clock-signals are available from the control unit 12 for timing the various circuits of the synchronizer 10. In the embodiment disclosed.
  • clock 0 is 7.76 MHz pulsetrain
  • clock I is 3.88 MHz
  • clock 2 is [.94 MHz
  • clock 4 is 0.97 MHz
  • clock 8 is 0.425 MHz
  • five additional timing signals each out of phase with a respective one of the above clocks 0-8, are also available
  • combinations of the above disclosed timing signals are used to generate still other timing signals. For instance, a 1.03 p. sec clock is generated by the combination of clock 2 and clock 4 ln HO. 1, the timing pulses are coupled to the various units by certain ones of ten separate leads, such as 42.
  • Each bit of the nine bit word is transferred from the section, tions (12) than there are input data bits (9) to allow room for binary expansion of the number
  • the input data bits are coupled to the adder inputs corresponding to the nine least significant bits.
  • Each of the adder sec tions 39 is of a type which is wellknown, and a Fairchild integrated circuit chip model 9304, manufat turer by Fairchild Semiconductor of Mountaln View California, is a typical device useful In this embodi ment.
  • the Fairchild device incorporates two of the respective adder sections, such as 39, in one chip
  • Each adder section 39 includes three inputs, identified as lN l, [N No 2. carry input (C,,,J and two outputs. identified as carry output (C and sum.
  • the accumulator 36 includes 12 flip-flops 53, and the sum output of each adder section 39 is coupled through a lead 37 to both the inverting and noninverting input connections of a respective flip-flop 53.
  • the noninverting output (Q) of each flip-flop 53 is coupled through a lead 38 to the second input connection (IN,) of a respective adder section 39 and through a second lead, such as 44, to the magnitude comparator 50 (FIG. 1).
  • each respective adder section 39 is coupled directly to the carry input (Cm) 0f the next adjacent adder section, and the C of the last adder section 39 is left open.
  • the clock input of each respective flip-flop $3 is coupled through the lead 42 to the timing and control unit 12 (FIG. 1), and the reset input of each respective flip-flop is coupled through a lead 43 to the K-index and synchronization control unit 40 (FIG. I).
  • the pulse on lead 43 is used to reset the accumulator 36 when processing of a particular frame of data is completed.
  • the binary number appearing on leads 34 will be added to itself, such that the binary word at the output leads 44 will increase in even multiples, and therefore will represent successive harmonics of the pitch frequency, i.e., 2f, 3f, 4f, etc.
  • the pitch frequency is 74 Hz
  • the binary word on lead 34 is 0000l00l0l0
  • the table of channel bandwidths operates to produce on its output leads, such as 46, a seven-bit binary word representative of a respective one of the frequency markers set forth above.
  • the output switches to a seven-bit word representative of the next higher marker frequency until the bandwidth [7 marker is reached, at which time the table recycles, and starts over.
  • the table 70 steps through each of the l7 markers one time during one-two hundred and fifty-sixth of a cycle of the pitch frequency appearing at the output of the frequency storage unit 29.
  • the output of the accumulator 36 is coupled to the mag nitude comparator 50 by seven parallel leads, such as 44, and the output of the table of channel bandwidths 70 is coupled to the comparator by seven leads such as 46.
  • the comparator 50 operates to compare the words coupled thereto from the table 70 and the accumulator 36, and if the value of the binary word presented by the accumulator is equal to or greater than the value of the binary word presented by the table 70, then the output of the comparator, at lead 47, changes state; for instance, the output may change from zero volts to a substantially constant DC voltage of a few tenths of a volt.
  • Comparators suitable for use in this circuit are availa ble from several sources, and in particular, a pair of National Semiconductor Corporation four-bit compara tors, model DM7200/DM8200, coupled in parallel, are suitable for use in this embodiment.
  • the comparator 50, the en velope update control 60 and the table of channel bandwidths 70 cooperate to produce the result set forth above.
  • the smallest frequency represented by the output of the table 70 is 200 Hz thus there is always a word on line 46 equal to or greater than 200 Hz.
  • the output of the comparator 50 is coupled by a lead 47 to the envelope update 60 and specifically to a NAND-gate 55 located therein
  • the NAND-gate 55 has three inputconnectmns and operates in response to the presence of three posiuve signals, one on each respective input, to produce a negative swing or low at its output.
  • the clock pulses from lead 42 are coupled to the input of gate 55 and are normally high, but periodically swing low for the purpose set forth below.
  • a negative swing at the output of gate 55 is inverted by an inverter 56 and coupled to the input of a digital counter 57 which responds to the application of a positive-going signal at its input to in crease the number represented by its output by one.
  • the output of the digital counter 57 is a four-bit word which has 16 specific combinations of binary digits (0000 through I l l 1), representing the numbers from ll6; thus, the counter output provides an address for the first l6 successive marker frequencies set forth above.
  • the output of the counter is 0000, and when the word on line 44 represents a value equal to or larger than 200 Hz, then the comparator 50 output changes state and the output of the digital counter 57 changes to 000i.
  • This address (0001) is coupled by lines 45 to the table of channel bandwidths 70 and is coupled therein to each of l7 detect-only gates 58.
  • a digital counter of the type described herein is a model 8828i] four'bit binary counter/storage element manufactured by Signetics Corporation, Sunnyvale, California.
  • Each detect-only gate 58 except the l7th, recognizes only one of the [6 possible combinations of the output of the counter 57.
  • the read-only or detect-only memories 58 are of a type which are well-known and a typical integrated circuit chip for use as the read-only gate of this invention is a model MM-422 manufactured by National Semiconductor Company of Santa Clara, California.
  • the output of each readonly memory 58 is coupled to a respective bank 59 of parallel-connected diodes 61.
  • each respective diode bank 59 is connected in parallel with the respective outputs of other diode banks, and all the bank outputs are coupled through leads 46 to the input of the comparator 50.
  • the next succeeding detect-only gate 58 is addressed and activated, and the corresponding diode bank 59 produces a binary word representing the next marker frequency.
  • the output of the accumulator 36 increases, and the harmonic value thus produced is compared to the new frequency marker until a comparison is again achieved, in which case the entire process is repeated such that the next marker frequency is brought up for comparison.
  • a pair of timing signals from the timing and output control 12 are applied to respective inputs of the NAND-gate 5S, and, as previously stated, the gate responds to high voltages (ls on each of the gate leads. in this case 3, to cause the envelope update 60 to operate.
  • the timing signals are arranged to force the gate 55 to operate when a harmonic of the pitch frequency does not fall within the specific hand. For instance, consider the pitch frequency of I80 H2 and its second harmonic of 360 Hz. Examining the list til marker frequencies set forth above, it is clear that a harmonic of the pitch frequency does not fall within the hand dcl'iiicd h markers 200 Hz and U2 H2, When the processing ol this pitch frequency begins.
  • the signal from the table 70 represents 200 Hz and the signal from the accumulator represents l8l) HZ, thus a compare signal is not generated on line 47.
  • the signal at the output of the accumulator goes high, i.e., changes state from zero to a positive voltage, thus indicating that a comparison has been made.
  • the envelope update 60 operates to cause the table to produce a new output signal, which in our example is now 332 Hz, but notice that the signal from the accumulator 36 is still larger than the signal from the table.
  • the counter 57 of the envelope update 60 cannot be made to step, since the input to the comparator 50 does not call for a change at its output on line 47.
  • the timing pulses applied to NAND-gate 55 are arranged to cure the problem relating to the lack of harmonics falling in a band, between markers.
  • the three inputs to the NAND-gate 55 must be high, each representing ones, to cause the output of the gate to switch low, thereby enabling the circuitry to cause the counter 57 to switch.
  • timing pulses are arranged on at least one of the lines 42 coupled to the input of the gate 55 such that at least once every cycle of the comparator 50, the voltage on the at least one lead drops to zero for a short period, and if the compare signal has not been generated by a normal compare, i.e., the presence ofa harmonic in the hand, then as the voltage on the at least one lead returns to a high, a false compare is generated, and the counter 57 steps, thus calling up a new bandwidth marker, for example marker 3, which is 442 Hz, and the compare circuitry is then enable to operate in its normal manner.
  • a normal compare i.e., the presence ofa harmonic in the hand
  • the digital counter 57 Since the digital counter 57 has only a four-bit output with 16 possible word combinations, the address of the l 7th marker must be created in some other manner. This input is provided by producing a high voltage, representing a one, from the input line 47. All the outputs from the digital counter 57 are now ones (I l l l), and they are applied to the bandwidth 17 gate which produces a zero out.
  • the output of the bandwidth l7 gate is then inverted and applied to a NAND- gate 63, which is similar to gate 55, such that as the 16th marker frequency is reached, a l is applied to one of the three inputs to the NAND-gate 63,
  • a compare signal again appears on line 47, indicating that the harmonic signal on lead 44 equals or exceeds 3,330 Hz
  • a signal representing a one is applied to the second Input to NANllgate 63.
  • the third signal representing a one is applied to the NAND-gate 63 by a clock pulse from the timing and output control unit l2 and is timed to assure that the bandwidth 16 address and bandwidth [6 compare process is complete.
  • the gate switches to a zero output which in turn sets a flip-flop 64 to produce an output one to the respective diode bank 59, which produces the proper bandwidth 17 comparison signal out of the bank, in the manner previously described.
  • a pulse is applied to the reset terminal of flip-flop 64 by the K- index and synchronization control 40, thus causing the table 70 to recycle.
  • the table of channel bandwidths 70 cycles through each of the sixteen bands for each one-two hundred and fifty-sixth part of one cycle of the basic pitch frequency. ln other words, data relating to the pitch frequency and each of its harmonics is generated during each one-two hundred and fifty-sixth part of a cycle of the pitch frequency, thus the digital operation relates to the scheme of compilation set forth above with respect to the general equation (I) and its expansion in equations (2), (3) and (4).
  • the output signal on lead 65 of the envelope update control 60 is coupled to the A register 66 and to the envelope update register 30, andby properly signaling 1% Tits, harmonic amplitude information in the register 30 is related to at least one sine function of the equations (2), (3), and (4).
  • the output of the comparator 50 is coupled through a lead 47 to the K-index and synchronization control unit 40.
  • the K-index and synchronization control unit 40 operates to produce a bandwidth 17 marker, which indicates the end of the cycle of the 16 bands for one-two hundred and fiftysixth of a cycle of the pitch frequency and provides a means for synchronizing the operation of the K-counter 80, the K-H accumulator 75, the reset signals on line 43, the output accumulator 85, and the digital-toanalog (D/A) converter 86.
  • the K-index and synchronization control 40 includes a first NAND-gate 68 which has 4 input connections. Two of the input connections are coupled to leads 42 from the timing and output control unit 12 while the third lead is coupled to the output of the comparator 50 through a lead 47, and the fourth lead is coupled to the table of channel bandwidths 70 at the noninverting output of flip-flop 64 (FlG. 9), Le, the bandwidth 17 address output.
  • the gate 68 operates in response to high-voltages (ones) on each of its respective inputs to produce a low output (zero). When the bandwidth 17 address is generated in the table of channel bandwidths and the flip-flop 64 (FIG.
  • a reset-disable circuit including NAND-gate 87 is coupled between the output of gate 68 and the reset input of flipflop 67.
  • the gate 87 has four inputs, and a first of the inputs is coupled to the output of gate 68. The remaining three inputs to gate 68 are coupled by line 42 to the timing and output control 12.
  • the noninverted output of flip-flop 67 is coupled to NAND-gate 69, as previously stated, and the output of gate 69 is coupled through an inverter 73 to lead 41.
  • Gate 69 has a second input connection which is coupled to the noninverted output of a flip-flop 71, and the output of gate 69 is coupled to the reset input of flipflop 71.
  • the frame synchronization signal is coupled from the input means (FIG. I) through lead 16 and through an inverter 74 to a first input connection of NAND-gate 72, and a pitch synchronization signal from the K-counter (FIG. I) is coupled through lead 49 to a second input of gate 72.
  • the frame synchronization signal is normally low but is inverted by inverter 74, thus, a positive signal is applied to one input of gate 72 at all times, except when the frame sync signal is present on line 16.
  • the pitch sync signal on line 49 is generated in the K-counter and corresponds to the start of a full-cycle of the pitch frequency (K 0).
  • K 0 the pitch frequency
  • This low is coupled to the set gate of flip-flop 71 and is there inverted to cause the flip-flop to set.
  • a high is produced on lead 88 which is coupled to the input of a NAND-gate 69.
  • the gate 69 has highs on each of its two inputs, as when there is a bandwidth l7 marker, and when the K- counter 80 (FIG. 1) steps to any position other than K o,the output described, the frame sync pulse (on line 9 16) causes the amplitude information data to shift from the amplitude buffer-register 22 to the envelope register 30.
  • a change of frame information is called for, as by a pulse on line 41, at the precise moment that the amplitude information is being transferred from the register 22 to the envelope register 30 and before the transfer lines 25 have settled, erroneous data may be recorded in the envelope register, thereby disrupting the operation of further computations by introducing error.
  • the gate 72 is disabled, as described, to prevent these errors.
  • the bandwidth 17 marker, on line 52, is coupled to the K-counter 80, the output digital-to-analog converter 86, the scaling multiplier 84, and the accumulator 85.
  • the output of gate 69 goes low, it is inverted by an inverter 73 to which it is coupled and a positive or high is produced on lead 41 out of the in verter. Additionally, when the output of 69 goes low, the low is coupled through a lead 89 to the reset connection of flip-flop 71 where the signal is inverted to reset the flip-flop, thus removing a high from the input of gate 69. lt is now apparent that the pulse produced on line 41 has a duration which corresponds to the response time of the reset circuit of flip-flop 71.
  • the disable circuitry associated with flip-flop 71 prevents the occurrence of a K pulse from the K- counter 80 at the same time that a frame synchronization pulse occurs.
  • a pulse on line 41 is coupled to the envelope register 30 to cause the register 30 to load from the register 22.
  • Line 41 is coupled also to the frequency storage unit 29, and the synchronization pulse thereon causes data to transfer from the frequency storage unit 29 to the adder 35. Note that these operations occur only when K 0, since, as previously described, a K 0 pulse is required from the K-counter 80 to enable the generation, in the control unit 40, of the pulse on line 41.
  • the envelope register 30, FIG. 1 accepts and stores the amplitude data from the amplitude bufi'er-register 22 upon the receipt ofa pulse over line 41 from the K- index and synchronization control unit 40 and is properly a part of the input means 15. Since the pulse on line 41 corresponds to the bandwidth 17 marker, it represents the end of a cycle through the 16 segments of the voice band for the one-two hundred fifty-sixth increment of one cycle of the pitch frequency that is present, thus a new frame of amplitude data is called up and stored in the envelope register 30 for use with the next full-cycle ofthe pitch frequency.
  • the circuitry in the envelope register 30 is similar to that of register 22 in that it in eludes Ll group of flip-flops which are pulsed by the signal on line 4
  • the output of the envelope register 30 is coupled back to its input to provide a path for recirculation of the amplitude words of each frame.
  • the update signal on line 65 from the envelope update control 60 is coupled to the A register 66, also, and when an envelope update pulse is generated on line 65, the amplitude data on leads 76 at the output of the envelope register 30 is transferred and stored in the A n register 66 and is also circulated through the recirculation path, previously described, and stored again in the envelope register 30, to become the last word in order of time instead of the first. in this manner, the envelope register 30 shifts through each successive word of amplitude data in response to a shift signal from the envelope update 60.
  • the A register 66 stores the three-bit words of data on line 76 in response to a pulse on line 65. Clock pulses on line 42 are applied to the register 66 to provide a time-window when storage can occur, thus preventing the erroneous storage of data in response to transients. Similar techniques and circuitry for providing the time-window have already been described.
  • the output of the A register 66 is coupled over leads 81 to the table of amplitude modulated trig functions 90.
  • the K-counter 80 is a counter similar to the counter 57 (FIG. 9) previously described, and is a commercially available unit.
  • the basic difference between the counter 80 and the converter 57 is the counting range or magnitude of the output word which is produced.
  • the K-counter 80 has an eightbit output and can therefore count to a higher level than the counter 57 which has only a four-bit output.
  • Each bandwidth 17 marker pulse on line 52 strobes the K-counter 80 causing it to step.
  • the binary output of K-counter 80 is arranged such that it is all zeros (lows) when X 0.
  • Eight parallel-connected logic-gates are coupled respectively to respective ones of the output bit-positions of the K- counter 80, and each gate operates to invert the signal applied to its input, whether it is high or low.
  • the gates can be arranged such that when the output of each gate is a high, and only in this case, a high output is produced. This case occurs only when the K-counter recycles in response to a bandwidth 17 marker, such that its output is all zeros. This high output is applied to lead 49 to signal K 0 to the respective units previously described,
  • the adder 77 and K-H accumulator are similar in construction and operation to the adder-acumulator combination 35, 36.
  • the output of the K-counter 80 is coupled to the input of adder 77, and the adder 77 is coupled to the accumulator 75 in substantially the same manner that adder 35 is coupled to accumulator 36.
  • the KH accumulator 75 is clocked by a pulse from the timing and output control 12, the binary number at the input to the adder 77 adds to itself.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Electrophonic Musical Instruments (AREA)

Abstract

Disclosed is an electrical-signal synthesizer for converting digitally coded information associated with at least one electrical signal, whose frequency, amplitude or phase may vary, to analog signals whose frequency, amplitude or phase varies in substantially the same manner as that of the at least one electrical signal. More specifically, the synthesizer is operative to convert a digital signal representative of a first analog signal, such as a voice signal, having varying parameters, such as frequency or amplitude, into an analog output signal which varies in substantially the same manner as the first signal, and where the digital signal is composed of consecutive frames of words, and one word of each frame is representative of a fundamental frequency associated with the first signal at an instant of time, and successive words in the respective frame are representative of the energy associated with at least one of a plurality of successive bands or spectrum segments of the first signal to be reproduced, at the given instant in time, each of the successive bands bearing a predetermined frequency relationship and wherein the synthesis of the output signal is accomplished by generating from the word representative of the fundamental frequency in each respective frame, a stream of digital words representative of the frequency and each of its harmonics at each instant of time and producing therefrom a second stream of digital words which is indicative of the frequency components of the original sound and modulating the second stream with amplitude data corresponding to discrete periods of time and adding the respective digital signals so produced for a discrete period of time and converting the same to an analog signal which is representative of the original voice signal.

Description

United States Patent Gluth et al.
[ DIGITAL SPEECH SIGNAL SYNTHESIZER Primary Examiner-Kath1een H. Claffy Assistant Examiner-Jon Bradford Leaheey A1InrIIey-James D. Willborn [57] ABSTRACT Disclosed is an electrical-signal synthesizer for converting digitally coded information associated with at least one electrical signal, whose frequency, amplitude 1 Oct. 10, 1972 or phase may vary, to analog signals whose frequency, amplitude or phase varies in substantially the same manner as that of the at least one electrical signal. More specifically, the synthesizer is operative to convert a digital signal representative of a first analog signal, such as a voice signal, having varying parameters, such as frequency or amplitude, into an analog output signal which varies in substantially the same manner as the first signal, and where the digital signal is composed of consecutive frames of words, and one word of each frame is representative of a fundamental frequency associated with the first signal at an instant of time, and successive words in the respective frame are representative of the energy associated with at least one of a plurality of successive bands or spectrum segments of the first signal to be reproduced, at the given instant in time, each of the successive bands bearing a predetermined frequency relationship and wherein the synthesis of the output signal is accomplished by generating from the word representative of the fundamental frequency in each respective frame, a stream of digital words representative of the frequency and each of its harmonics at each instant of time and producing therefrom a second stream of digital words which is indicative of the frequency components of the original sound and modulating the second stream with amplitude data corresponding to discrete periods of time and adding the respective digital signals so produced for a discrete period of time and converting the same to an analog signal which is representative of the original voice signal.
47 Claims, 14 Drawing Figures I NOISE GENERATOR e BIT 400% TABLE F 82 I AMPLITUDE I 83 75 3 MODULATED ADDER K-H ACCUMULATOR FUNCT'ONS I6 16 PRESENT ADVANCE a a 7 65 I26 3 BIT ADDER 6 ACCUMULATOR A I. iAtHf) SIN 2" HI Kt REGISTER K coururen r TIMING AND 3 9 i OUTPUT MULTIPLIER I -33 125 4 CONTROL r56 49 42 I uNvoIcEn FREQUENCY A R T D/A CONVERTER L DETECTOR STORAGE 38 I2 37 SIGNAL CONDITIONER 9 9 32 28 (H4)! 36 G2 I ggegsrgfi DATA AccuNIuLAroR- "ga g UNIT 1 2 :1 7 BAND WIDTHS 6 5/ 2s 43 46 PITCH FREQ. i L 5 I8 7 S/P CONVERTER a h r iiriiii g R T w 24 4? 4al I 40 1 L [\Ml'l lllllll HIIF rm K'INDEX AND tNvtIoPt mum, 48 BITS SYNCHRONIZATION UP DATE- CONTROL 1 CONTROL 4a 25 5/ ENVELOPE REGISTER l6 WORDS x 3 BITS PATENTED B 10m? 3.697.699
SHEET 2 BF 9 TIME Q t l 1 FRAME N FRAME N! [FRAME M2! 5 7 22.5 22.5 MSEC MsEc FRAME SEQUENCE TIMING I ONE FRAME DETAIL 9O A 5% i I l 4|7,u SEC- 24OOBPS r '3 BIT] '3 BIT' '3 BIT' 2 IT SIX BIT PITCH CODE CHANNEL CHANNEL CHANNEL CHANNEL SYNC AMPLITUDE AMPLITUDE AMPLITUDE AMPL TUDE MsB' L55 MsB 93 LSB 94 95 96 97 W I V f=PITCH FREQUENCY (HZIA A(HJ)| A(H;f) AIHJI Afl-Ifl {4(HZ/CT)}x{PITCH BINARY(COUNTS)}*7O HZ FRAME SYNCHRONIZATION BIT THE PITCH CODE=(OOOOOO)2 IMPLIES UNVOICED ANY NON-ZERO PITCH CODE IMPLIEs VOICED SPEECH TIME OUTPUT V \M/ III]IIIIIIIIIIIIIIIIIIIIIIIII...YIIIIIIIIII\ LII l OUTPUT OF READ ONLY MEMORY FOR I2! I2! I2! I21 m HARMONIC a L ONLY-74HZ V 96 96a 96b ANALOG REPRESENTATION OF THE OUTPUT OF THE FIRST 25 COMPLEMENT J I 1 l 19/ l9/a 19/1; ANALOG REPRESENTATtON OF THE OUTPUT OF THE R-H ACCUMULATOR 75 BW l7 MARKERS K= O I 2 3 4 5 6 7 8 INVENTORSl NORMAN P. GLUTH RICHARD A. HOUGH TON ATTORNEY PATENTEDIJBT 10 I912 3.697.699
SHEET 6 BF 9 TOK-INDEX AND SYNCHRINIZATION CONTROL 4O 65 MAGNITUDE 44 COMPARATOR 4? DIGITAL 5o COUNTER 4 4 BUT I NTORS:
, NORMAN F? GLUTH F IG. /0 RICHARD A. HOUGHTON gmw ww ATTORNEY 1 DIGITAL SPEECH SIGNAL SYNTHESIZER BACKGROUND OF THE INVENTION l Field Of The Invention This invention relates to a synthesizer for receiving digitally coded input information and converting such information into analog signals and, more particularly, to a substantially all-digital synthesizer for receiving digitally coded input information relating to speech and l synthesizing therefrom a speech signal.
2. Description Of The Prior Art It is recognized in the communications art that the transmission of speech in the form of electrical signals can be accomplished by digital rather than analog means, and certain favorable results are achieved. Usable bandwidth is conserved under certain circumstances, less power is required, and digital messages are harder to intercept. A graphic example is that digital voice signals can be interleaved with other data from a spacecraft, thus reducing the requirement for radiofrequency links with the spacecraft.
Scientists have recognized that a description of the speech signal, rather than the speech signal itself, can be transmitted, and the speech signal can be reconstructed from the description. The description includes carefully selected functions or parameters inherent in the speech and from which the speech can be reconstructed. The description is converted to a digital word form at, and in this form it requires less bandwidth when transmitted than the original, analog speech signal would have required.
Speech data are carried largely by the varying shape of the power density spectrum rather than by the sound-pressure versus time characteristic, as many erroneously believe. Thus, in one system the description of the speech is formed by an analysis of the power spectrum of a first signal by a series of band-pass filters that divide the audio spectrum into a series of adjacent bands, The energy in each band is measured at the output of each filter, and the energy measurement gives a rough, but continuous, description of the power at discrete portions of the incoming speech.
In addition to the channel amplitude-analysis, the analyzer provides data relating to the fundamental frequency or pitch information. Additionally, speech is composed of "voiced and unvoiced" sound. The V- iced sounds include the vowels and the voiced consonants and are produced by vibrating the vocal cords with air in the lungs. Voiced sounds are composed primarily of harmonics of the frequency at which the larynx vibrates. The fundamental frequencies of the voiced sound primarily in a range from about 70 to 350 Hz.
The unvoiced sounds are the consonants formed by the lips, teeth, and/or tongue. They have no definite harmonic pattern, but consist essentially of frequencies randomly distributed throughout the audio spectrum and varying in amplitude in accordance with the sound being reproduced. Thus, the description of the speech includes the pitch frequency, amplitude information relating to bands of the voice-frequency spectrum, an indication that unvoiced sounds are present, and amplitude data relating to the unvoiced sounds.
To synthesize the voice with a channel synthesizer, a series of band-pass filters similar to those described above is used in cooperation with the output of a buzz or his generator and balanced modulators to reconstruct intelligible speech.
Voice signal synthesizers utilizing filters are subject to at least two major objections. Since band-pass filters with infinitely short cutoff are not technically feasible, energy from one channel often appears in the next adjacent channel output, thereby producing a substantial amount of distortion. Additionally, a filter cannot have an infinitely short response time, and accordingly, energy is stored in each respective filter such that oscillations are set up in the filter circuit, again producing distortion of the voice-signal produced. Also, the use of a plurality of filters results in a construction that is too large and too heavy for applications where size and weight are critical factors, as in a space vehicle. Filters also require large amounts of power input with respect to the power of the output signal produced, since substantial losses are normally associated with filters. Still further, the error associated with the use of filters prevents the repeatability, when required, of a particular signal with a requisite degree of accuracy.
Channel analyzers of the type described do not possess the requisite degree of flexibility required for present day application. It may be desirable in certain situations to shift the phase of a single harmonic or to modulate a harmonic with a second signal or to completely eliminate a particular harmonic in a given situation, thereby to improve or change the quality of the signal which is to be synthesized. For example, in some deep-sea exploration vehicles an atmosphere is utilized which includes a high percentage of helium. The propagation of sound in helium is distorted with respect to propagation of the same sound in air, thus producing an unnaturalness in the sound in the vehicle. If this distortion could be compensated for by a synthesizer which is capable of altering the pitch of the sound produced to compensate for the distorted propagation, it would be possible to thereby return to the sound of naturalness which has been lost.
Scientists and engineers have for some extended period of time sought to build a completely all-digital, voice-signal synthesizer but have previously had only limited success. Any digital portions of synthesizers presently known require extensive memory apparatus which limits the utility of the synthesizer with which the digital apparatus is associated. A digital synthesizer which operates in real-time, thus avoiding the requirement for extensive memory apparatus, would be useful in many applications where synthesizers could not have been used previously.
SUMMARY OF THE INVENTION An object of this invention is to provide an improved electrical-signal synthesizer.
Another object of this invention is to provide an improved synthesizer for receiving digitally coded input information and converting such information into analog signals which vary in accordance with a first signal from which the input information is coded.
Still another object is to provide an electrical-signal synthesizer operative in response to a digitally coded input signal representative of an original electrical signal having at least one varying parameter, to produce an analog output signal having at least one parameter that varies in accordance with the at least one varying parameter of the original signal.
Yet another object is to provide an electrical-signal synthesizer which is improved through the use of substantially all digital techniques to accomplish the synthesis.
A further object is to provide an electrical-signal synthesizer which reproduces the analog signal with a higher degree of accuracy than that of other synthes izers.
A still further object is to provide an electrical-signal synthesizer which is smaller in size and has reduced weight with respect to other synthesizers.
Another object is to provide a new and improved synthesizer for receiving digitally coded information relating to the frequency, amplitude or phase of original signals and converting the coded information into analog signals of substantially the same frequency, amplitude or phase as the original signals.
Still another object is to provide a synthesizer for converting consecutive frames of digital words, where the consecutive frames contain frequency and amplitude information relating to a frequency and amplitude varying original signal at consecutive, predetermined, instants oftime, into an analog signal having the same frequency and amplitude as the original signal at the respective instant oftime.
An important object of the invention is to provide a new and improved synthesizer for receiving digitally coded information of fundamental parameters of speech and converting the digitally coded information into analog signals.
Another object is to provide a synthesizer for corn verting digitally coded information relating to the fundamental parameters of speech, which information consists of consecutive frames of digital words, which frames include frequency and amplitude information relating to the speech at consecutive, predetermined, instants of time, with one word of each frame containing information relating to the fundamental frequency of the speech at one instant of time, and the other words of each frame containing amplitude information relating to predetermined frequency bands or spectrum segments, each of the bands having a predetermined relationship to at least one fundamental frequency at the one instant oftime.
Yet another object is to provide a substantially alldigital, voice-signal synthesizer which operates in real time without the use ofextensive memory apparatus.
Still another object is to provide a synthesizer for converting digitally coded voice information into analog signals, wherein the synthesizer provides improved-quality, voice reproduction through the use of digital apparatus.
Still another object is to provide a synthesizer for receiving serially presented, digitally coded information which is indicative of frequency, amplitude or phase of original signals at predetermined instants of time and converting such digitally coded information into at least one digital signal, in parallel form, indica tive of any combination of frequency, amplitude or phase relations of the original signals at consecutive instants oftime.
Additional objects and advantages of the invention will be readily apparent from the reading of the follow ing description of devices constructed in accordance with the invention, and reference to the accompanying drawings thereof, wherein:
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram ofa signal synthesizer embodying the invention;
FIG. 2 is a diagrammatic illustration of a digitally coded, serial-input signal coupled to the synthesizer of FIG. 1;
FIG. 3 is a graph illustrating the computation of the frequency components of the synthesized signal;
FIG. 4 is a graph illustrating a technique used to obtain sine information in the synthesized signal;
FIG. 5 is a graph illustrating the basic method of computation;
FIG. 6 is a simplified schematic drawing ofthe serialto-parallel converter of FIG. 1;
FIG. 7 is a simplified schematic drawing of the amplitude buffer register of FIG. I;
FIG. 8 is a simplified schematic drawing of the 12-bit added-accumulator combination of FIG. 1;
FIG. 9 is a simplified schematic drawing of the mag nitude comparator, the envelope update control, and the table of channel bandwidths of FIG. I;
FIG. I0 is a simplified schematic of the K-index and synchronization control of FIG. I;
FIG. II is a simplified schematic of the table of amplitude modulated trig functions of FIG. I;
FIG. 12 and I2a is a diagrammatic illustration of the general timing of various components of the synthesizer ofFlG. I; and
FIG. 13 is a simplified schematic of the noise generator of FIG. I,
DESCRIPTION OF A PREFERRED EMBODIMENT General Outline.
Referring now particularly to, FIGS. I and 2 of the drawing, the illustrated embodiment ofthe invention is a synthesizer 10 used to convert digitally coded information relating to a first analog signal into analog signals which may in turn be used to reproduce the first signal.
Voice analyzers for translating speech into digital code or signals are well known. A digital signal produced by one of these analyzers may comprise, as illustrated in FIG. 2, consecutive frames F, such as I90, of digital words containing information relating to the fundamental parameters of speech at consecutive, predetermined, spaced instants of time. In the analyzer described, digital signals are transmitted at the rate of 2,400 bits per second. Additionally, each frame contains information relating to whether the speech at a particular instant of time is voiced or unvoiced, a definition of the fundamental frequency of the speech at the given instant to which the frame is related if the sound is voiced sound, and the amplitude of the energy level ofa predetermined, consecutive series of bands or spectrum segments spaced within the the first being a six-bit word, 92, coded to identify the fundamental frequency of the voiced sound or to indicate that there is an absence of voiced sound at an in stunt of time. Serially presented, following the first word, are consecutive three-bit words, such as the three-bit words 92-97, each being coded to indicate the amplitude of the energy associated with a respective predetermined. consecutive band or spectrum segment of the band of voice frequencies at the one instant of time with which the frame is associated. The 17th word 96, similarly, provides the amplitude information for the 16th band, but as opposed to the other words in the series, it does so with two bits; the last bit of the frame being a synchronization bit, For example, the first three-bit word 93 indicates the amplitude energy of the speech in the hand between 200 Hz to 332 Hz and so on with the last word 96 indicating the amplitude of the energy in the spectrum segment between 3,331 Hz and 3,820 Hz. The consecutive bands of the frame related to a respective word each increase in width with respect to frequency in a predetermined, selected manner, for example, the expansion may be on a logarithmic scale.
The synchronization bit 97 serves to maintain proper synchronization of the timing relationships between the operation of the various circuits of the voice synthesizer 10.
The synthesizer of this invention is a special purpose computing device. it receives the input information at a rate of 2,400 bps, and the bit stream consists of serially arranged 54-bit frames of the type previously described.
To fully understand the method of reconstruction of the original, analog signal from the description of the sound represented by that signal, the method of computation must be explored. The general form of the computation is as follows:
in this equation X, is the summation ofa sequence of computations relating to the amplitude and frequency of the analog signal to be constructed, where the summation computation is performed for K specific time instants. The term f is the pitch or fundamental frequency in Hz for which the computation is performed, and the term H represents the harmonic number (i.e., l, 2, 3, ....N) for the harmonics associated with the pitch frequency. The term A represents the amplitude of the envelope during a particular time-instant of a fundamental frequency (where Hf= l) or a sine-wave harmonic (for values of H'fin excess of l of the sound to be generated. The term T is an incremental unit of time associated with the computation of the amplitude of one point for one particular harmonic; L represents greatest product of H'fthat is less than 3,820 Hz; C represents a scaling factor relating to the number of computations to be performed during the cycle of the basic pitch period; and K represents a time index related to the number of computations to be performed with respect to a particular cycle of the pitch frequency. The terms K, T, and are fully explained in the following portions of the disclosure. The upper limit of the band of frequencies considered has been selected, in the embodiment disclosed, as 3,820 Hz. This use of this upper limit, as opposed to 4,000 Hz, facilitates computation and does not substantially effect the intelligibility or quality of the output produced in its expanded form, equation (1) above can be written as follows for successive periods of time:
M We Referring now particularly to FIG. 5, a pitch or fundamental frequency f is illustrated with each of its harmonies (2 3f, 4f...nf) included in a speech-band of frequencies having a top frequency of 3,820 Hz. For purposes of illustration, an output curve 91 is shown which theoretically represents the summation of the pitch frequency with each of its harmonics falling within the prescribed speech-band.
In the embodiment described, the lowest pitchfrequency which is dealt with is 74 Hz, since this corresponds approximately with the lower-end of the band of fundamental or pitch frequencies. It has been decided arbitrarily to compute 256 points during any one complete cycle of a 74 Hz signal and 256 points for each harmonic thereof where the points computed for the harmonics are equally spaced over a time span equal to the period of the fundamental; thus a representative scale, where the pitch frequency is equal to 74 Hz, is set forth in FIG. 5, and as will be fully explained in the material that follows, the pitch frequency on which a computation is based will change. but the computing rate of K 256 will remain constant. In other words, at a pitch frequency of 74 Hz, 256 computations are made in a time-span of approximately l3.5 m sec. (the period of one cycle of a 74 Hz signal). For each harmonic of the 74 Hz pitch frequency, 256 computations are made in the same time span; thus, the time-duration of a point to be computed (for the 74 Hz fundamental and each ofits harmonics) will be:
W=527 1.1. sec.
Since the upper-limit of the voice-band for this embodiment is set at 3.820 Hz, with a fundamental frequency of 74 Hz there will be (38201741 or 5] harmonics lying in the voice-band. The total time of the computation is 52 7 a sec thus the value ofa point for each harmonic or the fundamental is computed in approximately (52.7/5l )or I 03 .1 set.
Examining now the equations (2), (3), and (4) set forth above with respect to FIG. 5, it can be seen that e amplitude of the output curve 91 at a particular time increment t, is computed by providing the correct values of the unknowns and solving a respective equation, thus, if t, equation (3) provides a value for the amplitude of the output signal at the second increment of time ln equations (2), (3), and (4), the portions of the respective equations labeled a, a ,....a,, represent the first harmonic component of the computation, b, b, and b, represent the second harmonic component, and similarly m, m, and m, represent the he computation. Upon close examination, it will also be apparent now that if the respective components a, a, ....a,, are plotted for respective time periods K, that the pitch frequency will be reproduced and that as the number ofincrements K are increased, the accuracy of the reproduction of the sine wave representing the pitch frequency is improved.
The pitch frequencies utilized in this device fall in the range from 74 to 3l0 Hz. Those skilled in the art will recognize that the band of pitch frequencies is normally considered to be approximately 74-330 Hz, but ed slightly without seriously efhe sound produced (when voice of the general equation (1 can be summarily written as follows;
such as 93, relating to at least one of a preselected series original signal which was coded.
To provide an adequate representation of the voice spectrum of the original signal at the output of the A. lnput Means Referring now to FIG. 1, the digitally coded input in formation is applied to an input terminal M which is coupled to an input control-unit [3. The input controlunit 13 operates to synchronize the input information (Spectrum component segment (8.) adds to zero for the value K 256. since the time t, is taken as t +1.)
The total computation time for computing the components X X,, ,..,.X would be only 317 milliseconds, since there are only It computations, i.e., 12 possible harmonics of the pitch frequency that lie between 3 l0 H7. and 3,820 HZ (3,82U/3l0) l2). The total computation time for any X,,,, where the pitch frequeneyis3l()Hz,is12,38 u see, thus the total computation time for till the K time-segments at 3l0 Hz pitch frequency would he 1|? milliseconds (i238 X It) X 256 I 3Vl7 X l0 as compared to the total computation time of 13.5 milliseconds when the pitch frequency was 74 Hz The computation time required to compute each element ofthe equations (5) (8) is still l U] microseconds, as with the previous equations.
Each frame of the digitally coded input information at l5 and includ- 8, a 48bit. ambit, pitch-frequen- The to the input control I3 is control, over line 17 to the me of the serial input-data is pulse from lead 19. on a hitin the converter such that the data received by the converter over line [7 is synchronized "to the operation of the input means. Additionally, a
signal corresponding to the synchronous bit associated with each frame input data is coupled through a lead 16 to the amplitude buffer-register 22, to the pitchfrequency buffer-register 26, and to the K-index and synchronization control unit 20. The signal appearing on line 16 is essentially a pulse-train with a repetition rate of 44.44 bps or one pulse every 54 counts of the 2,400 bps clock.
Referring to FIG. 6, the serial-to-parallel converter 18 is of a type well-known to the art relating to digital computer technology.
The converter 18 utilizes flip-flops which are also well-known, and those skilled in the art will recognize that a flip-flop has first and second input connections, first and second output connections, generally labeled Q and 6 (not Q a clock input which operates in response to a pulse applied thereto to set the data at the input to the output, and a reset connection which operates in response to a pulse applied thereto to clear the output of the flip-flop. Flip-flops are too well known in the art to require more than the general description provided. Additionally, a one or high referred to herein implies the presence of a DC voltage of a given magnitude, and a low or zero refers to the absence of a voltage. In the embodiment illustrated, a voltage of volts DC is used as a one. Essentially, a first output connection of each flip-flop corresponds to the first input connection of the same flip-flop, and similarly, a second output connection corresponds to the second input connection, such that when a timing pulse is applied to a clock input of the flip-flop, the output changes state to a condition corresponding to the condition at the input at the time the timing pulse was applied.
The serial data on line 17 is coupled to the input of converter 18 wherein the serial signal is divided into two parallel paths l7, l7aone path 17a including an inverter 2i, and each of the parallel paths are applied directly to respective input connections of a first flipflop 23 of a group of 54 parallel-connected, flip-flops 23. The first flip-flop 23 includes a first input connection to which line 17 is coupled and a second input connection to which line 17a is coupled; however, the second coupling is through the inverter 21, such that if one bit of the input serial data is a one, the one is applied directly to the first input-connection, and a zero is applied to the second input connection, Conversely, if a zero is applied to the first input connection, a one is applied to the second input connection. The output connections of the first flip-flop 23 are coupled to the input connections of the second flip-flop 23 and so on through the remaining flip-flops of the group. The lead 19 is coupled to the clock input of each flip-flop 23 in the string, Thus, where each set-reset input is pulsed simultaneously at a rate of 2,400 pulses-per-second by the clock signal on line 19, the 2,400 bps input data on line [7 is stepped serially through the flip-flops 23, and at the end of each 54 consecutive steps, the serial bits clocked into the first output-connection of each flipflop corresponds to 21 respective bit of the 54-bit frame of input data, as shown in FIG. 2. Thus, a lead, such as 24, is coupled to the first output-connection of each respective flip-flop 23 to provide the desired paralleldata output from the converter l8.
As shown in FIG. 2, the first bit of data to enter the converter 18 with respect to time is the first bit of the six-bit word related to the pitch frequency of the frame. The last word entering the converter 18 is a three-bit word representative of the energy level of the harmonics located in the l6th segment of the voice band, and this three-bit word includes a synchronization bit which is actually the last bit in the frame. For this reason, the amplitude of the energy level associated with this last word is treated in the synthesizer as having only two significant bits.
Referring now to FIG. 7, the 48 bits of amplitude information are coupled to the amplitude buffer-register 48 through parallel leads 24 and are coupled interiorly of the register to input of flip-flips 27. As previously explained, a signal on line 16 corresponds to the occurrence of the synchronization bit in each word frame, such as 190 of FIG. 2, and this signal is applied to the clock input of each respective flip-flop 27, simultaneously. Thus, the output of each flip-flop 27 is set in accordance with the data on its input and is set at a time when a complete frame of data is available in parallelform from the serial-to-parallel converter 18; therefore, the parallel data is stored in buffer-register 22 for a time-period corresponding to the frequency of occurrence of the synchronization pulse on line 16 or 22.5 milliseconds. A separate lead, such as 25, is coupled to the noninverted output (Q) connection of each flipflop 27 and is coupled to the envelope register 30 (FIG. 1) for use therein at a subsequent time. The buffer-register 22 operates to store the amplitude data while a new frame of serial input data is being converted to parallel form by converter 18 and while the last frame of data stored in the register 22 is being processed by the other circuitry of the synthesizer 10.
Similarly, the six bits of pitch frequency information of each frame is coupled through parallel leads, such as 24, to a pitch frequency buffer-register 26 (FIG. 1). Refer to FIG. 1. Except for the number of flip-flops used therein, the register 26 is substantially identical in operation and construction to the register 22. The output of register 26 includes six parallel lines 31 which are coupled to a frequency data conversion unit 28.
The frequency data conversion unit 28 of FIG. 1 operates to convert the digitally coded input information to binary format and operates to change the frequency format arrangement of the digitally coded input information into a binary format usable in the digital equipment of the synthesizer. Specifically, channel analyzers available at present code the pitchfrequency data substantially in accordance with the following code:
TABLE I Frequency Value (Hz) As will be explained in the following description, it is important to obtain even multiples of the word of the description relating to a pitch frequency in order to obtain binary-language numbers relating to the harmonics of the pitch frequency ofa particular frame. It is common computing practice to double a binary number in Referring to Table I, set forth above, it is easy to see that if word 2 is doubled in accordance with the example, i.e., adding the coded work O000l to itself would result in a word in the code of Table 1 that would correspond to 78 Hz and not 148 Hz (2f). Thus, the conversion from the coded information to standard binary arithmetic units is necessary. A frequency-data conversion unit useful in the embodiment illustrated and for the purpose described is manufactured by the National Semiconductor Company (Model MM422) of Santa Clara, California.
In the process of converting the coded data to binary arithmetic units, still another result is obtained. Referring again to Table l, it is apparent that there exists a substantially linear change in frequency between words 2-64, but not between words l and 2. By converting the coded data to the standard binary arithmetic terms, the nonlinear change which would otherwise disrupt computations is rendered insignificant.
Additionally, the frequency data conversion unit 28 operates to expand the coded data to a nine-bit word, as opposed to the six-bit word of the coded input data. It will be apparent to those skilled in the art that a sixbit word of standard binary arithmetic would not add to 3 l0 Hz. For instance, a standard six-bit binary computing word can be expanded as follows:
Place 1 Place 2 Place 3 Place 4 Place 5 Place 6 i 3 2 t 00 2 2 2 2 2 32 16 8 4 2 t It is common knowledge that a one in, for example, place 3 (OOOIOO) represents the number 4 to the base 10; a l in place 3 and in place 2 (0001 10) would be the number 6 t0 the base l0; and so until there is a l in each of the places 1-6 (l l l I ll) whereupon the number represented is 63, which is also the maximum number that can be represented with one six-bit word; thus, if the binary number is expanded to nine bits (in lieu of 6), the binary number for 3l0 is easily formed (100i It)! It) I, and nine places is the first possible combinzition enabling a representation ofthe number JlO. It follows that the frequency data conversion unit 28 has nine, parallel. output-leads, such as 32, and these leads couple the conversion unit to the frequency storage unit 29 and to the unvoiced detector 33 The frequency storage unit 29 is a storage register in cluding flip-flops and is similar in construction and operations to the amplitude buffer-register 22 and the pitch frequency buffer-register 26, except that in the flip-flop and the noninverted output of each flip-flop is coupled through a respective lead, such as 34. to a l2- bit adder 35. The frequency storage unit 29 operates to store the data input thereto from the conversion unit 28 until such time as the pitch frequency reaches the end the K-index and synchronization control unit 40, as will be shown in the following description, to cause the data stored in the storage unit to be transferred to the adder 35. The timing of the gating signal is set to prevent the the computing portion of the synthesizer 10 at an inopportune moment.
B. Control Means.
The 12-bit adder 35 and the accumulator 36 as a spectrum component generator operate to produce bi nary words corresponding to certain, successive har monies ofthe pitch frequency ofa respective frame The timing and output control unit I2 is the master timing unit for the computing portion of the synthesizer 10. The unit includes a crystal-controlled oscillator and a series of flip-flops which serve as frequency dividers in a manner which is well known to those skilled in the art, such that ten clock-signals are available from the control unit 12 for timing the various circuits of the synchronizer 10. In the embodiment disclosed. clock 0 is 7.76 MHz pulsetrain, clock I is 3.88 MHz, clock 2 is [.94 MHz, clock 4 is 0.97 MHz, and clock 8 is 0.425 MHz, and through connection to the inverted output of each respective flip-flop of the divider. five additional timing signals, each out of phase with a respective one of the above clocks 0-8, are also available Addi tionally, where required, combinations of the above disclosed timing signals are used to generate still other timing signals. For instance, a 1.03 p. sec clock is generated by the combination of clock 2 and clock 4 ln HO. 1, the timing pulses are coupled to the various units by certain ones of ten separate leads, such as 42.
Each bit of the nine bit word is transferred from the section, tions (12) than there are input data bits (9) to allow room for binary expansion of the number The input data bits are coupled to the adder inputs corresponding to the nine least significant bits. Each of the adder sec tions 39 is of a type which is wellknown, and a Fairchild integrated circuit chip model 9304, manufat turer by Fairchild Semiconductor of Mountaln View California, is a typical device useful In this embodi ment. The Fairchild device incorporates two of the respective adder sections, such as 39, in one chip Each adder section 39 includes three inputs, identified as lN l, [N No 2. carry input (C,,,J and two outputs. identified as carry output (C and sum. respectively and the adder sections operate in accordance with the following truth table ADDER TRUTH TABLE IN #1 IN #2 c,,, c SUM o 0 o o 0 o 1 o 1 o 1 o o 1 o 1 1 1 0 1 o o 0 1 1 0 1 1 o 1 1 0 1 o 1 1 1 1 1 it is apparent from the table that if a 1 appears at only one or at each input of the respective inputs, then the sum is l or decimal 2 l, but if any two of the inputs have l's applied thereto, then a l appears at C,,.
An adder-accumulator arrangement illustrative of the operation of this portion of this invention isshown in FIG. 8. The accumulator 36 includes 12 flip-flops 53, and the sum output of each adder section 39 is coupled through a lead 37 to both the inverting and noninverting input connections of a respective flip-flop 53. The noninverting output (Q) of each flip-flop 53 is coupled through a lead 38 to the second input connection (IN,) of a respective adder section 39 and through a second lead, such as 44, to the magnitude comparator 50 (FIG. 1). There are 12 corresponding adders 39 and flip-flops 53 in the two units and the carry input (C of the first adder section is grounded to prevent accidental input of false information. The carry output (C of each respective adder section 39 is coupled directly to the carry input (Cm) 0f the next adjacent adder section, and the C of the last adder section 39 is left open. In the accumulator 36, the clock input of each respective flip-flop $3 is coupled through the lead 42 to the timing and control unit 12 (FIG. 1), and the reset input of each respective flip-flop is coupled through a lead 43 to the K-index and synchronization control unit 40 (FIG. I). As will be described in the material that follows, the pulse on lead 43 is used to reset the accumulator 36 when processing of a particular frame of data is completed. With this description, it will now be apparent that each time a strobe or clock pulse is applied to the lead 42 by the timing and output control unit 12 (FIG. I), that the binary number appearing on leads 34 will be added to itself, such that the binary word at the output leads 44 will increase in even multiples, and therefore will represent successive harmonics of the pitch frequency, i.e., 2f, 3f, 4f, etc. For instance, if the pitch frequency is 74 Hz, the binary word on lead 34 is 0000l00l0l0, on application of the first strobe-pulse the number on lead 44 becomes OOOOlOOlOlOO or l48 (2*+ 2+ 2=4+ 16+ l28= 148).
In the embodiment described, it was decided that an operating frequency range of from 200 Hz to 3,820 Hz would produce the accuracy of sound reproduction desired; thus, 16 convenient bands of frequencies within the voice frequency band selected were chosen for use and are identified as lying between the bandwidth markers set forth below:
BW Marker 0 200 Hz 2 464 3 596 4 12a s 860" 6 992 7 1,135 1; 1,300 9 1,485 o 16 3,820 l7 Recycle The table of channel bandwidths operates to produce on its output leads, such as 46, a seven-bit binary word representative of a respective one of the frequency markers set forth above. When the table 70 is properly signaled, as by a pulse from the envelope update control 60 over a lead 45, the output switches to a seven-bit word representative of the next higher marker frequency until the bandwidth [7 marker is reached, at which time the table recycles, and starts over. As will be shown in the material that follows, the table 70 steps through each of the l7 markers one time during one-two hundred and fifty-sixth of a cycle of the pitch frequency appearing at the output of the frequency storage unit 29.
Only the seven most-significant bits (MSBs) of the output of the accumulator 36 are coupled to the mag nitude comparator 50 by seven parallel leads, such as 44, and the output of the table of channel bandwidths 70 is coupled to the comparator by seven leads such as 46. The comparator 50 operates to compare the words coupled thereto from the table 70 and the accumulator 36, and if the value of the binary word presented by the accumulator is equal to or greater than the value of the binary word presented by the table 70, then the output of the comparator, at lead 47, changes state; for instance, the output may change from zero volts to a substantially constant DC voltage of a few tenths of a volt. Comparators suitable for use in this circuit are availa ble from several sources, and in particular, a pair of National Semiconductor Corporation four-bit compara tors, model DM7200/DM8200, coupled in parallel, are suitable for use in this embodiment.
Referring now to FIG. 9, the comparator 50, the en velope update control 60 and the table of channel bandwidths 70 cooperate to produce the result set forth above. As previously stated, the smallest frequency represented by the output of the table 70 is 200 Hz thus there is always a word on line 46 equal to or greater than 200 Hz. From the timing considerations set forth in the following material, it will be apparent that new data is presented on line 44 only when the output of table 70 equals or exceeds 200 Hz If at a particular' instant, the value of a number represented on line 44 is smaller than 200 Hz, the output of comparator 50 does not change; however, as successive strobepulses are applied to the adder-accumulator comh| nation 35, 36, over lines 42, as previously descnbed, the accumulator output builds up until it eventually represents a frequency which equals or exceeds the 200 Hz magnitude, and at this time the output of the comparator 50 changes state, typically from zero to some positive DC value. The output of the comparator 50 is coupled by a lead 47 to the envelope update 60 and specifically to a NAND-gate 55 located therein The NAND-gate 55 has three inputconnectmns and operates in response to the presence of three posiuve signals, one on each respective input, to produce a negative swing or low at its output. The clock pulses from lead 42 are coupled to the input of gate 55 and are normally high, but periodically swing low for the purpose set forth below. A negative swing at the output of gate 55 is inverted by an inverter 56 and coupled to the input of a digital counter 57 which responds to the application of a positive-going signal at its input to in crease the number represented by its output by one. The output of the digital counter 57 is a four-bit word which has 16 specific combinations of binary digits (0000 through I l l 1), representing the numbers from ll6; thus, the counter output provides an address for the first l6 successive marker frequencies set forth above. When the marker frequency is 200 Hz, the output of the counter is 0000, and when the word on line 44 represents a value equal to or larger than 200 Hz, then the comparator 50 output changes state and the output of the digital counter 57 changes to 000i. This address (0001) is coupled by lines 45 to the table of channel bandwidths 70 and is coupled therein to each of l7 detect-only gates 58. A digital counter of the type described herein is a model 8828i] four'bit binary counter/storage element manufactured by Signetics Corporation, Sunnyvale, California. Each detect-only gate 58, except the l7th, recognizes only one of the [6 possible combinations of the output of the counter 57. The read-only or detect-only memories 58 are of a type which are well-known and a typical integrated circuit chip for use as the read-only gate of this invention is a model MM-422 manufactured by National Semiconductor Company of Santa Clara, California. The output of each readonly memory 58 is coupled to a respective bank 59 of parallel-connected diodes 61. Upon the application of the proper binary word to the input of the respective detect-only gate 58 the output of the gate changes states, typically from positive to zero. Certain diodes 61 are omitted from the bank 59 associated with each gate, and the omission gives the indication of a zero at the output of the bank; thus, a particular sevenhit word is created in association with each respective detect-only gate 58. The output of each respective diode bank 59 is connected in parallel with the respective outputs of other diode banks, and all the bank outputs are coupled through leads 46 to the input of the comparator 50. When the output of the digital counter 57 is increased in value, by one step, the next succeeding detect-only gate 58 is addressed and activated, and the corresponding diode bank 59 produces a binary word representing the next marker frequency. Again, the output of the accumulator 36 (FIG. 1) increases, and the harmonic value thus produced is compared to the new frequency marker until a comparison is again achieved, in which case the entire process is repeated such that the next marker frequency is brought up for comparison.
A pair of timing signals from the timing and output control 12 are applied to respective inputs of the NAND-gate 5S, and, as previously stated, the gate responds to high voltages (ls on each of the gate leads. in this case 3, to cause the envelope update 60 to operate. Specifically, the timing signals are arranged to force the gate 55 to operate when a harmonic of the pitch frequency does not fall within the specific hand. For instance, consider the pitch frequency of I80 H2 and its second harmonic of 360 Hz. Examining the list til marker frequencies set forth above, it is clear that a harmonic of the pitch frequency does not fall within the hand dcl'iiicd h markers 200 Hz and U2 H2, When the processing ol this pitch frequency begins. the signal from the table 70 represents 200 Hz and the signal from the accumulator represents l8l) HZ, thus a compare signal is not generated on line 47. As the accumulator 36 is strobed again, over line 42, the signal at the output of the accumulator goes high, i.e., changes state from zero to a positive voltage, thus indicating that a comparison has been made. After a short delay which allows the circuitry to stabilize, the envelope update 60 operates to cause the table to produce a new output signal, which in our example is now 332 Hz, but notice that the signal from the accumulator 36 is still larger than the signal from the table. This being the case, the counter 57 of the envelope update 60 cannot be made to step, since the input to the comparator 50 does not call for a change at its output on line 47. As a result, the process of cycling bandwidths by units 50, 60 and 70 is halted, and the computation is disrupted. The timing pulses applied to NAND-gate 55 are arranged to cure the problem relating to the lack of harmonics falling in a band, between markers. In the embodiment illustrated, the three inputs to the NAND-gate 55 must be high, each representing ones, to cause the output of the gate to switch low, thereby enabling the circuitry to cause the counter 57 to switch. Thus, timing pulses are arranged on at least one of the lines 42 coupled to the input of the gate 55 such that at least once every cycle of the comparator 50, the voltage on the at least one lead drops to zero for a short period, and if the compare signal has not been generated by a normal compare, i.e., the presence ofa harmonic in the hand, then as the voltage on the at least one lead returns to a high, a false compare is generated, and the counter 57 steps, thus calling up a new bandwidth marker, for example marker 3, which is 442 Hz, and the compare circuitry is then enable to operate in its normal manner.
When the pitch frequency is very high, i.e,, approaching 310 Hz, it is possible to have two bands which have no harmonics lying therein. For this reason, a double pulse arrangement is established on the at least one lead of lines 42 coupled to the NAND-gate 5S, and the pulses come in rapid succession to provide successive false compare signals, if necessary, Similarly, the pulses on the input of gate 55 are arranged to allow time for the comparator 50 to respond, ifa normal compare is experienced.
Since the digital counter 57 has only a four-bit output with 16 possible word combinations, the address of the l 7th marker must be created in some other manner. This input is provided by producing a high voltage, representing a one, from the input line 47. All the outputs from the digital counter 57 are now ones (I l l l), and they are applied to the bandwidth 17 gate which produces a zero out. The output of the bandwidth l7 gate is then inverted and applied to a NAND- gate 63, which is similar to gate 55, such that as the 16th marker frequency is reached, a l is applied to one of the three inputs to the NAND-gate 63, When a compare signal again appears on line 47, indicating that the harmonic signal on lead 44 equals or exceeds 3,330 Hz, a signal representing a one is applied to the second Input to NANllgate 63. The third signal representing a one is applied to the NAND-gate 63 by a clock pulse from the timing and output control unit l2 and is timed to assure that the bandwidth 16 address and bandwidth [6 compare process is complete. When the third signal is applied to the NAND-gate ()3. the gate switches to a zero output which in turn sets a flip-flop 64 to produce an output one to the respective diode bank 59, which produces the proper bandwidth 17 comparison signal out of the bank, in the manner previously described. As
will be described in the following material, a pulse is applied to the reset terminal of flip-flop 64 by the K- index and synchronization control 40, thus causing the table 70 to recycle.
The table of channel bandwidths 70 cycles through each of the sixteen bands for each one-two hundred and fifty-sixth part of one cycle of the basic pitch frequency. ln other words, data relating to the pitch frequency and each of its harmonics is generated during each one-two hundred and fifty-sixth part of a cycle of the pitch frequency, thus the digital operation relates to the scheme of compilation set forth above with respect to the general equation (I) and its expansion in equations (2), (3) and (4). The output signal on lead 65 of the envelope update control 60 is coupled to the A register 66 and to the envelope update register 30, andby properly signaling 1% Tits, harmonic amplitude information in the register 30 is related to at least one sine function of the equations (2), (3), and (4).
As is shown in FIG. 1, the output of the comparator 50 is coupled through a lead 47 to the K-index and synchronization control unit 40. The K-index and synchronization control unit 40 operates to produce a bandwidth 17 marker, which indicates the end of the cycle of the 16 bands for one-two hundred and fiftysixth of a cycle of the pitch frequency and provides a means for synchronizing the operation of the K-counter 80, the K-H accumulator 75, the reset signals on line 43, the output accumulator 85, and the digital-toanalog (D/A) converter 86.
Referring to FIG. 10, the K-index and synchronization control 40 includes a first NAND-gate 68 which has 4 input connections. Two of the input connections are coupled to leads 42 from the timing and output control unit 12 while the third lead is coupled to the output of the comparator 50 through a lead 47, and the fourth lead is coupled to the table of channel bandwidths 70 at the noninverting output of flip-flop 64 (FlG. 9), Le, the bandwidth 17 address output. The gate 68 operates in response to high-voltages (ones) on each of its respective inputs to produce a low output (zero). When the bandwidth 17 address is generated in the table of channel bandwidths and the flip-flop 64 (FIG. 9) is set, a high-voltage is generated on line 51 and remains there at least during the processing of the 17th band for the particular cycle in question; therefore, a high appears on one lead of the input of gate 68 during that time. Additionally, high voltages are applied on clock leads 42 coupled to the input of gate 68 at a time corresponding to the completion of the cycle through bandwidth markers ll7, thus providing only a limited span of time during which the bandwidth 17 marker can be generated. The timing described serves to disable the bandwidth 17 marker, except for a preselected time window, to prevent the accidental actuation ofthe bandwidth 17 marker in response to spurious signals which may appear on the line, thereby improving the reliability of the computations during each cycle. Finally, the output of the comparator 50 (FIG.
9) is coupled through a lead 47 to the forth input of the gate 68 (FlG. 10). After the bandwidth 17 address is generated and a compare signal is generated in response thereto, the output of comparator 50 goes positive, as previously described, and the fourth high is applied to the gate 68 to cause the output thereof to switch to zero. The output of gate 68 is coupled to flipflop 67 and sets the flip-flop when the output falls to zero, since the flip-flop 67 has an inverter coupled to its set input. In its set state, the flip-flop 67 has a high on its noninverted output (0) and a low (zero) on its inverted output (6). The noninverted output is coupled to line 52 and to the input of gate 69 and provides the bandwidth 17 marker signal. The inverted output (Q) provides the bandwidth 17 not signal, which is referred to hereinafter, and is coupled to line 43. The bandwidth 17 "not" signal is used to reset various equipment in the synthesizer.
A reset-disable circuit including NAND-gate 87 is coupled between the output of gate 68 and the reset input of flipflop 67. The gate 87 has four inputs, and a first of the inputs is coupled to the output of gate 68. The remaining three inputs to gate 68 are coupled by line 42 to the timing and output control 12. Thus, while the out ut of gate 68 is low, at least one of the inputs on gate 87 is low, and the flip-flop 67 cannot be accidentally reset at the wrong time, i.e., when the bandwidth 17 marker is turned "on." When the output of 68 is high, as when one of the clock pulses on line 42 is removed, and the flip-flop 67 is set to produce the bandwidth 17 marker, as previously described, the flipflop 67 remains set until clock pulses on lines 42 provide the necessary highs on the remaining three lines to cause the output of gate 87 to go low. The low at the output of gate 87 is inverted at the reset input of flipflop 67, and thus, the bandwidth 17 marker is removed. The timing on lines 42 at the input to gates 68 and 87 are arranged to set the pulse width of a respective bandwidth 17 marker.
The noninverted output of flip-flop 67 is coupled to NAND-gate 69, as previously stated, and the output of gate 69 is coupled through an inverter 73 to lead 41. Gate 69 has a second input connection which is coupled to the noninverted output of a flip-flop 71, and the output of gate 69 is coupled to the reset input of flipflop 71. The frame synchronization signal is coupled from the input means (FIG. I) through lead 16 and through an inverter 74 to a first input connection of NAND-gate 72, and a pitch synchronization signal from the K-counter (FIG. I) is coupled through lead 49 to a second input of gate 72. The frame synchronization signal is normally low but is inverted by inverter 74, thus, a positive signal is applied to one input of gate 72 at all times, except when the frame sync signal is present on line 16. The pitch sync signal on line 49 is generated in the K-counter and corresponds to the start of a full-cycle of the pitch frequency (K 0). When the frame sync signal and the pitch sync signal are both present simultaneously, since the frame sync is inverted, the gate 72 is disabled. When a pulse is produced by the K-counter 80 on line 49 at any time, except when there is a frame sync present on line 16, two positive pulses are produced on the input of NAND-gate 72, and a low appears at the output. This low is coupled to the set gate of flip-flop 71 and is there inverted to cause the flip-flop to set. When the flip-flop 71 is set in this manner, a high is produced on lead 88 which is coupled to the input of a NAND-gate 69. When the gate 69 has highs on each of its two inputs, as when there is a bandwidth l7 marker, and when the K- counter 80 (FIG. 1) steps to any position other than K o,the output described, the frame sync pulse (on line 9 16) causes the amplitude information data to shift from the amplitude buffer-register 22 to the envelope register 30. If a change of frame information is called for, as by a pulse on line 41, at the precise moment that the amplitude information is being transferred from the register 22 to the envelope register 30 and before the transfer lines 25 have settled, erroneous data may be recorded in the envelope register, thereby disrupting the operation of further computations by introducing error. Thus, the gate 72 is disabled, as described, to prevent these errors.
The bandwidth 17 marker, on line 52, is coupled to the K-counter 80, the output digital-to-analog converter 86, the scaling multiplier 84, and the accumulator 85. When the output of gate 69 goes low, it is inverted by an inverter 73 to which it is coupled and a positive or high is produced on lead 41 out of the in verter. Additionally, when the output of 69 goes low, the low is coupled through a lead 89 to the reset connection of flip-flop 71 where the signal is inverted to reset the flip-flop, thus removing a high from the input of gate 69. lt is now apparent that the pulse produced on line 41 has a duration which corresponds to the response time of the reset circuit of flip-flop 71.
The disable circuitry associated with flip-flop 71 prevents the occurrence of a K pulse from the K- counter 80 at the same time that a frame synchronization pulse occurs. As previously stated, a pulse on line 41 is coupled to the envelope register 30 to cause the register 30 to load from the register 22. Line 41 is coupled also to the frequency storage unit 29, and the synchronization pulse thereon causes data to transfer from the frequency storage unit 29 to the adder 35. Note that these operations occur only when K 0, since, as previously described, a K 0 pulse is required from the K-counter 80 to enable the generation, in the control unit 40, of the pulse on line 41.
The envelope register 30, FIG. 1, accepts and stores the amplitude data from the amplitude bufi'er-register 22 upon the receipt ofa pulse over line 41 from the K- index and synchronization control unit 40 and is properly a part of the input means 15. Since the pulse on line 41 corresponds to the bandwidth 17 marker, it represents the end of a cycle through the 16 segments of the voice band for the one-two hundred fifty-sixth increment of one cycle of the pitch frequency that is present, thus a new frame of amplitude data is called up and stored in the envelope register 30 for use with the next full-cycle ofthe pitch frequency.
Once the amplitude data from a particular frame is stored in the register 30 in response to a pulse on line 41, and a compare signal is generated for each of the 16 bands, the proper amplitude data in register 30 must be synchronized with the respective band to which it re lates. Therefore, each time a new bandwidth marker address is called up in the table of channel bandwidths 70. a pulse is extracted from the input ofthe counter 57 in the envelope update control 60 (FIG. 9) on lead 65, and this pulse strobes the envelope register 30 to cause the amplitude data at the output of the register to change to the next word of amplitude data within the frame in order oftime The circuitry in the envelope register 30 is similar to that of register 22 in that it in eludes Ll group of flip-flops which are pulsed by the signal on line 4| to cause them to set in accordance with the data on their respective inputsv The output of the envelope register 30 is coupled back to its input to provide a path for recirculation of the amplitude words of each frame.
The update signal on line 65 from the envelope update control 60 is coupled to the A register 66, also, and when an envelope update pulse is generated on line 65, the amplitude data on leads 76 at the output of the envelope register 30 is transferred and stored in the A n register 66 and is also circulated through the recirculation path, previously described, and stored again in the envelope register 30, to become the last word in order of time instead of the first. in this manner, the envelope register 30 shifts through each successive word of amplitude data in response to a shift signal from the envelope update 60.
The A register 66 stores the three-bit words of data on line 76 in response to a pulse on line 65. Clock pulses on line 42 are applied to the register 66 to provide a time-window when storage can occur, thus preventing the erroneous storage of data in response to transients. Similar techniques and circuitry for providing the time-window have already been described. The output of the A register 66 is coupled over leads 81 to the table of amplitude modulated trig functions 90.
C. Means for Computing Preliminary Sine Data.
The K-counter 80 is a counter similar to the counter 57 (FIG. 9) previously described, and is a commercially available unit. The basic difference between the counter 80 and the converter 57 is the counting range or magnitude of the output word which is produced. The K-counter 80 has an eightbit output and can therefore count to a higher level than the counter 57 which has only a four-bit output. Each bandwidth 17 marker pulse on line 52 strobes the K-counter 80 causing it to step. The K-counter 80 is designed to step successively from K= 0 through K= 255 in response to the successive pulses on line 52. When the K counter 80 reaches the K= 0 step, it generates a pulse on line 49 that signals the start of a new cycle of the pitch frequency. The binary output of K-counter 80 is arranged such that it is all zeros (lows) when X 0. Eight parallel-connected logic-gates are coupled respectively to respective ones of the output bit-positions of the K- counter 80, and each gate operates to invert the signal applied to its input, whether it is high or low. As will be recognized by one skilled in the art, the gates can be arranged such that when the output of each gate is a high, and only in this case, a high output is produced. This case occurs only when the K-counter recycles in response to a bandwidth 17 marker, such that its output is all zeros. This high output is applied to lead 49 to signal K 0 to the respective units previously described,
The adder 77 and K-H accumulator are similar in construction and operation to the adder- acumulator combination 35, 36. The output of the K-counter 80 is coupled to the input of adder 77, and the adder 77 is coupled to the accumulator 75 in substantially the same manner that adder 35 is coupled to accumulator 36. Each time the KH accumulator 75 is clocked by a pulse from the timing and output control 12, the binary number at the input to the adder 77 adds to itself. Each time a bandwidth 17 marker is generated on line 52, the K-counter steps, placing a new binary number representing a number from K O to K 255 at the input to the adder, and the bandwidth 17 not" signal on line 43 resets the K-H accumulator 75 at the appropriate time, such that the computation begins again The output of the K-H accumulator 75 is coupled over

Claims (46)

1. A signal synthesizer comprising: input means connected to receive a digital frame from a suitable source, said digital frame containing a plurality of frequency information bits and a plurality of spectrum-segment amplitude information bits; a spectrum component generator connected to receive said frequency information bits from said input means and operative to generate all spectrum components of the frequency identified by said frequency information bits; storage register means connected to said input means and to said spectrum component generator to receive and store said amplitude information bits, and under generation of each spectrum component by said spectrum component generator, to pass a predetermined number Of said amplitude information bits; first means connected to said spectrum component generator and to said storage register to sequentially receive each spectrum component together with the corresponding amplitude information bits and operative to generate a digital signal indicative of a respective point of an amplitude modulated trigonometric function defined by each said spectrum component and the corresponding amplitude information bits; adder means connected to receive the signals from said first means and operative to pass the digital total signal indicative of the sum of the signals from said first means; second means for applying a signal to said spectrum component generator and said adder means and responsive to a preselected limit frequency to cause said adder means to pass said digital total signal and to cause said spectrum component generator to repeat the generation of said spectrum components to thereby cause said first means to generate additional pluralities of digital signals, each indicative of a respective subsequent point of said amplitude modulated trigonometric function; reset means connected to said second means and said input means and operative in response to operation of said second means of preselected number of times to clear said input means for receipt of a new digital frame; and means connected to receive the output of said adder means for generating a time-varying analog signal indicative of said output of said adder means.
2. The signal synthesizer of claim 1 including: comparator means connected to detect generation by said spectrum component generator of all spectrum components of a preselected frequency in each of a plurality of preselected frequency band and operative in response to detection of each said predetermined frequency to activate said storage register means to pass said predetermined number of amplitude information bits.
3. The signal synthesizer of claim 1 wherein said storage register means comprises: recirculating means connected to store said amplitude information bits for subsequent re-use; and clearing means connected to said reset means and operative in response to a signal from said reset means to clear said recirculating means.
4. The signal synthesizer of claim 1 wherein said first means includes: addressing means connected to receive said spectrum components from said spectrum component generator and for emitting a digital signal indicative of a sine wave segment defined by said spectrum components.
5. The signal synthesizer of claim 4 wherein: said addressing means is connected to said second means and is operative in response to signals from said second means to emit a signal indicative of a subsequent segment of the sine wave defined by the spectrum component.
6. The signal synthesizer of claim 5 wherein said first means further includes: memory means addressed by signals from said addressing means and said amplitude information bits and operative to emit a digital signal indicative of a respective point of an amplitude-modulated sine wave.
7. The signal synthesizer of claim 6 wherein: said memory means is a read-only memory.
8. The signal synthesizer of claim 4 further comprising: noise generator means connected to said input means for detecting an ''''all zero'''' frequency indication and operative in response thereto to pass a predetermined noise signal to said addressing means.
9. The signal synthesizer of claim 8 wherein: said noise generator responds to said ''''all zero'''' frequency indication by applying a predetermined frequency to said spectrum component generator and applying to said addressing means a random noise value.
10. The signal synthesizer of claim 1 wherein said first means includes: sine segment generator means connected to receive said frequency information bits from said input means and operative to generate a digital output signal indicative of the sine wave defined by said frequency information bits; and triggering means connected to said sine segment generator means and operative at predetermined intervals to cause said sine segment generator means to pass portions of said digital output signal representing predetermined, sequential segments of said sine wave.
11. The signal synthesizer of claim 10 wherein said first means further includes: segment spectrum component generator means connected to receive said portions of said digital output signal passed by said sine segment generator means and operative to generate a plurality of digital signals each indicative of a spectrum component of the sine wave segment identified by the signals from said sine segment generator means.
12. A signal synthesizer comprising: input means connected to receive a digital frame from a suitable source, said digital frame containing a plurality of frequency information bits and a plurality of spectrum-segment amplitude information bits; a spectrum component generator connected to receive said frequency information bits from said input means and operative to generate all spectrum components to the frequency identified by said frequency information bits; storage register means connected to said input means and to said spectrum component generator to receive and store said amplitude information bits, and upon generation of each said spectrum component by said spectrum component generator, to pass a predetermined number of said amplitude information bits, said storage register means including recirculating means connected to store said amplitude information bits for subsequent re-use and clearing means operative in response to a signal to clear said recirculating means; comparator means connected to detect generation by said spectrum component generator of all spectrum components of a preselected frequency each of a plurality of preselected frequency bands and operative in response to detection of each said predetermined frequency to activate said storage register means to pass said predetermined number of amplitude information bits; first means connected to said spectrum component generator and to said storage register means to sequentially receive each spectrum component together with the corresponding amplitude information bits and operative to generate a digital signal indicative of a respective point of an amplitude-modulated trigonometric function defined by each said spectrum component and the corresponding amplitude information bits; adder means connected to receive the signals from said first means and operative to pass a digital total signal indicative of the sum of the signals from said first means; of second means for applying a signal to said spectrum component generator and said adder means and responsive to a preselected limit frequency to cause said adder means to pass said digital total signal and to cause said spectrum component generator to repeat the generation of said spectrum components to thereby cause said first means to generate additional pluralities of digital signals, each indicative rf a respective subsequent point of said amplitude-modulated trigonometric function; reset means connected to said second means and said input means and to said clearing means of said storage register and operative in response to operation of said second means a preselected number of times to clear said digital input means for receipt of a new digital frame; and means connected to receive the output of said adder means for generating a time-varying analog signal indicative of said output of said adder means.
13. The signal synthesizer of claim 12 wherein said first means includes: addressing means connected to receive said spectrum component from said spectrum component generator and to emit a digital signal indicative of a sine wave segment defined by said spectrum component.
14. The signal synthesizer of claim 13 wherein: said addressing means is connected to said second means and is operative in response To signals from said second means to emit a signal indicative of a subsequent segment of the sine wave defined by spectrum component.
15. The signal synthesizer of claim 14 wherein said first means includes: memory means addressed by signals from said addressing means and said amplitude information bits and operative to emit a digital signal indicative of a respective point of an amplitude-modulated sine wave.
16. The signal synthesizer of claim 15 further comprising: noise generator means connected to said input means for detecting an ''''all zero'''' frequency indication and operative in response thereto to pass a predetermined noise signal to said addressing means.
17. The signal synthesizer of claim 16 wherein: said noise generator responds to said ''''all zero'''' frequency indication by applying a predetermined frequency to said spectrum component generator and applying to said addressing means a random noise value.
18. A signal synthesizer comprising: input means connected to receive a digital frame from a suitable source, said digital frame containing a plurality of frequency information bits and a plurality of spectrum-segment amplitude information bits; a spectrum component generator connected to receive said frequency information bits from said input means and operative to generate all spectrum components of the frequency identified by said frequency information bits; storage register means connected to said input means and to said spectrum component generator to receive and store said amplitude information bits, and upon generation of each spectrum component by said spectrum component generator, to pass a predetermined number of said amplitude information bits; first means connected to said spectrum component generator and to said storage register to sequentially receive each spectrum component together with the corresponding amplitude information bits and operative to generate a digital signal indicative of a respective point of an amplitude modulated trigonometric function defined by each said spectrum component and the corresponding amplitude information bits, said first means including addressing means connected to receive said spectrum components from said spectrum component generator and for emitting a digital signal indicative of a sine wave segment defined by said components and memory means addressed by said sine wave segment signals and said amplitude information bits and operative to emit the digital signals indicative of a respective point of an amplitude-modulated trigonometric function; noise generator means connected to said input means for detecting an ''''all-zero'''' frequency indication and operative in response thereto to pass a predetermined noise signal to the addressing means of said first means, said noise generator responds to said ''''all-zero'''' frequency indication by applying a predetermined frequency to said spectrum component generator and applying to said addressing means a random noise value; adder means connected to receive the signals from said first means and operative to pass a digital total signal indicative of the sum of the signals from said first means; second means for applying a signal to said spectrum component generator and said adder means and responsive to a preselected limit frequency to cause said adder means to pass said digital total signal and to cause said spectrum component generator to repeat the generation of said spectrum components to thereby cause said first means to generate additional pluralities of digital signals, each indicative of a respective subsequent point of said amplitude-modulated trigonometric function; reset means connected to said second means and said input means and operative in response to operation of said second means a preselected number of times to clear said input means for receipt of a new digital frame; and means connected to receive the output of said adder means for generating a time-varying analog signal indicative of said output of said adder means.
19. The signal synthesizer of claim 18 wherein: said memory means is a read-only memory.
20. A signal synthesizer comprising: input means connected to receive a digital frame from a suitable source, said digital frame containing a plurality of frequency information bits and a plurality of spectrum-segment amplitude information bits; a spectrum component generator connected to receive said frequency information bits from said input means and operative to generate all spectrum components of the frequency identified by said frequency information bits; storage register means connected to said input means and to said spectrum component generator to receive and store said amplitude information bits, and upon generation of each spectrum component by said spectrum component generator, to pass a predetermined number of said amplitude information bits; first means connected to said spectrum component generator and to said storage register to sequentially receive each component together with the corresponding amplitude information bits and operative to generate a digital signal indicative of a respective point of an amplitude-modulated trigonometric function defined by each said spectrum component and the corresponding amplitude information bits; said first means including addressing means connected to receive said spectrum components from said spectrum component generator and for emitting a digital signal indicative of a sine wave segment defined by said spectrum components; noise generator means connected to said input means for detecting an ''''all-zero'''' frequency indication and operative in response thereto to pass a predetermined noise signal to said addressing means, said noise generator responding to said ''''all-zero'''' frequency indication by applying a predetermined frequency to said spectrum component generator and applying to said segment spectrum component generator a quasi-random noise value associated with each spectrum component generated by said spectrum component generator; adder means connected to receive the signals from said first means and operative to pass a digital total signal indicative of the sum of the signals from said first means; second means for applying a signal to said spectrum component generator and said adder means and responsive to a preselected limit frequency to cause said adder means to pass said digital total signal and to cause said spectrum component generator to repeat the generation of said spectrum components to thereby cause said first means to generate additional pluralities of digital signals, each indicative of a respective subsequent point of said amplitude-modulated trigonometric function; reset means connected to said second means and said input means and operative in response to operation of said second means a preselected number of times to clear said input means for receipt of a new digital frame; and means connected to receive the output of said adder means for generating a time-varying analog signal indicative of said output of said adder means.
21. The signal synthesizer of claim 20 further comprising: means applying said quasi-random noise value to a predetermined number of said sine wave segments and subsequently applying a different quasi-random noise value to succeeding segments of said sine wave segment.
22. A synthesizer for converting consecutive frames of digital words into analog signals, said consecutive frames including frequency and amplitude information relating to consecutive, predetermined instants of time of a first signal, and one word of each frame containing fundamental frequency information bits relating to the fundamental frequency of the original signal at one instant of time, and other consecutive words of each frame containing amplitude information bits of consecutive, predetermined frequency bands of the original signal, said bands having a predetermined relation to the fundamental frequency of the original signal at one instant of time, said synthesizer including: input means for receiving said consecutive frames of digital words; control means responsive to said one word for providing an output indicative of successive multiples of said fundamental frequency; first means connected to said input means and controlled by the output of said control means for producing successive digital signals relating to the fundamental frequency and indicative of the amplitude denoted by said other digital words of a frame, said means including memory means for producing digital signals indicative of predetermined frequency and predetermined amplitude sine waves, and means operatively associated with said memory means and said input means for causing said memory means to transmit successive digital signals indicative of the amplitude and frequency of sine waves denoted by the words of the frame; adder means for receiving the digital signals from said first means and for producing a digital signal corresponding to each frame and indicative of the sum of the signals corresponding to the words of each frame; and a digital-to-analog converter for receiving the output of said adder means and producing an analog signal corresponding to said first signal.
23. The synthesizer of claim 22, wherein frequency bands denoted by said other words of a frame each contain at least one harmonic of the fundamental frequency denoted by said one word of the frame, and means operatively associated with said first means and said input means for causing the digital signals produced by said first means to be indicative of the frequency of the at least one harmonic of the fundamental frequency in each frequency band denoted by said other words and to be indicative of the amplitude energy in each band.
24. The synthesizer claimed in claim 22 wherein said frequency information bits includes unvoiced signals relating to the absence of a fundamental frequency and the synthesizer includes hiss-generator means responsive to the presence of said unvoiced signals for generating a noise signal simulating unvoiced sounds in speech and for applying the noise signal to the adder means.
25. A synthesizer for converting consecutive frames of digital words indicative of the frequency spectrum and amplitude of speech at predetermined spaced consecutive instants of time, one word of each frame containing fundamental frequency information bits of voiced speech at one instant of time and other consecutive words of the frame containing amplitude information bits of successive frequency spectrum segments of the speech at the one instant of time said synthesizer including;: input means for receiving said consecutive frames of digital words; generator means connected to said input means for generating successive digital signals corresponding to successive multiples of the fundamental frequency of each frame; first means responsive to the output of said generator means and connected to said input means for providing successive digital signals indicative of the frequency and amplitude of the spectrum segments denoted by successive ones of said other words of the frame, said means including a table of predetermined successive channel bandwidths and comparator means for comparing the output of said generator means with said channel bandwidths of said table for successively transmitting signals and causing said first means to provide successive signals corresponding to the information denoted by said other words upon the generation by said generator means of digital signals corresponding to the least multiple of the fundamental frequency in each successive channel bandwidth; and adder means for receiving said digital signals from said first means and for providing successive digital total signals indicative of the frequency spectrum and amplitude of speech at the instants of time denoted by the frames of digital words.
26. The synthesizer of claim 25, wherein said first means includes a table of amplitude modulated trigonometric functions and an adder and addressing means operatively associated with said second table and said first means for causing said second table to transmit digital data signals to said adder means.
27. A digital signal synthesizer receiving a bit stream input containing frames of frequency information bits and corresponding spectrum-segment amplitude information bits, comprising: means for generating sine data for the fundamental frequency represented by the frequency-information bits of a frame and each harmonic thereof to an upper limit for each of a plurality of successive time periods, said means for generating including means for generating harmonics of the fundamental frequency represented by a single frame of frequency information bits, means for comparing selected bandwidths with the generated harmonics, and means for generating an indexing signal each time a predetermined condition exists between a selected bandwidth and a generated harmonic; means for combining the sine data for the fundamental frequency and each of the harmonics thereof with the corresponding spectrum-segment amplitude information bits for each of the plurality of successive time periods to generate a plurality of data words individually representing a segment of an output signal; and means for combining the plurality of data words into a single synthesized signal.
28. A digital signal synthesizer as set forth in claim 27 wherein said means for generating an indexing signal includes means for generating a recycling pulse after the selected bandwidths have been compared with the generated harmonics.
29. A digital signal synthesizer as set forth in claim 28 including means for generating a bandwidth marker pulse at the completion of the comparison of the selected bandwidths with the generated harmonics to change the basis for the sine data generated for each successive time period of a frame.
30. A digital signal synthesizer as set forth in claim 29 including means for generating a timing pulse for each of the plurality of successive time periods.
31. A digital signal synthesizer as set forth in claim 30 wherein said means for generating sine data includes means responsive to the indexing signals for generating a memory address for a read-only-memory.
32. A digital signal synthesizer receiving a bit stream input containing frames of frequency information bits and corresponding spectrum-segment amplitude information bits, comprising: means for generating sine data for the fundamental frequency represented by the frequency information bits of a frame and each harmonic thereof up to an upper limit for each of a plurality of successive time periods; means for combining the sine data for the fundamental frequency and each of the harmonics thereof with the corresponding spectrum-segment amplitude information bits for each of the plurality of successive time periods to generate a plurality of data words individually representing a segment of an output signal, said means for combining including means responsive to the sine data and the amplitude information bits and operative to emit a digital signal indicative of a respective point of an amplitude modulated sine wave, and storage register means receiving the spectrum-segment amplitude information bits and operative to pass a predetermined segment of the information bits to said means responsive to the sine data; and means for combining the plurality of data words into a single synthesized signal.
33. A digital signal synthesizer receiving a bit stream input containing frames of frequency information bits and corresponding spectrum-segment amplitude information bits, comprising: means for generating sine data for the fundamental frequency represented by frequency information bits of a frame and each harmonic thereof up to an upper limit for each of a plurality of successive time periods; means for combining the sine data for the fundamental frequency anD each of the harmonics thereof with the corresponding spectrum-segment amplitude information bits for each of the plurality of successive time periods to generate a plurality of data words individually representing a segment of an output signal, said means for combining including an adder for adding the latest data word with an accumulation of all previous data words for a given time period; and means for combining the plurality of data words into a single synthesized signal.
34. A digital signal synthesizer as set forth in claim 33 wherein said means for combining the plurality of data words includes a digital-to-analog converter for producing an analog synthesized signal
35. A digital signal synthesizer as set forth in claim 33 wherein said means for combining the plurality of data words includes means for scaling the accumulated total by a factor inversely proportional to the number of generated harmonics.
36. A digital voice synthesizer receiving a bit stream input containing frames of voice frequency information bits and corresponding spectrum-segment amplitude information bits along with frames of unvoiced frequency information bits and corresponding spectrum-segment amplitude information bits, comprising: means for generating sine data for a frequency represented by voice frequency information bits and each harmonic thereof up to an upper limit and unvoiced frequency information bits and each harmonic thereof up to an upper limit for each of a plurality of successive time periods in a given frame; means for combining the sine data for a fundamental and each harmonic thereof with corresponding spectrum-segment amplitude information bits for each of a plurality of successive time periods to generate a plurality of data words individually representing a segment of an output signal; means for randomly modifying the sine data generated for each frame of unvoiced frequency information bits prior to combining thereof with the corresponding spectrum-segment amplitude information bits, said means for randomly modified including a noise generator connected to said means for generating sine data and responsive to an ''''all-zero'''' series of frequency information bits; and means for combining the plurality of data words of a given frame into a single synthesized signal.
37. A digital voice synthesizer as set forth in claim 36 wherein said means for generating the sine data includes means for generating harmonics of the voiced fundamental frequency represented by a single frame of frequency information bits and for generating harmonics of a predetermined frequency and the harmonics thereof for the ''''all zero'''' unvoiced frame of frequency information bits.
38. A method of synthesizing a signal from a bit steam containing frames of frequency information bits and corresponding spectrum-segment amplitude information bits, comprising the steps of: a. generating sine data for the fundamental frequency represented by the frequency information bits of a frame and each harmonic thereof up to an upper limit, b. combining the sine data for the fundamental frequency and each of the harmonics thereof with the corresponding spectrum-segment amplitude information bits for each of a plurality of successive time periods to generate a plurality of data words individually representing a segment of an output signal for a given frame, c. combining the plurality of data words for a given frame into a synthesized signal, d. recycling each of the previous steps (a), (b) and (c) for each frame of the bit stream to produce a composite synthesized signal, and e. generating control pulses for repeating steps (a), (b) and (c) for each of the bit stream frames.
39. A method of synthesizing a signal as set forth in claim 38 including the step of generating time pulses to establish each of the successive time periods.
40. A method of synthesizing a signal as set forth in claim 38 including the step of comparing selected bandwidths With the generated harmonics and producing an indexing signal each time a predetermined condition exists between a selected bandwidth and a generated harmonic.
41. A method of synthesizing a signal from a bit stream containing frames of frequency information bits and corresponding spectrum-segment amplitude information bits, comprising the steps of: a. generating harmonics of the fundamental frequency represented by a single frame of frequency information bits, b. generating sine data for the fundamental frequency represented by the frequency information bits of a frame and each harmonic thereof up to an upper limit by a comparison of selected bandwidths with the generated harmonic, c. generating a bandwidth marker pulse at the completion of the comparison of the selected bandwidths with the generated harmonics to change the basis for the generated sine data for each successive time period of a frame, d. combining the sine data for the fundamental frequency and each of the harmonics thereof with the corresponding spectrum-segment amplitude information bits for each of a plurality of successive time periods to generate a plurality of data words individually representing a segment of an output signal for a given frame, e. combining the plurality of data words for a given frame into a synthesized signal, and f. recycling each of the previous steps (a), (b), (c), (d) and (e) for each frame of the bit stream to produce a composite synthesized signal.
42. A method of synthesizing a signal as set forth in claim 41 including the step of recycling the comparison of the selected bandwidths with the generated harmonics for each of the successive time periods.
43. A method of synthesizing a signal as set forth in claim 42 wherein the step of combining a sine data with the corresponding spectrum-segment amplitude information bits includes generating a digital signal indicative of a respective point on an amplitude-modulated sine wave.
44. Apparatus for generating synthesized signal from a digital input corresponding to a first signal, said digital input having a plurality of successively presented frames of digital words, and each frame including at least one word relating to a fundamental frequency and a plurality of words relating to the amplitude of the first signal, each amplitude word relating to at least one of a plurality of predetermined bands of harmonics, said signal synthesizer comprising: input means connected to receive said digital input for converting the same for use in the synthesizer; register means coupled to the input means for storing the amplitude words of a respective frame; first accumulator means coupled to the input means for generating preliminary sine words at a rate corresponding to the fundamental frequency of a respective frame; recognition means coupled to the accumulator means and the register means for producing a first output word for each preliminary sine word for which there is a corresponding word of amplitude data available in the register means, and wherein said first output words produce equal, respectively, the sine of the angle represented by the preliminary sine word times the amplitude word; second accumulator means for producing an output word corresponding to the summation of all words produced by the recognition means during a predetermined instant of time corresponding to a band of amplitude data and the magnitude of the fundamental frequency associated therewith; scaling means for balancing the value of the word produced by the accumulator means at one instant of time with respect to the value of the words produced at other instants of time; and output means coupled to the scaling means for converting the digital words produced for each instant of time to an analog voltage, such that the combined voltage produced in response to successive words from the output means comprises a synthesized signal. 45. Apparatus for generating a synthesized signal as set fortH in claim 44 including means for advancing the amplitude data words of each respective frame through the register means and for advancing the register means and the first and second accumulator means to the next frame upon the completion of the processing of a respective frame.
46. A method of synthesizing a signal from a bit stream containing frames of frequency information bits and corresponding spectrum-segment amplitude information bits, comprising the steps of: a. generating sine data for the fundamental frequency represented by the frequency of information bits of a frame and each harmonic thereof to an upper limit, b. combining the sine data for the fundamental frequency and each of the harmonics thereof with the corresponding spectrum-segment amplitude information bits for each of a plurality of successive time periods or generate a plurality of data words individually representing a segment of an output signal for a given frame, c. recirculating the spectrum-segment amplitude information bits through a temporary storage, and timing the recirculation of the amplitude information bits to be available for the corresponding generated sine data for combining therewith into a data word, d. combining the plurality of data words for a given frame into a synthesized signal, and e. recycling each of the previous steps (a), (b), (c) and (d) for each frame of the bit stream to produce a composite synthesized signal.
47. A method of synthesizing a signal from a bit stream containing frames of frequency information bits and corresponding spectrum-segment amplitude information bits, comprising the steps of: a. generating sine data for the fundamental frequency represented by the frequency information bits of a frame and each harmonic thereof up to an upper limit, b. generating a pseudo-random signal for selectively modifying the generated sine data, c. combining the selectively modified sine data for the fundamental frequency and each of the harmonics thereof with the corresponding spectrum-segment amplitude information bits for each of a plurality of successive time periods to generate a plurality of data words individually representing a segment of an output signal for a given frame, d. combining the plurality of data words for a given frame into a synthesized signal, and e. recycling each of the previous steps (a), (b), (c) and (d) for each frame of the bit stream to produce a composite synthesized signal.
US870012A 1969-10-22 1969-10-22 Digital speech signal synthesizer Expired - Lifetime US3697699A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US87001269A 1969-10-22 1969-10-22

Publications (1)

Publication Number Publication Date
US3697699A true US3697699A (en) 1972-10-10

Family

ID=25354615

Family Applications (1)

Application Number Title Priority Date Filing Date
US870012A Expired - Lifetime US3697699A (en) 1969-10-22 1969-10-22 Digital speech signal synthesizer

Country Status (8)

Country Link
US (1) US3697699A (en)
JP (1) JPS521603B1 (en)
CA (1) CA976655A (en)
DE (1) DE2051589C3 (en)
FR (1) FR2088984A5 (en)
GB (1) GB1310036A (en)
IL (1) IL35513A (en)
SE (1) SE367080B (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3865982A (en) * 1973-05-15 1975-02-11 Belton Electronics Corp Digital audiometry apparatus and method
US3974334A (en) * 1972-12-22 1976-08-10 Electronic Music Studios (London) Limited Waveform processing
US4076958A (en) * 1976-09-13 1978-02-28 E-Systems, Inc. Signal synthesizer spectrum contour scaler
US5054072A (en) * 1987-04-02 1991-10-01 Massachusetts Institute Of Technology Coding of acoustic waveforms
US20110046957A1 (en) * 2009-08-24 2011-02-24 NovaSpeech, LLC System and method for speech synthesis using frequency splicing
US20160189725A1 (en) * 2014-12-25 2016-06-30 Yamaha Corporation Voice Processing Method and Apparatus, and Recording Medium Therefor

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1114954A (en) * 1978-07-17 1981-12-22 Arthur J. Tardif Digital sound synthesizer

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3974334A (en) * 1972-12-22 1976-08-10 Electronic Music Studios (London) Limited Waveform processing
US3865982A (en) * 1973-05-15 1975-02-11 Belton Electronics Corp Digital audiometry apparatus and method
US4076958A (en) * 1976-09-13 1978-02-28 E-Systems, Inc. Signal synthesizer spectrum contour scaler
US5054072A (en) * 1987-04-02 1991-10-01 Massachusetts Institute Of Technology Coding of acoustic waveforms
US20110046957A1 (en) * 2009-08-24 2011-02-24 NovaSpeech, LLC System and method for speech synthesis using frequency splicing
US20160189725A1 (en) * 2014-12-25 2016-06-30 Yamaha Corporation Voice Processing Method and Apparatus, and Recording Medium Therefor
US9865276B2 (en) * 2014-12-25 2018-01-09 Yamaha Corporation Voice processing method and apparatus, and recording medium therefor

Also Published As

Publication number Publication date
CA976655A (en) 1975-10-21
DE2051589A1 (en) 1971-06-16
DE2051589C3 (en) 1980-11-27
JPS521603B1 (en) 1977-01-17
IL35513A0 (en) 1970-12-24
GB1310036A (en) 1973-03-14
IL35513A (en) 1974-01-14
FR2088984A5 (en) 1972-01-07
SE367080B (en) 1974-05-13
DE2051589B2 (en) 1980-04-03

Similar Documents

Publication Publication Date Title
US4076958A (en) Signal synthesizer spectrum contour scaler
CA1157564A (en) Sound synthesizer
US3654450A (en) Digital signal generator synthesizer
US3795864A (en) Methods and apparatus for generating walsh functions
US3848115A (en) Vibration control system
US3995116A (en) Emphasis controlled speech synthesizer
US3831015A (en) System for generating a multiplicity of frequencies from a single reference frequency
JPS6131658B2 (en)
US3566035A (en) Real time cepstrum analyzer
US4119005A (en) System for generating tone source waveshapes
US3697699A (en) Digital speech signal synthesizer
US3403227A (en) Adaptive digital vocoder
US3789144A (en) Method for compressing and synthesizing a cyclic analog signal based upon half cycles
CA1172366A (en) Methods and apparatus for encoding and constructing signals
US3703609A (en) Noise signal generator for a digital speech synthesizer
GB1578543A (en) Autocorrelation function generating circuit
US4680479A (en) Method of and apparatus for providing pulse trains whose frequency is variable in small increments and whose period, at each frequency, is substantially constant from pulse to pulse
US3069507A (en) Autocorrelation vocoder
US4064363A (en) Vocoder systems providing wave form analysis and synthesis using fourier transform representative signals
US3822380A (en) Digitally controlled signal generator
US3127476A (en) david
US4245541A (en) Apparatus for reducing noise in digital to analog conversion
US3697892A (en) Digital frequency-shift modulator using a read-only-memory
US3471644A (en) Voice vocoding and transmitting system
US3689844A (en) Digital filter receiver for frequency-shift data signals