Разработка и заказ троичной микросхемы

Уравновешенная троичная система счисления - форум переехал с http://ternary.info

Moderator: haqreu

User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Re:

Post by Shaos »

angry_troll wrote:
Shaos wrote:затем они дадут библиотеки под один из коммерческих продуктов
И будут в этих библиотеках максимум двоичные гейты. Повезёт, если memory compiler ещё дадут и пины. Ну, может транзисторы будут ещё разных размеров. В любом случае, тебе ничего оттуда почти не пригодится :)
Да - пины, транзисторы, базовые гейты и ПАМЯТЬ :o

При наличии базовых гейтов NAND3, NOR3, INV, NOR2 и TG легко собирается троичный переключатель, на котором можно сделать ВСЁ остальное (т.е. БЕЗ ручного рисования транзисторов)
angry_troll wrote:
подготовки GDSII-файлов, но проверку присланного им GDSII они будут делать только в Mentor/Calibre.
Готов оплачивать свою совесть, не позволяющую спи...онерить коммерч. софты и заставляющую юзать фри тулс -- неудачным тейпаутом? :-)
Ну производство всё равно дороже, а его не украдёшь :roll:
Я тут за главного - если что шлите мыло на me собака shaos точка net
angry_troll
Doomed
Posts: 449
Joined: 08 Apr 2013 04:04
Location: 213.247.249.139

Re: Разработка и заказ троичной микросхемы

Post by angry_troll »

Shaos wrote:
angry_troll wrote: Ручками можно наверное проект уровня 6502 нарисовать в 1 харю, а что-то раз в 10 посложнее уже нереально.
А я на большее и не замахиваюсь - в нашем троичном деле только ручками рисовать и приходится ;)
Так возможно стоит разделить логический дизайн (это, например, когда пишут на верилоге и отлаживают написанное) и физический дизайн (это когда берут верилог и с ним делают всё то, о чём я написал и получают на выходе картинки для нанесения на кристалл. Ну или то, что делает квартус при нажатии большой красной кнопки :))? И сделать упор именно в лог. дизайн?
Кстати судя по книжке про коммодор, 6502 не только рисовали ручками, причём НА БУМАГЕ, но и ещё ручками же вырезали и складывали цветные аппликации на полу и ГЛАЗАМИ отлаживали ;)
Ну да, только отлаживали ручками думаю до момента цветных апликаций, по схемам на гейтах и транзисторах :) А по цветным апликациям с линейкой ползали -- DRC :)

Да я уже где-то писал - аналогичная двоичная логика, выполняющая теже дейсвия с данными аналогичной степени сложности, будет иметь состоять из меньшего количества транзисторов и будет потреблять меньший ток - однако тут мы какба бежим впереди паровоза - если к примеру нанотрубки (или что-то другое троичное) таки выйдут в ширпортреб в обозримом будущем, то все наши троичные схемки (на уровне троичных гейтов) в лёгкую превратятся в точно также работающие устройства на нанотрубках (или чем-то другом троичном), которые при этом станут занимать МЕНЬШЕ места на кристалле, чем двоичный аналог на CMOS и будуь жрать меньший ток - и мы таки будем первыми. Второй плюс троичности - меньшее количество соединяющих блоки проводников - на кристалле это критично - я правда ещё не оценивал этот аспект (с другой стороны для сложных CMOS-дизайнах такие оценки делать сложно, т.к. в нём можно нагородить скажем сумматор на слепленных вместе транзисторах и поди посчитай сколько там проводников, отдельных транзисторов и где что).
Чо-то про нанотрубки я вообще никуда не в курсе, так что реквестирую ссылочку (да, шерстить весь раздел влом). А по поводу остального я опять повторю -- может, делать упор в лог. дизайн, а физ.дизайн сделать эмулятором на двоичной логике? Да и вопрос экономии транзисторов ну никак не стоит, на мой взгляд, равно как и быстродействия и потребления, на данном твоём этапе. Ты же не делаешь сразу 1000000 микросхем, когда чем меньше кристалл, тем дешевле, потому что пластину можно разрезать на большее число кристаллов? Или не делаешь троичный андроидофон, где потребление роляет?

А если к моменту возрождения троичности в пром. масштабах у тебя уже будут тулы, которые позволят закостеневшим вериложникам раз-раз и перейти на троичность, то вполне можешь оказаться на волне. Ну а по физ.дизайну спецов и так много, как-нибудь это всё они на кмопы или нанотрупки разложат лучше тебя :)
привет засранцу лавру :)
angry_troll
Doomed
Posts: 449
Joined: 08 Apr 2013 04:04
Location: 213.247.249.139

Re: Re:

Post by angry_troll »

Shaos wrote: Ну производство всё равно дороже, а его не украдёшь :roll:
Так и я о чём -- с честно ворованными тулзами вероятность того, что тулза тебе не нагенерит куеты -- выше. 'тейпаут' -- так называется процесс передачи масок на завод для производства.
привет засранцу лавру :)
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Разработка и заказ троичной микросхемы

Post by Shaos »

angry_troll wrote:
Shaos wrote:
angry_troll wrote: Ручками можно наверное проект уровня 6502 нарисовать в 1 харю, а что-то раз в 10 посложнее уже нереально.
А я на большее и не замахиваюсь - в нашем троичном деле только ручками рисовать и приходится ;)
Так возможно стоит разделить логический дизайн (это, например, когда пишут на верилоге и отлаживают написанное) и физический дизайн (это когда берут верилог и с ним делают всё то, о чём я написал и получают на выходе картинки для нанесения на кристалл. Ну или то, что делает квартус при нажатии большой красной кнопки :))? И сделать упор именно в лог. дизайн?
Ну мне проще на сях отлаживаться ;)

и т.к. ворованный квакус не сумеет пока ничего троичного превратить в картинку для масок, то приходится самому изучать процесс рисования на силиконе...
angry_troll wrote: Чо-то про нанотрубки я вообще никуда не в курсе, так что реквестирую ссылочку (да, шерстить весь раздел влом). А по поводу остального я опять повторю -- может, делать упор в лог. дизайн, а физ.дизайн сделать эмулятором на двоичной логике? Да и вопрос экономии транзисторов ну никак не стоит, на мой взгляд, равно как и быстродействия и потребления, на данном твоём этапе. Ты же не делаешь сразу 1000000 микросхем, когда чем меньше кристалл, тем дешевле, потому что пластину можно разрезать на большее число кристаллов? Или не делаешь троичный андроидофон, где потребление роляет?
Про нанотрубки тут:

viewtopic.php?f=79&t=85
angry_troll wrote: Кстати, непонятен страх перед верилогом, в нём есть 4 стандартных состояния: 0, 1, X и Z. Взять любые 3, написать свои гейты и можно как минимум моделировать с картинками в обычных тулзах типа моделсима...
Ну эти четыре состояния не могут быть использованы для кодирования одновременно и входов, и выходов - X в конце-концов превращается либо в 0, либо в 1, а Z бывает только по выходу, т.е. ты никак не сможешь в верилоге отдетектить что тебе на вход подали Z...

P.S. Идея двухпроводной троичности на FPGA тоже имеет право на сущестование - просто в данный конкретный момент оно мне неинтересно ;)
Я тут за главного - если что шлите мыло на me собака shaos точка net
angry_troll
Doomed
Posts: 449
Joined: 08 Apr 2013 04:04
Location: 213.247.249.139

Re: Разработка и заказ троичной микросхемы

Post by angry_troll »

Shaos wrote:и т.к. ворованный квакус не сумеет пока ничего троичного превратить в картинку для масок, то приходится самому изучать процесс рисования на силиконе...
Причём тут квартус-то? Тулы, которые из верилога делают силиконовые маски, к квартусу не имеют ни малейшего отношения.
Ну эти четыре состояния не могут быть использованы для кодирования одновременно и входов, и выходов - X в конце-концов превращается либо в 0, либо в 1, а Z бывает только по выходу, т.е. ты никак не сможешь в верилоге отдетектить что тебе на вход подали Z...
А вот и неправда -- очень даже можно. Например есть тождественное равенство === и неравенство !==, которое вполне себе сравнит все 4 состояния и выдаст результатом 1 или 0. А обычное равенство, например, Х==1 или Х==0, всегда 0 выдаст.
И присвоить reg'у можно тоже любое из 4 состояний.
always @(posedge clk) a <= 1'bX;
А уж на входы и выходы по wire'ам пройдёт всё без изменений.

Проблемы могут начаться, если делать операции с Х и Z, например 1'b0 | 1'bZ это 1'bX.
привет засранцу лавру :)
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Разработка и заказ троичной микросхемы

Post by Shaos »

И как же оно на лутах фпга отобразид детектирование Z по входу?...
Я тут за главного - если что шлите мыло на me собака shaos точка net
angry_troll
Doomed
Posts: 449
Joined: 08 Apr 2013 04:04
Location: 213.247.249.139

Re: Разработка и заказ троичной микросхемы

Post by angry_troll »

Shaos wrote:И как же оно на лутах фпга отобразид детектирование Z по входу?...
Огоспаде, причём тут луты и фпга? Речь про симулятор, который формально выполняет верилог по спецификации и про луты и фпга ничего не знает.
привет засранцу лавру :)
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Разработка и заказ троичной микросхемы

Post by Shaos »

angry_troll wrote:
Shaos wrote:И как же оно на лутах фпга отобразид детектирование Z по входу?...
Огоспаде, причём тут луты и фпга? Речь про симулятор, который формально выполняет верилог по спецификации и про луты и фпга ничего не знает.
Опять же - мне симулировать проще на сях, а никак не в верилоге...
Я тут за главного - если что шлите мыло на me собака shaos точка net
angry_troll
Doomed
Posts: 449
Joined: 08 Apr 2013 04:04
Location: 213.247.249.139

Re: Разработка и заказ троичной микросхемы

Post by angry_troll »

Shaos wrote: Опять же - мне симулировать проще на сях, а никак не в верилоге...
Вейвы тоже проще на сях смотреть? А симулировать с таймингами триггеры? :)
привет засранцу лавру :)
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Разработка и заказ троичной микросхемы

Post by Shaos »

angry_troll wrote:
Shaos wrote: Опять же - мне симулировать проще на сях, а никак не в верилоге...
Вейвы тоже проще на сях смотреть? А симулировать с таймингами триггеры? :)
Да ваще не вопрос ;)

Image

P.S. Кстати текстовые логи мне проще анализировать, чем вейвы...
Я тут за главного - если что шлите мыло на me собака shaos точка net
angry_troll
Doomed
Posts: 449
Joined: 08 Apr 2013 04:04
Location: 213.247.249.139

Re: Разработка и заказ троичной микросхемы

Post by angry_troll »

Shaos wrote: Да ваще не вопрос ;)
Ты изобрёл свой верилог на сях и симулятор с вейвами? Молодец, ок. :)

1. Что будет, если сделать латч типа такого:

Code: Select all

 always @*
 if( enable )
   output <= input;
2. Циферки сверху -- это фронты? А если зависимостей сигналов друг от друга будет так много, что сдвиги не влезут в период клока на картинке?

3. что будет, если написать комбинаторный цикл типа такого:

Code: Select all

  assign a = (~c) ^ input;
  assign b = ~a;
  assign c = ~b;
Твой симулятор зависнет? :)
Для справки, всякие там моделсимы тоже зависают, но вылетают с ошибкой по "больше эн" кол-ву итераций.

4. Как сделать триггер? А триггер по отрицательному фронту клока? :) А можно симулировать с задержками?

5. Как определяется начальное состояние триггеров? А если окажется так, что из напрмиер нулевого состояния схема выходит, а в кремнии состояние случайное и схема не выйдет?

"Изобретение собственных велосипедов с квадратными колёсами карается пожизненным геморроем" (ц) Кирилл Фролов :)
привет засранцу лавру :)
angry_troll
Doomed
Posts: 449
Joined: 08 Apr 2013 04:04
Location: 213.247.249.139

Re: Разработка и заказ троичной микросхемы

Post by angry_troll »

привет засранцу лавру :)
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Разработка и заказ троичной микросхемы

Post by Shaos »

angry_troll wrote:http://en.wikipedia.org/wiki/SystemC
Я лучше сам сделаю своё и на голых сях (без плюсов), а теперь по вопросам (то что на картинке я сделал в 1998-1999 годах для своего тогдашнего работодателя на ваткоме и под дос - щас потихоньку пересоздаю аналогичный опенсорц под линух с нуля ради чистоты эксперимента):
1. Если делать сохранение значения на нодах, то всё заработает;
2. По-моему это десятки тактов, т.к. видно что осциллограммки друг относительно дуга отодвинуты более мелкими шагами;
3. А ничего не будет - один шаг выполнится и всё;
4. Ляхко ;)
5. В триггере одна из половинок всегда первее (так устроен мой сортировщик соединений), т.е. начальное состояние всегда одно и тоже (из двух возможных) - поэтому по хорошему надо делать триггеры со входом глобального сброса...

P.S. Вариант на картинке использует местоположения блоков, поставленных юзером, для выработки порядка выполнения, а сейчас я хочу расстановку полностью автоматизировать - т.е. на входе нетлист, а на выходе сишный код, который его симулирует...
Я тут за главного - если что шлите мыло на me собака shaos точка net
angry_troll
Doomed
Posts: 449
Joined: 08 Apr 2013 04:04
Location: 213.247.249.139

Re: Разработка и заказ троичной микросхемы

Post by angry_troll »

Shaos wrote: Я лучше сам сделаю своё и на голых сях (без плюсов), а теперь по вопросам (то что на картинке я сделал в 1998-1999 годах для своего тогдашнего работодателя на ваткоме и под дос - щас потихоньку пересоздаю аналогичный опенсорц под линух с нуля ради чистоты эксперимента):
Ну уж извините, кроме как NIH и изобретение собственного велосипеда с квадратными колёсами, я это никак обозвать не могу.
1. Если делать сохранение значения на нодах, то всё заработает;
А как узнать, сохранять или нет? А когда апдейтить?
2. По-моему это десятки тактов, т.к. видно что осциллограммки друг относительно дуга отодвинуты более мелкими шагами;
А по-моему, вообще нихрена не понятно. Это я ещё протелепатировал, что верхняя строчка -- это клоки, позиция фронта и номер такта.
3. А ничего не будет - один шаг выполнится и всё;
Можно вообразить себе комбинаторную логику с обратной связью, которая устаканивается на 2ой итерации. Или 3ей. У тебя выйдет фейл :)
4. Ляхко ;)
Влом смотреть, к какому вопросу ответ...
5. В триггере одна из половинок всегда первее (так устроен мой сортировщик соединений), т.е. начальное состояние всегда одно и тоже (из двух возможных) - поэтому по хорошему надо делать триггеры со входом глобального сброса...
Что за 'половинки' триггера?
P.S. Вариант на картинке использует местоположения блоков, поставленных юзером, для выработки порядка выполнения, а сейчас я хочу расстановку полностью автоматизировать - т.е. на входе нетлист, а на выходе сишный код, который его симулирует...
Хочешь авторисовалку схем спектрумов на к155ла3 сделать, что ли? :) Тогда сразу и авторазводилку, будет синтез сей в к155ла3 и далее физдизайн в печатную плату. :rotate:
привет засранцу лавру :)
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Разработка и заказ троичной микросхемы

Post by Shaos »

Авторазводилка тоже в планах :)

Вот выйду на пенсию и как всё допишу - уух...
Я тут за главного - если что шлите мыло на me собака shaos точка net