SAMSUNG S3C4530A

Mar 04, 2004 4 Replies
ðÒÉ×ÅÔ All!
ðÙÔÁÀÓØ ÐÒÉÍÅÎÉÔØ ÓÁÂÖ. HÁÂÌÀÄÁÀ ÓÔÒÁÎÎÏÅ Ñ×ÌÅÎÉÅ. ë ÓÁÂÖÕ ÐÏÄËÌÀÞÅÎÏ
16-ÒÁÚÒÑÄÎÏÅ ðúõ, ÓÏÏÔ×ÅÔÓÔ×ÅÎÎÏ, B0SIZE ÕÓÔÁÎÏ×ÌÅÎÏ × 10, ÔÏ ÅÓÔØ half-word. ÷ÙÐÏÌÎÑÀ (ÞÅÒÅÚ ICE-Braker) ËÏÍÁÎÄÕ strh r1,[r0]. åÓÌÉ r0 ÓÏÄÅÒÖÉÔ ÁÄÒÅÓ, ÓËÁÖÅÍ, 0x444 - ÔÏ ×ÓÅ ÒÁÂÏÔÁÅÔ ÎÏÒÍÁÌØÎÏ, ÔÏ ÅÓÔØ ÐÒÉ ÚÁÐÉÓÉ ÎÁ ÛÉÎÅ ×ÙÓÔÁ×ÌÑÅÔÓÑ ÁÄÒÅÓ 0x222. åÓÌÉ ÖÅ r0 ÓÏÄÅÒÖÉÔ ÁÄÒÅÓ 0x666, ÔÏ ÎÁ ×ÎÅÛÎÅÊ ÛÉÎÅ ×ÙÓÔÁ×ÌÑÅÔÓÑ ÁÄÒÅÓ 0x332. á ÐÏÞÅÍÕ A0 ÒÁ×ÅÎ ÎÕÌÀ? áÎÁÌÏÇÉÞÎÏ, ÐÒÉ ÚÁÐÉÓÉ × ÁÄÒÅÓ 0xaaa ÎÁ ÛÉÎÅ ÐÏÌÕÞÁÅÔÓÑ ÁÄÒÅÓ 0x554. ÷ ÞÅÍ ÄÅÌÏ? ðÏÞÅÍÕ A0 ×ÓÅÇÄÁ 0? óÁÍ ÐÒÏ×ÏÄ ÉÓÐÒÁ×ÅÎ, ÅÓÌÉ ÄÅÌÁÔØ str r1,[r0], ÔÏ ÚÁÐÉÓØ, ËÁË É ÐÏÌÏÖÅÎÏ, ×ÙÐÏÌÎÑÅÔÓÑ × Ä×Á ÃÉËÌÁ, × ÐÅÒ×ÏÍ A0=0, ×Ï ×ÔÏÒÏÍ A0=1. HÉËÁËÉÅ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÅ ÒÅÇÉÓÔÒÙ ÐÏÓÌÅ ÓÂÒÏÓÁ ÎÅ ÔÒÏÇÁÌÉÓØ. ä×Á ÉÍÅÀÝÉÈÓÑ Õ ÍÅÎÑ ËÒÉÓÔÁÌÌÁ ×ÅÄÕÔ ÓÅÂÑ ÏÄÉÎÁËÏ×Ï. þÔÏ Ñ ÄÅÌÁÀ ÎÅÐÒÁ×ÉÌØÎÏ?
÷ÓÅÇÏ ÎÁÉÌÕÞÛÅÇÏ, [Team PCAD 2000] áÌÅËÓÅÊ í. ... äÁÒÅÎÏÍÕ ÐÉÓØÍÕ × ËÌÕÄÖÉ ÎÅ ÓÍÏÔÒÑÔ.

AM> Пытаюсь применить сабж. Hаблюдаю странное явление. К сабжу подключено AM> 16-разрядное ПЗУ, соответственно, B0SIZE установлено в 10, то есть half-word. AM> Выполняю (через ICE-Braker) команду strh r1,[r0]. Если r0 содержит адрес, AM> скажем, 0x444 - то все работает нормально, то есть при записи на шине AM> выставляется адрес 0x222. Если же r0 содержит адрес 0x666, то на внешней шине AM> выставляется адрес 0x332. А почему A0 равен нулю? Аналогично, при записи в AM> адрес 0xaaa на шине получается адрес 0x554. AM> В чем дело? Почему A0 всегда 0? Сам провод исправен, если делать str AM> r1,[r0], то запись, как и положено, выполняется в два цикла, в первом A0=0, во AM> втором A0=1. Hикакие конфигурационные регистры после сброса не трогались. Два AM> имеющихся у меня кристалла ведут себя одинаково. Что я делаю неправильно?

