реклама на сайте
подробности

 
 
12 страниц V  « < 3 4 5 6 7 > »   
Reply to this topicStart new topic
> AVR32 uC3B, Стоит ли рассчитывать на него?
SIA
сообщение Jan 29 2008, 22:06
Сообщение #61


Местный
***

Группа: Свой
Сообщений: 462
Регистрация: 26-06-07
Пользователь №: 28 723



Цитата(=VRA= @ Jan 30 2008, 01:00) *
Мне не надо СПАРК - мне надо вменяемый МК на все случаи жизни, а не голое АЛУ с кучкой регистров. Мне нужна "на борту" вменяемая периферия, к которой я могу обратиться за 1 такт, а не за 83 транзакции периферийной главной шины с юго-западным мостом. Мне не нужна внешняя шина, но нужен достаточный объем опять же однотактовой RAM, да желательно с разделением на XRAM/YRAM/DMARAM. А еще мне хотелось бы вместо всех этих костылей с динамическими стеками прерываний иметь одно хорошо забытое решение - автопереключение базового смещения адреса начала регистрового блока для каждого из имеющихся прерываний, да и еще много чего. Но хотеть, как мы знаем, не вредно smile.gif

Думаю, что этого нет по маркетинговым причинам. Хорошо сбалансировать архитектуру и периферию - долгая и кропотливая задача, некогда ей заниматься, тем более что в хорошей архитектуре нет "вычурностей", которые легко обыграть в рекламе.. Скажи спасибо, что среди процессорных ядер всего пара-тройка хорошо сбалансированы, а в обрамлении, считай, еще конь не валялся - кто во что горазд!
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jan 29 2008, 22:17
Сообщение #62


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(SIA @ Jan 30 2008, 00:30) *
По "эффективности системы команд" как раз не очень-то, с производительностью у них из-за невысокой тактовой хуже, чем у MIPS. Вот если ее достаточно, то как чип в целом - очень даже ничего за счет периферии. Но средства разаботки - засада.
под эфективностью/производительностью я имел в виду именно производительность
на 1МГц тактовой ну и набор переферии...
понятно что со старшими MIPS сравнивать нет смысла, но вот эфективность
архитектуры/ядра/переферии в комплексе, если "грубой силы" достаточно, впечатляет...
Ну и двухядерные контроллеры у них тоже уже есть smile.gif SH7265
Go to the top of the page
 
+Quote Post
SIA
сообщение Jan 29 2008, 22:30
Сообщение #63


Местный
***

Группа: Свой
Сообщений: 462
Регистрация: 26-06-07
Пользователь №: 28 723



Цитата(SasaVitebsk @ Jan 30 2008, 00:52) *
То есть последних два десятка постов обсуждают "критерий из последней десятки". А может хватит из себя супермена строить а взять и признать что архитектура имеет важное значение? Вы же её внимательно изучили и сравнили с другими. Так зачем людям мозг парить? Равно как и другие параметры из той же десятки.

А я не боюсь показаться непрофессионалом и признаю.
1) Архитектура ИМЕЕТ значение. Достаточно сравнить тот же MIPS, ARM7, AVR32. Даже слепому видно что это не одно и тоже. И при написании программы это необходимо учитывать. Причём не только когда на асме вставки делаешь. Для разных процов при оптимизации сишной проги тоже будут разные подходы.
2) Переферия тоже в пределах семейства перекликается. Таким образом внутри семейства удобнее переходить, чем скакать с камня на камень. Что бы вы не говорили про пару часов.
3) Я не буду обзывать библиотеки поставляемые разными словами, но приходится признать, что порой легче свою написать, чем воспользоваться чужой. Ну и само сабой лучше, если это свои библиотеки.
4) Не каждый легко и непринуждённо переходит со среды на среду. Или вообще работает одновременно в нескольких. Для меня, к примеру, это длительный процесс. И я думаю, что я не одинок. Может именно по этому народ выбирает максимально многоплатформенные компиляторы?
5) И Отладочные средства вместе со всякими лоадерами и прочим барахлом настроить на столе собрать, перходников настрочить разных, проги некоторые писишные подправить. Тоже время.
6) Я не снабженец конечно, но и тут переход с камня на камень ведёт к задержкам и проволочкам как правило.
7) Что-нибудь в платах накосячат по-первой обязательно.

Конечно, когда возникает производственная необходимость, то приходится переходить - хочешь-не хочешь, но если её нет - то не вижу смысла. Ну кроме люботытства или с целью познания нового. И переход с камня на камень всётаки нормально времени отнимает. Там пару часов - там день там два - глядишь и набегает. А где-то к концу проекта - смотришь и думаешь - выкинуть бы всё это в топку и переписать заново - сделал бы уже намного лучше.

Короче не знаю как для кого, но для меня надо длительное время и важная причина, чтобы перейти на другое семейство.

1. Да. И главное - реальная (а не рекламная) производительность (с учетом мощности потребления и разрядности). Если вычислительной мощности не хватает - все, проект помер. Нехватающую периферию/память можно приделать, а вот ресурсов CPU на реальном коде - не добавишь.
2. Очевидно, хотя тут при необходимости присобачить что-то свое довольно легко (АЦП там).
3. Библиотеки - да, хочется сэкономить время, но в результате часто быстрее написать свое.
4. ТУЛЧЕЙН - ГЛАВНОЕ. Хочется универсальный, например, GNU/GCC.
5. Отладочное железо - тоже статья расходов. Хорошо хоть живет достаточно долго.
6, 7 - понятно, хорошая разработка часто для надежности сразу делается на двух разных камнях (но по возможности с одинаковым тулчейном).

Цитата(singlskv @ Jan 30 2008, 01:17) *
под эфективностью/производительностью я имел в виду именно производительность
на 1МГц тактовой ну и набор переферии...
понятно что со старшими MIPS сравнивать нет смысла, но вот эфективность
архитектуры/ядра/переферии в комплексе, если "грубой силы" достаточно, впечатляет...
Ну и двухядерные контроллеры у них тоже уже есть smile.gif SH7265

Не все так очевидно. Не все то, что красиво выглядит, оправданно на деле. Тщательно просчитанный "брутальный" подход, как правило, более эффективен.
Эффективность ядра на реальном коде лимитируется ветвлениями и латентностью памяти, поэтому по моей оценке, SH2 хорошо если в среднем выполнит 1.2-1.3 команды за такт. Но бОльшее количество доступов в память из-за меньшего числа регистров запросто съест этот выигрыш. В итоге получаем примерное равенство в производительности на мегагерц с MIPS, но гораздо больше логики в процессоре - в результате минус в тактовой и энергопотреблении (что и имеет место).
А вот то, что это цельный камень, и периферия довольно хорошая - безусловный плюс.
Кстати, в MIPS наконец, поняли, что одних только, пусть и очень "вылизанных", процессорных ядер для успеха мало, и прикупили фирму, разрабатывавшую разнообразную периферию. Так что есть все основания ожидать интересного развития событий.
Go to the top of the page
 
+Quote Post
proba
сообщение Jan 29 2008, 22:41
Сообщение #64


Местный
***

Группа: Участник
Сообщений: 358
Регистрация: 29-05-05
Пользователь №: 5 526



Цитата(SIA @ Jan 30 2008, 01:30) *
Ну против Renesas-овских чипов я вроде ничего не говорил smile.gif. Разве что поддержки никакой и не особенно быстрые они - максимальная тактовая не выше 200 МГц.

кажется Вы не особо в курсе с развитием SH. старшие из них IP core, как и MIPS. поэтому, корректно сравнить mips64 с SH5 ( 64bit IP core)
http://www.renesas.com/fmwk.jsp?cnt=sh5_ch...&title=SH-5
или SH4A. представитель: SH77850.
http://www.renesas.com/fmwk.jsp?cnt=sh7785...s/sh7785_group/
что касается подержки то тут SH и MIPS равны, gcc/gnu и linux имеют оба.
но мне кажется это дискуссия давно вышел за пределы началного вопроса так как микроконтроллеров с такими ядрами нет.
Go to the top of the page
 
+Quote Post
SIA
сообщение Jan 30 2008, 00:19
Сообщение #65


Местный
***

Группа: Свой
Сообщений: 462
Регистрация: 26-06-07
Пользователь №: 28 723



Цитата(proba @ Jan 30 2008, 01:41) *
кажется Вы не особо в курсе с развитием SH. старшие из них IP core, как и MIPS. поэтому, корректно сравнить mips64 с SH5 ( 64bit IP core)
http://www.renesas.com/fmwk.jsp?cnt=sh5_ch...&title=SH-5
или SH4A. представитель: SH77850.

Если Вы заметили, в контроллерном контексте я говорил про SH2(А) и MIPS32, как самые экономичные. Кстати, официальные удельные производительности - 1,5 DMIPS/МГц у них как раз одинаковы, так что получается, что моя оценка подтверждается и официальными данными. Тактовую частоту в 200 МГц оценил навскидку, не смотря на roadmap, просто из очевидных особенностей реализации системы команд. Смотрю - для SH2, судя по roadmap, так и есть.
Про старшие SH4/SH5, к сожалению, могу только посмотреть картинки, подробной доки нет и шансов на ее приобретение тоже немного, тем более что это скорее "индпошив". Что же касается сравнения SH4/5 и MIPS64, то не очень высокочастотные чипы MIPS64 (RM5231/61, 400 МГц, не более 1.2 Вт, реально меньше) - вполне доступны и документация на них есть. Это не контроллер, но embedded вычислитель сделать на них можно. Достать и запустить SH7785, вероятно, тоже можно. FPU у него выглядит поспециализированнее на графике и подохлее на обычной полноразрядной математике, остальное - примерно баш на баш с учетом тактовой. Периферия побогаче у Renesas.
Цитата(proba @ Jan 30 2008, 01:41) *
http://www.renesas.com/fmwk.jsp?cnt=sh7785...s/sh7785_group/
что касается подержки то тут SH и MIPS равны, gcc/gnu и linux имеют оба.
но мне кажется это дискуссия давно вышел за пределы начального вопроса так как микроконтроллеров с такими ядрами нет.

Нет "полноформатных" SH4/SH5, но MIPS-контроллеры есть. У PMC есть как экономичные 400 МГц MIPS32 - микроконтроллеры (MSP8110|20), так и более быстрые (до 1 ГГц) суперскалярные с FPU - MSP8510, это процессоры-контроллеры со встроенными 10|100|1000EthernetMAC, SDRAM int, нормальным контроллером прерываний, UART с FIFO, Watcdog/timers/SPI и т.п.. Еще Cavium делает быстрые и экономичные, в том числе многоядерные контроллеры с архитектурой как MIPS32, так и MIPS64 с кучей интерфейсов, правда, без FPU - а оно-то, IMHO, и представляет самую сильную сторону MIPS64.
Т.е. микроконтроллеры с быстрыми MIPS ядрами и встроенной периферией в виде готовых ИС есть.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jan 31 2008, 19:30
Сообщение #66


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(SIA @ Jan 30 2008, 03:19) *
Если Вы заметили, в контроллерном контексте я говорил про SH2(А) и MIPS32, как самые экономичные. Кстати, официальные удельные производительности - 1,5 DMIPS/МГц у них как раз одинаковы, так что получается, что моя оценка подтверждается и официальными данными. Тактовую частоту в 200 МГц оценил навскидку, не смотря на roadmap, просто из очевидных особенностей реализации системы команд. Смотрю - для SH2, судя по roadmap, так и есть.
Давайте, так, остановимся толко на "контроллерных" чипах,
официальными для SH2A являются 2,4DMIPS/МГц, ну и это конечно сильно завышено, но 1,8-2.0
это уже где-то ближе к реальности...
Хотелось бы услышать Ваши коментарии конкретно про чипы 7201,7203,7263,7265.
Go to the top of the page
 
+Quote Post
SIA
сообщение Jan 31 2008, 21:05
Сообщение #67


Местный
***

Группа: Свой
Сообщений: 462
Регистрация: 26-06-07
Пользователь №: 28 723



Цитата(singlskv @ Jan 31 2008, 22:30) *
Давайте, так, остановимся толко на "контроллерных" чипах,
официальными для SH2A являются 2,4DMIPS/МГц, ну и это конечно сильно завышено, но 1,8-2.0
это уже где-то ближе к реальности...
Хотелось бы услышать Ваши коментарии конкретно про чипы 7201,7203,7263,7265.

1. По поводу ядер и реальной производительности - я ее нашел только на SH2, на SH2А пока стороннего результата нету. Учитывая разницу 2 и 2А плюс доработку кодогенератора, ~1.8 DMIPS/МГц при небольшой "доводке" компилятора вполне реальны.
К примеру, для того же MIPS, даже самого простенького ядра 4Kс, в той бумаге, что я выкладывал, приведены как "тупые" 1.39 DMIPS/МГц, так и при разрешенной компилятору глубокой оптимизации, 1.8DMIPS/MГц. Для более сложных ядер там есть и 2.2, и 2.4 DMIPS/МГц для кода из-под компилятора (не "ручного").

По частотам и отчасти архитектуре на MIPS32 больше похоже более совершенное (чем SH2) семейство SH4, у них (с сайта Renesas) http://www.renesas.com/fmwk.jsp?cnt=sh4_ch...&title=SH-4
....
SH-4 family performance
The SH-4 family delivers impressive performance across a range of multimedia applications.
Benchmark Performance
Dhrystone 2.1 1.5 DMIPS / MHz (SuperH gcc)
.....
Недостаток - маловато регистров в FPU, из-за чего трудно использовать полную производительность FPU при цепочечных операциях в цикле, особенно при двойной точности, т.к. для этого нужно примерно 2,5...4*(длина конвейера) регистров.

Введение в качестве базовой операции FPU умножения матрицы на вектор - весьма рационально, у меня самого так было сделано в 1989 году. Выигрыш - существенное снижение запросного отношения (отношения числа доступов к памяти к числу полезных - алгоритмических - операций) при преобразованиях координат, выполнении ДКП/ДПФ/БПФ (особенно комплексного или вещественного с основанием 4) и на матричной алгебре типа решения СЛАУ (чем контроллер вряд ли будет заниматься).

Общее резюме - архитектура целочисленных ядер SH переусложнена, что снижает эффективность ее реализации.
Пока по рациональности архитектуры, похоже, что лучше MIPS ядер реально нет.

2. На 7265 доки пока нет, комментировать пока нечего. Выигрыш от двуядерности в среднем порядка 1.5, но иногда может быть даже больше двойного, если удается разрезать задачу поровну, за счет сокращения числа переключений контекста.
3. 7263 - "Все в одном", вплоть до CD-ROM декодера. Детально периферию не смотрел, видно, что он заточен под аудио-функции (необязательно суперкачественные, но чтобы было все - и прием данных с Toslink/AES, и с CD, и передискретизация, и всевозможные пролоджики/декодирования - 5.1 на процессоре).
4. 7201 - в целом вполне симпатичный камень. Только шин многовато - сложнее управление периферией, а так вполне.
Вообще, нужно смотреть по задаче. Если реально ничего особенного в именно вычислительном отношении не требуется - то что SH, что MIPS - это пальба из довольно громоздкой и прожорливой пушки по воробьям. При аккуратном подходе для преимущественно логических задач хватит недорогого и беспроблемного ARM, а то и быстрого х51. Реакция на прерывания у них быстрая. Лично был свидетелем того, что замена кода с кучей проверок и switch на табличноуправляемый конечный автомат позволила С8051F131 на неполной тактовой справиться с задачей, которую откровенно не успевал отрабатывать PC104 smile.gif
5. Все упомянутые Вами процы Romless и работают от SDRAM, так что это (как и упомянутые мною MIPS) уже не совсем контроллеры, скорее встраиваемые процессоры. Более существенно то, что в описании, наскоро глянув с экрана, я не нашел (может и есть, но не заметил) или принудительного удержания в кэше команд кода обслуживания прерываний или наоборот, блокировки кэша для предотвращения замены его содержимого. Если это так, то из-за этого не только будет замедляться реакция на прерывание, но и увеличатся потери на замещение кэша после прерываний. Перезагрузка линеек кэша вносит задержку переключения контекста куда больше, чем время загрузки/сохранения регистров.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jan 31 2008, 22:12
Сообщение #68


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(SIA @ Feb 1 2008, 00:05) *
5. Все эти процы Romless и работают от SDRAM, так что это уже не совсем контроллер, скорее встраиваемый процессор. В описании, наскоро глянув с экрана, я не нашел (может и есть, но не заметил) принудительного удержания в кэше команд кода обслуживания прерываний или наоборот, блокировки кэша для предотвращения замены его содержимого. Если это так, то из-за этого не только будет замедляться реакция на прерывание, но и увеличатся потери на замещение кэша после прерываний. Перезагрузка линеек кэша вносит задержку переключения контекста куда больше, чем время загрузки/сохранения регистров.
Romless, но все же, оптимально держать обработку прерываний в SRAM, а там кеш
не играет никакой роли...
Вы пропустили в своем описании чип 7203, а он ИМХО, как раз самый интересный.....
Go to the top of the page
 
+Quote Post
SIA
сообщение Jan 31 2008, 22:22
Сообщение #69


Местный
***

Группа: Свой
Сообщений: 462
Регистрация: 26-06-07
Пользователь №: 28 723



Цитата(singlskv @ Feb 1 2008, 01:12) *
Romless, но все же, оптимально держать обработку прерываний в SRAM, а там кеш
не играет никакой роли...
Вы пропустили в своем описании чип 7203, а он ИМХО, как раз самый интересный.....

Если процессору можно запретить при этом трогать кэш, чтобы не было вытеснения - то да, это оправданно.
Завтра внимательнее посмотрю, гляну 7203 - но ядро у него на первый взгляд вроде такое же как у 7201, разница в периферии.
Но честно, не зная задач оценивать трудно. А как "универсальный процессор на все случаи жизни" - таких, IMHO, не бывает.
Нелишне припомнить, что "Буран" успешно был посажен 16-битным (если мне не изменяет память) процессором с производительностью менее 10 MIPS и памятью 128К.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jan 31 2008, 22:59
Сообщение #70


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(SIA @ Feb 1 2008, 01:22) *
Если процессору можно запретить при этом трогать кэш, чтобы не было вытеснения - то да, это оправданно.
Не очень понимаю о чем речь, для SRAM работающей на частоте проца наличие/отсутствие
кеша абсолтно пофиг... или я в чем то заблуждаюсь ?
Цитата
Завтра внимательнее посмотрю, гляну 7203 - но ядро у него на первый взгляд вроде такое же как у 7201, разница в периферии.
ядро одинаковое, разные переферия и частоты ядра, ИМХО, просто очень правильный
чип/"контроллер" из топовых и при этом относительно недорогих...
Цитата
Но честно, не зная задач оценивать трудно. А как "универсальный процессор на все случаи жизни" - таких, IMHO, не бывает.
Нелишне припомнить, что "Буран" успешно был посажен 16-битным (если мне не изменяет память) процессором с производительностью менее 10 MIPS и памятью 128К.
Дык и AVRом наверное можно было бы посадить smile.gif
Ну а если говорить о задаче, пусть это будет замена промPC...
То есть не промПЦ в чистом виде, а замена промПЦ+(ну то что удасться впихнуть)....
Go to the top of the page
 
+Quote Post
SIA
сообщение Jan 31 2008, 23:16
Сообщение #71


Местный
***

Группа: Свой
Сообщений: 462
Регистрация: 26-06-07
Пользователь №: 28 723



Цитата(singlskv @ Feb 1 2008, 01:59) *
Не очень понимаю о чем речь, для SRAM работающей на частоте проца наличие/отсутствие
кеша абсолтно пофиг... или я в чем то заблуждаюсь ?

Дело в том, что у практически всех быстрых процов и данные и команды "по умолчанию" обязательно попадают в кэши, а "напрямую" код не исполняется, если нет возможности выключить кэш. Предположим, произошло прерывание. В кэше кода подпрограммы обслуживания нет (он давно затерт основной программой). Если кэш не выключить, начнется перезапуск контроллера подкачки памяти, закачка в кэш кода подпрограммы прерывания (и, с довольно большой вероятностью, затирание части кода основной задачи). Потом этот затертый кусок кода кэш-контроллеру надо будет опять загрузить. Поэтому, если программа обслуживания прерывания короткая, на время ее исполнения кэш лучше вообще отключать, если есть такая возможность.

Цитата(singlskv @ Feb 1 2008, 01:59) *
Ну а если говорить о задаче, пусть это будет замена промPC...
То есть не промПЦ в чистом виде, а замена промПЦ+(ну то что удасться впихнуть)....

А смысл ? Разработка в целом будет долгой и соответственно достаточно дорогой, при тираже до ~50-100 шт. рентабельнее найти недорогую плату PromPC. Они более-менее приличные от $300-400 начинаются, и потребляют не так уж много. Если задача не слишком сложная - PTS DOS и вперед, при грамотной собственной программе машина виснуть не будет, и деньги от заказчиков пойдут быстрее, чем если возиться со своим железом.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jan 31 2008, 23:36
Сообщение #72


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(SIA @ Feb 1 2008, 02:16) *
Дело в том, что у практически всех быстрых процов и данные и команды "по умолчанию" обязательно попадают в кэши, а "напрямую" код не исполняется, если нет возможности выключить кэш. Предположим, произошло прерывание. В кэше кода подпрограммы обслуживания нет (он давно затерт основной программой). Если кэш не выключить, начнется перезапуск контроллера подкачки памяти, закачка в кэш кода подпрограммы прерывания (и, с довольно большой вероятностью, затирание части кода основной задачи). Потом этот затертый кусок кода кэш-контроллеру надо будет опять загрузить. Поэтому, если программа обслуживания прерывания короткая, на время ее исполнения кэш лучше вообще отключить.
Ээээ... логику работы кеша которую Вы описываете, понимаю, в принципе,
не очень понимаю как это будет сказываться на работе прерывания обработка которого
лежит в SRAM, ну не будет там задержек в принципе, ну и если я чего-нить затру в области кеш
основной проги то не очень страшно, ну и кеш конечно можно выключать на время...
Цитата
А смысл ? Разработка в целом будет достаточно дорогой, при тираже до ~50-100 шт. рентабельнее найти недорогую плату PromPC. Они от $300-400 начинаются.

Разработка софта что к ПромПЦ что к своей плате стоит намного больше чем стоимость одной
платы, так что здесь мало что съекономишь, но можно сделать просто более "правильное"
решение.... ну и тиражи не обязательно ограничиваются 50-100шт.....
Go to the top of the page
 
+Quote Post
SIA
сообщение Jan 31 2008, 23:48
Сообщение #73


Местный
***

Группа: Свой
Сообщений: 462
Регистрация: 26-06-07
Пользователь №: 28 723



Цитата(singlskv @ Feb 1 2008, 02:36) *
Разработка софта что к ПромПЦ что к своей плате стоит намного больше чем стоимость одной
платы, так что здесь мало что съекономишь, но можно сделать просто более "правильное"
решение.... ну и тиражи не обязательно ограничиваются 50-100шт.....

Дело в сроке. Пока свое железо отладишь, в корпуса засунешь, интерфейсы подведешь - деньги и время на разработку уйдут. А на промПК можно сразу софт клепать

Цитата(singlskv @ Feb 1 2008, 02:36) *
Ээээ... логику работы кеша которую Вы описываете, понимаю, в принципе,
не очень понимаю как это будет сказываться на работе прерывания обработка которого
лежит в SRAM, ну не будет там задержек в принципе.

Дело не в SRAM, задержку внесет контроллер кэша - ему же, прежде чем процессор начнет работать, целую строку (не одно слово) загрузить надо. Впрочем, для 200 МГц процессора в абсолютном измерении это немного, не больше нескольких сотен наносекунд (хотя и это порядка сотни команд проца).
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jan 31 2008, 23:58
Сообщение #74


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(SIA @ Feb 1 2008, 02:48) *
Дело в сроке. Пока свое железо отладишь, в корпуса засунешь, интерфейсы подведешь - деньги и время на разработку уйдут. А на промПК можно сразу софт клепать
На промПЦ софт уже есть,
Очень хотца сделать все на своем железе и более правильно...
Цитата
Дело не в SRAM, задержку внесет контроллер кэша - ему же, прежде чем процессор начнет работать, целую строку (не одно слово) загрузить надо. Впрочем, для 200 МГц процессора в абсолютном измерении это немного, не больше нескольких сотен наносекунд (хотя и это порядка сотни команд проца).
А был ли мальчик ?
Вы уверенны что проц будет ждать загрузки всей строки в кеш перед тем как начать
исполнять инструкции ?
ИМХО, здесь паузы быть не должно...
Go to the top of the page
 
+Quote Post
SIA
сообщение Feb 1 2008, 01:02
Сообщение #75


Местный
***

Группа: Свой
Сообщений: 462
Регистрация: 26-06-07
Пользователь №: 28 723



Цитата(singlskv @ Feb 1 2008, 02:58) *
Вы уверенны что проц будет ждать загрузки всей строки в кеш перед тем как начать
исполнять инструкции ?
ИМХО, здесь паузы быть не должно...

Загрузка линейки кэша начинается не с произвольного адреса, а с адреса, кратного длине линейки. Поэтому, если требуемый код начинается не с адреса первого слова - то все равно нужно будет дожидаться, чтобы контроллер кэша загрузил предшествующие даже при "умном" контроллере кэша, не дожидающемся полного заполнения линейки. Частичная загрузка линейки сильно усложняет (и замедляет работу) автомата загрузки, поэтому ее практически никогда не предусматривают, пока длина линейки меньше ~32...64 слов. В описании я указаний на это не нашел.
В быстрых процессорах не все так очевидно, многие сложившиеся исторически ранее приемы работы на них "не в кассу". Например, сильно развитая система команд, длинные конвейеры и куча слоев кэшей на задачах реального времени, где в коде между плохо предсказуемыми переходами всего по 5-10 команд, запросто приводят не к повышению системного быстродействия, а в основном лишь к повышению энергопотребления. Для рилтаймовой машины "навороты" часто вредны, а наибольшую пользу приносит предельно быстрая (по полному времени доступа!) память с небольшим (2...4) расслоением плюс процессор без "кучерявости", но с коротким конвейером, мощным АЛУ и максимальной частотой. При создании мейнфреймов это все было хорошо изучено еще 25-35 лет назад.
Go to the top of the page
 
+Quote Post

12 страниц V  « < 3 4 5 6 7 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 5th July 2025 - 14:46
Рейтинг@Mail.ru


Страница сгенерированна за 0.02646 секунд с 7
ELECTRONIX ©2004-2016