Статистика
Время:
Зарегистрированных: 86039
Последним зарегистрирован: Edward68
Рекорд посещаемости: 12585
Групп пользователей: 4
 Группы:
[Admin] [Cоучастник] [Автор] [Модератор]
 Сейчас на сайте
 Всего: 344
 Гостей: 339
 Анонимных: 0
 Пользователей: 5
 Зарегистрированные:
ovsx Papan Werewolf spectrum29 svnnvs
Страницы: (6) 1 [2] 3 4 5 6  ( Перейти к первому непрочитанному сообщению ) Ответить Новая тема Новый опрос

> TMS320C6745 - начало пути, Игровая консоль? Игровая приставка?
Gospodin_Riba
Сообщение: # 809622   Mar 3 2019, 10:26 AM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




Ну и пруф конечно же: support.gif 4.gif 1000000Z.gif








Следующий шаг - запуск SDRAM и её тестирование. smile.gif

Это сообщение отредактировал Gospodin_Riba - Mar 3 2019, 10:26 AM


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 809843   Mar 4 2019, 05:59 AM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




Разобрался с PLL (файлы проекта PLL.c/PLL.h), выставил такой режим:

частота ядра: 456 МГц
частота шины EMIFB: 152 МГц (SDRAM)
частота шины EMIFA: 91.2 МГц (пока свободна)

Проинитил SDRAM (файлы проекта EMIFB.c/EMIFB.h) MT48LC16M16 на частоту 152 МГц (6.5 нс).
Это максимальная частота шины по даташиту на C6745. Сама память ещё более быстрая 166 МГц (6 нс).

---

Накатал тест памяти (файлы проекта MemTest.c/MemTest.h).

Несколько тестов: запись словами по 8,16,32,64 байт.

16 типов шаблонов:

CODE
const u64 Patterns[]=
{
0x0000000000000000ULL,
0xFFFFFFFFFFFFFFFFULL,
0x5555555555555555ULL,
0xAAAAAAAAAAAAAAAAULL,
0x1111111111111111ULL,
0x2222222222222222ULL,
0x4444444444444444ULL,
0x8888888888888888ULL,
0x3333333333333333ULL,
0x6666666666666666ULL,
0x9999999999999999ULL,
0xCCCCCCCCCCCCCCCCULL,
0x7777777777777777ULL,
0xBBBBBBBBBBBBBBBBULL,
0xDDDDDDDDDDDDDDDDULL,
0xEEEEEEEEEEEEEEEEULL,
};


Вначале идёт заполнение всеми шаблонами по-очереди, затем заполнение отдельным шаблоном.

А также дополнительный тест - запись псевдо-случайными числами.
Код функции Random() такой:
CODE
u32 Seed;

u32 Random32(void)
{
register u32 c=0x21;
register u32 a=Seed;
register u32 b;
m0:
b=a;
a+=a;
if(a>b) goto m1;
a^=0xC5;
m1:
c--;
if(c) goto m0;
Seed=a;
return Seed;
}


Seed перед использованием Random32() надо проинитить простым числом (используется 0x7FFFFFFF).

Тест всей памяти идёт около 4 минуты 20 секунд (последние тесты с Random вносят задержку).

Если что-то не так, то тестирование памяти прекратится и светодиод на порте GP0[0] будет быстро моргать (интервал 100 мс).
Если всё ОК и тест пройден, то светодиод будет медленно мигать (интервал 1 с).

Кеширование кода и данных естественно - не задействовано(выключено), чтобы работа с SDRAM была не в пакетном режиме.
Адресное пространство SDRAM (32 МБ) объявлено как volatile, что исключает оптимизацию компилятора - для гарантированного обращения к каждой ячейке памяти.

---

При написании программ усердно курю Reference Manual на C6745 и поглядываю на следующие сорцы:

c6000-evi-lib-master.zip и C6745-master.zip (оба качаются с GitHub).

В первом проекте регистры периферии почему-то объявлены без VOLATILE, что приводит к неправильной работе программы, когда она Release, а не Debug и со включенной оптимизацией.

В частности при настройке PLL без volatile повисало на втором цикле:
CODE
while(PLL0_PLLSTAT&0x1==1){}

В моих исходниках все хедеры с регистрами исправлены, всё работает на максимальном уровне оптимизации.

Во втором проекте автор не выложил хедеры.

---

Обнаружил, что размер данных unsigned long int не 4, а 8 байт. В ARM 4 байта, а тут 8!

Протестил остальные типы:

CODE

sizeof(unsigned char)=1
sizeof(unsigned short int)=2
sizeof(unsigned int)=4
sizeof(unsigned long int)=8 - НЕ СОВМЕСТИМО С ARM !!!
sizeof(unsigned long long)=8


При портировании это надо учитывать!

---

Токи потребления на частоте ядра 456 МГц, SDRAM 152 МГц при выполнении MemTest:

Ядро 1.3V: 210 мА - пиковое значение
Периферия 3.3V: 90 мА - пиковое значение

C6745 и SDRAM слегка тёплые.
LDO на 1.3V сильно тёплый - пиковая рассеиваемая мощность на нём 0.777 Вт = (5 V - 1.3 V)*0.21 A

Как я говорил уже, на отладочной плате предусмотрены перемычки для исключения штатных LDO и запитки от других источников питания - к примеру, от более экономичных DC/DC.


Присоединённое изображение
Присоединённое изображение


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 809844   Mar 4 2019, 06:01 AM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




Сорец проекта под CCS для тестирования SDRAM.
В папке Release готовый bin для загрузки по UART (сгенерен AISgen-ом).

Присоединённый файл ( Кол-во скачиваний: 100 )
Присоединённый файл  Blink.zip


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 809845   Mar 4 2019, 06:03 AM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




Тест проходит успешно, по вопросам приобретения печатных плат - пишите мне в личку.

image

Это сообщение отредактировал Gospodin_Riba - Mar 4 2019, 06:03 AM


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
romanetz
Сообщение: # 809886   Mar 4 2019, 11:54 AM
Quote Post


Дедушка
*******

Группа: Cоучастник
Сообщений: 5217
Пользователь №: 99518
Регистрация: 13-March 13




Есть tms320c6713, а вот насчёт корпусов и расположения выводов - большой вопрос. Так бы взял платку, если подойдёт. С McBSP поиграццо и миди-синтезатором.


--------------------
То. что нельзя запрограммировать на ассемблере и vhdl - приходится паять.
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810123   Mar 5 2019, 02:37 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




Доработал тестилку SDRAM, на другом форуме подсказали, что память ещё надо протестить на корректность рефреша и с включенным кешированием.

Рефреш проверяется многократным чтением каждой ячейки - после первого чтения ячейка SDRAM разрушается, а refresh-цикл её восстанавливает. Если этого не происходит и из ячейки при чтении со второго раза и далее читается не то что записали - значит SDRAM бракованная или что-то не так.

Тест с рефрешем успешно проходится. smile.gif

С кешированием пришлось повозиться. Задействовал пока кеширование данных.
Архитектура C6745 имеет в 2 раза больше кеша - 32 кБ против 16 кБ у STM32.
А так же есть кеш второго уровня - L2 - до 256 кБ.
так что STM32 курят biggrin.gif

Ниже функция, для кеширования областей SDRAM - ничего сложного: курение референс-мануала делает своё дело:
CODE
void Enable_DCache(void) //Enable D-Cache
{
L1DWB=0x01;  //Flush L1D
L1DCFG=0x07; //Reconfigure L1D to default state (full cache)

L2CFG=0x3;   //128 kB L2

MAR192=0x00000001; //0xC0000000..0xC0FFFFFF cacheble
MAR193=0x00000001; //0xC1000000..0xC1FFFFFF cacheble
}


Включение кеша первого уровня L1D - дало ускорение в 3..3.5 раза (в зависимости от теста)
Включение кеша второго уровня 128 кБ - L2 дало ускорение на 20..25%
leb.gif support.gif

Ниже сорец усовершенствованной тестилки SDRAM:

Присоединённый файл ( Кол-во скачиваний: 107 )
Присоединённый файл  SDRAM_Test_C6745.zip


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810124   Mar 5 2019, 02:42 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




Далее я попробовал грузиться не по UART, а через SPI EEPROM.

В наличии оказалась CAT25256 в DIP-корпусе. Встал вопрос о её прошивке, можно было шить самим C6745, но для этого пришлось писать прошивку для работы с SPI и UART и хост-программу для ПК. Это долго, а хочется как можно быстрее увидеть результат! biggrin.gif

Поэтому было решено приспособить для этого программатор USB ASP v2.0, имевшийся в наличии.
Дефолтная прошивка программатора работает только с AVR-контроллерами.

Но умельцы (кстати, большое им спасибо! mol.gif ) смогли доработать софт программатора для прошивки микросхем памяти.

Подробнее тут: http://plc-blog.com.ua/usbasp-flash-25xxx

Пришлось искать комп с LPT портом и шить USB ASP самопальным программатором:

Присоединённое изображение
Присоединённое изображение


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810125   Mar 5 2019, 02:43 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




В конечном итоге, удалось залить обновленную прошивку в USB ASP и он заработал:

Присоединённое изображение
Присоединённое изображение


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810126   Mar 5 2019, 02:43 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




Cмострячил небольшую приблуду для SPI EEPROM:

Присоединённое изображение
Присоединённое изображение


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810127   Mar 5 2019, 02:45 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




Всё работает, что радует!

Пошагово, как грузить C6745 с SPI EEPROM.

1) Создаем AIS-образ для заливки в SPI EEPROM:

Присоединённое изображение (Нажмите для увеличения)
Присоединённое изображение


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810129   Mar 5 2019, 02:46 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




2) Открываем софт программатора (ссылку кидал выше) , открываем в нем файл прошивки и выбираем нужную память:

Присоединённое изображение (Нажмите для увеличения)
Присоединённое изображение


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810130   Mar 5 2019, 02:46 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




3) Прошиваем!

Присоединённое изображение (Нажмите для увеличения)
Присоединённое изображение


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810133   Mar 5 2019, 02:47 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




4) Переставляем перемычки B0,B1,B2,B7 как накартинке ниже - для загрузки с SPI EEPROM:

Присоединённое изображение
Присоединённое изображение


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810134   Mar 5 2019, 02:48 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




Подаем питание и смотрим последствия автономной загрузки с SPI памяти!

4.gif 1000000Z.gif






--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810136   Mar 5 2019, 02:50 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




Как вы наверное догадались, что в SPI EEPROM в будущем будет свой собственный загрузчик, который будет инитить нужную периферию игровой приставки и загружать с SD-карты эмуляторы и игры в SDRAM ! 1000005W.gif

При этом следует упомянуть, что часть периферии возможно настроить в самом AISgen.

Ниже готовый образ для SPI EEPROM с целью проверки работоспособности платы - на GP0[0] мигающий светодиод. В целях минимизации потребления тока, частота ядра тут 24 МГц и всё отключено.

Это сообщение отредактировал Gospodin_Riba - Mar 5 2019, 02:56 PM

Присоединённый файл ( Кол-во скачиваний: 135 )
Присоединённый файл  Blink_SPI0_EEPROM.bin


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810139   Mar 5 2019, 02:59 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




Следующим шагом, наверное будет размещение кода в SDRAM и его выполнение.
Настройка кеша кода (L1P) и замер скоростей выполнения программ с кешированием и без. smile.gif


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
microxa
Сообщение: # 810186   Mar 5 2019, 07:51 PM
Quote Post


Соучастник
***

Группа: Cоучастник
Сообщений: 322
Пользователь №: 62309
Регистрация: 2-March 10




1.8v М/c eeprom SPI шил по LPT (напаиванием проводков),
этого планшетно-сенсорного уродца на Atom Z3735F
напрямую (без буфера), через подтягивающие резюки
image
программой SPIPGMW
Стояла 8метровая GigaDevice GD25Q64. Скорости оч. дикие:
запись 3минуты, чтение 4

Хотя USB ASP оч.самобытен, своей ногодрыговой эмуляцией USB протокола...

Саму прогу пришлось патчить (ибо не определяла eeprom-ку), благо она
такая маленькая (50кб).. что была мысль ее реверснуть и насадить на USB->COM шнурок
(на базе PL2303). Однако первые прогоны мигания и ногодрыга , показали нижеплинтуснейшие скоростя для подобных применений.. st.gif

Это сообщение отредактировал microxa - Mar 5 2019, 08:13 PM
PMEmail Poster
Top
microxa
Сообщение: # 810273   Mar 6 2019, 01:19 PM
Quote Post


Соучастник
***

Группа: Cоучастник
Сообщений: 322
Пользователь №: 62309
Регистрация: 2-March 10




А какие хорошие кодеки в него подойдут?
А то смотрю I2S вроде как есть (без подробностей):

Three Multichannel Audio Serial Ports (McASPs):
- TMS320C6745 Supports 2 McASPs
- Supports TDM, I2S, and Similar Formats [ZKB

Помнится в AWE32 стояла 8лапая i2s TDA1387, звучание было с нее кристально чистое
и волшебное (в него гналось даже FM/OPL аж с реверберацией)..

В "мобильных" х86, новый тренд - технология Intel SST(вмест мраковой HD) и все тотже рылотек:

The ALC5640 is a high performance, low power, dual I2S interface audio CODEC.
Two 24bit/8kHz ~ 192kHz I2S/PCM interface for each mono DAC and stereo DAC
Two 24bit/8kHz ~ 192kHz I2S/PCM interface for stereo ADC
I2C control interface

Представляете? вконец шизанулись, распихая его на 100500 пинов
И как бы я не заморачивался с jack-детект, так и не вышло отыметь стерео вход.
Ток моно... с микрофона... (впрочем что еще было ожидать от косоглазых 3.14д@р@сов)

да уж smile.gif

Присоединённое изображение (Нажмите для увеличения)
Присоединённое изображение
PMEmail Poster
Top
romanetz
Сообщение: # 810279   Mar 6 2019, 02:21 PM
Quote Post


Дедушка
*******

Группа: Cоучастник
Сообщений: 5217
Пользователь №: 99518
Регистрация: 13-March 13




АЦП AK5394 можно


--------------------
То. что нельзя запрограммировать на ассемблере и vhdl - приходится паять.
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810432   Mar 7 2019, 12:19 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




QUOTE (microxa @ Mar 5 2019, 07:51 PM)
1.8v М/c eeprom SPI шил по LPT (напаиванием проводков),
этого планшетно-сенсорного уродца на Atom Z3735F
напрямую (без буфера), через подтягивающие резюки

Нормальное решение. Ведь сделать программатор - не самоцель, а вспомогательный инструмент.

QUOTE
А какие хорошие кодеки в него подойдут? А то смотрю I2S вроде как есть (без подробностей):

Да всё что угодно! Я ещё не определился, что будет для звука. Хочется проще что-нибудь. Нужен только вывод звука. Микрофон не нужен.


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810433   Mar 7 2019, 12:25 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




Запустил кеш инструкций и программу в SDRAM. Полет нормальный.

Включение кеша L1P:
CODE
#define CACHE_0_REGS 0x01840000u
#define L1PCFG (*(volatile unsigned int*)(CACHE_0_REGS+0x20))

void Enable_ICache(void) //Enable I-Cache
{
L1PCFG=0x07; //Reconfigure L1P to default state (full cache)
}


В SDRAM программа загружается AISgen-ом, если секции программы объявить что они в SDRAM (править CMD-файл в проекте).

Попробовал принудительно отключать кеши и сделал замеры:
QUOTE
L1P  L1D  L2    время выполнения
0        0      0  - 30 секунд
1      0      0  - 14 cекунд
0      1      0  - 12  cекунд
1      1      0  -  2 секунды
0      0      1  -  3 cекунды
1      0      1    -  3  cекунды
0      1    1    -  2  секунды
1      1      1    - 2  cекунды 


Попутно перешёл на CCS v.6, которая поддерживает обновление через интернет и скачал свежую версию компилятора C6000 8.3.3 которая как оказалось, понимает диалект C99, и я этому очень рад!!! 1000000Z.gif 1000000V.gif

Ну и с выкидыванием мёртвого кода разобрался.


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
microxa
Сообщение: # 810541   Mar 8 2019, 09:04 AM
Quote Post


Соучастник
***

Группа: Cоучастник
Сообщений: 322
Пользователь №: 62309
Регистрация: 2-March 10




Наткнулся на любопытный манускрипт (начало нулевых),
https://www.veron.nl/wp-content/uploads/201...Demodulator.pdf
ориентирован еще на старенький
Signal Processor TMS320C6711, в котором его описывают как

QUOTE

Key Features
150-MHz C6711DSP capable of executing 900 million floating-point operations per second
(MFLOPS)

и чего на них персоналок не делали..
только платки с LPT (ляпота)
https://www.picclickimg.com/d/w1600/pict/12...Development.jpg
Можно сказать, гигафлопсник(и без радиаторов охлаждения).

Сколькож тогда дури в TMS320C6745..
PMEmail Poster
Top
kotu
Сообщение: # 810814   Mar 10 2019, 01:42 AM
Quote Post


Соучастник
*****

Группа: Автор
Сообщений: 1013
Пользователь №: 60764
Регистрация: 4-February 10




полезный донор от мерседеса радар, часто водой заливают, за бампером 2 стоят

image
image shades.gif


Это сообщение отредактировал kotu - Mar 10 2019, 01:46 AM
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810906   Mar 10 2019, 04:32 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




QUOTE (microxa)
и чего на них персоналок не делали..

Монополия!
QUOTE (microxa @ Mar 8 2019, 09:04 AM)
Сколькож тогда дури в TMS320C6745..

Даташит!

Это сообщение отредактировал Gospodin_Riba - Mar 10 2019, 04:33 PM


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810908   Mar 10 2019, 04:35 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




QUOTE (kotu @ Mar 10 2019, 01:42 AM)
полезный донор от мерседеса радар, часто водой заливают, за бампером 2 стоят

Один БГА, другой слабачок.
В чём их полезность в контексте темы форума?


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810911   Mar 10 2019, 04:41 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




Приобрёл TFT LCD такой:
https://www.electrodragon.com/product/3-5-3...8-bit-parallel/
3.5” 320x480 TFT LCD Arduino Shield, 8-bit Parallel, ILI9486

По качеству картинки оказался таким же говном как и мой аруиновский дисплей 320x240, недостатки всё те же:
http://vrtp.ru/index.php?showtopic=30174&v...ndpost&p=786821
Пикча:
http://vrtp.ru/index.php?act=Attach&type=post&id=786821

Но для первого старта пойдёт.

Решил увеличить разрешение, чтобы с краёв не срезать, так как эмуляторы Capcom Play System имеют более широкий кадр, чем 320x240

Подключил его ко второй(точнее -первой) параллельной шине EMIFA (8 бит).
На второй шине EMIFB (16 бит) висит SDRAM на 32 МБ.

Составил программу, настроил кеширование, проинитил шины, клоки,,,..... Разместил всю программу в SDRAM, вроде всё работает: leb.gif support.gif 1000000V.gif

Присоединённое изображение
Присоединённое изображение


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810914   Mar 10 2019, 04:46 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




Сейчас отрисовкой занимается C6745. С применением DMA или PRUSS - отрисовка становится параллельной и не мешает C6745 и SDRAM (шины раздельные и одновременно).

PRUSS - это ещё 2 процессора внутри TMS-ки - работают на частотах вдвое меньшей, чем 6745.
По сути на них можно сбацать графический фильтр и рендерер, что здОрово разгрузит основной процессор! spiteful.gif biggrin.gif

Про PRUSS с чем их едят:
http://processors.wiki.ti.com/index.php/Pr..._Unit_Subsystem

image

Это довольно вещь в себе, для них отдельная системакоманд и свои компиляторы (ассемблер).
Сильными стараниями находятся доки, компиляторы и примеры как программировать.



--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810915   Mar 10 2019, 04:48 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




Видео, отрисовка картинок размером 1/4 площади дисплея. Тут используется 64-битная передача данных в порты LCD:







--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810916   Mar 10 2019, 04:51 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




В будущем, планирую искать другой дисплей 480x320 с лучшим качеством картинки. Может кто подскажет модели телефонов из которых можно снять дисплей с таким разрешением?

Появилась проблема с загрузкой программ по UART0. То грузится, то нет. Выдаёт ошибку таймаута по COM-порту.

Пока проблему обошёл сменой UART, теперь гружусь с UART2 - с ним загрузка идёт стабильно.

Карта соединений такая:

UART2_RXD - GPIO 5.12
UART2_TXD - GPIO 5.13

Положение перемычек на плате Mini6745, чтоб грузиться с UART2:

B2=0
B7=1
B0=0
B1=1


Присоединённое изображение
Присоединённое изображение


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top
Gospodin_Riba
Сообщение: # 810918   Mar 10 2019, 04:58 PM
Quote Post


Фанат
******

Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16




Про результаты подключения LCD 320x480 смотрим на предыдущей странице!

Карта подключений дисплея к EMIFA:

EMIFA GPIO
D0 .. D7 0.0 .. 0.7
A12 1.12
!WE 2.3
!CS2 2.5
!OE 2.7
! RESET 5.10

Ниже исходник всего проекта с дисплеем (контроллер ILI9486).
Загружается UART Boot Host-ом в SDRAM.

Присоединённый файл ( Кол-во скачиваний: 96 )
Присоединённый файл  LCD_ILI9486.zip


--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com
Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
PMEmail Poster
Top

Настройки темыСтраницы: (6) 1 [2] 3 4 5 6  Ответить Шустрый ответ Новая тема Новый опрос


 




    banner DIPTRACE - САМЫЙ ЛУЧШИЙ ТАКСИРОВЩИК ПЕЧАТНЫХ ПЛАТ
Portal-X