ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
17 июня
196705
Evgeny_CD, Архитектор (07.06.2010 03:26, просмотров: 1754)
Старая идея свопа в новом исполнении: SPI. Интересно, так получится? Есть LPC17xx. 50 Мгц SPI дуплексный, DMA с дексрипторами. Есть некое внешнее хранилище - FPGA + SDRAM, где живут данные. Нужно в одной операции обменять местами область памяти контроллера и хранилища. Если иметь небольшой запас на "стартовую память", и настроить дескрипторы так, чтобы из области памяти контроллера мы вначале вычитали данные, а затем, через некую паузу, положили их туда (данные их хранилища), то вроде все должно получиться! Сделать запас байта 32 или 64 - на двойную емкость FIFO DMA и другие задержки... 50 Мбит - это 6.25 кбайта за 1 мс! Этого хватит для большинства задач (в моих приложениях)!. Т.е., если системный тик у нас 10 мс, и из них 1мс задача ждет свопа контекста, то это эквивалентно 10% потери процессорного времени. При 100 Мгц Cortex это будет не смертельно. 512Кбайт кода - это много. Вот 64 К ОЗУ - этого может оказаться мало. А путем такого свопа мы расширяем память данных до мегов за сущие копейки....