dch 0 27 сентября, 2005 Опубликовано 27 сентября, 2005 · Жалоба Но когда требуется, к примеру, инкрементировать каждое значение огромного массива данных, кэш очень мало помогает. Почему? Обратились к первому элементу массива не попали в кэш, считали строку кэша, содержащую несколько элементов массива, инкрементировали эти элементы, не обращаясь в к внещней SDRAM, потом снова не попали в кэш, вытолкнули первую строку. На инткрементирование нескольких элементов попадающих в строку ушло два обращения к памяти. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
asen 0 27 сентября, 2005 Опубликовано 27 сентября, 2005 · Жалоба Да вообще интересно посматреть на описание и класификацию различных матерьялов используемых для изготовления печатных плат никто невидел гденибуть описание! Подскажите где взять ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AndyBig 8 27 сентября, 2005 Опубликовано 27 сентября, 2005 · Жалоба На инткрементирование нескольких элементов попадающих в строку ушло два обращения к памяти. Обращений было столько, сколько слов было считано. Другой вопрос, что при этом могут использоваться фичи памяти, ускоряющие потоковое чтение/запись, но это на небольших объемах не очень заметно :). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dch 0 27 сентября, 2005 Опубликовано 27 сентября, 2005 · Жалоба Обращений было столько, сколько слов было считано. Под обращением я имею в виду выставление адреса строки, адреса колонки, чтение/запись самой строки кэша (нескольких слов). Cамо слово действительно читается за 1 Master clock, без этих операций. Но нас то интересует на сколько MasterClock-ов будет занята шина. При включенном кэше обращение к SDRAM сводится к операциям между кэшем и SDRAM. А он, как правила, общается целиком строками. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AndyBig 8 27 сентября, 2005 Опубликовано 27 сентября, 2005 · Жалоба Да, согласен. Но снижение частоты мастер-клока все же вызовет существенное замедление этих операций, чего хотелось бы избежать. Посмотрим. Попробую завести на 80 МГц. Не получится - буду снижать частоту. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dch 0 29 сентября, 2005 Опубликовано 29 сентября, 2005 · Жалоба попробую напаять эти резисторы на партию плат, где они предусмотрены Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VladislavS 39 29 сентября, 2005 Опубликовано 29 сентября, 2005 · Жалоба Есть опыт SDRAM на 100 Мгц на AT91RM9200. Плата шестислойка со средним слоем полностью залитым GND. Без резисторов, длины линий специально не выравнивал, но по возможности короткими делал. ЗЫ: Знаю что так делать нехорошо, просто эксперимент на стабильность. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Raven 11 29 сентября, 2005 Опубликовано 29 сентября, 2005 · Жалоба Начиная где-то с PCI-ных 33 МГц, а может, и при гораздо меньших частотах, вопрос о том, ставить или нет согласующие резисторы даже не должен возникать - конечно ставить. Начиная с тактового сигнала - это в первую очередь. Его, к тому же, надо разводить по методу точка-точка от источника (это замечание важно, если у вас несколько потребителей). Затем по приоритету идут сигналы управления. А на частотах выше 66 МГц профессионально выполненный дизайн мог бы и на линиях данных-адреса согласующие сопротивления иметь. Поверьте: дешевле заложить это сейчас, чем потом страдать от плохого качества сигналов при попытках отловить нестабильно проявляющиеся "демонические" баги (это те, вначале были, потом, вроде, самоликвидировались, а перед завершением работ на ночном прогоне опять вдруг появились :-)). Наука утверждает, что на таких частотах дорожки на печатной плате надо рассматривать как длинные линии. Так давайте же их и будем так рассматривать, а значит, проявлять к ним должное уважение. Ударим согласующим резистором по бездорожью, т.е., по плохому сигналу! :) ... Напоследок приведу пару примеров из собственного опыта. 1. Резко отрицательный. Линия тактирования последовательного канала нескольких DSP от TI была разведена в виде развесистого дерева, согласующих резисторов нету вовсе, частота тактирования - всего 2 МГц!! (из-за этого, собственно, мы и пренебрегли всеми элементарными правилами. И как скоро оказалось - очень зря!). Вот уж была проблема, так проблема: время от времени, совершенно случайно и редко к тому же (просто беда для дебагирования), происходили сбои в передаче данных по последовательному каналу. Неделю или даже больше мы потратили на последовательное сужение круга подозреваемых, и в конце концов виновник был найден. Им оказался малюсенький такой горбик на фронте клока, наблюдавшийся в точке прихода клока к конкретному DSP (в дополнение ко всему, не все DSP еще и были подвержены этой проблеме с искажением данных!). А возникал этот горбик из-за отсутствия согласования и многочисленных отражений в нашей весьма неоднородной линии передачи тактового сигнала (развесистое дерево). Решить проблему удалось, подрезав кое-где дорожки и напаяв навесные провода, разводящие клоки от источника к каждому потребителю персонально, через согласующие резисторы (хорошо плата прототипная была, допускалась еще одна итерация в разработке, а не то...). 2. Положительный. Коммуникационный контроллер с SDRAM, работающей на частоте 50 или 66 МГц. Согласующие резисторы на линиях управления и клоков, клоки разведены по методу точка-точка. Все стабильно работало, несмотря на то, что шина данных и адреса представляла из себя довольно рискованную развесистую и несколько длинноватую конструкцию (по другому было чипы не расположить, получалось только еще хуже). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Paul 0 30 сентября, 2005 Опубликовано 30 сентября, 2005 · Жалоба Все вышесказанное про топологию и резисторы напоминает гадание на кофейной гуще. Самое надежное будет промоделировать линии (хотя бы одну) на предмет отражений в любом профессиональном САПРе (Cadence SPB, Hyperlinx, ADS и т.д.). Многие вопросы отпадут сами собой, заодно узнаете много нового, подберете оптимальную структуру шины, размещение резисторов и т.д. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Alexandr 0 30 сентября, 2005 Опубликовано 30 сентября, 2005 · Жалоба Все вышесказанное про топологию и резисторы напоминает гадание на кофейной гуще. Самое надежное будет промоделировать линии (хотя бы одну) на предмет отражений в любом профессиональном САПРе (Cadence SPB, Hyperlinx, ADS и т.д.). <{POST_SNAPBACK}> Попробуйте промоделировать поведение сигнала проходящего через переходные отверстия. Так что моделировать безусловно надо, но некоторая доля "гадания на кофейной гуще" останется. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AndyBig 8 30 сентября, 2005 Опубликовано 30 сентября, 2005 · Жалоба Поверьте: дешевле заложить это сейчас, чем потом страдать от плохого качества сигналов Именно поэтому я и начал выяснять все эти вопросы еще на этапе проектирования схематики - хотелось бы заложить максимум защиты от всяческих бяк до разводки и отдачи в производство платы :). Промоделировать в Hyperlynx-е я обязательно попробую. Правда, придется еще позадавать вопросы и по самому Hyperlynx - я в нем за пол-дня так и не смог до конца разобраться :). А вообще - огромное спасибо всем ответившим, в этой новой для меня области я узнал очень много нового и полезного :). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 4 октября, 2005 Опубликовано 4 октября, 2005 · Жалоба В мобилах и SDRAM и DDRAM делают без всяких резисторов. А частоты там бывают под 100 МГц. Резисторы вообще если стявят, то не для согласования, а чтобы убрать перенапряжения на фронтах, а то некоторые чипы от них умирают. Даже элементарная логика говорит, что если согласовывать, например шины данных, то на обоих концах надо ставить резисторы, а ставят почему-то только в одном месте. Это очевидно, не для согласования. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Paul 0 5 октября, 2005 Опубликовано 5 октября, 2005 · Жалоба В мобилах и SDRAM и DDRAM делают без всяких резисторов. А частоты там бывают под 100 МГц. Резисторы вообще если стявят, то не для согласования, а чтобы убрать перенапряжения на фронтах, а то некоторые чипы от них умирают. Даже элементарная логика говорит, что если согласовывать, например шины данных, то на обоих концах надо ставить резисторы, а ставят почему-то только в одном месте. Это очевидно, не для согласования. <{POST_SNAPBACK}> Чем гадать зачем и почему, проведите моделирование какой-либо шины, и сами увидите, какие резисторы помогают, а какие нет, ставить один или несколько. Перенапряжение здесь непри чем, а резисторы ставят на линиях именно для согласования и чем выше частота, тем лучше надо согласовывать. Зачем это нужно и как это делать многократно описано в книгах по SI. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 5 октября, 2005 Опубликовано 5 октября, 2005 · Жалоба Моделировать здесь смешно. Вы убьете кучу времени на разработку, перепроверку своей модели, поиск моделей IO-портов компонентов (многих их которых просто не найдете), и придете к выводу, что согласовывать тут нечего. Согласование - это термин все таки в данном контексте неуместный. Плыты с плотной компоновкой меньше всего нуждаются в согласовании. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Paul 0 5 октября, 2005 Опубликовано 5 октября, 2005 · Жалоба Моделировать здесь смешно. Вы убьете кучу времени на разработку, перепроверку своей модели, поиск моделей IO-портов компонентов (многих их которых просто не найдете), и придете к выводу, что согласовывать тут нечего. Согласование - это термин все таки в данном контексте неуместный. Плыты с плотной компоновкой меньше всего нуждаются в согласовании. <{POST_SNAPBACK}> У Вас сильно устаревшие данные. Все нормальные производители предоставляют модели своих компонентов. На все компоненты, работающие на частотах более 10 МГц, модели доступны. Искать только надо уметь. Согласовывать везде есть чего, если хочешь получить нормальный результат, просто где-то это более важно, а где-то нет. А на частотах более 50 МГц согласование обязательно, или хотя бы проверка согласования. Не надо также забывать, что многие современные микросхемы имеют в своем составе элементы согласования - фиксированные или управляемые внешними сигналами. Плотная компоновка как раз наиболее критична к качеству линий. Близко расположенные проводники обладают существенной взаимной связью, которая может привести к негодности платы. А на счет кучи времени - учите матчасть и набирайтесь опыта - не понадобится куча времени. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться