Форум Эму-Россия http://forum.emu-russia.net/ |
|
64 квадратных миллиметров счастья http://forum.emu-russia.net/viewtopic.php?f=13&t=4106 |
Страница 9 из 16 |
Автор: | org [ 17 сен 2013, 11:03 ] |
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья |
Аттачи смотреть снизу-вверх. Методом сравнения мне удалось получить М1 для "херни с ушками". У этой штуки два входа (помечены красным) и один выход (зеленый). Инвертор, который находится над схемой иногда используется, иногда нет, я пока не выяснил как он подключается, поэтому оставил обрывы. (и подключается ли вообще). Поскольку этот блок используется довольно часто, при этом именно в виде этих трёх ячеек, то есть предположение, что это RS-триггер. (2 входа - set/reset, 1 выход - текущее значение). EDIT: ну во первых сразу узнаем, что верхняя шляпа - это демультиплексор. EDIT: во вторых замечаем, что если MUX = 0, то нижняя часть отсоединяется, а верхняя просто выдает наружу текущее значение триггера. Напрашивается мысль, что это тактируемый RS-триггер, а вход MUX как раз заведен на CLK. Поэтому когда CLK = 0 - текущее значение не меняется. Разберем нижнюю часть. -- 17 сен 2013, 11:47 -- Короче как оказалось это тактируемый D-триггер (триггер задержки). состоит из двух защелок. Во время T=0 защелка1 принимает значение D, а защелка2 выдает наружу старое значение Y Во время Т=1 защелка1 выдает наружу D, которое поступает на защелку2 и выходит как Y. во время следующего Т=0 на выходе Y также будет значение D. потом опять заново. http://wiki.psxdev.ru/index.php/CPU_DTRIG |
Автор: | org [ 08 окт 2013, 19:51 ] |
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья |
В разработке онлайн-приложение для совместного реверса чипов - кодовое название Chiptunes http://psxdev.ru/chiptunes/ |
Автор: | org [ 09 окт 2013, 14:27 ] |
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья |
Закачал на Google Drive все 2901 фотку, нижнего слоя PSX CPU: https://plus.google.com/117266572649711 ... yYdXZFXqvW |
Автор: | org [ 29 окт 2013, 17:43 ] | ||
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья | ||
Андрей обнаружил ещё одну стандартную ячейку, которая проглядывает. Пытаемся восстановить. Пока сомнительное предположение что это 2-demux-4 (ab => 0001, 0010, 0100, 1000 )
|
Автор: | org [ 31 окт 2013, 14:11 ] | |||||
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья | |||||
Второй американский декапер всё подготовил для фотографирования чипов. На картинке - лого GPU, который кстати ещё никто не вскрывал. Внутри GPU - не отличается от CPU. Ну а мы продоложаем мучать новый блок. С топологией разобрались и выяснили очень удивительные и непривычные вещи : оказывается входы CMOS могут идти на диффузию Вначале подумали что это наш косяк, но после анализа схемы и перестройки мозга оказалось что это так и есть ))) Нижняя часть блока имеет 2 входа (in1, in2) и 2 внутренних выхода (b и с). Логическая функция b = xor, c = xnor. Значение xor/xnor идут на верхнюю часть, которая имеет три выхода. Сами по себе эти блоки организуют цепочку, подозрительно похожую на carry chain. И очень похоже что carry предыдущей операции хранится на триггере и используется для текущей (то есть влияет на нижнюю часть схемы, где вычисляется xor / xnor ) Вообщем все факты намекают что это какой-то сумматор (или просто adder или full adder), но всё может поменяться -- 31 окт 2013, 16:00 -- Ну вобщем разобрались. out3 оказался на самом деле входом in3 (это видно по анализу транзисторной схемы - на него не подавалась земли/нагрузки изнутри) Ну а сам элемент - это Full Adder. Код: in1 in2 bc out1 out2 0 0 01 b = 0, c = 1 in2 in3 0 1 10 b = 1, c = 0 in3 !in3 1 0 10 b = 1, c = 0 in3 !in3 1 1 01 b = 0, c = 1 in2 in3 in1 in2 in3 | out1 out2 0 0 0 | 0 0 0 0 1 | 0 1 0 1 0 | 0 1 0 1 1 | 1 0 1 0 0 | 0 1 1 0 1 | 1 0 1 1 0 | 1 0 1 1 1 | 1 1 in1 = a in2 = b in3 = carry_in out1 = carry_out out2 = sum
|
Автор: | org [ 05 ноя 2013, 14:43 ] |
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья |
Half adder: http://wiki.psxdev.ru/index.php/CPU_HALF_ADDER |
Автор: | org [ 05 ноя 2013, 20:00 ] |
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья |
Очередная стандартная ячейка, на сей раз очень важная (ключевая) - мультилексор : http://wiki.psxdev.ru/index.php/CPU_MUX |
Автор: | org [ 06 ноя 2013, 16:07 ] | ||||||
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья | ||||||
Рядом с аддерами мелькает такая вот стандартная ячейка, под кодовым название "колбаса". Предварительно - это либо двунаправленный регистр сдвига, либо Up/Down counter. В любом случае - это какая-то 4-х разрядная херь (видно что она состоит из 4х одинаковых субюнитов, которые фидят друг друга по цепочке). -- 06 ноя 2013, 17:22 -- Транзисторная схема восстановлена, и часть логики тоже. Похоже это "обертка" для организации регистра сдвига. Если принять что C1 = D1, а С2 = D2, при этом оба эти сигнала представляют собой полутакты CLK. А если прикрепить к выходам 1/2/3 каждого каскада D-триггеры (при этом 1 и 2 идут с выхода !Q, а 3 - идёт на вход D), то по идее должен получиться 4-х разрядный регистр сдвига. ЗЫ. На выходе 3 стоят инверторы, так что инвертированный выход !Q D-триггера становится прямым входом на D, при выходе с 3.
|
Автор: | org [ 07 ноя 2013, 09:20 ] |
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья |
Выяснилось, что контакты 1-2-3 соединяются с чем попало (аддеры, другие такие же колбасы), а выходы in-out могут организовывать цепочки из таких колбас. После некоторых раздумий я пришёл к выводу что скорее всего это pipeline - конвеер операций, чтобы разделить по тактам очередность действий. (не тот pipeline, который лежит в основе RISC, а вообще генерализованная структура, для обработки вычислений, которые занимают больше 1 такта). Контакты C1/C2 и D1/D2 к сожалению уходят в необозримые дали, поэтому проверить - соединяется ли C1+D1 и C2+D2 пока нет возможности. Поэтому стандартная ячейка пока получает метку "PIPELINE", до разбирательств ) http://wiki.psxdev.ru/index.php/CPU_PIPELINE |
Автор: | org [ 15 ноя 2013, 09:08 ] |
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья |
- Получили в hires фотку SUB-CPU - Получили слайды GPU (старой версии) - открылся наш англоговорящий форум http://board.psxdev.ru/ + много чего ещё, см. http://psxdev.ru |
Автор: | org [ 23 ноя 2013, 05:34 ] |
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья |
Код: in1 in2 in3 out1 out2 0 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 1 1 0 1 1 0 0 0 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 кто знает что это за функция? всю голову сломал)) -- 23 ноя 2013, 05:41 -- отбой, надо поспать))) |
Автор: | HardWareMan [ 23 ноя 2013, 10:02 ] |
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья |
out1 = not(int 1 xor int3) and int2 out2 = (int1 and int2) or (int1 and int3) or (int2 and int3) :3 |
Автор: | org [ 24 ноя 2013, 21:15 ] |
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья |
Целая пачка стандартных ячеек (и ещё намечаются) : BUF: BUF2X: NOT2: NOT3: XNOR: http://wiki.psxdev.ru/index.php/CPU_CELLS Общее количество найденных ячеек на данный момент составляет 72 : Такое больше количество обусловлено тем, что одна ячейка может иметь разное количество "лошадиных сил" (drive strength). Это достигается наращиванием количества транзисторов в выходном инверторе. |
Автор: | org [ 27 ноя 2013, 16:16 ] |
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья |
D latch : Регистр сдвига : -- 27 ноя 2013, 15:18 -- Начат тайлмаповый реверсинг : http://psxdev.ru/files/IC103/cpu_tilemap.htm |
Автор: | org [ 30 ноя 2013, 15:32 ] |
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья |
первая схема : http://wiki.psxdev.ru/index.php/CPU_CIRCUIT_000 |
Автор: | Akari [ 02 дек 2013, 15:13 ] | ||
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья | ||
Немного моего куска: у меня получается гигантская паутина из аддеров, пайплайнов и флипфлопов. Я сейчас перерисовываю по новому. поэтому пока только большая вязь фрипфлопов нанизаных на тактовый сигнал ) Все нарисованные входы идут с полных сумматоров.
|
Автор: | org [ 02 дек 2013, 17:27 ] |
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья |
У меня такая же история приключилась в правом нижнем углу куска 02 http://psxdev.ru/files/IC103/svg/c0010_r0005.svg |
Автор: | org [ 06 дек 2013, 00:21 ] | |||
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья | |||
Количество ячеек перевалило за 100 (всего их 105 уже). Запустил проект на Google Code, чтобы хранить там векторные данные : https://code.google.com/p/psxdev/ Небольшой прогресс в изучении схемы SIO, обнаружился выходной регистр сдвига, с которого уходит значение TX, а также провод-отсекатель, очень похожий на сигнал TXEN (TX enable), который обнуляет выход регистра сдвига, если TXEN = 0. Андрюха, думаю за себя отпишет
|
Автор: | Akari [ 06 дек 2013, 14:55 ] | |||
Заголовок сообщения: | Re: 64 квадратных миллиметров счастья | |||
Угу, отпишусь ) У меня творится ад и содомия. Без нижнего металла нет 100%ной уверенности в том что все провода отслежены правильно. Определенная логика в расположении элементов есть, но в целом мрак. Видно что схема состоит из 2х частей, связанных только клоком и пайплайнами. Есмть подозрение что это какая-то операция с матрицей (то ли перемножение из. толи умножение на вектор, то ли еще что).
|
Страница 9 из 16 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |