bookevg 0 29 сентября, 2008 Опубликовано 29 сентября, 2008 · Жалоба С 40-разрядной плавающей запятой вопрос вроде решен. Но теперь у меня еще один вопрос. Суть проблемы: нехватка внутр.ОЗУ для выполнения программы, но при этом код можно разделить по временным характеристикам на критичные по времени исполнения и некритичные. При таком делении размера внутр.ОЗУ достаточно. Я как понимаю это можно реализовать при помощи overlay, но вот хотелось бы сделать иным образом. Исполняемый код, который д.б. во внешней ОЗУ, я размещаю в секторе, указывающий на внешнее ОЗУ = при помощи директивы: #pragma section(CODE, "seg_ext_pmco") Но вот будет ли ROM-загрузчик при загрузке программы из внеш.SPI-памяти загружать программу и во внешнее ОЗУ? Тут возможно два варианта ответа: 1.Если да, то ведь необходимо проинициализировать внешнее ОЗУ - вопрос тогда как? 2.Если нет поддержки автоматической загружки во внеш. ОЗУ ROM-загрузчиком, тогда это делать надо самому: 2.1.Оверлейная технология - здесь вроде все ясно как делать 2.2.Ручная загрузка кода программы во внешнее ОЗУ - здесь только вопрос как понять: как разделить программу на две части, опять напоминает пункт 2.1. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vik0 0 29 сентября, 2008 Опубликовано 29 сентября, 2008 · Жалоба здесь только вопрос как понять: как разделить программу на две части, опять напоминает пункт 2.1. Посмотрите главу "ADSP-2126x/2136x/2137x Processors Boot Kernels" из "Loader and Utilities Manual" Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jojo 0 29 сентября, 2008 Опубликовано 29 сентября, 2008 · Жалоба В LDF файле создаем секцию, расположенную во внешнем ОЗУ. Программы и данные с помошью прагм или того же LDF скрипта привязываем к этой секции. В итоге код и данные при сборке попадают в нужную секцию, а погрузчик при загрузке секции просто копирует слова по требуемым адресам. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vik0 0 29 сентября, 2008 Опубликовано 29 сентября, 2008 · Жалоба ... А кто внешнее ОЗУ инициализировать будет? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jojo 0 29 сентября, 2008 Опубликовано 29 сентября, 2008 · Жалоба В смысле - waitstates внешнего порта устанавливать? Модифицированное ядро погрузчика. Исходники погрузчика берем и нестандартные инициализации вставляем туда. А адреса секций - погрузчику все равно какие. О каком ОЗУ речь, кстати? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vik0 0 29 сентября, 2008 Опубликовано 29 сентября, 2008 · Жалоба В смысле - waitstates внешнего порта устанавливать? Либо параметры SDRAM контроллера. Модифицированное ядро погрузчика. Исходники погрузчика берем и нестандартные инициализации вставляем туда. Собственно в этом направлении и был мой первый ответ. А адреса секций - погрузчику все равно какие. Согласен. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bookevg 0 30 сентября, 2008 Опубликовано 30 сентября, 2008 · Жалоба Большое спасибо за ответ. Решение проблемы ясно и уже проверено Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться