Занятие 9 (2022-23): Арбитры и разделение памяти между несколькими процессорными ядрами

YOUTUBE · 01.12.2025 04:58

Ключевые темы и таймкоды

Введение

0:05
  • Дмитрий Смехов представляет тему лекции и лабораторной работы: работа с памятью при наличии двух процессорных ядер.
  • Дмитрий рекомендует ознакомиться с докладом на чип-экспо 2021 и занятиями д-четыре.

Многопортовая память

2:03
  • Многопортовая память - это прямоугольник с несколькими портами на чтение и запись.
  • Арбитр - это компонент, который обрабатывает одновременные запросы на чтение и запись.

Лабораторная работа

10:42
  • Лабораторная работа включает сравнение двух арбитров: классического и арбитр М-два.
  • Дмитрий предлагает выполнить лабораторную работу самостоятельно и найти различия в работе арбитров.

Система разработки

14:59
  • Лабораторная работа выполнена под линукс и выполняется на виртуальной машине.
  • Дмитрий использует студию кода с расширением террас для подсветки синтаксиса РТ языка.
  • В каталоге ток есть файл лап один менел пдф с подробным описанием порядка выполнения лабораторной работы.

Введение

18:00
  • В видео рассказывается о лабораторной работе, которая включает в себя исследование каталогов и выполнение команд в терминале.

Исследование каталогов

19:00
  • Исследуются каталоги кома, в котором находятся общие компоненты проекта, и каталог с исходными текстами.
  • В каталоге с исходными текстами отсутствует файл экзал цпу, который нужно скопировать из другого каталога.

Исследование файлов

22:36
  • Исследуется файл экзампл, который содержит процессоры и память для них.
  • В файле тест- бенч определяется место формирования сигналов и место, где проводят сигналы.

Компиляция программы

35:18
  • В терминале выполняется команда сборки программы, которая формирует файлы п ноль программ хекс и п один про хекс.
  • Файл по ноль про кекс находится в корневом каталоге и содержит набор шестнадцатичных чисел.

Компиляция и тестирование программы

37:40
  • Выполняется компиляция программы с использованием команды "gdb e".
  • Тестирование программы в консольном режиме с использованием команды "gdb run".

Отладка программы и тестирование сигналов

40:31
  • Запуск программы в графическом режиме с использованием команды "gdb run -g".
  • Тестирование сигналов с использованием временной диаграммы.

Работа с платой и завершение моделирования

50:06
  • Переход в каталог "ран, рз, рд" для работы с платой.
  • Подключение USB-контроллера и выполнение команды "config".
  • Тестирование платы с использованием клавиатуры.

Вопросы и ответы

58:04
  • Вопросы о формировании скриптов и использовании тактовой частоты.
  • Ответы на вопросы о трижды повторяющихся командах и их назначении.

Открытие проекта

1:03:00
  • В видео автор открывает проект, созданный в рамках лабораторной работы.
  • В проекте есть два компонента арбитра, классический арбитр и арбитр М-2, которые должны работать одинаково.

Сравнение сигналов

1:06:24
  • Автор сравнивает сигналы, выдаваемые арбитрами, и обнаруживает различия между ними.
  • В идеальном случае сигналы должны полностью совпадать, но это не происходит.

Тестирование проекта

1:06:46
  • Автор запускает проект и проверяет его работу.
  • Обнаруживается ошибка в форматном файле, которая приводит к ошибке в работе проекта.

Методика Атланти

1:09:20
  • Автор объясняет методику Атланти, которая позволяет находить ошибки в работе проекта.
  • В данном случае, ошибка была найдена в процессе тестирования и возвращена обратно в тест-директ.

Заключение

1:17:26
  • Автор заканчивает видео, предлагая доделать проект и задавать вопросы, если что-то непонятно.