Ripes
Екосистема RISC-VRipes — це графічний симулятор комп'ютерної архітектури від Мортена Борупа Петерсена, написаний на C++ з використанням Qt.
Як встановити Ripes
Один рядок встановлює Ripes на вашій машині. Інсталятор завантажує останній випуск з GitHub, вибирає файл, що відповідає вашій операційній системі та архітектурі, перевіряє його контрольну суму sha256 і встановлює його у ваш домашній каталог. Права адміністратора не потрібні.
curl -fsSL https://lyszt.net/install.sh | sh -s -- ripesКоманда працює в Linux і macOS. У Windows завантажте файл вручну, як описано нижче.
Ви також можете завантажити Ripes самостійно: виберіть свою операційну систему в діалозі завантаження та отримайте файл з офіційних випусків GitHub.
| Метод | Вимоги | Як |
|---|---|---|
| Бінарні файли релізу | Відкрити сторінку релізів | |
| У браузері | ripes.dk | |
| Збірка з вихідного коду |
| 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 з машинним кодом, який для нього створює компілятор.
