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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 4762|回复: 23

看看俺的这个程序,有错误编译不过去[verilog]

[复制链接]
发表于 2004-9-29 14:06:46 | 显示全部楼层 |阅读模式

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

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

x
module shifter64 (DO,64KHZ,RXDATA);
   output  DO[63:0];
   input 64KHZ,RXDATA;   
   inout shifter[63:0];
   reg  shifter[63:0];
always @ (posedge 64KHZ)
   begin
     integer i;
     shifter[0] <= RXDATA;
     for (i=1;i<=63;i=i+1);
        shifter <= shifter[i-1];
        DO <= shifter;
   end
endmodule
发表于 2004-9-29 14:10:15 | 显示全部楼层

看看俺的这个程序,有错误编译不过去[verilog]

[这个贴子最后由atuhappy在 2004/10/11 11:40am 第 1 次编辑]

module shifter64 (DO,64KHZ,RXDATA);
  output  DO[63:0];
  input 64KHZ,RXDATA;   
  reg  DO[63:0];
always @ (posedge 64KHZ)
   DO <= {DO[62:0], RXDATA};
endmodule
好好看看书吧
这样的例子书上很多
 楼主| 发表于 2004-9-29 14:23:01 | 显示全部楼层

看看俺的这个程序,有错误编译不过去[verilog]

谢谢
 楼主| 发表于 2004-9-29 14:54:05 | 显示全部楼层

看看俺的这个程序,有错误编译不过去[verilog]

module shiffterpre(DO,CLK,RXDATA);
  input CLK,RXDATA[2..0];
  output DO;
  inout SHIFTER;
  reg [2..0] SHIFTER[11..0];  
  always @(posedge CLK)
   begin
     SHIFTER[0]=RXDATA;
     SHITER[1] <= SHIFTER[0];
     SHITER[2] <= SHIFTER[1];
     SHITER[3] <= SHIFTER[2];
     SHITER[4] <= SHIFTER[3];
     SHITER[5] <= SHIFTER[4];
     SHITER[6] <= SHIFTER[5];
     SHITER[7] <= SHIFTER[6];
     SHITER[8] <= SHIFTER[7];
     SHITER[9] <= SHIFTER[8];
     SHITER[10] <= SHIFTER[9];
     SHITER[11] <= SHIFTER[10];
     DO <= SHIFTER[11];
   end
endmodule
这个呢?也给指点指点。
发表于 2004-9-30 09:24:31 | 显示全部楼层

看看俺的这个程序,有错误编译不过去[verilog]

你的shifter不该定义为inout
 楼主| 发表于 2004-9-30 10:52:38 | 显示全部楼层

看看俺的这个程序,有错误编译不过去[verilog]

我错了,inout是输入输出口,我没看明白。
 楼主| 发表于 2004-9-30 10:53:38 | 显示全部楼层

看看俺的这个程序,有错误编译不过去[verilog]

谢谢,
module shiffterpre(DO,CLK,RXDATA);
input CLK,RXDATA[2..0];
output DO;
reg [2..0] SHIFTER[11..0];  
always @(posedge CLK)
  begin
    SHIFTER[0]=RXDATA;
    SHITER[1] <= SHIFTER[0];
    SHITER[2] <= SHIFTER[1];
    SHITER[3] <= SHIFTER[2];
    SHITER[4] <= SHIFTER[3];
    SHITER[5] <= SHIFTER[4];
    SHITER[6] <= SHIFTER[5];
    SHITER[7] <= SHIFTER[6];
    SHITER[8] <= SHIFTER[7];
    SHITER[9] <= SHIFTER[8];
    SHITER[10] <= SHIFTER[9];
    SHITER[11] <= SHIFTER[10];
    DO <= SHIFTER[11];
  end
endmodule
这样还有问题马?
发表于 2004-9-30 11:02:37 | 显示全部楼层

看看俺的这个程序,有错误编译不过去[verilog]

reg [2:0] SHIFTER[11:0];  
现在综合器好像已经能综合这样的表述了,也许可以,不过空间似乎大了点reg [2:0] SHIFTER[3:0]应该就可以了;
 楼主| 发表于 2004-9-30 11:31:30 | 显示全部楼层

看看俺的这个程序,有错误编译不过去[verilog]

SHIFTER[11:0];
SHIFTER[3:0]
在功能上有什么区别?
发表于 2004-9-30 15:44:56 | 显示全部楼层

看看俺的这个程序,有错误编译不过去[verilog]

RXDATA[2..0];
这个好像是vhdl吧!
RXDATA[2;0];

SHIFTER[11:0];
SHIFTER[3:0当然有区别了,一个是4位宽度,、一个是12位宽度。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-11-22 14:18 , Processed in 0.037371 second(s), 9 queries , Gzip On, Redis On.

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