Jools 0 22 сентября, 2005 Опубликовано 22 сентября, 2005 · Жалоба Хочу в ActiveHDL 6.3 объявить следующий тип: type ram_init_type is file of bit_vector (31 downto 0); не получается - компилятор советует поставить ";" после bit_vector Что это - глюк? Сильно не пинайте ногами - с файлами пытаюсь работать в первый раз. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
oleg_rudakov 0 22 сентября, 2005 Опубликовано 22 сентября, 2005 · Жалоба Хочу в ActiveHDL 6.3 объявить следующий тип: type ram_init_type is file of bit_vector (31 downto 0); не получается - компилятор советует поставить ";" после bit_vector Что это - глюк? Сильно не пинайте ногами - с файлами пытаюсь работать в первый раз. <{POST_SNAPBACK}> В стандартном VHDL без специальных ухищрений можно работать только с текстовыми файлами. Возвращается/записывается текстовая строка. На совести пользователя преобразовать ее содержимое в тот тип данных, который требуется. Я это делаю так: 1. Использую package с функциями для преобразования строк текста в любой из VHDL-типов и работы с файлами (CASTutil.zip в прицепе). 2. В Вашем testbench делаете нечто похожее на следующее library std; use std.textio.ALL; use CASTutil.all; . . . . MAIN_PROC: process FILE MY_FILE : text open read_mode is <путь к файлу\имя>; VARIABLE MY_FILE_LINE : line; VARIABLE MY_FILE_DWORD : std_logic_vector(31 downto 0); begin . . . if <ваше некое условие> and not endfile(MY_FILE) then readline(MY_FILE, MY_FILE_LINE); read(MY_FILE_LINE, MY_FILE_DWORD); end if; . . . end process; В указанном package определены процедуры записи и чтения данных типов, не совпадающих со стандартным package'м STD.TEXTIO. Удачи. CASTutil.zip Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 22 сентября, 2005 Опубликовано 22 сентября, 2005 · Жалоба В стандартном VHDL без специальных ухищрений можно работать только с текстовыми файлами. Возвращается/записывается текстовая строка. На совести пользователя преобразовать ее содержимое в тот тип данных, который требуется. Я это делаю так: Вы не совсем правы :) в ВХДЛ есть еше работа с бинарными файлами, но есть проблема, что бинарные файлы Альдек например понимает только как файлы с числами формата integer, да еще и с big endian напрягает только не возможность по файл перемещаться :( type FT is file of integer; file pipa_file : FT; file_open(file_result, pipa_file, "pipa.dat", read_mode); if (file_result /= OPEN_OK) then report "File open error!" severity FAILURE; end if; read(pipa_file, idata); Удачи Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 22 сентября, 2005 Опубликовано 22 сентября, 2005 · Жалоба ссори litle endian, первым записан младший байт :)) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Jools 0 23 сентября, 2005 Опубликовано 23 сентября, 2005 · Жалоба ссори litle endian, первым записан младший байт :)) Вот-вот это мне и не понравилось, поэтому я решил попробывать поменять тип с integer на bit_vector и тут облом :( oleg_rudakov: Спасибо, посмотрим что это такое! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 23 сентября, 2005 Опубликовано 23 сентября, 2005 · Жалоба Вот-вот это мне и не понравилось, поэтому я решил попробывать поменять тип с integer на bit_vector и тут облом :( Дык в чем трабла то ? распарсить 32 бита ?? пишем функцию и вуаля :) + с любого сишного файла на ПК делаем дамп того что нужно и поднимаем в тестбенче :) удачи Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Jools 0 23 сентября, 2005 Опубликовано 23 сентября, 2005 · Жалоба Дык в чем трабла то ? распарсить 32 бита ?? пишем функцию и вуаля :) + с любого сишного файла на ПК делаем дамп того что нужно и поднимаем в тестбенче :) Хотел так и сделать ( и теперь, наверное, сделаю так). Но смущало то, что в описании сказано о поддержке типа bit_vector, а компилятор его не воспринимает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 23 сентября, 2005 Опубликовано 23 сентября, 2005 · Жалоба а компилятор его не воспринимает. Это точно :( сам в свое время на этом накололся, часа на три :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться