集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 2179|回复: 0

fifo问题急需求解

[复制链接]
闪电 发表于 2011-7-28 10:52:52 | 显示全部楼层 |阅读模式
本帖最后由 fpgaw 于 2011-7-30 13:32 编辑

自己写了个fifo程序!写入数据的速度快于读出数据的速度!我想将流水灯的数据写入fifo(速度快),然后每一秒读出一个数据,但是现象却不对,开始的时候流水灯正常,一个一个的亮,但是一会就不行了,就是隔一个亮一个了!不知道是怎么回事?求解!
写数据程序:
module        write_module
(
        clk,
        rst_n,
        full,
       
        led_data,
        write_en
);

input        clk;
input        rst_n;
input        full;

output        write_en;
output[7:0]        led_data;       

reg        write_en;

always @ ( posedge clk or negedge rst_n )
        if( !rst_n ) write_en <= 1'b0;
        else if( !full ) write_en <= 1'b1;       
        else write_en <= 1'b0;
       
reg[7:0]        led_data;
reg[3:0]        state;

always @ ( posedge clk or negedge rst_n )
        begin
                if( !rst_n ) begin
                        state <= 4'd0;
                        led_data <= 8'h00;
                end       
                else if( !full )
                        case( state )
                                4'd0:        begin  led_data <= 8'h01; state <= state + 1'b1; end
                                4'd1:        begin  led_data <= 8'h02; state <= state + 1'b1; end
                                4'd2:        begin  led_data <= 8'h04; state <= state + 1'b1; end
                                4'd3:        begin  led_data <= 8'h08; state <= state + 1'b1; end
                                4'd4:        begin  led_data <= 8'h10; state <= state + 1'b1; end
                                4'd5:        begin  led_data <= 8'h20; state <= state + 1'b1; end
                                4'd6:        begin  led_data <= 8'h40; state <= state + 1'b1; end
                                4'd7:        begin  led_data <= 8'h80; state <= 4'd0; end
                        endcase               
        end

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

本版积分规则

关闭

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

QQ|小黑屋|手机版|Archiver|集成电路技术分享 ( 京ICP备20003123号-1 )

GMT+8, 2024-5-14 19:23 , Processed in 0.070090 second(s), 24 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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