集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 1363|回复: 0

请问下下面的语句可以通过通过综合吗

[复制链接]
aouo1987 发表于 2011-3-28 21:28:39 | 显示全部楼层 |阅读模式
module gcd(clk,x_i,y_i,go_i,d_o);
parameter N=6;
input[N-1:0] x_i,y_i;
input clk, go_i;
output[N-1:0] d_o;

parameter s0=3'b000,s1=3'b001,s2=3'b011,s3=3'b111,
          s4=3'b101,s5=3'b100,s6=3'b110;
reg[N-1:0] d_o;                          
reg[2:0] current_state,next_state;
reg[N-1:0] x,y,r;


always @(posedge clk)
current_state<=next_state;
always@(current_state or x_i or y_i or go_i or x or y or r)
  case( current_state )
   s0:if(go_i)
           next_state<=s1;
                else next_state<=s0;
        s1:if(x_i>=y_i)
           next_state<=s2;
                else next_state<=s3;
        s2:begin next_state<=s4;end
        s3:begin next_state<=s4;end
        s4:if(y>0)
           next_state<=s5;
                else next_state<=s6;
        s5:begin next_state<=s4;end
   s6:begin next_state<=s0;end
default:next_state<=s0;
endcase       
always @(negedge clk)
case(current_state)
   s2:begin x=x_i;y=y_i; end
        s3:begin x=y_i;y=x_i; end




        s5:begin r=x%y;x=y;y=r; end
        //求余可以直接这么做吗?

               s6:begin d_o=x; end
        default: ;
       
endcase
       


endmodule
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

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

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2025-6-22 15:12 , Processed in 0.122689 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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