题解 | #边沿检测#

边沿检测

http://www.nowcoder.com/practice/fed4247d5ef64ac68c20283ebace11f4

alt

`timescale 1ns/1ns
module edge_detect(
	input clk,
	input rst_n,
	input a,
	
	output wire rise,
	output wire down
);
	
    reg b,c;
    always@(posedge clk or negedge rst_n) begin
        if(!rst_n) begin b<=0;c<=0;end
        else begin
            b<=a;
            c<=b;
        end
    end
    
    assign rise = ((b && ~c)===1) ? 1:0;
    assign down = ((~b && c)===1) ? 1:0;//因为a有一开始的未知态,所以用全等于
endmodule
// `timescale 1ns/1ns
// module edge_detect(
//     input clk,
//     input rst_n,
//     input a,
     
//     output reg rise,
//     output reg down
// );
//     reg a_before;
//     always@(posedge clk or negedge rst_n) begin
//         if(!rst_n) begin
//             a_before<=0;
//             rise<=0;
//             down<=0;
//         end
//         else a_before<=a;
//         rise <= ((a & ~a_before)===1)?1:0;
//         down <= ((~a & a_before)===1)?1:0;//因为a有一开始的未知态,所以用全等于
//     end
// endmodule
全部评论
方案一是锁存一次、方案二是锁存2次 相应的电路图如图所示
点赞 回复 分享
发布于 2022-04-10 16:53

相关推荐

不要停下啊:大二打开牛客,你有机会开卷了,卷起来,去找课程学习,在牛客上看看大家面试笔试都需要会什么,岗位有什么需求就去学什么,努力的人就一定会有收获,这句话从来都经得起考验,像我现在大三了啥也不会,被迫强行考研,炼狱难度开局,啥也不会,找工作没希望了,考研有丝丝机会
点赞 评论 收藏
分享
点赞 评论 收藏
分享
这不纯纯作弊了吗😢😢😢
编程界菜鸡:信这个的这辈子有了,这智商你靠啥都没用
你找工作的时候用AI吗?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务