|
В какой форме лучше передавать алгоритмы фронт-энд дизайнерам?, вопрос о правильном техмаршруте проектирования (сбор мнений) |
|
|
|
Jul 12 2012, 10:12
|
Участник

Группа: Участник
Сообщений: 31
Регистрация: 13-10-11
Из: Москва
Пользователь №: 67 720

|
Интересует мнение RTL-щиков, каковым я сам не являюсь.
Допустим, есть сложный проект с большим количеством математики, а в аппаратном выражении тянущий на миллион гейтов (без учета SRAM).
У постановщиков задачи есть программная модель, которую они готовы как угодно перелопатить, лишь бы последующее кодирование на verilog прошло как по маслу.Разумеется, все обильно документировано.
Добавлю также, что помимо математики в проекте весьма сложные циклограммы взаимодействия между модулями, которые программисты также готовы отобразить в коде, что помимо прочего полезно для отладки задуманных идей.
Вопрос: в какой форме и до какой степени разжеванности хотели бы видеть входные материалы исполнители (те, кто будет кодировать схему на verilog)?
Исходим из того, что программисты азы языков описания аппаратуры знают, и схемотехнике тоже слегка обучены, а будущие дизайнеры участвуют в проработке общей архитектуры микросхемы.
В качестве доп. вопросов: - кому логичнее озаботиться вопросом clock-gating и соответствующей модификацией алгоритмов? - до какой степени программисты должны дробить код на псевдо-процессы?
Специально обращу внимание, что вопрос не о SystemC, CatapultC, матлабных тулзах и пр.. Речь лишь о золотой референсной модели, но с максимальным приближением к RTL. В какой форме ее лучше всего организовать?
|
|
|
|
|
 |
Ответов
|
Jul 20 2012, 10:04
|
Участник

Группа: Участник
Сообщений: 31
Регистрация: 13-10-11
Из: Москва
Пользователь №: 67 720

|
Цитата(vetal @ Jul 18 2012, 21:22)  Он для того и создавался - чтобы удовлетворить по максимуму потребности. Переваривать ТЗ в таком виде сложновато будет для сложной системы. Использовать получится когда в голове будет полная картина - для перепроверки. Для программиста кубическая интерполяция - просто одна строчка в коде, а на уровне RTL - уже 4х ступенчатый конвейер будет выходить. Дело не в кубической интерполяции или алгоритмах CORDIC. В оригинале правильно пишут, зачем придумали SystemC: "Abstract: SystemC® is defined in this standard. SystemC is an ANSI standard C++ class library for system and hardware design for use by designers and architects who need to address complex systems that are a hybrid between hardware and software"Имея в своих руках System C или нечто пусть даже совсем рукотворное и несинтезируемое, типа симуляции на Си процессов, как я выше описал, вы не железо отлаживаете, вы можете отладить всю систему, в которой и процессорный софт зубодробителен, и всякие там акселераторы, на которые вынесена куча функций. Чтобы после отладки и кодирования на верилог никаких сюрпризов не было. То есть сишная модель (на system ли Си или совсем простенькая, без циклоаккуратностей и детализации шин) все равно будет. На ней отлаживается алгоритм, она - как золотая модель, плюс структурно и алгоритмически содержит все, как в будущем чипе. Основной RTL-щик, с которым взаимодействую, относится к systemC враждебно, говорит, что полноценных синтезов начиная сверху и до самого кремния на этом SystemC по всей Америке дай бог парочка будет. А для понимания исходников слишком дотошное прописывание в СистемСи каждой шины только во вред. То есть он сторонник полуфабриката на обычном Си (со всей документацией есессно).
Сообщение отредактировал Dragon-fly - Jul 20 2012, 10:06
|
|
|
|
|
Jul 23 2012, 17:47
|
Гуру
     
Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640

|
Цитата(Dragon-fly @ Jul 20 2012, 14:04)  Основной RTL-щик, с которым взаимодействую, относится к systemC враждебно, говорит, что полноценных синтезов начиная сверху и до самого кремния на этом SystemC по всей Америке дай бог парочка будет. А для понимания исходников слишком дотошное прописывание в СистемСи каждой шины только во вред. То есть он сторонник полуфабриката на обычном Си (со всей документацией есессно). и кто его осудит  проблема в backannotation, если так можно сказать. т.е. в возможности понимания нетлиста и соотнесение его с исходным кодом. то есть, если бы SC-шный синтезатор был бы вставлен в синопсисовский PRESTO/DC (как они пытались в 2005) то жизнь была бы проще. а если каким-то сторонним тулом перегнать SC (а возможно даже и С/С++/untimed С) в некий RTL (верилог), а затем синтезировать, то проблемы связать SC-шный исходник с нетлистом для RTL-щика будет, возможно, более трудоемкой, чем понять SC-шную модель и переписать ее в верилог Цитата(Dragon-fly @ Jul 17 2012, 15:55)  стало быть, если верилогер шарит в СистемСи, ему давать задание в виде готового проекта (помимо документации) самое милое дело? слишком общая тема, чтобы однозначно ответить. но наличие модели (причем возможно с RTL-ным интерфейсом, который позволит вклеить ее в тестбенчи верилогера) всегда плюс. то есть инструмент для проверки понял ли верилогер алгоритмы/протоколы и т.п. Цитата(vetal @ Jul 18 2012, 21:22)  Для программиста кубическая интерполяция - просто одна строчка в коде, а на уровне RTL - уже 4х ступенчатый конвейер будет выходить. И хорошо если обратных связей мало, да шаг фиксированный. у того же синопсиса есть команды pipeline_design optimize_registers и т.п. то есть теоретически, это можно делать автоматом. для математики (например, флотового умножителя из dw) такая конвееризация работает, для чего-то другого может и не работать (я не фанат такого подхода и статистики не знаю) но тут два момента - на системном уровне нужно понимать эти конвееры/задержки, и упоминавшаяся связь исходник-нетлист
|
|
|
|
Сообщений в этой теме
Dragon-fly В какой форме лучше передавать алгоритмы фронт-энд дизайнерам? Jul 12 2012, 10:12 bestcomps4u Бизнес проекты это отдельная тема, и раз у Вас нес... Jul 12 2012, 10:31 Dragon-fly Цитата(bestcomps4u @ Jul 12 2012, 14:31) ... Jul 12 2012, 10:56 Torpeda Цитата(Dragon-fly @ Jul 12 2012, 13... Jul 12 2012, 14:47 Dragon-fly Torpeda, спасибо за ответ
Цитата(Torpeda @ J... Jul 12 2012, 15:15  Torpeda Цитата(Dragon-fly @ Jul 12 2012, 18... Jul 13 2012, 07:41   Dragon-fly Цитата(Torpeda @ Jul 13 2012, 11:41) 1) ... Jul 13 2012, 10:09    Torpeda Цитата(Dragon-fly @ Jul 13 2012, 13... Jul 13 2012, 11:46     Dragon-fly Torpeda, так ведь и в "Word-е" циклоакку... Jul 13 2012, 12:47 yes универсального метода, то есть гарантировано лучше... Jul 17 2012, 11:49 Dragon-fly yes, благодарю за содержательный ответ!
стало... Jul 17 2012, 11:55 Torpeda Цитата(yes @ Jul 17 2012, 14:49) по повод... Jul 18 2012, 11:28 Gate Цитата(yes @ Jul 17 2012, 15:49) раньше б... Jul 19 2012, 09:07 vetal ЦитатаА немогли-бы вы предоставить пример кода на ... Jul 18 2012, 12:36 yes Цитата(vetal @ Jul 18 2012, 16:36) Писать... Jul 18 2012, 16:46
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|