Добрый день,
Да, использование интерфейса VJTAG на основе статьи возможно. Сама мегафункция VJTAG содержит один конфигурируемый параметр - ширина регистра инструкций, которая задаёт максимально возможное число декодируемых команд. В статье этот параметр равен 6 - то есть возможно задание до 64-х различных команд. Декодирование команд осуществляется внешним по отношения к мегафункции VJTAG модулем vjtag_decoder. Именно этот модуль является интерфейсом со всеми устройствами на плате. В статье "Интерфейс VJTAG для отладочной платы DK-START-3C25N" модуль vjtag_decoder подключен только к светодиодам и памяти SSRAM. Рекомендую также ознакомиться со статьёй "Контроллер DDR SDRAM для платы DK-START-3C25N", опубликованной в журнале "Современная электроника" №1,2011г. В этой статье модуль vjtag_decoder также управляет памятью DDR SDRAM через интерфейс VJTAG.
В целом модуль vjtag_decoder взаимодействует не с самими устройствами (такими как различные типы памяти), а с их контроллерами (например ssram_cntr). То есть в принципе если модуль ssram_cntr при том же наборе входных команд, которых в блоке vjtag_decoder для памяти SSRAM три (Write SSRAM memory 000010, Read SSRAM memory set parameters 000011, Read SSRAM memory actual read 000100) будет своими выходными сигналами контролировать флэш-память или любое другое устройство, то возможно использование интерфейса VJTAG (и управляющего сценария), описанного в статье, без изменений. С другой стороны, даже если на Вашей плате установлена память DDR SDRAM, использование контроллера VJTAG из статьи в номере №1 за 2011 год без доработок кода возможно только в том случае, если Ваш контроллер DDR SDRAM будет совместим по набору команд.
Что касается управляющего сценария - он достаточно прост при кажущейся сложности. 90 процентов сценария - это формирование графики, которая в принципе не критична. Сами команды для VJTAG устройства посылаются командами device_virtual_ir_shift и device_virtual_dr_shift. Допустим, команда
device_virtual_ir_shift -instance_index 0 -ir_value 3
устанавливает модуль vjtag_decoder в состояние установки параметров для операции чтения памяти SSRAM (3 в двоичном коде - 000011),
Следующая команда непредственно устанавливает параметры:
device_virtual_dr_shift -instance_index 0 -dr_value DDDDDDDD$ssram_cmd$seq_ssram_addr -length 64 -value_in_hex
Именно эти команды специфичны для реализации модуля vjtag_decoder и должны быть изменены, если Ваш модуль vjtag_decoder будет отличаться.
Обобщая вышесказанное - использование готового контроллера VJTAG и управляющего сценария (особенно из статьи №1 за 2011г) возможно без изменений. Но тогда потребуется написание контроллеров устройств (флэш-памяти, DDR SDRAM), совместимых по командам с блоком vjtag_decoder. Второй вариант - использование своих контроллеров устройств, при этом потребуется модификация модуля vjtag_decoder и управляющего сценария. На мой взгляд, второй вариант предпочтительнее, так как контроллер VJTAG вместе с упавляющим сценарием на порядок проще, скажем, контроллера DDR SDRAM. Рекомендую начать со светодиодов - очень простое устройство, которое поможет Вам полностью понять суть работы VJTAG. При этом возможно использование кода из статьи практически без изменений для контроля 4-х светодиодов.