Jump to content

    

Отвечу на вопросы по PowerQUICC

Доброго времени суток.

 

Имею некоторый опыт, готов ответить на вопросы по PowerQUICC процессорам (серия MPC8xxx фирмы Freescale).

 

Кому интересно - ссылка на сравнительную таблицу продуктов PowerQUICC на сайте freescale

 

http://www.freescale.com/files/32bit/doc/b...RDSDPRODSUM.pdf

Share this post


Link to post
Share on other sites

Вы представитель freescale или просто поработали с этими процессорами? С какими конкретно? О чем вас можно спрашивать: о программировании, о схемотехние\применении или о закупках? Или обо всем? :)

Share this post


Link to post
Share on other sites

Работал, и продолжаю. С какими конкретно не особо важно, т.к. они все внутри семейств более-менее похожи. Некоторые вообще один и тот-же кристалл внутри содержат. По семействам - семейства MPC8xx, MPC82xx, MPC83xx. Старшие семейства MPC85xx и MPC86xx тоже, в немного меньшей степени. Спрашивать можно технические вопросы.

 

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

Share this post


Link to post
Share on other sites

Ну и как оно, сильно там глючные прошивки их QUICC engin-а?

Патчей много надо накладывать?

 

Работать с ними можно только через линукс или есть возможность сгенерить драйвера под что нибудь помельче?

 

Работал, и продолжаю. С какими конкретно не особо важно, т.к. они все внутри семейств более-менее похожи. Некоторые вообще один и тот-же кристалл внутри содержат. По семействам - семейства MPC8xx, MPC82xx, MPC83xx. Старшие семейства MPC85xx и MPC86xx тоже, в немного меньшей степени. Спрашивать можно технические вопросы.

 

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

Share this post


Link to post
Share on other sites
Ну и как оно, сильно там глючные прошивки их QUICC engin-а?

Патчей много надо накладывать?

Не знаю как PowerQUICC,

но мы уже 10 лет плотно работаем

с MC68MH360, и за все время

был замечен только один мелкий,

несущественный глючек.

А в остальном работает, как написано.

 

MC68MH360 - это тот же QUICC (книжка

с описанием этого режима общая для обоих

процессоров), только основное ядро CPU32.

Share this post


Link to post
Share on other sites
Ну и как оно, сильно там глючные прошивки их QUICC engin-а?

Патчей много надо накладывать?

Да не особо. Есть некоторые вещи, про которые в Errata в явном виде написано что "не работает, используйте патч".

В новых процессорах начиная с MPC8360 поставили новую коммуникационный сопроцессор QE, который полностью документирован, сорцы известны, есть полный набор средств для писания собственных микрокодов.

 

Работать с ними можно только через линукс или есть возможность сгенерить драйвера под что нибудь помельче?

Ну почему только линукс, есть еще VxWorks и QNX. :)

Шутка. На старые процессоры типа MPC8xx врядли вообще имеет смысл линукс напяливать, там все обычно так пишется. Ну и для любых других процессоров интерфейс к железу полностью описан, поэтому при желании можно свое standalone приложение написать или собственную операционную систему даже нагородить. Линукс там как бесплатное приложение, потому что иначе тяжело. IP-stack допустим в линуксе есть, ну и еще много чего полезного и т.д.

 

 

MC68MH360 - это тот же QUICC (книжка с описанием этого режима общая для обоих процессоров), только основное ядро CPU32.

 

Да, MPC860 (первый из PowerQUICC-ов) был сделан именно из MC68360 методом замены ядра на PowerPC. Производительность в несколько раз выше.

Ну и плюс частоту подняли, напряжение питания опустили до 3.3V, добавили Fast Ethernet, как-то приделали интерфейс SDRAM.

 

Сейчас вместо 860 лучше использовать 866, если браться за новый дизайн.

 

68360 это вообще ископаемое, этому процессору лет 15 примерно, его давно уже собираются бросить выпускать, но конкретная дата "End of Life" пока вроде бы не названа. Хорошая машинка была, но для новых разработок не советую.

Share this post


Link to post
Share on other sites
Да не особо. Есть некоторые вещи, про которые в Errata в явном виде написано что "не работает, используйте патч".

В новых процессорах начиная с MPC8360 поставили новую коммуникационный сопроцессор QE, который полностью документирован, сорцы известны, есть полный набор средств для писания собственных микрокодов.

 

Да набор то я видел, вернее набора то и не увидел.

Есть какой-то CommExpert Software который как я понял просто конфигуратор уже прописанных в ROM микрокодов.

А чем сами микрокоды писать? Для С-и там есть компилятор?

Тулза ихняя "Run Time CE" тож не на уровне команд отлаживает, а так, на каком-то прикладном. Так чем по шагам отлаживаете микрокод?

 

Ну почему только линукс, есть еще VxWorks и QNX. :)

Шутка. На старые процессоры типа MPC8xx врядли вообще имеет смысл линукс напяливать, там все обычно так пишется. Ну и для любых других процессоров интерфейс к железу полностью описан, поэтому при желании можно свое standalone приложение написать или собственную операционную систему даже нагородить. Линукс там как бесплатное приложение, потому что иначе тяжело. IP-stack допустим в линуксе есть, ну и еще много чего полезного и т.д.

 

В CommExpert Software упоминается только генерация драйверов под линукс. Неужто вы писали сами драйвера под не линуксы.

Особенно прикалывает реализация у них PPP и мультилинк PPP.

Они что, и авторизацию там реализовали типа MS CHAP?

А че тогда весь TCP стек сразу не сделали на QUICC?

Вон, Wiznet легко делает. А может есть микрокод хотя бы для стека ARP/DHCP/ICMP/IP/TCP ?

 

Как то мутноваты перспективы освоения и применения этого QUICC.

Не легче ли все таки ARM Cortex-A8 с FPGA применить. Или у вас просто не было выбора?

Цены у QUICC просто дикие.

Share this post


Link to post
Share on other sites
Цены у QUICC просто дикие.

Да я бы не сказал что дикие. Младшие MPC831x стоят от $15. Или на рынке есть еще какие чипы 400MHz+, DDR2, PCI, PCIe, USB HS, SATA, GMAC за $15?

Сами чипы хороши, документация очень внятная и саппорт у QUICC - отличный, afaik , часть команды саппорта - в Новосибирске. Отвечают на вопросы быстро, грамотно, по делу. Причем люди не леняться написать тест именно для запрашиваемой конкретной проблемы и как-то я даже в выходные ответ получил. Поэтому - лично от меня - Новосибирску "большой риспект и уважуха" :). :a14:

Share this post


Link to post
Share on other sites

А, типа намекаете, что беспристрастной оценки юзабельности чипов я здесь не получу? :biggrin:

Здесь ребята из суппорта.

 

На Freescale я тож не жалуюсь. Тех поддержка оперативная.

 

А насчет списка DDR2, PCI, PCIe, USB HS, SATA, GMAC я и хотел бы узнать насколько это реализуемо все в одном чипе.

Если сложить все максимальные потоки этих интерфейсов то и Intel® Core™ i7 не хватит.

Вот и интересно чем жертвуют, и где предел эффективного использования QUICC в коммуникационной области.

 

 

Да я бы не сказал что дикие. Младшие MPC831x стоят от $15. Или на рынке есть еще какие чипы 400MHz+, DDR2, PCI, PCIe, USB HS, SATA, GMAC за $15?

Сами чипы хороши, документация очень внятная и саппорт у QUICC - отличный, afaik , часть команды саппорта - в Новосибирске. Отвечают на вопросы быстро, грамотно, по делу. Причем люди не леняться написать тест именно для запрашиваемой конкретной проблемы и как-то я даже в выходные ответ получил. Поэтому - лично от меня - Новосибирску "большой риспект и уважуха" :). :a14:

Share this post


Link to post
Share on other sites
А, типа намекаете, что беспристрастной оценки юзабельности чипов я здесь не получу? :biggrin:

Здесь ребята из суппорта.

Да нет, ни на что особенное я не намекал, просто выразил благодарность :).

 

А насчет списка DDR2, PCI, PCIe, USB HS, SATA, GMAC я и хотел бы узнать насколько это реализуемо все в одном чипе.

Да вроде неплохо реализовано, шина CSB внутри довольно эффективная - "честная" матрица, пропускная до 2,66Гбайт/сек (64 бита/333МГц), поддержка аппаратной когерентности (и это реально работает - проверил и использую), контроллер памяти тоже на уровне - 64/72 бит DDR2-400 с контролем четности (средние и старшие модели, младшие - 32/36 бит). Так что - обмен с контроллерами и памятью вполне должен справиться. Узким местом скорее будет ядро, хотя оно, на мой взгляд, и побыстрее чем ARM9 будет, обладает "честной" суперскалярностью - до 2-х инструкций за такт. Если я не ошибаюсь - старшие QUICC вообще двухядерные.

Если сложить все максимальные потоки этих интерфейсов то и Intel® Core™ i7 не хватит.

Вот и интересно чем жертвуют, и где предел эффективного использования QUICC в коммуникационной области.

CoreI7 - отнюдь не вершина производительности для коммуникацонных применений. Там где предел - там другие чипы ставят - типа последних MIPS-ов от RMI или IXP2800 от Интела. Цена у них тоже "другая". Мне кажется, что для домашнего гигабитного маршрутизатора или NAS - PowerQUICC за 15$ - самое оно. Ну может чипы и не идеальные, но давайте Ваш пример - хотя бы с набортным GMAC за сравнимые деньги?

Share this post


Link to post
Share on other sites

Ну закидали вопросами. Я думал чахлый раздел, хотел оживить слегка.

Да набор то я видел, вернее набора то и не увидел.

Есть какой-то CommExpert Software который как я понял просто конфигуратор уже прописанных в ROM микрокодов.

А чем сами микрокоды писать? Для С-и там есть компилятор?

Тулза ихняя "Run Time CE" тож не на уровне команд отлаживает, а так, на каком-то прикладном. Так чем по шагам отлаживаете микрокод?

Там какая-то специальная версия CodeWarrior-а для писания микрокодов. Сам не писал. Си-компилятора не видел, то что нам показывали выглядело как какой-то собственный RISC-образный ассемблер. Отлаживали с симуляторе.

 

В CommExpert Software упоминается только генерация драйверов под линукс. Неужто вы писали сами драйвера под не линуксы.

Линукс типа бесплатный и ничейный, поэтому под него BSP дают и драйвера пишут. А под все другие ос драйвера пишут разработчики ОС. У виндривера все свое.

 

А че тогда весь TCP стек сразу не сделали на QUICC?

Вон, Wiznet легко делает. А может есть микрокод хотя бы для стека ARP/DHCP/ICMP/IP/TCP ?

Интересный вопрос. Не знаю. Наверное, это QE только недавно появилось и еще не успели все написать. Надо спросить.

 

Не легче ли все таки ARM Cortex-A8 с FPGA применить. Или у вас просто не было выбора?

Не сталкивался. Всякими 8-бит контроллерами в основном развлекался.

 

Сами чипы хороши, документация очень внятная и саппорт у QUICC - отличный, afaik , часть команды саппорта - в Новосибирске. Отвечают на вопросы быстро, грамотно, по делу. Причем люди не леняться написать тест именно для запрашиваемой конкретной проблемы и как-то я даже в выходные ответ получил. Поэтому - лично от меня - Новосибирску "большой риспект и уважуха" :). :a14:

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

Share this post


Link to post
Share on other sites
Ну я бы не сказал что все так безоблачно. Косяков всяких в документации полно. Сапорт в россии есть, но писать надо на английском.

Ну куда ж без "косяков" :). Есть такое дело - встречаются. Но информации - достаточно, проект - "поднялся и завелся". Жаль информацию по BDM не открывают - через boundary scan грустно начальный загрузчик программировать.

Share this post


Link to post
Share on other sites

Есть куча вопросов по 8240 и 8245. Все вопросы практически нубские :(.

 

1) Доступный JTAG adapter, существует ли?

2) Если адаптер все же появился какой софт надо использовать?

3) 8245 стоит на PCI плате, возможен ли debug в реалтайме?

4) Помимо 8245 на плате стоит РОМка как вычитать и записать ее?

 

Вроде простые действия но по моторам какая-то таинственность и непонятность.

Edited by darlock

Share this post


Link to post
Share on other sites
Жаль информацию по BDM не открывают - через boundary scan грустно начальный загрузчик программировать.

BDM который? MPC8xx в мануале описан. Если про ты JTAG/COP который в MPC82xx и старше, то да, не дают. Но вроде бы это особенно и не нужно, инициализируешь память, кладешь туда код и шьешь свою флешку самим процессором.

 

1) Доступный JTAG adapter, существует ли?

2) Если адаптер все же появился какой софт надо использовать?

Freescale-овский софт называется CodeWarrior. Компилятор, отладчик, программатор флеша и т.д. в одном флаконе. Но этот зверь поддерживает всего несколько адаптеров, Codewarrior USB TAP например. Этот адаптер стоит баксов триста по-моему. Сам Codewarrior тоже денег стоит, можно демо-лицензию попросить.

 

А вообще все от софта зависит, известно что есть в природе и другой софт, у него свой список поддерживаемых адаптеров.

 

3) 8245 стоит на PCI плате, возможен ли debug в реалтайме?

Через PCI в смысле? Не знаю, не извращался. А USBTAP конечно можно воткнуть, ему-то какая разница.

 

4) Помимо 8245 на плате стоит РОМка как вычитать и записать ее?

Да хоть тем-же Codewarrior-ом. Защиты никакой нету.

 

Кстати, 8245 тоже довольно старый девайс и несколько своеобразный. Зачем он тебе?

Share this post


Link to post
Share on other sites

MPC8245 до сих пор используется.

У меня задача более интересная и несколько обратная проектированию, есть готовая PCI (32 бита 33 МГц) плата. На плате стоит 8245, 2 мегабитная ромка, RAM и вспомогательная цифровая обвязка. Задача немного модифицировать РОМку т.к. существующая версия фирмвари не соответсвует решаемым задачам.

Из документации на проц понятно что в случае когда чип сидит на шине PCI , возможна адресация внтуренней (находящейся на плате RОМ и RАМ) памяти, т.е. возможен вариант отладки без JTAG.

Хотелось бы понять узнать, если опыт работы с подобными конструкциями на PCI шине.

 

Существуют ли JTAG адаптеры помимо USB TAP COP позволяющие отлаживаться в реалтайме?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this