FAE 0 20 мая, 2013 Опубликовано 20 мая, 2013 (изменено) · Жалоба Поднял СНК на ядре openMsp430, взятом c opencores, на альтеровском циклоне-3. Проект полностью рабочий, отсимулированный, съимплементированный и протестированный "на железе". Занимает приблизительно 8% ресурсов fpga EP3C55F484C8. Имеется документация, содержащая пошаговые инструкции по выполнению. Может использоваться как замена внешнего микроконтроллера. Возможно, заинтересует так же студентов в качестве основы для курсовика. Скачивать отсюда: http://vk.com/doc53320565_184197403 Хотелось бы также получить отклик от тех, кому этот проект оказался полезным. Изменено 20 мая, 2013 пользователем FAE Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DASM 0 20 мая, 2013 Опубликовано 20 мая, 2013 · Жалоба Немного оффтопик, но хочу Вас как специалиста спросить. Почему ядра типа мсп, 51 и подобные кушают так много LE? Ядро Ниос2 с кешами, защитой памяти, и кучкой еще чего насколько я помню в 3000 ле лезет, а тут 5000 на детский процессор. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 40 20 мая, 2013 Опубликовано 20 мая, 2013 · Жалоба Немного оффтопик, но хочу Вас как специалиста спросить. Почему ядра типа мсп, 51 и подобные кушают так много LE? Ядро Ниос2 с кешами, защитой памяти, и кучкой еще чего насколько я помню в 3000 ле лезет, а тут 5000 на детский процессор. Ну наверное потому, что Nios II разрабатывался Альтерой с учетом архитектурных особенностей целевых семейств ПЛИС, а "мсп, 51 и подобные" - нет. :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Tiro 0 20 мая, 2013 Опубликовано 20 мая, 2013 · Жалоба Немного оффтопик, но хочу Вас как специалиста спросить. Почему ядра типа мсп, 51 и подобные кушают так много LE? Ядро Ниос2 с кешами, защитой памяти, и кучкой еще чего насколько я помню в 3000 ле лезет, а тут 5000 на детский процессор. Наверняка что-то в командах процика Ниос реализовывалось комплементарными операциями с ограничением на разрядность операндов. Как раз случай, когда ненужная единичка добавляет вычислительный блок или разряд. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
FAE 0 21 мая, 2013 Опубликовано 21 мая, 2013 (изменено) · Жалоба Немного оффтопик, но хочу Вас как специалиста спросить. Почему ядра типа мсп, 51 и подобные кушают так много LE? Ядро Ниос2 с кешами, защитой памяти, и кучкой еще чего насколько я помню в 3000 ле лезет, а тут 5000 на детский процессор. Уважаемый DASM, текущая конфигурация занимает всего 4443 LE, что составляет 8% LE EP3C55F, из них 3375 комбинаторных LE и 2504 регистров. Причем это все - для процессора, перифирии и блока отладки. Корректно ли сравнивать коммерческий продукт, созданный производителем FPGA командой профессионалов и оптимизированный на уровне логических ячеек и бесплатную поделку, созданную одним человеком, скорее всего, в бытность его студентом, и написанную без привязки к конкретной архитектуре на верилоге? Мне кажется, достойно удивления, что эта штука работает, причем на достаточно высокой частоте, и занимает вполне допустимое количество ресурсов. Почему такой подход в некоторых случаях предпочтительней, чем использование микроблейза или ниоса? Ответ очевиден - универсальность. Вы не привязаны к конкретной аппаратной платформе. Поэтому вы можете, например, использовать альтеру для прототипирования, а коммерческое устройство выпустить, например, на актеле (microsemi). К тому же можно обойтись стандартным toolchain_ом GCC и получить удобную и привычную среду разработки ПО. Это удобно, поскольку стандартные средства разработки как Xilinx, так и Altera громоздки, тупы и, в общем случае, дороги (последний пункт к России не относится). Поэтому сравнивать надо с имеющимися универсальными софт-процессорными ядрами, написанными на языке высокого уровня. А в этом сегменте с этим ядром все в порядке. Можно сравнить и с 32х-разрядными системами, напр. LEON и с 8-разр, напр. тот же 51. Но 8-разрядные системы мертвы, а 32х-разр. для моих целей избыточны. (Нужна 32х-разрядная система - выбирай встроенный ARM и ни очем не думай). Поэтому я сосредоточил свой выбор на 16-разр. системе. Что здесь есть? Например, ядро 80186 намного более объемное, к тому же имеет очень невысокую тактовую частоту (В 2004г. в недоброй памяти фирме "СКБ интегральных систем" для APA1000 у нас съимплементировалось всего на 6 МГц и мы были страшно этому рады. ) Всякие PICи и AVRы имеют ублюдочную архитектуру и нищебродскую систему команд. В этом отношении msp430, являясь потомком PDP-11 отличается от указанных процессоров в лучшую сторону. Он имеет неплохую архитектуру, богатую, но компактную систему команд, а адресация к портам в/в как к ячейкам памяти, на мой взгляд, удобна для СнК. Лирическое отступление: я еще помню нашу кафедральную СМ-4, середины 80х годов прошлого века, занимавшую 4 стойки, имевшую жесткий диск на 5МБ (именно МБ, а не ГБ !!!), шумяшую как реактивный самолет и зависающую каждые пол-часа. А теперь 90% из всего этого можно упаковать в размер меньше квадратного миллиметра и это уже кажется много !!! Прогресс, однако! Изменено 21 мая, 2013 пользователем FAE Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DASM 0 22 мая, 2013 Опубликовано 22 мая, 2013 · Жалоба Не понимаю столь гневного ответа.Безусловно, работа заслуживает уважения. Я бы на данном моменте своего опыта не смог. Интерес был только в причине.Причина — оптимизация, понял, спасибо. Просто я думал, что может причиной является именно архитектура мсп ( какая нибудь неортогональность команд или что то в этом роде). Так что не воспринимайте как подколку ни в коем разе. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
FAE 0 22 мая, 2013 Опубликовано 22 мая, 2013 · Жалоба Не понимаю столь гневного ответа.Безусловно, работа заслуживает уважения. Я бы на данном моменте своего опыта не смог. Интерес был только в причине.Причина — оптимизация, понял, спасибо. Просто я думал, что может причиной является именно архитектура мсп ( какая нибудь неортогональность команд или что то в этом роде). Так что не воспринимайте как подколку ни в коем разе. DASM, если задел ваши чувства, искренне прошу меня извинить. Никакого гнева ни на вас, ни на кого-то другого у меня не было и нет. Наоборот, хотел ответить подробно и аргументированно. Видимо, не получилось :( Что касается самой работы - ее сложность невелика, т.к. я пользовался практически всем готовым. Самому пришлось написать только верхний модуль, тестбенч и один программный тест. Основной мой вклад, на мой взгляд, это то, что я подробно задокументировал все шаги выполнения проекта. Так что прошу не обижаться и успехов в работе! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SpyBot 0 30 мая, 2013 Опубликовано 30 мая, 2013 · Жалоба DASM, если задел ваши чувства, искренне прошу меня извинить. Никакого гнева ни на вас, ни на кого-то другого у меня не было и нет. Наоборот, хотел ответить подробно и аргументированно. У вас получился замечательный, подробный и интересный ответ! Большое вам спасибо за него и вообще за тему, прочитал с большим удовольствием! Никакого гнева я в нем не увидел :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
semperante 0 31 мая, 2013 Опубликовано 31 мая, 2013 · Жалоба Прикольная штука, спасибо автору. Интересно, нет ли чего подобного для PIC16? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
FAE 0 31 мая, 2013 Опубликовано 31 мая, 2013 · Жалоба Прикольная штука, спасибо автору. Интересно, нет ли чего подобного для PIC16? На опенкорес я видел несколько ядер PIC16. Но выбирая встроенный процессор для своих целей я остановился на MSP430. Возможно, кто-то захочет поднять PIC16 и поделиться результатом. Единственная разумная причина для этого, на мой взгляд - обеспечение совместимости с ранее написанным софтом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
semperante 0 31 мая, 2013 Опубликовано 31 мая, 2013 (изменено) · Жалоба На опенкорес я видел несколько ядер PIC16. Но выбирая встроенный процессор для своих целей я остановился на MSP430. Возможно, кто-то захочет поднять PIC16 и поделиться результатом. Единственная разумная причина для этого, на мой взгляд - обеспечение совместимости с ранее написанным софтом. Да, так и есть. В проекте используется связка Циклон 3 + PIC-контроллер. Интересна возможность переноса существующего кода для МК внутрь ПЛИС. Изменено 31 мая, 2013 пользователем SemperAnte Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
FAE 0 31 мая, 2013 Опубликовано 31 мая, 2013 · Жалоба Да, так и есть. В проекте используется связка Циклон 3 + PIC-контроллер. Интересна возможность переноса существующего кода для МК внутрь ПЛИС. Если код написан на C, то, наверное, тип процессора не настолько критичен, чтобы его нельзя было заменить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x736C 0 1 июня, 2013 Опубликовано 1 июня, 2013 · Жалоба Почему такой подход в некоторых случаях предпочтительней, чем использование микроблейза или ниоса? Ответ очевиден - универсальность. Еще бы добавил: BSD лицензия, позволяющая его использовать в коммерческих закрытых приложениях. Далеко не все процессоры на opencores.org идут под этой лицензией. А точнее их почти нет. Не говоря уже о NIOS, который платный. Не уверен, что большинство инженеров на электрониксе, или фирмы в которых они работают, приобретали лицензию. Несмотря на то, что цена разумная. В общем цену в сравнение тоже надо включать. Наш российский инженер по дурной привычке этого не делает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kuzmi4 0 3 июня, 2013 Опубликовано 3 июня, 2013 · Жалоба ..Не говоря уже о NIOS, который платный. ... NIOSII версии s - бесплатно раздают, и думаю у него производительность получше будет Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 40 3 июня, 2013 Опубликовано 3 июня, 2013 · Жалоба NIOSII версии s - бесплатно раздают, и думаю у него производительность получше будет Бесплатный NIos II - это Economy (версия "e"). А версии "s" и "f" - платные. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться