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

 
 
> Spartan 3E SK, вопрос по памяти
Георгий 2
сообщение Jan 19 2010, 09:36
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Доброго времени суток, подскажите пожалуйста, на платке Spartan 3E SK есть флешка, как я понимаю в нее можно залить прогу и программировать ПЛИСину с нее без подключения к компу. Програмить ПЛИСину можно через обычный USB там есть JTAG эмулятор. Подскажите как зашить прогу во флешку, возможно ли это через USB или необходимо через JTAG?


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
5 страниц V   1 2 3 > »   
Start new topic
Ответов (1 - 61)
at89c51ed2
сообщение Jan 19 2010, 15:29
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 Георгий 2
А я Вас тоже самое спрашиваю в другой ветке (про ISE). Насколько я понимаю ситуацию, и исходя из здравого смысла и логики, такая возможность должа быть. Думаю, что сделать это можно и через USB (на "ките" есть специальный загрузчик из процессора Cypress и CPLD XC2C256) Схема усиленно скрывалась, но её расковыряли и сейчас можно такой загрузчик приобрести (здесь где то я об этом читал). Как видно из картинки (это 14 лист схемы "кита") тут приведена схема JTAG цепочки. Если открыть в ISE iMACT (слева, где iMPACT Flows) Boundary Scan, то откроется как раз эта цепочка - XC3S500E->XCF04s->XC2C64. Т.е. надо выбрать файл *.mcs и залить в XCF04. Всё заливается, верифицируется, скачивается обратно, но грузиться не хочет. Режим М0-М2 стоит как MS (все перемычки установлены). Думаю, что можно и через внешний JTAG - установить М0-М2 в положение JTAG (стоит только перемычка М1) и на внешний JTAG подавть от программатора. Программатор такой можно сделать самому, даже слегка переделав ByteBlaster, у меня были такие мысли, но хозяин дал "родной" программатор ХИЛЫХ, через LPT. У меня вопрос - а каким типом файлов шить CPLD XC2c64 (то, что у альтеры было *.pof)? У меня сейчас там стоит "bypass", т.е. видимо я исключил этот девайс из цепочки. Может это глупый вопрос, а куда в цепочку включён JTAG Header? И что такое в цепочке FX2 (замкнутое перемычкой)? А можно ли где нибудь нарыть ответную часть к большому разъёму, и как она хотя бы называется то?

Сообщение отредактировал at89c51ed2 - Jan 19 2010, 15:32
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Jan 20 2010, 05:39
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Что за ошибка?

WARNING:iMPACT:2257 - Startup Clock has been changed to 'JtagClk' in the bitstream stored in memory,
but the original bitstream file remains unchanged.


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
XVR
сообщение Jan 20 2010, 08:55
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата(at89c51ed2 @ Jan 19 2010, 18:29) *
Т.е. надо выбрать файл *.mcs и залить в XCF04. Всё заливается, верифицируется, скачивается обратно, но грузиться не хочет. Режим М0-М2 стоит как MS (все перемычки установлены). Думаю, что можно и через внешний JTAG - установить М0-М2 в положение JTAG (стоит только перемычка М1) и на внешний JTAG подавть от программатора.
Внешний JTAG у платы припаян параллельно внутреннему (от USB) (насколько я понял). Включайтесь через USB
Цитата
У меня вопрос - а каким типом файлов шить CPLD XC2c64 (то, что у альтеры было *.pof)?
Выбирите ее в iMPACT для програмирования, он скажет, каким файлом он хочет

Цитата
У меня сейчас там стоит "bypass", т.е. видимо я исключил этот девайс из цепочки.
Угу

Цитата
Может это глупый вопрос, а куда в цепочку включён JTAG Header?
JTAG/USB Download

Цитата
И что такое в цепочке FX2 (замкнутое перемычкой)?
Выход на разъем FX2 (тот самый 100 ногий разъем)
Цитата
А можно ли где нибудь нарыть ответную часть к большому разъёму,
Заказать в Штатах (через Mouser или ABN Univarsal у нас)
Цитата
и как она хотя бы называется то?
FX2BA-100SA-1.27R или FX2B-100SA-1.27R
(см http://www.hirose.co.jp/cataloge_hp/e57220088.pdf )


Цитата
Что за ошибка?

WARNING:iMPACT:2257 - Startup Clock has been changed to 'JtagClk' in the bitstream stored in memory,
but the original bitstream file remains unchanged.
Это не ошибка, это предупреждение - iMPACT поменял стартовый клок для FPGA на JTAG клок (TCK). Это для непосредственной заливки FPGA через JTAG
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 20 2010, 13:55
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 XVR
Большое спасибо! Уважаю людей, дающих исчерпывающие точные и правильные ответы, а не всякий флуд! Теперь стало понятно, почему на схеме имена цепей многие FX2... Будет теперь легче разбираться, что куда идёт.
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 21 2010, 10:10
Сообщение #6


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



Всё, мои мысли закончились! Срочно нужен дельный совет или бубен для шаманских плясок вокруг S3ESK. Вчера (точнее уже сегодня) до 5 утра пытался сконфигурить ФПГА из ФЛЭШ. Теперь однозначно уверен, что это возможно (или было возможно в моём случае, в любом случае такая возможность на "ките" есть), потому как в описании на "кит" такая процедура описана. Всё честно делаю, как там, с точностью до того, что там описан более старый ИМПАКТ, чем у меня. Но похоже. Выкладываю лог заливки ФПГА - сначала сессия заливки только ФПГА (работает), потом PROM Formatted - всё удачно (файл untittled.mcs), потом попытка заливки ФЛЭШ с последующей конфигурацией ФПГА. Заливка проходит, но при попытке конфигурации ФПГА, последняя слетает. Нажимания на кнопку "Prog" ни к чему не приводят. Если снять галку "Load FPGA", то как и положено ФЛЭШ льётся и потом выдаётся сообщение об успешном выполнении. Проблема начинается при попытке конфигурации ФПГА из ФЛЭШ! В логе есть такая запись:
----------------------------------------------
'2': Starting FPGA Load with Prom Data...INFO:iMPACT:563 - '2':Please ensure proper connections as specified by the data book ...
----------------------------------------------
Проанализировав последовательность этих басурманских букоф, получается что эта бестолковая последовательность команд (всмысле программа ИМПАКТ) знает о том, что у меня на плате не правильно соединена ФЛЭШ и ФПГА, а вот где не правильно это она скрывает!
В связи с этим вопросы:
1. Может ли какакя либо опция при создании *.bit файла криттично на это влиять. В смысле, если *.bit файл правильно грузится в ФПГА, может ли быть в нём проблема, что бы не конфигурилось из ФЛЭШ. Там, в ИСИ, есть куча галочек. Я сейчас поставил CCLK и 25 МГц, там есть ещё "подтяжки". Влияют ли они?
2. Перемычки на J11. Влияют ли они на это? Мне достался "кит" без этих перемычек, а в описании, на картинках, они есть. Как я понял это для SPI ROM, но у них там есть "общие ресурсы" (как сказано в описании), в том смысле, что клоки у них объединены.
3. Режим ставлю MS (M0-M2 установлены), так правильно?
4. При открытии *.bit файла мне говорят о том, что к ФПГА приаттачена ФЛЭШ ПЗУ и предлагают выбрать *.mcs файл для неё. Это не влияет?
4. Ну и последнее. Если бубен не поможет, можно ли сконфигурить ФПГА из других ПЗУ, имеющихся на плате - SPI, или эта же флэш?
Спасибо!
Прикрепленные файлы
Прикрепленный файл  write.txt ( 8.63 килобайт ) Кол-во скачиваний: 608
 
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Jan 23 2010, 11:04
Сообщение #7


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Цитата(at89c51ed2 @ Jan 21 2010, 16:10) *
Проблема начинается при попытке конфигурации ФПГА из ФЛЭШ! В логе есть такая запись:
----------------------------------------------
'2': Starting FPGA Load with Prom Data...INFO:iMPACT:563 - '2':Please ensure proper connections as specified by the data book ...
----------------------------------------------
Проанализировав последовательность этих басурманских букоф, получается что эта бестолковая последовательность команд (всмысле программа ИМПАКТ) знает о том, что у меня на плате не правильно соединена ФЛЭШ и ФПГА, а вот где не правильно это она скрывает!


Есть такая же проблема, в логе точно такая же запись, один в один... Так что есть мысле что не могут два разных спартана косячить одинаково, есть мысль про кривые руки (мои) или софт

Цитата(at89c51ed2 @ Jan 21 2010, 16:10) *
В связи с этим вопросы:
1. Может ли какакя либо опция при создании *.bit файла криттично на это влиять. В смысле, если *.bit файл правильно грузится в ФПГА, может ли быть в нём проблема, что бы не конфигурилось из ФЛЭШ. Там, в ИСИ, есть куча галочек. Я сейчас поставил CCLK и 25 МГц, там есть ещё "подтяжки". Влияют ли они?
2. Перемычки на J11. Влияют ли они на это? Мне достался "кит" без этих перемычек, а в описании, на картинках, они есть. Как я понял это для SPI ROM, но у них там есть "общие ресурсы" (как сказано в описании), в том смысле, что клоки у них объединены.
3. Режим ставлю MS (M0-M2 установлены), так правильно?
4. При открытии *.bit файла мне говорят о том, что к ФПГА приаттачена ФЛЭШ ПЗУ и предлагают выбрать *.mcs файл для неё. Это не влияет?
4. Ну и последнее. Если бубен не поможет, можно ли сконфигурить ФПГА из других ПЗУ, имеющихся на плате - SPI, или эта же флэш?
Спасибо!


1 Возможно, хотя все сделано как Xilinx учит, так что непонятно где косяк, тут ничего вразумительного пока ответить не могу

2 На не конфигурацию флеш J11 они не влияют, но по умолчанию стоят, причем рядом подписано что по умолчанию "Default CSO_B/SEL; ROM_CS/CSO_B

3 Да должен быть установлен именно режим 1 когда М0-M2 установлены все 3 джампера, остальные режимы это конфигурация SPI, BPI, и с помощью JTAG программатора

4 В руководстве вроде так и написано

5 Опять же в руководстве пишут что сконфигурировать можно из любой флеш, BPI, SPI и Platform flash


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 23 2010, 12:55
Сообщение #8


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



Бубна я конечно не нашёл, но удалось частично решить проблему загрузки ФПГА, - из SPI 08.gif . На плате "кита" есть М25Р16 - 16МБит флэш. Процедура аналогичная - из *.bit делаем formatter-ом *.mcs файл, в режиме BS приаттачиваем к ФПГА эту SPI, снимаем на "ките" М0 и программируем. После загрузки флэш, автоматически происходит конфигурация ФПГА. Также автоматически стартует загрузка и при включении питания "кита" и при нажатии на кнопку "Prog". Остаётся открытым вопрос с XCF04S, потому как собираюсь в дальнейшем на плате проекта использовать её для загрузки, потому надо разобраться в этом вопросе. Думаю потыркаться осциллоскопом в управляющие сигналы (типа INIT, CS, OE всякие) - может это наведёт на мысль. Пока своих мыслей по поводу XCF04S нет 01.gif . Неужели больше никто не сталкивался с этой проблемой. Хоть у кого то работает загрузка из XCF04? Люди, отзовитесь у кого грузится, как Вы этого добились? laughing.gif

Сообщение отредактировал at89c51ed2 - Jan 23 2010, 13:48
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Jan 25 2010, 04:37
Сообщение #9


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Цитата(at89c51ed2 @ Jan 23 2010, 18:55) *
На плате "кита" есть М25Р16 - 16МБит флэш. Процедура аналогичная - из *.bit делаем formatter-ом *.mcs файл, в режиме BS приаттачиваем к ФПГА эту SPI, снимаем на "ките" М0 и программируем. После загрузки флэш, автоматически происходит конфигурация ФПГА. Также автоматически стартует загрузка и при включении питания "кита" и при нажатии на кнопку "Prog".


Не могли бы Вы описать как программируете SPI подробнее? Я делаю так:
1 Ставлю в опциях 12 МГц
2 Захожу в импакт создаю mcs файл для SPI
3 Выбираю 16 Мбит
4 Генерирую файл
5 выбираю Direct SPI configuration
6 выбираю сгенеренный файлик mcs
7 выбираю флеху m25p16
8 тыкаю программировать....
а эта сволочь (импакт) показывает мне cranky.gif и говорит "Device validation teminated" как говорит мой продвинутый в английском товарищ сия последовательность буржуйских букоф говорит о том что определение устройства прервано...

Что я делаю не так?

Кстати вы программите через usb или через jtag?


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 25 2010, 10:11
Сообщение #10


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 Георгрий 2.
Сейчас попробую вспомнить, так как ИСИ я снёс, а до установки пока не дошло. В п.1 я ставил "дефолт", потому как не знаю какая там должна быть частота. Всё сделал "наскоком" - методом тыка и интуитивно, т.е. описание "кита" на эту тему я не чиатл. По моему ошибка начинается с п.5. Я программирую в режиме BS, так же как и конфигурить ФПГА или XCF. Я ж писал: "в режиме BS приаттачиваем к ФПГА эту SPI, снимаем на "ките" М0 и программируем". Когда она приаттачится, то над картинкой ФПГА появится картинка SPI Flash. Вот её надо выделить зелёным, или правой конопкой по ней. И программировать. Перемычки М0-М2 влияют только на последующую конфигурацию ФПГА. СПИ зальётся и при любой их комбинации, а вот ФПГА загрузится из СПИ только если М0 убрать, а оставить М1 и М2. Все конфигурации и заливки я делал как с USB так и с CableIII (у меня есть родной от ХИЛЫХ, хозяин прикупил вместе с "китом"). Вот только не рискнул их вместе включить, потому как мне писали где то здесь, что JTAG Header подключён параллельно USB загрузчику (в цепочке JTAG). Через ЖТАГ дольше это происходит и долго стирается сама СПИ (около 40 сек. весь процесс). Попробуйте, как установлю ИСИ попробую Вашу лицензию, тогда можно будет прямо по шагам, что бы я видел ИМПАКТ.
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Jan 25 2010, 10:26
Сообщение #11


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Цитата(at89c51ed2 @ Jan 25 2010, 16:11) *
Я ж писал: "в режиме BS приаттачиваем к ФПГА эту SPI, снимаем на "ките" М0 и программируем". Когда она приаттачится, то над картинкой ФПГА появится картинка SPI Flash.


Вот в этом то и вопрос что значить приаттачить СПИ? поконкретнее можно как это реализовать?


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 25 2010, 10:47
Сообщение #12


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 Георгий 2.
В режиме BS, если правой кнопкой на ФПГА (или на пунктрирный контур выше ФПГА) шлёпнуть, то в появившемся меню будет "Add SPI/BPI Flash". Вот туда то и надо подсунуть сделанный ранее *.mcs файл. Потом выбрать М25Р16 и всё. Можно её программить.
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Jan 26 2010, 04:24
Сообщение #13


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Все разобрался со SPI и пришел к выводу, что есть смысл ставить 11 ISE так как 9 у меня не распознала SPI флешку, но начинающим совет ставить сначала 9, она дружелюбнее для обучения, много где написано, а вот потом уже ставить 11 и уже интуитивно понятно че делать и куда тыкать... мое мнение, теперь еще modelsim нужно освоить и вообще нормально будет, кстить по поводу платформ флеш она у меня зашилась, в логе не было сообщения о косяке, но сделать с ней ничего не получилось...


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 26 2010, 11:54
Сообщение #14


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



Непонятно laughing.gif . Я так полагаю, что этому "киту" s3esk уже минимум года два. В любом случае, он появился раньше, чем ИСИ 11.1. Может быть тогда надо было делать это с помощью утилиты XSPI и надевать JP8? Ну да ладно, это дело прошлое, главное, что теперь грузится. С заливкой XCF проблем то не было - она льётся, верифицируется, стирается, читается. Но законфигурить с неё ФПГА не получается. Если галочку снять в ИМПАКТе "Load FPGA", то и не будет загрузки и не будет ошибки. Не знаю по поводу 9 или 11, я поставил сразу 11.1. И после 5 летнего перерыва в общении с ФПГА (а общался я ранее только с АСЕХ) мне потребовалась почти неделя, что бы сделать свой проектик и залить его в "кит". Правда занимался я этим в октябре, на даче, без сети и вечером после работы на строительстве. Так что в моём распоряжении было 3-5 часов в день. Да, с МоделСимом ещё будет "гимор". Я до сих пор пока боюсь в это залезать даже и с какого конца не знаю. Подумываю - а может пока попробовать посимулить в "родном" симуляторе? Говорят он тормозной и менее функционален, но может он полегче в начальном освоении? А BPI режим не пробовали? Думаю, тема себя исчерпала, потому как все вопросы загрузки мы решили, XCF не победили, а в наш "междусобойчик" никто не вмешиватся (то ли "китов" нету ни у кого, то ли молчат -вопросов нет или не хотят делиться ответами). Потом, если ещё будут вопросы по "киту" можно будет сюда и написать (заодно "up - нуть тему, может кто свежим глазом, что и посоветует), там ещё много "железок" для освоения. Я бы очень хотел сделать UART, потому как в моём проекте аж целый проц (PIC24) будет присутствовать только для того, что бы принять - передать инфу в комп. Ещё б не хило было бы освоить ethernet, но это вообще лженаука и это выше моего понимания.
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Jan 26 2010, 12:31
Сообщение #15


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Цитата(at89c51ed2 @ Jan 26 2010, 17:54) *
Непонятно laughing.gif . Я так полагаю, что этому "киту" s3esk уже минимум года два. В любом случае, он появился раньше, чем ИСИ 11.1. Может быть тогда надо было делать это с помощью утилиты XSPI и надевать JP8?


Вполне возможно, но я думал что все равно можно было наблюдать саму флеху из импакта

Цитата(at89c51ed2 @ Jan 26 2010, 17:54) *
Да, с МоделСимом ещё будет "гимор".


В этом не сомневаюсь, но стандартного то толком и нету в 11, поэтому придется освоить моделсим, что говорить про 9 то очень тупая хрень стандартный ейный симулятор...

Цитата(at89c51ed2 @ Jan 26 2010, 17:54) *
Думаю, тема себя исчерпала, потому как все вопросы загрузки мы решили, XCF не победили, а в наш "междусобойчик" никто не вмешиватся (то ли "китов" нету ни у кого, то ли молчат -вопросов нет или не хотят делиться ответами). Потом, если ещё будут вопросы по "киту" можно будет сюда и написать (заодно "up - нуть тему, может кто свежим глазом, что и посоветует), там ещё много "железок" для освоения.


Вполне согласен если у кого-то будут предложения или вопросы, пишите, вместе мы их быстрее одолеем

Цитата(at89c51ed2 @ Jan 26 2010, 17:54) *
Я бы очень хотел сделать UART, потому как в моём проекте аж целый проц (PIC24) будет присутствовать только для того, что бы принять - передать инфу в комп. Ещё б не хило было бы освоить ethernet, но это вообще лженаука и это выше моего понимания.


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


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 26 2010, 13:07
Сообщение #16


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



По поводу top-level конечно не место здесь для дискуссии, тем более, что наверняка это уже ранее обсуждалось. Но, это моё мнение и моя привычка, я считаю, что top-level должен быть схемой, а может быть и даже крупные блоки. Но это всё предпочтения индивидуальные. Возможно, если когда то и получится освоить какой нибудь ХДЛ, моё мнение и изменится. Но мне сейчас легче для понимания видеть квадратики со стрелками и связями, чем кучу строчек с непонятными словами и символами.
Go to the top of the page
 
+Quote Post
max77
сообщение Jan 26 2010, 14:19
Сообщение #17


Участник
*

Группа: Свой
Сообщений: 67
Регистрация: 16-03-06
Из: Днепропетровск
Пользователь №: 15 307



По поводу схемного представления проекта для FPGA. На курсах по VHDL говорили, что он толком не поддерживается то ли с 5, то ли с 6 версии. Преимущество программирования на VHDL в том, что часть текста написанного при описании модулей (процессов) можно использовать для временных симуляций.
С Spar3E500kit не работал. Но с Spar3DO kit работал с программированием на VHDL.
Еще, при выводе схемного решения после синтеза описанной конструкции, бывают неправильное отображение некоторых сигналов, особенно это заметно на больших блоках. Иногда не показывает цепи синхронизации, которые должны заходить в блок или еще какие нибудь сигналы. Поэтому схемное (символьное) отображение можно использовать только для собственного понимания написанного кода на начальном этапе обучения.
Go to the top of the page
 
+Quote Post
XVR
сообщение Jan 26 2010, 14:49
Сообщение #18


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата(at89c51ed2 @ Jan 26 2010, 14:54) *
Я бы очень хотел сделать UART, потому как в моём проекте аж целый проц (PIC24) будет присутствовать только для того, что бы принять - передать инфу в комп.
Жирновато будет для UART'а. В FPGA можно собрать процессор (MicroBlase или PicoBlase)
Цитата
Ещё б не хило было бы освоить ethernet,
Тогда MicroBlase однозначно rolleyes.gif
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 26 2010, 15:45
Сообщение #19


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 XVR
Ещё как жирно, но есть ограничения на время передачи, короче нужна скорость под 1МБ/сек. В "родных" 51 ЦПУ не нашёл такого UART-a, к тому же хозяин крепко на них "сидит" - есть спецы у него в этих процах, да "кит" для ethernet-a купленный с этими процом. Хотя и утверждалось ранее: "Делайте на чём хотите, лишь бы был конечный результат", но факт налицо - вместо знакомой Альтеры сказали делать на ХИЛЫХ (наличие "кита" опять таки) и вместо знакомых АТ89 надо изучать PIC24. Не, я к хозяину не в претензиях, требования то логически обоснованы и я с этим согласен. Просто он требует результат, а у меня время уходит на обучение, а не на написание и отладку. Вопрос по встраиваемым процам - я порылся в документе s3esk_startup_rev2.pdf, и не увидел там UART-a. Я склоняюсь к мысли, что это облегчённая версия процессора для этого "кита". А возможно ли нарыть полные (если конечно существует такая сборка) версии? На самом деле мне нужен только UART со скоростью до 1МБ/сек.
Go to the top of the page
 
+Quote Post
XVR
сообщение Jan 26 2010, 17:41
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата(at89c51ed2 @ Jan 26 2010, 18:45) *
Ещё как жирно, но есть ограничения на время передачи, короче нужна скорость под 1МБ/сек.
Это вроде не проблема

Цитата
В "родных" 51 ЦПУ
Для SPARTAN'а это далеко не родной проц smile.gif
Цитата
Вопрос по встраиваемым процам - я порылся в документе s3esk_startup_rev2.pdf, и не увидел там UART-a
Вам нужен другой документ - по EDK
Цитата
А возможно ли нарыть полные (если конечно существует такая сборка) версии?

EDK поновее. С платой идет trial версия какого то весьма древнего EDK
Цитата
На самом деле мне нужен только UART со скоростью до 1МБ/сек.
Вроде это там есть
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 26 2010, 19:11
Сообщение #21


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 XVR
Я имел ввиду, что "родной" 51 ЦПУ - давно знакомый (уже 10 лет сидим на нём) и переходить с него на PIC24 не хотелось. В более менее известных девайсах УАРТ-а с 1 МБит не нашли, а садиться на мелковыпускаемый и труднодоставаемый не позволили. Я как то рылся на опенсорсе и видел там проекты 51 ЦПУ для ХИЛЫХ. Так что может быть имеет право на жизнь и такой вариант. Спасибо за наводку, буду иметь ввиду EDK.
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Jan 27 2010, 07:52
Сообщение #22


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Цитата(max77 @ Jan 26 2010, 20:19) *
На курсах по VHDL говорили, что он толком не поддерживается то ли с 5, то ли с 6 версии. Преимущество программирования на VHDL в том, что часть текста написанного при описании модулей (процессов) можно использовать для временных симуляций.


По поводу курсов. Где Вы их проходили не поделитесь ссылочкой на них или контактами? на сколько качественно учат? и чему самое главное?


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
XVR
сообщение Jan 27 2010, 08:13
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата(at89c51ed2 @ Jan 26 2010, 22:11) *
Спасибо за наводку, буду иметь ввиду EDK.
Только учтите, что в EDK процессор - это не 'знакомый 51', и даже не PIC24. Это 32х битный RISC (клон MIPS'а). Насколько я знаю, на него даже Linux ставят rolleyes.gif
А вот PicoBlase - это 8ми битный RISC, из языков на него только ассемблер
Go to the top of the page
 
+Quote Post
des00
сообщение Jan 27 2010, 10:39
Сообщение #24


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Георгий 2 @ Jan 26 2010, 06:31) *
Для меня пока и то то выше понимания, сейчас продолжаю изучение VHDL дается очень тяжко и со скрипом, но будем учить, его если понять, то писать на нем гораздо лучше чем схемки чертить, хотя на настоящий момент схемки понятнее, но шеф говорит VHDL и точка, вот и скрипим...

крайне рекомендую SV + V %) и шефу вашему также передайте %)


--------------------
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Jan 27 2010, 10:42
Сообщение #25


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Цитата(des00 @ Jan 27 2010, 16:39) *
крайне рекомендую SV + V %) и шефу вашему также передайте %)


