ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
25 ноября
294335
Evgeny_CD, Архитектор (25.12.2011 12:18 - 12:39, просмотров: 52794)
Зачитал я тут доку на TI Sitara ARM Microprocessor (AM1705, AM1707, AM1802, AM1806, AM1808, AM1810) и выпал в осадок. Dream Chip 2012, однако! В части этих камней я изменил свое злобное мнение о TI. Добавил обзор периферии. AM1705 - QFP 176. AM1707 - BGA 256 1.0 (!) Подробности http://www.ti.com/product/am1705 AM1802 - BGA 361 0.8 и 0.65 AM1806 - BGA 361 0.8 и 0.65 AM1808 - BGA 361 0.8 и 0.65 AM1810 - BGA 361 0.8 и 0.65 Подробности http://www.ti.com/product/am1808 Дата шиты на камни и пример errata (они почти одинаковые) вложены. Фишки: * Errata - просто заглядение. !Выбирать надо камни с ревизией 2.1 Читам доку, как отличить ревизии. Ошибки есть, но читая ерраты на Ситару с Cortex-A8, понимаешь, что не все RTL кодеры в TI говнокодеры. * ARM 926 - оно хоть и не микроконтроллерное ядро, но в нем багов нет. Читаем ерраты на Cortex-A8 :) 300, 375, 456 Мгц. - на тактах можно не экономить. * 16+ 16 кеша, 8К специалього быстрого ОЗУ под таблицы векторов, 128 к ОЗУ на кристалле. * MMU, MPU (!). Последнее имеет 2 вида - для контроля встроенного ОЗУ и основной SDRAM * !!! До четырех внешних быстрых интерефейсов, два первые есть всегда - SDRAM контроллер (SDRAM, DDR2, mDDR, mSDRAM - у разных разное) - параллельная шина NOR, NAND, SRAM, SDRAM (да, можно вторую SDRAM подцепить) - HPI - host port interface. The HPI enables an external host processor (host) to directly access program/data memory on the processor using a parallel interface. The primary purpose is to provide a mechanism to move data to and from the processor. In addition to data transfer, the host can also use the HPI to bootload the processor by downloading program and data information to the processor's memory after power-up. Совершенно замечательная штуковина для отладочного интерфейса при условии быстрого канала с host машиной. - uPP - The universal parallel port (uPP) peripheral is a multichannel, high-speed parallel interface with dedicated data lines and minimal control signals. It is designed to interface cleanly with high-speed analog-to-digital converters (ADCs) or digital-to-analog converters (DACs) with up to 16-bit data width (per channel). It may also be interconnected with field-programmable gate arrays (FPGAs) or other uPP devices to achieve high-speed digital data transfer. It can operate in receive mode, transmit mode, or duplex mode, in which its individual channels operate in opposite directions. The uPP peripheral includes an internal DMA controller to maximize throughput and minimize CPU overhead during high-speed data transmission. All uPP transactions use the internal DMA to feed data to or retrieve data from the I/O channels. Просто дрим интерфейс для подключения FPGA. На пальцах не объяснить - нужно доку курить. В чем кайф? Поясняю. Одновременно происходят 4 транзакции, слабо мешающие друг другу * DDR живет своей половой жизнбю с кешами и шинным коммутатором * NAND неторопливо записывает свою страницу. И на ту миллисекунду, что это длится, шина висит, а вот все остальное - нет. * host выполняет свои отладочно-мониторинговые функции * FPGA проводит быстрые транзакции. Я такого еще ни в одном чипе не видел! СКАЗКА! * 2 шт PRUSS - The Programmable Real-Time Unit Subsystem (PRUSS) consists of: • Two programmable real-time units (PRU0 and PRU1) and their associated memories. • An interrupt controller (INTC) for handling system interrupt events. The INTC also supports posting events back to the device level host CPU. • A Switched Central Resource (SCR) for connecting the various internal and external masters to the resources inside the PRUSS. Программирование полностью описано, хотя, как я понял, тулзов под него нет. Придецца ручками на листе бумаги ассемблировать... http://processors. …rammable_Realtime_Unit AM1810 имеет запрограммированный PRUSS для ProfiBus - http://ru.wikipedia.org/wiki/Profibus * ВСЕ задокументировано (на первый взгляд). ** Минусы. Камни аццки сложные. 1700 стр доки. Горы регистров. Конфигурирование IO руками, похоже, вообще не делается. Есть утилиты умеренной кривизны. думаю, это первый камень, который без авоматической информационной системы малополезен на практике. Т.е. ты в информационной системы в виде иерархического списка выбираешь периферию и опции ее программирования (все с человечекскими каментами), а оно генерит кусок кода (с константами и абсолютными адресами - чтобы не замедлять компилер морем дефайнов). В общем, если TI даст гарантию, что лет 5 она не снимет эти камни в угоду кортексам - то камни следует признать Dream Chip 2012.