Development #43
Обсуждение структуры каталогов
Status: | Confirmed | Start date: | 08/29/2012 | |
---|---|---|---|---|
Priority: | Normal | Due date: | ||
Assignee: | - | % Done: | 0% |
|
Category: | - | Spent time: | - | |
Target version: | - |
Description
Надо создать удобную структуру каталогов.
Пожелания:
- использовть Subversion для обмена между проектами
- вместе к компонентом должна быть документация и модель
- в целевой проект может включаться много компонентов
History
Updated by Dmitry Smekhov about 12 years ago
- Status changed from New to Confirmed
Предложение - делаем такую структуру:
Внутри trunk:
rtl - собственно файлы компонентов
doc - документация
sim - модели
Внутри каждого из этих каталогов существуют каталоги с названием группы:
FIFO - всё для FIFO
CLK - всё для обработки CLK - перетактирование, автоподстройка и т.д.
Группы формируем по мере надобности.
Внутри группы - каталоги с названием компонента,
например
fifo/fifo_v7
clk/clk_reclock_v1
Внутри этого каталога - собственно файлы.
Получается, каждый компонент находится в трёх ветках - компонент, его документация, его модель
Для добавления в целевой проект надо будет извлечь три каталога - тоже в свои ветки. Можно извлечь только rtl - без модели и документации.
В настоящий момент структура каталогов в хранилище другая, в одном каталоге есть rtl, модель, документация. Это приведёт к трудностям в целевом проекте. Если будет извлечено много компонетов, то возникнут трудности с настройкой синтеза.
Есть другие предложения ?
Updated by Igor Kazinov about 12 years ago
Есть вопрос - а почему структура, когда в однйо папке есть rtl/doc/sim приведёт к трудностям ? По моему, это удобно - всё в одном флаконе.
Так же интересно было бы обсудить кросс-ссылки из одного проекта на другой - когда, например, один большой проект использует парочку маленьких из FPGA_COMPONENTS. Я принципе вижу это как простой checkout нужных папок из SVN (смотрим в документацию) исходя из того что trunk - это корень. Хотелось бы услышать другие варианты.
Updated by Dmitry Smekhov about 12 years ago
Если всё в одном каталоге, и в целевом проекте будет много компонентов, то придётся ставить и снимать много галочек при настройке синтеза. Хотя это будет способствовать изучению матчасти. Если они в разных каталогах, то в синтез включаем всю иерархию rtl, а при моделировании - всю иерархию rtl и sim;
Есть два варианта включения компонента в целевой проект:
1. простой checkout
2. если целевой проект сам находится под SVN, то какому то каталогу можно присвоить свойство external и указать путь к каталогам компонентов. В этом случае извлечение и фиксация целевого проекта и компонентов будет происходить одновременно.
Updated by Dmitry Smekhov about 12 years ago
В результате обсуждения остаётся вариант одного каталога для компонента.
Пример:
fifo/fifo_v7 - каталог компонента
непосредственно в нём - синтезируемые файлы
simulation - модель
doc - документация
core - необходимые IP Core