Если не ошибаюсь вы имеете ввиду System Veriliog + Verilog?

Сообщение отредактировал Георгий 2 - Jan 27 2010, 10:45


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
des00
сообщение Jan 27 2010, 10:44
Сообщение #26


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Георгий 2 @ Jan 27 2010, 04:42) *
Если не ошибаюсь вы имеете ввиду System Veriliog + Verilig?

да, только правильно пишется System Verilog + Verilog. (V вошел в SV, так что сразу начинайте с SV).


--------------------
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 27 2010, 11:06
Сообщение #27


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 des00
Ваша квалификация и авторитет здесь не поддаются сомнению a14.gif , но когда Вы что то крайне рекомендуете, можно ли услышать ещё какие то логические доводы. Я нахожусь примерно в такой же ситуации, как и "Георгий 2", поэтому проблема выбора стоит очень остро. Насколько я смог сделать для себя выводы (после некоторого времени изучения данного форума) на сегодняшний день из широко используемых языков описания аппаратуры разработчику доступны VHDL, Verilog, System C, System Verilog. Видимо первые два уже достаточно давно используются, есть даже некие стандарты (по моему 2000 г.). Последние два новее. Читал что System C - "мертворожденное дитя" и закладываться на него не стоит. Не первый раз слышу, что будущее за System Verilog. Всё это только мои домыслы, возможно я и не прав, поправьте кто знает. Хотелось бы для себя попытаться классифицировать эти языки (классифицировать по каким то критериям качества) и иметь в голове некую сравнительную таблицу что ли. Ведь если есть некое кол-во продуктов (в данном случае языки описания), то чем то должны они отличаться. И видимо из за отличий этих, имеют друг перед другом достоинства и недостатки. Хотя, я сам немного знаю С и (только видел) Паскаль, но сравнения - объективного, дать не могу laughing.gif этим двум языкам. Возможно, это можно сделать только на субъективном уровне, но всё равно, мнение (даже и субъективное) специалиста знать полезно. Коль скоро и предстоит погружение в эти дебри, хотелось бы изначально правильно взять направление! Думаю, что этот вопрос здесь не однократно поднимался, но как такового сравнения я пока не нашёл. Так (в кратце, если можно), почему именно SV?
Go to the top of the page
 
+Quote Post
XVR
сообщение Jan 27 2010, 11:23
Сообщение #28


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



