|
|
  |
USB-blaster на ATmega8, Вопрос по назначению битов |
|
|
|
Dec 5 2007, 19:41
|
Местный
  
Группа: Свой
Сообщений: 371
Регистрация: 24-07-05
Из: Москва
Пользователь №: 7 056

|
Цитата(WEST128 @ Dec 5 2007, 17:14)  А будет ли данный программатор работать без логики, с только одним контроллером ATmega8L, если его питать от 3.3 В ? ПЛИС тоже 3.3 В (Cyclone) По идее должен работать, только медленнее, т.к. у ATmega8L fmax=8MHz. Я бы все таки поставил буферы, так, на всякий случай. Вместо 74AHC(T) можно поставить 74VHC(T). Во вложенном архиве модифицированный вариант на ATmega48 (работает несколько быстрее первой версии, поддерживает только PS и JTAG). Чтобы USB-blaster виделся Quartus'ом как USB-blaster Rev.B в UserArea кофигурационной EEPROM нужно с помощью EditEEPROM записать строчку "REVB" (без кавычек).
|
|
|
|
|
Dec 6 2007, 12:50
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(BSACPLD @ Dec 5 2007, 14:41)  По идее должен работать, только медленнее, т.к. у ATmega8L fmax=8MHz. Я бы все таки поставил буферы, так, на всякий случай. Вместо 74AHC(T) можно поставить 74VHC(T). Во вложенном архиве модифицированный вариант на ATmega48 (работает несколько быстрее первой версии, поддерживает только PS и JTAG). Чтобы USB-blaster виделся Quartus'ом как USB-blaster Rev.B в UserArea кофигурационной EEPROM нужно с помощью EditEEPROM записать строчку "REVB" (без кавычек). Добрый день! Поковырял ваши исходники и нашел большие расхождения по реализации между выложеным проектом мисячного и вашим. Не могли бы вы сказать ваша версия точно работает в режимах JTAG (Signal Tap + Nios) и PS (прошивка конф. ПЗУ). Если ваша прошивка верна, то я сделаю новый код на верилоге, на основе вашего. для программатора от мисячного, который будет видеться квартусом как родной программатор. И выложу в эту тему. Спасибо!
--------------------
|
|
|
|
|
Dec 6 2007, 15:53
|
Местный
  
Группа: Свой
Сообщений: 371
Регистрация: 24-07-05
Из: Москва
Пользователь №: 7 056

|
Цитата(des00 @ Dec 6 2007, 15:50)  Добрый день! Поковырял ваши исходники и нашел большие расхождения по реализации между выложеным проектом мисячного и вашим.
Не могли бы вы сказать ваша версия точно работает в режимах JTAG (Signal Tap + Nios) и PS (прошивка конф. ПЗУ). Если ваша прошивка верна, то я сделаю новый код на верилоге, на основе вашего. для программатора от мисячного, который будет видеться квартусом как родной программатор. И выложу в эту тему.
Спасибо! SignalTap работает, с Nios не проверял, т.к. пользуюсь собственным процессором (самописный AVR ~2100 LE в Cyclone II). PS сейчас нет возможности проверить, поскольку нет под рукой нужной ПЗУ. P.S. В архиве поправил скриншот с конфигурационными битами.
|
|
|
|
|
Dec 7 2007, 03:54
|

Местный
  
Группа: Свой
Сообщений: 468
Регистрация: 13-10-06
Из: Россия, Томск
Пользователь №: 21 291

|
Цитата(BSACPLD @ Dec 6 2007, 01:41)  По идее должен работать, только медленнее, т.к. у ATmega8L fmax=8MHz. Я бы все таки поставил буферы, так, на всякий случай. Вместо 74AHC(T) можно поставить 74VHC(T). Спасибо. Надо собрать за 1 день, во вторник уже сдавать прибор, в котором ПЛИС, а подобная логика в Томске только под заказ 2 недели. Потом соберу по нормальной версии. Еще вопрос: будет ли данный зверь работать в испольнении на процессоре со встроенным интерфейсом USB, например, AT91SAM7S64 ?
Сообщение отредактировал WEST128 - Dec 7 2007, 03:55
|
|
|
|
|
Dec 7 2007, 06:51
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Добрый день! Выкладываю верилог код для EPM3064. Немного подправил код мисячного. топ левел идет из проекта который реализован у меня. Работает JTAG на MAX3064, Cyclon I. PS нечем проверить. AS не работает. EPCS ки не хотят зашиваться. Но полагаю что вопросами AS никто не занимался. Или у кого нибудь есть лог работы квартуса в режиме AS ?
--------------------
|
|
|
|
|
Dec 7 2007, 19:33
|
Местный
  
Группа: Свой
Сообщений: 371
Регистрация: 24-07-05
Из: Москва
Пользователь №: 7 056

|
Цитата(WEST128 @ Dec 7 2007, 06:54)  Спасибо. Надо собрать за 1 день, во вторник уже сдавать прибор, в котором ПЛИС, а подобная логика в Томске только под заказ 2 недели. Потом соберу по нормальной версии. Еще вопрос: будет ли данный зверь работать в испольнении на процессоре со встроенным интерфейсом USB, например, AT91SAM7S64 ? По поводу AT91SAM7S64. Если поставить нужные VID и PID и сделать так, чтобы микросхема со стороны компьютера виделась как FTDI, то точно должно работать. А чем не нравится FT245BM? У FT245R вообще минимум обвески, так, что должно получится очень компактно. Цитата(des00 @ Dec 7 2007, 09:51)  Добрый день!
Выкладываю верилог код для EPM3064. Немного подправил код мисячного. топ левел идет из проекта который реализован у меня.
Работает JTAG на MAX3064, Cyclon I. PS нечем проверить.
AS не работает. EPCS ки не хотят зашиваться. Но полагаю что вопросами AS никто не занимался. Или у кого нибудь есть лог работы квартуса в режиме AS ? AS и не должен работать, я делал только JTAG и PS. У меня есть оригинальный Altera USB-Blaster Rev.C, как только будет время попробую снять лог работы с помощью BusHound.
|
|
|
|
|
Dec 16 2007, 08:23
|
Местный
  
