Перейти к содержанию
    

bsa1969

Новичок
  • Постов

    4
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные bsa1969


  1. # pe-send-ifc
    # HP controller, by K. Stevens
    # Meat state encoding
    .inputs reqsend treq rdiq adbldout ackpkt 
    .outputs tack peack adbld 
    .graph
    # 0
    reqsend+ adbld+/1
    treq+/1 adbld+/1
    rdiq+/1 adbld+/1
    # -> 1
    adbld+/1 place_1
    place_1 adbldout+/1
    
    # 1
    adbldout+/1 peack+/1
    # -> 2
    peack+/1 rdiq-/1
    
    # 2
    rdiq-/1 adbld-/1 tack+/1 peack-/1
    # -> 3
    peack-/1 place_3_0 
    adbld-/1 adbldout-/1
    tack+/1 treq-/1
    place_3_0 ackpkt+/1 rdiq+/2
    adbldout-/1 place_3_1 
    treq-/1 place_3_2 
    
    # 3
    rdiq+/2 adbld+/2
    place_3_1 adbld+/2
    place_3_2 adbld+/2
    
    ackpkt+/1 peack+/2
    place_3_1 peack+/2
    place_3_2 peack+/2
    # -> 4
    adbld+/2 adbldout+/2
    # -> 8
    peack+/2 ackpkt-/1
    
    # 4
    adbldout+/2 peack+/3
    # -> 5
    peack+/3 rdiq-/2
    
    # 5
    rdiq-/2 peack-/3 adbld-/2 tack-/2
    # -> 6
    adbld-/2 adbldout-/3
    tack-/2 treq+/2
    peack-/3 place_5_2
    adbldout-/3 place_5_0 
    treq+/2 place_5_1 
    place_5_2 ackpkt+/2 rdiq+/3
    
    # 6
    place_5_0 peack+/4 tack+/3
    place_5_1 peack+/4 tack+/3
    ackpkt+/2 peack+/4 tack+/3
    
    place_5_0 adbld+/3
    place_5_1 adbld+/3
    rdiq+/3 adbld+/3
    # -> 1
    adbld+/3 place_1
    # -> 7
    peack+/4 ackpkt-/3
    tack+/3 treq-/3
    
    # 7
    ackpkt-/3 peack-/4 tack-/3
    treq-/3 peack-/4 tack-/3
    # -> 9
    peack-/4 place_9_0
    tack-/3 place_9_1
    place_9_0 treq+/4 reqsend-
    place_9_1 treq+/4 reqsend-
    
    # 8
    ackpkt-/1 tack-/4 peack-/5
    # -> 9
    peack-/5 place_9_0
    tack-/4 place_9_1
    
    # 9
    treq+/4 tack+/5
    
    # -> 0
    # s4 conditions inputs... otherwise no USC !
    reqsend- reqsend+ treq+/1 rdiq+/1
    # -> 10
    tack+/5 treq-/5
    
    # 10
    treq-/5 tack-/5
    # -> 9
    tack-/5 place_9_0 place_9_1
    
    .marking { <reqsend-,reqsend+> <reqsend-,treq+/1> <reqsend-,rdiq+/1> }
    .end
    
    
    tack = NAND ( h2, i2 )
    peack = NOR ( f2, w1 )
    adbld = NAND ( u, f1 )
    f = NAND ( reqsend , treq )
    g = NAND ( rdiq , o1 )
    h = NAND ( rdiq , p1 )
    i = NAND ( adbldout , s )
    j = NAND ( adbldout , r )
    k = NAND ( ackpkt , o1 )
    l = AND ( ackpkt , p1 )
    m = AND ( l , j )
    n = NOR ( m , o )
    o = NOR ( n , f )
    p = NOR ( h , f )
    q = NAND ( j , p )
    r = AND ( q , i )
    s = NOT ( r )
    t = NOR ( g , s )
    u = NAND ( t , f )
    v = NOR ( k , s )
    w = NAND ( v , f )
    f1 = NAND ( p , s )
    g1 = NAND ( reqsend , h1 )
    h1 = NAND ( w , g1 )
    i1 = NOR ( w , g1 )
    j1 = NOR ( u , j )
    k1 = NOR ( i1 , j1 )
    l1 = NAND ( i , m1 )
    m1 = NAND ( k1 , l1 )
    n1 = NAND ( h , l1 )
    o1 = NAND ( n1 , k1 )
    p1 = NOT ( o1 )
    q1 = NAND ( n , t1 )
    r1 = NAND ( reqsend , s1 )
    s1 = NAND ( q1 , r1 )
    t1 = AND ( r1 , u1 )
    u1 = NAND ( v1 , q1 )
    v1 = NOR ( o , t1 )
    w1 = NOR ( g2 , u1 )
    f2 = NOR ( n1 , p1 )
    g2 = NAND ( m1 , p1 )
    h2 = NOR ( o1 , t1 )
    i2 = NOR ( k2 , j2 )
    j2 = NOR ( f , r1 )
    k2 = NOR ( f , g1 )

     

    Ну, и зачем это здесь? В разделе "Ищу работу"? Что сказать-то хотели? Что владеете неким ноу-хау? Ну, так напишите по-русски. И сопроводите конкретикой.

  2. Вы ищете работу по синтезу асинхронных схем?

     

     

    Было бы интересно попробовать.

     

    Может это наша реинкарнация <<NULL Convention Logic >> ??

    Theseus Research Inc

     

     

     

    Та не... Ведь все по-старому: транзистор открыт, транзистор закрыт?

    Ну значит нагородили лишних сущностей.

  3. Какой макcимальный размер синтезируемого STG в вашем алгоритме?

    Все что было разработано ранее, окучивало максимум 50 переменных. Собственно, мэппинг умеет делать только один известный мне тул -Petrify.

     

    О независимости от задержек в проводах, очень интригующее заявление. Можете уточнить, речь идет о NCL, или о чем то другом?

    Вам известно, что размер независящих от задержек в проводах элементов на порядок превышает размеры обычной комбинационной логики?

     

    p.s. если будет любопытно пообщаться на тему асинхронных схем, пишите на shadowpine гаф list РУ

     

     

    Ограничений по количеству переменных нет, поскольку алгоритм не занимается вычислением логических функций общего вида. Суть метода - корректное добавление дополнительных

    сигналов с целью приведения исходного поведения к определенному виду. После приведения поведения к нужному виду вычисление логической функции (уже заранее известного

    вида) - задача линейной сложности. Вообще метод не использует понятие состояние, только причинно-следственные связи между событиями.

    Я знаком с Петрифай, более того знаком с его создателями. Могу сказать что недостатки Петрифай связаны с непониманием сути проблемы. Он эксплуатирует здравую идею

    декомпозиции логических функций. Но известно, что далеко не всякую функцию можно разбить до нужного уровня. Петрифай пытается бороться с этим используя С-элементы,

    упрощая тем самым функции возбуждения. Но это лишь несколько улучшает ситуацию, но не решает проблему. Проблема же декомпозиции связана исключительно с наличием кратных

    сигналов, т.е. сигналов, которые "переключаются более чем 2 раза". Создатели же Петрифай, не понимая этого, жадничают при добавлении дополнительных сигналов. И как следствие

    стараются добавлять именно кратные сигналы.

    По независимости от задержек в проводах. Прошу прощения, я 10 лет был в творческом отпуске. Сходу не нашел в гугле, что такое NCL. Что касается элементов независящих от

    задержек в проводах, о которых Вы говорите, я давно что-то читал. Они внутри себя содержат ряд ограничений, которые еще нужно реализовать. И конечно строить схемы из таких

    огромных блоков слишком дорогое удовольствие. Я же веду речь о самом простом элементе на основе 2NOR, 2NAND (4 транзистора, или 5 для повышения устойчивости). Его впервые

    описал Варшавскиий, а для схем независящих от задержек в проводах предложил использовать Стародубцев. Если найдете можно почитать Monotonic Circuits with Complete

    Acknowledgement (Starodoubtsev, Bystrov, Yakovlev). Картинку прилепил. Суть этого элемента в новой реализации процесса перехвата. Подхватывающий сигнал подается на элемент,

    затем снимается с дополнительного выхода этого элемента (уже в инвертированном виде), и только после этого запускает процесс приводящий к переключению подхватываемого

    сигнала. Что касается сложности таких схем. На примере pe-send-ifc. На элементах NORAND NANDOR с произвольным числом входов: дополнительных сигналов 10, транзисторов 124.

    На элементах NAND NOR с произвольным числом входов: дополнительных сигналов 18, транзисторов 176. На двухвходовых элементах: дополнительных сигналов 42, транзисторов 184.

    Независящая от задержек в проводах: дополнительных сигналов 91, транзисторов 585. Основная причина удорожания последней схемы - кратные сигналы.

    Если можно отправьте более точныt координаты для контактов на [email protected]

    post-80934-1395128153_thumb.jpg

  4. Про достоинства асинхронных схем известно - это пониженное энергопотребление.

    Недостатки же - меньшее быстродействие(?), большая площадь, худшая тестируемость. На самом деле это миф, основанный на единственном недостатке асинхронных схем: неумении

    их синтезировать. Мною разработан формальный метод синтеза асинхронных схем на стандартной элементной базе (в том числе и на самых простых двухвходовых элементах NOR,

    NAND), который полностью устраняет вышеперечисленные недостатки.

    Более того, разработана методика синтеза асинхронных схем, нечувствительных к задержкам даже в проводах. Правда для таких схем используются нестандартные элементы, похожие

    на 2NOR, 2NAND. Единственное отличие - дополнительный выход, по сути являющийся инверсией одного из входов. Я не специалист по железу, поэтому корректная работа такого

    элемента под вопросом.

    Для наглядности пример (в базисе 2NAND, 2NOR, NOT). Исходное задание в виде STG.

     

    # rcv-setup

    # HP controller, by K. Stevens

    # Meat state encoding

    .inputs reqrcv sending acksend

    .outputs enwoq rejsend

    .graph

    # 0

    reqrcv+/1 enwoq+/1

    sending+ place_1

    # -> 1

    place_1 sending-/1 reqrcv+/2

    # -> 5

    enwoq+/1 reqrcv-/1

    # 5

    reqrcv-/1 enwoq-/1

    # -> 0

    enwoq-/1 place_0

    # 1

    reqrcv+/2 rejsend+

    sending-/1 place_0

    # -> 2

    rejsend+ sending-/2 acksend+

    # 2

    sending-/2 rejsend-

    acksend+ rejsend-

    # -> 3

    rejsend- acksend-

    # 3

    acksend- enwoq+/2

    # -> 4

    enwoq+/2 reqrcv-/2

    # 4

    reqrcv-/2 enwoq-/2

    # -> 0

    enwoq-/2 place_0

    place_0 reqrcv+/1 sending+

    .marking { place_0 }

    .end

     

     

    enwoq = AND ( g, k )

    rejsend = NOR ( i, k )

    f = NOT ( reqrcv )

    g = NOR ( f, sending )

    h = AND ( sending, reqrcv )

    i = NOR ( h, j )

    j = NOR ( acksend, i )

    k = NOR ( j, acksend )

     

×
×
  • Создать...