201401120900


Контроллер Intel Galileo
------------------------

    А Вы не пробовали играть в шахматы командами (черные майки играют белыми фигурами и vice versa)? Совсем другой эффект!

В ноябре 2013 года сверх популярный Аrduino (на раннем этапе cуществовали AVR и Microchip PIC версии) получил "вторую жизнь". Все дело в том, что с каждым годом транзистор на кристалле микрочипа занимает все меньше места. До сих пор это давало следующие преимущества:

  1. На одном кристалле помещаются более сложные схемы. Порог -- "хотя-бы весь компьютер" он же SoC (System on Chip) -- подходящие технологические нормы 22-7 нм.
  
  2. Удается повысить тактовую частоту работы всей или части схемы, что очень важно, например при создании модуляторов лазерного луча для передачи данных на расстояние (проект "интернет на Луне" [1]).
  
  3. Удается снизить потребление чипом энергии.

Однако процесс не может продолжаться бесконечно, уже начиная с 5-7 нм:

Токи утечки увеличиваются настолько, что разогрев единицы площади кристалла становится недопустимо высоким, экономичность падает. На достигаемых частотах срабатывания единичного транзистора медь перестает проводить электрический ток и другие неприятности.
  
Как оказалось -- диапазон 15 -- 7 нм позволяет успешно конкурировать (как по потребляемой мощности, так и по производительности и функциональности) синхронным и асинхронным архитектурам (x86 и ARM). В 2015 году мы увидим большее количество смартофонов и планшетов на процессорах с архитектурой x86.

В качестве "пилотного проекта" рассмотрим плату контроллера Intel Galileo (процессор Quark x86, 22 нм), где потребление энергии не столь критично, как в смартофонах или гаджетах типа "умные очки, часы и т.п."

Прогнозируемую популярность проекта должны обеспечивать:

Удобство использования -- как по выводам на плате так и программно, мы имеем обычный Arduino (тот же язык программирования "почти С++, но проще чем С", знакомое API [2], а так же хороший старт для начинающих [3]).

Имея классический ARM Arduino можно потренироваться с бесплатным программным обеспечением с сайта [4], скачать и установить эмулятор [5] и компилятор C++ (обязательно этот, эмулятор без него не заработает. Установленный WinAVR C будет мешать и его следует предварительно деинсталлировать) [6].

При наличии возможностей, существует вариант построить виртуальный компьютер на базе заметки [7], и в нем экспериментировать с Arduino.

Также существует коммерческая версия эмулятора [8]. С обзором возможных решений можно ознакомиться в [9].


Ссылки
------

[1]. NASA рассказала о будущем межпланетной лазерной связи, http://www.3dnews.ru/790317

[2]. Arduino Language Reference, http://arduino.cc/en/Reference/HomePage

[3]. Learning Arduino, http://arduino.cc/en/Tutorial/HomePage

[4]. http://arduino.cc/en/Main/Software

[5]. https://github.com/Paulware/ArduinoDebugger/

[6]. http://sourceforge.net/projects/orwelldevcpp/

[7]. http://nnm.me/blogs/srchost/virtualbreadboard-simulyator-arduino/

[8]. http://virtronics.com.au/Simulator-for-Arduino.html

[9]. http://blog.oscarliang.net
        /arduino-simulator-free-virtual-circuit-hardware/
