«Горячие темы» EDA индустрии по материалам новостей портала DACafe.com


Долинский Михаил


1. Конфигурируемые процессоры

В апреле 2004 года состоялась первая международная конференция по SoC («системы-на-кристал-ле»). Она состояла из 5 сессий, и на каждой сессии было по 4 докладчика. Поэтому темы рассматривались глубоко и широко. На конференции были представлены наиболее применяемые конфигурируемые процессоры как база для создания современных SoC. О них мы и расскажем.


1.1. Tensilica — конфигурируемый и расширяе-мый процессор

Tensilica была основана в 1997 году. Фирма получила 4 раунда финансирования (в общей сложности $64 млн). Среди инвесторов — Altera Corporation, Cisco Systems, Conexant Systems и множество венчурных фирм.

Специалисты Tensilica заметили, что большинство SoC состоит из RTL-блоков, реализующих специфическую для данного приложения функциональность с целью повысить производительность внутрикристального процессора. Эти RTL-блоки состоят из машины состояний (10% логики и 90% риска) и вычислительных элементов (90% вентилей и 10% риска). Поэтому они предложили заменить эти RTL-блоки разработкой firmware и определяемых пользователем исполнительных устройств и регистров, дополняющих предопределенный процессор. Таким образом, Xtensa фирмы Tensilica — это конфигурируемая процессорная архитектура для встроенных SoC-приложений, базирующаяся на конфигурируемом, расширяемом и синтезируемом процессорном ядре.

Запатентованная базовая архитектура содержит 80 RISC-инструкций (16- и 24-разрядных), оптимизированных для встроенных систем, и включает 32-разрядное АЛУ, 32 или 64 32-разрядных регистра общего назначения и 6 специальных регистров.

Системные архитекторы, разработчики аппаратного и программного обеспечения используют веб-интерфейс Xtensa Processor Generator (XPG) для выбора опций архитектуры и иерархии памяти. Разработчики могут также описать дополнительные типы данных, инструкции и исполнительные устройства с помощью специального языка TIE (Tensilica Instruction Extension), сходного с Verilog. Например, с помощью TIE можно описать новые регистры, регистровые файлы, 24-разрядные данные для аудио-приложений, 56-разрядные данные для приложений безопасности и 256-разрядные данные для обработки пакетов. После этого XPG в течение нескольких часов сгенерирует полное синтезируемое описание аппаратного обеспечения и скорректированное системное программное обеспечение. Системное программное обеспечение включает средства разработки прикладного программного обеспечения, симулятор, профилировщик и библиотеки для поддерживаемых RTOS. Среда разработки Xtensa Xplorer IDE частично основывается на платформе с открытыми исходными текстами ECLIPSE.

Используя профилировщик, разработчики могут анализировать эффективность прикладной программы и оценивать, насколько TIE помог повысить производительность. Разработчики могут исследовать различные архитектуры, используя XPG.

Средства разработки прикладного программного обеспечения для Xtensa включают C/C++ компилятор (gcc), ассемблер, линкер и отладчик (gdb). Эти продукты генерируются параллельно с описанием процессора и потому являются «корректными по построению». Они автоматически настраиваются и оптимизируются на использование определенных пользователем инструкций.

Специалисты из Tensilica привели несколько примеров практических разработок, включая GSM-аудиокодек, используемый в сотовом телефоне. Профилирование кода, исполняемого на RISC-процессоре, показало, что 80% времени тратилось на исполнение операций умножения. Добавление умножителя в качестве конфигурируемой опции сократило количество тактов, требуемых на исполнение кода, в 7 раз. А использование вместо умножителя устройства умножения с накоплением сумм сократило время исполнения в 12 раз. Tensilica показала впечатляющие результаты на тестах EEMBC. В среднем пользователи Tensi^ используют 5 процессоров Xtensa в одном SoC-проекте.


1.2.Elixent — конфигурируемый массив процессоров

Elixent была основана в октябре 2000 года в Бристоле (Англия) выделившись из Hewlett-Packard Research Laboratories. Четверо основателей Elixent четыре года работали в HP над разработкой концепции платформы RAP (Reconfigurable Algorithm Processing). Вначале Elixent получила $14 млн от венчурной фирмы 3i Group и промышленных инвесторов HP и Actel. В июле 2003 года Elixent получила второй раунд финансирования в размере $10 млн от венчурных фирм.

