|
Основы работы с SoC, C какой стороны подходить к этому зверю. |
|
|
|
Feb 17 2017, 06:48
|

В поисках себя...
   
Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140

|
Добрый день уважаемые форумчане. Недавно дали поиграться такой вот платой: DE1-SOC-MTL2, TERASIC TECHNOLOGIES. Данная плата содержит богатый набор периферии на стороне FPGA и на стороне HPS. Если с доступом к периферии на стороне FPGA у меня вопросов не возникает, то как получить доступ к периферии на стороне HPS я на данный момент не имею ни малейшего понятия. Поскольку раньше я никогда не работал с SoC (системами на кристалле) появились затруднения в изучении этого вопроса. В частности не знаю с какой стороны подойти к изучению основ работы с SoC. Многие примеры, которые есть в сети, показывают как делать достаточно сложные и непонятные вещи для новичка, например запуск Linux и пр. А начать хочется с каких-нибудь простых вещей. К примеру на стороне HPS есть приёмник UART. Я хочу получить доступ со стороны FPGA к данным принимаемым этим приемником. Иными словами я хочу научиться общаться со стороны FPGA с периферий на стороне HPS. К чему я хочу придти в итоге: в итоге я хочу создать собственный контроллер ЖК дисплея, принимающий данные по DVI, и выводящий этот видеопоток на LCD дисплей. Для этого я хочу использовать память DDR3 на стороне HPS в качестве кадрового буфера. На данный момент я на более простой плате МАРСОХОД2 смог реализовать: прием данных изображения по UART, запись этого изображения в SDRAM память, и вывод изображения из памяти на LVDS матрицу. Для принятия видеопотока по DVI на плате МАРСОХОД2 не хватает LVDS входов. Очень прошу помощи в подсказке, с чего начать изучение базовых вещей для работы с SoC.
|
|
|
|
|
 |
Ответов
|
Feb 17 2017, 08:32
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 16-11-10
Пользователь №: 60 920

|
Цитата(Flip-fl0p @ Feb 17 2017, 09:48)  Добрый день уважаемые форумчане. Недавно дали поиграться такой вот платой: DE1-SOC-MTL2, TERASIC TECHNOLOGIES. Данная плата содержит богатый набор периферии на стороне FPGA и на стороне HPS. Если с доступом к периферии на стороне FPGA у меня вопросов не возникает, то как получить доступ к периферии на стороне HPS я на данный момент не имею ни малейшего понятия. Поскольку раньше я никогда не работал с SoC (системами на кристалле) появились затруднения в изучении этого вопроса. В частности не знаю с какой стороны подойти к изучению основ работы с SoC. Многие примеры, которые есть в сети, показывают как делать достаточно сложные и непонятные вещи для новичка, например запуск Linux и пр. А начать хочется с каких-нибудь простых вещей. К примеру на стороне HPS есть приёмник UART. Я хочу получить доступ со стороны FPGA к данным принимаемым этим приемником. Иными словами я хочу научиться общаться со стороны FPGA с периферий на стороне HPS. К чему я хочу придти в итоге: в итоге я хочу создать собственный контроллер ЖК дисплея, принимающий данные по DVI, и выводящий этот видеопоток на LCD дисплей. Для этого я хочу использовать память DDR3 на стороне HPS в качестве кадрового буфера. На данный момент я на более простой плате МАРСОХОД2 смог реализовать: прием данных изображения по UART, запись этого изображения в SDRAM память, и вывод изображения из памяти на LVDS матрицу. Для принятия видеопотока по DVI на плате МАРСОХОД2 не хватает LVDS входов. Очень прошу помощи в подсказке, с чего начать изучение базовых вещей для работы с SoC. В SoC главное, как в танке - не дрейфить. С Альтеровскими не работал. Только с ксалинксовыми Зинками. Процес обучения получился ступеньчатым. FPGA в SoC есть обычный FPGA, а CPU есть обычный CPU. Нужно изучить как их связать, т.е. axi интерконнект и разобрать настройки АРМа. Написать самый простой модуль для FPGA который будет писать даные в память. Написать простую програму для АРМа, советую до линукса - bare-metal, легче разбирать собственные ошибки. Cначала могут испугать толстые мануалы, которые в один присест не скурить. От простого к сложному, ничего сложного там нет.
|
|
|
|
|
Feb 28 2017, 11:44
|

В поисках себя...
   
Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140

|
Цитата(alxkon @ Feb 17 2017, 11:32)  В SoC главное, как в танке - не дрейфить. С Альтеровскими не работал. Только с ксалинксовыми Зинками. Процес обучения получился ступеньчатым. FPGA в SoC есть обычный FPGA, а CPU есть обычный CPU. Нужно изучить как их связать, т.е. axi интерконнект и разобрать настройки АРМа. Написать самый простой модуль для FPGA который будет писать даные в память. Написать простую програму для АРМа, советую до линукса - bare-metal, легче разбирать собственные ошибки. Cначала могут испугать толстые мануалы, которые в один присест не скурить. От простого к сложному, ничего сложного там нет. Как я понял bare-metal - это ПО, которое работает без операционной системы. Т.е программа где-то храниться, и процессор её исполняет. А вот можно поподробнее про это узнать ? Примеров для DE1-SOC вообще не нашёл.
Сообщение отредактировал Flip-fl0p - Feb 28 2017, 11:45
|
|
|
|
|
Feb 28 2017, 13:10
|

Любитель
    
Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695

|
Цитата(Flip-fl0p @ Feb 28 2017, 15:44)  Как я понял bare-metal - это ПО, которое работает без операционной системы. Т.е программа где-то храниться, и процессор её исполняет. Да, к примеру - программа для ARM и прошивка для FPGA хранятся на SD карте, загрузчик их загружает по очереди и передаёт управление ARMу. Примеры для DE1-SoC есть на сайте Terasic в виде образа CD-ROM на этой страничке. Попробуйте всё же ознакомиться с документацией на SoC - здесь. Подраздел Cyclone V Device Handbook, Volume 3: Hard Processor System Technical Reference Manual, и конкретно Booting and Configuration.
|
|
|
|
Сообщений в этой теме
Flip-fl0p Основы работы с SoC Feb 17 2017, 06:48 Flip-fl0p Цитата(alxkon @ Feb 17 2017, 11:32) В SoC... Feb 17 2017, 08:39  hsoft Альтера выкладывает тонны документации, полно веби... Feb 17 2017, 09:29   Flip-fl0p Цитата(hsoft @ Feb 17 2017, 12:29) Как то... Feb 17 2017, 10:06    AVR Цитата(Flip-fl0p @ Feb 17 2017, 13:0... Feb 17 2017, 11:14     goodsoul Цитата(AVR @ Feb 17 2017, 14:14) Соответс... Feb 17 2017, 11:40      AVR Цитата(goodsoul @ Feb 17 2017, 14:40) Поп... Feb 17 2017, 18:20  Kopart Цитата(Flip-fl0p @ Feb 17 2017, 11:3... Feb 17 2017, 15:08   Flip-fl0p Цитата(sonycman @ Feb 28 2017, 16:10) Да,... Feb 28 2017, 13:35 0xFFFF https://embeddedcentric.com/zynq-training-course/
... Feb 19 2017, 13:21 bugdesigner Мне rocketboards.org сильно помог в своё время. Та... Feb 19 2017, 14:09
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|