[an error occurred while processing this directive]
|
существует работающее устройство. в нем fpga выполняет функцию хоста
по отношению к периферии - внешней озу(цифровой автомат на 7 состояний,
последовательное чтение/запись линейного(00000..11111) адресного пространства озу)
и интерфейсным имс. для такой задачи контроллер ставить было нелогично.
новая задача - дополнить это устройство новым интерфейсом.
сложность(?) вопроса реализации задачи на текущей архитектуре -
для обслуживания нового интерфейса требуется производить многократн чтение/запись
адресов новой имс, разбросанных непоследовательно, псевдослучайно,
причем в зависимости от значения предыидущего чтения.
варианты реализации
1:
цифровой автомат, где адреса и данные операций доступа выражены явно - примерно 40
состояний автомата с большими затратами логики.
2:
установка доп. мкконтроллера для обслуживания новой имс - данные для зыписи генерируются
в fpga, кроме того последняя выступает хостом - полностью контролирует шины и появление
нового хоста ... DMA, захват шины? не улыбается
3:
развитие варианта 1. для экономии логики адреса, данные и условия операций доступа
fpga читаeт с внешней пзу или со внутренней blockram, специальным образом
предустановленной - необходимость реализации псевдопроцессорногоадра со стеком,
счетчикам комманд, psw и т.д.
или..?
стандартные/альтернативные решения (желательно на fpga)?
E-mail: info@telesys.ru