|
ARM c TFT контроллером и RAM > 2M |
|
|
|
 |
Ответов
|
May 24 2016, 19:06
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(Шаманъ @ May 24 2016, 11:26)  Посмотрел - мне многое не понравилось, как сделано. Например что, кроме шага 0.4? Для решения этой задачи есть модули содимм на основе этого чипа. Больше недостатков не заметил, кроме старого и медленного проца. Цитата(Шаманъ @ May 23 2016, 23:43)  Еще один вариант - у нас продают недорогие модули (SOM) на i.MX287 (с 128MB DDR2 памяти на плате). По периферии он мне весьма неплохо подходит, ядро правда старовато и JTAG на плате не выведен... Смысл? Этот камень уже скоро с производства наверно снимут. Берите уж тогда SOM на imx6s
|
|
|
|
|
May 24 2016, 20:01
|
Знающий
   
Группа: Участник
Сообщений: 758
Регистрация: 27-08-08
Пользователь №: 39 839

|
Цитата(mantech @ May 24 2016, 22:06)  Например что, кроме шага 0.4? Например, то, что нет DMA на SPI и UARTах. Таймеры слабоваты. Нет FPU, про ядро Вы уже написали. Три напряжения питания. Цитата Смысл? Ну он побыстрее будет и без проблем с корпусом. Цитата Этот камень уже скоро с производства наверно снимут. Да всех их когда-нибудь снимут  Его 10лет будут выпускать, выпустили его когда - лет 5 назад наверное, так что 5лет или около того еще есть, вон новые камни i.mx7 обещают только 5лет выпускать. Цитата Берите уж тогда SOM на imx6s  imx6s рассматривал, но у него часть доков под NDA, весьма важная. Да и он такой не слишком нужен в этом проекте. Если бы переползал на Линукс, то точно остановился бы на нем.
|
|
|
|
|
May 24 2016, 20:47
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(Шаманъ @ May 24 2016, 23:01)  imx6s рассматривал, но у него часть доков под NDA, весьма важная. Излазил его наверно больше, чем все здесь на форуме  , но кроме видеокорок все доки есть, изменил параметры sdma, чтоб работал, как dma2d, 3D вообще без надобности, остальное все было. Ну и проц и видеоблок в нем на порядок круче, чем все стм и иже с ними.. Цитата(Шаманъ @ May 24 2016, 23:01)  Например, то, что нет DMA на SPI и UARTах. Таймеры слабоваты. Нет FPU, про ядро Вы уже написали. Три напряжения питания. FPU - да нет так нет.. С уартом можно использовать фифо "Separate receive / transmit 64/16 bytes entry FIFO for data payloads" С спи - даже фифо не сделали - неуд! ЗЫ. Это все-таки считается application processor, поэтому уж что есть  Ну и usb типа EHCI - это совсем неплохо...
|
|
|
|
|
May 25 2016, 06:03
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(mantech @ May 25 2016, 02:47)  С спи - даже фифо не сделали - неуд! Почему не сделали?: Configurable bit length of a transaction from 1 to 32-bit and can be configured as burst mode, totally128-bit can be transmitted at one time128 бит - какое-никакое но FIFO. В STM32 и такого нет  Цитата(Шаманъ @ May 25 2016, 11:59)  Потому, что по тестам (на сахаре тестировали как-то) у него выходило 5MFLOPS, а у stm32f4 32MFLOPS - FPU это сила (если конечно плавающая точка нужна). На целочисленных операциях наверное Nuvoton немного быстрее будет, но stm32f7xx (Cortex-M7) уже будет лучше с любой стороны. Понятно что программная эмуляция будет гораздо медленнее аппаратного FPU! Что тут тестировать? Странно ещё что такая маленькая разница всего в 6 раз. А вот насчёт "любой стороны" я бы не был так категоричен. Какой размер кеша на stm32f7xx? А с какой частотой работает flash программ у него и какова ширина шины выборки команд из flash программ? А каково время входа в прерывание на stm32f7xx?
|
|
|
|
|
May 25 2016, 06:29
|
Знающий
   
Группа: Участник
Сообщений: 758
Регистрация: 27-08-08
Пользователь №: 39 839

