Цитата(Stewart Little @ Mar 5 2010, 13:29)

Забейте на макросы и переходите на работу с указателями.
а меня заодно проинформируйте - как определить - кэшед или ан-кэшед обращение сгенерирует та или иная конструкция (конструкция HAL-а или API альтеровского - то есть высокоуровневая) ?
проц без ММУ
то, что это определяется 31-м битом я знаю, и по коду могу посмотреть
собственно IOWR / IORD тем и хороши, что ан-кешед аксес генерят и думать не надо, я их и использую
а с указателем надо 0х80000000 добавить к базовому адресу или как-то по другому?
-------------------------------------
2DASM по поводу многопроцессорных ниосов
я вопроса не нашел, а то что я разбирался - мне показалось проще иметь несколько независимых проектов для SOPC (для каждого процессора свой)
при этом плюсы - при изменении одного SOPC не надо пересобирать софтверные проекты для остальных процессоров, ну и квартус быстрее собирает
ну и мне всегда казалось, что двумя половинками проще оперировать чем одним целым,
в моем случае разные программисты программируют разные процессоры, поэтому организационно это проще - каждому свой ptf файл - меньше проблем
так как с именами там проблема (SOPC генерит верилог с одинаковыми именами), то надо для каждой системы свою директорию, которую включить для сборки в квартус
в качестве эксперимента пробовал многопроцессорную систему SOPC - но, по-моему, более трудоемко/громоздко, потом требуется дополнительно внимание прилагать для распределения памятей и т.п. (свойства системной библиотеки)
плюсов никаких не увидел, так как софт все-равно для каждого процессора автономный/независимый
upd: у меня разделяемой периферии не было, передача данных через conduit-ы вытащенные на топ-левел, причем кондуиты к Avalon-ST (а не ММ)
ну и еще есть вопросы работы шины - лень влезать.
минус аппаратный семафор не поставить, но как сделать семафор на общей памяти без блокировки Дейкста еще в 50-е придумал
в обоих случаях столкнулся с проблемой отладки/загрузки/программирования флаш - тулзы не могут правильно определить какой процессор используешь, поэтому вручную надо праставлять --instance (в дополнительных параметрах, если из gui)