Вот смотрю я на это веселье тролинга и думаю что написать, уже пару дней держал паузу но таки решился. Пока как интрон до реального майнинга я не дошел, в процессе осознания гетворка и его реализации под чип. Но тест вектора погонял на разных обвязках и разных источниках. И могу рассказать такое:
1. Я немного поразмыслив над проблемами согласования уровней и то что фронты должны быть крутыми, решил не заморачиватся и нашел в загашнике дев кит на ОМАПе техасовском там просто уровни ио сразу 1.8 Вольта. Конечно из-за этого выгреб проблем при переносе кода с разбери и реализации спи в режиме дерганья ногами (не кидайте тапками есть одна идея почему это нужно если получится потом опишу). Зато разобрал как диаграммы должны выглядеть на СПИ при работе и когда оно работает а когда сбоит. Для будущих исследователей сразу пишу режим СПИ 0, сигнал семплится по переходу клока с 0 в 1. И также не забываем сбрасывать логику чипа по работе СПИ, а то подорвался немного на этом. Сброс банальный, клок в 1 и дергаем минимум 3 раза данными на выход и все. После 3 такта, по моему, такты данных видны уже по выходу чипа.
2. Платку для тестов взял как у интрона, абы повторять по шагам и смотреть аналогии с тестами битфури и интрона.
3. Источник, сначала думал старый советский регулируемый использовать выставил на нем 0.8 вольта и решил пригрузить сменным сопротивлением и увидел что уже на 1 ампере мрак что начинает творится по осциллографу. Посему были закуплен посовременней стабилизатор от компании техас и обвязка к нему согласно юзер гуайду от чипа. Лишь убедившись, что у него все нормально до 3А и есть еще запас, можно было подавать на чип питание. Подал 0.896 Вольта.
4. Изучив при портировании исходники нашел место, где были оставлены разные значения для внутреннего генератора, абы получать разные частоты. И там были комментарии любезно оставленные битфури, что чем больше 1 битов в массиве значения тем выше частота, кстати спасибо большое ему за комментарии в коде, хоть и не все они пока понятны, но помогают чувствовать, что и где происходит по коду. Посему я выставил значения что идут в переменной osc { 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; и получил на выходе частоты, после инициализации микросхемы, сигнал с периодом где-то в районе 18ns. После уже мог играясь значениями, пробовать разные частоты и прогонять тест вектора и смотреть сколько находит решений. Напомню, что должно быть в идеале 145 на тех тестовых векторах что есть в коде.
Кстати тем кто хочет проверить после распайки работает ли чип, можно провести такую последовательность: даем оба питания для КОРЕ и для ИО и дергаем ножкой клока на СПИ по входу чипа и видим что клок проходит также на другой стороне. Я просто выставил 1 на клок и увидел что он стал 1 на клоке СПИ по выходу чипа потом опять 0 и опять убедился что он отрабатывает по выходу СПИ. Также можно и ножками частоты (судя по исходнику) посмотреть, подаем 10 мегагерц на вход чипу и по выходу должны их же видеть. Смотрите на фронты, они по входу должны быть не заваленными, иначе на выходе лес какой-то получается.
Теперь о моих личных наблюдениях, прошу учесть я программист, часто пишу код для ембедет систем, в схемотехнике работаю на уровне цифровых сигналов, в общем не аналоговик я, посему некоторые вещи что я наблюдал были новыми для меня, и натолкнули меня на разные мысли, которые впоследствии умные люди уже растолковали почему оно так.
Первый запуск его без обвязки конденсаторами, приводит к тому что даже на маленькой частоте он не находит все результаты и число плавает очень сильно. Причем даже было, что кольцевая память где хранятся 16 последних решений, иногда на следующем считывании меняла некоторые биты в тех значениях в которые вычислитель сейчас не писал. Начиная докидывать конденсаторы картина менялась. Причем странность получалась такая что например на меньших частотах чип находил меньше результатов, чем на больших. потом за какой-то частотой уже начинало уменьшаться количество найденных решений. Допаяв еще конденсаторов, увидел что эта граница сдвинулась в другие частоты. Как потом Умные люди рассказали, что у любых аналоговых схем с конденсаторами есть резонансные частоты, и если чип начинает "кушать" с частотой рядом с этой зоной резонанса то в цепи питания, тем более у нас тут токи не маленькие, начинаются колебания напряжения и реально могут быть очень большими до сотни милливольт. А внутренним транзисторам чипа видимо, это не нравится и они иногда видят не те уровни, что должны по входам и переключаются в не то положение, что и дает нам не нахождение решения. И это объясняет причину поведения на разных частотах. Вообще покопавшись в теории становится понятно, что конденсатор на высоких частотах это совсем уже не конденсатор, а колебательный контур. Вообще с каждым конденсатором есть даташит в котором все его параметры описаны. Пример
http://www.mouser.com/ds/2/40/cx7r-220035.pdf обратите внимание на график импеданса на разных частотах. В теории не только это влияет на комплексное поведение всей схемы питания, а еще несколько параметров, и такие как длина петли тока тоже влияет. Много чего услышал и узнал, но пока, честно признаюсь, считать я такое не умею и пакетов моделирования для такого у меня нет. Также много интересностей узнал про то, что одно отверстие в плате изменяет сразу характеристики индуктивности и тому подобные теоретические вещи. Например, что уменьшение толщины перехода между слоями уменьшить длину токовой петли, и "положительно" скажется на индуктивности. Но напоминаю что пока применить все это на практике, и посчитать как должно быть в идеале я не могу. Все конденсаторы, как разведено на плате у меня не было возможности поставить, ибо 0402 у меня не было под руками, были 0603, а они крупнее и поставить понятно в таком же количестве нельзя, а огород навеса во вне толку никакого не дает (проверено). Посему пока прикинул сделать другую платку под 0603 и опробовать на сколько оно себя лучше покажет, и уже нормально развести источник, а то на макетнице, тоже получилось неважнецки всю обвязку прилепить, хоть её и мало там, та и по токам там не мало получается посему надо потолще дорожки некоторые сделать. Пока будет делаться плата, поработаю над майнером, абы уже считал реальные задания, а не тестовые вектора.
Как и предупреждал, что делится пока особо нечем, но если мой опыт будет кому-то полезен, буду рад что написал сюда это сообщение.