Casio CZ 101

Die Files sind auf beide Foren verteilt, so weit ich das Ueberblicken kann hast du dich nur fuer eins der beiden Foren angemeldet...
 
Der DX7 soll ja auch PD und nicht FM machen. Ist da was dran?

Habe seit heute einen CZ-1 bei mir stehen. Das ist mal ein richtiger Synthesizer, kein Rompler und das Teil klingt dazu auch noch erfrischend anders als analoge Synths

Jörg
 
Naja, eigentlich machen beide einen auf Phasen Modulation, nur die Art wie die Phase Moduliert wird variiert ein wenig...
 
Na da bin ich ja mal froh.

Irgenwo habe ich mal was darüber gelesen, digital-PD ist einfacher zu realisieren als digital-FM, deswegen macht man in PD und schreibt FM obendrauf.

aber egal.

Jörg
 
Quelle:

http://web.archive.org/web/200512251902 ... c/pm-intro

Article 3975 of rec.music.synth:
Path: ulowell!m2c!husc6!cs.utexas.edu!ut-sally!utastro!james
From: james -ÄT- utastro -PUNKT- UUCP (James McCartney)
Newsgroups: rec.music.synth
Subject: Phase Modulation
Keywords: synth
Message-ID: <2773 -ÄT- utastro -PUNKT- UUCP>
Date: 14 Jun 88 16:49:46 GMT
Organization: U. Texas, Astronomy, Austin, TX
Lines: 77


Several people have requested this. Besides, it's good fer ya!

Despite the fact that Yamaha claims to be making FM synthesizers, the
implementation on their chips is actually Phase Modulation. I can testify to
this because I have had a chance to see the data books on these chips.
The difference between FM & PM in a digital oscillator is that FM is added
to the frequency before the phase integration, while PM is added to the phase
after the phase integration. Phase integration is when the old phase for the
oscillator is added to the current frequency (in radians per sample) to get
the new phase for the oscillator. The equivalent PM modulator to obtain the
same waveform as FM is the integral of the FM modulator. Since the integral
of sine waves are inverted cosine waves this is no problem. In modulators
with multiple partials, the equivalent PM modulator will have different
relative partial amplitudes. For example, the integral of a square wave is
a triangle wave; they have the same harmonic content, but the relative partial
amplitudes are different. These differences make no difference since we are
not trying to exactly recreate FM, but real (or nonreal) instruments.
The reason PM is better
is because in PM and FM there can be non-zero energy produced at 0 Hz,
which in FM will produce a shift in pitch if the FM wave is used again as a
modulator, however in PM the DC component will only produce a phase shift.
Another reason PM is better is that the modulation index (which determines the
number of sidebands produced and which in normal FM is calculated as the
modulator amplitude divided by frequency of modulator) is not dependant on
the frequency of the modulator, it is always equal to the amplitude of the
modulator in radians. The benefit of solving the DC frequency shift problem,
is that cascaded carrier-modulator pairs and feedback modulation are possible.
The simpler calculation of modulation index makes it easier to have voices
keep the same harmonic structure throughout all pitches.
The basic mathematics of phase modulation are available in any text on
electronic communication theory.
Below is some C code for a digital oscillator that implements FM,PM,and AM.
It illustrates the difference in implementation of FM & PM. It is only meant
as an example, and not as an efficient implementation.


/* Example implementation of digital oscillator with FM, PM, & AM */

#define PI 3.14159265358979
#define RADIANS_TO_INDEX (512.0 / (2.0 * PI))

typedef struct { /* oscillator data */
double freq; /* oscillator frequency in radians per sample */
double phase; /* accumulated oscillator phase in radians */
double wavetable[512]; /* waveform lookup table */
} OscilRec;


/* oscil - compute 1 sample of oscillator output whose freq. phase and
* wavetable are in the OscilRec structure pointed to by orec.
*/
double oscil(orec, fm, pm, am)
OscilRec *orec; /* pointer to the oscil's data */
double fm; /* frequency modulation input in radians per sample */
double pm; /* phase modulation input in radians */
double am; /* amplitude modulation input in any units you want */
{
long tableindex; /* index into wavetable */
double instantaneous_freq; /* oscillator freq + freq modulation */
double instantaneous_phase; /* oscillator phase + phase modulation */
double output; /* oscillator output */

instantaneous_freq = orec->freq + fm; /* get instantaneous freq */
orec->phase += instantaneous_freq; /* accumulate phase */
instantaneous_phase = orec->phase + pm; /* get instantaneous phase */

/* convert to lookup table index */
tableindex = RADIANS_TO_INDEX * instantaneous_phase;
tableindex &= 511; /* make it mod 512 === eliminate multiples of 2*k*PI */

output = orec->wavetable[tableindex] * am; /* lookup and mult by am input */

return (output); /* return oscillator output */
}

