|
|
  |
Tri-state насколько опасно? |
|
|
|
Jun 18 2008, 14:58
|
Гуру
     
Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640

|
Цитата(-=Vitaly=- @ May 26 2008, 17:55)  Здравствуйте !
Делаю АСИК и имею память 8 бит х 110, которая вычитывается по SPI, . Выходы 110 флопиков висят на шине с три-стейтом, когда надо какой-либо вычитать я выставляю адрес и подключаю один из флопов и далее мультиплексором выставляю на MISO побитно данные подключенного флопа.
1. Как быть с тестируемостью ? Тетрамакс или Енкоунтер Тест переварят такую конструкцию? 2. Будут ли проблемы при смене адреса, т. е. нужно ли сначала ставить один адрес, вычитывать, потом переводить в третье состояние, потом ставить другой адрес, вычитывать и т.д. Или просто менять по фронту адрес? 3. Как можно по-другому хорошо разрешить эту ситуацию не используя буферов с третьим состоянием? 4. По какой причине в АСИКсах стараются не использовать буферы с третьим состоянием?
Заранее спасибо! а библиотека с тристэйтами есть? ни разу не видел для КМОП АЗИКов почему бы не использовать логику : на каждый флоп AND с выбором, потом дерево OR всех выходов - будет и быстрее и проблем для тулзов не создаст. ну и делают так обычно
|
|
|
|
|
Jun 18 2008, 15:26
|

Профессионал
    
Группа: Свой
Сообщений: 1 724
Регистрация: 1-05-05
Из: Нью Крыжопыль
Пользователь №: 4 641

|
Да все в порядке. Это типовой случай "общей шины". Проблема только одна - емкость выхода, к которому подключены выходы 110 триггеров. Если у каждого (а это д.б. мощные буфера) порядка 3 пик, то уже 330 пФ. Посчитайте мощность, рассеиваемую для своей частоты.
Буферы с третьим состоянием используются "сплошь и рядом" в ASIC. Это требует лишь понимания процесса. В библиотеках они должны быть обязательно. В моей, например, около 40 штук на разные случаи жизни. Очень и очень экономят площадь по сравнению с мультиплексорами.
В Вашем случае целесообразнее использовать "дерево" ключей, все-таки. Для снижения емкости и повышения быстродействия при снижении мощности. Это дерево хорошо стыкуется с дешифратором. А в первом случае - более целесообразен сдвиговый регистр со сбросом. Но, и в том, и в другом случае надо позаботиться об устранении конфликтных ситуаций, выбросов и просечек в выходном сигнале. Не помешает также триггерная петля с последовательным сопротивлением, устраняющая "полное" третье состояние.
Рассмотрите также возможность использования "открытых стоков" на общую шину, подключаемую к питанию, например, между считываниями. Это тоже ячейка с третьим состоянием, но с меньшей выходной емкостью.
|
|
|
|
|
Jun 19 2008, 14:42
|

Профессионал
    
Группа: Свой
Сообщений: 1 724
Регистрация: 1-05-05
Из: Нью Крыжопыль
Пользователь №: 4 641

|
Цитата(yes @ Jun 19 2008, 13:47)  то что технически можно сделать открытый сток или HiZ выход для CMOS - нет вопросов но поймут ли STA тулзы? тут тоже принципиальной проблемы нет - но вроде как не принято... а библиотек без таких элементов могу привести пол-дюжины Кем не принято? Тут каждый - кто во что горазд. А то, что в, например, многих открытых ядрах и проектах используются мультиплексоры вместо общих шин - свидетельствует как раз о слабой компетенции их разработчиков в этом вопросе, либо о совершенно наплевательском отношении к размерам топологии и быстродействию. Это приемлимо, в принципе, но не есть хорошо. Мы в своих проектах используем по мере необходимости. Все синтезируется и моделируется, проблем нет. Примитивы такие есть во всех синтезаторах. Библиотеки без TS-буферов, конечно, есть. В RF-библиотеках, порой, вообще одни транзисторы, резисторы, кондюки и индуктивности. Все зависит от задачи. Универсальные цифровые библиотеки должны иметь такие ячейки по определению. А в ПАДах - так просто никуда без этого.
|
|
|
|
|
Jun 20 2008, 10:27
|
Гуру
     
Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640

|
Цитата(zzzzzzzz @ Jun 19 2008, 18:42)  Кем не принято? Тут каждый - кто во что горазд. А то, что в, например, многих открытых ядрах и проектах используются мультиплексоры вместо общих шин - свидетельствует как раз о слабой компетенции их разработчиков в этом вопросе, либо о совершенно наплевательском отношении к размерам топологии и быстродействию. да, каюсь, нашел в библиотеках TBUF и DC его понимает НО вопрос не в синтезируемости или возможности симулировать, а в STA (да и формальном анализе) и в DFT; у меня есть мнение, что не все хорошо, поэтому явно и неявно использование TS-буфферов запрещается возьмите AMBA - стандарт для внутриазиковых шин - никаких HiZ там нет, а есть мультиплексоры сейчас элементы быстрее, чем провода вот например тактовое дерево у нас в проекте - около 100К буферов, fanout=2 - почему так сделано? быстрее и жрет меньше, чем один буфер и большой провод пока не верю, что для логики оправдано использование TBUF
|
|
|
|
|
Jul 25 2008, 05:32
|

Участник

Группа: Свой
Сообщений: 32
Регистрация: 1-11-06
Из: Dikiy Zapad
Пользователь №: 21 844

|
Na skolko ya videl, tri-state v standard cell asic prakticheski nigde ne polzuyutsya, daze yesli yest v biblioteke. Nekotorie tuli ih ponimayut, nekotorie net. Vot neskolko problem s tri-state-ami:
1. Pri start-upe sostoyanie flop-vo kotorie drive-yat tristate enable ne vozmozno znat esli u nih sinhronniy reset, znacit nuzno ispolzovat asinhrnoniy kotoriy nepopulyaren izza problem s DFT kotorie on vizivayet. 2. Voobshe, mnogo problem s DFT. V techeniye scan-a flopy kotoriye kontroliruyut tri state enable budut dyorgatsa i mogut vkljucit vise tri-stateov v to ze vremya i vyzvat Vdd->Gnd short.
V principe s nimi legko osibitsya i stoit popitatsya ne ispolzovat.
Ni odna bolshaya kompaniya ih ne polzuyet v standard cell flow proyektah.
--------------------
Вечность -- Извините за плохой Русский, я Черногорец, Русский не родной язык.
|
|
|
|
|
Sep 10 2008, 20:12
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 24-02-05
Пользователь №: 2 872

|
Думаю, tri-state буфера для связи логики внутри микросхемы лучше не использовать вообще. Меньше проблем в итоге.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|