{"id":437778,"date":"2024-11-08T15:00:18","date_gmt":"2024-11-08T15:00:18","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=437778"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=437778","title":{"rendered":"<span>\u041a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u043b\u043e\u0433\u0438\u043a\u0430 \u043d\u0430 SystemVerilog<\/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<h2>\u041f\u0440\u0435\u0434\u0438\u0441\u043b\u043e\u0432\u0438\u0435<\/h2>\n<p>\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442!<\/p>\n<p>\u0414\u0430\u043d\u043d\u0430\u044f \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u044b \u043d\u0430 SystemVerilog \u0441\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u0430\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0443\u0433\u043b\u0443\u0431\u043b\u0435\u043d\u043d\u043e \u0432 \u044d\u0442\u043e\u043c \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0442\u044c\u0441\u044f. \u0420\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u0430 \u043e\u043d\u0430 \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e\u0431\u044b \u0434\u0440\u0443\u0433\u0438\u043c \u043d\u043e\u0432\u0438\u0447\u043a\u0430\u043c \u0431\u044b\u043b\u043e \u043f\u0440\u043e\u0449\u0435 \u0441\u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u043d\u0435\u0437\u043d\u0430\u043a\u043e\u043c\u043e\u0439 \u0441\u0440\u0435\u0434\u0435, \u043f\u043e\u044d\u0442\u043e\u043c\u0443\u00a0\u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0430\u0441\u043f\u0435\u043a\u0442\u044b \u0437\u0434\u0435\u0441\u044c \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u044b \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u043d\u043e \u0438 \u0443\u043f\u0440\u043e\u0449\u0435\u043d\u043d\u043e. \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0434\u043d\u0430 \u0438\u0437 \u043c\u043e\u0438\u0445 \u043b\u0430\u0431\u043e\u0440\u0430\u0442\u043e\u0440\u043d\u044b\u0445 \u0440\u0430\u0431\u043e\u0442 \u0432 \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0438\u0442\u0435\u0442\u0435.<\/p>\n<p>\u0427\u0442\u043e \u0432\u043e\u043e\u0431\u0449\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u0438\u0437 \u0441\u0435\u0431\u044f \u044f\u0437\u044b\u043a\u0438 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u044b? \u0415\u0441\u043b\u0438 \u043a\u0440\u0430\u0442\u043a\u043e, \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043e\u043d\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438\u0441\u044c \u0434\u043b\u044f \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u043b\u044c\u043d\u044b\u0445 \u0441\u0445\u0435\u043c. \u041e\u043d\u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0442\u0435\u043a\u0441\u0442\u0430 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u0434\u043e\u043b\u0436\u043d\u0430 \u0432\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u0430, \u0438 \u043a\u0430\u043a \u043e\u043d\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u044b \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439. \u0414\u0430\u043b\u0435\u0435 \u044d\u0442\u0438 \u0437\u0430\u043f\u0438\u0441\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u043b\u0438\u0441\u044c \u043d\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u043e, \u0433\u0434\u0435 \u0431\u0440\u0430\u043b\u0441\u044f \u043a\u0443\u0441\u043e\u043a \u043a\u0440\u0435\u043c\u043d\u0438\u044f \u0438 \u0438\u0437\u0433\u043e\u0442\u0430\u0432\u043b\u0438\u0432\u0430\u043b\u0430\u0441\u044c \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 (ASIC). \u0421\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u041f\u041b\u0418\u0421\u044b \u2013 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u044b\u0435 \u043c\u043d\u043e\u0433\u043e\u043a\u0440\u0430\u0442\u043d\u043e \u043c\u0435\u043d\u044f\u0442\u044c \u0441\u0432\u043e\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0436\u0435\u043b\u0435\u0437\u0430. \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043e \u043d\u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <a href=\"https:\/\/en.wikipedia.org\/wiki\/Programmable_logic_device\" rel=\"noopener noreferrer nofollow\">\u0432\u043e\u0442 \u0437\u0434\u0435\u0441\u044c<\/a>.<\/p>\n<p>\u0414\u043b\u044f \u044f\u0437\u044b\u043a\u043e\u0432 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u044b \u0431\u044b\u043b\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u044b \u0441\u0438\u043d\u0442\u0435\u0437\u0430\u0442\u043e\u0440\u044b, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u0438\u0445 \u0432 \u0431\u0438\u0442\u043e\u0432\u044b\u0435 \u043f\u043e\u0442\u043e\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u044e\u0442\u0441\u044f \u043d\u0430 \u041f\u041b\u0418\u0421\u044b \u0438 \u0437\u0430\u0434\u0430\u044e\u0442 \u0438\u043c \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443.<\/p>\n<p>SystemVerilog \u2013 \u044f\u0437\u044b\u043a \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u044b. \u041d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u043d\u0435\u043c \u043a\u043e\u0434 \u043e\u0431\u044b\u0447\u043d\u043e \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u044d\u0442\u0430\u043f\u044b:<\/p>\n<ol>\n<li>\n<p>\u041f\u0440\u043e\u0433\u043e\u043d \u0432 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438 \u0434\u043b\u044f \u043e\u0442\u043b\u0430\u0434\u043a\u0438.<\/p>\n<\/li>\n<li>\n<p>\u0421\u0438\u043d\u0442\u0435\u0437 \u0432 \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0441\u0445\u0435\u043c\u0443.<\/p>\n<\/li>\n<li>\n<p>\u0420\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u044d\u0442\u043e\u0439 \u0441\u0445\u0435\u043c\u044b \u043d\u0430 \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u043e\u0439 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u041f\u041b\u0418\u0421.<\/p>\n<\/li>\n<li>\n<p>\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0431\u0438\u0442\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430.<\/p>\n<\/li>\n<li>\n<p>\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a \u041f\u041b\u0418\u0421 \u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0432 \u043d\u0435\u0435 \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430.<\/p>\n<\/li>\n<\/ol>\n<p>\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0431\u0443\u0434\u0443\u0442 \u0437\u0430\u0442\u0440\u043e\u043d\u0443\u0442\u044b \u043f\u0443\u043d\u043a\u0442\u044b 1 \u0438 2. \u041f\u0440\u043e \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u044f, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043d\u0430\u043f\u0438\u0448\u0443 \u0435\u0449\u0435 \u043e\u0434\u043d\u0443 \u0441\u0442\u0430\u0442\u044c\u044e, \u0433\u0434\u0435 \u0443\u043f\u043e\u0440 \u0431\u0443\u0434\u0435\u0442 \u0434\u0435\u043b\u0430\u0442\u044c\u0441\u044f \u0438\u043c\u0435\u043d\u043d\u043e \u043d\u0430 \u0437\u0430\u043f\u0443\u0441\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u043e\u0439 \u0437\u0434\u0435\u0441\u044c \u0441\u0445\u0435\u043c\u044b \u043d\u0430 \u0436\u0435\u043b\u0435\u0437\u0435. \u0410 \u0441\u0435\u0439\u0447\u0430\u0441 \u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u0442\u044c \u043a \u0437\u0430\u0434\u0430\u0447\u0435.<\/p>\n<h2>\u0421\u0443\u0442\u044c \u0437\u0430\u0434\u0430\u0447\u0438<\/h2>\n<p>\u0422\u0435\u043a\u0441\u0442 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0437\u0432\u0443\u0447\u0438\u0442 \u0442\u0430\u043a: &#171;\u0421\u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u0432\u0435\u0440\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0430 FPGA \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u043e\u043d\u043d\u0443\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u0435\u043b\u044f \u043f\u0440\u0438\u043a\u043b\u0430\u0434\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438&#187;.<\/p>\n<p>\u041a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u2013 \u044d\u0442\u043e \u0441\u0445\u0435\u043c\u0430, \u0432\u044b\u0445\u043e\u0434 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u0445\u043e\u0434\u043e\u0432. \u0423 \u043d\u0435\u0435 \u043d\u0435\u0442 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0445 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439 \u0438 \u043a\u0430\u043a\u043e\u0439-\u043b\u0438\u0431\u043e \u043f\u0430\u043c\u044f\u0442\u0438, \u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043a\u0430\u0436\u0434\u043e\u043c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0437\u0430 1 \u0442\u0430\u043a\u0442.<\/p>\n<p>\u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043d\u0443\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c, \u043c\u043d\u0435 \u0434\u043e\u0441\u0442\u0430\u043b\u0441\u044f \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440 \u0434\u0432\u0443\u0445 32-\u0431\u0438\u0442\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b (IEEE-754) \u0441 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0435\u0439 \u0442\u043e\u0447\u043a\u043e\u0439.<\/p>\n<p><strong>\u0421\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0445\u0435\u043c\u044b<\/strong><\/p>\n<p>\u0412 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0438 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u044b (\u0434\u0430 \u0438 \u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0432 \u0446\u0435\u043b\u043e\u043c \u0442\u043e\u0436\u0435) \u043e\u0447\u0435\u043d\u044c \u0432\u0430\u0436\u043d\u043e \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u043e\u0434\u0443\u043c\u0430\u0442\u044c \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u0447\u0435\u0442\u043a\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c, \u0447\u0442\u043e \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e \u043e\u043d\u0430 \u0431\u0443\u0434\u0435\u0442 \u0434\u0435\u043b\u0430\u0442\u044c \u0438 \u043a\u0430\u043a\u0438\u0435 \u0448\u0430\u0433\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f, \u0438 \u043b\u0438\u0448\u044c \u043f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0430\u0442\u044c \u043a \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044e \u043a\u043e\u0434\u0430, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0442\u043e\u043c \u043d\u0435 \u043f\u0435\u0440\u0435\u0434\u0435\u043b\u044b\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u043d\u0430 \u0445\u043e\u0434\u0443.<\/p>\n<p>\u041f\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0443 IEEE-754 32-\u0431\u0438\u0442\u043d\u043e\u0435 \u0432\u0435\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:\u00a0<\/p>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/a76\/3d8\/a22\/a763d8a2218832e0ca55ef4a8e16efa6.png\" alt=\"IEEE-754 32-bit float\" title=\"IEEE-754 32-bit float\" width=\"393\" height=\"152\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a76\/3d8\/a22\/a763d8a2218832e0ca55ef4a8e16efa6.png\"\/><\/p>\n<div><figcaption>IEEE-754 32-bit float<\/figcaption><\/div>\n<\/figure>\n<p>1-\u0439 \u0431\u0438\u0442 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0437\u043d\u0430\u043a \u0447\u0438\u0441\u043b\u0430, 8 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u2013 \u043f\u043e\u0440\u044f\u0434\u043e\u043a (\u0441\u0442\u0435\u043f\u0435\u043d\u044c \u0434\u0432\u043e\u0439\u043a\u0438, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0431\u0443\u0434\u0435\u0442 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0430 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0430 +127 \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0441\u0442\u0435\u043f\u0435\u043d\u0435\u0439), \u0430 \u043e\u0441\u0442\u0430\u0432\u0448\u0438\u0435\u0441\u044f 23 \u2013 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0443.<\/p>\n<p>\u0412\u0435\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0438\u0437 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n<ol>\n<li>\n<p>\u041a \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0435 \u0441\u043b\u0435\u0432\u0430 \u043f\u0440\u0438\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0435\u0434\u0438\u043d\u0438\u0446\u0430 \u0441 \u0437\u0430\u043f\u044f\u0442\u043e\u0439, \u0432\u0441\u0435 23 \u0435\u0435 \u0440\u0430\u0437\u0440\u044f\u0434\u0430 \u043f\u043e\u043f\u0430\u0434\u0430\u044e\u0442 \u0432 \u0434\u0440\u043e\u0431\u043d\u0443\u044e \u0447\u0430\u0441\u0442\u044c.<\/p>\n<\/li>\n<li>\n<p>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0443\u043c\u043d\u043e\u0436\u0430\u0435\u0442\u0441\u044f \u043d\u0430 2^(\u043f\u043e\u0440\u044f\u0434\u043e\u043a &#8212; 127).<\/p>\n<\/li>\n<li>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0443\u043c\u043d\u043e\u0436\u0430\u0435\u0442\u0441\u044f \u043d\u0430 (-1)^(\u0437\u043d\u0430\u043a\u043e\u0432\u044b\u0439 \u0431\u0438\u0442). (1 \u2013 \u0447\u0438\u0441\u043b\u043e \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435, 0 \u2013 \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435).<\/p>\n<\/li>\n<\/ol>\n<p>\u0414\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0447\u0438\u0441\u043b\u043e \u043d\u0430 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0435 \u0432\u044b\u0448\u0435:<\/p>\n<ol>\n<li>\n<p>\u0414\u043e\u0431\u0430\u0432\u0438\u043c \u0441\u043b\u0435\u0432\u0430 \u043a \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0435 1: 1.11010100000000000000000. \u0412 \u0434\u0435\u0441\u044f\u0442\u0438\u0447\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0432\u043d\u043e 1 * 2^0 + 1 * 2^-1 + 1 * 2^-2 + 1 * 2^-4 + 1 * 2^-6 = 1 + 1\/2 + 1\/4 + 1\/16 + 1\/64 = 1 + 53\/64 = 1.828125.<\/p>\n<\/li>\n<li>\n<p>\u0412 \u0431\u0438\u0442\u0430\u0445 \u043f\u043e\u0440\u044f\u0434\u043a\u0430 \u043b\u0435\u0436\u0438\u0442 \u0447\u0438\u0441\u043b\u043e 134, \u043e\u0442\u043d\u0438\u043c\u0430\u0435\u043c 127 \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c 7.<\/p>\n<\/li>\n<li>\n<p>\u0417\u043d\u0430\u043a\u043e\u0432\u044b\u0439 \u0431\u0438\u0442 \u0440\u0430\u0432\u0435\u043d 0, \u0447\u0438\u0441\u043b\u043e \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435, 1.828125 * 2^7 = 234.0.<\/p>\n<\/li>\n<\/ol>\n<p>\u041e\u0447\u0435\u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0434\u043b\u044f \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0442\u0430\u043a\u0438\u0445 \u0447\u0438\u0441\u0435\u043b \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0440\u043e\u0441\u0443\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0438\u0442\u044b, \u043a\u0430\u043a \u043c\u044b \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u043c \u043f\u0440\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f\u0445 \u043d\u0430\u0434 \u0446\u0435\u043b\u044b\u043c\u0438. \u0414\u043b\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u043d\u0430\u0434 \u0432\u0435\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c\u0438 \u0447\u0438\u0441\u043b\u0430\u043c\u0438 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c:<\/p>\n<p><strong>\u0421\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u0435\u043b \u0441 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u043c \u0437\u043d\u0430\u043a\u043e\u043c.<\/strong><\/p>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/d71\/909\/65d\/d7190965ded410a0127f4decfd8b70cc.png\" alt=\"\u041e\u043f\u0435\u0440\u0430\u043d\u0434\u044b\" title=\"\u041e\u043f\u0435\u0440\u0430\u043d\u0434\u044b\" width=\"372\" height=\"117\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d71\/909\/65d\/d7190965ded410a0127f4decfd8b70cc.png\"\/><\/p>\n<div><figcaption>\u041e\u043f\u0435\u0440\u0430\u043d\u0434\u044b<\/figcaption><\/div>\n<\/figure>\n<ol>\n<li>\n<p>\u041a \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0430\u043c \u0441\u043b\u0435\u0432\u0430 \u043f\u0440\u0438\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0435\u0434\u0438\u043d\u0438\u0446\u0430, \u0434\u043b\u0438\u043d\u0430 \u043c\u0430\u043d\u0442\u0438\u0441\u0441 \u0442\u0435\u043f\u0435\u0440\u044c \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 24 \u0431\u0438\u0442\u0430.<\/p>\n<\/li>\n<\/ol>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/fc8\/65b\/3da\/fc865b3dacdda3cd2a12fc513485a38f.png\" alt=\"\u041c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u043e\u0432 \u0441 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u0435\u0434\u0438\u043d\u0438\u0446\u0435\u0439 \u0432 \u043d\u0430\u0447\u0430\u043b\u0435\" title=\"\u041c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u043e\u0432 \u0441 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u0435\u0434\u0438\u043d\u0438\u0446\u0435\u0439 \u0432 \u043d\u0430\u0447\u0430\u043b\u0435\" width=\"222\" height=\"104\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/fc8\/65b\/3da\/fc865b3dacdda3cd2a12fc513485a38f.png\"\/><\/p>\n<div><figcaption>\u041c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u043e\u0432 \u0441 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u0435\u0434\u0438\u043d\u0438\u0446\u0435\u0439 \u0432 \u043d\u0430\u0447\u0430\u043b\u0435<\/figcaption><\/div>\n<\/figure>\n<ol start=\"2\">\n<li>\n<p>\u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432 \u043e\u0431\u043e\u0438\u0445 \u0447\u0438\u0441\u0435\u043b. \u041c\u0430\u043d\u0442\u0438\u0441\u0441\u0430 \u0442\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430, \u0447\u0435\u0439 \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u043c\u0435\u043d\u044c\u0448\u0435, \u0441\u0434\u0432\u0438\u0433\u0430\u0435\u0442\u0441\u044f \u0432\u043f\u0440\u0430\u0432\u043e \u043d\u0430 \u0440\u0430\u0437\u043d\u0438\u0446\u0443 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432.<\/p>\n<\/li>\n<\/ol>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/529\/d57\/8fc\/529d578fc955addb11558a06f18e7cf7.png\" alt=\"\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432\" title=\"\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432\" width=\"229\" height=\"112\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/529\/d57\/8fc\/529d578fc955addb11558a06f18e7cf7.png\"\/><\/p>\n<div><figcaption>\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432<\/figcaption><\/div>\n<\/figure>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/23a\/dd2\/7ad\/23add27adfbe6c151efc03b28f07c4c0.png\" alt=\"\u0421\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u0447\u0438\u0441\u043b\u0430 \u0441 \u043c\u0435\u043d\u044c\u0448\u0438\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u043c\" title=\"\u0421\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u0447\u0438\u0441\u043b\u0430 \u0441 \u043c\u0435\u043d\u044c\u0448\u0438\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u043c\" width=\"350\" height=\"56\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/23a\/dd2\/7ad\/23add27adfbe6c151efc03b28f07c4c0.png\"\/><\/p>\n<div><figcaption>\u0421\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u0447\u0438\u0441\u043b\u0430 \u0441 \u043c\u0435\u043d\u044c\u0448\u0438\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u043c<\/figcaption><\/div>\n<\/figure>\n<ol start=\"3\">\n<li>\n<p>\u041c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e\u0442\u0441\u044f, \u043a\u0430\u043a \u043e\u0431\u044b\u0447\u043d\u044b\u0435 \u0446\u0435\u043b\u044b\u0435 \u0447\u0438\u0441\u043b\u0430 \u0431\u0435\u0437 \u0437\u043d\u0430\u043a\u0430 (\u0437\u0434\u0435\u0441\u044c \u043e\u0447\u0435\u043d\u044c \u0432\u0430\u0436\u043d\u043e \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c, \u0447\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u043e\u0438\u0437\u043e\u0439\u0442\u0438 \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 1 \u0431\u0438\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0438 \u0432 \u043a\u043e\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u0435\u043b\u044c\u0437\u044f \u0442\u0435\u0440\u044f\u0442\u044c).<\/p>\n<\/li>\n<\/ol>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/917\/cc2\/8a1\/917cc28a1699334fcc8f6f3ac2fa0140.png\" alt=\"\u0421\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\" title=\"\u0421\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\" width=\"444\" height=\"187\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/917\/cc2\/8a1\/917cc28a1699334fcc8f6f3ac2fa0140.png\"\/><\/p>\n<div><figcaption>\u0421\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u0430\u043d\u0442\u0438\u0441\u0441<\/figcaption><\/div>\n<\/figure>\n<ol start=\"4\">\n<li>\n<p>\u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u043e\u0440\u044f\u0434\u043a\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0431\u0435\u0440\u0435\u0442\u0441\u044f \u0431\u043e\u043b\u044c\u0448\u0438\u0439 \u0438\u0437 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u043e\u0432 (\u0442\u043e\u0442, \u0447\u0442\u043e \u043d\u0435 \u0434\u0432\u0438\u0433\u0430\u043b\u0441\u044f). \u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 134.<\/p>\n<\/li>\n<li>\n<p>\u041d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0447\u0438\u0441\u043b\u0430 (\u043d\u0443\u0436\u043d\u0430 \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043c\u044b \u043d\u0435 \u0442\u0435\u0440\u044f\u043b\u0438 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c \u0441\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c). \u041c\u0430\u043d\u0442\u0438\u0441\u0441\u0430 \u0441\u0434\u0432\u0438\u0433\u0430\u0435\u0442\u0441\u044f \u0442\u0430\u043a, \u0447\u0442\u043e \u043f\u0435\u0440\u0432\u0430\u044f \u0435\u0434\u0438\u043d\u0438\u0446\u0430 \u0432 \u043d\u0435\u0439 \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u0442 \u043d\u0430 24 \u0440\u0430\u0437\u0440\u044f\u0434, \u0440\u043e\u0432\u043d\u043e \u043d\u0430 \u043c\u0435\u0441\u0442\u043e \u0442\u043e\u0439 \u0435\u0434\u0438\u043d\u0438\u0446\u044b, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u044b \u043f\u0440\u0438\u043f\u0438\u0441\u044b\u0432\u0430\u043b\u0438 \u043a \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0430\u043c \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u043e\u0432 \u0432 \u043f\u0443\u043d\u043a\u0442\u0435 1. \u041f\u0440\u0438 \u0441\u0434\u0432\u0438\u0433\u0435 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0438\u043d\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0438\u043b\u0438 \u0434\u0435\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f.<\/p>\n<ul>\n<li>\n<p>\u0415\u0441\u043b\u0438 \u0443 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0438\u0440\u0443\u044e\u0449\u0435\u0439 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u043e\u043a\u0430\u0437\u0430\u043b\u0430\u0441\u044c \u0435\u0434\u0438\u043d\u0438\u0446\u0430 \u0432 25 \u0440\u0430\u0437\u0440\u044f\u0434\u0435 (\u043f\u0435\u0440\u0435\u043d\u043e\u0441 \u043f\u0440\u0438 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0438), \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0430 \u0441\u0434\u0432\u0438\u0433\u0430\u0435\u0442\u0441\u044f \u0432\u043f\u0440\u0430\u0432\u043e \u043d\u0430 1, \u0430 \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0430 1.<\/p>\n<\/li>\n<li>\n<p>\u0415\u0441\u043b\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0438\u0440\u0443\u044e\u0449\u0430\u044f \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0430 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0441 0, \u043e\u043d\u0430 \u0434\u0432\u0438\u0433\u0430\u0435\u0442\u0441\u044f \u0432\u043b\u0435\u0432\u043e, \u043f\u043e\u043a\u0430 24-\u0439 \u0440\u0430\u0437\u0440\u044f\u0434 \u043d\u0435 \u0441\u0442\u0430\u043d\u0435\u0442 \u0440\u0430\u0432\u0435\u043d 1. \u041f\u0440\u0438 \u043a\u0430\u0436\u0434\u043e\u043c \u0441\u0434\u0432\u0438\u0433\u0435 \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0435\u0442\u0441\u044f \u043d\u0430 1.<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/048\/df5\/b29\/048df5b299a1a301fbce301e55747883.png\" alt=\"\u041d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0441\u0443\u043c\u043c\u044b \u043c\u0430\u043d\u0442\u0438\u0441\u0441\" title=\"\u041d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0441\u0443\u043c\u043c\u044b \u043c\u0430\u043d\u0442\u0438\u0441\u0441\" width=\"357\" height=\"37\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/048\/df5\/b29\/048df5b299a1a301fbce301e55747883.png\"\/><\/p>\n<div><figcaption>\u041d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0441\u0443\u043c\u043c\u044b \u043c\u0430\u043d\u0442\u0438\u0441\u0441<\/figcaption><\/div>\n<\/figure>\n<ol start=\"6\">\n<li>\n<p>\u0417\u043d\u0430\u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0431\u0435\u0440\u0435\u0442\u0441\u044f \u043e\u0442 \u043b\u044e\u0431\u043e\u0433\u043e \u0438\u0437 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u0430, \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0431\u044b\u043b \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d \u0432 \u043f\u0443\u043d\u043a\u0442\u0435 5, \u043e\u0442 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0439 \u0442\u0430\u043c \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u0431\u0435\u0440\u0443\u0442\u0441\u044f 23 \u043c\u043b\u0430\u0434\u0448\u0438\u0445 \u0440\u0430\u0437\u0440\u044f\u0434\u0430. \u0418\u0437 \u044d\u0442\u0438\u0445 \u0447\u0430\u0441\u0442\u0435\u0439 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u043d\u0430\u0448 \u043e\u0442\u0432\u0435\u0442.<\/p>\n<\/li>\n<\/ol>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/71b\/9cf\/bbe\/71b9cfbbe7abfddebc0f38d577980b58.png\" alt=\"\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u044f\" title=\"\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u044f\" width=\"375\" height=\"49\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/71b\/9cf\/bbe\/71b9cfbbe7abfddebc0f38d577980b58.png\"\/><\/p>\n<div><figcaption>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/figcaption><\/div>\n<\/figure>\n<p><strong>\u0421\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u0435\u043b \u0441 \u0440\u0430\u0437\u043d\u044b\u043c\u0438 \u0437\u043d\u0430\u043a\u0430\u043c\u0438.<\/strong><\/p>\n<p>\u0420\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0442\u0430\u043a \u0436\u0435, \u043a\u0430\u043a \u0438 \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0441 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u043c\u0438 \u0437\u043d\u0430\u043a\u0430\u043c\u0438, \u043e\u0434\u043d\u0430\u043a\u043e \u0435\u0441\u0442\u044c \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u0432 \u043f\u0443\u043d\u043a\u0442\u0435 3. \u0418\u0437 \u0431\u043e\u043b\u044c\u0448\u0435\u0439 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u0432\u0441\u0435\u0433\u0434\u0430 \u0432\u044b\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u043c\u0435\u043d\u044c\u0448\u0430\u044f. \u0415\u0441\u043b\u0438 \u0434\u043b\u044f \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0433\u043e \u0432\u044b\u0447\u0438\u0442\u0430\u043d\u0438\u044f \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u043c\u0435\u043d\u044f\u0442\u044c \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u043c\u0435\u0441\u0442\u0430\u043c\u0438, \u0437\u043d\u0430\u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430, \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u0440\u0430\u0432\u043d\u044b\u0439 \u0437\u043d\u0430\u043a\u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430, \u0442\u0430\u043a \u0436\u0435 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u0441\u044f \u043d\u0430 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u043f\u043e\u043b\u043e\u0436\u043d\u044b\u0439.<\/p>\n<h2>\u0421\u0445\u0435\u043c\u0430<\/h2>\n<p>\u0415\u0441\u043b\u0438 \u043f\u0440\u043e\u0439\u0442\u0438\u0441\u044c \u043f\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430\u043c \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e, \u043c\u043e\u0436\u043d\u043e \u0438\u0437\u043e\u0431\u0440\u0430\u0437\u0438\u0442\u044c \u043d\u0430\u0448 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440. \u0412\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/367\/db1\/462\/367db14621195753945c0771e91fa527.png\" alt=\"\u041f\u0440\u0438\u043c\u0435\u0440\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430 \u0447\u0438\u0441\u0435\u043b \u0441 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0435\u0439 \u0442\u043e\u0447\u043a\u043e\u0439\" title=\"\u041f\u0440\u0438\u043c\u0435\u0440\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430 \u0447\u0438\u0441\u0435\u043b \u0441 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0435\u0439 \u0442\u043e\u0447\u043a\u043e\u0439\" width=\"817\" height=\"729\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/367\/db1\/462\/367db14621195753945c0771e91fa527.png\"\/><\/p>\n<div><figcaption>\u041f\u0440\u0438\u043c\u0435\u0440\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430 \u0447\u0438\u0441\u0435\u043b \u0441 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0435\u0439 \u0442\u043e\u0447\u043a\u043e\u0439<\/figcaption><\/div>\n<\/figure>\n<h2>\u041d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043a\u043e\u0434\u0430<\/h2>\n<p>\u041d\u0443 \u0447\u0442\u043e, \u0441\u0445\u0435\u043c\u0430 \u043e\u043f\u0438\u0441\u0430\u043d\u0430, \u043f\u0440\u0438\u0448\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043d\u0430 SystemVerilog. \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0441\u0440\u0435\u0434\u044b \u044f \u0431\u0443\u0434\u0443 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Vivado 2019.1. <\/p>\n<p>\u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u043f\u0440\u043e\u0435\u043a\u0442 \u043f\u043e\u0434 \u043d\u0443\u0436\u043d\u0443\u044e \u0436\u0435\u043b\u0435\u0437\u043a\u0443 (\u0438\u043b\u0438 \u0431\u0435\u0440\u0435\u043c \u0448\u0430\u0431\u043b\u043e\u043d, \u043a\u0430\u043a \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0441 \u043c\u043e\u0438\u043c \u0437\u0430\u0434\u0430\u043d\u0438\u0435\u043c).<\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0434\u0432\u0443\u043c\u044f \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c\u0438 \u0432\u0438\u0434\u0430\u043c\u0438 \u0444\u0430\u0439\u043b\u043e\u0432: Design Source \u0438 Simulation Source. \u0412 \u043f\u0435\u0440\u0432\u044b\u0445 \u0431\u0443\u0434\u0435\u0442 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u0432\u0441\u044f \u043b\u043e\u0433\u0438\u043a\u0430, \u0430 \u0432\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0435\u0440\u0432\u044b\u0445. \u0421\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u0441\u0445\u0435\u043c\u0443, \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u0443\u044e \u0440\u0430\u043d\u0435\u0435 \u0438 \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0430\u0435\u043c.<\/p>\n<p>\u0414\u043b\u044f \u043b\u0443\u0447\u0448\u0435\u0433\u043e \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u044f \u043f\u0440\u0438\u0432\u0435\u0434\u0443 \u0437\u0434\u0435\u0441\u044c \u0434\u0432\u0430 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c.<\/p>\n<h2>\u041f\u0435\u0440\u0432\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438<\/h2>\n<p>\u0415\u0433\u043e \u044f \u0432 \u0448\u0443\u0442\u043a\u0443\u00a0\u043d\u0430\u0437\u044b\u0432\u0430\u044e \u00ab\u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u043c \u0432\u0435\u0440\u0438\u043b\u043e\u0433\u043e\u043c\u00bb, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e\u00a0\u0432\u00a0\u043d\u0435\u043c \u043c\u044b \u0431\u0443\u043a\u0432\u0430\u043b\u044c\u043d\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u043c, \u043a\u0430\u043a\u0438\u0435 \u043f\u0440\u043e\u0432\u043e\u0434\u0430 \u043a\u0443\u0434\u0430 \u0432\u043e\u0442\u043a\u043d\u0443\u0442\u044c, \u0447\u0442\u043e\u0431\u044b \u0432\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e, \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u0432\u043e\u0441\u0441\u043e\u0437\u0434\u0430\u0432\u0430\u044f \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u0443\u044e \u0432\u044b\u0448\u0435 \u0441\u0445\u0435\u043c\u0443. \u042d\u0442\u043e\u0442 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u0438\u0431\u043b\u0438\u0436\u0435\u043d \u043a\u00a0\u043d\u0435\u0439.<\/p>\n<p>\u041e\u043d \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043e\u0447\u0435\u043d\u044c \u0441\u043b\u043e\u0436\u043d\u044b\u043c, \u043d\u043e\u00a0\u0435\u0441\u043b\u0438 \u0432\u00a0\u043d\u0435\u043c \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f, \u0442\u043e \u0432\u0442\u043e\u0440\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u043d\u044f\u0442\u043d\u0435\u0435. \u041f\u0440\u0438\u00a0\u0442\u0430\u043a\u043e\u043c \u043f\u043e\u0434\u0445\u043e\u0434\u0435 \u043c\u044b \u0438\u0434\u0435\u043c \u043e\u0442\u00a0\u0441\u0430\u043c\u044b\u0445 \u043c\u0435\u043b\u043a\u0438\u0445 \u0447\u0430\u0441\u0442\u0435\u0439. \u0412\u00a0\u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0447\u0430\u0442\u044c \u0441\u00a0\u043f\u043e\u043b\u0443\u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430. \u042d\u0442\u043e \u0442\u0430\u043a\u0430\u044f \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u043d\u0430\u00a0\u0432\u0445\u043e\u0434 \u043e\u0434\u043d\u043e\u0431\u0438\u0442\u043e\u0432\u044b\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b A \u0438 B, \u0430\u00a0\u043d\u0430\u00a0\u0432\u044b\u0445\u043e\u0434 \u0432\u044b\u0434\u0430\u0435\u0442 \u0431\u0438\u0442 \u0441\u0443\u043c\u043c\u044b \u0438 \u0431\u0438\u0442 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.<\/p>\n<p>\u0421\u043e\u0437\u0434\u0430\u0435\u043c \u043d\u043e\u0432\u044b\u0439 Design Source.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/ddc\/72f\/0a4\/ddc72f0a416f6175f783a775ca2d9a51.png\" alt=\"\u041a\u043d\u043e\u043f\u043a\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\" title=\"\u041a\u043d\u043e\u043f\u043a\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\" width=\"656\" height=\"362\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ddc\/72f\/0a4\/ddc72f0a416f6175f783a775ca2d9a51.png\"\/><\/p>\n<div><figcaption>\u041a\u043d\u043e\u043f\u043a\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430<\/figcaption><\/div>\n<\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/303\/61b\/7e9\/30361b7e914b11be918ca2c6120da4f6.png\" alt=\"\u0412\u044b\u0431\u043e\u0440 \u0442\u0438\u043f\u0430 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 (Design Source)\" title=\"\u0412\u044b\u0431\u043e\u0440 \u0442\u0438\u043f\u0430 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 (Design Source)\" width=\"839\" height=\"567\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/303\/61b\/7e9\/30361b7e914b11be918ca2c6120da4f6.png\"\/><\/p>\n<div><figcaption>\u0412\u044b\u0431\u043e\u0440 \u0442\u0438\u043f\u0430 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 (Design Source)<\/figcaption><\/div>\n<\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/769\/1ee\/71a\/7691ee71a977f26bf8c96c64b230b4ce.png\" alt=\"\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430\" title=\"\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430\" width=\"838\" height=\"567\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/769\/1ee\/71a\/7691ee71a977f26bf8c96c64b230b4ce.png\"\/><\/p>\n<div><figcaption>\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430<\/figcaption><\/div>\n<\/figure>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/58a\/a11\/6c6\/58aa116c6ee2dd5731c9052537fcc949.png\" alt=\"\u0423\u043a\u0430\u0437\u0430\u043d\u0438\u0435 \u044f\u0437\u044b\u043a\u0430, \u0438\u043c\u0435\u043d\u0438 \u0444\u0430\u0439\u043b\u0430 \u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f\" title=\"\u0423\u043a\u0430\u0437\u0430\u043d\u0438\u0435 \u044f\u0437\u044b\u043a\u0430, \u0438\u043c\u0435\u043d\u0438 \u0444\u0430\u0439\u043b\u0430 \u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f\" width=\"364\" height=\"247\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/58a\/a11\/6c6\/58aa116c6ee2dd5731c9052537fcc949.png\"\/><\/p>\n<div><figcaption>\u0423\u043a\u0430\u0437\u0430\u043d\u0438\u0435 \u044f\u0437\u044b\u043a\u0430, \u0438\u043c\u0435\u043d\u0438 \u0444\u0430\u0439\u043b\u0430 \u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/figcaption><\/div>\n<\/figure>\n<p>\u041a\u043e\u0434 \u043f\u043e\u043b\u0443\u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a:<\/p>\n<pre><code class=\"vhdl\">`timescale 1ns \/ 1ps  module half_adder( \u00a0\u00a0\u00a0\u00a0input in_a, \u00a0\u00a0\u00a0\u00a0input in_b, \u00a0\u00a0\u00a0\u00a0output out_sum, \u00a0\u00a0\u00a0\u00a0output out_carry );  xor(out_sum, in_a, in_b); and(out_carry, in_a, in_b);\u00a0  endmodule<\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u043c\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043b\u0438 \u043c\u043e\u0434\u0443\u043b\u044c half_adder, \u0441\u043a\u0430\u0437\u0430\u043b\u0438, \u0447\u0442\u043e \u0443 \u043d\u0435\u0433\u043e \u0435\u0441\u0442\u044c \u043e\u0434\u043d\u043e\u0431\u0438\u0442\u043e\u0432\u044b\u0435 \u0432\u0445\u043e\u0434\u044b in_a \u0438 in_b \u0438 \u043e\u0434\u043d\u043e\u0431\u0438\u0442\u043e\u0432\u044b\u0435 \u0432\u044b\u0445\u043e\u0434\u044b out_sum \u0438 out_carry.<\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u043f\u0438\u0448\u0435\u043c, \u0447\u0442\u043e \u0432 out_sum \u043f\u043e\u0439\u0434\u0435\u0442 in_a xor in_b, \u0430 \u0432 out_carry \u2013 in_a and in_b. \u0422\u0430\u043a \u043c\u044b \u0434\u043e\u0431\u0438\u0432\u0430\u0435\u043c\u0441\u044f \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u0441\u0442\u0438\u043d\u043d\u043e\u0441\u0442\u0438:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td>\n<p align=\"left\"><strong>A<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>B<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>Carry<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>Sum<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u043c\u043e\u0434\u0443\u043b\u044c \u0433\u043e\u0442\u043e\u0432, \u043d\u0430\u043f\u0438\u0448\u0435\u043c \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u0442\u0435\u0441\u0442 (\u0437\u0434\u0435\u0441\u044c \u044f \u043f\u043e\u043a\u0430\u0436\u0443 \u043f\u0440\u0438\u043c\u0435\u0440 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f, \u0430 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u043c\u043e\u0434\u0443\u043b\u044f\u0445 \u0443\u0436\u0435 \u043e\u043f\u0443\u0449\u0443 \u044d\u0442\u0443 \u0447\u0430\u0441\u0442\u044c).<\/p>\n<p>\u0421\u043e\u0437\u0434\u0430\u0435\u043c Simulation Source half_adder_tb:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/6c6\/d35\/f28\/6c6d35f2872b77454b659901fe936558.png\" alt=\"\u0412\u044b\u0431\u043e\u0440 \u0442\u0438\u043f\u0430 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 (Simulation Source)\" title=\"\u0412\u044b\u0431\u043e\u0440 \u0442\u0438\u043f\u0430 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 (Simulation Source)\" width=\"839\" height=\"567\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/6c6\/d35\/f28\/6c6d35f2872b77454b659901fe936558.png\"\/><\/p>\n<div><figcaption>\u0412\u044b\u0431\u043e\u0440 \u0442\u0438\u043f\u0430 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 (Simulation Source)<\/figcaption><\/div>\n<\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/fd2\/e3e\/e59\/fd2e3ee593b389ef589b36e1b62d592f.png\" alt=\"\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430, \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u0435\u043c \u044f\u0437\u044b\u043a\u0430, \u0438\u043c\u0435\u043d\u0438 \u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f\" title=\"\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430, \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u0435\u043c \u044f\u0437\u044b\u043a\u0430, \u0438\u043c\u0435\u043d\u0438 \u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f\" width=\"838\" height=\"568\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/fd2\/e3e\/e59\/fd2e3ee593b389ef589b36e1b62d592f.png\"\/><\/p>\n<div><figcaption>\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430, \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u0435\u043c \u044f\u0437\u044b\u043a\u0430, \u0438\u043c\u0435\u043d\u0438 \u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/figcaption><\/div>\n<\/figure>\n<pre><code class=\"vhdl\">`timescale 1ns \/ 1ps  module half_adder_tb;  \u00a0\u00a0\u00a0\u00a0reg in_a, in_b, in_carry; \u00a0\u00a0\u00a0\u00a0wire sum, carry;  \u00a0\u00a0\u00a0\u00a0half_adder adder_l( \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.in_a(in_a), \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.in_b(in_b), \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.out_sum(sum), \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.out_carry(carry) \u00a0\u00a0\u00a0\u00a0);\u00a0\u00a0\u00a0  \u00a0\u00a0\u00a0\u00a0integer i; \u00a0\u00a0\u00a0\u00a0reg [2:0] test_val;  \u00a0\u00a0\u00a0\u00a0initial begin        \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0for (i = 0; i &lt; 4; i = i + 1) begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0test_val = i; \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0in_a = test_val[1]; \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0in_b = test_val[2];  \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0#10 $display(\"in_a = %b, in_b = %b, out_carry = %b, out_sum = %b\", in_a, in_b, carry, sum); \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0end\u00a0  \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0#10 $stop;  \u00a0\u00a0\u00a0\u00a0end  endmodule<\/code><\/pre>\n<p>\u0412 \u044d\u0442\u043e\u043c \u0442\u0435\u0441\u0442\u0435 \u043c\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0440\u043e\u0439\u0434\u0435\u043c\u0441\u044f \u043f\u043e \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u0438\u0441\u0442\u0438\u043d\u043d\u043e\u0441\u0442\u0438 \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0447\u0442\u043e \u043d\u0430\u0441\u0447\u0438\u0442\u0430\u0435\u0442 \u043d\u0430\u043c \u043d\u0430\u0448 \u043c\u043e\u0434\u0443\u043b\u044c.<\/p>\n<p>\u0412 \u0431\u043b\u043e\u043a\u0435 initial \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c #, \u0447\u0442\u043e\u0431\u044b \u0434\u0432\u0438\u0433\u0430\u0442\u044c \u0432\u0440\u0435\u043c\u044f \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438 \u043d\u0430 \u043d\u0443\u0436\u043d\u0443\u044e \u043d\u0430\u043c \u0432\u0435\u043b\u0438\u0447\u0438\u043d\u0443, $display \u043d\u0443\u0436\u0435\u043d \u0434\u043b\u044f \u0432\u044b\u0432\u043e\u0434\u0430 \u0442\u0435\u043a\u0441\u0442\u0430 \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c, \u0430 $stop \u2013 \u0434\u043b\u044f \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438.<\/p>\n<p>\u0412 \u043f\u0430\u043d\u0435\u043b\u0438 \u0441 \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u043d\u0430\u0445\u043e\u0434\u0438\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u0442\u0435\u0441\u0442 \u0438 \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u201cSet as top\u201d. \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u044f \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c\u0441\u044f \u0438\u043c\u0435\u043d\u043d\u043e \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430.<\/p>\n<p><strong><u>\u0412\u0410\u0416\u041d\u042b\u0419 \u041c\u041e\u041c\u0415\u041d\u0422! \u042d\u0442\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u043a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437, \u043a\u043e\u0433\u0434\u0430 \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u0441\u043c\u0435\u043d\u0438\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0439 \u0432\u00a0\u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438 \u0444\u0430\u0439\u043b.<\/u><\/strong><\/p>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/719\/68a\/fb8\/71968afb8b56c33618b0fa90e4710348.png\" alt=\"\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e Simulation Source \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435\" title=\"\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e Simulation Source \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435\" width=\"478\" height=\"599\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/719\/68a\/fb8\/71968afb8b56c33618b0fa90e4710348.png\"\/><\/p>\n<div><figcaption>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e Simulation Source \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435<\/figcaption><\/div>\n<\/figure>\n<p>\u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u044e:<\/p>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/91e\/a92\/71e\/91ea9271e48e41db83783f48c396c7cd.png\" alt=\"\u0417\u0430\u043f\u0443\u0441\u043a \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438 \u0432 Vivado\" title=\"\u0417\u0430\u043f\u0443\u0441\u043a \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438 \u0432 Vivado\" width=\"402\" height=\"194\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/91e\/a92\/71e\/91ea9271e48e41db83783f48c396c7cd.png\"\/><\/p>\n<div><figcaption>\u0417\u0430\u043f\u0443\u0441\u043a \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438 \u0432 Vivado<\/figcaption><\/div>\n<\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/60b\/9c9\/16f\/60b9c916f769be32b42af613cb110303.png\" alt=\"\u0417\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u0430\u044f \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u044f. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u0432\u0435\u0434\u0435\u043d \u0432 Tcl Console\" title=\"\u0417\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u0430\u044f \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u044f. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u0432\u0435\u0434\u0435\u043d \u0432 Tcl Console\" width=\"1404\" height=\"851\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/60b\/9c9\/16f\/60b9c916f769be32b42af613cb110303.png\"\/><\/p>\n<div><figcaption>\u0417\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u0430\u044f \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u044f. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u0432\u0435\u0434\u0435\u043d \u0432 Tcl Console<\/figcaption><\/div>\n<\/figure>\n<p>\u0421\u043c\u043e\u0442\u0440\u0438\u043c \u0432 Tc; \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u0432 \u043d\u0438\u0436\u043d\u0435\u0439 \u0447\u0430\u0441\u0442\u0438 \u044d\u043a\u0440\u0430\u043d\u0430. \u0412\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u0442\u0443\u0434\u0430 \u0432\u044b\u0432\u0435\u043b\u0430\u0441\u044c \u0432\u0435\u0440\u043d\u0430\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u0438\u0441\u0442\u0438\u043d\u043d\u043e\u0441\u0442\u0438. \u041e\u0442\u043b\u0438\u0447\u043d\u043e, \u0432\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043a\u0430\u043a \u043d\u0430\u0434\u043e. \u0422\u0435\u043f\u0435\u0440\u044c \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u044e \u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043f\u043e\u043b\u043d\u043e\u043c\u0443 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0443.<\/p>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/c91\/534\/d4d\/c91534d4db962fce50fe7c56ebf35d0f.png\" alt=\"\u0417\u0430\u043a\u0440\u044b\u0442\u0438\u0435 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438\" title=\"\u0417\u0430\u043a\u0440\u044b\u0442\u0438\u0435 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438\" width=\"398\" height=\"256\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c91\/534\/d4d\/c91534d4db962fce50fe7c56ebf35d0f.png\"\/><\/p>\n<div><figcaption>\u0417\u0430\u043a\u0440\u044b\u0442\u0438\u0435 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438<\/figcaption><\/div>\n<\/figure>\n<p>\u0421\u043e\u0437\u0434\u0430\u0435\u043c \u043d\u043e\u0432\u044b\u0439 Design Source \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u0435\u043c \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u043d\u0430 SystemVerilog \u0438 \u0441 \u0438\u043c\u0435\u043d\u0435\u043c full_adder. \u041f\u0438\u0448\u0435\u043c \u0442\u0443\u0434\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n<pre><code class=\"vhdl\">`timescale 1ns \/ 1ps  module full_adder( \u00a0\u00a0\u00a0\u00a0input in_a, \u00a0\u00a0\u00a0\u00a0input in_b, \u00a0\u00a0\u00a0\u00a0input in_carry, \u00a0\u00a0\u00a0\u00a0output out_sum, \u00a0\u00a0\u00a0\u00a0output out_carry );  wire op_sum_result, carry_0, carry_1;  half_adder op_sum( \u00a0\u00a0\u00a0\u00a0.in_a(in_a), \u00a0\u00a0\u00a0\u00a0.in_b(in_b), \u00a0\u00a0\u00a0\u00a0.out_sum(op_sum_result), \u00a0\u00a0\u00a0\u00a0.out_carry(carry_0) );  half_adder carry_sum( \u00a0\u00a0\u00a0\u00a0.in_a(op_sum_result), \u00a0\u00a0\u00a0\u00a0.in_b(in_carry), \u00a0\u00a0\u00a0\u00a0.out_sum(out_sum), \u00a0\u00a0\u00a0\u00a0.out_carry(carry_1) );  or(out_carry, carry_0, carry_1);  endmodule<\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u043a\u043e\u0434\u0430 \u0443\u0436\u0435 \u0447\u0443\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435. \u041c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0432 \u044d\u0442\u043e\u043c \u043c\u043e\u0434\u0443\u043b\u0435 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u044b \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0433\u043e \u0432\u044b\u0448\u0435 \u043f\u043e\u043b\u0443\u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430. \u0422\u0430\u043a\u0436\u0435 \u043f\u043e\u044f\u0432\u0438\u043b\u0441\u044f \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u0442\u0438\u043f wire. Wire \u2013 \u044d\u0442\u043e \u043f\u0440\u043e\u0432\u043e\u0434. \u041d\u0430 \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0445\u0435\u043c\u0435, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442 \u044d\u0442\u043e\u0442 \u043a\u043e\u0434, \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u043c \u0432\u0445\u043e\u0434\u043e\u043c \u0438\u043b\u0438 \u0432\u044b\u0445\u043e\u0434\u043e\u043c. \u041b\u044e\u0431\u043e\u0435 \u0438\u043c\u044f, \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u044f\u0432\u043d\u043e \u043d\u0435 \u0431\u044b\u043b \u0443\u043a\u0430\u0437\u0430\u043d \u0442\u0438\u043f, \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0431\u0443\u0434\u0435\u0442 \u0441\u0447\u0438\u0442\u0430\u0442\u044c\u0441\u044f wire.\u00a0<\/p>\n<p>\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u0430\u0448\u0435\u0433\u043e \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u043c\u0443 \u043f\u0440\u0438\u043c\u0435\u0440\u0443, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0437\u0434\u0435\u0441\u044c \u044f \u0435\u0433\u043e \u043e\u043f\u0443\u0449\u0443. \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043c\u043e\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432 \u0433\u0438\u0442\u0445\u0430\u0431\u0435, \u0441\u0441\u044b\u043b\u043a\u0443 \u043e\u0441\u0442\u0430\u0432\u043b\u044e \u043d\u0438\u0436\u0435.<\/p>\n<p>\u0415\u0449\u0435 \u043d\u0435 \u0437\u0430\u0431\u044b\u043b\u0438, \u0437\u0430\u0447\u0435\u043c \u043c\u044b \u0437\u0434\u0435\u0441\u044c? \u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e, \u043c\u044b \u0434\u0435\u043b\u0430\u0435\u043c \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0438\u0445 \u0447\u0438\u0441\u0435\u043b. \u0415\u0441\u043b\u0438 \u0432\u0441\u043f\u043e\u043c\u043d\u0438\u0442\u044c, \u0438\u0437 \u0447\u0435\u0433\u043e \u043e\u043d \u0441\u043e\u0441\u0442\u043e\u0438\u0442, \u043c\u043e\u0436\u043d\u043e \u0443\u0432\u0438\u0434\u0435\u0442\u044c, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u0441 \u0434\u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u043c\u0438 \u0435\u0434\u0438\u043d\u0438\u0446\u0430\u043c\u0438, \u0442\u043e \u0435\u0441\u0442\u044c 24-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u044b\u0435 \u0447\u0438\u0441\u043b\u0430. \u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044c.\u00a0<\/p>\n<pre><code class=\"vhdl\">`timescale 1ns \/ 1ps  module mantissa_adder( \u00a0\u00a0\u00a0\u00a0input [23:0] in_a, \u00a0\u00a0\u00a0\u00a0input [23:0] in_b, \u00a0\u00a0\u00a0\u00a0output [23:0] out, \u00a0\u00a0\u00a0\u00a0output out_carry );  wire [24:0] carry; assign carry[0] = 0;  generate \u00a0\u00a0\u00a0\u00a0for (genvar i = 0; i &lt; 24; i = i + 1) begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0full_adder adder( \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.in_a(in_a[i]), \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.in_b(in_b[i]), \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.in_carry(carry[i]), \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.out_sum(out[i]), \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.out_carry(carry[i + 1]) \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0); \u00a0\u00a0\u00a0\u00a0end endgenerate  assign out_carry = carry[24];  endmodule<\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u0432\u0441\u0435 \u043f\u0440\u0435\u0434\u0435\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e. \u041c\u043e\u0434\u0443\u043b\u044c \u0438\u043c\u0435\u0435\u0442 \u0434\u0432\u0430 \u0432\u0445\u043e\u0434\u0430 \u2013 24-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u044b\u0435 \u0448\u0438\u043d\u044b in_a \u0438 in_b, \u0430 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434 \u043e\u043d \u043f\u043e\u0434\u0430\u0435\u0442 24-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e out \u0438 \u0431\u0438\u0442 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430 carry.<\/p>\n<p><strong><u>\u0412\u0410\u0416\u041d\u042b\u0419 \u041c\u041e\u041c\u0415\u041d\u0422! \u041c\u0430\u0441\u0441\u0438\u0432\u044b \u0432 SystemVerilog \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043d\u0435\u0442\u0438\u043f\u0438\u0447\u043d\u043e. \u041a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u0432\u0438\u0434\u0430 [&lt;\u043d\u0430\u0438\u0431\u043e\u043b\u044c\u0448\u0438\u0439 \u0438\u043d\u0434\u0435\u043a\u0441&gt;:&lt;\u043d\u0430\u0438\u043c\u0435\u043d\u044c\u0448\u0438\u0439 \u0438\u043d\u0434\u0435\u043a\u0441&gt;] \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u043c\u0430\u0441\u0441\u0438\u0432, \u0433\u0434\u0435 \u043c\u043e\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043b\u044e\u0431\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043e\u0442 \u043d\u0430\u0438\u043c\u0435\u043d\u044c\u0448\u0435\u0433\u043e \u0434\u043e \u043d\u0430\u0438\u0431\u043e\u043b\u044c\u0448\u0435\u0433\u043e \u0412\u041a\u041b\u042e\u0427\u0418\u0422\u0415\u041b\u042c\u041d\u041e.<\/u><\/strong>\u00a0<\/p>\n<p>\u0412 \u043a\u043e\u0434\u0435 \u0441\u0432\u0435\u0440\u0445\u0443 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u043d\u0435\u0437\u043d\u0430\u043a\u043e\u043c\u044b\u0435 \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0435 \u0441\u043b\u043e\u0432\u0430 assign \u0438 generate. \u0420\u0430\u0437\u0431\u0435\u0440\u0451\u043c\u0441\u044f, \u0447\u0442\u043e \u043e\u043d\u0438 \u0434\u0435\u043b\u0430\u044e\u0442.\u00a0<\/p>\n<ul>\n<li>\n<p>\u041e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 assign \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043d\u0430\u043c \u0441\u043e\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u043f\u0440\u043e\u0432\u043e\u0434 \u0441 \u0447\u0435\u043c-\u043b\u0438\u0431\u043e. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 assign out_carry = carry[24] \u043c\u044b \u0433\u043e\u0432\u043e\u0440\u0438\u043c, \u0447\u0442\u043e \u043d\u0430 \u043f\u0440\u043e\u0432\u043e\u0434 out_carry \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0434\u0430\u043d\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 carry[24], \u0430 \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 assign carry[0] = 0 \u2013 \u0447\u0442\u043e \u043f\u0440\u043e\u0432\u043e\u0434 \u0441 \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u043c 0 \u043d\u0430 \u0448\u0438\u043d\u0435 carry \u043f\u043e\u0434\u0442\u044f\u043d\u0443\u0442 \u043a 0.<\/p>\n<\/li>\n<\/ul>\n<ul>\n<li>\n<p>\u0411\u043b\u043e\u043a generate \u0436\u0435 \u043d\u0443\u0436\u0435\u043d, \u0447\u0442\u043e\u0431\u044b \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0445\u043e\u0436\u0438\u0445 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u043e\u0432 \u043a\u0430\u043a\u043e\u0433\u043e-\u043b\u0438\u0431\u043e \u043c\u043e\u0434\u0443\u043b\u044f. \u0417\u0434\u0435\u0441\u044c \u044f \u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e, \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u0433\u043e\u0440\u043e\u0434\u0438\u0442\u044c \u0432\u0440\u0443\u0447\u043d\u0443\u044e 24 \u043f\u043e\u043b\u043d\u044b\u0445 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430.<\/p>\n<\/li>\n<\/ul>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c 24-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u044b\u0435 \u0447\u0438\u0441\u043b\u0430. \u0410\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0438 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440 \u043c\u0430\u043d\u0442\u0438\u0441\u0441 (\u043e\u043d \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u0441\u044f \u0434\u043b\u044f \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f). \u0415\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u043e\u0442\u043b\u0438\u0447\u0438\u0435\u043c \u0431\u0443\u0434\u0435\u0442 \u0442\u043e, \u0447\u0442\u043e \u0432 \u043d\u0435\u043c \u043c\u044b \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u043d\u0435 24 \u0440\u0430\u0437\u0440\u044f\u0434\u0430, \u0430 8.<\/p>\n<p>\u0412\u043e\u0442 \u043e\u043d:<\/p>\n<pre><code class=\"vhdl\">`timescale 1ns \/ 1ps  module exponent_adder( \u00a0\u00a0\u00a0\u00a0input [7:0] in_a, \u00a0\u00a0\u00a0\u00a0input [7:0] in_b, \u00a0\u00a0\u00a0\u00a0output [7:0] out );  wire [8:0] carry; assign carry[0] = 0;  generate \u00a0\u00a0\u00a0\u00a0for (genvar i = 0; i &lt; 8; i = i + 1) begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0full_adder adder( \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.in_a(in_a[i]), \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.in_b(in_b[i]), \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.in_carry(carry[i]), \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.out_sum(out[i]), \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.out_carry(carry[i + 1]) \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0); \u00a0\u00a0\u00a0\u00a0end endgenerate  endmodule<\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u043d\u0435\u0442 \u0432\u044b\u0445\u043e\u0434\u0430 carry (\u0431\u0438\u0442, \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0435\u043d\u043d\u044b\u0439 \u0432 9 \u0440\u0430\u0437\u0440\u044f\u0434), \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043e\u043d \u043d\u0438\u0433\u0434\u0435 \u043d\u0430\u043c \u043d\u0435 \u043d\u0443\u0436\u0435\u043d.<\/p>\n<p>\u0412\u0437\u0433\u043b\u044f\u043d\u0435\u043c \u043d\u0430 \u0441\u0445\u0435\u043c\u0443. \u0421\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u0438 \u043f\u043e\u0440\u044f\u0434\u043a\u0438 \u043c\u044b \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u0435\u043c. \u0427\u0442\u043e \u0435\u0449\u0435 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e? \u041c\u043e\u0434\u0443\u043b\u044c \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432. \u041d\u0443\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0445\u0435\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u043d\u044f\u0442\u044c \u043d\u0430 \u0432\u0445\u043e\u0434 \u0434\u0432\u0430 8-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u044b\u0445 \u043f\u043e\u0440\u044f\u0434\u043a\u0430, \u0430 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434 \u0441\u043e\u043e\u0431\u0449\u0438\u0442\u044c, \u043a\u0430\u043a\u043e\u0439 \u0438\u0437 \u043d\u0438\u0445 \u0431\u043e\u043b\u044c\u0448\u0435 \u0438 \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e. \u0427\u0442\u043e\u0431\u044b \u044d\u0442\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c, \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0432\u044b\u0447\u0438\u0442\u0430\u043d\u0438\u0435. \u0412\u044b\u0447\u0438\u0442\u0430\u043d\u0438\u0435 \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0430 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0435, \u043d\u043e \u0447\u0442\u043e\u0431\u044b \u044d\u0442\u043e \u0431\u044b\u043b\u043e \u0438\u043c\u0435\u043d\u043d\u043e \u0432\u044b\u0447\u0438\u0442\u0430\u043d\u0438\u0435, \u0430 \u043d\u0435 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0432\u0442\u043e\u0440\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u043d\u0434 \u043d\u0443\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0432\u0435\u0441\u0442\u0438 \u0432 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043a\u043e\u0434. \u0427\u0442\u043e \u044d\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u043c\u043e\u0436\u043d\u043e <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%94%D0%BE%D0%BF%D0%BE%D0%BB%D0%BD%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9_%D0%BA%D0%BE%D0%B4\" rel=\"noopener noreferrer nofollow\">\u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043d\u0430 \u0412\u0438\u043a\u0438\u043f\u0435\u0434\u0438\u0438<\/a>.<\/p>\n<p>\u041d\u0430\u043f\u0438\u0448\u0435\u043c \u043d\u0430\u0448 \u0432\u043e\u0441\u044c\u043c\u0438\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u044b\u0439 \u0438\u043d\u0432\u0435\u0440\u0442\u043e\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u043d\u0430 \u0432\u0445\u043e\u0434 \u0447\u0438\u0441\u043b\u043e, \u0430 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434 \u0432\u044b\u0434\u0430\u0432\u0430\u0442\u044c \u0435\u0433\u043e \u0436\u0435, \u043d\u043e \u0441 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u043d\u044b\u043c \u0437\u043d\u0430\u043a\u043e\u043c (\u043f\u0435\u0440\u0435\u0432\u0435\u0434\u0451\u043d\u043d\u043e\u0435 \u0432 \u0434\u043e\u043f. \u043a\u043e\u0434).<\/p>\n<pre><code class=\"vhdl\">`timescale 1ns \/ 1ps  module exponent_inverter( \u00a0\u00a0\u00a0\u00a0input [7:0] in, \u00a0\u00a0\u00a0\u00a0output [7:0] out );  wire [7:0] neg;  generate \u00a0\u00a0\u00a0\u00a0for (genvar i = 0; i &lt; 8; i = i + 1) begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0not(neg[i], in[i]); \u00a0\u00a0\u00a0\u00a0end endgenerate  exponent_adder adder( \u00a0\u00a0\u00a0\u00a0.in_a(neg), \u00a0\u00a0\u00a0\u00a0.in_b(8'b0000_0001), \u00a0\u00a0\u00a0\u00a0.out(out) );  endmodule<\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u043e\u0432\u043e\u0433\u043e. \u0423\u0436\u0435 \u0437\u043d\u0430\u043a\u043e\u043c\u044b\u0435 \u043d\u0430\u043c wire \u0438 generate. \u041d\u0443 \u0438 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043a \u0438\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u0431\u0438\u0442\u0430\u043c \u0447\u0438\u0441\u043b\u0430 \u043f\u0440\u0438\u0431\u0430\u0432\u043b\u044f\u0435\u0442 1, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u043e\u043f. \u043a\u043e\u0434.<\/p>\n<p>\u0410\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u0443\u044e \u0432\u0435\u0449\u044c \u043d\u0430\u043f\u0438\u0448\u0435\u043c \u0438 \u0434\u043b\u044f \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0442\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0437\u0430\u043d\u0438\u043c\u0430\u0442\u044c\u0441\u044f \u0432\u044b\u0447\u0438\u0442\u0430\u043d\u0438\u0435\u043c:<\/p>\n<pre><code class=\"vhdl\">`timescale 1ns \/ 1ps  module mantissa_inverter( \u00a0\u00a0\u00a0\u00a0input [23:0] in, \u00a0\u00a0\u00a0\u00a0output [23:0] out );  wire [23:0] neg;  generate \u00a0\u00a0\u00a0\u00a0for (genvar i = 0; i &lt; 24; i = i + 1) begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0not(neg[i], in[i]); \u00a0\u00a0\u00a0\u00a0end endgenerate  mantissa_adder adder( \u00a0\u00a0\u00a0\u00a0.in_a(neg), \u00a0\u00a0\u00a0\u00a0.in_b(24'b0000_0000_0000_0000_0000_0001), \u00a0\u00a0\u00a0\u00a0.out(out) );  endmodule<\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d \u043f\u0440\u0438\u043c\u0435\u0440 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a\u00a0\u0432\u00a0SystemVerilog \u0437\u0430\u0434\u0430\u044e\u0442\u0441\u044f \u0447\u0438\u0441\u043b\u043e\u0432\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f. \u041c\u043e\u0436\u043d\u043e, \u043a\u043e\u043d\u0435\u0447\u043d\u043e, \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0438\u0441\u0430\u0442\u044c \u0434\u0435\u0441\u044f\u0442\u0438\u0447\u043d\u044b\u0435 \u0447\u0438\u0441\u043b\u0430, \u043d\u043e\u00a0\u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0441\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f. \u0412\u00a0\u0442\u0430\u043a\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438 \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0438\u0434\u0451\u0442 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0437\u0440\u044f\u0434\u043e\u0432, \u043f\u043e\u0442\u043e\u043c \u0441\u0438\u043c\u0432\u043e\u043b \u00ab\u00ab\u201c, \u043f\u043e\u0442\u043e\u043c \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0441\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f (b\u00a0\u2014 \u0434\u0432\u043e\u0438\u0447\u043d\u0430\u044f, h\u00a0\u2014 \u0448\u0435\u0441\u0442\u043d\u0430\u0434\u0446\u0430\u0442\u0435\u0440\u0438\u0447\u043d\u0430\u044f \u0438\u00a0\u0442.\u00a0\u0434.), \u0430\u00a0\u043f\u043e\u0442\u043e\u043c \u0441\u0430\u043c\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435. \u0412\u00a0\u0447\u0438\u0441\u043b\u0435 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u201e_\u201c \u0434\u043b\u044f\u00a0\u043b\u0443\u0447\u0448\u0435\u0439 \u0447\u0438\u0442\u0430\u0435\u043c\u043e\u0441\u0442\u0438 \u043a\u043e\u0434\u0430.<\/p>\n<p>\u0418\u043c\u0435\u044f \u0432 \u0440\u0443\u043a\u0430\u0445 \u0432\u0441\u0435 \u043d\u0430\u0448\u0438 \u043c\u043e\u0434\u0443\u043b\u0438, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0443\u0436\u0435 \u0447\u0442\u043e-\u0442\u043e \u0431\u043e\u043b\u0435\u0435 \u0441\u043b\u043e\u0436\u043d\u043e\u0435: \u043d\u043e\u0432\u044b\u0439 \u043c\u043e\u0434\u0443\u043b\u044c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0442\u044c \u043f\u043e\u0440\u044f\u0434\u043a\u0438 \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c \u0440\u0430\u0437\u043d\u0438\u0446\u0443.<\/p>\n<pre><code class=\"vhdl\">`timescale 1ns \/ 1ps  module exponent_aligner( \u00a0\u00a0\u00a0\u00a0input [7:0] in_a, \u00a0\u00a0\u00a0\u00a0input [7:0] in_b, \u00a0\u00a0\u00a0\u00a0output out_a_or_b, \u00a0\u00a0\u00a0\u00a0output [7:0] out_dist );  wire [7:0] inverted_b; wire [7:0] comparison_result, inverted_comparison_result;  exponent_inverter b_inverter( \u00a0\u00a0\u00a0\u00a0.in(in_b), \u00a0\u00a0\u00a0\u00a0.out(inverted_b) );  exponent_adder final_adder( \u00a0\u00a0\u00a0\u00a0.in_a(in_a), \u00a0\u00a0\u00a0\u00a0.in_b(inverted_b), \u00a0\u00a0\u00a0\u00a0.out(comparison_result) );  exponent_inverter final_inverter( \u00a0\u00a0\u00a0\u00a0.in(comparison_result), \u00a0\u00a0\u00a0\u00a0.out(inverted_comparison_result) );  assign out_a_or_b = (comparison_result[7] == 0) ? 1 : 0; \/\/ 1 if a &gt;= b, 0 if a &lt; b assign out_dist = (comparison_result[7] == 0) ? comparison_result : inverted_comparison_result;  endmodule<\/code><\/pre>\n<p>\u042d\u0442\u043e \u0443\u0436\u0435 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043f\u043e\u0441\u043e\u043b\u0438\u0434\u043d\u0435\u0435. \u0421\u0442\u043e\u0438\u0442 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u0442\u043e, \u043a\u0430\u043a \u043f\u0440\u043e\u0432\u043e\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 \u0432\u044b\u0445\u043e\u0434\u0430 \u043e\u0434\u043d\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u043d\u0430 \u0432\u0445\u043e\u0434 \u0434\u0440\u0443\u0433\u043e\u0433\u043e, \u0431\u0443\u043a\u0432\u0430\u043b\u044c\u043d\u043e \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u044f \u0438\u0445 \u043d\u0430 \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0445\u0435\u043c\u0435.<\/p>\n<p>\u0417\u0434\u0435\u0441\u044c \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n<ol>\n<li>\n<p>\u041d\u0430 \u0432\u0445\u043e\u0434\u044b in_a \u0438 in_b \u043f\u043e\u0434\u0430\u044e\u0442\u0441\u044f 8-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u044b\u0435 \u043f\u043e\u0440\u044f\u0434\u043a\u0438.<\/p>\n<\/li>\n<li>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 b \u0438\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0432 \u043c\u043e\u0434\u0443\u043b\u0435 b_inverter.<\/p>\n<\/li>\n<li>\n<p>final_adder \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442 a \u0438 \u0438\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0435 b (\u043f\u043e \u0441\u0443\u0442\u0438, \u0432\u044b\u0447\u0438\u0442\u0430\u0435\u0442 b \u0438\u0437 a).<\/p>\n<\/li>\n<li>\n<p>final_inverter \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u0443\u044e \u043d\u0430 \u0448\u0430\u0433\u0435 4 \u0440\u0430\u0437\u043d\u0438\u0446\u0443 (comparison_result) \u0432 \u0438\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0435.<\/p>\n<\/li>\n<li>\n<p>assign out_a_or_b = (comparison_result[7] == 0) ? 1 : 0 \u0441\u043c\u043e\u0442\u0440\u0438\u0442 \u043d\u0430 \u0437\u043d\u0430\u043a\u043e\u0432\u044b\u0439 \u0431\u0438\u0442 comparison_result. \u041f\u043e \u043d\u0435\u043c\u0443 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043d\u044f\u0442\u044c, \u043a\u0430\u043a\u043e\u0435 \u0438\u0437 \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b a \u0438 b \u0431\u043e\u043b\u044c\u0448\u0435.<\/p>\n<\/li>\n<li>\n<p>\u0412 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0437\u043d\u0430\u043a\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u043c\u044b \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c \u0432 \u0432\u044b\u0445\u043e\u0434 out_dist \u043b\u0438\u0431\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442, \u043b\u0438\u0431\u043e \u0435\u0433\u043e \u0432\u0435\u0440\u0441\u0438\u044e, \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u043d\u0443\u044e \u043d\u0430 -1, \u0447\u0442\u043e\u0431\u044b \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u043b\u043e \u0438\u0437 \u0441\u0435\u0431\u044f \u043c\u043e\u0434\u0443\u043b\u044c \u0440\u0430\u0437\u043d\u043e\u0441\u0442\u0438 \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b (\u043c\u044b \u0445\u043e\u0442\u0438\u043c \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u043c\u0435\u043d\u043d\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u0434\u0432\u0438\u0433\u043e\u0432, \u0430 \u043e\u043d\u043e \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u0431\u044b\u0442\u044c \u043d\u0435 \u043c\u043e\u0436\u0435\u0442).<\/p>\n<\/li>\n<\/ol>\n<p>\u0418\u043c\u0435\u044f \u044d\u0442\u043e\u0442 \u043c\u043e\u0434\u0443\u043b\u044c, \u043c\u044b \u0443\u0436\u0435 \u043c\u043e\u0436\u0435\u043c \u0442\u043e\u0447\u043d\u043e \u0441\u043a\u0430\u0437\u0430\u0442\u044c (\u043f\u043e \u0432\u044b\u0445\u043e\u0434\u0443 out_a_or_b), \u043a\u0430\u043a\u043e\u0439 \u0438\u0437 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432 \u043d\u0443\u0436\u043d\u043e \u0441\u0434\u0432\u0438\u0433\u0430\u0442\u044c \u0438 \u043d\u0430 \u043a\u0430\u043a\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0437\u0440\u044f\u0434\u043e\u0432 (\u0432\u044b\u0445\u043e\u0434 out_dist).<\/p>\n<p>\u0427\u0442\u043e \u0435\u0449\u0435 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e? \u041c\u043e\u0434\u0443\u043b\u044c \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438, \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0449\u0438\u0439 \u043d\u0430 \u0432\u0445\u043e\u0434 25-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e (\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043c\u0430\u043d\u0442\u0438\u0441\u0441), \u0430 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434 \u0432\u044b\u0434\u0430\u044e\u0449\u0438\u0439 \u044d\u0442\u043e \u0436\u0435 \u0447\u0438\u0441\u043b\u043e, \u043d\u043e \u0441\u0434\u0432\u0438\u043d\u0443\u0442\u043e\u0435 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043f\u0435\u0440\u0432\u0430\u044f \u0435\u0434\u0438\u043d\u0438\u0446\u0430 \u0432 \u0447\u0438\u0441\u043b\u0435 \u043f\u043e\u043f\u0430\u043b\u0430 \u043d\u0430 24-\u0439 \u0440\u0430\u0437\u0440\u044f\u0434. \u0422\u0430\u043a\u0436\u0435 \u044d\u0442\u043e\u0442 \u043c\u043e\u0434\u0443\u043b\u044c \u0434\u043e\u043b\u0436\u0435\u043d \u0432\u0435\u0440\u043d\u0443\u0442\u044c \u043d\u0430\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0434\u0435\u043b\u0430\u043d\u043d\u044b\u0445 \u0441\u0434\u0432\u0438\u0433\u043e\u0432, \u0447\u0442\u043e\u0431\u044b \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0441\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430.<\/p>\n<pre><code class=\"vhdl\">`timescale 1ns \/ 1ps  module mantissa_normalizer( \u00a0\u00a0\u00a0\u00a0input [23:0] in, \u00a0\u00a0\u00a0\u00a0input in_carry, \u00a0\u00a0\u00a0\u00a0output [22:0] out, \u00a0\u00a0\u00a0\u00a0output [7:0] exponent_shift );  assign out[22:0] = in_carry ? in[23:0] &gt;&gt; 1 : \u00a0\u00a0\u00a0\u00a0in[23] ? in[22:0] : \u00a0\u00a0\u00a0\u00a0in[22] ? in[22:0] &lt;&lt; 1 : \u00a0\u00a0\u00a0\u00a0in[21] ? in[22:0] &lt;&lt; 2 : \u00a0\u00a0\u00a0\u00a0in[20] ? in[22:0] &lt;&lt; 3 : \u00a0\u00a0\u00a0\u00a0in[19] ? in[22:0] &lt;&lt; 4 : \u00a0\u00a0\u00a0\u00a0in[18] ? in[22:0] &lt;&lt; 5 : \u00a0\u00a0\u00a0\u00a0in[17] ? in[22:0] &lt;&lt; 6 : \u00a0\u00a0\u00a0\u00a0in[16] ? in[22:0] &lt;&lt; 7 : \u00a0\u00a0\u00a0\u00a0in[15] ? in[22:0] &lt;&lt; 8 : \u00a0\u00a0\u00a0\u00a0in[14] ? in[22:0] &lt;&lt; 9 : \u00a0\u00a0\u00a0\u00a0in[13] ? in[22:0] &lt;&lt; 10 : \u00a0\u00a0\u00a0\u00a0in[10] ? in[22:0] &lt;&lt; 11 : \u00a0\u00a0\u00a0\u00a0in[9] ? in[22:0] &lt;&lt; 12 : \u00a0\u00a0\u00a0\u00a0in[8] ? in[22:0] &lt;&lt; 13 : \u00a0\u00a0\u00a0\u00a0in[7] ? in[22:0] &lt;&lt; 14 : \u00a0\u00a0\u00a0\u00a0in[6] ? in[22:0] &lt;&lt; 15 : \u00a0\u00a0\u00a0\u00a0in[5] ? in[22:0] &lt;&lt; 16 : \u00a0\u00a0\u00a0\u00a0in[4] ? in[22:0] &lt;&lt; 17 : \u00a0\u00a0\u00a0\u00a0in[3] ? in[22:0] &lt;&lt; 18 : \u00a0\u00a0\u00a0\u00a0in[2] ? in[22:0] &lt;&lt; 19 : \u00a0\u00a0\u00a0\u00a0in[1] ? in[22:0] &lt;&lt; 20 : \u00a0\u00a0\u00a0\u00a0in[0] ? in[22:0] &lt;&lt; 21 : \u00a0\u00a0\u00a0\u00a00;  assign exponent_shift = in_carry ? -1 : \u00a0\u00a0\u00a0\u00a0in[23] ? 0 : \u00a0\u00a0\u00a0\u00a0in[22] ? 1 : \u00a0\u00a0\u00a0\u00a0in[21] ? 2 : \u00a0\u00a0\u00a0\u00a0in[20] ? 3 : \u00a0\u00a0\u00a0\u00a0in[19] ? 4 : \u00a0\u00a0\u00a0\u00a0in[18] ? 5 : \u00a0\u00a0\u00a0\u00a0in[17] ? 6 : \u00a0\u00a0\u00a0\u00a0in[16] ? 7 : \u00a0\u00a0\u00a0\u00a0in[15] ? 8 : \u00a0\u00a0\u00a0\u00a0in[14] ? 9 : \u00a0\u00a0\u00a0\u00a0in[13] ? 10 : \u00a0\u00a0\u00a0\u00a0in[10] ? 11 : \u00a0\u00a0\u00a0\u00a0in[9] ? 12 : \u00a0\u00a0\u00a0\u00a0in[8] ? 13 : \u00a0\u00a0\u00a0\u00a0in[7] ? 14 : \u00a0\u00a0\u00a0\u00a0in[6] ? 15 : \u00a0\u00a0\u00a0\u00a0in[5] ? 16 : \u00a0\u00a0\u00a0\u00a0in[4] ? 17 : \u00a0\u00a0\u00a0\u00a0in[3] ? 18 : \u00a0\u00a0\u00a0\u00a0in[2] ? 19 : \u00a0\u00a0\u00a0\u00a0in[1] ? 20 : \u00a0\u00a0\u00a0\u00a0in[0] ? 21 : \u00a0\u00a0\u00a0\u00a00;  endmodule<\/code><\/pre>\n<p>\u0421 \u0442\u043e\u0447\u043a\u0438 \u0437\u0440\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0430, \u044d\u0442\u043e, \u043f\u043e\u0436\u0430\u043b\u0443\u0439, \u0441\u0430\u043c\u0430\u044f \u0443\u0436\u0430\u0441\u043d\u0430\u044f \u0432\u0435\u0449\u044c \u043d\u0430 \u0441\u0435\u0433\u043e\u0434\u043d\u044f. \u042f \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043d\u0435 \u0441\u0442\u0430\u043b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0437\u0434\u0435\u0441\u044c \u0446\u0438\u043a\u043b\u044b, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0434\u0447\u0435\u0440\u043a\u043d\u0443\u0442\u044c \u0442\u043e, \u0447\u0442\u043e \u044d\u0442\u043e\u0442 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d \u043d\u0430 &#171;\u043d\u0438\u0437\u043a\u043e\u043c \u0443\u0440\u043e\u0432\u043d\u0435&#187;. \u0421\u0445\u0435\u043c\u0430 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0447\u0438\u0441\u043b\u043e \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0442\u043e\u0433\u043e, \u0432 \u043a\u0430\u043a\u043e\u043c \u0440\u0430\u0437\u0440\u044f\u0434\u0435 \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u043b\u0430\u0441\u044c \u043f\u0435\u0440\u0432\u0430\u044f \u0435\u0434\u0438\u043d\u0438\u0446\u0430. \u0412 \u0432\u044b\u0445\u043e\u0434 out \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u0441\u0434\u0432\u0438\u043d\u0443\u0442\u0430\u044f \u0438 \u043e\u0431\u0440\u0435\u0437\u0430\u043d\u043d\u0430\u044f \u0434\u043e 23 \u0440\u0430\u0437\u0440\u044f\u0434\u043e\u0432 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0430 \u043f\u043e\u0441\u043b\u0435 \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438, \u0430 \u0432 exponent_shift &#8212; \u0447\u0438\u0441\u043b\u043e, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043d\u0443\u0436\u043d\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043f\u043e\u0440\u044f\u0434\u043e\u043a.<\/p>\n<p>\u0418 \u0432\u043e\u0442 \u043d\u0430\u043a\u043e\u043d\u0435\u0446 \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u0432\u0441\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0435: \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u044b, \u0438\u043d\u0432\u0435\u0440\u0442\u043e\u0440\u044b, \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u0435\u043b\u044c \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432 \u0438 \u043c\u043e\u0434\u0443\u043b\u044c \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b. \u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435 \u044d\u0442\u043e \u0432 \u0432\u0435\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440 \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u043d\u0430\u0448\u0435\u0439 \u0441\u0445\u0435\u043c\u0435. \u0412\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0432\u043e\u0442 \u0442\u0430\u043a:<\/p>\n<pre><code class=\"vhdl\">`timescale 1ns \/ 1ps  module float_adder( \u00a0\u00a0\u00a0\u00a0input [31:0] in_a, \u00a0\u00a0\u00a0\u00a0input [31:0] in_b, \u00a0\u00a0\u00a0\u00a0output [31:0] out );  wire a_or_b; wire [7:0] exp_shift_dist, estimated_result_exponent;\u00a0 wire [23:0] mantissa_a, mantissa_b, aligned_mantissa_a, aligned_mantissa_b; wire [23:0] inv_aligned_mantissa_a, inv_aligned_mantissa_b, aligned_mantissa_diff; wire [23:0] aligned_mantissa_sub_ab, aligned_mantissa_sub_ba; wire [23:0] aligned_mantissa_sum, aligned_mantissa_sub; wire aligned_mantissa_sub_carry_ab, aligned_mantissa_sub_carry_ba; wire aligned_mantissa_sum_carry, aligned_mantissa_sub_carry, invert_result_sign; wire [7:0] sum_exp_shift, sub_exp_shift, sum_exponent, sub_exponent; wire [22:0] normalized_sum, normalized_sub;  \/\/ 1. a_or_b, dist = exponent_aligner(E1, E2) exponent_aligner exp_aligner( \u00a0\u00a0\u00a0\u00a0.in_a(in_a[30:23]), \u00a0\u00a0\u00a0\u00a0.in_b(in_b[30:23]), \u00a0\u00a0\u00a0\u00a0.out_a_or_b(a_or_b), \u00a0\u00a0\u00a0\u00a0.out_dist(exp_shift_dist) );  \/\/ 2. prepend 1 to both mantissas assign mantissa_a[23] = 1, mantissa_b[23] = 1; assign mantissa_a[22:0] = in_a[22:0]; assign mantissa_b[22:0] = in_b[22:0];  \/\/ 3. align mantissas for the exponents to match assign estimated_result_exponent = a_or_b ? in_a[30:23] : in_b[30:23]; \/\/ largest of the two assign aligned_mantissa_a = a_or_b ? mantissa_a : mantissa_a &gt;&gt; exp_shift_dist; \/\/ exp_a &gt;= exp_b, return exp_a : shift exp_a assign aligned_mantissa_b = a_or_b ? mantissa_b &gt;&gt; exp_shift_dist : mantissa_b; \/\/ exp_a &gt;= exp_b, shift exp_b : return exp_b  \/\/ 4.1 add mantissas mantissa_adder aligned_adder( \u00a0\u00a0\u00a0\u00a0.in_a(aligned_mantissa_a), \u00a0\u00a0\u00a0\u00a0.in_b(aligned_mantissa_b), \u00a0\u00a0\u00a0\u00a0.out(aligned_mantissa_sum), \u00a0\u00a0\u00a0\u00a0.out_carry(aligned_mantissa_sum_carry) );  \/\/ 4.2 subtract mantissas and set result sign mantissa_adder aligned_comparator( \u00a0\u00a0\u00a0\u00a0.in_a(aligned_mantissa_a), \u00a0\u00a0\u00a0\u00a0.in_b(inv_aligned_mantissa_b), \u00a0\u00a0\u00a0\u00a0.out(aligned_mantissa_diff) );  mantissa_inverter aligned_inverter_a( \u00a0\u00a0\u00a0\u00a0.in(aligned_mantissa_a), \u00a0\u00a0\u00a0\u00a0.out(inv_aligned_mantissa_a) );  mantissa_inverter aligned_inverter_b( \u00a0\u00a0\u00a0\u00a0.in(aligned_mantissa_b), \u00a0\u00a0\u00a0\u00a0.out(inv_aligned_mantissa_b) );  mantissa_adder aligned_subtractor_a_b( \u00a0\u00a0\u00a0\u00a0.in_a(aligned_mantissa_a), \u00a0\u00a0\u00a0\u00a0.in_b(inv_aligned_mantissa_b), \u00a0\u00a0\u00a0\u00a0.out(aligned_mantissa_sub_ab), \u00a0\u00a0\u00a0\u00a0.out_carry(aligned_mantissa_sub_carry_ab) );  mantissa_adder aligned_subtractor_b_a( \u00a0\u00a0\u00a0\u00a0.in_a(aligned_mantissa_b), \u00a0\u00a0\u00a0\u00a0.in_b(inv_aligned_mantissa_a), \u00a0\u00a0\u00a0\u00a0.out(aligned_mantissa_sub_ba), \u00a0\u00a0\u00a0\u00a0.out_carry(aligned_mantissa_sub_carry_ba) );  assign invert_result_sign = aligned_mantissa_diff[23]; assign aligned_mantissa_sub = aligned_mantissa_diff[23] ? aligned_mantissa_sub_ba : aligned_mantissa_sub_ab; assign aligned_mantissa_sub_carry = aligned_mantissa_diff[23] ? aligned_mantissa_sub_carry_ba : aligned_mantissa_sub_carry_ab;  \/\/ 5. normalize result mantissa_normalizer sum_normalizer( \u00a0\u00a0\u00a0\u00a0.in(aligned_mantissa_sum), \u00a0\u00a0\u00a0\u00a0.in_carry(aligned_mantissa_sum_carry), \u00a0\u00a0\u00a0\u00a0.out(normalized_sum), \u00a0\u00a0\u00a0\u00a0.exponent_shift(sum_exp_shift) \/\/ number of shifts to normalize );  mantissa_normalizer sub_normalizer( \u00a0\u00a0\u00a0\u00a0.in(aligned_mantissa_sub), \u00a0\u00a0\u00a0\u00a0.in_carry(aligned_mantissa_sub_carry), \u00a0\u00a0\u00a0\u00a0.out(normalized_sub), \u00a0\u00a0\u00a0\u00a0.exponent_shift(sub_exp_shift) \/\/ number of shifts to normalize );  \/\/ 6. shift exponent according to the normalization result assign sum_exponent = (sum_exp_shift == -1) ? estimated_result_exponent + 1 : estimated_result_exponent - sum_exp_shift; assign sub_exponent = (sub_exp_shift == -1) ? estimated_result_exponent + 1 : estimated_result_exponent - sub_exp_shift;  \/\/ 7. select sign mode (S1 = S2 (add) or S1 != S2 (subtract)). check a and b for 0 assign out[30:23] = (in_a == 0) ? in_b[30:23] : (in_b == 0) ? in_a[30:23] : (in_a[31] == in_b[31]) ? sum_exponent : sub_exponent; assign out[22:0] = (in_a == 0) ? in_b[22:0] : (in_b == 0) ? in_a[22:0] : (in_a[31] == in_b[31]) ? normalized_sum : normalized_sub; assign out[31] = (in_a[31] == in_b[31]) ? in_a[31] : invert_result_sign ? ~in_a[31] : in_a[31];  endmodule<\/code><\/pre>\n<p>\u0410 \u0447\u0442\u043e\u0431\u044b \u0432 \u044d\u0442\u043e\u043c \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f, \u043f\u043e\u0439\u0434\u0435\u043c \u043f\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0443:<\/p>\n<ol>\n<li>\n<p>\u041c\u043e\u0434\u0443\u043b\u044c \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043d\u0430 \u0432\u0445\u043e\u0434 32-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u044b\u0435 \u0447\u0438\u0441\u043b\u0430 in_a \u0438 in_b.<\/p>\n<\/li>\n<li>\n<p>exp_aligner \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u043d\u0430 \u0432\u0445\u043e\u0434 \u043f\u043e\u0440\u044f\u0434\u043a\u0438 \u0447\u0438\u0441\u0435\u043b A \u0438 B, \u043d\u0430\u0445\u043e\u0434\u044f\u0449\u0438\u0435\u0441\u044f \u0441 30 \u043f\u043e 23 \u0440\u0430\u0437\u0440\u044f\u0434\u044b \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0435\u043d \u043d\u0430 \u043f\u0440\u043e\u0432\u043e\u0434\u0430 a_or_b \u0438 exp_shift_dist.<\/p>\n<\/li>\n<li>\n<p>\u0427\u0435\u0440\u0435\u0437 assign \u0437\u0430\u0434\u0430\u0434\u0438\u043c \u0432 \u0448\u0438\u043d\u044b mantissa_a \u0438 mantissa_b \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043c\u0430\u043d\u0442\u0438\u0441\u0441 \u0447\u0438\u0441\u0435\u043b A \u0438 B \u0441 \u043f\u0440\u0438\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u043c\u0438 \u0432 23 \u0440\u0430\u0437\u0440\u044f\u0434 \u0435\u0434\u0438\u043d\u0438\u0446\u0430\u043c\u0438.<\/p>\n<\/li>\n<li>\n<p>\u0412 estimated_result_exponent \u043f\u043e\u043b\u043e\u0436\u0438\u043c \u0431\u043e\u043b\u044c\u0448\u0438\u0439 \u0438\u0437 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432. \u041a\u0430\u043a\u043e\u0439 \u0438\u0437 \u043d\u0438\u0445 \u0431\u0440\u0430\u0442\u044c, \u0443\u0437\u043d\u0430\u0435\u043c \u043f\u043e \u043f\u0440\u043e\u0432\u043e\u0434\u0443 a_or_b.<\/p>\n<\/li>\n<li>\n<p>\u0412 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f a_or_b \u0441\u0434\u0432\u0438\u043d\u0435\u043c \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0443 \u0447\u0438\u0441\u043b\u0430 A \u0438\u043b\u0438 B \u043d\u0430 \u043d\u0443\u0436\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0437\u0440\u044f\u0434\u043e\u0432. \u0421\u0434\u0432\u0438\u043d\u0443\u0442\u044b\u0435 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u043a\u043b\u0430\u0434\u0435\u043c \u043d\u0430 \u0448\u0438\u043d\u044b aligned_mantissa_a \u0438 aligned_mantissa_b.<\/p>\n<\/li>\n<li>\n<p>\u041f\u0435\u0440\u0435\u0434\u0430\u0434\u0438\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0434\u0432\u0438\u043d\u0443\u0442\u044b\u0445 \u043c\u0430\u043d\u0442\u0438\u0441\u0441 \u043d\u0430 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440 aligned_adder, \u0438\u043d\u0432\u0435\u0440\u0442\u043e\u0440\u044b aligned_inverter_a \u0438 aligned_inverter_b \u0438 \u0432\u044b\u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0438 aligned_subtractor_a_b \u0438 aligned_subtractor_b_a.<\/p>\n<\/li>\n<li>\n<p>\u041f\u043e\u043b\u0443\u0447\u0438\u0432 \u0437\u043d\u0430\u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0432\u044b\u0447\u0438\u0442\u0430\u043d\u0438\u044f aligned_mantissa_diff \u043c\u043e\u0436\u0435\u043c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c, \u043d\u0443\u0436\u043d\u043e \u043b\u0438 \u043d\u0430\u043c \u043c\u0435\u043d\u044f\u0442\u044c \u043c\u0435\u0441\u0442\u0430\u043c\u0438 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u0438 \u0438\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0437\u043d\u0430\u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430. \u0412 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u044d\u0442\u043e\u0433\u043e \u0431\u0435\u0440\u0435\u043c \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043d\u0443\u0436\u043d\u043e\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0438\u0440\u0443\u044e\u0449\u0435\u0439 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u0437 \u0432\u044b\u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439.<\/p>\n<\/li>\n<li>\n<p>\u041f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u0441\u0443\u043c\u043c\u0443 \u0438 \u0440\u0430\u0437\u043d\u043e\u0441\u0442\u044c \u043c\u0430\u043d\u0442\u0438\u0441\u0441 \u0447\u0435\u0440\u0435\u0437 \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440, \u043f\u043e\u043f\u0443\u0442\u043d\u043e \u0443\u0437\u043d\u0430\u0432\u0430\u044f, \u043d\u0430 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437\u0440\u044f\u0434\u043e\u0432 \u043d\u0443\u0436\u043d\u043e \u0441\u0434\u0432\u0438\u043d\u0443\u0442\u044c \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430.<\/p>\n<\/li>\n<li>\n<p>\u0421\u0434\u0432\u0438\u0433\u0430\u0435\u043c \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0441\u0443\u043c\u043c\u044b \u0438 \u0440\u0430\u0437\u043d\u043e\u0441\u0442\u0438 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u043d\u0430 \u043f\u0440\u043e\u0448\u043b\u043e\u043c \u0448\u0430\u0433\u0435 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<\/li>\n<li>\n<p>\u0421\u043e\u0431\u0438\u0440\u0430\u0435\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0438\u0437 \u0437\u043d\u0430\u043a\u0430, \u043f\u043e\u0440\u044f\u0434\u043a\u0430 \u0438 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b. \u0427\u0442\u043e\u0431\u044b \u0432\u0437\u044f\u0442\u044c \u043d\u0443\u0436\u043d\u044b\u0439 \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0438 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0443 (\u0443 \u043d\u0430\u0441 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u043b\u043e \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0438 \u0432\u044b\u0447\u0438\u0442\u0430\u043d\u0438\u0435, \u043e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c, \u0447\u0442\u043e \u0438\u0437 \u043d\u0438\u0445 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e), \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u0437\u043d\u0430\u043a\u0438 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u043e\u0432 in_a \u0438 in_b.<\/p>\n<\/li>\n<\/ol>\n<p>\u0413\u043e\u0442\u043e\u0432\u043e. \u041d\u0430\u0448 \u043c\u043e\u0434\u0443\u043b\u044c \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u0435\u0442 \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u0440\u0430\u043d\u0435\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u0422\u0435\u043f\u0435\u0440\u044c \u043d\u0430\u043f\u0438\u0448\u0435\u043c \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0442\u0435\u0441\u0442 \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u043a\u0430\u043a \u043e\u043d \u0441\u0435\u0431\u044f \u043f\u043e\u0432\u0435\u0434\u0451\u0442 \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435.<\/p>\n<pre><code class=\"vhdl\">`timescale 1ns \/ 1ps  module float_adder_tb;  \u00a0\u00a0\u00a0\u00a0reg [31:0] sum;  \u00a0\u00a0\u00a0\u00a0float_adder adder( \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.in_a(32'b0_10000011_10110010111000010100100), \/\/ 27.18 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.in_b(32'b0_10000000_10000000000000000000000), \/\/ 3 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.out(sum) \u00a0\u00a0\u00a0\u00a0);  \u00a0\u00a0\u00a0\u00a0initial begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0#10 $display(\"sum = %b\", sum); \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0#10 $stop; \u00a0\u00a0\u00a0\u00a0end  endmodule<\/code><\/pre>\n<p>\u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0438 \u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u0438 \u043d\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/57e\/154\/3b8\/57e1543b81aee7f54a3989b9cbc37d5a.png\" alt=\"\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0438\u0445 \u0447\u0438\u0441\u0435\u043b (\u0432\u0435\u0440\u0441\u0438\u044f 1)\" title=\"\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0438\u0445 \u0447\u0438\u0441\u0435\u043b (\u0432\u0435\u0440\u0441\u0438\u044f 1)\" width=\"602\" height=\"827\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/57e\/154\/3b8\/57e1543b81aee7f54a3989b9cbc37d5a.png\"\/><\/p>\n<div><figcaption>\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0438\u0445 \u0447\u0438\u0441\u0435\u043b (\u0432\u0435\u0440\u0441\u0438\u044f 1)<\/figcaption><\/div>\n<\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/386\/4e3\/952\/3864e395200768f812c9a51f12472ede.png\" alt=\"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0432 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u0439 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0443 \u0444\u043e\u0440\u043c\u0430\u0442\" title=\"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0432 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u0439 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0443 \u0444\u043e\u0440\u043c\u0430\u0442\" width=\"775\" height=\"240\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/386\/4e3\/952\/3864e395200768f812c9a51f12472ede.png\"\/><\/p>\n<div><figcaption>\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0432 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u0439 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0443 \u0444\u043e\u0440\u043c\u0430\u0442<\/figcaption><\/div>\n<\/figure>\n<p>\u041e\u0442\u0432\u0435\u0442 \u0432\u0435\u0440\u043d\u044b\u0439, \u0432\u0441\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c!\u00a0<\/p>\n<p>\u042d\u0442\u0443 \u0441\u0445\u0435\u043c\u0443 \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u043d\u043e \u0441\u0438\u043d\u0442\u0435\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c Netlist \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u043a\u0430\u043a \u043d\u0430\u0448 \u043a\u043e\u0434 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0432\u0435\u043d\u0442\u0438\u043b\u0435\u0439:<\/p>\n<ol>\n<li>\n<p>\u041d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u201cSet as top\u201d \u0434\u043b\u044f \u0444\u0430\u0439\u043b\u0430 \u0441 \u043b\u043e\u0433\u0438\u043a\u043e\u0439 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430:<\/p>\n<\/li>\n<\/ol>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/134\/c0a\/280\/134c0a28038675a1421e8cd5e14ec7ce.png\" alt=\"\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e Design Souce \u043f\u0440\u043e\u0435\u043a\u0442\u0430\" title=\"\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e Design Souce \u043f\u0440\u043e\u0435\u043a\u0442\u0430\" width=\"436\" height=\"770\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/134\/c0a\/280\/134c0a28038675a1421e8cd5e14ec7ce.png\"\/><\/p>\n<div><figcaption>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e Design Souce \u043f\u0440\u043e\u0435\u043a\u0442\u0430<\/figcaption><\/div>\n<\/figure>\n<ol start=\"2\">\n<li>\n<p>\u0412 \u043b\u0435\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u044d\u043a\u0440\u0430\u043d\u0430 \u043d\u0430\u0445\u043e\u0434\u0438\u043c \u0432\u043a\u043b\u0430\u0434\u043a\u0443 \u201cSYNTHESIS\u201d \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0441\u0438\u043d\u0442\u0435\u0437.<\/p>\n<\/li>\n<\/ol>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/238\/77f\/042\/23877f042a3e5b05ca6ef5ce7face573.png\" alt=\"\u0412\u043a\u043b\u0430\u0434\u043a\u0430 \u0441\u0438\u043d\u0442\u0435\u0437\u0430\" title=\"\u0412\u043a\u043b\u0430\u0434\u043a\u0430 \u0441\u0438\u043d\u0442\u0435\u0437\u0430\" width=\"213\" height=\"92\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/238\/77f\/042\/23877f042a3e5b05ca6ef5ce7face573.png\"\/><\/p>\n<div><figcaption>\u0412\u043a\u043b\u0430\u0434\u043a\u0430 \u0441\u0438\u043d\u0442\u0435\u0437\u0430<\/figcaption><\/div>\n<\/figure>\n<ol start=\"3\">\n<li>\n<p>\u041f\u0440\u043e\u0446\u0435\u0441\u0441 \u0441\u0438\u043d\u0442\u0435\u0437\u0430 \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u043d\u044f\u0442\u044c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0440\u0435\u043c\u044f. \u0416\u0434\u0435\u043c\u2026<\/p>\n<\/li>\n<\/ol>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/2b6\/f40\/937\/2b6f40937c502ea354ec51e68e234e8d.png\" alt=\"\u0418\u043d\u0434\u0438\u043a\u0430\u0442\u043e\u0440 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0432 \u043f\u0440\u0430\u0432\u043e\u043c \u0432\u0435\u0440\u0445\u043d\u0435\u043c \u0443\u0433\u043b\u0443 \u044d\u043a\u0440\u0430\u043d\u0430\" title=\"\u0418\u043d\u0434\u0438\u043a\u0430\u0442\u043e\u0440 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0432 \u043f\u0440\u0430\u0432\u043e\u043c \u0432\u0435\u0440\u0445\u043d\u0435\u043c \u0443\u0433\u043b\u0443 \u044d\u043a\u0440\u0430\u043d\u0430\" width=\"219\" height=\"63\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2b6\/f40\/937\/2b6f40937c502ea354ec51e68e234e8d.png\"\/><\/p>\n<div><figcaption>\u0418\u043d\u0434\u0438\u043a\u0430\u0442\u043e\u0440 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0432 \u043f\u0440\u0430\u0432\u043e\u043c \u0432\u0435\u0440\u0445\u043d\u0435\u043c \u0443\u0433\u043b\u0443 \u044d\u043a\u0440\u0430\u043d\u0430<\/figcaption><\/div>\n<\/figure>\n<ol start=\"4\">\n<li>\n<p>\u041a\u043e\u0433\u0434\u0430 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d\u0435 \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u043e\u043a\u043d\u043e \u0441 \u0432\u044b\u0431\u043e\u0440\u043e\u043c. \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u201cOpen Synthesized Design\u201d \u0438 \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u043c OK.<\/p>\n<\/li>\n<\/ol>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/708\/bb4\/dc4\/708bb4dc4e135d1dcafb7f639227a952.png\" alt=\"\u041e\u043a\u043d\u043e, \u043f\u043e\u044f\u0432\u0438\u0432\u0448\u0435\u0435\u0441\u044f \u043f\u043e\u0441\u043b\u0435 \u0441\u0438\u043d\u0442\u0435\u0437\u0430\" title=\"\u041e\u043a\u043d\u043e, \u043f\u043e\u044f\u0432\u0438\u0432\u0448\u0435\u0435\u0441\u044f \u043f\u043e\u0441\u043b\u0435 \u0441\u0438\u043d\u0442\u0435\u0437\u0430\" width=\"296\" height=\"288\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/708\/bb4\/dc4\/708bb4dc4e135d1dcafb7f639227a952.png\"\/><\/p>\n<div><figcaption>\u041e\u043a\u043d\u043e, \u043f\u043e\u044f\u0432\u0438\u0432\u0448\u0435\u0435\u0441\u044f \u043f\u043e\u0441\u043b\u0435 \u0441\u0438\u043d\u0442\u0435\u0437\u0430<\/figcaption><\/div>\n<\/figure>\n<ol start=\"5\">\n<li>\n<p>\u0422\u0430\u043c, \u0433\u0434\u0435 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u044b \u0444\u0430\u0439\u043b\u044b, \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u0432\u043a\u043b\u0430\u0434\u043a\u0430 \u201cNetlist\u201d. \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0435\u0435, \u0430 \u0442\u0430\u043c \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443 \u201cSchematic\u201d.<\/p>\n<\/li>\n<\/ol>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/66f\/901\/172\/66f90117227f59816634ca8b9bf2662b.png\" alt=\"\u041f\u043e\u0441\u043b\u0435 \u0441\u0438\u043d\u0442\u0435\u0437\u0430 \u0440\u044f\u0434\u043e\u043c \u0441 \u0432\u043a\u043b\u0430\u0434\u043a\u043e\u0439 Sources \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u0432\u043a\u043b\u0430\u0434\u043a\u0430 Netlist \" title=\"\u041f\u043e\u0441\u043b\u0435 \u0441\u0438\u043d\u0442\u0435\u0437\u0430 \u0440\u044f\u0434\u043e\u043c \u0441 \u0432\u043a\u043b\u0430\u0434\u043a\u043e\u0439 Sources \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u0432\u043a\u043b\u0430\u0434\u043a\u0430 Netlist \" width=\"206\" height=\"157\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/66f\/901\/172\/66f90117227f59816634ca8b9bf2662b.png\"\/><\/p>\n<div><figcaption>\u041f\u043e\u0441\u043b\u0435 \u0441\u0438\u043d\u0442\u0435\u0437\u0430 \u0440\u044f\u0434\u043e\u043c \u0441 \u0432\u043a\u043b\u0430\u0434\u043a\u043e\u0439 Sources \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u0432\u043a\u043b\u0430\u0434\u043a\u0430 Netlist <\/figcaption><\/div>\n<\/figure>\n<p>\u041d\u0430\u0441\u043b\u0430\u0436\u0434\u0430\u0435\u043c\u0441\u044f \u043e\u0433\u0440\u043e\u043c\u043d\u043e\u0439 \u0438 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0439 \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0445\u0435\u043c\u043e\u0439, \u0434\u0435\u043b\u0430\u044e\u0449\u0435\u0439 \u0440\u043e\u0432\u043d\u043e \u0442\u043e, \u0447\u0442\u043e \u043c\u044b \u043e\u043f\u0438\u0441\u0430\u043b\u0438.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/7a4\/02e\/24f\/7a402e24fb53272d1f7f6bd51fb2d510.png\" alt=\"\u0421\u0438\u043d\u0442\u0435\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430\" title=\"\u0421\u0438\u043d\u0442\u0435\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430\" width=\"1243\" height=\"628\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/7a4\/02e\/24f\/7a402e24fb53272d1f7f6bd51fb2d510.png\"\/><\/p>\n<div><figcaption>\u0421\u0438\u043d\u0442\u0435\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430<\/figcaption><\/div>\n<\/figure>\n<p>\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0442\u044c\u0441\u044f \u0432 \u0441\u0445\u0435\u043c\u0435 \u043d\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043d\u0430 \u044d\u0442\u043e \u0443\u0439\u0434\u0451\u0442 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u043c\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438.<\/p>\n<p>\u041d\u0430 \u044d\u0442\u043e\u043c &#171;\u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0439 \u0432\u0435\u0440\u0438\u043b\u043e\u0433&#187; \u0437\u0430\u043a\u043e\u043d\u0447\u0435\u043d, \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u0434\u043e\u0445\u043d\u0443\u0442\u044c \u0438 \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u2013 \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043c\u0435\u043d\u0435\u0435 \u0442\u0440\u0443\u0434\u043e\u0435\u043c\u043a\u043e\u0439.<\/p>\n<h2>\u0412\u0442\u043e\u0440\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438<\/h2>\n<p>\u0412\u0442\u043e\u0440\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u2013 \u043e\u0431\u044b\u0447\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u043d\u0430 SystemVerilog, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f \u0442\u0430\u043a, \u043a\u0430\u043a \u044d\u0442\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f, \u0431\u0435\u0437 \u0438\u0437\u043b\u0438\u0448\u043d\u0438\u0445 \u0443\u0433\u043b\u0443\u0431\u043b\u0435\u043d\u0438\u0439 \u0432 \u0441\u0445\u0435\u043c\u043e\u0442\u0435\u0445\u043d\u0438\u043a\u0443 \u0434\u043e \u0442\u0430\u043a\u043e\u0439 \u0441\u0442\u0435\u043f\u0435\u043d\u0438, \u043a\u0430\u043a \u043c\u044b \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u043b\u0438 \u0432 \u043f\u0440\u043e\u0448\u043b\u043e\u043c \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0435. \u0417\u0434\u0435\u0441\u044c \u0431\u0443\u0434\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u044b \u0442\u0430\u043a\u0438\u0435 \u0444\u0438\u0448\u043a\u0438 SystemVerilog, \u043a\u0430\u043a \u0431\u043b\u043e\u043a always_comb (\u0441\u0438\u0433\u043d\u0430\u043b \u0441\u0438\u043d\u0442\u0435\u0437\u0430\u0442\u043e\u0440\u0443 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u0432\u0441\u0435 \u0432\u043e\u0448\u0435\u0434\u0448\u0435\u0435 \u0432 \u043d\u0435\u0433\u043e \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0441\u0438\u043d\u0442\u0435\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0432 \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u043e\u043d\u043d\u0443\u044e \u0441\u0445\u0435\u043c\u0443) \u0438 \u0442\u0438\u043f logic \u2013 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u043a\u043e\u0442\u043e\u0440\u044b\u0435, \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u043f\u0440\u043e\u0432\u043e\u0434\u043e\u0432, \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u044b \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437 (\u0441\u0438\u043d\u0442\u0435\u0437\u0430\u0442\u043e\u0440 \u0441\u0430\u043c \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u0442\u0441\u044f, \u0433\u0434\u0435 \u0438 \u043a\u0430\u043a \u0434\u0435\u043b\u0430\u0442\u044c \u043f\u0440\u043e\u0432\u043e\u0434\u0430), \u0430 \u0442\u0430\u043a\u0436\u0435 \u043e\u043d\u0438 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u044b \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0430\u0445.<\/p>\n<p>\u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043c \u0432\u0445\u043e\u0434\u044b \u0438 \u0432\u044b\u0445\u043e\u0434\u044b \u043d\u0430\u0448\u0435\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f:<\/p>\n<pre><code class=\"vhdl\">module high_level_float_adder( \u00a0\u00a0\u00a0\u00a0input logic[31:0] in_a, \u00a0\u00a0\u00a0\u00a0input logic[31:0] in_b, \u00a0\u00a0\u00a0\u00a0output logic[31:0] out );<\/code><\/pre>\n<p>\u0412\u0441\u0435 \u0442\u0430\u043a \u0436\u0435, \u043a\u0430\u043a \u0438 \u0440\u0430\u043d\u044c\u0448\u0435 (\u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u043f\u0435\u0440\u044c \u0434\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u043a\u043b\u044e\u0447\u0435\u0432\u043e\u0435 \u0441\u043b\u043e\u0432\u043e logic).<\/p>\n<p>\u041e\u043f\u0438\u0448\u0435\u043c \u043d\u0443\u0436\u043d\u044b\u0435 \u043f\u043e \u0445\u043e\u0434\u0443 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435:<\/p>\n<pre><code class=\"vhdl\">logic [24:0] mantissa_a, mantissa_b, mantissa_sum; logic [7:0] exponent_a, exponent_b; logic result_sign; logic [7:0] result_exponent; logic [22:0] result_mantissa;<\/code><\/pre>\n<p>\u0421\u043a\u0430\u0436\u0435\u043c, \u0447\u0442\u043e \u043d\u0430 \u0448\u0438\u043d\u0443 out \u043f\u043e\u0434\u0430\u0435\u0442\u0441\u044f \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u044f \u0438\u0437 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0438\u0440\u0443\u044e\u0449\u0438\u0445 \u0437\u043d\u0430\u043a\u0430, \u043f\u043e\u0440\u044f\u0434\u043a\u0430 \u0438 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b.<\/p>\n<pre><code class=\"vhdl\">assign out = {result_sign, result_exponent, result_mantissa};<\/code><\/pre>\n<p>\u041f\u043e \u0441\u0443\u0442\u0438, \u0432 \u043a\u043e\u0434\u0435 \u0432\u044b\u0448\u0435 \u043c\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u043e\u0435\u0434\u0438\u043d\u0438\u043b\u0438 \u043f\u0440\u043e\u0432\u043e\u0434\u0430 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b result_sign, result_exponent \u0438 result_mantissa \u043e\u043a\u0430\u0437\u0430\u043b\u0438\u0441\u044c \u0432 \u043d\u0443\u0436\u043d\u044b\u0445 \u0440\u0430\u0437\u0440\u044f\u0434\u0430\u0445 out.<\/p>\n<p>\u0410 \u0442\u0435\u043f\u0435\u0440\u044c \u0441\u0430\u043c\u043e\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0435: \u0431\u043b\u043e\u043a always_comb, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u0432\u0441\u044e \u043b\u043e\u0433\u0438\u043a\u0443 \u0432\u0435\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430.<\/p>\n<pre><code class=\"vhdl\">always_comb begin \u00a0\u00a0\u00a0\u00a0exponent_a = in_a[30:23]; \u00a0\u00a0\u00a0\u00a0exponent_b = in_b[30:23];  \u00a0\u00a0\u00a0\u00a0mantissa_a = {2'b01, in_a[22:0]}; \u00a0\u00a0\u00a0\u00a0mantissa_b = {2'b01, in_b[22:0]};  \u00a0\u00a0\u00a0\u00a0if (exponent_a &gt;= exponent_b) begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0mantissa_b = mantissa_b &gt;&gt; (exponent_a - exponent_b); \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0result_exponent = exponent_a; \u00a0\u00a0\u00a0\u00a0end else begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0mantissa_a = mantissa_a &gt;&gt; (exponent_b - exponent_a); \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0result_exponent = exponent_b; \u00a0\u00a0\u00a0\u00a0end  \u00a0\u00a0\u00a0\u00a0if (in_a[31] == in_b[31]) begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0mantissa_sum = mantissa_a + mantissa_b; \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0result_sign = in_a[31];\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0end else begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0if (mantissa_a &gt;= mantissa_b) begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0mantissa_sum = mantissa_a - mantissa_b; \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0result_sign = in_a[31]; \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0end else begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0mantissa_sum = mantissa_b - mantissa_a; \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0result_sign = in_b[31]; \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0end \u00a0\u00a0\u00a0\u00a0end  \u00a0\u00a0\u00a0\u00a0if (mantissa_sum[24] == 1) begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0mantissa_sum = mantissa_sum &gt;&gt; 1; \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0result_exponent = result_exponent + 1; \u00a0\u00a0\u00a0\u00a0end else if (mantissa_sum[23] == 0) begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0for (int i = 22; i &gt;= 0; i = i - 1) begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0if (mantissa_sum[i] == 1) begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0mantissa_sum = mantissa_sum &lt;&lt; (23 - i); \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0result_exponent = result_exponent - (23 - i); \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0break; \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0end \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0end \u00a0\u00a0\u00a0\u00a0end        \u00a0\u00a0\u00a0\u00a0result_mantissa = mantissa_sum[22:0]; end<\/code><\/pre>\n<p>\u0412\u043e\u0442 \u0438 \u0432\u0441\u0435. \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0432\u0441\u0435\u0445 \u0442\u0435\u0445 \u043c\u043e\u0434\u0443\u043b\u0435\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432 \u043f\u0440\u043e\u0448\u043b\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u0437\u0430\u043d\u044f\u043b\u0438 \u043a\u0443\u0447\u0443 \u0444\u0430\u0439\u043b\u043e\u0432, \u0443\u043c\u0435\u0441\u0442\u0438\u043b\u0430\u0441\u044c \u0432\u0441\u0435\u0433\u043e \u0432 60 \u0441\u0442\u0440\u043e\u0447\u0435\u043a \u043a\u043e\u0434\u0430. \u041f\u0440\u043e\u0439\u0434\u0435\u043c\u0441\u044f \u043f\u043e \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u0437\u0434\u0435\u0441\u044c \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442.<\/p>\n<pre><code class=\"vhdl\">exponent_a = in_a[30:23]; exponent_b = in_b[30:23]; mantissa_a = {2'b01, in_a[22:0]}; mantissa_b = {2'b01, in_b[22:0]};<\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u043c\u044b \u0432\u044b\u043d\u0438\u043c\u0430\u0435\u043c \u0438\u0437 \u0447\u0438\u0441\u0435\u043b \u043f\u043e\u0440\u044f\u0434\u043a\u0438 \u0438 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u0438 \u043a\u043b\u0430\u0434\u0435\u043c \u0438\u0445 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u043d\u0435 \u0437\u0430\u0431\u044b\u0432\u0430\u044f \u0434\u043e\u043f\u0438\u0441\u0430\u0442\u044c 1 \u043a \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0430\u043c.<\/p>\n<pre><code class=\"vhdl\">if (exponent_a &gt;= exponent_b) begin mantissa_b = mantissa_b &gt;&gt; (exponent_a - exponent_b); result_exponent = exponent_a; end else begin mantissa_a = mantissa_a &gt;&gt; (exponent_b - exponent_a); result_exponent = exponent_b; end<\/code><\/pre>\n<p>\u042d\u0442\u0430 \u0447\u0430\u0441\u0442\u044c \u043a\u043e\u0434\u0430 \u0434\u0435\u043b\u0430\u0435\u0442 \u0432\u0441\u0435 \u0442\u043e, \u0447\u0435\u043c \u0443 \u043d\u0430\u0441 \u0432 \u043f\u0440\u043e\u0448\u043b\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u0437\u0430\u043d\u0438\u043c\u0430\u043b\u0441\u044f \u043c\u043e\u0434\u0443\u043b\u044c exponent_aligner. \u041c\u044b \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0435\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0438 \u0438 \u0441\u0434\u0432\u0438\u0433\u0430\u0435\u043c \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0443 \u0442\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430, \u0447\u0435\u0439 \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u043c\u0435\u043d\u044c\u0448\u0435, \u043d\u0430 \u0440\u0430\u0437\u043d\u0438\u0446\u0443. \u041a\u0430\u043a \u0432\u0438\u0434\u043d\u043e, \u0434\u043b\u044f \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0438 \u0432\u044b\u0447\u0438\u0442\u0430\u043d\u0438\u044f \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u201c&gt;=\u201d \u0438 \u201c-\u201d, \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0441 \u043d\u0443\u043b\u044f \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u044b \u0438 \u0438\u043d\u0432\u0435\u0440\u0442\u043e\u0440\u044b, \u043a\u0430\u043a \u043c\u044b \u0434\u0435\u043b\u0430\u043b\u0438 \u044d\u0442\u043e \u0440\u0430\u043d\u0435\u0435. \u0421\u0438\u043d\u0442\u0435\u0437\u0430\u0442\u043e\u0440 \u0441\u0434\u0435\u043b\u0430\u0435\u0442 \u044d\u0442\u043e \u0437\u0430 \u043d\u0430\u0441, \u0443\u0432\u0438\u0434\u0435\u0432 \u0437\u043d\u0430\u043a\u0438 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0438 \u0430\u0440\u0438\u0444\u043c\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439.<\/p>\n<pre><code class=\"vhdl\">if (in_a[31] == in_b[31]) begin mantissa_sum = mantissa_a + mantissa_b; result_sign = in_a[31];\u00a0\u00a0 end else begin if (mantissa_a &gt;= mantissa_b) begin mantissa_sum = mantissa_a - mantissa_b; result_sign = in_a[31]; end else begin mantissa_sum = mantissa_b - mantissa_a; result_sign = in_b[31]; end end<\/code><\/pre>\n<p>\u042d\u0442\u0430 \u0447\u0430\u0441\u0442\u044c \u0437\u0430\u043c\u0435\u043d\u044f\u0435\u0442 \u043d\u0430\u043c \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440, \u0434\u0432\u0430 \u0438\u043d\u0432\u0435\u0440\u0442\u043e\u0440\u0430 \u0438 \u0434\u0432\u0430 \u0432\u044b\u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044f. \u0417\u0434\u0435\u0441\u044c \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0437\u043d\u0430\u043a\u0438 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043b\u0438\u0431\u043e \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u043b\u0438\u0431\u043e \u0432\u044b\u0447\u0438\u0442\u0430\u043d\u0438\u0435. \u0418 \u0441\u043d\u043e\u0432\u0430 \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0446\u0438\u044f. \u0417\u0434\u0435\u0441\u044c \u043c\u044b \u0443\u0436\u0435 \u043d\u0435 \u043f\u0438\u0448\u0435\u043c, \u0432\u044b\u0445\u043e\u0434 \u043a\u0430\u043a\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u043d\u0430\u043c \u043f\u043e\u0434\u0430\u0432\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0437\u043d\u0430\u043a\u0430, \u0437\u0430 \u043d\u0430\u0441 \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u201cif\u201d \u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435.<\/p>\n<pre><code class=\"vhdl\">if (mantissa_sum[24] == 1) begin mantissa_sum = mantissa_sum &gt;&gt; 1; result_exponent = result_exponent + 1; end else if (mantissa_sum[23] == 0) begin for (int i = 22; i &gt;= 0; i = i - 1) begin if (mantissa_sum[i] == 1) begin mantissa_sum = mantissa_sum &lt;&lt; (23 - i); result_exponent = result_exponent - (23 - i); break; end end end  result_mantissa = mantissa_sum[22:0];<\/code><\/pre>\n<p>\u0412\u043e\u0442 \u044d\u0442\u0430 \u0447\u0430\u0441\u0442\u044c \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0437\u0430 \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e. \u041e\u043d\u0430 \u0437\u0430\u043c\u0435\u043d\u044f\u0435\u0442 \u043d\u0430\u043c \u0432\u0435\u0441\u044c \u0442\u043e\u0442 \u043a\u043e\u0448\u043c\u0430\u0440 \u0438\u0437 \u043f\u0440\u043e\u0432\u0435\u0440\u043e\u043a \u0438 \u0441\u0434\u0432\u0438\u0433\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u044b\u043b \u0432 \u043c\u043e\u0434\u0443\u043b\u0435 mantissa_normalizer. \u041c\u044b \u0432 \u0446\u0438\u043a\u043b\u0435 \u0438\u0434\u0435\u043c \u0434\u043e \u043f\u0435\u0440\u0432\u043e\u0439 \u0435\u0434\u0438\u043d\u0438\u0446\u044b, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0441\u0434\u0432\u0438\u0433\u0430\u0435\u043c \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0443, \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u0443\u0435\u043c \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0438 \u0432\u044b\u0445\u043e\u0434\u0438\u043c. \u0421\u0438\u043d\u0442\u0435\u0437\u0430\u0442\u043e\u0440 \u0441\u043d\u043e\u0432\u0430 \u043f\u043e\u0439\u043c\u0451\u0442, \u0447\u0435\u0433\u043e \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u043e\u0442 \u0441\u0445\u0435\u043c\u044b, \u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442 \u043a\u043e\u0434 \u043a\u0430\u043a \u043d\u0430\u0434\u043e.<\/p>\n<p>\u041d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u043f\u0435\u0440\u0435\u0434 \u0431\u043b\u043e\u043a\u043e\u043c always_comb \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 assign \u0434\u0435\u043b\u0430\u0435\u0442 \u0442\u0430\u043a, \u0447\u0442\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0438\u0440\u0443\u044e\u0449\u0438\u0435 \u0437\u043d\u0430\u043a, \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0438 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u0434\u0443\u0442\u0441\u044f \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0440\u0430\u0437\u0440\u044f\u0434\u044b \u0448\u0438\u043d\u044b out, \u0438 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0441\u0445\u0435\u043c\u0430 \u0432\u044b\u0434\u0430\u0441\u0442 \u043d\u0430\u043c \u0442\u043e, \u0447\u0442\u043e \u043d\u0430\u0441\u0447\u0438\u0442\u0430\u043b\u0430.<\/p>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u0438\u043c \u0435\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043a\u043e\u0434\u043e\u043c:<\/p>\n<pre><code class=\"vhdl\">`timescale 1ns \/ 1ps  module high_level_float_adder_tb;  \u00a0\u00a0\u00a0\u00a0reg [31:0] sum;  \u00a0\u00a0\u00a0\u00a0high_level_float_adder adder( \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.in_a(32'b1_01111101_10011001100110011001101), \/\/ -0.4 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.in_b(32'b0_01111101_00110011001100110011010), \/\/ 0.3 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.out(sum) \u00a0\u00a0\u00a0\u00a0);  \u00a0\u00a0\u00a0\u00a0initial begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0#10 $display(\"sum = %b\", sum); \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0#10 $stop; \u00a0\u00a0\u00a0\u00a0end  endmodule<\/code><\/pre>\n<p>\u041d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438 \u201cSet as top\u201d \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/adb\/30a\/452\/adb30a4529292d95beb337af0fbba63e.png\" alt=\"\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438\" title=\"\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438\" width=\"1135\" height=\"892\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/adb\/30a\/452\/adb30a4529292d95beb337af0fbba63e.png\"\/><\/p>\n<div><figcaption>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438<\/figcaption><\/div>\n<\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/0b2\/447\/2cc\/0b24472ccee0ec440862df92414fe2bc.png\" alt=\"\u041f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043a \u0447\u0438\u0442\u0430\u0435\u043c\u043e\u043c\u0443 \u0444\u043e\u0440\u043c\u0430\u0442\u0443\" title=\"\u041f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043a \u0447\u0438\u0442\u0430\u0435\u043c\u043e\u043c\u0443 \u0444\u043e\u0440\u043c\u0430\u0442\u0443\" width=\"771\" height=\"246\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/0b2\/447\/2cc\/0b24472ccee0ec440862df92414fe2bc.png\"\/><\/p>\n<div><figcaption>\u041f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043a \u0447\u0438\u0442\u0430\u0435\u043c\u043e\u043c\u0443 \u0444\u043e\u0440\u043c\u0430\u0442\u0443<\/figcaption><\/div>\n<\/figure>\n<p>\u0412\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c \u0432\u0441\u0435 \u0436\u0435 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0442\u0435\u0440\u044f\u0435\u0442\u0441\u044f, \u043d\u043e \u0441 \u044d\u0442\u0438\u043c \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043f\u043e\u0434\u0435\u043b\u0430\u0442\u044c, \u0434\u043b\u044f \u0432\u0435\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b \u044d\u0442\u043e \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e. \u041d\u0430\u0448 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440 \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u043d\u043e \u0441\u0438\u043d\u0442\u0435\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u0437\u0430\u043b\u0438\u0432\u0430\u0442\u044c \u043d\u0430 \u041f\u041b\u0418\u0421 \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u043d\u0430 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u043c \u0436\u0435\u043b\u0435\u0437\u0435. \u0420\u0430\u0434\u0438 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0430 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0430 \u0441\u0445\u0435\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0441\u0434\u0435\u043b\u0430\u0435\u0442 \u0441\u0438\u043d\u0442\u0435\u0437\u0430\u0442\u043e\u0440 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 \u043a\u043e\u0434\u0430. \u041f\u0440\u043e\u0434\u0435\u043b\u0430\u0435\u043c \u0432\u0441\u0435 \u0442\u0435 \u0436\u0435 \u0448\u0430\u0433\u0438, \u0447\u0442\u043e \u0438 \u043f\u0440\u0438 \u0441\u0438\u043d\u0442\u0435\u0437\u0435 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430, \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u043c \u0441\u0445\u0435\u043c\u0443:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/0ed\/1be\/840\/0ed1be840b15d9de3bfada289b471366.png\" alt=\"\u0421\u0438\u043d\u0442\u0435\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0434\u043b\u044f \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 2 \u0441\u0445\u0435\u043c\u0430\" title=\"\u0421\u0438\u043d\u0442\u0435\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0434\u043b\u044f \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 2 \u0441\u0445\u0435\u043c\u0430\" width=\"1241\" height=\"623\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/0ed\/1be\/840\/0ed1be840b15d9de3bfada289b471366.png\"\/><\/p>\n<div><figcaption>\u0421\u0438\u043d\u0442\u0435\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0434\u043b\u044f \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 2 \u0441\u0445\u0435\u043c\u0430<\/figcaption><\/div>\n<\/figure>\n<p>\u0421\u0445\u0435\u043c\u0430, \u043a\u043e\u043d\u0435\u0447\u043d\u043e, \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0430\u0441\u044c \u043e\u0433\u0440\u043e\u043c\u043d\u0430\u044f, \u043d\u043e \u0435\u0441\u043b\u0438 \u043d\u0430\u0439\u0434\u0435\u0442\u0441\u044f \u0431\u0435\u0437\u0443\u043c\u0435\u0446, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u0445\u043e\u0447\u0435\u0442 \u0432 \u043d\u0435\u0439 \u043f\u043e\u043a\u043e\u043f\u0430\u0442\u044c\u0441\u044f, \u043e\u043d \u0441\u043c\u043e\u0436\u0435\u0442 \u0443\u0432\u0438\u0434\u0435\u0442\u044c, \u0447\u0442\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u043e\u043d\u0430 \u0440\u043e\u0432\u043d\u043e \u0442\u0443 \u0436\u0435 \u043b\u043e\u0433\u0438\u043a\u0443, \u0447\u0442\u043e \u0438 \u043f\u0435\u0440\u0432\u0430\u044f. \u041d\u0443 \u0430 \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0432 \u043f\u0435\u0440\u0432\u043e\u043c \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0435 \u0432\u0441\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u043c\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u043b\u0438 \u0441\u0430\u043c\u0438, \u0430 \u0437\u0434\u0435\u0441\u044c \u0434\u043e\u0432\u0435\u0440\u0438\u043b\u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0438\u043d\u0442\u0435\u0437\u0430\u0442\u043e\u0440\u0443, \u0438\u0445 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u043e\u0442\u043b\u0438\u0447\u0430\u0442\u044c\u0441\u044f.<\/p>\n<p>\u0414\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u0434 \u0437\u0430 \u0441\u0447\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435\u0439 \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0446\u0438\u0438 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043f\u043e\u043d\u044f\u0442\u043d\u0435\u0435 \u0434\u043b\u044f \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430, \u0447\u0435\u043c \u043f\u0435\u0440\u0432\u044b\u0439, \u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442.<\/p>\n<h2>\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h2>\n<p>\u041a\u0430\u043a \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c, SystemVerilog \u043d\u0435 \u0442\u0430\u043a\u043e\u0439 \u0443\u0436 \u0438 \u0441\u0442\u0440\u0430\u0448\u043d\u044b\u0439. \u041f\u043e\u0441\u043b\u0435 \u0440\u0430\u0437\u0431\u0438\u0435\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u0447\u0438 \u043d\u0430 \u043f\u043e\u0434\u0437\u0430\u0434\u0430\u0447\u0438 \u0438 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0445\u0435\u043c\u044b \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043b\u0435\u0433\u0447\u0435. \u0421\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u044f \u0438\u0441\u043a\u0440\u0435\u043d\u043d\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u043f\u0438\u0441\u0430\u0442\u044c \u0442\u0430\u043a, \u043a\u0430\u043a \u0431\u044b\u043b\u043e \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043e \u0432\u043e \u0432\u0442\u043e\u0440\u043e\u043c \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0435. \u041f\u0435\u0440\u0432\u044b\u0439 \u0431\u043e\u043b\u044c\u0448\u0435 \u043f\u043e\u0434\u043e\u0439\u0434\u0435\u0442 \u0434\u043b\u044f \u0431\u0435\u0437\u0443\u043c\u0446\u0435\u0432 \u0432\u0440\u043e\u0434\u0435 \u043c\u0435\u043d\u044f \u0438 \u044d\u043d\u0442\u0443\u0437\u0438\u0430\u0441\u0442\u043e\u0432-\u0441\u0445\u0435\u043c\u043e\u0442\u0435\u0445\u043d\u0438\u043a\u043e\u0432, \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435 \u0442\u0430\u043a \u043e\u0431\u044b\u0447\u043d\u043e \u043d\u0438\u043a\u0442\u043e \u043d\u0435 \u0434\u0435\u043b\u0430\u0435\u0442, \u0442. \u043a. \u0442\u0430\u043a\u043e\u0439 \u043a\u043e\u0434 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0447\u0435\u043d\u044c \u043e\u0431\u044a\u0435\u043c\u043d\u044b\u0439 \u0438 \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u043e \u043d\u0435\u0447\u0438\u0442\u0430\u0435\u043c\u044b\u0439, \u0430 \u0441 \u044d\u0442\u0438\u043c \u043f\u043e\u0432\u044b\u0448\u0430\u0435\u0442\u0441\u044f \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c \u0433\u0434\u0435-\u0442\u043e \u043e\u0448\u0438\u0431\u0438\u0442\u044c\u0441\u044f. \u041d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u0447\u0438\u0442\u0430\u0435\u043c\u044b\u0439 \u043a\u043e\u0434, \u0430 \u0432\u0441\u044e \u0433\u0440\u044f\u0437\u043d\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u0443 \u043f\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044e \u0432 \u0441\u0445\u0435\u043c\u0443 \u0438\u0437 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 \u0434\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0441\u0438\u043d\u0442\u0435\u0437\u0430\u0442\u043e\u0440\u0443 (\u043d\u043e \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c, \u043a\u0430\u043a \u0432\u0430\u0448 \u043a\u043e\u0434 \u0441\u0438\u043d\u0442\u0435\u0437\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u043d\u0443\u0436\u043d\u043e, \u0431\u0435\u0437 \u044d\u0442\u043e\u0433\u043e \u043d\u0438\u043a\u0430\u043a!)<\/p>\n<p>\u041d\u0430 \u044d\u0442\u043e\u043c \u0443 \u043c\u0435\u043d\u044f \u043f\u043e\u043a\u0430 \u0447\u0442\u043e \u0432\u0441\u0435. \u0412\u0435\u0441\u044c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 \u044f \u0432\u044b\u043b\u043e\u0436\u0438\u043b \u043d\u0430 \u0441\u0432\u043e\u0439 \u0433\u0438\u0442\u0445\u0430\u0431: <a href=\"https:\/\/github.com\/Yars2021\/floating_adder\/\" rel=\"noopener noreferrer nofollow\"><u>https:\/\/github.com\/Yars2021\/floating_adder\/<\/u><\/a>\u00a0<\/p>\n<p>\u0421\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u0438, \u043d\u0430\u0434\u0435\u044e\u0441\u044c, \u0441\u0442\u0430\u0442\u044c\u044f \u043a\u043e\u043c\u0443-\u0442\u043e \u043f\u043e\u043c\u043e\u0433\u043b\u0430, \u0430 SystemVerilog \u0441\u0442\u0430\u043b \u0447\u0443\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u043d\u044f\u0442\u043d\u044b\u043c \u0438 \u043c\u0435\u043d\u0435\u0435 \u043f\u0443\u0433\u0430\u044e\u0449\u0438\u043c!<\/p>\n<h2>\u0421\u0441\u044b\u043b\u043a\u0438<\/h2>\n<ol>\n<li>\n<p><a href=\"https:\/\/numeral-systems.com\/ieee-754-add\/\" rel=\"noopener noreferrer nofollow\"><u>https:\/\/numeral-systems.com\/ieee-754-add\/<\/u><\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/www.h-schmidt.net\/FloatConverter\/IEEE754.html\" rel=\"noopener noreferrer nofollow\"><u>https:\/\/www.h-schmidt.net\/FloatConverter\/IEEE754.html<\/u><\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%94%D0%BE%D0%BF%D0%BE%D0%BB%D0%BD%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9_%D0%BA%D0%BE%D0%B4\" rel=\"noopener noreferrer nofollow\"><u>https:\/\/ru.wikipedia.org\/wiki\/%D0%94%D0%BE%D0%BF%D0%BE%D0%BB%D0%BD%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9_%D0%BA%D0%BE%D0%B4<\/u><\/a>\u00a0<\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/Programmable_logic_device\" rel=\"noopener noreferrer nofollow\"><u>https:\/\/en.wikipedia.org\/wiki\/Programmable_logic_device<\/u><\/a>\u00a0<\/p>\n<\/li>\n<\/ol>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \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\/855866\/\"> https:\/\/habr.com\/ru\/articles\/855866\/<\/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<h2>\u041f\u0440\u0435\u0434\u0438\u0441\u043b\u043e\u0432\u0438\u0435<\/h2>\n<p>\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442!<\/p>\n<p>\u0414\u0430\u043d\u043d\u0430\u044f \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u044b \u043d\u0430 SystemVerilog \u0441\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u0430\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0443\u0433\u043b\u0443\u0431\u043b\u0435\u043d\u043d\u043e \u0432 \u044d\u0442\u043e\u043c \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0442\u044c\u0441\u044f. \u0420\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u0430 \u043e\u043d\u0430 \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e\u0431\u044b \u0434\u0440\u0443\u0433\u0438\u043c \u043d\u043e\u0432\u0438\u0447\u043a\u0430\u043c \u0431\u044b\u043b\u043e \u043f\u0440\u043e\u0449\u0435 \u0441\u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u043d\u0435\u0437\u043d\u0430\u043a\u043e\u043c\u043e\u0439 \u0441\u0440\u0435\u0434\u0435, \u043f\u043e\u044d\u0442\u043e\u043c\u0443\u00a0\u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0430\u0441\u043f\u0435\u043a\u0442\u044b \u0437\u0434\u0435\u0441\u044c \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u044b \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u043d\u043e \u0438 \u0443\u043f\u0440\u043e\u0449\u0435\u043d\u043d\u043e. \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0434\u043d\u0430 \u0438\u0437 \u043c\u043e\u0438\u0445 \u043b\u0430\u0431\u043e\u0440\u0430\u0442\u043e\u0440\u043d\u044b\u0445 \u0440\u0430\u0431\u043e\u0442 \u0432 \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0438\u0442\u0435\u0442\u0435.<\/p>\n<p>\u0427\u0442\u043e \u0432\u043e\u043e\u0431\u0449\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u0438\u0437 \u0441\u0435\u0431\u044f \u044f\u0437\u044b\u043a\u0438 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u044b? \u0415\u0441\u043b\u0438 \u043a\u0440\u0430\u0442\u043a\u043e, \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043e\u043d\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438\u0441\u044c \u0434\u043b\u044f \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u043b\u044c\u043d\u044b\u0445 \u0441\u0445\u0435\u043c. \u041e\u043d\u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0442\u0435\u043a\u0441\u0442\u0430 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u0434\u043e\u043b\u0436\u043d\u0430 \u0432\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u0430, \u0438 \u043a\u0430\u043a \u043e\u043d\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u044b \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439. \u0414\u0430\u043b\u0435\u0435 \u044d\u0442\u0438 \u0437\u0430\u043f\u0438\u0441\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u043b\u0438\u0441\u044c \u043d\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u043e, \u0433\u0434\u0435 \u0431\u0440\u0430\u043b\u0441\u044f \u043a\u0443\u0441\u043e\u043a \u043a\u0440\u0435\u043c\u043d\u0438\u044f \u0438 \u0438\u0437\u0433\u043e\u0442\u0430\u0432\u043b\u0438\u0432\u0430\u043b\u0430\u0441\u044c \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 (ASIC). \u0421\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u041f\u041b\u0418\u0421\u044b \u2013 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u044b\u0435 \u043c\u043d\u043e\u0433\u043e\u043a\u0440\u0430\u0442\u043d\u043e \u043c\u0435\u043d\u044f\u0442\u044c \u0441\u0432\u043e\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0436\u0435\u043b\u0435\u0437\u0430. \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043e \u043d\u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <a href=\"https:\/\/en.wikipedia.org\/wiki\/Programmable_logic_device\" rel=\"noopener noreferrer nofollow\">\u0432\u043e\u0442 \u0437\u0434\u0435\u0441\u044c<\/a>.<\/p>\n<p>\u0414\u043b\u044f \u044f\u0437\u044b\u043a\u043e\u0432 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u044b \u0431\u044b\u043b\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u044b \u0441\u0438\u043d\u0442\u0435\u0437\u0430\u0442\u043e\u0440\u044b, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u0438\u0445 \u0432 \u0431\u0438\u0442\u043e\u0432\u044b\u0435 \u043f\u043e\u0442\u043e\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u044e\u0442\u0441\u044f \u043d\u0430 \u041f\u041b\u0418\u0421\u044b \u0438 \u0437\u0430\u0434\u0430\u044e\u0442 \u0438\u043c \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443.<\/p>\n<p>SystemVerilog \u2013 \u044f\u0437\u044b\u043a \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u044b. \u041d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u043d\u0435\u043c \u043a\u043e\u0434 \u043e\u0431\u044b\u0447\u043d\u043e \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u044d\u0442\u0430\u043f\u044b:<\/p>\n<ol>\n<li>\n<p>\u041f\u0440\u043e\u0433\u043e\u043d \u0432 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438 \u0434\u043b\u044f \u043e\u0442\u043b\u0430\u0434\u043a\u0438.<\/p>\n<\/li>\n<li>\n<p>\u0421\u0438\u043d\u0442\u0435\u0437 \u0432 \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0441\u0445\u0435\u043c\u0443.<\/p>\n<\/li>\n<li>\n<p>\u0420\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u044d\u0442\u043e\u0439 \u0441\u0445\u0435\u043c\u044b \u043d\u0430 \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u043e\u0439 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u041f\u041b\u0418\u0421.<\/p>\n<\/li>\n<li>\n<p>\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0431\u0438\u0442\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430.<\/p>\n<\/li>\n<li>\n<p>\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a \u041f\u041b\u0418\u0421 \u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0432 \u043d\u0435\u0435 \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430.<\/p>\n<\/li>\n<\/ol>\n<p>\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0431\u0443\u0434\u0443\u0442 \u0437\u0430\u0442\u0440\u043e\u043d\u0443\u0442\u044b \u043f\u0443\u043d\u043a\u0442\u044b 1 \u0438 2. \u041f\u0440\u043e \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u044f, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043d\u0430\u043f\u0438\u0448\u0443 \u0435\u0449\u0435 \u043e\u0434\u043d\u0443 \u0441\u0442\u0430\u0442\u044c\u044e, \u0433\u0434\u0435 \u0443\u043f\u043e\u0440 \u0431\u0443\u0434\u0435\u0442 \u0434\u0435\u043b\u0430\u0442\u044c\u0441\u044f \u0438\u043c\u0435\u043d\u043d\u043e \u043d\u0430 \u0437\u0430\u043f\u0443\u0441\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u043e\u0439 \u0437\u0434\u0435\u0441\u044c \u0441\u0445\u0435\u043c\u044b \u043d\u0430 \u0436\u0435\u043b\u0435\u0437\u0435. \u0410 \u0441\u0435\u0439\u0447\u0430\u0441 \u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u0442\u044c \u043a \u0437\u0430\u0434\u0430\u0447\u0435.<\/p>\n<h2>\u0421\u0443\u0442\u044c \u0437\u0430\u0434\u0430\u0447\u0438<\/h2>\n<p>\u0422\u0435\u043a\u0441\u0442 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0437\u0432\u0443\u0447\u0438\u0442 \u0442\u0430\u043a: &#171;\u0421\u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u0432\u0435\u0440\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0430 FPGA \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u043e\u043d\u043d\u0443\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u0435\u043b\u044f \u043f\u0440\u0438\u043a\u043b\u0430\u0434\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438&#187;.<\/p>\n<p>\u041a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u2013 \u044d\u0442\u043e \u0441\u0445\u0435\u043c\u0430, \u0432\u044b\u0445\u043e\u0434 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u0445\u043e\u0434\u043e\u0432. \u0423 \u043d\u0435\u0435 \u043d\u0435\u0442 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0445 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439 \u0438 \u043a\u0430\u043a\u043e\u0439-\u043b\u0438\u0431\u043e \u043f\u0430\u043c\u044f\u0442\u0438, \u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043a\u0430\u0436\u0434\u043e\u043c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0437\u0430 1 \u0442\u0430\u043a\u0442.<\/p>\n<p>\u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043d\u0443\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c, \u043c\u043d\u0435 \u0434\u043e\u0441\u0442\u0430\u043b\u0441\u044f \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440 \u0434\u0432\u0443\u0445 32-\u0431\u0438\u0442\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b (IEEE-754) \u0441 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0435\u0439 \u0442\u043e\u0447\u043a\u043e\u0439.<\/p>\n<p><strong>\u0421\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0445\u0435\u043c\u044b<\/strong><\/p>\n<p>\u0412 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0438 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u044b (\u0434\u0430 \u0438 \u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0432 \u0446\u0435\u043b\u043e\u043c \u0442\u043e\u0436\u0435) \u043e\u0447\u0435\u043d\u044c \u0432\u0430\u0436\u043d\u043e \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u043e\u0434\u0443\u043c\u0430\u0442\u044c \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u0447\u0435\u0442\u043a\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c, \u0447\u0442\u043e \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e \u043e\u043d\u0430 \u0431\u0443\u0434\u0435\u0442 \u0434\u0435\u043b\u0430\u0442\u044c \u0438 \u043a\u0430\u043a\u0438\u0435 \u0448\u0430\u0433\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f, \u0438 \u043b\u0438\u0448\u044c \u043f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0430\u0442\u044c \u043a \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044e \u043a\u043e\u0434\u0430, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0442\u043e\u043c \u043d\u0435 \u043f\u0435\u0440\u0435\u0434\u0435\u043b\u044b\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u043d\u0430 \u0445\u043e\u0434\u0443.<\/p>\n<p>\u041f\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0443 IEEE-754 32-\u0431\u0438\u0442\u043d\u043e\u0435 \u0432\u0435\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:\u00a0<\/p>\n<figure class=\"\">\n<div><figcaption>IEEE-754 32-bit float<\/figcaption><\/div>\n<\/figure>\n<p>1-\u0439 \u0431\u0438\u0442 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0437\u043d\u0430\u043a \u0447\u0438\u0441\u043b\u0430, 8 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u2013 \u043f\u043e\u0440\u044f\u0434\u043e\u043a (\u0441\u0442\u0435\u043f\u0435\u043d\u044c \u0434\u0432\u043e\u0439\u043a\u0438, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0431\u0443\u0434\u0435\u0442 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0430 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0430 +127 \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0441\u0442\u0435\u043f\u0435\u043d\u0435\u0439), \u0430 \u043e\u0441\u0442\u0430\u0432\u0448\u0438\u0435\u0441\u044f 23 \u2013 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0443.<\/p>\n<p>\u0412\u0435\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0438\u0437 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n<ol>\n<li>\n<p>\u041a \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0435 \u0441\u043b\u0435\u0432\u0430 \u043f\u0440\u0438\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0435\u0434\u0438\u043d\u0438\u0446\u0430 \u0441 \u0437\u0430\u043f\u044f\u0442\u043e\u0439, \u0432\u0441\u0435 23 \u0435\u0435 \u0440\u0430\u0437\u0440\u044f\u0434\u0430 \u043f\u043e\u043f\u0430\u0434\u0430\u044e\u0442 \u0432 \u0434\u0440\u043e\u0431\u043d\u0443\u044e \u0447\u0430\u0441\u0442\u044c.<\/p>\n<\/li>\n<li>\n<p>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0443\u043c\u043d\u043e\u0436\u0430\u0435\u0442\u0441\u044f \u043d\u0430 2^(\u043f\u043e\u0440\u044f\u0434\u043e\u043a &#8212; 127).<\/p>\n<\/li>\n<li>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0443\u043c\u043d\u043e\u0436\u0430\u0435\u0442\u0441\u044f \u043d\u0430 (-1)^(\u0437\u043d\u0430\u043a\u043e\u0432\u044b\u0439 \u0431\u0438\u0442). (1 \u2013 \u0447\u0438\u0441\u043b\u043e \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435, 0 \u2013 \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435).<\/p>\n<\/li>\n<\/ol>\n<p>\u0414\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0447\u0438\u0441\u043b\u043e \u043d\u0430 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0435 \u0432\u044b\u0448\u0435:<\/p>\n<ol>\n<li>\n<p>\u0414\u043e\u0431\u0430\u0432\u0438\u043c \u0441\u043b\u0435\u0432\u0430 \u043a \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0435 1: 1.11010100000000000000000. \u0412 \u0434\u0435\u0441\u044f\u0442\u0438\u0447\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0432\u043d\u043e 1 * 2^0 + 1 * 2^-1 + 1 * 2^-2 + 1 * 2^-4 + 1 * 2^-6 = 1 + 1\/2 + 1\/4 + 1\/16 + 1\/64 = 1 + 53\/64 = 1.828125.<\/p>\n<\/li>\n<li>\n<p>\u0412 \u0431\u0438\u0442\u0430\u0445 \u043f\u043e\u0440\u044f\u0434\u043a\u0430 \u043b\u0435\u0436\u0438\u0442 \u0447\u0438\u0441\u043b\u043e 134, \u043e\u0442\u043d\u0438\u043c\u0430\u0435\u043c 127 \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c 7.<\/p>\n<\/li>\n<li>\n<p>\u0417\u043d\u0430\u043a\u043e\u0432\u044b\u0439 \u0431\u0438\u0442 \u0440\u0430\u0432\u0435\u043d 0, \u0447\u0438\u0441\u043b\u043e \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435, 1.828125 * 2^7 = 234.0.<\/p>\n<\/li>\n<\/ol>\n<p>\u041e\u0447\u0435\u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0434\u043b\u044f \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0442\u0430\u043a\u0438\u0445 \u0447\u0438\u0441\u0435\u043b \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0440\u043e\u0441\u0443\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0438\u0442\u044b, \u043a\u0430\u043a \u043c\u044b \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u043c \u043f\u0440\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f\u0445 \u043d\u0430\u0434 \u0446\u0435\u043b\u044b\u043c\u0438. \u0414\u043b\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u043d\u0430\u0434 \u0432\u0435\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c\u0438 \u0447\u0438\u0441\u043b\u0430\u043c\u0438 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c:<\/p>\n<p><strong>\u0421\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u0435\u043b \u0441 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u043c \u0437\u043d\u0430\u043a\u043e\u043c.<\/strong><\/p>\n<figure class=\"\">\n<div><figcaption>\u041e\u043f\u0435\u0440\u0430\u043d\u0434\u044b<\/figcaption><\/div>\n<\/figure>\n<ol>\n<li>\n<p>\u041a \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0430\u043c \u0441\u043b\u0435\u0432\u0430 \u043f\u0440\u0438\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0435\u0434\u0438\u043d\u0438\u0446\u0430, \u0434\u043b\u0438\u043d\u0430 \u043c\u0430\u043d\u0442\u0438\u0441\u0441 \u0442\u0435\u043f\u0435\u0440\u044c \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 24 \u0431\u0438\u0442\u0430.<\/p>\n<\/li>\n<\/ol>\n<figure class=\"\">\n<div><figcaption>\u041c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u043e\u0432 \u0441 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u0435\u0434\u0438\u043d\u0438\u0446\u0435\u0439 \u0432 \u043d\u0430\u0447\u0430\u043b\u0435<\/figcaption><\/div>\n<\/figure>\n<ol start=\"2\">\n<li>\n<p>\u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432 \u043e\u0431\u043e\u0438\u0445 \u0447\u0438\u0441\u0435\u043b. \u041c\u0430\u043d\u0442\u0438\u0441\u0441\u0430 \u0442\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430, \u0447\u0435\u0439 \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u043c\u0435\u043d\u044c\u0448\u0435, \u0441\u0434\u0432\u0438\u0433\u0430\u0435\u0442\u0441\u044f \u0432\u043f\u0440\u0430\u0432\u043e \u043d\u0430 \u0440\u0430\u0437\u043d\u0438\u0446\u0443 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432.<\/p>\n<\/li>\n<\/ol>\n<figure class=\"\">\n<div><figcaption>\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432<\/figcaption><\/div>\n<\/figure>\n<figure class=\"\">\n<div><figcaption>\u0421\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u0447\u0438\u0441\u043b\u0430 \u0441 \u043c\u0435\u043d\u044c\u0448\u0438\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u043c<\/figcaption><\/div>\n<\/figure>\n<ol start=\"3\">\n<li>\n<p>\u041c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e\u0442\u0441\u044f, \u043a\u0430\u043a \u043e\u0431\u044b\u0447\u043d\u044b\u0435 \u0446\u0435\u043b\u044b\u0435 \u0447\u0438\u0441\u043b\u0430 \u0431\u0435\u0437 \u0437\u043d\u0430\u043a\u0430 (\u0437\u0434\u0435\u0441\u044c \u043e\u0447\u0435\u043d\u044c \u0432\u0430\u0436\u043d\u043e \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c, \u0447\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u043e\u0438\u0437\u043e\u0439\u0442\u0438 \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 1 \u0431\u0438\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0438 \u0432 \u043a\u043e\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u0435\u043b\u044c\u0437\u044f \u0442\u0435\u0440\u044f\u0442\u044c).<\/p>\n<\/li>\n<\/ol>\n<figure class=\"\">\n<div><figcaption>\u0421\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u0430\u043d\u0442\u0438\u0441\u0441<\/figcaption><\/div>\n<\/figure>\n<ol start=\"4\">\n<li>\n<p>\u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u043e\u0440\u044f\u0434\u043a\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0431\u0435\u0440\u0435\u0442\u0441\u044f \u0431\u043e\u043b\u044c\u0448\u0438\u0439 \u0438\u0437 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u043e\u0432 (\u0442\u043e\u0442, \u0447\u0442\u043e \u043d\u0435 \u0434\u0432\u0438\u0433\u0430\u043b\u0441\u044f). \u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 134.<\/p>\n<\/li>\n<li>\n<p>\u041d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0447\u0438\u0441\u043b\u0430 (\u043d\u0443\u0436\u043d\u0430 \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043c\u044b \u043d\u0435 \u0442\u0435\u0440\u044f\u043b\u0438 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c \u0441\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c). \u041c\u0430\u043d\u0442\u0438\u0441\u0441\u0430 \u0441\u0434\u0432\u0438\u0433\u0430\u0435\u0442\u0441\u044f \u0442\u0430\u043a, \u0447\u0442\u043e \u043f\u0435\u0440\u0432\u0430\u044f \u0435\u0434\u0438\u043d\u0438\u0446\u0430 \u0432 \u043d\u0435\u0439 \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u0442 \u043d\u0430 24 \u0440\u0430\u0437\u0440\u044f\u0434, \u0440\u043e\u0432\u043d\u043e \u043d\u0430 \u043c\u0435\u0441\u0442\u043e \u0442\u043e\u0439 \u0435\u0434\u0438\u043d\u0438\u0446\u044b, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u044b \u043f\u0440\u0438\u043f\u0438\u0441\u044b\u0432\u0430\u043b\u0438 \u043a \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0430\u043c \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u043e\u0432 \u0432 \u043f\u0443\u043d\u043a\u0442\u0435 1. \u041f\u0440\u0438 \u0441\u0434\u0432\u0438\u0433\u0435 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0438\u043d\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0438\u043b\u0438 \u0434\u0435\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f.<\/p>\n<ul>\n<li>\n<p>\u0415\u0441\u043b\u0438 \u0443 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0438\u0440\u0443\u044e\u0449\u0435\u0439 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u043e\u043a\u0430\u0437\u0430\u043b\u0430\u0441\u044c \u0435\u0434\u0438\u043d\u0438\u0446\u0430 \u0432 25 \u0440\u0430\u0437\u0440\u044f\u0434\u0435 (\u043f\u0435\u0440\u0435\u043d\u043e\u0441 \u043f\u0440\u0438 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0438), \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0430 \u0441\u0434\u0432\u0438\u0433\u0430\u0435\u0442\u0441\u044f \u0432\u043f\u0440\u0430\u0432\u043e \u043d\u0430 1, \u0430 \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0430 1.<\/p>\n<\/li>\n<li>\n<p>\u0415\u0441\u043b\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0438\u0440\u0443\u044e\u0449\u0430\u044f \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u0430 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0441 0, \u043e\u043d\u0430 \u0434\u0432\u0438\u0433\u0430\u0435\u0442\u0441\u044f \u0432\u043b\u0435\u0432\u043e, \u043f\u043e\u043a\u0430 24-\u0439 \u0440\u0430\u0437\u0440\u044f\u0434 \u043d\u0435 \u0441\u0442\u0430\u043d\u0435\u0442 \u0440\u0430\u0432\u0435\u043d 1. \u041f\u0440\u0438 \u043a\u0430\u0436\u0434\u043e\u043c \u0441\u0434\u0432\u0438\u0433\u0435 \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0435\u0442\u0441\u044f \u043d\u0430 1.<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<figure class=\"\">\n<div><figcaption>\u041d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0441\u0443\u043c\u043c\u044b \u043c\u0430\u043d\u0442\u0438\u0441\u0441<\/figcaption><\/div>\n<\/figure>\n<ol start=\"6\">\n<li>\n<p>\u0417\u043d\u0430\u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0431\u0435\u0440\u0435\u0442\u0441\u044f \u043e\u0442 \u043b\u044e\u0431\u043e\u0433\u043e \u0438\u0437 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u0430, \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0431\u044b\u043b \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d \u0432 \u043f\u0443\u043d\u043a\u0442\u0435 5, \u043e\u0442 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0439 \u0442\u0430\u043c \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u0431\u0435\u0440\u0443\u0442\u0441\u044f 23 \u043c\u043b\u0430\u0434\u0448\u0438\u0445 \u0440\u0430\u0437\u0440\u044f\u0434\u0430. \u0418\u0437 \u044d\u0442\u0438\u0445 \u0447\u0430\u0441\u0442\u0435\u0439 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u043d\u0430\u0448 \u043e\u0442\u0432\u0435\u0442.<\/p>\n<\/li>\n<\/ol>\n<figure class=\"\">\n<div><figcaption>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/figcaption><\/div>\n<\/figure>\n<p><strong>\u0421\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u0435\u043b \u0441 \u0440\u0430\u0437\u043d\u044b\u043c\u0438 \u0437\u043d\u0430\u043a\u0430\u043c\u0438.<\/strong><\/p>\n<p>\u0420\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0442\u0430\u043a \u0436\u0435, \u043a\u0430\u043a \u0438 \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0441 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u043c\u0438 \u0437\u043d\u0430\u043a\u0430\u043c\u0438, \u043e\u0434\u043d\u0430\u043a\u043e \u0435\u0441\u0442\u044c \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u0432 \u043f\u0443\u043d\u043a\u0442\u0435 3. \u0418\u0437 \u0431\u043e\u043b\u044c\u0448\u0435\u0439 \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u0432\u0441\u0435\u0433\u0434\u0430 \u0432\u044b\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u043c\u0435\u043d\u044c\u0448\u0430\u044f. \u0415\u0441\u043b\u0438 \u0434\u043b\u044f \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0433\u043e \u0432\u044b\u0447\u0438\u0442\u0430\u043d\u0438\u044f \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u043c\u0435\u043d\u044f\u0442\u044c \u043c\u0430\u043d\u0442\u0438\u0441\u0441\u044b \u043c\u0435\u0441\u0442\u0430\u043c\u0438, \u0437\u043d\u0430\u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430, \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u0440\u0430\u0432\u043d\u044b\u0439 \u0437\u043d\u0430\u043a\u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430, \u0442\u0430\u043a \u0436\u0435 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u0441\u044f \u043d\u0430 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u043f\u043e\u043b\u043e\u0436\u043d\u044b\u0439.<\/p>\n<h2>\u0421\u0445\u0435\u043c\u0430<\/h2>\n<p>\u0415\u0441\u043b\u0438 \u043f\u0440\u043e\u0439\u0442\u0438\u0441\u044c \u043f\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430\u043c \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e, \u043c\u043e\u0436\u043d\u043e \u0438\u0437\u043e\u0431\u0440\u0430\u0437\u0438\u0442\u044c \u043d\u0430\u0448 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440. \u0412\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n<figure class=\"full-width\">\n<div><figcaption>\u041f\u0440\u0438\u043c\u0435\u0440\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430 \u0447\u0438\u0441\u0435\u043b \u0441 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0435\u0439 \u0442\u043e\u0447\u043a\u043e\u0439<\/figcaption><\/div>\n<\/figure>\n<h2>\u041d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043a\u043e\u0434\u0430<\/h2>\n<p>\u041d\u0443 \u0447\u0442\u043e, \u0441\u0445\u0435\u043c\u0430 \u043e\u043f\u0438\u0441\u0430\u043d\u0430, \u043f\u0440\u0438\u0448\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043d\u0430 SystemVerilog. \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0441\u0440\u0435\u0434\u044b \u044f \u0431\u0443\u0434\u0443 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Vivado 2019.1. <\/p>\n<p>\u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u043f\u0440\u043e\u0435\u043a\u0442 \u043f\u043e\u0434 \u043d\u0443\u0436\u043d\u0443\u044e \u0436\u0435\u043b\u0435\u0437\u043a\u0443 (\u0438\u043b\u0438 \u0431\u0435\u0440\u0435\u043c \u0448\u0430\u0431\u043b\u043e\u043d, \u043a\u0430\u043a \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0441 \u043c\u043e\u0438\u043c \u0437\u0430\u0434\u0430\u043d\u0438\u0435\u043c).<\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0434\u0432\u0443\u043c\u044f \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c\u0438 \u0432\u0438\u0434\u0430\u043c\u0438 \u0444\u0430\u0439\u043b\u043e\u0432: Design Source \u0438 Simulation Source. \u0412 \u043f\u0435\u0440\u0432\u044b\u0445 \u0431\u0443\u0434\u0435\u0442 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u0432\u0441\u044f \u043b\u043e\u0433\u0438\u043a\u0430, \u0430 \u0432\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0435\u0440\u0432\u044b\u0445. \u0421\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u0441\u0445\u0435\u043c\u0443, \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u0443\u044e \u0440\u0430\u043d\u0435\u0435 \u0438 \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0430\u0435\u043c.<\/p>\n<p>\u0414\u043b\u044f \u043b\u0443\u0447\u0448\u0435\u0433\u043e \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u044f \u043f\u0440\u0438\u0432\u0435\u0434\u0443 \u0437\u0434\u0435\u0441\u044c \u0434\u0432\u0430 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c.<\/p>\n<h2>\u041f\u0435\u0440\u0432\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438<\/h2>\n<p>\u0415\u0433\u043e \u044f \u0432 \u0448\u0443\u0442\u043a\u0443\u00a0\u043d\u0430\u0437\u044b\u0432\u0430\u044e \u00ab\u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u043c \u0432\u0435\u0440\u0438\u043b\u043e\u0433\u043e\u043c\u00bb, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e\u00a0\u0432\u00a0\u043d\u0435\u043c \u043c\u044b \u0431\u0443\u043a\u0432\u0430\u043b\u044c\u043d\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u043c, \u043a\u0430\u043a\u0438\u0435 \u043f\u0440\u043e\u0432\u043e\u0434\u0430 \u043a\u0443\u0434\u0430 \u0432\u043e\u0442\u043a\u043d\u0443\u0442\u044c, \u0447\u0442\u043e\u0431\u044b \u0432\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e, \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u0432\u043e\u0441\u0441\u043e\u0437\u0434\u0430\u0432\u0430\u044f \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u0443\u044e \u0432\u044b\u0448\u0435 \u0441\u0445\u0435\u043c\u0443. \u042d\u0442\u043e\u0442 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u0438\u0431\u043b\u0438\u0436\u0435\u043d \u043a\u00a0\u043d\u0435\u0439.<\/p>\n<p>\u041e\u043d \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043e\u0447\u0435\u043d\u044c \u0441\u043b\u043e\u0436\u043d\u044b\u043c, \u043d\u043e\u00a0\u0435\u0441\u043b\u0438 \u0432\u00a0\u043d\u0435\u043c \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f, \u0442\u043e \u0432\u0442\u043e\u0440\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u043d\u044f\u0442\u043d\u0435\u0435. \u041f\u0440\u0438\u00a0\u0442\u0430\u043a\u043e\u043c \u043f\u043e\u0434\u0445\u043e\u0434\u0435 \u043c\u044b \u0438\u0434\u0435\u043c \u043e\u0442\u00a0\u0441\u0430\u043c\u044b\u0445 \u043c\u0435\u043b\u043a\u0438\u0445 \u0447\u0430\u0441\u0442\u0435\u0439. \u0412\u00a0\u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0447\u0430\u0442\u044c \u0441\u00a0\u043f\u043e\u043b\u0443\u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430. \u042d\u0442\u043e \u0442\u0430\u043a\u0430\u044f \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u043d\u0430\u00a0\u0432\u0445\u043e\u0434 \u043e\u0434\u043d\u043e\u0431\u0438\u0442\u043e\u0432\u044b\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b A \u0438 B, \u0430\u00a0\u043d\u0430\u00a0\u0432\u044b\u0445\u043e\u0434 \u0432\u044b\u0434\u0430\u0435\u0442 \u0431\u0438\u0442 \u0441\u0443\u043c\u043c\u044b \u0438 \u0431\u0438\u0442 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.<\/p>\n<p>\u0421\u043e\u0437\u0434\u0430\u0435\u043c \u043d\u043e\u0432\u044b\u0439 Design Source.<\/p>\n<figure class=\"full-width\">\n<div><figcaption>\u041a\u043d\u043e\u043f\u043a\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430<\/figcaption><\/div>\n<\/figure>\n<figure class=\"full-width\">\n<div><figcaption>\u0412\u044b\u0431\u043e\u0440 \u0442\u0438\u043f\u0430 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 (Design Source)<\/figcaption><\/div>\n<\/figure>\n<figure class=\"full-width\">\n<div><figcaption>\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430<\/figcaption><\/div>\n<\/figure>\n<figure class=\"\">\n<div><figcaption>\u0423\u043a\u0430\u0437\u0430\u043d\u0438\u0435 \u044f\u0437\u044b\u043a\u0430, \u0438\u043c\u0435\u043d\u0438 \u0444\u0430\u0439\u043b\u0430 \u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/figcaption><\/div>\n<\/figure>\n<p>\u041a\u043e\u0434 \u043f\u043e\u043b\u0443\u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a:<\/p>\n<pre><code class=\"vhdl\">`timescale 1ns \/ 1ps  module half_adder( \u00a0\u00a0\u00a0\u00a0input in_a, \u00a0\u00a0\u00a0\u00a0input in_b, \u00a0\u00a0\u00a0\u00a0output out_sum, \u00a0\u00a0\u00a0\u00a0output out_carry );  xor(out_sum, in_a, in_b); and(out_carry, in_a, in_b);\u00a0  endmodule<\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u043c\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043b\u0438 \u043c\u043e\u0434\u0443\u043b\u044c half_adder, \u0441\u043a\u0430\u0437\u0430\u043b\u0438, \u0447\u0442\u043e \u0443 \u043d\u0435\u0433\u043e \u0435\u0441\u0442\u044c \u043e\u0434\u043d\u043e\u0431\u0438\u0442\u043e\u0432\u044b\u0435 \u0432\u0445\u043e\u0434\u044b in_a \u0438 in_b \u0438 \u043e\u0434\u043d\u043e\u0431\u0438\u0442\u043e\u0432\u044b\u0435 \u0432\u044b\u0445\u043e\u0434\u044b out_sum \u0438 out_carry.<\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u043f\u0438\u0448\u0435\u043c, \u0447\u0442\u043e \u0432 out_sum \u043f\u043e\u0439\u0434\u0435\u0442 in_a xor in_b, \u0430 \u0432 out_carry \u2013 in_a and in_b. \u0422\u0430\u043a \u043c\u044b \u0434\u043e\u0431\u0438\u0432\u0430\u0435\u043c\u0441\u044f \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u0441\u0442\u0438\u043d\u043d\u043e\u0441\u0442\u0438:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td>\n<p align=\"left\"><strong>A<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>B<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>Carry<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>Sum<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u043c\u043e\u0434\u0443\u043b\u044c \u0433\u043e\u0442\u043e\u0432, \u043d\u0430\u043f\u0438\u0448\u0435\u043c \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u0442\u0435\u0441\u0442 (\u0437\u0434\u0435\u0441\u044c \u044f \u043f\u043e\u043a\u0430\u0436\u0443 \u043f\u0440\u0438\u043c\u0435\u0440 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f, \u0430 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u043c\u043e\u0434\u0443\u043b\u044f\u0445 \u0443\u0436\u0435 \u043e\u043f\u0443\u0449\u0443 \u044d\u0442\u0443 \u0447\u0430\u0441\u0442\u044c).<\/p>\n<p>\u0421\u043e\u0437\u0434\u0430\u0435\u043c Simulation Source half_adder_tb:<\/p>\n<figure class=\"full-width\">\n<div><figcaption>\u0412\u044b\u0431\u043e\u0440 \u0442\u0438\u043f\u0430 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 (Simulation Source)<\/figcaption><\/div>\n<\/figure>\n<figure class=\"full-width\">\n<div><figcaption>\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430, \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u0435\u043c \u044f\u0437\u044b\u043a\u0430, \u0438\u043c\u0435\u043d\u0438 \u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/figcaption><\/div>\n<\/figure>\n<pre><code class=\"vhdl\">`timescale 1ns \/ 1ps  module half_adder_tb;  \u00a0\u00a0\u00a0\u00a0reg in_a, in_b, in_carry; \u00a0\u00a0\u00a0\u00a0wire sum, carry;  \u00a0\u00a0\u00a0\u00a0half_adder adder_l( \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.in_a(in_a), \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.in_b(in_b), \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.out_sum(sum), \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.out_carry(carry) \u00a0\u00a0\u00a0\u00a0);\u00a0\u00a0\u00a0  \u00a0\u00a0\u00a0\u00a0integer i; \u00a0\u00a0\u00a0\u00a0reg [2:0] test_val;  \u00a0\u00a0\u00a0\u00a0initial begin        \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0for (i = 0; i &lt; 4; i = i + 1) begin \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0test_val = i; \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0in_a = test_val[1]; \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0in_b = test_val[2];  \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0#10 $display(\"in_a = %b, in_b = %b, out_carry = %b, out_sum = %b\", in_a, in_b, carry, sum); \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0end\u00a0  \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0#10 $stop;  \u00a0\u00a0\u00a0\u00a0end  endmodule<\/code><\/pre>\n<p>\u0412 \u044d\u0442\u043e\u043c \u0442\u0435\u0441\u0442\u0435 \u043c\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0440\u043e\u0439\u0434\u0435\u043c\u0441\u044f \u043f\u043e \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u0438\u0441\u0442\u0438\u043d\u043d\u043e\u0441\u0442\u0438 \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0447\u0442\u043e \u043d\u0430\u0441\u0447\u0438\u0442\u0430\u0435\u0442 \u043d\u0430\u043c \u043d\u0430\u0448 \u043c\u043e\u0434\u0443\u043b\u044c.<\/p>\n<p>\u0412 \u0431\u043b\u043e\u043a\u0435 initial \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c #, \u0447\u0442\u043e\u0431\u044b \u0434\u0432\u0438\u0433\u0430\u0442\u044c \u0432\u0440\u0435\u043c\u044f \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438 \u043d\u0430 \u043d\u0443\u0436\u043d\u0443\u044e \u043d\u0430\u043c \u0432\u0435\u043b\u0438\u0447\u0438\u043d\u0443, $display \u043d\u0443\u0436\u0435\u043d \u0434\u043b\u044f \u0432\u044b\u0432\u043e\u0434\u0430 \u0442\u0435\u043a\u0441\u0442\u0430 \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c, \u0430 $stop \u2013 \u0434\u043b\u044f \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438.<\/p>\n<p>\u0412 \u043f\u0430\u043d\u0435\u043b\u0438 \u0441 \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u043d\u0430\u0445\u043e\u0434\u0438\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u0442\u0435\u0441\u0442 \u0438 \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u201cSet as top\u201d. \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u044f \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c\u0441\u044f \u0438\u043c\u0435\u043d\u043d\u043e \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430.<\/p>\n<p><strong><u>\u0412\u0410\u0416\u041d\u042b\u0419 \u041c\u041e\u041c\u0415\u041d\u0422! \u042d\u0442\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u043a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437, \u043a\u043e\u0433\u0434\u0430 \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u0441\u043c\u0435\u043d\u0438\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0439 \u0432\u00a0\u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438 \u0444\u0430\u0439\u043b.<\/u><\/strong><\/p>\n<figure class=\"\">\n<div><figcaption>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e Simulation Source \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435<\/figcaption><\/div>\n<\/figure>\n<p>\u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u044e:<\/p>\n<figure class=\"\">\n<div><figcaption>\u0417\u0430\u043f\u0443\u0441\u043a \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438 \u0432 Vivado<\/figcaption><\/div>\n<\/figure>\n<figure class=\"full-width\">\n<div><figcaption>\u0417\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u0430\u044f \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u044f. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u0432\u0435\u0434\u0435\u043d \u0432 Tcl Console<\/figcaption><\/div>\n<\/figure>\n<p>\u0421\u043c\u043e\u0442\u0440\u0438\u043c \u0432 Tc; \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u0432 \u043d\u0438\u0436\u043d\u0435\u0439 \u0447\u0430\u0441\u0442\u0438 \u044d\u043a\u0440\u0430\u043d\u0430. \u0412\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u0442\u0443\u0434\u0430 \u0432\u044b\u0432\u0435\u043b\u0430\u0441\u044c \u0432\u0435\u0440\u043d\u0430\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u0438\u0441\u0442\u0438\u043d\u043d\u043e\u0441\u0442\u0438. \u041e\u0442\u043b\u0438\u0447\u043d\u043e, \u0432\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043a\u0430\u043a \u043d\u0430\u0434\u043e. \u0422\u0435\u043f\u0435\u0440\u044c \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u044e \u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043f\u043e\u043b\u043d\u043e\u043c\u0443 \u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0443.<\/p>\n<figure class=\"\">\n<div><figcaption>\u0417\u0430\u043a\u0440\u044b\u0442\u0438\u0435 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438<\/figcaption><\/div>\n<\/figure>\n<p>\u0421\u043e\u0437\u0434\u0430\u0435\u043c \u043d\u043e\u0432\u044b\u0439 Design Source \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u0435\u043c \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u043d\u0430 SystemVerilog \u0438 \u0441 \u0438\u043c\u0435\u043d\u0435\u043c full_adder. \u041f\u0438\u0448\u0435\u043c \u0442\u0443\u0434\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n<pre><code class=\"vhdl\">`timescale 1ns \/ 1ps  module full_adder( \u00a0\u00a0\u00a0\u00a0input in_a, \u00a0\u00a0\u00a0\u00a0input in_b, \u00a0\u00a0\u00a0\u00a0input in_carry, \u00a0\u00a0\u00a0\u00a0output out_sum, \u00a0\u00a0\u00a0\u00a0output out_carry );  wire op_sum_result, carry_0, carry_1;  half_adder op_sum( \u00a0\u00a0\u00a0\u00a0.in_a(in_a), \u00a0\u00a0\u00a0\u00a0.in_b(in_b), \u00a0\u00a0\u00a0\u00a0.out_sum(op_sum_result), \u00a0\u00a0\u00a0\u00a0.out_carry(carry_0) );  half_adder carry_sum( \u00a0\u00a0\u00a0\u00a0.in_a(op_sum_result), \u00a0\u00a0\u00a0\u00a0.in_b(in_carry), \u00a0\u00a0\u00a0\u00a0.out_sum(out_sum), \u00a0\u00a0\u00a0\u00a0.out_carry(carry_1) );  or(out_carry, carry_0, carry_1);  endmodule<\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u043a\u043e\u0434\u0430 \u0443\u0436\u0435 \u0447\u0443\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435. \u041c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0432 \u044d\u0442\u043e\u043c \u043c\u043e\u0434\u0443\u043b\u0435 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u044b \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0433\u043e \u0432\u044b\u0448\u0435 \u043f\u043e\u043b\u0443\u0441\u0443\u043c\u043c\u0430\u0442\u043e\u0440\u0430. \u0422\u0430\u043a\u0436\u0435 \u043f\u043e\u044f\u0432\u0438\u043b\u0441\u044f \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u0442\u0438\u043f wire. Wire \u2013 \u044d\u0442\u043e \u043f\u0440\u043e\u0432\u043e\u0434. \u041d\u0430<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\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-437778","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/437778","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=437778"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/437778\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=437778"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=437778"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=437778"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}