FreeScale (Motorola) ColdFire - наши мольбы о !BGA услышаны? Решил я тут пройтись по ColdFire - посмотреть, что там есть интересного. Посмотрел - и в осадок выпал. Есть несколько очень интересных чипов в PQFP, против которых все известные мне ARM выглядят каким-то недопатченным хламом.
***************** MCF5208 ***********************
Страница продукта
MCF5208 : V2 ColdFire® Integrated Microprocessor
http://www.freesca …mmary.jsp?code=MCF5208
Борда
ColdFire M5208EVB
http://www.steroid …micro.aspx?ID=M5208EVB
http://www.freesca …eId=0162468rH3YTLCFqnN
Цена борды на
http://www.digikey.com
M5208EVB-ND
KIT DEV FOR COLDFIRE MCF5208 - 408.44
!!!! Цена камней (это для MCF5208CVM166 - BGA версия, PQFP пока еще не продаются)
http://www.mouser.com $7.61 для 630 штук. Пусть для розницы будет 15 - все равно супер!
Есть две версии
MCF5208 - с Ethernet
MCF5207 - без Ethernet
В чем кайф?
* !!! PQFP 160/144
* High Performance V2 ColdFire® core - 166 MHz, 159 DMIPS.
* eMAC (32x32) module, hardware divide (40 битный аккумулятор, 32 * 32 + (результат можно сдвинуть на +-1 бит) 40 -> 40 за 1 такт. PXA270 напоминает.
* 16 KB SRAM
* 8 KB configurable as instruction-only, data-only, or split I-/D-cache
* Integrated peripherals
-- 10/100 Fast Ethernet Controller
-- Flexible 16-bit DDR / 32-bit SDR SDRAM memory controller (на половинной частоте)
-- Low-power modes and low-frequency clock divider
-- Three UARTs
-- QSPI
-- I2C
-- Four 32-bit timers
-- Four Programmable Interrupt Timers (PITs)
-- Phase Lock Loop (PLL) with optional bypass for reduced power consumption
-- !!!! 16-ch DMA controller с внешним входом запроса
* 8 Chip selects, Up to 50 GPIO
* World-class BDM
* JTAG
* Technology: 0.13µ
* Temperature range: -40°C to +85°C
* MCF5208: 196-ball MAPBGA and 160-pin QFP packages
Вообще чип взрослый - всего не перечислишь.
Errata вполне разумная.
Чип позиционируется как модернизация MCF5206e, вроде как они даже собираются документ по переходу MCF5208 -> MCF5206e выпустить.
***************** MCF5249 ***********************
http://www.freesca …mmary.jsp?code=MCF5249
V2 ColdFire processor core
* 140 Мгц, 125 DMIPS
* !!! 96KB Static Random Access Memory (SRAM)
* 8KB instruction cache
* Enhanced Multiply-and Accumulate (EMAC)
* Four (4) Programmable Chip Selects
* Debug module - background and real time
* Two (2) independent Universal Asynchronous Receiver and Transmitter (UARTs)
* Two (2) independent 16-bit timers
* I2C interface
* Synchronous Dynamic Random Access Memory Controller (SDRAM) 16 бит
* System integration (PLL, Software watchdog)
* 4-channel Direct Memory Access (DMA)
* !!! IDE интерфейс
* SD контроллер, 4 бита, подсчет ECC
* !!! PQFP 144, но этот вариант уже снимают
uCOS port
http://www.micrium …m/freescale/index.html
http://www.micrium …OS-II-MCF5249-Diab.zip
Cross GCC on a Win32 platform.
http://brianrose.n …s/CrossToolsWin32.html
Отладочная плата
MCF5249 based basic development platform
http://www.hhcn.com/english/Coldfire.htm
Type:HHCF5249-R2
CPU : MCF5249
Performance : 120-140MHz
Ports: 1 RS232 serial port, 1 HDD-IDE port, 1 10/100M RJ45 , 1 BDM debug.
***************** MCF5206E ***********************
http://www.freesca …mary.jsp?code=MCF5206E
Version 2 ColdFire® Core
* Multiply-Accumulate Module and Divide Unit
* 4 KByte Direct-Mapped Instruction Cache
* 8 KByte On-Chip SRAM
* DRAM Controller, supports EDO and page node DRAMs
* 2-channel DMA Controller
* Two Universal Synchronous/Asynchronous Receiver/Transmitters (UART)
* Dual 16-Bit General-Purpose Multimode Timers
* I2C®-Compatible Bus
* System Interface
* System Debug Support
* Fully Static 3.3V Operation with 5V tolerant inputs
* 160 Pin QFP Package - Pin-compatible with MCF5206
* 8-bit general-purpose parallel I/O port
* 50 MIPS at 54 MHz
* Available at 40 and 50 MHz
Старый чип. На него есть порты всего, чего угодно. Но он едва ли интересен.
***************** Порты ОСей ***********************
### uCOS ###
Есть на MCF5206e, MCF5249
http://www.micrium …m/freescale/index.html
http://www.micrium …rts/ucos-ii/m5206e.zip
### eCos ###
Есть только на MCF5272, причем по порт написано, что он не до конца рабочий.
### RTEMS ###
Есть порт только на MCF5206e.
### uClinux ###
Идет вместе с M5208EVB
***************** Мониторы ***********************
dBUG - некий монитор от Motorola.
Описан в доке на M5208EVB.
Исходники лежат на сайте FreeScale, но нужна какая-то особая регистрация для скачивания.
***************** Тулчейны ***********************
### GCC ###
Подробно расписано, как собрать и настроить. Также есть примеры работы для сипа MCF5249 (он будет описан ниже)
Cross GCC on a Win32 platform.
http://brianrose.n …s/CrossToolsWin32.html
В блоге описано как собрать GCC 4, включая скрпит для этого
http://www.brianrose.net/blog/
Brian said...
I have a build script that automates the tool building process. As of today, it works with the following tools.
Binutils - Snapshot on or after 5 Sept 2005.
GCC - 4.0.2
Newlib - 1.14.0
Описания работы с GDB
BDM Interface for MPC860/850/823 with gdb access
http://www.vas-gmbh.de/software/mpcbdm/
BDM Interface for Motorola 683xx MCU Usage with GDB Debugger
http://cmp.felk.cv …m683xx/bdm_driver.html
Building RTEMS for the ColdFire with Cygwin/WinNT
http://sca.uwaterl …ire/starting-rtems.htm
### виндовые ###
http://www.pemicro.com/
Подход к созданию тулзов напоминает MicroCross. GCC + своя обвязка. Цены относительно разумные.
### Классика жанра ###
CodeWarrior
http://www.freesca …?nodeId=01272694014080
Версия 6.1 лежит на электрониске с клизьмой. Кто-нибудь его использовал - как оно?
Некая кросс среда, цены к разумным не относятся.
http://www.crosswa …coldfire/dsfirefly.htm
***************** BDM ***********************
Фирменный моторольский интефейс для отладки.
A good description can be found in Motorola Apnote AN1230 on how to build your own BDM.
http://e-www.motor …oc/app_note/AN1230.pdf
GDB with BDM
http://www.davehyl …m/avi/gdb_with_bdm.htm
### быстрые ###
Совместимы с CodeWarrior
http://www.pemicro.com/index.cfm
Непонятно, как у них с работой под GDB. Цены отчасти разумные.
***************** JTAG ***********************
У всех современных ColdFire есть, в качестве второго стандартного интерфейса.
***************** Симулятор ***********************
Coldfire Emulator MCF5206e, MCF5307
http://www.slicer.ca/coldfire/index.php
It will compile on windows using the Cygwin compiler.
It boots uClinux!
quick howto to make it run,
http://www.slicer. …fire/uclinux-howto.php
When the emulator starts, it will print two TCP port numbers.
These correspond to serial port 1 and 2, telnet to these ports if you want to see output.
Building a Cross Compiler
http://www.slicer.ca/coldfire/cross.php
В состав симулятора входит dBUG, так что можно ставить, выбирать борду, и тренироваться!
***************** Мой вывод ***********************
Моторола (FreeScale) побеждает? PPC405 как топовый контроллер, MCF5xxx - как все остальное...
У меня сложилось впечатление, что MCF5208 (MCF5207) - это killing chip от FreeScale, с которым она собирается расширить свое присутствие на рынке контроллеров очень "нипадеццки". Честно говоря, против него все ARMы, о которых мы тут так часто говорим, и тот же STR91, выглядят просто хламом: производительность немного хуже 180 Мгц ARM9/9E, DSP производительность будет точно не хуже, 40 битный аккумулятор... Ядро вполне конкурентоспособнос ARM по "крутизне" Цена, PQFP корпус, SDRAM SDR/DDR...
ColdFire у нас не сильно распространен - но это временно?
***************** Вопрос ***********************
Кто-нибудь работал с BDM, ColdFire - как впечатления? Какими тулзами кто пользовался?
***************** Примечания ***********************
http://www.ucdot.org - много всего интересного, есть список плат под ColdFire и не только.