A brief discussion on synchronous reset and asynchronous reset[Copy link]
Hello everyone, when it comes to synchronous reset and asynchronous reset, we have to talk about the word reset. In the design of digital logic circuits, the circuit is started by reset, and reset is like the "pacemaker" of digital circuits. In the design, there are mainly three types of resets: one is no reset: born strong, start when powered on; the second is asynchronous reset: a kind person passes by and kicks it casually, pacing, which is completely unprepared and may be revived at any time; the third is synchronous reset: professional rescue team, hold the chest with your hand, and hold it without pacing. Don't leave until you hear the "bang bang" sound. It is very critical and you must hold it for a while. Let's talk about these three types in detail. 1. No reset I have never seen code written like this, without a reset. The teacher said that digital circuits cannot do without reset. Without a reset, how can the registers be initialized? Without a definite initial value, how can this circuit work? In fact, don't worry. After the FPGA is powered on, the initial value of the register defaults to "0". Of course, you can also assign an initial value manually. The following is an example of code without reset: reg [7:0] a; always @(posedge clk) begin a <= b; end If there is no reset signal, a lot of resources can be saved, and the compilation and wiring time can also be shortened a lot. If the scale is large, it is also helpful to improve the overall performance of the design. However, in digital circuit design, we seldom use reset circuits. Instead, we often use this feature of FPGA to generate internal reset circuits ourselves. 2. Asynchronous reset Asynchronous reset circuit description: Add the reset signal to the sensitive quantity list in the always statement to realize asynchronous reset. The following is an example of asynchronous reset code and circuit diagram: reg [7:0] a; always @(posedge clk,posedge rst_n)
begin
if(rst_n)
begin
a <= 8’h0;
end
else
begin
a <= b;
end
end
各位,加油,共同进步!png[/img] Come on, everyone, let’s make progress together!png[/img] Come on, everyone, let’s make progress together!png[/img] Come on, everyone, let’s make progress together!png[/img] Come on, everyone, let’s make progress together!