Ripes
Awesome RISC-V

Ripes

Екосистема RISC-V

Ripes — це графічний симулятор комп'ютерної архітектури від Мортена Борупа Петерсена, написаний на C++ з використанням Qt.

Ви можете завантажити Ripes на LYSZT.

Як встановити Ripes

Один рядок встановлює Ripes на вашій машині. Інсталятор завантажує останній випуск з GitHub, вибирає файл, що відповідає вашій операційній системі та архітектурі, перевіряє його контрольну суму sha256 і встановлює його у ваш домашній каталог. Права адміністратора не потрібні.

Встановити з терміналу
curl -fsSL https://lyszt.net/install.sh | sh -s -- ripes

Команда працює в Linux і macOS. У Windows завантажте файл вручну, як описано нижче.

Ручне завантаження

Ви також можете завантажити Ripes самостійно: виберіть свою операційну систему в діалозі завантаження та отримайте файл з офіційних випусків GitHub.

З офіційної документації
МетодВимогиЯк
Бінарні файли релізуВідкрити сторінку релізів
У браузеріripes.dk
Збірка з вихідного коду
  • Qt >= 6.5.0 + Qt Charts
  • CMake
  • libegl1-mesa-dev (Linux)
git clone --recursive https://github.com/mortbopet/Ripes.gitcd Ripes/cmake .make

Огляд

Ripes — це графічний симулятор RISC-V. Симулятор — це програма, що імітує процесор. Ripes зображує тракт даних процесора, схему дротів, регістрів і блоків, якими проходять дані, і підсвічує його в міру просування інструкцій.

Ripes містить кілька моделей процесора. Найпростіша завершує одну інструкцію, перш ніж почати наступну. Конвеєрні моделі розбивають виконання на етапи, як-от вибірка інструкції з пам'яті, її декодування та виконання, і підтримують кілька інструкцій у роботі одночасно, по одній на етап. Подання конвеєра показує конфлікти — випадки, коли інструкції потрібен результат, який попередня інструкція ще не створила, — і те, як процесор очікує або пересилає дані для їх розв'язання.

Ripes також моделює кеші — невеликі швидкі запам'ятовувальні пристрої, що зберігають нещодавно використані дані близько до процесора, — і пристрої, як-от світлодіоди та перемикачі, якими програма керує, читаючи та записуючи адреси пам'яті.

Історія

Morten Borup Petersen започаткував Ripes у 2017 році й досі його підтримує. Проєкт було представлено на Workshop on Computer Architecture Education у 2021 році в статті "Ripes: A Visual Computer Architecture Simulator".

Ripes написано на C++ з використанням фреймворку Qt і випущено під ліцензією MIT. Існують збірки для Linux, Windows і macOS, а збірка WebAssembly запускає ту саму програму в браузері на ripes.dk.

Де використовується

Ripes підходить для курсів з архітектури комп'ютерів, де студенти вивчають, як процесор виконує код. Якщо встановлено компілятор RISC-V, він також компілює програми мовою C, тож студент може порівняти рядок коду мовою C з машинним кодом, який для нього створює компілятор.

Джерела

  1. Ripes README
  2. Ripes: A Visual Computer Architecture Simulator, WCAE 2021