"Карно" - плата интерактивная расширяемая для синтезирования цифровых схем (ПИР СЦХ-254 "Карно")

แชร์
ฝัง
  • เผยแพร่เมื่อ 6 ก.ย. 2024
  • В данном новогоднем видео демонстрируются возможности платы ПИР СЦХ-254 "Карно". Данная плата содержит микросхему ПЛИС Lattice ECP5 (25К логических блоков), а так же ряд периферийных устройств, в том числе многоканальные ЦАП и АЦП, FastEthernet, HMDI. Плата имеет формфактор Raspberry Pi3 с совместимым разъёмом GPIO. Полная спецификация платы приведена ниже.
    Плата "Карно" предназначена для синтеза цифровых схем и их тестирования. На плате может быть собран полноценный микроконтроллер для управления промышленными устройствами. В качестве демонстрации мы синтезировали средствами ПЛИС полноценный микроконтроллер с вычислительным ядром RISC-V (VexRiscV с тактовой частотой 60 МГц), контроллером FastEthernet и контроллером интерфейса HUB75. Через HUB75 к плате подключена светодиодная матрица формата 80x40, каждый пиксель матрицы имеет три цвета (RGB светодиод). На ядре RISC-V запущено программное обеспечение реализующее программный протокол Modbus over IP/UDP (Modbus/UDP), через который ножно обновлять изображение выводимое на светодиодную матрицу, а также выводить данные на каналы АЦП, т.е. генерировать звук.
    Стриминг видео осуществляется с помощью небольшого скрипта написанного на языке Perl5 запущенного на внешнем хосте (на ноутбуке). Скрипт считывает аудио и видео из специально подготовленных файлов и отправляет по сети на плату Карно, инкапсулируя видео и аудио данные в пакеты Modbus/UDP. На строне Карно, ПО на синтезированном ядре RISC-V демультиплексирует полученные UDP пакеты и перекладывает данные либо в видео фрейм буфер либо в кольцевой буфер ЦАП. Имеются и другие возможности по управлению периферией через протокол Modbus/UDP.
    Плата "Карно" спроектированная в САПР KiCAD 7. Цифровая аппаратура ПЛИС написана на языке SpinalHDL и синтезирована с помощью open source toolchain-а Yosis+NextPNR. Программное опеспечения для ядра RISC-V написано на языке C с использованием облегченного TCP/IP стека lwIP. Объём машинного кода - 75КБ, размещается в синтезируемой RAM.
    Спецификация платы "Карно" ПИР СЦЗ-254:
    - RPi3 form factor board with 40pin head connector
    - Lattice ECP5 25K FPGA, RISC-V ready
    - SRAM 16x256 KBits (512 KB)
    - NOR flash 128 MBits for FPGA configs
    - EEPROM 1Kbits (128 bytes) for user settings
    - Ethernet 10/100Base-TX
    - RS-485 transceiver
    - HDMI connector directly connected to FPGA
    - SPI DAC 4 channels (2 for audio)
    - SPI ADC 4 channels + 1 mic in
    - 4 keys and 4 LEDs
    - 4 pin audio jack connected to DAC/ADC
    - Built-in FT2232D based programmer
    Схема и трассировка платы "Карно": github.com/Fab...
    Программное обеспечение: github.com/Fab...

