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

 
 
3 страниц V  < 1 2 3 >  
Reply to this topicStart new topic
> USB-blaster на ATmega8, Вопрос по назначению битов
WEST128
сообщение Dec 5 2007, 14:14
Сообщение #16


Местный
***

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



А будет ли данный программатор работать без логики, с только одним контроллером ATmega8L, если его питать от 3.3 В ? ПЛИС тоже 3.3 В (Cyclone)
Go to the top of the page
 
+Quote Post
BSACPLD
сообщение Dec 5 2007, 19:41
Сообщение #17


Местный
***

Группа: Свой
Сообщений: 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" (без кавычек).
Прикрепленные файлы
Прикрепленный файл  EditEEPROM.rar ( 269.88 килобайт ) Кол-во скачиваний: 2867
Прикрепленный файл  AlteraFTv2.rar ( 99.57 килобайт ) Кол-во скачиваний: 635
 
Go to the top of the page
 
+Quote Post
des00
сообщение Dec 6 2007, 12:50
Сообщение #18


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

Группа: Модераторы
Сообщений: 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 (прошивка конф. ПЗУ). Если ваша прошивка верна, то я сделаю новый код на верилоге, на основе вашего. для программатора от мисячного, который будет видеться квартусом как родной программатор. И выложу в эту тему.

Спасибо!


--------------------
Go to the top of the page
 
+Quote Post
BSACPLD
сообщение Dec 6 2007, 15:53
Сообщение #19


Местный
***

Группа: Свой
Сообщений: 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. В архиве поправил скриншот с конфигурационными битами.
Go to the top of the page
 
+Quote Post
WEST128
сообщение Dec 7 2007, 03:54
Сообщение #20


Местный
***

Группа: Свой
Сообщений: 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
Go to the top of the page
 
+Quote Post
des00
сообщение Dec 7 2007, 06:51
Сообщение #21


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

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



Добрый день!

Выкладываю верилог код для EPM3064. Немного подправил код мисячного. топ левел идет из проекта который реализован у меня.

Работает JTAG на MAX3064, Cyclon I.
PS нечем проверить.

AS не работает. EPCS ки не хотят зашиваться. Но полагаю что вопросами AS никто не занимался.
Или у кого нибудь есть лог работы квартуса в режиме AS ?
Прикрепленные файлы
Прикрепленный файл  usb_jtag.zip ( 4.54 килобайт ) Кол-во скачиваний: 296
 


--------------------
Go to the top of the page
 
+Quote Post
BSACPLD
сообщение Dec 7 2007, 19:33
Сообщение #22


Местный
***

Группа: Свой
Сообщений: 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.
Go to the top of the page
 
+Quote Post
WEST128
сообщение Dec 8 2007, 18:12
Сообщение #23


Местный
***

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



Всем нравится, но ради интереса попробую сделать на AT91SAM7S64. Как только время свободное появится.
Go to the top of the page
 
+Quote Post
alexf
сообщение Dec 16 2007, 08:23
Сообщение #24


Местный
***

Группа: Свой
Сообщений: 420
Регистрация: 22-12-04
Пользователь №: 1 608



Цитата(des00 @ Dec 6 2007, 22:51) *
Добрый день!

Выкладываю верилог код для EPM3064. Немного подправил код мисячного. топ левел идет из проекта который реализован у меня.


я синтезировал - получилось 42 логических элемента.
Для сравнения вариант Kolja Waschk, ixo.de - синтезируется в 52.

Казалось бы функциональность не должна отличаться. Я внимательно не смотрел,
но там на вскидку в лоб сделан FSM и больше ничего. Вы на его вариант не смотрели? За счет чего
такое расхождение?

И еще. У него же симпатичный вариант на 68013 вообще без CPLD, но сказано что на 60% медленнее.
Похоже что там код ножками дергает "вручную". А никто не пытался SPI приспособить? Казалось бы
должно все ускориться? Если конечно сдвиг - узкое место.
Go to the top of the page
 
+Quote Post
des00
сообщение Dec 17 2007, 03:55
Сообщение #25


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

Группа: Модераторы
Сообщений: 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


--------------------
Go to the top of the page
 
+Quote Post
alexf
сообщение Dec 17 2007, 08:24
Сообщение #26


Местный
***

Группа: Свой
Сообщений: 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 лет назад сам на нем писал, но как занялся вериложеством, так и не могу остановиться smile.gif

Там весь проэкт, даже два. Второй чисто на 68013.
Прикрепленные файлы
Прикрепленный файл  usb_jtag_20070215_1134.zip ( 97.65 килобайт ) Кол-во скачиваний: 1160
 
Go to the top of the page
 
+Quote Post
des00
сообщение Dec 17 2007, 10:28
Сообщение #27


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

Группа: Модераторы
Сообщений: 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 ; пишем в спиай
......

Прикрепленные файлы
Прикрепленный файл  _________.txt ( 5.67 килобайт ) Кол-во скачиваний: 251
 


--------------------
Go to the top of the page
 
+Quote Post
RYury
сообщение Dec 17 2007, 16:08
Сообщение #28


Участник
*

Группа: Свой
Сообщений: 70
Регистрация: 4-12-06
Из: Окно Петра в Европу
Пользователь №: 23 119



попробовал вериложный код для cpld от месячного и подправленный des00 -> Altera usb-blaster определяется, но jic файлы не прошиваются, взял от kolja waschk на vhdl -> все ok, по jtag и AS шьется (тестировал Cyclone первый)
Go to the top of the page
 
+Quote Post
des00
сообщение Dec 18 2007, 03:59
Сообщение #29


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

Группа: Модераторы
Сообщений: 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 и квартус похоже интенсивно этим пользуется).

ЗЫ. правда ради искусства переведу сегодня все на систем верилог.

Удачи!


--------------------
Go to the top of the page
 
+Quote Post
des00
сообщение Dec 18 2007, 06:13
Сообщение #30


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

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



Занятно, но тоже самое (изменил поведение только одного сигнала) на систем верилоге заняло на 4 плитки меньше. Если кому интересно см. в атаче.
Прикрепленные файлы
Прикрепленный файл  mjtag_logic.v ( 7.01 килобайт ) Кол-во скачиваний: 306
 


--------------------
Go to the top of the page
 
+Quote Post

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

 


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


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