Все верно, переход не учитывал, поскольку имел в виду собственно доступ к порту по шине. С переходами все усложняется, появятся такты ожидания медленной флеши STM32 и работа prefetch buffer(если код из флеш). Непосредственный переход двухтактный плюс два такта ожидания на загрузку буфера из флеши (хотя зачем его загружать, если данные влазят в 8 байтовый буфер?), минимум 4. У вас получается 5 тактов. Доберусь до нормального осциллографа, попытаюсь разобраться. Может выравнивание данных сказывается.
По второму вашему примеру получается логично 20 тактов, 8 STR по 2 такта, и 4-х тактный переход, из которых два такта ожидания доступа флеши.