MIRISCV - это процессорное ядро, которое поддерживает ISA RV32IM.
- Поддержка стандартов ISA RV32I и RV32M
- Только machine privilege mode
- 4-х стадийный конвейер
- Настроенное окружение под проверку CoreMark
- Написан на SystemVerilog
- Подробная документация
Директория | Описание |
---|---|
doc | Документация на проект |
├─ miriscv | Документация на блоки ядра |
├─ performance_analysis | Инструкции для расчёта удельной производительности процессорного ядра |
└─ verification | Документация на верификационное окружение |
miriscv | Исходные коды ядра MIRISCV и окружения для CoreMark |
├─ rtl | Исходные коды ядра MIRISCV |
├─ sw | Скомпилированный тест CoreMark |
├─ tb | Файл тестбенча |
├─ testsoc | Простая SoC для тестирования ядра и оценки производительности |
├─ xdc | Файл с ограничениями дизайна |
└─ Makefile | Makefile для запуска CoreMark |
miriscv_verification | Верификационное окружение |
├─ core_miriscv | Скрипты и дополнительные файлы для запуска верификации |
└─ ibex | Дополнительные скрипты и генератор RISCV инструкций |
Информация о взаимодействии с окружением ядра MIRISCV находится в руководстве пользователя. Там же описаны способы верификации ядра.
Информацию о блоках ядра MIRISCV можно найти в документации на ядро MIRISCV откуда можно перейти на каждый отдельный блок.
Информацию о запуске CoreMark и подсчёта удельной производительности дизайна можно посмотреть в performance_analysis
Информацию о работе с логами можно найти в соответствующем руководстве. Перед прочтением этого руководства предполагается, что вы ознакомились с руководством пользователя.
О суперскалярности MIRISCV можно узнать здесь.
- Запустите TigerVNC
- После выскочит окно для ввода пароля, пароль будет выдан в первый день хакатона:
- Успешное подключение к удалённой машине выглядит так:
Гайд по подключению к серверу
Если вы находитесь в локальной сети МИЭТ, т.е. сидите со стационарных компьютеров внутри МИЭТа или внутренного WiFi, тогда проигнорируйте следующий спойлер, иначе раскройте его.
Нужно будет ввести данный IP, но со своим значением порта. Номер порта и пароль выдаётся организаторами.
Например: 82.179.178.13:0113
Номер порта – 4 цифры.
При первом подключении на сервер необходимо выполнить все последующие шаги. Приблизительное время настройки - 5 минут.
В аккаунте GitHub команды, лежит репозиторий, в нем вы можете делать, что угодно. В частности, вы можете создавать и редактировать файлы из интерфейса GitHub, или склонировать репозиторий и работать с ним со своего компьютера.
Чтобы иметь доступ к этому функционалу нужно провести следующий ряд подготовительных работ.
- Сначала сгенерируем ssh ключ. В терминале Linux прописываем команду, чтобы сгенерировать SSH-ключ:
ssh-keygen
- На все дальнейшие запросы нажимаем Enter, ничего более не вводя. В терминал выдаст текст похожий на рисунок снизу.
Что такое SSH ключ?
Мы сгенерировали SSH-ключ. Он нужен, чтобы получить доступ к проектам на GitHub со своего компьютера и выполнять команды без постоянного ввода пароля, нужно, чтобы сервер нас узнавал.
- Чтобы вывести на экран сгенерированный ключ введём следующую команду:
$ cat ~/.ssh/id_rsa.pub
Хочется отметить, важно, чтобы был скопирован именно публичный SSH-ключ, он отличается от приватного наличием ".pub" в конце!
После выполнения команды в терминале вы увидите длинную строку:
$ ssh-rsa <последовательность символов ключа>
- Этот ключ надо добавить в GitHub. Полностью выделяйте и копируйте его. Буфер обмена между удаленным рабочим столом и локальным компьютером должен работать. При возникновении проблем убедитесь, что на локальном компьютере у вас выбрана английская раскладка.
Как добавить SSH ключ в GitHub?
- Заходим в Settings в GitHub
- Оттуда переход в раздел "SSH and GPG keys"
- Нажимаем на кнопку "New SSH key"
- В поле Title вписывайте то, как вы хотите назвать машину, с которой сидите в данный момент.
- В поле Key вставьте скопированный публичный SSH-ключ
- Нужно вписать следующие две команды для git
$ git config --global user.name "<имя пользователя>"
$ git config --global user.email <почта пользователя>
Например:
$ git config --global user.name "John Doe"
$ git config --global user.email [email protected]
Зачем я прописал что-то в git config?
Нам нужно указать имя и адрес электронной почты. Это важно, потому что каждый коммит в Git содержит эту информацию, и она включена в коммиты, передаваемые вами, и не может быть далее изменена.
Все приготовления завершены, мы добились желаемого функционала, а именно вы можете создавать и редактировать файлы из интерфейса GitHub, или склонировать репозиторий и работать с ним со своего устройства.
Осталось пару шагов
- Склонируйте репозиторий
Для этого скопируйте ссылку на репозиторий, как показано на рисунке ниже
И введите в терминал следующие команды:
$ cd ~/
$ git clone <скопированная ссылка>
- Перейдите в скаченный репозиторий
$ cd miriscv_hackathon
Готово, вы находитесь в скаченном репозитории, с которым вольны делать, что вам захочется. Успехов!