Обычно при использовании 16-ти битной данных А0 не используется. Ведь память она все равно определяется в байтах, только доступ к ней осуществляется пословно. То есть, например: Для чтения байта по адресу 0 на ША выставляется адрес 0, читается целиком 16-ти битное слово, но берется младший байт. Для чтения байта по адресу 1 на ША выставляется адрес 0,читается

16-ти битное слово, но берется уже старший байт. Для чтения слова, выравненного по четному адресу за одно обращение будет считано слово целиком. Если нужно считать слово, не выравненное по четному адресу, то есть один байт которого находится по адресу 1, а другой по адресу 2, то для считывания такого слова будет производиться 2 обращения к памяти.

То есть, если применяется 16-ти битный доступ, то коммутация процессора и памяти делается по схеме uC Память А0 - А1 А0 А2 А1 А3 А2 ....

Для 32-х разрядной шины соответственно uC Память А0 - А1 - А2 А0 А3 А1

При подключении ROM и/или при чтении из RAM uC сам разбирается, какой байт в слове соответсвует именно тому адресу, из которого производится чтение. При записи в RAM по 16 битной шины задействуются сигналы WRH' WRL', позворляющие писать соответственно только старший или только младший байт в текущем цикле обращения к RAM. У 32-х битных RAM (если такие бывают) по идее должно быть 4 сигнала WR.

Hello Alex,

AM> Пытаюсь применить сабж. Hаблюдаю странное явление. К сабжу подключено AM> 16-разрядное ПЗУ, соответственно, B0SIZE установлено в 10, то есть half-word. AM> Выполняю (через ICE-Braker) команду strh r1,[r0]. Если r0 содержит адрес, AM> скажем, 0x444 - то все работает нормально, то есть при записи на шине AM> выставляется адрес 0x222. Если же r0 содержит адрес 0x666, то на внешней шине AM> выставляется адрес 0x332. А почему A0 равен нулю? Аналогично, при записи в AM> адрес 0xaaa на шине получается адрес 0x554.

А с endianess все в порядке? У самсов, как правило, она задается отдельной ногой.

ðÒÉ×ÅÔ Vyacheslav!

04 Mar 04 17:01, Vyacheslav Ovsiyenko ÐÉÓÁÌ Alex Mogilnikov:

AM>> ÁÄÒÅÓ 0x332. á ÐÏÞÅÍÕ A0 ÒÁ×ÅÎ ÎÕÌÀ?

VO> á Ó endianess ×ÓÅ × ÐÏÒÑÄËÅ? õ ÓÁÍÓÏ×, ËÁË ÐÒÁ×ÉÌÏ, ÏÎÁ ÚÁÄÁÅÔÓÑ VO> ÏÔÄÅÌØÎÏÊ ÎÏÇÏÊ.

HÁ ÎÏÇÅ LITTLE ×ÙÓÏËÉÊ ÕÒÏ×ÅÎØ, ÔÏ ÅÓÔØ ËÒÉÓÔÁÌÌ ÒÁÂÏÔÁÅÔ × ÒÅÖÉÍÅ little-endian. é Ñ ÎÅ ÐÏÎÉÍÁÀ, ËÁË ÜÔÏ ÍÏÖÅÔ ÐÏ×ÌÉÑÔØ ÎÁ ÒÅÚÕÌØÔÁÔ.

÷ÓÅÇÏ ÎÁÉÌÕÞÛÅÇÏ, [Team PCAD 2000] áÌÅËÓÅÊ í. ... óÏ×ÅÔ ÄÎÑ: ÞÔÏÂÙ ÕÂÉÔØ ÖÉÒÎÕÀ ÌÏÛÁÄØ, ÄÏÂÁרÔÅ Ë ËÁÐÌÅ ÎÉËÏÔÉÎÁ ËÁÐÌÀ fairy
ðÒÉ×ÅÔ Andy!

04 Mar 04 14:59, Andy Mozzhevilov ÐÉÓÁÌ Alex Mogilnikov:

AM> ïÂÙÞÎÏ ÐÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ 16-ÔÉ ÂÉÔÎÏÊ ÄÁÎÎÙÈ á0 ÎÅ ÉÓÐÏÌØÚÕÅÔÓÑ.

? HÅ ÐÏÎÑÌ. ðÏÞÅÍÕ ÐÉÛÁ... ÐÉÓÑ... ÚÁÐÉÓÙ×ÁÑ ÐÏÌÏ×ÉÎÎÏÅ ÓÌÏ×Ï × ÁÄÒÅÓÁ, ÓËÁÖÅÍ, 4 É 6 Ñ ÐÏÌÕÞÁÀ ÏÄÎÏ É ÔÏ ÖÅ ÚÎÁÞÅÎÉÅ ÎÁ ÛÉÎÅ ÁÄÒÅÓÁ?

AM> ÷ÅÄØ ÐÁÍÑÔØ ÏÎÁ ×ÓÅ ÒÁ×ÎÏ ÏÐÒÅÄÅÌÑÅÔÓÑ × ÂÁÊÔÁÈ, ÔÏÌØËÏ ÄÏÓÔÕÐ Ë ÎÅÊ AM> ÏÓÕÝÅÓÔ×ÌÑÅÔÓÑ ÐÏÓÌÏ×ÎÏ. AM> ôÏ ÅÓÔØ, ÎÁÐÒÉÍÅÒ: AM> äÌÑ ÞÔÅÎÉÑ ÂÁÊÔÁ ÐÏ ÁÄÒÅÓÕ 0 ÎÁ ûá ×ÙÓÔÁ×ÌÑÅÔÓÑ ÁÄÒÅÓ 0, ÞÉÔÁÅÔÓÑ AM> ÃÅÌÉËÏÍ 16-ÔÉ ÂÉÔÎÏÅ ÓÌÏ×Ï, ÎÏ ÂÅÒÅÔÓÑ ÍÌÁÄÛÉÊ ÂÁÊÔ. AM> äÌÑ ÞÔÅÎÉÑ ÂÁÊÔÁ ÐÏ ÁÄÒÅÓÕ 1 ÎÁ ûá ×ÙÓÔÁ×ÌÑÅÔÓÑ ÁÄÒÅÓ 0,ÞÉÔÁÅÔÓÑ AM> 16-ÔÉ ÂÉÔÎÏÅ ÓÌÏ×Ï, ÎÏ ÂÅÒÅÔÓÑ ÕÖÅ ÓÔÁÒÛÉÊ ÂÁÊÔ.

üÔÏ ÐÏÎÑÞÔÎÏ. ðÏÞÅÍÕ ÐÒÉ ÞÅÔÎÉÉ ÂÁÊÔÁ ÐÏ ÁÄÒÅÓÕ 2 ÎÁ ûá ÏÐÑÔØ ÖÅ ×ÙÓÔÁ×ÌÑÅÔÓÑ ÁÌÒÅÓ 0?

AM> äÌÑ ÞÔÅÎÉÑ ÓÌÏ×Á, ×ÙÒÁ×ÎÅÎÎÏÇÏ ÐÏ ÞÅÔÎÏÍÕ ÁÄÒÅÓÕ ÚÁ ÏÄÎÏ ÏÂÒÁÝÅÎÉÅ AM> ÂÕÄÅÔ ÓÞÉÔÁÎÏ ÓÌÏ×Ï ÃÅÌÉËÏÍ.

? óÌÏ×Ï ÐÏ ÏÐÒÅÄÅÌÅÎÉÀ ÄÏÌÖÎÏ ÂÙÔØ ×ÙÒÁ×ÎÅÎÏ ÎÁ 4 (ÄÁÖÅ ÎÅ ÎÁ "ÞÅÔÎÙÊ ÁÄÒÅÓ").

AM> åÓÌÉ ÎÕÖÎÏ ÓÞÉÔÁÔØ ÓÌÏ×Ï, ÎÅ ×ÙÒÁ×ÎÅÎÎÏÅ ÐÏ ÞÅÔÎÏÍÕ ÁÄÒÅÓÕ, ÔÏ ÅÓÔØ AM> ÏÄÉÎ ÂÁÊÔ ËÏÔÏÒÏÇÏ ÎÁÈÏÄÉÔÓÑ ÐÏ ÁÄÒÅÓÕ 1, Á ÄÒÕÇÏÊ ÐÏ ÁÄÒÅÓÕ 2, ÔÏ ÄÌÑ AM> ÓÞÉÔÙ×ÁÎÉÑ ÔÁËÏÇÏ ÓÌÏ×Á ÂÕÄÅÔ ÐÒÏÉÚ×ÏÄÉÔØÓÑ 2 ÏÂÒÁÝÅÎÉÑ Ë ÐÁÍÑÔÉ.

óÏ ÓÞÉÔÙ×ÁÎÉÅÍ ÓÌÏ× ËÁË ÒÁÚ ÐÒÏÂÌÅÍ ÎÅÔ, ÓÌÏ×Ï ÓÞÉÔÙ×ÁÅÔÓÑ ÚÁ Ä×Á ÃÉËÌÁ, × ÐÅÒ×ÏÍ á0 ÒÁ×ÎÏ 0, ×Ï ×ÔÏÒÏÍ á0 ÒÁ×ÎÏ 1. ðÏÞÅÍÕ ÐÒÉ ÚÁÐÉÓÉ ÐÏÌÏ×ÉÎÙ ÓÌÏ×Á ÐÏ ÁÄÒÅÓÕ 2 á0 ÒÁ×ÎÏ 0?

AM> ôÏ ÅÓÔØ, ÅÓÌÉ ÐÒÉÍÅÎÑÅÔÓÑ 16-ÔÉ ÂÉÔÎÙÊ ÄÏÓÔÕÐ, ÔÏ ËÏÍÍÕÔÁÃÉÑ AM> ÐÒÏÃÅÓÓÏÒÁ É ÐÁÍÑÔÉ ÄÅÌÁÅÔÓÑ ÐÏ ÓÈÅÍÅ AM> uC ðÁÍÑÔØ AM> á0 - AM> á1 á0 AM> á2 á1 AM> á3 á2 AM> ....

ôÙ ÞÔÏ-ÔÏ ÐÕÔÁÅÛØ. ôÁËÏÊ ÁÄÒÅÓÎÙÊ ÓÄ×ÉÇ ÕÖÅ ×ÙÐÏÌÎÅÎ ×ÎÕÔÒÉ ËÒÉÓÔÁÌÌÁ, É ÜÔÏ ÏÐÉÓÁÎÏ × ÄÏËÕÍÅÎÔÁÃÉÉ.

AM> ðÒÉ ÚÁÐÉÓÉ × RAM ÐÏ 16 ÂÉÔÎÏÊ ÛÉÎÙ ÚÁÄÅÊÓÔ×ÕÀÔÓÑ ÓÉÇÎÁÌÙ WRH' WRL', AM> ÐÏÚ×ÏÒÌÑÀÝÉÅ ÐÉÓÁÔØ ÓÏÏÔ×ÅÔÓÔ×ÅÎÎÏ ÔÏÌØËÏ ÓÔÁÒÛÉÊ ÉÌÉ ÔÏÌØËÏ ÍÌÁÄÛÉÊ AM> ÂÁÊÔ × ÔÅËÕÝÅÍ ÃÉËÌÅ ÏÂÒÁÝÅÎÉÑ Ë RAM.

íÎÅ ÎÅ ÎÕÖÅÎ ÓÔÁÒÛÉÊ ÂÁÊÔ (D8..D15). ðÒÏÂÌÅÍÁ × ÔÏÍ, ÞÔÏ ðúõ ÄÌÑ ÚÁÐÉÓÉ × ÎÅÅ ÔÒÅÂÕÅÔ ×ÙÓÔÁ×ÌÅÎÉÑ ÁÄÒÅÓÁ 0x555, Á ÔÁËÏÊ ÁÄÒÅÓ ×ÙÓÔÁ×ÉÔØ ÎÅ ÐÏÌÕÞÁÅÔÓÑ, ÔÁË ËÁË A0 ×ÓÅÇÄÁ ÐÏÞÅÍÕ-ÔÏ ÒÁ×ÅÎ ÎÕÌÀ...

AM> õ 32-È ÂÉÔÎÙÈ RAM (ÅÓÌÉ ÔÁËÉÅ AM> ÂÙ×ÁÀÔ) ÐÏ ÉÄÅÅ ÄÏÌÖÎÏ ÂÙÔØ 4 ÓÉÇÎÁÌÁ WR.

äÁ, ËÏÎÅÞÎÏ, ÉÈ 4. HÏ Ä×Á ÐÏÓÌÅÄÎÉÈ ÍÅÎÑ × ÄÁÎÎÏÍ ÓÌÕÞÁÅ ÎÅ ÉÎÔÅÒÅÓÕÀÔ. ÷ÓÅÇÏ ÎÁÉÌÕÞÛÅÇÏ, [Team PCAD 2000] áÌÅËÓÅÊ í. ... óÌÅÐÏÊ ðØÀ, çÌÕÈÏÊ åÍ...

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required