WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Niederwertigstes Bit eines Signals verrauschen

 

MartinS
Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 21.10.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.11.2009, 12:10     Titel: Niederwertigstes Bit eines Signals verrauschen
  Antworten mit Zitat      
Hallo,
ich möchte gerne das niederwertigste Bit eines Sinus-Signals verrauschen (siehe angehängtes Bild). Kann mir jemand einen Tip geben, wie ich das am besten mache? Der Screenshot macht so natürlich keinen Sinn, aber ich hoffe man kann erkennen worauf ich hinaus will.

Das ganze Modell existiert auch als Variante mit Double-Datentypen. Für dieses Modell würde ich gerne das gleiche Rauschsignal verwenden, weil ich das Double- mit dem Fixpunkt-Modell vergleichen möchte.

Würde mich freuen, wenn mir da jemand eine Idee geben könnte.

Gruß,
Martin

sine_signal_add_noise.png
 Beschreibung:

Download
 Dateiname:  sine_signal_add_noise.png
 Dateigröße:  10.7 KB
 Heruntergeladen:  665 mal
Private Nachricht senden Benutzer-Profile anzeigen


MartinS
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 21.10.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.11.2009, 10:58     Titel:
  Antworten mit Zitat      
Das mit dem Verrauschen habe ich inzwischen hinbekommen, allerdings bin ich noch nicht ganz zufrieden.
Ich benutze einen Pseudo-Zufallsgenerator und verrausche mit einem XOR das niederwertigste Bit. Wie man auf dem angehängten Screenshot sehen kann, benutze ich einen Data Type Conversion Block zum Umwandeln des Datentyps. Gibt es eine Möglichkeit den Ausgangsdatentyp des Konverters automatisch auf den Datentyp des SineIn-Signals einzustellen?

Gruß,
Martin

sine_signal_add_noise1.png
 Beschreibung:

Download
 Dateiname:  sine_signal_add_noise1.png
 Dateigröße:  31.5 KB
 Heruntergeladen:  664 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
MartinS
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 21.10.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.11.2009, 10:01     Titel:
  Antworten mit Zitat      
Also falls doch mal irgendwann jemand das gleiche Problem haben sollte, hier mal eine Lösung, wie man das Bit verrauschen kann. Die Lösung vom letzten Post verrauscht nicht das Niederwertigste Bit, sondern das Bit mit der Wertigkeit 2^0.

Hier ist der Embedded Matlab Code:
Code:

function NoiseSignalOut = fcn(NoiseSignal)
%#eml

NT = numerictype(1,16,14);
FM = hdlfimath;

InternalSignal = fi(0, NT, FM);
NoiseSignalOut = bitset(InternalSignal, 1, NoiseSignal);
 


sine_signal_add_noise2.png
 Beschreibung:

Download
 Dateiname:  sine_signal_add_noise2.png
 Dateigröße:  4.23 KB
 Heruntergeladen:  647 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.