78
www.finestreet.ru
компоненты
ПАИС
Продолжение. Начало в № 5’2005
Александр ПОЛИЩУК
[email protected] Анна ПОЛИЩУК
D «=«
New - Autoplace СЁ Qpen...
Я Save Savefts... Revert...
СЫ+N
Ctil+O
Qri+S
£heck Sheet... F4
Export ►
# Print... CW+P
Print Preview
Register...
ITone Generator Circuit.ad2
2 Gan_of_2.ad2
2 C:\Alex\l.ad2
Exit
Рис. 1
Система автоматизированного проектирования
программируемых аналоговых интегральных схем AnadigmDesigner®2
Часть 1. Первый шаг: знакомство с интерфейсом
Мы продолжаем серию статей, посвященных новому продукту на Российском рынке электронных компонентов — программируемым аналоговым интегральным схемам (ПАИС). В этом цикле мы начинаем подробное рассмотрение работы с программным обеспечением для разработки проектов на базе ПАИС Anadigm®.
3. Подробное справочное руководство
Эта глава посвящается подробному описанию основных пунктов меню AnadigmDesigner®2. Описание комплексных возможностей, таких как функциональное моделирование, конфигурирование хоста, САПР фильтров и PID регуляторов будет рассмотрено отдельно.
3.1. Раскрывающееся меню File (рис. 1)
New
Команда New создает новое окно разработки. Если у Вас уже было открыто окно с разработкой, в которую были внесены некие изменения с момента ее последнего сохранения, то программа прежде, чем открыть новое окно разработки, предложит вам сохранить предыдущую.
Open
По команде Open открывается стандартное окно выбора файла. В контексте AnadigmDesigner®2 по умолчанию откроется файл с расширением .ad2, содержащий последнюю сохраненную разработку. Если содержимое окна разработки изменилось с момента последнего сохранения, то прежде, чем открыть новую разработку, вам будет предложено сохранить старую.
Save
Команда Save сохраняет вашу текущую разработку в соответствующем файле с расширением .ad2. Если текущее окно разработки озаглавлено Untitled, то поведение программы в этом случае будет аналогично поведению при выборе пункта меню Save as.
Save as...
Команда Save as сохраняет вашу текущую разработку в новом файле с расширением .ad2 и с указанным вами именем. Вы открываете некоторую разработку, вносите в нее изменения и сохраняете командой Save as с новым именем. При этом не будет внесено никаких изменений в исходную разработку.
Check sheet.
В каждом файле разработки с расширением .ad2 есть вся необходимая информация для повторного ее открытия с помощью AnadigmDesigner®2 в том виде, в котором она была последний раз сохранена (рис. 2).
Размещение КАМ или элемента ввода/вывода (IO Cell) означает, что программа создает полную копию этого модуля или элемента IO из текущей библиотеки и инстал-
Рис. 2
плис компоненты
79
3 Print Preview
| Pirt Q | «■ *- Pj^fi of 3 tii [?> |Ишья ■Md Help 2°»
Tone Generator Circuit.ad2 - AnadigraDesigner2 Chip: SignalwitlilkHztone
LOAD ORDER I
OUT Left
-I IN_Rigt|t
т _________________________5
Signal_with_1_kHz_tone
Resource I Panel
Power: LUT counter 209±63mW available available
CAB 1 SK* cap: comp CLK: 3 ♦ t ♦ * t ♦ * •
CAB 2 SE* cap comp: CLK: 3 >» f * * ♦ ♦ 5 T * >
CAB 3 o^amp: cap comp: CLK; 3 » 1 ********
CAB 4 l^ARmP ► >
nfap J comp- : : :fp.Z\
Clocks: SignalwitlilkHztone
Master C lock. DCLK (fc) /6 MHz System Clock(sys - fc /1) 16MHz Chopper Clock (fc / 64) 250kHz
Clock 0 (sys / 4) 4 MHz Ctockl (sys/I) 16 MHz
Clock 2 (sys / 8) 2 MHz Clock 3 (sys /320) 50 kHz
Рис. 3
лирует его в файл .ad2. При создании нового экземпляра элемента в разработке сохраняется ссылка на библиотечный элемент. Открытие файла .ad2, настройка параметров КАМ или элемента IO внутри разработки не изменяют исходного библиотечного элемента. По команде Check sheet происходит сравнение загруженной разработки и установленных библиотек и программного обеспечения. Обнаруживаются и подсвечиваются все различия КАМ или элементов IO между версией загруженной разработки и версией из установленных библиотек и текущей инсталляции.
Результат команды Check sheet отображается в новом окне, разделенном на столбцы. В первом столбце приводится наименование модуля, используемого в разработке; во втором — наименование этого же КАМ в библиотеке; в третьем — тип КАМ; и в четвертом — последняя доступная версия КАМ в библиотеке, из которой она была выбрана.
Таблица версий элементов ячеек IO содержит аналогичную информацию по сравнению элементов IO проекта и элементов IO, доступных в данной версии программного обеспечения.
Результат сравнения версий как для КАМ, так и для элементов ячеек IO отображается
различными цветами. Темно-зеленый текст показывает, что версия компонента в разработке и библиотечная версия совпадают. Темно-красный показывает, что КАМ или элемент IO не был найден в установленной библиотеке. Темно-синий обозначает, что в библиотеке имеется более поздняя версия КАМ или элемента IO, возможно, целесообразной окажется их замена. Темно-желтый означает, что в разработке используется более поздняя версия, чем имеется в библиотеке или программном обеспечении и необходимо его обновление.
Print.
По команде Print открывается стандартное окно печати. Распечатывается и графическое отображение, и текстовое описание содержимого.
На первой странице распечатывается графическое представление содержимого текущего окна разработки. Все КАМ и соединения отображаются со значениями Primary и Alternate ID, Chip ID наименованием и порядком загрузки. Это представление удобно для разработки печатной платы. На нем четко изображены номера выводов микросхем. На последующих страницах выводятся все используемые конфигурируемые аналоговые модули и их параметры.
Print Preview
Команда Print Preview позволяет вам просмотреть отчет перед печатью по одной или две страницы за один раз (рис. 3).
В этом окне есть панель инструментов с кнопками изменения масштаба изображения (приближение, удаление), перемещения по страницам, печати и закрытия окна.
Print Setup.
По команде Print Setup открывается стандартное окно печати. Здесь вы можете выбрать размер и ориентацию бумаги. А также настроить параметры печати, которые поддерживаются вашим принтером.
Register.
По команде Register открывается окно, в котором вы можете ввести номер вашей лицензии и лицензионный ключ. Лицензионные ключи для использования программного обеспечения в пробном режиме можно получить на сайте компании Anadigm® — http://www.anadigm.com.
Recent Files
Начиная со второй и до последней секции в раскрывающемся меню File — это список последних открывавшихся файлов разработок. Достаточно щелкнуть левой кнопкой мыши по нужному файлу из этого списка, и AnadigmDesigner®2 снова загрузит выбранную разработку.
Exit
По команде Exit приложение AnadigmDesigner®2 закрывается. Если в вашу разработку были внесены изменения с момента последнего сохранения, то AnadigmDesigner®2 предложит вам сначала сохранить ее, прежде чем закроется.
3.2. Раскрывающееся меню Edit (рис. 4)
В этом меню собраны все основные функции, необходимые для работы. Каждому пункту меню соответствуют свои «горячие» клавиши — m, e, w и d, использование которых в ряде случаев ускоряет работу со средой.
Рис. 4
Insert new CAM
Выбор и добавление нового КАМ начинается с выбора пункта меню Edit Insert new CAM, или нажатия комбинации клавиш «md». Откроется окно выбора КАМ (рис. 5), справа в прокручиваемом списке будут находиться все доступные модули.
Выбор требуемого модуля осуществляется щелчком левой кнопки мыши по соответст-
80
компоненты
плис
Рис. 5
Set CAM Parameters
&
Instance Name jfilleiBiquadl
ClockA jOockO (4000 кНг)
_?Jxj
AnddgmVottcxSrikeiBiquod 213 (Biquadratic Fie*)
'This is an rivaling lie* * See the transfer funcfon n the CAM Documentation
Options J
F4ter Type: <• Low Pass С ugh Pass С Band Pass С Band Stop
Input Samping Phase: <*Ph»el С Phase 2
Polarity: (• Inverting С Non-nvertng
Parameters
Coiner Frequency [kHz]: ho (40.0 realized) [8.X TO -100]
Gam: |i (1.00 realized) [0.100 TO 100]
Quakty Factor: |0.707 (0.707 reafeed) [0.0600 To 70.0)
d
CAM Source: Anatfgm. Approved: Ye*
Рис. 6
вующему КАМ. После щелчка левой кнопкой мыши по кнопке Create CAM (или нажатия клавиши Enter) бледное изображение КАМ появится возле курсора, выбранный модуль теперь можно разместить на поле ПАИС, представленном в окне разработки. После установки модуля в нужное место (еще один щелчок левой кнопкой), появится окно Set CAM Parameters (рис. 6) для установки параметров, ассоциированных с выбранным КАМ (зависит от настроек в Settings ^ Preferences...). Содержимое окна Set CAM Parameters зависит от типа выбранного КАМ, но, как правило, в нем есть все доступные для пользователя настройки параметров для выбранного модуля. Если в разработке необходимо использовать несколько ПАИС, то нуж-
но вставить вторую микросхему при помощи команды Edit ^ Insert new chip.
Окно установки параметров КАМ может быть открыто в любой момент в окне разработки. Двойной щелчок по размещенному КАМ открывает окно установки его параметров. AnadigmDesigner®2 устанавливает параметры «по умолчанию», но пользователь может изменять по своему усмотрению все доступные значения текстовых полей.
Значения элементов с обратной связью конфигурируемых аналоговых блоков ограничены набором дискретных значений, поэтому реальные величины могут немного отличаться от введенных. AnadigmDesigner®2 автоматически оптимизирует КАБ таким образом, чтобы добиться оптимальной производитель-
ности для достижения максимально близких значений параметров к указанным.
Важное замечание. Изменение частоты синхронизации ПАИС после того, как модули были размещены и их параметры установлены, может сказаться на корректности обработки сигнала. Если требуется изменить частоту после того, как все КАМ были размещены и установлены их параметры, необходимо заново внести соответствующие изменения в каждый из модулей.
Перемещение КАМ аналогично перемещению соединительных проводов или их меток. Как и в случае редактирования, курсор, перемещаемый рядом с КАМ, изменяет свой вид — рядом с ним появляется маленькая четырехнаправленная стрелочка.
Insert new chip
По команде Insert new chip добавляется второй экземпляр микросхемы в окно разработки. Если в процессе разработки добавление нового КАМ вызовет превышение размерности массива, то AnadigmDesigner®2 не позволит добавить модуль. В этом случае необходимо добавить вторую ПАИС в разработку при помощи этой команды.
Edit Selected Wire(s) (рис. 7)
Выбор соединительного провода осуществляется при помощи щелчка правой кнопкой мыши над ним, после чего он подсвечивается и раскрывается выпадающее меню, изображенное рядом. Имеется несколько команд для точной настройки направления соединительного провода в окне разработки. Можно задать цвет соединений и метод трассировки (routing method). В меню есть пункт для отображения (или скрытия) метки соединительного провода. Есть элементы управления для удаления или добавления нового соединения. И, наконец, как и для большинства других областей окна разработки, щелчок правой кнопкой мыши отображает элемент управления для настройки параметров на уровне ПАИС в целом.
Стандартные цвета для выбора — это красный, зеленый и синий. Если необходим какой-либо другой цвет, то нажмите кнопку «Other», после чего откроется стандартное окно выбора цвета. Для сложных разработок кодирование цветом проводов может стать эффективным и удобным способом проследить, что с чем соединяется на схеме. Ни цвет провода, ни текстовая метка не влияют на реальное соединение.
У. Connect Wire " . Reroute Wre ►
Wire £olor ►
Hide Wre Labd
Chip Settings
X delete Wire
Рис. 7
ПАИС
компоненты
81
В дополнение к возможности выбора цвета, имеется также возможность выбора способа графического отображения провода. Пункт «StraightLine» означает, что два конца будут соединены прямой линией. Пункт «Horizontal Start» означает, что сначала линия пройдет горизонтально, а затем вертикально соединится с конечной точкой. Пункт «Vertical Start» означает обратный вид соединения по сравнению с предыдущим.
Enter Wire mode
По команде Enter Wire mode (соответствующая ей «горячая» клавиша w) приложение переходит в режим трассировки соединений. В этом режиме курсор будет иметь вид либо карандаша, либо карандаша с дополнительным запрещающим символом. Курсор в виде карандаша означает, что подходящая точка соединения находится рядом, и позволяет начать или закончить процесс соединения посредством одинарного нажатия левой кнопки мыши. Запрещающий символ означает, что соединение невозможно.
В режиме соединения курсор автоматически изменяет свой вид на карандаш вблизи возможных точек соединения. Находясь в режиме соединения, нажатие правой кнопки мыши приводит к тому, что появляется всплывающее меню для перехода в режим редактирования или удаления.
По умолчанию, все новые соединения, помещенные в разработку, снабжаются этикеткой с описанием их свойств. Это просто графическое обозначение проводов, никак не влияющее на их соединение. Два или более соединения, помеченные одинаково, не означают одну и ту же цепь.
Если щелкнуть один раз левой кнопкой мыши по тексту этикетки, то курсор изменит свой вид на стандартный вид курсора при вставке — мигающую вертикальную черту. Теперь можно вводить новое название этикетки. Длина текста этикетки может содержать до двадцати символов. Если по каким-либо причинам необходимо, чтобы текст этикетки не был виден, то это можно сделать двумя способами. Первый (и наименее предпочтительный) — это ввести в качестве текста один пробел. Недостатком этого способа является то, что когда потребуется изменить текст этикетки, придется водить курсором вдоль всего провода, пока рядом с курсором в виде стрелочки не появится указатель (I), определяющий место вставки вводимых с клавиатуры символов. Более предпочтительным является метод «скрывания» этикетки. Для этого необходимо щелкнуть по проводу правой кнопкой мыши (он подсветится, показывая, что он выбран), и в открывшемся выпадающем меню щелкнуть по пункту Hide Wire Label. Если возникнет необходимость сделать этикетку видимой, то достаточно снять галочку с этого пункта меню.
Как само соединение, так и его этикетку можно перемещать для того, чтобы схема получилась более читаемой.
В режиме Edit (или Wire), когда курсор окажется в непосредственной близости от провода, форма курсора примет вид двунаправленной стрелки. Нажав левую кнопку мыши, можно переместить сегмент провода в нужном направлении. Присоединенные сегменты будут растягиваться (или сжиматься) автоматически в соответствии с перемещением.
Когда курсор окажется в непосредственной близости от метки этикетки, возле него появятся указатель (I) и указатель в виде четырехнаправленной стрелки. Если нажать левую кнопку мыши, то можно переместить этикетку в любое подходящее место вблизи провода.
Enter Delete Mode
Команда Enter Delete Mode (или соответствующая ей «горячая» клавиша d) позволяет удалить из Вашей разработки любой КАМ или соединительный провод. В режиме удаления рядом с курсором появляется символ Х. Теперь достаточно щелкнуть левой кнопкой мыши по КАМ или соединению, и они будут удалены из разработки.
3.3. Раскрывающееся меню Simulate (рис. 8)
устанавливается в любом подходящем месте на проводе. Для того чтобы отслеживать результаты моделирования, возможна установка до четырех таких щупов.
Setup Simulation...
По команде Setup Simulation... открывается диалоговое окно настроек моделирования. Более подробно об установке этих настроек будет рассказано в главе «Функциональное моделирование».
Begin Simulation
По команде Begin Simulation (или по соответствующей ей «горячей» клавише F5) происходит запуск процесса моделирования. До тех пор пока процесс моделирования не будет завершен, во всплывающем окне осциллографа будут отображаться все доступные результаты моделирования. По клавише ESC процесс моделирования будет прерван (если при этом окно AnadigmDesigner®2 является активным окном).
3.4. Выпадающее меню Configure (рис. 9)
"X configuration data to serial part
Write configuration data to serial port (selected с bps only)
Write configuration data to a fie...
Whte configuration data to a fie (selected chps only)...
Write AHF fie to serial port...
Рис. 8
В комплект AnadigmDesigner®2 входит встроенная программа функционального моделирования. Моделирование — это удобный способ протестировать схему, прежде чем проводить натурные измерения. Полное описание возможностей программы функционального моделирования будет приведено ниже. Сейчас же, для облегчения поиска, остановимся на кратком описании выпадающих пунктов меню.
Create Signal Generator По команде Create Signal Generator (или по соответствующей ей «горячей» клавише g) возле курсора мыши появится иконки с изображением генератора сигналов. Переместите генератор к входным ячейкам порта IO, и при помощи щелчка левой кнопкой мыши разместите его на схеме. По щелчку правой кнопкой мыши откроется диалоговое окно выбора программируемых параметров. Возможно размещение до четырех генераторов для моделирования входных сигналов. Create Oscilloscope Probe Этот пункт меню аналогичен описанному выше пункту Create Signal Generator. По этой команде (или по соответствующей ей «горячей» клавише р) рядом с курсором мыши появляется иконка щупа осциллографа. По левому щелчку мыши щуп осциллографа, помеченный определенным цветом,
Рис. 9
В выпадающем меню Configure собраны несколько пунктов, действия которых в основе своей однотипны. Все они выгружают конфигурационные данные FPAA из разработки или на RS-232 порт или в файл конфигурационных данных. Подробное описание потока данных последовательного порта и структуры файла конфигурационных данных будет приведено в главе «Конфигурация хоста». Write configuration data to serial port Write configuration data to serial port (selected chips only)
По команде Write configuration data to serial port (или по соответствующей ей «горячей» клавише Qrl+w) происходит передача конфигурационных данных со всех FPAA-устройств на последовательный порт компьютера. Отладочные комплекты Anadigm® содержат встроенную схему с RS-232 портом для поддержки этой функции, что позволяет избежать программирования последовательных загрузочных ППЗУ или написания программ управления микроконтроллером.
По команде Write configuration data to serial port (selected chips only) происходит передача конфигурационных данных выбранных ПАИС на последовательный порт компьютера. Для того чтобы выбрать несколько ПАИС, щелкните по ним левой кнопкой мыши, удерживая при этом нажатой клавишу Ctrl. Write configuration data to a file...
Write configuration data to a file (selected chips only)...
По этой команде происходит запись конфигурационных данных всех или выбранных
82
компоненты
ПАИС
ПАИС в файл данных. По умолчанию, этот файл будет сохранен в той же директории, что и активный файл разработки (файл с расширением .ad2) и унаследует имя корневого файла. Этот файл конфигурационных данных может быть использован для программирования последовательных загрузочных ППЗУ или в качестве файла данных для микроконтроллера, управляющего ПАИС.
Ниже приведено несколько различных форматов файлов конфигурационных данных. Доступные форматы перечислены в выпадающем списке «Save as type:» раскрывающегося окна Write Configuration Dialog.
• AHFfile (*.ahf)
AHF или ASCII шестнадцатеричный формат — основной распространенный формат файла обмена данными. Байты конфигурационных данных представлены в нем в виде пар шестнадцатеричных ASCII символов.
• S1 File (*.ms1)
Как и AHF, файлы .msl содержат ASCII шестнадцатеричное представление конфигурационных данных ПАИС. Данные представлены в промышленном стандарте S-Record.
• S2 File (*.ms2)
Формат S2 очень мало отличается от формата S1. В S2 24-разрядные поля адресов, в то время как в S1 — 16-разрядные.
• Binary File (*.bin)
Конфигурационные данные записываются в удобном бинарном формате. Файл может быть использован для программирования последовательных загрузочных ППЗУ или в качестве файла данных для микроконтроллера, управляющего ПАИС.
Reversed Option
Для каждого из перечисленных выше форматов файлов конфигурационных данных существует альтернативный формат, в котором порядок следования битов в байтах конфигурационных данных изменен на обратный. Достаточно часто приходится сталкиваться с программаторами ППЗУ, которые требуют представления данных именно в таком формате.
Configuration File Options
В диалоговом окне Write Configuration Dialog есть кнопка Configuration File Options, при нажатии на которую открывается диалоговое окно, изображенное на рис. 10.
Рис. 10
File Options
Одновременно может быть открыто несколько экземпляров ПАИС. В этом случае, используя эту опцию, можно переключаться между сохраненными конфигурационными данными всех устройств в одном файле данных или между разными файлами.
Configuration Type
В первый момент после выгрузки или перезагрузки ПАИС нуждается в данных первичной конфигурации. Набор данных первичной конфигурации содержит JTAG ID для типа устройства ПАИС и ID1 для данного конкретного устройства. После того как была загружена первичная конфигурация, только динамические конфигурационные данные могут быть загружены на устройство. Набор динамических конфигурационных данных не включает в себя JTAG ID.
Compression Options
После «холодной» перезагрузки (выключения-включения питания) или после удержания ERRb в состоянии логического нуля в течение 16 тактов синхросигна ПАИС обнулит конфигурационную SRAM и устройство будет готово к загрузке первичной конфигурации. После того как байты SRAM обнулены, единственные данные, которые нужно передать, — это ненулевые байты. Именно поэтому блокам данных в первичной конфигурации предшествуют данные адреса и количества байтов. Сжатый файл конфигурационных данных не является сжатым в общепринятом смысле. Такой файл конфигурационных данных содержит только множество блоков данных с ненулевыми значениями. Несжатый конфигурационный файл отличается только наличием блоков данных с нулевыми значениями.
EXECUTE Options
Эта опция была доступна в ранних версиях AnadigmDesigner®2. Обычно после того как файл конфигурационных данных был загружен в теневое ОЗУ ПАИС, данные передаются в конфигурационную SRAM. Это происходит в том случае, если в управляющем байте блоков данных бит ENDEXECUTE установлен равным 1. Это достигается установкой соответствующей опции в Immediate. Выбор же значения External Pin сбрасывает значение этого бита в нуль. Конфигурационные данные с такими установками будут загружены в ПАИС, но передача данных между теневым ОЗУ и конфигурационной SRAM произойдет только при подаче сигнала на вывод EXECUTE.
Null Bytes
Все элементы управления, связанные с этой опцией, добавляют префикс и суффикс всем нулевым фиктивным байтам (dummy bytes) в файле конфигурационных данных. Конфигурационному конечному автомату необходимы несколько дополнительных синхросигналов до и после конфигурационных данных для того, чтобы пройти весь цикл конечных автоматов. Добавление фиктивных байтов до и после конфигурационных данных — простой способ для реализации алгоритма загрузки.
Data Block Terminator
Блок конфигурационных данных может закрываться как жестко запрограммированным значением 0х2А (Standard), так и двумя байтами проверочных сумм (CRC16). Включение этой опции означает создание наборов конфигурационных данных с контрольными суммами CRC16.
Configure for:
Эта опция была доступна в ранних версиях AnadigmDesigner®2. При раскрытии выпадающего списка Configure for. появляется 4 доступных значения данной опции: Microprocessor, PROM — Clocked, PROM — Crystal (Fast), PROM — Crystal (Slow). Каждое из этих значений устанавливает конфигурационные биты, контролирующие логику формирования синхросигналов. Последние версии САПР формируют универсальные конфигурационные данные, позволяющие ПАИС автоматически определять их источник. ■
Продолжение следует