| sump.org | ![]() |
|
Projekte
Spam Meter
Logikanalysator
VHDL Modell
Protocol
PC Client
Add-Ons
FAQ
History
Password Cracker
Counter
HTTP Sniff
RMI Viewer
TheNet
OnTrack
Silencer
Waterwall
R2eboot
Fotografien
Notizen
Blog
Kontakt
|
FPGA VHDL ModelDiese Seite gibt eine Übersicht über die Hardware-Logik, die in den FPGA geschrieben wird. Der eigentliche VHDL-Code ist im Source Archiv enthalten. (Auf der Hauptseite im Bereich 'Downloads'. Top Level![]() In diesem Top Level Schema fehlen die Module Display und Clockman. Display dient nur Debugging-Zwecken und macht nichts anderes, als 'memoryOut' über Multiplexing auf dem 4-stelligen 7-Segment-Display anzuzeigen. EIA232Erlaubt die Steuerung des Cores über eine EIA232/RS232 Schnittstelle. Das Modul (de-)serialisiert Befehle und Daten und wertet die protokollspezifischen Befehle XON/XOFF aus, die bis Version 0.6 vom Decoder (siehe Core) gehandhabt wurden. SRAMÜbernimmt die Ansteuerung des externen SRAMs. (Adresszähler und Steuerleitungen) CoreDer Core enthält alle "plattformunabhängigen" Module und stellt eine einfache Schnittstelle zum Analyzer zur Verfügung. Durch diese Kapselung ist der Analyzer unabhängig von der verwendeten PC-Schnittstelle und dem Speichertyp. ![]() In diesem Schema fehlen einige Module: Der Trigger nutzt intern Stage und Sync nutzt intern Demux und Filter. Diese drei zusätzlichen Module werden ebenfalls beschrieben. ControllerSteuert die Speicher- und Ausleseoperation. Wenn kein anderer Modus aktiv ist, speichert der Controller Samples. Wenn das Startsignal empfangen wurde, speichert er weitere fwd * 4 Samples und liest danach bwd * 4 Samples aus. Durch die kontinuierliche Speicherung im Normalbetrieb ist es möglich, Daten von vor dem Auslösen des Triggers abzurufen. Hinweis: Ausgelesene Daten von vor dem 'run'-Signal können ungültig sein, wenn der Controller kurz davor umkonfiguriert wurde und nicht ausreichend viele Daten gespeichert wurden, bevor das Signal auftrat. DecoderZuständig für Befehlsausführung. Befehle werden ausgeführt, wenn 'execute' gesetzt ist. Der Receiver hält 'opcode' und 'data' für 10 Taktzyklen. Dadurch sind alle Daten noch verfügbar, nachdem der Befehl dekodiert und an das betreffende Modul geschickt wurde. DemuxDemultiplext 16 Eingangskanäle auf 32 Kanäle, wodurch die Samplingrate für diese Kanäle verdoppelt wird. Die oberen 16 Ausgänge sind 5ns älter als die unteren 16. Dieses Modul ist nur bei voller Geschwindigkeit (100MHz) sinnvoll. Dann lässt sich eine effektive Samplingrate von 200MHz. erreichen. FilterSchneller 32-Kanal Entstörfilter mit Auswertelogik in einer einzigen LUT pro Kanal. Der Filter entfernt alle Pulse, die nur für einen hablen Takt anliegen. Dadurch muss ein Puls mindestens 5-10ns lang sein, um aufgezeichnet zu werden. Diese Zeit ist ausreichend für Sampling-Raten bis 100MHz. FlagsFlag-Register. (Die verschiedenen Flags und ihre Funktion sind in der Protokollbeschreibung aufgeführt.) SamplerErzeugt Samples der Eingangsdaten indem diese mit einer programmierbaren Rate in ein Register geschrieben werden. Die Samplingrate ergibt sich wie folgt: r = f / (d + 1) Dabei ist r die resultierende Samplingrate, f die Frequenz des Systemtaktes und d der Wert, der im divider-Register steht. Ab Version 0.6 kann auch ein externes Taktsignal als Sampling-Takt benutzt werden. Dazu muß external auf '1' gesetzt werden. Das divider-Register wird dann nicht beachtet. StageProgrammable 32 channel trigger stage. It can operate in serial and parallel mode. In serial mode any of the input channels can be used as input for the 32bit shift register. Comparison is done using the value and mask registers on the input in parallel mode and on the shift register in serial mode. If armed and 'level' has reached the configured minimum value, the stage will start to check for a match. The match and run output signal delay can be configured. The stage will disarm itself after a match occured or when reset is set. The stage supports "high speed demux" operation in serial and parallel mode. (Lower and upper 16 channels contain a 16bit sample each.) Matching is done using a pipeline. This should not increase the minimum time needed between two dependend trigger stage matches, because the dependence is evaluated in the last pipeline step. It does however increase the delay for the capturing process, but this can easily be compensated by software. (By adjusting the before/after ratio.) SyncSynchronizes input with clock on rising or falling edge and does some optional preprocessing. (See Filter and Demux above for more details.) TriggerComplex 4 stage 32 channel trigger. All commands are passed on to the stages. This file only maintains the global trigger level and it outputs the run condition if it is set by any of the stages. (See Stage above for more details.) Kommentare
Thompson (Wed, 20 Aug 2008):
BTW: Which application did you use to generate the Model Diagrams?
© 2000-2007 Michael Poppitz
- Letzte Änderung: 7. Januar 2007
|