Цитата(yes @ Sep 7 2007, 13:53)

скорее для флейма, а не для дела. потому как скорее всего это сильно субъективно...
но все же :
добавляете ли вы "запасные" ячейки?
какого типа?
какое количество?
собственно в тех проектах, где я участвовал - ревижинов не делали, поэтому реально spare cell-ами не пользовались, были какие-то правки финального нетлиста (уже отплэйс-роутенного) на пару вентелей
синтезатор например любит OAIxxx AOIxxx - на порядок больше чем любой другой логики
а я XORы люблю...
ну и вроде как критерием должно быть не количество spare cell-ов, а вероятность найти рядом с местом правки целл требуемого типа
--------------------
также TSMC предлагает некий универсальный запасной целл
ECO cell is intended to serve logic changes with metals only ECO (Engineering Change Order), after first tapeout, without having to touch base layers of POLY layer and below. Cells in this ECO library are designed with metal 1 and metal2 (Flip-Flop cells) routing resources only.
который вроде как автоматически использует бэкенд, без нашего участия
тоже интересно - насколько это заменяет спаре целы, и сколько штук

надо
интересно устройство - в библиотеке этот (или эти) ECO cell характеризован, как набор элементов
The prefix code specifies the function of the cell. Notice that in order to identify with the other standard cell, all ECO cell prefixes “G” (means Gate array) to the cell name. Table 3.1 lists the prefix code descriptions.
GAN
AND Gate
GAOI
AND-OR-Inverter Gate
GBUFF
Non-Inverting Buffer
GDCAP
Decoupling cell
GDFQ
Q-only D Flip-Flop without Set/Reset
GINV
Inverting Buffer
GMUX
Multiplexer
GNR
NOR Gate
GOR
OR Gate
GXNR
Exclusive NOR Gate
GXOR
Exclusive OR Gate
причем размеры и мощность выходного каскада разная
интересно - это все-таки один цел (с размером приблизительно равным аналогичному стандартному) ?
или группа целов (реальный размер, которых значительно больше указанных при характеризации) типа микро-БМК, из которых выбирается требуемая функция
1. Не слышал чтобы добавляли запасные. По логике - это дополнительная потребиловка.
Дополнения сами появляются - клоковые деревья, сканирующие пути и т.п.
Бывают технологические добавления - но это производственные ( тестовые структуры и т.п)
2. По поводу выбора ОАI AOI - всегда есть возможность поставить dont use и синтезировать
в нужном базисе. XOR-ы плохи тем что сильно "дрожат" и SDF Path пути у них странные
(задержка IOPATH (причём например из 0->1) зависит от состояний на других входах).
А вообще всё можно синтезировать, используя NAND2,NOR2 и буферные элементы.
3. Можно синтезировать и в GateArray - но принцип тот-же как и asic. Как и в asic размеры у всех
ячеек разные. Наверное можно сделать GA по принципу FPGA - но тогда будут потери
по площади, да и ПО нужно специфическое и т.п.
4. Использование окружения топологии в аналогичном случае - только в FPGA при использовании стандартной большой многофункциональной ячейки (естественно надо экономить)
Часто используется эквивалентность входов.
Если логика типа and2 и при трассировке он может переставить (пересоединить) входные выводы.
Более того, он может вообще изменить логику (обычно большую группу) группу and заменить например на xor и др. и т.п.
Ещё есть хитрость - например, нужен инвертор а у соседней ячейки осталась часть (хоr)
берётся этот хоr, один вывод заводится на питание а другой рабочий (получился инвертор) и т.п.
Добавляются также элементы для выравнивания задержек (и много ещё чего).
Это всё можно посмотреть, анализируя timing netlist получаемый для моделирования из FPGA.
Я смотрел MAX-PLUS (тащил netlist).
5. А вообще, чтобы точно ответить по библиотеке надо посмотреть её файлы для проектирования.
Как я понимаю термин standard cell - это аттестованный , проверенный в изготовлении,
обсчитанный cell (а не универсальный).