|
ADSP BF532 и TMS320C6745, помогите с выбором |
|
|
|
Mar 26 2018, 13:51
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
Здравствуйте.
Ищу процессор в QFP корпусе, который будет производительнее, чем ADSP BlackFin BF532. Цель: запуск обильного кода с 2D графикой (bitblt, colorkey, alfablending) + немножко 3D (поворот, перенос, масштабирование), тригонометрия. + эмуляция процессоров -8 и 16 бит: Z80, 6502, M68000. + декодирование видео (H264, MJPEG,...) аудио (MP3, FLAC)
Пробовал собирать эмуляторы на BF532, разогнал до 700 МГц. Иногда эмуляция всей системы не достигает 60 FPS из-за отсутствия floating point, медленной производительности.
В качестве кандидата на замену рассматриваю : TMS320C6745 - доступен, корпус QFP, 475 МГц, шина SDRAM 32 бита, есть floating point, VLIW до 6 команд одновременно. Вроде как лучше чем BF532 ? Или даст выигрыш по сравнению с 532-м незначительно?
Сообщение отредактировал __inline__ - Mar 26 2018, 13:53
|
|
|
|
|
 |
Ответов
|
Mar 28 2018, 05:51
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
Цитата(_pv @ Mar 26 2018, 17:09)  allwinner V3s У вас есть опыт работы с этим камнем без пингвина и ведра? Внешней шины для подключения дополнительной периферии, наподобие как FSMC у STM32 у V3s как я понял нет? Если так - прощай дисплеи с контроллерами и своей памятью .. Цитата(jcxz @ Mar 26 2018, 15:00)  Так если Вы говорите что OMAP-L137 есть уже в QFP, то почему тогда не его? Там помимо DSP, ещё 3 ядра - думаю не лишние будут  Тот что в QFP OMAPL137-HT недоступен для заказа из-за политики США по отношению к РФ. В БГА мне неинтересно.
Сообщение отредактировал __inline__ - Mar 28 2018, 05:49
|
|
|
|
|
Mar 28 2018, 18:34
|
Гуру
     
Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954

|
Цитата(__inline__ @ Mar 28 2018, 12:51)  У вас есть опыт работы с этим камнем без пингвина и ведра? нет, и скорее всего граблей там будет предостаточно, учитывая китайскую документацию. но как будто пингвин это что-то плохое. Цитата(__inline__ @ Mar 28 2018, 12:51)  Внешней шины для подключения дополнительной периферии, наподобие как FSMC у STM32 у V3s как я понял нет? Если так - прощай дисплеи с контроллерами и своей памятью .. там есть параллельный 24х видео выход, и он даже support i80 interface with 18/16/9/8 bit, если не врут. ну а вообще мелкая cpld за <1$ параллельную шину для дисплея сделать может даже из SDIO какого-нибудь. раз уж так надо именно дисплей со своим контроллером подключить, хотя дисплей со своим контроллером при наличии на борту памяти и видеовыхода - "троллейбус из буханки черного или белого хлеба.jpg" Цитата(__inline__ @ Mar 28 2018, 12:51)  В БГА мне неинтересно. qfp и производительность гораздо больше чем у блэкфина, sdram, и дисплей - тут или трусы снимите или крестик наденьте.
|
|
|
|
|
Mar 29 2018, 00:23
|

Местный
  
Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126

|
Цитата(_pv @ Mar 28 2018, 19:34)  нет, и скорее всего граблей там будет предостаточно, учитывая китайскую документацию. там есть параллельный 24х видео выход, и он даже support i80 interface with 18/16/9/8 bit, если не врут. Смотрел даташит на v3s и схему камдроида на нём и пришёл к 2-м печальным выводам: 1) шина там только на 8 бит 2) и только RGB, а не i8080, управляющих стробов (nWR,nRD,nCS) я не нашёл, также как и их описания в даташите. Кусок подключения LCD к v3s в камдроиде:
Цитата(_pv @ Mar 28 2018, 19:34)  ну а вообще мелкая cpld за <1$ параллельную шину для дисплея сделать может даже из SDIO какого-нибудь. раз уж так надо именно дисплей со своим контроллером подключить, И проиграть в помехозащищённости - гнать БИТОВЫЙ клок, который должен быть в 8- или в -16 раз больше по частоте чтобы битики в байты преобразовать (некий параллельный регистр с последовательной загрузкой). Ну и нагромождение. Цитата(_pv @ Mar 28 2018, 19:34)  хотя дисплей со своим контроллером при наличии на борту памяти и видеовыхода - "троллейбус из буханки черного или белого хлеба.jpg" А один фиг тупую матрицу прийдётся цеплять на SPI или I2S, так что одним RGB-интерфейсом не отделаешься! А вот если i8080 - то это уже сказка!  Но беда в том, что C6745 который мне так понравился в QFP содержит только 16 и 8 битную шину, а хочется 32 и 16 как в БГА  Цитата(_pv @ Mar 28 2018, 19:34)  qfp и производительность гораздо больше чем у блэкфина, sdram, и дисплей - тут или трусы снимите или крестик наденьте. Нашёл тут ещё кандидата - STM32H743 - у него 1 Мбайт внутренней оперативы на частоте 400 МГц- весь код эмулятора туда можно затолкать, 32 бита SDRAM - на случай если некоторвые эмуляторы не поместятся + чтение РОМ-ов для эмуляторов + спроецированная FatFS - всё в SDRAM! Ну и RGB интерфейс там 24-битный (в корпусе LQFP208 точно!) и 32 разряда на SDRAM. И ещё питание одно - 3.3V, нет дополнительного гемороя с питанием как в Оллвиннерах и C6745. Ядро Cortex-M7 с его вкусным многооперандными командами Ассемблера типа: addeq r0,r1,r2 LSL r3 - 4 действия в одном - это лучше чем BF532 на 400 МГц и его 16-битной шиной! И наличие плавающей точки! И QFP корпус. И шить можно ST-LINK-ом то бишь дискавери. И 2D- ускоритель с 2-D DMA, цвет прозрачности, BitBlt - это всё для эмуляторов нужно!!  Одни плюсы! В общем вижу его в кандидатах на замену 532-го.
|
|
|
|
|
Mar 29 2018, 09:43
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(__inline__ @ Mar 29 2018, 03:23)  Ядро Cortex-M7 с его вкусным многооперандными командами Ассемблера типа: addeq r0,r1,r2 LSL r3 - 4 действия в одном - это лучше чем BF532 на 400 МГц и его 16-битной шиной! Только не забываем, что ARM-у чтобы сделать эту самую ADD над операндами в памяти, нужно эти операнды ещё в регистры загрузить, да потом ещё результат возможно нужно обратно в память выгрузить. В то время как система команд DSP обычно позволяет это делать одновременно. На C64xx-ядрах DSP я почти не писал на асм (за исключением небольших кусков), но вот к примеру на C55xx-ядре за один такт(!) можно посчитать 2 порядка КИХ-фильтра, т.е.: выполнить загрузку 1-го коэффициента фильтра из памяти + загрузку двух вх.значений из памяти + 2 MAC операции + 2 выгрузки вых.результатов в память + 0 тактов на организацию цикла (ведь всё это должно выполняться в цикле) + 0 тактов на организацию кольцевой адресации (если работаем с кольцевыми буферами вх и вых. данных). И всё это за один такт частоты ядра! И думаю, что на C64xx-ядре возможности должны быть явно не хуже, так как это более старшее ядро. А теперь вопрос: за сколько тактов выполнит это всё STM32H7? Если учесть что ARM-ядро не поддерживает параллельное выполнение операций (загрузку/выгрузку из/в память одновременно с операцией на АЛУ), требует для доступа к памяти (1+1*N) тактов (где: N - число читаемых/записываемых слов в одной команде), не поддерживает аппаратные циклы и циклическую адресацию памяти. Я конечно не имел дела с ADSP и блэкфинами, но думаю они должны иметь примерно такую же архитектуру, как и ядра TI. Цитата(__inline__ @ Mar 29 2018, 03:23)  Ядро Cortex-M7 с его вкусным многооперандными командами Ассемблера типа: addeq r0,r1,r2 LSL r3 - 4 действия в одном - это лучше чем BF532 на 400 МГц и его 16-битной шиной! И где кстати тут 4 действия? Всего одно - сложение одного операнда с другим сдвинутым на R3 разрядов.  ARM вообще не имеет команд выполняющих более одного действия. Это архитектурное ограничение. МАС-операция это тоже не 2 или 3 или сколько там действий, а одно - MAC. А вот настоящие DSP как правило - имеют. В этом и есть их главное различие. Цитата(__inline__ @ Mar 29 2018, 10:33)  Был один головняк(SDRAM), будет два (преобразователь SDIO в i8080 для LCD  ) Я не буду ничего советовать по интерфейсу подключения LCD (неохота разбираться в сигналах), но в том же C6745, как говорит сайт TI, есть 2 интерфейса McASP. Я помню в OMAP-L137 я использовал один из двух McASP: это порт умеющий формировать до 16 последовательных битовых потока (он имеет 16 сериализаторов), каждый из которых можно независимо сконфигурить на ввод или вывод. Диаграмма сигналов на каждом программируется тоже независимо от других сериализаторов и очень гибко. Обслуживать McASP может EDMA3 умеющий: 1-, 2- и 3-х-мерные пересылки (может пересылать 3-мерные матрицы) с независимыми произвольными приращениями по каждому измерению (можно например по строке делать скажем +N (положительное смещение на N слов), а по столбцу -M (отрицательное смещение на M слов). За счёт этого EDMA3 при пересылке может преобразовать массив с построчного на постолбцовый например. Также EDMA3 имеет 2 трансфер-контроллера, каждый из которых - независимый bus-master со своим приоритетом доступа к шине. У меня например на одном McASP висело 3 шт. 8-канальных SPI-АЦП + стерео аудио-кодек (ввод и вывод). И всё это работало параллельно одновременно и обслуживалось через EDMA3.
|
|
|
|
Сообщений в этой теме
__inline__ ADSP BF532 и TMS320C6745 Mar 26 2018, 13:51 jcxz Цитата(__inline__ @ Mar 26 2018, 16:51) В... Mar 26 2018, 15:00    _pv Цитата(__inline__ @ Mar 29 2018, 07:23) С... Mar 29 2018, 04:35     __inline__ Цитата(_pv @ Mar 29 2018, 05:35) мы навер... Mar 29 2018, 07:33      _pv Цитата(__inline__ @ Mar 29 2018, 14:33) д... Mar 29 2018, 17:25       __inline__ _pv, большое спасибо! Вот как раз этой схемы... Mar 30 2018, 00:16     AlexandrY Цитата(jcxz @ Mar 29 2018, 12:43) ARM воо... Mar 29 2018, 10:04      jcxz Цитата(AlexandrY @ Mar 29 2018, 13:04) А ... Mar 29 2018, 10:09     __inline__ Цитата(jcxz @ Mar 29 2018, 09:43) И где к... Mar 29 2018, 10:20      jcxz Цитата(__inline__ @ Mar 29 2018, 13:20) д... Mar 29 2018, 10:57 __inline__ Смотрю в даташит на 6745 и вижу - 2 шины EMIF A, B... Mar 28 2018, 11:24 jcxz Цитата(__inline__ @ Mar 28 2018, 14:24) В... Mar 28 2018, 11:32 __inline__ Поковырял немножко Linux BSP, "linux-master... Mar 30 2018, 06:27 _pv что-то всё действительно загадочно, есть регистр t... Mar 30 2018, 07:26 __inline__ Цитата(_pv @ Mar 30 2018, 07:26) что-то в... Mar 30 2018, 08:22
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|