SV является расширением V (и с некоторого времени это уже один и тот же язык - IEEE объединила их стандарты в один)
Отношение между SV и V примерно такое же, как между C++ и C. Огромное преимущество SV больше всего ощущается когда начинаешь писать тесты (для SV есть библиотеки/framework'и для тестирования) Единственный недостаток - ограниченная поддержка со стороны производителей тулов (Xilinx например до сих пор не поддерживает SV ни в каком виде)

Отношение между VHDL и V/SV примерно такое же, как между ADA (Pascal) и C/C++. В основном это вопрос личных пристрастий, плавно (и неотвратимо) перетекающий в нескончаемые холивары smile.gif
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Jan 27 2010, 11:43
Сообщение #29


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Цитата(XVR @ Jan 27 2010, 17:23) *
SV является расширением V (и с некоторого времени это уже один и тот же язык - IEEE объединила их стандарты в один)
Отношение между SV и V примерно такое же, как между C++ и C. Огромное преимущество SV больше всего ощущается когда начинаешь писать тесты (для SV есть библиотеки/framework'и для тестирования) Единственный недостаток - ограниченная поддержка со стороны производителей тулов (Xilinx например до сих пор не поддерживает SV ни в каком виде)

Отношение между VHDL и V/SV примерно такое же, как между ADA (Pascal) и C/C++. В основном это вопрос личных пристрастий, плавно (и неотвратимо) перетекающий в нескончаемые холивары smile.gif


Если я правильно понимаю, то к примеру если у меня есть счетчик на VHDL и занимает он к примеру 30 строчек и хренову гору операторов и головоломок, то если я пишу на SV, количество строчек будет например 15 и уменьшится количество операторов, и все соответственно будет гораздо проще?

Сообщение отредактировал Георгий 2 - Jan 27 2010, 11:44


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 27 2010, 12:02
Сообщение #30


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 XVR
Цитата
Единственный недостаток - ограниченная поддержка со стороны производителей тулов (Xilinx например до сих пор не поддерживает SV ни в каком виде)

А зачем мне тогда это laughing.gif ? И что мне дальше делать с этими красивыми конструкциями языка и удобными тестами, живущими только виртуально!? Моя конечная цель - работающее железо. Думаю, что раз это один язык, то есть смысл начать с Verilog, а потом уже (если получится освоить в достаточном качестве) переходить на расширения SV. Наверное это также как С-С++. Можно писать на стандартном ANSI C, а потом (при необходимости) переходить на объекты и т.п. присущее С++. Возможна ли такая ситуация - писать проект на SV, отладить и просимулировать, а на этапе синтеза и последующей разводки "облегчить" проект удалив из него не поддерживаемые ИСИ 11.4 конструкции? Или это будут совсем разные проекты, написанные на разных языках, живущие в разных средах, но описывающие одну и ту же железяку? Как то мне это не понятно. А кто тогда поддерживает SV? ALDEC, MODELSIM ...??? Извините за глупый вопрос, а что такое "нескончаемые холивары"?
2 Георгий 2
Я думаю, что в силу нашего с Вами не знания сути вопроса, Ваш вопрос несколько не корректен. В том смысле, что уровни проектов где железо - счётчики, дешифраторы, КЦА - это уровень 5 летней давности, где всё просто решалось на уровне графических примитивов. Сейчас всё стало гораздо сложнее. Железо очень сильно усложнилось, что позволило делать гораздо сложные проекты. Что в свою очередь, требует от разработчиков чёткого понимания, что они делают и как это верифицировать, а к разработчикам тулов предъявляет ещё более повышенные требования. К тому же, думаю, в сложных проектах труднее поддерживать иерархичность и осуществлять связь между различными компонентами проекта. Видимо все эти причины и приводят к появлению более сложных языков, предназначенных для облегчения жизни разработчикам в сложных проектах. Так что сравнивать только по количеству строк, как то не корректно. Если Вам нужен только счётчик, то это CPLD и графический примитв, если счётчик в составе более сложного проекта, то видимо ВХДЛ и Верилог для ФПГА, а если Вам нужен RISC процессор с Ethernet и LVDS с 622МБ/с и какая нибудь ЦОС (БПФ или свёртка, к примеру), то может быть и SV Вам покажется раем небесным, по сравнению с ВХДЛ.
Но, это только пока мои домыслы.
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Jan 27 2010, 12:12
Сообщение #31


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Я тут еще мимоходом решил еще и LCD прикрутить к проклятому киту, и обнаружил, насколько я понял, что сделать это можно лишь с помощью микропроцессорного ядра MicroBlaze... если я не прав подскажите об этом, но если я прав, то где лучше всего про это почитать и какой язык программирования использутся при программровании самого MicroBlaze? Если я не ошибаюсь то самое веселое только начинается? как я понял в PicoBlaze использутся ассемблер? а тут что-то другое видимо С?

Цитата(at89c51ed2 @ Jan 27 2010, 18:02) *
2 Георгий 2
Я думаю, что в силу нашего с Вами не знания сути вопроса, Ваш вопрос несколько не корректен. В том смысле, что уровни проектов где железо - счётчики, дешифраторы, КЦА - это уровень 5 летней давности, где всё просто решалось на уровне графических примитивов. Сейчас всё стало гораздо сложнее. Железо очень сильно усложнилось, что позволило делать гораздо сложные проекты. Что в свою очередь, требует от разработчиков чёткого понимания, что они делают и как это верифицировать, а к разработчикам тулов предъявляет ещё более повышенные требования. К тому же, думаю, в сложных проектах труднее поддерживать иерархичность и осуществлять связь между различными компонентами проекта. Видимо все эти причины и приводят к появлению более сложных языков, предназначенных для облегчения жизни разработчикам в сложных проектах. Так что сравнивать только по количеству строк, как то не корректно. Если Вам нужен только счётчик, то это CPLD и графический примитв, если счётчик в составе более сложного проекта, то видимо ВХДЛ и Верилог для ФПГА, а если Вам нужен RISC процессор с Ethernet и LVDS с 622МБ/с и какая нибудь ЦОС (БПФ или свёртка, к примеру), то может быть и SV Вам покажется раем небесным, по сравнению с ВХДЛ.
Но, это только пока мои домыслы.


В общем и целом не это понятно, но я в принципе за время обучения в институте не мог нормально этому всему обучится, и поэтому начал с 0. про счетчик это просто к слову пришлось, но моей коечной целью является пресловутый ЦОС и я начавший учить VHDL и пишущий на нем тольо несерьезные мелочи, должен для себя сразу решить, VHDL или Verilog взять для ЦОС иначе время будет потрачено впустую, а видимо для ядер (пост выше) еще придется учить и С...

Сообщение отредактировал Георгий 2 - Jan 27 2010, 12:06


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 27 2010, 13:10
Сообщение #32


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 Георгий 2
Цитата
Я тут еще мимоходом решил еще и LCD прикрутить к проклятому киту

Как это? Он же там есть в явном виде! И все управляющие сигналы заведены прямо на порты ФПГА! Там обычный 4 битный обмен и 3 управляющих сигнала. Для того что бы его включить надо просто разобраться в интерфейсе и сделать микропрограммный автомат - обычный state mashine, который будет выдерживать тайминги (нужные времена и порядок подачи управляющих сигналов) и выдавать информацию из входного буфера (в общем случае, а в частности можно записать константы, как в примере с PicoBlaze - XILINX Spartan3 и т.д.) в память индикатра. Я сейчас выскажу своё мнение, только без обид maniac.gif . Думаю, нам больше не нужно заниматься изучением "кита", тем более, что Вы собираетесь заниматься ЦОС, а у меня задачи не соприкасающиеся с символьным двухстрочным индикатором. Нам это ничего не даст, кроме того, что немного изучим устаревший PicoBlaze. С точки зрения освоения ФПГА и языков - это тупик для нас. Лучше сосредоточиться на изучении Verilog (я уже принял для себя решение - сначала Verilog, потом SV. Потому как V имеет "продолжение" - SV, а VHDL как то не очень. А между собой VHDL~Verilog. Поправьте, если не так.) и научиться реализовывать для начала простые цифровые устройства - счётчики, КЦА, автоматы и их симулировать. С прицелом, опять таки, на наши задачи. Нужна Вам ЦОС - учите аккумуляторы, умножители, счётчики адресные, память всякую и т.д. Мне вот сейчас нужен Делитель частоты с переменным коэффициентом деления. Я знаю как его сделать "в железе", но как его описать laughing.gif . Ну загрузите Вы конфигурацию готовую процессора, увидите на индикаторе надпись, сможете в ассемблере другую "сгенерить", даже можно попонтоваться - вывести логотип фирмы и реквизиты, а дальше то что? Если бы можно было использовать индикатор для отладки, но он медленный, можно туда вытаскивать результат вычислений, но придётся переводить форматы двоичные в двоично-десятичне и потом формировать строки. Короче, думаю, результат не стоит усилий.
Цитата
а время обучения в институте не мог нормально этому всему обучится, и поэтому начал с 0.

Поверьте мне, как человеку не понаслышке знающему, как и чему учать сейчас в ВУЗах, ситуация с Вами - это нормально. Если Вы сами не будете к этому стремиться во время обучения в институте, то Вас ничему не научат. НЕЛЬЗЯ НАУЧИТЬ, можно помочь научиться! Я начал осваивать программируемую логику самостоятельно в ВУЗе, на примере ещё ИНТЕЛ-овских iFX740(780) в PLDShell. И сделал диплом на ней - RLE алгоритм сжатия. НЕ бог весть какой сложности проект, но полностью и с симуляцией. Потом альтеру сам осваивал. Думаю, что в С я многого не знаю, но смог сделать процессор свёртки и без этого. Хотя, что бы проверить алгоритм и просчитать его сначала на компе пришлось написать простенькую программку на С, а потом уже эти входные данные перенести в симулятор МАХ. Всё дело в задачах и в умении инженера адекватно задаче выбрать инструментарий. Хорошо, ели Вы знаете C/С++, VHDL/Verilog/SV, владеете MATLAB и MODELSIM и можете потом развести плату в PCAD или Mentor Grapfics. Тогда у Вас нет проблем, Вы везде почётный сотрудник, почти любые задачи может решать самостоятельно и "гнуть пальцы" перед шефом, потому как адекватной замены Вам нет (при адекватной зарплате). А если не знаете, то нужно пытаться решить задачу тем инструментарием, которым владеете или изучать новый, если этот инструмент не решает той задачи. К сожалению, мы с Вами находимся в том положении, когда просто изучать что то, уже поздно. Потому как от нас требуют результат. И никто не будет нас учить за свои деньги. Делать это нужно тихо, с постепенной выдачей "на гора", что бы хозяин видел, что процесс обучения налицо и идёт он не впустую.
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Jan 27 2010, 15:20
Сообщение #33


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Цитата(at89c51ed2 @ Jan 27 2010, 19:10) *
Как это? Он же там есть в явном виде! И все управляющие сигналы заведены прямо на порты ФПГА! Там обычный 4 битный обмен и 3 управляющих сигнала. Для того что бы его включить надо просто разобраться в интерфейсе и сделать микропрограммный автомат - обычный state mashine, который будет выдерживать тайминги (нужные времена и порядок подачи управляющих сигналов) и выдавать информацию из входного буфера (в общем случае, а в частности можно записать константы, как в примере с PicoBlaze - XILINX Spartan3 и т.д.) в память индикатра. Я сейчас выскажу своё мнение, только без обид maniac.gif . Думаю, нам больше не нужно заниматься изучением "кита", тем более, что Вы собираетесь заниматься ЦОС, а у меня задачи не соприкасающиеся с символьным двухстрочным индикатором. Нам это ничего не даст, кроме того, что немного изучим устаревший PicoBlaze. С точки зрения освоения ФПГА и языков - это тупик для нас. Лучше сосредоточиться на изучении Verilog (я уже принял для себя решение - сначала Verilog, потом SV. Потому как V имеет "продолжение" - SV, а VHDL как то не очень. А между собой VHDL~Verilog. Поправьте, если не так.) и научиться реализовывать для начала простые цифровые устройства - счётчики, КЦА, автоматы и их симулировать. С прицелом, опять таки, на наши задачи. Нужна Вам ЦОС - учите аккумуляторы, умножители, счётчики адресные, память всякую и т.д. Мне вот сейчас нужен Делитель частоты с переменным коэффициентом деления. Я знаю как его сделать "в железе", но как его описать laughing.gif . Ну загрузите Вы конфигурацию готовую процессора, увидите на индикаторе надпись, сможете в ассемблере другую "сгенерить", даже можно попонтоваться - вывести логотип фирмы и реквизиты, а дальше то что? Если бы можно было использовать индикатор для отладки, но он медленный, можно туда вытаскивать результат вычислений, но придётся переводить форматы двоичные в двоично-десятичне и потом формировать строки. Короче, думаю, результат не стоит усилий.


По поводу индикатора я еще не успел разобраться, и мне не за что обижатся на вас, посмотрю еще, по поводу того что он н понадобится вы не правы, так как моей основной задачей является цифровая связь а там это необходимо задействовать: вывод различной информации например о частотах, да и начальство ставит задачу полностью разобратся в ките, так что как-то так еще помурыжу его...
По поводу ВУЗа вполне с Вами согласен, тут возразить нечего, пока сам сам не сделаешь учить никто не будет...
А по поводу языка я еще глубоко в раздуиьях, если Verilog лучше, то почему все примеры на VHDL написаны? я еще некоторое время подумаю и между делом попробую написать что-нибудь посерьезнее чем тупое мерцание ледов по счетчику или подобное...
Хотя все еще не ясно на чем стоит заострить внимание в данный момент, просто в любой теории все вроде просто, а когда садишся за реальныйц проект на пути появляется огромная куча заморочек, как в том как все реализовать и как разобратся в куче басурманских букоф и еще куча всего..... Пока как то так....


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 27 2010, 15:49
Сообщение #34


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 Георгий 2
Что ж, хозяин - барин, Вам видней Ваши задачи. Я б тогда всё таки разделил мух и котлет. Так как мне знаком 51 проц, я бы индикатор повесил на него, а заодно и если нужно - взаимодействие с оператором (различные меню, пользовательские настройки, вывод информации, ввод). А ФПГА заставить заниматься сугубо её задачами, где проц не справится - ЦОС. Но если Вам не знаком никакой проц, то тогда не могу Вам ничего посоветовать. Потому как сам ядер процовых для ФПГА не юзаю, не изучал и не знаю, во что это Вам выльется. Про ВХДЛ не могу ничего Вам сказать, кроме предположения - возможно он появился ранее Верилога и многие изучив первый уже не стали смотреть в строну второго? А может быть ВХДЛ для обучения и построения примеров проще? Для меня это тоже пока большая загадка 01.gif
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Jan 27 2010, 16:43
Сообщение #35


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Цитата(at89c51ed2 @ Jan 27 2010, 21:49) *
2 Георгий 2
Что ж, хозяин - барин, Вам видней Ваши задачи. Я б тогда всё таки разделил мух и котлет. Так как мне знаком 51 проц, я бы индикатор повесил на него, а заодно и если нужно - взаимодействие с оператором (различные меню, пользовательские настройки, вывод информации, ввод). А ФПГА заставить заниматься сугубо её задачами, где проц не справится - ЦОС. Но если Вам не знаком никакой проц, то тогда не могу Вам ничего посоветовать. Потому как сам ядер процовых для ФПГА не юзаю, не изучал и не знаю, во что это Вам выльется. Про ВХДЛ не могу ничего Вам сказать, кроме предположения - возможно он появился ранее Верилога и многие изучив первый уже не стали смотреть в строну второго? А может быть ВХДЛ для обучения и построения примеров проще? Для меня это тоже пока большая загадка 01.gif


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


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 27 2010, 17:03
Сообщение #36


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 Георгий 2
Шефы бывают разные и задачи у них тоже разные. Но ВСЕ шефы хотят одно - продать как можно больше и как можно дороже свою продукцию. У нас на производстве был похожий случай. Тогда "кит" (какого то клона 51 проца) решил проблему выпуска первой партии. Но, ИМХО, во время выпуска первой партии разработчики должны успеть сделать свою плату, и это должно быть временным явлением (выпуск "кита"). Я считаю, что "киты" не для этого. Тем более s3esk. А ремонт? ВЫ что будете его менять если что? А вдруг они кончатся? Возможно шеф не знает всех технических тонкостей. Попытайтесь ему объяснить. Но Вы должны сами всё понимать в таком случае.
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Jan 27 2010, 17:47
Сообщение #37


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



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


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 27 2010, 18:06
Сообщение #38


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 Георгий 2
Цитата
когда я шел как сказали "программить на ПЛИС" я еще вообще ничего об этом не знал, я думал что это не сложнее чем 51, токо синтаксис другой, а обернуось вон все как

А я думал, только я встрял в такую авантюру smile3046.gif . Правда у меня есть некий опыт разработки. И я знал уже тогда, когда начинал говорить с хозяином, что ФПГА это на порядок сложнее, чем 51 проц. Хотя, конечно, смотря какие задачи решать.
Go to the top of the page
 
+Quote Post
XVR
сообщение Jan 27 2010, 18:46
Сообщение #39


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата(Георгий 2 @ Jan 27 2010, 14:43) *
Если я правильно понимаю, то к примеру если у меня есть счетчик на VHDL и занимает он к примеру 30 строчек и хренову гору операторов и головоломок, то если я пишу на SV, количество строчек будет например 15 и уменьшится количество операторов, и все соответственно будет гораздо проще?
Не будет. На уровне отдельного счетчика это будет незаметно. Разница начнется на уровне всего дезайна в целом.

Цитата(at89c51ed2 @ Jan 27 2010, 15:02) *
А зачем мне тогда это laughing.gif ? И что мне дальше делать с этими красивыми конструкциями языка и удобными тестами, живущими только виртуально!?
'Ограниченная поддержка' != 'Отсутствие поддержки' MODELSIM понимает SV

Цитата
Моя конечная цель - работающее железо. Думаю, что раз это один язык, то есть смысл начать с Verilog, а потом уже (если получится освоить в достаточном качестве) переходить на расширения SV.
Рекомендую писать синтезируемую часть на V, а тесты на SV. Такая связка будет работать.

Цитата
Извините за глупый вопрос, а что такое "нескончаемые холивары"?
Это выяснения того, что лучше - C/Pascal/Assembler или Verilog/VHDL. Масса эмоций со всех сторон и отсутствие какой либо конструктивной дискуссии smile3009.gif
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 27 2010, 19:08
Сообщение #40


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 XVR
Спасибо a14.gif . Исчерпывающе. Я до этого же тоже додумался. Только вот
Цитата
если Verilog лучше, то почему все примеры на VHDL написаны?
Или это не так? Или это уже на уровне "холиваров" biggrin.gif !?

Сообщение отредактировал at89c51ed2 - Jan 27 2010, 19:21
Go to the top of the page
 
+Quote Post
dspx
сообщение Jan 27 2010, 20:49
Сообщение #41


Участник
*

Группа: Свой
Сообщений: 54
Регистрация: 6-01-06
Из: Москва
Пользователь №: 12 876



Цитата(at89c51ed2 @ Jan 27 2010, 22:08) *
2 XVR
Спасибо a14.gif . Исчерпывающе. Я до этого же тоже додумался. Только вот Или это не так? Или это уже на уровне "холиваров" biggrin.gif !?


Каждый из языков имеет свои преимущества, но в целом это тонкости. Лучше владеть обоими, потому что , например , в EDK - нативный язык VHDL, не всегда удобно делать кросс платформенные проекты.
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Jan 28 2010, 01:52
Сообщение #42


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Цитата(dspx @ Jan 28 2010, 02:49) *
Каждый из языков имеет свои преимущества, но в целом это тонкости. Лучше владеть обоими, потому что , например , в EDK - нативный язык VHDL, не всегда удобно делать кросс платформенные проекты.


То что лучше владеть обоими это понятно, но так и нет мнения с обьяснением с какого начать лучше и если я уже немного пишу на VHDL стоит ли переходить на Verilog?


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 28 2010, 05:55
Сообщение #43


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 Георгий 2
Похоже, мы заходим уже на 3 круг обсуждения bb-offtopic.gif ! Я думаю, никто Вам здесь конкретно не скажет: "Учи ВХДЛ, Верилог отстой", или "Только Верилог, ВХДЛ старьё", или ещё что то подобное. Большинство согласится с этим
Цитата
Каждый из языков имеет свои преимущества, но в целом это тонкости.

Ну, пИшите вы уже на ВХДЛ, и пишите себе на здоровье biggrin.gif . Больше будете теперь сомневаться cranky.gif . Я думаю, наши задачи можно решить и на VHDL и на V. К тому же, когда Вы спрашиваете: " с какого начать лучше...", Вы сами то понимаете, с какими критериями качества Вы их собираетесь классифицировать, что лучше, а что хуже laughing.gif ? Я думаю, что когда Вы изучите оба языка (искренне Вам желаю, что бы так оно и случилось), Вы сами себе на этот вопрос однозначно не ответите! Возможно у Вас и появятся субъективные предпочтения. Я для себя решил так (с Вашей точки зрения): пишИте проект на ВХДЛ, но когда будете изучать новые конструкции, заглядывайте в Верилог (а как это там делается?) и постепенно у Вас будет складываться картина, рисующая Вам эти проблемы (отличия языков и удобства и недостатки) и откладываться что то про V. Я например, пытаюсь почитывать сейчас XST, так там все примеры сразу для VHDL и V.
Ладно, у меня сегодня разъездной день, смогу нарисоваться в сети только к вечеру к 17-18 (GMT+3), если будет что сказать, то только после этого времени.
Go to the top of the page
 
+Quote Post
XVR
сообщение Jan 28 2010, 08:07
Сообщение #44


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата(at89c51ed2 @ Jan 27 2010, 22:08) *
Только вот
Цитата
если Verilog лучше, то почему все примеры на VHDL написаны?

Или это не так?
Это не так. Есть масса примеров и на Verilog (есть и на SV). У Xilinx в ихней доке по библиотекам и синтезатору приводятся примеры языковых конструкций, понимаемых синтезатором, на обоих языках (Verilog и VHDL)
Например (проекты на www.opencores.org)
VHDL - 197шт
Verilog - 174шт
SystemC - 4шт
Bluespec - 6шт
Other - 28шт
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Jan 28 2010, 12:11
Сообщение #45


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



А кто-нибудь вообще пытался реализовать LCD на данном ките? есть готовая программа (которая Кена Чепмена) на ядре пикоблейз, как я понимаю в ней есть топ-файл для проги, файл "control" (программа для для пикоблейза), несколько файлов прошивок, mcs для флехи и bit для FPGA. Даже самого ядра пикоблейза, нет, благо оно есть в XUP, и это радует, короче собрал я все хозяйство в кучу и при синтезе мне ISE выдает
ERROR:HDLParsers:3312 - "D:/Xproject/S3ESK designs/s3esk_startup/control.vhd" Line 300. Undefined symbol 'BSCAN_VIRTEX2'. - что-то вроде символ не определен? Как пишет Xilinx там должны быть библиотеки 1164 и unisim, они присутствуют во всех файлах проекта. Помогите кто столкнулся с подобной проблемой. Может быть у кого-нибудь даже есть этот самый BSCAN_VIRTEX2?
Может ли быть что у меня криво встал ISE 11 и из-за этого не определяется символ?

Сообщение отредактировал Георгий 2 - Jan 28 2010, 12:35


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 29 2010, 01:32
Сообщение #46


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 Георгий 2.
Вот не хотел заниматься этой хренью - PicoBlaze+LCD2x16, но почитав документ s3esk_startup_rev2.pdf (где как всегда обещано счастье через 30 секунд), любопытство взяло вверх. Для начала я просто загузил в "кит" файл s3esk_startup.bit. И как ожидалось, оно произошло, в смысле чудо - действительно бежит строчка "SPARTAN-3E STARTER KIT ..." led-ы горят от slide переключателей, но самая интересная игрушка - гонять бегущую точку крутилкой около LCD (уж не знаю как правильно её обозвать (Rotary Knob что ли). Вдоволь наигравшись зрелищем бегающей точки тут же возникло желание что то сломать в программе (заменить SPARTAN на SMARTAN или на худой конец на SPARTAK). Презрев очевидную истину, что "лучшее враг хорошего" (забегая вперёд, скажу, что поплатился за это 4 часами сна, так как хотел харю заплющить ещё до полуночи) погрузился в поиски истины. Ответ на вопрос
Цитата
Может быть у кого-нибудь даже есть этот самый BSCAN_VIRTEX2?
нашёлся достаточно быстро в документе sim.pdf (http://www.xilinx.com/itp/xilinx7/books/docs/sim/sim.pdf) где басурманскими буквами по белому на стр. 81 написано дословно следующее:
You can access the built-in boundary scan logic between power-up and the start of
configuration.
In a configured Virtex™, Virtex-E™, Virtex- II™, Virtex-II Pro™, Virtex-II Pro X™,Virtex-
4™, Spartan-II™ and Spartan-3™ device, basic boundary scan operations are always
available. BSCAN_VIRTEX, BSCAN_VIRTEX2, BSCAN_VIRTEX4 and
BSCAN_SPARTAN2 are instantiated only if you want to create internal boundary scan
chains in a Virtex™, Virtex-E™, Virtex-II™, Virtex-II Pro™, Virtex-4™ or Spartan-II™
device.
Призвав на помощь всю интуицию (так как знаний 0) и остатки сил, после изучения структуры PicoBlaze, пришёл к выводу, что control.vhdl есть не что иное как ПЗУ с программой. Делается этот файл автоматически при помощи ассемблер-транслятора kcpsm3.exe из исходника control.psm. Но самое главное, что оказывается можно загрузить control в блочную память до конфигурации (что и должно быть, потому как сначала ПЗУ, а потом + процессор = работающая программа из ПЗУ). И этот самый BSCAN_VIRTEX2 есть не что иное, как JTAG Loader (изображённый на структурной схеме PicoBlaze в блоке control). Дальнейшие поиски привели меня в документ lib.pdf (http://www.xilinx.com/itp/xilinx7/books/docs/lib/lib.pdf), где на стр. 155 явно сказано, что BSCAN_VIRTEX2 ну никак не желает поддерживать архитектуру Spartan3. Но там же на стр. 151 явно сказано, что архитектуру Spartan3 поддерживает BSCAN_SPARTAN3! А далее, зная, что все открытия делаются случайно и по глупости я так же тупо и глупо в файле control.vhd заменил в 299 строке v2_bscan: BSCAN_VIRTEX2 на v2_bscan: BSCAN_SPARTAN3. После чего получил компилируемый проект 08.gif с кучей варнингов - 125 wacko.gif ! Но также рабочий! А вот изменить программу *.psm не удалось. Точнее я всё сделал - изменил control.psm, получил файл control.vhd, но он какой то не доделанный получился cranky.gif . Во первых там не оказалось выхода proc_reset, а во вторых нет вообще описания загрузчика BSCAN_SPARTAN3. Я попытался вставить его (кусок программы загрузчика) из старого control, но у меня естесственно не получилось. Всё, силы кончились, пойду харю поплющу. Совсем забыл - а на Ваш вопрос (Может быть у кого-нибудь даже есть этот самый BSCAN_VIRTEX2?) я так и не ответил прямо, но думаю, теперь это уже и не нужно biggrin.gif
Go to the top of the page
 
+Quote Post
des00
сообщение Jan 29 2010, 04:10
Сообщение #47


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Георгий 2 @ Jan 28 2010, 06:11) *
Даже самого ядра пикоблейза, нет, благо оно есть в XUP, и это радует,

по моему вы не с того конца заходите, начните с www.xilinx.com. пикоблейз, его софт + все его апноты, а в некоторых случаях и сорцы свободно доступны на сайте, со всеми разъяснениями по его использованию. И для разных семейств ПЛИС он действительно разный. Также версии отличаются в зависимости от того, нужно ли перешивать память программ при работе или нет.

Цитата(at89c51ed2 @ Jan 28 2010, 19:32) *
Во первых там не оказалось выхода proc_reset, а во вторых нет вообще описания загрузчика BSCAN_SPARTAN3. Я попытался вставить его (кусок программы загрузчика) из старого control, но у меня естесственно не получилось. Всё, силы кончились, пойду харю поплющу.

рекомендую для начала ознакомиться что вообще такое пикоблейз и с чем его едят, он стартует всегда с нулевого адреса. Работает из ROMB, который инициализируется при конфигурации ПЛИС или по житагу на лету, поэтому ему не нужны никакие загрузчики.

Почитайте апноты, все станет понятно %)

PS. Ответ про языки немного позже %)


--------------------
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Jan 29 2010, 06:00
Сообщение #48


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Цитата(at89c51ed2 @ Jan 29 2010, 07:32) *
Но там же на стр. 151 явно сказано, что архитектуру Spartan3 поддерживает BSCAN_SPARTAN3! А далее, зная, что все открытия делаются случайно и по глупости я так же тупо и глупо в файле control.vhd заменил в 299 строке v2_bscan: BSCAN_VIRTEX2 на v2_bscan: BSCAN_SPARTAN3.


Спасибо попробую, но меня знаете что поражает? Дело в том что вся эта хрень нормально скомпилилась без переделки еще вчера на ISE 9!!!!!!! Неужели все ISE настолько отличаются друг от друга, что один хавает проект а другой нет wacko.gif непонятно же...

Цитата(at89c51ed2 @ Jan 29 2010, 07:32) *
Совсем забыл - а на Ваш вопрос (Может быть у кого-нибудь даже есть этот самый BSCAN_VIRTEX2?) я так и не ответил прямо, но думаю, теперь это уже и не нужно biggrin.gif


Да уж не нужно, спасибо еще раз за разьяснения, только еще вопрос help.gif кто-нибудь ставил апдейт ISE 11.4? У меня получаются долгие бои с ним smile3009.gif в итоге я не то что по очкам проигрываю, а оказываюсь в глубоком нокауте, видимо у него +стопиццот к нападению... Дело в том что остается только ISE Project Navigator, еще парочка прог, но больше половины он смело удаляет!!! Я вообще хз в чем проблема кто в курсе подскажите плиз smile3046.gif

Сообщение отредактировал Георгий 2 - Jan 29 2010, 06:01


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 29 2010, 14:14
Сообщение #49


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 Георгий 2
Так я всё это и делал на ИСИ 11.4. Слил апдейт с сайта и поставил "поверх" 11.1. Даже кей не нужен, он при установке сам говорит, что 11.1 (что то типа genuine или verife) и ставится. Потом, там на сайте есть ещё дополнения - common, cs, SDK, pgmtools. Получилось установить common и cs. Про остальные было сказано, что нету этого на машине. Ну да и пусть с ними. Сейчас всё работает, компилит, льёт, занимает маста на диске 13,5 ГБ - 173740 файлов в 17813 папках 07.gif (куда ему столько!?). По поводу ИСИ9 могу только предположить следующее: я думаю, что Spartan это "облегчённй" Virtex, возможно, что на начальных этапах у них был одинаковый загрузчик, ну, или в ИСИ9 предлагали пользоваться BSCAN_VIRTEX2 и для загрузки Spartan3. Потом, в поздних версиях их разделили. Но это только мои домыслы.
2 DES00
Цитата
рекомендую для начала ознакомиться что вообще такое пикоблейз и с чем его едят, он стартует всегда с нулевого адреса. Работает из ROMB, который инициализируется при конфигурации ПЛИС или по житагу на лету, поэтому ему не нужны никакие загрузчики.

Возможно я не прав, но насколько я понял, в блочной памяти находится только образ ПЗУ - описываемый файлом control.vhd. Само ядро - kcpsm3.vhd и то, что это ядро должно делать - s3esk_startup.vhd находится в конфигурационном SRAM FPGA. Так вот этот самый загрузчик BSCAN_VIRTEX2 или BSCAN_SPARTAN3, как раз и нужен, что бы по JTAG загрузить образ ПЗУ в БРАМ. Потому как позволяет это делать между стартап и конфигурацией ФПГА, т.е. до заливки самой ФПГА. А может быть позволяет потом делать это и "на лету". Во всяком случае, мне так показалось laughing.gif .
Go to the top of the page
 
+Quote Post
des00
сообщение Jan 30 2010, 11:43
Сообщение #50


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(at89c51ed2 @ Jan 29 2010, 08:14) *
Возможно я не прав

прочтите доки и вы поймете что были не правы %) JTAG загрузчик нужен для смены прошивки пикоблейза на лету, если использовалась именно такая версия. Есть апнота где Ken Chapmen (папа пикоблейза) подробно описывает этот момент.


--------------------
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Jan 31 2010, 23:09
Сообщение #51


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 des00
Спасибо за наводку, буду иметь ввиду a14.gif . Скорее всего, так оно и есть - мне досталась версия проца с перезаливкой памяти программ на лету. Накачал кучу документации по процу, сильно не разбирался, пока не актуально, но что то прояснилось - что можно пытаться реализовать и какие возможности у проца.
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Feb 8 2010, 09:56
Сообщение #52


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Запарился уже с проклятым ЛСД до сих пор ничего не выходит. Пробовал переделать ассемблер и сосдать ВХДЛ файл на его основе естессно ни хрена не вышло, он какой-то дистрофийный и покоцаный выходит... Копец какой-то... Пробовал переделать на основе полученного ВХДЛ начальный файл, даже править его пытался (в разумных пределах) , в общем перерыл кучу доков но толком не могу понять как правильно писать файл аасемблера, либо как правильно мутить конвертацию в ВХДЛ файл (может тут где косячу?) так чтобы потом у меня букоффки повлялись на ЛСД...
Никто не посоветует за что взятся?


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Feb 8 2010, 11:58
Сообщение #53


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Я тут еще поковырялся в папке ассемблер с прогой для конвертирования .psm в .vhd есть файлик ROM_form.vhd, как я понял это шаблон по которому создается требующийся нам файл .vhd, если мы берем исходник ассемблера из примера и самостоятельно пытаемся сделать свой counter.vhd то получаем фигу, так вот если его сравнить с counter.vhd из примера сразу ощущается разница.
Вот в общем либо лыжи не едут, либо я ... слишком умный. То есть либо там ошибочный шаблон, либо у меня руки растут не из плеч, либо плечи не в том месте... wacko.gif


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Feb 8 2010, 22:45
Сообщение #54


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 Георгий 2
Что то давненько Вас, батенька, не было видно beer.gif ! Изучали проц smile3046.gif !? Постараюсь кратко. Что бы сделать из control.psm -> control.vhd надо следующее:
1. Наличие в рабочей директории файла KCPSM3.EXE - собственно транслятор ассемблера
2. Наличие в рабочей директории файла control.psm - собственно сам исходник программы на ассемблере
3. Наличие в рабочей директории файла ROM_form.coe - какой то заголовок для формирования файла памяти
4. Наличие в рабочей директории файла ROM_form.v
5. Наличие в рабочей директории файла ROM_form.vhd
Последние оба файла вроде бы описывают одно и то же - собственно память, но зачем их надо обоих мне не ясно.
А дальше банально просто - запускаете из командной строки: kcpsm3 control.psm
В результате работы получаете control.vhd
Дальше в ИСИ собираете:
s3esk_startup.vhd - топ-левел
s3esk_startup.ucf - констрейны для "кита" (там описаны все кнопочки, леды, индикатор, клоки и т.д.)
kcpsm3.vhd - собственно сам процессор
control.vhd - описание ПЗУ процессора, расположенного в БРАМ
Всё это у меня получилось, только не собралось. РАньше я об этом уже писал.
Далее. Что бы писать на ассемблере, не нужно ни чего, кроме текстового редактора, системы команд и понимания работы проца, на уровне структурной схемы, или архитектуры проца, ну и конечно понимания самого главного - что ВЫ хотите получить от программы, в результате её работы. Ну, по поводу редактора - это дело вкусов, я пользую бесплатный редактор Notepad++ v5.5.1. Есть аналогичный Programmer's Notepad. Первый мне более удобен. Много всяких "вкусностей", в том числе подсветка всяких синтаксисов (С, АSМ, V, VHDL и т.д.). В ИСИ я встроенным редактором не пользуюсь, правлю текст (а я уже докатился до написания своего проекта на V 08.gif ) в открытом параллельно редакторе. Всё что нужно для ассемблера есть в документе ug129.pdf и (можно ещё посмотреть, но первый документ полнее) KCPSM3_Manual.pdf. Если проц собирается в ИСИ, то можно забыть про ВХДЛ, ФПГА, а просто юзать проц. Но Вам доступно только 1к слов программы, один источник прерываний, стек с глубиной 16, те же 16 байтовых регистров общего назначения, простенькое АЛУ (+ и -), порт вход-выход и порт ID (я так понял для раширения постранства ввода - вывода). Не так уж и жирно, что бы решать какие то задачи, хотя, вывод на ЖКИ обеспечит (готовой текстовой строчки, как её сформировать, это уже другой вопрос). Позволю дать Вам один совет. Если босс очень сильно хочет в кратчайшие сроки увидеть на индикаторе нечто, отличающееся от XILINX Spartan3... , а у Вас полный пендос и непонимание происходящего.... Короче, найдите в файле control.vhd последовательность байт, описывающих текстовые строки сообщения. Они записаны в ASCII кодах, трудно будет их идентифицировать, потомоу как РОМ 18 разрядов, а коды 8 разрядные. Если получится, то можете вручную вписать туда новое сообщение. Может сможете сделать симуляцию и тогда явно увидите, откуда извлекаются эти коды. Конечно, изврат, но как вариант. Возможно это будет легче, но долго так жить нельзя! Потом надо будет получить результат. Так что изучение ВХДЛ для Вас остаётся актуальным вопросом. А что такое counter.vhd? Вы хотите из проца счётчик сделать что ли? Я много скачал возможных применений - тут и генараторы-формирователи, и работа с АЦП-ЦАП, частотомер, ШИМ, RTC, работа с памятью разной, UART и т.д. Там много примеров на ассемблере, возможно (я глубоко не копал) можно найти и исходники (всмысле сборка проца вместе с этим асс). Удачи.

Сообщение отредактировал at89c51ed2 - Feb 8 2010, 22:45
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Feb 9 2010, 11:34
Сообщение #55


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



К сожалению лыжи были нормальные, просто я умным оказался, сегодня на свежую голову завел жто ЛСД проклятый, хз че вчера не вышло, все делал точно так же...
Осталось разобраться том какое количество символов можно запихать в ЛСД и сделать так чтобы это неведомое кол-во символов нормально отображалось как хочется мне...
Курю user guide smile3046.gif


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Feb 9 2010, 22:12
Сообщение #56


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 Георгий 2
Цитата
Осталось разобраться том какое количество символов можно запихать в ЛСД и сделать так чтобы это неведомое кол-во символов нормально отображалось как хочется мне...
Курю user guide

Ну, это проще, ug230 Вам поможет. Ещё можете почитать описание на HD44780. Я думаю (могу и ошибаться), что это де-факто стандарт на строчные символьные индикаторы. Вся Ваша задача заключается в правильной инициализации контроллера и записи данных в DDRAM. Если своих символов не надо делать, то в CGRAM писать не надо 08.gif .
По поводу
Цитата
хз че вчера не вышло
у меня тоже косяк был на полдня: ИСИ писало что то типа "top-level file was not found". Помогло очищение файлов проекта и перезапуск ИСИ.
Go to the top of the page
 
+Quote Post
hdl_student
сообщение Feb 27 2010, 18:43
Сообщение #57


Частый гость
**

Группа: Свой
Сообщений: 122
Регистрация: 22-02-10
Из: Москва
Пользователь №: 55 617



Не знаю, насколько это будет актуально, но вот пример работы с LCD без Picoblaze:
CODE
module top (clk, sf_ce0, lcd_rs, lcd_rw, lcd_e, lcd_4, lcd_5, lcd_6, lcd_7);
parameter k = 18;
(* LOC="C9" *) input clk; // synthesis attribute PERIOD clk "50 MHz"
reg [k+8-1:0] count=0;
(* LOC="D16" *) output reg sf_ce0; // high for full LCD access
reg lcd_busy=1;
reg lcd_stb;
reg [5:0] lcd_code;
reg [6:0] lcd_stuff;
(* LOC="L18" *) output reg lcd_rs;
(* LOC="L17" *) output reg lcd_rw;
(* LOC="M15" *) output reg lcd_7;
(* LOC="P17" *) output reg lcd_6;
(* LOC="R16" *) output reg lcd_5;
(* LOC="R15" *) output reg lcd_4;
(* LOC="M18" *) output reg lcd_e;

always @ (posedge clk) begin
count <= count + 1;
sf_ce0 <= 1;
case (count[k+7:k+2])
0: lcd_code <= 6'h03; // power-on initialization
1: lcd_code <= 6'h03;
2: lcd_code <= 6'h03;
3: lcd_code <= 6'h02;
4: lcd_code <= 6'h02; // function set
5: lcd_code <= 6'h08;
6: lcd_code <= 6'h00; // entry mode set
7: lcd_code <= 6'h06;
8: lcd_code <= 6'h00; // display on/off control
9: lcd_code <= 6'h0C;
10: lcd_code <= 6'h00; // display clear
11: lcd_code <= 6'h01;
12: lcd_code <= 6'h24; // H
13: lcd_code <= 6'h28;
14: lcd_code <= 6'h26; // e
15: lcd_code <= 6'h25;
16: lcd_code <= 6'h26; // l
17: lcd_code <= 6'h2C;
18: lcd_code <= 6'h26; // l
19: lcd_code <= 6'h2C;
20: lcd_code <= 6'h26; // o
21: lcd_code <= 6'h2F;
22: lcd_code <= 6'h22; //
23: lcd_code <= 6'h20;
24: lcd_code <= 6'h25; // W
25: lcd_code <= 6'h27;
26: lcd_code <= 6'h26; // o
27: lcd_code <= 6'h2F;
28: lcd_code <= 6'h27; // r
29: lcd_code <= 6'h22;
30: lcd_code <= 6'h26; // l
31: lcd_code <= 6'h2C;
32: lcd_code <= 6'h26; // d
33: lcd_code <= 6'h24;
34: lcd_code <= 6'h22; // !
35: lcd_code <= 6'h21;
default: lcd_code <= 6'h10;
endcase
//if (lcd_rw) // comment-out for repeating display
// lcd_busy <= 0; // comment-out for repeating display
lcd_stb <= ^count[k+1:k+0] & ~lcd_rw & lcd_busy; // clkrate / 2^(k+2)
lcd_stuff <= {lcd_stb,lcd_code};
{lcd_e,lcd_rs,lcd_rw,lcd_7,lcd_6,lcd_5,lcd_4} <= lcd_stuff;
end
endmodule

Прекрасно работатет на моём ките. Версию на VHDL можно посмотреть тут: http://www.edaboard.com/ftopic202710.html.
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Mar 1 2010, 05:35
Сообщение #58


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Цитата(hdl_student @ Feb 28 2010, 00:43) *
Не знаю, насколько это будет актуально, но вот пример работы с LCD без Picoblaze:


Очень актуально, спасибо Вам большое. Это очень полезная вещь. Попробую у себя и отпишусь потом.
А подскажите какой у Вас кит? S3eSK? или нет? мне просто интересно хватит ли ресурсов например CPLD XC95144XL-10TQG100C


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
hdl_student
сообщение Mar 1 2010, 08:05
Сообщение #59


Частый гость
**

Группа: Свой
Сообщений: 122
Регистрация: 22-02-10
Из: Москва
Пользователь №: 55 617



Всегда рад помочь.
Цитата
А подскажите какой у Вас кит? S3eSK? или нет? мне просто интересно хватит ли ресурсов например CPLD XC95144XL-10TQG100C

У меня HW-SPAR3E-SK-UNI-G, если не ошибаюсь, тотже, что и у вас. LCD (насколько я помню по ug230.pdf) подключен только к xc3s500e.
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Mar 1 2010, 12:23
Сообщение #60


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Цитата(hdl_student @ Mar 1 2010, 14:05) *
Всегда рад помочь.

У меня HW-SPAR3E-SK-UNI-G, если не ошибаюсь, тотже, что и у вас. LCD (насколько я помню по ug230.pdf) подключен только к xc3s500e.


Все совершенно верно, кит такой-же. Verilig текст заработал, я правдо чисто на интуиции понял че кого там, так как ни бум-бум в этом языке.... Но VHDL код так и не попер... Пока не пойму в чем дело...
А по поводу подключения к CPLD, я имел ввиду другой камень. Мне в голову мысль пришла отладочник сваять своими силами, на CPLD 144, я знаю что picoblaze там не попрет, а вот хватит ли ее ресурсов на данный код мне не понятно, просто за время моего изучения ПЛИС у меня был S3eSK и Flex10k10 (от Альтеры) так на флекс эта хрень точно не влезет, а про CPLD я не знаю....

Сообщение отредактировал Георгий 2 - Mar 1 2010, 12:28


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post
at89c51ed2
сообщение Mar 1 2010, 23:16
Сообщение #61


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 14-10-09
Пользователь №: 52 943



2 hdl_student
Скачал Ваш пример, спасибо. Сам пытаюсь пописывать на V, будет интересно в образовательных целях.
2 Георгий 2
Цитата
А по поводу подключения к CPLD, я имел ввиду другой камень. Мне в голову мысль пришла отладочник сваять своими силами, на CPLD 144, я знаю что picoblaze там не попрет, а вот хватит ли ее ресурсов на данный код мне не понятно, просто за время моего изучения ПЛИС у меня был S3eSK и Flex10k10 (от Альтеры) так на флекс эта хрень точно не влезет, а про CPLD я не знаю....

У Вас, что, отняли "кит" что ли? Не понятно, что Вы собираетесь изобрести на CPLD144, какой такой отладочник и зачем Вам для этого picoblaze laughing.gif ? По поводу ресурсов. Тут по моему всё просто. У Вас же есть рабочее описание, и Вы говорите, что оно у Вас работает. Так загляните в рапорт файл, там всё написано! Архитектуры конечно разные (CPLD <-> FPGA), но (ИМХО) индикатор этот должен влезть в CPLD, потому как в её архитектуре есть комбинационные блоки, предназначенные как раз для большого количества переменных в термах, что позволяет оптимальнее, чем ФПГА, решать задачи комбинационных автоматов. Структура же LUT в FPGA более подходит для арифметических задач и устройств реализуемых при помощи каскадируемых блоков. Если не прав, извините, пусть люди знающие меня поправят. Может Вам MAX II подойдёт? А что Вам так 10к10 не понравилась? Мне кажется, что для этого индикатора её хватит более чем. Есть ещё одна возможность - я открыл для себя RTL View-er 08.gif . Так посмотрите в нём, что там "внутри" на уровне gate - ов у этого описания. Увидите схему, может сможете прикинуть. Во всяком случае количество триггеров точно можно посчитать.

Сообщение отредактировал at89c51ed2 - Mar 1 2010, 23:18
Go to the top of the page
 
+Quote Post
Георгий 2
сообщение Mar 4 2010, 04:53
Сообщение #62


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 20-10-09
Из: Омск
Пользователь №: 53 089



Цитата(at89c51ed2 @ Mar 2 2010, 05:16) *
2 Георгий 2

У Вас, что, отняли "кит" что ли? Не понятно, что Вы собираетесь изобрести на CPLD144, какой такой отладочник и зачем Вам для этого picoblaze laughing.gif ? По поводу ресурсов. Тут по моему всё просто. У Вас же есть рабочее описание, и Вы говорите, что оно у Вас работает. Так загляните в рапорт файл, там всё написано!


Нет кит не отняли просто есть задумка, а именно сделать собственный кит на базе этой CPLD. Но это пока надо сделать и надо подумать что стоит туда навесить. По поводу описания работает Verilog, а VHDL нет, с учетом того что я практикуюсь в VHDL этот вариант мне не подходит.

Цитата(at89c51ed2 @ Mar 2 2010, 05:16) *
Может Вам MAX II подойдёт? А что Вам так 10к10 не понравилась? Мне кажется, что для этого индикатора её хватит более чем. Есть ещё одна возможность - я открыл для себя RTL View-er 08.gif . Так посмотрите в нём, что там "внутри" на уровне gate - ов у этого описания. Увидите схему, может сможете прикинуть. Во всяком случае количество триггеров точно можно посчитать.

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


--------------------
В жизни нужно попробовать и успеть все, чтобы потом не жалеть о том чего не сказал или не сделал...
Go to the top of the page
 
+Quote Post

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

 


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


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