打印
[VHDL]

菜鸟就是菜鸟,连ISE测试文件都没搞好

[复制链接]
4186|21
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
crjab|  楼主 | 2013-7-19 16:30 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
se, ST, ni, logic, TI
本帖最后由 crjab 于 2013-7-19 16:33 编辑

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

---- Uncomment the following library declaration if instantiating
---- any Xilinx primitives in this code.
--library UNISIM;
--use UNISIM.VComponents.all;

entity erfen is
port
(
clock:in std_logic;
clkout:out std_logic
);
end erfen;

architecture Behavioral of erfen is
signal clk:std_logic:='0';
begin
process(clock)
begin
if rising_edge(clock) then
clk<=not clk;
end if;
end process;
clkout<=clk;
end Behavioral;
以上是最简单的一个分频电路程序,其测试文件如下:

LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
USE ieee.std_logic_unsigned.all;
USE ieee.numeric_std.ALL;

ENTITY erfentest IS
END erfentest;

ARCHITECTURE behavior OF erfentest IS

    -- Component Declaration for the Unit Under Test (UUT)

    COMPONENT erfen
    PORT(
         clock : IN  std_logic;
         clkout : OUT  std_logic
        );
    END COMPONENT;
   

   --Inputs
   signal clock : std_logic;

         --Outputs
   signal clkout : std_logic;

   -- Clock period definitions
   constant clock_period : time := 1us;
   constant clkout_period : time := 1us;

BEGIN

        -- Instantiate the Unit Under Test (UUT)
   uut: erfen PORT MAP (
          clock => clock,
          clkout => clkout
        );
   -- Clock process definitions
   clock_process :process
   begin
                clock <= '0';
                wait for clock_period/2;
                clock <= '1';
                wait for clock_period/2;
   end process;

   clkout_process :process
   begin
                clkout <= '0';
                wait for clkout_period/2;
                clkout <= '1';
                wait for clkout_period/2;
   end process;
END;

得出的波形却是这样:(附件里)
请高手看看怎么回事,,,刚接触这块,连一个小小的仿真都没搞定,打击很大啊

bx.png (8.86 KB )

时序图

时序图

相关帖子

沙发
crjab|  楼主 | 2013-7-19 16:34 | 只看该作者
我去 发个帖子都出问题,,祈求牛人快快出现吧~~

使用特权

评论回复
板凳
crjab|  楼主 | 2013-7-19 16:35 | 只看该作者
U状态是未知状态 看了测试文件不知道哪里出问题了  请大神 指教

使用特权

评论回复
地板
ococ| | 2013-7-19 17:07 | 只看该作者
本帖最后由 ococ 于 2013-7-19 17:11 编辑

testbench里面只需要给激励信号也就是输入信号。
把你的 clkout_process整个删掉。
另外把testbench中定义的clock赋初值:
--Inputs
   signal clock : std_logic:='0';
你的模块里面对clkout赋值,testbench也赋值当然输出波形就是未知状态了。

使用特权

评论回复
5
crjab|  楼主 | 2013-7-20 12:28 | 只看该作者
本帖最后由 crjab 于 2013-7-20 12:29 编辑
ococ 发表于 2013-7-19 17:07
testbench里面只需要给激励信号也就是输入信号。
把你的 clkout_process整个删掉。
另外把testbench中定义 ...

感谢您的指正,我把测试文件改成了:
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
USE ieee.std_logic_unsigned.all;
USE ieee.numeric_std.ALL;

ENTITY erfentest IS
END erfentest;

ARCHITECTURE behavior OF erfentest IS

    -- Component Declaration for the Unit Under Test (UUT)

    COMPONENT erfen
    PORT(
         clock : IN  std_logic;
         clkout : OUT  std_logic
        );
    END COMPONENT;


   --Inputs
   signal clock : std_logic:='0';

        --Outputs
   signal clkout : std_logic;

   -- Clock period definitions
   constant clock_period : time := 1us;

BEGIN

        -- Instantiate the Unit Under Test (UUT)
   uut: erfen PORT MAP (
          clock => clock,
          clkout => clkout
        );
   -- Clock process definitions
   clock_process :process
   begin
                clock <= '0';
                wait for clock_period/2;
                clock <= '1';
                wait for clock_period/2;
   end process;

END;
可是得出的波形clockout还是未知 麻烦您再帮我看看 谢谢你


bx.png (2.33 KB )

波形

波形

使用特权

评论回复
6
ococ| | 2013-7-20 14:55 | 只看该作者
我感觉是你的模块和对应的testbench没连接起来吧,你仿真出来的波形只是testbench里面的信号的波形,你应该先综合一下模块,在综合一下testbench。

