Современные средства автоматизации процесса проектирования строго самосинхронных схем

№ 11’2009
PDF версия
В статье рассматриваются вопросы построения и работы строго самосинхронных схем, приводятся требования к системам автоматизации проектирования таких схем, описываются два подхода к процессу автоматизации разработки строго самосинхронных схем — с использованием специализированной среды разработки с собственным языком описания схем, а также при помощи специализированных сценариев и существующих САПР для синхронных схем.

Строго самосинхронные схемы (ССС) имеют ряд существенных преимуществ перед тактируемыми схемами. CCC характеризуются низким уровнем электромагнитного излучения, низкой потребляемой мощностью и более высокой скоростью работы по сравнению с синхронными аналогами; работоспособность ССС сохраняется даже при снижении напряжения питания до уровня порога переключения транзисторов [1]. При разработке ССС отпадает необходимость проектирования разветвленного тактового дерева (что представляет определенную сложность для разработчиков синхронных схем при большом числе вентилей в кристалле).

Построение ССС от традиционного синхронного подхода отличается отсутствием тактового сигнала. Временная синхронизация в таких схемах осуществляется при помощи цепи обратной связи, как показано на рис. 1.

Рис. 1. Принцип построения ССС

Входные данные объединяют в один поток информационные биты и управляющие символы при помощи парафазного кодирования (рис. 2). При таком кодировании для передачи одного бита сигнала (А) используется два проводника (A.f, A.t); при этом комбинация сигналов на проводниках данных 01 соответствует логической «1» (DATA1); 10 — логическому «0» (DATA0); 00 — разделителю (спейсер, NULL) между двумя посылками; комбинация 11 не используется и говорит об ошибке в работе схемы. Разделитель выставляется после каждой посылки данных (DATA0 или DATA1).

Рис. 2. Парафазное кодирование данных

Самосинхронные регистры работают следующим образом: если на вход подтверждения подан логический «0», то через регистр может проходить спейсер, если же за ним будут следовать данные, то они не пройдут на выход регистра. При подаче на вход подтверждения логической «1» работа регистра меняется на противоположную: он будет пропускать данные, а спейсер нет.

Блок индикации предназначен для определения момента окончания переходного процесса. Его выход переключается в состояние логической «1», если на всех его входах находится состояние спейсера, обратное переключение происходит, только если на всех его входах есть данные.

Принципработы таких схем следующий [2]: входные данные в парафазном коде поступают во входной регистр и далее на комбинационную схему. По мере окончания вычислений в комбинационной схеме данные проходят выходной регистр и поступают на блок индикации, который отслеживает момент окончания всех переходных процессов. Когда все переходные процессы закончены, индикатор вырабатывает сигнал подтверждения для входного регистра, который разрешает передачу спейсера. При поступлении спей-сера на вход схемы он проходит первый регистр, комбинационную схему и ожидает на выходном регистре прихода сигнала подтверждения от последующей схемы. После его прихода спейсер проходит выходной регистр, срабатывает индикатор, и входной регистр готов принимать данные. Таким образом, скорость работы ССС зависит исключительно от времени распространения сигналов в схеме, которое, в свою очередь, зависит от самих данных и внешних условий (температуры, напряжения).

Для автоматизации процесса проектирования ССС необходимо иметь САПР, которые позволяют легко интегрироваться в общий процесс проектирования СБИС. Основными требованиями к таким средствам автоматизации проектирования являются [3]:

  • Возможность работать с проектами большого размера.
  • Наличие широко развитых методик проектирования аналогично синхронным САПР.
  • Возможность использования стандартных языков описания аппаратуры (HDL), таких как Verilog, VHDL и специализированных языков проектирования самосинхронных схем, совместно с современными средствами моделирования и верификации.
  • Возможность использования стандартных средств для синтеза схем, размещения и трассировки соединений, а также программ временного анализа, контроля эквивалентности, экстракции паразитных параметров, автоматической генерации тестов и пр. на всех этапах разработки и производства микросхем.
  • Возможность использования стандартной библиотеки КМОП-элементов фабрик, изготовителей микросхем, за исключением отдельных случаев, когда требуется максимальное быстродействие и низкое энергопотребление (тогда создается специализированная библиотека).

На данный момент существует два подхода к автоматизации проектирования ССС. В первом методе используют специализированные САПР со своими языками описания ССС. Примером таких программных средств может служить коммерческая среда разработки TiDE ™ (the Timeless Design Environment) компании Handshake Solutions (www.handshakesolutions.com), в которой используется язык описания самосинхронных схем Haste, или свободно распространяемое средство синтеза самосинхронных схем Balsa [4], разработанное в университете Манчестера (www.manchester.ac.uk). Во втором подходе используют так называемую прямую трансляцию синхронных схем в ССС (SADT, Synchronous-Asynchronous Direct Translation) при помощи существующих САПР для синхронных схем и специализированных скриптов [5, 6]. Рассмотрим каждый из этих методов более подробно.

Использование современных САПР для строго самосинхронных схем

Компания Handshake Solutions создала собственную среду разработки строго самосинхронных схем TiDE с компилятором языка описания ССС Haste на основе проекта Tangram (Philips Research, 1986 год). TiDE позволяет проводить полный цикл разработки и оптимизации ССС, используя технологию Handshake Technology. Среда совместима со всеми стандартными САПР (для логической оптимизации, автоматической генерации тестовых векторов, размещения и разводки элементов, временной и формальной верификации, моделирования), а также есть возможность использования стандартных библиотечных элементов синхронных схем без разработки собственной библиотеки. TiDE поддерживает технологию создания тестопригодных схем — DFT (design for test) и создание прототипов на ПЛИС. Общий маршрут проектирования представлен на рис. 3.

Рис. 3. Маршрут проектирования в САПР TiDE ™

Функциональное проектирование

Ввод проекта осуществляется при помощи языка описания ССС Haste, как показано на рис. 4. Далее программа на Haste компилируется и представляется в виде списка соединений (netlist) на языке Verilog. Это происходит в два этапа. Сначала htcomp транслирует Haste-описание во внутренний формат описания ССС (handshake-схема), а затем при помощи htmap осуществляется преобразование в структурное описание схемы на языке Verilog, после чего возможна оптимизация проекта на начальном уровне.

Рис. 4. Функциональное проектирование и моделирование

Моделирование

TiDE поддерживает моделирование работы схемы на всех уровнях проектирования. Программа на Haste может быть откомпилирована в поведенческое Verilog-описание или в System-C модель для быстрого функционального моделирования при помощи существующих стандартных средств моделирования и генерации тестовых векторов. Кроме того, TiDE поддерживает моделирование до и после разводки библиотечных элементов в кристалле для более точного определения быстродействия работы схемы. Результаты моделирования могут быть визуализированы как средствами самой среды TiDE (htview), так и сторонними программами для анализа и визуализации результатов моделирования. Модуль htcover анализирует результаты моделирования на уровне логических вентилей и показывает статистические результаты покрытия кода тестовыми воздействиями, а также статистику использования операторов и историю значений переменных и выражений. Анализ производительности схемы проводится при помощи компонента htprof, который идентифицирует критические пути в схеме по Haste-описа-нию и вычисляет время их прохождения.

Создание прототипа на ПЛИС

Компонент htmap может по внутреннему описанию работы схемы (handshake-схема) создать список соединений в виде синхронной реализации на уровне регистровых передач (synchronous RTL netlist). Такая синхронная реализация схемы может быть использована для создания прототипа на ПЛИС, который позволяет эффективно проводить функциональную верификацию и отладку работы схемы на системном уровне.

Структурное проектирование

TiDE поддерживает модульное проектирование, таким образом, Haste-описания различных модулей могут быть откомпилированы отдельно и потом скомпонованы при помощи компонента htlink, как показано на рис. 5. Также htlink может подключать к проекту обычные комбинационные блоки (мультиплексор, например) и автоматически преобразовывать парафазные сигналы в двоичное представление.

Рис. 5. Структурное проектирование

Модуль htscan позволяет анализировать пути прохождения данных и управляющие цепи аналогично анализу в синхронных схемах. Модуль htremodel подготавливает файлы для программ автоматической генерации тестовых воздействий (ATPG files) после размещения элементов на кристалле (placement and routing), как показано на рис. 6. Такие программы производят анализ тестового покрытия и локализуют все найденные ошибки. В модуле htpost происходит генерация файлов с ограничениями в формате SDC (Synopsys Design Constraint) и внутреннем формате HCF (Handshake Constraint Format). Возможно преобразование форматов файла ограничений при помощи TCL-скриптов.

Рис. 6. Проектирование на физическом уровне

Проектирование на физическом уровне

В процессе проектирования на физическом уровне (layout) используются стандартные САПР, файлы ограничений и управляющие скрипты, как показано на рис. 6.

Верификация

Верификация работы схемы поддерживается на всех уровнях проектирования — от создания структурного Verilog-описания в модуле htmap до генерации списка соединений после размещения элементов в кристалле (post-layout netlist). Также имеется возможность проверки на эквивалентность схемы, реализованной на основе различных технологий производства микросхем.

Создание ССС при помощи существующих САПР для синхронных схем

Второй метод создания ССС использует NCL-логику (Null Convention Logic), разработанную специалистами компании Theseus Research [2], и подробно описан в [5, 6].

Рис. 7. Проектирование ССС при помощи существующих САПР для синхронных схем

Суть метода показана на рис. 7 и заключается в следующем: разработчик проектирует схему в строго самосинхронном NCL-базисе с использованием пороговых элементов с гистерезисом. Для функций 4 и менее переменных таких элементов 27, и они составляют базис для проектирования. Каждый такой элемент имеет функцию установки set, например, для двухвходового элемента TH12 функция set определяется выражением A+B, где A и B — сигналы на входах, а set — функция установки логической «1» на выходе элемента TH12. Создается библиотека из 27 базовых элементов на основании описания функции set. Например, описание элемента TH12 на VHDL имеет следующий вид:

— th12x0
library ieee;
use ieee.std_logic_1164.all;
entity th12x0 is
port(a: in std_logic;
b: in std_logic;
z: out std_logic);
end th12x0;
architecture archth12x0 of th12x0 is
begin
th12x0: process(a, b)
begin
if a = ‘0’ and b = ‘0’ then
z <= ‘0’ after 113.26 ps;
elsif a = ‘1’ or b = ‘1’ then
z <= ‘1’ after 54.2 ps;
else
z <= a or b;
end if;
end process;
end arch th12x0;

Проектировщик выделяет комбинационную часть схемы, как показано на рис. 1, и описывает ее в таком базисе. Далее при помощи библиотеки из 27 базовых элементов и синтезатора схем (например, Design Compiler от Synopsys) создается RTL-описание в технологическом базисе (например, на двух-входовых элементах И-НЕ) и производится оптимизация схемы. Следующим этапом является представление схемы, описанной в технологическом базисе, в виде NCL-элементов с использованием парафазного кодирования сигналов и библиотеки NCL-элементов, описывающих базовые функции (И, ИЛИ, НЕ, ИСКЛЮЧАЮЩЕЕ-ИЛИ) (см. рис. 8 в КиТ № 10 ч2009, стр. 105).

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

Такой метод синтеза ССС позволяет разработчику использовать привычные ему САПР для синтеза, и нет необходимости изучать и покупать дополнительное программное обеспечение для проектирования строго самосинхронных схем.

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

Литература

  1. Spars0 J., Furber S. Principles of Asynchronous Circuit Design: A Systems Perspective. Kluwer Academic Publishers, 2001.
  2. Fant K. M. Logically Determined Design: Clockless System Design with NULL Convention Logic. John Wiley & Sons, 2005.
  3. Taubin A., Cortadella J., Lavagno L., Kondratyev A., Peeters A. Design Automation of Real-Life Asynchronous Devices and Systems. Foundations and Trends(r) in Electronic Design Automation. Vol. 2, No. 1, September 2007.
  4. Balsa manual 3.5: http://intranet.cs.man.ac.uk/apt/ projects/tools/balsa/
  5. Ligthart M., Fant K., Smith R., Taubin A., Kondratyev A. Asynchronous design using commercial HDL synthesis tools. Proc. International Symposium on Advanced Research in Asynchronous Circuits and Systems // IEEE Computer Society Press, April 2000.
  6. Kondratyev A., Lwin K. Design of asynchronous circuits using synchronous CAD tools // IEEE Design & Test of Computers. Vol. 19. No. 4. 2002.
xosotin chelseathông tin chuyển nhượngcâu lạc bộ bóng đá arsenalbóng đá atalantabundesligacầu thủ haalandUEFAevertonxosofutebol ao vivofutemaxmulticanaisonbetbóng đá world cupbóng đá inter milantin juventusbenzemala ligaclb leicester cityMUman citymessi lionelsalahnapolineymarpsgronaldoserie atottenhamvalenciaAS ROMALeverkusenac milanmbappenapolinewcastleaston villaliverpoolfa cupreal madridpremier leagueAjaxbao bong da247EPLbarcelonabournemouthaff cupasean footballbên lề sân cỏbáo bóng đá mớibóng đá cúp thế giớitin bóng đá ViệtUEFAbáo bóng đá việt namHuyền thoại bóng đágiải ngoại hạng anhSeagametap chi bong da the gioitin bong da lutrận đấu hôm nayviệt nam bóng đátin nong bong daBóng đá nữthể thao 7m24h bóng đábóng đá hôm naythe thao ngoai hang anhtin nhanh bóng đáphòng thay đồ bóng đábóng đá phủikèo nhà cái onbetbóng đá lu 2thông tin phòng thay đồthe thao vuaapp đánh lô đềdudoanxosoxổ số giải đặc biệthôm nay xổ sốkèo đẹp hôm nayketquaxosokq xskqxsmnsoi cầu ba miềnsoi cau thong kesxkt hôm naythế giới xổ sốxổ số 24hxo.soxoso3mienxo so ba mienxoso dac bietxosodientoanxổ số dự đoánvé số chiều xổxoso ket quaxosokienthietxoso kq hôm nayxoso ktxổ số megaxổ số mới nhất hôm nayxoso truc tiepxoso ViệtSX3MIENxs dự đoánxs mien bac hom nayxs miên namxsmientrungxsmn thu 7con số may mắn hôm nayKQXS 3 miền Bắc Trung Nam Nhanhdự đoán xổ số 3 miềndò vé sốdu doan xo so hom nayket qua xo xoket qua xo so.vntrúng thưởng xo sokq xoso trực tiếpket qua xskqxs 247số miền nams0x0 mienbacxosobamien hôm naysố đẹp hôm naysố đẹp trực tuyếnnuôi số đẹpxo so hom quaxoso ketquaxstruc tiep hom nayxổ số kiến thiết trực tiếpxổ số kq hôm nayso xo kq trực tuyenkết quả xổ số miền bắc trực tiếpxo so miền namxổ số miền nam trực tiếptrực tiếp xổ số hôm nayket wa xsKQ XOSOxoso onlinexo so truc tiep hom nayxsttso mien bac trong ngàyKQXS3Msố so mien bacdu doan xo so onlinedu doan cau loxổ số kenokqxs vnKQXOSOKQXS hôm naytrực tiếp kết quả xổ số ba miềncap lo dep nhat hom naysoi cầu chuẩn hôm nayso ket qua xo soXem kết quả xổ số nhanh nhấtSX3MIENXSMB chủ nhậtKQXSMNkết quả mở giải trực tuyếnGiờ vàng chốt số OnlineĐánh Đề Con Gìdò số miền namdò vé số hôm nayso mo so debach thủ lô đẹp nhất hôm naycầu đề hôm naykết quả xổ số kiến thiết toàn quốccau dep 88xsmb rong bach kimket qua xs 2023dự đoán xổ số hàng ngàyBạch thủ đề miền BắcSoi Cầu MB thần tàisoi cau vip 247soi cầu tốtsoi cầu miễn phísoi cau mb vipxsmb hom nayxs vietlottxsmn hôm naycầu lô đẹpthống kê lô kép xổ số miền Bắcquay thử xsmnxổ số thần tàiQuay thử XSMTxổ số chiều nayxo so mien nam hom nayweb đánh lô đề trực tuyến uy tínKQXS hôm nayxsmb ngày hôm nayXSMT chủ nhậtxổ số Power 6/55KQXS A trúng roycao thủ chốt sốbảng xổ số đặc biệtsoi cầu 247 vipsoi cầu wap 666Soi cầu miễn phí 888 VIPSoi Cau Chuan MBđộc thủ desố miền bắcthần tài cho sốKết quả xổ số thần tàiXem trực tiếp xổ sốXIN SỐ THẦN TÀI THỔ ĐỊACầu lô số đẹplô đẹp vip 24hsoi cầu miễn phí 888xổ số kiến thiết chiều nayXSMN thứ 7 hàng tuầnKết quả Xổ số Hồ Chí Minhnhà cái xổ số Việt NamXổ Số Đại PhátXổ số mới nhất Hôm Nayso xo mb hom nayxxmb88quay thu mbXo so Minh ChinhXS Minh Ngọc trực tiếp hôm nayXSMN 88XSTDxs than taixổ số UY TIN NHẤTxs vietlott 88SOI CẦU SIÊU CHUẨNSoiCauVietlô đẹp hôm nay vipket qua so xo hom naykqxsmb 30 ngàydự đoán xổ số 3 miềnSoi cầu 3 càng chuẩn xácbạch thủ lônuoi lo chuanbắt lô chuẩn theo ngàykq xo-solô 3 càngnuôi lô đề siêu vipcầu Lô Xiên XSMBđề về bao nhiêuSoi cầu x3xổ số kiến thiết ngày hôm nayquay thử xsmttruc tiep kết quả sxmntrực tiếp miền bắckết quả xổ số chấm vnbảng xs đặc biệt năm 2023soi cau xsmbxổ số hà nội hôm naysxmtxsmt hôm nayxs truc tiep mbketqua xo so onlinekqxs onlinexo số hôm nayXS3MTin xs hôm nayxsmn thu2XSMN hom nayxổ số miền bắc trực tiếp hôm naySO XOxsmbsxmn hôm nay188betlink188 xo sosoi cầu vip 88lô tô việtsoi lô việtXS247xs ba miềnchốt lô đẹp nhất hôm naychốt số xsmbCHƠI LÔ TÔsoi cau mn hom naychốt lô chuẩndu doan sxmtdự đoán xổ số onlinerồng bạch kim chốt 3 càng miễn phí hôm naythống kê lô gan miền bắcdàn đề lôCầu Kèo Đặc Biệtchốt cầu may mắnkết quả xổ số miền bắc hômSoi cầu vàng 777thẻ bài onlinedu doan mn 888soi cầu miền nam vipsoi cầu mt vipdàn de hôm nay7 cao thủ chốt sốsoi cau mien phi 7777 cao thủ chốt số nức tiếng3 càng miền bắcrồng bạch kim 777dàn de bất bạion newsddxsmn188betw88w88789bettf88sin88suvipsunwintf88five8812betsv88vn88Top 10 nhà cái uy tínsky88iwinlucky88nhacaisin88oxbetm88vn88w88789betiwinf8betrio66rio66lucky88oxbetvn88188bet789betMay-88five88one88sin88bk88xbetoxbetMU88188BETSV88RIO66ONBET88188betM88M88SV88Jun-68Jun-88one88iwinv9betw388OXBETw388w388onbetonbetonbetonbet88onbet88onbet88onbet88onbetonbetonbetonbetqh88mu88Nhà cái uy tínpog79vp777vp777vipbetvipbetuk88uk88typhu88typhu88tk88tk88sm66sm66me88me888live8live8livesm66me88win798livesm66me88win79pog79pog79vp777vp777uk88uk88tk88tk88luck8luck8kingbet86kingbet86k188k188hr99hr99123b8xbetvnvipbetsv66zbettaisunwin-vntyphu88vn138vwinvwinvi68ee881xbetrio66zbetvn138i9betvipfi88clubcf68onbet88ee88typhu88onbetonbetkhuyenmai12bet-moblie12betmoblietaimienphi247vi68clupcf68clupvipbeti9betqh88onb123onbefsoi cầunổ hũbắn cáđá gàđá gàgame bàicasinosoi cầuxóc đĩagame bàigiải mã giấc mơbầu cuaslot gamecasinonổ hủdàn đềBắn cácasinodàn đềnổ hũtài xỉuslot gamecasinobắn cáđá gàgame bàithể thaogame bàisoi cầukqsssoi cầucờ tướngbắn cágame bàixóc đĩaAG百家乐AG百家乐AG真人AG真人爱游戏华体会华体会im体育kok体育开云体育开云体育开云体育乐鱼体育乐鱼体育欧宝体育ob体育亚博体育亚博体育亚博体育亚博体育亚博体育亚博体育开云体育开云体育棋牌棋牌沙巴体育买球平台新葡京娱乐开云体育mu88qh88

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *