{"id":472226,"date":"2025-08-26T15:01:43","date_gmt":"2025-08-26T15:01:43","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=472226"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=472226","title":{"rendered":"<span>\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 MicroBlaze<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/fb4\/07d\/a0e\/fb407da0ef96533fc1690eaf2019d144.png\" width=\"744\" height=\"297\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/fb4\/07d\/a0e\/fb407da0ef96533fc1690eaf2019d144.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/fb4\/07d\/a0e\/fb407da0ef96533fc1690eaf2019d144.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u0410 \u0447\u0442\u043e \u0432 \u043d\u0435\u043c \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u2026? \u0410 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0443\u0434\u0435\u043c \u043f\u0440\u0438\u0440\u043e\u0441\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u0442\u0435\u0445 \u0438\u043b\u0438 \u0438\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a. \u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u0431\u0443\u0434\u0443\u0442 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0438 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430. <\/p>\n<p><strong>\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/strong><\/p>\n<p>\u0418 \u0442\u0430\u043a, MicroBlaze \u2014 soft-\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u043e\u0435 \u044f\u0434\u0440\u043e, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u043e\u0435 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0435\u0439 Xilinx \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432 FPGA (<a href=\"https:\/\/habr.com\/ru\/companies\/quanttelecom\/articles\/768308\/\" rel=\"noopener noreferrer nofollow\">\u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u0442\u0443\u0442<\/a>). \u041f\u0440\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 SoC, MicroBlaze \u043c\u043e\u0436\u0435\u0442 \u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c. \u0418 \u043f\u0435\u0440\u0432\u043e\u0435 \u0441 \u0447\u0435\u043c \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043f\u0440\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 IP-\u044f\u0434\u0440\u0430 \u044d\u0442\u043e \u00ab\u0427\u0442\u043e \u0436\u0435 \u0442\u0430\u043c \u043d\u0430\u0442\u044b\u043a\u0430\u0442\u044c, \u0447\u0442\u043e\u0431\u044b \u0431\u044b\u043b\u043e \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0438 \u043d\u0435 \u0431\u0435\u0441\u0441\u043c\u044b\u0441\u043b\u0435\u043d\u043d\u043e?\u00bb. \u041a\u043e\u043d\u0435\u0447\u043d\u043e, \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0441\u0442\u044b, \u0445\u043e\u0440\u043e\u0448\u043e \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u044e\u0449\u0438\u0435\u0441\u044f \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u044f\u0434\u0440\u0435, \u043f\u0440\u0435\u043a\u0440\u0430\u0441\u043d\u043e \u0437\u043d\u0430\u044e\u0442 \u0447\u0442\u043e \u0438\u043c \u043d\u0443\u0436\u043d\u043e \u0438 \u0442\u0430\u043a\u043e\u0433\u043e \u0432\u043e\u043f\u0440\u043e\u0441\u0430 \u0443 \u043d\u0438\u0445 \u043d\u0435 \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u0435\u0442. \u041d\u043e \u0432\u0441\u0435 \u0436\u0435 \u044f \u0441\u043e\u0431\u0438\u0440\u0430\u044e\u0441\u044c \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u044c \u0441\u0442\u0435\u043f\u0435\u043d\u044c \u0432\u043b\u0438\u044f\u043d\u0438\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u043d\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430. <\/p>\n<p>\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u043d\u0435 \u0431\u0443\u0434\u0443 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043a\u0430\u043a \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 \u0441 MicroBlaze, \u0438 \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 SDK(\u044f \u0431\u0443\u0434\u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f Vivado 2019.1, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0435\u0449\u0435 \u043d\u0435\u0442 Vitis).<\/p>\n<p><strong>\u041f\u043b\u0430\u043d \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f<\/strong><\/p>\n<p>\u041d\u0430 \u0432\u0442\u043e\u0440\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 MicroBlaze \u0438\u043c\u0435\u044e\u0442\u0441\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u0430\u0440\u0438\u0444\u043c\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0447\u0438\u0441\u0435\u043b \u0441 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0435\u0439 \u0442\u043e\u0447\u043a\u043e\u0439. <\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/962\/7ca\/758\/9627ca758046ef0f68f2154068dc4380.png\" alt=\"\u0421\u043a\u0440\u0438\u043d \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \" title=\"\u0421\u043a\u0440\u0438\u043d \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \" width=\"1050\" height=\"995\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/962\/7ca\/758\/9627ca758046ef0f68f2154068dc4380.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/962\/7ca\/758\/9627ca758046ef0f68f2154068dc4380.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0421\u043a\u0440\u0438\u043d \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 <\/figcaption><\/div>\n<\/figure>\n<p>\u0412 \u043f\u0435\u0440\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u0443\u0434\u0443 \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 \u0441 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u043c\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438. \u0412\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u044f \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0443 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0443 \u0438 \u0441\u0434\u0435\u043b\u0430\u044e \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435. <\/p>\n<p>\u0412 SDK \u044f \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u043c\u0435\u044e\u0442 \u043f\u0435\u0440\u0435\u043a\u043e\u0441 \u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u0443\u044e \u0441\u0442\u043e\u0440\u043e\u043d\u0443 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439, \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u044d\u0442\u043e \u0446\u0438\u043a\u043b \u043f\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0443 \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043e\u0434\u043d\u043e \u0438\u0437 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 &#8212; \u0441\u0443\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u0434\u0435\u043b\u0435\u043d\u0438\u0435, \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435, \u0441\u0434\u0432\u0438\u0433\u043e\u0432\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438, \u0442\u0430\u043a\u0436\u0435 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0435\u0439 \u0442\u043e\u0447\u043a\u043e\u0439. <\/p>\n<p>\u041e\u0446\u0435\u043d\u043a\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u0437\u0430 \u0441\u0447\u0435\u0442 \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 \u0442\u0430\u043a\u0442\u043e\u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u043a\u043b\u043e\u043a\u0430, \u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043d\u0430 8. \u0421\u0447\u0435\u0442\u0447\u0438\u043a \u0431\u0443\u0434\u0435\u0442 \u0441\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u043f\u0435\u0440\u0435\u0434 \u0442\u0435\u0441\u0442\u043e\u043c \u0438 \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0435\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044e.<\/p>\n<p><u>\u041a\u043e\u0434 \u0434\u043b\u044f SDK \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432 \u043a\u043e\u043d\u0446\u0435 \u0441\u0442\u0430\u0442\u044c\u0438.<\/u><\/p>\n<p>\u0412 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 Vivado \u044f \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b \u0432\u043e\u0442 \u0442\u0430\u043a\u043e\u0439 BlockDesign:<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/21c\/447\/a5a\/21c447a5a625ae097e4bf4236662c950.png\" width=\"1646\" height=\"925\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/21c\/447\/a5a\/21c447a5a625ae097e4bf4236662c950.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/21c\/447\/a5a\/21c447a5a625ae097e4bf4236662c950.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u0414\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 MicroBlaze \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u043b\u043e\u0441\u044c 12 \u0442\u0435\u0441\u0442\u043e\u0432: <\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">INIT_<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f  \u0434\u0432\u0443\u0445 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0445 \u0446\u0435\u043b\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0445 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 1024 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430, \u0442\u0438\u043f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445  int32_t. \u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0434\u043b\u044f  \u043f\u0435\u0440\u0432\u043e\u0433\u043e -255:255, \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0434\u043b\u044f \u0432\u0442\u043e\u0440\u043e\u0433\u043e 0:63. \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432\u044b\u0431\u0438\u0440\u0430\u043b\u0438\u0441\u044c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0435  \u0434\u043b\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0445 \u0442\u0435\u0441\u0442\u043e\u0432. \u0412 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0430\u0441\u044c \u0441\u0443\u043c\u043c\u0430 \u0438  \u0431\u0438\u0442\u043e\u0432\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 XOR  \u0438 AND. <\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">INIT_F<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f  \u0434\u0432\u0443\u0445 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 1024 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430, \u0442\u0438\u043f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 &#8212; FLOAT. \u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u043e\u0431\u043e\u0438\u0445  \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u043f\u043e\u0440\u044f\u0434\u043a\u0430\u00a0 -16.0:16.0. \u0412  \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438\u0441\u044c \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f. <\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">INIT_DIV<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f  \u0434\u0432\u0443\u0445 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0445 \u0446\u0435\u043b\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0445 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 1024 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430, \u0442\u0438\u043f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445  int32_t. \u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0434\u043b\u044f  \u043f\u0435\u0440\u0432\u043e\u0433\u043e 2_000_000_000 \u043c\u0438\u043d\u0443\u0441 \u0438\u043d\u0434\u0435\u043a\u0441 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u043c\u0430\u0441\u0441\u0438\u0432\u0430; \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0434\u043b\u044f \u0432\u0442\u043e\u0440\u043e\u0433\u043e 2:257.  \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432\u044b\u0431\u0438\u0440\u0430\u043b\u0438\u0441\u044c \u0438\u0437 \u0441\u043e\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0433\u043e\u0442\u043e\u0432\u044b\u0445 \u0434\u043b\u044f \u0434\u0435\u043b\u0435\u043d\u0438\u044f. \u041f\u0435\u0440\u0432\u044b\u0439  \u043c\u0430\u0441\u0441\u0438\u0432 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u0447\u0438\u0441\u043b\u0430, \u0432\u0442\u043e\u0440\u043e\u0439 &#8212; \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0435. \u0412 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438  \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0430\u0441\u044c \u0441\u0443\u043c\u043c\u0430 \u0438 \u0432\u044b\u0447\u0438\u0442\u0430\u043d\u0438\u0435.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">MUL32<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0435\u0441\u0442,  \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0439 \u0441 \u0446\u0435\u043b\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c, \u0438\u0442\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442 \u043f\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0443 \u0438  \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442 \u0432 \u0430\u043a\u043a\u0443\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u043f\u0435\u0440\u0435\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0432 \u0432\u0438\u0434\u0435: mul_acc <em>=  op1[j]<\/em>op2[j]; \u0432 \u043a\u043e\u043d\u0446\u0435 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043f\u043e \u043e\u0434\u043d\u043e\u043c\u0443 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0443 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c  \u043c\u0430\u0441\u0441\u0438\u0432\u0435. \u00a0<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">MUL32F<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0435\u0441\u0442  \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u0435\u043d \u0442\u0435\u0441\u0442\u0443 MUL32, \u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 \u043c\u0430\u0441\u0441\u0438\u0432\u0430\u043c\u0438 \u0442\u0438\u043f\u0430 Float.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">ADD__<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0435\u0441\u0442, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0439  \u0441 \u0446\u0435\u043b\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c, \u0438\u0442\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442 \u043f\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0443 \u0438 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442 \u0432  \u0430\u043a\u043a\u0443\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0432 \u0432\u0438\u0434\u0435: add_acc += op1[j]+op2[j]; \u0432  \u043a\u043e\u043d\u0446\u0435 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043f\u043e \u043e\u0434\u043d\u043e\u043c\u0443 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0443 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u0435.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">ADD_F<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0435\u0441\u0442  \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u0435\u043d ADD, \u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 \u043c\u0430\u0441\u0441\u0438\u0432\u0430\u043c\u0438 \u0442\u0438\u043f\u0430 Float.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">INT_DIV<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0435\u0441\u0442,  \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0439 \u0441\u043e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u043c \u0446\u0435\u043b\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c \u0432 INIT_DIV,  \u0438\u0442\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442 \u043f\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0443 \u0438 \u0432 \u0430\u043a\u043a\u0443\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0434\u0435\u043b\u0435\u043d\u0438\u044f  \u0432 \u0432\u0438\u0434\u0435: div_acc += op1_div[j]\/op2_div[j]; \u0432 \u043a\u043e\u043d\u0446\u0435 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442\u0441\u044f  \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430, \u0432\u0442\u043e\u0440\u043e\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u044b\u043c 2-257.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">INT_DIV_F<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0418\u0434\u0435\u043d\u0442\u0438\u0447\u0435\u043d  \u0442\u0435\u0441\u0442\u0443 INT_DIV, \u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c Float. \u0410 \u0442\u0430\u043a\u0436\u0435 \u043c\u0430\u0441\u0441\u0438\u0432 \u0432\u0437\u044f\u0442 \u043f\u043e\u0441\u043b\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 INIT_F. \u00a0\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u043d\u043e\u043b\u044c \u043d\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043b\u0430\u0441\u044c.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">BARREL_SHIFT<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0435\u0441\u0442 \u0440\u0430\u0437 \u0437\u0430  \u0440\u0430\u0437\u043e\u043c \u0441 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0446\u0435\u043b\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u043c\u0438. \u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u0440\u044f\u0434 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u0441\u0434\u0432\u0438\u0433\u0430  \u0438 \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442 \u0438\u0445 \u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u0443\u044e \u0441\u0443\u043c\u043c\u0443, \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0438\u0440\u0443\u044e\u0449\u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u0432  \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430, \u0447\u0442\u043e\u0431\u044b \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c.  (\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 volatile \u0442\u0430\u043a \u0436\u0435 \u0431\u044b\u043b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td colspan=\"2\" data-colwidth=\"107,0\" width=\"107\">\n<p align=\"center\">\u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0442\u0435\u0441\u0442\u044b &#8212; \u044d\u0442\u043e \u0442\u0435\u043c\u043d\u0430\u044f \u043e\u0431\u043b\u0430\u0441\u0442\u044c \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u0440\u0430. \u0422\u0435\u0441\u0442\u044b  \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u044b \u043d\u0430 \u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0438 \u0441 \u043d\u0435\u0439\u0440\u043e\u043d\u043a\u043e\u0439.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">D_CACHE<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0432  \u0441\u0435\u0431\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u043f\u0440\u043e\u0445\u043e\u0434\u043e\u0432 \u043f\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0443. <\/p>\n<p align=\"left\">1 \u2013  \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0447\u0442\u0435\u043d\u0438\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 (\u0441\u0443\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0432 \u0430\u043a\u043a\u0443\u043c\u0443\u043b\u044f\u0442\u043e\u0440).<\/p>\n<p align=\"left\">2 \u2013  \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c \u0432 \u043f\u0430\u043c\u044f\u0442\u044c (\u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0435\u0440\u0435\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u043c\u0430\u0441\u0441\u0438\u0432 \u0438  \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0438\u043d\u0434\u0435\u043a\u0441 \u043c\u0430\u0441\u0441\u0438\u0432\u0430)<\/p>\n<p align=\"left\">3 \u2013  \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0435 \u0447\u0442\u0435\u043d\u0438\u0435 (\u0447\u0438\u0442\u0430\u044e\u0442\u0441\u044f \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0438  \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0432 \u0430\u043a\u043a\u0443\u043c\u0443\u043b\u044f\u0442\u043e\u0440)<\/p>\n<p align=\"left\">4 \u2013  \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c (\u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432 \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442  \u043c\u0430\u0441\u0441\u0438\u0432\u0430)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">I_CACHE<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u044b  256 \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f &#8212; \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435 \u0438 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0435. \u0421\u0430\u043c\u0438  \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043d\u0435\u043e\u0434\u043d\u043e\u043a\u0440\u0430\u0442\u043d\u043e \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0432\u044b\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0432 \u0442\u0435\u043b\u0435 \u0446\u0438\u043a\u043b\u0430.<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0412 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0431\u044b\u043b \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d 21 \u0442\u0435\u0441\u0442 \u0441 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438 MicroBlaze, \u043f\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0442\u0435\u0441\u0442\u0430\u043c \u043f\u0440\u043e\u0439\u0434\u0443\u0441\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e, \u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0442\u0440\u043e\u043d\u0443 \u0432\u0441\u043a\u043e\u043b\u044c\u0437\u044c. <\/p>\n<p>\u041f\u043e\u0433\u0440\u0435\u0448\u043d\u043e\u0441\u0442\u044c \u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u043e\u0432 \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 +-1. <\/p>\n<p>\u0422\u0435\u0441\u0442\u044b \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u043b\u0438\u0441\u044c \u043d\u0430 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u043e\u0439 \u043f\u043b\u0430\u0442\u0435<a href=\"https:\/\/digilent.com\/reference\/programmable-logic\/nexys-a7\/start\" rel=\"noopener noreferrer nofollow\"> Nexys A7-100T<\/a><\/p>\n<p><strong>\u041f\u0435\u0440\u0432\u0430\u044f \u043f\u043e\u0440\u0446\u0438\u044f \u0442\u0435\u0441\u0442\u043e\u0432. \u041e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b.<\/strong><\/p>\n<p>\u0412 \u044d\u0442\u0438\u0445 \u0442\u0435\u0441\u0442\u0430\u0445 \u043a\u044d\u0448\u0438 \u0431\u044b\u043b\u0438 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u044b, \u0432 \u043a\u043e\u0434\u0435 \u0431\u044b\u043b\u0430 \u0432\u044b\u0437\u0432\u0430\u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f disable_caches(); \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u043a\u044d\u0448 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439 \u0438 \u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0441\u0435\u0440\u044c\u0435\u0437\u043d\u043e \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u044c\u0441\u044f \u043a \u0442\u0435\u0441\u0442\u0430\u043c \u043a\u044d\u0448\u0430 \u043d\u0435 \u043d\u0443\u0436\u043d\u043e.\u00a0 <\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td>\n<p align=\"left\">\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0439  \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442  \u0442\u0435\u0441\u0442\u043e\u0432. \u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0441 \u0431\u0430\u0437\u043e\u0432\u044b\u043c. \u0412\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f.<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u0435\u043c\u044b\u0435  \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u041f\u041b\u0418\u0421<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">\u0411\u0435\u0437  \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432(\u0431\u0430\u0437\u043e\u0432\u044b\u0439).<\/p>\n<\/td>\n<td>\n<p align=\"left\">100%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 868,<\/p>\n<p align=\"left\">Slice Registers 582, <\/p>\n<p align=\"left\">F7 Muxes 108, <\/p>\n<p align=\"left\">Slice 304, <\/p>\n<p align=\"left\">LUT as Logic 765, <\/p>\n<p align=\"left\">LUT as Memory 103<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Barrel Shifter<\/p>\n<\/td>\n<td>\n<p align=\"left\">INIT_: -10% <\/p>\n<p align=\"left\">INIT_F: -45% <\/p>\n<p align=\"left\">INIT_DIV: -9% <\/p>\n<p align=\"left\">MUL32: -3% <\/p>\n<p align=\"left\">MUL32F: -47% <\/p>\n<p align=\"left\">\n<p align=\"left\">ADD__: -13% <\/p>\n<p align=\"left\">ADD_F: -50% <\/p>\n<p align=\"left\">INT_DIV: -0.5% <\/p>\n<p align=\"left\">INT_DIV_F: -40% <\/p>\n<p align=\"left\">BARREL_SHIFT: -82%<\/p>\n<p align=\"left\">D_CACHE: -2% <\/p>\n<p align=\"left\">I_CACHE: -45%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 1118, +28%<\/p>\n<p align=\"left\">Slice Registers 718, +23%<\/p>\n<p align=\"left\">F7 Muxes 108, <\/p>\n<p align=\"left\">Slice 373, +23%<\/p>\n<p align=\"left\">LUT as Logic 1015, +32%<\/p>\n<p align=\"left\">LUT as Memory 103<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Integer Divider<\/p>\n<\/td>\n<td>\n<p align=\"left\">INIT_: -0% <\/p>\n<p align=\"left\">INIT_F: -0% <\/p>\n<p align=\"left\">INIT_DIV: -0% <\/p>\n<p align=\"left\">MUL32: -0% <\/p>\n<p align=\"left\">MUL32F: -0% <\/p>\n<p align=\"left\">ADD__: -0% <\/p>\n<p align=\"left\">ADD_F: -0% <\/p>\n<p align=\"left\">INT_DIV: -88% <\/p>\n<p align=\"left\">INT_DIV_F: -0% <\/p>\n<p align=\"left\">BARREL_SHIFT: -0%<\/p>\n<p align=\"left\">D_CACHE: -0% <\/p>\n<p align=\"left\">I_CACHE: -0%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 1031, \u00a0+18%<\/p>\n<p align=\"left\">Slice Registers 1006, \u00a0+72%<\/p>\n<p align=\"left\">F7 Muxes 108, <\/p>\n<p align=\"left\">Slice 400, \u00a0+ 31%<\/p>\n<p align=\"left\">LUT as Logic 927, + 21% <\/p>\n<p align=\"left\">LUT as Memory 103<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Floating Point Unit BASIC<\/p>\n<\/td>\n<td>\n<p align=\"left\">INIT_: -0% <\/p>\n<p align=\"left\">INIT_F: -78%<\/p>\n<p align=\"left\">INIT_DIV: -0% <\/p>\n<p align=\"left\">MUL32: -0% <\/p>\n<p align=\"left\">MUL32F: -98% <\/p>\n<p align=\"left\">ADD__: -0% <\/p>\n<p align=\"left\">ADD_F: -96% <\/p>\n<p align=\"left\">INT_DIV: -0% <\/p>\n<p align=\"left\">INT_DIV_F: -95% <\/p>\n<p align=\"left\">BARREL_SHIFT: -0% <\/p>\n<p align=\"left\">D_CACHE: -0% <\/p>\n<p align=\"left\">I_CACHE: -65%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 1541, +77%<\/p>\n<p align=\"left\">Slice Registers 1320, \u00a0+126%<\/p>\n<p align=\"left\">F7 Muxes 114, +6 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043e\u0432<\/p>\n<p align=\"left\">Slice 558, +83%<\/p>\n<p align=\"left\">LUT as Logic 1427, +86%<\/p>\n<p align=\"left\">LUT as Memory 114, \u00a0+ 11 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043e\u0432.<\/p>\n<p align=\"left\">DSPs 2 (\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435  \u0440\u0435\u0441\u0443\u0440\u0441\u044b)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Integer Miltiplier MUL32<\/p>\n<\/td>\n<td>\n<p align=\"left\">INIT_: -0% <\/p>\n<p align=\"left\">INIT_F: -17%<\/p>\n<p align=\"left\">INIT_DIV: -0% <\/p>\n<p align=\"left\">MUL32: -75% <\/p>\n<p align=\"left\">MUL32F: -23% <\/p>\n<p align=\"left\">ADD__: -0% <\/p>\n<p align=\"left\">ADD_F: -7% <\/p>\n<p align=\"left\">INT_DIV: -0% <\/p>\n<p align=\"left\">INT_DIV_F: -6% <\/p>\n<p align=\"left\">BARREL_SHIFT: -0%<\/p>\n<p align=\"left\">D_CACHE: -56% <\/p>\n<p align=\"left\">I_CACHE: -25%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 984, +13%<\/p>\n<p align=\"left\">Slice Registers 909, +56%<\/p>\n<p align=\"left\">F7 Muxes 108, <\/p>\n<p align=\"left\">Slice 386, +27%<\/p>\n<p align=\"left\">LUT as Logic 881, +15% <\/p>\n<p align=\"left\">LUT as Memory 103, <\/p>\n<p align=\"left\">DSPs 3 (\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439  \u0440\u0435\u0441\u0443\u0440\u0441)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Integer Divider<\/p>\n<\/td>\n<td>\n<p align=\"left\">INIT_: -0% <\/p>\n<p align=\"left\">INIT_F: -0% <\/p>\n<p align=\"left\">INIT_DIV: -0% <\/p>\n<p align=\"left\">MUL32: &#8212; 0% <\/p>\n<p align=\"left\">MUL32F: -0% <\/p>\n<p align=\"left\">ADD__: -0% <\/p>\n<p align=\"left\">ADD_F: -0% <\/p>\n<p align=\"left\">INT_DIV: -88% <\/p>\n<p align=\"left\">INT_DIV_F: -0% <\/p>\n<p align=\"left\">BARREL_SHIFT: -0%<\/p>\n<p align=\"left\">D_CACHE: -0% <\/p>\n<p align=\"left\">I_CACHE: -0%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 1031, +18%<\/p>\n<p align=\"left\">Slice Registers 1006, +72%<\/p>\n<p align=\"left\">F7 Muxes 108, <\/p>\n<p align=\"left\">Slice 400, \u00a0+ 31%<\/p>\n<p align=\"left\">LUT as Logic 927, +21% <\/p>\n<p align=\"left\">LUT as Memory 104 (+1 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432)<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0418\u0437 \u043d\u0430\u0431\u043e\u0440\u0430 \u044d\u0442\u0438\u0445 \u0442\u0435\u0441\u0442\u043e\u0432 \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 Barrel Shifter \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0441\u0435\u0431\u044f \u043b\u0443\u0447\u0448\u0435 \u0432\u0441\u0435\u0445, \u043e\u043d \u0443\u0447\u0430\u0441\u0442\u0432\u0443\u0435\u0442 \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u0442\u0435\u0441\u0442\u043e\u0432 \u0438 \u0434\u0430\u0435\u0442 \u043f\u0440\u0438\u0440\u043e\u0441\u0442 \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u041f\u041b\u0418\u0421 \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430\u044e\u0442 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0435 \u0441\u0438\u043b\u044c\u043d\u043e. \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u044d\u0442\u043e \u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0438 \u0441 \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435\u043c DSP. <\/p>\n<p>\u0412 \u0442\u043e\u0436\u0435 \u0432\u0440\u0435\u043c\u044f, \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0435 \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u0435\u043b\u0438 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f, \u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0438 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0435\u0439 \u0442\u043e\u0447\u043a\u0438, \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043b\u0443\u0447\u0448\u0435 \u0432\u043b\u0438\u044f\u044e\u0442 \u043d\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0442\u0435\u0441\u0442\u0430, \u043d\u043e \u0434\u0435\u043b\u0430\u044e\u0442 \u044d\u0442\u043e \u0442\u043e\u0447\u0435\u0447\u043d\u043e. <\/p>\n<p><strong>\u0412\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u0440\u0446\u0438\u044f \u0442\u0435\u0441\u0442\u043e\u0432. \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0431\u0443\u0434\u0443\u0442 \u043f\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u0432 \u0441\u043f\u0438\u0441\u043e\u043a.<\/strong><\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td>\n<p align=\"left\">\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0435  \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442  \u0442\u0435\u0441\u0442\u043e\u0432. \u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0441 \u0431\u0430\u0437\u043e\u0432\u044b\u043c. \u0412\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f.<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u0435\u043c\u044b\u0435  \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u041f\u041b\u0418\u0421<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">\u0411\u0435\u0437  \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432(\u0431\u0430\u0437\u043e\u0432\u044b\u0439).<\/p>\n<\/td>\n<td>\n<p align=\"left\">100%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 868,<\/p>\n<p align=\"left\">Slice Registers 582, <\/p>\n<p align=\"left\">F7 Muxes 108, <\/p>\n<p align=\"left\">Slice 304, <\/p>\n<p align=\"left\">LUT as Logic 765, <\/p>\n<p align=\"left\">LUT as Memory 103<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Barrel Shifter<\/p>\n<p align=\"left\">Integer Divider<\/p>\n<\/td>\n<td>\n<p align=\"left\">INIT_: -10% <\/p>\n<p align=\"left\">INIT_F: -45% <\/p>\n<p align=\"left\">INIT_DIV: -9% <\/p>\n<p align=\"left\">MUL32: -3% <\/p>\n<p align=\"left\">MUL32F: -48% <\/p>\n<p align=\"left\">ADD__: -13% <\/p>\n<p align=\"left\">ADD_F: -50% <\/p>\n<p align=\"left\">INT_DIV: -89% <\/p>\n<p align=\"left\">INT_DIV_F: -39% <\/p>\n<p align=\"left\">BARREL_SHIFT: -80% <\/p>\n<p align=\"left\">D_CACHE: -0% <\/p>\n<p align=\"left\">I_CACHE: -45%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 1234, +42%<\/p>\n<p align=\"left\">Slice Registers 835, +43%<\/p>\n<p align=\"left\">F7 Muxes 108, <\/p>\n<p align=\"left\">Slice 407, +34%<\/p>\n<p align=\"left\">LUT as Logic 1130, +47% <\/p>\n<p align=\"left\">LUT as Memory 104 (+1 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Barrel Shifter<\/p>\n<p align=\"left\">Integer Divider<\/p>\n<p align=\"left\">Floating Point Unit BASIC<\/p>\n<\/td>\n<td>\n<p align=\"left\">INIT_: -10% <\/p>\n<p align=\"left\">INIT_F: -91% <\/p>\n<p align=\"left\">INIT_DIV: -10% <\/p>\n<p align=\"left\">MUL32: -2.7% <\/p>\n<p align=\"left\">MUL32F: -97% <\/p>\n<p align=\"left\">ADD__: -13% <\/p>\n<p align=\"left\">ADD_F: -96% <\/p>\n<p align=\"left\">INT_DIV: -88% <\/p>\n<p align=\"left\">INT_DIV_F: -94% <\/p>\n<p align=\"left\">BARREL_SHIFT: -81% <\/p>\n<p align=\"left\">D_CACHE: -0% <\/p>\n<p align=\"left\">I_CACHE: -85%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 1784, <\/p>\n<p align=\"left\">Slice Registers 1265, <\/p>\n<p align=\"left\">F7 Muxes 113, <\/p>\n<p align=\"left\">Slice 556, <\/p>\n<p align=\"left\">LUT as Logic 1670, <\/p>\n<p align=\"left\">LUT as Memory 114, <\/p>\n<p align=\"left\">DSPs 2 (\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439  \u0440\u0435\u0441\u0443\u0440\u0441)<\/p>\n<p align=\"left\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Barrel Shifter<\/p>\n<p align=\"left\">Integer Divider<\/p>\n<p align=\"left\">Floating Point Unit BASIC<\/p>\n<p align=\"left\">Integer Miltiplier MUL32<\/p>\n<\/td>\n<td>\n<p align=\"left\">INIT_: -10% <\/p>\n<p align=\"left\">INIT_F: -91% <\/p>\n<p align=\"left\">INIT_DIV: -10% <\/p>\n<p align=\"left\">MUL32: -78% <\/p>\n<p align=\"left\">MUL32F: -97% <\/p>\n<p align=\"left\">ADD__: -12% <\/p>\n<p align=\"left\">ADD_F: -96% <\/p>\n<p align=\"left\">INT_DIV: -88% <\/p>\n<p align=\"left\">INT_DIV_F: -94% <\/p>\n<p align=\"left\">BARREL_SHIFT: -80% <\/p>\n<p align=\"left\">D_CACHE: -58% <\/p>\n<p align=\"left\">I_CACHE: -85%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 1798, +107%<\/p>\n<p align=\"left\">Slice Registers 1285, +120%<\/p>\n<p align=\"left\">F7 Muxes 113, (+5 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043e\u0432)<\/p>\n<p align=\"left\">Slice 586, +92%<\/p>\n<p align=\"left\">LUT as Logic 1683, +120% <\/p>\n<p align=\"left\">LUT as Memory 115, (+12 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043e\u0432)<\/p>\n<p align=\"left\">DSPs 5 (\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439  \u0440\u0435\u0441\u0443\u0440\u0441)<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0442\u0435\u0441\u0442\u043e\u0432 \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u043a\u0430\u0436\u0434\u044b\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0443\u0441\u043a\u043e\u0440\u044f\u0435\u0442 \u0441\u0432\u043e\u044e \u043e\u0431\u043b\u0430\u0441\u0442\u044c \u0442\u0435\u0441\u0442\u043e\u0432, \u0438 \u044d\u0442\u043e \u043e\u0447\u0435\u0432\u0438\u0434\u043d\u043e. <\/p>\n<p>\u0421\u043c\u044b\u0441\u043b \u0432\u0442\u043e\u0440\u043e\u0439 \u043f\u043e\u0440\u0446\u0438\u0438 \u0442\u0435\u0441\u0442\u043e\u0432 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0435\u0441\u0442\u044c \u043b\u0438 \u043f\u0440\u0438\u0440\u043e\u0441\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u0445 \u0432 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0438 \u0441 \u043e\u0434\u0438\u043d\u0430\u0440\u043d\u044b\u043c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u043c. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e Barrel Shifter \u0441\u0442\u0430\u0440\u0430\u0435\u0442\u0441\u044f \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u044c \u0432\u0441\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0435\u043c\u0443 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f (\u044d\u0442\u043e \u043f\u0435\u0440\u0432\u044b\u0439 \u0442\u0435\u0441\u0442 \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u043f\u043e\u0440\u0446\u0438\u0438 \u0442\u0435\u0441\u0442\u043e\u0432), \u043d\u043e \u043f\u0440\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043a \u043d\u0435\u043c\u0443 \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044e Integer Divider \u0438 Floating Point Unit BASIC, \u043f\u0440\u0438\u0440\u043e\u0441\u0442 \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0442\u0435\u0445 \u043c\u0435\u0441\u0442\u0430\u0445, \u0433\u0434\u0435 \u043e\u043d \u0431\u044b\u043b \u0438 \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u043f\u043e\u0440\u0446\u0438\u0438 \u0442\u0435\u0441\u0442\u043e\u0432. \u0418 \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u0440\u043e\u0441\u0442\u0430 \u043d\u0435\u0442, \u0442\u043e \u0435\u0441\u0442\u044c \u043d\u0435 \u0432\u0438\u0434\u043d\u0430 \u0441\u043e\u0432\u0435\u0441\u0442\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430 \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u0435\u043b\u0435\u0439.\u00a0 \u041a\u043e\u043d\u0435\u0447\u043d\u043e, \u0438\u043c\u0435\u044e\u0442\u0441\u044f \u043d\u0435\u043a\u0438\u0435 \u043a\u043e\u043b\u0435\u0431\u0430\u043d\u0438\u044f, \u043d\u043e \u0432 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u0445 \u043f\u043e\u0433\u0440\u0435\u0448\u043d\u043e\u0441\u0442\u0438.<\/p>\n<p>\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 Floating Point Unit BASIC \u043d\u0430 Floating Point Unit EXTENDED \u043f\u0440\u0438\u0440\u043e\u0441\u0442\u0430 \u043d\u0435 \u0434\u0430\u0435\u0442, \u0442\u0430\u043a \u0436\u0435 \u0438 \u0434\u043b\u044f \u0437\u0430\u043c\u0435\u043d\u044b Integer Miltiplier MUL32 \u043d\u0430 Integer Miltiplier MUL64. \u0412\u0438\u0434\u0438\u043c\u043e \u0438\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0432\u0441\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0431\u044b\u043b\u0438 \u043d\u0435 \u0431\u043e\u043b\u044c\u0448\u0435 32 \u0431\u0438\u0442.<\/p>\n<p><strong>\u0422\u0440\u0435\u0442\u044c\u044f \u043f\u043e\u0440\u0446\u0438\u044f \u0442\u0435\u0441\u0442\u043e\u0432. \u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a\u044d\u0448\u0430.<\/strong><\/p>\n<p>\u041f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043a\u044d\u0448\u0430 \u0443 \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437\u0430 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0434\u0432\u0430 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 &#8212; \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u043a\u044d\u0448\u0443 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439 \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u0443 \u043a \u043a\u044d\u0448\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 (M_AXI_DC \u0438 M_AXI_IC). \u0415\u0441\u043b\u0438 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043c\u0438 Vivado, \u0442\u043e \u043e\u043d\u0438 \u0446\u0435\u043f\u043b\u044f\u044e\u0442\u0441\u044f \u043a \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0435\u043c\u0443 AXI Interconnect, \u043a \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0430 BRAM \u043f\u0430\u043c\u044f\u0442\u044c (\u0432 \u0431\u043b\u043e\u043a \u0434\u0438\u0437\u0430\u0439\u043d\u0435 \u044d\u0442\u043e axi_bram_ctrl_0). \u0422\u0430\u043a \u0436\u0435 \u044f \u043f\u044b\u0442\u0430\u043b\u0441\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043a M_AXI_DC \u0438 M_AXI_IC \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u0443\u044e \u043f\u0430\u043c\u044f\u0442\u044c, \u043d\u043e \u0432\u0438\u0432\u0430\u0434\u0430 \u0440\u0443\u0433\u0430\u043b\u0430\u0441\u044c \u0438 \u044f \u043e\u0441\u0442\u0430\u0432\u0438\u043b \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442.<\/p>\n<p>\u042f \u043d\u0435 \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u044e\u0441\u044c \u0432 \u0442\u043e\u043c, \u043a\u0430\u043a \u0438\u043c\u0435\u043d\u043d\u043e \u0434\u043e\u043b\u0436\u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043a\u044d\u0448 \u043f\u0430\u043c\u044f\u0442\u044c, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u043e\u0441\u0442\u043e \u043e\u0441\u0442\u0430\u0432\u0438\u043b \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043a\u044d\u0448\u0435\u0439 \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0438 \u0437\u0430\u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043b \u0444\u0443\u043d\u043a\u0446\u0438\u044e disable_caches(). \u041f\u043e\u043a\u0430 \u043f\u0438\u0448\u0443 \u0441\u0442\u0430\u0442\u044c\u044e \u044f \u043e\u0441\u043e\u0437\u043d\u0430\u043b, \u0447\u0442\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u0442\u043e\u0438\u043b\u043e \u0432\u044b\u0437\u0432\u0430\u0442\u044c \u0434\u0440\u0443\u0433\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e enable_caches(), \u043d\u043e \u044d\u0442\u043e \u043d\u0435 \u0442\u043e\u0447\u043d\u043e.<\/p>\n<p>\u0418 \u0442\u0430\u043a, \u0438\u0437 \u0432\u0441\u0435\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u0442\u0435\u0441\u0442\u043e\u0432 \u044f \u0432\u044b\u0447\u043b\u0435\u043d\u0438\u043b \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u0432\u0430 \u0438\u0437 \u043d\u0438\u0445 \u0447\u0442\u043e\u0431\u044b \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u044c \u0432 \u043b\u043e\u0431.<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td data-colwidth=\"194\" width=\"194\">\n<p align=\"left\">\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0435  \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b<\/p>\n<\/td>\n<td data-colwidth=\"199\" width=\"199\">\n<p align=\"left\">\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442  \u0442\u0435\u0441\u0442\u043e\u0432. \u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0441 \u0431\u0430\u0437\u043e\u0432\u044b\u043c. \u0412\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f. \u0424\u0443\u043d\u043a\u0446\u0438\u044f disable_caches() \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f.<\/p>\n<\/td>\n<td data-colwidth=\"133\" width=\"133\">\n<p align=\"left\">\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442  \u0442\u0435\u0441\u0442\u043e\u0432. \u0412\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f. \u0424\u0443\u043d\u043a\u0446\u0438\u044f disable_caches() \u041d\u0415 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f.<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u0435\u043c\u044b\u0435  \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u041f\u041b\u0418\u0421<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"194\" width=\"194\">\n<p align=\"left\"><u>\u0411\u0430\u0437\u043e\u0432\u044b\u0439.<\/u><\/p>\n<p align=\"left\">Enable MicroBlaze Debug Module  Interface false<\/p>\n<p align=\"left\"><strong>Use Instruction and Data Cache  false<\/strong><\/p>\n<p align=\"left\">Enable Exeption false<\/p>\n<p align=\"left\">Use Memory Management false <\/p>\n<p align=\"left\">Enable Discrete Ports false<\/p>\n<p align=\"left\">Enable Barrel Shifter true<\/p>\n<p align=\"left\">Enable Floating Point Unit  EXTENDED<\/p>\n<p align=\"left\">Enable Integer Miltiplier MUL64<\/p>\n<p align=\"left\">Enable Integer Divider true<\/p>\n<p align=\"left\">Enable Additional Machine Status  Register Instructions true<\/p>\n<p align=\"left\">Enable Pattern Comparator true<\/p>\n<p align=\"left\">Enable Reversed Load\/Store and  Swap Instructions true<\/p>\n<p align=\"left\">Select Extendet Addresing NONE<\/p>\n<p align=\"left\">Enable Branch Target Cache false<\/p>\n<p align=\"left\">Branch Target Cache Size DEFAULT<\/p>\n<\/td>\n<td data-colwidth=\"199\" width=\"199\">\n<p align=\"left\">100%<\/p>\n<\/td>\n<td data-colwidth=\"133\" width=\"133\">\n<p align=\"left\">&#8212;<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 2239, <\/p>\n<p align=\"left\">Slice Registers 1626, <\/p>\n<p align=\"left\">F7 Muxes 112, <\/p>\n<p align=\"left\">Slice 718, <\/p>\n<p align=\"left\">LUT as Logic 2128, <\/p>\n<p align=\"left\">LUT as Memory 111,<\/p>\n<p align=\"left\">DSPs 6<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"194\" width=\"194\">\n<p align=\"left\">Select Processor Implementation 32  bits<\/p>\n<p align=\"left\">Enable MicroBlaze Debug Module  Interface false<\/p>\n<p align=\"left\"><strong>Use Instruction and Data Cache  true (4kb for each)<\/strong><\/p>\n<p align=\"left\">Enable Exeption false<\/p>\n<p align=\"left\">Use Memory Management false <\/p>\n<p align=\"left\">Enable Discrete Ports false<\/p>\n<p align=\"left\">Enable Barrel Shifter true<\/p>\n<p align=\"left\">Enable Floating Point Unit  EXTENDED<\/p>\n<p align=\"left\">Enable Integer Miltiplier MUL64<\/p>\n<p align=\"left\">Enable Integer Divider true<\/p>\n<p align=\"left\">Enable Additional Machine Status  Register Instructions true<\/p>\n<p align=\"left\">Enable Pattern Comparator true<\/p>\n<p align=\"left\">Enable Reversed Load\/Store and  Swap Instructions true<\/p>\n<p align=\"left\">Select Extendet Addresing NONE<\/p>\n<p align=\"left\">Enable Branch Target Cache false<\/p>\n<p align=\"left\">Branch Target Cache Size DEFAULT<\/p>\n<\/td>\n<td data-colwidth=\"199\" width=\"199\">\n<p align=\"left\">INIT_: +0% <\/p>\n<p align=\"left\">INIT_F: +0%<\/p>\n<p align=\"left\">INIT_DIV: +0%<\/p>\n<p align=\"left\">MUL32: +0% <\/p>\n<p align=\"left\">MUL32F: +0% <\/p>\n<p align=\"left\">ADD__: +0% <\/p>\n<p align=\"left\">ADD_F: +0% <\/p>\n<p align=\"left\">INT_DIV: +0% <\/p>\n<p align=\"left\">INT_DIV_F: +0%<\/p>\n<p align=\"left\">BARREL_SHIFT: +0%<\/p>\n<p align=\"left\">D_CACHE: +0% <\/p>\n<p align=\"left\">I_CACHE: +0%<\/p>\n<\/td>\n<td data-colwidth=\"133\" width=\"133\">\n<p align=\"left\">INIT_: +0% <\/p>\n<p align=\"left\">INIT_F: +0% <\/p>\n<p align=\"left\">INIT_DIV: +0%<\/p>\n<p align=\"left\">MUL32: +0% <\/p>\n<p align=\"left\">MUL32F: +0%<\/p>\n<p align=\"left\">ADD__: +0% <\/p>\n<p align=\"left\">ADD_F: +0% <\/p>\n<p align=\"left\">INT_DIV: +0% <\/p>\n<p align=\"left\">INT_DIV_F: +0%<\/p>\n<p align=\"left\">BARREL_SHIFT: +0%<\/p>\n<p align=\"left\">D_CACHE: +0%<\/p>\n<p align=\"left\">I_CACHE: +0%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 2682, +20% <\/p>\n<p align=\"left\">Slice Registers 1963, +21%<\/p>\n<p align=\"left\">F7 Muxes 112, <\/p>\n<p align=\"left\">Slice 879, +22%<\/p>\n<p align=\"left\">LUT as Logic 2494, +17% <\/p>\n<p align=\"left\">LUT as Memory 188, +69%<\/p>\n<p align=\"left\">BLOCK RAM 4, (\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439  \u0440\u0435\u0441\u0443\u0440\u0441)<\/p>\n<p align=\"left\">DSPs 6<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u041a\u0430\u043a \u0432\u0438\u0434\u043d\u043e \u0438\u0437 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 &#8212; \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u043a\u044d\u0448\u0430 \u043d\u0435 \u043f\u043e\u0432\u043b\u0438\u044f\u043b\u043e \u043d\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c. \u0422\u0430\u043a \u0436\u0435 \u0441\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0432 \u044d\u0442\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u0432\u043c\u0435\u0441\u0442\u043e -0% \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b +0%, \u044d\u0442\u043e \u0441\u0432\u044f\u0437\u0430\u043d\u043e \u0441 \u0442\u0435\u043c, \u0447\u0442\u043e \u0447\u0438\u0441\u043b\u0430 \u0432\u0441\u0435-\u0442\u0430\u043a\u0438 \u043e\u0442\u043b\u0438\u0447\u0430\u043b\u0438\u0441\u044c \u043d\u0430 +1 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0442\u0435\u0441\u0442 MUL32 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u043b\u0441\u044f \u0437\u0430 4149505 \u0435\u0434\u0438\u043d\u0438\u0446 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0432 \u0431\u0430\u0437\u043e\u0432\u043e\u043c \u0442\u0435\u0441\u0442\u0435, \u0430 \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043a\u044d\u0448\u0430 \u0432\u0440\u0435\u043c\u044f \u043f\u043e\u0434\u043d\u044f\u043b\u043e\u0441\u044c \u043d\u0430 \u0435\u0434\u0438\u043d\u0438\u0446\u0443 \u0438 \u0441\u0442\u0430\u043b\u043e 4149506. \u042d\u0442\u043e \u0441\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u043f\u043e \u0432\u0441\u0435\u043c \u0442\u0435\u0441\u0442\u0430\u043c. <\/p>\n<p>\u042f \u043f\u0440\u043e\u0433\u043e\u043d\u044f\u043b \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0435\u0439 \u043a\u044d\u0448\u0430 \u0432 \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437\u0435 \u0438 \u043d\u0435 \u0441\u043c\u043e\u0433 \u0432\u044b\u044f\u0432\u0438\u0442\u044c \u043a\u0430\u043a\u043e\u0433\u043e-\u0442\u043e \u043e\u0436\u0438\u0434\u0430\u0435\u043c\u043e\u0433\u043e \u043f\u0440\u0438\u0440\u043e\u0441\u0442\u0430 \u0438\u043b\u0438 \u0443\u0445\u0443\u0434\u0448\u0435\u043d\u0438\u044f. \u0425\u043e\u0442\u044f \u043f\u0440\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 Enable Branch Target Cache true \u0438 Branch Target Cache Size 8 ENTRIES (\u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u043f\u0440\u0438 \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0438 \u0432\u0442\u043e\u0440\u043e\u0433\u043e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430) \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421. <\/p>\n<p><strong>\u0427\u0435\u0442\u0432\u0435\u0440\u0442\u0430\u044f \u043f\u043e\u0440\u0446\u0438\u044f \u0442\u0435\u0441\u0442\u043e\u0432. \u041f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0435 \u0447\u0430\u0441\u0442\u043e\u0442\u044b \u0442\u0430\u043a\u0442\u0438\u0440\u0443\u044e\u0449\u0435\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430.<\/strong><\/p>\n<p>\u041e\u0447\u0435\u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u0432\u0441\u044f \u043b\u043e\u0433\u0438\u043a\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u043d\u0430 \u0440\u0435\u0441\u0443\u0440\u0441\u0430\u0445 \u041f\u041b\u0418\u0421, \u0442\u043e \u043f\u0440\u0438 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0438 \u0447\u0430\u0441\u0442\u043e\u0442\u044b \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0434\u043e\u043b\u0436\u043d\u0430 \u0440\u0430\u0441\u0442\u0438 \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e \u0447\u0430\u0441\u0442\u043e\u0442\u0435.<\/p>\n<p><strong>\u041a\u043e\u0440\u043e\u0442\u043a\u0438\u0439 \u043e\u0442\u0432\u0435\u0442:<\/strong> \u0434\u0430, \u0442\u0430\u043a \u0438 \u0435\u0441\u0442\u044c.<\/p>\n<p>\u0412\u0441\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u043b\u043e \u043d\u0430 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 100\u041c\u0413\u0446. \u0414\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0447\u0430\u0441\u0442\u043e\u0442\u044b \u044f \u0438\u0437\u043c\u0435\u043d\u0438\u043b \u0447\u0430\u0441\u0442\u043e\u0442\u0443 \u043d\u0430 200\u041c\u0413\u0446 \u0438 \u043d\u0430 50\u041c\u0413\u0446, \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0447\u0435\u0433\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u0447 \u043d\u0430 \u0432\u0441\u0435\u0445 \u0447\u0430\u0441\u0442\u043e\u0442\u0430\u0445 \u0431\u044b\u043b\u043e \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u043c. \u0412\u043d\u0438\u043c\u0430\u043d\u0438\u0435! \u0412\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0441\u0447\u0438\u0442\u0430\u043b\u043e\u0441\u044c \u0432 \u0442\u0430\u043a\u0442\u0430\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u043a\u043b\u043e\u043a\u0430, \u0430 \u043d\u0435 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0430\u0445. \u041e\u0442\u0441\u044e\u0434\u0430 \u0441\u043b\u0435\u0434\u0443\u0435\u0442, \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c MicroBlaze \u043b\u0438\u043d\u0435\u0439\u043d\u043e \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u0447\u0430\u0441\u0442\u043e\u0442\u044b. <\/p>\n<p>\u041a\u043e\u043d\u0435\u0447\u043d\u043e, \u0442\u0443\u0442 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0444\u0438\u043b\u043e\u0441\u043e\u0444\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u0442\u0435\u043c\u0443, \u0447\u0442\u043e \u043a AXI Interconnect \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0440\u0430\u0437\u043d\u044b\u0435 \u043c\u043e\u0434\u0443\u043b\u0438 \u043d\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 \u0438 \u0432\u0440\u0435\u043c\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0437\u043d\u044b\u043c. \u041d\u043e \u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043b \u043d\u0435 \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u044e, \u0430 \u0441\u0430\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437.<\/p>\n<p><strong>\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435.<\/strong><\/p>\n<p>\u041d\u0435 \u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043d\u0430\u0431\u043e\u0440 \u0442\u0435\u0441\u0442\u043e\u0432 (\u0441\u044b\u0440\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u043d\u0438\u0436\u0435), \u0434\u043b\u044f \u0441\u0435\u0431\u044f \u044f \u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043b, \u0447\u0442\u043e \u0432\u0441\u0435\u0433\u0434\u0430 \u0431\u0443\u0434\u0443 \u0432\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 Barrel Shifter, \u043e\u043d \u0443\u0447\u0430\u0441\u0442\u0432\u0443\u0435\u0442 \u0432 \u0431\u043e\u043b\u044c\u0448\u043e\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0435 \u0430\u0440\u0438\u0444\u043c\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439.<\/p>\n<p>\u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e \u043e\u0442\u043c\u0435\u0442\u0438\u043b, \u0447\u0442\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u0435\u043b\u0438 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f \u0438 \u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0442\u043e\u0447\u0435\u0447\u043d\u043e \u0432\u043b\u0438\u044f\u044e\u0442 \u043d\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c, \u0441\u0442\u0440\u043e\u0433\u043e \u043e\u0442\u0432\u0435\u0447\u0430\u044f \u0437\u0430 \u0441\u0432\u043e\u044e \u043e\u0431\u043b\u0430\u0441\u0442\u044c \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439. <\/p>\n<details class=\"spoiler\">\n<summary>\u041a\u043e\u0434 \u0434\u043b\u044f SDK<\/summary>\n<div class=\"spoiler__content\">\n<details class=\"spoiler\">\n<summary>\u0444\u0430\u0439\u043b helloworld.c<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"cpp\">\/****************************************************************************** * * Copyright (C) 2009 - 2014 Xilinx, Inc.  All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the \"Software\"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and\/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. * * Use of the Software is limited solely to applications: * (a) running on a Xilinx device, or * (b) that interact with a Xilinx device through a bus or interconnect. * * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * XILINX  BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. * * Except as contained in this notice, the name of the Xilinx shall not be used * in advertising or otherwise to promote the sale, use or other dealings in * this Software without prior written authorization from Xilinx. * ******************************************************************************\/  \/*  * helloworld.c: simple test application  *  * This application configures UART 16550 to baud rate 9600.  * PS7 UART (Zynq) is not initialized by this application, since  * bootrom\/bsp configures it to baud rate 115200  *  * ------------------------------------------------  * | UART TYPE   BAUD RATE                        |  * ------------------------------------------------  *   uartns550   9600  *   uartlite    Configurable only in HW design  *   ps7_uart    115200 (configured by bootrom\/bsp)  *\/  \/\/#include &lt;stdio.h&gt; #include \"platform.h\" #include \"xil_printf.h\" #include \"xil_io.h\" #include \"mass_function.h\"   #define ITERATIONS 500 #define BUFFER_SIZE 1024 #define FLOAT_SCALE 32.0f #define DIV_BASE2000000000  int32_t op1[BUFFER_SIZE]; int32_t op2[BUFFER_SIZE];   float op1_f[BUFFER_SIZE]; float op2_f[BUFFER_SIZE];  int op1_div[BUFFER_SIZE]; int op2_div[BUFFER_SIZE];  extern func_ptr_t func_table[256];    \/\/generate data uint32_t init_data() { Xil_Out32(XPAR_GPIO_0_BASEADDR, 0);\/\/set reset Xil_Out32(XPAR_GPIO_0_BASEADDR, 1);\/\/clear reset uint32_t start_timer = Xil_In32(XPAR_GPIO_1_BASEADDR);\/\/ timer counter     register int32_t base_val = -256;     for(register int i = 0; i &lt; BUFFER_SIZE; i++) {         \/\/ \u0411\u044b\u0441\u0442\u0440\u044b\u0435 \u0431\u0438\u0442\u043e\u0432\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0432\u043c\u0435\u0441\u0442\u043e \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f\/\u0434\u0435\u043b\u0435\u043d\u0438\u044f         op1[i] = base_val + (i &amp; 0xFF);       \/\/ -256 \u0434\u043e 255         op2[i] = (i ^ 0x55) &amp; 0x3F;           \/\/ 0-63     } return Xil_In32(XPAR_GPIO_1_BASEADDR) - start_timer; }  uint32_t init_data_float() { Xil_Out32(XPAR_GPIO_0_BASEADDR, 0);\/\/set reset Xil_Out32(XPAR_GPIO_0_BASEADDR, 1);\/\/clear reset uint32_t start_timer = Xil_In32(XPAR_GPIO_1_BASEADDR);\/\/ timer counter     \/\/ \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0446\u0435\u043b\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f + \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435     register float scale_factor = 1.0f \/ FLOAT_SCALE;     register int half_buffer = BUFFER_SIZE \/ 2;      for(register int i = 0; i &lt; BUFFER_SIZE; i++) {         \/\/ \u0426\u0435\u043b\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 + \u043e\u0434\u043d\u043e\u043a\u0440\u0430\u0442\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435         int32_t int_val = i - half_buffer;         op1_f[i] = int_val * scale_factor;  \/\/ \u041e\u0434\u043d\u043e \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435 \u0432\u043c\u0435\u0441\u0442\u043e \u0434\u0435\u043b\u0435\u043d\u0438\u044f         op2_f[i] = int_val * (scale_factor * 0.75f);  \/\/ \u041f\u0440\u0435\u0434\u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0439 \u043c\u0430\u0441\u0448\u0442\u0430\u0431          \/\/if(i%100 == 0) printf(\"op1: %.4f; op2: %.4f;\\r\\n\", op1_f[i], op2_f[i]);     } return Xil_In32(XPAR_GPIO_1_BASEADDR) - start_timer; }   uint32_t init_data_div() { Xil_Out32(XPAR_GPIO_0_BASEADDR, 0);\/\/set reset Xil_Out32(XPAR_GPIO_0_BASEADDR, 1);\/\/clear reset uint32_t start_timer = Xil_In32(XPAR_GPIO_1_BASEADDR);\/\/ timer counter     register int32_t base_val = DIV_BASE;     register uint8_t base_cnt = 0;     for(register int i = 0; i &lt; BUFFER_SIZE; i++) {         op1_div[i] = base_val - i;  \/\/ \u041b\u0438\u043d\u0435\u0439\u043d\u043e\u0435 \u0443\u043c\u0435\u043d\u044c\u0448\u0435\u043d\u0438\u0435         op2_div[i] = base_cnt + 2;  \/\/ \u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d 2-257         base_cnt++;     } return Xil_In32(XPAR_GPIO_1_BASEADDR) - start_timer; }     uint32_t test_multiplication(uint32_t iterations) { Xil_Out32(XPAR_GPIO_0_BASEADDR, 0);\/\/set reset Xil_Out32(XPAR_GPIO_0_BASEADDR, 1);\/\/clear reset uint32_t start_timer = Xil_In32(XPAR_GPIO_1_BASEADDR);\/\/ timer counter register int32_t mul_acc = 1; for(register uint32_t i = 0; i &lt; iterations; i++) { for(register uint32_t j = 0; j &lt; BUFFER_SIZE-3; j++) { mul_acc *= op1[j]*op2[j]; mul_acc *= op1[j]*op2[j+1]; mul_acc *= op1[j]*op2[j+2]; mul_acc *= op1[j]*op2[j+3]; } op2[i%BUFFER_SIZE] = mul_acc; op1[(i + 12)%BUFFER_SIZE] = mul_acc; mul_acc = 1; }      return Xil_In32(XPAR_GPIO_1_BASEADDR) - start_timer; }   uint32_t test_multiplication_float(uint32_t iterations) { Xil_Out32(XPAR_GPIO_0_BASEADDR, 0);\/\/set reset Xil_Out32(XPAR_GPIO_0_BASEADDR, 1);\/\/clear reset uint32_t start_timer = Xil_In32(XPAR_GPIO_1_BASEADDR);\/\/ timer counter register float mul_acc = 1; for(register uint32_t i = 0; i &lt; iterations; i++) { for(register uint32_t j = 0; j &lt; BUFFER_SIZE-3; j++) { mul_acc *= op1_f[j]*op2_f[j]; mul_acc *= op1_f[j]*op2_f[j+1]; mul_acc *= op1_f[j]*op2_f[j+2]; mul_acc *= op1_f[j]*op2_f[j+3]; } op2_f[i%BUFFER_SIZE] = mul_acc; op1_f[(i + 12)%BUFFER_SIZE] = mul_acc; mul_acc = 1; }      return Xil_In32(XPAR_GPIO_1_BASEADDR) - start_timer; }   uint32_t test_add(uint32_t iterations) { Xil_Out32(XPAR_GPIO_0_BASEADDR, 0);\/\/set reset Xil_Out32(XPAR_GPIO_0_BASEADDR, 1);\/\/clear reset uint32_t start_timer = Xil_In32(XPAR_GPIO_1_BASEADDR);\/\/ timer counter register uint32_t add_acc = 0; for(register uint32_t i = 0; i &lt; iterations; i++) { for(register uint32_t j = 0; j &lt; BUFFER_SIZE-3; j++) { add_acc += op1[j]+op2[j]; add_acc += op1[j]+op2[j+1]; add_acc += op1[j]+op2[j+2]; add_acc += op1[j]+op2[j+3]; } op2[i%BUFFER_SIZE] = add_acc; op1[(i + 12)%BUFFER_SIZE] = add_acc; add_acc = 0; }      return Xil_In32(XPAR_GPIO_1_BASEADDR) - start_timer; }    uint32_t test_add_float(uint32_t iterations) { Xil_Out32(XPAR_GPIO_0_BASEADDR, 0);\/\/set reset Xil_Out32(XPAR_GPIO_0_BASEADDR, 1);\/\/clear reset uint32_t start_timer = Xil_In32(XPAR_GPIO_1_BASEADDR);\/\/ timer counter register float add_acc = 0; for(register uint32_t i = 0; i &lt; iterations; i++) { for(register uint32_t j = 0; j &lt; BUFFER_SIZE-3; j++) { add_acc += op1_f[j]+op2_f[j]; add_acc += op1_f[j]+op2_f[j+1]; add_acc += op1_f[j]+op2_f[j+2]; add_acc += op1_f[j]+op2_f[j+3]; } op2_f[i%BUFFER_SIZE] = add_acc; op1_f[(i + 12)%BUFFER_SIZE] = add_acc; add_acc = 0; }      return Xil_In32(XPAR_GPIO_1_BASEADDR) - start_timer; }   uint32_t test_division_int(uint32_t iterations) { Xil_Out32(XPAR_GPIO_0_BASEADDR, 0);\/\/set reset Xil_Out32(XPAR_GPIO_0_BASEADDR, 1);\/\/clear reset uint32_t start_timer = Xil_In32(XPAR_GPIO_1_BASEADDR);\/\/ timer counter register int div_acc = 0; for(register uint32_t i = 0; i &lt; iterations; i++) { for(register uint32_t j = 0; j &lt; BUFFER_SIZE-3; j++) { div_acc += op1_div[j]\/op2_div[j]; div_acc += op1_div[j]\/op2_div[j+1]; div_acc += op1_div[j]\/op2_div[j+2]; div_acc += op1_div[j]\/op2_div[j+3]; } \/\/op2_div[i%BUFFER_SIZE] = div_acc; op1_div[(i + 12)%BUFFER_SIZE] = div_acc; div_acc = 0; }      return Xil_In32(XPAR_GPIO_1_BASEADDR) - start_timer; }   uint32_t test_division_float(uint32_t iterations) { Xil_Out32(XPAR_GPIO_0_BASEADDR, 0);\/\/set reset Xil_Out32(XPAR_GPIO_0_BASEADDR, 1);\/\/clear reset uint32_t start_timer = Xil_In32(XPAR_GPIO_1_BASEADDR);\/\/ timer counter register float div_acc = 0; for(register uint32_t i = 0; i &lt; iterations; i++) { for(register uint32_t j = 0; j &lt; BUFFER_SIZE-3; j++) { div_acc += op1_f[j]\/op2_f[j]; div_acc += op1_f[j]\/op2_f[j+1]; div_acc += op1_f[j]\/op2_f[j+2]; div_acc += op1_f[j]\/op2_f[j+3]; } \/\/op2_div[i%BUFFER_SIZE] = div_acc; op1_f[(i + 12)%BUFFER_SIZE] = div_acc; div_acc = 0; }      return Xil_In32(XPAR_GPIO_1_BASEADDR) - start_timer; }   uint32_t test_barrel_shifter(uint32_t iterations) {     Xil_Out32(XPAR_GPIO_0_BASEADDR, 0);  \/\/ \u0421\u0431\u0440\u043e\u0441 \u0442\u0430\u0439\u043c\u0435\u0440\u0430     Xil_Out32(XPAR_GPIO_0_BASEADDR, 1);  \/\/ \u0417\u0430\u043f\u0443\u0441\u043a \u0442\u0430\u0439\u043c\u0435\u0440\u0430     uint32_t start_timer = Xil_In32(XPAR_GPIO_1_BASEADDR);      volatile uint32_t value = 0x12345678 ^ iterations;     volatile uint32_t result = 0;      \/\/ \u041f\u0440\u0435\u0434\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435 \u0448\u0430\u0433\u0438 \u0441\u0434\u0432\u0438\u0433\u0430     const uint8_t shifts[] = {1, 2, 3, 4, 8, 16, 24, 31};     const int num_shifts = sizeof(shifts) \/ sizeof(shifts[0]);      for (register uint32_t i = 0; i &lt; iterations; i++) {         \/\/ \u041f\u0435\u0440\u0435\u0431\u0438\u0440\u0430\u0435\u043c \u0440\u0430\u0437\u043d\u044b\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0441\u0434\u0432\u0438\u0433\u043e\u0432         for (register int s = 0; s &lt; num_shifts; s++) {              \/\/ \u0420\u0430\u0437\u043d\u043e\u043e\u0431\u0440\u0430\u0437\u043d\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u0434\u0432\u0438\u0433\u0430             result += value &lt;&lt;  shifts[s];       \/\/ \u0421\u0434\u0432\u0438\u0433 \u0432\u043b\u0435\u0432\u043e             result += value &gt;&gt; (32 -  shifts[s]); \/\/ \u0421\u0434\u0432\u0438\u0433 \u0432\u043f\u0440\u0430\u0432\u043e (\u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435)             result += (value &lt;&lt;  shifts[s]) | (value &gt;&gt; (32 -  shifts[s]));  \/\/ \u0426\u0438\u043a\u043b\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0432\u043b\u0435\u0432\u043e             result += (value &gt;&gt;  shifts[s]) | (value &lt;&lt; (32 -  shifts[s]));  \/\/ \u0426\u0438\u043a\u043b\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0432\u043f\u0440\u0430\u0432\u043e              \/\/ \u041a\u043e\u043c\u0431\u0438\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0441\u0434\u0432\u0438\u0433\u0438             result ^= (value &lt;&lt; ( shifts[s]\/2)) + (value &gt;&gt; ( shifts[s]\/2 + 1));         }          \/\/ \u041c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438         value += result;     }      op1[BUFFER_SIZE-1] = value + result;     op2[BUFFER_SIZE-1] = value - result;      return Xil_In32(XPAR_GPIO_1_BASEADDR) - start_timer; }   uint32_t test_data_cache(uint32_t iterations) {     Xil_Out32(XPAR_GPIO_0_BASEADDR, 0);     Xil_Out32(XPAR_GPIO_0_BASEADDR, 1);     uint32_t start_timer = Xil_In32(XPAR_GPIO_1_BASEADDR);      volatile uint32_t acc = 0;     const uint32_t mask = BUFFER_SIZE - 1;  \/\/ \u041c\u0430\u0441\u043a\u0430 \u0434\u043b\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u0430\u0446\u0438\u0438 (BUFFER_SIZE \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u0441\u0442\u0435\u043f\u0435\u043d\u044c\u044e 2!)     const uint32_t stride = 65;             \/\/ \u041d\u0435\u0447\u0435\u0442\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0434\u043b\u044f \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0430      for (register uint32_t iter = 0; iter &lt; iterations; iter++) {         \/\/ \u0422\u0435\u0441\u0442 1: \u041f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f (\u0447\u0442\u0435\u043d\u0438\u0435)         for (register int i = 0; i &lt; BUFFER_SIZE; i++) {             acc += op1[i];         }          \/\/ \u0422\u0435\u0441\u0442 2: \u041f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f (\u0437\u0430\u043f\u0438\u0441\u044c)         for (register int i = 0; i &lt; BUFFER_SIZE; i++) {             op1[i] = acc + i;         }          \/\/ \u0422\u0435\u0441\u0442 3: \u041f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f (\u0447\u0442\u0435\u043d\u0438\u0435)         for (register int i = 0; i &lt; BUFFER_SIZE; i++) {             uint32_t idx = (i * stride) &amp; mask;  \/\/ \u0411\u044b\u0441\u0442\u0440\u0430\u044f \u0431\u0438\u0442\u043e\u0432\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f             acc += op1[idx];         }          \/\/ \u0422\u0435\u0441\u0442 4: \u041f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f (\u0437\u0430\u043f\u0438\u0441\u044c)         for (register int i = 0; i &lt; BUFFER_SIZE; i++) {             uint32_t idx = (i * stride) &amp; mask;  \/\/ \u0411\u044b\u0441\u0442\u0440\u0430\u044f \u0431\u0438\u0442\u043e\u0432\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f             op1[idx] = acc + i;         }     }      \/\/ \u0424\u0438\u043d\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432     op1[0] = acc;      return Xil_In32(XPAR_GPIO_1_BASEADDR) - start_timer; }    uint32_t test_icache(uint32_t iterations) {     Xil_Out32(XPAR_GPIO_0_BASEADDR, 0);  \/\/ \u0421\u0431\u0440\u043e\u0441 \u0442\u0430\u0439\u043c\u0435\u0440\u0430     Xil_Out32(XPAR_GPIO_0_BASEADDR, 1);  \/\/ \u0417\u0430\u043f\u0443\u0441\u043a \u0442\u0430\u0439\u043c\u0435\u0440\u0430     uint32_t start_timer = Xil_In32(XPAR_GPIO_1_BASEADDR);      volatile uint32_t acc = 0, res = 0;     uint32_t prng = 0x12345678;      for (uint32_t i = 0; i &lt; iterations; i++) {         \/\/ \u041f\u0440\u043e\u0441\u0442\u043e\u0439 PRNG \u0434\u043b\u044f \u0432\u044b\u0431\u043e\u0440\u0430 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438         prng = (prng * 1103515245) + 12345;         uint8_t func_index = (prng &gt;&gt; 16) &amp; 0xFF;          \/\/ \u0412\u044b\u0437\u043e\u0432 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438\u0437 \u0442\u0430\u0431\u043b\u0438\u0446\u044b         res = func_table[func_index](i+1);          \/\/ \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u0438\u0442\u044c \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044e         acc += prng + res;     }      \/\/ \u0421\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438     op1[0] = acc;      return Xil_In32(XPAR_GPIO_1_BASEADDR) - start_timer; }      int main() {     init_platform();     \/\/disable_caches();      uint32_t timer;      xil_printf(\"Hello World\\n\\r\");        int i;     for(i=0;i &lt; 1; i++){      \/\/INIT test timer = init_data(); xil_printf(\"INIT_: work time %d \\n\\r\", timer); timer = init_data_float(); xil_printf(\"INIT_F: work time %d \\n\\r\", timer); timer = init_data_div(); xil_printf(\"INIT_DIV: work time %d \\n\\r\", timer);  \/\/MUL data timer = test_multiplication(ITERATIONS); xil_printf(\"MUL32: work time %d \\n\\r\", timer); timer = test_multiplication_float(ITERATIONS); xil_printf(\"MUL32F: work time %d \\n\\r\", timer);  \/\/ADD test init_data(); init_data_float(); timer = test_add(ITERATIONS); xil_printf(\"ADD__: work time %d \\n\\r\", timer); timer = test_add_float(ITERATIONS); xil_printf(\"ADD_F: work time %d \\n\\r\", timer);   \/\/DIV test timer = test_division_int(ITERATIONS); xil_printf(\"INT_DIV: work time %d \\n\\r\", timer); init_data_float(); timer = test_division_float(ITERATIONS); xil_printf(\"INT_DIV_F: work time %d \\n\\r\", timer);   \/\/barrel shifter test timer = test_barrel_shifter(ITERATIONS); xil_printf(\"BARREL_SHIFT: work time %d \\n\\r\", timer);  \/\/data cache test timer = test_data_cache(ITERATIONS); xil_printf(\"D_CACHE: work time %d \\n\\r\", timer);  \/\/i-cache test timer = test_icache(ITERATIONS*256); xil_printf(\"I_CACHE: work time %d \\n\\r\", timer);      }      xil_printf(\"The End\\n\\r\");     cleanup_platform();     return 0; } <\/code><\/pre>\n<\/div>\n<\/details>\n<details class=\"spoiler\">\n<summary>\u0424\u0430\u0439\u043b mass_function.h<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"cpp\">\/*  * mass_function.h  *  *  Created on: 16 \u0430\u0432\u0433. 2025 \u0433.  *      Author: mihail  *\/  #ifndef SRC_MASS_FUNCTION_H_ #define SRC_MASS_FUNCTION_H_   #define DECLARE_TEST_FUNC(n) \\ __attribute__((noinline)) int test_func_##n(uint32_t i) { \\     volatile int a = n * 123 + i; \\     volatile int b = n * 456 + 789 - i; \\     volatile int c = (a &amp; 0xFF) | (b &amp; 0xFF00); \\     volatile float d = c * 0.001f; \\     return (int) (d + n * 0.1f); \\ }   DECLARE_TEST_FUNC(0) DECLARE_TEST_FUNC(1) DECLARE_TEST_FUNC(2) DECLARE_TEST_FUNC(3) DECLARE_TEST_FUNC(4) DECLARE_TEST_FUNC(5) DECLARE_TEST_FUNC(6) DECLARE_TEST_FUNC(7) DECLARE_TEST_FUNC(8) DECLARE_TEST_FUNC(9) DECLARE_TEST_FUNC(10) DECLARE_TEST_FUNC(11) DECLARE_TEST_FUNC(12) DECLARE_TEST_FUNC(13) DECLARE_TEST_FUNC(14) DECLARE_TEST_FUNC(15) DECLARE_TEST_FUNC(16) DECLARE_TEST_FUNC(17) DECLARE_TEST_FUNC(18) DECLARE_TEST_FUNC(19) DECLARE_TEST_FUNC(20) DECLARE_TEST_FUNC(21) DECLARE_TEST_FUNC(22) DECLARE_TEST_FUNC(23) DECLARE_TEST_FUNC(24) DECLARE_TEST_FUNC(25) DECLARE_TEST_FUNC(26) DECLARE_TEST_FUNC(27) DECLARE_TEST_FUNC(28) DECLARE_TEST_FUNC(29) DECLARE_TEST_FUNC(30) DECLARE_TEST_FUNC(31) DECLARE_TEST_FUNC(32) DECLARE_TEST_FUNC(33) DECLARE_TEST_FUNC(34) DECLARE_TEST_FUNC(35) DECLARE_TEST_FUNC(36) DECLARE_TEST_FUNC(37) DECLARE_TEST_FUNC(38) DECLARE_TEST_FUNC(39) DECLARE_TEST_FUNC(40) DECLARE_TEST_FUNC(41) DECLARE_TEST_FUNC(42) DECLARE_TEST_FUNC(43) DECLARE_TEST_FUNC(44) DECLARE_TEST_FUNC(45) DECLARE_TEST_FUNC(46) DECLARE_TEST_FUNC(47) DECLARE_TEST_FUNC(48) DECLARE_TEST_FUNC(49) DECLARE_TEST_FUNC(50) DECLARE_TEST_FUNC(51) DECLARE_TEST_FUNC(52) DECLARE_TEST_FUNC(53) DECLARE_TEST_FUNC(54) DECLARE_TEST_FUNC(55) DECLARE_TEST_FUNC(56) DECLARE_TEST_FUNC(57) DECLARE_TEST_FUNC(58) DECLARE_TEST_FUNC(59) DECLARE_TEST_FUNC(60) DECLARE_TEST_FUNC(61) DECLARE_TEST_FUNC(62) DECLARE_TEST_FUNC(63) DECLARE_TEST_FUNC(64) DECLARE_TEST_FUNC(65) DECLARE_TEST_FUNC(66) DECLARE_TEST_FUNC(67) DECLARE_TEST_FUNC(68) DECLARE_TEST_FUNC(69) DECLARE_TEST_FUNC(70) DECLARE_TEST_FUNC(71) DECLARE_TEST_FUNC(72) DECLARE_TEST_FUNC(73) DECLARE_TEST_FUNC(74) DECLARE_TEST_FUNC(75) DECLARE_TEST_FUNC(76) DECLARE_TEST_FUNC(77) DECLARE_TEST_FUNC(78) DECLARE_TEST_FUNC(79) DECLARE_TEST_FUNC(80) DECLARE_TEST_FUNC(81) DECLARE_TEST_FUNC(82) DECLARE_TEST_FUNC(83) DECLARE_TEST_FUNC(84) DECLARE_TEST_FUNC(85) DECLARE_TEST_FUNC(86) DECLARE_TEST_FUNC(87) DECLARE_TEST_FUNC(88) DECLARE_TEST_FUNC(89) DECLARE_TEST_FUNC(90) DECLARE_TEST_FUNC(91) DECLARE_TEST_FUNC(92) DECLARE_TEST_FUNC(93) DECLARE_TEST_FUNC(94) DECLARE_TEST_FUNC(95) DECLARE_TEST_FUNC(96) DECLARE_TEST_FUNC(97) DECLARE_TEST_FUNC(98) DECLARE_TEST_FUNC(99) DECLARE_TEST_FUNC(100) DECLARE_TEST_FUNC(101) DECLARE_TEST_FUNC(102) DECLARE_TEST_FUNC(103) DECLARE_TEST_FUNC(104) DECLARE_TEST_FUNC(105) DECLARE_TEST_FUNC(106) DECLARE_TEST_FUNC(107) DECLARE_TEST_FUNC(108) DECLARE_TEST_FUNC(109) DECLARE_TEST_FUNC(110) DECLARE_TEST_FUNC(111) DECLARE_TEST_FUNC(112) DECLARE_TEST_FUNC(113) DECLARE_TEST_FUNC(114) DECLARE_TEST_FUNC(115) DECLARE_TEST_FUNC(116) DECLARE_TEST_FUNC(117) DECLARE_TEST_FUNC(118) DECLARE_TEST_FUNC(119) DECLARE_TEST_FUNC(120) DECLARE_TEST_FUNC(121) DECLARE_TEST_FUNC(122) DECLARE_TEST_FUNC(123) DECLARE_TEST_FUNC(124) DECLARE_TEST_FUNC(125) DECLARE_TEST_FUNC(126) DECLARE_TEST_FUNC(127) DECLARE_TEST_FUNC(128) DECLARE_TEST_FUNC(129) DECLARE_TEST_FUNC(130) DECLARE_TEST_FUNC(131) DECLARE_TEST_FUNC(132) DECLARE_TEST_FUNC(133) DECLARE_TEST_FUNC(134) DECLARE_TEST_FUNC(135) DECLARE_TEST_FUNC(136) DECLARE_TEST_FUNC(137) DECLARE_TEST_FUNC(138) DECLARE_TEST_FUNC(139) DECLARE_TEST_FUNC(140) DECLARE_TEST_FUNC(141) DECLARE_TEST_FUNC(142) DECLARE_TEST_FUNC(143) DECLARE_TEST_FUNC(144) DECLARE_TEST_FUNC(145) DECLARE_TEST_FUNC(146) DECLARE_TEST_FUNC(147) DECLARE_TEST_FUNC(148) DECLARE_TEST_FUNC(149) DECLARE_TEST_FUNC(150) DECLARE_TEST_FUNC(151) DECLARE_TEST_FUNC(152) DECLARE_TEST_FUNC(153) DECLARE_TEST_FUNC(154) DECLARE_TEST_FUNC(155) DECLARE_TEST_FUNC(156) DECLARE_TEST_FUNC(157) DECLARE_TEST_FUNC(158) DECLARE_TEST_FUNC(159) DECLARE_TEST_FUNC(160) DECLARE_TEST_FUNC(161) DECLARE_TEST_FUNC(162) DECLARE_TEST_FUNC(163) DECLARE_TEST_FUNC(164) DECLARE_TEST_FUNC(165) DECLARE_TEST_FUNC(166) DECLARE_TEST_FUNC(167) DECLARE_TEST_FUNC(168) DECLARE_TEST_FUNC(169) DECLARE_TEST_FUNC(170) DECLARE_TEST_FUNC(171) DECLARE_TEST_FUNC(172) DECLARE_TEST_FUNC(173) DECLARE_TEST_FUNC(174) DECLARE_TEST_FUNC(175) DECLARE_TEST_FUNC(176) DECLARE_TEST_FUNC(177) DECLARE_TEST_FUNC(178) DECLARE_TEST_FUNC(179) DECLARE_TEST_FUNC(180) DECLARE_TEST_FUNC(181) DECLARE_TEST_FUNC(182) DECLARE_TEST_FUNC(183) DECLARE_TEST_FUNC(184) DECLARE_TEST_FUNC(185) DECLARE_TEST_FUNC(186) DECLARE_TEST_FUNC(187) DECLARE_TEST_FUNC(188) DECLARE_TEST_FUNC(189) DECLARE_TEST_FUNC(190) DECLARE_TEST_FUNC(191) DECLARE_TEST_FUNC(192) DECLARE_TEST_FUNC(193) DECLARE_TEST_FUNC(194) DECLARE_TEST_FUNC(195) DECLARE_TEST_FUNC(196) DECLARE_TEST_FUNC(197) DECLARE_TEST_FUNC(198) DECLARE_TEST_FUNC(199) DECLARE_TEST_FUNC(200) DECLARE_TEST_FUNC(201) DECLARE_TEST_FUNC(202) DECLARE_TEST_FUNC(203) DECLARE_TEST_FUNC(204) DECLARE_TEST_FUNC(205) DECLARE_TEST_FUNC(206) DECLARE_TEST_FUNC(207) DECLARE_TEST_FUNC(208) DECLARE_TEST_FUNC(209) DECLARE_TEST_FUNC(210) DECLARE_TEST_FUNC(211) DECLARE_TEST_FUNC(212) DECLARE_TEST_FUNC(213) DECLARE_TEST_FUNC(214) DECLARE_TEST_FUNC(215) DECLARE_TEST_FUNC(216) DECLARE_TEST_FUNC(217) DECLARE_TEST_FUNC(218) DECLARE_TEST_FUNC(219) DECLARE_TEST_FUNC(220) DECLARE_TEST_FUNC(221) DECLARE_TEST_FUNC(222) DECLARE_TEST_FUNC(223) DECLARE_TEST_FUNC(224) DECLARE_TEST_FUNC(225) DECLARE_TEST_FUNC(226) DECLARE_TEST_FUNC(227) DECLARE_TEST_FUNC(228) DECLARE_TEST_FUNC(229) DECLARE_TEST_FUNC(230) DECLARE_TEST_FUNC(231) DECLARE_TEST_FUNC(232) DECLARE_TEST_FUNC(233) DECLARE_TEST_FUNC(234) DECLARE_TEST_FUNC(235) DECLARE_TEST_FUNC(236) DECLARE_TEST_FUNC(237) DECLARE_TEST_FUNC(238) DECLARE_TEST_FUNC(239) DECLARE_TEST_FUNC(240) DECLARE_TEST_FUNC(241) DECLARE_TEST_FUNC(242) DECLARE_TEST_FUNC(243) DECLARE_TEST_FUNC(244) DECLARE_TEST_FUNC(245) DECLARE_TEST_FUNC(246) DECLARE_TEST_FUNC(247) DECLARE_TEST_FUNC(248) DECLARE_TEST_FUNC(249) DECLARE_TEST_FUNC(250) DECLARE_TEST_FUNC(251) DECLARE_TEST_FUNC(252) DECLARE_TEST_FUNC(253) DECLARE_TEST_FUNC(254) DECLARE_TEST_FUNC(255)  typedef int (*func_ptr_t)();  \/\/ \u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u0438\u0437 256 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 func_ptr_t func_table[256] = {     test_func_0,     test_func_1,     test_func_2,     test_func_3,     test_func_4,     test_func_5,     test_func_6,     test_func_7,     test_func_8,     test_func_9,     test_func_10,     test_func_11,     test_func_12,     test_func_13,     test_func_14,     test_func_15,     test_func_16,     test_func_17,     test_func_18,     test_func_19,     test_func_20,     test_func_21,     test_func_22,     test_func_23,     test_func_24,     test_func_25,     test_func_26,     test_func_27,     test_func_28,     test_func_29,     test_func_30,     test_func_31,     test_func_32,     test_func_33,     test_func_34,     test_func_35,     test_func_36,     test_func_37,     test_func_38,     test_func_39,     test_func_40,     test_func_41,     test_func_42,     test_func_43,     test_func_44,     test_func_45,     test_func_46,     test_func_47,     test_func_48,     test_func_49,     test_func_50,     test_func_51,     test_func_52,     test_func_53,     test_func_54,     test_func_55,     test_func_56,     test_func_57,     test_func_58,     test_func_59,     test_func_60,     test_func_61,     test_func_62,     test_func_63,     test_func_64,     test_func_65,     test_func_66,     test_func_67,     test_func_68,     test_func_69,     test_func_70,     test_func_71,     test_func_72,     test_func_73,     test_func_74,     test_func_75,     test_func_76,     test_func_77,     test_func_78,     test_func_79,     test_func_80,     test_func_81,     test_func_82,     test_func_83,     test_func_84,     test_func_85,     test_func_86,     test_func_87,     test_func_88,     test_func_89,     test_func_90,     test_func_91,     test_func_92,     test_func_93,     test_func_94,     test_func_95,     test_func_96,     test_func_97,     test_func_98,     test_func_99,     test_func_100,     test_func_101,     test_func_102,     test_func_103,     test_func_104,     test_func_105,     test_func_106,     test_func_107,     test_func_108,     test_func_109,     test_func_110,     test_func_111,     test_func_112,     test_func_113,     test_func_114,     test_func_115,     test_func_116,     test_func_117,     test_func_118,     test_func_119,     test_func_120,     test_func_121,     test_func_122,     test_func_123,     test_func_124,     test_func_125,     test_func_126,     test_func_127,     test_func_128,     test_func_129,     test_func_130,     test_func_131,     test_func_132,     test_func_133,     test_func_134,     test_func_135,     test_func_136,     test_func_137,     test_func_138,     test_func_139,     test_func_140,     test_func_141,     test_func_142,     test_func_143,     test_func_144,     test_func_145,     test_func_146,     test_func_147,     test_func_148,     test_func_149,     test_func_150,     test_func_151,     test_func_152,     test_func_153,     test_func_154,     test_func_155,     test_func_156,     test_func_157,     test_func_158,     test_func_159,     test_func_160,     test_func_161,     test_func_162,     test_func_163,     test_func_164,     test_func_165,     test_func_166,     test_func_167,     test_func_168,     test_func_169,     test_func_170,     test_func_171,     test_func_172,     test_func_173,     test_func_174,     test_func_175,     test_func_176,     test_func_177,     test_func_178,     test_func_179,     test_func_180,     test_func_181,     test_func_182,     test_func_183,     test_func_184,     test_func_185,     test_func_186,     test_func_187,     test_func_188,     test_func_189,     test_func_190,     test_func_191,     test_func_192,     test_func_193,     test_func_194,     test_func_195,     test_func_196,     test_func_197,     test_func_198,     test_func_199,     test_func_200,     test_func_201,     test_func_202,     test_func_203,     test_func_204,     test_func_205,     test_func_206,     test_func_207,     test_func_208,     test_func_209,     test_func_210,     test_func_211,     test_func_212,     test_func_213,     test_func_214,     test_func_215,     test_func_216,     test_func_217,     test_func_218,     test_func_219,     test_func_220,     test_func_221,     test_func_222,     test_func_223,     test_func_224,     test_func_225,     test_func_226,     test_func_227,     test_func_228,     test_func_229,     test_func_230,     test_func_231,     test_func_232,     test_func_233,     test_func_234,     test_func_235,     test_func_236,     test_func_237,     test_func_238,     test_func_239,     test_func_240,     test_func_241,     test_func_242,     test_func_243,     test_func_244,     test_func_245,     test_func_246,     test_func_247,     test_func_248,     test_func_249,     test_func_250,     test_func_251,     test_func_252,     test_func_253,     test_func_254,     test_func_255 };    #endif \/* SRC_MASS_FUNCTION_H_ *\/ <\/code><\/pre>\n<\/div>\n<\/details>\n<\/div>\n<\/details>\n<details class=\"spoiler\">\n<summary>\u0421\u044b\u0440\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0442\u0435\u0441\u0442\u043e\u0432:<\/summary>\n<div class=\"spoiler__content\">\n<p>TEST 1:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache false<br \/> Enable Exeption false<br \/> Use Memory Management false<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter false<br \/> Enable Floating Point Unit NONE<br \/> Enable Integer Miltiplier NONE<br \/> Enable Integer Divider false<br \/> Enable Additional Machine Status Register Instructions false<br \/> Enable Pattern Comparator false<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size DEFAULT<\/p>\n<p>Hello World<br \/> INIT_: work time 2564<br \/> INIT_F: work time 350733<br \/> INIT_DIV: work time 2821<br \/> MUL32: work time 18523530<br \/> MUL32F: work time 233098629<br \/> ADD__: work time 4149755<br \/> ADD_F: work time 160816062<br \/> INT_DIV: work time 107306028<br \/> INT_DIV_F: work time 202886883<br \/> BARREL_SHIFT: work time 277071<br \/> D_CACHE: work time 13947881<br \/> I_CACHE: work time 30481681<br \/> The End<\/p>\n<p>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 868, Slice Registers 582, F7 Muxes 108, Slice 304, LUT as Logic 765, LUT as Memory 103<\/p>\n<p>TEST 2:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache false<br \/> Enable Exeption false<br \/> Use Memory Management false<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter true<br \/> Enable Floating Point Unit NONE<br \/> Enable Integer Miltiplier NONE<br \/> Enable Integer Divider false<br \/> Enable Additional Machine Status Register Instructions false<br \/> Enable Pattern Comparator false<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size DEFAULT<\/p>\n<p>Hello World<br \/> INIT_: work time 2308<br \/> INIT_F: work time 195152<br \/> INIT_DIV: work time 2565<br \/> MUL32: work time 18012905<br \/> MUL32F: work time 123429725<br \/> ADD__: work time 3639130<br \/> ADD_F: work time 80447398<br \/> INT_DIV: work time 106795466<br \/> INT_DIV_F: work time 123474053<br \/> BARREL_SHIFT: work time 52946<br \/> D_CACHE: work time 13691881<br \/> I_CACHE: work time 16794784<br \/> The End<\/p>\n<p>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 1118, Slice Registers 718, F7 Muxes 108, Slice 373, LUT as Logic 1015, LUT as Memory 103<\/p>\n<p>TEST 3:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache false<br \/> Enable Exeption false<br \/> Use Memory Management false<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter true<br \/> Enable Floating Point Unit NONE<br \/> Enable Integer Miltiplier NONE<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions false<br \/> Enable Pattern Comparator false<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size DEFAULT<\/p>\n<p>Hello World<br \/> INIT_: work time 2308<br \/> INIT_F: work time 195152<br \/> INIT_DIV: work time 2565<br \/> MUL32: work time 18012905<br \/> MUL32F: work time 123429725<br \/> ADD__: work time 3639130<br \/> ADD_F: work time 80447398<br \/> INT_DIV: work time 12572442<br \/> INT_DIV_F: work time 123474053<br \/> BARREL_SHIFT: work time 52946<br \/> D_CACHE: work time 13691881<br \/> I_CACHE: work time 16794784<br \/> The End<\/p>\n<p>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 1234, Slice Registers 835, F7 Muxes 108, Slice 407, LUT as Logic 1130, LUT as Memory 104<\/p>\n<p>TEST 4:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache false<br \/> Enable Exeption false<br \/> Use Memory Management false<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter true<br \/> Enable Floating Point Unit BASIC<br \/> Enable Integer Miltiplier NONE<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions false<br \/> Enable Pattern Comparator false<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size DEFAULT<\/p>\n<p>Hello World<br \/> INIT_: work time 2308<br \/> INIT_F: work time 31353<br \/> INIT_DIV: work time 2565<br \/> MUL32: work time 18012905<br \/> MUL32F: work time 5681067<br \/> ADD__: work time 3639130<br \/> ADD_F: work time 5681005<br \/> INT_DIV: work time 12572442<br \/> INT_DIV_F: work time 11894061<br \/> BARREL_SHIFT: work time 52946<br \/> D_CACHE: work time 13691881<br \/> I_CACHE: work time 4687688<br \/> The End<\/p>\n<p>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 1784, Slice Registers 1265, F7 Muxes 113, Slice 556, LUT as Logic 1670, LUT as Memory 114, DSPs 2<\/p>\n<p>\u043a\u043e\u043c\u0430\u043d\u0434\u044b \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430:<br \/> mb-gcc -Wall -O0 -g3 -c -fmessage-length=0 -MT&#187;src\/helloworld.o&#187; -I..\/..\/test_microblaze_bsp\/microblaze_0\/include -mlittle-endian -mxl-barrel-shift -mno-xl-soft-div -mcpu=v11.0 -mxl-soft-mul -mhard-float -Wl,&#8212;no-relax -ffunction-sections -fdata-sections -MMD -MP -MF&#187;src\/helloworld.d&#187; -MT&#187;src\/helloworld.o&#187; -o &#171;src\/helloworld.o&#187; &#171;..\/src\/helloworld.c&#187;<\/p>\n<p>mb-gcc -Wl,-T -Wl,..\/src\/lscript.ld -L..\/..\/test_microblaze_bsp\/microblaze_0\/lib -mlittle-endian -mxl-barrel-shift -mno-xl-soft-div -mcpu=v11.0 -mxl-soft-mul -mhard-float -Wl,&#8212;no-relax -Wl,&#8212;gc-sections -o &#171;test_microblaze.elf&#187;  .\/src\/helloworld.o .\/src\/platform.o   -Wl,&#8212;start-group,-lxil,-lgcc,-lc,&#8212;end-group<\/p>\n<p>TEST 5:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache false<br \/> Enable Exeption false<br \/> Use Memory Management false<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter true<br \/> Enable Floating Point Unit BASIC<br \/> Enable Integer Miltiplier MUL32<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions false<br \/> Enable Pattern Comparator false<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size DEFAULT<\/p>\n<p>Hello World<br \/> INIT_: work time 2308<br \/> INIT_F: work time 31353<br \/> INIT_DIV: work time 2565<br \/> MUL32: work time 4149505<br \/> MUL32F: work time 5681067<br \/> ADD__: work time 3639130<br \/> ADD_F: work time 5681005<br \/> INT_DIV: work time 12572442<br \/> INT_DIV_F: work time 11894061<br \/> BARREL_SHIFT: work time 52946<br \/> D_CACHE: work time 5890256<br \/> I_CACHE: work time 4399688<br \/> The End<\/p>\n<p>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 1798, Slice Registers 1285, F7 Muxes 113, Slice 586, LUT as Logic 1683, LUT as Memory 115, DSPs 5<\/p>\n<p>TEST 6:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache false<br \/> Enable Exeption false<br \/> Use Memory Management false<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter true<br \/> Enable Floating Point Unit EXTENDED<br \/> Enable Integer Miltiplier MUL64<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions false<br \/> Enable Pattern Comparator false<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size DEFAULT<\/p>\n<p>Hello World<br \/> INIT_: work time 2308<br \/> INIT_F: work time 6405<br \/> INIT_DIV: work time 2565<br \/> MUL32: work time 4149505<br \/> MUL32F: work time 5681067<br \/> ADD__: work time 3639130<br \/> ADD_F: work time 5681005<br \/> INT_DIV: work time 12572442<br \/> INT_DIV_F: work time 11894061<br \/> BARREL_SHIFT: work time 52946<br \/> D_CACHE: work time 5890256<br \/> I_CACHE: work time 1807944<br \/> The End<\/p>\n<p>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 2184, Slice Registers 1620, F7 Muxes 112, Slice 698, LUT as Logic 2073, LUT as Memory 111, DSPs 6<\/p>\n<p>TEST 7:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache false<br \/> Enable Exeption false<br \/> Use Memory Management false<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter true<br \/> Enable Floating Point Unit EXTENDED<br \/> Enable Integer Miltiplier MUL64<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions true<br \/> Enable Pattern Comparator true<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size DEFAULT<\/p>\n<p>Hello World<br \/> INIT_: work time 2308<br \/> INIT_F: work time 6405<br \/> INIT_DIV: work time 2565<br \/> MUL32: work time 4149505<br \/> MUL32F: work time 5681067<br \/> ADD__: work time 3639130<br \/> ADD_F: work time 5681005<br \/> INT_DIV: work time 12572442<br \/> INT_DIV_F: work time 11894061<br \/> BARREL_SHIFT: work time 52946<br \/> D_CACHE: work time 5890256<br \/> I_CACHE: work time 1807944<br \/> The End<\/p>\n<p>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 2239, Slice Registers 1626, F7 Muxes 112, Slice 718, LUT as Logic 2128, LUT as Memory 111, DSPs 6<\/p>\n<p>TEST 8:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache true (4kb for each)<br \/> Enable Exeption false<br \/> Use Memory Management false<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter true<br \/> Enable Floating Point Unit EXTENDED<br \/> Enable Integer Miltiplier MUL64<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions true<br \/> Enable Pattern Comparator true<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size DEFAULT<\/p>\n<p>\u0441  \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 disable_caches();<br \/> Hello World<br \/> INIT_: work time 2310<br \/> INIT_F: work time 6406<br \/> INIT_DIV: work time 2566<br \/> MUL32: work time 4149506<br \/> MUL32F: work time 5681069<br \/> ADD__: work time 3639131<br \/> ADD_F: work time 5681006<br \/> INT_DIV: work time 12572443<br \/> INT_DIV_F: work time 11894062<br \/> BARREL_SHIFT: work time 52947<br \/> D_CACHE: work time 5890257<br \/> I_CACHE: work time 1807945<br \/> The End<\/p>\n<p>\u0441 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 disable_caches();<\/p>\n<p>Hello World<br \/> INIT_: work time 2310<br \/> INIT_F: work time 6406<br \/> INIT_DIV: work time 2566<br \/> MUL32: work time 4149506<br \/> MUL32F: work time 5681069<br \/> ADD__: work time 3639131<br \/> ADD_F: work time 5681006<br \/> INT_DIV: work time 12572443<br \/> INT_DIV_F: work time 11894062<br \/> BARREL_SHIFT: work time 52947<br \/> D_CACHE: work time 5890257<br \/> I_CACHE: work time 1807945<br \/> The End<\/p>\n<p>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 2682, Slice Registers 1963, F7 Muxes 112, Slice 879, LUT as Logic 2494, LUT as Memory 188, BLOCK RAM 4, DSPs 6<\/p>\n<p>TEST 9:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache true (4kb for each)<br \/> Enable Exeption true<br \/> Use Memory Management true<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter true<br \/> Enable Floating Point Unit EXTENDED<br \/> Enable Integer Miltiplier MUL64<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions true<br \/> Enable Pattern Comparator true<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size DEFAULT<\/p>\n<p>Hello World<br \/> INIT_: work time 2310<br \/> INIT_F: work time 6406<br \/> INIT_DIV: work time 2566<br \/> MUL32: work time 4149506<br \/> MUL32F: work time 5681069<br \/> ADD__: work time 3639131<br \/> ADD_F: work time 5681006<br \/> INT_DIV: work time 12572443<br \/> INT_DIV_F: work time 11894062<br \/> BARREL_SHIFT: work time 52947<br \/> D_CACHE: work time 5890257<br \/> I_CACHE: work time 1807945<br \/> The End<\/p>\n<p>\u0423\u043f\u0430\u043b\u0438 \u0442\u0430\u0439\u043c\u0438\u043d\u0433\u0438 \u043c\u0435\u0436\u0434\u0443 \u043a\u044d\u0448\u0435\u043c \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438 \u0438 LMB \u043f\u0430\u043c\u044f\u0442\u044c.<\/p>\n<p>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 3709, Slice Registers 3224, F7 Muxes 160, F8 Muxes 6, Slice 1344, LUT as Logic 3518, LUT as Memory 191,BLOCK RAM 5, DSPs 6<\/p>\n<p>TEST 10:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache true (4kb for each)<br \/> Enable Exeption true<br \/> Use Memory Management true<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter true<br \/> Enable Floating Point Unit EXTENDED<br \/> Enable Integer Miltiplier MUL64<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions true<br \/> Enable Pattern Comparator true<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size DEFAULT<\/p>\n<p>Hello World<br \/> INIT_: work time 2310<br \/> INIT_F: work time 6406<br \/> INIT_DIV: work time 2566<br \/> MUL32: work time 4149506<br \/> MUL32F: work time 5681069<br \/> ADD__: work time 3639131<br \/> ADD_F: work time 5681006<br \/> INT_DIV: work time 12572443<br \/> INT_DIV_F: work time 11894062<br \/> BARREL_SHIFT: work time 52947<br \/> D_CACHE: work time 5890257<br \/> I_CACHE: work time 1807945<br \/> The End<\/p>\n<p>\u0414\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043a\u044d\u0448\u0430 \u0432\u043a\u043b\u044e\u0447\u0438\u043b \u0433\u0430\u043b\u043e\u0447\u043a\u0443 Use Distributed RAM for Tags. \u0422\u0430\u0439\u043c\u0438\u043d\u0433\u0438 \u0432\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438\u0441\u044c<br \/> \u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 4054, Slice Registers 3265, F7 Muxes 160, F8 Muxes 6, Slice 1473, LUT as Logic 3599, LUT as Memory 455,BLOCK RAM 3, DSPs 6<\/p>\n<p>TEST 11:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache true (4kb for each)<br \/> Enable Exeption true<br \/> Use Memory Management true<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter true<br \/> Enable Floating Point Unit EXTENDED<br \/> Enable Integer Miltiplier MUL64<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions true<br \/> Enable Pattern Comparator true<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache true<br \/> Branch Target Cache Size 8 ENTRIES<\/p>\n<p>Hello World<br \/> INIT_: work time 2054<br \/> INIT_F: work time 6150<br \/> INIT_DIV: work time 2310<br \/> MUL32: work time 4022131<br \/> MUL32F: work time 5553569<br \/> ADD__: work time 3511382<br \/> ADD_F: work time 5553631<br \/> INT_DIV: work time 12444694<br \/> INT_DIV_F: work time 11766313<br \/> BARREL_SHIFT: work time 52197<br \/> D_CACHE: work time 5378758<br \/> I_CACHE: work time 1775946<br \/> The End<\/p>\n<p>\u0422\u0430\u0439\u043c\u0438\u043d\u0433\u0438 \u0443\u043f\u0430\u043b\u0438, \u0441\u0438\u043b\u044c\u043d\u0435\u0435 \u0447\u0435\u043c \u0432 \u043f\u0440\u043e\u0448\u043b\u044b\u0439 \u0440\u0430\u0437. \u0413\u0434\u0435\u0442\u043e \u0432\u043d\u0443\u0442\u0440\u0438 \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437\u0430, \u043c\u0435\u0436\u0434\u0443 \u043f\u0430\u043c\u044f\u0442\u044f\u043c\u0438. &#171;\u0442\u043e\u0442\u0430\u043b \u043d\u0435\u0433\u0430\u0442\u0438\u0432 \u0441\u043b\u044d\u043a&#187; == -1307<br \/> \u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 4296, Slice Registers 3488, F7 Muxes 165, F8 Muxes 6, Slice 1572, LUT as Logic 3775, LUT as Memory 521, BLOCK RAM 3, DSPs 6<\/p>\n<p>TEST 12:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache true (4kb for each)<br \/> Enable Exeption true<br \/> Use Memory Management true<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter true<br \/> Enable Floating Point Unit EXTENDED<br \/> Enable Integer Miltiplier MUL64<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions true<br \/> Enable Pattern Comparator true<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache true<br \/> Branch Target Cache Size 512 ENTRIES<\/p>\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 Line Length \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043a\u044d\u0448\u0430 \u043f\u043e\u0434\u043d\u044f\u043b \u0441 4 \u0434\u043e 8.<\/p>\n<p>Hello World<br \/> INIT_: work time 2054<br \/> INIT_F: work time 6150<br \/> INIT_DIV: work time 2310<br \/> MUL32: work time 4021757<br \/> MUL32F: work time 5553320<br \/> ADD__: work time 3511382<br \/> ADD_F: work time 5553257<br \/> INT_DIV: work time 12444694<br \/> INT_DIV_F: work time 11766313<br \/> BARREL_SHIFT: work time 51823<br \/> D_CACHE: work time 5378134<br \/> I_CACHE: work time 1775946<br \/> The End<\/p>\n<p>\u0422\u0430\u0439\u043c\u0438\u043d\u0433\u0438 \u0443\u043f\u0430\u043b\u0438, \u043d\u043e \u043c\u0435\u043d\u044c\u0448\u0435 \u0447\u0435\u043c \u0432 \u043f\u0440\u043e\u0448\u043b\u044b\u0439 \u0440\u0430\u0437.  &#171;\u0442\u043e\u0442\u0430\u043b \u043d\u0435\u0433\u0430\u0442\u0438\u0432 \u0441\u043b\u044d\u043a&#187; == -594<br \/> \u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 4125, Slice Registers 3391, F7 Muxes 166, F8 Muxes 6, Slice 1497, LUT as Logic 3768, LUT as Memory 357, BLOCK RAM 3, DSPs 6<\/p>\n<p>TEST 13:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache true (4kb for each)<br \/> Enable Exeption true<br \/> Use Memory Management true<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter true<br \/> Enable Floating Point Unit EXTENDED<br \/> Enable Integer Miltiplier MUL64<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions true<br \/> Enable Pattern Comparator true<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache true<br \/> Branch Target Cache Size 512 ENTRIES<\/p>\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 Line Length \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043a\u044d\u0448\u0430 \u043f\u043e\u0434\u043d\u044f\u043b \u0434\u043e 16.<\/p>\n<p>\u0434\u043b\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 &#171;Enable Exeption&#187; \u0432\u043a\u043b\u044e\u0447\u0438\u043b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0443\u043d\u043a\u0442\u044b:<br \/> Enable Floating Point Unit Exceptions<br \/> Enable Integer Divide Exception<br \/> Enable Instruction-side AXI Exeption<br \/> Enable Data-side AXI Exception<br \/> Enable Illegal Instruction Exeption<br \/> Enable Unaligned Data Exeption<br \/> Generate Illegal Instruction for NULL Instruction<\/p>\n<p>Hello World<br \/> INIT_: work time 2054<br \/> INIT_F: work time 6150<br \/> INIT_DIV: work time 2310<br \/> MUL32: work time 4021757<br \/> MUL32F: work time 5553320<br \/> ADD__: work time 3511382<br \/> ADD_F: work time 5553315<br \/> INT_DIV: work time 12444694<br \/> INT_DIV_F: work time 11766563<br \/> BARREL_SHIFT: work time 51823<br \/> D_CACHE: work time 5378134<br \/> I_CACHE: work time 1775946<br \/> The End<\/p>\n<p>\u0422\u0430\u0439\u043c\u0438\u043d\u0433\u0438 \u0443\u043f\u0430\u043b\u0438.  &#171;\u0442\u043e\u0442\u0430\u043b \u043d\u0435\u0433\u0430\u0442\u0438\u0432 \u0441\u043b\u044d\u043a&#187; == -964<br \/> \u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 4098, Slice Registers 3500, F7 Muxes 182, F8 Muxes 7, Slice 1439, LUT as Logic 3794, LUT as Memory 304, BLOCK RAM 4, DSPs 6<\/p>\n<p>\u0412\u0440\u0435\u043c\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 7 \u043c\u0438\u043d\u0443\u0442. \u0445\u043e\u0442\u044f \u043a\u0430\u0436\u0435\u0442\u0441\u044f \u0434\u043e\u043b\u044c\u0448\u0435. \u041f\u0435\u0440\u0435\u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437\u0430 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u0435\u0449\u0435 3 \u043c\u0438\u043d\u0443\u0442\u044b, \u0442\u0430\u043a \u0447\u0442\u043e \u0432\u0441\u0435\u0433\u043e 10 \u043c\u0438\u043d\u0443\u0442 \u0432\u0440\u0435\u043c\u044f \u0441\u0431\u043e\u0440\u043a\u0438. \u043d\u0430 \u044d\u0442\u043e\u043c \u0442\u0435\u0441\u0442\u0435.<\/p>\n<p>TEST 14:<\/p>\n<p>Select Processor Implementation 64 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache true (4kb for each)<br \/> Enable Exeption true<br \/> Use Memory Management true<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter true<br \/> Enable Floating Point Unit EXTENDED<br \/> Enable Integer Miltiplier MUL64<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions true<br \/> Enable Pattern Comparator true<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache true<br \/> Branch Target Cache Size 512 ENTRIES<\/p>\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 Line Length \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043a\u044d\u0448\u0430 16.<\/p>\n<p>\u0434\u043b\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 &#171;Enable Exeption&#187; \u0432\u043a\u043b\u044e\u0447\u0438\u043b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0443\u043d\u043a\u0442\u044b:<br \/> Enable Floating Point Unit Exceptions<br \/> Enable Integer Divide Exception<br \/> Enable Instruction-side AXI Exeption<br \/> Enable Data-side AXI Exception<br \/> Enable Illegal Instruction Exeption<br \/> Enable Unaligned Data Exeption<br \/> Generate Illegal Instruction for NULL Instruction<\/p>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 \u043d\u0435\u0442. \u0432\u0438\u0434\u0438\u043c\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0432 \u0431\u0438\u0442\u043d\u043e\u0441\u0442\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b.<\/p>\n<p>\u041d\u0430 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 100 \u041c\u0413\u0446 \u0442\u0430\u0439\u043c\u0438\u043d\u0433\u0438 \u0443\u043f\u0430\u043b\u0438.  &#171;\u0442\u043e\u0442\u0430\u043b \u043d\u0435\u0433\u0430\u0442\u0438\u0432 \u0441\u043b\u044d\u043a&#187; == -1912, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0442\u0435\u0441\u0442\u0430 \u043f\u043e\u043d\u0438\u0436\u0430\u044e \u0447\u0430\u0441\u0442\u043e\u0442\u0443 \u0434\u043e 50 \u041c\u0413\u0446 \u0438 \u0432\u043e\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442. \u0422\u0430\u0439\u043c\u0438\u043d\u0433\u0438 \u0432\u0441\u0442\u0430\u043b\u0438.<br \/> \u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 6602, Slice Registers 4738, F7 Muxes 220, F8 Muxes 5, Slice 2188, LUT as Logic 6176, LUT as Memory 426, BLOCK RAM 5, DSPs 13 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u043f\u0440\u0438 100 \u041c\u0413\u0446<br \/> Slice LUTs 6577, Slice Registers 4595, F7 Muxes 220, F8 Muxes 5, Slice 2157, LUT as Logic 6157, LUT as Memory 426, BLOCK RAM 5, DSPs 13 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u043f\u0440\u0438 50 \u041c\u0413\u0446<\/p>\n<p>TEST 15:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache false<br \/> Enable Exeption true<br \/> Use Memory Management true<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter true<br \/> Enable Floating Point Unit EXTENDED<br \/> Enable Integer Miltiplier MUL64<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions true<br \/> Enable Pattern Comparator true<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size 512 ENTRIES<\/p>\n<p>\u0434\u043b\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 &#171;Enable Exeption&#187; \u0432\u043a\u043b\u044e\u0447\u0438\u043b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0443\u043d\u043a\u0442\u044b:<br \/> Enable Floating Point Unit Exceptions<br \/> Enable Integer Divide Exception<br \/> Enable Instruction-side AXI Exeption<br \/> Enable Data-side AXI Exception<br \/> Enable Illegal Instruction Exeption<br \/> Enable Unaligned Data Exeption<br \/> Generate Illegal Instruction for NULL Instruction<\/p>\n<p>Hello World<br \/> INIT_: work time 2308<br \/> INIT_F: work time 6405<br \/> INIT_DIV: work time 2565<br \/> MUL32: work time 4149505<br \/> MUL32F: work time 5681068<br \/> ADD__: work time 3639130<br \/> ADD_F: work time 5681062<br \/> INT_DIV: work time 12572442<br \/> INT_DIV_F: work time 11894311<br \/> BARREL_SHIFT: work time 52946<br \/> D_CACHE: work time 5890256<br \/> I_CACHE: work time 1807944<br \/> The End<\/p>\n<p>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 3099, Slice Registers 2671, F7 Muxes 171, F8 Muxes 6, Slice 1079, LUT as Logic 2987, LUT as Memory 112, BLOCK RAM 1, DSPs 6<\/p>\n<p>TEST 16:<\/p>\n<p>\u0412\u0441\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043e\u0441\u0442\u0430\u043b\u0438\u0441\u044c \u043f\u0440\u0435\u0436\u043d\u0438\u043c\u0438, \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0432\u0438\u0434\u043d\u043e \u043d\u0438\u0436\u0435. \u043a\u0440\u043e\u043c\u0435 \u043e\u0434\u043d\u043e\u0433\u043e, \u044f \u043f\u043e\u0434\u043d\u044f\u043b \u0447\u0430\u0441\u0442\u043e\u0442\u0443 \u0434\u043e 200 \u041c\u0413\u0446, \u0438 \u0435\u0441\u043b\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u044d\u0442\u043e\u0433\u043e \u0442\u0435\u0441\u0442\u0430(16 \u043f\u043e \u0441\u0447\u0435\u0442\u0443) \u0431\u0443\u0434\u0443\u0442 \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u044b\u043c\u0438 \u0441 \u0442\u0435\u0441\u0442\u043e\u043c 15(\u043f\u0440\u0435\u0440\u044b\u0434\u0443\u0449\u0438\u043c), \u0437\u043d\u0430\u0447\u0438\u0442 \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0432\u044b\u0432\u043e\u0434 \u0447\u0442\u043e \u0432\u0441\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043b\u0438\u043d\u0435\u0439\u043d\u043e \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0435\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0442\u0430\u043a\u0442\u0438\u0440\u0443\u044e\u0449\u0435\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u044b. \u0422\u0430\u043a \u043a\u0430\u043a \u0438 \u0442\u0430\u0439\u043c\u0435\u0440 \u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u043d\u0430 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 \u0438 \u043e\u043d\u0438 \u043d\u0435 \u0440\u0430\u0437\u043b\u0438\u0447\u0430\u044e\u0442 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0442\u0430\u043a\u0442\u0430 \u043e\u043d\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u0430\u044e\u0442 \u043b\u0438\u0448\u044c \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0442\u0430\u043a\u0442\u0438\u0440\u0443\u044e\u0449\u0435\u0433\u0442\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430. \u041d\u043e \u0435\u0441\u043b\u0438 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0431\u0443\u0434\u0443\u0442 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u0442\u043b\u0438\u0447\u0430\u0442\u044c\u0441\u044f \u0437\u043d\u0430\u0447\u0438\u0442 \u0432 \u041c\u0438\u043a\u0440\u043e\u0411\u043b\u0435\u0439\u0437\u0435 \u0438\u043c\u0435\u044e\u0442\u0441\u044f \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u044b \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b\u0435 \u0438 \u043d\u0430 \u043f\u0440\u044f\u043c\u0443\u044e \u043d\u0435 \u0437\u0430\u0432\u0438\u0441\u044f\u0442 \u043e\u0442 \u0442\u0430\u043a\u0442\u0438\u0440\u0443\u044e\u0449\u0435\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430.<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache false<br \/> Enable Exeption true<br \/> Use Memory Management true<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter true<br \/> Enable Floating Point Unit EXTENDED<br \/> Enable Integer Miltiplier MUL64<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions true<br \/> Enable Pattern Comparator true<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size 512 ENTRIES<\/p>\n<p>\u0434\u043b\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 &#171;Enable Exeption&#187; \u0432\u043a\u043b\u044e\u0447\u0438\u043b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0443\u043d\u043a\u0442\u044b:<br \/> Enable Floating Point Unit Exceptions<br \/> Enable Integer Divide Exception<br \/> Enable Instruction-side AXI Exeption<br \/> Enable Data-side AXI Exception<br \/> Enable Illegal Instruction Exeption<br \/> Enable Unaligned Data Exeption<br \/> Generate Illegal Instruction for NULL Instruction<\/p>\n<p>Hello World<br \/> INIT_: work time 2308<br \/> INIT_F: work time 6405<br \/> INIT_DIV: work time 2565<br \/> MUL32: work time 4149505<br \/> MUL32F: work time 5681068<br \/> ADD__: work time 3639130<br \/> ADD_F: work time 5681062<br \/> INT_DIV: work time 12572442<br \/> INT_DIV_F: work time 11894311<br \/> BARREL_SHIFT: work time 52946<br \/> D_CACHE: work time 5890256<br \/> I_CACHE: work time 1807944<br \/> The End<\/p>\n<p>\u0422\u0430\u0439\u043c\u0438\u043d\u0433\u0438 \u0443\u043f\u0430\u043b\u0438. &#171;\u0442\u043e\u0442\u0430\u043b \u043d\u0435\u0433\u0430\u0442\u0438\u0432 \u0441\u043b\u044d\u043a&#187; == -10307<\/p>\n<p>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 3170, Slice Registers 2779, F7 Muxes 171, F8 Muxes 6, Slice 1041, LUT as Logic 3058, LUT as Memory 112, BLOCK RAM 1, DSPs 6<\/p>\n<p>TEST 17:<\/p>\n<p>\u0415\u0449\u0435 \u0440\u0430\u0437 \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u044e \u0442\u043e\u0442 \u0436\u0435 \u0441\u0430\u043c\u044b\u0439 \u0442\u0435\u0441\u0442 \u0447\u0442\u043e \u0438 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0435 \u0440\u0430\u0437\u044b, \u043d\u043e \u0441 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u0439 \u0432 50 \u041c\u0413\u0446. \u0412\u0430\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u044c \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u044d\u0442\u0438\u0445 \u0442\u0440\u0435\u0445 \u0442\u0435\u0441\u0442\u043e\u0432. \u042f \u043e\u0416\u0438\u0434\u0430\u044e \u0447\u0442\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0442\u0435\u0441\u0442\u043e\u0432 \u0431\u0443\u0434\u0443\u0442 \u0441\u043e\u043f\u043e\u0441\u0442\u043e\u0432\u0438\u043c\u044b \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439. \u0415\u0441\u043b\u0438 \u043d\u0435\u0442 \u0442\u043e \u044d\u0442\u043e \u043f\u0440\u0438\u0432\u043b\u0435\u0447\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435.<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache false<br \/> Enable Exeption true<br \/> Use Memory Management true<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter true<br \/> Enable Floating Point Unit EXTENDED<br \/> Enable Integer Miltiplier MUL64<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions true<br \/> Enable Pattern Comparator true<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size 512 ENTRIES<\/p>\n<p>\u0434\u043b\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 &#171;Enable Exeption&#187; \u0432\u043a\u043b\u044e\u0447\u0438\u043b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0443\u043d\u043a\u0442\u044b:<br \/> Enable Floating Point Unit Exceptions<br \/> Enable Integer Divide Exception<br \/> Enable Instruction-side AXI Exeption<br \/> Enable Data-side AXI Exception<br \/> Enable Illegal Instruction Exeption<br \/> Enable Unaligned Data Exeption<br \/> Generate Illegal Instruction for NULL Instruction<\/p>\n<p>Hello World<br \/> INIT_: work time 2308<br \/> INIT_F: work time 6405<br \/> INIT_DIV: work time 2565<br \/> MUL32: work time 4149505<br \/> MUL32F: work time 5681068<br \/> ADD__: work time 3639130<br \/> ADD_F: work time 5681062<br \/> INT_DIV: work time 12572442<br \/> INT_DIV_F: work time 11894311<br \/> BARREL_SHIFT: work time 52946<br \/> D_CACHE: work time 5890256<br \/> I_CACHE: work time 1807944<br \/> The End<\/p>\n<p>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 3095, Slice Registers 2613, F7 Muxes 171, F8 Muxes 6, Slice 1104, LUT as Logic 2983, LUT as Memory 112, BLOCK RAM 1, DSPs 6<\/p>\n<p>TEST 18:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache false<br \/> Enable Exeption false<br \/> Use Memory Management false<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter false<br \/> Enable Floating Point Unit NONE<br \/> Enable Integer Miltiplier NONE<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions false<br \/> Enable Pattern Comparator false<br \/> Enable Reversed Load\/Store and Swap Instructions true<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size DEFAULT<\/p>\n<p>Hello World<br \/> INIT_: work time 2564<br \/> INIT_F: work time 350733<br \/> INIT_DIV: work time 2821<br \/> MUL32: work time 18523530<br \/> MUL32F: work time 233098629<br \/> ADD__: work time 4149755<br \/> ADD_F: work time 160816062<br \/> INT_DIV: work time 13083005<br \/> INT_DIV_F: work time 202886883<br \/> BARREL_SHIFT: work time 277071<br \/> D_CACHE: work time 13947881<br \/> I_CACHE: work time 30481681<br \/> The End<\/p>\n<p>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 1031, Slice Registers 1006, F7 Muxes 108, Slice 400, LUT as Logic 927, LUT as Memory 103<\/p>\n<p>TEST 19:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache false<br \/> Enable Exeption false<br \/> Use Memory Management false<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter false<br \/> Enable Floating Point Unit BASIC<br \/> Enable Integer Miltiplier NONE<br \/> Enable Integer Divider false<br \/> Enable Additional Machine Status Register Instructions false<br \/> Enable Pattern Comparator false<br \/> Enable Reversed Load\/Store and Swap Instructions &#171;\u043d\u0435 \u043f\u043e\u043c\u043d\u044e \u043a\u0430\u043a\u043e\u0435 \u0431\u044b\u043b\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435&#187;<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size DEFAULT<\/p>\n<p>Hello World<br \/> INIT_: work time 2564<br \/> INIT_F: work time 78286<br \/> INIT_DIV: work time 2821<br \/> MUL32: work time 18523530<br \/> MUL32F: work time 6191692<br \/> ADD__: work time 4149755<br \/> ADD_F: work time 6191630<br \/> INT_DIV: work time 107306028<br \/> INT_DIV_F: work time 12404624<br \/> BARREL_SHIFT: work time 277071<br \/> D_CACHE: work time 13947881<br \/> I_CACHE: work time 10377677<br \/> The End<\/p>\n<p>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 1541, Slice Registers 1320, F7 Muxes 114, Slice 558, LUT as Logic 1427, LUT as Memory 114, DSPs 2<\/p>\n<p>TEST 20:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache false<br \/> Enable Exeption false<br \/> Use Memory Management false<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter false<br \/> Enable Floating Point Unit NONE<br \/> Enable Integer Miltiplier MUL32<br \/> Enable Integer Divider false<br \/> Enable Additional Machine Status Register Instructions false<br \/> Enable Pattern Comparator false<br \/> Enable Reversed Load\/Store and Swap Instructions false<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size DEFAULT<\/p>\n<p>Hello World<br \/> INIT_: work time 2564<br \/> INIT_F: work time 256899<br \/> INIT_DIV: work time 2821<br \/> MUL32: work time 4660130<br \/> MUL32F: work time 180739461<br \/> ADD__: work time 4149755<br \/> ADD_F: work time 150674185<br \/> INT_DIV: work time 107306028<br \/> INT_DIV_F: work time 190821576<br \/> BARREL_SHIFT: work time 277071<br \/> D_CACHE: work time 6146256<br \/> I_CACHE: work time 23077716<br \/> The End<\/p>\n<p>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 984, Slice Registers 909, F7 Muxes 108, Slice 386, LUT as Logic 881, LUT as Memory 103, DSPs 3<\/p>\n<p>TEST 21:<\/p>\n<p>Select Processor Implementation 32 bits<br \/> Enable MicroBlaze Debug Module Interface false<br \/> Use Instruction and Data Cache false<br \/> Enable Exeption true<br \/> Use Memory Management false<br \/> Enable Discrete Ports false<br \/> Enable Barrel Shifter false<br \/> Enable Floating Point Unit NONE<br \/> Enable Integer Miltiplier NONE<br \/> Enable Integer Divider true<br \/> Enable Additional Machine Status Register Instructions false<br \/> Enable Pattern Comparator false<br \/> Enable Reversed Load\/Store and Swap Instructions false<br \/> Select Extendet Addresing NONE<br \/> Enable Branch Target Cache false<br \/> Branch Target Cache Size DEFAULT<\/p>\n<p>Hello World<br \/> INIT_: work time 2564<br \/> INIT_F: work time 350733<br \/> INIT_DIV: work time 2821<br \/> MUL32: work time 18523530<br \/> MUL32F: work time 233098629<br \/> ADD__: work time 4149755<br \/> ADD_F: work time 160816062<br \/> INT_DIV: work time 13083005<br \/> INT_DIV_F: work time 202886883<br \/> BARREL_SHIFT: work time 277071<br \/> D_CACHE: work time 13947881<br \/> I_CACHE: work time 30481681<br \/> The End<\/p>\n<p>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041f\u041b\u0418\u0421 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437:<br \/> Slice LUTs 1031, Slice Registers 1006, F7 Muxes 108, Slice 400, LUT as Logic 927, LUT as Memory 104<\/p>\n<\/div>\n<\/details>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><\/p>\n<div class=\"tm-article-poll-container\"><!--[--><\/p>\n<div class=\"tm-article-poll tm-article-poll_variant-bordered\">\n<div class=\"tm-notice tm-notice_positive tm-article-poll__notice\"><!----><\/p>\n<div class=\"tm-notice__inner\"><!----><\/p>\n<div class=\"tm-notice__content\" data-test-id=\"notice-content\"><!--[--><span>\u0422\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u043c\u043e\u0433\u0443\u0442 \u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u043e\u043f\u0440\u043e\u0441\u0435. <a rel=\"nofollow\" href=\"\/kek\/v1\/auth\/habrahabr\/?back=\/ru\/articles\/940848\/&#038;hl=ru\">\u0412\u043e\u0439\u0434\u0438\u0442\u0435<\/a>, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430.<\/span><!--]--><\/div>\n<\/div>\n<\/div>\n<p><!--[--><\/p>\n<div class=\"tm-article-poll__header\">\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u043b\u0438 \u0432\u044b MicroBlaze \u0432 \u0441\u0432\u043e\u0438\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445?<\/div>\n<div class=\"tm-article-poll__answers\"><!--[--><\/p>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent tm-article-poll__answer-percent_winning\">60%<\/span><span class=\"tm-article-poll__answer-label\">\u0414\u0430<\/span><span class=\"tm-article-poll__answer-votes\">3<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress tm-article-poll__answer-progress_winning\" style=\"width: 60%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">20%<\/span><span class=\"tm-article-poll__answer-label\">\u041d\u0435\u0442<\/span><span class=\"tm-article-poll__answer-votes\">1<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 20%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">0%<\/span><span class=\"tm-article-poll__answer-label\">\u042f \u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0441\u044c ZYNQ<\/span><span class=\"tm-article-poll__answer-votes\">0<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 0%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">20%<\/span><span class=\"tm-article-poll__answer-label\">\u0414\u0440\u0443\u0433\u043e\u0435<\/span><span class=\"tm-article-poll__answer-votes\">1<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 20%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">0%<\/span><span class=\"tm-article-poll__answer-label\">\u0423\u0447\u043a\u0443\u0434\u0443\u043a \u0441 \u043d\u0438\u043c<\/span><span class=\"tm-article-poll__answer-votes\">0<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 0%\"><\/div>\n<\/div>\n<\/div>\n<p><!--]--><\/div>\n<div class=\"tm-article-poll__stats\"> \u041f\u0440\u043e\u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043b\u0438 5 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439.   \u0412\u043e\u0437\u0434\u0435\u0440\u0436\u0430\u043b\u0441\u044f 1 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c. <\/div>\n<p><!--]--><\/div>\n<p><!--]--><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/940848\/\"> https:\/\/habr.com\/ru\/articles\/940848\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width\"><\/figure>\n<p>\u0410 \u0447\u0442\u043e \u0432 \u043d\u0435\u043c \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u2026? \u0410 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0443\u0434\u0435\u043c \u043f\u0440\u0438\u0440\u043e\u0441\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u0442\u0435\u0445 \u0438\u043b\u0438 \u0438\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a. \u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u0431\u0443\u0434\u0443\u0442 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0438 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430. <\/p>\n<p><strong>\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/strong><\/p>\n<p>\u0418 \u0442\u0430\u043a, MicroBlaze \u2014 soft-\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u043e\u0435 \u044f\u0434\u0440\u043e, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u043e\u0435 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0435\u0439 Xilinx \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432 FPGA (<a href=\"https:\/\/habr.com\/ru\/companies\/quanttelecom\/articles\/768308\/\" rel=\"noopener noreferrer nofollow\">\u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u0442\u0443\u0442<\/a>). \u041f\u0440\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 SoC, MicroBlaze \u043c\u043e\u0436\u0435\u0442 \u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c. \u0418 \u043f\u0435\u0440\u0432\u043e\u0435 \u0441 \u0447\u0435\u043c \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043f\u0440\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 IP-\u044f\u0434\u0440\u0430 \u044d\u0442\u043e \u00ab\u0427\u0442\u043e \u0436\u0435 \u0442\u0430\u043c \u043d\u0430\u0442\u044b\u043a\u0430\u0442\u044c, \u0447\u0442\u043e\u0431\u044b \u0431\u044b\u043b\u043e \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0438 \u043d\u0435 \u0431\u0435\u0441\u0441\u043c\u044b\u0441\u043b\u0435\u043d\u043d\u043e?\u00bb. \u041a\u043e\u043d\u0435\u0447\u043d\u043e, \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0441\u0442\u044b, \u0445\u043e\u0440\u043e\u0448\u043e \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u044e\u0449\u0438\u0435\u0441\u044f \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u044f\u0434\u0440\u0435, \u043f\u0440\u0435\u043a\u0440\u0430\u0441\u043d\u043e \u0437\u043d\u0430\u044e\u0442 \u0447\u0442\u043e \u0438\u043c \u043d\u0443\u0436\u043d\u043e \u0438 \u0442\u0430\u043a\u043e\u0433\u043e \u0432\u043e\u043f\u0440\u043e\u0441\u0430 \u0443 \u043d\u0438\u0445 \u043d\u0435 \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u0435\u0442. \u041d\u043e \u0432\u0441\u0435 \u0436\u0435 \u044f \u0441\u043e\u0431\u0438\u0440\u0430\u044e\u0441\u044c \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u044c \u0441\u0442\u0435\u043f\u0435\u043d\u044c \u0432\u043b\u0438\u044f\u043d\u0438\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u043d\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430. <\/p>\n<p>\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u043d\u0435 \u0431\u0443\u0434\u0443 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043a\u0430\u043a \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 \u0441 MicroBlaze, \u0438 \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 SDK(\u044f \u0431\u0443\u0434\u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f Vivado 2019.1, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0435\u0449\u0435 \u043d\u0435\u0442 Vitis).<\/p>\n<p><strong>\u041f\u043b\u0430\u043d \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f<\/strong><\/p>\n<p>\u041d\u0430 \u0432\u0442\u043e\u0440\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 MicroBlaze \u0438\u043c\u0435\u044e\u0442\u0441\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u0430\u0440\u0438\u0444\u043c\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0447\u0438\u0441\u0435\u043b \u0441 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0435\u0439 \u0442\u043e\u0447\u043a\u043e\u0439. <\/p>\n<figure class=\"full-width\">\n<div><figcaption>\u0421\u043a\u0440\u0438\u043d \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 <\/figcaption><\/div>\n<\/figure>\n<p>\u0412 \u043f\u0435\u0440\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u0443\u0434\u0443 \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 \u0441 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u043c\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438. \u0412\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u044f \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0443 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0443 \u0438 \u0441\u0434\u0435\u043b\u0430\u044e \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435. <\/p>\n<p>\u0412 SDK \u044f \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u043c\u0435\u044e\u0442 \u043f\u0435\u0440\u0435\u043a\u043e\u0441 \u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u0443\u044e \u0441\u0442\u043e\u0440\u043e\u043d\u0443 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439, \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u044d\u0442\u043e \u0446\u0438\u043a\u043b \u043f\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0443 \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043e\u0434\u043d\u043e \u0438\u0437 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 &#8212; \u0441\u0443\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u0434\u0435\u043b\u0435\u043d\u0438\u0435, \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435, \u0441\u0434\u0432\u0438\u0433\u043e\u0432\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438, \u0442\u0430\u043a\u0436\u0435 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0435\u0439 \u0442\u043e\u0447\u043a\u043e\u0439. <\/p>\n<p>\u041e\u0446\u0435\u043d\u043a\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u0437\u0430 \u0441\u0447\u0435\u0442 \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 \u0442\u0430\u043a\u0442\u043e\u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u043a\u043b\u043e\u043a\u0430, \u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043d\u0430 8. \u0421\u0447\u0435\u0442\u0447\u0438\u043a \u0431\u0443\u0434\u0435\u0442 \u0441\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u043f\u0435\u0440\u0435\u0434 \u0442\u0435\u0441\u0442\u043e\u043c \u0438 \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0435\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044e.<\/p>\n<p><u>\u041a\u043e\u0434 \u0434\u043b\u044f SDK \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432 \u043a\u043e\u043d\u0446\u0435 \u0441\u0442\u0430\u0442\u044c\u0438.<\/u><\/p>\n<p>\u0412 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 Vivado \u044f \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b \u0432\u043e\u0442 \u0442\u0430\u043a\u043e\u0439 BlockDesign:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p>\u0414\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 MicroBlaze \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u043b\u043e\u0441\u044c 12 \u0442\u0435\u0441\u0442\u043e\u0432: <\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">INIT_<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f  \u0434\u0432\u0443\u0445 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0445 \u0446\u0435\u043b\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0445 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 1024 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430, \u0442\u0438\u043f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445  int32_t. \u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0434\u043b\u044f  \u043f\u0435\u0440\u0432\u043e\u0433\u043e -255:255, \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0434\u043b\u044f \u0432\u0442\u043e\u0440\u043e\u0433\u043e 0:63. \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432\u044b\u0431\u0438\u0440\u0430\u043b\u0438\u0441\u044c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0435  \u0434\u043b\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0445 \u0442\u0435\u0441\u0442\u043e\u0432. \u0412 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0430\u0441\u044c \u0441\u0443\u043c\u043c\u0430 \u0438  \u0431\u0438\u0442\u043e\u0432\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 XOR  \u0438 AND. <\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">INIT_F<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f  \u0434\u0432\u0443\u0445 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 1024 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430, \u0442\u0438\u043f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 &#8212; FLOAT. \u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u043e\u0431\u043e\u0438\u0445  \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u043f\u043e\u0440\u044f\u0434\u043a\u0430\u00a0 -16.0:16.0. \u0412  \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438\u0441\u044c \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f. <\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">INIT_DIV<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f  \u0434\u0432\u0443\u0445 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0445 \u0446\u0435\u043b\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0445 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 1024 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430, \u0442\u0438\u043f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445  int32_t. \u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0434\u043b\u044f  \u043f\u0435\u0440\u0432\u043e\u0433\u043e 2_000_000_000 \u043c\u0438\u043d\u0443\u0441 \u0438\u043d\u0434\u0435\u043a\u0441 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u043c\u0430\u0441\u0441\u0438\u0432\u0430; \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0434\u043b\u044f \u0432\u0442\u043e\u0440\u043e\u0433\u043e 2:257.  \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432\u044b\u0431\u0438\u0440\u0430\u043b\u0438\u0441\u044c \u0438\u0437 \u0441\u043e\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0433\u043e\u0442\u043e\u0432\u044b\u0445 \u0434\u043b\u044f \u0434\u0435\u043b\u0435\u043d\u0438\u044f. \u041f\u0435\u0440\u0432\u044b\u0439  \u043c\u0430\u0441\u0441\u0438\u0432 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u0447\u0438\u0441\u043b\u0430, \u0432\u0442\u043e\u0440\u043e\u0439 &#8212; \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0435. \u0412 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438  \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0430\u0441\u044c \u0441\u0443\u043c\u043c\u0430 \u0438 \u0432\u044b\u0447\u0438\u0442\u0430\u043d\u0438\u0435.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">MUL32<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0435\u0441\u0442,  \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0439 \u0441 \u0446\u0435\u043b\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c, \u0438\u0442\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442 \u043f\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0443 \u0438  \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442 \u0432 \u0430\u043a\u043a\u0443\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u043f\u0435\u0440\u0435\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0432 \u0432\u0438\u0434\u0435: mul_acc <em>=  op1[j]<\/em>op2[j]; \u0432 \u043a\u043e\u043d\u0446\u0435 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043f\u043e \u043e\u0434\u043d\u043e\u043c\u0443 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0443 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c  \u043c\u0430\u0441\u0441\u0438\u0432\u0435. \u00a0<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">MUL32F<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0435\u0441\u0442  \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u0435\u043d \u0442\u0435\u0441\u0442\u0443 MUL32, \u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 \u043c\u0430\u0441\u0441\u0438\u0432\u0430\u043c\u0438 \u0442\u0438\u043f\u0430 Float.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">ADD__<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0435\u0441\u0442, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0439  \u0441 \u0446\u0435\u043b\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c, \u0438\u0442\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442 \u043f\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0443 \u0438 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442 \u0432  \u0430\u043a\u043a\u0443\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0432 \u0432\u0438\u0434\u0435: add_acc += op1[j]+op2[j]; \u0432  \u043a\u043e\u043d\u0446\u0435 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043f\u043e \u043e\u0434\u043d\u043e\u043c\u0443 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0443 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u0435.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">ADD_F<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0435\u0441\u0442  \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u0435\u043d ADD, \u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 \u043c\u0430\u0441\u0441\u0438\u0432\u0430\u043c\u0438 \u0442\u0438\u043f\u0430 Float.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">INT_DIV<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0435\u0441\u0442,  \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0439 \u0441\u043e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u043c \u0446\u0435\u043b\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c \u0432 INIT_DIV,  \u0438\u0442\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442 \u043f\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0443 \u0438 \u0432 \u0430\u043a\u043a\u0443\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0434\u0435\u043b\u0435\u043d\u0438\u044f  \u0432 \u0432\u0438\u0434\u0435: div_acc += op1_div[j]\/op2_div[j]; \u0432 \u043a\u043e\u043d\u0446\u0435 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442\u0441\u044f  \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430, \u0432\u0442\u043e\u0440\u043e\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u044b\u043c 2-257.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">INT_DIV_F<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0418\u0434\u0435\u043d\u0442\u0438\u0447\u0435\u043d  \u0442\u0435\u0441\u0442\u0443 INT_DIV, \u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c Float. \u0410 \u0442\u0430\u043a\u0436\u0435 \u043c\u0430\u0441\u0441\u0438\u0432 \u0432\u0437\u044f\u0442 \u043f\u043e\u0441\u043b\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 INIT_F. \u00a0\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u043d\u043e\u043b\u044c \u043d\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043b\u0430\u0441\u044c.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">BARREL_SHIFT<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0435\u0441\u0442 \u0440\u0430\u0437 \u0437\u0430  \u0440\u0430\u0437\u043e\u043c \u0441 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0446\u0435\u043b\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u043c\u0438. \u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u0440\u044f\u0434 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u0441\u0434\u0432\u0438\u0433\u0430  \u0438 \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442 \u0438\u0445 \u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u0443\u044e \u0441\u0443\u043c\u043c\u0443, \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0438\u0440\u0443\u044e\u0449\u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u0432  \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430, \u0447\u0442\u043e\u0431\u044b \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c.  (\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 volatile \u0442\u0430\u043a \u0436\u0435 \u0431\u044b\u043b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td colspan=\"2\" data-colwidth=\"107,0\" width=\"107\">\n<p align=\"center\">\u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0442\u0435\u0441\u0442\u044b &#8212; \u044d\u0442\u043e \u0442\u0435\u043c\u043d\u0430\u044f \u043e\u0431\u043b\u0430\u0441\u0442\u044c \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u0440\u0430. \u0422\u0435\u0441\u0442\u044b  \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u044b \u043d\u0430 \u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0438 \u0441 \u043d\u0435\u0439\u0440\u043e\u043d\u043a\u043e\u0439.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">D_CACHE<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0432  \u0441\u0435\u0431\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u043f\u0440\u043e\u0445\u043e\u0434\u043e\u0432 \u043f\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0443. <\/p>\n<p align=\"left\">1 \u2013  \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0447\u0442\u0435\u043d\u0438\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 (\u0441\u0443\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0432 \u0430\u043a\u043a\u0443\u043c\u0443\u043b\u044f\u0442\u043e\u0440).<\/p>\n<p align=\"left\">2 \u2013  \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c \u0432 \u043f\u0430\u043c\u044f\u0442\u044c (\u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0435\u0440\u0435\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u043c\u0430\u0441\u0441\u0438\u0432 \u0438  \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0438\u043d\u0434\u0435\u043a\u0441 \u043c\u0430\u0441\u0441\u0438\u0432\u0430)<\/p>\n<p align=\"left\">3 \u2013  \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0435 \u0447\u0442\u0435\u043d\u0438\u0435 (\u0447\u0438\u0442\u0430\u044e\u0442\u0441\u044f \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0438  \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0432 \u0430\u043a\u043a\u0443\u043c\u0443\u043b\u044f\u0442\u043e\u0440)<\/p>\n<p align=\"left\">4 \u2013  \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c (\u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432 \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442  \u043c\u0430\u0441\u0441\u0438\u0432\u0430)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"107\" width=\"107\">\n<p align=\"left\">I_CACHE<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u044b  256 \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f &#8212; \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435 \u0438 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0435. \u0421\u0430\u043c\u0438  \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043d\u0435\u043e\u0434\u043d\u043e\u043a\u0440\u0430\u0442\u043d\u043e \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0432\u044b\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0432 \u0442\u0435\u043b\u0435 \u0446\u0438\u043a\u043b\u0430.<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0412 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0431\u044b\u043b \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d 21 \u0442\u0435\u0441\u0442 \u0441 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438 MicroBlaze, \u043f\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0442\u0435\u0441\u0442\u0430\u043c \u043f\u0440\u043e\u0439\u0434\u0443\u0441\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e, \u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0442\u0440\u043e\u043d\u0443 \u0432\u0441\u043a\u043e\u043b\u044c\u0437\u044c. <\/p>\n<p>\u041f\u043e\u0433\u0440\u0435\u0448\u043d\u043e\u0441\u0442\u044c \u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u043e\u0432 \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 +-1. <\/p>\n<p>\u0422\u0435\u0441\u0442\u044b \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u043b\u0438\u0441\u044c \u043d\u0430 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u043e\u0439 \u043f\u043b\u0430\u0442\u0435<a href=\"https:\/\/digilent.com\/reference\/programmable-logic\/nexys-a7\/start\" rel=\"noopener noreferrer nofollow\"> Nexys A7-100T<\/a><\/p>\n<p><strong>\u041f\u0435\u0440\u0432\u0430\u044f \u043f\u043e\u0440\u0446\u0438\u044f \u0442\u0435\u0441\u0442\u043e\u0432. \u041e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b.<\/strong><\/p>\n<p>\u0412 \u044d\u0442\u0438\u0445 \u0442\u0435\u0441\u0442\u0430\u0445 \u043a\u044d\u0448\u0438 \u0431\u044b\u043b\u0438 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u044b, \u0432 \u043a\u043e\u0434\u0435 \u0431\u044b\u043b\u0430 \u0432\u044b\u0437\u0432\u0430\u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f disable_caches(); \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u043a\u044d\u0448 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439 \u0438 \u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0441\u0435\u0440\u044c\u0435\u0437\u043d\u043e \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u044c\u0441\u044f \u043a \u0442\u0435\u0441\u0442\u0430\u043c \u043a\u044d\u0448\u0430 \u043d\u0435 \u043d\u0443\u0436\u043d\u043e.\u00a0 <\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td>\n<p align=\"left\">\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0439  \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442  \u0442\u0435\u0441\u0442\u043e\u0432. \u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0441 \u0431\u0430\u0437\u043e\u0432\u044b\u043c. \u0412\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f.<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u0435\u043c\u044b\u0435  \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u041f\u041b\u0418\u0421<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">\u0411\u0435\u0437  \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432(\u0431\u0430\u0437\u043e\u0432\u044b\u0439).<\/p>\n<\/td>\n<td>\n<p align=\"left\">100%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 868,<\/p>\n<p align=\"left\">Slice Registers 582, <\/p>\n<p align=\"left\">F7 Muxes 108, <\/p>\n<p align=\"left\">Slice 304, <\/p>\n<p align=\"left\">LUT as Logic 765, <\/p>\n<p align=\"left\">LUT as Memory 103<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Barrel Shifter<\/p>\n<\/td>\n<td>\n<p align=\"left\">INIT_: -10% <\/p>\n<p align=\"left\">INIT_F: -45% <\/p>\n<p align=\"left\">INIT_DIV: -9% <\/p>\n<p align=\"left\">MUL32: -3% <\/p>\n<p align=\"left\">MUL32F: -47% <\/p>\n<p align=\"left\">\n<p align=\"left\">ADD__: -13% <\/p>\n<p align=\"left\">ADD_F: -50% <\/p>\n<p align=\"left\">INT_DIV: -0.5% <\/p>\n<p align=\"left\">INT_DIV_F: -40% <\/p>\n<p align=\"left\">BARREL_SHIFT: -82%<\/p>\n<p align=\"left\">D_CACHE: -2% <\/p>\n<p align=\"left\">I_CACHE: -45%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 1118, +28%<\/p>\n<p align=\"left\">Slice Registers 718, +23%<\/p>\n<p align=\"left\">F7 Muxes 108, <\/p>\n<p align=\"left\">Slice 373, +23%<\/p>\n<p align=\"left\">LUT as Logic 1015, +32%<\/p>\n<p align=\"left\">LUT as Memory 103<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Integer Divider<\/p>\n<\/td>\n<td>\n<p align=\"left\">INIT_: -0% <\/p>\n<p align=\"left\">INIT_F: -0% <\/p>\n<p align=\"left\">INIT_DIV: -0% <\/p>\n<p align=\"left\">MUL32: -0% <\/p>\n<p align=\"left\">MUL32F: -0% <\/p>\n<p align=\"left\">ADD__: -0% <\/p>\n<p align=\"left\">ADD_F: -0% <\/p>\n<p align=\"left\">INT_DIV: -88% <\/p>\n<p align=\"left\">INT_DIV_F: -0% <\/p>\n<p align=\"left\">BARREL_SHIFT: -0%<\/p>\n<p align=\"left\">D_CACHE: -0% <\/p>\n<p align=\"left\">I_CACHE: -0%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 1031, \u00a0+18%<\/p>\n<p align=\"left\">Slice Registers 1006, \u00a0+72%<\/p>\n<p align=\"left\">F7 Muxes 108, <\/p>\n<p align=\"left\">Slice 400, \u00a0+ 31%<\/p>\n<p align=\"left\">LUT as Logic 927, + 21% <\/p>\n<p align=\"left\">LUT as Memory 103<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Floating Point Unit BASIC<\/p>\n<\/td>\n<td>\n<p align=\"left\">INIT_: -0% <\/p>\n<p align=\"left\">INIT_F: -78%<\/p>\n<p align=\"left\">INIT_DIV: -0% <\/p>\n<p align=\"left\">MUL32: -0% <\/p>\n<p align=\"left\">MUL32F: -98% <\/p>\n<p align=\"left\">ADD__: -0% <\/p>\n<p align=\"left\">ADD_F: -96% <\/p>\n<p align=\"left\">INT_DIV: -0% <\/p>\n<p align=\"left\">INT_DIV_F: -95% <\/p>\n<p align=\"left\">BARREL_SHIFT: -0% <\/p>\n<p align=\"left\">D_CACHE: -0% <\/p>\n<p align=\"left\">I_CACHE: -65%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 1541, +77%<\/p>\n<p align=\"left\">Slice Registers 1320, \u00a0+126%<\/p>\n<p align=\"left\">F7 Muxes 114, +6 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043e\u0432<\/p>\n<p align=\"left\">Slice 558, +83%<\/p>\n<p align=\"left\">LUT as Logic 1427, +86%<\/p>\n<p align=\"left\">LUT as Memory 114, \u00a0+ 11 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043e\u0432.<\/p>\n<p align=\"left\">DSPs 2 (\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435  \u0440\u0435\u0441\u0443\u0440\u0441\u044b)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Integer Miltiplier MUL32<\/p>\n<\/td>\n<td>\n<p align=\"left\">INIT_: -0% <\/p>\n<p align=\"left\">INIT_F: -17%<\/p>\n<p align=\"left\">INIT_DIV: -0% <\/p>\n<p align=\"left\">MUL32: -75% <\/p>\n<p align=\"left\">MUL32F: -23% <\/p>\n<p align=\"left\">ADD__: -0% <\/p>\n<p align=\"left\">ADD_F: -7% <\/p>\n<p align=\"left\">INT_DIV: -0% <\/p>\n<p align=\"left\">INT_DIV_F: -6% <\/p>\n<p align=\"left\">BARREL_SHIFT: -0%<\/p>\n<p align=\"left\">D_CACHE: -56% <\/p>\n<p align=\"left\">I_CACHE: -25%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 984, +13%<\/p>\n<p align=\"left\">Slice Registers 909, +56%<\/p>\n<p align=\"left\">F7 Muxes 108, <\/p>\n<p align=\"left\">Slice 386, +27%<\/p>\n<p align=\"left\">LUT as Logic 881, +15% <\/p>\n<p align=\"left\">LUT as Memory 103, <\/p>\n<p align=\"left\">DSPs 3 (\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439  \u0440\u0435\u0441\u0443\u0440\u0441)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Integer Divider<\/p>\n<\/td>\n<td>\n<p align=\"left\">INIT_: -0% <\/p>\n<p align=\"left\">INIT_F: -0% <\/p>\n<p align=\"left\">INIT_DIV: -0% <\/p>\n<p align=\"left\">MUL32: &#8212; 0% <\/p>\n<p align=\"left\">MUL32F: -0% <\/p>\n<p align=\"left\">ADD__: -0% <\/p>\n<p align=\"left\">ADD_F: -0% <\/p>\n<p align=\"left\">INT_DIV: -88% <\/p>\n<p align=\"left\">INT_DIV_F: -0% <\/p>\n<p align=\"left\">BARREL_SHIFT: -0%<\/p>\n<p align=\"left\">D_CACHE: -0% <\/p>\n<p align=\"left\">I_CACHE: -0%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 1031, +18%<\/p>\n<p align=\"left\">Slice Registers 1006, +72%<\/p>\n<p align=\"left\">F7 Muxes 108, <\/p>\n<p align=\"left\">Slice 400, \u00a0+ 31%<\/p>\n<p align=\"left\">LUT as Logic 927, +21% <\/p>\n<p align=\"left\">LUT as Memory 104 (+1 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432)<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0418\u0437 \u043d\u0430\u0431\u043e\u0440\u0430 \u044d\u0442\u0438\u0445 \u0442\u0435\u0441\u0442\u043e\u0432 \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 Barrel Shifter \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0441\u0435\u0431\u044f \u043b\u0443\u0447\u0448\u0435 \u0432\u0441\u0435\u0445, \u043e\u043d \u0443\u0447\u0430\u0441\u0442\u0432\u0443\u0435\u0442 \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u0442\u0435\u0441\u0442\u043e\u0432 \u0438 \u0434\u0430\u0435\u0442 \u043f\u0440\u0438\u0440\u043e\u0441\u0442 \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u041f\u041b\u0418\u0421 \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430\u044e\u0442 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0435 \u0441\u0438\u043b\u044c\u043d\u043e. \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u044d\u0442\u043e \u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0438 \u0441 \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435\u043c DSP. <\/p>\n<p>\u0412 \u0442\u043e\u0436\u0435 \u0432\u0440\u0435\u043c\u044f, \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0435 \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u0435\u043b\u0438 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f, \u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0438 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0435\u0439 \u0442\u043e\u0447\u043a\u0438, \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043b\u0443\u0447\u0448\u0435 \u0432\u043b\u0438\u044f\u044e\u0442 \u043d\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0442\u0435\u0441\u0442\u0430, \u043d\u043e \u0434\u0435\u043b\u0430\u044e\u0442 \u044d\u0442\u043e \u0442\u043e\u0447\u0435\u0447\u043d\u043e. <\/p>\n<p><strong>\u0412\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u0440\u0446\u0438\u044f \u0442\u0435\u0441\u0442\u043e\u0432. \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0431\u0443\u0434\u0443\u0442 \u043f\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u0432 \u0441\u043f\u0438\u0441\u043e\u043a.<\/strong><\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td>\n<p align=\"left\">\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0435  \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442  \u0442\u0435\u0441\u0442\u043e\u0432. \u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0441 \u0431\u0430\u0437\u043e\u0432\u044b\u043c. \u0412\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f.<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u0435\u043c\u044b\u0435  \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u041f\u041b\u0418\u0421<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">\u0411\u0435\u0437  \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432(\u0431\u0430\u0437\u043e\u0432\u044b\u0439).<\/p>\n<\/td>\n<td>\n<p align=\"left\">100%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 868,<\/p>\n<p align=\"left\">Slice Registers 582, <\/p>\n<p align=\"left\">F7 Muxes 108, <\/p>\n<p align=\"left\">Slice 304, <\/p>\n<p align=\"left\">LUT as Logic 765, <\/p>\n<p align=\"left\">LUT as Memory 103<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Barrel Shifter<\/p>\n<p align=\"left\">Integer Divider<\/p>\n<\/td>\n<td>\n<p align=\"left\">INIT_: -10% <\/p>\n<p align=\"left\">INIT_F: -45% <\/p>\n<p align=\"left\">INIT_DIV: -9% <\/p>\n<p align=\"left\">MUL32: -3% <\/p>\n<p align=\"left\">MUL32F: -48% <\/p>\n<p align=\"left\">ADD__: -13% <\/p>\n<p align=\"left\">ADD_F: -50% <\/p>\n<p align=\"left\">INT_DIV: -89% <\/p>\n<p align=\"left\">INT_DIV_F: -39% <\/p>\n<p align=\"left\">BARREL_SHIFT: -80% <\/p>\n<p align=\"left\">D_CACHE: -0% <\/p>\n<p align=\"left\">I_CACHE: -45%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 1234, +42%<\/p>\n<p align=\"left\">Slice Registers 835, +43%<\/p>\n<p align=\"left\">F7 Muxes 108, <\/p>\n<p align=\"left\">Slice 407, +34%<\/p>\n<p align=\"left\">LUT as Logic 1130, +47% <\/p>\n<p align=\"left\">LUT as Memory 104 (+1 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Barrel Shifter<\/p>\n<p align=\"left\">Integer Divider<\/p>\n<p align=\"left\">Floating Point Unit BASIC<\/p>\n<\/td>\n<td>\n<p align=\"left\">INIT_: -10% <\/p>\n<p align=\"left\">INIT_F: -91% <\/p>\n<p align=\"left\">INIT_DIV: -10% <\/p>\n<p align=\"left\">MUL32: -2.7% <\/p>\n<p align=\"left\">MUL32F: -97% <\/p>\n<p align=\"left\">ADD__: -13% <\/p>\n<p align=\"left\">ADD_F: -96% <\/p>\n<p align=\"left\">INT_DIV: -88% <\/p>\n<p align=\"left\">INT_DIV_F: -94% <\/p>\n<p align=\"left\">BARREL_SHIFT: -81% <\/p>\n<p align=\"left\">D_CACHE: -0% <\/p>\n<p align=\"left\">I_CACHE: -85%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 1784, <\/p>\n<p align=\"left\">Slice Registers 1265, <\/p>\n<p align=\"left\">F7 Muxes 113, <\/p>\n<p align=\"left\">Slice 556, <\/p>\n<p align=\"left\">LUT as Logic 1670, <\/p>\n<p align=\"left\">LUT as Memory 114, <\/p>\n<p align=\"left\">DSPs 2 (\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439  \u0440\u0435\u0441\u0443\u0440\u0441)<\/p>\n<p align=\"left\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Barrel Shifter<\/p>\n<p align=\"left\">Integer Divider<\/p>\n<p align=\"left\">Floating Point Unit BASIC<\/p>\n<p align=\"left\">Integer Miltiplier MUL32<\/p>\n<\/td>\n<td>\n<p align=\"left\">INIT_: -10% <\/p>\n<p align=\"left\">INIT_F: -91% <\/p>\n<p align=\"left\">INIT_DIV: -10% <\/p>\n<p align=\"left\">MUL32: -78% <\/p>\n<p align=\"left\">MUL32F: -97% <\/p>\n<p align=\"left\">ADD__: -12% <\/p>\n<p align=\"left\">ADD_F: -96% <\/p>\n<p align=\"left\">INT_DIV: -88% <\/p>\n<p align=\"left\">INT_DIV_F: -94% <\/p>\n<p align=\"left\">BARREL_SHIFT: -80% <\/p>\n<p align=\"left\">D_CACHE: -58% <\/p>\n<p align=\"left\">I_CACHE: -85%<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slice LUTs 1798, +107%<\/p>\n<p align=\"left\">Slice Registers 1285, +120%<\/p>\n<p align=\"left\">F7 Muxes 113, (+5 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043e\u0432)<\/p>\n<p align=\"left\">Slice 586, +92%<\/p>\n<p align=\"left\">LUT as Logic 1683, +120% <\/p>\n<p align=\"left\">LUT as Memory 115, (+12 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043e\u0432)<\/p>\n<p align=\"left\">DSPs 5 (\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439  \u0440\u0435\u0441\u0443\u0440\u0441)<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0442\u0435\u0441\u0442\u043e\u0432 \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u043a\u0430\u0436\u0434\u044b\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0443\u0441\u043a\u043e\u0440\u044f\u0435\u0442 \u0441\u0432\u043e\u044e \u043e\u0431\u043b\u0430\u0441\u0442\u044c \u0442\u0435\u0441\u0442\u043e\u0432, \u0438 \u044d\u0442\u043e \u043e\u0447\u0435\u0432\u0438\u0434\u043d\u043e. <\/p>\n<p>\u0421\u043c\u044b\u0441\u043b \u0432\u0442\u043e\u0440\u043e\u0439 \u043f\u043e\u0440\u0446\u0438\u0438 \u0442\u0435\u0441\u0442\u043e\u0432 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0435\u0441\u0442\u044c \u043b\u0438 \u043f\u0440\u0438\u0440\u043e\u0441\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u0445 \u0432 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0438 \u0441 \u043e\u0434\u0438\u043d\u0430\u0440\u043d\u044b\u043c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u043c. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e Barrel Shifter \u0441\u0442\u0430\u0440\u0430\u0435\u0442\u0441\u044f \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u044c \u0432\u0441\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0435\u043c\u0443 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f (\u044d\u0442\u043e \u043f\u0435\u0440\u0432\u044b\u0439 \u0442\u0435\u0441\u0442 \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u043f\u043e\u0440\u0446\u0438\u0438 \u0442\u0435\u0441\u0442\u043e\u0432), \u043d\u043e \u043f\u0440\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043a \u043d\u0435\u043c\u0443 \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044e Integer Divider \u0438 Floating Point Unit BASIC, \u043f\u0440\u0438\u0440\u043e\u0441\u0442 \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0442\u0435\u0445 \u043c\u0435\u0441\u0442\u0430\u0445, \u0433\u0434\u0435 \u043e\u043d \u0431\u044b\u043b \u0438 \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u043f\u043e\u0440\u0446\u0438\u0438 \u0442\u0435\u0441\u0442\u043e\u0432. \u0418 \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u0440\u043e\u0441\u0442\u0430 \u043d\u0435\u0442, \u0442\u043e \u0435\u0441\u0442\u044c \u043d\u0435 \u0432\u0438\u0434\u043d\u0430 \u0441\u043e\u0432\u0435\u0441\u0442\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430 \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u0435\u043b\u0435\u0439.\u00a0 \u041a\u043e\u043d\u0435\u0447\u043d\u043e, \u0438\u043c\u0435\u044e\u0442\u0441\u044f \u043d\u0435\u043a\u0438\u0435 \u043a\u043e\u043b\u0435\u0431\u0430\u043d\u0438\u044f, \u043d\u043e \u0432 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u0445 \u043f\u043e\u0433\u0440\u0435\u0448\u043d\u043e\u0441\u0442\u0438.<\/p>\n<p>\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 Floating Point Unit BASIC \u043d\u0430 Floating Point Unit EXTENDED \u043f\u0440\u0438\u0440\u043e\u0441\u0442\u0430 \u043d\u0435 \u0434\u0430\u0435\u0442, \u0442\u0430\u043a \u0436\u0435 \u0438 \u0434\u043b\u044f \u0437\u0430\u043c\u0435\u043d\u044b Integer Miltiplier MUL32 \u043d\u0430 Integer Miltiplier MUL64. \u0412\u0438\u0434\u0438\u043c\u043e \u0438\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0432\u0441\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0431\u044b\u043b\u0438 \u043d\u0435 \u0431\u043e\u043b\u044c\u0448\u0435 32 \u0431\u0438\u0442.<\/p>\n<p><strong>\u0422\u0440\u0435\u0442\u044c\u044f \u043f\u043e\u0440\u0446\u0438\u044f \u0442\u0435\u0441\u0442\u043e\u0432. \u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a\u044d\u0448\u0430.<\/strong><\/p>\n<p>\u041f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043a\u044d\u0448\u0430 \u0443 \u043c\u0438\u043a\u0440\u043e\u0431\u043b\u0435\u0439\u0437\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-472226","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/472226","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=472226"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/472226\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=472226"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=472226"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=472226"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}