Forum: FPGA, VHDL & Co. Delta Sigma Converter: wie ist clock von Deltasigma zu nutzen


von Tomy (Gast)


Lesenswert?

Hallo zusammen,

ich hab eine Frage über clock..

Mein Delta-Sigma AD-Converter gibt 20Mhz-Clock aus. Ich nutze 
Altera-FPGA Cyclon 4E. Das Ganze FPGA-Design läuft mit einem extern 
Oszillator 50MHz.

1. Diese Clock sollte mit einem vorgesehenen Clock-PIN der Cyclon FPGA 
oder ausreichend mit einem IO-Pin verdrahten?

2. Was/wie muss man (timing-constraint) beachten?

Mein Vorgehen: intern über PLL ein system_clock 100MHz erzeugen. Mit 
dieser 100MHz Ckock erkenne ich rising/falling_edge von 
delta_sigma_clock und damit hole ich das valid Data-Stream vom 
DeltaSigma. Dann habe ich 2-clock domain in Design, also der Rest läuft 
bei 50MHz(an der Stelle was muss man dann achten?, 2 clock-fifo? oder 
Ergebnis des DeltaSigma-sinc3-filters mit einem Register 
takt(synchronisiert) mit 50 MHz ?). Ist das eine Lösung?

Wie kann man dierekt nutzen?
z.b.
1
process 
2
begin
3
  wait until rising_edge(20MHz_DeltaSigma_clk);
4
  data_stream_tmp <= DeltaSigma_Dat; -- valid bei rising_clock
5
end process;
6
-- "data_stream_tmp" signal wird dann in 20Mhz domain für Intergration/
7
-- differenciator genutzt.

 vielen Dank im vorraus!

lg Tomy

von tomy (Gast)


Lesenswert?

niemand hat eine Idee? :-(

von Duke Scarring (Gast)


Lesenswert?

Taste mit Deinen 50 MHz die ADC-Taktleitung ab und mach eine 
Flankenerkennung.

Duke

von tomy (Gast)


Lesenswert?

danke für deine Antwort:)

Es ist dann 50mHz/20mHz = 2,5 clock, es kann mit Flankeerkennung noch 
gehen. Wie ist dann wenn ADC-clock größer ist, z.b. 30mHz.

Wieso nutzt man nicht direkt adc-clk in "rising_edge(adc_clk)"?

lg Tomy

von Duke Scarring (Gast)


Lesenswert?

tomy schrieb:
> Wieso nutzt man nicht direkt adc-clk in "rising_edge(adc_clk)"?
Das kannst Du auch machen.
Da wird das Design schön einfach. Voraussetzung ist, daß Dein ADC_CLK 
ständig läuft und der Systemtakt gleich dem ADC-Takt ist.

Duke

von tomy (Gast)


Lesenswert?

Duke Scarring schrieb:
> Voraussetzung ist, daß Dein ADC_CLK
> ständig läuft und der Systemtakt gleich dem ADC-Takt ist.

warum?

Muss der ADC_CLK Input Pin mit einem vorgesehenen FPGA-ClockPin 
verbunden werden? Wenn ja, was kann passieren wenn man das nicht 
hinkriegen?


Vielen Dank!

lg Tom

von Helmut S. (helmuts)


Lesenswert?

Du solltest den Teil din deinem FPGA der diesen Datastrom verarbeiten 
soll mit genau dessen 20MHz laufen lassen. Wenn du das mit einer anderen 
Taktquelle machst (100MHz/5), wirst du immer wieder mal ein Bit(Word) 
verlieren oder eines zweimal abtasten.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.