hatman 0 24 декабря, 2008 Опубликовано 24 декабря, 2008 · Жалоба здравствуйте все! почитал по конфе темы связанные сразводкой SDRAM для BlackFin. я - новичок в этом деле и хотелось бы ради уточнения услышать свод всех правил, согласно которым нужно разводить правильно SDRAM. конфигурация такая: частота процессора 400 мгц частота шины сдрам 133 мгц плату будем делать четырехслойную - питание и земля во внутренних плоскостях почитав темы по конфе пока в голове отложились следующие правила разводки(для 4слоев !): 1) дорожку CLK делаем самую кратчайшую - впритык 2) линии данных DQ0..DQ15 как можно короче (при чтении помогает) 3) линии адреса делать по возможности одинаковыми (чтобы небыло запаздывания) 4) не перемешивать между собой адресные(A0..A?), данные(DQ0..15) и управляющие(CS,WE,OE,CAS,RAS,DQML,DQMH,CLK,CKE,...) 5) блокирующие конденсаторы крепить ПОД микросхемой сдрам, соединения не к пинам, а сразу в плоскости питания, земли. 6) дорожки питания, земли, блокировочных конденсаторов - как можно толще и короче 7) конденсаторы 0.1 мкф керамика на все блокировочные пины, и один танталовый 10мкф на какой -нибудь один блокировочный пин. Скажите, при вышесказанных правилах каковы шансы запустить верно SDRAM на 133 Мгц? в сдрам нужно выполнять программы (типа RTOS). Что можно к правилам добавить или убрать или исправить? Ещё такой вопрос, в цоколевке сдрам (планируется Micron, 16M16) есть Vdd,Vss, VddQ,VssQ. Какова должна быть топология блокировочных конденсаторов на этих пинах. с уважением. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
talus 0 24 декабря, 2008 Опубликовано 24 декабря, 2008 (изменено) · Жалоба Главное чтобы разница по времени распростронения сигнала между линиями сдрам не превышала по крайней мере пол периода (а лучше четверть периода). Запуститься с полпинка. P.S. тему лучше перенести :) Изменено 24 декабря, 2008 пользователем talus Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vik0 0 24 декабря, 2008 Опубликовано 24 декабря, 2008 · Жалоба 4) не перемешивать между собой адресные(A0..A?), данные(DQ0..15) и управляющие(CS,WE,OE,CAS,RAS,DQML,DQMH,CLK,CKE,...) Данные в пределах одного байта (т.е. DQ0-7 и DQ8-15) свободно можно менять между собой. Управление - однозначно не трогать. Адрес - можно, но очень осторожно (при изменении не выходить за пределы адресов строки/страницы) и с привязкой к конкретной микросхеме SDRAM. 5) блокирующие конденсаторы крепить ПОД микросхемой сдрам, соединения не к пинам, а сразу в плоскости питания, земли. Не обязательно под. Главное максимально близко к пинам. 7) конденсаторы 0.1 мкф керамика на все блокировочные пины, и один танталовый 10мкф на какой -нибудь один блокировочный пин. Тантал просто на плате в районе мс памяти и фина, без привязки к конкретной ноге. Скажите, при вышесказанных правилах каковы шансы запустить верно SDRAM на 133 Мгц? в сдрам нужно выполнять программы (типа RTOS). Не плохие шансы. Зависит от качества трассировки (только выполнять из SDRAM код RTOS - отнюдь не самая удачная идея..) Что можно к правилам добавить или убрать или исправить? Вот тут почитайте, поучительно. И еще - не игнорируйте моделирование SI. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
hatman 0 25 декабря, 2008 Опубликовано 25 декабря, 2008 · Жалоба Спасибо ответившим! на счёт перемешивания имел ввиду немножко не то. А то что перекручивать при трассировке не рекомендуется-к примеру, идут трассы данных(д0..д15) а между ними втолкнуты /cas, /ras, к примеру. думается,их надо развести лучше по-дальше от данных,так? И ещо, почему не рекомендуется из сдрам выполнять программы? как же тогда линукс эксплуатируют? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
talus 0 25 декабря, 2008 Опубликовано 25 декабря, 2008 · Жалоба на счёт перемешивания имел ввиду немножко не то. А то что перекручивать при трассировке не рекомендуется-к примеру, идут трассы данных(д0..д15) а между ними втолкнуты /cas, /ras, к примеру. думается,их надо развести лучше по-дальше от данных,так? Если нада очень можете перемешивать ничего страшного. И ещо, почему не рекомендуется из сдрам выполнять программы? как же тогда линукс эксплуатируют? У меня такой же вапрос с чего это вдруг не рекомендуется RTOS? Очень даже неплохо можно крутить ее в СДРАМ. И вообще как показывает практика, СДРАМ не особо прихотливая по качеству разводки. Вот с ДДР2 бальшие проблемы... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
cioma 0 25 декабря, 2008 Опубликовано 25 декабря, 2008 · Жалоба Будет ли что-нибудь еще на шине, кроме SDRAM? Да и самих чипов SDRAM сколько будет? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vik0 0 25 декабря, 2008 Опубликовано 25 декабря, 2008 · Жалоба И ещо, почему не рекомендуется из сдрам выполнять программы? как же тогда линукс эксплуатируют? Выполнять можно. Только это будет весьма меделенно. А ядро RTOS должно выполнятся с максимальной производительностью. Иначе это будет недо-RTOS.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
hatman 0 5 января, 2009 Опубликовано 5 января, 2009 · Жалоба Развёл пробно: BF532, MT48LC16M16, 74LCX16245 в чётырёх слоях(внутренние питание и земля) Расположил SDRAM к BlackFin'у так, чтобы дорожка CLKOUT была наикратчайшей (для остальных трасс такое расположение очень невыгодно - очевидно) Выкладываю фрагмент разводки Top, Bottom и обеих слоёв. ------------------- cioma> Будет ли что-нибудь еще на шине, кроме SDRAM? Да и самих чипов SDRAM сколько будет? Планируется ещё один банк асинхронной памяти (для LCD - заложил буфер 74LCX16245) ------------------- Конденсаторы блокировочные (к каждому пину 0.1мкф(керамика) и на чип 10 мкф(тантал)) Настораживает то, что трассы длинноватые (хоть и 4-слойка). Питание, землю, блокировочные конденсаторы развёл вручную. Трассы сигналов в specctra. Прошу прокомментировать. И главное - имеет ли такая топология право на жизнь (работа с сдрам на 133 МГц)? Ну и замечания. P.S. с наступившим 2009 :santa2: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
evg123 0 5 января, 2009 Опубликовано 5 января, 2009 · Жалоба Скажите, при вышесказанных правилах каковы шансы запустить верно SDRAM на 133 Мгц? в сдрам нужно выполнять программы (типа RTOS). Не морочьтесь сильно. Когда мы делали то же самое на TMS320VC5509A (у нас SDRAM работает на 90 МГц), то тоже каких только вопросов не задавали и чем только не были озабочены. Плата 4-ый класс точности. Главное, чтобы под памятью был слой земли - стандартно 0.05 - 0.1 мм под слоем разовдки. Память располагайте чем поближе к процессору. Если она расположена в сантиметре от проца - то можете вообще ни о чём не думать. (Токо клок желательно, чтобы был на расстоянии 0.25 мм от других дорожек). Если на расстоянии 2-5 сантиметров, то надо, чтобы клок был по возможности короче других линий (но без фанатизма) и на шинах адреса, данных, клоке и - поставить 33-омные резисторные сборки - со стороны драйверов. Никаких других заморочек, всё будет работать. Мы анализировали варианты разводок с DDR2 у AMCC и у 320V6455. Там уже вопрос с разводкой обстоит более серьёзно. Хотя, у Davinchi - DDR-ы располагаются в среднем в 2-х сатиметрах от процессора - на плате всё равно не предпринято никаких мер к выравниванию фаз. Всё разведено очень просто. У AMCC - там DDR-ы располагались где-то в 5-6 сантиметрах от процессора. Там - приняты спец. меры по выравниванию фазы и согласованию драйверов с линиями. Все развязывающие конденсаторы ставьте прямо у ног питания на расст. 1-3 мм. (длина дорожки - максимум 5 мм.) Ядро РТОС грузите в процессор, а задачи в SDRAM. Мы так сделали у себя (ядро DSP/BIOS - в проц, а всё прикладное - в SDRAM) - это себя вполне оправдало. Впрочем у вас есть КЭШ. Значит какая-то часть ядра может быть безболезненно загружена в SDRAM. Обработчики прерываний - конечно - в процессор. Пробежался по вашей разводке. Всё нормально на первый взгляд. Я сам долго мучался пока разводил SDRAM в ручную. Потом плюнул, (разводил в PADS2007), запустил их собственный разводчик, который за секунду развёл лучше, чем я за день. Если можете применить какой-нибудь толковый авторутер - попробуйте, возможно он вам сделает ваши линии короче. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
HardJoker 12 5 января, 2009 Опубликовано 5 января, 2009 · Жалоба здравствуйте все! почитал по конфе темы связанные сразводкой SDRAM для BlackFin. почитав темы по конфе пока в голове отложились следующие правила разводки(для 4слоев !): Прежде чем изобретать правила разводки и заваться числом слоев проще ознакомиться с документами по сходной тематике - например, от Texas Instr. spraam1a.pdf и spraac5f.pdf - Implementing DDR2 PCB Layout on the TMS320DM646x. Названия фирмы и процессора пусть не смущают. Подходы по проектированию топологии в/скоростных схем как у ADI, так и у TI etc. практически одинаковы. обстоит более серьёзно. Хотя, у Davinchi - DDR-ы располагаются в среднем в 2-х сатиметрах от процессора - на плате всё равно не предпринято никаких мер к выравниванию фаз. Всё разведено очень просто. Da'Vinci разные бывают. У SPECTRUM DIGITAL INCORPORATED (TMS320DM6437 Evaluation Module) меры по выравниванию фаз серьезные. Хотя собственный дизайн DSP-DDR2 можно сделать и получше. Но, разумеется, никаких авторазводчиков при этом быть не должно. В качестве бонуса - отсутствие плясок с бубном по теме проверки целостности сигналов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vik0 0 5 января, 2009 Опубликовано 5 января, 2009 · Жалоба Расположил SDRAM к BlackFin'у так, чтобы дорожка CLKOUT была наикратчайшей (для остальных трасс такое расположение очень невыгодно - очевидно) Вы крайне неудачно расположили компоненты. Короткий CLKOUT - это конечно хорошо, но только не тогда, когда он в десятки(!) раз короче остальных сигналов. Планируется ещё один банк асинхронной памяти (для LCD - заложил буфер 74LCX16245) Буфер лучше поставить после SDRAM. Конденсаторы блокировочные (к каждому пину 0.1мкф(керамика) и на чип 10 мкф(тантал)) На всякий случай - вы не забыли конденсаторы на VddInt? О! Кстати, если я правильно понял - полигон под фином это - VddInt? И он подается только через тонкий "огрызок" к 25-й ноге? Значительно лучше выделить под VddInt островок на слое питания. P.S. с наступившим 2009 :santa2: И вас с тем же :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
evg123 0 5 января, 2009 Опубликовано 5 января, 2009 · Жалоба Da'Vinci разные бывают. У SPECTRUM DIGITAL INCORPORATED (TMS320DM6437 Evaluation Module) меры по выравниванию фаз серьезные. Ещё раз пересмотрел герберы на 6455 (от Sectrum Digital) и зашел в соседний отдел покрутил EVM6446 - нет там ничего особенного по разводке DDR. А эта плата работать будет (я бы только всё же попробовал авторутером), PADS Router даст однозначно лучшие результаты, чем ручная разводка. Проверено. Фазы выравнивать нет смысла. Посчитайте сколько пикосекунд будет распространяться сигнал на самом длинном проводнике и увидите, что в этой разводке на 133 МГцах сохранится целостность сигналов (её вообще имеет смысл считать, только если память расположена далеко от процессора). Если совсем нечего дедать - возьмите демонстрашку гиперликса и посмотрите там примерчики. На каких длинах пропадает целостность сигналов. Вопрос, повторяю только в наличие слоя земли под каждым проводником, чтобы каждый проводник был микрополосковой линией. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
HardJoker 12 5 января, 2009 Опубликовано 5 января, 2009 · Жалоба процессора). Если совсем нечего дедать - возьмите демонстрашку гиперликса и посмотрите там примерчики. На каких длинах пропадает целостность сигналов. Вопрос, повторяю только в наличие слоя земли под каждым проводником, чтобы каждый проводник был микрополосковой линией. Примерчики для демонстрашек никогда не интерисовали. Их ценность определяют модели, используемые для расчетов распространения сигналов. А точность модели не идеальна. Ее ошибка может достигать 30% на фронтах. Эот случай любят в качестве уже своих демострашек производители измериловки, поскольку адекватный прибор для поисков глючности топологии DDR2 зашкаливает за $k100. Что касается микрополосковости, наличие "слоев земли" условие не обязательное и не достаточное (кому как нравится). Любой примитивный калькулятор, например, AppCAD это покажет. попробовал авторутером), PADS Router даст однозначно лучшие результаты, чем ручная разводка. Проверено. Тут есть повод задуматься о смене профессии Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
hatman 0 5 января, 2009 Опубликовано 5 января, 2009 · Жалоба 1. Питание vddint подаётся справа внизу от источника 1.2в на прямоугольную площадку под фином. От площадки разносится питание по ногам(+кондёр на каждую ногу) 2. внутрение слои заняты vddext, gnd. 3. у меня clock в десять раз короче остальных. 4. память от фина на растоянии около 1см. 5. буфер на данных после сдрам(тоесть к фину на ноги данных сдрам и буфер) 6. в ручную развести всё НЕРЕАЛЬНО! Использую specctra15. 7. не рискнул поменять биты: д0..д7 д8..д15 в отладочных платах почему-то так не сделано. а вдруг возникнут проблемы с командами инициализации сдрам? убедительная просьба- объясните,как в моём случае расположить память к фину(впритык) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vik0 0 5 января, 2009 Опубликовано 5 января, 2009 · Жалоба 1. Питание vddint подаётся справа внизу от источника 1.2в на прямоугольную площадку под фином. От площадки разносится питание по ногам(+кондёр на каждую ногу) 2. внутрение слои заняты vddext, gnd. На слое с vddext можно легко выделить участок для vddint 3. у меня clock в десять раз короче остальных. 4. память от фина на растоянии около 1см. 5. буфер на данных после сдрам(тоесть к фину на ноги данных сдрам и буфер) Давайте внесем немного ясности - что такое u1, u2 и u3? 6. в ручную развести всё НЕРЕАЛЬНО! Использую specctra15. АБСОЛЮТНО реально. В крайнем случае, не поленитесь написать толковые правила для specctr-ы. 7. не рискнул поменять биты: д0..д7 д8..д15 в отладочных платах почему-то так не сделано. В отладочных платах слоев побольше :) а вдруг возникнут проблемы с командами инициализации сдрам? Внимательное чтение datasheet на память открывает простой факт - линии данных не используются для задания команд. убедительная просьба- объясните,как в моём случае расположить память к фину(впритык) Выложите файл трассировки - по картинкам среднего качества достаточно трудно что-либо советовать.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться