Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Вс дек 17, 2017 06:05

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 26 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: VHDL: основы
СообщениеДобавлено: Сб мар 30, 2013 21:37 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6104
Благодарил (а): 14 раз.
Поблагодарили: 96 раз.
WingLion писал(а):
похоже, меня бес попутал... То, что мне было нужно - совсем не то, что написал выше..

Ну вобщем да, это именно T-trigger (toggle). По обоим фронтам - это double data rate.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: VHDL: основы
СообщениеДобавлено: Ср авг 28, 2013 00:54 
Не в сети
Аватара пользователя

Зарегистрирован: Вт апр 16, 2013 15:20
Сообщения: 59
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
http://habrahabr.ru/post/149686/ Forth-процессор на VHDL
https://github.com/whiteTigr/vhdl_cpu/b ... er/cpu.vhd - код процессора.
При компиляции использую GHDL.
[sun@localhost cpu]$ ghdl -a --ieee=synopsys -fexplicit cpu.vhd
cpu.vhd:229:19: no declaration for "uart"
ghdl: compilation error
[sun@localhost cpu]$
Ошибка появляется тут uart_unit: entity uart
Вот сам код:
Код:
-- loader
uart_unit: entity uart
  Generic map(
    ClkFreq => 50_000_000,
    Baudrate => 115200)
  port map(
    clk => clk,
    rxd => rx,
    txd => tx,
    dout => receivedByte,
    received => received,
    din => transmitByte,
    transmit => transmit);


ClkFreq => 50_000_000 - а это еще что за цифра? может 50000000?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: VHDL: основы
СообщениеДобавлено: Ср авг 28, 2013 21:00 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6104
Благодарил (а): 14 раз.
Поблагодарили: 96 раз.
Sunforth писал(а):
Ошибка появляется тут uart_unit: entity uart

Это подключение модуля uart, который описан в другом файле. Там uart.vhd в окрестностях не лежал?
Sunforth писал(а):
ClkFreq => 50_000_000 - а это еще что за цифра? может 50000000?

Подчеркивания допускаются в VHDL в записи чисел для улучшения читаемости. Синтезатор их игнорирует. Можно и 50000000, только придется внимательнее проверять количество нулей.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: VHDL: основы
СообщениеДобавлено: Ср авг 28, 2013 21:22 
Не в сети
Аватара пользователя

Зарегистрирован: Вт апр 16, 2013 15:20
Сообщения: 59
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
Цитата:
Там uart.vhd в окрестностях не лежал?

есть и как его подключить при компиляции?

есть еще там top.vhd, есть еще тестбенч и все больше vhd файлов нет


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: VHDL: основы
СообщениеДобавлено: Ср авг 28, 2013 21:28 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6104
Благодарил (а): 14 раз.
Поблагодарили: 96 раз.
Sunforth писал(а):
есть и как его подключить при компиляции?

Добавить к проекту. Я не знаю, как это сделать в GHDL, потому что не видел. А почему не загрузить софт с www.xilinx.com ? Будет совершенно легальная бесплатная лицензия, плюс к этому интегрированный симулятор, ну и наконец, именно та система, в которой делался этот процессор.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: VHDL: основы
СообщениеДобавлено: Ср авг 28, 2013 21:48 
Не в сети
Аватара пользователя

Зарегистрирован: Вт апр 16, 2013 15:20
Сообщения: 59
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
Цитата:
Добавить к проекту. Я не знаю, как это сделать в GHDL, потому что не видел. А почему не загрузить софт с www.xilinx.com ? Будет совершенно легальная бесплатная лицензия, плюс к этому интегрированный симулятор, ну и наконец, именно та система, в которой делался этот процессор.

Софт скачал и на linux и на windows, проверил md5. Завтра буду ставить оба софта. На подходе quartus на линукс и на виндоус.
А так просто хотел с помощью ghdl проверить компиляцию, поиграться немного.
top.vhd нужно добавлять в проект?
Код:
entity top is
    Port ( clk_in : in STD_LOGIC;
           rx: in std_logic;
           tx: out std_logic;
           d : in STD_LOGIC;
           q : out STD_LOGIC;
           CpuReset: in std_logic);
end top;

rx and tx похоже к uart?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: VHDL: основы
СообщениеДобавлено: Чт авг 29, 2013 01:50 
Не в сети
Аватара пользователя

