Упражнения

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

  2. Напишите (или перепишите, если уже сделали на SystemVerilog) тесты к последним упражнениям на cocotb. Интереснее всего 3 и 4 задания.

  3. Реализуйте операцию свёртки изображения на SystemVerilog.

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

    • Интерфейс разрабатываемого модуля должен предусматривать загрузку весов ядра свёртки.

    • Модуль должен быть параметризуем размером ядра. Предполагаем, что ядро квадратное, нечётного размера.

    • На входе k строк входного изображения, на выходе одна строка нового изображения.

    • Заранее определитесь, каким образом будут обрабатываться пиксели на краях.

    • Реализуйте тесты для разработанного модуля с использованием cocotb.