Первая публичная демонстрация технологии RAP состоялась в октябре 2002 года в Японии на выставке CEATEC. Elixent выполнила JPEG-декодер на одном кристалле. Демонстрация показала перспективы повышения производительности и сокращения размеров кристаллов при использовании технологии RAP.

В январе 2003 года Elixent подписала соглашение с Toshiba о совместной разработке SoC-плафтормы, которая интегрирует технологию D-Fabric от Elixent с конфигурируемым про-цесорным ядром MeP фирмы Toshiba.

D-Fabric включает в себя 4-разрядные АЛУ, регистры и «переключатели» ('switch-box'), которые объединены в блоки ('tile'). Сотни или тысячи таких блоков формируют 'D-fabric array'. Необходимые функции распределяются по этим блокам и, таким образом, алгоритмы могут быть реализованы в аппаратном обеспечении. В результате — выигрыш в производительности, потреблении энергии, размере кристалла и гибкости.

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

АЛУ в D-Matrix располагаются в шахматном порядке, перемежаясь со 'switchboxes', которые служат как средство передачи информации от одного АЛУ к другому или как 64 бита конфигурируемой памяти. Кроме того, в случае необходимости могут добавляться 256 байтов памяти в каждый блок. Такая схема обеспечивает чрезвычайную гибкость, поскольку каждое АЛУ может обмениваться информацией с любым из четырех соседних АЛУ.

Алгоритм обработки данных может задаваться в Verilog, Handel-C или MATLAB. Для сложения 8-разрядных чисел нужно задействовать два АЛУ, для сложения 32-разрядных чисел — 8 АЛУ.

Стандартный способ распространения технологии RAP — это IP-компонент DFA-1000, который позволяет пользователям интегрировать массив D-Fabric непосредственно в собственные чипы.


1.3.ARC International — конфигурируемые пользователем ядра

Первоначально ARC Cores была одним из подразделений фирмы Argonaut — разработчика игровых приставок. В 1998 году ARC изобрела конфигурируемое микропроцессо-орное ядро, которое было лицензировано фирмой Nintendo. В 1999 году ARC выпустила полную IDE, а затем RTOS и другое программное обеспечение. В 2003 году доходы компании превысили $10 млн.

ARCtangent — это 32-разрядное конфигурируемое пользователем ядро микропроцессора, которое можно использовать в ASIC, SoC, ASSP и FPGA, поскольку он распространяется как синтезируемое HDL-описание. ARCtangent реализован как четырехстадий-ный конвейер, его система команд оптимизирована под генерацию плотного кода и потому содержит как 16-, так и 32-разрядные инструкции. Большинство инструкций исполняется за один цикл и имеет опциональное условное исполнение. Разработчики могут модифицировать и дополнять систему команд для собственных приложений в целях оптимизации производительности исполнения, ввода-вывода, потребления энергии, размера кристалла или стоимости. Разработчики могут добавить DSP-функцио-нальность или объединять DSP- и RISC-функциональность в одном процессоре. Благодаря множеству интерфейсов ввода-вывода на базе процесоров ARC удобно строить мультипроцессорные системы.

Процессор поддерживается средствами разработки MetaDeveloper, которые включают: компилятор C/C++, ассемблер, линкер, профайлер, отладчик и операционную систему реального времени. Отладчик поддерживает мультипроцессорную отладку.

ARC также поставляет ARCangle — плату разработки на базе FPGA, которая поддерживает конфигурируемость и расширяемость процессора ARC.


1.4. picoChip — реконфигурируемые процессоры цифровой обработки сигналов

PicoChip основана в сентябре 2000 года в Bath, UK. Она получила первый раунд финансирования в июне 2001 года в размере $7 млн и еще $17 млн — в октябре 2003.

picoChip — это fabless-компания, нацеленная на рынок базовых станций 3G. Типичный проект базовой станции основывается на выполнении специфических DSP-опера-ций и сложных протоколов управления. Традиционно базовые станции исполнялись на ASIC/FPGA вместе с DSP-процессорами. picoChip предлагает масштабируемую мультипроцессорную микросхему, интегрирующую все необходимое.

picoArray — это массив параллельных процессоров (до 400 на кристалле), объединенных 32-разрядными шинами. Каждый из процессоров 16-разрядный, с собственной локальной памятью программ и данных. Процессор эквивалентен ARM9, если он ориентирован на выполнение задач управления, или TI C5x, если он предназначен для выполнения функций DSP. Поскольку все процессоры могут функционировать параллельно, а внутрикристальные шины обеспечивают производительную передачу данных, то picoArray способен выполнять более 100 млрд операций в секунду.

Каждый процессор может быть запрограммирован на С или ассемблере. Для описания взаимодействия процессоров можно использовать VHDL. Такой подход позволяет эффективно разделять алгоритмы на процессоры.


1.5. IPFlex — динамически реконфигури-руемые процессоры

Fabless-компания IPFlex основана в марте 2000 года в Японии. Первоначальное финансирование — $12 млн. В декабре 2002 года IPFlex и Fujitsu объявили о начале сотрудничества. В марте 2004 года они анонсировали коммерческий выпуск совместно разработанного процессора DAP/DNA-2 (Digital Application Processor/Distributed Network Architecture).

DAP/DNA — это динамически реконфигу-рируемый процессор, включающий два главных компонента: высокопроизводительный RISC-процессор (DAP) и динамически ре-конфигурируемое ядро (DNA). Такая платформа обеспечивает аппаратную производительность и программную гибкость. Вместе с DAP/DNA поставляется интегрированная среда разработки DAP/DNA-FW II. Она обеспечивает компиляцию алгоритмов, написанных на MATLAB/Simulink или C.

DAP/DNA-2 содержит множество процессорных элементов (PE) и может оптимально конфигурировать внутренние цепи в соответствии с потребностями приложения. Функции каждого PE, так же как и маршруты соединений PE, могут быть реконфигуриро-ваны не только на этапе создания системы, но и в условиях ее реальной эксплуатации.

Использование технологии динамической реконфигурации дает возможность выполнять множество различных функций на одном DAP/DNA-2, что ранее требовало нескольких специализированных чипов. Кроме того, единый алгоритм может быть распределен между PE непосредственно во время выполнения.


2. ESL-проектирование

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

Традиционно разработчики программного обеспечения значительную часть своей работы выполняют после появления прототипов аппаратного обеспечения. С учетом высокой стоимости и серьезных временных затрат на разработку аппаратного обеспечения, чаще всего возникающие проблемы ложатся на плечи разработчиков программного обеспечения на последнем этапе цикла разработки. Это неблагоприятно сказывается на производительности, функциональности и выполнении работы в поставленные сроки.

Electronic System Level (ESL) Design — или проектирование на системном уровне — проектирование «сверху вниз», базирующееся на симуляции, как раз и призвано решать означенные выше проблемы. Ключ к реализации ESL-подхода — моделирование на более высоких уровнях абстракции. Проще и быстрее разрабатывать модели на более высоких уровнях абстракции, нежели на уровне регистровых передач (RTL — register transfer level). Кроме того, симуляция выполняется на порядки быстрее, поскольку не симулируются несущественные для данного уровня абстракции детали. Такой подход в значительной степени увеличивает возможности симуляции и анализа альтернативных решений. Идеальной выглядит методология последовательного перехода на более низкие уровни абстракции: от функциональной модели, не учитывающей временные ограничения, к транзактной модели, затем к поведенческой аппаратной модели, затем к модели с учетом назначений контактов и поциклово точной, от нее — к RTL-модели. Первым этапом в потоке ESL-проектирова-ния является определение требований (requirements) к проекту. Требования устанавливаются конкретным заказчиком или определяются в результате соответствующих маркетинговых исследований.

Далее проводится проектирование и верификация алгоритмов, как правило, с помощью языка программирования C или с помощью специальных средств типа MathLab/ Simulink от MathWorks или SPW от CoWare. На этом этапе с помощью текстовых или графических средств создаются исполняемые функциональные спецификации, которые описывают поведение проекта в рамках заданных ограничений. Функциональная верификация технологически независима и сегодня часто выполняется с помощью SystemC. Такое описание лишено деталей реализации. Решение о том, какие функции выполнять программно, а какие аппаратно, — отложено. Такая исполняемая функциональная спецификация может быть использована для минимальной верификации того, что проект соответствует функциональным требованиям и может служить главным средством тестирования или «золотой моделью» для последующих стадий проектирования.

Следующий шаг — процесс разбиения функциональности между программным и аппаратным обеспечением, который должен определить количество и типы процессоров, назначить функции на эти процессоры так, чтобы проект соответствовал требованиям по производительности, стоимости, размерам кристалла и потребляемой энергии. Оптимальное решение является взвешенной функцией этих метрик. В некоторых случаях наиболее важной является производительность, а в некоторых — стоимость. С математической точки зрения задача выглядит как классическая задача целочисленного программирования, где определена целевая функция, и решение должно соответствовать ограничениям. На практике автоматическое распределение функций не принято. Чаще всего разбиение начинают с назначения всех функций программному обеспечению и исполнению ПО на целевом процессоре (или его модели) для определения производительности. Функции, исполнение которых требует большей производительности, переносятся на аппаратный уровень, и так до тех пор, пока не будут достигнуты ограничения, установленные исходными спецификациями. Этот процесс управляется интерактивно, эвристически и опытным путем.

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

Вопросы, возникающие на этапе ESL-про-ектирования, таковы: что будет симулироваться, на каком уровне абстракции, какова точность и скорость симуляции, что будет подаваться на вход, какие языки используются и т. д. Очень важно также, в какой степени результаты предыдущей стадии используются на последующих этапах. Никто не хочет дублировать работу. В частности, серьезную озабоченность вызывает трудоемкость перехода от разработанных поведенческих описаний к HDL/RTL-описаниям.

Ответ на этот вопрос различен у различных производителей средств ESL, таких как Summit Design, CoFluent, Vast Technology, CoWare.

Summit Design ведет свою историю с 1991 года, тогда это было SEE Technologies, израильское подразделение Daisy Systems. Название Summit Design возникло в 1996 году. В 2001 году Summit Design объединилась с Viewlogic Systems, образовав новую компанию Innoveda. В апреле 2002 года управление и инвесторы выкупили Summit Design у Innoveda и вновь продекларировали Summit Design как независимую компанию.

В настоящее время Summit Design имеет 76 сотрудников, она прибыльна и имеет годовой доход $14 миллионов в 2003 году. У Summit Design 900 пользователей, и ее продукты инсталлированы на 26 тыс. рабочих мест. Среди основных ESL-продуктов Summit Design такие средства, как Visual Elite, FastC, System Architect и Virtual CPU.

Visual Elite — это версия следующего поколения продукта Visual HDL, который обеспечивает текстовый и графический ввод проектов, что помогает разработчикам, используя любой существующий код VHDL или Verilog, преобразовать его к легко понимаемому графическому представлению в виде функциональных схем, диаграмм состояний и блок-схем.

Visual HDL транслирует верифицированный проект в синтезируемый HDL-формат, а Visual Elite позволяет пользователям создавать отдельные компоненты проекта с помощью C/C++ или SystemC и соединять их с компонентами, созданными с помощью HDL.

FastC позиционируется Summit как ультрабыстрая платформа верификации проектов, созданных на базе SystemC. Стиль кодирования, навязываемый FastC, позволяет разработчикам выполнять описания на уровне регистровых передач, подобно тому, как они делают это с помощью VHDL или Verilog, одновременно получая преимущества более высокой производительности кода, скомпилированного в хост-архитектуру. При этом связи между компонентами компилируются статически, что обеспечивает более высокую скорость симуляции. Работая с интерактивными средствами отладки Visual Elite, пользователи могут устанавливать точки останова, исполнять по шагам, трассировать сигналы и структуры данных в графическом виде вне зависимости от исходного языка. Summit обеспечивает автоматическое отображение из FastC-описаний в RTL-HDL-описаиня, генерируя для них синтезируемые HDL-представления.

С помощью System Architect пользователи могут строить, симулировать и анализировать архитектурные прототипы аппаратных и программных систем. System Architect позволяет отслеживать движение данных по системе. Имеется библиотека параметрических API-функций, упрощающих моделирование микропроцессоров, шин, памяти и устройств ввода-вывода. Пользователи могут анализировать характеристики производительности разрабатываемой системы, такие как задержки на путях данных, процент задействования компонентов, производительность обработки данных.

После того, как выполнено распределение функций между программным и аппаратным обеспечением, для интеграции логического симулятора и средств исполнения программного обеспечения можно использовать эффективное средство Summit Virtual CPU, являющееся полной средой для совместной верификации программного и аппаратного обеспечения. Прежде всего, Virtual CPU имеет среду исполнения программного обеспечения системы на целевом CPU. Эта система интегрирована с логическим симулятором аппаратного обеспечения, которое отвечает в соответствии с циклами шины, как если бы они были инициированы целевым CPU. Целевой процессор заменяется BFM (Bus Functional Model) — моделью процессора и его виртуль-ной моделью, исполняемой на хост-процессоре. Виртуальная модель может исполняться как родной код, работающий на хост-процессоре, либо как симуляция целевого кода на ISS (Instruction Set Simulator).

VaST Systems Technologies была основана в 1997 году сотрудниками University of New South Wales (Австралия). Ее штаб-квартира сейчас находится в Силиконовой Долине. Последнее инвестиции — $6 млн в мае 2003 года. В фирме 33 сотрудника, еще 12 занимаются дистрибуцией продукции в Японии.

В технологии системного проектирования, поддерживаемой Vast, основой всему является Virtual Prototype System (VPS). VPS состоит из одной или более Virtual Processor Model (VPM), модели внутренних взаимодействий и моделей периферийных устройств. Vast использует собственную Communication and Infrastructure Fabric (CIF) для моделирования взаимодействий — от простого проводного соединения до сложных параллельных шин и сетей. По утверждению специалистов Vast, они моделируют межсоединения в 10-100 раз быстрее конкурентов. VPM — это поведенческие модели, непосредственно исполняющие программы. Vast разработала библиотеку примерно из 25 наиболее распространенных процессоров. Дополнительные модели процессоров разрабатываются по заказу.

CoMET — это среда параллельной разработки программного и аппаратного обеспечения, распространяемая Vast Systems.

METeor — это среда разработки и отладки программного обеспечения реального времени, опирающаяся на CoMET.

CoWare основана в 1996 году бывшими сотрудниками бельгийского IMEC (Interuniversities MicroElectronics Center). IMEC — ведущий мировой независимый исследовательский центр, нацеленный на разработку перспективных поколений чипов и систем. В соответствии с долгосрочным соглашением CoWare имеет исключительные права на запатентованные IMEC технологии. Свой первый продукт CoWare выпустила в 1998 году. В 1999 году CoWare выдвинула вместе с Synopsis инициативу Open SystemC Initiative (OSCI). Президент CoWare Гидо Ар-ну (Guido Arnout) в настоящее время является и президентом OSCI. В сентябре 2003 года Cadence и CoWare сформировали альянс, а Cadence сделала в CoWare значительные инвестиции. В соответствии с соглашением, CoWare сфокусирует свои усилия на ESL-средствах, как front-end разработках к Cadence Incisive Verification Platform. Кроме того, в соответствии со специальным лицензионным соглашением группа разработчиков Cadence, занимавшихся Signal Processing Worksystem (SPW), передана CoWare. В настоящее время на CoWare около 180 сотрудников, она получила за последние годы инвестиции в размере $30 млн от таких фирм, как ARM, Cadence, STMicroelectronics и Sony.


3. 64-разрядные процессоры и Linux

64-разрядные процессоры появились на рынке рабочих станций в середине девяностых годов (SUN Ultra Sparc, HP PA-RISC, IBM Power) и поддерживаются большинством EDA-поставщиков. В мире же ПК на базе процессоров Intel 64-разрядная архитектура относительно нова. Зададимся вопросом — а что дают 64-разрядные процессоры по сравнению с 32-разрядными? Как известно, n-разрядный процессор может обрабатывать одновременно n-битное число в течение одного такта. То есть 32-разрядный процессор может обрабатывать числа до 232, то есть примерно 4,3 миллиарда. Для сравнения, 64-разрядный процессор может обрабатывать числа до 264, то есть 18,4 квантильона (18 400 000 000 000 000 000). Это дает огромное преимущество 64-разрядным процессорам при обработке больших чисел, что имеет место во множестве прикладных областей.

Целочисленная арифметика очень больших чисел в 64-разрядных регистрах исполняется значительно быстрее, чем в 32-разрядной архитектуре. Однако вещественная арифметика и в 32-разрядных процессорах выполняется на специальных устройствах повышенной разрядности.

Еще более значительное влияние оказывает 64-разрядная архитектура в терминах адресного пространства. В 32-разрядных процессорах задаче доступно только 4 гигабайт памяти. В 64-разрядных процессорах задаче доступны 16 экстрабайт или 16 миллиардов гигабайт памяти. На первый взгляд кажется, что 4 гигабайта — это огромная память. Но она должна содержать операционную систему, прикладные программы и данные для них. Если их суммарное количество превышает доступную оперативную память, то часть приходится «свопировать» (сохраняя на диск и восстанавливая с диска по мере необходимости). Время доступа к оперативной памяти на несколько порядков меньше, чем время доступа к данным на диске.

В определенных приложениях всю базу данных или огромные файлы удобно иметь в едином виртуальном пространстве или даже в физической оперативной памяти для обеспечения быстрого доступа.

Некоторые приложения при выполнении симуляции оперируют с большими массивами данных, которые должны непрерывно находится в оперативной памяти.

Первый 64-разрядный процессор Alpha выпустила Digital Equipments Corporation (DEC).

В мае 2001 года Intel выпустила 64-разрядный Itanium для персональных компьютеров, который оказался не очень успешным по ряду причин, в том числе из-за известной ошибки в арифметике с плавающей точкой.

В июле 2002 года Intel выпустила Itanium 2. В апреле 2003 года AMD выпустила семейство 64-разрядных процессоров AMD64, состоящее из двух членов — Opteron и Athlon. Причем Intel и AMD имели различные рыночные цели.

Intel нацеливала Itanium на высокопроизводительные вычисления, которые выполняются под операционной системой UNIX. Эта 64-разрядная архитектура получила название IA-64 и была несовместима с нынешним программным обеспечением для 32-разрядных процессоров. Intel не считала это проблемой, поскольку изначально ориентировала процессор Itanium на рынок чистых 64-разрядных вычислений. И в 2002 году Intel продала 100 тыс. чипов Itanium.

AMD избрала менее революционный подход и предложила чип «двойного применения». AMD разработала 64-разрядное расширение архитектуры и системы команд x86, которое назвала x86-64. В рамках архитектуры x86-64 AMD также удвоила число регистров общего назначения. AMD поддерживает следующие режимы: legacy, в котором непосредственно исполняются 16- и 32-разрядные приложения, compatibility, в котором 32-разрядные приложения выполняются без перекомпиляции под 64-разрядной операционной системой, и 64-bit, который требует перекомпиляции под 64-разрядную архитектуру. Последние два режима могут функционировать параллельно. В режиме compatibility 32-разрядное приложение исполняется на полной скорости непосредственно в аппаратном обеспечении без эмуляции.

Во время выступления на Intel Developers Forum в феврале 2004 года Крейг Баррет (глава Intel) объявил, что новые процессоры Xeon и Prescott будут поддерживать все программное обеспечение, которое поддерживают сейчас Athlon и Opteron фирмы AMD.

Тестирование показывает значительное преимущество в производительности и цене ПК Linux против прежних рабочих станций на базе UNIX.

В январе 2004 года Cadence анонсировала поддержку 64-разрядной ОС Linux на базе процессоров от AMD и Itanium 2 — для разработчиков огромных и сложных SoC.

В ноябре 2003 года Synopsys анонсировала поддержку архитектуры AMD64, а в сентябре 2003 года Mentor Graphics анонсировала поддержку DFT для архитектуры AMD64, а Magma сообщила о портировании всех своих продуктов на 64-разрядный процессор Opteron.

EDA Consortsium (www.eda.org) рекомендовал нацеливаться на Red Hat Enterprise Linux 3 с апреля 2004 года и Red Hat Enterprise Linux 4 — с мая 2005 года. Synopsis провела опрос своих пользователей в октябре 2003 года. Ответы на вопрос: «какой процент ваших EDA-работ требует 64-разрядной обработки?» распределились так:

Опрос также показал рост спроса на 64-разрядную обработку. На вопрос «какая у вас EDA-платформа номер один?» ответы распределились так: 70% UNIX и 30% Linux. В то же время на будущий год по тому же вопросу респонденты прогнозируют 58% Linux и 30% UNIX. Synopsis считает, что большие проекты просто не могут поместиться в 32-разрядных приложениях, поэтому Synopsis поддерживает 64-разрядную обработку в UNIX и Linux.

Cadence перенесла свои продукты в 64-разрядную ОС Linux только в январе 2004 года. Поэтому подавляющее большинство 64-разрядных пользователей Cadence сейчас используют UNIX. Более того, 90% пользователей Cadence используют 32-разрядные процессоры и приложения. По представлениям Cadence, это связано с тем, что на 64-разрядных серверах выполняются наиболее сложные работы, но для управления ими используются 32-разрядные компьютеры. Кроме того, проекты, которые помещаются на 32-разрядных компьютерах, там и реализуются, поскольку у пользователей сложилось мнение, что там они выполняются быстрее. Всего 75% пользователей продуктов Cadence работает под UNIX и 25% — под Linux. Однако количество использующих Linux быстро растет.

Linux — это операционная система, которая изначально была хобби Линуса Тор-вальдса — молодого студента из университета Хельсинки (Финляндия). Версия 1.0 ядра Linux была выпущена в 1994 году. С годами Linux собрала поддержку тысяч разработчиков ядра, приложений и документации. Сегодня Linux имеет все возможности современной UNIX-системы, включая истинную многозадачность, виртуальную память, разделенные библиотеки, загрузку по требованию, собственное управление памятью, поддержку TCP/IP.

По данным на 2002 год в финансовых сферах 49% организаций собираются использовать Linux, а 39% — уже используют. Среди основных побудительных причин перехода на Linux: сокращение общих расходов (54%), сокращение стоимости лицензирования программного обеспечения (24%), улучшение контроля разработки (22%), повышенная безопасность (22%).

Кто за что отвечает в Linux?

За ядро отвечает Линус Торвальдс. Разработчики Linux самоорганизовались в соответствии со своими интересами и знаниями в команды, отвечающие за отдельные подсистемы. Каждая из таких подсистем имеет эксперта, называемого maintainer, который организует и контролирует работу остальных членов команды. Maintainer анализирует исходные тексты, которые к нему присылаются, а также организует широкое рецензирование присылаемого кода для того, чтобы обеспечить более высокое качество результата. Финальный арбитр, ответственный за то, что включается в Linux — Линус Торвальдс. Все исходные тексты Linux — как уже включенные в систему, так и проходящие процедуру рецензирования и проверки, доступны on-line. В то же время, создание и продажа дистрибутивов Linux стало многомиллионным бизнесом. Доступны коробочные версии Linux от таких компаний как Red Hat, SuSE, MandrakeSoft. Можно загрузить Linux с множества сайтов. Для Linux по той же технологии открытых исходных текстов разрабатывается множество приложений, в том числе оболочки KDE и GNOME, офисные продукты (OpenOffice.org) и браузеры, например, Mozilla.

Red Hat, основанная в 1993 году, сегодня является ведущим поставщиком Linux. На основе первого продукта Red Hat Linux сегодня развиваются два: Red Hat Enterprise Linux (на продажу) и Fedora Project (в исследовательских целях). Red Hat начала массовую продажу и поддержку ОС Linux в 1999 году. Доходы Red Hat за 2003 год — $126 млн. Годовой прирост доходов ~90%. С момента выпуска в марте 2003 года совершено 160 тыс. продаж Red Hat Enterprise Linux. Эта версия поддерживает 5 различных процессорных архитектур (Intel x86, Itanium, AMD64, IBM Power PC и IBM Mainframe).

Семейство Red Hat Enterprise Linux имеет трех членов: AS (Advanced Server), который поддерживает все 5 архитектур, ES (Entry/ Mid Server) — только Intel x86, и WS (Workstation) — три не-IBM-архитектуры.

В дополнение к Linux, Red Hat предлагает множество приложений, таких как средства разработчиков программного обеспечения для Linux, файловые оболочки, серверы порталов и средства разработки веб-приложений.

SUSE LINUX AG была основана 1992 году в Германии. SUSE утверждает, что ее версия LINUX установлена на 15 миллионах компьютеров. SUSE имеет около 380 сотрудников в четырех странах. SUSE партнерствует с IBM Global Services, SAP, HP Services и Fujitsu Siemens Computers. В ноябре 2003 года Novell объявила о том, что достигнуто соглашение по покупке ею SUSE Linux за $210 млн. Сделка была завершена в январе 2004 года. Novel уже объявила, что IBM намерена инвестировать в этот проект $50 млн.

Linux распространяется по лицензии GNU GPL (General Public License). Лицензия GPL дает право использовать, модифицировать и распространять программный код только если оставляются открытыми все исходные тексты нового продукта.

Сам проект GNU был начат в 1984 году для разработки полностью бесплатной UNIX-по-добной операционной системы. SCO имет права на UNIX и пытается объявить Linux «вне закона». Sun Microsystems и Microsoft недавно купили лицензию на UNIX у SCO. HP, Novel и Red Hat намерены оспаривать в суде права SCO на Linux.