HES Praktikum, Aufgabe 7
Klangfarben

Aufgabenstellung

Der Synthesizer soll fuer jede der 16 Stimmen getrennt eine eigene Klangfarbe liefern koennen (er soll "16-fach multitimbral" werden).

Prinzip

Die Klangfarbe eines Tones (d.h. sein Obertonspektrum) kann auf viele Arten geformt werden. Wir wollen verschiedene Kurvenformen erzeugen, die einen unterschiedlichen Obertongehalt haben. Der urspruenglich vorliegende Saegezahn ist obertonreich und klingt deshalb "scharf". Andere, daraus leicht erzeugbare Schwingungen wie z.B. Dreieck oder Rechteck haben einen geringeren Anteil an Obertoenen und klingen deshalb "dunkler". Die Rechteckschwingung laesst sich darueber hinaus durch Einstellen des Tastverhaeltnisses (das ist die Zeit, waehrend der die Ausgangsspannung hoch ist, ins Verhaeltnis gesetzt zur Periodendauer) im Klang veraendern, was eine zusaetzliche Moeglichkeit zur Erzeugung interessanter Toene ist.

Anforderungen

1. Der Synthesizer erlaubt es, pro Stimme eine der drei Schwingungsformen "Saegezahn", "Dreieck" oder "Rechteck" auszuwaehlen. Das Tastverhaeltnis beim Rechteck ist einstellbar.

2. Zur Auswahl der Schwingungsform bei der Stimme v (v = 0..15) dienen die Bits 1 und 0 des Registers (v*16 + 2) mit folgender Zuordnung:
00 Saegezahn
01 Dreieck
10 Rechteck
11 undefiniert

3. Wenn als Schwingungsform "Rechteck" ausgewaehlt wurde, bestimmen die Bits 15 bis 8 des genannten Registers das Tastverhaeltnis, in Einheiten von 1/512 der Periodendauer.

Hinweise

1. Die Erzeugung eines vorzeichenbehafteten Saegezahns aus einem vorzeichenlosen ist bereits bekannt.

2. Die Dreieckschwingung laesst sich aus dem vorzeichenlosen Saegezahn berechnen, indem das hoechste Bit die Komplementierung der restlichen Bits steuert. Was unternehmen Sie gegen die verkleinerte Amplitude?

3. Aus dem vorzeichenlosen Saegezahn kann durch Vergleich mit dem einstellbaren Tastverhaeltnis ein Rechteck mit genau diesem Tastverhaeltnis gewonnen werden.

4. Warum wird das Tastverhaeltnis mit 8 Bit Breite "in Einheiten von 1/512 der Periodendauer" angegeben?

ACHTUNG, WICHTIG!

Sie MUESSEN sich IMMER erst ENTLADEN, bevor Sie irgendeinen Teil des FPGA-Bords beruehren! Nichtbeachtung kann zur Zerstoerung der Bauteile durch statische Aufladung fuehren!