MyFPGA Forum

 找回密码
 注册
搜索
查看: 3613|回复: 1
打印 上一主题 下一主题

请版主们看一下我这段关于在modelsim仿真中写的textio代码

[复制链接]
跳转到指定楼层
1#
发表于 2010-6-24 09:39:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 培培 于 2010-6-24 09:41 编辑

我之前在百思论坛求助的,可是没有一个人给我回复,很急用的!

LIBRARY ieee  ;
LIBRARY lpm  ;
library std;
use std.textio.all;
USE ieee.std_logic_1164.all  ;
use ieee.std_logic_textio.all;
USE ieee.std_logic_arith.all  ;
USE ieee.std_logic_unsigned.all  ;
--USE ieee.numeric_std.ALL;
USE lpm.lpm_components.all  ;              
   
ENTITY sobel_edge_tb  IS
END ;
--'timescale 1ns/1ns;
ARCHITECTURE sobel_edge_tb_arch OF sobel_edge_tb IS
FILE vector_file:text open read_mode is"TestVectors.txt";
  --line in_vecs;
  SIGNAL lv_gx   :  std_logic_vector (10 downto 0)  := "00000000000";
  SIGNAL gy   :  std_logic_vector (10 downto 0) := "00000000000" ;
  SIGNAL ina   :  std_logic_vector (7 downto 0)  := "00000000";
  SIGNAL lv_gy   :  std_logic_vector (10 downto 0)  :="00000000000";
  SIGNAL inb   :  std_logic_vector (7 downto 0)  := "00000000";
  SIGNAL inc   :  std_logic_vector (7 downto 0) :="00000000" ;
  SIGNAL clk   :  std_logic  :='0';
  SIGNAL deta_f   :  std_logic_vector (11 downto 0)  :="000000000000";
  SIGNAL gx   :  std_logic_vector (10 downto 0)  :="00000000000";
  SIGNAL reset   :  std_logic  :='0';


  COMPONENT sobel_edge  
    PORT (
      lv_gx  : out std_logic_vector (10 downto 0) ;
      gy  : out std_logic_vector (10 downto 0) ;
      ina  : in std_logic_vector (7 downto 0) ;
      lv_gy  : out std_logic_vector (10 downto 0) ;
      inb  : in std_logic_vector (7 downto 0) ;
      inc  : in std_logic_vector (7 downto 0) ;
      clk  : in std_logic ;
      deta_f  : out std_logic_vector (11 downto 0) ;
      gx  : out std_logic_vector (10 downto 0) ;
      reset  : in std_logic );
  END COMPONENT ;
BEGIN
  DUT  : sobel_edge  
    PORT MAP (
      lv_gx   => lv_gx  ,
      gy   => gy  ,
      ina   => ina  ,
      lv_gy   => lv_gy  ,
      inb   => inb  ,
      inc   => inc  ,
      clk   => clk  ,
      deta_f   => deta_f  ,
      gx   => gx  ,
      reset   => reset   ) ;
test_process:process
begin
wait for 10 ns;
variable in_vecs:line;--variable in_vecs_0:std_logic_vector(24 downto 0);
while not endfile(vector_file)loop
readline(vector_file,in_vecs);--?????????????????
read(in_vecs,clk);
read(in_vecs,ina);
read(in_vecs,inb);
read(in_vecs,inc);
end loop;
end process test_process;
END ;

烦请各位大侠们给看看呀,以前没写过测试基准,现在觉得有这样仿真的必要,用网上介绍的textio方法写了一个,但是在modelsim中编译时总是出现以下错误
# ** Error: F:/Sobel_edge/sobel/sobel_edge_tb.vhd(62): near "variable": syntax error
# ** Error: F:/Sobel_edge/sobel/sobel_edge_tb.vhd(71): (vcom-1136) Unknown identifier "in_vecs".
# ** Error: F:/Sobel_edge/sobel/sobel_edge_tb.vhd(72): (vcom-1136) Unknown identifier "in_vecs".
# ** Error: F:/Sobel_edge/sobel/sobel_edge_tb.vhd(73): (vcom-1136) Unknown identifier "in_vecs".
# ** Error: F:/Sobel_edge/sobel/sobel_edge_tb.vhd(74): (vcom-1136) Unknown identifier "in_vecs".
# ** Error: F:/Sobel_edge/sobel/sobel_edge_tb.vhd(75): (vcom-1136) Unknown identifier "in_vecs".
# ** Error: F:/Sobel_edge/sobel/sobel_edge_tb.vhd(84): VHDL Compiler exiting
# E:/altera/90/modelsim_ae/win32/vcom failed.

我觉得还是在line和file处有问题,但是就是改不过来,
2#
 楼主| 发表于 2010-6-24 09:42:13 | 只看该作者
我用的是modelsim 6.5 SE,Altera库是按照永久性添加库的方法加进去的,仿真也通过了的
现在面临的问题是textio,希望有高手给指教一下啊,这个问题困扰了很久了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|MyFPGA

GMT+8, 2025-5-2 11:27 , Processed in 0.036739 second(s), 16 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表