flammmable 0 26 ноября, 2018 Опубликовано 26 ноября, 2018 · Жалоба В языках Си и SystemVerilog есть такой удобный элемент языка, как структуры. Он позволяет объединять переменные (и другие структуры) в иерархию, а в дальнейшем абстрагироваться от внутреннего устройства структуры. Благодаря абстрагированию возможно эффективно разделять большую задачу на малые и решать их по отдельности. В Си переменную структурного типа можно передавать в качестве аргумента, возвращать в качестве значения, создавать массив и т.д. Таким образом механизм структур удается активно задействовать в коде. Правильно ли я понимаю, что раз в структуре SV невозможно указать input/output/inout, то структуры не предназначены для передачи связей между модулями (а следовательно, если имеется иерархия модулей, то в каждой ветви иерархии порты нижнего модуля в тупую копипастятся через всю иерархию до верхнего модуля, логически объединяясь разве что префиксами в именах)? Если оно так, то зачем нужны структуры в SV? И используете ли вы их в своих проектах? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 26 ноября, 2018 Опубликовано 26 ноября, 2018 · Жалоба Прочитайте стандарт, потом вот это SystemVerilog for Design Second Edition: A Guide to Using SystemVerilog for Hardware Design and Modeling (Stuart Sutherland, Simon Davidmann, Peter Flake, P. Moorby) и ответы на ваши вопросы найдутся сами собой. А то ощущение складывается что в "Свои" набиваетесь Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Darky777 0 26 ноября, 2018 Опубликовано 26 ноября, 2018 · Жалоба Представим что есть вход ... input [ 31:0 ] data_i; ... И что идейно он "как-то" парсится. Выделять из вектора нужные биты можно, но не интуитивно. поэтому можно просто сделать тайпдеф typedef struct packed { logic [7:0] a; logic [7:0] b; logic [7:0] c; logic [7:0] d; } data; приводить вход к типу и работать со структурой а не с битами. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
flammmable 0 26 ноября, 2018 Опубликовано 26 ноября, 2018 · Жалоба Quote Прочитайте ... A Guide to Using SystemVerilog Спасибо за совет. Прочитал. Interface это - то, что надо :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться