{"id":469990,"date":"2025-08-07T21:00:12","date_gmt":"2025-08-07T21:00:12","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=469990"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=469990","title":{"rendered":"<span>\u0417\u0430\u0449\u0438\u0442\u0438\u043c \u0432\u0434\u043e\u0432 \u0438 \u0441\u0438\u0440\u043e\u0442 \u043e\u0442 \u0445\u0438\u0449\u043d\u044b\u0445 \u0418\u0418-\u0441\u0442\u0430\u0440\u0442\u0430\u043f\u0435\u0440\u043e\u0432<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/00b\/ecc\/498\/00becc498c686b99889723e215eb6191.png\" width=\"2304\" height=\"768\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/00b\/ecc\/498\/00becc498c686b99889723e215eb6191.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/00b\/ecc\/498\/00becc498c686b99889723e215eb6191.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u041a\u043e \u043c\u043d\u0435 \u043d\u0430 \u0434\u043d\u044f\u0445 \u043e\u0431\u0440\u0430\u0442\u0438\u043b\u0438\u0441\u044c \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0434\u0432\u0430 \u0441\u0442\u0430\u0440\u0442\u0430\u043f\u0435\u0440\u0430, \u0430 \u043f\u043e\u0442\u043e\u043c \u0438 \u0438\u0437 \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u043f\u043e \u0432\u043e\u043f\u0440\u043e\u0441\u0443 EDA \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e AI. \u042f \u0434\u0430\u043b \u0432\u0441\u0435\u043c \u0442\u0440\u043e\u0438\u043c \u043e\u0434\u043d\u0443 \u0438 \u0442\u0443 \u0436\u0435 \u0437\u0430\u0434\u0430\u0447\u043a\u0443 \u0438 \u0434\u0443\u043c\u0430\u044e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0435\u0449\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0442\u0430\u043a\u0438\u0445 \u0437\u0430\u0434\u0430\u0447, \u0442\u0430\u043a \u043a\u0430\u043a \u0434\u0432\u0430 \u0442\u0443\u043b\u0430 \u044d\u0442\u0443 \u0437\u0430\u0434\u0430\u0447\u043a\u0443 \u0440\u0435\u0448\u0438\u043b\u0438, \u043e\u0434\u0438\u043d \u0442\u0443\u043b \u043d\u0430 \u043d\u0435\u0439 \u043b\u0435\u0433, \u0430 \u0435\u0449\u0435 \u0447\u0435\u0442\u044b\u0440\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u043b\u0438 \u043d\u0435\u043a\u0438\u0439 \u043a\u043e\u0434 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u044b SystemVerilog, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0435 \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u043b \u043c\u043e\u0439 \u0442\u0435\u0441\u0442, \u0442\u043e \u0435\u0441\u0442\u044c \u043d\u0435 \u044f\u0432\u043b\u044f\u043b\u0441\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c.<\/p>\n<p>\u0412 \u0447\u0435\u043c \u0441\u043e\u0446\u0438\u0430\u043b\u044c\u043d\u0430\u044f \u0437\u043d\u0430\u0447\u0438\u043c\u043e\u0441\u0442\u044c \u0442\u0430\u043a\u0438\u0445 \u0437\u0430\u0434\u0430\u0447\u0435\u043a? \u0414\u0435\u043b\u043e \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432\u0435\u043d\u0447\u0443\u0440\u043d\u044b\u0435 \u043a\u0430\u043f\u0438\u0442\u0430\u043b\u0438\u0441\u0442\u044b \u0442\u0440\u0430\u0442\u044f\u0442 \u043d\u0435 \u0441\u0432\u043e\u0438 \u0434\u0435\u043d\u044c\u0433\u0438, \u0430 \u0434\u0435\u043d\u044c\u0433\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u043d\u0441\u0442\u0438\u0442\u0443\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0438\u043d\u0432\u0435\u0441\u0442\u043e\u0440\u044b, \u0432 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438 \u043f\u0435\u043d\u0441\u0438\u043e\u043d\u043d\u044b\u0435 \u0444\u043e\u043d\u0434\u044b &#8212; \u0432\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e\u0442 \u0432 \u0444\u043e\u043d\u0434\u044b \u0432\u0435\u043d\u0447\u0443\u0440\u043d\u044b\u0445 \u043a\u0430\u043f\u0438\u0442\u0430\u043b\u0438\u0441\u0442\u043e\u0432. \u0422\u0435\u043c \u0441\u0430\u043c\u044b\u043c, \u0445\u043e\u0442\u044f \u0432 \u0421\u0428\u0410 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0437\u0430\u043a\u043e\u043d\u044b, \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u044e\u0449\u0438\u0439 \u043d\u0435\u043e\u043f\u044b\u0442\u043d\u044b\u043c \u0438\u043d\u0432\u0435\u0441\u0442\u043e\u0440\u0430\u043c (&#171;widows and orphans laws&#187; &#8212; &#171;\u0437\u0430\u043a\u043e\u043d\u044b \u043e \u0437\u0430\u0449\u0438\u0442\u0435 \u0432\u0434\u043e\u0432 \u0438 \u0441\u0438\u0440\u043e\u0442&#187;) \u0432\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c \u0432 \u0441\u0442\u0430\u0440\u0442\u0430\u043f\u044b \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e &#8212; \u0432\u0434\u043e\u0432\u044b \u0438 \u0441\u0438\u0440\u043e\u0442\u044b \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u043d\u0435 \u0437\u0430\u0449\u0438\u0449\u0435\u043d\u044b, \u0442\u0430\u043a \u043a\u0430\u043a \u0436\u0438\u0432\u0443\u0442 \u043d\u0430 \u0432\u044b\u043f\u043b\u0430\u0442\u044b \u0438\u0437 \u043f\u0435\u043d\u0441\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0444\u043e\u043d\u0434\u0430, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u043b \u0438\u0445 \u0431\u0435\u0437\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043f\u043e\u0447\u0438\u0432\u0448\u0438\u0439 \u043e\u0442\u0435\u0446 \u0441\u0435\u043c\u0435\u0439\u0441\u0442\u0432\u0430.<\/p>\n<p>\u0422\u0430\u043a\u0436\u0435 \u043d\u0435 \u043e\u0442\u043a\u0440\u043e\u044e \u0410\u043c\u0435\u0440\u0438\u043a\u0443, \u0447\u0442\u043e \u0441\u0442\u0430\u0440\u0442\u0430\u043f\u0435\u0440 \u0441\u0442\u0430\u0440\u0442\u0430\u043f\u0435\u0440\u0443 \u0440\u043e\u0437\u043d\u044c. \u041e\u0434\u043d\u0438 \u0447\u0435\u0441\u0442\u043d\u043e \u0434\u0435\u043b\u0430\u044e\u0442 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u044b \u0438 \u0440\u0435\u0448\u0430\u044e\u0442 \u0437\u0430\u0434\u0430\u0447\u043a\u0438 \u043e\u0442 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439. \u0410 \u0434\u0440\u0443\u0433\u0438\u0435 \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0442\u0441\u044f shmoozing &#8212; \u0442\u043e \u0435\u0441\u0442\u044c \u0445\u043e\u0434\u044f\u0442 \u043f\u043e \u0442\u0443\u0441\u043e\u0432\u043a\u0430\u043c \u0438 \u043f\u044b\u0442\u0430\u044e\u0442\u0441\u044f \u0447\u0442\u043e-\u0442\u043e \u0432\u043f\u0430\u0440\u0438\u0442\u044c VC \u0433\u043e\u0432\u043e\u0440\u0435\u043d\u0438\u0435\u043c \u0432 \u0441\u0442\u0438\u043b\u0435 \u041e\u0441\u0442\u0430\u043f\u0430 \u0411\u0435\u043d\u0434\u0435\u0440\u0430.<\/p>\n<p>\u0418 \u0432\u043e\u0442 \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u0449\u0438\u0442\u0438\u0442\u044c \u0432\u0435\u043d\u0447\u0443\u0440\u043d\u044b\u0445 \u043a\u0430\u043f\u0438\u0442\u0430\u043b\u0438\u0441\u0442\u043e\u0432 (\u0430 \u0447\u0435\u0440\u0435\u0437 \u043d\u0438\u0445 &#8212; \u0432\u0434\u043e\u0432 \u0438 \u0441\u0438\u0440\u043e\u0442) \u043e\u0442 \u0441\u0442\u0430\u0440\u0442\u0430\u043f\u0435\u0440\u043e\u0432 \u0432\u0442\u043e\u0440\u043e\u0433\u043e \u0442\u0438\u043f\u0430, \u043c\u044b \u0441 \u0441\u043e\u0440\u0430\u0442\u043d\u0438\u043a\u0430\u043c\u0438 \u0441\u0434\u0435\u043b\u0430\u043b\u0438 \u0437\u0430\u0434\u0430\u0447\u043a\u0443 \u043f\u043e\u0434 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c <a href=\"https:\/\/github.com\/verilog-meetup\/systemverilog-microarchitecture-challenge-for-ai-1\" rel=\"noopener noreferrer nofollow\">SystemVerilog Microarchitecture Challenge for AI No.1<\/a>:<\/p>\n<p>\u0412\u0441\u0442\u0430\u0432\u0438\u043c \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0441\u043f\u0440\u0430\u0432\u043a\u0443. Electronic Design Automation (EDA) &#8212; \u043f\u043e \u0440\u0443\u0441\u0441\u043a\u0438 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 &#171;\u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u0438\u043a\u0438&#187; \u0438\u043b\u0438 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u044b\u0439 \u0421\u0410\u041f\u0420. \u042d\u0442\u0430 \u043e\u0431\u043b\u0430\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0436\u0438\u043b\u0430 \u0441\u0432\u043e\u0438 \u0437\u043e\u043b\u043e\u0442\u044b\u0435 \u0434\u043d\u0438 (\u0438 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 VC) \u0432 \u043a\u043e\u043d\u0446\u0435 1980-\u0445 &#8212; \u043d\u0430\u0447\u0430\u043b\u0435 1990-\u0445 \u0433\u043e\u0434\u043e\u0432, \u043a\u043e\u0433\u0434\u0430 \u0438\u0437\u043e\u0431\u0440\u0435\u043b\u0438 \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c RTL-to-GDSII. \u0418\u043c\u0435\u043d\u043d\u043e \u044d\u0442\u043e\u0442 \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u043f\u043e\u0440\u043e\u0434\u0438\u043b \u0430\u0439\u0444\u043e\u043d\u044b, \u0431\u044b\u0441\u0442\u0440\u044b\u0435 \u0440\u043e\u0443\u0442\u0435\u0440\u044b \u0434\u043b\u044f \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430 \u0438 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0435 \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u0435\u043b\u0438 \u0418\u0418. \u041e\u0434\u043d\u0430\u043a\u043e \u0437\u0430\u0442\u0435\u043c \u0432\u0441\u0435 \u043c\u043e\u043d\u043e\u043f\u043e\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043b\u043e\u0441\u044c \u0432 \u043b\u0430\u043f\u0430\u0445 Synopsys \u0438 Cadence, \u0438 VC \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u043b\u0438 \u0432\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c \u0434\u0435\u043d\u044c\u0433\u0438 \u0432 EDA \u0441\u0442\u0430\u0440\u0442\u0430\u043f\u044b. \u0418 \u0432\u043e\u0442 \u0441\u0435\u0439\u0447\u0430\u0441 \u043d\u0430\u0441\u0442\u0438\u043f\u0438\u043b \u0445\u0430\u0439\u043f \u0418\u0418 \u0438 EDA \u0432\u043d\u0435\u0437\u0430\u043f\u043d\u043e \u0441\u0442\u0430\u043b\u0430 \u043f\u043e\u0434\u0430\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u0438 \u0436\u0438\u0437\u043d\u0438.<\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043c \u0437\u0430\u0434\u0430\u0447\u043a\u0443 \u0438 \u0441\u043f\u0438\u0441\u043e\u043a \u043f\u0440\u0438\u0447\u0430\u0441\u0442\u043d\u044b\u0445. \u041f\u0440\u044f\u043c\u043e \u0438\u0437 \u0444\u0430\u0439\u043b\u0430 <a href=\"https:\/\/github.com\/verilog-meetup\/systemverilog-microarchitecture-challenge-for-ai-1\/blob\/main\/README.md\" rel=\"noopener noreferrer nofollow\">README.md<\/a>:<\/p>\n<h2>SystemVerilog Microarchitecture Challenge for AI No.1<\/h2>\n<p>This repository contains a challenge to any AI software that claims to generate Verilog code. The challenge is based on a very typical scenario in an electronic company: an engineer has to write a pipelined block using a library of sub-blocks written by somebody else. Then this engineer has to verify his block using a testbench written by somebody else. He may also need to figure out the sub-block latencies and handshakes by analyzing the code, since a lot of code in electronic companies is not sufficiently documented.<\/p>\n<p>The SystemVerilog Microarchitecture Challenge for AI No.1 is based on the\u00a0<a href=\"https:\/\/github.com\/verilog-meetup\/systemverilog-homework\" rel=\"noopener noreferrer nofollow\">SystemVerilog Homework<\/a>\u00a0project by\u00a0<a href=\"https:\/\/verilog-meetup.com\/\" rel=\"noopener noreferrer nofollow\">Verilog Meetup<\/a>. It also uses the source code of an open-source\u00a0<a href=\"https:\/\/github.com\/openhwgroup\/cvw\" rel=\"noopener noreferrer nofollow\">Wally CPU<\/a>.<\/p>\n<h3>1. The Prompt<\/h3>\n<p>Finish the code of a pipelined block in the file challenge.sv. The block computes a formula &#171;a ** 5 + 0.3 * b + c&#187;. You are not allowed to implement your own submodules or functions for the addition, subtraction, multiplication, division, comparison or getting the square root of floating-point numbers. For such operations you can only use the modules from the arithmetic_block_wrappers directory. You are not allowed to change any other files except challenge.sv. You can check the results by running the script &#171;simulate&#187;. If the script outputs &#171;FAIL&#187; or does not output &#171;PASS&#187; from the code in the provided testbench.sv by running the provided script &#171;simulate&#187;, your design is not working and is not an answer to the challenge. Your design must be able to accept a new set of inputs (a, b and c) each clock cycle back-to-back and generate the computation results without any stalls and without requiring empty cycle gaps in the input. The solution code has to be synthesizable SystemVerilog RTL. A human should not help AI by tipping anything on latencies or handshakes of the submodules. The AI has to figure this out by itself by analyzing the code in the repository directories. Likewise a human should not instruct AI how to build a pipeline structure since it makes the exercise meaningless.<\/p>\n<h3>2. The Credits<\/h3>\n<p>The list of people who contributed to the SystemVerilog Homework:<\/p>\n<ol>\n<li>\n<p><a href=\"https:\/\/github.com\/yuri-panchul\" rel=\"noopener noreferrer nofollow\">Yuri Panchul<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/github.com\/unaimillan\" rel=\"noopener noreferrer nofollow\">Mike Kuskov<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/github.com\/max-kudinov\" rel=\"noopener noreferrer nofollow\">Maxim Kudinov<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/github.com\/24x7fpga\" rel=\"noopener noreferrer nofollow\">Kiran Jayarama<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/github.com\/maxvereschagin\" rel=\"noopener noreferrer nofollow\">Maxim Trofimov<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/github.com\/32FedorovAlexey\" rel=\"noopener noreferrer nofollow\">Alexey Fedorov<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/github.com\/kost-b\" rel=\"noopener noreferrer nofollow\">Konstantin Blokhin<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/github.com\/PetrDynin\" rel=\"noopener noreferrer nofollow\">Petr Dynin<\/a><\/p>\n<\/li>\n<\/ol>\n<p>\u0421\u043e\u0444\u0442\u0432\u0435\u0440 \u043d\u0443\u0436\u043d\u044b\u0439 \u0434\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u044b\u043c \u0438 \u0441\u0442\u0430\u0432\u0438\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0431\u0430\u043d\u0430\u043b\u044c\u043d\u043e \u0438 \u043f\u043e\u0434 \u041b\u0438\u043d\u0443\u043a\u0441\u043e\u043c, \u0438 \u043f\u043e\u0434 Windows (10, 11, \u0441 WSL \u0438\u043b\u0438 \u0431\u0435\u0437 WSL &#8212; \u043d\u0435\u0432\u0430\u0436\u043d\u043e) \u0438\u043b\u0438 \u043f\u043e\u0434 \u041c\u0430\u043a\u0438\u043d\u0442\u043e\u0448\u0435\u043c:<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/d88\/35b\/4bd\/d8835b4bda0d984339333db75b7ed51d.jpg\" width=\"2000\" height=\"1618\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/d88\/35b\/4bd\/d8835b4bda0d984339333db75b7ed51d.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/d88\/35b\/4bd\/d8835b4bda0d984339333db75b7ed51d.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u0422\u0430\u043a \u0447\u0442\u043e \u0436\u0435\u043b\u0430\u044e\u0449\u0438\u0435 \u043c\u043e\u0433\u0443\u0442 \u0434\u0435\u0440\u0437\u0430\u0442\u044c \u0438 \u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043c\u0438\u0440 AI EDA<\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><\/p>\n<div class=\"tm-article-poll-container\"><!--[--><\/p>\n<div class=\"tm-article-poll tm-article-poll_variant-bordered\">\n<div class=\"tm-notice tm-notice_positive tm-article-poll__notice\"><!----><\/p>\n<div class=\"tm-notice__inner\"><!----><\/p>\n<div class=\"tm-notice__content\" data-test-id=\"notice-content\"><!--[--><span>\u0422\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u043c\u043e\u0433\u0443\u0442 \u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u043e\u043f\u0440\u043e\u0441\u0435. <a rel=\"nofollow\" href=\"\/kek\/v1\/auth\/habrahabr\/?back=\/ru\/articles\/935126\/&#038;hl=ru\">\u0412\u043e\u0439\u0434\u0438\u0442\u0435<\/a>, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430.<\/span><!--]--><\/div>\n<\/div>\n<\/div>\n<p><!--[--><\/p>\n<div class=\"tm-article-poll__header\">\u0427\u0442\u043e \u0432\u044b \u0434\u0443\u043c\u0430\u0435\u0442\u0435 \u043f\u0440\u043e \u0418\u0418?<\/div>\n<div class=\"tm-article-poll__answers\"><!--[--><\/p>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent tm-article-poll__answer-percent_winning\">73.33%<\/span><span class=\"tm-article-poll__answer-label\">\u041d\u0435\u043a\u0438\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442<\/span><span class=\"tm-article-poll__answer-votes\">11<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress tm-article-poll__answer-progress_winning\" style=\"width: 73.33%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">0%<\/span><span class=\"tm-article-poll__answer-label\">\u0421\u0432\u0435\u0442\u043b\u043e\u0435 \u0431\u0443\u0434\u0443\u0449\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0427\u0435\u043b\u043e\u0432\u0435\u0447\u0435\u0441\u0442\u0432\u0430, \u0432\u0430\u0436\u043d\u0435\u0435 \u0447\u0435\u043c \u041d\u0435\u043e\u043b\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0420\u0435\u0432\u043e\u043b\u044e\u0446\u0438\u044f!<\/span><span class=\"tm-article-poll__answer-votes\">0<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 0%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">33.33%<\/span><span class=\"tm-article-poll__answer-label\">\u041f\u043e\u043b\u0435\u0437\u0435\u043d \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u0434\u0435\u043b\u0430\u0442\u044c \u0434\u043e\u043c\u0430\u0448\u043a\u0443 \u0432 \u0448\u043a\u043e\u043b\u0435 \u0438 \u0443\u043d\u0438\u0432\u0435\u0440\u0435<\/span><span class=\"tm-article-poll__answer-votes\">5<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 33.33%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">13.33%<\/span><span class=\"tm-article-poll__answer-label\">\u041c\u043e\u0436\u043d\u043e \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432 \u0434\u0440\u043e\u043d\u044b \u0434\u043b\u044f \u0447\u0438\u0441\u0442\u043e \u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0441\u043a\u0438\u0445 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0439<\/span><span class=\"tm-article-poll__answer-votes\">2<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 13.33%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">13.33%<\/span><span class=\"tm-article-poll__answer-label\">\u0414\u0440\u0443\u0433\u043e\u0435 (\u043f\u043e\u044f\u0441\u043d\u0438\u0442\u0435 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445)<\/span><span class=\"tm-article-poll__answer-votes\">2<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 13.33%\"><\/div>\n<\/div>\n<\/div>\n<p><!--]--><\/div>\n<div class=\"tm-article-poll__stats\"> \u041f\u0440\u043e\u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043b\u0438 15 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439.   \u0412\u043e\u0437\u0434\u0435\u0440\u0436\u0430\u043b\u0438\u0441\u044c 3 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. <\/div>\n<p><!--]--><\/div>\n<p><!--]--><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/935126\/\"> https:\/\/habr.com\/ru\/articles\/935126\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width\"><\/figure>\n<p>\u041a\u043e \u043c\u043d\u0435 \u043d\u0430 \u0434\u043d\u044f\u0445 \u043e\u0431\u0440\u0430\u0442\u0438\u043b\u0438\u0441\u044c \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0434\u0432\u0430 \u0441\u0442\u0430\u0440\u0442\u0430\u043f\u0435\u0440\u0430, \u0430 \u043f\u043e\u0442\u043e\u043c \u0438 \u0438\u0437 \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u043f\u043e \u0432\u043e\u043f\u0440\u043e\u0441\u0443 EDA \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e AI. \u042f \u0434\u0430\u043b \u0432\u0441\u0435\u043c \u0442\u0440\u043e\u0438\u043c \u043e\u0434\u043d\u0443 \u0438 \u0442\u0443 \u0436\u0435 \u0437\u0430\u0434\u0430\u0447\u043a\u0443 \u0438 \u0434\u0443\u043c\u0430\u044e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0435\u0449\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0442\u0430\u043a\u0438\u0445 \u0437\u0430\u0434\u0430\u0447, \u0442\u0430\u043a \u043a\u0430\u043a \u0434\u0432\u0430 \u0442\u0443\u043b\u0430 \u044d\u0442\u0443 \u0437\u0430\u0434\u0430\u0447\u043a\u0443 \u0440\u0435\u0448\u0438\u043b\u0438, \u043e\u0434\u0438\u043d \u0442\u0443\u043b \u043d\u0430 \u043d\u0435\u0439 \u043b\u0435\u0433, \u0430 \u0435\u0449\u0435 \u0447\u0435\u0442\u044b\u0440\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u043b\u0438 \u043d\u0435\u043a\u0438\u0439 \u043a\u043e\u0434 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u044b SystemVerilog, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0435 \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u043b \u043c\u043e\u0439 \u0442\u0435\u0441\u0442, \u0442\u043e \u0435\u0441\u0442\u044c \u043d\u0435 \u044f\u0432\u043b\u044f\u043b\u0441\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c.<\/p>\n<p>\u0412 \u0447\u0435\u043c \u0441\u043e\u0446\u0438\u0430\u043b\u044c\u043d\u0430\u044f \u0437\u043d\u0430\u0447\u0438\u043c\u043e\u0441\u0442\u044c \u0442\u0430\u043a\u0438\u0445 \u0437\u0430\u0434\u0430\u0447\u0435\u043a? \u0414\u0435\u043b\u043e \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432\u0435\u043d\u0447\u0443\u0440\u043d\u044b\u0435 \u043a\u0430\u043f\u0438\u0442\u0430\u043b\u0438\u0441\u0442\u044b \u0442\u0440\u0430\u0442\u044f\u0442 \u043d\u0435 \u0441\u0432\u043e\u0438 \u0434\u0435\u043d\u044c\u0433\u0438, \u0430 \u0434\u0435\u043d\u044c\u0433\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u043d\u0441\u0442\u0438\u0442\u0443\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0438\u043d\u0432\u0435\u0441\u0442\u043e\u0440\u044b, \u0432 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438 \u043f\u0435\u043d\u0441\u0438\u043e\u043d\u043d\u044b\u0435 \u0444\u043e\u043d\u0434\u044b &#8212; \u0432\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e\u0442 \u0432 \u0444\u043e\u043d\u0434\u044b \u0432\u0435\u043d\u0447\u0443\u0440\u043d\u044b\u0445 \u043a\u0430\u043f\u0438\u0442\u0430\u043b\u0438\u0441\u0442\u043e\u0432. \u0422\u0435\u043c \u0441\u0430\u043c\u044b\u043c, \u0445\u043e\u0442\u044f \u0432 \u0421\u0428\u0410 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0437\u0430\u043a\u043e\u043d\u044b, \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u044e\u0449\u0438\u0439 \u043d\u0435\u043e\u043f\u044b\u0442\u043d\u044b\u043c \u0438\u043d\u0432\u0435\u0441\u0442\u043e\u0440\u0430\u043c (&#171;widows and orphans laws&#187; &#8212; &#171;\u0437\u0430\u043a\u043e\u043d\u044b \u043e \u0437\u0430\u0449\u0438\u0442\u0435 \u0432\u0434\u043e\u0432 \u0438 \u0441\u0438\u0440\u043e\u0442&#187;) \u0432\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c \u0432 \u0441\u0442\u0430\u0440\u0442\u0430\u043f\u044b \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e &#8212; \u0432\u0434\u043e\u0432\u044b \u0438 \u0441\u0438\u0440\u043e\u0442\u044b \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u043d\u0435 \u0437\u0430\u0449\u0438\u0449\u0435\u043d\u044b, \u0442\u0430\u043a \u043a\u0430\u043a \u0436\u0438\u0432\u0443\u0442 \u043d\u0430 \u0432\u044b\u043f\u043b\u0430\u0442\u044b \u0438\u0437 \u043f\u0435\u043d\u0441\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0444\u043e\u043d\u0434\u0430, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u043b \u0438\u0445 \u0431\u0435\u0437\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043f\u043e\u0447\u0438\u0432\u0448\u0438\u0439 \u043e\u0442\u0435\u0446 \u0441\u0435\u043c\u0435\u0439\u0441\u0442\u0432\u0430.<\/p>\n<p>\u0422\u0430\u043a\u0436\u0435 \u043d\u0435 \u043e\u0442\u043a\u0440\u043e\u044e \u0410\u043c\u0435\u0440\u0438\u043a\u0443, \u0447\u0442\u043e \u0441\u0442\u0430\u0440\u0442\u0430\u043f\u0435\u0440 \u0441\u0442\u0430\u0440\u0442\u0430\u043f\u0435\u0440\u0443 \u0440\u043e\u0437\u043d\u044c. \u041e\u0434\u043d\u0438 \u0447\u0435\u0441\u0442\u043d\u043e \u0434\u0435\u043b\u0430\u044e\u0442 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u044b \u0438 \u0440\u0435\u0448\u0430\u044e\u0442 \u0437\u0430\u0434\u0430\u0447\u043a\u0438 \u043e\u0442 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439. \u0410 \u0434\u0440\u0443\u0433\u0438\u0435 \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0442\u0441\u044f shmoozing &#8212; \u0442\u043e \u0435\u0441\u0442\u044c \u0445\u043e\u0434\u044f\u0442 \u043f\u043e \u0442\u0443\u0441\u043e\u0432\u043a\u0430\u043c \u0438 \u043f\u044b\u0442\u0430\u044e\u0442\u0441\u044f \u0447\u0442\u043e-\u0442\u043e \u0432\u043f\u0430\u0440\u0438\u0442\u044c VC \u0433\u043e\u0432\u043e\u0440\u0435\u043d\u0438\u0435\u043c \u0432 \u0441\u0442\u0438\u043b\u0435 \u041e\u0441\u0442\u0430\u043f\u0430 \u0411\u0435\u043d\u0434\u0435\u0440\u0430.<\/p>\n<p>\u0418 \u0432\u043e\u0442 \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u0449\u0438\u0442\u0438\u0442\u044c \u0432\u0435\u043d\u0447\u0443\u0440\u043d\u044b\u0445 \u043a\u0430\u043f\u0438\u0442\u0430\u043b\u0438\u0441\u0442\u043e\u0432 (\u0430 \u0447\u0435\u0440\u0435\u0437 \u043d\u0438\u0445 &#8212; \u0432\u0434\u043e\u0432 \u0438 \u0441\u0438\u0440\u043e\u0442) \u043e\u0442 \u0441\u0442\u0430\u0440\u0442\u0430\u043f\u0435\u0440\u043e\u0432 \u0432\u0442\u043e\u0440\u043e\u0433\u043e \u0442\u0438\u043f\u0430, \u043c\u044b \u0441 \u0441\u043e\u0440\u0430\u0442\u043d\u0438\u043a\u0430\u043c\u0438 \u0441\u0434\u0435\u043b\u0430\u043b\u0438 \u0437\u0430\u0434\u0430\u0447\u043a\u0443 \u043f\u043e\u0434 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c <a href=\"https:\/\/github.com\/verilog-meetup\/systemverilog-microarchitecture-challenge-for-ai-1\" rel=\"noopener noreferrer nofollow\">SystemVerilog Microarchitecture Challenge for AI No.1<\/a>:<\/p>\n<p>\u0412\u0441\u0442\u0430\u0432\u0438\u043c \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0441\u043f\u0440\u0430\u0432\u043a\u0443. Electronic Design Automation (EDA) &#8212; \u043f\u043e \u0440\u0443\u0441\u0441\u043a\u0438 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 &#171;\u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u0438\u043a\u0438&#187; \u0438\u043b\u0438 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u044b\u0439 \u0421\u0410\u041f\u0420. \u042d\u0442\u0430 \u043e\u0431\u043b\u0430\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0436\u0438\u043b\u0430 \u0441\u0432\u043e\u0438 \u0437\u043e\u043b\u043e\u0442\u044b\u0435 \u0434\u043d\u0438 (\u0438 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 VC) \u0432 \u043a\u043e\u043d\u0446\u0435 1980-\u0445 &#8212; \u043d\u0430\u0447\u0430\u043b\u0435 1990-\u0445 \u0433\u043e\u0434\u043e\u0432, \u043a\u043e\u0433\u0434\u0430 \u0438\u0437\u043e\u0431\u0440\u0435\u043b\u0438 \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c RTL-to-GDSII. \u0418\u043c\u0435\u043d\u043d\u043e \u044d\u0442\u043e\u0442 \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u043f\u043e\u0440\u043e\u0434\u0438\u043b \u0430\u0439\u0444\u043e\u043d\u044b, \u0431\u044b\u0441\u0442\u0440\u044b\u0435 \u0440\u043e\u0443\u0442\u0435\u0440\u044b \u0434\u043b\u044f \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430 \u0438 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0435 \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u0435\u043b\u0438 \u0418\u0418. \u041e\u0434\u043d\u0430\u043a\u043e \u0437\u0430\u0442\u0435\u043c \u0432\u0441\u0435 \u043c\u043e\u043d\u043e\u043f\u043e\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043b\u043e\u0441\u044c \u0432 \u043b\u0430\u043f\u0430\u0445 Synopsys \u0438 Cadence, \u0438 VC \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u043b\u0438 \u0432\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c \u0434\u0435\u043d\u044c\u0433\u0438 \u0432 EDA \u0441\u0442\u0430\u0440\u0442\u0430\u043f\u044b. \u0418 \u0432\u043e\u0442 \u0441\u0435\u0439\u0447\u0430\u0441 \u043d\u0430\u0441\u0442\u0438\u043f\u0438\u043b \u0445\u0430\u0439\u043f \u0418\u0418 \u0438 EDA \u0432\u043d\u0435\u0437\u0430\u043f\u043d\u043e \u0441\u0442\u0430\u043b\u0430 \u043f\u043e\u0434\u0430\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u0438 \u0436\u0438\u0437\u043d\u0438.<\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043c \u0437\u0430\u0434\u0430\u0447\u043a\u0443 \u0438 \u0441\u043f\u0438\u0441\u043e\u043a \u043f\u0440\u0438\u0447\u0430\u0441\u0442\u043d\u044b\u0445. \u041f\u0440\u044f\u043c\u043e \u0438\u0437 \u0444\u0430\u0439\u043b\u0430 <a href=\"https:\/\/github.com\/verilog-meetup\/systemverilog-microarchitecture-challenge-for-ai-1\/blob\/main\/README.md\" rel=\"noopener noreferrer nofollow\">README.md<\/a>:<\/p>\n<h2>SystemVerilog Microarchitecture Challenge for AI No.1<\/h2>\n<p>This repository contains a challenge to any AI software that claims to generate Verilog code. The challenge is based on a very typical scenario in an electronic company: an engineer has to write a pipelined block using a library of sub-blocks written by somebody else. Then this engineer has to verify his block using a testbench written by somebody else. He may also need to figure out the sub-block latencies and handshakes by analyzing the code, since a lot of code in electronic companies is not sufficiently documented.<\/p>\n<p>The SystemVerilog Microarchitecture Challenge for AI No.1 is based on the\u00a0<a href=\"https:\/\/github.com\/verilog-meetup\/systemverilog-homework\" rel=\"noopener noreferrer nofollow\">SystemVerilog Homework<\/a>\u00a0project by\u00a0<a href=\"https:\/\/verilog-meetup.com\/\" rel=\"noopener noreferrer nofollow\">Verilog Meetup<\/a>. It also uses the source code of an open-source\u00a0<a href=\"https:\/\/github.com\/openhwgroup\/cvw\" rel=\"noopener noreferrer nofollow\">Wally CPU<\/a>.<\/p>\n<h3>1. The Prompt<\/h3>\n<p>Finish the code of a pipelined block in the file challenge.sv. The block computes a formula &#171;a ** 5 + 0.3 * b + c&#187;. You are not allowed to implement your own submodules or functions for the addition, subtraction, multiplication, division, comparison or getting the square root of floating-point numbers. For such operations you can only use the modules from the arithmetic_block_wrappers directory. You are not allowed to change any other files except challenge.sv. You can check the results by running the script &#171;simulate&#187;. If the script outputs &#171;FAIL&#187; or does not output &#171;PASS&#187; from the code in the provided testbench.sv by running the provided script &#171;simulate&#187;, your design is not working and is not an answer to the challenge. Your design must be able to accept a new set of inputs (a, b and c) each clock cycle back-to-back and generate the computation results without any stalls and without requiring empty cycle gaps in the input. The solution code has to be synthesizable SystemVerilog RTL. A human should not help AI by tipping anything on latencies or handshakes of the submodules. The AI has to figure this out by itself by analyzing the code in the repository directories. Likewise a human should not instruct AI how to build a pipeline structure since it makes the exercise meaningless.<\/p>\n<h3>2. The Credits<\/h3>\n<p>The list of people who contributed to the SystemVerilog Homework:<\/p>\n<ol>\n<li>\n<p><a href=\"https:\/\/github.com\/yuri-panchul\" rel=\"noopener noreferrer nofollow\">Yuri Panchul<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/github.com\/unaimillan\" rel=\"noopener noreferrer nofollow\">Mike Kuskov<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/github.com\/max-kudinov\" rel=\"noopener noreferrer nofollow\">Maxim Kudinov<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/github.com\/24x7fpga\" rel=\"noopener noreferrer nofollow\">Kiran Jayarama<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/github.com\/maxvereschagin\" rel=\"noopener noreferrer nofollow\">Maxim Trofimov<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/github.com\/32FedorovAlexey\" rel=\"noopener noreferrer nofollow\">Alexey Fedorov<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/github.com\/kost-b\" rel=\"noopener noreferrer nofollow\">Konstantin Blokhin<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/github.com\/PetrDynin\" rel=\"noopener noreferrer nofollow\">Petr Dynin<\/a><\/p>\n<\/li>\n<\/ol>\n<p>\u0421\u043e\u0444\u0442\u0432\u0435\u0440 \u043d\u0443\u0436\u043d\u044b\u0439 \u0434\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u044b\u043c \u0438 \u0441\u0442\u0430\u0432\u0438\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0431\u0430\u043d\u0430\u043b\u044c\u043d\u043e \u0438 \u043f\u043e\u0434 \u041b\u0438\u043d\u0443\u043a\u0441\u043e\u043c, \u0438 \u043f\u043e\u0434 Windows (10, 11, \u0441 WSL \u0438\u043b\u0438 \u0431\u0435\u0437 WSL &#8212; \u043d\u0435\u0432\u0430\u0436\u043d\u043e) \u0438\u043b\u0438 \u043f\u043e\u0434 \u041c\u0430\u043a\u0438\u043d\u0442\u043e\u0448\u0435\u043c:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p>\u0422\u0430\u043a \u0447\u0442\u043e \u0436\u0435\u043b\u0430\u044e\u0449\u0438\u0435 \u043c\u043e\u0433\u0443\u0442 \u0434\u0435\u0440\u0437\u0430\u0442\u044c \u0438 \u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043c\u0438\u0440 AI EDA<\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><\/p>\n<div class=\"tm-article-poll-container\"><!--[--><\/p>\n<div class=\"tm-article-poll tm-article-poll_variant-bordered\">\n<div class=\"tm-notice tm-notice_positive tm-article-poll__notice\"><!----><\/p>\n<div class=\"tm-notice__inner\"><!----><\/p>\n<div class=\"tm-notice__content\" data-test-id=\"notice-content\"><!--[--><span>\u0422\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u043c\u043e\u0433\u0443\u0442 \u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u043e\u043f\u0440\u043e\u0441\u0435. <a rel=\"nofollow\" href=\"\/kek\/v1\/auth\/habrahabr\/?back=\/ru\/articles\/935126\/&#038;hl=ru\">\u0412\u043e\u0439\u0434\u0438\u0442\u0435<\/a>, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430.<\/span><!--]--><\/div>\n<\/div>\n<\/div>\n<p><!--[--><\/p>\n<div class=\"tm-article-poll__header\">\u0427\u0442\u043e \u0432\u044b \u0434\u0443\u043c\u0430\u0435\u0442\u0435 \u043f\u0440\u043e \u0418\u0418?<\/div>\n<div class=\"tm-article-poll__answers\"><!--[--><\/p>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent tm-article-poll__answer-percent_winning\">73.33%<\/span><span class=\"tm-article-poll__answer-label\">\u041d\u0435\u043a\u0438\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442<\/span><span class=\"tm-article-poll__answer-votes\">11<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress tm-article-poll__answer-progress_winning\" style=\"width: 73.33%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">0%<\/span><span class=\"tm-article-poll__answer-label\">\u0421\u0432\u0435\u0442\u043b\u043e\u0435 \u0431\u0443\u0434\u0443\u0449\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0427\u0435\u043b\u043e\u0432\u0435\u0447\u0435\u0441\u0442\u0432\u0430, \u0432\u0430\u0436\u043d\u0435\u0435 \u0447\u0435\u043c \u041d\u0435\u043e\u043b\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0420\u0435\u0432\u043e\u043b\u044e\u0446\u0438\u044f!<\/span><span class=\"tm-article-poll__answer-votes\">0<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 0%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">33.33%<\/span><span class=\"tm-article-poll__answer-label\">\u041f\u043e\u043b\u0435\u0437\u0435\u043d \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u0434\u0435\u043b\u0430\u0442\u044c \u0434\u043e\u043c\u0430\u0448\u043a\u0443 \u0432 \u0448\u043a\u043e\u043b\u0435 \u0438 \u0443\u043d\u0438\u0432\u0435\u0440\u0435<\/span><span class=\"tm-article-poll__answer-votes\">5<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 33.33%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">13.33%<\/span><span class=\"tm-article-poll__answer-label\">\u041c\u043e\u0436\u043d\u043e \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432 \u0434\u0440\u043e\u043d\u044b \u0434\u043b\u044f \u0447\u0438\u0441\u0442\u043e \u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0441\u043a\u0438\u0445 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0439<\/span><span class=\"tm-article-poll__answer-votes\">2<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 13.33%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">13.33%<\/span><span class=\"tm-article-poll__answer-label\">\u0414\u0440\u0443\u0433\u043e\u0435 (\u043f\u043e\u044f\u0441\u043d\u0438\u0442\u0435 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445)<\/span><span class=\"tm-article-poll__answer-votes\">2<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 13.33%\"><\/div>\n<\/div>\n<\/div>\n<p><!--]--><\/div>\n<div class=\"tm-article-poll__stats\"> \u041f\u0440\u043e\u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043b\u0438 15 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439.   \u0412\u043e\u0437\u0434\u0435\u0440\u0436\u0430\u043b\u0438\u0441\u044c 3 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. <\/div>\n<p><!--]--><\/div>\n<p><!--]--><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/935126\/\"> https:\/\/habr.com\/ru\/articles\/935126\/<\/a><br \/><\/br><\/br><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-469990","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/469990","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=469990"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/469990\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=469990"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=469990"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=469990"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}