Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Память STMicroelectronics
Форум разработчиков электроники ELECTRONIX.ru > Аналоговая и цифровая техника, прикладная электроника > Цифровые схемы, высокоскоростные ЦС
Jhonny.
Здравствуйте. У нас в проекте используются ROM и RAM памяти от ST. Возникли некоторые проблемы с моделированием нетлиста с задержками. Проблемы следующие:

1. Выгрузка sdf: в верилог-модели памяти прописаны пути для Q_data, Q_glitch, тогда как выходным портом является порт Q. В .lib также нет никаких Q_data. Соответственно при аннотации эти пути не подцепляются.
В поставке памяти есть папка SYNOPSYS_PT с map файлами, с помощью которых из .lib как-то вытаскиваются нужные пути. Но как пользоваться этими файлами не знаю, смотрел команду write_sdf в документации к DesignCompiler, про map ничего не нашел. Может кто подскажет, что с ними делать?

2. Вот диаграмма чтения из ячейки:


Судя по докам, между th и taa на выходе Q висит неопределенное значение, а при моделировании выводятся иксы. Для worst случая th = 2.803 ns, taa = 6.598 ns. Получается почти 4 нс на выходе - иксы.
Соответствует ли это поведению реальной памяти? И нужно ли как-то смещать клок памяти относительно клоков триггеров при построении дерева?

Заранее спасибоsm.gif


oratie
на ftp есть документация (galaxy docs) , та в разделе PrimeTime есть (должен быть) PrimeTime Advanced Timing Analysis User Guide. В нем есть параграф Writing Mapped SDF Files.

Кратко:
---------------------------------------
The SDF mapping feature introduced in PrimeTime v1999.05
allows the user to define the output format of the SDF
file. The SDF map file created by the user is referenced
by the write_sdf command when writing out an SDF file.
The SDF map file defines the syntax and timing arcs that
are written to the SDF file for cells in the library.
For example, if the user wants to change the SDF output for
a flop in his library, the user must define a map for
that cell. Note that if no map is defined for a particular
cell, then the default is used.

Then the SDF map file is
ready for use in the write_sdf command:

pt_shell> write_sdf -map sdf.map filename.sdf
---------------------------------------------

Что же касается смещения клока, то это зависит от проекта. Посмотрите тайминг до памяти и после (report_timing -from memory/Q* и report_timing -to memory/*), если до памяти есть положительный слэк, а после памяти отрицательный, то можно клок на память подать ранее на величину положительного слэка.
Jhonny.
Документацию нашел, читаюsm.gif А можно ли то же самое сделать средствами cadence (просто весь мвршрут в cadence)?
cdsinit
Цитата(Jhonny. @ Sep 21 2011, 08:48) *
Судя по докам, между th и taa на выходе Q висит неопределенное значение, а при моделировании выводятся иксы. Для worst случая th = 2.803 ns, taa = 6.598 ns. Получается почти 4 нс на выходе - иксы.
Соответствует ли это поведению реальной памяти? И нужно ли как-то смещать клок памяти относительно клоков триггеров при построении дерева?

Если в комплекте файлов имеется spice-netlist (*.sp *.cdl), то при наличие моделей транзисторов и симулятора его можно промоделировать.
Скорее всего иксы в Verilog закрывают тот временной промежуток, где существует ненулевая вероятность смены данных Q.
При попытке снятия данных с шины Q в промежуток неопределенностии может быть получено, как правильное значение, так и оставшееся после предыдущего чтения.
(либо ерунда, если попали точно на переход)
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.