Зарегистрирован: Вт апр 16, 2013 15:20
Сообщения: 59
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
Разобрался с подключением нескольких файлов.
Но долго выполняется симуляция
Код:
[sun@localhost cpu]$ ghdl -r cpu_tb --vcd=cpu.vcd
^C

после 30 минут работы пришлось прервать выполнение
при этом как видно файл cpu.vcd не исчез.
Код:
[sun@localhost cpu]$ ls
cpu_tb    cpu_tb.vhd  cpu.vhd   e~cpu_tb.o  uart.vhd
cpu_tb.o  cpu.vcd     cpu.vhd~  top.vhd     work-obj93.cf

его размер больше 2 гигабайт. (т.е если бы не остановил процесс, то наверно и дальше увеличился бы)
при этом при запуске gtkwave и подключении всех сигналов, система надолго уходит в работу(оба проца загружены)
Код:
[sun@localhost cpu]$ gtkwave cpu.vcd

GTKWave Analyzer v3.3.46 (w)1999-2012 BSI

только один сигнал reset быстро загружается. И на 100ns из "1" переходит в "0". так и должно быть.

Сколько времени занимает симуляция форт процессора?
И хватит ли моих ресурсов для "быстрой" сборки софт процессоров типа этой?
Цитата:
Memory 2.0 GiB
Processor Intel Core 2 CPU T5200 @ 1.60GHz x 2
OS Type 32-bit
Graphics Intel 945GME
GNOME Version 3.8.2

может дискретность по времени уменьшить и тогда все быстро будет симулироваться?
или надо покупать Intel i7 c 32 Гигабайтами ОЗУ ? :)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: VHDL: основы
СообщениеДобавлено: Чт авг 29, 2013 15:19 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6104
Благодарил (а): 14 раз.
Поблагодарили: 96 раз.
Sunforth писал(а):
Но долго выполняется симуляция

Она иногда делается бесконечной. Симуляторы имеют еще команду run for <xxx_time>, альтернатива - размещение команд stop или finish в тесте.
Sunforth писал(а):
Сколько времени занимает симуляция форт процессора?
И хватит ли моих ресурсов для "быстрой" сборки софт процессоров типа этой?

Времени - пропорционально тому отрезку реального времени, в течение которого хочется промоделировать работу. Процессор надо моделировать с уже загруженной программой. Для такого проекта хватит практически любого процессора (даже Atom), а 2 Гб - это нормальный размер для комфортной работы.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: VHDL: основы
СообщениеДобавлено: Чт авг 29, 2013 21:57 
Не в сети
Аватара пользователя

Зарегистрирован: Вт апр 16, 2013 15:20
Сообщения: 59
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
Решил с установкой ксилинкса повременить (так как нет платы). Работал с Quartus 7.2
Выяснил, что кроме файлов top.vhd, cpu.vhd, uart.vhd требуется еще файл clk_dcm.vhf. Так как этот файл получен с помощью приложения sch2hdl, а внутри vhdl код, то взял и переименовал его в clk_dcm.vhd.
Все четыре файла поместил в одну папку (work папка).
Пометил в квартусе верхний файл - top.vhd (судя по названию).
В отличии от ise в quartus надо добавить библиотеку work.all.
Открываем top.vhd смотрим какие entity внутри - entity clk_dcm, entity cpu. Оба файла cpu.vhd и clk_dcm.vhd находятся внутри рабочей папки.
Открываем cpu.vhd. Внутри есть entity uart. uart.vhd тоже находится в рабочей папке.
Открываем clk_dcm.vhd и обнаруживаем в нем component DCM. Тут http://www.ece.tufts.edu/~karen/ES4/xilinx/index2.htm обьясняется что такое компонент. Видно, что название entity совпадает с названием компонента т.е чтобы воспользоваться компонентом надо entity обьявить. (см так же http://www.sm.bmstu.ru/sm5/n4/oba/gl4.html
Цитата:
Объявление компонента определяет интерфейс к модели на VHDL (entity и architecture), описанной в другом файле. Обычно объявление компонента совпадает с соответствующим объявлением entity.

Т.е в каком то другом файле должен быть "entity DCM". Поискал тут https://github.com/whiteTigr/vhdl_cpu но не смог найти. Все это привел потому что остановился на этом "Ошибка(error) DCM не обьявлен". Так квартус ругается на файл clk_dcm.vhd, строчка 127 XLXI_1 : DCM


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: VHDL: основы
СообщениеДобавлено: Чт авг 29, 2013 22:06 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6104
Благодарил (а): 14 раз.
Поблагодарили: 96 раз.
Sunforth писал(а):
Все это привел потому что остановился на этом "Ошибка(error) DCM не обьявлен". Так квартус ругается на файл clk_dcm.vhd, строчка 127 XLXI_1 : DCM

Это аппаратный компонент от Xilinx, квартус его в принципе не может найти.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: VHDL: основы
СообщениеДобавлено: Пт ноя 24, 2017 07:15 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Ср дек 06, 2006 09:23
Сообщения: 509
Благодарил (а): 5 раз.
Поблагодарили: 25 раз.
ну...в общем...более подходящей темы не нашёл, пока пусть будет здесь:
"Интел объявил конкурс проектов на FPGA, я призываю тех кто сделал проекты с MIPSfpga и schoolMIPS присоединиться. Я знаю, что менеджер образовательных программ в Altera/Intel в курсе и о MIPSfpga, и о schoolMIPS, и их высоко ценит. Вот ваш реальный шанс получить денежную премию и поездку в Санта-Клару.

Вот описание того, что хочет Интел, от Евгения Короткого:

https://www.facebook.com/lampa.kpi/phot ... =3&theater

Такс-такс-такс, друзья, Intel запустили конкурс FPGA проектов с призовым фондом 30000$. А всем допущенным участникам выдают бесплатно плату DE10-Nano. Круто, да?

Но обо всем по порядку.

Сайт конкурса: http://www.innovatefpga.com/em

В конкурсе могут участвовать все желающие: студенты, аспиранты, мейкеры. Количество участников в команде может достигать 3х человек + консультант-преподаватель.

Проекты участников должны демонстрировать сильные стороны FPGA: акселерацию вычислений, реконфигурируемость, etc.

До 31 декабря 2017 года необходимо подать заявку с описанием идеи проекта. В январе 2018-го будет проходить голование за проекты в каждом из регионов (всего 4 региона: США, Европа+Россия, Китай, Австралия + часть Азии). Первые 100 проектов в каждом из регионов, набравшие максимум голосов, получают платы DE10-Nano для реализации проекта. Кроме платы можно запросить до 3-х периферийных шилдов с датчиками и разной периферией. Список железа можно посмотреть на сайте конкурса в разделе Platform. Голосовать за проекты могут все желающие, кто зарегистрируется на сайте. Приятный бонус - каждую неделю среди голосующих будут разыгрываться бесплатные две FPGA платы :)

Отобранные проекты должны до конца апреля создать рабочий прототип, статью с описанием реализации и записать короткое видео демонстрирующее, что "оно работает".

До средины июля определяют победителя в каждом регионе. Критерии оценки следующие:
- Новизна идеи: 10%
- Функциональность: 10%
- Демонстрация сильных сторон FPGA: 20%
- Уникальность реализации: 10%
- Количество использованных аппаратурных ресурсов: 10%
- Производительность: 20%
- Оптимизация: 20%

Региональные победители едут в США на финал в августе за счет спонсоров конкурса.

За победу на региональном этапе, помимо поездки в США, дают приз в 1500$. За места со второго по девятое дают денежные призы от 500$ до 1200$ и платы DE10-Lite.

Команда-победитель финала получает 5000$, плату Terasic DE10-Pro и промоушн от Intel. Остальные участники финала тоже получают денежные призы 1000$-3500$.

Правила конкурса подробно описаны здесь: http://www.innovatefpga.com/em/rule.html

На сайте можно посмотреть поданные проекты. Пока вроде как ничего особенного, а самих проектов не очень много. Есть все шансы на победу.

Призываем всех интересующихся FPGA подавать заявки, реализовать проекты и побеждать! Это отличная возможность прокачать скилы, получить много опыта, а в случае победы заявить о себе на весь мир, выиграть крупную сумму денег, инвестировать их в криптовалюты, а через пару лет купить остров по соседству с Бренсоном. Дерзайте, в общем! Гуд лак :)"


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 26 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB