Блог пользователя des00

SVN для чайников. Часть IV.

Работа с SVN свойствами

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

SVN для чайников. Часть III.

Работа с ветвлениями

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

Автоматизация задания номеров пинов ПЛИС Altera для плат разведенных в PCAD

Последние 4 года я специализируюсь только на разработке систем на ПЛИС, процами и разводкой ПП уже давно не занимался. Поэтому когда приходит новая железка, для создания top файла системы на ПЛИС мне нужно перебить пины из sch файла PCAD в qsf файл Quartus а, для того что бы начать работать.

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

Скрипт вытаскивает из файла цепей PCAD (*.net) информацию о пинах конкретной микросхемы, заданной в параметрах через её позиционное обозначение. Команда запуска скрипта следующая

SVN для чайников. Часть II

Работа с рабочей копией 

В предыдущей части мы рассмотрели основу основ SVN – репозиторий и научились с ним работать. Теперь рассмотрим операции с файлами проекта, с которыми разработчики сталкиваются чаще всего. Как мы помним наши программисты Вася и Петя создали локальный репозиторий. Импортировали туда  проект и создали рабочую копию проекта demo_project1. Оба наших программиста работают в своих собственных рабочих копиях.

SVN для чайников. Часть I.

Данный цикл статей посвящен введению в использование SVN, с точки зрения обычного пользователя. Статья была написана в помощь моим коллегам для быстрого освоения и использования SVN. Итак начнем с азов.

Данный материал был опубликован в журнале "Компоненты и технологии"

Введение

Subversion (SVN) — бесплатная система управления версиями с открытым исходным кодом. SVN позволяет управлять файлами и каталогами, а так же сделанными в них изменениями во времени. SVN предоставляет следующие возможности :

Зачем нужны системы контроля версий типа SVN?

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

У таких разработчиков на жестком диске в проектах часто можно найти следующие папки:

TimeQuest для чайников. Приложение 3 (Добрый и злобный Multicycle)

Добрый день уважаемый читатель.

В предыдущих блогах я рассказывал о том, что есть волшебный констрейн set_false_path с помощью которого можно творить прямо таки "чудеса" укладывания проекта в констрейны. У этого констрейна есть своеобразный друг. Добрый, но в то же время злобный, констрейн описания мультициклового пути set_multicycle_path.

Подход к автоматизации разработки HDL проектов

Добрый день уважаемые коллеги!!

Часто начинающие плисоводы, начав изучать какой либо из HDL языков, задаются вопросом почему в них громоздко и не оптимально описываются соединения блоков между собой. Рассмотрим это на примере языка Verilog.

Действительно, при создании любого компонента, нужно объявить его интерфейс, т.е. описать его порты(имена, типы, направления). Для синтеза, только эти порты и будут видны компонентам более высокого уровня. Дальше этих интерфейсов прыгнуть нельзя. Почему так?

TimeQuest для чайников. Приложение 2 (Хак для System Synchronus Ouput на cycloneIII)

Решал недавно одну непростую задачу, танцевал с бубном достаточно долго. Итак имеем 3 асинхронных потока данных на частоте 180 МГц и нужно было выдать их на внешний DAC включенный в режиме System Synchronus Ouput.

Что сложного скажет кто-то, берем еще один клок на PLL, немного двигаем его по фазе и вуаля. Но в том-то и дело что PLL у меня не было. А не было ее потому, что два клока шли с других PLL, а еще один клок шел с обычного порта. ПЛИС cycloneIII, как известно не поддерживает подачу на PLL абы какого сигнала, поэтому пришлось выкручиваться без нее.

TimeQuest для чайников. Приложение 1 (Внешняя обратная связь по клоку).

Вопрос возник на форуме electronix.ru и его правильное решение предложили пользователи des333 и SM. Я в этом вопросе целиком и полностью опростоволосился %).

Задача такая, как правильно описать констрены для такой системы

RSS-материал