Frage zu DSP von TI

S

Simone Winkler

Guest
Hallo,

ich arbeite an einem Projekt, bei dem ein F2812-DSP von Texas Instruments
zum Einsatz kommt. Er sitzt auf einem eZdsp-Board mit einem Quarz von 30MHz.

Da das Problem ja eigentlich mehr einem Microcontrollerproblem
entspricht...traue ich mir hier trotz OT zu fragen! :)

Mit diesem DSP wird nun ein externer AD-Wandler angesteuert, das Ausgeben
des Clock-Signals über einen Port-Pin.
Leider ist das ganze zu langsam, pro Setzen/Löschen des Portpins braucht der
DSP 3 Taktzyklen, d.h. für Setzen und Löschen 6 Zyklen. Das entspricht somit
einer maximalen Abtastrate von 30MHz / 6 = 5MHz.

Meine erste Idee (die ich noch nicht ausgeführt habe) ist, das Setzen der
Portpins in Assembler zu schreiben (der restliche Code ist in C).
Allerdings wundert mich das Ganze, denn der 30MHz-Takt sollte eigentlich von
einer PLL auf 150MHz verfünffacht werden. Kann der DSP dann nicht mit dieser
Frequenz Portpins setzen/löschen?

Gibt es noch eine andere (schnellere) Möglichkeit, diesen Takt für den
AD-Wandler vom DSP aus zu generieren?

Danke,
Simone
 
Hallo Simone,

Sind die 30MHz denn nicht abgreifbar? Ein Port Pin als Clock Source ist nicht
schoen und kann auch Jitter verursachen.

Wenn es aber doch sein muss, wuerde ich mal an TI Application Engineering
schreiben, ueber die TI web site. Die sind sehr hilfreich. Es waere schoen, wenn
das bei einigen anderen Firmen auch noch so sein koennte.

Ein weiteres Problem koennte es werden, wenn man tatsaechlich 30MHz Clock haette
muessen die Daten ja auch in dem Tempo abgenommen werden.

Regards, Joerg
http://www.analogconsultants.com
 
Simone Winkler wrote:

Meine erste Idee (die ich noch nicht ausgeführt habe) ist, das Setzen der
Portpins in Assembler zu schreiben (der restliche Code ist in C).
Allerdings wundert mich das Ganze, denn der 30MHz-Takt sollte eigentlich von
einer PLL auf 150MHz verfünffacht werden. Kann der DSP dann nicht mit dieser
Frequenz Portpins setzen/löschen?
Hallo Simone,

ich kenn jetzt deinen DSP nicht genau, da ich einen anderen Typ im
letzten Jahr verwendet habe, aber vielleicht kann ich dir ein bißchen
helfen.
Wird der DSP durch eine interne oder externe PLL getriggert? Bei einer
internen PLL ist der DSP extern zu beschalten. Diese findest du im
Datenblatt.
Bei einer externen PLL könnte diese auch falsch beschaltet sein.

Christoph
 
Aloha,

Simone Winkler schrieb:
ich arbeite an einem Projekt, bei dem ein F2812-DSP von Texas Instruments
zum Einsatz kommt. Er sitzt auf einem eZdsp-Board mit einem Quarz von 30MHz.

Mit diesem DSP wird nun ein externer AD-Wandler angesteuert, das Ausgeben
des Clock-Signals über einen Port-Pin.
Leider ist das ganze zu langsam, pro Setzen/Löschen des Portpins braucht der
DSP 3 Taktzyklen, d.h. für Setzen und Löschen 6 Zyklen. Das entspricht somit
einer maximalen Abtastrate von 30MHz / 6 = 5MHz.

Meine erste Idee (die ich noch nicht ausgeführt habe) ist, das Setzen der
Portpins in Assembler zu schreiben (der restliche Code ist in C).
Allerdings wundert mich das Ganze, denn der 30MHz-Takt sollte eigentlich von
einer PLL auf 150MHz verfünffacht werden. Kann der DSP dann nicht mit dieser
Frequenz Portpins setzen/löschen?
Wenn ich deine Ausführungen richtig deute, sieht es es bischen danach aus,
das du versuchst einen externen AD via Portpin anzubinden und die
Ansteuerung in SW zu schreiben. (?)

Hast du schon mal die Abschnitte über SPI und SCI gelesen?

Einen fröhlichen Tag wünschend
LOBI
 
Simone Winkler schrieb:

Gibt es noch eine andere (schnellere) Möglichkeit, diesen Takt für den
AD-Wandler vom DSP aus zu generieren?
Externer Takt, der (auch, ggf. geteilt) der CPU zugeführt wird.

Gruss Udo
 

Welcome to EDABoard.com

Sponsor

Back
Top