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

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

Отправлено yes 26 мая 2003 г. 19:42
В ответ на: Т.е. из какой библиотеки? отправлено Elresearch 26 мая 2003 г. 19:12

функция To_StdLogicVector перегружена для двух типов BIT_VECTOR и std_ulogic_vector, то есть если я применю эту функцию к std_logic_vector - получу ошибку, так как такая версия функции отсутствует (ну может есть в другой библиотеке)

поэтому я хочу узнать тип операнда (который является результатом какой-либо операции и допустим его тип не понятен) и поискать требуемую функцию в других библиотеках

это можно сделать написав свою функцию для определения типа, например так (пишу приблизительно чтобы показать идею), но это не элегантно

FUNCTION detect_type ( b : BIT_VECTOR ) report "bit_vector";
FUNCTION detect_type ( s : std_ulogic_vector ) report "std_ulogic_vector";
FUNCTION detect_type (s : integer) report "integer";
.....


просто я еще не разобрался с типами и трудно мне понять сообщение об ошибках

ну и вообще в С++ например принято переопределять =, почему в VHDL так не делают


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

Ответы


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

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

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

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

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


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

E-mail: info@telesys.ru