[Cadence Virtuoso] сохранение определенного уровня нетлиста

Столкнулся тут с необходимостью сохранения определенного уровня нетлиста при моделировании, оказалось все довольно просто:

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

save * "/path to your instance"

Предупреждение о опасности от сайта

Доброго времени суток,

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

Снятие данных через определенные временные промежутки в ADEXL

Оказывается в ADE-XL напрямую из icfb данные снять не выйдет, вернее выйдет но на выходе будет wave объект с которым вы вряд ли что-то сможете сделать.

Оказывается есть очень удобная функция ocnPrint() позволяющая снимать значение через определенный временной промежуток.

Синтаксис:

ocnPrint( [?output t_filename | p_port] [?precision x_precision] [?numberNotation s_numberNotation] [?numSpaces x_numSpaces] [?width x_width] o_waveform1 [o_waveform2 …] ) => t/nil

t_filename – файл в который будем записывать значения

p_port – запись в ранее открытый порт

x_precision – разрядность вывода (от 1 до 16)

s_numberNotation – формат вывода чисел

x_numSpaces – количество пробелов между столбцами

x_width – ширина столбцов

o_waveform1 – Waveform объект (может быть представлен как результат семплирования по времени)

o_waveform2 – дополнительный вейформ (фиг его знает зачем)

Пример:

ocnPrint( ?output “~/output.txt” VT(“/Vout”) ?from 0 ?to 10u ?step 50n ?precision 10 ?numberNotation ‘engineering)

Здесь мы создали файл /home/$username/output.txt, в который поместили значения Vout, семплированные каждые 50 нс, и записали их в инженерном формате.

Травление плат в перекиси водорода

Статья о моих впечатлениях от травления плат этим методом (не степ бай степ руководство) просто решил поделиться (:

Title

Читать далее

PIC18 Lab. Experiment #2. DHT22.

Если вы помните, некоторое время назад, я разрабатывал код для взаимодействия с датчиком влажности DHT11. Этот же код с датчиком был внедрен в один проектик, по результатам его работы могу сказать, что я не в восторге от его работы и решил потестить DHT22, ну и сделать задел для будущего проекта под PIC18.

dht22

Читать далее

PIC18 Lab. Experiment #3. ADC.

Задумался у меня один небольшой проектик, где есть задача отлавливать нажатие определенной кнопки. Вроде как все проще некуда, только вот этих кнопок 10 штук, 10 ног заводить не хочется, расширители портов юзать тоже скучно. Я подумал, почему бы мне не сварганить подобие цапа на этих кнопках, и завести его выход на АЦП в pic18f14k50, получим одну ногу вместо 10, но с небольшим усложнением кода.

380px-ADC_Symbol.svg

Как пользоваться этим зверем – под катом.

Читать далее

Автоотключение/автовключение аудиоусилителя

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

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

power_switcher Читать далее

Графики с помощью flotr2

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

Для полноты картины и порядка сформируем необходимые для нас задачи:

  • Построить график простой функции (хело ворлд)
  • Ввести интерактивное изменение параметров графика (определенный отрезок по Х, количество отсчетов на промежуток и т.д.)
  • Научится забирать данные из файла и строить график по ним

Эксперимент #1.18 UART в PIC18 XC8

В общем думал я, что все будет по накатанной идти, а оказалось, что в использовании уарта в 18 серии есть некоторые различия.

Компилятор XC8 имеет набор встроенных функций для работы с периферией, найти заголовочные файлы можно в папке /includes/plib. Нас на данный момент интересует usart.h.

Сформулируем интересующие нас задачи:

  • Запись одного символа
  • Запись строки
  • Чтение одного символа = 1 байта
  • Чтение нескольких байт

Все это дело будем пробовать завести на PIC18F14K50.

Читать далее