Симулятор набору команд
Зовнішній вигляд
Симулятор набору команд (СНК) є симуляційною моделлю, як правило, написаною на мові програмування високого рівня, яка імітує поведінку комп'ютера або мікропроцесора через «читання» команд та підтримку внутрішніх змінних, які відповідають регістрам процесора.
Симуляція команд є методологією, яка може використовуватись з декількох причин:
- Для імітації машинних кодів іншого пристрою або всього комп'ютера, для перевірки сумісності[en] знизу-вгору — зазвичай симулятор всієї системи включає в себе симулятор набору команд.
- Для моніторингу та виконання команд машинного коду (які опрацьовуються як вхідний потік) на тому ж обладнанні з метою випробування і зневадження, наприклад, із захистом пам'яті (який захищає від випадкового або навмисного переповнення буфера).
- Для підвищення швидкодії порівняно з більш повільною циклічною (англ. cycle-accurate) симуляцією, яка використовує процесорне ядро, тому сам процесор не перевіряється. У мові опису апаратури розробці використовується Verilog, де моделювання відбувається за допомогою інструментів подібних до СНК, і вони можуть працювати швидше за допомогою Program Language Interface (не плутайте з мовою програмування PL/I).
- "Mikrocodesimulator MikroSim 2010". 0/1-SimWare. Архів оригіналу за 1 серпня 2020. Процитовано 6 грудня 2010.
- «Instruction-Level Simulation And Tracing» [Архівовано 3 березня 2016 у Wayback Machine.]
- Imperas [Архівовано 1 грудня 2019 у Wayback Machine.] забезбечує СНК більш ніж для 170 різних процесорів ARM, ARMv8, MIPS, MIPS64, PowerPC, RISC-V, ARC, Nios-II, MicroBlaze ISAs.
В іншому мовному розділі є повніша стаття Instruction set simulator(англ.). Ви можете допомогти, розширивши поточну статтю за допомогою перекладу з англійської.
|