Чт фев 07, 2019 22:55:30
Чт фев 07, 2019 23:09:48
Чт фев 07, 2019 23:32:39
2 - есть ли возможность вывести наружу сигнал тактовой частоты микроконтроллера
3 - может ли PLL работать от внешнего генератора (что бы иметь возможность синхронизировать микроконтроллер со внешним устройством по частоте
Пт фев 08, 2019 00:25:56
Пт фев 08, 2019 00:55:04
В первую очередь от железа. И от частоты периферийных шин конечно же.protoder писал(а):ОТ чего зависит скорость? ОТ времени обработки ассемблерных команд, или от наличия команд, которых нет в младших моделях.
Для чего вам асм? Нужно быстро читать или записывать в порт? Лучше использовать DMA. http://www.cyberforum.ru/blogs/204791/blog5169.htmlprotoder писал(а):А можете указать комбинацию ассемблерных команд, которая прочитает за 2 такта (не смейтесь, я пока очень мало знаю про stm32)?
Прохождение тактового сигнала от HSE через умножитель (PLL).protoder писал(а):Звучит очень круть! А вот по русски
Разогнать можно до 96 МГц. http://purebasic.mybb.ru/viewtopic.php?id=583protoder писал(а):какова реальная максимальная частота работы контролеров. Например, 48 мГц в F0- это потолок. Или работают и на 64 мГц?
Пт фев 08, 2019 00:55:54
ОТ чего зависит скорость? ОТ времени обработки ассемблерных команд, или от наличия команд, которых нет в младших моделях.
А можете указать комбинацию ассемблерных команд, которая прочитает за 2 такта (не смейтесь, я пока очень мало знаю про stm32)?
Звучит очень круть! А вот по русски сможетеtnt (говорю ж, я пока мало что про stm знаю. Пока только пытаюсь понять, стоят ли они знакомства).
И еще вопрос - а какова реальная максимальная частота работы контролеров. Например, 48 мГц в F0- это потолок. Или работают и на 64 мГц?
Пт фев 08, 2019 01:16:09
Пт фев 08, 2019 01:33:45
Очень сори - но кто такой HSE?
В datasheet на 407 пишут про Up to 136 fast I/Os up to 84 MHz. Это что имеется ввиду? Частота шины портов?
А вообще откуда такая информация? Опыт - или есть какая-то документа, в которой все это прочитать можно?
Конвеер? STM32 используют конвеер? То есть там не RealTime? Это сюрприз из неприятных. И это справедливо даже для M0? Или только для М4?
Пт фев 08, 2019 01:45:28
Пт фев 08, 2019 04:40:46
Пт фев 08, 2019 04:53:51
Пт фев 08, 2019 05:10:03
Пт фев 08, 2019 12:18:01
При чем здесь частота? Никогда не задумывались как МК может исполнять инструкцию за такт? Ведь ее нужно извлечь из флеша, поместить в проц, декодировать, исполнить и т. д. Даже в AVR (ATmega) есть конвейер.protoder писал(а):Странно - я думал, на таких частотах конвееры еще не нужны.
У нее тоже конвейер.protoder писал(а):Это большой плюсик в сторону atxmega
Пт фев 08, 2019 12:51:02
Пт фев 08, 2019 19:08:24
Пт фев 08, 2019 19:17:50
В разгоне F030 с Flash latency =0 работал до 40-42МГц, с =1 до 75-80МГц.
Пт фев 08, 2019 20:34:41
Пт фев 08, 2019 20:52:01
R0 = GPIOA->IDR;
R1 = GPIOA->IDR;
R2 = GPIOA->IDR;
R3 = GPIOA->IDR;
buff[i++] = R0;
buff[i++] = R1;
buff[i++] = R2;
buff[i++] = R3;
На М3 пробовал блочные команды чтобы захватить и сохранить за 2 такта, но они работали до 31(15 ?) выборки. Далее компилер переводил на длинные команды. Такое не подошло.
LDRB R0, [R1]
STRB R0, [R2], #1
Выходит что с латентностью WS=1 скорость обработки команд не уменьшается.
Сб фев 09, 2019 04:45:35
Сб фев 09, 2019 11:25:31
buff[i++] = GPIOA->IDR;
ldr r1, [r3, #16]
ldr r2, [r3, #16]
ldr r7, [r3, #16]
ldr r6, [r3, #16]
ldr r5, [r3, #16]
ldr r4, [r3, #16]
ldr r0, [r3, #16]
strb.w r1, [r8, #484]
ldr r1, [r3, #16]
strb.w r2, [r8, #485]
ldr r2, [r3, #16]
strb.w r7, [r8, #486]
ldr r7, [r3, #16]
strb.w r6, [r8, #487]
ldr r6, [r3, #16]
strb.w r5, [r8, #488]
ldr r5, [r3, #16]
strb.w r4, [r8, #489]
ldr r4, [r3, #16]
strb.w r0, [r8, #490]
ldr r0, [r3, #16]
strb.w r1, [r8, #491]
ldr r1, [r3, #16]
strb.w r2, [r8, #492]
ldr r2, [r3, #16]
strb.w r2, [r8, #499]
strb.w r1, [r8, #498]
strb.w r7, [r8, #493]
strb.w r6, [r8, #494]
strb.w r5, [r8, #495]
strb.w r4, [r8, #496]
strb.w r0, [r8, #497]
ldr r0, [r3, #16]
ldr r1, [r3, #16]
ldr r2, [r3, #16]
ldr r3, [r3, #16]
strb.w r3, [r8, #503]
strb.w r0, [r8, #500]
strb.w r1, [r8, #501]
strb.w r2, [r8, #502]