{"id":614,"date":"2024-08-09T00:56:16","date_gmt":"2024-08-08T15:56:16","guid":{"rendered":"https:\/\/rtlearner.com\/?p=614"},"modified":"2025-11-13T11:14:26","modified_gmt":"2025-11-13T02:14:26","slug":"verilog-syntax-2","status":"publish","type":"post","link":"https:\/\/rtlearner.com\/en\/verilog-syntax-2\/","title":{"rendered":"[Verilog] \ubb38\ubc95 2 &#8211; \uc778\uc2a4\ud134\uc2a4(Instantiation), \ud50c\ub9bd\ud50c\ub86d(Flip-Flop)\uacfc \ub798\uce58(Latch)"},"content":{"rendered":"\n<p>\uc9c0\ub09c \uae00\uc5d0 \uc774\uc5b4, verilog \ubb38\ubc95\uc5d0 \ub300\ud574 \uc124\uba85\ud558\ub3c4\ub85d \ud558\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n<style>.kb-table-of-content-nav.kb-table-of-content-id614_eec15d-09 .kb-table-of-content-wrap{padding-top:var(--global-kb-spacing-sm, 1.5rem);padding-right:var(--global-kb-spacing-sm, 1.5rem);padding-bottom:var(--global-kb-spacing-sm, 1.5rem);padding-left:var(--global-kb-spacing-sm, 1.5rem);box-shadow:0px 0px 14px 0px rgba(0, 0, 0, 0.2);}.kb-table-of-content-nav.kb-table-of-content-id614_eec15d-09 .kb-table-of-contents-title-wrap{padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}.kb-table-of-content-nav.kb-table-of-content-id614_eec15d-09 .kb-table-of-contents-title{font-weight:regular;font-style:normal;}.kb-table-of-content-nav.kb-table-of-content-id614_eec15d-09 .kb-table-of-content-wrap .kb-table-of-content-list{font-weight:regular;font-style:normal;margin-top:var(--global-kb-spacing-sm, 1.5rem);margin-right:0px;margin-bottom:0px;margin-left:0px;}@media all and (max-width: 767px){.kb-table-of-content-nav.kb-table-of-content-id614_eec15d-09 .kb-table-of-contents-title{font-size:var(--global-kb-font-size-md, 1.25rem);}.kb-table-of-content-nav.kb-table-of-content-id614_eec15d-09 .kb-table-of-content-wrap .kb-table-of-content-list{font-size:var(--global-kb-font-size-sm, 0.9rem);}}<\/style>\n\n<style>.kadence-column614_ae6055-41 > .kt-inside-inner-col{box-shadow:0px 0px 14px 0px rgba(0, 0, 0, 0.2);}.kadence-column614_ae6055-41 > .kt-inside-inner-col,.kadence-column614_ae6055-41 > .kt-inside-inner-col:before{border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.kadence-column614_ae6055-41 > .kt-inside-inner-col{column-gap:var(--global-kb-gap-sm, 1rem);}.kadence-column614_ae6055-41 > .kt-inside-inner-col{flex-direction:column;}.kadence-column614_ae6055-41 > .kt-inside-inner-col > .aligncenter{width:100%;}.kadence-column614_ae6055-41 > .kt-inside-inner-col:before{opacity:0.3;}.kadence-column614_ae6055-41{position:relative;}@media all and (max-width: 1024px){.kadence-column614_ae6055-41 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}@media all and (max-width: 767px){.kadence-column614_ae6055-41 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}<\/style>\n<div class=\"wp-block-kadence-column kadence-column614_ae6055-41\"><div class=\"kt-inside-inner-col\">\n<p><strong>\uad00\ub828 \uae00<\/strong><\/p>\n\n\n\n<p>\u2705<a href=\"https:\/\/rtlearner.com\/verilog-simulation-settings\/\">Simulation \ud658\uacbd \uc138\ud305 (EDA playground, Icarus verilog)<\/a><\/p>\n\n\n\n<p>\u2705<a href=\"https:\/\/rtlearner.com\/verilog-syntax\/\">\ubb38\ubc95 1 \u2013 \uae30\ubcf8 \uad6c\uc131, \uc808\ucc28 \ud560\ub2f9\uacfc \uc5f0\uc18d \ud560\ub2f9<\/a><\/p>\n<\/div><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\uc778\uc2a4\ud134\uc2a4 (Instantiation)<\/h2>\n\n\n\n<p>\uc778\uc2a4\ud134\uc2a4\ud654\ub294 \uc774\ubbf8 \uc644\uc131\ub41c \ubaa8\ub4c8\uc744 \uac00\uc838\uc624\ub294 \uac83\uc744 \ub9d0\ud569\ub2c8\ub2e4. \uc5b4\ub5a4 \uacbd\uc6b0\uc5d0 \uc778\uc2a4\ud134\uc2a4\ud654\ub97c \ud560\uae4c\uc694??<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Testbench<\/h3>\n\n\n\n<p>\uc774\uc804 \uae00\uc5d0\uc11c testbench\ub294 \uc2dc\ubbac\ub808\uc774\uc158\uc744 \ud558\uae30 \uc704\ud55c \ud658\uacbd\uc774\ub77c\uace0 \ub9d0\uc500\uc744 \ub4dc\ub838\uc2b5\ub2c8\ub2e4. \uc2dc\ubbac\ub808\uc774\uc158\uc744 \ud558\ub294 \uc774\uc720\ub294 DUT(Device Under Test)\uc758 \uae30\ub2a5\uc744 \ud655\uc778\ud558\uac70\ub098 \uac80\uc99d\ud558\uae30 \uc704\ud574\uc11c \ud569\ub2c8\ub2e4. \uadf8\ub7ec\uae30 \uc704\ud574\uc11c\ub294 testbench\uc5d0 DUT\ub97c \uac00\uc838\uc640\uc57c\uaca0\uc8e0?? \uc774\ub7f4 \ub54c \ubaa8\ub4c8\uc744 \uc778\uc2a4\ud134\uc2a4\ud654\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\uad6c\uc870 \uc124\uacc4<\/h3>\n\n\n\n<p>\uc544\ub798 \uadf8\ub9bc\uc740 UART\ub77c\uace0 \ud558\ub294 \ud1b5\uc2e0 IP\uc758 block diagram \uc608\uc2dc\uc785\ub2c8\ub2e4.<\/p>\n\n\n<style>.kb-image614_32fc3b-5f.kb-image-is-ratio-size, .kb-image614_32fc3b-5f .kb-image-is-ratio-size{max-width:650px;width:100%;}.wp-block-kadence-column > .kt-inside-inner-col > .kb-image614_32fc3b-5f.kb-image-is-ratio-size, .wp-block-kadence-column > .kt-inside-inner-col > .kb-image614_32fc3b-5f .kb-image-is-ratio-size{align-self:unset;}.kb-image614_32fc3b-5f figure{max-width:650px;}.kb-image614_32fc3b-5f .image-is-svg, .kb-image614_32fc3b-5f .image-is-svg img{width:100%;}.kb-image614_32fc3b-5f .kb-image-has-overlay:after{opacity:0.3;}.kb-image614_32fc3b-5f img.kb-img, .kb-image614_32fc3b-5f .kb-img img{box-shadow:0px 0px 14px 0px rgba(0, 0, 0, 0.2);}@media all and (max-width: 767px){.kb-image614_32fc3b-5f.kb-image-is-ratio-size, .kb-image614_32fc3b-5f .kb-image-is-ratio-size{max-width:250px;width:100%;}.kb-image614_32fc3b-5f figure{max-width:250px;}}<\/style>\n<div class=\"wp-block-kadence-image kb-image614_32fc3b-5f\"><figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/blog.kakaocdn.net\/dn\/b4TOG4\/btsHXNqdA6m\/kdLXz1Bd9yvSNhgZLoKJA1\/img.png\" alt=\"UART block diagram\" class=\"kb-img\"\/><figcaption>UART block diagram<\/figcaption><\/figure><\/div>\n\n\n\n<p>UART \ubaa8\ub4c8 \ub0b4\ubd80\uc5d0 \uae30\ub2a5\ubcc4\ub85c \uc5ec\ub7ec component\uac00 \uc788\uc8e0?? \uc774\ub7ec\ud55c \uad6c\uc870\ub97c \uacc4\uce35 \uad6c\uc870(hierarchy)\ub77c\uace0 \ud569\ub2c8\ub2e4. \ud558\ub098\uc758 \ubaa8\ub4c8 \uc704\uc758 component\ub97c \ubaa8\ub450 \uad6c\ud604\ud560 \uc218 \uc788\uc9c0\ub9cc, \uc774\ub7f4 \uacbd\uc6b0 \ucf54\ub4dc\uac00 \ub108\ubb34 \uae38\uc5b4\uc9c0\uace0 \uc7ac\uc0ac\uc6a9\uc5d0\ub3c4 \uc6a9\uc774\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uadf8\ub798\uc11c component\ub9c8\ub2e4 module\uc744 \ub9cc\ub4e4\uc5b4\uc8fc\uace0 uart_top\uc5d0\uc11c \uc704\uc758 \ubaa8\ub4c8\ub4e4\uc744 \uc778\uc2a4\ud134\uc2a4\ud654\ud558\uc5ec \uad6c\uc870\uc801 \uc124\uacc4\ub97c \ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uadf8\ub7fc, testbench\uc5d0\uc11c \uc778\uc2a4\ud134\uc2a4\ud654 \uc608\uc2dc\ub97c \ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\uc778\uc2a4\ud134\uc2a4\ud654 \uc608\uc2dc<\/h3>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"module top ();\n  \n  \/\/\uc790\ub8cc\ud615 \uc120\uc5b8, \ucd08\uae30\ud654\n  reg  [3:0] a; initial a = 4'h0;\n  reg  [3:0] b; initial b = 4'h0;\n  \n  wire [7:0] c;\n  \n  \/\/\uc2dc\ubbac\ub808\uc774\uc158 time\n  initial begin\n    #500\n    $display(&quot;\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/&quot;);\n    $display(&quot;\/\/\/sim_finish\/\/\/&quot;);\n    $display(&quot;\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/&quot;);\n    $finish;\n  end\n  \n  \/\/dump file \ub9cc\ub4e4\uae30\n  initial begin\n    $dumpfile(&quot;dump.vcd&quot;);\n    $dumpvars;\n  end\n\nendmodule\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #81A1C1\">module<\/span><span style=\"color: #D8DEE9FF\"> top ();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">  <\/span><span style=\"color: #616E88\">\/\/\uc790\ub8cc\ud615 \uc120\uc5b8, \ucd08\uae30\ud654<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">reg<\/span><span style=\"color: #D8DEE9FF\">  [<\/span><span style=\"color: #B48EAD\">3<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">] a; <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> a <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">4&#39;h0<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">reg<\/span><span style=\"color: #D8DEE9FF\">  [<\/span><span style=\"color: #B48EAD\">3<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">] b; <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> b <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">4&#39;h0<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">wire<\/span><span style=\"color: #D8DEE9FF\"> [<\/span><span style=\"color: #B48EAD\">7<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">] c;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">  <\/span><span style=\"color: #616E88\">\/\/\uc2dc\ubbac\ub808\uc774\uc158 time<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">begin<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #B48EAD\">#500<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #88C0D0\">$display<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #A3BE8C\">&quot;\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/&quot;<\/span><span style=\"color: #D8DEE9FF\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #88C0D0\">$display<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #A3BE8C\">&quot;\/\/\/sim_finish\/\/\/&quot;<\/span><span style=\"color: #D8DEE9FF\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #88C0D0\">$display<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #A3BE8C\">&quot;\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/&quot;<\/span><span style=\"color: #D8DEE9FF\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #88C0D0\">$finish<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">  <\/span><span style=\"color: #616E88\">\/\/dump file \ub9cc\ub4e4\uae30<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">begin<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #88C0D0\">$dumpfile<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #A3BE8C\">&quot;dump.vcd&quot;<\/span><span style=\"color: #D8DEE9FF\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #88C0D0\">$dumpvars<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">endmodule<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\uc5ec\uae30\uc11c $display\ub294 $finish\uc640 \ub9c8\ucc2c\uac00\uc9c0\ub85c \ubca0\ub9b4\ub85c\uadf8 \uc2dc\uc2a4\ud15c task\ub85c, log\uc5d0 \uad04\ud638 \uc548\uc758 \ubb38\uc790\ub97c display \ud574\ub2ec\ub77c\ub294 \uc758\ubbf8\uc785\ub2c8\ub2e4. \uc704\uc758 \ucf54\ub4dc\ub97c \uc2e4\ud589\ud558\uba74 \uc120\uc5b8\ub41c reg \ub4e4\uc740 initial \uac12\uc778 4&#8217;h0\uc744, wire\ub294 \ud560\ub2f9\ub418\uc9c0 \uc54a\uc558\uae30 \ub54c\ubb38\uc5d0 z\ub97c \ub098\ud0c0\ub0b4\uace0 500ns \ub4a4\uc5d0 display \ud55c \ub4a4 \uc2dc\ubbac\ub808\uc774\uc158\uc774 \uc885\ub8cc\ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uc774\ubc88\uc5d0\ub294 multiplier \ubaa8\ub4c8\uc744 \uc791\uc131\ud569\uc2dc\ub2e4.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"module multiplier (x,y,out);\n  input  [3:0] x, y;\n  output [7:0] out;\n  \n  assign out = x * y;\n  \nendmodule\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #81A1C1\">module<\/span><span style=\"color: #D8DEE9FF\"> multiplier (<\/span><span style=\"color: #B48EAD\">x<\/span><span style=\"color: #D8DEE9FF\">,y,out);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">input<\/span><span style=\"color: #D8DEE9FF\">  [<\/span><span style=\"color: #B48EAD\">3<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">] <\/span><span style=\"color: #B48EAD\">x<\/span><span style=\"color: #D8DEE9FF\">, y;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">output<\/span><span style=\"color: #D8DEE9FF\"> [<\/span><span style=\"color: #B48EAD\">7<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">] out;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">assign<\/span><span style=\"color: #D8DEE9FF\"> out <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">*<\/span><span style=\"color: #D8DEE9FF\"> y;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">endmodule<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\ub2e8\uc21c\ud55c \uacf1\uc148\uae30\ub85c 4\ube44\ud2b8 x, y\ub97c input\uc73c\ub85c \ubc1b\uc544 \ub458\uc744 \uacf1\ud55c \ub4a4 8\ube44\ud2b8 output\uc73c\ub85c \ucd9c\ub825\ud558\ub294 \uac04\ub2e8\ud55c \ubaa8\ub4c8\uc785\ub2c8\ub2e4. input, output\uc740 reg\ub85c \uc120\uc5b8\ud558\uc9c0 \uc54a\uc73c\uba74 wire\ub85c \uc120\uc5b8\ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<p>port \uc120\uc5b8\uc744 \uc544\ub798\uc640 \uac19\uc774 \ud574\uc918\ub3c4 \ub429\ub2c8\ub2e4, \ud68c\uc0ac\uc5d0 \uc788\uc744 \ub54c\ub294 \ud56d\uc0c1 \uc544\ub798\uc640 \uac19\uc774 \ud588\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"module multiplier (\n   input  wire [3:0] x\n  ,input  wire [3:0] y\n  ,output wire [7:0] out\n);\n  \n  assign out = x * y;\n  \nendmodule\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #81A1C1\">module<\/span><span style=\"color: #D8DEE9FF\"> multiplier (<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">   <\/span><span style=\"color: #81A1C1\">input<\/span><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">wire<\/span><span style=\"color: #D8DEE9FF\"> [<\/span><span style=\"color: #B48EAD\">3<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">] <\/span><span style=\"color: #B48EAD\">x<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  ,<\/span><span style=\"color: #81A1C1\">input<\/span><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">wire<\/span><span style=\"color: #D8DEE9FF\"> [<\/span><span style=\"color: #B48EAD\">3<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">] y<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  ,<\/span><span style=\"color: #81A1C1\">output<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">wire<\/span><span style=\"color: #D8DEE9FF\"> [<\/span><span style=\"color: #B48EAD\">7<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">] out<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">assign<\/span><span style=\"color: #D8DEE9FF\"> out <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">*<\/span><span style=\"color: #D8DEE9FF\"> y;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">endmodule<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\uc774\uc81c \uc774 \ubaa8\ub4c8\uc744 testbench\uc758 DUT\ub85c \uc778\uc2a4\ud134\uc2a4\ud654\ud574\ubd05\uc2dc\ub2e4.&nbsp;<strong>\uc774\uc81c \uc2dc\ubbac\ub808\uc774\uc158 time\uacfc dump \ud30c\uc77c\uc744 \ub9cc\ub4dc\ub294 initial \uad6c\ubb38\uc740 \uc0dd\ub7b5\ud558\uaca0\uc2b5\ub2c8\ub2e4.&nbsp;<\/strong>\uc5ec\ub7ec\ubd84\uc740 \uc368\uc8fc\uc154\uc57c \ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"module top ();\n  \n  \/\/\uc790\ub8cc\ud615 \uc120\uc5b8, \ucd08\uae30\ud654\n  reg  [3:0] a; initial a = 4'h0;\n  reg  [3:0] b; initial b = 4'h0;\n  \n  wire [7:0] c;\n  \n  \/\/dut \uc778\uc2a4\ud134\uc2a4\ud654\n  multiplier u_dut (\n     .x   (a)\n    ,.y   (b)\n    ,.out (c)\n  );\n  \n  \/\/reg control\n  initial begin\n    #100\n    a = 4'h3;\n    b = 4'h5;\n    #100\n    a = 4'h7;\n    b = 4'h6;\n    #100\n    a = 4'h0;\n    b = 4'hf;\n    #100\n    a = 4'hd;\n    b = 4'hc;\n  end\n  \nendmodule\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #81A1C1\">module<\/span><span style=\"color: #D8DEE9FF\"> top ();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">  <\/span><span style=\"color: #616E88\">\/\/\uc790\ub8cc\ud615 \uc120\uc5b8, \ucd08\uae30\ud654<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">reg<\/span><span style=\"color: #D8DEE9FF\">  [<\/span><span style=\"color: #B48EAD\">3<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">] a; <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> a <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">4&#39;h0<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">reg<\/span><span style=\"color: #D8DEE9FF\">  [<\/span><span style=\"color: #B48EAD\">3<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">] b; <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> b <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">4&#39;h0<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">wire<\/span><span style=\"color: #D8DEE9FF\"> [<\/span><span style=\"color: #B48EAD\">7<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">] c;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">  <\/span><span style=\"color: #616E88\">\/\/dut \uc778\uc2a4\ud134\uc2a4\ud654<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">multiplier<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">u_dut<\/span><span style=\"color: #D8DEE9FF\"> (<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">     .<\/span><span style=\"color: #B48EAD\">x<\/span><span style=\"color: #D8DEE9FF\">   (a)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    ,.y   (b)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    ,.out (c)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  )<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">  <\/span><span style=\"color: #616E88\">\/\/reg control<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">begin<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #B48EAD\">#100<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    a <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">4&#39;h3<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    b <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">4&#39;h5<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #B48EAD\">#100<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    a <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">4&#39;h7<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    b <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">4&#39;h6<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #B48EAD\">#100<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    a <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">4&#39;h0<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    b <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">4&#39;hf<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #B48EAD\">#100<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    a <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">4&#39;hd<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    b <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">4&#39;hc<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">endmodule<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\uba3c\uc800 \uc704 testbench \ucf54\ub4dc\ub97c diagram\uc73c\ub85c \ud45c\ud604\ud558\uace0 \ubd84\uc11d\ud574 \ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n<style>.kb-image614_e4c3d6-f5.kb-image-is-ratio-size, .kb-image614_e4c3d6-f5 .kb-image-is-ratio-size{max-width:650px;width:100%;}.wp-block-kadence-column > .kt-inside-inner-col > .kb-image614_e4c3d6-f5.kb-image-is-ratio-size, .wp-block-kadence-column > .kt-inside-inner-col > .kb-image614_e4c3d6-f5 .kb-image-is-ratio-size{align-self:unset;}.kb-image614_e4c3d6-f5 figure{max-width:650px;}.kb-image614_e4c3d6-f5 .image-is-svg, .kb-image614_e4c3d6-f5 .image-is-svg img{width:100%;}.kb-image614_e4c3d6-f5 .kb-image-has-overlay:after{opacity:0.3;}.kb-image614_e4c3d6-f5 img.kb-img, .kb-image614_e4c3d6-f5 .kb-img img{box-shadow:0px 0px 14px 0px rgba(0, 0, 0, 0.2);}@media all and (max-width: 767px){.kb-image614_e4c3d6-f5.kb-image-is-ratio-size, .kb-image614_e4c3d6-f5 .kb-image-is-ratio-size{max-width:250px;width:100%;}.kb-image614_e4c3d6-f5 figure{max-width:250px;}}<\/style>\n<div class=\"wp-block-kadence-image kb-image614_e4c3d6-f5\"><figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/blog.kakaocdn.net\/dn\/xpttK\/btsHW98MIF6\/k3J5tQE9g53gyhMocSPd41\/img.png\" alt=\"Testbench block diagram\" class=\"kb-img\"\/><figcaption>Testbench block diagram<\/figcaption><\/figure><\/div>\n\n\n\n<p>Diagram\uc744 \ubcf4\uc2dc\uba74 \uc774\ud574\uac00 \uc26c\uc6b8 \ud150\ub370\uc694, testbench\uc778 top \ubaa8\ub4c8\uc5d0\uc11c \uc120\uc5b8\ub41c reg a, b\uac00 u_dut\ub77c\ub294 \uc774\ub984\uc73c\ub85c \uc778\uc2a4\ud134\uc2a4\ud654\ub41c multipler \ubaa8\ub4c8\uc758 x, y port\uc5d0 \uc5f0\uacb0\ub410\uc2b5\ub2c8\ub2e4. \uadf8\ub9ac\uace0 wire c\uac00 out port\uc5d0 \uc5f0\uacb0\ub41c \uad6c\uc870\uc785\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uadf8\ub7ec\uba74 \uc2dc\ubbac\ub808\uc774\uc158\uc744 \ub3cc\ub824\uc11c a, b\uac00 \ubcc0\ud568\uc5d0 \ub530\ub77c c\uac00 \uc5b4\ub5bb\uac8c \ubcc0\ud558\ub294\uc9c0 \uacb0\uacfc\ub97c \ud655\uc778\ud574 \ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n<style>.kb-image614_3f1ded-32.kb-image-is-ratio-size, .kb-image614_3f1ded-32 .kb-image-is-ratio-size{max-width:650px;width:100%;}.wp-block-kadence-column > .kt-inside-inner-col > .kb-image614_3f1ded-32.kb-image-is-ratio-size, .wp-block-kadence-column > .kt-inside-inner-col > .kb-image614_3f1ded-32 .kb-image-is-ratio-size{align-self:unset;}.kb-image614_3f1ded-32 figure{max-width:650px;}.kb-image614_3f1ded-32 .image-is-svg, .kb-image614_3f1ded-32 .image-is-svg img{width:100%;}.kb-image614_3f1ded-32 .kb-image-has-overlay:after{opacity:0.3;}.kb-image614_3f1ded-32 img.kb-img, .kb-image614_3f1ded-32 .kb-img img{box-shadow:0px 0px 14px 0px rgba(0, 0, 0, 0.2);}@media all and (max-width: 767px){.kb-image614_3f1ded-32.kb-image-is-ratio-size, .kb-image614_3f1ded-32 .kb-image-is-ratio-size{max-width:300px;width:100%;}.kb-image614_3f1ded-32 figure{max-width:300px;}}<\/style>\n<div class=\"wp-block-kadence-image kb-image614_3f1ded-32\"><figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/blog.kakaocdn.net\/dn\/y25zP\/btsHYowXlDP\/qgqYpjyAZFYweWcCaOJgn1\/img.png\" alt=\"Simulation result\" class=\"kb-img\"\/><figcaption>Simulation result<\/figcaption><\/figure><\/div>\n\n\n\n<p>Waveform\uc5d0\uc11c x, y, out\uc740 \uc9c0\uc6e0\uc2b5\ub2c8\ub2e4. \uc704\uc758 \uacb0\uacfc\ub97c \uac80\ud1a0\ud574 \ubcfc\uae4c\uc694?? \ucc38\uace0\ub85c \uc544\ub798 \uc218\ub4e4\uc740 \ubaa8\ub450&nbsp;<strong>16\uc9c4\ubc95<\/strong>\uc758 \uc218\uc785\ub2c8\ub2e4.<\/p>\n\n\n\n<p>#0    : 4&#8217;h0 x 4&#8217;h0 = 8&#8217;h0<\/p>\n\n\n\n<p>#100: 4&#8217;h3 x 4&#8217;h5 = 8&#8217;hf<\/p>\n\n\n\n<p>#200: 4&#8217;h7 x 4&#8217;h6 = 8&#8217;h2a<\/p>\n\n\n\n<p>#300: 4&#8217;h0 x 4&#8217;hf = 8&#8217;h0<\/p>\n\n\n\n<p>#400: 4&#8217;hd x 4&#8217;hc = 8&#8217;h9c<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Clock\uacfc Reset<\/h2>\n\n\n\n<p>Clock(\ud074\ub7ed)\uacfc reset(\ub9ac\uc14b)\uc740 \ub514\uc9c0\ud138\ud68c\ub85c\uc5d0\uc11c \uc815\ub9d0 \ub9e4\uc6b0 \uc911\uc694\ud55c \uc5ed\ud560\uc744 \ud558\ub294 1-bit signal\uc785\ub2c8\ub2e4. verilog\uc5d0\uc11c \uc124\uacc4\ub41c \ubaa8\ub4c8\ub4e4\uc740 clock\uc5d0 &#8216;\ub3d9\uae30\ud654&#8217;\ub418\uc5b4 \ub3d9\uc791\ud558\uace0 reset\uc5d0 \uc758\ud574 \ucd08\uae30 \uc0c1\ud0dc\ub85c \ub3cc\uc544\uac00\uac8c \ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uba3c\uc800, testbench\uc5d0\uc11c clock\uacfc reset\uc744 \ub9cc\ub4e4\uc5b4\ubd05\uc2dc\ub2e4. \ub2e4\uc74c\uc758 \ucf54\ub4dc\ub97c \uc2e4\ud589\ud574\ubcfc\uae4c\uc694?<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"module top();\n  reg clk;   initial clk   = 1'b0;\n  reg reset; initial reset = 1'b1;\n  \n  localparam period_clk = 10;\n  \n  always #(0.5 * period_clk) clk =  ~clk;\n  \n  initial begin\n    #period_clk\n    reset = 1'b0;\n    \n    #100\n    $finish;\n  end\n  \n  initial begin\n    $dumpfile(&quot;dump.vcd&quot;);\n    $dumpvars;\n  end\n\nendmodule\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #81A1C1\">module<\/span><span style=\"color: #D8DEE9FF\"> top();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">reg<\/span><span style=\"color: #D8DEE9FF\"> clk;   <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> clk   <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1&#39;b0<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">reg<\/span><span style=\"color: #D8DEE9FF\"> reset; <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> reset <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1&#39;b1<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">localparam<\/span><span style=\"color: #D8DEE9FF\"> period_clk <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">10<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">always<\/span><span style=\"color: #D8DEE9FF\"> #<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #B48EAD\">5<\/span><span style=\"color: #D8DEE9FF\"> * period_clk<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">clk<\/span><span style=\"color: #D8DEE9FF\"> =  ~<\/span><span style=\"color: #81A1C1\">clk;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">begin<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    #period_clk<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    reset <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1&#39;b0<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #B48EAD\">#100<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #88C0D0\">$finish<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">begin<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #88C0D0\">$dumpfile<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #A3BE8C\">&quot;dump.vcd&quot;<\/span><span style=\"color: #D8DEE9FF\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #88C0D0\">$dumpvars<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">endmodule<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\uadf8\ub7ec\uba74 \uc544\ub798\uc640 \uac19\uc774 clock\uacfc reset\uc758 \uacb0\uacfc\uac00 \ub098\ud0c0\ub098\uac8c \ub429\ub2c8\ub2e4.<\/p>\n\n\n<style>.kb-image614_504f08-6b.kb-image-is-ratio-size, .kb-image614_504f08-6b .kb-image-is-ratio-size{max-width:650px;width:100%;}.wp-block-kadence-column > .kt-inside-inner-col > .kb-image614_504f08-6b.kb-image-is-ratio-size, .wp-block-kadence-column > .kt-inside-inner-col > .kb-image614_504f08-6b .kb-image-is-ratio-size{align-self:unset;}.kb-image614_504f08-6b figure{max-width:650px;}.kb-image614_504f08-6b .image-is-svg, .kb-image614_504f08-6b .image-is-svg img{width:100%;}.kb-image614_504f08-6b .kb-image-has-overlay:after{opacity:0.3;}.kb-image614_504f08-6b img.kb-img, .kb-image614_504f08-6b .kb-img img{box-shadow:0px 0px 14px 0px rgba(0, 0, 0, 0.2);}@media all and (max-width: 767px){.kb-image614_504f08-6b.kb-image-is-ratio-size, .kb-image614_504f08-6b .kb-image-is-ratio-size{max-width:250px;width:100%;}.kb-image614_504f08-6b figure{max-width:250px;}}<\/style>\n<div class=\"wp-block-kadence-image kb-image614_504f08-6b\"><figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/blog.kakaocdn.net\/dn\/0yGZ7\/btsIGEMSZNl\/Ucbsf6gkKK1KW5BM2tTAH0\/img.png\" alt=\"clk, reset simulation result\" class=\"kb-img\"\/><figcaption>clk, reset simulation result<\/figcaption><\/figure><\/div>\n\n\n\n<p>clock\uc758 \uc8fc\uae30\ub294 10ns\uc774\uace0 \ucc98\uc74c\uc5d0 reset\uc774 \uac78\ub824\uc788\ub2e4\uac00(high) 10ns \ub4a4\uc5d0 \ud480\ub9b0 \uac83\uc744(low) \uc54c \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774\ucc98\ub7fc \ub300\ubd80\ubd84\uc758 testbench\uc5d0\uc11c\ub294 reset\uc744 \uac78\uc5c8\ub2e4\uac00 \uc77c\uc815 \uc2dc\uac04 \ub4a4\uc5d0 \ud480\uace0 \uc2dc\ubbac\ub808\uc774\uc158\uc774 \uc9c4\ud589\ub418\ub294 \ubc29\uc2dd\uc744 \uc0ac\uc6a9\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uadf8\ub7f0\ub370 \uc774\uc804 \uae00\uc5d0\uc11c\ub294 resetn\uc744 \uc0ac\uc6a9\ud588\ub294\ub370\uc694, \uc774\ub294 reset\uc758 \uae30\ub2a5\uc778 \ucd08\uae30\ud654\uac00 low\uc77c \ub54c \uc791\ub3d9\ud55c\ub2e4\ub294 \ub73b\uc785\ub2c8\ub2e4. (Active-low) \uc2e4\ubb34\uc5d0\uc11c\ub294 active-high\uc778 reset\uc744 \uc0ac\uc6a9\ud558\uc9c0 \uc54a\uace0 active-low\uc778 resetn\uc744 \uc0ac\uc6a9\ud569\ub2c8\ub2e4. \uadf8\ub7ec\uba74 testbench \ucf54\ub4dc\ub97c \uc544\ub798\uc640 \uac19\uc774 \uc218\uc815\ud558\uba74 \ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"module top();\n  reg clk;    initial clk    = 1'b0;\n  reg resetn; initial resetn = 1'b0;\n  \n  localparam period_clk = 10;\n  \n  always #(0.5 * period_clk) clk = ~clk;\n  \n  initial begin\n    #period_clk\n    resetn = 1'b1;\n    \n    #100\n    $finish;\n  end\n  \n  initial begin\n    $dumpfile(&quot;dump.vcd&quot;);\n    $dumpvars;\n  end\n\nendmodule\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #81A1C1\">module<\/span><span style=\"color: #D8DEE9FF\"> top();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">reg<\/span><span style=\"color: #D8DEE9FF\"> clk;    <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> clk    <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1&#39;b0<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">reg<\/span><span style=\"color: #D8DEE9FF\"> resetn; <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> resetn <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1&#39;b0<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">localparam<\/span><span style=\"color: #D8DEE9FF\"> period_clk <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">10<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">always<\/span><span style=\"color: #D8DEE9FF\"> #<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #B48EAD\">5<\/span><span style=\"color: #D8DEE9FF\"> * period_clk<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">clk<\/span><span style=\"color: #D8DEE9FF\"> = ~<\/span><span style=\"color: #81A1C1\">clk;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">begin<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    #period_clk<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    resetn <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1&#39;b1<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #B48EAD\">#100<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #88C0D0\">$finish<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">begin<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #88C0D0\">$dumpfile<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #A3BE8C\">&quot;dump.vcd&quot;<\/span><span style=\"color: #D8DEE9FF\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #88C0D0\">$dumpvars<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">endmodule<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\ud50c\ub9bd\ud50c\ub86d(Flip-Flop)\uacfc \ub798\uce58(Latch)<\/h2>\n\n\n\n<p>Filp-Flop\uacfc Latch \ubaa8\ub450 \uc815\ubcf4\ub97c \uc800\uc7a5\ud560 \uc218 \uc788\ub294 \ud68c\ub85c\uc785\ub2c8\ub2e4. \ucc28\uc774\uc810\uc740 Filp-Flop\uc740 clock\uc5d0 \ub3d9\uae30\ud654\ub418\uc5b4 \ub3d9\uc791\ud558\uace0, Latch\ub294 \uadf8\ub807\uc9c0 \uc54a\ub2e4\ub294 \uac83\uc785\ub2c8\ub2e4. \ub2e4\ub978 \ubc29\uc2dd\uc73c\ub85c \uc124\uba85\ud558\uc790\uba74 Flip-Flop\uc740 clock\uc758 edge\uc5d0 triggered \ub418\uace0, Latch\ub294 clock\uc758 level\uc5d0 triggered \ub418\uc5b4 \ub3d9\uc791\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uc544\ub798 \ucf54\ub4dc\ub97c \uc2e4\ud589\ud574\ubcfc\uae4c\uc694?<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"module top();\n  reg clk;    initial clk    = 1'b0;\n  reg resetn; initial resetn = 1'b0;\n  reg D;      initial D      = 1'b0;\n  reg Q1;     initial Q1     = 1'b0;\n  reg Q2;     initial Q2     = 1'b0;\n  \n  localparam period_clk = 10;\n  \n  always #(0.5 * period_clk) clk = ~clk;\n  always #7 D = ~D;\n  \n  initial begin\n    #period_clk\n    resetn = 1'b1;\n    \n    #100\n    $finish;\n  end\n\n  \/\/Flip-Flop\n  always @(posedge clk) begin\n    Q1 &lt;= D;\n  end\n  \n  \/\/Latch\n  always @(clk) begin\n    Q2 &lt;= D;\n  end\n  \n  initial begin\n    $dumpfile(&quot;dump.vcd&quot;);\n    $dumpvars;\n  end\n  \nendmodule\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #81A1C1\">module<\/span><span style=\"color: #D8DEE9FF\"> top();<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">reg<\/span><span style=\"color: #D8DEE9FF\"> clk;    <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> clk    <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1&#39;b0<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">reg<\/span><span style=\"color: #D8DEE9FF\"> resetn; <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> resetn <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1&#39;b0<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">reg<\/span><span style=\"color: #D8DEE9FF\"> D;      <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> D      <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1&#39;b0<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">reg<\/span><span style=\"color: #D8DEE9FF\"> Q1;     <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> Q1     <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1&#39;b0<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">reg<\/span><span style=\"color: #D8DEE9FF\"> Q2;     <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> Q2     <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1&#39;b0<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">localparam<\/span><span style=\"color: #D8DEE9FF\"> period_clk <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">10<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">always<\/span><span style=\"color: #D8DEE9FF\"> #<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #B48EAD\">5<\/span><span style=\"color: #D8DEE9FF\"> * period_clk<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">clk<\/span><span style=\"color: #D8DEE9FF\"> = ~<\/span><span style=\"color: #81A1C1\">clk;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">always<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">#7<\/span><span style=\"color: #D8DEE9FF\"> D <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">~<\/span><span style=\"color: #D8DEE9FF\">D;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">begin<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    #period_clk<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    resetn <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1&#39;b1<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #B48EAD\">#100<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #88C0D0\">$finish<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">  <\/span><span style=\"color: #616E88\">\/\/Flip-Flop<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">always<\/span><span style=\"color: #D8DEE9FF\"> @(<\/span><span style=\"color: #81A1C1\">posedge<\/span><span style=\"color: #D8DEE9FF\"> clk) <\/span><span style=\"color: #81A1C1\">begin<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    Q1 <\/span><span style=\"color: #81A1C1\">&lt;=<\/span><span style=\"color: #D8DEE9FF\"> D;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">  <\/span><span style=\"color: #616E88\">\/\/Latch<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">always<\/span><span style=\"color: #D8DEE9FF\"> @(clk) <\/span><span style=\"color: #81A1C1\">begin<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    Q2 <\/span><span style=\"color: #81A1C1\">&lt;=<\/span><span style=\"color: #D8DEE9FF\"> D;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">initial<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">begin<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #88C0D0\">$dumpfile<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #A3BE8C\">&quot;dump.vcd&quot;<\/span><span style=\"color: #D8DEE9FF\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #88C0D0\">$dumpvars<\/span><span style=\"color: #D8DEE9FF\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">endmodule<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>Simulation \uacb0\uacfc\ub294 \uc544\ub798\uc640 \uac19\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n<style>.kb-image614_379c81-ef.kb-image-is-ratio-size, .kb-image614_379c81-ef .kb-image-is-ratio-size{max-width:650px;width:100%;}.wp-block-kadence-column > .kt-inside-inner-col > .kb-image614_379c81-ef.kb-image-is-ratio-size, .wp-block-kadence-column > .kt-inside-inner-col > .kb-image614_379c81-ef .kb-image-is-ratio-size{align-self:unset;}.kb-image614_379c81-ef figure{max-width:650px;}.kb-image614_379c81-ef .image-is-svg, .kb-image614_379c81-ef .image-is-svg img{width:100%;}.kb-image614_379c81-ef .kb-image-has-overlay:after{opacity:0.3;}.kb-image614_379c81-ef img.kb-img, .kb-image614_379c81-ef .kb-img img{box-shadow:0px 0px 14px 0px rgba(0, 0, 0, 0.2);}@media all and (max-width: 767px){.kb-image614_379c81-ef.kb-image-is-ratio-size, .kb-image614_379c81-ef .kb-image-is-ratio-size{max-width:250px;width:100%;}.kb-image614_379c81-ef figure{max-width:250px;}}<\/style>\n<div class=\"wp-block-kadence-image kb-image614_379c81-ef\"><figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/blog.kakaocdn.net\/dn\/bKVE6Y\/btsIF4MjviC\/i7gn4efw6kxQeo0CbRXk5K\/img.png\" alt=\"Flip-Flop, Latch simulation result\" class=\"kb-img\"\/><figcaption>Simulation result<\/figcaption><\/figure><\/div>\n\n\n\n<p>\ucc28\uc774\uac00 \ubcf4\uc774\uc2dc\ub098\uc694?? \uc774\ub807\uac8c Flip-Flop\uacfc \ub2ec\ub9ac Latch\ub294 clock edge\uc5d0 \ub3d9\uae30\ud654\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uc774\ub294 \ub514\uc9c0\ud138 \uc124\uacc4 \uad00\uc810\uc5d0\uc11c \ub9e4\uc6b0 \uc88b\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc2e4\ubb34\uc5d0\uc11c\ub294 <strong>\uc0ac\uc6a9\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4<\/strong>. \ud558\uc9c0\ub9cc clock\uc5d0 \ub3d9\uae30\ud654\uc2dc\ucf1c\ub3c4 \ud569\uc131 \uc2dc latch\uac00 \uc0dd\uc131\ub420 \uc218\ub3c4 \uc788\ub294\ub370\uc694, \ub2e4\uc74c\uacfc \uac19\uc740 \uacbd\uc6b0\uc5d0 latch\uac00 \uc0dd\uc131\ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>if \ubb38\uc5d0\uc11c else \uc870\uac74\uc744 \uc124\uc815\ud558\uc9c0 \uc54a\uc558\uc744 \ub54c<\/li>\n\n\n\n<li>case \ubb38\uc5d0\uc11c default \uc870\uac74\uc744 \uc124\uc815\ud558\uc9c0 \uc54a\uc558\uc744 \ub54c<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Asynchronous Reset Flip-Flop<\/h3>\n\n\n\n<p>\ub9c8\uc9c0\ub9c9\uc73c\ub85c Asynchronous Reset Flip-Flop \uc608\uc2dc\ub97c \ubcf4\uba74\uc11c \ub9c8\ubb34\ub9ac\ud558\ub3c4\ub85d \ud558\uaca0\uc2b5\ub2c8\ub2e4. Reset\uc744 \ube44\ub3d9\uae30\ub85c \uc0ac\uc6a9\ud558\ub294 \uc774\uc720\ub294 \uadf8\ub9cc\ud07c reset \uc2e0\ud638\uac00 \uc911\uc694\ud558\uae30 \ub54c\ubb38\uc785\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uc608\ub97c \ub4e4\uc5b4, \ucef4\ud4e8\ud130\uac00 \uc791\ub3d9\ud558\ub294\ub370 \ub9ac\uc14b\ubc84\ud2bc\uc744 \ub204\ub974\uba74 \ucef4\ud4e8\ud130 \ub3d9\uc791\uc774 \uc6b0\uc120\uc77c\uae4c\uc694, \uc544\ub2c8\uba74 \ub9ac\uc14b\ubc84\ud2bc\uc744 \ub204\ub978 \uac8c \uc6b0\uc120\uc77c\uae4c\uc694?? \ub9ac\uc14b\ubc84\ud2bc\uc744 \ub204\ub974\uba74 \ucef4\ud4e8\ud130\uac00 \uc5b4\ub5bb\uac8c \ub3d9\uc791\ud558\ub4e0 \ub9ac\uc14b\uc774 \ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<p>Asynchronous Reset\uc774\ub780 \ub9d0\uc740, always \uad6c\ubb38\uc758 sesitive list\uc5d0 reset\uc774 \ud3ec\ud568\ub41c\ub2e4\ub294 \uc758\ubbf8\uc785\ub2c8\ub2e4. \uadf8\ub7ec\uba74 active-low\uc778 resetn\uc744 \uc0ac\uc6a9\ud558\ub294 flip-flop \uc608\uc2dc\ub97c \ubcf4\ub3c4\ub85d \ud569\uc2dc\ub2e4.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"  \/\/Asynchronous Reset Flip-Flop\n  always @(posedge clk or negedge resetn) begin\n    if (!resetn) Q1 &lt;= 1'b0; \/\/Q1 \ucd08\uae30\ud654\n    else         Q1 &lt;= D;    \/\/\ub9ac\uc14b \ud480\ub9b0 \ub4a4 \ub3d9\uc791 \ubc29\uc2dd\n  end\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ECEFF4\">  <\/span><span style=\"color: #616E88\">\/\/Asynchronous Reset Flip-Flop<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">always<\/span><span style=\"color: #D8DEE9FF\"> @(<\/span><span style=\"color: #81A1C1\">posedge<\/span><span style=\"color: #D8DEE9FF\"> clk <\/span><span style=\"color: #81A1C1\">or<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">negedge<\/span><span style=\"color: #D8DEE9FF\"> resetn) <\/span><span style=\"color: #81A1C1\">begin<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> (<\/span><span style=\"color: #81A1C1\">!<\/span><span style=\"color: #D8DEE9FF\">resetn) Q1 <\/span><span style=\"color: #81A1C1\">&lt;=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1&#39;b0<\/span><span style=\"color: #D8DEE9FF\">; <\/span><span style=\"color: #616E88\">\/\/Q1 \ucd08\uae30\ud654<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">else<\/span><span style=\"color: #D8DEE9FF\">         Q1 <\/span><span style=\"color: #81A1C1\">&lt;=<\/span><span style=\"color: #D8DEE9FF\"> D;    <\/span><span style=\"color: #616E88\">\/\/\ub9ac\uc14b \ud480\ub9b0 \ub4a4 \ub3d9\uc791 \ubc29\uc2dd<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\uc774\ub807\uac8c reg Q1\uc744 \uc791\ub3d9\uc2dc\ud0a4\uba74 Q1\uc758 \ucd08\uae30\uac12\uc774 \uc124\uc815\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0, initial \ubb38\uc73c\ub85c Q1\uc758 \ucd08\uae30\uac12\uc744 \uc124\uc815\ud558\uc9c0 \uc54a\uc544\ub3c4 \ub429\ub2c8\ub2e4.<\/p>\n\n\n<style>.kadence-column614_a64e32-ac > .kt-inside-inner-col{box-shadow:0px 0px 14px 0px rgba(0, 0, 0, 0.2);}.kadence-column614_a64e32-ac > .kt-inside-inner-col,.kadence-column614_a64e32-ac > .kt-inside-inner-col:before{border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.kadence-column614_a64e32-ac > .kt-inside-inner-col{column-gap:var(--global-kb-gap-sm, 1rem);}.kadence-column614_a64e32-ac > .kt-inside-inner-col{flex-direction:column;}.kadence-column614_a64e32-ac > .kt-inside-inner-col > .aligncenter{width:100%;}.kadence-column614_a64e32-ac > .kt-inside-inner-col:before{opacity:0.3;}.kadence-column614_a64e32-ac{position:relative;}@media all and (max-width: 1024px){.kadence-column614_a64e32-ac > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}@media all and (max-width: 767px){.kadence-column614_a64e32-ac > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}<\/style>\n<div class=\"wp-block-kadence-column kadence-column614_a64e32-ac\"><div class=\"kt-inside-inner-col\">\n<p><strong>\uad00\ub828 \uae00<\/strong><\/p>\n\n\n\n<p>\u2705<a href=\"https:\/\/rtlearner.com\/verilog-simulation-settings\/\">Simulation \ud658\uacbd \uc138\ud305 (EDA playground, Icarus verilog)<\/a><\/p>\n\n\n\n<p>\u2705<a href=\"https:\/\/rtlearner.com\/verilog-syntax\/\">\ubb38\ubc95 1 \u2013 \uae30\ubcf8 \uad6c\uc131, \uc808\ucc28 \ud560\ub2f9\uacfc \uc5f0\uc18d \ud560\ub2f9<\/a><\/p>\n<\/div><\/div>\n\n\n\n<p>\ucc38\uace0: <a href=\"https:\/\/www.eg.bucknell.edu\/~csci320\/2016-fall\/wp-content\/uploads\/2015\/08\/verilog-std-1364-2005.pdf\" target=\"_blank\" rel=\"noopener\">Verilog standard<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Continuing from my last post, I'll explain Verilog grammar. Related articles\u2026<\/p>","protected":false},"author":1,"featured_media":607,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kadence_starter_templates_imported_post":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[39],"tags":[40],"class_list":["post-614","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-verilog","tag-verilog"],"_links":{"self":[{"href":"https:\/\/rtlearner.com\/en\/wp-json\/wp\/v2\/posts\/614","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rtlearner.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rtlearner.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rtlearner.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rtlearner.com\/en\/wp-json\/wp\/v2\/comments?post=614"}],"version-history":[{"count":4,"href":"https:\/\/rtlearner.com\/en\/wp-json\/wp\/v2\/posts\/614\/revisions"}],"predecessor-version":[{"id":620,"href":"https:\/\/rtlearner.com\/en\/wp-json\/wp\/v2\/posts\/614\/revisions\/620"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rtlearner.com\/en\/wp-json\/wp\/v2\/media\/607"}],"wp:attachment":[{"href":"https:\/\/rtlearner.com\/en\/wp-json\/wp\/v2\/media?parent=614"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rtlearner.com\/en\/wp-json\/wp\/v2\/categories?post=614"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rtlearner.com\/en\/wp-json\/wp\/v2\/tags?post=614"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}<!-- This website is optimized by Airlift. Learn more: https://airlift.net. Template:. Learn more: https://airlift.net. Template: 69b92da9d36f73cd2808d6e8. Config Timestamp: 2026-03-17 10:32:09 UTC, Cached Timestamp: 2026-04-18 15:50:23 UTC -->