[Pulkstenis] 26.6Mhz no 80Mhz.

P

pjyc

Guest
HI tur. Man ir 80Mhz pulksteni par manu sistēmu. un mums ir nepieciešams, lai saņemtu 26.666Mhz no 80Mhz. (80Mhz / 3 = 26.666Mhz) Zemāk pirmkods ir daļa no 26.6Mhz pulksteni generater. Mēs esam ieguvuši labu rezultātu ar simulatoru. bet reālā sistēma nebija labi. Vai ir kāds, kas var ieteikt anyting ar to darīt? thanks.
Code:
 bibliotēkas IEEE, izmantot ieee.std_logic_1164.all, izmantot ieee.std_logic_unsigned.all, uzņēmumam clk26M ir osta (CLK: in std_logic; outclk: buferis std_logic); end clk26M, arhitektūra P1 clk26M ir signāls skaits: std_logic_vector (2 downto 0); signāls div2: std_logic; signāls div3: std_logic; signāls dlydiv3: std_logic; sākt - Dalīts 2 process (CLK) sākt ja (clk'event un CLK = '1 '), tad div2
 
mēģiniet šo kodu:) Library IEEE, izmantot ieee.std_logic_1164.all, izmantot ieee.std_logic_unsigned.all, uzņēmumam clk26M ir ports (CLK, reset: in std_logic; outclk: out std_logic); end clk26M, arhitektūra P1 clk26M ir signāls skaits : std_logic_vector (1 downto 0); signālu ck1, ck1_dly: std_logic; sākt process (reset, CLK) sākt ja reset = '0 ', tad skaits '0'); ck1
 
I got ur problēma! Ur iekšējās signāliem div2, div3 un dlydiv3 jābūt sync! Jūs neesat pievienojis reset šiem flops! inicializēt tos nulles! Simulācijas piemēram flops, kas dont ir reset, ir spiesti izlases Vales. Izmēģiniet vienu simulācijas ar
Code:
 signāls div2: std_logic: = '1 '; signālu div3: std_logic: = '0'; signālu dlydiv3: std_logic: = '1 ';
Your circuit paradis darbu vai nu simulācijas! Šeit ir labots kodu!
Code:
 bibliotēkas IEEE, izmantot ieee.std_logic_1164.all, izmantot ieee.std_logic_unsigned.all, uzņēmumam clk26M ir osta (CLK: in std_logic; rst_n: in std_logic; outclk: buferis std_logic); end clk26M, arhitektūra P1 clk26M ir signāls skaits: std_logic_vector (2 downto 0); signāls div2: std_logic; signāls div3: std_logic; signāls dlydiv3: std_logic; sākt - Dalīts 2 process (CLK, rst_n) sākt ja (rst_n = '0 '), tad div2
 
Sveiki, varbūt mēģiniet šo, es domāju, ka tas aizņem mazāk vietas un arī strādā augstākās takts frekvenci. Ja kaut ko nepareizi, lūdzu, let me know ... Best Regards,
 
Jā! Nodrošināto ķēdi dBUGGER darbosies pareizi, bez reset! Bet fāzes attiecības starp CLK un clk_out būs nejauša katru reizi, kad ieslēdzat loģiku. Vēl viens trūkums šeit ir gan posdege un neg malu flops ir vajadzīgi!
 
Ja jūs izmantojat Xilinx FPGA, labākais veids ir izmantot CLKDLL ... Kala
 
Paldies visiem. Piereģistrējos, ka dBUGGER ir ķēde darbojas pareizi, bez reset. Man 26.88Mhz no 80Mhz par manu sistēmu. Liels paldies.
 
ja Jums nav jārūpējas ciklu par pulksteni, jūs varat izmantot savu kodu
Code:
 //========================= =========================== / / creat uz 2005/09/07 / / Mērķis: Sadalīt sistēmas pulksteni ar N / / Input CLK, Out likts DivOut / / Mēs get posedge no DivOut citu pieteikumu / / Pieņemsim, ka nepieciešams dalītājs N = 3 //======================== ============================ modulis PulseDiv (CLK, DivOut), ieejas Clk, izejas DivOut, reg [01:00] DivCount; / / 2 ^ 2 = 4> 3 raj DivOut; / / Divider ouput parametrs Dalītājs = 3; / / N = 3 vienmēr @ (posedge CLK) DivOut
 
