-
- Ну тут скорее не совместимость, а использование прежнего ядра.
Совместимость образовалась автоматом. Q43 у меня стал первым МК
18-ого семейства, на который я писал код на Си. Причем с нулевой
оптимизацией и он меня полностью устроил по результату
сгенерированного кода. Почти все драйверы проекта оказались
хардварными. Код в прерываниях минимальный. До этого даже в мыслях
не было писать на Си для 8-битного Микрочипа. Настолько много было
критических участков. - my504(10.04.2021 14:04)
- DMA удалось заюзать? - Evgeny_CD(10.04.2021 14:15)
- Да, конечно. Там весьма недурственный ДМА. Вообще без ограничений
на адресное пространство. Можно из флеша, из ЕЕ, в том числе. Можно
группировать транзакции в пакет (за один реквест). Только нужно не
забыть выставить приоритеты арбитража шины. - my504(10.04.2021 15:53)
- Удалось понять, на время доступа DMA процессор тормозится, или там
псевдо-двухпортовое ОЗУ? - Evgeny_CD(10.04.2021 17:06)
- Если транзакция попадает на выборку кодом, то ядро тормозится. Но
это если приоритет ДМА выше приоритета кода. Всего арбитр различает
ДЕВЯТЬ объектов приоритета - MAIN, ISR, шесть каналов DMA и
SCANNER. Последний работает с CRC модулем при хардварном контроле
флеша в бутлоадере. - my504(10.04.2021 17:22)
- Т.е. там внутри одна шина? - Evgeny_CD(10.04.2021 17:30)
- Ну это же не CM0. ))) Bus Matrix тут отсутствует. Слишком простая
архитектура. Но я проверял ногодрыгом пузырьки от DMA. Практически
незаметно. Ведь далеко не все инструкции используют ОЗУ, но даже
если и используют, то в четырех тактах инструкции всегда есть
"окно". Даже при транзакциях из флеша код не слишком дергается... - my504(10.04.2021 17:46)
- Спасибо! - Evgeny_CD(10.04.2021 17:52)
- Ну это же не CM0. ))) Bus Matrix тут отсутствует. Слишком простая
архитектура. Но я проверял ногодрыгом пузырьки от DMA. Практически
незаметно. Ведь далеко не все инструкции используют ОЗУ, но даже
если и используют, то в четырех тактах инструкции всегда есть
"окно". Даже при транзакциях из флеша код не слишком дергается... - my504(10.04.2021 17:46)
- Т.е. там внутри одна шина? - Evgeny_CD(10.04.2021 17:30)
- Если транзакция попадает на выборку кодом, то ядро тормозится. Но
это если приоритет ДМА выше приоритета кода. Всего арбитр различает
ДЕВЯТЬ объектов приоритета - MAIN, ISR, шесть каналов DMA и
SCANNER. Последний работает с CRC модулем при хардварном контроле
флеша в бутлоадере. - my504(10.04.2021 17:22)
- Удалось понять, на время доступа DMA процессор тормозится, или там
псевдо-двухпортовое ОЗУ? - Evgeny_CD(10.04.2021 17:06)
- Да, конечно. Там весьма недурственный ДМА. Вообще без ограничений
на адресное пространство. Можно из флеша, из ЕЕ, в том числе. Можно
группировать транзакции в пакет (за один реквест). Только нужно не
забыть выставить приоритеты арбитража шины. - my504(10.04.2021 15:53)
- DMA удалось заюзать? - Evgeny_CD(10.04.2021 14:15)
- Ну тут скорее не совместимость, а использование прежнего ядра.
Совместимость образовалась автоматом. Q43 у меня стал первым МК
18-ого семейства, на который я писал код на Си. Причем с нулевой
оптимизацией и он меня полностью устроил по результату
сгенерированного кода. Почти все драйверы проекта оказались
хардварными. Код в прерываниях минимальный. До этого даже в мыслях
не было писать на Си для 8-битного Микрочипа. Настолько много было
критических участков. - my504(10.04.2021 14:04)