Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
??? Not sure what question you are trying to answer. The OP was asking how to convert a Async reset code into a Sync reset code.In order to convert do this:
You can have a MINIMUM of two consecutive flip flops, with the async-reset input connected to both of their reset pins and the clock to both of their clock pins.
The output from the second flip flop (Q pin) will be a synchronous reset.
Next time insert the code directly in you post with tags, don't use a picture.Hi,
The picture I have attached is an asynchronous code. However, my library does not contain asynchronous reset. How do I modify my code into synchronous preserving it's functionality. Please help I'm newbie in RTL coding
Thanks
Code Verilog - [expand] 1 2 3 4 5 6 always @(posedge mclk or posedge puc_rst) if (puc_rst) pmem_dout_bckup_sel <= 1'b0; else if (fe_pmem_save) pmem_dout_bckup_sel <= 1'b1; else if (fe_pmem_restore) pmem_dout_bckup_sel <= 1'b0; assign fe_mdb_in = pmem_dout_bckup_sel ? pmem_dout_bckup : pmem_dout;
Code Verilog - [expand] 1 2 3 4 5 6 always @(posedge mclk) if (puc_rst) pmem_dout_bckup_sel <= 1'b0; else if (fe_pmem_save) pmem_dout_bckup_sel <= 1'b1; else if (fe_pmem_restore) pmem_dout_bckup_sel <= 1'b0; assign fe_mdb_in = pmem_dout_bckup_sel ? pmem_dout_bckup : pmem_dout;
The attached is not a very good description of a system having clock and async reset.
In order to convert do this:
You can have a MINIMUM of two consecutive flip flops, with the async-reset input connected to both of their reset pins and the clock to both of their clock pins.
The output from the second flip flop (Q pin) will be a synchronous reset.
I'm wondering about the reasonability of this statement. All ASIC libraries that I know have DFF cells with and without asynchronous inputs. But ASIC isn't my business, you may correct me in this regard.my library does not contain asynchronous reset