Посоветуйте _приличный_ микроконтроллер

Привет, уважаемый All!

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

Задачка такая - контроллер встраиваемого термопринтера. Этот принтер относится к классу GDI-устройств (бо зело проще было написать драйвера), то есть весь рендеринг графики производится в недрах Windows, по интерфейсу принтера передается уже или текст или компрессированная графика. Собственно, уже разработан контроллер на базе Mega128-16МГц, но он хорошо (достаточно быстро) работает только с узкими термоголовками (2", 3", 4").

А вот потом пришел _ОН_ - термоголова ширина 8"/200dpi (есть еще варианты 300 dpi) с улучшенной энергетикой. Эти головы, способны отображать данные со скоростью не менее 2 Мбит/сек. При этом интерфейс загрузки у них типа SPI (двухканальный) и пропускает до 8 МБит/сек.

Второе узкое место - интерфейс - сейчас есть варианты RS-232 (до 460800), USB (кривоватый FTDI232, в итоге тот же RS внутри, зато быстро USB "освоил" :-( и Centronics, экономно (но медленно) реализованный на сдвиговом регистре с параллельной загрузкой.

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

Короче, понятно - AVR 16МГц еле дышит (я это предвидел, но мне никто не дал ни времени/ни денег реализовывать это нормально, да и на узких форматах все более/менее шуршит). Скорость от 2 до 6 pps формата A4 в зависимости от картинки. Но это не самое плохое. Еще хуже то, что процессор не успевает прогружать голову (одновременно обрабатывая 50-100К прерываний от интерфейса и декомпрессируя данные), при этом падает частота шагов на системе позиционирования (до 50-100 шагов/сек) и в системе развиваются приличные механические колебания, мало того что это дело начинает шуметь (с модуляцией по плотности поступаемой графики), так и резко возрастает износ (шестерни-то капроновые). Посему, чего же я хотел бы от нового микроконтроллера (в порядке убывания приоритета):

- internal program flash memory - от 64К, ессно ISP; - internal RAM - ну пусть от 8К минимум, хотя и напряг; - непременно DMA или его аналог (типа DTC у Atmel для UART); - SPI (SIO, SCI или чего еще), обязательно с DMA; - external DMA channel (для Centronics); - UART (DMA желателен, но FIFO тоже поможет, да и скорости уже обычно не те); - USB-device 1.1, обязательно c DMA, можно low-speed; - от 10 МИПС (если будет DMA, то интерфейсы и голову уже обслуживать почти не надо, а декомпрессия RLE это простой и малокушающий алгоритм);

Ну еще пожелания (во губу раскатал-то :-) - встроенный контроллер внешней DRAM/SDRAM памяти (пару метров RAM были бы кстати на будущее); - ARM архитектура (хорошо распространена - ИМХО это "аналог" i51 среди 8-битников, тоже толпой производителей выпускается, с разной периферией). Но с архитектурой уж как повезет, сгодится любая другая, лишь бы периферия приличная была.

Вот такая проблема, месяц неспешно ищу - ничего не попадается, смотрел Fujitsu/Hitachi/Mitsubishi/Siemens/ST/Philips/OKI/Samsung/Hynix/Sharp/Cirrus. В-основном ARMы. Может, плохо смотрел, или еще где надо поискать? Проблема в USB - все еще маловато чипов с ним. Но я уж готов и внешний типа USBN9604 ставить. Монстры в >400 pin BGA тоже грустновато как-то и у них с внутренним флешом обычно напряг.

Reply to
Vyacheslav Ovsiyenko
Loading thread data ...

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.