Цитата(krux @ Oct 13 2014, 13:56)

во-вторых, там слишком много всяких "если" для того чтобы это дело всегда гарантированно infer-илось.
при этом явных указаний например на то какая должна быть минимальная разрядность шины адреса, шины данных, допустимо ли использовать default: - нету.
считаю что надежнее сделать RAM руками
Вообще, там всего два "если":
1) требуется, чтобы подходящий блок памяти был в наличии (поэтому, например, always @* синтезируется в ROM на ACEX1K, но в мультиплексор или логику - в Cyclone, а в Arria - может в distributed RAM разместить)
2) требуется, чтобы реализация на блоке памяти была в реальной жизни эффективнее, чем на логике.
Других "если" там никаких нет, минимальную разрядность просчитает синтезатор, если эффективность от применения блока памяти есть, будет блок, если нет, будет логика. default на Ваше хотение, синтезатору от него ни холодно, ни горячо.
а вот насчет "надежности", тут в принципе согласен, только не в этом разрезе. Если есть вероятность использовать этот код потом не для ПЛИС, а для синтеза ASIC - то вот в этом случае надо вынести на блок.