Группа: Свой
Сообщений: 420
Регистрация: 22-12-04
Пользователь №: 1 608

|
Цитата(des00 @ Dec 6 2007, 22:51)  Добрый день!
Выкладываю верилог код для EPM3064. Немного подправил код мисячного. топ левел идет из проекта который реализован у меня. я синтезировал - получилось 42 логических элемента. Для сравнения вариант Kolja Waschk, ixo.de - синтезируется в 52. Казалось бы функциональность не должна отличаться. Я внимательно не смотрел, но там на вскидку в лоб сделан FSM и больше ничего. Вы на его вариант не смотрели? За счет чего такое расхождение? И еще. У него же симпатичный вариант на 68013 вообще без CPLD, но сказано что на 60% медленнее. Похоже что там код ножками дергает "вручную". А никто не пытался SPI приспособить? Казалось бы должно все ускориться? Если конечно сдвиг - узкое место.
|
|
|
|
|
Dec 17 2007, 03:55
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(alexf @ Dec 16 2007, 03:23)  я синтезировал - получилось 42 логических элемента. Для сравнения вариант Kolja Waschk, ixo.de - синтезируется в 52.
Казалось бы функциональность не должна отличаться. Я внимательно не смотрел, но там на вскидку в лоб сделан FSM и больше ничего. Вы на его вариант не смотрели? За счет чего такое расхождение? шарился по его сайту, но его код не нашел, а может быть и плохо искал. все делал по верилог коду мисячного (те же 42 плитки) параллельно опираясь на асм код BSACPLD. выложите код посмотрю в чем разница, может быть его вариант работает с AS %) Цитата И еще. У него же симпатичный вариант на 68013 вообще без CPLD, но сказано что на 60% медленнее. Похоже что там код ножками дергает "вручную". А никто не пытался SPI приспособить? Казалось бы должно все ускориться? Если конечно сдвиг - узкое место. в проекте BSACPLD для вывода используется именно SPI
--------------------
|
|
|
|
|
Dec 17 2007, 08:24
|
Местный
  
Группа: Свой
Сообщений: 420
Регистрация: 22-12-04
Пользователь №: 1 608

|
Цитата(des00 @ Dec 16 2007, 19:55)  шарился по его сайту, но его код не нашел, а может быть и плохо искал. все делал по верилог коду мисячного (те же 42 плитки) параллельно опираясь на асм код BSACPLD. выложите код посмотрю в чем разница, может быть его вариант работает с AS %) в проекте BSACPLD для вывода используется именно SPI МОжет я плохо смотрел на код BSACPLD, но мне показалось что делается bit banging. loop_shift: lsr data ori port,(1<<TCK) out PORTB,port sbic PINC,TDO ori data,0b10000000 andi port,0b00101110 brcc clr_TDI ori port, 0b00010000 Не тот код? И сказано что "в 3 раза медленнее чем ПАРАЛЛЕЛЬНЫЙ КАБЕЛЬ", если не опечатка. Вроде SPI в AVR работает до CLK/2, так что даже на 8 МГц от внутреннего генератора может неплохо получиться? А вот прошивка от Kolja. Правда на VHDL. 10 лет назад сам на нем писал, но как занялся вериложеством, так и не могу остановиться  Там весь проэкт, даже два. Второй чисто на 68013.
|
|
|
|
|
Dec 17 2007, 10:28
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
за VHDL спасибо, посмотрю на досуге. по асм коду, это из другого проекта. разбор исходника от BSACPLD с моими коментариями в атаче это оттуда Код .....
; ; конфигурируем SPI регистр ; ldi temp, (1<<SPE)|(1<<MSTR)|(1<<DORD) out SPCR, temp ..... cbi PORTC, RD ; читаем nop nop in data, PIND sbi PORTC, RD out SPDR, data ; пишем в спиай ......
--------------------
|
|
|
|
|
Dec 18 2007, 03:59
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(RYury @ Dec 17 2007, 11:08)  попробовал вериложный код для cpld от месячного и подправленный des00 -> Altera usb-blaster определяется, но jic файлы не прошиваются, взял от kolja waschk на vhdl -> все ok, по jtag и AS шьется (тестировал Cyclone первый) все правильно. Вчера расковырял код от коли. прошивка мисячного не поддерживает AS, я немного подправил его код, с теми же ограничениями. Причем функционально верилог код КА + SPI идентичный, за исключением того что нога выходных для AS в верилог коде вообще не читается, ну и то что в vhdl коде все выходные сигналы регистровые. Вот и вся разница между прошивками. Вывод : с кодом от kolja waschk получается полный аналог усб бластера. Смысла перевести его на верилог и/или оптимизировать его нет никакого т.к. в 3064 проблем с ресурсом нет, а 3032 все равно не запихнуть. К тому же в его коде самовосстанавливающийся КА (как КА в JTAG и квартус похоже интенсивно этим пользуется). ЗЫ. правда ради искусства переведу сегодня все на систем верилог. Удачи!
--------------------
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|