И еще там есть DMA, что для циклически повторяющихся задач (к которым и относится проигрывание дорожки) вообще идеально подходит.

- - - Добавлено - - -

Цитата Сообщение от s_kosorev Посмотреть сообщение
итого при 120 инструкций на байт MFM, ISR в 20-30 тактов, оставляет уйму времени для подкачки данных с SDCARD, 20-25% времени ядра на ISR это ниочем, зачем тут ARM с кучей не нужной для задачи перефирии?

Кстати в ARM почти весь профит от частоты съест вход в ISR, возможно даже будет не хватать
Не очень понятно, откуда оценка в 20-30 тактов на ISR (и что ISR делает?). Далее, с SD данные подкачивать нужно, видимо, с файловой системой (FatFS/TinyFS/PicoFS/etc), что совсем не быстро, если предполагается это делать периодически ввиду отсутствия буфера на дорожку.

Опять же, с какого перепугу в ARM профит будет съедать вход в ISR? мне немножечко приходилось работать с тем и с другим, уверяю, это достаточно быстро даже на 48МГц.

Если у вас идиосинкразия на ARM, тогда другое дело. Наличие ненужной периферии огорчает? Возьмите Z80, будет благолепно. Просто я не понимаю, отчего не взять современный дешевый (84р, да?) МК с кучей возможностей уже включенных в эти 84р, если нужно решить задачу, а не потрахаться

- - - Добавлено - - -

Цитата Сообщение от Trol73 Посмотреть сообщение
На ассемблере есть смысл писать критичные к скорости выполнения куски кода в конечном приложении. Это позволить немного ускорить код. Сейчас же речь о прототипе, который только формирует сигнал и ничего при этом не делает, с картой не работает. Эти 10% выигрыша быстродействия тут не должны играть решающую роль. Когда добавится работа с картой требования к процессорному времени, затрачиваемому на формирования сигнала могут возрасти.

PS. использование 48МГц МК для эмуляции флопа для компьютеров, частота которых измеряется единицами МГц - как-то неприлично, имхо
Дисковод от ленты немножечко отличается. Скажем, у дисковода есть определенные требования к скорости позиционирования головок (читай - к загрузке/отдаче новой дорожки) - допустим, 3мс на шаг и 15мс на стабилизацию после последнего шага. Для достоверной эмуляции хорошо бы эти требования выдерживать. Есть платформы, под которые существует ненулевое количество софта, смертельно обижающегося на "неуспеваемость" эмуляции.

Про неприличность 48МГц - ну вы же наверняка пользуетесь часами в смартфоне, без особых угрызений совести