首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[求助]正玄发生器波形怎么反了?

[求助]正玄发生器波形怎么反了?



我做了个正玄发生器,在QuartusII中编译下载到Cyclone EP1C6Q240C8中后,使用QuartusII中的SignalTap II工具观察波形时,却发现波形上下颠倒了。我的源代码很简单,data_rom是使用LPM_ROM产生的,mif文件中的64个数据也没有错误。请问这是为什么,哪里出了问题?

源码:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity singt is
port( clk : in std_logic;
          dout : out std_logic_vector(7 downto 0));
end;
architecture dacc of singt is
       
        component data_rom
        port( address : in std_logic_vector( 5 downto 0);
                inclock : in std_logic;
                q : out std_logic_vector(7 downto 0));
        end component;
       
        signal q1 : std_logic_vector(5 downto 0);
       
        begin
        process(clk)
        begin
                if clk'event and clk='1' then
                        q1<=q1+1;
                end if;
        end process;
       
        u1 : data_rom port map(address=>q1,q=>dout,inclock=>clk);

end;
在SignalTapII中的波形图:


 



 

若非LUT数据有问题,就是起始相位没有锁住,可以看看SignalTap II的触发条件。
只是好奇:正弦波上下反了,有什么问题?
-= UESTC - legendbb =-
如果你的上下颠倒不是翻转的话,还有一种可能就是,你的数据是二进制补码,而你的DAC是Single Ended的,这样的话你需要把MSB反转过来。
-= UESTC - legendbb =-
确实有可能是编码的问题
上下颠倒也就是相位差了180度;
mif文件中的64个数据和地址是你期待的关系吗?最好仿真一下看看
美梦成真-->噩梦降临!
返回列表