‮Сдвиг по фазе (kincajou) wrote,
‮Сдвиг по фазе
kincajou

Categories:

worklog: Вот тебе мочало, начинай сначала.

При всей ужасности процесса трассировки шины памяти, есть и ложка мёда в этой бочке дёгтя: что чипам памяти, что процессору - им, в общем, наплевать на порядок битов. Главное, чтобы группы сохранялись: 16- и 32-битные шины логически разбиты на 8-битные группы с отдельными стробами доступа, ибо байт по-прежнему есть минимальная гранулярность памяти и дёргать всю широкую шину ради половинки или четвертушки бывает слишком накладно (хотя, в общем, не запрещено). Чипы динамической памяти - тоже программируемые приборы, хотя и очень по-простому, всего несколько регистров (всего один в старой доброй SDRAM, четыре в DDR3 - вероятно, в других типах памяти могут быть иные регистровые наборы). Доступ к нему осуществляется через шину адреса и командные стробы, шина данных при этом неактивна (т.е. записываемое значение содержится уже в самом адресе).

Поэтому биты данных можно тасовать как угодно в пределах каждой 8-битной группы, сами группы тоже можно менять местами (не забывая про то, что стробы на стороне процессора привязаны к логическому порядку битов, а вот на стороне памяти - таки к физическому!). Биты адресной шины трогать нельзя, их порядок должен оставаться таким, какой есть. В принципе, сейчас память сама умеет инкрементировать адреса и всё такое (достаточно задать начальный адрес и длину считываемой/записываемой серии), но лучше всё-таки адресную шину не изменять - во избежание.

И вот так сидишь, выравниваешь длины тасуешь проводники в группах, а потом замечаешь, что вообще-то, сами группы 0-7 и 8-15 можно было поменять местами и тогда длины проводников сократится где-то на 10 мм, а разводка станет чуточку проще.

Бляяяяяя
Subscribe

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments