HAL Це інтегроване середовище для аналізу переліку цифрових електронних схемЦе є всеосяжною структурою зворотного проектування та маніпуляцій для мережевих списків на рівні дверей, що зосереджується на ефективності, масштабованості та портативності. HAL поставляється з системою плагінів повний що дозволяє вводити довільні функціональні можливості ядра.
Цікавий від HAL полягає в тому, що це дозволяє бачити та аналізувати схему в графічному інтерфейсі та маніпулювати нею за допомогою скриптів python. У сценаріях ви можете використовувати додану "стандартну бібліотеку" функцій, що реалізують операції з теорії графів, корисні для зворотного проектування цифрових електронних схем (використовуючи ці функції, ви можете евристично виявляти різні шаблони проектування та видаляти прості завалування за допомогою сценарію в декількох рядках) .
Бібліотека він також включає класи для управління проектами в IDE, які можна використовувати при розробці плагінів для аналізу та перевірки підключення. Синтаксичні аналізатори надаються для мов опису обладнання VHDL та Verilog.
Це середовище розробляється кількома німецькими університетами, написаний на C ++, Qt та Python і випущений за ліцензією MIT.
З його основних характеристик виділяються:
- Направлене природне графічне представлення елементів списку мереж та їх зв’язків.
- Підтримка спеціальних бібліотек дверей.
- Висока продуктивність завдяки оптимізованому ядру C ++
- Модульність - напишіть власні плагіни C ++ для ефективного аналізу та маніпулювання списком мереж (наприклад, за допомогою графічних алгоритмів)
- Графічний графічний інтерфейс, що забезпечує візуальний огляд списку мереж та інтерактивний аналіз
- Вбудована оболонка Python для дослідницької взаємодії з елементами мережі та взаємодії з плагінами з графічного інтерфейсу
Про HAL версії 2.0.0
Зараз це середовище знаходиться у його версії 2.0.0 в якому Покращено аналізатори VHDL та Verilog, разом із системою збірки CMake, яка була оновлена для використання цільових конфігурацій.
також виділяється, що додана підтримка ієрархізації та модуляризації, а також додатковий вид ізоляції та нова система дизайну.
З інших змін згадані в цій новій версії:
- Зміни в системі бібліотеки дверей
- BDD замінено на логічні функції
- Основні зміни у внутрішньому представленні типів воріт
- Дозволяє диференціювати LUT, шльопанці, засувки та комбіновані типи воріт
- У засувках та тригерах тепер ви можете вказати спеціальні послідовні входи, такі як включення, синхронізація, налаштування та скидання.
- Бібліотеки воріт JSON замінено файлами свободи
- Спрощена система плагінів
- Бібліотека Igraph включена
- Основний огляд графічного інтерфейсу
Як встановити HAL на Ubuntu та похідні?
Для тих, хто зацікавлений у встановленні цього зворотного інженерного середовища для електронних схем, вони можуть це зробити, дотримуючись інструкцій що ми ділимося нижче.
HAL можна встановити двома способами в Ubuntu та похідних, перший підтримує нас із сховища програми (Діє лише для Ubuntu 18.04).
це ми можемо додати його до системи за допомогою терміналу (Ви можете відкрити його за допомогою комбінацій клавіш Ctrl + Alt + T), і в ньому ми будемо вводити наступні команди.
Спочатку ми збираємося додати зі сховища за допомогою:
sudo add-apt-repository ppa:sebastian-wallat/hal
Ми оновлюємо пакети та список сховищ за допомогою:
sudo apt-get update
І ми продовжуємо встановлювати програму в нашій системі, набравши таку команду:
sudo apt install hal-reverse
Інший спосіб встановлення - компіляція програми в системі. Для цього ми повинні завантажити код HAL за допомогою терміналу.
Спочатку ми наберемо:
git clone https://github.com/emsec/hal.git && cd hal
Зараз ми збираємось встановити необхідні залежності:
./install_dependencies.sh
І ми продовжуємо компілювати код за допомогою:
mkdir build && cd build cmake .. make
Після завершення компіляції ми переходимо до встановлення за допомогою:
make install
В кінці кінців можете ознайомитися з документацією та іншою інформацією про HAL У наступному посиланні.