Feb. 17th, 2017

32bit_me: (Default)
Прочитал ARM Application Note 273 "Dhrystone Benchmarking for ARM Cortex Processors ", 12 стр. англ. язык.
Руководство описывает метод измерения производительности ядра процессора с помощью теста Dhrystone.


Разумеется, аналогичным способом может быть измерена производительность не только процессора с ядром ARM, но и процессора с другой архитектурой, работающего как под управлением операционной системы, так и в bare-metal режиме.
Также посмотрел исходный текст Dhrystone. Единственное, что вызывает опасения, это то, что оптимизатор может удалить из него много всего, что повлияет на результат. Надо будет попробовать скомпилировать и посмотреть код на выходе.
32bit_me: (Default)
Прочитал руководство "The RISC-V Instruction Set Manual, Volume I: User-Level ISA, Version 2.0" по системе команд ядра Risc-V.



Итак, Risc V - это сравнительно новая архитектура процессорного ядра, которая может (в перспективе) заменить ARM (или хотя бы занять заметное место на рынке встраиваемых процессоров). Отличия Risc V от конкуретов - открытость и расширяемость. Система команд (ISA) открыта и описана, любой может сделать своё ядро, реализующее эту стстему команд. Система команд состоит из некоторого небольшого базового набора, стандартных расширений, и плюс к ним любой производитель/разработчик может добавлять свои раширения для своих узких задач.
Разрядность также может варьироваться (от 32 до 128 в текущей версии ISA), разрядность FPU (который также является необязательным расширением), также может варьироваться от 32 до 128.
Стандарт описывает базовую систему целочисленных команд (обозначаемую как I), стандартные расширения: расширение умножения/деления (M), расширение атомарных операций (А), расширение 32-битных вещественных чисел (F), расширение 64-битных вещественных чисел (D). Этот набор (IMAFD) образует ядро процессора общего назначения, которое может дополняться и другими расширениями, описанными в руководстве, или собственными расширениями производителя.
Минимально необходимое подмножество команд (I) мало и достаточно просто в реализации на HDL-языке. С его помощью можно программно реализовать все остальные команды, кроме набора А (атомарные операции), но набор А нужен только для многозадачных/многопоточных систем, если многопоточность не нужна, то можно обойтись без него.
Такой набор команд можно реализовать, например, на Verilog-е, что будет полезно для изучающих этот язык.

Profile

32bit_me: (Default)
32bit_me

July 2017

S M T W T F S
      1
2345678
9101112131415
16171819202122
232425262728 29
3031     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 21st, 2017 01:33 am
Powered by Dreamwidth Studios