ความคิดเห็น • 20

  • @maysdan_
    @maysdan_ 8 หลายเดือนก่อน +1

    За демонстрацию Bad Apple уже огромный респект)

  • @vitalygontov9049
    @vitalygontov9049 8 หลายเดือนก่อน +3

    За демонстрацию отдельный лайк! Бэдаппл уже и на дисплее 80 на 40 запустили) молодцы)

  • @Necrophobic2013
    @Necrophobic2013 8 หลายเดือนก่อน +2

    Неплохо, даже интересно было посмотреть

  • @ostrov11
    @ostrov11 8 หลายเดือนก่อน

    ... ЦАП и АЦП интегрирование "плисовские" или внешние? скорости?

    • @ruslanzalata
      @ruslanzalata 8 หลายเดือนก่อน

      Внешние, по SPI. В данном случае частота дискретизации 16кГц, 12бит. Максимальная: 1.2МГц.

    • @ostrov11
      @ostrov11 8 หลายเดือนก่อน

      @@ruslanzalata окэ спс

  • @spave83rus
    @spave83rus 8 หลายเดือนก่อน

    Это кто-то типа Ардуино на стеройдах? Или плеер аниме)

    • @ruslanzalata
      @ruslanzalata 8 หลายเดือนก่อน

      Это плата с микросхемой ПЛИС. При желании из неё можно сделать аналог Arduino или еще чего. В данно случае внутри ПЛИС синтезируется микроконтроллер с ядром RISC-V, на нём исполняется программа которая получает данные из сети и отображает на LED матрице или посылает на ЦАП. Источником данных (видео/аудио) являет ноутбук на котором запущен перловый скрипт, он читает файл, формирует пакеты с аудио и видео и отправляет по сети на плату Карно.

    • @aftaev
      @aftaev 2 หลายเดือนก่อน

      @@ruslanzalata что все пишут примеры того что есть или можно купить. У китайцев на Алике есть подобные led панели с конроллерами и ПО. Надо показывать то чего сложно добываемо.

  • @aftaev
    @aftaev 2 หลายเดือนก่อน

    Что за ПЛИС ?

    • @ruslanzalata
      @ruslanzalata 2 หลายเดือนก่อน

      Lattice EPC5. Подробсти в статье на Хабре.

  • @ostrov11
    @ostrov11 8 หลายเดือนก่อน +1

    ... сразу чтото мысля не сформировалась по поводу ацп ... граждане, товарищи, мужчины - ну грешно же, страшный грех рядом с плис ставить цапацп на 16кГц ??????? тому кто это предложил или согласовал сразу надо было одевать стул на голову ... хотя бы 10-20 мегасемплов надо, цена такая же чипа, что бы хоть какой колхозный sdr накалякать ... а так хз кто целевая аудитория или применение ... поколение лишне-хромосомных ардуинщиков кому надо было больше больше светодиодов, уже давно в пятерочках кассирами и охранниками.

    • @ruslanzalata
      @ruslanzalata 8 หลายเดือนก่อน

      Возможно я неправильно выразился. На плате "Карно" стоят ЦАП и АЦП с последовательным (SPI) интерфейсом с макс тактовой частотой 20МГц. Это позволяет иметь частоту сэмплирования 1.25МГц. В данном видео представлена конфигурация с частотой сэмплирования 16кГц, она определена звуковой частотой и вычислительными возможностями синтезированного процессорного ядра. Установить ЦАП/АЦП на 20 мегасэмплов можно, но 1) это нифига не дешево, 2) данный ПЛИС такого не потянет - слишком большой поток данных. По сути плата "Карно" это игрушка для обучения и различных экспериментов с синтезируемыми процессорными ядрами.

    • @ostrov11
      @ostrov11 8 หลายเดือนก่อน

      @@ruslanzalata ну хз хз, что там "тянуть" то, сырые семплы во внешний мир отправлять всяко бы потянула плисина

    • @fabmicrollc6233
      @fabmicrollc6233  8 หลายเดือนก่อน

      ПЛИС сама по себе ничего не умеет. Обработкой занимается процессорное ядро, и его возможностей (60МГц) явно не достаточно для такого ЦАП/АЦП.

    • @ostrov11
      @ostrov11 8 หลายเดือนก่อน

      @@fabmicrollc6233 ... эээ ааа - ПЛИС Lattice ECP5 (25К логических блоков) 25К ???

    • @ruslanzalata
      @ruslanzalata 8 หลายเดือนก่อน

      На счет SDR. Есть идея прогонять ВЧ сигнал сразу через цифровую ногу ПЛИС с мультиплексацией и далее средствами ПЛИС делать демодуляцию.

  • @zitskycom
    @zitskycom 8 หลายเดือนก่อน

    Не понятно откуда артефакты (вернее понятно, шумы на шине данных)

    • @zitskycom
      @zitskycom 8 หลายเดือนก่อน +1

      Но за бэдаппл спасибо, антуражненько, прям по классике)

    • @fabmicrollc6233
      @fabmicrollc6233  8 หลายเดือนก่อน

      Да, там требуется подрезать частоту на шине, матрица не справляется.