nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 13:20



Reply to topic  [ 222 posts ]  Go to page Previous  1 ... 11, 12, 13, 14, 15
Как бы потихонечку освоить работу с FPGA 
Author Message
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Shaos wrote:
Вот ещё вам фпгашной нестандартности:

Image

Image
Здесь подробное описание этого изделия:
Xyloni - Отладочная плата на ПЛИС Efinix Trion T8
Attachment:
Xy52947048.jpg
Xy52947048.jpg [ 222.49 KiB | Viewed 2989 times ]

И вот здесь на эту тему материал есть:
Welcome to the Xyloni® Development Kit Github repo

_________________
iLavr


15 May 2022 03:15
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Цитата из статьи:
Quote:
Особенности
  • ПЛИС Efinix® T8F81C2 в 81-шариковом корпусе FineLine BGA
  • 128 Мбит SPI или флэш-память
  • Выделенный интерфейс UART через micro-USB type B
  • 41-контактный высокоскоростной разъем для пользовательского ввода-вывода
  • 12-контактный PMOD-совместимый разъем GPIO
  • Слоты для карт Micro-SD
  • 4 пользовательских светодиода и 2 пользовательских кнопочных переключателя
  • Генератор 33.33 МГц
  • Выбираемые пользователем напряжения от 1,8 в, 2,5 В и 3,3 В


Attachments:
Xyloni-blocks.gif
Xyloni-blocks.gif [ 24.47 KiB | Viewed 2973 times ]

_________________
:dj: https://mastodon.social/@Shaos
15 May 2022 20:01
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Ой, а слот Micro-SD я как-то и не заметил :)

_________________
:dj: https://mastodon.social/@Shaos


15 May 2022 20:38
Profile WWW
Senior
User avatar

Joined: 11 Oct 2018 00:52
Posts: 196
Location: г. Клинцы, Брянская обл.
Reply with quote
Знатоки, подскажите: имеются ли средства визуальной разработки для FPGA. т.е. рисуем схему, потом компилируем из нее прошивку?


02 Mar 2024 07:02
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Ну дык схемный ввод - в родных средах разработки от Альтеры (для Альтеры) и у Xilinx (для Xilinx) оно было

P.S. Перенёс тему в Hardware, как собственно и хотел изначально да заодно переименовал заголовок по русски...

_________________
:dj: https://mastodon.social/@Shaos


02 Mar 2024 09:14
Profile WWW
Senior
User avatar

Joined: 11 Oct 2018 00:52
Posts: 196
Location: г. Клинцы, Брянская обл.
Reply with quote
Спасибо, попробую...
Нужно не отставать от прогресса.


02 Mar 2024 10:21
Profile
Fanat

Joined: 09 Jun 2022 00:49
Posts: 82
Reply with quote
А подскажите по HDL?

Вот я процессор проектирую, в нём будет машина состояний (конечный автомат). Устроен он просто: несколько флип-флопов обозначают конкретное состояние и автомат может переключаться в другие состояния согласно комбинационной логике, зависящей от этих флип-флопов и других факторов. То есть, всё обычно, как я понимаю, именно так их и делают.

И так получается по логике работы процессора, что в каждом состоянии автомата делается много нужных, но не связанных между собой по смыслу вещей. Например, в некоторых стадиях его работы сбрасывается АЛУ чтобы начать считать (АЛУ 4-битый, поэтому чтобы обсчитать слово происходит цикл, который требует предварительной инициализации). При этом в этой же стадии происходит сохранение каких-то данных, полученных на предыдущем состоянии (не связанных с АЛУ). Всё это приводит как запутанности кода и ошибкам.

Вопрос: как такое грамотно организовывать в коде? Как тестировать?

Пока предполагаю (но не уверен) что надо бы сделать несколько параллельных конечных автоматов, у которых будут совпадать значения некоторых состояний. Тогда можно будет по смыслу разбить деятельность по разным модулям.


02 Mar 2024 12:47
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Надо мыслить на верилоге (или сразу на SystemVerilog, который ещё более универсальный), предоставляющем несколько стандартных подходов программирования, которые все используют - сразу иметь ввиду, что будет общее тактирование, и что будут регистры, которые защёлкивают новое состяние в каждом такте и т.д. При этом всякие процессоры и многоуровневые конвейеры строятся легко и непринуждённо...

_________________
:dj: https://mastodon.social/@Shaos


02 Mar 2024 12:53
Profile WWW
Fanat

Joined: 09 Jun 2022 00:49
Posts: 82
Reply with quote
Shaos wrote:
Надо мыслить на верилоге (или сразу на SystemVerilog, который ещё более универсальный), предоставляющем несколько стандартных подходов программирования, которые все используют - сразу иметь ввиду, что будет общее тактирование, и что будут регистры, которые защёлкивают новое состяние в каждом такте и т.д. При этом всякие процессоры и многоуровневые конвейеры строятся легко и непринуждённо...


У меня нет конвееров, все стадии зависимы между собой. Это одна из причин этой сложности. Пишу на SystemVerilog

С другой стороны, непонятно также как тестировать правильность переходов по состояниям (покрытие). Сейчас есть только общий тест всех команд ну и вскоре подключу уже исполнение бинарников из файлов


02 Mar 2024 14:33
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Я когда свой RISC-V городил 5 лет назад (с конвейером в 1.5 ступени), то чисто по программистки всё компилировал через Verilator и нахлобучивал на это свой тестовый код, написанный на родимом C++ :lol:

А "настоящие железячники" прям на том же верилоге (да даже и на VHDL) городят тесты...

_________________
:dj: https://mastodon.social/@Shaos


02 Mar 2024 14:40
Profile WWW
Fanat

Joined: 09 Jun 2022 00:49
Posts: 82
Reply with quote
Shaos wrote:
Я когда свой RISC-V городил 5 лет назад (с конвейером в 1.5 ступени), то чисто по программистки всё компилировал через Verilator и нахлобучивал на это свой тестовый код, написанный на родимом C++ :lol:

А "настоящие железячники" прям на том же верилоге (да даже и на VHDL) городят тесты...


О, значит я настоящий :-)

Просто не понял как ещё там можно тесты сделать внешние на С++. Делаю "как по книжке" - получается. Кроме beans (накопления заходов) и ещё каких-то мелочей - верилятор этого не умеет

(Код покажу когда полностью заработает)


Last edited by belfegor96 on 02 Mar 2024 15:11, edited 1 time in total.



02 Mar 2024 14:44
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Я не настоящий, поэтому я по старинке на C++ тесты клепаю :roll:

_________________
:dj: https://mastodon.social/@Shaos


02 Mar 2024 14:58
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 222 posts ]  Go to page Previous  1 ... 11, 12, 13, 14, 15

Who is online

Users browsing this forum: No registered users and 12 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.