|
Цитата(jcxz @ May 25 2016, 09:03)  Почему не сделали?: Configurable bit length of a transaction from 1 to 32-bit and can be configured as burst mode, totally128-bit can be transmitted at one time 128 бит - какое-никакое но FIFO. Это никак не FIFO - скорее извращенный DMA (на 4ре слова  ). stm32 запросто может такое делать даже древние stm32f1xx. Единственно, что хорошо у Нувотоновского SPI это возможность задать произвольную длину "слова". У меня, например, с одним из девайсов обмен ведется 24битными словами и в нынешней реализации у STM это очень неудобно. Цитата А вот насчёт "любой стороны" я бы не был так категоричен. Какой размер кеша на stm32f7xx? 4K+4K, но у него еще есть ITCM (16K) и DTCM (64K), а еще есть 256K быстрого ОЗУ. Для большинства решаемых задач требующих максимальной производительности ядра это более выгодная конфигурация. Цитата А с какой частотой работает flash программ у него и какова ширина шины выборки команд из flash программ? ITCM RAM работает на частоте ядра  , флеш 256битный. В случае "промаха" потребуется 8циклов (на частоте 216МГц), чтобы вычитать данные из флеша, если ART не промахивается, то исполнение идет без задержек. От меня встречный вопрос - сколько потребуется циклов Нувотону, чтобы вычитать данные с произвольного адреса из DDR2 памяти работающей на 150МГц? А если учесть, что по той же шине данные скармливаются на контроллер LCD и обрабатываются DMA2D, то все станет очень грустно. В stm32f7xx/f4xx такая архитектура, что можно минимизировать задержки из-за обращения ядра/DMA2D/LTDC к одним и тем же интерфейсам/шинам. Цитата А каково время входа в прерывание на stm32f7xx? У Cortex-Mx по этой части все будет много лучше ARM9. Фактически линейка Cortex-Mx создавалась с учетом минимизации отклика на прерывания.
Сообщение отредактировал Шаманъ - May 25 2016, 06:31
|
|
|
|
|
May 25 2016, 06:54
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(Шаманъ @ May 25 2016, 12:29)  Это никак не FIFO - скорее извращенный DMA (на 4ре слова  ). Почему это? Вполне себе обычный FIFO. Цитата(Шаманъ @ May 25 2016, 12:29)  От меня встречный вопрос - сколько потребуется циклов Нувотону, чтобы вычитать данные с произвольного адреса из DDR2 памяти работающей на 150МГц? А если учесть, что по той же шине данные скармливаются на контроллер LCD и обрабатываются DMA2D, то все станет очень грустно. У Нувотона кроме кеша кода есть кеш данных, который размером 16К, который сгладит проблемы с доступом к коду и данным в одной области RAM. А вот что будет когда Вы код разместите в "256K быстрого ОЗУ" откуда и данные надо выбирать. У Nuvoton тоже есть отдельная SRAM, где можно разместить быстрые данные, чтобы они не мешали выборке команд. Размер кеша в 4 раза больше + частота почти в 1.5 раза выше - я бы в большинстве задач (не связанных с float) поставил на Nuvoton, а не на stm32f7xx. Да и float часто маловато, нужен double, а тогда преимущество от аппаратного FPU полностью пропадает. Цитата(Шаманъ @ May 25 2016, 12:29)  У Cortex-Mx по этой части все будет много лучше ARM9. Фактически линейка Cortex-Mx создавалась с учетом минимизации отклика на прерывания. Правда что-ли?  А то что для входа/выхода в прерывание в Cortex-M необходимо как минимум сохранить/восстановить 8 слов на стеке, в то время как ARM9 для входа в прерывание просто переключает режим CPU. Если нужна очень быстрая реакция на какое-то прерывание, то ARM9 для этого гораздо лучше подходит с его системой прерываний. Если нужны вложенные прерывания или переключение контекстов, то здесь ARM9 хуже конечно. Да и вообще - у ARM9 есть огромный плюс перед Cortex-M - это полноценный MMU. Позволяющий делать гибкую защиту памяти. Мне этого очень не хватает в Cortex-M.
|
|
|
|
|
May 25 2016, 08:25
|
Знающий
   
Группа: Участник
Сообщений: 758
Регистрация: 27-08-08
Пользователь №: 39 839

|
Цитата(jcxz @ May 25 2016, 09:54)  Почему это? Вполне себе обычный FIFO. FIFO это когда Вы пишите в один и тот же регистр, а данные уходят в порядке записи. А здесь четыре отдельных регистра, так что на FIFO никак не тянет. Цитата У Нувотона кроме кеша кода есть кеш данных, который размером 16К, который сгладит проблемы с доступом к коду и данным в одной области RAM. Я же написал 4К+4К - у stm32f7xx тоже есть кэш данных. Кроме того код у Cortex-M7 скорее всего будет компактнее. Цитата А вот что будет когда Вы код разместите в "256K быстрого ОЗУ" откуда и данные надо выбирать. У Nuvoton тоже есть отдельная SRAM, где можно разместить быстрые данные, чтобы они не мешали выборке команд. А Вы что не в курсе, что Cortex-Mx как правило быстрее работают из флеша и никто в обычном ОЗУ код не размещает. Для этого есть ITCM на отдельной шине. Цитата Размер кеша в 4 раза больше + частота почти в 1.5 раза выше - я бы в большинстве задач (не связанных с float) поставил на Nuvoton, а не на stm32f7xx. Размер кэша больше в 4 раза, а SRAM меньше почти в шесть раз, плюс у stm32f7xx есть ITCM/DTCM (это может быть часто даже лучше кэша). Частота в 1.5 раза выше, но Cortex-M7 выдает 2.14DMIPS/MHz, а ARM9 только 1.1MIPS/MHz. Цитата А то что для входа/выхода в прерывание в Cortex-M необходимо как минимум сохранить/восстановить 8 слов на стеке, в то время как ARM9 для входа в прерывание просто переключает режим CPU. А то, что ARM9 не умеет прерывать load/stor multiple и подобные инструкции (в принципе этого уже достаточно, чтобы максимальное время было у ARM9 больше), не умеет делать tail-chaining, не умеет обрабатывать late-arriving? Да и регистры обычно нужны в прерывании. Сейчас начнете про FIQ рассказывать, но как правило его можно либо к какому-то одному источнику подключить, либо придется анализировать флаги от кого прерывание - думаете быстрее выйдет? В общем случае нет. Цитата Если нужна очень быстрая реакция на какое-то прерывание, то ARM9 для этого гораздо лучше подходит с его системой прерываний. Ой ли... Цитата Да и вообще - у ARM9 есть огромный плюс перед Cortex-M - это полноценный MMU. Позволяющий делать гибкую защиту памяти. Мне этого очень не хватает в Cortex-M. Вот объясните, если сторонний код (который может убить систему) у меня не запускается, а все ПО написано мною зачем мне ММУ?
Сообщение отредактировал Шаманъ - May 25 2016, 08:28
|
|
|
|
|
May 25 2016, 09:03
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(Шаманъ @ May 25 2016, 14:25)  FIFO это когда Вы пишите в один и тот же регистр, а данные уходят в порядке записи. А здесь четыре отдельных регистра, так что на FIFO никак не тянет. FIFO - это не количество регистров, это буфер, служащий для уменьшения кол-ва прерываний/DMA-транзакций. Вне зависимости от того как устроена запись в него. Цитата(Шаманъ @ May 25 2016, 14:25)  Размер кэша больше в 4 раза, а SRAM меньше почти в шесть раз, плюс у stm32f7xx есть ITCM/DTCM (это может быть часто даже лучше кэша). Частота в 1.5 раза выше, но Cortex-M7 выдает 2.14DMIPS/MHz, а ARM9 только 1.1MIPS/MHz. Да ну?! Неужто Cortex-M уже каждый такт умеет 2 с лишним команды выполнять? Меньше читайте рекламных буклетов и больше смотрите систему команд. Что ARM9 что Cortex-M в части наиболее употребительных команд - все однотактовые и примерно одинаковые. Вот в части всяких сложных а-ля DSP-расширений - там есть разница. Только сколько такого кода в реальных проектах? Цитата(Шаманъ @ May 25 2016, 14:25)  Сейчас начнете про FIQ рассказывать, но как правило его можно либо к какому-то одному источнику подключить, либо придется анализировать флаги от кого прерывание - думаете быстрее выйдет? В общем случае нет. Быстрее конечно. Так как не надо ни сохранять регистры, ни грузить рабочие переменные/указатели. Огромный выигрыш. И очень часто у меня бывает, что в изделии есть один источник высокочастотных прерываний, которые надо обрабатывать как можно быстрее. Не много, а всего один. И ARM7/9 здесь выигрывает значительно. Цитата(Шаманъ @ May 25 2016, 14:25)  Вот объясните, если сторонний код (который может убить систему) у меня не запускается, а все ПО написано мною зачем мне ММУ? Ну если Вы только Hello world пишете, то определённо не нужно. А у меня бывают проекты по нескольку десятков тысяч строк. Да ещё как правило несколько человек пишут.
|
|
|
|
|
May 25 2016, 10:19
|
Знающий
   
Группа: Участник
Сообщений: 758
Регистрация: 27-08-08
Пользователь №: 39 839

|
Цитата(jcxz @ May 25 2016, 12:03)  FIFO - это не количество регистров, это буфер, служащий для уменьшения кол-ва прерываний/DMA-транзакций. Вне зависимости от того как устроена запись в него. FIFO это не либой буфер, а это буфер организованный особенным образом (не думал, что нужно объяснять), и 4ре отдельных регистра с произвольным доступом это может быть что угодно но не FIFO. Цитата Да ну?! Неужто Cortex-M уже каждый такт умеет 2 с лишним команды выполнять?  Качаем http://infocenter.arm.com/help/topic/com.a...rtex_m7_trm.pdfЧитаем: Цитата The processor has an in-order super-scalar pipeline that means many instructions can be dual-issued, including load/load and load/store instruction pairs because of multiple memory interfaces Также читаем: http://infocenter.arm.com/help/index.jsp?t....faqs/4160.htmlЦитата The maximum performance of the ARM9 family is 1.1 Dhrystone VAX MIPS per MHz. These figures assume ARM code running from 32-bit wide, zero wait-state memory. If there are wait-states, or (for cores with caches) the caches are disabled, then the performance figures will be lower. Аналогичную цифру для stm32f7xx я уже приводил выше - 2.14DMIPS/MHz можете посмотреть сами у STM в доках. Цитата Быстрее конечно. Так как не надо ни сохранять регистры, ни грузить рабочие переменные/указатели. Огромный выигрыш. Да огромный выигрыш, как же. Если основная программа выполняет инструкцию с загрузкой/выгрузкой нескольких регистров (а их может быть и 10, и больше), то пока она не закончится Вы даже не сможете начать обрабатывать прерывание. При этом стек будет лежать в кэшируемой области по-любому (а можно и в DTCM положить  ), а вот загрузка-выгрузка может производиться и в некэшируемую область со всеми последствиями. Цитата Ну если Вы только Hello world пишете, то определённо не нужно. А у меня бывают проекты по нескольку десятков тысяч строк. Да ещё как правило несколько человек пишут. Ну в том проекте который собирается переезжать на сегодняшний день около 20тыс. строк, правда это не только код для обсуждаемого ARMа (там еще есть двухядерный DSP  ) - чуть больше Hello word Вам если и нужно, то MPU, а не MMU. MMU нужно если Вы собрались виртуальные адресные пространства организовывать и подобные вещи. Обычно это нужно когда будут запускаться сторонние программы - т.е. речь о совсем других системах. Кстати Cortex-M7 может быть с MPU
|
|
|
|
|
May 25 2016, 11:12
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(Шаманъ @ May 25 2016, 16:19)  Аналогичную цифру для stm32f7xx я уже приводил выше - 2.14DMIPS/MHz можете посмотреть сами у STM в доках. Вот типичный код для M4: Код LDRB R2,[R1, #+0] STRB R2,[R0, #+0] LDRB R2,[R1, #+1] STRB R2,[R0, #+1] LDRB R2,[R1, #+2] STRB R2,[R0, #+2] LDRB R2,[R1, #+3] SUBS R2,R2,#+1 STRB R2,[R0, #+3] LDRB R2,[R1, #+4] SUBS R2,R2,#+1 STRB R2,[R0, #+4] MOVW R2,#+2011 LDRB R1,[R1, #+5] ADD R1,R1,#+2000 CMP R1,R2 IT CC ADDCC R1,R1,#+100 STRH R1,[R0, #+6] BX LR За сколько тактов выполнится на M7 и на ARM9? Считая что нет ожиданий памяти и т.п. Правильно - примерно одинаково. Всё эти DMIPS-ы достигаются на сложных а-ля DSP командах, выполняющих несколько операций за команду. В обычном коде (не процедуры сигнальной обработки) такхи команд встречается оч. мало. А такой код будет выполняться быстрее на CPU с большей тактовой. Или M7 сможет автоматически запараллелить выполнение каких-то команд из этого кода? Цитата(Шаманъ @ May 25 2016, 16:19)  Да огромный выигрыш, как же. Если основная программа выполняет инструкцию с загрузкой/выгрузкой нескольких регистров (а их может быть и 10, и больше), то пока она не закончится Вы даже не сможете начать обрабатывать прерывание. И что? Ну пускай не может прервать. Только это всего одна команда. А Cortex-M на вход/выход потратит одну такую операцию на вход (8 сохранений контекста), потом в ISR надо загрузить как минимум один указатель да рабочую область ОЗУ с переменными, загрузить все переменные, перед завершением все переменные выгрузить (если нужно), восстановить контекст (8 чтений). Разницу ощущаете? Цитата(Шаманъ @ May 25 2016, 16:19)  Вам если и нужно, то MPU, а не MMU. MMU нужно если Вы собрались виртуальные адресные пространства организовывать и подобные вещи. Обычно это нужно когда будут запускаться сторонние программы - т.е. речь о совсем других системах. Кстати Cortex-M7 может быть с MPU  MPU у меня везде используется, но он слишком слаб: всего 8 регионов, минимальная гранулярность 32 байта (вроде) и регионы должны быть выровнены на границы кратные размеру. Это очень сильно сокращает возможности защиты. MMU не только для виртуализации, он и по защите гораздо более гибок. И кешем данных можно управлять удобнее с помощью него.
|
|
|
|
|
May 25 2016, 12:31
|
Знающий
   
Группа: Участник
Сообщений: 758
Регистрация: 27-08-08
Пользователь №: 39 839

|
Цитата(jcxz @ May 25 2016, 14:12)  Вот типичный код для M4: Код LDRB R2,[R1, #+0] STRB R2,[R0, #+0] LDRB R2,[R1, #+1] STRB R2,[R0, #+1] LDRB R2,[R1, #+2] STRB R2,[R0, #+2] LDRB R2,[R1, #+3] SUBS R2,R2,#+1 STRB R2,[R0, #+3] LDRB R2,[R1, #+4] SUBS R2,R2,#+1 STRB R2,[R0, #+4] MOVW R2,#+2011 LDRB R1,[R1, #+5] ADD R1,R1,#+2000 CMP R1,R2 IT CC ADDCC R1,R1,#+100 STRH R1,[R0, #+6] BX LR За сколько тактов выполнится на M7 и на ARM9? Считая что нет ожиданий памяти и т.п. Правильно - примерно одинаково. Пример еще более искусственный, чем тесты. Цитата Всё эти DMIPS-ы достигаются на сложных а-ля DSP командах, выполняющих несколько операций за команду. Да нет, на обычных тоже работает. Достаточно переставить у Вас команды и, если вычитываемые и записываемые данные окажутся в памяти на разных шинах (что довольно типично, например, загрузка констант из флеша в ОЗУ) каждая загрузка/сохранение будет выполнена одновременно. Цитата И что? Ну пускай не может прервать. Только это всего одна команда. А Cortex-M на вход/выход потратит одну такую операцию на вход (8 сохранений контекста), потом в ISR надо загрузить как минимум один указатель да рабочую область ОЗУ с переменными, загрузить все переменные, перед завершением все переменные выгрузить (если нужно), восстановить контекст (8 чтений). Разницу ощущаете? Та одна команда может столько тактов утянуть... В ARM9 переменные в регистры загружать не надо? Вы о чем? После входа в ISR можно сразу работать. А вот с ARM9, если Вы собираетесь на С обработчик писать, будет засада, ибо рабочие регистры R0..R3 не переключаются при смене контекста. Цитата MPU у меня везде используется, но он слишком слаб: всего 8 регионов, минимальная гранулярность 32 байта (вроде) и регионы должны быть выровнены на границы кратные размеру. Это очень сильно сокращает возможности защиты. MMU не только для виртуализации, он и по защите гораздо более гибок. И кешем данных можно управлять удобнее с помощью него. Мне сложно представить задачу где нужно такое. Либо притянуто за уши, либо проблема с архитектурой ПО. P.S. Что-то от темы мы сильно удалились... Я бы с удовольствием послушал mantech про standalone i.MX6. Интересно плата была своя или какой-то SoM использовался? Может это решение (в том числе и "на вырост"  , а если четырехядерный поставить  , то можно даже от DSP процессора избавиться, хотя это и не актуально, но все же...).
Сообщение отредактировал Шаманъ - May 25 2016, 12:33
|
|
|
|
|
May 26 2016, 04:41
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(Шаманъ @ May 25 2016, 18:31)  Пример еще более искусственный, чем тесты. Почему искусственный? Это кусок реального листинга. Взятый наугад. Цитата(Шаманъ @ May 25 2016, 18:31)  Да нет, на обычных тоже работает. Достаточно переставить у Вас команды и, если вычитываемые и записываемые данные окажутся в памяти на разных шинах (что довольно типично, например, загрузка констант из флеша в ОЗУ) каждая загрузка/сохранение будет выполнена одновременно. Ну если это действительно так и последовательность STR R2,[R0] LDR R3,[R1] если R0 и R1 указывают в регионы памяти на разных шинах, будет выполнена за 1 такт, то тогда да - это большой плюс. Хотя утверждать это по вышеприведённой цитате из TRM я бы не стал. Хотелось бы увидеть более конкретное доказательство. Цитата(Шаманъ @ May 25 2016, 18:31)  Та одна команда может столько тактов утянуть... В ARM9 переменные в регистры загружать не надо? Вы о чем? После входа в ISR можно сразу работать. А вот с ARM9, если Вы собираетесь на С обработчик писать, будет засада, ибо рабочие регистры R0..R3 не переключаются при смене контекста. Мне сложно представить задачу где нужно такое. Либо притянуто за уши, либо проблема с архитектурой ПО. Я о FIQ. И о том, что можно написать ISR, который будет уже хранить все рабочие переменные/указатели в регистрах R8-R14 без необходимости их загрузки при входе в ISR. Таким образом можно получить наибольшую скорость реакции на прерывание. Мне такие ISR как раз и приходилось писать. Конечно на асм. Цитата(mantech @ May 26 2016, 02:20)  (к сожалению, без MMU кэши не работают). 4) запуск контроллера прерываний(он там как у нувотона, с программным выбором вектора из таблицы). Хмм... очень похоже на ARM9. Там тоже кеш данных без MMU не работает. Хотя кеш кода работает и без MMU. Контроллер прерываний там как у ARM9 (IRQ, FIQ, банковые регистры состояний CPU, etc.)?
|
|
|
|
|
May 26 2016, 11:59
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(jcxz @ May 26 2016, 07:41)  Хмм... очень похоже на ARM9. Там тоже кеш данных без MMU не работает. Хотя кеш кода работает и без MMU. Контроллер прерываний там как у ARM9 (IRQ, FIQ, банковые регистры состояний CPU, etc.)? Да, все очень похоже, поправил несколько инструкций CP15 и все заработало. Сравнивал с АРМ11, но и 9й примерно такой-же. Добавлен кэш L2, но он тоже стандартный АРМовский. Цитата(aaarrr @ May 25 2016, 23:48)  А что там пробовать, если есть u-boot? А так A20 - процессор просто замечательный, с загрузкой только есть некоторые "приколы". Убут мне не подходил, от слова "совсем". Иначе не мучался бы со своим бутлодырем. Просто тот убут, который был с мх6 грузил только с одной сд карты и по сети. Сеть меня вообще не интересовала, а вот нужна была поддержка обеих сд контроллеров, усб-флешек и фат16 и 32. Ну а делать так, что убут грузит мой бут, тот программу и все остальное - это изврат...
Сообщение отредактировал mantech - May 26 2016, 12:00
|
|
|
|
Сообщений в этой теме
Шаманъ ARM c TFT контроллером и RAM > 2M Apr 25 2016, 14:57 Genadi Zawidowski Цитата(Шаманъ @ Apr 25 2016, 17:57) Приве... Apr 25 2016, 15:33 Шаманъ Цитата(Genadi Zawidowski @ Apr 25 2016, 18... Apr 25 2016, 16:30 Genadi Zawidowski Спутал с 272*480.
Не в курсе, я как отладку для r... Apr 25 2016, 16:49 skripach Посмотрите Nuvoton, есть чипы с 64 МБайтами на бор... Apr 25 2016, 17:31 romas2010 Цитата(Шаманъ @ Apr 25 2016, 17:57) Приве... Apr 25 2016, 18:08 pitt Цитата(romas2010 @ Apr 25 2016, 14:08) ..... Apr 25 2016, 18:16  EmbedElektrik Цитата(pitt @ Apr 25 2016, 21:16) Интерес... Apr 25 2016, 18:47   pitt Цитата(EmbedElektrik @ Apr 25 2016, 14:47... Apr 25 2016, 20:48    jcxz Nuvoton Вам уже порекомендовали.
А сколько бит цве... Apr 26 2016, 03:30     Шаманъ Цитата(jcxz @ Apr 26 2016, 06:30) А сколь... Apr 26 2016, 04:45 Шаманъ Цитата(romas2010 @ Apr 25 2016, 21:08) NX... Apr 25 2016, 19:01 AVI-crak Цитата(Шаманъ @ Apr 26 2016, 02:01) Нету ... Apr 26 2016, 09:39  Шаманъ Цитата(AVI-crak @ Apr 26 2016, 12:39... Apr 26 2016, 14:37   jcxz Цитата(Шаманъ @ Apr 26 2016, 20:37) Короч... Apr 27 2016, 06:42    Шаманъ Цитата(jcxz @ Apr 27 2016, 09:42) В исход... Apr 27 2016, 09:03     jcxz Цитата(Шаманъ @ Apr 27 2016, 15:03) Ну и ... Apr 27 2016, 09:16      Шаманъ Цитата(jcxz @ Apr 27 2016, 12:16) Так Nuv... Apr 27 2016, 11:07       jcxz Цитата(Шаманъ @ Apr 27 2016, 17:07) Старо... Apr 27 2016, 12:10        Шаманъ Цитата(jcxz @ Apr 27 2016, 15:10) Да кака... Apr 27 2016, 16:25         jcxz Цитата(Шаманъ @ Apr 27 2016, 22:25) Поско... Apr 28 2016, 04:14          Шаманъ Цитата(jcxz @ Apr 28 2016, 07:14) Так зао... Apr 28 2016, 07:32          mantech Цитата(jcxz @ Apr 28 2016, 07:14) Так зао... May 23 2016, 14:16         scifi Цитата(Шаманъ @ Apr 27 2016, 19:25) Это у... Apr 28 2016, 08:04          Шаманъ Цитата(scifi @ Apr 28 2016, 11:04) И что ... Apr 28 2016, 11:18           jcxz Цитата(Шаманъ @ Apr 28 2016, 17:18) Не, н... Apr 28 2016, 11:28            Шаманъ Цитата(jcxz @ Apr 28 2016, 14:28) Хорошая... Apr 28 2016, 12:54           mantech Цитата(Шаманъ @ Apr 28 2016, 14:18) ТФТ н... May 23 2016, 14:23      zombi Цитата(jcxz @ Apr 27 2016, 12:16) Так Nuv... Apr 27 2016, 11:13       den1s Цитата(zombi @ Apr 27 2016, 14:13) Дайте ... Apr 27 2016, 11:25 ViKo Даааа, развели Шамана знатно китайским супер-пупер... Apr 27 2016, 11:47 KRS Это у каких чипов????
" Nuvoton, есть чипы с ... Apr 27 2016, 12:10 _3m Цитата(KRS @ Apr 27 2016, 15:10) Это у ка... Apr 27 2016, 12:16 ViKo На сайте nuvoton:
Product Results:NUC970, 0... Apr 27 2016, 12:37 _3m Цитата(ViKo @ Apr 27 2016, 15:37) На сайт... Apr 27 2016, 13:07 jcxz Цитата(ViKo @ Apr 27 2016, 18:37) Внешняя... Apr 27 2016, 13:44 ViKo Ага, так там упаковали в один корпус два чипа? Apr 27 2016, 13:22 KRS А это чудо NUC972DF62 вообще реально купить? И дат... Apr 27 2016, 14:28 jcxz Цитата(KRS @ Apr 27 2016, 20:28) А это чу... Apr 27 2016, 16:10 skripach Один
Два
Дока.. Apr 27 2016, 14:30 KRS Ядро то понятно почему 926 - взяли...
Это для linu... Apr 27 2016, 21:09 glebka Прочитал всё, но всё ещё есть большие сомнения по ... May 23 2016, 11:48 scifi Цитата(glebka @ May 23 2016, 14:48) Прочи... May 23 2016, 12:29  jcxz Цитата(scifi @ May 23 2016, 18:29) Почему... May 23 2016, 14:16   scifi Цитата(jcxz @ May 23 2016, 17:16) А я не ... May 23 2016, 15:08    jcxz Цитата(scifi @ May 23 2016, 21:08) Невним... May 24 2016, 05:19   Genadi Zawidowski Цитата(jcxz @ May 23 2016, 17:16) S1D1378... May 23 2016, 22:02    scifi Цитата(Genadi Zawidowski @ May 24 2016, 01... May 24 2016, 05:23    Шаманъ Цитата(Genadi Zawidowski @ May 24 2016, 01... May 24 2016, 12:18  glebka Цитата(scifi @ May 23 2016, 15:29) Почему... May 24 2016, 10:37   jcxz Цитата(glebka @ May 24 2016, 16:37) Я раб... May 24 2016, 10:44   scifi Цитата(glebka @ May 24 2016, 13:37) Интер... May 24 2016, 11:00    glebka Цитата(scifi @ May 24 2016, 14:00) Тут я ... May 24 2016, 11:54 jcxz Цитата(glebka @ May 23 2016, 17:48) Если ... May 23 2016, 14:13 Шаманъ Цитата(mantech @ May 23 2016, 17:23) По м... May 23 2016, 20:43      Шаманъ Цитата(mantech @ May 24 2016, 23:47) Изла... May 25 2016, 05:59       mantech Цитата(Шаманъ @ May 25 2016, 08:59) Вы ег... May 25 2016, 20:20        aaarrr Цитата(mantech @ May 25 2016, 23:20) кто ... May 25 2016, 20:48        Шаманъ Нашел еще одного кандидата - SoM на S5P6818, доки ... Aug 22 2016, 16:01         mantech Цитата(Шаманъ @ Aug 22 2016, 19:01) SoM н... Aug 22 2016, 18:36          Шаманъ Цитата(mantech @ Aug 22 2016, 21:36) Что ... Aug 22 2016, 19:53           mantech Цитата(Шаманъ @ Aug 22 2016, 22:53) А что... Aug 22 2016, 20:23            Шаманъ Цитата(mantech @ Aug 22 2016, 23:23) Без ... Aug 23 2016, 06:04             mantech Цитата(Шаманъ @ Aug 23 2016, 09:04) Жалко... Aug 23 2016, 06:39           ViKo Цитата(jcxz @ May 25 2016, 12:03) Да ну?... May 25 2016, 09:18                aaarrr Цитата(mantech @ May 26 2016, 14:59) Прос... May 26 2016, 12:37                 Шаманъ Цитата(aaarrr @ May 26 2016, 15:37) Сеть ... May 26 2016, 15:26                 mantech Цитата(aaarrr @ May 26 2016, 15:37) А сам... May 26 2016, 19:07                  aaarrr Цитата(mantech @ May 26 2016, 22:07) Гора... May 26 2016, 19:27                   mantech Цитата(aaarrr @ May 26 2016, 22:27) Подкл... May 26 2016, 20:18    jcxz Цитата(mantech @ May 25 2016, 01:06) Боль... May 25 2016, 05:56 aaarrr Цитата(mantech @ May 26 2016, 23:18) На в... May 26 2016, 21:37 mantech Цитата(aaarrr @ May 27 2016, 00:37) USB з... May 27 2016, 17:16 Lagman Вот пример как прошивается CubieTruck через USB May 28 2016, 11:19
4 чел. читают эту тему (гостей: 4, скрытых пользователей: 0)
Пользователей: 0
|
|
|