Отговори на тема  [ 19 мнения ]  Отиди на страница 1, 2  Следваща
STR710 EMI - обърках се... 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Юни 07, 2005 6:20 pm
Мнения: 3532
Мнение STR710 EMI - обърках се...
Не мога да разбера различните конфигурации на този модул. А0 доколкото разбирам не се ползва при 16 битова памет??? За какъв дявол са обаче два /WE... Ако ползвам например K6X4016T3F /LB и /UB къде да ги дяна??? Има ли режим в който въпреки че е 16бит паметта се чете на два пъти по 8 (свързано с предния въпрос)?? :? :oops: :roll:


Сря Авг 16, 2006 4:44 pm
Профил
Ранг: Популярен
Ранг: Популярен

Регистриран на: Чет Дек 01, 2005 10:42 pm
Мнения: 301
Мнение 
Значи положението е следното:

двата WE са необходими за да може шината да различава байтови операции по младшия и старшия байт при запис, защото запис на половинката дума трябва да не съсипва другата половина. При четене строба е един, а процесора сам игнорира частта която не го интересува.

Паметта която искаш да свържеш не става да се върже директно без логика - тя има отделни enable за всяка своя половина, които сработват като разрешение и при четене и при запис.

За да свържеш паметта коректно се налага да се направи логика с неизползвания адрес А0, и всичките останали сигнали за управление на паметта: WE0, WE1 и RD, от които да изработиш LB и UB. Ако не гониш бързодействие от РАМ-а който привързваш, най-лесно е както казваш да се включи 8-битов РАМ, и чип-селекта, който го избира, да се конфигурира в 8-битов режим. В този случай, минаваш без никаква междинна логика. Недостатъка е че при 32-битова операция с паметта (най-честия случай, понеже сметалцето е 32-битово) шината ще прави 4 последователни цикъла, с прилежащите им waitstates; при 16 битова операция - съответно 2 последователни цикъла.


16-битова памет на 2 х 8 може да работи по следния начин:
например долната спомената от тебе памет - 2-те 8-битови половинки на се връзват заедно към младшата част на шината на процесора:

Код:
Процесор  Памет-младша  Памет-Старша
D0        D0            D8
D1        D1            D9
D2        D2            D10

и т.н.


при което шината отново трябва да вържеш: А1 на процесора, А0 на паметта, и т.н.

Адреса А0 с права логика отива на LB, и с инверсна логика - на UB

всички останали сигнали се връзват нормално. Т.е. при това връзване отива 1 инвертор


Сря Авг 16, 2006 8:42 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Юни 07, 2005 6:20 pm
Мнения: 3532
Мнение 
Абе знаех си аз че не е проста работа... :x

Да видим дали съм разбрал.
Идеята е да се ползва памет с 16 битова шина за да бъде по-бърз трансфера. Обаче трябва да се направи така, че да е възможно маскирането на младшия и старшия байт, защото има и побайтови операции??

Гледах схемата на развойната платка. Там проблема е решен просто - ползвали са две 8 битови памети, всяка свързана към собствен /WE. Обаче освен че заема повече място, е и по-скъпо.
На други платки наистина съм виждал 16 битова памет + допълнителна логика...

Няма ли някъде по-подробно описание на тоя блок (поне времедиаграми на различните случаи - тези в мануала на STR710 май не изчерпват въпроса) или трябва да се чете в дебелите книжки за АРМ? Мисля че схванах "сюжета" ама все пак...


Чет Авг 17, 2006 10:23 am
Профил
Ранг: Популярен
Ранг: Популярен

Регистриран на: Чет Дек 01, 2005 10:42 pm
Мнения: 301
Мнение 
Точно тъй, така е - 16-битова за производителност. Разделните WE са точно заради това - защото софтуера може да иска и има пълното право да модифицира само 1 байт от 16-битовата полудума.

По подробно описание мисля няма да намериш. Поне аз не чувствам нужда от повече информация от текста и няколкото времедиаграми в user manual-а.

Ако трябва, обаждай да помагам още. Тъй или иначе и аз съм взел 16-битова бърза памет, и се каня да я вържа към туй чудо, и мисля да поставя между паметта и процесора едно CPLD - например XC9536XL - струва около 1$ и не оскъпява кой-знае колко. Би могъл да използваш и SMD едногейтови елементи за логиката, тъй като тя е проста. Все пак, ако гониш производителност, добре е да се върже на 16-те бита; тъй или иначе шината работи с поне +1 допълнителен цикъл чакане при четене (user manual-a на страница 25).


Чет Авг 17, 2006 8:39 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Юни 07, 2005 6:20 pm
Мнения: 3532
Мнение 
Цитат:
и мисля да поставя между паметта и процесора едно CPLD - например XC9536XL


Точно същото си мислех и аз. Дори съм го сложил на схемата вече. Ще прекарам управляващите сигнали през него, а съм сигурен че ще се използва цялото - има какво да се сложи вътре... Ако объркам нещо - лесно се променя - не е като нова ревизия на платка...
Производителност се гони, още повече че ще ползвам не толкова бърза памет - 55 или 70ns, тъй че 16 бит са задължителни в моя случай...

Ок, действам, пък като възникнат въпроси пак ще питам
10х


Пет Авг 18, 2006 9:47 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Юни 07, 2005 6:20 pm
Мнения: 3532
Мнение 
Пиша тук, за да не отварям нова тема.
В схемата на JTAG-a има следната простотия (на картинката). Изобщо на виждам смисъла й....


Прикачени файлове:
jtg.gif
jtg.gif [ 14.26 KiB | Прегледано 3070 пъти ]


Последна промяна velio на Чет Авг 24, 2006 4:10 pm, променена общо 2 пъти

Сря Авг 23, 2006 12:39 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Окт 31, 2004 9:19 pm
Мнения: 4464
Местоположение: Stara Zagora
Мнение 
Може да си го реализираш както си искаш,важното е когато ти слезе ресета в 0 да ти слезе в 0 и /JRST.
Но имай пред вид че R92 i C79 ти дават закъснеие. тоест JRST ще се активира по късно. а при деактивирането ще слязат в 0 почти едновременно защото транзистора разрежда C79 веданага. В вериагата намаш токоограничаващ резистор.


Сря Авг 23, 2006 12:55 pm
Профил
Ранг: Популярен
Ранг: Популярен

Регистриран на: Чет Дек 01, 2005 10:42 pm
Мнения: 301
Мнение 
И аз се чудех върху таз верига; в края на краищата я повторих така както е дадена, предполагам че е зор за синхронизация на TRST и RST. с транзистори SMD не заема място. Моя съвет е да си я поставиш както я дават, иначе може да загубиш дебъгването.


Сря Авг 23, 2006 7:15 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Окт 31, 2004 9:19 pm
Мнения: 4464
Местоположение: Stara Zagora
Мнение 
Споко,не е капризно. На моята платка за експеримента махах T1 и на мястото на колектора му връзвах един диод към ресета. Съвсем нормално се дебъгваше.
Най удачно решение за случая мисля че е един P-N-P транзистор емитера на който да е където сега е колектора на Т2/JRST/,базата директно на RESET а колектора на маса. C79 за този случай трабва да го направиш 15 или 22 nF.
3 резистора и един транзистор по малко от оригиналното решение.


Сря Авг 23, 2006 8:00 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Юни 07, 2005 6:20 pm
Мнения: 3532
Мнение 
Аве гледам тука пише, че /CS0 е 16bit access only. Това значи ли че не може да се пише побайтово (/we0 /we1 и 16 бит памет) или просто че може да се връзва само 16 бит памети?


Чет Авг 24, 2006 12:33 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Юни 07, 2005 6:20 pm
Мнения: 3532
Мнение 
В продължение на темата за JTAG-a, на едно друго място (STR71x Hardware Development - Getting Started.pdf) се чете следното.

Кое е вярното???


Прикачени файлове:
Коментар на файл: Notes:
1. In order for JTAG and Chip Reset to be synchronized the J4 jumper must be fitted.

jtg1.gif
jtg1.gif [ 27.83 KiB | Прегледано 3087 пъти ]


Последна промяна velio на Чет Авг 24, 2006 4:11 pm, променена общо 1 път

Чет Авг 24, 2006 1:31 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Окт 31, 2004 9:19 pm
Мнения: 4464
Местоположение: Stara Zagora
Мнение 
Кое те притеснява тук


Чет Авг 24, 2006 1:43 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Юни 07, 2005 6:20 pm
Мнения: 3532
Мнение 
Всъщност ми се струва че това второто е по вярно.
При първото винаги има връзка между двата ресета. При второто - само като се тури джъмпера.


Чет Авг 24, 2006 4:09 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Окт 31, 2004 9:19 pm
Мнения: 4464
Местоположение: Stara Zagora
Мнение 
Да втората е по удачна.

Кога ще ти се наложи да го махаш тоя джъмпер? Аз поне не видях причина да го слагам и на моята платка тази верига си е постоянно включена.


Чет Авг 24, 2006 4:20 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Юни 07, 2005 6:20 pm
Мнения: 3532
Мнение 
Идея си нямам. Тука имаме три платки и на трите джъмпера не е сложен (т.е. има го но само на едното краче).
Много се дразня на такива решения - дето уж имат смисъл, но само при всяко трето пълнолуние, и то ако се пада в петък... :evil:


Чет Авг 24, 2006 4:33 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 19 мнения ]  Отиди на страница 1, 2  Следваща

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 0 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни