Цитата(Kuzmi4 @ Nov 16 2009, 11:44)

Появилось время, решил загнать вашу реализацию в Synplify(2009.06sp1) и посмотреть что там будет (камень XC5VLX50T-1136-1), настройки по дефолту (всмысле ничего не пытался руками докрутить).
В результате Estimated Frequency 327.8 MHz.
симплифай начал понимать SV на хорошем уровне, это хорошо.
В коде кстати есть мега ошибка (сыплю голову пеплом) : ошибка в модуле wb_m_ack_rra.v и заключается в отсутствии режима удержания запроса мастера в случае многотактного ws. Тест ее не выявил, т.к. эта ошибка не приводила к косякам записи/чтения из памяти, т.к. в тесте память была между мастерами разделена по адресам. Ошибка вылезла только тогда, когда несколько мастеров полезли к одной и той же области памяти (например FIFO Slave).
Кстати этой ошибки не возникло бы если бы арбитры были двухтактные, также это дало бы еще прирост тактовой, но хотелось сделать именно однотактный арбитр, а не копировать то, что уже есть на опенкорес %)
Цитата
Вот что не понял - так это иерархию вообсче (собирал как топ
wb_cross.v, исходил из Crossbar Switch Interconnection мировоззрений

так сказать, не ясно зачем bus[шаред?] и s_port[если слейв - почему его нет cross-е?]). Когда будет время, выложите пожалуста хоть какою нибудь рид-мю

хмм, вы комментарии при объявлении модулей не читаете вообще ?
wb_bus.v :: component is wishbone system bus based upon shared bus architecture for pM_N masters and pS_N slaves
wb_cross.v :: component is wishbone system bus based upon crossbar switch architecture for pM_N masters and pS_N slaves
wb_s_port.v :: component to decode slave addreses and map single master to multi slaves
wb_bus.v это 2 порта : порт мастеров == арбитр доступа pM_N мастеров к разделяемой шине и порт слейвов == декодер адреса мастера, который получил доступ, на pS_N слейвов
wb_cross.v это pS_N портов мастеров == арбитров доступа pM_N мастеров к каждому слейву
Цитата(Builder @ Nov 16 2009, 16:24)

В общем вопрос, если уж на SV пишете, почему объявления по старинке:
Вроде так компактнее, меньше писанины и нагляднее так:
Что это, привычка или есть какой-то принципиальный момент?
ответ простой, потому что я их не пишу %) этим (генерацией объявления, инстанса, присаивание входов, генерация шаблонов модулей, выравнивание пробелов и т.д.) занимается генератор шаблонов модулей. Мне остается только вписывать функциональность. Кому интересно могу поделиться, ничего сложного нет %)
А раньше придерживался такого метода описания потому что модули было проще вставлять, т.к. объявление модуля и его портов это готовая заготовка для инстанса, нужно только в column mode редактора поставить точки и скобки, ну и при разработке генератора шаблонов решил коней на переправе не менять %)