HI tur. Man ir 80Mhz pulksteni par manu sistēmu. un mums ir nepieciešams, lai saņemtu 26.666Mhz no 80Mhz. (80Mhz / 3 = 26.666Mhz) Zemāk pirmkods ir daļa no 26.6Mhz pulksteni generater. Mēs esam ieguvuši labu rezultātu ar simulatoru. bet reālā sistēma nebija labi. Vai ir kāds, kas var ieteikt anyting ar to darīt? thanks.
Code:
 bibliotēkas IEEE, izmantot ieee.std_logic_1164.all, izmantot ieee.std_logic_unsigned.all, uzņēmumam clk26M ir osta (CLK: in std_logic; outclk: buferis std_logic); end clk26M, arhitektūra P1 clk26M ir signāls skaits: std_logic_vector (2 downto 0); signāls div2: std_logic; signāls div3: std_logic; signāls dlydiv3: std_logic; sākt - Dalīts 2 process (CLK) sākt ja (clk'event un CLK = '1 '), tad div2
 
mēģiniet šo kodu:) Library IEEE, izmantot ieee.std_logic_1164.all, izmantot ieee.std_logic_unsigned.all, uzņēmumam clk26M ir ports (CLK, reset: in std_logic; outclk: out std_logic); end clk26M, arhitektūra P1 clk26M ir signāls skaits : std_logic_vector (1 downto 0); signālu ck1, ck1_dly: std_logic; sākt process (reset, CLK) sākt ja reset = '0 ', tad skaits '0'); ck1
 
I got ur problēma! Ur iekšējās signāliem div2, div3 un dlydiv3 jābūt sync! Jūs neesat pievienojis reset šiem flops! inicializēt tos nulles! Simulācijas piemēram flops, kas dont ir reset, ir spiesti izlases Vales. Izmēģiniet vienu simulācijas ar
Code:
 signāls div2: std_logic: = '1 '; signālu div3: std_logic: = '0'; signālu dlydiv3: std_logic: = '1 ';
Your circuit paradis darbu vai nu simulācijas! Šeit ir labots kodu!
Code:
 bibliotēkas IEEE, izmantot ieee.std_logic_1164.all, izmantot ieee.std_logic_unsigned.all, uzņēmumam clk26M ir osta (CLK: in std_logic; rst_n: in std_logic; outclk: buferis std_logic); end clk26M, arhitektūra P1 clk26M ir signāls skaits: std_logic_vector (2 downto 0); signāls div2: std_logic; signāls div3: std_logic; signāls dlydiv3: std_logic; sākt - Dalīts 2 process (CLK, rst_n) sākt ja (rst_n = '0 '), tad div2
 
Sveiki, varbūt mēģiniet šo, es domāju, ka tas aizņem mazāk vietas un arī strādā augstākās takts frekvenci. Ja kaut ko nepareizi, lūdzu, let me know ... Best Regards,
 
Jā! Nodrošināto ķēdi dBUGGER darbosies pareizi, bez reset! Bet fāzes attiecības starp CLK un clk_out būs nejauša katru reizi, kad ieslēdzat loģiku. Vēl viens trūkums šeit ir gan posdege un neg malu flops ir vajadzīgi!
 
Ja jūs izmantojat Xilinx FPGA, labākais veids ir izmantot CLKDLL ... Kala
 
Paldies visiem. Piereģistrējos, ka dBUGGER ir ķēde darbojas pareizi, bez reset. Man 26.88Mhz no 80Mhz par manu sistēmu. Liels paldies.
 
ja Jums nav jārūpējas ciklu par pulksteni, jūs varat izmantot savu kodu
Code:
 //========================= =========================== / / creat uz 2005/09/07 / / Mērķis: Sadalīt sistēmas pulksteni ar N / / Input CLK, Out likts DivOut / / Mēs get posedge no DivOut citu pieteikumu / / Pieņemsim, ka nepieciešams dalītājs N = 3 //======================== ============================ modulis PulseDiv (CLK, DivOut), ieejas Clk, izejas DivOut, reg [01:00] DivCount; / / 2 ^ 2 = 4> 3 raj DivOut; / / Divider ouput parametrs Dalītājs = 3; / / N = 3 vienmēr @ (posedge CLK) DivOut
 

Welcome to EDABoard.com

Sponsor

Back
Top