在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 3610|回复: 12

紧急求助!急啊!帮忙看以下程序啊

[复制链接]
发表于 2004-5-18 14:15:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
singletap:process(sysclk,sysrst)
begin
  if(sysrst='1')then
   sAddsubOut<=(others=>'0');
   lCodeData <='0';
elsif (sysclk'event and sysclk ='1')then
   lcodedata<=Incode;
   if(lCodedata='0') then
    sAddSubOut<=sprevtap+sIndata;
   end if;
end if;
end process SingleTap;
发表于 2004-5-18 14:32:27 | 显示全部楼层

紧急求助!急啊!帮忙看以下程序啊

看了,有什么问题?
发表于 2004-5-18 18:43:55 | 显示全部楼层

紧急求助!急啊!帮忙看以下程序啊

没有什么问题啊!
发表于 2004-5-19 09:45:42 | 显示全部楼层

紧急求助!急啊!帮忙看以下程序啊

我感觉第四句怪怪的,再审视审视
 楼主| 发表于 2004-5-19 10:32:09 | 显示全部楼层

紧急求助!急啊!帮忙看以下程序啊

各位能将程序解释一下吗?看不懂啊!万分感激!
发表于 2004-5-19 12:15:29 | 显示全部楼层

紧急求助!急啊!帮忙看以下程序啊

第4句是给变量全部赋0
 楼主| 发表于 2004-5-19 13:45:08 | 显示全部楼层

紧急求助!急啊!帮忙看以下程序啊

再请问:
匹配滤波器程序如下:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
use ieee.std_logic_arith.all;
entity mf is
generic(
   iIndatawidth   : integer:=8;
   ioutdatawidth  : integer:=16;
   ioversamplerate :integer:=16;
   inumofchips    :integer:=128
);
port(
incode :in std_logic;
indata :in std_logic_vector (iIndatawidth-1 downto 0);
sysclk :  in std_logic;
sysrst  : in std_logic;
result  ut std_logic_vector (ioutdatawidth-1 downto 0)
);
end mf;

architecture virtex of mf is
type resultarray is array (inumofchips-1 downto 0)
  of std_logic_vector(ioutdatawidth-1 downto 0);
signal zero     :std_logic_vector(ioutdatawidth-1 downto 0);
signal loutcode :std_logic_vector(inumofchips-1 downto 0);
signal lresult  :resultarray;
component mf_parallel_tap
   generic(
      iIndatawidth :integer :=8;
      ioutdatawidth :integer :=16;
      ioversamplerate : integer :=16
      );
   port(
     incode  :in std_logic;
     indata  :in std_logic_vector(iIndatawidth-1 downto 0);
     prevtap :in std_logic_vector(ioutdatawidth-1 downto 0);
     sysclk  :in std_logic;
     sysrst  :in std_logic;
     outcode ut std_logic;
     result  ut std_logic_vector(ioutdatawidth-1 downto 0)
     );
end component;
begin
zero<=(others=>'0');
firsttap : mf_parallel_tap
generic map(
  iIndatawidth =>iIndatawidth,
  ioutdatawidth=>ioutdatawidth,
  ioversamplerate=>ioversamplerate
)
port map(
  incode =>incode,
  indata=>indata,
  prevtap =>zero,
  sysclk =>sysclk,
  sysrst =>sysrst,
  outcode =>loutcode(0),
  result => lresult(0)
);
InstTaps: for I in 1 to inumofchips-1 generate
  Taps :mf_parallel_tap
   generic map(
    iIndatawidth =>iIndatawidth,
    ioutdatawidth =>ioutdatawidth,
    ioversamplerate=>ioversamplerate
   )
  port map(
     Incode => loutcode(I-1),
     Indata=> Indata,
     Prevtap =>lresult(I-1),
     sysclk => sysclk,
     sysrst =>sysrst,
     outcode => loutcode(I),
     result =>lresult(I)
  );
end generate InstTaps;
Generateresult : Result<=lResult(inumofchips-1);
end virtex;
在编译时:当inumofchips=128时,编译的进度条走了一点一就停住了。也不报错,也不能通过。
         当inumofchips=16时就能通过
在波形仿真时,输出为0。
请问,这是为什么?多谢!
发表于 2004-5-19 13:57:38 | 显示全部楼层

紧急求助!急啊!帮忙看以下程序啊

程序应该没什么问题。
主要是你分配这么大的存储空间,你机子的内存被吃光了,所以编译起来灰常灰常慢。:)
 楼主| 发表于 2004-5-19 14:06:03 | 显示全部楼层

紧急求助!急啊!帮忙看以下程序啊

你说的是inumchips太大吗?
那波形仿真为什么有出问题呢?
发表于 2004-5-19 15:23:49 | 显示全部楼层

紧急求助!急啊!帮忙看以下程序啊

这个你就要自己查查看了,也许是原理上什么地方有错,如果一点错也没有,仿真也就没意义了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-4-16 08:38 , Processed in 0.040074 second(s), 11 queries , Gzip On, MemCached On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表