--------------- James McCartney --- Austin, Tx
 
Was ist denn der Unterschied zwischen PM und PD?

Wollte man mit "distortion" damals nur die Rocker angeln? ;-)
 
Ich schaetze mal Distortion, weil der "Traeger" ein Sine-Shaper ist, dessen Phase moduliert wird und Distortion ist im Prinzip nichts anderes als Waveshaping...
Ich hatte mir den Aufbau der CZ-Oszillatoren mal vor ueber 4 Jahren von Martin Fay von STL erklaeren lassen, als er an den Cosmo und erweiterten FM (bzw. PM)-Oszillatoren fuer den VAZ-Modular gearbeitet hat und ein paar Originalsamples zum Vergleich wollte.
 
Das heißt der VZ hat immer schon einen Shaper drin ? während PM erst einmal ohne Shaper als festes Bestandteil arbeitet, es sei denn man macht einen OP zum Shaper ?
 
Ich koennte mir vorstellen dass beim VZ ein Shaper zum erzeugen der Operator-Wellenformen hinter 'nen Sinus-Operator geschaltet wird, praktisch als Ersatz/Alternative fuer das fehlende Feedback. Koennte einfacher zu realisieren sein, und weniger von dem damals noch sehr teuren ROM-Speicher benoetigen, als echte Operator-Wellenformen oder man hat sich erhofft auf diese Weise Yamahas Patente umgehen zu koennen.
Zumindest laesst ich das Verhalten des VZ bei festen niedrigen Traegerfreqeunzen mit Hilfe eines nachgeschalteten Shapers nachbauen.

Beim FS1R kann man mit einem kleinen Trick sogar die Phase des nachgeschalteten Shapers um einen festen Betrag verschieben und auf diese Weise opertonreiche Operatorwellenformen basteln. Dabei hab' ich mir zunutze gemacht, dass bei der PM der Operator bei einer Modulation mit Gleichspannung nur mit einer kurzen Phasenverschiebung reagiert, die Phase des nachgeschalteten Shapers aber dauerhaft verschoben wird.
Auf diese Weise kann man 7 frei verstimmbaren Operatoren (der 8te erzeugt den DC-Offset) auf die schnelle 'nen 90er VA tauglichen Saegezahn verpassen ;-)
 
Ja schade, dass Yamaha keine FS1R Fusion bauen will.
Ich bin auch noch am überlegen. Ich stehe ja eigentlich nicht auf All in one, aber sollte sich evtl. das abzeichnen, was als Option gerade im Raum steht, könnte ich mir eine Oasys besorgen. Aber das ist noch nicht ganz Spruchreif.
Der FM Part wäre aber sicherlich ne feine Sache, obwohl mir die Oasys ja eigentlich immer zu teuer wäre..... Ist noch Träumerei, aber wenn das klappt, bräuchte ich evtl. sogar eine gute Investion.

Der VZ würde dann ja ähnlich wie der FS1R arbeiten - mal als Grundlage die Wellenformungsvermutung.

Das heißt du kannst wahrscheinlich die Phase des Modulators einstellen ? und
Träger bleibt auf einem Wert annährend "Null" bei Nullstellung ?
 
Ich kann die Phase des (meiner Ansicht nach) pro Operator eingebauten Shapers verschieben, auf den ich ja beim FS1R sonst keinen Zugriff hab' und da er keine eigene Frequenz hat, bewegt er sich nicht weiter.
 
Waldorfer schrieb:
Der VZ würde dann ja ähnlich wie der FS1R arbeiten - mal als Grundlage die Wellenformungsvermutung.

Nur was die Erzeugung der Operator-Wellenformen betrifft, ansonsten fehlt dem FS1R fehlt halt die Ringmodulation und dem VZ-1 die Formant-Funktionen, Pitchmodulation pro Operator, Filter und ein grosser Teil der Echtzeitkontrolle ueber div. Parameter...

