gammanoid 0 5 мая, 2005 Опубликовано 5 мая, 2005 · Жалоба Проблема с симуляцией Coregen Module Dual-Port Block Memory. Один из портов модуля генерится как Read and Write, Read-before-Write. Симулятором вижу что получается Read-after-Write. Может кто сталкивался? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vitёk 0 6 мая, 2005 Опубликовано 6 мая, 2005 · Жалоба Если для его генерации используется Block RAM, то оно понятно: память синхронная, данные пишутся по стробу, и если читаются тем же стробом - то появляются на выходе спустя ещё один такт. (Если я правильно суть проблемы, а именно "Read-after-Write") Получается, что цикл записи-чтения вообще растянут на 3 такта: 1. данные постепенно появляются на входе RAMB; 2. они пишутся в память; 3. они оттуда читаются. Временами это раздражает. У симулятора много глюков, но по моему, эту ситуацию он отрабатывает правильно - проблем не замечено. Если я не прав - поправьте. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vitёk 0 6 мая, 2005 Опубликовано 6 мая, 2005 · Жалоба Похоже, я Вас обманываю в пред. посте. Пообщался с коллегами, выяснил следующее: 1. всё зависит от установленных в корегене свойств; 2. данные на выходе появляются сразу после такта, по которому туда пишутся. ЗЫ: проблем с симулятором у них тоже не замечено. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gammanoid 0 8 мая, 2005 Опубликовано 8 мая, 2005 · Жалоба Похоже проблема не в симуляторе а в CoreGen'e. В железе тоже криво работает. Если кому интересно привожу картинки из Foindation и Active HDL - одна и та же корка, генеренная одним и тем же CoreGen'ом работает по разному. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться