Цитата(RHnd @ Jun 10 2007, 23:18)

А основной вопрос-то в этом был - как быть увереным, что сдрам хватит и на код и на данные.
Пример hello_world_small занимает ~332 байта (из файла readme)
А уж под свое приложение оценивайте, пожалуйста, сами. При компиляции размер кода пишется. А вообще настройки сислиба не помогают оценке. Ругаться будет только на этапе компиляции.
Более интересный вопрос: если вы в этой памяти храните посторонние данные от других мастеров или обращаетесь напрямую, и ИДЕ этого не видит. Тогда вам нужно будет ограничивать расположение секций, чтобы они не пересекались с данными, или объявлять для посторонних данных свои секции, чтоб компилятор остальное сам утрясал.
Я к этому вопросу только недавно подшел, и пока отложил в сторону (времени нет).
Можно еще посмотреть результат компиляции, посмотреть секции и выбрать свободное место, но тогда это надо делать при каждой пере-компиляции.
Цитата
И не ухудшит ли их совместное размещение быстродействие?
Конечно, ухудшит, если внешняя память однопортовая. Если вам одновременно понадобятся инструкции и данные, то инструкциям придется потерпеть.
А вот насколько станет хуже - опять зависит от кучи факторов, например, как часто будет туда обращаться кэш инструкций (какого он размера, и как написана программа, может она прыгает постоянно во все стороны, а может в цикле считает себе спокойно, а цикл в кэш влезает целиком).
Моделируйте.
Цитата
Угу, знаю. Вопрос был - почему по умолчанию альтера ставит офсет 0x20 и что находится в сдрам до этого офсета?
Извините, не заметил. По моему, ничего.
Если бы у вас туда был нацелен reset address, то там лежала бы секция .entry.
Почему по умолчанию они не сдвигают этот адрес в ноль, когда возможно, - не знаю.