Цитата(zltigo @ Apr 9 2006, 17:37)

В том-то и дело, что и нет. Все наоборот. Atmel в _идеальном_ случае 6 тактов (запись+автоматически_встваляемый_chipselect_waitstate+чтение=3такта два раза по 16бит)на запись/чтение 32бит против тех-же 6 тактов (запись+чтение=6тактов один раз 32bit)
но на почти ВДВОЕ большей частоте.

Я так разумею:
* пришло слово по SPI (16 бит для удобства)
* записалось оно в регистр данных SPI
* выставили мы запрос на PDC
* он внутри себя сформировал адрес
* "внушил" ядру, что в следующем такте оно курит
* получив доступ к шине, выставил на нее сформированный адрес и данные из регистра данных SPI.
* завершил транзакцию, и передал управление шиной ядру
Я не вижу причин, по которой такая транзакция будет отличаться от транзакции ядра.
Цитата(zltigo @ Apr 9 2006, 17:47)

А на пальцах - имеем только ДВА фронта на такт и по этим двум фронтам не сделать все необходимые
действия по выставлению адреса, выборки, RD, ожиданию данных, фиксации данных, _снятию_выборки_, выставлению нового адреса, снова выборки,......
НЕ ВОЗМОЖНО СДЕЛАТЬ. Посему минимум один такт пропускают, но продолжают говорить о
1 такте :-) Реклама, короче.
Кроме двух фронтов еще есть куча фронтов, полученных на задержках. Причем это не формирователи импульсов на задержках, а вполне корректные задержанные фронты. Вот на них все и делается в ядре проца.
Спорить дальше бесполезно, нужно брать в руки плату, делать jump сам на себя из ОЗУ, и смотреть хорошим осцилом, что на шине творится.