{"id":83141,"date":"2025-06-10T23:50:15","date_gmt":"2025-06-11T03:50:15","guid":{"rendered":"https:\/\/www.engineersgarage.com\/?p=83141"},"modified":"2025-06-10T17:38:51","modified_gmt":"2025-06-10T21:38:51","slug":"verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog","status":"publish","type":"post","link":"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/","title":{"rendered":"Verilog Tutorial 15: How to design a clocked SR latch in Verilog"},"content":{"rendered":"<p class=\"ai-optimize-6 ai-optimize-introduction\"><em>Note: it\u2019s recommended to follow this VHDL tutorial series in order, starting with the\u00a0<\/em><strong><a href=\"https:\/\/www.engineersgarage.com\/vhdl\/vhdl-tutorial-1-introduction-to-vhdl\/\"><em>first tutorial<\/em><\/a><\/strong><em>. Follow the full series\u00a0<strong><a href=\"https:\/\/www.engineersgarage.com\/tutorials\/vhdl-tutorials\/\">here<\/a>.<\/strong><\/em><\/p>\n<p class=\"ai-optimize-7\">In the previous\u00a0<a href=\"https:\/\/www.engineersgarage.com\/verilog-tutorial-14-how-to-design-a-1x8-demultiplexer-and-an-8x1-multiplexer-in-verilog\/\"><strong>Verilog Tutorial \u2013 14<\/strong><\/a>, we learned how to design circuits for a 1&#215;8 demultiplexer and an 8&#215;1 multiplexer in Verilog.<\/p>\n<p class=\"ai-optimize-8\">In this tutorial, we\u2019ll:<\/p>\n<ol>\n<li class=\"ai-optimize-6\">Write a Verilog program to build a clocked SR latch (flip-flop) circuit<\/li>\n<li class=\"ai-optimize-6\">Verify the output waveform of the program (digital circuit) with the truth table of the flip-flop circuit<\/li>\n<\/ol>\n<h3 class=\"ai-optimize-9\"><strong>Clocked SR latch circuit<\/strong><\/h3>\n<p class=\"ai-optimize-11\"><a href=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/clocked-RS-latch.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-83142\" src=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/clocked-RS-latch-1024x530.png\" alt=\"\" width=\"740\" height=\"383\" srcset=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/clocked-RS-latch-1024x530.png 1024w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/clocked-RS-latch-300x155.png 300w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/clocked-RS-latch-768x397.png 768w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/clocked-RS-latch-368x190.png 368w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/clocked-RS-latch.png 1185w\" sizes=\"auto, (max-width: 740px) 100vw, 740px\" \/><\/a><\/p>\n<h3 class=\"ai-optimize-18\">Truth table<\/h3>\n<p class=\"ai-optimize-79\"><a href=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/Screenshot-2025-06-10-at-2.23.00\u202fPM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-83143\" src=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/Screenshot-2025-06-10-at-2.23.00\u202fPM-1024x410.png\" alt=\"\" width=\"620\" height=\"248\" srcset=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/Screenshot-2025-06-10-at-2.23.00\u202fPM-1024x410.png 1024w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/Screenshot-2025-06-10-at-2.23.00\u202fPM-300x120.png 300w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/Screenshot-2025-06-10-at-2.23.00\u202fPM-768x308.png 768w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/Screenshot-2025-06-10-at-2.23.00\u202fPM-368x147.png 368w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/Screenshot-2025-06-10-at-2.23.00\u202fPM.png 1148w\" sizes=\"auto, (max-width: 620px) 100vw, 620px\" \/><\/a><\/p>\n<p class=\"ai-optimize-18\">Next, let\u2019s write the Verilog program, compile and simulate it, and get the output in a waveform. We\u2019ll also verify the output waveforms with the given truth table.<\/p>\n<p class=\"ai-optimize-19\"><span data-preserver-spaces=\"true\">First, it\u2019s important to review the step-by-step procedure provided in\u00a0<strong><a href=\"https:\/\/www.engineersgarage.com\/vhdl\/vhdl-tutorial-3-using-maxii-to-compile-simulate-verify-a-vhdl-program\/\">VHDL Tutorial \u2013 3<\/a><\/strong>. In that tutorial, we learn how to design a project, edit and compile a program, create a waveform file, simulate the program, and generate the final output waveforms.<\/span><\/p>\n<h3 class=\"ai-optimize-20\"><strong><span data-preserver-spaces=\"true\">Verilog program<\/span><\/strong><\/h3>\n<p class=\"ai-optimize-21\"><strong>Gate-level modeling:<\/strong><\/p>\n<p class=\"ai-optimize-45\"><span style=\"color: #800000;\"><strong>module srff_gate(q, qbar, s, r, clk);<\/strong><\/span><\/p>\n<p class=\"ai-optimize-46\"><span style=\"color: #800000;\"><strong>input s,r,clk;<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>output reg q, qbar;<\/strong><\/span><\/p>\n<p class=\"ai-optimize-48\"><span style=\"color: #800000;\"><strong>wire t1,t2;<\/strong><\/span><\/p>\n<p class=\"ai-optimize-49\"><span style=\"color: #800000;\"><strong>nand (t1,clk,s);<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>nand (t2,clk,r);<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>nor (q,t1,qbar);<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>nor (qbar,t2,q);<\/strong><\/span><\/p>\n<p class=\"ai-optimize-53\"><span style=\"color: #800000;\"><strong>endmodule<\/strong><\/span><\/p>\n<p class=\"ai-optimize-54\"><strong>Behavioral modeling:<\/strong><\/p>\n<p class=\"ai-optimize-55\"><span style=\"color: #800000;\"><strong>module srff_behave(s,r,clk, q, qbar);<\/strong><\/span><\/p>\n<p class=\"ai-optimize-56\"><span style=\"color: #800000;\"><strong>input s,r,clk;<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>output q, qbar;<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>reg q, qbar;<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>\u00a0always@(posedge clk)<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>\u00a0 begin<\/strong><\/span><\/p>\n<p class=\"ai-optimize-61\"><span style=\"color: #800000;\"><strong>if(s == 1)<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>\u00a0begin<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>q = 1;<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>qbar = 0;<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>end<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>else if(r == 1)<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>\u00a0begin<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>q = 0;<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>qbar =1;<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>\u00a0end<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>else if(s == 0 &amp; r == 0)<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>\u00a0begin<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>q &lt;= q;<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>qbar &lt;= qbar<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>\u00a0end<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>\u00a0end<\/strong><\/span><br \/>\n<span style=\"color: #800000;\"><strong>endmodule<\/strong><\/span><\/p>\n<p class=\"ai-optimize-50\"><span data-preserver-spaces=\"true\">Now, compile the above program, creating a waveform file with all of the necessary inputs and outputs that are listed, and simulate the project.\u00a0<\/span><\/p>\n<p class=\"ai-optimize-51\"><span data-preserver-spaces=\"true\">Here are the results\u2026<\/span><\/p>\n<h3 class=\"ai-optimize-52\">Waveform simulation<\/h3>\n<p class=\"ai-optimize-81\"><a href=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/RS-FF-waveform.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-83144\" src=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/RS-FF-waveform-1024x258.png\" alt=\"\" width=\"740\" height=\"186\" srcset=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/RS-FF-waveform-1024x258.png 1024w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/RS-FF-waveform-300x76.png 300w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/RS-FF-waveform-768x194.png 768w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/RS-FF-waveform-368x93.png 368w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/RS-FF-waveform.png 1185w\" sizes=\"auto, (max-width: 740px) 100vw, 740px\" \/><\/a><\/p>\n<p class=\"ai-optimize-82\">As shown above, when the clock input is \u20181\u2019, then &#8220;s&#8221; is \u20181.&#8217; When &#8220;r&#8221; is \u20180,\u2019 the flip-flop is set, meaning the output for &#8220;Q&#8221; is \u20181\u2019 and for &#8220;Qnot&#8221; it&#8217;s \u20180.\u2019 You can verify other combinations using the given in truth table.<\/p>\n<p class=\"ai-optimize-83\"><em>in next tutorial, we&#8217;ll learn how to design a &#8220;D&#8221; flip-flop using Verilog.<\/em><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Note: it\u2019s recommended to follow this VHDL tutorial series in order, starting with the\u00a0first tutorial. Follow the full series\u00a0here. In the previous\u00a0Verilog Tutorial \u2013 14, we learned how to design circuits for a 1&#215;8 demultiplexer and an 8&#215;1 multiplexer in Verilog. In this tutorial, we\u2019ll: Write a Verilog program to build a clocked SR latch&hellip;<\/p>\n","protected":false},"author":64,"featured_media":83146,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_genesis_hide_title":false,"_genesis_hide_breadcrumbs":false,"_genesis_hide_singular_image":false,"_genesis_hide_footer_widgets":false,"_genesis_custom_body_class":"","_genesis_custom_post_class":"","_genesis_layout":"","footnotes":""},"categories":[9],"tags":[47,4696,4288,4534,1246],"class_list":{"2":"type-post","13":"entry","14":"has-post-thumbnail"},"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.2 (Yoast SEO v25.2) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How-to-design-a-clocked-sr-latch-in-verilog<\/title>\n<meta name=\"description\" content=\"Learn how to write a Verilog program to create a clocked SR latch and verify it with waveforms and truth tables.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Verilog Tutorial 15: How to design a clocked SR latch in Verilog\" \/>\n<meta property=\"og:description\" content=\"Learn how to write a Verilog program to create a clocked SR latch and verify it with waveforms and truth tables.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/\" \/>\n<meta property=\"og:site_name\" content=\"Engineers Garage\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/engineersgarage\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/SR-latch-ROTATOR.png\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"507\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Ashutosh Bhatt\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@EngineersGarage\" \/>\n<meta name=\"twitter:site\" content=\"@EngineersGarage\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ashutosh Bhatt\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/\"},\"author\":{\"name\":\"Ashutosh Bhatt\",\"@id\":\"https:\/\/www.engineersgarage.com\/#\/schema\/person\/ff80aa34dc1249eb691d684fec9d1c06\"},\"headline\":\"Verilog Tutorial 15: How to design a clocked SR latch in Verilog\",\"datePublished\":\"2025-06-11T03:50:15+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/\"},\"wordCount\":343,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.engineersgarage.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/SR-latch-ROTATOR.png\",\"keywords\":[\"clock\",\"flipflop\",\"tutorial\",\"verilog\",\"waveform\"],\"articleSection\":[\"Tutorials\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/\",\"url\":\"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/\",\"name\":\"How-to-design-a-clocked-sr-latch-in-verilog\",\"isPartOf\":{\"@id\":\"https:\/\/www.engineersgarage.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/SR-latch-ROTATOR.png\",\"datePublished\":\"2025-06-11T03:50:15+00:00\",\"description\":\"Learn how to write a Verilog program to create a clocked SR latch and verify it with waveforms and truth tables.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/#primaryimage\",\"url\":\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/SR-latch-ROTATOR.png\",\"contentUrl\":\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/SR-latch-ROTATOR.png\",\"width\":800,\"height\":507},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.engineersgarage.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Verilog Tutorial 15: How to design a clocked SR latch in Verilog\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.engineersgarage.com\/#website\",\"url\":\"https:\/\/www.engineersgarage.com\/\",\"name\":\"Engineers Garage\",\"description\":\"Electronic Projects, Electrical Engineering Resources, Makers Articles and Product News\",\"publisher\":{\"@id\":\"https:\/\/www.engineersgarage.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.engineersgarage.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.engineersgarage.com\/#organization\",\"name\":\"Engineer's Garage - WTWH Media\",\"url\":\"https:\/\/www.engineersgarage.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.engineersgarage.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2019\/08\/EGlogo.png\",\"contentUrl\":\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2019\/08\/EGlogo.png\",\"width\":372,\"height\":52,\"caption\":\"Engineer's Garage - WTWH Media\"},\"image\":{\"@id\":\"https:\/\/www.engineersgarage.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/engineersgarage\",\"https:\/\/x.com\/EngineersGarage\",\"https:\/\/www.youtube.com\/channel\/UC0VITh11JSYk-UW7toLebUw\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.engineersgarage.com\/#\/schema\/person\/ff80aa34dc1249eb691d684fec9d1c06\",\"name\":\"Ashutosh Bhatt\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.engineersgarage.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/68b3974894b20e23ded96f2892a241268df7ecec2258979fa47e5e0955676822?s=96&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/68b3974894b20e23ded96f2892a241268df7ecec2258979fa47e5e0955676822?s=96&r=g\",\"caption\":\"Ashutosh Bhatt\"},\"url\":\"https:\/\/www.engineersgarage.com\/author\/abhatt\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How-to-design-a-clocked-sr-latch-in-verilog","description":"Learn how to write a Verilog program to create a clocked SR latch and verify it with waveforms and truth tables.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/","og_locale":"en_US","og_type":"article","og_title":"Verilog Tutorial 15: How to design a clocked SR latch in Verilog","og_description":"Learn how to write a Verilog program to create a clocked SR latch and verify it with waveforms and truth tables.","og_url":"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/","og_site_name":"Engineers Garage","article_publisher":"https:\/\/www.facebook.com\/engineersgarage","og_image":[{"width":800,"height":507,"url":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/SR-latch-ROTATOR.png","type":"image\/png"}],"author":"Ashutosh Bhatt","twitter_card":"summary_large_image","twitter_creator":"@EngineersGarage","twitter_site":"@EngineersGarage","twitter_misc":{"Written by":"Ashutosh Bhatt","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/#article","isPartOf":{"@id":"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/"},"author":{"name":"Ashutosh Bhatt","@id":"https:\/\/www.engineersgarage.com\/#\/schema\/person\/ff80aa34dc1249eb691d684fec9d1c06"},"headline":"Verilog Tutorial 15: How to design a clocked SR latch in Verilog","datePublished":"2025-06-11T03:50:15+00:00","mainEntityOfPage":{"@id":"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/"},"wordCount":343,"commentCount":0,"publisher":{"@id":"https:\/\/www.engineersgarage.com\/#organization"},"image":{"@id":"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/#primaryimage"},"thumbnailUrl":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/SR-latch-ROTATOR.png","keywords":["clock","flipflop","tutorial","verilog","waveform"],"articleSection":["Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/","url":"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/","name":"How-to-design-a-clocked-sr-latch-in-verilog","isPartOf":{"@id":"https:\/\/www.engineersgarage.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/#primaryimage"},"image":{"@id":"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/#primaryimage"},"thumbnailUrl":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/SR-latch-ROTATOR.png","datePublished":"2025-06-11T03:50:15+00:00","description":"Learn how to write a Verilog program to create a clocked SR latch and verify it with waveforms and truth tables.","breadcrumb":{"@id":"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/#primaryimage","url":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/SR-latch-ROTATOR.png","contentUrl":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/SR-latch-ROTATOR.png","width":800,"height":507},{"@type":"BreadcrumbList","@id":"https:\/\/www.engineersgarage.com\/verilog-tutorial-15-how-to-design-a-clocked-sr-latch-in-verilog\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.engineersgarage.com\/"},{"@type":"ListItem","position":2,"name":"Verilog Tutorial 15: How to design a clocked SR latch in Verilog"}]},{"@type":"WebSite","@id":"https:\/\/www.engineersgarage.com\/#website","url":"https:\/\/www.engineersgarage.com\/","name":"Engineers Garage","description":"Electronic Projects, Electrical Engineering Resources, Makers Articles and Product News","publisher":{"@id":"https:\/\/www.engineersgarage.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.engineersgarage.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.engineersgarage.com\/#organization","name":"Engineer's Garage - WTWH Media","url":"https:\/\/www.engineersgarage.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.engineersgarage.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2019\/08\/EGlogo.png","contentUrl":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2019\/08\/EGlogo.png","width":372,"height":52,"caption":"Engineer's Garage - WTWH Media"},"image":{"@id":"https:\/\/www.engineersgarage.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/engineersgarage","https:\/\/x.com\/EngineersGarage","https:\/\/www.youtube.com\/channel\/UC0VITh11JSYk-UW7toLebUw"]},{"@type":"Person","@id":"https:\/\/www.engineersgarage.com\/#\/schema\/person\/ff80aa34dc1249eb691d684fec9d1c06","name":"Ashutosh Bhatt","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.engineersgarage.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/68b3974894b20e23ded96f2892a241268df7ecec2258979fa47e5e0955676822?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/68b3974894b20e23ded96f2892a241268df7ecec2258979fa47e5e0955676822?s=96&r=g","caption":"Ashutosh Bhatt"},"url":"https:\/\/www.engineersgarage.com\/author\/abhatt\/"}]}},"featured_image_src":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/SR-latch-ROTATOR-600x400.png","featured_image_src_square":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2025\/06\/SR-latch-ROTATOR-600x507.png","author_info":{"display_name":"Ashutosh Bhatt","author_link":"https:\/\/www.engineersgarage.com\/author\/abhatt\/"},"_links":{"self":[{"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/posts\/83141","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/users\/64"}],"replies":[{"embeddable":true,"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/comments?post=83141"}],"version-history":[{"count":0,"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/posts\/83141\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/media\/83146"}],"wp:attachment":[{"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/media?parent=83141"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/categories?post=83141"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/tags?post=83141"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}