реклама на сайте
подробности

 
 
> Dream Platform II, недостающая часть мозаики (с картинками)
Evgeny_CD
сообщение Aug 14 2006, 23:52
Сообщение #1


Гуру
******

Группа: СуперМодераторы
Сообщений: 2 065
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 892



========= Предыдущие обсуждения по теме =========

Dream Board
http://www.caxapa.ru/echo/arm.html?id=64968
http://www.caxapa.ru/echo/arm.html?id=64969
http://electronix.ru/forum/index.php?s=&am...st&p=143432

Dream Platform: "$8, которые изменили мир"
http://www.caxapa.ru/echo/arm.html?id=65085
http://electronix.ru/forum/index.php?showtopic=19858

FreeScale (Motorola) ColdFire - наши мольбы о !BGA услышаны?
http://www.caxapa.ru/echo/arm.html?id=63110
http://electronix.ru/forum/index.php?showtopic=18754

========= Термины и определения =========

HCPU - Host CPU - типа главный
HFPGA - его FPGA
SCPU - Slave CPU - периферийный сопроцессор
SFPGA - его FPGA

========= Рисунки к тексту =========

http://upload.caxapa.ru/Deram_Platform.pdf - 80к

========= Стандартые медленные драйвера =========

Обычный проц, обычная ОСь, обычные дрова. Медленная работа

* UART
* SPI
* I2C

========= Стандартые быстрые драйвера =========

* Ethernet
* USB

========= nanoPCI =========

Dream Platform: "$8, которые изменили мир"
http://www.caxapa.ru/echo/arm.html?id=65085
http://electronix.ru/forum/index.php?showtopic=19858

========= TAL драйвера =========

Transaction Abstraction Layer - по аналогии с HAL.

Специализированые драйвера. Все общение на уровне транзакций. Например, для SD/CF/IDE
* записать кластер
* считать кластер

Для RS-485, по которому ModBus бегает
* передать пакет
* считать принятый пакет.

Базовые примитивы драйвера

* init ()
* status_get ()
* cmd_read ()
* cmd_wright ()
* data_read ()
* data_wright ()

Есди надо, перифейриная плата выставляет запрос на обслуживание, который вызывает прерывание. Регистр прерываний.

========= Таймер реального времени =========

Привязка всех процессов к RT.

Выдача синхронизации на периферийные платы при помощи специальной команды.

========= Многопоточный контроллер памяти =========

Буферизация больших пакетов, чтобы экономить ресурс блочной памяти FPGA.

"Коммутация данных" - передача данных от одного периферийного устройства к другому минуя память HCPU.

========= Режим отладки =========

На плате основного контроллера запускается простое приложение, которое конвертирует данные периферийных контроллеров в простой и быстрй IP протокол (UDP, raw). Главное - скорость. Передача по локальной сети, потерь пакетов мало.

На пЫсюке запускается специальный отладочный сервер, который конвертит "простой протокол" в "сокетный" интерфейс по localhost. Каждое устройсто видно как 5 сокетов
* status_get
* cmd_read
* cmd_wright
* data_read
* data_wright

Целевая ОСь + целевое приложение - синтетический порт или симулятор. Нормальные TAL драйвера заменяются на сокетные. При этом симулируемая ОСь работает с реальным железом!!!

Идеальня среда для отладки нового железа. Через сокет "натягиваем" железяку отладочной софтиной на пЫтоне.

========= Требования к HCPU =========

* хороший контроллер DMA с работой через внешнюю шину
* Ethernet внутренний с DMA
* необходимый минимум контроллеров

Кандидаты:

* AT91RM9200 - пролетает по критерию DMA
* ColdFire - самое то по причине хорошего DMA и Ethernet
* LH7952(0|4|5) - самое то по причине DMA
* нелюбимый мною x86 - получает шанс, если HFPGA на PCI посадить.
* PPC405, MPC5200B - самое то!

Уникальный вариант - MCF5407CAI220 - IC MPU 32B 220MHZ COLDF 208-FQFP - 25 pcs $34.92 http://www.digikey.com

* 316 DMIPS !!!
* PQFP 208
* -40!
* мало периферии, Ethernet нет.
* DMA 4 канала есть.
* нет MMU - нет проблем с портированием ОСей. Порта на RTEMS нет, но должны пойти порты на MCF52xx с минимальным перехаком.

Это самый быстрый из известных мне PQFP -40 процессоров.

========= Экономические аспекты =========

Периферийный контроллер - от $11.

XC3S250E-4PQG208C 15.25 http://www.digikey.com

HCPU ColdFire MCF5270, 5208 - 10$.

Т.е. основной контроллер собирается от $30. Вполне разумная плата за фантатическую гибкость!

========= "А зачем нам кузнец?" =========

* Максимальная гибкость. Делаем небольшие платочки под специфическую периферию, и втыкам их в свободные слоты основной платы. Предложенного интерфейса nanoPCI хватит для всех стоящих лично передо мной Embedded задач на долгие и долгие годы.

* Независимость от поставщиов. Требования к HCPU очень простые, FPGA тоже какая-нибудь найдется всегда - "выкос" линеек процессоров нас не волнует.

* Идельная среда отлаки (при наличи мощного пЫсюка и гигабитного Ethernet порта получаем неплохой real time). Нет места спорам - какую ось выбрать. Взяли uCOS в синтетическом режиме - попробовали. Не понравилось - eCos, RTEMS к нашим услугам.

* в принципе, можно и на линукс целевую логику реализовать. Т.е. есть плата - концентратор данных, и есть Linuх управляющий софт, например на x86 (бр...)

========= Просьбы =========

Критика - welcom!

========= Дополнительные посты, полезные в контексте рассматриваемых проблем =========

TDD (Test-driven Development) применительно к embedded системам: похоже, я догнал, как это должно быть устроено.
http://www.caxapa.ru/echo/arm.html?id=63285
http://electronix.ru/forum/index.php?showtopic=18859

Развитие идей по упрощенной отладке.
http://www.caxapa.ru/echo/arm.html?id=63474
http://electronix.ru/forum/index.php?s=&showtopic=18859

eCos на ARM симуляторе SID, автоматическое тестирование при помощи DejaGNU - очень интересно!!!
http://www.caxapa.ru/echo/arm.html?id=62769
http://electronix.ru/forum/index.php?showtopic=18602

uCOS: гораздо более правильная ОСь, чем я долгое время думал.
http://www.caxapa.ru/echo/arm.html?id=61909
http://electronix.ru/forum/index.php?showtopic=18222

Сквозная система разработки embedded устройств
Полноценная GNU среда для embedded разработки
http://www.caxapa.ru/echo/arm.html?id=60891
http://electronix.ru/forum/index.php?showtopic=17562

Продвинутые make'еры: все уже изобретено!
http://www.caxapa.ru/echo/arm.html?id=61898
http://electronix.ru/forum/index.php?showtopic=18212

Концептуальный вопрос по написанию прототипа в среде "похожей на embedd Ось" (Ch и не только).
http://www.caxapa.ru/echo/arm.html?id=58541

"Питон для Си-программистов"
http://www.caxapa.ru/mcu/wwwboard.html?id=57403
http://www.caxapa.ru/mcu/wwwboard.html?id=57960

Ch
http://www.caxapa.ru/mcu/wwwboard.html?id=57905
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 16:22
Рейтинг@Mail.ru


Страница сгенерированна за 0.01406 секунд с 7
ELECTRONIX ©2004-2016