Homepage   Forum     WEB     BBS  
Thread List  
Forum Guide Map  
Thread Content             
   
DDS Help
Author bubulu   Views 13   Posted at 2008/8/28 06:14  [View In Forum]
anyone please help . iwpjxv
iwpjxv
iwpjxv
tell me the step to come out with DDS iwpjxv
iwpjxv
iwpjxv
120 MHZ iwpjxv
iwpjxv
iwpjxv
8 bit iwpjxv
iwpjxv
iwpjxv
iwpjxv
iwpjxv
iwpjxv
please help
      

Reply No. Replier Total Replies 29   [View All Replies]  [New Reply] Replied at
1 htc2498 Are you using a Xilinx device? Which one?





Try the "DDS Compiler" or "Direct Digital Synthesizer" cores included with Xilinx ISE CORE Generator.





Or build your own DDS. Feed a frequency constant into an ordinary arithmetic accumulator. Connect the accumulator output to the address inputs of a sinewave lookup table ROM. The ROM output is your digital sinewave.
2008/8/28 06:14
2 naoge Xilinx





okies i got my 8bit


but i don know what happen it only show me the wave half way . from 0000 to 0101001


the rest nothing ....


i don know why . any one


help~~ please
2008/8/28 06:14
3 fujun2013 What software are you using to display the wave? If it defaults to unsigned value display, then you should configure it to display signed values (both positive and negative). In ModelSim, right-click the signal's name in the wave window, select Properties, and then explore the various options. 2008/8/28 06:14
4 ct731 err i got a wave and but it only showing iit half way 2008/8/28 06:14
5 gao51755775 err i got my 8 bit signal half way .


it stop and all the way become red line .





there's my test banch





ENTITY testbench IS


END testbench;





ARCHITECTURE behavior OF testbench IS








COMPONENT dds


PORT(


clk : IN STD_LOGIC;


sclr: STD_LOGIC;


SINE: OUT STD_LOGIC_VECTOR(7 DOWNTO 0)


);


END COMPONENT;





SIGNAL clk: std_logic:='1';


SIGNAL SINE: std_logic_vector(7 downto 0);


SIGNAL sclr : std_logic;








BEGIN








uut: dds PORT MAP(





sclr=>sclr,


clk=>clk,


SINE=>SINE


);


sclr <= '1','0' after 0.1 ns;








tb : PROCESS


BEGIN





clk <= not clk after 1 ns;


wait for 1 ns;


END PROCESS tb;








END;





anyone help ~ please:cry:
2008/8/28 06:14
6 anuo2008 What is the name of the software that's showing you the incorrect waveform?





Can you show us a screen image of the malfunction you see?


Have you configured your waveform viewer to show signed (positive and negative) values?





In your VHDL testbench, where is your "DDS" component? If it's a core, which one did you use, and what parameters did you specify to create it?





Your testbench simulates fine in ModelSim 6.3c. I generated an 8-bit DDS core using Xilinx coregen and "DDS Compiler 2.0". The clock is 500 MHz, the sinewave is 120 MHz. Here's a screen image. The vertical scale on the "sine" signal is from -128 to 127:
2008/8/28 06:14
7 naoge MOdelSim XE III/Starter 6.1e - Custom Xilinx


i using Direct Digital Synthesizer 5.0


this is what i get sad
2008/8/28 06:14
8 booksir this is what i got 2008/8/28 06:14
9 yvling err how to check whether the vertical scale on the "sine" signal is from -128 to 127 .


and is there a way you can shift the whole "sine" singal to upper the Zero like moving the whole sine above zero
2008/8/28 06:14
10 knoxville Wow, I didn't expect to see that!





Your 'sine' signal is displayed as simple binary, so it has no vertical scale. Earlier, when you said it was displaying only "half way", I thought you meant in the vertical direction, not in the horizontal direction. My comments about signed and unsigned therefore don't apply.





The Xilinx DDS core shouldn't run at all during the first 100ns, because the FPGA's global reset signal is active. Your signals are somehow active before that time, and then become undefined after a few clock cycles. Also, your signals appear to change on the *negative* edge of the clock instead of the positive edge. Very strange!





Your screen snapshot shows only the first 35ns. Does anything interesting happen after 100ns?





To display the "sine" signal as an analog waveform (like my snapshot), right-click the signal name, click Properties, change the radix to decimal, change the format to analog, change the offset to 128, change the scale to 0.5, and change the height to 128.





I've never seen a malfunction like your display. I don't know what's wrong. Maybe it's an installation/configuration problem between ISE and ModelSim. Be sure you have installed all the available ISE and IP service packs. Which version of Xilinx ISE are you using?





Your screen snapshot looks like a pre-route simulation. Is that correct, or is it a post-route simulation? If it's a post-route simulation, then I don't think any Xilinx device can run the DDS core at 500 MHz, so maybe that's what's wrong. Does ModelSim give you any timing warning messages?





Maybe you could zip up all your project files and upload them somewhere, so someone could try to figure out what's going wrong.
2008/8/28 06:14
 Total Replies 29  Thread Per Page 10
Page 1/3  |<  <<   1 2 3   >>  >| 
Power by rfeda