使用特权

评论回复
7
GoldSunMonkey| | 2013-7-20 15:02 | 只看该作者
ococ 发表于 2013-7-20 14:55
我感觉是你的模块和对应的testbench没连接起来吧,你仿真出来的波形只是testbench里面的信号的波形,你应该 ...

对头啊

使用特权

评论回复
8
GoldSunMonkey| | 2013-7-20 15:02 | 只看该作者
肯定是信号没有链接啊

使用特权

评论回复
9
crjab|  楼主 | 2013-7-20 16:03 | 只看该作者
ococ 发表于 2013-7-20 14:55
我感觉是你的模块和对应的testbench没连接起来吧,你仿真出来的波形只是testbench里面的信号的波形,你应该 ...

论坛上有这么资深的高手肯为菜鸟讲解,实在不多见了  十分感动
可是我已经综合过了呀 是不是这样?

bx.png (15.12 KB )

bx.png

使用特权

评论回复
10
crjab|  楼主 | 2013-7-20 16:04 | 只看该作者
GoldSunMonkey 发表于 2013-7-20 15:02
肯定是信号没有链接啊

初次发帖能得到版主关注 十分荣幸:hug:

使用特权

评论回复
11
GoldSunMonkey| | 2013-7-20 16:41 | 只看该作者
crjab 发表于 2013-7-20 16:04
初次发帖能得到版主关注 十分荣幸

别客气

使用特权

评论回复
评分
参与人数 1威望 +4 收起 理由
xjsxjtu + 4
12
GoldSunMonkey| | 2013-7-20 16:41 | 只看该作者
crjab 发表于 2013-7-20 16:03
论坛上有这么资深的高手肯为菜鸟讲解,实在不多见了  十分感动
可是我已经综合过了呀 是不是这样?

是呀,没问题

使用特权

评论回复
评分
参与人数 1威望 +4 收起 理由
xjsxjtu + 4
13
xjsxjtu| | 2013-7-20 20:04 | 只看该作者
感谢猴哥分析啊

使用特权

评论回复
14
ococ| | 2013-7-20 21:07 | 只看该作者
crjab 发表于 2013-7-20 16:03
论坛上有这么资深的高手肯为菜鸟讲解,实在不多见了  十分感动
可是我已经综合过了呀 是不是这样?

你应该先选择上面的erfentest文件,然后再在下面双击仿真吧。

使用特权

评论回复
15
FangTT| | 2013-7-20 21:11 | 只看该作者
ococ 发表于 2013-7-20 21:07
你应该先选择上面的erfentest文件,然后再在下面双击仿真吧。

学习啦

使用特权

评论回复
16
crjab|  楼主 | 2013-7-21 08:35 | 只看该作者
ococ 发表于 2013-7-20 21:07
你应该先选择上面的erfentest文件,然后再在下面双击仿真吧。

我就是这么做的啊,可是输出还是显示“U”,郁闷死了,,,请问高手有相关的电子文档吗,发给我一份学习一下  本人刚学这个不到两个礼拜 还没仿真出过波形  着实悲催啊  本人邮箱crjab@163.com  谢谢你的指教

使用特权

评论回复
17
crjab|  楼主 | 2013-7-21 08:37 | 只看该作者
GoldSunMonkey 发表于 2013-7-20 16:41
是呀,没问题

那怎么就出不来不来呢???头疼啊,可以把你的邮箱私信给我 我把文件发给你帮我看看吗????希望斑竹大大能抽点时间帮我这个菜鸟中的菜鸟

使用特权

评论回复
18
ococ| | 2013-7-21 18:20 | 只看该作者
crjab 发表于 2013-7-21 08:37
那怎么就出不来不来呢???头疼啊,可以把你的邮箱私信给我 我把文件发给你帮我看看吗????希望斑竹 ...

看你发的图你没有选择正确源文件啊。
你要选择testbench文件再仿真。

使用特权

评论回复
19
GoldSunMonkey| | 2013-7-21 21:09 | 只看该作者
crjab 发表于 2013-7-21 08:35
我就是这么做的啊,可是输出还是显示“U”,郁闷死了,,,请问高手有相关的电子文档吗,发给我一份学习 ...

你没连好啊

使用特权

评论回复
20
GoldSunMonkey| | 2013-7-21 21:09 | 只看该作者
crjab 发表于 2013-7-21 08:37
那怎么就出不来不来呢???头疼啊,可以把你的邮箱私信给我 我把文件发给你帮我看看吗????希望斑竹 ...

你的连接不正常

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

184

帖子

0

粉丝