2009-10-05 4 views
11

Мне нужно создать встроенный дизайн ARM, который имеет требования, чтобы делать много вещей, которые сделали встроенная Linux. Однако дизайн является дорогостоящим и не требует огромного количества лошадиных сил. В основном будет разговаривать с последовательными интерфейсами. В идеале я хотел бы использовать один из ARM с низким уровнем конца. Какова самая низкая конфигурация ARM, с которой вы успешно использовали встроенную Linux.Минимальная конфигурация для запуска встроенной Linux на ARM-процессоре?

Edit:

Приложение нуждается в файловую систему на какой-устройство флэш-памяти и возможность запуска приложений для обработки данных. Некоторые из приложений могут быть написаны другими, чем я. Мне также нужно иметь возможность загружать новые приложения или обновлять старые приложения, используя последовательные порты для приема приложений.

Когда я посмотрел на другие встроенные ОС, они, похоже, скорее представляют собой потоковое решение в реальном времени, чем возможность запуска приложений. Я открыт к тому, что когда-либо будет выполнено.

+0

могли бы вы предоставить более подробную информацию о приложении? Если вы действительно просто разговариваете с несколькими последовательными устройствами и передаете информацию вокруг, а ARM + linux, вероятно, будет излишним как по стоимости, так и по сложности, особенно если вы уже не знакомы с целями инструмента и конфигурацией ОС на таком устройстве. – Mark

ответ

12

Я думаю, вам нужно взвесить свои варианты затрат здесь.

ARM + linux - это вариант, но вы будете платить очень высокие эксплуатационные издержки за такое простое (из вашего описания) множество функций. Вы не можете просто посмотреть на стоимость чипа ARM, но также должны учитывать внешнюю оперативную память, которая, скорее всего, потребуется, а также флэш, чтобы получить достаточно свободного места для запуска приложений с ядром +.

ПРИМЕЧАНИЕ: вы можете избежать внешних требований с помощью очень минимального ядра и простых приложений в сочетании с uC с большими внутренними ресурсами.

Второй вариант - это гораздо более простой микроконтроллер с облегченной ОС. Это сократит ваши затраты на оборудование на CPU, и вы можете запустить что-то вроде этого без внешней оперативной памяти или флэш-памяти (в зависимости от потребности в ОЗУ и программных пространствах)

Третий вариант: я действительно ничего не вижу в ваших требованиях требует использования любой ОС. Основные файловые системы очень просты, например, есть даже драйверы FAT для 8-разрядных ПОС. Для взаимодействия с SD-картой требуется только порт SPI и минимальная внешняя схема.

Бит приложения может быть простым или сложным. Я создал системы вокруг микроконтроллеров PIC18, которые запускают веб-сервер и позволяют обновлять программы через простой экран загрузки, он просто сохраняет новую программу в EEPROM или флэш, перезагружается в загрузчик и копирует новую программу во внутреннюю память программы. Вероятно, вы могли бы разработать способ сделать это без перезагрузки с помощью совместной архитектуры многозадачности. В любом случае, программисты, пишущие приложения, нуждаются в знаниях об архитектуре и доступе к библиотекам/драйверу, который вы пишете. Лучше всего упростить это, чтобы предоставить как можно более простой API, и попытаться автоматизировать процесс сборки для них.

Третий вариант будет «самым дешевым» в плане аппаратного обеспечения, так как при обработке ваших приложений будет очень мало накладных расходов, что позволит вам уйти с минимальной вычислительной мощностью и памятью. Вероятно, для этого потребуется еще некоторое программирование/программное обеспечение с вашей стороны, но вам не потребуются почти те исследования, которые вам необходимо предпринять, чтобы получить Linux и запустить в дополнение к обучению написанию необходимых драйверов устройств в рамках парадигмы Linux.

Как всегда, вы должны включать затраты на разработку программного обеспечения в стоимость сборки устройства. Если вы планируете построить более 10 000 из них, то, скорее всего, это позволит снизить затраты на аппаратное обеспечение и поставить больше возможностей для разработки программного решения, которое позволяет этому оборудованию соответствовать целям дизайна. Если ваше здание 10 из них, вам лучше потратить дополнительные 15-20 долларов США на оборудование, если оно может сократить затраты на разработку программного обеспечения. Например, ARM с MMU с полной поддержкой ядра Linux и доступными драйверами устройств.

Я чувствую, что вы выбираете худшее из обоих миров на данный момент, оплачиваете дополнительно, чтобы получить uC, вы можете запускать Linux, но тем самым вы также выбираете часть, которая, вероятно, будет самой сложной для получения linux и работает, особенно не работая с linux на встроенных платформах раньше.

2

У меня был успех даже на ARM7TDMI, поэтому я не думаю, что у вас будут проблемы. Если у вас есть система с низкими требованиями, вы можете использовать любой вид облегченного управления в реальном времени и иметь намного лучший опыт, чем вы могли бы заставить Linux работать.

2

Я использовал TS-7200 около пяти лет для запуска веб-сервера и почтового сервера с использованием Debian GNU Linux. Он составляет 200 МГц и имеет 32 МБ ОЗУ и вполне адекватен этим задачам. Он имеет встроенный последовательный порт. Он основан на ARM920T.

Это было бы излишним для вашей работы; Я упоминаю об этом, поэтому у вас есть другая точка данных.

2

ucLinux предназначен специально для ограниченных ресурсов, но, возможно, более важно для целей без MMU.

Однако у вас есть веская причина использовать Linux в такой системе, а не в небольшом исполнителе в реальном времени. Некоторые из них, легко доступные драйверы и стеки протоколов для сложного оборудования и поддержки существующего наследия POSIX или открытого исходного кода, возможно, несколько. Однако, если вам это не нужно, Linux по-прежнему большой, и вы можете разбазаривать ресурсы без реальной выгоды. В большинстве случаев вам по-прежнему потребуется отключить чип SDRAM и Flash, если вы выберете Linux любого вкуса.

Я бы не считал последовательный ввод/вывод, как «сложным аппаратное обеспечение», так что если вы работаете сложным, но стандартный протокол, ваше краткое описание не появляется, чтобы оправдать использование Linux IMO

2

В течение нескольких лет Я использовал a gumstix для создания прототипов и тестирования, и у меня были хорошие результаты. Я не знаю, является ли процессор, который они используют (Intel PXA255 на моей плате) считается недорогим, но вся линейка Verdex кажется мне довольно дешевой для адаптируемого устройства.

0

Мой DLINK DIR-320 маршрутизатор запускает Linux внутри.

И я знаю некоторую разнорабочу, проблескивая ее с помощью Optware и подключая USB-концентратор, жесткие диски, USB-вспышку и многое другое.

Это недорого готовый к использованию «платформа». (Если вам не требуется массовое производство). Но, возможно, более мощный, чем вам нужно.

Кроме того, он может быть настроен по беспроводной сети через веб-интерфейс, даже через кпк :)

 Смежные вопросы

  • Нет связанных вопросов^_^