Die meisten anderen FM-Synths verwenden echte Operatorwellenformen...
 
Summa schrieb:
Ich schaetze mal Distortion, weil der "Traeger" ein Sine-Shaper ist, dessen Phase moduliert wird und Distortion ist im Prinzip nichts anderes als Waveshaping...
Ich hatte mir den Aufbau der CZ-Oszillatoren mal vor ueber 4 Jahren von Martin Fay von STL erklaeren lassen, als er an den Cosmo und erweiterten FM (bzw. PM)-Oszillatoren fuer den VAZ-Modular gearbeitet hat und ein paar Originalsamples zum Vergleich wollte.

Bei den beiden Casio CZ Wellenformen Sägezahn (PM-Sinus-Träger) und Rechteck(PM-Cosinus-Träger) kann ich das nachvollziehen. Bei den anderen 6 Wellenformen ist mir dieses PD aber immer och ein Rätzel.
Wie machen die Casio-CZ`s die z.B. Wellenform Nr. 6?

Jörg
 
Summa schrieb:
Zu den resonanten Wellenform gibt's auf folgender Seite 'ne Erklaerung.

http://homepage.mac.com/synth_seal/html/cz1b.html

Hmm, mein Englisch---> oweia.

Ein Sägezahn entsteht ja weil die erste Hälfte der digital gespeicherten Sinus-Welle gaanz schnell (Hüllkurven-Level = 99) und die zweite Hälfte der Sinus-Welle gaanz langsam ausgelesen wird.

Wie muß eine digital gespeicherte Wellenform aussehen und wie muß diese ausgelesen werden damit eine resoniernede Wellenform wie die Welle Nr. 6 entsteht. Nebenbei, die Wellenformen 6 bis 8 habe ich beim VZ-1 schmerzlichst vermisst.

Jörg
 
Wahrscheinlich basiert die Erzeugung der resoanten CZ-Wellenformen auf Sine Sync und Windowing, der Autor der genannten Seite nennt es eine Form von AM. Mit einer aehnlichen Technik (Sine Syc + Ringmod bzw. AM) hab' ich z.B. beim AN1x (und davor schon bei anderen Synth) schon Voice und wavetableartigen Sounds erzeugt, weil eine aeltere Beschreibung der Erzeugung von resonanten CZ-Wellenform mich praktisch dazu inspiriert hat. Von daher weiss ich dass diese Technik bei bestimmten Einstellungen den resonanten CZ-Wellenformen klanglich sehr nah kommt...

Ich denke es gibt einen Grund warum in der CZ-Anleitung nicht weiter darauf eingegangen wird, eine anfaengertaugliche Erklaerung haette schlicht und einfach den Umfang des Dokuments gesprengt ;-)
 
Wie muß eine digital gespeicherte Wellenform aussehen und wie muß diese ausgelesen werden damit eine resoniernede Wellenform wie die Welle Nr. 6 entsteht.

Ich habe mal Grundlagenforschung ohne voreingenommene Behauptung durchgeführt.

Alle Wellenformen gleichen bei eingestelltem Hüllkurven Level von 00 eine Sinus-Welle. (MultiScope-Plugin Nuendo)

Das ist schon mal die halbe Miete.

Nur wie machen die Casio-Synths aus einem Sinus die 8 voreinstellbaren Wellenformen-Algorithmen.

Jörg
 
Dann faellt dir vielleicht auf dass die resonanten Wellenformen bei Level 00 eben keinen Sinus erzeugen...
 
Stimmt.

Wellenform ("Algorithmus" )7 und 8 ist bei Level "00" keine Sinus-Welle, ich bin ein schlampiger Grundlagenforscher.

Aber trotzdem.

das Wissensproblem muß ausführlich geklärt werden.

Ein Fall für den Moogulator !

Jörg
 
Die Wellenform 6 ist auch verbogen, auch wenn man's nicht ganz so extrem sieht...

Das hoert man an sich schon durch die Schwebung von 2 resonanten CZ-Wellenformen bei 00 erzeugt wird, 2x reiner Sinus erzeugt alles andere als 'ne ordentliche Schwebung...

Probiert das mit dem Sine Sync einfach mal aus: Also Sync mit Slave = Sinus und Master aus dem Mixer drehen und dann wie ueblich die Frequenz des Slave modulieren.
 


Zurück
Oben