[an error occurred while processing this directive]
Чайниковский вопрос...(+)
(«Телесистемы»: Конференция «Языки описания аппаратуры (VHDL и др.))

миниатюрный аудио-видеорекордер mAVR

Отправлено kos 18 марта 2004 г. 16:28

Можно ли в Альтере связать внутри несколько сигналов в один через примитв tri? AHDL. Понимаю что в принципе это будет мултиплексор. Или вернее шина... К которой должны подключатся поочереди то одна то другая индентичная часть схемы. Я сделал вот так(Это тест получается ерунда!)

PARAMETERS
(
Blok=3,
Width=Blok*4,
IF_CONST=(2^Width)-1
);
SUBDESIGN Test_2
(
Sync_clk:input;
En_Blok:input;
Rele[Width-1..0]: INPUT;
Int:OUTPUT;
out[Width-1..0]:output;
)
variable
Temp[Blok-1..0]:node;
Out_Blok[Blok-1..0][3..0]:tri;
Temp_Out[3..0]:tri_state_node;
BEGIN
FOR i IN 0 to Blok-1 GENERATE
Temp[i]=Rele[i*4]&Rele[(i*4)+1]&Rele[(i*4)+2]&Rele[(i*4)+3];
Out_Blok[i][0].in=Rele[i*4];
Out_Blok[i][1].in=Rele[(i*4)+1];
Out_Blok[i][2].in=Rele[(i*4)+2];
Out_Blok[i][3].in=Rele[(i*4)+3];
END GENERATE;

Int=Temp[0];
Temp_Out[]=Out_Blok[0][0].out;
Temp_Out[3..0]=Out_Blok[0][].out;-- так делать???
Temp_Out[3..0]=Out_Blok[1][].out;
out[3..0]=Temp_Out[3..0];--Out_Blok[1][].out;
out[11..4]=Out_Blok[2..1][].out;
Out_Blok[0][].oe=En_Blok;--а потом выбирать??? где засада?
Out_Blok[1][].oe=!En_Blok;
END;

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru