OSDev
http://osdev.su/

Процессоры
http://osdev.su/viewtopic.php?f=18&t=1023
Страница 1 из 3

Автор:  Bire [ 29 ноя 2014, 19:21 ]
Заголовок сообщения:  Процессоры

Вычитал тут про интеллектуальную аппаратную оптимизацию. Поясните, что это, или ткните носом в литературу.

Автор:  Himik [ 29 ноя 2014, 19:30 ]
Заголовок сообщения:  Re: Процессоры

Программный цикл, который ни чего не вычисляет, а только тратит время - пропускается (оптимизируется) за ненадобностью, т.к. сейчас временные задержки так не делают.

Автор:  Bire [ 29 ноя 2014, 20:22 ]
Заголовок сообщения:  Re: Процессоры

Это я понял. Интересует аппаратная реализация.

Автор:  SII [ 29 ноя 2014, 20:27 ]
Заголовок сообщения:  Re: Процессоры

Himik писал(а):
Программный цикл, который ни чего не вычисляет, а только тратит время - пропускается (оптимизируется) за ненадобностью, т.к. сейчас временные задержки так не делают.

Ещё как делают в микроконтроллерном мире. Как, например, сделать задержку в несколько микросекунд? Только пустым циклом или NOPами, учитывая длительность цикла конкретного процессора.

Автор:  Himik [ 29 ноя 2014, 20:33 ]
Заголовок сообщения:  Re: Процессоры

Bire писал(а):
Это я понял. Интересует аппаратная реализация.

Нас в это не посвящают. В общем-то пустой цикл представляет собой 1-2 элементарных команд, поэтому процессору легко по своему шаблону определить такой цикл. Как антивирус по шаблону определяет вирус.

Автор:  pavia [ 29 ноя 2014, 20:56 ]
Заголовок сообщения:  Re: Процессоры

Не совсем так. Циклы процессоры не пропускают. Но сделать это нетрудно. В процессоре есть блок который выполняет декодирование команд. Ещё до того как код начнёт исполняться.

В статье говорится просто у ускорение работы современных процессоров. Со времен первых ДОС (4.7 Мгц) частота процессоров поднялась в 1000 раз.


Код:
procedure Delay(ms:Word);
assemble;
asm
MOV CX,ms
L:
DEC CX
jnz @L
end;


И следовательно вместо ms= миллисекундам данный код уже работает за доли микросекунд.

Да и другие способы оптимизации используются. Конвейерная обработка, переупорядочение команд. Да и циклы оптимизировались, процессор не тратит время на переходах, а научился эффективно их предсказывать. Да кэш и прочее.

Прочитать можно тут:
http://www.intel.com/content/dam/www/pu ... manual.pdf

Автор:  pavia [ 29 ноя 2014, 21:34 ]
Заголовок сообщения:  Re: Процессоры

Читать в разделах "Оптимизация" и "процессоры"
http://www.wasm.ru/wault/

Автор:  Bire [ 29 ноя 2014, 21:38 ]
Заголовок сообщения:  Re: Процессоры

Благодарю.

Автор:  pavia [ 04 дек 2014, 10:20 ]
Заголовок сообщения:  Re: Процессоры

Решил опубликовать список литературы, в список вошло то что намой взгляд наиболее интересно:
1
Библиотечка «Квант» Выпуск 65.
М.Е. Левинштейн, Г.С. Симин Барьеры(От кристалла до интегральной схемы)
Москва «Наука» Главная редакция физико-математической литературы 1987


Научно популярно о транзисторах. Книга читается легко на одном дыхании. Рассказывает о физике полу проводников
2.
Хоровиц П., Хилл У. Искусство схемотехники: В 3-х томах = The Art of Electronics: Second Edition (© Cambridge University Press, 1980, 1989) / Пер. с англ.: Б. Н. Бронина, И. И. Короткевич, А. И. Коротова, М. Н. Микшиса, Л. В. Поспелова, О. А. Соболевой, К. Г. Финогенова, Ю. В. Чечёткина, М. П. Шарапова. — Изд. 4-е, переработанное и дополненное. — М.: Мир, 1993
Электроника. Куда без неё? Книга носит учебный характер. Читается трудно.
Скажем так - это основы электроники там расписано всё чтобы спроектировать процессор.

3. Реверс микросхем от профессионалов.
http://habrahabr.ru/company/zeptobars/blog/157917/
http://habrahabr.ru/post/169687/
http://habrahabr.ru/company/zeptobars/blog/200948/
Где-то видел презентацию о том как производят микросхемы в МЦСТ с упором на эльбрус. Но что-то не нашел.
4.
http://naf-st.ru/articles/digit/
Основные элементы, тригеры, счётчики и тд. Научно популярно.

5. Далее языки программирования VHDl и Verilog HDL и ПЛИС

Стандарты языков и руководство по синтезаторам.

Системы автоматизированного проектирования фирмы. Altera Max Plus II и Quartus II (Комолов).djvu
Вроде вот эта книга понравилась вечером уточню.

6.
Байков В. Д., Смолов В. Б. Аппаратурная реализация элементарных функций в ЦВМ, Ленинград, изд-во ЛГУ, 1975, 96 стр.
Байков В. Д., Селютин С. А., Вычисление элементарных функций в ЭКВМ, Москва, Радио и связь, 1982, 64 стр.
Байков В. Д., Смолов В. Б. Специализированные процессоры: итерационные алгоритмы и структуры, Москва, «Радио и связь», 1985, 288 стр.

Математика для создания сопроцессоров. Алгоритмы "Цифра за цифрой" (CORDIC) для математических операцияй sin,cos,arcsin, sqrt, и тому подобных.

7. Микроархитектура процессоров.
Хеннеси и Паттерсона "Архитектура компьютеров"
: John L. Hennessy , David A. Patterson Computer Architecture A Quantitative Approach

8. Реверс микросхем можно наглядно показаны диоды резисторы транзисторы, конденсаторы
http://www.righto.com/search?updated-ma ... -results=7
http://www.righto.com/2017/08/inside-fa ... thing.html
А вот тут катушечки
https://zeptobars.com/en/read/Espressif ... 2.4Ghz-ISM
Ещё немного реверса структура верная картинка транзистора
https://blog.adafruit.com/2016/05/05/cm ... ngineered/
Ещё немного про генераторы
https://arxiv.org/ftp/arxiv/papers/1208/1208.1078.pdf

Автор:  Bire [ 02 ноя 2015, 23:33 ]
Заголовок сообщения:  Re: Процессоры

Пожалуй, подниму старую тему. :) Не подскажете, как замедлить выполнение программы, написанной в 2001-м для Windows 2000? Хотелось бы обойтись без эмуляторов и виртуалок, оставив программе максимальную переносимость. Имеет ли право на жизнь набивание NOP'ов в нужных местах? Всё бы хорошо, если не отсутствие исходников. Прога, предположительно, на Delphi.

Страница 1 из 3 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/