Трансформация программного обеспечения в микросхему. Рутина или творчество? (Леонид Пурто, SECR-2012)

Материал из 0x1.tv

Аннотация

Докладчик
Леонид Пурто.jpg
Леонид Пурто

Разработка современных микросхем в зависимости от их сложности стоит от 10 до 150 миллионов долларов. Примерно половина этой суммы приходится на проектирование СБИС и еще 30% на разработку программного обеспечения. Столь сложные проекты требуют четкой организации процесса разработки, эффективного маршрута проектирования.

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

  • разделение исходного алгоритма на две части: аппаратные акселераторы и программное обеспечение, запускаемое на интегрируемом программном ядре и/или на хост-процессоре.
  • моделирование аппаратной и программной части как единого целого
  • сложность, если не сказать невозможность отладки аппаратной части после выпуска опытных образцов

Моделирование аппаратной части в современных САПР помимо организационной сложности ведет к колоссальному расходу времени, так как аппаратная реализация микросхемы представляет из себя набор конкурирующих, параллельно запускаемых процессов с ничтожно малым шагом моделирования. Отметим и весьма высокую стоимость современных САПР – от сотен тысяч до миллионов долларов за одну инсталляцию.

Наиболее популярные маршруты проектирования таковы:

  • разработка RTL кода на основе текстового и графического описания алгоритмов
  • прямой синтез RTL из Матлаб (Matlab Simulink HDL coder (Mathworks), Synphony (Synopsys), …)
  • прямой синтез RTL из C (Synfora (Synopsys), CatapultC (Mentor Graphics), …)
  • разработка RTL кода на основе так называемой “золотой референсной модели”, написанной на языке C.

В последнем случае можно выделить два принципиально разных подхода:

  • перевод программного кода из традиционного C в SystemC
  • преобразование исходного кода в RTL-ориентированную форму – промежуточную “золотую референсную модель” на языке C – с последующей ручной конверсией RTL-ориентированных функций в конечный RTL-код


По мнению автора доклада преобразование исходного C-кода в RTL-ориентированную форму в ряде случаев является наиболее эффективным способом конверсии наукоемких алгоритмов в RTL и далее в СБИС. В докладе рассматриваются основные проблемы известных маршрутов проектирования, причины, почему ни один из предлагаемых маршрутов не является оптимальным, даются рекомендации на основе собственного опыта и личной практики. В качестве примера, иллюстрирующего трансформацию сложного программного решения в RTL код, выбран проект “разработка СБИС super host-based GPS/ГЛОНАСС приемника”. Представлена структурная схема baseband processor’a такого приемника, описываются его основные компоненты, показывается последовательность их трансформации из программной модели в чип.

Видео







Слайды

Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf Трансформация программного обеспечения в микросхему - рутина или творчество (Леонид Пурто, SECR-2012).pdf

Примечания и отзывы


Plays:101   Comments:0